gazetta 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/admin-dist/assets/{index-DjGNi6yy.js → index-BZAFKsUp.js} +22 -22
  2. package/admin-dist/assets/index-BpRotMuK.css +1 -0
  3. package/admin-dist/index.html +2 -2
  4. package/dist/admin-api/index.d.ts +8 -2
  5. package/dist/admin-api/index.d.ts.map +1 -1
  6. package/dist/admin-api/index.js +31 -5
  7. package/dist/admin-api/index.js.map +1 -1
  8. package/dist/admin-api/routes/compare.d.ts +2 -1
  9. package/dist/admin-api/routes/compare.d.ts.map +1 -1
  10. package/dist/admin-api/routes/compare.js +2 -1
  11. package/dist/admin-api/routes/compare.js.map +1 -1
  12. package/dist/admin-api/routes/fragments.d.ts +2 -1
  13. package/dist/admin-api/routes/fragments.d.ts.map +1 -1
  14. package/dist/admin-api/routes/fragments.js +3 -1
  15. package/dist/admin-api/routes/fragments.js.map +1 -1
  16. package/dist/admin-api/routes/pages.d.ts +2 -1
  17. package/dist/admin-api/routes/pages.d.ts.map +1 -1
  18. package/dist/admin-api/routes/pages.js +3 -1
  19. package/dist/admin-api/routes/pages.js.map +1 -1
  20. package/dist/admin-api/routes/publish.d.ts +2 -1
  21. package/dist/admin-api/routes/publish.d.ts.map +1 -1
  22. package/dist/admin-api/routes/publish.js +121 -27
  23. package/dist/admin-api/routes/publish.js.map +1 -1
  24. package/dist/cli/index.js +75 -12
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/compare.d.ts +7 -0
  27. package/dist/compare.d.ts.map +1 -1
  28. package/dist/compare.js +39 -40
  29. package/dist/compare.js.map +1 -1
  30. package/dist/concurrency.d.ts +63 -0
  31. package/dist/concurrency.d.ts.map +1 -0
  32. package/dist/concurrency.js +134 -0
  33. package/dist/concurrency.js.map +1 -0
  34. package/dist/hash.d.ts +15 -0
  35. package/dist/hash.d.ts.map +1 -1
  36. package/dist/hash.js +47 -7
  37. package/dist/hash.js.map +1 -1
  38. package/dist/publish-rendered.d.ts +6 -5
  39. package/dist/publish-rendered.d.ts.map +1 -1
  40. package/dist/publish-rendered.js +39 -44
  41. package/dist/publish-rendered.js.map +1 -1
  42. package/dist/publish.d.ts +38 -0
  43. package/dist/publish.d.ts.map +1 -1
  44. package/dist/publish.js +154 -14
  45. package/dist/publish.js.map +1 -1
  46. package/dist/sidecars.d.ts +56 -0
  47. package/dist/sidecars.d.ts.map +1 -0
  48. package/dist/sidecars.js +141 -0
  49. package/dist/sidecars.js.map +1 -0
  50. package/dist/site-loader.d.ts.map +1 -1
  51. package/dist/site-loader.js +13 -10
  52. package/dist/site-loader.js.map +1 -1
  53. package/dist/source-sidecars.d.ts +13 -0
  54. package/dist/source-sidecars.d.ts.map +1 -0
  55. package/dist/source-sidecars.js +52 -0
  56. package/dist/source-sidecars.js.map +1 -0
  57. package/package.json +1 -1
  58. package/admin-dist/assets/index-Bh_y1d_l.css +0 -1
@@ -38,17 +38,17 @@ import{a as e,t}from"./rolldown-runtime-COnpUsM8.js";import{$ as n,A as r,C as i
38
38
 
39
39
  `))!==-1;){let e=c.slice(0,r);c=c.slice(r+2);let t=[];for(let n of e.split(`
40
40
  `))n.startsWith(`data:`)&&t.push(n.slice(5).trim());if(!t.length)continue;let i=JSON.parse(t.join(`
41
- `));n(i),i.kind===`done`?l=i.results:i.kind===`fatal`&&(u={error:i.error,invalidTemplates:i.invalidTemplates})}}if(u){let e=Error(u.error);throw u.invalidTemplates&&(e.invalidTemplates=u.invalidTemplates),e}return l}var U={getSite:()=>H(`/site`),getPages:()=>H(`/pages`),getPage:(e,t)=>H(`/pages/${e}`,t),createPage:e=>H(`/pages`,{method:`POST`,body:JSON.stringify(e)}),deletePage:e=>H(`/pages/${e}`,{method:`DELETE`}),updatePage:(e,t)=>H(`/pages/${e}`,{method:`PUT`,body:JSON.stringify(t)}),getFragments:()=>H(`/fragments`),getFragment:(e,t)=>H(`/fragments/${e}`,t),createFragment:e=>H(`/fragments`,{method:`POST`,body:JSON.stringify(e)}),deleteFragment:e=>H(`/fragments/${e}`,{method:`DELETE`}),updateFragment:(e,t)=>H(`/fragments/${e}`,{method:`PUT`,body:JSON.stringify(t)}),getTemplates:()=>H(`/templates`),getTemplateSchema:e=>H(`/templates/${e}/schema`),getFields:()=>H(`/fields`),getTargets:()=>H(`/targets`),publish:(e,t)=>H(`/publish`,{method:`POST`,body:JSON.stringify({items:e,targets:t})}),publishStream:dn,compare:(e,t)=>H(`/compare?target=${encodeURIComponent(e)}`,t),fetchFromTarget:(e,t)=>H(`/fetch`,{method:`POST`,body:JSON.stringify({source:e,items:t})})},fn=V(`site`,()=>{let e=c(null),t=c([]),n=c([]),r=c(!1),i=c(null),a=null;async function o(){if(!(e.value&&!i.value))return a||s()}async function s(e=5){return a||(a=l(e),a)}async function l(o=5){r.value=!0,i.value=null;for(let a=0;a<=o;a++)try{let[i,a,o]=await Promise.all([U.getSite(),U.getPages(),U.getFragments()]);e.value=i,t.value=a,n.value=o,r.value=!1;return}catch(e){let t=e.message;if(a<o&&(t.includes(`502`)||t.includes(`Failed to fetch`)||t.includes(`not ready`))){await new Promise(e=>setTimeout(e,1e3));continue}i.value=t}r.value=!1,a=null}return{manifest:e,pages:t,fragments:n,loading:r,error:i,load:s,ensureLoaded:o}}),pn=V(`theme`,()=>{let e=c(!0);function t(){let t=localStorage.getItem(`gazetta_theme`);e.value=t?t===`dark`:!0,r()}function n(){e.value=!e.value,localStorage.setItem(`gazetta_theme`,e.value?`dark`:`light`),r()}function r(){document.documentElement.classList.toggle(`dark`,e.value),document.documentElement.classList.toggle(`light`,!e.value)}return{dark:e,init:t,toggle:n}}),mn=V(`toast`,()=>{let e=c(null),t=null;function n(){t&&=(clearTimeout(t),null),e.value=null}function r(n,r){let i=r?.type??`success`;t&&=(clearTimeout(t),null),e.value={message:n,type:i,link:r?.link};let a=r?.duration??(i===`error`?0:3e3);a>0&&(t=setTimeout(()=>{e.value=null,t=null},a))}function i(e,t){r((e instanceof Error?e.message:t).replace(/^Request failed: (\d+)$/,`Server error ($1)`).replace(/^Failed to fetch$/,`Cannot connect to server`),{type:`error`})}return{current:e,show:r,showError:i,dismiss:n}}),hn=V(`preview`,()=>{let e=c(0),t=c(0);function n(){e.value++}function r(){t.value++}return{version:e,draftVersion:t,invalidate:n,invalidateDraft:r}}),gn=V(`selection`,()=>{let e=mn(),t=c(null),n=c(null),r=null,i=g(()=>t.value?.type??null),a=g(()=>t.value?.name??null),o=g(()=>t.value?.detail??null),s=g(()=>fn().pages.filter(e=>!e.route.includes(`:`))),l=g(()=>t.value?.type===`page`?t.value.detail.route:t.value?.type===`fragment`?n.value?n.value.route:`/@${t.value.name}`:null);function u(){let e=s.value;n.value=e.find(e=>e.route===`/`)??e[0]??null}function d(e){let t=s.value.find(t=>t.name===e);t&&(n.value=t,hn().invalidate())}async function f(i){r?.abort(),r=new AbortController;let{signal:a}=r;try{t.value={type:`page`,name:i,detail:await U.getPage(i,{signal:a})},n.value=null,hn().invalidate()}catch(t){if(t.name===`AbortError`)return;e.showError(t,`Failed to load page "${i}"`)}}async function p(i){r?.abort(),r=new AbortController;let{signal:a}=r;try{t.value={type:`fragment`,name:i,detail:await U.getFragment(i,{signal:a})},n.value||u(),hn().invalidate()}catch(t){if(t.name===`AbortError`)return;e.showError(t,`Failed to load fragment "${i}"`)}}async function m(){if(t.value)try{if(t.value.type===`page`){let e=await U.getPage(t.value.name);t.value={type:`page`,name:t.value.name,detail:e}}else{let e=await U.getFragment(t.value.name);t.value={type:`fragment`,name:t.value.name,detail:e}}}catch(t){e.showError(t,`Failed to reload`)}}async function h(n){if(t.value)try{t.value.type===`page`?await U.updatePage(t.value.name,{components:n}):await U.updateFragment(t.value.name,{components:n}),await m(),hn().invalidate()}catch(t){e.showError(t,`Failed to update components`)}}return{selection:t,type:i,name:a,detail:o,previewRoute:l,fragmentHostPage:n,staticPages:s,selectPage:f,selectFragment:p,setFragmentHostPage:d,reload:m,updateComponents:h}}),_n=V(`publishStatus`,()=>{let e=c(null),t=c(null),n=c(!1),r=c(null),i=null,a=[`production`,`staging`,`local`];async function o(e,t){let n=[...a.flatMap(t=>e.filter(e=>e.environment===t)),...e.filter(e=>!a.includes(e.environment))],r=null;for(let e of n)try{let n=await U.compare(e.name,{signal:t});if(t.aborted)return null;if(!n.firstPublish)return{name:e.name,result:n};r||={name:e.name,result:n}}catch(e){if(t.aborted||e.name===`AbortError`)return null}return r}let s=g(()=>{let t=new Set;if(!e.value)return t;for(let n of e.value.added)t.add(n);for(let n of e.value.modified)t.add(n);return t});function l(e){return s.value.has(`pages/${e}`)}function u(e){return s.value.has(`fragments/${e}`)}let d=g(()=>e.value?.firstPublish===!0);async function f(){i?.abort();let a=new AbortController;i=a,n.value=!0,r.value=null;try{let n=await U.getTargets();if(a.signal.aborted)return;if(n.length===0){t.value=null,e.value=null;return}let r=await o(n,a.signal);if(a.signal.aborted)return;r?(t.value=r.name,e.value=r.result):(t.value=null,e.value=null)}catch(t){if(a.signal.aborted||t.name===`AbortError`)return;r.value=t.message,e.value=null}finally{a.signal.aborted||(n.value=!1)}}function p(){i?.abort(),e.value=null,t.value=null,r.value=null,n.value=!1}return{result:e,target:t,loading:n,error:r,isPageDirty:l,isFragmentDirty:u,isFirstPublish:d,dirtyPaths:s,refresh:f,clear:p}}),vn=`modulepreload`,yn=function(e){return`/admin/`+e},bn={},xn=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=yn(t,n),t in bn)return;bn[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:vn,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};function Sn(e){return JSON.parse(JSON.stringify(e))}var Cn=V(`editing`,()=>{let e=mn(),t=c(null),n=c(null),r=c(null),i=c(!1),a=c(null),s=c(null),l=c(0),u=c(null),d=null,f=o(new Map),p=g(()=>t.value?.template??null),m=g(()=>t.value?.path??null),h=g(()=>t.value?.schema??null),_=g(()=>!n.value||!r.value?!1:JSON.stringify(n.value)!==JSON.stringify(r.value)),v=g(()=>f.size+ +!!_.value),y=g(()=>v.value>0),b=g(()=>{let e={};for(let[t,n]of f)e[t]=n.editedContent;return m.value&&n.value&&_.value&&(e[m.value]=n.value),e});function x(e){return f.has(e)}function S(){d&&=(clearInterval(d),null)}function C(){_.value&&t.value&&n.value&&f.set(t.value.path,{target:t.value,editedContent:Sn(n.value)})}async function w(e){let{hasEditor:t,editorUrl:n,fieldsBaseUrl:r,...i}=await U.getTemplateSchema(e);return{schema:i,hasEditor:!!t,editorUrl:n,fieldsBaseUrl:r}}async function T(e,o){if(S(),s.value=null,t.value=e,n.value=Sn(o||e.content),r.value=Sn(e.content),i.value=!1,a.value=null,u.value=null,e.hasEditor&&e.editorUrl)try{let t=await xn(()=>import(e.editorUrl),[]);u.value=t.default??t}catch(t){console.warn(`Custom editor for "${e.template}" failed to load:`,t)}l.value++,hn().invalidateDraft()}function E(e){return async t=>{let n=gn(),r=n.detail;if(!r||!n.selection)return;let i=Sn(r.components??[]),a=e.split(`/`),o=i;for(let e=0;e<a.length;e++){let n=o.findIndex(t=>typeof t==`object`&&t.name===a[e]);if(n===-1)return;let r=o[n];e===a.length-1?r.content=t:o=r.components??[]}n.selection.type===`page`?await U.updatePage(n.selection.name,{components:i}):await U.updateFragment(n.selection.name,{components:i})}}function D(e){let t=gn().detail;if(!t?.components)return null;let n=e.split(`/`),r=t.components;for(let e=0;e<n.length;e++){let t=r.find(t=>typeof t==`object`&&t.name===n[e]);if(!t||typeof t==`string`)return null;if(e===n.length-1)return{template:t.template,content:t.content??{}};r=t.components??[]}return null}async function O(e,n){S(),C();let r=f.get(e);if(r){f.delete(e),await T(r.target,r.editedContent);return}try{let t=D(e);if(!t)throw Error(`Component "${e}" not found in page manifest`);let{schema:r,hasEditor:i,editorUrl:a,fieldsBaseUrl:o}=await w(n);await T({template:n,path:e,content:t.content,schema:r,hasEditor:i,editorUrl:a,fieldsBaseUrl:o,save:E(e)})}catch(r){t.value=null,s.value=`Failed to load "${n}": ${r.message}`,d=setInterval(()=>O(e,n),3e3)}}async function k(){S(),C();let e=gn(),n=e.detail,r=e.selection;if(!n||!r)return;let i=`_root`,a=f.get(i);if(a){f.delete(i),await T(a.target,a.editedContent);return}try{let e=n.content??{},{schema:t,hasEditor:a,editorUrl:o,fieldsBaseUrl:s}=await w(n.template),c=r.type===`page`?e=>U.updatePage(r.name,{content:e}).then(()=>{}):e=>U.updateFragment(r.name,{content:e}).then(()=>{});await T({template:n.template,path:i,content:e,schema:t,hasEditor:a,editorUrl:o,fieldsBaseUrl:s,save:c})}catch(e){t.value=null,s.value=`Failed to load "${n.template}": ${e.message}`,d=setInterval(()=>k(),3e3)}}async function A(e){S(),C();let n=`@${e}`,r=f.get(n);if(r){f.delete(n),await T(r.target,r.editedContent);return}try{let t=await U.getFragment(e),r=t.content??{},{schema:i,hasEditor:a,editorUrl:o,fieldsBaseUrl:s}=await w(t.template);await T({template:t.template,path:n,content:r,schema:i,hasEditor:a,editorUrl:o,fieldsBaseUrl:s,save:t=>U.updateFragment(e,{content:t}).then(()=>{})})}catch(n){t.value=null,s.value=`Failed to load fragment "${e}": ${n.message}`,d=setInterval(()=>A(e),3e3)}}function j(){S(),s.value=null,t.value=null,n.value=null,r.value=null,i.value=!1,a.value=null,f.clear()}typeof window<`u`&&window.addEventListener(`beforeunload`,e=>{y.value&&(e.preventDefault(),e.returnValue=``)});function M(e){n.value=e,hn().invalidateDraft()}function N(e){f.delete(e),hn().invalidateDraft()}function ee(){!t.value||!r.value||(n.value=Sn(r.value),l.value++,hn().invalidateDraft())}async function P(){if(!(!t.value&&f.size===0)){i.value=!0,a.value=null;try{t.value&&n.value&&(await t.value.save(n.value),r.value=Sn(n.value));for(let e of f.values())await e.target.save(e.editedContent);f.clear(),hn().invalidate(),_n().refresh(),e.show(`Saved`)}catch(t){a.value=t.message,e.showError(t,`Failed to save`)}finally{i.value=!1}}}return{target:t,content:n,saved:r,saving:i,lastSaveError:a,template:p,path:m,schema:h,dirty:_,loadError:s,mountVersion:l,customEditorMount:u,pendingEdits:f,pendingCount:v,hasPendingEdits:y,allOverrides:b,open:T,openComponent:O,openPageRoot:k,openFragment:A,clear:j,markDirty:M,discard:ee,revertStashed:N,save:P,hasPendingEdit:x}}),wn=V(`componentFocus`,()=>{let e=c(null),t=c(null),n=c(null),r=c(null);function i(t){e.value=t}function a(e){t.value=e}function o(e){n.value=e}function s(e){r.value=e}function l(){r.value=null}return{highlightGzId:e,previewHoverGzId:t,selectedGzId:n,pendingGzId:r,highlight:i,previewHover:a,select:o,setPending:s,clearPending:l}}),Tn=V(`uiMode`,()=>{let e=c(`browse`),t=`browse`;function n(){e.value=`edit`}function r(){Cn().clear();let t=wn();t.select(null),t.clearPending(),e.value=`browse`}function i(){e.value===`fullscreen`?e.value=t:(t=e.value,e.value=`fullscreen`)}return{mode:e,enterEdit:n,enterBrowse:r,toggleFullscreen:i}}),En={class:`publish-content`},Dn={class:`publish-item`,"data-testid":`publish-current-item`},On={key:0,class:`publish-empty`},kn={class:`publish-targets`},An=[`for`],jn={key:0,class:`publish-env-badge publish-env-prod`},Mn={key:1,class:`publish-env-badge publish-env-staging`},Nn={key:0,class:`publish-warning`,"data-testid":`publish-invalid-templates`},Pn={class:`publish-invalid-body`},Fn={class:`publish-invalid-list`},In={class:`publish-invalid-name`},Ln={class:`publish-invalid-error`},Rn={key:1,class:`publish-confirm-banner`,"data-testid":`publish-confirm-banner`},zn={key:2,class:`publish-warning`,"data-testid":`publish-compare-error`},Bn={key:3,class:`publish-firstpublish`,"data-testid":`publish-first-publish`},Vn={key:4,class:`publish-changes`},Hn={class:`publish-label`},Un={key:0,class:`publish-label-hint`},Wn={key:1,class:`publish-label-hint`,"data-testid":`publish-summary`},Gn={key:0},Kn={key:1},qn={key:2},Jn={key:0,class:`publish-nochanges`},Yn={key:0,class:`publish-changes-group`,"data-testid":`publish-group-pages`},Xn={class:`publish-changes-list`},Zn={key:1,class:`publish-change-nocheckbox`},Qn={class:`publish-change-label`},$n={key:1,class:`publish-changes-group`,"data-testid":`publish-group-fragments`},er={class:`publish-changes-list`},tr={key:1,class:`publish-change-nocheckbox`},nr={class:`publish-change-label`},rr={key:2,class:`publish-progress`,"data-testid":`publish-progress`},ir={class:`publish-progress-header`},ar={class:`publish-progress-target`},or={class:`publish-progress-count`},sr={class:`publish-progress-bar`},cr=[`title`],lr={key:3,class:`publish-results`},ur={class:`result-target`},dr={key:0,class:`result-detail`},fr={key:1,class:`result-detail`},pr=R({__name:`PublishDialog`,props:{visible:{type:Boolean},itemType:{},itemName:{}},emits:[`close`],setup(e,{emit:t}){let a=e,o=t,h=g(()=>`${a.itemType}/${a.itemName}`),_=_n(),b=c([]),S=c([]),w=c(!1),T=c(!1),D=c(null),k=c(new Map),A=c(new Map),j=c(new Map),M=c(new Set),N=new Map,P=c(new Set([h.value]));r(async()=>{try{b.value=await U.getTargets()}catch{b.value=[]}}),E(()=>R());function R(){for(let e of N.values())e.abort();N.clear()}l(S,()=>{T.value=!1}),l(S,(e,t)=>{let n=e.filter(e=>!t?.includes(e)),r=(t??[]).filter(t=>!e.includes(t));for(let e of r)N.get(e)?.abort(),N.delete(e),M.value.delete(e),A.value.delete(e),j.value.delete(e);for(let e of n){let t=new AbortController;N.set(e,t),M.value.add(e),j.value.delete(e),U.compare(e,{signal:t.signal}).then(n=>{t.signal.aborted||(A.value.set(e,n),M.value.delete(e),A.value=new Map(A.value),M.value=new Set(M.value))}).catch(n=>{t.signal.aborted||n.name===`AbortError`||(j.value.set(e,n.message),M.value.delete(e),j.value=new Map(j.value),M.value=new Set(M.value))})}});let te={added:0,modified:1,deleted:2},ne=g(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);(!r||te[n]<te[r.change])&&e.set(t,{path:t,change:n})};for(let e of S.value){let n=A.value.get(e);if(n){for(let e of n.added)t(e,`added`);for(let e of n.modified)t(e,`modified`);for(let e of n.deleted)t(e,`deleted`)}}return[...e.values()].sort((e,t)=>e.path.localeCompare(t.path))}),re=g(()=>{let e=[],t=[];for(let n of ne.value)n.path.startsWith(`fragments/`)?t.push(n):e.push(n);return{pages:e,fragments:t}}),V=g(()=>{let e=0,t=0,n=0;for(let r of ne.value)r.change===`added`?e++:r.change===`modified`?t++:n++;return{added:e,modified:t,deleted:n}}),ie=g(()=>M.value.size>0),ae=g(()=>b.value.filter(e=>e.environment===`production`&&S.value.includes(e.name))),oe=g(()=>ae.value.length>0),se=g(()=>{let e=new Map;for(let t of S.value){let n=A.value.get(t);if(n)for(let t of n.invalidTemplates)e.has(t.name)||e.set(t.name,t.errors)}return[...e.entries()].map(([e,t])=>({name:e,errors:t}))}),ce=g(()=>se.value.length>0),le=g(()=>S.value.length===0||ie.value||w.value||ce.value),ue=g(()=>S.value.length===0?`Select at least one target`:ie.value?`Loading changes…`:ce.value?`Fix invalid templates before publishing`:``),de=g(()=>A.value.size>0),fe=g(()=>{for(let e of S.value)if(A.value.get(e)?.firstPublish)return!0;return!1}),pe=g(()=>{for(let e of S.value){let t=j.value.get(e);if(t)return t}return null}),me=g(()=>ne.value.filter(e=>e.change!==`deleted`&&e.path!==h.value)),he=g(()=>me.value.length>0&&me.value.every(e=>P.value.has(e.path)));function ge(){let e=new Set(P.value);if(he.value)for(let t of me.value)e.delete(t.path);else for(let t of me.value)e.add(t.path);P.value=e}let _e=g(()=>new Set(ne.value.filter(e=>e.change===`deleted`).map(e=>e.path)));l(ne,e=>{let t=new Set(e.map(e=>e.path)),n=new Set;for(let e of P.value)_e.value.has(e)||(t.has(e)||e===h.value)&&n.add(e);_e.value.has(h.value)||n.add(h.value),P.value=n});function ve(e){if(_e.value.has(e))return;let t=new Set(P.value);t.has(e)?t.delete(e):t.add(e),P.value=t}async function ye(){if(!le.value){if(oe.value&&!T.value){T.value=!0;return}await be()}}async function be(){if(S.value.length!==0){T.value=!1,R(),w.value=!0,D.value=null,k.value=new Map;try{let e;if(fe.value){let t=S.value.find(e=>A.value.get(e)?.firstPublish),n=t?A.value.get(t):null;e=n?n.added:[h.value]}else !de.value||pe.value?e=[h.value]:(e=[...P.value],e.length===0&&(e=[h.value]));D.value=await U.publishStream(e,S.value,e=>{if(e.kind===`target-start`){let t=new Map(k.value);t.set(e.target,{current:0,total:e.total,label:`starting…`,status:`in-progress`}),k.value=t}else if(e.kind===`progress`){let t=new Map(k.value),n=t.get(e.target)??{current:0,total:e.total,label:``,status:`in-progress`};t.set(e.target,{...n,current:e.current,total:e.total,label:e.label}),k.value=t}else if(e.kind===`target-result`){let t=new Map(k.value),n=t.get(e.result.target);n&&t.set(e.result.target,{...n,status:e.result.success?`done`:`error`,label:e.result.success?`done`:e.result.error??`failed`}),k.value=t}}),_.refresh()}catch(e){D.value=[{target:`(all)`,success:!1,error:e.message,copiedFiles:0}]}finally{w.value=!1}}}function xe(e){return e.startsWith(`pages/`)?`pi pi-file`:`pi pi-share-alt`}function Se(e){return e.startsWith(`pages/`)?e.slice(6):e.startsWith(`fragments/`)?`@${e.slice(10)}`:e}function Ce(e){return e===`added`?`+`:e===`deleted`?`−`:`●`}function we(){R(),o(`close`)}return(e,t)=>(u(),B(f(O),{visible:a.visible,"onUpdate:visible":we,modal:``,header:`Publish`,style:{width:`32rem`}},{footer:p(()=>[D.value?(u(),B(f(I),{key:0,label:`Done`,"data-testid":`publish-done`,onClick:we})):(u(),z(C,{key:1},[i(f(I),{label:T.value?`Back`:`Cancel`,severity:`secondary`,text:``,onClick:t[1]||=e=>T.value?T.value=!1:we()},null,8,[`label`]),T.value?(u(),B(f(I),{key:1,label:`Yes, publish to ${ae.value.map(e=>e.name).join(`, `)}`,icon:`pi pi-exclamation-triangle`,severity:`danger`,loading:w.value,"data-testid":`publish-confirm`,onClick:be},null,8,[`label`,`loading`])):(u(),B(f(I),{key:0,label:`Publish`,icon:`pi pi-cloud-upload`,loading:w.value,"data-testid":`publish-submit`,title:ue.value,disabled:le.value,onClick:ye},null,8,[`loading`,`title`,`disabled`]))],64))]),default:p(()=>[L(`div`,En,[L(`p`,Dn,[L(`i`,{class:n(xe(h.value))},null,2),m(` `+F(Se(h.value)),1)]),b.value.length===0?(u(),z(`div`,On,` No targets configured in site.yaml `)):D.value?v(``,!0):(u(),z(C,{key:1},[L(`div`,kn,[t[2]||=L(`p`,{class:`publish-label`},`Select targets`,-1),(u(!0),z(C,null,d(b.value,e=>(u(),z(`div`,{key:e.name,class:`publish-target`},[i(f(y),{modelValue:S.value,"onUpdate:modelValue":t[0]||=e=>S.value=e,inputId:e.name,value:e.name,"data-testid":`publish-target-${e.name}`},null,8,[`modelValue`,`inputId`,`value`,`data-testid`]),L(`label`,{for:e.name,class:`publish-target-label`},[m(F(e.name)+` `,1),e.environment===`production`?(u(),z(`span`,jn,`prod`)):e.environment===`staging`?(u(),z(`span`,Mn,`staging`)):v(``,!0)],8,An),M.value.has(e.name)?(u(),B(f(ee),{key:0,style:{width:`14px`,height:`14px`},strokeWidth:`6`})):v(``,!0)]))),128))]),ce.value?(u(),z(`div`,Nn,[t[4]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`div`,Pn,[L(`p`,null,[L(`strong`,null,F(se.value.length)+` template`+F(se.value.length===1?``:`s`)+` can't be rendered.`,1),t[3]||=m(` Publish is blocked until fixed.`,-1)]),L(`ul`,Fn,[(u(!0),z(C,null,d(se.value,e=>(u(),z(`li`,{key:e.name},[L(`span`,In,F(e.name),1),L(`span`,Ln,F(e.errors[0]),1)]))),128))])])])):v(``,!0),T.value?(u(),z(`div`,Rn,[t[7]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`span`,null,[t[5]||=m(` This will publish to `,-1),L(`strong`,null,F(ae.value.map(e=>e.name).join(`, `)),1),t[6]||=m(` — live content will change. `,-1)])])):v(``,!0),pe.value?(u(),z(`div`,zn,[t[8]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`span`,null,`Couldn't load changes: `+F(pe.value),1)])):fe.value?(u(),z(`div`,Bn,[...t[9]||=[L(`i`,{class:`pi pi-info-circle`},null,-1),L(`span`,null,`First publish — everything will be published.`,-1)]])):S.value.length>0?(u(),z(`div`,Vn,[L(`p`,Hn,[t[10]||=m(` Changes `,-1),ie.value?(u(),z(`span`,Un,`loading…`)):ne.value.length?(u(),z(`span`,Wn,[V.value.modified?(u(),z(`span`,Gn,F(V.value.modified)+` modified`,1)):v(``,!0),V.value.added?(u(),z(`span`,Kn,F(V.value.modified?` · `:``)+F(V.value.added)+` added`,1)):v(``,!0),V.value.deleted?(u(),z(`span`,qn,F(V.value.modified||V.value.added?` · `:``)+F(V.value.deleted)+` only on target`,1)):v(``,!0)])):v(``,!0),!ie.value&&me.value.length>0?(u(),z(`button`,{key:2,type:`button`,class:`publish-select-all`,"data-testid":`publish-select-all`,onClick:ge},F(he.value?`Select none`:`Select all`),1)):v(``,!0)]),!ie.value&&ne.value.length===0?(u(),z(`div`,Jn,` No changes to publish. `)):(u(),z(C,{key:1},[re.value.pages.length?(u(),z(`div`,Yn,[t[11]||=L(`p`,{class:`publish-group-label`},`Pages`,-1),L(`div`,Xn,[(u(!0),z(C,null,d(re.value.pages,e=>(u(),B(s(e.change===`deleted`?`div`:`label`),{key:e.path,class:n([`publish-change-row`,{"publish-change-row-deleted":e.change===`deleted`}]),"data-testid":`publish-change-${e.path}`},{default:p(()=>[e.change===`deleted`?(u(),z(`span`,Zn)):(u(),B(f(y),{key:0,modelValue:P.value.has(e.path),binary:!0,"onUpdate:modelValue":t=>ve(e.path)},null,8,[`modelValue`,`onUpdate:modelValue`])),L(`span`,{class:n([`publish-change-mark`,e.change])},F(Ce(e.change)),3),L(`i`,{class:n([xe(e.path),`publish-change-icon`])},null,2),L(`span`,Qn,F(Se(e.path)),1)]),_:2},1032,[`class`,`data-testid`]))),128))])])):v(``,!0),re.value.fragments.length?(u(),z(`div`,$n,[t[12]||=L(`p`,{class:`publish-group-label`},`Fragments`,-1),L(`div`,er,[(u(!0),z(C,null,d(re.value.fragments,e=>(u(),B(s(e.change===`deleted`?`div`:`label`),{key:e.path,class:n([`publish-change-row`,{"publish-change-row-deleted":e.change===`deleted`}]),"data-testid":`publish-change-${e.path}`},{default:p(()=>[e.change===`deleted`?(u(),z(`span`,tr)):(u(),B(f(y),{key:0,modelValue:P.value.has(e.path),binary:!0,"onUpdate:modelValue":t=>ve(e.path)},null,8,[`modelValue`,`onUpdate:modelValue`])),L(`span`,{class:n([`publish-change-mark`,e.change])},F(Ce(e.change)),3),L(`i`,{class:n([xe(e.path),`publish-change-icon`])},null,2),L(`span`,nr,F(Se(e.path)),1)]),_:2},1032,[`class`,`data-testid`]))),128))])])):v(``,!0)],64))])):v(``,!0)],64)),w.value&&!D.value&&k.value.size>0?(u(),z(`div`,rr,[(u(!0),z(C,null,d(k.value,([e,t])=>(u(),z(`div`,{key:e,class:`publish-progress-row`},[L(`div`,ir,[L(`span`,ar,F(e),1),L(`span`,or,F(t.current)+` / `+F(t.total),1)]),L(`div`,sr,[L(`div`,{class:`publish-progress-fill`,style:x({width:(t.total?Math.round(100*t.current/t.total):0)+`%`})},null,4)]),L(`div`,{class:`publish-progress-label`,title:t.label},F(t.label),9,cr)]))),128))])):D.value?(u(),z(`div`,lr,[(u(!0),z(C,null,d(D.value,e=>(u(),z(`div`,{key:e.target,class:n([`publish-result`,{success:e.success,error:!e.success}])},[L(`i`,{class:n(e.success?`pi pi-check-circle`:`pi pi-exclamation-circle`)},null,2),L(`span`,ur,F(e.target),1),e.success?(u(),z(`span`,dr,F(e.copiedFiles)+` files`,1)):(u(),z(`span`,fr,F(e.error),1))],2))),128))])):v(``,!0)])]),_:1},8,[`visible`]))}}),mr=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},hr=mr(pr,[[`__scopeId`,`data-v-a2ebf90d`]]),gr={class:`fetch-content`},_r={key:0,class:`fetch-empty`},vr={key:1,class:`fetch-select`},yr={key:2,class:`fetch-result success`},br={class:`fetch-items`},xr={key:3,class:`fetch-result error`},Sr=mr(R({__name:`FetchDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=_n(),l=c([]),d=c(null),h=c(!1),g=c(null),y=c(null);r(async()=>{try{l.value=(await U.getTargets()).map(e=>e.name)}catch{l.value=[]}});async function b(){if(d.value){h.value=!0,g.value=null,y.value=null;try{g.value=await U.fetchFromTarget(d.value),await o.load(),s.refresh()}catch(e){y.value=e.message}finally{h.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`Fetch from Target`,style:{width:`28rem`}},{footer:p(()=>[g.value||y.value?(u(),B(f(I),{key:0,label:`Done`,onClick:t[1]||=e=>a(`close`)})):(u(),z(C,{key:1},[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Fetch`,icon:`pi pi-cloud-download`,loading:h.value,disabled:!d.value,onClick:b},null,8,[`loading`,`disabled`])],64))]),default:p(()=>[L(`div`,gr,[l.value.length===0?(u(),z(`div`,_r,` No targets configured in site.yaml `)):!g.value&&!y.value?(u(),z(`div`,vr,[t[4]||=L(`p`,{class:`fetch-label`},`Pull content from a target into the working copy:`,-1),i(f(_),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,options:l.value.map(e=>({name:e})),optionLabel:`name`,optionValue:`name`,class:`fetch-list`},null,8,[`modelValue`,`options`])])):g.value?(u(),z(`div`,yr,[t[6]||=L(`i`,{class:`pi pi-check-circle`},null,-1),L(`div`,null,[L(`p`,null,[L(`strong`,null,F(g.value.copiedFiles),1),t[5]||=m(` files fetched from `,-1),L(`strong`,null,F(d.value),1)]),L(`p`,br,F(g.value.items.join(`, `)),1)])])):y.value?(u(),z(`div`,xr,[t[7]||=L(`i`,{class:`pi pi-exclamation-circle`},null,-1),L(`p`,null,F(y.value),1)])):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-28aee561`]]),Cr={class:`changes-header`},wr={class:`changes-body`},Tr={key:0,class:`changes-empty`},Er={class:`changes-target-row`},Dr=[`title`],Or={key:0,class:`changes-loading`,"data-testid":`changes-loading`},kr={key:1,class:`changes-warning`,"data-testid":`changes-error`},Ar={class:`changes-warning-body`},jr={class:`changes-warning-detail`},Mr={key:2,class:`changes-state`,"data-testid":`changes-first-publish`},Nr={key:3,class:`changes-state changes-state-sync`,"data-testid":`changes-in-sync`},Pr={key:4,class:`changes-list-wrapper`},Fr={class:`changes-summary`,"data-testid":`changes-summary`},Ir={key:0},Lr={key:1},Rr={key:2},zr={key:0,class:`changes-group`,"data-testid":`changes-group-pages`},Br={class:`changes-rows`},Vr={class:`changes-label`},Hr={key:1,class:`changes-group`,"data-testid":`changes-group-fragments`},Ur={class:`changes-rows`},Wr={class:`changes-label`},Gr={key:2,class:`changes-unchanged`},Kr={key:0,class:`changes-unchanged-body`,"data-testid":`changes-unchanged-body`},qr={key:0,class:`changes-group`},Jr={class:`changes-rows`},Yr=[`data-testid`,`onClick`],Xr={class:`changes-label`},Zr={key:1,class:`changes-group`},Qr={class:`changes-rows`},$r=[`data-testid`,`onClick`],ei={class:`changes-label`},ti=`gazetta_changes_target`,ni=mr(R({__name:`ChangesDrawer`,props:{visible:{type:Boolean}},emits:[`update:visible`],setup(e,{emit:t}){let r=e,a=t,o=ne(),h=c([]),_=c(null),y=c(null),b=c(!1),x=c(null),S=c(null),w=c(!1),E=null;async function D(){try{h.value=(await U.getTargets()).map(e=>e.name);let e=localStorage.getItem(ti);e&&h.value.includes(e)?_.value=e:h.value.length&&(_.value=h.value[0])}catch{h.value=[]}}async function O(){if(!_.value)return;E?.abort();let e=new AbortController;E=e,b.value=!0,x.value=null;try{let t=await U.compare(_.value,{signal:e.signal});if(e.signal.aborted)return;y.value=t,S.value=Date.now()}catch(t){if(e.signal.aborted||t.name===`AbortError`)return;x.value=t.message,y.value=null}finally{e.signal.aborted||(b.value=!1)}}l(()=>r.visible,async e=>{if(!e){E?.abort();return}h.value.length===0&&await D(),_.value&&O()}),l(_,e=>{e&&(localStorage.setItem(ti,e),r.visible&&O())});function k(e,t){return(t??[]).map(t=>({path:t,change:e}))}let A=g(()=>{let e=y.value;return e?[...k(`modified`,e.modified),...k(`added`,e.added),...k(`deleted`,e.deleted)].sort((e,t)=>e.path.localeCompare(t.path)):[]}),j=g(()=>{let e=[],t=[];for(let n of A.value)n.path.startsWith(`fragments/`)?t.push(n):e.push(n);return{pages:e,fragments:t}}),M=g(()=>{let e=0,t=0,n=0;for(let r of A.value)r.change===`added`?e++:r.change===`modified`?t++:n++;return{added:e,modified:t,deleted:n}}),P=g(()=>{let e=y.value,t=[],n=[];for(let r of e?.unchanged??[]){let e={path:r,change:`modified`};r.startsWith(`fragments/`)?n.push(e):t.push(e)}return t.sort((e,t)=>e.path.localeCompare(t.path)),n.sort((e,t)=>e.path.localeCompare(t.path)),{pages:t,fragments:n}}),R=g(()=>y.value?.unchanged.length??0),te=g(()=>!b.value&&!x.value&&y.value!==null&&A.value.length===0&&!y.value.firstPublish),re=g(()=>!b.value&&!x.value&&y.value?.firstPublish===!0);function V(e){return e.startsWith(`pages/`)?`pi pi-file`:`pi pi-share-alt`}function ie(e){return e.startsWith(`pages/`)?e.slice(6):e.startsWith(`fragments/`)?`@${e.slice(10)}`:e}function ae(e){return e===`added`?`+`:e===`deleted`?`−`:`●`}function oe(e){if(e.change===`deleted`)return;let[t,...n]=e.path.split(`/`),r=n.join(`/`);o.push(`/${t}/${r}`)}let se=g(()=>{if(!S.value)return``;let e=Math.max(0,Date.now()-S.value),t=Math.floor(e/1e3);if(t<10)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}),ce=c(Date.now()),le=null;l(()=>r.visible,e=>{e&&!le?le=setInterval(()=>{ce.value=Date.now()},15e3):!e&&le&&(clearInterval(le),le=null)});function ue(e){a(`update:visible`,e)}return(e,t)=>(u(),B(f(T),{visible:r.visible,"onUpdate:visible":ue,position:`right`,style:{width:`min(960px, 90vw)`},"data-testid":`changes-drawer`},{header:p(()=>[L(`div`,Cr,[t[2]||=L(`span`,{class:`changes-title`},`Changes`,-1),i(f(I),{icon:`pi pi-refresh`,text:``,rounded:``,size:`small`,disabled:!_.value||b.value,"data-testid":`changes-refresh`,onClick:O},null,8,[`disabled`])])]),default:p(()=>[L(`div`,wr,[h.value.length===0?(u(),z(`div`,Tr,` No targets configured in site.yaml `)):(u(),z(C,{key:1},[L(`div`,Er,[i(f(N),{modelValue:_.value,"onUpdate:modelValue":t[0]||=e=>_.value=e,options:h.value,placeholder:`Select target`,"data-testid":`changes-target-select`,class:`changes-target`},null,8,[`modelValue`,`options`]),S.value&&!b.value?(u(),z(`span`,{key:0,class:`changes-lastchecked`,title:new Date(S.value).toLocaleString()},F(se.value),9,Dr)):v(``,!0)]),b.value?(u(),z(`div`,Or,[i(f(ee),{style:{width:`20px`,height:`20px`},strokeWidth:`6`}),t[3]||=L(`span`,null,`Comparing…`,-1)])):x.value?(u(),z(`div`,kr,[t[5]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`div`,Ar,[t[4]||=L(`p`,null,`Couldn't load changes`,-1),L(`p`,jr,F(x.value),1),i(f(I),{label:`Retry`,size:`small`,text:``,onClick:O})])])):re.value?(u(),z(`div`,Mr,[t[8]||=L(`i`,{class:`pi pi-info-circle`},null,-1),L(`span`,null,[t[6]||=m(`Nothing has been published to `,-1),L(`strong`,null,F(_.value),1),t[7]||=m(` yet.`,-1)])])):te.value?(u(),z(`div`,Nr,[t[11]||=L(`i`,{class:`pi pi-check-circle`},null,-1),L(`span`,null,[t[9]||=m(`In sync with `,-1),L(`strong`,null,F(_.value),1),t[10]||=m(`.`,-1)])])):y.value?(u(),z(`div`,Pr,[L(`p`,Fr,[M.value.modified?(u(),z(`span`,Ir,F(M.value.modified)+` modified`,1)):v(``,!0),M.value.added?(u(),z(`span`,Lr,F(M.value.modified?` · `:``)+F(M.value.added)+` added`,1)):v(``,!0),M.value.deleted?(u(),z(`span`,Rr,F(M.value.modified||M.value.added?` · `:``)+F(M.value.deleted)+` only on target`,1)):v(``,!0)]),j.value.pages.length?(u(),z(`div`,zr,[t[12]||=L(`p`,{class:`changes-group-label`},`Pages`,-1),L(`div`,Br,[(u(!0),z(C,null,d(j.value.pages,e=>(u(),B(s(e.change===`deleted`?`div`:`button`),{key:e.path,class:n([`changes-row`,{"changes-row-deleted":e.change===`deleted`}]),type:`button`,"data-testid":`changes-item-${e.path}`,onClick:t=>oe(e)},{default:p(()=>[L(`span`,{class:n([`changes-mark`,e.change])},F(ae(e.change)),3),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,Vr,F(ie(e.path)),1)]),_:2},1032,[`class`,`data-testid`,`onClick`]))),128))])])):v(``,!0),j.value.fragments.length?(u(),z(`div`,Hr,[t[13]||=L(`p`,{class:`changes-group-label`},`Fragments`,-1),L(`div`,Ur,[(u(!0),z(C,null,d(j.value.fragments,e=>(u(),B(s(e.change===`deleted`?`div`:`button`),{key:e.path,class:n([`changes-row`,{"changes-row-deleted":e.change===`deleted`}]),type:`button`,"data-testid":`changes-item-${e.path}`,onClick:t=>oe(e)},{default:p(()=>[L(`span`,{class:n([`changes-mark`,e.change])},F(ae(e.change)),3),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,Wr,F(ie(e.path)),1)]),_:2},1032,[`class`,`data-testid`,`onClick`]))),128))])])):v(``,!0),R.value>0?(u(),z(`div`,Gr,[L(`button`,{type:`button`,class:`changes-unchanged-toggle`,"data-testid":`changes-unchanged-toggle`,onClick:t[1]||=e=>w.value=!w.value},[L(`i`,{class:n(w.value?`pi pi-chevron-down`:`pi pi-chevron-right`)},null,2),L(`span`,null,F(R.value)+` unchanged`,1)]),w.value?(u(),z(`div`,Kr,[P.value.pages.length?(u(),z(`div`,qr,[t[15]||=L(`p`,{class:`changes-group-label`},`Pages`,-1),L(`div`,Jr,[(u(!0),z(C,null,d(P.value.pages,e=>(u(),z(`button`,{type:`button`,key:e.path,class:`changes-row changes-row-unchanged`,"data-testid":`changes-unchanged-${e.path}`,onClick:t=>oe(e)},[t[14]||=L(`span`,{class:`changes-mark unchanged`},`·`,-1),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,Xr,F(ie(e.path)),1)],8,Yr))),128))])])):v(``,!0),P.value.fragments.length?(u(),z(`div`,Zr,[t[17]||=L(`p`,{class:`changes-group-label`},`Fragments`,-1),L(`div`,Qr,[(u(!0),z(C,null,d(P.value.fragments,e=>(u(),z(`button`,{type:`button`,key:e.path,class:`changes-row changes-row-unchanged`,"data-testid":`changes-unchanged-${e.path}`,onClick:t=>oe(e)},[t[16]||=L(`span`,{class:`changes-mark unchanged`},`·`,-1),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,ei,F(ie(e.path)),1)],8,$r))),128))])])):v(``,!0)])):v(``,!0)])):v(``,!0)])):v(``,!0)],64))])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-8918ea89`]]),ri={key:2,class:`cms-site-name`},ii={key:0,class:`cms-toast cms-toast-error`},ai=mr(R({__name:`CmsToolbar`,setup(e){let t=ie(),n=ne(),r=g(()=>t.name===`dev`),a=fn(),o=gn(),s=Cn(),l=pn(),d=Tn(),h=c(!1),_=c(!1),y=c(!1),x=g(()=>o.type===`page`?`pages`:`fragments`),S=g(()=>o.name??``),w=g(()=>o.name&&!s.hasPendingEdits),T=g(()=>s.saving?`Saving…`:s.hasPendingEdits?`Save changes (⌘S)`:`No unsaved changes`),E=g(()=>o.name?s.hasPendingEdits?`Save changes before publishing`:`Publish to a target`:`Select a page or fragment to publish`);function D(){let e=o.type===`page`?`/pages`:`/fragments`;n.push(`${e}/${o.name}`)}return(e,t)=>(u(),z(C,null,[i(f(b),{class:`cms-toolbar`},{start:p(()=>[f(d).mode===`edit`&&!r.value?(u(),B(f(I),{key:0,icon:`pi pi-arrow-left`,text:``,rounded:``,"data-testid":`back-to-browse`,onClick:D,size:`small`,class:`cms-btn`})):v(``,!0),r.value?(u(),B(f(I),{key:1,icon:`pi pi-arrow-left`,text:``,rounded:``,"data-testid":`back-to-editor`,onClick:t[0]||=e=>f(n).back(),size:`small`,class:`cms-btn`})):v(``,!0),t[10]||=L(`span`,{class:`cms-logo`},[L(`i`,{class:`pi pi-objects-column`}),m(` Gazetta `)],-1),f(a).manifest?(u(),z(`span`,ri,F(f(a).manifest.name),1)):v(``,!0)]),center:p(()=>[i(M,{name:`fade`},{default:p(()=>[f(s).lastSaveError?(u(),z(`span`,ii,[t[11]||=L(`i`,{class:`pi pi-exclamation-circle`},null,-1),m(` `+F(f(s).lastSaveError),1)])):v(``,!0)]),_:1})]),end:p(()=>[r.value?v(``,!0):(u(),B(f(I),{key:0,icon:`pi pi-code`,text:``,rounded:``,title:`Dev Playground`,"data-testid":`dev-playground-link`,onClick:t[1]||=e=>f(n).push(`/dev`),size:`small`,class:`cms-btn`})),i(f(I),{icon:f(l).dark?`pi pi-sun`:`pi pi-moon`,text:``,rounded:``,"data-testid":`theme-toggle`,onClick:t[2]||=e=>f(l).toggle(),size:`small`,class:`cms-btn`},null,8,[`icon`]),f(d).mode===`edit`?(u(),B(f(I),{key:1,label:`Save`,icon:`pi pi-save`,severity:`primary`,loading:f(s).saving,"data-testid":`save-btn`,title:T.value,disabled:!f(s).hasPendingEdits,onClick:t[3]||=e=>f(s).save(),size:`small`,class:`cms-btn`},null,8,[`loading`,`title`,`disabled`])):v(``,!0),i(f(I),{icon:`pi pi-arrow-right-arrow-left`,text:``,rounded:``,title:`Changes`,"data-testid":`changes-btn`,onClick:t[4]||=e=>y.value=!0,size:`small`,class:`cms-btn`}),i(f(I),{label:`Fetch`,icon:`pi pi-cloud-download`,severity:`info`,"data-testid":`fetch-btn`,onClick:t[5]||=e=>_.value=!0,size:`small`,class:`cms-btn`}),i(f(I),{label:`Publish`,icon:`pi pi-cloud-upload`,severity:`success`,"data-testid":`publish-btn`,title:E.value,disabled:!w.value,onClick:t[6]||=e=>h.value=!0,size:`small`,class:`cms-btn`},null,8,[`title`,`disabled`])]),_:1}),h.value?(u(),B(hr,{key:0,visible:h.value,itemType:x.value,itemName:S.value,onClose:t[7]||=e=>h.value=!1},null,8,[`visible`,`itemType`,`itemName`])):v(``,!0),_.value?(u(),B(Sr,{key:1,visible:_.value,onClose:t[8]||=e=>_.value=!1},null,8,[`visible`])):v(``,!0),i(ni,{visible:y.value,"onUpdate:visible":t[9]||=e=>y.value=e},null,8,[`visible`])],64))}}),[[`__scopeId`,`data-v-d907b333`]]),oi=V(`unsavedGuard`,()=>{let e=c(!1),t=null;function n(){return t?new Promise(e=>e(`cancel`)):(e.value=!0,new Promise(e=>{t={resolve:e}}))}function r(n){e.value=!1,t?.resolve(n),t=null}return{visible:e,guard:n,respond:r}}),si={class:`unsaved-message`},ci={class:`unsaved-actions`},li=mr(R({__name:`UnsavedDialog`,setup(e){let t=oi(),n=gn();function r(e){e.key===`Escape`&&(e.stopPropagation(),t.respond(`cancel`))}return(e,a)=>(u(),B(f(O),{visible:f(t).visible,modal:``,header:`Unsaved Changes`,closable:!1,style:{width:`26rem`},pt:{mask:{style:`backdrop-filter: blur(2px)`}},onKeydown:r},{footer:p(()=>[L(`div`,ci,[i(f(I),{label:`Don't Save`,severity:`danger`,text:``,onClick:a[0]||=e=>f(t).respond(`discard`)}),i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:a[1]||=e=>f(t).respond(`cancel`)}),i(f(I),{label:`Save`,icon:`pi pi-check`,autofocus:``,onClick:a[2]||=e=>f(t).respond(`save`)})])]),default:p(()=>[L(`p`,si,[a[3]||=m(` You have unsaved changes on `,-1),L(`strong`,null,F(f(n).name),1),a[4]||=m(`. `,-1)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-70fd0516`]]),ui={class:`cms-app`},di={key:0,class:`cms-error`},fi={key:1,class:`cms-loading`},pi=[`href`],mi=R({__name:`App`,setup(e){let t=fn(),o=pn(),s=mn();return r(()=>{o.init()}),(e,r)=>{let o=a(`router-view`);return u(),z(`div`,ui,[i(ai),f(t).error?(u(),z(`div`,di,F(f(t).error),1)):f(t).loading?(u(),z(`div`,fi,`Loading site...`)):(u(),B(o,{key:2})),i(li),i(M,{name:`toast`},{default:p(()=>[f(s).current?(u(),z(`div`,{key:0,class:n([`global-toast`,f(s).current.type===`error`?`toast-error`:`toast-success`]),"data-testid":`global-toast`},[L(`i`,{class:n(f(s).current.type===`error`?`pi pi-exclamation-circle`:`pi pi-check-circle`)},null,2),f(s).current.link?(u(),z(`a`,{key:0,href:f(s).current.link,target:`_blank`,rel:`noopener`,class:`toast-link`},F(f(s).current.message),9,pi)):(u(),z(C,{key:1},[m(F(f(s).current.message),1)],64)),f(s).current.type===`error`?(u(),z(`button`,{key:2,type:`button`,class:`toast-dismiss`,"data-testid":`toast-dismiss`,"aria-label":`Dismiss`,onClick:r[0]||=e=>f(s).dismiss()},[...r[1]||=[L(`i`,{class:`pi pi-times`},null,-1)]])):v(``,!0)],2)):v(``,!0)]),_:1})])}}}),hi=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var gi=Object.prototype.toString,_i=e=>gi.call(e)===`[object Object]`,vi=()=>{};function yi(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}var bi=e=>e();function xi(e,t={}){let n,r,i=vi,a=e=>{clearTimeout(e),i(),i=vi},o;return s=>{let c=h(e),l=h(t.maxWait);return n&&a(n),c<=0||l!==void 0&&l<=0?(r&&=(a(r),void 0),Promise.resolve(s())):new Promise((e,u)=>{i=t.rejectOnCancel?u:e,o=s,l&&!r&&(r=setTimeout(()=>{n&&a(n),r=void 0,e(o())},l)),n=setTimeout(()=>{r&&a(r),r=void 0,e(s())},c)})}}function Si(e){return Array.isArray(e)?e:[e]}function Ci(e,t,n={}){let{eventFilter:r=bi,...i}=n;return l(e,yi(r,t),i)}function wi(e,t,n={}){let{debounce:r=0,maxWait:i=void 0,...a}=n;return Ci(e,t,{...a,eventFilter:xi(r,{maxWait:i})})}function Ti(e,t,n){return l(e,t,{...n,immediate:!0})}var Ei=hi?window:void 0;hi&&window.document,hi&&window.navigator,hi&&window.location;function Di(e){let t=h(e);return t?.$el??t}function Oi(...e){let t=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),n=g(()=>{let t=Si(h(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0});return Ti(()=>[n.value?.map(e=>Di(e))??[Ei].filter(e=>e!=null),Si(h(n.value?e[1]:e[0])),Si(f(n.value?e[2]:e[1])),h(n.value?e[3]:e[2])],([e,n,r,i],a,o)=>{if(!e?.length||!n?.length||!r?.length)return;let s=_i(i)?{...i}:i,c=e.flatMap(e=>n.flatMap(n=>r.map(r=>t(e,n,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}function ki(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Ai(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=Ei,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=ki(t);return Oi(i,a,e=>{e.repeat&&h(s)||c(e)&&n(e)},o)}var ji={class:`create-content`},Mi={class:`create-field`},Ni={key:0,class:`create-hint`},Pi={class:`create-field`},Fi={key:0,class:`create-error`},Ii=mr(R({__name:`CreatePageDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=c([]),l=c(null),d=c(``),m=c(!1),h=c(null),y=g(()=>{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`);return!e||e===`home`?`/`:`/${e}`});r(async()=>{s.value=await U.getTemplates()});async function b(){if(!(!l.value||!d.value.trim())){m.value=!0,h.value=null;try{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`).replace(/\/+/g,`/`);await U.createPage({name:e,template:l.value}),await o.load(),a(`close`)}catch(e){h.value=e.message}finally{m.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`New Page`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Create`,icon:`pi pi-plus`,loading:m.value,disabled:!l.value||!d.value.trim(),onClick:b},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,ji,[L(`div`,Mi,[t[4]||=L(`label`,null,`Page name`,-1),i(f(j),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,placeholder:`e.g. contact or blog/my-post`,class:`create-input`},null,8,[`modelValue`]),d.value.trim()?(u(),z(`span`,Ni,`Route: `+F(y.value),1)):v(``,!0)]),L(`div`,Pi,[t[5]||=L(`label`,null,`Page template`,-1),i(f(_),{modelValue:l.value,"onUpdate:modelValue":t[1]||=e=>l.value=e,options:s.value,optionLabel:`name`,optionValue:`name`,class:`create-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),h.value?(u(),z(`p`,Fi,F(h.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-b4d1c25e`]]),Li={class:`create-content`},Ri={class:`create-field`},zi={class:`create-field`},Bi={key:0,class:`create-error`},Vi=mr(R({__name:`CreateFragmentDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=c([]),l=c(null),d=c(``),m=c(!1),h=c(null);r(async()=>{s.value=await U.getTemplates()});async function g(){if(!(!l.value||!d.value.trim())){m.value=!0,h.value=null;try{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`);await U.createFragment({name:e,template:l.value}),await o.load(),a(`close`)}catch(e){h.value=e.message}finally{m.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`New Fragment`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Create`,icon:`pi pi-plus`,loading:m.value,disabled:!l.value||!d.value.trim(),onClick:g},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,Li,[L(`div`,Ri,[t[4]||=L(`label`,null,`Fragment name`,-1),i(f(j),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,placeholder:`e.g. sidebar, newsletter`,class:`create-input`},null,8,[`modelValue`])]),L(`div`,zi,[t[5]||=L(`label`,null,`Template`,-1),i(f(_),{modelValue:l.value,"onUpdate:modelValue":t[1]||=e=>l.value=e,options:s.value,optionLabel:`name`,optionValue:`name`,class:`create-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),h.value?(u(),z(`p`,Bi,F(h.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-0b98775c`]]),Hi={class:`site-tree`},Ui=[`data-testid`,`onClick`],Wi={class:`node-label`},Gi=[`title`,`data-testid`],Ki=[`data-testid`,`onClick`],qi={class:`node-label`},Ji=[`title`,`data-testid`],Yi=[`data-testid`,`onClick`],Xi={class:`node-label`},Zi=[`title`,`data-testid`],Qi={class:`new-btns`},$i=mr(R({__name:`SiteTree`,setup(e){let t=ne(),a=fn(),o=gn(),s=Cn(),p=mn(),m=_n(),h=c(null),_=c(!1),y=c(!1);r(()=>m.refresh()),l(()=>a.pages.length+a.fragments.length,()=>m.refresh());function b(e){return m.isFirstPublish?!0:e.type===`page`?m.isPageDirty(e.name):m.isFragmentDirty(e.name)}function x(){return m.target?m.isFirstPublish?`Not yet published to ${m.target}`:`Has unpublished changes (${m.target})`:``}l(()=>o.selection,e=>{e?h.value=`${e.type}:${e.name}`:h.value=null},{immediate:!0});let S=g(()=>new Set(a.manifest?.systemPages??[])),w=g(()=>[...a.pages].filter(e=>!S.value.has(e.name)).sort((e,t)=>e.route.localeCompare(t.route)).map(e=>({key:`page:${e.name}`,label:e.name,type:`page`,name:e.name,icon:`pi pi-file`}))),T=g(()=>[...a.pages].filter(e=>S.value.has(e.name)).sort((e,t)=>e.route.localeCompare(t.route)).map(e=>({key:`page:${e.name}`,label:e.name,type:`page`,name:e.name,icon:`pi pi-file`}))),E=g(()=>a.fragments.map(e=>({key:`fragment:${e.name}`,label:e.name,type:`fragment`,name:e.name,icon:`pi pi-share-alt`})).sort((e,t)=>e.label.localeCompare(t.label)));function D(e){let n=e.type===`page`?`/pages`:`/fragments`;t.push(`${n}/${e.name}`)}async function O(e,t){if(t.stopPropagation(),confirm(`Delete ${e.type} "${e.name}"? This cannot be undone.`))try{e.type===`page`?await U.deletePage(e.name):await U.deleteFragment(e.name),o.type===e.type&&o.name===e.name&&s.clear(),await a.load()}catch(t){p.showError(t,`Failed to delete "${e.name}"`)}}return(e,t)=>(u(),z(`div`,Hi,[t[5]||=L(`div`,{class:`section-label`},`Pages`,-1),(u(!0),z(C,null,d(w.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,Wi,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,Gi)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,Ui))),128)),T.value.length?(u(),z(C,{key:0},[t[4]||=L(`div`,{class:`section-divider`},null,-1),(u(!0),z(C,null,d(T.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,qi,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,Ji)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,Ki))),128))],64)):v(``,!0),t[6]||=L(`div`,{class:`section-label`,style:{"margin-top":`12px`}},`Fragments`,-1),(u(!0),z(C,null,d(E.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,Xi,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,Zi)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,Yi))),128)),L(`div`,Qi,[i(f(I),{icon:`pi pi-plus`,label:`New page`,text:``,size:`small`,"data-testid":`new-page`,onClick:t[0]||=e=>_.value=!0}),i(f(I),{icon:`pi pi-plus`,label:`New fragment`,text:``,size:`small`,"data-testid":`new-fragment`,onClick:t[1]||=e=>y.value=!0})]),_.value?(u(),B(Ii,{key:1,visible:_.value,onClose:t[2]||=e=>_.value=!1},null,8,[`visible`])):v(``,!0),y.value?(u(),B(Vi,{key:2,visible:y.value,onClose:t[3]||=e=>y.value=!1},null,8,[`visible`])):v(``,!0)]))}}),[[`__scopeId`,`data-v-6b0b06db`]]),ea={class:`add-content`},ta={class:`add-field`},na={class:`add-field`},ra={key:0,class:`add-error`},ia=mr(R({__name:`AddComponentDialog`,props:{visible:{type:Boolean}},emits:[`close`,`add`],setup(e,{emit:t}){let n=e,a=t,o=c([]),s=c(null),l=c(``),d=c(!1),m=c(null);r(async()=>{o.value=await U.getTemplates()});async function h(){if(!(!s.value||!l.value.trim())){d.value=!0,m.value=null;try{a(`add`,l.value.trim().toLowerCase().replace(/\s+/g,`-`),s.value),a(`close`)}catch(e){m.value=e.message}finally{d.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`Add Component`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`),"data-testid":`add-component-cancel`}),i(f(I),{label:`Add`,icon:`pi pi-plus`,loading:d.value,disabled:!s.value||!l.value.trim(),onClick:h,"data-testid":`add-component-submit`},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,ea,[L(`div`,ta,[t[4]||=L(`label`,null,`Name`,-1),i(f(j),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:`e.g. hero, sidebar, cta`,class:`add-input`,"data-testid":`add-component-name`},null,8,[`modelValue`])]),L(`div`,na,[t[5]||=L(`label`,null,`Template`,-1),i(f(_),{modelValue:s.value,"onUpdate:modelValue":t[1]||=e=>s.value=e,options:o.value,optionLabel:`name`,optionValue:`name`,class:`add-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),m.value?(u(),z(`p`,ra,F(m.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-de3d43d5`]]),aa={key:0,class:`component-tree`},oa=[`data-testid`,`onClick`,`onMouseenter`],sa=[`title`],ca={key:2,class:`node-dirty-dot`},la={class:`node-label`},ua={key:4,class:`node-actions`},da={key:1,class:`empty`},fa=mr(R({__name:`ComponentTree`,setup(e){function t(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=t*16777619>>>0;return t.toString(16).padStart(8,`0`)}let r=gn(),a=Cn(),o=mn(),s=wn(),p=oi(),m=c(null),h=c(null),_=c([]),y=c(!1),b=g(()=>r.detail),S=g(()=>b.value?.components?.length??0),T=c(new Map);async function E(e,n,r,i){if(typeof e==`string`){let a=e.slice(1),o=r?`${r}/${e}`:e,s=t(o);i.set(s,{isFragment:!0,fragName:a});try{let t=await U.getFragment(a),r=t.components?await Promise.all(t.components.map((e,t)=>E(e,t,o,i))):[];return{key:`frag:${a}:${n}`,label:e,data:{isFragment:!0,fragName:a,treePath:o,path:o,template:t.template,index:n,isTopLevel:!0},children:r}}catch(t){return{key:`frag:${a}:${n}`,label:e,data:{isFragment:!0,fragName:a,treePath:o,index:n,isTopLevel:!0,error:t.message},children:[]}}}let a=r?`${r}/${e.name}`:e.name,o=t(a),s=e.components?await Promise.all(e.components.map((e,t)=>E(e,t,a,i))):[];return i.set(o,{path:a,template:e.template}),{key:`comp:${a}:${n}`,label:e.name,data:{path:a,template:e.template,treePath:a,isFragment:!1,index:n,isTopLevel:!0},children:s.map(e=>({...e,data:{...e.data,isTopLevel:!1}}))}}l(b,async e=>{if(!e){_.value=[],T.value=new Map;return}let n=new Map,i=r.type===`fragment`?`@${r.name}`:``,a=e.components?await Promise.all(e.components.map((e,t)=>E(e,t,i,n))):[],o={key:`root:${r.name}`,label:r.name??``,data:{isPage:!0,path:e.dir,template:e.template,treePath:i},children:a};i&&r.type===`fragment`&&r.name&&n.set(t(i),{isFragment:!0,fragName:r.name}),_.value=[o],T.value=n,D()},{immediate:!0});function D(){s.pendingGzId&&T.value.size>0&&(R(s.pendingGzId),s.clearPending())}l(()=>s.pendingGzId,()=>D()),l(()=>s.previewHoverGzId,e=>{if(!e){h.value=null;return}h.value=P(_.value,n=>n.treePath?t(n.treePath)===e:!1)?.key??null});let O=g(()=>{let e=[];function t(n,r){for(let i of n)e.push({node:i,depth:r}),i.children.length&&t(i.children,r+1)}return _.value[0]&&(e.push({node:_.value[0],depth:-1}),t(_.value[0].children,0)),e});function k(e,t){return t===-1?r.type===`page`?`pi pi-file`:`pi pi-share-alt`:e.data.isFragment?`pi pi-share-alt`:`pi pi-box`}function A(e){if(!(e<=0))return{paddingLeft:e*10+`px`}}function j(e){a.path===e?a.discard():a.revertStashed(e)}function M(e){e.data.treePath&&s.highlight(t(e.data.treePath))}function N(){s.highlight(null)}async function ee(e){if(!e.data)return;m.value=e.key,s.clearPending();let n=e.data.treePath;if(s.select(n?t(n):null),e.data.isFragment&&e.data.fragName){a.openFragment(e.data.fragName);return}if(e.data.isPage){a.openPageRoot();return}e.data.path&&a.openComponent(e.data.path,e.data.template??``)}function P(e,t){for(let n of e){if(n.data&&t(n.data))return n;if(n.children.length){let e=P(n.children,t);if(e)return e}}return null}function R(e){let t=T.value.get(e);if(!t)return;if(s.select(e),`isFragment`in t){let e=P(_.value,e=>e.fragName===t.fragName);e&&(m.value=e.key),a.openFragment(t.fragName);return}let n=P(_.value,e=>e.path===t.path);n&&(m.value=n.key),a.openComponent(t.path,t.template)}async function te(e,t){let n=b.value;if(!n?.components)return;let i=e+t;if(i<0||i>=n.components.length)return;let a=[...n.components],[o]=a.splice(e,1);a.splice(i,0,o),await r.updateComponents(a)}async function ne(e){let t=b.value;if(!t?.components)return;if(a.dirty){let e=await p.guard();if(e===`cancel`)return;e===`save`&&await a.save()}let n=[...t.components],i=n.splice(e,1)[0],s=typeof i==`string`?i:i.name;a.clear(),await r.updateComponents(n),o.show(`Removed "${s}"`)}async function re(e,t){let n=b.value;if(n)try{let i={name:e,template:t,content:{}},a=[...n.components??[],i];await r.updateComponents(a),o.show(`Added "${e}"`)}catch(t){o.showError(t,`Failed to add component "${e}"`)}}return(e,t)=>b.value?(u(),z(`div`,aa,[O.value.length?(u(!0),z(C,{key:0},d(O.value,({node:e,depth:r})=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{"node-root":r===-1,selected:m.value===e.key,hovered:h.value===e.key}]),style:x(A(r)),"data-testid":`component-${e.data?.isFragment?e.data.fragName:e.label}`,onClick:t=>ee(e),onMouseenter:t=>M(e),onMouseleave:t[0]||=e=>N()},[e.data?.error?(u(),z(`i`,{key:0,class:`pi pi-exclamation-triangle node-icon node-error-icon`,title:e.data.error},null,8,sa)):(u(),z(`i`,{key:1,class:n([k(e,r),`node-icon`])},null,2)),e.data?.path&&(f(a).hasPendingEdit(e.data.path)||f(a).dirty&&f(a).path===e.data.path)?(u(),z(`span`,ca)):v(``,!0),L(`span`,la,F(e.label),1),e.data?.path&&(f(a).hasPendingEdit(e.data.path)||f(a).dirty&&f(a).path===e.data.path)?(u(),B(f(I),{key:3,icon:`pi pi-undo`,text:``,rounded:``,size:`small`,class:`node-revert`,title:`Discard changes`,onClick:w(t=>j(e.data.path),[`stop`])},null,8,[`onClick`])):v(``,!0),e.data?.isTopLevel&&r!==-1?(u(),z(`span`,ua,[i(f(I),{icon:`pi pi-arrow-up`,text:``,rounded:``,size:`small`,"data-testid":`move-up-${e.label}`,disabled:e.data.index===0,onClick:w(t=>te(e.data.index,-1),[`stop`])},null,8,[`data-testid`,`disabled`,`onClick`]),i(f(I),{icon:`pi pi-arrow-down`,text:``,rounded:``,size:`small`,"data-testid":`move-down-${e.label}`,disabled:e.data.index===S.value-1,onClick:w(t=>te(e.data.index,1),[`stop`])},null,8,[`data-testid`,`disabled`,`onClick`]),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,"data-testid":`remove-${e.label}`,onClick:w(t=>ne(e.data.index),[`stop`])},null,8,[`data-testid`,`onClick`])])):v(``,!0)],46,oa))),128)):(u(),z(`p`,da,`No components`)),i(f(I),{icon:`pi pi-plus`,label:`Add component`,text:``,size:`small`,class:`add-btn`,"data-testid":`add-component`,onClick:t[1]||=e=>y.value=!0}),y.value?(u(),B(ia,{key:2,visible:y.value,onClose:t[2]||=e=>y.value=!1,onAdd:re},null,8,[`visible`])):v(``,!0)])):v(``,!0)}}),[[`__scopeId`,`data-v-b1b905e2`]]);function pa(e,t,n,r,i,a,o,s){let c=null;function u(){if(!e.value||!t.value||!n.value||!r.value)return;c&&d();let o=t.value,l=e.value;o.mount(l,{content:n.value,schema:r.value,theme:i.value,onChange:a,fieldsBaseUrl:s?.value}),c={mount:o,el:l}}function d(){if(c){try{c.mount.unmount(c.el)}catch{}c=null}}l(o?[e,t,o]:[e,t],()=>{e.value&&t.value&&n.value?u():d()},{immediate:!0}),D(d)}var W=oe(),G=e(ce(),1),ma=e(se()),ha=le();function K(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var ga=typeof Symbol==`function`&&Symbol.observable||`@@observable`,_a=()=>Math.random().toString(36).substring(7).split(``).join(`.`),va={INIT:`@@redux/INIT${_a()}`,REPLACE:`@@redux/REPLACE${_a()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${_a()}`};function ya(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function ba(e,t,n){if(typeof e!=`function`)throw Error(K(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(K(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(K(1));return n(ba)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(K(3));return i}function d(e){if(typeof e!=`function`)throw Error(K(4));if(c)throw Error(K(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(K(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!ya(e))throw Error(K(7));if(e.type===void 0)throw Error(K(8));if(typeof e.type!=`string`)throw Error(K(17));if(c)throw Error(K(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(K(10));r=e,f({type:va.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(K(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[ga](){return this}}}return f({type:va.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[ga]:m}}function xa(e,t){return function(...n){return t(e.apply(this,n))}}function Sa(e,t){if(typeof e==`function`)return xa(e,t);if(typeof e!=`object`||!e)throw Error(K(16));let n={};for(let r in e){let i=e[r];typeof i==`function`&&(n[r]=xa(i,t))}return n}function Ca(...e){return e.length===0?e=>e:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function wa(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(K(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=Ca(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}var Ta=t((e=>{var t=ce();t.useSyncExternalStore,t.useRef,t.useEffect,t.useMemo,t.useDebugValue}));t(((e,t)=>{t.exports=Ta()}))();var Ea=Symbol.for(`react.transitional.element`),Da=Symbol.for(`react.portal`),Oa=Symbol.for(`react.fragment`),ka=Symbol.for(`react.strict_mode`),Aa=Symbol.for(`react.profiler`),ja=Symbol.for(`react.consumer`),Ma=Symbol.for(`react.context`),Na=Symbol.for(`react.forward_ref`),Pa=Symbol.for(`react.suspense`),Fa=Symbol.for(`react.suspense_list`),Ia=Symbol.for(`react.memo`),La=Symbol.for(`react.lazy`),Ra=Na,za=Ia;function Ba(e){if(typeof e==`object`&&e){let{$$typeof:t}=e;switch(t){case Ea:switch(e=e.type,e){case Oa:case Aa:case ka:case Pa:case Fa:return e;default:switch(e&&=e.$$typeof,e){case Ma:case Na:case La:case Ia:return e;case ja:return e;default:return t}}case Da:return t}}}function Va(e){return Ba(e)===Ia}function Ha(e,t,n,r,{areStatesEqual:i,areOwnPropsEqual:a,areStatePropsEqual:o}){let s=!1,c,l,u,d,f;function p(i,a){return c=i,l=a,u=e(c,l),d=t(r,l),f=n(u,d,l),s=!0,f}function m(){return u=e(c,l),t.dependsOnOwnProps&&(d=t(r,l)),f=n(u,d,l),f}function h(){return e.dependsOnOwnProps&&(u=e(c,l)),t.dependsOnOwnProps&&(d=t(r,l)),f=n(u,d,l),f}function g(){let t=e(c,l),r=!o(t,u);return u=t,r&&(f=n(u,d,l)),f}function _(e,t){let n=!a(t,l),r=!i(e,c,t,l);return c=e,l=t,n&&r?m():n?h():r?g():f}return function(e,t){return s?_(e,t):p(e,t)}}function Ua(e,{initMapStateToProps:t,initMapDispatchToProps:n,initMergeProps:r,...i}){return Ha(t(e,i),n(e,i),r(e,i),e,i)}function Wa(e,t){let n={};for(let r in e){let i=e[r];typeof i==`function`&&(n[r]=(...e)=>t(i(...e)))}return n}function Ga(e){return function(t){let n=e(t);function r(){return n}return r.dependsOnOwnProps=!1,r}}function Ka(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:e.length!==1}function qa(e,t){return function(t,{displayName:n}){let r=function(e,t){return r.dependsOnOwnProps?r.mapToProps(e,t):r.mapToProps(e,void 0)};return r.dependsOnOwnProps=!0,r.mapToProps=function(t,n){r.mapToProps=e,r.dependsOnOwnProps=Ka(e);let i=r(t,n);return typeof i==`function`&&(r.mapToProps=i,r.dependsOnOwnProps=Ka(i),i=r(t,n)),i},r}}function Ja(e,t){return(n,r)=>{throw Error(`Invalid value of type ${typeof e} for ${t} argument when connecting component ${r.wrappedComponentName}.`)}}function Ya(e){return e&&typeof e==`object`?Ga(t=>Wa(e,t)):e?typeof e==`function`?qa(e,`mapDispatchToProps`):Ja(e,`mapDispatchToProps`):Ga(e=>({dispatch:e}))}function Xa(e){return e?typeof e==`function`?qa(e,`mapStateToProps`):Ja(e,`mapStateToProps`):Ga(()=>({}))}function Za(e,t,n){return{...n,...e,...t}}function Qa(e){return function(t,{displayName:n,areMergedPropsEqual:r}){let i=!1,a;return function(t,n,o){let s=e(t,n,o);return i?r(s,a)||(a=s):(i=!0,a=s),a}}}function $a(e){return e?typeof e==`function`?Qa(e):Ja(e,`mergeProps`):()=>Za}function eo(e){e()}function to(){let e=null,t=null;return{clear(){e=null,t=null},notify(){eo(()=>{let t=e;for(;t;)t.callback(),t=t.next})},get(){let t=[],n=e;for(;n;)t.push(n),n=n.next;return t},subscribe(n){let r=!0,i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var no={notify(){},get:()=>[]};function ro(e,t){let n,r=no,i=0,a=!1;function o(e){u();let t=r.subscribe(e),n=!1;return()=>{n||(n=!0,t(),d())}}function s(){r.notify()}function c(){m.onStateChange&&m.onStateChange()}function l(){return a}function u(){i++,n||(n=t?t.addNestedSub(c):e.subscribe(c),r=to())}function d(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=no)}function f(){a||(a=!0,u())}function p(){a&&(a=!1,d())}let m={addNestedSub:o,notifyNestedSubs:s,handleChangeWrapper:c,isSubscribed:l,trySubscribe:f,tryUnsubscribe:p,getListeners:()=>r};return m}var io=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,ao=typeof navigator<`u`&&navigator.product===`ReactNative`,oo=io||ao?G.useLayoutEffect:G.useEffect;function so(e,t){return e===t?e!==0||t!==0||1/e==1/t:e!==e&&t!==t}function co(e,t){if(so(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r=0;r<n.length;r++)if(!Object.prototype.hasOwnProperty.call(t,n[r])||!so(e[n[r]],t[n[r]]))return!1;return!0}var lo={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},uo={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},fo={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},po={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},mo={[Ra]:fo,[za]:po};function ho(e){return Va(e)?po:mo[e.$$typeof]||lo}var go=Object.defineProperty,_o=Object.getOwnPropertyNames,vo=Object.getOwnPropertySymbols,yo=Object.getOwnPropertyDescriptor,bo=Object.getPrototypeOf,xo=Object.prototype;function So(e,t){if(typeof t!=`string`){if(xo){let n=bo(t);n&&n!==xo&&So(e,n)}let n=_o(t);vo&&(n=n.concat(vo(t)));let r=ho(e),i=ho(t);for(let a=0;a<n.length;++a){let o=n[a];if(!uo[o]&&!(i&&i[o])&&!(r&&r[o])){let n=yo(t,o);try{go(e,o,n)}catch{}}}}return e}var Co=Symbol.for(`react-redux-context`),wo=typeof globalThis<`u`?globalThis:{};function To(){if(!G.createContext)return{};let e=wo[Co]??=new Map,t=e.get(G.createContext);return t||(t=G.createContext(null),e.set(G.createContext,t)),t}var Eo=To(),Do=[null,null];function Oo(e,t,n){oo(()=>e(...t),n)}function ko(e,t,n,r,i,a){e.current=r,n.current=!1,i.current&&(i.current=null,a())}function Ao(e,t,n,r,i,a,o,s,c,l,u){if(!e)return()=>{};let d=!1,f=null,p=()=>{if(d||!s.current)return;let e=t.getState(),n,p;try{n=r(e,i.current)}catch(e){p=e,f=e}p||(f=null),n===a.current?o.current||l():(a.current=n,c.current=n,o.current=!0,u())};return n.onStateChange=p,n.trySubscribe(),p(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,f)throw f}}function jo(e,t){return e===t}function Mo(e,t,n,{pure:r,areStatesEqual:i=jo,areOwnPropsEqual:a=co,areStatePropsEqual:o=co,areMergedPropsEqual:s=co,forwardRef:c=!1,context:l=Eo}={}){let u=l,d=Xa(e),f=Ya(t),p=$a(n),m=!!e;return e=>{let t=e.displayName||e.name||`Component`,n=`Connect(${t})`,r={shouldHandleStateChanges:m,displayName:n,wrappedComponentName:t,WrappedComponent:e,initMapStateToProps:d,initMapDispatchToProps:f,initMergeProps:p,areStatesEqual:i,areStatePropsEqual:o,areOwnPropsEqual:a,areMergedPropsEqual:s};function l(t){let[n,i,a]=G.useMemo(()=>{let{reactReduxForwardedRef:e,...n}=t;return[t.context,e,n]},[t]),o=G.useMemo(()=>{let e=u;return n?.Consumer,e},[n,u]),s=G.useContext(o),c=!!t.store&&!!t.store.getState&&!!t.store.dispatch,l=!!s&&!!s.store,d=c?t.store:s.store,f=l?s.getServerState:d.getState,p=G.useMemo(()=>Ua(d.dispatch,r),[d]),[h,g]=G.useMemo(()=>{if(!m)return Do;let e=ro(d,c?void 0:s.subscription);return[e,e.notifyNestedSubs.bind(e)]},[d,c,s]),_=G.useMemo(()=>c?s:{...s,subscription:h},[c,s,h]),v=G.useRef(void 0),y=G.useRef(a),b=G.useRef(void 0),x=G.useRef(!1),S=G.useRef(!1),C=G.useRef(void 0);oo(()=>(S.current=!0,()=>{S.current=!1}),[]);let w=G.useMemo(()=>()=>b.current&&a===y.current?b.current:p(d.getState(),a),[d,a]),T=G.useMemo(()=>e=>h?Ao(m,d,h,p,y,v,x,S,b,g,e):()=>{},[h]);Oo(ko,[y,v,x,a,b,g]);let E;try{E=G.useSyncExternalStore(T,w,f?()=>p(f(),a):w)}catch(e){throw C.current&&(e.message+=`
41
+ `));n(i),i.kind===`done`?l=i.results:i.kind===`fatal`&&(u={error:i.error,invalidTemplates:i.invalidTemplates})}}if(u){let e=Error(u.error);throw u.invalidTemplates&&(e.invalidTemplates=u.invalidTemplates),e}return l}var U={getSite:()=>H(`/site`),getPages:()=>H(`/pages`),getPage:(e,t)=>H(`/pages/${e}`,t),createPage:e=>H(`/pages`,{method:`POST`,body:JSON.stringify(e)}),deletePage:e=>H(`/pages/${e}`,{method:`DELETE`}),updatePage:(e,t)=>H(`/pages/${e}`,{method:`PUT`,body:JSON.stringify(t)}),getFragments:()=>H(`/fragments`),getFragment:(e,t)=>H(`/fragments/${e}`,t),createFragment:e=>H(`/fragments`,{method:`POST`,body:JSON.stringify(e)}),deleteFragment:e=>H(`/fragments/${e}`,{method:`DELETE`}),updateFragment:(e,t)=>H(`/fragments/${e}`,{method:`PUT`,body:JSON.stringify(t)}),getTemplates:()=>H(`/templates`),getTemplateSchema:e=>H(`/templates/${e}/schema`),getFields:()=>H(`/fields`),getTargets:()=>H(`/targets`),publish:(e,t)=>H(`/publish`,{method:`POST`,body:JSON.stringify({items:e,targets:t})}),publishStream:dn,compare:(e,t)=>H(`/compare?target=${encodeURIComponent(e)}`,t),getDependents:(e,t)=>H(`/dependents?item=${encodeURIComponent(e)}`,t),fetchFromTarget:(e,t)=>H(`/fetch`,{method:`POST`,body:JSON.stringify({source:e,items:t})})},fn=V(`site`,()=>{let e=c(null),t=c([]),n=c([]),r=c(!1),i=c(null),a=null;async function o(){if(!(e.value&&!i.value))return a||s()}async function s(e=5){return a||(a=l(e),a)}async function l(o=5){r.value=!0,i.value=null;for(let a=0;a<=o;a++)try{let[i,a,o]=await Promise.all([U.getSite(),U.getPages(),U.getFragments()]);e.value=i,t.value=a,n.value=o,r.value=!1;return}catch(e){let t=e.message;if(a<o&&(t.includes(`502`)||t.includes(`Failed to fetch`)||t.includes(`not ready`))){await new Promise(e=>setTimeout(e,1e3));continue}i.value=t}r.value=!1,a=null}return{manifest:e,pages:t,fragments:n,loading:r,error:i,load:s,ensureLoaded:o}}),pn=V(`theme`,()=>{let e=c(!0);function t(){let t=localStorage.getItem(`gazetta_theme`);e.value=t?t===`dark`:!0,r()}function n(){e.value=!e.value,localStorage.setItem(`gazetta_theme`,e.value?`dark`:`light`),r()}function r(){document.documentElement.classList.toggle(`dark`,e.value),document.documentElement.classList.toggle(`light`,!e.value)}return{dark:e,init:t,toggle:n}}),mn=V(`toast`,()=>{let e=c(null),t=null;function n(){t&&=(clearTimeout(t),null),e.value=null}function r(n,r){let i=r?.type??`success`;t&&=(clearTimeout(t),null),e.value={message:n,type:i,link:r?.link};let a=r?.duration??(i===`error`?0:3e3);a>0&&(t=setTimeout(()=>{e.value=null,t=null},a))}function i(e,t){r((e instanceof Error?e.message:t).replace(/^Request failed: (\d+)$/,`Server error ($1)`).replace(/^Failed to fetch$/,`Cannot connect to server`),{type:`error`})}return{current:e,show:r,showError:i,dismiss:n}}),hn=V(`preview`,()=>{let e=c(0),t=c(0);function n(){e.value++}function r(){t.value++}return{version:e,draftVersion:t,invalidate:n,invalidateDraft:r}}),gn=V(`selection`,()=>{let e=mn(),t=c(null),n=c(null),r=null,i=g(()=>t.value?.type??null),a=g(()=>t.value?.name??null),o=g(()=>t.value?.detail??null),s=g(()=>fn().pages.filter(e=>!e.route.includes(`:`))),l=g(()=>t.value?.type===`page`?t.value.detail.route:t.value?.type===`fragment`?n.value?n.value.route:`/@${t.value.name}`:null);function u(){let e=s.value;n.value=e.find(e=>e.route===`/`)??e[0]??null}function d(e){let t=s.value.find(t=>t.name===e);t&&(n.value=t,hn().invalidate())}async function f(i){r?.abort(),r=new AbortController;let{signal:a}=r;try{t.value={type:`page`,name:i,detail:await U.getPage(i,{signal:a})},n.value=null,hn().invalidate()}catch(t){if(t.name===`AbortError`)return;e.showError(t,`Failed to load page "${i}"`)}}async function p(i){r?.abort(),r=new AbortController;let{signal:a}=r;try{t.value={type:`fragment`,name:i,detail:await U.getFragment(i,{signal:a})},n.value||u(),hn().invalidate()}catch(t){if(t.name===`AbortError`)return;e.showError(t,`Failed to load fragment "${i}"`)}}async function m(){if(t.value)try{if(t.value.type===`page`){let e=await U.getPage(t.value.name);t.value={type:`page`,name:t.value.name,detail:e}}else{let e=await U.getFragment(t.value.name);t.value={type:`fragment`,name:t.value.name,detail:e}}}catch(t){e.showError(t,`Failed to reload`)}}async function h(n){if(t.value)try{t.value.type===`page`?await U.updatePage(t.value.name,{components:n}):await U.updateFragment(t.value.name,{components:n}),await m(),hn().invalidate()}catch(t){e.showError(t,`Failed to update components`)}}return{selection:t,type:i,name:a,detail:o,previewRoute:l,fragmentHostPage:n,staticPages:s,selectPage:f,selectFragment:p,setFragmentHostPage:d,reload:m,updateComponents:h}}),_n=V(`publishStatus`,()=>{let e=c(null),t=c(null),n=c(!1),r=c(null),i=null,a=[`production`,`staging`,`local`];async function o(e,t){let n=[...a.flatMap(t=>e.filter(e=>e.environment===t)),...e.filter(e=>!a.includes(e.environment))],r=null;for(let e of n)try{let n=await U.compare(e.name,{signal:t});if(t.aborted)return null;if(!n.firstPublish)return{name:e.name,result:n};r||={name:e.name,result:n}}catch(e){if(t.aborted||e.name===`AbortError`)return null}return r}let s=g(()=>{let t=new Set;if(!e.value)return t;for(let n of e.value.added)t.add(n);for(let n of e.value.modified)t.add(n);return t});function l(e){return s.value.has(`pages/${e}`)}function u(e){return s.value.has(`fragments/${e}`)}let d=g(()=>e.value?.firstPublish===!0);async function f(){i?.abort();let a=new AbortController;i=a,n.value=!0,r.value=null;try{let n=await U.getTargets();if(a.signal.aborted)return;if(n.length===0){t.value=null,e.value=null;return}let r=await o(n,a.signal);if(a.signal.aborted)return;r?(t.value=r.name,e.value=r.result):(t.value=null,e.value=null)}catch(t){if(a.signal.aborted||t.name===`AbortError`)return;r.value=t.message,e.value=null}finally{a.signal.aborted||(n.value=!1)}}function p(){i?.abort(),e.value=null,t.value=null,r.value=null,n.value=!1}return{result:e,target:t,loading:n,error:r,isPageDirty:l,isFragmentDirty:u,isFirstPublish:d,dirtyPaths:s,refresh:f,clear:p}}),vn=`modulepreload`,yn=function(e){return`/admin/`+e},bn={},xn=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=yn(t,n),t in bn)return;bn[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:vn,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};function Sn(e){return JSON.parse(JSON.stringify(e))}var Cn=V(`editing`,()=>{let e=mn(),t=c(null),n=c(null),r=c(null),i=c(!1),a=c(null),s=c(null),l=c(0),u=c(null),d=null,f=o(new Map),p=g(()=>t.value?.template??null),m=g(()=>t.value?.path??null),h=g(()=>t.value?.schema??null),_=g(()=>!n.value||!r.value?!1:JSON.stringify(n.value)!==JSON.stringify(r.value)),v=g(()=>f.size+ +!!_.value),y=g(()=>v.value>0),b=g(()=>{let e={};for(let[t,n]of f)e[t]=n.editedContent;return m.value&&n.value&&_.value&&(e[m.value]=n.value),e});function x(e){return f.has(e)}function S(){d&&=(clearInterval(d),null)}function C(){_.value&&t.value&&n.value&&f.set(t.value.path,{target:t.value,editedContent:Sn(n.value)})}async function w(e){let{hasEditor:t,editorUrl:n,fieldsBaseUrl:r,...i}=await U.getTemplateSchema(e);return{schema:i,hasEditor:!!t,editorUrl:n,fieldsBaseUrl:r}}async function T(e,o){if(S(),s.value=null,t.value=e,n.value=Sn(o||e.content),r.value=Sn(e.content),i.value=!1,a.value=null,u.value=null,e.hasEditor&&e.editorUrl)try{let t=await xn(()=>import(e.editorUrl),[]);u.value=t.default??t}catch(t){console.warn(`Custom editor for "${e.template}" failed to load:`,t)}l.value++,hn().invalidateDraft()}function E(e){return async t=>{let n=gn(),r=n.detail;if(!r||!n.selection)return;let i=Sn(r.components??[]),a=e.split(`/`),o=i;for(let e=0;e<a.length;e++){let n=o.findIndex(t=>typeof t==`object`&&t.name===a[e]);if(n===-1)return;let r=o[n];e===a.length-1?r.content=t:o=r.components??[]}n.selection.type===`page`?await U.updatePage(n.selection.name,{components:i}):await U.updateFragment(n.selection.name,{components:i})}}function D(e){let t=gn().detail;if(!t?.components)return null;let n=e.split(`/`),r=t.components;for(let e=0;e<n.length;e++){let t=r.find(t=>typeof t==`object`&&t.name===n[e]);if(!t||typeof t==`string`)return null;if(e===n.length-1)return{template:t.template,content:t.content??{}};r=t.components??[]}return null}async function O(e,n){S(),C();let r=f.get(e);if(r){f.delete(e),await T(r.target,r.editedContent);return}try{let t=D(e);if(!t)throw Error(`Component "${e}" not found in page manifest`);let{schema:r,hasEditor:i,editorUrl:a,fieldsBaseUrl:o}=await w(n);await T({template:n,path:e,content:t.content,schema:r,hasEditor:i,editorUrl:a,fieldsBaseUrl:o,save:E(e)})}catch(r){t.value=null,s.value=`Failed to load "${n}": ${r.message}`,d=setInterval(()=>O(e,n),3e3)}}async function k(){S(),C();let e=gn(),n=e.detail,r=e.selection;if(!n||!r)return;let i=`_root`,a=f.get(i);if(a){f.delete(i),await T(a.target,a.editedContent);return}try{let e=n.content??{},{schema:t,hasEditor:a,editorUrl:o,fieldsBaseUrl:s}=await w(n.template),c=r.type===`page`?e=>U.updatePage(r.name,{content:e}).then(()=>{}):e=>U.updateFragment(r.name,{content:e}).then(()=>{});await T({template:n.template,path:i,content:e,schema:t,hasEditor:a,editorUrl:o,fieldsBaseUrl:s,save:c})}catch(e){t.value=null,s.value=`Failed to load "${n.template}": ${e.message}`,d=setInterval(()=>k(),3e3)}}async function A(e){S(),C();let n=`@${e}`,r=f.get(n);if(r){f.delete(n),await T(r.target,r.editedContent);return}try{let t=await U.getFragment(e),r=t.content??{},{schema:i,hasEditor:a,editorUrl:o,fieldsBaseUrl:s}=await w(t.template);await T({template:t.template,path:n,content:r,schema:i,hasEditor:a,editorUrl:o,fieldsBaseUrl:s,save:t=>U.updateFragment(e,{content:t}).then(()=>{})})}catch(n){t.value=null,s.value=`Failed to load fragment "${e}": ${n.message}`,d=setInterval(()=>A(e),3e3)}}function j(){S(),s.value=null,t.value=null,n.value=null,r.value=null,i.value=!1,a.value=null,f.clear()}typeof window<`u`&&window.addEventListener(`beforeunload`,e=>{y.value&&(e.preventDefault(),e.returnValue=``)});function M(e){n.value=e,hn().invalidateDraft()}function N(e){f.delete(e),hn().invalidateDraft()}function ee(){!t.value||!r.value||(n.value=Sn(r.value),l.value++,hn().invalidateDraft())}async function P(){if(!(!t.value&&f.size===0)){i.value=!0,a.value=null;try{t.value&&n.value&&(await t.value.save(n.value),r.value=Sn(n.value));for(let e of f.values())await e.target.save(e.editedContent);f.clear(),hn().invalidate(),_n().refresh(),e.show(`Saved`)}catch(t){a.value=t.message,e.showError(t,`Failed to save`)}finally{i.value=!1}}}return{target:t,content:n,saved:r,saving:i,lastSaveError:a,template:p,path:m,schema:h,dirty:_,loadError:s,mountVersion:l,customEditorMount:u,pendingEdits:f,pendingCount:v,hasPendingEdits:y,allOverrides:b,open:T,openComponent:O,openPageRoot:k,openFragment:A,clear:j,markDirty:M,discard:ee,revertStashed:N,save:P,hasPendingEdit:x}}),wn=V(`componentFocus`,()=>{let e=c(null),t=c(null),n=c(null),r=c(null);function i(t){e.value=t}function a(e){t.value=e}function o(e){n.value=e}function s(e){r.value=e}function l(){r.value=null}return{highlightGzId:e,previewHoverGzId:t,selectedGzId:n,pendingGzId:r,highlight:i,previewHover:a,select:o,setPending:s,clearPending:l}}),Tn=V(`uiMode`,()=>{let e=c(`browse`),t=`browse`;function n(){e.value=`edit`}function r(){Cn().clear();let t=wn();t.select(null),t.clearPending(),e.value=`browse`}function i(){e.value===`fullscreen`?e.value=t:(t=e.value,e.value=`fullscreen`)}return{mode:e,enterEdit:n,enterBrowse:r,toggleFullscreen:i}}),En={class:`publish-content`},Dn={class:`publish-item`,"data-testid":`publish-current-item`},On={key:0,class:`publish-empty`},kn={class:`publish-targets`},An=[`for`],jn={key:0,class:`publish-env-badge publish-env-prod`},Mn={key:1,class:`publish-env-badge publish-env-staging`},Nn={key:0,class:`publish-warning`,"data-testid":`publish-invalid-templates`},Pn={class:`publish-invalid-body`},Fn={class:`publish-invalid-list`},In={class:`publish-invalid-name`},Ln={class:`publish-invalid-error`},Rn={key:1,class:`publish-impact`,"data-testid":`publish-impact`},zn={class:`publish-impact-body`},Bn={key:0},Vn={key:0,class:`publish-impact-note`},Hn={key:2,class:`publish-confirm-banner`,"data-testid":`publish-confirm-banner`},Un={key:3,class:`publish-warning`,"data-testid":`publish-compare-error`},Wn={key:4,class:`publish-firstpublish`,"data-testid":`publish-first-publish`},Gn={key:5,class:`publish-changes`},Kn={class:`publish-label`},qn={key:0,class:`publish-label-hint`},Jn={key:1,class:`publish-label-hint`,"data-testid":`publish-summary`},Yn={key:0},Xn={key:1},Zn={key:2},Qn={key:3},$n={key:0,class:`publish-nochanges`},er={key:0,class:`publish-changes-group`,"data-testid":`publish-group-pages`},tr={class:`publish-changes-list`},nr={key:1,class:`publish-change-nocheckbox`},rr={class:`publish-change-label`},ir={key:1,class:`publish-changes-group`,"data-testid":`publish-group-fragments`},ar={class:`publish-changes-list`},or={key:1,class:`publish-change-nocheckbox`},sr={class:`publish-change-label`},cr={key:2,class:`publish-progress`,"data-testid":`publish-progress`},lr={class:`publish-progress-header`},ur={class:`publish-progress-target`},dr={class:`publish-progress-count`},fr={class:`publish-progress-bar`},pr=[`title`],mr={key:3,class:`publish-results`},hr={class:`result-target`},gr={key:0,class:`result-detail`},_r={key:1,class:`result-detail`},vr=R({__name:`PublishDialog`,props:{visible:{type:Boolean},itemType:{},itemName:{}},emits:[`close`],setup(e,{emit:t}){let a=e,o=t,h=g(()=>`${a.itemType}/${a.itemName}`),_=_n(),b=c([]),S=c([]),w=c(!1),T=c(!1),D=c(null),k=c(new Map),A=c(new Map),j=c(new Map),M=c(new Set),N=new Map,P=c(new Set([h.value]));r(async()=>{try{b.value=await U.getTargets()}catch{b.value=[]}}),E(()=>R());function R(){for(let e of N.values())e.abort();N.clear()}l(S,()=>{T.value=!1}),l(S,(e,t)=>{let n=e.filter(e=>!t?.includes(e)),r=(t??[]).filter(t=>!e.includes(t));for(let e of r)N.get(e)?.abort(),N.delete(e),M.value.delete(e),A.value.delete(e),j.value.delete(e);for(let e of n){let t=new AbortController;N.set(e,t),M.value.add(e),j.value.delete(e),U.compare(e,{signal:t.signal}).then(n=>{t.signal.aborted||(A.value.set(e,n),M.value.delete(e),A.value=new Map(A.value),M.value=new Set(M.value))}).catch(n=>{t.signal.aborted||n.name===`AbortError`||(j.value.set(e,n.message),M.value.delete(e),j.value=new Map(j.value),M.value=new Set(M.value))})}});let te={added:0,modified:1,deleted:2},ne=g(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);(!r||te[n]<te[r.change])&&e.set(t,{path:t,change:n})};for(let e of S.value){let n=A.value.get(e);if(n){for(let e of n.added)t(e,`added`);for(let e of n.modified)t(e,`modified`);for(let e of n.deleted)t(e,`deleted`)}}return[...e.values()].sort((e,t)=>e.path.localeCompare(t.path))}),re=g(()=>{let e=[],t=[];for(let n of ne.value)n.path.startsWith(`fragments/`)?t.push(n):e.push(n);return{pages:e,fragments:t}}),V=g(()=>{let e=0,t=0,n=0;for(let r of ne.value)r.change===`added`?e++:r.change===`modified`?t++:n++;let r=0;if(S.value.length>0){let e=S.value.map(e=>A.value.get(e)).filter(e=>!!e);if(e.length===S.value.length&&e.length>0){let[t,...n]=e.map(e=>new Set(e.unchanged));for(let e of t)n.every(t=>t.has(e))&&r++}}return{added:e,modified:t,deleted:n,unchanged:r}}),ie=g(()=>M.value.size>0),ae=g(()=>b.value.filter(e=>e.environment===`production`&&S.value.includes(e.name))),oe=g(()=>ae.value.length>0),se=g(()=>{let e=new Map;for(let t of S.value){let n=A.value.get(t);if(n)for(let t of n.invalidTemplates)e.has(t.name)||e.set(t.name,t.errors)}return[...e.entries()].map(([e,t])=>({name:e,errors:t}))}),ce=g(()=>se.value.length>0),le=g(()=>S.value.length===0||ie.value||w.value||ce.value),ue=g(()=>S.value.length===0?`Select at least one target`:ie.value?`Loading changes…`:ce.value?`Fix invalid templates before publishing`:``),de=g(()=>A.value.size>0),fe=g(()=>{for(let e of S.value)if(A.value.get(e)?.firstPublish)return!0;return!1}),pe=g(()=>{for(let e of S.value){let t=j.value.get(e);if(t)return t}return null}),me=g(()=>ne.value.filter(e=>e.change!==`deleted`&&e.path!==h.value)),he=g(()=>me.value.length>0&&me.value.every(e=>P.value.has(e.path)));function ge(){let e=new Set(P.value);if(he.value)for(let t of me.value)e.delete(t.path);else for(let t of me.value)e.add(t.path);P.value=e}let _e=g(()=>new Set(ne.value.filter(e=>e.change===`deleted`).map(e=>e.path)));l(ne,e=>{let t=new Set(e.map(e=>e.path)),n=new Set;for(let e of P.value)_e.value.has(e)||(t.has(e)||e===h.value)&&n.add(e);_e.value.has(h.value)||n.add(h.value),P.value=n});function ve(e){if(_e.value.has(e))return;let t=new Set(P.value);t.has(e)?t.delete(e):t.add(e),P.value=t}let ye=c(new Map),be=c(new Set),xe=g(()=>[...P.value].filter(e=>e.startsWith(`fragments/`)));l(xe,async e=>{for(let t of e){if(ye.value.has(t)||be.value.has(t))continue;let e=new Set(be.value);e.add(t),be.value=e;try{let e=await U.getDependents(t),n=new Map(ye.value);n.set(t,e),ye.value=n}catch{}finally{let e=new Set(be.value);e.delete(t),be.value=e}}});let Se=g(()=>{let e=new Set;for(let t of xe.value){let n=ye.value.get(t);if(n)for(let t of n.pages)P.value.has(`pages/${t}`)||e.add(t)}return[...e].sort()}),Ce=g(()=>xe.value.length>0&&Se.value.length>0),we=g(()=>{for(let e of S.value)if(b.value.find(t=>t.name===e)?.publishMode===`static`)return!0;return!1});async function Te(){if(!le.value){if(oe.value&&!T.value){T.value=!0;return}await Ee()}}async function Ee(){if(S.value.length!==0){T.value=!1,R(),w.value=!0,D.value=null,k.value=new Map;try{let e;if(fe.value){let t=S.value.find(e=>A.value.get(e)?.firstPublish),n=t?A.value.get(t):null;e=n?n.added:[h.value]}else !de.value||pe.value?e=[h.value]:(e=[...P.value],e.length===0&&(e=[h.value]));D.value=await U.publishStream(e,S.value,e=>{if(e.kind===`target-start`){let t=new Map(k.value);t.set(e.target,{current:0,total:e.total,label:`starting…`,status:`in-progress`}),k.value=t}else if(e.kind===`progress`){let t=new Map(k.value),n=t.get(e.target)??{current:0,total:e.total,label:``,status:`in-progress`};t.set(e.target,{...n,current:e.current,total:e.total,label:e.label}),k.value=t}else if(e.kind===`target-result`){let t=new Map(k.value),n=t.get(e.result.target);n&&t.set(e.result.target,{...n,status:e.result.success?`done`:`error`,label:e.result.success?`done`:e.result.error??`failed`}),k.value=t}}),_.refresh()}catch(e){D.value=[{target:`(all)`,success:!1,error:e.message,copiedFiles:0}]}finally{w.value=!1}}}function De(e){return e.startsWith(`pages/`)?`pi pi-file`:`pi pi-share-alt`}function Oe(e){return e.startsWith(`pages/`)?e.slice(6):e.startsWith(`fragments/`)?`@${e.slice(10)}`:e}function ke(e){return e===`added`?`+`:e===`deleted`?`−`:`●`}function Ae(){R(),o(`close`)}return(e,t)=>(u(),B(f(O),{visible:a.visible,"onUpdate:visible":Ae,modal:``,header:`Publish`,style:{width:`32rem`}},{footer:p(()=>[D.value?(u(),B(f(I),{key:0,label:`Done`,"data-testid":`publish-done`,onClick:Ae})):(u(),z(C,{key:1},[i(f(I),{label:T.value?`Back`:`Cancel`,severity:`secondary`,text:``,onClick:t[1]||=e=>T.value?T.value=!1:Ae()},null,8,[`label`]),T.value?(u(),B(f(I),{key:1,label:`Yes, publish to ${ae.value.map(e=>e.name).join(`, `)}`,icon:`pi pi-exclamation-triangle`,severity:`danger`,loading:w.value,"data-testid":`publish-confirm`,onClick:Ee},null,8,[`label`,`loading`])):(u(),B(f(I),{key:0,label:`Publish`,icon:`pi pi-cloud-upload`,loading:w.value,"data-testid":`publish-submit`,title:ue.value,disabled:le.value,onClick:Te},null,8,[`loading`,`title`,`disabled`]))],64))]),default:p(()=>[L(`div`,En,[L(`p`,Dn,[L(`i`,{class:n(De(h.value))},null,2),m(` `+F(Oe(h.value)),1)]),b.value.length===0?(u(),z(`div`,On,` No targets configured in site.yaml `)):D.value?v(``,!0):(u(),z(C,{key:1},[L(`div`,kn,[t[2]||=L(`p`,{class:`publish-label`},`Select targets`,-1),(u(!0),z(C,null,d(b.value,e=>(u(),z(`div`,{key:e.name,class:`publish-target`},[i(f(y),{modelValue:S.value,"onUpdate:modelValue":t[0]||=e=>S.value=e,inputId:e.name,value:e.name,"data-testid":`publish-target-${e.name}`},null,8,[`modelValue`,`inputId`,`value`,`data-testid`]),L(`label`,{for:e.name,class:`publish-target-label`},[m(F(e.name)+` `,1),e.environment===`production`?(u(),z(`span`,jn,`prod`)):e.environment===`staging`?(u(),z(`span`,Mn,`staging`)):v(``,!0)],8,An),M.value.has(e.name)?(u(),B(f(ee),{key:0,style:{width:`14px`,height:`14px`},strokeWidth:`6`})):v(``,!0)]))),128))]),ce.value?(u(),z(`div`,Nn,[t[4]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`div`,Pn,[L(`p`,null,[L(`strong`,null,F(se.value.length)+` template`+F(se.value.length===1?``:`s`)+` can't be rendered.`,1),t[3]||=m(` Publish is blocked until fixed.`,-1)]),L(`ul`,Fn,[(u(!0),z(C,null,d(se.value,e=>(u(),z(`li`,{key:e.name},[L(`span`,In,F(e.name),1),L(`span`,Ln,F(e.errors[0]),1)]))),128))])])])):v(``,!0),Ce.value?(u(),z(`div`,Rn,[t[6]||=L(`i`,{class:`pi pi-info-circle`},null,-1),L(`div`,zn,[L(`p`,null,[t[5]||=L(`strong`,null,`Also affects:`,-1),m(` `+F(Se.value.slice(0,6).join(`, `)),1),Se.value.length>6?(u(),z(`span`,Bn,`, +`+F(Se.value.length-6)+` more`,1)):v(``,!0)]),we.value?(u(),z(`p`,Vn,` Static targets bake fragments into pages — republish the pages above to see the change on static targets. ESI targets update instantly. `)):v(``,!0)])])):v(``,!0),T.value?(u(),z(`div`,Hn,[t[9]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`span`,null,[t[7]||=m(` This will publish to `,-1),L(`strong`,null,F(ae.value.map(e=>e.name).join(`, `)),1),t[8]||=m(` — live content will change. `,-1)])])):v(``,!0),pe.value?(u(),z(`div`,Un,[t[10]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`span`,null,`Couldn't load changes: `+F(pe.value),1)])):fe.value?(u(),z(`div`,Wn,[...t[11]||=[L(`i`,{class:`pi pi-info-circle`},null,-1),L(`span`,null,`First publish — everything will be published.`,-1)]])):S.value.length>0?(u(),z(`div`,Gn,[L(`p`,Kn,[t[12]||=m(` Changes `,-1),ie.value?(u(),z(`span`,qn,`loading…`)):ne.value.length||V.value.unchanged?(u(),z(`span`,Jn,[V.value.modified?(u(),z(`span`,Yn,F(V.value.modified)+` modified`,1)):v(``,!0),V.value.added?(u(),z(`span`,Xn,F(V.value.modified?` · `:``)+F(V.value.added)+` added`,1)):v(``,!0),V.value.deleted?(u(),z(`span`,Zn,F(V.value.modified||V.value.added?` · `:``)+F(V.value.deleted)+` only on target`,1)):v(``,!0),V.value.unchanged?(u(),z(`span`,Qn,F(V.value.modified||V.value.added||V.value.deleted?` · `:``)+F(V.value.unchanged)+` unchanged`,1)):v(``,!0)])):v(``,!0),!ie.value&&me.value.length>0?(u(),z(`button`,{key:2,type:`button`,class:`publish-select-all`,"data-testid":`publish-select-all`,onClick:ge},F(he.value?`Select none`:`Select all`),1)):v(``,!0)]),!ie.value&&ne.value.length===0?(u(),z(`div`,$n,` No changes to publish. `)):(u(),z(C,{key:1},[re.value.pages.length?(u(),z(`div`,er,[t[13]||=L(`p`,{class:`publish-group-label`},`Pages`,-1),L(`div`,tr,[(u(!0),z(C,null,d(re.value.pages,e=>(u(),B(s(e.change===`deleted`?`div`:`label`),{key:e.path,class:n([`publish-change-row`,{"publish-change-row-deleted":e.change===`deleted`}]),"data-testid":`publish-change-${e.path}`},{default:p(()=>[e.change===`deleted`?(u(),z(`span`,nr)):(u(),B(f(y),{key:0,modelValue:P.value.has(e.path),binary:!0,"onUpdate:modelValue":t=>ve(e.path)},null,8,[`modelValue`,`onUpdate:modelValue`])),L(`span`,{class:n([`publish-change-mark`,e.change])},F(ke(e.change)),3),L(`i`,{class:n([De(e.path),`publish-change-icon`])},null,2),L(`span`,rr,F(Oe(e.path)),1)]),_:2},1032,[`class`,`data-testid`]))),128))])])):v(``,!0),re.value.fragments.length?(u(),z(`div`,ir,[t[14]||=L(`p`,{class:`publish-group-label`},`Fragments`,-1),L(`div`,ar,[(u(!0),z(C,null,d(re.value.fragments,e=>(u(),B(s(e.change===`deleted`?`div`:`label`),{key:e.path,class:n([`publish-change-row`,{"publish-change-row-deleted":e.change===`deleted`}]),"data-testid":`publish-change-${e.path}`},{default:p(()=>[e.change===`deleted`?(u(),z(`span`,or)):(u(),B(f(y),{key:0,modelValue:P.value.has(e.path),binary:!0,"onUpdate:modelValue":t=>ve(e.path)},null,8,[`modelValue`,`onUpdate:modelValue`])),L(`span`,{class:n([`publish-change-mark`,e.change])},F(ke(e.change)),3),L(`i`,{class:n([De(e.path),`publish-change-icon`])},null,2),L(`span`,sr,F(Oe(e.path)),1)]),_:2},1032,[`class`,`data-testid`]))),128))])])):v(``,!0)],64))])):v(``,!0)],64)),w.value&&!D.value&&k.value.size>0?(u(),z(`div`,cr,[(u(!0),z(C,null,d(k.value,([e,t])=>(u(),z(`div`,{key:e,class:`publish-progress-row`},[L(`div`,lr,[L(`span`,ur,F(e),1),L(`span`,dr,F(t.current)+` / `+F(t.total),1)]),L(`div`,fr,[L(`div`,{class:`publish-progress-fill`,style:x({width:(t.total?Math.round(100*t.current/t.total):0)+`%`})},null,4)]),L(`div`,{class:`publish-progress-label`,title:t.label},F(t.label),9,pr)]))),128))])):D.value?(u(),z(`div`,mr,[(u(!0),z(C,null,d(D.value,e=>(u(),z(`div`,{key:e.target,class:n([`publish-result`,{success:e.success,error:!e.success}])},[L(`i`,{class:n(e.success?`pi pi-check-circle`:`pi pi-exclamation-circle`)},null,2),L(`span`,hr,F(e.target),1),e.success?(u(),z(`span`,gr,F(e.copiedFiles)+` files`,1)):(u(),z(`span`,_r,F(e.error),1))],2))),128))])):v(``,!0)])]),_:1},8,[`visible`]))}}),yr=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},br=yr(vr,[[`__scopeId`,`data-v-b2bbbbf3`]]),xr={class:`fetch-content`},Sr={key:0,class:`fetch-empty`},Cr={key:1,class:`fetch-select`},wr={key:2,class:`fetch-result success`},Tr={class:`fetch-items`},Er={key:3,class:`fetch-result error`},Dr=yr(R({__name:`FetchDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=_n(),l=c([]),d=c(null),h=c(!1),g=c(null),y=c(null);r(async()=>{try{l.value=(await U.getTargets()).map(e=>e.name)}catch{l.value=[]}});async function b(){if(d.value){h.value=!0,g.value=null,y.value=null;try{g.value=await U.fetchFromTarget(d.value),await o.load(),s.refresh()}catch(e){y.value=e.message}finally{h.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`Fetch from Target`,style:{width:`28rem`}},{footer:p(()=>[g.value||y.value?(u(),B(f(I),{key:0,label:`Done`,onClick:t[1]||=e=>a(`close`)})):(u(),z(C,{key:1},[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Fetch`,icon:`pi pi-cloud-download`,loading:h.value,disabled:!d.value,onClick:b},null,8,[`loading`,`disabled`])],64))]),default:p(()=>[L(`div`,xr,[l.value.length===0?(u(),z(`div`,Sr,` No targets configured in site.yaml `)):!g.value&&!y.value?(u(),z(`div`,Cr,[t[4]||=L(`p`,{class:`fetch-label`},`Pull content from a target into the working copy:`,-1),i(f(_),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,options:l.value.map(e=>({name:e})),optionLabel:`name`,optionValue:`name`,class:`fetch-list`},null,8,[`modelValue`,`options`])])):g.value?(u(),z(`div`,wr,[t[6]||=L(`i`,{class:`pi pi-check-circle`},null,-1),L(`div`,null,[L(`p`,null,[L(`strong`,null,F(g.value.copiedFiles),1),t[5]||=m(` files fetched from `,-1),L(`strong`,null,F(d.value),1)]),L(`p`,Tr,F(g.value.items.join(`, `)),1)])])):y.value?(u(),z(`div`,Er,[t[7]||=L(`i`,{class:`pi pi-exclamation-circle`},null,-1),L(`p`,null,F(y.value),1)])):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-28aee561`]]),Or={class:`changes-header`},kr={class:`changes-body`},Ar={key:0,class:`changes-empty`},jr={class:`changes-target-row`},Mr=[`title`],Nr={key:0,class:`changes-loading`,"data-testid":`changes-loading`},Pr={key:1,class:`changes-warning`,"data-testid":`changes-error`},Fr={class:`changes-warning-body`},Ir={class:`changes-warning-detail`},Lr={key:2,class:`changes-state`,"data-testid":`changes-first-publish`},Rr={key:3,class:`changes-state changes-state-sync`,"data-testid":`changes-in-sync`},zr={key:4,class:`changes-list-wrapper`},Br={class:`changes-summary`,"data-testid":`changes-summary`},Vr={key:0},Hr={key:1},Ur={key:2},Wr={key:0,class:`changes-group`,"data-testid":`changes-group-pages`},Gr={class:`changes-rows`},Kr={class:`changes-label`},qr={key:1,class:`changes-group`,"data-testid":`changes-group-fragments`},Jr={class:`changes-rows`},Yr={class:`changes-label`},Xr={key:2,class:`changes-unchanged`},Zr={key:0,class:`changes-unchanged-body`,"data-testid":`changes-unchanged-body`},Qr={key:0,class:`changes-group`},$r={class:`changes-rows`},ei=[`data-testid`,`onClick`],ti={class:`changes-label`},ni={key:1,class:`changes-group`},ri={class:`changes-rows`},ii=[`data-testid`,`onClick`],ai={class:`changes-label`},oi=`gazetta_changes_target`,si=yr(R({__name:`ChangesDrawer`,props:{visible:{type:Boolean}},emits:[`update:visible`],setup(e,{emit:t}){let r=e,a=t,o=ne(),h=c([]),_=c(null),y=c(null),b=c(!1),x=c(null),S=c(null),w=c(!1),E=null;async function D(){try{h.value=(await U.getTargets()).map(e=>e.name);let e=localStorage.getItem(oi);e&&h.value.includes(e)?_.value=e:h.value.length&&(_.value=h.value[0])}catch{h.value=[]}}async function O(){if(!_.value)return;E?.abort();let e=new AbortController;E=e,b.value=!0,x.value=null;try{let t=await U.compare(_.value,{signal:e.signal});if(e.signal.aborted)return;y.value=t,S.value=Date.now()}catch(t){if(e.signal.aborted||t.name===`AbortError`)return;x.value=t.message,y.value=null}finally{e.signal.aborted||(b.value=!1)}}l(()=>r.visible,async e=>{if(!e){E?.abort();return}h.value.length===0&&await D(),_.value&&O()}),l(_,e=>{e&&(localStorage.setItem(oi,e),r.visible&&O())});function k(e,t){return(t??[]).map(t=>({path:t,change:e}))}let A=g(()=>{let e=y.value;return e?[...k(`modified`,e.modified),...k(`added`,e.added),...k(`deleted`,e.deleted)].sort((e,t)=>e.path.localeCompare(t.path)):[]}),j=g(()=>{let e=[],t=[];for(let n of A.value)n.path.startsWith(`fragments/`)?t.push(n):e.push(n);return{pages:e,fragments:t}}),M=g(()=>{let e=0,t=0,n=0;for(let r of A.value)r.change===`added`?e++:r.change===`modified`?t++:n++;return{added:e,modified:t,deleted:n}}),P=g(()=>{let e=y.value,t=[],n=[];for(let r of e?.unchanged??[]){let e={path:r,change:`modified`};r.startsWith(`fragments/`)?n.push(e):t.push(e)}return t.sort((e,t)=>e.path.localeCompare(t.path)),n.sort((e,t)=>e.path.localeCompare(t.path)),{pages:t,fragments:n}}),R=g(()=>y.value?.unchanged.length??0),te=g(()=>!b.value&&!x.value&&y.value!==null&&A.value.length===0&&!y.value.firstPublish),re=g(()=>!b.value&&!x.value&&y.value?.firstPublish===!0);function V(e){return e.startsWith(`pages/`)?`pi pi-file`:`pi pi-share-alt`}function ie(e){return e.startsWith(`pages/`)?e.slice(6):e.startsWith(`fragments/`)?`@${e.slice(10)}`:e}function ae(e){return e===`added`?`+`:e===`deleted`?`−`:`●`}function oe(e){if(e.change===`deleted`)return;let[t,...n]=e.path.split(`/`),r=n.join(`/`);o.push(`/${t}/${r}`)}let se=g(()=>{if(!S.value)return``;let e=Math.max(0,Date.now()-S.value),t=Math.floor(e/1e3);if(t<10)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}),ce=c(Date.now()),le=null;l(()=>r.visible,e=>{e&&!le?le=setInterval(()=>{ce.value=Date.now()},15e3):!e&&le&&(clearInterval(le),le=null)});function ue(e){a(`update:visible`,e)}return(e,t)=>(u(),B(f(T),{visible:r.visible,"onUpdate:visible":ue,position:`right`,style:{width:`min(960px, 90vw)`},"data-testid":`changes-drawer`},{header:p(()=>[L(`div`,Or,[t[2]||=L(`span`,{class:`changes-title`},`Changes`,-1),i(f(I),{icon:`pi pi-refresh`,text:``,rounded:``,size:`small`,disabled:!_.value||b.value,"data-testid":`changes-refresh`,onClick:O},null,8,[`disabled`])])]),default:p(()=>[L(`div`,kr,[h.value.length===0?(u(),z(`div`,Ar,` No targets configured in site.yaml `)):(u(),z(C,{key:1},[L(`div`,jr,[i(f(N),{modelValue:_.value,"onUpdate:modelValue":t[0]||=e=>_.value=e,options:h.value,placeholder:`Select target`,"data-testid":`changes-target-select`,class:`changes-target`},null,8,[`modelValue`,`options`]),S.value&&!b.value?(u(),z(`span`,{key:0,class:`changes-lastchecked`,title:new Date(S.value).toLocaleString()},F(se.value),9,Mr)):v(``,!0)]),b.value?(u(),z(`div`,Nr,[i(f(ee),{style:{width:`20px`,height:`20px`},strokeWidth:`6`}),t[3]||=L(`span`,null,`Comparing…`,-1)])):x.value?(u(),z(`div`,Pr,[t[5]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`div`,Fr,[t[4]||=L(`p`,null,`Couldn't load changes`,-1),L(`p`,Ir,F(x.value),1),i(f(I),{label:`Retry`,size:`small`,text:``,onClick:O})])])):re.value?(u(),z(`div`,Lr,[t[8]||=L(`i`,{class:`pi pi-info-circle`},null,-1),L(`span`,null,[t[6]||=m(`Nothing has been published to `,-1),L(`strong`,null,F(_.value),1),t[7]||=m(` yet.`,-1)])])):te.value?(u(),z(`div`,Rr,[t[11]||=L(`i`,{class:`pi pi-check-circle`},null,-1),L(`span`,null,[t[9]||=m(`In sync with `,-1),L(`strong`,null,F(_.value),1),t[10]||=m(`.`,-1)])])):y.value?(u(),z(`div`,zr,[L(`p`,Br,[M.value.modified?(u(),z(`span`,Vr,F(M.value.modified)+` modified`,1)):v(``,!0),M.value.added?(u(),z(`span`,Hr,F(M.value.modified?` · `:``)+F(M.value.added)+` added`,1)):v(``,!0),M.value.deleted?(u(),z(`span`,Ur,F(M.value.modified||M.value.added?` · `:``)+F(M.value.deleted)+` only on target`,1)):v(``,!0)]),j.value.pages.length?(u(),z(`div`,Wr,[t[12]||=L(`p`,{class:`changes-group-label`},`Pages`,-1),L(`div`,Gr,[(u(!0),z(C,null,d(j.value.pages,e=>(u(),B(s(e.change===`deleted`?`div`:`button`),{key:e.path,class:n([`changes-row`,{"changes-row-deleted":e.change===`deleted`}]),type:`button`,"data-testid":`changes-item-${e.path}`,onClick:t=>oe(e)},{default:p(()=>[L(`span`,{class:n([`changes-mark`,e.change])},F(ae(e.change)),3),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,Kr,F(ie(e.path)),1)]),_:2},1032,[`class`,`data-testid`,`onClick`]))),128))])])):v(``,!0),j.value.fragments.length?(u(),z(`div`,qr,[t[13]||=L(`p`,{class:`changes-group-label`},`Fragments`,-1),L(`div`,Jr,[(u(!0),z(C,null,d(j.value.fragments,e=>(u(),B(s(e.change===`deleted`?`div`:`button`),{key:e.path,class:n([`changes-row`,{"changes-row-deleted":e.change===`deleted`}]),type:`button`,"data-testid":`changes-item-${e.path}`,onClick:t=>oe(e)},{default:p(()=>[L(`span`,{class:n([`changes-mark`,e.change])},F(ae(e.change)),3),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,Yr,F(ie(e.path)),1)]),_:2},1032,[`class`,`data-testid`,`onClick`]))),128))])])):v(``,!0),R.value>0?(u(),z(`div`,Xr,[L(`button`,{type:`button`,class:`changes-unchanged-toggle`,"data-testid":`changes-unchanged-toggle`,onClick:t[1]||=e=>w.value=!w.value},[L(`i`,{class:n(w.value?`pi pi-chevron-down`:`pi pi-chevron-right`)},null,2),L(`span`,null,F(R.value)+` unchanged`,1)]),w.value?(u(),z(`div`,Zr,[P.value.pages.length?(u(),z(`div`,Qr,[t[15]||=L(`p`,{class:`changes-group-label`},`Pages`,-1),L(`div`,$r,[(u(!0),z(C,null,d(P.value.pages,e=>(u(),z(`button`,{type:`button`,key:e.path,class:`changes-row changes-row-unchanged`,"data-testid":`changes-unchanged-${e.path}`,onClick:t=>oe(e)},[t[14]||=L(`span`,{class:`changes-mark unchanged`},`·`,-1),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,ti,F(ie(e.path)),1)],8,ei))),128))])])):v(``,!0),P.value.fragments.length?(u(),z(`div`,ni,[t[17]||=L(`p`,{class:`changes-group-label`},`Fragments`,-1),L(`div`,ri,[(u(!0),z(C,null,d(P.value.fragments,e=>(u(),z(`button`,{type:`button`,key:e.path,class:`changes-row changes-row-unchanged`,"data-testid":`changes-unchanged-${e.path}`,onClick:t=>oe(e)},[t[16]||=L(`span`,{class:`changes-mark unchanged`},`·`,-1),L(`i`,{class:n([V(e.path),`changes-icon`])},null,2),L(`span`,ai,F(ie(e.path)),1)],8,ii))),128))])])):v(``,!0)])):v(``,!0)])):v(``,!0)])):v(``,!0)],64))])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-8918ea89`]]),ci={key:2,class:`cms-site-name`},li={key:0,class:`cms-toast cms-toast-error`},ui=yr(R({__name:`CmsToolbar`,setup(e){let t=ie(),n=ne(),r=g(()=>t.name===`dev`),a=fn(),o=gn(),s=Cn(),l=pn(),d=Tn(),h=c(!1),_=c(!1),y=c(!1),x=g(()=>o.type===`page`?`pages`:`fragments`),S=g(()=>o.name??``),w=g(()=>o.name&&!s.hasPendingEdits),T=g(()=>s.saving?`Saving…`:s.hasPendingEdits?`Save changes (⌘S)`:`No unsaved changes`),E=g(()=>o.name?s.hasPendingEdits?`Save changes before publishing`:`Publish to a target`:`Select a page or fragment to publish`);function D(){let e=o.type===`page`?`/pages`:`/fragments`;n.push(`${e}/${o.name}`)}return(e,t)=>(u(),z(C,null,[i(f(b),{class:`cms-toolbar`},{start:p(()=>[f(d).mode===`edit`&&!r.value?(u(),B(f(I),{key:0,icon:`pi pi-arrow-left`,text:``,rounded:``,"data-testid":`back-to-browse`,onClick:D,size:`small`,class:`cms-btn`})):v(``,!0),r.value?(u(),B(f(I),{key:1,icon:`pi pi-arrow-left`,text:``,rounded:``,"data-testid":`back-to-editor`,onClick:t[0]||=e=>f(n).back(),size:`small`,class:`cms-btn`})):v(``,!0),t[10]||=L(`span`,{class:`cms-logo`},[L(`i`,{class:`pi pi-objects-column`}),m(` Gazetta `)],-1),f(a).manifest?(u(),z(`span`,ci,F(f(a).manifest.name),1)):v(``,!0)]),center:p(()=>[i(M,{name:`fade`},{default:p(()=>[f(s).lastSaveError?(u(),z(`span`,li,[t[11]||=L(`i`,{class:`pi pi-exclamation-circle`},null,-1),m(` `+F(f(s).lastSaveError),1)])):v(``,!0)]),_:1})]),end:p(()=>[r.value?v(``,!0):(u(),B(f(I),{key:0,icon:`pi pi-code`,text:``,rounded:``,title:`Dev Playground`,"data-testid":`dev-playground-link`,onClick:t[1]||=e=>f(n).push(`/dev`),size:`small`,class:`cms-btn`})),i(f(I),{icon:f(l).dark?`pi pi-sun`:`pi pi-moon`,text:``,rounded:``,"data-testid":`theme-toggle`,onClick:t[2]||=e=>f(l).toggle(),size:`small`,class:`cms-btn`},null,8,[`icon`]),f(d).mode===`edit`?(u(),B(f(I),{key:1,label:`Save`,icon:`pi pi-save`,severity:`primary`,loading:f(s).saving,"data-testid":`save-btn`,title:T.value,disabled:!f(s).hasPendingEdits,onClick:t[3]||=e=>f(s).save(),size:`small`,class:`cms-btn`},null,8,[`loading`,`title`,`disabled`])):v(``,!0),i(f(I),{icon:`pi pi-arrow-right-arrow-left`,text:``,rounded:``,title:`Changes`,"data-testid":`changes-btn`,onClick:t[4]||=e=>y.value=!0,size:`small`,class:`cms-btn`}),i(f(I),{label:`Fetch`,icon:`pi pi-cloud-download`,severity:`info`,"data-testid":`fetch-btn`,onClick:t[5]||=e=>_.value=!0,size:`small`,class:`cms-btn`}),i(f(I),{label:`Publish`,icon:`pi pi-cloud-upload`,severity:`success`,"data-testid":`publish-btn`,title:E.value,disabled:!w.value,onClick:t[6]||=e=>h.value=!0,size:`small`,class:`cms-btn`},null,8,[`title`,`disabled`])]),_:1}),h.value?(u(),B(br,{key:0,visible:h.value,itemType:x.value,itemName:S.value,onClose:t[7]||=e=>h.value=!1},null,8,[`visible`,`itemType`,`itemName`])):v(``,!0),_.value?(u(),B(Dr,{key:1,visible:_.value,onClose:t[8]||=e=>_.value=!1},null,8,[`visible`])):v(``,!0),i(si,{visible:y.value,"onUpdate:visible":t[9]||=e=>y.value=e},null,8,[`visible`])],64))}}),[[`__scopeId`,`data-v-d907b333`]]),di=V(`unsavedGuard`,()=>{let e=c(!1),t=null;function n(){return t?new Promise(e=>e(`cancel`)):(e.value=!0,new Promise(e=>{t={resolve:e}}))}function r(n){e.value=!1,t?.resolve(n),t=null}return{visible:e,guard:n,respond:r}}),fi={class:`unsaved-message`},pi={class:`unsaved-actions`},mi=yr(R({__name:`UnsavedDialog`,setup(e){let t=di(),n=gn();function r(e){e.key===`Escape`&&(e.stopPropagation(),t.respond(`cancel`))}return(e,a)=>(u(),B(f(O),{visible:f(t).visible,modal:``,header:`Unsaved Changes`,closable:!1,style:{width:`26rem`},pt:{mask:{style:`backdrop-filter: blur(2px)`}},onKeydown:r},{footer:p(()=>[L(`div`,pi,[i(f(I),{label:`Don't Save`,severity:`danger`,text:``,onClick:a[0]||=e=>f(t).respond(`discard`)}),i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:a[1]||=e=>f(t).respond(`cancel`)}),i(f(I),{label:`Save`,icon:`pi pi-check`,autofocus:``,onClick:a[2]||=e=>f(t).respond(`save`)})])]),default:p(()=>[L(`p`,fi,[a[3]||=m(` You have unsaved changes on `,-1),L(`strong`,null,F(f(n).name),1),a[4]||=m(`. `,-1)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-70fd0516`]]),hi={class:`cms-app`},gi={key:0,class:`cms-error`},_i={key:1,class:`cms-loading`},vi=[`href`],yi=R({__name:`App`,setup(e){let t=fn(),o=pn(),s=mn();return r(()=>{o.init()}),(e,r)=>{let o=a(`router-view`);return u(),z(`div`,hi,[i(ui),f(t).error?(u(),z(`div`,gi,F(f(t).error),1)):f(t).loading?(u(),z(`div`,_i,`Loading site...`)):(u(),B(o,{key:2})),i(mi),i(M,{name:`toast`},{default:p(()=>[f(s).current?(u(),z(`div`,{key:0,class:n([`global-toast`,f(s).current.type===`error`?`toast-error`:`toast-success`]),"data-testid":`global-toast`},[L(`i`,{class:n(f(s).current.type===`error`?`pi pi-exclamation-circle`:`pi pi-check-circle`)},null,2),f(s).current.link?(u(),z(`a`,{key:0,href:f(s).current.link,target:`_blank`,rel:`noopener`,class:`toast-link`},F(f(s).current.message),9,vi)):(u(),z(C,{key:1},[m(F(f(s).current.message),1)],64)),f(s).current.type===`error`?(u(),z(`button`,{key:2,type:`button`,class:`toast-dismiss`,"data-testid":`toast-dismiss`,"aria-label":`Dismiss`,onClick:r[0]||=e=>f(s).dismiss()},[...r[1]||=[L(`i`,{class:`pi pi-times`},null,-1)]])):v(``,!0)],2)):v(``,!0)]),_:1})])}}}),bi=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var xi=Object.prototype.toString,Si=e=>xi.call(e)===`[object Object]`,Ci=()=>{};function wi(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}var Ti=e=>e();function Ei(e,t={}){let n,r,i=Ci,a=e=>{clearTimeout(e),i(),i=Ci},o;return s=>{let c=h(e),l=h(t.maxWait);return n&&a(n),c<=0||l!==void 0&&l<=0?(r&&=(a(r),void 0),Promise.resolve(s())):new Promise((e,u)=>{i=t.rejectOnCancel?u:e,o=s,l&&!r&&(r=setTimeout(()=>{n&&a(n),r=void 0,e(o())},l)),n=setTimeout(()=>{r&&a(r),r=void 0,e(s())},c)})}}function Di(e){return Array.isArray(e)?e:[e]}function Oi(e,t,n={}){let{eventFilter:r=Ti,...i}=n;return l(e,wi(r,t),i)}function ki(e,t,n={}){let{debounce:r=0,maxWait:i=void 0,...a}=n;return Oi(e,t,{...a,eventFilter:Ei(r,{maxWait:i})})}function Ai(e,t,n){return l(e,t,{...n,immediate:!0})}var ji=bi?window:void 0;bi&&window.document,bi&&window.navigator,bi&&window.location;function Mi(e){let t=h(e);return t?.$el??t}function Ni(...e){let t=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),n=g(()=>{let t=Di(h(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0});return Ai(()=>[n.value?.map(e=>Mi(e))??[ji].filter(e=>e!=null),Di(h(n.value?e[1]:e[0])),Di(f(n.value?e[2]:e[1])),h(n.value?e[3]:e[2])],([e,n,r,i],a,o)=>{if(!e?.length||!n?.length||!r?.length)return;let s=Si(i)?{...i}:i,c=e.flatMap(e=>n.flatMap(n=>r.map(r=>t(e,n,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}function Pi(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Fi(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=ji,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=Pi(t);return Ni(i,a,e=>{e.repeat&&h(s)||c(e)&&n(e)},o)}var Ii={class:`create-content`},Li={class:`create-field`},Ri={key:0,class:`create-hint`},zi={class:`create-field`},Bi={key:0,class:`create-error`},Vi=yr(R({__name:`CreatePageDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=c([]),l=c(null),d=c(``),m=c(!1),h=c(null),y=g(()=>{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`);return!e||e===`home`?`/`:`/${e}`});r(async()=>{s.value=await U.getTemplates()});async function b(){if(!(!l.value||!d.value.trim())){m.value=!0,h.value=null;try{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`).replace(/\/+/g,`/`);await U.createPage({name:e,template:l.value}),await o.load(),a(`close`)}catch(e){h.value=e.message}finally{m.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`New Page`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Create`,icon:`pi pi-plus`,loading:m.value,disabled:!l.value||!d.value.trim(),onClick:b},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,Ii,[L(`div`,Li,[t[4]||=L(`label`,null,`Page name`,-1),i(f(j),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,placeholder:`e.g. contact or blog/my-post`,class:`create-input`},null,8,[`modelValue`]),d.value.trim()?(u(),z(`span`,Ri,`Route: `+F(y.value),1)):v(``,!0)]),L(`div`,zi,[t[5]||=L(`label`,null,`Page template`,-1),i(f(_),{modelValue:l.value,"onUpdate:modelValue":t[1]||=e=>l.value=e,options:s.value,optionLabel:`name`,optionValue:`name`,class:`create-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),h.value?(u(),z(`p`,Bi,F(h.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-b4d1c25e`]]),Hi={class:`create-content`},Ui={class:`create-field`},Wi={class:`create-field`},Gi={key:0,class:`create-error`},Ki=yr(R({__name:`CreateFragmentDialog`,props:{visible:{type:Boolean}},emits:[`close`],setup(e,{emit:t}){let n=e,a=t,o=fn(),s=c([]),l=c(null),d=c(``),m=c(!1),h=c(null);r(async()=>{s.value=await U.getTemplates()});async function g(){if(!(!l.value||!d.value.trim())){m.value=!0,h.value=null;try{let e=d.value.trim().toLowerCase().replace(/\s+/g,`-`);await U.createFragment({name:e,template:l.value}),await o.load(),a(`close`)}catch(e){h.value=e.message}finally{m.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`New Fragment`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`)}),i(f(I),{label:`Create`,icon:`pi pi-plus`,loading:m.value,disabled:!l.value||!d.value.trim(),onClick:g},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,Hi,[L(`div`,Ui,[t[4]||=L(`label`,null,`Fragment name`,-1),i(f(j),{modelValue:d.value,"onUpdate:modelValue":t[0]||=e=>d.value=e,placeholder:`e.g. sidebar, newsletter`,class:`create-input`},null,8,[`modelValue`])]),L(`div`,Wi,[t[5]||=L(`label`,null,`Template`,-1),i(f(_),{modelValue:l.value,"onUpdate:modelValue":t[1]||=e=>l.value=e,options:s.value,optionLabel:`name`,optionValue:`name`,class:`create-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),h.value?(u(),z(`p`,Gi,F(h.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-0b98775c`]]),qi={class:`site-tree`},Ji=[`data-testid`,`onClick`],Yi={class:`node-label`},Xi=[`title`,`data-testid`],Zi=[`data-testid`,`onClick`],Qi={class:`node-label`},$i=[`title`,`data-testid`],ea=[`data-testid`,`onClick`],ta={class:`node-label`},na=[`title`,`data-testid`],ra={class:`new-btns`},ia=yr(R({__name:`SiteTree`,setup(e){let t=ne(),a=fn(),o=gn(),s=Cn(),p=mn(),m=_n(),h=c(null),_=c(!1),y=c(!1);r(()=>m.refresh()),l(()=>a.pages.length+a.fragments.length,()=>m.refresh());function b(e){return m.isFirstPublish?!0:e.type===`page`?m.isPageDirty(e.name):m.isFragmentDirty(e.name)}function x(){return m.target?m.isFirstPublish?`Not yet published to ${m.target}`:`Has unpublished changes (${m.target})`:``}l(()=>o.selection,e=>{e?h.value=`${e.type}:${e.name}`:h.value=null},{immediate:!0});let S=g(()=>new Set(a.manifest?.systemPages??[])),w=g(()=>[...a.pages].filter(e=>!S.value.has(e.name)).sort((e,t)=>e.route.localeCompare(t.route)).map(e=>({key:`page:${e.name}`,label:e.name,type:`page`,name:e.name,icon:`pi pi-file`}))),T=g(()=>[...a.pages].filter(e=>S.value.has(e.name)).sort((e,t)=>e.route.localeCompare(t.route)).map(e=>({key:`page:${e.name}`,label:e.name,type:`page`,name:e.name,icon:`pi pi-file`}))),E=g(()=>a.fragments.map(e=>({key:`fragment:${e.name}`,label:e.name,type:`fragment`,name:e.name,icon:`pi pi-share-alt`})).sort((e,t)=>e.label.localeCompare(t.label)));function D(e){let n=e.type===`page`?`/pages`:`/fragments`;t.push(`${n}/${e.name}`)}async function O(e,t){if(t.stopPropagation(),confirm(`Delete ${e.type} "${e.name}"? This cannot be undone.`))try{e.type===`page`?await U.deletePage(e.name):await U.deleteFragment(e.name),o.type===e.type&&o.name===e.name&&s.clear(),await a.load()}catch(t){p.showError(t,`Failed to delete "${e.name}"`)}}return(e,t)=>(u(),z(`div`,qi,[t[5]||=L(`div`,{class:`section-label`},`Pages`,-1),(u(!0),z(C,null,d(w.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,Yi,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,Xi)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,Ji))),128)),T.value.length?(u(),z(C,{key:0},[t[4]||=L(`div`,{class:`section-divider`},null,-1),(u(!0),z(C,null,d(T.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,Qi,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,$i)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,Zi))),128))],64)):v(``,!0),t[6]||=L(`div`,{class:`section-label`,style:{"margin-top":`12px`}},`Fragments`,-1),(u(!0),z(C,null,d(E.value,e=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{selected:h.value===e.key}]),"data-testid":`site-${e.type}-${e.name}`,onClick:t=>D(e)},[L(`i`,{class:n([e.icon,`node-icon`])},null,2),L(`span`,ta,F(e.label),1),b(e)?(u(),z(`span`,{key:0,class:`node-dirty-dot`,title:x(),"data-testid":`dirty-${e.type}-${e.name}`},null,8,na)):v(``,!0),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,class:`node-delete`,"data-testid":`delete-${e.type}-${e.name}`,onClick:t=>O(e,t)},null,8,[`data-testid`,`onClick`])],10,ea))),128)),L(`div`,ra,[i(f(I),{icon:`pi pi-plus`,label:`New page`,text:``,size:`small`,"data-testid":`new-page`,onClick:t[0]||=e=>_.value=!0}),i(f(I),{icon:`pi pi-plus`,label:`New fragment`,text:``,size:`small`,"data-testid":`new-fragment`,onClick:t[1]||=e=>y.value=!0})]),_.value?(u(),B(Vi,{key:1,visible:_.value,onClose:t[2]||=e=>_.value=!1},null,8,[`visible`])):v(``,!0),y.value?(u(),B(Ki,{key:2,visible:y.value,onClose:t[3]||=e=>y.value=!1},null,8,[`visible`])):v(``,!0)]))}}),[[`__scopeId`,`data-v-6b0b06db`]]),aa={class:`add-content`},oa={class:`add-field`},sa={class:`add-field`},ca={key:0,class:`add-error`},la=yr(R({__name:`AddComponentDialog`,props:{visible:{type:Boolean}},emits:[`close`,`add`],setup(e,{emit:t}){let n=e,a=t,o=c([]),s=c(null),l=c(``),d=c(!1),m=c(null);r(async()=>{o.value=await U.getTemplates()});async function h(){if(!(!s.value||!l.value.trim())){d.value=!0,m.value=null;try{a(`add`,l.value.trim().toLowerCase().replace(/\s+/g,`-`),s.value),a(`close`)}catch(e){m.value=e.message}finally{d.value=!1}}}return(e,t)=>(u(),B(f(O),{visible:n.visible,"onUpdate:visible":t[3]||=e=>a(`close`),modal:``,header:`Add Component`,style:{width:`24rem`}},{footer:p(()=>[i(f(I),{label:`Cancel`,severity:`secondary`,text:``,onClick:t[2]||=e=>a(`close`),"data-testid":`add-component-cancel`}),i(f(I),{label:`Add`,icon:`pi pi-plus`,loading:d.value,disabled:!s.value||!l.value.trim(),onClick:h,"data-testid":`add-component-submit`},null,8,[`loading`,`disabled`])]),default:p(()=>[L(`div`,aa,[L(`div`,oa,[t[4]||=L(`label`,null,`Name`,-1),i(f(j),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:`e.g. hero, sidebar, cta`,class:`add-input`,"data-testid":`add-component-name`},null,8,[`modelValue`])]),L(`div`,sa,[t[5]||=L(`label`,null,`Template`,-1),i(f(_),{modelValue:s.value,"onUpdate:modelValue":t[1]||=e=>s.value=e,options:o.value,optionLabel:`name`,optionValue:`name`,class:`add-list`,style:{maxHeight:`200px`}},null,8,[`modelValue`,`options`])]),m.value?(u(),z(`p`,ca,F(m.value),1)):v(``,!0)])]),_:1},8,[`visible`]))}}),[[`__scopeId`,`data-v-de3d43d5`]]),ua={key:0,class:`component-tree`},da=[`data-testid`,`onClick`,`onMouseenter`],fa=[`title`],pa={key:2,class:`node-dirty-dot`},ma={class:`node-label`},ha={key:4,class:`node-actions`},ga={key:1,class:`empty`},_a=yr(R({__name:`ComponentTree`,setup(e){function t(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=t*16777619>>>0;return t.toString(16).padStart(8,`0`)}let r=gn(),a=Cn(),o=mn(),s=wn(),p=di(),m=c(null),h=c(null),_=c([]),y=c(!1),b=g(()=>r.detail),S=g(()=>b.value?.components?.length??0),T=c(new Map);async function E(e,n,r,i){if(typeof e==`string`){let a=e.slice(1),o=r?`${r}/${e}`:e,s=t(o);i.set(s,{isFragment:!0,fragName:a});try{let t=await U.getFragment(a),r=t.components?await Promise.all(t.components.map((e,t)=>E(e,t,o,i))):[];return{key:`frag:${a}:${n}`,label:e,data:{isFragment:!0,fragName:a,treePath:o,path:o,template:t.template,index:n,isTopLevel:!0},children:r}}catch(t){return{key:`frag:${a}:${n}`,label:e,data:{isFragment:!0,fragName:a,treePath:o,index:n,isTopLevel:!0,error:t.message},children:[]}}}let a=r?`${r}/${e.name}`:e.name,o=t(a),s=e.components?await Promise.all(e.components.map((e,t)=>E(e,t,a,i))):[];return i.set(o,{path:a,template:e.template}),{key:`comp:${a}:${n}`,label:e.name,data:{path:a,template:e.template,treePath:a,isFragment:!1,index:n,isTopLevel:!0},children:s.map(e=>({...e,data:{...e.data,isTopLevel:!1}}))}}l(b,async e=>{if(!e){_.value=[],T.value=new Map;return}let n=new Map,i=r.type===`fragment`?`@${r.name}`:``,a=e.components?await Promise.all(e.components.map((e,t)=>E(e,t,i,n))):[],o={key:`root:${r.name}`,label:r.name??``,data:{isPage:!0,path:e.dir,template:e.template,treePath:i},children:a};i&&r.type===`fragment`&&r.name&&n.set(t(i),{isFragment:!0,fragName:r.name}),_.value=[o],T.value=n,D()},{immediate:!0});function D(){s.pendingGzId&&T.value.size>0&&(R(s.pendingGzId),s.clearPending())}l(()=>s.pendingGzId,()=>D()),l(()=>s.previewHoverGzId,e=>{if(!e){h.value=null;return}h.value=P(_.value,n=>n.treePath?t(n.treePath)===e:!1)?.key??null});let O=g(()=>{let e=[];function t(n,r){for(let i of n)e.push({node:i,depth:r}),i.children.length&&t(i.children,r+1)}return _.value[0]&&(e.push({node:_.value[0],depth:-1}),t(_.value[0].children,0)),e});function k(e,t){return t===-1?r.type===`page`?`pi pi-file`:`pi pi-share-alt`:e.data.isFragment?`pi pi-share-alt`:`pi pi-box`}function A(e){if(!(e<=0))return{paddingLeft:e*10+`px`}}function j(e){a.path===e?a.discard():a.revertStashed(e)}function M(e){e.data.treePath&&s.highlight(t(e.data.treePath))}function N(){s.highlight(null)}async function ee(e){if(!e.data)return;m.value=e.key,s.clearPending();let n=e.data.treePath;if(s.select(n?t(n):null),e.data.isFragment&&e.data.fragName){a.openFragment(e.data.fragName);return}if(e.data.isPage){a.openPageRoot();return}e.data.path&&a.openComponent(e.data.path,e.data.template??``)}function P(e,t){for(let n of e){if(n.data&&t(n.data))return n;if(n.children.length){let e=P(n.children,t);if(e)return e}}return null}function R(e){let t=T.value.get(e);if(!t)return;if(s.select(e),`isFragment`in t){let e=P(_.value,e=>e.fragName===t.fragName);e&&(m.value=e.key),a.openFragment(t.fragName);return}let n=P(_.value,e=>e.path===t.path);n&&(m.value=n.key),a.openComponent(t.path,t.template)}async function te(e,t){let n=b.value;if(!n?.components)return;let i=e+t;if(i<0||i>=n.components.length)return;let a=[...n.components],[o]=a.splice(e,1);a.splice(i,0,o),await r.updateComponents(a)}async function ne(e){let t=b.value;if(!t?.components)return;if(a.dirty){let e=await p.guard();if(e===`cancel`)return;e===`save`&&await a.save()}let n=[...t.components],i=n.splice(e,1)[0],s=typeof i==`string`?i:i.name;a.clear(),await r.updateComponents(n),o.show(`Removed "${s}"`)}async function re(e,t){let n=b.value;if(n)try{let i={name:e,template:t,content:{}},a=[...n.components??[],i];await r.updateComponents(a),o.show(`Added "${e}"`)}catch(t){o.showError(t,`Failed to add component "${e}"`)}}return(e,t)=>b.value?(u(),z(`div`,ua,[O.value.length?(u(!0),z(C,{key:0},d(O.value,({node:e,depth:r})=>(u(),z(`div`,{key:e.key,class:n([`node-item`,{"node-root":r===-1,selected:m.value===e.key,hovered:h.value===e.key}]),style:x(A(r)),"data-testid":`component-${e.data?.isFragment?e.data.fragName:e.label}`,onClick:t=>ee(e),onMouseenter:t=>M(e),onMouseleave:t[0]||=e=>N()},[e.data?.error?(u(),z(`i`,{key:0,class:`pi pi-exclamation-triangle node-icon node-error-icon`,title:e.data.error},null,8,fa)):(u(),z(`i`,{key:1,class:n([k(e,r),`node-icon`])},null,2)),e.data?.path&&(f(a).hasPendingEdit(e.data.path)||f(a).dirty&&f(a).path===e.data.path)?(u(),z(`span`,pa)):v(``,!0),L(`span`,ma,F(e.label),1),e.data?.path&&(f(a).hasPendingEdit(e.data.path)||f(a).dirty&&f(a).path===e.data.path)?(u(),B(f(I),{key:3,icon:`pi pi-undo`,text:``,rounded:``,size:`small`,class:`node-revert`,title:`Discard changes`,onClick:w(t=>j(e.data.path),[`stop`])},null,8,[`onClick`])):v(``,!0),e.data?.isTopLevel&&r!==-1?(u(),z(`span`,ha,[i(f(I),{icon:`pi pi-arrow-up`,text:``,rounded:``,size:`small`,"data-testid":`move-up-${e.label}`,disabled:e.data.index===0,onClick:w(t=>te(e.data.index,-1),[`stop`])},null,8,[`data-testid`,`disabled`,`onClick`]),i(f(I),{icon:`pi pi-arrow-down`,text:``,rounded:``,size:`small`,"data-testid":`move-down-${e.label}`,disabled:e.data.index===S.value-1,onClick:w(t=>te(e.data.index,1),[`stop`])},null,8,[`data-testid`,`disabled`,`onClick`]),i(f(I),{icon:`pi pi-trash`,text:``,rounded:``,size:`small`,severity:`danger`,"data-testid":`remove-${e.label}`,onClick:w(t=>ne(e.data.index),[`stop`])},null,8,[`data-testid`,`onClick`])])):v(``,!0)],46,da))),128)):(u(),z(`p`,ga,`No components`)),i(f(I),{icon:`pi pi-plus`,label:`Add component`,text:``,size:`small`,class:`add-btn`,"data-testid":`add-component`,onClick:t[1]||=e=>y.value=!0}),y.value?(u(),B(la,{key:2,visible:y.value,onClose:t[2]||=e=>y.value=!1,onAdd:re},null,8,[`visible`])):v(``,!0)])):v(``,!0)}}),[[`__scopeId`,`data-v-b1b905e2`]]);function va(e,t,n,r,i,a,o,s){let c=null;function u(){if(!e.value||!t.value||!n.value||!r.value)return;c&&d();let o=t.value,l=e.value;o.mount(l,{content:n.value,schema:r.value,theme:i.value,onChange:a,fieldsBaseUrl:s?.value}),c={mount:o,el:l}}function d(){if(c){try{c.mount.unmount(c.el)}catch{}c=null}}l(o?[e,t,o]:[e,t],()=>{e.value&&t.value&&n.value?u():d()},{immediate:!0}),D(d)}var W=oe(),G=e(ce(),1),ya=e(se()),ba=le();function xa(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Sa=typeof Symbol==`function`&&Symbol.observable||`@@observable`,Ca=()=>Math.random().toString(36).substring(7).split(``).join(`.`),wa={INIT:`@@redux/INIT${Ca()}`,REPLACE:`@@redux/REPLACE${Ca()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Ca()}`};function Ta(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Ea(e,t,n){if(typeof e!=`function`)throw Error(xa(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(xa(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(xa(1));return n(Ea)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(xa(3));return i}function d(e){if(typeof e!=`function`)throw Error(xa(4));if(c)throw Error(xa(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(xa(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!Ta(e))throw Error(xa(7));if(e.type===void 0)throw Error(xa(8));if(typeof e.type!=`string`)throw Error(xa(17));if(c)throw Error(xa(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(xa(10));r=e,f({type:wa.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(xa(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[Sa](){return this}}}return f({type:wa.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[Sa]:m}}function Da(e,t){return function(...n){return t(e.apply(this,n))}}function Oa(e,t){if(typeof e==`function`)return Da(e,t);if(typeof e!=`object`||!e)throw Error(xa(16));let n={};for(let r in e){let i=e[r];typeof i==`function`&&(n[r]=Da(i,t))}return n}function ka(...e){return e.length===0?e=>e:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function Aa(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(xa(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=ka(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}var ja=t((e=>{var t=ce();t.useSyncExternalStore,t.useRef,t.useEffect,t.useMemo,t.useDebugValue}));t(((e,t)=>{t.exports=ja()}))();var Ma=Symbol.for(`react.transitional.element`),Na=Symbol.for(`react.portal`),Pa=Symbol.for(`react.fragment`),Fa=Symbol.for(`react.strict_mode`),Ia=Symbol.for(`react.profiler`),La=Symbol.for(`react.consumer`),Ra=Symbol.for(`react.context`),za=Symbol.for(`react.forward_ref`),Ba=Symbol.for(`react.suspense`),Va=Symbol.for(`react.suspense_list`),Ha=Symbol.for(`react.memo`),Ua=Symbol.for(`react.lazy`),Wa=za,Ga=Ha;function Ka(e){if(typeof e==`object`&&e){let{$$typeof:t}=e;switch(t){case Ma:switch(e=e.type,e){case Pa:case Ia:case Fa:case Ba:case Va:return e;default:switch(e&&=e.$$typeof,e){case Ra:case za:case Ua:case Ha:return e;case La:return e;default:return t}}case Na:return t}}}function qa(e){return Ka(e)===Ha}function Ja(e,t,n,r,{areStatesEqual:i,areOwnPropsEqual:a,areStatePropsEqual:o}){let s=!1,c,l,u,d,f;function p(i,a){return c=i,l=a,u=e(c,l),d=t(r,l),f=n(u,d,l),s=!0,f}function m(){return u=e(c,l),t.dependsOnOwnProps&&(d=t(r,l)),f=n(u,d,l),f}function h(){return e.dependsOnOwnProps&&(u=e(c,l)),t.dependsOnOwnProps&&(d=t(r,l)),f=n(u,d,l),f}function g(){let t=e(c,l),r=!o(t,u);return u=t,r&&(f=n(u,d,l)),f}function _(e,t){let n=!a(t,l),r=!i(e,c,t,l);return c=e,l=t,n&&r?m():n?h():r?g():f}return function(e,t){return s?_(e,t):p(e,t)}}function Ya(e,{initMapStateToProps:t,initMapDispatchToProps:n,initMergeProps:r,...i}){return Ja(t(e,i),n(e,i),r(e,i),e,i)}function Xa(e,t){let n={};for(let r in e){let i=e[r];typeof i==`function`&&(n[r]=(...e)=>t(i(...e)))}return n}function Za(e){return function(t){let n=e(t);function r(){return n}return r.dependsOnOwnProps=!1,r}}function Qa(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:e.length!==1}function $a(e,t){return function(t,{displayName:n}){let r=function(e,t){return r.dependsOnOwnProps?r.mapToProps(e,t):r.mapToProps(e,void 0)};return r.dependsOnOwnProps=!0,r.mapToProps=function(t,n){r.mapToProps=e,r.dependsOnOwnProps=Qa(e);let i=r(t,n);return typeof i==`function`&&(r.mapToProps=i,r.dependsOnOwnProps=Qa(i),i=r(t,n)),i},r}}function eo(e,t){return(n,r)=>{throw Error(`Invalid value of type ${typeof e} for ${t} argument when connecting component ${r.wrappedComponentName}.`)}}function to(e){return e&&typeof e==`object`?Za(t=>Xa(e,t)):e?typeof e==`function`?$a(e,`mapDispatchToProps`):eo(e,`mapDispatchToProps`):Za(e=>({dispatch:e}))}function no(e){return e?typeof e==`function`?$a(e,`mapStateToProps`):eo(e,`mapStateToProps`):Za(()=>({}))}function ro(e,t,n){return{...n,...e,...t}}function io(e){return function(t,{displayName:n,areMergedPropsEqual:r}){let i=!1,a;return function(t,n,o){let s=e(t,n,o);return i?r(s,a)||(a=s):(i=!0,a=s),a}}}function ao(e){return e?typeof e==`function`?io(e):eo(e,`mergeProps`):()=>ro}function oo(e){e()}function so(){let e=null,t=null;return{clear(){e=null,t=null},notify(){oo(()=>{let t=e;for(;t;)t.callback(),t=t.next})},get(){let t=[],n=e;for(;n;)t.push(n),n=n.next;return t},subscribe(n){let r=!0,i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var co={notify(){},get:()=>[]};function lo(e,t){let n,r=co,i=0,a=!1;function o(e){u();let t=r.subscribe(e),n=!1;return()=>{n||(n=!0,t(),d())}}function s(){r.notify()}function c(){m.onStateChange&&m.onStateChange()}function l(){return a}function u(){i++,n||(n=t?t.addNestedSub(c):e.subscribe(c),r=so())}function d(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=co)}function f(){a||(a=!0,u())}function p(){a&&(a=!1,d())}let m={addNestedSub:o,notifyNestedSubs:s,handleChangeWrapper:c,isSubscribed:l,trySubscribe:f,tryUnsubscribe:p,getListeners:()=>r};return m}var uo=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,fo=typeof navigator<`u`&&navigator.product===`ReactNative`,po=uo||fo?G.useLayoutEffect:G.useEffect;function mo(e,t){return e===t?e!==0||t!==0||1/e==1/t:e!==e&&t!==t}function ho(e,t){if(mo(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r=0;r<n.length;r++)if(!Object.prototype.hasOwnProperty.call(t,n[r])||!mo(e[n[r]],t[n[r]]))return!1;return!0}var go={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},_o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},vo={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},yo={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},bo={[Wa]:vo,[Ga]:yo};function xo(e){return qa(e)?yo:bo[e.$$typeof]||go}var So=Object.defineProperty,Co=Object.getOwnPropertyNames,wo=Object.getOwnPropertySymbols,To=Object.getOwnPropertyDescriptor,Eo=Object.getPrototypeOf,Do=Object.prototype;function Oo(e,t){if(typeof t!=`string`){if(Do){let n=Eo(t);n&&n!==Do&&Oo(e,n)}let n=Co(t);wo&&(n=n.concat(wo(t)));let r=xo(e),i=xo(t);for(let a=0;a<n.length;++a){let o=n[a];if(!_o[o]&&!(i&&i[o])&&!(r&&r[o])){let n=To(t,o);try{So(e,o,n)}catch{}}}}return e}var ko=Symbol.for(`react-redux-context`),Ao=typeof globalThis<`u`?globalThis:{};function jo(){if(!G.createContext)return{};let e=Ao[ko]??=new Map,t=e.get(G.createContext);return t||(t=G.createContext(null),e.set(G.createContext,t)),t}var Mo=jo(),No=[null,null];function Po(e,t,n){po(()=>e(...t),n)}function Fo(e,t,n,r,i,a){e.current=r,n.current=!1,i.current&&(i.current=null,a())}function Io(e,t,n,r,i,a,o,s,c,l,u){if(!e)return()=>{};let d=!1,f=null,p=()=>{if(d||!s.current)return;let e=t.getState(),n,p;try{n=r(e,i.current)}catch(e){p=e,f=e}p||(f=null),n===a.current?o.current||l():(a.current=n,c.current=n,o.current=!0,u())};return n.onStateChange=p,n.trySubscribe(),p(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,f)throw f}}function Lo(e,t){return e===t}function Ro(e,t,n,{pure:r,areStatesEqual:i=Lo,areOwnPropsEqual:a=ho,areStatePropsEqual:o=ho,areMergedPropsEqual:s=ho,forwardRef:c=!1,context:l=Mo}={}){let u=l,d=no(e),f=to(t),p=ao(n),m=!!e;return e=>{let t=e.displayName||e.name||`Component`,n=`Connect(${t})`,r={shouldHandleStateChanges:m,displayName:n,wrappedComponentName:t,WrappedComponent:e,initMapStateToProps:d,initMapDispatchToProps:f,initMergeProps:p,areStatesEqual:i,areStatePropsEqual:o,areOwnPropsEqual:a,areMergedPropsEqual:s};function l(t){let[n,i,a]=G.useMemo(()=>{let{reactReduxForwardedRef:e,...n}=t;return[t.context,e,n]},[t]),o=G.useMemo(()=>{let e=u;return n?.Consumer,e},[n,u]),s=G.useContext(o),c=!!t.store&&!!t.store.getState&&!!t.store.dispatch,l=!!s&&!!s.store,d=c?t.store:s.store,f=l?s.getServerState:d.getState,p=G.useMemo(()=>Ya(d.dispatch,r),[d]),[h,g]=G.useMemo(()=>{if(!m)return No;let e=lo(d,c?void 0:s.subscription);return[e,e.notifyNestedSubs.bind(e)]},[d,c,s]),_=G.useMemo(()=>c?s:{...s,subscription:h},[c,s,h]),v=G.useRef(void 0),y=G.useRef(a),b=G.useRef(void 0),x=G.useRef(!1),S=G.useRef(!1),C=G.useRef(void 0);po(()=>(S.current=!0,()=>{S.current=!1}),[]);let w=G.useMemo(()=>()=>b.current&&a===y.current?b.current:p(d.getState(),a),[d,a]),T=G.useMemo(()=>e=>h?Io(m,d,h,p,y,v,x,S,b,g,e):()=>{},[h]);Po(Fo,[y,v,x,a,b,g]);let E;try{E=G.useSyncExternalStore(T,w,f?()=>p(f(),a):w)}catch(e){throw C.current&&(e.message+=`
42
42
  The error may be correlated with this previous error:
43
43
  ${C.current.stack}
44
44
 
45
- `),e}oo(()=>{C.current=void 0,b.current=void 0,v.current=E});let D=G.useMemo(()=>G.createElement(e,{...E,ref:i}),[i,e,E]);return G.useMemo(()=>m?G.createElement(o.Provider,{value:_},D):D,[o,D,_])}let h=G.memo(l);if(h.WrappedComponent=e,h.displayName=l.displayName=n,c){let t=G.forwardRef(function(e,t){return G.createElement(h,{...e,reactReduxForwardedRef:t})});return t.displayName=n,t.WrappedComponent=e,So(t,e)}return So(h,e)}}var No=Mo;function Po(e){let{children:t,context:n,serverState:r,store:i}=e,a=G.useMemo(()=>({store:i,subscription:ro(i),getServerState:r?()=>r:void 0}),[i,r]),o=G.useMemo(()=>i.getState(),[i]);oo(()=>{let{subscription:e}=a;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),o!==i.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}},[a,o]);let s=n||Eo;return G.createElement(s.Provider,{value:a},t)}var Fo=Po,Io=!0,Lo=`Invariant failed`;function Ro(e,t){if(!e){if(Io)throw Error(Lo);var n=typeof t==`function`?t():t,r=n?`${Lo}: ${n}`:Lo;throw Error(r)}}var zo=function(e){var t=e.top,n=e.right,r=e.bottom,i=e.left;return{top:t,right:n,bottom:r,left:i,width:n-i,height:r-t,x:i,y:t,center:{x:(n+i)/2,y:(r+t)/2}}},Bo=function(e,t){return{top:e.top-t.top,left:e.left-t.left,bottom:e.bottom+t.bottom,right:e.right+t.right}},Vo=function(e,t){return{top:e.top+t.top,left:e.left+t.left,bottom:e.bottom-t.bottom,right:e.right-t.right}},Ho=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Uo={top:0,right:0,bottom:0,left:0},Wo=function(e){var t=e.borderBox,n=e.margin,r=n===void 0?Uo:n,i=e.border,a=i===void 0?Uo:i,o=e.padding,s=o===void 0?Uo:o,c=zo(Bo(t,r)),l=zo(Vo(t,a)),u=zo(Vo(l,s));return{marginBox:c,borderBox:zo(t),paddingBox:l,contentBox:u,margin:r,border:a,padding:s}},Go=function(e){var t=e.slice(0,-2);if(e.slice(-2)!==`px`)return 0;var n=Number(t);return isNaN(n)&&Ro(!1),n},Ko=function(){return{x:window.pageXOffset,y:window.pageYOffset}},qo=function(e,t){var n=e.borderBox,r=e.border,i=e.margin,a=e.padding;return Wo({borderBox:Ho(n,t),border:r,margin:i,padding:a})},Jo=function(e,t){return t===void 0&&(t=Ko()),qo(e,t)},Yo=function(e,t){return Wo({borderBox:e,margin:{top:Go(t.marginTop),right:Go(t.marginRight),bottom:Go(t.marginBottom),left:Go(t.marginLeft)},padding:{top:Go(t.paddingTop),right:Go(t.paddingRight),bottom:Go(t.paddingBottom),left:Go(t.paddingLeft)},border:{top:Go(t.borderTopWidth),right:Go(t.borderRightWidth),bottom:Go(t.borderBottomWidth),left:Go(t.borderLeftWidth)}})},Xo=function(e){return Yo(e.getBoundingClientRect(),window.getComputedStyle(e))},Zo=function(e){var t=[],n=null,r=function(){t=[...arguments],!n&&(n=requestAnimationFrame(function(){n=null,e.apply(void 0,t)}))};return r.cancel=function(){n&&=(cancelAnimationFrame(n),null)},r};function Qo(){return Qo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Qo.apply(null,arguments)}function $o(e,t){}$o.bind(null,`warn`),$o.bind(null,`error`);function es(){}function ts(e,t){return{...e,...t}}function ns(e,t,n){let r=t.map(t=>{let r=ts(n,t.options);return e.addEventListener(t.eventName,t.fn,r),function(){e.removeEventListener(t.eventName,t.fn,r)}});return function(){r.forEach(e=>{e()})}}var rs=`Invariant failed`,is=class extends Error{};is.prototype.toString=function(){return this.message};function q(e,t){throw new is(rs)}var as=class extends G.Component{constructor(...e){super(...e),this.callbacks=null,this.unbind=es,this.onWindowError=e=>{let t=this.getCallbacks();t.isDragging()&&t.tryAbort(),e.error instanceof is&&e.preventDefault()},this.getCallbacks=()=>{if(!this.callbacks)throw Error(`Unable to find AppCallbacks in <ErrorBoundary/>`);return this.callbacks},this.setCallbacks=e=>{this.callbacks=e}}componentDidMount(){this.unbind=ns(window,[{eventName:`error`,fn:this.onWindowError}])}componentDidCatch(e){if(e instanceof is){this.setState({});return}throw e}componentWillUnmount(){this.unbind()}render(){return this.props.children(this.setCallbacks)}},os=`
45
+ `),e}po(()=>{C.current=void 0,b.current=void 0,v.current=E});let D=G.useMemo(()=>G.createElement(e,{...E,ref:i}),[i,e,E]);return G.useMemo(()=>m?G.createElement(o.Provider,{value:_},D):D,[o,D,_])}let h=G.memo(l);if(h.WrappedComponent=e,h.displayName=l.displayName=n,c){let t=G.forwardRef(function(e,t){return G.createElement(h,{...e,reactReduxForwardedRef:t})});return t.displayName=n,t.WrappedComponent=e,Oo(t,e)}return Oo(h,e)}}var zo=Ro;function Bo(e){let{children:t,context:n,serverState:r,store:i}=e,a=G.useMemo(()=>({store:i,subscription:lo(i),getServerState:r?()=>r:void 0}),[i,r]),o=G.useMemo(()=>i.getState(),[i]);po(()=>{let{subscription:e}=a;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),o!==i.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}},[a,o]);let s=n||Mo;return G.createElement(s.Provider,{value:a},t)}var Vo=Bo,Ho=!0,Uo=`Invariant failed`;function Wo(e,t){if(!e){if(Ho)throw Error(Uo);var n=typeof t==`function`?t():t,r=n?`${Uo}: ${n}`:Uo;throw Error(r)}}var Go=function(e){var t=e.top,n=e.right,r=e.bottom,i=e.left;return{top:t,right:n,bottom:r,left:i,width:n-i,height:r-t,x:i,y:t,center:{x:(n+i)/2,y:(r+t)/2}}},Ko=function(e,t){return{top:e.top-t.top,left:e.left-t.left,bottom:e.bottom+t.bottom,right:e.right+t.right}},qo=function(e,t){return{top:e.top+t.top,left:e.left+t.left,bottom:e.bottom-t.bottom,right:e.right-t.right}},Jo=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Yo={top:0,right:0,bottom:0,left:0},Xo=function(e){var t=e.borderBox,n=e.margin,r=n===void 0?Yo:n,i=e.border,a=i===void 0?Yo:i,o=e.padding,s=o===void 0?Yo:o,c=Go(Ko(t,r)),l=Go(qo(t,a)),u=Go(qo(l,s));return{marginBox:c,borderBox:Go(t),paddingBox:l,contentBox:u,margin:r,border:a,padding:s}},Zo=function(e){var t=e.slice(0,-2);if(e.slice(-2)!==`px`)return 0;var n=Number(t);return isNaN(n)&&Wo(!1),n},Qo=function(){return{x:window.pageXOffset,y:window.pageYOffset}},$o=function(e,t){var n=e.borderBox,r=e.border,i=e.margin,a=e.padding;return Xo({borderBox:Jo(n,t),border:r,margin:i,padding:a})},es=function(e,t){return t===void 0&&(t=Qo()),$o(e,t)},ts=function(e,t){return Xo({borderBox:e,margin:{top:Zo(t.marginTop),right:Zo(t.marginRight),bottom:Zo(t.marginBottom),left:Zo(t.marginLeft)},padding:{top:Zo(t.paddingTop),right:Zo(t.paddingRight),bottom:Zo(t.paddingBottom),left:Zo(t.paddingLeft)},border:{top:Zo(t.borderTopWidth),right:Zo(t.borderRightWidth),bottom:Zo(t.borderBottomWidth),left:Zo(t.borderLeftWidth)}})},ns=function(e){return ts(e.getBoundingClientRect(),window.getComputedStyle(e))},rs=function(e){var t=[],n=null,r=function(){t=[...arguments],!n&&(n=requestAnimationFrame(function(){n=null,e.apply(void 0,t)}))};return r.cancel=function(){n&&=(cancelAnimationFrame(n),null)},r};function is(){return is=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},is.apply(null,arguments)}function as(e,t){}as.bind(null,`warn`),as.bind(null,`error`);function os(){}function ss(e,t){return{...e,...t}}function cs(e,t,n){let r=t.map(t=>{let r=ss(n,t.options);return e.addEventListener(t.eventName,t.fn,r),function(){e.removeEventListener(t.eventName,t.fn,r)}});return function(){r.forEach(e=>{e()})}}var ls=`Invariant failed`,us=class extends Error{};us.prototype.toString=function(){return this.message};function K(e,t){throw new us(ls)}var ds=class extends G.Component{constructor(...e){super(...e),this.callbacks=null,this.unbind=os,this.onWindowError=e=>{let t=this.getCallbacks();t.isDragging()&&t.tryAbort(),e.error instanceof us&&e.preventDefault()},this.getCallbacks=()=>{if(!this.callbacks)throw Error(`Unable to find AppCallbacks in <ErrorBoundary/>`);return this.callbacks},this.setCallbacks=e=>{this.callbacks=e}}componentDidMount(){this.unbind=cs(window,[{eventName:`error`,fn:this.onWindowError}])}componentDidCatch(e){if(e instanceof us){this.setState({});return}throw e}componentWillUnmount(){this.unbind()}render(){return this.props.children(this.setCallbacks)}},fs=`
46
46
  Press space bar to start a drag.
47
47
  When dragging you can use the arrow keys to move the item around and escape to cancel.
48
48
  Some screen readers may require you to be in focus mode or to use your pass through key
49
- `,ss=e=>e+1,cs=e=>`
50
- You have lifted an item in position ${ss(e.source.index)}
51
- `,ls=(e,t)=>{let n=e.droppableId===t.droppableId,r=ss(e.index),i=ss(t.index);return n?`
49
+ `,ps=e=>e+1,ms=e=>`
50
+ You have lifted an item in position ${ps(e.source.index)}
51
+ `,hs=(e,t)=>{let n=e.droppableId===t.droppableId,r=ps(e.index),i=ps(t.index);return n?`
52
52
  You have moved the item from position ${r}
53
53
  to position ${i}
54
54
  `:`
@@ -56,38 +56,38 @@ ${C.current.stack}
56
56
  in list ${e.droppableId}
57
57
  to list ${t.droppableId}
58
58
  in position ${i}
59
- `},us=(e,t,n)=>t.droppableId===n.droppableId?`
59
+ `},gs=(e,t,n)=>t.droppableId===n.droppableId?`
60
60
  The item ${e}
61
61
  has been combined with ${n.draggableId}`:`
62
62
  The item ${e}
63
63
  in list ${t.droppableId}
64
64
  has been combined with ${n.draggableId}
65
65
  in list ${n.droppableId}
66
- `,ds=e=>{let t=e.destination;if(t)return ls(e.source,t);let n=e.combine;return n?us(e.draggableId,e.source,n):`You are over an area that cannot be dropped on`},fs=e=>`
66
+ `,_s=e=>{let t=e.destination;if(t)return hs(e.source,t);let n=e.combine;return n?gs(e.draggableId,e.source,n):`You are over an area that cannot be dropped on`},vs=e=>`
67
67
  The item has returned to its starting position
68
- of ${ss(e.index)}
69
- `,ps={dragHandleUsageInstructions:os,onDragStart:cs,onDragUpdate:ds,onDragEnd:e=>{if(e.reason===`CANCEL`)return`
68
+ of ${ps(e.index)}
69
+ `,ys={dragHandleUsageInstructions:fs,onDragStart:ms,onDragUpdate:_s,onDragEnd:e=>{if(e.reason===`CANCEL`)return`
70
70
  Movement cancelled.
71
- ${fs(e.source)}
71
+ ${vs(e.source)}
72
72
  `;let t=e.destination,n=e.combine;return t?`
73
73
  You have dropped the item.
74
- ${ls(e.source,t)}
74
+ ${hs(e.source,t)}
75
75
  `:n?`
76
76
  You have dropped the item.
77
- ${us(e.draggableId,e.source,n)}
77
+ ${gs(e.draggableId,e.source,n)}
78
78
  `:`
79
79
  The item has been dropped while not over a drop area.
80
- ${fs(e.source)}
81
- `}};function ms(e,t){return!!(e===t||Number.isNaN(e)&&Number.isNaN(t))}function hs(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!ms(e[n],t[n]))return!1;return!0}function J(e,t){let n=(0,G.useState)(()=>({inputs:t,result:e()}))[0],r=(0,G.useRef)(!0),i=(0,G.useRef)(n),a=r.current||t&&i.current.inputs&&hs(t,i.current.inputs)?i.current:{inputs:t,result:e()};return(0,G.useEffect)(()=>{r.current=!1,i.current=a},[a]),a.result}function Y(e,t){return J(()=>e,t)}var X={x:0,y:0},Z=(e,t)=>({x:e.x+t.x,y:e.y+t.y}),gs=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),_s=(e,t)=>e.x===t.x&&e.y===t.y,vs=e=>({x:e.x===0?0:-e.x,y:e.y===0?0:-e.y}),ys=(e,t,n=0)=>e===`x`?{x:t,y:n}:{x:n,y:t},bs=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2),xs=(e,t)=>Math.min(...t.map(t=>bs(e,t))),Ss=e=>t=>({x:e(t.x),y:e(t.y)}),Cs=(e,t)=>{let n=zo({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n},ws=(e,t)=>({top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}),Ts=e=>[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}],Es={top:0,right:0,bottom:0,left:0},Ds=(e,t)=>t?ws(e,t.scroll.diff.displacement):e,Os=(e,t,n)=>n&&n.increasedBy?{...e,[t.end]:e[t.end]+n.increasedBy[t.line]}:e,ks=(e,t)=>t&&t.shouldClipSubject?Cs(t.pageMarginBox,e):zo(e),As=({page:e,withPlaceholder:t,axis:n,frame:r})=>({page:e,withPlaceholder:t,active:ks(Os(Ds(e.marginBox,r),n,t),r)}),js=(e,t)=>{!e.frame&&q();let n=e.frame,r=gs(t,n.scroll.initial),i=vs(r),a={...n,scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:i},max:n.scroll.max}},o=As({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return{...e,frame:a,subject:o}};function Q(e,t=hs){let n=null;function r(...r){if(n&&n.lastThis===this&&t(r,n.lastArgs))return n.lastResult;let i=e.apply(this,r);return n={lastResult:i,lastArgs:r,lastThis:this},i}return r.clear=function(){n=null},r}var Ms=Q(e=>e.reduce((e,t)=>(e[t.descriptor.id]=t,e),{})),Ns=Q(e=>e.reduce((e,t)=>(e[t.descriptor.id]=t,e),{})),Ps=Q(e=>Object.values(e)),Fs=Q(e=>Object.values(e)),Is=Q((e,t)=>Fs(t).filter(t=>e===t.descriptor.droppableId).sort((e,t)=>e.descriptor.index-t.descriptor.index));function Ls(e){return e.at&&e.at.type===`REORDER`?e.at.destination:null}function Rs(e){return e.at&&e.at.type===`COMBINE`?e.at.combine:null}var zs=Q((e,t)=>t.filter(t=>t.descriptor.id!==e.descriptor.id)),Bs=({isMovingForward:e,draggable:t,destination:n,insideDestination:r,previousImpact:i})=>{if(!n.isCombineEnabled||!Ls(i))return null;function a(e){let t={type:`COMBINE`,combine:{draggableId:e,droppableId:n.descriptor.id}};return{...i,at:t}}let o=i.displaced.all,s=o.length?o[0]:null;if(e)return s?a(s):null;let c=zs(t,r);if(!s){if(!c.length)return null;let e=c[c.length-1];return a(e.descriptor.id)}let l=c.findIndex(e=>e.descriptor.id===s);l===-1&&q();let u=l-1;if(u<0)return null;let d=c[u];return a(d.descriptor.id)},Vs=(e,t)=>e.descriptor.droppableId===t.descriptor.id,Hs={point:X,value:0},Us={invisible:{},visible:{},all:[]},Ws={displaced:Us,displacedBy:Hs,at:null},Gs=(e,t)=>n=>e<=n&&n<=t,Ks=e=>{let t=Gs(e.top,e.bottom),n=Gs(e.left,e.right);return r=>{if(t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right))return!0;let i=t(r.top)||t(r.bottom),a=n(r.left)||n(r.right);if(i&&a)return!0;let o=r.top<e.top&&r.bottom>e.bottom,s=r.left<e.left&&r.right>e.right;return o&&s?!0:o&&a||s&&i}},qs=e=>{let t=Gs(e.top,e.bottom),n=Gs(e.left,e.right);return e=>t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)},Js={direction:`vertical`,line:`y`,crossAxisLine:`x`,start:`top`,end:`bottom`,size:`height`,crossAxisStart:`left`,crossAxisEnd:`right`,crossAxisSize:`width`},Ys={direction:`horizontal`,line:`x`,crossAxisLine:`y`,start:`left`,end:`right`,size:`width`,crossAxisStart:`top`,crossAxisEnd:`bottom`,crossAxisSize:`height`},Xs=e=>t=>{let n=Gs(t.top,t.bottom),r=Gs(t.left,t.right);return t=>e===Js?n(t.top)&&n(t.bottom):r(t.left)&&r(t.right)},Zs=(e,t)=>ws(e,t.frame?t.frame.scroll.diff.displacement:X),Qs=(e,t,n)=>t.subject.active?n(t.subject.active)(e):!1,$s=(e,t,n)=>n(t)(e),ec=({target:e,destination:t,viewport:n,withDroppableDisplacement:r,isVisibleThroughFrameFn:i})=>{let a=r?Zs(e,t):e;return Qs(a,t,i)&&$s(a,n,i)},tc=e=>ec({...e,isVisibleThroughFrameFn:Ks}),nc=e=>ec({...e,isVisibleThroughFrameFn:qs}),rc=e=>ec({...e,isVisibleThroughFrameFn:Xs(e.destination.axis)}),ic=(e,t,n)=>{if(typeof n==`boolean`)return n;if(!t)return!0;let{invisible:r,visible:i}=t;if(r[e])return!1;let a=i[e];return a?a.shouldAnimate:!0};function ac(e,t){let n=e.page.marginBox;return zo(Bo(n,{top:t.point.y,right:0,bottom:0,left:t.point.x}))}function oc({afterDragging:e,destination:t,displacedBy:n,viewport:r,forceShouldAnimate:i,last:a}){return e.reduce(function(e,o){let s=ac(o,n),c=o.descriptor.id;if(e.all.push(c),!tc({target:s,destination:t,viewport:r,withDroppableDisplacement:!0}))return e.invisible[o.descriptor.id]=!0,e;let l={draggableId:c,shouldAnimate:ic(c,a,i)};return e.visible[c]=l,e},{all:[],visible:{},invisible:{}})}function sc(e,t){if(!e.length)return 0;let n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}function cc({insideDestination:e,inHomeList:t,displacedBy:n,destination:r}){let i=sc(e,{inHomeList:t});return{displaced:Us,displacedBy:n,at:{type:`REORDER`,destination:{droppableId:r.descriptor.id,index:i}}}}function lc({draggable:e,insideDestination:t,destination:n,viewport:r,displacedBy:i,last:a,index:o,forceShouldAnimate:s}){let c=Vs(e,n);if(o==null)return cc({insideDestination:t,inHomeList:c,displacedBy:i,destination:n});let l=t.find(e=>e.descriptor.index===o);if(!l)return cc({insideDestination:t,inHomeList:c,displacedBy:i,destination:n});let u=zs(e,t),d=t.indexOf(l);return{displaced:oc({afterDragging:u.slice(d),destination:n,displacedBy:i,last:a,viewport:r.frame,forceShouldAnimate:s}),displacedBy:i,at:{type:`REORDER`,destination:{droppableId:n.descriptor.id,index:o}}}}function uc(e,t){return!!t.effected[e]}var dc=({isMovingForward:e,destination:t,draggables:n,combine:r,afterCritical:i})=>{if(!t.isCombineEnabled)return null;let a=r.draggableId,o=n[a].descriptor.index;return uc(a,i)?e?o:o-1:e?o+1:o},fc=({isMovingForward:e,isInHomeList:t,insideDestination:n,location:r})=>{if(!n.length)return null;let i=r.index,a=e?i+1:i-1,o=n[0].descriptor.index,s=n[n.length-1].descriptor.index,c=t?s:s+1;return a<o||a>c?null:a},pc=({isMovingForward:e,isInHomeList:t,draggable:n,draggables:r,destination:i,insideDestination:a,previousImpact:o,viewport:s,afterCritical:c})=>{let l=o.at;if(!l&&q(),l.type===`REORDER`){let r=fc({isMovingForward:e,isInHomeList:t,location:l.destination,insideDestination:a});return r==null?null:lc({draggable:n,insideDestination:a,destination:i,viewport:s,last:o.displaced,displacedBy:o.displacedBy,index:r})}let u=dc({isMovingForward:e,destination:i,displaced:o.displaced,draggables:r,combine:l.combine,afterCritical:c});return u==null?null:lc({draggable:n,insideDestination:a,destination:i,viewport:s,last:o.displaced,displacedBy:o.displacedBy,index:u})},mc=({displaced:e,afterCritical:t,combineWith:n,displacedBy:r})=>{let i=!!(e.visible[n]||e.invisible[n]);return uc(n,t)?i?X:vs(r.point):i?r.point:X},hc=({afterCritical:e,impact:t,draggables:n})=>{let r=Rs(t);!r&&q();let i=r.draggableId,a=n[i].page.borderBox.center;return Z(a,mc({displaced:t.displaced,afterCritical:e,combineWith:i,displacedBy:t.displacedBy}))},gc=(e,t)=>t.margin[e.start]+t.borderBox[e.size]/2,_c=(e,t)=>t.margin[e.end]+t.borderBox[e.size]/2,vc=(e,t,n)=>t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2,yc=({axis:e,moveRelativeTo:t,isMoving:n})=>ys(e.line,t.marginBox[e.end]+gc(e,n),vc(e,t.marginBox,n)),bc=({axis:e,moveRelativeTo:t,isMoving:n})=>ys(e.line,t.marginBox[e.start]-_c(e,n),vc(e,t.marginBox,n)),xc=({axis:e,moveInto:t,isMoving:n})=>ys(e.line,t.contentBox[e.start]+gc(e,n),vc(e,t.contentBox,n)),Sc=({impact:e,draggable:t,draggables:n,droppable:r,afterCritical:i})=>{let a=Is(r.descriptor.id,n),o=t.page,s=r.axis;if(!a.length)return xc({axis:s,moveInto:r.page,isMoving:o});let{displaced:c,displacedBy:l}=e,u=c.all[0];if(u){let e=n[u];return uc(u,i)?bc({axis:s,moveRelativeTo:e.page,isMoving:o}):bc({axis:s,moveRelativeTo:qo(e.page,l.point),isMoving:o})}let d=a[a.length-1];return d.descriptor.id===t.descriptor.id?o.borderBox.center:uc(d.descriptor.id,i)?yc({axis:s,moveRelativeTo:qo(d.page,vs(i.displacedBy.point)),isMoving:o}):yc({axis:s,moveRelativeTo:d.page,isMoving:o})},Cc=(e,t)=>{let n=e.frame;return n?Z(t,n.scroll.diff.displacement):t},wc=({impact:e,draggable:t,droppable:n,draggables:r,afterCritical:i})=>{let a=t.page.borderBox.center,o=e.at;return!n||!o?a:o.type===`REORDER`?Sc({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:i}):hc({impact:e,draggables:r,afterCritical:i})},Tc=e=>{let t=wc(e),n=e.droppable;return n?Cc(n,t):t},Ec=(e,t)=>{let n=gs(t,e.scroll.initial),r=vs(n);return{frame:zo({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function Dc(e,t){return e.map(e=>t[e])}function Oc(e,t){for(let n=0;n<t.length;n++){let r=t[n].visible[e];if(r)return r}return null}var kc=({impact:e,viewport:t,destination:n,draggables:r,maxScrollChange:i})=>{let a=Ec(t,Z(t.scroll.current,i)),o=n.frame?js(n,Z(n.frame.scroll.current,i)):n,s=e.displaced,c=oc({afterDragging:Dc(s.all,r),destination:n,displacedBy:e.displacedBy,viewport:a.frame,last:s,forceShouldAnimate:!1}),l=oc({afterDragging:Dc(s.all,r),destination:o,displacedBy:e.displacedBy,viewport:t.frame,last:s,forceShouldAnimate:!1}),u={},d={},f=[s,c,l];return s.all.forEach(e=>{let t=Oc(e,f);if(t){d[e]=t;return}u[e]=!0}),{...e,displaced:{all:s.all,invisible:u,visible:d}}},Ac=(e,t)=>Z(e.scroll.diff.displacement,t),jc=({pageBorderBoxCenter:e,draggable:t,viewport:n})=>{let r=gs(Ac(n,e),t.page.borderBox.center);return Z(t.client.borderBox.center,r)},Mc=({draggable:e,destination:t,newPageBorderBoxCenter:n,viewport:r,withDroppableDisplacement:i,onlyOnMainAxis:a=!1})=>{let o=gs(n,e.page.borderBox.center),s={target:ws(e.page.borderBox,o),destination:t,withDroppableDisplacement:i,viewport:r};return a?rc(s):nc(s)},Nc=({isMovingForward:e,draggable:t,destination:n,draggables:r,previousImpact:i,viewport:a,previousPageBorderBoxCenter:o,previousClientSelection:s,afterCritical:c})=>{if(!n.isEnabled)return null;let l=Is(n.descriptor.id,r),u=Vs(t,n),d=Bs({isMovingForward:e,draggable:t,destination:n,insideDestination:l,previousImpact:i})||pc({isMovingForward:e,isInHomeList:u,draggable:t,draggables:r,destination:n,insideDestination:l,previousImpact:i,viewport:a,afterCritical:c});if(!d)return null;let f=Tc({impact:d,draggable:t,droppable:n,draggables:r,afterCritical:c});if(Mc({draggable:t,destination:n,newPageBorderBoxCenter:f,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:jc({pageBorderBoxCenter:f,draggable:t,viewport:a}),impact:d,scrollJumpRequest:null};let p=gs(f,o);return{clientSelection:s,impact:kc({impact:d,viewport:a,destination:n,draggables:r,maxScrollChange:p}),scrollJumpRequest:p}},Pc=e=>{let t=e.subject.active;return!t&&q(),t},Fc=({isMovingForward:e,pageBorderBoxCenter:t,source:n,droppables:r,viewport:i})=>{let a=n.subject.active;if(!a)return null;let o=n.axis,s=Gs(a[o.start],a[o.end]),c=Ps(r).filter(e=>e!==n).filter(e=>e.isEnabled).filter(e=>!!e.subject.active).filter(e=>Ks(i.frame)(Pc(e))).filter(t=>{let n=Pc(t);return e?a[o.crossAxisEnd]<n[o.crossAxisEnd]:n[o.crossAxisStart]<a[o.crossAxisStart]}).filter(e=>{let t=Pc(e),n=Gs(t[o.start],t[o.end]);return s(t[o.start])||s(t[o.end])||n(a[o.start])||n(a[o.end])}).sort((t,n)=>{let r=Pc(t)[o.crossAxisStart],i=Pc(n)[o.crossAxisStart];return e?r-i:i-r}).filter((e,t,n)=>Pc(e)[o.crossAxisStart]===Pc(n[0])[o.crossAxisStart]);if(!c.length)return null;if(c.length===1)return c[0];let l=c.filter(e=>Gs(Pc(e)[o.start],Pc(e)[o.end])(t[o.line]));return l.length===1?l[0]:l.length>1?l.sort((e,t)=>Pc(e)[o.start]-Pc(t)[o.start])[0]:c.sort((e,n)=>{let r=xs(t,Ts(Pc(e))),i=xs(t,Ts(Pc(n)));return r===i?Pc(e)[o.start]-Pc(n)[o.start]:r-i})[0]},Ic=(e,t)=>{let n=e.page.borderBox.center;return uc(e.descriptor.id,t)?gs(n,t.displacedBy.point):n},Lc=(e,t)=>{let n=e.page.borderBox;return uc(e.descriptor.id,t)?ws(n,vs(t.displacedBy.point)):n},Rc=({pageBorderBoxCenter:e,viewport:t,destination:n,insideDestination:r,afterCritical:i})=>r.filter(e=>nc({target:Lc(e,i),destination:n,viewport:t.frame,withDroppableDisplacement:!0})).sort((t,r)=>{let a=bs(e,Cc(n,Ic(t,i))),o=bs(e,Cc(n,Ic(r,i)));return a<o?-1:o<a?1:t.descriptor.index-r.descriptor.index})[0]||null,zc=Q(function(e,t){let n=t[e.line];return{value:n,point:ys(e.line,n)}}),Bc=(e,t,n)=>{let r=e.axis;if(e.descriptor.mode===`virtual`)return ys(r.line,t[r.line]);let i=e.subject.page.contentBox[r.size],a=Is(e.descriptor.id,n).reduce((e,t)=>e+t.client.marginBox[r.size],0)+t[r.line]-i;return a<=0?null:ys(r.line,a)},Vc=(e,t)=>({...e,scroll:{...e.scroll,max:t}}),Hc=(e,t,n)=>{let r=e.frame;Vs(t,e)&&q(),e.subject.withPlaceholder&&q();let i=zc(e.axis,t.displaceBy).point,a=Bc(e,i,n),o={placeholderSize:i,increasedBy:a,oldFrameMaxScroll:e.frame?e.frame.scroll.max:null};if(!r){let t=As({page:e.subject.page,withPlaceholder:o,axis:e.axis,frame:e.frame});return{...e,subject:t}}let s=Vc(r,a?Z(r.scroll.max,a):r.scroll.max),c=As({page:e.subject.page,withPlaceholder:o,axis:e.axis,frame:s});return{...e,subject:c,frame:s}},Uc=e=>{let t=e.subject.withPlaceholder;!t&&q();let n=e.frame;if(!n){let t=As({page:e.subject.page,axis:e.axis,frame:null,withPlaceholder:null});return{...e,subject:t}}let r=t.oldFrameMaxScroll;!r&&q();let i=Vc(n,r),a=As({page:e.subject.page,axis:e.axis,frame:i,withPlaceholder:null});return{...e,subject:a,frame:i}},Wc=({previousPageBorderBoxCenter:e,moveRelativeTo:t,insideDestination:n,draggable:r,draggables:i,destination:a,viewport:o,afterCritical:s})=>{if(!t){if(n.length)return null;let e={displaced:Us,displacedBy:Hs,at:{type:`REORDER`,destination:{droppableId:a.descriptor.id,index:0}}},t=Tc({impact:e,draggable:r,droppable:a,draggables:i,afterCritical:s});return Mc({draggable:r,destination:Vs(r,a)?a:Hc(a,r,i),newPageBorderBoxCenter:t,viewport:o.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0})?e:null}let c=e[a.axis.line]<=t.page.borderBox.center[a.axis.line],l=(()=>{let e=t.descriptor.index;return t.descriptor.id===r.descriptor.id||c?e:e+1})();return lc({draggable:r,insideDestination:n,destination:a,viewport:o,displacedBy:zc(a.axis,r.displaceBy),last:Us,index:l})},Gc=({isMovingForward:e,previousPageBorderBoxCenter:t,draggable:n,isOver:r,draggables:i,droppables:a,viewport:o,afterCritical:s})=>{let c=Fc({isMovingForward:e,pageBorderBoxCenter:t,source:r,droppables:a,viewport:o});if(!c)return null;let l=Is(c.descriptor.id,i),u=Wc({previousPageBorderBoxCenter:t,destination:c,draggable:n,draggables:i,moveRelativeTo:Rc({pageBorderBoxCenter:t,viewport:o,destination:c,insideDestination:l,afterCritical:s}),insideDestination:l,viewport:o,afterCritical:s});return u?{clientSelection:jc({pageBorderBoxCenter:Tc({impact:u,draggable:n,droppable:c,draggables:i,afterCritical:s}),draggable:n,viewport:o}),impact:u,scrollJumpRequest:null}:null},Kc=e=>{let t=e.at;return t?t.type===`REORDER`?t.destination.droppableId:t.combine.droppableId:null},qc=(e,t)=>{let n=Kc(e);return n?t[n]:null},Jc=({state:e,type:t})=>{let n=qc(e.impact,e.dimensions.droppables),r=!!n,i=e.dimensions.droppables[e.critical.droppable.id],a=n||i,o=a.axis.direction,s=o===`vertical`&&(t===`MOVE_UP`||t===`MOVE_DOWN`)||o===`horizontal`&&(t===`MOVE_LEFT`||t===`MOVE_RIGHT`);if(s&&!r)return null;let c=t===`MOVE_DOWN`||t===`MOVE_RIGHT`,l=e.dimensions.draggables[e.critical.draggable.id],u=e.current.page.borderBoxCenter,{draggables:d,droppables:f}=e.dimensions;return s?Nc({isMovingForward:c,previousPageBorderBoxCenter:u,draggable:l,destination:a,draggables:d,viewport:e.viewport,previousClientSelection:e.current.client.selection,previousImpact:e.impact,afterCritical:e.afterCritical}):Gc({isMovingForward:c,previousPageBorderBoxCenter:u,draggable:l,isOver:a,draggables:d,droppables:f,viewport:e.viewport,afterCritical:e.afterCritical})};function Yc(e){return e.phase===`DRAGGING`||e.phase===`COLLECTING`}function Xc(e){let t=Gs(e.top,e.bottom),n=Gs(e.left,e.right);return function(e){return t(e.y)&&n(e.x)}}function Zc(e,t){return e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top}function Qc({pageBorderBox:e,draggable:t,candidates:n}){let r=t.page.borderBox.center,i=n.map(t=>{let n=t.axis,i=ys(t.axis.line,e.center[n.line],t.page.borderBox.center[n.crossAxisLine]);return{id:t.descriptor.id,distance:bs(r,i)}}).sort((e,t)=>t.distance-e.distance);return i[0]?i[0].id:null}function $c({pageBorderBox:e,draggable:t,droppables:n}){let r=Ps(n).filter(t=>{if(!t.isEnabled)return!1;let n=t.subject.active;if(!n||!Zc(e,n))return!1;if(Xc(n)(e.center))return!0;let r=t.axis,i=n.center[r.crossAxisLine],a=e[r.crossAxisStart],o=e[r.crossAxisEnd],s=Gs(n[r.crossAxisStart],n[r.crossAxisEnd]),c=s(a),l=s(o);return!c&&!l?!0:c?a<i:o>i});return r.length?r.length===1?r[0].descriptor.id:Qc({pageBorderBox:e,draggable:t,candidates:r}):null}var el=(e,t)=>zo(ws(e,t)),tl=(e,t)=>{let n=e.frame;return n?el(t,n.scroll.diff.value):t};function nl({displaced:e,id:t}){return!!(e.visible[t]||e.invisible[t])}function rl({draggable:e,closest:t,inHomeList:n}){return t?n&&t.descriptor.index>e.descriptor.index?t.descriptor.index-1:t.descriptor.index:null}var il=({pageBorderBoxWithDroppableScroll:e,draggable:t,destination:n,insideDestination:r,last:i,viewport:a,afterCritical:o})=>{let s=n.axis,c=zc(n.axis,t.displaceBy),l=c.value,u=e[s.start],d=e[s.end];return lc({draggable:t,insideDestination:r,destination:n,viewport:a,last:i,displacedBy:c,index:rl({draggable:t,closest:zs(t,r).find(e=>{let t=e.descriptor.id,n=e.page.borderBox.center[s.line],r=uc(t,o),a=nl({displaced:i,id:t});return r?a?d<=n:u<n-l:a?d<=n+l:u<n})||null,inHomeList:Vs(t,n)})})},al=4,ol=({draggable:e,pageBorderBoxWithDroppableScroll:t,previousImpact:n,destination:r,insideDestination:i,afterCritical:a})=>{if(!r.isCombineEnabled)return null;let o=r.axis,s=zc(r.axis,e.displaceBy),c=s.value,l=t[o.start],u=t[o.end],d=zs(e,i).find(e=>{let t=e.descriptor.id,r=e.page.borderBox,i=r[o.size]/al,s=uc(t,a),d=nl({displaced:n.displaced,id:t});return s?d?u>r[o.start]+i&&u<r[o.end]-i:l>r[o.start]-c+i&&l<r[o.end]-c-i:d?u>r[o.start]+c+i&&u<r[o.end]+c-i:l>r[o.start]+i&&l<r[o.end]-i});return d?{displacedBy:s,displaced:n.displaced,at:{type:`COMBINE`,combine:{draggableId:d.descriptor.id,droppableId:r.descriptor.id}}}:null},sl=({pageOffset:e,draggable:t,draggables:n,droppables:r,previousImpact:i,viewport:a,afterCritical:o})=>{let s=el(t.page.borderBox,e),c=$c({pageBorderBox:s,draggable:t,droppables:r});if(!c)return Ws;let l=r[c],u=Is(l.descriptor.id,n),d=tl(l,s);return ol({pageBorderBoxWithDroppableScroll:d,draggable:t,previousImpact:i,destination:l,insideDestination:u,afterCritical:o})||il({pageBorderBoxWithDroppableScroll:d,draggable:t,destination:l,insideDestination:u,last:i.displaced,viewport:a,afterCritical:o})},cl=(e,t)=>({...e,[t.descriptor.id]:t}),ll=({previousImpact:e,impact:t,droppables:n})=>{let r=Kc(e),i=Kc(t);if(!r||r===i)return n;let a=n[r];return a.subject.withPlaceholder?cl(n,Uc(a)):n},ul=({draggable:e,draggables:t,droppables:n,previousImpact:r,impact:i})=>{let a=ll({previousImpact:r,impact:i,droppables:n}),o=Kc(i);if(!o)return a;let s=n[o];return Vs(e,s)||s.subject.withPlaceholder?a:cl(a,Hc(s,e,t))},dl=({state:e,clientSelection:t,dimensions:n,viewport:r,impact:i,scrollJumpRequest:a})=>{let o=r||e.viewport,s=n||e.dimensions,c=t||e.current.client.selection,l=gs(c,e.initial.client.selection),u={offset:l,selection:c,borderBoxCenter:Z(e.initial.client.borderBoxCenter,l)},d={selection:Z(u.selection,o.scroll.current),borderBoxCenter:Z(u.borderBoxCenter,o.scroll.current),offset:Z(u.offset,o.scroll.diff.value)},f={client:u,page:d};if(e.phase===`COLLECTING`)return{...e,dimensions:s,viewport:o,current:f};let p=s.draggables[e.critical.draggable.id],m=i||sl({pageOffset:d.offset,draggable:p,draggables:s.draggables,droppables:s.droppables,previousImpact:e.impact,viewport:o,afterCritical:e.afterCritical}),h=ul({draggable:p,impact:m,previousImpact:e.impact,draggables:s.draggables,droppables:s.droppables});return{...e,current:f,dimensions:{draggables:s.draggables,droppables:h},impact:m,viewport:o,scrollJumpRequest:a||null,forceShouldAnimate:a?!1:null}};function fl(e,t){return e.map(e=>t[e])}var pl=({impact:e,viewport:t,draggables:n,destination:r,forceShouldAnimate:i})=>{let a=e.displaced,o=oc({afterDragging:fl(a.all,n),destination:r,displacedBy:e.displacedBy,viewport:t.frame,forceShouldAnimate:i,last:a});return{...e,displaced:o}},ml=({impact:e,draggable:t,droppable:n,draggables:r,viewport:i,afterCritical:a})=>jc({pageBorderBoxCenter:Tc({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:a}),draggable:t,viewport:i}),hl=({state:e,dimensions:t,viewport:n})=>{e.movementMode!==`SNAP`&&q();let r=e.impact,i=n||e.viewport,a=t||e.dimensions,{draggables:o,droppables:s}=a,c=o[e.critical.draggable.id],l=Kc(r);!l&&q();let u=s[l],d=pl({impact:r,viewport:i,destination:u,draggables:o});return dl({impact:d,clientSelection:ml({impact:d,draggable:c,droppable:u,draggables:o,viewport:i,afterCritical:e.afterCritical}),state:e,dimensions:a,viewport:i})},gl=e=>({index:e.index,droppableId:e.droppableId}),_l=({draggable:e,home:t,draggables:n,viewport:r})=>{let i=zc(t.axis,e.displaceBy),a=Is(t.descriptor.id,n),o=a.indexOf(e);o===-1&&q();let s=a.slice(o+1),c=s.reduce((e,t)=>(e[t.descriptor.id]=!0,e),{}),l={inVirtualList:t.descriptor.mode===`virtual`,displacedBy:i,effected:c};return{impact:{displaced:oc({afterDragging:s,destination:t,displacedBy:i,last:null,viewport:r.frame,forceShouldAnimate:!1}),displacedBy:i,at:{type:`REORDER`,destination:gl(e.descriptor)}},afterCritical:l}},vl=(e,t)=>({draggables:e.draggables,droppables:cl(e.droppables,t)}),yl=({draggable:e,offset:t,initialWindowScroll:n})=>{let r=qo(e.client,t),i=Jo(r,n);return{...e,placeholder:{...e.placeholder,client:r},client:r,page:i}},bl=e=>{let t=e.frame;return!t&&q(),t},xl=({additions:e,updatedDroppables:t,viewport:n})=>{let r=n.scroll.diff.value;return e.map(e=>{let i=t[e.descriptor.droppableId],a=bl(i).scroll.diff.value;return yl({draggable:e,offset:Z(r,a),initialWindowScroll:n.scroll.initial})})},Sl=({state:e,published:t})=>{let n=t.modified.map(t=>{let n=e.dimensions.droppables[t.droppableId];return js(n,t.scroll)}),r={...e.dimensions.droppables,...Ms(n)},i=Ns(xl({additions:t.additions,updatedDroppables:r,viewport:e.viewport})),a={...e.dimensions.draggables,...i};t.removals.forEach(e=>{delete a[e]});let o={droppables:r,draggables:a},s=Kc(e.impact),c=s?o.droppables[s]:null,l=o.draggables[e.critical.draggable.id],u=o.droppables[e.critical.droppable.id],{impact:d,afterCritical:f}=_l({draggable:l,home:u,draggables:a,viewport:e.viewport}),p=c&&c.isCombineEnabled?e.impact:d,m=sl({pageOffset:e.current.page.offset,draggable:o.draggables[e.critical.draggable.id],draggables:o.draggables,droppables:o.droppables,previousImpact:p,viewport:e.viewport,afterCritical:f}),h={...e,phase:`DRAGGING`,impact:m,onLiftImpact:d,dimensions:o,afterCritical:f,forceShouldAnimate:!1};return e.phase===`COLLECTING`?h:{...h,phase:`DROP_PENDING`,reason:e.reason,isWaiting:!1}},Cl=e=>e.movementMode===`SNAP`,wl=(e,t,n)=>{let r=vl(e.dimensions,t);return!Cl(e)||n?dl({state:e,dimensions:r}):hl({state:e,dimensions:r})};function Tl(e){return e.isDragging&&e.movementMode===`SNAP`?{...e,scrollJumpRequest:null}:e}var El={phase:`IDLE`,completed:null,shouldFlush:!1},Dl=(e=El,t)=>{if(t.type===`FLUSH`)return{...El,shouldFlush:!0};if(t.type===`INITIAL_PUBLISH`){e.phase!==`IDLE`&&q();let{critical:n,clientSelection:r,viewport:i,dimensions:a,movementMode:o}=t.payload,s=a.draggables[n.draggable.id],c=a.droppables[n.droppable.id],l={selection:r,borderBoxCenter:s.client.borderBox.center,offset:X},u={client:l,page:{selection:Z(l.selection,i.scroll.initial),borderBoxCenter:Z(l.selection,i.scroll.initial),offset:Z(l.selection,i.scroll.diff.value)}},d=Ps(a.droppables).every(e=>!e.isFixedOnPage),{impact:f,afterCritical:p}=_l({draggable:s,home:c,draggables:a.draggables,viewport:i});return{phase:`DRAGGING`,isDragging:!0,critical:n,movementMode:o,dimensions:a,initial:u,current:u,isWindowScrollAllowed:d,impact:f,afterCritical:p,onLiftImpact:f,viewport:i,scrollJumpRequest:null,forceShouldAnimate:null}}if(t.type===`COLLECTION_STARTING`)return e.phase===`COLLECTING`||e.phase===`DROP_PENDING`?e:(e.phase!==`DRAGGING`&&q(),{...e,phase:`COLLECTING`});if(t.type===`PUBLISH_WHILE_DRAGGING`)return!(e.phase===`COLLECTING`||e.phase===`DROP_PENDING`)&&q(),Sl({state:e,published:t.payload});if(t.type===`MOVE`){if(e.phase===`DROP_PENDING`)return e;!Yc(e)&&q();let{client:n}=t.payload;return _s(n,e.current.client.selection)?e:dl({state:e,clientSelection:n,impact:Cl(e)?e.impact:null})}if(t.type===`UPDATE_DROPPABLE_SCROLL`){if(e.phase===`DROP_PENDING`||e.phase===`COLLECTING`)return Tl(e);!Yc(e)&&q();let{id:n,newScroll:r}=t.payload,i=e.dimensions.droppables[n];return i?wl(e,js(i,r),!1):e}if(t.type===`UPDATE_DROPPABLE_IS_ENABLED`){if(e.phase===`DROP_PENDING`)return e;!Yc(e)&&q();let{id:n,isEnabled:r}=t.payload,i=e.dimensions.droppables[n];return!i&&q(),i.isEnabled===r&&q(),wl(e,{...i,isEnabled:r},!0)}if(t.type===`UPDATE_DROPPABLE_IS_COMBINE_ENABLED`){if(e.phase===`DROP_PENDING`)return e;!Yc(e)&&q();let{id:n,isCombineEnabled:r}=t.payload,i=e.dimensions.droppables[n];return!i&&q(),i.isCombineEnabled===r&&q(),wl(e,{...i,isCombineEnabled:r},!0)}if(t.type===`MOVE_BY_WINDOW_SCROLL`){if(e.phase===`DROP_PENDING`||e.phase===`DROP_ANIMATING`)return e;!Yc(e)&&q(),!e.isWindowScrollAllowed&&q();let n=t.payload.newScroll;if(_s(e.viewport.scroll.current,n))return Tl(e);let r=Ec(e.viewport,n);return Cl(e)?hl({state:e,viewport:r}):dl({state:e,viewport:r})}if(t.type===`UPDATE_VIEWPORT_MAX_SCROLL`){if(!Yc(e))return e;let n=t.payload.maxScroll;if(_s(n,e.viewport.scroll.max))return e;let r={...e.viewport,scroll:{...e.viewport.scroll,max:n}};return{...e,viewport:r}}if(t.type===`MOVE_UP`||t.type===`MOVE_DOWN`||t.type===`MOVE_LEFT`||t.type===`MOVE_RIGHT`){if(e.phase===`COLLECTING`||e.phase===`DROP_PENDING`)return e;e.phase!==`DRAGGING`&&q();let n=Jc({state:e,type:t.type});return n?dl({state:e,impact:n.impact,clientSelection:n.clientSelection,scrollJumpRequest:n.scrollJumpRequest}):e}if(t.type===`DROP_PENDING`){let n=t.payload.reason;return e.phase!==`COLLECTING`&&q(),{...e,phase:`DROP_PENDING`,isWaiting:!0,reason:n}}if(t.type===`DROP_ANIMATE`){let{completed:n,dropDuration:r,newHomeClientOffset:i}=t.payload;return!(e.phase===`DRAGGING`||e.phase===`DROP_PENDING`)&&q(),{phase:`DROP_ANIMATING`,completed:n,dropDuration:r,newHomeClientOffset:i,dimensions:e.dimensions}}if(t.type===`DROP_COMPLETE`){let{completed:e}=t.payload;return{phase:`IDLE`,completed:e,shouldFlush:!1}}return e};function $(e,t){return e instanceof Object&&`type`in e&&e.type===t}var Ol=e=>({type:`BEFORE_INITIAL_CAPTURE`,payload:e}),kl=e=>({type:`LIFT`,payload:e}),Al=e=>({type:`INITIAL_PUBLISH`,payload:e}),jl=e=>({type:`PUBLISH_WHILE_DRAGGING`,payload:e}),Ml=()=>({type:`COLLECTION_STARTING`,payload:null}),Nl=e=>({type:`UPDATE_DROPPABLE_SCROLL`,payload:e}),Pl=e=>({type:`UPDATE_DROPPABLE_IS_ENABLED`,payload:e}),Fl=e=>({type:`UPDATE_DROPPABLE_IS_COMBINE_ENABLED`,payload:e}),Il=e=>({type:`MOVE`,payload:e}),Ll=e=>({type:`MOVE_BY_WINDOW_SCROLL`,payload:e}),Rl=e=>({type:`UPDATE_VIEWPORT_MAX_SCROLL`,payload:e}),zl=()=>({type:`MOVE_UP`,payload:null}),Bl=()=>({type:`MOVE_DOWN`,payload:null}),Vl=()=>({type:`MOVE_RIGHT`,payload:null}),Hl=()=>({type:`MOVE_LEFT`,payload:null}),Ul=()=>({type:`FLUSH`,payload:null}),Wl=e=>({type:`DROP_ANIMATE`,payload:e}),Gl=e=>({type:`DROP_COMPLETE`,payload:e}),Kl=e=>({type:`DROP`,payload:e}),ql=e=>({type:`DROP_PENDING`,payload:e}),Jl=()=>({type:`DROP_ANIMATION_FINISHED`,payload:null}),Yl=e=>({getState:t,dispatch:n})=>r=>i=>{if(!$(i,`LIFT`)){r(i);return}let{id:a,clientSelection:o,movementMode:s}=i.payload,c=t();c.phase===`DROP_ANIMATING`&&n(Gl({completed:c.completed})),t().phase!==`IDLE`&&q(),n(Ul()),n(Ol({draggableId:a,movementMode:s}));let l={draggableId:a,scrollOptions:{shouldPublishImmediately:s===`SNAP`}},{critical:u,dimensions:d,viewport:f}=e.startPublishing(l);n(Al({critical:u,dimensions:d,clientSelection:o,movementMode:s,viewport:f}))},Xl=e=>()=>t=>n=>{$(n,`INITIAL_PUBLISH`)&&e.dragging(),$(n,`DROP_ANIMATE`)&&e.dropping(n.payload.completed.result.reason),($(n,`FLUSH`)||$(n,`DROP_COMPLETE`))&&e.resting(),t(n)},Zl={outOfTheWay:`cubic-bezier(0.2, 0, 0, 1)`,drop:`cubic-bezier(.2,1,.1,1)`},Ql={opacity:{drop:0,combining:.7},scale:{drop:.75}},$l={outOfTheWay:.2,minDropTime:.33,maxDropTime:.55},eu=`${$l.outOfTheWay}s ${Zl.outOfTheWay}`,tu={fluid:`opacity ${eu}`,snap:`transform ${eu}, opacity ${eu}`,drop:e=>{let t=`${e}s ${Zl.drop}`;return`transform ${t}, opacity ${t}`},outOfTheWay:`transform ${eu}`,placeholder:`height ${eu}, width ${eu}, margin ${eu}`},nu=e=>_s(e,X)?void 0:`translate(${e.x}px, ${e.y}px)`,ru={moveTo:nu,drop:(e,t)=>{let n=nu(e);if(n)return t?`${n} scale(${Ql.scale.drop})`:n}},{minDropTime:iu,maxDropTime:au}=$l,ou=au-iu,su=1500,cu=.6,lu=({current:e,destination:t,reason:n})=>{let r=bs(e,t);if(r<=0)return iu;if(r>=su)return au;let i=iu+r/su*ou,a=n===`CANCEL`?i*cu:i;return Number(a.toFixed(2))},uu=({impact:e,draggable:t,dimensions:n,viewport:r,afterCritical:i})=>{let{draggables:a,droppables:o}=n,s=Kc(e),c=s?o[s]:null,l=o[t.descriptor.droppableId];return gs(ml({impact:e,draggable:t,draggables:a,afterCritical:i,droppable:c||l,viewport:r}),t.client.borderBox.center)},du=({draggables:e,reason:t,lastImpact:n,home:r,viewport:i,onLiftImpact:a})=>!n.at||t!==`DROP`?{impact:pl({draggables:e,impact:a,destination:r,viewport:i,forceShouldAnimate:!0}),didDropInsideDroppable:!1}:n.at.type===`REORDER`?{impact:n,didDropInsideDroppable:!0}:{impact:{...n,displaced:Us},didDropInsideDroppable:!0},fu=({getState:e,dispatch:t})=>n=>r=>{if(!$(r,`DROP`)){n(r);return}let i=e(),a=r.payload.reason;if(i.phase===`COLLECTING`){t(ql({reason:a}));return}if(i.phase===`IDLE`)return;i.phase===`DROP_PENDING`&&i.isWaiting&&q(),!(i.phase===`DRAGGING`||i.phase===`DROP_PENDING`)&&q();let o=i.critical,s=i.dimensions,c=s.draggables[i.critical.draggable.id],{impact:l,didDropInsideDroppable:u}=du({reason:a,lastImpact:i.impact,afterCritical:i.afterCritical,onLiftImpact:i.onLiftImpact,home:i.dimensions.droppables[i.critical.droppable.id],viewport:i.viewport,draggables:i.dimensions.draggables}),d=u?Ls(l):null,f=u?Rs(l):null,p={index:o.draggable.index,droppableId:o.droppable.id},m={draggableId:c.descriptor.id,type:c.descriptor.type,source:p,reason:a,mode:i.movementMode,destination:d,combine:f},h=uu({impact:l,draggable:c,dimensions:s,viewport:i.viewport,afterCritical:i.afterCritical}),g={critical:i.critical,afterCritical:i.afterCritical,result:m,impact:l};if(!(!_s(i.current.client.offset,h)||m.combine)){t(Gl({completed:g}));return}t(Wl({newHomeClientOffset:h,dropDuration:lu({current:i.current.client.offset,destination:h,reason:a}),completed:g}))},pu=()=>({x:window.pageXOffset,y:window.pageYOffset});function mu(e){return{eventName:`scroll`,options:{passive:!0,capture:!1},fn:t=>{t.target!==window&&t.target!==window.document||e()}}}function hu({onWindowScroll:e}){function t(){e(pu())}let n=Zo(t),r=mu(n),i=es;function a(){return i!==es}function o(){a()&&q(),i=ns(window,[r])}function s(){!a()&&q(),n.cancel(),i(),i=es}return{start:o,stop:s,isActive:a}}var gu=e=>$(e,`DROP_COMPLETE`)||$(e,`DROP_ANIMATE`)||$(e,`FLUSH`),_u=e=>{let t=hu({onWindowScroll:t=>{e.dispatch(Ll({newScroll:t}))}});return e=>n=>{!t.isActive()&&$(n,`INITIAL_PUBLISH`)&&t.start(),t.isActive()&&gu(n)&&t.stop(),e(n)}},vu=e=>{let t=!1,n=!1,r=setTimeout(()=>{n=!0}),i=i=>{t||n||(t=!0,e(i),clearTimeout(r))};return i.wasCalled=()=>t,i},yu=()=>{let e=[],t=t=>{let n=e.findIndex(e=>e.timerId===t);n===-1&&q();let[r]=e.splice(n,1);r.callback()};return{add:n=>{let r=setTimeout(()=>t(r)),i={timerId:r,callback:n};e.push(i)},flush:()=>{if(!e.length)return;let t=[...e];e.length=0,t.forEach(e=>{clearTimeout(e.timerId),e.callback()})}}},bu=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.droppableId===t.droppableId&&e.index===t.index,xu=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.draggableId===t.draggableId&&e.droppableId===t.droppableId,Su=(e,t)=>{if(e===t)return!0;let n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r},Cu=(e,t)=>{t()},wu=(e,t)=>({draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t});function Tu(e,t,n,r){if(!e){n(r(t));return}let i=vu(n);e(t,{announce:i}),i.wasCalled()||n(r(t))}var Eu=(e,t)=>{let n=yu(),r=null,i=(t,n)=>{r&&q(),Cu(`onBeforeCapture`,()=>{let r=e().onBeforeCapture;r&&r({draggableId:t,mode:n})})},a=(t,n)=>{r&&q(),Cu(`onBeforeDragStart`,()=>{let r=e().onBeforeDragStart;r&&r(wu(t,n))})},o=(i,a)=>{r&&q();let o=wu(i,a);r={mode:a,lastCritical:i,lastLocation:o.source,lastCombine:null},n.add(()=>{Cu(`onDragStart`,()=>Tu(e().onDragStart,o,t,ps.onDragStart))})},s=(i,a)=>{let o=Ls(a),s=Rs(a);!r&&q();let c=!Su(i,r.lastCritical);c&&(r.lastCritical=i);let l=!bu(r.lastLocation,o);l&&(r.lastLocation=o);let u=!xu(r.lastCombine,s);if(u&&(r.lastCombine=s),!c&&!l&&!u)return;let d={...wu(i,r.mode),combine:s,destination:o};n.add(()=>{Cu(`onDragUpdate`,()=>Tu(e().onDragUpdate,d,t,ps.onDragUpdate))})},c=()=>{!r&&q(),n.flush()},l=n=>{!r&&q(),r=null,Cu(`onDragEnd`,()=>Tu(e().onDragEnd,n,t,ps.onDragEnd))};return{beforeCapture:i,beforeStart:a,start:o,update:s,flush:c,drop:l,abort:()=>{r&&l({...wu(r.lastCritical,r.mode),combine:null,destination:null,reason:`CANCEL`})}}},Du=(e,t)=>{let n=Eu(e,t);return e=>t=>r=>{if($(r,`BEFORE_INITIAL_CAPTURE`)){n.beforeCapture(r.payload.draggableId,r.payload.movementMode);return}if($(r,`INITIAL_PUBLISH`)){let e=r.payload.critical;n.beforeStart(e,r.payload.movementMode),t(r),n.start(e,r.payload.movementMode);return}if($(r,`DROP_COMPLETE`)){let e=r.payload.completed.result;n.flush(),t(r),n.drop(e);return}if(t(r),$(r,`FLUSH`)){n.abort();return}let i=e.getState();i.phase===`DRAGGING`&&n.update(i.critical,i.impact)}},Ou=e=>t=>n=>{if(!$(n,`DROP_ANIMATION_FINISHED`)){t(n);return}let r=e.getState();r.phase!==`DROP_ANIMATING`&&q(),e.dispatch(Gl({completed:r.completed}))},ku=e=>{let t=null,n=null;function r(){n&&=(cancelAnimationFrame(n),null),t&&=(t(),null)}return i=>a=>{if(($(a,`FLUSH`)||$(a,`DROP_COMPLETE`)||$(a,`DROP_ANIMATION_FINISHED`))&&r(),i(a),!$(a,`DROP_ANIMATE`))return;let o={eventName:`scroll`,options:{capture:!0,passive:!1,once:!0},fn:function(){e.getState().phase===`DROP_ANIMATING`&&e.dispatch(Jl())}};n=requestAnimationFrame(()=>{n=null,t=ns(window,[o])})}},Au=e=>()=>t=>n=>{($(n,`DROP_COMPLETE`)||$(n,`FLUSH`)||$(n,`DROP_ANIMATE`))&&e.stopPublishing(),t(n)},ju=e=>{let t=!1;return()=>n=>r=>{if($(r,`INITIAL_PUBLISH`)){t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),e.tryRestoreFocusRecorded();return}if(n(r),t){if($(r,`FLUSH`)){t=!1,e.tryRestoreFocusRecorded();return}if($(r,`DROP_COMPLETE`)){t=!1;let n=r.payload.completed.result;n.combine&&e.tryShiftRecord(n.draggableId,n.combine.draggableId),e.tryRestoreFocusRecorded()}}}},Mu=e=>$(e,`DROP_COMPLETE`)||$(e,`DROP_ANIMATE`)||$(e,`FLUSH`),Nu=e=>t=>n=>r=>{if(Mu(r)){e.stop(),n(r);return}if($(r,`INITIAL_PUBLISH`)){n(r);let i=t.getState();i.phase!==`DRAGGING`&&q(),e.start(i);return}n(r),e.scroll(t.getState())},Pu=e=>t=>n=>{if(t(n),!$(n,`PUBLISH_WHILE_DRAGGING`))return;let r=e.getState();r.phase===`DROP_PENDING`&&(r.isWaiting||e.dispatch(Kl({reason:r.reason})))},Fu=Ca,Iu=({dimensionMarshal:e,focusMarshal:t,styleMarshal:n,getResponders:r,announce:i,autoScroller:a})=>ba(Dl,Fu(wa(Xl(n),Au(e),Yl(e),fu,Ou,ku,Pu,Nu(a),_u,ju(t),Du(r,i)))),Lu=()=>({additions:{},removals:{},modified:{}});function Ru({registry:e,callbacks:t}){let n=Lu(),r=null,i=()=>{r||=(t.collectionStarting(),requestAnimationFrame(()=>{r=null;let{additions:i,removals:a,modified:o}=n,s=Object.keys(i).map(t=>e.draggable.getById(t).getDimension(X)).sort((e,t)=>e.descriptor.index-t.descriptor.index),c=Object.keys(o).map(t=>({droppableId:t,scroll:e.droppable.getById(t).callbacks.getScrollWhileDragging()})),l={additions:s,removals:Object.keys(a),modified:c};n=Lu(),t.publish(l)}))};return{add:e=>{let t=e.descriptor.id;n.additions[t]=e,n.modified[e.descriptor.droppableId]=!0,n.removals[t]&&delete n.removals[t],i()},remove:e=>{let t=e.descriptor;n.removals[t.id]=!0,n.modified[t.droppableId]=!0,n.additions[t.id]&&delete n.additions[t.id],i()},stop:()=>{r&&(cancelAnimationFrame(r),r=null,n=Lu())}}}var zu=({scrollHeight:e,scrollWidth:t,height:n,width:r})=>{let i=gs({x:t,y:e},{x:r,y:n});return{x:Math.max(0,i.x),y:Math.max(0,i.y)}},Bu=()=>{let e=document.documentElement;return!e&&q(),e},Vu=()=>{let e=Bu();return zu({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},Hu=()=>{let e=pu(),t=Vu(),n=e.y,r=e.x,i=Bu(),a=i.clientWidth,o=i.clientHeight;return{frame:zo({top:n,left:r,right:r+a,bottom:n+o}),scroll:{initial:e,current:e,max:t,diff:{value:X,displacement:X}}}},Uu=({critical:e,scrollOptions:t,registry:n})=>{let r=Hu(),i=r.scroll.current,a=e.droppable,o=n.droppable.getAllByType(a.type).map(e=>e.callbacks.getDimensionAndWatchScroll(i,t));return{dimensions:{draggables:Ns(n.draggable.getAllByType(e.draggable.type).map(e=>e.getDimension(i))),droppables:Ms(o)},critical:e,viewport:r}};function Wu(e,t,n){return!(n.descriptor.id===t.id||n.descriptor.type!==t.type||e.droppable.getById(n.descriptor.droppableId).descriptor.mode!==`virtual`)}var Gu=(e,t)=>{let n=null,r=Ru({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),i=(r,i)=>{!e.droppable.exists(r)&&q(),n&&t.updateDroppableIsEnabled({id:r,isEnabled:i})},a=(r,i)=>{n&&(!e.droppable.exists(r)&&q(),t.updateDroppableIsCombineEnabled({id:r,isCombineEnabled:i}))},o=(r,i)=>{n&&(!e.droppable.exists(r)&&q(),t.updateDroppableScroll({id:r,newScroll:i}))},s=(t,r)=>{n&&e.droppable.getById(t).callbacks.scroll(r)},c=()=>{if(!n)return;r.stop();let t=n.critical.droppable;e.droppable.getAllByType(t.type).forEach(e=>e.callbacks.dragStopped()),n.unsubscribe(),n=null},l=t=>{!n&&q();let i=n.critical.draggable;t.type===`ADDITION`&&Wu(e,i,t.value)&&r.add(t.value),t.type===`REMOVAL`&&Wu(e,i,t.value)&&r.remove(t.value)};return{updateDroppableIsEnabled:i,updateDroppableIsCombineEnabled:a,scrollDroppable:s,updateDroppableScroll:o,startPublishing:t=>{n&&q();let r=e.draggable.getById(t.draggableId),i=e.droppable.getById(r.descriptor.droppableId),a={draggable:r.descriptor,droppable:i.descriptor};return n={critical:a,unsubscribe:e.subscribe(l)},Uu({critical:a,registry:e,scrollOptions:t.scrollOptions})},stopPublishing:c}},Ku=(e,t)=>e.phase===`IDLE`?!0:e.phase!==`DROP_ANIMATING`||e.completed.result.draggableId===t?!1:e.completed.result.reason===`DROP`,qu=e=>{window.scrollBy(e.x,e.y)},Ju=Q(e=>Ps(e).filter(e=>!(!e.isEnabled||!e.frame))),Yu=(e,t)=>Ju(t).find(t=>(!t.frame&&q(),Xc(t.frame.pageMarginBox)(e)))||null,Xu=({center:e,destination:t,droppables:n})=>{if(t){let e=n[t];return e.frame?e:null}return Yu(e,n)},Zu={startFromPercentage:.25,maxScrollAtPercentage:.05,maxPixelScroll:28,ease:e=>e**2,durationDampening:{stopDampeningAt:1200,accelerateAt:360},disabled:!1},Qu=(e,t,n=()=>Zu)=>{let r=n();return{startScrollingFrom:e[t.size]*r.startFromPercentage,maxScrollValueAt:e[t.size]*r.maxScrollAtPercentage}},$u=({startOfRange:e,endOfRange:t,current:n})=>{let r=t-e;return r===0?0:(n-e)/r},ed=1,td=(e,t,n=()=>Zu)=>{let r=n();if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return r.maxPixelScroll;if(e===t.startScrollingFrom)return ed;let i=1-$u({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),a=r.maxPixelScroll*r.ease(i);return Math.ceil(a)},nd=(e,t,n)=>{let r=n(),i=r.durationDampening.accelerateAt,a=r.durationDampening.stopDampeningAt,o=t,s=a,c=Date.now()-o;if(c>=a)return e;if(c<i)return ed;let l=$u({startOfRange:i,endOfRange:s,current:c}),u=e*r.ease(l);return Math.ceil(u)},rd=({distanceToEdge:e,thresholds:t,dragStartTime:n,shouldUseTimeDampening:r,getAutoScrollerOptions:i})=>{let a=td(e,t,i);return a===0?0:r?Math.max(nd(a,n,i),ed):a},id=({container:e,distanceToEdges:t,dragStartTime:n,axis:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=Qu(e,r,a);return t[r.end]<t[r.start]?rd({distanceToEdge:t[r.end],thresholds:o,dragStartTime:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a}):-1*rd({distanceToEdge:t[r.start],thresholds:o,dragStartTime:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a})},ad=({container:e,subject:t,proposedScroll:n})=>{let r=t.height>e.height,i=t.width>e.width;return!i&&!r?n:i&&r?null:{x:i?0:n.x,y:r?0:n.y}},od=Ss(e=>e===0?0:e),sd=({dragStartTime:e,container:t,subject:n,center:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o={top:r.y-t.top,right:t.right-r.x,bottom:t.bottom-r.y,left:r.x-t.left},s=id({container:t,distanceToEdges:o,dragStartTime:e,axis:Js,shouldUseTimeDampening:i,getAutoScrollerOptions:a}),c=od({x:id({container:t,distanceToEdges:o,dragStartTime:e,axis:Ys,shouldUseTimeDampening:i,getAutoScrollerOptions:a}),y:s});if(_s(c,X))return null;let l=ad({container:t,subject:n,proposedScroll:c});return l?_s(l,X)?null:l:null},cd=Ss(e=>e===0?0:e>0?1:-1),ld=(()=>{let e=(e,t)=>e<0?e:e>t?e-t:0;return({current:t,max:n,change:r})=>{let i=Z(t,r),a={x:e(i.x,n.x),y:e(i.y,n.y)};return _s(a,X)?null:a}})(),ud=({max:e,current:t,change:n})=>{let r={x:Math.max(t.x,e.x),y:Math.max(t.y,e.y)},i=cd(n),a=ld({max:r,current:t,change:i});return!a||i.x!==0&&a.x===0||i.y!==0&&a.y===0},dd=(e,t)=>ud({current:e.scroll.current,max:e.scroll.max,change:t}),fd=(e,t)=>{if(!dd(e,t))return null;let n=e.scroll.max,r=e.scroll.current;return ld({current:r,max:n,change:t})},pd=(e,t)=>{let n=e.frame;return n?ud({current:n.scroll.current,max:n.scroll.max,change:t}):!1},md=(e,t)=>{let n=e.frame;return!n||!pd(e,t)?null:ld({current:n.scroll.current,max:n.scroll.max,change:t})},hd=({viewport:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=sd({dragStartTime:r,container:e.frame,subject:t,center:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a});return o&&dd(e,o)?o:null},gd=({droppable:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=e.frame;if(!o)return null;let s=sd({dragStartTime:r,container:o.pageMarginBox,subject:t,center:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a});return s&&pd(e,s)?s:null},_d=({state:e,dragStartTime:t,shouldUseTimeDampening:n,scrollWindow:r,scrollDroppable:i,getAutoScrollerOptions:a})=>{let o=e.current.page.borderBoxCenter,s=e.dimensions.draggables[e.critical.draggable.id].page.marginBox;if(e.isWindowScrollAllowed){let i=e.viewport,c=hd({dragStartTime:t,viewport:i,subject:s,center:o,shouldUseTimeDampening:n,getAutoScrollerOptions:a});if(c){r(c);return}}let c=Xu({center:o,destination:Kc(e.impact),droppables:e.dimensions.droppables});if(!c)return;let l=gd({dragStartTime:t,droppable:c,subject:s,center:o,shouldUseTimeDampening:n,getAutoScrollerOptions:a});l&&i(c.descriptor.id,l)},vd=({scrollWindow:e,scrollDroppable:t,getAutoScrollerOptions:n=()=>Zu})=>{let r=Zo(e),i=Zo(t),a=null,o=e=>{!a&&q();let{shouldUseTimeDampening:t,dragStartTime:o}=a;_d({state:e,scrollWindow:r,scrollDroppable:i,dragStartTime:o,shouldUseTimeDampening:t,getAutoScrollerOptions:n})};return{start:e=>{a&&q();let t=Date.now(),r=!1,i=()=>{r=!0};_d({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:i,scrollDroppable:i,getAutoScrollerOptions:n}),a={dragStartTime:t,shouldUseTimeDampening:r},r&&o(e)},stop:()=>{a&&=(r.cancel(),i.cancel(),null)},scroll:o}},yd=({move:e,scrollDroppable:t,scrollWindow:n})=>{let r=(t,n)=>{e({client:Z(t.current.client.selection,n)})},i=(e,n)=>{if(!pd(e,n))return n;let r=md(e,n);if(!r)return t(e.descriptor.id,n),null;let i=gs(n,r);return t(e.descriptor.id,i),gs(n,i)},a=(e,t,r)=>{if(!e||!dd(t,r))return r;let i=fd(t,r);if(!i)return n(r),null;let a=gs(r,i);return n(a),gs(r,a)};return e=>{let t=e.scrollJumpRequest;if(!t)return;let n=Kc(e.impact);!n&&q();let o=i(e.dimensions.droppables[n],t);if(!o)return;let s=e.viewport,c=a(e.isWindowScrollAllowed,s,o);c&&r(e,c)}},bd=({scrollDroppable:e,scrollWindow:t,move:n,getAutoScrollerOptions:r})=>{let i=vd({scrollWindow:t,scrollDroppable:e,getAutoScrollerOptions:r}),a=yd({move:n,scrollWindow:t,scrollDroppable:e});return{scroll:e=>{if(!(r().disabled||e.phase!==`DRAGGING`)){if(e.movementMode===`FLUID`){i.scroll(e);return}e.scrollJumpRequest&&a(e)}},start:i.start,stop:i.stop}},xd=`data-rfd`,Sd=(()=>{let e=`${xd}-drag-handle`;return{base:e,draggableId:`${e}-draggable-id`,contextId:`${e}-context-id`}})(),Cd=(()=>{let e=`${xd}-draggable`;return{base:e,contextId:`${e}-context-id`,id:`${e}-id`}})(),wd=(()=>{let e=`${xd}-droppable`;return{base:e,contextId:`${e}-context-id`,id:`${e}-id`}})(),Td={contextId:`${xd}-scroll-container-context-id`},Ed=e=>t=>`[${t}="${e}"]`,Dd=(e,t)=>e.map(e=>{let n=e.styles[t];return n?`${e.selector} { ${n} }`:``}).join(` `),Od=`pointer-events: none;`,kd=e=>{let t=Ed(e),n=(()=>{let e=`
80
+ ${vs(e.source)}
81
+ `}};function bs(e,t){return!!(e===t||Number.isNaN(e)&&Number.isNaN(t))}function xs(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!bs(e[n],t[n]))return!1;return!0}function q(e,t){let n=(0,G.useState)(()=>({inputs:t,result:e()}))[0],r=(0,G.useRef)(!0),i=(0,G.useRef)(n),a=r.current||t&&i.current.inputs&&xs(t,i.current.inputs)?i.current:{inputs:t,result:e()};return(0,G.useEffect)(()=>{r.current=!1,i.current=a},[a]),a.result}function J(e,t){return q(()=>e,t)}var Y={x:0,y:0},X=(e,t)=>({x:e.x+t.x,y:e.y+t.y}),Ss=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),Cs=(e,t)=>e.x===t.x&&e.y===t.y,ws=e=>({x:e.x===0?0:-e.x,y:e.y===0?0:-e.y}),Ts=(e,t,n=0)=>e===`x`?{x:t,y:n}:{x:n,y:t},Es=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2),Ds=(e,t)=>Math.min(...t.map(t=>Es(e,t))),Os=e=>t=>({x:e(t.x),y:e(t.y)}),ks=(e,t)=>{let n=Go({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n},As=(e,t)=>({top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}),js=e=>[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}],Ms={top:0,right:0,bottom:0,left:0},Ns=(e,t)=>t?As(e,t.scroll.diff.displacement):e,Ps=(e,t,n)=>n&&n.increasedBy?{...e,[t.end]:e[t.end]+n.increasedBy[t.line]}:e,Fs=(e,t)=>t&&t.shouldClipSubject?ks(t.pageMarginBox,e):Go(e),Is=({page:e,withPlaceholder:t,axis:n,frame:r})=>({page:e,withPlaceholder:t,active:Fs(Ps(Ns(e.marginBox,r),n,t),r)}),Ls=(e,t)=>{!e.frame&&K();let n=e.frame,r=Ss(t,n.scroll.initial),i=ws(r),a={...n,scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:i},max:n.scroll.max}},o=Is({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return{...e,frame:a,subject:o}};function Z(e,t=xs){let n=null;function r(...r){if(n&&n.lastThis===this&&t(r,n.lastArgs))return n.lastResult;let i=e.apply(this,r);return n={lastResult:i,lastArgs:r,lastThis:this},i}return r.clear=function(){n=null},r}var Rs=Z(e=>e.reduce((e,t)=>(e[t.descriptor.id]=t,e),{})),zs=Z(e=>e.reduce((e,t)=>(e[t.descriptor.id]=t,e),{})),Bs=Z(e=>Object.values(e)),Vs=Z(e=>Object.values(e)),Hs=Z((e,t)=>Vs(t).filter(t=>e===t.descriptor.droppableId).sort((e,t)=>e.descriptor.index-t.descriptor.index));function Us(e){return e.at&&e.at.type===`REORDER`?e.at.destination:null}function Ws(e){return e.at&&e.at.type===`COMBINE`?e.at.combine:null}var Gs=Z((e,t)=>t.filter(t=>t.descriptor.id!==e.descriptor.id)),Ks=({isMovingForward:e,draggable:t,destination:n,insideDestination:r,previousImpact:i})=>{if(!n.isCombineEnabled||!Us(i))return null;function a(e){let t={type:`COMBINE`,combine:{draggableId:e,droppableId:n.descriptor.id}};return{...i,at:t}}let o=i.displaced.all,s=o.length?o[0]:null;if(e)return s?a(s):null;let c=Gs(t,r);if(!s){if(!c.length)return null;let e=c[c.length-1];return a(e.descriptor.id)}let l=c.findIndex(e=>e.descriptor.id===s);l===-1&&K();let u=l-1;if(u<0)return null;let d=c[u];return a(d.descriptor.id)},qs=(e,t)=>e.descriptor.droppableId===t.descriptor.id,Js={point:Y,value:0},Ys={invisible:{},visible:{},all:[]},Xs={displaced:Ys,displacedBy:Js,at:null},Zs=(e,t)=>n=>e<=n&&n<=t,Qs=e=>{let t=Zs(e.top,e.bottom),n=Zs(e.left,e.right);return r=>{if(t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right))return!0;let i=t(r.top)||t(r.bottom),a=n(r.left)||n(r.right);if(i&&a)return!0;let o=r.top<e.top&&r.bottom>e.bottom,s=r.left<e.left&&r.right>e.right;return o&&s?!0:o&&a||s&&i}},$s=e=>{let t=Zs(e.top,e.bottom),n=Zs(e.left,e.right);return e=>t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)},ec={direction:`vertical`,line:`y`,crossAxisLine:`x`,start:`top`,end:`bottom`,size:`height`,crossAxisStart:`left`,crossAxisEnd:`right`,crossAxisSize:`width`},tc={direction:`horizontal`,line:`x`,crossAxisLine:`y`,start:`left`,end:`right`,size:`width`,crossAxisStart:`top`,crossAxisEnd:`bottom`,crossAxisSize:`height`},nc=e=>t=>{let n=Zs(t.top,t.bottom),r=Zs(t.left,t.right);return t=>e===ec?n(t.top)&&n(t.bottom):r(t.left)&&r(t.right)},rc=(e,t)=>As(e,t.frame?t.frame.scroll.diff.displacement:Y),ic=(e,t,n)=>t.subject.active?n(t.subject.active)(e):!1,ac=(e,t,n)=>n(t)(e),oc=({target:e,destination:t,viewport:n,withDroppableDisplacement:r,isVisibleThroughFrameFn:i})=>{let a=r?rc(e,t):e;return ic(a,t,i)&&ac(a,n,i)},sc=e=>oc({...e,isVisibleThroughFrameFn:Qs}),cc=e=>oc({...e,isVisibleThroughFrameFn:$s}),lc=e=>oc({...e,isVisibleThroughFrameFn:nc(e.destination.axis)}),uc=(e,t,n)=>{if(typeof n==`boolean`)return n;if(!t)return!0;let{invisible:r,visible:i}=t;if(r[e])return!1;let a=i[e];return a?a.shouldAnimate:!0};function dc(e,t){let n=e.page.marginBox;return Go(Ko(n,{top:t.point.y,right:0,bottom:0,left:t.point.x}))}function fc({afterDragging:e,destination:t,displacedBy:n,viewport:r,forceShouldAnimate:i,last:a}){return e.reduce(function(e,o){let s=dc(o,n),c=o.descriptor.id;if(e.all.push(c),!sc({target:s,destination:t,viewport:r,withDroppableDisplacement:!0}))return e.invisible[o.descriptor.id]=!0,e;let l={draggableId:c,shouldAnimate:uc(c,a,i)};return e.visible[c]=l,e},{all:[],visible:{},invisible:{}})}function pc(e,t){if(!e.length)return 0;let n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}function mc({insideDestination:e,inHomeList:t,displacedBy:n,destination:r}){let i=pc(e,{inHomeList:t});return{displaced:Ys,displacedBy:n,at:{type:`REORDER`,destination:{droppableId:r.descriptor.id,index:i}}}}function hc({draggable:e,insideDestination:t,destination:n,viewport:r,displacedBy:i,last:a,index:o,forceShouldAnimate:s}){let c=qs(e,n);if(o==null)return mc({insideDestination:t,inHomeList:c,displacedBy:i,destination:n});let l=t.find(e=>e.descriptor.index===o);if(!l)return mc({insideDestination:t,inHomeList:c,displacedBy:i,destination:n});let u=Gs(e,t),d=t.indexOf(l);return{displaced:fc({afterDragging:u.slice(d),destination:n,displacedBy:i,last:a,viewport:r.frame,forceShouldAnimate:s}),displacedBy:i,at:{type:`REORDER`,destination:{droppableId:n.descriptor.id,index:o}}}}function gc(e,t){return!!t.effected[e]}var _c=({isMovingForward:e,destination:t,draggables:n,combine:r,afterCritical:i})=>{if(!t.isCombineEnabled)return null;let a=r.draggableId,o=n[a].descriptor.index;return gc(a,i)?e?o:o-1:e?o+1:o},vc=({isMovingForward:e,isInHomeList:t,insideDestination:n,location:r})=>{if(!n.length)return null;let i=r.index,a=e?i+1:i-1,o=n[0].descriptor.index,s=n[n.length-1].descriptor.index,c=t?s:s+1;return a<o||a>c?null:a},yc=({isMovingForward:e,isInHomeList:t,draggable:n,draggables:r,destination:i,insideDestination:a,previousImpact:o,viewport:s,afterCritical:c})=>{let l=o.at;if(!l&&K(),l.type===`REORDER`){let r=vc({isMovingForward:e,isInHomeList:t,location:l.destination,insideDestination:a});return r==null?null:hc({draggable:n,insideDestination:a,destination:i,viewport:s,last:o.displaced,displacedBy:o.displacedBy,index:r})}let u=_c({isMovingForward:e,destination:i,displaced:o.displaced,draggables:r,combine:l.combine,afterCritical:c});return u==null?null:hc({draggable:n,insideDestination:a,destination:i,viewport:s,last:o.displaced,displacedBy:o.displacedBy,index:u})},bc=({displaced:e,afterCritical:t,combineWith:n,displacedBy:r})=>{let i=!!(e.visible[n]||e.invisible[n]);return gc(n,t)?i?Y:ws(r.point):i?r.point:Y},xc=({afterCritical:e,impact:t,draggables:n})=>{let r=Ws(t);!r&&K();let i=r.draggableId,a=n[i].page.borderBox.center;return X(a,bc({displaced:t.displaced,afterCritical:e,combineWith:i,displacedBy:t.displacedBy}))},Sc=(e,t)=>t.margin[e.start]+t.borderBox[e.size]/2,Cc=(e,t)=>t.margin[e.end]+t.borderBox[e.size]/2,wc=(e,t,n)=>t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2,Tc=({axis:e,moveRelativeTo:t,isMoving:n})=>Ts(e.line,t.marginBox[e.end]+Sc(e,n),wc(e,t.marginBox,n)),Ec=({axis:e,moveRelativeTo:t,isMoving:n})=>Ts(e.line,t.marginBox[e.start]-Cc(e,n),wc(e,t.marginBox,n)),Dc=({axis:e,moveInto:t,isMoving:n})=>Ts(e.line,t.contentBox[e.start]+Sc(e,n),wc(e,t.contentBox,n)),Oc=({impact:e,draggable:t,draggables:n,droppable:r,afterCritical:i})=>{let a=Hs(r.descriptor.id,n),o=t.page,s=r.axis;if(!a.length)return Dc({axis:s,moveInto:r.page,isMoving:o});let{displaced:c,displacedBy:l}=e,u=c.all[0];if(u){let e=n[u];return gc(u,i)?Ec({axis:s,moveRelativeTo:e.page,isMoving:o}):Ec({axis:s,moveRelativeTo:$o(e.page,l.point),isMoving:o})}let d=a[a.length-1];return d.descriptor.id===t.descriptor.id?o.borderBox.center:gc(d.descriptor.id,i)?Tc({axis:s,moveRelativeTo:$o(d.page,ws(i.displacedBy.point)),isMoving:o}):Tc({axis:s,moveRelativeTo:d.page,isMoving:o})},kc=(e,t)=>{let n=e.frame;return n?X(t,n.scroll.diff.displacement):t},Ac=({impact:e,draggable:t,droppable:n,draggables:r,afterCritical:i})=>{let a=t.page.borderBox.center,o=e.at;return!n||!o?a:o.type===`REORDER`?Oc({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:i}):xc({impact:e,draggables:r,afterCritical:i})},jc=e=>{let t=Ac(e),n=e.droppable;return n?kc(n,t):t},Mc=(e,t)=>{let n=Ss(t,e.scroll.initial),r=ws(n);return{frame:Go({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function Nc(e,t){return e.map(e=>t[e])}function Pc(e,t){for(let n=0;n<t.length;n++){let r=t[n].visible[e];if(r)return r}return null}var Fc=({impact:e,viewport:t,destination:n,draggables:r,maxScrollChange:i})=>{let a=Mc(t,X(t.scroll.current,i)),o=n.frame?Ls(n,X(n.frame.scroll.current,i)):n,s=e.displaced,c=fc({afterDragging:Nc(s.all,r),destination:n,displacedBy:e.displacedBy,viewport:a.frame,last:s,forceShouldAnimate:!1}),l=fc({afterDragging:Nc(s.all,r),destination:o,displacedBy:e.displacedBy,viewport:t.frame,last:s,forceShouldAnimate:!1}),u={},d={},f=[s,c,l];return s.all.forEach(e=>{let t=Pc(e,f);if(t){d[e]=t;return}u[e]=!0}),{...e,displaced:{all:s.all,invisible:u,visible:d}}},Ic=(e,t)=>X(e.scroll.diff.displacement,t),Lc=({pageBorderBoxCenter:e,draggable:t,viewport:n})=>{let r=Ss(Ic(n,e),t.page.borderBox.center);return X(t.client.borderBox.center,r)},Rc=({draggable:e,destination:t,newPageBorderBoxCenter:n,viewport:r,withDroppableDisplacement:i,onlyOnMainAxis:a=!1})=>{let o=Ss(n,e.page.borderBox.center),s={target:As(e.page.borderBox,o),destination:t,withDroppableDisplacement:i,viewport:r};return a?lc(s):cc(s)},zc=({isMovingForward:e,draggable:t,destination:n,draggables:r,previousImpact:i,viewport:a,previousPageBorderBoxCenter:o,previousClientSelection:s,afterCritical:c})=>{if(!n.isEnabled)return null;let l=Hs(n.descriptor.id,r),u=qs(t,n),d=Ks({isMovingForward:e,draggable:t,destination:n,insideDestination:l,previousImpact:i})||yc({isMovingForward:e,isInHomeList:u,draggable:t,draggables:r,destination:n,insideDestination:l,previousImpact:i,viewport:a,afterCritical:c});if(!d)return null;let f=jc({impact:d,draggable:t,droppable:n,draggables:r,afterCritical:c});if(Rc({draggable:t,destination:n,newPageBorderBoxCenter:f,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:Lc({pageBorderBoxCenter:f,draggable:t,viewport:a}),impact:d,scrollJumpRequest:null};let p=Ss(f,o);return{clientSelection:s,impact:Fc({impact:d,viewport:a,destination:n,draggables:r,maxScrollChange:p}),scrollJumpRequest:p}},Q=e=>{let t=e.subject.active;return!t&&K(),t},Bc=({isMovingForward:e,pageBorderBoxCenter:t,source:n,droppables:r,viewport:i})=>{let a=n.subject.active;if(!a)return null;let o=n.axis,s=Zs(a[o.start],a[o.end]),c=Bs(r).filter(e=>e!==n).filter(e=>e.isEnabled).filter(e=>!!e.subject.active).filter(e=>Qs(i.frame)(Q(e))).filter(t=>{let n=Q(t);return e?a[o.crossAxisEnd]<n[o.crossAxisEnd]:n[o.crossAxisStart]<a[o.crossAxisStart]}).filter(e=>{let t=Q(e),n=Zs(t[o.start],t[o.end]);return s(t[o.start])||s(t[o.end])||n(a[o.start])||n(a[o.end])}).sort((t,n)=>{let r=Q(t)[o.crossAxisStart],i=Q(n)[o.crossAxisStart];return e?r-i:i-r}).filter((e,t,n)=>Q(e)[o.crossAxisStart]===Q(n[0])[o.crossAxisStart]);if(!c.length)return null;if(c.length===1)return c[0];let l=c.filter(e=>Zs(Q(e)[o.start],Q(e)[o.end])(t[o.line]));return l.length===1?l[0]:l.length>1?l.sort((e,t)=>Q(e)[o.start]-Q(t)[o.start])[0]:c.sort((e,n)=>{let r=Ds(t,js(Q(e))),i=Ds(t,js(Q(n)));return r===i?Q(e)[o.start]-Q(n)[o.start]:r-i})[0]},Vc=(e,t)=>{let n=e.page.borderBox.center;return gc(e.descriptor.id,t)?Ss(n,t.displacedBy.point):n},Hc=(e,t)=>{let n=e.page.borderBox;return gc(e.descriptor.id,t)?As(n,ws(t.displacedBy.point)):n},Uc=({pageBorderBoxCenter:e,viewport:t,destination:n,insideDestination:r,afterCritical:i})=>r.filter(e=>cc({target:Hc(e,i),destination:n,viewport:t.frame,withDroppableDisplacement:!0})).sort((t,r)=>{let a=Es(e,kc(n,Vc(t,i))),o=Es(e,kc(n,Vc(r,i)));return a<o?-1:o<a?1:t.descriptor.index-r.descriptor.index})[0]||null,Wc=Z(function(e,t){let n=t[e.line];return{value:n,point:Ts(e.line,n)}}),Gc=(e,t,n)=>{let r=e.axis;if(e.descriptor.mode===`virtual`)return Ts(r.line,t[r.line]);let i=e.subject.page.contentBox[r.size],a=Hs(e.descriptor.id,n).reduce((e,t)=>e+t.client.marginBox[r.size],0)+t[r.line]-i;return a<=0?null:Ts(r.line,a)},Kc=(e,t)=>({...e,scroll:{...e.scroll,max:t}}),qc=(e,t,n)=>{let r=e.frame;qs(t,e)&&K(),e.subject.withPlaceholder&&K();let i=Wc(e.axis,t.displaceBy).point,a=Gc(e,i,n),o={placeholderSize:i,increasedBy:a,oldFrameMaxScroll:e.frame?e.frame.scroll.max:null};if(!r){let t=Is({page:e.subject.page,withPlaceholder:o,axis:e.axis,frame:e.frame});return{...e,subject:t}}let s=Kc(r,a?X(r.scroll.max,a):r.scroll.max),c=Is({page:e.subject.page,withPlaceholder:o,axis:e.axis,frame:s});return{...e,subject:c,frame:s}},Jc=e=>{let t=e.subject.withPlaceholder;!t&&K();let n=e.frame;if(!n){let t=Is({page:e.subject.page,axis:e.axis,frame:null,withPlaceholder:null});return{...e,subject:t}}let r=t.oldFrameMaxScroll;!r&&K();let i=Kc(n,r),a=Is({page:e.subject.page,axis:e.axis,frame:i,withPlaceholder:null});return{...e,subject:a,frame:i}},Yc=({previousPageBorderBoxCenter:e,moveRelativeTo:t,insideDestination:n,draggable:r,draggables:i,destination:a,viewport:o,afterCritical:s})=>{if(!t){if(n.length)return null;let e={displaced:Ys,displacedBy:Js,at:{type:`REORDER`,destination:{droppableId:a.descriptor.id,index:0}}},t=jc({impact:e,draggable:r,droppable:a,draggables:i,afterCritical:s});return Rc({draggable:r,destination:qs(r,a)?a:qc(a,r,i),newPageBorderBoxCenter:t,viewport:o.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0})?e:null}let c=e[a.axis.line]<=t.page.borderBox.center[a.axis.line],l=(()=>{let e=t.descriptor.index;return t.descriptor.id===r.descriptor.id||c?e:e+1})();return hc({draggable:r,insideDestination:n,destination:a,viewport:o,displacedBy:Wc(a.axis,r.displaceBy),last:Ys,index:l})},Xc=({isMovingForward:e,previousPageBorderBoxCenter:t,draggable:n,isOver:r,draggables:i,droppables:a,viewport:o,afterCritical:s})=>{let c=Bc({isMovingForward:e,pageBorderBoxCenter:t,source:r,droppables:a,viewport:o});if(!c)return null;let l=Hs(c.descriptor.id,i),u=Yc({previousPageBorderBoxCenter:t,destination:c,draggable:n,draggables:i,moveRelativeTo:Uc({pageBorderBoxCenter:t,viewport:o,destination:c,insideDestination:l,afterCritical:s}),insideDestination:l,viewport:o,afterCritical:s});return u?{clientSelection:Lc({pageBorderBoxCenter:jc({impact:u,draggable:n,droppable:c,draggables:i,afterCritical:s}),draggable:n,viewport:o}),impact:u,scrollJumpRequest:null}:null},Zc=e=>{let t=e.at;return t?t.type===`REORDER`?t.destination.droppableId:t.combine.droppableId:null},Qc=(e,t)=>{let n=Zc(e);return n?t[n]:null},$c=({state:e,type:t})=>{let n=Qc(e.impact,e.dimensions.droppables),r=!!n,i=e.dimensions.droppables[e.critical.droppable.id],a=n||i,o=a.axis.direction,s=o===`vertical`&&(t===`MOVE_UP`||t===`MOVE_DOWN`)||o===`horizontal`&&(t===`MOVE_LEFT`||t===`MOVE_RIGHT`);if(s&&!r)return null;let c=t===`MOVE_DOWN`||t===`MOVE_RIGHT`,l=e.dimensions.draggables[e.critical.draggable.id],u=e.current.page.borderBoxCenter,{draggables:d,droppables:f}=e.dimensions;return s?zc({isMovingForward:c,previousPageBorderBoxCenter:u,draggable:l,destination:a,draggables:d,viewport:e.viewport,previousClientSelection:e.current.client.selection,previousImpact:e.impact,afterCritical:e.afterCritical}):Xc({isMovingForward:c,previousPageBorderBoxCenter:u,draggable:l,isOver:a,draggables:d,droppables:f,viewport:e.viewport,afterCritical:e.afterCritical})};function el(e){return e.phase===`DRAGGING`||e.phase===`COLLECTING`}function tl(e){let t=Zs(e.top,e.bottom),n=Zs(e.left,e.right);return function(e){return t(e.y)&&n(e.x)}}function nl(e,t){return e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top}function rl({pageBorderBox:e,draggable:t,candidates:n}){let r=t.page.borderBox.center,i=n.map(t=>{let n=t.axis,i=Ts(t.axis.line,e.center[n.line],t.page.borderBox.center[n.crossAxisLine]);return{id:t.descriptor.id,distance:Es(r,i)}}).sort((e,t)=>t.distance-e.distance);return i[0]?i[0].id:null}function il({pageBorderBox:e,draggable:t,droppables:n}){let r=Bs(n).filter(t=>{if(!t.isEnabled)return!1;let n=t.subject.active;if(!n||!nl(e,n))return!1;if(tl(n)(e.center))return!0;let r=t.axis,i=n.center[r.crossAxisLine],a=e[r.crossAxisStart],o=e[r.crossAxisEnd],s=Zs(n[r.crossAxisStart],n[r.crossAxisEnd]),c=s(a),l=s(o);return!c&&!l?!0:c?a<i:o>i});return r.length?r.length===1?r[0].descriptor.id:rl({pageBorderBox:e,draggable:t,candidates:r}):null}var al=(e,t)=>Go(As(e,t)),ol=(e,t)=>{let n=e.frame;return n?al(t,n.scroll.diff.value):t};function sl({displaced:e,id:t}){return!!(e.visible[t]||e.invisible[t])}function cl({draggable:e,closest:t,inHomeList:n}){return t?n&&t.descriptor.index>e.descriptor.index?t.descriptor.index-1:t.descriptor.index:null}var ll=({pageBorderBoxWithDroppableScroll:e,draggable:t,destination:n,insideDestination:r,last:i,viewport:a,afterCritical:o})=>{let s=n.axis,c=Wc(n.axis,t.displaceBy),l=c.value,u=e[s.start],d=e[s.end];return hc({draggable:t,insideDestination:r,destination:n,viewport:a,last:i,displacedBy:c,index:cl({draggable:t,closest:Gs(t,r).find(e=>{let t=e.descriptor.id,n=e.page.borderBox.center[s.line],r=gc(t,o),a=sl({displaced:i,id:t});return r?a?d<=n:u<n-l:a?d<=n+l:u<n})||null,inHomeList:qs(t,n)})})},ul=4,dl=({draggable:e,pageBorderBoxWithDroppableScroll:t,previousImpact:n,destination:r,insideDestination:i,afterCritical:a})=>{if(!r.isCombineEnabled)return null;let o=r.axis,s=Wc(r.axis,e.displaceBy),c=s.value,l=t[o.start],u=t[o.end],d=Gs(e,i).find(e=>{let t=e.descriptor.id,r=e.page.borderBox,i=r[o.size]/ul,s=gc(t,a),d=sl({displaced:n.displaced,id:t});return s?d?u>r[o.start]+i&&u<r[o.end]-i:l>r[o.start]-c+i&&l<r[o.end]-c-i:d?u>r[o.start]+c+i&&u<r[o.end]+c-i:l>r[o.start]+i&&l<r[o.end]-i});return d?{displacedBy:s,displaced:n.displaced,at:{type:`COMBINE`,combine:{draggableId:d.descriptor.id,droppableId:r.descriptor.id}}}:null},fl=({pageOffset:e,draggable:t,draggables:n,droppables:r,previousImpact:i,viewport:a,afterCritical:o})=>{let s=al(t.page.borderBox,e),c=il({pageBorderBox:s,draggable:t,droppables:r});if(!c)return Xs;let l=r[c],u=Hs(l.descriptor.id,n),d=ol(l,s);return dl({pageBorderBoxWithDroppableScroll:d,draggable:t,previousImpact:i,destination:l,insideDestination:u,afterCritical:o})||ll({pageBorderBoxWithDroppableScroll:d,draggable:t,destination:l,insideDestination:u,last:i.displaced,viewport:a,afterCritical:o})},pl=(e,t)=>({...e,[t.descriptor.id]:t}),ml=({previousImpact:e,impact:t,droppables:n})=>{let r=Zc(e),i=Zc(t);if(!r||r===i)return n;let a=n[r];return a.subject.withPlaceholder?pl(n,Jc(a)):n},hl=({draggable:e,draggables:t,droppables:n,previousImpact:r,impact:i})=>{let a=ml({previousImpact:r,impact:i,droppables:n}),o=Zc(i);if(!o)return a;let s=n[o];return qs(e,s)||s.subject.withPlaceholder?a:pl(a,qc(s,e,t))},gl=({state:e,clientSelection:t,dimensions:n,viewport:r,impact:i,scrollJumpRequest:a})=>{let o=r||e.viewport,s=n||e.dimensions,c=t||e.current.client.selection,l=Ss(c,e.initial.client.selection),u={offset:l,selection:c,borderBoxCenter:X(e.initial.client.borderBoxCenter,l)},d={selection:X(u.selection,o.scroll.current),borderBoxCenter:X(u.borderBoxCenter,o.scroll.current),offset:X(u.offset,o.scroll.diff.value)},f={client:u,page:d};if(e.phase===`COLLECTING`)return{...e,dimensions:s,viewport:o,current:f};let p=s.draggables[e.critical.draggable.id],m=i||fl({pageOffset:d.offset,draggable:p,draggables:s.draggables,droppables:s.droppables,previousImpact:e.impact,viewport:o,afterCritical:e.afterCritical}),h=hl({draggable:p,impact:m,previousImpact:e.impact,draggables:s.draggables,droppables:s.droppables});return{...e,current:f,dimensions:{draggables:s.draggables,droppables:h},impact:m,viewport:o,scrollJumpRequest:a||null,forceShouldAnimate:a?!1:null}};function _l(e,t){return e.map(e=>t[e])}var vl=({impact:e,viewport:t,draggables:n,destination:r,forceShouldAnimate:i})=>{let a=e.displaced,o=fc({afterDragging:_l(a.all,n),destination:r,displacedBy:e.displacedBy,viewport:t.frame,forceShouldAnimate:i,last:a});return{...e,displaced:o}},yl=({impact:e,draggable:t,droppable:n,draggables:r,viewport:i,afterCritical:a})=>Lc({pageBorderBoxCenter:jc({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:a}),draggable:t,viewport:i}),bl=({state:e,dimensions:t,viewport:n})=>{e.movementMode!==`SNAP`&&K();let r=e.impact,i=n||e.viewport,a=t||e.dimensions,{draggables:o,droppables:s}=a,c=o[e.critical.draggable.id],l=Zc(r);!l&&K();let u=s[l],d=vl({impact:r,viewport:i,destination:u,draggables:o});return gl({impact:d,clientSelection:yl({impact:d,draggable:c,droppable:u,draggables:o,viewport:i,afterCritical:e.afterCritical}),state:e,dimensions:a,viewport:i})},xl=e=>({index:e.index,droppableId:e.droppableId}),Sl=({draggable:e,home:t,draggables:n,viewport:r})=>{let i=Wc(t.axis,e.displaceBy),a=Hs(t.descriptor.id,n),o=a.indexOf(e);o===-1&&K();let s=a.slice(o+1),c=s.reduce((e,t)=>(e[t.descriptor.id]=!0,e),{}),l={inVirtualList:t.descriptor.mode===`virtual`,displacedBy:i,effected:c};return{impact:{displaced:fc({afterDragging:s,destination:t,displacedBy:i,last:null,viewport:r.frame,forceShouldAnimate:!1}),displacedBy:i,at:{type:`REORDER`,destination:xl(e.descriptor)}},afterCritical:l}},Cl=(e,t)=>({draggables:e.draggables,droppables:pl(e.droppables,t)}),wl=({draggable:e,offset:t,initialWindowScroll:n})=>{let r=$o(e.client,t),i=es(r,n);return{...e,placeholder:{...e.placeholder,client:r},client:r,page:i}},Tl=e=>{let t=e.frame;return!t&&K(),t},El=({additions:e,updatedDroppables:t,viewport:n})=>{let r=n.scroll.diff.value;return e.map(e=>{let i=t[e.descriptor.droppableId],a=Tl(i).scroll.diff.value;return wl({draggable:e,offset:X(r,a),initialWindowScroll:n.scroll.initial})})},Dl=({state:e,published:t})=>{let n=t.modified.map(t=>{let n=e.dimensions.droppables[t.droppableId];return Ls(n,t.scroll)}),r={...e.dimensions.droppables,...Rs(n)},i=zs(El({additions:t.additions,updatedDroppables:r,viewport:e.viewport})),a={...e.dimensions.draggables,...i};t.removals.forEach(e=>{delete a[e]});let o={droppables:r,draggables:a},s=Zc(e.impact),c=s?o.droppables[s]:null,l=o.draggables[e.critical.draggable.id],u=o.droppables[e.critical.droppable.id],{impact:d,afterCritical:f}=Sl({draggable:l,home:u,draggables:a,viewport:e.viewport}),p=c&&c.isCombineEnabled?e.impact:d,m=fl({pageOffset:e.current.page.offset,draggable:o.draggables[e.critical.draggable.id],draggables:o.draggables,droppables:o.droppables,previousImpact:p,viewport:e.viewport,afterCritical:f}),h={...e,phase:`DRAGGING`,impact:m,onLiftImpact:d,dimensions:o,afterCritical:f,forceShouldAnimate:!1};return e.phase===`COLLECTING`?h:{...h,phase:`DROP_PENDING`,reason:e.reason,isWaiting:!1}},Ol=e=>e.movementMode===`SNAP`,kl=(e,t,n)=>{let r=Cl(e.dimensions,t);return!Ol(e)||n?gl({state:e,dimensions:r}):bl({state:e,dimensions:r})};function Al(e){return e.isDragging&&e.movementMode===`SNAP`?{...e,scrollJumpRequest:null}:e}var jl={phase:`IDLE`,completed:null,shouldFlush:!1},Ml=(e=jl,t)=>{if(t.type===`FLUSH`)return{...jl,shouldFlush:!0};if(t.type===`INITIAL_PUBLISH`){e.phase!==`IDLE`&&K();let{critical:n,clientSelection:r,viewport:i,dimensions:a,movementMode:o}=t.payload,s=a.draggables[n.draggable.id],c=a.droppables[n.droppable.id],l={selection:r,borderBoxCenter:s.client.borderBox.center,offset:Y},u={client:l,page:{selection:X(l.selection,i.scroll.initial),borderBoxCenter:X(l.selection,i.scroll.initial),offset:X(l.selection,i.scroll.diff.value)}},d=Bs(a.droppables).every(e=>!e.isFixedOnPage),{impact:f,afterCritical:p}=Sl({draggable:s,home:c,draggables:a.draggables,viewport:i});return{phase:`DRAGGING`,isDragging:!0,critical:n,movementMode:o,dimensions:a,initial:u,current:u,isWindowScrollAllowed:d,impact:f,afterCritical:p,onLiftImpact:f,viewport:i,scrollJumpRequest:null,forceShouldAnimate:null}}if(t.type===`COLLECTION_STARTING`)return e.phase===`COLLECTING`||e.phase===`DROP_PENDING`?e:(e.phase!==`DRAGGING`&&K(),{...e,phase:`COLLECTING`});if(t.type===`PUBLISH_WHILE_DRAGGING`)return!(e.phase===`COLLECTING`||e.phase===`DROP_PENDING`)&&K(),Dl({state:e,published:t.payload});if(t.type===`MOVE`){if(e.phase===`DROP_PENDING`)return e;!el(e)&&K();let{client:n}=t.payload;return Cs(n,e.current.client.selection)?e:gl({state:e,clientSelection:n,impact:Ol(e)?e.impact:null})}if(t.type===`UPDATE_DROPPABLE_SCROLL`){if(e.phase===`DROP_PENDING`||e.phase===`COLLECTING`)return Al(e);!el(e)&&K();let{id:n,newScroll:r}=t.payload,i=e.dimensions.droppables[n];return i?kl(e,Ls(i,r),!1):e}if(t.type===`UPDATE_DROPPABLE_IS_ENABLED`){if(e.phase===`DROP_PENDING`)return e;!el(e)&&K();let{id:n,isEnabled:r}=t.payload,i=e.dimensions.droppables[n];return!i&&K(),i.isEnabled===r&&K(),kl(e,{...i,isEnabled:r},!0)}if(t.type===`UPDATE_DROPPABLE_IS_COMBINE_ENABLED`){if(e.phase===`DROP_PENDING`)return e;!el(e)&&K();let{id:n,isCombineEnabled:r}=t.payload,i=e.dimensions.droppables[n];return!i&&K(),i.isCombineEnabled===r&&K(),kl(e,{...i,isCombineEnabled:r},!0)}if(t.type===`MOVE_BY_WINDOW_SCROLL`){if(e.phase===`DROP_PENDING`||e.phase===`DROP_ANIMATING`)return e;!el(e)&&K(),!e.isWindowScrollAllowed&&K();let n=t.payload.newScroll;if(Cs(e.viewport.scroll.current,n))return Al(e);let r=Mc(e.viewport,n);return Ol(e)?bl({state:e,viewport:r}):gl({state:e,viewport:r})}if(t.type===`UPDATE_VIEWPORT_MAX_SCROLL`){if(!el(e))return e;let n=t.payload.maxScroll;if(Cs(n,e.viewport.scroll.max))return e;let r={...e.viewport,scroll:{...e.viewport.scroll,max:n}};return{...e,viewport:r}}if(t.type===`MOVE_UP`||t.type===`MOVE_DOWN`||t.type===`MOVE_LEFT`||t.type===`MOVE_RIGHT`){if(e.phase===`COLLECTING`||e.phase===`DROP_PENDING`)return e;e.phase!==`DRAGGING`&&K();let n=$c({state:e,type:t.type});return n?gl({state:e,impact:n.impact,clientSelection:n.clientSelection,scrollJumpRequest:n.scrollJumpRequest}):e}if(t.type===`DROP_PENDING`){let n=t.payload.reason;return e.phase!==`COLLECTING`&&K(),{...e,phase:`DROP_PENDING`,isWaiting:!0,reason:n}}if(t.type===`DROP_ANIMATE`){let{completed:n,dropDuration:r,newHomeClientOffset:i}=t.payload;return!(e.phase===`DRAGGING`||e.phase===`DROP_PENDING`)&&K(),{phase:`DROP_ANIMATING`,completed:n,dropDuration:r,newHomeClientOffset:i,dimensions:e.dimensions}}if(t.type===`DROP_COMPLETE`){let{completed:e}=t.payload;return{phase:`IDLE`,completed:e,shouldFlush:!1}}return e};function $(e,t){return e instanceof Object&&`type`in e&&e.type===t}var Nl=e=>({type:`BEFORE_INITIAL_CAPTURE`,payload:e}),Pl=e=>({type:`LIFT`,payload:e}),Fl=e=>({type:`INITIAL_PUBLISH`,payload:e}),Il=e=>({type:`PUBLISH_WHILE_DRAGGING`,payload:e}),Ll=()=>({type:`COLLECTION_STARTING`,payload:null}),Rl=e=>({type:`UPDATE_DROPPABLE_SCROLL`,payload:e}),zl=e=>({type:`UPDATE_DROPPABLE_IS_ENABLED`,payload:e}),Bl=e=>({type:`UPDATE_DROPPABLE_IS_COMBINE_ENABLED`,payload:e}),Vl=e=>({type:`MOVE`,payload:e}),Hl=e=>({type:`MOVE_BY_WINDOW_SCROLL`,payload:e}),Ul=e=>({type:`UPDATE_VIEWPORT_MAX_SCROLL`,payload:e}),Wl=()=>({type:`MOVE_UP`,payload:null}),Gl=()=>({type:`MOVE_DOWN`,payload:null}),Kl=()=>({type:`MOVE_RIGHT`,payload:null}),ql=()=>({type:`MOVE_LEFT`,payload:null}),Jl=()=>({type:`FLUSH`,payload:null}),Yl=e=>({type:`DROP_ANIMATE`,payload:e}),Xl=e=>({type:`DROP_COMPLETE`,payload:e}),Zl=e=>({type:`DROP`,payload:e}),Ql=e=>({type:`DROP_PENDING`,payload:e}),$l=()=>({type:`DROP_ANIMATION_FINISHED`,payload:null}),eu=e=>({getState:t,dispatch:n})=>r=>i=>{if(!$(i,`LIFT`)){r(i);return}let{id:a,clientSelection:o,movementMode:s}=i.payload,c=t();c.phase===`DROP_ANIMATING`&&n(Xl({completed:c.completed})),t().phase!==`IDLE`&&K(),n(Jl()),n(Nl({draggableId:a,movementMode:s}));let l={draggableId:a,scrollOptions:{shouldPublishImmediately:s===`SNAP`}},{critical:u,dimensions:d,viewport:f}=e.startPublishing(l);n(Fl({critical:u,dimensions:d,clientSelection:o,movementMode:s,viewport:f}))},tu=e=>()=>t=>n=>{$(n,`INITIAL_PUBLISH`)&&e.dragging(),$(n,`DROP_ANIMATE`)&&e.dropping(n.payload.completed.result.reason),($(n,`FLUSH`)||$(n,`DROP_COMPLETE`))&&e.resting(),t(n)},nu={outOfTheWay:`cubic-bezier(0.2, 0, 0, 1)`,drop:`cubic-bezier(.2,1,.1,1)`},ru={opacity:{drop:0,combining:.7},scale:{drop:.75}},iu={outOfTheWay:.2,minDropTime:.33,maxDropTime:.55},au=`${iu.outOfTheWay}s ${nu.outOfTheWay}`,ou={fluid:`opacity ${au}`,snap:`transform ${au}, opacity ${au}`,drop:e=>{let t=`${e}s ${nu.drop}`;return`transform ${t}, opacity ${t}`},outOfTheWay:`transform ${au}`,placeholder:`height ${au}, width ${au}, margin ${au}`},su=e=>Cs(e,Y)?void 0:`translate(${e.x}px, ${e.y}px)`,cu={moveTo:su,drop:(e,t)=>{let n=su(e);if(n)return t?`${n} scale(${ru.scale.drop})`:n}},{minDropTime:lu,maxDropTime:uu}=iu,du=uu-lu,fu=1500,pu=.6,mu=({current:e,destination:t,reason:n})=>{let r=Es(e,t);if(r<=0)return lu;if(r>=fu)return uu;let i=lu+r/fu*du,a=n===`CANCEL`?i*pu:i;return Number(a.toFixed(2))},hu=({impact:e,draggable:t,dimensions:n,viewport:r,afterCritical:i})=>{let{draggables:a,droppables:o}=n,s=Zc(e),c=s?o[s]:null,l=o[t.descriptor.droppableId];return Ss(yl({impact:e,draggable:t,draggables:a,afterCritical:i,droppable:c||l,viewport:r}),t.client.borderBox.center)},gu=({draggables:e,reason:t,lastImpact:n,home:r,viewport:i,onLiftImpact:a})=>!n.at||t!==`DROP`?{impact:vl({draggables:e,impact:a,destination:r,viewport:i,forceShouldAnimate:!0}),didDropInsideDroppable:!1}:n.at.type===`REORDER`?{impact:n,didDropInsideDroppable:!0}:{impact:{...n,displaced:Ys},didDropInsideDroppable:!0},_u=({getState:e,dispatch:t})=>n=>r=>{if(!$(r,`DROP`)){n(r);return}let i=e(),a=r.payload.reason;if(i.phase===`COLLECTING`){t(Ql({reason:a}));return}if(i.phase===`IDLE`)return;i.phase===`DROP_PENDING`&&i.isWaiting&&K(),!(i.phase===`DRAGGING`||i.phase===`DROP_PENDING`)&&K();let o=i.critical,s=i.dimensions,c=s.draggables[i.critical.draggable.id],{impact:l,didDropInsideDroppable:u}=gu({reason:a,lastImpact:i.impact,afterCritical:i.afterCritical,onLiftImpact:i.onLiftImpact,home:i.dimensions.droppables[i.critical.droppable.id],viewport:i.viewport,draggables:i.dimensions.draggables}),d=u?Us(l):null,f=u?Ws(l):null,p={index:o.draggable.index,droppableId:o.droppable.id},m={draggableId:c.descriptor.id,type:c.descriptor.type,source:p,reason:a,mode:i.movementMode,destination:d,combine:f},h=hu({impact:l,draggable:c,dimensions:s,viewport:i.viewport,afterCritical:i.afterCritical}),g={critical:i.critical,afterCritical:i.afterCritical,result:m,impact:l};if(!(!Cs(i.current.client.offset,h)||m.combine)){t(Xl({completed:g}));return}t(Yl({newHomeClientOffset:h,dropDuration:mu({current:i.current.client.offset,destination:h,reason:a}),completed:g}))},vu=()=>({x:window.pageXOffset,y:window.pageYOffset});function yu(e){return{eventName:`scroll`,options:{passive:!0,capture:!1},fn:t=>{t.target!==window&&t.target!==window.document||e()}}}function bu({onWindowScroll:e}){function t(){e(vu())}let n=rs(t),r=yu(n),i=os;function a(){return i!==os}function o(){a()&&K(),i=cs(window,[r])}function s(){!a()&&K(),n.cancel(),i(),i=os}return{start:o,stop:s,isActive:a}}var xu=e=>$(e,`DROP_COMPLETE`)||$(e,`DROP_ANIMATE`)||$(e,`FLUSH`),Su=e=>{let t=bu({onWindowScroll:t=>{e.dispatch(Hl({newScroll:t}))}});return e=>n=>{!t.isActive()&&$(n,`INITIAL_PUBLISH`)&&t.start(),t.isActive()&&xu(n)&&t.stop(),e(n)}},Cu=e=>{let t=!1,n=!1,r=setTimeout(()=>{n=!0}),i=i=>{t||n||(t=!0,e(i),clearTimeout(r))};return i.wasCalled=()=>t,i},wu=()=>{let e=[],t=t=>{let n=e.findIndex(e=>e.timerId===t);n===-1&&K();let[r]=e.splice(n,1);r.callback()};return{add:n=>{let r=setTimeout(()=>t(r)),i={timerId:r,callback:n};e.push(i)},flush:()=>{if(!e.length)return;let t=[...e];e.length=0,t.forEach(e=>{clearTimeout(e.timerId),e.callback()})}}},Tu=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.droppableId===t.droppableId&&e.index===t.index,Eu=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.draggableId===t.draggableId&&e.droppableId===t.droppableId,Du=(e,t)=>{if(e===t)return!0;let n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r},Ou=(e,t)=>{t()},ku=(e,t)=>({draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t});function Au(e,t,n,r){if(!e){n(r(t));return}let i=Cu(n);e(t,{announce:i}),i.wasCalled()||n(r(t))}var ju=(e,t)=>{let n=wu(),r=null,i=(t,n)=>{r&&K(),Ou(`onBeforeCapture`,()=>{let r=e().onBeforeCapture;r&&r({draggableId:t,mode:n})})},a=(t,n)=>{r&&K(),Ou(`onBeforeDragStart`,()=>{let r=e().onBeforeDragStart;r&&r(ku(t,n))})},o=(i,a)=>{r&&K();let o=ku(i,a);r={mode:a,lastCritical:i,lastLocation:o.source,lastCombine:null},n.add(()=>{Ou(`onDragStart`,()=>Au(e().onDragStart,o,t,ys.onDragStart))})},s=(i,a)=>{let o=Us(a),s=Ws(a);!r&&K();let c=!Du(i,r.lastCritical);c&&(r.lastCritical=i);let l=!Tu(r.lastLocation,o);l&&(r.lastLocation=o);let u=!Eu(r.lastCombine,s);if(u&&(r.lastCombine=s),!c&&!l&&!u)return;let d={...ku(i,r.mode),combine:s,destination:o};n.add(()=>{Ou(`onDragUpdate`,()=>Au(e().onDragUpdate,d,t,ys.onDragUpdate))})},c=()=>{!r&&K(),n.flush()},l=n=>{!r&&K(),r=null,Ou(`onDragEnd`,()=>Au(e().onDragEnd,n,t,ys.onDragEnd))};return{beforeCapture:i,beforeStart:a,start:o,update:s,flush:c,drop:l,abort:()=>{r&&l({...ku(r.lastCritical,r.mode),combine:null,destination:null,reason:`CANCEL`})}}},Mu=(e,t)=>{let n=ju(e,t);return e=>t=>r=>{if($(r,`BEFORE_INITIAL_CAPTURE`)){n.beforeCapture(r.payload.draggableId,r.payload.movementMode);return}if($(r,`INITIAL_PUBLISH`)){let e=r.payload.critical;n.beforeStart(e,r.payload.movementMode),t(r),n.start(e,r.payload.movementMode);return}if($(r,`DROP_COMPLETE`)){let e=r.payload.completed.result;n.flush(),t(r),n.drop(e);return}if(t(r),$(r,`FLUSH`)){n.abort();return}let i=e.getState();i.phase===`DRAGGING`&&n.update(i.critical,i.impact)}},Nu=e=>t=>n=>{if(!$(n,`DROP_ANIMATION_FINISHED`)){t(n);return}let r=e.getState();r.phase!==`DROP_ANIMATING`&&K(),e.dispatch(Xl({completed:r.completed}))},Pu=e=>{let t=null,n=null;function r(){n&&=(cancelAnimationFrame(n),null),t&&=(t(),null)}return i=>a=>{if(($(a,`FLUSH`)||$(a,`DROP_COMPLETE`)||$(a,`DROP_ANIMATION_FINISHED`))&&r(),i(a),!$(a,`DROP_ANIMATE`))return;let o={eventName:`scroll`,options:{capture:!0,passive:!1,once:!0},fn:function(){e.getState().phase===`DROP_ANIMATING`&&e.dispatch($l())}};n=requestAnimationFrame(()=>{n=null,t=cs(window,[o])})}},Fu=e=>()=>t=>n=>{($(n,`DROP_COMPLETE`)||$(n,`FLUSH`)||$(n,`DROP_ANIMATE`))&&e.stopPublishing(),t(n)},Iu=e=>{let t=!1;return()=>n=>r=>{if($(r,`INITIAL_PUBLISH`)){t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),e.tryRestoreFocusRecorded();return}if(n(r),t){if($(r,`FLUSH`)){t=!1,e.tryRestoreFocusRecorded();return}if($(r,`DROP_COMPLETE`)){t=!1;let n=r.payload.completed.result;n.combine&&e.tryShiftRecord(n.draggableId,n.combine.draggableId),e.tryRestoreFocusRecorded()}}}},Lu=e=>$(e,`DROP_COMPLETE`)||$(e,`DROP_ANIMATE`)||$(e,`FLUSH`),Ru=e=>t=>n=>r=>{if(Lu(r)){e.stop(),n(r);return}if($(r,`INITIAL_PUBLISH`)){n(r);let i=t.getState();i.phase!==`DRAGGING`&&K(),e.start(i);return}n(r),e.scroll(t.getState())},zu=e=>t=>n=>{if(t(n),!$(n,`PUBLISH_WHILE_DRAGGING`))return;let r=e.getState();r.phase===`DROP_PENDING`&&(r.isWaiting||e.dispatch(Zl({reason:r.reason})))},Bu=ka,Vu=({dimensionMarshal:e,focusMarshal:t,styleMarshal:n,getResponders:r,announce:i,autoScroller:a})=>Ea(Ml,Bu(Aa(tu(n),Fu(e),eu(e),_u,Nu,Pu,zu,Ru(a),Su,Iu(t),Mu(r,i)))),Hu=()=>({additions:{},removals:{},modified:{}});function Uu({registry:e,callbacks:t}){let n=Hu(),r=null,i=()=>{r||=(t.collectionStarting(),requestAnimationFrame(()=>{r=null;let{additions:i,removals:a,modified:o}=n,s=Object.keys(i).map(t=>e.draggable.getById(t).getDimension(Y)).sort((e,t)=>e.descriptor.index-t.descriptor.index),c=Object.keys(o).map(t=>({droppableId:t,scroll:e.droppable.getById(t).callbacks.getScrollWhileDragging()})),l={additions:s,removals:Object.keys(a),modified:c};n=Hu(),t.publish(l)}))};return{add:e=>{let t=e.descriptor.id;n.additions[t]=e,n.modified[e.descriptor.droppableId]=!0,n.removals[t]&&delete n.removals[t],i()},remove:e=>{let t=e.descriptor;n.removals[t.id]=!0,n.modified[t.droppableId]=!0,n.additions[t.id]&&delete n.additions[t.id],i()},stop:()=>{r&&(cancelAnimationFrame(r),r=null,n=Hu())}}}var Wu=({scrollHeight:e,scrollWidth:t,height:n,width:r})=>{let i=Ss({x:t,y:e},{x:r,y:n});return{x:Math.max(0,i.x),y:Math.max(0,i.y)}},Gu=()=>{let e=document.documentElement;return!e&&K(),e},Ku=()=>{let e=Gu();return Wu({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},qu=()=>{let e=vu(),t=Ku(),n=e.y,r=e.x,i=Gu(),a=i.clientWidth,o=i.clientHeight;return{frame:Go({top:n,left:r,right:r+a,bottom:n+o}),scroll:{initial:e,current:e,max:t,diff:{value:Y,displacement:Y}}}},Ju=({critical:e,scrollOptions:t,registry:n})=>{let r=qu(),i=r.scroll.current,a=e.droppable,o=n.droppable.getAllByType(a.type).map(e=>e.callbacks.getDimensionAndWatchScroll(i,t));return{dimensions:{draggables:zs(n.draggable.getAllByType(e.draggable.type).map(e=>e.getDimension(i))),droppables:Rs(o)},critical:e,viewport:r}};function Yu(e,t,n){return!(n.descriptor.id===t.id||n.descriptor.type!==t.type||e.droppable.getById(n.descriptor.droppableId).descriptor.mode!==`virtual`)}var Xu=(e,t)=>{let n=null,r=Uu({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),i=(r,i)=>{!e.droppable.exists(r)&&K(),n&&t.updateDroppableIsEnabled({id:r,isEnabled:i})},a=(r,i)=>{n&&(!e.droppable.exists(r)&&K(),t.updateDroppableIsCombineEnabled({id:r,isCombineEnabled:i}))},o=(r,i)=>{n&&(!e.droppable.exists(r)&&K(),t.updateDroppableScroll({id:r,newScroll:i}))},s=(t,r)=>{n&&e.droppable.getById(t).callbacks.scroll(r)},c=()=>{if(!n)return;r.stop();let t=n.critical.droppable;e.droppable.getAllByType(t.type).forEach(e=>e.callbacks.dragStopped()),n.unsubscribe(),n=null},l=t=>{!n&&K();let i=n.critical.draggable;t.type===`ADDITION`&&Yu(e,i,t.value)&&r.add(t.value),t.type===`REMOVAL`&&Yu(e,i,t.value)&&r.remove(t.value)};return{updateDroppableIsEnabled:i,updateDroppableIsCombineEnabled:a,scrollDroppable:s,updateDroppableScroll:o,startPublishing:t=>{n&&K();let r=e.draggable.getById(t.draggableId),i=e.droppable.getById(r.descriptor.droppableId),a={draggable:r.descriptor,droppable:i.descriptor};return n={critical:a,unsubscribe:e.subscribe(l)},Ju({critical:a,registry:e,scrollOptions:t.scrollOptions})},stopPublishing:c}},Zu=(e,t)=>e.phase===`IDLE`?!0:e.phase!==`DROP_ANIMATING`||e.completed.result.draggableId===t?!1:e.completed.result.reason===`DROP`,Qu=e=>{window.scrollBy(e.x,e.y)},$u=Z(e=>Bs(e).filter(e=>!(!e.isEnabled||!e.frame))),ed=(e,t)=>$u(t).find(t=>(!t.frame&&K(),tl(t.frame.pageMarginBox)(e)))||null,td=({center:e,destination:t,droppables:n})=>{if(t){let e=n[t];return e.frame?e:null}return ed(e,n)},nd={startFromPercentage:.25,maxScrollAtPercentage:.05,maxPixelScroll:28,ease:e=>e**2,durationDampening:{stopDampeningAt:1200,accelerateAt:360},disabled:!1},rd=(e,t,n=()=>nd)=>{let r=n();return{startScrollingFrom:e[t.size]*r.startFromPercentage,maxScrollValueAt:e[t.size]*r.maxScrollAtPercentage}},id=({startOfRange:e,endOfRange:t,current:n})=>{let r=t-e;return r===0?0:(n-e)/r},ad=1,od=(e,t,n=()=>nd)=>{let r=n();if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return r.maxPixelScroll;if(e===t.startScrollingFrom)return ad;let i=1-id({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),a=r.maxPixelScroll*r.ease(i);return Math.ceil(a)},sd=(e,t,n)=>{let r=n(),i=r.durationDampening.accelerateAt,a=r.durationDampening.stopDampeningAt,o=t,s=a,c=Date.now()-o;if(c>=a)return e;if(c<i)return ad;let l=id({startOfRange:i,endOfRange:s,current:c}),u=e*r.ease(l);return Math.ceil(u)},cd=({distanceToEdge:e,thresholds:t,dragStartTime:n,shouldUseTimeDampening:r,getAutoScrollerOptions:i})=>{let a=od(e,t,i);return a===0?0:r?Math.max(sd(a,n,i),ad):a},ld=({container:e,distanceToEdges:t,dragStartTime:n,axis:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=rd(e,r,a);return t[r.end]<t[r.start]?cd({distanceToEdge:t[r.end],thresholds:o,dragStartTime:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a}):-1*cd({distanceToEdge:t[r.start],thresholds:o,dragStartTime:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a})},ud=({container:e,subject:t,proposedScroll:n})=>{let r=t.height>e.height,i=t.width>e.width;return!i&&!r?n:i&&r?null:{x:i?0:n.x,y:r?0:n.y}},dd=Os(e=>e===0?0:e),fd=({dragStartTime:e,container:t,subject:n,center:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o={top:r.y-t.top,right:t.right-r.x,bottom:t.bottom-r.y,left:r.x-t.left},s=ld({container:t,distanceToEdges:o,dragStartTime:e,axis:ec,shouldUseTimeDampening:i,getAutoScrollerOptions:a}),c=dd({x:ld({container:t,distanceToEdges:o,dragStartTime:e,axis:tc,shouldUseTimeDampening:i,getAutoScrollerOptions:a}),y:s});if(Cs(c,Y))return null;let l=ud({container:t,subject:n,proposedScroll:c});return l?Cs(l,Y)?null:l:null},pd=Os(e=>e===0?0:e>0?1:-1),md=(()=>{let e=(e,t)=>e<0?e:e>t?e-t:0;return({current:t,max:n,change:r})=>{let i=X(t,r),a={x:e(i.x,n.x),y:e(i.y,n.y)};return Cs(a,Y)?null:a}})(),hd=({max:e,current:t,change:n})=>{let r={x:Math.max(t.x,e.x),y:Math.max(t.y,e.y)},i=pd(n),a=md({max:r,current:t,change:i});return!a||i.x!==0&&a.x===0||i.y!==0&&a.y===0},gd=(e,t)=>hd({current:e.scroll.current,max:e.scroll.max,change:t}),_d=(e,t)=>{if(!gd(e,t))return null;let n=e.scroll.max,r=e.scroll.current;return md({current:r,max:n,change:t})},vd=(e,t)=>{let n=e.frame;return n?hd({current:n.scroll.current,max:n.scroll.max,change:t}):!1},yd=(e,t)=>{let n=e.frame;return!n||!vd(e,t)?null:md({current:n.scroll.current,max:n.scroll.max,change:t})},bd=({viewport:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=fd({dragStartTime:r,container:e.frame,subject:t,center:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a});return o&&gd(e,o)?o:null},xd=({droppable:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:i,getAutoScrollerOptions:a})=>{let o=e.frame;if(!o)return null;let s=fd({dragStartTime:r,container:o.pageMarginBox,subject:t,center:n,shouldUseTimeDampening:i,getAutoScrollerOptions:a});return s&&vd(e,s)?s:null},Sd=({state:e,dragStartTime:t,shouldUseTimeDampening:n,scrollWindow:r,scrollDroppable:i,getAutoScrollerOptions:a})=>{let o=e.current.page.borderBoxCenter,s=e.dimensions.draggables[e.critical.draggable.id].page.marginBox;if(e.isWindowScrollAllowed){let i=e.viewport,c=bd({dragStartTime:t,viewport:i,subject:s,center:o,shouldUseTimeDampening:n,getAutoScrollerOptions:a});if(c){r(c);return}}let c=td({center:o,destination:Zc(e.impact),droppables:e.dimensions.droppables});if(!c)return;let l=xd({dragStartTime:t,droppable:c,subject:s,center:o,shouldUseTimeDampening:n,getAutoScrollerOptions:a});l&&i(c.descriptor.id,l)},Cd=({scrollWindow:e,scrollDroppable:t,getAutoScrollerOptions:n=()=>nd})=>{let r=rs(e),i=rs(t),a=null,o=e=>{!a&&K();let{shouldUseTimeDampening:t,dragStartTime:o}=a;Sd({state:e,scrollWindow:r,scrollDroppable:i,dragStartTime:o,shouldUseTimeDampening:t,getAutoScrollerOptions:n})};return{start:e=>{a&&K();let t=Date.now(),r=!1,i=()=>{r=!0};Sd({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:i,scrollDroppable:i,getAutoScrollerOptions:n}),a={dragStartTime:t,shouldUseTimeDampening:r},r&&o(e)},stop:()=>{a&&=(r.cancel(),i.cancel(),null)},scroll:o}},wd=({move:e,scrollDroppable:t,scrollWindow:n})=>{let r=(t,n)=>{e({client:X(t.current.client.selection,n)})},i=(e,n)=>{if(!vd(e,n))return n;let r=yd(e,n);if(!r)return t(e.descriptor.id,n),null;let i=Ss(n,r);return t(e.descriptor.id,i),Ss(n,i)},a=(e,t,r)=>{if(!e||!gd(t,r))return r;let i=_d(t,r);if(!i)return n(r),null;let a=Ss(r,i);return n(a),Ss(r,a)};return e=>{let t=e.scrollJumpRequest;if(!t)return;let n=Zc(e.impact);!n&&K();let o=i(e.dimensions.droppables[n],t);if(!o)return;let s=e.viewport,c=a(e.isWindowScrollAllowed,s,o);c&&r(e,c)}},Td=({scrollDroppable:e,scrollWindow:t,move:n,getAutoScrollerOptions:r})=>{let i=Cd({scrollWindow:t,scrollDroppable:e,getAutoScrollerOptions:r}),a=wd({move:n,scrollWindow:t,scrollDroppable:e});return{scroll:e=>{if(!(r().disabled||e.phase!==`DRAGGING`)){if(e.movementMode===`FLUID`){i.scroll(e);return}e.scrollJumpRequest&&a(e)}},start:i.start,stop:i.stop}},Ed=`data-rfd`,Dd=(()=>{let e=`${Ed}-drag-handle`;return{base:e,draggableId:`${e}-draggable-id`,contextId:`${e}-context-id`}})(),Od=(()=>{let e=`${Ed}-draggable`;return{base:e,contextId:`${e}-context-id`,id:`${e}-id`}})(),kd=(()=>{let e=`${Ed}-droppable`;return{base:e,contextId:`${e}-context-id`,id:`${e}-id`}})(),Ad={contextId:`${Ed}-scroll-container-context-id`},jd=e=>t=>`[${t}="${e}"]`,Md=(e,t)=>e.map(e=>{let n=e.styles[t];return n?`${e.selector} { ${n} }`:``}).join(` `),Nd=`pointer-events: none;`,Pd=e=>{let t=jd(e),n=(()=>{let e=`
82
82
  cursor: -webkit-grab;
83
83
  cursor: grab;
84
- `;return{selector:t(Sd.contextId),styles:{always:`
84
+ `;return{selector:t(Dd.contextId),styles:{always:`
85
85
  -webkit-touch-callout: none;
86
86
  -webkit-tap-highlight-color: rgba(0,0,0,0);
87
87
  touch-action: manipulation;
88
- `,resting:e,dragging:Od,dropAnimating:e}}})(),r=[(()=>{let e=`
89
- transition: ${tu.outOfTheWay};
90
- `;return{selector:t(Cd.contextId),styles:{dragging:e,dropAnimating:e,userCancel:e}}})(),n,{selector:t(wd.contextId),styles:{always:`overflow-anchor: none;`}},{selector:`body`,styles:{dragging:`
88
+ `,resting:e,dragging:Nd,dropAnimating:e}}})(),r=[(()=>{let e=`
89
+ transition: ${ou.outOfTheWay};
90
+ `;return{selector:t(Od.contextId),styles:{dragging:e,dropAnimating:e,userCancel:e}}})(),n,{selector:t(kd.contextId),styles:{always:`overflow-anchor: none;`}},{selector:`body`,styles:{dragging:`
91
91
  cursor: grabbing;
92
92
  cursor: -webkit-grabbing;
93
93
  user-select: none;
@@ -95,7 +95,7 @@ ${C.current.stack}
95
95
  -moz-user-select: none;
96
96
  -ms-user-select: none;
97
97
  overflow-anchor: none;
98
- `}}];return{always:Dd(r,`always`),resting:Dd(r,`resting`),dragging:Dd(r,`dragging`),dropAnimating:Dd(r,`dropAnimating`),userCancel:Dd(r,`userCancel`)}},Ad=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?G.useLayoutEffect:G.useEffect,jd=()=>{let e=document.querySelector(`head`);return!e&&q(),e},Md=e=>{let t=document.createElement(`style`);return e&&t.setAttribute(`nonce`,e),t.type=`text/css`,t};function Nd(e,t){let n=J(()=>kd(e),[e]),r=(0,G.useRef)(null),i=(0,G.useRef)(null),a=Y(Q(e=>{let t=i.current;!t&&q(),t.textContent=e}),[]),o=Y(e=>{let t=r.current;!t&&q(),t.textContent=e},[]);Ad(()=>{!(!r.current&&!i.current)&&q();let s=Md(t),c=Md(t);return r.current=s,i.current=c,s.setAttribute(`${xd}-always`,e),c.setAttribute(`${xd}-dynamic`,e),jd().appendChild(s),jd().appendChild(c),o(n.always),a(n.resting),()=>{let e=e=>{let t=e.current;!t&&q(),jd().removeChild(t),e.current=null};e(r),e(i)}},[t,o,a,n.always,n.resting,e]);let s=Y(()=>a(n.dragging),[a,n.dragging]),c=Y(e=>{if(e===`DROP`){a(n.dropAnimating);return}a(n.userCancel)},[a,n.dropAnimating,n.userCancel]),l=Y(()=>{i.current&&a(n.resting)},[a,n.resting]);return J(()=>({dragging:s,dropping:c,resting:l}),[s,c,l])}function Pd(e,t){return Array.from(e.querySelectorAll(t))}var Fd=e=>e&&e.ownerDocument&&e.ownerDocument.defaultView?e.ownerDocument.defaultView:window;function Id(e){return e instanceof Fd(e).HTMLElement}function Ld(e,t){let n=`[${Sd.contextId}="${e}"]`,r=Pd(document,n);if(!r.length)return null;let i=r.find(e=>e.getAttribute(Sd.draggableId)===t);return!i||!Id(i)?null:i}function Rd(e){let t=(0,G.useRef)({}),n=(0,G.useRef)(null),r=(0,G.useRef)(null),i=(0,G.useRef)(!1),a=Y(function(e,n){let r={id:e,focus:n};return t.current[e]=r,function(){let n=t.current;n[e]!==r&&delete n[e]}},[]),o=Y(function(t){let n=Ld(e,t);n&&n!==document.activeElement&&n.focus()},[e]),s=Y(function(e,t){n.current===e&&(n.current=t)},[]),c=Y(function(){r.current||i.current&&(r.current=requestAnimationFrame(()=>{r.current=null;let e=n.current;e&&o(e)}))},[o]),l=Y(function(e){n.current=null;let t=document.activeElement;t&&t.getAttribute(Sd.draggableId)===e&&(n.current=e)},[]);return Ad(()=>(i.current=!0,function(){i.current=!1;let e=r.current;e&&cancelAnimationFrame(e)}),[]),J(()=>({register:a,tryRecordFocus:l,tryRestoreFocusRecorded:c,tryShiftRecord:s}),[a,l,c,s])}function zd(){let e={draggables:{},droppables:{}},t=[];function n(e){return t.push(e),function(){let n=t.indexOf(e);n!==-1&&t.splice(n,1)}}function r(e){t.length&&t.forEach(t=>t(e))}function i(t){return e.draggables[t]||null}function a(e){let t=i(e);return!t&&q(),t}let o={register:t=>{e.draggables[t.descriptor.id]=t,r({type:`ADDITION`,value:t})},update:(t,n)=>{let r=e.draggables[n.descriptor.id];r&&r.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:t=>{let n=t.descriptor.id,a=i(n);a&&t.uniqueId===a.uniqueId&&(delete e.draggables[n],e.droppables[t.descriptor.droppableId]&&r({type:`REMOVAL`,value:t}))},getById:a,findById:i,exists:e=>!!i(e),getAllByType:t=>Object.values(e.draggables).filter(e=>e.descriptor.type===t)};function s(t){return e.droppables[t]||null}function c(e){let t=s(e);return!t&&q(),t}let l={register:t=>{e.droppables[t.descriptor.id]=t},unregister:t=>{let n=s(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:c,findById:s,exists:e=>!!s(e),getAllByType:t=>Object.values(e.droppables).filter(e=>e.descriptor.type===t)};function u(){e.draggables={},e.droppables={},t.length=0}return{draggable:o,droppable:l,subscribe:n,clean:u}}function Bd(){let e=J(zd,[]);return(0,G.useEffect)(()=>function(){e.clean()},[e]),e}var Vd=G.createContext(null),Hd=()=>{let e=document.body;return!e&&q(),e},Ud={position:`absolute`,width:`1px`,height:`1px`,margin:`-1px`,border:`0`,padding:`0`,overflow:`hidden`,clip:`rect(0 0 0 0)`,"clip-path":`inset(100%)`},Wd=e=>`rfd-announcement-${e}`;function Gd(e){let t=J(()=>Wd(e),[e]),n=(0,G.useRef)(null);return(0,G.useEffect)(function(){let e=document.createElement(`div`);return n.current=e,e.id=t,e.setAttribute(`aria-live`,`assertive`),e.setAttribute(`aria-atomic`,`true`),Qo(e.style,Ud),Hd().appendChild(e),function(){setTimeout(function(){let t=Hd();t.contains(e)&&t.removeChild(e),e===n.current&&(n.current=null)})}},[t]),Y(e=>{let t=n.current;if(t){t.textContent=e;return}},[])}var Kd={separator:`::`};function qd(e,t=Kd){let n=G.useId();return J(()=>`${e}${t.separator}${n}`,[t.separator,e,n])}function Jd({contextId:e,uniqueId:t}){return`rfd-hidden-text-${e}-${t}`}function Yd({contextId:e,text:t}){let n=qd(`hidden-text`,{separator:`-`}),r=J(()=>Jd({contextId:e,uniqueId:n}),[n,e]);return(0,G.useEffect)(function(){let e=document.createElement(`div`);return e.id=r,e.textContent=t,e.style.display=`none`,Hd().appendChild(e),function(){let t=Hd();t.contains(e)&&t.removeChild(e)}},[r,t]),r}var Xd=G.createContext(null);function Zd(e){let t=(0,G.useRef)(e);return(0,G.useEffect)(()=>{t.current=e}),t}function Qd(){let e=null;function t(){return!!e}function n(t){return t===e}function r(t){e&&q();let n={abandon:t};return e=n,n}function i(){!e&&q(),e=null}function a(){e&&(e.abandon(),i())}return{isClaimed:t,isActive:n,claim:r,release:i,tryAbandon:a}}function $d(e){return e.phase===`IDLE`||e.phase===`DROP_ANIMATING`?!1:e.isDragging}var ef=9,tf=13,nf=27,rf=32,af=33,of=34,sf=35,cf=36,lf=37,uf=38,df=39,ff=40,pf={[tf]:!0,[ef]:!0},mf=e=>{pf[e.keyCode]&&e.preventDefault()},hf=(()=>{let e=`visibilitychange`;return typeof document>`u`?e:[e,`ms${e}`,`webkit${e}`,`moz${e}`,`o${e}`].find(e=>`on${e}`in document)||e})(),gf=0,_f=5;function vf(e,t){return Math.abs(t.x-e.x)>=_f||Math.abs(t.y-e.y)>=_f}var yf={type:`IDLE`};function bf({cancel:e,completed:t,getPhase:n,setPhase:r}){return[{eventName:`mousemove`,fn:e=>{let{button:t,clientX:i,clientY:a}=e;if(t!==gf)return;let o={x:i,y:a},s=n();if(s.type===`DRAGGING`){e.preventDefault(),s.actions.move(o);return}s.type!==`PENDING`&&q();let c=s.point;vf(c,o)&&(e.preventDefault(),r({type:`DRAGGING`,actions:s.actions.fluidLift(o)}))}},{eventName:`mouseup`,fn:r=>{let i=n();if(i.type!==`DRAGGING`){e();return}r.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:`mousedown`,fn:t=>{n().type===`DRAGGING`&&t.preventDefault(),e()}},{eventName:`keydown`,fn:t=>{if(n().type===`PENDING`){e();return}if(t.keyCode===nf){t.preventDefault(),e();return}mf(t)}},{eventName:`resize`,fn:e},{eventName:`scroll`,options:{passive:!0,capture:!1},fn:()=>{n().type===`PENDING`&&e()}},{eventName:`webkitmouseforcedown`,fn:t=>{let r=n();if(r.type===`IDLE`&&q(),r.actions.shouldRespectForcePress()){e();return}t.preventDefault()}},{eventName:hf,fn:e}]}function xf(e){let t=(0,G.useRef)(yf),n=(0,G.useRef)(es),r=J(()=>({eventName:`mousedown`,fn:function(t){if(t.defaultPrevented||t.button!==gf||t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)return;let r=e.findClosestDraggableId(t);if(!r)return;let i=e.tryGetLock(r,o,{sourceEvent:t});if(!i)return;t.preventDefault();let a={x:t.clientX,y:t.clientY};n.current(),l(i,a)}}),[e]),i=J(()=>({eventName:`webkitmouseforcewillbegin`,fn:t=>{if(t.defaultPrevented)return;let n=e.findClosestDraggableId(t);if(!n)return;let r=e.findOptionsForDraggable(n);r&&(r.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}),[e]),a=Y(function(){n.current=ns(window,[i,r],{passive:!1,capture:!0})},[i,r]),o=Y(()=>{t.current.type!==`IDLE`&&(t.current=yf,n.current(),a())},[a]),s=Y(()=>{let e=t.current;o(),e.type===`DRAGGING`&&e.actions.cancel({shouldBlockNextClick:!0}),e.type===`PENDING`&&e.actions.abort()},[o]),c=Y(function(){let e={capture:!0,passive:!1},r=bf({cancel:s,completed:o,getPhase:()=>t.current,setPhase:e=>{t.current=e}});n.current=ns(window,r,e)},[s,o]),l=Y(function(e,n){t.current.type!==`IDLE`&&q(),t.current={type:`PENDING`,point:n,actions:e},c()},[c]);Ad(function(){return a(),function(){n.current()}},[a])}function Sf(){}var Cf={[of]:!0,[af]:!0,[cf]:!0,[sf]:!0};function wf(e,t){function n(){t(),e.cancel()}function r(){t(),e.drop()}return[{eventName:`keydown`,fn:t=>{if(t.keyCode===nf){t.preventDefault(),n();return}if(t.keyCode===rf){t.preventDefault(),r();return}if(t.keyCode===ff){t.preventDefault(),e.moveDown();return}if(t.keyCode===uf){t.preventDefault(),e.moveUp();return}if(t.keyCode===df){t.preventDefault(),e.moveRight();return}if(t.keyCode===lf){t.preventDefault(),e.moveLeft();return}if(Cf[t.keyCode]){t.preventDefault();return}mf(t)}},{eventName:`mousedown`,fn:n},{eventName:`mouseup`,fn:n},{eventName:`click`,fn:n},{eventName:`touchstart`,fn:n},{eventName:`resize`,fn:n},{eventName:`wheel`,fn:n,options:{passive:!0}},{eventName:hf,fn:n}]}function Tf(e){let t=(0,G.useRef)(Sf),n=J(()=>({eventName:`keydown`,fn:function(n){if(n.defaultPrevented||n.keyCode!==rf)return;let i=e.findClosestDraggableId(n);if(!i)return;let a=e.tryGetLock(i,c,{sourceEvent:n});if(!a)return;n.preventDefault();let o=!0,s=a.snapLift();t.current();function c(){!o&&q(),o=!1,t.current(),r()}t.current=ns(window,wf(s,c),{capture:!0,passive:!1})}}),[e]),r=Y(function(){t.current=ns(window,[n],{passive:!1,capture:!0})},[n]);Ad(function(){return r(),function(){t.current()}},[r])}var Ef={type:`IDLE`},Df=120,Of=.15;function kf({cancel:e,getPhase:t}){return[{eventName:`orientationchange`,fn:e},{eventName:`resize`,fn:e},{eventName:`contextmenu`,fn:e=>{e.preventDefault()}},{eventName:`keydown`,fn:n=>{if(t().type!==`DRAGGING`){e();return}n.keyCode===nf&&n.preventDefault(),e()}},{eventName:hf,fn:e}]}function Af({cancel:e,completed:t,getPhase:n}){return[{eventName:`touchmove`,options:{capture:!1},fn:t=>{let r=n();if(r.type!==`DRAGGING`){e();return}r.hasMoved=!0;let{clientX:i,clientY:a}=t.touches[0],o={x:i,y:a};t.preventDefault(),r.actions.move(o)}},{eventName:`touchend`,fn:r=>{let i=n();if(i.type!==`DRAGGING`){e();return}r.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:`touchcancel`,fn:t=>{if(n().type!==`DRAGGING`){e();return}t.preventDefault(),e()}},{eventName:`touchforcechange`,fn:t=>{let r=n();r.type===`IDLE`&&q();let i=t.touches[0];if(!i||!(i.force>=Of))return;let a=r.actions.shouldRespectForcePress();if(r.type===`PENDING`){a&&e();return}if(a){if(r.hasMoved){t.preventDefault();return}e();return}t.preventDefault()}},{eventName:hf,fn:e}]}function jf(e){let t=(0,G.useRef)(Ef),n=(0,G.useRef)(es),r=Y(function(){return t.current},[]),i=Y(function(e){t.current=e},[]),a=J(()=>({eventName:`touchstart`,fn:function(t){if(t.defaultPrevented)return;let r=e.findClosestDraggableId(t);if(!r)return;let i=e.tryGetLock(r,s,{sourceEvent:t});if(!i)return;let{clientX:a,clientY:o}=t.touches[0],c={x:a,y:o};n.current(),d(i,c)}}),[e]),o=Y(function(){n.current=ns(window,[a],{capture:!0,passive:!1})},[a]),s=Y(()=>{let e=t.current;e.type!==`IDLE`&&(e.type===`PENDING`&&clearTimeout(e.longPressTimerId),i(Ef),n.current(),o())},[o,i]),c=Y(()=>{let e=t.current;s(),e.type===`DRAGGING`&&e.actions.cancel({shouldBlockNextClick:!0}),e.type===`PENDING`&&e.actions.abort()},[s]),l=Y(function(){let e={capture:!0,passive:!1},t={cancel:c,completed:s,getPhase:r},i=ns(window,Af(t),e),a=ns(window,kf(t),e);n.current=function(){i(),a()}},[c,r,s]),u=Y(function(){let e=r();e.type!==`PENDING`&&q(),i({type:`DRAGGING`,actions:e.actions.fluidLift(e.point),hasMoved:!1})},[r,i]),d=Y(function(e,t){r().type!==`IDLE`&&q(),i({type:`PENDING`,point:t,actions:e,longPressTimerId:setTimeout(u,Df)}),l()},[l,r,i,u]);Ad(function(){return o(),function(){n.current();let e=r();e.type===`PENDING`&&(clearTimeout(e.longPressTimerId),i(Ef))}},[r,o,i]),Ad(function(){return ns(window,[{eventName:`touchmove`,fn:()=>{},options:{capture:!1,passive:!1}}])},[])}var Mf=[`input`,`button`,`textarea`,`select`,`option`,`optgroup`,`video`,`audio`];function Nf(e,t){if(t==null)return!1;if(Mf.includes(t.tagName.toLowerCase()))return!0;let n=t.getAttribute(`contenteditable`);return n===`true`||n===``?!0:t===e?!1:Nf(e,t.parentElement)}function Pf(e,t){let n=t.target;return Id(n)?Nf(e,n):!1}var Ff=e=>zo(e.getBoundingClientRect()).center;function If(e){return e instanceof Fd(e).Element}var Lf=(()=>{let e=`matches`;return typeof document>`u`?e:[e,`msMatchesSelector`,`webkitMatchesSelector`].find(e=>e in Element.prototype)||e})();function Rf(e,t){return e==null?null:e[Lf](t)?e:Rf(e.parentElement,t)}function zf(e,t){return e.closest?e.closest(t):Rf(e,t)}function Bf(e){return`[${Sd.contextId}="${e}"]`}function Vf(e,t){let n=t.target;if(!If(n))return null;let r=zf(n,Bf(e));return!r||!Id(r)?null:r}function Hf(e,t){let n=Vf(e,t);return n?n.getAttribute(Sd.draggableId):null}function Uf(e,t){let n=`[${Cd.contextId}="${e}"]`,r=Pd(document,n).find(e=>e.getAttribute(Cd.id)===t);return!r||!Id(r)?null:r}function Wf(e){e.preventDefault()}function Gf({expected:e,phase:t,isLockActive:n,shouldWarn:r}){return!(!n()||e!==t)}function Kf({lockAPI:e,store:t,registry:n,draggableId:r}){if(e.isClaimed())return!1;let i=n.draggable.findById(r);return!(!i||!i.options.isEnabled||!Ku(t.getState(),r))}function qf({lockAPI:e,contextId:t,store:n,registry:r,draggableId:i,forceSensorStop:a,sourceEvent:o}){if(!Kf({lockAPI:e,store:n,registry:r,draggableId:i}))return null;let s=r.draggable.getById(i),c=Uf(t,s.descriptor.id);if(!c||o&&!s.options.canDragInteractiveElements&&Pf(c,o))return null;let l=e.claim(a||es),u=`PRE_DRAG`;function d(){return s.options.shouldRespectForcePress}function f(){return e.isActive(l)}function p(e,t){Gf({expected:e,phase:u,isLockActive:f,shouldWarn:!0})&&n.dispatch(t())}let m=p.bind(null,`DRAGGING`);function h(t){function r(){e.release(),u=`COMPLETED`}u!==`PRE_DRAG`&&(r(),q()),n.dispatch(kl(t.liftActionArgs)),u=`DRAGGING`;function i(e,i={shouldBlockNextClick:!1}){if(t.cleanup(),i.shouldBlockNextClick){let e=ns(window,[{eventName:`click`,fn:Wf,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(e)}r(),n.dispatch(Kl({reason:e}))}return{isActive:()=>Gf({expected:`DRAGGING`,phase:u,isLockActive:f,shouldWarn:!1}),shouldRespectForcePress:d,drop:e=>i(`DROP`,e),cancel:e=>i(`CANCEL`,e),...t.actions}}function g(e){let t=Zo(e=>{m(()=>Il({client:e}))});return{...h({liftActionArgs:{id:i,clientSelection:e,movementMode:`FLUID`},cleanup:()=>t.cancel(),actions:{move:t}}),move:t}}function _(){return h({liftActionArgs:{id:i,clientSelection:Ff(c),movementMode:`SNAP`},cleanup:es,actions:{moveUp:()=>m(zl),moveRight:()=>m(Vl),moveDown:()=>m(Bl),moveLeft:()=>m(Hl)}})}function v(){Gf({expected:`PRE_DRAG`,phase:u,isLockActive:f,shouldWarn:!0})&&e.release()}return{isActive:()=>Gf({expected:`PRE_DRAG`,phase:u,isLockActive:f,shouldWarn:!1}),shouldRespectForcePress:d,fluidLift:g,snapLift:_,abort:v}}var Jf=[xf,Tf,jf];function Yf({contextId:e,store:t,registry:n,customSensors:r,enableDefaultSensors:i}){let a=[...i?Jf:[],...r||[]],o=(0,G.useState)(()=>Qd())[0],s=Y(function(e,t){$d(e)&&!$d(t)&&o.tryAbandon()},[o]);Ad(function(){let e=t.getState();return t.subscribe(()=>{let n=t.getState();s(e,n),e=n})},[o,t,s]),Ad(()=>o.tryAbandon,[o.tryAbandon]);let c=Y(e=>Kf({lockAPI:o,registry:n,store:t,draggableId:e}),[o,n,t]),l=Y((r,i,a)=>qf({lockAPI:o,registry:n,contextId:e,store:t,draggableId:r,forceSensorStop:i||null,sourceEvent:a&&a.sourceEvent?a.sourceEvent:null}),[e,o,n,t]),u=Y(t=>Hf(e,t),[e]),d=Y(e=>{let t=n.draggable.findById(e);return t?t.options:null},[n.draggable]),f=Y(function(){o.isClaimed()&&(o.tryAbandon(),t.getState().phase!==`IDLE`&&t.dispatch(Ul()))},[o,t]),p=Y(()=>o.isClaimed(),[o]),m=J(()=>({canGetLock:c,tryGetLock:l,findClosestDraggableId:u,findOptionsForDraggable:d,tryReleaseLock:f,isLockClaimed:p}),[c,l,u,d,f,p]);for(let e=0;e<a.length;e++)a[e](m)}var Xf=e=>({onBeforeCapture:t=>{(0,ma.flushSync)(()=>{e.onBeforeCapture&&e.onBeforeCapture(t)})},onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDragUpdate:e.onDragUpdate}),Zf=e=>({...Zu,...e.autoScrollerOptions,durationDampening:{...Zu.durationDampening,...e.autoScrollerOptions}});function Qf(e){return!e.current&&q(),e.current}function $f(e){let{contextId:t,setCallbacks:n,sensors:r,nonce:i,dragHandleUsageInstructions:a}=e,o=(0,G.useRef)(null),s=Zd(e),c=Y(()=>Xf(s.current),[s]),l=Y(()=>Zf(s.current),[s]),u=Gd(t),d=Yd({contextId:t,text:a}),f=Nd(t,i),p=Y(e=>{Qf(o).dispatch(e)},[]),m=J(()=>Sa({publishWhileDragging:jl,updateDroppableScroll:Nl,updateDroppableIsEnabled:Pl,updateDroppableIsCombineEnabled:Fl,collectionStarting:Ml},p),[p]),h=Bd(),g=J(()=>Gu(h,m),[h,m]),_=J(()=>bd({scrollWindow:qu,scrollDroppable:g.scrollDroppable,getAutoScrollerOptions:l,...Sa({move:Il},p)}),[g.scrollDroppable,p,l]),v=Rd(t),y=J(()=>Iu({announce:u,autoScroller:_,dimensionMarshal:g,focusMarshal:v,getResponders:c,styleMarshal:f}),[u,_,g,v,c,f]);o.current=y;let b=Y(()=>{let e=Qf(o);e.getState().phase!==`IDLE`&&e.dispatch(Ul())},[]),x=Y(()=>{let e=Qf(o).getState();return e.phase===`DROP_ANIMATING`?!0:e.phase===`IDLE`?!1:e.isDragging},[]);n(J(()=>({isDragging:x,tryAbort:b}),[x,b]));let S=Y(e=>Ku(Qf(o).getState(),e),[]),C=Y(()=>Yc(Qf(o).getState()),[]),w=J(()=>({marshal:g,focus:v,contextId:t,canLift:S,isMovementAllowed:C,dragHandleUsageInstructionsId:d,registry:h}),[t,g,d,v,S,C,h]);return Yf({contextId:t,store:y,registry:h,customSensors:r||null,enableDefaultSensors:e.enableDefaultSensors!==!1}),(0,G.useEffect)(()=>b,[b]),G.createElement(Xd.Provider,{value:w},G.createElement(Fo,{context:Vd,store:y},e.children))}function ep(){return G.useId()}function tp(e){let t=ep(),n=e.dragHandleUsageInstructions||ps.dragHandleUsageInstructions;return G.createElement(as,null,r=>G.createElement($f,{nonce:e.nonce,contextId:t,setCallbacks:r,dragHandleUsageInstructions:n,enableDefaultSensors:e.enableDefaultSensors,sensors:e.sensors,onBeforeCapture:e.onBeforeCapture,onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragUpdate:e.onDragUpdate,onDragEnd:e.onDragEnd,autoScrollerOptions:e.autoScrollerOptions},e.children))}var np={dragging:5e3,dropAnimating:4500},rp=(e,t)=>t?tu.drop(t.duration):e?tu.snap:tu.fluid,ip=(e,t)=>{if(e)return t?Ql.opacity.drop:Ql.opacity.combining},ap=e=>e.forceShouldAnimate==null?e.mode===`SNAP`:e.forceShouldAnimate;function op(e){let t=e.dimension.client,{offset:n,combineWith:r,dropping:i}=e,a=!!r,o=ap(e),s=!!i,c=s?ru.drop(n,a):ru.moveTo(n);return{position:`fixed`,top:t.marginBox.top,left:t.marginBox.left,boxSizing:`border-box`,width:t.borderBox.width,height:t.borderBox.height,transition:rp(o,i),transform:c,opacity:ip(a,s),zIndex:s?np.dropAnimating:np.dragging,pointerEvents:`none`}}function sp(e){return{transform:ru.moveTo(e.offset),transition:e.shouldAnimateDisplacement?void 0:`none`}}function cp(e){return e.type===`DRAGGING`?op(e):sp(e)}function lp(e,t,n=X){let r=window.getComputedStyle(t),i=Yo(t.getBoundingClientRect(),r),a=Jo(i,n);return{descriptor:e,placeholder:{client:i,tagName:t.tagName.toLowerCase(),display:r.display},displaceBy:{x:i.marginBox.width,y:i.marginBox.height},client:i,page:a}}function up(e){let t=qd(`draggable`),{descriptor:n,registry:r,getDraggableRef:i,canDragInteractiveElements:a,shouldRespectForcePress:o,isEnabled:s}=e,c=J(()=>({canDragInteractiveElements:a,shouldRespectForcePress:o,isEnabled:s}),[a,s,o]),l=Y(e=>{let t=i();return!t&&q(),lp(n,t,e)},[n,i]),u=J(()=>({uniqueId:t,descriptor:n,options:c,getDimension:l}),[n,l,c,t]),d=(0,G.useRef)(u),f=(0,G.useRef)(!0);Ad(()=>(r.draggable.register(d.current),()=>r.draggable.unregister(d.current)),[r.draggable]),Ad(()=>{if(f.current){f.current=!1;return}let e=d.current;d.current=u,r.draggable.update(u,e)},[u,r.draggable])}var dp=G.createContext(null);function fp(e){let t=(0,G.useContext)(e);return!t&&q(),t}function pp(e){e.preventDefault()}var mp=e=>{let t=(0,G.useRef)(null),n=Y((e=null)=>{t.current=e},[]),r=Y(()=>t.current,[]),{contextId:i,dragHandleUsageInstructionsId:a,registry:o}=fp(Xd),{type:s,droppableId:c}=fp(dp),l=J(()=>({id:e.draggableId,index:e.index,type:s,droppableId:c}),[e.draggableId,e.index,s,c]),{children:u,draggableId:d,isEnabled:f,shouldRespectForcePress:p,canDragInteractiveElements:m,isClone:h,mapped:g,dropAnimationFinished:_}=e;h||up(J(()=>({descriptor:l,registry:o,getDraggableRef:r,canDragInteractiveElements:m,shouldRespectForcePress:p,isEnabled:f}),[l,o,r,m,p,f]));let v=J(()=>f?{tabIndex:0,role:`button`,"aria-describedby":a,"data-rfd-drag-handle-draggable-id":d,"data-rfd-drag-handle-context-id":i,draggable:!1,onDragStart:pp}:null,[i,a,d,f]),y=Y(e=>{g.type===`DRAGGING`&&g.dropping&&e.propertyName===`transform`&&(0,ma.flushSync)(_)},[_,g]),b=J(()=>({innerRef:n,draggableProps:{"data-rfd-draggable-context-id":i,"data-rfd-draggable-id":d,style:cp(g),onTransitionEnd:g.type===`DRAGGING`&&g.dropping?y:void 0},dragHandleProps:v}),[i,v,d,g,y,n]),x=J(()=>({draggableId:l.id,type:l.type,source:{index:l.index,droppableId:l.droppableId}}),[l.droppableId,l.id,l.index,l.type]);return G.createElement(G.Fragment,null,u(b,g.snapshot,x))},hp=(e,t)=>e===t,gp=e=>{let{combine:t,destination:n}=e;return n?n.droppableId:t?t.droppableId:null},_p=e=>e.combine?e.combine.draggableId:null,vp=e=>e.at&&e.at.type===`COMBINE`?e.at.combine.draggableId:null;function yp(){let e=Q((e,t)=>({x:e,y:t})),t=Q((e,t,n=null,r=null,i=null)=>({isDragging:!0,isClone:t,isDropAnimating:!!i,dropAnimation:i,mode:e,draggingOver:n,combineWith:r,combineTargetFor:null})),n=Q((e,n,r,i,a=null,o=null,s=null)=>({mapped:{type:`DRAGGING`,dropping:null,draggingOver:a,combineWith:o,mode:n,offset:e,dimension:r,forceShouldAnimate:s,snapshot:t(n,i,a,o,null)}}));return(r,i)=>{if($d(r)){if(r.critical.draggable.id!==i.draggableId)return null;let t=r.current.client.offset,a=r.dimensions.draggables[i.draggableId],o=Kc(r.impact),s=vp(r.impact),c=r.forceShouldAnimate;return n(e(t.x,t.y),r.movementMode,a,i.isClone,o,s,c)}if(r.phase===`DROP_ANIMATING`){let e=r.completed;if(e.result.draggableId!==i.draggableId)return null;let n=i.isClone,a=r.dimensions.draggables[i.draggableId],o=e.result,s=o.mode,c=gp(o),l=_p(o),u={duration:r.dropDuration,curve:Zl.drop,moveTo:r.newHomeClientOffset,opacity:l?Ql.opacity.drop:null,scale:l?Ql.scale.drop:null};return{mapped:{type:`DRAGGING`,offset:r.newHomeClientOffset,dimension:a,dropping:u,draggingOver:c,combineWith:l,mode:s,forceShouldAnimate:null,snapshot:t(s,n,c,l,u)}}}return null}}function bp(e=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:e,combineWith:null}}var xp={mapped:{type:`SECONDARY`,offset:X,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:bp(null)}};function Sp(){let e=Q((e,t)=>({x:e,y:t})),t=Q(bp),n=Q((e,n=null,r)=>({mapped:{type:`SECONDARY`,offset:e,combineTargetFor:n,shouldAnimateDisplacement:r,snapshot:t(n)}})),r=e=>e?n(X,e,!0):null,i=(t,i,a,o)=>{let s=a.displaced.visible[t],c=!!(o.inVirtualList&&o.effected[t]),l=Rs(a),u=l&&l.draggableId===t?i:null;if(!s){if(!c)return r(u);if(a.displaced.invisible[t])return null;let i=vs(o.displacedBy.point);return n(e(i.x,i.y),u,!0)}if(c)return r(u);let d=a.displacedBy.point;return n(e(d.x,d.y),u,s.shouldAnimate)};return(e,t)=>{if($d(e))return e.critical.draggable.id===t.draggableId?null:i(t.draggableId,e.critical.draggable.id,e.impact,e.afterCritical);if(e.phase===`DROP_ANIMATING`){let n=e.completed;return n.result.draggableId===t.draggableId?null:i(t.draggableId,n.result.draggableId,n.impact,n.afterCritical)}return null}}var Cp=No(()=>{let e=yp(),t=Sp();return(n,r)=>e(n,r)||t(n,r)||xp},{dropAnimationFinished:Jl},null,{context:Vd,areStatePropsEqual:hp})(mp);function wp(e){return fp(dp).isUsingCloneFor===e.draggableId&&!e.isClone?null:G.createElement(Cp,e)}function Tp(e){let t=typeof e.isDragDisabled==`boolean`?!e.isDragDisabled:!0,n=!!e.disableInteractiveElementBlocking,r=!!e.shouldRespectForcePress;return G.createElement(wp,Qo({},e,{isClone:!1,isEnabled:t,canDragInteractiveElements:n,shouldRespectForcePress:r}))}var Ep=e=>t=>e===t,Dp=Ep(`scroll`),Op=Ep(`auto`),kp=(e,t)=>t(e.overflowX)||t(e.overflowY),Ap=e=>{let t=window.getComputedStyle(e),n={overflowX:t.overflowX,overflowY:t.overflowY};return kp(n,Dp)||kp(n,Op)},jp=()=>!1,Mp=e=>e==null?null:e===document.body?jp()?e:null:e===document.documentElement?null:Ap(e)?e:Mp(e.parentElement),Np=e=>({x:e.scrollLeft,y:e.scrollTop}),Pp=e=>e?window.getComputedStyle(e).position===`fixed`?!0:Pp(e.parentElement):!1,Fp=e=>({closestScrollable:Mp(e),isFixedOnPage:Pp(e)}),Ip=({descriptor:e,isEnabled:t,isCombineEnabled:n,isFixedOnPage:r,direction:i,client:a,page:o,closest:s})=>{let c=(()=>{if(!s)return null;let{scrollSize:e,client:t}=s,n=zu({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,height:t.paddingBox.height,width:t.paddingBox.width});return{pageMarginBox:s.page.marginBox,frameClient:t,scrollSize:e,shouldClipSubject:s.shouldClipSubject,scroll:{initial:s.scroll,current:s.scroll,max:n,diff:{value:X,displacement:X}}}})(),l=i===`vertical`?Js:Ys;return{descriptor:e,isCombineEnabled:n,isFixedOnPage:r,axis:l,isEnabled:t,client:a,page:o,frame:c,subject:As({page:o,withPlaceholder:null,axis:l,frame:c})}},Lp=(e,t)=>{let n=Xo(e);if(!t||e!==t)return n;let r=n.paddingBox.top-t.scrollTop,i=n.paddingBox.left-t.scrollLeft,a=r+t.scrollHeight;return Wo({borderBox:Bo({top:r,right:i+t.scrollWidth,bottom:a,left:i},n.border),margin:n.margin,border:n.border,padding:n.padding})},Rp=({ref:e,descriptor:t,env:n,windowScroll:r,direction:i,isDropDisabled:a,isCombineEnabled:o,shouldClipSubject:s})=>{let c=n.closestScrollable,l=Lp(e,c),u=Jo(l,r),d=(()=>{if(!c)return null;let e=Xo(c),t={scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth};return{client:e,page:Jo(e,r),scroll:Np(c),scrollSize:t,shouldClipSubject:s}})();return Ip({descriptor:t,isEnabled:!a,isCombineEnabled:o,isFixedOnPage:n.isFixedOnPage,direction:i,client:l,page:u,closest:d})},zp={passive:!1},Bp={passive:!0},Vp=e=>e.shouldPublishImmediately?zp:Bp,Hp=e=>e&&e.env.closestScrollable||null;function Up(e){let t=(0,G.useRef)(null),n=fp(Xd),r=qd(`droppable`),{registry:i,marshal:a}=n,o=Zd(e),s=J(()=>({id:e.droppableId,type:e.type,mode:e.mode}),[e.droppableId,e.mode,e.type]),c=(0,G.useRef)(s),l=J(()=>Q((e,n)=>{!t.current&&q();let r={x:e,y:n};a.updateDroppableScroll(s.id,r)}),[s.id,a]),u=Y(()=>{let e=t.current;return!e||!e.env.closestScrollable?X:Np(e.env.closestScrollable)},[]),d=Y(()=>{let e=u();l(e.x,e.y)},[u,l]),f=J(()=>Zo(d),[d]),p=Y(()=>{let e=t.current,n=Hp(e);if(!(e&&n)&&q(),e.scrollOptions.shouldPublishImmediately){d();return}f()},[f,d]),m=Y((e,r)=>{t.current&&q();let i=o.current,a=i.getDroppableRef();!a&&q();let c=Fp(a),l={ref:a,descriptor:s,env:c,scrollOptions:r};t.current=l;let u=Rp({ref:a,descriptor:s,env:c,windowScroll:e,direction:i.direction,isDropDisabled:i.isDropDisabled,isCombineEnabled:i.isCombineEnabled,shouldClipSubject:!i.ignoreContainerClipping}),d=c.closestScrollable;return d&&(d.setAttribute(Td.contextId,n.contextId),d.addEventListener(`scroll`,p,Vp(l.scrollOptions))),u},[n.contextId,s,p,o]),h=Y(()=>{let e=t.current,n=Hp(e);return!(e&&n)&&q(),Np(n)},[]),g=Y(()=>{let e=t.current;!e&&q();let n=Hp(e);t.current=null,n&&(f.cancel(),n.removeAttribute(Td.contextId),n.removeEventListener(`scroll`,p,Vp(e.scrollOptions)))},[p,f]),_=Y(e=>{let n=t.current;!n&&q();let r=Hp(n);!r&&q(),r.scrollTop+=e.y,r.scrollLeft+=e.x},[]),v=J(()=>({getDimensionAndWatchScroll:m,getScrollWhileDragging:h,dragStopped:g,scroll:_}),[g,m,h,_]),y=J(()=>({uniqueId:r,descriptor:s,callbacks:v}),[v,s,r]);Ad(()=>(c.current=y.descriptor,i.droppable.register(y),()=>{t.current&&g(),i.droppable.unregister(y)}),[v,s,g,y,a,i.droppable]),Ad(()=>{t.current&&a.updateDroppableIsEnabled(c.current.id,!e.isDropDisabled)},[e.isDropDisabled,a]),Ad(()=>{t.current&&a.updateDroppableIsCombineEnabled(c.current.id,e.isCombineEnabled)},[e.isCombineEnabled,a])}function Wp(){}var Gp={width:0,height:0,margin:Es},Kp=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>e||n===`close`?Gp:{height:t.client.borderBox.height,width:t.client.borderBox.width,margin:t.client.margin},qp=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>{let r=Kp({isAnimatingOpenOnMount:e,placeholder:t,animate:n});return{display:t.display,boxSizing:`border-box`,width:r.width,height:r.height,marginTop:r.margin.top,marginRight:r.margin.right,marginBottom:r.margin.bottom,marginLeft:r.margin.left,flexShrink:`0`,flexGrow:`0`,pointerEvents:`none`,transition:n===`none`?null:tu.placeholder}},Jp=G.memo(e=>{let t=(0,G.useRef)(null),n=Y(()=>{t.current&&=(clearTimeout(t.current),null)},[]),{animate:r,onTransitionEnd:i,onClose:a,contextId:o}=e,[s,c]=(0,G.useState)(e.animate===`open`);(0,G.useEffect)(()=>s?r===`open`?t.current?Wp:(t.current=setTimeout(()=>{t.current=null,c(!1)}),n):(n(),c(!1),Wp):Wp,[r,s,n]);let l=Y(e=>{e.propertyName===`height`&&(i(),r===`close`&&a())},[r,a,i]),u=qp({isAnimatingOpenOnMount:s,animate:e.animate,placeholder:e.placeholder});return G.createElement(e.placeholder.tagName,{style:u,"data-rfd-placeholder-context-id":o,onTransitionEnd:l,ref:e.innerRef})}),Yp=class extends G.PureComponent{constructor(...e){super(...e),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?`open`:`none`},this.onClose=()=>{this.state.animate===`close`&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(e,t){return e.shouldAnimate?e.on?{isVisible:!0,data:e.on,animate:`open`}:t.isVisible?{isVisible:!0,data:t.data,animate:`close`}:{isVisible:!1,animate:`close`,data:null}:{isVisible:!!e.on,data:e.on,animate:`none`}}render(){if(!this.state.isVisible)return null;let e={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(e)}},Xp=e=>{let t=(0,G.useContext)(Xd);!t&&q();let{contextId:n,isMovementAllowed:r}=t,i=(0,G.useRef)(null),a=(0,G.useRef)(null),{children:o,droppableId:s,type:c,mode:l,direction:u,ignoreContainerClipping:d,isDropDisabled:f,isCombineEnabled:p,snapshot:m,useClone:h,updateViewportMaxScroll:g,getContainerForClone:_}=e,v=Y(()=>i.current,[]),y=Y((e=null)=>{i.current=e},[]);Y(()=>a.current,[]);let b=Y((e=null)=>{a.current=e},[]),x=Y(()=>{r()&&g({maxScroll:Vu()})},[r,g]);Up({droppableId:s,type:c,mode:l,direction:u,isDropDisabled:f,isCombineEnabled:p,ignoreContainerClipping:d,getDroppableRef:v});let S=J(()=>G.createElement(Yp,{on:e.placeholder,shouldAnimate:e.shouldAnimatePlaceholder},({onClose:e,data:t,animate:r})=>G.createElement(Jp,{placeholder:t,onClose:e,innerRef:b,animate:r,contextId:n,onTransitionEnd:x})),[n,x,e.placeholder,e.shouldAnimatePlaceholder,b]),C=J(()=>({innerRef:y,placeholder:S,droppableProps:{"data-rfd-droppable-id":s,"data-rfd-droppable-context-id":n}}),[n,s,S,y]),w=h?h.dragging.draggableId:null,T=J(()=>({droppableId:s,type:c,isUsingCloneFor:w}),[s,w,c]);function E(){if(!h)return null;let{dragging:e,render:t}=h,n=G.createElement(wp,{draggableId:e.draggableId,index:e.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(n,r)=>t(n,r,e));return ma.createPortal(n,_())}return G.createElement(dp.Provider,{value:T},o(C,m),E())};function Zp(){return!document.body&&q(),document.body}var Qp={mode:`standard`,type:`DEFAULT`,direction:`vertical`,isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:Zp},$p=e=>{let t={...e},n;for(n in Qp)e[n]===void 0&&(t={...t,[n]:Qp[n]});return t},em=(e,t)=>e===t.droppable.type,tm=(e,t)=>t.draggables[e.draggable.id],nm=No(()=>{let e={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},t={...e,shouldAnimatePlaceholder:!1},n=Q(e=>({draggableId:e.id,type:e.type,source:{index:e.index,droppableId:e.droppableId}})),r=Q((r,i,a,o,s,c)=>{let l=s.descriptor.id;if(s.descriptor.droppableId===r){let e=c?{render:c,dragging:n(s.descriptor)}:null,t={isDraggingOver:a,draggingOverWith:a?l:null,draggingFromThisWith:l,isUsingPlaceholder:!0};return{placeholder:s.placeholder,shouldAnimatePlaceholder:!1,snapshot:t,useClone:e}}if(!i)return t;if(!o)return e;let u={isDraggingOver:a,draggingOverWith:l,draggingFromThisWith:null,isUsingPlaceholder:!0};return{placeholder:s.placeholder,shouldAnimatePlaceholder:!0,snapshot:u,useClone:null}});return(n,i)=>{let a=$p(i),o=a.droppableId,s=a.type,c=!a.isDropDisabled,l=a.renderClone;if($d(n)){let e=n.critical;if(!em(s,e))return t;let i=tm(e,n.dimensions),a=Kc(n.impact)===o;return r(o,c,a,a,i,l)}if(n.phase===`DROP_ANIMATING`){let e=n.completed;if(!em(s,e.critical))return t;let i=tm(e.critical,n.dimensions);return r(o,c,gp(e.result)===o,Kc(e.impact)===o,i,l)}if(n.phase===`IDLE`&&n.completed&&!n.shouldFlush){let r=n.completed;if(!em(s,r.critical))return t;let i=Kc(r.impact)===o,a=!!(r.impact.at&&r.impact.at.type===`COMBINE`),c=r.critical.droppable.id===o;return i?a?e:t:c?e:t}return t}},{updateViewportMaxScroll:Rl},(e,t,n)=>({...$p(n),...e,...t}),{context:Vd,areStatePropsEqual:hp})(Xp),rm=new WeakMap,im=`
98
+ `}}];return{always:Md(r,`always`),resting:Md(r,`resting`),dragging:Md(r,`dragging`),dropAnimating:Md(r,`dropAnimating`),userCancel:Md(r,`userCancel`)}},Fd=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?G.useLayoutEffect:G.useEffect,Id=()=>{let e=document.querySelector(`head`);return!e&&K(),e},Ld=e=>{let t=document.createElement(`style`);return e&&t.setAttribute(`nonce`,e),t.type=`text/css`,t};function Rd(e,t){let n=q(()=>Pd(e),[e]),r=(0,G.useRef)(null),i=(0,G.useRef)(null),a=J(Z(e=>{let t=i.current;!t&&K(),t.textContent=e}),[]),o=J(e=>{let t=r.current;!t&&K(),t.textContent=e},[]);Fd(()=>{!(!r.current&&!i.current)&&K();let s=Ld(t),c=Ld(t);return r.current=s,i.current=c,s.setAttribute(`${Ed}-always`,e),c.setAttribute(`${Ed}-dynamic`,e),Id().appendChild(s),Id().appendChild(c),o(n.always),a(n.resting),()=>{let e=e=>{let t=e.current;!t&&K(),Id().removeChild(t),e.current=null};e(r),e(i)}},[t,o,a,n.always,n.resting,e]);let s=J(()=>a(n.dragging),[a,n.dragging]),c=J(e=>{if(e===`DROP`){a(n.dropAnimating);return}a(n.userCancel)},[a,n.dropAnimating,n.userCancel]),l=J(()=>{i.current&&a(n.resting)},[a,n.resting]);return q(()=>({dragging:s,dropping:c,resting:l}),[s,c,l])}function zd(e,t){return Array.from(e.querySelectorAll(t))}var Bd=e=>e&&e.ownerDocument&&e.ownerDocument.defaultView?e.ownerDocument.defaultView:window;function Vd(e){return e instanceof Bd(e).HTMLElement}function Hd(e,t){let n=`[${Dd.contextId}="${e}"]`,r=zd(document,n);if(!r.length)return null;let i=r.find(e=>e.getAttribute(Dd.draggableId)===t);return!i||!Vd(i)?null:i}function Ud(e){let t=(0,G.useRef)({}),n=(0,G.useRef)(null),r=(0,G.useRef)(null),i=(0,G.useRef)(!1),a=J(function(e,n){let r={id:e,focus:n};return t.current[e]=r,function(){let n=t.current;n[e]!==r&&delete n[e]}},[]),o=J(function(t){let n=Hd(e,t);n&&n!==document.activeElement&&n.focus()},[e]),s=J(function(e,t){n.current===e&&(n.current=t)},[]),c=J(function(){r.current||i.current&&(r.current=requestAnimationFrame(()=>{r.current=null;let e=n.current;e&&o(e)}))},[o]),l=J(function(e){n.current=null;let t=document.activeElement;t&&t.getAttribute(Dd.draggableId)===e&&(n.current=e)},[]);return Fd(()=>(i.current=!0,function(){i.current=!1;let e=r.current;e&&cancelAnimationFrame(e)}),[]),q(()=>({register:a,tryRecordFocus:l,tryRestoreFocusRecorded:c,tryShiftRecord:s}),[a,l,c,s])}function Wd(){let e={draggables:{},droppables:{}},t=[];function n(e){return t.push(e),function(){let n=t.indexOf(e);n!==-1&&t.splice(n,1)}}function r(e){t.length&&t.forEach(t=>t(e))}function i(t){return e.draggables[t]||null}function a(e){let t=i(e);return!t&&K(),t}let o={register:t=>{e.draggables[t.descriptor.id]=t,r({type:`ADDITION`,value:t})},update:(t,n)=>{let r=e.draggables[n.descriptor.id];r&&r.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:t=>{let n=t.descriptor.id,a=i(n);a&&t.uniqueId===a.uniqueId&&(delete e.draggables[n],e.droppables[t.descriptor.droppableId]&&r({type:`REMOVAL`,value:t}))},getById:a,findById:i,exists:e=>!!i(e),getAllByType:t=>Object.values(e.draggables).filter(e=>e.descriptor.type===t)};function s(t){return e.droppables[t]||null}function c(e){let t=s(e);return!t&&K(),t}let l={register:t=>{e.droppables[t.descriptor.id]=t},unregister:t=>{let n=s(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:c,findById:s,exists:e=>!!s(e),getAllByType:t=>Object.values(e.droppables).filter(e=>e.descriptor.type===t)};function u(){e.draggables={},e.droppables={},t.length=0}return{draggable:o,droppable:l,subscribe:n,clean:u}}function Gd(){let e=q(Wd,[]);return(0,G.useEffect)(()=>function(){e.clean()},[e]),e}var Kd=G.createContext(null),qd=()=>{let e=document.body;return!e&&K(),e},Jd={position:`absolute`,width:`1px`,height:`1px`,margin:`-1px`,border:`0`,padding:`0`,overflow:`hidden`,clip:`rect(0 0 0 0)`,"clip-path":`inset(100%)`},Yd=e=>`rfd-announcement-${e}`;function Xd(e){let t=q(()=>Yd(e),[e]),n=(0,G.useRef)(null);return(0,G.useEffect)(function(){let e=document.createElement(`div`);return n.current=e,e.id=t,e.setAttribute(`aria-live`,`assertive`),e.setAttribute(`aria-atomic`,`true`),is(e.style,Jd),qd().appendChild(e),function(){setTimeout(function(){let t=qd();t.contains(e)&&t.removeChild(e),e===n.current&&(n.current=null)})}},[t]),J(e=>{let t=n.current;if(t){t.textContent=e;return}},[])}var Zd={separator:`::`};function Qd(e,t=Zd){let n=G.useId();return q(()=>`${e}${t.separator}${n}`,[t.separator,e,n])}function $d({contextId:e,uniqueId:t}){return`rfd-hidden-text-${e}-${t}`}function ef({contextId:e,text:t}){let n=Qd(`hidden-text`,{separator:`-`}),r=q(()=>$d({contextId:e,uniqueId:n}),[n,e]);return(0,G.useEffect)(function(){let e=document.createElement(`div`);return e.id=r,e.textContent=t,e.style.display=`none`,qd().appendChild(e),function(){let t=qd();t.contains(e)&&t.removeChild(e)}},[r,t]),r}var tf=G.createContext(null);function nf(e){let t=(0,G.useRef)(e);return(0,G.useEffect)(()=>{t.current=e}),t}function rf(){let e=null;function t(){return!!e}function n(t){return t===e}function r(t){e&&K();let n={abandon:t};return e=n,n}function i(){!e&&K(),e=null}function a(){e&&(e.abandon(),i())}return{isClaimed:t,isActive:n,claim:r,release:i,tryAbandon:a}}function af(e){return e.phase===`IDLE`||e.phase===`DROP_ANIMATING`?!1:e.isDragging}var of=9,sf=13,cf=27,lf=32,uf=33,df=34,ff=35,pf=36,mf=37,hf=38,gf=39,_f=40,vf={[sf]:!0,[of]:!0},yf=e=>{vf[e.keyCode]&&e.preventDefault()},bf=(()=>{let e=`visibilitychange`;return typeof document>`u`?e:[e,`ms${e}`,`webkit${e}`,`moz${e}`,`o${e}`].find(e=>`on${e}`in document)||e})(),xf=0,Sf=5;function Cf(e,t){return Math.abs(t.x-e.x)>=Sf||Math.abs(t.y-e.y)>=Sf}var wf={type:`IDLE`};function Tf({cancel:e,completed:t,getPhase:n,setPhase:r}){return[{eventName:`mousemove`,fn:e=>{let{button:t,clientX:i,clientY:a}=e;if(t!==xf)return;let o={x:i,y:a},s=n();if(s.type===`DRAGGING`){e.preventDefault(),s.actions.move(o);return}s.type!==`PENDING`&&K();let c=s.point;Cf(c,o)&&(e.preventDefault(),r({type:`DRAGGING`,actions:s.actions.fluidLift(o)}))}},{eventName:`mouseup`,fn:r=>{let i=n();if(i.type!==`DRAGGING`){e();return}r.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:`mousedown`,fn:t=>{n().type===`DRAGGING`&&t.preventDefault(),e()}},{eventName:`keydown`,fn:t=>{if(n().type===`PENDING`){e();return}if(t.keyCode===cf){t.preventDefault(),e();return}yf(t)}},{eventName:`resize`,fn:e},{eventName:`scroll`,options:{passive:!0,capture:!1},fn:()=>{n().type===`PENDING`&&e()}},{eventName:`webkitmouseforcedown`,fn:t=>{let r=n();if(r.type===`IDLE`&&K(),r.actions.shouldRespectForcePress()){e();return}t.preventDefault()}},{eventName:bf,fn:e}]}function Ef(e){let t=(0,G.useRef)(wf),n=(0,G.useRef)(os),r=q(()=>({eventName:`mousedown`,fn:function(t){if(t.defaultPrevented||t.button!==xf||t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)return;let r=e.findClosestDraggableId(t);if(!r)return;let i=e.tryGetLock(r,o,{sourceEvent:t});if(!i)return;t.preventDefault();let a={x:t.clientX,y:t.clientY};n.current(),l(i,a)}}),[e]),i=q(()=>({eventName:`webkitmouseforcewillbegin`,fn:t=>{if(t.defaultPrevented)return;let n=e.findClosestDraggableId(t);if(!n)return;let r=e.findOptionsForDraggable(n);r&&(r.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}),[e]),a=J(function(){n.current=cs(window,[i,r],{passive:!1,capture:!0})},[i,r]),o=J(()=>{t.current.type!==`IDLE`&&(t.current=wf,n.current(),a())},[a]),s=J(()=>{let e=t.current;o(),e.type===`DRAGGING`&&e.actions.cancel({shouldBlockNextClick:!0}),e.type===`PENDING`&&e.actions.abort()},[o]),c=J(function(){let e={capture:!0,passive:!1},r=Tf({cancel:s,completed:o,getPhase:()=>t.current,setPhase:e=>{t.current=e}});n.current=cs(window,r,e)},[s,o]),l=J(function(e,n){t.current.type!==`IDLE`&&K(),t.current={type:`PENDING`,point:n,actions:e},c()},[c]);Fd(function(){return a(),function(){n.current()}},[a])}function Df(){}var Of={[df]:!0,[uf]:!0,[pf]:!0,[ff]:!0};function kf(e,t){function n(){t(),e.cancel()}function r(){t(),e.drop()}return[{eventName:`keydown`,fn:t=>{if(t.keyCode===cf){t.preventDefault(),n();return}if(t.keyCode===lf){t.preventDefault(),r();return}if(t.keyCode===_f){t.preventDefault(),e.moveDown();return}if(t.keyCode===hf){t.preventDefault(),e.moveUp();return}if(t.keyCode===gf){t.preventDefault(),e.moveRight();return}if(t.keyCode===mf){t.preventDefault(),e.moveLeft();return}if(Of[t.keyCode]){t.preventDefault();return}yf(t)}},{eventName:`mousedown`,fn:n},{eventName:`mouseup`,fn:n},{eventName:`click`,fn:n},{eventName:`touchstart`,fn:n},{eventName:`resize`,fn:n},{eventName:`wheel`,fn:n,options:{passive:!0}},{eventName:bf,fn:n}]}function Af(e){let t=(0,G.useRef)(Df),n=q(()=>({eventName:`keydown`,fn:function(n){if(n.defaultPrevented||n.keyCode!==lf)return;let i=e.findClosestDraggableId(n);if(!i)return;let a=e.tryGetLock(i,c,{sourceEvent:n});if(!a)return;n.preventDefault();let o=!0,s=a.snapLift();t.current();function c(){!o&&K(),o=!1,t.current(),r()}t.current=cs(window,kf(s,c),{capture:!0,passive:!1})}}),[e]),r=J(function(){t.current=cs(window,[n],{passive:!1,capture:!0})},[n]);Fd(function(){return r(),function(){t.current()}},[r])}var jf={type:`IDLE`},Mf=120,Nf=.15;function Pf({cancel:e,getPhase:t}){return[{eventName:`orientationchange`,fn:e},{eventName:`resize`,fn:e},{eventName:`contextmenu`,fn:e=>{e.preventDefault()}},{eventName:`keydown`,fn:n=>{if(t().type!==`DRAGGING`){e();return}n.keyCode===cf&&n.preventDefault(),e()}},{eventName:bf,fn:e}]}function Ff({cancel:e,completed:t,getPhase:n}){return[{eventName:`touchmove`,options:{capture:!1},fn:t=>{let r=n();if(r.type!==`DRAGGING`){e();return}r.hasMoved=!0;let{clientX:i,clientY:a}=t.touches[0],o={x:i,y:a};t.preventDefault(),r.actions.move(o)}},{eventName:`touchend`,fn:r=>{let i=n();if(i.type!==`DRAGGING`){e();return}r.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:`touchcancel`,fn:t=>{if(n().type!==`DRAGGING`){e();return}t.preventDefault(),e()}},{eventName:`touchforcechange`,fn:t=>{let r=n();r.type===`IDLE`&&K();let i=t.touches[0];if(!i||!(i.force>=Nf))return;let a=r.actions.shouldRespectForcePress();if(r.type===`PENDING`){a&&e();return}if(a){if(r.hasMoved){t.preventDefault();return}e();return}t.preventDefault()}},{eventName:bf,fn:e}]}function If(e){let t=(0,G.useRef)(jf),n=(0,G.useRef)(os),r=J(function(){return t.current},[]),i=J(function(e){t.current=e},[]),a=q(()=>({eventName:`touchstart`,fn:function(t){if(t.defaultPrevented)return;let r=e.findClosestDraggableId(t);if(!r)return;let i=e.tryGetLock(r,s,{sourceEvent:t});if(!i)return;let{clientX:a,clientY:o}=t.touches[0],c={x:a,y:o};n.current(),d(i,c)}}),[e]),o=J(function(){n.current=cs(window,[a],{capture:!0,passive:!1})},[a]),s=J(()=>{let e=t.current;e.type!==`IDLE`&&(e.type===`PENDING`&&clearTimeout(e.longPressTimerId),i(jf),n.current(),o())},[o,i]),c=J(()=>{let e=t.current;s(),e.type===`DRAGGING`&&e.actions.cancel({shouldBlockNextClick:!0}),e.type===`PENDING`&&e.actions.abort()},[s]),l=J(function(){let e={capture:!0,passive:!1},t={cancel:c,completed:s,getPhase:r},i=cs(window,Ff(t),e),a=cs(window,Pf(t),e);n.current=function(){i(),a()}},[c,r,s]),u=J(function(){let e=r();e.type!==`PENDING`&&K(),i({type:`DRAGGING`,actions:e.actions.fluidLift(e.point),hasMoved:!1})},[r,i]),d=J(function(e,t){r().type!==`IDLE`&&K(),i({type:`PENDING`,point:t,actions:e,longPressTimerId:setTimeout(u,Mf)}),l()},[l,r,i,u]);Fd(function(){return o(),function(){n.current();let e=r();e.type===`PENDING`&&(clearTimeout(e.longPressTimerId),i(jf))}},[r,o,i]),Fd(function(){return cs(window,[{eventName:`touchmove`,fn:()=>{},options:{capture:!1,passive:!1}}])},[])}var Lf=[`input`,`button`,`textarea`,`select`,`option`,`optgroup`,`video`,`audio`];function Rf(e,t){if(t==null)return!1;if(Lf.includes(t.tagName.toLowerCase()))return!0;let n=t.getAttribute(`contenteditable`);return n===`true`||n===``?!0:t===e?!1:Rf(e,t.parentElement)}function zf(e,t){let n=t.target;return Vd(n)?Rf(e,n):!1}var Bf=e=>Go(e.getBoundingClientRect()).center;function Vf(e){return e instanceof Bd(e).Element}var Hf=(()=>{let e=`matches`;return typeof document>`u`?e:[e,`msMatchesSelector`,`webkitMatchesSelector`].find(e=>e in Element.prototype)||e})();function Uf(e,t){return e==null?null:e[Hf](t)?e:Uf(e.parentElement,t)}function Wf(e,t){return e.closest?e.closest(t):Uf(e,t)}function Gf(e){return`[${Dd.contextId}="${e}"]`}function Kf(e,t){let n=t.target;if(!Vf(n))return null;let r=Wf(n,Gf(e));return!r||!Vd(r)?null:r}function qf(e,t){let n=Kf(e,t);return n?n.getAttribute(Dd.draggableId):null}function Jf(e,t){let n=`[${Od.contextId}="${e}"]`,r=zd(document,n).find(e=>e.getAttribute(Od.id)===t);return!r||!Vd(r)?null:r}function Yf(e){e.preventDefault()}function Xf({expected:e,phase:t,isLockActive:n,shouldWarn:r}){return!(!n()||e!==t)}function Zf({lockAPI:e,store:t,registry:n,draggableId:r}){if(e.isClaimed())return!1;let i=n.draggable.findById(r);return!(!i||!i.options.isEnabled||!Zu(t.getState(),r))}function Qf({lockAPI:e,contextId:t,store:n,registry:r,draggableId:i,forceSensorStop:a,sourceEvent:o}){if(!Zf({lockAPI:e,store:n,registry:r,draggableId:i}))return null;let s=r.draggable.getById(i),c=Jf(t,s.descriptor.id);if(!c||o&&!s.options.canDragInteractiveElements&&zf(c,o))return null;let l=e.claim(a||os),u=`PRE_DRAG`;function d(){return s.options.shouldRespectForcePress}function f(){return e.isActive(l)}function p(e,t){Xf({expected:e,phase:u,isLockActive:f,shouldWarn:!0})&&n.dispatch(t())}let m=p.bind(null,`DRAGGING`);function h(t){function r(){e.release(),u=`COMPLETED`}u!==`PRE_DRAG`&&(r(),K()),n.dispatch(Pl(t.liftActionArgs)),u=`DRAGGING`;function i(e,i={shouldBlockNextClick:!1}){if(t.cleanup(),i.shouldBlockNextClick){let e=cs(window,[{eventName:`click`,fn:Yf,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(e)}r(),n.dispatch(Zl({reason:e}))}return{isActive:()=>Xf({expected:`DRAGGING`,phase:u,isLockActive:f,shouldWarn:!1}),shouldRespectForcePress:d,drop:e=>i(`DROP`,e),cancel:e=>i(`CANCEL`,e),...t.actions}}function g(e){let t=rs(e=>{m(()=>Vl({client:e}))});return{...h({liftActionArgs:{id:i,clientSelection:e,movementMode:`FLUID`},cleanup:()=>t.cancel(),actions:{move:t}}),move:t}}function _(){return h({liftActionArgs:{id:i,clientSelection:Bf(c),movementMode:`SNAP`},cleanup:os,actions:{moveUp:()=>m(Wl),moveRight:()=>m(Kl),moveDown:()=>m(Gl),moveLeft:()=>m(ql)}})}function v(){Xf({expected:`PRE_DRAG`,phase:u,isLockActive:f,shouldWarn:!0})&&e.release()}return{isActive:()=>Xf({expected:`PRE_DRAG`,phase:u,isLockActive:f,shouldWarn:!1}),shouldRespectForcePress:d,fluidLift:g,snapLift:_,abort:v}}var $f=[Ef,Af,If];function ep({contextId:e,store:t,registry:n,customSensors:r,enableDefaultSensors:i}){let a=[...i?$f:[],...r||[]],o=(0,G.useState)(()=>rf())[0],s=J(function(e,t){af(e)&&!af(t)&&o.tryAbandon()},[o]);Fd(function(){let e=t.getState();return t.subscribe(()=>{let n=t.getState();s(e,n),e=n})},[o,t,s]),Fd(()=>o.tryAbandon,[o.tryAbandon]);let c=J(e=>Zf({lockAPI:o,registry:n,store:t,draggableId:e}),[o,n,t]),l=J((r,i,a)=>Qf({lockAPI:o,registry:n,contextId:e,store:t,draggableId:r,forceSensorStop:i||null,sourceEvent:a&&a.sourceEvent?a.sourceEvent:null}),[e,o,n,t]),u=J(t=>qf(e,t),[e]),d=J(e=>{let t=n.draggable.findById(e);return t?t.options:null},[n.draggable]),f=J(function(){o.isClaimed()&&(o.tryAbandon(),t.getState().phase!==`IDLE`&&t.dispatch(Jl()))},[o,t]),p=J(()=>o.isClaimed(),[o]),m=q(()=>({canGetLock:c,tryGetLock:l,findClosestDraggableId:u,findOptionsForDraggable:d,tryReleaseLock:f,isLockClaimed:p}),[c,l,u,d,f,p]);for(let e=0;e<a.length;e++)a[e](m)}var tp=e=>({onBeforeCapture:t=>{(0,ya.flushSync)(()=>{e.onBeforeCapture&&e.onBeforeCapture(t)})},onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDragUpdate:e.onDragUpdate}),np=e=>({...nd,...e.autoScrollerOptions,durationDampening:{...nd.durationDampening,...e.autoScrollerOptions}});function rp(e){return!e.current&&K(),e.current}function ip(e){let{contextId:t,setCallbacks:n,sensors:r,nonce:i,dragHandleUsageInstructions:a}=e,o=(0,G.useRef)(null),s=nf(e),c=J(()=>tp(s.current),[s]),l=J(()=>np(s.current),[s]),u=Xd(t),d=ef({contextId:t,text:a}),f=Rd(t,i),p=J(e=>{rp(o).dispatch(e)},[]),m=q(()=>Oa({publishWhileDragging:Il,updateDroppableScroll:Rl,updateDroppableIsEnabled:zl,updateDroppableIsCombineEnabled:Bl,collectionStarting:Ll},p),[p]),h=Gd(),g=q(()=>Xu(h,m),[h,m]),_=q(()=>Td({scrollWindow:Qu,scrollDroppable:g.scrollDroppable,getAutoScrollerOptions:l,...Oa({move:Vl},p)}),[g.scrollDroppable,p,l]),v=Ud(t),y=q(()=>Vu({announce:u,autoScroller:_,dimensionMarshal:g,focusMarshal:v,getResponders:c,styleMarshal:f}),[u,_,g,v,c,f]);o.current=y;let b=J(()=>{let e=rp(o);e.getState().phase!==`IDLE`&&e.dispatch(Jl())},[]),x=J(()=>{let e=rp(o).getState();return e.phase===`DROP_ANIMATING`?!0:e.phase===`IDLE`?!1:e.isDragging},[]);n(q(()=>({isDragging:x,tryAbort:b}),[x,b]));let S=J(e=>Zu(rp(o).getState(),e),[]),C=J(()=>el(rp(o).getState()),[]),w=q(()=>({marshal:g,focus:v,contextId:t,canLift:S,isMovementAllowed:C,dragHandleUsageInstructionsId:d,registry:h}),[t,g,d,v,S,C,h]);return ep({contextId:t,store:y,registry:h,customSensors:r||null,enableDefaultSensors:e.enableDefaultSensors!==!1}),(0,G.useEffect)(()=>b,[b]),G.createElement(tf.Provider,{value:w},G.createElement(Vo,{context:Kd,store:y},e.children))}function ap(){return G.useId()}function op(e){let t=ap(),n=e.dragHandleUsageInstructions||ys.dragHandleUsageInstructions;return G.createElement(ds,null,r=>G.createElement(ip,{nonce:e.nonce,contextId:t,setCallbacks:r,dragHandleUsageInstructions:n,enableDefaultSensors:e.enableDefaultSensors,sensors:e.sensors,onBeforeCapture:e.onBeforeCapture,onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragUpdate:e.onDragUpdate,onDragEnd:e.onDragEnd,autoScrollerOptions:e.autoScrollerOptions},e.children))}var sp={dragging:5e3,dropAnimating:4500},cp=(e,t)=>t?ou.drop(t.duration):e?ou.snap:ou.fluid,lp=(e,t)=>{if(e)return t?ru.opacity.drop:ru.opacity.combining},up=e=>e.forceShouldAnimate==null?e.mode===`SNAP`:e.forceShouldAnimate;function dp(e){let t=e.dimension.client,{offset:n,combineWith:r,dropping:i}=e,a=!!r,o=up(e),s=!!i,c=s?cu.drop(n,a):cu.moveTo(n);return{position:`fixed`,top:t.marginBox.top,left:t.marginBox.left,boxSizing:`border-box`,width:t.borderBox.width,height:t.borderBox.height,transition:cp(o,i),transform:c,opacity:lp(a,s),zIndex:s?sp.dropAnimating:sp.dragging,pointerEvents:`none`}}function fp(e){return{transform:cu.moveTo(e.offset),transition:e.shouldAnimateDisplacement?void 0:`none`}}function pp(e){return e.type===`DRAGGING`?dp(e):fp(e)}function mp(e,t,n=Y){let r=window.getComputedStyle(t),i=ts(t.getBoundingClientRect(),r),a=es(i,n);return{descriptor:e,placeholder:{client:i,tagName:t.tagName.toLowerCase(),display:r.display},displaceBy:{x:i.marginBox.width,y:i.marginBox.height},client:i,page:a}}function hp(e){let t=Qd(`draggable`),{descriptor:n,registry:r,getDraggableRef:i,canDragInteractiveElements:a,shouldRespectForcePress:o,isEnabled:s}=e,c=q(()=>({canDragInteractiveElements:a,shouldRespectForcePress:o,isEnabled:s}),[a,s,o]),l=J(e=>{let t=i();return!t&&K(),mp(n,t,e)},[n,i]),u=q(()=>({uniqueId:t,descriptor:n,options:c,getDimension:l}),[n,l,c,t]),d=(0,G.useRef)(u),f=(0,G.useRef)(!0);Fd(()=>(r.draggable.register(d.current),()=>r.draggable.unregister(d.current)),[r.draggable]),Fd(()=>{if(f.current){f.current=!1;return}let e=d.current;d.current=u,r.draggable.update(u,e)},[u,r.draggable])}var gp=G.createContext(null);function _p(e){let t=(0,G.useContext)(e);return!t&&K(),t}function vp(e){e.preventDefault()}var yp=e=>{let t=(0,G.useRef)(null),n=J((e=null)=>{t.current=e},[]),r=J(()=>t.current,[]),{contextId:i,dragHandleUsageInstructionsId:a,registry:o}=_p(tf),{type:s,droppableId:c}=_p(gp),l=q(()=>({id:e.draggableId,index:e.index,type:s,droppableId:c}),[e.draggableId,e.index,s,c]),{children:u,draggableId:d,isEnabled:f,shouldRespectForcePress:p,canDragInteractiveElements:m,isClone:h,mapped:g,dropAnimationFinished:_}=e;h||hp(q(()=>({descriptor:l,registry:o,getDraggableRef:r,canDragInteractiveElements:m,shouldRespectForcePress:p,isEnabled:f}),[l,o,r,m,p,f]));let v=q(()=>f?{tabIndex:0,role:`button`,"aria-describedby":a,"data-rfd-drag-handle-draggable-id":d,"data-rfd-drag-handle-context-id":i,draggable:!1,onDragStart:vp}:null,[i,a,d,f]),y=J(e=>{g.type===`DRAGGING`&&g.dropping&&e.propertyName===`transform`&&(0,ya.flushSync)(_)},[_,g]),b=q(()=>({innerRef:n,draggableProps:{"data-rfd-draggable-context-id":i,"data-rfd-draggable-id":d,style:pp(g),onTransitionEnd:g.type===`DRAGGING`&&g.dropping?y:void 0},dragHandleProps:v}),[i,v,d,g,y,n]),x=q(()=>({draggableId:l.id,type:l.type,source:{index:l.index,droppableId:l.droppableId}}),[l.droppableId,l.id,l.index,l.type]);return G.createElement(G.Fragment,null,u(b,g.snapshot,x))},bp=(e,t)=>e===t,xp=e=>{let{combine:t,destination:n}=e;return n?n.droppableId:t?t.droppableId:null},Sp=e=>e.combine?e.combine.draggableId:null,Cp=e=>e.at&&e.at.type===`COMBINE`?e.at.combine.draggableId:null;function wp(){let e=Z((e,t)=>({x:e,y:t})),t=Z((e,t,n=null,r=null,i=null)=>({isDragging:!0,isClone:t,isDropAnimating:!!i,dropAnimation:i,mode:e,draggingOver:n,combineWith:r,combineTargetFor:null})),n=Z((e,n,r,i,a=null,o=null,s=null)=>({mapped:{type:`DRAGGING`,dropping:null,draggingOver:a,combineWith:o,mode:n,offset:e,dimension:r,forceShouldAnimate:s,snapshot:t(n,i,a,o,null)}}));return(r,i)=>{if(af(r)){if(r.critical.draggable.id!==i.draggableId)return null;let t=r.current.client.offset,a=r.dimensions.draggables[i.draggableId],o=Zc(r.impact),s=Cp(r.impact),c=r.forceShouldAnimate;return n(e(t.x,t.y),r.movementMode,a,i.isClone,o,s,c)}if(r.phase===`DROP_ANIMATING`){let e=r.completed;if(e.result.draggableId!==i.draggableId)return null;let n=i.isClone,a=r.dimensions.draggables[i.draggableId],o=e.result,s=o.mode,c=xp(o),l=Sp(o),u={duration:r.dropDuration,curve:nu.drop,moveTo:r.newHomeClientOffset,opacity:l?ru.opacity.drop:null,scale:l?ru.scale.drop:null};return{mapped:{type:`DRAGGING`,offset:r.newHomeClientOffset,dimension:a,dropping:u,draggingOver:c,combineWith:l,mode:s,forceShouldAnimate:null,snapshot:t(s,n,c,l,u)}}}return null}}function Tp(e=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:e,combineWith:null}}var Ep={mapped:{type:`SECONDARY`,offset:Y,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:Tp(null)}};function Dp(){let e=Z((e,t)=>({x:e,y:t})),t=Z(Tp),n=Z((e,n=null,r)=>({mapped:{type:`SECONDARY`,offset:e,combineTargetFor:n,shouldAnimateDisplacement:r,snapshot:t(n)}})),r=e=>e?n(Y,e,!0):null,i=(t,i,a,o)=>{let s=a.displaced.visible[t],c=!!(o.inVirtualList&&o.effected[t]),l=Ws(a),u=l&&l.draggableId===t?i:null;if(!s){if(!c)return r(u);if(a.displaced.invisible[t])return null;let i=ws(o.displacedBy.point);return n(e(i.x,i.y),u,!0)}if(c)return r(u);let d=a.displacedBy.point;return n(e(d.x,d.y),u,s.shouldAnimate)};return(e,t)=>{if(af(e))return e.critical.draggable.id===t.draggableId?null:i(t.draggableId,e.critical.draggable.id,e.impact,e.afterCritical);if(e.phase===`DROP_ANIMATING`){let n=e.completed;return n.result.draggableId===t.draggableId?null:i(t.draggableId,n.result.draggableId,n.impact,n.afterCritical)}return null}}var Op=zo(()=>{let e=wp(),t=Dp();return(n,r)=>e(n,r)||t(n,r)||Ep},{dropAnimationFinished:$l},null,{context:Kd,areStatePropsEqual:bp})(yp);function kp(e){return _p(gp).isUsingCloneFor===e.draggableId&&!e.isClone?null:G.createElement(Op,e)}function Ap(e){let t=typeof e.isDragDisabled==`boolean`?!e.isDragDisabled:!0,n=!!e.disableInteractiveElementBlocking,r=!!e.shouldRespectForcePress;return G.createElement(kp,is({},e,{isClone:!1,isEnabled:t,canDragInteractiveElements:n,shouldRespectForcePress:r}))}var jp=e=>t=>e===t,Mp=jp(`scroll`),Np=jp(`auto`),Pp=(e,t)=>t(e.overflowX)||t(e.overflowY),Fp=e=>{let t=window.getComputedStyle(e),n={overflowX:t.overflowX,overflowY:t.overflowY};return Pp(n,Mp)||Pp(n,Np)},Ip=()=>!1,Lp=e=>e==null?null:e===document.body?Ip()?e:null:e===document.documentElement?null:Fp(e)?e:Lp(e.parentElement),Rp=e=>({x:e.scrollLeft,y:e.scrollTop}),zp=e=>e?window.getComputedStyle(e).position===`fixed`?!0:zp(e.parentElement):!1,Bp=e=>({closestScrollable:Lp(e),isFixedOnPage:zp(e)}),Vp=({descriptor:e,isEnabled:t,isCombineEnabled:n,isFixedOnPage:r,direction:i,client:a,page:o,closest:s})=>{let c=(()=>{if(!s)return null;let{scrollSize:e,client:t}=s,n=Wu({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,height:t.paddingBox.height,width:t.paddingBox.width});return{pageMarginBox:s.page.marginBox,frameClient:t,scrollSize:e,shouldClipSubject:s.shouldClipSubject,scroll:{initial:s.scroll,current:s.scroll,max:n,diff:{value:Y,displacement:Y}}}})(),l=i===`vertical`?ec:tc;return{descriptor:e,isCombineEnabled:n,isFixedOnPage:r,axis:l,isEnabled:t,client:a,page:o,frame:c,subject:Is({page:o,withPlaceholder:null,axis:l,frame:c})}},Hp=(e,t)=>{let n=ns(e);if(!t||e!==t)return n;let r=n.paddingBox.top-t.scrollTop,i=n.paddingBox.left-t.scrollLeft,a=r+t.scrollHeight;return Xo({borderBox:Ko({top:r,right:i+t.scrollWidth,bottom:a,left:i},n.border),margin:n.margin,border:n.border,padding:n.padding})},Up=({ref:e,descriptor:t,env:n,windowScroll:r,direction:i,isDropDisabled:a,isCombineEnabled:o,shouldClipSubject:s})=>{let c=n.closestScrollable,l=Hp(e,c),u=es(l,r),d=(()=>{if(!c)return null;let e=ns(c),t={scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth};return{client:e,page:es(e,r),scroll:Rp(c),scrollSize:t,shouldClipSubject:s}})();return Vp({descriptor:t,isEnabled:!a,isCombineEnabled:o,isFixedOnPage:n.isFixedOnPage,direction:i,client:l,page:u,closest:d})},Wp={passive:!1},Gp={passive:!0},Kp=e=>e.shouldPublishImmediately?Wp:Gp,qp=e=>e&&e.env.closestScrollable||null;function Jp(e){let t=(0,G.useRef)(null),n=_p(tf),r=Qd(`droppable`),{registry:i,marshal:a}=n,o=nf(e),s=q(()=>({id:e.droppableId,type:e.type,mode:e.mode}),[e.droppableId,e.mode,e.type]),c=(0,G.useRef)(s),l=q(()=>Z((e,n)=>{!t.current&&K();let r={x:e,y:n};a.updateDroppableScroll(s.id,r)}),[s.id,a]),u=J(()=>{let e=t.current;return!e||!e.env.closestScrollable?Y:Rp(e.env.closestScrollable)},[]),d=J(()=>{let e=u();l(e.x,e.y)},[u,l]),f=q(()=>rs(d),[d]),p=J(()=>{let e=t.current,n=qp(e);if(!(e&&n)&&K(),e.scrollOptions.shouldPublishImmediately){d();return}f()},[f,d]),m=J((e,r)=>{t.current&&K();let i=o.current,a=i.getDroppableRef();!a&&K();let c=Bp(a),l={ref:a,descriptor:s,env:c,scrollOptions:r};t.current=l;let u=Up({ref:a,descriptor:s,env:c,windowScroll:e,direction:i.direction,isDropDisabled:i.isDropDisabled,isCombineEnabled:i.isCombineEnabled,shouldClipSubject:!i.ignoreContainerClipping}),d=c.closestScrollable;return d&&(d.setAttribute(Ad.contextId,n.contextId),d.addEventListener(`scroll`,p,Kp(l.scrollOptions))),u},[n.contextId,s,p,o]),h=J(()=>{let e=t.current,n=qp(e);return!(e&&n)&&K(),Rp(n)},[]),g=J(()=>{let e=t.current;!e&&K();let n=qp(e);t.current=null,n&&(f.cancel(),n.removeAttribute(Ad.contextId),n.removeEventListener(`scroll`,p,Kp(e.scrollOptions)))},[p,f]),_=J(e=>{let n=t.current;!n&&K();let r=qp(n);!r&&K(),r.scrollTop+=e.y,r.scrollLeft+=e.x},[]),v=q(()=>({getDimensionAndWatchScroll:m,getScrollWhileDragging:h,dragStopped:g,scroll:_}),[g,m,h,_]),y=q(()=>({uniqueId:r,descriptor:s,callbacks:v}),[v,s,r]);Fd(()=>(c.current=y.descriptor,i.droppable.register(y),()=>{t.current&&g(),i.droppable.unregister(y)}),[v,s,g,y,a,i.droppable]),Fd(()=>{t.current&&a.updateDroppableIsEnabled(c.current.id,!e.isDropDisabled)},[e.isDropDisabled,a]),Fd(()=>{t.current&&a.updateDroppableIsCombineEnabled(c.current.id,e.isCombineEnabled)},[e.isCombineEnabled,a])}function Yp(){}var Xp={width:0,height:0,margin:Ms},Zp=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>e||n===`close`?Xp:{height:t.client.borderBox.height,width:t.client.borderBox.width,margin:t.client.margin},Qp=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>{let r=Zp({isAnimatingOpenOnMount:e,placeholder:t,animate:n});return{display:t.display,boxSizing:`border-box`,width:r.width,height:r.height,marginTop:r.margin.top,marginRight:r.margin.right,marginBottom:r.margin.bottom,marginLeft:r.margin.left,flexShrink:`0`,flexGrow:`0`,pointerEvents:`none`,transition:n===`none`?null:ou.placeholder}},$p=G.memo(e=>{let t=(0,G.useRef)(null),n=J(()=>{t.current&&=(clearTimeout(t.current),null)},[]),{animate:r,onTransitionEnd:i,onClose:a,contextId:o}=e,[s,c]=(0,G.useState)(e.animate===`open`);(0,G.useEffect)(()=>s?r===`open`?t.current?Yp:(t.current=setTimeout(()=>{t.current=null,c(!1)}),n):(n(),c(!1),Yp):Yp,[r,s,n]);let l=J(e=>{e.propertyName===`height`&&(i(),r===`close`&&a())},[r,a,i]),u=Qp({isAnimatingOpenOnMount:s,animate:e.animate,placeholder:e.placeholder});return G.createElement(e.placeholder.tagName,{style:u,"data-rfd-placeholder-context-id":o,onTransitionEnd:l,ref:e.innerRef})}),em=class extends G.PureComponent{constructor(...e){super(...e),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?`open`:`none`},this.onClose=()=>{this.state.animate===`close`&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(e,t){return e.shouldAnimate?e.on?{isVisible:!0,data:e.on,animate:`open`}:t.isVisible?{isVisible:!0,data:t.data,animate:`close`}:{isVisible:!1,animate:`close`,data:null}:{isVisible:!!e.on,data:e.on,animate:`none`}}render(){if(!this.state.isVisible)return null;let e={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(e)}},tm=e=>{let t=(0,G.useContext)(tf);!t&&K();let{contextId:n,isMovementAllowed:r}=t,i=(0,G.useRef)(null),a=(0,G.useRef)(null),{children:o,droppableId:s,type:c,mode:l,direction:u,ignoreContainerClipping:d,isDropDisabled:f,isCombineEnabled:p,snapshot:m,useClone:h,updateViewportMaxScroll:g,getContainerForClone:_}=e,v=J(()=>i.current,[]),y=J((e=null)=>{i.current=e},[]);J(()=>a.current,[]);let b=J((e=null)=>{a.current=e},[]),x=J(()=>{r()&&g({maxScroll:Ku()})},[r,g]);Jp({droppableId:s,type:c,mode:l,direction:u,isDropDisabled:f,isCombineEnabled:p,ignoreContainerClipping:d,getDroppableRef:v});let S=q(()=>G.createElement(em,{on:e.placeholder,shouldAnimate:e.shouldAnimatePlaceholder},({onClose:e,data:t,animate:r})=>G.createElement($p,{placeholder:t,onClose:e,innerRef:b,animate:r,contextId:n,onTransitionEnd:x})),[n,x,e.placeholder,e.shouldAnimatePlaceholder,b]),C=q(()=>({innerRef:y,placeholder:S,droppableProps:{"data-rfd-droppable-id":s,"data-rfd-droppable-context-id":n}}),[n,s,S,y]),w=h?h.dragging.draggableId:null,T=q(()=>({droppableId:s,type:c,isUsingCloneFor:w}),[s,w,c]);function E(){if(!h)return null;let{dragging:e,render:t}=h,n=G.createElement(kp,{draggableId:e.draggableId,index:e.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(n,r)=>t(n,r,e));return ya.createPortal(n,_())}return G.createElement(gp.Provider,{value:T},o(C,m),E())};function nm(){return!document.body&&K(),document.body}var rm={mode:`standard`,type:`DEFAULT`,direction:`vertical`,isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:nm},im=e=>{let t={...e},n;for(n in rm)e[n]===void 0&&(t={...t,[n]:rm[n]});return t},am=(e,t)=>e===t.droppable.type,om=(e,t)=>t.draggables[e.draggable.id],sm=zo(()=>{let e={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},t={...e,shouldAnimatePlaceholder:!1},n=Z(e=>({draggableId:e.id,type:e.type,source:{index:e.index,droppableId:e.droppableId}})),r=Z((r,i,a,o,s,c)=>{let l=s.descriptor.id;if(s.descriptor.droppableId===r){let e=c?{render:c,dragging:n(s.descriptor)}:null,t={isDraggingOver:a,draggingOverWith:a?l:null,draggingFromThisWith:l,isUsingPlaceholder:!0};return{placeholder:s.placeholder,shouldAnimatePlaceholder:!1,snapshot:t,useClone:e}}if(!i)return t;if(!o)return e;let u={isDraggingOver:a,draggingOverWith:l,draggingFromThisWith:null,isUsingPlaceholder:!0};return{placeholder:s.placeholder,shouldAnimatePlaceholder:!0,snapshot:u,useClone:null}});return(n,i)=>{let a=im(i),o=a.droppableId,s=a.type,c=!a.isDropDisabled,l=a.renderClone;if(af(n)){let e=n.critical;if(!am(s,e))return t;let i=om(e,n.dimensions),a=Zc(n.impact)===o;return r(o,c,a,a,i,l)}if(n.phase===`DROP_ANIMATING`){let e=n.completed;if(!am(s,e.critical))return t;let i=om(e.critical,n.dimensions);return r(o,c,xp(e.result)===o,Zc(e.impact)===o,i,l)}if(n.phase===`IDLE`&&n.completed&&!n.shouldFlush){let r=n.completed;if(!am(s,r.critical))return t;let i=Zc(r.impact)===o,a=!!(r.impact.at&&r.impact.at.type===`COMBINE`),c=r.critical.droppable.id===o;return i?a?e:t:c?e:t}return t}},{updateViewportMaxScroll:Ul},(e,t,n)=>({...im(n),...e,...t}),{context:Kd,areStatePropsEqual:bp})(tm),cm=new WeakMap,lm=`
99
99
  /* Theme — consumes --color-* tokens from the admin's tokens.css. */
100
100
  /* Base */
101
101
  .gz-editor {
@@ -365,7 +365,7 @@ ${C.current.stack}
365
365
  /* Nested objects in arrays */
366
366
  .gz-editor .gz-object-inline { }
367
367
  .gz-editor .gz-object-inline > .form-group { margin-bottom: 0.625rem; }
368
- `,am=new Set([`body`,`description`,`text`,`content`,`bio`,`summary`,`message`,`notes`,`output`]),om=new Set([`href`,`url`,`link`,`src`]),sm=new Set([`background`,`color`]);function cm(e){let t={"ui:submitButtonOptions":{norender:!0}},n=e.properties;if(!n)return t;for(let[e,r]of Object.entries(n)){let n=r.format,i=r.type,a=r.field;if(a){t[e]={"ui:widget":`custom-field:${a}`};continue}if(n===`markdown`||n===`richtext`||n===`image`||n===`link`||n===`slug`||n===`code`||n===`json`){t[e]={"ui:widget":n};continue}if(n===`color`){t[e]={"ui:widget":`color`};continue}i===`string`&&!n&&(am.has(e)?t[e]={"ui:widget":`textarea`,"ui:options":{rows:5}}:om.has(e)?t[e]={"ui:options":{inputType:`url`}}:sm.has(e)&&(t[e]={"ui:widget":`color`})),i===`boolean`&&(t[e]={"ui:widget":`toggle`}),i===`array`&&r.items?.type===`string`&&(t[e]={"ui:widget":`tags`})}return t}function lm(e){if(!e||typeof e!=`object`)return String(e??``);let t=e;for(let e of[`title`,`name`,`label`,`heading`,`text`,`quote`,`command`])if(typeof t[e]==`string`&&t[e])return t[e];for(let e of Object.values(t))if(typeof e==`string`&&e.trim())return e.trim();return``}function um(e){return(0,W.jsxs)(`div`,{className:`gz-markdown`,children:[(0,W.jsx)(`textarea`,{value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:`Write markdown here...`,rows:12}),(0,W.jsx)(`div`,{className:`gz-markdown-hint`,children:`Markdown supported`})]})}function dm(e){let t=!!e.value;return(0,W.jsxs)(`div`,{className:`gz-toggle`,onClick:()=>!e.disabled&&!e.readonly&&e.onChange(!t),role:`switch`,"aria-checked":t,children:[(0,W.jsx)(`div`,{className:`gz-toggle-track${t?` on`:``}`,children:(0,W.jsx)(`div`,{className:`gz-toggle-thumb`})}),e.label&&(0,W.jsx)(`span`,{className:`gz-toggle-label`,children:e.label})]})}function fm(e){let t=e.value??``;return(0,W.jsxs)(`div`,{className:`gz-color-widget`,children:[(0,W.jsx)(`input`,{type:`color`,value:t||`#667eea`,onChange:t=>e.onChange(t.target.value)}),(0,W.jsx)(`input`,{type:`text`,value:t,onChange:t=>e.onChange(t.target.value),placeholder:`#667eea`})]})}function pm(e){let t=Array.isArray(e.value)?e.value:[],[n,r]=G.useState(``),i=G.useRef(null),a=n=>{let i=n.trim();i&&!t.includes(i)&&e.onChange([...t,i]),r(``)},o=n=>e.onChange(t.filter((e,t)=>t!==n));return(0,W.jsxs)(`div`,{className:`gz-tags`,onClick:()=>i.current?.focus(),children:[t.map((e,t)=>(0,W.jsxs)(`span`,{className:`gz-tag`,children:[e,(0,W.jsx)(`button`,{type:`button`,className:`gz-tag-remove`,onClick:e=>{e.stopPropagation(),o(t)},"aria-label":`Remove ${e}`,children:`×`})]},`${e}-${t}`)),(0,W.jsx)(`input`,{ref:i,className:`gz-tags-input`,value:n,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`||e.key===`,`?(e.preventDefault(),a(n)):e.key===`Backspace`&&!n&&t.length>0&&o(t.length-1)},onBlur:()=>{n&&a(n)},placeholder:t.length===0?`Type and press Enter...`:``})]})}function mm(e){let t=e.value??``,[n,r]=G.useState(!1);return G.useEffect(()=>{r(!1)},[t]),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`input`,{type:`text`,value:t,onChange:t=>e.onChange(t.target.value),placeholder:`https://example.com/image.png`}),(0,W.jsx)(`div`,{className:`gz-image-preview${t&&!n?` has-image`:``}`,children:t&&!n?(0,W.jsx)(`img`,{src:t,alt:`Preview`,onError:()=>r(!0)}):(0,W.jsx)(`div`,{className:`gz-image-preview-empty`,children:t?`Image failed to load`:`Paste an image URL above`})})]})}function hm(e){return(0,W.jsx)(`input`,{type:`url`,value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:`https://...`})}function gm(e){let t=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``);return(0,W.jsxs)(`div`,{className:`gz-slug-widget`,children:[(0,W.jsx)(`input`,{type:`text`,value:e.value??``,onChange:n=>e.onChange(t(n.target.value)),placeholder:`my-page-slug`}),(0,W.jsx)(`div`,{className:`gz-slug-hint`,children:`URL-safe identifier — lowercase, hyphens only`})]})}function _m(e){let t=e.schema.language;return(0,W.jsxs)(`div`,{className:`gz-code-widget`,children:[(0,W.jsx)(`textarea`,{value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:e.placeholder,rows:15,spellCheck:!1}),t&&(0,W.jsx)(`div`,{className:`gz-code-hint`,children:t})]})}function vm(e){let[t,n]=G.useState(null),[r,i]=G.useState(()=>e.value==null?``:typeof e.value==`string`?e.value:JSON.stringify(e.value,null,2)),a=()=>{if(!r.trim()){n(null);return}try{JSON.parse(r),n(null)}catch{n(`Invalid JSON`)}},o=t=>{i(t);try{let r=JSON.parse(t);n(null),e.onChange(r)}catch{}};return(0,W.jsxs)(`div`,{className:`gz-json-widget`,children:[(0,W.jsx)(`textarea`,{value:r,onChange:e=>o(e.target.value),onBlur:a,placeholder:`{ "key": "value" }`,rows:10,spellCheck:!1}),t&&(0,W.jsx)(`div`,{className:`gz-json-error`,children:t})]})}function ym(e){let t=G.useRef(e.onChange);t.current=e.onChange;let n=he({extensions:[me.configure({heading:{levels:[2,3]},codeBlock:{HTMLAttributes:{spellcheck:`false`}}}),ge.configure({openOnClick:!1,HTMLAttributes:{rel:`noopener noreferrer`}}),_e.configure({placeholder:`Start writing...`})],content:e.value||``,onUpdate:({editor:e})=>t.current(e.getHTML()),immediatelyRender:!0});if(!n)return null;let r=({active:e,onClick:t,children:n})=>(0,W.jsx)(`button`,{type:`button`,className:`gz-rt-btn${e?` active`:``}`,onMouseDown:e=>{e.preventDefault(),t()},children:n}),i=()=>{let e=n.getAttributes(`link`).href,t=prompt(`URL:`,e??`https://`);if(t!==null){if(t===``){n.chain().focus().extendMarkRange(`link`).unsetLink().run();return}n.chain().focus().extendMarkRange(`link`).setLink({href:t}).run()}};return(0,W.jsxs)(`div`,{className:`gz-richtext`,children:[(0,W.jsxs)(`div`,{className:`gz-richtext-toolbar`,children:[(0,W.jsx)(r,{active:n.isActive(`bold`),onClick:()=>n.chain().focus().toggleBold().run(),children:`B`}),(0,W.jsx)(r,{active:n.isActive(`italic`),onClick:()=>n.chain().focus().toggleItalic().run(),children:`I`}),(0,W.jsx)(r,{active:n.isActive(`strike`),onClick:()=>n.chain().focus().toggleStrike().run(),children:`S`}),(0,W.jsx)(r,{active:n.isActive(`code`),onClick:()=>n.chain().focus().toggleCode().run(),children:`</>`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`heading`,{level:2}),onClick:()=>n.chain().focus().toggleHeading({level:2}).run(),children:`H2`}),(0,W.jsx)(r,{active:n.isActive(`heading`,{level:3}),onClick:()=>n.chain().focus().toggleHeading({level:3}).run(),children:`H3`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`bulletList`),onClick:()=>n.chain().focus().toggleBulletList().run(),children:`•`}),(0,W.jsx)(r,{active:n.isActive(`orderedList`),onClick:()=>n.chain().focus().toggleOrderedList().run(),children:`1.`}),(0,W.jsx)(r,{active:n.isActive(`blockquote`),onClick:()=>n.chain().focus().toggleBlockquote().run(),children:`“`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`link`),onClick:i,children:`Link`}),(0,W.jsx)(r,{onClick:()=>n.chain().focus().setHorizontalRule().run(),children:`—`}),(0,W.jsx)(r,{active:n.isActive(`codeBlock`),onClick:()=>n.chain().focus().toggleCodeBlock().run(),children:`Code`})]}),(0,W.jsx)(pe,{editor:n,children:(0,W.jsxs)(`div`,{className:`gz-bubble`,children:[(0,W.jsx)(r,{active:n.isActive(`bold`),onClick:()=>n.chain().focus().toggleBold().run(),children:`B`}),(0,W.jsx)(r,{active:n.isActive(`italic`),onClick:()=>n.chain().focus().toggleItalic().run(),children:`I`}),(0,W.jsx)(r,{active:n.isActive(`strike`),onClick:()=>n.chain().focus().toggleStrike().run(),children:`S`}),(0,W.jsx)(r,{active:n.isActive(`code`),onClick:()=>n.chain().focus().toggleCode().run(),children:`</>`}),(0,W.jsx)(r,{active:n.isActive(`link`),onClick:i,children:`Link`})]})}),(0,W.jsx)(fe,{editor:n})]})}function bm(e){let t=e.registry.formContext,n=e.fieldPathId?.$id??``;return e.items.length===0?(0,W.jsxs)(`div`,{className:`gz-array`,children:[(0,W.jsxs)(`div`,{className:`gz-array-header`,children:[e.title&&(0,W.jsx)(`span`,{className:`gz-array-title`,children:e.title}),(0,W.jsx)(`span`,{className:`gz-array-count`,children:`0`})]}),(0,W.jsxs)(`div`,{className:`gz-array-empty`,children:[`No items yet`,e.canAdd&&(0,W.jsx)(`div`,{style:{marginTop:`0.5rem`},children:(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onAddClick,children:`+ Add first item`})})]})]}):(0,W.jsxs)(`div`,{className:`gz-array`,children:[(0,W.jsxs)(`div`,{className:`gz-array-header`,children:[e.title&&(0,W.jsx)(`span`,{className:`gz-array-title`,children:e.title}),(0,W.jsx)(`span`,{className:`gz-array-count`,children:e.items.length}),e.canAdd&&(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onAddClick,children:`+ Add`})]}),(0,W.jsx)(tp,{onDragEnd:e=>{!e.destination||e.source.index===e.destination.index||t?.reorderArray(n,e.source.index,e.destination.index)},children:(0,W.jsx)(nm,{droppableId:n||`array`,children:t=>(0,W.jsxs)(`div`,{className:`gz-array-items`,ref:t.innerRef,...t.droppableProps,children:[e.items,t.placeholder]})})})]})}function xm(e){let[t,n]=G.useState(!0),r=lm(e.formData);return(0,W.jsx)(Tp,{draggableId:`${e.buttonsProps.fieldPathId?.$id??`item`}-${e.index}`,index:e.index,children:(i,a)=>(0,W.jsxs)(`div`,{className:`gz-array-item${a.isDragging?` dragging`:``}`,ref:i.innerRef,...i.draggableProps,children:[(0,W.jsxs)(`div`,{className:`gz-array-item-header`,onClick:()=>n(!t),children:[(0,W.jsx)(`span`,{className:`gz-array-item-handle`,...i.dragHandleProps,onClick:e=>e.stopPropagation(),children:`⠁⠁`}),(0,W.jsx)(`span`,{className:`gz-array-item-chevron${t?` open`:``}`,children:`▶`}),(0,W.jsx)(`span`,{className:`gz-array-item-idx`,children:e.index+1}),!t&&(0,W.jsx)(`span`,{className:`gz-array-item-summary${r?``:` empty`}`,children:r||`Empty item`}),(0,W.jsx)(`div`,{className:`gz-array-item-actions`,onClick:e=>e.stopPropagation(),children:(0,W.jsx)(Sm,{...e.buttonsProps})})]}),(0,W.jsx)(`div`,{className:`gz-array-item-body ${t?`expanded`:`collapsed`}`,children:e.children})]})})}function Sm(e){return(0,W.jsxs)(W.Fragment,{children:[e.hasMoveUp&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon`,onClick:e.onMoveUpItem,title:`Move up`,children:`↑`}),e.hasMoveDown&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon`,onClick:e.onMoveDownItem,title:`Move down`,children:`↓`}),e.hasRemove&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon gz-btn-remove`,onClick:e.onRemoveItem,title:`Remove`,children:`×`})]})}function Cm(e){return e.fieldPathId?.$id===`root`?(0,W.jsx)(W.Fragment,{children:e.properties.map(e=>e.content)}):(0,W.jsx)(`div`,{className:`gz-object-inline`,children:e.properties.map(e=>e.content)})}function wm(e){return(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onClick,disabled:e.disabled,children:`+ Add`})}var Tm=new Map;function Em(e){let t=Tm.get(e);if(t)return t;let n=t=>{let n=G.useRef(null),r=G.useRef(null),i=G.useRef(!1),[a,o]=G.useState(!0),[s,c]=G.useState(null),l=t.registry?.formContext;return G.useEffect(()=>{if(!l?.fieldsBaseUrl){c(`No fields base URL configured`),o(!1);return}let t=`${l.fieldsBaseUrl}/${e}`;(async()=>{for(let e of[`.tsx`,`.ts`,`.js`])try{let n=await xn(()=>import(`${t}${e}`),[]);r.current=n.default??n,o(!1);return}catch{}c(`Failed to load field "${e}"`),o(!1)})()},[l?.fieldsBaseUrl]),G.useEffect(()=>{if(a||!n.current||!r.current)return;let e=n.current,o=r.current;return o.mount(e,{value:t.value,schema:t.schema,theme:l?.theme??`dark`,onChange:e=>t.onChange(e)}),i.current=!0,()=>{o.unmount(e),i.current=!1}},[a]),G.useEffect(()=>{!i.current||!n.current||!r.current||r.current.mount(n.current,{value:t.value,schema:t.schema,theme:l?.theme??`dark`,onChange:e=>t.onChange(e)})},[t.value]),a?(0,W.jsxs)(`div`,{style:{color:`var(--color-muted)`,fontSize:`0.75rem`,padding:`0.5rem 0`},children:[`Loading `,e,`...`]}):s?(0,W.jsx)(`div`,{style:{color:`var(--color-danger-fg)`,fontSize:`0.75rem`},children:s}):(0,W.jsx)(`div`,{ref:n})};return Tm.set(e,n),n}var Dm={markdown:um,toggle:dm,color:fm,tags:pm,richtext:ym,image:mm,link:hm,slug:gm,code:_m,json:vm};function Om(e){let t={...Dm},n=e.properties;if(!n)return t;for(let e of Object.values(n)){let n=e.field;n&&(t[`custom-field:${n}`]=Em(n))}return t}var km={ArrayFieldTemplate:bm,ArrayFieldItemTemplate:xm,ArrayFieldItemButtonsTemplate:Sm,ObjectFieldTemplate:Cm,ButtonTemplates:{AddButton:wm}};function Am({schema:e,content:t,onChange:n,fieldsBaseUrl:r,theme:i}){let a=G.useMemo(()=>cm(e),[e]),o=G.useMemo(()=>Om(e),[e]),[s,c]=G.useState(t),l=G.useRef(s);l.current=s;let u=G.useRef([]),d=G.useRef([]),f=G.useRef(!1),p=e=>{f.current||(u.current.push(e),u.current.length>50&&u.current.shift(),d.current=[])},m=e=>{c(e),n(e)},h=e=>{p(l.current),c(e.formData),n(e.formData)};G.useEffect(()=>{let e=e=>{if((e.metaKey||e.ctrlKey)&&e.key===`z`)if(e.preventDefault(),e.shiftKey){if(d.current.length===0)return;let e=d.current.pop();u.current.push(l.current),f.current=!0,m(e),f.current=!1}else{if(u.current.length===0)return;let e=u.current.pop();d.current.push(l.current),f.current=!0,m(e),f.current=!1}};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[]);let g=G.useCallback((e,t,r)=>{c(i=>{p(i);let a=e.replace(/^root_/,``).split(`_`)[0],o=i[a];if(!Array.isArray(o))return i;let s=[...o],[c]=s.splice(t,1);s.splice(r,0,c);let l={...i,[a]:s};return n(l),l})},[n]),_=G.useMemo(()=>({reorderArray:g,fieldsBaseUrl:r,theme:i}),[g,r,i]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`style`,{children:im}),(0,W.jsx)(`div`,{className:`gz-editor`,children:(0,W.jsx)(de,{schema:e,uiSchema:a,formData:s,onChange:h,validator:ue,widgets:o,templates:km,formContext:_,liveValidate:!1,omitExtraData:!0,noHtml5Validate:!0,autoComplete:`off`})})]})}function jm(e){return{mount(t,{content:n,schema:r,theme:i,onChange:a,fieldsBaseUrl:o}){let s=rm.get(t);s&&s.unmount();let c=(0,ha.createRoot)(t);rm.set(t,c),c.render((0,W.jsx)(Am,{schema:r??e,content:n,theme:i,fieldsBaseUrl:o,onChange:a}))},unmount(e){let t=rm.get(e);t&&(t.unmount(),rm.delete(e))}}}var Mm={class:`editor-panel`,"data-testid":`editor-panel`},Nm={key:0,class:`editor-error`,"data-testid":`editor-error`},Pm={key:1,class:`editor-empty`,"data-testid":`editor-empty`},Fm={key:2},Im={key:1,class:`editor-no-schema`},Lm=mr(R({__name:`EditorPanel`,setup(e){let t=Cn(),n=pn(),r=c(null),i=g(()=>{let e=t.schema;if(!e)return!1;let n=e.properties;return n&&Object.keys(n).length>0}),a=g(()=>!t.schema||!i.value?null:t.customEditorMount?t.customEditorMount:jm(t.schema)),o=g(()=>t.content),s=g(()=>t.schema),l=g(()=>n.dark?`dark`:`light`),d=g(()=>t.mountVersion),p=g(()=>t.target?.fieldsBaseUrl);function m(e){t.markDirty(e)}return pa(r,a,o,s,l,m,d,p),Ai(`s`,e=>{(e.metaKey||e.ctrlKey)&&(e.preventDefault(),t.dirty&&t.save())}),(e,n)=>(u(),z(`div`,Mm,[f(t).loadError?(u(),z(`div`,Nm,[n[0]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`p`,null,F(f(t).loadError),1)])):f(t).path?(u(),z(`div`,Fm,[L(`h3`,null,F(f(t).template),1),i.value?(u(),z(`div`,{ref_key:`containerRef`,ref:r,class:`editor-container`,"data-testid":`editor-container`,key:f(t).path})):(u(),z(`p`,Im,`No editable content. Edit its children instead.`))])):(u(),z(`div`,Pm,[...n[1]||=[L(`i`,{class:`pi pi-pencil`,style:{"font-size":`2rem`,opacity:`0.3`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select a component to edit`,-1)]]))]))}}),[[`__scopeId`,`data-v-1e2cf67e`]]),Rm=11;function zm(e,t){var n=t.attributes,r,i,a,o,s;if(!(t.nodeType===Rm||e.nodeType===Rm)){for(var c=n.length-1;c>=0;c--)r=n[c],i=r.name,a=r.namespaceURI,o=r.value,a?(i=r.localName||i,s=e.getAttributeNS(a,i),s!==o&&(r.prefix===`xmlns`&&(i=r.name),e.setAttributeNS(a,i,o))):(s=e.getAttribute(i),s!==o&&e.setAttribute(i,o));for(var l=e.attributes,u=l.length-1;u>=0;u--)r=l[u],i=r.name,a=r.namespaceURI,a?(i=r.localName||i,t.hasAttributeNS(a,i)||e.removeAttributeNS(a,i)):t.hasAttribute(i)||e.removeAttribute(i)}}var Bm,Vm=`http://www.w3.org/1999/xhtml`,Hm=typeof document>`u`?void 0:document,Um=!!Hm&&`content`in Hm.createElement(`template`),Wm=!!Hm&&Hm.createRange&&`createContextualFragment`in Hm.createRange();function Gm(e){var t=Hm.createElement(`template`);return t.innerHTML=e,t.content.childNodes[0]}function Km(e){return Bm||(Bm=Hm.createRange(),Bm.selectNode(Hm.body)),Bm.createContextualFragment(e).childNodes[0]}function qm(e){var t=Hm.createElement(`body`);return t.innerHTML=e,t.childNodes[0]}function Jm(e){return e=e.trim(),Um?Gm(e):Wm?Km(e):qm(e)}function Ym(e,t){var n=e.nodeName,r=t.nodeName,i,a;return n===r?!0:(i=n.charCodeAt(0),a=r.charCodeAt(0),i<=90&&a>=97?n===r.toUpperCase():a<=90&&i>=97?r===n.toUpperCase():!1)}function Xm(e,t){return!t||t===Vm?Hm.createElement(e):Hm.createElementNS(t,e)}function Zm(e,t){for(var n=e.firstChild;n;){var r=n.nextSibling;t.appendChild(n),n=r}return t}function Qm(e,t,n){e[n]!==t[n]&&(e[n]=t[n],e[n]?e.setAttribute(n,``):e.removeAttribute(n))}var $m={OPTION:function(e,t){var n=e.parentNode;if(n){var r=n.nodeName.toUpperCase();r===`OPTGROUP`&&(n=n.parentNode,r=n&&n.nodeName.toUpperCase()),r===`SELECT`&&!n.hasAttribute(`multiple`)&&(e.hasAttribute(`selected`)&&!t.selected&&(e.setAttribute(`selected`,`selected`),e.removeAttribute(`selected`)),n.selectedIndex=-1)}Qm(e,t,`selected`)},INPUT:function(e,t){Qm(e,t,`checked`),Qm(e,t,`disabled`),e.value!==t.value&&(e.value=t.value),t.hasAttribute(`value`)||e.removeAttribute(`value`)},TEXTAREA:function(e,t){var n=t.value;e.value!==n&&(e.value=n);var r=e.firstChild;if(r){var i=r.nodeValue;if(i==n||!n&&i==e.placeholder)return;r.nodeValue=n}},SELECT:function(e,t){if(!t.hasAttribute(`multiple`)){for(var n=-1,r=0,i=e.firstChild,a,o;i;)if(o=i.nodeName&&i.nodeName.toUpperCase(),o===`OPTGROUP`)a=i,i=a.firstChild,i||(i=a.nextSibling,a=null);else{if(o===`OPTION`){if(i.hasAttribute(`selected`)){n=r;break}r++}i=i.nextSibling,!i&&a&&(i=a.nextSibling,a=null)}e.selectedIndex=n}}},eh=1,th=11,nh=3,rh=8;function ih(){}function ah(e){if(e)return e.getAttribute&&e.getAttribute(`id`)||e.id}function oh(e){return function(t,n,r){if(r||={},typeof n==`string`)if(t.nodeName===`#document`||t.nodeName===`HTML`){var i=n;n=Hm.createElement(`html`),n.innerHTML=i}else if(t.nodeName===`BODY`){var a=n;n=Hm.createElement(`html`),n.innerHTML=a;var o=n.querySelector(`body`);o&&(n=o)}else n=Jm(n);else n.nodeType===th&&(n=n.firstElementChild);var s=r.getNodeKey||ah,c=r.onBeforeNodeAdded||ih,l=r.onNodeAdded||ih,u=r.onBeforeElUpdated||ih,d=r.onElUpdated||ih,f=r.onBeforeNodeDiscarded||ih,p=r.onNodeDiscarded||ih,m=r.onBeforeElChildrenUpdated||ih,h=r.skipFromChildren||ih,g=r.addChild||function(e,t){return e.appendChild(t)},_=r.childrenOnly===!0,v=Object.create(null),y=[];function b(e){y.push(e)}function x(e,t){if(e.nodeType===eh)for(var n=e.firstChild;n;){var r=void 0;t&&(r=s(n))?b(r):(p(n),n.firstChild&&x(n,t)),n=n.nextSibling}}function S(e,t,n){f(e)!==!1&&(t&&t.removeChild(e),p(e),x(e,n))}function C(e){if(e.nodeType===eh||e.nodeType===th)for(var t=e.firstChild;t;){var n=s(t);n&&(v[n]=t),C(t),t=t.nextSibling}}C(t);function w(e){l(e);for(var t=e.firstChild;t;){var n=t.nextSibling,r=s(t);if(r){var i=v[r];i&&Ym(t,i)?(t.parentNode.replaceChild(i,t),E(i,t)):w(t)}else w(t);t=n}}function T(e,t,n){for(;t;){var r=t.nextSibling;(n=s(t))?b(n):S(t,e,!0),t=r}}function E(t,n,r){var i=s(n);if(i&&delete v[i],!r){var a=u(t,n);if(a===!1||(a instanceof HTMLElement&&(t=a,C(t)),e(t,n),d(t),m(t,n)===!1))return}t.nodeName===`TEXTAREA`?$m.TEXTAREA(t,n):D(t,n)}function D(e,t){var n=h(e,t),r=t.firstChild,i=e.firstChild,a,o,l,u,d;outer:for(;r;){for(u=r.nextSibling,a=s(r);!n&&i;){if(l=i.nextSibling,r.isSameNode&&r.isSameNode(i)){r=u,i=l;continue outer}o=s(i);var f=i.nodeType,p=void 0;if(f===r.nodeType&&(f===eh?(a?a!==o&&((d=v[a])?l===d?p=!1:(e.insertBefore(d,i),o?b(o):S(i,e,!0),i=d,o=s(i)):p=!1):o&&(p=!1),p=p!==!1&&Ym(i,r),p&&E(i,r)):(f===nh||f==rh)&&(p=!0,i.nodeValue!==r.nodeValue&&(i.nodeValue=r.nodeValue))),p){r=u,i=l;continue outer}o?b(o):S(i,e,!0),i=l}if(a&&(d=v[a])&&Ym(d,r))n||g(e,d),E(d,r);else{var m=c(r);m!==!1&&(m&&(r=m),r.actualize&&(r=r.actualize(e.ownerDocument||Hm)),g(e,r),w(r))}r=u,i=l}T(e,i,o);var _=$m[e.nodeName];_&&_(e,t)}var O=t,k=O.nodeType,A=n.nodeType;if(!_){if(k===eh)A===eh?Ym(t,n)||(p(t),O=Zm(t,Xm(n.nodeName,n.namespaceURI))):O=n;else if(k===nh||k===rh){if(A===k)return O.nodeValue!==n.nodeValue&&(O.nodeValue=n.nodeValue),O;O=n}}if(O===n)p(t);else{if(n.isSameNode&&n.isSameNode(O))return;if(E(O,n,_),y)for(var j=0,M=y.length;j<M;j++){var N=v[y[j]];N&&S(N,N.parentNode,!1)}}return!_&&O!==t&&t.parentNode&&(O.actualize&&(O=O.actualize(t.ownerDocument||Hm)),t.parentNode.replaceChild(O,t)),O}}var sh=oh(zm),ch={key:0,class:`preview-empty`,"data-testid":`preview-empty`},lh={class:`preview-toolbar`},uh={class:`preview-devices`},dh=[`title`,`onClick`],fh={class:`preview-route`},ph={class:`preview-actions`},mh=[`value`],hh=[`value`],gh=[`title`],_h=[`title`],vh={class:`preview-frame-wrapper`},yh=`
368
+ `,um=new Set([`body`,`description`,`text`,`content`,`bio`,`summary`,`message`,`notes`,`output`]),dm=new Set([`href`,`url`,`link`,`src`]),fm=new Set([`background`,`color`]);function pm(e){let t={"ui:submitButtonOptions":{norender:!0}},n=e.properties;if(!n)return t;for(let[e,r]of Object.entries(n)){let n=r.format,i=r.type,a=r.field;if(a){t[e]={"ui:widget":`custom-field:${a}`};continue}if(n===`markdown`||n===`richtext`||n===`image`||n===`link`||n===`slug`||n===`code`||n===`json`){t[e]={"ui:widget":n};continue}if(n===`color`){t[e]={"ui:widget":`color`};continue}i===`string`&&!n&&(um.has(e)?t[e]={"ui:widget":`textarea`,"ui:options":{rows:5}}:dm.has(e)?t[e]={"ui:options":{inputType:`url`}}:fm.has(e)&&(t[e]={"ui:widget":`color`})),i===`boolean`&&(t[e]={"ui:widget":`toggle`}),i===`array`&&r.items?.type===`string`&&(t[e]={"ui:widget":`tags`})}return t}function mm(e){if(!e||typeof e!=`object`)return String(e??``);let t=e;for(let e of[`title`,`name`,`label`,`heading`,`text`,`quote`,`command`])if(typeof t[e]==`string`&&t[e])return t[e];for(let e of Object.values(t))if(typeof e==`string`&&e.trim())return e.trim();return``}function hm(e){return(0,W.jsxs)(`div`,{className:`gz-markdown`,children:[(0,W.jsx)(`textarea`,{value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:`Write markdown here...`,rows:12}),(0,W.jsx)(`div`,{className:`gz-markdown-hint`,children:`Markdown supported`})]})}function gm(e){let t=!!e.value;return(0,W.jsxs)(`div`,{className:`gz-toggle`,onClick:()=>!e.disabled&&!e.readonly&&e.onChange(!t),role:`switch`,"aria-checked":t,children:[(0,W.jsx)(`div`,{className:`gz-toggle-track${t?` on`:``}`,children:(0,W.jsx)(`div`,{className:`gz-toggle-thumb`})}),e.label&&(0,W.jsx)(`span`,{className:`gz-toggle-label`,children:e.label})]})}function _m(e){let t=e.value??``;return(0,W.jsxs)(`div`,{className:`gz-color-widget`,children:[(0,W.jsx)(`input`,{type:`color`,value:t||`#667eea`,onChange:t=>e.onChange(t.target.value)}),(0,W.jsx)(`input`,{type:`text`,value:t,onChange:t=>e.onChange(t.target.value),placeholder:`#667eea`})]})}function vm(e){let t=Array.isArray(e.value)?e.value:[],[n,r]=G.useState(``),i=G.useRef(null),a=n=>{let i=n.trim();i&&!t.includes(i)&&e.onChange([...t,i]),r(``)},o=n=>e.onChange(t.filter((e,t)=>t!==n));return(0,W.jsxs)(`div`,{className:`gz-tags`,onClick:()=>i.current?.focus(),children:[t.map((e,t)=>(0,W.jsxs)(`span`,{className:`gz-tag`,children:[e,(0,W.jsx)(`button`,{type:`button`,className:`gz-tag-remove`,onClick:e=>{e.stopPropagation(),o(t)},"aria-label":`Remove ${e}`,children:`×`})]},`${e}-${t}`)),(0,W.jsx)(`input`,{ref:i,className:`gz-tags-input`,value:n,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`||e.key===`,`?(e.preventDefault(),a(n)):e.key===`Backspace`&&!n&&t.length>0&&o(t.length-1)},onBlur:()=>{n&&a(n)},placeholder:t.length===0?`Type and press Enter...`:``})]})}function ym(e){let t=e.value??``,[n,r]=G.useState(!1);return G.useEffect(()=>{r(!1)},[t]),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`input`,{type:`text`,value:t,onChange:t=>e.onChange(t.target.value),placeholder:`https://example.com/image.png`}),(0,W.jsx)(`div`,{className:`gz-image-preview${t&&!n?` has-image`:``}`,children:t&&!n?(0,W.jsx)(`img`,{src:t,alt:`Preview`,onError:()=>r(!0)}):(0,W.jsx)(`div`,{className:`gz-image-preview-empty`,children:t?`Image failed to load`:`Paste an image URL above`})})]})}function bm(e){return(0,W.jsx)(`input`,{type:`url`,value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:`https://...`})}function xm(e){let t=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``);return(0,W.jsxs)(`div`,{className:`gz-slug-widget`,children:[(0,W.jsx)(`input`,{type:`text`,value:e.value??``,onChange:n=>e.onChange(t(n.target.value)),placeholder:`my-page-slug`}),(0,W.jsx)(`div`,{className:`gz-slug-hint`,children:`URL-safe identifier — lowercase, hyphens only`})]})}function Sm(e){let t=e.schema.language;return(0,W.jsxs)(`div`,{className:`gz-code-widget`,children:[(0,W.jsx)(`textarea`,{value:e.value??``,onChange:t=>e.onChange(t.target.value),placeholder:e.placeholder,rows:15,spellCheck:!1}),t&&(0,W.jsx)(`div`,{className:`gz-code-hint`,children:t})]})}function Cm(e){let[t,n]=G.useState(null),[r,i]=G.useState(()=>e.value==null?``:typeof e.value==`string`?e.value:JSON.stringify(e.value,null,2)),a=()=>{if(!r.trim()){n(null);return}try{JSON.parse(r),n(null)}catch{n(`Invalid JSON`)}},o=t=>{i(t);try{let r=JSON.parse(t);n(null),e.onChange(r)}catch{}};return(0,W.jsxs)(`div`,{className:`gz-json-widget`,children:[(0,W.jsx)(`textarea`,{value:r,onChange:e=>o(e.target.value),onBlur:a,placeholder:`{ "key": "value" }`,rows:10,spellCheck:!1}),t&&(0,W.jsx)(`div`,{className:`gz-json-error`,children:t})]})}function wm(e){let t=G.useRef(e.onChange);t.current=e.onChange;let n=he({extensions:[me.configure({heading:{levels:[2,3]},codeBlock:{HTMLAttributes:{spellcheck:`false`}}}),ge.configure({openOnClick:!1,HTMLAttributes:{rel:`noopener noreferrer`}}),_e.configure({placeholder:`Start writing...`})],content:e.value||``,onUpdate:({editor:e})=>t.current(e.getHTML()),immediatelyRender:!0});if(!n)return null;let r=({active:e,onClick:t,children:n})=>(0,W.jsx)(`button`,{type:`button`,className:`gz-rt-btn${e?` active`:``}`,onMouseDown:e=>{e.preventDefault(),t()},children:n}),i=()=>{let e=n.getAttributes(`link`).href,t=prompt(`URL:`,e??`https://`);if(t!==null){if(t===``){n.chain().focus().extendMarkRange(`link`).unsetLink().run();return}n.chain().focus().extendMarkRange(`link`).setLink({href:t}).run()}};return(0,W.jsxs)(`div`,{className:`gz-richtext`,children:[(0,W.jsxs)(`div`,{className:`gz-richtext-toolbar`,children:[(0,W.jsx)(r,{active:n.isActive(`bold`),onClick:()=>n.chain().focus().toggleBold().run(),children:`B`}),(0,W.jsx)(r,{active:n.isActive(`italic`),onClick:()=>n.chain().focus().toggleItalic().run(),children:`I`}),(0,W.jsx)(r,{active:n.isActive(`strike`),onClick:()=>n.chain().focus().toggleStrike().run(),children:`S`}),(0,W.jsx)(r,{active:n.isActive(`code`),onClick:()=>n.chain().focus().toggleCode().run(),children:`</>`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`heading`,{level:2}),onClick:()=>n.chain().focus().toggleHeading({level:2}).run(),children:`H2`}),(0,W.jsx)(r,{active:n.isActive(`heading`,{level:3}),onClick:()=>n.chain().focus().toggleHeading({level:3}).run(),children:`H3`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`bulletList`),onClick:()=>n.chain().focus().toggleBulletList().run(),children:`•`}),(0,W.jsx)(r,{active:n.isActive(`orderedList`),onClick:()=>n.chain().focus().toggleOrderedList().run(),children:`1.`}),(0,W.jsx)(r,{active:n.isActive(`blockquote`),onClick:()=>n.chain().focus().toggleBlockquote().run(),children:`“`}),(0,W.jsx)(`div`,{className:`gz-rt-sep`}),(0,W.jsx)(r,{active:n.isActive(`link`),onClick:i,children:`Link`}),(0,W.jsx)(r,{onClick:()=>n.chain().focus().setHorizontalRule().run(),children:`—`}),(0,W.jsx)(r,{active:n.isActive(`codeBlock`),onClick:()=>n.chain().focus().toggleCodeBlock().run(),children:`Code`})]}),(0,W.jsx)(pe,{editor:n,children:(0,W.jsxs)(`div`,{className:`gz-bubble`,children:[(0,W.jsx)(r,{active:n.isActive(`bold`),onClick:()=>n.chain().focus().toggleBold().run(),children:`B`}),(0,W.jsx)(r,{active:n.isActive(`italic`),onClick:()=>n.chain().focus().toggleItalic().run(),children:`I`}),(0,W.jsx)(r,{active:n.isActive(`strike`),onClick:()=>n.chain().focus().toggleStrike().run(),children:`S`}),(0,W.jsx)(r,{active:n.isActive(`code`),onClick:()=>n.chain().focus().toggleCode().run(),children:`</>`}),(0,W.jsx)(r,{active:n.isActive(`link`),onClick:i,children:`Link`})]})}),(0,W.jsx)(fe,{editor:n})]})}function Tm(e){let t=e.registry.formContext,n=e.fieldPathId?.$id??``;return e.items.length===0?(0,W.jsxs)(`div`,{className:`gz-array`,children:[(0,W.jsxs)(`div`,{className:`gz-array-header`,children:[e.title&&(0,W.jsx)(`span`,{className:`gz-array-title`,children:e.title}),(0,W.jsx)(`span`,{className:`gz-array-count`,children:`0`})]}),(0,W.jsxs)(`div`,{className:`gz-array-empty`,children:[`No items yet`,e.canAdd&&(0,W.jsx)(`div`,{style:{marginTop:`0.5rem`},children:(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onAddClick,children:`+ Add first item`})})]})]}):(0,W.jsxs)(`div`,{className:`gz-array`,children:[(0,W.jsxs)(`div`,{className:`gz-array-header`,children:[e.title&&(0,W.jsx)(`span`,{className:`gz-array-title`,children:e.title}),(0,W.jsx)(`span`,{className:`gz-array-count`,children:e.items.length}),e.canAdd&&(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onAddClick,children:`+ Add`})]}),(0,W.jsx)(op,{onDragEnd:e=>{!e.destination||e.source.index===e.destination.index||t?.reorderArray(n,e.source.index,e.destination.index)},children:(0,W.jsx)(sm,{droppableId:n||`array`,children:t=>(0,W.jsxs)(`div`,{className:`gz-array-items`,ref:t.innerRef,...t.droppableProps,children:[e.items,t.placeholder]})})})]})}function Em(e){let[t,n]=G.useState(!0),r=mm(e.formData);return(0,W.jsx)(Ap,{draggableId:`${e.buttonsProps.fieldPathId?.$id??`item`}-${e.index}`,index:e.index,children:(i,a)=>(0,W.jsxs)(`div`,{className:`gz-array-item${a.isDragging?` dragging`:``}`,ref:i.innerRef,...i.draggableProps,children:[(0,W.jsxs)(`div`,{className:`gz-array-item-header`,onClick:()=>n(!t),children:[(0,W.jsx)(`span`,{className:`gz-array-item-handle`,...i.dragHandleProps,onClick:e=>e.stopPropagation(),children:`⠁⠁`}),(0,W.jsx)(`span`,{className:`gz-array-item-chevron${t?` open`:``}`,children:`▶`}),(0,W.jsx)(`span`,{className:`gz-array-item-idx`,children:e.index+1}),!t&&(0,W.jsx)(`span`,{className:`gz-array-item-summary${r?``:` empty`}`,children:r||`Empty item`}),(0,W.jsx)(`div`,{className:`gz-array-item-actions`,onClick:e=>e.stopPropagation(),children:(0,W.jsx)(Dm,{...e.buttonsProps})})]}),(0,W.jsx)(`div`,{className:`gz-array-item-body ${t?`expanded`:`collapsed`}`,children:e.children})]})})}function Dm(e){return(0,W.jsxs)(W.Fragment,{children:[e.hasMoveUp&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon`,onClick:e.onMoveUpItem,title:`Move up`,children:`↑`}),e.hasMoveDown&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon`,onClick:e.onMoveDownItem,title:`Move down`,children:`↓`}),e.hasRemove&&(0,W.jsx)(`button`,{type:`button`,className:`gz-btn-icon gz-btn-remove`,onClick:e.onRemoveItem,title:`Remove`,children:`×`})]})}function Om(e){return e.fieldPathId?.$id===`root`?(0,W.jsx)(W.Fragment,{children:e.properties.map(e=>e.content)}):(0,W.jsx)(`div`,{className:`gz-object-inline`,children:e.properties.map(e=>e.content)})}function km(e){return(0,W.jsx)(`button`,{type:`button`,className:`gz-array-add`,onClick:e.onClick,disabled:e.disabled,children:`+ Add`})}var Am=new Map;function jm(e){let t=Am.get(e);if(t)return t;let n=t=>{let n=G.useRef(null),r=G.useRef(null),i=G.useRef(!1),[a,o]=G.useState(!0),[s,c]=G.useState(null),l=t.registry?.formContext;return G.useEffect(()=>{if(!l?.fieldsBaseUrl){c(`No fields base URL configured`),o(!1);return}let t=`${l.fieldsBaseUrl}/${e}`;(async()=>{for(let e of[`.tsx`,`.ts`,`.js`])try{let n=await xn(()=>import(`${t}${e}`),[]);r.current=n.default??n,o(!1);return}catch{}c(`Failed to load field "${e}"`),o(!1)})()},[l?.fieldsBaseUrl]),G.useEffect(()=>{if(a||!n.current||!r.current)return;let e=n.current,o=r.current;return o.mount(e,{value:t.value,schema:t.schema,theme:l?.theme??`dark`,onChange:e=>t.onChange(e)}),i.current=!0,()=>{o.unmount(e),i.current=!1}},[a]),G.useEffect(()=>{!i.current||!n.current||!r.current||r.current.mount(n.current,{value:t.value,schema:t.schema,theme:l?.theme??`dark`,onChange:e=>t.onChange(e)})},[t.value]),a?(0,W.jsxs)(`div`,{style:{color:`var(--color-muted)`,fontSize:`0.75rem`,padding:`0.5rem 0`},children:[`Loading `,e,`...`]}):s?(0,W.jsx)(`div`,{style:{color:`var(--color-danger-fg)`,fontSize:`0.75rem`},children:s}):(0,W.jsx)(`div`,{ref:n})};return Am.set(e,n),n}var Mm={markdown:hm,toggle:gm,color:_m,tags:vm,richtext:wm,image:ym,link:bm,slug:xm,code:Sm,json:Cm};function Nm(e){let t={...Mm},n=e.properties;if(!n)return t;for(let e of Object.values(n)){let n=e.field;n&&(t[`custom-field:${n}`]=jm(n))}return t}var Pm={ArrayFieldTemplate:Tm,ArrayFieldItemTemplate:Em,ArrayFieldItemButtonsTemplate:Dm,ObjectFieldTemplate:Om,ButtonTemplates:{AddButton:km}};function Fm({schema:e,content:t,onChange:n,fieldsBaseUrl:r,theme:i}){let a=G.useMemo(()=>pm(e),[e]),o=G.useMemo(()=>Nm(e),[e]),[s,c]=G.useState(t),l=G.useRef(s);l.current=s;let u=G.useRef([]),d=G.useRef([]),f=G.useRef(!1),p=e=>{f.current||(u.current.push(e),u.current.length>50&&u.current.shift(),d.current=[])},m=e=>{c(e),n(e)},h=e=>{p(l.current),c(e.formData),n(e.formData)};G.useEffect(()=>{let e=e=>{if((e.metaKey||e.ctrlKey)&&e.key===`z`)if(e.preventDefault(),e.shiftKey){if(d.current.length===0)return;let e=d.current.pop();u.current.push(l.current),f.current=!0,m(e),f.current=!1}else{if(u.current.length===0)return;let e=u.current.pop();d.current.push(l.current),f.current=!0,m(e),f.current=!1}};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[]);let g=G.useCallback((e,t,r)=>{c(i=>{p(i);let a=e.replace(/^root_/,``).split(`_`)[0],o=i[a];if(!Array.isArray(o))return i;let s=[...o],[c]=s.splice(t,1);s.splice(r,0,c);let l={...i,[a]:s};return n(l),l})},[n]),_=G.useMemo(()=>({reorderArray:g,fieldsBaseUrl:r,theme:i}),[g,r,i]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`style`,{children:lm}),(0,W.jsx)(`div`,{className:`gz-editor`,children:(0,W.jsx)(de,{schema:e,uiSchema:a,formData:s,onChange:h,validator:ue,widgets:o,templates:Pm,formContext:_,liveValidate:!1,omitExtraData:!0,noHtml5Validate:!0,autoComplete:`off`})})]})}function Im(e){return{mount(t,{content:n,schema:r,theme:i,onChange:a,fieldsBaseUrl:o}){let s=cm.get(t);s&&s.unmount();let c=(0,ba.createRoot)(t);cm.set(t,c),c.render((0,W.jsx)(Fm,{schema:r??e,content:n,theme:i,fieldsBaseUrl:o,onChange:a}))},unmount(e){let t=cm.get(e);t&&(t.unmount(),cm.delete(e))}}}var Lm={class:`editor-panel`,"data-testid":`editor-panel`},Rm={key:0,class:`editor-error`,"data-testid":`editor-error`},zm={key:1,class:`editor-empty`,"data-testid":`editor-empty`},Bm={key:2},Vm={key:1,class:`editor-no-schema`},Hm=yr(R({__name:`EditorPanel`,setup(e){let t=Cn(),n=pn(),r=c(null),i=g(()=>{let e=t.schema;if(!e)return!1;let n=e.properties;return n&&Object.keys(n).length>0}),a=g(()=>!t.schema||!i.value?null:t.customEditorMount?t.customEditorMount:Im(t.schema)),o=g(()=>t.content),s=g(()=>t.schema),l=g(()=>n.dark?`dark`:`light`),d=g(()=>t.mountVersion),p=g(()=>t.target?.fieldsBaseUrl);function m(e){t.markDirty(e)}return va(r,a,o,s,l,m,d,p),Fi(`s`,e=>{(e.metaKey||e.ctrlKey)&&(e.preventDefault(),t.dirty&&t.save())}),(e,n)=>(u(),z(`div`,Lm,[f(t).loadError?(u(),z(`div`,Rm,[n[0]||=L(`i`,{class:`pi pi-exclamation-triangle`},null,-1),L(`p`,null,F(f(t).loadError),1)])):f(t).path?(u(),z(`div`,Bm,[L(`h3`,null,F(f(t).template),1),i.value?(u(),z(`div`,{ref_key:`containerRef`,ref:r,class:`editor-container`,"data-testid":`editor-container`,key:f(t).path})):(u(),z(`p`,Vm,`No editable content. Edit its children instead.`))])):(u(),z(`div`,zm,[...n[1]||=[L(`i`,{class:`pi pi-pencil`,style:{"font-size":`2rem`,opacity:`0.3`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select a component to edit`,-1)]]))]))}}),[[`__scopeId`,`data-v-1e2cf67e`]]),Um=11;function Wm(e,t){var n=t.attributes,r,i,a,o,s;if(!(t.nodeType===Um||e.nodeType===Um)){for(var c=n.length-1;c>=0;c--)r=n[c],i=r.name,a=r.namespaceURI,o=r.value,a?(i=r.localName||i,s=e.getAttributeNS(a,i),s!==o&&(r.prefix===`xmlns`&&(i=r.name),e.setAttributeNS(a,i,o))):(s=e.getAttribute(i),s!==o&&e.setAttribute(i,o));for(var l=e.attributes,u=l.length-1;u>=0;u--)r=l[u],i=r.name,a=r.namespaceURI,a?(i=r.localName||i,t.hasAttributeNS(a,i)||e.removeAttributeNS(a,i)):t.hasAttribute(i)||e.removeAttribute(i)}}var Gm,Km=`http://www.w3.org/1999/xhtml`,qm=typeof document>`u`?void 0:document,Jm=!!qm&&`content`in qm.createElement(`template`),Ym=!!qm&&qm.createRange&&`createContextualFragment`in qm.createRange();function Xm(e){var t=qm.createElement(`template`);return t.innerHTML=e,t.content.childNodes[0]}function Zm(e){return Gm||(Gm=qm.createRange(),Gm.selectNode(qm.body)),Gm.createContextualFragment(e).childNodes[0]}function Qm(e){var t=qm.createElement(`body`);return t.innerHTML=e,t.childNodes[0]}function $m(e){return e=e.trim(),Jm?Xm(e):Ym?Zm(e):Qm(e)}function eh(e,t){var n=e.nodeName,r=t.nodeName,i,a;return n===r?!0:(i=n.charCodeAt(0),a=r.charCodeAt(0),i<=90&&a>=97?n===r.toUpperCase():a<=90&&i>=97?r===n.toUpperCase():!1)}function th(e,t){return!t||t===Km?qm.createElement(e):qm.createElementNS(t,e)}function nh(e,t){for(var n=e.firstChild;n;){var r=n.nextSibling;t.appendChild(n),n=r}return t}function rh(e,t,n){e[n]!==t[n]&&(e[n]=t[n],e[n]?e.setAttribute(n,``):e.removeAttribute(n))}var ih={OPTION:function(e,t){var n=e.parentNode;if(n){var r=n.nodeName.toUpperCase();r===`OPTGROUP`&&(n=n.parentNode,r=n&&n.nodeName.toUpperCase()),r===`SELECT`&&!n.hasAttribute(`multiple`)&&(e.hasAttribute(`selected`)&&!t.selected&&(e.setAttribute(`selected`,`selected`),e.removeAttribute(`selected`)),n.selectedIndex=-1)}rh(e,t,`selected`)},INPUT:function(e,t){rh(e,t,`checked`),rh(e,t,`disabled`),e.value!==t.value&&(e.value=t.value),t.hasAttribute(`value`)||e.removeAttribute(`value`)},TEXTAREA:function(e,t){var n=t.value;e.value!==n&&(e.value=n);var r=e.firstChild;if(r){var i=r.nodeValue;if(i==n||!n&&i==e.placeholder)return;r.nodeValue=n}},SELECT:function(e,t){if(!t.hasAttribute(`multiple`)){for(var n=-1,r=0,i=e.firstChild,a,o;i;)if(o=i.nodeName&&i.nodeName.toUpperCase(),o===`OPTGROUP`)a=i,i=a.firstChild,i||(i=a.nextSibling,a=null);else{if(o===`OPTION`){if(i.hasAttribute(`selected`)){n=r;break}r++}i=i.nextSibling,!i&&a&&(i=a.nextSibling,a=null)}e.selectedIndex=n}}},ah=1,oh=11,sh=3,ch=8;function lh(){}function uh(e){if(e)return e.getAttribute&&e.getAttribute(`id`)||e.id}function dh(e){return function(t,n,r){if(r||={},typeof n==`string`)if(t.nodeName===`#document`||t.nodeName===`HTML`){var i=n;n=qm.createElement(`html`),n.innerHTML=i}else if(t.nodeName===`BODY`){var a=n;n=qm.createElement(`html`),n.innerHTML=a;var o=n.querySelector(`body`);o&&(n=o)}else n=$m(n);else n.nodeType===oh&&(n=n.firstElementChild);var s=r.getNodeKey||uh,c=r.onBeforeNodeAdded||lh,l=r.onNodeAdded||lh,u=r.onBeforeElUpdated||lh,d=r.onElUpdated||lh,f=r.onBeforeNodeDiscarded||lh,p=r.onNodeDiscarded||lh,m=r.onBeforeElChildrenUpdated||lh,h=r.skipFromChildren||lh,g=r.addChild||function(e,t){return e.appendChild(t)},_=r.childrenOnly===!0,v=Object.create(null),y=[];function b(e){y.push(e)}function x(e,t){if(e.nodeType===ah)for(var n=e.firstChild;n;){var r=void 0;t&&(r=s(n))?b(r):(p(n),n.firstChild&&x(n,t)),n=n.nextSibling}}function S(e,t,n){f(e)!==!1&&(t&&t.removeChild(e),p(e),x(e,n))}function C(e){if(e.nodeType===ah||e.nodeType===oh)for(var t=e.firstChild;t;){var n=s(t);n&&(v[n]=t),C(t),t=t.nextSibling}}C(t);function w(e){l(e);for(var t=e.firstChild;t;){var n=t.nextSibling,r=s(t);if(r){var i=v[r];i&&eh(t,i)?(t.parentNode.replaceChild(i,t),E(i,t)):w(t)}else w(t);t=n}}function T(e,t,n){for(;t;){var r=t.nextSibling;(n=s(t))?b(n):S(t,e,!0),t=r}}function E(t,n,r){var i=s(n);if(i&&delete v[i],!r){var a=u(t,n);if(a===!1||(a instanceof HTMLElement&&(t=a,C(t)),e(t,n),d(t),m(t,n)===!1))return}t.nodeName===`TEXTAREA`?ih.TEXTAREA(t,n):D(t,n)}function D(e,t){var n=h(e,t),r=t.firstChild,i=e.firstChild,a,o,l,u,d;outer:for(;r;){for(u=r.nextSibling,a=s(r);!n&&i;){if(l=i.nextSibling,r.isSameNode&&r.isSameNode(i)){r=u,i=l;continue outer}o=s(i);var f=i.nodeType,p=void 0;if(f===r.nodeType&&(f===ah?(a?a!==o&&((d=v[a])?l===d?p=!1:(e.insertBefore(d,i),o?b(o):S(i,e,!0),i=d,o=s(i)):p=!1):o&&(p=!1),p=p!==!1&&eh(i,r),p&&E(i,r)):(f===sh||f==ch)&&(p=!0,i.nodeValue!==r.nodeValue&&(i.nodeValue=r.nodeValue))),p){r=u,i=l;continue outer}o?b(o):S(i,e,!0),i=l}if(a&&(d=v[a])&&eh(d,r))n||g(e,d),E(d,r);else{var m=c(r);m!==!1&&(m&&(r=m),r.actualize&&(r=r.actualize(e.ownerDocument||qm)),g(e,r),w(r))}r=u,i=l}T(e,i,o);var _=ih[e.nodeName];_&&_(e,t)}var O=t,k=O.nodeType,A=n.nodeType;if(!_){if(k===ah)A===ah?eh(t,n)||(p(t),O=nh(t,th(n.nodeName,n.namespaceURI))):O=n;else if(k===sh||k===ch){if(A===k)return O.nodeValue!==n.nodeValue&&(O.nodeValue=n.nodeValue),O;O=n}}if(O===n)p(t);else{if(n.isSameNode&&n.isSameNode(O))return;if(E(O,n,_),y)for(var j=0,M=y.length;j<M;j++){var N=v[y[j]];N&&S(N,N.parentNode,!1)}}return!_&&O!==t&&t.parentNode&&(O.actualize&&(O=O.actualize(t.ownerDocument||qm)),t.parentNode.replaceChild(O,t)),O}}var fh=dh(Wm),ph={key:0,class:`preview-empty`,"data-testid":`preview-empty`},mh={class:`preview-toolbar`},hh={class:`preview-devices`},gh=[`title`,`onClick`],_h={class:`preview-route`},vh={class:`preview-actions`},yh=[`value`],bh=[`value`],xh=[`title`],Sh=[`title`],Ch={class:`preview-frame-wrapper`},wh=`
369
369
  <script>
370
370
  (function() {
371
371
  // Hover overlay — transient, subtle, fades
@@ -601,8 +601,8 @@ ${C.current.stack}
601
601
  });
602
602
  })();
603
603
  <\/script>
604
- `,bh=mr(R({__name:`PreviewPanel`,setup(e){function t(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=t*16777619>>>0;return t.toString(16).padStart(8,`0`)}let i=gn(),a=Cn(),o=hn(),s=mn(),p=fn(),h=Tn(),_=ne(),y=c(null),b=c(!1),S=``,w=null,T=wn();function D(){h.mode!==`fullscreen`&&y.value?.contentWindow?.postMessage({type:`gazetta:highlight`,gzId:T.highlightGzId??null},`*`)}l(()=>T.highlightGzId,D);function O(){h.mode!==`fullscreen`&&y.value?.contentWindow?.postMessage({type:`gazetta:showSelect`,gzId:T.selectedGzId??null},`*`)}l(()=>T.selectedGzId,O);let k=`/admin/`.replace(/\/$/,``),A=g(()=>i.previewRoute?`${k}/preview${i.previewRoute}`:null),j=g(()=>i.type!==`fragment`||!i.name||!i.fragmentHostPage?null:t(`@${i.name}`)),M=[{label:`Desktop`,width:`100%`,icon:`pi pi-desktop`},{label:`Tablet`,width:`768px`,icon:`pi pi-tablet`},{label:`Mobile`,width:`375px`,icon:`pi pi-mobile`}],N=c(0),ee=g(()=>M[N.value].width),P=c(!0);function I(){y.value?.contentWindow?.postMessage({type:`gazetta:mode`,mode:h.mode,highlight:P.value},`*`)}l(()=>h.mode,I),l(P,I);function R(){y.value?.contentWindow?.postMessage({type:`gazetta:scope`,gzId:j.value},`*`)}l(j,R);function B(e){return e.replace(/<script>new EventSource\([^)]+\)[^<]*<\/script>/g,``).replace(`</body>`,`${yh}\n</body>`)}async function te(e){if(e.data?.type===`gazetta:escape`&&h.mode===`fullscreen`&&h.toggleFullscreen(),e.data?.type===`gazetta:select`&&e.data.gzId){if(y.value?.contentWindow?.postMessage({type:`gazetta:showSelect`,gzId:e.data.gzId},`*`),T.setPending(e.data.gzId),i.name){let e=i.type===`page`?`/pages`:`/fragments`;_.push(`${e}/${i.name}/edit`)}y.value?.blur()}if(e.data?.type===`gazetta:navigate`&&e.data.route){let t=p.pages.find(t=>t.route===e.data.route);t?_.push(`/pages/${t.name}`):s.show(`No page found for route ${e.data.route}`,{type:`error`})}e.data?.type===`gazetta:hover`&&(T.previewHover(e.data.gzId??null),w&&=(clearTimeout(w),null),e.data.gzId||(w=setTimeout(()=>{y.value?.contentWindow?.postMessage({type:`gazetta:scrollTo`,gzId:T.selectedGzId??null},`*`),w=null},300))),e.data?.type===`gazetta:external`&&e.data.url&&s.show(e.data.url,{link:e.data.url,duration:5e3})}Oi(window,`message`,te);let re=null;r(()=>{try{re=new EventSource(`/__reload`),re.onmessage=()=>V(!0),re.onerror=()=>{re?.close(),re=null}}catch{}}),E(()=>{re?.close()});async function V(e=!0){if(!A.value){S=``;return}b.value=!0;try{let t=a.allOverrides,n=Object.keys(t).length>0,r;r=n?await fetch(A.value,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({overrides:t})}):await fetch(A.value),ie(B(await r.text()),e),setTimeout(()=>{I(),R()},100)}catch{ie(`<pre style="color:red;padding:2rem">Failed to load preview</pre>`,!1)}finally{b.value=!1}}function ie(e,t){let n=y.value;if(n){if(!t||!S||!n.contentDocument?.body?.innerHTML){n.srcdoc=e,S=e;return}try{let t=n.contentDocument;if(!t){n.srcdoc=e,S=e;return}let r=new DOMParser().parseFromString(e,`text/html`);sh(t.body,r.body,{onBeforeNodeDiscarded(e){let t=e.id;return!(t===`gz-hover`||t===`gz-select`||t===`gz-dim`)},onBeforeElUpdated(e,t){return!(e.id===`gz-hover`||e.id===`gz-select`||e.id===`gz-dim`||e.isEqualNode(t))}});let i=t.head.querySelectorAll(`style`),a=r.head.querySelectorAll(`style`);i.forEach((e,t)=>{a[t]&&e.textContent!==a[t].textContent&&(e.textContent=a[t].textContent)}),S=e}catch{n.srcdoc=e,S=e}}}return l(()=>o.version,()=>V(!0)),l(A,()=>V(!1),{immediate:!0}),wi(()=>o.draftVersion,()=>V(!0),{debounce:300}),(e,t)=>(u(),z(`div`,{class:n([`preview-panel`,{fullscreen:f(h).mode===`fullscreen`}]),"data-testid":`preview-panel`},[A.value?(u(),z(C,{key:1},[L(`div`,lh,[L(`div`,uh,[(u(),z(C,null,d(M,(e,t)=>L(`button`,{key:e.label,class:n([`device-btn`,{active:N.value===t}]),title:e.label,onClick:e=>N.value=t},[L(`i`,{class:n(e.icon)},null,2)],10,dh)),64)),f(h).mode===`fullscreen`&&f(i).previewRoute?(u(),z(C,{key:0},[t[5]||=L(`span`,{class:`preview-separator`},null,-1),L(`span`,fh,[t[4]||=L(`i`,{class:`pi pi-globe`},null,-1),m(F(f(i).previewRoute),1)])],64)):v(``,!0)]),L(`div`,ph,[f(i).type===`fragment`&&f(i).staticPages.length>1&&f(h).mode!==`fullscreen`?(u(),z(`select`,{key:0,class:`host-page-select`,"data-testid":`host-page-select`,value:f(i).fragmentHostPage?.name??``,onChange:t[0]||=e=>f(i).setFragmentHostPage(e.target.value)},[(u(!0),z(C,null,d(f(i).staticPages,e=>(u(),z(`option`,{key:e.name,value:e.name},F(e.name),9,hh))),128))],40,mh)):v(``,!0),f(h).mode===`edit`?(u(),z(`button`,{key:1,class:n([`device-btn`,{active:P.value}]),title:P.value?`Hide highlights`:`Show highlights`,"data-testid":`highlight-toggle`,onClick:t[1]||=e=>P.value=!P.value},[...t[6]||=[L(`i`,{class:`pi pi-eye`},null,-1)]],10,gh)):v(``,!0),L(`button`,{class:`device-btn`,title:f(h).mode===`fullscreen`?`Exit fullscreen`:`Fullscreen`,"data-testid":`fullscreen-toggle`,onClick:t[2]||=e=>f(h).toggleFullscreen()},[L(`i`,{class:n(f(h).mode===`fullscreen`?`pi pi-window-minimize`:`pi pi-window-maximize`)},null,2)],8,_h)])]),L(`div`,vh,[L(`iframe`,{ref_key:`iframeRef`,ref:y,class:`preview-iframe`,"data-testid":`preview-iframe`,style:x({width:ee.value,maxWidth:`100%`})},null,4)])],64)):(u(),z(`div`,ch,[...t[3]||=[L(`i`,{class:`pi pi-eye`,style:{"font-size":`2rem`,color:`#ddd`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select a page or fragment to preview`,-1)]]))],2))}}),[[`__scopeId`,`data-v-4aacb015`]]),xh={class:`cms-editor`},Sh={key:0,class:`cms-panel-content`},Ch={class:`cms-panel-content`},wh={class:`cms-panel-content`},Th={class:`cms-preview`},Eh=mr(R({__name:`EditorView`,setup(e){let t=ne(),r=Tn(),a=gn(),o=oi();return Ai(`Escape`,()=>{if(o.visible)return;if(r.mode===`fullscreen`){r.toggleFullscreen();return}if(r.mode!==`edit`)return;let e=document.activeElement;if(e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.tagName===`SELECT`||e.isContentEditable)){e.blur();return}if(!a.name)return;let n=a.type===`page`?`/pages`:`/fragments`;t.push(`${n}/${a.name}`)}),(e,t)=>(u(),z(`div`,xh,[L(`div`,{class:n([`cms-left`,{"cms-left-wide":f(r).mode===`edit`}])},[f(r).mode===`browse`?(u(),z(`div`,Sh,[i($i)])):(u(),B(f(A),{key:1,class:`cms-splitter`},{default:p(()=>[i(f(P),{size:35,minSize:25,class:`cms-panel`},{default:p(()=>[L(`div`,Ch,[i(fa)])]),_:1}),i(f(P),{size:65,minSize:35,class:`cms-panel`},{default:p(()=>[L(`div`,wh,[i(Lm)])]),_:1})]),_:1}))],2),L(`div`,Th,[i(bh)])]))}}),[[`__scopeId`,`data-v-f9c0172b`]]),Dh={class:`playground`,"data-testid":`dev-playground`},Oh={class:`playground-sidebar`},kh={key:0,class:`sidebar-loading`},Ah={key:0,class:`sidebar-section`},jh=[`data-testid`,`onClick`],Mh={class:`item-name`},Nh={key:1,class:`sidebar-section`},Ph=[`data-testid`,`onClick`],Fh={class:`item-name`},Ih={class:`sidebar-section`},Lh=[`data-testid`,`onClick`],Rh={class:`item-name`},zh={key:2,class:`sidebar-empty`},Bh={class:`playground-main`},Vh={key:0,class:`main-empty`},Hh={key:1,class:`main-empty`},Uh={class:`main-toolbar`},Wh={class:`toolbar-label`},Gh={class:`toolbar-type`},Kh={key:0,class:`toolbar-hint`},qh={class:`main-body`},Jh={class:`main-content`},Yh={key:0,class:`mount-error`},Xh={key:0,class:`value-inspector`,"data-testid":`playground-inspector`},Zh=[`innerHTML`],Qh=mr(R({__name:`DevPlayground`,setup(e){let t=pn(),r=ne(),i=ie();Ai(`Escape`,()=>{let e=document.activeElement;if(e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.tagName===`SELECT`||e.isContentEditable)){e.blur();return}r.back()});let a=c([]),o=c([]),s=c(!0),f=c(null),p=c(!1),h=c(null),_=c(!1),y=c(null),b=c(!0),x=c(null),S=null;async function w(){s.value=!0;try{let[e,t]=await Promise.all([U.getTemplates(),U.getFields()]),n=[];for(let t of e)try{let e=await U.getTemplateSchema(t.name);n.push({name:t.name,hasEditor:!!e.hasEditor})}catch{n.push({name:t.name,hasEditor:!1})}a.value=n,o.value=t}catch(e){console.error(`Failed to load playground items:`,e)}finally{s.value=!1}}w().then(()=>{let e=i.params.editor,t=i.params.field;e&&a.value.some(t=>t.name===e)?M(e):t&&o.value.some(e=>e.name===t)&&N(t)});let T=g(()=>a.value.filter(e=>e.hasEditor)),E=g(()=>a.value.filter(e=>!e.hasEditor)),O=g(()=>t.dark?`dark`:`light`),k=g(()=>{try{return j(y.value)}catch{return A(String(y.value))}});function A(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}function j(e,t=0){let n=` `.repeat(t);if(e===null)return`<span class="jv-null">null</span>`;if(typeof e==`boolean`)return`<span class="jv-bool">${e}</span>`;if(typeof e==`number`)return`<span class="jv-num">${e}</span>`;if(typeof e==`string`)return e.includes(`
604
+ `,Th=yr(R({__name:`PreviewPanel`,setup(e){function t(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=t*16777619>>>0;return t.toString(16).padStart(8,`0`)}let i=gn(),a=Cn(),o=hn(),s=mn(),p=fn(),h=Tn(),_=ne(),y=c(null),b=c(!1),S=``,w=null,T=wn();function D(){h.mode!==`fullscreen`&&y.value?.contentWindow?.postMessage({type:`gazetta:highlight`,gzId:T.highlightGzId??null},`*`)}l(()=>T.highlightGzId,D);function O(){h.mode!==`fullscreen`&&y.value?.contentWindow?.postMessage({type:`gazetta:showSelect`,gzId:T.selectedGzId??null},`*`)}l(()=>T.selectedGzId,O);let k=`/admin/`.replace(/\/$/,``),A=g(()=>i.previewRoute?`${k}/preview${i.previewRoute}`:null),j=g(()=>i.type!==`fragment`||!i.name||!i.fragmentHostPage?null:t(`@${i.name}`)),M=[{label:`Desktop`,width:`100%`,icon:`pi pi-desktop`},{label:`Tablet`,width:`768px`,icon:`pi pi-tablet`},{label:`Mobile`,width:`375px`,icon:`pi pi-mobile`}],N=c(0),ee=g(()=>M[N.value].width),P=c(!0);function I(){y.value?.contentWindow?.postMessage({type:`gazetta:mode`,mode:h.mode,highlight:P.value},`*`)}l(()=>h.mode,I),l(P,I);function R(){y.value?.contentWindow?.postMessage({type:`gazetta:scope`,gzId:j.value},`*`)}l(j,R);function B(e){return e.replace(/<script>new EventSource\([^)]+\)[^<]*<\/script>/g,``).replace(`</body>`,`${wh}\n</body>`)}async function te(e){if(e.data?.type===`gazetta:escape`&&h.mode===`fullscreen`&&h.toggleFullscreen(),e.data?.type===`gazetta:select`&&e.data.gzId){if(y.value?.contentWindow?.postMessage({type:`gazetta:showSelect`,gzId:e.data.gzId},`*`),T.setPending(e.data.gzId),i.name){let e=i.type===`page`?`/pages`:`/fragments`;_.push(`${e}/${i.name}/edit`)}y.value?.blur()}if(e.data?.type===`gazetta:navigate`&&e.data.route){let t=p.pages.find(t=>t.route===e.data.route);t?_.push(`/pages/${t.name}`):s.show(`No page found for route ${e.data.route}`,{type:`error`})}e.data?.type===`gazetta:hover`&&(T.previewHover(e.data.gzId??null),w&&=(clearTimeout(w),null),e.data.gzId||(w=setTimeout(()=>{y.value?.contentWindow?.postMessage({type:`gazetta:scrollTo`,gzId:T.selectedGzId??null},`*`),w=null},300))),e.data?.type===`gazetta:external`&&e.data.url&&s.show(e.data.url,{link:e.data.url,duration:5e3})}Ni(window,`message`,te);let re=null;r(()=>{try{re=new EventSource(`/__reload`),re.onmessage=()=>V(!0),re.onerror=()=>{re?.close(),re=null}}catch{}}),E(()=>{re?.close()});async function V(e=!0){if(!A.value){S=``;return}b.value=!0;try{let t=a.allOverrides,n=Object.keys(t).length>0,r;r=n?await fetch(A.value,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({overrides:t})}):await fetch(A.value),ie(B(await r.text()),e),setTimeout(()=>{I(),R()},100)}catch{ie(`<pre style="color:red;padding:2rem">Failed to load preview</pre>`,!1)}finally{b.value=!1}}function ie(e,t){let n=y.value;if(n){if(!t||!S||!n.contentDocument?.body?.innerHTML){n.srcdoc=e,S=e;return}try{let t=n.contentDocument;if(!t){n.srcdoc=e,S=e;return}let r=new DOMParser().parseFromString(e,`text/html`);fh(t.body,r.body,{onBeforeNodeDiscarded(e){let t=e.id;return!(t===`gz-hover`||t===`gz-select`||t===`gz-dim`)},onBeforeElUpdated(e,t){return!(e.id===`gz-hover`||e.id===`gz-select`||e.id===`gz-dim`||e.isEqualNode(t))}});let i=t.head.querySelectorAll(`style`),a=r.head.querySelectorAll(`style`);i.forEach((e,t)=>{a[t]&&e.textContent!==a[t].textContent&&(e.textContent=a[t].textContent)}),S=e}catch{n.srcdoc=e,S=e}}}return l(()=>o.version,()=>V(!0)),l(A,()=>V(!1),{immediate:!0}),ki(()=>o.draftVersion,()=>V(!0),{debounce:300}),(e,t)=>(u(),z(`div`,{class:n([`preview-panel`,{fullscreen:f(h).mode===`fullscreen`}]),"data-testid":`preview-panel`},[A.value?(u(),z(C,{key:1},[L(`div`,mh,[L(`div`,hh,[(u(),z(C,null,d(M,(e,t)=>L(`button`,{key:e.label,class:n([`device-btn`,{active:N.value===t}]),title:e.label,onClick:e=>N.value=t},[L(`i`,{class:n(e.icon)},null,2)],10,gh)),64)),f(h).mode===`fullscreen`&&f(i).previewRoute?(u(),z(C,{key:0},[t[5]||=L(`span`,{class:`preview-separator`},null,-1),L(`span`,_h,[t[4]||=L(`i`,{class:`pi pi-globe`},null,-1),m(F(f(i).previewRoute),1)])],64)):v(``,!0)]),L(`div`,vh,[f(i).type===`fragment`&&f(i).staticPages.length>1&&f(h).mode!==`fullscreen`?(u(),z(`select`,{key:0,class:`host-page-select`,"data-testid":`host-page-select`,value:f(i).fragmentHostPage?.name??``,onChange:t[0]||=e=>f(i).setFragmentHostPage(e.target.value)},[(u(!0),z(C,null,d(f(i).staticPages,e=>(u(),z(`option`,{key:e.name,value:e.name},F(e.name),9,bh))),128))],40,yh)):v(``,!0),f(h).mode===`edit`?(u(),z(`button`,{key:1,class:n([`device-btn`,{active:P.value}]),title:P.value?`Hide highlights`:`Show highlights`,"data-testid":`highlight-toggle`,onClick:t[1]||=e=>P.value=!P.value},[...t[6]||=[L(`i`,{class:`pi pi-eye`},null,-1)]],10,xh)):v(``,!0),L(`button`,{class:`device-btn`,title:f(h).mode===`fullscreen`?`Exit fullscreen`:`Fullscreen`,"data-testid":`fullscreen-toggle`,onClick:t[2]||=e=>f(h).toggleFullscreen()},[L(`i`,{class:n(f(h).mode===`fullscreen`?`pi pi-window-minimize`:`pi pi-window-maximize`)},null,2)],8,Sh)])]),L(`div`,Ch,[L(`iframe`,{ref_key:`iframeRef`,ref:y,class:`preview-iframe`,"data-testid":`preview-iframe`,style:x({width:ee.value,maxWidth:`100%`})},null,4)])],64)):(u(),z(`div`,ph,[...t[3]||=[L(`i`,{class:`pi pi-eye`,style:{"font-size":`2rem`,color:`#ddd`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select a page or fragment to preview`,-1)]]))],2))}}),[[`__scopeId`,`data-v-4aacb015`]]),Eh={class:`cms-editor`},Dh={key:0,class:`cms-panel-content`},Oh={class:`cms-panel-content`},kh={class:`cms-panel-content`},Ah={class:`cms-preview`},jh=yr(R({__name:`EditorView`,setup(e){let t=ne(),r=Tn(),a=gn(),o=di();return Fi(`Escape`,()=>{if(o.visible)return;if(r.mode===`fullscreen`){r.toggleFullscreen();return}if(r.mode!==`edit`)return;let e=document.activeElement;if(e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.tagName===`SELECT`||e.isContentEditable)){e.blur();return}if(!a.name)return;let n=a.type===`page`?`/pages`:`/fragments`;t.push(`${n}/${a.name}`)}),(e,t)=>(u(),z(`div`,Eh,[L(`div`,{class:n([`cms-left`,{"cms-left-wide":f(r).mode===`edit`}])},[f(r).mode===`browse`?(u(),z(`div`,Dh,[i(ia)])):(u(),B(f(A),{key:1,class:`cms-splitter`},{default:p(()=>[i(f(P),{size:35,minSize:25,class:`cms-panel`},{default:p(()=>[L(`div`,Oh,[i(_a)])]),_:1}),i(f(P),{size:65,minSize:35,class:`cms-panel`},{default:p(()=>[L(`div`,kh,[i(Hm)])]),_:1})]),_:1}))],2),L(`div`,Ah,[i(Th)])]))}}),[[`__scopeId`,`data-v-f9c0172b`]]),Mh={class:`playground`,"data-testid":`dev-playground`},Nh={class:`playground-sidebar`},Ph={key:0,class:`sidebar-loading`},Fh={key:0,class:`sidebar-section`},Ih=[`data-testid`,`onClick`],Lh={class:`item-name`},Rh={key:1,class:`sidebar-section`},zh=[`data-testid`,`onClick`],Bh={class:`item-name`},Vh={class:`sidebar-section`},Hh=[`data-testid`,`onClick`],Uh={class:`item-name`},Wh={key:2,class:`sidebar-empty`},Gh={class:`playground-main`},Kh={key:0,class:`main-empty`},qh={key:1,class:`main-empty`},Jh={class:`main-toolbar`},Yh={class:`toolbar-label`},Xh={class:`toolbar-type`},Zh={key:0,class:`toolbar-hint`},Qh={class:`main-body`},$h={class:`main-content`},eg={key:0,class:`mount-error`},tg={key:0,class:`value-inspector`,"data-testid":`playground-inspector`},ng=[`innerHTML`],rg=yr(R({__name:`DevPlayground`,setup(e){let t=pn(),r=ne(),i=ie();Fi(`Escape`,()=>{let e=document.activeElement;if(e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.tagName===`SELECT`||e.isContentEditable)){e.blur();return}r.back()});let a=c([]),o=c([]),s=c(!0),f=c(null),p=c(!1),h=c(null),_=c(!1),y=c(null),b=c(!0),x=c(null),S=null;async function w(){s.value=!0;try{let[e,t]=await Promise.all([U.getTemplates(),U.getFields()]),n=[];for(let t of e)try{let e=await U.getTemplateSchema(t.name);n.push({name:t.name,hasEditor:!!e.hasEditor})}catch{n.push({name:t.name,hasEditor:!1})}a.value=n,o.value=t}catch(e){console.error(`Failed to load playground items:`,e)}finally{s.value=!1}}w().then(()=>{let e=i.params.editor,t=i.params.field;e&&a.value.some(t=>t.name===e)?M(e):t&&o.value.some(e=>e.name===t)&&N(t)});let T=g(()=>a.value.filter(e=>e.hasEditor)),E=g(()=>a.value.filter(e=>!e.hasEditor)),O=g(()=>t.dark?`dark`:`light`),k=g(()=>{try{return j(y.value)}catch{return A(String(y.value))}});function A(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}function j(e,t=0){let n=` `.repeat(t);if(e===null)return`<span class="jv-null">null</span>`;if(typeof e==`boolean`)return`<span class="jv-bool">${e}</span>`;if(typeof e==`number`)return`<span class="jv-num">${e}</span>`;if(typeof e==`string`)return e.includes(`
605
605
  `)?`<span class="jv-str">"${e.split(`
606
606
  `).map(e=>A(e)).join(`<br>${n} `)}"</span>`:`<span class="jv-str">"${A(e)}"</span>`;if(Array.isArray(e))return e.length===0?`[]`:`[\n${e.map(e=>`${n} ${j(e,t+1)}`).join(`,
607
607
  `)}\n${n}]`;if(typeof e==`object`){let r=Object.entries(e);return r.length===0?`{}`:`{\n${r.map(([e,r])=>`${n} <span class="jv-key">"${A(e)}"</span>: ${j(r,t+1)}`).join(`,
608
- `)}\n${n}}`}return A(String(e))}async function M(e){p.value=!0,h.value=null;try{let{hasEditor:t,editorUrl:n,fieldsBaseUrl:i,...a}=await U.getTemplateSchema(e),o=await ee(e);f.value={type:`editor`,name:e,hasEditor:!!t,editorUrl:n,fieldsBaseUrl:i,schema:a,realContent:o},r.replace(`/dev/editor/${e}`)}catch(t){h.value=`Failed to load schema for "${e}": ${t.message}`,f.value=null}finally{p.value=!1}}async function N(e){let t=``;if(a.value.length)try{t=(await U.getTemplateSchema(a.value[0].name)).fieldsBaseUrl??``}catch{}if(!t){h.value=`No fieldsBaseUrl available`;return}f.value={type:`field`,name:e,fieldsBaseUrl:t},r.replace(`/dev/field/${e}`)}async function ee(e){try{let[t,n]=await Promise.all([U.getPages(),U.getFragments()]);for(let n of t)if(n.template===e){let e=await U.getPage(n.name);if(e.content&&Object.keys(e.content).length>0)return e.content}for(let t of n)if(t.template===e){let e=await U.getFragment(t.name);if(e.content&&Object.keys(e.content).length>0)return e.content}function r(e,t){for(let n of e)if(typeof n!=`string`){if(n.template===t&&n.content)return n.content;if(n.components){let e=r(n.components,t);if(e)return e}}}for(let n of t){let t=await U.getPage(n.name);if(!t.components)continue;let i=r(t.components,e);if(i)return i}for(let t of n){let n=await U.getFragment(t.name);if(!n.components)continue;let i=r(n.components,e);if(i)return i}}catch{}}function P(){if(S&&x.value){try{S.unmount(x.value)}catch{}S=null}h.value=null}async function I(){if(P(),!f.value||!x.value)return;let e=x.value;try{if(f.value.type===`editor`){let t=f.value,n=t.realContent??B(t.schema);if(y.value=n,t.hasEditor&&t.editorUrl){let r=await xn(()=>import(t.editorUrl),[]),i=r.default??r;i.mount(e,{content:n,schema:t.schema,theme:O.value,onChange:e=>{y.value=e},fieldsBaseUrl:t.fieldsBaseUrl}),S=i}else{let r=jm(t.schema);r.mount(e,{content:n,schema:t.schema,theme:O.value,onChange:e=>{y.value=e},fieldsBaseUrl:t.fieldsBaseUrl}),S=r}}else{let t=f.value;y.value=``;let n=`${t.fieldsBaseUrl}/${t.name}.tsx`,r;try{r=await xn(()=>import(n),[])}catch{r=await xn(()=>import(`${t.fieldsBaseUrl}/${t.name}.ts`),[])}let i=r.default??r;i.mount(e,{value:``,schema:{},theme:O.value,onChange:e=>{y.value=e}}),S=i}}catch(e){h.value=e.message}}function R(){f.value&&I()}l(f,()=>I(),{flush:`post`}),D(()=>P());function B(e){let t=e.properties;if(!t)return{};let n={};for(let[e,r]of Object.entries(t)){let t=r.type;t===`string`?n[e]=r.default??`Sample ${e}`:t===`number`||t===`integer`?n[e]=42:t===`boolean`?n[e]=!1:t===`array`?n[e]=[]:t===`object`&&(n[e]={})}return n}return(e,t)=>(u(),z(`div`,Dh,[L(`div`,Oh,[t[8]||=L(`div`,{class:`sidebar-header`},`Dev Playground`,-1),s.value?(u(),z(`div`,kh,`Loading...`)):a.value.length||o.value.length?(u(),z(C,{key:1},[T.value.length?(u(),z(`div`,Ah,[t[3]||=L(`div`,{class:`section-label`},`Custom Editors`,-1),(u(!0),z(C,null,d(T.value,e=>(u(),z(`div`,{key:`ce:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`editor`&&f.value.name===e.name}]),"data-testid":`playground-editor-${e.name}`,onClick:t=>M(e.name)},[t[2]||=L(`i`,{class:`pi pi-pencil item-icon`},null,-1),L(`span`,Mh,F(e.name),1)],10,jh))),128))])):v(``,!0),o.value.length?(u(),z(`div`,Nh,[t[5]||=L(`div`,{class:`section-label`},`Custom Fields`,-1),(u(!0),z(C,null,d(o.value,e=>(u(),z(`div`,{key:`f:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`field`&&f.value.name===e.name}]),"data-testid":`playground-field-${e.name}`,onClick:t=>N(e.name)},[t[4]||=L(`i`,{class:`pi pi-sliders-h item-icon`},null,-1),L(`span`,Fh,F(e.name),1)],10,Ph))),128))])):v(``,!0),L(`div`,Ih,[L(`div`,{class:`section-label section-label-toggle`,onClick:t[0]||=e=>_.value=!_.value},[L(`i`,{class:n([_.value?`pi pi-chevron-down`:`pi pi-chevron-right`,`toggle-icon`])},null,2),m(` All Templates (`+F(a.value.length)+`) `,1)]),_.value?(u(!0),z(C,{key:0},d(E.value,e=>(u(),z(`div`,{key:`te:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`editor`&&f.value.name===e.name}]),"data-testid":`playground-editor-${e.name}`,onClick:t=>M(e.name)},[t[6]||=L(`i`,{class:`pi pi-file item-icon`},null,-1),L(`span`,Rh,F(e.name),1)],10,Lh))),128)):v(``,!0)])],64)):(u(),z(`div`,zh,[...t[7]||=[L(`p`,null,`No custom editors or fields yet.`,-1),L(`p`,{class:`hint`},[m(`Create an editor:`),L(`br`),L(`code`,null,`admin/editors/{name}.tsx`)],-1),L(`p`,{class:`hint`},[m(`Create a field:`),L(`br`),L(`code`,null,`admin/fields/{name}.tsx`)],-1)]]))]),L(`div`,Bh,[!f.value&&!p.value?(u(),z(`div`,Vh,[...t[9]||=[L(`i`,{class:`pi pi-code`,style:{"font-size":`2rem`,opacity:`0.3`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select an editor or field to preview`,-1)]])):p.value?(u(),z(`div`,Hh,[...t[10]||=[L(`p`,null,`Loading schema...`,-1)]])):f.value?(u(),z(C,{key:2},[L(`div`,Uh,[L(`span`,Wh,[L(`span`,Gh,F(f.value.type===`editor`?`Editor`:`Field`),1),L(`strong`,null,F(f.value.name),1),f.value.type===`editor`&&f.value.realContent?(u(),z(`span`,Kh,`using real content`)):v(``,!0)]),L(`button`,{class:`toolbar-btn`,"data-testid":`playground-reset`,onClick:R,title:`Reset to initial state`},[...t[11]||=[L(`i`,{class:`pi pi-refresh`},null,-1),m(` Reset `,-1)]]),L(`button`,{class:`toolbar-btn`,"data-testid":`playground-toggle-inspector`,onClick:t[1]||=e=>b.value=!b.value},[t[12]||=L(`i`,{class:`pi pi-code`},null,-1),m(` `+F(b.value?`Hide`:`Show`)+` Value `,1)])]),L(`div`,qh,[L(`div`,Jh,[h.value?(u(),z(`div`,Yh,F(h.value),1)):v(``,!0),L(`div`,{ref_key:`mountRef`,ref:x,class:`mount-container`,"data-testid":`playground-mount`},null,512)]),b.value?(u(),z(`div`,Xh,[t[13]||=L(`div`,{class:`inspector-header`},`Value`,-1),L(`pre`,{class:`inspector-value`,innerHTML:k.value},null,8,Zh)])):v(``,!0)])],64)):v(``,!0)])]))}}),[[`__scopeId`,`data-v-073d12d3`]]);function $h(){let e=ae({history:re(`/admin/`),routes:[{path:`/`,component:Eh,name:`home`},{path:`/pages/:name`,component:Eh,name:`page-browse`},{path:`/pages/:name/edit`,component:Eh,name:`page-edit`},{path:`/fragments/:name`,component:Eh,name:`fragment-browse`},{path:`/fragments/:name/edit`,component:Eh,name:`fragment-edit`},{path:`/dev`,component:Qh,name:`dev`},{path:`/dev/editor/:editor`,component:Qh,name:`dev-editor`},{path:`/dev/field/:field`,component:Qh,name:`dev-field`},{path:`/:pathMatch(.*)*`,redirect:`/`}]});return e.beforeEach(async(e,t)=>{await fn().ensureLoaded();let n=e=>e?.toString().startsWith(`dev`),r=!n(e.name?.toString())&&e.name!==`home`;if(t.name&&!n(t.name.toString())&&t.name!==`home`){let n=Cn(),i=t.params.name,a=e.params.name,o=t.name?.toString().startsWith(`page`)?`page`:`fragment`,s=e.name?.toString().startsWith(`page`)?`page`:`fragment`,c=t.name?.toString().endsWith(`-edit`),l=e.name?.toString().endsWith(`-edit`);if((!r||i!==a||o!==s||c&&!l)&&n.hasPendingEdits){let e=await oi().guard();if(e===`cancel`)return!1;e===`save`&&await n.save(),n.clear()}}if(r){let t=gn(),n=Tn(),r=e.params.name,i=e.name?.toString().startsWith(`page`)?`page`:`fragment`,a=e.name?.toString().endsWith(`-edit`);(t.type!==i||t.name!==r)&&(i===`page`?await t.selectPage(r):await t.selectFragment(r)),a&&n.mode!==`edit`?n.enterEdit():!a&&n.mode===`edit`&&n.enterBrowse()}else if(e.name===`home`){let e=Tn();e.mode===`edit`&&e.enterBrowse()}}),e}var eg=k(mi);eg.use(te()),eg.use(S,{theme:{preset:ln,options:{darkModeSelector:`.dark`}}}),eg.use($h()),eg.mount(`#app`);{let e=document.createElement(`link`);e.rel=`stylesheet`,e.href=`/admin/theme.css`,document.head.appendChild(e)}
608
+ `)}\n${n}}`}return A(String(e))}async function M(e){p.value=!0,h.value=null;try{let{hasEditor:t,editorUrl:n,fieldsBaseUrl:i,...a}=await U.getTemplateSchema(e),o=await ee(e);f.value={type:`editor`,name:e,hasEditor:!!t,editorUrl:n,fieldsBaseUrl:i,schema:a,realContent:o},r.replace(`/dev/editor/${e}`)}catch(t){h.value=`Failed to load schema for "${e}": ${t.message}`,f.value=null}finally{p.value=!1}}async function N(e){let t=``;if(a.value.length)try{t=(await U.getTemplateSchema(a.value[0].name)).fieldsBaseUrl??``}catch{}if(!t){h.value=`No fieldsBaseUrl available`;return}f.value={type:`field`,name:e,fieldsBaseUrl:t},r.replace(`/dev/field/${e}`)}async function ee(e){try{let[t,n]=await Promise.all([U.getPages(),U.getFragments()]);for(let n of t)if(n.template===e){let e=await U.getPage(n.name);if(e.content&&Object.keys(e.content).length>0)return e.content}for(let t of n)if(t.template===e){let e=await U.getFragment(t.name);if(e.content&&Object.keys(e.content).length>0)return e.content}function r(e,t){for(let n of e)if(typeof n!=`string`){if(n.template===t&&n.content)return n.content;if(n.components){let e=r(n.components,t);if(e)return e}}}for(let n of t){let t=await U.getPage(n.name);if(!t.components)continue;let i=r(t.components,e);if(i)return i}for(let t of n){let n=await U.getFragment(t.name);if(!n.components)continue;let i=r(n.components,e);if(i)return i}}catch{}}function P(){if(S&&x.value){try{S.unmount(x.value)}catch{}S=null}h.value=null}async function I(){if(P(),!f.value||!x.value)return;let e=x.value;try{if(f.value.type===`editor`){let t=f.value,n=t.realContent??B(t.schema);if(y.value=n,t.hasEditor&&t.editorUrl){let r=await xn(()=>import(t.editorUrl),[]),i=r.default??r;i.mount(e,{content:n,schema:t.schema,theme:O.value,onChange:e=>{y.value=e},fieldsBaseUrl:t.fieldsBaseUrl}),S=i}else{let r=Im(t.schema);r.mount(e,{content:n,schema:t.schema,theme:O.value,onChange:e=>{y.value=e},fieldsBaseUrl:t.fieldsBaseUrl}),S=r}}else{let t=f.value;y.value=``;let n=`${t.fieldsBaseUrl}/${t.name}.tsx`,r;try{r=await xn(()=>import(n),[])}catch{r=await xn(()=>import(`${t.fieldsBaseUrl}/${t.name}.ts`),[])}let i=r.default??r;i.mount(e,{value:``,schema:{},theme:O.value,onChange:e=>{y.value=e}}),S=i}}catch(e){h.value=e.message}}function R(){f.value&&I()}l(f,()=>I(),{flush:`post`}),D(()=>P());function B(e){let t=e.properties;if(!t)return{};let n={};for(let[e,r]of Object.entries(t)){let t=r.type;t===`string`?n[e]=r.default??`Sample ${e}`:t===`number`||t===`integer`?n[e]=42:t===`boolean`?n[e]=!1:t===`array`?n[e]=[]:t===`object`&&(n[e]={})}return n}return(e,t)=>(u(),z(`div`,Mh,[L(`div`,Nh,[t[8]||=L(`div`,{class:`sidebar-header`},`Dev Playground`,-1),s.value?(u(),z(`div`,Ph,`Loading...`)):a.value.length||o.value.length?(u(),z(C,{key:1},[T.value.length?(u(),z(`div`,Fh,[t[3]||=L(`div`,{class:`section-label`},`Custom Editors`,-1),(u(!0),z(C,null,d(T.value,e=>(u(),z(`div`,{key:`ce:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`editor`&&f.value.name===e.name}]),"data-testid":`playground-editor-${e.name}`,onClick:t=>M(e.name)},[t[2]||=L(`i`,{class:`pi pi-pencil item-icon`},null,-1),L(`span`,Lh,F(e.name),1)],10,Ih))),128))])):v(``,!0),o.value.length?(u(),z(`div`,Rh,[t[5]||=L(`div`,{class:`section-label`},`Custom Fields`,-1),(u(!0),z(C,null,d(o.value,e=>(u(),z(`div`,{key:`f:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`field`&&f.value.name===e.name}]),"data-testid":`playground-field-${e.name}`,onClick:t=>N(e.name)},[t[4]||=L(`i`,{class:`pi pi-sliders-h item-icon`},null,-1),L(`span`,Bh,F(e.name),1)],10,zh))),128))])):v(``,!0),L(`div`,Vh,[L(`div`,{class:`section-label section-label-toggle`,onClick:t[0]||=e=>_.value=!_.value},[L(`i`,{class:n([_.value?`pi pi-chevron-down`:`pi pi-chevron-right`,`toggle-icon`])},null,2),m(` All Templates (`+F(a.value.length)+`) `,1)]),_.value?(u(!0),z(C,{key:0},d(E.value,e=>(u(),z(`div`,{key:`te:`+e.name,class:n([`sidebar-item`,{active:f.value?.type===`editor`&&f.value.name===e.name}]),"data-testid":`playground-editor-${e.name}`,onClick:t=>M(e.name)},[t[6]||=L(`i`,{class:`pi pi-file item-icon`},null,-1),L(`span`,Uh,F(e.name),1)],10,Hh))),128)):v(``,!0)])],64)):(u(),z(`div`,Wh,[...t[7]||=[L(`p`,null,`No custom editors or fields yet.`,-1),L(`p`,{class:`hint`},[m(`Create an editor:`),L(`br`),L(`code`,null,`admin/editors/{name}.tsx`)],-1),L(`p`,{class:`hint`},[m(`Create a field:`),L(`br`),L(`code`,null,`admin/fields/{name}.tsx`)],-1)]]))]),L(`div`,Gh,[!f.value&&!p.value?(u(),z(`div`,Kh,[...t[9]||=[L(`i`,{class:`pi pi-code`,style:{"font-size":`2rem`,opacity:`0.3`,"margin-bottom":`0.5rem`}},null,-1),L(`p`,null,`Select an editor or field to preview`,-1)]])):p.value?(u(),z(`div`,qh,[...t[10]||=[L(`p`,null,`Loading schema...`,-1)]])):f.value?(u(),z(C,{key:2},[L(`div`,Jh,[L(`span`,Yh,[L(`span`,Xh,F(f.value.type===`editor`?`Editor`:`Field`),1),L(`strong`,null,F(f.value.name),1),f.value.type===`editor`&&f.value.realContent?(u(),z(`span`,Zh,`using real content`)):v(``,!0)]),L(`button`,{class:`toolbar-btn`,"data-testid":`playground-reset`,onClick:R,title:`Reset to initial state`},[...t[11]||=[L(`i`,{class:`pi pi-refresh`},null,-1),m(` Reset `,-1)]]),L(`button`,{class:`toolbar-btn`,"data-testid":`playground-toggle-inspector`,onClick:t[1]||=e=>b.value=!b.value},[t[12]||=L(`i`,{class:`pi pi-code`},null,-1),m(` `+F(b.value?`Hide`:`Show`)+` Value `,1)])]),L(`div`,Qh,[L(`div`,$h,[h.value?(u(),z(`div`,eg,F(h.value),1)):v(``,!0),L(`div`,{ref_key:`mountRef`,ref:x,class:`mount-container`,"data-testid":`playground-mount`},null,512)]),b.value?(u(),z(`div`,tg,[t[13]||=L(`div`,{class:`inspector-header`},`Value`,-1),L(`pre`,{class:`inspector-value`,innerHTML:k.value},null,8,ng)])):v(``,!0)])],64)):v(``,!0)])]))}}),[[`__scopeId`,`data-v-073d12d3`]]);function ig(){let e=ae({history:re(`/admin/`),routes:[{path:`/`,component:jh,name:`home`},{path:`/pages/:name`,component:jh,name:`page-browse`},{path:`/pages/:name/edit`,component:jh,name:`page-edit`},{path:`/fragments/:name`,component:jh,name:`fragment-browse`},{path:`/fragments/:name/edit`,component:jh,name:`fragment-edit`},{path:`/dev`,component:rg,name:`dev`},{path:`/dev/editor/:editor`,component:rg,name:`dev-editor`},{path:`/dev/field/:field`,component:rg,name:`dev-field`},{path:`/:pathMatch(.*)*`,redirect:`/`}]});return e.beforeEach(async(e,t)=>{await fn().ensureLoaded();let n=e=>e?.toString().startsWith(`dev`),r=!n(e.name?.toString())&&e.name!==`home`;if(t.name&&!n(t.name.toString())&&t.name!==`home`){let n=Cn(),i=t.params.name,a=e.params.name,o=t.name?.toString().startsWith(`page`)?`page`:`fragment`,s=e.name?.toString().startsWith(`page`)?`page`:`fragment`,c=t.name?.toString().endsWith(`-edit`),l=e.name?.toString().endsWith(`-edit`);if((!r||i!==a||o!==s||c&&!l)&&n.hasPendingEdits){let e=await di().guard();if(e===`cancel`)return!1;e===`save`&&await n.save(),n.clear()}}if(r){let t=gn(),n=Tn(),r=e.params.name,i=e.name?.toString().startsWith(`page`)?`page`:`fragment`,a=e.name?.toString().endsWith(`-edit`);(t.type!==i||t.name!==r)&&(i===`page`?await t.selectPage(r):await t.selectFragment(r)),a&&n.mode!==`edit`?n.enterEdit():!a&&n.mode===`edit`&&n.enterBrowse()}else if(e.name===`home`){let e=Tn();e.mode===`edit`&&e.enterBrowse()}}),e}var ag=k(yi);ag.use(te()),ag.use(S,{theme:{preset:ln,options:{darkModeSelector:`.dark`}}}),ag.use(ig()),ag.mount(`#app`);{let e=document.createElement(`link`);e.rel=`stylesheet`,e.href=`/admin/theme.css`,document.head.appendChild(e)}