Fix demo site auto-enhancement and content persistence

- Restructure demo directory from test-sites/ to demos/ with flattened layout
- Add auto-enhancement on server startup for all sites with auto_enhance: true
- Fix inconsistent content ID generation that prevented dan-eden-portfolio content persistence
- Update server configuration to enhance from source to separate output directories
- Remove manual enhancement from justfile in favor of automatic server enhancement
- Clean up legacy test files and unused restore command
- Update build system to use CDN endpoint instead of file copying
This commit is contained in:
2025-09-17 00:07:40 +02:00
parent 1fa607c47c
commit 71561316da
73 changed files with 190 additions and 4827 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5076],{226:(e,A,t)=>{"use strict";t.r(A),t.d(A,{default:()=>r});let r={src:"/_next/static/media/iPadPro11M4.93b0325f.png",height:1880,width:2640,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAMAAADJ2y/JAAAAD1BMVEUGBgZMaXELCQsAAAAKCQqRNR3zAAAABXRSTlNFACsEWomyBWcAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAjSURBVHicY2BhAAMWBiZGMGBiYGJkZmZmhjAYGSEMqBRMMQAHdABFMwT0jgAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:6}},1965:e=>{e.exports={root:"styles_root__rUjFN",children:"styles_children__D9Nsi",bezel:"styles_bezel___vGQl"}},4769:(e,A,t)=>{"use strict";t.r(A),t.d(A,{default:()=>r});let r={src:"/_next/static/media/wwcg.c58b0775.png",height:707,width:698,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAABlBMVEUAAAAAAAClZ7nPAAAAAnRSTlMRA7xDv5IAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAmSURBVHicRcsBCgAwAEFR7/6XXmw1iZ8SRBokUZc2T6+G4/v4LzgE0AAifxUgZgAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:8}},5337:e=>{e.exports={root:"home_root__o7QEV",intro:"home_intro__8dWW4",xxl:"home_xxl__iX0Z1"}},5715:(e,A,t)=>{"use strict";t.d(A,{default:()=>i});var r=t(5155),s=t(2115),o=t(9588);function i(e){let{autoPlay:A=!1,caption:t,controls:i=!0,id:l,loop:n=!1,preload:a=!0,playsInline:h=!1,poster:_,muted:c=!1,width:g,height:d,className:u}=e,E=(0,s.useRef)(null),b=void 0==_?void 0:"https://image.mux.com/".concat(l,"/thumbnail.webp?time=").concat(_),m="https://stream.mux.com/".concat(l,".m3u8");(0,s.useEffect)(()=>{let e;return o.Ay.isSupported()&&function t(){null!=e&&e.destroy();let r=new o.Ay({enableWorker:!1});null!=E.current&&r.attachMedia(E.current),r.on(o.Ay.Events.MEDIA_ATTACHED,()=>{r.loadSource(m),r.on(o.Ay.Events.MANIFEST_PARSED,()=>{if(A){var e;null==E||null==(e=E.current)||e.play().catch(()=>{console.log("Unable to autoplay prior to user interaction with the DOM")})}})}),r.on(o.Ay.Events.ERROR,function(e,A){if(A.fatal)switch(A.type){case o.Ay.ErrorTypes.NETWORK_ERROR:r.startLoad();break;case o.Ay.ErrorTypes.MEDIA_ERROR:r.recoverMediaError();break;default:t()}}),e=r}(),()=>{null!=e&&e.destroy()}},[A,E,m]);let R={autoPlay:A,className:u,playsInline:h,loop:n,controls:i,width:g,height:d,poster:b,muted:c,preload:a?"auto":"none",suppressHydrationWarning:!0},p=o.Ay.isSupported()?(0,r.jsx)("video",{ref:E,...R}):(0,r.jsx)("video",{ref:E,src:m,...R});return(0,r.jsxs)("figure",{children:[p,t&&(0,r.jsx)("figcaption",{children:t})]})}},6432:(e,A,t)=>{Promise.resolve().then(t.bind(t,226)),Promise.resolve().then(t.bind(t,6511)),Promise.resolve().then(t.t.bind(t,1965,23)),Promise.resolve().then(t.t.bind(t,9075,23)),Promise.resolve().then(t.t.bind(t,5337,23)),Promise.resolve().then(t.bind(t,5715)),Promise.resolve().then(t.bind(t,4769)),Promise.resolve().then(t.t.bind(t,7187,23)),Promise.resolve().then(t.t.bind(t,8310,23)),Promise.resolve().then(t.t.bind(t,6874,23)),Promise.resolve().then(t.t.bind(t,3063,23))},6511:(e,A,t)=>{"use strict";t.r(A),t.d(A,{default:()=>r});let r={src:"/_next/static/media/iPhone14Pro.2e2e287c.png",height:2716,width:1339,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAICAMAAADp7a43AAAADFBMVEUgHh0iIB9MaXEPDw/kr3MeAAAABHRSTlMpNgBRUiN+bgAAAAlwSFlzAAAhOAAAITgBRZYxYAAAAB1JREFUeJxjYGRmZmRgYGJiYGAEEWAWGsHIwMAIAANWACQGp/BhAAAAAElFTkSuQmCC",blurWidth:4,blurHeight:8}},7187:e=>{e.exports={root:"styles_root__loSke"}},8310:e=>{e.exports={root:"styles_root__ezqfE",card:"styles_card__Zgiwg",wwcgImage:"styles_wwcgImage__6T0vh",highlight:"styles_highlight__PDTTu",stretcher:"styles_stretcher__vQB9_",button:"styles_button__OAX5k"}},9075:e=>{e.exports={root:"styles_root__bf3zB",left:"styles_left__647Tl",right:"styles_right__Ibe_m"}}},e=>{var A=A=>e(e.s=A);e.O(0,[1005,9910,6874,3063,8441,1684,7358],()=>A(6432)),_N_E=e.O()}]);

View File

@@ -0,0 +1 @@
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7358],{9288:(e,s,n)=>{Promise.resolve().then(n.t.bind(n,894,23)),Promise.resolve().then(n.t.bind(n,4970,23)),Promise.resolve().then(n.t.bind(n,6614,23)),Promise.resolve().then(n.t.bind(n,6975,23)),Promise.resolve().then(n.t.bind(n,7555,23)),Promise.resolve().then(n.t.bind(n,4911,23)),Promise.resolve().then(n.t.bind(n,9665,23)),Promise.resolve().then(n.t.bind(n,1295,23))},9393:()=>{}},e=>{var s=s=>e(e.s=s);e.O(0,[8441,1684],()=>(s(5415),s(9288))),_N_E=e.O()}]);

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,2 @@
(()=>{"use strict";var e={},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}},i=!0;try{e[o](a,a.exports,r),i=!1}finally{i&&delete t[o]}return a.exports}r.m=e,(()=>{var e=[];r.O=(t,o,n,a)=>{if(o){a=a||0;for(var i=e.length;i>0&&e[i-1][2]>a;i--)e[i]=e[i-1];e[i]=[o,n,a];return}for(var u=1/0,i=0;i<e.length;i++){for(var[o,n,a]=e[i],l=!0,c=0;c<o.length;c++)(!1&a||u>=a)&&Object.keys(r.O).every(e=>r.O[e](o[c]))?o.splice(c--,1):(l=!1,a<u&&(u=a));if(l){e.splice(i--,1);var d=n();void 0!==d&&(t=d)}}return t}})(),r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(o,n){if(1&n&&(o=this(o)),8&n||"object"==typeof o&&o&&(4&n&&o.__esModule||16&n&&"function"==typeof o.then))return o;var a=Object.create(null);r.r(a);var i={};e=e||[null,t({}),t([]),t(t)];for(var u=2&n&&o;"object"==typeof u&&!~e.indexOf(u);u=t(u))Object.getOwnPropertyNames(u).forEach(e=>i[e]=()=>o[e]);return i.default=()=>o,r.d(a,i),a}})(),r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>{},r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="_N_E:";r.l=(o,n,a,i)=>{if(e[o])return void e[o].push(n);if(void 0!==a)for(var u,l,c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var f=c[d];if(f.getAttribute("src")==o||f.getAttribute("data-webpack")==t+a){u=f;break}}u||(l=!0,(u=document.createElement("script")).charset="utf-8",u.timeout=120,r.nc&&u.setAttribute("nonce",r.nc),u.setAttribute("data-webpack",t+a),u.src=r.tu(o)),e[o]=[n];var s=(t,r)=>{u.onerror=u.onload=null,clearTimeout(p);var n=e[o];if(delete e[o],u.parentNode&&u.parentNode.removeChild(u),n&&n.forEach(e=>e(r)),t)return t(r)},p=setTimeout(s.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=s.bind(null,u.onerror),u.onload=s.bind(null,u.onload),l&&document.head.appendChild(u)}})(),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.tt=()=>(void 0===e&&(e={createScriptURL:e=>e},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("nextjs#bundler",e))),e)})(),r.tu=e=>r.tt().createScriptURL(e),r.p="/_next/",(()=>{var e={8068:0,9127:0,1005:0,1483:0,5110:0,6890:0};r.f.j=(t,o)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(1005|1483|5110|6890|8068|9127)$/.test(t))e[t]=0;else{var a=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=a);var i=r.p+r.u(t),u=Error();r.l(i,o=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var a=o&&("load"===o.type?"missing":o.type),i=o&&o.target&&o.target.src;u.message="Loading chunk "+t+" failed.\n("+a+": "+i+")",u.name="ChunkLoadError",u.type=a,u.request=i,n[1](u)}},"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,o)=>{var n,a,[i,u,l]=o,c=0;if(i.some(t=>0!==e[t])){for(n in u)r.o(u,n)&&(r.m[n]=u[n]);if(l)var d=l(r)}for(t&&t(o);c<i.length;c++)a=i[c],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return r.O(d)},o=self.webpackChunk_N_E=self.webpackChunk_N_E||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})()})();
;(function(){if(typeof document==="undefined"||!/(?:^|;\s)__vercel_toolbar=1(?:;|$)/.test(document.cookie))return;var s=document.createElement('script');s.src='https://vercel.live/_next-live/feedback/feedback.js';s.setAttribute("data-explicit-opt-in","true");s.setAttribute("data-cookie-opt-in","true");s.setAttribute("data-deployment-id","dpl_4tmoGZS37rLepoJ6Qs6iJ48L6AxP");((document.head||document.documentElement).appendChild(s))})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long