PageSourceSearch

https://assets.cdn.ifixit.com/AssetsV2/scripts/3653.e4d00106c09ef0651bfb.js

js ifixit.com collected 2026-10-01 08:35:55 UTC 7,424 bytes, 2 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"a99e4c3265af7c5eece8156095b05d1ffcc8ba85"},e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];if(null!=n)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}({},e._sentryModuleMetadata[(new e.Error).stack],{"_sentryBundlerPluginAppKey:ifixitFirstParty":!0});var t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="df13e66b-898d-4915-959c-cbc59b1f1f51",e._sentryDebugIdIdentifier="sentry-dbid-df13e66b-898d-4915-959c-cbc59b1f1f51")}catch(e){}}(),(globalThis.webpackChunkcarpenter_frontend=globalThis.webpackChunkcarpenter_frontend||[]).push([[3653],{40179(e,t,n){n.d(t,{K:()=>i});var r=n(97145);function i(e){const t=(0,r.useRef)(e);(0,r.useEffect)((()=>{t.current=e}),[e]);const n=(0,r.useCallback)(((...e)=>t.current?.(...e)),[]);return e?n:void 0}},51511(e,t,n){n.d(t,{i:()=>o});var r=n(97145),i=n(40179);function o({prop:e,defaultProp:t,onChange:n}){const[o,a]=(0,r.useState)(t),c=void 0!==e,l=c?e:o,s=(0,i.K)(n),u=(0,r.useCallback)((t=>{if(c){const n=function(e){return"function"==typeof e}(t)?t(l):t;n!=e&&s?.(n)}else a(t)}),[c,e,l,s]);return[l,u]}},53476(e,t,n){n.d(t,{DX:()=>a});var r=n(97145),i=n(65477),o=n(50061),a=r.forwardRef(((e,t)=>{const{children:n,...i}=e,a=r.Children.toArray(n),l=a.find(s);if(l){const e=l.props.children,n=a.map((t=>t===l?r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null:t));return(0,o.jsx)(c,{...i,ref:t,children:r.isValidElement(e)?r.cloneElement(e,void 0,n):null})}return(0,o.jsx)(c,{...i,ref:t,children:n})}));a.displayName="Slot";var c=r.forwardRef(((e,t)=>{const{children:n,...o}=e;if(r.isValidElement(n)){const e=function(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}(n),a=function(e,t){const n={...t};for(const r in t){const i=e[r],o=t[r];/^on[A-Z]/.test(r)?i&&o?n[r]=(...e)=>{o(...e),i(...e)}:i&&(n[r]=i):"style"===r?n[r]={...i,...o}:"className"===r&&(n[r]=[i,o].filter(Boolean).join(" "))}return{...e,...n}}(o,n.props);return n.type!==r.Fragment&&(a.ref=t?(0,i.t)(t,e):e),r.cloneElement(n,a)}return r.Children.count(n)>1?r.Children.only(null):null}));c.displayName="SlotClone";var l=({children:e})=>(0,o.jsx)(o.Fragment,{children:e});function s(e){return r.isValidElement(e)&&e.type===l}},65477(e,t,n){n.d(t,{s:()=>a,t:()=>o});var r=n(97145);function i(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function o(...e){return t=>{let n=!1;const r=e.map((e=>{const r=i(e,t);return n||"function"!=typeof r||(n=!0),r}));if(n)return()=>{for(let t=0;t<r.length;t++){const n=r[t];"function"==typeof n?n():i(e[t],null)}}}}function a(...e){return r.useCallback(o(...e),e)}},71071(e,t,n){n.d(t,{B:()=>p,openImageLightbox:()=>d,u:()=>f});var r=n(50061),i=n(82306),o=n(27358),a=n(78967),c=n(2305),l=n(97145),s=n(84185);let u=null;function d(e,t){const n=function(){if(!u){const e=document.createElement("div");document.body.append(e),u=(0,s.createTrackedRoot)(e)}return u}();n.render((0,r.jsx)(p,{url:e,placeholder:t,onClose:()=>n.render(null)}))}function f({onClick:e}){return(0,r.jsx)("button",{type:"button","aria-label":(0,i.N)("View full screen"),title:(0,i.N)("View full screen"),onPointerDown:e=>e.stopPropagation(),onClick:e,className:"absolute left-1 top-1 flex size-7 items-center justify-center rounded-md bg-black/60 text-white opacity-0 outline-none transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 hover:bg-black/80 focus-visible:opacity-100 focus-visible:ring-[3px] focus-visible:ring-white/80 pointer-coarse:opacity-100 pointer-coarse:after:absolute pointer-coarse:after:-inset-2 pointer-coarse:after:content-['']",children:(0,r.jsx)(a.hw,{name:"magnifying-glass-plus",className:"size-4"})})}function p({url:e,srcSet:t,sizes:n,label:s,placeholder:u,onClose:d}){const[f,p]=(0,l.useState)(!1),[h,g]=(0,l.useState)(!u),[b,m]=(0,l.useState)(null),y=(0,l.useRef)(null),v=(0,l.useRef)({x:.5,y:.5});return(0,l.useEffect)((()=>
1{if(!u)return;const r=new Image,i=()=>g(!0);return r.addEventListener("load",i),t&&(r.srcset=t),n&&(r.sizes=n),r.src=e,()=>{r.removeEventListener("load",i),r.src="",r.removeAttribute("srcset")}}),[u,e,t,n]),(0,r.jsx)(o.lG,{open:!0,onOpenChange:e=>{e||d()},children:(0,r.jsx)(o.ZJ,{children:(0,r.jsxs)(o.f2,{ref:y,"aria-describedby":void 0,tabIndex:-1,onOpenAutoFocus:e=>{e.preventDefault(),y.current?.focus()},onClick:e=>{e.target===e.currentTarget&&d()},className:(0,c.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 fixed inset-0 z-lightbox flex outline-none",o.g7,"backdrop:bg-black/90",f?"overflow-auto p-0":"items-center justify-center p-4 pointer-coarse:p-0"),children:[(0,r.jsx)(o.L3,{className:"sr-only",children:s??(0,i.N)("Image")}),(0,r.jsx)("button",{type:"button","aria-label":f?(0,i.N)("Zoom out"):(0,i.N)("Zoom in"),onClick:function(e){e.stopPropagation();const t=e.currentTarget.getBoundingClientRect();v.current=0!==e.detail&&t.width&&t.height?{x:(e.clientX-t.left)/t.width,y:(e.clientY-t.top)/t.height}:{x:.5,y:.5},p(!f)},className:(0,c.cn)("outline-none focus-visible:ring-[3px] focus-visible:ring-white/80",f?"m-auto block cursor-zoom-out":"flex cursor-zoom-in"),children:(0,r.jsx)("img",{src:h?e:u,srcSet:h&&!f?t:void 0,sizes:h&&!f?n:void 0,onLoad:n=>{if(function(){const e=y.current;e&&f&&(e.scrollLeft=v.current.x*e.scrollWidth-e.clientWidth/2,e.scrollTop=v.current.y*e.scrollHeight-e.clientHeight/2)}(),!h){const r=t?null:function(e){const t=new URL(e,window.location.href).pathname.split(".").pop()??"",n=App.imageSizeWidths??{},r=App.imageSizeHeights??{},i=Object.hasOwn(n,t)?n[t]:void 0,o=Object.hasOwn(r,t)?r[t]:void 0;return"number"==typeof i&&"number"==typeof o?{width:i,height:o}:null}(e);m(function(e,t,n){if(!t||!e.naturalWidth||!e.naturalHeight)return null;const r=getComputedStyle(t),i=e=>Number.parseFloat(r.getPropertyValue(e))||0,o=Math.min(t.clientWidth-i("padding-left")-i("padding-right"),n?.width??1/0),a=Math.min(t.clientHeight-i("padding-top")-i("padding-bottom"),n?.height??1/0),c=Math.min(o/e.naturalWidth,a/e.naturalHeight);return{width:Math.round(e.naturalWidth*c),height:Math.round(e.naturalHeight*c)}}(n.currentTarget,y.current,r))}},style:!h&&b?b:void 0,alt:"",className:(0,c.cn)("object-contain",f?"max-w-none":"max-h-[calc(100dvh-2rem)] max-w-[calc(100vw-2rem)] pointer-coarse:max-h-[100dvh] pointer-coarse:max-w-[100vw]")},h?f?"zoomed":"fitted":"standin")}),(0,r.jsx)(o.HM,{"aria-label":(0,i.N)("Close"),className:"fixed right-[calc(var(--safe-right)+--spacing(4))] top-[calc(var(--safe-top)+--spacing(4))] flex size-9 items-center justify-center rounded-md bg-black/50 text-white opacity-70 outline-none transition-opacity hover:opacity-100 focus-visible:opacity-100 focus-visible:ring-[3px] focus-visible:ring-ring/50 pointer-coarse:size-11",children:(0,r.jsx)(a.hw,{name:"xmark",className:"size-5"})})]})})})}},97310(e,t,n){function r(e,t){"function"==typeof e?e(t):null!=e&&(e.current=t)}n.d(t,{b:()=>r})}}]);
2//# sourceMappingURL=3653.e4d00106c09ef0651bfb.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.