PageSourceSearch

https://chrislueders.de/_next/static/chunks/8f9ba53f2f18efe2.js

js chrislueders.de collected 2026-10-04 08:09:37 UTC 16,984 bytes, 3 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12239,e=>{"use strict";var t=e.i(43476),r=e.i(46932),i=e.i(71645),n=e.i(49652);let o={some:0,all:1};function a(e,{root:t,margin:r,amount:s,once:l=!1,initial:u=!1}={}){let[d,c]=(0,i.useState)(u);return(0,i.useEffect)(()=>{if(!e.current||l&&d)return;let i={root:t&&t.current||void 0,margin:r,amount:s};return function(e,t,{root:r,margin:i,amount:a="some"}={}){let s=(0,n.resolveElements)(e),l=new WeakMap,u=new IntersectionObserver(e=>{e.forEach(e=>{let r=l.get(e.target);if(!!r!==e.isIntersecting)if(e.isIntersecting){let r=t(e.target,e);"function"==typeof r?l.set(e.target,r):u.unobserve(e.target)}else"function"==typeof r&&(r(e),l.delete(e.target))})},{root:r,rootMargin:i,threshold:"number"==typeof a?a:o[a]});return s.forEach(e=>u.observe(e)),()=>u.disconnect()}(e.current,()=>(c(!0),l?void 0:()=>c(!1)),i)},[t,e,r,l,s]),d}var s=e.i(10542),l=e.i(95420);let u={snappy:{type:"spring",stiffness:400,damping:25},gentle:{type:"spring",stiffness:200,damping:20},bouncy:{type:"spring",stiffness:300,damping:15},smooth:{type:"spring",stiffness:100,damping:20}},d={lift:{scale:1.02,y:-2},glow:{scale:1.01},press:{scale:.98}};function c({children:e,delay:n=0,direction:o="up",className:s,once:l=!0}){let d=(0,i.useRef)(null),c=a(d,{once:l,margin:"-80px"});return(0,t.jsx)(r.motion.div,{ref:d,initial:{opacity:0,...{up:{y:40},down:{y:-40},left:{x:40},right:{x:-40}}[o]},animate:c?{opacity:1,x:0,y:0}:void 0,transition:{...u.gentle,delay:n},className:s,children:e})}function f({children:e,delay:r=0,direction:i="up",className:n,once:o=!0}){return(0,t.jsx)(c,{delay:r,direction:i,className:n,once:o,children:e})}function p({children:e,className:n,staggerDelay:o=.08}){let s=(0,i.useRef)(null),l=a(s,{once:!0,margin:"-60px"}),d={hidden:{opacity:0,y:24},visible:{opacity:1,y:0,transition:u.gentle}};return(0,t.jsx)(r.motion.div,{ref:s,variants:{hidden:{},visible:{transition:{staggerChildren:o}}},initial:"hidden",animate:l?"visible":"hidden",className:n,children:Array.isArray(e)?e.map((e,i)=>(0,t.jsx)(r.motion.div,{variants:d,children:e},i)):e})}function g({children:e,delay:n=0,className:o}){let s=(0,i.useRef)(null),l=a(s,{once:!0,margin:"-60px"});return(0,t.jsx)(r.motion.div,{ref:s,initial:{opacity:0,scale:.92},animate:l?{opacity:1,scale:1}:void 0,transition:{...u.gentle,delay:n},className:o,children:e})}function m({children:e,offset:n=50,className:o}){let a=(0,i.useRef)(null),{scrollYProgress:u}=(0,s.useScroll)({target:a,offset:["start end","end start"]}),d=(0,l.useTransform)(u,[0,1],[n,-n]);return(0,t.jsx)(r.motion.div,{ref:a,style:{y:d},className:o,children:e})}function h({children:e,className:i}){return(0,t.jsx)(r.motion.div,{whileHover:d.lift,whileTap:d.press,transition:u.snappy,className:i,children:e})}e.s(["FadeIn",()=>f,"MotionCard",()=>h,"Parallax",()=>m,"ScaleIn",()=>g,"ScrollReveal",()=>c,"StaggerChildren",()=>p,"hover",0,d,"springs",0,u],12239)},98879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let i=e.r(71645),n="u"<typeof window,o=n?()=>{}:i.useLayoutEffect,a=n?()=>{}:i.useEffect;function s(e){let{headManager:t,reduceComponentsToState:r}=e;function s(){if(t&&t.mountedInstances){let e=i.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return n&&(t?.mountedInstances?.add(e.children),s()),o(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),o(()=>(t&&(t._pendingUpdate=s),()=>{t&&(t._pendingUpdate=s)})),a(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},25633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={default:function(){return m},defaultHead:function(){return c}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let o=e.r(55682),a=e.r(90809),s=e.r(43476),l=a._(e.r(71645)),u=o._(e.r(98879)),d=e.r(42732);function c(){return[(0,s.jsx)("meta",{charSet:"utf-8"},"charset"),(0,s.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===l.default.Fragment?e.concat(l.default.Children.toArray(t.props.children).reduce((e,t)=>
1"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(33525);let p=["name","httpEquiv","charSet","itemProp"];function g(e){let t,r,i,n;return e.reduce(f,[]).reverse().concat(c().reverse()).filter((t=new Set,r=new Set,i=new Set,n={},e=>{let o=!0,a=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){a=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?o=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?o=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)i.has(r)?o=!1:i.add(r);else{let t=e.props[r],i=n[r]||new Set;("name"!==r||!a)&&i.has(t)?o=!1:(i.add(t),n[r]=i)}}}return o})).reverse().map((e,t)=>{let r=e.key||t;return l.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,l.useContext)(d.HeadManagerContext);return(0,s.jsx)(u.default,{reduceComponentsToState:g,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},88143,(e,t,r)=>{"use strict";function i({widthInt:e,heightInt:t,blurWidth:r,blurHeight:i,blurDataURL:n,objectFit:o}){let a=r?40*r:e,s=i?40*i:t,l=a&&s?`viewBox='0 0 ${a} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${l}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${l?"none":"contain"===o?"xMidYMid":"cover"===o?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${n}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return i}})},87690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={VALID_LOADERS:function(){return o},imageConfigDefault:function(){return a}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let o=["default","imgix","cloudinary","akamai","custom"],a={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},8927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return u}}),e.r(33525);let i=e.r(43369),n=e.r(88143),o=e.r(87690),a=["-moz-initial","fill","none","scale-down",void 0];function s(e){return void 0!==e.default}function l(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function u({src:e,sizes:t,unoptimized:r=!1,priority:u=!1,preload:d=!1,loading:c,className:f,quality:p,width:g,height:m,fill:h=!1,style:y,overrideSrc:b,onLoad:v,onLoadingComplete:_,placeholder:w="empty",blurDataURL:x,fetchPriority:j,decoding:P="async",layout:E,objectFit:S,objectPosition:C,lazyBoundary:O,lazyRoot:R,...I},M){var z;let $,D,T,{imgConf:A,showAltText:N,blurComplete:k,defaultLoader:U}=M,F=A||o.imageConfigDefault;if("allSizes"in F)$=F;else{let e=[...F.deviceSizes,...F.imageSizes].sort((e,t)=>e-t),t=F.deviceSizes.sort((e,t)=>e-t),r=F.qualities?.sort((e,t)=>e-t);$={...F,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===U)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,
1configurable:!0});let B=I.loader||U;delete I.loader,delete I.srcSet;let L="__next_img_default"in B;if(L){if("custom"===$.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
2Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=B;B=t=>{let{config:r,...i}=t;return e(i)}}if(E){"fill"===E&&(h=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[E];e&&(y={...y,...e});let r={responsive:"100vw",fill:"100vw"}[E];r&&!t&&(t=r)}let q="",W=l(g),G=l(m);if((z=e)&&"object"==typeof z&&(s(z)||void 0!==z.src)){let t=s(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(D=t.blurWidth,T=t.blurHeight,x=x||t.blurDataURL,q=t.src,!h)if(W||G){if(W&&!G){let e=W/t.width;G=Math.round(t.height*e)}else if(!W&&G){let e=G/t.height;W=Math.round(t.width*e)}}else W=t.width,G=t.height}let X=!u&&!d&&("lazy"===c||void 0===c);(!(e="string"==typeof e?e:q)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,X=!1),$.unoptimized&&(r=!0),L&&!$.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let H=l(p),V=Object.assign(h?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:S,objectPosition:C}:{},N?{}:{color:"transparent"},y),J=k||"empty"===w?null:"blur"===w?`url("data:image/svg+xml;charset=utf-8,${(0,n.getImageBlurSvg)({widthInt:W,heightInt:G,blurWidth:D,blurHeight:T,blurDataURL:x||"",objectFit:V.objectFit})}")`:`url("${w}")`,K=a.includes(V.objectFit)?"fill"===V.objectFit?"100% 100%":"cover":V.objectFit,Q=J?{backgroundSize:K,backgroundPosition:V.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:J}:{},Y=function({config:e,src:t,unoptimized:r,width:n,quality:o,sizes:a,loader:s}){if(r){let e=(0,i.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")&&e){let r=t.includes("?")?"&":"?";t=`${t}${r}dpl=${e}`}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:l,kind:u}=function({deviceSizes:e,allSizes:t},r,i){if(i){let r=/(^|\s)(1?\d?\d)vw/g,n=[];for(let e;e=r.exec(i);)n.push(parseInt(e[2]));if(n.length){let r=.01*Math.min(...n);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,n,a),d=l.length-1;return{sizes:a||"w"!==u?a:"100vw",srcSet:l.map((r,i)=>`${s({config:e,src:t,quality:o,width:r})} ${"w"===u?r:i+1}${u}`).join(", "),src:s({config:e,src:t,quality:o,width:l[d]})}}({config:$,src:e,unoptimized:r,width:W,quality:H,sizes:t,loader:B}),Z=X?"lazy":c;return{props:{...I,loading:Z,fetchPriority:j,width:W,height:G,decoding:P,className:f,style:{...V,...Q},sizes:Y.sizes,srcSet:Y.srcSet,src:b||Y.src},meta:{unoptimized:r,preload:d||u,placeholder:w,fill:h}}}},18556,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return o}});let i=e.r(55682)._(e.r(71645)),n=e.r(87690),o=i.default.createContext(n.imageConfigDefault)},65856,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return i}});let i=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,t,r)=>{"use strict";function i(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,0):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return i}})},1948,(e,t,r)=>{"use strict";
2Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a}});let i=e.r(70965),n=e.r(43369);function o({config:e,src:t,width:r,quality:o}){if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
3Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let a=(0,i.findClosestQuality)(o,e),s=(0,n.getDeploymentId)();return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${a}${t.startsWith("/")&&s?`&dpl=${s}`:""}`}o.__next_img_default=!0;let a=o},85437,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return _}});let i=e.r(55682),n=e.r(90809),o=e.r(43476),a=n._(e.r(71645)),s=i._(e.r(74080)),l=i._(e.r(25633)),u=e.r(8927),d=e.r(87690),c=e.r(18556);e.r(33525);let f=e.r(65856),p=i._(e.r(1948)),g=e.r(18581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function h(e,t,r,i,n,o,a){let s=e?.src;e&&e["data-loaded-src"]!==s&&(e["data-loaded-src"]=s,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&n(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let i=!1,n=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>i,isPropagationStopped:()=>n,persist:()=>{},preventDefault:()=>{i=!0,t.preventDefault()},stopPropagation:()=>{n=!0,t.stopPropagation()}})}i?.current&&i.current(e)}}))}function y(e){return a.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,a.forwardRef)(({src:e,srcSet:t,sizes:r,height:i,width:n,decoding:s,className:l,style:u,fetchPriority:d,placeholder:c,loading:f,unoptimized:p,fill:m,onLoadRef:b,onLoadingCompleteRef:v,setBlurComplete:_,setShowAltText:w,sizesInput:x,onLoad:j,onError:P,...E},S)=>{let C=(0,a.useCallback)(e=>{e&&(P&&(e.src=e.src),e.complete&&h(e,c,b,v,_,p,x))},[e,c,b,v,_,P,p,x]),O=(0,g.useMergedRef)(S,C);return(0,o.jsx)("img",{...E,...y(d),loading:f,width:n,height:i,decoding:s,"data-nimg":m?"fill":"1",className:l,style:u,sizes:r,srcSet:t,src:e,ref:O,onLoad:e=>{h(e.currentTarget,c,b,v,_,p,x)},onError:e=>{w(!0),"empty"!==c&&_(!0),P&&P(e)}})});function v({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...y(t.fetchPriority)};return e&&s.default.preload?(s.default.preload(t.src,r),null):(0,o.jsx)(l.default,{children:(0,o.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let _=(0,a.forwardRef)((e,t)=>{let r=(0,a.useContext)(f.RouterContext),i=(0,a.useContext)(c.ImageConfigContext),n=(0,a.useMemo)(()=>{let e=m||i||d.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),n=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:n,localPatterns:"u"<typeof window?i?.localPatterns:e.localPatterns}},[i]),{onLoad:s,onLoadingComplete:l}=e,g=(0,a.useRef)(s);(0,a.useEffect)(()=>{g.current=s},[s]);let h=(0,a.useRef)(l);(0,a.useEffect)(()=>{h.current=l},[l]);let[y,_]=(0,a.useState)(!1),[w,x]=(0,a.useState)(!1),{props:j,meta:P}=(0,u.getImgProps)(e,{defaultLoader:p.default,imgConf:n,blurComplete:y,showAltText:w});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(b,{...j,unoptimized:P.unoptimized,placeholder:P.placeholder,fill:P.fill,onLoadRef:g,onLoadingCompleteRef:h,setBlurComplete:_,setShowAltText:x,sizesInput:e.sizes,ref:t}),P.preload?(0,o.jsx)(v,{isAppRouter:!r,imgAttributes:j}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
3dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);

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.