keystone_ui-pages 0.1.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.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/app/assets/builds/keystone_ui_pages/editor.js +67 -0
- data/app/controllers/concerns/keystone_ui/pages/edits_pages.rb +32 -0
- data/app/controllers/concerns/keystone_ui/pages/host_checks.rb +25 -0
- data/app/controllers/keystone_ui/pages/manage/base_controller.rb +28 -0
- data/app/controllers/keystone_ui/pages/manage/columns_controller.rb +15 -0
- data/app/controllers/keystone_ui/pages/manage/documents_controller.rb +15 -0
- data/app/controllers/keystone_ui/pages/manage/edit_history_controller.rb +21 -0
- data/app/controllers/keystone_ui/pages/manage/elements_controller.rb +30 -0
- data/app/controllers/keystone_ui/pages/manage/lives_controller.rb +20 -0
- data/app/controllers/keystone_ui/pages/manage/nodes_controller.rb +31 -0
- data/app/controllers/keystone_ui/pages/manage/pages_controller.rb +41 -0
- data/app/controllers/keystone_ui/pages/manage/pdfs_controller.rb +23 -0
- data/app/controllers/keystone_ui/pages/manage/rows_controller.rb +15 -0
- data/app/controllers/keystone_ui/pages/manage/samples_controller.rb +16 -0
- data/app/controllers/keystone_ui/pages/manage/sections_controller.rb +15 -0
- data/app/controllers/keystone_ui/pages/manage/versions_controller.rb +25 -0
- data/app/controllers/keystone_ui/pages/pages_controller.rb +26 -0
- data/app/helpers/keystone_ui/pages/drawing_helper.rb +115 -0
- data/app/helpers/keystone_ui/pages/editor_helper.rb +46 -0
- data/app/helpers/keystone_ui/pages/host_helper.rb +17 -0
- data/app/javascript/keystone_ui_pages/DeviceWidth.jsx +21 -0
- data/app/javascript/keystone_ui_pages/ElementFields.jsx +78 -0
- data/app/javascript/keystone_ui_pages/ElementPalette.jsx +62 -0
- data/app/javascript/keystone_ui_pages/LayoutPanel.jsx +41 -0
- data/app/javascript/keystone_ui_pages/ListField.jsx +49 -0
- data/app/javascript/keystone_ui_pages/LookChoice.jsx +17 -0
- data/app/javascript/keystone_ui_pages/PageEditor.jsx +260 -0
- data/app/javascript/keystone_ui_pages/SampleChoice.jsx +15 -0
- data/app/javascript/keystone_ui_pages/SelectionPath.jsx +19 -0
- data/app/javascript/keystone_ui_pages/SelectionToolbar.jsx +14 -0
- data/app/javascript/keystone_ui_pages/ShowWhen.jsx +32 -0
- data/app/javascript/keystone_ui_pages/ThemeMode.jsx +23 -0
- data/app/javascript/keystone_ui_pages/document.js +10 -0
- data/app/javascript/keystone_ui_pages/editor.jsx +8 -0
- data/app/javascript/keystone_ui_pages/operations.js +32 -0
- data/app/jobs/keystone_ui/pages/pdf_job.rb +11 -0
- data/app/models/keystone_ui/pages/page.rb +55 -0
- data/app/models/keystone_ui/pages/pdf.rb +12 -0
- data/app/models/keystone_ui/pages/version.rb +13 -0
- data/app/views/keystone_ui/pages/manage/pages/index.html.erb +35 -0
- data/app/views/keystone_ui/pages/manage/pages/new.html.erb +13 -0
- data/app/views/keystone_ui/pages/manage/pages/show.html.erb +8 -0
- data/app/views/keystone_ui/pages/manage/versions/index.html.erb +28 -0
- data/app/views/keystone_ui/pages/manage/versions/show.html.erb +11 -0
- data/app/views/keystone_ui/pages/pages/show.html.erb +3 -0
- data/app/views/keystone_ui/pages/pdfs/show.html.erb +12 -0
- data/config/routes.rb +31 -0
- data/db/migrate/20261014120000_create_keystone_ui_pages_pages.rb +17 -0
- data/db/migrate/20261014120001_create_keystone_ui_pages_versions.rb +18 -0
- data/db/migrate/20261015130000_create_keystone_ui_pages_pdfs.rb +14 -0
- data/db/migrate/20261016120000_add_edit_history_to_keystone_ui_pages_pages.rb +8 -0
- data/lib/keystone_ui/pages/catalog.rb +29 -0
- data/lib/keystone_ui/pages/document.rb +29 -0
- data/lib/keystone_ui/pages/engine.rb +25 -0
- data/lib/keystone_ui/pages/keystone_elements.rb +109 -0
- data/lib/keystone_ui/pages/operations.rb +246 -0
- data/lib/keystone_ui/pages/pdf_document.rb +17 -0
- data/lib/keystone_ui/pages/pdfs.rb +20 -0
- data/lib/keystone_ui/pages/printer.rb +43 -0
- data/lib/keystone_ui/pages/values.rb +28 -0
- data/lib/keystone_ui/pages/version.rb +7 -0
- data/lib/keystone_ui/pages.rb +45 -0
- data/lib/keystone_ui-pages.rb +3 -0
- data/the_local/agents/keystone_ui-pages-develop.md +277 -0
- data/the_local/agents/keystone_ui-pages-info.md +71 -0
- data/the_local/agents/keystone_ui-pages-install.md +167 -0
- data/the_local/interface.yml +56 -0
- metadata +169 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 53d292b9c9e78d1ff869fbf18dfa379997dcbe9ffb03a4610626d526b706ab75
|
|
4
|
+
data.tar.gz: 7b47de32ca86c9e47b78f2859e78886e656aa2f177a1c973efccba3b3d5fb68a
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 89efb74c60014ba81af1bdd39beb49cde07c85ad75cb437637d287f01630e2d09f17b4d448ac679e67fe7455dfdc69102325a9c494b70f048d1fb542a327f111
|
|
7
|
+
data.tar.gz: a454813d12f3ae50b45bfedb3c3e61a85b9f5e32f0d027be97525598cb5937333b86d1c4ea722fbaf060530621a07f772d03139166cae455012b808f695ca202
|
data/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 DYB
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
(()=>{var fd=globalThis.ReactDOM;var{createPortal:vh,createRoot:Xo,flushSync:mh,hydrateRoot:yh,preconnect:bh,prefetchDNS:_h,preinit:wh,preinitModule:xh,preload:kh,preloadModule:Sh,requestFormReset:Eh,unstable_batchedUpdates:Oh,useFormState:Ph,useFormStatus:Ch,version:Mh}=fd;var Uo=globalThis.React,f=Uo,{Children:Dh,Component:Ah,Fragment:Th,PureComponent:Nh,StrictMode:Wh,Suspense:Lh,cloneElement:$h,createContext:zh,createElement:Fh,createRef:Vh,forwardRef:Or,isValidElement:Rh,lazy:jh,memo:Bh,startTransition:Hh,useCallback:qh,useContext:Xh,useDebugValue:Uh,useDeferredValue:Yh,useEffect:He,useId:Kh,useImperativeHandle:Gh,useLayoutEffect:Yo,useMemo:Jh,useReducer:Zh,useRef:qe,useState:rt,useSyncExternalStore:Qh,useTransition:tp}=Uo;var Ko=new Map,Pr=new Map,Go=(t,e)=>Ko.set(t,e),Jo=()=>{Pr.forEach(t=>t.unmount()),Pr.clear()},Zo=(t,e)=>t.querySelectorAll("[data-react-ui]").forEach(n=>{if(Pr.has(n))return;let r=Ko.get(n.dataset.reactUi),i=e(n);Pr.set(n,i),i.render(f.createElement(r,JSON.parse(n.dataset.props)))});var Qo=(t,e)=>{let n=()=>Zo(t,e);t.addEventListener("turbo:load",n),t.addEventListener("turbo:frame-load",n),t.addEventListener("turbo:before-cache",Jo),t.readyState==="loading"?t.addEventListener("DOMContentLoaded",n):n()};var hd=Symbol.for("preact-signals");function Dr(){if(Ut>1)Ut--;else{var t,e=!1;for((function(){var i=Mr;for(Mr=void 0;i!==void 0;){var s=i.S;if(s.v===i.v)for(var a=s.t;a!==void 0;a=a.x)a.i===i.i&&(a.i=s.i);i=i.o}})();Dn!==void 0;){var n=Dn;for(Dn=void 0,Cr++;n!==void 0;){var r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&ea(n))try{n.c()}catch(i){e||(t=i,e=!0)}n=r}}if(Cr=0,Ut--,e)throw t}}function F(t){if(Ut>0)return t();$i=++pd,Ut++;try{return t()}finally{Dr()}}var In,B=void 0;function D(t){var e=B,n=In;B=void 0,In=void 0;try{return t()}finally{B=e,In=n}}var Dn=void 0,Ut=0,Cr=0,pd=0,$i=0,Mr=void 0,Ir=0;function ta(t){if(B!==void 0){var e=t.n;if(e===void 0||e.t!==B)return e={i:0,S:t,p:B.s,n:void 0,t:B,e:void 0,x:void 0,r:e},B.s!==void 0&&(B.s.n=e),B.s=e,t.n=e,32&B.f&&t.S(e),e;if(e.i===-1)return e.i=0,e.n!==void 0&&(e.n.p=e.p,e.p!==void 0&&(e.p.n=e.n),e.p=B.s,e.n=void 0,B.s.n=e,B.s=e),e}}function it(t,e){this.v=t,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=e?.watched,this.Z=e?.unwatched,this.name=e?.name}it.prototype.brand=hd;it.prototype.h=function(){return!0};it.prototype.S=function(t){var e=this,n=this.t;n!==t&&t.e===void 0&&(t.x=n,this.t=t,n!==void 0?n.e=t:D(function(){var r;(r=e.W)==null||r.call(e)}))};it.prototype.U=function(t){var e=this;if(this.t!==void 0){var n=t.e,r=t.x;n!==void 0&&(n.x=r,t.e=void 0),r!==void 0&&(r.e=n,t.x=void 0),t===this.t&&(this.t=r,r===void 0&&D(function(){var i;(i=e.Z)==null||i.call(e)}))}};it.prototype.subscribe=function(t){var e=this;return st(function(){var n=e.value;D(function(){return t(n)})},{name:"sub"})};it.prototype.valueOf=function(){return this.value};it.prototype.toString=function(){return this.value+""};it.prototype.toJSON=function(){return this.value};it.prototype.peek=function(){var t=this;return D(function(){return t.value})};Object.defineProperty(it.prototype,"value",{get:function(){var t=ta(this);return t!==void 0&&(t.i=this.i),this.v},set:function(t){if(t!==this.v){if(Cr>100)throw new Error("Cycle detected");(function(n){Ut!==0&&Cr===0&&n.l!==$i&&(n.l=$i,Mr={S:n,v:n.v,i:n.i,o:Mr})})(this),this.v=t,this.i++,Ir++,Ut++;try{for(var e=this.t;e!==void 0;e=e.x)e.t.N()}finally{Dr()}}}});function Vt(t,e){return new it(t,e)}function ea(t){for(var e=t.s;e!==void 0;e=e.n)if(e.S.i!==e.i||!e.S.h()||e.S.i!==e.i)return!0;return!1}function na(t){for(var e=t.s;e!==void 0;e=e.n){var n=e.S.n;if(n!==void 0&&(e.r=n),e.S.n=e,e.i=-1,e.n===void 0){t.s=e;break}}}function ra(t){for(var e=t.s,n=void 0;e!==void 0;){var r=e.p;e.i===-1?(e.S.U(e),r!==void 0&&(r.n=e.n),e.n!==void 0&&(e.n.p=r)):n=e,e.S.n=e.r,e.r!==void 0&&(e.r=void 0),e=r}t.s=n}function ge(t,e){it.call(this,void 0,e),this.x=t,this.s=void 0,this.g=Ir-1,this.f=4}ge.prototype=new it;ge.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Ir))return!0;if(this.g=Ir,this.f|=1,this.i>0&&!ea(this))return this.f&=-2,!0;var t=B;try{na(this),B=this;var e=this.x();(16&this.f||this.v!==e||this.i===0)&&(this.v=e,this.f&=-17,this.i++)}catch(n){this.v=n,this.f|=16,this.i++}return B=t,ra(this),this.f&=-2,!0};ge.prototype.S=function(t){if(this.t===void 0){this.f|=36;for(var e=this.s;e!==void 0;e=e.n)e.S.S(e)}it.prototype.S.call(this,t)};ge.prototype.U=function(t){if(this.t!==void 0&&(it.prototype.U.call(this,t),this.t===void 0)){this.f&=-33;for(var e=this.s;e!==void 0;e=e.n)e.S.U(e)}};ge.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var t=this.t;t!==void 0;t=t.x)t.t.N()}};Object.defineProperty(ge.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var t=ta(this);if(this.h(),t!==void 0&&(t.i=this.i),16&this.f)throw this.v;return this.v}});function zi(t,e){return new ge(t,e)}function ia(t){var e=t.m;if(t.m=void 0,typeof e=="function"){Ut++;var n=B;B=void 0;try{e()}catch(r){throw t.f&=-2,t.f|=8,Fi(t),r}finally{B=n,Dr()}}}function Fi(t){for(var e=t.s;e!==void 0;e=e.n)e.S.U(e);t.x=void 0,t.s=void 0,ia(t)}function gd(t){if(B!==this)throw new Error("Out-of-order effect");ra(this),B=t,this.f&=-2,8&this.f&&Fi(this),Dr()}function Xe(t,e){this.x=t,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=e?.name,In&&In.push(this)}Xe.prototype.c=function(){var t=this.S();try{if(8&this.f||this.x===void 0)return;var e=this.x();typeof e=="function"&&(this.m=e)}finally{t()}};Xe.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,ia(this),na(this),Ut++;var t=B;return B=this,gd.bind(this,t)};Xe.prototype.N=function(){2&this.f||(this.f|=2,this.u=Dn,Dn=this)};Xe.prototype.d=function(){this.f|=8,1&this.f||Fi(this)};Xe.prototype.dispose=function(){this.d()};function st(t,e){var n=new Xe(t,e);try{n.c()}catch(i){throw n.d(),i}var r=n.d.bind(n);return r[Symbol.dispose]=r,r}var vd=Object.create,Gi=Object.defineProperty,md=Object.defineProperties,yd=Object.getOwnPropertyDescriptor,bd=Object.getOwnPropertyDescriptors,sa=Object.getOwnPropertySymbols,_d=Object.prototype.hasOwnProperty,wd=Object.prototype.propertyIsEnumerable,aa=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),Ue=t=>{throw TypeError(t)},Hi=(t,e,n)=>e in t?Gi(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xd=(t,e)=>{for(var n in e||(e={}))_d.call(e,n)&&Hi(t,n,e[n]);if(sa)for(var n of sa(e))wd.call(e,n)&&Hi(t,n,e[n]);return t},kd=(t,e)=>md(t,bd(e)),oa=(t,e)=>Gi(t,"name",{value:e,configurable:!0}),Sd=t=>{var e;return[,,,vd((e=t?.[aa("metadata")])!=null?e:null)]},la=["class","method","getter","setter","accessor","field","value","get","set"],An=t=>t!==void 0&&typeof t!="function"?Ue("Function expected"):t,Ed=(t,e,n,r,i)=>({kind:la[t],name:e,metadata:r,addInitializer:s=>n._?Ue("Already initialized"):i.push(An(s||null))}),ca=(t,e)=>Hi(e,aa("metadata"),t[3]),ve=(t,e,n,r)=>{for(var i=0,s=t[e>>1],a=s&&s.length;i<a;i++)e&1?s[i].call(n):r=s[i].call(n,r);return r},Ye=(t,e,n,r,i,s)=>{var a,o,l,d,u,c=e&7,g=!!(e&8),p=!!(e&16),b=c>3?t.length+1:c?g?1:2:0,_=la[c+5],k=c>3&&(t[b-1]=[]),x=t[b]||(t[b]=[]),h=c&&(!p&&!g&&(i=i.prototype),c<5&&(c>3||!p)&&yd(c<4?i:{get[n](){return Ct(this,s)},set[n](v){return ee(this,s,v)}},n));c?p&&c<4&&oa(s,(c>2?"set ":c>1?"get ":"")+n):oa(i,n);for(var m=r.length-1;m>=0;m--)d=Ed(c,n,l={},t[3],x),c&&(d.static=g,d.private=p,u=d.access={has:p?v=>Od(i,v):v=>n in v},c^3&&(u.get=p?v=>(c^1?Ct:Pd)(v,i,c^4?s:h.get):v=>v[n]),c>2&&(u.set=p?(v,y)=>ee(v,i,y,c^4?s:h.set):(v,y)=>v[n]=y)),o=(0,r[m])(c?c<4?p?s:h[_]:c>4?void 0:{get:h.get,set:h.set}:i,d),l._=1,c^4||o===void 0?An(o)&&(c>4?k.unshift(o):c?p?s=o:h[_]=o:i=o):typeof o!="object"||o===null?Ue("Object expected"):(An(a=o.get)&&(h.get=a),An(a=o.set)&&(h.set=a),An(a=o.init)&&k.unshift(a));return c||ca(t,i),h&&Gi(i,n,h),p?c^4?s:h:i},Ji=(t,e,n)=>e.has(t)||Ue("Cannot "+n),Od=(t,e)=>Object(e)!==e?Ue('Cannot use the "in" operator on this value'):t.has(e),Ct=(t,e,n)=>(Ji(t,e,"read from private field"),n?n.call(t):e.get(t)),Tn=(t,e,n)=>e.has(t)?Ue("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),ee=(t,e,n,r)=>(Ji(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),Pd=(t,e,n)=>(Ji(t,e,"access private method"),n);function Tr(t,e){if(e){let n;return zi(()=>{let r=t();return r&&n&&e(n,r)?n:(n=r,r)})}return zi(t)}function Ar(t,e){if(Object.is(t,e))return!0;if(t===null||e===null)return!1;if(typeof t=="function"&&typeof e=="function")return t===e;if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}if(Array.isArray(t))return!Array.isArray(e)||t.length!==e.length?!1:!t.some((r,i)=>!Ar(r,e[i]));if(typeof t=="object"&&typeof e=="object"){let n=Object.keys(t),r=Object.keys(e);return n.length!==r.length?!1:!n.some(s=>!Ar(t[s],e[s]))}return!1}function A({get:t},e){return{init(n){return Vt(n)},get(){return t.call(this).value},set(n){let r=t.call(this);r.peek()!==n&&(r.value=n)}}}function H(t,e){let n=new WeakMap;return function(){let r=n.get(this);return r||(r=Tr(t.bind(this)),n.set(this,r)),r.value}}function Vi(t=!0){return function(e,n){n.addInitializer(function(){let r=n.kind==="field"?this:n.static?this:Object.getPrototypeOf(this),i=Object.getOwnPropertyDescriptor(r,n.name);i&&Object.defineProperty(r,n.name,kd(xd({},i),{enumerable:t}))})}}function ye(...t){let e=t.map(n=>st(n));return()=>e.forEach(n=>n())}var da,ua,fa,ha,pa,ga,ut,Zi,Ri,qi,Xi,ot,Qi,ji,va,Ui,ts,Bi,Yi,Ki;ga=[A],pa=[A],ha=[A],fa=[Vi()],ua=[Vi()],da=[Vi()];var ne=class{constructor(t,e=Object.is){this.defaultValue=t,this.equals=e,ve(ut,5,this),Tn(this,ot),Tn(this,Zi,ve(ut,8,this)),ve(ut,11,this),Tn(this,Qi,ve(ut,12,this)),ve(ut,15,this),Tn(this,ts,ve(ut,16,this)),ve(ut,19,this),this.reset=this.reset.bind(this),this.reset()}get current(){return Ct(this,ot,Yi)}get initial(){return Ct(this,ot,qi)}get previous(){return Ct(this,ot,va)}set current(t){let e=D(()=>Ct(this,ot,Yi));t&&e&&this.equals(e,t)||F(()=>{Ct(this,ot,qi)||ee(this,ot,t,Xi),ee(this,ot,e,Ui),ee(this,ot,t,Ki)})}reset(t=this.defaultValue){F(()=>{ee(this,ot,void 0,Ui),ee(this,ot,t,Xi),ee(this,ot,t,Ki)})}};ut=Sd(null);Zi=new WeakMap;ot=new WeakSet;Qi=new WeakMap;ts=new WeakMap;Ri=Ye(ut,20,"#initial",ga,ot,Zi),qi=Ri.get,Xi=Ri.set;ji=Ye(ut,20,"#previous",pa,ot,Qi),va=ji.get,Ui=ji.set;Bi=Ye(ut,20,"#current",ha,ot,ts),Yi=Bi.get,Ki=Bi.set;Ye(ut,2,"current",fa,ne);Ye(ut,2,"initial",ua,ne);Ye(ut,2,"previous",da,ne);ca(ut,ne);function Nr(t){return D(()=>{let e={};for(let n in t)e[n]=t[n];return e})}var me,ma=class{constructor(){Tn(this,me,new WeakMap)}get(t,e){var n;return t?(n=Ct(this,me).get(t))==null?void 0:n.get(e):void 0}set(t,e,n){var r;if(t)return Ct(this,me).has(t)||Ct(this,me).set(t,new Map),(r=Ct(this,me).get(t))==null?void 0:r.set(e,n)}clear(t){var e;return t?(e=Ct(this,me).get(t))==null?void 0:e.clear():void 0}};me=new WeakMap;var Cd=Object.create,os=Object.defineProperty,Md=Object.getOwnPropertyDescriptor,ya=Object.getOwnPropertySymbols,Id=Object.prototype.hasOwnProperty,Dd=Object.prototype.propertyIsEnumerable,wa=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),Ke=t=>{throw TypeError(t)},ba=Math.pow,es=(t,e,n)=>e in t?os(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ad=(t,e)=>{for(var n in e||(e={}))Id.call(e,n)&&es(t,n,e[n]);if(ya)for(var n of ya(e))Dd.call(e,n)&&es(t,n,e[n]);return t},_a=(t,e)=>os(t,"name",{value:e,configurable:!0}),Td=t=>{var e;return[,,,Cd((e=t?.[wa("metadata")])!=null?e:null)]},xa=["class","method","getter","setter","accessor","field","value","get","set"],Nn=t=>t!==void 0&&typeof t!="function"?Ke("Function expected"):t,Nd=(t,e,n,r,i)=>({kind:xa[t],name:e,metadata:r,addInitializer:s=>n._?Ke("Already initialized"):i.push(Nn(s||null))}),ka=(t,e)=>es(e,wa("metadata"),t[3]),Wd=(t,e,n,r)=>{for(var i=0,s=t[e>>1],a=s&&s.length;i<a;i++)e&1?s[i].call(n):r=s[i].call(n,r);return r},Sa=(t,e,n,r,i,s)=>{var a,o,l,d,u,c=e&7,g=!!(e&8),p=!!(e&16),b=c>3?t.length+1:c?g?1:2:0,_=xa[c+5],k=c>3&&(t[b-1]=[]),x=t[b]||(t[b]=[]),h=c&&(!p&&!g&&(i=i.prototype),c<5&&(c>3||!p)&&Md(c<4?i:{get[n](){return ns(this,s)},set[n](v){return rs(this,s,v)}},n));c?p&&c<4&&_a(s,(c>2?"set ":c>1?"get ":"")+n):_a(i,n);for(var m=r.length-1;m>=0;m--)d=Nd(c,n,l={},t[3],x),c&&(d.static=g,d.private=p,u=d.access={has:p?v=>Ld(i,v):v=>n in v},c^3&&(u.get=p?v=>(c^1?ns:zd)(v,i,c^4?s:h.get):v=>v[n]),c>2&&(u.set=p?(v,y)=>rs(v,i,y,c^4?s:h.set):(v,y)=>v[n]=y)),o=(0,r[m])(c?c<4?p?s:h[_]:c>4?void 0:{get:h.get,set:h.set}:i,d),l._=1,c^4||o===void 0?Nn(o)&&(c>4?k.unshift(o):c?p?s=o:h[_]=o:i=o):typeof o!="object"||o===null?Ke("Object expected"):(Nn(a=o.get)&&(h.get=a),Nn(a=o.set)&&(h.set=a),Nn(a=o.init)&&k.unshift(a));return c||ka(t,i),h&&os(i,n,h),p?c^4?s:h:i},as=(t,e,n)=>e.has(t)||Ke("Cannot "+n),Ld=(t,e)=>Object(e)!==e?Ke('Cannot use the "in" operator on this value'):t.has(e),ns=(t,e,n)=>(as(t,e,"read from private field"),n?n.call(t):e.get(t)),$d=(t,e,n)=>e.has(t)?Ke("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),rs=(t,e,n,r)=>(as(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),zd=(t,e,n)=>(as(t,e,"access private method"),n),at=class is{constructor(e,n){this.x=e,this.y=n}static delta(e,n){return new is(e.x-n.x,e.y-n.y)}static distance(e,n){return Math.hypot(e.x-n.x,e.y-n.y)}static equals(e,n){return e.x===n.x&&e.y===n.y}static from({x:e,y:n}){return new is(e,n)}},mt=class be{constructor(e,n,r,i){this.left=e,this.top=n,this.width=r,this.height=i,this.scale={x:1,y:1}}get inverseScale(){return{x:1/this.scale.x,y:1/this.scale.y}}translate(e,n){let{top:r,left:i,width:s,height:a,scale:o}=this,l=new be(i+e,r+n,s,a);return l.scale=Ad({},o),l}get boundingRectangle(){let{width:e,height:n,left:r,top:i,right:s,bottom:a}=this;return{width:e,height:n,left:r,top:i,right:s,bottom:a}}get center(){let{left:e,top:n,right:r,bottom:i}=this;return new at((e+r)/2,(n+i)/2)}get area(){let{width:e,height:n}=this;return e*n}equals(e){if(!(e instanceof be))return!1;let{left:n,top:r,width:i,height:s}=this;return n===e.left&&r===e.top&&i===e.width&&s===e.height}containsPoint(e){let{top:n,left:r,bottom:i,right:s}=this;return n<=e.y&&e.y<=i&&r<=e.x&&e.x<=s}intersectionArea(e){return e instanceof be?Fd(this,e):0}intersectionRatio(e){let{area:n}=this,r=this.intersectionArea(e);return r/(e.area+n-r)}get bottom(){let{top:e,height:n}=this;return e+n}get right(){let{left:e,width:n}=this;return e+n}get aspectRatio(){let{width:e,height:n}=this;return e/n}get corners(){return[{x:this.left,y:this.top},{x:this.right,y:this.top},{x:this.left,y:this.bottom},{x:this.right,y:this.bottom}]}static from({top:e,left:n,width:r,height:i}){return new be(n,e,r,i)}static delta(e,n,r={x:"center",y:"center"}){let i=(s,a)=>{let o=r[a],l=a==="x"?s.left:s.top,d=a==="x"?s.width:s.height;return o=="start"?l:o=="end"?l+d:l+d/2};return at.delta({x:i(e,"x"),y:i(e,"y")},{x:i(n,"x"),y:i(n,"y")})}static intersectionRatio(e,n){return be.from(e).intersectionRatio(be.from(n))}};function Fd(t,e){let n=Math.max(e.top,t.top),r=Math.max(e.left,t.left),i=Math.min(e.left+e.width,t.left+t.width),s=Math.min(e.top+e.height,t.top+t.height),a=i-r,o=s-n;return r<i&&n<s?a*o:0}var Ea,Oa,ss,Wr,Wn,Ln=class extends(ss=ne,Oa=[H],Ea=[H],ss){constructor(t){let e=at.from(t);super(e,(n,r)=>at.equals(n,r)),Wd(Wn,5,this),$d(this,Wr,0),this.velocity={x:0,y:0}}get delta(){return at.delta(this.current,this.initial)}get direction(){let{current:t,previous:e}=this;if(!e)return null;let n={x:t.x-e.x,y:t.y-e.y};return!n.x&&!n.y?null:Math.abs(n.x)>Math.abs(n.y)?n.x>0?"right":"left":n.y>0?"down":"up"}get current(){return super.current}set current(t){let{current:e}=this,n=at.from(t),r={x:n.x-e.x,y:n.y-e.y},i=Date.now(),s=i-ns(this,Wr),a=o=>Math.round(o/s*100);F(()=>{rs(this,Wr,i),this.velocity={x:a(r.x),y:a(r.y)},super.current=n})}reset(t=this.defaultValue){super.reset(at.from(t)),this.velocity={x:0,y:0}}};Wn=Td(ss);Wr=new WeakMap;Sa(Wn,2,"delta",Oa,Ln);Sa(Wn,2,"direction",Ea,Ln);ka(Wn,Ln);function Lr({x:t,y:e},n){let r=Math.abs(t),i=Math.abs(e);return typeof n=="number"?Math.sqrt(ba(r,2)+ba(i,2))>n:"x"in n&&"y"in n?r>n.x&&i>n.y:"x"in n?r>n.x:"y"in n?i>n.y:!1}var Pa=(t=>(t.Horizontal="x",t.Vertical="y",t))(Pa||{}),ls=Object.values(Pa);var Vd=Object.create,hs=Object.defineProperty,Rd=Object.defineProperties,jd=Object.getOwnPropertyDescriptor,Bd=Object.getOwnPropertyDescriptors,Br=Object.getOwnPropertySymbols,Da=Object.prototype.hasOwnProperty,Aa=Object.prototype.propertyIsEnumerable,Ta=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),en=t=>{throw TypeError(t)},ds=(t,e,n)=>e in t?hs(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ps=(t,e)=>{for(var n in e||(e={}))Da.call(e,n)&&ds(t,n,e[n]);if(Br)for(var n of Br(e))Aa.call(e,n)&&ds(t,n,e[n]);return t},gs=(t,e)=>Rd(t,Bd(e)),Ca=(t,e)=>hs(t,"name",{value:e,configurable:!0}),Na=(t,e)=>{var n={};for(var r in t)Da.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&Br)for(var r of Br(t))e.indexOf(r)<0&&Aa.call(t,r)&&(n[r]=t[r]);return n},nn=t=>{var e;return[,,,Vd((e=t?.[Ta("metadata")])!=null?e:null)]},Wa=["class","method","getter","setter","accessor","field","value","get","set"],$n=t=>t!==void 0&&typeof t!="function"?en("Function expected"):t,Hd=(t,e,n,r,i)=>({kind:Wa[t],name:e,metadata:r,addInitializer:s=>n._?en("Already initialized"):i.push($n(s||null))}),xe=(t,e)=>ds(e,Ta("metadata"),t[3]),M=(t,e,n,r)=>{for(var i=0,s=t[e>>1],a=s&&s.length;i<a;i++)e&1?s[i].call(n):r=s[i].call(n,r);return r},N=(t,e,n,r,i,s)=>{var a,o,l,d,u,c=e&7,g=!!(e&8),p=!!(e&16),b=c>3?t.length+1:c?g?1:2:0,_=Wa[c+5],k=c>3&&(t[b-1]=[]),x=t[b]||(t[b]=[]),h=c&&(!p&&!g&&(i=i.prototype),c<5&&(c>3||!p)&&jd(c<4?i:{get[n](){return X(this,s)},set[n](v){return xt(this,s,v)}},n));c?p&&c<4&&Ca(s,(c>2?"set ":c>1?"get ":"")+n):Ca(i,n);for(var m=r.length-1;m>=0;m--)d=Hd(c,n,l={},t[3],x),c&&(d.static=g,d.private=p,u=d.access={has:p?v=>qd(i,v):v=>n in v},c^3&&(u.get=p?v=>(c^1?X:La)(v,i,c^4?s:h.get):v=>v[n]),c>2&&(u.set=p?(v,y)=>xt(v,i,y,c^4?s:h.set):(v,y)=>v[n]=y)),o=(0,r[m])(c?c<4?p?s:h[_]:c>4?void 0:{get:h.get,set:h.set}:i,d),l._=1,c^4||o===void 0?$n(o)&&(c>4?k.unshift(o):c?p?s=o:h[_]=o:i=o):typeof o!="object"||o===null?en("Object expected"):($n(a=o.get)&&(h.get=a),$n(a=o.set)&&(h.set=a),$n(a=o.init)&&k.unshift(a));return c||xe(t,i),h&&hs(i,n,h),p?c^4?s:h:i},vs=(t,e,n)=>e.has(t)||en("Cannot "+n),qd=(t,e)=>Object(e)!==e?en('Cannot use the "in" operator on this value'):t.has(e),X=(t,e,n)=>(vs(t,e,"read from private field"),n?n.call(t):e.get(t)),$=(t,e,n)=>e.has(t)?en("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),xt=(t,e,n,r)=>(vs(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),La=(t,e,n)=>(vs(t,e,"access private method"),n);function $a(t,e){return{plugin:t,options:e}}function rn(t){return e=>$a(t,e)}function tn(t){return typeof t=="function"?{plugin:t,options:void 0}:t}var za,Vn,ms,zr;za=[A];var Z=class{constructor(t,e){this.manager=t,this.options=e,$(this,ms,M(Vn,8,this,!1)),M(Vn,11,this),$(this,zr,new Set)}enable(){this.disabled=!1}disable(){this.disabled=!0}isDisabled(){return D(()=>this.disabled)}configure(t){this.options=t}registerEffect(t){let e=st(t.bind(this));return X(this,zr).add(e),e}destroy(){X(this,zr).forEach(t=>t())}static configure(t){return $a(this,t)}};Vn=nn(null);ms=new WeakMap;zr=new WeakMap;N(Vn,4,"disabled",za,Z,ms);xe(Vn,Z);var sn=class extends Z{},Fr,cs=class{constructor(t){this.manager=t,this.instances=new Map,$(this,Fr,[])}get values(){return Array.from(this.instances.values())}set values(t){let e=t.map(tn).reduce((r,i)=>{let s=r.find(({plugin:a})=>a===i.plugin);return s?(s.options=i.options,r):[...r,i]},[]),n=e.map(({plugin:r})=>r);for(let r of X(this,Fr))if(!n.includes(r)){if(r.prototype instanceof sn)continue;this.unregister(r)}for(let{plugin:r,options:i}of e)this.register(r,i);xt(this,Fr,n)}get(t){return this.instances.get(t)}register(t,e){let n=this.instances.get(t);if(n)return n.options!==e&&(n.options=e),n;let r=new t(this.manager,e);return this.instances.set(t,r),r}unregister(t){let e=this.instances.get(t);e&&(e.destroy(),this.instances.delete(t))}destroy(){for(let t of this.instances.values())t.destroy();this.instances.clear()}};Fr=new WeakMap;function Xd(t,e){return t.priority===e.priority?t.type===e.type?e.value-t.value:e.type-t.type:e.priority-t.priority}var $r=[],Ge,Je,Ud=class extends Z{constructor(t){super(t),$(this,Ge),$(this,Je),this.computeCollisions=this.computeCollisions.bind(this),xt(this,Je,Vt($r)),this.destroy=ye(()=>{let e=this.computeCollisions(),n=D(()=>this.manager.dragOperation.position.current);if(e!==$r){let r=X(this,Ge);if(xt(this,Ge,n),r&&n.x==r.x&&n.y==r.y)return}else xt(this,Ge,void 0);X(this,Je).value=e},()=>{let{dragOperation:e}=this.manager;e.status.initialized&&this.forceUpdate()})}forceUpdate(t=!0){D(()=>{t?X(this,Je).value=this.computeCollisions():xt(this,Ge,void 0)})}computeCollisions(t,e){let{registry:n,dragOperation:r}=this.manager,{source:i,shape:s,status:a}=r;if(!a.initialized||!s)return $r;let o=[],l=[];for(let d of t??n.droppables){if(d.disabled||i&&!d.accepts(i))continue;let u=e??d.collisionDetector;if(!u)continue;l.push(d),d.shape;let c=D(()=>u({droppable:d,dragOperation:r}));c&&(d.collisionPriority!=null&&(c.priority=d.collisionPriority),o.push(c))}return l.length===0?$r:(o.sort(Xd),o)}get collisions(){return X(this,Je).value}};Ge=new WeakMap;Je=new WeakMap;var Fa,Va,Ra,ys,ja,Nt,bs,Qe,_s,ws;Ra=[A],Va=[A],Fa=[A];var Yt=class _e{constructor(e,n){$(this,bs,M(Nt,8,this)),M(Nt,11,this),$(this,Qe),$(this,_s,M(Nt,12,this)),M(Nt,15,this),$(this,ws,M(Nt,16,this)),M(Nt,19,this);let{effects:r,id:i,data:s={},disabled:a=!1,register:o=!0}=e,l=i;xt(this,Qe,Vt(i)),this.manager=n,this.data=s,this.disabled=a,this.effects=()=>{var d;return[()=>{let{id:u,manager:c}=this;if(u!==l)return l=u,c?.registry.register(this),()=>c?.registry.unregister(this)},...(d=r?.())!=null?d:[]]},this.register=this.register.bind(this),this.unregister=this.unregister.bind(this),this.destroy=this.destroy.bind(this),n&&o&&queueMicrotask(this.register)}get id(){var e,n;let r=X(this,Qe).value;return(n=(e=_e.pendingIdChanges)==null?void 0:e.get(this))!=null?n:r}set id(e){var n,r;let i=(r=(n=_e.pendingIdChanges)==null?void 0:n.get(this))!=null?r:X(this,Qe).peek();e!==i&&(_e.pendingIdChanges||(_e.pendingIdChanges=new Map,queueMicrotask(()=>{var s;return La(s=_e,ys,ja).call(s)})),_e.pendingIdChanges.set(this,e))}register(){var e;return(e=this.manager)==null?void 0:e.registry.register(this)}unregister(){var e;(e=this.manager)==null||e.registry.unregister(this)}destroy(){var e;(e=this.manager)==null||e.registry.unregister(this)}};Nt=nn(null);ys=new WeakSet;ja=function(){let t=Yt.pendingIdChanges;Yt.pendingIdChanges=null,t&&F(()=>{for(let[e,n]of t)X(e,Qe).value=n})};bs=new WeakMap;Qe=new WeakMap;_s=new WeakMap;ws=new WeakMap;N(Nt,4,"manager",Ra,Yt,bs);N(Nt,4,"data",Va,Yt,_s);N(Nt,4,"disabled",Fa,Yt,ws);$(Yt,ys);xe(Nt,Yt);Yt.pendingIdChanges=null;var Hr=Yt,Ma=class{constructor(){this.map=Vt(new Map),this.cleanupFunctions=new WeakMap,this.register=(t,e)=>{let n=this.map.peek(),r=n.get(t),i=()=>this.unregister(t,e);if(r===e)return i;if(r&&r.id===t){let o=this.cleanupFunctions.get(r);o?.(),this.cleanupFunctions.delete(r)}let s=new Map(n);for(let[o,l]of n)if(l===e&&o!==t){s.delete(o);break}s.set(t,e),this.map.value=s;let a=ye(...e.effects());return this.cleanupFunctions.set(e,a),i},this.unregister=(t,e)=>{let n=this.map.peek();if(n.get(t)!==e)return;let r=this.cleanupFunctions.get(e);r?.(),this.cleanupFunctions.delete(e);let i=new Map(n);i.delete(t),this.map.value=i}}[Symbol.iterator](){return this.map.peek().values()}get value(){return this.map.value.values()}has(t){return this.map.value.has(t)}get(t){return this.map.value.get(t)}destroy(){for(let t of this){let e=this.cleanupFunctions.get(t);e?.(),t.destroy()}this.map.value=new Map}},Ba,Ha,qa,Xa,Ua,Ya,us,ft,xs,ks,Ss,Wt=class extends(us=Hr,Ya=[A],Ua=[A],Xa=[A],qa=[H],Ha=[H],Ba=[H],us){constructor(t,e){var n=t,{modifiers:r,type:i,sensors:s,plugins:a,effects:o}=n,l=Na(n,["modifiers","type","sensors","plugins","effects"]);super(gs(ps({},l),{effects:()=>{var d;return[...(d=o?.())!=null?d:[],()=>{let{manager:u,plugins:c}=this;if(!(!u||!c))for(let g of c){let{plugin:p}=tn(g);u.registry.plugins.register(p)}}]}}),e),M(ft,5,this),$(this,xs,M(ft,8,this)),M(ft,11,this),$(this,ks,M(ft,12,this)),M(ft,15,this),$(this,Ss,M(ft,16,this,this.isDragSource?"dragging":"idle")),M(ft,19,this),this.type=i,this.sensors=s,this.modifiers=r,this.alignment=l.alignment,this.plugins=a}pluginConfig(t){if(this.plugins)for(let e of this.plugins){let n=tn(e);if(n.plugin===t)return n.options}}get isDropping(){return this.status==="dropping"&&this.isDragSource}get isDragging(){return this.status==="dragging"&&this.isDragSource}get isDragSource(){var t,e;return((e=(t=this.manager)==null?void 0:t.dragOperation.source)==null?void 0:e.id)===this.id}};ft=nn(us);xs=new WeakMap;ks=new WeakMap;Ss=new WeakMap;N(ft,4,"type",Ya,Wt,xs);N(ft,4,"modifiers",Ua,Wt,ks);N(ft,4,"status",Xa,Wt,Ss);N(ft,2,"isDropping",qa,Wt);N(ft,2,"isDragging",Ha,Wt);N(ft,2,"isDragSource",Ba,Wt);xe(ft,Wt);var Ka,Ga,Ja,Za,Qa,tl,fs,K,Es,Os,Ps,Cs,Ms,Lt=class extends(fs=Hr,tl=[A],Qa=[A],Za=[A],Ja=[A],Ga=[A],Ka=[H],fs){constructor(t,e){var n=t,{accept:r,collisionDetector:i,collisionPriority:s,type:a}=n,o=Na(n,["accept","collisionDetector","collisionPriority","type"]);super(o,e),M(K,5,this),$(this,Es,M(K,8,this)),M(K,11,this),$(this,Os,M(K,12,this)),M(K,15,this),$(this,Ps,M(K,16,this)),M(K,19,this),$(this,Cs,M(K,20,this)),M(K,23,this),$(this,Ms,M(K,24,this)),M(K,27,this),this.accept=r,this.collisionDetector=i,this.collisionPriority=s,this.type=a}accepts(t){let{accept:e}=this;return e?typeof e=="function"?e(t):t.type?Array.isArray(e)?e.includes(t.type):t.type===e:!1:!0}get isDropTarget(){var t,e;return((e=(t=this.manager)==null?void 0:t.dragOperation.target)==null?void 0:e.id)===this.id}};K=nn(fs);Es=new WeakMap;Os=new WeakMap;Ps=new WeakMap;Cs=new WeakMap;Ms=new WeakMap;N(K,4,"accept",tl,Lt,Es);N(K,4,"type",Qa,Lt,Os);N(K,4,"collisionDetector",Za,Lt,Ps);N(K,4,"collisionPriority",Ja,Lt,Cs);N(K,4,"shape",Ga,Lt,Ms);N(K,2,"isDropTarget",Ka,Lt);xe(K,Lt);var Yd=class{constructor(){this.registry=new Map}addEventListener(t,e){let{registry:n}=this,r=new Set(n.get(t));return r.add(e),n.set(t,r),()=>this.removeEventListener(t,e)}removeEventListener(t,e){let{registry:n}=this,r=new Set(n.get(t));r.delete(e),n.set(t,r)}dispatch(t,...e){let{registry:n}=this,r=n.get(t);if(r)for(let i of r)i(...e)}},Kd=class extends Yd{constructor(t){super(),this.manager=t}dispatch(t,e){let n=[e,this.manager];super.dispatch(t,...n)}};function Vr(t,e=!0){let n=!1;return gs(ps({},t),{cancelable:e,get defaultPrevented(){return n},preventDefault(){e&&(n=!0)}})}var Gd=class extends sn{constructor(t){super(t);let e=(r,i)=>r.map(({id:s})=>s).join("")===i.map(({id:s})=>s).join(""),n=[];this.destroy=ye(()=>{let{dragOperation:r,collisionObserver:i}=t;r.status.initializing&&(n=[],i.enable())},()=>{let{collisionObserver:r,monitor:i}=t,{collisions:s}=r;if(r.isDisabled()||Hr.pendingIdChanges)return;let a=Vr({collisions:s});if(i.dispatch("collision",a),a.defaultPrevented||e(s,n))return;n=s;let[o]=s;D(()=>{var l;o?.id!==((l=t.dragOperation.target)==null?void 0:l.id)&&(r.disable(),t.actions.setDropTarget(o?.id).then(()=>{r.enable()}))})})}},ke=(t=>(t[t.Lowest=0]="Lowest",t[t.Low=1]="Low",t[t.Normal=2]="Normal",t[t.High=3]="High",t[t.Highest=4]="Highest",t))(ke||{}),Se=(t=>(t[t.Collision=0]="Collision",t[t.ShapeIntersection=1]="ShapeIntersection",t[t.PointerIntersection=2]="PointerIntersection",t))(Se||{}),el,nl,rl,il,sl,ol,al,Mt,Is;al=[A],ol=[H],sl=[H],il=[H],rl=[H],nl=[H],el=[H];var Kt=class{constructor(){M(Mt,5,this),$(this,Is,M(Mt,8,this,"idle")),M(Mt,11,this)}get current(){return this.value}get idle(){return this.value==="idle"}get initializing(){return this.value==="initializing"}get initialized(){let{value:t}=this;return t!=="idle"&&t!=="initialization-pending"}get dragging(){return this.value==="dragging"}get dropped(){return this.value==="dropped"}set(t){this.value=t}};Mt=nn(null);Is=new WeakMap;N(Mt,4,"value",al,Kt,Is);N(Mt,2,"current",ol,Kt);N(Mt,2,"idle",sl,Kt);N(Mt,2,"initializing",il,Kt);N(Mt,2,"initialized",rl,Kt);N(Mt,2,"dragging",nl,Kt);N(Mt,2,"dropped",el,Kt);xe(Mt,Kt);var Jd=class{constructor(t){this.manager=t}setDragSource(t){let{dragOperation:e}=this.manager;e.sourceIdentifier=typeof t=="string"||typeof t=="number"?t:t.id}setDropTarget(t){return D(()=>{let{dragOperation:e}=this.manager,n=t??null;if(e.targetIdentifier===n)return Promise.resolve(!1);e.targetIdentifier=n;let r=Vr({operation:e.snapshot()});return e.status.dragging&&this.manager.monitor.dispatch("dragover",r),this.manager.renderer.rendering.then(()=>r.defaultPrevented)})}start(t){return D(()=>{let{dragOperation:e}=this.manager;if(t.source!=null&&this.setDragSource(t.source),!e.source)throw new Error("Cannot start a drag operation without a drag source");if(!e.status.idle)throw new Error("Cannot start a drag operation while another is active");let r=new AbortController,{event:i,coordinates:s}=t;F(()=>{e.status.set("initialization-pending"),e.shape=null,e.canceled=!1,e.activatorEvent=i??null,e.position.reset(s)});let a=Vr({operation:e.snapshot()});return this.manager.monitor.dispatch("beforedragstart",a),a.defaultPrevented?(e.reset(),r.abort(),r):(e.status.set("initializing"),e.controller=r,this.manager.renderer.rendering.then(()=>{if(r.signal.aborted)return;let{status:o}=e;o.current==="initializing"&&F(()=>{e.status.set("dragging"),this.manager.monitor.dispatch("dragstart",{nativeEvent:i,operation:e.snapshot(),cancelable:!1})})}),r)})}move(t){return D(()=>{var e,n;let{dragOperation:r}=this.manager,{status:i,controller:s}=r;if(!i.dragging||!s||s.signal.aborted)return;let a=Vr({nativeEvent:t.event,operation:r.snapshot(),by:t.by,to:t.to},(e=t.cancelable)!=null?e:!0);((n=t.propagate)==null||n)&&this.manager.monitor.dispatch("dragmove",a),queueMicrotask(()=>{var o,l,d,u,c;if(a.defaultPrevented)return;let g=(c=t.to)!=null?c:{x:r.position.current.x+((l=(o=t.by)==null?void 0:o.x)!=null?l:0),y:r.position.current.y+((u=(d=t.by)==null?void 0:d.y)!=null?u:0)};r.position.current=g})})}stop(t={}){return D(()=>{var e,n;let{dragOperation:r}=this.manager,{controller:i}=r;if(!i||i.signal.aborted)return;let s,a=()=>{let l={resume:()=>{},abort:()=>{}};return s=new Promise((d,u)=>{l.resume=d,l.abort=u}),l};i.abort();let o=()=>{this.manager.renderer.rendering.then(()=>{r.status.set("dropped");let l=D(()=>{var u;return((u=r.source)==null?void 0:u.status)==="dropping"}),d=()=>{r.controller===i&&(r.controller=void 0),r.reset()};if(l){let{source:u}=r,c=st(()=>{u?.status==="idle"&&(c(),d())})}else this.manager.renderer.rendering.then(d)})};r.canceled=(e=t.canceled)!=null?e:!1,this.manager.monitor.dispatch("dragend",{nativeEvent:t.event,operation:r.snapshot(),canceled:(n=t.canceled)!=null?n:!1,suspend:a}),s?s.then(o).catch(()=>r.reset()):o()})}},we=class extends Z{constructor(t,e){super(t,e),this.manager=t,this.options=e}},ll=class extends AbortController{constructor(t,e){super(),this.constraints=t,this.onActivate=e,this.activated=!1;for(let n of t??[])n.controller=this}onEvent(t){var e;if(!this.activated)if((e=this.constraints)!=null&&e.length)for(let n of this.constraints)n.onEvent(t);else this.activate(t)}activate(t){this.activated||(this.activated=!0,this.onActivate(t))}abort(t){this.activated=!1,super.abort(t)}},Rr,Ds=class{constructor(t){this.options=t,$(this,Rr)}set controller(t){xt(this,Rr,t),t.signal.addEventListener("abort",()=>this.abort())}activate(t){var e;(e=X(this,Rr))==null||e.activate(t)}};Rr=new WeakMap;var Ia=class extends Z{constructor(t,e){super(t,e),this.manager=t,this.options=e}apply(t){return t.transform}},Zd=class{constructor(t){this.draggables=new Ma,this.droppables=new Ma,this.plugins=new cs(t),this.sensors=new cs(t),this.modifiers=new cs(t)}register(t,e){if(t instanceof Wt)return this.draggables.register(t.id,t);if(t instanceof Lt)return this.droppables.register(t.id,t);if(t.prototype instanceof Ia)return this.modifiers.register(t,e);if(t.prototype instanceof we)return this.sensors.register(t,e);if(t.prototype instanceof Z)return this.plugins.register(t,e);throw new Error("Invalid instance type")}unregister(t){if(t instanceof Hr)return t instanceof Wt?this.draggables.unregister(t.id,t):t instanceof Lt?this.droppables.unregister(t.id,t):()=>{};if(t.prototype instanceof Ia)return this.modifiers.unregister(t);if(t.prototype instanceof we)return this.sensors.unregister(t);if(t.prototype instanceof Z)return this.plugins.unregister(t);throw new Error("Invalid instance type")}destroy(){this.draggables.destroy(),this.droppables.destroy(),this.plugins.destroy(),this.sensors.destroy(),this.modifiers.destroy()}},cl,dl,ul,fl,hl,pl,gl,vl,ml,zn,jr,Ze,q,As,Ts,Ns,Ws,Ls,Fn;ml=[H],vl=[A],gl=[A],pl=[A],hl=[A],fl=[A],ul=[H],dl=[H],cl=[H];var $t=class{constructor(t){M(q,5,this),$(this,zn),$(this,jr),$(this,Ze,new ne(void 0,(e,n)=>e&&n?e.equals(n):e===n)),this.status=new Kt,$(this,As,M(q,8,this,!1)),M(q,11,this),$(this,Ts,M(q,12,this,null)),M(q,15,this),$(this,Ns,M(q,16,this,null)),M(q,19,this),$(this,Ws,M(q,20,this,null)),M(q,23,this),$(this,Ls,M(q,24,this,[])),M(q,27,this),this.position=new Ln({x:0,y:0}),$(this,Fn,{x:0,y:0}),xt(this,zn,t)}get shape(){let{current:t,initial:e,previous:n}=X(this,Ze);return!t||!e?null:{current:t,initial:e,previous:n}}set shape(t){t?X(this,Ze).current=t:X(this,Ze).reset()}get source(){var t;let e=this.sourceIdentifier;if(e==null)return null;let n=X(this,zn).registry.draggables.get(e);return n&&xt(this,jr,n),(t=n??X(this,jr))!=null?t:null}get target(){var t;let e=this.targetIdentifier;return e!=null&&(t=X(this,zn).registry.droppables.get(e))!=null?t:null}get transform(){let{x:t,y:e}=this.position.delta,n={x:t,y:e};for(let r of this.modifiers)n=r.apply(gs(ps({},this.snapshot()),{transform:n}));return xt(this,Fn,n),n}snapshot(){return D(()=>({source:this.source,target:this.target,activatorEvent:this.activatorEvent,transform:X(this,Fn),shape:this.shape?Nr(this.shape):null,position:Nr(this.position),status:Nr(this.status),canceled:this.canceled}))}reset(){F(()=>{this.status.set("idle"),this.sourceIdentifier=null,this.targetIdentifier=null,X(this,Ze).reset(),this.position.reset({x:0,y:0}),xt(this,Fn,{x:0,y:0}),this.modifiers=[]})}};q=nn(null);zn=new WeakMap;jr=new WeakMap;Ze=new WeakMap;As=new WeakMap;Ts=new WeakMap;Ns=new WeakMap;Ws=new WeakMap;Ls=new WeakMap;Fn=new WeakMap;N(q,2,"shape",ml,$t);N(q,4,"canceled",vl,$t,As);N(q,4,"activatorEvent",gl,$t,Ts);N(q,4,"sourceIdentifier",pl,$t,Ns);N(q,4,"targetIdentifier",hl,$t,Ws);N(q,4,"modifiers",fl,$t,Ls);N(q,2,"source",ul,$t);N(q,2,"target",dl,$t);N(q,2,"transform",cl,$t);xe(q,$t);var Qd={get rendering(){return Promise.resolve()}};function Rt(t,e){return typeof t=="function"?t(e):t??e}var yl=class{constructor(t){this.destroy=()=>{this.dragOperation.status.idle||this.actions.stop({canceled:!0}),this.dragOperation.modifiers.forEach(c=>c.destroy()),this.registry.destroy(),this.collisionObserver.destroy()};var e;let n=t??{},r=Rt(n.plugins,[]),i=Rt(n.sensors,[]),s=Rt(n.modifiers,[]),a=(e=n.renderer)!=null?e:Qd,o=new Kd(this),l=new Zd(this);this.registry=l,this.monitor=o,this.renderer=a,this.actions=new Jd(this),this.dragOperation=new $t(this),this.collisionObserver=new Ud(this),this.plugins=[Gd,...r],this.modifiers=s,this.sensors=i;let{destroy:d}=this,u=ye(()=>{var c,g,p;let b=D(()=>this.dragOperation.modifiers),_=this.modifiers;for(let k of b)_.includes(k)||k.destroy();this.dragOperation.modifiers=(p=(g=(c=this.dragOperation.source)==null?void 0:c.modifiers)==null?void 0:g.map(k=>{let{plugin:x,options:h}=tn(k);return new x(this,h)}))!=null?p:_});this.destroy=()=>{u(),d()}}get plugins(){return this.registry.plugins.values}set plugins(t){this.registry.plugins.values=t}get modifiers(){return this.registry.modifiers.values}set modifiers(t){this.registry.modifiers.values=t}get sensors(){return this.registry.sensors.values}set sensors(t){this.registry.sensors.values=t}};var El=t=>{throw TypeError(t)},Fs=(t,e,n)=>e.has(t)||El("Cannot "+n),I=(t,e,n)=>(Fs(t,e,"read from private field"),e.get(t)),yt=(t,e,n)=>e.has(t)?El("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),kt=(t,e,n,r)=>(Fs(t,e,"write to private field"),e.set(t,n),n),Ol=(t,e,n)=>(Fs(t,e,"access private method"),n);function Qr(t){return t?t instanceof KeyframeEffect?!0:"getKeyframes"in t&&typeof t.getKeyframes=="function":!1}function Vs(t,e){let n=t.getAnimations(),r=null;for(let i of n){if(i.playState!=="running")continue;let{effect:s}=i,o=(Qr(s)?s.getKeyframes():[]).filter(e);o.length>0&&(r=[o[o.length-1],i])}return r}function ti(t){let{width:e,height:n,top:r,left:i,bottom:s,right:a}=t.getBoundingClientRect();return{width:e,height:n,top:r,left:i,bottom:s,right:a}}function Rs(t){let e=Object.prototype.toString.call(t);return e==="[object Window]"||e==="[object global]"}function Un(t){return"nodeType"in t}function ht(t){var e,n,r;return t?Rs(t)?t:Un(t)?"defaultView"in t?(e=t.defaultView)!=null?e:window:(r=(n=t.ownerDocument)==null?void 0:n.defaultView)!=null?r:window:window:window}function ei(t){let{Document:e}=ht(t);return t instanceof e||"nodeType"in t&&t.nodeType===Node.DOCUMENT_NODE}function Gt(t){return!t||Rs(t)?!1:t instanceof ht(t).HTMLElement||"namespaceURI"in t&&typeof t.namespaceURI=="string"&&t.namespaceURI.endsWith("html")}function Pl(t){return t instanceof ht(t).SVGElement||"namespaceURI"in t&&typeof t.namespaceURI=="string"&&t.namespaceURI.endsWith("svg")}function Ce(t){return t?Rs(t)?t.document:Un(t)?ei(t)?t:Gt(t)||Pl(t)?t.ownerDocument:document:document:document}function tu(t){var e,n,r,i;let{documentElement:s}=Ce(t),a=ht(t).visualViewport,o=(e=a?.width)!=null?e:s.clientWidth,l=(n=a?.height)!=null?n:s.clientHeight,d=(r=a?.offsetTop)!=null?r:0,u=(i=a?.offsetLeft)!=null?i:0;return{top:d,left:u,right:u+o,bottom:d+l,width:o,height:l}}function eu(t,e){if(nu(t)&&t.open===!1)return!1;let{overflow:n,overflowX:r,overflowY:i}=getComputedStyle(t);return n==="visible"&&r==="visible"&&i==="visible"}function nu(t){return t.tagName==="DETAILS"}function an(t,e=t.getBoundingClientRect(),n=0){var r,i,s,a,o;let l=e,{ownerDocument:d}=t,u=(r=d.defaultView)!=null?r:window,c=t.parentElement;for(;c&&c!==d.documentElement;){if(!eu(c)){let m=c.getBoundingClientRect(),v=n*(m.bottom-m.top),y=n*(m.right-m.left),O=n*(m.bottom-m.top),C=n*(m.right-m.left);l={top:Math.max(l.top,m.top-v),right:Math.min(l.right,m.right+y),bottom:Math.min(l.bottom,m.bottom+O),left:Math.max(l.left,m.left-C),width:0,height:0},l.width=l.right-l.left,l.height=l.bottom-l.top}c=c.parentElement}let g=u.visualViewport,p=(i=g?.offsetTop)!=null?i:0,b=(s=g?.offsetLeft)!=null?s:0,_=(a=g?.width)!=null?a:u.innerWidth,k=(o=g?.height)!=null?o:u.innerHeight,x=n*k,h=n*_;return l={top:Math.max(l.top,p-x),right:Math.min(l.right,b+_+h),bottom:Math.min(l.bottom,p+k+x),left:Math.max(l.left,b-h),width:0,height:0},l.width=l.right-l.left,l.height=l.bottom-l.top,l.width<0&&(l.width=0),l.height<0&&(l.height=0),l}function Me(t){return{x:t.clientX,y:t.clientY}}var Cl=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Kr(t=document,e=new Set){if(e.has(t))return[];e.add(t);let n=[t];for(let r of Array.from(t.querySelectorAll("iframe, frame")))try{let i=r.contentDocument;i&&!e.has(i)&&n.push(...Kr(i,e))}catch{}try{let r=t.defaultView;if(r&&r!==window.top){let i=r.parent;i&&i.document&&i.document!==t&&n.push(...Kr(i.document,e))}}catch{}return n}function ni(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function js(){var t,e;let n=ni()?window.visualViewport:null;return{x:(t=n?.offsetLeft)!=null?t:0,y:(e=n?.offsetTop)!=null?e:0}}function ri(t){return!t||!Un(t)?!1:t instanceof ht(t).ShadowRoot}function Yn(t){if(t&&Un(t)){let e=t.getRootNode();if(ri(e))return e;if(e instanceof Document)return e}return Ce(t)}function Kn(t){return t.matchMedia("(prefers-reduced-motion: reduce)").matches}function Ml(t){let e="input, textarea, select, canvas, [contenteditable]",n=t.cloneNode(!0),r=Array.from(t.querySelectorAll(e));return Array.from(n.querySelectorAll(e)).forEach((s,a)=>{let o=r[a];if(bl(s)&&bl(o)&&(s.type!=="file"&&(s.value=o.value),s.type==="radio"&&s.name&&(s.name=`Cloned__${s.name}`)),_l(s)&&_l(o)&&o.width>0&&o.height>0){let l=s.getContext("2d");l?.drawImage(o,0,0)}}),n}function bl(t){return"value"in t}function _l(t){return t.tagName==="CANVAS"}function Bs(t,{x:e,y:n}){let r=t.elementFromPoint(e,n);if(ru(r)){let{contentDocument:i}=r;if(i){let{left:s,top:a}=r.getBoundingClientRect();return Bs(i,{x:e-s,y:n-a})}}return r}function ru(t){return t?.tagName==="IFRAME"}var Gn=new WeakMap;function Il(t){return t.closest(`
|
|
2
|
+
input:not([disabled]),
|
|
3
|
+
select:not([disabled]),
|
|
4
|
+
textarea:not([disabled]),
|
|
5
|
+
button:not([disabled]),
|
|
6
|
+
a[href],
|
|
7
|
+
[contenteditable]:not([contenteditable="false"])
|
|
8
|
+
`)}var Hs=class{constructor(){this.entries=new Set,this.clear=()=>{for(let t of this.entries){let[e,{type:n,listener:r,options:i}]=t;e.removeEventListener(n,r,i)}this.entries.clear()}}bind(t,e){let n=Array.isArray(t)?t:[t],r=Array.isArray(e)?e:[e],i=[];for(let a of n)for(let o of r){let{type:l,listener:d,options:u}=o,c=[a,o];a.addEventListener(l,d,u),this.entries.add(c),i.push(c)}let s=this.entries;return function(){for(let o of i){let[l,{type:d,listener:u,options:c}]=o;l.removeEventListener(d,u,c),s.delete(o)}}}};function Pe(t){let e=t?.ownerDocument.defaultView;if(e&&e.self!==e.parent)return e.frameElement}function iu(t){let e=new Set,n=Pe(t);for(;n;)e.add(n),n=Pe(n);return e}function su(t,e){let n=setTimeout(t,e);return()=>clearTimeout(n)}function Dl(t,e){let n=()=>performance.now(),r,i;return function(...s){let a=this;i?(r?.(),r=su(()=>{t.apply(a,s),i=n()},e-(n()-i))):(t.apply(a,s),i=n())}}function ou(t,e){return t===e?!0:!t||!e?!1:t.top==e.top&&t.left==e.left&&t.right==e.right&&t.bottom==e.bottom}function au(t,e=t.getBoundingClientRect()){let{width:n,height:r}=an(t,e);return n>0&&r>0}var lu=Cl?ResizeObserver:class{observe(){}unobserve(){}disconnect(){}},Ur,cu=class extends lu{constructor(t){super(e=>{if(!I(this,Ur)){kt(this,Ur,!0);return}t(e,this)}),yt(this,Ur,!1)}};Ur=new WeakMap;var wl=Array.from({length:100},(t,e)=>e/100),Al=75,Ee,Gr,re,Oe,Rn,tt,qn,jn,Jr,Tl,Nl,Wl=class{constructor(t,e,n={debug:!1,skipInitial:!1}){this.element=t,this.callback=e,yt(this,Jr),this.disconnect=()=>{var s,a,o;kt(this,qn,!0),(s=I(this,re))==null||s.disconnect(),(a=I(this,Oe))==null||a.disconnect(),I(this,Rn).disconnect(),(o=I(this,tt))==null||o.remove()},yt(this,Ee,!0),yt(this,Gr),yt(this,re),yt(this,Oe),yt(this,Rn),yt(this,tt),yt(this,qn,!1),yt(this,jn,Dl(()=>{var s,a,o;let{element:l}=this;if((s=I(this,Oe))==null||s.disconnect(),I(this,qn)||!I(this,Ee)||!l.isConnected)return;let d=(a=l.ownerDocument)!=null?a:document,{innerHeight:u,innerWidth:c}=(o=d.defaultView)!=null?o:window,g=l.getBoundingClientRect(),p=an(l,g),{top:b,left:_,bottom:k,right:x}=p,h=-Math.floor(b),m=-Math.floor(_),v=-Math.floor(c-x),y=-Math.floor(u-k),O=`${h}px ${v}px ${y}px ${m}px`;this.boundingClientRect=g,kt(this,Oe,new IntersectionObserver(C=>{let[W]=C,{intersectionRect:P}=W;(W.intersectionRatio!==1?W.intersectionRatio:mt.intersectionRatio(P,an(l)))!==1&&I(this,jn).call(this)},{threshold:wl,rootMargin:O,root:d})),I(this,Oe).observe(l),Ol(this,Jr,Tl).call(this)},Al)),this.boundingClientRect=t.getBoundingClientRect(),kt(this,Ee,au(t,this.boundingClientRect));let r=!0;this.callback=s=>{r&&(r=!1,n.skipInitial)||e(s)};let i=t.ownerDocument;n?.debug&&(kt(this,tt,document.createElement("div")),I(this,tt).style.background="rgba(0,0,0,0.15)",I(this,tt).style.position="fixed",I(this,tt).style.pointerEvents="none",i.body.appendChild(I(this,tt))),kt(this,Rn,new IntersectionObserver(s=>{var a,o;let l=s[s.length-1],{boundingClientRect:d,isIntersecting:u}=l,{width:c,height:g}=d,p=I(this,Ee);kt(this,Ee,u),!(!c&&!g)&&(p&&!u?((a=I(this,Oe))==null||a.disconnect(),this.callback(null),(o=I(this,re))==null||o.disconnect(),kt(this,re,void 0),I(this,tt)&&(I(this,tt).style.visibility="hidden")):I(this,jn).call(this),u&&!I(this,re)&&(kt(this,re,new cu(I(this,jn))),I(this,re).observe(t)))},{threshold:wl,root:i})),I(this,Ee)&&!n.skipInitial&&this.callback(this.boundingClientRect),I(this,Rn).observe(t)}};Ee=new WeakMap;Gr=new WeakMap;re=new WeakMap;Oe=new WeakMap;Rn=new WeakMap;tt=new WeakMap;qn=new WeakMap;jn=new WeakMap;Jr=new WeakSet;Tl=function(){I(this,qn)||(Ol(this,Jr,Nl).call(this),!ou(this.boundingClientRect,I(this,Gr))&&(this.callback(this.boundingClientRect),kt(this,Gr,this.boundingClientRect)))};Nl=function(){if(I(this,tt)){let{top:t,left:e,width:n,height:r}=an(this.element);I(this,tt).style.overflow="hidden",I(this,tt).style.visibility="visible",I(this,tt).style.top=`${Math.floor(t)}px`,I(this,tt).style.left=`${Math.floor(e)}px`,I(this,tt).style.width=`${Math.floor(n)}px`,I(this,tt).style.height=`${Math.floor(r)}px`}};var qr=new WeakMap,Xr=new WeakMap;function du(t,e){let n=qr.get(t);return n||(n={disconnect:new Wl(t,i=>{let s=qr.get(t);s&&s.callbacks.forEach(a=>a(i))},{skipInitial:!0}).disconnect,callbacks:new Set}),n.callbacks.add(e),qr.set(t,n),()=>{n.callbacks.delete(e),n.callbacks.size===0&&(qr.delete(t),n.disconnect())}}function uu(t,e){let n=new Set;for(let r of t){let i=du(r,e);n.add(i)}return()=>n.forEach(r=>r())}function fu(t,e){var n;let r=t.ownerDocument;if(!Xr.has(r)){let a=new AbortController,o=new Set;document.addEventListener("scroll",l=>o.forEach(d=>d(l)),{capture:!0,passive:!0,signal:a.signal}),Xr.set(r,{disconnect:()=>a.abort(),listeners:o})}let{listeners:i,disconnect:s}=(n=Xr.get(r))!=null?n:{};return!i||!s?()=>{}:(i.add(e),()=>{i.delete(e),i.size===0&&(s(),Xr.delete(r))})}var Bn,Hn,Yr,zs,Ll=class{constructor(t,e,n){this.callback=e,yt(this,Bn),yt(this,Hn,!1),yt(this,Yr),yt(this,zs,Dl(a=>{if(!I(this,Hn)&&a.target&&"contains"in a.target&&typeof a.target.contains=="function"){for(let o of I(this,Yr))if(a.target.contains(o)){this.callback(I(this,Bn).boundingClientRect);break}}},Al));let r=iu(t),i=uu(r,e),s=fu(t,I(this,zs));kt(this,Yr,r),kt(this,Bn,new Wl(t,e,n)),this.disconnect=()=>{I(this,Hn)||(kt(this,Hn,!0),i(),s(),I(this,Bn).disconnect())}}};Bn=new WeakMap;Hn=new WeakMap;Yr=new WeakMap;zs=new WeakMap;function ii(t){return"showPopover"in t&&"hidePopover"in t&&typeof t.showPopover=="function"&&typeof t.hidePopover=="function"}function Ie(t){try{ii(t)&&t.isConnected&&t.hasAttribute("popover")&&!t.matches(":popover-open")&&t.showPopover()}catch{}}function xl(t){return!Cl||!t?!1:t===Ce(t).scrollingElement}function $l(t){var e,n;let r=ht(t),i=xl(t)?tu(t):ti(t),s=r.visualViewport,a=xl(t)?{height:(e=s?.height)!=null?e:r.innerHeight,width:(n=s?.width)!=null?n:r.innerWidth}:{height:t.clientHeight,width:t.clientWidth},o={current:{x:t.scrollLeft,y:t.scrollTop},max:{x:t.scrollWidth-a.width,y:t.scrollHeight-a.height}},l=o.current.y<=0,d=o.current.x<=0,u=o.current.y>=o.max.y,c=o.current.x>=o.max.x;return{rect:i,position:o,isTop:l,isLeft:d,isBottom:u,isRight:c}}function zl(t,e){let{isTop:n,isBottom:r,isLeft:i,isRight:s,position:a}=$l(t),{x:o,y:l}=e??{x:0,y:0},d=!n&&a.current.y+l>0,u=!r&&a.current.y+l<a.max.y,c=!i&&a.current.x+o>0,g=!s&&a.current.x+o<a.max.x;return{top:d,bottom:u,left:c,right:g,x:c||g,y:d||u}}var qs=class{constructor(t){this.scheduler=t,this.pending=!1,this.tasks=new Set,this.resolvers=new Set,this.flush=()=>{let{tasks:e,resolvers:n}=this;this.pending=!1,this.tasks=new Set,this.resolvers=new Set;for(let r of e)r();for(let r of n)r()}}schedule(t){return this.tasks.add(t),this.pending||(this.pending=!0,this.scheduler(this.flush)),new Promise(e=>this.resolvers.add(e))}},Jn=new qs(t=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(t):t()}),hu=new qs(t=>setTimeout(t,50)),Zr=new Map,pu=Zr.clear.bind(Zr);function It(t,e=!1){if(!e)return kl(t);let n=Zr.get(t);return n||(n=kl(t),Zr.set(t,n),hu.schedule(pu),n)}function kl(t){return ht(t).getComputedStyle(t)}function gu(t,e=It(t,!0)){return e.position==="fixed"||e.position==="sticky"}function vu(t,e=It(t,!0)){let n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some(i=>{let s=e[i];return typeof s=="string"?n.test(s):!1})}var mu={excludeElement:!0,escapeShadowDOM:!0};function si(t,e=mu){let{limit:n,excludeElement:r,escapeShadowDOM:i}=e,s=new Set;function a(o){if(n!=null&&s.size>=n||!o)return s;if(ei(o)&&o.scrollingElement!=null&&!s.has(o.scrollingElement))return s.add(o.scrollingElement),s;if(i&&ri(o))return a(o.host);if(!Gt(o))return Pl(o)?a(o.parentElement):s;if(s.has(o))return s;let l=It(o,!0);if(r&&o===t||vu(o,l)&&s.add(o),gu(o,l)){let{scrollingElement:d}=o.ownerDocument;return d&&s.add(d),s}return a(o.parentNode)}return t?a(t):s}function De(t,e=window.frameElement){let n={x:0,y:0,scaleX:1,scaleY:1};if(!t)return n;let r=Pe(t);for(;r;){if(r===e)return n;let i=ti(r),{x:s,y:a}=yu(r,i);n.x=n.x+i.left,n.y=n.y+i.top,n.scaleX=n.scaleX*s,n.scaleY=n.scaleY*a,r=Pe(r)}return n}function yu(t,e=ti(t)){let n=Math.round(e.width),r=Math.round(e.height);if(Gt(t))return{x:n/t.offsetWidth,y:r/t.offsetHeight};let i=It(t,!0);return{x:(parseFloat(i.width)||n)/n,y:(parseFloat(i.height)||r)/r}}function bu(t){if(!t||t==="none")return null;let e=t.split(" "),n=parseFloat(e[0]),r=parseFloat(e[1]);return isNaN(n)&&isNaN(r)?null:{x:isNaN(n)?r:n,y:isNaN(r)?n:r}}function ln(t){if(!t||t==="none")return null;let[e,n,r="0"]=t.split(" "),i={x:parseFloat(e),y:parseFloat(n),z:parseInt(r,10)};return isNaN(i.x)&&isNaN(i.y)?null:{x:isNaN(i.x)?0:i.x,y:isNaN(i.y)?0:i.y,z:isNaN(i.z)?0:i.z}}function Zn(t){var e,n,r,i,s,a,o,l,d;let{scale:u,transform:c,translate:g}=t,p=bu(u),b=ln(g),_=_u(c);if(!_&&!p&&!b)return null;let k={x:(e=p?.x)!=null?e:1,y:(n=p?.y)!=null?n:1},x={x:(r=b?.x)!=null?r:0,y:(i=b?.y)!=null?i:0},h={x:(s=_?.x)!=null?s:0,y:(a=_?.y)!=null?a:0,scaleX:(o=_?.scaleX)!=null?o:1,scaleY:(l=_?.scaleY)!=null?l:1};return{x:x.x+h.x,y:x.y+h.y,z:(d=b?.z)!=null?d:0,scaleX:k.x*h.scaleX,scaleY:k.y*h.scaleY}}function _u(t){if(t.startsWith("matrix3d(")){let e=t.slice(9,-1).split(/, /);return{x:+e[12],y:+e[13],scaleX:+e[0],scaleY:+e[5]}}else if(t.startsWith("matrix(")){let e=t.slice(7,-1).split(/, /);return{x:+e[4],y:+e[5],scaleX:+e[0],scaleY:+e[3]}}return null}var St=(t=>(t[t.Idle=0]="Idle",t[t.Forward=1]="Forward",t[t.Reverse=-1]="Reverse",t))(St||{}),wu={x:.2,y:.2},xu={x:10,y:10};function Fl(t,e,n,r=25,i=wu,s=xu){let{x:a,y:o}=e,{rect:l,isTop:d,isBottom:u,isLeft:c,isRight:g}=$l(t),p=De(t),b=It(t,!0),_=Zn(b),k=_!==null?_?.scaleX<0:!1,x=_!==null?_?.scaleY<0:!1,h=new mt(l.left*p.scaleX+p.x,l.top*p.scaleY+p.y,l.width*p.scaleX,l.height*p.scaleY),m={x:0,y:0},v={x:0,y:0},y={height:h.height*i.y,width:h.width*i.x};return y.height>0&&(!d||x&&!u)&&o<=h.top+y.height&&n?.y!==1&&a>=h.left-s.x&&a<=h.right+s.x?(m.y=x?1:-1,v.y=r*Math.abs((h.top+y.height-o)/y.height)):y.height>0&&(!u||x&&!d)&&o>=h.bottom-y.height&&n?.y!==-1&&a>=h.left-s.x&&a<=h.right+s.x&&(m.y=x?-1:1,v.y=r*Math.abs((h.bottom-y.height-o)/y.height)),y.width>0&&(!g||k&&!c)&&a>=h.right-y.width&&n?.x!==-1&&o>=h.top-s.y&&o<=h.bottom+s.y?(m.x=k?-1:1,v.x=r*Math.abs((h.right-y.width-a)/y.width)):y.width>0&&(!c||k&&!g)&&a<=h.left+y.width&&n?.x!==1&&o>=h.top-s.y&&o<=h.bottom+s.y&&(m.x=k?1:-1,v.x=r*Math.abs((h.left+y.width-a)/y.width)),{direction:m,speed:v}}function oi(t,{block:e="nearest",inline:n="nearest"}={}){if(!Gt(t))return;let r=si(t),i=[];for(let s of r){if(!Gt(s))continue;let{top:a,left:o}=ku(t,s),l=a,d=o;for(let u of i)l-=u.scrollTop,d-=u.scrollLeft;if(e!=="none"){let u=l<s.scrollTop,c=l+t.offsetHeight>s.scrollTop+s.clientHeight;u!==c&&(e==="center"?s.scrollTop=l-s.clientHeight/2+t.offsetHeight/2:u?s.scrollTop=l:s.scrollTop=l+t.offsetHeight-s.clientHeight)}if(n!=="none"){let u=d<s.scrollLeft,c=d+t.offsetWidth>s.scrollLeft+s.clientWidth;u!==c&&(n==="center"?s.scrollLeft=d-s.clientWidth/2+t.offsetWidth/2:u?s.scrollLeft=d:s.scrollLeft=d+t.offsetWidth-s.clientWidth)}i.push(s)}}function Sl(t){let e=0,n=0,r=t;for(;r;){e+=r.offsetTop,n+=r.offsetLeft;let i=r.offsetParent;if(!Gt(i))break;e+=i.clientTop,n+=i.clientLeft,r=i}return{top:e,left:n}}function ku(t,e){let n=Sl(t),r=Sl(e);return{top:n.top-r.top-e.clientTop,left:n.left-r.left-e.clientLeft}}function Su(t,e,n){let{scaleX:r,scaleY:i,x:s,y:a}=e,o=t.left+s+(1-r)*parseFloat(n),l=t.top+a+(1-i)*parseFloat(n.slice(n.indexOf(" ")+1)),d=r?t.width*r:t.width,u=i?t.height*i:t.height;return{width:d,height:u,top:l,right:o+d,bottom:l+u,left:o}}function Eu(t,e,n){let{scaleX:r,scaleY:i,x:s,y:a}=e,o=t.left-s-(1-r)*parseFloat(n),l=t.top-a-(1-i)*parseFloat(n.slice(n.indexOf(" ")+1)),d=r?t.width/r:t.width,u=i?t.height/i:t.height;return{width:d,height:u,top:l,right:o+d,bottom:l+u,left:o}}function ai({element:t,keyframes:e,options:n}){return t.animate(e,n).finished}function Xs(t,e=It(t).translate,n=!0){if(n){let r=Vs(t,i=>"translate"in i);if(r){let{translate:i=""}=r[0];if(typeof i=="string"){let s=ln(i);if(s)return s}}}if(e){let r=ln(e);if(r)return r}return{x:0,y:0,z:0}}var Ou=new qs(t=>setTimeout(t,0)),Xn=new Map,Pu=Xn.clear.bind(Xn);function Cu(t){let e=t.ownerDocument,n=Xn.get(e);if(n)return n;n=e.getAnimations(),Xn.set(e,n),Ou.schedule(Pu);let r=n.filter(i=>Qr(i.effect)&&i.effect.target===t);return Xn.set(t,r),n}function Mu(t,e){let n=Cu(t).filter(r=>{var i,s;if(Qr(r.effect)){let{target:a}=r.effect;if((s=a&&((i=e.isValidTarget)==null?void 0:i.call(e,a)))!=null?s:!0)return r.effect.getKeyframes().some(l=>{for(let d of e.properties)if(l[d])return!0})}}).map(r=>{let{effect:i,currentTime:s}=r,a=i?.getComputedTiming().duration;if(!(r.pending||r.playState==="finished")&&typeof a=="number"&&typeof s=="number"&&s<a)return r.currentTime=a,()=>{r.currentTime=s}});if(n.length>0)return()=>n.forEach(r=>r?.())}var Dt=class extends mt{constructor(t,e={}){var n,r,i,s;let{frameTransform:a=De(t),ignoreTransforms:o,getBoundingClientRect:l=ti}=e,d=Mu(t,{properties:["transform","translate","scale","width","height"],isValidTarget:y=>(y!==t||ni())&&y.contains(t)}),u=l(t),{top:c,left:g,width:p,height:b}=u,_,k=It(t),x=Zn(k),h={x:(n=x?.scaleX)!=null?n:1,y:(r=x?.scaleY)!=null?r:1},m=Iu(t,k);d?.(),x&&(_=Eu(u,x,k.transformOrigin),(o||m)&&(c=_.top,g=_.left,p=_.width,b=_.height));let v={width:(i=_?.width)!=null?i:p,height:(s=_?.height)!=null?s:b};if(m&&!o&&_){let y=Su(_,m,k.transformOrigin);c=y.top,g=y.left,p=y.width,b=y.height,h.x=m.scaleX,h.y=m.scaleY}a&&(o||(g*=a.scaleX,p*=a.scaleX,c*=a.scaleY,b*=a.scaleY),g+=a.x,c+=a.y),super(g,c,p,b),this.scale=h,this.intrinsicWidth=v.width,this.intrinsicHeight=v.height}};function Iu(t,e){let n=t.getAnimations();if(!n.length)return null;let r,i,s,a=!1;for(let o of n){if(o.playState!=="running")continue;let l=Qr(o.effect)?o.effect.getKeyframes():[],d=l[l.length-1];if(!d)continue;let{transform:u,translate:c,scale:g}=d;typeof u=="string"&&u&&(r=u,a=!0),typeof c=="string"&&c&&(i=c,a=!0),typeof g=="string"&&g&&(s=g,a=!0)}return a?Zn({transform:r??e.transform,translate:i??e.translate,scale:s??e.scale}):null}function on(t){return"style"in t&&typeof t.style=="object"&&t.style!==null&&"setProperty"in t.style&&"removeProperty"in t.style&&typeof t.style.setProperty=="function"&&typeof t.style.removeProperty=="function"}var Vl=class{constructor(t){this.element=t,this.initial=new Map}set(t,e=""){let{element:n}=this;if(on(n))for(let[r,i]of Object.entries(t)){let s=`${e}${r}`;this.initial.has(s)||this.initial.set(s,n.style.getPropertyValue(s)),n.style.setProperty(s,typeof i=="string"?i:`${i}px`)}}remove(t,e=""){let{element:n}=this;if(on(n))for(let r of t){let i=`${e}${r}`;n.style.removeProperty(i)}}reset(){let{element:t}=this;if(on(t)){for(let[e,n]of this.initial)t.style.setProperty(e,n);t.getAttribute("style")===""&&t.removeAttribute("style")}}};function ie(t){return t?t instanceof ht(t).Element||Un(t)&&t.nodeType===Node.ELEMENT_NODE:!1}function Ae(t){if(!t)return!1;let{KeyboardEvent:e}=ht(t.target);return t instanceof e}function Rl(t){if(!t)return!1;let{PointerEvent:e}=ht(t.target);return t instanceof e}function jl(t){if(!ie(t))return!1;let{tagName:e}=t;return e==="INPUT"||e==="TEXTAREA"||Du(t)}function Du(t){return t.hasAttribute("contenteditable")&&t.getAttribute("contenteditable")!=="false"}var $s={};function li(t){let e=$s[t]==null?0:$s[t]+1;return $s[t]=e,`${t}-${e}`}var Au=({dragOperation:t,droppable:e})=>{let n=t.position.current;if(!n)return null;let{id:r}=e;if(!e.shape)return null;if(e.shape.containsPoint(n)){let i=at.distance(e.shape.center,n);return{id:r,value:1/i,type:Se.PointerIntersection,priority:ke.High}}return null},Tu=({dragOperation:t,droppable:e})=>{let{shape:n}=t;if(!e.shape||!n?.current)return null;let r=n.current.intersectionArea(e.shape);if(r){let{position:i}=t,s=at.distance(e.shape.center,i.current),o=r/(n.current.area+e.shape.area-r)/s;return{id:e.id,value:o,type:Se.ShapeIntersection,priority:ke.Normal}}return null},ci=t=>{var e;return(e=Au(t))!=null?e:Tu(t)},Bl=t=>{let{dragOperation:e,droppable:n}=t,{shape:r,position:i}=e;if(!n.shape)return null;let s=r?mt.from(r.current.boundingRectangle).corners:void 0,o=mt.from(n.shape.boundingRectangle).corners.reduce((l,d,u)=>{var c;return l+at.distance(at.from(d),(c=s?.[u])!=null?c:i.current)},0)/4;return{id:n.id,value:1/o,type:Se.Collision,priority:ke.Normal}};var Nu=Object.create,ao=Object.defineProperty,Wu=Object.defineProperties,Lu=Object.getOwnPropertyDescriptor,$u=Object.getOwnPropertyDescriptors,fi=Object.getOwnPropertySymbols,Zl=Object.prototype.hasOwnProperty,Ql=Object.prototype.propertyIsEnumerable,tc=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),vn=t=>{throw TypeError(t)},Gs=(t,e,n)=>e in t?ao(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sr=(t,e)=>{for(var n in e||(e={}))Zl.call(e,n)&&Gs(t,n,e[n]);if(fi)for(var n of fi(e))Ql.call(e,n)&&Gs(t,n,e[n]);return t},lo=(t,e)=>Wu(t,$u(e)),Hl=(t,e)=>ao(t,"name",{value:e,configurable:!0}),ec=(t,e)=>{var n={};for(var r in t)Zl.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&fi)for(var r of fi(t))e.indexOf(r)<0&&Ql.call(t,r)&&(n[r]=t[r]);return n},mn=t=>{var e;return[,,,Nu((e=t?.[tc("metadata")])!=null?e:null)]},nc=["class","method","getter","setter","accessor","field","value","get","set"],tr=t=>t!==void 0&&typeof t!="function"?vn("Function expected"):t,zu=(t,e,n,r,i)=>({kind:nc[t],name:e,metadata:r,addInitializer:s=>n._?vn("Already initialized"):i.push(tr(s||null))}),Le=(t,e)=>Gs(e,tc("metadata"),t[3]),G=(t,e,n,r)=>{for(var i=0,s=t[e>>1],a=s&&s.length;i<a;i++)e&1?s[i].call(n):r=s[i].call(n,r);return r},At=(t,e,n,r,i,s)=>{var a,o,l,d,u,c=e&7,g=!!(e&8),p=!!(e&16),b=c>3?t.length+1:c?g?1:2:0,_=nc[c+5],k=c>3&&(t[b-1]=[]),x=t[b]||(t[b]=[]),h=c&&(!p&&!g&&(i=i.prototype),c<5&&(c>3||!p)&&Lu(c<4?i:{get[n](){return V(this,s)},set[n](v){return pt(this,s,v)}},n));c?p&&c<4&&Hl(s,(c>2?"set ":c>1?"get ":"")+n):Hl(i,n);for(var m=r.length-1;m>=0;m--)d=zu(c,n,l={},t[3],x),c&&(d.static=g,d.private=p,u=d.access={has:p?v=>Fu(i,v):v=>n in v},c^3&&(u.get=p?v=>(c^1?V:We)(v,i,c^4?s:h.get):v=>v[n]),c>2&&(u.set=p?(v,y)=>pt(v,i,y,c^4?s:h.set):(v,y)=>v[n]=y)),o=(0,r[m])(c?c<4?p?s:h[_]:c>4?void 0:{get:h.get,set:h.set}:i,d),l._=1,c^4||o===void 0?tr(o)&&(c>4?k.unshift(o):c?p?s=o:h[_]=o:i=o):typeof o!="object"||o===null?vn("Object expected"):(tr(a=o.get)&&(h.get=a),tr(a=o.set)&&(h.set=a),tr(a=o.init)&&k.unshift(a));return c||Le(t,i),h&&ao(i,n,h),p?c^4?s:h:i},co=(t,e,n)=>e.has(t)||vn("Cannot "+n),Fu=(t,e)=>Object(e)!==e?vn('Cannot use the "in" operator on this value'):t.has(e),V=(t,e,n)=>(co(t,e,"read from private field"),n?n.call(t):e.get(t)),U=(t,e,n)=>e.has(t)?vn("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),pt=(t,e,n,r)=>(co(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),We=(t,e,n)=>(co(t,e,"access private method"),n),ql={role:"button",roleDescription:"draggable"},Vu="dnd-kit-description",Ru="dnd-kit-announcement",ju={draggable:"To pick up a draggable item, press the space bar. While dragging, use the arrow keys to move the item in a given direction. Press space again to drop the item in its new position, or press escape to cancel."},Bu={dragstart({operation:{source:t}}){if(t)return`Picked up draggable item ${t.id}.`},dragover({operation:{source:t,target:e}}){if(!(!t||t.id===e?.id))return e?`Draggable item ${t.id} was moved over droppable target ${e.id}.`:`Draggable item ${t.id} is no longer over a droppable target.`},dragend({operation:{source:t,target:e},canceled:n}){if(t)return n?`Dragging was cancelled. Draggable item ${t.id} was dropped.`:e?`Draggable item ${t.id} was dropped over droppable target ${e.id}`:`Draggable item ${t.id} was dropped.`}};function Hu(t){let e=t.tagName.toLowerCase();return["input","select","textarea","a","button"].includes(e)}function qu(t,e){let n=document.createElement("div");return n.id=t,n.style.setProperty("display","none"),n.textContent=e,n}function Xu(t){let e=document.createElement("div");return e.id=t,e.setAttribute("role","status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true"),e.style.setProperty("position","fixed"),e.style.setProperty("width","1px"),e.style.setProperty("height","1px"),e.style.setProperty("margin","-1px"),e.style.setProperty("border","0"),e.style.setProperty("padding","0"),e.style.setProperty("overflow","hidden"),e.style.setProperty("clip","rect(0 0 0 0)"),e.style.setProperty("clip-path","inset(100%)"),e.style.setProperty("white-space","nowrap"),e}var Uu=["dragover","dragmove"],Yu=class extends Z{constructor(t,e){super(t);let{id:n,idPrefix:{description:r=Vu,announcement:i=Ru}={},announcements:s=Bu,screenReaderInstructions:a=ju,debounce:o=500}=e??{},l=n?`${r}-${n}`:li(r),d=n?`${i}-${n}`:li(i),u,c,g,p,b=(y=p)=>{!g||!y||g?.nodeValue!==y&&(g.nodeValue=y)},_=()=>Jn.schedule(b),k=Ku(_,o),x=Object.entries(s).map(([y,O])=>this.manager.monitor.addEventListener(y,(C,W)=>{let P=g;if(!P)return;let L=O?.(C,W);L&&P.nodeValue!==L&&(p=L,Uu.includes(y)?k():(_(),k.cancel()))})),h=()=>{let y=[];u?.isConnected||(u=qu(l,a.draggable),y.push(u)),c?.isConnected||(c=Xu(d),g=document.createTextNode(""),c.appendChild(g),y.push(c)),y.length>0&&document.body.append(...y)},m=new Set;function v(){for(let y of m)y()}this.registerEffect(()=>{var y;m.clear();for(let O of this.manager.registry.draggables.value){let C=(y=O.handle)!=null?y:O.element;if(C){(!u||!c)&&m.add(h),(!Hu(C)||ni())&&!C.hasAttribute("tabindex")&&m.add(()=>C.setAttribute("tabindex","0")),!C.hasAttribute("role")&&C.tagName.toLowerCase()!=="button"&&m.add(()=>C.setAttribute("role",ql.role)),C.hasAttribute("aria-roledescription")||m.add(()=>C.setAttribute("aria-roledescription",ql.roleDescription)),C.hasAttribute("aria-describedby")||m.add(()=>C.setAttribute("aria-describedby",l));for(let P of["aria-pressed","aria-grabbed"]){let L=String(O.isDragging);C.getAttribute(P)!==L&&m.add(()=>C.setAttribute(P,L))}let W=String(O.disabled);C.getAttribute("aria-disabled")!==W&&m.add(()=>C.setAttribute("aria-disabled",W))}}m.size>0&&Jn.schedule(v)}),this.destroy=()=>{super.destroy(),u?.remove(),c?.remove(),x.forEach(y=>y())}}};function Ku(t,e){let n,r=()=>{clearTimeout(n),n=setTimeout(t,e)};return r.cancel=()=>clearTimeout(n),r}var hi=new Map,rc,ic,sc,oc,Js,rr,Jt,uo,pn,ac,lc,cc,dc,ce=class extends(Js=sn,oc=[A],sc=[H],ic=[H],rc=[H],Js){constructor(e,n){super(e,n),G(Jt,5,this),U(this,pn),U(this,rr,new Set),U(this,uo,G(Jt,8,this,new Set)),G(Jt,11,this),this.registerEffect(We(this,pn,ac))}register(e){return V(this,rr).add(e),()=>{V(this,rr).delete(e)}}addRoot(e){return D(()=>{let n=new Set(this.additionalRoots);n.add(e),this.additionalRoots=n}),()=>{D(()=>{let n=new Set(this.additionalRoots);n.delete(e),this.additionalRoots=n})}}get sourceRoot(){var e;let{source:n}=this.manager.dragOperation;return Yn((e=n?.element)!=null?e:null)}get targetRoot(){var e;let{target:n}=this.manager.dragOperation;return Yn((e=n?.element)!=null?e:null)}get roots(){let{status:e}=this.manager.dragOperation;if(e.initializing||e.initialized){let n=[this.sourceRoot,this.targetRoot].filter(r=>r!=null);return new Set([...n,...this.additionalRoots])}return new Set}};Jt=mn(Js);rr=new WeakMap;uo=new WeakMap;pn=new WeakSet;ac=function(){let{roots:t}=this,e=[];for(let n of t)for(let r of V(this,rr))e.push(We(this,pn,lc).call(this,n,r));return()=>{for(let n of e)n()}};lc=function(t,e){let n=hi.get(t);n||(n=new Map,hi.set(t,n));let r=n.get(e);if(!r){let s=ei(t)?We(this,pn,cc).call(this,t,n,e):We(this,pn,dc).call(this,t,n,e);if(!s)return()=>{};r=s,n.set(e,r)}r.refCount++;let i=!1;return()=>{i||(i=!0,r.refCount--,r.refCount===0&&r.cleanup())}};cc=function(t,e,n){var r;let i=t.createElement("style"),{nonce:s}=(r=this.options)!=null?r:{};s&&i.setAttribute("nonce",s),i.textContent=n,t.head.prepend(i);let a=new MutationObserver(o=>{for(let l of o)for(let d of Array.from(l.removedNodes))if(d===i){t.head.prepend(i);return}});return a.observe(t.head,{childList:!0}),{refCount:0,cleanup:()=>{a.disconnect(),i.remove(),e.delete(n),e.size===0&&hi.delete(t)}}};dc=function(t,e,n){"adoptedStyleSheets"in t&&Array.isArray(t.adoptedStyleSheets);let r=t.ownerDocument.defaultView,{CSSStyleSheet:i}=r??{};if(!i)return null;let s=new i;return s.replaceSync(n),t.adoptedStyleSheets.push(s),{refCount:0,cleanup:()=>{var a;if(ri(t)&&((a=t.host)!=null&&a.isConnected)){let o=t.adoptedStyleSheets.indexOf(s);o!==-1&&t.adoptedStyleSheets.splice(o,1)}e.delete(n),e.size===0&&hi.delete(t)}}};At(Jt,4,"additionalRoots",oc,ce,uo);At(Jt,2,"sourceRoot",sc,ce);At(Jt,2,"targetRoot",ic,ce);At(Jt,2,"roots",rc,ce);Le(Jt,ce);ce.configure=rn(ce);var mi=ce,Gu=class extends Z{constructor(t,e){super(t,e),this.manager=t;let{cursor:n="grabbing"}=e??{},r=t.registry.plugins.get(mi),i=r?.register(`* { cursor: ${n} !important; }`);if(i){let s=this.destroy.bind(this);this.destroy=()=>{i(),s()}}}},cr="data-dnd-",Zs=`${cr}dropping`,et="--dnd-",jt=`${cr}dragging`,pi=`${cr}placeholder`,Ju=[jt,pi,"popover","aria-pressed","aria-grabbing"],Zu=["view-transition-name"],Qu=`
|
|
9
|
+
:is(:root,:host) [${jt}] {
|
|
10
|
+
position: fixed !important;
|
|
11
|
+
pointer-events: none !important;
|
|
12
|
+
touch-action: none;
|
|
13
|
+
z-index: calc(infinity);
|
|
14
|
+
will-change: translate;
|
|
15
|
+
top: var(${et}top, 0px) !important;
|
|
16
|
+
left: var(${et}left, 0px) !important;
|
|
17
|
+
right: unset !important;
|
|
18
|
+
bottom: unset !important;
|
|
19
|
+
width: var(${et}width, auto);
|
|
20
|
+
max-width: var(${et}width, auto);
|
|
21
|
+
height: var(${et}height, auto);
|
|
22
|
+
max-height: var(${et}height, auto);
|
|
23
|
+
transform: var(${et}transform, none) !important;
|
|
24
|
+
transition: var(${et}transition) !important;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
:is(:root,:host) [${pi}] {
|
|
28
|
+
transition: none;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
:is(:root,:host) [${pi}='hidden'] {
|
|
32
|
+
visibility: hidden;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
[${jt}] * {
|
|
36
|
+
pointer-events: none !important;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
[${jt}]:not([${Zs}]) {
|
|
40
|
+
translate: var(${et}translate) !important;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
[${jt}][style*='${et}scale'] {
|
|
44
|
+
scale: var(${et}scale) !important;
|
|
45
|
+
transform-origin: var(${et}transform-origin) !important;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@layer dnd-kit {
|
|
49
|
+
:where([${jt}][popover]) {
|
|
50
|
+
overflow: visible;
|
|
51
|
+
background: unset;
|
|
52
|
+
border: unset;
|
|
53
|
+
margin: unset;
|
|
54
|
+
padding: unset;
|
|
55
|
+
color: inherit;
|
|
56
|
+
|
|
57
|
+
&:is(input, button) {
|
|
58
|
+
border: revert;
|
|
59
|
+
background: revert;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
[${jt}]::backdrop, [${cr}overlay]:not([${jt}]) {
|
|
64
|
+
display: none;
|
|
65
|
+
visibility: hidden;
|
|
66
|
+
}
|
|
67
|
+
`.replace(/\n+/g," ").replace(/\s+/g," ").trim();function tf(t,e="hidden"){return D(()=>{let{element:n,manager:r}=t;if(!n||!r)return;let i=ef(n,r.registry.droppables),s=[],a=Ml(n),{remove:o}=a;return nf(i,a,s),rf(a,e),a.remove=()=>{s.forEach(l=>l()),o.call(a)},a})}function ef(t,e){let n=new Map;for(let r of e)if(r.element&&(t===r.element||t.contains(r.element))){let i=`${cr}${li("dom-id")}`;r.element.setAttribute(i,""),n.set(r,i)}return n}function nf(t,e,n){for(let[r,i]of t){if(!r.element)continue;let s=`[${i}]`,a=e.matches(s)?e:e.querySelector(s);if(r.element.removeAttribute(i),!a)continue;let o=r.element;r.proxy=a,a.removeAttribute(i),Gn.set(o,a),n.push(()=>{Gn.delete(o),r.proxy=void 0})}}function rf(t,e="hidden"){t.setAttribute("inert","true"),t.setAttribute("tab-index","-1"),t.setAttribute("aria-hidden","true"),t.setAttribute(pi,e)}function uc(t,e){return t===e?!0:Pe(t)===Pe(e)}function Xl(t){let{target:e}=t;"newState"in t&&t.newState==="closed"&&ie(e)&&e.hasAttribute("popover")&&requestAnimationFrame(()=>Ie(e))}function Qs(t){return t.tagName==="TR"}function sf(t,e,n){let r=new MutationObserver(i=>{let s=!1;for(let a of i){if(a.target!==t){s=!0;continue}if(a.type!=="attributes")continue;let o=a.attributeName;if(o.startsWith("aria-")||Ju.includes(o))continue;let l=t.getAttribute(o);if(o==="style"){if(on(t)&&on(e)){let d=t.style;for(let u of Array.from(e.style))d.getPropertyValue(u)===""&&e.style.removeProperty(u);for(let u of Array.from(d)){if(Zu.includes(u)||u.startsWith(et))continue;let c=d.getPropertyValue(u);e.style.setProperty(u,c)}}}else l!==null?e.setAttribute(o,l):e.removeAttribute(o)}s&&n&&e.replaceChildren(...t.cloneNode(!0).childNodes)});return r.observe(t,{attributes:!0,subtree:!0,childList:!0}),r}function of(t,e,n){let r=new MutationObserver(i=>{for(let s of i)if(s.addedNodes.length!==0)for(let a of Array.from(s.addedNodes)){if(a.contains(t)&&t.nextElementSibling!==e){t.insertAdjacentElement("afterend",e),Ie(n);return}if(a.contains(e)&&e.previousElementSibling!==t){e.insertAdjacentElement("beforebegin",t),Ie(n);return}}t.isConnected&&e.isConnected&&t.nextElementSibling!==e&&(t.insertAdjacentElement("afterend",e),Ie(n))});return r.observe(t.ownerDocument.body,{childList:!0,subtree:!0}),r}function af(t){return new ResizeObserver(()=>{var e,n,r;let i=new Dt(t.placeholder,{frameTransform:t.frameTransform,ignoreTransforms:!0}),s=(e=t.transformOrigin)!=null?e:{x:1,y:1},a=(t.width-i.width)*s.x+t.delta.x,o=(t.height-i.height)*s.y+t.delta.y,l=js();if(t.styles.set({width:i.width-t.widthOffset,height:i.height-t.heightOffset,top:t.top+o+l.y,left:t.left+a+l.x},et),(n=t.getElementMutationObserver())==null||n.takeRecords(),Qs(t.element)&&Qs(t.placeholder)){let _=Array.from(t.element.cells),k=Array.from(t.placeholder.cells);t.getSavedCellWidths()||t.setSavedCellWidths(_.map(x=>x.style.width));for(let[x,h]of _.entries()){let m=k[x];h.style.width=`${m.getBoundingClientRect().width}px`}}let d=(r=t.getTranslate())!=null?r:{x:0,y:0},u=t.left+a+l.x+d.x,c=t.top+o+l.y+d.y,g=i.width-t.widthOffset,p=i.height-t.heightOffset,b=t.frameTransform;t.dragOperation.shape=new mt(u*b.scaleX+b.x,c*b.scaleY+b.y,g*b.scaleX,p*b.scaleY)})}var lf=250,cf="ease";function df(t){var e,n,r,i;let{animation:s}=t;if(typeof s=="function"){let h=s({source:t.source,element:t.element,feedbackElement:t.feedbackElement,placeholder:t.placeholder,translate:t.translate,moved:t.moved});Promise.resolve(h).then(()=>{t.cleanup(),requestAnimationFrame(t.restoreFocus)});return}let{duration:a=lf,easing:o=cf}=s??{};Ie(t.feedbackElement);let[,l]=(e=Vs(t.feedbackElement,h=>"translate"in h))!=null?e:[];l?.pause();let d=(n=t.placeholder)!=null?n:t.element,u={frameTransform:uc(t.feedbackElement,d)?null:void 0},c=new Dt(t.feedbackElement,u),g=(r=ln(It(t.feedbackElement).translate))!=null?r:t.translate,p=new Dt(d,u),b=mt.delta(c,p,t.alignment),_={x:g.x-b.x,y:g.y-b.y},k=Math.round(c.intrinsicHeight)!==Math.round(p.intrinsicHeight)?{minHeight:[`${c.intrinsicHeight}px`,`${p.intrinsicHeight}px`],maxHeight:[`${c.intrinsicHeight}px`,`${p.intrinsicHeight}px`]}:{},x=Math.round(c.intrinsicWidth)!==Math.round(p.intrinsicWidth)?{minWidth:[`${c.intrinsicWidth}px`,`${p.intrinsicWidth}px`],maxWidth:[`${c.intrinsicWidth}px`,`${p.intrinsicWidth}px`]}:{};t.styles.set({transition:t.transition},et),t.feedbackElement.setAttribute(Zs,""),(i=t.getElementMutationObserver())==null||i.takeRecords(),ai({element:t.feedbackElement,keyframes:lo(sr(sr({},k),x),{translate:[`${g.x}px ${g.y}px 0`,`${_.x}px ${_.y}px 0`]}),options:{duration:Kn(ht(t.feedbackElement))?0:t.moved||t.feedbackElement!==t.element?a:0,easing:o}}).then(()=>{t.feedbackElement.removeAttribute(Zs),l?.finish(),t.cleanup(),requestAnimationFrame(t.restoreFocus)})}var fc,to,or,fo,ui,hc,pc,gn=class extends(to=Z,fc=[A],to){constructor(e,n){super(e,n),U(this,ui),U(this,fo,G(or,8,this)),G(or,11,this),this.state={initial:{},current:{}};let r=e.registry.plugins.get(mi),i=r?.register(Qu);if(i){let s=this.destroy.bind(this);this.destroy=()=>{i(),s()}}this.registerEffect(We(this,ui,hc).bind(this,r)),this.registerEffect(We(this,ui,pc))}};or=mn(to);fo=new WeakMap;ui=new WeakSet;hc=function(t){let{overlay:e}=this;if(!e||!t)return;let n=Yn(e);if(n)return t.addRoot(n)};pc=function(){var t,e,n,r,i,s,a;let{state:o,manager:l,options:d}=this,{dragOperation:u}=l,{position:c,source:g,status:p}=u;if(p.idle){o.current={},o.initial={};return}if(!g)return;let{element:b}=g,_=g.pluginConfig(gn),k=(e=(t=_?.feedback)!=null?t:d?.feedback)!=null?e:"default",x=typeof k=="function"?k(g,l):k;if(!b||x==="none"||!p.initialized||p.initializing)return;let{initial:h}=o,m=(n=this.overlay)!=null?n:b,v=De(m),y=De(b),O=!uc(b,m),C=new Dt(b,{frameTransform:O?y:null,ignoreTransforms:!O}),W={x:y.scaleX/v.scaleX,y:y.scaleY/v.scaleY},{width:P,height:L,top:gt,left:Tt}=C;O&&(P=P/W.x,L=L/W.y);let zt=new Vl(m),Zt=It(b),{transition:yr,translate:qt,boxSizing:Mi,paddingBlockStart:Sn,paddingBlockEnd:Qt,paddingInlineStart:Ot,paddingInlineEnd:Xt,borderInlineStartWidth:Ii,borderInlineEndWidth:Ve,borderBlockStartWidth:ue,borderBlockEndWidth:Di}=Zt,fe=yr.split(",").filter(z=>!/^\s*(transform|translate|scale)\b/.test(z)).join(","),Ft=Zn(Zt),Ai=Zt.transform,En=x==="clone",he=Mi==="content-box",On=he?parseInt(Ot)+parseInt(Xt)+parseInt(Ii)+parseInt(Ve):0,pe=he?parseInt(Sn)+parseInt(Qt)+parseInt(ue)+parseInt(Di):0,nt=x!=="move"&&!this.overlay?tf(g,En?"clone":"hidden"):null,ct=D(()=>Ae(l.dragOperation.activatorEvent));if(!h.translate){if(this.overlay&&Ft)h.translate={x:Ft.x,y:Ft.y};else if(qt!=="none"){let z=ln(qt);z&&(h.translate=z)}}if(!h.transformOrigin){let z=D(()=>c.current),Y=Tt+((r=Ft?.x)!=null?r:0),wt=gt+((i=Ft?.y)!=null?i:0);h.transformOrigin={x:(z.x-Y*v.scaleX-v.x)/(P*v.scaleX),y:(z.y-wt*v.scaleY-v.y)/(L*v.scaleY)}}let{transformOrigin:R}=h,vt=gt*v.scaleY+v.y,br=Tt*v.scaleX+v.x;if(!h.coordinates&&(h.coordinates={x:br,y:vt},W.x!==1||W.y!==1)){let{scaleX:z,scaleY:Y}=y,{x:wt,y:te}=R;h.coordinates.x+=(P*z-P)*wt,h.coordinates.y+=(L*Y-L)*te}h.dimensions||(h.dimensions={width:P,height:L}),h.frameTransform||(h.frameTransform=v);let _r={x:h.coordinates.x-br,y:h.coordinates.y-vt},wr={width:(h.dimensions.width*h.frameTransform.scaleX-P*v.scaleX)*R.x,height:(h.dimensions.height*h.frameTransform.scaleY-L*v.scaleY)*R.y},_t={x:_r.x/v.scaleX+wr.width,y:_r.y/v.scaleY+wr.height},Re={left:Tt+_t.x,top:gt+_t.y};m.setAttribute(jt,"true");let xr=D(()=>u.transform),Pn=(s=h.translate)!=null?s:{x:0,y:0},Pt=xr.x*v.scaleX+Pn.x,Ti=xr.y*v.scaleY+Pn.y,kr=js();zt.set({width:P-On,height:L-pe,top:Re.top+kr.y,left:Re.left+kr.x,translate:`${Pt}px ${Ti}px 0`,transform:this.overlay?"none":Ai,transition:fe?`${fe}, translate 0ms linear`:"translate 0ms linear",scale:O?`${W.x} ${W.y}`:"","transform-origin":`${R.x*100}% ${R.y*100}%`},et),nt&&(b.insertAdjacentElement("afterend",nt),d?.rootElement&&(typeof d.rootElement=="function"?d.rootElement(g):d.rootElement).appendChild(b)),ii(m)&&(m.hasAttribute("popover")||m.setAttribute("popover","manual"),Ie(m),m.addEventListener("beforetoggle",Xl));let w,E,S,T=af({placeholder:nt,element:b,feedbackElement:m,frameTransform:v,transformOrigin:R,width:P,height:L,top:gt,left:Tt,widthOffset:On,heightOffset:pe,delta:_t,styles:zt,dragOperation:u,getTranslate:()=>o.current.translate,getElementMutationObserver:()=>w,getSavedCellWidths:()=>S,setSavedCellWidths:z=>{S=z}}),dt=new Dt(m);D(()=>u.shape=dt);let j=ht(m),J=z=>{this.manager.actions.stop({event:z})},je=Kn(j);ct&&j.addEventListener("resize",J),D(()=>g.status)==="idle"&&requestAnimationFrame(()=>g.status="dragging"),nt&&(T.observe(nt),w=sf(b,nt,En),E=of(b,nt,m));let Sr=(a=l.dragOperation.source)==null?void 0:a.id,ld=()=>{var z;if(!ct||Sr==null)return;let Y=l.registry.draggables.get(Sr),wt=(z=Y?.handle)!=null?z:Y?.element;Gt(wt)&&wt.focus()},Ni=()=>{w?.disconnect(),E?.disconnect(),T.disconnect(),j.removeEventListener("resize",J),ii(m)&&(m.removeEventListener("beforetoggle",Xl),m.removeAttribute("popover")),m.removeAttribute(jt),zt.reset();let z=()=>{var Y;if(S&&Qs(b)){let Wi=Array.from(b.cells);for(let[Er,Be]of Wi.entries())Be.style.width=(Y=S[Er])!=null?Y:""}g.status="idle";let wt=o.current.translate!=null,te=u.status.dragging;nt&&(!te&&wt||nt.parentElement!==m.parentElement)&&m.isConnected&&nt.replaceWith(m),nt?.remove()};m===this.overlay?setTimeout(z,0):z()},cd=d?.dropAnimation,Bo=this,dd=ye(()=>{var z,Y,wt;let{transform:te,status:Wi}=u;if(!(!te.x&&!te.y&&!o.current.translate)&&Wi.dragging){let Er=(z=h.translate)!=null?z:{x:0,y:0},Be={x:te.x/v.scaleX+Er.x,y:te.y/v.scaleY+Er.y},Ho=o.current.translate,ud=D(()=>u.modifiers),Li=D(()=>{var Mn;return(Mn=u.shape)==null?void 0:Mn.current}),Cn=d?.keyboardTransition,qo=ct&&!je&&Cn!==null?`${(Y=Cn?.duration)!=null?Y:250}ms ${(wt=Cn?.easing)!=null?wt:"cubic-bezier(0.25, 1, 0.5, 1)"}`:"0ms linear";if(zt.set({transition:fe?`${fe}, translate ${qo}`:`translate ${qo}`,translate:`${Be.x}px ${Be.y}px 0`},et),w?.takeRecords(),Li&&Li!==dt&&Ho&&!ud.length){let Mn=at.delta(Be,Ho);u.shape=mt.from(Li.boundingRectangle).translate(Mn.x*v.scaleX,Mn.y*v.scaleY)}else u.shape=new Dt(m);o.current.translate=Be}},function(){if(u.status.dropped){this.dispose(),g.status="dropping";let z=_?.dropAnimation!==void 0?_.dropAnimation:Bo.dropAnimation!==void 0?Bo.dropAnimation:cd,Y=o.current.translate,wt=Y!=null;if(!Y&&b!==m&&(Y={x:0,y:0}),!Y||z===null){Ni();return}l.renderer.rendering.then(()=>{df({source:g,element:b,feedbackElement:m,placeholder:nt,translate:Y,moved:wt,transition:yr,alignment:g.alignment,styles:zt,animation:z??void 0,getElementMutationObserver:()=>w,cleanup:Ni,restoreFocus:ld})})}});return()=>{Ni(),dd()}};At(or,4,"overlay",fc,gn,fo);Le(or,gn);gn.configure=rn(gn);var ho=gn,Qn=!0,uf=!1,gc,vc,mc,yc,oe,po,go;yc=(mc=[A],St.Forward),vc=(gc=[A],St.Reverse);var ar=class{constructor(){U(this,po,G(oe,8,this,Qn)),G(oe,11,this),U(this,go,G(oe,12,this,Qn)),G(oe,15,this)}isLocked(t){return t===St.Idle?!1:t==null?this[St.Forward]===Qn&&this[St.Reverse]===Qn:this[t]===Qn}unlock(t){t!==St.Idle&&(this[t]=uf)}};oe=mn(null);po=new WeakMap;go=new WeakMap;At(oe,4,yc,mc,ar,po);At(oe,4,vc,gc,ar,go);Le(oe,ar);var ff=[St.Forward,St.Reverse],Ul=class{constructor(){this.x=new ar,this.y=new ar}isLocked(){return this.x.isLocked()&&this.y.isLocked()}},hf=class extends Z{constructor(t){super(t);let e=Vt(new Ul),n=null;this.signal=e,st(()=>{let{status:r}=t.dragOperation;if(!r.initialized){n=null,e.value=new Ul;return}let{delta:i}=t.dragOperation.position;if(n){let s={x:Yl(i.x,n.x),y:Yl(i.y,n.y)},a=e.peek();F(()=>{for(let o of ls)for(let l of ff)s[o]===l&&a[o].unlock(l);e.value=a})}n=i})}get current(){return this.signal.peek()}};function Yl(t,e){return Math.sign(t-e)}var bc,eo,lr,vo,se,no,yn=class extends(eo=sn,bc=[A],eo){constructor(t){super(t),U(this,vo,G(lr,8,this,!1)),G(lr,11,this),U(this,se),U(this,no,()=>{if(!V(this,se))return;let{element:s,by:a}=V(this,se);a.y&&(s.scrollTop+=a.y),a.x&&(s.scrollLeft+=a.x)}),this.scroll=(s,a)=>{var o;if(this.disabled)return!1;let l=this.getScrollableElements();if(!l)return pt(this,se,void 0),!1;let{position:d}=this.manager.dragOperation,u=d?.current;if(u){let{by:c}=s??{},g=c?{x:Kl(c.x),y:Kl(c.y)}:void 0,p=g?void 0:this.scrollIntentTracker.current;if(p?.isLocked())return!1;for(let b of l){let _=zl(b,c);if(_.x||_.y){let{speed:k,direction:x}=Fl(b,u,g,a?.acceleration,a?.threshold);if(p)for(let h of ls)p[h].isLocked(x[h])&&(k[h]=0,x[h]=0);if(x.x||x.y){let{x:h,y:m}=c??x,v=h*k.x,y=m*k.y;if(v||y){let O=(o=V(this,se))==null?void 0:o.by;if(this.autoScrolling&&O&&(O.x&&!v||O.y&&!y))continue;return pt(this,se,{element:b,by:{x:v,y}}),Jn.schedule(V(this,no)),!0}}}}}return pt(this,se,void 0),!1};let e=null,n=null,r=Tr(()=>{let{position:s,source:a}=t.dragOperation;if(!s)return null;let o=Bs(Yn(a?.element),s.current);return o&&(e=o),o??e}),i=Tr(()=>{let s=r.value,{documentElement:a}=Ce(s);if(!s||s===a){let{target:o}=t.dragOperation,l=o?.element;if(l){let d=si(l,{excludeElement:!1});return n=d,d}}if(s){let o=si(s,{excludeElement:!1});return this.autoScrolling&&n&&o.size<n?.size?n:(n=o,o)}return n=null,null},Ar);this.getScrollableElements=()=>i.value,this.scrollIntentTracker=new hf(t),this.destroy=t.monitor.addEventListener("dragmove",s=>{this.disabled||s.defaultPrevented||!Ae(t.dragOperation.activatorEvent)||!s.by||this.scroll({by:s.by})&&s.preventDefault()})}};lr=mn(eo);vo=new WeakMap;se=new WeakMap;no=new WeakMap;At(lr,4,"autoScrolling",bc,yn,vo);Le(lr,yn);function Kl(t){return t>0?St.Forward:t<0?St.Reverse:St.Idle}var pf=class{constructor(t){this.scheduler=t,this.pending=!1,this.tasks=new Set,this.resolvers=new Set,this.flush=()=>{let{tasks:e,resolvers:n}=this;this.pending=!1,this.tasks=new Set,this.resolvers=new Set;for(let r of e)r();for(let r of n)r()}}schedule(t){return this.tasks.add(t),this.pending||(this.pending=!0,this.scheduler(this.flush)),new Promise(e=>this.resolvers.add(e))}},gf=new pf(t=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(t):t()}),vf=10,ro=class extends Z{constructor(e,n){super(e,n);let r=e.registry.plugins.get(yn);if(!r)throw new Error("AutoScroller plugin depends on Scroller plugin");this.destroy=st(()=>{var i,s,a;if(this.disabled)return;let{position:o,status:l}=e.dragOperation;if(l.dragging){let d={acceleration:(i=this.options)==null?void 0:i.acceleration,threshold:typeof((s=this.options)==null?void 0:s.threshold)=="number"?{x:this.options.threshold,y:this.options.threshold}:(a=this.options)==null?void 0:a.threshold};if(r.scroll(void 0,d)){r.autoScrolling=!0;let c=setInterval(()=>gf.schedule(()=>r.scroll(void 0,d)),vf);return()=>{clearInterval(c)}}else r.autoScrolling=!1}})}};ro.configure=rn(ro);var _c=ro,Gl={capture:!0,passive:!0},er,mf=class extends sn{constructor(t){super(t),U(this,er),this.handleScroll=()=>{V(this,er)==null&&pt(this,er,setTimeout(()=>{this.manager.collisionObserver.forceUpdate(!1),pt(this,er,void 0)},50))};let{dragOperation:e}=this.manager;this.destroy=st(()=>{var n,r,i;if(e.status.dragging){let a=(i=(r=(n=e.source)==null?void 0:n.element)==null?void 0:r.ownerDocument)!=null?i:document;return a.addEventListener("scroll",this.handleScroll,Gl),()=>{a.removeEventListener("scroll",this.handleScroll,Gl)}}})}};er=new WeakMap;var yf="* { user-select: none !important; -webkit-user-select: none !important; }",bf=class extends Z{constructor(t){super(t),this.manager=t;let e=t.registry.plugins.get(mi),n=e?.register(yf);if(this.destroy=st(()=>{let{dragOperation:r}=this.manager;if(r.status.initialized)return Us(),document.addEventListener("selectionchange",Us,{capture:!0}),()=>{document.removeEventListener("selectionchange",Us,{capture:!0})}}),n){let r=this.destroy.bind(this);this.destroy=()=>{n(),r()}}}};function Us(){var t;(t=document.getSelection())==null||t.removeAllRanges()}var nr=Object.freeze({offset:10,keyboardCodes:{start:["Space","Enter"],cancel:["Escape"],end:["Space","Enter","Tab"],up:["ArrowUp"],down:["ArrowDown"],left:["ArrowLeft"],right:["ArrowRight"]},preventActivation(t,e){var n;let r=(n=e.handle)!=null?n:e.element;return t.target!==r}}),dn,gi=class extends we{constructor(e,n){super(e),this.manager=e,this.options=n,U(this,dn,[]),this.listeners=new Hs,this.handleSourceKeyDown=(r,i,s)=>{if(this.disabled||r.defaultPrevented||!ie(r.target)||i.disabled)return;let{keyboardCodes:a=nr.keyboardCodes,preventActivation:o=nr.preventActivation}=s??{};a.start.includes(r.code)&&this.manager.dragOperation.status.idle&&(o?.(r,i)||this.handleStart(r,i,s))}}bind(e,n=this.options){return st(()=>{var i;let s=(i=e.handle)!=null?i:e.element,a=o=>{Ae(o)&&this.handleSourceKeyDown(o,e,n)};if(s)return s.addEventListener("keydown",a),()=>{s.removeEventListener("keydown",a)}})}handleStart(e,n,r){let{element:i}=n;if(!i)throw new Error("Source draggable does not have an associated element");e.preventDefault(),e.stopImmediatePropagation(),oi(i);let{center:s}=new Dt(i);if(this.manager.actions.start({event:e,coordinates:{x:s.x,y:s.y},source:n}).signal.aborted)return this.cleanup();this.sideEffects();let o=Ce(i),l=[this.listeners.bind(o,[{type:"keydown",listener:d=>this.handleKeyDown(d,n,r),options:{capture:!0}}])];V(this,dn).push(...l)}handleKeyDown(e,n,r){let{keyboardCodes:i=nr.keyboardCodes}=r??{};if(cn(e,[...i.end,...i.cancel])){e.preventDefault();let s=cn(e,i.cancel);this.handleEnd(e,s);return}cn(e,i.up)?this.handleMove("up",e):cn(e,i.down)&&this.handleMove("down",e),cn(e,i.left)?this.handleMove("left",e):cn(e,i.right)&&this.handleMove("right",e)}handleEnd(e,n){this.manager.actions.stop({event:e,canceled:n}),this.cleanup()}handleMove(e,n){var r,i;let{shape:s}=this.manager.dragOperation,a=n.shiftKey?5:1,o={x:0,y:0},l=(i=(r=this.options)==null?void 0:r.offset)!=null?i:nr.offset;if(typeof l=="number"&&(l={x:l,y:l}),!!s){switch(e){case"up":o={x:0,y:-l.y*a};break;case"down":o={x:0,y:l.y*a};break;case"left":o={x:-l.x*a,y:0};break;case"right":o={x:l.x*a,y:0};break}(o.x||o.y)&&(n.preventDefault(),this.manager.actions.move({event:n,by:o}))}}sideEffects(){let e=this.manager.registry.plugins.get(_c);e?.disabled===!1&&(e.disable(),V(this,dn).push(()=>{e.enable()}))}cleanup(){V(this,dn).forEach(e=>e()),pt(this,dn,[])}destroy(){this.cleanup(),this.listeners.clear()}};dn=new WeakMap;gi.configure=rn(gi);gi.defaults=nr;var mo=gi;function cn(t,e){return e.includes(t.code)}var Te,_f=class extends Ds{constructor(){super(...arguments),U(this,Te)}onEvent(t){switch(t.type){case"pointerdown":pt(this,Te,Me(t));break;case"pointermove":if(!V(this,Te))return;let{x:e,y:n}=Me(t),r={x:e-V(this,Te).x,y:n-V(this,Te).y},{tolerance:i}=this.options;if(i&&Lr(r,i)){this.abort();return}Lr(r,this.options.value)&&this.activate(t);break;case"pointerup":this.abort();break}}abort(){pt(this,Te,void 0)}};Te=new WeakMap;var un,Ne,wf=class extends Ds{constructor(){super(...arguments),U(this,un),U(this,Ne)}onEvent(t){switch(t.type){case"pointerdown":pt(this,Ne,Me(t)),pt(this,un,setTimeout(()=>this.activate(t),this.options.value));break;case"pointermove":if(!V(this,Ne))return;let{x:e,y:n}=Me(t),r={x:e-V(this,Ne).x,y:n-V(this,Ne).y};Lr(r,this.options.tolerance)&&this.abort();break;case"pointerup":this.abort();break}}abort(){V(this,un)&&(clearTimeout(V(this,un)),pt(this,Ne,void 0),pt(this,un,void 0))}};un=new WeakMap;Ne=new WeakMap;var hn=class{};hn.Delay=wf;hn.Distance=_f;var io=Object.freeze({activationConstraints(t,e){var n;let{pointerType:r,target:i}=t;if(!(r==="mouse"&&ie(i)&&(e.handle===i||(n=e.handle)!=null&&n.contains(i))))return r==="touch"?[new hn.Delay({value:250,tolerance:5})]:jl(i)&&!t.defaultPrevented?[new hn.Delay({value:200,tolerance:0})]:[new hn.Delay({value:200,tolerance:10}),new hn.Distance({value:5})]},preventActivation(t,e){var n;let{target:r}=t;if(r===e.element||r===e.handle||!ie(r)||(n=e.handle)!=null&&n.contains(r))return!1;let i=Il(r);return i===e.element?!1:!!i}}),fn,vi=class extends we{constructor(e,n){super(e),this.manager=e,this.options=n,U(this,fn,new Set),this.listeners=new Hs,this.latest={event:void 0,coordinates:void 0},this.handleMove=()=>{let{event:r,coordinates:i}=this.latest;!r||!i||this.manager.actions.move({event:r,to:i})},this.handleCancel=this.handleCancel.bind(this),this.handlePointerUp=this.handlePointerUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this)}activationConstraints(e,n,r=this.options){let{activationConstraints:i=io.activationConstraints}=r??{};return typeof i=="function"?i(e,n):i}bind(e,n=this.options){return st(()=>{var i;let s=new AbortController,{signal:a}=s,o=d=>{Rl(d)&&this.handlePointerDown(d,e,n)},l=[(i=e.handle)!=null?i:e.element];n?.activatorElements&&(Array.isArray(n.activatorElements)?l=n.activatorElements:l=n.activatorElements(e));for(let d of l)d&&(Sf(d.ownerDocument.defaultView),d.addEventListener("pointerdown",o,{signal:a}));return()=>s.abort()})}handlePointerDown(e,n,r){if(this.disabled||!e.isPrimary||e.button!==0||!ie(e.target)||n.disabled||xf(e)||!this.manager.dragOperation.status.idle)return;let{preventActivation:i=io.preventActivation}=r??{};if(i?.(e,n))return;let{target:s}=e,a=Gt(s)&&s.draggable&&s.getAttribute("draggable")==="true",o=De(n.element),{x:l,y:d}=Me(e);this.initialCoordinates={x:l*o.scaleX+o.x,y:d*o.scaleY+o.y};let u=this.activationConstraints(e,n,r);e.sensor=this;let c=new ll(u,_=>this.handleStart(n,_));c.signal.onabort=()=>this.handleCancel(e),c.onEvent(e),this.controller=c;let g=Kr(),p=this.listeners.bind(g,[{type:"pointermove",listener:_=>this.handlePointerMove(_,n)},{type:"pointerup",listener:this.handlePointerUp,options:{capture:!0}},{type:"pointercancel",listener:this.handleCancel},{type:"dragstart",listener:a?this.handleCancel:di,options:{capture:!0}}]),b=()=>{p(),this.initialCoordinates=void 0};V(this,fn).add(b)}handlePointerMove(e,n){var r,i;if(((r=this.controller)==null?void 0:r.activated)===!1){(i=this.controller)==null||i.onEvent(e);return}if(this.manager.dragOperation.status.dragging){let s=Me(e),a=De(n.element);s.x=s.x*a.scaleX+a.x,s.y=s.y*a.scaleY+a.y,e.preventDefault(),e.stopPropagation(),this.latest.event=e,this.latest.coordinates=s,Jn.schedule(this.handleMove)}}handlePointerUp(e){let{status:n}=this.manager.dragOperation;if(!n.idle){e.preventDefault(),e.stopPropagation();let r=!n.initialized;this.manager.actions.stop({event:e,canceled:r})}this.cleanup()}handleKeyDown(e){e.key==="Escape"&&(e.preventDefault(),this.handleCancel(e))}handleStart(e,n){let{manager:r,initialCoordinates:i}=this;if(!i||!r.dragOperation.status.idle||n.defaultPrevented)return;if(r.actions.start({coordinates:i,event:n,source:e}).signal.aborted)return this.cleanup();n.preventDefault();let o=Ce(n.target).body;try{o.setPointerCapture(n.pointerId)}catch{this.handleCancel(n);return}let l=ie(n.target)?[n.target,o]:o,d=this.listeners.bind(l,[{type:"touchmove",listener:di,options:{passive:!1}},{type:"click",listener:di},{type:"contextmenu",listener:di},{type:"keydown",listener:this.handleKeyDown}]);V(this,fn).add(d)}handleCancel(e){let{dragOperation:n}=this.manager;n.status.initialized&&this.manager.actions.stop({event:e,canceled:!0}),this.cleanup()}cleanup(){let{controller:e}=this;this.controller=void 0,e&&!e.signal.aborted&&e.abort(),this.latest={event:void 0,coordinates:void 0},V(this,fn).forEach(n=>n()),V(this,fn).clear()}destroy(){this.cleanup(),this.listeners.clear()}};fn=new WeakMap;vi.configure=rn(vi);vi.defaults=io;var yo=vi;function xf(t){return"sensor"in t}function di(t){t.preventDefault()}function kf(){}var Jl=new WeakSet;function Sf(t){!t||Jl.has(t)||(t.addEventListener("touchmove",kf,{capture:!1,passive:!1}),Jl.add(t))}var Ys={modifiers:[],plugins:[Yu,_c,Gu,ho,bf],sensors:[yo,mo]},wc=class extends yl{constructor(t={}){let e=Rt(t.plugins,Ys.plugins),n=Rt(t.sensors,Ys.sensors),r=Rt(t.modifiers,Ys.modifiers);super(lo(sr({},t),{plugins:[mf,yn,mi,...e],sensors:n,modifiers:r}))}},xc,kc,so,ae,bo,_o,$e=class extends(so=Wt,kc=[A],xc=[A],so){constructor(t,e){var n=t,{element:r,effects:i=()=>[],handle:s}=n,a=ec(n,["element","effects","handle"]);super(sr({effects:()=>[...i(),()=>{var o,l;let{manager:d}=this;if(!d)return;let c=((l=(o=this.sensors)==null?void 0:o.map(tn))!=null?l:[...d.sensors]).map(g=>{let p=g instanceof we?g:d.registry.register(g.plugin),b=g instanceof we?void 0:g.options;return p.bind(this,b)});return function(){c.forEach(p=>p())}}]},a),e),U(this,bo,G(ae,8,this)),G(ae,11,this),U(this,_o,G(ae,12,this)),G(ae,15,this),this.element=r,this.handle=s}};ae=mn(so);bo=new WeakMap;_o=new WeakMap;At(ae,4,"handle",kc,$e,bo);At(ae,4,"element",xc,$e,_o);Le(ae,$e);var Sc,Ec,oo,le,wo,Ks,Oc,Pc,ir,xo,bn=class extends(oo=Lt,Ec=[A],Sc=[A],oo){constructor(t,e){var n=t,{element:r,effects:i=()=>[]}=n,s=ec(n,["element","effects"]);let{collisionDetector:a=ci}=s,o=d=>{let{manager:u,element:c}=this;if(!c||d===null){this.shape=void 0;return}if(!u)return;let g=new Dt(c),p=D(()=>this.shape);return g&&p?.equals(g)?p:(this.shape=g,g)},l=Vt(!1);super(lo(sr({},s),{collisionDetector:a,effects:()=>[...i(),()=>{let{element:d,manager:u}=this;if(!u)return;let{dragOperation:c}=u,{source:g}=c;l.value=!!(g&&c.status.initialized&&d&&!this.disabled&&this.accepts(g))},()=>{let{element:d}=this;if(l.value&&d){let u=new Ll(d,o);return()=>{u.disconnect(),this.shape=void 0}}},()=>{var d;if((d=this.manager)!=null&&d.dragOperation.status.initialized)return()=>{this.shape=void 0}}]}),e),U(this,ir),U(this,wo,G(le,8,this)),G(le,11,this),U(this,xo,G(le,12,this)),G(le,15,this),this.element=r,this.refreshShape=()=>o()}set element(t){pt(this,ir,t,Pc)}get element(){var t;return(t=this.proxy)!=null?t:V(this,ir,Oc)}};le=mn(oo);wo=new WeakMap;ir=new WeakSet;xo=new WeakMap;Ks=At(le,20,"#element",Ec,ir,wo),Oc=Ks.get,Pc=Ks.set;At(le,4,"proxy",Sc,bn,xo);Le(le,bn);var Ef=Object.create,Lc=Object.defineProperty,Of=Object.defineProperties,Pf=Object.getOwnPropertyDescriptor,Cf=Object.getOwnPropertyDescriptors,ki=Object.getOwnPropertySymbols,$c=Object.prototype.hasOwnProperty,zc=Object.prototype.propertyIsEnumerable,Mf=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),gr=t=>{throw TypeError(t)},Oo=(t,e,n)=>e in t?Lc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ko=(t,e)=>{for(var n in e||(e={}))$c.call(e,n)&&Oo(t,n,e[n]);if(ki)for(var n of ki(e))zc.call(e,n)&&Oo(t,n,e[n]);return t},So=(t,e)=>Of(t,Cf(e)),If=(t,e)=>{var n={};for(var r in t)$c.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&ki)for(var r of ki(t))e.indexOf(r)<0&&zc.call(t,r)&&(n[r]=t[r]);return n},Df=t=>{var e;return[,,,Ef((e=void 0)!=null?e:null)]},Fc=["class","method","getter","setter","accessor","field","value","get","set"],ur=t=>t!==void 0&&typeof t!="function"?gr("Function expected"):t,Af=(t,e,n,r,i)=>({kind:Fc[t],name:e,metadata:r,addInitializer:s=>n._?gr("Already initialized"):i.push(ur(s||null))}),Tf=(t,e)=>Oo(e,Mf("metadata"),t[3]),yi=(t,e,n,r)=>{for(var i=0,s=t[e>>1],a=s&&s.length;i<a;i++)e&1?s[i].call(n):r=s[i].call(n,r);return r},Vc=(t,e,n,r,i,s)=>{for(var a,o,l,d,u,c=e&7,g=!1,p=!1,b=t.length+1,_=Fc[c+5],k=t[b-1]=[],x=t[b]||(t[b]=[]),h=(i=i.prototype,Pf({get[n](){return fr(this,s)},set[n](v){return ze(this,s,v)}},n)),m=r.length-1;m>=0;m--)d=Af(c,n,l={},t[3],x),d.static=g,d.private=p,u=d.access={has:v=>n in v},u.get=v=>v[n],u.set=(v,y)=>v[n]=y,o=(0,r[m])({get:h.get,set:h.set},d),l._=1,o===void 0?ur(o)&&(h[_]=o):typeof o!="object"||o===null?gr("Object expected"):(ur(a=o.get)&&(h.get=a),ur(a=o.set)&&(h.set=a),ur(a=o.init)&&k.unshift(a));return h&&Lc(i,n,h),i},Rc=(t,e,n)=>e.has(t)||gr("Cannot "+n),fr=(t,e,n)=>(Rc(t,e,"read from private field"),e.get(t)),dr=(t,e,n)=>e.has(t)?gr("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),ze=(t,e,n,r)=>(Rc(t,e,"write to private field"),e.set(t,n),n);function Fe(t){return t instanceof Mo||t instanceof Hc}var bi=10,Nf=class extends Z{constructor(t){super(t);let e=st(()=>{let{dragOperation:r}=t;if(Ae(r.activatorEvent)&&Fe(r.source)&&r.status.initialized){let i=t.registry.plugins.get(yn);if(i)return i.disable(),()=>i.enable()}}),n=t.monitor.addEventListener("dragmove",(r,i)=>{queueMicrotask(()=>{if(this.disabled||r.defaultPrevented||!r.nativeEvent)return;let{dragOperation:s}=i;if(!Ae(r.nativeEvent)||!Fe(s.source)||!s.shape)return;let{actions:a,collisionObserver:o,registry:l}=i,{by:d}=r;if(!d)return;let u=Wf(d),{source:c,target:g}=s,{center:p}=s.shape.current,b=[],_=[];F(()=>{for(let y of l.droppables){let{id:O}=y;if(!y.accepts(c)||O===g?.id&&Fe(y)||!y.element)continue;let C=y.shape,W=new Dt(y.element,{getBoundingClientRect:P=>an(P,void 0,.2)});!W.height||!W.width||(u=="down"&&p.y+bi<W.center.y||u=="up"&&p.y-bi>W.center.y||u=="left"&&p.x-bi>W.center.x||u=="right"&&p.x+bi<W.center.x)&&(b.push(y),y.shape=W,_.push(()=>y.shape=C))}}),r.preventDefault(),o.disable();let k=o.computeCollisions(b,Bl);F(()=>_.forEach(y=>y()));let[x]=k;if(!x)return;let{id:h}=x,{index:m,group:v}=c.sortable;a.setDropTarget(h).then(()=>{let{source:y,target:O,shape:C}=s;if(!y||!Fe(y)||!C)return;let{index:W,group:P,target:L}=y.sortable,gt=m!==W||v!==P,Tt=gt?L:O?.element;if(!Tt)return;oi(Tt);let zt=new Dt(Tt);if(!zt)return;let Zt=mt.delta(zt,mt.from(C.current.boundingRectangle),y.alignment);a.move({by:Zt}),gt?a.setDropTarget(y.id).then(()=>o.enable()):o.enable()})})});this.destroy=()=>{n(),e()}}};function Wf(t){let{x:e,y:n}=t;if(e>0)return"right";if(e<0)return"left";if(n>0)return"down";if(n<0)return"up"}var Lf=Object.defineProperty,$f=Object.defineProperties,zf=Object.getOwnPropertyDescriptors,Cc=Object.getOwnPropertySymbols,Ff=Object.prototype.hasOwnProperty,Vf=Object.prototype.propertyIsEnumerable,Mc=(t,e,n)=>e in t?Lf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,_n=(t,e)=>{for(var n in e||(e={}))Ff.call(e,n)&&Mc(t,n,e[n]);if(Cc)for(var n of Cc(e))Vf.call(e,n)&&Mc(t,n,e[n]);return t},wn=(t,e)=>$f(t,zf(e));function Rf(t,e,n){if(e===n)return t;let r=t.slice();return r.splice(n,0,r.splice(e,1)[0]),r}function _i(t,e){let n=String(e);return Object.prototype.hasOwnProperty.call(t,n)?n:void 0}function Eo(t){return"initialIndex"in t&&typeof t.initialIndex=="number"&&"index"in t&&typeof t.index=="number"}function jf(t,e,n){var r,i;let{source:s,target:a,canceled:o}=e.operation;if(!s||!a||o)return"preventDefault"in e&&e.preventDefault(),t;let l=(m,v)=>m===v||m!==null&&typeof m=="object"&&"id"in m&&m.id===v;if(Array.isArray(t)){let m=t.findIndex(y=>l(y,s.id)),v=t.findIndex(y=>l(y,a.id));if(m===-1||v===-1){if(Eo(s)){let y=s.initialIndex,O=s.index;return y===O||y<0||y>=t.length?("preventDefault"in e&&e.preventDefault(),t):n(t,y,O)}return t}if(!o&&"index"in s&&typeof s.index=="number"){let y=s.index;if(y!==m)return n(t,m,y)}return n(t,m,v)}let d=Object.entries(t),u=-1,c,g=-1,p;for(let[m,v]of d)if(u===-1&&(u=v.findIndex(y=>l(y,s.id)),u!==-1&&(c=m)),g===-1&&(g=v.findIndex(y=>l(y,a.id)),g!==-1&&(p=m)),u!==-1&&g!==-1)break;if(u===-1&&Eo(s)){let m=s.initialGroup==null?void 0:_i(t,s.initialGroup),v=s.initialIndex,y=s.group==null?void 0:_i(t,s.group),O=s.index;if(m==null||y==null||m===y&&v===O)return"preventDefault"in e&&e.preventDefault(),t;if(m===y)return wn(_n({},t),{[m]:n(t[m],v,O)});let C=t[m][v];return wn(_n({},t),{[m]:[...t[m].slice(0,v),...t[m].slice(v+1)],[y]:[...t[y].slice(0,O),C,...t[y].slice(O)]})}if(!s.manager)return t;let{dragOperation:b}=s.manager,_=(i=(r=b.shape)==null?void 0:r.current.center)!=null?i:b.position.current;if(p==null){let m=_i(t,a.id);if(m!=null){let v=a.shape&&_.y>a.shape.center.y?t[m].length:0;p=m,g=v}}if(c==null||p==null||c===p&&u===g){if(c!=null&&c===p&&u===g&&Eo(s)){let m=s.group==null?void 0:_i(t,s.group),v=s.group!=null&&m!==c,y=s.index!==u;if(v||y){let O=s.group==null?c:m;if(O!=null){if(c===O)return wn(_n({},t),{[c]:n(t[c],u,s.index)});let C=t[c][u];return wn(_n({},t),{[c]:[...t[c].slice(0,u),...t[c].slice(u+1)],[O]:[...t[O].slice(0,s.index),C,...t[O].slice(s.index)]})}}}return"preventDefault"in e&&e.preventDefault(),t}if(c===p)return wn(_n({},t),{[c]:n(t[c],u,g)});let x=a.shape&&Math.round(_.y)>Math.round(a.shape.center.y)?1:0,h=t[c][u];return wn(_n({},t),{[c]:[...t[c].slice(0,u),...t[c].slice(u+1)],[p]:[...t[p].slice(0,g+x),h,...t[p].slice(g+x)]})}function Bf(t,e){return jf(t,e,Rf)}function Ic(t){let e=new Map;for(let[,n]of t)for(let r of n)e.set(r.id,r.index);return e}function Dc(t,e,n){var r;for(let[i,s]of e)for(let a of s){let o=t.get(a.id);if(a.index!==o||a.group!==i||!((r=n.get(i))!=null&&r.has(a)))return!0}return!1}var Ac="__default__",Hf=class extends Z{constructor(t){super(t);let e=()=>{let r=new Map;for(let i of t.registry.droppables)if(i instanceof Mo){let{sortable:s}=i,{group:a}=s,o=r.get(a);o||(o=new Set,r.set(a,o)),o.add(s)}return r},n=[t.monitor.addEventListener("dragover",(r,i)=>{if(this.disabled)return;let{dragOperation:s}=i,{source:a,target:o}=s;if(!Fe(a)||!Fe(o)||a.sortable===o.sortable)return;let l=e(),d=Ic(l),u=a.sortable.group===o.sortable.group,c=l.get(a.sortable.group),g=u?c:l.get(o.sortable.group);!c||!g||queueMicrotask(()=>{r.defaultPrevented||i.renderer.rendering.then(()=>{var p,b;let _=e();if(Dc(d,l,_))return;let k=a.sortable.element,x=o.sortable.element;if(!x||!k||!u&&o.id===a.sortable.group)return;let h=wi(c),m=u?h:wi(g),v=(p=a.sortable.group)!=null?p:Ac,y=(b=o.sortable.group)!=null?b:Ac,O={[v]:h,[y]:m},C=Bf(O,r);if(O===C)return;let W=C[y].indexOf(a.sortable),P=C[y].indexOf(o.sortable);i.collisionObserver.disable(),Tc(k,W,x,P),F(()=>{for(let[L,gt]of C[v].entries())gt.index=L;if(!u)for(let[L,gt]of C[y].entries())gt.group=o.sortable.group,gt.index=L}),i.actions.setDropTarget(a.id).then(()=>i.collisionObserver.enable())})})}),t.monitor.addEventListener("dragend",(r,i)=>{if(!r.canceled)return;let{dragOperation:s}=i,{source:a}=s;Fe(a)&&(a.sortable.initialIndex===a.sortable.index&&a.sortable.initialGroup===a.sortable.group||queueMicrotask(()=>{let o=e(),l=Ic(o),d=o.get(a.sortable.initialGroup);d&&i.renderer.rendering.then(()=>{let u=e();if(Dc(l,o,u))return;let c=wi(d),g=wi(d,Xf),p=a.sortable.element,b=g.indexOf(a.sortable),_=c[b],k=_?.element;!_||!k||!p||(Tc(p,_.index,k,a.index),F(()=>{for(let x of o.values()){let h=Array.from(x).values();for(let m of h)m.index=m.initialIndex,m.group=m.initialGroup}}))})}))})];this.destroy=()=>{for(let r of n)r()}}};function Tc(t,e,n,r){let i=r<e?"afterend":"beforebegin";n.insertAdjacentElement(i,t)}function qf(t,e){return t.index-e.index}function Xf(t,e){return t.initialIndex-e.initialIndex}function wi(t,e=qf){return Array.from(t).sort(e)}var Nc=[Nf,Hf],Uf={duration:250,easing:"cubic-bezier(0.25, 1, 0.5, 1)",idle:!1};function Wc(t){var e,n;return typeof t=="boolean"?{draggable:t,droppable:t}:{draggable:(e=t?.draggable)!=null?e:!1,droppable:(n=t?.droppable)!=null?n:!1}}var xi=new ma,jc,Bc,de,Po,hr,pr,Co,xn;Bc=[A],jc=[A];var kn=class{constructor(t,e){dr(this,Po,yi(de,8,this)),yi(de,11,this),dr(this,hr),dr(this,pr),dr(this,Co,yi(de,12,this)),yi(de,15,this),dr(this,xn),this.register=()=>(F(()=>{var b,_;(b=this.manager)==null||b.registry.register(this.droppable),(_=this.manager)==null||_.registry.register(this.draggable)}),()=>this.unregister()),this.unregister=()=>{F(()=>{var b,_;(b=this.manager)==null||b.registry.unregister(this.droppable),(_=this.manager)==null||_.registry.unregister(this.draggable)})},this.destroy=()=>{F(()=>{this.droppable.destroy(),this.draggable.destroy()})};var n=t,{effects:r=()=>[],disabled:i,group:s,index:a,sensors:o,type:l,transition:d=Uf,plugins:u}=n,c=If(n,["effects","disabled","group","index","sensors","type","transition","plugins"]);let g=Rt(u,Nc),p=Wc(i);this.droppable=new Mo(So(ko({},c),{disabled:p.droppable}),e,this),this.draggable=new Hc(So(ko({},c),{disabled:p.draggable,plugins:g,effects:()=>[()=>{var b,_,k;let x=(b=this.manager)==null?void 0:b.dragOperation.status;x?.initializing&&this.id===((k=(_=this.manager)==null?void 0:_.dragOperation.source)==null?void 0:k.id)&&xi.clear(this.manager),x?.dragging&&xi.set(this.manager,this.id,D(()=>({initialIndex:this.index,initialGroup:this.group})))},()=>{let{index:b,group:_,manager:k}=this,x=fr(this,pr),h=fr(this,hr);(b!==x||_!==h)&&(ze(this,pr,b),ze(this,hr,_),this.animate())},()=>{var b,_;let{target:k}=this,{isDragSource:x}=this.draggable;((_=(b=this.draggable.pluginConfig(ho))==null?void 0:b.feedback)!=null?_:"default")==="move"&&x&&(this.droppable.disabled=!k)},...r()],type:l,sensors:o}),e,this),ze(this,xn,c.element),this.manager=e,this.index=a,ze(this,pr,a),this.group=s,ze(this,hr,s),this.type=l,this.transition=d}get initialIndex(){var t,e;return(e=(t=xi.get(this.manager,this.id))==null?void 0:t.initialIndex)!=null?e:this.index}get initialGroup(){var t,e;return(e=(t=xi.get(this.manager,this.id))==null?void 0:t.initialGroup)!=null?e:this.group}animate(){D(()=>{let{manager:t,transition:e}=this,{shape:n}=this.droppable;if(!t)return;let{idle:r}=t.dragOperation.status;!n||!e||r&&!e.idle||t.renderer.rendering.then(()=>{let{element:i}=this;if(!i)return;for(let u of i.getAnimations())"transitionProperty"in u&&(u.transitionProperty==="transform"||u.transitionProperty==="translate"||u.transitionProperty==="scale")&&u.cancel();let s=this.refreshShape();if(!s)return;let a={x:n.boundingRectangle.left-s.boundingRectangle.left,y:n.boundingRectangle.top-s.boundingRectangle.top},{translate:o}=It(i),l=Xs(i,o,!1),d=Xs(i,o);if(a.x||a.y){let u=Kn(ht(i))?So(ko({},e),{duration:0}):e;ai({element:i,keyframes:{translate:[`${l.x+a.x}px ${l.y+a.y}px ${l.z}`,`${d.x}px ${d.y}px ${d.z}`]},options:u}).then(()=>{t.dragOperation.status.dragging||(this.droppable.shape=void 0)})}})})}get manager(){return this.draggable.manager}set manager(t){F(()=>{this.draggable.manager=t,this.droppable.manager=t})}set element(t){F(()=>{let e=fr(this,xn),n=this.droppable.element,r=this.draggable.element;(!n||n===e)&&(this.droppable.element=t),(!r||r===e)&&(this.draggable.element=t),ze(this,xn,t)})}get element(){var t,e;let n=fr(this,xn);if(n)return(e=(t=Gn.get(n))!=null?t:n)!=null?e:this.droppable.element}set target(t){this.droppable.element=t}get target(){return this.droppable.element}set source(t){this.draggable.element=t}get source(){return this.draggable.element}get disabled(){let{disabled:t}=this.draggable,{disabled:e}=this.droppable;return t===e?t:{draggable:t,droppable:e}}set plugins(t){this.draggable.plugins=Rt(t,Nc)}set disabled(t){let e=Wc(t);F(()=>{this.droppable.disabled=e.droppable,this.draggable.disabled=e.draggable})}set data(t){F(()=>{this.droppable.data=t,this.draggable.data=t})}set handle(t){this.draggable.handle=t}set id(t){this.droppable.id=t,this.draggable.id=t}get id(){return this.droppable.id}set sensors(t){this.draggable.sensors=t}set modifiers(t){this.draggable.modifiers=t}set collisionPriority(t){this.droppable.collisionPriority=t}set collisionDetector(t){this.droppable.collisionDetector=t??ci}set alignment(t){this.draggable.alignment=t}get alignment(){return this.draggable.alignment}set type(t){F(()=>{this.droppable.type=t,this.draggable.type=t})}get type(){return this.draggable.type}set accept(t){this.droppable.accept=t}get accept(){return this.droppable.accept}get isDropTarget(){return this.droppable.isDropTarget}get isDragSource(){return this.draggable.isDragSource}get isDragging(){return this.draggable.isDragging}get isDropping(){return this.draggable.isDropping}get status(){return this.draggable.status}refreshShape(){return this.droppable.refreshShape()}accepts(t){return this.droppable.accepts(t)}};de=Df();Po=new WeakMap;hr=new WeakMap;pr=new WeakMap;Co=new WeakMap;xn=new WeakMap;Vc(de,4,"index",Bc,kn,Po);Vc(de,4,"group",jc,kn,Co);Tf(de,kn);var Hc=class extends $e{constructor(t,e,n){super(t,e),this.sortable=n}get index(){return this.sortable.index}get initialIndex(){return this.sortable.initialIndex}get group(){return this.sortable.group}get initialGroup(){return this.sortable.initialGroup}},Mo=class extends bn{constructor(t,e,n){super(t,e),this.sortable=n}get index(){return this.sortable.index}get group(){return this.sortable.group}};var Bt=(...t)=>t.filter(Boolean).join(" ");var Yf={primary:"ks-button-primary",secondary:"ks-button-secondary",danger:"ks-button-danger"},Kf={sm:"ks-button-sm",md:"ks-button-md",lg:"ks-button-lg"},Gf=({variant:t="primary",size:e="md",className:n,children:r,...i})=>{let s=i.href?"a":"button";return f.createElement(s,{...i,className:Bt("ks-button",Yf[t],Kf[e],n)},r)},Q=Gf;var Et=(t,e,n,r={})=>fetch(t,{method:n,headers:{"Content-Type":"application/json",Accept:"application/json","X-CSRF-Token":e},body:JSON.stringify(r)}).then(i=>i.json().then(s=>i.ok?s:Promise.reject(s))),qc=(t,e,n,r)=>Et(t,e,"POST",{key:n,column_id:r}),Xc=(t,e,n,r,i)=>Et(`${t}/${n}`,e,"PATCH",{field:r,value:i}),Uc=(t,e)=>Et(t,e,"POST",{}),Yc=(t,e,n)=>Et(t,e,"POST",{row_id:n}),Kc=(t,e,n)=>Et(t,e,"POST",{section_id:n}),Io=(t,e,n,r,i)=>Et(`${t}/${n}`,e,"PATCH",{setting:r,value:i}),Si=(t,e,n)=>Et(`${t}/${n}`,e,"DELETE"),Do=(t,e,n,r,i)=>Et(`${t}/${n}/move`,e,"POST",{into:r,position:i}),Gc=(t,e,n)=>Et(`${t}/${n}/duplicate`,e,"POST"),Jc=(t,e,n,r,i,s)=>Et(`${t}/${n}/bind`,e,"POST",{field:r,name:i,fallback:s}),Zc=(t,e,n)=>Et(t,e,"POST",{choice:n}),Qc=(t,e,n,r,i)=>Et(`${t}/${n}/condition`,e,"POST",{name:r,equals:i}),Ao=(t,e)=>Et(t,e,"POST");var Jf=({as:t="input",disabled:e,className:n,...r})=>f.createElement(t,{...r,disabled:e,className:Bt("ks-input",e&&"ks-input-disabled",n)}),bt=Jf;var Zf=t=>f.createElement(bt,{...t,as:"select"}),lt=Zf;var Qf=({type:t="info",title:e,message:n,onDismiss:r,className:i})=>f.createElement("div",{className:Bt("ks-alert",`ks-alert-${t}`,i),role:"alert"},f.createElement("div",{className:"ks-alert-body"},f.createElement("div",{className:"ks-alert-content"},e&&f.createElement("p",{className:"ks-alert-title"},e),f.createElement("p",{className:e?"ks-alert-message-titled":"ks-alert-message"},n)),r&&f.createElement("button",{type:"button",className:"ks-alert-dismiss","aria-label":"Dismiss",onClick:r},"\xD7"))),td=Qf;var Ei=(t,e)=>({className:n,children:r,...i})=>f.createElement(t,{...i,className:Bt(e,n)},r),Ht=Ei("label","ks-label"),iv=Ei("p","ks-hint"),sv=Ei("p","ks-error"),ov=Ei("span","ks-required");var th={section:{spacing:"Section spacing"},row:{gap:"Row gap"},column:{wide:"Width on wide screens",narrow:"Width on narrow screens",align:"Vertical alignment"}};function To({node:t,values:e,arrangements:n,refusal:r,onAddColumn:i,onAddRow:s,onArrange:a,onSelect:o,onRemove:l}){let d=th[t.kind],u=Object.keys(n[t.kind]).filter(c=>d[c]);return f.createElement("aside",{"data-layout-panel":!0,className:"flex flex-col gap-3"},r&&f.createElement("div",{"data-layout-refusal":!0},f.createElement(td,{type:"error",message:r})),u.map(c=>f.createElement("div",{key:`${t.id}-${c}`,className:"flex flex-col gap-1"},f.createElement(Ht,{htmlFor:`ks-pages-${c}`},d[c]),f.createElement(lt,{id:`ks-pages-${c}`,defaultValue:e[c]??"",onChange:g=>a(t.id,c,g.target.value)},n[t.kind][c].map(g=>f.createElement("option",{key:g,value:g},g))))),t.kind==="column"&&f.createElement(f.Fragment,null,f.createElement(Q,{type:"button",variant:"secondary",onClick:()=>i(t.rowId)},"Add column"),f.createElement(Q,{type:"button",variant:"secondary",onClick:()=>s(t.sectionId)},"Add row"),f.createElement(Q,{type:"button",variant:"secondary",onClick:()=>o({kind:"row",id:t.rowId,sectionId:t.sectionId})},"Select row")),t.kind==="row"&&f.createElement(Q,{type:"button",variant:"secondary",onClick:()=>o({kind:"section",id:t.sectionId})},"Select section"),f.createElement(Q,{type:"button",variant:"danger",onClick:()=>l(t.id)},"Remove ",t.kind))}var vr=[{key:"phone",label:"Phone",width:"390px"},{key:"tablet",label:"Tablet",width:"768px"},{key:"desktop",label:"Desktop",width:"100%"},{key:"print",label:"Print",width:"794px",theme:"light"}];function No({chosen:t,onChoose:e}){return f.createElement("div",{"data-device-width":!0,role:"group","aria-label":"Preview width",className:"flex rounded-md border border-(--ks-color-border) dark:border-(--ks-color-border-dark) p-0.5"},vr.map(n=>f.createElement("button",{key:n.key,type:"button","aria-pressed":t===n.key,onClick:()=>e(n.key),className:"rounded px-3 py-1 text-sm aria-pressed:bg-(--ks-color-accent) aria-pressed:text-white"},n.label)))}var eh=Or(function({place:e,onDuplicate:n,onRemove:r},i){return f.createElement("div",{"data-selection-toolbar":!0,hidden:!e,style:e??{},className:"absolute z-20 flex -translate-y-full overflow-hidden rounded-t-md bg-(--ks-color-accent) text-xs text-white shadow"},f.createElement("button",{ref:i,type:"button","data-move-handle":!0,className:"cursor-grab px-2 py-1 hover:bg-black/20"},"Move"),f.createElement("button",{type:"button",onClick:n,className:"px-2 py-1 hover:bg-black/20"},"Duplicate"),f.createElement("button",{type:"button",onClick:r,className:"px-2 py-1 hover:bg-black/20"},"Remove"))}),ed=eh;var nd={cursor:"M5 3l14 8-6 2-2 6z",tag:"M3 7v6l8 8 8-8-8-8H5a2 2 0 0 0-2 2zM7.5 7.5h.01",copy:"M8 8h11v11H8zM5 16V5h11",heading:"M6 4v16M18 4v16M6 12h12",text:"M4 6h16M4 12h16M4 18h10",list:"M4 6h4M12 6h8M4 12h4M12 12h8M4 18h4M12 18h8",info:"M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20zM12 16v-4M12 8h.01",code:"M8 6l-6 6 6 6M16 6l6 6-6 6",alert:"M12 3l10 18H2zM12 10v4M12 17h.01",card:"M3 5h18v14H3zM3 10h18",megaphone:"M3 11v2l13 5V6zM16 9a3 3 0 0 1 0 6M6 14l1 5h3l-1-4",chart:"M4 20V10M10 20V4M16 20v-7M22 20H2",bars:"M3 21h18M6 17v-6h3v6M11 17V7h3v10M16 17v-4h3v4",number:"M10 3L8 21M16 3l-2 18M4 9h17M3 15h17",progress:"M3 12h18M3 12h10",box:"M3 3h18v18H3z"},nh=t=>{let e=new Map;return t.forEach(n=>{let r=n.group??"Other";e.set(r,[...e.get(r)??[],n])}),[...e]},rh=({element:t,shown:e})=>f.createElement("button",{type:"button","data-element-key":t.key,hidden:!e,className:"flex cursor-grab items-center gap-3 rounded-md border border-(--ks-color-border) bg-(--ks-color-surface) px-3 py-2 dark:border-(--ks-color-border-dark) dark:bg-(--ks-color-surface-dark) text-left text-sm hover:border-(--ks-color-accent) dark:bg-transparent"},f.createElement("svg",{viewBox:"0 0 24 24","aria-hidden":"true",className:"size-5 shrink-0 fill-none stroke-current stroke-2 text-(--ks-color-icon)",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:nd[t.icon]??nd.box})),f.createElement("span",null,t.name)),ih=Or(function({elements:e,children:n},r){let[i,s]=rt(""),a=o=>o.name.toLowerCase().includes(i.trim().toLowerCase());return f.createElement("aside",{ref:r,"data-element-palette":!0,className:"flex w-64 shrink-0 flex-col gap-5 overflow-y-auto border-r border-(--ks-color-border) bg-(--ks-color-surface) p-4 dark:border-(--ks-color-border-dark) dark:bg-(--ks-color-surface-dark)"},f.createElement(bt,{type:"search","aria-label":"Search elements",placeholder:"Search elements",value:i,onChange:o=>s(o.target.value)}),nh(e).map(([o,l])=>f.createElement("section",{key:o,"data-element-group":o,hidden:!l.some(a),className:"flex flex-col gap-2"},f.createElement("h2",{className:"text-xs font-semibold uppercase tracking-wide text-(--ks-color-icon)"},o),l.map(d=>f.createElement(rh,{key:d.key,element:d,shown:a(d)})))),n)}),rd=ih;function Wo({path:t,onChoose:e}){return t.length===0?null:f.createElement("nav",{"data-selection-path":!0,"aria-label":"Selection",className:"mb-4 flex flex-wrap items-center gap-1 text-xs"},t.map((n,r)=>f.createElement(f.Fragment,{key:n.id},r>0&&f.createElement("span",{"aria-hidden":"true",className:"text-(--ks-color-icon)"},"\u203A"),f.createElement("button",{type:"button","aria-current":r===t.length-1?"true":void 0,onClick:()=>e(n),className:"rounded px-1.5 py-0.5 hover:bg-(--ks-color-fill-muted) aria-[current=true]:font-semibold"},n.label))))}function Lo({samples:t,chosen:e,onChoose:n}){return t.length===0?null:f.createElement("label",{className:"flex items-center gap-2 text-sm"},f.createElement("span",{className:"whitespace-nowrap"},"Preview with"),f.createElement(lt,{defaultValue:e??"",onChange:r=>n(r.target.value),className:"py-1"},t.map(([r,i])=>f.createElement("option",{key:i,value:i},r))))}function $o({condition:t,valueNames:e,onChange:n}){let[r,i]=rt(t?.value??""),[s,a]=rt(t?.equals??""),o=Object.entries(e??{});if(o.length===0)return null;let l=d=>{i(d),(d===""||s!=="")&&n(d,s)};return f.createElement("div",{"data-show-when":!0,className:"mt-4 flex flex-col gap-2 border-t border-(--ks-color-border) pt-4 dark:border-(--ks-color-border-dark)"},f.createElement(Ht,{htmlFor:"ks-pages-show-when-value"},"Show only when"),f.createElement(lt,{id:"ks-pages-show-when-value",value:r,onChange:d=>l(d.target.value)},f.createElement("option",{value:""},"Always shown"),o.map(([d,u])=>f.createElement("option",{key:d,value:d},u))),r!==""&&f.createElement(f.Fragment,null,f.createElement(Ht,{htmlFor:"ks-pages-show-when-equals"},"equals"),f.createElement(bt,{id:"ks-pages-show-when-equals",type:"text",defaultValue:s,onBlur:d=>{a(d.target.value),d.target.value!==t?.equals&&n(r,d.target.value)}})))}var id=[["light","Light"],["dark","Dark"],["system","System"]],sh=t=>{t==="system"?delete document.documentElement.dataset.theme:document.documentElement.dataset.theme=t};function zo(){let t=document.documentElement.dataset.theme??"system",e=t==="custom"?[...id,["custom","Custom"]]:id;return f.createElement("label",{className:"flex items-center gap-2 text-sm"},f.createElement("span",null,"Mode"),f.createElement(lt,{"data-theme-mode":!0,defaultValue:t,onChange:n=>sh(n.target.value),className:"py-1"},e.map(([n,r])=>f.createElement("option",{key:n,value:n},r))))}var oh=t=>t.replace(/_/g," ").replace(/^./,e=>e.toUpperCase());function Fo({looks:t}){return t.length===0?null:f.createElement("label",{className:"flex items-center gap-2 text-sm"},f.createElement("span",null,"Look"),f.createElement(lt,{"data-look-choice":!0,defaultValue:document.documentElement.dataset.look,onChange:e=>{document.documentElement.dataset.look=e.target.value},className:"py-1"},t.map(e=>f.createElement("option",{key:e,value:e},oh(e)))))}var ah=t=>f.createElement(bt,{...t,as:"textarea"}),sd=ah;var lh=({className:t,...e})=>f.createElement("input",{type:"checkbox",...e,className:Bt("ks-checkbox",t)}),Oi=lh;var od=(t,e,n)=>{let r=[...t];return[r[e],r[n]]=[r[n],r[e]],r};function Vo({field:t,entries:e,onChange:n}){let r=(t.entry??[]).filter(s=>!s.hidden),i=s=>n(t.key,s);return f.createElement("div",{"data-list-field":t.key,className:"flex flex-col gap-2"},e.map((s,a)=>f.createElement("fieldset",{key:`${a}-${JSON.stringify(s)}`,"data-list-entry":!0,className:"flex flex-col gap-2 rounded-md border border-(--ks-color-border) dark:border-(--ks-color-border-dark) p-2"},r.map(o=>f.createElement("div",{key:o.key,className:"flex flex-col gap-1"},f.createElement(Ht,{htmlFor:`ks-pages-${t.key}-${a}-${o.key}`},o.label),o.kind==="one_of"&&f.createElement(lt,{id:`ks-pages-${t.key}-${a}-${o.key}`,defaultValue:s[o.key]??o.default??"",onChange:l=>i(e.map((d,u)=>u===a?{...d,[o.key]:l.target.value}:d))},f.createElement("option",{value:""}),o.options.map(l=>f.createElement("option",{key:l,value:l},l))),o.kind!=="one_of"&&(o.kind==="yes_or_no"?f.createElement(Oi,{id:`ks-pages-${t.key}-${a}-${o.key}`,className:"self-start",defaultChecked:s[o.key]==="true",onChange:l=>i(e.map((d,u)=>u===a?{...d,[o.key]:String(l.target.checked)}:d))}):f.createElement(bt,{id:`ks-pages-${t.key}-${a}-${o.key}`,type:"text",defaultValue:s[o.key]??o.default??"",onBlur:l=>l.target.value!==(s[o.key]??o.default??"")&&i(e.map((d,u)=>u===a?{...d,[o.key]:l.target.value}:d))})))),f.createElement("div",{className:"flex flex-wrap gap-2"},f.createElement(Q,{type:"button",size:"sm",variant:"secondary",disabled:a===0,onClick:()=>i(od(e,a,a-1))},"Move up"),f.createElement(Q,{type:"button",size:"sm",variant:"secondary",disabled:a===e.length-1,onClick:()=>i(od(e,a,a+1))},"Move down"),f.createElement(Q,{type:"button",size:"sm",variant:"danger",onClick:()=>i(e.filter((o,l)=>l!==a))},"Remove item")))),f.createElement(Q,{type:"button",size:"sm",variant:"secondary",onClick:()=>i([...e,{}])},"Add item"))}var ch=({field:t,value:e,onChange:n})=>{let r=e??t.default??"",i={id:`ks-pages-field-${t.key}`,defaultValue:r,onBlur:s=>s.target.value!==r&&n(t.key,s.target.value)};return t.kind==="yes_or_no"?f.createElement(Oi,{id:i.id,defaultChecked:e==="true",onChange:s=>n(t.key,String(s.target.checked))}):t.kind==="one_of"?f.createElement(lt,{id:i.id,defaultValue:e??t.default??"",onChange:s=>n(t.key,s.target.value)},t.options.map(s=>f.createElement("option",{key:s,value:s},s))):t.kind==="long_text"?f.createElement(sd,{...i,rows:4}):t.kind==="number"?f.createElement(bt,{...i,type:"number"}):t.kind==="address"?f.createElement(bt,{...i,type:"url"}):f.createElement(bt,{...i,type:"text"})},dh=["text","long_text","address","number","list","data",void 0],mr=t=>!!t&&typeof t=="object"&&!Array.isArray(t)&&"value"in t,uh=({field:t,stored:e,valueNames:n,onChange:r,onBind:i})=>{let s=mr(e)?e:null,a=s?s.fallback??"":e??t.default??"";return f.createElement(lt,{id:`ks-pages-value-${t.key}`,"aria-label":`${t.label} value`,value:s?.value??"",onChange:o=>o.target.value?i(t.key,o.target.value,a):r(t.key,a)},f.createElement("option",{value:""},"Typed text"),Object.entries(n).map(([o,l])=>f.createElement("option",{key:o,value:o},l)))};function Ro({element:t,definition:e,alignments:n,valueNames:r={},onChange:i,onArrange:s,onBind:a,onRemove:o}){return f.createElement("aside",{"data-element-fields":!0,className:"flex flex-col gap-3"},e.fields.map(l=>f.createElement("div",{key:`${t.id}-${l.key}`,className:"flex flex-col gap-1"},f.createElement(Ht,{htmlFor:`ks-pages-field-${l.key}`},l.label),dh.includes(l.kind)&&Object.keys(r).length>0&&f.createElement(uh,{field:l,stored:t.fields[l.key],valueNames:r,onChange:i,onBind:a}),l.kind==="list"&&!mr(t.fields[l.key])&&f.createElement(Vo,{field:l,entries:t.fields[l.key]??l.default??[],onChange:i}),l.kind==="data"&&f.createElement("p",{className:"ks-hint"},"Filled with data the host supplies on a template page"),l.kind!=="list"&&l.kind!=="data"&&f.createElement(ch,{key:JSON.stringify(t.fields[l.key]??null),field:l,value:mr(t.fields[l.key])?t.fields[l.key].fallback??"":t.fields[l.key],onChange:(d,u)=>mr(t.fields[d])?a(d,t.fields[d].value,u):i(d,u)}),mr(t.fields[l.key])&&f.createElement("p",{className:"ks-hint"},"Shows ",r[t.fields[l.key].value]??t.fields[l.key].value,", or this text when it has no value"))),f.createElement("div",{className:"flex flex-col gap-1"},f.createElement(Ht,{htmlFor:"ks-pages-element-align"},"Horizontal alignment"),f.createElement(lt,{key:`${t.id}-align`,id:"ks-pages-element-align",defaultValue:t.align??e.align??"stretch",onChange:l=>s(t.id,"align",l.target.value)},n.map(l=>f.createElement("option",{key:l,value:l},l)))),f.createElement(Q,{type:"button",variant:"danger",onClick:()=>o(t.id)},"Remove element"))}var ad=t=>t.sections.flatMap(e=>e.rows).flatMap(e=>e.columns),Pi=(t,e)=>ad(t).flatMap(n=>n.elements).find(n=>n.id===e),Ci=(t,e)=>{let n=t.sections.flatMap(r=>r.rows);return[...t.sections,...n,...ad(t)].find(r=>r.id===e)};var fh=[{kind:"section",selector:"[data-section-id]",id:t=>t.dataset.sectionId,group:()=>"page"},{kind:"row",selector:"[data-row-id]",id:t=>t.dataset.rowId,group:t=>t.closest("[data-section-id]").dataset.sectionId},{kind:"column",selector:"[data-column-id]",id:t=>t.dataset.columnId,group:t=>t.closest("[data-row-id]").dataset.rowId}],hh=[["[data-element-id]","Element"],["[data-column-id]","Column"],["[data-row-id]","Row"],["[data-section-id]","Section"]],ph=t=>hh.map(([e,n])=>[t.closest(e),n]).filter(([e])=>e).reduce((e,n)=>!e||e[0].contains(n[0])?n:e,null),gh=[yo.configure({preventActivation:()=>!1}),mo];function jo({name:t,publish_url:e,elements:n,canvas:r,document:i,elements_url:s,sections_url:a,columns_url:o,rows_url:l,nodes_url:d,arrangements:u,defaults:c,shares:g,value_names:p,looks:b=[],samples:_=[],sample:k,samples_url:x,history_url:h,live_url:m,back_url:v,undo_url:y,redo_url:O,undoable:C,redoable:W,token:P}){let[L,gt]=rt(r),[Tt,zt]=rt(C),[Zt,yr]=rt(W),[qt,Mi]=rt(i),[Sn,Qt]=rt(null),[Ot,Xt]=rt(null),[Ii,Ve]=rt(null),[ue,Di]=rt("desktop"),fe=qe(null),Ft=qe(null),[Ai,En]=rt(null),[he,On]=rt([]),pe=qe(null),nt=qe(null),ct=qe(null),R=({canvas:w,document:E,undoable:S,redoable:T})=>{Ve(null),gt(w),Mi(E),S!==void 0&&zt(S),T!==void 0&&yr(T)},vt=({error:w})=>Ve(w),br=w=>{Ve(null),Xt(w)},_r=w=>{ct.current.querySelectorAll("[data-hovered]").forEach(dt=>delete dt.dataset.hovered);let[E,S]=ph(w.target)??[];if(!E)return;E.dataset.hovered="";let T=S==="Element"&&Pi(qt,E.dataset.elementId);E.dataset.kind=T?n.find(dt=>dt.key===T.key)?.name??S:S},wr=w=>{let E=w.target.closest("[data-element-id]");if(E)return w.preventDefault(),Xt(null),Qt(E.dataset.elementId);let S=w.target.closest("[data-column-id]");S&&(Qt(null),Xt({kind:"column",id:S.dataset.columnId,rowId:S.closest("[data-row-id]").dataset.rowId,sectionId:S.closest("[data-section-id]").dataset.sectionId}))},_t=Sn&&Pi(qt,Sn),Re=_t&&n.find(w=>w.key===_t.key);Yo(()=>{ct.current.innerHTML=L},[L]),He(()=>{let w=new wc;pe.current=w;let E=[...nt.current.querySelectorAll("[data-element-key]")].map(T=>new $e({id:`palette-${T.dataset.elementKey}`,element:T,feedback:"clone",data:{key:T.dataset.elementKey}},w)),S=()=>ct.current.querySelectorAll("[data-drop-target]").forEach(T=>delete T.dataset.dropTarget);return w.monitor.addEventListener("dragover",({operation:T})=>{S(),T.target?.element&&(T.target.element.dataset.dropTarget="")}),w.monitor.addEventListener("dragend",({operation:T,canceled:dt})=>{S();let{source:j,target:J}=T;if(dt||!J)return;if(j.data?.key)return J.data?.columnId&&qc(s,P,j.data.key,J.data.columnId).then(R);if(j.type!=="element")return Do(d,P,j.id,j.group==="page"?null:j.group,j.index).then(R,vt);let je=j.group===j.initialGroup&&J.data?.columnId&&J.data.columnId!==j.group?J.data.columnId:j.group,Sr=je===j.group?j.index:0;Do(d,P,j.id,je,Sr).then(R,vt)}),()=>{E.forEach(T=>T.destroy()),w.destroy()}},[]),He(()=>{let w=[...ct.current.querySelectorAll("[data-column-id]")].map(S=>new bn({id:`drop-${S.dataset.columnId}`,element:S,data:{columnId:S.dataset.columnId},accept:T=>!T.type||T.type==="element"},pe.current)),E=[...ct.current.querySelectorAll("[data-element-id]")].map(S=>{let T=S.closest("[data-column-id]"),dt=[...T.children].indexOf(S);return new kn({id:S.dataset.elementId,element:S,index:dt,group:T.dataset.columnId,type:"element",accept:"element",sensors:gh},pe.current)});return()=>[...w,...E].forEach(S=>S.destroy())},[L]);let xr=w=>[["section","[data-section-id]","sectionId","Section"],["row","[data-row-id]","rowId","Row"],["column","[data-column-id]","columnId","Column"],["element","[data-element-id]","elementId",null]].flatMap(([E,S,T,dt])=>{let j=w.closest(S);if(!j)return[];let J=E==="element"&&Pi(qt,j.dataset[T]);return[{kind:E,id:j.dataset[T],label:dt??n.find(je=>je.key===J?.key)?.name??"Element"}]}),Pn=({kind:w,id:E})=>{if(Ve(null),w==="element")return Xt(null),Qt(E);let S=ct.current.querySelector(`[data-${w}-id="${E}"]`);Qt(null),Xt({kind:w,id:E,rowId:S.closest("[data-row-id]")?.dataset.rowId,sectionId:S.closest("[data-section-id]")?.dataset.sectionId})};He(()=>{let w=he[he.length-2],E=S=>{S.key!=="Escape"||!w||S.target.closest("input, textarea, select")||Pn(w)};return window.document.addEventListener("keydown",E),()=>window.document.removeEventListener("keydown",E)},[he]);let Pt=Sn??Ot?.id;He(()=>{ct.current.querySelectorAll("[data-selected]").forEach(T=>delete T.dataset.selected);let w=Pt&&ct.current.querySelector(`[data-element-id="${Pt}"], [data-column-id="${Pt}"], [data-row-id="${Pt}"], [data-section-id="${Pt}"]`);if(!w)return On([]),En(null);w.dataset.selected="",On(xr(w));let E=fe.current.getBoundingClientRect(),S=w.getBoundingClientRect();En({top:S.top-E.top,left:S.left-E.left})},[L,Pt,ue]),He(()=>{let w=window.document.createElement("span"),E=fh.flatMap(({kind:S,selector:T,id:dt,group:j})=>[...ct.current.querySelectorAll(T)].map(J=>new kn({id:dt(J),element:J,index:[...J.parentElement.children].indexOf(J),group:j(J),type:S,accept:S,handle:Pt===dt(J)?Ft.current:w},pe.current)));return()=>E.forEach(S=>S.destroy())},[L,Pt]);let Ti=w=>{let E=w.kind==="column"&&Ci(qt,w.rowId),S=E?{wide:g[E.columns.length]??"1/1"}:{};return{...c[w.kind],...S,...Ci(qt,w.id)}},kr=()=>Si(d,P,Pt).then(w=>{R(w),Xt(null),Qt(null)},vt);return f.createElement("div",{"data-builder":!0,className:"fixed inset-0 flex flex-col bg-(--ks-color-surface) text-(--ks-color-text) dark:bg-(--ks-color-surface-dark) dark:text-(--ks-color-text-dark)"},f.createElement("header",{"data-builder-top-bar":!0,className:"flex h-14 shrink-0 items-center justify-between gap-4 border-b border-(--ks-color-border) dark:border-(--ks-color-border-dark) px-4"},f.createElement("div",{className:"flex min-w-0 items-center gap-2"},f.createElement("a",{href:v,className:"text-sm hover:underline"},"Back"),f.createElement("h1",{className:"truncate text-base font-semibold"},t)),f.createElement("div",{className:"flex items-center gap-4 max-lg:hidden"},f.createElement(No,{chosen:ue,onChoose:Di}),f.createElement(zo,null),f.createElement(Fo,{looks:b}),f.createElement(Lo,{samples:_,chosen:k,onChoose:w=>Zc(x,P,w).then(R,vt)})),f.createElement("div",{className:"flex items-center gap-2"},f.createElement(Q,{type:"button",size:"sm",variant:"secondary",disabled:!Tt,title:Tt?"Undo the last change":"Nothing to undo",onClick:()=>Ao(y,P).then(R,vt)},"\u21B6 Undo"),f.createElement(Q,{type:"button",size:"sm",variant:"secondary",disabled:!Zt,title:Zt?"Redo the change you undid":"Nothing to redo",onClick:()=>Ao(O,P).then(R,vt)},"\u21B7 Redo"),m&&f.createElement("a",{href:m,className:"text-sm whitespace-nowrap hover:underline"},"View live"),f.createElement("a",{href:h,className:"text-sm hover:underline"},"History"),f.createElement("form",{method:"post",action:e},f.createElement("input",{type:"hidden",name:"authenticity_token",value:P}),f.createElement(Q,{type:"submit",size:"sm"},"Publish")))),f.createElement("div",{className:"relative flex min-h-0 flex-1"},f.createElement(rd,{ref:nt,elements:n},f.createElement(Q,{type:"button",variant:"secondary",onClick:()=>Uc(a,P).then(R)},"Add section")),f.createElement("main",{"data-page-frame":!0,className:"min-w-0 flex-1 overflow-auto bg-surface-200 p-8 dark:bg-surface-900"},f.createElement("div",{ref:fe,"data-page-sheet":!0,"data-theme":vr.find(w=>w.key===ue).theme,style:{width:vr.find(w=>w.key===ue).width,colorScheme:vr.find(w=>w.key===ue).theme},className:"relative mx-auto min-h-full max-w-full bg-[Canvas] shadow-lg ring-1 ring-black/5"},f.createElement("div",{ref:ct,"data-page-canvas":!0,className:"@container min-h-full px-6 [&_[data-hidden]]:opacity-40 bg-(--ks-color-page) text-(--ks-color-on-page) dark:bg-(--ks-color-page-dark) dark:text-(--ks-color-on-page-dark) [&_[data-selected]]:relative [&_[data-selected]]:outline-2 [&_[data-selected]]:outline-(--ks-color-accent) [&_[data-hovered]]:relative [&_[data-hovered]]:outline-1 [&_[data-hovered]]:outline-(--ks-color-accent) [&_[data-hovered]]:before:absolute [&_[data-hovered]]:before:-top-5 [&_[data-hovered]]:before:left-0 [&_[data-hovered]]:before:z-10 [&_[data-hovered]]:before:rounded-t [&_[data-hovered]]:before:bg-(--ks-color-accent) [&_[data-hovered]]:before:px-1.5 [&_[data-hovered]]:before:text-xs [&_[data-hovered]]:before:leading-5 [&_[data-hovered]]:before:text-white [&_[data-hovered]]:before:content-[attr(data-kind)] [&_[data-column-id]:empty]:min-h-16 [&_[data-column-id]:empty]:items-center [&_[data-column-id]:empty]:justify-center [&_[data-column-id]:empty]:rounded-md [&_[data-column-id]:empty]:border-2 [&_[data-column-id]:empty]:border-dashed [&_[data-column-id]:empty]:border-(--ks-color-border-strong) [&_[data-column-id]:empty]:after:text-sm [&_[data-column-id]:empty]:after:text-(--ks-color-icon) [&_[data-column-id]:empty]:after:content-['Drop_an_element_here'] [&_[data-drop-target]]:outline-2 [&_[data-drop-target]]:outline-dashed [&_[data-drop-target]]:outline-(--ks-color-accent)",onClick:wr,onMouseOver:_r,onMouseLeave:()=>ct.current.querySelectorAll("[data-hovered]").forEach(w=>delete w.dataset.hovered)}),f.createElement(ed,{ref:Ft,place:Ai,onRemove:kr,onDuplicate:()=>Gc(d,P,Pt).then(R,vt)}))),f.createElement("aside",{"data-settings-panel":!0,className:"w-72 shrink-0 overflow-y-auto border-l border-(--ks-color-border) bg-(--ks-color-surface) p-4 dark:border-(--ks-color-border-dark) dark:bg-(--ks-color-surface-dark)"},f.createElement(Wo,{path:he,onChoose:Pn}),!Ot&&!Re&&f.createElement("p",{className:"ks-hint"},"Select something on the page to change it."),Ot&&f.createElement(To,{node:Ot,values:Ti(Ot),arrangements:u,onArrange:(w,E,S)=>Io(d,P,w,E,S).then(R,vt),refusal:Ii,onSelect:br,onRemove:w=>Si(d,P,w).then(E=>{R(E),Xt(null)},vt),onAddColumn:w=>Yc(o,P,w).then(R),onAddRow:w=>Kc(l,P,w).then(R)}),Re&&f.createElement(Ro,{element:_t,definition:Re,alignments:u.element.align,onRemove:w=>Si(d,P,w).then(E=>{R(E),Qt(null)}),onArrange:(w,E,S)=>Io(d,P,w,E,S).then(R),valueNames:p,onBind:(w,E,S)=>Jc(s,P,_t.id,w,E,S).then(R,vt),onChange:(w,E)=>Xc(s,P,_t.id,w,E).then(R)}),(_t||Ot&&Ot.kind!=="column")&&f.createElement($o,{key:_t?.id??Ot.id,condition:(_t??Ci(qt,Ot.id))?.show_when,valueNames:p,onChange:(w,E)=>Qc(d,P,_t?.id??Ot.id,w,E).then(R,vt)}))))}Go("keystone_ui_pages/editor",jo);Qo(document,Xo);})();
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "keystone_ui/pages/operations"
|
|
4
|
+
|
|
5
|
+
module KeystoneUi
|
|
6
|
+
module Pages
|
|
7
|
+
module EditsPages
|
|
8
|
+
extend ActiveSupport::Concern
|
|
9
|
+
|
|
10
|
+
included do
|
|
11
|
+
rescue_from InvalidDocument do |refusal|
|
|
12
|
+
render json: { error: refusal.message }, status: :unprocessable_entity
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def page
|
|
19
|
+
@page ||= owned_pages.find(params[:page_id])
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def changed(document)
|
|
23
|
+
page.edit(document) unless document == page.document
|
|
24
|
+
shown
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def shown
|
|
28
|
+
render json: { canvas: helpers.editor_canvas(page), document: page.document, undoable: page.undo_history.any?, redoable: page.undone_changes.any? }
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module HostChecks
|
|
6
|
+
private
|
|
7
|
+
|
|
8
|
+
def owned_pages
|
|
9
|
+
return Page.all unless KeystoneUi::Pages.owner_method
|
|
10
|
+
|
|
11
|
+
Page.where(owner: page_owner)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def page_owner
|
|
15
|
+
send(KeystoneUi::Pages.owner_method) if KeystoneUi::Pages.owner_method
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def refuse
|
|
19
|
+
return head(:not_found) unless KeystoneUi::Pages.refusal_method
|
|
20
|
+
|
|
21
|
+
send(KeystoneUi::Pages.refusal_method)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class BaseController < KeystoneUi::Pages.base_controller.constantize
|
|
7
|
+
include HostChecks
|
|
8
|
+
helper KeystoneUiHelper
|
|
9
|
+
helper DrawingHelper
|
|
10
|
+
helper EditorHelper
|
|
11
|
+
helper KeystoneUi::React::MountHelper
|
|
12
|
+
layout -> { KeystoneUi::Pages.editor_layout }
|
|
13
|
+
|
|
14
|
+
before_action :refuse_unless_editor
|
|
15
|
+
|
|
16
|
+
private
|
|
17
|
+
|
|
18
|
+
def refuse_unless_editor
|
|
19
|
+
refuse unless editor?
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def editor?
|
|
23
|
+
KeystoneUi::Pages.edit_check_method.nil? || send(KeystoneUi::Pages.edit_check_method)
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class ColumnsController < BaseController
|
|
7
|
+
include EditsPages
|
|
8
|
+
|
|
9
|
+
def create
|
|
10
|
+
changed(Operations.add_column(page.document, row_id: params.require(:row_id)))
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class DocumentsController < BaseController
|
|
7
|
+
include EditsPages
|
|
8
|
+
|
|
9
|
+
def update
|
|
10
|
+
changed(Operations.check(params.require(:document).to_unsafe_h.to_h))
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class EditHistoryController < BaseController
|
|
7
|
+
include EditsPages
|
|
8
|
+
|
|
9
|
+
def undo
|
|
10
|
+
page.undo
|
|
11
|
+
shown
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def redo
|
|
15
|
+
page.redo
|
|
16
|
+
shown
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class ElementsController < BaseController
|
|
7
|
+
include EditsPages
|
|
8
|
+
|
|
9
|
+
def create
|
|
10
|
+
changed(Operations.add(page.document, params.require(:key), column_id: params.require(:column_id)))
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def bind
|
|
14
|
+
changed(Operations.bind(page.document, element_id: params[:id], field: params.require(:field), name: params.require(:name), fallback: params[:fallback].presence))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def update
|
|
18
|
+
changed(Operations.set(page.document, element_id: params[:id], field: params.require(:field), value: field_value))
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
private
|
|
22
|
+
|
|
23
|
+
def field_value
|
|
24
|
+
value = params.to_unsafe_h["value"]
|
|
25
|
+
value.is_a?(Array) ? value.map { |entry| entry.to_h.stringify_keys } : value.to_s
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module KeystoneUi
|
|
4
|
+
module Pages
|
|
5
|
+
module Manage
|
|
6
|
+
class LivesController < BaseController
|
|
7
|
+
layout -> { KeystoneUi::Pages.layout }
|
|
8
|
+
|
|
9
|
+
def show
|
|
10
|
+
page = owned_pages.find(params[:page_id])
|
|
11
|
+
@version = page.live_version
|
|
12
|
+
return refuse if @version.nil?
|
|
13
|
+
|
|
14
|
+
@values = Values.sample(page, helpers.chosen_sample(page))
|
|
15
|
+
render "keystone_ui/pages/pages/show"
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|