@oneclick.dev/cms-core-modules 0.0.39 → 0.0.40
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.
- package/dist/index.cjs.js +12 -12
- package/dist/index.mjs +8756 -10107
- package/dist/src/product-collections/components/overview/ListView.vue.d.ts +12 -0
- package/dist/src/product-collections/types.d.ts +1 -0
- package/dist/src/products/components/detail/Collections.vue.d.ts +14 -0
- package/package.json +2 -2
- package/dist/src/product-collections/components/detail/Inventory.vue.d.ts +0 -2
- package/dist/src/product-collections/components/detail/Price.vue.d.ts +0 -2
- package/dist/src/product-collections/components/detail/Shipping.vue.d.ts +0 -2
- package/dist/src/product-collections/components/detail/price/UnitPriceDialog.vue.d.ts +0 -17
- package/dist/src/product-collections/components/detail/variants/Option.vue.d.ts +0 -33
- package/dist/src/product-collections/components/detail/variants/VariantList.vue.d.ts +0 -38
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var Hs=Object.defineProperty;var qs=(t,n,o)=>n in t?Hs(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o;var He=(t,n,o)=>qs(t,typeof n!="symbol"?n+"":n,o);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),Z=require("@oneclick.dev/cms-kit"),Gs=require("clsx"),Ws=require("tailwind-merge"),z=require("lucide-vue-next"),Jr=require("@formkit/drag-and-drop"),Xs=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=Z.useModuleRoute();return(o,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))}}),Ys={name:"Table",description:"Manage tables and structured data.",icon:"mdi-table",version:"1.0.0"},Zs={getItems:{label:"Fetch items",type:"flow"},viewable:{label:"Viewable",type:"checkbox",default:!1},editable:{label:"Editable",type:"checkbox",default:!1},deletable:{label:"Deletable",type:"checkbox",default:!1},addable:{label:"Addable",type:"checkbox",default:!1},searchable:{label:"Searchable",type:"checkbox",default:!1},downloadable:{label:"Downloadable",type:"checkbox",default:!1},allowBulkActions:{label:"Allow Bulk Actions",type:"checkbox",default:!1}};/**
|
|
2
2
|
* table-core
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) TanStack
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
* LICENSE.md file in the root directory of this source tree.
|
|
8
8
|
*
|
|
9
9
|
* @license MIT
|
|
10
|
-
*/function
|
|
10
|
+
*/function Ut(t,n){return typeof t=="function"?t(n):t}function it(t,n){return o=>{n.setState(r=>({...r,[t]:Ut(o,r[t])}))}}function Uo(t){return t instanceof Function}function Ks(t){return Array.isArray(t)&&t.every(n=>typeof n=="number")}function Js(t,n){const o=[],r=l=>{l.forEach(a=>{o.push(a);const i=n(a);i!=null&&i.length&&r(i)})};return r(t),o}function ue(t,n,o){let r=[],l;return a=>{let i;o.key&&o.debug&&(i=Date.now());const u=t(a);if(!(u.length!==r.length||u.some((c,f)=>r[f]!==c)))return l;r=u;let d;if(o.key&&o.debug&&(d=Date.now()),l=n(...u),o==null||o.onChange==null||o.onChange(l),o.key&&o.debug&&o!=null&&o.debug()){const c=Math.round((Date.now()-i)*100)/100,f=Math.round((Date.now()-d)*100)/100,m=f/16,p=(g,v)=>{for(g=String(g);g.length<v;)g=" "+g;return g};console.info(`%c⏱ ${p(f,5)} /${p(c,5)} ms`,`
|
|
11
11
|
font-size: .6rem;
|
|
12
12
|
font-weight: bold;
|
|
13
|
-
color: hsl(${Math.max(0,Math.min(120-120*m,120))}deg 100% 31%);`,o==null?void 0:o.key)}return l}}function pe(t,n,o,r){return{debug:()=>{var l;return(l=t==null?void 0:t.debugAll)!=null?l:t[n]},key:process.env.NODE_ENV==="development"&&o,onChange:r}}function Ks(t,n,o,r){const l=()=>{var i;return(i=a.getValue())!=null?i:t.options.renderFallbackValue},a={id:`${n.id}_${o.id}`,row:n,column:o,getValue:()=>n.getValue(r),renderValue:l,getContext:ce(()=>[t,o,n,a],(i,d,s,u)=>({table:i,column:d,row:s,cell:u,getValue:u.getValue,renderValue:u.renderValue}),pe(t.options,"debugCells","cell.getContext"))};return t._features.forEach(i=>{i.createCell==null||i.createCell(a,o,n,t)},{}),a}function Qs(t,n,o,r){var l,a;const d={...t._getDefaultColumnDef(),...n},s=d.accessorKey;let u=(l=(a=d.id)!=null?a:s?typeof String.prototype.replaceAll=="function"?s.replaceAll(".","_"):s.replace(/\./g,"_"):void 0)!=null?l:typeof d.header=="string"?d.header:void 0,c;if(d.accessorFn?c=d.accessorFn:s&&(s.includes(".")?c=m=>{let f=m;for(const g of s.split(".")){var v;f=(v=f)==null?void 0:v[g],process.env.NODE_ENV!=="production"&&f===void 0&&console.warn(`"${g}" in deeply nested key "${s}" returned undefined.`)}return f}:c=m=>m[d.accessorKey]),!u)throw process.env.NODE_ENV!=="production"?new Error(d.accessorFn?"Columns require an id when using an accessorFn":"Columns require an id when using a non-string header"):new Error;let p={id:`${String(u)}`,accessorFn:c,parent:r,depth:o,columnDef:d,columns:[],getFlatColumns:ce(()=>[!0],()=>{var m;return[p,...(m=p.columns)==null?void 0:m.flatMap(f=>f.getFlatColumns())]},pe(t.options,"debugColumns","column.getFlatColumns")),getLeafColumns:ce(()=>[t._getOrderColumnsFn()],m=>{var f;if((f=p.columns)!=null&&f.length){let v=p.columns.flatMap(g=>g.getLeafColumns());return m(v)}return[p]},pe(t.options,"debugColumns","column.getLeafColumns"))};for(const m of t._features)m.createColumn==null||m.createColumn(p,t);return p}const Xe="debugHeaders";function kl(t,n,o){var r;let a={id:(r=o.id)!=null?r:n.id,column:n,index:o.index,isPlaceholder:!!o.isPlaceholder,placeholderId:o.placeholderId,depth:o.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const i=[],d=s=>{s.subHeaders&&s.subHeaders.length&&s.subHeaders.map(d),i.push(s)};return d(a),i},getContext:()=>({table:t,header:a,column:n})};return t._features.forEach(i=>{i.createHeader==null||i.createHeader(a,t)}),a}const eu={createTable:t=>{t.getHeaderGroups=ce(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r,l)=>{var a,i;const d=(a=r==null?void 0:r.map(p=>o.find(m=>m.id===p)).filter(Boolean))!=null?a:[],s=(i=l==null?void 0:l.map(p=>o.find(m=>m.id===p)).filter(Boolean))!=null?i:[],u=o.filter(p=>!(r!=null&&r.includes(p.id))&&!(l!=null&&l.includes(p.id)));return fo(n,[...d,...u,...s],t)},pe(t.options,Xe,"getHeaderGroups")),t.getCenterHeaderGroups=ce(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r,l)=>(o=o.filter(a=>!(r!=null&&r.includes(a.id))&&!(l!=null&&l.includes(a.id))),fo(n,o,t,"center")),pe(t.options,Xe,"getCenterHeaderGroups")),t.getLeftHeaderGroups=ce(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left],(n,o,r)=>{var l;const a=(l=r==null?void 0:r.map(i=>o.find(d=>d.id===i)).filter(Boolean))!=null?l:[];return fo(n,a,t,"left")},pe(t.options,Xe,"getLeftHeaderGroups")),t.getRightHeaderGroups=ce(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.right],(n,o,r)=>{var l;const a=(l=r==null?void 0:r.map(i=>o.find(d=>d.id===i)).filter(Boolean))!=null?l:[];return fo(n,a,t,"right")},pe(t.options,Xe,"getRightHeaderGroups")),t.getFooterGroups=ce(()=>[t.getHeaderGroups()],n=>[...n].reverse(),pe(t.options,Xe,"getFooterGroups")),t.getLeftFooterGroups=ce(()=>[t.getLeftHeaderGroups()],n=>[...n].reverse(),pe(t.options,Xe,"getLeftFooterGroups")),t.getCenterFooterGroups=ce(()=>[t.getCenterHeaderGroups()],n=>[...n].reverse(),pe(t.options,Xe,"getCenterFooterGroups")),t.getRightFooterGroups=ce(()=>[t.getRightHeaderGroups()],n=>[...n].reverse(),pe(t.options,Xe,"getRightFooterGroups")),t.getFlatHeaders=ce(()=>[t.getHeaderGroups()],n=>n.map(o=>o.headers).flat(),pe(t.options,Xe,"getFlatHeaders")),t.getLeftFlatHeaders=ce(()=>[t.getLeftHeaderGroups()],n=>n.map(o=>o.headers).flat(),pe(t.options,Xe,"getLeftFlatHeaders")),t.getCenterFlatHeaders=ce(()=>[t.getCenterHeaderGroups()],n=>n.map(o=>o.headers).flat(),pe(t.options,Xe,"getCenterFlatHeaders")),t.getRightFlatHeaders=ce(()=>[t.getRightHeaderGroups()],n=>n.map(o=>o.headers).flat(),pe(t.options,Xe,"getRightFlatHeaders")),t.getCenterLeafHeaders=ce(()=>[t.getCenterFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),pe(t.options,Xe,"getCenterLeafHeaders")),t.getLeftLeafHeaders=ce(()=>[t.getLeftFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),pe(t.options,Xe,"getLeftLeafHeaders")),t.getRightLeafHeaders=ce(()=>[t.getRightFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),pe(t.options,Xe,"getRightLeafHeaders")),t.getLeafHeaders=ce(()=>[t.getLeftHeaderGroups(),t.getCenterHeaderGroups(),t.getRightHeaderGroups()],(n,o,r)=>{var l,a,i,d,s,u;return[...(l=(a=n[0])==null?void 0:a.headers)!=null?l:[],...(i=(d=o[0])==null?void 0:d.headers)!=null?i:[],...(s=(u=r[0])==null?void 0:u.headers)!=null?s:[]].map(c=>c.getLeafHeaders()).flat()},pe(t.options,Xe,"getLeafHeaders"))}};function fo(t,n,o,r){var l,a;let i=0;const d=function(m,f){f===void 0&&(f=1),i=Math.max(i,f),m.filter(v=>v.getIsVisible()).forEach(v=>{var g;(g=v.columns)!=null&&g.length&&d(v.columns,f+1)},0)};d(t);let s=[];const u=(m,f)=>{const v={depth:f,id:[r,`${f}`].filter(Boolean).join("_"),headers:[]},g=[];m.forEach(h=>{const y=[...g].reverse()[0],b=h.column.depth===v.depth;let _,k=!1;if(b&&h.column.parent?_=h.column.parent:(_=h.column,k=!0),y&&(y==null?void 0:y.column)===_)y.subHeaders.push(h);else{const x=kl(o,_,{id:[r,f,_.id,h==null?void 0:h.id].filter(Boolean).join("_"),isPlaceholder:k,placeholderId:k?`${g.filter(C=>C.column===_).length}`:void 0,depth:f,index:g.length});x.subHeaders.push(h),g.push(x)}v.headers.push(h),h.headerGroup=v}),s.push(v),f>0&&u(g,f-1)},c=n.map((m,f)=>kl(o,m,{depth:i,index:f}));u(c,i-1),s.reverse();const p=m=>m.filter(v=>v.column.getIsVisible()).map(v=>{let g=0,h=0,y=[0];v.subHeaders&&v.subHeaders.length?(y=[],p(v.subHeaders).forEach(_=>{let{colSpan:k,rowSpan:x}=_;g+=k,y.push(x)})):g=1;const b=Math.min(...y);return h=h+b,v.colSpan=g,v.rowSpan=h,{colSpan:g,rowSpan:h}});return p((l=(a=s[0])==null?void 0:a.headers)!=null?l:[]),s}const tl=(t,n,o,r,l,a,i)=>{let d={id:n,index:r,original:o,depth:l,parentId:i,_valuesCache:{},_uniqueValuesCache:{},getValue:s=>{if(d._valuesCache.hasOwnProperty(s))return d._valuesCache[s];const u=t.getColumn(s);if(u!=null&&u.accessorFn)return d._valuesCache[s]=u.accessorFn(d.original,r),d._valuesCache[s]},getUniqueValues:s=>{if(d._uniqueValuesCache.hasOwnProperty(s))return d._uniqueValuesCache[s];const u=t.getColumn(s);if(u!=null&&u.accessorFn)return u.columnDef.getUniqueValues?(d._uniqueValuesCache[s]=u.columnDef.getUniqueValues(d.original,r),d._uniqueValuesCache[s]):(d._uniqueValuesCache[s]=[d.getValue(s)],d._uniqueValuesCache[s])},renderValue:s=>{var u;return(u=d.getValue(s))!=null?u:t.options.renderFallbackValue},subRows:[],getLeafRows:()=>Js(d.subRows,s=>s.subRows),getParentRow:()=>d.parentId?t.getRow(d.parentId,!0):void 0,getParentRows:()=>{let s=[],u=d;for(;;){const c=u.getParentRow();if(!c)break;s.push(c),u=c}return s.reverse()},getAllCells:ce(()=>[t.getAllLeafColumns()],s=>s.map(u=>Ks(t,d,u,u.id)),pe(t.options,"debugRows","getAllCells")),_getAllCellsByColumnId:ce(()=>[d.getAllCells()],s=>s.reduce((u,c)=>(u[c.column.id]=c,u),{}),pe(t.options,"debugRows","getAllCellsByColumnId"))};for(let s=0;s<t._features.length;s++){const u=t._features[s];u==null||u.createRow==null||u.createRow(d,t)}return d},tu={createColumn:(t,n)=>{t._getFacetedRowModel=n.options.getFacetedRowModel&&n.options.getFacetedRowModel(n,t.id),t.getFacetedRowModel=()=>t._getFacetedRowModel?t._getFacetedRowModel():n.getPreFilteredRowModel(),t._getFacetedUniqueValues=n.options.getFacetedUniqueValues&&n.options.getFacetedUniqueValues(n,t.id),t.getFacetedUniqueValues=()=>t._getFacetedUniqueValues?t._getFacetedUniqueValues():new Map,t._getFacetedMinMaxValues=n.options.getFacetedMinMaxValues&&n.options.getFacetedMinMaxValues(n,t.id),t.getFacetedMinMaxValues=()=>{if(t._getFacetedMinMaxValues)return t._getFacetedMinMaxValues()}}},ja=(t,n,o)=>{var r,l;const a=o==null||(r=o.toString())==null?void 0:r.toLowerCase();return!!(!((l=t.getValue(n))==null||(l=l.toString())==null||(l=l.toLowerCase())==null)&&l.includes(a))};ja.autoRemove=t=>_t(t);const Ua=(t,n,o)=>{var r;return!!(!((r=t.getValue(n))==null||(r=r.toString())==null)&&r.includes(o))};Ua.autoRemove=t=>_t(t);const Ha=(t,n,o)=>{var r;return((r=t.getValue(n))==null||(r=r.toString())==null?void 0:r.toLowerCase())===(o==null?void 0:o.toLowerCase())};Ha.autoRemove=t=>_t(t);const Ga=(t,n,o)=>{var r;return(r=t.getValue(n))==null?void 0:r.includes(o)};Ga.autoRemove=t=>_t(t);const qa=(t,n,o)=>!o.some(r=>{var l;return!((l=t.getValue(n))!=null&&l.includes(r))});qa.autoRemove=t=>_t(t)||!(t!=null&&t.length);const Wa=(t,n,o)=>o.some(r=>{var l;return(l=t.getValue(n))==null?void 0:l.includes(r)});Wa.autoRemove=t=>_t(t)||!(t!=null&&t.length);const Za=(t,n,o)=>t.getValue(n)===o;Za.autoRemove=t=>_t(t);const Ya=(t,n,o)=>t.getValue(n)==o;Ya.autoRemove=t=>_t(t);const nl=(t,n,o)=>{let[r,l]=o;const a=t.getValue(n);return a>=r&&a<=l};nl.resolveFilterValue=t=>{let[n,o]=t,r=typeof n!="number"?parseFloat(n):n,l=typeof o!="number"?parseFloat(o):o,a=n===null||Number.isNaN(r)?-1/0:r,i=o===null||Number.isNaN(l)?1/0:l;if(a>i){const d=a;a=i,i=d}return[a,i]};nl.autoRemove=t=>_t(t)||_t(t[0])&&_t(t[1]);const Bt={includesString:ja,includesStringSensitive:Ua,equalsString:Ha,arrIncludes:Ga,arrIncludesAll:qa,arrIncludesSome:Wa,equals:Za,weakEquals:Ya,inNumberRange:nl};function _t(t){return t==null||t===""}const nu={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:t=>({columnFilters:[],...t}),getDefaultOptions:t=>({onColumnFiltersChange:it("columnFilters",t),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(t,n)=>{t.getAutoFilterFn=()=>{const o=n.getCoreRowModel().flatRows[0],r=o==null?void 0:o.getValue(t.id);return typeof r=="string"?Bt.includesString:typeof r=="number"?Bt.inNumberRange:typeof r=="boolean"||r!==null&&typeof r=="object"?Bt.equals:Array.isArray(r)?Bt.arrIncludes:Bt.weakEquals},t.getFilterFn=()=>{var o,r;return Uo(t.columnDef.filterFn)?t.columnDef.filterFn:t.columnDef.filterFn==="auto"?t.getAutoFilterFn():(o=(r=n.options.filterFns)==null?void 0:r[t.columnDef.filterFn])!=null?o:Bt[t.columnDef.filterFn]},t.getCanFilter=()=>{var o,r,l;return((o=t.columnDef.enableColumnFilter)!=null?o:!0)&&((r=n.options.enableColumnFilters)!=null?r:!0)&&((l=n.options.enableFilters)!=null?l:!0)&&!!t.accessorFn},t.getIsFiltered=()=>t.getFilterIndex()>-1,t.getFilterValue=()=>{var o;return(o=n.getState().columnFilters)==null||(o=o.find(r=>r.id===t.id))==null?void 0:o.value},t.getFilterIndex=()=>{var o,r;return(o=(r=n.getState().columnFilters)==null?void 0:r.findIndex(l=>l.id===t.id))!=null?o:-1},t.setFilterValue=o=>{n.setColumnFilters(r=>{const l=t.getFilterFn(),a=r==null?void 0:r.find(c=>c.id===t.id),i=Ht(o,a?a.value:void 0);if(Sl(l,i,t)){var d;return(d=r==null?void 0:r.filter(c=>c.id!==t.id))!=null?d:[]}const s={id:t.id,value:i};if(a){var u;return(u=r==null?void 0:r.map(c=>c.id===t.id?s:c))!=null?u:[]}return r!=null&&r.length?[...r,s]:[s]})}},createRow:(t,n)=>{t.columnFilters={},t.columnFiltersMeta={}},createTable:t=>{t.setColumnFilters=n=>{const o=t.getAllLeafColumns(),r=l=>{var a;return(a=Ht(n,l))==null?void 0:a.filter(i=>{const d=o.find(s=>s.id===i.id);if(d){const s=d.getFilterFn();if(Sl(s,i.value,d))return!1}return!0})};t.options.onColumnFiltersChange==null||t.options.onColumnFiltersChange(r)},t.resetColumnFilters=n=>{var o,r;t.setColumnFilters(n?[]:(o=(r=t.initialState)==null?void 0:r.columnFilters)!=null?o:[])},t.getPreFilteredRowModel=()=>t.getCoreRowModel(),t.getFilteredRowModel=()=>(!t._getFilteredRowModel&&t.options.getFilteredRowModel&&(t._getFilteredRowModel=t.options.getFilteredRowModel(t)),t.options.manualFiltering||!t._getFilteredRowModel?t.getPreFilteredRowModel():t._getFilteredRowModel())}};function Sl(t,n,o){return(t&&t.autoRemove?t.autoRemove(n,o):!1)||typeof n>"u"||typeof n=="string"&&!n}const ou=(t,n,o)=>o.reduce((r,l)=>{const a=l.getValue(t);return r+(typeof a=="number"?a:0)},0),ru=(t,n,o)=>{let r;return o.forEach(l=>{const a=l.getValue(t);a!=null&&(r>a||r===void 0&&a>=a)&&(r=a)}),r},lu=(t,n,o)=>{let r;return o.forEach(l=>{const a=l.getValue(t);a!=null&&(r<a||r===void 0&&a>=a)&&(r=a)}),r},au=(t,n,o)=>{let r,l;return o.forEach(a=>{const i=a.getValue(t);i!=null&&(r===void 0?i>=i&&(r=l=i):(r>i&&(r=i),l<i&&(l=i)))}),[r,l]},iu=(t,n)=>{let o=0,r=0;if(n.forEach(l=>{let a=l.getValue(t);a!=null&&(a=+a)>=a&&(++o,r+=a)}),o)return r/o},su=(t,n)=>{if(!n.length)return;const o=n.map(a=>a.getValue(t));if(!Xs(o))return;if(o.length===1)return o[0];const r=Math.floor(o.length/2),l=o.sort((a,i)=>a-i);return o.length%2!==0?l[r]:(l[r-1]+l[r])/2},uu=(t,n)=>Array.from(new Set(n.map(o=>o.getValue(t))).values()),du=(t,n)=>new Set(n.map(o=>o.getValue(t))).size,cu=(t,n)=>n.length,sr={sum:ou,min:ru,max:lu,extent:au,mean:iu,median:su,unique:uu,uniqueCount:du,count:cu},pu={getDefaultColumnDef:()=>({aggregatedCell:t=>{var n,o;return(n=(o=t.getValue())==null||o.toString==null?void 0:o.toString())!=null?n:null},aggregationFn:"auto"}),getInitialState:t=>({grouping:[],...t}),getDefaultOptions:t=>({onGroupingChange:it("grouping",t),groupedColumnMode:"reorder"}),createColumn:(t,n)=>{t.toggleGrouping=()=>{n.setGrouping(o=>o!=null&&o.includes(t.id)?o.filter(r=>r!==t.id):[...o??[],t.id])},t.getCanGroup=()=>{var o,r;return((o=t.columnDef.enableGrouping)!=null?o:!0)&&((r=n.options.enableGrouping)!=null?r:!0)&&(!!t.accessorFn||!!t.columnDef.getGroupingValue)},t.getIsGrouped=()=>{var o;return(o=n.getState().grouping)==null?void 0:o.includes(t.id)},t.getGroupedIndex=()=>{var o;return(o=n.getState().grouping)==null?void 0:o.indexOf(t.id)},t.getToggleGroupingHandler=()=>{const o=t.getCanGroup();return()=>{o&&t.toggleGrouping()}},t.getAutoAggregationFn=()=>{const o=n.getCoreRowModel().flatRows[0],r=o==null?void 0:o.getValue(t.id);if(typeof r=="number")return sr.sum;if(Object.prototype.toString.call(r)==="[object Date]")return sr.extent},t.getAggregationFn=()=>{var o,r;if(!t)throw new Error;return Uo(t.columnDef.aggregationFn)?t.columnDef.aggregationFn:t.columnDef.aggregationFn==="auto"?t.getAutoAggregationFn():(o=(r=n.options.aggregationFns)==null?void 0:r[t.columnDef.aggregationFn])!=null?o:sr[t.columnDef.aggregationFn]}},createTable:t=>{t.setGrouping=n=>t.options.onGroupingChange==null?void 0:t.options.onGroupingChange(n),t.resetGrouping=n=>{var o,r;t.setGrouping(n?[]:(o=(r=t.initialState)==null?void 0:r.grouping)!=null?o:[])},t.getPreGroupedRowModel=()=>t.getFilteredRowModel(),t.getGroupedRowModel=()=>(!t._getGroupedRowModel&&t.options.getGroupedRowModel&&(t._getGroupedRowModel=t.options.getGroupedRowModel(t)),t.options.manualGrouping||!t._getGroupedRowModel?t.getPreGroupedRowModel():t._getGroupedRowModel())},createRow:(t,n)=>{t.getIsGrouped=()=>!!t.groupingColumnId,t.getGroupingValue=o=>{if(t._groupingValuesCache.hasOwnProperty(o))return t._groupingValuesCache[o];const r=n.getColumn(o);return r!=null&&r.columnDef.getGroupingValue?(t._groupingValuesCache[o]=r.columnDef.getGroupingValue(t.original),t._groupingValuesCache[o]):t.getValue(o)},t._groupingValuesCache={}},createCell:(t,n,o,r)=>{t.getIsGrouped=()=>n.getIsGrouped()&&n.id===o.groupingColumnId,t.getIsPlaceholder=()=>!t.getIsGrouped()&&n.getIsGrouped(),t.getIsAggregated=()=>{var l;return!t.getIsGrouped()&&!t.getIsPlaceholder()&&!!((l=o.subRows)!=null&&l.length)}}};function fu(t,n,o){if(!(n!=null&&n.length)||!o)return t;const r=t.filter(a=>!n.includes(a.id));return o==="remove"?r:[...n.map(a=>t.find(i=>i.id===a)).filter(Boolean),...r]}const mu={getInitialState:t=>({columnOrder:[],...t}),getDefaultOptions:t=>({onColumnOrderChange:it("columnOrder",t)}),createColumn:(t,n)=>{t.getIndex=ce(o=>[Yn(n,o)],o=>o.findIndex(r=>r.id===t.id),pe(n.options,"debugColumns","getIndex")),t.getIsFirstColumn=o=>{var r;return((r=Yn(n,o)[0])==null?void 0:r.id)===t.id},t.getIsLastColumn=o=>{var r;const l=Yn(n,o);return((r=l[l.length-1])==null?void 0:r.id)===t.id}},createTable:t=>{t.setColumnOrder=n=>t.options.onColumnOrderChange==null?void 0:t.options.onColumnOrderChange(n),t.resetColumnOrder=n=>{var o;t.setColumnOrder(n?[]:(o=t.initialState.columnOrder)!=null?o:[])},t._getOrderColumnsFn=ce(()=>[t.getState().columnOrder,t.getState().grouping,t.options.groupedColumnMode],(n,o,r)=>l=>{let a=[];if(!(n!=null&&n.length))a=l;else{const i=[...n],d=[...l];for(;d.length&&i.length;){const s=i.shift(),u=d.findIndex(c=>c.id===s);u>-1&&a.push(d.splice(u,1)[0])}a=[...a,...d]}return fu(a,o,r)},pe(t.options,"debugTable","_getOrderColumnsFn"))}},ur=()=>({left:[],right:[]}),gu={getInitialState:t=>({columnPinning:ur(),...t}),getDefaultOptions:t=>({onColumnPinningChange:it("columnPinning",t)}),createColumn:(t,n)=>{t.pin=o=>{const r=t.getLeafColumns().map(l=>l.id).filter(Boolean);n.setColumnPinning(l=>{var a,i;if(o==="right"){var d,s;return{left:((d=l==null?void 0:l.left)!=null?d:[]).filter(p=>!(r!=null&&r.includes(p))),right:[...((s=l==null?void 0:l.right)!=null?s:[]).filter(p=>!(r!=null&&r.includes(p))),...r]}}if(o==="left"){var u,c;return{left:[...((u=l==null?void 0:l.left)!=null?u:[]).filter(p=>!(r!=null&&r.includes(p))),...r],right:((c=l==null?void 0:l.right)!=null?c:[]).filter(p=>!(r!=null&&r.includes(p)))}}return{left:((a=l==null?void 0:l.left)!=null?a:[]).filter(p=>!(r!=null&&r.includes(p))),right:((i=l==null?void 0:l.right)!=null?i:[]).filter(p=>!(r!=null&&r.includes(p)))}})},t.getCanPin=()=>t.getLeafColumns().some(r=>{var l,a,i;return((l=r.columnDef.enablePinning)!=null?l:!0)&&((a=(i=n.options.enableColumnPinning)!=null?i:n.options.enablePinning)!=null?a:!0)}),t.getIsPinned=()=>{const o=t.getLeafColumns().map(d=>d.id),{left:r,right:l}=n.getState().columnPinning,a=o.some(d=>r==null?void 0:r.includes(d)),i=o.some(d=>l==null?void 0:l.includes(d));return a?"left":i?"right":!1},t.getPinnedIndex=()=>{var o,r;const l=t.getIsPinned();return l?(o=(r=n.getState().columnPinning)==null||(r=r[l])==null?void 0:r.indexOf(t.id))!=null?o:-1:0}},createRow:(t,n)=>{t.getCenterVisibleCells=ce(()=>[t._getAllVisibleCells(),n.getState().columnPinning.left,n.getState().columnPinning.right],(o,r,l)=>{const a=[...r??[],...l??[]];return o.filter(i=>!a.includes(i.column.id))},pe(n.options,"debugRows","getCenterVisibleCells")),t.getLeftVisibleCells=ce(()=>[t._getAllVisibleCells(),n.getState().columnPinning.left],(o,r)=>(r??[]).map(a=>o.find(i=>i.column.id===a)).filter(Boolean).map(a=>({...a,position:"left"})),pe(n.options,"debugRows","getLeftVisibleCells")),t.getRightVisibleCells=ce(()=>[t._getAllVisibleCells(),n.getState().columnPinning.right],(o,r)=>(r??[]).map(a=>o.find(i=>i.column.id===a)).filter(Boolean).map(a=>({...a,position:"right"})),pe(n.options,"debugRows","getRightVisibleCells"))},createTable:t=>{t.setColumnPinning=n=>t.options.onColumnPinningChange==null?void 0:t.options.onColumnPinningChange(n),t.resetColumnPinning=n=>{var o,r;return t.setColumnPinning(n?ur():(o=(r=t.initialState)==null?void 0:r.columnPinning)!=null?o:ur())},t.getIsSomeColumnsPinned=n=>{var o;const r=t.getState().columnPinning;if(!n){var l,a;return!!((l=r.left)!=null&&l.length||(a=r.right)!=null&&a.length)}return!!((o=r[n])!=null&&o.length)},t.getLeftLeafColumns=ce(()=>[t.getAllLeafColumns(),t.getState().columnPinning.left],(n,o)=>(o??[]).map(r=>n.find(l=>l.id===r)).filter(Boolean),pe(t.options,"debugColumns","getLeftLeafColumns")),t.getRightLeafColumns=ce(()=>[t.getAllLeafColumns(),t.getState().columnPinning.right],(n,o)=>(o??[]).map(r=>n.find(l=>l.id===r)).filter(Boolean),pe(t.options,"debugColumns","getRightLeafColumns")),t.getCenterLeafColumns=ce(()=>[t.getAllLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r)=>{const l=[...o??[],...r??[]];return n.filter(a=>!l.includes(a.id))},pe(t.options,"debugColumns","getCenterLeafColumns"))}};function vu(t){return t||(typeof document<"u"?document:null)}const mo={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},dr=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),hu={getDefaultColumnDef:()=>mo,getInitialState:t=>({columnSizing:{},columnSizingInfo:dr(),...t}),getDefaultOptions:t=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:it("columnSizing",t),onColumnSizingInfoChange:it("columnSizingInfo",t)}),createColumn:(t,n)=>{t.getSize=()=>{var o,r,l;const a=n.getState().columnSizing[t.id];return Math.min(Math.max((o=t.columnDef.minSize)!=null?o:mo.minSize,(r=a??t.columnDef.size)!=null?r:mo.size),(l=t.columnDef.maxSize)!=null?l:mo.maxSize)},t.getStart=ce(o=>[o,Yn(n,o),n.getState().columnSizing],(o,r)=>r.slice(0,t.getIndex(o)).reduce((l,a)=>l+a.getSize(),0),pe(n.options,"debugColumns","getStart")),t.getAfter=ce(o=>[o,Yn(n,o),n.getState().columnSizing],(o,r)=>r.slice(t.getIndex(o)+1).reduce((l,a)=>l+a.getSize(),0),pe(n.options,"debugColumns","getAfter")),t.resetSize=()=>{n.setColumnSizing(o=>{let{[t.id]:r,...l}=o;return l})},t.getCanResize=()=>{var o,r;return((o=t.columnDef.enableResizing)!=null?o:!0)&&((r=n.options.enableColumnResizing)!=null?r:!0)},t.getIsResizing=()=>n.getState().columnSizingInfo.isResizingColumn===t.id},createHeader:(t,n)=>{t.getSize=()=>{let o=0;const r=l=>{if(l.subHeaders.length)l.subHeaders.forEach(r);else{var a;o+=(a=l.column.getSize())!=null?a:0}};return r(t),o},t.getStart=()=>{if(t.index>0){const o=t.headerGroup.headers[t.index-1];return o.getStart()+o.getSize()}return 0},t.getResizeHandler=o=>{const r=n.getColumn(t.column.id),l=r==null?void 0:r.getCanResize();return a=>{if(!r||!l||(a.persist==null||a.persist(),cr(a)&&a.touches&&a.touches.length>1))return;const i=t.getSize(),d=t?t.getLeafHeaders().map(y=>[y.column.id,y.column.getSize()]):[[r.id,r.getSize()]],s=cr(a)?Math.round(a.touches[0].clientX):a.clientX,u={},c=(y,b)=>{typeof b=="number"&&(n.setColumnSizingInfo(_=>{var k,x;const C=n.options.columnResizeDirection==="rtl"?-1:1,N=(b-((k=_==null?void 0:_.startOffset)!=null?k:0))*C,B=Math.max(N/((x=_==null?void 0:_.startSize)!=null?x:0),-.999999);return _.columnSizingStart.forEach(z=>{let[Y,R]=z;u[Y]=Math.round(Math.max(R+R*B,0)*100)/100}),{..._,deltaOffset:N,deltaPercentage:B}}),(n.options.columnResizeMode==="onChange"||y==="end")&&n.setColumnSizing(_=>({..._,...u})))},p=y=>c("move",y),m=y=>{c("end",y),n.setColumnSizingInfo(b=>({...b,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},f=vu(o),v={moveHandler:y=>p(y.clientX),upHandler:y=>{f==null||f.removeEventListener("mousemove",v.moveHandler),f==null||f.removeEventListener("mouseup",v.upHandler),m(y.clientX)}},g={moveHandler:y=>(y.cancelable&&(y.preventDefault(),y.stopPropagation()),p(y.touches[0].clientX),!1),upHandler:y=>{var b;f==null||f.removeEventListener("touchmove",g.moveHandler),f==null||f.removeEventListener("touchend",g.upHandler),y.cancelable&&(y.preventDefault(),y.stopPropagation()),m((b=y.touches[0])==null?void 0:b.clientX)}},h=xu()?{passive:!1}:!1;cr(a)?(f==null||f.addEventListener("touchmove",g.moveHandler,h),f==null||f.addEventListener("touchend",g.upHandler,h)):(f==null||f.addEventListener("mousemove",v.moveHandler,h),f==null||f.addEventListener("mouseup",v.upHandler,h)),n.setColumnSizingInfo(y=>({...y,startOffset:s,startSize:i,deltaOffset:0,deltaPercentage:0,columnSizingStart:d,isResizingColumn:r.id}))}}},createTable:t=>{t.setColumnSizing=n=>t.options.onColumnSizingChange==null?void 0:t.options.onColumnSizingChange(n),t.setColumnSizingInfo=n=>t.options.onColumnSizingInfoChange==null?void 0:t.options.onColumnSizingInfoChange(n),t.resetColumnSizing=n=>{var o;t.setColumnSizing(n?{}:(o=t.initialState.columnSizing)!=null?o:{})},t.resetHeaderSizeInfo=n=>{var o;t.setColumnSizingInfo(n?dr():(o=t.initialState.columnSizingInfo)!=null?o:dr())},t.getTotalSize=()=>{var n,o;return(n=(o=t.getHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getLeftTotalSize=()=>{var n,o;return(n=(o=t.getLeftHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getCenterTotalSize=()=>{var n,o;return(n=(o=t.getCenterHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getRightTotalSize=()=>{var n,o;return(n=(o=t.getRightHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0}}};let go=null;function xu(){if(typeof go=="boolean")return go;let t=!1;try{const n={get passive(){return t=!0,!1}},o=()=>{};window.addEventListener("test",o,n),window.removeEventListener("test",o)}catch{t=!1}return go=t,go}function cr(t){return t.type==="touchstart"}const _u={getInitialState:t=>({columnVisibility:{},...t}),getDefaultOptions:t=>({onColumnVisibilityChange:it("columnVisibility",t)}),createColumn:(t,n)=>{t.toggleVisibility=o=>{t.getCanHide()&&n.setColumnVisibility(r=>({...r,[t.id]:o??!t.getIsVisible()}))},t.getIsVisible=()=>{var o,r;const l=t.columns;return(o=l.length?l.some(a=>a.getIsVisible()):(r=n.getState().columnVisibility)==null?void 0:r[t.id])!=null?o:!0},t.getCanHide=()=>{var o,r;return((o=t.columnDef.enableHiding)!=null?o:!0)&&((r=n.options.enableHiding)!=null?r:!0)},t.getToggleVisibilityHandler=()=>o=>{t.toggleVisibility==null||t.toggleVisibility(o.target.checked)}},createRow:(t,n)=>{t._getAllVisibleCells=ce(()=>[t.getAllCells(),n.getState().columnVisibility],o=>o.filter(r=>r.column.getIsVisible()),pe(n.options,"debugRows","_getAllVisibleCells")),t.getVisibleCells=ce(()=>[t.getLeftVisibleCells(),t.getCenterVisibleCells(),t.getRightVisibleCells()],(o,r,l)=>[...o,...r,...l],pe(n.options,"debugRows","getVisibleCells"))},createTable:t=>{const n=(o,r)=>ce(()=>[r(),r().filter(l=>l.getIsVisible()).map(l=>l.id).join("_")],l=>l.filter(a=>a.getIsVisible==null?void 0:a.getIsVisible()),pe(t.options,"debugColumns",o));t.getVisibleFlatColumns=n("getVisibleFlatColumns",()=>t.getAllFlatColumns()),t.getVisibleLeafColumns=n("getVisibleLeafColumns",()=>t.getAllLeafColumns()),t.getLeftVisibleLeafColumns=n("getLeftVisibleLeafColumns",()=>t.getLeftLeafColumns()),t.getRightVisibleLeafColumns=n("getRightVisibleLeafColumns",()=>t.getRightLeafColumns()),t.getCenterVisibleLeafColumns=n("getCenterVisibleLeafColumns",()=>t.getCenterLeafColumns()),t.setColumnVisibility=o=>t.options.onColumnVisibilityChange==null?void 0:t.options.onColumnVisibilityChange(o),t.resetColumnVisibility=o=>{var r;t.setColumnVisibility(o?{}:(r=t.initialState.columnVisibility)!=null?r:{})},t.toggleAllColumnsVisible=o=>{var r;o=(r=o)!=null?r:!t.getIsAllColumnsVisible(),t.setColumnVisibility(t.getAllLeafColumns().reduce((l,a)=>({...l,[a.id]:o||!(a.getCanHide!=null&&a.getCanHide())}),{}))},t.getIsAllColumnsVisible=()=>!t.getAllLeafColumns().some(o=>!(o.getIsVisible!=null&&o.getIsVisible())),t.getIsSomeColumnsVisible=()=>t.getAllLeafColumns().some(o=>o.getIsVisible==null?void 0:o.getIsVisible()),t.getToggleAllColumnsVisibilityHandler=()=>o=>{var r;t.toggleAllColumnsVisible((r=o.target)==null?void 0:r.checked)}}};function Yn(t,n){return n?n==="center"?t.getCenterVisibleLeafColumns():n==="left"?t.getLeftVisibleLeafColumns():t.getRightVisibleLeafColumns():t.getVisibleLeafColumns()}const yu={createTable:t=>{t._getGlobalFacetedRowModel=t.options.getFacetedRowModel&&t.options.getFacetedRowModel(t,"__global__"),t.getGlobalFacetedRowModel=()=>t.options.manualFiltering||!t._getGlobalFacetedRowModel?t.getPreFilteredRowModel():t._getGlobalFacetedRowModel(),t._getGlobalFacetedUniqueValues=t.options.getFacetedUniqueValues&&t.options.getFacetedUniqueValues(t,"__global__"),t.getGlobalFacetedUniqueValues=()=>t._getGlobalFacetedUniqueValues?t._getGlobalFacetedUniqueValues():new Map,t._getGlobalFacetedMinMaxValues=t.options.getFacetedMinMaxValues&&t.options.getFacetedMinMaxValues(t,"__global__"),t.getGlobalFacetedMinMaxValues=()=>{if(t._getGlobalFacetedMinMaxValues)return t._getGlobalFacetedMinMaxValues()}}},Vu={getInitialState:t=>({globalFilter:void 0,...t}),getDefaultOptions:t=>({onGlobalFilterChange:it("globalFilter",t),globalFilterFn:"auto",getColumnCanGlobalFilter:n=>{var o;const r=(o=t.getCoreRowModel().flatRows[0])==null||(o=o._getAllCellsByColumnId()[n.id])==null?void 0:o.getValue();return typeof r=="string"||typeof r=="number"}}),createColumn:(t,n)=>{t.getCanGlobalFilter=()=>{var o,r,l,a;return((o=t.columnDef.enableGlobalFilter)!=null?o:!0)&&((r=n.options.enableGlobalFilter)!=null?r:!0)&&((l=n.options.enableFilters)!=null?l:!0)&&((a=n.options.getColumnCanGlobalFilter==null?void 0:n.options.getColumnCanGlobalFilter(t))!=null?a:!0)&&!!t.accessorFn}},createTable:t=>{t.getGlobalAutoFilterFn=()=>Bt.includesString,t.getGlobalFilterFn=()=>{var n,o;const{globalFilterFn:r}=t.options;return Uo(r)?r:r==="auto"?t.getGlobalAutoFilterFn():(n=(o=t.options.filterFns)==null?void 0:o[r])!=null?n:Bt[r]},t.setGlobalFilter=n=>{t.options.onGlobalFilterChange==null||t.options.onGlobalFilterChange(n)},t.resetGlobalFilter=n=>{t.setGlobalFilter(n?void 0:t.initialState.globalFilter)}}},Cu={getInitialState:t=>({expanded:{},...t}),getDefaultOptions:t=>({onExpandedChange:it("expanded",t),paginateExpandedRows:!0}),createTable:t=>{let n=!1,o=!1;t._autoResetExpanded=()=>{var r,l;if(!n){t._queue(()=>{n=!0});return}if((r=(l=t.options.autoResetAll)!=null?l:t.options.autoResetExpanded)!=null?r:!t.options.manualExpanding){if(o)return;o=!0,t._queue(()=>{t.resetExpanded(),o=!1})}},t.setExpanded=r=>t.options.onExpandedChange==null?void 0:t.options.onExpandedChange(r),t.toggleAllRowsExpanded=r=>{r??!t.getIsAllRowsExpanded()?t.setExpanded(!0):t.setExpanded({})},t.resetExpanded=r=>{var l,a;t.setExpanded(r?{}:(l=(a=t.initialState)==null?void 0:a.expanded)!=null?l:{})},t.getCanSomeRowsExpand=()=>t.getPrePaginationRowModel().flatRows.some(r=>r.getCanExpand()),t.getToggleAllRowsExpandedHandler=()=>r=>{r.persist==null||r.persist(),t.toggleAllRowsExpanded()},t.getIsSomeRowsExpanded=()=>{const r=t.getState().expanded;return r===!0||Object.values(r).some(Boolean)},t.getIsAllRowsExpanded=()=>{const r=t.getState().expanded;return typeof r=="boolean"?r===!0:!(!Object.keys(r).length||t.getRowModel().flatRows.some(l=>!l.getIsExpanded()))},t.getExpandedDepth=()=>{let r=0;return(t.getState().expanded===!0?Object.keys(t.getRowModel().rowsById):Object.keys(t.getState().expanded)).forEach(a=>{const i=a.split(".");r=Math.max(r,i.length)}),r},t.getPreExpandedRowModel=()=>t.getSortedRowModel(),t.getExpandedRowModel=()=>(!t._getExpandedRowModel&&t.options.getExpandedRowModel&&(t._getExpandedRowModel=t.options.getExpandedRowModel(t)),t.options.manualExpanding||!t._getExpandedRowModel?t.getPreExpandedRowModel():t._getExpandedRowModel())},createRow:(t,n)=>{t.toggleExpanded=o=>{n.setExpanded(r=>{var l;const a=r===!0?!0:!!(r!=null&&r[t.id]);let i={};if(r===!0?Object.keys(n.getRowModel().rowsById).forEach(d=>{i[d]=!0}):i=r,o=(l=o)!=null?l:!a,!a&&o)return{...i,[t.id]:!0};if(a&&!o){const{[t.id]:d,...s}=i;return s}return r})},t.getIsExpanded=()=>{var o;const r=n.getState().expanded;return!!((o=n.options.getIsRowExpanded==null?void 0:n.options.getIsRowExpanded(t))!=null?o:r===!0||r!=null&&r[t.id])},t.getCanExpand=()=>{var o,r,l;return(o=n.options.getRowCanExpand==null?void 0:n.options.getRowCanExpand(t))!=null?o:((r=n.options.enableExpanding)!=null?r:!0)&&!!((l=t.subRows)!=null&&l.length)},t.getIsAllParentsExpanded=()=>{let o=!0,r=t;for(;o&&r.parentId;)r=n.getRow(r.parentId,!0),o=r.getIsExpanded();return o},t.getToggleExpandedHandler=()=>{const o=t.getCanExpand();return()=>{o&&t.toggleExpanded()}}}},Br=0,$r=10,pr=()=>({pageIndex:Br,pageSize:$r}),bu={getInitialState:t=>({...t,pagination:{...pr(),...t==null?void 0:t.pagination}}),getDefaultOptions:t=>({onPaginationChange:it("pagination",t)}),createTable:t=>{let n=!1,o=!1;t._autoResetPageIndex=()=>{var r,l;if(!n){t._queue(()=>{n=!0});return}if((r=(l=t.options.autoResetAll)!=null?l:t.options.autoResetPageIndex)!=null?r:!t.options.manualPagination){if(o)return;o=!0,t._queue(()=>{t.resetPageIndex(),o=!1})}},t.setPagination=r=>{const l=a=>Ht(r,a);return t.options.onPaginationChange==null?void 0:t.options.onPaginationChange(l)},t.resetPagination=r=>{var l;t.setPagination(r?pr():(l=t.initialState.pagination)!=null?l:pr())},t.setPageIndex=r=>{t.setPagination(l=>{let a=Ht(r,l.pageIndex);const i=typeof t.options.pageCount>"u"||t.options.pageCount===-1?Number.MAX_SAFE_INTEGER:t.options.pageCount-1;return a=Math.max(0,Math.min(a,i)),{...l,pageIndex:a}})},t.resetPageIndex=r=>{var l,a;t.setPageIndex(r?Br:(l=(a=t.initialState)==null||(a=a.pagination)==null?void 0:a.pageIndex)!=null?l:Br)},t.resetPageSize=r=>{var l,a;t.setPageSize(r?$r:(l=(a=t.initialState)==null||(a=a.pagination)==null?void 0:a.pageSize)!=null?l:$r)},t.setPageSize=r=>{t.setPagination(l=>{const a=Math.max(1,Ht(r,l.pageSize)),i=l.pageSize*l.pageIndex,d=Math.floor(i/a);return{...l,pageIndex:d,pageSize:a}})},t.setPageCount=r=>t.setPagination(l=>{var a;let i=Ht(r,(a=t.options.pageCount)!=null?a:-1);return typeof i=="number"&&(i=Math.max(-1,i)),{...l,pageCount:i}}),t.getPageOptions=ce(()=>[t.getPageCount()],r=>{let l=[];return r&&r>0&&(l=[...new Array(r)].fill(null).map((a,i)=>i)),l},pe(t.options,"debugTable","getPageOptions")),t.getCanPreviousPage=()=>t.getState().pagination.pageIndex>0,t.getCanNextPage=()=>{const{pageIndex:r}=t.getState().pagination,l=t.getPageCount();return l===-1?!0:l===0?!1:r<l-1},t.previousPage=()=>t.setPageIndex(r=>r-1),t.nextPage=()=>t.setPageIndex(r=>r+1),t.firstPage=()=>t.setPageIndex(0),t.lastPage=()=>t.setPageIndex(t.getPageCount()-1),t.getPrePaginationRowModel=()=>t.getExpandedRowModel(),t.getPaginationRowModel=()=>(!t._getPaginationRowModel&&t.options.getPaginationRowModel&&(t._getPaginationRowModel=t.options.getPaginationRowModel(t)),t.options.manualPagination||!t._getPaginationRowModel?t.getPrePaginationRowModel():t._getPaginationRowModel()),t.getPageCount=()=>{var r;return(r=t.options.pageCount)!=null?r:Math.ceil(t.getRowCount()/t.getState().pagination.pageSize)},t.getRowCount=()=>{var r;return(r=t.options.rowCount)!=null?r:t.getPrePaginationRowModel().rows.length}}},fr=()=>({top:[],bottom:[]}),wu={getInitialState:t=>({rowPinning:fr(),...t}),getDefaultOptions:t=>({onRowPinningChange:it("rowPinning",t)}),createRow:(t,n)=>{t.pin=(o,r,l)=>{const a=r?t.getLeafRows().map(s=>{let{id:u}=s;return u}):[],i=l?t.getParentRows().map(s=>{let{id:u}=s;return u}):[],d=new Set([...i,t.id,...a]);n.setRowPinning(s=>{var u,c;if(o==="bottom"){var p,m;return{top:((p=s==null?void 0:s.top)!=null?p:[]).filter(g=>!(d!=null&&d.has(g))),bottom:[...((m=s==null?void 0:s.bottom)!=null?m:[]).filter(g=>!(d!=null&&d.has(g))),...Array.from(d)]}}if(o==="top"){var f,v;return{top:[...((f=s==null?void 0:s.top)!=null?f:[]).filter(g=>!(d!=null&&d.has(g))),...Array.from(d)],bottom:((v=s==null?void 0:s.bottom)!=null?v:[]).filter(g=>!(d!=null&&d.has(g)))}}return{top:((u=s==null?void 0:s.top)!=null?u:[]).filter(g=>!(d!=null&&d.has(g))),bottom:((c=s==null?void 0:s.bottom)!=null?c:[]).filter(g=>!(d!=null&&d.has(g)))}})},t.getCanPin=()=>{var o;const{enableRowPinning:r,enablePinning:l}=n.options;return typeof r=="function"?r(t):(o=r??l)!=null?o:!0},t.getIsPinned=()=>{const o=[t.id],{top:r,bottom:l}=n.getState().rowPinning,a=o.some(d=>r==null?void 0:r.includes(d)),i=o.some(d=>l==null?void 0:l.includes(d));return a?"top":i?"bottom":!1},t.getPinnedIndex=()=>{var o,r;const l=t.getIsPinned();if(!l)return-1;const a=(o=l==="top"?n.getTopRows():n.getBottomRows())==null?void 0:o.map(i=>{let{id:d}=i;return d});return(r=a==null?void 0:a.indexOf(t.id))!=null?r:-1}},createTable:t=>{t.setRowPinning=n=>t.options.onRowPinningChange==null?void 0:t.options.onRowPinningChange(n),t.resetRowPinning=n=>{var o,r;return t.setRowPinning(n?fr():(o=(r=t.initialState)==null?void 0:r.rowPinning)!=null?o:fr())},t.getIsSomeRowsPinned=n=>{var o;const r=t.getState().rowPinning;if(!n){var l,a;return!!((l=r.top)!=null&&l.length||(a=r.bottom)!=null&&a.length)}return!!((o=r[n])!=null&&o.length)},t._getPinnedRows=(n,o,r)=>{var l;return((l=t.options.keepPinnedRows)==null||l?(o??[]).map(i=>{const d=t.getRow(i,!0);return d.getIsAllParentsExpanded()?d:null}):(o??[]).map(i=>n.find(d=>d.id===i))).filter(Boolean).map(i=>({...i,position:r}))},t.getTopRows=ce(()=>[t.getRowModel().rows,t.getState().rowPinning.top],(n,o)=>t._getPinnedRows(n,o,"top"),pe(t.options,"debugRows","getTopRows")),t.getBottomRows=ce(()=>[t.getRowModel().rows,t.getState().rowPinning.bottom],(n,o)=>t._getPinnedRows(n,o,"bottom"),pe(t.options,"debugRows","getBottomRows")),t.getCenterRows=ce(()=>[t.getRowModel().rows,t.getState().rowPinning.top,t.getState().rowPinning.bottom],(n,o,r)=>{const l=new Set([...o??[],...r??[]]);return n.filter(a=>!l.has(a.id))},pe(t.options,"debugRows","getCenterRows"))}},Nu={getInitialState:t=>({rowSelection:{},...t}),getDefaultOptions:t=>({onRowSelectionChange:it("rowSelection",t),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:t=>{t.setRowSelection=n=>t.options.onRowSelectionChange==null?void 0:t.options.onRowSelectionChange(n),t.resetRowSelection=n=>{var o;return t.setRowSelection(n?{}:(o=t.initialState.rowSelection)!=null?o:{})},t.toggleAllRowsSelected=n=>{t.setRowSelection(o=>{n=typeof n<"u"?n:!t.getIsAllRowsSelected();const r={...o},l=t.getPreGroupedRowModel().flatRows;return n?l.forEach(a=>{a.getCanSelect()&&(r[a.id]=!0)}):l.forEach(a=>{delete r[a.id]}),r})},t.toggleAllPageRowsSelected=n=>t.setRowSelection(o=>{const r=typeof n<"u"?n:!t.getIsAllPageRowsSelected(),l={...o};return t.getRowModel().rows.forEach(a=>{Ir(l,a.id,r,!0,t)}),l}),t.getPreSelectedRowModel=()=>t.getCoreRowModel(),t.getSelectedRowModel=ce(()=>[t.getState().rowSelection,t.getCoreRowModel()],(n,o)=>Object.keys(n).length?mr(t,o):{rows:[],flatRows:[],rowsById:{}},pe(t.options,"debugTable","getSelectedRowModel")),t.getFilteredSelectedRowModel=ce(()=>[t.getState().rowSelection,t.getFilteredRowModel()],(n,o)=>Object.keys(n).length?mr(t,o):{rows:[],flatRows:[],rowsById:{}},pe(t.options,"debugTable","getFilteredSelectedRowModel")),t.getGroupedSelectedRowModel=ce(()=>[t.getState().rowSelection,t.getSortedRowModel()],(n,o)=>Object.keys(n).length?mr(t,o):{rows:[],flatRows:[],rowsById:{}},pe(t.options,"debugTable","getGroupedSelectedRowModel")),t.getIsAllRowsSelected=()=>{const n=t.getFilteredRowModel().flatRows,{rowSelection:o}=t.getState();let r=!!(n.length&&Object.keys(o).length);return r&&n.some(l=>l.getCanSelect()&&!o[l.id])&&(r=!1),r},t.getIsAllPageRowsSelected=()=>{const n=t.getPaginationRowModel().flatRows.filter(l=>l.getCanSelect()),{rowSelection:o}=t.getState();let r=!!n.length;return r&&n.some(l=>!o[l.id])&&(r=!1),r},t.getIsSomeRowsSelected=()=>{var n;const o=Object.keys((n=t.getState().rowSelection)!=null?n:{}).length;return o>0&&o<t.getFilteredRowModel().flatRows.length},t.getIsSomePageRowsSelected=()=>{const n=t.getPaginationRowModel().flatRows;return t.getIsAllPageRowsSelected()?!1:n.filter(o=>o.getCanSelect()).some(o=>o.getIsSelected()||o.getIsSomeSelected())},t.getToggleAllRowsSelectedHandler=()=>n=>{t.toggleAllRowsSelected(n.target.checked)},t.getToggleAllPageRowsSelectedHandler=()=>n=>{t.toggleAllPageRowsSelected(n.target.checked)}},createRow:(t,n)=>{t.toggleSelected=(o,r)=>{const l=t.getIsSelected();n.setRowSelection(a=>{var i;if(o=typeof o<"u"?o:!l,t.getCanSelect()&&l===o)return a;const d={...a};return Ir(d,t.id,o,(i=r==null?void 0:r.selectChildren)!=null?i:!0,n),d})},t.getIsSelected=()=>{const{rowSelection:o}=n.getState();return ol(t,o)},t.getIsSomeSelected=()=>{const{rowSelection:o}=n.getState();return Mr(t,o)==="some"},t.getIsAllSubRowsSelected=()=>{const{rowSelection:o}=n.getState();return Mr(t,o)==="all"},t.getCanSelect=()=>{var o;return typeof n.options.enableRowSelection=="function"?n.options.enableRowSelection(t):(o=n.options.enableRowSelection)!=null?o:!0},t.getCanSelectSubRows=()=>{var o;return typeof n.options.enableSubRowSelection=="function"?n.options.enableSubRowSelection(t):(o=n.options.enableSubRowSelection)!=null?o:!0},t.getCanMultiSelect=()=>{var o;return typeof n.options.enableMultiRowSelection=="function"?n.options.enableMultiRowSelection(t):(o=n.options.enableMultiRowSelection)!=null?o:!0},t.getToggleSelectedHandler=()=>{const o=t.getCanSelect();return r=>{var l;o&&t.toggleSelected((l=r.target)==null?void 0:l.checked)}}}},Ir=(t,n,o,r,l)=>{var a;const i=l.getRow(n,!0);o?(i.getCanMultiSelect()||Object.keys(t).forEach(d=>delete t[d]),i.getCanSelect()&&(t[n]=!0)):delete t[n],r&&(a=i.subRows)!=null&&a.length&&i.getCanSelectSubRows()&&i.subRows.forEach(d=>Ir(t,d.id,o,r,l))};function mr(t,n){const o=t.getState().rowSelection,r=[],l={},a=function(i,d){return i.map(s=>{var u;const c=ol(s,o);if(c&&(r.push(s),l[s.id]=s),(u=s.subRows)!=null&&u.length&&(s={...s,subRows:a(s.subRows)}),c)return s}).filter(Boolean)};return{rows:a(n.rows),flatRows:r,rowsById:l}}function ol(t,n){var o;return(o=n[t.id])!=null?o:!1}function Mr(t,n,o){var r;if(!((r=t.subRows)!=null&&r.length))return!1;let l=!0,a=!1;return t.subRows.forEach(i=>{if(!(a&&!l)&&(i.getCanSelect()&&(ol(i,n)?a=!0:l=!1),i.subRows&&i.subRows.length)){const d=Mr(i,n);d==="all"?a=!0:(d==="some"&&(a=!0),l=!1)}}),l?"all":a?"some":!1}const Pr=/([0-9]+)/gm,ku=(t,n,o)=>Xa(Wt(t.getValue(o)).toLowerCase(),Wt(n.getValue(o)).toLowerCase()),Su=(t,n,o)=>Xa(Wt(t.getValue(o)),Wt(n.getValue(o))),Eu=(t,n,o)=>rl(Wt(t.getValue(o)).toLowerCase(),Wt(n.getValue(o)).toLowerCase()),Tu=(t,n,o)=>rl(Wt(t.getValue(o)),Wt(n.getValue(o))),Du=(t,n,o)=>{const r=t.getValue(o),l=n.getValue(o);return r>l?1:r<l?-1:0},Bu=(t,n,o)=>rl(t.getValue(o),n.getValue(o));function rl(t,n){return t===n?0:t>n?1:-1}function Wt(t){return typeof t=="number"?isNaN(t)||t===1/0||t===-1/0?"":String(t):typeof t=="string"?t:""}function Xa(t,n){const o=t.split(Pr).filter(Boolean),r=n.split(Pr).filter(Boolean);for(;o.length&&r.length;){const l=o.shift(),a=r.shift(),i=parseInt(l,10),d=parseInt(a,10),s=[i,d].sort();if(isNaN(s[0])){if(l>a)return 1;if(a>l)return-1;continue}if(isNaN(s[1]))return isNaN(i)?-1:1;if(i>d)return 1;if(d>i)return-1}return o.length-r.length}const An={alphanumeric:ku,alphanumericCaseSensitive:Su,text:Eu,textCaseSensitive:Tu,datetime:Du,basic:Bu},$u={getInitialState:t=>({sorting:[],...t}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:t=>({onSortingChange:it("sorting",t),isMultiSortEvent:n=>n.shiftKey}),createColumn:(t,n)=>{t.getAutoSortingFn=()=>{const o=n.getFilteredRowModel().flatRows.slice(10);let r=!1;for(const l of o){const a=l==null?void 0:l.getValue(t.id);if(Object.prototype.toString.call(a)==="[object Date]")return An.datetime;if(typeof a=="string"&&(r=!0,a.split(Pr).length>1))return An.alphanumeric}return r?An.text:An.basic},t.getAutoSortDir=()=>{const o=n.getFilteredRowModel().flatRows[0];return typeof(o==null?void 0:o.getValue(t.id))=="string"?"asc":"desc"},t.getSortingFn=()=>{var o,r;if(!t)throw new Error;return Uo(t.columnDef.sortingFn)?t.columnDef.sortingFn:t.columnDef.sortingFn==="auto"?t.getAutoSortingFn():(o=(r=n.options.sortingFns)==null?void 0:r[t.columnDef.sortingFn])!=null?o:An[t.columnDef.sortingFn]},t.toggleSorting=(o,r)=>{const l=t.getNextSortingOrder(),a=typeof o<"u"&&o!==null;n.setSorting(i=>{const d=i==null?void 0:i.find(f=>f.id===t.id),s=i==null?void 0:i.findIndex(f=>f.id===t.id);let u=[],c,p=a?o:l==="desc";if(i!=null&&i.length&&t.getCanMultiSort()&&r?d?c="toggle":c="add":i!=null&&i.length&&s!==i.length-1?c="replace":d?c="toggle":c="replace",c==="toggle"&&(a||l||(c="remove")),c==="add"){var m;u=[...i,{id:t.id,desc:p}],u.splice(0,u.length-((m=n.options.maxMultiSortColCount)!=null?m:Number.MAX_SAFE_INTEGER))}else c==="toggle"?u=i.map(f=>f.id===t.id?{...f,desc:p}:f):c==="remove"?u=i.filter(f=>f.id!==t.id):u=[{id:t.id,desc:p}];return u})},t.getFirstSortDir=()=>{var o,r;return((o=(r=t.columnDef.sortDescFirst)!=null?r:n.options.sortDescFirst)!=null?o:t.getAutoSortDir()==="desc")?"desc":"asc"},t.getNextSortingOrder=o=>{var r,l;const a=t.getFirstSortDir(),i=t.getIsSorted();return i?i!==a&&((r=n.options.enableSortingRemoval)==null||r)&&(!(o&&(l=n.options.enableMultiRemove)!=null)||l)?!1:i==="desc"?"asc":"desc":a},t.getCanSort=()=>{var o,r;return((o=t.columnDef.enableSorting)!=null?o:!0)&&((r=n.options.enableSorting)!=null?r:!0)&&!!t.accessorFn},t.getCanMultiSort=()=>{var o,r;return(o=(r=t.columnDef.enableMultiSort)!=null?r:n.options.enableMultiSort)!=null?o:!!t.accessorFn},t.getIsSorted=()=>{var o;const r=(o=n.getState().sorting)==null?void 0:o.find(l=>l.id===t.id);return r?r.desc?"desc":"asc":!1},t.getSortIndex=()=>{var o,r;return(o=(r=n.getState().sorting)==null?void 0:r.findIndex(l=>l.id===t.id))!=null?o:-1},t.clearSorting=()=>{n.setSorting(o=>o!=null&&o.length?o.filter(r=>r.id!==t.id):[])},t.getToggleSortingHandler=()=>{const o=t.getCanSort();return r=>{o&&(r.persist==null||r.persist(),t.toggleSorting==null||t.toggleSorting(void 0,t.getCanMultiSort()?n.options.isMultiSortEvent==null?void 0:n.options.isMultiSortEvent(r):!1))}}},createTable:t=>{t.setSorting=n=>t.options.onSortingChange==null?void 0:t.options.onSortingChange(n),t.resetSorting=n=>{var o,r;t.setSorting(n?[]:(o=(r=t.initialState)==null?void 0:r.sorting)!=null?o:[])},t.getPreSortedRowModel=()=>t.getGroupedRowModel(),t.getSortedRowModel=()=>(!t._getSortedRowModel&&t.options.getSortedRowModel&&(t._getSortedRowModel=t.options.getSortedRowModel(t)),t.options.manualSorting||!t._getSortedRowModel?t.getPreSortedRowModel():t._getSortedRowModel())}},Iu=[eu,_u,mu,gu,tu,nu,yu,Vu,$u,pu,Cu,bu,wu,Nu,hu];function Mu(t){var n,o;process.env.NODE_ENV!=="production"&&(t.debugAll||t.debugTable)&&console.info("Creating Table Instance...");const r=[...Iu,...(n=t._features)!=null?n:[]];let l={_features:r};const a=l._features.reduce((m,f)=>Object.assign(m,f.getDefaultOptions==null?void 0:f.getDefaultOptions(l)),{}),i=m=>l.options.mergeOptions?l.options.mergeOptions(a,m):{...a,...m};let s={...{},...(o=t.initialState)!=null?o:{}};l._features.forEach(m=>{var f;s=(f=m.getInitialState==null?void 0:m.getInitialState(s))!=null?f:s});const u=[];let c=!1;const p={_features:r,options:{...a,...t},initialState:s,_queue:m=>{u.push(m),c||(c=!0,Promise.resolve().then(()=>{for(;u.length;)u.shift()();c=!1}).catch(f=>setTimeout(()=>{throw f})))},reset:()=>{l.setState(l.initialState)},setOptions:m=>{const f=Ht(m,l.options);l.options=i(f)},getState:()=>l.options.state,setState:m=>{l.options.onStateChange==null||l.options.onStateChange(m)},_getRowId:(m,f,v)=>{var g;return(g=l.options.getRowId==null?void 0:l.options.getRowId(m,f,v))!=null?g:`${v?[v.id,f].join("."):f}`},getCoreRowModel:()=>(l._getCoreRowModel||(l._getCoreRowModel=l.options.getCoreRowModel(l)),l._getCoreRowModel()),getRowModel:()=>l.getPaginationRowModel(),getRow:(m,f)=>{let v=(f?l.getPrePaginationRowModel():l.getRowModel()).rowsById[m];if(!v&&(v=l.getCoreRowModel().rowsById[m],!v))throw process.env.NODE_ENV!=="production"?new Error(`getRow could not find row with ID: ${m}`):new Error;return v},_getDefaultColumnDef:ce(()=>[l.options.defaultColumn],m=>{var f;return m=(f=m)!=null?f:{},{header:v=>{const g=v.header.column.columnDef;return g.accessorKey?g.accessorKey:g.accessorFn?g.id:null},cell:v=>{var g,h;return(g=(h=v.renderValue())==null||h.toString==null?void 0:h.toString())!=null?g:null},...l._features.reduce((v,g)=>Object.assign(v,g.getDefaultColumnDef==null?void 0:g.getDefaultColumnDef()),{}),...m}},pe(t,"debugColumns","_getDefaultColumnDef")),_getColumnDefs:()=>l.options.columns,getAllColumns:ce(()=>[l._getColumnDefs()],m=>{const f=function(v,g,h){return h===void 0&&(h=0),v.map(y=>{const b=Qs(l,y,h,g),_=y;return b.columns=_.columns?f(_.columns,b,h+1):[],b})};return f(m)},pe(t,"debugColumns","getAllColumns")),getAllFlatColumns:ce(()=>[l.getAllColumns()],m=>m.flatMap(f=>f.getFlatColumns()),pe(t,"debugColumns","getAllFlatColumns")),_getAllFlatColumnsById:ce(()=>[l.getAllFlatColumns()],m=>m.reduce((f,v)=>(f[v.id]=v,f),{}),pe(t,"debugColumns","getAllFlatColumnsById")),getAllLeafColumns:ce(()=>[l.getAllColumns(),l._getOrderColumnsFn()],(m,f)=>{let v=m.flatMap(g=>g.getLeafColumns());return f(v)},pe(t,"debugColumns","getAllLeafColumns")),getColumn:m=>{const f=l._getAllFlatColumnsById()[m];return process.env.NODE_ENV!=="production"&&!f&&console.error(`[Table] Column with id '${m}' does not exist.`),f}};Object.assign(l,p);for(let m=0;m<l._features.length;m++){const f=l._features[m];f==null||f.createTable==null||f.createTable(l)}return l}function Pu(){return t=>ce(()=>[t.options.data],n=>{const o={rows:[],flatRows:[],rowsById:{}},r=function(l,a,i){a===void 0&&(a=0);const d=[];for(let u=0;u<l.length;u++){const c=tl(t,t._getRowId(l[u],u,i),l[u],u,a,void 0,i==null?void 0:i.id);if(o.flatRows.push(c),o.rowsById[c.id]=c,d.push(c),t.options.getSubRows){var s;c.originalSubRows=t.options.getSubRows(l[u],u),(s=c.originalSubRows)!=null&&s.length&&(c.subRows=r(c.originalSubRows,a+1,c))}}return d};return o.rows=r(n),o},pe(t.options,"debugTable","getRowModel",()=>t._autoResetPageIndex()))}function Ru(){return t=>ce(()=>[t.getState().expanded,t.getPreExpandedRowModel(),t.options.paginateExpandedRows],(n,o,r)=>!o.rows.length||n!==!0&&!Object.keys(n??{}).length||!r?o:Ja(o),pe(t.options,"debugTable","getExpandedRowModel"))}function Ja(t){const n=[],o=r=>{var l;n.push(r),(l=r.subRows)!=null&&l.length&&r.getIsExpanded()&&r.subRows.forEach(o)};return t.rows.forEach(o),{rows:n,flatRows:t.flatRows,rowsById:t.rowsById}}function Au(t,n,o){return o.options.filterFromLeafRows?Fu(t,n,o):Ou(t,n,o)}function Fu(t,n,o){var r;const l=[],a={},i=(r=o.options.maxLeafRowFilterDepth)!=null?r:100,d=function(s,u){u===void 0&&(u=0);const c=[];for(let m=0;m<s.length;m++){var p;let f=s[m];const v=tl(o,f.id,f.original,f.index,f.depth,void 0,f.parentId);if(v.columnFilters=f.columnFilters,(p=f.subRows)!=null&&p.length&&u<i){if(v.subRows=d(f.subRows,u+1),f=v,n(f)&&!v.subRows.length){c.push(f),a[f.id]=f,l.push(f);continue}if(n(f)||v.subRows.length){c.push(f),a[f.id]=f,l.push(f);continue}}else f=v,n(f)&&(c.push(f),a[f.id]=f,l.push(f))}return c};return{rows:d(t),flatRows:l,rowsById:a}}function Ou(t,n,o){var r;const l=[],a={},i=(r=o.options.maxLeafRowFilterDepth)!=null?r:100,d=function(s,u){u===void 0&&(u=0);const c=[];for(let m=0;m<s.length;m++){let f=s[m];if(n(f)){var p;if((p=f.subRows)!=null&&p.length&&u<i){const g=tl(o,f.id,f.original,f.index,f.depth,void 0,f.parentId);g.subRows=d(f.subRows,u+1),f=g}c.push(f),l.push(f),a[f.id]=f}}return c};return{rows:d(t),flatRows:l,rowsById:a}}function zu(){return t=>ce(()=>[t.getPreFilteredRowModel(),t.getState().columnFilters,t.getState().globalFilter],(n,o,r)=>{if(!n.rows.length||!(o!=null&&o.length)&&!r){for(let m=0;m<n.flatRows.length;m++)n.flatRows[m].columnFilters={},n.flatRows[m].columnFiltersMeta={};return n}const l=[],a=[];(o??[]).forEach(m=>{var f;const v=t.getColumn(m.id);if(!v)return;const g=v.getFilterFn();if(!g){process.env.NODE_ENV!=="production"&&console.warn(`Could not find a valid 'column.filterFn' for column with the ID: ${v.id}.`);return}l.push({id:m.id,filterFn:g,resolvedValue:(f=g.resolveFilterValue==null?void 0:g.resolveFilterValue(m.value))!=null?f:m.value})});const i=(o??[]).map(m=>m.id),d=t.getGlobalFilterFn(),s=t.getAllLeafColumns().filter(m=>m.getCanGlobalFilter());r&&d&&s.length&&(i.push("__global__"),s.forEach(m=>{var f;a.push({id:m.id,filterFn:d,resolvedValue:(f=d.resolveFilterValue==null?void 0:d.resolveFilterValue(r))!=null?f:r})}));let u,c;for(let m=0;m<n.flatRows.length;m++){const f=n.flatRows[m];if(f.columnFilters={},l.length)for(let v=0;v<l.length;v++){u=l[v];const g=u.id;f.columnFilters[g]=u.filterFn(f,g,u.resolvedValue,h=>{f.columnFiltersMeta[g]=h})}if(a.length){for(let v=0;v<a.length;v++){c=a[v];const g=c.id;if(c.filterFn(f,g,c.resolvedValue,h=>{f.columnFiltersMeta[g]=h})){f.columnFilters.__global__=!0;break}}f.columnFilters.__global__!==!0&&(f.columnFilters.__global__=!1)}}const p=m=>{for(let f=0;f<i.length;f++)if(m.columnFilters[i[f]]===!1)return!1;return!0};return Au(n.rows,p,t)},pe(t.options,"debugTable","getFilteredRowModel",()=>t._autoResetPageIndex()))}function Lu(t){return n=>ce(()=>[n.getState().pagination,n.getPrePaginationRowModel(),n.options.paginateExpandedRows?void 0:n.getState().expanded],(o,r)=>{if(!r.rows.length)return r;const{pageSize:l,pageIndex:a}=o;let{rows:i,flatRows:d,rowsById:s}=r;const u=l*a,c=u+l;i=i.slice(u,c);let p;n.options.paginateExpandedRows?p={rows:i,flatRows:d,rowsById:s}:p=Ja({rows:i,flatRows:d,rowsById:s}),p.flatRows=[];const m=f=>{p.flatRows.push(f),f.subRows.length&&f.subRows.forEach(m)};return p.rows.forEach(m),p},pe(n.options,"debugTable","getPaginationRowModel"))}function ju(){return t=>ce(()=>[t.getState().sorting,t.getPreSortedRowModel()],(n,o)=>{if(!o.rows.length||!(n!=null&&n.length))return o;const r=t.getState().sorting,l=[],a=r.filter(s=>{var u;return(u=t.getColumn(s.id))==null?void 0:u.getCanSort()}),i={};a.forEach(s=>{const u=t.getColumn(s.id);u&&(i[s.id]={sortUndefined:u.columnDef.sortUndefined,invertSorting:u.columnDef.invertSorting,sortingFn:u.getSortingFn()})});const d=s=>{const u=s.map(c=>({...c}));return u.sort((c,p)=>{for(let f=0;f<a.length;f+=1){var m;const v=a[f],g=i[v.id],h=g.sortUndefined,y=(m=v==null?void 0:v.desc)!=null?m:!1;let b=0;if(h){const _=c.getValue(v.id),k=p.getValue(v.id),x=_===void 0,C=k===void 0;if(x||C){if(h==="first")return x?-1:1;if(h==="last")return x?1:-1;b=x&&C?0:x?h:-h}}if(b===0&&(b=g.sortingFn(c,p,v.id)),b!==0)return y&&(b*=-1),g.invertSorting&&(b*=-1),b}return c.index-p.index}),u.forEach(c=>{var p;l.push(c),(p=c.subRows)!=null&&p.length&&(c.subRows=d(c.subRows))}),u};return{rows:d(o.rows),flatRows:l,rowsById:o.rowsById}},pe(t.options,"debugTable","getSortedRowModel",()=>t._autoResetPageIndex()))}/**
|
|
13
|
+
color: hsl(${Math.max(0,Math.min(120-120*m,120))}deg 100% 31%);`,o==null?void 0:o.key)}return l}}function de(t,n,o,r){return{debug:()=>{var l;return(l=t==null?void 0:t.debugAll)!=null?l:t[n]},key:process.env.NODE_ENV==="development"&&o,onChange:r}}function Qs(t,n,o,r){const l=()=>{var i;return(i=a.getValue())!=null?i:t.options.renderFallbackValue},a={id:`${n.id}_${o.id}`,row:n,column:o,getValue:()=>n.getValue(r),renderValue:l,getContext:ue(()=>[t,o,n,a],(i,u,s,d)=>({table:i,column:u,row:s,cell:d,getValue:d.getValue,renderValue:d.renderValue}),de(t.options,"debugCells","cell.getContext"))};return t._features.forEach(i=>{i.createCell==null||i.createCell(a,o,n,t)},{}),a}function eu(t,n,o,r){var l,a;const u={...t._getDefaultColumnDef(),...n},s=u.accessorKey;let d=(l=(a=u.id)!=null?a:s?typeof String.prototype.replaceAll=="function"?s.replaceAll(".","_"):s.replace(/\./g,"_"):void 0)!=null?l:typeof u.header=="string"?u.header:void 0,c;if(u.accessorFn?c=u.accessorFn:s&&(s.includes(".")?c=m=>{let p=m;for(const v of s.split(".")){var g;p=(g=p)==null?void 0:g[v],process.env.NODE_ENV!=="production"&&p===void 0&&console.warn(`"${v}" in deeply nested key "${s}" returned undefined.`)}return p}:c=m=>m[u.accessorKey]),!d)throw process.env.NODE_ENV!=="production"?new Error(u.accessorFn?"Columns require an id when using an accessorFn":"Columns require an id when using a non-string header"):new Error;let f={id:`${String(d)}`,accessorFn:c,parent:r,depth:o,columnDef:u,columns:[],getFlatColumns:ue(()=>[!0],()=>{var m;return[f,...(m=f.columns)==null?void 0:m.flatMap(p=>p.getFlatColumns())]},de(t.options,"debugColumns","column.getFlatColumns")),getLeafColumns:ue(()=>[t._getOrderColumnsFn()],m=>{var p;if((p=f.columns)!=null&&p.length){let g=f.columns.flatMap(v=>v.getLeafColumns());return m(g)}return[f]},de(t.options,"debugColumns","column.getLeafColumns"))};for(const m of t._features)m.createColumn==null||m.createColumn(f,t);return f}const Ye="debugHeaders";function _l(t,n,o){var r;let a={id:(r=o.id)!=null?r:n.id,column:n,index:o.index,isPlaceholder:!!o.isPlaceholder,placeholderId:o.placeholderId,depth:o.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const i=[],u=s=>{s.subHeaders&&s.subHeaders.length&&s.subHeaders.map(u),i.push(s)};return u(a),i},getContext:()=>({table:t,header:a,column:n})};return t._features.forEach(i=>{i.createHeader==null||i.createHeader(a,t)}),a}const tu={createTable:t=>{t.getHeaderGroups=ue(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r,l)=>{var a,i;const u=(a=r==null?void 0:r.map(f=>o.find(m=>m.id===f)).filter(Boolean))!=null?a:[],s=(i=l==null?void 0:l.map(f=>o.find(m=>m.id===f)).filter(Boolean))!=null?i:[],d=o.filter(f=>!(r!=null&&r.includes(f.id))&&!(l!=null&&l.includes(f.id)));return fo(n,[...u,...d,...s],t)},de(t.options,Ye,"getHeaderGroups")),t.getCenterHeaderGroups=ue(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r,l)=>(o=o.filter(a=>!(r!=null&&r.includes(a.id))&&!(l!=null&&l.includes(a.id))),fo(n,o,t,"center")),de(t.options,Ye,"getCenterHeaderGroups")),t.getLeftHeaderGroups=ue(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.left],(n,o,r)=>{var l;const a=(l=r==null?void 0:r.map(i=>o.find(u=>u.id===i)).filter(Boolean))!=null?l:[];return fo(n,a,t,"left")},de(t.options,Ye,"getLeftHeaderGroups")),t.getRightHeaderGroups=ue(()=>[t.getAllColumns(),t.getVisibleLeafColumns(),t.getState().columnPinning.right],(n,o,r)=>{var l;const a=(l=r==null?void 0:r.map(i=>o.find(u=>u.id===i)).filter(Boolean))!=null?l:[];return fo(n,a,t,"right")},de(t.options,Ye,"getRightHeaderGroups")),t.getFooterGroups=ue(()=>[t.getHeaderGroups()],n=>[...n].reverse(),de(t.options,Ye,"getFooterGroups")),t.getLeftFooterGroups=ue(()=>[t.getLeftHeaderGroups()],n=>[...n].reverse(),de(t.options,Ye,"getLeftFooterGroups")),t.getCenterFooterGroups=ue(()=>[t.getCenterHeaderGroups()],n=>[...n].reverse(),de(t.options,Ye,"getCenterFooterGroups")),t.getRightFooterGroups=ue(()=>[t.getRightHeaderGroups()],n=>[...n].reverse(),de(t.options,Ye,"getRightFooterGroups")),t.getFlatHeaders=ue(()=>[t.getHeaderGroups()],n=>n.map(o=>o.headers).flat(),de(t.options,Ye,"getFlatHeaders")),t.getLeftFlatHeaders=ue(()=>[t.getLeftHeaderGroups()],n=>n.map(o=>o.headers).flat(),de(t.options,Ye,"getLeftFlatHeaders")),t.getCenterFlatHeaders=ue(()=>[t.getCenterHeaderGroups()],n=>n.map(o=>o.headers).flat(),de(t.options,Ye,"getCenterFlatHeaders")),t.getRightFlatHeaders=ue(()=>[t.getRightHeaderGroups()],n=>n.map(o=>o.headers).flat(),de(t.options,Ye,"getRightFlatHeaders")),t.getCenterLeafHeaders=ue(()=>[t.getCenterFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),de(t.options,Ye,"getCenterLeafHeaders")),t.getLeftLeafHeaders=ue(()=>[t.getLeftFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),de(t.options,Ye,"getLeftLeafHeaders")),t.getRightLeafHeaders=ue(()=>[t.getRightFlatHeaders()],n=>n.filter(o=>{var r;return!((r=o.subHeaders)!=null&&r.length)}),de(t.options,Ye,"getRightLeafHeaders")),t.getLeafHeaders=ue(()=>[t.getLeftHeaderGroups(),t.getCenterHeaderGroups(),t.getRightHeaderGroups()],(n,o,r)=>{var l,a,i,u,s,d;return[...(l=(a=n[0])==null?void 0:a.headers)!=null?l:[],...(i=(u=o[0])==null?void 0:u.headers)!=null?i:[],...(s=(d=r[0])==null?void 0:d.headers)!=null?s:[]].map(c=>c.getLeafHeaders()).flat()},de(t.options,Ye,"getLeafHeaders"))}};function fo(t,n,o,r){var l,a;let i=0;const u=function(m,p){p===void 0&&(p=1),i=Math.max(i,p),m.filter(g=>g.getIsVisible()).forEach(g=>{var v;(v=g.columns)!=null&&v.length&&u(g.columns,p+1)},0)};u(t);let s=[];const d=(m,p)=>{const g={depth:p,id:[r,`${p}`].filter(Boolean).join("_"),headers:[]},v=[];m.forEach(h=>{const x=[...v].reverse()[0],b=h.column.depth===g.depth;let y,N=!1;if(b&&h.column.parent?y=h.column.parent:(y=h.column,N=!0),x&&(x==null?void 0:x.column)===y)x.subHeaders.push(h);else{const C=_l(o,y,{id:[r,p,y.id,h==null?void 0:h.id].filter(Boolean).join("_"),isPlaceholder:N,placeholderId:N?`${v.filter(V=>V.column===y).length}`:void 0,depth:p,index:v.length});C.subHeaders.push(h),v.push(C)}g.headers.push(h),h.headerGroup=g}),s.push(g),p>0&&d(v,p-1)},c=n.map((m,p)=>_l(o,m,{depth:i,index:p}));d(c,i-1),s.reverse();const f=m=>m.filter(g=>g.column.getIsVisible()).map(g=>{let v=0,h=0,x=[0];g.subHeaders&&g.subHeaders.length?(x=[],f(g.subHeaders).forEach(y=>{let{colSpan:N,rowSpan:C}=y;v+=N,x.push(C)})):v=1;const b=Math.min(...x);return h=h+b,g.colSpan=v,g.rowSpan=h,{colSpan:v,rowSpan:h}});return f((l=(a=s[0])==null?void 0:a.headers)!=null?l:[]),s}const Qr=(t,n,o,r,l,a,i)=>{let u={id:n,index:r,original:o,depth:l,parentId:i,_valuesCache:{},_uniqueValuesCache:{},getValue:s=>{if(u._valuesCache.hasOwnProperty(s))return u._valuesCache[s];const d=t.getColumn(s);if(d!=null&&d.accessorFn)return u._valuesCache[s]=d.accessorFn(u.original,r),u._valuesCache[s]},getUniqueValues:s=>{if(u._uniqueValuesCache.hasOwnProperty(s))return u._uniqueValuesCache[s];const d=t.getColumn(s);if(d!=null&&d.accessorFn)return d.columnDef.getUniqueValues?(u._uniqueValuesCache[s]=d.columnDef.getUniqueValues(u.original,r),u._uniqueValuesCache[s]):(u._uniqueValuesCache[s]=[u.getValue(s)],u._uniqueValuesCache[s])},renderValue:s=>{var d;return(d=u.getValue(s))!=null?d:t.options.renderFallbackValue},subRows:[],getLeafRows:()=>Js(u.subRows,s=>s.subRows),getParentRow:()=>u.parentId?t.getRow(u.parentId,!0):void 0,getParentRows:()=>{let s=[],d=u;for(;;){const c=d.getParentRow();if(!c)break;s.push(c),d=c}return s.reverse()},getAllCells:ue(()=>[t.getAllLeafColumns()],s=>s.map(d=>Qs(t,u,d,d.id)),de(t.options,"debugRows","getAllCells")),_getAllCellsByColumnId:ue(()=>[u.getAllCells()],s=>s.reduce((d,c)=>(d[c.column.id]=c,d),{}),de(t.options,"debugRows","getAllCellsByColumnId"))};for(let s=0;s<t._features.length;s++){const d=t._features[s];d==null||d.createRow==null||d.createRow(u,t)}return u},nu={createColumn:(t,n)=>{t._getFacetedRowModel=n.options.getFacetedRowModel&&n.options.getFacetedRowModel(n,t.id),t.getFacetedRowModel=()=>t._getFacetedRowModel?t._getFacetedRowModel():n.getPreFilteredRowModel(),t._getFacetedUniqueValues=n.options.getFacetedUniqueValues&&n.options.getFacetedUniqueValues(n,t.id),t.getFacetedUniqueValues=()=>t._getFacetedUniqueValues?t._getFacetedUniqueValues():new Map,t._getFacetedMinMaxValues=n.options.getFacetedMinMaxValues&&n.options.getFacetedMinMaxValues(n,t.id),t.getFacetedMinMaxValues=()=>{if(t._getFacetedMinMaxValues)return t._getFacetedMinMaxValues()}}},Ua=(t,n,o)=>{var r,l;const a=o==null||(r=o.toString())==null?void 0:r.toLowerCase();return!!(!((l=t.getValue(n))==null||(l=l.toString())==null||(l=l.toLowerCase())==null)&&l.includes(a))};Ua.autoRemove=t=>ht(t);const ja=(t,n,o)=>{var r;return!!(!((r=t.getValue(n))==null||(r=r.toString())==null)&&r.includes(o))};ja.autoRemove=t=>ht(t);const $a=(t,n,o)=>{var r;return((r=t.getValue(n))==null||(r=r.toString())==null?void 0:r.toLowerCase())===(o==null?void 0:o.toLowerCase())};$a.autoRemove=t=>ht(t);const Ha=(t,n,o)=>{var r;return(r=t.getValue(n))==null?void 0:r.includes(o)};Ha.autoRemove=t=>ht(t);const qa=(t,n,o)=>!o.some(r=>{var l;return!((l=t.getValue(n))!=null&&l.includes(r))});qa.autoRemove=t=>ht(t)||!(t!=null&&t.length);const Ga=(t,n,o)=>o.some(r=>{var l;return(l=t.getValue(n))==null?void 0:l.includes(r)});Ga.autoRemove=t=>ht(t)||!(t!=null&&t.length);const Wa=(t,n,o)=>t.getValue(n)===o;Wa.autoRemove=t=>ht(t);const Xa=(t,n,o)=>t.getValue(n)==o;Xa.autoRemove=t=>ht(t);const el=(t,n,o)=>{let[r,l]=o;const a=t.getValue(n);return a>=r&&a<=l};el.resolveFilterValue=t=>{let[n,o]=t,r=typeof n!="number"?parseFloat(n):n,l=typeof o!="number"?parseFloat(o):o,a=n===null||Number.isNaN(r)?-1/0:r,i=o===null||Number.isNaN(l)?1/0:l;if(a>i){const u=a;a=i,i=u}return[a,i]};el.autoRemove=t=>ht(t)||ht(t[0])&&ht(t[1]);const St={includesString:Ua,includesStringSensitive:ja,equalsString:$a,arrIncludes:Ha,arrIncludesAll:qa,arrIncludesSome:Ga,equals:Wa,weakEquals:Xa,inNumberRange:el};function ht(t){return t==null||t===""}const ou={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:t=>({columnFilters:[],...t}),getDefaultOptions:t=>({onColumnFiltersChange:it("columnFilters",t),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(t,n)=>{t.getAutoFilterFn=()=>{const o=n.getCoreRowModel().flatRows[0],r=o==null?void 0:o.getValue(t.id);return typeof r=="string"?St.includesString:typeof r=="number"?St.inNumberRange:typeof r=="boolean"||r!==null&&typeof r=="object"?St.equals:Array.isArray(r)?St.arrIncludes:St.weakEquals},t.getFilterFn=()=>{var o,r;return Uo(t.columnDef.filterFn)?t.columnDef.filterFn:t.columnDef.filterFn==="auto"?t.getAutoFilterFn():(o=(r=n.options.filterFns)==null?void 0:r[t.columnDef.filterFn])!=null?o:St[t.columnDef.filterFn]},t.getCanFilter=()=>{var o,r,l;return((o=t.columnDef.enableColumnFilter)!=null?o:!0)&&((r=n.options.enableColumnFilters)!=null?r:!0)&&((l=n.options.enableFilters)!=null?l:!0)&&!!t.accessorFn},t.getIsFiltered=()=>t.getFilterIndex()>-1,t.getFilterValue=()=>{var o;return(o=n.getState().columnFilters)==null||(o=o.find(r=>r.id===t.id))==null?void 0:o.value},t.getFilterIndex=()=>{var o,r;return(o=(r=n.getState().columnFilters)==null?void 0:r.findIndex(l=>l.id===t.id))!=null?o:-1},t.setFilterValue=o=>{n.setColumnFilters(r=>{const l=t.getFilterFn(),a=r==null?void 0:r.find(c=>c.id===t.id),i=Ut(o,a?a.value:void 0);if(Nl(l,i,t)){var u;return(u=r==null?void 0:r.filter(c=>c.id!==t.id))!=null?u:[]}const s={id:t.id,value:i};if(a){var d;return(d=r==null?void 0:r.map(c=>c.id===t.id?s:c))!=null?d:[]}return r!=null&&r.length?[...r,s]:[s]})}},createRow:(t,n)=>{t.columnFilters={},t.columnFiltersMeta={}},createTable:t=>{t.setColumnFilters=n=>{const o=t.getAllLeafColumns(),r=l=>{var a;return(a=Ut(n,l))==null?void 0:a.filter(i=>{const u=o.find(s=>s.id===i.id);if(u){const s=u.getFilterFn();if(Nl(s,i.value,u))return!1}return!0})};t.options.onColumnFiltersChange==null||t.options.onColumnFiltersChange(r)},t.resetColumnFilters=n=>{var o,r;t.setColumnFilters(n?[]:(o=(r=t.initialState)==null?void 0:r.columnFilters)!=null?o:[])},t.getPreFilteredRowModel=()=>t.getCoreRowModel(),t.getFilteredRowModel=()=>(!t._getFilteredRowModel&&t.options.getFilteredRowModel&&(t._getFilteredRowModel=t.options.getFilteredRowModel(t)),t.options.manualFiltering||!t._getFilteredRowModel?t.getPreFilteredRowModel():t._getFilteredRowModel())}};function Nl(t,n,o){return(t&&t.autoRemove?t.autoRemove(n,o):!1)||typeof n>"u"||typeof n=="string"&&!n}const ru=(t,n,o)=>o.reduce((r,l)=>{const a=l.getValue(t);return r+(typeof a=="number"?a:0)},0),lu=(t,n,o)=>{let r;return o.forEach(l=>{const a=l.getValue(t);a!=null&&(r>a||r===void 0&&a>=a)&&(r=a)}),r},au=(t,n,o)=>{let r;return o.forEach(l=>{const a=l.getValue(t);a!=null&&(r<a||r===void 0&&a>=a)&&(r=a)}),r},iu=(t,n,o)=>{let r,l;return o.forEach(a=>{const i=a.getValue(t);i!=null&&(r===void 0?i>=i&&(r=l=i):(r>i&&(r=i),l<i&&(l=i)))}),[r,l]},su=(t,n)=>{let o=0,r=0;if(n.forEach(l=>{let a=l.getValue(t);a!=null&&(a=+a)>=a&&(++o,r+=a)}),o)return r/o},uu=(t,n)=>{if(!n.length)return;const o=n.map(a=>a.getValue(t));if(!Ks(o))return;if(o.length===1)return o[0];const r=Math.floor(o.length/2),l=o.sort((a,i)=>a-i);return o.length%2!==0?l[r]:(l[r-1]+l[r])/2},du=(t,n)=>Array.from(new Set(n.map(o=>o.getValue(t))).values()),cu=(t,n)=>new Set(n.map(o=>o.getValue(t))).size,fu=(t,n)=>n.length,lr={sum:ru,min:lu,max:au,extent:iu,mean:su,median:uu,unique:du,uniqueCount:cu,count:fu},pu={getDefaultColumnDef:()=>({aggregatedCell:t=>{var n,o;return(n=(o=t.getValue())==null||o.toString==null?void 0:o.toString())!=null?n:null},aggregationFn:"auto"}),getInitialState:t=>({grouping:[],...t}),getDefaultOptions:t=>({onGroupingChange:it("grouping",t),groupedColumnMode:"reorder"}),createColumn:(t,n)=>{t.toggleGrouping=()=>{n.setGrouping(o=>o!=null&&o.includes(t.id)?o.filter(r=>r!==t.id):[...o??[],t.id])},t.getCanGroup=()=>{var o,r;return((o=t.columnDef.enableGrouping)!=null?o:!0)&&((r=n.options.enableGrouping)!=null?r:!0)&&(!!t.accessorFn||!!t.columnDef.getGroupingValue)},t.getIsGrouped=()=>{var o;return(o=n.getState().grouping)==null?void 0:o.includes(t.id)},t.getGroupedIndex=()=>{var o;return(o=n.getState().grouping)==null?void 0:o.indexOf(t.id)},t.getToggleGroupingHandler=()=>{const o=t.getCanGroup();return()=>{o&&t.toggleGrouping()}},t.getAutoAggregationFn=()=>{const o=n.getCoreRowModel().flatRows[0],r=o==null?void 0:o.getValue(t.id);if(typeof r=="number")return lr.sum;if(Object.prototype.toString.call(r)==="[object Date]")return lr.extent},t.getAggregationFn=()=>{var o,r;if(!t)throw new Error;return Uo(t.columnDef.aggregationFn)?t.columnDef.aggregationFn:t.columnDef.aggregationFn==="auto"?t.getAutoAggregationFn():(o=(r=n.options.aggregationFns)==null?void 0:r[t.columnDef.aggregationFn])!=null?o:lr[t.columnDef.aggregationFn]}},createTable:t=>{t.setGrouping=n=>t.options.onGroupingChange==null?void 0:t.options.onGroupingChange(n),t.resetGrouping=n=>{var o,r;t.setGrouping(n?[]:(o=(r=t.initialState)==null?void 0:r.grouping)!=null?o:[])},t.getPreGroupedRowModel=()=>t.getFilteredRowModel(),t.getGroupedRowModel=()=>(!t._getGroupedRowModel&&t.options.getGroupedRowModel&&(t._getGroupedRowModel=t.options.getGroupedRowModel(t)),t.options.manualGrouping||!t._getGroupedRowModel?t.getPreGroupedRowModel():t._getGroupedRowModel())},createRow:(t,n)=>{t.getIsGrouped=()=>!!t.groupingColumnId,t.getGroupingValue=o=>{if(t._groupingValuesCache.hasOwnProperty(o))return t._groupingValuesCache[o];const r=n.getColumn(o);return r!=null&&r.columnDef.getGroupingValue?(t._groupingValuesCache[o]=r.columnDef.getGroupingValue(t.original),t._groupingValuesCache[o]):t.getValue(o)},t._groupingValuesCache={}},createCell:(t,n,o,r)=>{t.getIsGrouped=()=>n.getIsGrouped()&&n.id===o.groupingColumnId,t.getIsPlaceholder=()=>!t.getIsGrouped()&&n.getIsGrouped(),t.getIsAggregated=()=>{var l;return!t.getIsGrouped()&&!t.getIsPlaceholder()&&!!((l=o.subRows)!=null&&l.length)}}};function mu(t,n,o){if(!(n!=null&&n.length)||!o)return t;const r=t.filter(a=>!n.includes(a.id));return o==="remove"?r:[...n.map(a=>t.find(i=>i.id===a)).filter(Boolean),...r]}const gu={getInitialState:t=>({columnOrder:[],...t}),getDefaultOptions:t=>({onColumnOrderChange:it("columnOrder",t)}),createColumn:(t,n)=>{t.getIndex=ue(o=>[Yn(n,o)],o=>o.findIndex(r=>r.id===t.id),de(n.options,"debugColumns","getIndex")),t.getIsFirstColumn=o=>{var r;return((r=Yn(n,o)[0])==null?void 0:r.id)===t.id},t.getIsLastColumn=o=>{var r;const l=Yn(n,o);return((r=l[l.length-1])==null?void 0:r.id)===t.id}},createTable:t=>{t.setColumnOrder=n=>t.options.onColumnOrderChange==null?void 0:t.options.onColumnOrderChange(n),t.resetColumnOrder=n=>{var o;t.setColumnOrder(n?[]:(o=t.initialState.columnOrder)!=null?o:[])},t._getOrderColumnsFn=ue(()=>[t.getState().columnOrder,t.getState().grouping,t.options.groupedColumnMode],(n,o,r)=>l=>{let a=[];if(!(n!=null&&n.length))a=l;else{const i=[...n],u=[...l];for(;u.length&&i.length;){const s=i.shift(),d=u.findIndex(c=>c.id===s);d>-1&&a.push(u.splice(d,1)[0])}a=[...a,...u]}return mu(a,o,r)},de(t.options,"debugTable","_getOrderColumnsFn"))}},ar=()=>({left:[],right:[]}),vu={getInitialState:t=>({columnPinning:ar(),...t}),getDefaultOptions:t=>({onColumnPinningChange:it("columnPinning",t)}),createColumn:(t,n)=>{t.pin=o=>{const r=t.getLeafColumns().map(l=>l.id).filter(Boolean);n.setColumnPinning(l=>{var a,i;if(o==="right"){var u,s;return{left:((u=l==null?void 0:l.left)!=null?u:[]).filter(f=>!(r!=null&&r.includes(f))),right:[...((s=l==null?void 0:l.right)!=null?s:[]).filter(f=>!(r!=null&&r.includes(f))),...r]}}if(o==="left"){var d,c;return{left:[...((d=l==null?void 0:l.left)!=null?d:[]).filter(f=>!(r!=null&&r.includes(f))),...r],right:((c=l==null?void 0:l.right)!=null?c:[]).filter(f=>!(r!=null&&r.includes(f)))}}return{left:((a=l==null?void 0:l.left)!=null?a:[]).filter(f=>!(r!=null&&r.includes(f))),right:((i=l==null?void 0:l.right)!=null?i:[]).filter(f=>!(r!=null&&r.includes(f)))}})},t.getCanPin=()=>t.getLeafColumns().some(r=>{var l,a,i;return((l=r.columnDef.enablePinning)!=null?l:!0)&&((a=(i=n.options.enableColumnPinning)!=null?i:n.options.enablePinning)!=null?a:!0)}),t.getIsPinned=()=>{const o=t.getLeafColumns().map(u=>u.id),{left:r,right:l}=n.getState().columnPinning,a=o.some(u=>r==null?void 0:r.includes(u)),i=o.some(u=>l==null?void 0:l.includes(u));return a?"left":i?"right":!1},t.getPinnedIndex=()=>{var o,r;const l=t.getIsPinned();return l?(o=(r=n.getState().columnPinning)==null||(r=r[l])==null?void 0:r.indexOf(t.id))!=null?o:-1:0}},createRow:(t,n)=>{t.getCenterVisibleCells=ue(()=>[t._getAllVisibleCells(),n.getState().columnPinning.left,n.getState().columnPinning.right],(o,r,l)=>{const a=[...r??[],...l??[]];return o.filter(i=>!a.includes(i.column.id))},de(n.options,"debugRows","getCenterVisibleCells")),t.getLeftVisibleCells=ue(()=>[t._getAllVisibleCells(),n.getState().columnPinning.left],(o,r)=>(r??[]).map(a=>o.find(i=>i.column.id===a)).filter(Boolean).map(a=>({...a,position:"left"})),de(n.options,"debugRows","getLeftVisibleCells")),t.getRightVisibleCells=ue(()=>[t._getAllVisibleCells(),n.getState().columnPinning.right],(o,r)=>(r??[]).map(a=>o.find(i=>i.column.id===a)).filter(Boolean).map(a=>({...a,position:"right"})),de(n.options,"debugRows","getRightVisibleCells"))},createTable:t=>{t.setColumnPinning=n=>t.options.onColumnPinningChange==null?void 0:t.options.onColumnPinningChange(n),t.resetColumnPinning=n=>{var o,r;return t.setColumnPinning(n?ar():(o=(r=t.initialState)==null?void 0:r.columnPinning)!=null?o:ar())},t.getIsSomeColumnsPinned=n=>{var o;const r=t.getState().columnPinning;if(!n){var l,a;return!!((l=r.left)!=null&&l.length||(a=r.right)!=null&&a.length)}return!!((o=r[n])!=null&&o.length)},t.getLeftLeafColumns=ue(()=>[t.getAllLeafColumns(),t.getState().columnPinning.left],(n,o)=>(o??[]).map(r=>n.find(l=>l.id===r)).filter(Boolean),de(t.options,"debugColumns","getLeftLeafColumns")),t.getRightLeafColumns=ue(()=>[t.getAllLeafColumns(),t.getState().columnPinning.right],(n,o)=>(o??[]).map(r=>n.find(l=>l.id===r)).filter(Boolean),de(t.options,"debugColumns","getRightLeafColumns")),t.getCenterLeafColumns=ue(()=>[t.getAllLeafColumns(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,o,r)=>{const l=[...o??[],...r??[]];return n.filter(a=>!l.includes(a.id))},de(t.options,"debugColumns","getCenterLeafColumns"))}};function hu(t){return t||(typeof document<"u"?document:null)}const po={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},ir=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),xu={getDefaultColumnDef:()=>po,getInitialState:t=>({columnSizing:{},columnSizingInfo:ir(),...t}),getDefaultOptions:t=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:it("columnSizing",t),onColumnSizingInfoChange:it("columnSizingInfo",t)}),createColumn:(t,n)=>{t.getSize=()=>{var o,r,l;const a=n.getState().columnSizing[t.id];return Math.min(Math.max((o=t.columnDef.minSize)!=null?o:po.minSize,(r=a??t.columnDef.size)!=null?r:po.size),(l=t.columnDef.maxSize)!=null?l:po.maxSize)},t.getStart=ue(o=>[o,Yn(n,o),n.getState().columnSizing],(o,r)=>r.slice(0,t.getIndex(o)).reduce((l,a)=>l+a.getSize(),0),de(n.options,"debugColumns","getStart")),t.getAfter=ue(o=>[o,Yn(n,o),n.getState().columnSizing],(o,r)=>r.slice(t.getIndex(o)+1).reduce((l,a)=>l+a.getSize(),0),de(n.options,"debugColumns","getAfter")),t.resetSize=()=>{n.setColumnSizing(o=>{let{[t.id]:r,...l}=o;return l})},t.getCanResize=()=>{var o,r;return((o=t.columnDef.enableResizing)!=null?o:!0)&&((r=n.options.enableColumnResizing)!=null?r:!0)},t.getIsResizing=()=>n.getState().columnSizingInfo.isResizingColumn===t.id},createHeader:(t,n)=>{t.getSize=()=>{let o=0;const r=l=>{if(l.subHeaders.length)l.subHeaders.forEach(r);else{var a;o+=(a=l.column.getSize())!=null?a:0}};return r(t),o},t.getStart=()=>{if(t.index>0){const o=t.headerGroup.headers[t.index-1];return o.getStart()+o.getSize()}return 0},t.getResizeHandler=o=>{const r=n.getColumn(t.column.id),l=r==null?void 0:r.getCanResize();return a=>{if(!r||!l||(a.persist==null||a.persist(),sr(a)&&a.touches&&a.touches.length>1))return;const i=t.getSize(),u=t?t.getLeafHeaders().map(x=>[x.column.id,x.column.getSize()]):[[r.id,r.getSize()]],s=sr(a)?Math.round(a.touches[0].clientX):a.clientX,d={},c=(x,b)=>{typeof b=="number"&&(n.setColumnSizingInfo(y=>{var N,C;const V=n.options.columnResizeDirection==="rtl"?-1:1,_=(b-((N=y==null?void 0:y.startOffset)!=null?N:0))*V,S=Math.max(_/((C=y==null?void 0:y.startSize)!=null?C:0),-.999999);return y.columnSizingStart.forEach(R=>{let[$,U]=R;d[$]=Math.round(Math.max(U+U*S,0)*100)/100}),{...y,deltaOffset:_,deltaPercentage:S}}),(n.options.columnResizeMode==="onChange"||x==="end")&&n.setColumnSizing(y=>({...y,...d})))},f=x=>c("move",x),m=x=>{c("end",x),n.setColumnSizingInfo(b=>({...b,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},p=hu(o),g={moveHandler:x=>f(x.clientX),upHandler:x=>{p==null||p.removeEventListener("mousemove",g.moveHandler),p==null||p.removeEventListener("mouseup",g.upHandler),m(x.clientX)}},v={moveHandler:x=>(x.cancelable&&(x.preventDefault(),x.stopPropagation()),f(x.touches[0].clientX),!1),upHandler:x=>{var b;p==null||p.removeEventListener("touchmove",v.moveHandler),p==null||p.removeEventListener("touchend",v.upHandler),x.cancelable&&(x.preventDefault(),x.stopPropagation()),m((b=x.touches[0])==null?void 0:b.clientX)}},h=yu()?{passive:!1}:!1;sr(a)?(p==null||p.addEventListener("touchmove",v.moveHandler,h),p==null||p.addEventListener("touchend",v.upHandler,h)):(p==null||p.addEventListener("mousemove",g.moveHandler,h),p==null||p.addEventListener("mouseup",g.upHandler,h)),n.setColumnSizingInfo(x=>({...x,startOffset:s,startSize:i,deltaOffset:0,deltaPercentage:0,columnSizingStart:u,isResizingColumn:r.id}))}}},createTable:t=>{t.setColumnSizing=n=>t.options.onColumnSizingChange==null?void 0:t.options.onColumnSizingChange(n),t.setColumnSizingInfo=n=>t.options.onColumnSizingInfoChange==null?void 0:t.options.onColumnSizingInfoChange(n),t.resetColumnSizing=n=>{var o;t.setColumnSizing(n?{}:(o=t.initialState.columnSizing)!=null?o:{})},t.resetHeaderSizeInfo=n=>{var o;t.setColumnSizingInfo(n?ir():(o=t.initialState.columnSizingInfo)!=null?o:ir())},t.getTotalSize=()=>{var n,o;return(n=(o=t.getHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getLeftTotalSize=()=>{var n,o;return(n=(o=t.getLeftHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getCenterTotalSize=()=>{var n,o;return(n=(o=t.getCenterHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0},t.getRightTotalSize=()=>{var n,o;return(n=(o=t.getRightHeaderGroups()[0])==null?void 0:o.headers.reduce((r,l)=>r+l.getSize(),0))!=null?n:0}}};let mo=null;function yu(){if(typeof mo=="boolean")return mo;let t=!1;try{const n={get passive(){return t=!0,!1}},o=()=>{};window.addEventListener("test",o,n),window.removeEventListener("test",o)}catch{t=!1}return mo=t,mo}function sr(t){return t.type==="touchstart"}const Cu={getInitialState:t=>({columnVisibility:{},...t}),getDefaultOptions:t=>({onColumnVisibilityChange:it("columnVisibility",t)}),createColumn:(t,n)=>{t.toggleVisibility=o=>{t.getCanHide()&&n.setColumnVisibility(r=>({...r,[t.id]:o??!t.getIsVisible()}))},t.getIsVisible=()=>{var o,r;const l=t.columns;return(o=l.length?l.some(a=>a.getIsVisible()):(r=n.getState().columnVisibility)==null?void 0:r[t.id])!=null?o:!0},t.getCanHide=()=>{var o,r;return((o=t.columnDef.enableHiding)!=null?o:!0)&&((r=n.options.enableHiding)!=null?r:!0)},t.getToggleVisibilityHandler=()=>o=>{t.toggleVisibility==null||t.toggleVisibility(o.target.checked)}},createRow:(t,n)=>{t._getAllVisibleCells=ue(()=>[t.getAllCells(),n.getState().columnVisibility],o=>o.filter(r=>r.column.getIsVisible()),de(n.options,"debugRows","_getAllVisibleCells")),t.getVisibleCells=ue(()=>[t.getLeftVisibleCells(),t.getCenterVisibleCells(),t.getRightVisibleCells()],(o,r,l)=>[...o,...r,...l],de(n.options,"debugRows","getVisibleCells"))},createTable:t=>{const n=(o,r)=>ue(()=>[r(),r().filter(l=>l.getIsVisible()).map(l=>l.id).join("_")],l=>l.filter(a=>a.getIsVisible==null?void 0:a.getIsVisible()),de(t.options,"debugColumns",o));t.getVisibleFlatColumns=n("getVisibleFlatColumns",()=>t.getAllFlatColumns()),t.getVisibleLeafColumns=n("getVisibleLeafColumns",()=>t.getAllLeafColumns()),t.getLeftVisibleLeafColumns=n("getLeftVisibleLeafColumns",()=>t.getLeftLeafColumns()),t.getRightVisibleLeafColumns=n("getRightVisibleLeafColumns",()=>t.getRightLeafColumns()),t.getCenterVisibleLeafColumns=n("getCenterVisibleLeafColumns",()=>t.getCenterLeafColumns()),t.setColumnVisibility=o=>t.options.onColumnVisibilityChange==null?void 0:t.options.onColumnVisibilityChange(o),t.resetColumnVisibility=o=>{var r;t.setColumnVisibility(o?{}:(r=t.initialState.columnVisibility)!=null?r:{})},t.toggleAllColumnsVisible=o=>{var r;o=(r=o)!=null?r:!t.getIsAllColumnsVisible(),t.setColumnVisibility(t.getAllLeafColumns().reduce((l,a)=>({...l,[a.id]:o||!(a.getCanHide!=null&&a.getCanHide())}),{}))},t.getIsAllColumnsVisible=()=>!t.getAllLeafColumns().some(o=>!(o.getIsVisible!=null&&o.getIsVisible())),t.getIsSomeColumnsVisible=()=>t.getAllLeafColumns().some(o=>o.getIsVisible==null?void 0:o.getIsVisible()),t.getToggleAllColumnsVisibilityHandler=()=>o=>{var r;t.toggleAllColumnsVisible((r=o.target)==null?void 0:r.checked)}}};function Yn(t,n){return n?n==="center"?t.getCenterVisibleLeafColumns():n==="left"?t.getLeftVisibleLeafColumns():t.getRightVisibleLeafColumns():t.getVisibleLeafColumns()}const Vu={createTable:t=>{t._getGlobalFacetedRowModel=t.options.getFacetedRowModel&&t.options.getFacetedRowModel(t,"__global__"),t.getGlobalFacetedRowModel=()=>t.options.manualFiltering||!t._getGlobalFacetedRowModel?t.getPreFilteredRowModel():t._getGlobalFacetedRowModel(),t._getGlobalFacetedUniqueValues=t.options.getFacetedUniqueValues&&t.options.getFacetedUniqueValues(t,"__global__"),t.getGlobalFacetedUniqueValues=()=>t._getGlobalFacetedUniqueValues?t._getGlobalFacetedUniqueValues():new Map,t._getGlobalFacetedMinMaxValues=t.options.getFacetedMinMaxValues&&t.options.getFacetedMinMaxValues(t,"__global__"),t.getGlobalFacetedMinMaxValues=()=>{if(t._getGlobalFacetedMinMaxValues)return t._getGlobalFacetedMinMaxValues()}}},wu={getInitialState:t=>({globalFilter:void 0,...t}),getDefaultOptions:t=>({onGlobalFilterChange:it("globalFilter",t),globalFilterFn:"auto",getColumnCanGlobalFilter:n=>{var o;const r=(o=t.getCoreRowModel().flatRows[0])==null||(o=o._getAllCellsByColumnId()[n.id])==null?void 0:o.getValue();return typeof r=="string"||typeof r=="number"}}),createColumn:(t,n)=>{t.getCanGlobalFilter=()=>{var o,r,l,a;return((o=t.columnDef.enableGlobalFilter)!=null?o:!0)&&((r=n.options.enableGlobalFilter)!=null?r:!0)&&((l=n.options.enableFilters)!=null?l:!0)&&((a=n.options.getColumnCanGlobalFilter==null?void 0:n.options.getColumnCanGlobalFilter(t))!=null?a:!0)&&!!t.accessorFn}},createTable:t=>{t.getGlobalAutoFilterFn=()=>St.includesString,t.getGlobalFilterFn=()=>{var n,o;const{globalFilterFn:r}=t.options;return Uo(r)?r:r==="auto"?t.getGlobalAutoFilterFn():(n=(o=t.options.filterFns)==null?void 0:o[r])!=null?n:St[r]},t.setGlobalFilter=n=>{t.options.onGlobalFilterChange==null||t.options.onGlobalFilterChange(n)},t.resetGlobalFilter=n=>{t.setGlobalFilter(n?void 0:t.initialState.globalFilter)}}},bu={getInitialState:t=>({expanded:{},...t}),getDefaultOptions:t=>({onExpandedChange:it("expanded",t),paginateExpandedRows:!0}),createTable:t=>{let n=!1,o=!1;t._autoResetExpanded=()=>{var r,l;if(!n){t._queue(()=>{n=!0});return}if((r=(l=t.options.autoResetAll)!=null?l:t.options.autoResetExpanded)!=null?r:!t.options.manualExpanding){if(o)return;o=!0,t._queue(()=>{t.resetExpanded(),o=!1})}},t.setExpanded=r=>t.options.onExpandedChange==null?void 0:t.options.onExpandedChange(r),t.toggleAllRowsExpanded=r=>{r??!t.getIsAllRowsExpanded()?t.setExpanded(!0):t.setExpanded({})},t.resetExpanded=r=>{var l,a;t.setExpanded(r?{}:(l=(a=t.initialState)==null?void 0:a.expanded)!=null?l:{})},t.getCanSomeRowsExpand=()=>t.getPrePaginationRowModel().flatRows.some(r=>r.getCanExpand()),t.getToggleAllRowsExpandedHandler=()=>r=>{r.persist==null||r.persist(),t.toggleAllRowsExpanded()},t.getIsSomeRowsExpanded=()=>{const r=t.getState().expanded;return r===!0||Object.values(r).some(Boolean)},t.getIsAllRowsExpanded=()=>{const r=t.getState().expanded;return typeof r=="boolean"?r===!0:!(!Object.keys(r).length||t.getRowModel().flatRows.some(l=>!l.getIsExpanded()))},t.getExpandedDepth=()=>{let r=0;return(t.getState().expanded===!0?Object.keys(t.getRowModel().rowsById):Object.keys(t.getState().expanded)).forEach(a=>{const i=a.split(".");r=Math.max(r,i.length)}),r},t.getPreExpandedRowModel=()=>t.getSortedRowModel(),t.getExpandedRowModel=()=>(!t._getExpandedRowModel&&t.options.getExpandedRowModel&&(t._getExpandedRowModel=t.options.getExpandedRowModel(t)),t.options.manualExpanding||!t._getExpandedRowModel?t.getPreExpandedRowModel():t._getExpandedRowModel())},createRow:(t,n)=>{t.toggleExpanded=o=>{n.setExpanded(r=>{var l;const a=r===!0?!0:!!(r!=null&&r[t.id]);let i={};if(r===!0?Object.keys(n.getRowModel().rowsById).forEach(u=>{i[u]=!0}):i=r,o=(l=o)!=null?l:!a,!a&&o)return{...i,[t.id]:!0};if(a&&!o){const{[t.id]:u,...s}=i;return s}return r})},t.getIsExpanded=()=>{var o;const r=n.getState().expanded;return!!((o=n.options.getIsRowExpanded==null?void 0:n.options.getIsRowExpanded(t))!=null?o:r===!0||r!=null&&r[t.id])},t.getCanExpand=()=>{var o,r,l;return(o=n.options.getRowCanExpand==null?void 0:n.options.getRowCanExpand(t))!=null?o:((r=n.options.enableExpanding)!=null?r:!0)&&!!((l=t.subRows)!=null&&l.length)},t.getIsAllParentsExpanded=()=>{let o=!0,r=t;for(;o&&r.parentId;)r=n.getRow(r.parentId,!0),o=r.getIsExpanded();return o},t.getToggleExpandedHandler=()=>{const o=t.getCanExpand();return()=>{o&&t.toggleExpanded()}}}},Er=0,Ar=10,ur=()=>({pageIndex:Er,pageSize:Ar}),_u={getInitialState:t=>({...t,pagination:{...ur(),...t==null?void 0:t.pagination}}),getDefaultOptions:t=>({onPaginationChange:it("pagination",t)}),createTable:t=>{let n=!1,o=!1;t._autoResetPageIndex=()=>{var r,l;if(!n){t._queue(()=>{n=!0});return}if((r=(l=t.options.autoResetAll)!=null?l:t.options.autoResetPageIndex)!=null?r:!t.options.manualPagination){if(o)return;o=!0,t._queue(()=>{t.resetPageIndex(),o=!1})}},t.setPagination=r=>{const l=a=>Ut(r,a);return t.options.onPaginationChange==null?void 0:t.options.onPaginationChange(l)},t.resetPagination=r=>{var l;t.setPagination(r?ur():(l=t.initialState.pagination)!=null?l:ur())},t.setPageIndex=r=>{t.setPagination(l=>{let a=Ut(r,l.pageIndex);const i=typeof t.options.pageCount>"u"||t.options.pageCount===-1?Number.MAX_SAFE_INTEGER:t.options.pageCount-1;return a=Math.max(0,Math.min(a,i)),{...l,pageIndex:a}})},t.resetPageIndex=r=>{var l,a;t.setPageIndex(r?Er:(l=(a=t.initialState)==null||(a=a.pagination)==null?void 0:a.pageIndex)!=null?l:Er)},t.resetPageSize=r=>{var l,a;t.setPageSize(r?Ar:(l=(a=t.initialState)==null||(a=a.pagination)==null?void 0:a.pageSize)!=null?l:Ar)},t.setPageSize=r=>{t.setPagination(l=>{const a=Math.max(1,Ut(r,l.pageSize)),i=l.pageSize*l.pageIndex,u=Math.floor(i/a);return{...l,pageIndex:u,pageSize:a}})},t.setPageCount=r=>t.setPagination(l=>{var a;let i=Ut(r,(a=t.options.pageCount)!=null?a:-1);return typeof i=="number"&&(i=Math.max(-1,i)),{...l,pageCount:i}}),t.getPageOptions=ue(()=>[t.getPageCount()],r=>{let l=[];return r&&r>0&&(l=[...new Array(r)].fill(null).map((a,i)=>i)),l},de(t.options,"debugTable","getPageOptions")),t.getCanPreviousPage=()=>t.getState().pagination.pageIndex>0,t.getCanNextPage=()=>{const{pageIndex:r}=t.getState().pagination,l=t.getPageCount();return l===-1?!0:l===0?!1:r<l-1},t.previousPage=()=>t.setPageIndex(r=>r-1),t.nextPage=()=>t.setPageIndex(r=>r+1),t.firstPage=()=>t.setPageIndex(0),t.lastPage=()=>t.setPageIndex(t.getPageCount()-1),t.getPrePaginationRowModel=()=>t.getExpandedRowModel(),t.getPaginationRowModel=()=>(!t._getPaginationRowModel&&t.options.getPaginationRowModel&&(t._getPaginationRowModel=t.options.getPaginationRowModel(t)),t.options.manualPagination||!t._getPaginationRowModel?t.getPrePaginationRowModel():t._getPaginationRowModel()),t.getPageCount=()=>{var r;return(r=t.options.pageCount)!=null?r:Math.ceil(t.getRowCount()/t.getState().pagination.pageSize)},t.getRowCount=()=>{var r;return(r=t.options.rowCount)!=null?r:t.getPrePaginationRowModel().rows.length}}},dr=()=>({top:[],bottom:[]}),Nu={getInitialState:t=>({rowPinning:dr(),...t}),getDefaultOptions:t=>({onRowPinningChange:it("rowPinning",t)}),createRow:(t,n)=>{t.pin=(o,r,l)=>{const a=r?t.getLeafRows().map(s=>{let{id:d}=s;return d}):[],i=l?t.getParentRows().map(s=>{let{id:d}=s;return d}):[],u=new Set([...i,t.id,...a]);n.setRowPinning(s=>{var d,c;if(o==="bottom"){var f,m;return{top:((f=s==null?void 0:s.top)!=null?f:[]).filter(v=>!(u!=null&&u.has(v))),bottom:[...((m=s==null?void 0:s.bottom)!=null?m:[]).filter(v=>!(u!=null&&u.has(v))),...Array.from(u)]}}if(o==="top"){var p,g;return{top:[...((p=s==null?void 0:s.top)!=null?p:[]).filter(v=>!(u!=null&&u.has(v))),...Array.from(u)],bottom:((g=s==null?void 0:s.bottom)!=null?g:[]).filter(v=>!(u!=null&&u.has(v)))}}return{top:((d=s==null?void 0:s.top)!=null?d:[]).filter(v=>!(u!=null&&u.has(v))),bottom:((c=s==null?void 0:s.bottom)!=null?c:[]).filter(v=>!(u!=null&&u.has(v)))}})},t.getCanPin=()=>{var o;const{enableRowPinning:r,enablePinning:l}=n.options;return typeof r=="function"?r(t):(o=r??l)!=null?o:!0},t.getIsPinned=()=>{const o=[t.id],{top:r,bottom:l}=n.getState().rowPinning,a=o.some(u=>r==null?void 0:r.includes(u)),i=o.some(u=>l==null?void 0:l.includes(u));return a?"top":i?"bottom":!1},t.getPinnedIndex=()=>{var o,r;const l=t.getIsPinned();if(!l)return-1;const a=(o=l==="top"?n.getTopRows():n.getBottomRows())==null?void 0:o.map(i=>{let{id:u}=i;return u});return(r=a==null?void 0:a.indexOf(t.id))!=null?r:-1}},createTable:t=>{t.setRowPinning=n=>t.options.onRowPinningChange==null?void 0:t.options.onRowPinningChange(n),t.resetRowPinning=n=>{var o,r;return t.setRowPinning(n?dr():(o=(r=t.initialState)==null?void 0:r.rowPinning)!=null?o:dr())},t.getIsSomeRowsPinned=n=>{var o;const r=t.getState().rowPinning;if(!n){var l,a;return!!((l=r.top)!=null&&l.length||(a=r.bottom)!=null&&a.length)}return!!((o=r[n])!=null&&o.length)},t._getPinnedRows=(n,o,r)=>{var l;return((l=t.options.keepPinnedRows)==null||l?(o??[]).map(i=>{const u=t.getRow(i,!0);return u.getIsAllParentsExpanded()?u:null}):(o??[]).map(i=>n.find(u=>u.id===i))).filter(Boolean).map(i=>({...i,position:r}))},t.getTopRows=ue(()=>[t.getRowModel().rows,t.getState().rowPinning.top],(n,o)=>t._getPinnedRows(n,o,"top"),de(t.options,"debugRows","getTopRows")),t.getBottomRows=ue(()=>[t.getRowModel().rows,t.getState().rowPinning.bottom],(n,o)=>t._getPinnedRows(n,o,"bottom"),de(t.options,"debugRows","getBottomRows")),t.getCenterRows=ue(()=>[t.getRowModel().rows,t.getState().rowPinning.top,t.getState().rowPinning.bottom],(n,o,r)=>{const l=new Set([...o??[],...r??[]]);return n.filter(a=>!l.has(a.id))},de(t.options,"debugRows","getCenterRows"))}},ku={getInitialState:t=>({rowSelection:{},...t}),getDefaultOptions:t=>({onRowSelectionChange:it("rowSelection",t),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:t=>{t.setRowSelection=n=>t.options.onRowSelectionChange==null?void 0:t.options.onRowSelectionChange(n),t.resetRowSelection=n=>{var o;return t.setRowSelection(n?{}:(o=t.initialState.rowSelection)!=null?o:{})},t.toggleAllRowsSelected=n=>{t.setRowSelection(o=>{n=typeof n<"u"?n:!t.getIsAllRowsSelected();const r={...o},l=t.getPreGroupedRowModel().flatRows;return n?l.forEach(a=>{a.getCanSelect()&&(r[a.id]=!0)}):l.forEach(a=>{delete r[a.id]}),r})},t.toggleAllPageRowsSelected=n=>t.setRowSelection(o=>{const r=typeof n<"u"?n:!t.getIsAllPageRowsSelected(),l={...o};return t.getRowModel().rows.forEach(a=>{Tr(l,a.id,r,!0,t)}),l}),t.getPreSelectedRowModel=()=>t.getCoreRowModel(),t.getSelectedRowModel=ue(()=>[t.getState().rowSelection,t.getCoreRowModel()],(n,o)=>Object.keys(n).length?cr(t,o):{rows:[],flatRows:[],rowsById:{}},de(t.options,"debugTable","getSelectedRowModel")),t.getFilteredSelectedRowModel=ue(()=>[t.getState().rowSelection,t.getFilteredRowModel()],(n,o)=>Object.keys(n).length?cr(t,o):{rows:[],flatRows:[],rowsById:{}},de(t.options,"debugTable","getFilteredSelectedRowModel")),t.getGroupedSelectedRowModel=ue(()=>[t.getState().rowSelection,t.getSortedRowModel()],(n,o)=>Object.keys(n).length?cr(t,o):{rows:[],flatRows:[],rowsById:{}},de(t.options,"debugTable","getGroupedSelectedRowModel")),t.getIsAllRowsSelected=()=>{const n=t.getFilteredRowModel().flatRows,{rowSelection:o}=t.getState();let r=!!(n.length&&Object.keys(o).length);return r&&n.some(l=>l.getCanSelect()&&!o[l.id])&&(r=!1),r},t.getIsAllPageRowsSelected=()=>{const n=t.getPaginationRowModel().flatRows.filter(l=>l.getCanSelect()),{rowSelection:o}=t.getState();let r=!!n.length;return r&&n.some(l=>!o[l.id])&&(r=!1),r},t.getIsSomeRowsSelected=()=>{var n;const o=Object.keys((n=t.getState().rowSelection)!=null?n:{}).length;return o>0&&o<t.getFilteredRowModel().flatRows.length},t.getIsSomePageRowsSelected=()=>{const n=t.getPaginationRowModel().flatRows;return t.getIsAllPageRowsSelected()?!1:n.filter(o=>o.getCanSelect()).some(o=>o.getIsSelected()||o.getIsSomeSelected())},t.getToggleAllRowsSelectedHandler=()=>n=>{t.toggleAllRowsSelected(n.target.checked)},t.getToggleAllPageRowsSelectedHandler=()=>n=>{t.toggleAllPageRowsSelected(n.target.checked)}},createRow:(t,n)=>{t.toggleSelected=(o,r)=>{const l=t.getIsSelected();n.setRowSelection(a=>{var i;if(o=typeof o<"u"?o:!l,t.getCanSelect()&&l===o)return a;const u={...a};return Tr(u,t.id,o,(i=r==null?void 0:r.selectChildren)!=null?i:!0,n),u})},t.getIsSelected=()=>{const{rowSelection:o}=n.getState();return tl(t,o)},t.getIsSomeSelected=()=>{const{rowSelection:o}=n.getState();return Br(t,o)==="some"},t.getIsAllSubRowsSelected=()=>{const{rowSelection:o}=n.getState();return Br(t,o)==="all"},t.getCanSelect=()=>{var o;return typeof n.options.enableRowSelection=="function"?n.options.enableRowSelection(t):(o=n.options.enableRowSelection)!=null?o:!0},t.getCanSelectSubRows=()=>{var o;return typeof n.options.enableSubRowSelection=="function"?n.options.enableSubRowSelection(t):(o=n.options.enableSubRowSelection)!=null?o:!0},t.getCanMultiSelect=()=>{var o;return typeof n.options.enableMultiRowSelection=="function"?n.options.enableMultiRowSelection(t):(o=n.options.enableMultiRowSelection)!=null?o:!0},t.getToggleSelectedHandler=()=>{const o=t.getCanSelect();return r=>{var l;o&&t.toggleSelected((l=r.target)==null?void 0:l.checked)}}}},Tr=(t,n,o,r,l)=>{var a;const i=l.getRow(n,!0);o?(i.getCanMultiSelect()||Object.keys(t).forEach(u=>delete t[u]),i.getCanSelect()&&(t[n]=!0)):delete t[n],r&&(a=i.subRows)!=null&&a.length&&i.getCanSelectSubRows()&&i.subRows.forEach(u=>Tr(t,u.id,o,r,l))};function cr(t,n){const o=t.getState().rowSelection,r=[],l={},a=function(i,u){return i.map(s=>{var d;const c=tl(s,o);if(c&&(r.push(s),l[s.id]=s),(d=s.subRows)!=null&&d.length&&(s={...s,subRows:a(s.subRows)}),c)return s}).filter(Boolean)};return{rows:a(n.rows),flatRows:r,rowsById:l}}function tl(t,n){var o;return(o=n[t.id])!=null?o:!1}function Br(t,n,o){var r;if(!((r=t.subRows)!=null&&r.length))return!1;let l=!0,a=!1;return t.subRows.forEach(i=>{if(!(a&&!l)&&(i.getCanSelect()&&(tl(i,n)?a=!0:l=!1),i.subRows&&i.subRows.length)){const u=Br(i,n);u==="all"?a=!0:(u==="some"&&(a=!0),l=!1)}}),l?"all":a?"some":!1}const Dr=/([0-9]+)/gm,Su=(t,n,o)=>Ya(Ht(t.getValue(o)).toLowerCase(),Ht(n.getValue(o)).toLowerCase()),Eu=(t,n,o)=>Ya(Ht(t.getValue(o)),Ht(n.getValue(o))),Au=(t,n,o)=>nl(Ht(t.getValue(o)).toLowerCase(),Ht(n.getValue(o)).toLowerCase()),Tu=(t,n,o)=>nl(Ht(t.getValue(o)),Ht(n.getValue(o))),Bu=(t,n,o)=>{const r=t.getValue(o),l=n.getValue(o);return r>l?1:r<l?-1:0},Du=(t,n,o)=>nl(t.getValue(o),n.getValue(o));function nl(t,n){return t===n?0:t>n?1:-1}function Ht(t){return typeof t=="number"?isNaN(t)||t===1/0||t===-1/0?"":String(t):typeof t=="string"?t:""}function Ya(t,n){const o=t.split(Dr).filter(Boolean),r=n.split(Dr).filter(Boolean);for(;o.length&&r.length;){const l=o.shift(),a=r.shift(),i=parseInt(l,10),u=parseInt(a,10),s=[i,u].sort();if(isNaN(s[0])){if(l>a)return 1;if(a>l)return-1;continue}if(isNaN(s[1]))return isNaN(i)?-1:1;if(i>u)return 1;if(u>i)return-1}return o.length-r.length}const Pn={alphanumeric:Su,alphanumericCaseSensitive:Eu,text:Au,textCaseSensitive:Tu,datetime:Bu,basic:Du},Ru={getInitialState:t=>({sorting:[],...t}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:t=>({onSortingChange:it("sorting",t),isMultiSortEvent:n=>n.shiftKey}),createColumn:(t,n)=>{t.getAutoSortingFn=()=>{const o=n.getFilteredRowModel().flatRows.slice(10);let r=!1;for(const l of o){const a=l==null?void 0:l.getValue(t.id);if(Object.prototype.toString.call(a)==="[object Date]")return Pn.datetime;if(typeof a=="string"&&(r=!0,a.split(Dr).length>1))return Pn.alphanumeric}return r?Pn.text:Pn.basic},t.getAutoSortDir=()=>{const o=n.getFilteredRowModel().flatRows[0];return typeof(o==null?void 0:o.getValue(t.id))=="string"?"asc":"desc"},t.getSortingFn=()=>{var o,r;if(!t)throw new Error;return Uo(t.columnDef.sortingFn)?t.columnDef.sortingFn:t.columnDef.sortingFn==="auto"?t.getAutoSortingFn():(o=(r=n.options.sortingFns)==null?void 0:r[t.columnDef.sortingFn])!=null?o:Pn[t.columnDef.sortingFn]},t.toggleSorting=(o,r)=>{const l=t.getNextSortingOrder(),a=typeof o<"u"&&o!==null;n.setSorting(i=>{const u=i==null?void 0:i.find(p=>p.id===t.id),s=i==null?void 0:i.findIndex(p=>p.id===t.id);let d=[],c,f=a?o:l==="desc";if(i!=null&&i.length&&t.getCanMultiSort()&&r?u?c="toggle":c="add":i!=null&&i.length&&s!==i.length-1?c="replace":u?c="toggle":c="replace",c==="toggle"&&(a||l||(c="remove")),c==="add"){var m;d=[...i,{id:t.id,desc:f}],d.splice(0,d.length-((m=n.options.maxMultiSortColCount)!=null?m:Number.MAX_SAFE_INTEGER))}else c==="toggle"?d=i.map(p=>p.id===t.id?{...p,desc:f}:p):c==="remove"?d=i.filter(p=>p.id!==t.id):d=[{id:t.id,desc:f}];return d})},t.getFirstSortDir=()=>{var o,r;return((o=(r=t.columnDef.sortDescFirst)!=null?r:n.options.sortDescFirst)!=null?o:t.getAutoSortDir()==="desc")?"desc":"asc"},t.getNextSortingOrder=o=>{var r,l;const a=t.getFirstSortDir(),i=t.getIsSorted();return i?i!==a&&((r=n.options.enableSortingRemoval)==null||r)&&(!(o&&(l=n.options.enableMultiRemove)!=null)||l)?!1:i==="desc"?"asc":"desc":a},t.getCanSort=()=>{var o,r;return((o=t.columnDef.enableSorting)!=null?o:!0)&&((r=n.options.enableSorting)!=null?r:!0)&&!!t.accessorFn},t.getCanMultiSort=()=>{var o,r;return(o=(r=t.columnDef.enableMultiSort)!=null?r:n.options.enableMultiSort)!=null?o:!!t.accessorFn},t.getIsSorted=()=>{var o;const r=(o=n.getState().sorting)==null?void 0:o.find(l=>l.id===t.id);return r?r.desc?"desc":"asc":!1},t.getSortIndex=()=>{var o,r;return(o=(r=n.getState().sorting)==null?void 0:r.findIndex(l=>l.id===t.id))!=null?o:-1},t.clearSorting=()=>{n.setSorting(o=>o!=null&&o.length?o.filter(r=>r.id!==t.id):[])},t.getToggleSortingHandler=()=>{const o=t.getCanSort();return r=>{o&&(r.persist==null||r.persist(),t.toggleSorting==null||t.toggleSorting(void 0,t.getCanMultiSort()?n.options.isMultiSortEvent==null?void 0:n.options.isMultiSortEvent(r):!1))}}},createTable:t=>{t.setSorting=n=>t.options.onSortingChange==null?void 0:t.options.onSortingChange(n),t.resetSorting=n=>{var o,r;t.setSorting(n?[]:(o=(r=t.initialState)==null?void 0:r.sorting)!=null?o:[])},t.getPreSortedRowModel=()=>t.getGroupedRowModel(),t.getSortedRowModel=()=>(!t._getSortedRowModel&&t.options.getSortedRowModel&&(t._getSortedRowModel=t.options.getSortedRowModel(t)),t.options.manualSorting||!t._getSortedRowModel?t.getPreSortedRowModel():t._getSortedRowModel())}},Iu=[tu,Cu,gu,vu,nu,ou,Vu,wu,Ru,pu,bu,_u,Nu,ku,xu];function Mu(t){var n,o;process.env.NODE_ENV!=="production"&&(t.debugAll||t.debugTable)&&console.info("Creating Table Instance...");const r=[...Iu,...(n=t._features)!=null?n:[]];let l={_features:r};const a=l._features.reduce((m,p)=>Object.assign(m,p.getDefaultOptions==null?void 0:p.getDefaultOptions(l)),{}),i=m=>l.options.mergeOptions?l.options.mergeOptions(a,m):{...a,...m};let s={...{},...(o=t.initialState)!=null?o:{}};l._features.forEach(m=>{var p;s=(p=m.getInitialState==null?void 0:m.getInitialState(s))!=null?p:s});const d=[];let c=!1;const f={_features:r,options:{...a,...t},initialState:s,_queue:m=>{d.push(m),c||(c=!0,Promise.resolve().then(()=>{for(;d.length;)d.shift()();c=!1}).catch(p=>setTimeout(()=>{throw p})))},reset:()=>{l.setState(l.initialState)},setOptions:m=>{const p=Ut(m,l.options);l.options=i(p)},getState:()=>l.options.state,setState:m=>{l.options.onStateChange==null||l.options.onStateChange(m)},_getRowId:(m,p,g)=>{var v;return(v=l.options.getRowId==null?void 0:l.options.getRowId(m,p,g))!=null?v:`${g?[g.id,p].join("."):p}`},getCoreRowModel:()=>(l._getCoreRowModel||(l._getCoreRowModel=l.options.getCoreRowModel(l)),l._getCoreRowModel()),getRowModel:()=>l.getPaginationRowModel(),getRow:(m,p)=>{let g=(p?l.getPrePaginationRowModel():l.getRowModel()).rowsById[m];if(!g&&(g=l.getCoreRowModel().rowsById[m],!g))throw process.env.NODE_ENV!=="production"?new Error(`getRow could not find row with ID: ${m}`):new Error;return g},_getDefaultColumnDef:ue(()=>[l.options.defaultColumn],m=>{var p;return m=(p=m)!=null?p:{},{header:g=>{const v=g.header.column.columnDef;return v.accessorKey?v.accessorKey:v.accessorFn?v.id:null},cell:g=>{var v,h;return(v=(h=g.renderValue())==null||h.toString==null?void 0:h.toString())!=null?v:null},...l._features.reduce((g,v)=>Object.assign(g,v.getDefaultColumnDef==null?void 0:v.getDefaultColumnDef()),{}),...m}},de(t,"debugColumns","_getDefaultColumnDef")),_getColumnDefs:()=>l.options.columns,getAllColumns:ue(()=>[l._getColumnDefs()],m=>{const p=function(g,v,h){return h===void 0&&(h=0),g.map(x=>{const b=eu(l,x,h,v),y=x;return b.columns=y.columns?p(y.columns,b,h+1):[],b})};return p(m)},de(t,"debugColumns","getAllColumns")),getAllFlatColumns:ue(()=>[l.getAllColumns()],m=>m.flatMap(p=>p.getFlatColumns()),de(t,"debugColumns","getAllFlatColumns")),_getAllFlatColumnsById:ue(()=>[l.getAllFlatColumns()],m=>m.reduce((p,g)=>(p[g.id]=g,p),{}),de(t,"debugColumns","getAllFlatColumnsById")),getAllLeafColumns:ue(()=>[l.getAllColumns(),l._getOrderColumnsFn()],(m,p)=>{let g=m.flatMap(v=>v.getLeafColumns());return p(g)},de(t,"debugColumns","getAllLeafColumns")),getColumn:m=>{const p=l._getAllFlatColumnsById()[m];return process.env.NODE_ENV!=="production"&&!p&&console.error(`[Table] Column with id '${m}' does not exist.`),p}};Object.assign(l,f);for(let m=0;m<l._features.length;m++){const p=l._features[m];p==null||p.createTable==null||p.createTable(l)}return l}function Pu(){return t=>ue(()=>[t.options.data],n=>{const o={rows:[],flatRows:[],rowsById:{}},r=function(l,a,i){a===void 0&&(a=0);const u=[];for(let d=0;d<l.length;d++){const c=Qr(t,t._getRowId(l[d],d,i),l[d],d,a,void 0,i==null?void 0:i.id);if(o.flatRows.push(c),o.rowsById[c.id]=c,u.push(c),t.options.getSubRows){var s;c.originalSubRows=t.options.getSubRows(l[d],d),(s=c.originalSubRows)!=null&&s.length&&(c.subRows=r(c.originalSubRows,a+1,c))}}return u};return o.rows=r(n),o},de(t.options,"debugTable","getRowModel",()=>t._autoResetPageIndex()))}function Fu(){return t=>ue(()=>[t.getState().expanded,t.getPreExpandedRowModel(),t.options.paginateExpandedRows],(n,o,r)=>!o.rows.length||n!==!0&&!Object.keys(n??{}).length||!r?o:Za(o),de(t.options,"debugTable","getExpandedRowModel"))}function Za(t){const n=[],o=r=>{var l;n.push(r),(l=r.subRows)!=null&&l.length&&r.getIsExpanded()&&r.subRows.forEach(o)};return t.rows.forEach(o),{rows:n,flatRows:t.flatRows,rowsById:t.rowsById}}function Ou(t,n,o){return o.options.filterFromLeafRows?zu(t,n,o):Lu(t,n,o)}function zu(t,n,o){var r;const l=[],a={},i=(r=o.options.maxLeafRowFilterDepth)!=null?r:100,u=function(s,d){d===void 0&&(d=0);const c=[];for(let m=0;m<s.length;m++){var f;let p=s[m];const g=Qr(o,p.id,p.original,p.index,p.depth,void 0,p.parentId);if(g.columnFilters=p.columnFilters,(f=p.subRows)!=null&&f.length&&d<i){if(g.subRows=u(p.subRows,d+1),p=g,n(p)&&!g.subRows.length){c.push(p),a[p.id]=p,l.push(p);continue}if(n(p)||g.subRows.length){c.push(p),a[p.id]=p,l.push(p);continue}}else p=g,n(p)&&(c.push(p),a[p.id]=p,l.push(p))}return c};return{rows:u(t),flatRows:l,rowsById:a}}function Lu(t,n,o){var r;const l=[],a={},i=(r=o.options.maxLeafRowFilterDepth)!=null?r:100,u=function(s,d){d===void 0&&(d=0);const c=[];for(let m=0;m<s.length;m++){let p=s[m];if(n(p)){var f;if((f=p.subRows)!=null&&f.length&&d<i){const v=Qr(o,p.id,p.original,p.index,p.depth,void 0,p.parentId);v.subRows=u(p.subRows,d+1),p=v}c.push(p),l.push(p),a[p.id]=p}}return c};return{rows:u(t),flatRows:l,rowsById:a}}function Uu(){return t=>ue(()=>[t.getPreFilteredRowModel(),t.getState().columnFilters,t.getState().globalFilter],(n,o,r)=>{if(!n.rows.length||!(o!=null&&o.length)&&!r){for(let m=0;m<n.flatRows.length;m++)n.flatRows[m].columnFilters={},n.flatRows[m].columnFiltersMeta={};return n}const l=[],a=[];(o??[]).forEach(m=>{var p;const g=t.getColumn(m.id);if(!g)return;const v=g.getFilterFn();if(!v){process.env.NODE_ENV!=="production"&&console.warn(`Could not find a valid 'column.filterFn' for column with the ID: ${g.id}.`);return}l.push({id:m.id,filterFn:v,resolvedValue:(p=v.resolveFilterValue==null?void 0:v.resolveFilterValue(m.value))!=null?p:m.value})});const i=(o??[]).map(m=>m.id),u=t.getGlobalFilterFn(),s=t.getAllLeafColumns().filter(m=>m.getCanGlobalFilter());r&&u&&s.length&&(i.push("__global__"),s.forEach(m=>{var p;a.push({id:m.id,filterFn:u,resolvedValue:(p=u.resolveFilterValue==null?void 0:u.resolveFilterValue(r))!=null?p:r})}));let d,c;for(let m=0;m<n.flatRows.length;m++){const p=n.flatRows[m];if(p.columnFilters={},l.length)for(let g=0;g<l.length;g++){d=l[g];const v=d.id;p.columnFilters[v]=d.filterFn(p,v,d.resolvedValue,h=>{p.columnFiltersMeta[v]=h})}if(a.length){for(let g=0;g<a.length;g++){c=a[g];const v=c.id;if(c.filterFn(p,v,c.resolvedValue,h=>{p.columnFiltersMeta[v]=h})){p.columnFilters.__global__=!0;break}}p.columnFilters.__global__!==!0&&(p.columnFilters.__global__=!1)}}const f=m=>{for(let p=0;p<i.length;p++)if(m.columnFilters[i[p]]===!1)return!1;return!0};return Ou(n.rows,f,t)},de(t.options,"debugTable","getFilteredRowModel",()=>t._autoResetPageIndex()))}function ju(t){return n=>ue(()=>[n.getState().pagination,n.getPrePaginationRowModel(),n.options.paginateExpandedRows?void 0:n.getState().expanded],(o,r)=>{if(!r.rows.length)return r;const{pageSize:l,pageIndex:a}=o;let{rows:i,flatRows:u,rowsById:s}=r;const d=l*a,c=d+l;i=i.slice(d,c);let f;n.options.paginateExpandedRows?f={rows:i,flatRows:u,rowsById:s}:f=Za({rows:i,flatRows:u,rowsById:s}),f.flatRows=[];const m=p=>{f.flatRows.push(p),p.subRows.length&&p.subRows.forEach(m)};return f.rows.forEach(m),f},de(n.options,"debugTable","getPaginationRowModel"))}function $u(){return t=>ue(()=>[t.getState().sorting,t.getPreSortedRowModel()],(n,o)=>{if(!o.rows.length||!(n!=null&&n.length))return o;const r=t.getState().sorting,l=[],a=r.filter(s=>{var d;return(d=t.getColumn(s.id))==null?void 0:d.getCanSort()}),i={};a.forEach(s=>{const d=t.getColumn(s.id);d&&(i[s.id]={sortUndefined:d.columnDef.sortUndefined,invertSorting:d.columnDef.invertSorting,sortingFn:d.getSortingFn()})});const u=s=>{const d=s.map(c=>({...c}));return d.sort((c,f)=>{for(let p=0;p<a.length;p+=1){var m;const g=a[p],v=i[g.id],h=v.sortUndefined,x=(m=g==null?void 0:g.desc)!=null?m:!1;let b=0;if(h){const y=c.getValue(g.id),N=f.getValue(g.id),C=y===void 0,V=N===void 0;if(C||V){if(h==="first")return C?-1:1;if(h==="last")return C?1:-1;b=C&&V?0:C?h:-h}}if(b===0&&(b=v.sortingFn(c,f,g.id)),b!==0)return x&&(b*=-1),v.invertSorting&&(b*=-1),b}return c.index-f.index}),d.forEach(c=>{var f;l.push(c),(f=c.subRows)!=null&&f.length&&(c.subRows=u(c.subRows))}),d};return{rows:u(o.rows),flatRows:l,rowsById:o.rowsById}},de(t.options,"debugTable","getSortedRowModel",()=>t._autoResetPageIndex()))}/**
|
|
14
14
|
* vue-table
|
|
15
15
|
*
|
|
16
16
|
* Copyright (c) TanStack
|
|
@@ -19,19 +19,19 @@
|
|
|
19
19
|
* LICENSE.md file in the root directory of this source tree.
|
|
20
20
|
*
|
|
21
21
|
* @license MIT
|
|
22
|
-
*/function
|
|
23
|
-
`),i=new Blob([a],{type:"text/csv;charset=utf-8;"}),d=document.createElement("a");d.href=URL.createObjectURL(i),d.setAttribute("download",n),document.body.appendChild(d),d.click(),document.body.removeChild(d)}const Wu={key:0,class:"flex items-center justify-between px-2 w-full"},Zu={class:"flex-1 text-sm text-muted-foreground"},Yu={class:"flex items-center space-x-6 lg:space-x-8"},Xu={class:"flex items-center space-x-2"},Ju={class:"flex w-[100px] items-center justify-center text-sm font-medium"},Ku={class:"flex items-center space-x-2"},Qu=e.defineComponent({__name:"DataTablePagination",props:{table:{}},setup(t){const n=e.inject("sortMode");return(o,r)=>{const l=e.resolveComponent("SelectValue"),a=e.resolveComponent("SelectTrigger"),i=e.resolveComponent("SelectItem"),d=e.resolveComponent("SelectContent"),s=e.resolveComponent("Select"),u=e.resolveComponent("Button");return e.unref(n)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Wu,[e.createElementVNode("div",Zu,e.toDisplayString(o.table.getFilteredSelectedRowModel().rows.length)+" of "+e.toDisplayString(o.table.getFilteredRowModel().rows.length)+" row(s) selected. ",1),e.createElementVNode("div",Yu,[e.createElementVNode("div",Xu,[r[4]||(r[4]=e.createElementVNode("p",{class:"text-sm font-medium"}," Rows per page ",-1)),e.createVNode(s,{"model-value":`${o.table.getState().pagination.pageSize}`,"onUpdate:modelValue":o.table.setPageSize},{default:e.withCtx(()=>[e.createVNode(a,{class:"h-8 w-[70px]"},{default:e.withCtx(()=>[e.createVNode(l,{placeholder:`${o.table.getState().pagination.pageSize}`},null,8,["placeholder"])]),_:1}),e.createVNode(d,{side:"top"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30,40,50],c=>e.createVNode(i,{key:c,value:`${c}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value","onUpdate:modelValue"])]),e.createElementVNode("div",Ju," Page "+e.toDisplayString(o.table.getState().pagination.pageIndex+1)+" of "+e.toDisplayString(o.table.getPageCount()),1),e.createElementVNode("div",Ku,[e.createVNode(u,{variant:"outline",class:"hidden size-8 p-0 lg:flex",disabled:!o.table.getCanPreviousPage(),onClick:r[0]||(r[0]=c=>o.table.setPageIndex(0))},{default:e.withCtx(()=>[r[5]||(r[5]=e.createElementVNode("span",{class:"sr-only"},"Go to first page",-1)),e.createVNode(e.unref(F.ChevronsLeft),{class:"size-4"})]),_:1,__:[5]},8,["disabled"]),e.createVNode(u,{variant:"outline",class:"size-8 p-0",disabled:!o.table.getCanPreviousPage(),onClick:r[1]||(r[1]=c=>o.table.previousPage())},{default:e.withCtx(()=>[r[6]||(r[6]=e.createElementVNode("span",{class:"sr-only"},"Go to previous page",-1)),e.createVNode(e.unref(F.ChevronLeft),{class:"size-4"})]),_:1,__:[6]},8,["disabled"]),e.createVNode(u,{variant:"outline",class:"size-8 p-0",disabled:!o.table.getCanNextPage(),onClick:r[2]||(r[2]=c=>o.table.nextPage())},{default:e.withCtx(()=>[r[7]||(r[7]=e.createElementVNode("span",{class:"sr-only"},"Go to next page",-1)),e.createVNode(e.unref(F.ChevronRight),{class:"size-4"})]),_:1,__:[7]},8,["disabled"]),e.createVNode(u,{variant:"outline",class:"hidden size-8 p-0 lg:flex",disabled:!o.table.getCanNextPage(),onClick:r[3]||(r[3]=c=>o.table.setPageIndex(o.table.getPageCount()-1))},{default:e.withCtx(()=>[r[8]||(r[8]=e.createElementVNode("span",{class:"sr-only"},"Go to last page",-1)),e.createVNode(e.unref(F.ChevronsRight),{class:"size-4"})]),_:1,__:[8]},8,["disabled"])])])]))}}});function Ho(t,n){if(!t)return"";const o=(n==null?void 0:n.reduce((r,l)=>(r[l.name]=l.value,r),{}))??{};return nd(t,td(o))}function ed(t){return/^[$A-Z_][0-9A-Z_$]*$/i.test(t)}function td(t){const n=["__proto__","constructor","prototype"],o=r=>{if(Array.isArray(r))return r.map(o);if(r&&typeof r=="object"){const l={};for(const a in r)!n.includes(a)&&ed(a)&&(l[a]=o(r[a]));return l}return r};return o(t)}function nd(t,n){return t.replace(/\{\{\s*(.+?)\s*\}\}/gs,(o,r)=>{const l=r.trim();if(!l)return"";const a=od(l),i={...n};for(const u of a)u in i||(i[u]=void 0);const d=Object.keys(i),s=Object.values(i);try{const c=new Function(...d,`'use strict'; return (${l})`)(...s);return typeof c=="string"?c:JSON.stringify(c,null,2)}catch(u){return console.warn(`Interpolation failed for expression: "${r}"`,u),""}})}function od(t){const n=t.match(/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g)||[],o=new Set(["true","false","null","undefined","return","if","else","try","catch","typeof"]);return[...new Set(n.filter(r=>!o.has(r)))]}const rd=e.defineComponent({__name:"DataTableAction",props:{action:{},row:{}},setup(t){const n=t,{runFlow:o}=J.useFlowBuilder(),r=e.computed(()=>Ho(n.action.visible,[{name:"item",value:{data:{...n.row.original}},type:"object"}])==="true"),l=()=>{o(n.action.flow,[{name:"item",value:{data:{...n.row.original}},type:"object"}])};return(a,i)=>{const d=e.resolveComponent("Button"),s=e.resolveComponent("TooltipTrigger"),u=e.resolveComponent("TooltipContent"),c=e.resolveComponent("Tooltip");return r.value?(e.openBlock(),e.createBlock(c,{key:0},{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{variant:"ghost",size:"icon",onClick:i[0]||(i[0]=p=>l()),class:"size-5"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(F.icons)[a.action.icon])))]),_:1})]),_:1}),e.createVNode(u,null,{default:e.withCtx(()=>[e.createElementVNode("p",null,e.toDisplayString(a.action.label),1)]),_:1})]),_:1})):e.createCommentVNode("",!0)}}}),ld={class:"w-full rounded-md border bg-background dark:bg-input/30 shadow-xs shadow-xs"},ad={key:0,class:"flex items-center justify-center font-medium border-x border-primary bg-primary/10 -my-[7px] h-[34px] cursor-grab"},id=e.defineComponent({__name:"DataTable",setup(t,{expose:n}){const{Button:o,Checkbox:r}=J.components,{$dragAndDrop:l}=useNuxtApp(),{formatCurrency:a}=J.useProjectSettings(),i=e.inject("integrationId",e.ref("")),d=e.inject("resourcePath",e.ref("")),s=e.inject("table"),u=e.inject("data"),c=e.inject("columns"),p=e.inject("sortMode",e.ref(!1)),m=e.inject("sortModeProperty",e.ref("")),f=e.inject("filters",e.ref([])),v=e.inject("itemActions",e.ref([])),g=e.computed(()=>{var U;let T=[];return p.value?T.push({id:"drag-handle",enableSorting:!1,enableHiding:!1,header:"",cell:()=>e.h("div",{class:"row-drag-handle cursor-grab text-gray-400"},[e.h("svg",{xmlns:"http://www.w3.org/2000/svg",class:"size-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 10h16M4 14h16"})])])}):T.push({id:"select",header:({table:S})=>e.h(r,{modelValue:S.getIsAllPageRowsSelected()||S.getIsSomePageRowsSelected()&&"indeterminate","onUpdate:modelValue":j=>S.toggleAllPageRowsSelected(!!j),ariaLabel:"Select all",class:"border-ring"}),cell:({row:S})=>e.h(r,{class:"border-ring",modelValue:S.getIsSelected(),"onUpdate:modelValue":j=>S.toggleSelected(!!j),ariaLabel:"Select row"}),enableSorting:!1,enableHiding:!1}),(U=c.value)==null||U.forEach(S=>{let j=!!f.value.find(P=>P.property===S.property);S.visible&&(S.type==="text"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:({column:P})=>e.h(o,{variant:"ghost",disabled:p.value,onClick:()=>P.toggleSorting(P.getIsSorted()==="asc")},()=>[S.label,e.h(F.ArrowUpDown,{class:"ml-2 size-4"})]),cell:({row:P})=>e.h("div",{},P.getValue(S.property)),...j?{enableColumnFilter:!0,filterFn:(P,M,K)=>{if(!Array.isArray(K)||K.length===0)return!0;const A=P.getValue(M);return K.includes(A)}}:{}}):S.type==="number"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:({column:P})=>e.h(o,{variant:"ghost",disabled:p.value,onClick:()=>P.toggleSorting(P.getIsSorted()==="asc")},()=>[S.label,e.h(F.ArrowUpDown,{class:"ml-2 size-4"})]),cell:({row:P})=>{var M,K;return e.h("div",{class:""},isNaN(P.getValue(S.property))?P.getValue(S.property):(K=(M=parseFloat(P.getValue(S.property)))==null?void 0:M.toFixed(2))==null?void 0:K.replace(".00",""))}}):S.type==="date"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h("div",{class:""},P.getValue(S.property))}):S.type==="datetime"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>{var M;return e.h("div",{class:""},((M=new Date(P.getValue(S.property)))==null?void 0:M.toLocaleString())??"")}}):S.type==="boolean"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h(r,{defaultValue:P.getValue(S.property),disabled:!0,class:"border-ring disabled:cursor-default disabled:opacity-100"})}):S.type==="URL"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h("a",{href:P.getValue(S.property),target:"_blank",class:"text-primary"},P.getValue(S.property))}):S.type==="email"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h("a",{href:`mailto:${P.getValue(S.property)}`,class:"text-primary"},P.getValue(S.property))}):S.type==="phone"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h("a",{href:`tel:${P.getValue(S.property)}`,class:"text-primary"},P.getValue(S.property))}):S.type==="currency"?T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>e.h("div",{class:""},a(P.getValue(S.property)))}):S.type==="image"&&T.push({id:S.property,accessorFn:P=>S.property.includes(".")?S.property.split(".").reduce((M,K)=>M==null?void 0:M[K],P):P[S.property],header:S.label,cell:({row:P})=>P.getValue(S.property)?e.h("img",{src:P.getValue(S.property),alt:S.label,class:"size-16 object-cover"}):""}))}),v.value.length>0&&T.push({id:"actions",enableHiding:!1,cell:({row:S})=>e.h("div",{class:"flex items-center justify-center gap-2"},v.value.map(j=>e.h(rd,{action:j,row:S})))}),T}),h=e.ref(""),y=e.ref([]),b=e.ref([]),_=e.ref({}),k=e.ref({}),x=e.ref({}),C=e.reactive({get data(){return u.value},get columns(){return g.value},enableGlobalFilter:!0,getGlobalFilter(){return h.value},onGlobalFilterChange(T){xn(T,h)},globalFilterFn:(T,U,S)=>{const j=S.toLowerCase();return c.value.map(M=>M.property).some(M=>{var A;const K=(A=T.original)==null?void 0:A[M];return typeof K=="string"&&K.toLowerCase().includes(j)})},getCoreRowModel:Pu(),getPaginationRowModel:Lu(),getSortedRowModel:ju(),getFilteredRowModel:zu(),getExpandedRowModel:Ru(),onSortingChange:T=>xn(T,y),onColumnFiltersChange:T=>xn(T,b),onColumnVisibilityChange:T=>xn(T,_),onRowSelectionChange:T=>xn(T,k),onExpandedChange:T=>xn(T,x),state:{get sorting(){return y.value},get columnFilters(){return b.value},get columnVisibility(){return _.value},get rowSelection(){return k.value},get expanded(){return x.value}}});e.watchEffect(()=>{const T={...C,columns:g.value,state:{...C.state,globalFilter:h.value}};s.value=Gu(T)}),e.watch(p,T=>{var U;T?Y():(U=s==null?void 0:s.value)==null||U.setPageSize(z.value)});const[N,B]=l([],{plugins:[co.animations()]}),z=e.ref(0),Y=()=>{var T,U;z.value=(T=s==null?void 0:s.value)==null?void 0:T.getState().pagination.pageSize,(U=s==null?void 0:s.value)==null||U.setPageSize(1e4),B.value=((u==null?void 0:u.value)??[]).slice().sort((S,j)=>{const P=S[m.value]??0,M=j[m.value]??0;return P-M}).map((S,j)=>({id:S.id,index:j,original:{...S,[m.value]:j},getVisibleCells:()=>{var P,M,K;return(K=(M=(P=s==null?void 0:s.value)==null?void 0:P.getRowModel().rows)==null?void 0:M.find(A=>A.original.id===S.id))==null?void 0:K.getVisibleCells()}}))};return n({saveSortMode:async()=>{const{update:T}=J.useFirebaseIntegration(i.value);u.value.forEach(U=>{U[m.value]!==B.value.findIndex(S=>S.id===U.id)&&(U[m.value]=B.value.findIndex(S=>S.id===U.id),T(d.value,U.id,{[m.value]:U[m.value]}))})}}),(T,U)=>{const S=e.resolveComponent("TooltipTrigger"),j=e.resolveComponent("TooltipContent"),P=e.resolveComponent("Tooltip"),M=e.resolveComponent("TableHead"),K=e.resolveComponent("TableRow"),A=e.resolveComponent("TableHeader"),w=e.resolveComponent("TableCell"),E=e.resolveComponent("TableBody"),V=e.resolveComponent("Table");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",ld,[e.createVNode(V,null,{default:e.withCtx(()=>[e.createVNode(A,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s).getHeaderGroups(),D=>(e.openBlock(),e.createBlock(K,{key:D.id},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.headers,L=>(e.openBlock(),e.createBlock(M,{key:L.id},{default:e.withCtx(()=>{var ee;return[L.isPlaceholder?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(El),{key:0,render:L.column.columnDef.header,props:L.getContext()},null,8,["render","props"])),(ee=e.unref(c).find(O=>O.property===L.column.columnDef.id))!=null&&ee.showInfoButton?(e.openBlock(),e.createBlock(P,{key:1},{default:e.withCtx(()=>[e.createVNode(S,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Info),{class:"size-4 inline mx-2 -mt-0.5"})]),_:1}),e.createVNode(j,null,{default:e.withCtx(()=>{var O;return[e.createTextVNode(e.toDisplayString((O=e.unref(c).find(W=>W.property===L.column.columnDef.id))==null?void 0:O.infoTooltipText),1)]}),_:2},1024)]),_:2},1024)):e.createCommentVNode("",!0)]}),_:2},1024))),128))]),_:2},1024))),128))]),_:1}),e.createVNode(E,{ref_key:"dragContainer",ref:N},{default:e.withCtx(()=>{var D;return[(D=e.unref(s).getRowModel().rows)!=null&&D.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(p)?e.unref(B):e.unref(s).getRowModel().rows,(L,ee)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:L.id},[e.createVNode(K,{"data-state":!e.unref(p)&&L.getIsSelected()&&"selected",class:"group/row"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(L.getVisibleCells(),O=>(e.openBlock(),e.createBlock(w,{key:O.id},{default:e.withCtx(()=>[e.unref(p)&&O.column.id===e.unref(m)?(e.openBlock(),e.createElementBlock("span",ad,e.toDisplayString(ee),1)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(p)?"opacity-50 group-hover/row:opacity-100":"")},[e.createVNode(e.unref(El),{render:O.column.columnDef.cell,props:O.getContext()},null,8,["render","props"])],2))]),_:2},1024))),128))]),_:2},1032,["data-state"]),!e.unref(p)&&L.getIsExpanded()?(e.openBlock(),e.createBlock(K,{key:0},{default:e.withCtx(()=>[e.createVNode(w,{colspan:L.getAllCells().length},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(JSON.stringify(L.original)),1)]),_:2},1032,["colspan"])]),_:2},1024)):e.createCommentVNode("",!0)],64))),128)):(e.openBlock(),e.createBlock(K,{key:1},{default:e.withCtx(()=>[e.createVNode(w,{colspan:999,class:"h-24 text-center"},{default:e.withCtx(()=>U[0]||(U[0]=[e.createTextVNode(" No results. ",-1)])),_:1,__:[0]})]),_:1}))]}),_:1},512)]),_:1})]),e.createVNode(Qu,{table:e.unref(s)},null,8,["table"])],64)}}}),sd={class:"grid grid-cols-3 gap-2 mb-2 py-2"},ud={class:"flex flex-col items-start gap-1.5"},dd={class:"flex flex-col items-start gap-1.5"},cd={class:"flex flex-col gap-1.5"},pd={key:0,class:"flex flex-col gap-2 mb-4"},fd={class:"flex flex-col gap-1.5"},md={class:"flex flex-col items-start gap-1.5 col-span-4"},gd={class:"flex flex-col items-start gap-1.5 col-span-4"},vd=e.defineComponent({__name:"StatDialog",emits:["statAdded","statEdited","statRemoved"],setup(t,{expose:n,emit:o}){const r=o,l=e.inject("columns"),a=e.ref(!1),i=e.ref("add"),d=e.ref(null),s=e.reactive({label:"",method:"",field:"",conditions:[]}),u=v=>{i.value=v?"edit":"add",d.value=v??null,s.label=(v==null?void 0:v.label)??"",s.method=(v==null?void 0:v.method)??"",s.field=(v==null?void 0:v.field)??"",s.conditions=(v==null?void 0:v.conditions)??[],a.value=!0},c=()=>{let v=crypto.randomUUID();s.conditions.push({id:v,field:"",condition:"==",value:""})},p=v=>{s.conditions=s.conditions.filter(g=>g.id!==v)},m=()=>{console.log(s),i.value==="add"?r("statAdded",s):r("statEdited",{...s,id:d.value.id}),a.value=!1},f=()=>{r("statRemoved",d.value),a.value=!1};return n({openDialog:u}),(v,g)=>{const h=e.resolveComponent("DialogTitle"),y=e.resolveComponent("DialogDescription"),b=e.resolveComponent("DialogHeader"),_=e.resolveComponent("Label"),k=e.resolveComponent("Input"),x=e.resolveComponent("SelectValue"),C=e.resolveComponent("SelectTrigger"),N=e.resolveComponent("SelectItem"),B=e.resolveComponent("SelectContent"),z=e.resolveComponent("Select"),Y=e.resolveComponent("ComboboxTrigger"),R=e.resolveComponent("ComboboxInput"),T=e.resolveComponent("ComboboxAnchor"),U=e.resolveComponent("ComboboxItem"),S=e.resolveComponent("ComboboxGroup"),j=e.resolveComponent("ComboboxList"),P=e.resolveComponent("Combobox"),M=e.resolveComponent("Button"),K=e.resolveComponent("DialogFooter"),A=e.resolveComponent("DialogScrollContent"),w=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(w,{open:a.value,"onUpdate:open":g[4]||(g[4]=E=>a.value=E)},{default:e.withCtx(()=>[e.createVNode(A,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>{var E;return[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add Stat":"Edit Stat"),1)]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add a new stat for this table.":"Edit the selected stat."),1)]),_:1})]),_:1}),e.createElementVNode("div",sd,[e.createElementVNode("div",ud,[e.createVNode(_,{for:"stat_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[5]||(g[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(k,{id:"stat_dialog_label",modelValue:s.label,"onUpdate:modelValue":g[0]||(g[0]=V=>s.label=V)},null,8,["modelValue"])]),e.createElementVNode("div",dd,[e.createVNode(_,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[6]||(g[6]=[e.createTextVNode("Method",-1)])),_:1,__:[6]}),e.createVNode(z,{modelValue:s.method,"onUpdate:modelValue":g[1]||(g[1]=V=>s.method=V)},{default:e.withCtx(()=>[e.createVNode(C,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(x,{placeholder:"Select a method"})]),_:1}),e.createVNode(B,null,{default:e.withCtx(()=>[e.createVNode(N,{value:"count"},{default:e.withCtx(()=>g[7]||(g[7]=[e.createTextVNode("Row count",-1)])),_:1,__:[7]}),e.createVNode(N,{value:"sum"},{default:e.withCtx(()=>g[8]||(g[8]=[e.createTextVNode("Sum",-1)])),_:1,__:[8]}),e.createVNode(N,{value:"average"},{default:e.withCtx(()=>g[9]||(g[9]=[e.createTextVNode("Average",-1)])),_:1,__:[9]}),e.createVNode(N,{value:"min"},{default:e.withCtx(()=>g[10]||(g[10]=[e.createTextVNode("Min (lowest value)",-1)])),_:1,__:[10]}),e.createVNode(N,{value:"max"},{default:e.withCtx(()=>g[11]||(g[11]=[e.createTextVNode("Max (highest value)",-1)])),_:1,__:[11]})]),_:1})]),_:1},8,["modelValue"])]),s.method!=="count"?(e.openBlock(),e.createBlock(P,{key:0,by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:s.field,"onUpdate:modelValue":g[3]||(g[3]=V=>s.field=V)},{default:e.withCtx(()=>[e.createVNode(T,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",cd,[e.createVNode(Y,null,{default:e.withCtx(()=>[e.createVNode(_,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[12]||(g[12]=[e.createTextVNode("Field",-1)])),_:1,__:[12]})]),_:1}),e.createVNode(R,{modelValue:s.field,"onUpdate:modelValue":g[2]||(g[2]=V=>s.field=V),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode(j,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),V=>(e.openBlock(),e.createBlock(U,{key:V.property,value:V.property,onSelect:()=>{s.field=V.property}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(V.property)+" ",1),s.field===V.property?(e.openBlock(),e.createBlock(e.unref(F.Check),{key:0,class:e.normalizeClass(e.unref(yt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(_,{class:"mb-1"},{default:e.withCtx(()=>g[13]||(g[13]=[e.createTextVNode("Conditions",-1)])),_:1,__:[13]}),g[25]||(g[25]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mb-2"}," Only rows that match the conditions will be included in the calculation of the stat. ",-1)),((E=s.conditions)==null?void 0:E.length)>0?(e.openBlock(),e.createElementBlock("div",pd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.conditions,V=>(e.openBlock(),e.createElementBlock("div",{key:V.id,class:"grid grid-cols-13 gap-2"},[e.createVNode(P,{by:"label",class:"col-span-4",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:V.field,"onUpdate:modelValue":D=>V.field=D},{default:e.withCtx(()=>[e.createVNode(T,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",fd,[e.createVNode(Y,null,{default:e.withCtx(()=>[e.createVNode(_,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[14]||(g[14]=[e.createTextVNode("Field",-1)])),_:1,__:[14]})]),_:1}),e.createVNode(R,{modelValue:V.field,"onUpdate:modelValue":D=>V.field=D,hideIcon:"",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1024),e.createVNode(j,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),D=>(e.openBlock(),e.createBlock(U,{key:D.property,value:D.property,onSelect:()=>{V.field=D.property}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(D.property)+" ",1),V.field===D.property?(e.openBlock(),e.createBlock(e.unref(F.Check),{key:0,class:e.normalizeClass(e.unref(yt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue"]),e.createElementVNode("div",md,[e.createVNode(_,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[15]||(g[15]=[e.createTextVNode("Condition",-1)])),_:1,__:[15]}),e.createVNode(z,{modelValue:V.condition,"onUpdate:modelValue":D=>V.condition=D},{default:e.withCtx(()=>[e.createVNode(C,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(x,{placeholder:"Select a condition"})]),_:1}),e.createVNode(B,null,{default:e.withCtx(()=>[e.createVNode(N,{value:"=="},{default:e.withCtx(()=>g[16]||(g[16]=[e.createTextVNode("(==) Is equal to",-1)])),_:1,__:[16]}),e.createVNode(N,{value:"!="},{default:e.withCtx(()=>g[17]||(g[17]=[e.createTextVNode("(!=) Is not equal to",-1)])),_:1,__:[17]}),e.createVNode(N,{value:">"},{default:e.withCtx(()=>g[18]||(g[18]=[e.createTextVNode("(>) Is greater than",-1)])),_:1,__:[18]}),e.createVNode(N,{value:"<"},{default:e.withCtx(()=>g[19]||(g[19]=[e.createTextVNode("(<) Is less than",-1)])),_:1,__:[19]}),e.createVNode(N,{value:">="},{default:e.withCtx(()=>g[20]||(g[20]=[e.createTextVNode("(>=) Is greater than or equal to",-1)])),_:1,__:[20]}),e.createVNode(N,{value:"<="},{default:e.withCtx(()=>g[21]||(g[21]=[e.createTextVNode("(<=) Is less than or equal to",-1)])),_:1,__:[21]}),e.createVNode(N,{value:"in"},{default:e.withCtx(()=>g[22]||(g[22]=[e.createTextVNode("(in) Equal to any of the following",-1)])),_:1,__:[22]})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("div",gd,[e.createVNode(_,{class:"text-xs text-muted-foreground",for:V.id+"_value"},{default:e.withCtx(()=>g[23]||(g[23]=[e.createTextVNode("Value",-1)])),_:2,__:[23]},1032,["for"]),e.createVNode(k,{modelValue:V.value,"onUpdate:modelValue":D=>V.value=D,class:"w-full",id:V.id+"_value"},null,8,["modelValue","onUpdate:modelValue","id"])]),e.createVNode(M,{variant:"ghost",size:"icon",class:"rounded-xl self-end col-span-1",onClick:D=>p(V.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Trash2),{class:"size-4"})]),_:2},1032,["onClick"])]))),128))])):e.createCommentVNode("",!0),e.createVNode(M,{variant:"outline",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),g[24]||(g[24]=e.createTextVNode(" Add Condition ",-1))]),_:1,__:[24]})]),e.createVNode(K,null,{default:e.withCtx(()=>[i.value==="edit"?(e.openBlock(),e.createBlock(M,{key:0,variant:"destructive",onClick:f},{default:e.withCtx(()=>g[26]||(g[26]=[e.createTextVNode(" Remove Stat ",-1)])),_:1,__:[26]})):e.createCommentVNode("",!0),e.createVNode(M,{onClick:m},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add Stat":"Save changes"),1)]),_:1})]),_:1})]}),_:1})]),_:1},8,["open"])}}}),hd={class:"flex flex-wrap gap-2 mb-4"},xd=["onClick"],_d={class:"text-2xl font-bold"},yd={class:"text-xs text-muted-foreground truncate w-full text-center"},Vd=e.defineComponent({__name:"Stats",setup(t){const n=e.inject("data"),{isAdmin:o}=J.useModulePermissions(),{getModuleData:r,setModuleData:l}=J.useModuleStorage(),a=e.ref(),i=e.ref([]),d=_=>{var x;let k=crypto.randomUUID();console.log(i,i.value,k),(!i.value||((x=i==null?void 0:i.value)==null?void 0:x.length)===0)&&(i.value=[]),i.value.push({..._,id:k}),l("stats",i.value)},s=_=>{console.log(_,i.value),i.value=i.value.map(k=>k.id===_.id?_:k),l("stats",i.value)},u=_=>{i.value=i.value.filter(k=>k.id!==_),l("stats",i.value)},c=_=>{switch(_.method){case"count":return m(_.conditions);case"sum":return f(_.field,_.conditions);case"average":return v(_.field,_.conditions);case"min":return g(_.field,_.conditions);case"max":return h(_.field,_.conditions);default:return""}},p=_=>{if(_){let k=parseFloat(_).toFixed(2).split(".");return k[0]=k[0].replace(/\B(?=(\d{3})+(?!\d))/g," "),!k[1]||k[1]=="00"?k[0]:k.join(".")}return"..."},m=_=>{var k;return console.log(b(_)),(k=b(_))==null?void 0:k.length},f=(_,k)=>{let x=0;return b(k).forEach(C=>{x+=parseFloat(y(C,_))?parseFloat(String(y(C,_)).replace(",",".")):y(C,_)===!0?1:0}),x.toFixed(2).slice(-2)=="00"?x.toFixed(0):x.toFixed(2)},v=(_,k)=>{let x=0,C=0;if(b(k).forEach(N=>{parseFloat(y(N,_))&&(x+=parseFloat(String(y(N,_)).replace(",",".")),C+=1)}),C>0){const N=x/C;return N.toFixed(2).slice(-2)=="00"?N.toFixed(0):N.toFixed(2)}return"..."},g=(_,k)=>{let x=b(k)[0][_];return b(k).forEach(C=>{y(C,_)<x&&(x=y(C,_))}),x},h=(_,k)=>{let x=b(k)[0][_];return b(k).forEach(C=>{parseFloat(y(C,_))&&y(C,_)>x&&(x=y(C,_))}),parseFloat(String(x).replace(",",".")).toFixed(2)},y=(_,k)=>{if(!_||!k)return;const[x,...C]=k.split(".");return C!=null&&C.length?y(_[x],C.join(".")):_[k]??""},b=_=>{var x;let k=[...n.value];if(console.log("1é",k),Array.isArray(_))for(let C=0;C<(_==null?void 0:_.length);C++)_[C].condition=="=="?(console.log("2é",(x=_[C].value)==null?void 0:x.split(",").indexOf(k[_[C].field])),k=k.filter(N=>{var B;return((B=_[C].value)==null?void 0:B.split(",").indexOf(N[_[C].field]))!=-1})):_[C].condition=="!="?k=k.filter(N=>{var B;return((B=_[C].value)==null?void 0:B.split(",").indexOf(N[_[C].field]))==-1}):_[C].condition==">"?k=k.filter(N=>N[_[C].field]>_[C].value):_[C].condition==">="?k=k.filter(N=>N[_[C].field]>=_[C].value):_[C].condition=="<"?k=k.filter(N=>N[_[C].field]<_[C].value):_[C].condition=="<="?k=k.filter(N=>N[_[C].field]<=_[C].value):_[C].condition=="in"&&(k=k.filter(N=>{var B;return((B=_[C].value)==null?void 0:B.indexOf(String(N[_[C].field])))!=-1}));return k};return e.onMounted(async()=>{i.value=await r("stats")||[]}),(_,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",hd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,x=>{var C;return e.openBlock(),e.createElementBlock("div",{key:x.label,class:e.normalizeClass(["flex flex-col items-center justify-center size-24 p-4 border rounded-md",e.unref(o)()?"hover:bg-muted cursor-pointer":""]),onClick:N=>e.unref(o)()?a.value.openDialog(x):null},[e.createElementVNode("span",_d,e.toDisplayString(((C=e.unref(n))==null?void 0:C.length)>0?p(c(x)):"..."),1),e.createElementVNode("span",yd,e.toDisplayString(x.label),1)],10,xd)}),128)),e.unref(o)()?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex flex-col items-center justify-center size-24 p-4 border rounded-md hover:bg-muted cursor-pointer",onClick:k[0]||(k[0]=x=>a.value.openDialog())},[e.createVNode(e.unref(F.Plus),{class:"size-8 text-primary"})])):e.createCommentVNode("",!0)]),e.createVNode(vd,{ref_key:"statDialog",ref:a,onStatAdded:k[1]||(k[1]=x=>d(x)),onStatEdited:k[2]||(k[2]=x=>s(x)),onStatRemoved:k[3]||(k[3]=x=>u(x))},null,512)],64))}}),Cd={class:"overflow-hidden"},bd={class:"flex flex-col gap-1"},wd={class:"flex flex-col gap-1"},Nd={class:"flex items-end gap-2 pb-2"},kd={class:"flex flex-col gap-1"},Sd={class:"flex items-end"},Ed=e.defineComponent({__name:"DialogTableColumnItem",props:{column:{type:Object,required:!0}},setup(t){const n=e.ref(!1);return(o,r)=>{const l=e.resolveComponent("Button"),a=e.resolveComponent("Label"),i=e.resolveComponent("Input"),d=e.resolveComponent("Checkbox"),s=e.resolveComponent("SelectValue"),u=e.resolveComponent("SelectTrigger"),c=e.resolveComponent("SelectLabel"),p=e.resolveComponent("SelectItem"),m=e.resolveComponent("SelectGroup"),f=e.resolveComponent("SelectContent"),v=e.resolveComponent("Select"),g=e.resolveComponent("Trash2");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(l,{onClick:r[0]||(r[0]=h=>n.value=!n.value),class:e.normalizeClass(["w-full flex items-center justify-start gap-2",n.value?"ring ring-border":""]),variant:"ghost"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.column.label)+" ",1),e.createVNode(e.unref(F.ChevronDown),{class:e.normalizeClass(["size-4 transition-all duration-300",n.value?"rotate-180":""])},null,8,["class"])]),_:1},8,["class"]),e.createElementVNode("div",{class:e.normalizeClass(["grid transition-all duration-300 -translate-y-0.5",`${n.value?"grid-rows-[1fr]":"grid-rows-[0fr]"}`])},[e.createElementVNode("div",Cd,[e.createElementVNode("div",{class:e.normalizeClass(["flex gap-4 mb-4 px-3 bg-muted/20 border border-t-0 rounded-b-lg transition-all duration-300",n.value?"py-4":""])},[e.createElementVNode("div",bd,[e.createVNode(a,{for:"property",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[6]||(r[6]=[e.createTextVNode(" Property ",-1)])),_:1,__:[6]}),e.createVNode(i,{id:"property",class:"w-full",modelValue:t.column.property,"onUpdate:modelValue":r[1]||(r[1]=h=>t.column.property=h)},null,8,["modelValue"])]),e.createElementVNode("div",wd,[e.createVNode(a,{for:"label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[7]||(r[7]=[e.createTextVNode(" Label ",-1)])),_:1,__:[7]}),e.createVNode(i,{id:"label",class:"w-full",modelValue:t.column.label,"onUpdate:modelValue":r[2]||(r[2]=h=>t.column.label=h)},null,8,["modelValue"])]),e.createElementVNode("div",Nd,[e.createVNode(d,{id:"visible",class:"border-ring",modelValue:t.column.visible,"onUpdate:modelValue":r[3]||(r[3]=h=>t.column.visible=h)},null,8,["modelValue"]),e.createVNode(a,{for:"visible"},{default:e.withCtx(()=>r[8]||(r[8]=[e.createTextVNode(" Visible ",-1)])),_:1,__:[8]})]),e.createElementVNode("div",kd,[e.createVNode(a,{for:"type",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[9]||(r[9]=[e.createTextVNode(" Type ",-1)])),_:1,__:[9]}),e.createVNode(v,{modelValue:t.column.type,"onUpdate:modelValue":r[4]||(r[4]=h=>t.column.type=h)},{default:e.withCtx(()=>[e.createVNode(u,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(s,{placeholder:"Select a type"})]),_:1}),e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>r[10]||(r[10]=[e.createTextVNode("Types",-1)])),_:1,__:[10]}),e.createVNode(p,{value:"text"},{default:e.withCtx(()=>r[11]||(r[11]=[e.createTextVNode(" Text ",-1)])),_:1,__:[11]}),e.createVNode(p,{value:"number"},{default:e.withCtx(()=>r[12]||(r[12]=[e.createTextVNode(" Number ",-1)])),_:1,__:[12]}),e.createVNode(p,{value:"date"},{default:e.withCtx(()=>r[13]||(r[13]=[e.createTextVNode(" Date ",-1)])),_:1,__:[13]}),e.createVNode(p,{value:"datetime"},{default:e.withCtx(()=>r[14]||(r[14]=[e.createTextVNode(" Datetime ",-1)])),_:1,__:[14]}),e.createVNode(p,{value:"boolean"},{default:e.withCtx(()=>r[15]||(r[15]=[e.createTextVNode(" Boolean ",-1)])),_:1,__:[15]}),e.createVNode(p,{value:"URL"},{default:e.withCtx(()=>r[16]||(r[16]=[e.createTextVNode(" URL ",-1)])),_:1,__:[16]}),e.createVNode(p,{value:"email"},{default:e.withCtx(()=>r[17]||(r[17]=[e.createTextVNode(" Email ",-1)])),_:1,__:[17]}),e.createVNode(p,{value:"phone"},{default:e.withCtx(()=>r[18]||(r[18]=[e.createTextVNode(" Phone ",-1)])),_:1,__:[18]}),e.createVNode(p,{value:"currency"},{default:e.withCtx(()=>r[19]||(r[19]=[e.createTextVNode(" Currency ",-1)])),_:1,__:[19]}),e.createVNode(p,{value:"image"},{default:e.withCtx(()=>r[20]||(r[20]=[e.createTextVNode(" Image ",-1)])),_:1,__:[20]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",Sd,[e.createVNode(l,{variant:"ghost",size:"icon",onClick:r[5]||(r[5]=h=>o.mutableColumns.splice(o.mutableColumns.indexOf(t.column),1)),class:"rounded-xl"},{default:e.withCtx(()=>[e.createVNode(g)]),_:1})])],2)])],2)],64)}}}),Td={class:"flex flex-col items-start gap-4 py-4"},Dd={class:"grid gap-4"},Bd={class:"grid grid-cols-5 items-center gap-4"},$d={class:"grid grid-cols-5 items-center gap-4"},Id={class:"grid grid-cols-5 items-center gap-4"},Md={class:"grid grid-cols-5 items-center gap-4"},Pd={class:"grid grid-cols-5 items-center gap-4"},Rd={key:0,class:"grid grid-cols-5 items-center gap-4"},Ad={class:"flex justify-end gap-2"},Fd=e.defineComponent({__name:"ColumnEditorDialog",props:{open:{type:Boolean,default:null},onSelect:{type:Function,required:!0},onOpenChange:{type:Function,required:!0}},emits:["update:open"],setup(t,{emit:n}){const{setModuleData:o}=J.useModuleStorage(),r=t,l=n,a=e.inject("columns"),i=e.ref([]),d=e.computed({get(){return r.open},set(f){l("update:open",f)}});e.watch(d,async(f,v)=>{f&&!v&&(i.value=a.value?JSON.parse(JSON.stringify(a.value)):[])});const s=e.reactive({property:"",label:"",visible:!0,type:"text",showInfoButton:!1,infoTooltipText:""}),u=e.ref(!1),c=()=>{u.value=!1,s.property="",s.label="",s.visible=!0,s.type="text",s.showInfoButton=!1,s.infoTooltipText=""},p=()=>{i.value||(i.value=[]);let f=crypto.randomUUID();i.value.push({...s,id:f}),c()},m=()=>{o("columns",i.value),a.value=i.value,c(),d.value=!1};return(f,v)=>{const g=e.resolveComponent("DropdownMenuItem"),h=e.resolveComponent("DialogTrigger"),y=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogDescription"),_=e.resolveComponent("DialogHeader"),k=e.resolveComponent("Button"),x=e.resolveComponent("PopoverTrigger"),C=e.resolveComponent("Label"),N=e.resolveComponent("Input"),B=e.resolveComponent("Checkbox"),z=e.resolveComponent("SelectValue"),Y=e.resolveComponent("SelectTrigger"),R=e.resolveComponent("SelectLabel"),T=e.resolveComponent("SelectItem"),U=e.resolveComponent("SelectGroup"),S=e.resolveComponent("SelectContent"),j=e.resolveComponent("Select"),P=e.resolveComponent("PopoverContent"),M=e.resolveComponent("Popover"),K=e.resolveComponent("DialogFooter"),A=e.resolveComponent("DialogScrollContent"),w=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(w,{open:d.value,"onUpdate:open":[v[8]||(v[8]=E=>d.value=E),t.onOpenChange]},{default:e.withCtx(()=>[e.createVNode(h,{asChild:""},{default:e.withCtx(()=>[e.createVNode(g,{onSelect:v[0]||(v[0]=E=>{E.preventDefault(),t.onSelect&&t.onSelect(),d.value=!0})},{default:e.withCtx(()=>v[9]||(v[9]=[e.createElementVNode("span",{class:"text-primary"},"Edit columns",-1)])),_:1,__:[9]})]),_:1}),e.createVNode(A,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>v[10]||(v[10]=[e.createTextVNode("Edit columns",-1)])),_:1,__:[10]}),e.createVNode(b,null,{default:e.withCtx(()=>v[11]||(v[11]=[e.createTextVNode(" Define all columns for this table. ",-1)])),_:1,__:[11]})]),_:1}),e.createElementVNode("div",Td,[e.createVNode(M,{open:u.value,"onUpdate:open":v[7]||(v[7]=E=>u.value=E)},{default:e.withCtx(()=>[e.createVNode(x,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(k,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"mr-2 size-4"}),v[12]||(v[12]=e.createTextVNode(" Add column ",-1))]),_:1,__:[12]})]),_:1}),e.createVNode(P,{class:"w-96"},{default:e.withCtx(()=>[e.createElementVNode("div",Dd,[e.createElementVNode("div",Bd,[e.createVNode(C,{for:"property",class:"text-right col-span-2"},{default:e.withCtx(()=>v[13]||(v[13]=[e.createTextVNode(" Property ",-1)])),_:1,__:[13]}),e.createVNode(N,{id:"property",class:"col-span-3",modelValue:s.property,"onUpdate:modelValue":v[1]||(v[1]=E=>s.property=E)},null,8,["modelValue"])]),e.createElementVNode("div",$d,[e.createVNode(C,{for:"label",class:"text-right col-span-2"},{default:e.withCtx(()=>v[14]||(v[14]=[e.createTextVNode(" Label ",-1)])),_:1,__:[14]}),e.createVNode(N,{id:"label",class:"col-span-3",modelValue:s.label,"onUpdate:modelValue":v[2]||(v[2]=E=>s.label=E)},null,8,["modelValue"])]),e.createElementVNode("div",Id,[e.createVNode(C,{for:"visible",class:"text-right col-span-2"},{default:e.withCtx(()=>v[15]||(v[15]=[e.createTextVNode(" Visible ",-1)])),_:1,__:[15]}),e.createVNode(B,{id:"visible",class:"col-span-3 border-ring",modelValue:s.visible,"onUpdate:modelValue":v[3]||(v[3]=E=>s.visible=E)},null,8,["modelValue"])]),e.createElementVNode("div",Md,[e.createVNode(C,{for:"type",class:"text-right col-span-2"},{default:e.withCtx(()=>v[16]||(v[16]=[e.createTextVNode(" Type ",-1)])),_:1,__:[16]}),e.createVNode(j,{modelValue:s.type,"onUpdate:modelValue":v[4]||(v[4]=E=>s.type=E)},{default:e.withCtx(()=>[e.createVNode(Y,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(z,{placeholder:"Select a type"})]),_:1}),e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>v[17]||(v[17]=[e.createTextVNode("Types",-1)])),_:1,__:[17]}),e.createVNode(T,{value:"text"},{default:e.withCtx(()=>v[18]||(v[18]=[e.createTextVNode(" Text ",-1)])),_:1,__:[18]}),e.createVNode(T,{value:"number"},{default:e.withCtx(()=>v[19]||(v[19]=[e.createTextVNode(" Number ",-1)])),_:1,__:[19]}),e.createVNode(T,{value:"date"},{default:e.withCtx(()=>v[20]||(v[20]=[e.createTextVNode(" Date ",-1)])),_:1,__:[20]}),e.createVNode(T,{value:"datetime"},{default:e.withCtx(()=>v[21]||(v[21]=[e.createTextVNode(" Datetime ",-1)])),_:1,__:[21]}),e.createVNode(T,{value:"boolean"},{default:e.withCtx(()=>v[22]||(v[22]=[e.createTextVNode(" Boolean ",-1)])),_:1,__:[22]}),e.createVNode(T,{value:"URL"},{default:e.withCtx(()=>v[23]||(v[23]=[e.createTextVNode(" URL ",-1)])),_:1,__:[23]}),e.createVNode(T,{value:"email"},{default:e.withCtx(()=>v[24]||(v[24]=[e.createTextVNode(" Email ",-1)])),_:1,__:[24]}),e.createVNode(T,{value:"phone"},{default:e.withCtx(()=>v[25]||(v[25]=[e.createTextVNode(" Phone ",-1)])),_:1,__:[25]}),e.createVNode(T,{value:"currency"},{default:e.withCtx(()=>v[26]||(v[26]=[e.createTextVNode(" Currency ",-1)])),_:1,__:[26]}),e.createVNode(T,{value:"image"},{default:e.withCtx(()=>v[27]||(v[27]=[e.createTextVNode(" Image ",-1)])),_:1,__:[27]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",Pd,[e.createVNode(C,{for:"showInfoButton",class:"text-right col-span-2"},{default:e.withCtx(()=>v[28]||(v[28]=[e.createTextVNode(" Show info button ",-1)])),_:1,__:[28]}),e.createVNode(B,{id:"showInfoButton",class:"col-span-3 border-ring",modelValue:s.showInfoButton,"onUpdate:modelValue":v[5]||(v[5]=E=>s.showInfoButton=E)},null,8,["modelValue"])]),s.showInfoButton?(e.openBlock(),e.createElementBlock("div",Rd,[e.createVNode(C,{for:"infoTooltipText",class:"text-right col-span-2"},{default:e.withCtx(()=>v[29]||(v[29]=[e.createTextVNode(" Info tooltip text ",-1)])),_:1,__:[29]}),e.createVNode(N,{id:"infoTooltipText",class:"col-span-3",modelValue:s.infoTooltipText,"onUpdate:modelValue":v[6]||(v[6]=E=>s.infoTooltipText=E)},null,8,["modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ad,[e.createVNode(k,{variant:"outline",onClick:c},{default:e.withCtx(()=>v[30]||(v[30]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[30]}),e.createVNode(k,{onClick:p},{default:e.withCtx(()=>v[31]||(v[31]=[e.createTextVNode(" Add column ",-1)])),_:1,__:[31]})])])]),_:1})]),_:1},8,["open"])]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,E=>(e.openBlock(),e.createBlock(Ed,{key:E.id,column:E},null,8,["column"]))),128))]),e.createVNode(K,null,{default:e.withCtx(()=>[e.createVNode(k,{onClick:m},{default:e.withCtx(()=>v[32]||(v[32]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[32]})]),_:1})]),_:1})]),_:1},8,["open","onUpdate:open"])}}}),Od=e.defineComponent({__name:"ColumnDropdown",setup(t){const{isAdmin:n}=J.useModulePermissions(),o=e.inject("columns"),r=e.ref(null),l=e.ref(null),a=e.ref(!1),i=e.ref(!1),d=()=>{l.value=r.value},s=c=>{i.value=c,c||(a.value=!1)},u=c=>{a.value=c};return(c,p)=>{const m=e.resolveComponent("Button"),f=e.resolveComponent("DropdownMenuTrigger"),v=e.resolveComponent("DropdownMenuSeparator"),g=e.resolveComponent("DropdownMenuCheckboxItem"),h=e.resolveComponent("DropdownMenuContent"),y=e.resolveComponent("DropdownMenu");return!e.unref(o)||e.unref(o).length===0?(e.openBlock(),e.createBlock(m,{key:0,variant:"outline",class:"ml-auto"},{default:e.withCtx(()=>[p[3]||(p[3]=e.createTextVNode(" Columns ",-1)),e.createVNode(e.unref(F.ChevronDown),{class:"ml-2 size-4"})]),_:1,__:[3]})):(e.openBlock(),e.createBlock(y,{key:1,open:a.value,"onUpdate:open":u},{default:e.withCtx(()=>[e.createVNode(f,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(m,{variant:"outline",class:"ml-auto"},{default:e.withCtx(()=>[p[4]||(p[4]=e.createTextVNode(" Columns ",-1)),e.createVNode(e.unref(F.ChevronDown),{class:"ml-2 size-4"})]),_:1,__:[4]})]),_:1}),e.createVNode(h,{align:"end",onCloseAutoFocus:p[2]||(p[2]=b=>{console.log(b,"closeAutoFocus"),b.preventDefault()})},{default:e.withCtx(()=>[e.unref(n)()?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(Fd,{open:i.value,"onUpdate:open":p[0]||(p[0]=b=>i.value=b),onSelect:d,onOpenChange:s},null,8,["open"]),e.unref(o).length>0?(e.openBlock(),e.createBlock(v,{key:0})):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),b=>(e.openBlock(),e.createBlock(g,{key:b.id,class:"capitalize","model-value":b.visible,"onUpdate:modelValue":_=>{b.visible=_},onSelect:p[1]||(p[1]=_=>{_.preventDefault()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.label),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))]),_:1})]),_:1},8,["open"]))}}}),zd=e.defineComponent({__name:"Search",setup(t){const n=e.inject("table"),o=e.inject("sortMode");return(r,l)=>{var i;const a=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-col items-start gap-1",e.unref(o)?"opacity-50 pointer-events-none":""])},[e.createVNode(a,{class:"max-w-52",placeholder:"Search...","model-value":(i=e.unref(n))==null?void 0:i.getState().globalFilter,"onUpdate:modelValue":l[0]||(l[0]=d=>{var s;return(s=e.unref(n))==null?void 0:s.setGlobalFilter(d)}),disabled:e.unref(o)},null,8,["model-value","disabled"])],2)}}}),Ld={class:"flex flex-col items-start gap-4 py-4"},jd={class:"flex flex-col gap-1.5"},Ud={class:"flex items-center gap-2 w-full justify-between"},Hd={class:"flex items-center gap-2 ml-auto"},Gd=e.defineComponent({__name:"SortModeSettingsDialog",props:{savedField:{type:String,default:""}},emits:["saved"],setup(t,{emit:n}){const{isAdmin:o}=J.useModulePermissions(),r=n,l=t,a=m=>{d.value=m},i=e.inject("columns"),d=e.ref(!1),s=e.ref("");e.watch(d,m=>{m&&(s.value=l.savedField??"")});const u=()=>{r("saved",{field:""}),c()},c=()=>{d.value=!1},p=()=>{r("saved",{field:s.value}),c()};return(m,f)=>{const v=e.resolveComponent("DialogTrigger"),g=e.resolveComponent("DialogTitle"),h=e.resolveComponent("DialogDescription"),y=e.resolveComponent("DialogHeader"),b=e.resolveComponent("Label"),_=e.resolveComponent("ComboboxTrigger"),k=e.resolveComponent("ComboboxInput"),x=e.resolveComponent("ComboboxAnchor"),C=e.resolveComponent("ComboboxItem"),N=e.resolveComponent("ComboboxGroup"),B=e.resolveComponent("ComboboxList"),z=e.resolveComponent("Combobox"),Y=e.resolveComponent("Button"),R=e.resolveComponent("DialogFooter"),T=e.resolveComponent("DialogScrollContent"),U=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(U,{open:d.value,"onUpdate:open":[f[3]||(f[3]=S=>d.value=S),a]},{default:e.withCtx(()=>[e.createVNode(v,{asChild:""},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:f[0]||(f[0]=S=>d.value=!0)},"Settings")):e.createCommentVNode("",!0)]),_:1}),e.createVNode(T,{class:"sm:max-w-lg"},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>f[4]||(f[4]=[e.createTextVNode("Sort mode settings",-1)])),_:1,__:[4]}),e.createVNode(h,null,{default:e.withCtx(()=>f[5]||(f[5]=[e.createTextVNode(" Select the property (of type number) to sort by. ",-1)])),_:1,__:[5]})]),_:1}),e.createElementVNode("div",Ld,[e.createVNode(z,{by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:s.value,"onUpdate:modelValue":f[2]||(f[2]=S=>s.value=S)},{default:e.withCtx(()=>[e.createVNode(x,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",jd,[e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(b,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>f[6]||(f[6]=[e.createTextVNode("Field",-1)])),_:1,__:[6]})]),_:1}),e.createVNode(k,{modelValue:s.value,"onUpdate:modelValue":f[1]||(f[1]=S=>s.value=S),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode(B,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(N,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),S=>(e.openBlock(),e.createBlock(C,{key:S.property,value:S.property,onSelect:j=>s.value=S.property},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.property)+" ",1),s.value===S.property?(e.openBlock(),e.createBlock(e.unref(F.Check),{key:0,class:e.normalizeClass(e.unref(yt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createVNode(R,null,{default:e.withCtx(()=>[e.createElementVNode("div",Ud,[l.savedField?(e.openBlock(),e.createBlock(Y,{key:0,variant:"outline",onClick:u},{default:e.withCtx(()=>f[7]||(f[7]=[e.createTextVNode(" Disable sort-mode ",-1)])),_:1,__:[7]})):e.createCommentVNode("",!0),e.createElementVNode("div",Hd,[e.createVNode(Y,{variant:"outline",onClick:c},{default:e.withCtx(()=>f[8]||(f[8]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[8]}),e.createVNode(Y,{onClick:p},{default:e.withCtx(()=>f[9]||(f[9]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[9]})])])]),_:1})]),_:1})]),_:1},8,["open"])}}}),qd={class:"flex flex-col items-start gap-1"},Wd={key:1,class:"flex items-center gap-2"},Zd=e.defineComponent({__name:"SortMode",setup(t){const{getModuleData:n,setModuleData:o}=J.useModuleStorage(),{isAdmin:r}=J.useModulePermissions(),l=e.inject("table"),a=e.inject("data"),i=e.inject("sortMode",e.ref(!1)),d=e.inject("sortModeProperty",e.ref("")),s=e.inject("saveSortMode",()=>{}),u=v=>{d.value=v.field,o("sortMode",v)};e.onMounted(async()=>{let v=await n("sortMode");d.value=(v==null?void 0:v.field)??""});const c=e.ref(0),p=()=>{var v,g;i.value=!0,c.value=(v=l==null?void 0:l.value)==null?void 0:v.getState().pagination.pageSize,(g=l==null?void 0:l.value)==null||g.setPageSize(a.value.length)},m=()=>{var v;i.value=!1,(v=l==null?void 0:l.value)==null||v.setPageSize(c.value)},f=()=>{s()};return(v,g)=>{const h=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",qd,[(e.unref(d)||e.unref(r)())&&!e.unref(i)?(e.openBlock(),e.createBlock(h,{key:0,variant:"outline",disabled:!e.unref(d),onClick:p},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ArrowUpDown),{class:"size-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(i)?"Save order":"Reorder rows"),1)]),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.unref(i)?(e.openBlock(),e.createElementBlock("div",Wd,[e.createVNode(h,{variant:"outline",size:"icon",onClick:m},{default:e.withCtx(()=>[e.createVNode(e.unref(F.X),{class:"size-4"})]),_:1}),e.createVNode(h,{onClick:f},{default:e.withCtx(()=>g[0]||(g[0]=[e.createTextVNode(" Save order ",-1)])),_:1,__:[0]})])):e.createCommentVNode("",!0),e.createVNode(Gd,{onSaved:u,"saved-field":e.unref(d)},null,8,["saved-field"])])}}});function vr(t,n){return t-n*Math.floor(t/n)}const Ka=1721426;function ho(t,n,o,r){n=ll(t,n);let l=n-1,a=-2;return o<=2?a=0:No(n)&&(a=-1),Ka-1+365*l+Math.floor(l/4)-Math.floor(l/100)+Math.floor(l/400)+Math.floor((367*o-362)/12+a+r)}function No(t){return t%4===0&&(t%100!==0||t%400===0)}function ll(t,n){return t==="BC"?1-n:n}function Yd(t){let n="AD";return t<=0&&(n="BC",t=1-t),[n,t]}const Xd={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]};class wn{fromJulianDay(n){let o=n,r=o-Ka,l=Math.floor(r/146097),a=vr(r,146097),i=Math.floor(a/36524),d=vr(a,36524),s=Math.floor(d/1461),u=vr(d,1461),c=Math.floor(u/365),p=l*400+i*100+s*4+c+(i!==4&&c!==4?1:0),[m,f]=Yd(p),v=o-ho(m,f,1,1),g=2;o<ho(m,f,3,1)?g=0:No(f)&&(g=1);let h=Math.floor(((v+g)*12+373)/367),y=o-ho(m,f,h,1)+1;return new wt(m,f,h,y)}toJulianDay(n){return ho(n.era,n.year,n.month,n.day)}getDaysInMonth(n){return Xd[No(n.year)?"leapyear":"standard"][n.month-1]}getMonthsInYear(n){return 12}getDaysInYear(n){return No(n.year)?366:365}getYearsInEra(n){return 9999}getEras(){return["BC","AD"]}isInverseEra(n){return n.era==="BC"}balanceDate(n){n.year<=0&&(n.era=n.era==="BC"?"AD":"BC",n.year=1-n.year)}constructor(){this.identifier="gregory"}}function Jd(t,n){var o,r,l,a;return(a=(l=(o=t.isEqual)===null||o===void 0?void 0:o.call(t,n))!==null&&l!==void 0?l:(r=n.isEqual)===null||r===void 0?void 0:r.call(n,t))!==null&&a!==void 0?a:t.identifier===n.identifier}function Kd(t){return Mt(Date.now(),t)}function Qa(t){return nc(Kd(t))}function ei(t,n){return t.calendar.toJulianDay(t)-n.calendar.toJulianDay(n)}function Qd(t,n){return Dl(t)-Dl(n)}function Dl(t){return t.hour*36e5+t.minute*6e4+t.second*1e3+t.millisecond}let hr=null;function ht(){return hr==null&&(hr=new Intl.DateTimeFormat().resolvedOptions().timeZone),hr}function Nn(t){t=kt(t,new wn);let n=ll(t.era,t.year);return ti(n,t.month,t.day,t.hour,t.minute,t.second,t.millisecond)}function ti(t,n,o,r,l,a,i){let d=new Date;return d.setUTCHours(r,l,a,i),d.setUTCFullYear(t,n-1,o),d.getTime()}function Rr(t,n){if(n==="UTC")return 0;if(t>0&&n===ht())return new Date(t).getTimezoneOffset()*-6e4;let{year:o,month:r,day:l,hour:a,minute:i,second:d}=ni(t,n);return ti(o,r,l,a,i,d,0)-Math.floor(t/1e3)*1e3}const Bl=new Map;function ni(t,n){let o=Bl.get(n);o||(o=new Intl.DateTimeFormat("en-US",{timeZone:n,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),Bl.set(n,o));let r=o.formatToParts(new Date(t)),l={};for(let a of r)a.type!=="literal"&&(l[a.type]=a.value);return{year:l.era==="BC"||l.era==="B"?-l.year+1:+l.year,month:+l.month,day:+l.day,hour:l.hour==="24"?0:+l.hour,minute:+l.minute,second:+l.second}}const $l=864e5;function ec(t,n,o,r){return(o===r?[o]:[o,r]).filter(a=>tc(t,n,a))}function tc(t,n,o){let r=ni(o,n);return t.year===r.year&&t.month===r.month&&t.day===r.day&&t.hour===r.hour&&t.minute===r.minute&&t.second===r.second}function It(t,n,o="compatible"){let r=kn(t);if(n==="UTC")return Nn(r);if(n===ht()&&o==="compatible"){r=kt(r,new wn);let s=new Date,u=ll(r.era,r.year);return s.setFullYear(u,r.month-1,r.day),s.setHours(r.hour,r.minute,r.second,r.millisecond),s.getTime()}let l=Nn(r),a=Rr(l-$l,n),i=Rr(l+$l,n),d=ec(r,n,l-a,l-i);if(d.length===1)return d[0];if(d.length>1)switch(o){case"compatible":case"earlier":return d[0];case"later":return d[d.length-1];case"reject":throw new RangeError("Multiple possible absolute times found")}switch(o){case"earlier":return Math.min(l-a,l-i);case"compatible":case"later":return Math.max(l-a,l-i);case"reject":throw new RangeError("No such absolute time found")}}function oi(t,n,o="compatible"){return new Date(It(t,n,o))}function Mt(t,n){let o=Rr(t,n),r=new Date(t+o),l=r.getUTCFullYear(),a=r.getUTCMonth()+1,i=r.getUTCDate(),d=r.getUTCHours(),s=r.getUTCMinutes(),u=r.getUTCSeconds(),c=r.getUTCMilliseconds();return new oo(l<1?"BC":"AD",l<1?-l+1:l,a,i,n,o,d,s,u,c)}function nc(t){return new wt(t.calendar,t.era,t.year,t.month,t.day)}function kn(t,n){let o=0,r=0,l=0,a=0;if("timeZone"in t)({hour:o,minute:r,second:l,millisecond:a}=t);else if("hour"in t&&!n)return t;return n&&({hour:o,minute:r,second:l,millisecond:a}=n),new no(t.calendar,t.era,t.year,t.month,t.day,o,r,l,a)}function kt(t,n){if(Jd(t.calendar,n))return t;let o=n.fromJulianDay(t.calendar.toJulianDay(t)),r=t.copy();return r.calendar=n,r.era=o.era,r.year=o.year,r.month=o.month,r.day=o.day,dn(r),r}function oc(t,n,o){if(t instanceof oo)return t.timeZone===n?t:lc(t,n);let r=It(t,n,o);return Mt(r,n)}function rc(t){let n=Nn(t)-t.offset;return new Date(n)}function lc(t,n){let o=Nn(t)-t.offset;return kt(Mt(o,n),t.calendar)}const Fn=36e5;function Go(t,n){let o=t.copy(),r="hour"in o?uc(o,n):0;Ar(o,n.years||0),o.calendar.balanceYearMonth&&o.calendar.balanceYearMonth(o,t),o.month+=n.months||0,Fr(o),ri(o),o.day+=(n.weeks||0)*7,o.day+=n.days||0,o.day+=r,ac(o),o.calendar.balanceDate&&o.calendar.balanceDate(o),o.year<1&&(o.year=1,o.month=1,o.day=1);let l=o.calendar.getYearsInEra(o);if(o.year>l){var a,i;let s=(a=(i=o.calendar).isInverseEra)===null||a===void 0?void 0:a.call(i,o);o.year=l,o.month=s?1:o.calendar.getMonthsInYear(o),o.day=s?1:o.calendar.getDaysInMonth(o)}o.month<1&&(o.month=1,o.day=1);let d=o.calendar.getMonthsInYear(o);return o.month>d&&(o.month=d,o.day=o.calendar.getDaysInMonth(o)),o.day=Math.max(1,Math.min(o.calendar.getDaysInMonth(o),o.day)),o}function Ar(t,n){var o,r;!((o=(r=t.calendar).isInverseEra)===null||o===void 0)&&o.call(r,t)&&(n=-n),t.year+=n}function Fr(t){for(;t.month<1;)Ar(t,-1),t.month+=t.calendar.getMonthsInYear(t);let n=0;for(;t.month>(n=t.calendar.getMonthsInYear(t));)t.month-=n,Ar(t,1)}function ac(t){for(;t.day<1;)t.month--,Fr(t),t.day+=t.calendar.getDaysInMonth(t);for(;t.day>t.calendar.getDaysInMonth(t);)t.day-=t.calendar.getDaysInMonth(t),t.month++,Fr(t)}function ri(t){t.month=Math.max(1,Math.min(t.calendar.getMonthsInYear(t),t.month)),t.day=Math.max(1,Math.min(t.calendar.getDaysInMonth(t),t.day))}function dn(t){t.calendar.constrainDate&&t.calendar.constrainDate(t),t.year=Math.max(1,Math.min(t.calendar.getYearsInEra(t),t.year)),ri(t)}function li(t){let n={};for(let o in t)typeof t[o]=="number"&&(n[o]=-t[o]);return n}function ai(t,n){return Go(t,li(n))}function al(t,n){let o=t.copy();return n.era!=null&&(o.era=n.era),n.year!=null&&(o.year=n.year),n.month!=null&&(o.month=n.month),n.day!=null&&(o.day=n.day),dn(o),o}function Eo(t,n){let o=t.copy();return n.hour!=null&&(o.hour=n.hour),n.minute!=null&&(o.minute=n.minute),n.second!=null&&(o.second=n.second),n.millisecond!=null&&(o.millisecond=n.millisecond),sc(o),o}function ic(t){t.second+=Math.floor(t.millisecond/1e3),t.millisecond=xo(t.millisecond,1e3),t.minute+=Math.floor(t.second/60),t.second=xo(t.second,60),t.hour+=Math.floor(t.minute/60),t.minute=xo(t.minute,60);let n=Math.floor(t.hour/24);return t.hour=xo(t.hour,24),n}function sc(t){t.millisecond=Math.max(0,Math.min(t.millisecond,1e3)),t.second=Math.max(0,Math.min(t.second,59)),t.minute=Math.max(0,Math.min(t.minute,59)),t.hour=Math.max(0,Math.min(t.hour,23))}function xo(t,n){let o=t%n;return o<0&&(o+=n),o}function uc(t,n){return t.hour+=n.hours||0,t.minute+=n.minutes||0,t.second+=n.seconds||0,t.millisecond+=n.milliseconds||0,ic(t)}function il(t,n,o,r){let l=t.copy();switch(n){case"era":{let d=t.calendar.getEras(),s=d.indexOf(t.era);if(s<0)throw new Error("Invalid era: "+t.era);s=Pt(s,o,0,d.length-1,r==null?void 0:r.round),l.era=d[s],dn(l);break}case"year":var a,i;!((a=(i=l.calendar).isInverseEra)===null||a===void 0)&&a.call(i,l)&&(o=-o),l.year=Pt(t.year,o,-1/0,9999,r==null?void 0:r.round),l.year===-1/0&&(l.year=1),l.calendar.balanceYearMonth&&l.calendar.balanceYearMonth(l,t);break;case"month":l.month=Pt(t.month,o,1,t.calendar.getMonthsInYear(t),r==null?void 0:r.round);break;case"day":l.day=Pt(t.day,o,1,t.calendar.getDaysInMonth(t),r==null?void 0:r.round);break;default:throw new Error("Unsupported field "+n)}return t.calendar.balanceDate&&t.calendar.balanceDate(l),dn(l),l}function ii(t,n,o,r){let l=t.copy();switch(n){case"hour":{let a=t.hour,i=0,d=23;if((r==null?void 0:r.hourCycle)===12){let s=a>=12;i=s?12:0,d=s?23:11}l.hour=Pt(a,o,i,d,r==null?void 0:r.round);break}case"minute":l.minute=Pt(t.minute,o,0,59,r==null?void 0:r.round);break;case"second":l.second=Pt(t.second,o,0,59,r==null?void 0:r.round);break;case"millisecond":l.millisecond=Pt(t.millisecond,o,0,999,r==null?void 0:r.round);break;default:throw new Error("Unsupported field "+n)}return l}function Pt(t,n,o,r,l=!1){if(l){t+=Math.sign(n),t<o&&(t=r);let a=Math.abs(n);n>0?t=Math.ceil(t/a)*a:t=Math.floor(t/a)*a,t>r&&(t=o)}else t+=n,t<o?t=r-(o-t-1):t>r&&(t=o+(t-r-1));return t}function si(t,n){let o;if(n.years!=null&&n.years!==0||n.months!=null&&n.months!==0||n.weeks!=null&&n.weeks!==0||n.days!=null&&n.days!==0){let l=Go(kn(t),{years:n.years,months:n.months,weeks:n.weeks,days:n.days});o=It(l,t.timeZone)}else o=Nn(t)-t.offset;o+=n.milliseconds||0,o+=(n.seconds||0)*1e3,o+=(n.minutes||0)*6e4,o+=(n.hours||0)*36e5;let r=Mt(o,t.timeZone);return kt(r,t.calendar)}function dc(t,n){return si(t,li(n))}function cc(t,n,o,r){switch(n){case"hour":{let l=0,a=23;if((r==null?void 0:r.hourCycle)===12){let v=t.hour>=12;l=v?12:0,a=v?23:11}let i=kn(t),d=kt(Eo(i,{hour:l}),new wn),s=[It(d,t.timeZone,"earlier"),It(d,t.timeZone,"later")].filter(v=>Mt(v,t.timeZone).day===d.day)[0],u=kt(Eo(i,{hour:a}),new wn),c=[It(u,t.timeZone,"earlier"),It(u,t.timeZone,"later")].filter(v=>Mt(v,t.timeZone).day===u.day).pop(),p=Nn(t)-t.offset,m=Math.floor(p/Fn),f=p%Fn;return p=Pt(m,o,Math.floor(s/Fn),Math.floor(c/Fn),r==null?void 0:r.round)*Fn+f,kt(Mt(p,t.timeZone),t.calendar)}case"minute":case"second":case"millisecond":return ii(t,n,o,r);case"era":case"year":case"month":case"day":{let l=il(kn(t),n,o,r),a=It(l,t.timeZone);return kt(Mt(a,t.timeZone),t.calendar)}default:throw new Error("Unsupported field "+n)}}function pc(t,n,o){let r=kn(t),l=Eo(al(r,n),n);if(l.compare(r)===0)return t;let a=It(l,t.timeZone,o);return kt(Mt(a,t.timeZone),t.calendar)}const fc=/^([+-]\d{6}|\d{4})-(\d{2})-(\d{2})(?:T(\d{2}))?(?::(\d{2}))?(?::(\d{2}))?(\.\d+)?$/;function Il(t){let n=t.match(fc);if(!n)throw new Error("Invalid ISO 8601 date time string: "+t);let o=on(n[1],-9999,9999),r=o<1?"BC":"AD",l=new no(r,o<1?-o+1:o,on(n[2],1,12),1,n[4]?on(n[4],0,23):0,n[5]?on(n[5],0,59):0,n[6]?on(n[6],0,59):0,n[7]?on(n[7],0,1/0)*1e3:0);return l.day=on(n[3],0,l.calendar.getDaysInMonth(l)),l}function on(t,n,o){let r=Number(t);if(r<n||r>o)throw new RangeError(`Value out of range: ${n} <= ${r} <= ${o}`);return r}function mc(t){return`${String(t.hour).padStart(2,"0")}:${String(t.minute).padStart(2,"0")}:${String(t.second).padStart(2,"0")}${t.millisecond?String(t.millisecond/1e3).slice(1):""}`}function ui(t){let n=kt(t,new wn),o;return n.era==="BC"?o=n.year===1?"0000":"-"+String(Math.abs(1-n.year)).padStart(6,"00"):o=String(n.year).padStart(4,"0"),`${o}-${String(n.month).padStart(2,"0")}-${String(n.day).padStart(2,"0")}`}function di(t){return`${ui(t)}T${mc(t)}`}function gc(t){let n=Math.sign(t)<0?"-":"+";t=Math.abs(t);let o=Math.floor(t/36e5),r=t%36e5/6e4;return`${n}${String(o).padStart(2,"0")}:${String(r).padStart(2,"0")}`}function vc(t){return`${di(t)}${gc(t.offset)}[${t.timeZone}]`}function hc(t,n){if(n.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function sl(t,n,o){hc(t,n),n.set(t,o)}function ul(t){let n=typeof t[0]=="object"?t.shift():new wn,o;if(typeof t[0]=="string")o=t.shift();else{let i=n.getEras();o=i[i.length-1]}let r=t.shift(),l=t.shift(),a=t.shift();return[n,o,r,l,a]}var xc=new WeakMap;class wt{copy(){return this.era?new wt(this.calendar,this.era,this.year,this.month,this.day):new wt(this.calendar,this.year,this.month,this.day)}add(n){return Go(this,n)}subtract(n){return ai(this,n)}set(n){return al(this,n)}cycle(n,o,r){return il(this,n,o,r)}toDate(n){return oi(this,n)}toString(){return ui(this)}compare(n){return ei(this,n)}constructor(...n){sl(this,xc,{writable:!0,value:void 0});let[o,r,l,a,i]=ul(n);this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,dn(this)}}var _c=new WeakMap;class no{copy(){return this.era?new no(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new no(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(n){return Go(this,n)}subtract(n){return ai(this,n)}set(n){return al(Eo(this,n),n)}cycle(n,o,r){switch(n){case"era":case"year":case"month":case"day":return il(this,n,o,r);default:return ii(this,n,o,r)}}toDate(n,o){return oi(this,n,o)}toString(){return di(this)}compare(n){let o=ei(this,n);return o===0?Qd(this,kn(n)):o}constructor(...n){sl(this,_c,{writable:!0,value:void 0});let[o,r,l,a,i]=ul(n);this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,this.hour=n.shift()||0,this.minute=n.shift()||0,this.second=n.shift()||0,this.millisecond=n.shift()||0,dn(this)}}var yc=new WeakMap;class oo{copy(){return this.era?new oo(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new oo(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(n){return si(this,n)}subtract(n){return dc(this,n)}set(n,o){return pc(this,n,o)}cycle(n,o,r){return cc(this,n,o,r)}toDate(){return rc(this)}toString(){return vc(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(n){return this.toDate().getTime()-oc(n,this.timeZone).toDate().getTime()}constructor(...n){sl(this,yc,{writable:!0,value:void 0});let[o,r,l,a,i]=ul(n),d=n.shift(),s=n.shift();this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,this.timeZone=d,this.offset=s,this.hour=n.shift()||0,this.minute=n.shift()||0,this.second=n.shift()||0,this.millisecond=n.shift()||0,dn(this)}}let xr=new Map;class dl{format(n){return this.formatter.format(n)}formatToParts(n){return this.formatter.formatToParts(n)}formatRange(n,o){if(typeof this.formatter.formatRange=="function")return this.formatter.formatRange(n,o);if(o<n)throw new RangeError("End date must be >= start date");return`${this.formatter.format(n)} – ${this.formatter.format(o)}`}formatRangeToParts(n,o){if(typeof this.formatter.formatRangeToParts=="function")return this.formatter.formatRangeToParts(n,o);if(o<n)throw new RangeError("End date must be >= start date");let r=this.formatter.formatToParts(n),l=this.formatter.formatToParts(o);return[...r.map(a=>({...a,source:"startRange"})),{type:"literal",value:" – ",source:"shared"},...l.map(a=>({...a,source:"endRange"}))]}resolvedOptions(){let n=this.formatter.resolvedOptions();return bc()&&(this.resolvedHourCycle||(this.resolvedHourCycle=wc(n.locale,this.options)),n.hourCycle=this.resolvedHourCycle,n.hour12=this.resolvedHourCycle==="h11"||this.resolvedHourCycle==="h12"),n.calendar==="ethiopic-amete-alem"&&(n.calendar="ethioaa"),n}constructor(n,o={}){this.formatter=ci(n,o),this.options=o}}const Vc={true:{ja:"h11"},false:{}};function ci(t,n={}){if(typeof n.hour12=="boolean"&&Cc()){n={...n};let l=Vc[String(n.hour12)][t.split("-")[0]],a=n.hour12?"h12":"h23";n.hourCycle=l??a,delete n.hour12}let o=t+(n?Object.entries(n).sort((l,a)=>l[0]<a[0]?-1:1).join():"");if(xr.has(o))return xr.get(o);let r=new Intl.DateTimeFormat(t,n);return xr.set(o,r),r}let _r=null;function Cc(){return _r==null&&(_r=new Intl.DateTimeFormat("en-US",{hour:"numeric",hour12:!1}).format(new Date(2020,2,3,0))==="24"),_r}let yr=null;function bc(){return yr==null&&(yr=new Intl.DateTimeFormat("fr",{hour:"numeric",hour12:!1}).resolvedOptions().hourCycle==="h12"),yr}function wc(t,n){if(!n.timeStyle&&!n.hour)return;t=t.replace(/(-u-)?-nu-[a-zA-Z0-9]+/,""),t+=(t.includes("-u-")?"":"-u")+"-nu-latn";let o=ci(t,{...n,timeZone:void 0}),r=parseInt(o.formatToParts(new Date(2020,2,3,0)).find(a=>a.type==="hour").value,10),l=parseInt(o.formatToParts(new Date(2020,2,3,23)).find(a=>a.type==="hour").value,10);if(r===0&&l===23)return"h23";if(r===24&&l===23)return"h24";if(r===0&&l===11)return"h11";if(r===12&&l===11)return"h12";throw new Error("Unexpected hour cycle result")}function vt(t){return new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)}function Nc(){const t=new Date,n=vt(t);return{today:[n],yesterday:[vt(new Date(t.getFullYear(),t.getMonth(),t.getDate()-1))],last7days:[vt(new Date(t.getFullYear(),t.getMonth(),t.getDate()-6)),n],lastMonth:[vt(new Date(t.getFullYear(),t.getMonth()-1,t.getDate())),n],last6months:[vt(new Date(t.getFullYear(),t.getMonth()-6,t.getDate())),n],lastYear:[vt(new Date(t.getFullYear()-1,t.getMonth(),t.getDate())),n],tomorrow:[vt(new Date(t.getFullYear(),t.getMonth(),t.getDate()+1))],next7days:[n,vt(new Date(t.getFullYear(),t.getMonth(),t.getDate()+6))],nextMonth:[n,vt(new Date(t.getFullYear(),t.getMonth()+1,t.getDate()))],next6months:[n,vt(new Date(t.getFullYear(),t.getMonth()+6,t.getDate()))],nextYear:[n,vt(new Date(t.getFullYear()+1,t.getMonth(),t.getDate()))]}}const kc=["disabled"],Sc={class:"flex flex-col items-start gap-4 py-4"},Ec={class:"flex flex-col gap-1.5"},Tc={class:"flex flex-col gap-1.5"},Dc={class:"flex items-center gap-2 w-full justify-between"},Bc={class:"flex items-center gap-2 ml-auto"},$c=e.defineComponent({__name:"DateRangeSettingsDialog",props:{savedField:{type:String,default:""},savedDefaultDate:{type:String,default:"today"}},emits:["saved"],setup(t,{emit:n}){const{isAdmin:o}=J.useModulePermissions(),r=n,l=t,a=v=>{s.value=v},i=e.inject("sortMode"),d=e.inject("columns"),s=e.ref(!1),u=e.ref(""),c=e.ref("");e.watch(s,v=>{v&&(u.value=l.savedField??"",c.value=l.savedDefaultDate??"today")});const p=()=>{r("saved",{field:"",defaultDate:"today"}),m()},m=()=>{s.value=!1},f=()=>{r("saved",{field:u.value,defaultDate:c.value}),m()};return(v,g)=>{const h=e.resolveComponent("DialogTrigger"),y=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogDescription"),_=e.resolveComponent("DialogHeader"),k=e.resolveComponent("Label"),x=e.resolveComponent("ComboboxTrigger"),C=e.resolveComponent("ComboboxInput"),N=e.resolveComponent("ComboboxAnchor"),B=e.resolveComponent("ComboboxItem"),z=e.resolveComponent("ComboboxGroup"),Y=e.resolveComponent("ComboboxList"),R=e.resolveComponent("Combobox"),T=e.resolveComponent("SelectValue"),U=e.resolveComponent("SelectTrigger"),S=e.resolveComponent("SelectItem"),j=e.resolveComponent("SelectLabel"),P=e.resolveComponent("SelectGroup"),M=e.resolveComponent("SelectContent"),K=e.resolveComponent("Select"),A=e.resolveComponent("Button"),w=e.resolveComponent("DialogFooter"),E=e.resolveComponent("DialogScrollContent"),V=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(V,{open:s.value,"onUpdate:open":[g[4]||(g[4]=D=>s.value=D),a]},{default:e.withCtx(()=>[e.createVNode(h,{asChild:""},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",disabled:e.unref(i),onClick:g[0]||(g[0]=D=>s.value=!0)},"Settings",8,kc)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(E,{class:"sm:max-w-lg"},{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>g[5]||(g[5]=[e.createTextVNode("Date range filter settings",-1)])),_:1,__:[5]}),e.createVNode(b,null,{default:e.withCtx(()=>g[6]||(g[6]=[e.createTextVNode(" Select the property (of type date) to filter by. ",-1)])),_:1,__:[6]})]),_:1}),e.createElementVNode("div",Sc,[e.createVNode(R,{by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:u.value,"onUpdate:modelValue":g[2]||(g[2]=D=>u.value=D)},{default:e.withCtx(()=>[e.createVNode(N,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",Ec,[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(k,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[7]||(g[7]=[e.createTextVNode("Field",-1)])),_:1,__:[7]})]),_:1}),e.createVNode(C,{modelValue:u.value,"onUpdate:modelValue":g[1]||(g[1]=D=>u.value=D),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode(Y,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(z,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),D=>(e.openBlock(),e.createBlock(B,{key:D.property,value:D.property,onSelect:L=>u.value=D.property},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(D.property)+" ",1),u.value===D.property?(e.openBlock(),e.createBlock(e.unref(F.Check),{key:0,class:e.normalizeClass(e.unref(yt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Tc,[e.createVNode(k,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>g[8]||(g[8]=[e.createTextVNode("Default date",-1)])),_:1,__:[8]}),e.createVNode(K,{modelValue:c.value,"onUpdate:modelValue":g[3]||(g[3]=D=>c.value=D)},{default:e.withCtx(()=>[e.createVNode(U,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(T,{placeholder:"Select a fruit"})]),_:1}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createVNode(P,null,{default:e.withCtx(()=>[e.createVNode(S,{value:"today"},{default:e.withCtx(()=>g[9]||(g[9]=[e.createTextVNode(" Today ",-1)])),_:1,__:[9]}),e.createVNode(j,null,{default:e.withCtx(()=>g[10]||(g[10]=[e.createTextVNode("Past",-1)])),_:1,__:[10]}),e.createVNode(S,{value:"yesterday"},{default:e.withCtx(()=>g[11]||(g[11]=[e.createTextVNode(" 1 day ago ",-1)])),_:1,__:[11]}),e.createVNode(S,{value:"last7days"},{default:e.withCtx(()=>g[12]||(g[12]=[e.createTextVNode(" Last 7 days ",-1)])),_:1,__:[12]}),e.createVNode(S,{value:"lastMonth"},{default:e.withCtx(()=>g[13]||(g[13]=[e.createTextVNode(" Last 30 days ",-1)])),_:1,__:[13]}),e.createVNode(S,{value:"last6months"},{default:e.withCtx(()=>g[14]||(g[14]=[e.createTextVNode(" Last 6 months ",-1)])),_:1,__:[14]}),e.createVNode(S,{value:"lastYear"},{default:e.withCtx(()=>g[15]||(g[15]=[e.createTextVNode(" Last 12 months ",-1)])),_:1,__:[15]}),e.createVNode(j,null,{default:e.withCtx(()=>g[16]||(g[16]=[e.createTextVNode("Future",-1)])),_:1,__:[16]}),e.createVNode(S,{value:"tomorrow"},{default:e.withCtx(()=>g[17]||(g[17]=[e.createTextVNode(" In 1 day ",-1)])),_:1,__:[17]}),e.createVNode(S,{value:"next7days"},{default:e.withCtx(()=>g[18]||(g[18]=[e.createTextVNode(" Next 7 days ",-1)])),_:1,__:[18]}),e.createVNode(S,{value:"nextMonth"},{default:e.withCtx(()=>g[19]||(g[19]=[e.createTextVNode(" Next 30 days ",-1)])),_:1,__:[19]}),e.createVNode(S,{value:"next6months"},{default:e.withCtx(()=>g[20]||(g[20]=[e.createTextVNode(" Next 6 months ",-1)])),_:1,__:[20]}),e.createVNode(S,{value:"nextYear"},{default:e.withCtx(()=>g[21]||(g[21]=[e.createTextVNode(" Next 12 months ",-1)])),_:1,__:[21]})]),_:1})]),_:1})]),_:1},8,["modelValue"])])]),e.createVNode(w,null,{default:e.withCtx(()=>[e.createElementVNode("div",Dc,[l.savedField?(e.openBlock(),e.createBlock(A,{key:0,variant:"outline",onClick:p},{default:e.withCtx(()=>g[22]||(g[22]=[e.createTextVNode(" Disable date range filter ",-1)])),_:1,__:[22]})):e.createCommentVNode("",!0),e.createElementVNode("div",Bc,[e.createVNode(A,{variant:"outline",onClick:m},{default:e.withCtx(()=>g[23]||(g[23]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[23]}),e.createVNode(A,{onClick:f},{default:e.withCtx(()=>g[24]||(g[24]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[24]})])])]),_:1})]),_:1})]),_:1},8,["open"])}}}),Ic={class:"flex justify-between w-full p-3 pt-0"},Mc={class:"flex gap-2"},Pc=e.defineComponent({__name:"DateRangeFilter",setup(t){const{getModuleData:n,setModuleData:o}=J.useModuleStorage(),{isAdmin:r}=J.useModulePermissions(),l=e.inject("sortMode"),a=e.inject("dateRangeFilter"),i=e.inject("getTableData"),d=new dl("en-US",{dateStyle:"medium"}),s=e.ref({start:new wt(2022,1,20),end:new wt(2022,1,20).subtract({days:20})}),u=e.ref(!1),c=e.ref(""),p=e.ref("today"),m=h=>{c.value=h.field,p.value=h.defaultDate,o("dateRangeFilter",h)},f=h=>{var k,x,C;const y=(k=Nc())==null?void 0:k[h],b=(x=y[0].split("-"))==null?void 0:x.map(N=>parseInt(N)),_=y[1]?(C=y[1].split("-"))==null?void 0:C.map(N=>parseInt(N)):[];s.value={start:new wt(b[0],b[1],b[2]),end:_.length>0?new wt(_[0],_[1],_[2]):new wt(b[0],b[1],b[2])}},v=h=>{f(h),g(),u.value=!1},g=()=>{u.value=!1,a.value=[s.value.start.toDate(ht()),s.value.end.toDate(ht())],i()};return e.onMounted(async()=>{const h=await n("dateRangeFilter");c.value=(h==null?void 0:h.field)??"",p.value=(h==null?void 0:h.defaultDate)??"today",f(p.value),g()}),(h,y)=>{const b=e.resolveComponent("Button"),_=e.resolveComponent("PopoverTrigger"),k=e.resolveComponent("RangeCalendar"),x=e.resolveComponent("DropdownMenuTrigger"),C=e.resolveComponent("DropdownMenuItem"),N=e.resolveComponent("DropdownMenuSeparator"),B=e.resolveComponent("DropdownMenuLabel"),z=e.resolveComponent("DropdownMenuGroup"),Y=e.resolveComponent("DropdownMenuContent"),R=e.resolveComponent("DropdownMenu"),T=e.resolveComponent("PopoverContent"),U=e.resolveComponent("Popover");return c.value||e.unref(r)()?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["flex flex-col items-start gap-1",e.unref(l)?"opacity-50 pointer-events-none":""])},[e.createVNode(U,{open:u.value,"onUpdate:open":y[14]||(y[14]=S=>u.value=S)},{default:e.withCtx(()=>[e.createVNode(_,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(b,{variant:"outline",class:e.normalizeClass(e.unref(yt)("w-[280px] justify-start text-left font-normal",!s.value&&"text-muted-foreground")),disabled:e.unref(l)||!c.value},{default:e.withCtx(()=>[e.createVNode(e.unref(F.CalendarIcon),{class:"size-4"}),s.value.start?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.value.end?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(e.unref(d).format(s.value.start.toDate(e.unref(ht)())))+" - "+e.toDisplayString(e.unref(d).format(s.value.end.toDate(e.unref(ht)()))),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(d).format(s.value.start.toDate(e.unref(ht)()))),1)],64))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" Pick a date ")],64))]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(T,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(k,{modelValue:s.value,"onUpdate:modelValue":y[0]||(y[0]=S=>s.value=S),"initial-focus":"","number-of-months":2,"onUpdate:startValue":y[1]||(y[1]=S=>s.value.start=S)},null,8,["modelValue"]),e.createElementVNode("div",Ic,[e.createVNode(R,null,{default:e.withCtx(()=>[e.createVNode(x,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(b,{variant:"outline"},{default:e.withCtx(()=>y[15]||(y[15]=[e.createTextVNode(" Presets ",-1)])),_:1,__:[15]})]),_:1}),e.createVNode(Y,{class:"w-56"},{default:e.withCtx(()=>[e.createVNode(z,null,{default:e.withCtx(()=>[e.createVNode(C,{onClick:y[2]||(y[2]=S=>v("today"))},{default:e.withCtx(()=>y[16]||(y[16]=[e.createTextVNode(" Today ",-1)])),_:1,__:[16]}),e.createVNode(N),e.createVNode(B,null,{default:e.withCtx(()=>y[17]||(y[17]=[e.createTextVNode("Past",-1)])),_:1,__:[17]}),e.createVNode(C,{onClick:y[3]||(y[3]=S=>v("yesterday"))},{default:e.withCtx(()=>y[18]||(y[18]=[e.createTextVNode(" 1 day ago ",-1)])),_:1,__:[18]}),e.createVNode(C,{onClick:y[4]||(y[4]=S=>v("last7days"))},{default:e.withCtx(()=>y[19]||(y[19]=[e.createTextVNode(" Last 7 days ",-1)])),_:1,__:[19]}),e.createVNode(C,{onClick:y[5]||(y[5]=S=>v("lastMonth"))},{default:e.withCtx(()=>y[20]||(y[20]=[e.createTextVNode(" Last 30 days ",-1)])),_:1,__:[20]}),e.createVNode(C,{onClick:y[6]||(y[6]=S=>v("last6months"))},{default:e.withCtx(()=>y[21]||(y[21]=[e.createTextVNode(" Last 6 months ",-1)])),_:1,__:[21]}),e.createVNode(C,{onClick:y[7]||(y[7]=S=>v("lastYear"))},{default:e.withCtx(()=>y[22]||(y[22]=[e.createTextVNode(" Last 12 months ",-1)])),_:1,__:[22]}),e.createVNode(N),e.createVNode(B,null,{default:e.withCtx(()=>y[23]||(y[23]=[e.createTextVNode("Future",-1)])),_:1,__:[23]}),e.createVNode(C,{onClick:y[8]||(y[8]=S=>v("tomorrow"))},{default:e.withCtx(()=>y[24]||(y[24]=[e.createTextVNode(" In 1 day ",-1)])),_:1,__:[24]}),e.createVNode(C,{onClick:y[9]||(y[9]=S=>v("next7days"))},{default:e.withCtx(()=>y[25]||(y[25]=[e.createTextVNode(" Next 7 days ",-1)])),_:1,__:[25]}),e.createVNode(C,{onClick:y[10]||(y[10]=S=>v("nextMonth"))},{default:e.withCtx(()=>y[26]||(y[26]=[e.createTextVNode(" Next 30 days ",-1)])),_:1,__:[26]}),e.createVNode(C,{onClick:y[11]||(y[11]=S=>v("next6months"))},{default:e.withCtx(()=>y[27]||(y[27]=[e.createTextVNode(" Next 6 months ",-1)])),_:1,__:[27]}),e.createVNode(C,{onClick:y[12]||(y[12]=S=>v("nextYear"))},{default:e.withCtx(()=>y[28]||(y[28]=[e.createTextVNode(" Next 12 months ",-1)])),_:1,__:[28]})]),_:1})]),_:1})]),_:1}),e.createElementVNode("div",Mc,[e.createVNode(b,{variant:"outline",onClick:y[13]||(y[13]=S=>u.value=!1)},{default:e.withCtx(()=>y[29]||(y[29]=[e.createTextVNode("Cancel",-1)])),_:1,__:[29]}),e.createVNode(b,{onClick:g},{default:e.withCtx(()=>y[30]||(y[30]=[e.createTextVNode("Apply",-1)])),_:1,__:[30]})])])]),_:1})]),_:1},8,["open"]),e.createVNode($c,{onSaved:m,"saved-field":c.value,"saved-default-date":p.value},null,8,["saved-field","saved-default-date"])],2)):e.createCommentVNode("",!0)}}}),Rc={class:"grid grid-cols-3 gap-2 mb-2 py-2"},Ac={class:"flex flex-col items-start gap-1.5"},Fc={class:"flex flex-col items-start gap-1.5"},Oc={class:"grid gap-4"},zc={class:"grid grid-cols-4 items-center gap-4"},Lc={class:"grid grid-cols-4 items-center gap-4"},jc={class:"grid grid-cols-4 items-center gap-4"},Uc={class:"flex justify-end gap-2"},Hc=e.defineComponent({__name:"FilterDialog",emits:["filterAdded","filterEdited","filterRemoved"],setup(t,{expose:n,emit:o}){const r=o;e.inject("columns");const l=e.ref(!1),a=e.ref("add"),i=e.ref(null),d=e.ref(!1),s=e.reactive({label:"",property:"",options:[]}),u=e.reactive({value:"",label:"",checked:!1}),c=h=>{a.value=h?"edit":"add",i.value=h??null,s.label=(h==null?void 0:h.label)??"",s.property=(h==null?void 0:h.property)??"",s.options=(h==null?void 0:h.options)??[],l.value=!0},p=()=>{let h=crypto.randomUUID();s.options.push({id:h,value:u.value,label:u.label,checked:u.checked}),u.value="",u.label="",u.checked=!1},m=h=>{s.options=s.options.filter(y=>y.id!==h)},f=()=>{console.log(s),a.value==="add"?r("filterAdded",s):r("filterEdited",{...s,id:i.value.id}),l.value=!1},v=()=>{d.value=!1},g=()=>{r("filterRemoved",i.value.id),l.value=!1};return n({openDialog:c}),(h,y)=>{const b=e.resolveComponent("DialogTitle"),_=e.resolveComponent("DialogDescription"),k=e.resolveComponent("DialogHeader"),x=e.resolveComponent("Label"),C=e.resolveComponent("Input"),N=e.resolveComponent("Button"),B=e.resolveComponent("PopoverTrigger"),z=e.resolveComponent("Checkbox"),Y=e.resolveComponent("PopoverContent"),R=e.resolveComponent("Popover"),T=e.resolveComponent("DialogFooter"),U=e.resolveComponent("DialogScrollContent"),S=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(S,{open:l.value,"onUpdate:open":y[6]||(y[6]=j=>l.value=j)},{default:e.withCtx(()=>[e.createVNode(U,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Filter":"Edit Filter"),1)]),_:1}),e.createVNode(_,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add a new filter for this table.":"Edit the selected filter."),1)]),_:1})]),_:1}),e.createElementVNode("div",Rc,[e.createElementVNode("div",Ac,[e.createVNode(x,{for:"filter_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>y[7]||(y[7]=[e.createTextVNode("Label",-1)])),_:1,__:[7]}),e.createVNode(C,{id:"filter_dialog_label",modelValue:s.label,"onUpdate:modelValue":y[0]||(y[0]=j=>s.label=j)},null,8,["modelValue"])]),e.createElementVNode("div",Fc,[e.createVNode(x,{for:"filter_dialog_property",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>y[8]||(y[8]=[e.createTextVNode("Property",-1)])),_:1,__:[8]}),e.createVNode(C,{id:"filter_dialog_property",modelValue:s.property,"onUpdate:modelValue":y[1]||(y[1]=j=>s.property=j)},null,8,["modelValue"])])]),e.createElementVNode("div",null,[e.createVNode(x,{class:"mb-1"},{default:e.withCtx(()=>y[9]||(y[9]=[e.createTextVNode("Options",-1)])),_:1,__:[9]}),y[16]||(y[16]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mb-2"}," Define all options for this filter. ",-1)),e.createVNode(R,{open:d.value,"onUpdate:open":y[5]||(y[5]=j=>d.value=j)},{default:e.withCtx(()=>[e.createVNode(B,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"mr-2 size-4"}),y[10]||(y[10]=e.createTextVNode(" Add option ",-1))]),_:1,__:[10]})]),_:1}),e.createVNode(Y,{class:"w-80"},{default:e.withCtx(()=>[e.createElementVNode("div",Oc,[e.createElementVNode("div",zc,[e.createVNode(x,{for:"value",class:"text-right"},{default:e.withCtx(()=>y[11]||(y[11]=[e.createTextVNode(" Value ",-1)])),_:1,__:[11]}),e.createVNode(C,{id:"value",class:"col-span-3",modelValue:u.value,"onUpdate:modelValue":y[2]||(y[2]=j=>u.value=j)},null,8,["modelValue"])]),e.createElementVNode("div",Lc,[e.createVNode(x,{for:"label",class:"text-right"},{default:e.withCtx(()=>y[12]||(y[12]=[e.createTextVNode(" Label ",-1)])),_:1,__:[12]}),e.createVNode(C,{id:"label",class:"col-span-3",modelValue:u.label,"onUpdate:modelValue":y[3]||(y[3]=j=>u.label=j)},null,8,["modelValue"])]),e.createElementVNode("div",jc,[e.createVNode(x,{for:"checked",class:"text-right"},{default:e.withCtx(()=>y[13]||(y[13]=[e.createTextVNode(" Checked by default ",-1)])),_:1,__:[13]}),e.createVNode(z,{id:"checked",class:"col-span-3 border-ring",modelValue:u.checked,"onUpdate:modelValue":y[4]||(y[4]=j=>u.checked=j)},null,8,["modelValue"])]),e.createElementVNode("div",Uc,[e.createVNode(N,{variant:"outline",onClick:v},{default:e.withCtx(()=>y[14]||(y[14]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[14]}),e.createVNode(N,{onClick:p},{default:e.withCtx(()=>y[15]||(y[15]=[e.createTextVNode(" Add option ",-1)])),_:1,__:[15]})])])]),_:1})]),_:1},8,["open"])]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.options,j=>(e.openBlock(),e.createElementBlock("div",{key:j.id,class:"grid grid-cols-4 items-center gap-4"},[e.createVNode(x,{for:"value",class:"text-right"},{default:e.withCtx(()=>y[17]||(y[17]=[e.createTextVNode(" Value ",-1)])),_:1,__:[17]}),e.createVNode(C,{id:"value",class:"col-span-3",modelValue:j.value,"onUpdate:modelValue":P=>j.value=P},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(N,{variant:"destructive",onClick:P=>m(j.id)},{default:e.withCtx(()=>y[18]||(y[18]=[e.createTextVNode(" Remove ",-1)])),_:2,__:[18]},1032,["onClick"])]))),128))]),e.createVNode(T,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(N,{key:0,variant:"destructive",onClick:g},{default:e.withCtx(()=>y[19]||(y[19]=[e.createTextVNode(" Remove Filter ",-1)])),_:1,__:[19]})):e.createCommentVNode("",!0),e.createVNode(N,{onClick:f},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Filter":"Save changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),Gc={class:"flex flex-wrap gap-2 mb-4"},qc={class:"truncate w-full text-left font-medium"},Wc=["onClick"],Zc=e.defineComponent({__name:"Filters",setup(t){const n=e.inject("table"),o=e.inject("filters",e.ref([])),{getModuleData:r,setModuleData:l}=J.useModuleStorage(),{isAdmin:a}=J.useModulePermissions(),i=e.ref(),d=c=>{var m;let p=crypto.randomUUID();(!o.value||((m=o==null?void 0:o.value)==null?void 0:m.length)===0)&&(o.value=[]),o.value.push({...c,id:p}),l("filters",o.value)},s=c=>{o.value=o.value.map(p=>p.id===c.id?c:p),l("filters",o.value)},u=c=>{o.value=o.value.filter(p=>p.id!==c),l("filters",o.value)};return e.onMounted(async()=>{o.value=await r("filters")||[]}),(c,p)=>{const m=e.resolveComponent("Button"),f=e.resolveComponent("DropdownMenuTrigger"),v=e.resolveComponent("DropdownMenuCheckboxItem"),g=e.resolveComponent("DropdownMenuContent"),h=e.resolveComponent("DropdownMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Gc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),y=>(e.openBlock(),e.createElementBlock("div",{key:y.id,class:"flex flex-col items-start gap-1"},[e.createVNode(h,null,{default:e.withCtx(()=>[e.createVNode(f,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(m,{variant:"outline",class:"w-[180px] flex items-center justify-between"},{default:e.withCtx(()=>[e.createElementVNode("span",qc,e.toDisplayString(y.label?y.label:"Filter by "+y.property),1),e.createVNode(e.unref(F.ChevronDown),{class:"size-4"})]),_:2},1024)]),_:2},1024),e.createVNode(g,{align:"start",onCloseAutoFocus:p[1]||(p[1]=b=>{console.log(b,"closeAutoFocus"),b.preventDefault()})},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.options,b=>(e.openBlock(),e.createBlock(v,{key:b.id,"model-value":b.checked,"onUpdate:modelValue":_=>{var x,C,N;b.checked=_;const k=(x=y.options)==null?void 0:x.filter(B=>B.checked).map(B=>B.value);(N=(C=e.unref(n))==null?void 0:C.getColumn(y.property))==null||N.setFilterValue(k!=null&&k.length?k:void 0)},onSelect:p[0]||(p[0]=_=>{_.preventDefault()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.label),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))]),_:2},1024)]),_:2},1024),e.unref(a)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:b=>i.value.openDialog(y)},"Settings",8,Wc)):e.createCommentVNode("",!0)]))),128)),e.unref(a)()?(e.openBlock(),e.createBlock(m,{key:0,variant:"outline",class:"border-dashed",onClick:p[2]||(p[2]=y=>i.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),p[6]||(p[6]=e.createTextVNode(" Add filter ",-1))]),_:1,__:[6]})):e.createCommentVNode("",!0)]),e.createVNode(Hc,{ref_key:"filterDialog",ref:i,onFilterAdded:p[3]||(p[3]=y=>d(y)),onFilterEdited:p[4]||(p[4]=y=>s(y)),onFilterRemoved:p[5]||(p[5]=y=>u(y))},null,512)],64)}}}),Yc={class:"grid grid-cols-2 gap-2 mb-2 py-2"},Xc={class:"flex flex-col items-start gap-1.5"},Jc={class:"flex flex-col items-start gap-1.5"},Kc={class:"flex flex-col items-start gap-1.5 col-span-2"},Qc=e.defineComponent({__name:"ActionDialog",emits:["actionAdded","actionEdited","actionRemoved"],setup(t,{expose:n,emit:o}){const r=o,l=e.ref(!1),a=e.ref("add"),i=e.ref(null),d=e.reactive({label:"",icon:"",visible:"true",flow:{}}),s=p=>{a.value=p?"edit":"add",i.value=p??null,d.label=(p==null?void 0:p.label)??"",d.icon=(p==null?void 0:p.icon)??"",d.visible=(p==null?void 0:p.visible)??"true",d.flow=(p==null?void 0:p.flow)??{},l.value=!0},u=()=>{console.log(d),a.value==="add"?r("actionAdded",d):r("actionEdited",{...d,id:i.value.id}),l.value=!1},c=()=>{r("actionRemoved",i.value.id),l.value=!1};return n({openDialog:s}),(p,m)=>{const f=e.resolveComponent("DialogTitle"),v=e.resolveComponent("DialogDescription"),g=e.resolveComponent("DialogHeader"),h=e.resolveComponent("Label"),y=e.resolveComponent("Input"),b=e.resolveComponent("LucideIconPicker"),_=e.resolveComponent("Sandbox"),k=e.resolveComponent("FlowBuilderSelect"),x=e.resolveComponent("Button"),C=e.resolveComponent("DialogFooter"),N=e.resolveComponent("DialogScrollContent"),B=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(B,{open:l.value,"onUpdate:open":m[4]||(m[4]=z=>l.value=z)},{default:e.withCtx(()=>[e.createVNode(N,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Action":"Edit Action"),1)]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add a new row item action.":"Edit the selected row item action."),1)]),_:1})]),_:1}),e.createElementVNode("div",Yc,[e.createElementVNode("div",Xc,[e.createVNode(h,{for:"action_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[5]||(m[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(y,{id:"action_dialog_label",modelValue:d.label,"onUpdate:modelValue":m[0]||(m[0]=z=>d.label=z)},null,8,["modelValue"])]),e.createElementVNode("div",Jc,[e.createVNode(h,{for:"action_dialog_icon",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[6]||(m[6]=[e.createTextVNode("Icon",-1)])),_:1,__:[6]}),e.createVNode(b,{modelValue:d.icon,"onUpdate:modelValue":m[1]||(m[1]=z=>d.icon=z)},null,8,["modelValue"])]),e.createElementVNode("div",Kc,[e.createVNode(h,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[7]||(m[7]=[e.createTextVNode("Visible",-1)])),_:1,__:[7]}),e.createVNode(_,{modelValue:d.visible,"onUpdate:modelValue":m[2]||(m[2]=z=>d.visible=z),variables:[],placeholder:"true",class:"w-full max-h-[200px]"},null,8,["modelValue"])])]),e.createVNode(k,{modelValue:d.flow,"onUpdate:modelValue":m[3]||(m[3]=z=>d.flow=z),allAvailableVariables:[]},null,8,["modelValue"]),e.createVNode(C,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(x,{key:0,variant:"destructive",onClick:c},{default:e.withCtx(()=>m[8]||(m[8]=[e.createTextVNode(" Remove Action ",-1)])),_:1,__:[8]})):e.createCommentVNode("",!0),e.createVNode(x,{onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Action":"Save changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),ep={class:"grid gap-4 py-4"},tp=e.defineComponent({__name:"Actions",setup(t){const{setModuleData:n}=J.useModuleStorage(),{isAdmin:o}=J.useModulePermissions(),r=e.ref(),l=e.inject("itemActions",e.ref([])),a=s=>{var c;let u=crypto.randomUUID();(!l.value||((c=l==null?void 0:l.value)==null?void 0:c.length)===0)&&(l.value=[]),l.value.push({...s,id:u}),n("itemActions",l.value)},i=s=>{l.value=l.value.map(u=>u.id===s.id?s:u),n("itemActions",l.value)},d=s=>{l.value=l.value.filter(u=>u.id!==s),n("itemActions",l.value)};return(s,u)=>{const c=e.resolveComponent("Button"),p=e.resolveComponent("DialogTrigger"),m=e.resolveComponent("DialogTitle"),f=e.resolveComponent("DialogDescription"),v=e.resolveComponent("DialogHeader"),g=e.resolveComponent("DialogContent"),h=e.resolveComponent("Dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(o)()?(e.openBlock(),e.createBlock(h,{key:0},{default:e.withCtx(()=>[e.createVNode(p,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(c,{variant:"outline",class:"text-primary hover:text-primary"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.MousePointerClick),{class:"size-4"}),u[4]||(u[4]=e.createTextVNode(" Edit item actions ",-1))]),_:1,__:[4]})]),_:1}),e.createVNode(g,{class:"sm:max-w-[425px]"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>u[5]||(u[5]=[e.createTextVNode("Edit item actions",-1)])),_:1,__:[5]}),e.createVNode(f,null,{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode(" Edit the item actions for this table. ",-1)])),_:1,__:[6]})]),_:1}),e.createVNode(c,{onClick:u[0]||(u[0]=y=>r.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),u[7]||(u[7]=e.createTextVNode(" Add action ",-1))]),_:1,__:[7]}),e.createElementVNode("div",ep,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),y=>(e.openBlock(),e.createBlock(c,{key:y.id,onClick:b=>r.value.openDialog(y),variant:"outline"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(F.icons)[y.icon]))),e.createTextVNode(" "+e.toDisplayString(y.label),1)]),_:2},1032,["onClick"]))),128))])]),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(Qc,{ref_key:"actionDialog",ref:r,onActionAdded:u[1]||(u[1]=y=>a(y)),onActionEdited:u[2]||(u[2]=y=>i(y)),onActionRemoved:u[3]||(u[3]=y=>d(y))},null,512)],64)}}}),np={class:"grid grid-cols-2 gap-2 mb-2 py-2"},op={class:"flex flex-col items-start gap-1.5"},rp={class:"flex flex-col items-start gap-1.5"},lp=e.defineComponent({__name:"CtaActionDialog",setup(t,{expose:n}){const{setModuleData:o}=J.useModuleStorage(),r=e.inject("ctaButtonSettings",e.ref({})),l=e.ref(!1),a=e.ref("add"),i=e.ref(null),d=e.reactive({label:"",icon:"",flow:{}}),s=()=>{var m;let p=(m=r==null?void 0:r.value)!=null&&m.enabled?r==null?void 0:r.value:null;a.value=p?"edit":"add",i.value=p??null,d.label=(p==null?void 0:p.label)??"",d.icon=(p==null?void 0:p.icon)??"",d.flow=(p==null?void 0:p.flow)??{},l.value=!0},u=()=>{r.value={label:d.label,icon:d.icon,flow:d.flow,enabled:!0},o("ctaButtonSettings",r.value),l.value=!1},c=()=>{r.value={label:"",icon:"",flow:{},enabled:!1},o("ctaButtonSettings",r.value),l.value=!1};return n({openDialog:s}),(p,m)=>{const f=e.resolveComponent("DialogTitle"),v=e.resolveComponent("DialogDescription"),g=e.resolveComponent("DialogHeader"),h=e.resolveComponent("Label"),y=e.resolveComponent("Input"),b=e.resolveComponent("LucideIconPicker"),_=e.resolveComponent("FlowBuilderSelect"),k=e.resolveComponent("Button"),x=e.resolveComponent("DialogFooter"),C=e.resolveComponent("DialogScrollContent"),N=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(N,{open:l.value,"onUpdate:open":m[3]||(m[3]=B=>l.value=B)},{default:e.withCtx(()=>[e.createVNode(C,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Primary Button":"Edit Primary Button"),1)]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>m[4]||(m[4]=[e.createTextVNode(" Configure the main action button for this table module, like “+ New Item”. ",-1)])),_:1,__:[4]})]),_:1}),e.createElementVNode("div",np,[e.createElementVNode("div",op,[e.createVNode(h,{for:"action_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[5]||(m[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(y,{id:"action_dialog_label",modelValue:d.label,"onUpdate:modelValue":m[0]||(m[0]=B=>d.label=B)},null,8,["modelValue"])]),e.createElementVNode("div",rp,[e.createVNode(h,{for:"action_dialog_icon",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[6]||(m[6]=[e.createTextVNode("Icon",-1)])),_:1,__:[6]}),e.createVNode(b,{modelValue:d.icon,"onUpdate:modelValue":m[1]||(m[1]=B=>d.icon=B)},null,8,["modelValue"])])]),e.createVNode(_,{modelValue:d.flow,"onUpdate:modelValue":m[2]||(m[2]=B=>d.flow=B),allAvailableVariables:[]},null,8,["modelValue"]),e.createVNode(x,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(k,{key:0,variant:"destructive",onClick:c},{default:e.withCtx(()=>m[7]||(m[7]=[e.createTextVNode(" Remove Button ",-1)])),_:1,__:[7]})):e.createCommentVNode("",!0),e.createVNode(k,{onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Button":"Save Changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),ap={class:"relative"},ip={ref:"container",class:"flex flex-col items-start gap-4 w-full mt-12 mb-8"},sp={class:"w-full flex gap-2 items-start"},up={class:"w-full flex gap-2 items-start justify-between"},dp={class:"flex gap-2"},cp={key:1,class:"flex flex-col items-start gap-1"},pp=e.defineComponent({__name:"TableView",props:{config:{type:Object,required:!0}},setup(t){const n=t,o=J.useModuleRoute(),{isAdmin:r}=J.useModulePermissions(),{getModuleData:l}=J.useModuleStorage(),{navigateTo:a}=J.useModuleRoute(),{setModuleBreadcrumbs:i}=J.useBreadcrumbs(),{runFlow:d}=J.useFlowBuilder();i([]);const s=e.ref(),u=e.ref(),c=e.ref([]),p=e.ref([]),m=e.ref(),f=e.ref(!1),v=e.ref(""),g=e.ref(),h=e.ref([]),y=e.ref([]),b=e.ref({}),_=e.computed(()=>{var R,T;return(T=(R=n.config)==null?void 0:R.getItems)==null?void 0:T.integration}),k=async()=>{var j,P;const R=await l("dateRangeFilter");let T;return R&&(T={name:"dateRangeFilter",type:"dateRangeFilter",value:{from:(j=g.value)==null?void 0:j[0],to:(P=g.value)==null?void 0:P[1]}}),[...Object.entries(o.query).map(([M,K])=>({name:N(M),type:"routeQueryParam",value:K??null}))||[],T].filter(Boolean)},x=async()=>{var S,j;let R=(S=n.config)!=null&&S.getItems?JSON.parse(JSON.stringify((j=n.config)==null?void 0:j.getItems)):null;if(!R)return;const T=await k(),U=await d(R,T);c.value=U||[]},C=async()=>{p.value=await l("columns"),y.value=await l("itemActions")||[],b.value=await l("ctaButtonSettings")};function N(R){return R.replace(/-([a-z])/g,(T,U)=>U.toUpperCase())}const B=()=>{u.value.saveSortMode(),f.value=!1},z=async()=>{const R=await k(),T=await d(b.value.flow,R);console.log(T)},Y=()=>{qu(c.value,"data.csv")};return e.onMounted(()=>{x(),C()}),e.provide("data",c),e.provide("columns",p),e.provide("table",m),e.provide("sortMode",f),e.provide("sortModeProperty",v),e.provide("dateRangeFilter",g),e.provide("filters",h),e.provide("itemActions",y),e.provide("ctaButtonSettings",b),e.provide("integrationId",_),e.provide("getTableData",x),e.provide("saveSortMode",B),(R,T)=>{var S;const U=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",ap,[e.createElementVNode("div",ip,[e.createVNode(Vd),e.createElementVNode("div",sp,[e.createVNode(zd),e.createVNode(Pc),e.createVNode(Zd),e.createVNode(Od)]),e.createElementVNode("div",up,[e.createVNode(Zc),e.createElementVNode("div",dp,[e.unref(r)()?(e.openBlock(),e.createBlock(tp,{key:0})):e.createCommentVNode("",!0),(S=b.value)!=null&&S.enabled?(e.openBlock(),e.createElementBlock("div",cp,[e.createVNode(U,{onClick:z},{default:e.withCtx(()=>{var j,P;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(F.icons)[(j=b.value)==null?void 0:j.icon]),{class:"size-4"})),e.createTextVNode(" "+e.toDisplayString((P=b.value)==null?void 0:P.label),1)]}),_:1}),e.unref(r)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:T[0]||(T[0]=j=>s.value.openDialog())},"Settings")):e.createCommentVNode("",!0)])):e.unref(r)()?(e.openBlock(),e.createBlock(U,{key:2,variant:"outline",class:"border-primary dark:border-primary border-dashed text-primary dark:text-primary",onClick:T[1]||(T[1]=j=>s.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),T[2]||(T[2]=e.createTextVNode(" Set primary button ",-1))]),_:1,__:[2]})):e.createCommentVNode("",!0)])]),e.createVNode(id,{ref_key:"tableRef",ref:u},null,512),e.createVNode(U,{onClick:Y},{default:e.withCtx(()=>T[3]||(T[3]=[e.createTextVNode(" Download data ",-1)])),_:1,__:[3]})],512)]),e.createVNode(lp,{ref_key:"ctaActionDialog",ref:s},null,512)],64)}}}),fp=[{path:"",component:pp}],mp=[{key:"view-product-detail",name:"View product detail",description:"Team member can click on a product to view its details"},{key:"create-product",name:"Create product",description:"Team member can create a new product"},{key:"edit-product",name:"Edit product",description:"Team member can edit a product"},{key:"delete-product",name:"Delete product",description:"Team member can delete a product"},{key:"send-to-ai",name:"Send to AI",description:"Team member can send a table to AI"}],gp={component:Ws,metadata:Zs,config:Ys,routes:fp,permissions:mp},vp=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=J.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),hp={name:"Products",description:"Manage products",icon:"mdi-table",version:"1.0.0"},xp={project:{label:"Project",type:"resource",accept:["FIREBASE"]},productCollection:{label:"Product Collection",type:"input",default:"products"},collectionsCollection:{label:"Collections Collection",type:"input",default:"public/e-commerce:collections"},allowedMediaSources:{label:"Allowed Media Sources",type:"mediaSource",multiple:!0},defaultUploadMediaSource:{label:"Default Upload Media Source",type:"mediaSource",multiple:!1}},_p={class:"@container mb-4"},yp={class:"grid @md:grid-cols-2 @2xl:grid-cols-3 @3xl:grid-cols-4 @4xl:grid-cols-5 @5xl:grid-cols-6 gap-6"},Vp=["onClick"],Cp={class:"aspect-square bg-muted rounded-xl overflow-hidden mb-2"},bp=["src"],wp={class:"font-semibold"},Np={class:"text-sm text-muted-foreground flex items-center gap-2"},kp={class:"flex items-center gap-2"},Sp={key:0},Ep=e.defineComponent({__name:"GridView",props:{products:{type:Array,required:!0}},setup(t){const{navigateTo:n}=J.useModuleRoute(),{hasPermission:o}=J.useModulePermissions();return(r,l)=>(e.openBlock(),e.createElementBlock("div",_p,[e.createElementVNode("div",yp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.products,a=>{var i,d,s;return e.openBlock(),e.createElementBlock("div",{key:a.id,onClick:u=>e.unref(o)("view-product-detail")?e.unref(n)(a.id):null,class:e.normalizeClass({"cursor-pointer":e.unref(o)("view-product-detail")})},[e.createElementVNode("div",Cp,[e.createElementVNode("img",{src:(i=a.media)==null?void 0:i[0],class:"w-full h-full object-cover"},null,8,bp)]),e.createElementVNode("div",null,[e.createElementVNode("p",wp,e.toDisplayString(a.title),1),e.createElementVNode("p",Np,[e.createElementVNode("span",kp,[a.status==="published"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l[0]||(l[0]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-green-500"},null,-1)),l[1]||(l[1]=e.createTextVNode(" Published ",-1))],64)):a.status==="draft"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l[2]||(l[2]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-blue-500"},null,-1)),l[3]||(l[3]=e.createTextVNode(" Draft ",-1))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[l[4]||(l[4]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-gray-300"},null,-1)),l[5]||(l[5]=e.createTextVNode(" Archived ",-1))],64))]),(d=a.variants)!=null&&d.length?(e.openBlock(),e.createElementBlock("span",Sp,"| "+e.toDisplayString((s=a.variants)==null?void 0:s.length)+" variants",1)):e.createCommentVNode("",!0)])])],10,Vp)}),128))])]))}}),Tp={class:"flex items-center gap-2"},Dp={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Bp={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},$p={key:2,class:"bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},Ip=e.defineComponent({__name:"ListView",props:{products:{type:Array,required:!0}},setup(t){const{navigateTo:n}=J.useModuleRoute(),{hasPermission:o}=J.useModulePermissions();return(r,l)=>{const a=e.resolveComponent("TableHead"),i=e.resolveComponent("TableRow"),d=e.resolveComponent("TableHeader"),s=e.resolveComponent("AvatarImage"),u=e.resolveComponent("AvatarFallback"),c=e.resolveComponent("Avatar"),p=e.resolveComponent("TableCell"),m=e.resolveComponent("TableBody"),f=e.resolveComponent("Table");return e.openBlock(),e.createBlock(f,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>[e.createVNode(i,null,{default:e.withCtx(()=>[e.createVNode(a,{class:"w-[100px]"},{default:e.withCtx(()=>l[0]||(l[0]=[e.createTextVNode(" Title ",-1)])),_:1,__:[0]}),e.createVNode(a,null,{default:e.withCtx(()=>l[1]||(l[1]=[e.createTextVNode("Status",-1)])),_:1,__:[1]}),e.createVNode(a,null,{default:e.withCtx(()=>l[2]||(l[2]=[e.createTextVNode(" Variants",-1)])),_:1,__:[2]}),e.createVNode(a,{class:"text-right"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createTextVNode(" Price ",-1)])),_:1,__:[3]})]),_:1})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.products,v=>(e.openBlock(),e.createBlock(i,{key:v.id,onClick:g=>e.unref(o)("view-product-detail")?e.unref(n)(v.id):null,class:e.normalizeClass({"cursor-pointer":e.unref(o)("view-product-detail")})},{default:e.withCtx(()=>[e.createVNode(p,{class:"font-medium"},{default:e.withCtx(()=>[e.createElementVNode("div",Tp,[e.createVNode(c,{class:"size-12 rounded-xl"},{default:e.withCtx(()=>{var g;return[e.createVNode(s,{src:(g=v.media)==null?void 0:g[0],class:"object-cover"},null,8,["src"]),e.createVNode(u,{class:"rounded-xl"})]}),_:2},1024),e.createElementVNode("span",null,e.toDisplayString(v.title),1)])]),_:2},1024),e.createVNode(p,null,{default:e.withCtx(()=>[v.status==="published"?(e.openBlock(),e.createElementBlock("span",Dp,"Published")):v.status==="draft"?(e.openBlock(),e.createElementBlock("span",Bp,"Draft")):v.status==="archived"?(e.openBlock(),e.createElementBlock("span",$p,"Archived")):e.createCommentVNode("",!0)]),_:2},1024),e.createVNode(p,null,{default:e.withCtx(()=>{var g;return[e.createTextVNode(e.toDisplayString(((g=v.variants)==null?void 0:g.length)||0),1)]}),_:2},1024),e.createVNode(p,{class:"text-right"},{default:e.withCtx(()=>[e.createTextVNode(" € "+e.toDisplayString(v.price||0),1)]),_:2},1024)]),_:2},1032,["onClick","class"]))),128))]),_:1})]),_:1})}}});function Mp(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}const Pp=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ml=()=>{};function Rp(t,n){function o(...r){return new Promise((l,a)=>{Promise.resolve(t(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(l).catch(a)})}return o}function Ap(t,n={}){let o,r,l=Ml;const a=s=>{clearTimeout(s),l(),l=Ml};let i;return s=>{const u=e.toValue(t),c=e.toValue(n.maxWait);return o&&a(o),u<=0||c!==void 0&&c<=0?(r&&(a(r),r=void 0),Promise.resolve(s())):new Promise((p,m)=>{l=n.rejectOnCancel?m:p,i=s,c&&!r&&(r=setTimeout(()=>{o&&a(o),r=void 0,p(i())},c)),o=setTimeout(()=>{r&&a(r),r=void 0,p(s())},u)})}}function Fp(t){return Array.isArray(t)?t:[t]}function Op(t){return e.getCurrentInstance()}function zp(t,n=200,o={}){return Rp(Ap(n,o),t)}function Lp(t,n=!0,o){Op()?e.onMounted(t,o):n?t():e.nextTick(t)}const pi=Pp?window:void 0;function Cn(t){var n;const o=e.toValue(t);return(n=o==null?void 0:o.$el)!=null?n:o}function jp(){const t=e.shallowRef(!1),n=e.getCurrentInstance();return n&&e.onMounted(()=>{t.value=!0},n),t}function Up(t){const n=jp();return e.computed(()=>(n.value,!!t()))}function Hp(t,n,o={}){const{window:r=pi,...l}=o;let a;const i=Up(()=>r&&"ResizeObserver"in r),d=()=>{a&&(a.disconnect(),a=void 0)},s=e.computed(()=>{const p=e.toValue(t);return Array.isArray(p)?p.map(m=>Cn(m)):[Cn(p)]}),u=e.watch(s,p=>{if(d(),i.value&&r){a=new ResizeObserver(n);for(const m of p)m&&a.observe(m,l)}},{immediate:!0,flush:"post"}),c=()=>{d(),u()};return Mp(c),{isSupported:i,stop:c}}function fi(t,n={width:0,height:0},o={}){const{window:r=pi,box:l="content-box"}=o,a=e.computed(()=>{var p,m;return(m=(p=Cn(t))==null?void 0:p.namespaceURI)==null?void 0:m.includes("svg")}),i=e.shallowRef(n.width),d=e.shallowRef(n.height),{stop:s}=Hp(t,([p])=>{const m=l==="border-box"?p.borderBoxSize:l==="content-box"?p.contentBoxSize:p.devicePixelContentBoxSize;if(r&&a.value){const f=Cn(t);if(f){const v=f.getBoundingClientRect();i.value=v.width,d.value=v.height}}else if(m){const f=Fp(m);i.value=f.reduce((v,{inlineSize:g})=>v+g,0),d.value=f.reduce((v,{blockSize:g})=>v+g,0)}else i.value=p.contentRect.width,d.value=p.contentRect.height},o);Lp(()=>{const p=Cn(t);p&&(i.value="offsetWidth"in p?p.offsetWidth:n.width,d.value="offsetHeight"in p?p.offsetHeight:n.height)});const u=e.watch(()=>Cn(t),p=>{i.value=p?n.width:0,d.value=p?n.height:0});function c(){s(),u()}return{width:i,height:d,stop:c}}const Gp={class:"relative"},qp={ref:"container",class:"flex items-center justify-between gap-4 w-full mt-12 mb-8"},Wp={class:"flex items-center gap-4"},Zp={class:"text-lg whitespace-nowrap"},Yp={class:"relative w-full max-w-sm items-center"},Xp={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2"},Jp={class:"flex items-center gap-4"},Kp={key:0},Qp={key:1},ef={key:2},tf={key:3},nf={class:"relative w-full max-w-sm items-center"},of={class:"flex items-center space-x-2 mb-4"},rf={class:"flex items-center space-x-2 mb-4"},lf={class:"flex items-center space-x-2 mb-4"},af=e.defineComponent({__name:"Overview",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o}=J.useModulePermissions(),{navigateTo:r}=J.useModuleRoute(),{log:l,logWarning:a,logError:i}=J.useLogs(),{setModuleBreadcrumbs:d}=J.useBreadcrumbs();d([]);const s=J.useFirebaseIntegration(n.config.project),u=e.ref([]),c=async()=>{const k=await s.find(n.config.productCollection);console.log("prods",k),u.value=k||[]},p=e.useTemplateRef("container"),{width:m}=fi(p),f=e.ref("grid"),v=e.ref(1),g=e.computed(()=>f.value==="grid"?m.value<768?6:m.value<896?8:m.value<1024?10:12:10),h=e.computed(()=>{if(u.value.length<=g.value)return u.value;const k=(v.value-1)*g.value,x=k+g.value;return u.value.slice(k,x)}),y=[{value:"Fruits",label:"Fruits"},{value:"Vegetables",label:"Vegetables"},{value:"Grains",label:"Grains"}],b=e.ref({collections:[],published:!0,draft:!0,archived:!1}),_=()=>{b.value={collections:[],published:!0,draft:!0,archived:!1}};return e.onMounted(()=>{l("Loaded products",{module:"products"}),a("Product saved without proper SEO",{module:"products"}),i("Product failed to save",{module:"products"}),c()}),(k,x)=>{var we,je;const C=e.resolveComponent("Input"),N=e.resolveComponent("Button"),B=e.resolveComponent("PopoverTrigger"),z=e.resolveComponent("ComboboxTrigger"),Y=e.resolveComponent("ComboboxAnchor"),R=e.resolveComponent("ComboboxInput"),T=e.resolveComponent("ComboboxEmpty"),U=e.resolveComponent("ComboboxItemIndicator"),S=e.resolveComponent("ComboboxItem"),j=e.resolveComponent("ScrollArea"),P=e.resolveComponent("ComboboxGroup"),M=e.resolveComponent("ComboboxList"),K=e.resolveComponent("Combobox"),A=e.resolveComponent("Checkbox"),w=e.resolveComponent("PopoverContent"),E=e.resolveComponent("Popover"),V=e.resolveComponent("SegmentedControlButton"),D=e.resolveComponent("SegmentedControl"),L=e.resolveComponent("PaginationFirst"),ee=e.resolveComponent("PaginationPrev"),O=e.resolveComponent("PaginationListItem"),W=e.resolveComponent("PaginationEllipsis"),se=e.resolveComponent("PaginationNext"),G=e.resolveComponent("PaginationLast"),ue=e.resolveComponent("PaginationList"),te=e.resolveComponent("Pagination");return e.openBlock(),e.createElementBlock("div",Gp,[e.createElementVNode("div",qp,[e.createElementVNode("div",Wp,[e.createElementVNode("p",Zp,e.toDisplayString((we=u.value)==null?void 0:we.length)+" products",1),e.createElementVNode("div",Yp,[e.createVNode(C,{id:"search",type:"text",placeholder:"Search...",class:"pl-8"}),e.createElementVNode("span",Xp,[e.createVNode(e.unref(F.Search),{class:"size-4 text-muted-foreground"})])])]),e.createElementVNode("div",Jp,[e.unref(o)("create-product")?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(N,{variant:"outline",onClick:x[0]||(x[0]=ye=>e.unref(r)("new"))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),x[7]||(x[7]=e.createTextVNode(" New Product ",-1))]),_:1,__:[7]}),x[8]||(x[8]=e.createElementVNode("div",{class:"w-[1px] h-8 bg-border"},null,-1))],64)):e.createCommentVNode("",!0),e.createVNode(E,null,{default:e.withCtx(()=>[e.createVNode(B,{asChild:""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Filter),{class:"size-4"}),x[9]||(x[9]=e.createTextVNode(" Filter ",-1))]),_:1,__:[9]})]),_:1}),e.createVNode(w,{class:"w-64"},{default:e.withCtx(()=>[x[15]||(x[15]=e.createElementVNode("p",{class:"text-sm font-medium text-muted-foreground mb-4"}," Filter by Category ",-1)),e.createVNode(K,{modelValue:b.value.collections,"onUpdate:modelValue":x[1]||(x[1]=ye=>b.value.collections=ye),by:"label",multiple:!0,class:"mb-6"},{default:e.withCtx(()=>[e.createVNode(Y,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(z,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline",class:"justify-between"},{default:e.withCtx(()=>[b.value.collections.length===1?(e.openBlock(),e.createElementBlock("span",Kp,e.toDisplayString(b.value.collections[0].label),1)):b.value.collections.length===2?(e.openBlock(),e.createElementBlock("span",Qp,e.toDisplayString(b.value.collections[0].label)+", "+e.toDisplayString(b.value.collections[1].label),1)):b.value.collections.length>2?(e.openBlock(),e.createElementBlock("span",ef,e.toDisplayString(b.value.collections[0].label)+", "+e.toDisplayString(b.value.collections[1].label)+" + "+e.toDisplayString(b.value.collections.length-2),1)):(e.openBlock(),e.createElementBlock("span",tf,"Select category")),e.createVNode(e.unref(F.ChevronsUpDown),{class:"ml-2 size-4 shrink-0 opacity-50"})]),_:1})]),_:1})]),_:1}),e.createVNode(M,null,{default:e.withCtx(()=>[e.createElementVNode("div",nf,[e.createVNode(R,{placeholder:"Select category..."})]),e.createVNode(T,null,{default:e.withCtx(()=>x[10]||(x[10]=[e.createTextVNode(" No category found. ",-1)])),_:1,__:[10]}),e.createVNode(P,null,{default:e.withCtx(()=>[e.createVNode(j,{class:"max-h-[200px] overflow-y-auto"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(y,ye=>e.createVNode(S,{key:ye.value,value:ye},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(ye.label)+" ",1),e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(e.unref(F.Check),{class:e.normalizeClass(e.unref(yt)("ml-auto size-4"))},null,8,["class"])]),_:1})]),_:2},1032,["value"])),64))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),x[16]||(x[16]=e.createElementVNode("p",{class:"text-sm font-medium text-muted-foreground mb-4"}," Filter by Status ",-1)),e.createElementVNode("div",of,[e.createVNode(A,{id:"chk_published_products",modelValue:b.value.published,"onUpdate:modelValue":x[2]||(x[2]=ye=>b.value.published=ye)},null,8,["modelValue"]),x[11]||(x[11]=e.createElementVNode("label",{for:"chk_published_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show published products ",-1))]),e.createElementVNode("div",rf,[e.createVNode(A,{id:"chk_draft_products",modelValue:b.value.draft,"onUpdate:modelValue":x[3]||(x[3]=ye=>b.value.draft=ye)},null,8,["modelValue"]),x[12]||(x[12]=e.createElementVNode("label",{for:"chk_draft_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show draft products ",-1))]),e.createElementVNode("div",lf,[e.createVNode(A,{id:"chk_archived_products",modelValue:b.value.archived,"onUpdate:modelValue":x[4]||(x[4]=ye=>b.value.archived=ye)},null,8,["modelValue"]),x[13]||(x[13]=e.createElementVNode("label",{for:"chk_archived_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show archived products ",-1))]),b.value.collections.length>0||!b.value.published||!b.value.draft||b.value.archived?(e.openBlock(),e.createBlock(N,{key:0,variant:"secondary",class:"ml-auto my-2",size:"sm",onClick:_},{default:e.withCtx(()=>[e.createVNode(e.unref(F.RotateCcw),{class:"size-3"}),x[14]||(x[14]=e.createElementVNode("span",{class:"ml-0.5 text-xs"},"Reset filters",-1))]),_:1,__:[14]})):e.createCommentVNode("",!0)]),_:1,__:[15,16]})]),_:1}),x[17]||(x[17]=e.createElementVNode("div",{class:"w-[1px] h-8 bg-border"},null,-1)),e.createElementVNode("div",null,[e.createVNode(D,{modelValue:f.value,"onUpdate:modelValue":x[5]||(x[5]=ye=>f.value=ye),"aria-label":"View mode"},{default:e.withCtx(()=>[e.createVNode(V,{value:"grid"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.LayoutGrid),{class:"size-4"})]),_:1}),e.createVNode(V,{value:"list"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.List),{class:"size-4"})]),_:1})]),_:1},8,["modelValue"])])])],512),e.createElementVNode("div",null,[f.value==="grid"?(e.openBlock(),e.createBlock(Ep,{key:0,products:h.value},null,8,["products"])):(e.openBlock(),e.createBlock(Ip,{key:1,products:h.value},null,8,["products"]))]),e.createVNode(te,{page:v.value,"onUpdate:page":x[6]||(x[6]=ye=>v.value=ye),"items-per-page":g.value,total:(je=u.value)==null?void 0:je.length,"sibling-count":1,"show-edges":""},{default:e.withCtx(()=>[e.createVNode(ue,{class:"flex items-center gap-1"},{default:e.withCtx(({items:ye})=>[e.createVNode(L),e.createVNode(ee),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ye,($e,De)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[$e.type==="page"?(e.openBlock(),e.createBlock(O,{key:De,value:$e.value,"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{class:"size-10 p-0",variant:$e.value===v.value?"default":"outline"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString($e.value),1)]),_:2},1032,["variant"])]),_:2},1032,["value"])):(e.openBlock(),e.createBlock(W,{key:$e.type,index:De},null,8,["index"]))],64))),256)),e.createVNode(se),e.createVNode(G)]),_:1})]),_:1},8,["page","items-per-page","total"])])}}});/**
|
|
22
|
+
*/function go(){return!0}const Hu=Symbol("merge-proxy"),qu={get(t,n,o){return n===Hu?o:t.get(n)},has(t,n){return t.has(n)},set:go,deleteProperty:go,getOwnPropertyDescriptor(t,n){return{configurable:!0,enumerable:!0,get(){return t.get(n)},set:go,deleteProperty:go}},ownKeys(t){return t.keys()}};function fr(t){return"value"in t?t.value:t}function jn(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return new Proxy({get(r){for(let l=n.length-1;l>=0;l--){const a=fr(n[l])[r];if(a!==void 0)return a}},has(r){for(let l=n.length-1;l>=0;l--)if(r in fr(n[l]))return!0;return!1},keys(){const r=[];for(let l=0;l<n.length;l++)r.push(...Object.keys(fr(n[l])));return[...Array.from(new Set(r))]}},qu)}const kl=e.defineComponent({props:["render","props"],setup:t=>()=>typeof t.render=="function"||typeof t.render=="object"?e.h(t.render,t.props):t.render});function Sl(t){return jn(t,{data:e.unref(t.data)})}function Gu(t){const n=e.isRef(t.data),o=jn({state:{},onStateChange:()=>{},renderFallbackValue:null,mergeOptions(a,i){return n?{...a,...i}:jn(a,i)}},n?Sl(t):t),r=Mu(o);if(n){const a=e.shallowRef(t.data);e.watch(a,()=>{r.setState(i=>({...i,data:a.value}))},{immediate:!0})}const l=e.ref(r.initialState);return e.watchEffect(()=>{r.setOptions(a=>{var i;const u=new Proxy({},{get:(s,d)=>l.value[d]});return jn(a,n?Sl(t):t,{state:jn(u,(i=t.state)!=null?i:{}),onStateChange:s=>{s instanceof Function?l.value=s(l.value):l.value=s,t.onStateChange==null||t.onStateChange(s)}})})}),r}function xt(...t){return Ws.twMerge(Gs.clsx(t))}function vn(t,n){n.value=typeof t=="function"?t(n.value):t}function Wu(t,n="data.csv"){const o=Array.isArray(t)?t:[t];if(!o.length)return;const r=Object.keys(o[0]),a=[r.join(","),...o.map(s=>r.map(d=>JSON.stringify(s[d]??"")).join(","))].join(`
|
|
23
|
+
`),i=new Blob([a],{type:"text/csv;charset=utf-8;"}),u=document.createElement("a");u.href=URL.createObjectURL(i),u.setAttribute("download",n),document.body.appendChild(u),u.click(),document.body.removeChild(u)}const Xu={key:0,class:"flex items-center justify-between px-2 w-full"},Yu={class:"flex-1 text-sm text-muted-foreground"},Zu={class:"flex items-center space-x-6 lg:space-x-8"},Ku={class:"flex items-center space-x-2"},Ju={class:"flex w-[100px] items-center justify-center text-sm font-medium"},Qu={class:"flex items-center space-x-2"},ed=e.defineComponent({__name:"DataTablePagination",props:{table:{}},setup(t){const n=e.inject("sortMode");return(o,r)=>{const l=e.resolveComponent("SelectValue"),a=e.resolveComponent("SelectTrigger"),i=e.resolveComponent("SelectItem"),u=e.resolveComponent("SelectContent"),s=e.resolveComponent("Select"),d=e.resolveComponent("Button");return e.unref(n)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Xu,[e.createElementVNode("div",Yu,e.toDisplayString(o.table.getFilteredSelectedRowModel().rows.length)+" of "+e.toDisplayString(o.table.getFilteredRowModel().rows.length)+" row(s) selected. ",1),e.createElementVNode("div",Zu,[e.createElementVNode("div",Ku,[r[4]||(r[4]=e.createElementVNode("p",{class:"text-sm font-medium"}," Rows per page ",-1)),e.createVNode(s,{"model-value":`${o.table.getState().pagination.pageSize}`,"onUpdate:modelValue":o.table.setPageSize},{default:e.withCtx(()=>[e.createVNode(a,{class:"h-8 w-[70px]"},{default:e.withCtx(()=>[e.createVNode(l,{placeholder:`${o.table.getState().pagination.pageSize}`},null,8,["placeholder"])]),_:1}),e.createVNode(u,{side:"top"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30,40,50],c=>e.createVNode(i,{key:c,value:`${c}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["model-value","onUpdate:modelValue"])]),e.createElementVNode("div",Ju," Page "+e.toDisplayString(o.table.getState().pagination.pageIndex+1)+" of "+e.toDisplayString(o.table.getPageCount()),1),e.createElementVNode("div",Qu,[e.createVNode(d,{variant:"outline",class:"hidden size-8 p-0 lg:flex",disabled:!o.table.getCanPreviousPage(),onClick:r[0]||(r[0]=c=>o.table.setPageIndex(0))},{default:e.withCtx(()=>[r[5]||(r[5]=e.createElementVNode("span",{class:"sr-only"},"Go to first page",-1)),e.createVNode(e.unref(z.ChevronsLeft),{class:"size-4"})]),_:1,__:[5]},8,["disabled"]),e.createVNode(d,{variant:"outline",class:"size-8 p-0",disabled:!o.table.getCanPreviousPage(),onClick:r[1]||(r[1]=c=>o.table.previousPage())},{default:e.withCtx(()=>[r[6]||(r[6]=e.createElementVNode("span",{class:"sr-only"},"Go to previous page",-1)),e.createVNode(e.unref(z.ChevronLeft),{class:"size-4"})]),_:1,__:[6]},8,["disabled"]),e.createVNode(d,{variant:"outline",class:"size-8 p-0",disabled:!o.table.getCanNextPage(),onClick:r[2]||(r[2]=c=>o.table.nextPage())},{default:e.withCtx(()=>[r[7]||(r[7]=e.createElementVNode("span",{class:"sr-only"},"Go to next page",-1)),e.createVNode(e.unref(z.ChevronRight),{class:"size-4"})]),_:1,__:[7]},8,["disabled"]),e.createVNode(d,{variant:"outline",class:"hidden size-8 p-0 lg:flex",disabled:!o.table.getCanNextPage(),onClick:r[3]||(r[3]=c=>o.table.setPageIndex(o.table.getPageCount()-1))},{default:e.withCtx(()=>[r[8]||(r[8]=e.createElementVNode("span",{class:"sr-only"},"Go to last page",-1)),e.createVNode(e.unref(z.ChevronsRight),{class:"size-4"})]),_:1,__:[8]},8,["disabled"])])])]))}}});function jo(t,n){if(!t)return"";const o=(n==null?void 0:n.reduce((r,l)=>(r[l.name]=l.value,r),{}))??{};return od(t,nd(o))}function td(t){return/^[$A-Z_][0-9A-Z_$]*$/i.test(t)}function nd(t){const n=["__proto__","constructor","prototype"],o=r=>{if(Array.isArray(r))return r.map(o);if(r&&typeof r=="object"){const l={};for(const a in r)!n.includes(a)&&td(a)&&(l[a]=o(r[a]));return l}return r};return o(t)}function od(t,n){return t.replace(/\{\{\s*(.+?)\s*\}\}/gs,(o,r)=>{const l=r.trim();if(!l)return"";const a=rd(l),i={...n};for(const d of a)d in i||(i[d]=void 0);const u=Object.keys(i),s=Object.values(i);try{const c=new Function(...u,`'use strict'; return (${l})`)(...s);return typeof c=="string"?c:JSON.stringify(c,null,2)}catch(d){return console.warn(`Interpolation failed for expression: "${r}"`,d),""}})}function rd(t){const n=t.match(/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g)||[],o=new Set(["true","false","null","undefined","return","if","else","try","catch","typeof"]);return[...new Set(n.filter(r=>!o.has(r)))]}const ld=e.defineComponent({__name:"DataTableAction",props:{action:{},row:{}},setup(t){const n=t,{runFlow:o}=Z.useFlowBuilder(),r=e.computed(()=>jo(n.action.visible,[{name:"item",value:{data:{...n.row.original}},type:"object"}])==="true"),l=()=>{o(n.action.flow,[{name:"item",value:{data:{...n.row.original}},type:"object"}])};return(a,i)=>{const u=e.resolveComponent("Button"),s=e.resolveComponent("TooltipTrigger"),d=e.resolveComponent("TooltipContent"),c=e.resolveComponent("Tooltip");return r.value?(e.openBlock(),e.createBlock(c,{key:0},{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(u,{variant:"ghost",size:"icon",onClick:i[0]||(i[0]=f=>l()),class:"size-5"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(z.icons)[a.action.icon])))]),_:1})]),_:1}),e.createVNode(d,null,{default:e.withCtx(()=>[e.createElementVNode("p",null,e.toDisplayString(a.action.label),1)]),_:1})]),_:1})):e.createCommentVNode("",!0)}}}),ad={class:"w-full rounded-md border bg-background dark:bg-input/30 shadow-xs shadow-xs"},id={key:0,class:"flex items-center justify-center font-medium border-x border-primary bg-primary/10 -my-[7px] h-[34px] cursor-grab"},sd=e.defineComponent({__name:"DataTable",setup(t,{expose:n}){const{Button:o,Checkbox:r}=Z.components,{$dragAndDrop:l}=useNuxtApp(),{formatCurrency:a}=Z.useProjectSettings(),i=e.inject("integrationId",e.ref("")),u=e.inject("resourcePath",e.ref("")),s=e.inject("table"),d=e.inject("data"),c=e.inject("columns"),f=e.inject("sortMode",e.ref(!1)),m=e.inject("sortModeProperty",e.ref("")),p=e.inject("filters",e.ref([])),g=e.inject("itemActions",e.ref([])),v=e.computed(()=>{var G;let P=[];return f.value?P.push({id:"drag-handle",enableSorting:!1,enableHiding:!1,header:"",cell:()=>e.h("div",{class:"row-drag-handle cursor-grab text-gray-400"},[e.h("svg",{xmlns:"http://www.w3.org/2000/svg",class:"size-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 10h16M4 14h16"})])])}):P.push({id:"select",header:({table:k})=>e.h(r,{modelValue:k.getIsAllPageRowsSelected()||k.getIsSomePageRowsSelected()&&"indeterminate","onUpdate:modelValue":B=>k.toggleAllPageRowsSelected(!!B),ariaLabel:"Select all",class:"border-ring"}),cell:({row:k})=>e.h(r,{class:"border-ring",modelValue:k.getIsSelected(),"onUpdate:modelValue":B=>k.toggleSelected(!!B),ariaLabel:"Select row"}),enableSorting:!1,enableHiding:!1}),(G=c.value)==null||G.forEach(k=>{let B=!!p.value.find(E=>E.property===k.property);k.visible&&(k.type==="text"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:({column:E})=>e.h(o,{variant:"ghost",disabled:f.value,onClick:()=>E.toggleSorting(E.getIsSorted()==="asc")},()=>[k.label,e.h(z.ArrowUpDown,{class:"ml-2 size-4"})]),cell:({row:E})=>e.h("div",{},E.getValue(k.property)),...B?{enableColumnFilter:!0,filterFn:(E,I,X)=>{if(!Array.isArray(X)||X.length===0)return!0;const le=E.getValue(I);return X.includes(le)}}:{}}):k.type==="number"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:({column:E})=>e.h(o,{variant:"ghost",disabled:f.value,onClick:()=>E.toggleSorting(E.getIsSorted()==="asc")},()=>[k.label,e.h(z.ArrowUpDown,{class:"ml-2 size-4"})]),cell:({row:E})=>{var I,X;return e.h("div",{class:""},isNaN(E.getValue(k.property))?E.getValue(k.property):(X=(I=parseFloat(E.getValue(k.property)))==null?void 0:I.toFixed(2))==null?void 0:X.replace(".00",""))}}):k.type==="date"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h("div",{class:""},E.getValue(k.property))}):k.type==="datetime"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>{var I;return e.h("div",{class:""},((I=new Date(E.getValue(k.property)))==null?void 0:I.toLocaleString())??"")}}):k.type==="boolean"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h(r,{defaultValue:E.getValue(k.property),disabled:!0,class:"border-ring disabled:cursor-default disabled:opacity-100"})}):k.type==="URL"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h("a",{href:E.getValue(k.property),target:"_blank",class:"text-primary"},E.getValue(k.property))}):k.type==="email"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h("a",{href:`mailto:${E.getValue(k.property)}`,class:"text-primary"},E.getValue(k.property))}):k.type==="phone"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h("a",{href:`tel:${E.getValue(k.property)}`,class:"text-primary"},E.getValue(k.property))}):k.type==="currency"?P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>e.h("div",{class:""},a(E.getValue(k.property)))}):k.type==="image"&&P.push({id:k.property,accessorFn:E=>k.property.includes(".")?k.property.split(".").reduce((I,X)=>I==null?void 0:I[X],E):E[k.property],header:k.label,cell:({row:E})=>E.getValue(k.property)?e.h("img",{src:E.getValue(k.property),alt:k.label,class:"size-16 object-cover"}):""}))}),g.value.length>0&&P.push({id:"actions",enableHiding:!1,cell:({row:k})=>e.h("div",{class:"flex items-center justify-center gap-2"},g.value.map(B=>e.h(ld,{action:B,row:k})))}),P}),h=e.ref(""),x=e.ref([]),b=e.ref([]),y=e.ref({}),N=e.ref({}),C=e.ref({}),V=e.reactive({get data(){return d.value},get columns(){return v.value},enableGlobalFilter:!0,getGlobalFilter(){return h.value},onGlobalFilterChange(P){vn(P,h)},globalFilterFn:(P,G,k)=>{const B=k.toLowerCase();return c.value.map(I=>I.property).some(I=>{var le;const X=(le=P.original)==null?void 0:le[I];return typeof X=="string"&&X.toLowerCase().includes(B)})},getCoreRowModel:Pu(),getPaginationRowModel:ju(),getSortedRowModel:$u(),getFilteredRowModel:Uu(),getExpandedRowModel:Fu(),onSortingChange:P=>vn(P,x),onColumnFiltersChange:P=>vn(P,b),onColumnVisibilityChange:P=>vn(P,y),onRowSelectionChange:P=>vn(P,N),onExpandedChange:P=>vn(P,C),state:{get sorting(){return x.value},get columnFilters(){return b.value},get columnVisibility(){return y.value},get rowSelection(){return N.value},get expanded(){return C.value}}});e.watchEffect(()=>{const P={...V,columns:v.value,state:{...V.state,globalFilter:h.value}};s.value=Gu(P)}),e.watch(f,P=>{var G;P?$():(G=s==null?void 0:s.value)==null||G.setPageSize(R.value)});const[_,S]=l([],{plugins:[Jr.animations()]}),R=e.ref(0),$=()=>{var P,G;R.value=(P=s==null?void 0:s.value)==null?void 0:P.getState().pagination.pageSize,(G=s==null?void 0:s.value)==null||G.setPageSize(1e4),S.value=((d==null?void 0:d.value)??[]).slice().sort((k,B)=>{const E=k[m.value]??0,I=B[m.value]??0;return E-I}).map((k,B)=>({id:k.id,index:B,original:{...k,[m.value]:B},getVisibleCells:()=>{var E,I,X;return(X=(I=(E=s==null?void 0:s.value)==null?void 0:E.getRowModel().rows)==null?void 0:I.find(le=>le.original.id===k.id))==null?void 0:X.getVisibleCells()}}))};return n({saveSortMode:async()=>{const{update:P}=Z.useFirebaseIntegration(i.value);d.value.forEach(G=>{G[m.value]!==S.value.findIndex(k=>k.id===G.id)&&(G[m.value]=S.value.findIndex(k=>k.id===G.id),P(u.value,G.id,{[m.value]:G[m.value]}))})}}),(P,G)=>{const k=e.resolveComponent("TooltipTrigger"),B=e.resolveComponent("TooltipContent"),E=e.resolveComponent("Tooltip"),I=e.resolveComponent("TableHead"),X=e.resolveComponent("TableRow"),le=e.resolveComponent("TableHeader"),F=e.resolveComponent("TableCell"),T=e.resolveComponent("TableBody"),w=e.resolveComponent("Table");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",ad,[e.createVNode(w,null,{default:e.withCtx(()=>[e.createVNode(le,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s).getHeaderGroups(),A=>(e.openBlock(),e.createBlock(X,{key:A.id},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.headers,L=>(e.openBlock(),e.createBlock(I,{key:L.id},{default:e.withCtx(()=>{var J;return[L.isPlaceholder?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(kl),{key:0,render:L.column.columnDef.header,props:L.getContext()},null,8,["render","props"])),(J=e.unref(c).find(O=>O.property===L.column.columnDef.id))!=null&&J.showInfoButton?(e.openBlock(),e.createBlock(E,{key:1},{default:e.withCtx(()=>[e.createVNode(k,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Info),{class:"size-4 inline mx-2 -mt-0.5"})]),_:1}),e.createVNode(B,null,{default:e.withCtx(()=>{var O;return[e.createTextVNode(e.toDisplayString((O=e.unref(c).find(j=>j.property===L.column.columnDef.id))==null?void 0:O.infoTooltipText),1)]}),_:2},1024)]),_:2},1024)):e.createCommentVNode("",!0)]}),_:2},1024))),128))]),_:2},1024))),128))]),_:1}),e.createVNode(T,{ref_key:"dragContainer",ref:_},{default:e.withCtx(()=>{var A;return[(A=e.unref(s).getRowModel().rows)!=null&&A.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(f)?e.unref(S):e.unref(s).getRowModel().rows,(L,J)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:L.id},[e.createVNode(X,{"data-state":!e.unref(f)&&L.getIsSelected()&&"selected",class:"group/row"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(L.getVisibleCells(),O=>(e.openBlock(),e.createBlock(F,{key:O.id},{default:e.withCtx(()=>[e.unref(f)&&O.column.id===e.unref(m)?(e.openBlock(),e.createElementBlock("span",id,e.toDisplayString(J),1)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(f)?"opacity-50 group-hover/row:opacity-100":"")},[e.createVNode(e.unref(kl),{render:O.column.columnDef.cell,props:O.getContext()},null,8,["render","props"])],2))]),_:2},1024))),128))]),_:2},1032,["data-state"]),!e.unref(f)&&L.getIsExpanded()?(e.openBlock(),e.createBlock(X,{key:0},{default:e.withCtx(()=>[e.createVNode(F,{colspan:L.getAllCells().length},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(JSON.stringify(L.original)),1)]),_:2},1032,["colspan"])]),_:2},1024)):e.createCommentVNode("",!0)],64))),128)):(e.openBlock(),e.createBlock(X,{key:1},{default:e.withCtx(()=>[e.createVNode(F,{colspan:999,class:"h-24 text-center"},{default:e.withCtx(()=>G[0]||(G[0]=[e.createTextVNode(" No results. ",-1)])),_:1,__:[0]})]),_:1}))]}),_:1},512)]),_:1})]),e.createVNode(ed,{table:e.unref(s)},null,8,["table"])],64)}}}),ud={class:"grid grid-cols-3 gap-2 mb-2 py-2"},dd={class:"flex flex-col items-start gap-1.5"},cd={class:"flex flex-col items-start gap-1.5"},fd={class:"flex flex-col gap-1.5"},pd={key:0,class:"flex flex-col gap-2 mb-4"},md={class:"flex flex-col gap-1.5"},gd={class:"flex flex-col items-start gap-1.5 col-span-4"},vd={class:"flex flex-col items-start gap-1.5 col-span-4"},hd=e.defineComponent({__name:"StatDialog",emits:["statAdded","statEdited","statRemoved"],setup(t,{expose:n,emit:o}){const r=o,l=e.inject("columns"),a=e.ref(!1),i=e.ref("add"),u=e.ref(null),s=e.reactive({label:"",method:"",field:"",conditions:[]}),d=g=>{i.value=g?"edit":"add",u.value=g??null,s.label=(g==null?void 0:g.label)??"",s.method=(g==null?void 0:g.method)??"",s.field=(g==null?void 0:g.field)??"",s.conditions=(g==null?void 0:g.conditions)??[],a.value=!0},c=()=>{let g=crypto.randomUUID();s.conditions.push({id:g,field:"",condition:"==",value:""})},f=g=>{s.conditions=s.conditions.filter(v=>v.id!==g)},m=()=>{console.log(s),i.value==="add"?r("statAdded",s):r("statEdited",{...s,id:u.value.id}),a.value=!1},p=()=>{r("statRemoved",u.value),a.value=!1};return n({openDialog:d}),(g,v)=>{const h=e.resolveComponent("DialogTitle"),x=e.resolveComponent("DialogDescription"),b=e.resolveComponent("DialogHeader"),y=e.resolveComponent("Label"),N=e.resolveComponent("Input"),C=e.resolveComponent("SelectValue"),V=e.resolveComponent("SelectTrigger"),_=e.resolveComponent("SelectItem"),S=e.resolveComponent("SelectContent"),R=e.resolveComponent("Select"),$=e.resolveComponent("ComboboxTrigger"),U=e.resolveComponent("ComboboxInput"),P=e.resolveComponent("ComboboxAnchor"),G=e.resolveComponent("ComboboxItem"),k=e.resolveComponent("ComboboxGroup"),B=e.resolveComponent("ComboboxList"),E=e.resolveComponent("Combobox"),I=e.resolveComponent("Button"),X=e.resolveComponent("DialogFooter"),le=e.resolveComponent("DialogScrollContent"),F=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(F,{open:a.value,"onUpdate:open":v[4]||(v[4]=T=>a.value=T)},{default:e.withCtx(()=>[e.createVNode(le,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>{var T;return[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add Stat":"Edit Stat"),1)]),_:1}),e.createVNode(x,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add a new stat for this table.":"Edit the selected stat."),1)]),_:1})]),_:1}),e.createElementVNode("div",ud,[e.createElementVNode("div",dd,[e.createVNode(y,{for:"stat_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[5]||(v[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(N,{id:"stat_dialog_label",modelValue:s.label,"onUpdate:modelValue":v[0]||(v[0]=w=>s.label=w)},null,8,["modelValue"])]),e.createElementVNode("div",cd,[e.createVNode(y,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[6]||(v[6]=[e.createTextVNode("Method",-1)])),_:1,__:[6]}),e.createVNode(R,{modelValue:s.method,"onUpdate:modelValue":v[1]||(v[1]=w=>s.method=w)},{default:e.withCtx(()=>[e.createVNode(V,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(C,{placeholder:"Select a method"})]),_:1}),e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(_,{value:"count"},{default:e.withCtx(()=>v[7]||(v[7]=[e.createTextVNode("Row count",-1)])),_:1,__:[7]}),e.createVNode(_,{value:"sum"},{default:e.withCtx(()=>v[8]||(v[8]=[e.createTextVNode("Sum",-1)])),_:1,__:[8]}),e.createVNode(_,{value:"average"},{default:e.withCtx(()=>v[9]||(v[9]=[e.createTextVNode("Average",-1)])),_:1,__:[9]}),e.createVNode(_,{value:"min"},{default:e.withCtx(()=>v[10]||(v[10]=[e.createTextVNode("Min (lowest value)",-1)])),_:1,__:[10]}),e.createVNode(_,{value:"max"},{default:e.withCtx(()=>v[11]||(v[11]=[e.createTextVNode("Max (highest value)",-1)])),_:1,__:[11]})]),_:1})]),_:1},8,["modelValue"])]),s.method!=="count"?(e.openBlock(),e.createBlock(E,{key:0,by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:s.field,"onUpdate:modelValue":v[3]||(v[3]=w=>s.field=w)},{default:e.withCtx(()=>[e.createVNode(P,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",fd,[e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(y,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[12]||(v[12]=[e.createTextVNode("Field",-1)])),_:1,__:[12]})]),_:1}),e.createVNode(U,{modelValue:s.field,"onUpdate:modelValue":v[2]||(v[2]=w=>s.field=w),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode(B,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),w=>(e.openBlock(),e.createBlock(G,{key:w.property,value:w.property,onSelect:()=>{s.field=w.property}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w.property)+" ",1),s.field===w.property?(e.openBlock(),e.createBlock(e.unref(z.Check),{key:0,class:e.normalizeClass(e.unref(xt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(y,{class:"mb-1"},{default:e.withCtx(()=>v[13]||(v[13]=[e.createTextVNode("Conditions",-1)])),_:1,__:[13]}),v[25]||(v[25]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mb-2"}," Only rows that match the conditions will be included in the calculation of the stat. ",-1)),((T=s.conditions)==null?void 0:T.length)>0?(e.openBlock(),e.createElementBlock("div",pd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.conditions,w=>(e.openBlock(),e.createElementBlock("div",{key:w.id,class:"grid grid-cols-13 gap-2"},[e.createVNode(E,{by:"label",class:"col-span-4",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:w.field,"onUpdate:modelValue":A=>w.field=A},{default:e.withCtx(()=>[e.createVNode(P,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",md,[e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(y,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[14]||(v[14]=[e.createTextVNode("Field",-1)])),_:1,__:[14]})]),_:1}),e.createVNode(U,{modelValue:w.field,"onUpdate:modelValue":A=>w.field=A,hideIcon:"",class:"w-full"},null,8,["modelValue","onUpdate:modelValue"])])]),_:2},1024),e.createVNode(B,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),A=>(e.openBlock(),e.createBlock(G,{key:A.property,value:A.property,onSelect:()=>{w.field=A.property}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(A.property)+" ",1),w.field===A.property?(e.openBlock(),e.createBlock(e.unref(z.Check),{key:0,class:e.normalizeClass(e.unref(xt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue"]),e.createElementVNode("div",gd,[e.createVNode(y,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[15]||(v[15]=[e.createTextVNode("Condition",-1)])),_:1,__:[15]}),e.createVNode(R,{modelValue:w.condition,"onUpdate:modelValue":A=>w.condition=A},{default:e.withCtx(()=>[e.createVNode(V,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(C,{placeholder:"Select a condition"})]),_:1}),e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(_,{value:"=="},{default:e.withCtx(()=>v[16]||(v[16]=[e.createTextVNode("(==) Is equal to",-1)])),_:1,__:[16]}),e.createVNode(_,{value:"!="},{default:e.withCtx(()=>v[17]||(v[17]=[e.createTextVNode("(!=) Is not equal to",-1)])),_:1,__:[17]}),e.createVNode(_,{value:">"},{default:e.withCtx(()=>v[18]||(v[18]=[e.createTextVNode("(>) Is greater than",-1)])),_:1,__:[18]}),e.createVNode(_,{value:"<"},{default:e.withCtx(()=>v[19]||(v[19]=[e.createTextVNode("(<) Is less than",-1)])),_:1,__:[19]}),e.createVNode(_,{value:">="},{default:e.withCtx(()=>v[20]||(v[20]=[e.createTextVNode("(>=) Is greater than or equal to",-1)])),_:1,__:[20]}),e.createVNode(_,{value:"<="},{default:e.withCtx(()=>v[21]||(v[21]=[e.createTextVNode("(<=) Is less than or equal to",-1)])),_:1,__:[21]}),e.createVNode(_,{value:"in"},{default:e.withCtx(()=>v[22]||(v[22]=[e.createTextVNode("(in) Equal to any of the following",-1)])),_:1,__:[22]})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("div",vd,[e.createVNode(y,{class:"text-xs text-muted-foreground",for:w.id+"_value"},{default:e.withCtx(()=>v[23]||(v[23]=[e.createTextVNode("Value",-1)])),_:2,__:[23]},1032,["for"]),e.createVNode(N,{modelValue:w.value,"onUpdate:modelValue":A=>w.value=A,class:"w-full",id:w.id+"_value"},null,8,["modelValue","onUpdate:modelValue","id"])]),e.createVNode(I,{variant:"ghost",size:"icon",class:"rounded-xl self-end col-span-1",onClick:A=>f(w.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Trash2),{class:"size-4"})]),_:2},1032,["onClick"])]))),128))])):e.createCommentVNode("",!0),e.createVNode(I,{variant:"outline",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),v[24]||(v[24]=e.createTextVNode(" Add Condition ",-1))]),_:1,__:[24]})]),e.createVNode(X,null,{default:e.withCtx(()=>[i.value==="edit"?(e.openBlock(),e.createBlock(I,{key:0,variant:"destructive",onClick:p},{default:e.withCtx(()=>v[26]||(v[26]=[e.createTextVNode(" Remove Stat ",-1)])),_:1,__:[26]})):e.createCommentVNode("",!0),e.createVNode(I,{onClick:m},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value==="add"?"Add Stat":"Save changes"),1)]),_:1})]),_:1})]}),_:1})]),_:1},8,["open"])}}}),xd={class:"flex flex-wrap gap-2 mb-4"},yd=["onClick"],Cd={class:"text-2xl font-bold"},Vd={class:"text-xs text-muted-foreground truncate w-full text-center"},wd=e.defineComponent({__name:"Stats",setup(t){const n=e.inject("data"),{isAdmin:o}=Z.useModulePermissions(),{getModuleData:r,setModuleData:l}=Z.useModuleStorage(),a=e.ref(),i=e.ref([]),u=y=>{var C;let N=crypto.randomUUID();console.log(i,i.value,N),(!i.value||((C=i==null?void 0:i.value)==null?void 0:C.length)===0)&&(i.value=[]),i.value.push({...y,id:N}),l("stats",i.value)},s=y=>{console.log(y,i.value),i.value=i.value.map(N=>N.id===y.id?y:N),l("stats",i.value)},d=y=>{i.value=i.value.filter(N=>N.id!==y),l("stats",i.value)},c=y=>{switch(y.method){case"count":return m(y.conditions);case"sum":return p(y.field,y.conditions);case"average":return g(y.field,y.conditions);case"min":return v(y.field,y.conditions);case"max":return h(y.field,y.conditions);default:return""}},f=y=>{if(y){let N=parseFloat(y).toFixed(2).split(".");return N[0]=N[0].replace(/\B(?=(\d{3})+(?!\d))/g," "),!N[1]||N[1]=="00"?N[0]:N.join(".")}return"..."},m=y=>{var N;return console.log(b(y)),(N=b(y))==null?void 0:N.length},p=(y,N)=>{let C=0;return b(N).forEach(V=>{C+=parseFloat(x(V,y))?parseFloat(String(x(V,y)).replace(",",".")):x(V,y)===!0?1:0}),C.toFixed(2).slice(-2)=="00"?C.toFixed(0):C.toFixed(2)},g=(y,N)=>{let C=0,V=0;if(b(N).forEach(_=>{parseFloat(x(_,y))&&(C+=parseFloat(String(x(_,y)).replace(",",".")),V+=1)}),V>0){const _=C/V;return _.toFixed(2).slice(-2)=="00"?_.toFixed(0):_.toFixed(2)}return"..."},v=(y,N)=>{let C=b(N)[0][y];return b(N).forEach(V=>{x(V,y)<C&&(C=x(V,y))}),C},h=(y,N)=>{let C=b(N)[0][y];return b(N).forEach(V=>{parseFloat(x(V,y))&&x(V,y)>C&&(C=x(V,y))}),parseFloat(String(C).replace(",",".")).toFixed(2)},x=(y,N)=>{if(!y||!N)return;const[C,...V]=N.split(".");return V!=null&&V.length?x(y[C],V.join(".")):y[N]??""},b=y=>{var C;let N=[...n.value];if(console.log("1é",N),Array.isArray(y))for(let V=0;V<(y==null?void 0:y.length);V++)y[V].condition=="=="?(console.log("2é",(C=y[V].value)==null?void 0:C.split(",").indexOf(N[y[V].field])),N=N.filter(_=>{var S;return((S=y[V].value)==null?void 0:S.split(",").indexOf(_[y[V].field]))!=-1})):y[V].condition=="!="?N=N.filter(_=>{var S;return((S=y[V].value)==null?void 0:S.split(",").indexOf(_[y[V].field]))==-1}):y[V].condition==">"?N=N.filter(_=>_[y[V].field]>y[V].value):y[V].condition==">="?N=N.filter(_=>_[y[V].field]>=y[V].value):y[V].condition=="<"?N=N.filter(_=>_[y[V].field]<y[V].value):y[V].condition=="<="?N=N.filter(_=>_[y[V].field]<=y[V].value):y[V].condition=="in"&&(N=N.filter(_=>{var S;return((S=y[V].value)==null?void 0:S.indexOf(String(_[y[V].field])))!=-1}));return N};return e.onMounted(async()=>{i.value=await r("stats")||[]}),(y,N)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",xd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,C=>{var V;return e.openBlock(),e.createElementBlock("div",{key:C.label,class:e.normalizeClass(["flex flex-col items-center justify-center size-24 p-4 border rounded-md",e.unref(o)()?"hover:bg-muted cursor-pointer":""]),onClick:_=>e.unref(o)()?a.value.openDialog(C):null},[e.createElementVNode("span",Cd,e.toDisplayString(((V=e.unref(n))==null?void 0:V.length)>0?f(c(C)):"..."),1),e.createElementVNode("span",Vd,e.toDisplayString(C.label),1)],10,yd)}),128)),e.unref(o)()?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex flex-col items-center justify-center size-24 p-4 border rounded-md hover:bg-muted cursor-pointer",onClick:N[0]||(N[0]=C=>a.value.openDialog())},[e.createVNode(e.unref(z.Plus),{class:"size-8 text-primary"})])):e.createCommentVNode("",!0)]),e.createVNode(hd,{ref_key:"statDialog",ref:a,onStatAdded:N[1]||(N[1]=C=>u(C)),onStatEdited:N[2]||(N[2]=C=>s(C)),onStatRemoved:N[3]||(N[3]=C=>d(C))},null,512)],64))}}),bd={class:"overflow-hidden"},_d={class:"flex flex-col gap-1"},Nd={class:"flex flex-col gap-1"},kd={class:"flex items-end gap-2 pb-2"},Sd={class:"flex flex-col gap-1"},Ed={class:"flex items-end"},Ad=e.defineComponent({__name:"DialogTableColumnItem",props:{column:{type:Object,required:!0}},setup(t){const n=e.ref(!1);return(o,r)=>{const l=e.resolveComponent("Button"),a=e.resolveComponent("Label"),i=e.resolveComponent("Input"),u=e.resolveComponent("Checkbox"),s=e.resolveComponent("SelectValue"),d=e.resolveComponent("SelectTrigger"),c=e.resolveComponent("SelectLabel"),f=e.resolveComponent("SelectItem"),m=e.resolveComponent("SelectGroup"),p=e.resolveComponent("SelectContent"),g=e.resolveComponent("Select"),v=e.resolveComponent("Trash2");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(l,{onClick:r[0]||(r[0]=h=>n.value=!n.value),class:e.normalizeClass(["w-full flex items-center justify-start gap-2",n.value?"ring ring-border":""]),variant:"ghost"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.column.label)+" ",1),e.createVNode(e.unref(z.ChevronDown),{class:e.normalizeClass(["size-4 transition-all duration-300",n.value?"rotate-180":""])},null,8,["class"])]),_:1},8,["class"]),e.createElementVNode("div",{class:e.normalizeClass(["grid transition-all duration-300 -translate-y-0.5",`${n.value?"grid-rows-[1fr]":"grid-rows-[0fr]"}`])},[e.createElementVNode("div",bd,[e.createElementVNode("div",{class:e.normalizeClass(["flex gap-4 mb-4 px-3 bg-muted/20 border border-t-0 rounded-b-lg transition-all duration-300",n.value?"py-4":""])},[e.createElementVNode("div",_d,[e.createVNode(a,{for:"property",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[6]||(r[6]=[e.createTextVNode(" Property ",-1)])),_:1,__:[6]}),e.createVNode(i,{id:"property",class:"w-full",modelValue:t.column.property,"onUpdate:modelValue":r[1]||(r[1]=h=>t.column.property=h)},null,8,["modelValue"])]),e.createElementVNode("div",Nd,[e.createVNode(a,{for:"label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[7]||(r[7]=[e.createTextVNode(" Label ",-1)])),_:1,__:[7]}),e.createVNode(i,{id:"label",class:"w-full",modelValue:t.column.label,"onUpdate:modelValue":r[2]||(r[2]=h=>t.column.label=h)},null,8,["modelValue"])]),e.createElementVNode("div",kd,[e.createVNode(u,{id:"visible",class:"border-ring",modelValue:t.column.visible,"onUpdate:modelValue":r[3]||(r[3]=h=>t.column.visible=h)},null,8,["modelValue"]),e.createVNode(a,{for:"visible"},{default:e.withCtx(()=>r[8]||(r[8]=[e.createTextVNode(" Visible ",-1)])),_:1,__:[8]})]),e.createElementVNode("div",Sd,[e.createVNode(a,{for:"type",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>r[9]||(r[9]=[e.createTextVNode(" Type ",-1)])),_:1,__:[9]}),e.createVNode(g,{modelValue:t.column.type,"onUpdate:modelValue":r[4]||(r[4]=h=>t.column.type=h)},{default:e.withCtx(()=>[e.createVNode(d,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(s,{placeholder:"Select a type"})]),_:1}),e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>r[10]||(r[10]=[e.createTextVNode("Types",-1)])),_:1,__:[10]}),e.createVNode(f,{value:"text"},{default:e.withCtx(()=>r[11]||(r[11]=[e.createTextVNode(" Text ",-1)])),_:1,__:[11]}),e.createVNode(f,{value:"number"},{default:e.withCtx(()=>r[12]||(r[12]=[e.createTextVNode(" Number ",-1)])),_:1,__:[12]}),e.createVNode(f,{value:"date"},{default:e.withCtx(()=>r[13]||(r[13]=[e.createTextVNode(" Date ",-1)])),_:1,__:[13]}),e.createVNode(f,{value:"datetime"},{default:e.withCtx(()=>r[14]||(r[14]=[e.createTextVNode(" Datetime ",-1)])),_:1,__:[14]}),e.createVNode(f,{value:"boolean"},{default:e.withCtx(()=>r[15]||(r[15]=[e.createTextVNode(" Boolean ",-1)])),_:1,__:[15]}),e.createVNode(f,{value:"URL"},{default:e.withCtx(()=>r[16]||(r[16]=[e.createTextVNode(" URL ",-1)])),_:1,__:[16]}),e.createVNode(f,{value:"email"},{default:e.withCtx(()=>r[17]||(r[17]=[e.createTextVNode(" Email ",-1)])),_:1,__:[17]}),e.createVNode(f,{value:"phone"},{default:e.withCtx(()=>r[18]||(r[18]=[e.createTextVNode(" Phone ",-1)])),_:1,__:[18]}),e.createVNode(f,{value:"currency"},{default:e.withCtx(()=>r[19]||(r[19]=[e.createTextVNode(" Currency ",-1)])),_:1,__:[19]}),e.createVNode(f,{value:"image"},{default:e.withCtx(()=>r[20]||(r[20]=[e.createTextVNode(" Image ",-1)])),_:1,__:[20]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",Ed,[e.createVNode(l,{variant:"ghost",size:"icon",onClick:r[5]||(r[5]=h=>o.mutableColumns.splice(o.mutableColumns.indexOf(t.column),1)),class:"rounded-xl"},{default:e.withCtx(()=>[e.createVNode(v)]),_:1})])],2)])],2)],64)}}}),Td={class:"flex flex-col items-start gap-4 py-4"},Bd={class:"grid gap-4"},Dd={class:"grid grid-cols-5 items-center gap-4"},Rd={class:"grid grid-cols-5 items-center gap-4"},Id={class:"grid grid-cols-5 items-center gap-4"},Md={class:"grid grid-cols-5 items-center gap-4"},Pd={class:"grid grid-cols-5 items-center gap-4"},Fd={key:0,class:"grid grid-cols-5 items-center gap-4"},Od={class:"flex justify-end gap-2"},zd=e.defineComponent({__name:"ColumnEditorDialog",props:{open:{type:Boolean,default:null},onSelect:{type:Function,required:!0},onOpenChange:{type:Function,required:!0}},emits:["update:open"],setup(t,{emit:n}){const{setModuleData:o}=Z.useModuleStorage(),r=t,l=n,a=e.inject("columns"),i=e.ref([]),u=e.computed({get(){return r.open},set(p){l("update:open",p)}});e.watch(u,async(p,g)=>{p&&!g&&(i.value=a.value?JSON.parse(JSON.stringify(a.value)):[])});const s=e.reactive({property:"",label:"",visible:!0,type:"text",showInfoButton:!1,infoTooltipText:""}),d=e.ref(!1),c=()=>{d.value=!1,s.property="",s.label="",s.visible=!0,s.type="text",s.showInfoButton=!1,s.infoTooltipText=""},f=()=>{i.value||(i.value=[]);let p=crypto.randomUUID();i.value.push({...s,id:p}),c()},m=()=>{o("columns",i.value),a.value=i.value,c(),u.value=!1};return(p,g)=>{const v=e.resolveComponent("DropdownMenuItem"),h=e.resolveComponent("DialogTrigger"),x=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogDescription"),y=e.resolveComponent("DialogHeader"),N=e.resolveComponent("Button"),C=e.resolveComponent("PopoverTrigger"),V=e.resolveComponent("Label"),_=e.resolveComponent("Input"),S=e.resolveComponent("Checkbox"),R=e.resolveComponent("SelectValue"),$=e.resolveComponent("SelectTrigger"),U=e.resolveComponent("SelectLabel"),P=e.resolveComponent("SelectItem"),G=e.resolveComponent("SelectGroup"),k=e.resolveComponent("SelectContent"),B=e.resolveComponent("Select"),E=e.resolveComponent("PopoverContent"),I=e.resolveComponent("Popover"),X=e.resolveComponent("DialogFooter"),le=e.resolveComponent("DialogScrollContent"),F=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(F,{open:u.value,"onUpdate:open":[g[8]||(g[8]=T=>u.value=T),t.onOpenChange]},{default:e.withCtx(()=>[e.createVNode(h,{asChild:""},{default:e.withCtx(()=>[e.createVNode(v,{onSelect:g[0]||(g[0]=T=>{T.preventDefault(),t.onSelect&&t.onSelect(),u.value=!0})},{default:e.withCtx(()=>g[9]||(g[9]=[e.createElementVNode("span",{class:"text-primary"},"Edit columns",-1)])),_:1,__:[9]})]),_:1}),e.createVNode(le,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>g[10]||(g[10]=[e.createTextVNode("Edit columns",-1)])),_:1,__:[10]}),e.createVNode(b,null,{default:e.withCtx(()=>g[11]||(g[11]=[e.createTextVNode(" Define all columns for this table. ",-1)])),_:1,__:[11]})]),_:1}),e.createElementVNode("div",Td,[e.createVNode(I,{open:d.value,"onUpdate:open":g[7]||(g[7]=T=>d.value=T)},{default:e.withCtx(()=>[e.createVNode(C,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"mr-2 size-4"}),g[12]||(g[12]=e.createTextVNode(" Add column ",-1))]),_:1,__:[12]})]),_:1}),e.createVNode(E,{class:"w-96"},{default:e.withCtx(()=>[e.createElementVNode("div",Bd,[e.createElementVNode("div",Dd,[e.createVNode(V,{for:"property",class:"text-right col-span-2"},{default:e.withCtx(()=>g[13]||(g[13]=[e.createTextVNode(" Property ",-1)])),_:1,__:[13]}),e.createVNode(_,{id:"property",class:"col-span-3",modelValue:s.property,"onUpdate:modelValue":g[1]||(g[1]=T=>s.property=T)},null,8,["modelValue"])]),e.createElementVNode("div",Rd,[e.createVNode(V,{for:"label",class:"text-right col-span-2"},{default:e.withCtx(()=>g[14]||(g[14]=[e.createTextVNode(" Label ",-1)])),_:1,__:[14]}),e.createVNode(_,{id:"label",class:"col-span-3",modelValue:s.label,"onUpdate:modelValue":g[2]||(g[2]=T=>s.label=T)},null,8,["modelValue"])]),e.createElementVNode("div",Id,[e.createVNode(V,{for:"visible",class:"text-right col-span-2"},{default:e.withCtx(()=>g[15]||(g[15]=[e.createTextVNode(" Visible ",-1)])),_:1,__:[15]}),e.createVNode(S,{id:"visible",class:"col-span-3 border-ring",modelValue:s.visible,"onUpdate:modelValue":g[3]||(g[3]=T=>s.visible=T)},null,8,["modelValue"])]),e.createElementVNode("div",Md,[e.createVNode(V,{for:"type",class:"text-right col-span-2"},{default:e.withCtx(()=>g[16]||(g[16]=[e.createTextVNode(" Type ",-1)])),_:1,__:[16]}),e.createVNode(B,{modelValue:s.type,"onUpdate:modelValue":g[4]||(g[4]=T=>s.type=T)},{default:e.withCtx(()=>[e.createVNode($,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(R,{placeholder:"Select a type"})]),_:1}),e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(G,null,{default:e.withCtx(()=>[e.createVNode(U,null,{default:e.withCtx(()=>g[17]||(g[17]=[e.createTextVNode("Types",-1)])),_:1,__:[17]}),e.createVNode(P,{value:"text"},{default:e.withCtx(()=>g[18]||(g[18]=[e.createTextVNode(" Text ",-1)])),_:1,__:[18]}),e.createVNode(P,{value:"number"},{default:e.withCtx(()=>g[19]||(g[19]=[e.createTextVNode(" Number ",-1)])),_:1,__:[19]}),e.createVNode(P,{value:"date"},{default:e.withCtx(()=>g[20]||(g[20]=[e.createTextVNode(" Date ",-1)])),_:1,__:[20]}),e.createVNode(P,{value:"datetime"},{default:e.withCtx(()=>g[21]||(g[21]=[e.createTextVNode(" Datetime ",-1)])),_:1,__:[21]}),e.createVNode(P,{value:"boolean"},{default:e.withCtx(()=>g[22]||(g[22]=[e.createTextVNode(" Boolean ",-1)])),_:1,__:[22]}),e.createVNode(P,{value:"URL"},{default:e.withCtx(()=>g[23]||(g[23]=[e.createTextVNode(" URL ",-1)])),_:1,__:[23]}),e.createVNode(P,{value:"email"},{default:e.withCtx(()=>g[24]||(g[24]=[e.createTextVNode(" Email ",-1)])),_:1,__:[24]}),e.createVNode(P,{value:"phone"},{default:e.withCtx(()=>g[25]||(g[25]=[e.createTextVNode(" Phone ",-1)])),_:1,__:[25]}),e.createVNode(P,{value:"currency"},{default:e.withCtx(()=>g[26]||(g[26]=[e.createTextVNode(" Currency ",-1)])),_:1,__:[26]}),e.createVNode(P,{value:"image"},{default:e.withCtx(()=>g[27]||(g[27]=[e.createTextVNode(" Image ",-1)])),_:1,__:[27]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",Pd,[e.createVNode(V,{for:"showInfoButton",class:"text-right col-span-2"},{default:e.withCtx(()=>g[28]||(g[28]=[e.createTextVNode(" Show info button ",-1)])),_:1,__:[28]}),e.createVNode(S,{id:"showInfoButton",class:"col-span-3 border-ring",modelValue:s.showInfoButton,"onUpdate:modelValue":g[5]||(g[5]=T=>s.showInfoButton=T)},null,8,["modelValue"])]),s.showInfoButton?(e.openBlock(),e.createElementBlock("div",Fd,[e.createVNode(V,{for:"infoTooltipText",class:"text-right col-span-2"},{default:e.withCtx(()=>g[29]||(g[29]=[e.createTextVNode(" Info tooltip text ",-1)])),_:1,__:[29]}),e.createVNode(_,{id:"infoTooltipText",class:"col-span-3",modelValue:s.infoTooltipText,"onUpdate:modelValue":g[6]||(g[6]=T=>s.infoTooltipText=T)},null,8,["modelValue"])])):e.createCommentVNode("",!0),e.createElementVNode("div",Od,[e.createVNode(N,{variant:"outline",onClick:c},{default:e.withCtx(()=>g[30]||(g[30]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[30]}),e.createVNode(N,{onClick:f},{default:e.withCtx(()=>g[31]||(g[31]=[e.createTextVNode(" Add column ",-1)])),_:1,__:[31]})])])]),_:1})]),_:1},8,["open"])]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,T=>(e.openBlock(),e.createBlock(Ad,{key:T.id,column:T},null,8,["column"]))),128))]),e.createVNode(X,null,{default:e.withCtx(()=>[e.createVNode(N,{onClick:m},{default:e.withCtx(()=>g[32]||(g[32]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[32]})]),_:1})]),_:1})]),_:1},8,["open","onUpdate:open"])}}}),Ld=e.defineComponent({__name:"ColumnDropdown",setup(t){const{isAdmin:n}=Z.useModulePermissions(),o=e.inject("columns"),r=e.ref(null),l=e.ref(null),a=e.ref(!1),i=e.ref(!1),u=()=>{l.value=r.value},s=c=>{i.value=c,c||(a.value=!1)},d=c=>{a.value=c};return(c,f)=>{const m=e.resolveComponent("Button"),p=e.resolveComponent("DropdownMenuTrigger"),g=e.resolveComponent("DropdownMenuSeparator"),v=e.resolveComponent("DropdownMenuCheckboxItem"),h=e.resolveComponent("DropdownMenuContent"),x=e.resolveComponent("DropdownMenu");return!e.unref(o)||e.unref(o).length===0?(e.openBlock(),e.createBlock(m,{key:0,variant:"outline",class:"ml-auto"},{default:e.withCtx(()=>[f[3]||(f[3]=e.createTextVNode(" Columns ",-1)),e.createVNode(e.unref(z.ChevronDown),{class:"ml-2 size-4"})]),_:1,__:[3]})):(e.openBlock(),e.createBlock(x,{key:1,open:a.value,"onUpdate:open":d},{default:e.withCtx(()=>[e.createVNode(p,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(m,{variant:"outline",class:"ml-auto"},{default:e.withCtx(()=>[f[4]||(f[4]=e.createTextVNode(" Columns ",-1)),e.createVNode(e.unref(z.ChevronDown),{class:"ml-2 size-4"})]),_:1,__:[4]})]),_:1}),e.createVNode(h,{align:"end",onCloseAutoFocus:f[2]||(f[2]=b=>{console.log(b,"closeAutoFocus"),b.preventDefault()})},{default:e.withCtx(()=>[e.unref(n)()?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(zd,{open:i.value,"onUpdate:open":f[0]||(f[0]=b=>i.value=b),onSelect:u,onOpenChange:s},null,8,["open"]),e.unref(o).length>0?(e.openBlock(),e.createBlock(g,{key:0})):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),b=>(e.openBlock(),e.createBlock(v,{key:b.id,class:"capitalize","model-value":b.visible,"onUpdate:modelValue":y=>{b.visible=y},onSelect:f[1]||(f[1]=y=>{y.preventDefault()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.label),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))]),_:1})]),_:1},8,["open"]))}}}),Ud=e.defineComponent({__name:"Search",setup(t){const n=e.inject("table"),o=e.inject("sortMode");return(r,l)=>{var i;const a=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex flex-col items-start gap-1",e.unref(o)?"opacity-50 pointer-events-none":""])},[e.createVNode(a,{class:"max-w-52",placeholder:"Search...","model-value":(i=e.unref(n))==null?void 0:i.getState().globalFilter,"onUpdate:modelValue":l[0]||(l[0]=u=>{var s;return(s=e.unref(n))==null?void 0:s.setGlobalFilter(u)}),disabled:e.unref(o)},null,8,["model-value","disabled"])],2)}}}),jd={class:"flex flex-col items-start gap-4 py-4"},$d={class:"flex flex-col gap-1.5"},Hd={class:"flex items-center gap-2 w-full justify-between"},qd={class:"flex items-center gap-2 ml-auto"},Gd=e.defineComponent({__name:"SortModeSettingsDialog",props:{savedField:{type:String,default:""}},emits:["saved"],setup(t,{emit:n}){const{isAdmin:o}=Z.useModulePermissions(),r=n,l=t,a=m=>{u.value=m},i=e.inject("columns"),u=e.ref(!1),s=e.ref("");e.watch(u,m=>{m&&(s.value=l.savedField??"")});const d=()=>{r("saved",{field:""}),c()},c=()=>{u.value=!1},f=()=>{r("saved",{field:s.value}),c()};return(m,p)=>{const g=e.resolveComponent("DialogTrigger"),v=e.resolveComponent("DialogTitle"),h=e.resolveComponent("DialogDescription"),x=e.resolveComponent("DialogHeader"),b=e.resolveComponent("Label"),y=e.resolveComponent("ComboboxTrigger"),N=e.resolveComponent("ComboboxInput"),C=e.resolveComponent("ComboboxAnchor"),V=e.resolveComponent("ComboboxItem"),_=e.resolveComponent("ComboboxGroup"),S=e.resolveComponent("ComboboxList"),R=e.resolveComponent("Combobox"),$=e.resolveComponent("Button"),U=e.resolveComponent("DialogFooter"),P=e.resolveComponent("DialogScrollContent"),G=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(G,{open:u.value,"onUpdate:open":[p[3]||(p[3]=k=>u.value=k),a]},{default:e.withCtx(()=>[e.createVNode(g,{asChild:""},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:p[0]||(p[0]=k=>u.value=!0)},"Settings")):e.createCommentVNode("",!0)]),_:1}),e.createVNode(P,{class:"sm:max-w-lg"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>p[4]||(p[4]=[e.createTextVNode("Sort mode settings",-1)])),_:1,__:[4]}),e.createVNode(h,null,{default:e.withCtx(()=>p[5]||(p[5]=[e.createTextVNode(" Select the property (of type number) to sort by. ",-1)])),_:1,__:[5]})]),_:1}),e.createElementVNode("div",jd,[e.createVNode(R,{by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:s.value,"onUpdate:modelValue":p[2]||(p[2]=k=>s.value=k)},{default:e.withCtx(()=>[e.createVNode(C,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",$d,[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(b,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>p[6]||(p[6]=[e.createTextVNode("Field",-1)])),_:1,__:[6]})]),_:1}),e.createVNode(N,{modelValue:s.value,"onUpdate:modelValue":p[1]||(p[1]=k=>s.value=k),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode(S,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),k=>(e.openBlock(),e.createBlock(V,{key:k.property,value:k.property,onSelect:B=>s.value=k.property},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.property)+" ",1),s.value===k.property?(e.openBlock(),e.createBlock(e.unref(z.Check),{key:0,class:e.normalizeClass(e.unref(xt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createVNode(U,null,{default:e.withCtx(()=>[e.createElementVNode("div",Hd,[l.savedField?(e.openBlock(),e.createBlock($,{key:0,variant:"outline",onClick:d},{default:e.withCtx(()=>p[7]||(p[7]=[e.createTextVNode(" Disable sort-mode ",-1)])),_:1,__:[7]})):e.createCommentVNode("",!0),e.createElementVNode("div",qd,[e.createVNode($,{variant:"outline",onClick:c},{default:e.withCtx(()=>p[8]||(p[8]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[8]}),e.createVNode($,{onClick:f},{default:e.withCtx(()=>p[9]||(p[9]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[9]})])])]),_:1})]),_:1})]),_:1},8,["open"])}}}),Wd={class:"flex flex-col items-start gap-1"},Xd={key:1,class:"flex items-center gap-2"},Yd=e.defineComponent({__name:"SortMode",setup(t){const{getModuleData:n,setModuleData:o}=Z.useModuleStorage(),{isAdmin:r}=Z.useModulePermissions(),l=e.inject("table"),a=e.inject("data"),i=e.inject("sortMode",e.ref(!1)),u=e.inject("sortModeProperty",e.ref("")),s=e.inject("saveSortMode",()=>{}),d=g=>{u.value=g.field,o("sortMode",g)};e.onMounted(async()=>{let g=await n("sortMode");u.value=(g==null?void 0:g.field)??""});const c=e.ref(0),f=()=>{var g,v;i.value=!0,c.value=(g=l==null?void 0:l.value)==null?void 0:g.getState().pagination.pageSize,(v=l==null?void 0:l.value)==null||v.setPageSize(a.value.length)},m=()=>{var g;i.value=!1,(g=l==null?void 0:l.value)==null||g.setPageSize(c.value)},p=()=>{s()};return(g,v)=>{const h=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",Wd,[(e.unref(u)||e.unref(r)())&&!e.unref(i)?(e.openBlock(),e.createBlock(h,{key:0,variant:"outline",disabled:!e.unref(u),onClick:f},{default:e.withCtx(()=>[e.createVNode(e.unref(z.ArrowUpDown),{class:"size-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(i)?"Save order":"Reorder rows"),1)]),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.unref(i)?(e.openBlock(),e.createElementBlock("div",Xd,[e.createVNode(h,{variant:"outline",size:"icon",onClick:m},{default:e.withCtx(()=>[e.createVNode(e.unref(z.X),{class:"size-4"})]),_:1}),e.createVNode(h,{onClick:p},{default:e.withCtx(()=>v[0]||(v[0]=[e.createTextVNode(" Save order ",-1)])),_:1,__:[0]})])):e.createCommentVNode("",!0),e.createVNode(Gd,{onSaved:d,"saved-field":e.unref(u)},null,8,["saved-field"])])}}});function pr(t,n){return t-n*Math.floor(t/n)}const Ka=1721426;function vo(t,n,o,r){n=ol(t,n);let l=n-1,a=-2;return o<=2?a=0:_o(n)&&(a=-1),Ka-1+365*l+Math.floor(l/4)-Math.floor(l/100)+Math.floor(l/400)+Math.floor((367*o-362)/12+a+r)}function _o(t){return t%4===0&&(t%100!==0||t%400===0)}function ol(t,n){return t==="BC"?1-n:n}function Zd(t){let n="AD";return t<=0&&(n="BC",t=1-t),[n,t]}const Kd={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]};class wn{fromJulianDay(n){let o=n,r=o-Ka,l=Math.floor(r/146097),a=pr(r,146097),i=Math.floor(a/36524),u=pr(a,36524),s=Math.floor(u/1461),d=pr(u,1461),c=Math.floor(d/365),f=l*400+i*100+s*4+c+(i!==4&&c!==4?1:0),[m,p]=Zd(f),g=o-vo(m,p,1,1),v=2;o<vo(m,p,3,1)?v=0:_o(p)&&(v=1);let h=Math.floor(((g+v)*12+373)/367),x=o-vo(m,p,h,1)+1;return new Vt(m,p,h,x)}toJulianDay(n){return vo(n.era,n.year,n.month,n.day)}getDaysInMonth(n){return Kd[_o(n.year)?"leapyear":"standard"][n.month-1]}getMonthsInYear(n){return 12}getDaysInYear(n){return _o(n.year)?366:365}getYearsInEra(n){return 9999}getEras(){return["BC","AD"]}isInverseEra(n){return n.era==="BC"}balanceDate(n){n.year<=0&&(n.era=n.era==="BC"?"AD":"BC",n.year=1-n.year)}constructor(){this.identifier="gregory"}}function Jd(t,n){var o,r,l,a;return(a=(l=(o=t.isEqual)===null||o===void 0?void 0:o.call(t,n))!==null&&l!==void 0?l:(r=n.isEqual)===null||r===void 0?void 0:r.call(n,t))!==null&&a!==void 0?a:t.identifier===n.identifier}function Qd(t){return Tt(Date.now(),t)}function Ja(t){return oc(Qd(t))}function Qa(t,n){return t.calendar.toJulianDay(t)-n.calendar.toJulianDay(n)}function ec(t,n){return El(t)-El(n)}function El(t){return t.hour*36e5+t.minute*6e4+t.second*1e3+t.millisecond}let mr=null;function gt(){return mr==null&&(mr=new Intl.DateTimeFormat().resolvedOptions().timeZone),mr}function bn(t){t=wt(t,new wn);let n=ol(t.era,t.year);return ei(n,t.month,t.day,t.hour,t.minute,t.second,t.millisecond)}function ei(t,n,o,r,l,a,i){let u=new Date;return u.setUTCHours(r,l,a,i),u.setUTCFullYear(t,n-1,o),u.getTime()}function Rr(t,n){if(n==="UTC")return 0;if(t>0&&n===gt())return new Date(t).getTimezoneOffset()*-6e4;let{year:o,month:r,day:l,hour:a,minute:i,second:u}=ti(t,n);return ei(o,r,l,a,i,u,0)-Math.floor(t/1e3)*1e3}const Al=new Map;function ti(t,n){let o=Al.get(n);o||(o=new Intl.DateTimeFormat("en-US",{timeZone:n,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),Al.set(n,o));let r=o.formatToParts(new Date(t)),l={};for(let a of r)a.type!=="literal"&&(l[a.type]=a.value);return{year:l.era==="BC"||l.era==="B"?-l.year+1:+l.year,month:+l.month,day:+l.day,hour:l.hour==="24"?0:+l.hour,minute:+l.minute,second:+l.second}}const Tl=864e5;function tc(t,n,o,r){return(o===r?[o]:[o,r]).filter(a=>nc(t,n,a))}function nc(t,n,o){let r=ti(o,n);return t.year===r.year&&t.month===r.month&&t.day===r.day&&t.hour===r.hour&&t.minute===r.minute&&t.second===r.second}function At(t,n,o="compatible"){let r=_n(t);if(n==="UTC")return bn(r);if(n===gt()&&o==="compatible"){r=wt(r,new wn);let s=new Date,d=ol(r.era,r.year);return s.setFullYear(d,r.month-1,r.day),s.setHours(r.hour,r.minute,r.second,r.millisecond),s.getTime()}let l=bn(r),a=Rr(l-Tl,n),i=Rr(l+Tl,n),u=tc(r,n,l-a,l-i);if(u.length===1)return u[0];if(u.length>1)switch(o){case"compatible":case"earlier":return u[0];case"later":return u[u.length-1];case"reject":throw new RangeError("Multiple possible absolute times found")}switch(o){case"earlier":return Math.min(l-a,l-i);case"compatible":case"later":return Math.max(l-a,l-i);case"reject":throw new RangeError("No such absolute time found")}}function ni(t,n,o="compatible"){return new Date(At(t,n,o))}function Tt(t,n){let o=Rr(t,n),r=new Date(t+o),l=r.getUTCFullYear(),a=r.getUTCMonth()+1,i=r.getUTCDate(),u=r.getUTCHours(),s=r.getUTCMinutes(),d=r.getUTCSeconds(),c=r.getUTCMilliseconds();return new oo(l<1?"BC":"AD",l<1?-l+1:l,a,i,n,o,u,s,d,c)}function oc(t){return new Vt(t.calendar,t.era,t.year,t.month,t.day)}function _n(t,n){let o=0,r=0,l=0,a=0;if("timeZone"in t)({hour:o,minute:r,second:l,millisecond:a}=t);else if("hour"in t&&!n)return t;return n&&({hour:o,minute:r,second:l,millisecond:a}=n),new no(t.calendar,t.era,t.year,t.month,t.day,o,r,l,a)}function wt(t,n){if(Jd(t.calendar,n))return t;let o=n.fromJulianDay(t.calendar.toJulianDay(t)),r=t.copy();return r.calendar=n,r.era=o.era,r.year=o.year,r.month=o.month,r.day=o.day,sn(r),r}function rc(t,n,o){if(t instanceof oo)return t.timeZone===n?t:ac(t,n);let r=At(t,n,o);return Tt(r,n)}function lc(t){let n=bn(t)-t.offset;return new Date(n)}function ac(t,n){let o=bn(t)-t.offset;return wt(Tt(o,n),t.calendar)}const Fn=36e5;function $o(t,n){let o=t.copy(),r="hour"in o?dc(o,n):0;Ir(o,n.years||0),o.calendar.balanceYearMonth&&o.calendar.balanceYearMonth(o,t),o.month+=n.months||0,Mr(o),oi(o),o.day+=(n.weeks||0)*7,o.day+=n.days||0,o.day+=r,ic(o),o.calendar.balanceDate&&o.calendar.balanceDate(o),o.year<1&&(o.year=1,o.month=1,o.day=1);let l=o.calendar.getYearsInEra(o);if(o.year>l){var a,i;let s=(a=(i=o.calendar).isInverseEra)===null||a===void 0?void 0:a.call(i,o);o.year=l,o.month=s?1:o.calendar.getMonthsInYear(o),o.day=s?1:o.calendar.getDaysInMonth(o)}o.month<1&&(o.month=1,o.day=1);let u=o.calendar.getMonthsInYear(o);return o.month>u&&(o.month=u,o.day=o.calendar.getDaysInMonth(o)),o.day=Math.max(1,Math.min(o.calendar.getDaysInMonth(o),o.day)),o}function Ir(t,n){var o,r;!((o=(r=t.calendar).isInverseEra)===null||o===void 0)&&o.call(r,t)&&(n=-n),t.year+=n}function Mr(t){for(;t.month<1;)Ir(t,-1),t.month+=t.calendar.getMonthsInYear(t);let n=0;for(;t.month>(n=t.calendar.getMonthsInYear(t));)t.month-=n,Ir(t,1)}function ic(t){for(;t.day<1;)t.month--,Mr(t),t.day+=t.calendar.getDaysInMonth(t);for(;t.day>t.calendar.getDaysInMonth(t);)t.day-=t.calendar.getDaysInMonth(t),t.month++,Mr(t)}function oi(t){t.month=Math.max(1,Math.min(t.calendar.getMonthsInYear(t),t.month)),t.day=Math.max(1,Math.min(t.calendar.getDaysInMonth(t),t.day))}function sn(t){t.calendar.constrainDate&&t.calendar.constrainDate(t),t.year=Math.max(1,Math.min(t.calendar.getYearsInEra(t),t.year)),oi(t)}function ri(t){let n={};for(let o in t)typeof t[o]=="number"&&(n[o]=-t[o]);return n}function li(t,n){return $o(t,ri(n))}function rl(t,n){let o=t.copy();return n.era!=null&&(o.era=n.era),n.year!=null&&(o.year=n.year),n.month!=null&&(o.month=n.month),n.day!=null&&(o.day=n.day),sn(o),o}function So(t,n){let o=t.copy();return n.hour!=null&&(o.hour=n.hour),n.minute!=null&&(o.minute=n.minute),n.second!=null&&(o.second=n.second),n.millisecond!=null&&(o.millisecond=n.millisecond),uc(o),o}function sc(t){t.second+=Math.floor(t.millisecond/1e3),t.millisecond=ho(t.millisecond,1e3),t.minute+=Math.floor(t.second/60),t.second=ho(t.second,60),t.hour+=Math.floor(t.minute/60),t.minute=ho(t.minute,60);let n=Math.floor(t.hour/24);return t.hour=ho(t.hour,24),n}function uc(t){t.millisecond=Math.max(0,Math.min(t.millisecond,1e3)),t.second=Math.max(0,Math.min(t.second,59)),t.minute=Math.max(0,Math.min(t.minute,59)),t.hour=Math.max(0,Math.min(t.hour,23))}function ho(t,n){let o=t%n;return o<0&&(o+=n),o}function dc(t,n){return t.hour+=n.hours||0,t.minute+=n.minutes||0,t.second+=n.seconds||0,t.millisecond+=n.milliseconds||0,sc(t)}function ll(t,n,o,r){let l=t.copy();switch(n){case"era":{let u=t.calendar.getEras(),s=u.indexOf(t.era);if(s<0)throw new Error("Invalid era: "+t.era);s=Bt(s,o,0,u.length-1,r==null?void 0:r.round),l.era=u[s],sn(l);break}case"year":var a,i;!((a=(i=l.calendar).isInverseEra)===null||a===void 0)&&a.call(i,l)&&(o=-o),l.year=Bt(t.year,o,-1/0,9999,r==null?void 0:r.round),l.year===-1/0&&(l.year=1),l.calendar.balanceYearMonth&&l.calendar.balanceYearMonth(l,t);break;case"month":l.month=Bt(t.month,o,1,t.calendar.getMonthsInYear(t),r==null?void 0:r.round);break;case"day":l.day=Bt(t.day,o,1,t.calendar.getDaysInMonth(t),r==null?void 0:r.round);break;default:throw new Error("Unsupported field "+n)}return t.calendar.balanceDate&&t.calendar.balanceDate(l),sn(l),l}function ai(t,n,o,r){let l=t.copy();switch(n){case"hour":{let a=t.hour,i=0,u=23;if((r==null?void 0:r.hourCycle)===12){let s=a>=12;i=s?12:0,u=s?23:11}l.hour=Bt(a,o,i,u,r==null?void 0:r.round);break}case"minute":l.minute=Bt(t.minute,o,0,59,r==null?void 0:r.round);break;case"second":l.second=Bt(t.second,o,0,59,r==null?void 0:r.round);break;case"millisecond":l.millisecond=Bt(t.millisecond,o,0,999,r==null?void 0:r.round);break;default:throw new Error("Unsupported field "+n)}return l}function Bt(t,n,o,r,l=!1){if(l){t+=Math.sign(n),t<o&&(t=r);let a=Math.abs(n);n>0?t=Math.ceil(t/a)*a:t=Math.floor(t/a)*a,t>r&&(t=o)}else t+=n,t<o?t=r-(o-t-1):t>r&&(t=o+(t-r-1));return t}function ii(t,n){let o;if(n.years!=null&&n.years!==0||n.months!=null&&n.months!==0||n.weeks!=null&&n.weeks!==0||n.days!=null&&n.days!==0){let l=$o(_n(t),{years:n.years,months:n.months,weeks:n.weeks,days:n.days});o=At(l,t.timeZone)}else o=bn(t)-t.offset;o+=n.milliseconds||0,o+=(n.seconds||0)*1e3,o+=(n.minutes||0)*6e4,o+=(n.hours||0)*36e5;let r=Tt(o,t.timeZone);return wt(r,t.calendar)}function cc(t,n){return ii(t,ri(n))}function fc(t,n,o,r){switch(n){case"hour":{let l=0,a=23;if((r==null?void 0:r.hourCycle)===12){let g=t.hour>=12;l=g?12:0,a=g?23:11}let i=_n(t),u=wt(So(i,{hour:l}),new wn),s=[At(u,t.timeZone,"earlier"),At(u,t.timeZone,"later")].filter(g=>Tt(g,t.timeZone).day===u.day)[0],d=wt(So(i,{hour:a}),new wn),c=[At(d,t.timeZone,"earlier"),At(d,t.timeZone,"later")].filter(g=>Tt(g,t.timeZone).day===d.day).pop(),f=bn(t)-t.offset,m=Math.floor(f/Fn),p=f%Fn;return f=Bt(m,o,Math.floor(s/Fn),Math.floor(c/Fn),r==null?void 0:r.round)*Fn+p,wt(Tt(f,t.timeZone),t.calendar)}case"minute":case"second":case"millisecond":return ai(t,n,o,r);case"era":case"year":case"month":case"day":{let l=ll(_n(t),n,o,r),a=At(l,t.timeZone);return wt(Tt(a,t.timeZone),t.calendar)}default:throw new Error("Unsupported field "+n)}}function pc(t,n,o){let r=_n(t),l=So(rl(r,n),n);if(l.compare(r)===0)return t;let a=At(l,t.timeZone,o);return wt(Tt(a,t.timeZone),t.calendar)}const mc=/^([+-]\d{6}|\d{4})-(\d{2})-(\d{2})(?:T(\d{2}))?(?::(\d{2}))?(?::(\d{2}))?(\.\d+)?$/;function Bl(t){let n=t.match(mc);if(!n)throw new Error("Invalid ISO 8601 date time string: "+t);let o=Qt(n[1],-9999,9999),r=o<1?"BC":"AD",l=new no(r,o<1?-o+1:o,Qt(n[2],1,12),1,n[4]?Qt(n[4],0,23):0,n[5]?Qt(n[5],0,59):0,n[6]?Qt(n[6],0,59):0,n[7]?Qt(n[7],0,1/0)*1e3:0);return l.day=Qt(n[3],0,l.calendar.getDaysInMonth(l)),l}function Qt(t,n,o){let r=Number(t);if(r<n||r>o)throw new RangeError(`Value out of range: ${n} <= ${r} <= ${o}`);return r}function gc(t){return`${String(t.hour).padStart(2,"0")}:${String(t.minute).padStart(2,"0")}:${String(t.second).padStart(2,"0")}${t.millisecond?String(t.millisecond/1e3).slice(1):""}`}function si(t){let n=wt(t,new wn),o;return n.era==="BC"?o=n.year===1?"0000":"-"+String(Math.abs(1-n.year)).padStart(6,"00"):o=String(n.year).padStart(4,"0"),`${o}-${String(n.month).padStart(2,"0")}-${String(n.day).padStart(2,"0")}`}function ui(t){return`${si(t)}T${gc(t)}`}function vc(t){let n=Math.sign(t)<0?"-":"+";t=Math.abs(t);let o=Math.floor(t/36e5),r=t%36e5/6e4;return`${n}${String(o).padStart(2,"0")}:${String(r).padStart(2,"0")}`}function hc(t){return`${ui(t)}${vc(t.offset)}[${t.timeZone}]`}function xc(t,n){if(n.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function al(t,n,o){xc(t,n),n.set(t,o)}function il(t){let n=typeof t[0]=="object"?t.shift():new wn,o;if(typeof t[0]=="string")o=t.shift();else{let i=n.getEras();o=i[i.length-1]}let r=t.shift(),l=t.shift(),a=t.shift();return[n,o,r,l,a]}var yc=new WeakMap;class Vt{copy(){return this.era?new Vt(this.calendar,this.era,this.year,this.month,this.day):new Vt(this.calendar,this.year,this.month,this.day)}add(n){return $o(this,n)}subtract(n){return li(this,n)}set(n){return rl(this,n)}cycle(n,o,r){return ll(this,n,o,r)}toDate(n){return ni(this,n)}toString(){return si(this)}compare(n){return Qa(this,n)}constructor(...n){al(this,yc,{writable:!0,value:void 0});let[o,r,l,a,i]=il(n);this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,sn(this)}}var Cc=new WeakMap;class no{copy(){return this.era?new no(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new no(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(n){return $o(this,n)}subtract(n){return li(this,n)}set(n){return rl(So(this,n),n)}cycle(n,o,r){switch(n){case"era":case"year":case"month":case"day":return ll(this,n,o,r);default:return ai(this,n,o,r)}}toDate(n,o){return ni(this,n,o)}toString(){return ui(this)}compare(n){let o=Qa(this,n);return o===0?ec(this,_n(n)):o}constructor(...n){al(this,Cc,{writable:!0,value:void 0});let[o,r,l,a,i]=il(n);this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,this.hour=n.shift()||0,this.minute=n.shift()||0,this.second=n.shift()||0,this.millisecond=n.shift()||0,sn(this)}}var Vc=new WeakMap;class oo{copy(){return this.era?new oo(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new oo(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(n){return ii(this,n)}subtract(n){return cc(this,n)}set(n,o){return pc(this,n,o)}cycle(n,o,r){return fc(this,n,o,r)}toDate(){return lc(this)}toString(){return hc(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(n){return this.toDate().getTime()-rc(n,this.timeZone).toDate().getTime()}constructor(...n){al(this,Vc,{writable:!0,value:void 0});let[o,r,l,a,i]=il(n),u=n.shift(),s=n.shift();this.calendar=o,this.era=r,this.year=l,this.month=a,this.day=i,this.timeZone=u,this.offset=s,this.hour=n.shift()||0,this.minute=n.shift()||0,this.second=n.shift()||0,this.millisecond=n.shift()||0,sn(this)}}let gr=new Map;class sl{format(n){return this.formatter.format(n)}formatToParts(n){return this.formatter.formatToParts(n)}formatRange(n,o){if(typeof this.formatter.formatRange=="function")return this.formatter.formatRange(n,o);if(o<n)throw new RangeError("End date must be >= start date");return`${this.formatter.format(n)} – ${this.formatter.format(o)}`}formatRangeToParts(n,o){if(typeof this.formatter.formatRangeToParts=="function")return this.formatter.formatRangeToParts(n,o);if(o<n)throw new RangeError("End date must be >= start date");let r=this.formatter.formatToParts(n),l=this.formatter.formatToParts(o);return[...r.map(a=>({...a,source:"startRange"})),{type:"literal",value:" – ",source:"shared"},...l.map(a=>({...a,source:"endRange"}))]}resolvedOptions(){let n=this.formatter.resolvedOptions();return _c()&&(this.resolvedHourCycle||(this.resolvedHourCycle=Nc(n.locale,this.options)),n.hourCycle=this.resolvedHourCycle,n.hour12=this.resolvedHourCycle==="h11"||this.resolvedHourCycle==="h12"),n.calendar==="ethiopic-amete-alem"&&(n.calendar="ethioaa"),n}constructor(n,o={}){this.formatter=di(n,o),this.options=o}}const wc={true:{ja:"h11"},false:{}};function di(t,n={}){if(typeof n.hour12=="boolean"&&bc()){n={...n};let l=wc[String(n.hour12)][t.split("-")[0]],a=n.hour12?"h12":"h23";n.hourCycle=l??a,delete n.hour12}let o=t+(n?Object.entries(n).sort((l,a)=>l[0]<a[0]?-1:1).join():"");if(gr.has(o))return gr.get(o);let r=new Intl.DateTimeFormat(t,n);return gr.set(o,r),r}let vr=null;function bc(){return vr==null&&(vr=new Intl.DateTimeFormat("en-US",{hour:"numeric",hour12:!1}).format(new Date(2020,2,3,0))==="24"),vr}let hr=null;function _c(){return hr==null&&(hr=new Intl.DateTimeFormat("fr",{hour:"numeric",hour12:!1}).resolvedOptions().hourCycle==="h12"),hr}function Nc(t,n){if(!n.timeStyle&&!n.hour)return;t=t.replace(/(-u-)?-nu-[a-zA-Z0-9]+/,""),t+=(t.includes("-u-")?"":"-u")+"-nu-latn";let o=di(t,{...n,timeZone:void 0}),r=parseInt(o.formatToParts(new Date(2020,2,3,0)).find(a=>a.type==="hour").value,10),l=parseInt(o.formatToParts(new Date(2020,2,3,23)).find(a=>a.type==="hour").value,10);if(r===0&&l===23)return"h23";if(r===24&&l===23)return"h24";if(r===0&&l===11)return"h11";if(r===12&&l===11)return"h12";throw new Error("Unexpected hour cycle result")}function mt(t){return new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)}function kc(){const t=new Date,n=mt(t);return{today:[n],yesterday:[mt(new Date(t.getFullYear(),t.getMonth(),t.getDate()-1))],last7days:[mt(new Date(t.getFullYear(),t.getMonth(),t.getDate()-6)),n],lastMonth:[mt(new Date(t.getFullYear(),t.getMonth()-1,t.getDate())),n],last6months:[mt(new Date(t.getFullYear(),t.getMonth()-6,t.getDate())),n],lastYear:[mt(new Date(t.getFullYear()-1,t.getMonth(),t.getDate())),n],tomorrow:[mt(new Date(t.getFullYear(),t.getMonth(),t.getDate()+1))],next7days:[n,mt(new Date(t.getFullYear(),t.getMonth(),t.getDate()+6))],nextMonth:[n,mt(new Date(t.getFullYear(),t.getMonth()+1,t.getDate()))],next6months:[n,mt(new Date(t.getFullYear(),t.getMonth()+6,t.getDate()))],nextYear:[n,mt(new Date(t.getFullYear()+1,t.getMonth(),t.getDate()))]}}const Sc=["disabled"],Ec={class:"flex flex-col items-start gap-4 py-4"},Ac={class:"flex flex-col gap-1.5"},Tc={class:"flex flex-col gap-1.5"},Bc={class:"flex items-center gap-2 w-full justify-between"},Dc={class:"flex items-center gap-2 ml-auto"},Rc=e.defineComponent({__name:"DateRangeSettingsDialog",props:{savedField:{type:String,default:""},savedDefaultDate:{type:String,default:"today"}},emits:["saved"],setup(t,{emit:n}){const{isAdmin:o}=Z.useModulePermissions(),r=n,l=t,a=g=>{s.value=g},i=e.inject("sortMode"),u=e.inject("columns"),s=e.ref(!1),d=e.ref(""),c=e.ref("");e.watch(s,g=>{g&&(d.value=l.savedField??"",c.value=l.savedDefaultDate??"today")});const f=()=>{r("saved",{field:"",defaultDate:"today"}),m()},m=()=>{s.value=!1},p=()=>{r("saved",{field:d.value,defaultDate:c.value}),m()};return(g,v)=>{const h=e.resolveComponent("DialogTrigger"),x=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogDescription"),y=e.resolveComponent("DialogHeader"),N=e.resolveComponent("Label"),C=e.resolveComponent("ComboboxTrigger"),V=e.resolveComponent("ComboboxInput"),_=e.resolveComponent("ComboboxAnchor"),S=e.resolveComponent("ComboboxItem"),R=e.resolveComponent("ComboboxGroup"),$=e.resolveComponent("ComboboxList"),U=e.resolveComponent("Combobox"),P=e.resolveComponent("SelectValue"),G=e.resolveComponent("SelectTrigger"),k=e.resolveComponent("SelectItem"),B=e.resolveComponent("SelectLabel"),E=e.resolveComponent("SelectGroup"),I=e.resolveComponent("SelectContent"),X=e.resolveComponent("Select"),le=e.resolveComponent("Button"),F=e.resolveComponent("DialogFooter"),T=e.resolveComponent("DialogScrollContent"),w=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(w,{open:s.value,"onUpdate:open":[v[4]||(v[4]=A=>s.value=A),a]},{default:e.withCtx(()=>[e.createVNode(h,{asChild:""},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",disabled:e.unref(i),onClick:v[0]||(v[0]=A=>s.value=!0)},"Settings",8,Sc)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(T,{class:"sm:max-w-lg"},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>v[5]||(v[5]=[e.createTextVNode("Date range filter settings",-1)])),_:1,__:[5]}),e.createVNode(b,null,{default:e.withCtx(()=>v[6]||(v[6]=[e.createTextVNode(" Select the property (of type date) to filter by. ",-1)])),_:1,__:[6]})]),_:1}),e.createElementVNode("div",Ec,[e.createVNode(U,{by:"label",class:"w-full",resetSearchTermOnBlur:!1,resetSearchTermOnSelect:!0,modelValue:d.value,"onUpdate:modelValue":v[2]||(v[2]=A=>d.value=A)},{default:e.withCtx(()=>[e.createVNode(_,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",Ac,[e.createVNode(C,null,{default:e.withCtx(()=>[e.createVNode(N,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[7]||(v[7]=[e.createTextVNode("Field",-1)])),_:1,__:[7]})]),_:1}),e.createVNode(V,{modelValue:d.value,"onUpdate:modelValue":v[1]||(v[1]=A=>d.value=A),hideIcon:"",class:"w-full"},null,8,["modelValue"])])]),_:1}),e.createVNode($,{class:"w-full"},{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),A=>(e.openBlock(),e.createBlock(S,{key:A.property,value:A.property,onSelect:L=>d.value=A.property},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(A.property)+" ",1),d.value===A.property?(e.openBlock(),e.createBlock(e.unref(z.Check),{key:0,class:e.normalizeClass(e.unref(xt)("ml-auto size-4"))},null,8,["class"])):e.createCommentVNode("",!0)]),_:2},1032,["value","onSelect"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Tc,[e.createVNode(N,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>v[8]||(v[8]=[e.createTextVNode("Default date",-1)])),_:1,__:[8]}),e.createVNode(X,{modelValue:c.value,"onUpdate:modelValue":v[3]||(v[3]=A=>c.value=A)},{default:e.withCtx(()=>[e.createVNode(G,{class:"w-[180px]"},{default:e.withCtx(()=>[e.createVNode(P,{placeholder:"Select a fruit"})]),_:1}),e.createVNode(I,null,{default:e.withCtx(()=>[e.createVNode(E,null,{default:e.withCtx(()=>[e.createVNode(k,{value:"today"},{default:e.withCtx(()=>v[9]||(v[9]=[e.createTextVNode(" Today ",-1)])),_:1,__:[9]}),e.createVNode(B,null,{default:e.withCtx(()=>v[10]||(v[10]=[e.createTextVNode("Past",-1)])),_:1,__:[10]}),e.createVNode(k,{value:"yesterday"},{default:e.withCtx(()=>v[11]||(v[11]=[e.createTextVNode(" 1 day ago ",-1)])),_:1,__:[11]}),e.createVNode(k,{value:"last7days"},{default:e.withCtx(()=>v[12]||(v[12]=[e.createTextVNode(" Last 7 days ",-1)])),_:1,__:[12]}),e.createVNode(k,{value:"lastMonth"},{default:e.withCtx(()=>v[13]||(v[13]=[e.createTextVNode(" Last 30 days ",-1)])),_:1,__:[13]}),e.createVNode(k,{value:"last6months"},{default:e.withCtx(()=>v[14]||(v[14]=[e.createTextVNode(" Last 6 months ",-1)])),_:1,__:[14]}),e.createVNode(k,{value:"lastYear"},{default:e.withCtx(()=>v[15]||(v[15]=[e.createTextVNode(" Last 12 months ",-1)])),_:1,__:[15]}),e.createVNode(B,null,{default:e.withCtx(()=>v[16]||(v[16]=[e.createTextVNode("Future",-1)])),_:1,__:[16]}),e.createVNode(k,{value:"tomorrow"},{default:e.withCtx(()=>v[17]||(v[17]=[e.createTextVNode(" In 1 day ",-1)])),_:1,__:[17]}),e.createVNode(k,{value:"next7days"},{default:e.withCtx(()=>v[18]||(v[18]=[e.createTextVNode(" Next 7 days ",-1)])),_:1,__:[18]}),e.createVNode(k,{value:"nextMonth"},{default:e.withCtx(()=>v[19]||(v[19]=[e.createTextVNode(" Next 30 days ",-1)])),_:1,__:[19]}),e.createVNode(k,{value:"next6months"},{default:e.withCtx(()=>v[20]||(v[20]=[e.createTextVNode(" Next 6 months ",-1)])),_:1,__:[20]}),e.createVNode(k,{value:"nextYear"},{default:e.withCtx(()=>v[21]||(v[21]=[e.createTextVNode(" Next 12 months ",-1)])),_:1,__:[21]})]),_:1})]),_:1})]),_:1},8,["modelValue"])])]),e.createVNode(F,null,{default:e.withCtx(()=>[e.createElementVNode("div",Bc,[l.savedField?(e.openBlock(),e.createBlock(le,{key:0,variant:"outline",onClick:f},{default:e.withCtx(()=>v[22]||(v[22]=[e.createTextVNode(" Disable date range filter ",-1)])),_:1,__:[22]})):e.createCommentVNode("",!0),e.createElementVNode("div",Dc,[e.createVNode(le,{variant:"outline",onClick:m},{default:e.withCtx(()=>v[23]||(v[23]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[23]}),e.createVNode(le,{onClick:p},{default:e.withCtx(()=>v[24]||(v[24]=[e.createTextVNode(" Save changes ",-1)])),_:1,__:[24]})])])]),_:1})]),_:1})]),_:1},8,["open"])}}}),Ic={class:"flex justify-between w-full p-3 pt-0"},Mc={class:"flex gap-2"},Pc=e.defineComponent({__name:"DateRangeFilter",setup(t){const{getModuleData:n,setModuleData:o}=Z.useModuleStorage(),{isAdmin:r}=Z.useModulePermissions(),l=e.inject("sortMode"),a=e.inject("dateRangeFilter"),i=e.inject("getTableData"),u=new sl("en-US",{dateStyle:"medium"}),s=e.ref({start:new Vt(2022,1,20),end:new Vt(2022,1,20).subtract({days:20})}),d=e.ref(!1),c=e.ref(""),f=e.ref("today"),m=h=>{c.value=h.field,f.value=h.defaultDate,o("dateRangeFilter",h)},p=h=>{var N,C,V;const x=(N=kc())==null?void 0:N[h],b=(C=x[0].split("-"))==null?void 0:C.map(_=>parseInt(_)),y=x[1]?(V=x[1].split("-"))==null?void 0:V.map(_=>parseInt(_)):[];s.value={start:new Vt(b[0],b[1],b[2]),end:y.length>0?new Vt(y[0],y[1],y[2]):new Vt(b[0],b[1],b[2])}},g=h=>{p(h),v(),d.value=!1},v=()=>{d.value=!1,a.value=[s.value.start.toDate(gt()),s.value.end.toDate(gt())],i()};return e.onMounted(async()=>{const h=await n("dateRangeFilter");c.value=(h==null?void 0:h.field)??"",f.value=(h==null?void 0:h.defaultDate)??"today",p(f.value),v()}),(h,x)=>{const b=e.resolveComponent("Button"),y=e.resolveComponent("PopoverTrigger"),N=e.resolveComponent("RangeCalendar"),C=e.resolveComponent("DropdownMenuTrigger"),V=e.resolveComponent("DropdownMenuItem"),_=e.resolveComponent("DropdownMenuSeparator"),S=e.resolveComponent("DropdownMenuLabel"),R=e.resolveComponent("DropdownMenuGroup"),$=e.resolveComponent("DropdownMenuContent"),U=e.resolveComponent("DropdownMenu"),P=e.resolveComponent("PopoverContent"),G=e.resolveComponent("Popover");return c.value||e.unref(r)()?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["flex flex-col items-start gap-1",e.unref(l)?"opacity-50 pointer-events-none":""])},[e.createVNode(G,{open:d.value,"onUpdate:open":x[14]||(x[14]=k=>d.value=k)},{default:e.withCtx(()=>[e.createVNode(y,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(b,{variant:"outline",class:e.normalizeClass(e.unref(xt)("w-[280px] justify-start text-left font-normal",!s.value&&"text-muted-foreground")),disabled:e.unref(l)||!c.value},{default:e.withCtx(()=>[e.createVNode(e.unref(z.CalendarIcon),{class:"size-4"}),s.value.start?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.value.end?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(e.unref(u).format(s.value.start.toDate(e.unref(gt)())))+" - "+e.toDisplayString(e.unref(u).format(s.value.end.toDate(e.unref(gt)()))),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(u).format(s.value.start.toDate(e.unref(gt)()))),1)],64))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" Pick a date ")],64))]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(P,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(N,{modelValue:s.value,"onUpdate:modelValue":x[0]||(x[0]=k=>s.value=k),"initial-focus":"","number-of-months":2,"onUpdate:startValue":x[1]||(x[1]=k=>s.value.start=k)},null,8,["modelValue"]),e.createElementVNode("div",Ic,[e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(C,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(b,{variant:"outline"},{default:e.withCtx(()=>x[15]||(x[15]=[e.createTextVNode(" Presets ",-1)])),_:1,__:[15]})]),_:1}),e.createVNode($,{class:"w-56"},{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>[e.createVNode(V,{onClick:x[2]||(x[2]=k=>g("today"))},{default:e.withCtx(()=>x[16]||(x[16]=[e.createTextVNode(" Today ",-1)])),_:1,__:[16]}),e.createVNode(_),e.createVNode(S,null,{default:e.withCtx(()=>x[17]||(x[17]=[e.createTextVNode("Past",-1)])),_:1,__:[17]}),e.createVNode(V,{onClick:x[3]||(x[3]=k=>g("yesterday"))},{default:e.withCtx(()=>x[18]||(x[18]=[e.createTextVNode(" 1 day ago ",-1)])),_:1,__:[18]}),e.createVNode(V,{onClick:x[4]||(x[4]=k=>g("last7days"))},{default:e.withCtx(()=>x[19]||(x[19]=[e.createTextVNode(" Last 7 days ",-1)])),_:1,__:[19]}),e.createVNode(V,{onClick:x[5]||(x[5]=k=>g("lastMonth"))},{default:e.withCtx(()=>x[20]||(x[20]=[e.createTextVNode(" Last 30 days ",-1)])),_:1,__:[20]}),e.createVNode(V,{onClick:x[6]||(x[6]=k=>g("last6months"))},{default:e.withCtx(()=>x[21]||(x[21]=[e.createTextVNode(" Last 6 months ",-1)])),_:1,__:[21]}),e.createVNode(V,{onClick:x[7]||(x[7]=k=>g("lastYear"))},{default:e.withCtx(()=>x[22]||(x[22]=[e.createTextVNode(" Last 12 months ",-1)])),_:1,__:[22]}),e.createVNode(_),e.createVNode(S,null,{default:e.withCtx(()=>x[23]||(x[23]=[e.createTextVNode("Future",-1)])),_:1,__:[23]}),e.createVNode(V,{onClick:x[8]||(x[8]=k=>g("tomorrow"))},{default:e.withCtx(()=>x[24]||(x[24]=[e.createTextVNode(" In 1 day ",-1)])),_:1,__:[24]}),e.createVNode(V,{onClick:x[9]||(x[9]=k=>g("next7days"))},{default:e.withCtx(()=>x[25]||(x[25]=[e.createTextVNode(" Next 7 days ",-1)])),_:1,__:[25]}),e.createVNode(V,{onClick:x[10]||(x[10]=k=>g("nextMonth"))},{default:e.withCtx(()=>x[26]||(x[26]=[e.createTextVNode(" Next 30 days ",-1)])),_:1,__:[26]}),e.createVNode(V,{onClick:x[11]||(x[11]=k=>g("next6months"))},{default:e.withCtx(()=>x[27]||(x[27]=[e.createTextVNode(" Next 6 months ",-1)])),_:1,__:[27]}),e.createVNode(V,{onClick:x[12]||(x[12]=k=>g("nextYear"))},{default:e.withCtx(()=>x[28]||(x[28]=[e.createTextVNode(" Next 12 months ",-1)])),_:1,__:[28]})]),_:1})]),_:1})]),_:1}),e.createElementVNode("div",Mc,[e.createVNode(b,{variant:"outline",onClick:x[13]||(x[13]=k=>d.value=!1)},{default:e.withCtx(()=>x[29]||(x[29]=[e.createTextVNode("Cancel",-1)])),_:1,__:[29]}),e.createVNode(b,{onClick:v},{default:e.withCtx(()=>x[30]||(x[30]=[e.createTextVNode("Apply",-1)])),_:1,__:[30]})])])]),_:1})]),_:1},8,["open"]),e.createVNode(Rc,{onSaved:m,"saved-field":c.value,"saved-default-date":f.value},null,8,["saved-field","saved-default-date"])],2)):e.createCommentVNode("",!0)}}}),Fc={class:"grid grid-cols-3 gap-2 mb-2 py-2"},Oc={class:"flex flex-col items-start gap-1.5"},zc={class:"flex flex-col items-start gap-1.5"},Lc={class:"grid gap-4"},Uc={class:"grid grid-cols-4 items-center gap-4"},jc={class:"grid grid-cols-4 items-center gap-4"},$c={class:"grid grid-cols-4 items-center gap-4"},Hc={class:"flex justify-end gap-2"},qc=e.defineComponent({__name:"FilterDialog",emits:["filterAdded","filterEdited","filterRemoved"],setup(t,{expose:n,emit:o}){const r=o;e.inject("columns");const l=e.ref(!1),a=e.ref("add"),i=e.ref(null),u=e.ref(!1),s=e.reactive({label:"",property:"",options:[]}),d=e.reactive({value:"",label:"",checked:!1}),c=h=>{a.value=h?"edit":"add",i.value=h??null,s.label=(h==null?void 0:h.label)??"",s.property=(h==null?void 0:h.property)??"",s.options=(h==null?void 0:h.options)??[],l.value=!0},f=()=>{let h=crypto.randomUUID();s.options.push({id:h,value:d.value,label:d.label,checked:d.checked}),d.value="",d.label="",d.checked=!1},m=h=>{s.options=s.options.filter(x=>x.id!==h)},p=()=>{console.log(s),a.value==="add"?r("filterAdded",s):r("filterEdited",{...s,id:i.value.id}),l.value=!1},g=()=>{u.value=!1},v=()=>{r("filterRemoved",i.value.id),l.value=!1};return n({openDialog:c}),(h,x)=>{const b=e.resolveComponent("DialogTitle"),y=e.resolveComponent("DialogDescription"),N=e.resolveComponent("DialogHeader"),C=e.resolveComponent("Label"),V=e.resolveComponent("Input"),_=e.resolveComponent("Button"),S=e.resolveComponent("PopoverTrigger"),R=e.resolveComponent("Checkbox"),$=e.resolveComponent("PopoverContent"),U=e.resolveComponent("Popover"),P=e.resolveComponent("DialogFooter"),G=e.resolveComponent("DialogScrollContent"),k=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(k,{open:l.value,"onUpdate:open":x[6]||(x[6]=B=>l.value=B)},{default:e.withCtx(()=>[e.createVNode(G,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(N,null,{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Filter":"Edit Filter"),1)]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add a new filter for this table.":"Edit the selected filter."),1)]),_:1})]),_:1}),e.createElementVNode("div",Fc,[e.createElementVNode("div",Oc,[e.createVNode(C,{for:"filter_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>x[7]||(x[7]=[e.createTextVNode("Label",-1)])),_:1,__:[7]}),e.createVNode(V,{id:"filter_dialog_label",modelValue:s.label,"onUpdate:modelValue":x[0]||(x[0]=B=>s.label=B)},null,8,["modelValue"])]),e.createElementVNode("div",zc,[e.createVNode(C,{for:"filter_dialog_property",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>x[8]||(x[8]=[e.createTextVNode("Property",-1)])),_:1,__:[8]}),e.createVNode(V,{id:"filter_dialog_property",modelValue:s.property,"onUpdate:modelValue":x[1]||(x[1]=B=>s.property=B)},null,8,["modelValue"])])]),e.createElementVNode("div",null,[e.createVNode(C,{class:"mb-1"},{default:e.withCtx(()=>x[9]||(x[9]=[e.createTextVNode("Options",-1)])),_:1,__:[9]}),x[16]||(x[16]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mb-2"}," Define all options for this filter. ",-1)),e.createVNode(U,{open:u.value,"onUpdate:open":x[5]||(x[5]=B=>u.value=B)},{default:e.withCtx(()=>[e.createVNode(S,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(_,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"mr-2 size-4"}),x[10]||(x[10]=e.createTextVNode(" Add option ",-1))]),_:1,__:[10]})]),_:1}),e.createVNode($,{class:"w-80"},{default:e.withCtx(()=>[e.createElementVNode("div",Lc,[e.createElementVNode("div",Uc,[e.createVNode(C,{for:"value",class:"text-right"},{default:e.withCtx(()=>x[11]||(x[11]=[e.createTextVNode(" Value ",-1)])),_:1,__:[11]}),e.createVNode(V,{id:"value",class:"col-span-3",modelValue:d.value,"onUpdate:modelValue":x[2]||(x[2]=B=>d.value=B)},null,8,["modelValue"])]),e.createElementVNode("div",jc,[e.createVNode(C,{for:"label",class:"text-right"},{default:e.withCtx(()=>x[12]||(x[12]=[e.createTextVNode(" Label ",-1)])),_:1,__:[12]}),e.createVNode(V,{id:"label",class:"col-span-3",modelValue:d.label,"onUpdate:modelValue":x[3]||(x[3]=B=>d.label=B)},null,8,["modelValue"])]),e.createElementVNode("div",$c,[e.createVNode(C,{for:"checked",class:"text-right"},{default:e.withCtx(()=>x[13]||(x[13]=[e.createTextVNode(" Checked by default ",-1)])),_:1,__:[13]}),e.createVNode(R,{id:"checked",class:"col-span-3 border-ring",modelValue:d.checked,"onUpdate:modelValue":x[4]||(x[4]=B=>d.checked=B)},null,8,["modelValue"])]),e.createElementVNode("div",Hc,[e.createVNode(_,{variant:"outline",onClick:g},{default:e.withCtx(()=>x[14]||(x[14]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[14]}),e.createVNode(_,{onClick:f},{default:e.withCtx(()=>x[15]||(x[15]=[e.createTextVNode(" Add option ",-1)])),_:1,__:[15]})])])]),_:1})]),_:1},8,["open"])]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.options,B=>(e.openBlock(),e.createElementBlock("div",{key:B.id,class:"grid grid-cols-4 items-center gap-4"},[e.createVNode(C,{for:"value",class:"text-right"},{default:e.withCtx(()=>x[17]||(x[17]=[e.createTextVNode(" Value ",-1)])),_:1,__:[17]}),e.createVNode(V,{id:"value",class:"col-span-3",modelValue:B.value,"onUpdate:modelValue":E=>B.value=E},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(_,{variant:"destructive",onClick:E=>m(B.id)},{default:e.withCtx(()=>x[18]||(x[18]=[e.createTextVNode(" Remove ",-1)])),_:2,__:[18]},1032,["onClick"])]))),128))]),e.createVNode(P,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(_,{key:0,variant:"destructive",onClick:v},{default:e.withCtx(()=>x[19]||(x[19]=[e.createTextVNode(" Remove Filter ",-1)])),_:1,__:[19]})):e.createCommentVNode("",!0),e.createVNode(_,{onClick:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Filter":"Save changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),Gc={class:"flex flex-wrap gap-2 mb-4"},Wc={class:"truncate w-full text-left font-medium"},Xc=["onClick"],Yc=e.defineComponent({__name:"Filters",setup(t){const n=e.inject("table"),o=e.inject("filters",e.ref([])),{getModuleData:r,setModuleData:l}=Z.useModuleStorage(),{isAdmin:a}=Z.useModulePermissions(),i=e.ref(),u=c=>{var m;let f=crypto.randomUUID();(!o.value||((m=o==null?void 0:o.value)==null?void 0:m.length)===0)&&(o.value=[]),o.value.push({...c,id:f}),l("filters",o.value)},s=c=>{o.value=o.value.map(f=>f.id===c.id?c:f),l("filters",o.value)},d=c=>{o.value=o.value.filter(f=>f.id!==c),l("filters",o.value)};return e.onMounted(async()=>{o.value=await r("filters")||[]}),(c,f)=>{const m=e.resolveComponent("Button"),p=e.resolveComponent("DropdownMenuTrigger"),g=e.resolveComponent("DropdownMenuCheckboxItem"),v=e.resolveComponent("DropdownMenuContent"),h=e.resolveComponent("DropdownMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Gc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),x=>(e.openBlock(),e.createElementBlock("div",{key:x.id,class:"flex flex-col items-start gap-1"},[e.createVNode(h,null,{default:e.withCtx(()=>[e.createVNode(p,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(m,{variant:"outline",class:"w-[180px] flex items-center justify-between"},{default:e.withCtx(()=>[e.createElementVNode("span",Wc,e.toDisplayString(x.label?x.label:"Filter by "+x.property),1),e.createVNode(e.unref(z.ChevronDown),{class:"size-4"})]),_:2},1024)]),_:2},1024),e.createVNode(v,{align:"start",onCloseAutoFocus:f[1]||(f[1]=b=>{console.log(b,"closeAutoFocus"),b.preventDefault()})},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.options,b=>(e.openBlock(),e.createBlock(g,{key:b.id,"model-value":b.checked,"onUpdate:modelValue":y=>{var C,V,_;b.checked=y;const N=(C=x.options)==null?void 0:C.filter(S=>S.checked).map(S=>S.value);(_=(V=e.unref(n))==null?void 0:V.getColumn(x.property))==null||_.setFilterValue(N!=null&&N.length?N:void 0)},onSelect:f[0]||(f[0]=y=>{y.preventDefault()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.label),1)]),_:2},1032,["model-value","onUpdate:modelValue"]))),128))]),_:2},1024)]),_:2},1024),e.unref(a)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:b=>i.value.openDialog(x)},"Settings",8,Xc)):e.createCommentVNode("",!0)]))),128)),e.unref(a)()?(e.openBlock(),e.createBlock(m,{key:0,variant:"outline",class:"border-dashed",onClick:f[2]||(f[2]=x=>i.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),f[6]||(f[6]=e.createTextVNode(" Add filter ",-1))]),_:1,__:[6]})):e.createCommentVNode("",!0)]),e.createVNode(qc,{ref_key:"filterDialog",ref:i,onFilterAdded:f[3]||(f[3]=x=>u(x)),onFilterEdited:f[4]||(f[4]=x=>s(x)),onFilterRemoved:f[5]||(f[5]=x=>d(x))},null,512)],64)}}}),Zc={class:"grid grid-cols-2 gap-2 mb-2 py-2"},Kc={class:"flex flex-col items-start gap-1.5"},Jc={class:"flex flex-col items-start gap-1.5"},Qc={class:"flex flex-col items-start gap-1.5 col-span-2"},ef=e.defineComponent({__name:"ActionDialog",emits:["actionAdded","actionEdited","actionRemoved"],setup(t,{expose:n,emit:o}){const r=o,l=e.ref(!1),a=e.ref("add"),i=e.ref(null),u=e.reactive({label:"",icon:"",visible:"true",flow:{}}),s=f=>{a.value=f?"edit":"add",i.value=f??null,u.label=(f==null?void 0:f.label)??"",u.icon=(f==null?void 0:f.icon)??"",u.visible=(f==null?void 0:f.visible)??"true",u.flow=(f==null?void 0:f.flow)??{},l.value=!0},d=()=>{console.log(u),a.value==="add"?r("actionAdded",u):r("actionEdited",{...u,id:i.value.id}),l.value=!1},c=()=>{r("actionRemoved",i.value.id),l.value=!1};return n({openDialog:s}),(f,m)=>{const p=e.resolveComponent("DialogTitle"),g=e.resolveComponent("DialogDescription"),v=e.resolveComponent("DialogHeader"),h=e.resolveComponent("Label"),x=e.resolveComponent("Input"),b=e.resolveComponent("LucideIconPicker"),y=e.resolveComponent("Sandbox"),N=e.resolveComponent("FlowBuilderSelect"),C=e.resolveComponent("Button"),V=e.resolveComponent("DialogFooter"),_=e.resolveComponent("DialogScrollContent"),S=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(S,{open:l.value,"onUpdate:open":m[4]||(m[4]=R=>l.value=R)},{default:e.withCtx(()=>[e.createVNode(_,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Action":"Edit Action"),1)]),_:1}),e.createVNode(g,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add a new row item action.":"Edit the selected row item action."),1)]),_:1})]),_:1}),e.createElementVNode("div",Zc,[e.createElementVNode("div",Kc,[e.createVNode(h,{for:"action_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[5]||(m[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(x,{id:"action_dialog_label",modelValue:u.label,"onUpdate:modelValue":m[0]||(m[0]=R=>u.label=R)},null,8,["modelValue"])]),e.createElementVNode("div",Jc,[e.createVNode(h,{for:"action_dialog_icon",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[6]||(m[6]=[e.createTextVNode("Icon",-1)])),_:1,__:[6]}),e.createVNode(b,{modelValue:u.icon,"onUpdate:modelValue":m[1]||(m[1]=R=>u.icon=R)},null,8,["modelValue"])]),e.createElementVNode("div",Qc,[e.createVNode(h,{class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[7]||(m[7]=[e.createTextVNode("Visible",-1)])),_:1,__:[7]}),e.createVNode(y,{modelValue:u.visible,"onUpdate:modelValue":m[2]||(m[2]=R=>u.visible=R),variables:[],placeholder:"true",class:"w-full max-h-[200px]"},null,8,["modelValue"])])]),e.createVNode(N,{modelValue:u.flow,"onUpdate:modelValue":m[3]||(m[3]=R=>u.flow=R),allAvailableVariables:[]},null,8,["modelValue"]),e.createVNode(V,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(C,{key:0,variant:"destructive",onClick:c},{default:e.withCtx(()=>m[8]||(m[8]=[e.createTextVNode(" Remove Action ",-1)])),_:1,__:[8]})):e.createCommentVNode("",!0),e.createVNode(C,{onClick:d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Action":"Save changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),tf={class:"grid gap-4 py-4"},nf=e.defineComponent({__name:"Actions",setup(t){const{setModuleData:n}=Z.useModuleStorage(),{isAdmin:o}=Z.useModulePermissions(),r=e.ref(),l=e.inject("itemActions",e.ref([])),a=s=>{var c;let d=crypto.randomUUID();(!l.value||((c=l==null?void 0:l.value)==null?void 0:c.length)===0)&&(l.value=[]),l.value.push({...s,id:d}),n("itemActions",l.value)},i=s=>{l.value=l.value.map(d=>d.id===s.id?s:d),n("itemActions",l.value)},u=s=>{l.value=l.value.filter(d=>d.id!==s),n("itemActions",l.value)};return(s,d)=>{const c=e.resolveComponent("Button"),f=e.resolveComponent("DialogTrigger"),m=e.resolveComponent("DialogTitle"),p=e.resolveComponent("DialogDescription"),g=e.resolveComponent("DialogHeader"),v=e.resolveComponent("DialogContent"),h=e.resolveComponent("Dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(o)()?(e.openBlock(),e.createBlock(h,{key:0},{default:e.withCtx(()=>[e.createVNode(f,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(c,{variant:"outline",class:"text-primary hover:text-primary"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.MousePointerClick),{class:"size-4"}),d[4]||(d[4]=e.createTextVNode(" Edit item actions ",-1))]),_:1,__:[4]})]),_:1}),e.createVNode(v,{class:"sm:max-w-[425px]"},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>d[5]||(d[5]=[e.createTextVNode("Edit item actions",-1)])),_:1,__:[5]}),e.createVNode(p,null,{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode(" Edit the item actions for this table. ",-1)])),_:1,__:[6]})]),_:1}),e.createVNode(c,{onClick:d[0]||(d[0]=x=>r.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),d[7]||(d[7]=e.createTextVNode(" Add action ",-1))]),_:1,__:[7]}),e.createElementVNode("div",tf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),x=>(e.openBlock(),e.createBlock(c,{key:x.id,onClick:b=>r.value.openDialog(x),variant:"outline"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(z.icons)[x.icon]))),e.createTextVNode(" "+e.toDisplayString(x.label),1)]),_:2},1032,["onClick"]))),128))])]),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(ef,{ref_key:"actionDialog",ref:r,onActionAdded:d[1]||(d[1]=x=>a(x)),onActionEdited:d[2]||(d[2]=x=>i(x)),onActionRemoved:d[3]||(d[3]=x=>u(x))},null,512)],64)}}}),of={class:"grid grid-cols-2 gap-2 mb-2 py-2"},rf={class:"flex flex-col items-start gap-1.5"},lf={class:"flex flex-col items-start gap-1.5"},af=e.defineComponent({__name:"CtaActionDialog",setup(t,{expose:n}){const{setModuleData:o}=Z.useModuleStorage(),r=e.inject("ctaButtonSettings",e.ref({})),l=e.ref(!1),a=e.ref("add"),i=e.ref(null),u=e.reactive({label:"",icon:"",flow:{}}),s=()=>{var m;let f=(m=r==null?void 0:r.value)!=null&&m.enabled?r==null?void 0:r.value:null;a.value=f?"edit":"add",i.value=f??null,u.label=(f==null?void 0:f.label)??"",u.icon=(f==null?void 0:f.icon)??"",u.flow=(f==null?void 0:f.flow)??{},l.value=!0},d=()=>{r.value={label:u.label,icon:u.icon,flow:u.flow,enabled:!0},o("ctaButtonSettings",r.value),l.value=!1},c=()=>{r.value={label:"",icon:"",flow:{},enabled:!1},o("ctaButtonSettings",r.value),l.value=!1};return n({openDialog:s}),(f,m)=>{const p=e.resolveComponent("DialogTitle"),g=e.resolveComponent("DialogDescription"),v=e.resolveComponent("DialogHeader"),h=e.resolveComponent("Label"),x=e.resolveComponent("Input"),b=e.resolveComponent("LucideIconPicker"),y=e.resolveComponent("FlowBuilderSelect"),N=e.resolveComponent("Button"),C=e.resolveComponent("DialogFooter"),V=e.resolveComponent("DialogScrollContent"),_=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(_,{open:l.value,"onUpdate:open":m[3]||(m[3]=S=>l.value=S)},{default:e.withCtx(()=>[e.createVNode(V,{class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Primary Button":"Edit Primary Button"),1)]),_:1}),e.createVNode(g,null,{default:e.withCtx(()=>m[4]||(m[4]=[e.createTextVNode(" Configure the main action button for this table module, like “+ New Item”. ",-1)])),_:1,__:[4]})]),_:1}),e.createElementVNode("div",of,[e.createElementVNode("div",rf,[e.createVNode(h,{for:"action_dialog_label",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[5]||(m[5]=[e.createTextVNode("Label",-1)])),_:1,__:[5]}),e.createVNode(x,{id:"action_dialog_label",modelValue:u.label,"onUpdate:modelValue":m[0]||(m[0]=S=>u.label=S)},null,8,["modelValue"])]),e.createElementVNode("div",lf,[e.createVNode(h,{for:"action_dialog_icon",class:"text-xs text-muted-foreground"},{default:e.withCtx(()=>m[6]||(m[6]=[e.createTextVNode("Icon",-1)])),_:1,__:[6]}),e.createVNode(b,{modelValue:u.icon,"onUpdate:modelValue":m[1]||(m[1]=S=>u.icon=S)},null,8,["modelValue"])])]),e.createVNode(y,{modelValue:u.flow,"onUpdate:modelValue":m[2]||(m[2]=S=>u.flow=S),allAvailableVariables:[]},null,8,["modelValue"]),e.createVNode(C,null,{default:e.withCtx(()=>[a.value==="edit"?(e.openBlock(),e.createBlock(N,{key:0,variant:"destructive",onClick:c},{default:e.withCtx(()=>m[7]||(m[7]=[e.createTextVNode(" Remove Button ",-1)])),_:1,__:[7]})):e.createCommentVNode("",!0),e.createVNode(N,{onClick:d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.value==="add"?"Add Button":"Save Changes"),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}}),sf={class:"relative"},uf={ref:"container",class:"flex flex-col items-start gap-4 w-full mt-12 mb-8"},df={class:"w-full flex gap-2 items-start"},cf={class:"w-full flex gap-2 items-start justify-between"},ff={class:"flex gap-2"},pf={key:1,class:"flex flex-col items-start gap-1"},mf=e.defineComponent({__name:"TableView",props:{config:{type:Object,required:!0}},setup(t){const n=t,o=Z.useModuleRoute(),{isAdmin:r}=Z.useModulePermissions(),{getModuleData:l}=Z.useModuleStorage(),{navigateTo:a}=Z.useModuleRoute(),{setModuleBreadcrumbs:i}=Z.useBreadcrumbs(),{runFlow:u}=Z.useFlowBuilder();i([]);const s=e.ref(),d=e.ref(),c=e.ref([]),f=e.ref([]),m=e.ref(),p=e.ref(!1),g=e.ref(""),v=e.ref(),h=e.ref([]),x=e.ref([]),b=e.ref({}),y=e.computed(()=>{var U,P;return(P=(U=n.config)==null?void 0:U.getItems)==null?void 0:P.integration}),N=async()=>{var B,E;const U=await l("dateRangeFilter");let P;return U&&(P={name:"dateRangeFilter",type:"dateRangeFilter",value:{from:(B=v.value)==null?void 0:B[0],to:(E=v.value)==null?void 0:E[1]}}),[...Object.entries(o.query).map(([I,X])=>({name:_(I),type:"routeQueryParam",value:X??null}))||[],P].filter(Boolean)},C=async()=>{var k,B;let U=(k=n.config)!=null&&k.getItems?JSON.parse(JSON.stringify((B=n.config)==null?void 0:B.getItems)):null;if(!U)return;const P=await N(),G=await u(U,P);c.value=G||[]},V=async()=>{f.value=await l("columns"),x.value=await l("itemActions")||[],b.value=await l("ctaButtonSettings")};function _(U){return U.replace(/-([a-z])/g,(P,G)=>G.toUpperCase())}const S=()=>{d.value.saveSortMode(),p.value=!1},R=async()=>{const U=await N(),P=await u(b.value.flow,U);console.log(P)},$=()=>{Wu(c.value,"data.csv")};return e.onMounted(()=>{C(),V()}),e.provide("data",c),e.provide("columns",f),e.provide("table",m),e.provide("sortMode",p),e.provide("sortModeProperty",g),e.provide("dateRangeFilter",v),e.provide("filters",h),e.provide("itemActions",x),e.provide("ctaButtonSettings",b),e.provide("integrationId",y),e.provide("getTableData",C),e.provide("saveSortMode",S),(U,P)=>{var k;const G=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",sf,[e.createElementVNode("div",uf,[e.createVNode(wd),e.createElementVNode("div",df,[e.createVNode(Ud),e.createVNode(Pc),e.createVNode(Yd),e.createVNode(Ld)]),e.createElementVNode("div",cf,[e.createVNode(Yc),e.createElementVNode("div",ff,[e.unref(r)()?(e.openBlock(),e.createBlock(nf,{key:0})):e.createCommentVNode("",!0),(k=b.value)!=null&&k.enabled?(e.openBlock(),e.createElementBlock("div",pf,[e.createVNode(G,{onClick:R},{default:e.withCtx(()=>{var B,E;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(z.icons)[(B=b.value)==null?void 0:B.icon]),{class:"size-4"})),e.createTextVNode(" "+e.toDisplayString((E=b.value)==null?void 0:E.label),1)]}),_:1}),e.unref(r)()?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-primary hover:underline",onClick:P[0]||(P[0]=B=>s.value.openDialog())},"Settings")):e.createCommentVNode("",!0)])):e.unref(r)()?(e.openBlock(),e.createBlock(G,{key:2,variant:"outline",class:"border-primary dark:border-primary border-dashed text-primary dark:text-primary",onClick:P[1]||(P[1]=B=>s.value.openDialog())},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),P[2]||(P[2]=e.createTextVNode(" Set primary button ",-1))]),_:1,__:[2]})):e.createCommentVNode("",!0)])]),e.createVNode(sd,{ref_key:"tableRef",ref:d},null,512),e.createVNode(G,{onClick:$},{default:e.withCtx(()=>P[3]||(P[3]=[e.createTextVNode(" Download data ",-1)])),_:1,__:[3]})],512)]),e.createVNode(af,{ref_key:"ctaActionDialog",ref:s},null,512)],64)}}}),gf=[{path:"",component:mf}],vf=[{key:"view-product-detail",name:"View product detail",description:"Team member can click on a product to view its details"},{key:"create-product",name:"Create product",description:"Team member can create a new product"},{key:"edit-product",name:"Edit product",description:"Team member can edit a product"},{key:"delete-product",name:"Delete product",description:"Team member can delete a product"},{key:"send-to-ai",name:"Send to AI",description:"Team member can send a table to AI"}],hf={component:Xs,metadata:Ys,config:Zs,routes:gf,permissions:vf},xf=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=Z.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),yf={name:"Products",description:"Manage products",icon:"mdi-table",version:"1.0.0"},Cf={project:{label:"Project",type:"resource",accept:["FIREBASE"]},productCollection:{label:"Product Collection",type:"input",default:"products"},collectionsCollection:{label:"Collections Collection",type:"input",default:"public/e-commerce:collections"},allowedMediaSources:{label:"Allowed Media Sources",type:"mediaSource",multiple:!0},defaultUploadMediaSource:{label:"Default Upload Media Source",type:"mediaSource",multiple:!1}},Vf={class:"@container mb-4"},wf={class:"grid @md:grid-cols-2 @2xl:grid-cols-3 @3xl:grid-cols-4 @4xl:grid-cols-5 @5xl:grid-cols-6 gap-6"},bf=["onClick"],_f={class:"aspect-square bg-muted rounded-xl overflow-hidden mb-2"},Nf=["src"],kf={class:"font-semibold"},Sf={class:"text-sm text-muted-foreground flex items-center gap-2"},Ef={class:"flex items-center gap-2"},Af={key:0},Tf=e.defineComponent({__name:"GridView",props:{products:{type:Array,required:!0}},setup(t){const{navigateTo:n}=Z.useModuleRoute(),{hasPermission:o}=Z.useModulePermissions();return(r,l)=>(e.openBlock(),e.createElementBlock("div",Vf,[e.createElementVNode("div",wf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.products,a=>(e.openBlock(),e.createElementBlock("div",{key:a.id,onClick:i=>e.unref(o)("view-product-detail")?e.unref(n)(a.id):null,class:e.normalizeClass({"cursor-pointer":e.unref(o)("view-product-detail")})},[e.createElementVNode("div",_f,[a.featuredMedia?(e.openBlock(),e.createElementBlock("img",{key:0,src:a.featuredMedia,class:"w-full h-full object-cover"},null,8,Nf)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createElementVNode("p",kf,e.toDisplayString(a.title),1),e.createElementVNode("p",Sf,[e.createElementVNode("span",Ef,[a.status==="published"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l[0]||(l[0]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-green-500"},null,-1)),l[1]||(l[1]=e.createTextVNode(" Published ",-1))],64)):a.status==="draft"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l[2]||(l[2]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-blue-500"},null,-1)),l[3]||(l[3]=e.createTextVNode(" Draft ",-1))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[l[4]||(l[4]=e.createElementVNode("span",{class:"block shrink-0 size-3 rounded-full bg-gray-300"},null,-1)),l[5]||(l[5]=e.createTextVNode(" Archived ",-1))],64))]),a.variantsTotal>1?(e.openBlock(),e.createElementBlock("span",Af,"| "+e.toDisplayString(a.variantsTotal)+" variants",1)):e.createCommentVNode("",!0)])])],10,bf))),128))])]))}}),Bf={class:"flex items-center gap-2"},Df={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Rf={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},If={key:2,class:"bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},Mf=e.defineComponent({__name:"ListView",props:{products:{type:Array,required:!0}},setup(t){const{navigateTo:n}=Z.useModuleRoute(),{hasPermission:o}=Z.useModulePermissions();return(r,l)=>{const a=e.resolveComponent("TableHead"),i=e.resolveComponent("TableRow"),u=e.resolveComponent("TableHeader"),s=e.resolveComponent("AvatarImage"),d=e.resolveComponent("AvatarFallback"),c=e.resolveComponent("Avatar"),f=e.resolveComponent("TableCell"),m=e.resolveComponent("TableBody"),p=e.resolveComponent("Table");return e.openBlock(),e.createBlock(p,null,{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(i,null,{default:e.withCtx(()=>[e.createVNode(a,{class:"w-[100px]"},{default:e.withCtx(()=>l[0]||(l[0]=[e.createTextVNode(" Title ",-1)])),_:1,__:[0]}),e.createVNode(a,null,{default:e.withCtx(()=>l[1]||(l[1]=[e.createTextVNode("Status",-1)])),_:1,__:[1]}),e.createVNode(a,null,{default:e.withCtx(()=>l[2]||(l[2]=[e.createTextVNode(" Variants",-1)])),_:1,__:[2]}),e.createVNode(a,{class:"text-right"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createTextVNode(" Price ",-1)])),_:1,__:[3]})]),_:1})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.products,g=>(e.openBlock(),e.createBlock(i,{key:g.id,onClick:v=>e.unref(o)("view-product-detail")?e.unref(n)(g.id):null,class:e.normalizeClass({"cursor-pointer":e.unref(o)("view-product-detail")})},{default:e.withCtx(()=>[e.createVNode(f,{class:"font-medium"},{default:e.withCtx(()=>[e.createElementVNode("div",Bf,[e.createVNode(c,{class:"size-12 rounded-xl"},{default:e.withCtx(()=>{var v;return[e.createVNode(s,{src:(v=g.media)==null?void 0:v[0],class:"object-cover"},null,8,["src"]),e.createVNode(d,{class:"rounded-xl"})]}),_:2},1024),e.createElementVNode("span",null,e.toDisplayString(g.title),1)])]),_:2},1024),e.createVNode(f,null,{default:e.withCtx(()=>[g.status==="published"?(e.openBlock(),e.createElementBlock("span",Df,"Published")):g.status==="draft"?(e.openBlock(),e.createElementBlock("span",Rf,"Draft")):g.status==="archived"?(e.openBlock(),e.createElementBlock("span",If,"Archived")):e.createCommentVNode("",!0)]),_:2},1024),e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.variantsTotal),1)]),_:2},1024),e.createVNode(f,{class:"text-right"},{default:e.withCtx(()=>[e.createTextVNode(" € "+e.toDisplayString(g.price||0),1)]),_:2},1024)]),_:2},1032,["onClick","class"]))),128))]),_:1})]),_:1})}}});function Pf(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}const Ff=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Dl=()=>{};function Of(t,n){function o(...r){return new Promise((l,a)=>{Promise.resolve(t(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(l).catch(a)})}return o}function zf(t,n={}){let o,r,l=Dl;const a=s=>{clearTimeout(s),l(),l=Dl};let i;return s=>{const d=e.toValue(t),c=e.toValue(n.maxWait);return o&&a(o),d<=0||c!==void 0&&c<=0?(r&&(a(r),r=void 0),Promise.resolve(s())):new Promise((f,m)=>{l=n.rejectOnCancel?m:f,i=s,c&&!r&&(r=setTimeout(()=>{o&&a(o),r=void 0,f(i())},c)),o=setTimeout(()=>{r&&a(r),r=void 0,f(s())},d)})}}function Lf(t){return Array.isArray(t)?t:[t]}function Uf(t){return e.getCurrentInstance()}function jf(t,n=200,o={}){return Of(zf(n,o),t)}function $f(t,n=!0,o){Uf()?e.onMounted(t,o):n?t():e.nextTick(t)}const ci=Ff?window:void 0;function Cn(t){var n;const o=e.toValue(t);return(n=o==null?void 0:o.$el)!=null?n:o}function Hf(){const t=e.shallowRef(!1),n=e.getCurrentInstance();return n&&e.onMounted(()=>{t.value=!0},n),t}function qf(t){const n=Hf();return e.computed(()=>(n.value,!!t()))}function Gf(t,n,o={}){const{window:r=ci,...l}=o;let a;const i=qf(()=>r&&"ResizeObserver"in r),u=()=>{a&&(a.disconnect(),a=void 0)},s=e.computed(()=>{const f=e.toValue(t);return Array.isArray(f)?f.map(m=>Cn(m)):[Cn(f)]}),d=e.watch(s,f=>{if(u(),i.value&&r){a=new ResizeObserver(n);for(const m of f)m&&a.observe(m,l)}},{immediate:!0,flush:"post"}),c=()=>{u(),d()};return Pf(c),{isSupported:i,stop:c}}function fi(t,n={width:0,height:0},o={}){const{window:r=ci,box:l="content-box"}=o,a=e.computed(()=>{var f,m;return(m=(f=Cn(t))==null?void 0:f.namespaceURI)==null?void 0:m.includes("svg")}),i=e.shallowRef(n.width),u=e.shallowRef(n.height),{stop:s}=Gf(t,([f])=>{const m=l==="border-box"?f.borderBoxSize:l==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(r&&a.value){const p=Cn(t);if(p){const g=p.getBoundingClientRect();i.value=g.width,u.value=g.height}}else if(m){const p=Lf(m);i.value=p.reduce((g,{inlineSize:v})=>g+v,0),u.value=p.reduce((g,{blockSize:v})=>g+v,0)}else i.value=f.contentRect.width,u.value=f.contentRect.height},o);$f(()=>{const f=Cn(t);f&&(i.value="offsetWidth"in f?f.offsetWidth:n.width,u.value="offsetHeight"in f?f.offsetHeight:n.height)});const d=e.watch(()=>Cn(t),f=>{i.value=f?n.width:0,u.value=f?n.height:0});function c(){s(),d()}return{width:i,height:u,stop:c}}const Wf={class:"relative"},Xf={ref:"container",class:"flex items-center justify-between gap-4 w-full mt-12 mb-8"},Yf={class:"flex items-center gap-4"},Zf={class:"text-lg whitespace-nowrap"},Kf={class:"relative w-full max-w-sm items-center"},Jf={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2"},Qf={class:"flex items-center gap-4"},ep={key:0},tp={key:1},np={key:2},op={key:3},rp={class:"relative w-full max-w-sm items-center"},lp={class:"flex items-center space-x-2 mb-4"},ap={class:"flex items-center space-x-2 mb-4"},ip={class:"flex items-center space-x-2 mb-4"},sp=e.defineComponent({__name:"Overview",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l}=Z.useModulePermissions(),{navigateTo:a}=Z.useModuleRoute(),{log:i,logWarning:u,logError:s}=Z.useLogs(),{setModuleBreadcrumbs:d}=Z.useBreadcrumbs();d([]);const c=Z.useFirebaseIntegration(r.config.project),f=e.ref([]),m=async()=>{const S=await c.find(r.config.productCollection);f.value=S||[]},p=e.useTemplateRef("container"),{width:g}=fi(p),v=e.ref("grid"),h=e.ref(1),x=e.computed(()=>v.value==="grid"?g.value<768?6:g.value<896?8:g.value<1024?10:12:10),b=e.computed(()=>f.value.filter(S=>{var R;return!(V.value.collections.length>0&&!((R=S.collections)!=null&&R.some($=>V.value.collections.includes($)))||!V.value.published&&S.status==="published"||!V.value.draft&&S.status==="draft"||!V.value.archived&&S.status==="archived")})),y=e.computed(()=>{if(b.value.length<=x.value)return b.value;const S=(h.value-1)*x.value,R=S+x.value;return b.value.slice(S,R)}),N=async()=>{if(!r.config.collectionsCollection)return[];const S=r.config.collectionsCollection.split(":");if(S.length!==2)return[];const R=await c.get(S[0]);return(R==null?void 0:R[S[1]])||[]},C=e.ref([]);C.value=([n,o]=e.withAsyncContext(()=>N()),n=await n,o(),n);const V=e.ref({collections:[],published:!0,draft:!0,archived:!1}),_=()=>{V.value={collections:[],published:!0,draft:!0,archived:!1}};return e.watch(V,()=>{h.value=1}),e.onMounted(()=>{i("Loaded products",{module:"products"}),u("Product saved without proper SEO",{module:"products"}),s("Product failed to save",{module:"products"}),m()}),(S,R)=>{var Be,ye,Re;const $=e.resolveComponent("Input"),U=e.resolveComponent("Button"),P=e.resolveComponent("PopoverTrigger"),G=e.resolveComponent("ComboboxTrigger"),k=e.resolveComponent("ComboboxAnchor"),B=e.resolveComponent("ComboboxInput"),E=e.resolveComponent("ComboboxEmpty"),I=e.resolveComponent("ComboboxItemIndicator"),X=e.resolveComponent("ComboboxItem"),le=e.resolveComponent("ScrollArea"),F=e.resolveComponent("ComboboxGroup"),T=e.resolveComponent("ComboboxList"),w=e.resolveComponent("Combobox"),A=e.resolveComponent("Checkbox"),L=e.resolveComponent("PopoverContent"),J=e.resolveComponent("Popover"),O=e.resolveComponent("SegmentedControlButton"),j=e.resolveComponent("SegmentedControl"),ae=e.resolveComponent("PaginationFirst"),q=e.resolveComponent("PaginationPrev"),ie=e.resolveComponent("PaginationListItem"),te=e.resolveComponent("PaginationEllipsis"),be=e.resolveComponent("PaginationNext"),qe=e.resolveComponent("PaginationLast"),Ge=e.resolveComponent("PaginationList"),$e=e.resolveComponent("Pagination");return e.openBlock(),e.createElementBlock("div",Wf,[e.createElementVNode("div",Xf,[e.createElementVNode("div",Yf,[e.createElementVNode("p",Zf,e.toDisplayString((Be=b.value)==null?void 0:Be.length)+" products",1),e.createElementVNode("div",Kf,[e.createVNode($,{id:"search",type:"text",placeholder:"Search...",class:"pl-8"}),e.createElementVNode("span",Jf,[e.createVNode(e.unref(z.Search),{class:"size-4 text-muted-foreground"})])])]),e.createElementVNode("div",Qf,[e.unref(l)("create-product")?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(U,{variant:"outline",onClick:R[0]||(R[0]=xe=>e.unref(a)("new"))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),R[7]||(R[7]=e.createTextVNode(" New Product ",-1))]),_:1,__:[7]}),R[8]||(R[8]=e.createElementVNode("div",{class:"w-[1px] h-8 bg-border"},null,-1))],64)):e.createCommentVNode("",!0),e.createVNode(J,null,{default:e.withCtx(()=>[e.createVNode(P,{asChild:""},{default:e.withCtx(()=>[e.createVNode(U,{variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Filter),{class:"size-4"}),R[9]||(R[9]=e.createTextVNode(" Filter ",-1))]),_:1,__:[9]})]),_:1}),e.createVNode(L,{class:"w-64"},{default:e.withCtx(()=>[R[15]||(R[15]=e.createElementVNode("p",{class:"text-sm font-medium text-muted-foreground mb-4"}," Filter by Collection ",-1)),e.createVNode(w,{modelValue:V.value.collections,"onUpdate:modelValue":R[1]||(R[1]=xe=>V.value.collections=xe),by:"id",multiple:!0,class:"mb-6"},{default:e.withCtx(()=>[e.createVNode(k,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(G,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(U,{variant:"outline",class:"justify-between w-full"},{default:e.withCtx(()=>{var xe,ke,Pe,lt,pt;return[V.value.collections.length===1?(e.openBlock(),e.createElementBlock("span",ep,e.toDisplayString((xe=C.value.find(Ue=>Ue.id===V.value.collections[0]))==null?void 0:xe.title),1)):V.value.collections.length===2?(e.openBlock(),e.createElementBlock("span",tp,e.toDisplayString((ke=C.value.find(Ue=>Ue.id===V.value.collections[0]))==null?void 0:ke.title)+", "+e.toDisplayString((Pe=C.value.find(Ue=>Ue.id===V.value.collections[1]))==null?void 0:Pe.title),1)):V.value.collections.length>2?(e.openBlock(),e.createElementBlock("span",np,e.toDisplayString((lt=C.value.find(Ue=>Ue.id===V.value.collections[0]))==null?void 0:lt.title)+", "+e.toDisplayString((pt=C.value.find(Ue=>Ue.id===V.value.collections[1]))==null?void 0:pt.title)+" + "+e.toDisplayString(V.value.collections.length-2),1)):(e.openBlock(),e.createElementBlock("span",op,"Select collection")),e.createVNode(e.unref(z.ChevronsUpDown),{class:"ml-2 size-4 shrink-0 opacity-50"})]}),_:1})]),_:1})]),_:1}),e.createVNode(T,null,{default:e.withCtx(()=>[e.createElementVNode("div",rp,[e.createVNode(B,{placeholder:"Select category..."})]),e.createVNode(E,null,{default:e.withCtx(()=>R[10]||(R[10]=[e.createTextVNode(" No category found. ",-1)])),_:1,__:[10]}),e.createVNode(F,null,{default:e.withCtx(()=>[e.createVNode(le,{class:"max-h-[200px] overflow-y-auto"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,xe=>(e.openBlock(),e.createBlock(X,{key:xe.id,value:xe.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(xe.title)+" ",1),e.createVNode(I,null,{default:e.withCtx(()=>[e.createVNode(e.unref(z.Check),{class:e.normalizeClass(e.unref(xt)("ml-auto size-4"))},null,8,["class"])]),_:1})]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),R[16]||(R[16]=e.createElementVNode("p",{class:"text-sm font-medium text-muted-foreground mb-4"}," Filter by Status ",-1)),e.createElementVNode("div",lp,[e.createVNode(A,{id:"chk_published_products",modelValue:V.value.published,"onUpdate:modelValue":R[2]||(R[2]=xe=>V.value.published=xe)},null,8,["modelValue"]),R[11]||(R[11]=e.createElementVNode("label",{for:"chk_published_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show published products ",-1))]),e.createElementVNode("div",ap,[e.createVNode(A,{id:"chk_draft_products",modelValue:V.value.draft,"onUpdate:modelValue":R[3]||(R[3]=xe=>V.value.draft=xe)},null,8,["modelValue"]),R[12]||(R[12]=e.createElementVNode("label",{for:"chk_draft_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show draft products ",-1))]),e.createElementVNode("div",ip,[e.createVNode(A,{id:"chk_archived_products",modelValue:V.value.archived,"onUpdate:modelValue":R[4]||(R[4]=xe=>V.value.archived=xe)},null,8,["modelValue"]),R[13]||(R[13]=e.createElementVNode("label",{for:"chk_archived_products",class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"}," Show archived products ",-1))]),V.value.collections.length>0||!V.value.published||!V.value.draft||V.value.archived?(e.openBlock(),e.createBlock(U,{key:0,variant:"secondary",class:"ml-auto my-2",size:"sm",onClick:_},{default:e.withCtx(()=>[e.createVNode(e.unref(z.RotateCcw),{class:"size-3"}),R[14]||(R[14]=e.createElementVNode("span",{class:"ml-0.5 text-xs"},"Reset filters",-1))]),_:1,__:[14]})):e.createCommentVNode("",!0)]),_:1,__:[15,16]})]),_:1}),R[17]||(R[17]=e.createElementVNode("div",{class:"w-[1px] h-8 bg-border"},null,-1)),e.createElementVNode("div",null,[e.createVNode(j,{modelValue:v.value,"onUpdate:modelValue":R[5]||(R[5]=xe=>v.value=xe),"aria-label":"View mode"},{default:e.withCtx(()=>[e.createVNode(O,{value:"grid"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.LayoutGrid),{class:"size-4"})]),_:1}),e.createVNode(O,{value:"list"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.List),{class:"size-4"})]),_:1})]),_:1},8,["modelValue"])])])],512),e.createElementVNode("div",null,[v.value==="grid"?(e.openBlock(),e.createBlock(Tf,{key:0,products:y.value},null,8,["products"])):(e.openBlock(),e.createBlock(Mf,{key:1,products:y.value},null,8,["products"]))]),((ye=b.value)==null?void 0:ye.length)>x.value?(e.openBlock(),e.createBlock($e,{key:0,page:h.value,"onUpdate:page":R[6]||(R[6]=xe=>h.value=xe),"items-per-page":x.value,total:(Re=b.value)==null?void 0:Re.length,"sibling-count":1,"show-edges":""},{default:e.withCtx(()=>[e.createVNode(Ge,{class:"flex items-center gap-1"},{default:e.withCtx(({items:xe})=>[e.createVNode(ae),e.createVNode(q),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(xe,(ke,Pe)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[ke.type==="page"?(e.openBlock(),e.createBlock(ie,{key:Pe,value:ke.value,"as-child":""},{default:e.withCtx(()=>[e.createVNode(U,{class:"size-10 p-0",variant:ke.value===h.value?"default":"outline"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(ke.value),1)]),_:2},1032,["variant"])]),_:2},1032,["value"])):(e.openBlock(),e.createBlock(te,{key:ke.type,index:Pe},null,8,["index"]))],64))),256)),e.createVNode(be),e.createVNode(qe)]),_:1})]),_:1},8,["page","items-per-page","total"])):e.createCommentVNode("",!0)])}}});/**
|
|
24
24
|
* vee-validate v4.15.1
|
|
25
25
|
* (c) 2025 Abdelrahman Awad
|
|
26
26
|
* @license MIT
|
|
27
|
-
*/function rt(t){return typeof t=="function"}function mi(t){return t==null}const Zt=t=>t!==null&&!!t&&typeof t=="object"&&!Array.isArray(t);function cl(t){return Number(t)>=0}function sf(t){const n=parseFloat(t);return isNaN(n)?t:n}function uf(t){return typeof t=="object"&&t!==null}function df(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}function Pl(t){if(!uf(t)||df(t)!=="[object Object]")return!1;if(Object.getPrototypeOf(t)===null)return!0;let n=t;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(t)===n}function ro(t,n){return Object.keys(n).forEach(o=>{if(Pl(n[o])&&Pl(t[o])){t[o]||(t[o]={}),ro(t[o],n[o]);return}t[o]=n[o]}),t}function Un(t){const n=t.split(".");if(!n.length)return"";let o=String(n[0]);for(let r=1;r<n.length;r++){if(cl(n[r])){o+=`[${n[r]}]`;continue}o+=`.${n[r]}`}return o}const cf={};function pf(t){return cf[t]}function Rl(t,n,o){typeof o.value=="object"&&(o.value=Be(o.value)),!o.enumerable||o.get||o.set||!o.configurable||!o.writable||n==="__proto__"?Object.defineProperty(t,n,o):t[n]=o.value}function Be(t){if(typeof t!="object")return t;var n=0,o,r,l,a=Object.prototype.toString.call(t);if(a==="[object Object]"?l=Object.create(t.__proto__||null):a==="[object Array]"?l=Array(t.length):a==="[object Set]"?(l=new Set,t.forEach(function(i){l.add(Be(i))})):a==="[object Map]"?(l=new Map,t.forEach(function(i,d){l.set(Be(d),Be(i))})):a==="[object Date]"?l=new Date(+t):a==="[object RegExp]"?l=new RegExp(t.source,t.flags):a==="[object DataView]"?l=new t.constructor(Be(t.buffer)):a==="[object ArrayBuffer]"?l=t.slice(0):a.slice(-6)==="Array]"&&(l=new t.constructor(t)),l){for(r=Object.getOwnPropertySymbols(t);n<r.length;n++)Rl(l,r[n],Object.getOwnPropertyDescriptor(t,r[n]));for(n=0,r=Object.getOwnPropertyNames(t);n<r.length;n++)Object.hasOwnProperty.call(l,o=r[n])&&l[o]===t[o]||Rl(l,o,Object.getOwnPropertyDescriptor(t,o))}return l||t}const pl=Symbol("vee-validate-form"),gi=Symbol("vee-validate-form-context"),ff=Symbol("vee-validate-field-instance"),Al=Symbol("Default empty value"),vi=typeof window<"u";function Or(t){return rt(t)&&!!t.__locatorRef}function xt(t){return!!t&&rt(t.parse)&&t.__type==="VVTypedSchema"}function To(t){return!!t&&rt(t.validate)}function hi(t){return t==="checkbox"||t==="radio"}function mf(t){return Zt(t)||Array.isArray(t)}function gf(t){return Array.isArray(t)?t.length===0:Zt(t)&&Object.keys(t).length===0}function po(t){return/^\[.+\]$/i.test(t)}function vf(t){return xi(t)&&t.multiple}function xi(t){return t.tagName==="SELECT"}function hf(t){return _i(t)&&t.target&&"submit"in t.target}function _i(t){return t?!!(typeof Event<"u"&&rt(Event)&&t instanceof Event||t&&t.srcElement):!1}function Ke(t,n){if(t===n)return!0;if(t&&n&&typeof t=="object"&&typeof n=="object"){if(t.constructor!==n.constructor)return!1;var o,r,l;if(Array.isArray(t)){if(o=t.length,o!=n.length)return!1;for(r=o;r--!==0;)if(!Ke(t[r],n[r]))return!1;return!0}if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(r of t.entries())if(!n.has(r[0]))return!1;for(r of t.entries())if(!Ke(r[1],n.get(r[0])))return!1;return!0}if(Ol(t)&&Ol(n))return!(t.size!==n.size||t.name!==n.name||t.lastModified!==n.lastModified||t.type!==n.type);if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(r of t.entries())if(!n.has(r[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(n)){if(o=t.length,o!=n.length)return!1;for(r=o;r--!==0;)if(t[r]!==n[r])return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(t=Fl(t),n=Fl(n),l=Object.keys(t),o=l.length,o!==Object.keys(n).length)return!1;for(r=o;r--!==0;)if(!Object.prototype.hasOwnProperty.call(n,l[r]))return!1;for(r=o;r--!==0;){var a=l[r];if(!Ke(t[a],n[a]))return!1}return!0}return t!==t&&n!==n}function Fl(t){return Object.fromEntries(Object.entries(t).filter(([,n])=>n!==void 0))}function Ol(t){return vi?t instanceof File:!1}function qo(t){return po(t)?t.replace(/\[|\]/gi,""):t}function lt(t,n,o){return t?po(n)?t[qo(n)]:(n||"").split(/\.|\[(\d+)\]/).filter(Boolean).reduce((l,a)=>mf(l)&&a in l?l[a]:o,t):o}function bt(t,n,o){if(po(n)){t[qo(n)]=o;return}const r=n.split(/\.|\[(\d+)\]/).filter(Boolean);let l=t;for(let a=0;a<r.length;a++){if(a===r.length-1){l[r[a]]=o;return}(!(r[a]in l)||mi(l[r[a]]))&&(l[r[a]]=cl(r[a+1])?[]:{}),l=l[r[a]]}}function Vr(t,n){if(Array.isArray(t)&&cl(n)){t.splice(Number(n),1);return}Zt(t)&&delete t[n]}function zl(t,n){if(po(n)){delete t[qo(n)];return}const o=n.split(/\.|\[(\d+)\]/).filter(Boolean);let r=t;for(let a=0;a<o.length;a++){if(a===o.length-1){Vr(r,o[a]);break}if(!(o[a]in r)||mi(r[o[a]]))break;r=r[o[a]]}const l=o.map((a,i)=>lt(t,o.slice(0,i).join(".")));for(let a=l.length-1;a>=0;a--)if(gf(l[a])){if(a===0){Vr(t,o[0]);continue}Vr(l[a-1],o[a-1])}}function nt(t){return Object.keys(t)}function yi(t,n=void 0){const o=e.getCurrentInstance();return(o==null?void 0:o.provides[t])||e.inject(t,n)}function xf(t,n,o){if(Array.isArray(t)){const r=[...t],l=r.findIndex(a=>Ke(a,n));return l>=0?r.splice(l,1):r.push(n),r}return Ke(t,n)?o:n}function _f(t,n){let o,r;return function(...l){const a=this;return o||(o=!0,setTimeout(()=>o=!1,n),r=t.apply(a,l)),r}}function Ll(t,n=0){let o=null,r=[];return function(...l){return o&&clearTimeout(o),o=setTimeout(()=>{const a=t(...l);r.forEach(i=>i(a)),r=[]},n),new Promise(a=>r.push(a))}}function yf(t,n){return Zt(n)&&n.number?sf(t):t}function zr(t,n){let o;return async function(...l){const a=t(...l);o=a;const i=await a;return a!==o?i:(o=void 0,n(i,l))}}function Lr(t){return Array.isArray(t)?t:t?[t]:[]}function _o(t,n){const o={};for(const r in t)n.includes(r)||(o[r]=t[r]);return o}function Vf(t){let n=null,o=[];return function(...r){const l=e.nextTick(()=>{if(n!==l)return;const a=t(...r);o.forEach(i=>i(a)),o=[],n=null});return n=l,new Promise(a=>o.push(a))}}function Cr(t){if(Vi(t))return t._value}function Vi(t){return"_value"in t}function Cf(t){return t.type==="number"||t.type==="range"?Number.isNaN(t.valueAsNumber)?t.value:t.valueAsNumber:t.value}function Do(t){if(!_i(t))return t;const n=t.target;if(hi(n.type)&&Vi(n))return Cr(n);if(n.type==="file"&&n.files){const o=Array.from(n.files);return n.multiple?o:o[0]}if(vf(n))return Array.from(n.options).filter(o=>o.selected&&!o.disabled).map(Cr);if(xi(n)){const o=Array.from(n.options).find(r=>r.selected);return o?Cr(o):n.value}return Cf(n)}function Ci(t){const n={};return Object.defineProperty(n,"_$$isNormalized",{value:!0,writable:!1,enumerable:!1,configurable:!1}),t?Zt(t)&&t._$$isNormalized?t:Zt(t)?Object.keys(t).reduce((o,r)=>{const l=bf(t[r]);return t[r]!==!1&&(o[r]=jl(l)),o},n):typeof t!="string"?n:t.split("|").reduce((o,r)=>{const l=wf(r);return l.name&&(o[l.name]=jl(l.params)),o},n):n}function bf(t){return t===!0?[]:Array.isArray(t)||Zt(t)?t:[t]}function jl(t){const n=o=>typeof o=="string"&&o[0]==="@"?Nf(o.slice(1)):o;return Array.isArray(t)?t.map(n):t instanceof RegExp?[t]:Object.keys(t).reduce((o,r)=>(o[r]=n(t[r]),o),{})}const wf=t=>{let n=[];const o=t.split(":")[0];return t.includes(":")&&(n=t.split(":").slice(1).join(":").split(",")),{name:o,params:n}};function Nf(t){const n=o=>{var r;return(r=lt(o,t))!==null&&r!==void 0?r:o[t]};return n.__locatorRef=t,n}function kf(t){return Array.isArray(t)?t.filter(Or):nt(t).filter(n=>Or(t[n])).map(n=>t[n])}const Sf={generateMessage:({field:t})=>`${t} is not valid.`,bails:!0,validateOnBlur:!0,validateOnChange:!0,validateOnInput:!1,validateOnModelUpdate:!0};let Ef=Object.assign({},Sf);const Hn=()=>Ef;async function bi(t,n,o={}){const r=o==null?void 0:o.bails,l={name:(o==null?void 0:o.name)||"{field}",rules:n,label:o==null?void 0:o.label,bails:r??!0,formData:(o==null?void 0:o.values)||{}},a=await Tf(l,t);return Object.assign(Object.assign({},a),{valid:!a.errors.length})}async function Tf(t,n){const o=t.rules;if(xt(o)||To(o))return Bf(n,Object.assign(Object.assign({},t),{rules:o}));if(rt(o)||Array.isArray(o)){const d={field:t.label||t.name,name:t.name,label:t.label,form:t.formData,value:n},s=Array.isArray(o)?o:[o],u=s.length,c=[];for(let p=0;p<u;p++){const m=s[p],f=await m(n,d);if(!(typeof f!="string"&&!Array.isArray(f)&&f)){if(Array.isArray(f))c.push(...f);else{const g=typeof f=="string"?f:Ni(d);c.push(g)}if(t.bails)return{errors:c}}}return{errors:c}}const r=Object.assign(Object.assign({},t),{rules:Ci(o)}),l=[],a=Object.keys(r.rules),i=a.length;for(let d=0;d<i;d++){const s=a[d],u=await $f(r,n,{name:s,params:r.rules[s]});if(u.error&&(l.push(u.error),t.bails))return{errors:l}}return{errors:l}}function Df(t){return!!t&&t.name==="ValidationError"}function wi(t){return{__type:"VVTypedSchema",async parse(o,r){var l;try{return{output:await t.validate(o,{abortEarly:!1,context:(r==null?void 0:r.formData)||{}}),errors:[]}}catch(a){if(!Df(a))throw a;if(!(!((l=a.inner)===null||l===void 0)&&l.length)&&a.errors.length)return{errors:[{path:a.path,errors:a.errors}]};const i=a.inner.reduce((d,s)=>{const u=s.path||"";return d[u]||(d[u]={errors:[],path:u}),d[u].errors.push(...s.errors),d},{});return{errors:Object.values(i)}}}}}async function Bf(t,n){const r=await(xt(n.rules)?n.rules:wi(n.rules)).parse(t,{formData:n.formData}),l=[];for(const a of r.errors)a.errors.length&&l.push(...a.errors);return{value:r.value,errors:l}}async function $f(t,n,o){const r=pf(o.name);if(!r)throw new Error(`No such validator '${o.name}' exists.`);const l=If(o.params,t.formData),a={field:t.label||t.name,name:t.name,label:t.label,value:n,form:t.formData,rule:Object.assign(Object.assign({},o),{params:l})},i=await r(n,l,a);return typeof i=="string"?{error:i}:{error:i?void 0:Ni(a)}}function Ni(t){const n=Hn().generateMessage;return n?n(t):"Field is invalid"}function If(t,n){const o=r=>Or(r)?r(n):r;return Array.isArray(t)?t.map(o):Object.keys(t).reduce((r,l)=>(r[l]=o(t[l]),r),{})}async function Mf(t,n){const r=await(xt(t)?t:wi(t)).parse(Be(n),{formData:Be(n)}),l={},a={};for(const i of r.errors){const d=i.errors,s=(i.path||"").replace(/\["(\d+)"\]/g,(u,c)=>`[${c}]`);l[s]={valid:!d.length,errors:d},d.length&&(a[s]=d[0])}return{valid:!r.errors.length,results:l,errors:a,values:r.value,source:"schema"}}async function Pf(t,n,o){const l=nt(t).map(async u=>{var c,p,m;const f=(c=o==null?void 0:o.names)===null||c===void 0?void 0:c[u],v=await bi(lt(n,u),t[u],{name:(f==null?void 0:f.name)||u,label:f==null?void 0:f.label,values:n,bails:(m=(p=o==null?void 0:o.bailsMap)===null||p===void 0?void 0:p[u])!==null&&m!==void 0?m:!0});return Object.assign(Object.assign({},v),{path:u})});let a=!0;const i=await Promise.all(l),d={},s={};for(const u of i)d[u.path]={valid:u.valid,errors:u.errors},u.valid||(a=!1,s[u.path]=u.errors[0]);return{valid:a,results:d,errors:s,source:"schema"}}let Ul=0;function Rf(t,n){const{value:o,initialValue:r,setInitialValue:l}=Af(t,n.modelValue,n.form);if(!n.form){let m=function(f){var v;"value"in f&&(o.value=f.value),"errors"in f&&u(f.errors),"touched"in f&&(p.touched=(v=f.touched)!==null&&v!==void 0?v:p.touched),"initialValue"in f&&l(f.initialValue)};const{errors:s,setErrors:u}=zf(),c=Ul>=Number.MAX_SAFE_INTEGER?0:++Ul,p=Of(o,r,s,n.schema);return{id:c,path:t,value:o,initialValue:r,meta:p,flags:{pendingUnmount:{[c]:!1},pendingReset:!1},errors:s,setState:m}}const a=n.form.createPathState(t,{bails:n.bails,label:n.label,type:n.type,validate:n.validate,schema:n.schema}),i=e.computed(()=>a.errors);function d(s){var u,c,p;"value"in s&&(o.value=s.value),"errors"in s&&((u=n.form)===null||u===void 0||u.setFieldError(e.unref(t),s.errors)),"touched"in s&&((c=n.form)===null||c===void 0||c.setFieldTouched(e.unref(t),(p=s.touched)!==null&&p!==void 0?p:!1)),"initialValue"in s&&l(s.initialValue)}return{id:Array.isArray(a.id)?a.id[a.id.length-1]:a.id,path:t,value:o,errors:i,meta:a,initialValue:r,flags:a.__flags,setState:d}}function Af(t,n,o){const r=e.ref(e.unref(n));function l(){return o?lt(o.initialValues.value,e.unref(t),e.unref(r)):e.unref(r)}function a(u){if(!o){r.value=u;return}o.setFieldInitialValue(e.unref(t),u,!0)}const i=e.computed(l);if(!o)return{value:e.ref(l()),initialValue:i,setInitialValue:a};const d=Ff(n,o,i,t);return o.stageInitialValue(e.unref(t),d,!0),{value:e.computed({get(){return lt(o.values,e.unref(t))},set(u){o.setFieldValue(e.unref(t),u,!1)}}),initialValue:i,setInitialValue:a}}function Ff(t,n,o,r){return e.isRef(t)?e.unref(t):t!==void 0?t:lt(n.values,e.unref(r),e.unref(o))}function Of(t,n,o,r){const l=e.computed(()=>{var i,d,s;return(s=(d=(i=e.toValue(r))===null||i===void 0?void 0:i.describe)===null||d===void 0?void 0:d.call(i).required)!==null&&s!==void 0?s:!1}),a=e.reactive({touched:!1,pending:!1,valid:!0,required:l,validated:!!e.unref(o).length,initialValue:e.computed(()=>e.unref(n)),dirty:e.computed(()=>!Ke(e.unref(t),e.unref(n)))});return e.watch(o,i=>{a.valid=!i.length},{immediate:!0,flush:"sync"}),a}function zf(){const t=e.ref([]);return{errors:t,setErrors:n=>{t.value=Lr(n)}}}const Xn={},Jn={},Kn="vee-validate-inspector",ot={error:12405579,success:448379,unknown:5522283,white:16777215,black:0,blue:218007,purple:12157168,orange:16099682,gray:12304330};let Ge=null,$t;async function ki(t){if(process.env.NODE_ENV!=="production"){if(!vi)return;(await Promise.resolve().then(()=>require("./index-DEgppVnR.js"))).setupDevtoolsPlugin({id:"vee-validate-devtools-plugin",label:"VeeValidate Plugin",packageName:"vee-validate",homepage:"https://vee-validate.logaretm.com/v4",app:t,logo:"https://vee-validate.logaretm.com/v4/logo.png"},o=>{$t=o,o.addInspector({id:Kn,icon:"rule",label:"vee-validate",noSelectionText:"Select a vee-validate node to inspect",actions:[{icon:"done_outline",tooltip:"Validate selected item",action:async()=>{if(!Ge){console.error("There is not a valid selected vee-validate node or component");return}if(Ge.type==="field"){await Ge.field.validate();return}if(Ge.type==="form"){await Ge.form.validate();return}Ge.type==="pathState"&&await Ge.form.validateField(Ge.state.path)}},{icon:"delete_sweep",tooltip:"Clear validation state of the selected item",action:()=>{if(!Ge){console.error("There is not a valid selected vee-validate node or component");return}if(Ge.type==="field"){Ge.field.resetField();return}Ge.type==="form"&&Ge.form.resetForm(),Ge.type==="pathState"&&Ge.form.resetField(Ge.state.path)}}]}),o.on.getInspectorTree(r=>{if(r.inspectorId!==Kn)return;const l=Object.values(Xn),a=Object.values(Jn);r.rootNodes=[...l.map(Uf),...a.map(i=>Gf(i))]}),o.on.getInspectorState(r=>{if(r.inspectorId!==Kn)return;const{form:l,field:a,state:i,type:d}=qf(r.nodeId);if(o.unhighlightElement(),l&&d==="form"){r.state=Wf(l),Ge={type:"form",form:l},o.highlightElement(l._vm);return}if(i&&d==="pathState"&&l){r.state=Hl(i),Ge={type:"pathState",state:i,form:l};return}if(a&&d==="field"){r.state=Hl({errors:a.errors.value,dirty:a.meta.dirty,valid:a.meta.valid,touched:a.meta.touched,value:a.value.value,initialValue:a.meta.initialValue}),Ge={field:a,type:"field"},o.highlightElement(a._vm);return}Ge=null,o.unhighlightElement()})})}}const Sn=_f(()=>{setTimeout(async()=>{await e.nextTick(),$t==null||$t.sendInspectorState(Kn),$t==null||$t.sendInspectorTree(Kn)},100)},100);function Lf(t){const n=e.getCurrentInstance();if(!$t){const o=n==null?void 0:n.appContext.app;if(!o)return;ki(o)}Xn[t.formId]=Object.assign({},t),Xn[t.formId]._vm=n,e.onUnmounted(()=>{delete Xn[t.formId],Sn()}),Sn()}function jf(t){const n=e.getCurrentInstance();if(!$t){const o=n==null?void 0:n.appContext.app;if(!o)return;ki(o)}Jn[t.id]=Object.assign({},t),Jn[t.id]._vm=n,e.onUnmounted(()=>{delete Jn[t.id],Sn()}),Sn()}function Uf(t){const{textColor:n,bgColor:o}=Ei(t.meta.value.valid),r={};Object.values(t.getAllPathStates()).forEach(i=>{bt(r,e.toValue(i.path),Hf(i,t))});function l(i,d=[]){const s=[...d].pop();return"id"in i?Object.assign(Object.assign({},i),{label:s||i.label}):Zt(i)?{id:`${d.join(".")}`,label:s||"",children:Object.keys(i).map(u=>l(i[u],[...d,u]))}:Array.isArray(i)?{id:`${d.join(".")}`,label:`${s}[]`,children:i.map((u,c)=>l(u,[...d,String(c)]))}:{id:"",label:"",children:[]}}const{children:a}=l(r);return{id:fl(t),label:t.name,children:a,tags:[{label:"Form",textColor:n,backgroundColor:o},{label:`${t.getAllPathStates().length} fields`,textColor:ot.white,backgroundColor:ot.unknown}]}}function Hf(t,n){return{id:fl(n,t),label:e.toValue(t.path),tags:Si(t.multiple,t.fieldsCount,t.type,t.valid,n)}}function Gf(t,n){return{id:fl(n,t),label:e.unref(t.name),tags:Si(!1,1,t.type,t.meta.valid,n)}}function Si(t,n,o,r,l){const{textColor:a,bgColor:i}=Ei(r);return[t?void 0:{label:"Field",textColor:a,backgroundColor:i},l?void 0:{label:"Standalone",textColor:ot.black,backgroundColor:ot.gray},o==="checkbox"?{label:"Checkbox",textColor:ot.white,backgroundColor:ot.blue}:void 0,o==="radio"?{label:"Radio",textColor:ot.white,backgroundColor:ot.purple}:void 0,t?{label:"Multiple",textColor:ot.black,backgroundColor:ot.orange}:void 0].filter(Boolean)}function fl(t,n){const o=n?"path"in n?"pathState":"field":"form",r=n?"path"in n?n==null?void 0:n.path:e.toValue(n==null?void 0:n.name):"",l={f:t==null?void 0:t.formId,ff:(n==null?void 0:n.id)||r,type:o};return btoa(encodeURIComponent(JSON.stringify(l)))}function qf(t){try{const n=JSON.parse(decodeURIComponent(atob(t))),o=Xn[n.f];if(!o&&n.ff){const l=Jn[n.ff];return l?{type:n.type,field:l}:{}}if(!o)return{};const r=o.getPathState(n.ff);return{type:n.type,form:o,state:r}}catch{}return{}}function Hl(t){return{"Field state":[{key:"errors",value:t.errors},{key:"initialValue",value:t.initialValue},{key:"currentValue",value:t.value},{key:"touched",value:t.touched},{key:"dirty",value:t.dirty},{key:"valid",value:t.valid}]}}function Wf(t){const{errorBag:n,meta:o,values:r,isSubmitting:l,isValidating:a,submitCount:i}=t;return{"Form state":[{key:"submitCount",value:i.value},{key:"isSubmitting",value:l.value},{key:"isValidating",value:a.value},{key:"touched",value:o.value.touched},{key:"dirty",value:o.value.dirty},{key:"valid",value:o.value.valid},{key:"initialValues",value:o.value.initialValues},{key:"currentValues",value:r},{key:"errors",value:nt(n.value).reduce((d,s)=>{var u;const c=(u=n.value[s])===null||u===void 0?void 0:u[0];return c&&(d[s]=c),d},{})}]}}function Ei(t){return{bgColor:t?ot.success:ot.error,textColor:t?ot.black:ot.white}}function Se(t,n,o){return hi(void 0)?Yf(t,n):Ti(t,n)}function Ti(t,n,o){const{initialValue:r,validateOnMount:l,bails:a,type:i,checkedValue:d,label:s,validateOnValueUpdate:u,uncheckedValue:c,controlled:p,keepValueOnUnmount:m,syncVModel:f,form:v}=Zf(),g=p?yi(pl):void 0,h=v||g,y=e.computed(()=>Un(e.toValue(t))),b=e.computed(()=>{if(e.toValue(h==null?void 0:h.schema))return;const W=e.unref(n);return To(W)||xt(W)||rt(W)||Array.isArray(W)?W:Ci(W)}),_=!rt(b.value)&&xt(e.toValue(n)),{id:k,value:x,initialValue:C,meta:N,setState:B,errors:z,flags:Y}=Rf(y,{modelValue:r,form:h,bails:a,label:s,type:i,validate:b.value?P:void 0,schema:_?n:void 0}),R=e.computed(()=>z.value[0]);f&&Xf({value:x,prop:f,handleChange:M,shouldValidate:()=>u&&!Y.pendingReset});const T=(O,W=!1)=>{N.touched=!0,W&&S()};async function U(O){var W,se;if(h!=null&&h.validateSchema){const{results:G}=await h.validateSchema(O);return(W=G[e.toValue(y)])!==null&&W!==void 0?W:{valid:!0,errors:[]}}return b.value?bi(x.value,b.value,{name:e.toValue(y),label:e.toValue(s),values:(se=h==null?void 0:h.values)!==null&&se!==void 0?se:{},bails:a}):{valid:!0,errors:[]}}const S=zr(async()=>(N.pending=!0,N.validated=!0,U("validated-only")),O=>(Y.pendingUnmount[L.id]||(B({errors:O.errors}),N.pending=!1,N.valid=O.valid),O)),j=zr(async()=>U("silent"),O=>(N.valid=O.valid,O));function P(O){return(O==null?void 0:O.mode)==="silent"?j():S()}function M(O,W=!0){const se=Do(O);E(se,W)}e.onMounted(()=>{if(l)return S();(!h||!h.validateSchema)&&j()});function K(O){N.touched=O}function A(O){var W;const se=O&&"value"in O?O.value:C.value;B({value:Be(se),initialValue:Be(se),touched:(W=O==null?void 0:O.touched)!==null&&W!==void 0?W:!1,errors:(O==null?void 0:O.errors)||[]}),N.pending=!1,N.validated=!1,j()}const w=e.getCurrentInstance();function E(O,W=!0){x.value=w&&f?yf(O,w.props.modelModifiers):O,(W?S:j)()}function V(O){B({errors:Array.isArray(O)?O:[O]})}const D=e.computed({get(){return x.value},set(O){E(O,u)}}),L={id:k,name:y,label:s,value:D,meta:N,errors:z,errorMessage:R,type:i,checkedValue:d,uncheckedValue:c,bails:a,keepValueOnUnmount:m,resetField:A,handleReset:()=>A(),validate:P,handleChange:M,handleBlur:T,setState:B,setTouched:K,setErrors:V,setValue:E};if(e.provide(ff,L),e.isRef(n)&&typeof e.unref(n)!="function"&&e.watch(n,(O,W)=>{Ke(O,W)||(N.validated?S():j())},{deep:!0}),process.env.NODE_ENV!=="production"&&(L._vm=e.getCurrentInstance(),e.watch(()=>Object.assign(Object.assign({errors:z.value},N),{value:x.value}),Sn,{deep:!0}),h||jf(L)),!h)return L;const ee=e.computed(()=>{const O=b.value;return!O||rt(O)||To(O)||xt(O)||Array.isArray(O)?{}:Object.keys(O).reduce((W,se)=>{const G=kf(O[se]).map(ue=>ue.__locatorRef).reduce((ue,te)=>{const we=lt(h.values,te)||h.values[te];return we!==void 0&&(ue[te]=we),ue},{});return Object.assign(W,G),W},{})});return e.watch(ee,(O,W)=>{if(!Object.keys(O).length)return;!Ke(O,W)&&(N.validated?S():j())}),e.onBeforeUnmount(()=>{var O;const W=(O=e.toValue(L.keepValueOnUnmount))!==null&&O!==void 0?O:e.toValue(h.keepValuesOnUnmount),se=e.toValue(y);if(W||!h||Y.pendingUnmount[L.id]){h==null||h.removePathState(se,k);return}Y.pendingUnmount[L.id]=!0;const G=h.getPathState(se);if(Array.isArray(G==null?void 0:G.id)&&(G!=null&&G.multiple)?G!=null&&G.id.includes(L.id):(G==null?void 0:G.id)===L.id){if(G!=null&&G.multiple&&Array.isArray(G.value)){const te=G.value.findIndex(we=>Ke(we,e.toValue(L.checkedValue)));if(te>-1){const we=[...G.value];we.splice(te,1),h.setFieldValue(se,we)}Array.isArray(G.id)&&G.id.splice(G.id.indexOf(L.id),1)}else h.unsetPathValue(e.toValue(y));h.removePathState(se,k)}}),L}function Zf(t){return Object.assign(Object.assign({},{initialValue:void 0,validateOnMount:!1,bails:!0,label:void 0,validateOnValueUpdate:!0,keepValueOnUnmount:void 0,syncVModel:!1,controlled:!0}),{initialValue:void 0})}function Yf(t,n,o){const r=yi(pl),l=void 0,a=void 0;function i(d){const s=d.handleChange,u=e.computed(()=>{const p=e.toValue(d.value),m=e.toValue(l);return Array.isArray(p)?p.findIndex(f=>Ke(f,m))>=0:Ke(m,p)});function c(p,m=!0){var f,v;if(u.value===((f=p==null?void 0:p.target)===null||f===void 0?void 0:f.checked)){m&&d.validate();return}const g=e.toValue(t),h=r==null?void 0:r.getPathState(g),y=Do(p);let b=(v=e.toValue(l))!==null&&v!==void 0?v:y;r&&(h!=null&&h.multiple)&&h.type==="checkbox"&&(b=xf(lt(r.values,g)||[],b,void 0)),s(b,m)}return Object.assign(Object.assign({},d),{checked:u,checkedValue:l,uncheckedValue:a,handleChange:c})}return i(Ti(t,n))}function Xf({prop:t,value:n,handleChange:o,shouldValidate:r}){const l=e.getCurrentInstance();if(!l||!t){process.env.NODE_ENV!=="production"&&console.warn("Failed to setup model events because `useField` was not called in setup.");return}const a=typeof t=="string"?t:"modelValue",i=`update:${a}`;a in l.props&&(e.watch(n,d=>{Ke(d,Gl(l,a))||l.emit(i,d)}),e.watch(()=>Gl(l,a),d=>{if(d===Al&&n.value===void 0)return;const s=d===Al?void 0:d;Ke(s,n.value)||o(s,r())}))}function Gl(t,n){if(t)return t.props[n]}let Jf=0;const yo=["bails","fieldsCount","id","multiple","type","validate"];function Di(t){const n=(t==null?void 0:t.initialValues)||{},o=Object.assign({},e.toValue(n)),r=e.unref(t==null?void 0:t.validationSchema);return r&&xt(r)&&rt(r.cast)?Be(r.cast(o)||{}):Be(o)}function Bi(t){var n;const o=Jf++,r=(t==null?void 0:t.name)||"Form";let l=0;const a=e.ref(!1),i=e.ref(!1),d=e.ref(0),s=[],u=e.reactive(Di(t)),c=e.ref([]),p=e.ref({}),m=e.ref({}),f=Vf(()=>{m.value=c.value.reduce(($,I)=>($[Un(e.toValue(I.path))]=I,$),{})});function v($,I){const q=M($);if(!q){typeof $=="string"&&(p.value[Un($)]=Lr(I));return}if(typeof $=="string"){const ne=Un($);p.value[ne]&&delete p.value[ne]}q.errors=Lr(I),q.valid=!q.errors.length}function g($){nt($).forEach(I=>{v(I,$[I])})}t!=null&&t.initialErrors&&g(t.initialErrors);const h=e.computed(()=>{const $=c.value.reduce((I,q)=>(q.errors.length&&(I[e.toValue(q.path)]=q.errors),I),{});return Object.assign(Object.assign({},p.value),$)}),y=e.computed(()=>nt(h.value).reduce(($,I)=>{const q=h.value[I];return q!=null&&q.length&&($[I]=q[0]),$},{})),b=e.computed(()=>c.value.reduce(($,I)=>($[e.toValue(I.path)]={name:e.toValue(I.path)||"",label:I.label||""},$),{})),_=e.computed(()=>c.value.reduce(($,I)=>{var q;return $[e.toValue(I.path)]=(q=I.bails)!==null&&q!==void 0?q:!0,$},{})),k=Object.assign({},(t==null?void 0:t.initialErrors)||{}),x=(n=t==null?void 0:t.keepValuesOnUnmount)!==null&&n!==void 0?n:!1,{initialValues:C,originalInitialValues:N,setInitialValues:B}=Qf(c,u,t),z=Kf(c,u,N,y),Y=e.computed(()=>c.value.reduce(($,I)=>{const q=lt(u,e.toValue(I.path));return bt($,e.toValue(I.path),q),$},{})),R=t==null?void 0:t.validationSchema;function T($,I){var q,ne;const de=e.computed(()=>lt(C.value,e.toValue($))),he=m.value[e.toValue($)],fe=(I==null?void 0:I.type)==="checkbox"||(I==null?void 0:I.type)==="radio";if(he&&fe){he.multiple=!0;const dt=l++;return Array.isArray(he.id)?he.id.push(dt):he.id=[he.id,dt],he.fieldsCount++,he.__flags.pendingUnmount[dt]=!1,he}const Re=e.computed(()=>lt(u,e.toValue($))),He=e.toValue($),Ze=A.findIndex(dt=>dt===He);Ze!==-1&&A.splice(Ze,1);const Me=e.computed(()=>{var dt,Rn,rr,lr;const ar=e.toValue(R);if(xt(ar))return(Rn=(dt=ar.describe)===null||dt===void 0?void 0:dt.call(ar,e.toValue($)).required)!==null&&Rn!==void 0?Rn:!1;const ir=e.toValue(I==null?void 0:I.schema);return xt(ir)&&(lr=(rr=ir.describe)===null||rr===void 0?void 0:rr.call(ir).required)!==null&&lr!==void 0?lr:!1}),Ye=l++,tt=e.reactive({id:Ye,path:$,touched:!1,pending:!1,valid:!0,validated:!!(!((q=k[He])===null||q===void 0)&&q.length),required:Me,initialValue:de,errors:e.shallowRef([]),bails:(ne=I==null?void 0:I.bails)!==null&&ne!==void 0?ne:!1,label:I==null?void 0:I.label,type:(I==null?void 0:I.type)||"default",value:Re,multiple:!1,__flags:{pendingUnmount:{[Ye]:!1},pendingReset:!1},fieldsCount:1,validate:I==null?void 0:I.validate,dirty:e.computed(()=>!Ke(e.unref(Re),e.unref(de)))});return c.value.push(tt),m.value[He]=tt,f(),y.value[He]&&!k[He]&&e.nextTick(()=>{Ie(He,{mode:"silent"})}),e.isRef($)&&e.watch($,dt=>{f();const Rn=Be(Re.value);m.value[dt]=tt,e.nextTick(()=>{bt(u,dt,Rn)})}),tt}const U=Ll(H,5),S=Ll(H,5),j=zr(async $=>await($==="silent"?U():S()),($,[I])=>{const q=nt(W.errorBag.value),de=[...new Set([...nt($.results),...c.value.map(he=>he.path),...q])].sort().reduce((he,fe)=>{var Re;const He=fe,Ze=M(He)||K(He),Me=((Re=$.results[He])===null||Re===void 0?void 0:Re.errors)||[],Ye=e.toValue(Ze==null?void 0:Ze.path)||He,tt=em({errors:Me,valid:!Me.length},he.results[Ye]);return he.results[Ye]=tt,tt.valid||(he.errors[Ye]=tt.errors[0]),Ze&&p.value[Ye]&&delete p.value[Ye],Ze?(Ze.valid=tt.valid,I==="silent"||I==="validated-only"&&!Ze.validated||v(Ze,tt.errors),he):(v(Ye,Me),he)},{valid:$.valid,results:{},errors:{},source:$.source});return $.values&&(de.values=$.values,de.source=$.source),nt(de.results).forEach(he=>{var fe;const Re=M(he);Re&&I!=="silent"&&(I==="validated-only"&&!Re.validated||v(Re,(fe=de.results[he])===null||fe===void 0?void 0:fe.errors))}),de});function P($){c.value.forEach($)}function M($){const I=typeof $=="string"?Un($):$;return typeof I=="string"?m.value[I]:I}function K($){return c.value.filter(q=>$.startsWith(e.toValue(q.path))).reduce((q,ne)=>q?ne.path.length>q.path.length?ne:q:ne,void 0)}let A=[],w;function E($){return A.push($),w||(w=e.nextTick(()=>{[...A].sort().reverse().forEach(q=>{zl(u,q)}),A=[],w=null})),w}function V($){return function(q,ne){return function(he){return he instanceof Event&&(he.preventDefault(),he.stopPropagation()),P(fe=>fe.touched=!0),a.value=!0,d.value++,Oe().then(fe=>{const Re=Be(u);if(fe.valid&&typeof q=="function"){const He=Be(Y.value);let Ze=$?He:Re;return fe.values&&(Ze=fe.source==="schema"?fe.values:Object.assign({},Ze,fe.values)),q(Ze,{evt:he,controlledValues:He,setErrors:g,setFieldError:v,setTouched:De,setFieldTouched:we,setValues:ue,setFieldValue:se,resetForm:Fe,resetField:Ve})}!fe.valid&&typeof ne=="function"&&ne({values:Re,evt:he,errors:fe.errors,results:fe.results})}).then(fe=>(a.value=!1,fe),fe=>{throw a.value=!1,fe})}}}const L=V(!1);L.withControlled=V(!0);function ee($,I){const q=c.value.findIndex(de=>de.path===$&&(Array.isArray(de.id)?de.id.includes(I):de.id===I)),ne=c.value[q];if(!(q===-1||!ne)){if(e.nextTick(()=>{Ie($,{mode:"silent",warn:!1})}),ne.multiple&&ne.fieldsCount&&ne.fieldsCount--,Array.isArray(ne.id)){const de=ne.id.indexOf(I);de>=0&&ne.id.splice(de,1),delete ne.__flags.pendingUnmount[I]}(!ne.multiple||ne.fieldsCount<=0)&&(c.value.splice(q,1),Ue($),f(),delete m.value[$])}}function O($){nt(m.value).forEach(I=>{I.startsWith($)&&delete m.value[I]}),c.value=c.value.filter(I=>!I.path.startsWith($)),e.nextTick(()=>{f()})}const W={name:r,formId:o,values:u,controlledValues:Y,errorBag:h,errors:y,schema:R,submitCount:d,meta:z,isSubmitting:a,isValidating:i,fieldArrays:s,keepValuesOnUnmount:x,validateSchema:e.unref(R)?j:void 0,validate:Oe,setFieldError:v,validateField:Ie,setFieldValue:se,setValues:ue,setErrors:g,setFieldTouched:we,setTouched:De,resetForm:Fe,resetField:Ve,handleSubmit:L,useFieldModel:ae,defineInputBinds:ie,defineComponentBinds:Ee,defineField:qe,stageInitialValue:Vt,unsetInitialValue:Ue,setFieldInitialValue:Ct,createPathState:T,getPathState:M,unsetPathValue:E,removePathState:ee,initialValues:C,getAllPathStates:()=>c.value,destroyPath:O,isFieldTouched:je,isFieldDirty:ye,isFieldValid:$e};function se($,I,q=!0){const ne=Be(I),de=typeof $=="string"?$:$.path;M(de)||T(de),bt(u,de,ne),q&&Ie(de)}function G($,I=!0){nt(u).forEach(q=>{delete u[q]}),nt($).forEach(q=>{se(q,$[q],!1)}),I&&Oe()}function ue($,I=!0){ro(u,$),s.forEach(q=>q&&q.reset()),I&&Oe()}function te($,I){const q=M(e.toValue($))||T($);return e.computed({get(){return q.value},set(ne){var de;const he=e.toValue($);se(he,ne,(de=e.toValue(I))!==null&&de!==void 0?de:!1)}})}function we($,I){const q=M($);q&&(q.touched=I)}function je($){const I=M($);return I?I.touched:c.value.filter(q=>q.path.startsWith($)).some(q=>q.touched)}function ye($){const I=M($);return I?I.dirty:c.value.filter(q=>q.path.startsWith($)).some(q=>q.dirty)}function $e($){const I=M($);return I?I.valid:c.value.filter(q=>q.path.startsWith($)).every(q=>q.valid)}function De($){if(typeof $=="boolean"){P(I=>{I.touched=$});return}nt($).forEach(I=>{we(I,!!$[I])})}function Ve($,I){var q;const ne=I&&"value"in I?I.value:lt(C.value,$),de=M($);de&&(de.__flags.pendingReset=!0),Ct($,Be(ne),!0),se($,ne,!1),we($,(q=I==null?void 0:I.touched)!==null&&q!==void 0?q:!1),v($,(I==null?void 0:I.errors)||[]),e.nextTick(()=>{de&&(de.__flags.pendingReset=!1)})}function Fe($,I){let q=Be($!=null&&$.values?$.values:N.value);q=I!=null&&I.force?q:ro(N.value,q),q=xt(R)&&rt(R.cast)?R.cast(q):q,B(q,{force:I==null?void 0:I.force}),P(ne=>{var de;ne.__flags.pendingReset=!0,ne.validated=!1,ne.touched=((de=$==null?void 0:$.touched)===null||de===void 0?void 0:de[e.toValue(ne.path)])||!1,se(e.toValue(ne.path),lt(q,e.toValue(ne.path)),!1),v(e.toValue(ne.path),void 0)}),I!=null&&I.force?G(q,!1):ue(q,!1),g(($==null?void 0:$.errors)||{}),d.value=($==null?void 0:$.submitCount)||0,e.nextTick(()=>{Oe({mode:"silent"}),P(ne=>{ne.__flags.pendingReset=!1})})}async function Oe($){const I=($==null?void 0:$.mode)||"force";if(I==="force"&&P(fe=>fe.validated=!0),W.validateSchema)return W.validateSchema(I);i.value=!0;const q=await Promise.all(c.value.map(fe=>fe.validate?fe.validate($).then(Re=>({key:e.toValue(fe.path),valid:Re.valid,errors:Re.errors,value:Re.value})):Promise.resolve({key:e.toValue(fe.path),valid:!0,errors:[],value:void 0})));i.value=!1;const ne={},de={},he={};for(const fe of q)ne[fe.key]={valid:fe.valid,errors:fe.errors},fe.value&&bt(he,fe.key,fe.value),fe.errors.length&&(de[fe.key]=fe.errors[0]);return{valid:q.every(fe=>fe.valid),results:ne,errors:de,values:he,source:"fields"}}async function Ie($,I){var q;const ne=M($);if(ne&&(I==null?void 0:I.mode)!=="silent"&&(ne.validated=!0),R){const{results:he}=await j((I==null?void 0:I.mode)||"validated-only");return he[$]||{errors:[],valid:!0}}return ne!=null&&ne.validate?ne.validate(I):(!ne&&((q=I==null?void 0:I.warn)!==null&&q!==void 0?q:!0)&&process.env.NODE_ENV!=="production"&&e.warn(`field with path ${$} was not found`),Promise.resolve({errors:[],valid:!0}))}function Ue($){zl(C.value,$)}function Vt($,I,q=!1){Ct($,I),bt(u,$,I),q&&!(t!=null&&t.initialValues)&&bt(N.value,$,Be(I))}function Ct($,I,q=!1){bt(C.value,$,Be(I)),q&&bt(N.value,$,Be(I))}async function H(){const $=e.unref(R);if(!$)return{valid:!0,results:{},errors:{},source:"none"};i.value=!0;const I=To($)||xt($)?await Mf($,u):await Pf($,u,{names:b.value,bailsMap:_.value});return i.value=!1,I}const Ce=L(($,{evt:I})=>{hf(I)&&I.target.submit()});e.onMounted(()=>{if(t!=null&&t.initialErrors&&g(t.initialErrors),t!=null&&t.initialTouched&&De(t.initialTouched),t!=null&&t.validateOnMount){Oe();return}W.validateSchema&&W.validateSchema("silent")}),e.isRef(R)&&e.watch(R,()=>{var $;($=W.validateSchema)===null||$===void 0||$.call(W,"validated-only")}),e.provide(pl,W),process.env.NODE_ENV!=="production"&&(Lf(W),e.watch(()=>Object.assign(Object.assign({errors:h.value},z.value),{values:u,isSubmitting:a.value,isValidating:i.value,submitCount:d.value}),Sn,{deep:!0}));function qe($,I){const q=rt(I)||I==null?void 0:I.label,ne=M(e.toValue($))||T($,{label:q}),de=()=>rt(I)?I(_o(ne,yo)):I||{};function he(){var Me;ne.touched=!0,((Me=de().validateOnBlur)!==null&&Me!==void 0?Me:Hn().validateOnBlur)&&Ie(e.toValue(ne.path))}function fe(){var Me;((Me=de().validateOnInput)!==null&&Me!==void 0?Me:Hn().validateOnInput)&&e.nextTick(()=>{Ie(e.toValue(ne.path))})}function Re(){var Me;((Me=de().validateOnChange)!==null&&Me!==void 0?Me:Hn().validateOnChange)&&e.nextTick(()=>{Ie(e.toValue(ne.path))})}const He=e.computed(()=>{const Me={onChange:Re,onInput:fe,onBlur:he};return rt(I)?Object.assign(Object.assign({},Me),I(_o(ne,yo)).props||{}):I!=null&&I.props?Object.assign(Object.assign({},Me),I.props(_o(ne,yo))):Me});return[te($,()=>{var Me,Ye,tt;return(tt=(Me=de().validateOnModelUpdate)!==null&&Me!==void 0?Me:(Ye=Hn())===null||Ye===void 0?void 0:Ye.validateOnModelUpdate)!==null&&tt!==void 0?tt:!0}),He]}function ae($){return Array.isArray($)?$.map(I=>te(I,!0)):te($)}function ie($,I){const[q,ne]=qe($,I);function de(){ne.value.onBlur()}function he(Re){const He=Do(Re);se(e.toValue($),He,!1),ne.value.onInput()}function fe(Re){const He=Do(Re);se(e.toValue($),He,!1),ne.value.onChange()}return e.computed(()=>Object.assign(Object.assign({},ne.value),{onBlur:de,onInput:he,onChange:fe,value:q.value}))}function Ee($,I){const[q,ne]=qe($,I),de=M(e.toValue($));function he(fe){q.value=fe}return e.computed(()=>{const fe=rt(I)?I(_o(de,yo)):I||{};return Object.assign({[fe.model||"modelValue"]:q.value,[`onUpdate:${fe.model||"modelValue"}`]:he},ne.value)})}const Te=Object.assign(Object.assign({},W),{values:e.readonly(u),handleReset:()=>Fe(),submitForm:Ce});return e.provide(gi,Te),Te}function Kf(t,n,o,r){const l={touched:"some",pending:"some",valid:"every"},a=e.computed(()=>!Ke(n,e.unref(o)));function i(){const s=t.value;return nt(l).reduce((u,c)=>{const p=l[c];return u[c]=s[p](m=>m[c]),u},{})}const d=e.reactive(i());return e.watchEffect(()=>{const s=i();d.touched=s.touched,d.valid=s.valid,d.pending=s.pending}),e.computed(()=>Object.assign(Object.assign({initialValues:e.unref(o)},d),{valid:d.valid&&!nt(r.value).length,dirty:a.value}))}function Qf(t,n,o){const r=Di(o),l=e.ref(r),a=e.ref(Be(r));function i(d,s){s!=null&&s.force?(l.value=Be(d),a.value=Be(d)):(l.value=ro(Be(l.value)||{},Be(d)),a.value=ro(Be(a.value)||{},Be(d))),s!=null&&s.updateFields&&t.value.forEach(u=>{if(u.touched)return;const p=lt(l.value,e.toValue(u.path));bt(n,e.toValue(u.path),Be(p))})}return{initialValues:l,originalInitialValues:a,setInitialValues:i}}function em(t,n){return n?{valid:t.valid&&n.valid,errors:[...t.errors,...n.errors]}:t}function Tt(){return e.inject(gi)}const tm={class:"flex flex-col gap-4"},nm={class:"flex flex-col gap-2"},om={key:0,class:"text-red-500 text-sm mt-1"},rm={class:"flex flex-col gap-4"},lm={class:"flex flex-col gap-2"},am={key:0,class:"text-red-500 text-sm mt-1"},im={class:"flex flex-col gap-4"},sm={class:"flex flex-col gap-2"},um={key:0,class:"text-red-500 text-sm mt-1"},dm=e.defineComponent({__name:"Main",setup(t){const n=e.inject("sources"),o=e.inject("defaultSource"),{errors:r}=Tt(),{value:l}=Se("title"),{value:a}=Se("description"),{value:i}=Se("media");return(d,s)=>{const u=e.resolveComponent("Label"),c=e.resolveComponent("Input"),p=e.resolveComponent("Textarea"),m=e.resolveComponent("MediaPicker"),f=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(f,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[e.createElementVNode("div",tm,[e.createElementVNode("div",nm,[e.createVNode(u,{for:"title",class:"text-sm mb-2"},{default:e.withCtx(()=>s[3]||(s[3]=[e.createTextVNode("Title",-1)])),_:1,__:[3]}),e.createVNode(c,{type:"text",id:"title",placeholder:"T-shirt with red heart",modelValue:e.unref(l),"onUpdate:modelValue":s[0]||(s[0]=g=>e.isRef(l)?l.value=g:null)},null,8,["modelValue"]),e.unref(r).title?(e.openBlock(),e.createElementBlock("p",om,e.toDisplayString(e.unref(r).title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",rm,[e.createElementVNode("div",lm,[e.createVNode(u,{for:"description",class:"text-sm mb-2"},{default:e.withCtx(()=>s[4]||(s[4]=[e.createTextVNode("Description",-1)])),_:1,__:[4]}),e.createVNode(p,{id:"description",placeholder:"T-shirt with red heart",modelValue:e.unref(a),"onUpdate:modelValue":s[1]||(s[1]=g=>e.isRef(a)?a.value=g:null)},null,8,["modelValue"]),e.unref(r).description?(e.openBlock(),e.createElementBlock("p",am,e.toDisplayString(e.unref(r).description),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",im,[e.createElementVNode("div",sm,[e.createVNode(u,{for:"media",class:"text-sm mb-2"},{default:e.withCtx(()=>s[5]||(s[5]=[e.createTextVNode("Media",-1)])),_:1,__:[5]}),e.createVNode(m,{id:"media",modelValue:e.unref(i),"onUpdate:modelValue":s[2]||(s[2]=g=>e.isRef(i)?i.value=g:null),sources:e.unref(n),defaultSource:e.unref(o)},null,8,["modelValue","sources","defaultSource"]),e.unref(r).media?(e.openBlock(),e.createElementBlock("p",um,e.toDisplayString(e.unref(r).media),1)):e.createCommentVNode("",!0)])])]),_:1})]),_:1})}}}),cm={class:"grid grid-cols-3 gap-4 py-4"},pm={class:"flex flex-col gap-0.5"},fm={class:"flex items-center gap-2"},mm={class:"flex flex-col gap-0.5"},gm={class:"flex items-center gap-2"},vm={class:"flex flex-col gap-0.5"},hm={class:"flex items-center gap-2"},xm=e.defineComponent({__name:"UnitPriceDialog",setup(t){const n=e.reactive({totalMeasure:{amount:"",unit:""},baseMeasure:{amount:"",unit:""}}),o=[{label:"Weight",units:[{value:"milligram",label:"Milligram (mg)",shortLabel:"mg"},{value:"gram",label:"Gram (g)",shortLabel:"g"},{value:"kilogram",label:"Kilogram (kg)",default:!0,shortLabel:"kg"}]},{label:"Volume",units:[{value:"milliliter",label:"Milliliter (ml)",shortLabel:"ml"},{value:"centiliter",label:"Centiliter (cl)",shortLabel:"cl"},{value:"liter",label:"Liter (L)",default:!0,shortLabel:"L"},{value:"cubic-meter",label:"Cubic Meter (m³)",shortLabel:"m³"}]},{label:"Size",units:[{value:"millimeter",label:"Millimeter (mm)",shortLabel:"mm"},{value:"centimeter",label:"Centimeter (cm)",shortLabel:"cm"},{value:"meter",label:"Meter (m)",default:!0,shortLabel:"m"}]},{label:"Area",units:[{value:"square-meter",label:"Square Meter (m²)",shortLabel:"m²",default:!0}]},{label:"Per Item",units:[{value:"item",label:"Item (item)",shortLabel:"item",default:!0}]}],r=e.computed(()=>o.find(l=>l.units.some(a=>a.value===n.totalMeasure.unit)));return e.watch(r,l=>{var a;l&&(l.label==="Volume"&&n.totalMeasure.unit==="cubic-meter"?n.baseMeasure.unit="cubic-meter":n.baseMeasure.unit=((a=l.units.find(i=>i.default))==null?void 0:a.value)||"")}),(l,a)=>{const i=e.resolveComponent("Button"),d=e.resolveComponent("DialogTrigger"),s=e.resolveComponent("DialogTitle"),u=e.resolveComponent("DialogHeader"),c=e.resolveComponent("Label"),p=e.resolveComponent("Input"),m=e.resolveComponent("SelectTrigger"),f=e.resolveComponent("SelectLabel"),v=e.resolveComponent("SelectItem"),g=e.resolveComponent("SelectGroup"),h=e.resolveComponent("SelectSeparator"),y=e.resolveComponent("SelectContent"),b=e.resolveComponent("Select"),_=e.resolveComponent("DialogFooter"),k=e.resolveComponent("DialogContent"),x=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(x,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[e.createVNode(i,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle)),a[4]||(a[4]=e.createTextVNode(" Add unit price ",-1))]),_:1,__:[4]})])]),_:3}),e.createVNode(k,{class:"sm:max-w-3xl"},{default:e.withCtx(()=>{var C;return[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>a[5]||(a[5]=[e.createTextVNode("Add unit price",-1)])),_:1,__:[5]})]),_:1}),e.createElementVNode("div",cm,[e.createElementVNode("div",pm,[e.createVNode(c,{for:"unit-price-dialog--total-measure-amount",class:"text-sm mb-2 text-muted-foreground"},{default:e.withCtx(()=>a[6]||(a[6]=[e.createTextVNode("Total measure",-1)])),_:1,__:[6]}),e.createElementVNode("div",fm,[e.createVNode(p,{modelValue:n.totalMeasure.amount,"onUpdate:modelValue":a[0]||(a[0]=N=>n.totalMeasure.amount=N),placeholder:"0",id:"unit-price-dialog--total-measure-amount"},null,8,["modelValue"]),e.createVNode(b,{modelValue:n.totalMeasure.unit,"onUpdate:modelValue":a[1]||(a[1]=N=>n.totalMeasure.unit=N)},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>{var N,B;return[e.createTextVNode(e.toDisplayString(((B=(N=r.value)==null?void 0:N.units.find(z=>z.value===n.totalMeasure.unit))==null?void 0:B.shortLabel)||"unit"),1)]}),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(o,(N,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:N.label},[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),_:2},1024),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.units,z=>(e.openBlock(),e.createBlock(v,{key:z.value,value:z.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(z.label),1)]),_:2},1032,["value"]))),128))]),_:2},1024),B<o.length-1?(e.openBlock(),e.createBlock(h,{key:0})):e.createCommentVNode("",!0)],64))),64))]),_:1})]),_:1},8,["modelValue"])])]),e.createElementVNode("div",mm,[e.createVNode(c,{for:"unit-price-dialog--base-measure-amount",class:"text-sm mb-2 text-muted-foreground"},{default:e.withCtx(()=>a[7]||(a[7]=[e.createTextVNode("Base measure",-1)])),_:1,__:[7]}),e.createElementVNode("div",gm,[e.createVNode(p,{modelValue:n.baseMeasure.amount,"onUpdate:modelValue":a[2]||(a[2]=N=>n.baseMeasure.amount=N),placeholder:"0",id:"unit-price-dialog--base-measure-amount"},null,8,["modelValue"]),e.createVNode(b,{modelValue:n.baseMeasure.unit,"onUpdate:modelValue":a[3]||(a[3]=N=>n.baseMeasure.unit=N),disabled:!((C=r.value)!=null&&C.units)||r.value.units.length<2},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>{var N,B;return[e.createTextVNode(e.toDisplayString(((B=(N=r.value)==null?void 0:N.units.find(z=>z.value===n.baseMeasure.unit))==null?void 0:B.shortLabel)||"unit"),1)]}),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(g,{key:0},{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value.label),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.units,N=>(e.openBlock(),e.createBlock(v,{key:N.value,value:N.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),_:2},1032,["value"]))),128))]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue","disabled"])])]),e.createElementVNode("div",vm,[a[8]||(a[8]=e.createElementVNode("div",{class:"text-sm mb-2 text-muted-foreground"},"Unit price",-1)),e.createElementVNode("div",hm,[e.createVNode(p,{disabled:""})])])]),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline"},{default:e.withCtx(()=>a[9]||(a[9]=[e.createTextVNode("Cancel",-1)])),_:1,__:[9]}),e.createVNode(i,{type:"submit"},{default:e.withCtx(()=>a[10]||(a[10]=[e.createTextVNode("Done",-1)])),_:1,__:[10]})]),_:1})]}),_:1})]),_:3})}}}),_m={class:"grid grid-cols-2 gap-4 mb-4"},ym={class:"relative"},Vm={key:0,class:"text-red-500 text-sm mt-1"},Cm={class:"relative"},bm={class:"absolute right-2 top-1/2 -translate-y-1/2"},wm={key:0,class:"text-red-500 text-sm mt-1"},Nm={class:"flex items-center gap-2 mb-4"},km={class:"flex items-center border-t mt-4 pt-4"},Sm={class:"relative"},Em={key:0,class:"text-red-500 text-sm mt-1"},Tm=e.defineComponent({__name:"Price",setup(t){const{errors:n}=Tt(),{value:o}=Se("price"),{value:r}=Se("compareAtPrice"),{value:l}=Se("isTaxable"),{value:a}=Se("costPerItem"),i=computed(()=>Number(o.value)>0);return(d,s)=>{const u=e.resolveComponent("Label"),c=e.resolveComponent("Input"),p=e.resolveComponent("TooltipTrigger"),m=e.resolveComponent("TooltipContent"),f=e.resolveComponent("Tooltip"),v=e.resolveComponent("Checkbox"),g=e.resolveComponent("Button"),h=e.resolveComponent("CardContent"),y=e.resolveComponent("Card");return e.openBlock(),e.createBlock(y,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[s[13]||(s[13]=e.createElementVNode("p",{class:"text-md font-semibold mb-4"},"Pricing",-1)),e.createElementVNode("div",_m,[e.createElementVNode("div",null,[e.createVNode(u,{for:"price",class:"text-sm mb-2"},{default:e.withCtx(()=>s[4]||(s[4]=[e.createTextVNode("Price",-1)])),_:1,__:[4]}),e.createElementVNode("div",ym,[e.createVNode(c,{type:"number",id:"price",class:"pl-10 no-spinner",modelValue:e.unref(o),"onUpdate:modelValue":s[0]||(s[0]=b=>e.isRef(o)?o.value=b:null)},null,8,["modelValue"]),s[5]||(s[5]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).price?(e.openBlock(),e.createElementBlock("p",Vm,e.toDisplayString(e.unref(n).price),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(u,{for:"compare-at-price",class:"text-sm mb-2"},{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("Compare-at price",-1)])),_:1,__:[6]}),e.createElementVNode("div",Cm,[e.createVNode(c,{type:"number",id:"compare-at-price",class:"pl-10 no-spinner",modelValue:e.unref(r),"onUpdate:modelValue":s[1]||(s[1]=b=>e.isRef(r)?r.value=b:null)},null,8,["modelValue"]),s[8]||(s[8]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1)),e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(p,{"as-child":""},{default:e.withCtx(()=>[e.createElementVNode("button",bm,[e.createVNode(e.unref(F.Info),{class:"size-4 text-muted-foreground"})])]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createElementVNode("p",null,[e.createTextVNode(" To display a markdown, enter a value higher than your price."),e.createElementVNode("br"),e.createTextVNode(" Often shown with a strikethrough (e.g. "),e.createElementVNode("span",{class:"font-semibold line-through"},"€25,00"),e.createTextVNode("). ")],-1)])),_:1,__:[7]})]),_:1})]),e.unref(n).compareAtPrice?(e.openBlock(),e.createElementBlock("p",wm,e.toDisplayString(e.unref(n).compareAtPrice),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Nm,[e.createVNode(v,{id:"charge-tax",modelValue:e.unref(l),"onUpdate:modelValue":s[2]||(s[2]=b=>e.isRef(l)?l.value=b:null)},null,8,["modelValue"]),e.createVNode(u,{for:"charge-tax",class:"text-sm"},{default:e.withCtx(()=>s[9]||(s[9]=[e.createTextVNode("Charge tax on this product",-1)])),_:1,__:[9]})]),e.createVNode(xm,null,{default:e.withCtx(()=>[e.createVNode(g,{variant:"ghost",size:"sm",disabled:!e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle)),s[10]||(s[10]=e.createTextVNode(" Add unit price ",-1))]),_:1,__:[10]},8,["disabled"])]),_:1}),e.createElementVNode("div",km,[e.createElementVNode("div",null,[e.createVNode(u,{for:"cost-per-item",class:"text-sm mb-2"},{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("Cost per item",-1)])),_:1,__:[11]}),e.createElementVNode("div",Sm,[e.createVNode(c,{type:"number",id:"cost-per-item",class:"pl-10 no-spinner",modelValue:e.unref(a),"onUpdate:modelValue":s[3]||(s[3]=b=>e.isRef(a)?a.value=b:null)},null,8,["modelValue"]),s[12]||(s[12]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).costPerItem?(e.openBlock(),e.createElementBlock("p",Em,e.toDisplayString(e.unref(n).costPerItem),1)):e.createCommentVNode("",!0)])])]),_:1,__:[13]})]),_:1})}}}),Dm={class:"grid grid-cols-2 gap-4 mb-4"},Bm={class:"flex items-center gap-2 mb-4"},$m={class:"flex items-center gap-2"},Im=e.defineComponent({__name:"Inventory",setup(t){const{errors:n}=Tt(),{value:o}=Se("sku"),{value:r}=Se("barcode"),{value:l}=Se("trackInventory"),{value:a}=Se("allowBackorder");return(i,d)=>{const s=e.resolveComponent("Label"),u=e.resolveComponent("Input"),c=e.resolveComponent("Checkbox"),p=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[d[8]||(d[8]=e.createElementVNode("p",{class:"text-md font-semibold mb-4"},"Inventory",-1)),e.createElementVNode("div",Dm,[e.createElementVNode("div",null,[e.createVNode(s,{for:"sku",class:"text-sm mb-2"},{default:e.withCtx(()=>d[4]||(d[4]=[e.createTextVNode("SKU (Stock Keeping Unit)",-1)])),_:1,__:[4]}),e.createVNode(u,{id:"sku",modelValue:e.unref(o),"onUpdate:modelValue":d[0]||(d[0]=f=>e.isRef(o)?o.value=f:null)},null,8,["modelValue"])]),e.createElementVNode("div",null,[e.createVNode(s,{for:"barcode",class:"text-sm mb-2"},{default:e.withCtx(()=>d[5]||(d[5]=[e.createTextVNode("Barcode (ISBN, UPC, GTIN, etc.)",-1)])),_:1,__:[5]}),e.createVNode(u,{id:"barcode",modelValue:e.unref(r),"onUpdate:modelValue":d[1]||(d[1]=f=>e.isRef(r)?r.value=f:null)},null,8,["modelValue"])])]),e.createElementVNode("div",Bm,[e.createVNode(c,{id:"track-quantity",modelValue:e.unref(l),"onUpdate:modelValue":d[2]||(d[2]=f=>e.isRef(l)?l.value=f:null)},null,8,["modelValue"]),e.createVNode(s,{for:"track-quantity",class:"text-sm"},{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode("Track quantity",-1)])),_:1,__:[6]})]),e.createElementVNode("div",$m,[e.createVNode(c,{id:"continue-selling",modelValue:e.unref(a),"onUpdate:modelValue":d[3]||(d[3]=f=>e.isRef(a)?a.value=f:null)},null,8,["modelValue"]),e.createVNode(s,{for:"continue-selling",class:"text-sm"},{default:e.withCtx(()=>d[7]||(d[7]=[e.createTextVNode("Continue selling when out of stock",-1)])),_:1,__:[7]})])]),_:1,__:[8]})]),_:1})}}}),Kt=(t,n)=>{const o=t.__vccOpts||t;for(const[r,l]of n)o[r]=l;return o},Mm={};function Pm(t,n){return null}const Rm=Kt(Mm,[["render",Pm]]);function Qe(t){t.preventDefault()}function Qt(t){t.stopPropagation()}function $i(){const t=new Map;return[function(r,l){t.get(r)&&t.get(r).forEach(a=>{a(l)})},function(r,l){const a=t.get(r)??[];a.push(l),t.set(r,a)}]}var[Ii,Mi]=$i();function Am(t,n){return t.source===n.source&&t.flags.split("").sort().join("")===n.flags.split("").sort().join("")}function lo(t,n,o=!0,r=["__key"]){if(t===n)return!0;if(typeof n=="object"&&typeof t=="object"&&t!==null&&n!==null){if(t instanceof Map||t instanceof Set)return!1;if(t instanceof Date&&n instanceof Date)return t.getTime()===n.getTime();if(t instanceof RegExp&&n instanceof RegExp)return Am(t,n);if(t===null||n===null)return!1;const l=t,a=n;if(Object.keys(l).length!==Object.keys(a).length)return!1;for(const i of r)if((i in l||i in a)&&l[i]!==a[i])return!1;for(const i in l)if(!(i in a)||l[i]!==a[i]&&!o||o&&!lo(l[i],a[i],o,r))return!1;return!0}return!1}function Pi(t){return t.split(" ").filter(n=>n)}function Pn(t){return{x:t.clientX,y:t.clientY}}Array();var ml=typeof window<"u",Je=new WeakMap,Et=new WeakMap;function Ri(){if(!ml)return!1;if("userAgentData"in navigator)return navigator.userAgentData.mobile===!0;const t=navigator.userAgent,n=/android|iphone|ipod/i.test(t),o=/iPad/.test(t)||t.includes("Macintosh")&&navigator.maxTouchPoints>1;return n||o}var Fm={affectedNodes:[],coordinates:{x:0,y:0},currentTargetValue:void 0,on:Mi,emit:Ii,originalZIndex:void 0,pointerSelection:!1,preventEnter:!1,rootUserSelect:void 0,nodePointerdown:void 0,longPress:!1,scrolling:!1,longPressTimeout:void 0,remapJustFinished:!1,selectedNodes:[],selectedParent:void 0,preventSynthDrag:!1,pointerDown:void 0,lastScrollContainerX:null,lastScrollContainerY:null,rootScrollWidth:void 0,rootScrollHeight:void 0,dragItemRect:void 0,windowScrollX:void 0,windowScrollY:void 0,lastScrollDirectionX:void 0,lastScrollDirectionY:void 0,scrollDebounceTimeout:void 0,frameIdX:void 0,frameIdY:void 0},X=Fm,Yt=!1,ql,br;function Om(){X.scrollDebounceTimeout&&clearTimeout(X.scrollDebounceTimeout),X.longPressTimeout&&clearTimeout(X.longPressTimeout),X.frameIdX!==void 0&&cancelAnimationFrame(X.frameIdX),X.frameIdY!==void 0&&cancelAnimationFrame(X.frameIdY),X={...{affectedNodes:[],coordinates:{x:0,y:0},on:Mi,emit:Ii,currentTargetValue:void 0,originalZIndex:void 0,pointerId:void 0,preventEnter:!1,remapJustFinished:!1,selectedNodes:[],nodePointerdown:void 0,rootUserSelect:void 0,preventSynthDrag:!1,scrolling:!1,selectedParent:void 0,pointerSelection:!1,synthScrollDirection:void 0,draggedNodeDisplay:void 0,synthDragScrolling:!1,longPress:!1,pointerDown:void 0,longPressTimeout:void 0,lastScrollContainerX:null,lastScrollContainerY:null,rootScrollWidth:void 0,rootScrollHeight:void 0,dragItemRect:void 0,windowScrollX:void 0,windowScrollY:void 0,lastScrollDirectionX:void 0,lastScrollDirectionY:void 0,scrollDebounceTimeout:void 0,frameIdX:void 0,frameIdY:void 0}}}function Ai(t){return Object.assign(X,t),t.initialParent.data.emit("dragStarted",X),Yt=!1,X.emit("dragStarted",X),X}function zm(){X.activeState&&cn(X.activeState.parent,void 0,X),X.selectedState&&an(X.selectedState.nodes,X.selectedState.parent,X),X.selectedState=X.activeState=void 0}function Lm(){if(X.pointerDown&&(X.pointerDown.node.el.draggable=!0),X.pointerDown=void 0,!st(X))return;const t=X.currentParent.data.config;st(X)&&t.handleEnd(X)}function jm(t){t.key==="Escape"&&(X.selectedState&&an(X.selectedState.nodes,X.selectedState.parent,X),X.activeState&&cn(X.activeState.parent,void 0,X),X.selectedState=X.activeState=void 0)}function Um(t){if(!et(X))return;Yt=!0;const n=X.initialParent.data.config.handleEnd;n(X)}function Hm(t){if(!et(X))return;Qe(t);const{x:n,y:o}=Pn(t);et(X)&&Yo({x:n,y:o},t,X)}function Gm(t){if(!X.pointerDown||!X.pointerDown.validated)return;const n=X.pointerDown.parent.data.config;if(!(t.pointerType==="mouse"&&!Ri()))if(st(X))st(X)&&Wl(t,X);else{if(Qe(t),n.longPress&&!X.longPress){clearTimeout(X.longPressTimeout),X.longPress=!1;return}const o=n.draggedNodes(X.pointerDown);n.dragstartClasses(X.pointerDown.node,o,n,!0);const r=X.pointerDown.node.el.getBoundingClientRect(),l=Vg(X.pointerDown.node,X.pointerDown.parent,t,X,o,r);Wl(t,l,!0)}}function qm({parent:t,getValues:n,setValues:o,config:r={}}){var s,u,c;if(!ml)return;ql||(ql=Bo(document,{dragover:Hm,pointerdown:zm,pointerup:Lm,keydown:jm,drop:Um,pointermove:Gm,pointercancel:at(r.handlePointercancel),touchmove:p=>{et(X)&&p.cancelable&&Qe(p)},contextmenu:p=>{st(X)&&Qe(p)}})),Jm(t);const[l,a]=$i(),i={getValues:n,setValues:o,config:{dragDropEffect:r.dragDropEffect??"move",dragEffectAllowed:r.dragEffectAllowed??"move",draggedNodes:ag,dragstartClasses:dg,handleNodeKeydown:pg,handleDragstart:sg,handleNodeDragover:bg,handleParentDragover:wg,handleNodeDrop:mg,handleNodeFocus:gg,handleNodeBlur:vg,handlePointercancel:xg,handleEnd:_g,handleDragend:hg,handleParentFocus:Zm,handleNodePointerup:yg,handleNodePointerover:fg,handleParentPointerover:Ng,handleParentScroll:ig,handleNodePointerdown:ug,handleNodeDragenter:Sg,handleNodeDragleave:Eg,handleParentDrop:Xm,multiDrag:r.multiDrag??!1,nativeDrag:r.nativeDrag??!0,performSort:Wm,performTransfer:Ym,root:r.root??document,setupNode:Qm,setupNodeRemap:Oi,reapplyDragClasses:eg,tearDownNode:ng,tearDownNodeRemap:tg,remapFinished:rg,threshold:{horizontal:0,vertical:0},...r},enabledNodes:[],abortControllers:{},privateClasses:[],on:a,emit:l};new MutationObserver(og).observe(t,{childList:!0}),Je.set(t,i),(s=r.plugins)==null||s.forEach(p=>{var m,f;(f=(m=p(t))==null?void 0:m.tearDown)==null||f.call(m)}),(u=r.plugins)==null||u.forEach(p=>{var m,f;(f=(m=p(t))==null?void 0:m.tearDown)==null||f.call(m)}),(c=r.plugins)==null||c.forEach(p=>{var m,f;(f=(m=p(t))==null?void 0:m.setup)==null||f.call(m)}),Km(t,i),Wo(t,!0)}function Fi(t,n,o,r,l,a){const{x:i,y:d}=Pn(o),s=t.el.getBoundingClientRect();return{affectedNodes:[],ascendingDirection:!1,clonedDraggedEls:[],coordinates:{x:i,y:d},draggedNode:{el:t.el,data:t.data},draggedNodes:r,incomingDirection:void 0,initialIndex:t.data.index,initialParent:{el:n.el,data:n.data},currentParent:{el:n.el,data:n.data},longPress:n.data.config.longPress??!1,longPressTimeout:void 0,currentTargetValue:t.data.value,scrollEls:[],startLeft:l||i-((s==null?void 0:s.left)??0),startTop:a||d-((s==null?void 0:s.top)??0),targetIndex:t.data.index,transferred:!1}}function Wm({parent:t,draggedNodes:n,targetNodes:o}){Wo(t.el);const r=n.map(s=>s.data.value),l=En(t.el,t.data),a=n[0].data.index,i=[...t.data.enabledNodes],d=[...l.filter(s=>!r.some(u=>lo(s,u)))];d.splice(o[0].data.index,0,...r),"draggedNode"in X&&(X.currentTargetValue=o[0].data.value),jr(t.el,t.data,[...d]),t.data.config.onSort&&t.data.config.onSort({parent:{el:t.el,data:t.data},previousValues:[...l],previousNodes:[...i],nodes:[...t.data.enabledNodes],values:[...d],draggedNodes:n,previousPosition:a,position:o[0].data.index,targetNodes:o,state:X})}function cn(t,n,o){if(!n){o.activeState=void 0;return}o.activeState={node:n,parent:t}}function an(t,n,o){const r=n.data.config.selectedClass;if(!o.selectedState)return;const l=Array.from(t);Gt(t.map(a=>a.el),r);for(const a of l){a.el.setAttribute("aria-selected","false");const i=o.selectedState.nodes.findIndex(d=>d.el===a.el);i!==-1&&o.selectedState.nodes.splice(i,1)}}function Vo(t,n,o,r,l=!1){r.pointerSelection=l;for(const a of n)a.el.setAttribute("aria-selected","true"),bn([a.el],t.data.config.selectedClass,!0);r.selectedState={nodes:n,parent:t},cn(t,o,r)}function Zm(t,n){const o=t.targetData.parent.data.enabledNodes[0];o&&(n.selectedState&&n.selectedState.parent.el!==t.targetData.parent.el?cn(t.targetData.parent,o,n):n.selectedState||cn(t.targetData.parent,o,n))}function Ym({currentParent:t,targetParent:n,initialParent:o,draggedNodes:r,initialIndex:l,targetNodes:a,state:i}){Wo(o.el);const d=r.map(m=>m.data.value),s=[...En(t.el,t.data).filter(m=>!d.some(f=>lo(m,f)))],u=En(n.el,n.data),c=o.el===n.el&&n.data.config.sortable===!1;let p;a.length?(c?p=l:n.data.config.sortable===!1?p=n.data.enabledNodes.length:p=a[0].data.index,u.splice(p,0,...d)):(p=c?l:n.data.enabledNodes.length,u.splice(p,0,...d)),jr(t.el,t.data,s),jr(n.el,n.data,u),n.data.config.onTransfer&&n.data.config.onTransfer({sourceParent:t,targetParent:n,initialParent:o,draggedNodes:r,targetIndex:p,state:i,targetNodes:a}),t.data.config.onTransfer&&t.data.config.onTransfer({sourceParent:t,targetParent:n,initialParent:o,draggedNodes:r,targetIndex:p,state:i,targetNodes:a||[]})}function En(t,n){return[...n.getValues(t)]}function jr(t,n,o){n.setValues(o,t)}function Xm(t,n){Qt(t.e),Yt=!0;const o=n.initialParent.data.config.handleEnd;o(n)}function Jm(t){const n=Je.get(t);n&&n.abortControllers.mainParent&&n.abortControllers.mainParent.abort()}function et(t){return"draggedNode"in t&&!!t.draggedNode}function st(t){return"synthDragging"in t&&!!t.synthDragging}function Km(t,n){n.abortControllers.mainParent=Bo(t,{dragover:Co(n.config.handleParentDragover),handleParentPointerover:n.config.handleParentPointerover,scroll:Co(n.config.handleParentScroll),drop:Co(n.config.handleParentDrop),hasNestedParent:o=>{const r=Je.get(o.target);r&&(r.nestedParent=o.detail.parent)},focus:Co(n.config.handleParentFocus)}),n.config.externalDragHandle&&n.config.externalDragHandle.el&&n.config.externalDragHandle.callback&&(n.abortControllers.externalDragHandle=Bo(n.config.externalDragHandle.el,{pointerdown:o=>{if(!n.config.externalDragHandle||!n.config.externalDragHandle.callback)return;const r=n.config.externalDragHandle.callback();if(!Xo(r)){console.warn("No draggable item found from external drag handle callback");return}const l=Et.get(r);if(!l)return;const a=r.parentNode;if(!(a instanceof HTMLElement))return;const i=Je.get(a);i&&(X.pointerDown={parent:{el:a,data:i},node:{el:r,data:l},validated:!0},r.draggable=!0)}}))}function Qm(t){var o;const n=t.parent.data.config;t.node.data.abortControllers.mainNode=Bo(t.node.el,{keydown:at(n.handleNodeKeydown),dragstart:at(n.handleDragstart),dragover:at(n.handleNodeDragover),dragenter:at(n.handleNodeDragenter),dragleave:at(n.handleNodeDragleave),dragend:at(n.handleDragend),drop:at(n.handleNodeDrop),focus:at(n.handleNodeFocus),blur:at(n.handleNodeBlur),pointerup:at(n.handleNodePointerup),pointercancel:at(n.handlePointercancel),pointerdown:at(n.handleNodePointerdown),handleNodePointerover:n.handleNodePointerover,touchmove:r=>{et(X)&&r.cancelable&&Qe(r)},contextmenu:r=>{st(X)&&Qe(r)}}),t.node.el.draggable=!0,n.reapplyDragClasses(t.node.el,t.parent.data),(o=t.parent.data.config.plugins)==null||o.forEach(r=>{var l,a;(a=(l=r(t.parent.el))==null?void 0:l.setupNode)==null||a.call(l,t)})}function Oi(t){var n;Et.set(t.node.el,t.node.data),(n=t.parent.data.config.plugins)==null||n.forEach(o=>{var r,l;(l=(r=o(t.parent.el))==null?void 0:r.setupNodeRemap)==null||l.call(r,t)})}function eg(t,n){if(!et(X))return;const o=st(X)?n.config.synthDropZoneClass:n.config.dropZoneClass;X.draggedNode.el===t&&bn([t],o,!0)}function tg(t){var n;(n=t.parent.data.config.plugins)==null||n.forEach(o=>{var r,l;(l=(r=o(t.parent.el))==null?void 0:r.tearDownNodeRemap)==null||l.call(r,t)})}function ng(t){var n,o,r,l,a;(n=t.parent.data.config.plugins)==null||n.forEach(i=>{var d,s;(s=(d=i(t.parent.el))==null?void 0:d.tearDownNode)==null||s.call(d,t)}),t.node.el.draggable=!1,(r=(o=t.node.data)==null?void 0:o.abortControllers)!=null&&r.mainNode&&((a=(l=t.node.data)==null?void 0:l.abortControllers)==null||a.mainNode.abort())}function og(t){if(t.length===1&&t[0].addedNodes.length===1&&!(t[0].addedNodes[0]instanceof HTMLElement))return;const n=t[0].target;!(n instanceof HTMLElement)||!Je.get(n)||Wo(n)}function Wo(t,n){var d;const o=Je.get(t);if(!o)return;o.privateClasses=Array.from(t.classList);const r=[],l=o.config;for(let s=0;s<t.children.length;s++){const u=t.children[s];if(!Xo(u)||u.id==="dnd-dragged-node-clone")continue;const c=Et.get(u);(n||!c)&&l.tearDownNode({parent:{el:t,data:o},node:{el:u,data:c}}),!l.disabled&&(!l.draggable||l.draggable&&l.draggable(u))&&r.push(u)}if(r.length!==o.getValues(t).length&&!l.disabled){console.warn("The number of draggable items defined in the parent element does not match the number of values. This may cause unexpected behavior.");return}const a=o.getValues(t),i=[];for(let s=0;s<r.length;s++){const u=r[s],c=Et.get(u);if(l.draggableValue&&!l.draggableValue(a[s]))continue;const p=Object.assign(c??{privateClasses:[],abortControllers:{}},{value:a[s],index:s});if(!et(X)&&X.activeState&&lo(X.activeState.node.data.value,p.value)&&cn({data:o,el:t},{el:u,data:p},X),et(X)&&lo(X.draggedNode.data.value,p.value)){X.draggedNode.data=p,X.draggedNode.el=u;const m=X.draggedNodes.find(f=>f.data.value===p.value);m&&(m.el=u)}i.push({el:u,data:p}),(n||!c)&&l.setupNode({parent:{el:t,data:o},node:{el:u,data:p}}),Oi({parent:{el:t,data:o},node:{el:u,data:p}})}Je.set(t,{...o,enabledNodes:i}),l.remapFinished(o),(d=o.config.plugins)==null||d.forEach(s=>{var u,c;(c=(u=s(t))==null?void 0:u.remapFinished)==null||c.call(u)})}function rg(){X.remapJustFinished=!0,"draggedNode"in X&&(X.affectedNodes=[])}function lg(t){return!!t.targetData.parent.data.config.nativeDrag}function ag(t){var n;if(t.parent.data.config.multiDrag){if(X.selectedState)return[t.node,...(n=X.selectedState)==null?void 0:n.nodes.filter(o=>o.el!==t.node.el)]}else return[t.node];return[]}function ig(t){et(X)&&(X.emit("scrollStarted",X),!st(X)&&(X.preventEnter=!0,br&&clearTimeout(br),br=setTimeout(()=>{X.preventEnter=!1,X.emit("scrollEnded",X)},100)))}function sg(t,n){const o=t.targetData.parent.data.config;if(!o.nativeDrag||!lg(t)||!zi({x:t.e.clientX,y:t.e.clientY,node:t.targetData.node,config:o})){Qe(t.e);return}let r=o.draggedNodes({parent:t.targetData.parent,node:t.targetData.node});r.length===0&&(r=[t.targetData.node]),o.dragstartClasses(t.targetData.node,r,o);const l=cg(t,r);if(o.onDragstart){const a={parent:t.targetData.parent,values:En(t.targetData.parent.el,t.targetData.parent.data),draggedNode:l.draggedNode,draggedNodes:l.draggedNodes,position:l.initialIndex,state:l};o.onDragstart(a)}}function ug(t,n){var d,s;if(Qt(t.e),n.pointerDown={parent:t.targetData.parent,node:t.targetData.node,validated:!1},!zi({x:t.e.clientX,y:t.e.clientY,node:t.targetData.node,config:t.targetData.parent.data.config}))return;n.pointerDown.validated=!0,Cg(t,n,t.targetData.node);const o=t.targetData.parent.data;let r=[t.targetData.node];const l=t.e.ctrlKey||t.e.metaKey,a=t.e.shiftKey,i=t.targetData.node;if(l&&o.config.multiDrag){n.selectedState?n.selectedState.nodes.findIndex(c=>c.el===i.el)===-1?r=[...n.selectedState.nodes,i]:r=n.selectedState.nodes.filter(c=>c.el!==i.el):r=[i],Vo(t.targetData.parent,r,t.targetData.node,n,!0);return}if(a&&o.config.multiDrag){const u=t.targetData.parent.data.enabledNodes;if(n.selectedState&&n.activeState)if(n.selectedState.parent.el!==t.targetData.parent.el){an(n.selectedState.nodes,n.selectedState.parent,n),n.selectedState=void 0;for(let c=0;c<=i.data.index;c++)r.push(u[c])}else{const[c,p]=n.activeState.node.data.index<t.targetData.node.data.index?[n.activeState.node.data.index,t.targetData.node.data.index]:[t.targetData.node.data.index,n.activeState.node.data.index];r=u.slice(c,p+1)}else for(let c=0;c<=i.data.index;c++)r.push(u[c]);Vo(t.targetData.parent,r,t.targetData.node,n,!0);return}(s=(d=n.selectedState)==null?void 0:d.nodes)!=null&&s.length?n.selectedState.nodes.findIndex(c=>c.el===t.targetData.node.el)===-1&&(n.selectedState.parent.el!==t.targetData.parent.el?an(n.selectedState.nodes,t.targetData.parent,n):o.config.multiDrag&&Ri()?r.push(...n.selectedState.nodes):an(n.selectedState.nodes,t.targetData.parent,n),Vo(t.targetData.parent,r,t.targetData.node,n,!0)):Vo(t.targetData.parent,[t.targetData.node],t.targetData.node,n,!0)}function dg(t,n,o,r=!1){bn(n.map(l=>l.el),r?o.synthDraggingClass:o.draggingClass),setTimeout(()=>{Gt(n.map(l=>l.el),r?o.synthDraggingClass:o.draggingClass),bn(n.map(l=>l.el),r?o.synthDragPlaceholderClass:o.dragPlaceholderClass),bn(n.map(l=>l.el),r?o.synthDropZoneClass:o.dropZoneClass),Gt(n.map(l=>l.el),o.selectedClass)})}function cg(t,n){Qt(t.e);const o=Ai(Fi(t.targetData.node,t.targetData.parent,t.e,n));if(t.e.dataTransfer){const r=t.targetData.parent.data.config;t.e.dataTransfer.dropEffect=r.dragDropEffect,t.e.dataTransfer.effectAllowed=r.dragEffectAllowed;let l;if(t.e.dataTransfer.setData("text/plain",""),r.dragImage)l=r.dragImage(t,n);else{if(!r.multiDrag||n.length===1)return t.targetData.node.el.style.zIndex="9999",t.targetData.node.el.style.boxSizing="border-box",t.e.dataTransfer.setDragImage(t.targetData.node.el,t.e.offsetX,t.e.offsetY),o.originalZIndex=t.targetData.node.el.style.zIndex,o;{const a=document.createElement("div");a.setAttribute("id","dnd-dragged-node-clone"),a.setAttribute("popover","manual");for(const d of n){const s=d.el.cloneNode(!0);s.id=d.el.id+"-clone",s.style.pointerEvents="none",a.appendChild(s)}const{width:i}=n[0].el.getBoundingClientRect();Object.assign(a.style,{display:"flex",flexDirection:"column",width:`${i}px`,position:"absolute",pointerEvents:"none",zIndex:"9999",left:"-9999px",boxSizing:"border-box",background:"transparent",overflow:"hidden"}),t.targetData.parent.el.appendChild(a),a.showPopover(),a.getBoundingClientRect(),l=a,t.e.dataTransfer.setDragImage(l,t.e.offsetX,t.e.offsetY)}}setTimeout(()=>{l==null||l.remove()})}return o}function zi({x:t,y:n,node:o,config:r}){if(r.externalDragHandle)return!1;if(!r.dragHandle)return!0;const l=o.el.querySelectorAll(r.dragHandle);if(!l)return!1;const a=r.root.elementFromPoint(t,n);if(!a)return!1;for(const i of Array.from(l))if(a===i||i.contains(a))return!0;return!1}function pg(t){}function fg(t){t.detail.targetData.parent.el===t.detail.state.currentParent.el?ji(t.detail,t.detail.state):Zo(t.detail,t.detail.state)}function mg(t,n){const o=t.targetData.parent.data.config;o.nativeDrag&&(Qt(t.e),Yt=!0,o.handleEnd(n))}function gg(t){t.e.target!==t.e.currentTarget&&X.pointerDown&&(X.pointerDown.node.el.draggable=!1)}function vg(t){t.e.target!==t.e.currentTarget&&X.pointerDown&&(X.pointerDown.node.el.draggable=!0)}function hg(t,n){const o=t.targetData.parent.data.config;if(o.nativeDrag){if(Qe(t.e),Qt(t.e),Yt){Yt=!1;return}o.handleEnd(n)}}function xg(t,n){var r;if(!st(n))return;if(Qe(t.e),Yt){Yt=!1;return}const o=(r=Je.get(n.initialParent.el))==null?void 0:r.config;o!=null&&o.onDragend&&o.onDragend({parent:n.currentParent,values:En(n.currentParent.el,n.currentParent.data),draggedNode:n.draggedNode,draggedNodes:n.draggedNodes,state:n}),o==null||o.handleEnd(n)}function _g(t){var c,p,m,f,v;t.draggedNode&&(t.draggedNode.el.draggable=!0);const n=t.draggedNodes.map(g=>g.el),o=t.initialParent.data,r=st(t),l=(c=Je.get(t.initialParent.el))==null?void 0:c.config,a=r?l==null?void 0:l.synthDropZoneClass:l==null?void 0:l.dropZoneClass,i=(p=o==null?void 0:o.config)==null?void 0:p.longPressClass,d=r?(m=o==null?void 0:o.config)==null?void 0:m.synthDragPlaceholderClass:(f=o==null?void 0:o.config)==null?void 0:f.dragPlaceholderClass,s=t.originalZIndex;st(t)&&(t.clonedDraggedNode&&t.clonedDraggedNode.remove(),t.longPressTimeout&&clearTimeout(t.longPressTimeout)),Ur(t),t.lastScrollDirectionX=void 0,t.lastScrollDirectionY=void 0,t.preventEnter=!1,t.scrollDebounceTimeout&&(clearTimeout(t.scrollDebounceTimeout),t.scrollDebounceTimeout=void 0),s!==void 0&&t.draggedNode&&(t.draggedNode.el.style.zIndex=s),requestAnimationFrame(()=>{Gt(n,a),Gt(n,i),Gt(n,d)}),an(t.draggedNodes,t.currentParent,t),cn(t.currentParent,void 0,t);const u={...t};(v=l==null?void 0:l.onDragend)==null||v.call(l,{parent:u.currentParent,values:En(u.currentParent.el,u.currentParent.data),draggedNode:u.draggedNode,draggedNodes:u.draggedNodes,state:u}),t.emit("dragEnded",u),Om()}function yg(t,n){Qt(t.e),!n.pointerSelection&&n.selectedState&&an(n.selectedState.nodes,t.targetData.parent,n);const o=t.targetData.parent.data.config;n.pointerSelection=!1,"longPressTimeout"in n&&n.longPressTimeout&&clearTimeout(n.longPressTimeout),n.longPress=!1,Gt(t.targetData.parent.data.enabledNodes.map(r=>r.el),o.longPressClass),et(n)&&o.handleEnd(n)}function Vg(t,n,o,r,l,a){var v,g;const i=n.data.config;let d,s;const u=["display","flexDirection","alignItems","justifyContent","padding","paddingTop","margin","marginTop","marginBottom","marginLeft","marginRight","paddingBottom","paddingLeft","paddingRight","border","borderRadius","background","backgroundColor","boxShadow","font","color","lineHeight","gap","width","height","boxSizing","overflow"],c=(h,y)=>{const b=window.getComputedStyle(h);u.forEach(_=>{y.style[_]=b[_]})},p=(h,y={})=>{Object.assign(h.style,{position:"absolute",zIndex:"9999",pointerEvents:"none",willChange:"transform",boxSizing:"border-box",opacity:"0",overflow:"hidden",width:`${a.width}px`,height:`${a.height}px`,...y})};if(i.synthDragImage)s=i.synthDragImage(t,n,o,l),d=s.dragImage,d.setAttribute("popover","manual"),p(d);else if(!i.multiDrag||l.length===1)d=t.el.cloneNode(!0),c(t.el,d),d.setAttribute("popover","manual"),p(d);else{const h=document.createElement("div");h.setAttribute("popover","manual"),l.forEach(y=>{const b=y.el.cloneNode(!0);c(y.el,b),b.style.pointerEvents="none",b.style.margin="0",h.append(b)}),h.style.display="flex",h.style.flexDirection="column",h.style.padding="0",h.style.margin="0",h.style.position="absolute",h.style.zIndex="9999",h.style.pointerEvents="none",d=h}d.id="dnd-dragged-node-clone",n.el.appendChild(d),d.showPopover();const m={clonedDraggedEls:[],clonedDraggedNode:d,synthDragScrolling:!1,synthDragging:!0,rootScrollWidth:(v=document.scrollingElement)==null?void 0:v.scrollWidth,rootScrollHeight:(g=document.scrollingElement)==null?void 0:g.scrollHeight};return Ai({...Fi(t,n,o,l,s==null?void 0:s.offsetX,s==null?void 0:s.offsetY),...m})}function Cg(t,n,o){const r=t.targetData.parent.data.config;n.longPressTimeout=setTimeout(()=>{n&&(n.longPress=!0,r.longPressClass&&t.e.cancelable&&bn([o.el],r.longPressClass),Qe(t.e))},r.longPressDuration||1e3)}function Ur(t,n=!0,o=!0){n&&(t.frameIdX!==void 0&&(cancelAnimationFrame(t.frameIdX),t.frameIdX=void 0),t.lastScrollDirectionX=void 0),o&&(t.frameIdY!==void 0&&(cancelAnimationFrame(t.frameIdY),t.frameIdY=void 0),t.lastScrollDirectionY=void 0),!t.frameIdX&&!t.frameIdY&&(t.preventEnter=!1)}function Li(t,n=!1){var c;const{x:o,y:r}=t.coordinates,l=t.startLeft??0,a=t.startTop??0,i=window.scrollX??0,d=window.scrollY??0,s=o-l+i,u=r-a+d;t.clonedDraggedNode.style.transform=`translate3d(${s}px, ${u}px, 0px)`,n&&(t.clonedDraggedNode.style.opacity="1",Gt(t.draggedNodes.map(p=>p.el),(c=t.initialParent.data.config)==null?void 0:c.longPressClass))}function Wl(t,n,o=!1){const r=Pn(t);n.coordinates.x=r.x,n.coordinates.y=r.y,Li(n,o),n.scrollDebounceTimeout&&(clearTimeout(n.scrollDebounceTimeout),n.scrollDebounceTimeout=void 0),n.scrollDebounceTimeout=setTimeout(()=>{st(n)&&Yo(n.coordinates,t,n)},16);const l=$g(r);if(!l){document.dispatchEvent(new CustomEvent("handleRootPointerover",{detail:{e:t,state:n}}));return}const a={e:t,targetData:l,state:n};"node"in l?l.node.el.dispatchEvent(new CustomEvent("handleNodePointerover",{detail:a})):l.parent.el.dispatchEvent(new CustomEvent("handleParentPointerover",{detail:a}))}function bg(t,n){var a;if(!t.targetData.parent.data.config.nativeDrag)return;const{x:r,y:l}=Pn(t.e);n.coordinates.y=l,n.coordinates.x=r,Qe(t.e),Qt(t.e),et(n)&&Yo({x:r,y:l},t.e,n),t.targetData.parent.el===((a=n.currentParent)==null?void 0:a.el)?ji(t,n):Zo(t,n)}function wg(t,n){if(!t.targetData.parent.data.config.nativeDrag)return;Qe(t.e),Qt(t.e);const{x:r,y:l}=Pn(t.e);et(n)&&Yo({x:r,y:l},t.e,n),Zo(t,n)}function Ng(t){t.detail.targetData.parent.el!==t.detail.state.currentParent.el&&Zo(t.detail,t.detail.state)}function kg({currentParent:t,targetParent:n,initialParent:o,draggedNodes:r,state:l}){if(n.el===t.el)return!1;const a=n.data.config;if(r[0].el.contains(n.el)||a.dropZone===!1)return!1;const i=o.data.config;return a.accepts?a.accepts(n,o,t,l):!(!a.group||a.group!==i.group)}function Sg(t,n){Qe(t.e)}function Eg(t,n){Qe(t.e)}function Tg(t,n,o,r){var c;if(n.affectedNodes.map(p=>p.data.value).includes(t.targetData.node.data.value))return!1;if(n.remapJustFinished)return n.remapJustFinished=!1,(t.targetData.node.data.value===n.currentTargetValue||n.draggedNodes.map(p=>p.el).includes(t.targetData.node.el))&&(n.currentTargetValue=t.targetData.node.data.value),!1;if(n.preventEnter)return!1;if(n.draggedNodes.map(p=>p.el).includes(t.targetData.node.el))return n.currentTargetValue=void 0,!1;if(t.targetData.node.data.value===n.currentTargetValue||t.targetData.parent.el!==((c=n.currentParent)==null?void 0:c.el)||t.targetData.parent.data.config.sortable===!1||t.targetData.node.el.contains(n.draggedNodes[0].el))return!1;const l=t.targetData.node.el.getBoundingClientRect(),a=n.draggedNode.el.getBoundingClientRect(),i=l.y-a.y,d=l.x-a.x;let s;Math.abs(i)>Math.abs(d)?s=i>0?"above":"below":s=d>0?"left":"right";const u=n.currentParent.data.config.threshold;switch(s){case"left":if(o>l.x+l.width*u.horizontal)return n.incomingDirection="left",!0;break;case"right":if(o<l.x+l.width*(1-u.horizontal))return n.incomingDirection="right",!0;break;case"above":if(r>l.y+l.height*u.vertical)return n.incomingDirection="above",!0;break;case"below":if(r<l.y+l.height*(1-u.vertical))return n.incomingDirection="below",!0;break}return!1}function ji(t,n){const{x:o,y:r}=Pn(t.e);if(!Tg(t,n,o,r))return;const l=n.draggedNode.data.index>t.targetData.node.data.index?[t.targetData.node.data.index,n.draggedNode.data.index]:[n.draggedNode.data.index,t.targetData.node.data.index];n.targetIndex=t.targetData.node.data.index,n.affectedNodes=t.targetData.parent.data.enabledNodes.filter(a=>l[0]<=a.data.index&&a.data.index<=l[1]&&a.el!==n.draggedNode.el),t.targetData.parent.data.config.performSort({parent:t.targetData.parent,draggedNodes:n.draggedNodes,targetNodes:[t.targetData.node]})}function at(t){function n(o){const r=Et.get(o);if(!r)return;const l=Je.get(o.parentNode);if(l)return{node:{el:o,data:r},parent:{el:o.parentNode,data:l}}}return o=>{const r=n(o.currentTarget);if(r)return t({e:o,targetData:r},X)}}function Zo(t,n){Qe(t.e),kg({currentParent:n.currentParent,targetParent:t.targetData.parent,initialParent:n.initialParent,draggedNodes:n.draggedNodes,state:n})&&(t.targetData.parent.data.config.performTransfer({currentParent:n.currentParent,targetParent:t.targetData.parent,initialParent:n.initialParent,draggedNodes:n.draggedNodes,initialIndex:n.initialIndex,state:n,targetNodes:"node"in t.targetData?[t.targetData.node]:[]}),n.currentParent=t.targetData.parent,n.transferred=!0)}function Co(t){function n(o){const r=Je.get(o);if(r)return{parent:{el:o,data:r}}}return o=>{const r=n(o.currentTarget);if(r)return t({e:o,targetData:r},X)}}function bn(t,n,o=!1){function r(l,a){Et.set(l,a)}for(const l of t){const a=Et.get(l),i=Dg(l,n,a,o);i&&r(l,i)}}function Dg(t,n,o,r=!1){if(!n)return;const l=Pi(n);if(!l.length)return;if(!o){t.classList.add(...l);return}const a=[];for(const i of l)t.classList.contains(i)?t.classList.contains(i)&&r===!1&&a.push(i):t.classList.add(i);return o.privateClasses=a,o}function Gt(t,n){if(!n)return;const o=Pi(n);if(o.length)for(const r of t){if(!Xo(r)){r.classList.remove(...o);continue}const l=Et.get(r)||Je.get(r);if(l)for(const a of o)l.privateClasses.includes(a)||r.classList.remove(a)}}function Zl(t,n,o,r,l){const i=l.axis==="x",d=t===document.scrollingElement,s=i?"scrollLeft":"scrollTop",u=i?"clientWidth":"clientHeight",c=i?"offsetWidth":"offsetHeight",p=i?"scrollWidth":"scrollHeight",m=i?n.clientX:n.clientY,f=i?r.left:r.top,v=i?o.overflowX:o.overflowY;if(d){const g=t[s],h=t[u],y=g>0,b=g+h<(i?l.state.rootScrollWidth||0:t[p]);return i?{left:y&&m<h*.075,right:b&&m>h*(1-.075)}:{up:y&&m<h*.075,down:b&&m>h*(1-.075)}}if((v==="auto"||v==="scroll")&&t!==document.body&&t!==document.documentElement){const g=t[p],h=t[c],y=t[s],b=y>0,_=y<g-h;return i?{left:b&&m<f+h*.075,right:_&&m>f+h*(1-.075)}:{up:b&&m<f+h*.075,down:_&&m>f+h*(1-.075)}}return i?{left:!1,right:!1}:{up:!1,down:!1}}function Bg(t,n,o,r){if(!et(o)||!o.draggedNode)return;o.preventEnter=!0;const l=r.axis==="x",a=r.direction==="positive"?1:-1,i=20,d=l?"lastScrollDirectionX":"lastScrollDirectionY",s=l?"frameIdX":"frameIdY";o[s]!==void 0&&(cancelAnimationFrame(o[s]),o[s]=void 0),o[d]=r.direction;const u=()=>{if(!et(o)||!o.draggedNode){o[s]!==void 0&&(cancelAnimationFrame(o[s]),o[s]=void 0);return}const c=l?"scrollLeft":"scrollTop",p=l?"clientWidth":"clientHeight",m=l?"scrollWidth":"scrollHeight",f=t[c],v=t[p],g=t[m];if(!(a>0?f+v<g:f>0)){o[s]=void 0,o[d]=void 0;return}t[c]+=i*a,st(o)&&Li(o),o[s]=requestAnimationFrame(u)};o[s]=requestAnimationFrame(u)}function Yl(t,n,o){const r=t.getBoundingClientRect();return n>=r.left&&n<=r.right&&o>=r.top&&o<=r.bottom}function Yo(t,n,o){if(!et(o)||!o.draggedNode)return;Ur(o);const{x:r,y:l}=t;let a=!1;const i=(s,u,c)=>{Bg(c,n,o,{axis:s,direction:u}),a=!0},d=s=>{const u=window.getComputedStyle(s),c=s.getBoundingClientRect(),p=Zl(s,n,u,c,{axis:"x",state:o}),m=Zl(s,n,u,c,{axis:"y"});(p.left||p.right)&&(o.lastScrollContainerX=s,i("x",p.right?"positive":"negative",s)),(m.up||m.down)&&(o.lastScrollContainerY=s,i("y",m.down?"positive":"negative",s))};if(o.lastScrollContainerX&&Yl(o.lastScrollContainerX,r,l)&&d(o.lastScrollContainerX),!a&&o.lastScrollContainerY&&Yl(o.lastScrollContainerY,r,l)&&d(o.lastScrollContainerY),!a){let s=document.elementFromPoint(r,l);for(;s&&!(a&&o.lastScrollContainerX&&o.lastScrollContainerY);)s instanceof HTMLElement&&d(s),s=s.parentElement}if(!a){const s=document.scrollingElement;s instanceof HTMLElement&&d(s)}a||Ur(o)}function $g(t){let n=document.elementFromPoint(t.x,t.y);if(!Xo(n))return;let o,r=!0;for(;n&&r;){if(Et.has(n)||Je.has(n)){r=!1,o=Je.has(n);break}n=n.parentNode}if(o){const l=Je.get(n);return l?{parent:{el:n,data:l}}:void 0}else{const l=Et.get(n);if(!l)return;const a=Je.get(n.parentNode);return a?{node:{el:n,data:l},parent:{el:n.parentNode,data:a}}:void 0}}function Xo(t){return t instanceof HTMLElement&&t.parentNode instanceof HTMLElement}function Bo(t,n){const o=new AbortController;for(const r in n){const l=n[r];t.addEventListener(r,l,{signal:o.signal,passive:!1,capture:r==="focus"||r==="blur"})}return o}function Xl(t){if(t instanceof HTMLElement)return t;if(t.value instanceof HTMLElement)return t.value;if("$el"in t&&t.$el instanceof HTMLElement)return t.$el}function Ig(t,n){Array.isArray(t)||(t=[t]);for(const o of t){const r=Xl(o);if(r)return n(r);const l=e.watch(o,a=>{if(!a)return;const i=Xl(a);i?n(i):console.warn("Invalid parent element",a),l()})}}var gl=new WeakMap;function Mg(t){const n=gl.get(t);return n?"value"in n?n.value:n:(console.warn("No values found for parent element"),[])}function Pg(t,n){const o=gl.get(n);o&&"value"in o&&(o.value=t)}function Jo(t){ml&&(Array.isArray(t)||(t=[t]),t.forEach(n=>{const{parent:o,values:r,...l}=n;Ig(o,Rg(l,r))}))}function Rg(t,n){return o=>{gl.set(o,n),qm({parent:o,getValues:Mg,setValues:Pg,config:{...t}})}}const Ag={key:0,class:"flex gap-4 p-6 border-b last:border-b-0"},Fg={class:"option-drag-handle flex-none mt-9.5 cursor-grab"},Og={class:"flex-1"},zg={class:"mb-3"},Lg={class:"flex items-center"},jg={key:0,class:"mt-1 text-sm text-red-600"},Ug={class:"flex items-center gap-1"},Hg={class:"mb-2"},Gg={key:0,class:"option-value-drag-handle absolute -left-7 top-1/2 -translate-y-1/2 flex-none mr-2 cursor-grab"},qg=["onClick"],Wg={class:"flex justify-between"},Zg={class:"flex-1"},Yg={class:"text-sm mb-2"},Xg={class:"flex flex-wrap gap-2"},Jg={key:0,class:"px-2 py-1 border rounded-full bg-muted text-muted-foreground text-sm"},Kg=e.defineComponent({__name:"Option",props:{option:{type:Object,required:!0}},emits:["update:option","remove"],setup(t,{expose:n,emit:o}){const r=t,{confirm:l}=J.useConfirmation(),a=o,i=e.computed({get(){return r.option},set(b){a("update:option",b)}}),d=e.computed({get(){return i.value.values},set(b){i.value.values=b}}),s=e.useTemplateRef("valueListRef"),u=e.ref(!1);e.watch(u,async b=>{console.log("minified",b),b||(await e.nextTick(),Jo({parent:s==null?void 0:s.value,values:d,group:"valueList",dragHandle:".option-value-drag-handle",plugins:[co.animations()]}))},{immediate:!0});const c=()=>Math.random().toString(36).substring(2,15),p=()=>{i.value.values.push({id:c(),value:""})},m=async()=>{(i.value.name.trim()||i.value.values.filter(b=>b.value.trim()!=="").length>0)&&!await l("Are you sure you want to remove this option?")||a("remove")},f=b=>{i.value.values.splice(b,1)},v=b=>{b.name.trim()?b.nameError=void 0:b.nameError="Option name is required."},g=(b,_)=>{const k=b.target,x=i.value.values;if(b.key==="Backspace"&&k.value===""&&(x==null?void 0:x.length)>2){f(_);return}},h=(b,_)=>{b.target;const k=i.value.values,x=k==null?void 0:k[_];x.touched=!0,(k==null?void 0:k.every(N=>N.value.trim()!==""))&&p()},y=b=>{const _=i.value,k=_==null?void 0:_.values.every((x,C)=>x.value.trim()!==""||C===b);_&&_.values[b].value.trim()===""&&!k&&f(b)};return n({minified:u}),(b,_)=>{const k=e.resolveComponent("Input"),x=e.resolveComponent("Button");return u.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"flex gap-4 p-6 border-b last:border-b-0 hover:bg-accent dark:hover:bg-accent/50 cursor-pointer transition-colors duration-200",onClick:_[5]||(_[5]=C=>u.value=!1)},[e.createElementVNode("div",null,[e.createElementVNode("div",{class:"option-drag-handle flex-none mt-5 cursor-grab",onClick:_[4]||(_[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",Zg,[e.createElementVNode("p",Yg,e.toDisplayString(i.value.name),1),e.createElementVNode("div",Xg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.id},[C.value?(e.openBlock(),e.createElementBlock("span",Jg,e.toDisplayString(C.value),1)):e.createCommentVNode("",!0)],64))),128))])])])):(e.openBlock(),e.createElementBlock("div",Ag,[e.createElementVNode("div",null,[e.createElementVNode("div",Fg,[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",Og,[e.createElementVNode("div",zg,[_[6]||(_[6]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option name",-1)),e.createElementVNode("div",Lg,[e.createVNode(k,{modelValue:i.value.name,"onUpdate:modelValue":_[0]||(_[0]=C=>i.value.name=C),onBlur:_[1]||(_[1]=C=>v(i.value)),"aria-invalid":i.value.nameError?"true":"false",placeholder:"Color",spellcheck:"false"},null,8,["modelValue","aria-invalid"])]),i.value.nameError?(e.openBlock(),e.createElementBlock("p",jg,[e.createElementVNode("span",Ug,[e.createVNode(e.unref(F.CircleX),{class:"size-4"}),e.createTextVNode(" "+e.toDisplayString(i.value.nameError),1)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Hg,[_[7]||(_[7]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option values",-1)),e.createElementVNode("div",{ref_key:"valueListRef",ref:s},[d.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(d.value,(C,N)=>(e.openBlock(),e.createElementBlock("div",{key:C.id,class:"relative flex items-center mb-2"},[C.touched?(e.openBlock(),e.createElementBlock("div",Gg,[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])):e.createCommentVNode("",!0),e.createVNode(k,{modelValue:C.value,"onUpdate:modelValue":B=>C.value=B,placeholder:"Option value",class:"pr-12",onKeydown:B=>g(B,N),onKeyup:B=>h(B,N),onBlur:B=>y(N),spellcheck:"false"},null,8,["modelValue","onUpdate:modelValue","onKeydown","onKeyup","onBlur"]),d.value.length>2&&C.touched?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:B=>f(N),class:"absolute right-2 top-1/2 -translate-y-1/2 ml-2 p-2 text-muted-foreground hover:text-muted",type:"button"},[e.createVNode(e.unref(F.Trash2),{class:"size-4"})],8,qg)):e.createCommentVNode("",!0)]))),128)):e.createCommentVNode("",!0)],512)]),e.createElementVNode("div",Wg,[e.createVNode(x,{size:"sm",variant:"outline",onClick:_[2]||(_[2]=C=>m()),class:"text-red-500 hover:text-red-600"},{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode("Delete",-1)])),_:1,__:[8]}),e.createVNode(x,{size:"sm",onClick:_[3]||(_[3]=C=>u.value=!0),disabled:i.value.name.trim()===""},{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("Done",-1)])),_:1,__:[9]},8,["disabled"])])])]))}}}),Qg=e.defineComponent({__name:"Options",props:{modelValue:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.ref([]),i=e.useTemplateRef("optionsListRefElement"),d=e.useTemplateRef("optionRefs"),s=e.computed({get(){return r.modelValue},set(g){l("update:modelValue",g)}}),u=e.ref(!1);e.watch(s,g=>{u.value||(!a.value||a.value.length===0&&g.length>0)&&(u.value=!0,a.value=g?JSON.parse(JSON.stringify(g)):[])},{deep:!0}),e.watch(a,g=>{s.value=g==null?void 0:g.map(h=>({...h,values:h.values.filter(y=>y.value.trim()!=="")}))},{deep:!0});const c=()=>Math.random().toString(36).substring(2,15),p=()=>{const h={id:c(),name:"",values:[{id:c(),value:""}],nameError:void 0};a.value.push(h)},m=()=>{var g;console.log("minifyAll"),(g=d.value)==null||g.forEach(h=>{h&&(h.minified=!0)})},f=g=>{const h=a.value.findIndex(y=>y.id===g.id);h!==-1&&(a.value[h]=g)},v=g=>{const h=a.value.findIndex(y=>y.id===g.id);h!==-1&&a.value.splice(h,1)};return e.onMounted(()=>{a.value=r.modelValue?JSON.parse(JSON.stringify(r.modelValue)):[],Jo({parent:i==null?void 0:i.value,values:a,group:"optionsList",dragHandle:".option-drag-handle",plugins:[co.animations()]})}),n({minifyAll:m}),(g,h)=>{const y=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg",a.value.length>0?"border mb-6":""])},[e.createElementVNode("div",{ref_key:"optionsListRefElement",ref:i},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,b=>(e.openBlock(),e.createBlock(Kg,{ref_for:!0,ref_key:"optionRefs",ref:d,key:b.id,option:b,"onUpdate:option":h[0]||(h[0]=_=>f(_)),onRemove:_=>v(b)},null,8,["option","onRemove"]))),128))],512),a.value&&a.value.length<3?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(a.value.length>0?"border-t":"")},[a.value.length===0?(e.openBlock(),e.createBlock(y,{key:0,onClick:p,variant:"ghost"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle),{class:"size-4"}),h[1]||(h[1]=e.createTextVNode(" Add options like size or color ",-1))]),_:1,__:[1]})):(e.openBlock(),e.createBlock(y,{key:1,onClick:p,variant:"ghost",class:"w-full justify-start pl-2 rounded-t-none"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle),{class:"size-4"}),h[2]||(h[2]=e.createTextVNode(" Add another option ",-1))]),_:1,__:[2]}))],2)):e.createCommentVNode("",!0)],2)])}}}),ev={key:0},tv={class:"flex items-center justify-between gap-2 mb-2"},nv={key:0,class:"flex items-center gap-2"},ov={key:0,class:"mb-4"},rv={class:"flex flex-wrap gap-2"},lv=["onClick"],av={class:"-mx-6 w-[calc(100%+3rem)]"},iv={class:"text-muted-foreground text-xs"},sv={class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},uv={class:"z-[101] sticky -top-4 py-2 font-normal whitespace-nowrap bg-accent dark:bg-border"},dv={class:"flex items-center gap-2"},cv={class:"z-[101] sticky -top-4 py-2 pr-6 font-normal bg-accent dark:bg-border"},pv={class:"text-sm"},fv=["onClick"],mv={class:"w-10 p-2"},gv={class:"p-2"},vv={class:"flex items-stretch gap-2"},hv=["src"],xv={key:2,class:"relative"},_v=["src"],yv=["src"],Vv={class:"flex flex-col justify-center px-2"},Cv={class:"text-md mb-0.5 hover:underline select-none"},bv={class:"flex items-center gap-1 text-xs text-muted-foreground hover:opacity-70 transition-opacity duration-200 cursor-pointer select-none"},wv={class:"p-2 w-[30%]"},Nv={class:"relative"},kv={key:0},Sv={key:1},Ev={key:0,class:"absolute inset-0 top-1/2 -translate-y-1/2 px-2 truncate text-sm text-muted-foreground w-full text-center pointer-events-none"},Tv={class:"p-2 w-[18%]"},Dv={class:"w-10"},Bv={class:"w-10 p-2 translate-x-10"},$v={class:"p-2 pl-12"},Iv={class:"flex items-stretch gap-2"},Mv=["src"],Pv={class:"flex flex-col justify-center px-2"},Rv={class:"p-2 w-[30%]"},Av={class:"p-2 w-[18%] group"},Fv={class:"text-center text-sm text-muted-foreground bg-accent dark:bg-border p-3 -mx-6 -mb-6 rounded-b-lg"},Ov={key:0},zv=e.defineComponent({__name:"VariantList",props:{options:{type:Object,required:!0},modelValue:{type:Array,required:!0},hide:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.computed({get(){return r.modelValue},set(A){l("update:modelValue",A)}}),i=e.inject("sources"),d=e.ref(""),s=e.ref(""),u=e.ref(!1),c=e.ref([]),p=e.ref({}),m=()=>{Object.keys(r.options).length>0&&(s.value=Object.keys(r.options)[0])};e.watch(()=>r.options,()=>{s.value===""&&m()},{immediate:!0,deep:!0}),e.watch(p,A=>{f()},{deep:!0}),e.watch(()=>r.hide,A=>{A||(m(),f())});function f(){var w;if(!p.value){a.value=[];return}let A=[];(w=Object.keys(p.value))==null||w.forEach(E=>{A.push({combinedOptions:E,name:h(E),disabled:!1,price:p.value[E].price,stock:p.value[E].stock,image:p.value[E].image,options:y(E)})}),a.value=A.filter(E=>{var V,D;return((V=E.options)==null?void 0:V.length)===Object.keys(r.options).length&&((D=E.options)==null?void 0:D.every(L=>Object.entries(r.options).find(([ee,O])=>O.id===L.optionId)))})}function v(A){return A.reduce((w,E)=>w.flatMap(V=>E.map(D=>[...V,D])),[[]])}function g(A){return A.slice().sort((w,E)=>w.optionId.localeCompare(E.optionId)).map(({optionId:w,valueId:E})=>`${w}:${E}`).join("|")}const h=A=>A.split("|").map(E=>{const[V,D]=E.split(":");return{optionId:V,valueId:D}}).map(E=>{var L,ee;const V=(L=r.options)==null?void 0:L[E.optionId],D=(ee=V==null?void 0:V.values)==null?void 0:ee.find(O=>O.id===E.valueId);return(D==null?void 0:D.value)||""}).join(" "),y=A=>A.split("|").map(E=>{const[V,D]=E.split(":");return{optionId:V,valueId:D}}).map(E=>{var L,ee;const V=(L=r.options)==null?void 0:L[E.optionId],D=(ee=V==null?void 0:V.values)==null?void 0:ee.find(O=>O.id===E.valueId);return{optionId:V==null?void 0:V.id,option:V==null?void 0:V.name,valueId:D==null?void 0:D.id,value:D==null?void 0:D.value}}),b=e.computed(()=>{const A=Object.values(r.options).map(E=>E.values.map(V=>({optionId:E.id,optionName:E.name,valueId:V.id,value:V.value})));return v(A).map(E=>{const V=g(E);return p.value[V]||(p.value[V]={price:0,stock:0}),{key:V,options:E,...p.value[V]}})}),_=e.computed(()=>{let A=[...b.value];return d.value&&(A=A.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.value.toLowerCase().includes(d.value.toLowerCase()))})),A}),k=(A,w)=>{const E=_.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===w});E&&E.forEach(V=>{p.value[g(V.options)].image=A})},x=A=>b.value.filter(E=>{var V,D;return((D=(V=E.options)==null?void 0:V.find(L=>L.optionId===s.value))==null?void 0:D.valueId)===A}).every(E=>!E.image),C=A=>{const w=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A});return w.filter((V,D)=>V.image&&w.findIndex(L=>L.image===V.image)===D).length===1},N=A=>{var E;return(E=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A}).filter(V=>V.image)[0])==null?void 0:E.image},B=A=>{var E;return(E=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A}).filter(V=>V.image)[1])==null?void 0:E.image},z=A=>{var V;const w=b.value.filter(D=>{var L;return(L=D.options)==null?void 0:L.find(ee=>ee.valueId===A)});if(w.length===0)return"0";const E=w.map(D=>D.price);return Math.min(...E)===Math.max(...E)?((V=E[0])==null?void 0:V.toString())||"0":`${Math.min(...E)} - ${Math.max(...E)}`},Y=A=>b.value.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.valueId===A)}).reduce((w,E)=>E.stock>0?w+E.stock:w,0),R=A=>b.value.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.valueId===A)}).reduce((w,E)=>E.stock<0?w+E.stock:w,0),T=()=>{var w,E,V;let A=0;return(V=(E=(w=r.options)==null?void 0:w[s.value])==null?void 0:E.values)==null||V.forEach(D=>{A+=Y(D.id)}),A},U=()=>{var w,E,V;let A=0;return(V=(E=(w=r.options)==null?void 0:w[s.value])==null?void 0:E.values)==null||V.forEach(D=>{A+=R(D.id)}),A},S=e.ref(null),j=e.ref(""),P=async(A,w)=>{A.preventDefault(),S.value=w,j.value="TODO"},M=A=>{S.value=null,j.value=""},K=A=>{p.value=A.reduce((w,E)=>(w[E.combinedOptions]={price:E.price,stock:E.stock,image:E.image},w),{})};return e.onMounted(()=>{m()}),n({setVariantMap:K,refreshVariants:f}),(A,w)=>{const E=e.resolveComponent("SelectValue"),V=e.resolveComponent("SelectTrigger"),D=e.resolveComponent("SelectItem"),L=e.resolveComponent("SelectContent"),ee=e.resolveComponent("Select"),O=e.resolveComponent("Button"),W=e.resolveComponent("Input"),se=e.resolveComponent("PopoverTrigger"),G=e.resolveComponent("RadioGroupItem"),ue=e.resolveComponent("Label"),te=e.resolveComponent("RadioGroup"),we=e.resolveComponent("PopoverContent"),je=e.resolveComponent("Popover"),ye=e.resolveComponent("Checkbox"),$e=e.resolveComponent("TooltipTrigger"),De=e.resolveComponent("TooltipContent"),Ve=e.resolveComponent("Tooltip"),Fe=e.resolveComponent("MediaPickerDialog"),Oe=e.resolveComponent("NumberFieldInput"),Ie=e.resolveComponent("NumberFieldContent"),Ue=e.resolveComponent("NumberField"),Vt=e.resolveComponent("NumberFieldDecrement"),Ct=e.resolveComponent("NumberFieldIncrement");return t.hide?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ev,[e.createElementVNode("div",tv,[Object.keys(t.options).length>1?(e.openBlock(),e.createElementBlock("div",nv,[w[13]||(w[13]=e.createElementVNode("p",null,"Group by",-1)),e.createVNode(ee,{modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=H=>s.value=H)},{default:e.withCtx(()=>[e.createVNode(V,{size:"sm"},{default:e.withCtx(()=>[e.createVNode(E,{placeholder:"Option"})]),_:1}),e.createVNode(L,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,H=>(e.openBlock(),e.createBlock(D,{key:H.id,value:H.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(H.name),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createBlock(O,{key:2,variant:"outline",onClick:w[2]||(w[2]=H=>u.value=!1),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>w[14]||(w[14]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[14]})):(e.openBlock(),e.createBlock(O,{key:1,variant:"outline",onClick:w[1]||(w[1]=H=>u.value=!0),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Search),{class:"size-4"}),e.createVNode(e.unref(F.ListFilter),{class:"size-4"})]),_:1}))]),u.value?(e.openBlock(),e.createElementBlock("div",ov,[e.createElementVNode("div",{class:e.normalizeClass(["relative",{"mb-4":Object.keys(t.options).length>0}])},[e.createVNode(W,{placeholder:"Search",class:"pl-10",modelValue:d.value,"onUpdate:modelValue":w[3]||(w[3]=H=>d.value=H)},null,8,["modelValue"]),e.createVNode(e.unref(F.Search),{class:"size-4 absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none"})],2),e.createElementVNode("div",rv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,H=>(e.openBlock(),e.createBlock(je,{key:H.id},{default:e.withCtx(()=>[e.createVNode(se,{asChild:""},{default:e.withCtx(()=>[e.createVNode(O,{variant:"outline",size:"sm",class:"border-dashed"},{default:e.withCtx(()=>{var Ce;return[H.groupBy?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(H.name)+" is "+e.toDisplayString((Ce=H.values.find(qe=>qe.id===H.groupBy))==null?void 0:Ce.value)+" ",1),e.createElementVNode("div",{class:"p-2",onClick:e.withModifiers(qe=>H.groupBy="",["stop"])},[e.createVNode(e.unref(F.X),{class:"size-3"})],8,lv)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(H.name)+" ",1),e.createVNode(e.unref(F.ChevronDown),{class:"size-3"})],64))]}),_:2},1024)]),_:2},1024),e.createVNode(we,null,{default:e.withCtx(()=>[e.createVNode(te,{modelValue:H.groupBy,"onUpdate:modelValue":Ce=>H.groupBy=Ce,class:"mb-4"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(H.values,Ce=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center space-x-2",key:Ce.id},[e.createVNode(G,{id:Ce.id,value:Ce.id,class:"border-ring"},null,8,["id","value"]),e.createVNode(ue,{for:Ce.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Ce.value),1)]),_:2},1032,["for"])]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"]),e.createVNode(O,{variant:"ghost",onClick:Ce=>H.groupBy="",size:"sm",class:"ml-auto",disabled:!H.groupBy},{default:e.withCtx(()=>w[15]||(w[15]=[e.createTextVNode(" Clear ",-1)])),_:2,__:[15]},1032,["onClick","disabled"])]),_:2},1024)]),_:2},1024))),128))])])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("table",av,[e.createElementVNode("thead",iv,[e.createElementVNode("tr",null,[e.createElementVNode("th",sv,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5"})]),e.createElementVNode("th",uv,[e.createElementVNode("div",dv,[w[16]||(w[16]=e.createElementVNode("span",null,"Variant",-1)),w[17]||(w[17]=e.createElementVNode("span",null,"·",-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("button",{key:0,class:"hover:underline cursor-pointer",onClick:w[4]||(w[4]=H=>c.value=[])},"Collapse all")):(e.openBlock(),e.createElementBlock("button",{key:1,class:"hover:underline cursor-pointer",onClick:w[5]||(w[5]=H=>c.value=t.options[s.value].values.map(Ce=>Ce.id))},"Expand all"))])]),w[20]||(w[20]=e.createElementVNode("th",{class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},"Price",-1)),e.createElementVNode("th",cv,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"underline decoration-dashed underline-offset-4"},{default:e.withCtx(()=>w[18]||(w[18]=[e.createTextVNode("Available",-1)])),_:1,__:[18]}),e.createVNode(De,null,{default:e.withCtx(()=>w[19]||(w[19]=[e.createElementVNode("p",null,"Inventory at your store that can be sold.",-1)])),_:1,__:[19]})]),_:1})])])]),e.createElementVNode("tbody",pv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options[s.value].values,H=>{var Ce,qe;return e.openBlock(),e.createElementBlock(e.Fragment,{key:H.id},[e.createElementVNode("tr",{class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input",onClick:ae=>c.value.includes(H.id)?c.value.splice(c.value.indexOf(H.id),1):c.value.push(H.id)},[e.createElementVNode("td",mv,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5",onClick:w[6]||(w[6]=e.withModifiers(()=>{},["stop"]))})]),e.createElementVNode("td",gv,[e.createElementVNode("div",vv,[e.createElementVNode("div",null,[e.createVNode(Fe,{sources:e.unref(i),"max-files":1,"initial-value":x(H.id)?[]:C(H.id)?[N(H.id)]:[N(H.id),B(H.id)],onSubmit:ae=>k(ae,H.id)},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:w[7]||(w[7]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[x(H.id)?(e.openBlock(),e.createBlock(O,{key:0,variant:"outline",class:"size-15 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ImagePlus))]),_:1})):C(H.id)?(e.openBlock(),e.createElementBlock("img",{key:1,src:N(H.id),class:"size-15 rounded-md object-cover",draggable:"false"},null,8,hv)):(e.openBlock(),e.createElementBlock("div",xv,[e.createElementVNode("img",{src:B(H.id),class:"absolute rotate-[12deg] size-15 rounded-md object-cover",draggable:"false"},null,8,_v),e.createElementVNode("img",{src:N(H.id),class:"relative size-15 rounded-md shadow object-cover",draggable:"false"},null,8,yv)]))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",Vv,[e.createElementVNode("p",Cv,e.toDisplayString(H.value),1),e.createElementVNode("button",bv,[e.createTextVNode(e.toDisplayString((Ce=_.value)==null?void 0:Ce.filter(ae=>{var ie,Ee;return((Ee=(ie=ae.options)==null?void 0:ie.find(Te=>Te.optionId===s.value))==null?void 0:Ee.valueId)===H.id}).length)+" variants ",1),e.createVNode(e.unref(F.ChevronDown),{class:e.normalizeClass(["size-3 transition-transform duration-200",c.value.includes(H.id)?"rotate-180":""])},null,8,["class"])])])])]),e.createElementVNode("td",wv,[e.createElementVNode("div",Nv,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"w-full",asChild:""},{default:e.withCtx(()=>[e.createVNode(W,{modelValue:j.value,"onUpdate:modelValue":w[8]||(w[8]=ae=>j.value=ae),class:e.normalizeClass(["dark:bg-transparent dark:border-ring/50",S.value===H.id?"":"text-transparent"]),onClick:w[9]||(w[9]=e.withModifiers(()=>{},["stop"])),onFocus:ae=>P(ae,H.id),onBlur:ae=>M(H.id)},null,8,["modelValue","class","onFocus","onBlur"])]),_:2},1024),e.createVNode(De,null,{default:e.withCtx(()=>{var ae,ie;return[((ae=_.value)==null?void 0:ae.filter(Ee=>{var Te,$;return(($=(Te=Ee.options)==null?void 0:Te.find(I=>I.optionId===s.value))==null?void 0:$.valueId)===H.id}).length)===1?(e.openBlock(),e.createElementBlock("p",kv,"Applies to 1 variant")):(e.openBlock(),e.createElementBlock("p",Sv,"Applies to all "+e.toDisplayString((ie=_.value)==null?void 0:ie.filter(Ee=>{var Te,$;return(($=(Te=Ee.options)==null?void 0:Te.find(I=>I.optionId===s.value))==null?void 0:$.valueId)===H.id}).length)+" variants",1))]}),_:2},1024)]),_:2},1024),S.value!==H.id?(e.openBlock(),e.createElementBlock("span",Ev,e.toDisplayString(z(H.id)),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("td",Tv,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"w-full focus-visible:outline-none",onClick:w[10]||(w[10]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createVNode(Ue,null,{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Oe,{value:Y(H.id),class:"dark:border-ring/50",disabled:""},null,8,["value"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e.createVNode(De,null,{default:e.withCtx(()=>w[21]||(w[21]=[e.createElementVNode("p",null,"Update for individual variants only",-1)])),_:1,__:[21]})]),_:2},1024)])],8,fv),c.value.includes(H.id)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList((qe=_.value)==null?void 0:qe.filter(ae=>{var ie,Ee;return((Ee=(ie=ae.options)==null?void 0:ie.find(Te=>Te.optionId===s.value))==null?void 0:Ee.valueId)===H.id}),ae=>(e.openBlock(),e.createElementBlock("tr",{key:ae.id,class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input"},[e.createElementVNode("td",Dv,[e.createElementVNode("div",Bv,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5",onClick:w[11]||(w[11]=e.withModifiers(()=>{},["stop"]))})])]),e.createElementVNode("td",$v,[e.createElementVNode("div",Iv,[e.createElementVNode("div",null,[e.createVNode(Fe,{sources:e.unref(i),"max-files":1,"initial-value":p.value[g(ae.options)].image?[p.value[g(ae.options)].image]:[],onSubmit:ie=>p.value[g(ae.options)].image=ie},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:w[12]||(w[12]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[p.value[g(ae.options)].image?(e.openBlock(),e.createElementBlock("img",{key:0,src:p.value[g(ae.options)].image,class:"size-10 object-cover rounded-md",draggable:"false"},null,8,Mv)):(e.openBlock(),e.createBlock(O,{key:1,variant:"outline",class:"size-10 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ImagePlus))]),_:1}))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",Pv,[e.createElementVNode("p",null,e.toDisplayString(ae.options.filter(ie=>ie.optionId!==s.value).map(ie=>ie.value).join(" / ")),1)])])]),e.createElementVNode("td",Rv,[e.createVNode(Ue,{"format-options":{style:"currency",currency:"EUR",currencyDisplay:"symbol",currencySign:"standard"},modelValue:p.value[g(ae.options)].price,"onUpdate:modelValue":ie=>p.value[g(ae.options)].price=ie,min:0},{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Oe,{class:"dark:border-ring/50"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("td",Av,[e.createVNode(Ue,{modelValue:p.value[g(ae.options)].stock,"onUpdate:modelValue":ie=>p.value[g(ae.options)].stock=ie},{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Vt,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"}),e.createVNode(Oe,{class:"dark:border-ring/50"}),e.createVNode(Ct,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])])]))),128)):e.createCommentVNode("",!0)],64)}),128))])]),e.createElementVNode("div",Fv,[e.createTextVNode(" Total inventory at Webshop: "+e.toDisplayString(T())+" ",1),U()<0?(e.openBlock(),e.createElementBlock("span",Ov,"("+e.toDisplayString(U())+")",1)):e.createCommentVNode("",!0),w[22]||(w[22]=e.createTextVNode(" available ",-1))])],64)):e.createCommentVNode("",!0)]))}}}),Lv=e.defineComponent({__name:"Variants",setup(t){const{params:n}=J.useModuleRoute(),{value:o}=Se("options"),{value:r}=Se("variants"),l=e.ref([]),a=e.ref([]),i=e.useTemplateRef("optionsEl"),d=e.useTemplateRef("variantsEl");e.watch(l,async p=>{var m;o.value=p?JSON.parse(JSON.stringify(p)):[],await e.nextTick(),(m=d.value)==null||m.refreshVariants()},{deep:!0}),e.watch(a,p=>{r.value=p?JSON.parse(JSON.stringify(p)):[]},{deep:!0});const s=e.ref(!1),u=e.ref(!1);e.watch(o,async p=>{var m;n.value.productId=="new"||!p||Array.isArray(p)&&p.length===0||s.value||(s.value=!0,l.value=JSON.parse(JSON.stringify(p)),await e.nextTick(),p.length>1&&((m=i.value)==null||m.minifyAll()))},{deep:!0,immediate:!0}),e.watch(r,async p=>{var m;n.value.productId=="new"||!p||Array.isArray(p)&&p.length===0||u.value||(u.value=!0,a.value=JSON.parse(JSON.stringify(p)),await e.nextTick(),(m=d.value)==null||m.setVariantMap(p))},{deep:!0,immediate:!0});const c=e.computed(()=>{let p=l.value||[],m={};return!p||!Array.isArray(p)||p.forEach(f=>{var v,g,h,y;!f.name.trim()||((g=(v=f.values)==null?void 0:v.filter(b=>b.value.trim()!==""))==null?void 0:g.length)===0||(m[f.id]={id:f.id,name:f.name,values:((y=(h=f.values)==null?void 0:h.map(b=>({id:b.id,value:b.value})))==null?void 0:y.filter(b=>b.value.trim()!==""))||[]})}),m});return(p,m)=>{const f=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[m[2]||(m[2]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Variants",-1)),e.createVNode(Qg,{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=g=>l.value=g),ref_key:"optionsEl",ref:i},null,8,["modelValue"]),e.createVNode(zv,{ref_key:"variantsEl",ref:d,options:c.value,modelValue:a.value,"onUpdate:modelValue":m[1]||(m[1]=g=>a.value=g),hide:Object.keys(c.value).length===0},null,8,["options","modelValue","hide"])]),_:1,__:[2]})]),_:1})}}}),jv={class:"flex justify-between gap-4"},Uv={class:"text-[#1a0dab] text-lg"},Hv={class:"text-[#006621] text-[13px]"},Gv={class:"text-[#545454] text-[13px]"},qv={key:0,class:"text-red-500 text-sm mt-1"},Wv={key:0,class:"text-red-500 text-sm mt-1"},Zv={key:0,class:"text-red-500 text-sm mt-1"},Yv={key:1,class:"text-[#545454] text-[13px]"},Xv=e.defineComponent({__name:"SEO",setup(t){const{errors:n}=Tt(),{value:o}=Se("slug"),{value:r}=Se("seo");return(l,a)=>{const i=e.resolveComponent("Button"),d=e.resolveComponent("Label"),s=e.resolveComponent("Input"),u=e.resolveComponent("CardContent"),c=e.resolveComponent("Card");return e.openBlock(),e.createBlock(c,null,{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>{var p,m;return[e.createElementVNode("div",jv,[a[3]||(a[3]=e.createElementVNode("p",{class:"text-md font-semibold"},"Search engine listing",-1)),e.createVNode(i,{variant:"ghost"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Pencil))]),_:1})]),a[7]||(a[7]=e.createElementVNode("p",{class:"text-sm text-muted-foreground"}," Add a title and description to see how this product might appear in a search engine listing ",-1)),e.createElementVNode("div",null,[e.createElementVNode("p",Uv,e.toDisplayString(e.unref(r).title),1),e.createElementVNode("p",Hv,e.toDisplayString(e.unref(o)),1),e.createElementVNode("p",Gv,e.toDisplayString(e.unref(r).description),1)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"slug"},{default:e.withCtx(()=>a[4]||(a[4]=[e.createTextVNode("Slug",-1)])),_:1,__:[4]}),e.createVNode(s,{id:"slug",placeholder:"Slug",modelValue:e.unref(o),"onUpdate:modelValue":a[0]||(a[0]=f=>e.isRef(o)?o.value=f:null)},null,8,["modelValue"]),e.unref(n).slug?(e.openBlock(),e.createElementBlock("p",qv,e.toDisplayString(e.unref(n).slug),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"meta-title"},{default:e.withCtx(()=>a[5]||(a[5]=[e.createTextVNode("Title",-1)])),_:1,__:[5]}),e.createVNode(s,{id:"meta-title",placeholder:"Title",modelValue:e.unref(r).title,"onUpdate:modelValue":a[1]||(a[1]=f=>e.unref(r).title=f)},null,8,["modelValue"]),(p=e.unref(n).seo)!=null&&p.title?(e.openBlock(),e.createElementBlock("p",Wv,e.toDisplayString(e.unref(n).seo.title),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"meta-description"},{default:e.withCtx(()=>a[6]||(a[6]=[e.createTextVNode("Description",-1)])),_:1,__:[6]}),e.createVNode(s,{id:"meta-description",placeholder:"Description",modelValue:e.unref(r).description,"onUpdate:modelValue":a[2]||(a[2]=f=>e.unref(r).description=f)},null,8,["modelValue"]),(m=e.unref(n).seo)!=null&&m.description?(e.openBlock(),e.createElementBlock("p",Zv,e.toDisplayString(e.unref(n).seo.description),1)):(e.openBlock(),e.createElementBlock("p",Yv,e.toDisplayString(e.unref(r).description.length)+" characters",1))])]}),_:1,__:[7]})]),_:1})}}}),Jv={class:"flex items-center gap-2"},Kv={key:0,class:"size-3 rounded-full bg-green-500"},Qv={key:1,class:"size-3 rounded-full bg-blue-500"},eh={key:2,class:"size-3 rounded-full bg-gray-300"},th=e.defineComponent({__name:"Status",setup(t){const{errors:n}=Tt(),{value:o}=Se("status");return(r,l)=>{const a=e.resolveComponent("SelectValue"),i=e.resolveComponent("SelectTrigger"),d=e.resolveComponent("SelectItem"),s=e.resolveComponent("SelectGroup"),u=e.resolveComponent("SelectContent"),c=e.resolveComponent("Select"),p=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[l[4]||(l[4]=e.createElementVNode("p",{class:"text-md font-semibold mb-2"},"Status",-1)),e.createVNode(c,{modelValue:e.unref(o),"onUpdate:modelValue":l[0]||(l[0]=f=>e.isRef(o)?o.value=f:null),class:"w-full"},{default:e.withCtx(()=>[e.createVNode(i,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",Jv,[e.unref(o)==="published"?(e.openBlock(),e.createElementBlock("span",Kv)):e.unref(o)==="draft"?(e.openBlock(),e.createElementBlock("span",Qv)):e.unref(o)==="archived"?(e.openBlock(),e.createElementBlock("span",eh)):e.createCommentVNode("",!0),e.createVNode(a,{placeholder:"Status"})])]),_:1}),e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(d,{value:"published"},{default:e.withCtx(()=>l[1]||(l[1]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-green-500"},null,-1),e.createTextVNode(" Published ",-1)])),_:1,__:[1]}),e.createVNode(d,{value:"draft"},{default:e.withCtx(()=>l[2]||(l[2]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-blue-500"},null,-1),e.createTextVNode(" Draft ",-1)])),_:1,__:[2]}),e.createVNode(d,{value:"archived"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-gray-300"},null,-1),e.createTextVNode(" Archived ",-1)])),_:1,__:[3]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1,__:[4]})]),_:1})}}});var ke;(function(t){t.assertEqual=l=>{};function n(l){}t.assertIs=n;function o(l){throw new Error}t.assertNever=o,t.arrayToEnum=l=>{const a={};for(const i of l)a[i]=i;return a},t.getValidEnumValues=l=>{const a=t.objectKeys(l).filter(d=>typeof l[l[d]]!="number"),i={};for(const d of a)i[d]=l[d];return t.objectValues(i)},t.objectValues=l=>t.objectKeys(l).map(function(a){return l[a]}),t.objectKeys=typeof Object.keys=="function"?l=>Object.keys(l):l=>{const a=[];for(const i in l)Object.prototype.hasOwnProperty.call(l,i)&&a.push(i);return a},t.find=(l,a)=>{for(const i of l)if(a(i))return i},t.isInteger=typeof Number.isInteger=="function"?l=>Number.isInteger(l):l=>typeof l=="number"&&Number.isFinite(l)&&Math.floor(l)===l;function r(l,a=" | "){return l.map(i=>typeof i=="string"?`'${i}'`:i).join(a)}t.joinValues=r,t.jsonStringifyReplacer=(l,a)=>typeof a=="bigint"?a.toString():a})(ke||(ke={}));var Jl;(function(t){t.mergeShapes=(n,o)=>({...n,...o})})(Jl||(Jl={}));const re=ke.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ut=t=>{switch(typeof t){case"undefined":return re.undefined;case"string":return re.string;case"number":return Number.isNaN(t)?re.nan:re.number;case"boolean":return re.boolean;case"function":return re.function;case"bigint":return re.bigint;case"symbol":return re.symbol;case"object":return Array.isArray(t)?re.array:t===null?re.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?re.promise:typeof Map<"u"&&t instanceof Map?re.map:typeof Set<"u"&&t instanceof Set?re.set:typeof Date<"u"&&t instanceof Date?re.date:re.object;default:return re.unknown}},Q=ke.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Ot extends Error{get errors(){return this.issues}constructor(n){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const o=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,o):this.__proto__=o,this.name="ZodError",this.issues=n}format(n){const o=n||function(a){return a.message},r={_errors:[]},l=a=>{for(const i of a.issues)if(i.code==="invalid_union")i.unionErrors.map(l);else if(i.code==="invalid_return_type")l(i.returnTypeError);else if(i.code==="invalid_arguments")l(i.argumentsError);else if(i.path.length===0)r._errors.push(o(i));else{let d=r,s=0;for(;s<i.path.length;){const u=i.path[s];s===i.path.length-1?(d[u]=d[u]||{_errors:[]},d[u]._errors.push(o(i))):d[u]=d[u]||{_errors:[]},d=d[u],s++}}};return l(this),r}static assert(n){if(!(n instanceof Ot))throw new Error(`Not a ZodError: ${n}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ke.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(n=o=>o.message){const o={},r=[];for(const l of this.issues)if(l.path.length>0){const a=l.path[0];o[a]=o[a]||[],o[a].push(n(l))}else r.push(n(l));return{formErrors:r,fieldErrors:o}}get formErrors(){return this.flatten()}}Ot.create=t=>new Ot(t);const Hr=(t,n)=>{let o;switch(t.code){case Q.invalid_type:t.received===re.undefined?o="Required":o=`Expected ${t.expected}, received ${t.received}`;break;case Q.invalid_literal:o=`Invalid literal value, expected ${JSON.stringify(t.expected,ke.jsonStringifyReplacer)}`;break;case Q.unrecognized_keys:o=`Unrecognized key(s) in object: ${ke.joinValues(t.keys,", ")}`;break;case Q.invalid_union:o="Invalid input";break;case Q.invalid_union_discriminator:o=`Invalid discriminator value. Expected ${ke.joinValues(t.options)}`;break;case Q.invalid_enum_value:o=`Invalid enum value. Expected ${ke.joinValues(t.options)}, received '${t.received}'`;break;case Q.invalid_arguments:o="Invalid function arguments";break;case Q.invalid_return_type:o="Invalid function return type";break;case Q.invalid_date:o="Invalid date";break;case Q.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(o=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(o=`${o} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?o=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?o=`Invalid input: must end with "${t.validation.endsWith}"`:ke.assertNever(t.validation):t.validation!=="regex"?o=`Invalid ${t.validation}`:o="Invalid";break;case Q.too_small:t.type==="array"?o=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?o=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?o=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?o=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?o=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:o="Invalid input";break;case Q.too_big:t.type==="array"?o=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?o=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?o=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?o=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?o=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:o="Invalid input";break;case Q.custom:o="Invalid input";break;case Q.invalid_intersection_types:o="Intersection results could not be merged";break;case Q.not_multiple_of:o=`Number must be a multiple of ${t.multipleOf}`;break;case Q.not_finite:o="Number must be finite";break;default:o=n.defaultError,ke.assertNever(t)}return{message:o}};let nh=Hr;function oh(){return nh}const rh=t=>{const{data:n,path:o,errorMaps:r,issueData:l}=t,a=[...o,...l.path||[]],i={...l,path:a};if(l.message!==void 0)return{...l,path:a,message:l.message};let d="";const s=r.filter(u=>!!u).slice().reverse();for(const u of s)d=u(i,{data:n,defaultError:d}).message;return{...l,path:a,message:d}};function oe(t,n){const o=oh(),r=rh({issueData:n,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,o,o===Hr?void 0:Hr].filter(l=>!!l)});t.common.issues.push(r)}class ut{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(n,o){const r=[];for(const l of o){if(l.status==="aborted")return xe;l.status==="dirty"&&n.dirty(),r.push(l.value)}return{status:n.value,value:r}}static async mergeObjectAsync(n,o){const r=[];for(const l of o){const a=await l.key,i=await l.value;r.push({key:a,value:i})}return ut.mergeObjectSync(n,r)}static mergeObjectSync(n,o){const r={};for(const l of o){const{key:a,value:i}=l;if(a.status==="aborted"||i.status==="aborted")return xe;a.status==="dirty"&&n.dirty(),i.status==="dirty"&&n.dirty(),a.value!=="__proto__"&&(typeof i.value<"u"||l.alwaysSet)&&(r[a.value]=i.value)}return{status:n.value,value:r}}}const xe=Object.freeze({status:"aborted"}),Gn=t=>({status:"dirty",value:t}),gt=t=>({status:"valid",value:t}),Kl=t=>t.status==="aborted",Ql=t=>t.status==="dirty",Tn=t=>t.status==="valid",$o=t=>typeof Promise<"u"&&t instanceof Promise;var le;(function(t){t.errToObj=n=>typeof n=="string"?{message:n}:n||{},t.toString=n=>typeof n=="string"?n:n==null?void 0:n.message})(le||(le={}));class Xt{constructor(n,o,r,l){this._cachedPath=[],this.parent=n,this.data=o,this._path=r,this._key=l}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const ea=(t,n)=>{if(Tn(n))return{success:!0,data:n.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const o=new Ot(t.common.issues);return this._error=o,this._error}}};function be(t){if(!t)return{};const{errorMap:n,invalid_type_error:o,required_error:r,description:l}=t;if(n&&(o||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return n?{errorMap:n,description:l}:{errorMap:(i,d)=>{const{message:s}=t;return i.code==="invalid_enum_value"?{message:s??d.defaultError}:typeof d.data>"u"?{message:s??r??d.defaultError}:i.code!=="invalid_type"?{message:d.defaultError}:{message:s??o??d.defaultError}},description:l}}class Ne{get description(){return this._def.description}_getType(n){return Ut(n.data)}_getOrReturnCtx(n,o){return o||{common:n.parent.common,data:n.data,parsedType:Ut(n.data),schemaErrorMap:this._def.errorMap,path:n.path,parent:n.parent}}_processInputParams(n){return{status:new ut,ctx:{common:n.parent.common,data:n.data,parsedType:Ut(n.data),schemaErrorMap:this._def.errorMap,path:n.path,parent:n.parent}}}_parseSync(n){const o=this._parse(n);if($o(o))throw new Error("Synchronous parse encountered promise.");return o}_parseAsync(n){const o=this._parse(n);return Promise.resolve(o)}parse(n,o){const r=this.safeParse(n,o);if(r.success)return r.data;throw r.error}safeParse(n,o){const r={common:{issues:[],async:(o==null?void 0:o.async)??!1,contextualErrorMap:o==null?void 0:o.errorMap},path:(o==null?void 0:o.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:Ut(n)},l=this._parseSync({data:n,path:r.path,parent:r});return ea(r,l)}"~validate"(n){var r,l;const o={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:Ut(n)};if(!this["~standard"].async)try{const a=this._parseSync({data:n,path:[],parent:o});return Tn(a)?{value:a.value}:{issues:o.common.issues}}catch(a){(l=(r=a==null?void 0:a.message)==null?void 0:r.toLowerCase())!=null&&l.includes("encountered")&&(this["~standard"].async=!0),o.common={issues:[],async:!0}}return this._parseAsync({data:n,path:[],parent:o}).then(a=>Tn(a)?{value:a.value}:{issues:o.common.issues})}async parseAsync(n,o){const r=await this.safeParseAsync(n,o);if(r.success)return r.data;throw r.error}async safeParseAsync(n,o){const r={common:{issues:[],contextualErrorMap:o==null?void 0:o.errorMap,async:!0},path:(o==null?void 0:o.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:Ut(n)},l=this._parse({data:n,path:r.path,parent:r}),a=await($o(l)?l:Promise.resolve(l));return ea(r,a)}refine(n,o){const r=l=>typeof o=="string"||typeof o>"u"?{message:o}:typeof o=="function"?o(l):o;return this._refinement((l,a)=>{const i=n(l),d=()=>a.addIssue({code:Q.custom,...r(l)});return typeof Promise<"u"&&i instanceof Promise?i.then(s=>s?!0:(d(),!1)):i?!0:(d(),!1)})}refinement(n,o){return this._refinement((r,l)=>n(r)?!0:(l.addIssue(typeof o=="function"?o(r,l):o),!1))}_refinement(n){return new $n({schema:this,typeName:ve.ZodEffects,effect:{type:"refinement",refinement:n}})}superRefine(n){return this._refinement(n)}constructor(n){this.spa=this.safeParseAsync,this._def=n,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:o=>this["~validate"](o)}}optional(){return qt.create(this,this._def)}nullable(){return In.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return St.create(this)}promise(){return Ro.create(this,this._def)}or(n){return Mo.create([this,n],this._def)}and(n){return Po.create(this,n,this._def)}transform(n){return new $n({...be(this._def),schema:this,typeName:ve.ZodEffects,effect:{type:"transform",transform:n}})}default(n){const o=typeof n=="function"?n:()=>n;return new Ao({...be(this._def),innerType:this,defaultValue:o,typeName:ve.ZodDefault})}brand(){return new Sh({typeName:ve.ZodBranded,type:this,...be(this._def)})}catch(n){const o=typeof n=="function"?n:()=>n;return new qr({...be(this._def),innerType:this,catchValue:o,typeName:ve.ZodCatch})}describe(n){const o=this.constructor;return new o({...this._def,description:n})}pipe(n){return vl.create(this,n)}readonly(){return Wr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const lh=/^c[^\s-]{8,}$/i,ah=/^[0-9a-z]+$/,ih=/^[0-9A-HJKMNP-TV-Z]{26}$/i,sh=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,uh=/^[a-z0-9_-]{21}$/i,dh=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ch=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ph=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let wr;const mh=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,gh=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,vh=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,hh=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xh=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,_h=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ui="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",yh=new RegExp(`^${Ui}$`);function Hi(t){let n="[0-5]\\d";t.precision?n=`${n}\\.\\d{${t.precision}}`:t.precision==null&&(n=`${n}(\\.\\d+)?`);const o=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${n})${o}`}function Vh(t){return new RegExp(`^${Hi(t)}$`)}function Ch(t){let n=`${Ui}T${Hi(t)}`;const o=[];return o.push(t.local?"Z?":"Z"),t.offset&&o.push("([+-]\\d{2}:?\\d{2})"),n=`${n}(${o.join("|")})`,new RegExp(`^${n}$`)}function bh(t,n){return!!((n==="v4"||!n)&&mh.test(t)||(n==="v6"||!n)&&vh.test(t))}function wh(t,n){if(!dh.test(t))return!1;try{const[o]=t.split(".");if(!o)return!1;const r=o.replace(/-/g,"+").replace(/_/g,"/").padEnd(o.length+(4-o.length%4)%4,"="),l=JSON.parse(atob(r));return!(typeof l!="object"||l===null||"typ"in l&&(l==null?void 0:l.typ)!=="JWT"||!l.alg||n&&l.alg!==n)}catch{return!1}}function Nh(t,n){return!!((n==="v4"||!n)&&gh.test(t)||(n==="v6"||!n)&&hh.test(t))}class Rt extends Ne{_parse(n){if(this._def.coerce&&(n.data=String(n.data)),this._getType(n)!==re.string){const a=this._getOrReturnCtx(n);return oe(a,{code:Q.invalid_type,expected:re.string,received:a.parsedType}),xe}const r=new ut;let l;for(const a of this._def.checks)if(a.kind==="min")n.data.length<a.value&&(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")n.data.length>a.value&&(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){const i=n.data.length>a.value,d=n.data.length<a.value;(i||d)&&(l=this._getOrReturnCtx(n,l),i?oe(l,{code:Q.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):d&&oe(l,{code:Q.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")ph.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"email",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")wr||(wr=new RegExp(fh,"u")),wr.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"emoji",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")sh.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"uuid",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")uh.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"nanoid",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")lh.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"cuid",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")ah.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"cuid2",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")ih.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"ulid",code:Q.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(n.data)}catch{l=this._getOrReturnCtx(n,l),oe(l,{validation:"url",code:Q.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"regex",code:Q.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?n.data=n.data.trim():a.kind==="includes"?n.data.includes(a.value,a.position)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?n.data=n.data.toLowerCase():a.kind==="toUpperCase"?n.data=n.data.toUpperCase():a.kind==="startsWith"?n.data.startsWith(a.value)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?n.data.endsWith(a.value)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?Ch(a).test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?yh.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?Vh(a).test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?ch.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"duration",code:Q.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?bh(n.data,a.version)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"ip",code:Q.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?wh(n.data,a.alg)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"jwt",code:Q.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?Nh(n.data,a.version)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"cidr",code:Q.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?xh.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"base64",code:Q.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?_h.test(n.data)||(l=this._getOrReturnCtx(n,l),oe(l,{validation:"base64url",code:Q.invalid_string,message:a.message}),r.dirty()):ke.assertNever(a);return{status:r.value,value:n.data}}_regex(n,o,r){return this.refinement(l=>n.test(l),{validation:o,code:Q.invalid_string,...le.errToObj(r)})}_addCheck(n){return new Rt({...this._def,checks:[...this._def.checks,n]})}email(n){return this._addCheck({kind:"email",...le.errToObj(n)})}url(n){return this._addCheck({kind:"url",...le.errToObj(n)})}emoji(n){return this._addCheck({kind:"emoji",...le.errToObj(n)})}uuid(n){return this._addCheck({kind:"uuid",...le.errToObj(n)})}nanoid(n){return this._addCheck({kind:"nanoid",...le.errToObj(n)})}cuid(n){return this._addCheck({kind:"cuid",...le.errToObj(n)})}cuid2(n){return this._addCheck({kind:"cuid2",...le.errToObj(n)})}ulid(n){return this._addCheck({kind:"ulid",...le.errToObj(n)})}base64(n){return this._addCheck({kind:"base64",...le.errToObj(n)})}base64url(n){return this._addCheck({kind:"base64url",...le.errToObj(n)})}jwt(n){return this._addCheck({kind:"jwt",...le.errToObj(n)})}ip(n){return this._addCheck({kind:"ip",...le.errToObj(n)})}cidr(n){return this._addCheck({kind:"cidr",...le.errToObj(n)})}datetime(n){return typeof n=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:n}):this._addCheck({kind:"datetime",precision:typeof(n==null?void 0:n.precision)>"u"?null:n==null?void 0:n.precision,offset:(n==null?void 0:n.offset)??!1,local:(n==null?void 0:n.local)??!1,...le.errToObj(n==null?void 0:n.message)})}date(n){return this._addCheck({kind:"date",message:n})}time(n){return typeof n=="string"?this._addCheck({kind:"time",precision:null,message:n}):this._addCheck({kind:"time",precision:typeof(n==null?void 0:n.precision)>"u"?null:n==null?void 0:n.precision,...le.errToObj(n==null?void 0:n.message)})}duration(n){return this._addCheck({kind:"duration",...le.errToObj(n)})}regex(n,o){return this._addCheck({kind:"regex",regex:n,...le.errToObj(o)})}includes(n,o){return this._addCheck({kind:"includes",value:n,position:o==null?void 0:o.position,...le.errToObj(o==null?void 0:o.message)})}startsWith(n,o){return this._addCheck({kind:"startsWith",value:n,...le.errToObj(o)})}endsWith(n,o){return this._addCheck({kind:"endsWith",value:n,...le.errToObj(o)})}min(n,o){return this._addCheck({kind:"min",value:n,...le.errToObj(o)})}max(n,o){return this._addCheck({kind:"max",value:n,...le.errToObj(o)})}length(n,o){return this._addCheck({kind:"length",value:n,...le.errToObj(o)})}nonempty(n){return this.min(1,le.errToObj(n))}trim(){return new Rt({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Rt({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Rt({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(n=>n.kind==="datetime")}get isDate(){return!!this._def.checks.find(n=>n.kind==="date")}get isTime(){return!!this._def.checks.find(n=>n.kind==="time")}get isDuration(){return!!this._def.checks.find(n=>n.kind==="duration")}get isEmail(){return!!this._def.checks.find(n=>n.kind==="email")}get isURL(){return!!this._def.checks.find(n=>n.kind==="url")}get isEmoji(){return!!this._def.checks.find(n=>n.kind==="emoji")}get isUUID(){return!!this._def.checks.find(n=>n.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(n=>n.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(n=>n.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(n=>n.kind==="cuid2")}get isULID(){return!!this._def.checks.find(n=>n.kind==="ulid")}get isIP(){return!!this._def.checks.find(n=>n.kind==="ip")}get isCIDR(){return!!this._def.checks.find(n=>n.kind==="cidr")}get isBase64(){return!!this._def.checks.find(n=>n.kind==="base64")}get isBase64url(){return!!this._def.checks.find(n=>n.kind==="base64url")}get minLength(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxLength(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}}Rt.create=t=>new Rt({checks:[],typeName:ve.ZodString,coerce:(t==null?void 0:t.coerce)??!1,...be(t)});function kh(t,n){const o=(t.toString().split(".")[1]||"").length,r=(n.toString().split(".")[1]||"").length,l=o>r?o:r,a=Number.parseInt(t.toFixed(l).replace(".","")),i=Number.parseInt(n.toFixed(l).replace(".",""));return a%i/10**l}class pn extends Ne{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(n){if(this._def.coerce&&(n.data=Number(n.data)),this._getType(n)!==re.number){const a=this._getOrReturnCtx(n);return oe(a,{code:Q.invalid_type,expected:re.number,received:a.parsedType}),xe}let r;const l=new ut;for(const a of this._def.checks)a.kind==="int"?ke.isInteger(n.data)||(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.invalid_type,expected:"integer",received:"float",message:a.message}),l.dirty()):a.kind==="min"?(a.inclusive?n.data<a.value:n.data<=a.value)&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),l.dirty()):a.kind==="max"?(a.inclusive?n.data>a.value:n.data>=a.value)&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),l.dirty()):a.kind==="multipleOf"?kh(n.data,a.value)!==0&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.not_multiple_of,multipleOf:a.value,message:a.message}),l.dirty()):a.kind==="finite"?Number.isFinite(n.data)||(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.not_finite,message:a.message}),l.dirty()):ke.assertNever(a);return{status:l.value,value:n.data}}gte(n,o){return this.setLimit("min",n,!0,le.toString(o))}gt(n,o){return this.setLimit("min",n,!1,le.toString(o))}lte(n,o){return this.setLimit("max",n,!0,le.toString(o))}lt(n,o){return this.setLimit("max",n,!1,le.toString(o))}setLimit(n,o,r,l){return new pn({...this._def,checks:[...this._def.checks,{kind:n,value:o,inclusive:r,message:le.toString(l)}]})}_addCheck(n){return new pn({...this._def,checks:[...this._def.checks,n]})}int(n){return this._addCheck({kind:"int",message:le.toString(n)})}positive(n){return this._addCheck({kind:"min",value:0,inclusive:!1,message:le.toString(n)})}negative(n){return this._addCheck({kind:"max",value:0,inclusive:!1,message:le.toString(n)})}nonpositive(n){return this._addCheck({kind:"max",value:0,inclusive:!0,message:le.toString(n)})}nonnegative(n){return this._addCheck({kind:"min",value:0,inclusive:!0,message:le.toString(n)})}multipleOf(n,o){return this._addCheck({kind:"multipleOf",value:n,message:le.toString(o)})}finite(n){return this._addCheck({kind:"finite",message:le.toString(n)})}safe(n){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:le.toString(n)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:le.toString(n)})}get minValue(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxValue(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}get isInt(){return!!this._def.checks.find(n=>n.kind==="int"||n.kind==="multipleOf"&&ke.isInteger(n.value))}get isFinite(){let n=null,o=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(o===null||r.value>o)&&(o=r.value):r.kind==="max"&&(n===null||r.value<n)&&(n=r.value)}return Number.isFinite(o)&&Number.isFinite(n)}}pn.create=t=>new pn({checks:[],typeName:ve.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...be(t)});class fn extends Ne{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(n){if(this._def.coerce)try{n.data=BigInt(n.data)}catch{return this._getInvalidInput(n)}if(this._getType(n)!==re.bigint)return this._getInvalidInput(n);let r;const l=new ut;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?n.data<a.value:n.data<=a.value)&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),l.dirty()):a.kind==="max"?(a.inclusive?n.data>a.value:n.data>=a.value)&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),l.dirty()):a.kind==="multipleOf"?n.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(n,r),oe(r,{code:Q.not_multiple_of,multipleOf:a.value,message:a.message}),l.dirty()):ke.assertNever(a);return{status:l.value,value:n.data}}_getInvalidInput(n){const o=this._getOrReturnCtx(n);return oe(o,{code:Q.invalid_type,expected:re.bigint,received:o.parsedType}),xe}gte(n,o){return this.setLimit("min",n,!0,le.toString(o))}gt(n,o){return this.setLimit("min",n,!1,le.toString(o))}lte(n,o){return this.setLimit("max",n,!0,le.toString(o))}lt(n,o){return this.setLimit("max",n,!1,le.toString(o))}setLimit(n,o,r,l){return new fn({...this._def,checks:[...this._def.checks,{kind:n,value:o,inclusive:r,message:le.toString(l)}]})}_addCheck(n){return new fn({...this._def,checks:[...this._def.checks,n]})}positive(n){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:le.toString(n)})}negative(n){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:le.toString(n)})}nonpositive(n){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:le.toString(n)})}nonnegative(n){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:le.toString(n)})}multipleOf(n,o){return this._addCheck({kind:"multipleOf",value:n,message:le.toString(o)})}get minValue(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxValue(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}}fn.create=t=>new fn({checks:[],typeName:ve.ZodBigInt,coerce:(t==null?void 0:t.coerce)??!1,...be(t)});class Io extends Ne{_parse(n){if(this._def.coerce&&(n.data=!!n.data),this._getType(n)!==re.boolean){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.boolean,received:r.parsedType}),xe}return gt(n.data)}}Io.create=t=>new Io({typeName:ve.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...be(t)});class Dn extends Ne{_parse(n){if(this._def.coerce&&(n.data=new Date(n.data)),this._getType(n)!==re.date){const a=this._getOrReturnCtx(n);return oe(a,{code:Q.invalid_type,expected:re.date,received:a.parsedType}),xe}if(Number.isNaN(n.data.getTime())){const a=this._getOrReturnCtx(n);return oe(a,{code:Q.invalid_date}),xe}const r=new ut;let l;for(const a of this._def.checks)a.kind==="min"?n.data.getTime()<a.value&&(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?n.data.getTime()>a.value&&(l=this._getOrReturnCtx(n,l),oe(l,{code:Q.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):ke.assertNever(a);return{status:r.value,value:new Date(n.data.getTime())}}_addCheck(n){return new Dn({...this._def,checks:[...this._def.checks,n]})}min(n,o){return this._addCheck({kind:"min",value:n.getTime(),message:le.toString(o)})}max(n,o){return this._addCheck({kind:"max",value:n.getTime(),message:le.toString(o)})}get minDate(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n!=null?new Date(n):null}get maxDate(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n!=null?new Date(n):null}}Dn.create=t=>new Dn({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:ve.ZodDate,...be(t)});class ta extends Ne{_parse(n){if(this._getType(n)!==re.symbol){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.symbol,received:r.parsedType}),xe}return gt(n.data)}}ta.create=t=>new ta({typeName:ve.ZodSymbol,...be(t)});class na extends Ne{_parse(n){if(this._getType(n)!==re.undefined){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.undefined,received:r.parsedType}),xe}return gt(n.data)}}na.create=t=>new na({typeName:ve.ZodUndefined,...be(t)});class oa extends Ne{_parse(n){if(this._getType(n)!==re.null){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.null,received:r.parsedType}),xe}return gt(n.data)}}oa.create=t=>new oa({typeName:ve.ZodNull,...be(t)});class ra extends Ne{constructor(){super(...arguments),this._any=!0}_parse(n){return gt(n.data)}}ra.create=t=>new ra({typeName:ve.ZodAny,...be(t)});class la extends Ne{constructor(){super(...arguments),this._unknown=!0}_parse(n){return gt(n.data)}}la.create=t=>new la({typeName:ve.ZodUnknown,...be(t)});class Jt extends Ne{_parse(n){const o=this._getOrReturnCtx(n);return oe(o,{code:Q.invalid_type,expected:re.never,received:o.parsedType}),xe}}Jt.create=t=>new Jt({typeName:ve.ZodNever,...be(t)});class aa extends Ne{_parse(n){if(this._getType(n)!==re.undefined){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.void,received:r.parsedType}),xe}return gt(n.data)}}aa.create=t=>new aa({typeName:ve.ZodVoid,...be(t)});class St extends Ne{_parse(n){const{ctx:o,status:r}=this._processInputParams(n),l=this._def;if(o.parsedType!==re.array)return oe(o,{code:Q.invalid_type,expected:re.array,received:o.parsedType}),xe;if(l.exactLength!==null){const i=o.data.length>l.exactLength.value,d=o.data.length<l.exactLength.value;(i||d)&&(oe(o,{code:i?Q.too_big:Q.too_small,minimum:d?l.exactLength.value:void 0,maximum:i?l.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:l.exactLength.message}),r.dirty())}if(l.minLength!==null&&o.data.length<l.minLength.value&&(oe(o,{code:Q.too_small,minimum:l.minLength.value,type:"array",inclusive:!0,exact:!1,message:l.minLength.message}),r.dirty()),l.maxLength!==null&&o.data.length>l.maxLength.value&&(oe(o,{code:Q.too_big,maximum:l.maxLength.value,type:"array",inclusive:!0,exact:!1,message:l.maxLength.message}),r.dirty()),o.common.async)return Promise.all([...o.data].map((i,d)=>l.type._parseAsync(new Xt(o,i,o.path,d)))).then(i=>ut.mergeArray(r,i));const a=[...o.data].map((i,d)=>l.type._parseSync(new Xt(o,i,o.path,d)));return ut.mergeArray(r,a)}get element(){return this._def.type}min(n,o){return new St({...this._def,minLength:{value:n,message:le.toString(o)}})}max(n,o){return new St({...this._def,maxLength:{value:n,message:le.toString(o)}})}length(n,o){return new St({...this._def,exactLength:{value:n,message:le.toString(o)}})}nonempty(n){return this.min(1,n)}}St.create=(t,n)=>new St({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ve.ZodArray,...be(n)});function yn(t){if(t instanceof Le){const n={};for(const o in t.shape){const r=t.shape[o];n[o]=qt.create(yn(r))}return new Le({...t._def,shape:()=>n})}else return t instanceof St?new St({...t._def,type:yn(t.element)}):t instanceof qt?qt.create(yn(t.unwrap())):t instanceof In?In.create(yn(t.unwrap())):t instanceof mn?mn.create(t.items.map(n=>yn(n))):t}class Le extends Ne{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const n=this._def.shape(),o=ke.objectKeys(n);return this._cached={shape:n,keys:o},this._cached}_parse(n){if(this._getType(n)!==re.object){const u=this._getOrReturnCtx(n);return oe(u,{code:Q.invalid_type,expected:re.object,received:u.parsedType}),xe}const{status:r,ctx:l}=this._processInputParams(n),{shape:a,keys:i}=this._getCached(),d=[];if(!(this._def.catchall instanceof Jt&&this._def.unknownKeys==="strip"))for(const u in l.data)i.includes(u)||d.push(u);const s=[];for(const u of i){const c=a[u],p=l.data[u];s.push({key:{status:"valid",value:u},value:c._parse(new Xt(l,p,l.path,u)),alwaysSet:u in l.data})}if(this._def.catchall instanceof Jt){const u=this._def.unknownKeys;if(u==="passthrough")for(const c of d)s.push({key:{status:"valid",value:c},value:{status:"valid",value:l.data[c]}});else if(u==="strict")d.length>0&&(oe(l,{code:Q.unrecognized_keys,keys:d}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const c of d){const p=l.data[c];s.push({key:{status:"valid",value:c},value:u._parse(new Xt(l,p,l.path,c)),alwaysSet:c in l.data})}}return l.common.async?Promise.resolve().then(async()=>{const u=[];for(const c of s){const p=await c.key,m=await c.value;u.push({key:p,value:m,alwaysSet:c.alwaysSet})}return u}).then(u=>ut.mergeObjectSync(r,u)):ut.mergeObjectSync(r,s)}get shape(){return this._def.shape()}strict(n){return le.errToObj,new Le({...this._def,unknownKeys:"strict",...n!==void 0?{errorMap:(o,r)=>{var a,i;const l=((i=(a=this._def).errorMap)==null?void 0:i.call(a,o,r).message)??r.defaultError;return o.code==="unrecognized_keys"?{message:le.errToObj(n).message??l}:{message:l}}}:{}})}strip(){return new Le({...this._def,unknownKeys:"strip"})}passthrough(){return new Le({...this._def,unknownKeys:"passthrough"})}extend(n){return new Le({...this._def,shape:()=>({...this._def.shape(),...n})})}merge(n){return new Le({unknownKeys:n._def.unknownKeys,catchall:n._def.catchall,shape:()=>({...this._def.shape(),...n._def.shape()}),typeName:ve.ZodObject})}setKey(n,o){return this.augment({[n]:o})}catchall(n){return new Le({...this._def,catchall:n})}pick(n){const o={};for(const r of ke.objectKeys(n))n[r]&&this.shape[r]&&(o[r]=this.shape[r]);return new Le({...this._def,shape:()=>o})}omit(n){const o={};for(const r of ke.objectKeys(this.shape))n[r]||(o[r]=this.shape[r]);return new Le({...this._def,shape:()=>o})}deepPartial(){return yn(this)}partial(n){const o={};for(const r of ke.objectKeys(this.shape)){const l=this.shape[r];n&&!n[r]?o[r]=l:o[r]=l.optional()}return new Le({...this._def,shape:()=>o})}required(n){const o={};for(const r of ke.objectKeys(this.shape))if(n&&!n[r])o[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof qt;)a=a._def.innerType;o[r]=a}return new Le({...this._def,shape:()=>o})}keyof(){return Gi(ke.objectKeys(this.shape))}}Le.create=(t,n)=>new Le({shape:()=>t,unknownKeys:"strip",catchall:Jt.create(),typeName:ve.ZodObject,...be(n)});Le.strictCreate=(t,n)=>new Le({shape:()=>t,unknownKeys:"strict",catchall:Jt.create(),typeName:ve.ZodObject,...be(n)});Le.lazycreate=(t,n)=>new Le({shape:t,unknownKeys:"strip",catchall:Jt.create(),typeName:ve.ZodObject,...be(n)});class Mo extends Ne{_parse(n){const{ctx:o}=this._processInputParams(n),r=this._def.options;function l(a){for(const d of a)if(d.result.status==="valid")return d.result;for(const d of a)if(d.result.status==="dirty")return o.common.issues.push(...d.ctx.common.issues),d.result;const i=a.map(d=>new Ot(d.ctx.common.issues));return oe(o,{code:Q.invalid_union,unionErrors:i}),xe}if(o.common.async)return Promise.all(r.map(async a=>{const i={...o,common:{...o.common,issues:[]},parent:null};return{result:await a._parseAsync({data:o.data,path:o.path,parent:i}),ctx:i}})).then(l);{let a;const i=[];for(const s of r){const u={...o,common:{...o.common,issues:[]},parent:null},c=s._parseSync({data:o.data,path:o.path,parent:u});if(c.status==="valid")return c;c.status==="dirty"&&!a&&(a={result:c,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(a)return o.common.issues.push(...a.ctx.common.issues),a.result;const d=i.map(s=>new Ot(s));return oe(o,{code:Q.invalid_union,unionErrors:d}),xe}}get options(){return this._def.options}}Mo.create=(t,n)=>new Mo({options:t,typeName:ve.ZodUnion,...be(n)});function Gr(t,n){const o=Ut(t),r=Ut(n);if(t===n)return{valid:!0,data:t};if(o===re.object&&r===re.object){const l=ke.objectKeys(n),a=ke.objectKeys(t).filter(d=>l.indexOf(d)!==-1),i={...t,...n};for(const d of a){const s=Gr(t[d],n[d]);if(!s.valid)return{valid:!1};i[d]=s.data}return{valid:!0,data:i}}else if(o===re.array&&r===re.array){if(t.length!==n.length)return{valid:!1};const l=[];for(let a=0;a<t.length;a++){const i=t[a],d=n[a],s=Gr(i,d);if(!s.valid)return{valid:!1};l.push(s.data)}return{valid:!0,data:l}}else return o===re.date&&r===re.date&&+t==+n?{valid:!0,data:t}:{valid:!1}}class Po extends Ne{_parse(n){const{status:o,ctx:r}=this._processInputParams(n),l=(a,i)=>{if(Kl(a)||Kl(i))return xe;const d=Gr(a.value,i.value);return d.valid?((Ql(a)||Ql(i))&&o.dirty(),{status:o.value,value:d.data}):(oe(r,{code:Q.invalid_intersection_types}),xe)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,i])=>l(a,i)):l(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Po.create=(t,n,o)=>new Po({left:t,right:n,typeName:ve.ZodIntersection,...be(o)});class mn extends Ne{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==re.array)return oe(r,{code:Q.invalid_type,expected:re.array,received:r.parsedType}),xe;if(r.data.length<this._def.items.length)return oe(r,{code:Q.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),xe;!this._def.rest&&r.data.length>this._def.items.length&&(oe(r,{code:Q.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),o.dirty());const a=[...r.data].map((i,d)=>{const s=this._def.items[d]||this._def.rest;return s?s._parse(new Xt(r,i,r.path,d)):null}).filter(i=>!!i);return r.common.async?Promise.all(a).then(i=>ut.mergeArray(o,i)):ut.mergeArray(o,a)}get items(){return this._def.items}rest(n){return new mn({...this._def,rest:n})}}mn.create=(t,n)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new mn({items:t,typeName:ve.ZodTuple,rest:null,...be(n)})};class ia extends Ne{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==re.map)return oe(r,{code:Q.invalid_type,expected:re.map,received:r.parsedType}),xe;const l=this._def.keyType,a=this._def.valueType,i=[...r.data.entries()].map(([d,s],u)=>({key:l._parse(new Xt(r,d,r.path,[u,"key"])),value:a._parse(new Xt(r,s,r.path,[u,"value"]))}));if(r.common.async){const d=new Map;return Promise.resolve().then(async()=>{for(const s of i){const u=await s.key,c=await s.value;if(u.status==="aborted"||c.status==="aborted")return xe;(u.status==="dirty"||c.status==="dirty")&&o.dirty(),d.set(u.value,c.value)}return{status:o.value,value:d}})}else{const d=new Map;for(const s of i){const u=s.key,c=s.value;if(u.status==="aborted"||c.status==="aborted")return xe;(u.status==="dirty"||c.status==="dirty")&&o.dirty(),d.set(u.value,c.value)}return{status:o.value,value:d}}}}ia.create=(t,n,o)=>new ia({valueType:n,keyType:t,typeName:ve.ZodMap,...be(o)});class ao extends Ne{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==re.set)return oe(r,{code:Q.invalid_type,expected:re.set,received:r.parsedType}),xe;const l=this._def;l.minSize!==null&&r.data.size<l.minSize.value&&(oe(r,{code:Q.too_small,minimum:l.minSize.value,type:"set",inclusive:!0,exact:!1,message:l.minSize.message}),o.dirty()),l.maxSize!==null&&r.data.size>l.maxSize.value&&(oe(r,{code:Q.too_big,maximum:l.maxSize.value,type:"set",inclusive:!0,exact:!1,message:l.maxSize.message}),o.dirty());const a=this._def.valueType;function i(s){const u=new Set;for(const c of s){if(c.status==="aborted")return xe;c.status==="dirty"&&o.dirty(),u.add(c.value)}return{status:o.value,value:u}}const d=[...r.data.values()].map((s,u)=>a._parse(new Xt(r,s,r.path,u)));return r.common.async?Promise.all(d).then(s=>i(s)):i(d)}min(n,o){return new ao({...this._def,minSize:{value:n,message:le.toString(o)}})}max(n,o){return new ao({...this._def,maxSize:{value:n,message:le.toString(o)}})}size(n,o){return this.min(n,o).max(n,o)}nonempty(n){return this.min(1,n)}}ao.create=(t,n)=>new ao({valueType:t,minSize:null,maxSize:null,typeName:ve.ZodSet,...be(n)});class sa extends Ne{get schema(){return this._def.getter()}_parse(n){const{ctx:o}=this._processInputParams(n);return this._def.getter()._parse({data:o.data,path:o.path,parent:o})}}sa.create=(t,n)=>new sa({getter:t,typeName:ve.ZodLazy,...be(n)});class ua extends Ne{_parse(n){if(n.data!==this._def.value){const o=this._getOrReturnCtx(n);return oe(o,{received:o.data,code:Q.invalid_literal,expected:this._def.value}),xe}return{status:"valid",value:n.data}}get value(){return this._def.value}}ua.create=(t,n)=>new ua({value:t,typeName:ve.ZodLiteral,...be(n)});function Gi(t,n){return new Bn({values:t,typeName:ve.ZodEnum,...be(n)})}class Bn extends Ne{_parse(n){if(typeof n.data!="string"){const o=this._getOrReturnCtx(n),r=this._def.values;return oe(o,{expected:ke.joinValues(r),received:o.parsedType,code:Q.invalid_type}),xe}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(n.data)){const o=this._getOrReturnCtx(n),r=this._def.values;return oe(o,{received:o.data,code:Q.invalid_enum_value,options:r}),xe}return gt(n.data)}get options(){return this._def.values}get enum(){const n={};for(const o of this._def.values)n[o]=o;return n}get Values(){const n={};for(const o of this._def.values)n[o]=o;return n}get Enum(){const n={};for(const o of this._def.values)n[o]=o;return n}extract(n,o=this._def){return Bn.create(n,{...this._def,...o})}exclude(n,o=this._def){return Bn.create(this.options.filter(r=>!n.includes(r)),{...this._def,...o})}}Bn.create=Gi;class da extends Ne{_parse(n){const o=ke.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(n);if(r.parsedType!==re.string&&r.parsedType!==re.number){const l=ke.objectValues(o);return oe(r,{expected:ke.joinValues(l),received:r.parsedType,code:Q.invalid_type}),xe}if(this._cache||(this._cache=new Set(ke.getValidEnumValues(this._def.values))),!this._cache.has(n.data)){const l=ke.objectValues(o);return oe(r,{received:r.data,code:Q.invalid_enum_value,options:l}),xe}return gt(n.data)}get enum(){return this._def.values}}da.create=(t,n)=>new da({values:t,typeName:ve.ZodNativeEnum,...be(n)});class Ro extends Ne{unwrap(){return this._def.type}_parse(n){const{ctx:o}=this._processInputParams(n);if(o.parsedType!==re.promise&&o.common.async===!1)return oe(o,{code:Q.invalid_type,expected:re.promise,received:o.parsedType}),xe;const r=o.parsedType===re.promise?o.data:Promise.resolve(o.data);return gt(r.then(l=>this._def.type.parseAsync(l,{path:o.path,errorMap:o.common.contextualErrorMap})))}}Ro.create=(t,n)=>new Ro({type:t,typeName:ve.ZodPromise,...be(n)});class $n extends Ne{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ve.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(n){const{status:o,ctx:r}=this._processInputParams(n),l=this._def.effect||null,a={addIssue:i=>{oe(r,i),i.fatal?o.abort():o.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),l.type==="preprocess"){const i=l.transform(r.data,a);if(r.common.async)return Promise.resolve(i).then(async d=>{if(o.value==="aborted")return xe;const s=await this._def.schema._parseAsync({data:d,path:r.path,parent:r});return s.status==="aborted"?xe:s.status==="dirty"||o.value==="dirty"?Gn(s.value):s});{if(o.value==="aborted")return xe;const d=this._def.schema._parseSync({data:i,path:r.path,parent:r});return d.status==="aborted"?xe:d.status==="dirty"||o.value==="dirty"?Gn(d.value):d}}if(l.type==="refinement"){const i=d=>{const s=l.refinement(d,a);if(r.common.async)return Promise.resolve(s);if(s instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return d};if(r.common.async===!1){const d=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return d.status==="aborted"?xe:(d.status==="dirty"&&o.dirty(),i(d.value),{status:o.value,value:d.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(d=>d.status==="aborted"?xe:(d.status==="dirty"&&o.dirty(),i(d.value).then(()=>({status:o.value,value:d.value}))))}if(l.type==="transform")if(r.common.async===!1){const i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Tn(i))return xe;const d=l.transform(i.value,a);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:o.value,value:d}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>Tn(i)?Promise.resolve(l.transform(i.value,a)).then(d=>({status:o.value,value:d})):xe);ke.assertNever(l)}}$n.create=(t,n,o)=>new $n({schema:t,typeName:ve.ZodEffects,effect:n,...be(o)});$n.createWithPreprocess=(t,n,o)=>new $n({schema:n,effect:{type:"preprocess",transform:t},typeName:ve.ZodEffects,...be(o)});class qt extends Ne{_parse(n){return this._getType(n)===re.undefined?gt(void 0):this._def.innerType._parse(n)}unwrap(){return this._def.innerType}}qt.create=(t,n)=>new qt({innerType:t,typeName:ve.ZodOptional,...be(n)});class In extends Ne{_parse(n){return this._getType(n)===re.null?gt(null):this._def.innerType._parse(n)}unwrap(){return this._def.innerType}}In.create=(t,n)=>new In({innerType:t,typeName:ve.ZodNullable,...be(n)});class Ao extends Ne{_parse(n){const{ctx:o}=this._processInputParams(n);let r=o.data;return o.parsedType===re.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:o.path,parent:o})}removeDefault(){return this._def.innerType}}Ao.create=(t,n)=>new Ao({innerType:t,typeName:ve.ZodDefault,defaultValue:typeof n.default=="function"?n.default:()=>n.default,...be(n)});class qr extends Ne{_parse(n){const{ctx:o}=this._processInputParams(n),r={...o,common:{...o.common,issues:[]}},l=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return $o(l)?l.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Ot(r.common.issues)},input:r.data})})):{status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new Ot(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}qr.create=(t,n)=>new qr({innerType:t,typeName:ve.ZodCatch,catchValue:typeof n.catch=="function"?n.catch:()=>n.catch,...be(n)});class ca extends Ne{_parse(n){if(this._getType(n)!==re.nan){const r=this._getOrReturnCtx(n);return oe(r,{code:Q.invalid_type,expected:re.nan,received:r.parsedType}),xe}return{status:"valid",value:n.data}}}ca.create=t=>new ca({typeName:ve.ZodNaN,...be(t)});class Sh extends Ne{_parse(n){const{ctx:o}=this._processInputParams(n),r=o.data;return this._def.type._parse({data:r,path:o.path,parent:o})}unwrap(){return this._def.type}}class vl extends Ne{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?xe:a.status==="dirty"?(o.dirty(),Gn(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{const l=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return l.status==="aborted"?xe:l.status==="dirty"?(o.dirty(),{status:"dirty",value:l.value}):this._def.out._parseSync({data:l.value,path:r.path,parent:r})}}static create(n,o){return new vl({in:n,out:o,typeName:ve.ZodPipeline})}}class Wr extends Ne{_parse(n){const o=this._def.innerType._parse(n),r=l=>(Tn(l)&&(l.value=Object.freeze(l.value)),l);return $o(o)?o.then(l=>r(l)):r(o)}unwrap(){return this._def.innerType}}Wr.create=(t,n)=>new Wr({innerType:t,typeName:ve.ZodReadonly,...be(n)});var ve;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ve||(ve={}));const _e=Rt.create;pn.create;fn.create;const Nt=Io.create,Fo=Dn.create;Jt.create;const pt=St.create,ft=Le.create;Mo.create;Po.create;mn.create;Bn.create;Ro.create;qt.create;In.create;const mt={string:t=>Rt.create({...t,coerce:!0}),number:t=>pn.create({...t,coerce:!0}),boolean:t=>Io.create({...t,coerce:!0}),bigint:t=>fn.create({...t,coerce:!0}),date:t=>Dn.create({...t,coerce:!0})};/**
|
|
27
|
+
*/function ot(t){return typeof t=="function"}function pi(t){return t==null}const qt=t=>t!==null&&!!t&&typeof t=="object"&&!Array.isArray(t);function ul(t){return Number(t)>=0}function up(t){const n=parseFloat(t);return isNaN(n)?t:n}function dp(t){return typeof t=="object"&&t!==null}function cp(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}function Rl(t){if(!dp(t)||cp(t)!=="[object Object]")return!1;if(Object.getPrototypeOf(t)===null)return!0;let n=t;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(t)===n}function ro(t,n){return Object.keys(n).forEach(o=>{if(Rl(n[o])&&Rl(t[o])){t[o]||(t[o]={}),ro(t[o],n[o]);return}t[o]=n[o]}),t}function $n(t){const n=t.split(".");if(!n.length)return"";let o=String(n[0]);for(let r=1;r<n.length;r++){if(ul(n[r])){o+=`[${n[r]}]`;continue}o+=`.${n[r]}`}return o}const fp={};function pp(t){return fp[t]}function Il(t,n,o){typeof o.value=="object"&&(o.value=Ee(o.value)),!o.enumerable||o.get||o.set||!o.configurable||!o.writable||n==="__proto__"?Object.defineProperty(t,n,o):t[n]=o.value}function Ee(t){if(typeof t!="object")return t;var n=0,o,r,l,a=Object.prototype.toString.call(t);if(a==="[object Object]"?l=Object.create(t.__proto__||null):a==="[object Array]"?l=Array(t.length):a==="[object Set]"?(l=new Set,t.forEach(function(i){l.add(Ee(i))})):a==="[object Map]"?(l=new Map,t.forEach(function(i,u){l.set(Ee(u),Ee(i))})):a==="[object Date]"?l=new Date(+t):a==="[object RegExp]"?l=new RegExp(t.source,t.flags):a==="[object DataView]"?l=new t.constructor(Ee(t.buffer)):a==="[object ArrayBuffer]"?l=t.slice(0):a.slice(-6)==="Array]"&&(l=new t.constructor(t)),l){for(r=Object.getOwnPropertySymbols(t);n<r.length;n++)Il(l,r[n],Object.getOwnPropertyDescriptor(t,r[n]));for(n=0,r=Object.getOwnPropertyNames(t);n<r.length;n++)Object.hasOwnProperty.call(l,o=r[n])&&l[o]===t[o]||Il(l,o,Object.getOwnPropertyDescriptor(t,o))}return l||t}const dl=Symbol("vee-validate-form"),mi=Symbol("vee-validate-form-context"),mp=Symbol("vee-validate-field-instance"),Ml=Symbol("Default empty value"),gi=typeof window<"u";function Pr(t){return ot(t)&&!!t.__locatorRef}function vt(t){return!!t&&ot(t.parse)&&t.__type==="VVTypedSchema"}function Eo(t){return!!t&&ot(t.validate)}function vi(t){return t==="checkbox"||t==="radio"}function gp(t){return qt(t)||Array.isArray(t)}function vp(t){return Array.isArray(t)?t.length===0:qt(t)&&Object.keys(t).length===0}function co(t){return/^\[.+\]$/i.test(t)}function hp(t){return hi(t)&&t.multiple}function hi(t){return t.tagName==="SELECT"}function xp(t){return xi(t)&&t.target&&"submit"in t.target}function xi(t){return t?!!(typeof Event<"u"&&ot(Event)&&t instanceof Event||t&&t.srcElement):!1}function Ke(t,n){if(t===n)return!0;if(t&&n&&typeof t=="object"&&typeof n=="object"){if(t.constructor!==n.constructor)return!1;var o,r,l;if(Array.isArray(t)){if(o=t.length,o!=n.length)return!1;for(r=o;r--!==0;)if(!Ke(t[r],n[r]))return!1;return!0}if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(r of t.entries())if(!n.has(r[0]))return!1;for(r of t.entries())if(!Ke(r[1],n.get(r[0])))return!1;return!0}if(Fl(t)&&Fl(n))return!(t.size!==n.size||t.name!==n.name||t.lastModified!==n.lastModified||t.type!==n.type);if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(r of t.entries())if(!n.has(r[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(n)){if(o=t.length,o!=n.length)return!1;for(r=o;r--!==0;)if(t[r]!==n[r])return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(t=Pl(t),n=Pl(n),l=Object.keys(t),o=l.length,o!==Object.keys(n).length)return!1;for(r=o;r--!==0;)if(!Object.prototype.hasOwnProperty.call(n,l[r]))return!1;for(r=o;r--!==0;){var a=l[r];if(!Ke(t[a],n[a]))return!1}return!0}return t!==t&&n!==n}function Pl(t){return Object.fromEntries(Object.entries(t).filter(([,n])=>n!==void 0))}function Fl(t){return gi?t instanceof File:!1}function Ho(t){return co(t)?t.replace(/\[|\]/gi,""):t}function rt(t,n,o){return t?co(n)?t[Ho(n)]:(n||"").split(/\.|\[(\d+)\]/).filter(Boolean).reduce((l,a)=>gp(l)&&a in l?l[a]:o,t):o}function Ct(t,n,o){if(co(n)){t[Ho(n)]=o;return}const r=n.split(/\.|\[(\d+)\]/).filter(Boolean);let l=t;for(let a=0;a<r.length;a++){if(a===r.length-1){l[r[a]]=o;return}(!(r[a]in l)||pi(l[r[a]]))&&(l[r[a]]=ul(r[a+1])?[]:{}),l=l[r[a]]}}function xr(t,n){if(Array.isArray(t)&&ul(n)){t.splice(Number(n),1);return}qt(t)&&delete t[n]}function Ol(t,n){if(co(n)){delete t[Ho(n)];return}const o=n.split(/\.|\[(\d+)\]/).filter(Boolean);let r=t;for(let a=0;a<o.length;a++){if(a===o.length-1){xr(r,o[a]);break}if(!(o[a]in r)||pi(r[o[a]]))break;r=r[o[a]]}const l=o.map((a,i)=>rt(t,o.slice(0,i).join(".")));for(let a=l.length-1;a>=0;a--)if(vp(l[a])){if(a===0){xr(t,o[0]);continue}xr(l[a-1],o[a-1])}}function tt(t){return Object.keys(t)}function yi(t,n=void 0){const o=e.getCurrentInstance();return(o==null?void 0:o.provides[t])||e.inject(t,n)}function yp(t,n,o){if(Array.isArray(t)){const r=[...t],l=r.findIndex(a=>Ke(a,n));return l>=0?r.splice(l,1):r.push(n),r}return Ke(t,n)?o:n}function Cp(t,n){let o,r;return function(...l){const a=this;return o||(o=!0,setTimeout(()=>o=!1,n),r=t.apply(a,l)),r}}function zl(t,n=0){let o=null,r=[];return function(...l){return o&&clearTimeout(o),o=setTimeout(()=>{const a=t(...l);r.forEach(i=>i(a)),r=[]},n),new Promise(a=>r.push(a))}}function Vp(t,n){return qt(n)&&n.number?up(t):t}function Fr(t,n){let o;return async function(...l){const a=t(...l);o=a;const i=await a;return a!==o?i:(o=void 0,n(i,l))}}function Or(t){return Array.isArray(t)?t:t?[t]:[]}function xo(t,n){const o={};for(const r in t)n.includes(r)||(o[r]=t[r]);return o}function wp(t){let n=null,o=[];return function(...r){const l=e.nextTick(()=>{if(n!==l)return;const a=t(...r);o.forEach(i=>i(a)),o=[],n=null});return n=l,new Promise(a=>o.push(a))}}function yr(t){if(Ci(t))return t._value}function Ci(t){return"_value"in t}function bp(t){return t.type==="number"||t.type==="range"?Number.isNaN(t.valueAsNumber)?t.value:t.valueAsNumber:t.value}function Ao(t){if(!xi(t))return t;const n=t.target;if(vi(n.type)&&Ci(n))return yr(n);if(n.type==="file"&&n.files){const o=Array.from(n.files);return n.multiple?o:o[0]}if(hp(n))return Array.from(n.options).filter(o=>o.selected&&!o.disabled).map(yr);if(hi(n)){const o=Array.from(n.options).find(r=>r.selected);return o?yr(o):n.value}return bp(n)}function Vi(t){const n={};return Object.defineProperty(n,"_$$isNormalized",{value:!0,writable:!1,enumerable:!1,configurable:!1}),t?qt(t)&&t._$$isNormalized?t:qt(t)?Object.keys(t).reduce((o,r)=>{const l=_p(t[r]);return t[r]!==!1&&(o[r]=Ll(l)),o},n):typeof t!="string"?n:t.split("|").reduce((o,r)=>{const l=Np(r);return l.name&&(o[l.name]=Ll(l.params)),o},n):n}function _p(t){return t===!0?[]:Array.isArray(t)||qt(t)?t:[t]}function Ll(t){const n=o=>typeof o=="string"&&o[0]==="@"?kp(o.slice(1)):o;return Array.isArray(t)?t.map(n):t instanceof RegExp?[t]:Object.keys(t).reduce((o,r)=>(o[r]=n(t[r]),o),{})}const Np=t=>{let n=[];const o=t.split(":")[0];return t.includes(":")&&(n=t.split(":").slice(1).join(":").split(",")),{name:o,params:n}};function kp(t){const n=o=>{var r;return(r=rt(o,t))!==null&&r!==void 0?r:o[t]};return n.__locatorRef=t,n}function Sp(t){return Array.isArray(t)?t.filter(Pr):tt(t).filter(n=>Pr(t[n])).map(n=>t[n])}const Ep={generateMessage:({field:t})=>`${t} is not valid.`,bails:!0,validateOnBlur:!0,validateOnChange:!0,validateOnInput:!1,validateOnModelUpdate:!0};let Ap=Object.assign({},Ep);const Hn=()=>Ap;async function wi(t,n,o={}){const r=o==null?void 0:o.bails,l={name:(o==null?void 0:o.name)||"{field}",rules:n,label:o==null?void 0:o.label,bails:r??!0,formData:(o==null?void 0:o.values)||{}},a=await Tp(l,t);return Object.assign(Object.assign({},a),{valid:!a.errors.length})}async function Tp(t,n){const o=t.rules;if(vt(o)||Eo(o))return Dp(n,Object.assign(Object.assign({},t),{rules:o}));if(ot(o)||Array.isArray(o)){const u={field:t.label||t.name,name:t.name,label:t.label,form:t.formData,value:n},s=Array.isArray(o)?o:[o],d=s.length,c=[];for(let f=0;f<d;f++){const m=s[f],p=await m(n,u);if(!(typeof p!="string"&&!Array.isArray(p)&&p)){if(Array.isArray(p))c.push(...p);else{const v=typeof p=="string"?p:_i(u);c.push(v)}if(t.bails)return{errors:c}}}return{errors:c}}const r=Object.assign(Object.assign({},t),{rules:Vi(o)}),l=[],a=Object.keys(r.rules),i=a.length;for(let u=0;u<i;u++){const s=a[u],d=await Rp(r,n,{name:s,params:r.rules[s]});if(d.error&&(l.push(d.error),t.bails))return{errors:l}}return{errors:l}}function Bp(t){return!!t&&t.name==="ValidationError"}function bi(t){return{__type:"VVTypedSchema",async parse(o,r){var l;try{return{output:await t.validate(o,{abortEarly:!1,context:(r==null?void 0:r.formData)||{}}),errors:[]}}catch(a){if(!Bp(a))throw a;if(!(!((l=a.inner)===null||l===void 0)&&l.length)&&a.errors.length)return{errors:[{path:a.path,errors:a.errors}]};const i=a.inner.reduce((u,s)=>{const d=s.path||"";return u[d]||(u[d]={errors:[],path:d}),u[d].errors.push(...s.errors),u},{});return{errors:Object.values(i)}}}}}async function Dp(t,n){const r=await(vt(n.rules)?n.rules:bi(n.rules)).parse(t,{formData:n.formData}),l=[];for(const a of r.errors)a.errors.length&&l.push(...a.errors);return{value:r.value,errors:l}}async function Rp(t,n,o){const r=pp(o.name);if(!r)throw new Error(`No such validator '${o.name}' exists.`);const l=Ip(o.params,t.formData),a={field:t.label||t.name,name:t.name,label:t.label,value:n,form:t.formData,rule:Object.assign(Object.assign({},o),{params:l})},i=await r(n,l,a);return typeof i=="string"?{error:i}:{error:i?void 0:_i(a)}}function _i(t){const n=Hn().generateMessage;return n?n(t):"Field is invalid"}function Ip(t,n){const o=r=>Pr(r)?r(n):r;return Array.isArray(t)?t.map(o):Object.keys(t).reduce((r,l)=>(r[l]=o(t[l]),r),{})}async function Mp(t,n){const r=await(vt(t)?t:bi(t)).parse(Ee(n),{formData:Ee(n)}),l={},a={};for(const i of r.errors){const u=i.errors,s=(i.path||"").replace(/\["(\d+)"\]/g,(d,c)=>`[${c}]`);l[s]={valid:!u.length,errors:u},u.length&&(a[s]=u[0])}return{valid:!r.errors.length,results:l,errors:a,values:r.value,source:"schema"}}async function Pp(t,n,o){const l=tt(t).map(async d=>{var c,f,m;const p=(c=o==null?void 0:o.names)===null||c===void 0?void 0:c[d],g=await wi(rt(n,d),t[d],{name:(p==null?void 0:p.name)||d,label:p==null?void 0:p.label,values:n,bails:(m=(f=o==null?void 0:o.bailsMap)===null||f===void 0?void 0:f[d])!==null&&m!==void 0?m:!0});return Object.assign(Object.assign({},g),{path:d})});let a=!0;const i=await Promise.all(l),u={},s={};for(const d of i)u[d.path]={valid:d.valid,errors:d.errors},d.valid||(a=!1,s[d.path]=d.errors[0]);return{valid:a,results:u,errors:s,source:"schema"}}let Ul=0;function Fp(t,n){const{value:o,initialValue:r,setInitialValue:l}=Op(t,n.modelValue,n.form);if(!n.form){let m=function(p){var g;"value"in p&&(o.value=p.value),"errors"in p&&d(p.errors),"touched"in p&&(f.touched=(g=p.touched)!==null&&g!==void 0?g:f.touched),"initialValue"in p&&l(p.initialValue)};const{errors:s,setErrors:d}=Up(),c=Ul>=Number.MAX_SAFE_INTEGER?0:++Ul,f=Lp(o,r,s,n.schema);return{id:c,path:t,value:o,initialValue:r,meta:f,flags:{pendingUnmount:{[c]:!1},pendingReset:!1},errors:s,setState:m}}const a=n.form.createPathState(t,{bails:n.bails,label:n.label,type:n.type,validate:n.validate,schema:n.schema}),i=e.computed(()=>a.errors);function u(s){var d,c,f;"value"in s&&(o.value=s.value),"errors"in s&&((d=n.form)===null||d===void 0||d.setFieldError(e.unref(t),s.errors)),"touched"in s&&((c=n.form)===null||c===void 0||c.setFieldTouched(e.unref(t),(f=s.touched)!==null&&f!==void 0?f:!1)),"initialValue"in s&&l(s.initialValue)}return{id:Array.isArray(a.id)?a.id[a.id.length-1]:a.id,path:t,value:o,errors:i,meta:a,initialValue:r,flags:a.__flags,setState:u}}function Op(t,n,o){const r=e.ref(e.unref(n));function l(){return o?rt(o.initialValues.value,e.unref(t),e.unref(r)):e.unref(r)}function a(d){if(!o){r.value=d;return}o.setFieldInitialValue(e.unref(t),d,!0)}const i=e.computed(l);if(!o)return{value:e.ref(l()),initialValue:i,setInitialValue:a};const u=zp(n,o,i,t);return o.stageInitialValue(e.unref(t),u,!0),{value:e.computed({get(){return rt(o.values,e.unref(t))},set(d){o.setFieldValue(e.unref(t),d,!1)}}),initialValue:i,setInitialValue:a}}function zp(t,n,o,r){return e.isRef(t)?e.unref(t):t!==void 0?t:rt(n.values,e.unref(r),e.unref(o))}function Lp(t,n,o,r){const l=e.computed(()=>{var i,u,s;return(s=(u=(i=e.toValue(r))===null||i===void 0?void 0:i.describe)===null||u===void 0?void 0:u.call(i).required)!==null&&s!==void 0?s:!1}),a=e.reactive({touched:!1,pending:!1,valid:!0,required:l,validated:!!e.unref(o).length,initialValue:e.computed(()=>e.unref(n)),dirty:e.computed(()=>!Ke(e.unref(t),e.unref(n)))});return e.watch(o,i=>{a.valid=!i.length},{immediate:!0,flush:"sync"}),a}function Up(){const t=e.ref([]);return{errors:t,setErrors:n=>{t.value=Or(n)}}}const Zn={},Kn={},Jn="vee-validate-inspector",nt={error:12405579,success:448379,unknown:5522283,white:16777215,black:0,blue:218007,purple:12157168,orange:16099682,gray:12304330};let Le=null,Et;async function Ni(t){if(process.env.NODE_ENV!=="production"){if(!gi)return;(await Promise.resolve().then(()=>require("./index-DEgppVnR.js"))).setupDevtoolsPlugin({id:"vee-validate-devtools-plugin",label:"VeeValidate Plugin",packageName:"vee-validate",homepage:"https://vee-validate.logaretm.com/v4",app:t,logo:"https://vee-validate.logaretm.com/v4/logo.png"},o=>{Et=o,o.addInspector({id:Jn,icon:"rule",label:"vee-validate",noSelectionText:"Select a vee-validate node to inspect",actions:[{icon:"done_outline",tooltip:"Validate selected item",action:async()=>{if(!Le){console.error("There is not a valid selected vee-validate node or component");return}if(Le.type==="field"){await Le.field.validate();return}if(Le.type==="form"){await Le.form.validate();return}Le.type==="pathState"&&await Le.form.validateField(Le.state.path)}},{icon:"delete_sweep",tooltip:"Clear validation state of the selected item",action:()=>{if(!Le){console.error("There is not a valid selected vee-validate node or component");return}if(Le.type==="field"){Le.field.resetField();return}Le.type==="form"&&Le.form.resetForm(),Le.type==="pathState"&&Le.form.resetField(Le.state.path)}}]}),o.on.getInspectorTree(r=>{if(r.inspectorId!==Jn)return;const l=Object.values(Zn),a=Object.values(Kn);r.rootNodes=[...l.map(Hp),...a.map(i=>Gp(i))]}),o.on.getInspectorState(r=>{if(r.inspectorId!==Jn)return;const{form:l,field:a,state:i,type:u}=Wp(r.nodeId);if(o.unhighlightElement(),l&&u==="form"){r.state=Xp(l),Le={type:"form",form:l},o.highlightElement(l._vm);return}if(i&&u==="pathState"&&l){r.state=jl(i),Le={type:"pathState",state:i,form:l};return}if(a&&u==="field"){r.state=jl({errors:a.errors.value,dirty:a.meta.dirty,valid:a.meta.valid,touched:a.meta.touched,value:a.value.value,initialValue:a.meta.initialValue}),Le={field:a,type:"field"},o.highlightElement(a._vm);return}Le=null,o.unhighlightElement()})})}}const Nn=Cp(()=>{setTimeout(async()=>{await e.nextTick(),Et==null||Et.sendInspectorState(Jn),Et==null||Et.sendInspectorTree(Jn)},100)},100);function jp(t){const n=e.getCurrentInstance();if(!Et){const o=n==null?void 0:n.appContext.app;if(!o)return;Ni(o)}Zn[t.formId]=Object.assign({},t),Zn[t.formId]._vm=n,e.onUnmounted(()=>{delete Zn[t.formId],Nn()}),Nn()}function $p(t){const n=e.getCurrentInstance();if(!Et){const o=n==null?void 0:n.appContext.app;if(!o)return;Ni(o)}Kn[t.id]=Object.assign({},t),Kn[t.id]._vm=n,e.onUnmounted(()=>{delete Kn[t.id],Nn()}),Nn()}function Hp(t){const{textColor:n,bgColor:o}=Si(t.meta.value.valid),r={};Object.values(t.getAllPathStates()).forEach(i=>{Ct(r,e.toValue(i.path),qp(i,t))});function l(i,u=[]){const s=[...u].pop();return"id"in i?Object.assign(Object.assign({},i),{label:s||i.label}):qt(i)?{id:`${u.join(".")}`,label:s||"",children:Object.keys(i).map(d=>l(i[d],[...u,d]))}:Array.isArray(i)?{id:`${u.join(".")}`,label:`${s}[]`,children:i.map((d,c)=>l(d,[...u,String(c)]))}:{id:"",label:"",children:[]}}const{children:a}=l(r);return{id:cl(t),label:t.name,children:a,tags:[{label:"Form",textColor:n,backgroundColor:o},{label:`${t.getAllPathStates().length} fields`,textColor:nt.white,backgroundColor:nt.unknown}]}}function qp(t,n){return{id:cl(n,t),label:e.toValue(t.path),tags:ki(t.multiple,t.fieldsCount,t.type,t.valid,n)}}function Gp(t,n){return{id:cl(n,t),label:e.unref(t.name),tags:ki(!1,1,t.type,t.meta.valid,n)}}function ki(t,n,o,r,l){const{textColor:a,bgColor:i}=Si(r);return[t?void 0:{label:"Field",textColor:a,backgroundColor:i},l?void 0:{label:"Standalone",textColor:nt.black,backgroundColor:nt.gray},o==="checkbox"?{label:"Checkbox",textColor:nt.white,backgroundColor:nt.blue}:void 0,o==="radio"?{label:"Radio",textColor:nt.white,backgroundColor:nt.purple}:void 0,t?{label:"Multiple",textColor:nt.black,backgroundColor:nt.orange}:void 0].filter(Boolean)}function cl(t,n){const o=n?"path"in n?"pathState":"field":"form",r=n?"path"in n?n==null?void 0:n.path:e.toValue(n==null?void 0:n.name):"",l={f:t==null?void 0:t.formId,ff:(n==null?void 0:n.id)||r,type:o};return btoa(encodeURIComponent(JSON.stringify(l)))}function Wp(t){try{const n=JSON.parse(decodeURIComponent(atob(t))),o=Zn[n.f];if(!o&&n.ff){const l=Kn[n.ff];return l?{type:n.type,field:l}:{}}if(!o)return{};const r=o.getPathState(n.ff);return{type:n.type,form:o,state:r}}catch{}return{}}function jl(t){return{"Field state":[{key:"errors",value:t.errors},{key:"initialValue",value:t.initialValue},{key:"currentValue",value:t.value},{key:"touched",value:t.touched},{key:"dirty",value:t.dirty},{key:"valid",value:t.valid}]}}function Xp(t){const{errorBag:n,meta:o,values:r,isSubmitting:l,isValidating:a,submitCount:i}=t;return{"Form state":[{key:"submitCount",value:i.value},{key:"isSubmitting",value:l.value},{key:"isValidating",value:a.value},{key:"touched",value:o.value.touched},{key:"dirty",value:o.value.dirty},{key:"valid",value:o.value.valid},{key:"initialValues",value:o.value.initialValues},{key:"currentValues",value:r},{key:"errors",value:tt(n.value).reduce((u,s)=>{var d;const c=(d=n.value[s])===null||d===void 0?void 0:d[0];return c&&(u[s]=c),u},{})}]}}function Si(t){return{bgColor:t?nt.success:nt.error,textColor:t?nt.black:nt.white}}function Ne(t,n,o){return vi(void 0)?Zp(t,n):Ei(t,n)}function Ei(t,n,o){const{initialValue:r,validateOnMount:l,bails:a,type:i,checkedValue:u,label:s,validateOnValueUpdate:d,uncheckedValue:c,controlled:f,keepValueOnUnmount:m,syncVModel:p,form:g}=Yp(),v=f?yi(dl):void 0,h=g||v,x=e.computed(()=>$n(e.toValue(t))),b=e.computed(()=>{if(e.toValue(h==null?void 0:h.schema))return;const j=e.unref(n);return Eo(j)||vt(j)||ot(j)||Array.isArray(j)?j:Vi(j)}),y=!ot(b.value)&&vt(e.toValue(n)),{id:N,value:C,initialValue:V,meta:_,setState:S,errors:R,flags:$}=Fp(x,{modelValue:r,form:h,bails:a,label:s,type:i,validate:b.value?E:void 0,schema:y?n:void 0}),U=e.computed(()=>R.value[0]);p&&Kp({value:C,prop:p,handleChange:I,shouldValidate:()=>d&&!$.pendingReset});const P=(O,j=!1)=>{_.touched=!0,j&&k()};async function G(O){var j,ae;if(h!=null&&h.validateSchema){const{results:q}=await h.validateSchema(O);return(j=q[e.toValue(x)])!==null&&j!==void 0?j:{valid:!0,errors:[]}}return b.value?wi(C.value,b.value,{name:e.toValue(x),label:e.toValue(s),values:(ae=h==null?void 0:h.values)!==null&&ae!==void 0?ae:{},bails:a}):{valid:!0,errors:[]}}const k=Fr(async()=>(_.pending=!0,_.validated=!0,G("validated-only")),O=>($.pendingUnmount[L.id]||(S({errors:O.errors}),_.pending=!1,_.valid=O.valid),O)),B=Fr(async()=>G("silent"),O=>(_.valid=O.valid,O));function E(O){return(O==null?void 0:O.mode)==="silent"?B():k()}function I(O,j=!0){const ae=Ao(O);T(ae,j)}e.onMounted(()=>{if(l)return k();(!h||!h.validateSchema)&&B()});function X(O){_.touched=O}function le(O){var j;const ae=O&&"value"in O?O.value:V.value;S({value:Ee(ae),initialValue:Ee(ae),touched:(j=O==null?void 0:O.touched)!==null&&j!==void 0?j:!1,errors:(O==null?void 0:O.errors)||[]}),_.pending=!1,_.validated=!1,B()}const F=e.getCurrentInstance();function T(O,j=!0){C.value=F&&p?Vp(O,F.props.modelModifiers):O,(j?k:B)()}function w(O){S({errors:Array.isArray(O)?O:[O]})}const A=e.computed({get(){return C.value},set(O){T(O,d)}}),L={id:N,name:x,label:s,value:A,meta:_,errors:R,errorMessage:U,type:i,checkedValue:u,uncheckedValue:c,bails:a,keepValueOnUnmount:m,resetField:le,handleReset:()=>le(),validate:E,handleChange:I,handleBlur:P,setState:S,setTouched:X,setErrors:w,setValue:T};if(e.provide(mp,L),e.isRef(n)&&typeof e.unref(n)!="function"&&e.watch(n,(O,j)=>{Ke(O,j)||(_.validated?k():B())},{deep:!0}),process.env.NODE_ENV!=="production"&&(L._vm=e.getCurrentInstance(),e.watch(()=>Object.assign(Object.assign({errors:R.value},_),{value:C.value}),Nn,{deep:!0}),h||$p(L)),!h)return L;const J=e.computed(()=>{const O=b.value;return!O||ot(O)||Eo(O)||vt(O)||Array.isArray(O)?{}:Object.keys(O).reduce((j,ae)=>{const q=Sp(O[ae]).map(ie=>ie.__locatorRef).reduce((ie,te)=>{const be=rt(h.values,te)||h.values[te];return be!==void 0&&(ie[te]=be),ie},{});return Object.assign(j,q),j},{})});return e.watch(J,(O,j)=>{if(!Object.keys(O).length)return;!Ke(O,j)&&(_.validated?k():B())}),e.onBeforeUnmount(()=>{var O;const j=(O=e.toValue(L.keepValueOnUnmount))!==null&&O!==void 0?O:e.toValue(h.keepValuesOnUnmount),ae=e.toValue(x);if(j||!h||$.pendingUnmount[L.id]){h==null||h.removePathState(ae,N);return}$.pendingUnmount[L.id]=!0;const q=h.getPathState(ae);if(Array.isArray(q==null?void 0:q.id)&&(q!=null&&q.multiple)?q!=null&&q.id.includes(L.id):(q==null?void 0:q.id)===L.id){if(q!=null&&q.multiple&&Array.isArray(q.value)){const te=q.value.findIndex(be=>Ke(be,e.toValue(L.checkedValue)));if(te>-1){const be=[...q.value];be.splice(te,1),h.setFieldValue(ae,be)}Array.isArray(q.id)&&q.id.splice(q.id.indexOf(L.id),1)}else h.unsetPathValue(e.toValue(x));h.removePathState(ae,N)}}),L}function Yp(t){return Object.assign(Object.assign({},{initialValue:void 0,validateOnMount:!1,bails:!0,label:void 0,validateOnValueUpdate:!0,keepValueOnUnmount:void 0,syncVModel:!1,controlled:!0}),{initialValue:void 0})}function Zp(t,n,o){const r=yi(dl),l=void 0,a=void 0;function i(u){const s=u.handleChange,d=e.computed(()=>{const f=e.toValue(u.value),m=e.toValue(l);return Array.isArray(f)?f.findIndex(p=>Ke(p,m))>=0:Ke(m,f)});function c(f,m=!0){var p,g;if(d.value===((p=f==null?void 0:f.target)===null||p===void 0?void 0:p.checked)){m&&u.validate();return}const v=e.toValue(t),h=r==null?void 0:r.getPathState(v),x=Ao(f);let b=(g=e.toValue(l))!==null&&g!==void 0?g:x;r&&(h!=null&&h.multiple)&&h.type==="checkbox"&&(b=yp(rt(r.values,v)||[],b,void 0)),s(b,m)}return Object.assign(Object.assign({},u),{checked:d,checkedValue:l,uncheckedValue:a,handleChange:c})}return i(Ei(t,n))}function Kp({prop:t,value:n,handleChange:o,shouldValidate:r}){const l=e.getCurrentInstance();if(!l||!t){process.env.NODE_ENV!=="production"&&console.warn("Failed to setup model events because `useField` was not called in setup.");return}const a=typeof t=="string"?t:"modelValue",i=`update:${a}`;a in l.props&&(e.watch(n,u=>{Ke(u,$l(l,a))||l.emit(i,u)}),e.watch(()=>$l(l,a),u=>{if(u===Ml&&n.value===void 0)return;const s=u===Ml?void 0:u;Ke(s,n.value)||o(s,r())}))}function $l(t,n){if(t)return t.props[n]}let Jp=0;const yo=["bails","fieldsCount","id","multiple","type","validate"];function Ai(t){const n=(t==null?void 0:t.initialValues)||{},o=Object.assign({},e.toValue(n)),r=e.unref(t==null?void 0:t.validationSchema);return r&&vt(r)&&ot(r.cast)?Ee(r.cast(o)||{}):Ee(o)}function Ti(t){var n;const o=Jp++,r=(t==null?void 0:t.name)||"Form";let l=0;const a=e.ref(!1),i=e.ref(!1),u=e.ref(0),s=[],d=e.reactive(Ai(t)),c=e.ref([]),f=e.ref({}),m=e.ref({}),p=wp(()=>{m.value=c.value.reduce((D,M)=>(D[$n(e.toValue(M.path))]=M,D),{})});function g(D,M){const H=I(D);if(!H){typeof D=="string"&&(f.value[$n(D)]=Or(M));return}if(typeof D=="string"){const Q=$n(D);f.value[Q]&&delete f.value[Q]}H.errors=Or(M),H.valid=!H.errors.length}function v(D){tt(D).forEach(M=>{g(M,D[M])})}t!=null&&t.initialErrors&&v(t.initialErrors);const h=e.computed(()=>{const D=c.value.reduce((M,H)=>(H.errors.length&&(M[e.toValue(H.path)]=H.errors),M),{});return Object.assign(Object.assign({},f.value),D)}),x=e.computed(()=>tt(h.value).reduce((D,M)=>{const H=h.value[M];return H!=null&&H.length&&(D[M]=H[0]),D},{})),b=e.computed(()=>c.value.reduce((D,M)=>(D[e.toValue(M.path)]={name:e.toValue(M.path)||"",label:M.label||""},D),{})),y=e.computed(()=>c.value.reduce((D,M)=>{var H;return D[e.toValue(M.path)]=(H=M.bails)!==null&&H!==void 0?H:!0,D},{})),N=Object.assign({},(t==null?void 0:t.initialErrors)||{}),C=(n=t==null?void 0:t.keepValuesOnUnmount)!==null&&n!==void 0?n:!1,{initialValues:V,originalInitialValues:_,setInitialValues:S}=em(c,d,t),R=Qp(c,d,_,x),$=e.computed(()=>c.value.reduce((D,M)=>{const H=rt(d,e.toValue(M.path));return Ct(D,e.toValue(M.path),H),D},{})),U=t==null?void 0:t.validationSchema;function P(D,M){var H,Q;const se=e.computed(()=>rt(V.value,e.toValue(D))),ve=m.value[e.toValue(D)],ce=(M==null?void 0:M.type)==="checkbox"||(M==null?void 0:M.type)==="radio";if(ve&&ce){ve.multiple=!0;const dt=l++;return Array.isArray(ve.id)?ve.id.push(dt):ve.id=[ve.id,dt],ve.fieldsCount++,ve.__flags.pendingUnmount[dt]=!1,ve}const De=e.computed(()=>rt(d,e.toValue(D))),ze=e.toValue(D),We=le.findIndex(dt=>dt===ze);We!==-1&&le.splice(We,1);const Ae=e.computed(()=>{var dt,Mn,tr,nr;const or=e.toValue(U);if(vt(or))return(Mn=(dt=or.describe)===null||dt===void 0?void 0:dt.call(or,e.toValue(D)).required)!==null&&Mn!==void 0?Mn:!1;const rr=e.toValue(M==null?void 0:M.schema);return vt(rr)&&(nr=(tr=rr.describe)===null||tr===void 0?void 0:tr.call(rr).required)!==null&&nr!==void 0?nr:!1}),Xe=l++,et=e.reactive({id:Xe,path:D,touched:!1,pending:!1,valid:!0,validated:!!(!((H=N[ze])===null||H===void 0)&&H.length),required:Ae,initialValue:se,errors:e.shallowRef([]),bails:(Q=M==null?void 0:M.bails)!==null&&Q!==void 0?Q:!1,label:M==null?void 0:M.label,type:(M==null?void 0:M.type)||"default",value:De,multiple:!1,__flags:{pendingUnmount:{[Xe]:!1},pendingReset:!1},fieldsCount:1,validate:M==null?void 0:M.validate,dirty:e.computed(()=>!Ke(e.unref(De),e.unref(se)))});return c.value.push(et),m.value[ze]=et,p(),x.value[ze]&&!N[ze]&&e.nextTick(()=>{ke(ze,{mode:"silent"})}),e.isRef(D)&&e.watch(D,dt=>{p();const Mn=Ee(De.value);m.value[dt]=et,e.nextTick(()=>{Ct(d,dt,Mn)})}),et}const G=zl(Ue,5),k=zl(Ue,5),B=Fr(async D=>await(D==="silent"?G():k()),(D,[M])=>{const H=tt(j.errorBag.value),se=[...new Set([...tt(D.results),...c.value.map(ve=>ve.path),...H])].sort().reduce((ve,ce)=>{var De;const ze=ce,We=I(ze)||X(ze),Ae=((De=D.results[ze])===null||De===void 0?void 0:De.errors)||[],Xe=e.toValue(We==null?void 0:We.path)||ze,et=tm({errors:Ae,valid:!Ae.length},ve.results[Xe]);return ve.results[Xe]=et,et.valid||(ve.errors[Xe]=et.errors[0]),We&&f.value[Xe]&&delete f.value[Xe],We?(We.valid=et.valid,M==="silent"||M==="validated-only"&&!We.validated||g(We,et.errors),ve):(g(Xe,Ae),ve)},{valid:D.valid,results:{},errors:{},source:D.source});return D.values&&(se.values=D.values,se.source=D.source),tt(se.results).forEach(ve=>{var ce;const De=I(ve);De&&M!=="silent"&&(M==="validated-only"&&!De.validated||g(De,(ce=se.results[ve])===null||ce===void 0?void 0:ce.errors))}),se});function E(D){c.value.forEach(D)}function I(D){const M=typeof D=="string"?$n(D):D;return typeof M=="string"?m.value[M]:M}function X(D){return c.value.filter(H=>D.startsWith(e.toValue(H.path))).reduce((H,Q)=>H?Q.path.length>H.path.length?Q:H:Q,void 0)}let le=[],F;function T(D){return le.push(D),F||(F=e.nextTick(()=>{[...le].sort().reverse().forEach(H=>{Ol(d,H)}),le=[],F=null})),F}function w(D){return function(H,Q){return function(ve){return ve instanceof Event&&(ve.preventDefault(),ve.stopPropagation()),E(ce=>ce.touched=!0),a.value=!0,u.value++,xe().then(ce=>{const De=Ee(d);if(ce.valid&&typeof H=="function"){const ze=Ee($.value);let We=D?ze:De;return ce.values&&(We=ce.source==="schema"?ce.values:Object.assign({},We,ce.values)),H(We,{evt:ve,controlledValues:ze,setErrors:v,setFieldError:g,setTouched:Be,setFieldTouched:be,setValues:ie,setFieldValue:ae,resetForm:Re,resetField:ye})}!ce.valid&&typeof Q=="function"&&Q({values:De,evt:ve,errors:ce.errors,results:ce.results})}).then(ce=>(a.value=!1,ce),ce=>{throw a.value=!1,ce})}}}const L=w(!1);L.withControlled=w(!0);function J(D,M){const H=c.value.findIndex(se=>se.path===D&&(Array.isArray(se.id)?se.id.includes(M):se.id===M)),Q=c.value[H];if(!(H===-1||!Q)){if(e.nextTick(()=>{ke(D,{mode:"silent",warn:!1})}),Q.multiple&&Q.fieldsCount&&Q.fieldsCount--,Array.isArray(Q.id)){const se=Q.id.indexOf(M);se>=0&&Q.id.splice(se,1),delete Q.__flags.pendingUnmount[M]}(!Q.multiple||Q.fieldsCount<=0)&&(c.value.splice(H,1),Pe(D),p(),delete m.value[D])}}function O(D){tt(m.value).forEach(M=>{M.startsWith(D)&&delete m.value[M]}),c.value=c.value.filter(M=>!M.path.startsWith(D)),e.nextTick(()=>{p()})}const j={name:r,formId:o,values:d,controlledValues:$,errorBag:h,errors:x,schema:U,submitCount:u,meta:R,isSubmitting:a,isValidating:i,fieldArrays:s,keepValuesOnUnmount:C,validateSchema:e.unref(U)?B:void 0,validate:xe,setFieldError:g,validateField:ke,setFieldValue:ae,setValues:ie,setErrors:v,setFieldTouched:be,setTouched:Be,resetForm:Re,resetField:ye,handleSubmit:L,useFieldModel:yt,defineInputBinds:pe,defineComponentBinds:Se,defineField:Ie,stageInitialValue:lt,unsetInitialValue:Pe,setFieldInitialValue:pt,createPathState:P,getPathState:I,unsetPathValue:T,removePathState:J,initialValues:V,getAllPathStates:()=>c.value,destroyPath:O,isFieldTouched:qe,isFieldDirty:Ge,isFieldValid:$e};function ae(D,M,H=!0){const Q=Ee(M),se=typeof D=="string"?D:D.path;I(se)||P(se),Ct(d,se,Q),H&&ke(se)}function q(D,M=!0){tt(d).forEach(H=>{delete d[H]}),tt(D).forEach(H=>{ae(H,D[H],!1)}),M&&xe()}function ie(D,M=!0){ro(d,D),s.forEach(H=>H&&H.reset()),M&&xe()}function te(D,M){const H=I(e.toValue(D))||P(D);return e.computed({get(){return H.value},set(Q){var se;const ve=e.toValue(D);ae(ve,Q,(se=e.toValue(M))!==null&&se!==void 0?se:!1)}})}function be(D,M){const H=I(D);H&&(H.touched=M)}function qe(D){const M=I(D);return M?M.touched:c.value.filter(H=>H.path.startsWith(D)).some(H=>H.touched)}function Ge(D){const M=I(D);return M?M.dirty:c.value.filter(H=>H.path.startsWith(D)).some(H=>H.dirty)}function $e(D){const M=I(D);return M?M.valid:c.value.filter(H=>H.path.startsWith(D)).every(H=>H.valid)}function Be(D){if(typeof D=="boolean"){E(M=>{M.touched=D});return}tt(D).forEach(M=>{be(M,!!D[M])})}function ye(D,M){var H;const Q=M&&"value"in M?M.value:rt(V.value,D),se=I(D);se&&(se.__flags.pendingReset=!0),pt(D,Ee(Q),!0),ae(D,Q,!1),be(D,(H=M==null?void 0:M.touched)!==null&&H!==void 0?H:!1),g(D,(M==null?void 0:M.errors)||[]),e.nextTick(()=>{se&&(se.__flags.pendingReset=!1)})}function Re(D,M){let H=Ee(D!=null&&D.values?D.values:_.value);H=M!=null&&M.force?H:ro(_.value,H),H=vt(U)&&ot(U.cast)?U.cast(H):H,S(H,{force:M==null?void 0:M.force}),E(Q=>{var se;Q.__flags.pendingReset=!0,Q.validated=!1,Q.touched=((se=D==null?void 0:D.touched)===null||se===void 0?void 0:se[e.toValue(Q.path)])||!1,ae(e.toValue(Q.path),rt(H,e.toValue(Q.path)),!1),g(e.toValue(Q.path),void 0)}),M!=null&&M.force?q(H,!1):ie(H,!1),v((D==null?void 0:D.errors)||{}),u.value=(D==null?void 0:D.submitCount)||0,e.nextTick(()=>{xe({mode:"silent"}),E(Q=>{Q.__flags.pendingReset=!1})})}async function xe(D){const M=(D==null?void 0:D.mode)||"force";if(M==="force"&&E(ce=>ce.validated=!0),j.validateSchema)return j.validateSchema(M);i.value=!0;const H=await Promise.all(c.value.map(ce=>ce.validate?ce.validate(D).then(De=>({key:e.toValue(ce.path),valid:De.valid,errors:De.errors,value:De.value})):Promise.resolve({key:e.toValue(ce.path),valid:!0,errors:[],value:void 0})));i.value=!1;const Q={},se={},ve={};for(const ce of H)Q[ce.key]={valid:ce.valid,errors:ce.errors},ce.value&&Ct(ve,ce.key,ce.value),ce.errors.length&&(se[ce.key]=ce.errors[0]);return{valid:H.every(ce=>ce.valid),results:Q,errors:se,values:ve,source:"fields"}}async function ke(D,M){var H;const Q=I(D);if(Q&&(M==null?void 0:M.mode)!=="silent"&&(Q.validated=!0),U){const{results:ve}=await B((M==null?void 0:M.mode)||"validated-only");return ve[D]||{errors:[],valid:!0}}return Q!=null&&Q.validate?Q.validate(M):(!Q&&((H=M==null?void 0:M.warn)!==null&&H!==void 0?H:!0)&&process.env.NODE_ENV!=="production"&&e.warn(`field with path ${D} was not found`),Promise.resolve({errors:[],valid:!0}))}function Pe(D){Ol(V.value,D)}function lt(D,M,H=!1){pt(D,M),Ct(d,D,M),H&&!(t!=null&&t.initialValues)&&Ct(_.value,D,Ee(M))}function pt(D,M,H=!1){Ct(V.value,D,Ee(M)),H&&Ct(_.value,D,Ee(M))}async function Ue(){const D=e.unref(U);if(!D)return{valid:!0,results:{},errors:{},source:"none"};i.value=!0;const M=Eo(D)||vt(D)?await Mp(D,d):await Pp(D,d,{names:b.value,bailsMap:y.value});return i.value=!1,M}const oe=L((D,{evt:M})=>{xp(M)&&M.target.submit()});e.onMounted(()=>{if(t!=null&&t.initialErrors&&v(t.initialErrors),t!=null&&t.initialTouched&&Be(t.initialTouched),t!=null&&t.validateOnMount){xe();return}j.validateSchema&&j.validateSchema("silent")}),e.isRef(U)&&e.watch(U,()=>{var D;(D=j.validateSchema)===null||D===void 0||D.call(j,"validated-only")}),e.provide(dl,j),process.env.NODE_ENV!=="production"&&(jp(j),e.watch(()=>Object.assign(Object.assign({errors:h.value},R.value),{values:d,isSubmitting:a.value,isValidating:i.value,submitCount:u.value}),Nn,{deep:!0}));function Ie(D,M){const H=ot(M)||M==null?void 0:M.label,Q=I(e.toValue(D))||P(D,{label:H}),se=()=>ot(M)?M(xo(Q,yo)):M||{};function ve(){var Ae;Q.touched=!0,((Ae=se().validateOnBlur)!==null&&Ae!==void 0?Ae:Hn().validateOnBlur)&&ke(e.toValue(Q.path))}function ce(){var Ae;((Ae=se().validateOnInput)!==null&&Ae!==void 0?Ae:Hn().validateOnInput)&&e.nextTick(()=>{ke(e.toValue(Q.path))})}function De(){var Ae;((Ae=se().validateOnChange)!==null&&Ae!==void 0?Ae:Hn().validateOnChange)&&e.nextTick(()=>{ke(e.toValue(Q.path))})}const ze=e.computed(()=>{const Ae={onChange:De,onInput:ce,onBlur:ve};return ot(M)?Object.assign(Object.assign({},Ae),M(xo(Q,yo)).props||{}):M!=null&&M.props?Object.assign(Object.assign({},Ae),M.props(xo(Q,yo))):Ae});return[te(D,()=>{var Ae,Xe,et;return(et=(Ae=se().validateOnModelUpdate)!==null&&Ae!==void 0?Ae:(Xe=Hn())===null||Xe===void 0?void 0:Xe.validateOnModelUpdate)!==null&&et!==void 0?et:!0}),ze]}function yt(D){return Array.isArray(D)?D.map(M=>te(M,!0)):te(D)}function pe(D,M){const[H,Q]=Ie(D,M);function se(){Q.value.onBlur()}function ve(De){const ze=Ao(De);ae(e.toValue(D),ze,!1),Q.value.onInput()}function ce(De){const ze=Ao(De);ae(e.toValue(D),ze,!1),Q.value.onChange()}return e.computed(()=>Object.assign(Object.assign({},Q.value),{onBlur:se,onInput:ve,onChange:ce,value:H.value}))}function Se(D,M){const[H,Q]=Ie(D,M),se=I(e.toValue(D));function ve(ce){H.value=ce}return e.computed(()=>{const ce=ot(M)?M(xo(se,yo)):M||{};return Object.assign({[ce.model||"modelValue"]:H.value,[`onUpdate:${ce.model||"modelValue"}`]:ve},Q.value)})}const je=Object.assign(Object.assign({},j),{values:e.readonly(d),handleReset:()=>Re(),submitForm:oe});return e.provide(mi,je),je}function Qp(t,n,o,r){const l={touched:"some",pending:"some",valid:"every"},a=e.computed(()=>!Ke(n,e.unref(o)));function i(){const s=t.value;return tt(l).reduce((d,c)=>{const f=l[c];return d[c]=s[f](m=>m[c]),d},{})}const u=e.reactive(i());return e.watchEffect(()=>{const s=i();u.touched=s.touched,u.valid=s.valid,u.pending=s.pending}),e.computed(()=>Object.assign(Object.assign({initialValues:e.unref(o)},u),{valid:u.valid&&!tt(r.value).length,dirty:a.value}))}function em(t,n,o){const r=Ai(o),l=e.ref(r),a=e.ref(Ee(r));function i(u,s){s!=null&&s.force?(l.value=Ee(u),a.value=Ee(u)):(l.value=ro(Ee(l.value)||{},Ee(u)),a.value=ro(Ee(a.value)||{},Ee(u))),s!=null&&s.updateFields&&t.value.forEach(d=>{if(d.touched)return;const f=rt(l.value,e.toValue(d.path));Ct(n,e.toValue(d.path),Ee(f))})}return{initialValues:l,originalInitialValues:a,setInitialValues:i}}function tm(t,n){return n?{valid:t.valid&&n.valid,errors:[...t.errors,...n.errors]}:t}function Nt(){return e.inject(mi)}const nm={class:"flex flex-col gap-4"},om={class:"flex flex-col"},rm={key:0,class:"text-red-500 text-sm mt-1"},lm={class:"flex flex-col gap-4"},am={class:"flex flex-col"},im={key:0,class:"text-red-500 text-sm mt-1"},sm={class:"flex flex-col gap-4"},um={class:"flex flex-col"},dm={key:0,class:"text-red-500 text-sm mt-1"},cm=e.defineComponent({__name:"Main",setup(t){const n=e.inject("sources"),o=e.inject("defaultSource"),{errors:r}=Nt(),{value:l}=Ne("title"),{value:a}=Ne("description"),{value:i}=Ne("media");return(u,s)=>{const d=e.resolveComponent("Label"),c=e.resolveComponent("Input"),f=e.resolveComponent("Textarea"),m=e.resolveComponent("MediaPicker"),p=e.resolveComponent("CardContent"),g=e.resolveComponent("Card");return e.openBlock(),e.createBlock(g,null,{default:e.withCtx(()=>[e.createVNode(p,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[e.createElementVNode("div",nm,[e.createElementVNode("div",om,[e.createVNode(d,{for:"title",class:"text-sm mb-2"},{default:e.withCtx(()=>s[3]||(s[3]=[e.createTextVNode("Title",-1)])),_:1,__:[3]}),e.createVNode(c,{type:"text",id:"title",placeholder:"T-shirt with red heart",modelValue:e.unref(l),"onUpdate:modelValue":s[0]||(s[0]=v=>e.isRef(l)?l.value=v:null)},null,8,["modelValue"]),e.unref(r).title?(e.openBlock(),e.createElementBlock("p",rm,e.toDisplayString(e.unref(r).title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",lm,[e.createElementVNode("div",am,[e.createVNode(d,{for:"description",class:"text-sm mb-2"},{default:e.withCtx(()=>s[4]||(s[4]=[e.createTextVNode("Description",-1)])),_:1,__:[4]}),e.createVNode(f,{id:"description",placeholder:"Lovely T-shirt featuring a red heart",modelValue:e.unref(a),"onUpdate:modelValue":s[1]||(s[1]=v=>e.isRef(a)?a.value=v:null)},null,8,["modelValue"]),e.unref(r).description?(e.openBlock(),e.createElementBlock("p",im,e.toDisplayString(e.unref(r).description),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",sm,[e.createElementVNode("div",um,[e.createVNode(d,{for:"media",class:"text-sm mb-2"},{default:e.withCtx(()=>s[5]||(s[5]=[e.createTextVNode("Media",-1)])),_:1,__:[5]}),e.createVNode(m,{id:"media",modelValue:e.unref(i),"onUpdate:modelValue":s[2]||(s[2]=v=>e.isRef(i)?i.value=v:null),sources:e.unref(n),defaultSource:e.unref(o)},null,8,["modelValue","sources","defaultSource"]),e.unref(r).media?(e.openBlock(),e.createElementBlock("p",dm,e.toDisplayString(e.unref(r).media),1)):e.createCommentVNode("",!0)])])]),_:1})]),_:1})}}}),fm={class:"grid grid-cols-2 gap-4 mb-4"},pm={class:"relative"},mm={key:0,class:"text-red-500 text-sm mt-1"},gm={class:"relative"},vm={class:"absolute right-2 top-1/2 -translate-y-1/2"},hm={key:0,class:"text-red-500 text-sm mt-1"},xm={class:"flex items-center gap-2 mb-4"},ym={class:"flex items-center border-t mt-4 pt-4"},Cm={class:"relative"},Vm={key:0,class:"text-red-500 text-sm mt-1"},wm=e.defineComponent({__name:"Price",setup(t){const{errors:n}=Nt(),{value:o}=Ne("price"),{value:r}=Ne("compareAtPrice"),{value:l}=Ne("isTaxable"),{value:a}=Ne("costPerItem");return computed(()=>Number(o.value)>0),(i,u)=>{const s=e.resolveComponent("Label"),d=e.resolveComponent("Input"),c=e.resolveComponent("TooltipTrigger"),f=e.resolveComponent("TooltipContent"),m=e.resolveComponent("Tooltip"),p=e.resolveComponent("Checkbox"),g=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[u[12]||(u[12]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Pricing",-1)),e.createElementVNode("div",fm,[e.createElementVNode("div",null,[e.createVNode(s,{for:"price",class:"text-sm mb-2"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Price",-1)])),_:1,__:[4]}),e.createElementVNode("div",pm,[e.createVNode(d,{type:"number",id:"price",class:"pl-10 no-spinner",modelValue:e.unref(o),"onUpdate:modelValue":u[0]||(u[0]=h=>e.isRef(o)?o.value=h:null)},null,8,["modelValue"]),u[5]||(u[5]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).price?(e.openBlock(),e.createElementBlock("p",mm,e.toDisplayString(e.unref(n).price),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(s,{for:"compare-at-price",class:"text-sm mb-2"},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Compare-at price",-1)])),_:1,__:[6]}),e.createElementVNode("div",gm,[e.createVNode(d,{type:"number",id:"compare-at-price",class:"pl-10 no-spinner",modelValue:e.unref(r),"onUpdate:modelValue":u[1]||(u[1]=h=>e.isRef(r)?r.value=h:null)},null,8,["modelValue"]),u[8]||(u[8]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1)),e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(c,{"as-child":""},{default:e.withCtx(()=>[e.createElementVNode("button",vm,[e.createVNode(e.unref(z.Info),{class:"size-4 text-muted-foreground"})])]),_:1}),e.createVNode(f,null,{default:e.withCtx(()=>u[7]||(u[7]=[e.createElementVNode("p",null,[e.createTextVNode(" To display a markdown, enter a value higher than your price."),e.createElementVNode("br"),e.createTextVNode(" Often shown with a strikethrough (e.g. "),e.createElementVNode("span",{class:"font-semibold line-through"},"€25,00"),e.createTextVNode("). ")],-1)])),_:1,__:[7]})]),_:1})]),e.unref(n).compareAtPrice?(e.openBlock(),e.createElementBlock("p",hm,e.toDisplayString(e.unref(n).compareAtPrice),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",xm,[e.createVNode(p,{id:"charge-tax",modelValue:e.unref(l),"onUpdate:modelValue":u[2]||(u[2]=h=>e.isRef(l)?l.value=h:null)},null,8,["modelValue"]),e.createVNode(s,{for:"charge-tax",class:"text-sm"},{default:e.withCtx(()=>u[9]||(u[9]=[e.createTextVNode("Charge tax on this product",-1)])),_:1,__:[9]})]),e.createElementVNode("div",ym,[e.createElementVNode("div",null,[e.createVNode(s,{for:"cost-per-item",class:"text-sm mb-2"},{default:e.withCtx(()=>u[10]||(u[10]=[e.createTextVNode("Cost per item",-1)])),_:1,__:[10]}),e.createElementVNode("div",Cm,[e.createVNode(d,{type:"number",id:"cost-per-item",class:"pl-10 no-spinner",modelValue:e.unref(a),"onUpdate:modelValue":u[3]||(u[3]=h=>e.isRef(a)?a.value=h:null)},null,8,["modelValue"]),u[11]||(u[11]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).costPerItem?(e.openBlock(),e.createElementBlock("p",Vm,e.toDisplayString(e.unref(n).costPerItem),1)):e.createCommentVNode("",!0)])])]),_:1,__:[12]})]),_:1})}}}),bm={class:"grid grid-cols-2 gap-4 mb-4"},_m={class:"flex items-center gap-2 mb-4"},Nm={key:0,class:"grid grid-cols-2 gap-4 mb-4"},km={class:"flex items-center gap-2"},Sm=e.defineComponent({__name:"Inventory",setup(t){const{errors:n}=Nt(),{value:o}=Ne("sku"),{value:r}=Ne("barcode"),{value:l}=Ne("trackInventory"),{value:a}=Ne("allowBackorder"),{value:i}=Ne("stock"),{value:u}=Ne("options"),{value:s}=Ne("variants"),d=e.computed(()=>s.value.reduce((c,f)=>f.stock<0?c:c+f.stock,0));return(c,f)=>{const m=e.resolveComponent("Label"),p=e.resolveComponent("Input"),g=e.resolveComponent("Checkbox"),v=e.resolveComponent("TooltipTrigger"),h=e.resolveComponent("TooltipContent"),x=e.resolveComponent("Tooltip"),b=e.resolveComponent("CardContent"),y=e.resolveComponent("Card");return e.openBlock(),e.createBlock(y,null,{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>{var N;return[f[12]||(f[12]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Inventory",-1)),e.createElementVNode("div",bm,[e.createElementVNode("div",null,[e.createVNode(m,{for:"sku",class:"text-sm mb-2"},{default:e.withCtx(()=>f[6]||(f[6]=[e.createTextVNode("SKU (Stock Keeping Unit)",-1)])),_:1,__:[6]}),e.createVNode(p,{id:"sku",modelValue:e.unref(o),"onUpdate:modelValue":f[0]||(f[0]=C=>e.isRef(o)?o.value=C:null)},null,8,["modelValue"])]),e.createElementVNode("div",null,[e.createVNode(m,{for:"barcode",class:"text-sm mb-2"},{default:e.withCtx(()=>f[7]||(f[7]=[e.createTextVNode("Barcode (ISBN, UPC, GTIN, etc.)",-1)])),_:1,__:[7]}),e.createVNode(p,{id:"barcode",modelValue:e.unref(r),"onUpdate:modelValue":f[1]||(f[1]=C=>e.isRef(r)?r.value=C:null)},null,8,["modelValue"])])]),e.createElementVNode("div",_m,[e.createVNode(g,{id:"track-quantity",modelValue:e.unref(l),"onUpdate:modelValue":f[2]||(f[2]=C=>e.isRef(l)?l.value=C:null)},null,8,["modelValue"]),e.createVNode(m,{for:"track-quantity",class:"text-sm"},{default:e.withCtx(()=>f[8]||(f[8]=[e.createTextVNode("Track quantity",-1)])),_:1,__:[8]})]),e.unref(l)?(e.openBlock(),e.createElementBlock("div",Nm,[e.createElementVNode("div",null,[e.createVNode(m,{for:"stock",class:"text-sm mb-2"},{default:e.withCtx(()=>f[9]||(f[9]=[e.createTextVNode("Stock",-1)])),_:1,__:[9]}),!e.unref(u)||((N=e.unref(u))==null?void 0:N.length)===0?(e.openBlock(),e.createBlock(p,{key:0,id:"stock",type:"number",modelValue:e.unref(i),"onUpdate:modelValue":f[3]||(f[3]=C=>e.isRef(i)?i.value=C:null),class:"no-spinner"},null,8,["modelValue"])):(e.openBlock(),e.createBlock(x,{key:1},{default:e.withCtx(()=>[e.createVNode(v,{class:"cursor-not-allowed"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:d.value,"onUpdate:modelValue":f[4]||(f[4]=C=>d.value=C),disabled:"",class:"no-spinner"},null,8,["modelValue"])]),_:1}),e.createVNode(h,null,{default:e.withCtx(()=>f[10]||(f[10]=[e.createElementVNode("p",null,"Total stock of all variants",-1)])),_:1,__:[10]})]),_:1}))])])):e.createCommentVNode("",!0),e.createElementVNode("div",km,[e.createVNode(g,{id:"continue-selling",modelValue:e.unref(a),"onUpdate:modelValue":f[5]||(f[5]=C=>e.isRef(a)?a.value=C:null)},null,8,["modelValue"]),e.createVNode(m,{for:"continue-selling",class:"text-sm"},{default:e.withCtx(()=>f[11]||(f[11]=[e.createTextVNode("Continue selling when out of stock",-1)])),_:1,__:[11]})])]}),_:1,__:[12]})]),_:1})}}}),Em={class:"flex items-center gap-2 mb-4"},Am={key:0,class:"grid grid-cols-2 gap-4 mb-4"},Tm=e.defineComponent({__name:"Shipping",setup(t){const{errors:n}=Nt(),{value:o}=Ne("isPhysicalProduct"),{value:r}=Ne("weight"),{value:l}=Ne("weightUnit");return(a,i)=>{const u=e.resolveComponent("Checkbox"),s=e.resolveComponent("Label"),d=e.resolveComponent("Input"),c=e.resolveComponent("SelectValue"),f=e.resolveComponent("SelectTrigger"),m=e.resolveComponent("SelectItem"),p=e.resolveComponent("SelectGroup"),g=e.resolveComponent("SelectContent"),v=e.resolveComponent("Select"),h=e.resolveComponent("CardContent"),x=e.resolveComponent("Card");return e.openBlock(),e.createBlock(x,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[i[10]||(i[10]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Shipping",-1)),e.createElementVNode("div",Em,[e.createVNode(u,{id:"is-physical-product",modelValue:e.unref(o),"onUpdate:modelValue":i[0]||(i[0]=b=>e.isRef(o)?o.value=b:null)},null,8,["modelValue"]),e.createVNode(s,{for:"is-physical-product",class:"text-sm"},{default:e.withCtx(()=>i[3]||(i[3]=[e.createTextVNode("This is a physical product",-1)])),_:1,__:[3]})]),e.unref(o)?(e.openBlock(),e.createElementBlock("div",Am,[e.createElementVNode("div",null,[e.createVNode(s,{for:"weight",class:"text-sm mb-2"},{default:e.withCtx(()=>i[4]||(i[4]=[e.createTextVNode("Weight",-1)])),_:1,__:[4]}),e.createVNode(d,{id:"weight",type:"number",modelValue:e.unref(r),"onUpdate:modelValue":i[1]||(i[1]=b=>e.isRef(r)?r.value=b:null),class:"no-spinner"},null,8,["modelValue"])]),e.createElementVNode("div",null,[e.createVNode(s,{for:"weight-unit",class:"text-sm mb-2"},{default:e.withCtx(()=>i[5]||(i[5]=[e.createTextVNode("Weight unit",-1)])),_:1,__:[5]}),e.createVNode(v,{modelValue:e.unref(l),"onUpdate:modelValue":i[2]||(i[2]=b=>e.isRef(l)?l.value=b:null)},{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(c,{placeholder:"Select unit"})]),_:1}),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(m,{value:"lb"},{default:e.withCtx(()=>i[6]||(i[6]=[e.createTextVNode(" lb ",-1)])),_:1,__:[6]}),e.createVNode(m,{value:"oz"},{default:e.withCtx(()=>i[7]||(i[7]=[e.createTextVNode(" oz ",-1)])),_:1,__:[7]}),e.createVNode(m,{value:"kg"},{default:e.withCtx(()=>i[8]||(i[8]=[e.createTextVNode(" kg ",-1)])),_:1,__:[8]}),e.createVNode(m,{value:"g"},{default:e.withCtx(()=>i[9]||(i[9]=[e.createTextVNode(" g ",-1)])),_:1,__:[9]})]),_:1})]),_:1})]),_:1},8,["modelValue"])])])):e.createCommentVNode("",!0)]),_:1,__:[10]})]),_:1})}}});function Je(t){t.preventDefault()}function Yt(t){t.stopPropagation()}function Bi(){const t=new Map;return[function(r,l){t.get(r)&&t.get(r).forEach(a=>{a(l)})},function(r,l){const a=t.get(r)??[];a.push(l),t.set(r,a)}]}var[Di,Ri]=Bi();function Bm(t,n){return t.source===n.source&&t.flags.split("").sort().join("")===n.flags.split("").sort().join("")}function lo(t,n,o=!0,r=["__key"]){if(t===n)return!0;if(typeof n=="object"&&typeof t=="object"&&t!==null&&n!==null){if(t instanceof Map||t instanceof Set)return!1;if(t instanceof Date&&n instanceof Date)return t.getTime()===n.getTime();if(t instanceof RegExp&&n instanceof RegExp)return Bm(t,n);if(t===null||n===null)return!1;const l=t,a=n;if(Object.keys(l).length!==Object.keys(a).length)return!1;for(const i of r)if((i in l||i in a)&&l[i]!==a[i])return!1;for(const i in l)if(!(i in a)||l[i]!==a[i]&&!o||o&&!lo(l[i],a[i],o,r))return!1;return!0}return!1}function Ii(t){return t.split(" ").filter(n=>n)}function Rn(t){return{x:t.clientX,y:t.clientY}}Array();var fl=typeof window<"u",Ze=new WeakMap,_t=new WeakMap;function Mi(){if(!fl)return!1;if("userAgentData"in navigator)return navigator.userAgentData.mobile===!0;const t=navigator.userAgent,n=/android|iphone|ipod/i.test(t),o=/iPad/.test(t)||t.includes("Macintosh")&&navigator.maxTouchPoints>1;return n||o}var Dm={affectedNodes:[],coordinates:{x:0,y:0},currentTargetValue:void 0,on:Ri,emit:Di,originalZIndex:void 0,pointerSelection:!1,preventEnter:!1,rootUserSelect:void 0,nodePointerdown:void 0,longPress:!1,scrolling:!1,longPressTimeout:void 0,remapJustFinished:!1,selectedNodes:[],selectedParent:void 0,preventSynthDrag:!1,pointerDown:void 0,lastScrollContainerX:null,lastScrollContainerY:null,rootScrollWidth:void 0,rootScrollHeight:void 0,dragItemRect:void 0,windowScrollX:void 0,windowScrollY:void 0,lastScrollDirectionX:void 0,lastScrollDirectionY:void 0,scrollDebounceTimeout:void 0,frameIdX:void 0,frameIdY:void 0},Y=Dm,Gt=!1,Hl,Cr;function Rm(){Y.scrollDebounceTimeout&&clearTimeout(Y.scrollDebounceTimeout),Y.longPressTimeout&&clearTimeout(Y.longPressTimeout),Y.frameIdX!==void 0&&cancelAnimationFrame(Y.frameIdX),Y.frameIdY!==void 0&&cancelAnimationFrame(Y.frameIdY),Y={...{affectedNodes:[],coordinates:{x:0,y:0},on:Ri,emit:Di,currentTargetValue:void 0,originalZIndex:void 0,pointerId:void 0,preventEnter:!1,remapJustFinished:!1,selectedNodes:[],nodePointerdown:void 0,rootUserSelect:void 0,preventSynthDrag:!1,scrolling:!1,selectedParent:void 0,pointerSelection:!1,synthScrollDirection:void 0,draggedNodeDisplay:void 0,synthDragScrolling:!1,longPress:!1,pointerDown:void 0,longPressTimeout:void 0,lastScrollContainerX:null,lastScrollContainerY:null,rootScrollWidth:void 0,rootScrollHeight:void 0,dragItemRect:void 0,windowScrollX:void 0,windowScrollY:void 0,lastScrollDirectionX:void 0,lastScrollDirectionY:void 0,scrollDebounceTimeout:void 0,frameIdX:void 0,frameIdY:void 0}}}function Pi(t){return Object.assign(Y,t),t.initialParent.data.emit("dragStarted",Y),Gt=!1,Y.emit("dragStarted",Y),Y}function Im(){Y.activeState&&un(Y.activeState.parent,void 0,Y),Y.selectedState&&rn(Y.selectedState.nodes,Y.selectedState.parent,Y),Y.selectedState=Y.activeState=void 0}function Mm(){if(Y.pointerDown&&(Y.pointerDown.node.el.draggable=!0),Y.pointerDown=void 0,!st(Y))return;const t=Y.currentParent.data.config;st(Y)&&t.handleEnd(Y)}function Pm(t){t.key==="Escape"&&(Y.selectedState&&rn(Y.selectedState.nodes,Y.selectedState.parent,Y),Y.activeState&&un(Y.activeState.parent,void 0,Y),Y.selectedState=Y.activeState=void 0)}function Fm(t){if(!Qe(Y))return;Gt=!0;const n=Y.initialParent.data.config.handleEnd;n(Y)}function Om(t){if(!Qe(Y))return;Je(t);const{x:n,y:o}=Rn(t);Qe(Y)&&Wo({x:n,y:o},t,Y)}function zm(t){if(!Y.pointerDown||!Y.pointerDown.validated)return;const n=Y.pointerDown.parent.data.config;if(!(t.pointerType==="mouse"&&!Mi()))if(st(Y))st(Y)&&ql(t,Y);else{if(Je(t),n.longPress&&!Y.longPress){clearTimeout(Y.longPressTimeout),Y.longPress=!1;return}const o=n.draggedNodes(Y.pointerDown);n.dragstartClasses(Y.pointerDown.node,o,n,!0);const r=Y.pointerDown.node.el.getBoundingClientRect(),l=gg(Y.pointerDown.node,Y.pointerDown.parent,t,Y,o,r);ql(t,l,!0)}}function Lm({parent:t,getValues:n,setValues:o,config:r={}}){var s,d,c;if(!fl)return;Hl||(Hl=To(document,{dragover:Om,pointerdown:Im,pointerup:Mm,keydown:Pm,drop:Fm,pointermove:zm,pointercancel:at(r.handlePointercancel),touchmove:f=>{Qe(Y)&&f.cancelable&&Je(f)},contextmenu:f=>{st(Y)&&Je(f)}})),qm(t);const[l,a]=Bi(),i={getValues:n,setValues:o,config:{dragDropEffect:r.dragDropEffect??"move",dragEffectAllowed:r.dragEffectAllowed??"move",draggedNodes:eg,dragstartClasses:rg,handleNodeKeydown:ag,handleDragstart:ng,handleNodeDragover:hg,handleParentDragover:xg,handleNodeDrop:sg,handleNodeFocus:ug,handleNodeBlur:dg,handlePointercancel:fg,handleEnd:pg,handleDragend:cg,handleParentFocus:jm,handleNodePointerup:mg,handleNodePointerover:ig,handleParentPointerover:yg,handleParentScroll:tg,handleNodePointerdown:og,handleNodeDragenter:Vg,handleNodeDragleave:wg,handleParentDrop:Hm,multiDrag:r.multiDrag??!1,nativeDrag:r.nativeDrag??!0,performSort:Um,performTransfer:$m,root:r.root??document,setupNode:Wm,setupNodeRemap:Oi,reapplyDragClasses:Xm,tearDownNode:Zm,tearDownNodeRemap:Ym,remapFinished:Jm,threshold:{horizontal:0,vertical:0},...r},enabledNodes:[],abortControllers:{},privateClasses:[],on:a,emit:l};new MutationObserver(Km).observe(t,{childList:!0}),Ze.set(t,i),(s=r.plugins)==null||s.forEach(f=>{var m,p;(p=(m=f(t))==null?void 0:m.tearDown)==null||p.call(m)}),(d=r.plugins)==null||d.forEach(f=>{var m,p;(p=(m=f(t))==null?void 0:m.tearDown)==null||p.call(m)}),(c=r.plugins)==null||c.forEach(f=>{var m,p;(p=(m=f(t))==null?void 0:m.setup)==null||p.call(m)}),Gm(t,i),qo(t,!0)}function Fi(t,n,o,r,l,a){const{x:i,y:u}=Rn(o),s=t.el.getBoundingClientRect();return{affectedNodes:[],ascendingDirection:!1,clonedDraggedEls:[],coordinates:{x:i,y:u},draggedNode:{el:t.el,data:t.data},draggedNodes:r,incomingDirection:void 0,initialIndex:t.data.index,initialParent:{el:n.el,data:n.data},currentParent:{el:n.el,data:n.data},longPress:n.data.config.longPress??!1,longPressTimeout:void 0,currentTargetValue:t.data.value,scrollEls:[],startLeft:l||i-((s==null?void 0:s.left)??0),startTop:a||u-((s==null?void 0:s.top)??0),targetIndex:t.data.index,transferred:!1}}function Um({parent:t,draggedNodes:n,targetNodes:o}){qo(t.el);const r=n.map(s=>s.data.value),l=kn(t.el,t.data),a=n[0].data.index,i=[...t.data.enabledNodes],u=[...l.filter(s=>!r.some(d=>lo(s,d)))];u.splice(o[0].data.index,0,...r),"draggedNode"in Y&&(Y.currentTargetValue=o[0].data.value),zr(t.el,t.data,[...u]),t.data.config.onSort&&t.data.config.onSort({parent:{el:t.el,data:t.data},previousValues:[...l],previousNodes:[...i],nodes:[...t.data.enabledNodes],values:[...u],draggedNodes:n,previousPosition:a,position:o[0].data.index,targetNodes:o,state:Y})}function un(t,n,o){if(!n){o.activeState=void 0;return}o.activeState={node:n,parent:t}}function rn(t,n,o){const r=n.data.config.selectedClass;if(!o.selectedState)return;const l=Array.from(t);jt(t.map(a=>a.el),r);for(const a of l){a.el.setAttribute("aria-selected","false");const i=o.selectedState.nodes.findIndex(u=>u.el===a.el);i!==-1&&o.selectedState.nodes.splice(i,1)}}function Co(t,n,o,r,l=!1){r.pointerSelection=l;for(const a of n)a.el.setAttribute("aria-selected","true"),Vn([a.el],t.data.config.selectedClass,!0);r.selectedState={nodes:n,parent:t},un(t,o,r)}function jm(t,n){const o=t.targetData.parent.data.enabledNodes[0];o&&(n.selectedState&&n.selectedState.parent.el!==t.targetData.parent.el?un(t.targetData.parent,o,n):n.selectedState||un(t.targetData.parent,o,n))}function $m({currentParent:t,targetParent:n,initialParent:o,draggedNodes:r,initialIndex:l,targetNodes:a,state:i}){qo(o.el);const u=r.map(m=>m.data.value),s=[...kn(t.el,t.data).filter(m=>!u.some(p=>lo(m,p)))],d=kn(n.el,n.data),c=o.el===n.el&&n.data.config.sortable===!1;let f;a.length?(c?f=l:n.data.config.sortable===!1?f=n.data.enabledNodes.length:f=a[0].data.index,d.splice(f,0,...u)):(f=c?l:n.data.enabledNodes.length,d.splice(f,0,...u)),zr(t.el,t.data,s),zr(n.el,n.data,d),n.data.config.onTransfer&&n.data.config.onTransfer({sourceParent:t,targetParent:n,initialParent:o,draggedNodes:r,targetIndex:f,state:i,targetNodes:a}),t.data.config.onTransfer&&t.data.config.onTransfer({sourceParent:t,targetParent:n,initialParent:o,draggedNodes:r,targetIndex:f,state:i,targetNodes:a||[]})}function kn(t,n){return[...n.getValues(t)]}function zr(t,n,o){n.setValues(o,t)}function Hm(t,n){Yt(t.e),Gt=!0;const o=n.initialParent.data.config.handleEnd;o(n)}function qm(t){const n=Ze.get(t);n&&n.abortControllers.mainParent&&n.abortControllers.mainParent.abort()}function Qe(t){return"draggedNode"in t&&!!t.draggedNode}function st(t){return"synthDragging"in t&&!!t.synthDragging}function Gm(t,n){n.abortControllers.mainParent=To(t,{dragover:Vo(n.config.handleParentDragover),handleParentPointerover:n.config.handleParentPointerover,scroll:Vo(n.config.handleParentScroll),drop:Vo(n.config.handleParentDrop),hasNestedParent:o=>{const r=Ze.get(o.target);r&&(r.nestedParent=o.detail.parent)},focus:Vo(n.config.handleParentFocus)}),n.config.externalDragHandle&&n.config.externalDragHandle.el&&n.config.externalDragHandle.callback&&(n.abortControllers.externalDragHandle=To(n.config.externalDragHandle.el,{pointerdown:o=>{if(!n.config.externalDragHandle||!n.config.externalDragHandle.callback)return;const r=n.config.externalDragHandle.callback();if(!Xo(r)){console.warn("No draggable item found from external drag handle callback");return}const l=_t.get(r);if(!l)return;const a=r.parentNode;if(!(a instanceof HTMLElement))return;const i=Ze.get(a);i&&(Y.pointerDown={parent:{el:a,data:i},node:{el:r,data:l},validated:!0},r.draggable=!0)}}))}function Wm(t){var o;const n=t.parent.data.config;t.node.data.abortControllers.mainNode=To(t.node.el,{keydown:at(n.handleNodeKeydown),dragstart:at(n.handleDragstart),dragover:at(n.handleNodeDragover),dragenter:at(n.handleNodeDragenter),dragleave:at(n.handleNodeDragleave),dragend:at(n.handleDragend),drop:at(n.handleNodeDrop),focus:at(n.handleNodeFocus),blur:at(n.handleNodeBlur),pointerup:at(n.handleNodePointerup),pointercancel:at(n.handlePointercancel),pointerdown:at(n.handleNodePointerdown),handleNodePointerover:n.handleNodePointerover,touchmove:r=>{Qe(Y)&&r.cancelable&&Je(r)},contextmenu:r=>{st(Y)&&Je(r)}}),t.node.el.draggable=!0,n.reapplyDragClasses(t.node.el,t.parent.data),(o=t.parent.data.config.plugins)==null||o.forEach(r=>{var l,a;(a=(l=r(t.parent.el))==null?void 0:l.setupNode)==null||a.call(l,t)})}function Oi(t){var n;_t.set(t.node.el,t.node.data),(n=t.parent.data.config.plugins)==null||n.forEach(o=>{var r,l;(l=(r=o(t.parent.el))==null?void 0:r.setupNodeRemap)==null||l.call(r,t)})}function Xm(t,n){if(!Qe(Y))return;const o=st(Y)?n.config.synthDropZoneClass:n.config.dropZoneClass;Y.draggedNode.el===t&&Vn([t],o,!0)}function Ym(t){var n;(n=t.parent.data.config.plugins)==null||n.forEach(o=>{var r,l;(l=(r=o(t.parent.el))==null?void 0:r.tearDownNodeRemap)==null||l.call(r,t)})}function Zm(t){var n,o,r,l,a;(n=t.parent.data.config.plugins)==null||n.forEach(i=>{var u,s;(s=(u=i(t.parent.el))==null?void 0:u.tearDownNode)==null||s.call(u,t)}),t.node.el.draggable=!1,(r=(o=t.node.data)==null?void 0:o.abortControllers)!=null&&r.mainNode&&((a=(l=t.node.data)==null?void 0:l.abortControllers)==null||a.mainNode.abort())}function Km(t){if(t.length===1&&t[0].addedNodes.length===1&&!(t[0].addedNodes[0]instanceof HTMLElement))return;const n=t[0].target;!(n instanceof HTMLElement)||!Ze.get(n)||qo(n)}function qo(t,n){var u;const o=Ze.get(t);if(!o)return;o.privateClasses=Array.from(t.classList);const r=[],l=o.config;for(let s=0;s<t.children.length;s++){const d=t.children[s];if(!Xo(d)||d.id==="dnd-dragged-node-clone")continue;const c=_t.get(d);(n||!c)&&l.tearDownNode({parent:{el:t,data:o},node:{el:d,data:c}}),!l.disabled&&(!l.draggable||l.draggable&&l.draggable(d))&&r.push(d)}if(r.length!==o.getValues(t).length&&!l.disabled){console.warn("The number of draggable items defined in the parent element does not match the number of values. This may cause unexpected behavior.");return}const a=o.getValues(t),i=[];for(let s=0;s<r.length;s++){const d=r[s],c=_t.get(d);if(l.draggableValue&&!l.draggableValue(a[s]))continue;const f=Object.assign(c??{privateClasses:[],abortControllers:{}},{value:a[s],index:s});if(!Qe(Y)&&Y.activeState&&lo(Y.activeState.node.data.value,f.value)&&un({data:o,el:t},{el:d,data:f},Y),Qe(Y)&&lo(Y.draggedNode.data.value,f.value)){Y.draggedNode.data=f,Y.draggedNode.el=d;const m=Y.draggedNodes.find(p=>p.data.value===f.value);m&&(m.el=d)}i.push({el:d,data:f}),(n||!c)&&l.setupNode({parent:{el:t,data:o},node:{el:d,data:f}}),Oi({parent:{el:t,data:o},node:{el:d,data:f}})}Ze.set(t,{...o,enabledNodes:i}),l.remapFinished(o),(u=o.config.plugins)==null||u.forEach(s=>{var d,c;(c=(d=s(t))==null?void 0:d.remapFinished)==null||c.call(d)})}function Jm(){Y.remapJustFinished=!0,"draggedNode"in Y&&(Y.affectedNodes=[])}function Qm(t){return!!t.targetData.parent.data.config.nativeDrag}function eg(t){var n;if(t.parent.data.config.multiDrag){if(Y.selectedState)return[t.node,...(n=Y.selectedState)==null?void 0:n.nodes.filter(o=>o.el!==t.node.el)]}else return[t.node];return[]}function tg(t){Qe(Y)&&(Y.emit("scrollStarted",Y),!st(Y)&&(Y.preventEnter=!0,Cr&&clearTimeout(Cr),Cr=setTimeout(()=>{Y.preventEnter=!1,Y.emit("scrollEnded",Y)},100)))}function ng(t,n){const o=t.targetData.parent.data.config;if(!o.nativeDrag||!Qm(t)||!zi({x:t.e.clientX,y:t.e.clientY,node:t.targetData.node,config:o})){Je(t.e);return}let r=o.draggedNodes({parent:t.targetData.parent,node:t.targetData.node});r.length===0&&(r=[t.targetData.node]),o.dragstartClasses(t.targetData.node,r,o);const l=lg(t,r);if(o.onDragstart){const a={parent:t.targetData.parent,values:kn(t.targetData.parent.el,t.targetData.parent.data),draggedNode:l.draggedNode,draggedNodes:l.draggedNodes,position:l.initialIndex,state:l};o.onDragstart(a)}}function og(t,n){var u,s;if(Yt(t.e),n.pointerDown={parent:t.targetData.parent,node:t.targetData.node,validated:!1},!zi({x:t.e.clientX,y:t.e.clientY,node:t.targetData.node,config:t.targetData.parent.data.config}))return;n.pointerDown.validated=!0,vg(t,n,t.targetData.node);const o=t.targetData.parent.data;let r=[t.targetData.node];const l=t.e.ctrlKey||t.e.metaKey,a=t.e.shiftKey,i=t.targetData.node;if(l&&o.config.multiDrag){n.selectedState?n.selectedState.nodes.findIndex(c=>c.el===i.el)===-1?r=[...n.selectedState.nodes,i]:r=n.selectedState.nodes.filter(c=>c.el!==i.el):r=[i],Co(t.targetData.parent,r,t.targetData.node,n,!0);return}if(a&&o.config.multiDrag){const d=t.targetData.parent.data.enabledNodes;if(n.selectedState&&n.activeState)if(n.selectedState.parent.el!==t.targetData.parent.el){rn(n.selectedState.nodes,n.selectedState.parent,n),n.selectedState=void 0;for(let c=0;c<=i.data.index;c++)r.push(d[c])}else{const[c,f]=n.activeState.node.data.index<t.targetData.node.data.index?[n.activeState.node.data.index,t.targetData.node.data.index]:[t.targetData.node.data.index,n.activeState.node.data.index];r=d.slice(c,f+1)}else for(let c=0;c<=i.data.index;c++)r.push(d[c]);Co(t.targetData.parent,r,t.targetData.node,n,!0);return}(s=(u=n.selectedState)==null?void 0:u.nodes)!=null&&s.length?n.selectedState.nodes.findIndex(c=>c.el===t.targetData.node.el)===-1&&(n.selectedState.parent.el!==t.targetData.parent.el?rn(n.selectedState.nodes,t.targetData.parent,n):o.config.multiDrag&&Mi()?r.push(...n.selectedState.nodes):rn(n.selectedState.nodes,t.targetData.parent,n),Co(t.targetData.parent,r,t.targetData.node,n,!0)):Co(t.targetData.parent,[t.targetData.node],t.targetData.node,n,!0)}function rg(t,n,o,r=!1){Vn(n.map(l=>l.el),r?o.synthDraggingClass:o.draggingClass),setTimeout(()=>{jt(n.map(l=>l.el),r?o.synthDraggingClass:o.draggingClass),Vn(n.map(l=>l.el),r?o.synthDragPlaceholderClass:o.dragPlaceholderClass),Vn(n.map(l=>l.el),r?o.synthDropZoneClass:o.dropZoneClass),jt(n.map(l=>l.el),o.selectedClass)})}function lg(t,n){Yt(t.e);const o=Pi(Fi(t.targetData.node,t.targetData.parent,t.e,n));if(t.e.dataTransfer){const r=t.targetData.parent.data.config;t.e.dataTransfer.dropEffect=r.dragDropEffect,t.e.dataTransfer.effectAllowed=r.dragEffectAllowed;let l;if(t.e.dataTransfer.setData("text/plain",""),r.dragImage)l=r.dragImage(t,n);else{if(!r.multiDrag||n.length===1)return t.targetData.node.el.style.zIndex="9999",t.targetData.node.el.style.boxSizing="border-box",t.e.dataTransfer.setDragImage(t.targetData.node.el,t.e.offsetX,t.e.offsetY),o.originalZIndex=t.targetData.node.el.style.zIndex,o;{const a=document.createElement("div");a.setAttribute("id","dnd-dragged-node-clone"),a.setAttribute("popover","manual");for(const u of n){const s=u.el.cloneNode(!0);s.id=u.el.id+"-clone",s.style.pointerEvents="none",a.appendChild(s)}const{width:i}=n[0].el.getBoundingClientRect();Object.assign(a.style,{display:"flex",flexDirection:"column",width:`${i}px`,position:"absolute",pointerEvents:"none",zIndex:"9999",left:"-9999px",boxSizing:"border-box",background:"transparent",overflow:"hidden"}),t.targetData.parent.el.appendChild(a),a.showPopover(),a.getBoundingClientRect(),l=a,t.e.dataTransfer.setDragImage(l,t.e.offsetX,t.e.offsetY)}}setTimeout(()=>{l==null||l.remove()})}return o}function zi({x:t,y:n,node:o,config:r}){if(r.externalDragHandle)return!1;if(!r.dragHandle)return!0;const l=o.el.querySelectorAll(r.dragHandle);if(!l)return!1;const a=r.root.elementFromPoint(t,n);if(!a)return!1;for(const i of Array.from(l))if(a===i||i.contains(a))return!0;return!1}function ag(t){}function ig(t){t.detail.targetData.parent.el===t.detail.state.currentParent.el?Ui(t.detail,t.detail.state):Go(t.detail,t.detail.state)}function sg(t,n){const o=t.targetData.parent.data.config;o.nativeDrag&&(Yt(t.e),Gt=!0,o.handleEnd(n))}function ug(t){t.e.target!==t.e.currentTarget&&Y.pointerDown&&(Y.pointerDown.node.el.draggable=!1)}function dg(t){t.e.target!==t.e.currentTarget&&Y.pointerDown&&(Y.pointerDown.node.el.draggable=!0)}function cg(t,n){const o=t.targetData.parent.data.config;if(o.nativeDrag){if(Je(t.e),Yt(t.e),Gt){Gt=!1;return}o.handleEnd(n)}}function fg(t,n){var r;if(!st(n))return;if(Je(t.e),Gt){Gt=!1;return}const o=(r=Ze.get(n.initialParent.el))==null?void 0:r.config;o!=null&&o.onDragend&&o.onDragend({parent:n.currentParent,values:kn(n.currentParent.el,n.currentParent.data),draggedNode:n.draggedNode,draggedNodes:n.draggedNodes,state:n}),o==null||o.handleEnd(n)}function pg(t){var c,f,m,p,g;t.draggedNode&&(t.draggedNode.el.draggable=!0);const n=t.draggedNodes.map(v=>v.el),o=t.initialParent.data,r=st(t),l=(c=Ze.get(t.initialParent.el))==null?void 0:c.config,a=r?l==null?void 0:l.synthDropZoneClass:l==null?void 0:l.dropZoneClass,i=(f=o==null?void 0:o.config)==null?void 0:f.longPressClass,u=r?(m=o==null?void 0:o.config)==null?void 0:m.synthDragPlaceholderClass:(p=o==null?void 0:o.config)==null?void 0:p.dragPlaceholderClass,s=t.originalZIndex;st(t)&&(t.clonedDraggedNode&&t.clonedDraggedNode.remove(),t.longPressTimeout&&clearTimeout(t.longPressTimeout)),Lr(t),t.lastScrollDirectionX=void 0,t.lastScrollDirectionY=void 0,t.preventEnter=!1,t.scrollDebounceTimeout&&(clearTimeout(t.scrollDebounceTimeout),t.scrollDebounceTimeout=void 0),s!==void 0&&t.draggedNode&&(t.draggedNode.el.style.zIndex=s),requestAnimationFrame(()=>{jt(n,a),jt(n,i),jt(n,u)}),rn(t.draggedNodes,t.currentParent,t),un(t.currentParent,void 0,t);const d={...t};(g=l==null?void 0:l.onDragend)==null||g.call(l,{parent:d.currentParent,values:kn(d.currentParent.el,d.currentParent.data),draggedNode:d.draggedNode,draggedNodes:d.draggedNodes,state:d}),t.emit("dragEnded",d),Rm()}function mg(t,n){Yt(t.e),!n.pointerSelection&&n.selectedState&&rn(n.selectedState.nodes,t.targetData.parent,n);const o=t.targetData.parent.data.config;n.pointerSelection=!1,"longPressTimeout"in n&&n.longPressTimeout&&clearTimeout(n.longPressTimeout),n.longPress=!1,jt(t.targetData.parent.data.enabledNodes.map(r=>r.el),o.longPressClass),Qe(n)&&o.handleEnd(n)}function gg(t,n,o,r,l,a){var g,v;const i=n.data.config;let u,s;const d=["display","flexDirection","alignItems","justifyContent","padding","paddingTop","margin","marginTop","marginBottom","marginLeft","marginRight","paddingBottom","paddingLeft","paddingRight","border","borderRadius","background","backgroundColor","boxShadow","font","color","lineHeight","gap","width","height","boxSizing","overflow"],c=(h,x)=>{const b=window.getComputedStyle(h);d.forEach(y=>{x.style[y]=b[y]})},f=(h,x={})=>{Object.assign(h.style,{position:"absolute",zIndex:"9999",pointerEvents:"none",willChange:"transform",boxSizing:"border-box",opacity:"0",overflow:"hidden",width:`${a.width}px`,height:`${a.height}px`,...x})};if(i.synthDragImage)s=i.synthDragImage(t,n,o,l),u=s.dragImage,u.setAttribute("popover","manual"),f(u);else if(!i.multiDrag||l.length===1)u=t.el.cloneNode(!0),c(t.el,u),u.setAttribute("popover","manual"),f(u);else{const h=document.createElement("div");h.setAttribute("popover","manual"),l.forEach(x=>{const b=x.el.cloneNode(!0);c(x.el,b),b.style.pointerEvents="none",b.style.margin="0",h.append(b)}),h.style.display="flex",h.style.flexDirection="column",h.style.padding="0",h.style.margin="0",h.style.position="absolute",h.style.zIndex="9999",h.style.pointerEvents="none",u=h}u.id="dnd-dragged-node-clone",n.el.appendChild(u),u.showPopover();const m={clonedDraggedEls:[],clonedDraggedNode:u,synthDragScrolling:!1,synthDragging:!0,rootScrollWidth:(g=document.scrollingElement)==null?void 0:g.scrollWidth,rootScrollHeight:(v=document.scrollingElement)==null?void 0:v.scrollHeight};return Pi({...Fi(t,n,o,l,s==null?void 0:s.offsetX,s==null?void 0:s.offsetY),...m})}function vg(t,n,o){const r=t.targetData.parent.data.config;n.longPressTimeout=setTimeout(()=>{n&&(n.longPress=!0,r.longPressClass&&t.e.cancelable&&Vn([o.el],r.longPressClass),Je(t.e))},r.longPressDuration||1e3)}function Lr(t,n=!0,o=!0){n&&(t.frameIdX!==void 0&&(cancelAnimationFrame(t.frameIdX),t.frameIdX=void 0),t.lastScrollDirectionX=void 0),o&&(t.frameIdY!==void 0&&(cancelAnimationFrame(t.frameIdY),t.frameIdY=void 0),t.lastScrollDirectionY=void 0),!t.frameIdX&&!t.frameIdY&&(t.preventEnter=!1)}function Li(t,n=!1){var c;const{x:o,y:r}=t.coordinates,l=t.startLeft??0,a=t.startTop??0,i=window.scrollX??0,u=window.scrollY??0,s=o-l+i,d=r-a+u;t.clonedDraggedNode.style.transform=`translate3d(${s}px, ${d}px, 0px)`,n&&(t.clonedDraggedNode.style.opacity="1",jt(t.draggedNodes.map(f=>f.el),(c=t.initialParent.data.config)==null?void 0:c.longPressClass))}function ql(t,n,o=!1){const r=Rn(t);n.coordinates.x=r.x,n.coordinates.y=r.y,Li(n,o),n.scrollDebounceTimeout&&(clearTimeout(n.scrollDebounceTimeout),n.scrollDebounceTimeout=void 0),n.scrollDebounceTimeout=setTimeout(()=>{st(n)&&Wo(n.coordinates,t,n)},16);const l=kg(r);if(!l){document.dispatchEvent(new CustomEvent("handleRootPointerover",{detail:{e:t,state:n}}));return}const a={e:t,targetData:l,state:n};"node"in l?l.node.el.dispatchEvent(new CustomEvent("handleNodePointerover",{detail:a})):l.parent.el.dispatchEvent(new CustomEvent("handleParentPointerover",{detail:a}))}function hg(t,n){var a;if(!t.targetData.parent.data.config.nativeDrag)return;const{x:r,y:l}=Rn(t.e);n.coordinates.y=l,n.coordinates.x=r,Je(t.e),Yt(t.e),Qe(n)&&Wo({x:r,y:l},t.e,n),t.targetData.parent.el===((a=n.currentParent)==null?void 0:a.el)?Ui(t,n):Go(t,n)}function xg(t,n){if(!t.targetData.parent.data.config.nativeDrag)return;Je(t.e),Yt(t.e);const{x:r,y:l}=Rn(t.e);Qe(n)&&Wo({x:r,y:l},t.e,n),Go(t,n)}function yg(t){t.detail.targetData.parent.el!==t.detail.state.currentParent.el&&Go(t.detail,t.detail.state)}function Cg({currentParent:t,targetParent:n,initialParent:o,draggedNodes:r,state:l}){if(n.el===t.el)return!1;const a=n.data.config;if(r[0].el.contains(n.el)||a.dropZone===!1)return!1;const i=o.data.config;return a.accepts?a.accepts(n,o,t,l):!(!a.group||a.group!==i.group)}function Vg(t,n){Je(t.e)}function wg(t,n){Je(t.e)}function bg(t,n,o,r){var c;if(n.affectedNodes.map(f=>f.data.value).includes(t.targetData.node.data.value))return!1;if(n.remapJustFinished)return n.remapJustFinished=!1,(t.targetData.node.data.value===n.currentTargetValue||n.draggedNodes.map(f=>f.el).includes(t.targetData.node.el))&&(n.currentTargetValue=t.targetData.node.data.value),!1;if(n.preventEnter)return!1;if(n.draggedNodes.map(f=>f.el).includes(t.targetData.node.el))return n.currentTargetValue=void 0,!1;if(t.targetData.node.data.value===n.currentTargetValue||t.targetData.parent.el!==((c=n.currentParent)==null?void 0:c.el)||t.targetData.parent.data.config.sortable===!1||t.targetData.node.el.contains(n.draggedNodes[0].el))return!1;const l=t.targetData.node.el.getBoundingClientRect(),a=n.draggedNode.el.getBoundingClientRect(),i=l.y-a.y,u=l.x-a.x;let s;Math.abs(i)>Math.abs(u)?s=i>0?"above":"below":s=u>0?"left":"right";const d=n.currentParent.data.config.threshold;switch(s){case"left":if(o>l.x+l.width*d.horizontal)return n.incomingDirection="left",!0;break;case"right":if(o<l.x+l.width*(1-d.horizontal))return n.incomingDirection="right",!0;break;case"above":if(r>l.y+l.height*d.vertical)return n.incomingDirection="above",!0;break;case"below":if(r<l.y+l.height*(1-d.vertical))return n.incomingDirection="below",!0;break}return!1}function Ui(t,n){const{x:o,y:r}=Rn(t.e);if(!bg(t,n,o,r))return;const l=n.draggedNode.data.index>t.targetData.node.data.index?[t.targetData.node.data.index,n.draggedNode.data.index]:[n.draggedNode.data.index,t.targetData.node.data.index];n.targetIndex=t.targetData.node.data.index,n.affectedNodes=t.targetData.parent.data.enabledNodes.filter(a=>l[0]<=a.data.index&&a.data.index<=l[1]&&a.el!==n.draggedNode.el),t.targetData.parent.data.config.performSort({parent:t.targetData.parent,draggedNodes:n.draggedNodes,targetNodes:[t.targetData.node]})}function at(t){function n(o){const r=_t.get(o);if(!r)return;const l=Ze.get(o.parentNode);if(l)return{node:{el:o,data:r},parent:{el:o.parentNode,data:l}}}return o=>{const r=n(o.currentTarget);if(r)return t({e:o,targetData:r},Y)}}function Go(t,n){Je(t.e),Cg({currentParent:n.currentParent,targetParent:t.targetData.parent,initialParent:n.initialParent,draggedNodes:n.draggedNodes,state:n})&&(t.targetData.parent.data.config.performTransfer({currentParent:n.currentParent,targetParent:t.targetData.parent,initialParent:n.initialParent,draggedNodes:n.draggedNodes,initialIndex:n.initialIndex,state:n,targetNodes:"node"in t.targetData?[t.targetData.node]:[]}),n.currentParent=t.targetData.parent,n.transferred=!0)}function Vo(t){function n(o){const r=Ze.get(o);if(r)return{parent:{el:o,data:r}}}return o=>{const r=n(o.currentTarget);if(r)return t({e:o,targetData:r},Y)}}function Vn(t,n,o=!1){function r(l,a){_t.set(l,a)}for(const l of t){const a=_t.get(l),i=_g(l,n,a,o);i&&r(l,i)}}function _g(t,n,o,r=!1){if(!n)return;const l=Ii(n);if(!l.length)return;if(!o){t.classList.add(...l);return}const a=[];for(const i of l)t.classList.contains(i)?t.classList.contains(i)&&r===!1&&a.push(i):t.classList.add(i);return o.privateClasses=a,o}function jt(t,n){if(!n)return;const o=Ii(n);if(o.length)for(const r of t){if(!Xo(r)){r.classList.remove(...o);continue}const l=_t.get(r)||Ze.get(r);if(l)for(const a of o)l.privateClasses.includes(a)||r.classList.remove(a)}}function Gl(t,n,o,r,l){const i=l.axis==="x",u=t===document.scrollingElement,s=i?"scrollLeft":"scrollTop",d=i?"clientWidth":"clientHeight",c=i?"offsetWidth":"offsetHeight",f=i?"scrollWidth":"scrollHeight",m=i?n.clientX:n.clientY,p=i?r.left:r.top,g=i?o.overflowX:o.overflowY;if(u){const v=t[s],h=t[d],x=v>0,b=v+h<(i?l.state.rootScrollWidth||0:t[f]);return i?{left:x&&m<h*.075,right:b&&m>h*(1-.075)}:{up:x&&m<h*.075,down:b&&m>h*(1-.075)}}if((g==="auto"||g==="scroll")&&t!==document.body&&t!==document.documentElement){const v=t[f],h=t[c],x=t[s],b=x>0,y=x<v-h;return i?{left:b&&m<p+h*.075,right:y&&m>p+h*(1-.075)}:{up:b&&m<p+h*.075,down:y&&m>p+h*(1-.075)}}return i?{left:!1,right:!1}:{up:!1,down:!1}}function Ng(t,n,o,r){if(!Qe(o)||!o.draggedNode)return;o.preventEnter=!0;const l=r.axis==="x",a=r.direction==="positive"?1:-1,i=20,u=l?"lastScrollDirectionX":"lastScrollDirectionY",s=l?"frameIdX":"frameIdY";o[s]!==void 0&&(cancelAnimationFrame(o[s]),o[s]=void 0),o[u]=r.direction;const d=()=>{if(!Qe(o)||!o.draggedNode){o[s]!==void 0&&(cancelAnimationFrame(o[s]),o[s]=void 0);return}const c=l?"scrollLeft":"scrollTop",f=l?"clientWidth":"clientHeight",m=l?"scrollWidth":"scrollHeight",p=t[c],g=t[f],v=t[m];if(!(a>0?p+g<v:p>0)){o[s]=void 0,o[u]=void 0;return}t[c]+=i*a,st(o)&&Li(o),o[s]=requestAnimationFrame(d)};o[s]=requestAnimationFrame(d)}function Wl(t,n,o){const r=t.getBoundingClientRect();return n>=r.left&&n<=r.right&&o>=r.top&&o<=r.bottom}function Wo(t,n,o){if(!Qe(o)||!o.draggedNode)return;Lr(o);const{x:r,y:l}=t;let a=!1;const i=(s,d,c)=>{Ng(c,n,o,{axis:s,direction:d}),a=!0},u=s=>{const d=window.getComputedStyle(s),c=s.getBoundingClientRect(),f=Gl(s,n,d,c,{axis:"x",state:o}),m=Gl(s,n,d,c,{axis:"y"});(f.left||f.right)&&(o.lastScrollContainerX=s,i("x",f.right?"positive":"negative",s)),(m.up||m.down)&&(o.lastScrollContainerY=s,i("y",m.down?"positive":"negative",s))};if(o.lastScrollContainerX&&Wl(o.lastScrollContainerX,r,l)&&u(o.lastScrollContainerX),!a&&o.lastScrollContainerY&&Wl(o.lastScrollContainerY,r,l)&&u(o.lastScrollContainerY),!a){let s=document.elementFromPoint(r,l);for(;s&&!(a&&o.lastScrollContainerX&&o.lastScrollContainerY);)s instanceof HTMLElement&&u(s),s=s.parentElement}if(!a){const s=document.scrollingElement;s instanceof HTMLElement&&u(s)}a||Lr(o)}function kg(t){let n=document.elementFromPoint(t.x,t.y);if(!Xo(n))return;let o,r=!0;for(;n&&r;){if(_t.has(n)||Ze.has(n)){r=!1,o=Ze.has(n);break}n=n.parentNode}if(o){const l=Ze.get(n);return l?{parent:{el:n,data:l}}:void 0}else{const l=_t.get(n);if(!l)return;const a=Ze.get(n.parentNode);return a?{node:{el:n,data:l},parent:{el:n.parentNode,data:a}}:void 0}}function Xo(t){return t instanceof HTMLElement&&t.parentNode instanceof HTMLElement}function To(t,n){const o=new AbortController;for(const r in n){const l=n[r];t.addEventListener(r,l,{signal:o.signal,passive:!1,capture:r==="focus"||r==="blur"})}return o}function Xl(t){if(t instanceof HTMLElement)return t;if(t.value instanceof HTMLElement)return t.value;if("$el"in t&&t.$el instanceof HTMLElement)return t.$el}function Sg(t,n){Array.isArray(t)||(t=[t]);for(const o of t){const r=Xl(o);if(r)return n(r);const l=e.watch(o,a=>{if(!a)return;const i=Xl(a);i?n(i):console.warn("Invalid parent element",a),l()})}}var pl=new WeakMap;function Eg(t){const n=pl.get(t);return n?"value"in n?n.value:n:(console.warn("No values found for parent element"),[])}function Ag(t,n){const o=pl.get(n);o&&"value"in o&&(o.value=t)}function ji(t){fl&&(Array.isArray(t)||(t=[t]),t.forEach(n=>{const{parent:o,values:r,...l}=n;Sg(o,Tg(l,r))}))}function Tg(t,n){return o=>{pl.set(o,n),Lm({parent:o,getValues:Eg,setValues:Ag,config:{...t}})}}const Bg={key:0,class:"flex gap-4 p-6 border-b last:border-b-0"},Dg={class:"option-drag-handle flex-none mt-9.5 cursor-grab"},Rg={class:"flex-1"},Ig={class:"mb-3"},Mg={class:"flex items-center"},Pg={key:0,class:"mt-1 text-sm text-red-600"},Fg={class:"flex items-center gap-1"},Og={class:"mb-2"},zg={key:0,class:"option-value-drag-handle absolute -left-7 top-1/2 -translate-y-1/2 flex-none mr-2 cursor-grab"},Lg=["onClick"],Ug={class:"flex justify-between"},jg={class:"flex-1"},$g={class:"text-sm mb-2"},Hg={class:"flex flex-wrap gap-2"},qg={key:0,class:"px-2 py-1 border rounded-full bg-muted text-muted-foreground text-sm"},Gg=e.defineComponent({__name:"Option",props:{option:{type:Object,required:!0}},emits:["update:option","remove"],setup(t,{expose:n,emit:o}){const r=t,{confirm:l}=Z.useConfirmation(),a=o,i=e.computed({get(){return r.option},set(b){a("update:option",b)}}),u=e.computed({get(){return i.value.values},set(b){i.value.values=b}}),s=e.useTemplateRef("valueListRef"),d=e.ref(!1);e.watch(d,async b=>{console.log("minified",b),b||(await e.nextTick(),ji({parent:s==null?void 0:s.value,values:u,group:"valueList",dragHandle:".option-value-drag-handle",plugins:[Jr.animations()]}))},{immediate:!0});const c=()=>Math.random().toString(36).substring(2,15),f=()=>{i.value.values.push({id:c(),value:""})},m=async()=>{(i.value.name.trim()||i.value.values.filter(b=>b.value.trim()!=="").length>0)&&!await l("Are you sure you want to remove this option?")||a("remove")},p=b=>{i.value.values.splice(b,1)},g=b=>{b.name.trim()?b.nameError=void 0:b.nameError="Option name is required."},v=(b,y)=>{const N=b.target,C=i.value.values;if(b.key==="Backspace"&&N.value===""&&(C==null?void 0:C.length)>2){p(y);return}},h=(b,y)=>{b.target;const N=i.value.values,C=N==null?void 0:N[y];C.touched=!0,(N==null?void 0:N.every(_=>_.value.trim()!==""))&&f()},x=b=>{const y=i.value,N=y==null?void 0:y.values.every((C,V)=>C.value.trim()!==""||V===b);y&&y.values[b].value.trim()===""&&!N&&p(b)};return n({minified:d}),(b,y)=>{const N=e.resolveComponent("Input"),C=e.resolveComponent("Button");return d.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"flex gap-4 p-6 border-b last:border-b-0 hover:bg-accent dark:hover:bg-accent/50 cursor-pointer transition-colors duration-200",onClick:y[5]||(y[5]=V=>d.value=!1)},[e.createElementVNode("div",null,[e.createElementVNode("div",{class:"option-drag-handle flex-none mt-5 cursor-grab",onClick:y[4]||(y[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(e.unref(z.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",jg,[e.createElementVNode("p",$g,e.toDisplayString(i.value.name),1),e.createElementVNode("div",Hg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,V=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V.id},[V.value?(e.openBlock(),e.createElementBlock("span",qg,e.toDisplayString(V.value),1)):e.createCommentVNode("",!0)],64))),128))])])])):(e.openBlock(),e.createElementBlock("div",Bg,[e.createElementVNode("div",null,[e.createElementVNode("div",Dg,[e.createVNode(e.unref(z.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",Rg,[e.createElementVNode("div",Ig,[y[6]||(y[6]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option name",-1)),e.createElementVNode("div",Mg,[e.createVNode(N,{modelValue:i.value.name,"onUpdate:modelValue":y[0]||(y[0]=V=>i.value.name=V),onBlur:y[1]||(y[1]=V=>g(i.value)),"aria-invalid":i.value.nameError?"true":"false",placeholder:"Color",spellcheck:"false"},null,8,["modelValue","aria-invalid"])]),i.value.nameError?(e.openBlock(),e.createElementBlock("p",Pg,[e.createElementVNode("span",Fg,[e.createVNode(e.unref(z.CircleX),{class:"size-4"}),e.createTextVNode(" "+e.toDisplayString(i.value.nameError),1)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Og,[y[7]||(y[7]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option values",-1)),e.createElementVNode("div",{ref_key:"valueListRef",ref:s},[u.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(u.value,(V,_)=>(e.openBlock(),e.createElementBlock("div",{key:V.id,class:"relative flex items-center mb-2"},[V.touched?(e.openBlock(),e.createElementBlock("div",zg,[e.createVNode(e.unref(z.GripVertical),{class:"size-4 text-gray-400"})])):e.createCommentVNode("",!0),e.createVNode(N,{modelValue:V.value,"onUpdate:modelValue":S=>V.value=S,placeholder:"Option value",class:"pr-12",onKeydown:S=>v(S,_),onKeyup:S=>h(S,_),onBlur:S=>x(_),spellcheck:"false"},null,8,["modelValue","onUpdate:modelValue","onKeydown","onKeyup","onBlur"]),u.value.length>2&&V.touched?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:S=>p(_),class:"absolute right-2 top-1/2 -translate-y-1/2 ml-2 p-2 text-muted-foreground/50 hover:text-muted-foreground",type:"button"},[e.createVNode(e.unref(z.Trash2),{class:"size-4"})],8,Lg)):e.createCommentVNode("",!0)]))),128)):e.createCommentVNode("",!0)],512)]),e.createElementVNode("div",Ug,[e.createVNode(C,{size:"sm",variant:"outline",onClick:y[2]||(y[2]=V=>m()),class:"text-red-500 hover:text-red-600"},{default:e.withCtx(()=>y[8]||(y[8]=[e.createTextVNode("Delete",-1)])),_:1,__:[8]}),e.createVNode(C,{size:"sm",onClick:y[3]||(y[3]=V=>d.value=!0),disabled:i.value.name.trim()===""},{default:e.withCtx(()=>y[9]||(y[9]=[e.createTextVNode("Done",-1)])),_:1,__:[9]},8,["disabled"])])])]))}}}),Wg=e.defineComponent({__name:"Options",props:{modelValue:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.ref([]),i=e.useTemplateRef("optionsListRefElement"),u=e.useTemplateRef("optionRefs"),s=e.computed({get(){return r.modelValue},set(x){l("update:modelValue",x)}}),d=e.ref(!1);e.watch(s,x=>{console.log("mutableOptions2",x?JSON.parse(JSON.stringify(x)):[]),!d.value&&(!a.value||a.value.length===0&&x.length>0)&&(d.value=!0,a.value=x?JSON.parse(JSON.stringify(x)):[])},{deep:!0}),e.watch(a,x=>{s.value=x==null?void 0:x.map(b=>({...b,values:b.values.filter(y=>y.value.trim()!=="")})),!v.value&&x.length>0&&h()},{deep:!0});const c=()=>Math.random().toString(36).substring(2,15),f=()=>{const b={id:c(),name:"",values:[{id:c(),value:""}],nameError:void 0};a.value.push(b)},m=()=>{var x;(x=u.value)==null||x.forEach(b=>{b&&(b.minified=!0)})},p=x=>{const b=a.value.findIndex(y=>y.id===x.id);b!==-1&&(a.value[b]=x)},g=x=>{const b=a.value.findIndex(y=>y.id===x.id);b!==-1&&a.value.splice(b,1)},v=e.ref(!1),h=()=>{try{v.value=!0,ji({parent:i==null?void 0:i.value,values:a,group:"optionsList",dragHandle:".option-drag-handle",plugins:[Jr.animations()]})}catch(x){console.error(x)}};return e.onMounted(()=>{a.value=r.modelValue?JSON.parse(JSON.stringify(r.modelValue)):[],console.log("mutableOptions",r.modelValue?JSON.parse(JSON.stringify(r.modelValue)):[]),a.value.length>0&&h()}),n({minifyAll:m}),(x,b)=>{const y=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg",a.value.length>0?"border mb-6":""])},[e.createElementVNode("div",{ref_key:"optionsListRefElement",ref:i},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,N=>(e.openBlock(),e.createBlock(Gg,{ref_for:!0,ref_key:"optionRefs",ref:u,key:N.id,option:N,"onUpdate:option":b[0]||(b[0]=C=>p(C)),onRemove:C=>g(N)},null,8,["option","onRemove"]))),128))],512),a.value&&a.value.length<3?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(a.value.length>0?"border-t":"")},[a.value.length===0?(e.openBlock(),e.createBlock(y,{key:0,onClick:f,variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.PlusCircle),{class:"size-4"}),b[1]||(b[1]=e.createTextVNode(" Add options like size or color ",-1))]),_:1,__:[1]})):(e.openBlock(),e.createBlock(y,{key:1,onClick:f,variant:"ghost",class:"w-full justify-start pl-2 rounded-t-none"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.PlusCircle),{class:"size-4"}),b[2]||(b[2]=e.createTextVNode(" Add another option ",-1))]),_:1,__:[2]}))],2)):e.createCommentVNode("",!0)],2)])}}}),Xg={key:0},Yg={class:"flex items-center justify-between gap-2 mb-2"},Zg={key:0,class:"flex items-center gap-2"},Kg={key:0,class:"mb-4"},Jg={class:"flex flex-wrap gap-2"},Qg=["onClick"],ev={class:"-mx-6 w-[calc(100%+3rem)]"},tv={class:"text-muted-foreground text-xs"},nv={class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},ov={class:"z-[101] sticky -top-4 py-2 font-normal whitespace-nowrap bg-accent dark:bg-border"},rv={class:"flex items-center gap-2"},lv={class:"z-[101] sticky -top-4 py-2 pr-6 font-normal bg-accent dark:bg-border"},av={class:"text-sm"},iv=["onClick"],sv={class:"w-10 p-2"},uv={class:"p-2"},dv={class:"flex items-stretch gap-2"},cv=["src"],fv={key:2,class:"relative"},pv=["src"],mv=["src"],gv={class:"flex flex-col justify-center px-2"},vv={class:"text-md mb-0.5 hover:underline select-none"},hv={class:"flex items-center gap-1 text-xs text-muted-foreground hover:opacity-70 transition-opacity duration-200 cursor-pointer select-none"},xv={class:"p-2 w-[30%]"},yv={class:"relative"},Cv={key:0},Vv={key:1},wv={key:0,class:"absolute inset-0 top-1/2 -translate-y-1/2 px-2 truncate text-sm text-muted-foreground w-full text-center pointer-events-none"},bv={class:"p-2 w-[18%]"},_v={class:"w-10"},Nv={class:"w-10 p-2 translate-x-10"},kv={class:"p-2 pl-12"},Sv={class:"flex items-stretch gap-2"},Ev=["src"],Av={class:"flex flex-col justify-center px-2"},Tv={class:"p-2 w-[30%]"},Bv={class:"p-2 w-[18%] group"},Dv={class:"text-center text-sm text-muted-foreground bg-accent dark:bg-border p-3 -mx-6 -mb-6 rounded-b-lg"},Rv={key:0},Iv=e.defineComponent({__name:"VariantList",props:{options:{type:Object,required:!0},modelValue:{type:Array,required:!0},hide:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.computed({get(){return r.modelValue},set(F){l("update:modelValue",F)}}),i=e.inject("sources"),u=e.ref(""),s=e.ref(""),d=e.ref(!1),c=e.ref([]),f=e.ref({}),m=()=>{Object.keys(r.options).length>0&&(s.value=Object.keys(r.options)[0])};e.watch(()=>r.options,()=>{s.value===""&&m()},{immediate:!0,deep:!0}),e.watch(f,F=>{p()},{deep:!0}),e.watch(()=>r.hide,F=>{F||(m(),p())});function p(){var T;if(!f.value){a.value=[];return}let F=[];(T=Object.keys(f.value))==null||T.forEach(w=>{F.push({combinedOptions:w,name:h(w),disabled:!1,price:f.value[w].price,stock:f.value[w].stock,image:f.value[w].image,options:x(w)})}),a.value=F.filter(w=>{var A,L;return((A=w.options)==null?void 0:A.length)===Object.keys(r.options).length&&((L=w.options)==null?void 0:L.every(J=>Object.entries(r.options).find(([O,j])=>j.id===J.optionId)))})}function g(F){return F.reduce((T,w)=>T.flatMap(A=>w.map(L=>[...A,L])),[[]])}function v(F){return F.slice().sort((T,w)=>T.optionId.localeCompare(w.optionId)).map(({optionId:T,valueId:w})=>`${T}:${w}`).join("|")}const h=F=>F.split("|").map(w=>{const[A,L]=w.split(":");return{optionId:A,valueId:L}}).map(w=>{var J,O;const A=(J=r.options)==null?void 0:J[w.optionId],L=(O=A==null?void 0:A.values)==null?void 0:O.find(j=>j.id===w.valueId);return(L==null?void 0:L.value)||""}).join(" "),x=F=>F.split("|").map(w=>{const[A,L]=w.split(":");return{optionId:A,valueId:L}}).map(w=>{var J,O;const A=(J=r.options)==null?void 0:J[w.optionId],L=(O=A==null?void 0:A.values)==null?void 0:O.find(j=>j.id===w.valueId);return{optionId:A==null?void 0:A.id,option:A==null?void 0:A.name,valueId:L==null?void 0:L.id,value:L==null?void 0:L.value}}),b=e.computed(()=>{const F=Object.values(r.options).map(w=>w.values.map(A=>({optionId:w.id,optionName:w.name,valueId:A.id,value:A.value})));return g(F).map(w=>{const A=v(w);return f.value[A]||(f.value[A]={price:0,stock:0}),{key:A,options:w,...f.value[A]}})}),y=e.computed(()=>{let F=[...b.value];return u.value&&(F=F.filter(T=>{var w;return(w=T.options)==null?void 0:w.find(A=>A.value.toLowerCase().includes(u.value.toLowerCase()))})),F}),N=(F,T)=>{const w=y.value.filter(A=>{var L,J;return((J=(L=A.options)==null?void 0:L.find(O=>O.optionId===s.value))==null?void 0:J.valueId)===T});w&&w.forEach(A=>{f.value[v(A.options)].image=F})},C=F=>b.value.filter(w=>{var A,L;return((L=(A=w.options)==null?void 0:A.find(J=>J.optionId===s.value))==null?void 0:L.valueId)===F}).every(w=>!w.image),V=F=>{const T=b.value.filter(A=>{var L,J;return((J=(L=A.options)==null?void 0:L.find(O=>O.optionId===s.value))==null?void 0:J.valueId)===F});return T.filter((A,L)=>A.image&&T.findIndex(J=>J.image===A.image)===L).length===1},_=F=>{var w;return(w=b.value.filter(A=>{var L,J;return((J=(L=A.options)==null?void 0:L.find(O=>O.optionId===s.value))==null?void 0:J.valueId)===F}).filter(A=>A.image)[0])==null?void 0:w.image},S=F=>{var w;return(w=b.value.filter(A=>{var L,J;return((J=(L=A.options)==null?void 0:L.find(O=>O.optionId===s.value))==null?void 0:J.valueId)===F}).filter(A=>A.image)[1])==null?void 0:w.image},R=F=>{var A;const T=b.value.filter(L=>{var J;return(J=L.options)==null?void 0:J.find(O=>O.valueId===F)});if(T.length===0)return"0";const w=T.map(L=>L.price);return Math.min(...w)===Math.max(...w)?((A=w[0])==null?void 0:A.toString())||"0":`${Math.min(...w)} - ${Math.max(...w)}`},$=F=>b.value.filter(T=>{var w;return(w=T.options)==null?void 0:w.find(A=>A.valueId===F)}).reduce((T,w)=>w.stock>0?T+w.stock:T,0),U=F=>b.value.filter(T=>{var w;return(w=T.options)==null?void 0:w.find(A=>A.valueId===F)}).reduce((T,w)=>w.stock<0?T+w.stock:T,0),P=()=>{var T,w,A;let F=0;return(A=(w=(T=r.options)==null?void 0:T[s.value])==null?void 0:w.values)==null||A.forEach(L=>{F+=$(L.id)}),F},G=()=>{var T,w,A;let F=0;return(A=(w=(T=r.options)==null?void 0:T[s.value])==null?void 0:w.values)==null||A.forEach(L=>{F+=U(L.id)}),F},k=e.ref(null),B=e.ref(""),E=async(F,T)=>{var L,J,O;F.preventDefault();const w=(L=y==null?void 0:y.value)==null?void 0:L.filter(j=>{var ae,q;return((q=(ae=j.options)==null?void 0:ae.find(ie=>ie.optionId===s.value))==null?void 0:q.valueId)===T.id}).map(j=>j.price),A=w.length===0?!0:w.every(j=>j===w[0]);k.value=T.id,B.value=A?w[0].toString():"",await e.nextTick(),(J=document.getElementById(`variant-price-${T.id}`))==null||J.focus(),(O=document.getElementById(`variant-price-${T.id}`))==null||O.select()},I=F=>{X(F),k.value=null,B.value=""},X=F=>{var T;if(B.value.trim()&&Number(B.value.trim().replace(",","."))>0){const w=Number(B.value.trim().replace(",","."));(T=y==null?void 0:y.value)==null||T.filter(A=>{var L,J;return((J=(L=A.options)==null?void 0:L.find(O=>O.optionId===s.value))==null?void 0:J.valueId)===F}).forEach(A=>{f.value[v(A.options)].price=w})}},le=F=>{f.value=F.reduce((T,w)=>(T[w.combinedOptions]={price:w.price,stock:w.stock,image:w.image},T),{})};return e.onMounted(()=>{m()}),n({setVariantMap:le,refreshVariants:p}),(F,T)=>{const w=e.resolveComponent("SelectValue"),A=e.resolveComponent("SelectTrigger"),L=e.resolveComponent("SelectItem"),J=e.resolveComponent("SelectContent"),O=e.resolveComponent("Select"),j=e.resolveComponent("Button"),ae=e.resolveComponent("Input"),q=e.resolveComponent("PopoverTrigger"),ie=e.resolveComponent("RadioGroupItem"),te=e.resolveComponent("Label"),be=e.resolveComponent("RadioGroup"),qe=e.resolveComponent("PopoverContent"),Ge=e.resolveComponent("Popover"),$e=e.resolveComponent("Checkbox"),Be=e.resolveComponent("TooltipTrigger"),ye=e.resolveComponent("TooltipContent"),Re=e.resolveComponent("Tooltip"),xe=e.resolveComponent("MediaPickerDialog"),ke=e.resolveComponent("NumberFieldInput"),Pe=e.resolveComponent("NumberFieldContent"),lt=e.resolveComponent("NumberField"),pt=e.resolveComponent("NumberFieldDecrement"),Ue=e.resolveComponent("NumberFieldIncrement");return t.hide?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Xg,[e.createElementVNode("div",Yg,[Object.keys(t.options).length>1?(e.openBlock(),e.createElementBlock("div",Zg,[T[13]||(T[13]=e.createElementVNode("p",null,"Group by",-1)),e.createVNode(O,{modelValue:s.value,"onUpdate:modelValue":T[0]||(T[0]=oe=>s.value=oe)},{default:e.withCtx(()=>[e.createVNode(A,{size:"sm"},{default:e.withCtx(()=>[e.createVNode(w,{placeholder:"Option"})]),_:1}),e.createVNode(J,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,oe=>(e.openBlock(),e.createBlock(L,{key:oe.id,value:oe.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(oe.name),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createBlock(j,{key:2,variant:"outline",onClick:T[2]||(T[2]=oe=>d.value=!1),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>T[14]||(T[14]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[14]})):(e.openBlock(),e.createBlock(j,{key:1,variant:"outline",onClick:T[1]||(T[1]=oe=>d.value=!0),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Search),{class:"size-4"}),e.createVNode(e.unref(z.ListFilter),{class:"size-4"})]),_:1}))]),d.value?(e.openBlock(),e.createElementBlock("div",Kg,[e.createElementVNode("div",{class:e.normalizeClass(["relative",{"mb-4":Object.keys(t.options).length>0}])},[e.createVNode(ae,{placeholder:"Search",class:"pl-10",modelValue:u.value,"onUpdate:modelValue":T[3]||(T[3]=oe=>u.value=oe)},null,8,["modelValue"]),e.createVNode(e.unref(z.Search),{class:"size-4 absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none"})],2),e.createElementVNode("div",Jg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,oe=>(e.openBlock(),e.createBlock(Ge,{key:oe.id},{default:e.withCtx(()=>[e.createVNode(q,{asChild:""},{default:e.withCtx(()=>[e.createVNode(j,{variant:"outline",size:"sm",class:"border-dashed"},{default:e.withCtx(()=>{var Ie;return[oe.groupBy?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(oe.name)+" is "+e.toDisplayString((Ie=oe.values.find(yt=>yt.id===oe.groupBy))==null?void 0:Ie.value)+" ",1),e.createElementVNode("div",{class:"p-2",onClick:e.withModifiers(yt=>oe.groupBy="",["stop"])},[e.createVNode(e.unref(z.X),{class:"size-3"})],8,Qg)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(oe.name)+" ",1),e.createVNode(e.unref(z.ChevronDown),{class:"size-3"})],64))]}),_:2},1024)]),_:2},1024),e.createVNode(qe,null,{default:e.withCtx(()=>[e.createVNode(be,{modelValue:oe.groupBy,"onUpdate:modelValue":Ie=>oe.groupBy=Ie,class:"mb-4"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(oe.values,Ie=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center space-x-2",key:Ie.id},[e.createVNode(ie,{id:Ie.id,value:Ie.id,class:"border-ring"},null,8,["id","value"]),e.createVNode(te,{for:Ie.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Ie.value),1)]),_:2},1032,["for"])]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"]),e.createVNode(j,{variant:"ghost",onClick:Ie=>oe.groupBy="",size:"sm",class:"ml-auto",disabled:!oe.groupBy},{default:e.withCtx(()=>T[15]||(T[15]=[e.createTextVNode(" Clear ",-1)])),_:2,__:[15]},1032,["onClick","disabled"])]),_:2},1024)]),_:2},1024))),128))])])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("table",ev,[e.createElementVNode("thead",tv,[e.createElementVNode("tr",null,[e.createElementVNode("th",nv,[e.createVNode($e,{class:"border-muted-foreground translate-y-0.5"})]),e.createElementVNode("th",ov,[e.createElementVNode("div",rv,[T[16]||(T[16]=e.createElementVNode("span",null,"Variant",-1)),T[17]||(T[17]=e.createElementVNode("span",null,"·",-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("button",{key:0,class:"hover:underline cursor-pointer",onClick:T[4]||(T[4]=oe=>c.value=[])},"Collapse all")):(e.openBlock(),e.createElementBlock("button",{key:1,class:"hover:underline cursor-pointer",onClick:T[5]||(T[5]=oe=>c.value=t.options[s.value].values.map(Ie=>Ie.id))},"Expand all"))])]),T[20]||(T[20]=e.createElementVNode("th",{class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},"Price",-1)),e.createElementVNode("th",lv,[e.createVNode(Re,null,{default:e.withCtx(()=>[e.createVNode(Be,{class:"underline decoration-dashed underline-offset-4"},{default:e.withCtx(()=>T[18]||(T[18]=[e.createTextVNode("Available",-1)])),_:1,__:[18]}),e.createVNode(ye,null,{default:e.withCtx(()=>T[19]||(T[19]=[e.createElementVNode("p",null,"Inventory at your store that can be sold.",-1)])),_:1,__:[19]})]),_:1})])])]),e.createElementVNode("tbody",av,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options[s.value].values,oe=>{var Ie,yt;return e.openBlock(),e.createElementBlock(e.Fragment,{key:oe.id},[e.createElementVNode("tr",{class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input",onClick:pe=>c.value.includes(oe.id)?c.value.splice(c.value.indexOf(oe.id),1):c.value.push(oe.id)},[e.createElementVNode("td",sv,[e.createVNode($e,{class:"border-muted-foreground translate-y-0.5",onClick:T[6]||(T[6]=e.withModifiers(()=>{},["stop"]))})]),e.createElementVNode("td",uv,[e.createElementVNode("div",dv,[e.createElementVNode("div",null,[e.createVNode(xe,{sources:e.unref(i),"max-files":1,"initial-value":C(oe.id)?[]:V(oe.id)?[_(oe.id)]:[_(oe.id),S(oe.id)],onSubmit:pe=>N(pe,oe.id)},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:T[7]||(T[7]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[C(oe.id)?(e.openBlock(),e.createBlock(j,{key:0,variant:"outline",class:"size-15 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.ImagePlus))]),_:1})):V(oe.id)?(e.openBlock(),e.createElementBlock("img",{key:1,src:_(oe.id),class:"size-15 rounded-md object-cover",draggable:"false"},null,8,cv)):(e.openBlock(),e.createElementBlock("div",fv,[e.createElementVNode("img",{src:S(oe.id),class:"absolute rotate-[12deg] size-15 rounded-md object-cover",draggable:"false"},null,8,pv),e.createElementVNode("img",{src:_(oe.id),class:"relative size-15 rounded-md shadow object-cover",draggable:"false"},null,8,mv)]))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",gv,[e.createElementVNode("p",vv,e.toDisplayString(oe.value),1),e.createElementVNode("button",hv,[e.createTextVNode(e.toDisplayString((Ie=y.value)==null?void 0:Ie.filter(pe=>{var Se,je;return((je=(Se=pe.options)==null?void 0:Se.find(D=>D.optionId===s.value))==null?void 0:je.valueId)===oe.id}).length)+" variants ",1),e.createVNode(e.unref(z.ChevronDown),{class:e.normalizeClass(["size-3 transition-transform duration-200",c.value.includes(oe.id)?"rotate-180":""])},null,8,["class"])])])])]),e.createElementVNode("td",xv,[e.createElementVNode("div",yv,[e.createVNode(Re,null,{default:e.withCtx(()=>[e.createVNode(Be,{class:"w-full",asChild:""},{default:e.withCtx(()=>[e.createVNode(ae,{id:`variant-price-${oe.id}`,modelValue:B.value,"onUpdate:modelValue":T[8]||(T[8]=pe=>B.value=pe),class:e.normalizeClass(["dark:bg-transparent dark:border-ring/50 text-center",k.value===oe.id?"":"text-transparent"]),onClick:T[9]||(T[9]=e.withModifiers(()=>{},["stop"])),onFocus:pe=>E(pe,oe),onBlur:pe=>I(oe.id),onKeydown:e.withKeys(pe=>X(oe.id),["enter"])},null,8,["id","modelValue","class","onFocus","onBlur","onKeydown"])]),_:2},1024),e.createVNode(ye,null,{default:e.withCtx(()=>{var pe,Se;return[((pe=y.value)==null?void 0:pe.filter(je=>{var D,M;return((M=(D=je.options)==null?void 0:D.find(H=>H.optionId===s.value))==null?void 0:M.valueId)===oe.id}).length)===1?(e.openBlock(),e.createElementBlock("p",Cv,"Applies to 1 variant")):(e.openBlock(),e.createElementBlock("p",Vv,"Applies to all "+e.toDisplayString((Se=y.value)==null?void 0:Se.filter(je=>{var D,M;return((M=(D=je.options)==null?void 0:D.find(H=>H.optionId===s.value))==null?void 0:M.valueId)===oe.id}).length)+" variants",1))]}),_:2},1024)]),_:2},1024),k.value!==oe.id?(e.openBlock(),e.createElementBlock("span",wv,e.toDisplayString(R(oe.id)),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("td",bv,[e.createVNode(Re,null,{default:e.withCtx(()=>[e.createVNode(Be,{class:"w-full focus-visible:outline-none",onClick:T[10]||(T[10]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createVNode(lt,null,{default:e.withCtx(()=>[e.createVNode(Pe,null,{default:e.withCtx(()=>[e.createVNode(ke,{value:$(oe.id),class:"dark:border-ring/50",disabled:""},null,8,["value"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e.createVNode(ye,null,{default:e.withCtx(()=>T[21]||(T[21]=[e.createElementVNode("p",null,"Update for individual variants only",-1)])),_:1,__:[21]})]),_:2},1024)])],8,iv),c.value.includes(oe.id)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList((yt=y.value)==null?void 0:yt.filter(pe=>{var Se,je;return((je=(Se=pe.options)==null?void 0:Se.find(D=>D.optionId===s.value))==null?void 0:je.valueId)===oe.id}),pe=>(e.openBlock(),e.createElementBlock("tr",{key:pe.id,class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input"},[e.createElementVNode("td",_v,[e.createElementVNode("div",Nv,[e.createVNode($e,{class:"border-muted-foreground translate-y-0.5",onClick:T[11]||(T[11]=e.withModifiers(()=>{},["stop"]))})])]),e.createElementVNode("td",kv,[e.createElementVNode("div",Sv,[e.createElementVNode("div",null,[e.createVNode(xe,{sources:e.unref(i),"max-files":1,"initial-value":f.value[v(pe.options)].image?[f.value[v(pe.options)].image]:[],onSubmit:Se=>f.value[v(pe.options)].image=Se},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:T[12]||(T[12]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[f.value[v(pe.options)].image?(e.openBlock(),e.createElementBlock("img",{key:0,src:f.value[v(pe.options)].image,class:"size-10 object-cover rounded-md",draggable:"false"},null,8,Ev)):(e.openBlock(),e.createBlock(j,{key:1,variant:"outline",class:"size-10 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.ImagePlus))]),_:1}))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",Av,[e.createElementVNode("p",null,e.toDisplayString(pe.options.filter(Se=>Se.optionId!==s.value).map(Se=>Se.value).join(" / ")),1)])])]),e.createElementVNode("td",Tv,[e.createVNode(lt,{"format-options":{style:"currency",currency:"EUR",currencyDisplay:"symbol",currencySign:"standard"},modelValue:f.value[v(pe.options)].price,"onUpdate:modelValue":Se=>f.value[v(pe.options)].price=Se,min:0},{default:e.withCtx(()=>[e.createVNode(Pe,null,{default:e.withCtx(()=>[e.createVNode(ke,{class:"dark:border-ring/50"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("td",Bv,[e.createVNode(lt,{modelValue:f.value[v(pe.options)].stock,"onUpdate:modelValue":Se=>f.value[v(pe.options)].stock=Se},{default:e.withCtx(()=>[e.createVNode(Pe,null,{default:e.withCtx(()=>[e.createVNode(pt,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"}),e.createVNode(ke,{class:"dark:border-ring/50"}),e.createVNode(Ue,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])])]))),128)):e.createCommentVNode("",!0)],64)}),128))])]),e.createElementVNode("div",Dv,[e.createTextVNode(" Total inventory at Webshop: "+e.toDisplayString(P())+" ",1),G()<0?(e.openBlock(),e.createElementBlock("span",Rv,"("+e.toDisplayString(G())+")",1)):e.createCommentVNode("",!0),T[22]||(T[22]=e.createTextVNode(" available ",-1))])],64)):e.createCommentVNode("",!0)]))}}}),Mv=e.defineComponent({__name:"Variants",setup(t){const{params:n}=Z.useModuleRoute(),{value:o}=Ne("options"),{value:r}=Ne("variants"),l=e.ref([]),a=e.ref([]),i=e.useTemplateRef("optionsEl"),u=e.useTemplateRef("variantsEl");e.watch(l,async f=>{var m;o.value=f?JSON.parse(JSON.stringify(f)):[],await e.nextTick(),(m=u.value)==null||m.refreshVariants()},{deep:!0}),e.watch(a,f=>{r.value=f?JSON.parse(JSON.stringify(f)):[]},{deep:!0});const s=e.ref(!1),d=e.ref(!1);e.watch(o,async f=>{var m;n.value.productId=="new"||!f||Array.isArray(f)&&f.length===0||s.value||(s.value=!0,l.value=JSON.parse(JSON.stringify(f)),await e.nextTick(),f.length>1&&((m=i.value)==null||m.minifyAll()))},{deep:!0,immediate:!0}),e.watch(r,async f=>{var m;n.value.productId=="new"||!f||Array.isArray(f)&&f.length===0||d.value||(d.value=!0,a.value=JSON.parse(JSON.stringify(f)),await e.nextTick(),(m=u.value)==null||m.setVariantMap(f))},{deep:!0,immediate:!0});const c=e.computed(()=>{let f=l.value||[],m={};return!f||!Array.isArray(f)||f.forEach(p=>{var g,v,h,x;!p.name.trim()||((v=(g=p.values)==null?void 0:g.filter(b=>b.value.trim()!==""))==null?void 0:v.length)===0||(m[p.id]={id:p.id,name:p.name,values:((x=(h=p.values)==null?void 0:h.map(b=>({id:b.id,value:b.value})))==null?void 0:x.filter(b=>b.value.trim()!==""))||[]})}),m});return(f,m)=>{const p=e.resolveComponent("CardContent"),g=e.resolveComponent("Card");return e.openBlock(),e.createBlock(g,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[m[2]||(m[2]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Variants",-1)),e.createVNode(Wg,{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=v=>l.value=v),ref_key:"optionsEl",ref:i},null,8,["modelValue"]),e.createVNode(Iv,{ref_key:"variantsEl",ref:u,options:c.value,modelValue:a.value,"onUpdate:modelValue":m[1]||(m[1]=v=>a.value=v),hide:Object.keys(c.value).length===0},null,8,["options","modelValue","hide"])]),_:1,__:[2]})]),_:1})}}}),$i="data:image/png;base64,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rpv4C4D+WRDjxR1WckztrPwXmG7UOEMSNbPzL1eVUwFs2Y2PYPGKiIiIiIiIsk6fFLAsf3wuIGM9HlsFtOqERPDkp68euJmpRp9WOyf4qOXq8YC81Y2/xuIVERERERERZaVeL2CFr28NA7jS22GVVqh1ek1lwZxIRFymGX2R6DUFr4o4x6mgrgt/nMUrIiIiIiIiylq9WsAqi2we6Fq4Cxnw9sO0UaxTC2U1c/IeZnrRl4nN7r9x65DgJEB/v4s/xuIVERERERERZbVeLSRZPv/NAEZ4OJ6vubY9tvbqYCNTi7qqcYYkaioLLobgagD/u8k/i1dERERERESU9XqtgBW+vjUMwbe8GkiBPusm3Al1V+euZVrR7qiZnT8PggsAJHb8JxaviIiIiIiIiNBLBawpkY39XQt/ACCejKLicSeRX14X6b+BKUU9UTM7/x6FnAZgC4tXRERERERERJ16pYC13R+4EcA+3gyhPDQkGTy9LiLbmU6UCrWVwb/nJNr3ZfGKiIiIiIiIqJMv3V8QqmopV8h3PRq/BR8NzTu3ZoYkmEqUSosjQ7YyCkRERERERESd0roCqyyi/RTW7+DFRwcV9ww5KHhOI4tXRERERERERERpldYClvjbrgT0AO+FTR92k8FvL5wuDlOIiIiIiIiIiCi90vYI4aS5bXsn4c70YMyW5RTkn734UkkyfYiIiIiIiIiI0i9tK7CSojcDCHorXLrSFwietvhSaWfqEBERERERERH1jrQUsCqub6kA9AxPRUrxnGUnpiy9UuJMGyIiIiIiIiKi3pPyAlZZRH2w5Vcei9MHrt/6enTW4I+YMkREREREREREvSvlBSzbH/8BFEd4J0TSallyct3MvPeZLkREREREREREvS+lBayySFO+CmZ7KD6uKs6NXh18jqlCRERERERERNQ3UlrAsvy5P4GiyCvBEeCq2jnBR5kmRERERERERER9J2UFrLLI1qGAXO6h2CyIVebfxBQhIiIiIiIiIupbKStgWX5rNoD+HonLGzmJ9ouZHkREREREREREfS8lBayJ8+MjAHzPIzGJq6PfWBwZspXpQURERERERETU91JSwHISbgRAriciori49qcFa5gaRERERERERESZoccFrEnXb9sPIhd6IRiquKtmTv59TAsiIiIiIiIioszR4wKWY7k/AeDzQCzeT9jJy5kSRERERERERESZpUcFrFD11iEKvcADcXAFev7TVw/czJQgIiIiIiIiIsosPVuBpfJjAEHjo6C4OVZZUMt0ICIiIiIiIiLKPLtdwJr0cw0q5BIPxOB1Nxm8hqlARERERERERJSZdruAlWyPXwxgiOHnr3D1krqIbGcqEBERERERERFlpt0qYBXfoX4IvLDh+V011xTUMA2IiIiIiIiIiDLXbhWwBjS3ngpgH8PPfWNC9CqmABERERERERFRZtu9RwhFZph+4iL4f8tnFzQzBYiIiIiIiIiIMlu3C1gV1285AECF0WeteG5CR/AeNj8RERERERERUebr/gosy/d9AGLySYvl/jgSEZfNT0RERERERESU+bpVwJpyq+YAON/kExbI32Kz+y9n0xMRERERERERmaFbBaz21vh0AIUGn2+H5SavZrMTEREREREREZmje48QquGbt4vcueyaAW+y2YmIiIiIiIiIzNHlAlbn5u16vMHnuh2uzGOTExERERERERGZpcsFLLX858DgzdtFcGfNnLz/sMmJiIiIiIiIiMzS5QKWiJ5p8HluV9e6kc1NRERERERERGSeLhWwyqpaj4ZilKknydVXRERERERERETmsrr4h84y+ByTYtk3samJiIiIiIiIiMz05QUsVQFg7OODKvhbdFbuv9nURERERERERERm+tICVvkNLccDGGnuCVq3sJmJiIiIiIiIiMz1pQUsUes0U09OgNWx2Xkr2cxERERERERERObydeHPnGju6Sn3viIiStcVtqzMt9nXMiIJ7COODFaRwSIyWIEhIu5gV8UCEBRBoPMvaB5E2jr/FR0A4paoq8BGUWuTqm4S1U1q6ybbsv41eMDID2ThQoeRpqzoT08gp92Xs48tzp4Ca7Br6WCBDoFaQwQ6AABcYIAAFqACWLmAdvYnoM0C2qHoUMhGFd1kQTbBcja5rtXsR+LfEsZ6Rpm8LFTVOsxRaz8LWghLh0JRpIIiSzUfEJ+KFAAAXM2FJdsAQFRbAE26KlssYL0r2ACRDZbq+3Yg+PbSKyXOyBJ517tlZf3ypXVfV+x9IW6RAJ3zWGAIgCEQ2HBhi6D/Z8ZsyBaIqrpICHSjABsV2CiWtUlcrHMsXVu02X1PGhsTjHJq7bKANen6bfsl4Rxq6LltCBTkP8wmJiLqwU01IE3hkv0sF6PUwiioHgpY+yt0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",Pv={class:"bg-white dark:bg-gray-50 border-4 dark:border-gray-600 p-4 rounded-lg mb-4"},Fv={class:"flex items-center gap-2 mb-2"},Ov=["src"],zv={class:"text-[#1a0dab] text-lg"},Lv={class:"text-[#006621] text-[13px]"},Uv={class:"text-[#545454] text-[13px]"},jv={class:"flex flex-col gap-4 mb-4"},$v={class:"flex flex-col"},Hv={key:0,class:"text-red-500 text-sm mt-1"},qv={class:"flex flex-col gap-4 mb-4"},Gv={class:"flex flex-col"},Wv={key:0,class:"text-red-500 text-sm mt-1"},Xv={class:"flex flex-col gap-4"},Yv={class:"flex flex-col"},Zv={key:0,class:"text-red-500 text-sm mt-1"},Kv={key:1,class:"text-[#545454] text-[13px]"},Jv={key:2,class:"text-orange-500 text-[13px]"},Qv=e.defineComponent({__name:"SEO",setup(t){const{errors:n}=Nt(),{value:o}=Ne("title"),{value:r}=Ne("slug"),{value:l}=Ne("seo");function a(i){return i?i.normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,"-"):""}return e.watch(o,(i,u)=>{(!r.value||a(u)===r.value)&&(r.value=a(i)),(!l.value.title||u===l.value.title)&&(l.value.title=i)}),(i,u)=>{const s=e.resolveComponent("Label"),d=e.resolveComponent("Input"),c=e.resolveComponent("Textarea"),f=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>{var p,g,v,h;return[u[7]||(u[7]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Search engine listing",-1)),e.createElementVNode("div",Pv,[e.createElementVNode("div",Fv,[e.createElementVNode("img",{src:e.unref($i),alt:"Google",class:"w-16 pointer-events-none",draggable:"false"},null,8,Ov),u[3]||(u[3]=e.createElementVNode("span",{class:"text-[#4186f5] font-medium text-xs"},"Preview",-1))]),e.createElementVNode("p",zv,e.toDisplayString(e.unref(l).title),1),e.createElementVNode("p",Lv,e.toDisplayString(e.unref(r)),1),e.createElementVNode("p",Uv,e.toDisplayString((p=e.unref(l).description)==null?void 0:p.slice(0,155))+e.toDisplayString(((g=e.unref(l).description)==null?void 0:g.length)>155?" ...":""),1)]),e.createElementVNode("div",jv,[e.createElementVNode("div",$v,[e.createVNode(s,{for:"slug",class:"text-sm mb-2"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Slug",-1)])),_:1,__:[4]}),e.createVNode(d,{id:"slug",placeholder:"t-shirt-with-red-heart",modelValue:e.unref(r),"onUpdate:modelValue":u[0]||(u[0]=x=>e.isRef(r)?r.value=x:null)},null,8,["modelValue"]),e.unref(n).slug?(e.openBlock(),e.createElementBlock("p",Hv,e.toDisplayString(e.unref(n).slug),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",qv,[e.createElementVNode("div",Gv,[e.createVNode(s,{for:"meta-title",class:"text-sm mb-2"},{default:e.withCtx(()=>u[5]||(u[5]=[e.createTextVNode("Title",-1)])),_:1,__:[5]}),e.createVNode(d,{id:"meta-title",placeholder:"T-shirt with red heart",modelValue:e.unref(l).title,"onUpdate:modelValue":u[1]||(u[1]=x=>e.unref(l).title=x)},null,8,["modelValue"]),(v=e.unref(n).seo)!=null&&v.title?(e.openBlock(),e.createElementBlock("p",Wv,e.toDisplayString(e.unref(n).seo.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Xv,[e.createElementVNode("div",Yv,[e.createVNode(s,{for:"meta-description",class:"text-sm mb-2"},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Description",-1)])),_:1,__:[6]}),e.createVNode(c,{id:"meta-description",placeholder:"Lovely T-shirt featuring a red heart",modelValue:e.unref(l).description,"onUpdate:modelValue":u[2]||(u[2]=x=>e.unref(l).description=x),class:"mb-1 resize-none"},null,8,["modelValue"]),(h=e.unref(n).seo)!=null&&h.description?(e.openBlock(),e.createElementBlock("p",Zv,e.toDisplayString(e.unref(n).seo.description),1)):e.unref(l).description.length<155?(e.openBlock(),e.createElementBlock("p",Kv,e.toDisplayString(e.unref(l).description.length)+" characters",1)):(e.openBlock(),e.createElementBlock("p",Jv,"Please keep it under 155 characters"))])])]}),_:1,__:[7]})]),_:1})}}}),eh={class:"flex items-center gap-2"},th={key:0,class:"size-3 rounded-full bg-green-500"},nh={key:1,class:"size-3 rounded-full bg-blue-500"},oh={key:2,class:"size-3 rounded-full bg-gray-300"},rh=e.defineComponent({__name:"Status",setup(t){const{errors:n}=Nt(),{value:o}=Ne("status");return(r,l)=>{const a=e.resolveComponent("SelectValue"),i=e.resolveComponent("SelectTrigger"),u=e.resolveComponent("SelectItem"),s=e.resolveComponent("SelectGroup"),d=e.resolveComponent("SelectContent"),c=e.resolveComponent("Select"),f=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[l[4]||(l[4]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Status",-1)),e.createVNode(c,{modelValue:e.unref(o),"onUpdate:modelValue":l[0]||(l[0]=p=>e.isRef(o)?o.value=p:null),class:"w-full"},{default:e.withCtx(()=>[e.createVNode(i,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",eh,[e.unref(o)==="published"?(e.openBlock(),e.createElementBlock("span",th)):e.unref(o)==="draft"?(e.openBlock(),e.createElementBlock("span",nh)):e.unref(o)==="archived"?(e.openBlock(),e.createElementBlock("span",oh)):e.createCommentVNode("",!0),e.createVNode(a,{placeholder:"Status"})])]),_:1}),e.createVNode(d,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(u,{value:"published"},{default:e.withCtx(()=>l[1]||(l[1]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-green-500"},null,-1),e.createTextVNode(" Published ",-1)])),_:1,__:[1]}),e.createVNode(u,{value:"draft"},{default:e.withCtx(()=>l[2]||(l[2]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-blue-500"},null,-1),e.createTextVNode(" Draft ",-1)])),_:1,__:[2]}),e.createVNode(u,{value:"archived"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-gray-300"},null,-1),e.createTextVNode(" Archived ",-1)])),_:1,__:[3]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1,__:[4]})]),_:1})}}}),lh={class:"flex items-center gap-2"},ah=e.defineComponent({__name:"Collections",props:{config:{type:Object,required:!0}},setup(t){const n=t,o=Z.useFirebaseIntegration(n.config.project),r=async()=>{if(!n.config.collectionsCollection)return[];const s=n.config.collectionsCollection.split(":");if(s.length!==2)return[];const d=await o.get(s[0]);return(d==null?void 0:d[s[1]])||[]},l=e.ref([]);(async()=>{const s=await r();l.value=s})();const{errors:i}=Nt(),{value:u}=Ne("collections");return(s,d)=>{const c=e.resolveComponent("SelectValue"),f=e.resolveComponent("SelectTrigger"),m=e.resolveComponent("SelectLabel"),p=e.resolveComponent("SelectItem"),g=e.resolveComponent("SelectGroup"),v=e.resolveComponent("SelectContent"),h=e.resolveComponent("Select"),x=e.resolveComponent("CardContent"),b=e.resolveComponent("Card");return e.openBlock(),e.createBlock(b,null,{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[d[5]||(d[5]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Collections",-1)),e.createVNode(h,{modelValue:e.unref(u),"onUpdate:modelValue":d[0]||(d[0]=y=>e.isRef(u)?u.value=y:null),class:"w-full",multiple:!0},{default:e.withCtx(()=>[e.createVNode(f,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",lh,[e.createVNode(c,{placeholder:"Collections"})])]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>d[1]||(d[1]=[e.createTextVNode("Active collections",-1)])),_:1,__:[1]}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value.filter(y=>y.status==="published"),y=>(e.openBlock(),e.createBlock(p,{key:y.id,value:y.id},{default:e.withCtx(()=>[d[2]||(d[2]=e.createElementVNode("div",{class:"size-2 rounded-full bg-green-500"},null,-1)),e.createTextVNode(" "+e.toDisplayString(y.title),1)]),_:2,__:[2]},1032,["value"]))),128))]),_:1}),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>d[3]||(d[3]=[e.createTextVNode("Drafts",-1)])),_:1,__:[3]}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value.filter(y=>y.status==="draft"),y=>(e.openBlock(),e.createBlock(p,{key:y.id,value:y.id},{default:e.withCtx(()=>[d[4]||(d[4]=e.createElementVNode("div",{class:"size-2 rounded-full bg-blue-500"},null,-1)),e.createTextVNode(" "+e.toDisplayString(y.title),1)]),_:2,__:[4]},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1,__:[5]})]),_:1})}}});var we;(function(t){t.assertEqual=l=>{};function n(l){}t.assertIs=n;function o(l){throw new Error}t.assertNever=o,t.arrayToEnum=l=>{const a={};for(const i of l)a[i]=i;return a},t.getValidEnumValues=l=>{const a=t.objectKeys(l).filter(u=>typeof l[l[u]]!="number"),i={};for(const u of a)i[u]=l[u];return t.objectValues(i)},t.objectValues=l=>t.objectKeys(l).map(function(a){return l[a]}),t.objectKeys=typeof Object.keys=="function"?l=>Object.keys(l):l=>{const a=[];for(const i in l)Object.prototype.hasOwnProperty.call(l,i)&&a.push(i);return a},t.find=(l,a)=>{for(const i of l)if(a(i))return i},t.isInteger=typeof Number.isInteger=="function"?l=>Number.isInteger(l):l=>typeof l=="number"&&Number.isFinite(l)&&Math.floor(l)===l;function r(l,a=" | "){return l.map(i=>typeof i=="string"?`'${i}'`:i).join(a)}t.joinValues=r,t.jsonStringifyReplacer=(l,a)=>typeof a=="bigint"?a.toString():a})(we||(we={}));var Yl;(function(t){t.mergeShapes=(n,o)=>({...n,...o})})(Yl||(Yl={}));const ne=we.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),zt=t=>{switch(typeof t){case"undefined":return ne.undefined;case"string":return ne.string;case"number":return Number.isNaN(t)?ne.nan:ne.number;case"boolean":return ne.boolean;case"function":return ne.function;case"bigint":return ne.bigint;case"symbol":return ne.symbol;case"object":return Array.isArray(t)?ne.array:t===null?ne.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ne.promise:typeof Map<"u"&&t instanceof Map?ne.map:typeof Set<"u"&&t instanceof Set?ne.set:typeof Date<"u"&&t instanceof Date?ne.date:ne.object;default:return ne.unknown}},K=we.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Mt extends Error{get errors(){return this.issues}constructor(n){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const o=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,o):this.__proto__=o,this.name="ZodError",this.issues=n}format(n){const o=n||function(a){return a.message},r={_errors:[]},l=a=>{for(const i of a.issues)if(i.code==="invalid_union")i.unionErrors.map(l);else if(i.code==="invalid_return_type")l(i.returnTypeError);else if(i.code==="invalid_arguments")l(i.argumentsError);else if(i.path.length===0)r._errors.push(o(i));else{let u=r,s=0;for(;s<i.path.length;){const d=i.path[s];s===i.path.length-1?(u[d]=u[d]||{_errors:[]},u[d]._errors.push(o(i))):u[d]=u[d]||{_errors:[]},u=u[d],s++}}};return l(this),r}static assert(n){if(!(n instanceof Mt))throw new Error(`Not a ZodError: ${n}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,we.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(n=o=>o.message){const o={},r=[];for(const l of this.issues)if(l.path.length>0){const a=l.path[0];o[a]=o[a]||[],o[a].push(n(l))}else r.push(n(l));return{formErrors:r,fieldErrors:o}}get formErrors(){return this.flatten()}}Mt.create=t=>new Mt(t);const Ur=(t,n)=>{let o;switch(t.code){case K.invalid_type:t.received===ne.undefined?o="Required":o=`Expected ${t.expected}, received ${t.received}`;break;case K.invalid_literal:o=`Invalid literal value, expected ${JSON.stringify(t.expected,we.jsonStringifyReplacer)}`;break;case K.unrecognized_keys:o=`Unrecognized key(s) in object: ${we.joinValues(t.keys,", ")}`;break;case K.invalid_union:o="Invalid input";break;case K.invalid_union_discriminator:o=`Invalid discriminator value. Expected ${we.joinValues(t.options)}`;break;case K.invalid_enum_value:o=`Invalid enum value. Expected ${we.joinValues(t.options)}, received '${t.received}'`;break;case K.invalid_arguments:o="Invalid function arguments";break;case K.invalid_return_type:o="Invalid function return type";break;case K.invalid_date:o="Invalid date";break;case K.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(o=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(o=`${o} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?o=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?o=`Invalid input: must end with "${t.validation.endsWith}"`:we.assertNever(t.validation):t.validation!=="regex"?o=`Invalid ${t.validation}`:o="Invalid";break;case K.too_small:t.type==="array"?o=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?o=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?o=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?o=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?o=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:o="Invalid input";break;case K.too_big:t.type==="array"?o=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?o=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?o=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?o=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?o=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:o="Invalid input";break;case K.custom:o="Invalid input";break;case K.invalid_intersection_types:o="Intersection results could not be merged";break;case K.not_multiple_of:o=`Number must be a multiple of ${t.multipleOf}`;break;case K.not_finite:o="Number must be finite";break;default:o=n.defaultError,we.assertNever(t)}return{message:o}};let ih=Ur;function sh(){return ih}const uh=t=>{const{data:n,path:o,errorMaps:r,issueData:l}=t,a=[...o,...l.path||[]],i={...l,path:a};if(l.message!==void 0)return{...l,path:a,message:l.message};let u="";const s=r.filter(d=>!!d).slice().reverse();for(const d of s)u=d(i,{data:n,defaultError:u}).message;return{...l,path:a,message:u}};function ee(t,n){const o=sh(),r=uh({issueData:n,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,o,o===Ur?void 0:Ur].filter(l=>!!l)});t.common.issues.push(r)}class ut{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(n,o){const r=[];for(const l of o){if(l.status==="aborted")return he;l.status==="dirty"&&n.dirty(),r.push(l.value)}return{status:n.value,value:r}}static async mergeObjectAsync(n,o){const r=[];for(const l of o){const a=await l.key,i=await l.value;r.push({key:a,value:i})}return ut.mergeObjectSync(n,r)}static mergeObjectSync(n,o){const r={};for(const l of o){const{key:a,value:i}=l;if(a.status==="aborted"||i.status==="aborted")return he;a.status==="dirty"&&n.dirty(),i.status==="dirty"&&n.dirty(),a.value!=="__proto__"&&(typeof i.value<"u"||l.alwaysSet)&&(r[a.value]=i.value)}return{status:n.value,value:r}}}const he=Object.freeze({status:"aborted"}),qn=t=>({status:"dirty",value:t}),ft=t=>({status:"valid",value:t}),Zl=t=>t.status==="aborted",Kl=t=>t.status==="dirty",Sn=t=>t.status==="valid",Bo=t=>typeof Promise<"u"&&t instanceof Promise;var re;(function(t){t.errToObj=n=>typeof n=="string"?{message:n}:n||{},t.toString=n=>typeof n=="string"?n:n==null?void 0:n.message})(re||(re={}));class Wt{constructor(n,o,r,l){this._cachedPath=[],this.parent=n,this.data=o,this._path=r,this._key=l}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Jl=(t,n)=>{if(Sn(n))return{success:!0,data:n.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const o=new Mt(t.common.issues);return this._error=o,this._error}}};function Ce(t){if(!t)return{};const{errorMap:n,invalid_type_error:o,required_error:r,description:l}=t;if(n&&(o||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return n?{errorMap:n,description:l}:{errorMap:(i,u)=>{const{message:s}=t;return i.code==="invalid_enum_value"?{message:s??u.defaultError}:typeof u.data>"u"?{message:s??r??u.defaultError}:i.code!=="invalid_type"?{message:u.defaultError}:{message:s??o??u.defaultError}},description:l}}class Ve{get description(){return this._def.description}_getType(n){return zt(n.data)}_getOrReturnCtx(n,o){return o||{common:n.parent.common,data:n.data,parsedType:zt(n.data),schemaErrorMap:this._def.errorMap,path:n.path,parent:n.parent}}_processInputParams(n){return{status:new ut,ctx:{common:n.parent.common,data:n.data,parsedType:zt(n.data),schemaErrorMap:this._def.errorMap,path:n.path,parent:n.parent}}}_parseSync(n){const o=this._parse(n);if(Bo(o))throw new Error("Synchronous parse encountered promise.");return o}_parseAsync(n){const o=this._parse(n);return Promise.resolve(o)}parse(n,o){const r=this.safeParse(n,o);if(r.success)return r.data;throw r.error}safeParse(n,o){const r={common:{issues:[],async:(o==null?void 0:o.async)??!1,contextualErrorMap:o==null?void 0:o.errorMap},path:(o==null?void 0:o.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:zt(n)},l=this._parseSync({data:n,path:r.path,parent:r});return Jl(r,l)}"~validate"(n){var r,l;const o={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:zt(n)};if(!this["~standard"].async)try{const a=this._parseSync({data:n,path:[],parent:o});return Sn(a)?{value:a.value}:{issues:o.common.issues}}catch(a){(l=(r=a==null?void 0:a.message)==null?void 0:r.toLowerCase())!=null&&l.includes("encountered")&&(this["~standard"].async=!0),o.common={issues:[],async:!0}}return this._parseAsync({data:n,path:[],parent:o}).then(a=>Sn(a)?{value:a.value}:{issues:o.common.issues})}async parseAsync(n,o){const r=await this.safeParseAsync(n,o);if(r.success)return r.data;throw r.error}async safeParseAsync(n,o){const r={common:{issues:[],contextualErrorMap:o==null?void 0:o.errorMap,async:!0},path:(o==null?void 0:o.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:n,parsedType:zt(n)},l=this._parse({data:n,path:r.path,parent:r}),a=await(Bo(l)?l:Promise.resolve(l));return Jl(r,a)}refine(n,o){const r=l=>typeof o=="string"||typeof o>"u"?{message:o}:typeof o=="function"?o(l):o;return this._refinement((l,a)=>{const i=n(l),u=()=>a.addIssue({code:K.custom,...r(l)});return typeof Promise<"u"&&i instanceof Promise?i.then(s=>s?!0:(u(),!1)):i?!0:(u(),!1)})}refinement(n,o){return this._refinement((r,l)=>n(r)?!0:(l.addIssue(typeof o=="function"?o(r,l):o),!1))}_refinement(n){return new Tn({schema:this,typeName:ge.ZodEffects,effect:{type:"refinement",refinement:n}})}superRefine(n){return this._refinement(n)}constructor(n){this.spa=this.safeParseAsync,this._def=n,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:o=>this["~validate"](o)}}optional(){return $t.create(this,this._def)}nullable(){return Bn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return bt.create(this)}promise(){return Mo.create(this,this._def)}or(n){return Ro.create([this,n],this._def)}and(n){return Io.create(this,n,this._def)}transform(n){return new Tn({...Ce(this._def),schema:this,typeName:ge.ZodEffects,effect:{type:"transform",transform:n}})}default(n){const o=typeof n=="function"?n:()=>n;return new Po({...Ce(this._def),innerType:this,defaultValue:o,typeName:ge.ZodDefault})}brand(){return new Dh({typeName:ge.ZodBranded,type:this,...Ce(this._def)})}catch(n){const o=typeof n=="function"?n:()=>n;return new $r({...Ce(this._def),innerType:this,catchValue:o,typeName:ge.ZodCatch})}describe(n){const o=this.constructor;return new o({...this._def,description:n})}pipe(n){return ml.create(this,n)}readonly(){return Hr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const dh=/^c[^\s-]{8,}$/i,ch=/^[0-9a-z]+$/,fh=/^[0-9A-HJKMNP-TV-Z]{26}$/i,ph=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,mh=/^[a-z0-9_-]{21}$/i,gh=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,vh=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,hh=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,xh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Vr;const yh=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ch=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Vh=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,wh=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,bh=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,_h=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Hi="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Nh=new RegExp(`^${Hi}$`);function qi(t){let n="[0-5]\\d";t.precision?n=`${n}\\.\\d{${t.precision}}`:t.precision==null&&(n=`${n}(\\.\\d+)?`);const o=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${n})${o}`}function kh(t){return new RegExp(`^${qi(t)}$`)}function Sh(t){let n=`${Hi}T${qi(t)}`;const o=[];return o.push(t.local?"Z?":"Z"),t.offset&&o.push("([+-]\\d{2}:?\\d{2})"),n=`${n}(${o.join("|")})`,new RegExp(`^${n}$`)}function Eh(t,n){return!!((n==="v4"||!n)&&yh.test(t)||(n==="v6"||!n)&&Vh.test(t))}function Ah(t,n){if(!gh.test(t))return!1;try{const[o]=t.split(".");if(!o)return!1;const r=o.replace(/-/g,"+").replace(/_/g,"/").padEnd(o.length+(4-o.length%4)%4,"="),l=JSON.parse(atob(r));return!(typeof l!="object"||l===null||"typ"in l&&(l==null?void 0:l.typ)!=="JWT"||!l.alg||n&&l.alg!==n)}catch{return!1}}function Th(t,n){return!!((n==="v4"||!n)&&Ch.test(t)||(n==="v6"||!n)&&wh.test(t))}class Dt extends Ve{_parse(n){if(this._def.coerce&&(n.data=String(n.data)),this._getType(n)!==ne.string){const a=this._getOrReturnCtx(n);return ee(a,{code:K.invalid_type,expected:ne.string,received:a.parsedType}),he}const r=new ut;let l;for(const a of this._def.checks)if(a.kind==="min")n.data.length<a.value&&(l=this._getOrReturnCtx(n,l),ee(l,{code:K.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")n.data.length>a.value&&(l=this._getOrReturnCtx(n,l),ee(l,{code:K.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){const i=n.data.length>a.value,u=n.data.length<a.value;(i||u)&&(l=this._getOrReturnCtx(n,l),i?ee(l,{code:K.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):u&&ee(l,{code:K.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")hh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"email",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")Vr||(Vr=new RegExp(xh,"u")),Vr.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"emoji",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")ph.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"uuid",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")mh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"nanoid",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")dh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"cuid",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")ch.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"cuid2",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")fh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"ulid",code:K.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(n.data)}catch{l=this._getOrReturnCtx(n,l),ee(l,{validation:"url",code:K.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"regex",code:K.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?n.data=n.data.trim():a.kind==="includes"?n.data.includes(a.value,a.position)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?n.data=n.data.toLowerCase():a.kind==="toUpperCase"?n.data=n.data.toUpperCase():a.kind==="startsWith"?n.data.startsWith(a.value)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?n.data.endsWith(a.value)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?Sh(a).test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?Nh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?kh(a).test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{code:K.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?vh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"duration",code:K.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?Eh(n.data,a.version)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"ip",code:K.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?Ah(n.data,a.alg)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"jwt",code:K.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?Th(n.data,a.version)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"cidr",code:K.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?bh.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"base64",code:K.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?_h.test(n.data)||(l=this._getOrReturnCtx(n,l),ee(l,{validation:"base64url",code:K.invalid_string,message:a.message}),r.dirty()):we.assertNever(a);return{status:r.value,value:n.data}}_regex(n,o,r){return this.refinement(l=>n.test(l),{validation:o,code:K.invalid_string,...re.errToObj(r)})}_addCheck(n){return new Dt({...this._def,checks:[...this._def.checks,n]})}email(n){return this._addCheck({kind:"email",...re.errToObj(n)})}url(n){return this._addCheck({kind:"url",...re.errToObj(n)})}emoji(n){return this._addCheck({kind:"emoji",...re.errToObj(n)})}uuid(n){return this._addCheck({kind:"uuid",...re.errToObj(n)})}nanoid(n){return this._addCheck({kind:"nanoid",...re.errToObj(n)})}cuid(n){return this._addCheck({kind:"cuid",...re.errToObj(n)})}cuid2(n){return this._addCheck({kind:"cuid2",...re.errToObj(n)})}ulid(n){return this._addCheck({kind:"ulid",...re.errToObj(n)})}base64(n){return this._addCheck({kind:"base64",...re.errToObj(n)})}base64url(n){return this._addCheck({kind:"base64url",...re.errToObj(n)})}jwt(n){return this._addCheck({kind:"jwt",...re.errToObj(n)})}ip(n){return this._addCheck({kind:"ip",...re.errToObj(n)})}cidr(n){return this._addCheck({kind:"cidr",...re.errToObj(n)})}datetime(n){return typeof n=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:n}):this._addCheck({kind:"datetime",precision:typeof(n==null?void 0:n.precision)>"u"?null:n==null?void 0:n.precision,offset:(n==null?void 0:n.offset)??!1,local:(n==null?void 0:n.local)??!1,...re.errToObj(n==null?void 0:n.message)})}date(n){return this._addCheck({kind:"date",message:n})}time(n){return typeof n=="string"?this._addCheck({kind:"time",precision:null,message:n}):this._addCheck({kind:"time",precision:typeof(n==null?void 0:n.precision)>"u"?null:n==null?void 0:n.precision,...re.errToObj(n==null?void 0:n.message)})}duration(n){return this._addCheck({kind:"duration",...re.errToObj(n)})}regex(n,o){return this._addCheck({kind:"regex",regex:n,...re.errToObj(o)})}includes(n,o){return this._addCheck({kind:"includes",value:n,position:o==null?void 0:o.position,...re.errToObj(o==null?void 0:o.message)})}startsWith(n,o){return this._addCheck({kind:"startsWith",value:n,...re.errToObj(o)})}endsWith(n,o){return this._addCheck({kind:"endsWith",value:n,...re.errToObj(o)})}min(n,o){return this._addCheck({kind:"min",value:n,...re.errToObj(o)})}max(n,o){return this._addCheck({kind:"max",value:n,...re.errToObj(o)})}length(n,o){return this._addCheck({kind:"length",value:n,...re.errToObj(o)})}nonempty(n){return this.min(1,re.errToObj(n))}trim(){return new Dt({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Dt({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Dt({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(n=>n.kind==="datetime")}get isDate(){return!!this._def.checks.find(n=>n.kind==="date")}get isTime(){return!!this._def.checks.find(n=>n.kind==="time")}get isDuration(){return!!this._def.checks.find(n=>n.kind==="duration")}get isEmail(){return!!this._def.checks.find(n=>n.kind==="email")}get isURL(){return!!this._def.checks.find(n=>n.kind==="url")}get isEmoji(){return!!this._def.checks.find(n=>n.kind==="emoji")}get isUUID(){return!!this._def.checks.find(n=>n.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(n=>n.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(n=>n.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(n=>n.kind==="cuid2")}get isULID(){return!!this._def.checks.find(n=>n.kind==="ulid")}get isIP(){return!!this._def.checks.find(n=>n.kind==="ip")}get isCIDR(){return!!this._def.checks.find(n=>n.kind==="cidr")}get isBase64(){return!!this._def.checks.find(n=>n.kind==="base64")}get isBase64url(){return!!this._def.checks.find(n=>n.kind==="base64url")}get minLength(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxLength(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}}Dt.create=t=>new Dt({checks:[],typeName:ge.ZodString,coerce:(t==null?void 0:t.coerce)??!1,...Ce(t)});function Bh(t,n){const o=(t.toString().split(".")[1]||"").length,r=(n.toString().split(".")[1]||"").length,l=o>r?o:r,a=Number.parseInt(t.toFixed(l).replace(".","")),i=Number.parseInt(n.toFixed(l).replace(".",""));return a%i/10**l}class dn extends Ve{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(n){if(this._def.coerce&&(n.data=Number(n.data)),this._getType(n)!==ne.number){const a=this._getOrReturnCtx(n);return ee(a,{code:K.invalid_type,expected:ne.number,received:a.parsedType}),he}let r;const l=new ut;for(const a of this._def.checks)a.kind==="int"?we.isInteger(n.data)||(r=this._getOrReturnCtx(n,r),ee(r,{code:K.invalid_type,expected:"integer",received:"float",message:a.message}),l.dirty()):a.kind==="min"?(a.inclusive?n.data<a.value:n.data<=a.value)&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),l.dirty()):a.kind==="max"?(a.inclusive?n.data>a.value:n.data>=a.value)&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),l.dirty()):a.kind==="multipleOf"?Bh(n.data,a.value)!==0&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.not_multiple_of,multipleOf:a.value,message:a.message}),l.dirty()):a.kind==="finite"?Number.isFinite(n.data)||(r=this._getOrReturnCtx(n,r),ee(r,{code:K.not_finite,message:a.message}),l.dirty()):we.assertNever(a);return{status:l.value,value:n.data}}gte(n,o){return this.setLimit("min",n,!0,re.toString(o))}gt(n,o){return this.setLimit("min",n,!1,re.toString(o))}lte(n,o){return this.setLimit("max",n,!0,re.toString(o))}lt(n,o){return this.setLimit("max",n,!1,re.toString(o))}setLimit(n,o,r,l){return new dn({...this._def,checks:[...this._def.checks,{kind:n,value:o,inclusive:r,message:re.toString(l)}]})}_addCheck(n){return new dn({...this._def,checks:[...this._def.checks,n]})}int(n){return this._addCheck({kind:"int",message:re.toString(n)})}positive(n){return this._addCheck({kind:"min",value:0,inclusive:!1,message:re.toString(n)})}negative(n){return this._addCheck({kind:"max",value:0,inclusive:!1,message:re.toString(n)})}nonpositive(n){return this._addCheck({kind:"max",value:0,inclusive:!0,message:re.toString(n)})}nonnegative(n){return this._addCheck({kind:"min",value:0,inclusive:!0,message:re.toString(n)})}multipleOf(n,o){return this._addCheck({kind:"multipleOf",value:n,message:re.toString(o)})}finite(n){return this._addCheck({kind:"finite",message:re.toString(n)})}safe(n){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:re.toString(n)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:re.toString(n)})}get minValue(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxValue(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}get isInt(){return!!this._def.checks.find(n=>n.kind==="int"||n.kind==="multipleOf"&&we.isInteger(n.value))}get isFinite(){let n=null,o=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(o===null||r.value>o)&&(o=r.value):r.kind==="max"&&(n===null||r.value<n)&&(n=r.value)}return Number.isFinite(o)&&Number.isFinite(n)}}dn.create=t=>new dn({checks:[],typeName:ge.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class cn extends Ve{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(n){if(this._def.coerce)try{n.data=BigInt(n.data)}catch{return this._getInvalidInput(n)}if(this._getType(n)!==ne.bigint)return this._getInvalidInput(n);let r;const l=new ut;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?n.data<a.value:n.data<=a.value)&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),l.dirty()):a.kind==="max"?(a.inclusive?n.data>a.value:n.data>=a.value)&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),l.dirty()):a.kind==="multipleOf"?n.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(n,r),ee(r,{code:K.not_multiple_of,multipleOf:a.value,message:a.message}),l.dirty()):we.assertNever(a);return{status:l.value,value:n.data}}_getInvalidInput(n){const o=this._getOrReturnCtx(n);return ee(o,{code:K.invalid_type,expected:ne.bigint,received:o.parsedType}),he}gte(n,o){return this.setLimit("min",n,!0,re.toString(o))}gt(n,o){return this.setLimit("min",n,!1,re.toString(o))}lte(n,o){return this.setLimit("max",n,!0,re.toString(o))}lt(n,o){return this.setLimit("max",n,!1,re.toString(o))}setLimit(n,o,r,l){return new cn({...this._def,checks:[...this._def.checks,{kind:n,value:o,inclusive:r,message:re.toString(l)}]})}_addCheck(n){return new cn({...this._def,checks:[...this._def.checks,n]})}positive(n){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:re.toString(n)})}negative(n){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:re.toString(n)})}nonpositive(n){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:re.toString(n)})}nonnegative(n){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:re.toString(n)})}multipleOf(n,o){return this._addCheck({kind:"multipleOf",value:n,message:re.toString(o)})}get minValue(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n}get maxValue(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n}}cn.create=t=>new cn({checks:[],typeName:ge.ZodBigInt,coerce:(t==null?void 0:t.coerce)??!1,...Ce(t)});class Do extends Ve{_parse(n){if(this._def.coerce&&(n.data=!!n.data),this._getType(n)!==ne.boolean){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.boolean,received:r.parsedType}),he}return ft(n.data)}}Do.create=t=>new Do({typeName:ge.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class En extends Ve{_parse(n){if(this._def.coerce&&(n.data=new Date(n.data)),this._getType(n)!==ne.date){const a=this._getOrReturnCtx(n);return ee(a,{code:K.invalid_type,expected:ne.date,received:a.parsedType}),he}if(Number.isNaN(n.data.getTime())){const a=this._getOrReturnCtx(n);return ee(a,{code:K.invalid_date}),he}const r=new ut;let l;for(const a of this._def.checks)a.kind==="min"?n.data.getTime()<a.value&&(l=this._getOrReturnCtx(n,l),ee(l,{code:K.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?n.data.getTime()>a.value&&(l=this._getOrReturnCtx(n,l),ee(l,{code:K.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):we.assertNever(a);return{status:r.value,value:new Date(n.data.getTime())}}_addCheck(n){return new En({...this._def,checks:[...this._def.checks,n]})}min(n,o){return this._addCheck({kind:"min",value:n.getTime(),message:re.toString(o)})}max(n,o){return this._addCheck({kind:"max",value:n.getTime(),message:re.toString(o)})}get minDate(){let n=null;for(const o of this._def.checks)o.kind==="min"&&(n===null||o.value>n)&&(n=o.value);return n!=null?new Date(n):null}get maxDate(){let n=null;for(const o of this._def.checks)o.kind==="max"&&(n===null||o.value<n)&&(n=o.value);return n!=null?new Date(n):null}}En.create=t=>new En({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:ge.ZodDate,...Ce(t)});class Ql extends Ve{_parse(n){if(this._getType(n)!==ne.symbol){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.symbol,received:r.parsedType}),he}return ft(n.data)}}Ql.create=t=>new Ql({typeName:ge.ZodSymbol,...Ce(t)});class ea extends Ve{_parse(n){if(this._getType(n)!==ne.undefined){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.undefined,received:r.parsedType}),he}return ft(n.data)}}ea.create=t=>new ea({typeName:ge.ZodUndefined,...Ce(t)});class ta extends Ve{_parse(n){if(this._getType(n)!==ne.null){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.null,received:r.parsedType}),he}return ft(n.data)}}ta.create=t=>new ta({typeName:ge.ZodNull,...Ce(t)});class na extends Ve{constructor(){super(...arguments),this._any=!0}_parse(n){return ft(n.data)}}na.create=t=>new na({typeName:ge.ZodAny,...Ce(t)});class oa extends Ve{constructor(){super(...arguments),this._unknown=!0}_parse(n){return ft(n.data)}}oa.create=t=>new oa({typeName:ge.ZodUnknown,...Ce(t)});class Xt extends Ve{_parse(n){const o=this._getOrReturnCtx(n);return ee(o,{code:K.invalid_type,expected:ne.never,received:o.parsedType}),he}}Xt.create=t=>new Xt({typeName:ge.ZodNever,...Ce(t)});class ra extends Ve{_parse(n){if(this._getType(n)!==ne.undefined){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.void,received:r.parsedType}),he}return ft(n.data)}}ra.create=t=>new ra({typeName:ge.ZodVoid,...Ce(t)});class bt extends Ve{_parse(n){const{ctx:o,status:r}=this._processInputParams(n),l=this._def;if(o.parsedType!==ne.array)return ee(o,{code:K.invalid_type,expected:ne.array,received:o.parsedType}),he;if(l.exactLength!==null){const i=o.data.length>l.exactLength.value,u=o.data.length<l.exactLength.value;(i||u)&&(ee(o,{code:i?K.too_big:K.too_small,minimum:u?l.exactLength.value:void 0,maximum:i?l.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:l.exactLength.message}),r.dirty())}if(l.minLength!==null&&o.data.length<l.minLength.value&&(ee(o,{code:K.too_small,minimum:l.minLength.value,type:"array",inclusive:!0,exact:!1,message:l.minLength.message}),r.dirty()),l.maxLength!==null&&o.data.length>l.maxLength.value&&(ee(o,{code:K.too_big,maximum:l.maxLength.value,type:"array",inclusive:!0,exact:!1,message:l.maxLength.message}),r.dirty()),o.common.async)return Promise.all([...o.data].map((i,u)=>l.type._parseAsync(new Wt(o,i,o.path,u)))).then(i=>ut.mergeArray(r,i));const a=[...o.data].map((i,u)=>l.type._parseSync(new Wt(o,i,o.path,u)));return ut.mergeArray(r,a)}get element(){return this._def.type}min(n,o){return new bt({...this._def,minLength:{value:n,message:re.toString(o)}})}max(n,o){return new bt({...this._def,maxLength:{value:n,message:re.toString(o)}})}length(n,o){return new bt({...this._def,exactLength:{value:n,message:re.toString(o)}})}nonempty(n){return this.min(1,n)}}bt.create=(t,n)=>new bt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ge.ZodArray,...Ce(n)});function xn(t){if(t instanceof Oe){const n={};for(const o in t.shape){const r=t.shape[o];n[o]=$t.create(xn(r))}return new Oe({...t._def,shape:()=>n})}else return t instanceof bt?new bt({...t._def,type:xn(t.element)}):t instanceof $t?$t.create(xn(t.unwrap())):t instanceof Bn?Bn.create(xn(t.unwrap())):t instanceof fn?fn.create(t.items.map(n=>xn(n))):t}class Oe extends Ve{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const n=this._def.shape(),o=we.objectKeys(n);return this._cached={shape:n,keys:o},this._cached}_parse(n){if(this._getType(n)!==ne.object){const d=this._getOrReturnCtx(n);return ee(d,{code:K.invalid_type,expected:ne.object,received:d.parsedType}),he}const{status:r,ctx:l}=this._processInputParams(n),{shape:a,keys:i}=this._getCached(),u=[];if(!(this._def.catchall instanceof Xt&&this._def.unknownKeys==="strip"))for(const d in l.data)i.includes(d)||u.push(d);const s=[];for(const d of i){const c=a[d],f=l.data[d];s.push({key:{status:"valid",value:d},value:c._parse(new Wt(l,f,l.path,d)),alwaysSet:d in l.data})}if(this._def.catchall instanceof Xt){const d=this._def.unknownKeys;if(d==="passthrough")for(const c of u)s.push({key:{status:"valid",value:c},value:{status:"valid",value:l.data[c]}});else if(d==="strict")u.length>0&&(ee(l,{code:K.unrecognized_keys,keys:u}),r.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const d=this._def.catchall;for(const c of u){const f=l.data[c];s.push({key:{status:"valid",value:c},value:d._parse(new Wt(l,f,l.path,c)),alwaysSet:c in l.data})}}return l.common.async?Promise.resolve().then(async()=>{const d=[];for(const c of s){const f=await c.key,m=await c.value;d.push({key:f,value:m,alwaysSet:c.alwaysSet})}return d}).then(d=>ut.mergeObjectSync(r,d)):ut.mergeObjectSync(r,s)}get shape(){return this._def.shape()}strict(n){return re.errToObj,new Oe({...this._def,unknownKeys:"strict",...n!==void 0?{errorMap:(o,r)=>{var a,i;const l=((i=(a=this._def).errorMap)==null?void 0:i.call(a,o,r).message)??r.defaultError;return o.code==="unrecognized_keys"?{message:re.errToObj(n).message??l}:{message:l}}}:{}})}strip(){return new Oe({...this._def,unknownKeys:"strip"})}passthrough(){return new Oe({...this._def,unknownKeys:"passthrough"})}extend(n){return new Oe({...this._def,shape:()=>({...this._def.shape(),...n})})}merge(n){return new Oe({unknownKeys:n._def.unknownKeys,catchall:n._def.catchall,shape:()=>({...this._def.shape(),...n._def.shape()}),typeName:ge.ZodObject})}setKey(n,o){return this.augment({[n]:o})}catchall(n){return new Oe({...this._def,catchall:n})}pick(n){const o={};for(const r of we.objectKeys(n))n[r]&&this.shape[r]&&(o[r]=this.shape[r]);return new Oe({...this._def,shape:()=>o})}omit(n){const o={};for(const r of we.objectKeys(this.shape))n[r]||(o[r]=this.shape[r]);return new Oe({...this._def,shape:()=>o})}deepPartial(){return xn(this)}partial(n){const o={};for(const r of we.objectKeys(this.shape)){const l=this.shape[r];n&&!n[r]?o[r]=l:o[r]=l.optional()}return new Oe({...this._def,shape:()=>o})}required(n){const o={};for(const r of we.objectKeys(this.shape))if(n&&!n[r])o[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof $t;)a=a._def.innerType;o[r]=a}return new Oe({...this._def,shape:()=>o})}keyof(){return Gi(we.objectKeys(this.shape))}}Oe.create=(t,n)=>new Oe({shape:()=>t,unknownKeys:"strip",catchall:Xt.create(),typeName:ge.ZodObject,...Ce(n)});Oe.strictCreate=(t,n)=>new Oe({shape:()=>t,unknownKeys:"strict",catchall:Xt.create(),typeName:ge.ZodObject,...Ce(n)});Oe.lazycreate=(t,n)=>new Oe({shape:t,unknownKeys:"strip",catchall:Xt.create(),typeName:ge.ZodObject,...Ce(n)});class Ro extends Ve{_parse(n){const{ctx:o}=this._processInputParams(n),r=this._def.options;function l(a){for(const u of a)if(u.result.status==="valid")return u.result;for(const u of a)if(u.result.status==="dirty")return o.common.issues.push(...u.ctx.common.issues),u.result;const i=a.map(u=>new Mt(u.ctx.common.issues));return ee(o,{code:K.invalid_union,unionErrors:i}),he}if(o.common.async)return Promise.all(r.map(async a=>{const i={...o,common:{...o.common,issues:[]},parent:null};return{result:await a._parseAsync({data:o.data,path:o.path,parent:i}),ctx:i}})).then(l);{let a;const i=[];for(const s of r){const d={...o,common:{...o.common,issues:[]},parent:null},c=s._parseSync({data:o.data,path:o.path,parent:d});if(c.status==="valid")return c;c.status==="dirty"&&!a&&(a={result:c,ctx:d}),d.common.issues.length&&i.push(d.common.issues)}if(a)return o.common.issues.push(...a.ctx.common.issues),a.result;const u=i.map(s=>new Mt(s));return ee(o,{code:K.invalid_union,unionErrors:u}),he}}get options(){return this._def.options}}Ro.create=(t,n)=>new Ro({options:t,typeName:ge.ZodUnion,...Ce(n)});function jr(t,n){const o=zt(t),r=zt(n);if(t===n)return{valid:!0,data:t};if(o===ne.object&&r===ne.object){const l=we.objectKeys(n),a=we.objectKeys(t).filter(u=>l.indexOf(u)!==-1),i={...t,...n};for(const u of a){const s=jr(t[u],n[u]);if(!s.valid)return{valid:!1};i[u]=s.data}return{valid:!0,data:i}}else if(o===ne.array&&r===ne.array){if(t.length!==n.length)return{valid:!1};const l=[];for(let a=0;a<t.length;a++){const i=t[a],u=n[a],s=jr(i,u);if(!s.valid)return{valid:!1};l.push(s.data)}return{valid:!0,data:l}}else return o===ne.date&&r===ne.date&&+t==+n?{valid:!0,data:t}:{valid:!1}}class Io extends Ve{_parse(n){const{status:o,ctx:r}=this._processInputParams(n),l=(a,i)=>{if(Zl(a)||Zl(i))return he;const u=jr(a.value,i.value);return u.valid?((Kl(a)||Kl(i))&&o.dirty(),{status:o.value,value:u.data}):(ee(r,{code:K.invalid_intersection_types}),he)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,i])=>l(a,i)):l(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Io.create=(t,n,o)=>new Io({left:t,right:n,typeName:ge.ZodIntersection,...Ce(o)});class fn extends Ve{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==ne.array)return ee(r,{code:K.invalid_type,expected:ne.array,received:r.parsedType}),he;if(r.data.length<this._def.items.length)return ee(r,{code:K.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),he;!this._def.rest&&r.data.length>this._def.items.length&&(ee(r,{code:K.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),o.dirty());const a=[...r.data].map((i,u)=>{const s=this._def.items[u]||this._def.rest;return s?s._parse(new Wt(r,i,r.path,u)):null}).filter(i=>!!i);return r.common.async?Promise.all(a).then(i=>ut.mergeArray(o,i)):ut.mergeArray(o,a)}get items(){return this._def.items}rest(n){return new fn({...this._def,rest:n})}}fn.create=(t,n)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new fn({items:t,typeName:ge.ZodTuple,rest:null,...Ce(n)})};class la extends Ve{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==ne.map)return ee(r,{code:K.invalid_type,expected:ne.map,received:r.parsedType}),he;const l=this._def.keyType,a=this._def.valueType,i=[...r.data.entries()].map(([u,s],d)=>({key:l._parse(new Wt(r,u,r.path,[d,"key"])),value:a._parse(new Wt(r,s,r.path,[d,"value"]))}));if(r.common.async){const u=new Map;return Promise.resolve().then(async()=>{for(const s of i){const d=await s.key,c=await s.value;if(d.status==="aborted"||c.status==="aborted")return he;(d.status==="dirty"||c.status==="dirty")&&o.dirty(),u.set(d.value,c.value)}return{status:o.value,value:u}})}else{const u=new Map;for(const s of i){const d=s.key,c=s.value;if(d.status==="aborted"||c.status==="aborted")return he;(d.status==="dirty"||c.status==="dirty")&&o.dirty(),u.set(d.value,c.value)}return{status:o.value,value:u}}}}la.create=(t,n,o)=>new la({valueType:n,keyType:t,typeName:ge.ZodMap,...Ce(o)});class ao extends Ve{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.parsedType!==ne.set)return ee(r,{code:K.invalid_type,expected:ne.set,received:r.parsedType}),he;const l=this._def;l.minSize!==null&&r.data.size<l.minSize.value&&(ee(r,{code:K.too_small,minimum:l.minSize.value,type:"set",inclusive:!0,exact:!1,message:l.minSize.message}),o.dirty()),l.maxSize!==null&&r.data.size>l.maxSize.value&&(ee(r,{code:K.too_big,maximum:l.maxSize.value,type:"set",inclusive:!0,exact:!1,message:l.maxSize.message}),o.dirty());const a=this._def.valueType;function i(s){const d=new Set;for(const c of s){if(c.status==="aborted")return he;c.status==="dirty"&&o.dirty(),d.add(c.value)}return{status:o.value,value:d}}const u=[...r.data.values()].map((s,d)=>a._parse(new Wt(r,s,r.path,d)));return r.common.async?Promise.all(u).then(s=>i(s)):i(u)}min(n,o){return new ao({...this._def,minSize:{value:n,message:re.toString(o)}})}max(n,o){return new ao({...this._def,maxSize:{value:n,message:re.toString(o)}})}size(n,o){return this.min(n,o).max(n,o)}nonempty(n){return this.min(1,n)}}ao.create=(t,n)=>new ao({valueType:t,minSize:null,maxSize:null,typeName:ge.ZodSet,...Ce(n)});class aa extends Ve{get schema(){return this._def.getter()}_parse(n){const{ctx:o}=this._processInputParams(n);return this._def.getter()._parse({data:o.data,path:o.path,parent:o})}}aa.create=(t,n)=>new aa({getter:t,typeName:ge.ZodLazy,...Ce(n)});class ia extends Ve{_parse(n){if(n.data!==this._def.value){const o=this._getOrReturnCtx(n);return ee(o,{received:o.data,code:K.invalid_literal,expected:this._def.value}),he}return{status:"valid",value:n.data}}get value(){return this._def.value}}ia.create=(t,n)=>new ia({value:t,typeName:ge.ZodLiteral,...Ce(n)});function Gi(t,n){return new An({values:t,typeName:ge.ZodEnum,...Ce(n)})}class An extends Ve{_parse(n){if(typeof n.data!="string"){const o=this._getOrReturnCtx(n),r=this._def.values;return ee(o,{expected:we.joinValues(r),received:o.parsedType,code:K.invalid_type}),he}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(n.data)){const o=this._getOrReturnCtx(n),r=this._def.values;return ee(o,{received:o.data,code:K.invalid_enum_value,options:r}),he}return ft(n.data)}get options(){return this._def.values}get enum(){const n={};for(const o of this._def.values)n[o]=o;return n}get Values(){const n={};for(const o of this._def.values)n[o]=o;return n}get Enum(){const n={};for(const o of this._def.values)n[o]=o;return n}extract(n,o=this._def){return An.create(n,{...this._def,...o})}exclude(n,o=this._def){return An.create(this.options.filter(r=>!n.includes(r)),{...this._def,...o})}}An.create=Gi;class sa extends Ve{_parse(n){const o=we.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(n);if(r.parsedType!==ne.string&&r.parsedType!==ne.number){const l=we.objectValues(o);return ee(r,{expected:we.joinValues(l),received:r.parsedType,code:K.invalid_type}),he}if(this._cache||(this._cache=new Set(we.getValidEnumValues(this._def.values))),!this._cache.has(n.data)){const l=we.objectValues(o);return ee(r,{received:r.data,code:K.invalid_enum_value,options:l}),he}return ft(n.data)}get enum(){return this._def.values}}sa.create=(t,n)=>new sa({values:t,typeName:ge.ZodNativeEnum,...Ce(n)});class Mo extends Ve{unwrap(){return this._def.type}_parse(n){const{ctx:o}=this._processInputParams(n);if(o.parsedType!==ne.promise&&o.common.async===!1)return ee(o,{code:K.invalid_type,expected:ne.promise,received:o.parsedType}),he;const r=o.parsedType===ne.promise?o.data:Promise.resolve(o.data);return ft(r.then(l=>this._def.type.parseAsync(l,{path:o.path,errorMap:o.common.contextualErrorMap})))}}Mo.create=(t,n)=>new Mo({type:t,typeName:ge.ZodPromise,...Ce(n)});class Tn extends Ve{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ge.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(n){const{status:o,ctx:r}=this._processInputParams(n),l=this._def.effect||null,a={addIssue:i=>{ee(r,i),i.fatal?o.abort():o.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),l.type==="preprocess"){const i=l.transform(r.data,a);if(r.common.async)return Promise.resolve(i).then(async u=>{if(o.value==="aborted")return he;const s=await this._def.schema._parseAsync({data:u,path:r.path,parent:r});return s.status==="aborted"?he:s.status==="dirty"||o.value==="dirty"?qn(s.value):s});{if(o.value==="aborted")return he;const u=this._def.schema._parseSync({data:i,path:r.path,parent:r});return u.status==="aborted"?he:u.status==="dirty"||o.value==="dirty"?qn(u.value):u}}if(l.type==="refinement"){const i=u=>{const s=l.refinement(u,a);if(r.common.async)return Promise.resolve(s);if(s instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return u};if(r.common.async===!1){const u=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return u.status==="aborted"?he:(u.status==="dirty"&&o.dirty(),i(u.value),{status:o.value,value:u.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(u=>u.status==="aborted"?he:(u.status==="dirty"&&o.dirty(),i(u.value).then(()=>({status:o.value,value:u.value}))))}if(l.type==="transform")if(r.common.async===!1){const i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Sn(i))return he;const u=l.transform(i.value,a);if(u instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:o.value,value:u}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>Sn(i)?Promise.resolve(l.transform(i.value,a)).then(u=>({status:o.value,value:u})):he);we.assertNever(l)}}Tn.create=(t,n,o)=>new Tn({schema:t,typeName:ge.ZodEffects,effect:n,...Ce(o)});Tn.createWithPreprocess=(t,n,o)=>new Tn({schema:n,effect:{type:"preprocess",transform:t},typeName:ge.ZodEffects,...Ce(o)});class $t extends Ve{_parse(n){return this._getType(n)===ne.undefined?ft(void 0):this._def.innerType._parse(n)}unwrap(){return this._def.innerType}}$t.create=(t,n)=>new $t({innerType:t,typeName:ge.ZodOptional,...Ce(n)});class Bn extends Ve{_parse(n){return this._getType(n)===ne.null?ft(null):this._def.innerType._parse(n)}unwrap(){return this._def.innerType}}Bn.create=(t,n)=>new Bn({innerType:t,typeName:ge.ZodNullable,...Ce(n)});class Po extends Ve{_parse(n){const{ctx:o}=this._processInputParams(n);let r=o.data;return o.parsedType===ne.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:o.path,parent:o})}removeDefault(){return this._def.innerType}}Po.create=(t,n)=>new Po({innerType:t,typeName:ge.ZodDefault,defaultValue:typeof n.default=="function"?n.default:()=>n.default,...Ce(n)});class $r extends Ve{_parse(n){const{ctx:o}=this._processInputParams(n),r={...o,common:{...o.common,issues:[]}},l=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Bo(l)?l.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Mt(r.common.issues)},input:r.data})})):{status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new Mt(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}$r.create=(t,n)=>new $r({innerType:t,typeName:ge.ZodCatch,catchValue:typeof n.catch=="function"?n.catch:()=>n.catch,...Ce(n)});class ua extends Ve{_parse(n){if(this._getType(n)!==ne.nan){const r=this._getOrReturnCtx(n);return ee(r,{code:K.invalid_type,expected:ne.nan,received:r.parsedType}),he}return{status:"valid",value:n.data}}}ua.create=t=>new ua({typeName:ge.ZodNaN,...Ce(t)});class Dh extends Ve{_parse(n){const{ctx:o}=this._processInputParams(n),r=o.data;return this._def.type._parse({data:r,path:o.path,parent:o})}unwrap(){return this._def.type}}class ml extends Ve{_parse(n){const{status:o,ctx:r}=this._processInputParams(n);if(r.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?he:a.status==="dirty"?(o.dirty(),qn(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{const l=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return l.status==="aborted"?he:l.status==="dirty"?(o.dirty(),{status:"dirty",value:l.value}):this._def.out._parseSync({data:l.value,path:r.path,parent:r})}}static create(n,o){return new ml({in:n,out:o,typeName:ge.ZodPipeline})}}class Hr extends Ve{_parse(n){const o=this._def.innerType._parse(n),r=l=>(Sn(l)&&(l.value=Object.freeze(l.value)),l);return Bo(o)?o.then(l=>r(l)):r(o)}unwrap(){return this._def.innerType}}Hr.create=(t,n)=>new Hr({innerType:t,typeName:ge.ZodReadonly,...Ce(n)});var ge;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ge||(ge={}));const _e=Dt.create;dn.create;cn.create;const On=Do.create,da=En.create;Xt.create;const en=bt.create,Lt=Oe.create;Ro.create;Io.create;fn.create;An.create;Mo.create;$t.create;Bn.create;const tn={string:t=>Dt.create({...t,coerce:!0}),number:t=>dn.create({...t,coerce:!0}),boolean:t=>Do.create({...t,coerce:!0}),bigint:t=>cn.create({...t,coerce:!0}),date:t=>En.create({...t,coerce:!0})};/**
|
|
28
28
|
* vee-validate v4.15.1
|
|
29
29
|
* (c) 2025 Abdelrahman Awad
|
|
30
30
|
* @license MIT
|
|
31
|
-
*/const pa=t=>t!==null&&!!t&&typeof t=="object"&&!Array.isArray(t);function qi(t){return Number(t)>=0}function Eh(t){return typeof t=="object"&&t!==null}function Th(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}function fa(t){if(!Eh(t)||Th(t)!=="[object Object]")return!1;if(Object.getPrototypeOf(t)===null)return!0;let n=t;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(t)===n}function Wi(t,n){return Object.keys(n).forEach(o=>{if(fa(n[o])&&fa(t[o])){t[o]||(t[o]={}),Wi(t[o],n[o]);return}t[o]=n[o]}),t}function Dh(t){const n=t.split(".");if(!n.length)return"";let o=String(n[0]);for(let r=1;r<n.length;r++){if(qi(n[r])){o+=`[${n[r]}]`;continue}o+=`.${n[r]}`}return o}function Zi(t,n){return{__type:"VVTypedSchema",async parse(r){const l=await t.safeParseAsync(r,n);if(l.success)return{value:l.data,errors:[]};const a={};return Yi(l.error.issues,a),{errors:Object.values(a)}},cast(r){try{return t.parse(r)}catch{const a=Xi(t);return pa(a)&&pa(r)?Wi(a,r):r}},describe(r){try{if(!r)return{required:!t.isOptional(),exists:!0};const l=Bh(r,t);return l?{required:!l.isOptional(),exists:!0}:{required:!1,exists:!1}}catch{return process.env.NODE_ENV!=="production"&&console.warn(`Failed to describe path ${r} on the schema, returning a default description.`),{required:!1,exists:!1}}}}}function Yi(t,n){t.forEach(o=>{const r=Dh(o.path.join("."));o.code==="invalid_union"&&(Yi(o.unionErrors.flatMap(l=>l.issues),n),!r)||(n[r]||(n[r]={errors:[],path:r}),n[r].errors.push(o.message))})}function Xi(t){if(t instanceof Le)return Object.fromEntries(Object.entries(t.shape).map(([n,o])=>o instanceof Ao?[n,o._def.defaultValue()]:o instanceof Le?[n,Xi(o)]:[n,void 0]))}function Bh(t,n){if(!ma(n))return null;if(po(t))return n.shape[qo(t)];const o=(t||"").split(/\.|\[(\d+)\]/).filter(Boolean);let r=n;for(let l=0;l<=o.length;l++){const a=o[l];if(!a||!r)return r;if(ma(r)){r=r.shape[a]||null;continue}qi(a)&&$h(r)&&(r=r._def.type)}return null}function Ji(t){return t._def.typeName}function $h(t){return Ji(t)===ve.ZodArray}function ma(t){return Ji(t)===ve.ZodObject}let Zr=1;var Ih=class{constructor(){We(this,"subscribers");We(this,"toasts");We(this,"dismissedToasts");We(this,"subscribe",t=>(this.subscribers.push(t),()=>{const n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}));We(this,"publish",t=>{this.subscribers.forEach(n=>n(t))});We(this,"addToast",t=>{this.publish(t),this.toasts=[...this.toasts,t]});We(this,"create",t=>{var i;const{message:n,...o}=t,r=typeof t.id=="number"||t.id&&((i=t.id)==null?void 0:i.length)>0?t.id:Zr++,l=this.toasts.find(d=>d.id===r),a=t.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),l?this.toasts=this.toasts.map(d=>d.id===r?(this.publish({...d,...t,id:r,title:n}),{...d,...t,id:r,dismissible:a,title:n}):d):this.addToast({title:n,...o,dismissible:a,id:r}),r});We(this,"dismiss",t=>(t?(this.dismissedToasts.add(t),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:t,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(o=>o({id:n.id,dismiss:!0}))}),t));We(this,"message",(t,n)=>this.create({...n,message:t,type:"default"}));We(this,"error",(t,n)=>this.create({...n,type:"error",message:t}));We(this,"success",(t,n)=>this.create({...n,type:"success",message:t}));We(this,"info",(t,n)=>this.create({...n,type:"info",message:t}));We(this,"warning",(t,n)=>this.create({...n,type:"warning",message:t}));We(this,"loading",(t,n)=>this.create({...n,type:"loading",message:t}));We(this,"promise",(t,n)=>{if(!n)return;let o;n.loading!==void 0&&(o=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const r=Promise.resolve(t instanceof Function?t():t);let l=o!==void 0,a;const i=r.then(async s=>{if(a=["resolve",s],e.isVNode(s))l=!1,this.create({id:o,type:"default",message:s});else if(Ph(s)&&!s.ok){l=!1;const c=typeof n.error=="function"?await n.error(`HTTP error! status: ${s.status}`):n.error,p=typeof n.description=="function"?await n.description(`HTTP error! status: ${s.status}`):n.description,f=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"error",description:p,...f})}else if(s instanceof Error){l=!1;const c=typeof n.error=="function"?await n.error(s):n.error,p=typeof n.description=="function"?await n.description(s):n.description,f=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"error",description:p,...f})}else if(n.success!==void 0){l=!1;const c=typeof n.success=="function"?await n.success(s):n.success,p=typeof n.description=="function"?await n.description(s):n.description,f=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"success",description:p,...f})}}).catch(async s=>{if(a=["reject",s],n.error!==void 0){l=!1;const u=typeof n.error=="function"?await n.error(s):n.error,c=typeof n.description=="function"?await n.description(s):n.description,m=typeof u=="object"&&!e.isVNode(u)?u:{message:u||"",id:o||""};this.create({id:o,type:"error",description:c,...m})}}).finally(()=>{var s;l&&(this.dismiss(o),o=void 0),(s=n.finally)==null||s.call(n)}),d=()=>new Promise((s,u)=>i.then(()=>a[0]==="reject"?u(a[1]):s(a[1])).catch(u));return typeof o!="string"&&typeof o!="number"?{unwrap:d}:Object.assign(o,{unwrap:d})});We(this,"custom",(t,n)=>{const o=(n==null?void 0:n.id)||Zr++;return this.publish({component:t,id:o,...n}),o});We(this,"getActiveToasts",()=>this.toasts.filter(t=>!this.dismissedToasts.has(t.id)));this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}};const ct=new Ih;function Mh(t,n){const o=(n==null?void 0:n.id)||Zr++;return ct.create({message:t,id:o,type:"default",...n}),o}const Ph=t=>t&&typeof t=="object"&&"ok"in t&&typeof t.ok=="boolean"&&"status"in t&&typeof t.status=="number",Rh=Mh,Ah=()=>ct.toasts,Fh=()=>ct.getActiveToasts(),Ae=Object.assign(Rh,{success:ct.success,info:ct.info,warning:ct.warning,error:ct.error,custom:ct.custom,message:ct.message,promise:ct.promise,dismiss:ct.dismiss,loading:ct.loading},{getHistory:Ah,getToasts:Fh}),Oh={class:"relative @container"},zh={class:"flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6"},Lh={class:"flex items-center"},jh={class:"text-lg font-semibold mx-2"},Uh={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Hh={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},Gh={key:2,class:"bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},qh={class:"flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24"},Wh={class:"flex flex-col gap-4 w-full @3xl:w-2/3"},Zh={class:"flex flex-col gap-4 w-full @3xl:w-1/3"},Yh={key:0,class:"fixed bottom-4 left-0 md:left-12 right-0 min-w-xs max-w-5xl w-[calc(100%-2rem)] md:w-[calc(100%-5rem)] xl:w-[calc(100%-2rem)] h-16 border border-white/10 backdrop-blur-sm border-t border-border flex items-center justify-center px-4 mx-auto z-[9999] rounded-xl overflow-hidden shadow",style:{background:"radial-gradient(#00000080, transparent)"}},Xh={class:"w-full max-w-5xl flex items-center justify-end mx-auto"},Jh={key:1,class:"inline-flex items-center gap-1"},Kh={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},Qh={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},ex={key:2,class:"size-3 rounded-full bg-gray-300 translate-y-[1px]"},tx={key:1,class:"inline-flex items-center gap-1"},nx={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},ox={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},rx={key:2,class:"size-3 rounded-full bg-gray-300 translate-y-[1px]"},ga=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o,hasPermissionOR:r}=J.useModulePermissions(),{params:l,navigateTo:a}=J.useModuleRoute(),{confirm:i}=J.useConfirmation(),{setModuleBreadcrumbs:d}=J.useBreadcrumbs(),s=J.useFirebaseIntegration(n.config.project);e.provide("sources",n.config.allowedMediaSources),e.provide("defaultSource",n.config.defaultUploadMediaSource);const u=e.computed(()=>!l.value.productId||l.value.productId==="new"),c=e.ref(!1),p=Zi(ft({title:_e().min(1,"Title is required"),description:_e().optional(),media:pt(_e()).optional(),price:mt.number().positive("Must be positive"),compareAtPrice:mt.number().positive("Must be positive").optional(),isTaxable:Nt().optional(),costPerItem:mt.number().positive("Must be positive").optional(),currency:_e(),stock:mt.number().optional(),trackInventory:Nt().optional(),allowBackorder:Nt().optional(),isGiftCard:Nt().optional(),slug:_e(),seo:ft({title:_e().optional(),description:_e().optional()}).optional(),createdAt:Fo(),updatedAt:Fo(),status:_e(),options:pt(ft({id:_e(),name:_e().min(1),values:pt(ft({id:_e(),value:_e()}))})).optional(),variants:pt(ft({combinedOptions:_e().min(1),name:_e().min(1),disabled:Nt().optional(),price:mt.number().positive("Must be positive"),stock:mt.number().optional(),image:_e().optional(),options:pt(ft({optionId:_e(),option:_e(),valueId:_e(),value:_e()}))})).optional(),tags:pt(_e()).optional()})),{handleSubmit:m,errors:f,values:v,setValues:g}=Bi({validationSchema:p,initialValues:{createdAt:new Date,updatedAt:new Date,status:"draft",options:[],variants:[],media:[],isTaxable:!1,trackInventory:!1,allowBackorder:!1,isGiftCard:!1,tags:[],currency:n.config.defaultCurrency||"USD",price:1,stock:0,seo:{title:"",description:""}}}),h=R=>{var T,U;return{...R,maxPrice:y(),minPrice:b(),maxCompareAtPrice:k(),minCompareAtPrice:_(),isSingleVariant:!R.variants||R.variants.length===0,variantsTotal:((T=R.variants)==null?void 0:T.length)||1,stock:x(),featuredMedia:(U=R.media)==null?void 0:U[0]}},y=()=>!v.variants||v.variants.length===0?v.price:Math.max(...v.variants.map(R=>R.price)),b=()=>!v.variants||v.variants.length===0?v.price:Math.min(...v.variants.map(R=>R.price)),_=()=>v.compareAtPrice,k=()=>v.compareAtPrice,x=()=>!v.variants||v.variants.length===0?v.stock:v.variants.reduce((R,T)=>R+T.stock,0),C=m(async R=>{c.value=!0;let T=h(R);if(u.value){T.createdAt=new Date,T.updatedAt=new Date;const U=await s.add(n.config.productCollection,T);a(U.id),Ae.success("Product created")}else T.updatedAt=new Date,await s.update(n.config.productCollection,l.value.productId,T),a(`${l.value.productId}`),Ae.success("Product updated");c.value=!1}),N=async()=>{const R=await s.get(n.config.productCollection,l.value.productId);R.createdAt=new Date(R.createdAt),R.updatedAt=new Date(R.updatedAt),g(R),d([{text:R.title,href:`/products/${l.value.productId}`,disabled:!0}])},B=async()=>{try{let R={...v};R.id=void 0,R.createdAt=new Date,R.updatedAt=new Date,R.slug=R.slug+"-copy",R.status="draft",R.title=R.title+" (copy)";const T=await s.add(n.config.productCollection,R);a(T.id),Ae.success("Product duplicated")}catch{Ae.error("Failed to duplicate product")}},z=async()=>{try{await s.update(n.config.productCollection,l.value.productId,{status:"archived"}),g({status:"archived"},{force:!1}),Ae.success("Product archived")}catch{Ae.error("Failed to archive product")}},Y=async()=>{if(await i("Are you sure you want to delete this product?"))try{await s.remove(n.config.productCollection,l.value.productId),a(""),Ae.success("Product deleted")}catch{Ae.error("Failed to delete product")}};return e.onMounted(()=>{u.value?d([{text:"New Product",href:"/products/new",disabled:!0}]):N()}),(R,T)=>{const U=e.resolveComponent("Button"),S=e.resolveComponent("MenubarTrigger"),j=e.resolveComponent("MenubarMenu"),P=e.resolveComponent("MenubarShortcut"),M=e.resolveComponent("MenubarItem"),K=e.resolveComponent("MenubarSeparator"),A=e.resolveComponent("MenubarContent"),w=e.resolveComponent("Menubar");return e.openBlock(),e.createElementBlock("div",Oh,[e.createElementVNode("div",zh,[e.createElementVNode("div",Lh,[e.createVNode(U,{variant:"ghost",onClick:T[0]||(T[0]=E=>e.unref(a)(""))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(F.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",jh,e.toDisplayString(u.value?"New Product":e.unref(v).title),1),e.unref(v).status==="published"?(e.openBlock(),e.createElementBlock("span",Uh,"Published")):e.unref(v).status==="draft"?(e.openBlock(),e.createElementBlock("span",Hh,"Draft")):e.unref(v).status==="archived"?(e.openBlock(),e.createElementBlock("span",Gh,"Archived")):e.createCommentVNode("",!0)]),u.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(w,{key:0,class:"bg-sidebar"},{default:e.withCtx(()=>[e.unref(o)("create-product")?(e.openBlock(),e.createBlock(j,{key:0},{default:e.withCtx(()=>[e.createVNode(S,{onClick:B},{default:e.withCtx(()=>T[1]||(T[1]=[e.createTextVNode("Duplicate",-1)])),_:1,__:[1]})]),_:1})):e.createCommentVNode("",!0),e.createVNode(j,null,{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>T[2]||(T[2]=[e.createTextVNode("Preview",-1)])),_:1,__:[2]})]),_:1}),e.createVNode(j,null,{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>T[3]||(T[3]=[e.createTextVNode("Share",-1)])),_:1,__:[3]}),e.createVNode(A,null,{default:e.withCtx(()=>[e.createVNode(M,null,{default:e.withCtx(()=>[T[5]||(T[5]=e.createTextVNode(" New Tab ",-1)),e.createVNode(P,null,{default:e.withCtx(()=>T[4]||(T[4]=[e.createTextVNode("⌘T",-1)])),_:1,__:[4]})]),_:1,__:[5]}),e.createVNode(M,null,{default:e.withCtx(()=>T[6]||(T[6]=[e.createTextVNode("New Window",-1)])),_:1,__:[6]}),e.createVNode(K),e.createVNode(M,null,{default:e.withCtx(()=>T[7]||(T[7]=[e.createTextVNode("Share",-1)])),_:1,__:[7]}),e.createVNode(K),e.createVNode(M,null,{default:e.withCtx(()=>T[8]||(T[8]=[e.createTextVNode("Print",-1)])),_:1,__:[8]})]),_:1})]),_:1}),e.unref(r)("edit-product","delete-product")?(e.openBlock(),e.createBlock(j,{key:1},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>T[9]||(T[9]=[e.createTextVNode("More actions",-1)])),_:1,__:[9]}),e.createVNode(A,null,{default:e.withCtx(()=>[e.unref(o)("edit-product")?(e.openBlock(),e.createBlock(M,{key:0,onClick:z},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Archive),{class:"size-4"}),T[10]||(T[10]=e.createTextVNode(" Archive product ",-1))]),_:1,__:[10]})):e.createCommentVNode("",!0),e.unref(o)("delete-product")?(e.openBlock(),e.createBlock(M,{key:1,variant:"destructive",onClick:Y},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Trash),{class:"size-4"}),T[11]||(T[11]=e.createTextVNode(" Delete product ",-1))]),_:1,__:[11]})):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}))]),e.createElementVNode("div",qh,[e.createElementVNode("div",Wh,[e.createVNode(dm),e.createVNode(Tm),e.createVNode(Im),e.createVNode(Rm),e.createVNode(Lv),e.createVNode(Xv)]),e.createElementVNode("div",Zh,[e.createVNode(th)])]),e.unref(r)("create-product","edit-product")?(e.openBlock(),e.createElementBlock("div",Yh,[e.createElementVNode("div",Xh,[u.value&&e.unref(o)("create-product")?(e.openBlock(),e.createBlock(U,{key:0,onClick:e.unref(C),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Creating":"Create")+" new product ",1),e.unref(v).status?(e.openBlock(),e.createElementBlock("span",Jh,[T[12]||(T[12]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(v).status==="published"?(e.openBlock(),e.createElementBlock("span",Kh)):e.unref(v).status==="draft"?(e.openBlock(),e.createElementBlock("span",Qh)):e.unref(v).status==="archived"?(e.openBlock(),e.createElementBlock("span",ex)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(v).status),1),T[13]||(T[13]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.unref(o)("edit-product")?(e.openBlock(),e.createBlock(U,{key:1,onClick:e.unref(C),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Saving":"Save")+" changes ",1),e.unref(v).status?(e.openBlock(),e.createElementBlock("span",tx,[T[14]||(T[14]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(v).status==="published"?(e.openBlock(),e.createElementBlock("span",nx)):e.unref(v).status==="draft"?(e.openBlock(),e.createElementBlock("span",ox)):e.unref(v).status==="archived"?(e.openBlock(),e.createElementBlock("span",rx)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(v).status),1),T[15]||(T[15]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)])}}}),lx=[{path:"",component:af},{path:"/:productId",component:ga},{path:"/new",component:ga}],ax=[{key:"view-product-detail",name:"View product detail",description:"Team member can click on a product to view its details"},{key:"create-product",name:"Create product",description:"Team member can create a new product"},{key:"edit-product",name:"Edit product",description:"Team member can edit a product"},{key:"delete-product",name:"Delete product",description:"Team member can delete a product"}],ix={component:vp,metadata:hp,config:xp,routes:lx,permissions:ax},sx=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=useModuleRoute();return(o,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))}}),ux={name:"Custom",description:"Custom module",icon:"mdi-table",version:"1.0.0"},dx={},cx=e.defineComponent({__name:"AdminToolbar",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,r=n,l=e.computed({get(){return o.modelValue},set(a){r("update:modelValue",a)}});return(a,i)=>{const d=e.resolveComponent("SegmentedControlButton"),s=e.resolveComponent("TooltipTrigger"),u=e.resolveComponent("TooltipContent"),c=e.resolveComponent("Tooltip"),p=e.resolveComponent("SegmentedControl");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(p,{direction:"vertical",class:"w-12",modelValue:l.value,"onUpdate:modelValue":i[0]||(i[0]=m=>l.value=m),"allow-empty":""},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{value:"new-element"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Component),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(u,{side:"right"},{default:e.withCtx(()=>i[1]||(i[1]=[e.createElementVNode("p",null,"Add new element",-1)])),_:1,__:[1]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{value:"variables"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Variable),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(u,{side:"right"},{default:e.withCtx(()=>i[2]||(i[2]=[e.createElementVNode("p",null,"Variables",-1)])),_:1,__:[2]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{value:"api-actions"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ChevronsLeftRightEllipsis),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(u,{side:"right"},{default:e.withCtx(()=>i[3]||(i[3]=[e.createElementVNode("p",null,"APIs & Actions",-1)])),_:1,__:[3]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{value:"history"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.History),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(u,{side:"right"},{default:e.withCtx(()=>i[4]||(i[4]=[e.createElementVNode("p",null,"History",-1)])),_:1,__:[4]})]),_:1})]),_:1},8,["modelValue"])])}}}),px=e.defineComponent({__name:"DraggableElement",props:{elementData:{type:Object,default:()=>({})}},setup(t){const n=t,o=e.inject("mouseXY"),r=e.inject("DragPos"),l=e.inject("state"),a=e.inject("isDragging");async function i(){var f,v,g,h,y,b,_,k;a.value=!0;const c=document.querySelector("#custom-module-wrapper .vue-grid-layout").getBoundingClientRect();let p=!1;if(o.x>c.left&&o.x<c.right&&o.y>c.top&&o.y<c.bottom&&(p=!0),p===!0&&l.layout.findIndex(x=>x.i==="drop")===-1&&(await s(l.layout.length*2%(l.colNum||12),l.layout.length+(l.colNum||12),!0),await e.nextTick()),!((f=l.itemRefs)!=null&&f.drop))return;const m=l.layout.findIndex(x=>x.i==="drop");if(m!==-1){(h=(g=(v=l.itemRefs)==null?void 0:v.drop)==null?void 0:g.el)!=null&&h.style&&(l.itemRefs.drop.el.style.display="none");const C=l.itemRefs.drop.calcXY(o.y-c.top,o.x-c.left);p===!0&&(l.layoutRef.emitter.emit("dragEvent",["dragstart","drop",C.x,C.y,((y=n.elementData)==null?void 0:y.h)||1,((b=n.elementData)==null?void 0:b.w)||1]),r.i=String(m),r.x=l.layout[m].x,r.y=l.layout[m].y),p===!1&&(l.layoutRef.emitter.emit("dragEvent",["dragend","drop",C.x,C.y,((_=n.elementData)==null?void 0:_.h)||1,((k=n.elementData)==null?void 0:k.w)||1]),l.layout=l.layout.filter(N=>N.i!=="drop"),await e.nextTick())}}async function d(){var m,f,v,g;a.value=!1;const c=document.querySelector("#custom-module-wrapper .vue-grid-layout").getBoundingClientRect();let p=!1;o.x>c.left&&o.x<c.right&&o.y>c.top&&o.y<c.bottom&&(p=!0),p===!0&&(l.layoutRef.emitter.emit("dragEvent",["dragend","drop",r.x,r.y,((m=n.elementData)==null?void 0:m.h)||1,((f=n.elementData)==null?void 0:f.w)||1]),l.layout=l.layout.filter(h=>h.i!=="drop"),await s(r.x,r.y),await e.nextTick(),l.layoutRef.emitter.emit("dragEvent",["dragend",r.i,r.x,r.y,((v=n.elementData)==null?void 0:v.h)||1,((g=n.elementData)==null?void 0:g.w)||1]))}async function s(c,p,m){var v,g,h,y;let f={x:c,y:p,w:((v=n.elementData)==null?void 0:v.w)||1,h:((g=n.elementData)==null?void 0:g.h)||1,minW:((h=n.elementData)==null?void 0:h.minW)||1,minH:((y=n.elementData)==null?void 0:y.minH)||1,i:m?"drop":l.index,component:n.elementData.component,variableName:u(n.elementData.variableBaseName),visibility:"true"};Object.keys(n.elementData).includes("defaultValue")&&(f.defaultValue=n.elementData.defaultValue),l.layout.push(f),l.index++}function u(c){const p=l.layout.map(v=>v.variableName);let m=2,f=c;for(;p.includes(f);)f=`${c}${m}`,m++;return f}return(c,p)=>(e.openBlock(),e.createElementBlock("div",{onDrag:i,onDragend:d,class:"droppable-element",draggable:"true",unselectable:"on"},[e.renderSlot(c.$slots,"default")],32))}}),fx={class:"grid grid-cols-3 gap-2"},mx={class:"text-xs text-muted-foreground group-hover:text-foreground"},gx=e.defineComponent({__name:"NewElementView",setup(t){const n=[{text:"Label",icon:F.Type,elementData:{component:"Label",w:2,h:8,minW:2,minH:8,variableBaseName:"Label"}},{text:"Text",icon:F.Text,elementData:{component:"Text",w:2,h:8,minW:2,minH:8,variableBaseName:"Text"}},{text:"Button",icon:F.SquareMousePointer,elementData:{component:"Button",w:2,h:6,minW:1,minH:6,variableBaseName:"Button",defaultValue:""}},{text:"Textfield",icon:F.TextCursorInput,elementData:{component:"Textfield",w:2,h:8,minW:2,minH:8,variableBaseName:"Textfield",defaultValue:""}},{text:"Textarea",icon:F.TextCursorInput,elementData:{component:"Textarea",w:3,h:12,minW:3,minH:12,variableBaseName:"Textarea",defaultValue:""}},{text:"Richtext",icon:F.Bold,elementData:{component:"Richtext",w:3,h:16,minW:3,minH:16,variableBaseName:"Richtext",defaultValue:""}},{text:"Checkbox",icon:F.Check,elementData:{component:"Checkbox",w:2,h:8,minW:2,minH:8,variableBaseName:"Checkbox",defaultValue:!1}},{text:"Select",icon:F.ChevronDown,elementData:{component:"Select",w:2,h:8,minW:2,minH:8,variableBaseName:"Select",defaultValue:""}},{text:"Radios",icon:F.CircleDot,elementData:{component:"Radios",w:2,h:8,minW:2,minH:8,variableBaseName:"Radios",defaultValue:""}},{text:"Images",icon:F.Image,elementData:{component:"Images",w:4,h:16,minW:4,minH:16,variableBaseName:"Images",defaultValue:[]}},{text:"Location",icon:F.MapPinned,elementData:{component:"Location",w:4,h:16,minW:4,minH:16,variableBaseName:"Location",defaultValue:{lat:0,lng:0}}},{text:"Items",icon:F.Grid2X2,elementData:{component:"Items",w:4,h:16,minW:4,minH:16,variableBaseName:"Items",defaultValue:[]}},{text:"File",icon:F.File,elementData:{component:"File",w:2,h:8,minW:2,minH:8,variableBaseName:"File",defaultValue:null}}];return(o,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r[0]||(r[0]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"New Element")],-1)),e.createElementVNode("div",fx,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,l=>e.createVNode(px,{key:l.text,elementData:l.elementData,class:"group p-2 pt-4 border border-ring rounded-xl cursor-grab flex flex-col items-center gap-1"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.icon),{class:"size-6"})),e.createElementVNode("span",mx,e.toDisplayString(l.text),1)]),_:2},1032,["elementData"])),64))])],64))}}),vx={class:"flex flex-col gap-2"},hx={class:"text-sm"},xx=e.defineComponent({__name:"ApiActionsView",async setup(t){let n,o;const r=e.inject("state"),l=e.inject("allAvailableVariables"),{getProjectIntegrations:a}=J.useIntegrations(),{projectId:i}=J.useModuleRoute(),d=([n,o]=e.withAsyncContext(()=>a(i)),n=await n,o(),n);e.watch(r.apiActions,v=>{if(v){async function g(h){const{fireAction:y}=J.useIntegrationActions(h.integration);let b=await y(h,l.value);console.log("fireAction res",b)}v.forEach(h=>{h.fireOnStart&&h.hasFired&&g(h)})}},{deep:!0});const{showBuilder:s}=J.useIntegrationActionBuilder(),u=async v=>{let g=await s(v.value),h=g.serviceType+" - "+g.actionType,y=2;for(;r.apiActions.find(b=>b.label===h);)h=g.serviceType+" - "+g.actionType+" "+y,y++;r.apiActions.push({id:crypto.randomUUID(),label:h,action:g,hasFired:!1,fireOnStart:!1,firedAt:null})},c=async v=>{let g=await s(l.value,v.action);r.apiActions.find(h=>h.id===v.id).action=g},p=v=>{let g=prompt("Enter new action name",v.label);g&&(r.apiActions.find(h=>h.id===v.id).label=g)},m=v=>{r.apiActions=r.apiActions.filter(g=>g.id!==v.id)},f=async v=>{const{fireAction:g}=J.useIntegrationActions(v.action.integration);let h=await g(v.action,l.value);r.apiActions.find(y=>y.id===v.id).action.response=h};return(v,g)=>{const h=e.resolveComponent("Button"),y=e.resolveComponent("IntegrationIcon"),b=e.resolveComponent("ContextMenuTrigger"),_=e.resolveComponent("ContextMenuItem"),k=e.resolveComponent("ContextMenuSeparator"),x=e.resolveComponent("ContextMenuCheckboxItem"),C=e.resolveComponent("ContextMenuContent"),N=e.resolveComponent("ContextMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[g[7]||(g[7]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"APIs & Actions")],-1)),e.createVNode(h,{onClick:u},{default:e.withCtx(()=>g[0]||(g[0]=[e.createTextVNode("+ Integration action",-1)])),_:1,__:[0]}),e.createElementVNode("div",null,[g[6]||(g[6]=e.createElementVNode("p",null,"Actions",-1)),e.createElementVNode("div",vx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r).apiActions,B=>(e.openBlock(),e.createBlock(N,{key:B.id},{default:e.withCtx(()=>[e.createVNode(b,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(h,{variant:"ghost",size:"sm",class:"flex gap-1 items-center justify-start w-full",onClick:z=>c(B)},{default:e.withCtx(()=>{var z,Y;return[(z=B.action)!=null&&z.integration?(e.openBlock(),e.createBlock(y,{key:0,type:(Y=e.unref(d).find(R=>R.id===B.action.integration))==null?void 0:Y.type,class:"size-5"},null,8,["type"])):e.createCommentVNode("",!0),e.createElementVNode("p",hx,e.toDisplayString(B.label),1)]}),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(C,{class:"w-64"},{default:e.withCtx(()=>[e.createVNode(_,{inset:"",onClick:z=>p(B)},{default:e.withCtx(()=>g[1]||(g[1]=[e.createTextVNode(" Rename Action ",-1)])),_:2,__:[1]},1032,["onClick"]),e.createVNode(_,{inset:""},{default:e.withCtx(()=>g[2]||(g[2]=[e.createTextVNode(" View Data ",-1)])),_:1,__:[2]}),e.createVNode(_,{inset:"",onClick:z=>f(B)},{default:e.withCtx(()=>g[3]||(g[3]=[e.createTextVNode(" Execute Action ",-1)])),_:2,__:[3]},1032,["onClick"]),e.createVNode(_,{inset:"",variant:"destructive",onClick:z=>m(B)},{default:e.withCtx(()=>g[4]||(g[4]=[e.createTextVNode(" Remove Action ",-1)])),_:2,__:[4]},1032,["onClick"]),e.createVNode(k),e.createVNode(x,{"model-value":B.fireOnStart,"onUpdate:modelValue":z=>B.fireOnStart=z},{default:e.withCtx(()=>g[5]||(g[5]=[e.createTextVNode(" Fire on start ",-1)])),_:2,__:[5]},1032,["model-value","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024))),128))])])],64)}}}),_x={},yx={class:"flex flex-col gap-2 p-2"};function Vx(t,n){return e.openBlock(),e.createElementBlock("div",yx,n[0]||(n[0]=[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Version History",-1)]))}const Cx=Kt(_x,[["render",Vx]]),bx={class:"flex flex-col gap-2 p-2"},wx={class:"mb-2"},Nx={class:"flex flex-col gap-2"},kx={class:"relative w-full group"},Sx=e.defineComponent({__name:"Variables",setup(t){const n=e.inject("state");async function o(l){let a=crypto.randomUUID(),i="New variable",d=2;for(;n.variables.find(s=>s.name===i);)i="New variable "+d,d++;n.variables.push({id:a,type:l,name:i,defaultValue:""})}const r=[{value:"string",label:"String",icon:F.CaseSensitive,tint:"#e83f3f",defaultValue:""},{value:"number",label:"Number",icon:F.Hash,tint:"#2d9225",defaultValue:0},{value:"boolean",label:"Boolean",icon:F.ToggleLeft,tint:"#8e2592",defaultValue:!1},{value:"object",label:"Object",icon:F.Braces,tint:"#926025",defaultValue:{}},{value:"array",label:"Array",icon:F.Brackets,tint:"#005799",defaultValue:[]},{value:"date",label:"Date",icon:F.Calendar,tint:"#5b7f91",defaultValue:""}];return(l,a)=>{const i=e.resolveComponent("Button"),d=e.resolveComponent("DropdownMenuTrigger"),s=e.resolveComponent("DropdownMenuItem"),u=e.resolveComponent("DropdownMenuContent"),c=e.resolveComponent("DropdownMenu"),p=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",bx,[e.createElementVNode("div",null,[e.createElementVNode("div",wx,[a[1]||(a[1]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Variables ",-1)),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",size:"sm"},{default:e.withCtx(()=>a[0]||(a[0]=[e.createTextVNode(" Add new variable ",-1)])),_:1,__:[0]})]),_:1}),e.createVNode(u,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(r,m=>e.createVNode(s,{key:m.value,onClick:f=>o(m.value)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:m.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.icon),{class:"text-white"}))],4),e.createTextVNode(" "+e.toDisplayString(m.label),1)]),_:2},1032,["onClick"])),64))]),_:1})]),_:1})]),e.createElementVNode("div",Nx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).variables,m=>{var f,v;return e.openBlock(),e.createElementBlock("div",{key:m.id,class:"flex gap-2 items-center"},[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:(f=r.find(g=>g.value===m.type))==null?void 0:f.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((v=r.find(g=>g.value===m.type))==null?void 0:v.icon),{class:"text-white"}))],4),e.createElementVNode("div",kx,[e.createVNode(p,{placeholder:"Name",modelValue:m.name,"onUpdate:modelValue":g=>m.name=g,id:`variable_name_${m.id}`,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs rounded-xl pr-10"},null,8,["modelValue","onUpdate:modelValue","id"]),e.createVNode(i,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none hidden group-hover:flex"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Settings2))]),_:1})])])}),128))])])])}}}),Ko=e.defineComponent({__name:"Transformer",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.inject("allAvailableVariables"),r=t,l=n,a=e.computed({get(){return r.modelValue},set(i){l("update:modelValue",i)}});return(i,d)=>{const s=e.resolveComponent("Sandbox");return e.openBlock(),e.createBlock(s,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u),variables:e.unref(o),style:{"max-height":"200px"}},null,8,["modelValue","variables"])}}}),Ex={class:"flex flex-col gap-2 p-2"},Tx={class:"mb-2"},Dx={class:"flex flex-col gap-2"},Bx={class:"size-6 p-1 rounded flex items-center justify-center bg-[#646464]"},$x={class:"relative w-full group"},Ix=e.defineComponent({__name:"Transformers",setup(t){const n=e.inject("state");async function o(){let r=crypto.randomUUID(),l="New transformer",a=2;for(;n.transformers.find(i=>i.name===l);)l="New transformer "+a,a++;n.transformers.push({id:r,name:l,expression:'return ""'})}return(r,l)=>{const a=e.resolveComponent("Button"),i=e.resolveComponent("Input"),d=e.resolveComponent("PopoverTrigger"),s=e.resolveComponent("PopoverContent"),u=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",Ex,[e.createElementVNode("div",null,[e.createElementVNode("div",Tx,[l[1]||(l[1]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Transformers ",-1)),e.createVNode(a,{variant:"outline",size:"sm",onClick:o},{default:e.withCtx(()=>l[0]||(l[0]=[e.createTextVNode(" Add new transformer ",-1)])),_:1,__:[0]})]),e.createElementVNode("div",Dx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).transformers,c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:"flex gap-2 items-center"},[e.createElementVNode("div",Bx,[e.createVNode(e.unref(F.Calculator),{class:"text-white"})]),e.createElementVNode("div",$x,[e.createVNode(i,{placeholder:"Name",modelValue:c.name,"onUpdate:modelValue":p=>c.name=p,id:`transformer_name_${c.id}`,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs rounded-xl pr-10"},null,8,["modelValue","onUpdate:modelValue","id"]),e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(a,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none opacity-0 group-hover:opacity-100"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Settings2))]),_:1})]),_:1}),e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(Ko,{modelValue:c.expression,"onUpdate:modelValue":p=>c.expression=p},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)])]))),128))])])])}}}),Mx={class:"flex flex-col gap-2"},Px={class:"flex gap-2 items-center"},Rx=e.defineComponent({__name:"ApiActionVariables",async setup(t){let n,o;const r=e.inject("state"),{getProjectIntegrations:l}=J.useIntegrations(),{projectId:a}=J.useModuleRoute(),i=([n,o]=e.withAsyncContext(()=>l(a)),n=await n,o(),n);return(d,s)=>{const u=e.resolveComponent("IntegrationIcon"),c=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",null,[s[0]||(s[0]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Action variables",-1)),e.createElementVNode("div",Mx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r).apiActions,p=>(e.openBlock(),e.createBlock(c,{variant:"ghost",size:"sm",key:p.id,class:"flex gap-2 items-center justify-between"},{default:e.withCtx(()=>{var m;return[e.createElementVNode("div",Px,[e.createVNode(u,{type:(m=e.unref(i).find(f=>f.id===p.action.integration))==null?void 0:m.type,class:"size-5"},null,8,["type"]),e.createTextVNode(" "+e.toDisplayString(p.label),1)]),e.createVNode(e.unref(F.ChevronDown),{class:"size-4"})]}),_:2},1024))),128))])])}}}),Ax={class:"flex flex-col gap-2 p-2"},Fx={class:"flex flex-col gap-2"},Ox={class:"relative w-full group"},zx=e.defineComponent({__name:"RouteQueryParams",setup(t){const n=J.useModuleRoute(),o=[{value:"string",label:"String",icon:F.CaseSensitive,tint:"#e83f3f",defaultValue:""},{value:"number",label:"Number",icon:F.Hash,tint:"#2d9225",defaultValue:0},{value:"boolean",label:"Boolean",icon:F.ToggleLeft,tint:"#8e2592",defaultValue:!1},{value:"object",label:"Object",icon:F.Braces,tint:"#926025",defaultValue:{}},{value:"array",label:"Array",icon:F.Brackets,tint:"#005799",defaultValue:[]},{value:"date",label:"Date",icon:F.Calendar,tint:"#5b7f91",defaultValue:""}];function r(l){return l.replace(/-([a-z])/g,(a,i)=>i.toUpperCase())}return(l,a)=>{const i=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",Ax,[e.createElementVNode("div",null,[a[0]||(a[0]=e.createElementVNode("div",{class:"mb-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Route query params ")],-1)),e.createElementVNode("div",Fx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.entries(e.unref(n).query),([d,s])=>{var u,c;return e.openBlock(),e.createElementBlock("div",{key:r(d),class:"flex gap-2 items-center"},[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:(u=o.find(p=>p.value==="string"))==null?void 0:u.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((c=o.find(p=>p.value==="string"))==null?void 0:c.icon),{class:"text-white"}))],4),e.createElementVNode("div",Ox,[e.createTextVNode(e.toDisplayString(r(d)+" = "+s)+" ",1),e.createVNode(i,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none hidden group-hover:flex"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Settings2))]),_:1})])])}),128))])])])}}}),Lx={class:"flex flex-col gap-2 p-2"},jx=e.defineComponent({__name:"VariablesView",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o[0]||(o[0]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Variables")],-1)),e.createElementVNode("div",Lx,[e.createVNode(Sx),e.createVNode(Ix),e.createVNode(Rx),e.createVNode(zx)])],64))}}),Ux={key:0,class:"flex flex-col shrink-0 p-2 rounded-xl border bg-card overflow-y-auto w-[275px] @7xl/custom-dashboard:w-[325px]"},Hx=e.defineComponent({__name:"AdminToolbarView",props:{view:{type:String}},setup(t){return(n,o)=>t.view?(e.openBlock(),e.createElementBlock("div",Ux,[t.view==="new-element"?(e.openBlock(),e.createBlock(gx,{key:0})):t.view==="api-actions"?(e.openBlock(),e.createBlock(xx,{key:1})):t.view==="history"?(e.openBlock(),e.createBlock(Cx,{key:2})):t.view==="variables"?(e.openBlock(),e.createBlock(jx,{key:3})):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}}),Gx={class:"flex flex-col gap-2"},qx={class:"flex flex-col gap-1"},Wx=e.defineComponent({__name:"Checkbox",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input"),d=e.resolveComponent("Checkbox",!0);return e.openBlock(),e.createElementBlock("div",Gx,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=s=>e.unref(n).label=s)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":a[1]||(a[1]=s=>e.unref(n).text=s)},null,8,["modelValue"]),e.createElementVNode("div",qx,[a[3]||(a[3]=e.createElementVNode("p",{class:"text-sm text-muted"},"Default value",-1)),e.createElementVNode("div",null,[e.createVNode(d,{modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=s=>e.unref(n).defaultValue=s)},null,8,["modelValue"]),e.createTextVNode(" "+e.toDisplayString(e.unref(n).defaultValue?"TRUE":"FALSE"),1)])])])}}}),Zx={class:""},Yx=e.defineComponent({__name:"Label",setup(t){const n=e.inject("activeElement");return e.watch(n,()=>{(!n.value.formatType||!["static","functional"].includes(n.value.formatType))&&(n.value.formatType="static"),n.value.text||(n.value.text="")}),(o,r)=>{const l=e.resolveComponent("SegmentedControlButton"),a=e.resolveComponent("SegmentedControl"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",Zx,[e.createVNode(a,{modelValue:e.unref(n).formatType,"onUpdate:modelValue":r[0]||(r[0]=d=>e.unref(n).formatType=d),class:"w-full mb-6"},{default:e.withCtx(()=>[e.createVNode(l,{value:"static"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode(" Static ",-1)])),_:1,__:[3]}),e.createVNode(l,{value:"functional"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Functional ",-1)])),_:1,__:[4]})]),_:1},8,["modelValue"]),e.unref(n).formatType==="static"?(e.openBlock(),e.createBlock(i,{key:0,type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":r[1]||(r[1]=d=>e.unref(n).text=d)},null,8,["modelValue"])):e.unref(n).formatType==="functional"?(e.openBlock(),e.createBlock(Ko,{key:1,modelValue:e.unref(n).text,"onUpdate:modelValue":r[2]||(r[2]=d=>e.unref(n).text=d)},null,8,["modelValue"])):e.createCommentVNode("",!0)])}}}),Xx={class:"flex flex-col gap-2"},Jx={class:"flex items-center gap-2"},Kx={class:"flex flex-col gap-2 border border-ring rounded-xl p-2"},Qx=e.defineComponent({__name:"Button",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.inject("allAvailableVariables"),l=e.computed(()=>n.value.defaultValue);e.watch(l,()=>{o.elementValues[n.value.variableName]=l.value});const{showBuilder:a}=useIntegrationActionBuilder(),i=async()=>{n.value.onClickEvents||(n.value.onClickEvents=[]);let s=await a(r.value),u=s.serviceType+" - "+s.actionType,c=2;for(;n.value.onClickEvents.find(p=>p.label===u);)u=s.serviceType+" - "+s.actionType+" "+c,c++;n.value.onClickEvents.push({id:crypto.randomUUID(),label:u,action:s})},d=async s=>{let u=await a(r.value,s.action);n.value.onClickEvents.find(c=>c.id===s.id).action=u};return(s,u)=>{const c=e.resolveComponent("Input"),p=e.resolveComponent("SelectValue"),m=e.resolveComponent("SelectTrigger"),f=e.resolveComponent("SelectItem"),v=e.resolveComponent("SelectContent"),g=e.resolveComponent("Select"),h=e.resolveComponent("Button",!0);return e.openBlock(),e.createElementBlock("div",Xx,[e.createVNode(c,{type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":u[0]||(u[0]=y=>e.unref(n).text=y)},null,8,["modelValue"]),u[9]||(u[9]=e.createElementVNode("p",null,"Variant",-1)),e.createVNode(g,{modelValue:e.unref(n).variant,"onUpdate:modelValue":u[1]||(u[1]=y=>e.unref(n).variant=y)},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(p,{placeholder:"Select variant"})]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(f,{value:"default"},{default:e.withCtx(()=>u[2]||(u[2]=[e.createTextVNode("Primary",-1)])),_:1,__:[2]}),e.createVNode(f,{value:"secondary"},{default:e.withCtx(()=>u[3]||(u[3]=[e.createTextVNode("Secondary",-1)])),_:1,__:[3]}),e.createVNode(f,{value:"destructive"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Destructive",-1)])),_:1,__:[4]}),e.createVNode(f,{value:"outline"},{default:e.withCtx(()=>u[5]||(u[5]=[e.createTextVNode("Outline",-1)])),_:1,__:[5]}),e.createVNode(f,{value:"ghost"},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Ghost",-1)])),_:1,__:[6]}),e.createVNode(f,{value:"link"},{default:e.withCtx(()=>u[7]||(u[7]=[e.createTextVNode("Link",-1)])),_:1,__:[7]})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Jx,[u[8]||(u[8]=e.createElementVNode("p",null,"On Click",-1)),e.createVNode(h,{variant:"ghost",size:"icon",class:"rounded-xl",onClick:i},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"})]),_:1})]),e.createElementVNode("div",Kx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).onClickEvents,y=>(e.openBlock(),e.createBlock(h,{key:y.id,onClick:b=>d(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.label),1)]),_:2},1032,["onClick"]))),128))])])}}}),e_={class:""},t_=e.defineComponent({__name:"Text",setup(t){const n=e.inject("activeElement");return e.watch(n,()=>{(!n.value.formatType||!["static","functional"].includes(n.value.formatType))&&(n.value.formatType="static"),n.value.text||(n.value.text="")}),(o,r)=>{const l=e.resolveComponent("SegmentedControlButton"),a=e.resolveComponent("SegmentedControl"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",e_,[e.createVNode(a,{modelValue:e.unref(n).formatType,"onUpdate:modelValue":r[0]||(r[0]=d=>e.unref(n).formatType=d),class:"w-full mb-6"},{default:e.withCtx(()=>[e.createVNode(l,{value:"static"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode(" Static ",-1)])),_:1,__:[3]}),e.createVNode(l,{value:"functional"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Functional ",-1)])),_:1,__:[4]})]),_:1},8,["modelValue"]),e.unref(n).formatType==="static"?(e.openBlock(),e.createBlock(i,{key:0,type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":r[1]||(r[1]=d=>e.unref(n).text=d)},null,8,["modelValue"])):e.unref(n).formatType==="functional"?(e.openBlock(),e.createBlock(Ko,{key:1,modelValue:e.unref(n).text,"onUpdate:modelValue":r[2]||(r[2]=d=>e.unref(n).text=d)},null,8,["modelValue"])):e.createCommentVNode("",!0)])}}}),n_={class:"flex flex-col gap-2"},o_=e.defineComponent({__name:"Textarea",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",n_,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=d=>e.unref(n).label=d)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":a[1]||(a[1]=d=>e.unref(n).placeholder=d)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=d=>e.unref(n).defaultValue=d)},null,8,["modelValue"])])}}}),r_={class:"flex flex-col gap-2"},l_=e.defineComponent({__name:"Textfield",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",r_,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=d=>e.unref(n).label=d)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":a[1]||(a[1]=d=>e.unref(n).placeholder=d)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=d=>e.unref(n).defaultValue=d)},null,8,["modelValue"])])}}}),a_={class:"flex flex-col gap-2"},i_={class:"flex items-center justify-between gap-2"},s_={class:"flex flex-col gap-2"},u_=e.defineComponent({__name:"Select",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value});function l(){if(!n.value)return;n.value.options||(n.value.options=[]);let i="Option",d=1,s=i,u="option",c=1,p=u;for(;n.value.options.find(f=>f.value===p);)c++,p=u+c;for(;n.value.options.find(f=>f.label===s);)d++,s=i+d;let m=crypto.randomUUID();n.value.options.push({value:p,label:s,id:m})}function a(i){n.value&&(n.value.options=n.value.options.filter(d=>d.id!==i))}return(i,d)=>{const s=e.resolveComponent("Input"),u=e.resolveComponent("Button"),c=e.resolveComponent("PopoverTrigger"),p=e.resolveComponent("Label"),m=e.resolveComponent("PopoverContent"),f=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",a_,[e.createVNode(s,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":d[0]||(d[0]=v=>e.unref(n).label=v)},null,8,["modelValue"]),e.createVNode(s,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":d[1]||(d[1]=v=>e.unref(n).placeholder=v)},null,8,["modelValue"]),e.createElementVNode("div",i_,[d[3]||(d[3]=e.createElementVNode("p",null,"Options",-1)),e.createVNode(u,{variant:"ghost",class:"rounded-xl",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus))]),_:1})]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).options,v=>(e.openBlock(),e.createBlock(f,{key:v.id},{default:e.withCtx(()=>[e.createVNode(c,{class:"flex justify-between items-center gap-2 w-full"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.label)+" ",1),e.createVNode(e.unref(F.Ellipsis),{class:"size-4"})]),_:2},1024),e.createVNode(m,null,{default:e.withCtx(()=>[e.createElementVNode("div",s_,[e.createVNode(p,{for:"option.id + '_label'"},{default:e.withCtx(()=>d[4]||(d[4]=[e.createTextVNode("Label",-1)])),_:1,__:[4]}),e.createVNode(s,{type:"text",placeholder:"Label",id:v.id+"_label",modelValue:v.label,"onUpdate:modelValue":g=>v.label=g},null,8,["id","modelValue","onUpdate:modelValue"]),e.createVNode(p,{for:"option.id + '_value'"},{default:e.withCtx(()=>d[5]||(d[5]=[e.createTextVNode("Value",-1)])),_:1,__:[5]}),e.createVNode(s,{type:"text",placeholder:"Value",id:v.id+"_value",modelValue:v.value,"onUpdate:modelValue":g=>v.value=g},null,8,["id","modelValue","onUpdate:modelValue"])]),e.createVNode(u,{variant:"destructive",onClick:g=>a(v.id)},{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode("Remove",-1)])),_:2,__:[6]},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),e.createVNode(s,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":d[2]||(d[2]=v=>e.unref(n).defaultValue=v)},null,8,["modelValue"])])}}}),d_={class:"flex flex-col gap-2"},c_={class:"flex items-center justify-between gap-2"},p_={class:"flex flex-col gap-2"},f_=e.defineComponent({__name:"Radios",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value});function l(){if(!n.value)return;n.value.options||(n.value.options=[]);let i="Option",d=1,s=i,u="option",c=1,p=u;for(;n.value.options.find(f=>f.value===p);)c++,p=u+c;for(;n.value.options.find(f=>f.label===s);)d++,s=i+d;let m=crypto.randomUUID();n.value.options.push({value:p,label:s,id:m})}function a(i){n.value&&(n.value.options=n.value.options.filter(d=>d.id!==i))}return(i,d)=>{const s=e.resolveComponent("Input"),u=e.resolveComponent("SelectValue"),c=e.resolveComponent("SelectTrigger"),p=e.resolveComponent("SelectItem"),m=e.resolveComponent("SelectContent"),f=e.resolveComponent("Select"),v=e.resolveComponent("Button"),g=e.resolveComponent("PopoverTrigger"),h=e.resolveComponent("Label"),y=e.resolveComponent("PopoverContent"),b=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",d_,[e.createVNode(s,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":d[0]||(d[0]=_=>e.unref(n).label=_)},null,8,["modelValue"]),d[9]||(d[9]=e.createElementVNode("p",null,"Orientation",-1)),e.createVNode(f,{modelValue:e.unref(n).orientation,"onUpdate:modelValue":d[1]||(d[1]=_=>e.unref(n).orientation=_)},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u,{placeholder:"Select orientation"})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(p,{value:"vertical"},{default:e.withCtx(()=>d[3]||(d[3]=[e.createTextVNode("Vertical",-1)])),_:1,__:[3]}),e.createVNode(p,{value:"horizontal"},{default:e.withCtx(()=>d[4]||(d[4]=[e.createTextVNode("Horizontal",-1)])),_:1,__:[4]})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",c_,[d[5]||(d[5]=e.createElementVNode("p",null,"Options",-1)),e.createVNode(v,{variant:"ghost",class:"rounded-xl",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus))]),_:1})]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).options,_=>(e.openBlock(),e.createBlock(b,{key:_.id},{default:e.withCtx(()=>[e.createVNode(g,{class:"flex justify-between items-center gap-2 w-full"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(_.label)+" ",1),e.createVNode(e.unref(F.Ellipsis),{class:"size-4"})]),_:2},1024),e.createVNode(y,null,{default:e.withCtx(()=>[e.createElementVNode("div",p_,[e.createVNode(h,{for:"option.id + '_label'"},{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode("Label",-1)])),_:1,__:[6]}),e.createVNode(s,{type:"text",placeholder:"Label",id:_.id+"_label",modelValue:_.label,"onUpdate:modelValue":k=>_.label=k},null,8,["id","modelValue","onUpdate:modelValue"]),e.createVNode(h,{for:"option.id + '_value'"},{default:e.withCtx(()=>d[7]||(d[7]=[e.createTextVNode("Value",-1)])),_:1,__:[7]}),e.createVNode(s,{type:"text",placeholder:"Value",id:_.id+"_value",modelValue:_.value,"onUpdate:modelValue":k=>_.value=k},null,8,["id","modelValue","onUpdate:modelValue"])]),e.createVNode(v,{variant:"destructive",onClick:k=>a(_.id)},{default:e.withCtx(()=>d[8]||(d[8]=[e.createTextVNode("Remove",-1)])),_:2,__:[8]},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),e.createVNode(s,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":d[2]||(d[2]=_=>e.unref(n).defaultValue=_)},null,8,["modelValue"])])}}}),m_={Checkbox:Wx,Label:Yx,Button:Qx,Text:t_,Textfield:l_,Textarea:o_,Select:u_,Radios:f_},g_={class:"shrink-0 p-2 rounded-xl border bg-card w-[275px] @7xl/custom-dashboard:w-[325px]"},v_={class:"p-2"},h_=e.defineComponent({__name:"AdminElementEditor",emits:["removeItem"],setup(t,{emit:n}){const o=e.inject("activeElement"),r=e.inject("state"),l=n;function a(){l("removeItem",o.value.i),o.value=null}const i=e.ref("");e.watch(o,()=>{i.value=o.value.variableName||""});function d(){let s=o.value.variableName;o.value.variableName=i.value,r.elementValues[s]&&(r.elementValues[i.value]=r.elementValues[s],delete r.elementValues[s])}return e.onMounted(()=>{var s;i.value=((s=o.value)==null?void 0:s.variableName)||""}),(s,u)=>{const c=e.resolveComponent("Input"),p=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",g_,[e.createVNode(c,{type:"text",placeholder:"Variable Name",modelValue:i.value,"onUpdate:modelValue":u[0]||(u[0]=m=>i.value=m),onBlur:d,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs"},null,8,["modelValue"]),e.createElementVNode("p",v_,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m_)[e.unref(o).component])))]),u[3]||(u[3]=e.createElementVNode("p",null,"Visible",-1)),e.createVNode(Ko,{modelValue:e.unref(o).visibility,"onUpdate:modelValue":u[1]||(u[1]=m=>e.unref(o).visibility=m),placeholder:"true"},null,8,["modelValue"]),e.createVNode(p,{variant:"destructive",onClick:a},{default:e.withCtx(()=>u[2]||(u[2]=[e.createTextVNode("Remove",-1)])),_:1,__:[2]})])}}}),Pe={init:x_,document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function _n(){}function x_(t){const n=t;Pe.document=n.document,Pe.DocumentFragment=n.DocumentFragment||_n,Pe.SVGElement=n.SVGElement||_n,Pe.SVGSVGElement=n.SVGSVGElement||_n,Pe.SVGElementInstance=n.SVGElementInstance||_n,Pe.Element=n.Element||_n,Pe.HTMLElement=n.HTMLElement||Pe.Element,Pe.Event=n.Event,Pe.Touch=n.Touch||_n,Pe.PointerEvent=n.PointerEvent||n.MSPointerEvent}var Ki=t=>!!(t&&t.Window)&&t instanceof t.Window;let Qi,en;function es(t){Qi=t;const n=t.document.createTextNode("");n.ownerDocument!==t.document&&typeof t.wrap=="function"&&t.wrap(n)===n&&(t=t.wrap(t)),en=t}typeof window<"u"&&window&&es(window);function gn(t){return Ki(t)?t:(t.ownerDocument||t).defaultView||en.window}const __=t=>t===en||Ki(t),y_=t=>Qo(t)&&t.nodeType===11,Qo=t=>!!t&&typeof t=="object",ts=t=>typeof t=="function",V_=t=>typeof t=="number",C_=t=>typeof t=="boolean",b_=t=>typeof t=="string",w_=t=>{if(!t||typeof t!="object")return!1;const n=gn(t)||en;return/object|function/.test(typeof Element)?t instanceof Element||t instanceof n.Element:t.nodeType===1&&typeof t.nodeName=="string"},N_=t=>Qo(t)&&!!t.constructor&&/function Object\b/.test(t.constructor.toString()),k_=t=>Qo(t)&&typeof t.length<"u"&&ts(t.splice);var Z={window:__,docFrag:y_,object:Qo,func:ts,number:V_,bool:C_,string:b_,element:w_,plainObject:N_,array:k_};const ze={init:S_,supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null};function S_(t){const n=Pe.Element,o=t.navigator||{};ze.supportsTouch="ontouchstart"in t||Z.func(t.DocumentTouch)&&Pe.document instanceof t.DocumentTouch,ze.supportsPointerEvent=o.pointerEnabled!==!1&&!!Pe.PointerEvent,ze.isIOS=/iP(hone|od|ad)/.test(o.platform),ze.isIOS7=/iP(hone|od|ad)/.test(o.platform)&&/OS 7[^\d]/.test(o.appVersion),ze.isIe9=/MSIE 9/.test(o.userAgent),ze.isOperaMobile=o.appName==="Opera"&&ze.supportsTouch&&/Presto/.test(o.userAgent),ze.prefixedMatchesSelector="matches"in n.prototype?"matches":"webkitMatchesSelector"in n.prototype?"webkitMatchesSelector":"mozMatchesSelector"in n.prototype?"mozMatchesSelector":"oMatchesSelector"in n.prototype?"oMatchesSelector":"msMatchesSelector",ze.pEventTypes=ze.supportsPointerEvent?Pe.PointerEvent===t.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,ze.wheelEvent=Pe.document&&"onmousewheel"in Pe.document?"mousewheel":"wheel"}const ns=(t,n)=>{for(const o of n)t.push(o);return t},os=t=>ns([],t),er=(t,n)=>{for(let o=0;o<t.length;o++)if(n(t[o],o,t))return o;return-1},ko=(t,n)=>t[er(t,n)];function Mn(t){const n={};for(const o in t){const r=t[o];Z.plainObject(r)?n[o]=Mn(r):Z.array(r)?n[o]=os(r):n[o]=r}return n}function me(t,n){for(const o in n)t[o]=n[o];return t}let va=0,Dt,rn;function E_(t){if(Dt=t.requestAnimationFrame,rn=t.cancelAnimationFrame,!Dt){const n=["ms","moz","webkit","o"];for(const o of n)Dt=t[`${o}RequestAnimationFrame`],rn=t[`${o}CancelAnimationFrame`]||t[`${o}CancelRequestAnimationFrame`]}Dt=Dt&&Dt.bind(t),rn=rn&&rn.bind(t),Dt||(Dt=n=>{const o=Date.now(),r=Math.max(0,16-(o-va)),l=t.setTimeout(()=>{n(o+r)},r);return va=o+r,l},rn=n=>clearTimeout(n))}var Vn={request:t=>Dt(t),cancel:t=>rn(t),init:E_};function sn(t,n){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:l=>!0,r=arguments.length>3?arguments[3]:void 0;if(r=r||{},Z.string(t)&&t.search(" ")!==-1&&(t=ha(t)),Z.array(t))return t.forEach(l=>sn(l,n,o,r)),r;if(Z.object(t)&&(n=t,t=""),Z.func(n)&&o(t))r[t]=r[t]||[],r[t].push(n);else if(Z.array(n))for(const l of n)sn(t,l,o,r);else if(Z.object(n))for(const l in n){const a=ha(l).map(i=>`${t}${i}`);sn(a,n[l],o,r)}return r}function ha(t){return t.trim().split(/ +/)}function xa(t,n){for(const o of n){if(t.immediatePropagationStopped)break;o(t)}}class rs{constructor(n){this.options=void 0,this.types={},this.propagationStopped=!1,this.immediatePropagationStopped=!1,this.global=void 0,this.options=me({},n||{})}fire(n){let o;const r=this.global;(o=this.types[n.type])&&xa(n,o),!n.propagationStopped&&r&&(o=r[n.type])&&xa(n,o)}on(n,o){const r=sn(n,o);for(n in r)this.types[n]=ns(this.types[n]||[],r[n])}off(n,o){const r=sn(n,o);for(n in r){const l=this.types[n];if(!(!l||!l.length))for(const a of r[n]){const i=l.indexOf(a);i!==-1&&l.splice(i,1)}}}getRect(n){return null}}function un(t,n){if(t.contains)return t.contains(n);for(;n;){if(n===t)return!0;n=n.parentNode}return!1}function ls(t,n){for(;Z.element(t);){if(vn(t,n))return t;t=tn(t)}return null}function tn(t){let n=t.parentNode;if(Z.docFrag(n)){for(;(n=n.host)&&Z.docFrag(n););return n}return n}function vn(t,n){return en!==Qi&&(n=n.replace(/\/deep\//g," ")),t[ze.prefixedMatchesSelector](n)}function Yr(t,n,o){for(;Z.element(t);){if(vn(t,n))return!0;if(t=tn(t),t===o)return vn(t,n)}return!1}function _a(t){return t.correspondingUseElement||t}function T_(t){return t=t||en,{x:t.scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function hl(t){const n=t instanceof Pe.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return n&&{left:n.left,right:n.right,top:n.top,bottom:n.bottom,width:n.width||n.right-n.left,height:n.height||n.bottom-n.top}}function xl(t){const n=hl(t);if(!ze.isIOS7&&n){const o=T_(gn(t));n.left+=o.x,n.right+=o.x,n.top+=o.y,n.bottom+=o.y}return n}function ya(t){return Z.string(t)?(Pe.document.querySelector(t),!0):!1}const D_=["webkit","moz"];function as(t,n){t.__set||(t.__set={});for(const o in n)D_.some(r=>o.indexOf(r)===0)||typeof t[o]!="function"&&o!=="__set"&&Object.defineProperty(t,o,{get(){return o in t.__set?t.__set[o]:t.__set[o]=n[o]},set(r){t.__set[o]=r},configurable:!0});return t}var tr=(t,n)=>Math.sqrt(t*t+n*n);function Nr(t,n){t.page=t.page||{},t.page.x=n.page.x,t.page.y=n.page.y,t.client=t.client||{},t.client.x=n.client.x,t.client.y=n.client.y,t.timeStamp=n.timeStamp}function B_(t,n,o){t.page.x=o.page.x-n.page.x,t.page.y=o.page.y-n.page.y,t.client.x=o.client.x-n.client.x,t.client.y=o.client.y-n.client.y,t.timeStamp=o.timeStamp-n.timeStamp}function $_(t,n){const o=Math.max(n.timeStamp/1e3,.001);t.page.x=n.page.x/o,t.page.y=n.page.y/o,t.client.x=n.client.x/o,t.client.y=n.client.y/o,t.timeStamp=o}function I_(t){t.page.x=0,t.page.y=0,t.client.x=0,t.client.y=0}function is(t){return t instanceof Pe.Event||t instanceof Pe.Touch}function Oo(t,n,o){return o=o||{},t=t||"page",o.x=n[t+"X"],o.y=n[t+"Y"],o}function M_(t,n){return n=n||{x:0,y:0},ze.isOperaMobile&&is(t)?(Oo("screen",t,n),n.x+=window.scrollX,n.y+=window.scrollY):Oo("page",t,n),n}function P_(t,n){return n=n||{},ze.isOperaMobile&&is(t)?Oo("screen",t,n):Oo("client",t,n),n}function zo(t){return Z.number(t.pointerId)?t.pointerId:t.identifier}function R_(t,n,o){const r=n.length>1?ss(n):n[0];M_(r,t.page),P_(r,t.client),t.timeStamp=o}function _l(t){const n=[];return Z.array(t)?(n[0]=t[0],n[1]=t[1]):t.type==="touchend"?t.touches.length===1?(n[0]=t.touches[0],n[1]=t.changedTouches[0]):t.touches.length===0&&(n[0]=t.changedTouches[0],n[1]=t.changedTouches[1]):(n[0]=t.touches[0],n[1]=t.touches[1]),n}function ss(t){const n={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0};for(const o of t)for(const r in n)n[r]+=o[r];for(const o in n)n[o]/=t.length;return n}function A_(t){if(!t.length)return null;const n=_l(t),o=Math.min(n[0].pageX,n[1].pageX),r=Math.min(n[0].pageY,n[1].pageY),l=Math.max(n[0].pageX,n[1].pageX),a=Math.max(n[0].pageY,n[1].pageY);return{x:o,y:r,left:o,top:r,right:l,bottom:a,width:l-o,height:a-r}}function F_(t,n){const o=n+"X",r=n+"Y",l=_l(t),a=l[0][o]-l[1][o],i=l[0][r]-l[1][r];return tr(a,i)}function O_(t,n){const o=n+"X",r=n+"Y",l=_l(t),a=l[1][o]-l[0][o],i=l[1][r]-l[0][r];return 180*Math.atan2(i,a)/Math.PI}function z_(t){return Z.string(t.pointerType)?t.pointerType:Z.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type||"")||t instanceof Pe.Touch?"touch":"mouse"}function us(t){const n=Z.func(t.composedPath)?t.composedPath():t.path;return[_a(n?n[0]:t.target),_a(t.currentTarget)]}function On(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}}function L_(t){var n;const o=[],r={},l=[],a={add:i,remove:d,addDelegate:s,removeDelegate:u,delegateListener:c,delegateUseCapture:p,delegatedEvents:r,documents:l,targets:o,supportsOptions:!1,supportsPassive:!1};(n=t.document)==null||n.createElement("div").addEventListener("test",null,{get capture(){return a.supportsOptions=!0},get passive(){return a.supportsPassive=!0}}),t.events=a;function i(m,f,v,g){if(!m.addEventListener)return;const h=zn(g);let y=ko(o,b=>b.eventTarget===m);y||(y={eventTarget:m,events:{}},o.push(y)),y.events[f]||(y.events[f]=[]),ko(y.events[f],b=>b.func===v&&bo(b.options,h))||(m.addEventListener(f,v,a.supportsOptions?h:h.capture),y.events[f].push({func:v,options:h}))}function d(m,f,v,g){if(!m.addEventListener||!m.removeEventListener)return;const h=er(o,k=>k.eventTarget===m),y=o[h];if(!y||!y.events)return;if(f==="all"){for(f in y.events)y.events.hasOwnProperty(f)&&d(m,f,"all");return}let b=!1;const _=y.events[f];if(_)if(v==="all"){for(let k=_.length-1;k>=0;k--){const x=_[k];d(m,f,x.func,x.options)}return}else{const k=zn(g);for(let x=0;x<_.length;x++){const C=_[x];if(C.func===v&&bo(C.options,k)){m.removeEventListener(f,v,a.supportsOptions?k:k.capture),_.splice(x,1),_.length===0&&(delete y.events[f],b=!0);break}}}b&&!Object.keys(y.events).length&&o.splice(h,1)}function s(m,f,v,g,h){const y=zn(h);if(!r[v]){r[v]=[];for(const k of l)i(k,v,c),i(k,v,p,!0)}const b=r[v];let _=ko(b,k=>k.selector===m&&k.context===f);_||(_={selector:m,context:f,listeners:[]},b.push(_)),_.listeners.push({func:g,options:y})}function u(m,f,v,g,h){const y=zn(h),b=r[v];let _=!1,k;if(b)for(k=b.length-1;k>=0;k--){const x=b[k];if(x.selector===m&&x.context===f){const{listeners:C}=x;for(let N=C.length-1;N>=0;N--){const B=C[N];if(B.func===g&&bo(B.options,y)){C.splice(N,1),C.length||(b.splice(k,1),d(f,v,c),d(f,v,p,!0)),_=!0;break}}if(_)break}}}function c(m,f){const v=zn(f),g=new j_(m),h=r[m.type],[y]=us(m);let b=y;for(;Z.element(b);){for(let _=0;_<h.length;_++){const k=h[_],{selector:x,context:C}=k;if(vn(b,x)&&un(C,y)&&un(C,b)){const{listeners:N}=k;g.currentTarget=b;for(const B of N)bo(B.options,v)&&B.func(g)}}b=tn(b)}}function p(m){return c.call(this,m,!0)}return a}class j_{constructor(n){this.currentTarget=void 0,this.originalEvent=void 0,this.type=void 0,this.originalEvent=n,as(this,n)}preventOriginalDefault(){this.originalEvent.preventDefault()}stopPropagation(){this.originalEvent.stopPropagation()}stopImmediatePropagation(){this.originalEvent.stopImmediatePropagation()}}function zn(t){return Z.object(t)?{capture:!!t.capture,passive:!!t.passive}:{capture:!!t,passive:!1}}function bo(t,n){return t===n?!0:typeof t=="boolean"?!!n.capture===t&&!n.passive:!!t.capture==!!n.capture&&!!t.passive==!!n.passive}var U_={id:"events",install:L_};const H_=function(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):Z.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault};function G_(t,n,o){const r=t.options.preventDefault;if(r!=="never"){if(r==="always"){o.preventDefault();return}if(n.events.supportsPassive&&/^touch(start|move)$/.test(o.type)){const l=gn(o.target).document,a=n.getDocOptions(l);if(!(a&&a.events)||a.events.passive!==!1)return}/^(mouse|pointer|touch)*(down|start)/i.test(o.type)||Z.element(o.target)&&vn(o.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||o.preventDefault()}}function q_(t){let{interaction:n,event:o}=t;n.interactable&&n.interactable.checkAndPreventDefault(o)}function W_(t){const{Interactable:n}=t;n.prototype.preventDefault=H_,n.prototype.checkAndPreventDefault=function(o){return G_(this,t,o)},t.interactions.docEvents.push({type:"dragstart",listener(o){for(const r of t.interactions.list)if(r.element&&(r.element===o.target||un(r.element,o.target))){r.interactable.checkAndPreventDefault(o);return}}})}var Z_={id:"core/interactablePreventDefault",install:W_,listeners:["down","move","up","cancel"].reduce((t,n)=>(t[`interactions:${n}`]=q_,t),{})};function io(t,n){let o=!1;return function(){return o||(en.console.warn(n),o=!0),t.apply(this,arguments)}}function ds(t,n){return t.name=n.name,t.axis=n.axis,t.edges=n.edges,t}function cs(t,n,o){return t==="parent"?tn(o):t==="self"?n.getRect(o):ls(o,t)}function so(t,n,o,r){let l=t;return Z.string(l)?l=cs(l,n,o):Z.func(l)&&(l=l(...r)),Z.element(l)&&(l=xl(l)),l}function nr(t){return t&&{x:"x"in t?t.x:t.left,y:"y"in t?t.y:t.top}}function Y_(t){return t&&!("left"in t&&"top"in t)&&(t=me({},t),t.left=t.x||0,t.top=t.y||0,t.right=t.right||t.left+t.width,t.bottom=t.bottom||t.top+t.height),t}function Va(t){return t&&!("x"in t&&"y"in t)&&(t=me({},t),t.x=t.left||0,t.y=t.top||0,t.width=t.width||(t.right||0)-t.x,t.height=t.height||(t.bottom||0)-t.y),t}function yl(t,n,o){t.left&&(n.left+=o.x),t.right&&(n.right+=o.x),t.top&&(n.top+=o.y),t.bottom&&(n.bottom+=o.y),n.width=n.right-n.left,n.height=n.bottom-n.top}function Vl(t,n,o){const r=o&&t.options[o],l=r&&r.origin||t.options.origin,a=so(l,t,n,[t&&n]);return nr(a)||{x:0,y:0}}class ps{constructor(n){this.immediatePropagationStopped=!1,this.propagationStopped=!1,this._interaction=n}preventDefault(){}stopPropagation(){this.propagationStopped=!0}stopImmediatePropagation(){this.immediatePropagationStopped=this.propagationStopped=!0}}Object.defineProperty(ps.prototype,"interaction",{get(){return this._interaction._proxy},set(){}});const fs={base:{preventDefault:"auto",deltaSource:"page"},perAction:{enabled:!1,origin:{x:0,y:0}},actions:{}};class Cl extends ps{constructor(n,o,r,l,a,i,d){super(n),this.relatedTarget=null,this.screenX=void 0,this.screenY=void 0,this.button=void 0,this.buttons=void 0,this.ctrlKey=void 0,this.shiftKey=void 0,this.altKey=void 0,this.metaKey=void 0,this.page=void 0,this.client=void 0,this.delta=void 0,this.rect=void 0,this.x0=void 0,this.y0=void 0,this.t0=void 0,this.dt=void 0,this.duration=void 0,this.clientX0=void 0,this.clientY0=void 0,this.velocity=void 0,this.speed=void 0,this.swipe=void 0,this.axes=void 0,this.preEnd=void 0,a=a||n.element;const s=n.interactable,u=(s&&s.options||fs).deltaSource,c=Vl(s,a,r),p=l==="start",m=l==="end",f=p?this:n.prevEvent,v=p?n.coords.start:m?{page:f.page,client:f.client,timeStamp:n.coords.cur.timeStamp}:n.coords.cur;this.page=me({},v.page),this.client=me({},v.client),this.rect=me({},n.rect),this.timeStamp=v.timeStamp,m||(this.page.x-=c.x,this.page.y-=c.y,this.client.x-=c.x,this.client.y-=c.y),this.ctrlKey=o.ctrlKey,this.altKey=o.altKey,this.shiftKey=o.shiftKey,this.metaKey=o.metaKey,this.button=o.button,this.buttons=o.buttons,this.target=a,this.currentTarget=a,this.preEnd=i,this.type=d||r+(l||""),this.interactable=s,this.t0=p?n.pointers[n.pointers.length-1].downTime:f.t0,this.x0=n.coords.start.page.x-c.x,this.y0=n.coords.start.page.y-c.y,this.clientX0=n.coords.start.client.x-c.x,this.clientY0=n.coords.start.client.y-c.y,p||m?this.delta={x:0,y:0}:this.delta={x:this[u].x-f[u].x,y:this[u].y-f[u].y},this.dt=n.coords.delta.timeStamp,this.duration=this.timeStamp-this.t0,this.velocity=me({},n.coords.velocity[u]),this.speed=tr(this.velocity.x,this.velocity.y),this.swipe=m||l==="inertiastart"?this.getSwipe():null}getSwipe(){const n=this._interaction;if(n.prevEvent.speed<600||this.timeStamp-n.prevEvent.timeStamp>150)return null;let o=180*Math.atan2(n.prevEvent.velocityY,n.prevEvent.velocityX)/Math.PI;const r=22.5;o<0&&(o+=360);const l=135-r<=o&&o<225+r,a=225-r<=o&&o<315+r,i=!l&&(315-r<=o||o<45+r),d=!a&&45-r<=o&&o<135+r;return{up:a,down:d,left:l,right:i,angle:o,speed:n.prevEvent.speed,velocity:{x:n.prevEvent.velocityX,y:n.prevEvent.velocityY}}}preventDefault(){}stopImmediatePropagation(){this.immediatePropagationStopped=this.propagationStopped=!0}stopPropagation(){this.propagationStopped=!0}}Object.defineProperties(Cl.prototype,{pageX:{get(){return this.page.x},set(t){this.page.x=t}},pageY:{get(){return this.page.y},set(t){this.page.y=t}},clientX:{get(){return this.client.x},set(t){this.client.x=t}},clientY:{get(){return this.client.y},set(t){this.client.y=t}},dx:{get(){return this.delta.x},set(t){this.delta.x=t}},dy:{get(){return this.delta.y},set(t){this.delta.y=t}},velocityX:{get(){return this.velocity.x},set(t){this.velocity.x=t}},velocityY:{get(){return this.velocity.y},set(t){this.velocity.y=t}}});class X_{constructor(n,o,r,l,a){this.id=void 0,this.pointer=void 0,this.event=void 0,this.downTime=void 0,this.downTarget=void 0,this.id=n,this.pointer=o,this.event=r,this.downTime=l,this.downTarget=a}}let J_=function(t){return t.interactable="",t.element="",t.prepared="",t.pointerIsDown="",t.pointerWasMoved="",t._proxy="",t}({}),K_=function(t){return t.start="",t.move="",t.end="",t.stop="",t.interacting="",t}({}),Q_=0;class ey{get pointerMoveTolerance(){return 1}constructor(n){this.interactable=null,this.element=null,this.rect=null,this._rects=void 0,this.edges=null,this._scopeFire=void 0,this.prepared={name:null,axis:null,edges:null},this.pointerType=void 0,this.pointers=[],this.downEvent=null,this.downPointer={},this._latestPointer={pointer:null,event:null,eventTarget:null},this.prevEvent=null,this.pointerIsDown=!1,this.pointerWasMoved=!1,this._interacting=!1,this._ending=!1,this._stopped=!0,this._proxy=void 0,this.simulation=null,this.doMove=io(function(a){this.move(a)},"The interaction.doMove() method has been renamed to interaction.move()"),this.coords={start:On(),prev:On(),cur:On(),delta:On(),velocity:On()},this._id=Q_++;let{pointerType:o,scopeFire:r}=n;this._scopeFire=r,this.pointerType=o;const l=this;this._proxy={};for(const a in J_)Object.defineProperty(this._proxy,a,{get(){return l[a]}});for(const a in K_)Object.defineProperty(this._proxy,a,{value:function(){return l[a](...arguments)}});this._scopeFire("interactions:new",{interaction:this})}pointerDown(n,o,r){const l=this.updatePointer(n,o,r,!0),a=this.pointers[l];this._scopeFire("interactions:down",{pointer:n,event:o,eventTarget:r,pointerIndex:l,pointerInfo:a,type:"down",interaction:this})}start(n,o,r){return this.interacting()||!this.pointerIsDown||this.pointers.length<(n.name==="gesture"?2:1)||!o.options[n.name].enabled?!1:(ds(this.prepared,n),this.interactable=o,this.element=r,this.rect=o.getRect(r),this.edges=this.prepared.edges?me({},this.prepared.edges):{left:!0,right:!0,top:!0,bottom:!0},this._stopped=!1,this._interacting=this._doPhase({interaction:this,event:this.downEvent,phase:"start"})&&!this._stopped,this._interacting)}pointerMove(n,o,r){!this.simulation&&!(this.modification&&this.modification.endResult)&&this.updatePointer(n,o,r,!1);const l=this.coords.cur.page.x===this.coords.prev.page.x&&this.coords.cur.page.y===this.coords.prev.page.y&&this.coords.cur.client.x===this.coords.prev.client.x&&this.coords.cur.client.y===this.coords.prev.client.y;let a,i;this.pointerIsDown&&!this.pointerWasMoved&&(a=this.coords.cur.client.x-this.coords.start.client.x,i=this.coords.cur.client.y-this.coords.start.client.y,this.pointerWasMoved=tr(a,i)>this.pointerMoveTolerance);const d=this.getPointerIndex(n),s={pointer:n,pointerIndex:d,pointerInfo:this.pointers[d],event:o,type:"move",eventTarget:r,dx:a,dy:i,duplicate:l,interaction:this};l||$_(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),!l&&!this.simulation&&(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&Nr(this.coords.prev,this.coords.cur))}move(n){(!n||!n.event)&&I_(this.coords.delta),n=me({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},n||{}),n.phase="move",this._doPhase(n)}pointerUp(n,o,r,l){let a=this.getPointerIndex(n);a===-1&&(a=this.updatePointer(n,o,r,!1));const i=/cancel$/i.test(o.type)?"cancel":"up";this._scopeFire(`interactions:${i}`,{pointer:n,pointerIndex:a,pointerInfo:this.pointers[a],event:o,eventTarget:r,type:i,curEventTarget:l,interaction:this}),this.simulation||this.end(o),this.removePointer(n,o)}documentBlur(n){this.end(n),this._scopeFire("interactions:blur",{event:n,type:"blur",interaction:this})}end(n){this._ending=!0,n=n||this._latestPointer.event;let o;this.interacting()&&(o=this._doPhase({event:n,interaction:this,phase:"end"})),this._ending=!1,o===!0&&this.stop()}currentAction(){return this._interacting?this.prepared.name:null}interacting(){return this._interacting}stop(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}getPointerIndex(n){const o=zo(n);return this.pointerType==="mouse"||this.pointerType==="pen"?this.pointers.length-1:er(this.pointers,r=>r.id===o)}getPointerInfo(n){return this.pointers[this.getPointerIndex(n)]}updatePointer(n,o,r,l){const a=zo(n);let i=this.getPointerIndex(n),d=this.pointers[i];return l=l===!1?!1:l||/(down|start)$/i.test(o.type),d?d.pointer=n:(d=new X_(a,n,o,null,null),i=this.pointers.length,this.pointers.push(d)),R_(this.coords.cur,this.pointers.map(s=>s.pointer),this._now()),B_(this.coords.delta,this.coords.prev,this.coords.cur),l&&(this.pointerIsDown=!0,d.downTime=this.coords.cur.timeStamp,d.downTarget=r,as(this.downPointer,n),this.interacting()||(Nr(this.coords.start,this.coords.cur),Nr(this.coords.prev,this.coords.cur),this.downEvent=o,this.pointerWasMoved=!1)),this._updateLatestPointer(n,o,r),this._scopeFire("interactions:update-pointer",{pointer:n,event:o,eventTarget:r,down:l,pointerInfo:d,pointerIndex:i,interaction:this}),i}removePointer(n,o){const r=this.getPointerIndex(n);if(r===-1)return;const l=this.pointers[r];this._scopeFire("interactions:remove-pointer",{pointer:n,event:o,eventTarget:null,pointerIndex:r,pointerInfo:l,interaction:this}),this.pointers.splice(r,1),this.pointerIsDown=!1}_updateLatestPointer(n,o,r){this._latestPointer.pointer=n,this._latestPointer.event=o,this._latestPointer.eventTarget=r}destroy(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}_createPreparedEvent(n,o,r,l){return new Cl(this,n,this.prepared.name,o,this.element,r,l)}_fireEvent(n){var o;(o=this.interactable)==null||o.fire(n),(!this.prevEvent||n.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=n)}_doPhase(n){const{event:o,phase:r,preEnd:l,type:a}=n,{rect:i}=this;if(i&&r==="move"&&(yl(this.edges,i,this.coords.delta[this.interactable.options.deltaSource]),i.width=i.right-i.left,i.height=i.bottom-i.top),this._scopeFire(`interactions:before-action-${r}`,n)===!1)return!1;const d=n.iEvent=this._createPreparedEvent(o,r,l,a);return this._scopeFire(`interactions:action-${r}`,n),r==="start"&&(this.prevEvent=d),this._fireEvent(d),this._scopeFire(`interactions:after-action-${r}`,n),!0}_now(){return Date.now()}}const Xr={methodOrder:["simulationResume","mouseOrPen","hasPointer","idle"],search(t){for(const n of Xr.methodOrder){const o=Xr[n](t);if(o)return o}return null},simulationResume(t){let{pointerType:n,eventType:o,eventTarget:r,scope:l}=t;if(!/down|start/i.test(o))return null;for(const a of l.interactions.list){let i=r;if(a.simulation&&a.simulation.allowResume&&a.pointerType===n)for(;i;){if(i===a.element)return a;i=tn(i)}}return null},mouseOrPen(t){let{pointerId:n,pointerType:o,eventType:r,scope:l}=t;if(o!=="mouse"&&o!=="pen")return null;let a;for(const i of l.interactions.list)if(i.pointerType===o){if(i.simulation&&!Ca(i,n))continue;if(i.interacting())return i;a||(a=i)}if(a)return a;for(const i of l.interactions.list)if(i.pointerType===o&&!(/down/i.test(r)&&i.simulation))return i;return null},hasPointer(t){let{pointerId:n,scope:o}=t;for(const r of o.interactions.list)if(Ca(r,n))return r;return null},idle(t){let{pointerType:n,scope:o}=t;for(const r of o.interactions.list){if(r.pointers.length===1){const l=r.interactable;if(l&&!(l.options.gesture&&l.options.gesture.enabled))continue}else if(r.pointers.length>=2)continue;if(!r.interacting()&&n===r.pointerType)return r}return null}};function Ca(t,n){return t.pointers.some(o=>{let{id:r}=o;return r===n})}const ms=["pointerDown","pointerMove","pointerUp","updatePointer","removePointer","windowBlur"];function ty(t){const n={};for(const a of ms)n[a]=gs(a,t);const o=ze.pEventTypes;let r;Pe.PointerEvent?r=[{type:o.down,listener:l},{type:o.down,listener:n.pointerDown},{type:o.move,listener:n.pointerMove},{type:o.up,listener:n.pointerUp},{type:o.cancel,listener:n.pointerUp}]:r=[{type:"mousedown",listener:n.pointerDown},{type:"mousemove",listener:n.pointerMove},{type:"mouseup",listener:n.pointerUp},{type:"touchstart",listener:l},{type:"touchstart",listener:n.pointerDown},{type:"touchmove",listener:n.pointerMove},{type:"touchend",listener:n.pointerUp},{type:"touchcancel",listener:n.pointerUp}],r.push({type:"blur",listener(a){for(const i of t.interactions.list)i.documentBlur(a)}}),t.prevTouchTime=0,t.Interaction=class extends ey{get pointerMoveTolerance(){return t.interactions.pointerMoveTolerance}set pointerMoveTolerance(a){t.interactions.pointerMoveTolerance=a}_now(){return t.now()}},t.interactions={list:[],new(a){a.scopeFire=(d,s)=>t.fire(d,s);const i=new t.Interaction(a);return t.interactions.list.push(i),i},listeners:n,docEvents:r,pointerMoveTolerance:1};function l(){for(const a of t.interactions.list)if(!(!a.pointerIsDown||a.pointerType!=="touch"||a._interacting))for(const i of a.pointers)t.documents.some(d=>{let{doc:s}=d;return un(s,i.downTarget)})||a.removePointer(i.pointer,i.event)}t.usePlugin(Z_)}function gs(t,n){return function(o){const r=n.interactions.list,l=z_(o),[a,i]=us(o),d=[];if(/^touch/.test(o.type)){n.prevTouchTime=n.now();for(const s of o.changedTouches){const u=s,c=zo(u),p={pointer:u,pointerId:c,pointerType:l,eventType:o.type,eventTarget:a,curEventTarget:i,scope:n},m=ba(p);d.push([p.pointer,p.eventTarget,p.curEventTarget,m])}}else{let s=!1;if(!ze.supportsPointerEvent&&/mouse/.test(o.type)){for(let u=0;u<r.length&&!s;u++)s=r[u].pointerType!=="mouse"&&r[u].pointerIsDown;s=s||n.now()-n.prevTouchTime<500||o.timeStamp===0}if(!s){const u={pointer:o,pointerId:zo(o),pointerType:l,eventType:o.type,curEventTarget:i,eventTarget:a,scope:n},c=ba(u);d.push([u.pointer,u.eventTarget,u.curEventTarget,c])}}for(const[s,u,c,p]of d)p[t](s,o,u,c)}}function ba(t){const{pointerType:n,scope:o}=t,r={interaction:Xr.search(t),searchDetails:t};return o.fire("interactions:find",r),r.interaction||o.interactions.new({pointerType:n})}function kr(t,n){let{doc:o,scope:r,options:l}=t;const{interactions:{docEvents:a},events:i}=r,d=i[n];r.browser.isIOS&&!l.events&&(l.events={passive:!1});for(const u in i.delegatedEvents)d(o,u,i.delegateListener),d(o,u,i.delegateUseCapture,!0);const s=l&&l.events;for(const{type:u,listener:c}of a)d(o,u,c,s)}const ny={id:"core/interactions",install:ty,listeners:{"scope:add-document":t=>kr(t,"add"),"scope:remove-document":t=>kr(t,"remove"),"interactable:unset":(t,n)=>{let{interactable:o}=t;for(let r=n.interactions.list.length-1;r>=0;r--){const l=n.interactions.list[r];l.interactable===o&&(l.stop(),n.fire("interactions:destroy",{interaction:l}),l.destroy(),n.interactions.list.length>2&&n.interactions.list.splice(r,1))}}},onDocSignal:kr,doOnInteractions:gs,methodNames:ms};function uo(t,n){if(n.phaselessTypes[t])return!0;for(const o in n.map)if(t.indexOf(o)===0&&t.substr(o.length)in n.phases)return!0;return!1}var jt=function(t){return t[t.On=0]="On",t[t.Off=1]="Off",t}(jt||{});class oy{get _defaults(){return{base:{},perAction:{},actions:{}}}constructor(n,o,r,l){this.target=void 0,this.options=void 0,this._actions=void 0,this.events=new rs,this._context=void 0,this._win=void 0,this._doc=void 0,this._scopeEvents=void 0,this._actions=o.actions,this.target=n,this._context=o.context||r,this._win=gn(ya(n)?this._context:n),this._doc=this._win.document,this._scopeEvents=l,this.set(o)}setOnEvents(n,o){return Z.func(o.onstart)&&this.on(`${n}start`,o.onstart),Z.func(o.onmove)&&this.on(`${n}move`,o.onmove),Z.func(o.onend)&&this.on(`${n}end`,o.onend),Z.func(o.oninertiastart)&&this.on(`${n}inertiastart`,o.oninertiastart),this}updatePerActionListeners(n,o,r){var l;const a=(l=this._actions.map[n])==null?void 0:l.filterEventType,i=d=>(a==null||a(d))&&uo(d,this._actions);(Z.array(o)||Z.object(o))&&this._onOff(jt.Off,n,o,void 0,i),(Z.array(r)||Z.object(r))&&this._onOff(jt.On,n,r,void 0,i)}setPerAction(n,o){const r=this._defaults;for(const l in o){const a=l,i=this.options[n],d=o[a];a==="listeners"&&this.updatePerActionListeners(n,i.listeners,d),Z.array(d)?i[a]=os(d):Z.plainObject(d)?(i[a]=me(i[a]||{},Mn(d)),Z.object(r.perAction[a])&&"enabled"in r.perAction[a]&&(i[a].enabled=d.enabled!==!1)):Z.bool(d)&&Z.object(r.perAction[a])?i[a].enabled=d:i[a]=d}}getRect(n){return n=n||(Z.element(this.target)?this.target:null),Z.string(this.target)&&(n=n||this._context.querySelector(this.target)),xl(n)}rectChecker(n){return Z.func(n)?(this.getRect=o=>{const r=me({},n.apply(this,o));return"width"in r||(r.width=r.right-r.left,r.height=r.bottom-r.top),r},this):n===null?(delete this.getRect,this):this.getRect}_backCompatOption(n,o){if(ya(o)||Z.object(o)){this.options[n]=o;for(const r in this._actions.map)this.options[r][n]=o;return this}return this.options[n]}origin(n){return this._backCompatOption("origin",n)}deltaSource(n){return n==="page"||n==="client"?(this.options.deltaSource=n,this):this.options.deltaSource}getAllElements(){const{target:n}=this;return Z.string(n)?Array.from(this._context.querySelectorAll(n)):Z.func(n)&&n.getAllElements?n.getAllElements():Z.element(n)?[n]:[]}context(){return this._context}inContext(n){return this._context===n.ownerDocument||un(this._context,n)}testIgnoreAllow(n,o,r){return!this.testIgnore(n.ignoreFrom,o,r)&&this.testAllow(n.allowFrom,o,r)}testAllow(n,o,r){return n?Z.element(r)?Z.string(n)?Yr(r,n,o):Z.element(n)?un(n,r):!1:!1:!0}testIgnore(n,o,r){return!n||!Z.element(r)?!1:Z.string(n)?Yr(r,n,o):Z.element(n)?un(n,r):!1}fire(n){return this.events.fire(n),this}_onOff(n,o,r,l,a){Z.object(o)&&!Z.array(o)&&(l=r,r=null);const i=sn(o,r,a);for(let d in i){d==="wheel"&&(d=ze.wheelEvent);for(const s of i[d])uo(d,this._actions)?this.events[n===jt.On?"on":"off"](d,s):Z.string(this.target)?this._scopeEvents[n===jt.On?"addDelegate":"removeDelegate"](this.target,this._context,d,s,l):this._scopeEvents[n===jt.On?"add":"remove"](this.target,d,s,l)}return this}on(n,o,r){return this._onOff(jt.On,n,o,r)}off(n,o,r){return this._onOff(jt.Off,n,o,r)}set(n){const o=this._defaults;Z.object(n)||(n={}),this.options=Mn(o.base);for(const r in this._actions.methodDict){const l=r,a=this._actions.methodDict[l];this.options[l]={},this.setPerAction(l,me(me({},o.perAction),o.actions[l])),this[a](n[l])}for(const r in n){if(r==="getRect"){this.rectChecker(n.getRect);continue}Z.func(this[r])&&this[r](n[r])}return this}unset(){if(Z.string(this.target))for(const n in this._scopeEvents.delegatedEvents){const o=this._scopeEvents.delegatedEvents[n];for(let r=o.length-1;r>=0;r--){const{selector:l,context:a,listeners:i}=o[r];l===this.target&&a===this._context&&o.splice(r,1);for(let d=i.length-1;d>=0;d--)this._scopeEvents.removeDelegate(this.target,this._context,n,i[d][0],i[d][1])}}else this._scopeEvents.remove(this.target,"all")}}class ry{constructor(n){this.list=[],this.selectorMap={},this.scope=void 0,this.scope=n,n.addListeners({"interactable:unset":o=>{let{interactable:r}=o;const{target:l}=r,a=Z.string(l)?this.selectorMap[l]:l[this.scope.id],i=er(a,d=>d===r);a.splice(i,1)}})}new(n,o){o=me(o||{},{actions:this.scope.actions});const r=new this.scope.Interactable(n,o,this.scope.document,this.scope.events);return this.scope.addDocument(r._doc),this.list.push(r),Z.string(n)?(this.selectorMap[n]||(this.selectorMap[n]=[]),this.selectorMap[n].push(r)):(r.target[this.scope.id]||Object.defineProperty(n,this.scope.id,{value:[],configurable:!0}),n[this.scope.id].push(r)),this.scope.fire("interactable:new",{target:n,options:o,interactable:r,win:this.scope._win}),r}getExisting(n,o){const r=o&&o.context||this.scope.document,l=Z.string(n),a=l?this.selectorMap[n]:n[this.scope.id];if(a)return ko(a,i=>i._context===r&&(l||i.inContext(n)))}forEachMatch(n,o){for(const r of this.list){let l;if((Z.string(r.target)?Z.element(n)&&vn(n,r.target):n===r.target)&&r.inContext(n)&&(l=o(r)),l!==void 0)return l}}}function ly(t){const n=(o,r)=>{let l=t.interactables.getExisting(o,r);return l||(l=t.interactables.new(o,r),l.events.global=n.globalEvents),l};return n.getPointerAverage=ss,n.getTouchBBox=A_,n.getTouchDistance=F_,n.getTouchAngle=O_,n.getElementRect=xl,n.getElementClientRect=hl,n.matchesSelector=vn,n.closest=ls,n.globalEvents={},n.version="1.10.27",n.scope=t,n.use=function(o,r){return this.scope.usePlugin(o,r),this},n.isSet=function(o,r){return!!this.scope.interactables.get(o,r&&r.context)},n.on=io(function(o,r,l){if(Z.string(o)&&o.search(" ")!==-1&&(o=o.trim().split(/ +/)),Z.array(o)){for(const a of o)this.on(a,r,l);return this}if(Z.object(o)){for(const a in o)this.on(a,o[a],r);return this}return uo(o,this.scope.actions)?this.globalEvents[o]?this.globalEvents[o].push(r):this.globalEvents[o]=[r]:this.scope.events.add(this.scope.document,o,r,{options:l}),this},"The interact.on() method is being deprecated"),n.off=io(function(o,r,l){if(Z.string(o)&&o.search(" ")!==-1&&(o=o.trim().split(/ +/)),Z.array(o)){for(const a of o)this.off(a,r,l);return this}if(Z.object(o)){for(const a in o)this.off(a,o[a],r);return this}if(uo(o,this.scope.actions)){let a;o in this.globalEvents&&(a=this.globalEvents[o].indexOf(r))!==-1&&this.globalEvents[o].splice(a,1)}else this.scope.events.remove(this.scope.document,o,r,l);return this},"The interact.off() method is being deprecated"),n.debug=function(){return this.scope},n.supportsTouch=function(){return ze.supportsTouch},n.supportsPointerEvent=function(){return ze.supportsPointerEvent},n.stop=function(){for(const o of this.scope.interactions.list)o.stop();return this},n.pointerMoveTolerance=function(o){return Z.number(o)?(this.scope.interactions.pointerMoveTolerance=o,this):this.scope.interactions.pointerMoveTolerance},n.addDocument=function(o,r){this.scope.addDocument(o,r)},n.removeDocument=function(o){this.scope.removeDocument(o)},n}class ay{constructor(){this.id=`__interact_scope_${Math.floor(Math.random()*100)}`,this.isInitialized=!1,this.listenerMaps=[],this.browser=ze,this.defaults=Mn(fs),this.Eventable=rs,this.actions={map:{},phases:{start:!0,move:!0,end:!0},methodDict:{},phaselessTypes:{}},this.interactStatic=ly(this),this.InteractEvent=Cl,this.Interactable=void 0,this.interactables=new ry(this),this._win=void 0,this.document=void 0,this.window=void 0,this.documents=[],this._plugins={list:[],map:{}},this.onWindowUnload=o=>this.removeDocument(o.target);const n=this;this.Interactable=class extends oy{get _defaults(){return n.defaults}set(o){return super.set(o),n.fire("interactable:set",{options:o,interactable:this}),this}unset(){super.unset();const o=n.interactables.list.indexOf(this);o<0||(n.interactables.list.splice(o,1),n.fire("interactable:unset",{interactable:this}))}}}addListeners(n,o){this.listenerMaps.push({id:o,map:n})}fire(n,o){for(const{map:{[n]:r}}of this.listenerMaps)if(r&&r(o,this,n)===!1)return!1}init(n){return this.isInitialized?this:iy(this,n)}pluginIsInstalled(n){const{id:o}=n;return o?!!this._plugins.map[o]:this._plugins.list.indexOf(n)!==-1}usePlugin(n,o){if(!this.isInitialized)return this;if(this.pluginIsInstalled(n))return this;if(n.id&&(this._plugins.map[n.id]=n),this._plugins.list.push(n),n.install&&n.install(this,o),n.listeners&&n.before){let r=0;const l=this.listenerMaps.length,a=n.before.reduce((i,d)=>(i[d]=!0,i[wa(d)]=!0,i),{});for(;r<l;r++){const i=this.listenerMaps[r].id;if(i&&(a[i]||a[wa(i)]))break}this.listenerMaps.splice(r,0,{id:n.id,map:n.listeners})}else n.listeners&&this.listenerMaps.push({id:n.id,map:n.listeners});return this}addDocument(n,o){if(this.getDocIndex(n)!==-1)return!1;const r=gn(n);o=o?me({},o):{},this.documents.push({doc:n,options:o}),this.events.documents.push(n),n!==this.document&&this.events.add(r,"unload",this.onWindowUnload),this.fire("scope:add-document",{doc:n,window:r,scope:this,options:o})}removeDocument(n){const o=this.getDocIndex(n),r=gn(n),l=this.documents[o].options;this.events.remove(r,"unload",this.onWindowUnload),this.documents.splice(o,1),this.events.documents.splice(o,1),this.fire("scope:remove-document",{doc:n,window:r,scope:this,options:l})}getDocIndex(n){for(let o=0;o<this.documents.length;o++)if(this.documents[o].doc===n)return o;return-1}getDocOptions(n){const o=this.getDocIndex(n);return o===-1?null:this.documents[o].options}now(){return(this.window.Date||Date).now()}}function iy(t,n){return t.isInitialized=!0,Z.window(n)&&es(n),Pe.init(n),ze.init(n),Vn.init(n),t.window=n,t.document=n.document,t.usePlugin(ny),t.usePlugin(U_),t}function wa(t){return t&&t.replace(/\/.*$/,"")}const vs=new ay,Ft=vs.interactStatic,sy=typeof globalThis<"u"?globalThis:window;vs.init(sy);function uy(t){const{Interactable:n}=t;n.prototype.getAction=function(o,r,l,a){const i=dy(this,r,l,a,t);return this.options.actionChecker?this.options.actionChecker(o,r,i,this,a,l):i},n.prototype.ignoreFrom=io(function(o){return this._backCompatOption("ignoreFrom",o)},"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),n.prototype.allowFrom=io(function(o){return this._backCompatOption("allowFrom",o)},"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),n.prototype.actionChecker=py,n.prototype.styleCursor=cy}function dy(t,n,o,r,l){const a=t.getRect(r),i=n.buttons||{0:1,1:4,3:8,4:16}[n.button],d={action:null,interactable:t,interaction:o,element:r,rect:a,buttons:i};return l.fire("auto-start:check",d),d.action}function cy(t){return Z.bool(t)?(this.options.styleCursor=t,this):t===null?(delete this.options.styleCursor,this):this.options.styleCursor}function py(t){return Z.func(t)?(this.options.actionChecker=t,this):t===null?(delete this.options.actionChecker,this):this.options.actionChecker}var fy={id:"auto-start/interactableMethods",install:uy};function my(t){const{interactStatic:n,defaults:o}=t;t.usePlugin(fy),o.base.actionChecker=null,o.base.styleCursor=!0,me(o.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),n.maxInteractions=r=>ys(r,t),t.autoStart={maxInteractions:1/0,withinInteractionLimit:or,cursorElement:null}}function gy(t,n){let{interaction:o,pointer:r,event:l,eventTarget:a}=t;if(o.interacting())return;const i=xs(o,r,l,a,n);_s(o,i,n)}function vy(t,n){let{interaction:o,pointer:r,event:l,eventTarget:a}=t;if(o.pointerType!=="mouse"||o.pointerIsDown||o.interacting())return;const i=xs(o,r,l,a,n);_s(o,i,n)}function hy(t,n){const{interaction:o}=t;if(!o.pointerIsDown||o.interacting()||!o.pointerWasMoved||!o.prepared.name)return;n.fire("autoStart:before-start",t);const{interactable:r}=o,l=o.prepared.name;l&&r&&(r.options[l].manualStart||!or(r,o.element,o.prepared,n)?o.stop():(o.start(o.prepared,r,o.element),Vs(o,n)))}function xy(t,n){let{interaction:o}=t;const{interactable:r}=o;r&&r.options.styleCursor&&Jr(o.element,"",n)}function hs(t,n,o,r,l){return n.testIgnoreAllow(n.options[t.name],o,r)&&n.options[t.name].enabled&&or(n,o,t,l)?t:null}function _y(t,n,o,r,l,a,i){for(let d=0,s=r.length;d<s;d++){const u=r[d],c=l[d],p=u.getAction(n,o,t,c);if(!p)continue;const m=hs(p,u,c,a,i);if(m)return{action:m,interactable:u,element:c}}return{action:null,interactable:null,element:null}}function xs(t,n,o,r,l){let a=[],i=[],d=r;function s(u){a.push(u),i.push(d)}for(;Z.element(d);){a=[],i=[],l.interactables.forEachMatch(d,s);const u=_y(t,n,o,a,i,r,l);if(u.action&&!u.interactable.options[u.action.name].manualStart)return u;d=tn(d)}return{action:null,interactable:null,element:null}}function _s(t,n,o){let{action:r,interactable:l,element:a}=n;r=r||{name:null},t.interactable=l,t.element=a,ds(t.prepared,r),t.rect=l&&r.name?l.getRect(a):null,Vs(t,o),o.fire("autoStart:prepared",{interaction:t})}function or(t,n,o,r){const l=t.options,a=l[o.name].max,i=l[o.name].maxPerElement,d=r.autoStart.maxInteractions;let s=0,u=0,c=0;if(!(a&&i&&d))return!1;for(const p of r.interactions.list){const m=p.prepared.name;if(p.interacting()&&(s++,s>=d||p.interactable===t&&(u+=m===o.name?1:0,u>=a||p.element===n&&(c++,m===o.name&&c>=i))))return!1}return d>0}function ys(t,n){return Z.number(t)?(n.autoStart.maxInteractions=t,this):n.autoStart.maxInteractions}function Jr(t,n,o){const{cursorElement:r}=o.autoStart;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=n,t.style.cursor=n,o.autoStart.cursorElement=n?t:null}function Vs(t,n){const{interactable:o,element:r,prepared:l}=t;if(!(t.pointerType==="mouse"&&o&&o.options.styleCursor)){n.autoStart.cursorElement&&Jr(n.autoStart.cursorElement,"",n);return}let a="";if(l.name){const i=o.options[l.name].cursorChecker;Z.func(i)?a=i(l,o,r,t._interacting):a=n.actions.map[l.name].getCursor(l)}Jr(t.element,a||"",n)}const bl={id:"auto-start/base",before:["actions"],install:my,listeners:{"interactions:down":gy,"interactions:move":(t,n)=>{vy(t,n),hy(t,n)},"interactions:stop":xy},maxInteractions:ys,withinInteractionLimit:or,validateAction:hs};function yy(t,n){let{interaction:o,eventTarget:r,dx:l,dy:a}=t;if(o.prepared.name!=="drag")return;const i=Math.abs(l),d=Math.abs(a),s=o.interactable.options.drag,u=s.startAxis,c=i>d?"x":i<d?"y":"xy";if(o.prepared.axis=s.lockAxis==="start"?c[0]:s.lockAxis,c!=="xy"&&u!=="xy"&&u!==c){o.prepared.name=null;let p=r;const m=function(f){if(f===o.interactable)return;const v=o.interactable.options.drag;if(!v.manualStart&&f.testIgnoreAllow(v,p,r)){const g=f.getAction(o.downPointer,o.downEvent,o,p);if(g&&g.name==="drag"&&Vy(c,f)&&bl.validateAction(g,f,p,r,n))return f}};for(;Z.element(p);){const f=n.interactables.forEachMatch(p,m);if(f){o.prepared.name="drag",o.interactable=f,o.element=p;break}p=tn(p)}}}function Vy(t,n){if(!n)return!1;const o=n.options.drag.startAxis;return t==="xy"||o==="xy"||o===t}var Cy={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":yy}};function by(t){const{defaults:n}=t;t.usePlugin(bl),n.perAction.hold=0,n.perAction.delay=0}function Sr(t){const n=t.prepared&&t.prepared.name;if(!n)return null;const o=t.interactable.options;return o[n].hold||o[n].delay}const wy={id:"auto-start/hold",install:by,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.autoStartHoldTimer=null},"autoStart:prepared":t=>{let{interaction:n}=t;const o=Sr(n);o>0&&(n.autoStartHoldTimer=setTimeout(()=>{n.start(n.prepared,n.interactable,n.element)},o))},"interactions:move":t=>{let{interaction:n,duplicate:o}=t;n.autoStartHoldTimer&&n.pointerWasMoved&&!o&&(clearTimeout(n.autoStartHoldTimer),n.autoStartHoldTimer=null)},"autoStart:before-start":t=>{let{interaction:n}=t;Sr(n)>0&&(n.prepared.name=null)}},getHoldDuration:Sr};var Ny={id:"auto-start",install(t){t.usePlugin(bl),t.usePlugin(wy),t.usePlugin(Cy)}};Ft.use(Ny);function ky(t){const{defaults:n,actions:o}=t;t.autoScroll=ge,ge.now=()=>t.now(),o.phaselessTypes.autoscroll=!0,n.perAction.autoScroll=ge.defaults}const ge={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:0,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start(t){ge.isScrolling=!0,Vn.cancel(ge.i),t.autoScroll=ge,ge.interaction=t,ge.prevTime=ge.now(),ge.i=Vn.request(ge.scroll)},stop(){ge.isScrolling=!1,ge.interaction&&(ge.interaction.autoScroll=null),Vn.cancel(ge.i)},scroll(){const{interaction:t}=ge,{interactable:n,element:o}=t,r=t.prepared.name,l=n.options[r].autoScroll,a=Na(l.container,n,o),i=ge.now(),d=(i-ge.prevTime)/1e3,s=l.speed*d;if(s>=1){const u={x:ge.x*s,y:ge.y*s};if(u.x||u.y){const c=ka(a);Z.window(a)?a.scrollBy(u.x,u.y):a&&(a.scrollLeft+=u.x,a.scrollTop+=u.y);const p=ka(a),m={x:p.x-c.x,y:p.y-c.y};(m.x||m.y)&&n.fire({type:"autoscroll",target:o,interactable:n,delta:m,interaction:t,container:a})}ge.prevTime=i}ge.isScrolling&&(Vn.cancel(ge.i),ge.i=Vn.request(ge.scroll))},check(t,n){var o;return(o=t.options[n].autoScroll)==null?void 0:o.enabled},onInteractionMove(t){let{interaction:n,pointer:o}=t;if(!(n.interacting()&&ge.check(n.interactable,n.prepared.name)))return;if(n.simulation){ge.x=ge.y=0;return}let r,l,a,i;const{interactable:d,element:s}=n,u=n.prepared.name,c=d.options[u].autoScroll,p=Na(c.container,d,s);if(Z.window(p))i=o.clientX<ge.margin,r=o.clientY<ge.margin,l=o.clientX>p.innerWidth-ge.margin,a=o.clientY>p.innerHeight-ge.margin;else{const m=hl(p);i=o.clientX<m.left+ge.margin,r=o.clientY<m.top+ge.margin,l=o.clientX>m.right-ge.margin,a=o.clientY>m.bottom-ge.margin}ge.x=l?1:i?-1:0,ge.y=a?1:r?-1:0,ge.isScrolling||(ge.margin=c.margin,ge.speed=c.speed,ge.start(n))}};function Na(t,n,o){return(Z.string(t)?cs(t,n,o):t)||gn(o)}function ka(t){return Z.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}const Sy={id:"auto-scroll",install:ky,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.autoScroll=null},"interactions:destroy":t=>{let{interaction:n}=t;n.autoScroll=null,ge.stop(),ge.interaction&&(ge.interaction=null)},"interactions:stop":ge.stop,"interactions:action-move":t=>ge.onInteractionMove(t)}};Ft.use(Sy);function Ey(t){const{actions:n,Interactable:o,defaults:r}=t;o.prototype.draggable=So.draggable,n.map.drag=So,n.methodDict.drag="draggable",r.actions.drag=So.defaults}function Er(t){let{interaction:n}=t;if(n.prepared.name!=="drag")return;const o=n.prepared.axis;o==="x"?(n.coords.cur.page.y=n.coords.start.page.y,n.coords.cur.client.y=n.coords.start.client.y,n.coords.velocity.client.y=0,n.coords.velocity.page.y=0):o==="y"&&(n.coords.cur.page.x=n.coords.start.page.x,n.coords.cur.client.x=n.coords.start.client.x,n.coords.velocity.client.x=0,n.coords.velocity.page.x=0)}function Sa(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="drag")return;const r=o.prepared.axis;if(r==="x"||r==="y"){const l=r==="x"?"y":"x";n.page[l]=o.coords.start.page[l],n.client[l]=o.coords.start.client[l],n.delta[l]=0}}const Ty=function(t){return Z.object(t)?(this.options.drag.enabled=t.enabled!==!1,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^(xy|x|y|start)$/.test(t.lockAxis)&&(this.options.drag.lockAxis=t.lockAxis),/^(xy|x|y)$/.test(t.startAxis)&&(this.options.drag.startAxis=t.startAxis),this):Z.bool(t)?(this.options.drag.enabled=t,this):this.options.drag},So={id:"actions/drag",install:Ey,listeners:{"interactions:before-action-move":Er,"interactions:action-resume":Er,"interactions:action-move":Sa,"auto-start:check":t=>{const{interaction:n,interactable:o,buttons:r}=t,l=o.options.drag;if(!(!(l&&l.enabled)||n.pointerIsDown&&/mouse|pointer/.test(n.pointerType)&&!(r&o.options.drag.mouseButtons)))return t.action={name:"drag",axis:l.lockAxis==="start"?l.startAxis:l.lockAxis},!1}},draggable:Ty,beforeMove:Er,move:Sa,defaults:{startAxis:"xy",lockAxis:"xy"},getCursor(){return"move"},filterEventType:t=>t.search("drag")===0};Ft.use(So);function Dy(t){const{actions:n,browser:o,Interactable:r,defaults:l}=t;At.cursors=My(o),At.defaultMargin=o.supportsTouch||o.supportsPointerEvent?20:10,r.prototype.resizable=function(a){return $y(this,a,t)},n.map.resize=At,n.methodDict.resize="resizable",l.actions.resize=At.defaults}function By(t){const{interaction:n,interactable:o,element:r,rect:l,buttons:a}=t;if(!l)return;const i=me({},n.coords.cur.page),d=o.options.resize;if(!(!(d&&d.enabled)||n.pointerIsDown&&/mouse|pointer/.test(n.pointerType)&&!(a&d.mouseButtons))){if(Z.object(d.edges)){const s={left:!1,right:!1,top:!1,bottom:!1};for(const u in s)s[u]=Iy(u,d.edges[u],i,n._latestPointer.eventTarget,r,l,d.margin||At.defaultMargin);s.left=s.left&&!s.right,s.top=s.top&&!s.bottom,(s.left||s.right||s.top||s.bottom)&&(t.action={name:"resize",edges:s})}else{const s=d.axis!=="y"&&i.x>l.right-At.defaultMargin,u=d.axis!=="x"&&i.y>l.bottom-At.defaultMargin;(s||u)&&(t.action={name:"resize",axes:(s?"x":"")+(u?"y":"")})}return t.action?!1:void 0}}function $y(t,n,o){return Z.object(n)?(t.options.resize.enabled=n.enabled!==!1,t.setPerAction("resize",n),t.setOnEvents("resize",n),Z.string(n.axis)&&/^x$|^y$|^xy$/.test(n.axis)?t.options.resize.axis=n.axis:n.axis===null&&(t.options.resize.axis=o.defaults.actions.resize.axis),Z.bool(n.preserveAspectRatio)?t.options.resize.preserveAspectRatio=n.preserveAspectRatio:Z.bool(n.square)&&(t.options.resize.square=n.square),t):Z.bool(n)?(t.options.resize.enabled=n,t):t.options.resize}function Iy(t,n,o,r,l,a,i){if(!n)return!1;if(n===!0){const d=Z.number(a.width)?a.width:a.right-a.left,s=Z.number(a.height)?a.height:a.bottom-a.top;if(i=Math.min(i,Math.abs((t==="left"||t==="right"?d:s)/2)),d<0&&(t==="left"?t="right":t==="right"&&(t="left")),s<0&&(t==="top"?t="bottom":t==="bottom"&&(t="top")),t==="left"){const u=d>=0?a.left:a.right;return o.x<u+i}if(t==="top"){const u=s>=0?a.top:a.bottom;return o.y<u+i}if(t==="right")return o.x>(d>=0?a.right:a.left)-i;if(t==="bottom")return o.y>(s>=0?a.bottom:a.top)-i}return Z.element(r)?Z.element(n)?n===r:Yr(r,n,l):!1}function My(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}function Py(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n,l=o.rect;o._rects={start:me({},l),corrected:me({},l),previous:me({},l),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=o.prepared.edges,r.rect=o._rects.corrected,r.deltaRect=o._rects.delta}function Ry(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n,l=o.interactable.options.resize.invert,a=l==="reposition"||l==="negate",i=o.rect,{start:d,corrected:s,delta:u,previous:c}=o._rects;if(me(c,s),a){if(me(s,i),l==="reposition"){if(s.top>s.bottom){const p=s.top;s.top=s.bottom,s.bottom=p}if(s.left>s.right){const p=s.left;s.left=s.right,s.right=p}}}else s.top=Math.min(i.top,d.bottom),s.bottom=Math.max(i.bottom,d.top),s.left=Math.min(i.left,d.right),s.right=Math.max(i.right,d.left);s.width=s.right-s.left,s.height=s.bottom-s.top;for(const p in s)u[p]=s[p]-c[p];r.edges=o.prepared.edges,r.rect=s,r.deltaRect=u}function Ay(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n;r.edges=o.prepared.edges,r.rect=o._rects.corrected,r.deltaRect=o._rects.delta}function Ea(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.resizeAxes)return;const r=o.interactable.options,l=n;r.resize.square?(o.resizeAxes==="y"?l.delta.x=l.delta.y:l.delta.y=l.delta.x,l.axes="xy"):(l.axes=o.resizeAxes,o.resizeAxes==="x"?l.delta.y=0:o.resizeAxes==="y"&&(l.delta.x=0))}const At={id:"actions/resize",before:["actions/drag"],install:Dy,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.resizeAxes="xy"},"interactions:action-start":t=>{Py(t),Ea(t)},"interactions:action-move":t=>{Ry(t),Ea(t)},"interactions:action-end":Ay,"auto-start:check":By},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor(t){let{edges:n,axis:o,name:r}=t;const l=At.cursors;let a=null;if(o)a=l[r+o];else if(n){let i="";for(const d of["top","bottom","left","right"])n[d]&&(i+=d);a=l[i]}return a},filterEventType:t=>t.search("resize")===0,defaultMargin:null};Ft.use(At);var Fy=()=>{},Oy=()=>{},zy=t=>{const n=[["x","y"],["left","top"],["right","bottom"],["width","height"]].filter(r=>{let[l,a]=r;return l in t||a in t}),o=(r,l)=>{const{range:a,limits:i={left:-1/0,right:1/0,top:-1/0,bottom:1/0},offset:d={x:0,y:0}}=t,s={range:a,grid:t,x:null,y:null};for(const[u,c]of n){const p=Math.round((r-d.x)/t[u]),m=Math.round((l-d.y)/t[c]);s[u]=Math.max(i.left,Math.min(i.right,p*t[u]+d.x)),s[c]=Math.max(i.top,Math.min(i.bottom,m*t[c]+d.y))}return s};return o.grid=t,o.coordFields=n,o},Ly=Object.freeze({__proto__:null,edgeTarget:Fy,elements:Oy,grid:zy});const jy={id:"snappers",install(t){const{interactStatic:n}=t;n.snappers=me(n.snappers||{},Ly),n.createSnapGrid=n.snappers.grid}};class Cs{constructor(n){this.states=[],this.startOffset={left:0,right:0,top:0,bottom:0},this.startDelta=void 0,this.result=void 0,this.endResult=void 0,this.startEdges=void 0,this.edges=void 0,this.interaction=void 0,this.interaction=n,this.result=wo(),this.edges={left:!1,right:!1,top:!1,bottom:!1}}start(n,o){let{phase:r}=n;const{interaction:l}=this,a=Uy(l);this.prepareStates(a),this.startEdges=me({},l.edges),this.edges=me({},this.startEdges),this.startOffset=Hy(l.rect,o),this.startDelta={x:0,y:0};const i=this.fillArg({phase:r,pageCoords:o,preEnd:!1});return this.result=wo(),this.startAll(i),this.result=this.setAll(i)}fillArg(n){const{interaction:o}=this;return n.interaction=o,n.interactable=o.interactable,n.element=o.element,n.rect||(n.rect=o.rect),n.edges||(n.edges=this.startEdges),n.startOffset=this.startOffset,n}startAll(n){for(const o of this.states)o.methods.start&&(n.state=o,o.methods.start(n))}setAll(n){const{phase:o,preEnd:r,skipModifiers:l,rect:a,edges:i}=n;n.coords=me({},n.pageCoords),n.rect=me({},a),n.edges=me({},i);const d=l?this.states.slice(l):this.states,s=wo(n.coords,n.rect);for(const m of d){var u;const{options:f}=m,v=me({},n.coords);let g=null;(u=m.methods)!=null&&u.set&&this.shouldDo(f,r,o)&&(n.state=m,g=m.methods.set(n),yl(n.edges,n.rect,{x:n.coords.x-v.x,y:n.coords.y-v.y})),s.eventProps.push(g)}me(this.edges,n.edges),s.delta.x=n.coords.x-n.pageCoords.x,s.delta.y=n.coords.y-n.pageCoords.y,s.rectDelta.left=n.rect.left-a.left,s.rectDelta.right=n.rect.right-a.right,s.rectDelta.top=n.rect.top-a.top,s.rectDelta.bottom=n.rect.bottom-a.bottom;const c=this.result.coords,p=this.result.rect;if(c&&p){const m=s.rect.left!==p.left||s.rect.right!==p.right||s.rect.top!==p.top||s.rect.bottom!==p.bottom;s.changed=m||c.x!==s.coords.x||c.y!==s.coords.y}return s}applyToInteraction(n){const{interaction:o}=this,{phase:r}=n,l=o.coords.cur,a=o.coords.start,{result:i,startDelta:d}=this,s=i.delta;r==="start"&&me(this.startDelta,i.delta);for(const[p,m]of[[a,d],[l,s]])p.page.x+=m.x,p.page.y+=m.y,p.client.x+=m.x,p.client.y+=m.y;const{rectDelta:u}=this.result,c=n.rect||o.rect;c.left+=u.left,c.right+=u.right,c.top+=u.top,c.bottom+=u.bottom,c.width=c.right-c.left,c.height=c.bottom-c.top}setAndApply(n){const{interaction:o}=this,{phase:r,preEnd:l,skipModifiers:a}=n,i=this.setAll(this.fillArg({preEnd:l,phase:r,pageCoords:n.modifiedCoords||o.coords.cur.page}));if(this.result=i,!i.changed&&(!a||a<this.states.length)&&o.interacting())return!1;if(n.modifiedCoords){const{page:d}=o.coords.cur,s={x:n.modifiedCoords.x-d.x,y:n.modifiedCoords.y-d.y};i.coords.x+=s.x,i.coords.y+=s.y,i.delta.x+=s.x,i.delta.y+=s.y}this.applyToInteraction(n)}beforeEnd(n){const{interaction:o,event:r}=n,l=this.states;if(!l||!l.length)return;let a=!1;for(const i of l){n.state=i;const{options:d,methods:s}=i,u=s.beforeEnd&&s.beforeEnd(n);if(u)return this.endResult=u,!1;a=a||!a&&this.shouldDo(d,!0,n.phase,!0)}a&&o.move({event:r,preEnd:!0})}stop(n){const{interaction:o}=n;if(!this.states||!this.states.length)return;const r=me({states:this.states,interactable:o.interactable,element:o.element,rect:null},n);this.fillArg(r);for(const l of this.states)r.state=l,l.methods.stop&&l.methods.stop(r);this.states=null,this.endResult=null}prepareStates(n){this.states=[];for(let o=0;o<n.length;o++){const{options:r,methods:l,name:a}=n[o];this.states.push({options:r,methods:l,index:o,name:a})}return this.states}restoreInteractionCoords(n){let{interaction:{coords:o,rect:r,modification:l}}=n;if(!l.result)return;const{startDelta:a}=l,{delta:i,rectDelta:d}=l.result,s=[[o.start,a],[o.cur,i]];for(const[u,c]of s)u.page.x-=c.x,u.page.y-=c.y,u.client.x-=c.x,u.client.y-=c.y;r.left-=d.left,r.right-=d.right,r.top-=d.top,r.bottom-=d.bottom}shouldDo(n,o,r,l){return!(!n||n.enabled===!1||l&&!n.endOnly||n.endOnly&&!o||r==="start"&&!n.setStart)}copyFrom(n){this.startOffset=n.startOffset,this.startDelta=n.startDelta,this.startEdges=n.startEdges,this.edges=n.edges,this.states=n.states.map(o=>Mn(o)),this.result=wo(me({},n.result.coords),me({},n.result.rect))}destroy(){for(const n in this)this[n]=null}}function wo(t,n){return{rect:n,coords:t,delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},eventProps:[],changed:!0}}function Uy(t){const n=t.interactable.options[t.prepared.name],o=n.modifiers;return o&&o.length?o:["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map(r=>{const l=n[r];return l&&l.enabled&&{options:l,methods:l._methods}}).filter(r=>!!r)}function Hy(t,n){return t?{left:n.x-t.left,top:n.y-t.top,right:t.right-n.x,bottom:t.bottom-n.y}:{left:0,top:0,right:0,bottom:0}}function nn(t,n){const{defaults:o}=t,r={start:t.start,set:t.set,beforeEnd:t.beforeEnd,stop:t.stop},l=a=>{const i=a||{};i.enabled=i.enabled!==!1;for(const s in o)s in i||(i[s]=o[s]);const d={options:i,methods:r,name:n,enable:()=>(i.enabled=!0,d),disable:()=>(i.enabled=!1,d)};return d};return n&&typeof n=="string"&&(l._defaults=o,l._methods=r),l}function Tr(t){let{iEvent:n,interaction:o}=t;const r=o.modification.result;r&&(n.modifiers=r.eventProps)}const Gy={id:"modifiers/base",before:["actions"],install:t=>{t.defaults.perAction.modifiers=[]},listeners:{"interactions:new":t=>{let{interaction:n}=t;n.modification=new Cs(n)},"interactions:before-action-start":t=>{const{interaction:n}=t,o=t.interaction.modification;o.start(t,n.coords.start.page),n.edges=o.edges,o.applyToInteraction(t)},"interactions:before-action-move":t=>{const{interaction:n}=t,{modification:o}=n,r=o.setAndApply(t);return n.edges=o.edges,r},"interactions:before-action-end":t=>{const{interaction:n}=t,{modification:o}=n,r=o.beforeEnd(t);return n.edges=o.startEdges,r},"interactions:action-start":Tr,"interactions:action-move":Tr,"interactions:action-end":Tr,"interactions:after-action-start":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:after-action-move":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:stop":t=>t.interaction.modification.stop(t)}},qy={start(t){const{state:n,rect:o,edges:r,pageCoords:l}=t;let{ratio:a,enabled:i}=n.options;const{equalDelta:d,modifiers:s}=n.options;a==="preserve"&&(a=o.width/o.height),n.startCoords=me({},l),n.startRect=me({},o),n.ratio=a,n.equalDelta=d;const u=n.linkedEdges={top:r.top||r.left&&!r.bottom,left:r.left||r.top&&!r.right,bottom:r.bottom||r.right&&!r.top,right:r.right||r.bottom&&!r.left};if(n.xIsPrimaryAxis=!!(r.left||r.right),n.equalDelta){const p=(u.left?1:-1)*(u.top?1:-1);n.edgeSign={x:p,y:p}}else n.edgeSign={x:u.left?-1:1,y:u.top?-1:1};if(i!==!1&&me(r,u),!(s!=null&&s.length))return;const c=new Cs(t.interaction);c.copyFrom(t.interaction.modification),c.prepareStates(s),n.subModification=c,c.startAll({...t})},set(t){const{state:n,rect:o,coords:r}=t,{linkedEdges:l}=n,a=me({},r),i=n.equalDelta?Wy:Zy;if(me(t.edges,l),i(n,n.xIsPrimaryAxis,r,o),!n.subModification)return null;const d=me({},o);yl(l,d,{x:r.x-a.x,y:r.y-a.y});const s=n.subModification.setAll({...t,rect:d,edges:l,pageCoords:r,prevCoords:r,prevRect:d}),{delta:u}=s;if(s.changed){const c=Math.abs(u.x)>Math.abs(u.y);i(n,c,s.coords,s.rect),me(r,s.coords)}return s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function Wy(t,n,o){let{startCoords:r,edgeSign:l}=t;n?o.y=r.y+(o.x-r.x)*l.y:o.x=r.x+(o.y-r.y)*l.x}function Zy(t,n,o,r){let{startRect:l,startCoords:a,ratio:i,edgeSign:d}=t;if(n){const s=r.width/i;o.y=a.y+(s-l.height)*d.y}else{const s=r.height*i;o.x=a.x+(s-l.width)*d.x}}var Yy=nn(qy,"aspectRatio");function Xy(t){let{rect:n,startOffset:o,state:r,interaction:l,pageCoords:a}=t;const{options:i}=r,{elementRect:d}=i,s=me({left:0,top:0,right:0,bottom:0},i.offset||{});if(n&&d){const u=hn(i.restriction,l,a);if(u){const c=u.right-u.left-n.width,p=u.bottom-u.top-n.height;c<0&&(s.left+=c,s.right+=c),p<0&&(s.top+=p,s.bottom+=p)}s.left+=o.left-n.width*d.left,s.top+=o.top-n.height*d.top,s.right+=o.right-n.width*(1-d.right),s.bottom+=o.bottom-n.height*(1-d.bottom)}r.offset=s}function Jy(t){let{coords:n,interaction:o,state:r}=t;const{options:l,offset:a}=r,i=hn(l.restriction,o,n);if(!i)return;const d=Y_(i);n.x=Math.max(Math.min(d.right-a.right,n.x),d.left+a.left),n.y=Math.max(Math.min(d.bottom-a.bottom,n.y),d.top+a.top)}function hn(t,n,o){return Z.func(t)?so(t,n.interactable,n.element,[o.x,o.y,n]):so(t,n.interactable,n.element)}const Ky={restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1},Lo={start:Xy,set:Jy,defaults:Ky};var Qy=nn(Lo,"restrict");const bs={top:1/0,left:1/0,bottom:-1/0,right:-1/0},ws={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function e1(t){let{interaction:n,startOffset:o,state:r}=t;const{options:l}=r;let a;if(l){const i=hn(l.offset,n,n.coords.start.page);a=nr(i)}a=a||{x:0,y:0},r.offset={top:a.y+o.top,left:a.x+o.left,bottom:a.y-o.bottom,right:a.x-o.right}}function t1(t){let{coords:n,edges:o,interaction:r,state:l}=t;const{offset:a,options:i}=l;if(!o)return;const d=me({},n),s=hn(i.inner,r,d)||{},u=hn(i.outer,r,d)||{};Ta(s,bs),Ta(u,ws),o.top?n.y=Math.min(Math.max(u.top+a.top,d.y),s.top+a.top):o.bottom&&(n.y=Math.max(Math.min(u.bottom+a.bottom,d.y),s.bottom+a.bottom)),o.left?n.x=Math.min(Math.max(u.left+a.left,d.x),s.left+a.left):o.right&&(n.x=Math.max(Math.min(u.right+a.right,d.x),s.right+a.right))}function Ta(t,n){for(const o of["top","left","bottom","right"])o in t||(t[o]=n[o]);return t}const n1={inner:null,outer:null,offset:null,endOnly:!1,enabled:!1},Qn={noInner:bs,noOuter:ws,start:e1,set:t1,defaults:n1};var o1=nn(Qn,"restrictEdges");const r1=me({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(t){}},Lo.defaults),l1={start:Lo.start,set:Lo.set,defaults:r1};var a1=nn(l1,"restrictRect");const i1={width:-1/0,height:-1/0},s1={width:1/0,height:1/0};function u1(t){return Qn.start(t)}function d1(t){const{interaction:n,state:o,rect:r,edges:l}=t,{options:a}=o;if(!l)return;const i=Va(hn(a.min,n,t.coords))||i1,d=Va(hn(a.max,n,t.coords))||s1;o.options={endOnly:a.endOnly,inner:me({},Qn.noInner),outer:me({},Qn.noOuter)},l.top?(o.options.inner.top=r.bottom-i.height,o.options.outer.top=r.bottom-d.height):l.bottom&&(o.options.inner.bottom=r.top+i.height,o.options.outer.bottom=r.top+d.height),l.left?(o.options.inner.left=r.right-i.width,o.options.outer.left=r.right-d.width):l.right&&(o.options.inner.right=r.left+i.width,o.options.outer.right=r.left+d.width),Qn.set(t),o.options=a}const c1={min:null,max:null,endOnly:!1,enabled:!1},p1={start:u1,set:d1,defaults:c1};var f1=nn(p1,"restrictSize");function m1(t){const{interaction:n,interactable:o,element:r,rect:l,state:a,startOffset:i}=t,{options:d}=a,s=d.offsetWithOrigin?v1(t):{x:0,y:0};let u;if(d.offset==="startCoords")u={x:n.coords.start.page.x,y:n.coords.start.page.y};else{const p=so(d.offset,o,r,[n]);u=nr(p)||{x:0,y:0},u.x+=s.x,u.y+=s.y}const{relativePoints:c}=d;a.offsets=l&&c&&c.length?c.map((p,m)=>({index:m,relativePoint:p,x:i.left-l.width*p.x+u.x,y:i.top-l.height*p.y+u.y})):[{index:0,relativePoint:null,x:u.x,y:u.y}]}function g1(t){const{interaction:n,coords:o,state:r}=t,{options:l,offsets:a}=r,i=Vl(n.interactable,n.element,n.prepared.name),d=me({},o),s=[];l.offsetWithOrigin||(d.x-=i.x,d.y-=i.y);for(const c of a){const p=d.x-c.x,m=d.y-c.y;for(let f=0,v=l.targets.length;f<v;f++){const g=l.targets[f];let h;Z.func(g)?h=g(p,m,n._proxy,c,f):h=g,h&&s.push({x:(Z.number(h.x)?h.x:p)+c.x,y:(Z.number(h.y)?h.y:m)+c.y,range:Z.number(h.range)?h.range:l.range,source:g,index:f,offset:c})}}const u={target:null,inRange:!1,distance:0,range:0,delta:{x:0,y:0}};for(const c of s){const p=c.range,m=c.x-d.x,f=c.y-d.y,v=tr(m,f);let g=v<=p;p===1/0&&u.inRange&&u.range!==1/0&&(g=!1),(!u.target||(g?u.inRange&&p!==1/0?v/p<u.distance/u.range:p===1/0&&u.range!==1/0||v<u.distance:!u.inRange&&v<u.distance))&&(u.target=c,u.distance=v,u.range=p,u.inRange=g,u.delta.x=m,u.delta.y=f)}return u.inRange&&(o.x=u.target.x,o.y=u.target.y),r.closest=u,u}function v1(t){const{element:n}=t.interaction;return nr(so(t.state.options.origin,null,null,[n]))||Vl(t.interactable,n,t.interaction.prepared.name)}const h1={range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1},wl={start:m1,set:g1,defaults:h1};var x1=nn(wl,"snap");function _1(t){const{state:n,edges:o}=t,{options:r}=n;if(!o)return null;t.state={options:{targets:null,relativePoints:[{x:o.left?0:1,y:o.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},n.targetFields=n.targetFields||[["width","height"],["x","y"]],wl.start(t),n.offsets=t.state.offsets,t.state=n}function y1(t){const{interaction:n,state:o,coords:r}=t,{options:l,offsets:a}=o,i={x:r.x-a[0].x,y:r.y-a[0].y};o.options=me({},l),o.options.targets=[];for(const s of l.targets||[]){let u;if(Z.func(s)?u=s(i.x,i.y,n):u=s,!!u){for(const[c,p]of o.targetFields)if(c in u||p in u){u.x=u[c],u.y=u[p];break}o.options.targets.push(u)}}const d=wl.set(t);return o.options=l,d}const V1={range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1},jo={start:_1,set:y1,defaults:V1};var C1=nn(jo,"snapSize");function b1(t){const{edges:n}=t;return n?(t.state.targetFields=t.state.targetFields||[[n.left?"left":"right",n.top?"top":"bottom"]],jo.start(t)):null}const w1={start:b1,set:jo.set,defaults:me(Mn(jo.defaults),{targets:void 0,range:void 0,offset:{x:0,y:0}})};var N1=nn(w1,"snapEdges");const qn=()=>{};qn._defaults={};var Dr={aspectRatio:Yy,restrictEdges:o1,restrict:Qy,restrictRect:a1,restrictSize:f1,snapEdges:N1,snap:x1,snapSize:C1,spring:qn,avoid:qn,transform:qn,rubberband:qn};const k1={id:"modifiers",install(t){const{interactStatic:n}=t;t.usePlugin(Gy),t.usePlugin(jy),n.modifiers=Dr;for(const o in Dr){const{_defaults:r,_methods:l}=Dr[o];r._methods=l,t.defaults.perAction[o]=r}}};Ft.use(k1);var eo=function(t){return t.touchAction="touchAction",t.boxSizing="boxSizing",t.noListeners="noListeners",t}(eo||{});const Kr="[interact.js] ",Qr={touchAction:"https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action",boxSizing:"https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing"};function S1(t){let{logger:n}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{Interactable:o,defaults:r}=t;t.logger=n||console,r.base.devTools={ignore:{}},o.prototype.devTools=function(a){return a?(me(this.options.devTools,a),this):this.options.devTools};const{_onOff:l}=o.prototype;o.prototype._onOff=function(a,i,d,s,u){if(Z.string(this.target)||this.target.addEventListener)return l.call(this,a,i,d,s,u);Z.object(i)&&!Z.array(i)&&(s=d,d=null);const c=sn(i,d,u);for(const p in c)uo(p,t.actions)||t.logger.warn(Kr+`Can't add native "${p}" event listener to target without \`addEventListener(type, listener, options)\` prop.`);return l.call(this,a,c,s)}}const Da=[{name:eo.touchAction,perform(t){let{element:n}=t;return!!n&&!E1(n,"touchAction",/pan-|pinch|none/)},getInfo(t){let{element:n}=t;return[n,Qr.touchAction]},text:`Consider adding CSS "touch-action: none" to this element
|
|
32
|
-
`},{name:eo.boxSizing,perform(t){const{element:n}=t;return t.prepared.name==="resize"&&n instanceof Pe.HTMLElement&&!Ns(n,"boxSizing",/border-box/)},text:'Consider adding CSS "box-sizing: border-box" to this resizable element',getInfo(t){let{element:n}=t;return[n,Qr.boxSizing]}},{name:eo.noListeners,perform(t){var n;const o=t.prepared.name;return!(((n=t.interactable)==null?void 0:n.events.types[`${o}move`])||[]).length},getInfo(t){return[t.prepared.name,t.interactable]},text:"There are no listeners set for this action"}];function Ns(t,n,o){const r=t.style[n]||en.getComputedStyle(t)[n];return o.test((r||"").toString())}function E1(t,n,o){let r=t;for(;Z.element(r);){if(Ns(r,n,o))return!0;r=tn(r)}return!1}const T1="dev-tools",D1={id:T1,install:S1,listeners:{"interactions:action-start":(t,n)=>{let{interaction:o}=t;for(const r of Da){const l=o.interactable&&o.interactable.options;!(l&&l.devTools&&l.devTools.ignore[r.name])&&r.perform(o)&&n.logger.warn(Kr+r.text,...r.getInfo(o))}}},checks:Da,CheckName:eo,links:Qr,prefix:Kr};Ft.use(D1);function B1(t){let n=0,o;for(let r=0,l=t.length;r<l;r++)o=t[r].y+t[r].h,o>n&&(n=o);return n}function ln(t){return(t||[]).map(n=>({...n}))}function ks(t,n){return!(t===n||t.x+t.w<=n.x||t.x>=n.x+n.w||t.y+t.h<=n.y||t.y>=n.y+n.h)}function Wn(t,n,o){const r=Es(t),l=Ts(t),a=Array(t.length);for(let i=0,d=l.length;i<d;i++){let s=l[i];s.static||(s=$1(r,s,n,o),r.push(s)),a[t.indexOf(s)]=s,delete s.moved}return a}function $1(t,n,o,r){if(o)for(;n.y>0&&!to(t,n);)n.y--;else if(r){const a=r[n.i].y;for(;n.y>a&&!to(t,n);)n.y--}let l;for(;l=to(t,n);)n.y=l.y+l.h;return n}function I1(t,n){const o=Es(t);for(let r=0,l=t.length;r<l;r++){const a=t[r];if(a.x+a.w>n.cols&&(a.x=n.cols-a.w),a.x<0&&(a.x=0,a.w=n.cols),!a.static)o.push(a);else for(;to(o,a);)a.y++}return t}function Ba(t,n){for(let o=0,r=t.length;o<r;o++)if(t[o].i===n)return t[o]}function to(t,n){for(let o=0,r=t.length;o<r;o++)if(ks(t[o],n))return t[o]}function Ss(t,n){return t.filter(o=>ks(o,n))}function Es(t){return t.filter(n=>n.static)}function el(t,n,o,r,l,a){if(n.static)return t;const i=n.x,d=n.y,s=r&&n.y>r;typeof o=="number"&&(n.x=o),typeof r=="number"&&(n.y=r),n.moved=!0;let u=Ts(t);s&&(u=u.reverse());const c=Ss(u,n);if(a&&c.length)return n.x=i,n.y=d,n.moved=!1,t;for(let p=0,m=c.length;p<m;p++){const f=c[p];f.moved||n.y>f.y&&n.y-f.y>f.h/4||(f.static?t=$a(t,f,n,l):t=$a(t,n,f,l))}return t}function $a(t,n,o,r){if(r){const l={x:o.x,y:o.y,w:o.w,h:o.h};if(l.y=Math.max(n.y-o.h,0),!to(t,l))return el(t,o,void 0,l.y,!1)}return el(t,o,void 0,o.y+1,!1)}function M1(t,n,o,r){const l=`translate3d(${n}px,${t}px, 0)`;return{transform:l,WebkitTransform:l,MozTransform:l,msTransform:l,OTransform:l,width:`${o}px`,height:`${r}px`,position:"absolute"}}function P1(t,n,o,r){const l=`translate3d(${n*-1}px,${t}px, 0)`;return{transform:l,WebkitTransform:l,MozTransform:l,msTransform:l,OTransform:l,width:`${o}px`,height:`${r}px`,position:"absolute"}}function R1(t,n,o,r){return{top:`${t}px`,left:`${n}px`,width:`${o}px`,height:`${r}px`,position:"absolute"}}function A1(t,n,o,r){return{top:`${t}px`,right:`${n}px`,width:`${o}px`,height:`${r}px`,position:"absolute"}}function Ts(t){return[].concat(t).sort((n,o)=>n.y===o.y&&n.x===o.x?0:n.y>o.y||n.y===o.y&&n.x>o.x?1:-1)}function F1(t,n){n=n||"Layout";const o=["x","y","w","h"],r=[];if(!Array.isArray(t))throw new Error(`${n} must be an array!`);for(let l=0,a=t.length;l<a;l++){const i=t[l];for(let d=0;d<o.length;d++)if(typeof i[o[d]]!="number")throw new Error(`VueGridLayout: ${n}[${l}].${o[d]} must be a number!`);if(i.i===void 0||i.i===null)throw new Error(`VueGridLayout: ${n}[${l}].i cannot be null!`);if(typeof i.i!="number"&&typeof i.i!="string")throw new Error(`VueGridLayout: ${n}[${l}].i must be a string or number!`);if(r.indexOf(i.i)>=0)throw new Error(`VueGridLayout: ${n}[${l}].i must be unique!`);if(r.push(i.i),i.static!==void 0&&typeof i.static!="boolean")throw new Error(`VueGridLayout: ${n}[${l}].static must be a boolean!`)}}function Ia(t){return O1(t)}function O1(t){const n=t.target.offsetParent||document.body,o=t.offsetParent===document.body?{left:0,top:0}:n.getBoundingClientRect(),r=t.clientX+n.scrollLeft-o.left,l=t.clientY+n.scrollTop-o.top;return{x:r,y:l}}function Ma(t,n,o,r){return z1(t)?{deltaX:o-t,deltaY:r-n,lastX:t,lastY:n,x:o,y:r}:{deltaX:0,deltaY:0,lastX:o,lastY:r,x:o,y:r}}function z1(t){return typeof t=="number"&&!Number.isNaN(t)}function L1(t,n){const o=Bs(t);let r=o[0];for(let l=1,a=o.length;l<a;l++){const i=o[l];n>t[i]&&(r=i)}return r}function Ds(t,n){if(!n[t])throw new Error(`ResponsiveGridLayout: \`cols\` entry for breakpoint ${t} is missing!`);return n[t]}function j1(t,n,o,r,l,a){if(n[r])return ln(n[r]);let i=t;const d=Bs(o),s=d.slice(d.indexOf(r));for(let u=0,c=s.length;u<c;u++){const p=s[u];if(n[p]){i=n[p];break}}return i=ln(i||[]),Wn(I1(i,{cols:l}),a)}function Bs(t){return Object.keys(t).sort((n,o)=>t[n]-t[o])}const $s=(t,n)=>{const o=t.__vccOpts||t;for(const[r,l]of n)o[r]=l;return o},U1=["id"],H1={__name:"grid-item",props:{i:{required:!0},x:{type:Number,required:!0},y:{type:Number,required:!0},w:{type:Number,required:!0},h:{type:Number,required:!0},minW:{type:Number,required:!1,default:1},minH:{type:Number,required:!1,default:1},maxW:{type:Number,required:!1,default:1/0},maxH:{type:Number,required:!1,default:1/0},isDraggable:{type:Boolean,required:!1,default:null},isResizable:{type:Boolean,required:!1,default:null},isBounded:{type:Boolean,required:!1,default:null},static:{type:Boolean,required:!1,default:!1},dragIgnoreFrom:{type:String,required:!1,default:"a, button"},dragAllowFrom:{type:String,required:!1,default:null},resizeIgnoreFrom:{type:String,required:!1,default:"a, button"},preserveAspectRatio:{type:Boolean,required:!1,default:!1},dragOption:{type:Object,required:!1,default:()=>({})},resizeOption:{type:Object,required:!1,default:()=>({})}},emits:["container-resized","resize","resized","move","moved"],setup(t,{expose:n,emit:o}){const r=t,l=o,a={el:void 0,calcXY:U};n(a);const i=e.inject("emitter"),d=e.inject("gridLayout");let s;const u=e.reactive({cols:1,containerWidth:100,rowHeight:30,margin:[10,10],maxRows:1/0,draggable:null,resizable:null,bounded:null,transformScale:1,useCssTransforms:!0,useStyleCursor:!0,isDragging:!1,dragging:null,isResizing:!1,resizing:null,lastX:NaN,lastY:NaN,lastW:NaN,lastH:NaN,style:{},dragEventSet:!1,resizeEventSet:!1,previousW:null,previousH:null,previousX:null,previousY:null,innerX:r.x,innerY:r.y,innerW:r.w,innerH:r.h}),c=e.computed(()=>({"vue-resizable":e.unref(p),static:r.static,resizing:u.isResizing,"vue-draggable-dragging":u.isDragging,cssTransforms:u.useCssTransforms,"render-rtl":e.unref(f),"disable-userselect":u.isDragging,"no-touch":e.unref(m)})),p=e.computed(()=>u.resizable&&!r.static),m=e.computed(()=>(u.draggable||u.resizable)&&!r.static),f=e.computed(()=>d.props.isMirrored),v=e.computed(()=>e.unref(f)?"vue-resizable-handle vue-rtl-resizable-handle":"vue-resizable-handle");function g(){i.on("updateWidth",K),i.on("setDraggable",h),i.on("setResizable",y),i.on("setBounded",b),i.on("setTransformScale",_),i.on("setRowHeight",k),i.on("setMaxRows",x),i.on("directionchange",C),i.on("setColNum",N)}g(),e.onBeforeUnmount(()=>{i.off("updateWidth",K),i.off("setDraggable",h),i.off("setResizable",y),i.off("setBounded",b),i.off("setTransformScale",_),i.off("setRowHeight",k),i.off("setMaxRows",x),i.off("directionchange",C),i.off("setColNum",N),s&&s.unset()}),e.onMounted(()=>{const V={...d.props,...d.state};V.responsive&&V.lastBreakpoint?u.cols=Ds(V.lastBreakpoint,V.cols):u.cols=V.colNum,u.rowHeight=V.rowHeight,u.containerWidth=V.width!==null?V.width:100,u.margin=V.margin!==void 0?V.margin:[10,10],u.maxRows=V.maxRows,r.isDraggable===null?u.draggable=V.isDraggable:u.draggable=r.isDraggable,r.isResizable===null?u.resizable=V.isResizable:u.resizable=r.isResizable,r.isBounded===null?u.bounded=V.isBounded:u.bounded=r.isBounded,u.transformScale=V.transformScale,u.useCssTransforms=V.useCssTransforms,u.useStyleCursor=V.useStyleCursor,B()}),e.watch(()=>r.isDraggable,()=>{u.draggable=r.isDraggable}),e.watch(()=>r.static,()=>{A(),w()}),e.watch(()=>u.draggable,()=>{A()}),e.watch(()=>r.isResizable,()=>{u.resizable=r.isResizable}),e.watch(()=>r.isBounded,()=>{u.bounded=r.isBounded}),e.watch(()=>u.resizable,()=>{w()}),e.watch(()=>u.rowHeight,()=>{B(),z()}),e.watch(()=>u.cols,()=>{w(),B(),z()}),e.watch(()=>u.containerWidth,()=>{w(),B(),z()}),e.watch(()=>r.x,V=>{u.innerX=V,B()}),e.watch(()=>r.y,V=>{u.innerY=V,B()}),e.watch(()=>r.h,V=>{u.innerH=V,B()}),e.watch(()=>r.w,V=>{u.innerW=V,B()}),e.watch(f,()=>{w(),B()}),e.watch(()=>r.minH,()=>{w()}),e.watch(()=>r.maxH,()=>{w()}),e.watch(()=>r.minW,()=>{w()}),e.watch(()=>r.maxW,()=>{w()}),e.watch(()=>d.props.margin,V=>{!V||Number(V[0])===Number(u.margin[0])&&Number(V[1])===Number(u.margin[1])||(u.margin=V.map(D=>Number(D)||0),B(),z())});function h(V){r.isDraggable===null&&(u.draggable=V)}function y(V){r.isResizable===null&&(u.resizable=V)}function b(V){r.isBounded===null&&(u.bounded=V)}function _(V){u.transformScale=V}function k(V){u.rowHeight=V}function x(V){u.maxRows=V}function C(){B()}function N(V){u.cols=parseInt(V)}function B(){r.x+r.w>u.cols?(u.innerX=0,u.innerW=r.w>u.cols?u.cols:r.w):(u.innerX=r.x,u.innerW=r.w);const V=T(u.innerX,u.innerY,u.innerW,u.innerH);u.isDragging&&(V.top=u.dragging.top,e.unref(f)?V.right=u.dragging.left:V.left=u.dragging.left),u.isResizing&&(V.width=u.resizing.width,V.height=u.resizing.height);let D;u.useCssTransforms?e.unref(f)?D=P1(V.top,V.right,V.width,V.height):D=M1(V.top,V.left,V.width,V.height):e.unref(f)?D=A1(V.top,V.right,V.width,V.height):D=R1(V.top,V.left,V.width,V.height),u.style=D}function z(){const V={};for(const D of["width","height"]){const L=u.style[D].match(/^(\d+)px$/);if(!L)return;V[D]=L[1]}l("container-resized",r.i,r.h,r.w,V.height,V.width)}function Y(V){if(r.static)return;const D=Ia(V);if(D==null)return;const{x:L,y:ee}=D,O={width:0,height:0};let W;switch(V.type){case"resizestart":{w(),u.previousW=u.innerW,u.previousH=u.innerH,W=T(u.innerX,u.innerY,u.innerW,u.innerH),O.width=W.width,O.height=W.height,u.resizing=O,u.isResizing=!0;break}case"resizemove":{const se=Ma(u.lastW,u.lastH,L,ee);e.unref(f)?O.width=u.resizing.width-se.deltaX/u.transformScale:O.width=u.resizing.width+se.deltaX/u.transformScale,O.height=u.resizing.height+se.deltaY/u.transformScale,u.resizing=O;break}case"resizeend":{W=T(u.innerX,u.innerY,u.innerW,u.innerH),O.width=W.width,O.height=W.height,u.resizing=null,u.isResizing=!1;break}}B(),W=M(O.height,O.width),W.w<r.minW&&(W.w=r.minW),W.w>r.maxW&&(W.w=r.maxW),W.h<r.minH&&(W.h=r.minH),W.h>r.maxH&&(W.h=r.maxH),W.h<1&&(W.h=1),W.w<1&&(W.w=1),u.lastW=L,u.lastH=ee,(u.innerW!==W.w||u.innerH!==W.h)&&l("resize",r.i,W.h,W.w,O.height,O.width),V.type==="resizeend"&&(u.previousW!==u.innerW||u.previousH!==u.innerH)&&l("resized",r.i,W.h,W.w,O.height,O.width),i.emit("resizeEvent",[V.type,r.i,u.innerX,u.innerY,W.h,W.w])}function R(V){if(r.static||u.isResizing)return;const D=Ia(V);if(D===null)return;const{x:L,y:ee}=D,O={top:0,left:0};switch(V.type){case"dragstart":{u.previousX=u.innerX,u.previousY=u.innerY;const se=V.target.offsetParent.getBoundingClientRect(),G=V.target.getBoundingClientRect(),ue=G.left/u.transformScale,te=se.left/u.transformScale,we=G.right/u.transformScale,je=se.right/u.transformScale,ye=G.top/u.transformScale,$e=se.top/u.transformScale;e.unref(f)?O.left=(we-je)*-1:O.left=ue-te,O.top=ye-$e,u.dragging=O,u.isDragging=!0;break}case"dragend":{if(!u.isDragging)return;const se=V.target.offsetParent.getBoundingClientRect(),G=V.target.getBoundingClientRect(),ue=G.left/u.transformScale,te=se.left/u.transformScale,we=G.right/u.transformScale,je=se.right/u.transformScale,ye=G.top/u.transformScale,$e=se.top/u.transformScale;e.unref(f)?O.left=(we-je)*-1:O.left=ue-te,O.top=ye-$e,u.dragging=null,u.isDragging=!1;break}case"dragmove":{const se=Ma(u.lastX,u.lastY,L,ee);if(e.unref(f)?O.left=u.dragging.left-se.deltaX/u.transformScale:O.left=u.dragging.left+se.deltaX/u.transformScale,O.top=u.dragging.top+se.deltaY/u.transformScale,u.bounded){const G=V.target.offsetParent.clientHeight-j(r.h,u.rowHeight,u.margin[1]);O.top=P(O.top,0,G);const ue=S(),te=u.containerWidth-j(r.w,ue,u.margin[0]);O.left=P(O.left,0,te)}u.dragging=O;break}}B();let W;e.unref(f),W=U(O.top,O.left),u.lastX=L,u.lastY=ee,(u.innerX!==W.x||u.innerY!==W.y)&&l("move",r.i,W.x,W.y),V.type==="dragend"&&(u.previousX!==u.innerX||u.previousY!==u.innerY)&&l("moved",r.i,W.x,W.y),i.emit("dragEvent",[V.type,r.i,W.x,W.y,u.innerH,u.innerW])}function T(V,D,L,ee){const O=S();let W;return e.unref(f)?W={right:Math.round(O*V+(V+1)*u.margin[0]),top:Math.round(u.rowHeight*D+(D+1)*u.margin[1]),width:L===1/0?L:Math.round(O*L+Math.max(0,L-1)*u.margin[0]),height:ee===1/0?ee:Math.round(u.rowHeight*ee+Math.max(0,ee-1)*u.margin[1])}:W={left:Math.round(O*V+(V+1)*u.margin[0]),top:Math.round(u.rowHeight*D+(D+1)*u.margin[1]),width:L===1/0?L:Math.round(O*L+Math.max(0,L-1)*u.margin[0]),height:ee===1/0?ee:Math.round(u.rowHeight*ee+Math.max(0,ee-1)*u.margin[1])},W}function U(V,D){const L=S();let ee=Math.round((D-u.margin[0])/(L+u.margin[0])),O=Math.round((V-u.margin[1])/(u.rowHeight+u.margin[1]));return ee=Math.max(Math.min(ee,u.cols-u.innerW),0),O=Math.max(Math.min(O,u.maxRows-u.innerH),0),{x:ee,y:O}}function S(){return(u.containerWidth-u.margin[0]*(u.cols+1))/u.cols}function j(V,D,L){return Number.isFinite(V)?Math.round(D*V+Math.max(0,V-1)*L):V}function P(V,D,L){return Math.max(Math.min(V,L),D)}function M(V,D,L=!1){const ee=S();let O=Math.round((D+u.margin[0])/(ee+u.margin[0])),W=0;return L?W=Math.ceil((V+u.margin[1])/(u.rowHeight+u.margin[1])):W=Math.round((V+u.margin[1])/(u.rowHeight+u.margin[1])),O=Math.max(Math.min(O,u.cols-u.innerX),0),W=Math.max(Math.min(W,u.maxRows-u.innerY),0),{w:O,h:W}}function K(V,D){u.containerWidth=V,D!=null&&(u.cols=D)}function A(){if(s==null&&(s=Ft(a.el),u.useStyleCursor||s.styleCursor(!1)),u.draggable&&!r.static){const V={ignoreFrom:r.dragIgnoreFrom,allowFrom:r.dragAllowFrom,...r.dragOption};s.draggable(V),u.dragEventSet||(u.dragEventSet=!0,s.on("dragstart dragmove dragend",D=>{R(D)}))}else s.draggable({enabled:!1})}function w(){if(s==null&&(s=Ft(a.el),u.useStyleCursor||s.styleCursor(!1)),u.resizable&&!r.static){const V=T(0,0,r.maxW,r.maxH),D=T(0,0,r.minW,r.minH),L={edges:{left:!1,right:`.${e.unref(v).trim().replace(" ",".")}`,bottom:`.${e.unref(v).trim().replace(" ",".")}`,top:!1},ignoreFrom:r.resizeIgnoreFrom,restrictSize:{min:{height:D.height*u.transformScale,width:D.width*u.transformScale},max:{height:V.height*u.transformScale,width:V.width*u.transformScale}},...r.resizeOption};r.preserveAspectRatio&&(L.modifiers=[Ft.modifiers.aspectRatio({ratio:"preserve"})]),s.resizable(L),u.resizeEventSet||(u.resizeEventSet=!0,s.on("resizestart resizemove resizeend",ee=>{Y(ee)}))}else s.resizable({enabled:!1})}function E(V){a.el=V}return(V,D)=>(e.openBlock(),e.createElementBlock("div",{ref:E,class:e.normalizeClass(["vue-grid-item",c.value]),style:e.normalizeStyle(u.style),id:t.i,key:t.i},[e.renderSlot(V.$slots,"default",{class:e.normalizeClass({rtl:f.value})},void 0,!0),p.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(v.value)},null,2)):e.createCommentVNode("",!0)],14,U1))}},Is=$s(H1,[["__scopeId","data-v-99aff433"]]);function G1(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ms={exports:{}},q1=Ms.exports={};q1.forEach=function(t,n){for(var o=0;o<t.length;o++){var r=n(t[o]);if(r)return r}};var Ps=Ms.exports,W1=function(t){var n=t.stateHandler.getState;function o(i){var d=n(i);return d&&!!d.isDetectable}function r(i){n(i).isDetectable=!0}function l(i){return!!n(i).busy}function a(i,d){n(i).busy=!!d}return{isDetectable:o,markAsDetectable:r,isBusy:l,markBusy:a}},Z1=function(t){var n={};function o(i){var d=t.get(i);return d===void 0?[]:n[d]||[]}function r(i,d){var s=t.get(i);n[s]||(n[s]=[]),n[s].push(d)}function l(i,d){for(var s=o(i),u=0,c=s.length;u<c;++u)if(s[u]===d){s.splice(u,1);break}}function a(i){var d=o(i);d&&(d.length=0)}return{get:o,add:r,removeListener:l,removeAllListeners:a}},Y1=function(){var t=1;function n(){return t++}return{generate:n}},X1=function(t){var n=t.idGenerator,o=t.stateHandler.getState;function r(a){var i=o(a);return i&&i.id!==void 0?i.id:null}function l(a){var i=o(a);if(!i)throw new Error("setId required the element to have a resize detection state.");var d=n.generate();return i.id=d,d}return{get:r,set:l}},J1=function(t){function n(){}var o={log:n,warn:n,error:n};if(!t&&window.console){var r=function(l,a){l[a]=function(){var i=console[a];if(i.apply)i.apply(console,arguments);else for(var d=0;d<arguments.length;d++)i(arguments[d])}};r(o,"log"),r(o,"warn"),r(o,"error")}return o},Rs={exports:{}},As=Rs.exports={};As.isIE=function(t){function n(){var r=navigator.userAgent.toLowerCase();return r.indexOf("msie")!==-1||r.indexOf("trident")!==-1||r.indexOf(" edge/")!==-1}if(!n())return!1;if(!t)return!0;var o=function(){var r,l=3,a=document.createElement("div"),i=a.getElementsByTagName("i");do a.innerHTML="<!--[if gt IE "+ ++l+"]><i></i><![endif]-->";while(i[0]);return l>4?l:r}();return t===o};As.isLegacyOpera=function(){return!!window.opera};var Fs=Rs.exports,Os={exports:{}},K1=Os.exports={};K1.getOption=Q1;function Q1(t,n,o){var r=t[n];return r==null&&o!==void 0?o:r}var eV=Os.exports,Pa=eV,tV=function(t){t=t||{};var n=t.reporter,o=Pa.getOption(t,"async",!0),r=Pa.getOption(t,"auto",!0);r&&!o&&(n&&n.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true."),o=!0);var l=Ra(),a,i=!1;function d(f,v){!i&&r&&o&&l.size()===0&&c(),l.add(f,v)}function s(){for(i=!0;l.size();){var f=l;l=Ra(),f.process()}i=!1}function u(f){i||(f===void 0&&(f=o),a&&(p(a),a=null),f?c():s())}function c(){a=m(s)}function p(f){var v=clearTimeout;return v(f)}function m(f){var v=function(g){return setTimeout(g,0)};return v(f)}return{add:d,force:u}};function Ra(){var t={},n=0,o=0,r=0;function l(d,s){s||(s=d,d=0),d>o?o=d:d<r&&(r=d),t[d]||(t[d]=[]),t[d].push(s),n++}function a(){for(var d=r;d<=o;d++)for(var s=t[d],u=0;u<s.length;u++){var c=s[u];c()}}function i(){return n}return{add:l,process:a,size:i}}var Nl="_erd";function nV(t){return t[Nl]={},zs(t)}function zs(t){return t[Nl]}function oV(t){delete t[Nl]}var rV={initState:nV,getState:zs,cleanState:oV},Ln=Fs,lV=function(t){t=t||{};var n=t.reporter,o=t.batchProcessor,r=t.stateHandler.getState;if(!n)throw new Error("Missing required dependency: reporter.");function l(u,c){function p(){c(u)}if(Ln.isIE(8))r(u).object={proxy:p},u.attachEvent("onresize",p);else{var m=d(u);if(!m)throw new Error("Element is not detectable by this strategy.");m.contentDocument.defaultView.addEventListener("resize",p)}}function a(u){var c=t.important?" !important; ":"; ";return(u.join(c)+c).trim()}function i(u,c,p){p||(p=c,c=u,u=null),u=u||{},u.debug;function m(f,v){var g=a(["display: block","position: absolute","top: 0","left: 0","width: 100%","height: 100%","border: none","padding: 0","margin: 0","opacity: 0","z-index: -1000","pointer-events: none"]),h=!1,y=window.getComputedStyle(f),b=f.offsetWidth,_=f.offsetHeight;r(f).startSize={width:b,height:_};function k(){function x(){if(y.position==="static"){f.style.setProperty("position","relative",u.important?"important":"");var B=function(z,Y,R,T){function U(j){return j.replace(/[^-\d\.]/g,"")}var S=R[T];S!=="auto"&&U(S)!=="0"&&(z.warn("An element that is positioned static has style."+T+"="+S+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+T+" will be set to 0. Element: ",Y),Y.style.setProperty(T,"0",u.important?"important":""))};B(n,f,y,"top"),B(n,f,y,"right"),B(n,f,y,"bottom"),B(n,f,y,"left")}}function C(){h||x();function B(Y,R){if(!Y.contentDocument){var T=r(Y);T.checkForObjectDocumentTimeoutId&&window.clearTimeout(T.checkForObjectDocumentTimeoutId),T.checkForObjectDocumentTimeoutId=setTimeout(function(){T.checkForObjectDocumentTimeoutId=0,B(Y,R)},100);return}R(Y.contentDocument)}var z=this;B(z,function(Y){v(f)})}y.position!==""&&(x(),h=!0);var N=document.createElement("object");N.style.cssText=g,N.tabIndex=-1,N.type="text/html",N.setAttribute("aria-hidden","true"),N.onload=C,Ln.isIE()||(N.data="about:blank"),r(f)&&(f.appendChild(N),r(f).object=N,Ln.isIE()&&(N.data="about:blank"))}o?o.add(k):k()}Ln.isIE(8)?p(c):m(c,p)}function d(u){return r(u).object}function s(u){if(r(u)){var c=d(u);c&&(Ln.isIE(8)?u.detachEvent("onresize",c.proxy):u.removeChild(c),r(u).checkForObjectDocumentTimeoutId&&window.clearTimeout(r(u).checkForObjectDocumentTimeoutId),delete r(u).object)}}return{makeDetectable:i,addListener:l,uninstall:s}},aV=Ps.forEach,iV=function(t){t=t||{};var n=t.reporter,o=t.batchProcessor,r=t.stateHandler.getState;t.stateHandler.hasState;var l=t.idHandler;if(!o)throw new Error("Missing required dependency: batchProcessor");if(!n)throw new Error("Missing required dependency: reporter.");var a=c(),i="erd_scroll_detection_scrollbar_style",d="erd_scroll_detection_container";function s(k){p(k,i,d)}s(window.document);function u(k){var x=t.important?" !important; ":"; ";return(k.join(x)+x).trim()}function c(){var k=500,x=500,C=document.createElement("div");C.style.cssText=u(["position: absolute","width: "+k*2+"px","height: "+x*2+"px","visibility: hidden","margin: 0","padding: 0"]);var N=document.createElement("div");N.style.cssText=u(["position: absolute","width: "+k+"px","height: "+x+"px","overflow: scroll","visibility: none","top: "+-k*3+"px","left: "+-x*3+"px","visibility: hidden","margin: 0","padding: 0"]),N.appendChild(C),document.body.insertBefore(N,document.body.firstChild);var B=k-N.clientWidth,z=x-N.clientHeight;return document.body.removeChild(N),{width:B,height:z}}function p(k,x,C){function N(R,T){T=T||function(S){k.head.appendChild(S)};var U=k.createElement("style");return U.innerHTML=R,U.id=x,T(U),U}if(!k.getElementById(x)){var B=C+"_animation",z=C+"_animation_active",Y=`/* Created by the element-resize-detector library. */
|
|
33
|
-
|
|
31
|
+
*/const ca=t=>t!==null&&!!t&&typeof t=="object"&&!Array.isArray(t);function Wi(t){return Number(t)>=0}function Rh(t){return typeof t=="object"&&t!==null}function Ih(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}function fa(t){if(!Rh(t)||Ih(t)!=="[object Object]")return!1;if(Object.getPrototypeOf(t)===null)return!0;let n=t;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(t)===n}function Xi(t,n){return Object.keys(n).forEach(o=>{if(fa(n[o])&&fa(t[o])){t[o]||(t[o]={}),Xi(t[o],n[o]);return}t[o]=n[o]}),t}function Mh(t){const n=t.split(".");if(!n.length)return"";let o=String(n[0]);for(let r=1;r<n.length;r++){if(Wi(n[r])){o+=`[${n[r]}]`;continue}o+=`.${n[r]}`}return o}function Yi(t,n){return{__type:"VVTypedSchema",async parse(r){const l=await t.safeParseAsync(r,n);if(l.success)return{value:l.data,errors:[]};const a={};return Zi(l.error.issues,a),{errors:Object.values(a)}},cast(r){try{return t.parse(r)}catch{const a=Ki(t);return ca(a)&&ca(r)?Xi(a,r):r}},describe(r){try{if(!r)return{required:!t.isOptional(),exists:!0};const l=Ph(r,t);return l?{required:!l.isOptional(),exists:!0}:{required:!1,exists:!1}}catch{return process.env.NODE_ENV!=="production"&&console.warn(`Failed to describe path ${r} on the schema, returning a default description.`),{required:!1,exists:!1}}}}}function Zi(t,n){t.forEach(o=>{const r=Mh(o.path.join("."));o.code==="invalid_union"&&(Zi(o.unionErrors.flatMap(l=>l.issues),n),!r)||(n[r]||(n[r]={errors:[],path:r}),n[r].errors.push(o.message))})}function Ki(t){if(t instanceof Oe)return Object.fromEntries(Object.entries(t.shape).map(([n,o])=>o instanceof Po?[n,o._def.defaultValue()]:o instanceof Oe?[n,Ki(o)]:[n,void 0]))}function Ph(t,n){if(!pa(n))return null;if(co(t))return n.shape[Ho(t)];const o=(t||"").split(/\.|\[(\d+)\]/).filter(Boolean);let r=n;for(let l=0;l<=o.length;l++){const a=o[l];if(!a||!r)return r;if(pa(r)){r=r.shape[a]||null;continue}Wi(a)&&Fh(r)&&(r=r._def.type)}return null}function Ji(t){return t._def.typeName}function Fh(t){return Ji(t)===ge.ZodArray}function pa(t){return Ji(t)===ge.ZodObject}let qr=1;var Oh=class{constructor(){He(this,"subscribers");He(this,"toasts");He(this,"dismissedToasts");He(this,"subscribe",t=>(this.subscribers.push(t),()=>{const n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}));He(this,"publish",t=>{this.subscribers.forEach(n=>n(t))});He(this,"addToast",t=>{this.publish(t),this.toasts=[...this.toasts,t]});He(this,"create",t=>{var i;const{message:n,...o}=t,r=typeof t.id=="number"||t.id&&((i=t.id)==null?void 0:i.length)>0?t.id:qr++,l=this.toasts.find(u=>u.id===r),a=t.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),l?this.toasts=this.toasts.map(u=>u.id===r?(this.publish({...u,...t,id:r,title:n}),{...u,...t,id:r,dismissible:a,title:n}):u):this.addToast({title:n,...o,dismissible:a,id:r}),r});He(this,"dismiss",t=>(t?(this.dismissedToasts.add(t),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:t,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(o=>o({id:n.id,dismiss:!0}))}),t));He(this,"message",(t,n)=>this.create({...n,message:t,type:"default"}));He(this,"error",(t,n)=>this.create({...n,type:"error",message:t}));He(this,"success",(t,n)=>this.create({...n,type:"success",message:t}));He(this,"info",(t,n)=>this.create({...n,type:"info",message:t}));He(this,"warning",(t,n)=>this.create({...n,type:"warning",message:t}));He(this,"loading",(t,n)=>this.create({...n,type:"loading",message:t}));He(this,"promise",(t,n)=>{if(!n)return;let o;n.loading!==void 0&&(o=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const r=Promise.resolve(t instanceof Function?t():t);let l=o!==void 0,a;const i=r.then(async s=>{if(a=["resolve",s],e.isVNode(s))l=!1,this.create({id:o,type:"default",message:s});else if(Lh(s)&&!s.ok){l=!1;const c=typeof n.error=="function"?await n.error(`HTTP error! status: ${s.status}`):n.error,f=typeof n.description=="function"?await n.description(`HTTP error! status: ${s.status}`):n.description,p=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"error",description:f,...p})}else if(s instanceof Error){l=!1;const c=typeof n.error=="function"?await n.error(s):n.error,f=typeof n.description=="function"?await n.description(s):n.description,p=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"error",description:f,...p})}else if(n.success!==void 0){l=!1;const c=typeof n.success=="function"?await n.success(s):n.success,f=typeof n.description=="function"?await n.description(s):n.description,p=typeof c=="object"&&!e.isVNode(c)?c:{message:c||"",id:o||""};this.create({id:o,type:"success",description:f,...p})}}).catch(async s=>{if(a=["reject",s],n.error!==void 0){l=!1;const d=typeof n.error=="function"?await n.error(s):n.error,c=typeof n.description=="function"?await n.description(s):n.description,m=typeof d=="object"&&!e.isVNode(d)?d:{message:d||"",id:o||""};this.create({id:o,type:"error",description:c,...m})}}).finally(()=>{var s;l&&(this.dismiss(o),o=void 0),(s=n.finally)==null||s.call(n)}),u=()=>new Promise((s,d)=>i.then(()=>a[0]==="reject"?d(a[1]):s(a[1])).catch(d));return typeof o!="string"&&typeof o!="number"?{unwrap:u}:Object.assign(o,{unwrap:u})});He(this,"custom",(t,n)=>{const o=(n==null?void 0:n.id)||qr++;return this.publish({component:t,id:o,...n}),o});He(this,"getActiveToasts",()=>this.toasts.filter(t=>!this.dismissedToasts.has(t.id)));this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}};const ct=new Oh;function zh(t,n){const o=(n==null?void 0:n.id)||qr++;return ct.create({message:t,id:o,type:"default",...n}),o}const Lh=t=>t&&typeof t=="object"&&"ok"in t&&typeof t.ok=="boolean"&&"status"in t&&typeof t.status=="number",Uh=zh,jh=()=>ct.toasts,$h=()=>ct.getActiveToasts(),Me=Object.assign(Uh,{success:ct.success,info:ct.info,warning:ct.warning,error:ct.error,custom:ct.custom,message:ct.message,promise:ct.promise,dismiss:ct.dismiss,loading:ct.loading},{getHistory:jh,getToasts:$h}),Hh={class:"relative @container"},qh={class:"flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6"},Gh={class:"flex items-center"},Wh={class:"text-lg font-semibold mx-2"},Xh={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Yh={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},Zh={key:2,class:"bg-gray-300 dark:bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},Kh={class:"flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24"},Jh={class:"flex flex-col gap-4 w-full @3xl:w-2/3"},Qh={class:"flex flex-col gap-4 w-full @3xl:w-1/3"},ex={key:0,class:"fixed bottom-4 left-0 md:left-12 right-0 min-w-xs max-w-5xl w-[calc(100%-2rem)] md:w-[calc(100%-5rem)] xl:w-[calc(100%-2rem)] h-16 border border-white/10 backdrop-blur-sm border-t border-border flex items-center justify-center px-4 mx-auto z-[9999] rounded-xl overflow-hidden shadow bg-[radial-gradient(#ffffff80,transparent)] dark:bg-[radial-gradient(#00000080,transparent)]"},tx={class:"w-full max-w-5xl flex items-center justify-end mx-auto"},ma=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l,hasPermissionOR:a}=Z.useModulePermissions(),{params:i,navigateTo:u}=Z.useModuleRoute(),{confirm:s}=Z.useConfirmation(),{setModuleBreadcrumbs:d}=Z.useBreadcrumbs(),c=Z.useFirebaseIntegration(r.config.project);e.provide("sources",r.config.allowedMediaSources),e.provide("defaultSource",r.config.defaultUploadMediaSource);const f=e.computed(()=>!i.value.productId||i.value.productId==="new"),m=e.ref(!1),p=Yi(Lt({title:_e().min(1,"Title is required"),description:_e().optional(),media:en(_e()).optional(),price:tn.number().positive("Must be positive"),compareAtPrice:tn.number().positive("Must be positive").optional(),isTaxable:On().optional(),costPerItem:tn.number().positive("Must be positive").optional(),currency:_e(),stock:tn.number().optional(),trackInventory:On().optional(),allowBackorder:On().optional(),isPhysicalProduct:On().optional(),weight:tn.number().optional(),weightUnit:_e().optional(),slug:_e(),seo:Lt({title:_e().optional(),description:_e().optional()}).optional(),createdAt:da(),updatedAt:da(),status:_e(),options:en(Lt({id:_e(),name:_e().min(1),values:en(Lt({id:_e(),value:_e()}))})).optional(),variants:en(Lt({combinedOptions:_e().min(1),name:_e().min(1),disabled:On().optional(),price:tn.number().positive("Must be positive"),stock:tn.number().optional(),image:_e().optional(),options:en(Lt({optionId:_e(),option:_e(),valueId:_e(),value:_e()}))})).optional(),tags:en(_e()).optional(),collections:en(_e()).optional()})),{handleSubmit:g,errors:v,values:h,setValues:x}=Ti({validationSchema:p,initialValues:{createdAt:new Date,updatedAt:new Date,status:"draft",options:[],variants:[],media:[],isTaxable:!1,trackInventory:!1,allowBackorder:!1,isPhysicalProduct:!0,weight:0,weightUnit:"kg",tags:[],collections:[],currency:r.config.defaultCurrency||"USD",price:1,stock:0,seo:{title:"",description:""}}}),b=B=>{var I,X;let E={...B,maxPrice:y(),minPrice:N(),maxCompareAtPrice:V(),minCompareAtPrice:C(),isSingleVariant:!B.variants||B.variants.length===0,variantsTotal:((I=B.variants)==null?void 0:I.length)||1,stock:_(),featuredMedia:(X=B.media)==null?void 0:X[0]};return E.isPhysicalProduct?E.type="physical":(E.weight=0,E.weightUnit="kg",E.type="digital"),E},y=()=>!h.variants||h.variants.length===0?h.price:Math.max(...h.variants.map(B=>B.price)),N=()=>!h.variants||h.variants.length===0?h.price:Math.min(...h.variants.map(B=>B.price)),C=()=>h.compareAtPrice,V=()=>h.compareAtPrice,_=()=>!h.variants||h.variants.length===0?h.stock:h.variants.reduce((B,E)=>E.stock<0?B:B+E.stock,0),S=g(async B=>{m.value=!0;let E=b(B);if(f.value){E.createdAt=new Date,E.updatedAt=new Date;const I=await c.add(r.config.productCollection,E);u(I.id),Me.success("Product created")}else E.updatedAt=new Date,await c.update(r.config.productCollection,i.value.productId,E),u(`${i.value.productId}`),Me.success("Product updated");m.value=!1}),R=async()=>{var E;const B=await c.get(r.config.productCollection,i.value.productId);B.createdAt=new Date(B.createdAt),B.updatedAt=new Date(B.updatedAt),console.log("prod",B),(E=B.options)==null||E.forEach(I=>{I.values.forEach(X=>{X.touched=!0}),I.values.push({id:Math.random().toString(36).substring(2,15),value:""})}),x(B),d([{text:B.title,href:`/products/${i.value.productId}`,disabled:!0}])},$=async()=>{try{let B={...h};B.id=void 0,B.createdAt=new Date,B.updatedAt=new Date,B.slug=B.slug+"-copy",B.status="draft",B.title=B.title+" (copy)";const E=await c.add(r.config.productCollection,B);u(E.id),Me.success("Product duplicated")}catch{Me.error("Failed to duplicate product")}},U=async()=>{try{await c.update(r.config.productCollection,i.value.productId,{status:"archived"}),x({status:"archived"},{force:!1}),Me.success("Product archived")}catch{Me.error("Failed to archive product")}},P=async()=>{if(await s("Are you sure you want to delete this product?"))try{await c.remove(r.config.productCollection,i.value.productId),u(""),Me.success("Product deleted")}catch{Me.error("Failed to delete product")}},G=async()=>{if(!r.config.collectionsCollection)return[];const B=r.config.collectionsCollection.split(":");if(B.length!==2)return[];const E=await c.get(B[0]);return(E==null?void 0:E[B[1]])||[]},k=e.ref([]);return k.value=([n,o]=e.withAsyncContext(()=>G()),n=await n,o(),n),e.onMounted(()=>{f.value?d([{text:"New Product",href:"/products/new",disabled:!0}]):R()}),(B,E)=>{const I=e.resolveComponent("Button"),X=e.resolveComponent("MenubarTrigger"),le=e.resolveComponent("MenubarMenu"),F=e.resolveComponent("MenubarItem"),T=e.resolveComponent("MenubarContent"),w=e.resolveComponent("Menubar");return e.openBlock(),e.createElementBlock("div",Hh,[e.createElementVNode("div",qh,[e.createElementVNode("div",Gh,[e.createVNode(I,{variant:"ghost",onClick:E[0]||(E[0]=A=>e.unref(u)(""))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(z.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",Wh,e.toDisplayString(f.value?"New Product":e.unref(h).title),1),e.unref(h).status==="published"?(e.openBlock(),e.createElementBlock("span",Xh,"Published")):e.unref(h).status==="draft"?(e.openBlock(),e.createElementBlock("span",Yh,"Draft")):e.unref(h).status==="archived"?(e.openBlock(),e.createElementBlock("span",Zh,"Archived")):e.createCommentVNode("",!0)]),f.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(w,{key:0,class:"rounded-lg shadow-xs"},{default:e.withCtx(()=>[e.unref(l)("create-product")?(e.openBlock(),e.createBlock(le,{key:0},{default:e.withCtx(()=>[e.createVNode(X,{onClick:$},{default:e.withCtx(()=>E[1]||(E[1]=[e.createTextVNode("Duplicate",-1)])),_:1,__:[1]})]),_:1})):e.createCommentVNode("",!0),e.createVNode(le,null,{default:e.withCtx(()=>[e.createVNode(X,null,{default:e.withCtx(()=>E[2]||(E[2]=[e.createTextVNode("Preview",-1)])),_:1,__:[2]})]),_:1}),e.unref(a)("edit-product","delete-product")?(e.openBlock(),e.createBlock(le,{key:1},{default:e.withCtx(()=>[e.createVNode(X,null,{default:e.withCtx(()=>E[3]||(E[3]=[e.createTextVNode("More actions",-1)])),_:1,__:[3]}),e.createVNode(T,null,{default:e.withCtx(()=>[e.unref(l)("edit-product")?(e.openBlock(),e.createBlock(F,{key:0,onClick:U},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Archive),{class:"size-4"}),E[4]||(E[4]=e.createTextVNode(" Archive product ",-1))]),_:1,__:[4]})):e.createCommentVNode("",!0),e.unref(l)("delete-product")?(e.openBlock(),e.createBlock(F,{key:1,variant:"destructive",onClick:P},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Trash),{class:"size-4"}),E[5]||(E[5]=e.createTextVNode(" Delete product ",-1))]),_:1,__:[5]})):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}))]),e.createElementVNode("div",Kh,[e.createElementVNode("div",Jh,[e.createVNode(cm),e.createVNode(wm),e.createVNode(Sm),e.createVNode(Tm),e.createVNode(Mv),e.createVNode(Qv)]),e.createElementVNode("div",Qh,[e.createVNode(rh),e.createVNode(ah,{config:t.config},null,8,["config"])])]),e.unref(a)("create-product","edit-product")?(e.openBlock(),e.createElementBlock("div",ex,[e.createElementVNode("div",tx,[f.value&&e.unref(l)("create-product")?(e.openBlock(),e.createBlock(I,{key:0,onClick:e.unref(S),disabled:m.value},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(m.value?"Creating":"Create")+" New Product ",1)]),_:1},8,["onClick","disabled"])):e.unref(l)("edit-product")?(e.openBlock(),e.createBlock(I,{key:1,onClick:e.unref(S),disabled:m.value},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(m.value?"Saving":"Save")+" Changes ",1)]),_:1},8,["onClick","disabled"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)])}}}),nx=[{path:"",component:sp},{path:"/:productId",component:ma},{path:"/new",component:ma}],ox=[{key:"view-product-detail",name:"View product detail",description:"Team member can click on a product to view its details"},{key:"create-product",name:"Create product",description:"Team member can create a new product"},{key:"edit-product",name:"Edit product",description:"Team member can edit a product"},{key:"delete-product",name:"Delete product",description:"Team member can delete a product"}],rx={component:xf,metadata:yf,config:Cf,routes:nx,permissions:ox},lx=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=useModuleRoute();return(o,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))}}),ax={name:"Custom",description:"Custom module",icon:"mdi-table",version:"1.0.0"},ix={},sx=e.defineComponent({__name:"AdminToolbar",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,r=n,l=e.computed({get(){return o.modelValue},set(a){r("update:modelValue",a)}});return(a,i)=>{const u=e.resolveComponent("SegmentedControlButton"),s=e.resolveComponent("TooltipTrigger"),d=e.resolveComponent("TooltipContent"),c=e.resolveComponent("Tooltip"),f=e.resolveComponent("SegmentedControl");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(f,{direction:"vertical",class:"w-12",modelValue:l.value,"onUpdate:modelValue":i[0]||(i[0]=m=>l.value=m),"allow-empty":""},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(u,{value:"new-element"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Component),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(d,{side:"right"},{default:e.withCtx(()=>i[1]||(i[1]=[e.createElementVNode("p",null,"Add new element",-1)])),_:1,__:[1]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(u,{value:"variables"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Variable),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(d,{side:"right"},{default:e.withCtx(()=>i[2]||(i[2]=[e.createElementVNode("p",null,"Variables",-1)])),_:1,__:[2]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(u,{value:"api-actions"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.ChevronsLeftRightEllipsis),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(d,{side:"right"},{default:e.withCtx(()=>i[3]||(i[3]=[e.createElementVNode("p",null,"APIs & Actions",-1)])),_:1,__:[3]})]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(s,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(u,{value:"history"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.History),{class:"size-4"})]),_:1})]),_:1}),e.createVNode(d,{side:"right"},{default:e.withCtx(()=>i[4]||(i[4]=[e.createElementVNode("p",null,"History",-1)])),_:1,__:[4]})]),_:1})]),_:1},8,["modelValue"])])}}}),ux=e.defineComponent({__name:"DraggableElement",props:{elementData:{type:Object,default:()=>({})}},setup(t){const n=t,o=e.inject("mouseXY"),r=e.inject("DragPos"),l=e.inject("state"),a=e.inject("isDragging");async function i(){var p,g,v,h,x,b,y,N;a.value=!0;const c=document.querySelector("#custom-module-wrapper .vue-grid-layout").getBoundingClientRect();let f=!1;if(o.x>c.left&&o.x<c.right&&o.y>c.top&&o.y<c.bottom&&(f=!0),f===!0&&l.layout.findIndex(C=>C.i==="drop")===-1&&(await s(l.layout.length*2%(l.colNum||12),l.layout.length+(l.colNum||12),!0),await e.nextTick()),!((p=l.itemRefs)!=null&&p.drop))return;const m=l.layout.findIndex(C=>C.i==="drop");if(m!==-1){(h=(v=(g=l.itemRefs)==null?void 0:g.drop)==null?void 0:v.el)!=null&&h.style&&(l.itemRefs.drop.el.style.display="none");const V=l.itemRefs.drop.calcXY(o.y-c.top,o.x-c.left);f===!0&&(l.layoutRef.emitter.emit("dragEvent",["dragstart","drop",V.x,V.y,((x=n.elementData)==null?void 0:x.h)||1,((b=n.elementData)==null?void 0:b.w)||1]),r.i=String(m),r.x=l.layout[m].x,r.y=l.layout[m].y),f===!1&&(l.layoutRef.emitter.emit("dragEvent",["dragend","drop",V.x,V.y,((y=n.elementData)==null?void 0:y.h)||1,((N=n.elementData)==null?void 0:N.w)||1]),l.layout=l.layout.filter(_=>_.i!=="drop"),await e.nextTick())}}async function u(){var m,p,g,v;a.value=!1;const c=document.querySelector("#custom-module-wrapper .vue-grid-layout").getBoundingClientRect();let f=!1;o.x>c.left&&o.x<c.right&&o.y>c.top&&o.y<c.bottom&&(f=!0),f===!0&&(l.layoutRef.emitter.emit("dragEvent",["dragend","drop",r.x,r.y,((m=n.elementData)==null?void 0:m.h)||1,((p=n.elementData)==null?void 0:p.w)||1]),l.layout=l.layout.filter(h=>h.i!=="drop"),await s(r.x,r.y),await e.nextTick(),l.layoutRef.emitter.emit("dragEvent",["dragend",r.i,r.x,r.y,((g=n.elementData)==null?void 0:g.h)||1,((v=n.elementData)==null?void 0:v.w)||1]))}async function s(c,f,m){var g,v,h,x;let p={x:c,y:f,w:((g=n.elementData)==null?void 0:g.w)||1,h:((v=n.elementData)==null?void 0:v.h)||1,minW:((h=n.elementData)==null?void 0:h.minW)||1,minH:((x=n.elementData)==null?void 0:x.minH)||1,i:m?"drop":l.index,component:n.elementData.component,variableName:d(n.elementData.variableBaseName),visibility:"true"};Object.keys(n.elementData).includes("defaultValue")&&(p.defaultValue=n.elementData.defaultValue),l.layout.push(p),l.index++}function d(c){const f=l.layout.map(g=>g.variableName);let m=2,p=c;for(;f.includes(p);)p=`${c}${m}`,m++;return p}return(c,f)=>(e.openBlock(),e.createElementBlock("div",{onDrag:i,onDragend:u,class:"droppable-element",draggable:"true",unselectable:"on"},[e.renderSlot(c.$slots,"default")],32))}}),dx={class:"grid grid-cols-3 gap-2"},cx={class:"text-xs text-muted-foreground group-hover:text-foreground"},fx=e.defineComponent({__name:"NewElementView",setup(t){const n=[{text:"Label",icon:z.Type,elementData:{component:"Label",w:2,h:8,minW:2,minH:8,variableBaseName:"Label"}},{text:"Text",icon:z.Text,elementData:{component:"Text",w:2,h:8,minW:2,minH:8,variableBaseName:"Text"}},{text:"Button",icon:z.SquareMousePointer,elementData:{component:"Button",w:2,h:6,minW:1,minH:6,variableBaseName:"Button",defaultValue:""}},{text:"Textfield",icon:z.TextCursorInput,elementData:{component:"Textfield",w:2,h:8,minW:2,minH:8,variableBaseName:"Textfield",defaultValue:""}},{text:"Textarea",icon:z.TextCursorInput,elementData:{component:"Textarea",w:3,h:12,minW:3,minH:12,variableBaseName:"Textarea",defaultValue:""}},{text:"Richtext",icon:z.Bold,elementData:{component:"Richtext",w:3,h:16,minW:3,minH:16,variableBaseName:"Richtext",defaultValue:""}},{text:"Checkbox",icon:z.Check,elementData:{component:"Checkbox",w:2,h:8,minW:2,minH:8,variableBaseName:"Checkbox",defaultValue:!1}},{text:"Select",icon:z.ChevronDown,elementData:{component:"Select",w:2,h:8,minW:2,minH:8,variableBaseName:"Select",defaultValue:""}},{text:"Radios",icon:z.CircleDot,elementData:{component:"Radios",w:2,h:8,minW:2,minH:8,variableBaseName:"Radios",defaultValue:""}},{text:"Images",icon:z.Image,elementData:{component:"Images",w:4,h:16,minW:4,minH:16,variableBaseName:"Images",defaultValue:[]}},{text:"Location",icon:z.MapPinned,elementData:{component:"Location",w:4,h:16,minW:4,minH:16,variableBaseName:"Location",defaultValue:{lat:0,lng:0}}},{text:"Items",icon:z.Grid2X2,elementData:{component:"Items",w:4,h:16,minW:4,minH:16,variableBaseName:"Items",defaultValue:[]}},{text:"File",icon:z.File,elementData:{component:"File",w:2,h:8,minW:2,minH:8,variableBaseName:"File",defaultValue:null}}];return(o,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r[0]||(r[0]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"New Element")],-1)),e.createElementVNode("div",dx,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,l=>e.createVNode(ux,{key:l.text,elementData:l.elementData,class:"group p-2 pt-4 border border-ring rounded-xl cursor-grab flex flex-col items-center gap-1"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.icon),{class:"size-6"})),e.createElementVNode("span",cx,e.toDisplayString(l.text),1)]),_:2},1032,["elementData"])),64))])],64))}}),px={class:"flex flex-col gap-2"},mx={class:"text-sm"},gx=e.defineComponent({__name:"ApiActionsView",async setup(t){let n,o;const r=e.inject("state"),l=e.inject("allAvailableVariables"),{getProjectIntegrations:a}=Z.useIntegrations(),{projectId:i}=Z.useModuleRoute(),u=([n,o]=e.withAsyncContext(()=>a(i)),n=await n,o(),n);e.watch(r.apiActions,g=>{if(g){async function v(h){const{fireAction:x}=Z.useIntegrationActions(h.integration);let b=await x(h,l.value);console.log("fireAction res",b)}g.forEach(h=>{h.fireOnStart&&h.hasFired&&v(h)})}},{deep:!0});const{showBuilder:s}=Z.useIntegrationActionBuilder(),d=async g=>{let v=await s(g.value),h=v.serviceType+" - "+v.actionType,x=2;for(;r.apiActions.find(b=>b.label===h);)h=v.serviceType+" - "+v.actionType+" "+x,x++;r.apiActions.push({id:crypto.randomUUID(),label:h,action:v,hasFired:!1,fireOnStart:!1,firedAt:null})},c=async g=>{let v=await s(l.value,g.action);r.apiActions.find(h=>h.id===g.id).action=v},f=g=>{let v=prompt("Enter new action name",g.label);v&&(r.apiActions.find(h=>h.id===g.id).label=v)},m=g=>{r.apiActions=r.apiActions.filter(v=>v.id!==g.id)},p=async g=>{const{fireAction:v}=Z.useIntegrationActions(g.action.integration);let h=await v(g.action,l.value);r.apiActions.find(x=>x.id===g.id).action.response=h};return(g,v)=>{const h=e.resolveComponent("Button"),x=e.resolveComponent("IntegrationIcon"),b=e.resolveComponent("ContextMenuTrigger"),y=e.resolveComponent("ContextMenuItem"),N=e.resolveComponent("ContextMenuSeparator"),C=e.resolveComponent("ContextMenuCheckboxItem"),V=e.resolveComponent("ContextMenuContent"),_=e.resolveComponent("ContextMenu");return e.openBlock(),e.createElementBlock(e.Fragment,null,[v[7]||(v[7]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"APIs & Actions")],-1)),e.createVNode(h,{onClick:d},{default:e.withCtx(()=>v[0]||(v[0]=[e.createTextVNode("+ Integration action",-1)])),_:1,__:[0]}),e.createElementVNode("div",null,[v[6]||(v[6]=e.createElementVNode("p",null,"Actions",-1)),e.createElementVNode("div",px,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r).apiActions,S=>(e.openBlock(),e.createBlock(_,{key:S.id},{default:e.withCtx(()=>[e.createVNode(b,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(h,{variant:"ghost",size:"sm",class:"flex gap-1 items-center justify-start w-full",onClick:R=>c(S)},{default:e.withCtx(()=>{var R,$;return[(R=S.action)!=null&&R.integration?(e.openBlock(),e.createBlock(x,{key:0,type:($=e.unref(u).find(U=>U.id===S.action.integration))==null?void 0:$.type,class:"size-5"},null,8,["type"])):e.createCommentVNode("",!0),e.createElementVNode("p",mx,e.toDisplayString(S.label),1)]}),_:2},1032,["onClick"])]),_:2},1024),e.createVNode(V,{class:"w-64"},{default:e.withCtx(()=>[e.createVNode(y,{inset:"",onClick:R=>f(S)},{default:e.withCtx(()=>v[1]||(v[1]=[e.createTextVNode(" Rename Action ",-1)])),_:2,__:[1]},1032,["onClick"]),e.createVNode(y,{inset:""},{default:e.withCtx(()=>v[2]||(v[2]=[e.createTextVNode(" View Data ",-1)])),_:1,__:[2]}),e.createVNode(y,{inset:"",onClick:R=>p(S)},{default:e.withCtx(()=>v[3]||(v[3]=[e.createTextVNode(" Execute Action ",-1)])),_:2,__:[3]},1032,["onClick"]),e.createVNode(y,{inset:"",variant:"destructive",onClick:R=>m(S)},{default:e.withCtx(()=>v[4]||(v[4]=[e.createTextVNode(" Remove Action ",-1)])),_:2,__:[4]},1032,["onClick"]),e.createVNode(N),e.createVNode(C,{"model-value":S.fireOnStart,"onUpdate:modelValue":R=>S.fireOnStart=R},{default:e.withCtx(()=>v[5]||(v[5]=[e.createTextVNode(" Fire on start ",-1)])),_:2,__:[5]},1032,["model-value","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024))),128))])])],64)}}}),In=(t,n)=>{const o=t.__vccOpts||t;for(const[r,l]of n)o[r]=l;return o},vx={},hx={class:"flex flex-col gap-2 p-2"};function xx(t,n){return e.openBlock(),e.createElementBlock("div",hx,n[0]||(n[0]=[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Version History",-1)]))}const yx=In(vx,[["render",xx]]),Cx={class:"flex flex-col gap-2 p-2"},Vx={class:"mb-2"},wx={class:"flex flex-col gap-2"},bx={class:"relative w-full group"},_x=e.defineComponent({__name:"Variables",setup(t){const n=e.inject("state");async function o(l){let a=crypto.randomUUID(),i="New variable",u=2;for(;n.variables.find(s=>s.name===i);)i="New variable "+u,u++;n.variables.push({id:a,type:l,name:i,defaultValue:""})}const r=[{value:"string",label:"String",icon:z.CaseSensitive,tint:"#e83f3f",defaultValue:""},{value:"number",label:"Number",icon:z.Hash,tint:"#2d9225",defaultValue:0},{value:"boolean",label:"Boolean",icon:z.ToggleLeft,tint:"#8e2592",defaultValue:!1},{value:"object",label:"Object",icon:z.Braces,tint:"#926025",defaultValue:{}},{value:"array",label:"Array",icon:z.Brackets,tint:"#005799",defaultValue:[]},{value:"date",label:"Date",icon:z.Calendar,tint:"#5b7f91",defaultValue:""}];return(l,a)=>{const i=e.resolveComponent("Button"),u=e.resolveComponent("DropdownMenuTrigger"),s=e.resolveComponent("DropdownMenuItem"),d=e.resolveComponent("DropdownMenuContent"),c=e.resolveComponent("DropdownMenu"),f=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",Cx,[e.createElementVNode("div",null,[e.createElementVNode("div",Vx,[a[1]||(a[1]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Variables ",-1)),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",size:"sm"},{default:e.withCtx(()=>a[0]||(a[0]=[e.createTextVNode(" Add new variable ",-1)])),_:1,__:[0]})]),_:1}),e.createVNode(d,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(r,m=>e.createVNode(s,{key:m.value,onClick:p=>o(m.value)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:m.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.icon),{class:"text-white"}))],4),e.createTextVNode(" "+e.toDisplayString(m.label),1)]),_:2},1032,["onClick"])),64))]),_:1})]),_:1})]),e.createElementVNode("div",wx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).variables,m=>{var p,g;return e.openBlock(),e.createElementBlock("div",{key:m.id,class:"flex gap-2 items-center"},[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:(p=r.find(v=>v.value===m.type))==null?void 0:p.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((g=r.find(v=>v.value===m.type))==null?void 0:g.icon),{class:"text-white"}))],4),e.createElementVNode("div",bx,[e.createVNode(f,{placeholder:"Name",modelValue:m.name,"onUpdate:modelValue":v=>m.name=v,id:`variable_name_${m.id}`,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs rounded-xl pr-10"},null,8,["modelValue","onUpdate:modelValue","id"]),e.createVNode(i,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none hidden group-hover:flex"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Settings2))]),_:1})])])}),128))])])])}}}),Yo=e.defineComponent({__name:"Transformer",props:{modelValue:{type:String,required:!0}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.inject("allAvailableVariables"),r=t,l=n,a=e.computed({get(){return r.modelValue},set(i){l("update:modelValue",i)}});return(i,u)=>{const s=e.resolveComponent("Sandbox");return e.openBlock(),e.createBlock(s,{modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=d=>a.value=d),variables:e.unref(o),style:{"max-height":"200px"}},null,8,["modelValue","variables"])}}}),Nx={class:"flex flex-col gap-2 p-2"},kx={class:"mb-2"},Sx={class:"flex flex-col gap-2"},Ex={class:"size-6 p-1 rounded flex items-center justify-center bg-[#646464]"},Ax={class:"relative w-full group"},Tx=e.defineComponent({__name:"Transformers",setup(t){const n=e.inject("state");async function o(){let r=crypto.randomUUID(),l="New transformer",a=2;for(;n.transformers.find(i=>i.name===l);)l="New transformer "+a,a++;n.transformers.push({id:r,name:l,expression:'return ""'})}return(r,l)=>{const a=e.resolveComponent("Button"),i=e.resolveComponent("Input"),u=e.resolveComponent("PopoverTrigger"),s=e.resolveComponent("PopoverContent"),d=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",Nx,[e.createElementVNode("div",null,[e.createElementVNode("div",kx,[l[1]||(l[1]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Transformers ",-1)),e.createVNode(a,{variant:"outline",size:"sm",onClick:o},{default:e.withCtx(()=>l[0]||(l[0]=[e.createTextVNode(" Add new transformer ",-1)])),_:1,__:[0]})]),e.createElementVNode("div",Sx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).transformers,c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:"flex gap-2 items-center"},[e.createElementVNode("div",Ex,[e.createVNode(e.unref(z.Calculator),{class:"text-white"})]),e.createElementVNode("div",Ax,[e.createVNode(i,{placeholder:"Name",modelValue:c.name,"onUpdate:modelValue":f=>c.name=f,id:`transformer_name_${c.id}`,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs rounded-xl pr-10"},null,8,["modelValue","onUpdate:modelValue","id"]),e.createVNode(d,null,{default:e.withCtx(()=>[e.createVNode(u,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(a,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none opacity-0 group-hover:opacity-100"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Settings2))]),_:1})]),_:1}),e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(Yo,{modelValue:c.expression,"onUpdate:modelValue":f=>c.expression=f},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)])]))),128))])])])}}}),Bx={class:"flex flex-col gap-2"},Dx={class:"flex gap-2 items-center"},Rx=e.defineComponent({__name:"ApiActionVariables",async setup(t){let n,o;const r=e.inject("state"),{getProjectIntegrations:l}=Z.useIntegrations(),{projectId:a}=Z.useModuleRoute(),i=([n,o]=e.withAsyncContext(()=>l(a)),n=await n,o(),n);return(u,s)=>{const d=e.resolveComponent("IntegrationIcon"),c=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",null,[s[0]||(s[0]=e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Action variables",-1)),e.createElementVNode("div",Bx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r).apiActions,f=>(e.openBlock(),e.createBlock(c,{variant:"ghost",size:"sm",key:f.id,class:"flex gap-2 items-center justify-between"},{default:e.withCtx(()=>{var m;return[e.createElementVNode("div",Dx,[e.createVNode(d,{type:(m=e.unref(i).find(p=>p.id===f.action.integration))==null?void 0:m.type,class:"size-5"},null,8,["type"]),e.createTextVNode(" "+e.toDisplayString(f.label),1)]),e.createVNode(e.unref(z.ChevronDown),{class:"size-4"})]}),_:2},1024))),128))])])}}}),Ix={class:"flex flex-col gap-2 p-2"},Mx={class:"flex flex-col gap-2"},Px={class:"relative w-full group"},Fx=e.defineComponent({__name:"RouteQueryParams",setup(t){const n=Z.useModuleRoute(),o=[{value:"string",label:"String",icon:z.CaseSensitive,tint:"#e83f3f",defaultValue:""},{value:"number",label:"Number",icon:z.Hash,tint:"#2d9225",defaultValue:0},{value:"boolean",label:"Boolean",icon:z.ToggleLeft,tint:"#8e2592",defaultValue:!1},{value:"object",label:"Object",icon:z.Braces,tint:"#926025",defaultValue:{}},{value:"array",label:"Array",icon:z.Brackets,tint:"#005799",defaultValue:[]},{value:"date",label:"Date",icon:z.Calendar,tint:"#5b7f91",defaultValue:""}];function r(l){return l.replace(/-([a-z])/g,(a,i)=>i.toUpperCase())}return(l,a)=>{const i=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",Ix,[e.createElementVNode("div",null,[a[0]||(a[0]=e.createElementVNode("div",{class:"mb-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"}," Route query params ")],-1)),e.createElementVNode("div",Mx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.entries(e.unref(n).query),([u,s])=>{var d,c;return e.openBlock(),e.createElementBlock("div",{key:r(u),class:"flex gap-2 items-center"},[e.createElementVNode("div",{class:"size-6 p-1 rounded flex items-center justify-center",style:e.normalizeStyle({backgroundColor:(d=o.find(f=>f.value==="string"))==null?void 0:d.tint})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((c=o.find(f=>f.value==="string"))==null?void 0:c.icon),{class:"text-white"}))],4),e.createElementVNode("div",Px,[e.createTextVNode(e.toDisplayString(r(u)+" = "+s)+" ",1),e.createVNode(i,{variant:"ghost",size:"icon",class:"absolute right-0 top-0 rounded-xl shadow-none hidden group-hover:flex"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Settings2))]),_:1})])])}),128))])])])}}}),Ox={class:"flex flex-col gap-2 p-2"},zx=e.defineComponent({__name:"VariablesView",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o[0]||(o[0]=e.createElementVNode("div",{class:"flex flex-col gap-2 p-2"},[e.createElementVNode("p",{class:"text-sm font-semibold mb-2"},"Variables")],-1)),e.createElementVNode("div",Ox,[e.createVNode(_x),e.createVNode(Tx),e.createVNode(Rx),e.createVNode(Fx)])],64))}}),Lx={key:0,class:"flex flex-col shrink-0 p-2 rounded-xl border bg-card overflow-y-auto w-[275px] @7xl/custom-dashboard:w-[325px]"},Ux=e.defineComponent({__name:"AdminToolbarView",props:{view:{type:String}},setup(t){return(n,o)=>t.view?(e.openBlock(),e.createElementBlock("div",Lx,[t.view==="new-element"?(e.openBlock(),e.createBlock(fx,{key:0})):t.view==="api-actions"?(e.openBlock(),e.createBlock(gx,{key:1})):t.view==="history"?(e.openBlock(),e.createBlock(yx,{key:2})):t.view==="variables"?(e.openBlock(),e.createBlock(zx,{key:3})):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}}),jx={class:"flex flex-col gap-2"},$x={class:"flex flex-col gap-1"},Hx=e.defineComponent({__name:"Checkbox",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input"),u=e.resolveComponent("Checkbox",!0);return e.openBlock(),e.createElementBlock("div",jx,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=s=>e.unref(n).label=s)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":a[1]||(a[1]=s=>e.unref(n).text=s)},null,8,["modelValue"]),e.createElementVNode("div",$x,[a[3]||(a[3]=e.createElementVNode("p",{class:"text-sm text-muted"},"Default value",-1)),e.createElementVNode("div",null,[e.createVNode(u,{modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=s=>e.unref(n).defaultValue=s)},null,8,["modelValue"]),e.createTextVNode(" "+e.toDisplayString(e.unref(n).defaultValue?"TRUE":"FALSE"),1)])])])}}}),qx={class:""},Gx=e.defineComponent({__name:"Label",setup(t){const n=e.inject("activeElement");return e.watch(n,()=>{(!n.value.formatType||!["static","functional"].includes(n.value.formatType))&&(n.value.formatType="static"),n.value.text||(n.value.text="")}),(o,r)=>{const l=e.resolveComponent("SegmentedControlButton"),a=e.resolveComponent("SegmentedControl"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",qx,[e.createVNode(a,{modelValue:e.unref(n).formatType,"onUpdate:modelValue":r[0]||(r[0]=u=>e.unref(n).formatType=u),class:"w-full mb-6"},{default:e.withCtx(()=>[e.createVNode(l,{value:"static"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode(" Static ",-1)])),_:1,__:[3]}),e.createVNode(l,{value:"functional"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Functional ",-1)])),_:1,__:[4]})]),_:1},8,["modelValue"]),e.unref(n).formatType==="static"?(e.openBlock(),e.createBlock(i,{key:0,type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":r[1]||(r[1]=u=>e.unref(n).text=u)},null,8,["modelValue"])):e.unref(n).formatType==="functional"?(e.openBlock(),e.createBlock(Yo,{key:1,modelValue:e.unref(n).text,"onUpdate:modelValue":r[2]||(r[2]=u=>e.unref(n).text=u)},null,8,["modelValue"])):e.createCommentVNode("",!0)])}}}),Wx={class:"flex flex-col gap-2"},Xx={class:"flex items-center gap-2"},Yx={class:"flex flex-col gap-2 border border-ring rounded-xl p-2"},Zx=e.defineComponent({__name:"Button",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.inject("allAvailableVariables"),l=e.computed(()=>n.value.defaultValue);e.watch(l,()=>{o.elementValues[n.value.variableName]=l.value});const{showBuilder:a}=useIntegrationActionBuilder(),i=async()=>{n.value.onClickEvents||(n.value.onClickEvents=[]);let s=await a(r.value),d=s.serviceType+" - "+s.actionType,c=2;for(;n.value.onClickEvents.find(f=>f.label===d);)d=s.serviceType+" - "+s.actionType+" "+c,c++;n.value.onClickEvents.push({id:crypto.randomUUID(),label:d,action:s})},u=async s=>{let d=await a(r.value,s.action);n.value.onClickEvents.find(c=>c.id===s.id).action=d};return(s,d)=>{const c=e.resolveComponent("Input"),f=e.resolveComponent("SelectValue"),m=e.resolveComponent("SelectTrigger"),p=e.resolveComponent("SelectItem"),g=e.resolveComponent("SelectContent"),v=e.resolveComponent("Select"),h=e.resolveComponent("Button",!0);return e.openBlock(),e.createElementBlock("div",Wx,[e.createVNode(c,{type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":d[0]||(d[0]=x=>e.unref(n).text=x)},null,8,["modelValue"]),d[9]||(d[9]=e.createElementVNode("p",null,"Variant",-1)),e.createVNode(v,{modelValue:e.unref(n).variant,"onUpdate:modelValue":d[1]||(d[1]=x=>e.unref(n).variant=x)},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(f,{placeholder:"Select variant"})]),_:1}),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(p,{value:"default"},{default:e.withCtx(()=>d[2]||(d[2]=[e.createTextVNode("Primary",-1)])),_:1,__:[2]}),e.createVNode(p,{value:"secondary"},{default:e.withCtx(()=>d[3]||(d[3]=[e.createTextVNode("Secondary",-1)])),_:1,__:[3]}),e.createVNode(p,{value:"destructive"},{default:e.withCtx(()=>d[4]||(d[4]=[e.createTextVNode("Destructive",-1)])),_:1,__:[4]}),e.createVNode(p,{value:"outline"},{default:e.withCtx(()=>d[5]||(d[5]=[e.createTextVNode("Outline",-1)])),_:1,__:[5]}),e.createVNode(p,{value:"ghost"},{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode("Ghost",-1)])),_:1,__:[6]}),e.createVNode(p,{value:"link"},{default:e.withCtx(()=>d[7]||(d[7]=[e.createTextVNode("Link",-1)])),_:1,__:[7]})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Xx,[d[8]||(d[8]=e.createElementVNode("p",null,"On Click",-1)),e.createVNode(h,{variant:"ghost",size:"icon",class:"rounded-xl",onClick:i},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"})]),_:1})]),e.createElementVNode("div",Yx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).onClickEvents,x=>(e.openBlock(),e.createBlock(h,{key:x.id,onClick:b=>u(x)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.label),1)]),_:2},1032,["onClick"]))),128))])])}}}),Kx={class:""},Jx=e.defineComponent({__name:"Text",setup(t){const n=e.inject("activeElement");return e.watch(n,()=>{(!n.value.formatType||!["static","functional"].includes(n.value.formatType))&&(n.value.formatType="static"),n.value.text||(n.value.text="")}),(o,r)=>{const l=e.resolveComponent("SegmentedControlButton"),a=e.resolveComponent("SegmentedControl"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",Kx,[e.createVNode(a,{modelValue:e.unref(n).formatType,"onUpdate:modelValue":r[0]||(r[0]=u=>e.unref(n).formatType=u),class:"w-full mb-6"},{default:e.withCtx(()=>[e.createVNode(l,{value:"static"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode(" Static ",-1)])),_:1,__:[3]}),e.createVNode(l,{value:"functional"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode(" Functional ",-1)])),_:1,__:[4]})]),_:1},8,["modelValue"]),e.unref(n).formatType==="static"?(e.openBlock(),e.createBlock(i,{key:0,type:"text",placeholder:"Text",modelValue:e.unref(n).text,"onUpdate:modelValue":r[1]||(r[1]=u=>e.unref(n).text=u)},null,8,["modelValue"])):e.unref(n).formatType==="functional"?(e.openBlock(),e.createBlock(Yo,{key:1,modelValue:e.unref(n).text,"onUpdate:modelValue":r[2]||(r[2]=u=>e.unref(n).text=u)},null,8,["modelValue"])):e.createCommentVNode("",!0)])}}}),Qx={class:"flex flex-col gap-2"},ey=e.defineComponent({__name:"Textarea",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",Qx,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=u=>e.unref(n).label=u)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":a[1]||(a[1]=u=>e.unref(n).placeholder=u)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=u=>e.unref(n).defaultValue=u)},null,8,["modelValue"])])}}}),ty={class:"flex flex-col gap-2"},ny=e.defineComponent({__name:"Textfield",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);return e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value}),(l,a)=>{const i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",ty,[e.createVNode(i,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":a[0]||(a[0]=u=>e.unref(n).label=u)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":a[1]||(a[1]=u=>e.unref(n).placeholder=u)},null,8,["modelValue"]),e.createVNode(i,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":a[2]||(a[2]=u=>e.unref(n).defaultValue=u)},null,8,["modelValue"])])}}}),oy={class:"flex flex-col gap-2"},ry={class:"flex items-center justify-between gap-2"},ly={class:"flex flex-col gap-2"},ay=e.defineComponent({__name:"Select",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value});function l(){if(!n.value)return;n.value.options||(n.value.options=[]);let i="Option",u=1,s=i,d="option",c=1,f=d;for(;n.value.options.find(p=>p.value===f);)c++,f=d+c;for(;n.value.options.find(p=>p.label===s);)u++,s=i+u;let m=crypto.randomUUID();n.value.options.push({value:f,label:s,id:m})}function a(i){n.value&&(n.value.options=n.value.options.filter(u=>u.id!==i))}return(i,u)=>{const s=e.resolveComponent("Input"),d=e.resolveComponent("Button"),c=e.resolveComponent("PopoverTrigger"),f=e.resolveComponent("Label"),m=e.resolveComponent("PopoverContent"),p=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",oy,[e.createVNode(s,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":u[0]||(u[0]=g=>e.unref(n).label=g)},null,8,["modelValue"]),e.createVNode(s,{type:"text",placeholder:"Placeholder",modelValue:e.unref(n).placeholder,"onUpdate:modelValue":u[1]||(u[1]=g=>e.unref(n).placeholder=g)},null,8,["modelValue"]),e.createElementVNode("div",ry,[u[3]||(u[3]=e.createElementVNode("p",null,"Options",-1)),e.createVNode(d,{variant:"ghost",class:"rounded-xl",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus))]),_:1})]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).options,g=>(e.openBlock(),e.createBlock(p,{key:g.id},{default:e.withCtx(()=>[e.createVNode(c,{class:"flex justify-between items-center gap-2 w-full"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.label)+" ",1),e.createVNode(e.unref(z.Ellipsis),{class:"size-4"})]),_:2},1024),e.createVNode(m,null,{default:e.withCtx(()=>[e.createElementVNode("div",ly,[e.createVNode(f,{for:"option.id + '_label'"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Label",-1)])),_:1,__:[4]}),e.createVNode(s,{type:"text",placeholder:"Label",id:g.id+"_label",modelValue:g.label,"onUpdate:modelValue":v=>g.label=v},null,8,["id","modelValue","onUpdate:modelValue"]),e.createVNode(f,{for:"option.id + '_value'"},{default:e.withCtx(()=>u[5]||(u[5]=[e.createTextVNode("Value",-1)])),_:1,__:[5]}),e.createVNode(s,{type:"text",placeholder:"Value",id:g.id+"_value",modelValue:g.value,"onUpdate:modelValue":v=>g.value=v},null,8,["id","modelValue","onUpdate:modelValue"])]),e.createVNode(d,{variant:"destructive",onClick:v=>a(g.id)},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Remove",-1)])),_:2,__:[6]},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),e.createVNode(s,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":u[2]||(u[2]=g=>e.unref(n).defaultValue=g)},null,8,["modelValue"])])}}}),iy={class:"flex flex-col gap-2"},sy={class:"flex items-center justify-between gap-2"},uy={class:"flex flex-col gap-2"},dy=e.defineComponent({__name:"Radios",setup(t){const n=e.inject("activeElement"),o=e.inject("state"),r=e.computed(()=>n.value.defaultValue);e.watch(r,()=>{o.elementValues[n.value.variableName]=r.value});function l(){if(!n.value)return;n.value.options||(n.value.options=[]);let i="Option",u=1,s=i,d="option",c=1,f=d;for(;n.value.options.find(p=>p.value===f);)c++,f=d+c;for(;n.value.options.find(p=>p.label===s);)u++,s=i+u;let m=crypto.randomUUID();n.value.options.push({value:f,label:s,id:m})}function a(i){n.value&&(n.value.options=n.value.options.filter(u=>u.id!==i))}return(i,u)=>{const s=e.resolveComponent("Input"),d=e.resolveComponent("SelectValue"),c=e.resolveComponent("SelectTrigger"),f=e.resolveComponent("SelectItem"),m=e.resolveComponent("SelectContent"),p=e.resolveComponent("Select"),g=e.resolveComponent("Button"),v=e.resolveComponent("PopoverTrigger"),h=e.resolveComponent("Label"),x=e.resolveComponent("PopoverContent"),b=e.resolveComponent("Popover");return e.openBlock(),e.createElementBlock("div",iy,[e.createVNode(s,{type:"text",placeholder:"Label",modelValue:e.unref(n).label,"onUpdate:modelValue":u[0]||(u[0]=y=>e.unref(n).label=y)},null,8,["modelValue"]),u[9]||(u[9]=e.createElementVNode("p",null,"Orientation",-1)),e.createVNode(p,{modelValue:e.unref(n).orientation,"onUpdate:modelValue":u[1]||(u[1]=y=>e.unref(n).orientation=y)},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d,{placeholder:"Select orientation"})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(f,{value:"vertical"},{default:e.withCtx(()=>u[3]||(u[3]=[e.createTextVNode("Vertical",-1)])),_:1,__:[3]}),e.createVNode(f,{value:"horizontal"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Horizontal",-1)])),_:1,__:[4]})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",sy,[u[5]||(u[5]=e.createElementVNode("p",null,"Options",-1)),e.createVNode(g,{variant:"ghost",class:"rounded-xl",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus))]),_:1})]),e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).options,y=>(e.openBlock(),e.createBlock(b,{key:y.id},{default:e.withCtx(()=>[e.createVNode(v,{class:"flex justify-between items-center gap-2 w-full"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.label)+" ",1),e.createVNode(e.unref(z.Ellipsis),{class:"size-4"})]),_:2},1024),e.createVNode(x,null,{default:e.withCtx(()=>[e.createElementVNode("div",uy,[e.createVNode(h,{for:"option.id + '_label'"},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Label",-1)])),_:1,__:[6]}),e.createVNode(s,{type:"text",placeholder:"Label",id:y.id+"_label",modelValue:y.label,"onUpdate:modelValue":N=>y.label=N},null,8,["id","modelValue","onUpdate:modelValue"]),e.createVNode(h,{for:"option.id + '_value'"},{default:e.withCtx(()=>u[7]||(u[7]=[e.createTextVNode("Value",-1)])),_:1,__:[7]}),e.createVNode(s,{type:"text",placeholder:"Value",id:y.id+"_value",modelValue:y.value,"onUpdate:modelValue":N=>y.value=N},null,8,["id","modelValue","onUpdate:modelValue"])]),e.createVNode(g,{variant:"destructive",onClick:N=>a(y.id)},{default:e.withCtx(()=>u[8]||(u[8]=[e.createTextVNode("Remove",-1)])),_:2,__:[8]},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),e.createVNode(s,{type:"text",placeholder:"Default value",modelValue:e.unref(n).defaultValue,"onUpdate:modelValue":u[2]||(u[2]=y=>e.unref(n).defaultValue=y)},null,8,["modelValue"])])}}}),cy={Checkbox:Hx,Label:Gx,Button:Zx,Text:Jx,Textfield:ny,Textarea:ey,Select:ay,Radios:dy},fy={class:"shrink-0 p-2 rounded-xl border bg-card w-[275px] @7xl/custom-dashboard:w-[325px]"},py={class:"p-2"},my=e.defineComponent({__name:"AdminElementEditor",emits:["removeItem"],setup(t,{emit:n}){const o=e.inject("activeElement"),r=e.inject("state"),l=n;function a(){l("removeItem",o.value.i),o.value=null}const i=e.ref("");e.watch(o,()=>{i.value=o.value.variableName||""});function u(){let s=o.value.variableName;o.value.variableName=i.value,r.elementValues[s]&&(r.elementValues[i.value]=r.elementValues[s],delete r.elementValues[s])}return e.onMounted(()=>{var s;i.value=((s=o.value)==null?void 0:s.variableName)||""}),(s,d)=>{const c=e.resolveComponent("Input"),f=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",fy,[e.createVNode(c,{type:"text",placeholder:"Variable Name",modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=m=>i.value=m),onBlur:u,class:"bg-transparent dark:bg-transparent border-transparent hover:border-ring focus:border-ring dark:focus:border-ring shadow-none focus:shadow-xs"},null,8,["modelValue"]),e.createElementVNode("p",py,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(cy)[e.unref(o).component])))]),d[3]||(d[3]=e.createElementVNode("p",null,"Visible",-1)),e.createVNode(Yo,{modelValue:e.unref(o).visibility,"onUpdate:modelValue":d[1]||(d[1]=m=>e.unref(o).visibility=m),placeholder:"true"},null,8,["modelValue"]),e.createVNode(f,{variant:"destructive",onClick:a},{default:e.withCtx(()=>d[2]||(d[2]=[e.createTextVNode("Remove",-1)])),_:1,__:[2]})])}}}),Te={init:gy,document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function hn(){}function gy(t){const n=t;Te.document=n.document,Te.DocumentFragment=n.DocumentFragment||hn,Te.SVGElement=n.SVGElement||hn,Te.SVGSVGElement=n.SVGSVGElement||hn,Te.SVGElementInstance=n.SVGElementInstance||hn,Te.Element=n.Element||hn,Te.HTMLElement=n.HTMLElement||Te.Element,Te.Event=n.Event,Te.Touch=n.Touch||hn,Te.PointerEvent=n.PointerEvent||n.MSPointerEvent}var Qi=t=>!!(t&&t.Window)&&t instanceof t.Window;let es,Zt;function ts(t){es=t;const n=t.document.createTextNode("");n.ownerDocument!==t.document&&typeof t.wrap=="function"&&t.wrap(n)===n&&(t=t.wrap(t)),Zt=t}typeof window<"u"&&window&&ts(window);function pn(t){return Qi(t)?t:(t.ownerDocument||t).defaultView||Zt.window}const vy=t=>t===Zt||Qi(t),hy=t=>Zo(t)&&t.nodeType===11,Zo=t=>!!t&&typeof t=="object",ns=t=>typeof t=="function",xy=t=>typeof t=="number",yy=t=>typeof t=="boolean",Cy=t=>typeof t=="string",Vy=t=>{if(!t||typeof t!="object")return!1;const n=pn(t)||Zt;return/object|function/.test(typeof Element)?t instanceof Element||t instanceof n.Element:t.nodeType===1&&typeof t.nodeName=="string"},wy=t=>Zo(t)&&!!t.constructor&&/function Object\b/.test(t.constructor.toString()),by=t=>Zo(t)&&typeof t.length<"u"&&ns(t.splice);var W={window:vy,docFrag:hy,object:Zo,func:ns,number:xy,bool:yy,string:Cy,element:Vy,plainObject:wy,array:by};const Fe={init:_y,supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null};function _y(t){const n=Te.Element,o=t.navigator||{};Fe.supportsTouch="ontouchstart"in t||W.func(t.DocumentTouch)&&Te.document instanceof t.DocumentTouch,Fe.supportsPointerEvent=o.pointerEnabled!==!1&&!!Te.PointerEvent,Fe.isIOS=/iP(hone|od|ad)/.test(o.platform),Fe.isIOS7=/iP(hone|od|ad)/.test(o.platform)&&/OS 7[^\d]/.test(o.appVersion),Fe.isIe9=/MSIE 9/.test(o.userAgent),Fe.isOperaMobile=o.appName==="Opera"&&Fe.supportsTouch&&/Presto/.test(o.userAgent),Fe.prefixedMatchesSelector="matches"in n.prototype?"matches":"webkitMatchesSelector"in n.prototype?"webkitMatchesSelector":"mozMatchesSelector"in n.prototype?"mozMatchesSelector":"oMatchesSelector"in n.prototype?"oMatchesSelector":"msMatchesSelector",Fe.pEventTypes=Fe.supportsPointerEvent?Te.PointerEvent===t.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,Fe.wheelEvent=Te.document&&"onmousewheel"in Te.document?"mousewheel":"wheel"}const os=(t,n)=>{for(const o of n)t.push(o);return t},rs=t=>os([],t),Ko=(t,n)=>{for(let o=0;o<t.length;o++)if(n(t[o],o,t))return o;return-1},No=(t,n)=>t[Ko(t,n)];function Dn(t){const n={};for(const o in t){const r=t[o];W.plainObject(r)?n[o]=Dn(r):W.array(r)?n[o]=rs(r):n[o]=r}return n}function fe(t,n){for(const o in n)t[o]=n[o];return t}let ga=0,kt,nn;function Ny(t){if(kt=t.requestAnimationFrame,nn=t.cancelAnimationFrame,!kt){const n=["ms","moz","webkit","o"];for(const o of n)kt=t[`${o}RequestAnimationFrame`],nn=t[`${o}CancelAnimationFrame`]||t[`${o}CancelRequestAnimationFrame`]}kt=kt&&kt.bind(t),nn=nn&&nn.bind(t),kt||(kt=n=>{const o=Date.now(),r=Math.max(0,16-(o-ga)),l=t.setTimeout(()=>{n(o+r)},r);return ga=o+r,l},nn=n=>clearTimeout(n))}var yn={request:t=>kt(t),cancel:t=>nn(t),init:Ny};function ln(t,n){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:l=>!0,r=arguments.length>3?arguments[3]:void 0;if(r=r||{},W.string(t)&&t.search(" ")!==-1&&(t=va(t)),W.array(t))return t.forEach(l=>ln(l,n,o,r)),r;if(W.object(t)&&(n=t,t=""),W.func(n)&&o(t))r[t]=r[t]||[],r[t].push(n);else if(W.array(n))for(const l of n)ln(t,l,o,r);else if(W.object(n))for(const l in n){const a=va(l).map(i=>`${t}${i}`);ln(a,n[l],o,r)}return r}function va(t){return t.trim().split(/ +/)}function ha(t,n){for(const o of n){if(t.immediatePropagationStopped)break;o(t)}}class ls{constructor(n){this.options=void 0,this.types={},this.propagationStopped=!1,this.immediatePropagationStopped=!1,this.global=void 0,this.options=fe({},n||{})}fire(n){let o;const r=this.global;(o=this.types[n.type])&&ha(n,o),!n.propagationStopped&&r&&(o=r[n.type])&&ha(n,o)}on(n,o){const r=ln(n,o);for(n in r)this.types[n]=os(this.types[n]||[],r[n])}off(n,o){const r=ln(n,o);for(n in r){const l=this.types[n];if(!(!l||!l.length))for(const a of r[n]){const i=l.indexOf(a);i!==-1&&l.splice(i,1)}}}getRect(n){return null}}function an(t,n){if(t.contains)return t.contains(n);for(;n;){if(n===t)return!0;n=n.parentNode}return!1}function as(t,n){for(;W.element(t);){if(mn(t,n))return t;t=Kt(t)}return null}function Kt(t){let n=t.parentNode;if(W.docFrag(n)){for(;(n=n.host)&&W.docFrag(n););return n}return n}function mn(t,n){return Zt!==es&&(n=n.replace(/\/deep\//g," ")),t[Fe.prefixedMatchesSelector](n)}function Gr(t,n,o){for(;W.element(t);){if(mn(t,n))return!0;if(t=Kt(t),t===o)return mn(t,n)}return!1}function xa(t){return t.correspondingUseElement||t}function ky(t){return t=t||Zt,{x:t.scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function gl(t){const n=t instanceof Te.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return n&&{left:n.left,right:n.right,top:n.top,bottom:n.bottom,width:n.width||n.right-n.left,height:n.height||n.bottom-n.top}}function vl(t){const n=gl(t);if(!Fe.isIOS7&&n){const o=ky(pn(t));n.left+=o.x,n.right+=o.x,n.top+=o.y,n.bottom+=o.y}return n}function ya(t){return W.string(t)?(Te.document.querySelector(t),!0):!1}const Sy=["webkit","moz"];function is(t,n){t.__set||(t.__set={});for(const o in n)Sy.some(r=>o.indexOf(r)===0)||typeof t[o]!="function"&&o!=="__set"&&Object.defineProperty(t,o,{get(){return o in t.__set?t.__set[o]:t.__set[o]=n[o]},set(r){t.__set[o]=r},configurable:!0});return t}var Jo=(t,n)=>Math.sqrt(t*t+n*n);function wr(t,n){t.page=t.page||{},t.page.x=n.page.x,t.page.y=n.page.y,t.client=t.client||{},t.client.x=n.client.x,t.client.y=n.client.y,t.timeStamp=n.timeStamp}function Ey(t,n,o){t.page.x=o.page.x-n.page.x,t.page.y=o.page.y-n.page.y,t.client.x=o.client.x-n.client.x,t.client.y=o.client.y-n.client.y,t.timeStamp=o.timeStamp-n.timeStamp}function Ay(t,n){const o=Math.max(n.timeStamp/1e3,.001);t.page.x=n.page.x/o,t.page.y=n.page.y/o,t.client.x=n.client.x/o,t.client.y=n.client.y/o,t.timeStamp=o}function Ty(t){t.page.x=0,t.page.y=0,t.client.x=0,t.client.y=0}function ss(t){return t instanceof Te.Event||t instanceof Te.Touch}function Fo(t,n,o){return o=o||{},t=t||"page",o.x=n[t+"X"],o.y=n[t+"Y"],o}function By(t,n){return n=n||{x:0,y:0},Fe.isOperaMobile&&ss(t)?(Fo("screen",t,n),n.x+=window.scrollX,n.y+=window.scrollY):Fo("page",t,n),n}function Dy(t,n){return n=n||{},Fe.isOperaMobile&&ss(t)?Fo("screen",t,n):Fo("client",t,n),n}function Oo(t){return W.number(t.pointerId)?t.pointerId:t.identifier}function Ry(t,n,o){const r=n.length>1?us(n):n[0];By(r,t.page),Dy(r,t.client),t.timeStamp=o}function hl(t){const n=[];return W.array(t)?(n[0]=t[0],n[1]=t[1]):t.type==="touchend"?t.touches.length===1?(n[0]=t.touches[0],n[1]=t.changedTouches[0]):t.touches.length===0&&(n[0]=t.changedTouches[0],n[1]=t.changedTouches[1]):(n[0]=t.touches[0],n[1]=t.touches[1]),n}function us(t){const n={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0};for(const o of t)for(const r in n)n[r]+=o[r];for(const o in n)n[o]/=t.length;return n}function Iy(t){if(!t.length)return null;const n=hl(t),o=Math.min(n[0].pageX,n[1].pageX),r=Math.min(n[0].pageY,n[1].pageY),l=Math.max(n[0].pageX,n[1].pageX),a=Math.max(n[0].pageY,n[1].pageY);return{x:o,y:r,left:o,top:r,right:l,bottom:a,width:l-o,height:a-r}}function My(t,n){const o=n+"X",r=n+"Y",l=hl(t),a=l[0][o]-l[1][o],i=l[0][r]-l[1][r];return Jo(a,i)}function Py(t,n){const o=n+"X",r=n+"Y",l=hl(t),a=l[1][o]-l[0][o],i=l[1][r]-l[0][r];return 180*Math.atan2(i,a)/Math.PI}function Fy(t){return W.string(t.pointerType)?t.pointerType:W.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type||"")||t instanceof Te.Touch?"touch":"mouse"}function ds(t){const n=W.func(t.composedPath)?t.composedPath():t.path;return[xa(n?n[0]:t.target),xa(t.currentTarget)]}function zn(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}}function Oy(t){var n;const o=[],r={},l=[],a={add:i,remove:u,addDelegate:s,removeDelegate:d,delegateListener:c,delegateUseCapture:f,delegatedEvents:r,documents:l,targets:o,supportsOptions:!1,supportsPassive:!1};(n=t.document)==null||n.createElement("div").addEventListener("test",null,{get capture(){return a.supportsOptions=!0},get passive(){return a.supportsPassive=!0}}),t.events=a;function i(m,p,g,v){if(!m.addEventListener)return;const h=Ln(v);let x=No(o,b=>b.eventTarget===m);x||(x={eventTarget:m,events:{}},o.push(x)),x.events[p]||(x.events[p]=[]),No(x.events[p],b=>b.func===g&&wo(b.options,h))||(m.addEventListener(p,g,a.supportsOptions?h:h.capture),x.events[p].push({func:g,options:h}))}function u(m,p,g,v){if(!m.addEventListener||!m.removeEventListener)return;const h=Ko(o,N=>N.eventTarget===m),x=o[h];if(!x||!x.events)return;if(p==="all"){for(p in x.events)x.events.hasOwnProperty(p)&&u(m,p,"all");return}let b=!1;const y=x.events[p];if(y)if(g==="all"){for(let N=y.length-1;N>=0;N--){const C=y[N];u(m,p,C.func,C.options)}return}else{const N=Ln(v);for(let C=0;C<y.length;C++){const V=y[C];if(V.func===g&&wo(V.options,N)){m.removeEventListener(p,g,a.supportsOptions?N:N.capture),y.splice(C,1),y.length===0&&(delete x.events[p],b=!0);break}}}b&&!Object.keys(x.events).length&&o.splice(h,1)}function s(m,p,g,v,h){const x=Ln(h);if(!r[g]){r[g]=[];for(const N of l)i(N,g,c),i(N,g,f,!0)}const b=r[g];let y=No(b,N=>N.selector===m&&N.context===p);y||(y={selector:m,context:p,listeners:[]},b.push(y)),y.listeners.push({func:v,options:x})}function d(m,p,g,v,h){const x=Ln(h),b=r[g];let y=!1,N;if(b)for(N=b.length-1;N>=0;N--){const C=b[N];if(C.selector===m&&C.context===p){const{listeners:V}=C;for(let _=V.length-1;_>=0;_--){const S=V[_];if(S.func===v&&wo(S.options,x)){V.splice(_,1),V.length||(b.splice(N,1),u(p,g,c),u(p,g,f,!0)),y=!0;break}}if(y)break}}}function c(m,p){const g=Ln(p),v=new zy(m),h=r[m.type],[x]=ds(m);let b=x;for(;W.element(b);){for(let y=0;y<h.length;y++){const N=h[y],{selector:C,context:V}=N;if(mn(b,C)&&an(V,x)&&an(V,b)){const{listeners:_}=N;v.currentTarget=b;for(const S of _)wo(S.options,g)&&S.func(v)}}b=Kt(b)}}function f(m){return c.call(this,m,!0)}return a}class zy{constructor(n){this.currentTarget=void 0,this.originalEvent=void 0,this.type=void 0,this.originalEvent=n,is(this,n)}preventOriginalDefault(){this.originalEvent.preventDefault()}stopPropagation(){this.originalEvent.stopPropagation()}stopImmediatePropagation(){this.originalEvent.stopImmediatePropagation()}}function Ln(t){return W.object(t)?{capture:!!t.capture,passive:!!t.passive}:{capture:!!t,passive:!1}}function wo(t,n){return t===n?!0:typeof t=="boolean"?!!n.capture===t&&!n.passive:!!t.capture==!!n.capture&&!!t.passive==!!n.passive}var Ly={id:"events",install:Oy};const Uy=function(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):W.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault};function jy(t,n,o){const r=t.options.preventDefault;if(r!=="never"){if(r==="always"){o.preventDefault();return}if(n.events.supportsPassive&&/^touch(start|move)$/.test(o.type)){const l=pn(o.target).document,a=n.getDocOptions(l);if(!(a&&a.events)||a.events.passive!==!1)return}/^(mouse|pointer|touch)*(down|start)/i.test(o.type)||W.element(o.target)&&mn(o.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||o.preventDefault()}}function $y(t){let{interaction:n,event:o}=t;n.interactable&&n.interactable.checkAndPreventDefault(o)}function Hy(t){const{Interactable:n}=t;n.prototype.preventDefault=Uy,n.prototype.checkAndPreventDefault=function(o){return jy(this,t,o)},t.interactions.docEvents.push({type:"dragstart",listener(o){for(const r of t.interactions.list)if(r.element&&(r.element===o.target||an(r.element,o.target))){r.interactable.checkAndPreventDefault(o);return}}})}var qy={id:"core/interactablePreventDefault",install:Hy,listeners:["down","move","up","cancel"].reduce((t,n)=>(t[`interactions:${n}`]=$y,t),{})};function io(t,n){let o=!1;return function(){return o||(Zt.console.warn(n),o=!0),t.apply(this,arguments)}}function cs(t,n){return t.name=n.name,t.axis=n.axis,t.edges=n.edges,t}function fs(t,n,o){return t==="parent"?Kt(o):t==="self"?n.getRect(o):as(o,t)}function so(t,n,o,r){let l=t;return W.string(l)?l=fs(l,n,o):W.func(l)&&(l=l(...r)),W.element(l)&&(l=vl(l)),l}function Qo(t){return t&&{x:"x"in t?t.x:t.left,y:"y"in t?t.y:t.top}}function Gy(t){return t&&!("left"in t&&"top"in t)&&(t=fe({},t),t.left=t.x||0,t.top=t.y||0,t.right=t.right||t.left+t.width,t.bottom=t.bottom||t.top+t.height),t}function Ca(t){return t&&!("x"in t&&"y"in t)&&(t=fe({},t),t.x=t.left||0,t.y=t.top||0,t.width=t.width||(t.right||0)-t.x,t.height=t.height||(t.bottom||0)-t.y),t}function xl(t,n,o){t.left&&(n.left+=o.x),t.right&&(n.right+=o.x),t.top&&(n.top+=o.y),t.bottom&&(n.bottom+=o.y),n.width=n.right-n.left,n.height=n.bottom-n.top}function yl(t,n,o){const r=o&&t.options[o],l=r&&r.origin||t.options.origin,a=so(l,t,n,[t&&n]);return Qo(a)||{x:0,y:0}}class ps{constructor(n){this.immediatePropagationStopped=!1,this.propagationStopped=!1,this._interaction=n}preventDefault(){}stopPropagation(){this.propagationStopped=!0}stopImmediatePropagation(){this.immediatePropagationStopped=this.propagationStopped=!0}}Object.defineProperty(ps.prototype,"interaction",{get(){return this._interaction._proxy},set(){}});const ms={base:{preventDefault:"auto",deltaSource:"page"},perAction:{enabled:!1,origin:{x:0,y:0}},actions:{}};class Cl extends ps{constructor(n,o,r,l,a,i,u){super(n),this.relatedTarget=null,this.screenX=void 0,this.screenY=void 0,this.button=void 0,this.buttons=void 0,this.ctrlKey=void 0,this.shiftKey=void 0,this.altKey=void 0,this.metaKey=void 0,this.page=void 0,this.client=void 0,this.delta=void 0,this.rect=void 0,this.x0=void 0,this.y0=void 0,this.t0=void 0,this.dt=void 0,this.duration=void 0,this.clientX0=void 0,this.clientY0=void 0,this.velocity=void 0,this.speed=void 0,this.swipe=void 0,this.axes=void 0,this.preEnd=void 0,a=a||n.element;const s=n.interactable,d=(s&&s.options||ms).deltaSource,c=yl(s,a,r),f=l==="start",m=l==="end",p=f?this:n.prevEvent,g=f?n.coords.start:m?{page:p.page,client:p.client,timeStamp:n.coords.cur.timeStamp}:n.coords.cur;this.page=fe({},g.page),this.client=fe({},g.client),this.rect=fe({},n.rect),this.timeStamp=g.timeStamp,m||(this.page.x-=c.x,this.page.y-=c.y,this.client.x-=c.x,this.client.y-=c.y),this.ctrlKey=o.ctrlKey,this.altKey=o.altKey,this.shiftKey=o.shiftKey,this.metaKey=o.metaKey,this.button=o.button,this.buttons=o.buttons,this.target=a,this.currentTarget=a,this.preEnd=i,this.type=u||r+(l||""),this.interactable=s,this.t0=f?n.pointers[n.pointers.length-1].downTime:p.t0,this.x0=n.coords.start.page.x-c.x,this.y0=n.coords.start.page.y-c.y,this.clientX0=n.coords.start.client.x-c.x,this.clientY0=n.coords.start.client.y-c.y,f||m?this.delta={x:0,y:0}:this.delta={x:this[d].x-p[d].x,y:this[d].y-p[d].y},this.dt=n.coords.delta.timeStamp,this.duration=this.timeStamp-this.t0,this.velocity=fe({},n.coords.velocity[d]),this.speed=Jo(this.velocity.x,this.velocity.y),this.swipe=m||l==="inertiastart"?this.getSwipe():null}getSwipe(){const n=this._interaction;if(n.prevEvent.speed<600||this.timeStamp-n.prevEvent.timeStamp>150)return null;let o=180*Math.atan2(n.prevEvent.velocityY,n.prevEvent.velocityX)/Math.PI;const r=22.5;o<0&&(o+=360);const l=135-r<=o&&o<225+r,a=225-r<=o&&o<315+r,i=!l&&(315-r<=o||o<45+r),u=!a&&45-r<=o&&o<135+r;return{up:a,down:u,left:l,right:i,angle:o,speed:n.prevEvent.speed,velocity:{x:n.prevEvent.velocityX,y:n.prevEvent.velocityY}}}preventDefault(){}stopImmediatePropagation(){this.immediatePropagationStopped=this.propagationStopped=!0}stopPropagation(){this.propagationStopped=!0}}Object.defineProperties(Cl.prototype,{pageX:{get(){return this.page.x},set(t){this.page.x=t}},pageY:{get(){return this.page.y},set(t){this.page.y=t}},clientX:{get(){return this.client.x},set(t){this.client.x=t}},clientY:{get(){return this.client.y},set(t){this.client.y=t}},dx:{get(){return this.delta.x},set(t){this.delta.x=t}},dy:{get(){return this.delta.y},set(t){this.delta.y=t}},velocityX:{get(){return this.velocity.x},set(t){this.velocity.x=t}},velocityY:{get(){return this.velocity.y},set(t){this.velocity.y=t}}});class Wy{constructor(n,o,r,l,a){this.id=void 0,this.pointer=void 0,this.event=void 0,this.downTime=void 0,this.downTarget=void 0,this.id=n,this.pointer=o,this.event=r,this.downTime=l,this.downTarget=a}}let Xy=function(t){return t.interactable="",t.element="",t.prepared="",t.pointerIsDown="",t.pointerWasMoved="",t._proxy="",t}({}),Yy=function(t){return t.start="",t.move="",t.end="",t.stop="",t.interacting="",t}({}),Zy=0;class Ky{get pointerMoveTolerance(){return 1}constructor(n){this.interactable=null,this.element=null,this.rect=null,this._rects=void 0,this.edges=null,this._scopeFire=void 0,this.prepared={name:null,axis:null,edges:null},this.pointerType=void 0,this.pointers=[],this.downEvent=null,this.downPointer={},this._latestPointer={pointer:null,event:null,eventTarget:null},this.prevEvent=null,this.pointerIsDown=!1,this.pointerWasMoved=!1,this._interacting=!1,this._ending=!1,this._stopped=!0,this._proxy=void 0,this.simulation=null,this.doMove=io(function(a){this.move(a)},"The interaction.doMove() method has been renamed to interaction.move()"),this.coords={start:zn(),prev:zn(),cur:zn(),delta:zn(),velocity:zn()},this._id=Zy++;let{pointerType:o,scopeFire:r}=n;this._scopeFire=r,this.pointerType=o;const l=this;this._proxy={};for(const a in Xy)Object.defineProperty(this._proxy,a,{get(){return l[a]}});for(const a in Yy)Object.defineProperty(this._proxy,a,{value:function(){return l[a](...arguments)}});this._scopeFire("interactions:new",{interaction:this})}pointerDown(n,o,r){const l=this.updatePointer(n,o,r,!0),a=this.pointers[l];this._scopeFire("interactions:down",{pointer:n,event:o,eventTarget:r,pointerIndex:l,pointerInfo:a,type:"down",interaction:this})}start(n,o,r){return this.interacting()||!this.pointerIsDown||this.pointers.length<(n.name==="gesture"?2:1)||!o.options[n.name].enabled?!1:(cs(this.prepared,n),this.interactable=o,this.element=r,this.rect=o.getRect(r),this.edges=this.prepared.edges?fe({},this.prepared.edges):{left:!0,right:!0,top:!0,bottom:!0},this._stopped=!1,this._interacting=this._doPhase({interaction:this,event:this.downEvent,phase:"start"})&&!this._stopped,this._interacting)}pointerMove(n,o,r){!this.simulation&&!(this.modification&&this.modification.endResult)&&this.updatePointer(n,o,r,!1);const l=this.coords.cur.page.x===this.coords.prev.page.x&&this.coords.cur.page.y===this.coords.prev.page.y&&this.coords.cur.client.x===this.coords.prev.client.x&&this.coords.cur.client.y===this.coords.prev.client.y;let a,i;this.pointerIsDown&&!this.pointerWasMoved&&(a=this.coords.cur.client.x-this.coords.start.client.x,i=this.coords.cur.client.y-this.coords.start.client.y,this.pointerWasMoved=Jo(a,i)>this.pointerMoveTolerance);const u=this.getPointerIndex(n),s={pointer:n,pointerIndex:u,pointerInfo:this.pointers[u],event:o,type:"move",eventTarget:r,dx:a,dy:i,duplicate:l,interaction:this};l||Ay(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),!l&&!this.simulation&&(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&wr(this.coords.prev,this.coords.cur))}move(n){(!n||!n.event)&&Ty(this.coords.delta),n=fe({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},n||{}),n.phase="move",this._doPhase(n)}pointerUp(n,o,r,l){let a=this.getPointerIndex(n);a===-1&&(a=this.updatePointer(n,o,r,!1));const i=/cancel$/i.test(o.type)?"cancel":"up";this._scopeFire(`interactions:${i}`,{pointer:n,pointerIndex:a,pointerInfo:this.pointers[a],event:o,eventTarget:r,type:i,curEventTarget:l,interaction:this}),this.simulation||this.end(o),this.removePointer(n,o)}documentBlur(n){this.end(n),this._scopeFire("interactions:blur",{event:n,type:"blur",interaction:this})}end(n){this._ending=!0,n=n||this._latestPointer.event;let o;this.interacting()&&(o=this._doPhase({event:n,interaction:this,phase:"end"})),this._ending=!1,o===!0&&this.stop()}currentAction(){return this._interacting?this.prepared.name:null}interacting(){return this._interacting}stop(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}getPointerIndex(n){const o=Oo(n);return this.pointerType==="mouse"||this.pointerType==="pen"?this.pointers.length-1:Ko(this.pointers,r=>r.id===o)}getPointerInfo(n){return this.pointers[this.getPointerIndex(n)]}updatePointer(n,o,r,l){const a=Oo(n);let i=this.getPointerIndex(n),u=this.pointers[i];return l=l===!1?!1:l||/(down|start)$/i.test(o.type),u?u.pointer=n:(u=new Wy(a,n,o,null,null),i=this.pointers.length,this.pointers.push(u)),Ry(this.coords.cur,this.pointers.map(s=>s.pointer),this._now()),Ey(this.coords.delta,this.coords.prev,this.coords.cur),l&&(this.pointerIsDown=!0,u.downTime=this.coords.cur.timeStamp,u.downTarget=r,is(this.downPointer,n),this.interacting()||(wr(this.coords.start,this.coords.cur),wr(this.coords.prev,this.coords.cur),this.downEvent=o,this.pointerWasMoved=!1)),this._updateLatestPointer(n,o,r),this._scopeFire("interactions:update-pointer",{pointer:n,event:o,eventTarget:r,down:l,pointerInfo:u,pointerIndex:i,interaction:this}),i}removePointer(n,o){const r=this.getPointerIndex(n);if(r===-1)return;const l=this.pointers[r];this._scopeFire("interactions:remove-pointer",{pointer:n,event:o,eventTarget:null,pointerIndex:r,pointerInfo:l,interaction:this}),this.pointers.splice(r,1),this.pointerIsDown=!1}_updateLatestPointer(n,o,r){this._latestPointer.pointer=n,this._latestPointer.event=o,this._latestPointer.eventTarget=r}destroy(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}_createPreparedEvent(n,o,r,l){return new Cl(this,n,this.prepared.name,o,this.element,r,l)}_fireEvent(n){var o;(o=this.interactable)==null||o.fire(n),(!this.prevEvent||n.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=n)}_doPhase(n){const{event:o,phase:r,preEnd:l,type:a}=n,{rect:i}=this;if(i&&r==="move"&&(xl(this.edges,i,this.coords.delta[this.interactable.options.deltaSource]),i.width=i.right-i.left,i.height=i.bottom-i.top),this._scopeFire(`interactions:before-action-${r}`,n)===!1)return!1;const u=n.iEvent=this._createPreparedEvent(o,r,l,a);return this._scopeFire(`interactions:action-${r}`,n),r==="start"&&(this.prevEvent=u),this._fireEvent(u),this._scopeFire(`interactions:after-action-${r}`,n),!0}_now(){return Date.now()}}const Wr={methodOrder:["simulationResume","mouseOrPen","hasPointer","idle"],search(t){for(const n of Wr.methodOrder){const o=Wr[n](t);if(o)return o}return null},simulationResume(t){let{pointerType:n,eventType:o,eventTarget:r,scope:l}=t;if(!/down|start/i.test(o))return null;for(const a of l.interactions.list){let i=r;if(a.simulation&&a.simulation.allowResume&&a.pointerType===n)for(;i;){if(i===a.element)return a;i=Kt(i)}}return null},mouseOrPen(t){let{pointerId:n,pointerType:o,eventType:r,scope:l}=t;if(o!=="mouse"&&o!=="pen")return null;let a;for(const i of l.interactions.list)if(i.pointerType===o){if(i.simulation&&!Va(i,n))continue;if(i.interacting())return i;a||(a=i)}if(a)return a;for(const i of l.interactions.list)if(i.pointerType===o&&!(/down/i.test(r)&&i.simulation))return i;return null},hasPointer(t){let{pointerId:n,scope:o}=t;for(const r of o.interactions.list)if(Va(r,n))return r;return null},idle(t){let{pointerType:n,scope:o}=t;for(const r of o.interactions.list){if(r.pointers.length===1){const l=r.interactable;if(l&&!(l.options.gesture&&l.options.gesture.enabled))continue}else if(r.pointers.length>=2)continue;if(!r.interacting()&&n===r.pointerType)return r}return null}};function Va(t,n){return t.pointers.some(o=>{let{id:r}=o;return r===n})}const gs=["pointerDown","pointerMove","pointerUp","updatePointer","removePointer","windowBlur"];function Jy(t){const n={};for(const a of gs)n[a]=vs(a,t);const o=Fe.pEventTypes;let r;Te.PointerEvent?r=[{type:o.down,listener:l},{type:o.down,listener:n.pointerDown},{type:o.move,listener:n.pointerMove},{type:o.up,listener:n.pointerUp},{type:o.cancel,listener:n.pointerUp}]:r=[{type:"mousedown",listener:n.pointerDown},{type:"mousemove",listener:n.pointerMove},{type:"mouseup",listener:n.pointerUp},{type:"touchstart",listener:l},{type:"touchstart",listener:n.pointerDown},{type:"touchmove",listener:n.pointerMove},{type:"touchend",listener:n.pointerUp},{type:"touchcancel",listener:n.pointerUp}],r.push({type:"blur",listener(a){for(const i of t.interactions.list)i.documentBlur(a)}}),t.prevTouchTime=0,t.Interaction=class extends Ky{get pointerMoveTolerance(){return t.interactions.pointerMoveTolerance}set pointerMoveTolerance(a){t.interactions.pointerMoveTolerance=a}_now(){return t.now()}},t.interactions={list:[],new(a){a.scopeFire=(u,s)=>t.fire(u,s);const i=new t.Interaction(a);return t.interactions.list.push(i),i},listeners:n,docEvents:r,pointerMoveTolerance:1};function l(){for(const a of t.interactions.list)if(!(!a.pointerIsDown||a.pointerType!=="touch"||a._interacting))for(const i of a.pointers)t.documents.some(u=>{let{doc:s}=u;return an(s,i.downTarget)})||a.removePointer(i.pointer,i.event)}t.usePlugin(qy)}function vs(t,n){return function(o){const r=n.interactions.list,l=Fy(o),[a,i]=ds(o),u=[];if(/^touch/.test(o.type)){n.prevTouchTime=n.now();for(const s of o.changedTouches){const d=s,c=Oo(d),f={pointer:d,pointerId:c,pointerType:l,eventType:o.type,eventTarget:a,curEventTarget:i,scope:n},m=wa(f);u.push([f.pointer,f.eventTarget,f.curEventTarget,m])}}else{let s=!1;if(!Fe.supportsPointerEvent&&/mouse/.test(o.type)){for(let d=0;d<r.length&&!s;d++)s=r[d].pointerType!=="mouse"&&r[d].pointerIsDown;s=s||n.now()-n.prevTouchTime<500||o.timeStamp===0}if(!s){const d={pointer:o,pointerId:Oo(o),pointerType:l,eventType:o.type,curEventTarget:i,eventTarget:a,scope:n},c=wa(d);u.push([d.pointer,d.eventTarget,d.curEventTarget,c])}}for(const[s,d,c,f]of u)f[t](s,o,d,c)}}function wa(t){const{pointerType:n,scope:o}=t,r={interaction:Wr.search(t),searchDetails:t};return o.fire("interactions:find",r),r.interaction||o.interactions.new({pointerType:n})}function br(t,n){let{doc:o,scope:r,options:l}=t;const{interactions:{docEvents:a},events:i}=r,u=i[n];r.browser.isIOS&&!l.events&&(l.events={passive:!1});for(const d in i.delegatedEvents)u(o,d,i.delegateListener),u(o,d,i.delegateUseCapture,!0);const s=l&&l.events;for(const{type:d,listener:c}of a)u(o,d,c,s)}const Qy={id:"core/interactions",install:Jy,listeners:{"scope:add-document":t=>br(t,"add"),"scope:remove-document":t=>br(t,"remove"),"interactable:unset":(t,n)=>{let{interactable:o}=t;for(let r=n.interactions.list.length-1;r>=0;r--){const l=n.interactions.list[r];l.interactable===o&&(l.stop(),n.fire("interactions:destroy",{interaction:l}),l.destroy(),n.interactions.list.length>2&&n.interactions.list.splice(r,1))}}},onDocSignal:br,doOnInteractions:vs,methodNames:gs};function uo(t,n){if(n.phaselessTypes[t])return!0;for(const o in n.map)if(t.indexOf(o)===0&&t.substr(o.length)in n.phases)return!0;return!1}var Ot=function(t){return t[t.On=0]="On",t[t.Off=1]="Off",t}(Ot||{});class eC{get _defaults(){return{base:{},perAction:{},actions:{}}}constructor(n,o,r,l){this.target=void 0,this.options=void 0,this._actions=void 0,this.events=new ls,this._context=void 0,this._win=void 0,this._doc=void 0,this._scopeEvents=void 0,this._actions=o.actions,this.target=n,this._context=o.context||r,this._win=pn(ya(n)?this._context:n),this._doc=this._win.document,this._scopeEvents=l,this.set(o)}setOnEvents(n,o){return W.func(o.onstart)&&this.on(`${n}start`,o.onstart),W.func(o.onmove)&&this.on(`${n}move`,o.onmove),W.func(o.onend)&&this.on(`${n}end`,o.onend),W.func(o.oninertiastart)&&this.on(`${n}inertiastart`,o.oninertiastart),this}updatePerActionListeners(n,o,r){var l;const a=(l=this._actions.map[n])==null?void 0:l.filterEventType,i=u=>(a==null||a(u))&&uo(u,this._actions);(W.array(o)||W.object(o))&&this._onOff(Ot.Off,n,o,void 0,i),(W.array(r)||W.object(r))&&this._onOff(Ot.On,n,r,void 0,i)}setPerAction(n,o){const r=this._defaults;for(const l in o){const a=l,i=this.options[n],u=o[a];a==="listeners"&&this.updatePerActionListeners(n,i.listeners,u),W.array(u)?i[a]=rs(u):W.plainObject(u)?(i[a]=fe(i[a]||{},Dn(u)),W.object(r.perAction[a])&&"enabled"in r.perAction[a]&&(i[a].enabled=u.enabled!==!1)):W.bool(u)&&W.object(r.perAction[a])?i[a].enabled=u:i[a]=u}}getRect(n){return n=n||(W.element(this.target)?this.target:null),W.string(this.target)&&(n=n||this._context.querySelector(this.target)),vl(n)}rectChecker(n){return W.func(n)?(this.getRect=o=>{const r=fe({},n.apply(this,o));return"width"in r||(r.width=r.right-r.left,r.height=r.bottom-r.top),r},this):n===null?(delete this.getRect,this):this.getRect}_backCompatOption(n,o){if(ya(o)||W.object(o)){this.options[n]=o;for(const r in this._actions.map)this.options[r][n]=o;return this}return this.options[n]}origin(n){return this._backCompatOption("origin",n)}deltaSource(n){return n==="page"||n==="client"?(this.options.deltaSource=n,this):this.options.deltaSource}getAllElements(){const{target:n}=this;return W.string(n)?Array.from(this._context.querySelectorAll(n)):W.func(n)&&n.getAllElements?n.getAllElements():W.element(n)?[n]:[]}context(){return this._context}inContext(n){return this._context===n.ownerDocument||an(this._context,n)}testIgnoreAllow(n,o,r){return!this.testIgnore(n.ignoreFrom,o,r)&&this.testAllow(n.allowFrom,o,r)}testAllow(n,o,r){return n?W.element(r)?W.string(n)?Gr(r,n,o):W.element(n)?an(n,r):!1:!1:!0}testIgnore(n,o,r){return!n||!W.element(r)?!1:W.string(n)?Gr(r,n,o):W.element(n)?an(n,r):!1}fire(n){return this.events.fire(n),this}_onOff(n,o,r,l,a){W.object(o)&&!W.array(o)&&(l=r,r=null);const i=ln(o,r,a);for(let u in i){u==="wheel"&&(u=Fe.wheelEvent);for(const s of i[u])uo(u,this._actions)?this.events[n===Ot.On?"on":"off"](u,s):W.string(this.target)?this._scopeEvents[n===Ot.On?"addDelegate":"removeDelegate"](this.target,this._context,u,s,l):this._scopeEvents[n===Ot.On?"add":"remove"](this.target,u,s,l)}return this}on(n,o,r){return this._onOff(Ot.On,n,o,r)}off(n,o,r){return this._onOff(Ot.Off,n,o,r)}set(n){const o=this._defaults;W.object(n)||(n={}),this.options=Dn(o.base);for(const r in this._actions.methodDict){const l=r,a=this._actions.methodDict[l];this.options[l]={},this.setPerAction(l,fe(fe({},o.perAction),o.actions[l])),this[a](n[l])}for(const r in n){if(r==="getRect"){this.rectChecker(n.getRect);continue}W.func(this[r])&&this[r](n[r])}return this}unset(){if(W.string(this.target))for(const n in this._scopeEvents.delegatedEvents){const o=this._scopeEvents.delegatedEvents[n];for(let r=o.length-1;r>=0;r--){const{selector:l,context:a,listeners:i}=o[r];l===this.target&&a===this._context&&o.splice(r,1);for(let u=i.length-1;u>=0;u--)this._scopeEvents.removeDelegate(this.target,this._context,n,i[u][0],i[u][1])}}else this._scopeEvents.remove(this.target,"all")}}class tC{constructor(n){this.list=[],this.selectorMap={},this.scope=void 0,this.scope=n,n.addListeners({"interactable:unset":o=>{let{interactable:r}=o;const{target:l}=r,a=W.string(l)?this.selectorMap[l]:l[this.scope.id],i=Ko(a,u=>u===r);a.splice(i,1)}})}new(n,o){o=fe(o||{},{actions:this.scope.actions});const r=new this.scope.Interactable(n,o,this.scope.document,this.scope.events);return this.scope.addDocument(r._doc),this.list.push(r),W.string(n)?(this.selectorMap[n]||(this.selectorMap[n]=[]),this.selectorMap[n].push(r)):(r.target[this.scope.id]||Object.defineProperty(n,this.scope.id,{value:[],configurable:!0}),n[this.scope.id].push(r)),this.scope.fire("interactable:new",{target:n,options:o,interactable:r,win:this.scope._win}),r}getExisting(n,o){const r=o&&o.context||this.scope.document,l=W.string(n),a=l?this.selectorMap[n]:n[this.scope.id];if(a)return No(a,i=>i._context===r&&(l||i.inContext(n)))}forEachMatch(n,o){for(const r of this.list){let l;if((W.string(r.target)?W.element(n)&&mn(n,r.target):n===r.target)&&r.inContext(n)&&(l=o(r)),l!==void 0)return l}}}function nC(t){const n=(o,r)=>{let l=t.interactables.getExisting(o,r);return l||(l=t.interactables.new(o,r),l.events.global=n.globalEvents),l};return n.getPointerAverage=us,n.getTouchBBox=Iy,n.getTouchDistance=My,n.getTouchAngle=Py,n.getElementRect=vl,n.getElementClientRect=gl,n.matchesSelector=mn,n.closest=as,n.globalEvents={},n.version="1.10.27",n.scope=t,n.use=function(o,r){return this.scope.usePlugin(o,r),this},n.isSet=function(o,r){return!!this.scope.interactables.get(o,r&&r.context)},n.on=io(function(o,r,l){if(W.string(o)&&o.search(" ")!==-1&&(o=o.trim().split(/ +/)),W.array(o)){for(const a of o)this.on(a,r,l);return this}if(W.object(o)){for(const a in o)this.on(a,o[a],r);return this}return uo(o,this.scope.actions)?this.globalEvents[o]?this.globalEvents[o].push(r):this.globalEvents[o]=[r]:this.scope.events.add(this.scope.document,o,r,{options:l}),this},"The interact.on() method is being deprecated"),n.off=io(function(o,r,l){if(W.string(o)&&o.search(" ")!==-1&&(o=o.trim().split(/ +/)),W.array(o)){for(const a of o)this.off(a,r,l);return this}if(W.object(o)){for(const a in o)this.off(a,o[a],r);return this}if(uo(o,this.scope.actions)){let a;o in this.globalEvents&&(a=this.globalEvents[o].indexOf(r))!==-1&&this.globalEvents[o].splice(a,1)}else this.scope.events.remove(this.scope.document,o,r,l);return this},"The interact.off() method is being deprecated"),n.debug=function(){return this.scope},n.supportsTouch=function(){return Fe.supportsTouch},n.supportsPointerEvent=function(){return Fe.supportsPointerEvent},n.stop=function(){for(const o of this.scope.interactions.list)o.stop();return this},n.pointerMoveTolerance=function(o){return W.number(o)?(this.scope.interactions.pointerMoveTolerance=o,this):this.scope.interactions.pointerMoveTolerance},n.addDocument=function(o,r){this.scope.addDocument(o,r)},n.removeDocument=function(o){this.scope.removeDocument(o)},n}class oC{constructor(){this.id=`__interact_scope_${Math.floor(Math.random()*100)}`,this.isInitialized=!1,this.listenerMaps=[],this.browser=Fe,this.defaults=Dn(ms),this.Eventable=ls,this.actions={map:{},phases:{start:!0,move:!0,end:!0},methodDict:{},phaselessTypes:{}},this.interactStatic=nC(this),this.InteractEvent=Cl,this.Interactable=void 0,this.interactables=new tC(this),this._win=void 0,this.document=void 0,this.window=void 0,this.documents=[],this._plugins={list:[],map:{}},this.onWindowUnload=o=>this.removeDocument(o.target);const n=this;this.Interactable=class extends eC{get _defaults(){return n.defaults}set(o){return super.set(o),n.fire("interactable:set",{options:o,interactable:this}),this}unset(){super.unset();const o=n.interactables.list.indexOf(this);o<0||(n.interactables.list.splice(o,1),n.fire("interactable:unset",{interactable:this}))}}}addListeners(n,o){this.listenerMaps.push({id:o,map:n})}fire(n,o){for(const{map:{[n]:r}}of this.listenerMaps)if(r&&r(o,this,n)===!1)return!1}init(n){return this.isInitialized?this:rC(this,n)}pluginIsInstalled(n){const{id:o}=n;return o?!!this._plugins.map[o]:this._plugins.list.indexOf(n)!==-1}usePlugin(n,o){if(!this.isInitialized)return this;if(this.pluginIsInstalled(n))return this;if(n.id&&(this._plugins.map[n.id]=n),this._plugins.list.push(n),n.install&&n.install(this,o),n.listeners&&n.before){let r=0;const l=this.listenerMaps.length,a=n.before.reduce((i,u)=>(i[u]=!0,i[ba(u)]=!0,i),{});for(;r<l;r++){const i=this.listenerMaps[r].id;if(i&&(a[i]||a[ba(i)]))break}this.listenerMaps.splice(r,0,{id:n.id,map:n.listeners})}else n.listeners&&this.listenerMaps.push({id:n.id,map:n.listeners});return this}addDocument(n,o){if(this.getDocIndex(n)!==-1)return!1;const r=pn(n);o=o?fe({},o):{},this.documents.push({doc:n,options:o}),this.events.documents.push(n),n!==this.document&&this.events.add(r,"unload",this.onWindowUnload),this.fire("scope:add-document",{doc:n,window:r,scope:this,options:o})}removeDocument(n){const o=this.getDocIndex(n),r=pn(n),l=this.documents[o].options;this.events.remove(r,"unload",this.onWindowUnload),this.documents.splice(o,1),this.events.documents.splice(o,1),this.fire("scope:remove-document",{doc:n,window:r,scope:this,options:l})}getDocIndex(n){for(let o=0;o<this.documents.length;o++)if(this.documents[o].doc===n)return o;return-1}getDocOptions(n){const o=this.getDocIndex(n);return o===-1?null:this.documents[o].options}now(){return(this.window.Date||Date).now()}}function rC(t,n){return t.isInitialized=!0,W.window(n)&&ts(n),Te.init(n),Fe.init(n),yn.init(n),t.window=n,t.document=n.document,t.usePlugin(Qy),t.usePlugin(Ly),t}function ba(t){return t&&t.replace(/\/.*$/,"")}const hs=new oC,It=hs.interactStatic,lC=typeof globalThis<"u"?globalThis:window;hs.init(lC);function aC(t){const{Interactable:n}=t;n.prototype.getAction=function(o,r,l,a){const i=iC(this,r,l,a,t);return this.options.actionChecker?this.options.actionChecker(o,r,i,this,a,l):i},n.prototype.ignoreFrom=io(function(o){return this._backCompatOption("ignoreFrom",o)},"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),n.prototype.allowFrom=io(function(o){return this._backCompatOption("allowFrom",o)},"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),n.prototype.actionChecker=uC,n.prototype.styleCursor=sC}function iC(t,n,o,r,l){const a=t.getRect(r),i=n.buttons||{0:1,1:4,3:8,4:16}[n.button],u={action:null,interactable:t,interaction:o,element:r,rect:a,buttons:i};return l.fire("auto-start:check",u),u.action}function sC(t){return W.bool(t)?(this.options.styleCursor=t,this):t===null?(delete this.options.styleCursor,this):this.options.styleCursor}function uC(t){return W.func(t)?(this.options.actionChecker=t,this):t===null?(delete this.options.actionChecker,this):this.options.actionChecker}var dC={id:"auto-start/interactableMethods",install:aC};function cC(t){const{interactStatic:n,defaults:o}=t;t.usePlugin(dC),o.base.actionChecker=null,o.base.styleCursor=!0,fe(o.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),n.maxInteractions=r=>Vs(r,t),t.autoStart={maxInteractions:1/0,withinInteractionLimit:er,cursorElement:null}}function fC(t,n){let{interaction:o,pointer:r,event:l,eventTarget:a}=t;if(o.interacting())return;const i=ys(o,r,l,a,n);Cs(o,i,n)}function pC(t,n){let{interaction:o,pointer:r,event:l,eventTarget:a}=t;if(o.pointerType!=="mouse"||o.pointerIsDown||o.interacting())return;const i=ys(o,r,l,a,n);Cs(o,i,n)}function mC(t,n){const{interaction:o}=t;if(!o.pointerIsDown||o.interacting()||!o.pointerWasMoved||!o.prepared.name)return;n.fire("autoStart:before-start",t);const{interactable:r}=o,l=o.prepared.name;l&&r&&(r.options[l].manualStart||!er(r,o.element,o.prepared,n)?o.stop():(o.start(o.prepared,r,o.element),ws(o,n)))}function gC(t,n){let{interaction:o}=t;const{interactable:r}=o;r&&r.options.styleCursor&&Xr(o.element,"",n)}function xs(t,n,o,r,l){return n.testIgnoreAllow(n.options[t.name],o,r)&&n.options[t.name].enabled&&er(n,o,t,l)?t:null}function vC(t,n,o,r,l,a,i){for(let u=0,s=r.length;u<s;u++){const d=r[u],c=l[u],f=d.getAction(n,o,t,c);if(!f)continue;const m=xs(f,d,c,a,i);if(m)return{action:m,interactable:d,element:c}}return{action:null,interactable:null,element:null}}function ys(t,n,o,r,l){let a=[],i=[],u=r;function s(d){a.push(d),i.push(u)}for(;W.element(u);){a=[],i=[],l.interactables.forEachMatch(u,s);const d=vC(t,n,o,a,i,r,l);if(d.action&&!d.interactable.options[d.action.name].manualStart)return d;u=Kt(u)}return{action:null,interactable:null,element:null}}function Cs(t,n,o){let{action:r,interactable:l,element:a}=n;r=r||{name:null},t.interactable=l,t.element=a,cs(t.prepared,r),t.rect=l&&r.name?l.getRect(a):null,ws(t,o),o.fire("autoStart:prepared",{interaction:t})}function er(t,n,o,r){const l=t.options,a=l[o.name].max,i=l[o.name].maxPerElement,u=r.autoStart.maxInteractions;let s=0,d=0,c=0;if(!(a&&i&&u))return!1;for(const f of r.interactions.list){const m=f.prepared.name;if(f.interacting()&&(s++,s>=u||f.interactable===t&&(d+=m===o.name?1:0,d>=a||f.element===n&&(c++,m===o.name&&c>=i))))return!1}return u>0}function Vs(t,n){return W.number(t)?(n.autoStart.maxInteractions=t,this):n.autoStart.maxInteractions}function Xr(t,n,o){const{cursorElement:r}=o.autoStart;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=n,t.style.cursor=n,o.autoStart.cursorElement=n?t:null}function ws(t,n){const{interactable:o,element:r,prepared:l}=t;if(!(t.pointerType==="mouse"&&o&&o.options.styleCursor)){n.autoStart.cursorElement&&Xr(n.autoStart.cursorElement,"",n);return}let a="";if(l.name){const i=o.options[l.name].cursorChecker;W.func(i)?a=i(l,o,r,t._interacting):a=n.actions.map[l.name].getCursor(l)}Xr(t.element,a||"",n)}const Vl={id:"auto-start/base",before:["actions"],install:cC,listeners:{"interactions:down":fC,"interactions:move":(t,n)=>{pC(t,n),mC(t,n)},"interactions:stop":gC},maxInteractions:Vs,withinInteractionLimit:er,validateAction:xs};function hC(t,n){let{interaction:o,eventTarget:r,dx:l,dy:a}=t;if(o.prepared.name!=="drag")return;const i=Math.abs(l),u=Math.abs(a),s=o.interactable.options.drag,d=s.startAxis,c=i>u?"x":i<u?"y":"xy";if(o.prepared.axis=s.lockAxis==="start"?c[0]:s.lockAxis,c!=="xy"&&d!=="xy"&&d!==c){o.prepared.name=null;let f=r;const m=function(p){if(p===o.interactable)return;const g=o.interactable.options.drag;if(!g.manualStart&&p.testIgnoreAllow(g,f,r)){const v=p.getAction(o.downPointer,o.downEvent,o,f);if(v&&v.name==="drag"&&xC(c,p)&&Vl.validateAction(v,p,f,r,n))return p}};for(;W.element(f);){const p=n.interactables.forEachMatch(f,m);if(p){o.prepared.name="drag",o.interactable=p,o.element=f;break}f=Kt(f)}}}function xC(t,n){if(!n)return!1;const o=n.options.drag.startAxis;return t==="xy"||o==="xy"||o===t}var yC={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":hC}};function CC(t){const{defaults:n}=t;t.usePlugin(Vl),n.perAction.hold=0,n.perAction.delay=0}function _r(t){const n=t.prepared&&t.prepared.name;if(!n)return null;const o=t.interactable.options;return o[n].hold||o[n].delay}const VC={id:"auto-start/hold",install:CC,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.autoStartHoldTimer=null},"autoStart:prepared":t=>{let{interaction:n}=t;const o=_r(n);o>0&&(n.autoStartHoldTimer=setTimeout(()=>{n.start(n.prepared,n.interactable,n.element)},o))},"interactions:move":t=>{let{interaction:n,duplicate:o}=t;n.autoStartHoldTimer&&n.pointerWasMoved&&!o&&(clearTimeout(n.autoStartHoldTimer),n.autoStartHoldTimer=null)},"autoStart:before-start":t=>{let{interaction:n}=t;_r(n)>0&&(n.prepared.name=null)}},getHoldDuration:_r};var wC={id:"auto-start",install(t){t.usePlugin(Vl),t.usePlugin(VC),t.usePlugin(yC)}};It.use(wC);function bC(t){const{defaults:n,actions:o}=t;t.autoScroll=me,me.now=()=>t.now(),o.phaselessTypes.autoscroll=!0,n.perAction.autoScroll=me.defaults}const me={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:0,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start(t){me.isScrolling=!0,yn.cancel(me.i),t.autoScroll=me,me.interaction=t,me.prevTime=me.now(),me.i=yn.request(me.scroll)},stop(){me.isScrolling=!1,me.interaction&&(me.interaction.autoScroll=null),yn.cancel(me.i)},scroll(){const{interaction:t}=me,{interactable:n,element:o}=t,r=t.prepared.name,l=n.options[r].autoScroll,a=_a(l.container,n,o),i=me.now(),u=(i-me.prevTime)/1e3,s=l.speed*u;if(s>=1){const d={x:me.x*s,y:me.y*s};if(d.x||d.y){const c=Na(a);W.window(a)?a.scrollBy(d.x,d.y):a&&(a.scrollLeft+=d.x,a.scrollTop+=d.y);const f=Na(a),m={x:f.x-c.x,y:f.y-c.y};(m.x||m.y)&&n.fire({type:"autoscroll",target:o,interactable:n,delta:m,interaction:t,container:a})}me.prevTime=i}me.isScrolling&&(yn.cancel(me.i),me.i=yn.request(me.scroll))},check(t,n){var o;return(o=t.options[n].autoScroll)==null?void 0:o.enabled},onInteractionMove(t){let{interaction:n,pointer:o}=t;if(!(n.interacting()&&me.check(n.interactable,n.prepared.name)))return;if(n.simulation){me.x=me.y=0;return}let r,l,a,i;const{interactable:u,element:s}=n,d=n.prepared.name,c=u.options[d].autoScroll,f=_a(c.container,u,s);if(W.window(f))i=o.clientX<me.margin,r=o.clientY<me.margin,l=o.clientX>f.innerWidth-me.margin,a=o.clientY>f.innerHeight-me.margin;else{const m=gl(f);i=o.clientX<m.left+me.margin,r=o.clientY<m.top+me.margin,l=o.clientX>m.right-me.margin,a=o.clientY>m.bottom-me.margin}me.x=l?1:i?-1:0,me.y=a?1:r?-1:0,me.isScrolling||(me.margin=c.margin,me.speed=c.speed,me.start(n))}};function _a(t,n,o){return(W.string(t)?fs(t,n,o):t)||pn(o)}function Na(t){return W.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}const _C={id:"auto-scroll",install:bC,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.autoScroll=null},"interactions:destroy":t=>{let{interaction:n}=t;n.autoScroll=null,me.stop(),me.interaction&&(me.interaction=null)},"interactions:stop":me.stop,"interactions:action-move":t=>me.onInteractionMove(t)}};It.use(_C);function NC(t){const{actions:n,Interactable:o,defaults:r}=t;o.prototype.draggable=ko.draggable,n.map.drag=ko,n.methodDict.drag="draggable",r.actions.drag=ko.defaults}function Nr(t){let{interaction:n}=t;if(n.prepared.name!=="drag")return;const o=n.prepared.axis;o==="x"?(n.coords.cur.page.y=n.coords.start.page.y,n.coords.cur.client.y=n.coords.start.client.y,n.coords.velocity.client.y=0,n.coords.velocity.page.y=0):o==="y"&&(n.coords.cur.page.x=n.coords.start.page.x,n.coords.cur.client.x=n.coords.start.client.x,n.coords.velocity.client.x=0,n.coords.velocity.page.x=0)}function ka(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="drag")return;const r=o.prepared.axis;if(r==="x"||r==="y"){const l=r==="x"?"y":"x";n.page[l]=o.coords.start.page[l],n.client[l]=o.coords.start.client[l],n.delta[l]=0}}const kC=function(t){return W.object(t)?(this.options.drag.enabled=t.enabled!==!1,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^(xy|x|y|start)$/.test(t.lockAxis)&&(this.options.drag.lockAxis=t.lockAxis),/^(xy|x|y)$/.test(t.startAxis)&&(this.options.drag.startAxis=t.startAxis),this):W.bool(t)?(this.options.drag.enabled=t,this):this.options.drag},ko={id:"actions/drag",install:NC,listeners:{"interactions:before-action-move":Nr,"interactions:action-resume":Nr,"interactions:action-move":ka,"auto-start:check":t=>{const{interaction:n,interactable:o,buttons:r}=t,l=o.options.drag;if(!(!(l&&l.enabled)||n.pointerIsDown&&/mouse|pointer/.test(n.pointerType)&&!(r&o.options.drag.mouseButtons)))return t.action={name:"drag",axis:l.lockAxis==="start"?l.startAxis:l.lockAxis},!1}},draggable:kC,beforeMove:Nr,move:ka,defaults:{startAxis:"xy",lockAxis:"xy"},getCursor(){return"move"},filterEventType:t=>t.search("drag")===0};It.use(ko);function SC(t){const{actions:n,browser:o,Interactable:r,defaults:l}=t;Rt.cursors=BC(o),Rt.defaultMargin=o.supportsTouch||o.supportsPointerEvent?20:10,r.prototype.resizable=function(a){return AC(this,a,t)},n.map.resize=Rt,n.methodDict.resize="resizable",l.actions.resize=Rt.defaults}function EC(t){const{interaction:n,interactable:o,element:r,rect:l,buttons:a}=t;if(!l)return;const i=fe({},n.coords.cur.page),u=o.options.resize;if(!(!(u&&u.enabled)||n.pointerIsDown&&/mouse|pointer/.test(n.pointerType)&&!(a&u.mouseButtons))){if(W.object(u.edges)){const s={left:!1,right:!1,top:!1,bottom:!1};for(const d in s)s[d]=TC(d,u.edges[d],i,n._latestPointer.eventTarget,r,l,u.margin||Rt.defaultMargin);s.left=s.left&&!s.right,s.top=s.top&&!s.bottom,(s.left||s.right||s.top||s.bottom)&&(t.action={name:"resize",edges:s})}else{const s=u.axis!=="y"&&i.x>l.right-Rt.defaultMargin,d=u.axis!=="x"&&i.y>l.bottom-Rt.defaultMargin;(s||d)&&(t.action={name:"resize",axes:(s?"x":"")+(d?"y":"")})}return t.action?!1:void 0}}function AC(t,n,o){return W.object(n)?(t.options.resize.enabled=n.enabled!==!1,t.setPerAction("resize",n),t.setOnEvents("resize",n),W.string(n.axis)&&/^x$|^y$|^xy$/.test(n.axis)?t.options.resize.axis=n.axis:n.axis===null&&(t.options.resize.axis=o.defaults.actions.resize.axis),W.bool(n.preserveAspectRatio)?t.options.resize.preserveAspectRatio=n.preserveAspectRatio:W.bool(n.square)&&(t.options.resize.square=n.square),t):W.bool(n)?(t.options.resize.enabled=n,t):t.options.resize}function TC(t,n,o,r,l,a,i){if(!n)return!1;if(n===!0){const u=W.number(a.width)?a.width:a.right-a.left,s=W.number(a.height)?a.height:a.bottom-a.top;if(i=Math.min(i,Math.abs((t==="left"||t==="right"?u:s)/2)),u<0&&(t==="left"?t="right":t==="right"&&(t="left")),s<0&&(t==="top"?t="bottom":t==="bottom"&&(t="top")),t==="left"){const d=u>=0?a.left:a.right;return o.x<d+i}if(t==="top"){const d=s>=0?a.top:a.bottom;return o.y<d+i}if(t==="right")return o.x>(u>=0?a.right:a.left)-i;if(t==="bottom")return o.y>(s>=0?a.bottom:a.top)-i}return W.element(r)?W.element(n)?n===r:Gr(r,n,l):!1}function BC(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}function DC(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n,l=o.rect;o._rects={start:fe({},l),corrected:fe({},l),previous:fe({},l),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=o.prepared.edges,r.rect=o._rects.corrected,r.deltaRect=o._rects.delta}function RC(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n,l=o.interactable.options.resize.invert,a=l==="reposition"||l==="negate",i=o.rect,{start:u,corrected:s,delta:d,previous:c}=o._rects;if(fe(c,s),a){if(fe(s,i),l==="reposition"){if(s.top>s.bottom){const f=s.top;s.top=s.bottom,s.bottom=f}if(s.left>s.right){const f=s.left;s.left=s.right,s.right=f}}}else s.top=Math.min(i.top,u.bottom),s.bottom=Math.max(i.bottom,u.top),s.left=Math.min(i.left,u.right),s.right=Math.max(i.right,u.left);s.width=s.right-s.left,s.height=s.bottom-s.top;for(const f in s)d[f]=s[f]-c[f];r.edges=o.prepared.edges,r.rect=s,r.deltaRect=d}function IC(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.prepared.edges)return;const r=n;r.edges=o.prepared.edges,r.rect=o._rects.corrected,r.deltaRect=o._rects.delta}function Sa(t){let{iEvent:n,interaction:o}=t;if(o.prepared.name!=="resize"||!o.resizeAxes)return;const r=o.interactable.options,l=n;r.resize.square?(o.resizeAxes==="y"?l.delta.x=l.delta.y:l.delta.y=l.delta.x,l.axes="xy"):(l.axes=o.resizeAxes,o.resizeAxes==="x"?l.delta.y=0:o.resizeAxes==="y"&&(l.delta.x=0))}const Rt={id:"actions/resize",before:["actions/drag"],install:SC,listeners:{"interactions:new":t=>{let{interaction:n}=t;n.resizeAxes="xy"},"interactions:action-start":t=>{DC(t),Sa(t)},"interactions:action-move":t=>{RC(t),Sa(t)},"interactions:action-end":IC,"auto-start:check":EC},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor(t){let{edges:n,axis:o,name:r}=t;const l=Rt.cursors;let a=null;if(o)a=l[r+o];else if(n){let i="";for(const u of["top","bottom","left","right"])n[u]&&(i+=u);a=l[i]}return a},filterEventType:t=>t.search("resize")===0,defaultMargin:null};It.use(Rt);var MC=()=>{},PC=()=>{},FC=t=>{const n=[["x","y"],["left","top"],["right","bottom"],["width","height"]].filter(r=>{let[l,a]=r;return l in t||a in t}),o=(r,l)=>{const{range:a,limits:i={left:-1/0,right:1/0,top:-1/0,bottom:1/0},offset:u={x:0,y:0}}=t,s={range:a,grid:t,x:null,y:null};for(const[d,c]of n){const f=Math.round((r-u.x)/t[d]),m=Math.round((l-u.y)/t[c]);s[d]=Math.max(i.left,Math.min(i.right,f*t[d]+u.x)),s[c]=Math.max(i.top,Math.min(i.bottom,m*t[c]+u.y))}return s};return o.grid=t,o.coordFields=n,o},OC=Object.freeze({__proto__:null,edgeTarget:MC,elements:PC,grid:FC});const zC={id:"snappers",install(t){const{interactStatic:n}=t;n.snappers=fe(n.snappers||{},OC),n.createSnapGrid=n.snappers.grid}};class bs{constructor(n){this.states=[],this.startOffset={left:0,right:0,top:0,bottom:0},this.startDelta=void 0,this.result=void 0,this.endResult=void 0,this.startEdges=void 0,this.edges=void 0,this.interaction=void 0,this.interaction=n,this.result=bo(),this.edges={left:!1,right:!1,top:!1,bottom:!1}}start(n,o){let{phase:r}=n;const{interaction:l}=this,a=LC(l);this.prepareStates(a),this.startEdges=fe({},l.edges),this.edges=fe({},this.startEdges),this.startOffset=UC(l.rect,o),this.startDelta={x:0,y:0};const i=this.fillArg({phase:r,pageCoords:o,preEnd:!1});return this.result=bo(),this.startAll(i),this.result=this.setAll(i)}fillArg(n){const{interaction:o}=this;return n.interaction=o,n.interactable=o.interactable,n.element=o.element,n.rect||(n.rect=o.rect),n.edges||(n.edges=this.startEdges),n.startOffset=this.startOffset,n}startAll(n){for(const o of this.states)o.methods.start&&(n.state=o,o.methods.start(n))}setAll(n){const{phase:o,preEnd:r,skipModifiers:l,rect:a,edges:i}=n;n.coords=fe({},n.pageCoords),n.rect=fe({},a),n.edges=fe({},i);const u=l?this.states.slice(l):this.states,s=bo(n.coords,n.rect);for(const m of u){var d;const{options:p}=m,g=fe({},n.coords);let v=null;(d=m.methods)!=null&&d.set&&this.shouldDo(p,r,o)&&(n.state=m,v=m.methods.set(n),xl(n.edges,n.rect,{x:n.coords.x-g.x,y:n.coords.y-g.y})),s.eventProps.push(v)}fe(this.edges,n.edges),s.delta.x=n.coords.x-n.pageCoords.x,s.delta.y=n.coords.y-n.pageCoords.y,s.rectDelta.left=n.rect.left-a.left,s.rectDelta.right=n.rect.right-a.right,s.rectDelta.top=n.rect.top-a.top,s.rectDelta.bottom=n.rect.bottom-a.bottom;const c=this.result.coords,f=this.result.rect;if(c&&f){const m=s.rect.left!==f.left||s.rect.right!==f.right||s.rect.top!==f.top||s.rect.bottom!==f.bottom;s.changed=m||c.x!==s.coords.x||c.y!==s.coords.y}return s}applyToInteraction(n){const{interaction:o}=this,{phase:r}=n,l=o.coords.cur,a=o.coords.start,{result:i,startDelta:u}=this,s=i.delta;r==="start"&&fe(this.startDelta,i.delta);for(const[f,m]of[[a,u],[l,s]])f.page.x+=m.x,f.page.y+=m.y,f.client.x+=m.x,f.client.y+=m.y;const{rectDelta:d}=this.result,c=n.rect||o.rect;c.left+=d.left,c.right+=d.right,c.top+=d.top,c.bottom+=d.bottom,c.width=c.right-c.left,c.height=c.bottom-c.top}setAndApply(n){const{interaction:o}=this,{phase:r,preEnd:l,skipModifiers:a}=n,i=this.setAll(this.fillArg({preEnd:l,phase:r,pageCoords:n.modifiedCoords||o.coords.cur.page}));if(this.result=i,!i.changed&&(!a||a<this.states.length)&&o.interacting())return!1;if(n.modifiedCoords){const{page:u}=o.coords.cur,s={x:n.modifiedCoords.x-u.x,y:n.modifiedCoords.y-u.y};i.coords.x+=s.x,i.coords.y+=s.y,i.delta.x+=s.x,i.delta.y+=s.y}this.applyToInteraction(n)}beforeEnd(n){const{interaction:o,event:r}=n,l=this.states;if(!l||!l.length)return;let a=!1;for(const i of l){n.state=i;const{options:u,methods:s}=i,d=s.beforeEnd&&s.beforeEnd(n);if(d)return this.endResult=d,!1;a=a||!a&&this.shouldDo(u,!0,n.phase,!0)}a&&o.move({event:r,preEnd:!0})}stop(n){const{interaction:o}=n;if(!this.states||!this.states.length)return;const r=fe({states:this.states,interactable:o.interactable,element:o.element,rect:null},n);this.fillArg(r);for(const l of this.states)r.state=l,l.methods.stop&&l.methods.stop(r);this.states=null,this.endResult=null}prepareStates(n){this.states=[];for(let o=0;o<n.length;o++){const{options:r,methods:l,name:a}=n[o];this.states.push({options:r,methods:l,index:o,name:a})}return this.states}restoreInteractionCoords(n){let{interaction:{coords:o,rect:r,modification:l}}=n;if(!l.result)return;const{startDelta:a}=l,{delta:i,rectDelta:u}=l.result,s=[[o.start,a],[o.cur,i]];for(const[d,c]of s)d.page.x-=c.x,d.page.y-=c.y,d.client.x-=c.x,d.client.y-=c.y;r.left-=u.left,r.right-=u.right,r.top-=u.top,r.bottom-=u.bottom}shouldDo(n,o,r,l){return!(!n||n.enabled===!1||l&&!n.endOnly||n.endOnly&&!o||r==="start"&&!n.setStart)}copyFrom(n){this.startOffset=n.startOffset,this.startDelta=n.startDelta,this.startEdges=n.startEdges,this.edges=n.edges,this.states=n.states.map(o=>Dn(o)),this.result=bo(fe({},n.result.coords),fe({},n.result.rect))}destroy(){for(const n in this)this[n]=null}}function bo(t,n){return{rect:n,coords:t,delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},eventProps:[],changed:!0}}function LC(t){const n=t.interactable.options[t.prepared.name],o=n.modifiers;return o&&o.length?o:["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map(r=>{const l=n[r];return l&&l.enabled&&{options:l,methods:l._methods}}).filter(r=>!!r)}function UC(t,n){return t?{left:n.x-t.left,top:n.y-t.top,right:t.right-n.x,bottom:t.bottom-n.y}:{left:0,top:0,right:0,bottom:0}}function Jt(t,n){const{defaults:o}=t,r={start:t.start,set:t.set,beforeEnd:t.beforeEnd,stop:t.stop},l=a=>{const i=a||{};i.enabled=i.enabled!==!1;for(const s in o)s in i||(i[s]=o[s]);const u={options:i,methods:r,name:n,enable:()=>(i.enabled=!0,u),disable:()=>(i.enabled=!1,u)};return u};return n&&typeof n=="string"&&(l._defaults=o,l._methods=r),l}function kr(t){let{iEvent:n,interaction:o}=t;const r=o.modification.result;r&&(n.modifiers=r.eventProps)}const jC={id:"modifiers/base",before:["actions"],install:t=>{t.defaults.perAction.modifiers=[]},listeners:{"interactions:new":t=>{let{interaction:n}=t;n.modification=new bs(n)},"interactions:before-action-start":t=>{const{interaction:n}=t,o=t.interaction.modification;o.start(t,n.coords.start.page),n.edges=o.edges,o.applyToInteraction(t)},"interactions:before-action-move":t=>{const{interaction:n}=t,{modification:o}=n,r=o.setAndApply(t);return n.edges=o.edges,r},"interactions:before-action-end":t=>{const{interaction:n}=t,{modification:o}=n,r=o.beforeEnd(t);return n.edges=o.startEdges,r},"interactions:action-start":kr,"interactions:action-move":kr,"interactions:action-end":kr,"interactions:after-action-start":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:after-action-move":t=>t.interaction.modification.restoreInteractionCoords(t),"interactions:stop":t=>t.interaction.modification.stop(t)}},$C={start(t){const{state:n,rect:o,edges:r,pageCoords:l}=t;let{ratio:a,enabled:i}=n.options;const{equalDelta:u,modifiers:s}=n.options;a==="preserve"&&(a=o.width/o.height),n.startCoords=fe({},l),n.startRect=fe({},o),n.ratio=a,n.equalDelta=u;const d=n.linkedEdges={top:r.top||r.left&&!r.bottom,left:r.left||r.top&&!r.right,bottom:r.bottom||r.right&&!r.top,right:r.right||r.bottom&&!r.left};if(n.xIsPrimaryAxis=!!(r.left||r.right),n.equalDelta){const f=(d.left?1:-1)*(d.top?1:-1);n.edgeSign={x:f,y:f}}else n.edgeSign={x:d.left?-1:1,y:d.top?-1:1};if(i!==!1&&fe(r,d),!(s!=null&&s.length))return;const c=new bs(t.interaction);c.copyFrom(t.interaction.modification),c.prepareStates(s),n.subModification=c,c.startAll({...t})},set(t){const{state:n,rect:o,coords:r}=t,{linkedEdges:l}=n,a=fe({},r),i=n.equalDelta?HC:qC;if(fe(t.edges,l),i(n,n.xIsPrimaryAxis,r,o),!n.subModification)return null;const u=fe({},o);xl(l,u,{x:r.x-a.x,y:r.y-a.y});const s=n.subModification.setAll({...t,rect:u,edges:l,pageCoords:r,prevCoords:r,prevRect:u}),{delta:d}=s;if(s.changed){const c=Math.abs(d.x)>Math.abs(d.y);i(n,c,s.coords,s.rect),fe(r,s.coords)}return s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function HC(t,n,o){let{startCoords:r,edgeSign:l}=t;n?o.y=r.y+(o.x-r.x)*l.y:o.x=r.x+(o.y-r.y)*l.x}function qC(t,n,o,r){let{startRect:l,startCoords:a,ratio:i,edgeSign:u}=t;if(n){const s=r.width/i;o.y=a.y+(s-l.height)*u.y}else{const s=r.height*i;o.x=a.x+(s-l.width)*u.x}}var GC=Jt($C,"aspectRatio");function WC(t){let{rect:n,startOffset:o,state:r,interaction:l,pageCoords:a}=t;const{options:i}=r,{elementRect:u}=i,s=fe({left:0,top:0,right:0,bottom:0},i.offset||{});if(n&&u){const d=gn(i.restriction,l,a);if(d){const c=d.right-d.left-n.width,f=d.bottom-d.top-n.height;c<0&&(s.left+=c,s.right+=c),f<0&&(s.top+=f,s.bottom+=f)}s.left+=o.left-n.width*u.left,s.top+=o.top-n.height*u.top,s.right+=o.right-n.width*(1-u.right),s.bottom+=o.bottom-n.height*(1-u.bottom)}r.offset=s}function XC(t){let{coords:n,interaction:o,state:r}=t;const{options:l,offset:a}=r,i=gn(l.restriction,o,n);if(!i)return;const u=Gy(i);n.x=Math.max(Math.min(u.right-a.right,n.x),u.left+a.left),n.y=Math.max(Math.min(u.bottom-a.bottom,n.y),u.top+a.top)}function gn(t,n,o){return W.func(t)?so(t,n.interactable,n.element,[o.x,o.y,n]):so(t,n.interactable,n.element)}const YC={restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1},zo={start:WC,set:XC,defaults:YC};var ZC=Jt(zo,"restrict");const _s={top:1/0,left:1/0,bottom:-1/0,right:-1/0},Ns={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function KC(t){let{interaction:n,startOffset:o,state:r}=t;const{options:l}=r;let a;if(l){const i=gn(l.offset,n,n.coords.start.page);a=Qo(i)}a=a||{x:0,y:0},r.offset={top:a.y+o.top,left:a.x+o.left,bottom:a.y-o.bottom,right:a.x-o.right}}function JC(t){let{coords:n,edges:o,interaction:r,state:l}=t;const{offset:a,options:i}=l;if(!o)return;const u=fe({},n),s=gn(i.inner,r,u)||{},d=gn(i.outer,r,u)||{};Ea(s,_s),Ea(d,Ns),o.top?n.y=Math.min(Math.max(d.top+a.top,u.y),s.top+a.top):o.bottom&&(n.y=Math.max(Math.min(d.bottom+a.bottom,u.y),s.bottom+a.bottom)),o.left?n.x=Math.min(Math.max(d.left+a.left,u.x),s.left+a.left):o.right&&(n.x=Math.max(Math.min(d.right+a.right,u.x),s.right+a.right))}function Ea(t,n){for(const o of["top","left","bottom","right"])o in t||(t[o]=n[o]);return t}const QC={inner:null,outer:null,offset:null,endOnly:!1,enabled:!1},Qn={noInner:_s,noOuter:Ns,start:KC,set:JC,defaults:QC};var e1=Jt(Qn,"restrictEdges");const t1=fe({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(t){}},zo.defaults),n1={start:zo.start,set:zo.set,defaults:t1};var o1=Jt(n1,"restrictRect");const r1={width:-1/0,height:-1/0},l1={width:1/0,height:1/0};function a1(t){return Qn.start(t)}function i1(t){const{interaction:n,state:o,rect:r,edges:l}=t,{options:a}=o;if(!l)return;const i=Ca(gn(a.min,n,t.coords))||r1,u=Ca(gn(a.max,n,t.coords))||l1;o.options={endOnly:a.endOnly,inner:fe({},Qn.noInner),outer:fe({},Qn.noOuter)},l.top?(o.options.inner.top=r.bottom-i.height,o.options.outer.top=r.bottom-u.height):l.bottom&&(o.options.inner.bottom=r.top+i.height,o.options.outer.bottom=r.top+u.height),l.left?(o.options.inner.left=r.right-i.width,o.options.outer.left=r.right-u.width):l.right&&(o.options.inner.right=r.left+i.width,o.options.outer.right=r.left+u.width),Qn.set(t),o.options=a}const s1={min:null,max:null,endOnly:!1,enabled:!1},u1={start:a1,set:i1,defaults:s1};var d1=Jt(u1,"restrictSize");function c1(t){const{interaction:n,interactable:o,element:r,rect:l,state:a,startOffset:i}=t,{options:u}=a,s=u.offsetWithOrigin?p1(t):{x:0,y:0};let d;if(u.offset==="startCoords")d={x:n.coords.start.page.x,y:n.coords.start.page.y};else{const f=so(u.offset,o,r,[n]);d=Qo(f)||{x:0,y:0},d.x+=s.x,d.y+=s.y}const{relativePoints:c}=u;a.offsets=l&&c&&c.length?c.map((f,m)=>({index:m,relativePoint:f,x:i.left-l.width*f.x+d.x,y:i.top-l.height*f.y+d.y})):[{index:0,relativePoint:null,x:d.x,y:d.y}]}function f1(t){const{interaction:n,coords:o,state:r}=t,{options:l,offsets:a}=r,i=yl(n.interactable,n.element,n.prepared.name),u=fe({},o),s=[];l.offsetWithOrigin||(u.x-=i.x,u.y-=i.y);for(const c of a){const f=u.x-c.x,m=u.y-c.y;for(let p=0,g=l.targets.length;p<g;p++){const v=l.targets[p];let h;W.func(v)?h=v(f,m,n._proxy,c,p):h=v,h&&s.push({x:(W.number(h.x)?h.x:f)+c.x,y:(W.number(h.y)?h.y:m)+c.y,range:W.number(h.range)?h.range:l.range,source:v,index:p,offset:c})}}const d={target:null,inRange:!1,distance:0,range:0,delta:{x:0,y:0}};for(const c of s){const f=c.range,m=c.x-u.x,p=c.y-u.y,g=Jo(m,p);let v=g<=f;f===1/0&&d.inRange&&d.range!==1/0&&(v=!1),(!d.target||(v?d.inRange&&f!==1/0?g/f<d.distance/d.range:f===1/0&&d.range!==1/0||g<d.distance:!d.inRange&&g<d.distance))&&(d.target=c,d.distance=g,d.range=f,d.inRange=v,d.delta.x=m,d.delta.y=p)}return d.inRange&&(o.x=d.target.x,o.y=d.target.y),r.closest=d,d}function p1(t){const{element:n}=t.interaction;return Qo(so(t.state.options.origin,null,null,[n]))||yl(t.interactable,n,t.interaction.prepared.name)}const m1={range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1},wl={start:c1,set:f1,defaults:m1};var g1=Jt(wl,"snap");function v1(t){const{state:n,edges:o}=t,{options:r}=n;if(!o)return null;t.state={options:{targets:null,relativePoints:[{x:o.left?0:1,y:o.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},n.targetFields=n.targetFields||[["width","height"],["x","y"]],wl.start(t),n.offsets=t.state.offsets,t.state=n}function h1(t){const{interaction:n,state:o,coords:r}=t,{options:l,offsets:a}=o,i={x:r.x-a[0].x,y:r.y-a[0].y};o.options=fe({},l),o.options.targets=[];for(const s of l.targets||[]){let d;if(W.func(s)?d=s(i.x,i.y,n):d=s,!!d){for(const[c,f]of o.targetFields)if(c in d||f in d){d.x=d[c],d.y=d[f];break}o.options.targets.push(d)}}const u=wl.set(t);return o.options=l,u}const x1={range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1},Lo={start:v1,set:h1,defaults:x1};var y1=Jt(Lo,"snapSize");function C1(t){const{edges:n}=t;return n?(t.state.targetFields=t.state.targetFields||[[n.left?"left":"right",n.top?"top":"bottom"]],Lo.start(t)):null}const V1={start:C1,set:Lo.set,defaults:fe(Dn(Lo.defaults),{targets:void 0,range:void 0,offset:{x:0,y:0}})};var w1=Jt(V1,"snapEdges");const Gn=()=>{};Gn._defaults={};var Sr={aspectRatio:GC,restrictEdges:e1,restrict:ZC,restrictRect:o1,restrictSize:d1,snapEdges:w1,snap:g1,snapSize:y1,spring:Gn,avoid:Gn,transform:Gn,rubberband:Gn};const b1={id:"modifiers",install(t){const{interactStatic:n}=t;t.usePlugin(jC),t.usePlugin(zC),n.modifiers=Sr;for(const o in Sr){const{_defaults:r,_methods:l}=Sr[o];r._methods=l,t.defaults.perAction[o]=r}}};It.use(b1);var eo=function(t){return t.touchAction="touchAction",t.boxSizing="boxSizing",t.noListeners="noListeners",t}(eo||{});const Yr="[interact.js] ",Zr={touchAction:"https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action",boxSizing:"https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing"};function _1(t){let{logger:n}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{Interactable:o,defaults:r}=t;t.logger=n||console,r.base.devTools={ignore:{}},o.prototype.devTools=function(a){return a?(fe(this.options.devTools,a),this):this.options.devTools};const{_onOff:l}=o.prototype;o.prototype._onOff=function(a,i,u,s,d){if(W.string(this.target)||this.target.addEventListener)return l.call(this,a,i,u,s,d);W.object(i)&&!W.array(i)&&(s=u,u=null);const c=ln(i,u,d);for(const f in c)uo(f,t.actions)||t.logger.warn(Yr+`Can't add native "${f}" event listener to target without \`addEventListener(type, listener, options)\` prop.`);return l.call(this,a,c,s)}}const Aa=[{name:eo.touchAction,perform(t){let{element:n}=t;return!!n&&!N1(n,"touchAction",/pan-|pinch|none/)},getInfo(t){let{element:n}=t;return[n,Zr.touchAction]},text:`Consider adding CSS "touch-action: none" to this element
|
|
32
|
+
`},{name:eo.boxSizing,perform(t){const{element:n}=t;return t.prepared.name==="resize"&&n instanceof Te.HTMLElement&&!ks(n,"boxSizing",/border-box/)},text:'Consider adding CSS "box-sizing: border-box" to this resizable element',getInfo(t){let{element:n}=t;return[n,Zr.boxSizing]}},{name:eo.noListeners,perform(t){var n;const o=t.prepared.name;return!(((n=t.interactable)==null?void 0:n.events.types[`${o}move`])||[]).length},getInfo(t){return[t.prepared.name,t.interactable]},text:"There are no listeners set for this action"}];function ks(t,n,o){const r=t.style[n]||Zt.getComputedStyle(t)[n];return o.test((r||"").toString())}function N1(t,n,o){let r=t;for(;W.element(r);){if(ks(r,n,o))return!0;r=Kt(r)}return!1}const k1="dev-tools",S1={id:k1,install:_1,listeners:{"interactions:action-start":(t,n)=>{let{interaction:o}=t;for(const r of Aa){const l=o.interactable&&o.interactable.options;!(l&&l.devTools&&l.devTools.ignore[r.name])&&r.perform(o)&&n.logger.warn(Yr+r.text,...r.getInfo(o))}}},checks:Aa,CheckName:eo,links:Zr,prefix:Yr};It.use(S1);function E1(t){let n=0,o;for(let r=0,l=t.length;r<l;r++)o=t[r].y+t[r].h,o>n&&(n=o);return n}function on(t){return(t||[]).map(n=>({...n}))}function Ss(t,n){return!(t===n||t.x+t.w<=n.x||t.x>=n.x+n.w||t.y+t.h<=n.y||t.y>=n.y+n.h)}function Wn(t,n,o){const r=As(t),l=Ts(t),a=Array(t.length);for(let i=0,u=l.length;i<u;i++){let s=l[i];s.static||(s=A1(r,s,n,o),r.push(s)),a[t.indexOf(s)]=s,delete s.moved}return a}function A1(t,n,o,r){if(o)for(;n.y>0&&!to(t,n);)n.y--;else if(r){const a=r[n.i].y;for(;n.y>a&&!to(t,n);)n.y--}let l;for(;l=to(t,n);)n.y=l.y+l.h;return n}function T1(t,n){const o=As(t);for(let r=0,l=t.length;r<l;r++){const a=t[r];if(a.x+a.w>n.cols&&(a.x=n.cols-a.w),a.x<0&&(a.x=0,a.w=n.cols),!a.static)o.push(a);else for(;to(o,a);)a.y++}return t}function Ta(t,n){for(let o=0,r=t.length;o<r;o++)if(t[o].i===n)return t[o]}function to(t,n){for(let o=0,r=t.length;o<r;o++)if(Ss(t[o],n))return t[o]}function Es(t,n){return t.filter(o=>Ss(o,n))}function As(t){return t.filter(n=>n.static)}function Kr(t,n,o,r,l,a){if(n.static)return t;const i=n.x,u=n.y,s=r&&n.y>r;typeof o=="number"&&(n.x=o),typeof r=="number"&&(n.y=r),n.moved=!0;let d=Ts(t);s&&(d=d.reverse());const c=Es(d,n);if(a&&c.length)return n.x=i,n.y=u,n.moved=!1,t;for(let f=0,m=c.length;f<m;f++){const p=c[f];p.moved||n.y>p.y&&n.y-p.y>p.h/4||(p.static?t=Ba(t,p,n,l):t=Ba(t,n,p,l))}return t}function Ba(t,n,o,r){if(r){const l={x:o.x,y:o.y,w:o.w,h:o.h};if(l.y=Math.max(n.y-o.h,0),!to(t,l))return Kr(t,o,void 0,l.y,!1)}return Kr(t,o,void 0,o.y+1,!1)}function B1(t,n,o,r){const l=`translate3d(${n}px,${t}px, 0)`;return{transform:l,WebkitTransform:l,MozTransform:l,msTransform:l,OTransform:l,width:`${o}px`,height:`${r}px`,position:"absolute"}}function D1(t,n,o,r){const l=`translate3d(${n*-1}px,${t}px, 0)`;return{transform:l,WebkitTransform:l,MozTransform:l,msTransform:l,OTransform:l,width:`${o}px`,height:`${r}px`,position:"absolute"}}function R1(t,n,o,r){return{top:`${t}px`,left:`${n}px`,width:`${o}px`,height:`${r}px`,position:"absolute"}}function I1(t,n,o,r){return{top:`${t}px`,right:`${n}px`,width:`${o}px`,height:`${r}px`,position:"absolute"}}function Ts(t){return[].concat(t).sort((n,o)=>n.y===o.y&&n.x===o.x?0:n.y>o.y||n.y===o.y&&n.x>o.x?1:-1)}function M1(t,n){n=n||"Layout";const o=["x","y","w","h"],r=[];if(!Array.isArray(t))throw new Error(`${n} must be an array!`);for(let l=0,a=t.length;l<a;l++){const i=t[l];for(let u=0;u<o.length;u++)if(typeof i[o[u]]!="number")throw new Error(`VueGridLayout: ${n}[${l}].${o[u]} must be a number!`);if(i.i===void 0||i.i===null)throw new Error(`VueGridLayout: ${n}[${l}].i cannot be null!`);if(typeof i.i!="number"&&typeof i.i!="string")throw new Error(`VueGridLayout: ${n}[${l}].i must be a string or number!`);if(r.indexOf(i.i)>=0)throw new Error(`VueGridLayout: ${n}[${l}].i must be unique!`);if(r.push(i.i),i.static!==void 0&&typeof i.static!="boolean")throw new Error(`VueGridLayout: ${n}[${l}].static must be a boolean!`)}}function Da(t){return P1(t)}function P1(t){const n=t.target.offsetParent||document.body,o=t.offsetParent===document.body?{left:0,top:0}:n.getBoundingClientRect(),r=t.clientX+n.scrollLeft-o.left,l=t.clientY+n.scrollTop-o.top;return{x:r,y:l}}function Ra(t,n,o,r){return F1(t)?{deltaX:o-t,deltaY:r-n,lastX:t,lastY:n,x:o,y:r}:{deltaX:0,deltaY:0,lastX:o,lastY:r,x:o,y:r}}function F1(t){return typeof t=="number"&&!Number.isNaN(t)}function O1(t,n){const o=Ds(t);let r=o[0];for(let l=1,a=o.length;l<a;l++){const i=o[l];n>t[i]&&(r=i)}return r}function Bs(t,n){if(!n[t])throw new Error(`ResponsiveGridLayout: \`cols\` entry for breakpoint ${t} is missing!`);return n[t]}function z1(t,n,o,r,l,a){if(n[r])return on(n[r]);let i=t;const u=Ds(o),s=u.slice(u.indexOf(r));for(let d=0,c=s.length;d<c;d++){const f=s[d];if(n[f]){i=n[f];break}}return i=on(i||[]),Wn(T1(i,{cols:l}),a)}function Ds(t){return Object.keys(t).sort((n,o)=>t[n]-t[o])}const Rs=(t,n)=>{const o=t.__vccOpts||t;for(const[r,l]of n)o[r]=l;return o},L1=["id"],U1={__name:"grid-item",props:{i:{required:!0},x:{type:Number,required:!0},y:{type:Number,required:!0},w:{type:Number,required:!0},h:{type:Number,required:!0},minW:{type:Number,required:!1,default:1},minH:{type:Number,required:!1,default:1},maxW:{type:Number,required:!1,default:1/0},maxH:{type:Number,required:!1,default:1/0},isDraggable:{type:Boolean,required:!1,default:null},isResizable:{type:Boolean,required:!1,default:null},isBounded:{type:Boolean,required:!1,default:null},static:{type:Boolean,required:!1,default:!1},dragIgnoreFrom:{type:String,required:!1,default:"a, button"},dragAllowFrom:{type:String,required:!1,default:null},resizeIgnoreFrom:{type:String,required:!1,default:"a, button"},preserveAspectRatio:{type:Boolean,required:!1,default:!1},dragOption:{type:Object,required:!1,default:()=>({})},resizeOption:{type:Object,required:!1,default:()=>({})}},emits:["container-resized","resize","resized","move","moved"],setup(t,{expose:n,emit:o}){const r=t,l=o,a={el:void 0,calcXY:G};n(a);const i=e.inject("emitter"),u=e.inject("gridLayout");let s;const d=e.reactive({cols:1,containerWidth:100,rowHeight:30,margin:[10,10],maxRows:1/0,draggable:null,resizable:null,bounded:null,transformScale:1,useCssTransforms:!0,useStyleCursor:!0,isDragging:!1,dragging:null,isResizing:!1,resizing:null,lastX:NaN,lastY:NaN,lastW:NaN,lastH:NaN,style:{},dragEventSet:!1,resizeEventSet:!1,previousW:null,previousH:null,previousX:null,previousY:null,innerX:r.x,innerY:r.y,innerW:r.w,innerH:r.h}),c=e.computed(()=>({"vue-resizable":e.unref(f),static:r.static,resizing:d.isResizing,"vue-draggable-dragging":d.isDragging,cssTransforms:d.useCssTransforms,"render-rtl":e.unref(p),"disable-userselect":d.isDragging,"no-touch":e.unref(m)})),f=e.computed(()=>d.resizable&&!r.static),m=e.computed(()=>(d.draggable||d.resizable)&&!r.static),p=e.computed(()=>u.props.isMirrored),g=e.computed(()=>e.unref(p)?"vue-resizable-handle vue-rtl-resizable-handle":"vue-resizable-handle");function v(){i.on("updateWidth",X),i.on("setDraggable",h),i.on("setResizable",x),i.on("setBounded",b),i.on("setTransformScale",y),i.on("setRowHeight",N),i.on("setMaxRows",C),i.on("directionchange",V),i.on("setColNum",_)}v(),e.onBeforeUnmount(()=>{i.off("updateWidth",X),i.off("setDraggable",h),i.off("setResizable",x),i.off("setBounded",b),i.off("setTransformScale",y),i.off("setRowHeight",N),i.off("setMaxRows",C),i.off("directionchange",V),i.off("setColNum",_),s&&s.unset()}),e.onMounted(()=>{const w={...u.props,...u.state};w.responsive&&w.lastBreakpoint?d.cols=Bs(w.lastBreakpoint,w.cols):d.cols=w.colNum,d.rowHeight=w.rowHeight,d.containerWidth=w.width!==null?w.width:100,d.margin=w.margin!==void 0?w.margin:[10,10],d.maxRows=w.maxRows,r.isDraggable===null?d.draggable=w.isDraggable:d.draggable=r.isDraggable,r.isResizable===null?d.resizable=w.isResizable:d.resizable=r.isResizable,r.isBounded===null?d.bounded=w.isBounded:d.bounded=r.isBounded,d.transformScale=w.transformScale,d.useCssTransforms=w.useCssTransforms,d.useStyleCursor=w.useStyleCursor,S()}),e.watch(()=>r.isDraggable,()=>{d.draggable=r.isDraggable}),e.watch(()=>r.static,()=>{le(),F()}),e.watch(()=>d.draggable,()=>{le()}),e.watch(()=>r.isResizable,()=>{d.resizable=r.isResizable}),e.watch(()=>r.isBounded,()=>{d.bounded=r.isBounded}),e.watch(()=>d.resizable,()=>{F()}),e.watch(()=>d.rowHeight,()=>{S(),R()}),e.watch(()=>d.cols,()=>{F(),S(),R()}),e.watch(()=>d.containerWidth,()=>{F(),S(),R()}),e.watch(()=>r.x,w=>{d.innerX=w,S()}),e.watch(()=>r.y,w=>{d.innerY=w,S()}),e.watch(()=>r.h,w=>{d.innerH=w,S()}),e.watch(()=>r.w,w=>{d.innerW=w,S()}),e.watch(p,()=>{F(),S()}),e.watch(()=>r.minH,()=>{F()}),e.watch(()=>r.maxH,()=>{F()}),e.watch(()=>r.minW,()=>{F()}),e.watch(()=>r.maxW,()=>{F()}),e.watch(()=>u.props.margin,w=>{!w||Number(w[0])===Number(d.margin[0])&&Number(w[1])===Number(d.margin[1])||(d.margin=w.map(A=>Number(A)||0),S(),R())});function h(w){r.isDraggable===null&&(d.draggable=w)}function x(w){r.isResizable===null&&(d.resizable=w)}function b(w){r.isBounded===null&&(d.bounded=w)}function y(w){d.transformScale=w}function N(w){d.rowHeight=w}function C(w){d.maxRows=w}function V(){S()}function _(w){d.cols=parseInt(w)}function S(){r.x+r.w>d.cols?(d.innerX=0,d.innerW=r.w>d.cols?d.cols:r.w):(d.innerX=r.x,d.innerW=r.w);const w=P(d.innerX,d.innerY,d.innerW,d.innerH);d.isDragging&&(w.top=d.dragging.top,e.unref(p)?w.right=d.dragging.left:w.left=d.dragging.left),d.isResizing&&(w.width=d.resizing.width,w.height=d.resizing.height);let A;d.useCssTransforms?e.unref(p)?A=D1(w.top,w.right,w.width,w.height):A=B1(w.top,w.left,w.width,w.height):e.unref(p)?A=I1(w.top,w.right,w.width,w.height):A=R1(w.top,w.left,w.width,w.height),d.style=A}function R(){const w={};for(const A of["width","height"]){const L=d.style[A].match(/^(\d+)px$/);if(!L)return;w[A]=L[1]}l("container-resized",r.i,r.h,r.w,w.height,w.width)}function $(w){if(r.static)return;const A=Da(w);if(A==null)return;const{x:L,y:J}=A,O={width:0,height:0};let j;switch(w.type){case"resizestart":{F(),d.previousW=d.innerW,d.previousH=d.innerH,j=P(d.innerX,d.innerY,d.innerW,d.innerH),O.width=j.width,O.height=j.height,d.resizing=O,d.isResizing=!0;break}case"resizemove":{const ae=Ra(d.lastW,d.lastH,L,J);e.unref(p)?O.width=d.resizing.width-ae.deltaX/d.transformScale:O.width=d.resizing.width+ae.deltaX/d.transformScale,O.height=d.resizing.height+ae.deltaY/d.transformScale,d.resizing=O;break}case"resizeend":{j=P(d.innerX,d.innerY,d.innerW,d.innerH),O.width=j.width,O.height=j.height,d.resizing=null,d.isResizing=!1;break}}S(),j=I(O.height,O.width),j.w<r.minW&&(j.w=r.minW),j.w>r.maxW&&(j.w=r.maxW),j.h<r.minH&&(j.h=r.minH),j.h>r.maxH&&(j.h=r.maxH),j.h<1&&(j.h=1),j.w<1&&(j.w=1),d.lastW=L,d.lastH=J,(d.innerW!==j.w||d.innerH!==j.h)&&l("resize",r.i,j.h,j.w,O.height,O.width),w.type==="resizeend"&&(d.previousW!==d.innerW||d.previousH!==d.innerH)&&l("resized",r.i,j.h,j.w,O.height,O.width),i.emit("resizeEvent",[w.type,r.i,d.innerX,d.innerY,j.h,j.w])}function U(w){if(r.static||d.isResizing)return;const A=Da(w);if(A===null)return;const{x:L,y:J}=A,O={top:0,left:0};switch(w.type){case"dragstart":{d.previousX=d.innerX,d.previousY=d.innerY;const ae=w.target.offsetParent.getBoundingClientRect(),q=w.target.getBoundingClientRect(),ie=q.left/d.transformScale,te=ae.left/d.transformScale,be=q.right/d.transformScale,qe=ae.right/d.transformScale,Ge=q.top/d.transformScale,$e=ae.top/d.transformScale;e.unref(p)?O.left=(be-qe)*-1:O.left=ie-te,O.top=Ge-$e,d.dragging=O,d.isDragging=!0;break}case"dragend":{if(!d.isDragging)return;const ae=w.target.offsetParent.getBoundingClientRect(),q=w.target.getBoundingClientRect(),ie=q.left/d.transformScale,te=ae.left/d.transformScale,be=q.right/d.transformScale,qe=ae.right/d.transformScale,Ge=q.top/d.transformScale,$e=ae.top/d.transformScale;e.unref(p)?O.left=(be-qe)*-1:O.left=ie-te,O.top=Ge-$e,d.dragging=null,d.isDragging=!1;break}case"dragmove":{const ae=Ra(d.lastX,d.lastY,L,J);if(e.unref(p)?O.left=d.dragging.left-ae.deltaX/d.transformScale:O.left=d.dragging.left+ae.deltaX/d.transformScale,O.top=d.dragging.top+ae.deltaY/d.transformScale,d.bounded){const q=w.target.offsetParent.clientHeight-B(r.h,d.rowHeight,d.margin[1]);O.top=E(O.top,0,q);const ie=k(),te=d.containerWidth-B(r.w,ie,d.margin[0]);O.left=E(O.left,0,te)}d.dragging=O;break}}S();let j;e.unref(p),j=G(O.top,O.left),d.lastX=L,d.lastY=J,(d.innerX!==j.x||d.innerY!==j.y)&&l("move",r.i,j.x,j.y),w.type==="dragend"&&(d.previousX!==d.innerX||d.previousY!==d.innerY)&&l("moved",r.i,j.x,j.y),i.emit("dragEvent",[w.type,r.i,j.x,j.y,d.innerH,d.innerW])}function P(w,A,L,J){const O=k();let j;return e.unref(p)?j={right:Math.round(O*w+(w+1)*d.margin[0]),top:Math.round(d.rowHeight*A+(A+1)*d.margin[1]),width:L===1/0?L:Math.round(O*L+Math.max(0,L-1)*d.margin[0]),height:J===1/0?J:Math.round(d.rowHeight*J+Math.max(0,J-1)*d.margin[1])}:j={left:Math.round(O*w+(w+1)*d.margin[0]),top:Math.round(d.rowHeight*A+(A+1)*d.margin[1]),width:L===1/0?L:Math.round(O*L+Math.max(0,L-1)*d.margin[0]),height:J===1/0?J:Math.round(d.rowHeight*J+Math.max(0,J-1)*d.margin[1])},j}function G(w,A){const L=k();let J=Math.round((A-d.margin[0])/(L+d.margin[0])),O=Math.round((w-d.margin[1])/(d.rowHeight+d.margin[1]));return J=Math.max(Math.min(J,d.cols-d.innerW),0),O=Math.max(Math.min(O,d.maxRows-d.innerH),0),{x:J,y:O}}function k(){return(d.containerWidth-d.margin[0]*(d.cols+1))/d.cols}function B(w,A,L){return Number.isFinite(w)?Math.round(A*w+Math.max(0,w-1)*L):w}function E(w,A,L){return Math.max(Math.min(w,L),A)}function I(w,A,L=!1){const J=k();let O=Math.round((A+d.margin[0])/(J+d.margin[0])),j=0;return L?j=Math.ceil((w+d.margin[1])/(d.rowHeight+d.margin[1])):j=Math.round((w+d.margin[1])/(d.rowHeight+d.margin[1])),O=Math.max(Math.min(O,d.cols-d.innerX),0),j=Math.max(Math.min(j,d.maxRows-d.innerY),0),{w:O,h:j}}function X(w,A){d.containerWidth=w,A!=null&&(d.cols=A)}function le(){if(s==null&&(s=It(a.el),d.useStyleCursor||s.styleCursor(!1)),d.draggable&&!r.static){const w={ignoreFrom:r.dragIgnoreFrom,allowFrom:r.dragAllowFrom,...r.dragOption};s.draggable(w),d.dragEventSet||(d.dragEventSet=!0,s.on("dragstart dragmove dragend",A=>{U(A)}))}else s.draggable({enabled:!1})}function F(){if(s==null&&(s=It(a.el),d.useStyleCursor||s.styleCursor(!1)),d.resizable&&!r.static){const w=P(0,0,r.maxW,r.maxH),A=P(0,0,r.minW,r.minH),L={edges:{left:!1,right:`.${e.unref(g).trim().replace(" ",".")}`,bottom:`.${e.unref(g).trim().replace(" ",".")}`,top:!1},ignoreFrom:r.resizeIgnoreFrom,restrictSize:{min:{height:A.height*d.transformScale,width:A.width*d.transformScale},max:{height:w.height*d.transformScale,width:w.width*d.transformScale}},...r.resizeOption};r.preserveAspectRatio&&(L.modifiers=[It.modifiers.aspectRatio({ratio:"preserve"})]),s.resizable(L),d.resizeEventSet||(d.resizeEventSet=!0,s.on("resizestart resizemove resizeend",J=>{$(J)}))}else s.resizable({enabled:!1})}function T(w){a.el=w}return(w,A)=>(e.openBlock(),e.createElementBlock("div",{ref:T,class:e.normalizeClass(["vue-grid-item",c.value]),style:e.normalizeStyle(d.style),id:t.i,key:t.i},[e.renderSlot(w.$slots,"default",{class:e.normalizeClass({rtl:p.value})},void 0,!0),f.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(g.value)},null,2)):e.createCommentVNode("",!0)],14,L1))}},Is=Rs(U1,[["__scopeId","data-v-99aff433"]]);function j1(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ms={exports:{}},$1=Ms.exports={};$1.forEach=function(t,n){for(var o=0;o<t.length;o++){var r=n(t[o]);if(r)return r}};var Ps=Ms.exports,H1=function(t){var n=t.stateHandler.getState;function o(i){var u=n(i);return u&&!!u.isDetectable}function r(i){n(i).isDetectable=!0}function l(i){return!!n(i).busy}function a(i,u){n(i).busy=!!u}return{isDetectable:o,markAsDetectable:r,isBusy:l,markBusy:a}},q1=function(t){var n={};function o(i){var u=t.get(i);return u===void 0?[]:n[u]||[]}function r(i,u){var s=t.get(i);n[s]||(n[s]=[]),n[s].push(u)}function l(i,u){for(var s=o(i),d=0,c=s.length;d<c;++d)if(s[d]===u){s.splice(d,1);break}}function a(i){var u=o(i);u&&(u.length=0)}return{get:o,add:r,removeListener:l,removeAllListeners:a}},G1=function(){var t=1;function n(){return t++}return{generate:n}},W1=function(t){var n=t.idGenerator,o=t.stateHandler.getState;function r(a){var i=o(a);return i&&i.id!==void 0?i.id:null}function l(a){var i=o(a);if(!i)throw new Error("setId required the element to have a resize detection state.");var u=n.generate();return i.id=u,u}return{get:r,set:l}},X1=function(t){function n(){}var o={log:n,warn:n,error:n};if(!t&&window.console){var r=function(l,a){l[a]=function(){var i=console[a];if(i.apply)i.apply(console,arguments);else for(var u=0;u<arguments.length;u++)i(arguments[u])}};r(o,"log"),r(o,"warn"),r(o,"error")}return o},Fs={exports:{}},Os=Fs.exports={};Os.isIE=function(t){function n(){var r=navigator.userAgent.toLowerCase();return r.indexOf("msie")!==-1||r.indexOf("trident")!==-1||r.indexOf(" edge/")!==-1}if(!n())return!1;if(!t)return!0;var o=function(){var r,l=3,a=document.createElement("div"),i=a.getElementsByTagName("i");do a.innerHTML="<!--[if gt IE "+ ++l+"]><i></i><![endif]-->";while(i[0]);return l>4?l:r}();return t===o};Os.isLegacyOpera=function(){return!!window.opera};var zs=Fs.exports,Ls={exports:{}},Y1=Ls.exports={};Y1.getOption=Z1;function Z1(t,n,o){var r=t[n];return r==null&&o!==void 0?o:r}var K1=Ls.exports,Ia=K1,J1=function(t){t=t||{};var n=t.reporter,o=Ia.getOption(t,"async",!0),r=Ia.getOption(t,"auto",!0);r&&!o&&(n&&n.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true."),o=!0);var l=Ma(),a,i=!1;function u(p,g){!i&&r&&o&&l.size()===0&&c(),l.add(p,g)}function s(){for(i=!0;l.size();){var p=l;l=Ma(),p.process()}i=!1}function d(p){i||(p===void 0&&(p=o),a&&(f(a),a=null),p?c():s())}function c(){a=m(s)}function f(p){var g=clearTimeout;return g(p)}function m(p){var g=function(v){return setTimeout(v,0)};return g(p)}return{add:u,force:d}};function Ma(){var t={},n=0,o=0,r=0;function l(u,s){s||(s=u,u=0),u>o?o=u:u<r&&(r=u),t[u]||(t[u]=[]),t[u].push(s),n++}function a(){for(var u=r;u<=o;u++)for(var s=t[u],d=0;d<s.length;d++){var c=s[d];c()}}function i(){return n}return{add:l,process:a,size:i}}var bl="_erd";function Q1(t){return t[bl]={},Us(t)}function Us(t){return t[bl]}function eV(t){delete t[bl]}var tV={initState:Q1,getState:Us,cleanState:eV},Un=zs,nV=function(t){t=t||{};var n=t.reporter,o=t.batchProcessor,r=t.stateHandler.getState;if(!n)throw new Error("Missing required dependency: reporter.");function l(d,c){function f(){c(d)}if(Un.isIE(8))r(d).object={proxy:f},d.attachEvent("onresize",f);else{var m=u(d);if(!m)throw new Error("Element is not detectable by this strategy.");m.contentDocument.defaultView.addEventListener("resize",f)}}function a(d){var c=t.important?" !important; ":"; ";return(d.join(c)+c).trim()}function i(d,c,f){f||(f=c,c=d,d=null),d=d||{},d.debug;function m(p,g){var v=a(["display: block","position: absolute","top: 0","left: 0","width: 100%","height: 100%","border: none","padding: 0","margin: 0","opacity: 0","z-index: -1000","pointer-events: none"]),h=!1,x=window.getComputedStyle(p),b=p.offsetWidth,y=p.offsetHeight;r(p).startSize={width:b,height:y};function N(){function C(){if(x.position==="static"){p.style.setProperty("position","relative",d.important?"important":"");var S=function(R,$,U,P){function G(B){return B.replace(/[^-\d\.]/g,"")}var k=U[P];k!=="auto"&&G(k)!=="0"&&(R.warn("An element that is positioned static has style."+P+"="+k+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+P+" will be set to 0. Element: ",$),$.style.setProperty(P,"0",d.important?"important":""))};S(n,p,x,"top"),S(n,p,x,"right"),S(n,p,x,"bottom"),S(n,p,x,"left")}}function V(){h||C();function S($,U){if(!$.contentDocument){var P=r($);P.checkForObjectDocumentTimeoutId&&window.clearTimeout(P.checkForObjectDocumentTimeoutId),P.checkForObjectDocumentTimeoutId=setTimeout(function(){P.checkForObjectDocumentTimeoutId=0,S($,U)},100);return}U($.contentDocument)}var R=this;S(R,function($){g(p)})}x.position!==""&&(C(),h=!0);var _=document.createElement("object");_.style.cssText=v,_.tabIndex=-1,_.type="text/html",_.setAttribute("aria-hidden","true"),_.onload=V,Un.isIE()||(_.data="about:blank"),r(p)&&(p.appendChild(_),r(p).object=_,Un.isIE()&&(_.data="about:blank"))}o?o.add(N):N()}Un.isIE(8)?f(c):m(c,f)}function u(d){return r(d).object}function s(d){if(r(d)){var c=u(d);c&&(Un.isIE(8)?d.detachEvent("onresize",c.proxy):d.removeChild(c),r(d).checkForObjectDocumentTimeoutId&&window.clearTimeout(r(d).checkForObjectDocumentTimeoutId),delete r(d).object)}}return{makeDetectable:i,addListener:l,uninstall:s}},oV=Ps.forEach,rV=function(t){t=t||{};var n=t.reporter,o=t.batchProcessor,r=t.stateHandler.getState;t.stateHandler.hasState;var l=t.idHandler;if(!o)throw new Error("Missing required dependency: batchProcessor");if(!n)throw new Error("Missing required dependency: reporter.");var a=c(),i="erd_scroll_detection_scrollbar_style",u="erd_scroll_detection_container";function s(N){f(N,i,u)}s(window.document);function d(N){var C=t.important?" !important; ":"; ";return(N.join(C)+C).trim()}function c(){var N=500,C=500,V=document.createElement("div");V.style.cssText=d(["position: absolute","width: "+N*2+"px","height: "+C*2+"px","visibility: hidden","margin: 0","padding: 0"]);var _=document.createElement("div");_.style.cssText=d(["position: absolute","width: "+N+"px","height: "+C+"px","overflow: scroll","visibility: none","top: "+-N*3+"px","left: "+-C*3+"px","visibility: hidden","margin: 0","padding: 0"]),_.appendChild(V),document.body.insertBefore(_,document.body.firstChild);var S=N-_.clientWidth,R=C-_.clientHeight;return document.body.removeChild(_),{width:S,height:R}}function f(N,C,V){function _(U,P){P=P||function(k){N.head.appendChild(k)};var G=N.createElement("style");return G.innerHTML=U,G.id=C,P(G),G}if(!N.getElementById(C)){var S=V+"_animation",R=V+"_animation_active",$=`/* Created by the element-resize-detector library. */
|
|
33
|
+
`;$+="."+V+" > div::-webkit-scrollbar { "+d(["display: none"])+` }
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
`,Y+="@keyframes "+B+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }",N(Y)}}function m(k){k.className+=" "+d+"_animation_active"}function f(k,x,C){if(k.addEventListener)k.addEventListener(x,C);else if(k.attachEvent)k.attachEvent("on"+x,C);else return n.error("[scroll] Don't know how to add event listeners.")}function v(k,x,C){if(k.removeEventListener)k.removeEventListener(x,C);else if(k.detachEvent)k.detachEvent("on"+x,C);else return n.error("[scroll] Don't know how to remove event listeners.")}function g(k){return r(k).container.childNodes[0].childNodes[0].childNodes[0]}function h(k){return r(k).container.childNodes[0].childNodes[0].childNodes[1]}function y(k,x){var C=r(k).listeners;if(!C.push)throw new Error("Cannot add listener to an element that is not detectable.");r(k).listeners.push(x)}function b(k,x,C){C||(C=x,x=k,k=null),k=k||{};function N(){if(k.debug){var G=Array.prototype.slice.call(arguments);if(G.unshift(l.get(x),"Scroll: "),n.log.apply)n.log.apply(null,G);else for(var ue=0;ue<G.length;ue++)n.log(G[ue])}}function B(G){function ue(te){var we=te.getRootNode&&te.getRootNode().contains(te);return te===te.ownerDocument.body||te.ownerDocument.body.contains(te)||we}return!ue(G)||window.getComputedStyle(G)===null}function z(G){var ue=r(G).container.childNodes[0],te=window.getComputedStyle(ue);return!te.width||te.width.indexOf("px")===-1}function Y(){var G=window.getComputedStyle(x),ue={};return ue.position=G.position,ue.width=x.offsetWidth,ue.height=x.offsetHeight,ue.top=G.top,ue.right=G.right,ue.bottom=G.bottom,ue.left=G.left,ue.widthCSS=G.width,ue.heightCSS=G.height,ue}function R(){var G=Y();r(x).startSize={width:G.width,height:G.height},N("Element start size",r(x).startSize)}function T(){r(x).listeners=[]}function U(){if(N("storeStyle invoked."),!r(x)){N("Aborting because element has been uninstalled");return}var G=Y();r(x).style=G}function S(G,ue,te){r(G).lastWidth=ue,r(G).lastHeight=te}function j(G){return g(G).childNodes[0]}function P(){return 2*a.width+1}function M(){return 2*a.height+1}function K(G){return G+10+P()}function A(G){return G+10+M()}function w(G){return G*2+P()}function E(G){return G*2+M()}function V(G,ue,te){var we=g(G),je=h(G),ye=K(ue),$e=A(te),De=w(ue),Ve=E(te);we.scrollLeft=ye,we.scrollTop=$e,je.scrollLeft=De,je.scrollTop=Ve}function D(){var G=r(x).container;if(!G){G=document.createElement("div"),G.className=d,G.style.cssText=u(["visibility: hidden","display: inline","width: 0px","height: 0px","z-index: -1","overflow: hidden","margin: 0","padding: 0"]),r(x).container=G,m(G),x.appendChild(G);var ue=function(){r(x).onRendered&&r(x).onRendered()};f(G,"animationstart",ue),r(x).onAnimationStart=ue}return G}function L(){function G(){var ie=r(x).style;if(ie.position==="static"){x.style.setProperty("position","relative",k.important?"important":"");var Ee=function(Te,$,I,q){function ne(he){return he.replace(/[^-\d\.]/g,"")}var de=I[q];de!=="auto"&&ne(de)!=="0"&&(Te.warn("An element that is positioned static has style."+q+"="+de+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+q+" will be set to 0. Element: ",$),$.style[q]=0)};Ee(n,x,ie,"top"),Ee(n,x,ie,"right"),Ee(n,x,ie,"bottom"),Ee(n,x,ie,"left")}}function ue(ie,Ee,Te,$){return ie=ie?ie+"px":"0",Ee=Ee?Ee+"px":"0",Te=Te?Te+"px":"0",$=$?$+"px":"0",["left: "+ie,"top: "+Ee,"right: "+$,"bottom: "+Te]}if(N("Injecting elements"),!r(x)){N("Aborting because element has been uninstalled");return}G();var te=r(x).container;te||(te=D());var we=a.width,je=a.height,ye=u(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden","width: 100%","height: 100%","left: 0px","top: 0px"]),$e=u(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden"].concat(ue(-(1+we),-(1+je),-je,-we))),De=u(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),Ve=u(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),Fe=u(["position: absolute","left: 0","top: 0"]),Oe=u(["position: absolute","width: 200%","height: 200%"]),Ie=document.createElement("div"),Ue=document.createElement("div"),Vt=document.createElement("div"),Ct=document.createElement("div"),H=document.createElement("div"),Ce=document.createElement("div");Ie.dir="ltr",Ie.style.cssText=ye,Ie.className=d,Ue.className=d,Ue.style.cssText=$e,Vt.style.cssText=De,Ct.style.cssText=Fe,H.style.cssText=Ve,Ce.style.cssText=Oe,Vt.appendChild(Ct),H.appendChild(Ce),Ue.appendChild(Vt),Ue.appendChild(H),Ie.appendChild(Ue),te.appendChild(Ie);function qe(){var ie=r(x);ie&&ie.onExpand?ie.onExpand():N("Aborting expand scroll handler: element has been uninstalled")}function ae(){var ie=r(x);ie&&ie.onShrink?ie.onShrink():N("Aborting shrink scroll handler: element has been uninstalled")}f(Vt,"scroll",qe),f(H,"scroll",ae),r(x).onExpandScroll=qe,r(x).onShrinkScroll=ae}function ee(){function G(De,Ve,Fe){var Oe=j(De),Ie=K(Ve),Ue=A(Fe);Oe.style.setProperty("width",Ie+"px",k.important?"important":""),Oe.style.setProperty("height",Ue+"px",k.important?"important":"")}function ue(De){var Ve=x.offsetWidth,Fe=x.offsetHeight,Oe=Ve!==r(x).lastWidth||Fe!==r(x).lastHeight;N("Storing current size",Ve,Fe),S(x,Ve,Fe),o.add(0,function(){if(Oe){if(!r(x)){N("Aborting because element has been uninstalled");return}if(!te()){N("Aborting because element container has not been initialized");return}if(k.debug){var Ie=x.offsetWidth,Ue=x.offsetHeight;(Ie!==Ve||Ue!==Fe)&&n.warn(l.get(x),"Scroll: Size changed before updating detector elements.")}G(x,Ve,Fe)}}),o.add(1,function(){if(!r(x)){N("Aborting because element has been uninstalled");return}if(!te()){N("Aborting because element container has not been initialized");return}V(x,Ve,Fe)}),Oe&&De&&o.add(2,function(){if(!r(x)){N("Aborting because element has been uninstalled");return}if(!te()){N("Aborting because element container has not been initialized");return}De()})}function te(){return!!r(x).container}function we(){function De(){return r(x).lastNotifiedWidth===void 0}N("notifyListenersIfNeeded invoked");var Ve=r(x);if(De()&&Ve.lastWidth===Ve.startSize.width&&Ve.lastHeight===Ve.startSize.height)return N("Not notifying: Size is the same as the start size, and there has been no notification yet.");if(Ve.lastWidth===Ve.lastNotifiedWidth&&Ve.lastHeight===Ve.lastNotifiedHeight)return N("Not notifying: Size already notified");N("Current size not notified, notifying..."),Ve.lastNotifiedWidth=Ve.lastWidth,Ve.lastNotifiedHeight=Ve.lastHeight,aV(r(x).listeners,function(Fe){Fe(x)})}function je(){if(N("startanimation triggered."),z(x)){N("Ignoring since element is still unrendered...");return}N("Element rendered.");var De=g(x),Ve=h(x);(De.scrollLeft===0||De.scrollTop===0||Ve.scrollLeft===0||Ve.scrollTop===0)&&(N("Scrollbars out of sync. Updating detector elements..."),ue(we))}function ye(){if(N("Scroll detected."),z(x)){N("Scroll event fired while unrendered. Ignoring...");return}ue(we)}if(N("registerListenersAndPositionElements invoked."),!r(x)){N("Aborting because element has been uninstalled");return}r(x).onRendered=je,r(x).onExpand=ye,r(x).onShrink=ye;var $e=r(x).style;G(x,$e.width,$e.height)}function O(){if(N("finalizeDomMutation invoked."),!r(x)){N("Aborting because element has been uninstalled");return}var G=r(x).style;S(x,G.width,G.height),V(x,G.width,G.height)}function W(){C(x)}function se(){N("Installing..."),T(),R(),o.add(0,U),o.add(1,L),o.add(2,ee),o.add(3,O),o.add(4,W)}N("Making detectable..."),B(x)?(N("Element is detached"),D(),N("Waiting until element is attached..."),r(x).onRendered=function(){N("Element is now attached"),se()}):se()}function _(k){var x=r(k);x&&(x.onExpandScroll&&v(g(k),"scroll",x.onExpandScroll),x.onShrinkScroll&&v(h(k),"scroll",x.onShrinkScroll),x.onAnimationStart&&v(x.container,"animationstart",x.onAnimationStart),x.container&&k.removeChild(x.container))}return{makeDetectable:b,addListener:y,uninstall:_,initDocument:s}},Zn=Ps.forEach,sV=W1,uV=Z1,dV=Y1,cV=X1,pV=J1,Aa=Fs,fV=tV,zt=rV,mV=lV,gV=iV;function Fa(t){return Array.isArray(t)||t.length!==void 0}function Oa(t){if(Array.isArray(t))return t;var n=[];return Zn(t,function(o){n.push(o)}),n}function za(t){return t&&t.nodeType===1}var vV=function(t){t=t||{};var n;if(t.idHandler)n={get:function(b){return t.idHandler.get(b,!0)},set:t.idHandler.set};else{var o=dV(),r=cV({idGenerator:o,stateHandler:zt});n=r}var l=t.reporter;if(!l){var a=l===!1;l=pV(a)}var i=Lt(t,"batchProcessor",fV({reporter:l})),d={};d.callOnAdd=!!Lt(t,"callOnAdd",!0),d.debug=!!Lt(t,"debug",!1);var s=uV(n),u=sV({stateHandler:zt}),c,p=Lt(t,"strategy","object"),m=Lt(t,"important",!1),f={reporter:l,batchProcessor:i,stateHandler:zt,idHandler:n,important:m};if(p==="scroll"&&(Aa.isLegacyOpera()?(l.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),p="object"):Aa.isIE(9)&&(l.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),p="object")),p==="scroll")c=gV(f);else if(p==="object")c=mV(f);else throw new Error("Invalid strategy name: "+p);var v={};function g(b,_,k){function x(R){var T=s.get(R);Zn(T,function(U){U(R)})}function C(R,T,U){s.add(T,U),R&&U(T)}if(k||(k=_,_=b,b={}),!_)throw new Error("At least one element required.");if(!k)throw new Error("Listener required.");if(za(_))_=[_];else if(Fa(_))_=Oa(_);else return l.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");var N=0,B=Lt(b,"callOnAdd",d.callOnAdd),z=Lt(b,"onReady",function(){}),Y=Lt(b,"debug",d.debug);Zn(_,function(R){zt.getState(R)||(zt.initState(R),n.set(R));var T=n.get(R);if(Y&&l.log("Attaching listener to element",T,R),!u.isDetectable(R)){if(Y&&l.log(T,"Not detectable."),u.isBusy(R)){Y&&l.log(T,"System busy making it detectable"),C(B,R,k),v[T]=v[T]||[],v[T].push(function(){N++,N===_.length&&z()});return}return Y&&l.log(T,"Making detectable..."),u.markBusy(R,!0),c.makeDetectable({debug:Y,important:m},R,function(U){if(Y&&l.log(T,"onElementDetectable"),zt.getState(U)){u.markAsDetectable(U),u.markBusy(U,!1),c.addListener(U,x),C(B,U,k);var S=zt.getState(U);if(S&&S.startSize){var j=U.offsetWidth,P=U.offsetHeight;(S.startSize.width!==j||S.startSize.height!==P)&&x(U)}v[T]&&Zn(v[T],function(M){M()})}else Y&&l.log(T,"Element uninstalled before being detectable.");delete v[T],N++,N===_.length&&z()})}Y&&l.log(T,"Already detecable, adding listener."),C(B,R,k),N++}),N===_.length&&z()}function h(b){if(!b)return l.error("At least one element is required.");if(za(b))b=[b];else if(Fa(b))b=Oa(b);else return l.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");Zn(b,function(_){s.removeAllListeners(_),c.uninstall(_),zt.cleanState(_)})}function y(b){c.initDocument&&c.initDocument(b)}return{listenTo:g,removeListener:s.removeListener,removeAllListeners:s.removeAllListeners,uninstall:h,initDocument:y}};function Lt(t,n,o){var r=t[n];return r==null&&o!==void 0?o:r}const hV=G1(vV);function xV(t){return{all:t=t||new Map,on:function(n,o){var r=t.get(n);r?r.push(o):t.set(n,[o])},off:function(n,o){var r=t.get(n);r&&(o?r.splice(r.indexOf(o)>>>0,1):t.set(n,[]))},emit:function(n,o){var r=t.get(n);r&&r.slice().map(function(l){l(o)}),(r=t.get("*"))&&r.slice().map(function(l){l(n,o)})}}}function Ls(){return typeof window<"u"}const js=()=>{};function _V(t,n=js){if(!Ls){n();return}window.addEventListener(t,n)}function yV(t,n=js){Ls&&window.removeEventListener(t,n)}const VV={__name:"grid-layout",props:{layout:{type:Array,required:!0},responsiveLayouts:{type:Object,default(){return{}}},colNum:{type:Number,default:12},rowHeight:{type:Number,default:150},maxRows:{type:Number,default:1/0},margin:{type:Array,default(){return[10,10]}},isDraggable:{type:Boolean,default:!0},isResizable:{type:Boolean,default:!0},isMirrored:{type:Boolean,default:!1},isBounded:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!0},verticalCompact:{type:Boolean,default:!0},restoreOnDrag:{type:Boolean,default:!1},preventCollision:{type:Boolean,default:!1},useCssTransforms:{type:Boolean,default:!0},responsive:{type:Boolean,default:!1},breakpoints:{type:Object,default(){return{lg:1200,md:996,sm:768,xs:480,xxs:0}}},cols:{type:Object,default(){return{lg:12,md:10,sm:6,xs:4,xxs:2}}},useStyleCursor:{type:Boolean,default:!0},transformScale:{type:Number,default:1}},emits:["update:layout","layout-ready","layout-created","layout-before-mount","layout-mounted","layout-updated","breakpoint-changed"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=xV(),i={el:void 0,placeholderEl:void 0,placeholder:{},emitter:a};n(i);const d=hV({strategy:"scroll",callOnAdd:!1}),s=e.reactive({width:null,mergedStyle:{},isDragging:!1,placeholder:{x:0,y:0,w:0,h:0,i:-1},layout:[],layouts:{},lastBreakpoint:null,originalLayout:null});e.provide("emitter",a),e.provide("gridLayout",{props:r,state:s});function u(){a.on("resizeEvent",h),a.on("dragEvent",g),l("layout-created",r.layout),_V("resize",f)}u(),e.onBeforeMount(()=>{l("layout-before-mount",s.layout)}),e.onMounted(()=>{l("layout-mounted",s.layout)}),e.onBeforeUnmount(()=>{a.off("resizeEvent",h),a.off("dragEvent",g),yV("resize",f),d&&i.el&&d.uninstall(i.el)}),e.watch(()=>s.width,async(x,C)=>{a.emit("updateWidth",s.width),m(),C===null&&(await e.nextTick(),l("layout-ready",s.layout))}),e.watch(()=>r.layout,()=>{F1(r.layout),s.originalLayout=r.layout,p()},{deep:!0,immediate:!0}),e.watch(()=>r.colNum,()=>{s.colNum=r.colNum,a.emit("setColNum",r.colNum)},{immediate:!0}),e.watch(()=>r.rowHeight,()=>{a.emit("setRowHeight",r.rowHeight)}),e.watch(()=>r.isDraggable,()=>{a.emit("setDraggable",r.isDraggable)}),e.watch(()=>r.isResizable,()=>{a.emit("setResizable",r.isResizable)}),e.watch(()=>r.isBounded,()=>{a.emit("setBounded",r.isBounded)}),e.watch(()=>r.transformScale,()=>{a.emit("setTransformScale",r.transformScale)}),e.watch(()=>r.responsive,()=>{r.responsive||(s.layout=ln(s.originalLayout),a.emit("setColNum",r.colNum)),f()}),e.watch(()=>r.maxRows,()=>{a.emit("setMaxRows",r.maxRows)}),e.watch(()=>r.margin,()=>{m()},{deep:!0});function c(x,C){if((x==null?void 0:x.length)!==(C==null?void 0:C.length))return!0;let N=!1,B=0;for(;B<x.length;){const z=x[B],Y=Object.keys(z),R=C[B],T=Object.keys(R),U=[...new Set([...Y,...T])];let S=0;for(;S<U.length;){const j=U[S];if(z[j]!==R[j]){N=!0;break}S+=1}if(N)break;B+=1}return N}function p(){if(c(r.layout,s.layout)&&(b(),s.layout=ln(r.layout),Wn(s.layout,r.verticalCompact),a.emit("updateWidth",s.width),m(),c(r.layout,s.layout))){const x=ln(s.layout);l("layout-updated",x),l("update:layout",x)}}function m(){s.mergedStyle={height:v()}}function f(){i.el&&(s.width=i.el.offsetWidth),a.emit("resizeEvent")}function v(){var x;if(!r.autoSize)return;const C=((x=r.margin)==null?void 0:x[1])||0;return`${B1(s.layout)*(r.rowHeight+C)+C}px`}function g([x,C,N,B,z,Y]=[]){let R=Ba(s.layout,C);if(R==null&&(R={x:0,y:0}),x==="dragstart"&&!r.verticalCompact&&(s.positionsBeforeDrag=s.layout.reduce((T,{i:U,x:S,y:j})=>({...T,[U]:{x:S,y:j}}),{})),x==="dragmove"||x==="dragstart"?(s.placeholder.x=R.x,s.placeholder.y=R.y,s.placeholder.w=Y,s.placeholder.h=z,s.isDragging=!0):s.isDragging=!1,s.layout=el(s.layout,R,N,B,!0,r.preventCollision),r.restoreOnDrag?(R.static=!0,Wn(s.layout,r.verticalCompact,s.positionsBeforeDrag),R.static=!1):Wn(s.layout,r.verticalCompact),m(),x==="dragend"&&delete s.positionsBeforeDrag,c(r.layout,s.layout)){const T=ln(s.layout);l("layout-updated",T),l("update:layout",T)}}function h([x,C,N,B,z,Y]=[]){let R=Ba(s.layout,C);R==null&&(R={h:0,w:0});let T;if(r.preventCollision){const U=Ss(s.layout,{...R,w:Y,h:z}).filter(S=>S.i!==R.i);if(T=U.length>0,T){let S=1/0,j=1/0;U.forEach(P=>{P.x>R.x&&(S=Math.min(S,P.x)),P.y>R.y&&(j=Math.min(j,P.y))}),Number.isFinite(S)&&(R.w=S-R.x),Number.isFinite(j)&&(R.h=j-R.y)}}if(T||(R.w=Y,R.h=z),x==="resizestart"||x==="resizemove"?(s.placeholder.x=N,s.placeholder.y=B,s.placeholder.w=R.w,s.placeholder.h=R.h,s.isDragging=!0):s.isDragging=!1,r.responsive&&y(),Wn(s.layout,r.verticalCompact),m(),c(r.layout,s.layout)){const U=ln(s.layout);l("layout-updated",U),l("update:layout",U)}}function y(){const x=L1(r.breakpoints,s.width),C=Ds(x,r.cols);C!==s.colNum&&(s.colNum=C,s.layout=j1(s.layout,s.layouts,r.breakpoints,x,C,r.verticalCompact),s.layouts[x]=s.layout,a.emit("setColNum",C)),s.lastBreakpoint!==x&&(s.lastBreakpoint=x,l("breakpoint-changed",x,s.layout))}function b(){s.layouts={...r.responsiveLayouts}}function _(x){!x||x===i.el||(i.el=x,d&&d.listenTo(i.el,()=>{f()}),s.width=i.el.offsetWidth)}function k(x){x&&(i.placeholder=x,i.placeholderEl=x.el)}return(x,C)=>(e.openBlock(),e.createElementBlock("div",{ref:_,class:"vue-grid-layout",style:e.normalizeStyle(s.mergedStyle)},[e.renderSlot(x.$slots,"default",{},void 0,!0),e.withDirectives(e.createVNode(Is,{ref:k,class:"vue-grid-placeholder",x:s.placeholder.x,y:s.placeholder.y,w:s.placeholder.w,h:s.placeholder.h,i:"placeholder"},null,8,["x","y","w","h"]),[[e.vShow,s.isDragging]])],4))}},CV=$s(VV,[["__scopeId","data-v-a10aee95"]]),bV={class:"items-top flex gap-x-2"},wV={class:"grid gap-1.5 leading-none"},NV=["for"],kV={class:"text-sm text-muted-foreground"},SV=e.defineComponent({__name:"Checkbox",props:{variableName:{type:String,required:!0},label:{type:String,required:!0},text:{type:String,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Checkbox",!0);return e.openBlock(),e.createElementBlock("div",bV,[e.createVNode(a,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=i=>e.unref(o).elementValues[t.variableName]=i),class:"border-ring"},null,8,["id","modelValue"]),e.createElementVNode("div",wV,[e.createElementVNode("label",{for:e.unref(n),class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"},e.toDisplayString(t.label),9,NV),e.createElementVNode("p",kV,e.toDisplayString(t.text),1)])])}}}),EV={};function TV(t,n){return e.openBlock(),e.createElementBlock("div")}const DV=Kt(EV,[["render",TV]]),BV={};function $V(t,n){return e.openBlock(),e.createElementBlock("div")}const IV=Kt(BV,[["render",$V]]),MV={};function PV(t,n){return e.openBlock(),e.createElementBlock("div")}const RV=Kt(MV,[["render",PV]]),AV={class:"whitespace-pre-wrap"},FV=e.defineComponent({__name:"Label",props:{text:{type:String,default:""}},setup(t){const n=t,o=e.inject("allAvailableVariables"),r=e.computed(()=>Ho(n.text,o==null?void 0:o.value));return(l,a)=>(e.openBlock(),e.createElementBlock("p",AV,e.toDisplayString(r.value),1))}}),OV={};function zV(t,n){return e.openBlock(),e.createElementBlock("div")}const LV=Kt(OV,[["render",zV]]),jV={class:"grid w-full items-center gap-1.5"},UV=e.defineComponent({__name:"Radios",props:{variableName:{type:String,required:!0},label:{type:String,default:""},orientation:{type:String,default:"vertical"},options:{type:Array,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("RadioGroupItem"),d=e.resolveComponent("RadioGroup");return e.openBlock(),e.createElementBlock("div",jV,[t.label?(e.openBlock(),e.createBlock(a,{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(d,{modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=s=>e.unref(o).elementValues[t.variableName]=s),orientation:t.orientation,class:"flex-wrap"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,s=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center space-x-2",key:s.value},[e.createVNode(i,{id:e.unref(n)+"_"+s.value,value:s.value,class:"border-ring"},null,8,["id","value"]),e.createVNode(a,{for:e.unref(n)+"_"+s.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1032,["for"])]))),128))]),_:1},8,["modelValue","orientation"])])}}}),HV={};function GV(t,n){return e.openBlock(),e.createElementBlock("div")}const qV=Kt(HV,[["render",GV]]),WV={class:"grid w-full items-center gap-1.5"},ZV=e.defineComponent({__name:"Select",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""},options:{type:Array,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("SelectValue"),d=e.resolveComponent("SelectTrigger"),s=e.resolveComponent("SelectItem"),u=e.resolveComponent("SelectGroup"),c=e.resolveComponent("SelectContent"),p=e.resolveComponent("Select",!0);return e.openBlock(),e.createElementBlock("div",WV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(p,{modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=m=>e.unref(o).elementValues[t.variableName]=m)},{default:e.withCtx(()=>[e.createVNode(d,{class:"w-[180px] border-ring"},{default:e.withCtx(()=>[e.createVNode(i,{placeholder:t.placeholder},null,8,["placeholder"])]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,m=>(e.openBlock(),e.createBlock(s,{key:m.value,value:m.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),YV={class:"whitespace-pre-wrap"},XV=e.defineComponent({__name:"Text",props:{text:{type:String,default:""}},setup(t){const n=t,o=e.inject("allAvailableVariables"),r=e.computed(()=>Ho(n.text,o==null?void 0:o.value));return(l,a)=>(e.openBlock(),e.createElementBlock("p",YV,e.toDisplayString(r.value),1))}}),JV={class:"flex flex-col w-full h-full items-start gap-1.5"},KV=e.defineComponent({__name:"Textarea",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Textarea",!0);return e.openBlock(),e.createElementBlock("div",JV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(i,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=d=>e.unref(o).elementValues[t.variableName]=d),placeholder:t.placeholder,class:"border-ring h-full resize-none"},null,8,["id","modelValue","placeholder"])])}}}),QV={class:"grid w-full items-center gap-1.5"},eC=e.defineComponent({__name:"Textfield",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",QV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(i,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=d=>e.unref(o).elementValues[t.variableName]=d),type:"text",placeholder:t.placeholder,class:"border-ring"},null,8,["id","modelValue","placeholder"])])}}}),tC={class:"truncate w-full"},nC=e.defineComponent({__name:"Button",props:{variableName:{type:String,required:!0},text:{type:String,default:""},variant:{type:String,default:""},onClickEvents:{type:Array,default:()=>[]}},setup(t){const n=e.inject("allAvailableVariables"),o=t,r=()=>{o.onClickEvents.forEach(a=>{const{fireAction:i}=J.useIntegrationActions(a.action.integration);i(a.action,n.value)})},l=e.computed(()=>!1);return(a,i)=>{const d=e.resolveComponent("Button",!0);return e.openBlock(),e.createBlock(d,{variant:t.variant,onClick:r,disabled:l.value,class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",tC,e.toDisplayString(t.text),1)]),_:1},8,["variant","disabled"])}}}),oC={CustomModuleCheckbox:SV,CustomModuleFile:DV,CustomModuleImages:IV,CustomModuleItems:RV,CustomModuleLabel:FV,CustomModuleLocation:LV,CustomModuleRadios:UV,CustomModuleRichText:qV,CustomModuleSelect:ZV,CustomModuleText:XV,CustomModuleTextarea:KV,CustomModuleTextfield:eC,CustomModuleButton:nC},rC={class:"relative min-h-full flex flex-col"},lC=["onClick"],aC=e.defineComponent({__name:"CustomDashboard",setup(t){const n=J.useConfirmation(),o=e.inject("state"),r=e.inject("isDragging"),l=e.inject("activeElement"),a=e.inject("selectedItems"),i=e.inject("isEditMode",e.ref(!1)),d=e.inject("allAvailableVariables"),s=e.useTemplateRef("containerRef"),{height:u}=fi(s);function c(w,E){o.itemRefs[w.i]=E}function p(w){o.layoutRef=w}function m(w,E,V){console.info(`MOVE i=${w}, X=${E}, Y=${V}`)}function f(w,E,V,D,L){console.info(`RESIZE i=${w}, H=${E}, W=${V}, H(px)=${D}, W(px)=${L}`)}function v(w,E,V){console.info(`### MOVED i=${w}, X=${E}, Y=${V}`)}function g(w,E,V,D,L){console.info(`### RESIZED i=${w}, H=${E}, W=${V}, H(px)=${D}, W(px)=${L}`)}function h(w,E,V,D,L){console.info(`### CONTAINER RESIZED i=${w}, H=${E}, W=${V}, H(px)=${D}, W(px)=${L}`)}function y(w){console.info("Created layout: ",w)}function b(w){console.info("beforeMount layout: ",w)}function _(w){console.info("Mounted layout: ",w)}function k(w){console.info("Ready layout: ",w)}function x(w){console.info("Updated layout: ",w)}function C(w,E){console.info("breakpoint changed breakpoint=",w,", layout: ",E)}const N=w=>{l.value=w};let B,z,Y,R;const T=e.ref(!1),U=w=>{if(!i.value||w.target.closest(".vue-grid-item"))return;T.value=!0;const D=B.getBoundingClientRect(),L=B.scrollTop,ee=B.scrollLeft;Y=w.clientX-D.left+ee,R=w.clientY-D.top+L,z.style.left=Y+"px",z.style.top=R+"px",z.style.width="0px",z.style.height="0px",z.style.opacity="1"},S=w=>{if(!i.value||!T.value)return;const E=B.getBoundingClientRect(),V=B.scrollTop,D=B.scrollLeft,L=w.clientX-E.left+D,ee=w.clientY-E.top+V,O=Math.min(Y,L),W=Math.min(R,ee),se=Math.abs(Y-L),G=Math.abs(R-ee);z.style.left=O+"px",z.style.top=W+"px",z.style.width=se+"px",z.style.height=G+"px"},j=()=>{if(!i.value)return;T.value=!1,z.style.opacity="0";const w=z.getBoundingClientRect(),E=document.querySelectorAll("#custom-module-wrapper .vue-grid-item:not(.vue-grid-placeholder)");(w.width>3||w.height>3)&&(a.value=[],l.value=null),E.forEach(V=>{const D=V.getBoundingClientRect();if(D.left>=w.left&&D.right<=w.right&&D.top>=w.top&&D.bottom<=w.bottom){const ee=V.getAttribute("data-grid-id");a.value.push(parseInt(ee))}}),z.style.left="0px",z.style.top="0px",z.style.width="0px",z.style.height="0px"};function P(){var V,D;const w=(V=document.activeElement)==null?void 0:V.tagName.toLowerCase(),E=(D=document.activeElement)==null?void 0:D.getAttribute("contenteditable");return["input","textarea","select"].includes(w)||E==="true"}async function M(w){i.value&&w.key==="Backspace"&&!P()&&(a.value.length>0||l.value)&&(w.preventDefault(),await n.confirm(`Are you sure you want to delete ${a.value.length>1?"these "+a.value.length+" items":"this item"}?`)&&(a.value.length>0?a.value.forEach(V=>{K(V)}):K(l.value.i)),a.value=[],l.value=null)}const K=w=>{o.layout.splice(o.layout.findIndex(E=>E.i===w),1)},A=w=>Object.keys(w).includes("visibility")?![!0,"true",1].includes(Ho(w.visibility.trim(),d==null?void 0:d.value)):!1;return e.onMounted(()=>{z=document.getElementById("selection-box"),B=document.getElementById("custom-module-wrapper"),window.addEventListener("mouseup",j),window.addEventListener("mousemove",S),window.addEventListener("keydown",M)}),e.onUnmounted(()=>{window.removeEventListener("mouseup",j),window.removeEventListener("mousemove",S),window.removeEventListener("keydown",M)}),(w,E)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:s,id:"custom-module-wrapper",class:e.normalizeClass(["relative block w-full overflow-auto bg-muted/80 border border-ring/50 dark:border-ring rounded-xl",{"select-none":e.unref(r)||T.value}]),onMousedown:U},[e.createElementVNode("div",rC,[e.createElementVNode("div",{class:e.normalizeClass(["absolute inset-0 h-full w-full bg-grid transition-all duration-500",`${e.unref(r)?"dark:opacity-10 opacity-20":"opacity-0"}`])},null,2),e.createVNode(e.unref(CV),{class:e.normalizeClass(["min-w-[900px]",`${e.unref(r)||T.value?"select-none":""}`]),style:e.normalizeStyle(`min-height: ${e.unref(u)-5}px;`),ref:p,margin:[parseInt(e.unref(o).marginX),parseInt(e.unref(o).marginY)],layout:e.unref(o).layout,"onUpdate:layout":E[0]||(E[0]=V=>e.unref(o).layout=V),"col-num":parseInt(e.unref(o).colNum),cols:e.unref(o).cols,"row-height":e.unref(o).rowHeight,"is-draggable":e.unref(i),"is-resizable":e.unref(i),"is-mirrored":e.unref(o).mirrored,"is-bounded":e.unref(o).bounded,"prevent-collision":e.unref(o).preventCollision,"vertical-compact":e.unref(o).compact,"restore-on-drag":e.unref(o).restoreOnDrag,"use-css-transforms":!0,responsive:e.unref(o).responsive,"transform-scale":e.unref(o).transformScale,onLayoutCreated:y,onLayoutBeforeMount:b,onLayoutMounted:_,onLayoutReady:k,onLayoutUpdated:x,onBreakpointChanged:C},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o).layout,V=>(e.openBlock(),e.createBlock(e.unref(Is),{key:V.i,ref_for:!0,ref:D=>c(V,D),class:"group","data-grid-id":V.i,static:V.static,x:V.x,y:V.y,w:V.w,h:V.h,i:V.i,"min-w":V.minW,"max-w":V.maxW,"min-h":V.minH,"max-h":V.maxH,"min-x":V.minX,"max-x":V.maxX,"min-y":V.minY,"max-y":V.maxY,"preserve-aspect-ratio":V.preserveAspectRatio,onResize:f,onMove:m,onResized:g,onContainerResized:h,onMoved:v},{default:e.withCtx(()=>{var D;return[e.createElementVNode("div",{class:e.normalizeClass(["w-full h-full p-2 outline-primary/70",e.unref(yt)(e.unref(i)&&(e.unref(r)||T.value)?"outline outline-dashed":"",e.unref(i)?"group-hover:outline-2":"",e.unref(i)&&(e.unref(a).includes(V.i)||((D=e.unref(l))==null?void 0:D.i)===V.i)?"outline-2":"",e.unref(i)&&A(V)?"opacity-50":A(V)?"hidden pointer-events-none":"")]),onClick:L=>e.unref(i)?N(V):null},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(oC)[`CustomModule${V.component}`]),e.mergeProps({key:V.i},{ref_for:!0},V),null,16))],10,lC)]}),_:2},1032,["data-grid-id","static","x","y","w","h","i","min-w","max-w","min-h","max-h","min-x","max-x","min-y","max-y","preserve-aspect-ratio"]))),128))]),_:1},8,["class","style","margin","layout","col-num","cols","row-height","is-draggable","is-resizable","is-mirrored","is-bounded","prevent-collision","vertical-compact","restore-on-drag","responsive","transform-scale"]),E[1]||(E[1]=e.createElementVNode("div",{id:"selection-box",class:"absolute border border-dashed border-primary bg-primary/10 opacity-0 pointer-events-none transition-opacity duration-300"},null,-1))])],34))}}),iC={class:"flex-1 flex flex-col overflow-hidden",style:{"max-height":"calc(100vh - 132px)"}},sC={key:0,class:"flex justify-end my-2"},uC={key:1,class:"flex gap-2"},dC={class:"@container/custom-dashboard flex-1 flex gap-2 w-full max-h-full overflow-hidden"},cC=e.defineComponent({__name:"View",props:{config:{type:Object,required:!0}},setup(t){const n=J.useModuleRoute(),{isAdmin:o}=J.useModulePermissions(),{setModuleBreadcrumbs:r}=J.useBreadcrumbs();r([]);const l=e.ref("new-element"),a=e.ref(!1),i=e.ref(null),d=e.ref([]),s=e.ref(!1),u=[{x:0,y:0,w:2,h:2,i:"0",resizable:!0,draggable:!0,static:!1,minY:0,maxY:2}],c=e.reactive({layout:JSON.parse(JSON.stringify(u)),mirrored:!1,responsive:!1,bounded:!1,transformScale:1,preventCollision:!0,compact:!1,restoreOnDrag:!1,rowHeight:8,colNum:12,cols:{lg:12,md:12,sm:12,xs:12,xxs:12},index:0,marginX:0,marginY:0,layoutRef:{},itemRefs:{},variables:[],transformers:[],apiActions:[],elementValues:{}}),p=e.ref(),m=e.computed(()=>{var w,E;const P=((w=c.variables)==null?void 0:w.map(V=>({name:V.name,type:V.type,value:V.value??null})))||[],M=((E=c.apiActions)==null?void 0:E.map(V=>({name:V.label,type:"apiActionResponse",value:V.action??null})))||[],K=Object.entries(c.elementValues??{}).map(([V,D])=>({name:V,type:"element",value:{value:D??null}}))||[],A=Object.entries(n.query).map(([V,D])=>({name:f(V),type:"routeQueryParam",value:D??null}))||[];return[...P,...M,...K,...A].filter(V=>V.name)});function f(P){return P.replace(/-([a-z])/g,(M,K)=>K.toUpperCase())}const v=e.computed(()=>{const P=Object.fromEntries(m.value.map(M=>[M.name,M.value]));return(c.transformers??[]).map(M=>({name:M.name,type:"transformer",value:h(M.expression,P)}))}),g=e.computed(()=>[...m.value,...v.value]),h=(P,M)=>y(P,M),y=(P,M={})=>{var K;try{const A=document.createElement("iframe");A.style.display="none",document.body.appendChild(A);const w=(K=A.contentWindow)==null?void 0:K.Function;return document.body.removeChild(A),w==null?void 0:w(...Object.keys(M),"'use strict';"+P)(...Object.values(M))}catch(A){return console.error("Sandbox error:",A),""}};function b(P){c.layout.splice(c.layout.findIndex(M=>M.i===P),1)}e.onMounted(()=>{document.addEventListener("mousedown",_,!0),document.addEventListener("mouseup",k,!0)}),e.onUnmounted(()=>{document.removeEventListener("mousedown",_,!0),document.removeEventListener("mouseup",k,!0)});async function _(P){var M;a.value&&(M=P.target)!=null&&M.closest(".vue-grid-item")&&(s.value=!0)}function k(){s.value=!1}const x={x:null,y:null},C={x:null,y:null,w:1,h:1,i:null};document.addEventListener("dragover",P=>{x.x=P.clientX,x.y=P.clientY},!1),e.provide("mouseXY",x),e.provide("DragPos",C),e.provide("state",c),e.provide("isDragging",s),e.provide("activeElement",i),e.provide("selectedItems",d),e.provide("isEditMode",a),e.provide("allAvailableVariables",g);const{getModuleData:N,setModuleData:B}=J.useModuleStorage();function z(){a.value=!0,p.value=JSON.parse(JSON.stringify(c))}function Y(){var P;a.value=!1,(P=Object.keys(p.value))==null||P.forEach(M=>{c[M]=p.value[M]})}function R(){var M;let P=JSON.parse(JSON.stringify(c));(M=P.apiActions)==null||M.forEach(K=>{K.action.response=null,K.firedAt=null,K.hasFired=!1}),P.elementValues={},B("state",P),a.value=!1}async function T(){var M;const P=await N("state");P&&((M=Object.keys(P))==null||M.forEach(K=>{c[K]=P[K]}))}function U(){var P;(P=c.layout)==null||P.forEach(M=>{Object.keys(M).includes("defaultValue")&&(c.elementValues[M.variableName]=M.defaultValue)})}const S=async()=>{await T(),U(),console.log("accc",c.apiActions),j()},j=()=>{async function P(M){console.log("loadAction",M);const{fireAction:K}=J.useIntegrationActions(M.action.integration);let A=await K(M.action,g.value);c.apiActions.find(w=>w.id===M.id).action.response=A}c.apiActions.forEach(M=>{console.log("action",M),M.fireOnStart&&P(M)})};return e.onMounted(()=>{S()}),(P,M)=>{const K=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",iC,[e.unref(o)?(e.openBlock(),e.createElementBlock("div",sC,[a.value?(e.openBlock(),e.createElementBlock("div",uC,[e.createVNode(K,{variant:"outline",onClick:Y},{default:e.withCtx(()=>M[2]||(M[2]=[e.createTextVNode("Cancel",-1)])),_:1,__:[2]}),e.createVNode(K,{onClick:R},{default:e.withCtx(()=>M[3]||(M[3]=[e.createTextVNode("Save",-1)])),_:1,__:[3]})])):(e.openBlock(),e.createBlock(K,{key:0,onClick:z},{default:e.withCtx(()=>M[1]||(M[1]=[e.createTextVNode(" Edit layout ",-1)])),_:1,__:[1]}))])):e.createCommentVNode("",!0),e.createElementVNode("div",dC,[a.value?(e.openBlock(),e.createBlock(cx,{key:0,modelValue:l.value,"onUpdate:modelValue":M[0]||(M[0]=A=>l.value=A)},null,8,["modelValue"])):e.createCommentVNode("",!0),a.value?(e.openBlock(),e.createBlock(Hx,{key:1,view:l.value},null,8,["view"])):e.createCommentVNode("",!0),e.createVNode(aC),i.value&&a.value?(e.openBlock(),e.createBlock(h_,{key:2,onRemoveItem:b})):e.createCommentVNode("",!0)])])}}}),pC=[{path:"",component:cC}],fC=[],mC={component:sx,metadata:ux,config:dx,routes:pC,permissions:fC},gC=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=J.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),vC={name:"Promo Codes",description:"Create and manage promo codes",icon:"mdi-table",version:"1.0.0"},hC={project:{label:"Project",type:"resource",accept:["FIREBASE"]},promoCodeCollection:{label:"Promo Code Collection",type:"input",default:"promo-codes"}},xC=e.defineComponent({__name:"SingleCode",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("Label"),a=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(l,{class:"text-muted-foreground mb-2",for:"code"},{default:e.withCtx(()=>r[1]||(r[1]=[e.createTextVNode("Enter the coupon code",-1)])),_:1,__:[1]}),e.createVNode(a,{modelValue:e.unref(n).code,"onUpdate:modelValue":r[0]||(r[0]=i=>e.unref(n).code=i),id:"code"},null,8,["modelValue"])],64)}}}),_C={class:"flex items-center space-x-2"},yC={class:"flex items-center space-x-2"},VC={key:0,class:"flex items-end w-full gap-4"},CC={class:"relative w-full"},bC={key:1},wC=e.defineComponent({__name:"MultiCodes",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("RadioGroupItem"),a=e.resolveComponent("Label"),i=e.resolveComponent("RadioGroup"),d=e.resolveComponent("NumberFieldDecrement"),s=e.resolveComponent("NumberFieldInput"),u=e.resolveComponent("NumberFieldIncrement"),c=e.resolveComponent("NumberFieldContent"),p=e.resolveComponent("NumberField"),m=e.resolveComponent("Input"),f=e.resolveComponent("Textarea");return e.openBlock(),e.createElementBlock(e.Fragment,null,[r[8]||(r[8]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-2"},"How do you want to create the codes?",-1)),e.createVNode(i,{modelValue:e.unref(n).generationMode,"onUpdate:modelValue":r[0]||(r[0]=v=>e.unref(n).generationMode=v),orientation:"vertical",class:"mb-6"},{default:e.withCtx(()=>[e.createElementVNode("div",_C,[e.createVNode(l,{id:"generation_mode_generate",value:"generate"}),e.createVNode(a,{for:"generation_mode_generate"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode("Generate random codes",-1)])),_:1,__:[3]})]),e.createElementVNode("div",yC,[e.createVNode(l,{id:"generation_mode_input",value:"input"}),e.createVNode(a,{for:"generation_mode_input"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode("Provide specific codes",-1)])),_:1,__:[4]})])]),_:1},8,["modelValue"]),e.unref(n).generationMode=="generate"?(e.openBlock(),e.createElementBlock("div",VC,[e.createVNode(p,{id:"age","default-value":1,min:1,class:"w-full"},{default:e.withCtx(()=>[e.createVNode(a,{for:"age",class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>r[5]||(r[5]=[e.createTextVNode("Number of codes to generate",-1)])),_:1,__:[5]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d),e.createVNode(s),e.createVNode(u)]),_:1})]),_:1}),e.createElementVNode("div",CC,[e.createVNode(m,{modelValue:e.unref(n).prefix,"onUpdate:modelValue":r[1]||(r[1]=v=>e.unref(n).prefix=v),placeholder:"Prefix",class:"pr-42"},null,8,["modelValue"]),r[6]||(r[6]=e.createElementVNode("span",{class:"absolute right-2 top-1/2 transform -translate-y-1/2 text-muted-foreground/80 pointer-events-none"},"- GENERATED CODE",-1))])])):(e.openBlock(),e.createElementBlock("div",bC,[e.createVNode(a,{class:"text-muted-foreground mb-2",for:"codes"},{default:e.withCtx(()=>r[7]||(r[7]=[e.createTextVNode("Enter the codes you want to create (one per line)",-1)])),_:1,__:[7]}),e.createVNode(f,{modelValue:e.unref(n).codes,"onUpdate:modelValue":r[2]||(r[2]=v=>e.unref(n).codes=v),id:"codes",class:"max-h-48"},null,8,["modelValue"])]))],64)}}}),NC={class:"grid gap-6 py-4"},kC={class:"flex items-center"},SC={class:"flex items-center gap-2"},EC={class:"flex items-center gap-2"},TC={class:"flex items-center gap-2"},DC={class:"flex items-center gap-2"},BC={class:"flex items-center space-x-2 mb-2"},$C={key:0,class:"text-xs text-blue-600 bg-blue-500/10 p-2 rounded border border-blue-500 mt-1 flex items-start gap-1"},IC={class:"flex items-center space-x-2 mb-2"},MC=e.defineComponent({__name:"TypeDetailDialog",setup(t,{expose:n}){const{isAdmin:o}=J.useModulePermissions(),{getModuleData:r,setModuleData:l}=J.useModuleStorage(),a=e.inject("promoTypes",e.ref([])),i=e.ref({id:"",label:"",key:"",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""}),d=e.ref(!1),s=e.ref("add"),u=e.ref(!1),c=g=>{d.value=!0,u.value=!1,g?(s.value="edit",i.value=JSON.parse(JSON.stringify(g))):(s.value="add",i.value={id:crypto.randomUUID(),label:"",key:"",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""})},p=g=>{d.value=!0,u.value=!1,s.value="add",v(g)},m=async()=>{u.value=!0;let g=await r("promo-types")||[];g.push(JSON.parse(JSON.stringify(i.value))),l("promo-types",g),a.value=JSON.parse(JSON.stringify(g)),d.value=!1},f=async()=>{u.value=!0;let g=await r("promo-types")||[];g=g.map(h=>h.id===i.value.id?i.value:h),l("promo-types",g),a.value=JSON.parse(JSON.stringify(g)),d.value=!1},v=g=>{switch(g){case"fixed":i.value={id:crypto.randomUUID(),label:"Fixed Amount",key:"fixed",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Amount",valuePrefix:"$",valueSuffix:""};break;case"percentage":i.value={id:crypto.randomUUID(),label:"Percentage",key:"percentage",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Percentage",valuePrefix:"",valueSuffix:"%"};break;case"free_shipping":i.value={id:crypto.randomUUID(),label:"Free Shipping",key:"free_shipping",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""};break}};return n({open:c,openFromTemplate:p}),(g,h)=>{const y=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogHeader"),_=e.resolveComponent("Button"),k=e.resolveComponent("DropdownMenuTrigger"),x=e.resolveComponent("DropdownMenuItem"),C=e.resolveComponent("DropdownMenuContent"),N=e.resolveComponent("DropdownMenu"),B=e.resolveComponent("Label"),z=e.resolveComponent("Input"),Y=e.resolveComponent("Switch"),R=e.resolveComponent("DialogFooter"),T=e.resolveComponent("DialogScrollContent"),U=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(U,{open:d.value,"onUpdate:open":h[11]||(h[11]=S=>d.value=S)},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createBlock(T,{key:0,class:"sm:max-w-[475px]"},{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.value==="add"?"Add Promo Type":"Edit Promo Type"),1)]),_:1})]),_:1}),e.createElementVNode("div",NC,[e.createElementVNode("div",kC,[s.value==="add"?(e.openBlock(),e.createBlock(N,{key:0},{default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(_,{variant:"outline"},{default:e.withCtx(()=>[e.createElementVNode("div",SC,[e.createVNode(e.unref(F.Import),{class:"size-4"}),h[12]||(h[12]=e.createTextVNode(" Load pre-defined type ",-1))])]),_:1})]),_:1}),e.createVNode(C,null,{default:e.withCtx(()=>[e.createVNode(x,{onClick:h[0]||(h[0]=S=>v("fixed"))},{default:e.withCtx(()=>[e.createElementVNode("div",EC,[e.createVNode(e.unref(F.DollarSign),{class:"size-4"}),h[13]||(h[13]=e.createTextVNode(" Fixed Amount ",-1))])]),_:1}),e.createVNode(x,{onClick:h[1]||(h[1]=S=>v("percentage"))},{default:e.withCtx(()=>[e.createElementVNode("div",TC,[e.createVNode(e.unref(F.Percent),{class:"size-4"}),h[14]||(h[14]=e.createTextVNode(" Percentage ",-1))])]),_:1}),e.createVNode(x,{onClick:h[2]||(h[2]=S=>v("free_shipping"))},{default:e.withCtx(()=>[e.createElementVNode("div",DC,[e.createVNode(e.unref(F.Truck),{class:"size-4"}),h[15]||(h[15]=e.createTextVNode(" Free Shipping ",-1))])]),_:1})]),_:1})]),_:1})):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(B,{for:"label",class:"mb-2"},{default:e.withCtx(()=>h[16]||(h[16]=[e.createTextVNode("Display Name",-1)])),_:1,__:[16]}),e.createVNode(z,{modelValue:i.value.label,"onUpdate:modelValue":h[3]||(h[3]=S=>i.value.label=S),id:"label"},null,8,["modelValue"]),h[17]||(h[17]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'Shown in the Studio UI. e.g. "VIP Shipping"',-1))]),e.createElementVNode("div",null,[e.createVNode(B,{for:"key",class:"mb-2"},{default:e.withCtx(()=>h[18]||(h[18]=[e.createTextVNode("Internal Key",-1)])),_:1,__:[18]}),e.createVNode(z,{modelValue:i.value.key,"onUpdate:modelValue":h[4]||(h[4]=S=>i.value.key=S),id:"key"},null,8,["modelValue"]),h[19]||(h[19]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},[e.createTextVNode("Used in logic. Must be unique, lowercase, no spaces. e.g. "),e.createElementVNode("span",{class:"font-mono bg-muted-foreground/20 px-1 py-0.5 rounded"},"vip_shipping")],-1))]),e.createElementVNode("div",null,[e.createVNode(B,{for:"allowUnlimitedUses",class:"mb-4"},{default:e.withCtx(()=>h[20]||(h[20]=[e.createTextVNode("Allow Unlimited Uses",-1)])),_:1,__:[20]}),e.createElementVNode("div",BC,[e.createVNode(Y,{id:"allowUnlimitedUses",modelValue:i.value.allowUnlimitedUses,"onUpdate:modelValue":h[5]||(h[5]=S=>i.value.allowUnlimitedUses=S)},null,8,["modelValue"]),e.createVNode(B,{for:"allowUnlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value.allowUnlimitedUses?"Yes":"No"),1)]),_:1})]),h[22]||(h[22]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'Show the "Unlimited uses" toggle when creating a promo code.',-1)),i.value.allowUnlimitedUses?(e.openBlock(),e.createElementBlock("p",$C,[e.createVNode(e.unref(F.Info),{class:"size-4"}),h[21]||(h[21]=e.createTextVNode(" This option is always hidden when generating multiple codes. ",-1))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(B,{for:"hasValueField",class:"mb-4"},{default:e.withCtx(()=>h[23]||(h[23]=[e.createTextVNode("Has Value Field",-1)])),_:1,__:[23]}),e.createElementVNode("div",IC,[e.createVNode(Y,{id:"hasValueField",modelValue:i.value.hasValueField,"onUpdate:modelValue":h[6]||(h[6]=S=>i.value.hasValueField=S)},null,8,["modelValue"]),e.createVNode(B,{for:"hasValueField"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value.hasValueField?"Yes":"No"),1)]),_:1})]),h[24]||(h[24]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"Show a numeric value input when using this type.",-1))]),e.createElementVNode("div",null,[e.createVNode(B,{for:"valueLabel",class:"mb-2"},{default:e.withCtx(()=>h[25]||(h[25]=[e.createTextVNode("Value Field Label",-1)])),_:1,__:[25]}),e.createVNode(z,{modelValue:i.value.valueLabel,"onUpdate:modelValue":h[7]||(h[7]=S=>i.value.valueLabel=S),id:"valueLabel"},null,8,["modelValue"]),h[26]||(h[26]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'e.g. "Gift amount", "Shipping cost"',-1))]),e.createElementVNode("div",null,[e.createVNode(B,{for:"valuePrefix",class:"mb-2"},{default:e.withCtx(()=>h[27]||(h[27]=[e.createTextVNode("Value Field Prefix",-1)])),_:1,__:[27]}),e.createVNode(z,{modelValue:i.value.valuePrefix,"onUpdate:modelValue":h[8]||(h[8]=S=>i.value.valuePrefix=S),id:"valuePrefix"},null,8,["modelValue"]),h[28]||(h[28]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"e.g. € or $",-1))]),e.createElementVNode("div",null,[e.createVNode(B,{for:"valueSuffix",class:"mb-2"},{default:e.withCtx(()=>h[29]||(h[29]=[e.createTextVNode("Value Field Suffix",-1)])),_:1,__:[29]}),e.createVNode(z,{modelValue:i.value.valueSuffix,"onUpdate:modelValue":h[9]||(h[9]=S=>i.value.valueSuffix=S),id:"valueSuffix"},null,8,["modelValue"]),h[30]||(h[30]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"e.g. %, credits",-1))])]),e.createVNode(R,null,{default:e.withCtx(()=>[e.createVNode(_,{variant:"outline",onClick:h[10]||(h[10]=S=>d.value=!1)},{default:e.withCtx(()=>h[31]||(h[31]=[e.createTextVNode("Cancel",-1)])),_:1,__:[31]}),s.value==="add"?(e.openBlock(),e.createBlock(_,{key:0,disabled:u.value,onClick:m},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),h[32]||(h[32]=e.createTextVNode(" Add Type ",-1))]),_:1,__:[32]},8,["disabled"])):(e.openBlock(),e.createBlock(_,{key:1,disabled:u.value,onClick:f},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),h[33]||(h[33]=e.createTextVNode(" Save Changes ",-1))]),_:1,__:[33]},8,["disabled"]))]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["open"])}}}),PC={class:"grid gap-4 py-4"},RC={key:0,class:"flex flex-col gap-2 items-center text-muted-foreground border rounded p-4"},AC={class:"flex gap-2 items-center"},FC={key:1},OC={class:"flex justify-end w-full mb-2"},zC={class:"flex items-center gap-2"},LC={class:"flex items-center gap-2"},jC={class:"flex items-center gap-2"},UC={class:"flex items-center gap-2"},HC={class:"flex items-center gap-2"},GC={class:"font-mono bg-muted-foreground/20 px-1 py-0.5 rounded"},qC=e.defineComponent({__name:"TypeManageDialog",setup(t){const{isAdmin:n}=J.useModulePermissions(),{getModuleData:o,setModuleData:r}=J.useModuleStorage(),{confirm:l}=J.useConfirmation(),a=e.inject("promoTypes",e.ref([])),i=e.useTemplateRef("typeDetailDialog"),d=async u=>{if(!await l(`Are you sure you want to delete the type "${u.label}"?`))return;let p=await o("promo-types")||[];p=p.filter(m=>m.id!==u.id),r("promo-types",p),a.value=JSON.parse(JSON.stringify(p))},s=async()=>{const u=[{id:crypto.randomUUID(),label:"Fixed Amount",key:"fixed",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Amount",valuePrefix:"$",valueSuffix:""},{id:crypto.randomUUID(),label:"Percentage",key:"percentage",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Percentage",valuePrefix:"",valueSuffix:"%"},{id:crypto.randomUUID(),label:"Free Shipping",key:"free_shipping",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""}];r("promo-types",u),a.value=JSON.parse(JSON.stringify(u))};return(u,c)=>{const p=e.resolveComponent("Button"),m=e.resolveComponent("DialogTrigger"),f=e.resolveComponent("DialogTitle"),v=e.resolveComponent("DialogDescription"),g=e.resolveComponent("DialogHeader"),h=e.resolveComponent("DropdownMenuTrigger"),y=e.resolveComponent("DropdownMenuItem"),b=e.resolveComponent("DropdownMenuSeparator"),_=e.resolveComponent("DropdownMenuContent"),k=e.resolveComponent("DropdownMenu"),x=e.resolveComponent("TableHead"),C=e.resolveComponent("TableRow"),N=e.resolveComponent("TableHeader"),B=e.resolveComponent("TableCell"),z=e.resolveComponent("TableBody"),Y=e.resolveComponent("Table"),R=e.resolveComponent("DialogFooter"),T=e.resolveComponent("DialogScrollContent"),U=e.resolveComponent("Dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(m,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(e.unref(F.UserCog),{class:"size-4"}),c[6]||(c[6]=e.createTextVNode(" Edit Promo Types ",-1))]),_:1,__:[6]})]),_:1}),e.unref(n)()?(e.openBlock(),e.createBlock(T,{key:0,class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>c[7]||(c[7]=[e.createTextVNode("Edit Promo Types",-1)])),_:1,__:[7]}),e.createVNode(v,null,{default:e.withCtx(()=>c[8]||(c[8]=[e.createTextVNode(" Define reusable custom promo types to use in discount codes. You can configure how they behave and what fields are shown. ",-1)])),_:1,__:[8]})]),_:1}),e.createElementVNode("div",PC,[e.unref(a).length===0?(e.openBlock(),e.createElementBlock("div",RC,[c[12]||(c[12]=e.createElementVNode("p",null,"You haven't created any custom types yet.",-1)),e.createElementVNode("p",AC,[e.createVNode(p,{variant:"link",onClick:c[0]||(c[0]=S=>{var j;return(j=i.value)==null?void 0:j.open()})},{default:e.withCtx(()=>c[9]||(c[9]=[e.createTextVNode("Create a custom type",-1)])),_:1,__:[9]}),c[11]||(c[11]=e.createTextVNode(" or ",-1)),e.createVNode(p,{variant:"link",onClick:c[1]||(c[1]=S=>s())},{default:e.withCtx(()=>c[10]||(c[10]=[e.createTextVNode("Import Default Types",-1)])),_:1,__:[10]})])])):(e.openBlock(),e.createElementBlock("div",FC,[e.createElementVNode("div",OC,[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[e.createVNode(p,{variant:"outline"},{default:e.withCtx(()=>[e.createElementVNode("div",zC,[e.createVNode(e.unref(F.Plus),{class:"size-4"}),c[13]||(c[13]=e.createTextVNode(" Create new Promo Type ",-1))])]),_:1})]),_:1}),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(y,{onClick:c[2]||(c[2]=S=>{var j;return(j=i.value)==null?void 0:j.open()})},{default:e.withCtx(()=>[e.createElementVNode("div",LC,[e.createVNode(e.unref(F.Plus),{class:"size-4"}),c[14]||(c[14]=e.createTextVNode(" New Type ",-1))])]),_:1}),e.createVNode(b),e.createVNode(y,{onClick:c[3]||(c[3]=S=>{var j;return(j=i.value)==null?void 0:j.openFromTemplate("fixed")})},{default:e.withCtx(()=>[e.createElementVNode("div",jC,[e.createVNode(e.unref(F.DollarSign),{class:"size-4"}),c[15]||(c[15]=e.createTextVNode(" Fixed Amount ",-1))])]),_:1}),e.createVNode(y,{onClick:c[4]||(c[4]=S=>{var j;return(j=i.value)==null?void 0:j.openFromTemplate("percentage")})},{default:e.withCtx(()=>[e.createElementVNode("div",UC,[e.createVNode(e.unref(F.Percent),{class:"size-4"}),c[16]||(c[16]=e.createTextVNode(" Percentage ",-1))])]),_:1}),e.createVNode(y,{onClick:c[5]||(c[5]=S=>{var j;return(j=i.value)==null?void 0:j.openFromTemplate("free_shipping")})},{default:e.withCtx(()=>[e.createElementVNode("div",HC,[e.createVNode(e.unref(F.Truck),{class:"size-4"}),c[17]||(c[17]=e.createTextVNode(" Free Shipping ",-1))])]),_:1})]),_:1})]),_:1})]),e.createVNode(Y,null,{default:e.withCtx(()=>[e.createVNode(N,null,{default:e.withCtx(()=>[e.createVNode(C,null,{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>c[18]||(c[18]=[e.createTextVNode("Name (label)",-1)])),_:1,__:[18]}),e.createVNode(x,null,{default:e.withCtx(()=>c[19]||(c[19]=[e.createTextVNode("Key",-1)])),_:1,__:[19]}),e.createVNode(x,null,{default:e.withCtx(()=>c[20]||(c[20]=[e.createTextVNode("Value Field",-1)])),_:1,__:[20]}),e.createVNode(x,null,{default:e.withCtx(()=>c[21]||(c[21]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[21]}),e.createVNode(x,{class:"text-right"},{default:e.withCtx(()=>c[22]||(c[22]=[e.createTextVNode("Actions",-1)])),_:1,__:[22]})]),_:1})]),_:1}),e.createVNode(z,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a),S=>(e.openBlock(),e.createBlock(C,{key:S.key},{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.label),1)]),_:2},1024),e.createVNode(B,null,{default:e.withCtx(()=>[e.createElementVNode("span",GC,e.toDisplayString(S.key),1)]),_:2},1024),e.createVNode(B,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.hasValueField?"Yes":"No"),1)]),_:2},1024),e.createVNode(B,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.allowUnlimitedUses?"Yes":"No"),1)]),_:2},1024),e.createVNode(B,{class:"text-right"},{default:e.withCtx(()=>[e.createVNode(p,{variant:"ghost",size:"icon",onClick:j=>{var P;return(P=i.value)==null?void 0:P.open(S)}},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Pencil),{class:"size-4"})]),_:2},1032,["onClick"]),e.createVNode(p,{variant:"ghost",size:"icon",onClick:j=>d(S)},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Trash2),{class:"size-4 text-red-500"})]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]))]),e.createVNode(R,null,{default:e.withCtx(()=>[e.createVNode(p,{variant:"outline",disabled:""},{default:e.withCtx(()=>c[23]||(c[23]=[e.createTextVNode(" Auto-saved ",-1)])),_:1,__:[23]})]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(MC,{ref_key:"typeDetailDialog",ref:i},null,512)],64)}}}),WC={class:"flex justify-between items-center"},ZC={class:"grid gap-2"},YC={class:"flex flex-wrap gap-12"},XC={key:0,class:"grid gap-2"},JC={class:"flex items-center gap-2"},KC={key:1,class:"grid gap-2"},QC={class:"flex items-center space-x-2"},eb=e.defineComponent({__name:"index",setup(t){const n=e.inject("newCoupon"),o=e.inject("promoTypes",e.ref([])),r=e.computed(()=>o.value.find(a=>{var i;return a.key===((i=n.value)==null?void 0:i.type)})||null),{isAdmin:l}=J.useModulePermissions();return(a,i)=>{const d=e.resolveComponent("Label"),s=e.resolveComponent("SelectValue"),u=e.resolveComponent("SelectTrigger"),c=e.resolveComponent("SelectItem"),p=e.resolveComponent("SelectGroup"),m=e.resolveComponent("SelectContent"),f=e.resolveComponent("Select"),v=e.resolveComponent("Input"),g=e.resolveComponent("Switch"),h=e.resolveComponent("Card");return e.openBlock(),e.createBlock(h,{class:"p-4"},{default:e.withCtx(()=>{var y,b,_,k;return[e.createElementVNode("div",WC,[i[3]||(i[3]=e.createElementVNode("h2",{class:"font-medium"},"Value",-1)),e.unref(l)()?(e.openBlock(),e.createBlock(qC,{key:0})):e.createCommentVNode("",!0)]),e.createElementVNode("div",ZC,[e.createVNode(d,{class:"text-muted-foreground"},{default:e.withCtx(()=>i[4]||(i[4]=[e.createTextVNode("Promo Type",-1)])),_:1,__:[4]}),e.createVNode(f,{modelValue:e.unref(n).type,"onUpdate:modelValue":i[0]||(i[0]=x=>e.unref(n).type=x)},{default:e.withCtx(()=>[e.createVNode(u,{class:"w-[200px]"},{default:e.withCtx(()=>[e.createVNode(s,{placeholder:"Select a promo type"})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),x=>(e.openBlock(),e.createBlock(c,{key:x.key,value:x.key},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",YC,[(y=r.value)!=null&&y.hasValueField?(e.openBlock(),e.createElementBlock("div",XC,[e.createVNode(d,{for:"discountValue",class:"text-muted-foreground"},{default:e.withCtx(()=>{var x;return[e.createTextVNode(e.toDisplayString(((x=r.value)==null?void 0:x.valueLabel)||"Value"),1)]}),_:1}),e.createElementVNode("div",JC,[(b=r.value)!=null&&b.valuePrefix?(e.openBlock(),e.createBlock(d,{key:0,for:"discountValue",class:"text-lg"},{default:e.withCtx(()=>{var x;return[e.createTextVNode(e.toDisplayString((x=r.value)==null?void 0:x.valuePrefix),1)]}),_:1})):e.createCommentVNode("",!0),e.createVNode(v,{modelValue:e.unref(n).value,"onUpdate:modelValue":i[1]||(i[1]=x=>e.unref(n).value=x),id:"discountValue"},null,8,["modelValue"]),(_=r.value)!=null&&_.valueSuffix?(e.openBlock(),e.createBlock(d,{key:1,for:"discountValue",class:"text-lg"},{default:e.withCtx(()=>{var x;return[e.createTextVNode(e.toDisplayString((x=r.value)==null?void 0:x.valueSuffix),1)]}),_:1})):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(k=r.value)!=null&&k.allowUnlimitedUses&&e.unref(n).creationMode!=="multi"?(e.openBlock(),e.createElementBlock("div",KC,[e.createVNode(d,{for:"unlimitedUses",class:"text-muted-foreground"},{default:e.withCtx(()=>i[5]||(i[5]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[5]}),e.createElementVNode("div",QC,[e.createVNode(g,{id:"unlimitedUses",modelValue:e.unref(n).unlimitedUses,"onUpdate:modelValue":i[2]||(i[2]=x=>e.unref(n).unlimitedUses=x)},null,8,["modelValue"]),e.createVNode(d,{for:"unlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n).unlimitedUses?"Yes":"No"),1)]),_:1})])])):e.createCommentVNode("",!0)])]}),_:1})}}}),tb={class:"flex gap-4"},nb={class:"flex flex-col"},ob={key:0,class:"-ml-2"},rb={key:1,class:"text-xs text-muted-foreground mt-2"},lb={class:"flex flex-col"},ab={key:0,class:"-ml-2"},ib={key:1,class:"text-xs text-muted-foreground mt-2"},sb=e.defineComponent({__name:"DateRange",setup(t){const n=e.inject("newCoupon"),o=new dl("en-US",{dateStyle:"long"});return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Button"),d=e.resolveComponent("PopoverTrigger"),s=e.resolveComponent("Calendar"),u=e.resolveComponent("PopoverContent"),c=e.resolveComponent("Popover"),p=e.resolveComponent("Card");return e.openBlock(),e.createBlock(p,{class:"p-4"},{default:e.withCtx(()=>[l[8]||(l[8]=e.createElementVNode("div",null,[e.createElementVNode("h2",{class:"font-medium mb-2"},"Availability"),e.createElementVNode("p",{class:"text-muted-foreground"},"When will this code be available?")],-1)),e.createElementVNode("div",tb,[e.createElementVNode("div",nb,[e.createVNode(a,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>l[4]||(l[4]=[e.createTextVNode("Available from",-1)])),_:1,__:[4]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",class:e.normalizeClass(e.unref(yt)("w-[280px] justify-start text-left font-normal",!e.unref(n).startsAt&&"text-muted-foreground"))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(n).startsAt?e.unref(o).format(e.unref(n).startsAt.toDate(e.unref(ht)())):"Pick a date"),1)]),_:1},8,["class"])]),_:1}),e.createVNode(u,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:e.unref(n).startsAt,"onUpdate:modelValue":l[0]||(l[0]=m=>e.unref(n).startsAt=m),"initial-focus":"",minValue:e.unref(Qa)()},null,8,["modelValue","minValue"])]),_:1})]),_:1}),e.unref(n).startsAt?(e.openBlock(),e.createElementBlock("div",ob,[e.createVNode(i,{onClick:l[1]||(l[1]=m=>e.unref(n).startsAt=void 0),variant:"link"},{default:e.withCtx(()=>l[5]||(l[5]=[e.createTextVNode("Clear",-1)])),_:1,__:[5]})])):(e.openBlock(),e.createElementBlock("p",rb,"Not set - codes will be available immediately"))]),e.createElementVNode("div",lb,[e.createVNode(a,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>l[6]||(l[6]=[e.createTextVNode("Until",-1)])),_:1,__:[6]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",class:e.normalizeClass(e.unref(yt)("w-[280px] justify-start text-left font-normal",!e.unref(n).expiresAt&&"text-muted-foreground"))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(n).expiresAt?e.unref(o).format(e.unref(n).expiresAt.toDate(e.unref(ht)())):"Pick a date"),1)]),_:1},8,["class"])]),_:1}),e.createVNode(u,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:e.unref(n).expiresAt,"onUpdate:modelValue":l[2]||(l[2]=m=>e.unref(n).expiresAt=m),"initial-focus":"",minValue:e.unref(n).startsAt},null,8,["modelValue","minValue"])]),_:1})]),_:1}),e.unref(n).expiresAt?(e.openBlock(),e.createElementBlock("div",ab,[e.createVNode(i,{onClick:l[3]||(l[3]=m=>e.unref(n).expiresAt=void 0),variant:"link"},{default:e.withCtx(()=>l[7]||(l[7]=[e.createTextVNode("Clear",-1)])),_:1,__:[7]})])):(e.openBlock(),e.createElementBlock("p",ib,"Not set - codes will never expire"))])])]),_:1,__:[8]})}}}),ub=e.defineComponent({__name:"Note",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("Textarea"),a=e.resolveComponent("Card");return e.openBlock(),e.createBlock(a,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",null,[r[1]||(r[1]=e.createElementVNode("h2",{class:"font-medium mb-2"},"Note",-1)),r[2]||(r[2]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-2"},"Used internally. It's a good idea to write down why you're creating this promo code.",-1)),e.createVNode(l,{modelValue:e.unref(n).note,"onUpdate:modelValue":r[0]||(r[0]=i=>e.unref(n).note=i)},null,8,["modelValue"])])]),_:1})}}}),db={class:"relative"},cb={ref:"container",class:"flex flex-col gap-4 w-full max-w-5xl mx-auto"},pb={class:"flex justify-between items-center mb-4"},fb={class:"w-full max-w-2xl"},mb={class:"flex items-center space-x-2"},gb={class:"flex items-center space-x-2"},vb={class:"flex justify-end w-full"},hb=e.defineComponent({__name:"Create",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l}=J.useModulePermissions(),{navigateTo:a}=J.useModuleRoute(),{getTimezone:i}=J.useProjectSettings(),{log:d,logError:s}=J.useLogs(),{setModuleBreadcrumbs:u}=J.useBreadcrumbs(),{getModuleData:c,setModuleData:p}=J.useModuleStorage();u([]);const m=J.useFirebaseIntegration(r.config.project),f=e.ref(!1),v=e.ref({creationMode:"single",generationMode:"generate",quantity:1,prefix:"",codes:"",code:"",type:void 0,value:void 0,unlimitedUses:!1,startsAt:void 0,expiresAt:void 0,minOrderAmount:0,note:""}),g=e.ref([]);g.value=([n,o]=e.withAsyncContext(()=>c("promo-types")),n=await n,o(),n||[]),e.provide("newCoupon",v),e.provide("promoTypes",g);const h=()=>{var b,_,k,x;if(v.value.creationMode=="single"){if(v.value.code=(b=v.value.code)==null?void 0:b.trim().toUpperCase(),!v.value.code)return Ae.error("Please enter a code"),!1}else if(v.value.generationMode=="generate"){if(v.value.prefix=(_=v.value.prefix)==null?void 0:_.trim().toUpperCase(),!v.value.prefix)return Ae.error("Please enter a prefix"),!1;if(!v.value.quantity||v.value.quantity<1)return Ae.error("Generate at least 1 code"),!1}else if(v.value.generationMode=="input"&&(v.value.codes=(k=v.value.codes)==null?void 0:k.trim().toUpperCase(),!v.value.codes||v.value.codes.length<1))return Ae.error("Please enter some codes"),!1;return v.value.type?(x=g.value.find(C=>C.key===v.value.type))!=null&&x.hasValueField&&!v.value.value?(Ae.error("Please enter a value"),!1):(v.value.creationMode==="multi"&&(v.value.unlimitedUses=!1),!0):(Ae.error("Please select a type"),!1)},y=async()=>{try{if(!h())return;if(f.value=!0,v.value.creationMode=="single"){let b={code:v.value.code,type:v.value.type,value:v.value.value,minOrderAmount:v.value.minOrderAmount,usageLimit:v.value.unlimitedUses?0:1,usageCount:0,lastUsedAt:null,startsAt:v.value.startsAt?v.value.startsAt.toDate(i()):null,expiresAt:v.value.expiresAt?v.value.expiresAt.toDate(i()):null,disabled:!1,note:v.value.note,createdAt:new Date,updatedAt:new Date};const _=await m.add(r.config.promoCodeCollection,b);d("Promo code created",{id:_.id,code:_.code,note:_.note}),Ae.success("Promo code created")}}catch{s("Failed to create promo code"),Ae.error("Failed to create promo code")}finally{f.value=!1}};return(b,_)=>{const k=e.resolveComponent("Button"),x=e.resolveComponent("RadioGroupItem"),C=e.resolveComponent("Label"),N=e.resolveComponent("RadioGroup"),B=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",db,[e.createElementVNode("div",cb,[e.createElementVNode("div",pb,[_[3]||(_[3]=e.createElementVNode("h1",{class:"text-2xl font-bold"},"New Promo Code",-1)),e.createVNode(k,{onClick:_[0]||(_[0]=z=>e.unref(a)("promo-codes")),variant:"outline",disabled:f.value},{default:e.withCtx(()=>[e.createVNode(e.unref(F.List),{class:"size-4"}),_[2]||(_[2]=e.createTextVNode(" View Promo Codes ",-1))]),_:1,__:[2]},8,["disabled"])]),e.createVNode(B,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",fb,[_[6]||(_[6]=e.createElementVNode("h2",{class:"font-medium mb-4"},"Codes",-1)),e.createVNode(N,{modelValue:v.value.creationMode,"onUpdate:modelValue":_[1]||(_[1]=z=>v.value.creationMode=z),orientation:"horizontal",class:"mb-6"},{default:e.withCtx(()=>[e.createElementVNode("div",mb,[e.createVNode(x,{id:"creation_mode_single",value:"single"}),e.createVNode(C,{for:"creation_mode_single"},{default:e.withCtx(()=>_[4]||(_[4]=[e.createTextVNode("Create 1 code",-1)])),_:1,__:[4]})]),e.createElementVNode("div",gb,[e.createVNode(x,{id:"creation_mode_multi",value:"multi"}),e.createVNode(C,{for:"creation_mode_multi"},{default:e.withCtx(()=>_[5]||(_[5]=[e.createTextVNode("Create multiple codes",-1)])),_:1,__:[5]})])]),_:1},8,["modelValue"]),v.value.creationMode=="single"?(e.openBlock(),e.createBlock(xC,{key:0})):(e.openBlock(),e.createBlock(wC,{key:1}))])]),_:1}),e.createVNode(eb),e.createVNode(sb),e.createVNode(ub),e.createElementVNode("div",vb,[e.createVNode(k,{disabled:f.value,onClick:y},{default:e.withCtx(()=>[f.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),_[7]||(_[7]=e.createTextVNode(" Create Promo Code ",-1))]),_:1,__:[7]},8,["disabled"])])],512)])}}}),xb={class:"relative"},_b={ref:"container",class:"w-full max-w-5xl mx-auto"},yb={class:"flex justify-between items-center mb-4"},Vb={class:"relative w-full max-w-sm items-center"},Cb={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2 pointer-events-none"},bb={class:"absolute end-0 inset-y-0 flex items-center justify-center px-2 pointer-events-none"},wb=e.defineComponent({__name:"Find",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l}=J.useModulePermissions(),{navigateTo:a}=J.useModuleRoute(),{getModuleData:i}=J.useModuleStorage(),{setModuleBreadcrumbs:d}=J.useBreadcrumbs();d([{text:"Promo codes list",href:"",disabled:!0}]);const s=e.ref([]);s.value=([n,o]=e.withAsyncContext(()=>i("promo-types")),n=await n,o(),n||[]);const u=e.ref([]),c=J.useFirebaseIntegration(r.config.project);u.value=([n,o]=e.withAsyncContext(()=>c.find(r.config.promoCodeCollection)),n=await n,o(),n);const p=useRoute(),m=useRouter(),f=e.ref(p.query.q||""),v=e.ref(""),g=e.ref(!1),h=zp(async()=>{g.value=!0;let b=f.value.trim().toUpperCase();b.length===0?u.value=await c.find(r.config.promoCodeCollection):u.value=await c.find(r.config.promoCodeCollection,{filters:[{field:"code",operator:">=",value:b},{field:"code",operator:"<",value:b.slice(0,-1)+String.fromCharCode(b.slice(-1).charCodeAt(0)+1)}]}),v.value=f.value,g.value=!1},600);e.watch(f,async()=>{await h(),m.replace({query:{...p.query,q:f.value.trim()?f.value.trim():void 0}})});const y=b=>{const _=new Date;return b.expiresAt>_&&b.startsAt<_};return e.onMounted(async()=>{f.value.trim()&&await h()}),(b,_)=>{const k=e.resolveComponent("Button"),x=e.resolveComponent("Input"),C=e.resolveComponent("TableCaption"),N=e.resolveComponent("TableHead"),B=e.resolveComponent("TableRow"),z=e.resolveComponent("TableHeader"),Y=e.resolveComponent("TableCell"),R=e.resolveComponent("TableBody"),T=e.resolveComponent("Table"),U=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",xb,[e.createElementVNode("div",_b,[e.createElementVNode("div",yb,[_[3]||(_[3]=e.createElementVNode("h1",{class:"text-2xl font-bold"},"Find Promo Codes",-1)),e.createVNode(k,{onClick:_[0]||(_[0]=S=>e.unref(a)("")),variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),_[2]||(_[2]=e.createTextVNode(" Create New Promo Code ",-1))]),_:1,__:[2]})]),e.createVNode(U,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",Vb,[e.createVNode(x,{id:"search",type:"text",placeholder:"Search...",modelValue:f.value,"onUpdate:modelValue":_[1]||(_[1]=S=>f.value=S),class:"px-8"},null,8,["modelValue"]),e.createElementVNode("span",Cb,[e.createVNode(e.unref(F.Search),{class:"size-4 text-muted-foreground"})]),e.createElementVNode("span",bb,[g.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4 text-muted-foreground animate-spin"})):e.createCommentVNode("",!0)])]),e.createVNode(T,null,{default:e.withCtx(()=>[v.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(C,{key:0},{default:e.withCtx(()=>_[4]||(_[4]=[e.createTextVNode("A list of your most recent promo codes.",-1)])),_:1,__:[4]})),v.value?(e.openBlock(),e.createBlock(C,{key:1},{default:e.withCtx(()=>[_[5]||(_[5]=e.createTextVNode("A list of your promo codes starting with ",-1)),e.createElementVNode("strong",null,'"'+e.toDisplayString(v.value)+'"',1),_[6]||(_[6]=e.createTextVNode(".",-1))]),_:1,__:[5,6]})):e.createCommentVNode("",!0),e.createVNode(z,null,{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>[e.createVNode(N,null,{default:e.withCtx(()=>_[7]||(_[7]=[e.createTextVNode("Code",-1)])),_:1,__:[7]}),e.createVNode(N,null,{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode("Type",-1)])),_:1,__:[8]}),e.createVNode(N,null,{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("Value",-1)])),_:1,__:[9]}),e.createVNode(N,null,{default:e.withCtx(()=>_[10]||(_[10]=[e.createTextVNode("Used",-1)])),_:1,__:[10]}),e.createVNode(N,null,{default:e.withCtx(()=>_[11]||(_[11]=[e.createTextVNode("Still eligible",-1)])),_:1,__:[11]}),e.createVNode(N,null,{default:e.withCtx(()=>_[12]||(_[12]=[e.createTextVNode("Action",-1)])),_:1,__:[12]})]),_:1})]),_:1}),e.createVNode(R,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,S=>(e.openBlock(),e.createBlock(B,{key:S.id},{default:e.withCtx(()=>[e.createVNode(Y,{class:"font-medium uppercase"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.code),1)]),_:2},1024),e.createVNode(Y,null,{default:e.withCtx(()=>{var j;return[e.createTextVNode(e.toDisplayString((j=s.value.find(P=>P.key===S.type))==null?void 0:j.label),1)]}),_:2},1024),e.createVNode(Y,null,{default:e.withCtx(()=>{var j,P;return[e.createTextVNode(e.toDisplayString((j=s.value.find(M=>M.key===S.type))==null?void 0:j.valuePrefix)+" "+e.toDisplayString(S.value)+" "+e.toDisplayString((P=s.value.find(M=>M.key===S.type))==null?void 0:P.valueSuffix),1)]}),_:2},1024),e.createVNode(Y,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(S.usageLimit===1?S.usageCount>0?"Yes":"No":S.usageCount===0?"No":S.usageCount===1?"1 time":S.usageCount+" times"),1)]),_:2},1024),e.createVNode(Y,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y(S)?"Yes":"No"),1)]),_:2},1024),e.createVNode(Y,null,{default:e.withCtx(()=>[e.createVNode(k,{variant:"ghost",size:"icon",onClick:j=>e.unref(a)("/promo-codes/"+S.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Pencil),{class:"size-4"})]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})],512)])}}}),Nb={class:"relative @container"},kb={key:0,class:"max-w-5xl mx-auto mt-4"},Sb={class:"flex flex-row gap-4 justify-between mb-6"},Eb={class:"flex items-center"},Tb={class:"text-lg font-semibold mx-2 uppercase"},Db={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Bb={key:1,class:"bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},$b={class:"font-medium mb-2 uppercase"},Ib={class:"mb-6"},Mb={key:0},Pb={key:1},Rb={key:2},Ab={class:"flex flex-wrap gap-12 mb-6"},Fb={key:0,class:"grid gap-2"},Ob={class:"flex items-center gap-2"},zb={key:0,class:"text-lg"},Lb={key:1,class:"text-lg"},jb={key:1,class:"grid gap-2"},Ub={class:"flex items-center space-x-2"},Hb={class:"flex gap-4 mb-6"},Gb={class:"flex flex-col"},qb={key:0,class:"-ml-2"},Wb={key:1,class:"text-xs text-muted-foreground mt-2"},Zb={class:"flex flex-col"},Yb={key:0,class:"-ml-2"},Xb={key:1,class:"text-xs text-muted-foreground mt-2"},Jb={class:"flex justify-end gap-2 mt-6"},Kb=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{log:l,logWarning:a,logError:i}=J.useLogs(),{params:d,navigateTo:s}=J.useModuleRoute(),{setModuleBreadcrumbs:u}=J.useBreadcrumbs(),{getModuleData:c}=J.useModuleStorage(),{confirm:p}=useConfirmation(),m=e.ref([]);m.value=([n,o]=e.withAsyncContext(()=>c("promo-types")),n=await n,o(),n||[]);const f=e.computed(()=>{var x;return((x=g.value)==null?void 0:x.usageCount)>0});u([{text:"Promo codes list",href:"/promo-codes",disabled:!0}]);const v=J.useFirebaseIntegration(r.config.project),g=e.ref(null),h=e.ref(!1),y=e.computed(()=>m.value.find(x=>{var C;return x.key===((C=g.value)==null?void 0:C.type)})||null),b=new dl("en-US",{dateStyle:"long"}),_=async()=>{var x,C,N,B,z;g.value=await v.get(r.config.promoCodeCollection,d.value.promoCodeId),g.value.startsAt=Il((C=(x=g.value)==null?void 0:x.startsAt)==null?void 0:C.replace(/\.\d{3}Z$/,"")),g.value.expiresAt=Il((B=(N=g.value)==null?void 0:N.expiresAt)==null?void 0:B.replace(/\.\d{3}Z$/,"")),u([{text:"Promo codes list",href:"/promo-codes",disabled:!1},{text:((z=g.value)==null?void 0:z.code)||"",href:"",disabled:!0}])},k=async()=>{var C;await p(`Are you sure you want to delete the code "${(C=g.value)==null?void 0:C.code}"?`)&&(await v.remove(r.config.promoCodeCollection,d.value.promoCodeId),s("/promo-codes"))};return _(),(x,C)=>{const N=e.resolveComponent("Button"),B=e.resolveComponent("Label"),z=e.resolveComponent("Input"),Y=e.resolveComponent("SelectValue"),R=e.resolveComponent("SelectTrigger"),T=e.resolveComponent("SelectItem"),U=e.resolveComponent("SelectGroup"),S=e.resolveComponent("SelectContent"),j=e.resolveComponent("Select"),P=e.resolveComponent("Switch"),M=e.resolveComponent("PopoverTrigger"),K=e.resolveComponent("Calendar"),A=e.resolveComponent("PopoverContent"),w=e.resolveComponent("Popover"),E=e.resolveComponent("Textarea"),V=e.resolveComponent("Loader2"),D=e.resolveComponent("CardContent"),L=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",Nb,[g.value?(e.openBlock(),e.createElementBlock("div",kb,[e.createElementVNode("div",Sb,[e.createElementVNode("div",Eb,[e.createVNode(N,{variant:"ghost",onClick:C[0]||(C[0]=ee=>e.unref(s)("/promo-codes"))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(F.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",Tb,e.toDisplayString(g.value.code),1),g.value.expiresAt>new Date?(e.openBlock(),e.createElementBlock("span",Db,"Active")):(e.openBlock(),e.createElementBlock("span",Bb,"Expired"))])]),e.createVNode(L,null,{default:e.withCtx(()=>[e.createVNode(D,null,{default:e.withCtx(()=>{var ee,O,W,se,G,ue;return[e.createElementVNode("h3",$b,e.toDisplayString(g.value.code),1),e.createElementVNode("p",Ib,[C[14]||(C[14]=e.createTextVNode(" This promo code has been created on ",-1)),e.createElementVNode("strong",null,e.toDisplayString(new Date(g.value.createdAt).toLocaleString()),1),C[15]||(C[15]=e.createTextVNode(".",-1)),C[16]||(C[16]=e.createElementVNode("br",null,null,-1)),g.value.usageCount===1?(e.openBlock(),e.createElementBlock("span",Mb,C[11]||(C[11]=[e.createTextVNode("It has been used ",-1),e.createElementVNode("strong",null,"1 time",-1),e.createTextVNode(", so you can't edit it.",-1)]))):g.value.usageCount>1?(e.openBlock(),e.createElementBlock("span",Pb,[C[12]||(C[12]=e.createTextVNode("It has been used ",-1)),e.createElementVNode("strong",null,e.toDisplayString(g.value.usageCount)+" times",1),C[13]||(C[13]=e.createTextVNode(", so you can't edit it.",-1))])):(e.openBlock(),e.createElementBlock("span",Rb,"It has not been used yet."))]),e.createVNode(B,{for:"code",class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>C[17]||(C[17]=[e.createTextVNode("Promo Code",-1)])),_:1,__:[17]}),e.createVNode(z,{id:"code",modelValue:g.value.code,"onUpdate:modelValue":C[1]||(C[1]=te=>g.value.code=te),disabled:f.value,class:"mb-6 uppercase"},null,8,["modelValue","disabled"]),e.createElementVNode("div",null,[C[27]||(C[27]=e.createElementVNode("h3",{class:"font-medium mb-2"},"Value",-1)),e.createVNode(j,{modelValue:g.value.type,"onUpdate:modelValue":C[2]||(C[2]=te=>g.value.type=te)},{default:e.withCtx(()=>[e.createVNode(R,{class:"w-[200px] mb-4",disabled:f.value},{default:e.withCtx(()=>[e.createVNode(Y,{placeholder:"Select a promo type"})]),_:1},8,["disabled"]),e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(U,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,te=>(e.openBlock(),e.createBlock(T,{key:te.key,value:te.key},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(te.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Ab,[(ee=y.value)!=null&&ee.hasValueField?(e.openBlock(),e.createElementBlock("div",Fb,[e.createVNode(B,{for:"discountValue",class:"text-muted-foreground"},{default:e.withCtx(()=>{var te;return[e.createTextVNode(e.toDisplayString(((te=y.value)==null?void 0:te.valueLabel)||"Value"),1)]}),_:1}),e.createElementVNode("div",Ob,[(O=y.value)!=null&&O.valuePrefix?(e.openBlock(),e.createElementBlock("span",zb,e.toDisplayString((W=y.value)==null?void 0:W.valuePrefix),1)):e.createCommentVNode("",!0),e.createVNode(z,{modelValue:g.value.value,"onUpdate:modelValue":C[3]||(C[3]=te=>g.value.value=te),id:"discountValue",disabled:f.value},null,8,["modelValue","disabled"]),(se=y.value)!=null&&se.valueSuffix?(e.openBlock(),e.createElementBlock("span",Lb,e.toDisplayString((G=y.value)==null?void 0:G.valueSuffix),1)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(ue=y.value)!=null&&ue.allowUnlimitedUses?(e.openBlock(),e.createElementBlock("div",jb,[e.createVNode(B,{for:"unlimitedUses",class:"text-muted-foreground"},{default:e.withCtx(()=>C[18]||(C[18]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[18]}),e.createElementVNode("div",Ub,[e.createVNode(P,{id:"unlimitedUses",modelValue:g.value.unlimitedUses,"onUpdate:modelValue":C[4]||(C[4]=te=>g.value.unlimitedUses=te),disabled:f.value},null,8,["modelValue","disabled"]),e.createVNode(B,{for:"unlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.value.unlimitedUses?"Yes":"No"),1)]),_:1})])])):e.createCommentVNode("",!0)]),C[28]||(C[28]=e.createElementVNode("h3",{class:"font-medium"},"Availability",-1)),C[29]||(C[29]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-4"},"When will this code be available?",-1)),e.createElementVNode("div",Hb,[e.createElementVNode("div",Gb,[e.createVNode(B,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>C[19]||(C[19]=[e.createTextVNode("Available from",-1)])),_:1,__:[19]}),e.createVNode(w,null,{default:e.withCtx(()=>[e.createVNode(M,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline",class:e.normalizeClass(e.unref(yt)("w-[280px] justify-start text-left font-normal",!g.value.startsAt&&"text-muted-foreground")),disabled:f.value},{default:e.withCtx(()=>[e.createVNode(e.unref(F.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(g.value.startsAt?e.unref(b).format(g.value.startsAt.toDate(e.unref(ht)())):"Pick a date"),1)]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(A,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(K,{modelValue:g.value.startsAt,"onUpdate:modelValue":C[5]||(C[5]=te=>g.value.startsAt=te),"initial-focus":"",minValue:e.unref(Qa)()},null,8,["modelValue","minValue"])]),_:1})]),_:1}),g.value.startsAt?(e.openBlock(),e.createElementBlock("div",qb,[f.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(N,{key:0,onClick:C[6]||(C[6]=te=>g.value.startsAt=void 0),variant:"link"},{default:e.withCtx(()=>C[20]||(C[20]=[e.createTextVNode("Clear",-1)])),_:1,__:[20]}))])):(e.openBlock(),e.createElementBlock("p",Wb,"Not set - codes will be available immediately"))]),e.createElementVNode("div",Zb,[e.createVNode(B,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>C[21]||(C[21]=[e.createTextVNode("Until",-1)])),_:1,__:[21]}),e.createVNode(w,null,{default:e.withCtx(()=>[e.createVNode(M,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(N,{variant:"outline",class:e.normalizeClass(e.unref(yt)("w-[280px] justify-start text-left font-normal",!g.value.expiresAt&&"text-muted-foreground")),disabled:f.value},{default:e.withCtx(()=>[e.createVNode(e.unref(F.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(g.value.expiresAt?e.unref(b).format(g.value.expiresAt.toDate(e.unref(ht)())):"Pick a date"),1)]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(A,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(K,{modelValue:g.value.expiresAt,"onUpdate:modelValue":C[7]||(C[7]=te=>g.value.expiresAt=te),"initial-focus":"",minValue:g.value.startsAt},null,8,["modelValue","minValue"])]),_:1})]),_:1}),g.value.expiresAt?(e.openBlock(),e.createElementBlock("div",Yb,[f.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(N,{key:0,onClick:C[8]||(C[8]=te=>g.value.expiresAt=void 0),variant:"link"},{default:e.withCtx(()=>C[22]||(C[22]=[e.createTextVNode("Clear",-1)])),_:1,__:[22]}))])):(e.openBlock(),e.createElementBlock("p",Xb,"Not set - codes will never expire"))])]),e.createVNode(B,{for:"note",class:"text-lg font-medium"},{default:e.withCtx(()=>C[23]||(C[23]=[e.createTextVNode("Note",-1)])),_:1,__:[23]}),e.createVNode(B,{for:"note",class:"font-normal text-sm text-muted-foreground mb-2"},{default:e.withCtx(()=>C[24]||(C[24]=[e.createTextVNode("Internal note, you can always edit this later",-1)])),_:1,__:[24]}),e.createVNode(E,{modelValue:g.value.note,"onUpdate:modelValue":C[9]||(C[9]=te=>g.value.note=te),id:"note"},null,8,["modelValue"]),e.createElementVNode("div",Jb,[e.createVNode(N,{variant:"destructive",onClick:C[10]||(C[10]=te=>k()),disabled:h.value},{default:e.withCtx(()=>C[25]||(C[25]=[e.createTextVNode(" Delete Code ",-1)])),_:1,__:[25]},8,["disabled"]),e.createVNode(N,{disabled:h.value},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(V,{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),C[26]||(C[26]=e.createTextVNode(" Update Code ",-1))]),_:1,__:[26]},8,["disabled"])])])]}),_:1})]),_:1}),e.createTextVNode(" "+e.toDisplayString(g.value),1)])):e.createCommentVNode("",!0)])}}}),Qb=[{path:"",component:hb},{path:"/promo-codes",component:wb},{path:"/promo-codes/:promoCodeId",component:Kb}],ew=[{key:"create-promo-codes",name:"Create promo codes",description:"Team member can create promo codes"},{key:"view-promo-codes",name:"View promo codes",description:"Team member can view promo codes"},{key:"delete-promo-codes",name:"Delete promo codes",description:"Team member can delete promo codes"}],tw={component:gC,metadata:vC,config:hC,routes:Qb,permissions:ew},nw=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=J.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),ow={name:"Product Collections",description:"Manage product collections",icon:"mdi-table",version:"1.0.0"},rw={project:{label:"Project",type:"resource",accept:["FIREBASE"]},collectionsCollection:{label:"Collections Collection",type:"input",default:"public/e-commerce:collections"},allowedMediaSources:{label:"Allowed Media Sources",type:"mediaSource",multiple:!0},defaultUploadMediaSource:{label:"Default Upload Media Source",type:"mediaSource",multiple:!1}},lw={class:"relative"},aw={ref:"container",class:"flex items-center justify-between gap-4 w-full mt-12 mb-8"},iw={class:"flex items-center gap-4"},sw={class:"text-lg whitespace-nowrap"},uw={class:"relative w-full max-w-sm items-center"},dw={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2"},cw={class:"flex items-center gap-4"},pw=e.defineComponent({__name:"Overview",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o}=J.useModulePermissions(),{navigateTo:r}=J.useModuleRoute(),{log:l,logWarning:a,logError:i}=J.useLogs(),{setModuleBreadcrumbs:d}=J.useBreadcrumbs();d([]);const s=J.useFirebaseIntegration(n.config.project),u=e.ref([]),c=async()=>{const p=await s.find(n.config.productCollection);console.log("collections",p),u.value=p||[]};return e.onMounted(()=>{c()}),(p,m)=>{var g;const f=e.resolveComponent("Input"),v=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",lw,[e.createElementVNode("div",aw,[e.createElementVNode("div",iw,[e.createElementVNode("p",sw,e.toDisplayString((g=u.value)==null?void 0:g.length)+" collections",1),e.createElementVNode("div",uw,[e.createVNode(f,{id:"search",type:"text",placeholder:"Search...",class:"pl-8"}),e.createElementVNode("span",dw,[e.createVNode(e.unref(F.Search),{class:"size-4 text-muted-foreground"})])])]),e.createElementVNode("div",cw,[e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(v,{key:0,variant:"outline",onClick:m[0]||(m[0]=h=>e.unref(r)("new"))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Plus),{class:"size-4"}),m[1]||(m[1]=e.createTextVNode(" New Collection ",-1))]),_:1,__:[1]})):e.createCommentVNode("",!0)])],512)])}}}),fw={class:"flex flex-col gap-4"},mw={class:"flex flex-col gap-2"},gw={key:0,class:"text-red-500 text-sm mt-1"},vw={class:"flex flex-col gap-4"},hw={class:"flex flex-col gap-2"},xw={key:0,class:"text-red-500 text-sm mt-1"},_w={class:"flex flex-col gap-4"},yw={class:"flex flex-col gap-2"},Vw={key:0,class:"text-red-500 text-sm mt-1"},Cw=e.defineComponent({__name:"Main",setup(t){const n=e.inject("sources"),o=e.inject("defaultSource"),{errors:r}=Tt(),{value:l}=Se("title"),{value:a}=Se("description"),{value:i}=Se("media");return(d,s)=>{const u=e.resolveComponent("Label"),c=e.resolveComponent("Input"),p=e.resolveComponent("Textarea"),m=e.resolveComponent("MediaPicker"),f=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(f,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[e.createElementVNode("div",fw,[e.createElementVNode("div",mw,[e.createVNode(u,{for:"title",class:"text-sm mb-2"},{default:e.withCtx(()=>s[3]||(s[3]=[e.createTextVNode("Title",-1)])),_:1,__:[3]}),e.createVNode(c,{type:"text",id:"title",placeholder:"T-shirt with red heart",modelValue:e.unref(l),"onUpdate:modelValue":s[0]||(s[0]=g=>e.isRef(l)?l.value=g:null)},null,8,["modelValue"]),e.unref(r).title?(e.openBlock(),e.createElementBlock("p",gw,e.toDisplayString(e.unref(r).title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",vw,[e.createElementVNode("div",hw,[e.createVNode(u,{for:"description",class:"text-sm mb-2"},{default:e.withCtx(()=>s[4]||(s[4]=[e.createTextVNode("Description",-1)])),_:1,__:[4]}),e.createVNode(p,{id:"description",placeholder:"T-shirt with red heart",modelValue:e.unref(a),"onUpdate:modelValue":s[1]||(s[1]=g=>e.isRef(a)?a.value=g:null)},null,8,["modelValue"]),e.unref(r).description?(e.openBlock(),e.createElementBlock("p",xw,e.toDisplayString(e.unref(r).description),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",_w,[e.createElementVNode("div",yw,[e.createVNode(u,{for:"media",class:"text-sm mb-2"},{default:e.withCtx(()=>s[5]||(s[5]=[e.createTextVNode("Media",-1)])),_:1,__:[5]}),e.createVNode(m,{id:"media",modelValue:e.unref(i),"onUpdate:modelValue":s[2]||(s[2]=g=>e.isRef(i)?i.value=g:null),sources:e.unref(n),defaultSource:e.unref(o)},null,8,["modelValue","sources","defaultSource"]),e.unref(r).media?(e.openBlock(),e.createElementBlock("p",Vw,e.toDisplayString(e.unref(r).media),1)):e.createCommentVNode("",!0)])])]),_:1})]),_:1})}}}),bw={class:"grid grid-cols-3 gap-4 py-4"},ww={class:"flex flex-col gap-0.5"},Nw={class:"flex items-center gap-2"},kw={class:"flex flex-col gap-0.5"},Sw={class:"flex items-center gap-2"},Ew={class:"flex flex-col gap-0.5"},Tw={class:"flex items-center gap-2"},Dw=e.defineComponent({__name:"UnitPriceDialog",setup(t){const n=e.reactive({totalMeasure:{amount:"",unit:""},baseMeasure:{amount:"",unit:""}}),o=[{label:"Weight",units:[{value:"milligram",label:"Milligram (mg)",shortLabel:"mg"},{value:"gram",label:"Gram (g)",shortLabel:"g"},{value:"kilogram",label:"Kilogram (kg)",default:!0,shortLabel:"kg"}]},{label:"Volume",units:[{value:"milliliter",label:"Milliliter (ml)",shortLabel:"ml"},{value:"centiliter",label:"Centiliter (cl)",shortLabel:"cl"},{value:"liter",label:"Liter (L)",default:!0,shortLabel:"L"},{value:"cubic-meter",label:"Cubic Meter (m³)",shortLabel:"m³"}]},{label:"Size",units:[{value:"millimeter",label:"Millimeter (mm)",shortLabel:"mm"},{value:"centimeter",label:"Centimeter (cm)",shortLabel:"cm"},{value:"meter",label:"Meter (m)",default:!0,shortLabel:"m"}]},{label:"Area",units:[{value:"square-meter",label:"Square Meter (m²)",shortLabel:"m²",default:!0}]},{label:"Per Item",units:[{value:"item",label:"Item (item)",shortLabel:"item",default:!0}]}],r=e.computed(()=>o.find(l=>l.units.some(a=>a.value===n.totalMeasure.unit)));return e.watch(r,l=>{var a;l&&(l.label==="Volume"&&n.totalMeasure.unit==="cubic-meter"?n.baseMeasure.unit="cubic-meter":n.baseMeasure.unit=((a=l.units.find(i=>i.default))==null?void 0:a.value)||"")}),(l,a)=>{const i=e.resolveComponent("Button"),d=e.resolveComponent("DialogTrigger"),s=e.resolveComponent("DialogTitle"),u=e.resolveComponent("DialogHeader"),c=e.resolveComponent("Label"),p=e.resolveComponent("Input"),m=e.resolveComponent("SelectTrigger"),f=e.resolveComponent("SelectLabel"),v=e.resolveComponent("SelectItem"),g=e.resolveComponent("SelectGroup"),h=e.resolveComponent("SelectSeparator"),y=e.resolveComponent("SelectContent"),b=e.resolveComponent("Select"),_=e.resolveComponent("DialogFooter"),k=e.resolveComponent("DialogContent"),x=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(x,null,{default:e.withCtx(()=>[e.createVNode(d,{"as-child":""},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},()=>[e.createVNode(i,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle)),a[4]||(a[4]=e.createTextVNode(" Add unit price ",-1))]),_:1,__:[4]})])]),_:3}),e.createVNode(k,{class:"sm:max-w-3xl"},{default:e.withCtx(()=>{var C;return[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>a[5]||(a[5]=[e.createTextVNode("Add unit price",-1)])),_:1,__:[5]})]),_:1}),e.createElementVNode("div",bw,[e.createElementVNode("div",ww,[e.createVNode(c,{for:"unit-price-dialog--total-measure-amount",class:"text-sm mb-2 text-muted-foreground"},{default:e.withCtx(()=>a[6]||(a[6]=[e.createTextVNode("Total measure",-1)])),_:1,__:[6]}),e.createElementVNode("div",Nw,[e.createVNode(p,{modelValue:n.totalMeasure.amount,"onUpdate:modelValue":a[0]||(a[0]=N=>n.totalMeasure.amount=N),placeholder:"0",id:"unit-price-dialog--total-measure-amount"},null,8,["modelValue"]),e.createVNode(b,{modelValue:n.totalMeasure.unit,"onUpdate:modelValue":a[1]||(a[1]=N=>n.totalMeasure.unit=N)},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>{var N,B;return[e.createTextVNode(e.toDisplayString(((B=(N=r.value)==null?void 0:N.units.find(z=>z.value===n.totalMeasure.unit))==null?void 0:B.shortLabel)||"unit"),1)]}),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(o,(N,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:N.label},[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),_:2},1024),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.units,z=>(e.openBlock(),e.createBlock(v,{key:z.value,value:z.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(z.label),1)]),_:2},1032,["value"]))),128))]),_:2},1024),B<o.length-1?(e.openBlock(),e.createBlock(h,{key:0})):e.createCommentVNode("",!0)],64))),64))]),_:1})]),_:1},8,["modelValue"])])]),e.createElementVNode("div",kw,[e.createVNode(c,{for:"unit-price-dialog--base-measure-amount",class:"text-sm mb-2 text-muted-foreground"},{default:e.withCtx(()=>a[7]||(a[7]=[e.createTextVNode("Base measure",-1)])),_:1,__:[7]}),e.createElementVNode("div",Sw,[e.createVNode(p,{modelValue:n.baseMeasure.amount,"onUpdate:modelValue":a[2]||(a[2]=N=>n.baseMeasure.amount=N),placeholder:"0",id:"unit-price-dialog--base-measure-amount"},null,8,["modelValue"]),e.createVNode(b,{modelValue:n.baseMeasure.unit,"onUpdate:modelValue":a[3]||(a[3]=N=>n.baseMeasure.unit=N),disabled:!((C=r.value)!=null&&C.units)||r.value.units.length<2},{default:e.withCtx(()=>[e.createVNode(m,null,{default:e.withCtx(()=>{var N,B;return[e.createTextVNode(e.toDisplayString(((B=(N=r.value)==null?void 0:N.units.find(z=>z.value===n.baseMeasure.unit))==null?void 0:B.shortLabel)||"unit"),1)]}),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(g,{key:0},{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value.label),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.units,N=>(e.openBlock(),e.createBlock(v,{key:N.value,value:N.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),_:2},1032,["value"]))),128))]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue","disabled"])])]),e.createElementVNode("div",Ew,[a[8]||(a[8]=e.createElementVNode("div",{class:"text-sm mb-2 text-muted-foreground"},"Unit price",-1)),e.createElementVNode("div",Tw,[e.createVNode(p,{disabled:""})])])]),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline"},{default:e.withCtx(()=>a[9]||(a[9]=[e.createTextVNode("Cancel",-1)])),_:1,__:[9]}),e.createVNode(i,{type:"submit"},{default:e.withCtx(()=>a[10]||(a[10]=[e.createTextVNode("Done",-1)])),_:1,__:[10]})]),_:1})]}),_:1})]),_:3})}}}),Bw={class:"grid grid-cols-2 gap-4 mb-4"},$w={class:"relative"},Iw={key:0,class:"text-red-500 text-sm mt-1"},Mw={class:"relative"},Pw={class:"absolute right-2 top-1/2 -translate-y-1/2"},Rw={key:0,class:"text-red-500 text-sm mt-1"},Aw={class:"flex items-center gap-2 mb-4"},Fw={class:"flex items-center border-t mt-4 pt-4"},Ow={class:"relative"},zw={key:0,class:"text-red-500 text-sm mt-1"},Lw=e.defineComponent({__name:"Price",setup(t){const{errors:n}=Tt(),{value:o}=Se("price"),{value:r}=Se("compareAtPrice"),{value:l}=Se("isTaxable"),{value:a}=Se("costPerItem"),i=computed(()=>Number(o.value)>0);return(d,s)=>{const u=e.resolveComponent("Label"),c=e.resolveComponent("Input"),p=e.resolveComponent("TooltipTrigger"),m=e.resolveComponent("TooltipContent"),f=e.resolveComponent("Tooltip"),v=e.resolveComponent("Checkbox"),g=e.resolveComponent("Button"),h=e.resolveComponent("CardContent"),y=e.resolveComponent("Card");return e.openBlock(),e.createBlock(y,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[s[13]||(s[13]=e.createElementVNode("p",{class:"text-md font-semibold mb-4"},"Pricing",-1)),e.createElementVNode("div",Bw,[e.createElementVNode("div",null,[e.createVNode(u,{for:"price",class:"text-sm mb-2"},{default:e.withCtx(()=>s[4]||(s[4]=[e.createTextVNode("Price",-1)])),_:1,__:[4]}),e.createElementVNode("div",$w,[e.createVNode(c,{type:"number",id:"price",class:"pl-10 no-spinner",modelValue:e.unref(o),"onUpdate:modelValue":s[0]||(s[0]=b=>e.isRef(o)?o.value=b:null)},null,8,["modelValue"]),s[5]||(s[5]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).price?(e.openBlock(),e.createElementBlock("p",Iw,e.toDisplayString(e.unref(n).price),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(u,{for:"compare-at-price",class:"text-sm mb-2"},{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("Compare-at price",-1)])),_:1,__:[6]}),e.createElementVNode("div",Mw,[e.createVNode(c,{type:"number",id:"compare-at-price",class:"pl-10 no-spinner",modelValue:e.unref(r),"onUpdate:modelValue":s[1]||(s[1]=b=>e.isRef(r)?r.value=b:null)},null,8,["modelValue"]),s[8]||(s[8]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1)),e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(p,{"as-child":""},{default:e.withCtx(()=>[e.createElementVNode("button",Pw,[e.createVNode(e.unref(F.Info),{class:"size-4 text-muted-foreground"})])]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createElementVNode("p",null,[e.createTextVNode(" To display a markdown, enter a value higher than your price."),e.createElementVNode("br"),e.createTextVNode(" Often shown with a strikethrough (e.g. "),e.createElementVNode("span",{class:"font-semibold line-through"},"€25,00"),e.createTextVNode("). ")],-1)])),_:1,__:[7]})]),_:1})]),e.unref(n).compareAtPrice?(e.openBlock(),e.createElementBlock("p",Rw,e.toDisplayString(e.unref(n).compareAtPrice),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Aw,[e.createVNode(v,{id:"charge-tax",modelValue:e.unref(l),"onUpdate:modelValue":s[2]||(s[2]=b=>e.isRef(l)?l.value=b:null)},null,8,["modelValue"]),e.createVNode(u,{for:"charge-tax",class:"text-sm"},{default:e.withCtx(()=>s[9]||(s[9]=[e.createTextVNode("Charge tax on this product",-1)])),_:1,__:[9]})]),e.createVNode(Dw,null,{default:e.withCtx(()=>[e.createVNode(g,{variant:"ghost",size:"sm",disabled:!e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle)),s[10]||(s[10]=e.createTextVNode(" Add unit price ",-1))]),_:1,__:[10]},8,["disabled"])]),_:1}),e.createElementVNode("div",Fw,[e.createElementVNode("div",null,[e.createVNode(u,{for:"cost-per-item",class:"text-sm mb-2"},{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("Cost per item",-1)])),_:1,__:[11]}),e.createElementVNode("div",Ow,[e.createVNode(c,{type:"number",id:"cost-per-item",class:"pl-10 no-spinner",modelValue:e.unref(a),"onUpdate:modelValue":s[3]||(s[3]=b=>e.isRef(a)?a.value=b:null)},null,8,["modelValue"]),s[12]||(s[12]=e.createElementVNode("span",{class:"absolute left-4 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"},"€",-1))]),e.unref(n).costPerItem?(e.openBlock(),e.createElementBlock("p",zw,e.toDisplayString(e.unref(n).costPerItem),1)):e.createCommentVNode("",!0)])])]),_:1,__:[13]})]),_:1})}}}),jw={class:"grid grid-cols-2 gap-4 mb-4"},Uw={class:"flex items-center gap-2 mb-4"},Hw={class:"flex items-center gap-2"},Gw=e.defineComponent({__name:"Inventory",setup(t){const{errors:n}=Tt(),{value:o}=Se("sku"),{value:r}=Se("barcode"),{value:l}=Se("trackInventory"),{value:a}=Se("allowBackorder");return(i,d)=>{const s=e.resolveComponent("Label"),u=e.resolveComponent("Input"),c=e.resolveComponent("Checkbox"),p=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[d[8]||(d[8]=e.createElementVNode("p",{class:"text-md font-semibold mb-4"},"Inventory",-1)),e.createElementVNode("div",jw,[e.createElementVNode("div",null,[e.createVNode(s,{for:"sku",class:"text-sm mb-2"},{default:e.withCtx(()=>d[4]||(d[4]=[e.createTextVNode("SKU (Stock Keeping Unit)",-1)])),_:1,__:[4]}),e.createVNode(u,{id:"sku",modelValue:e.unref(o),"onUpdate:modelValue":d[0]||(d[0]=f=>e.isRef(o)?o.value=f:null)},null,8,["modelValue"])]),e.createElementVNode("div",null,[e.createVNode(s,{for:"barcode",class:"text-sm mb-2"},{default:e.withCtx(()=>d[5]||(d[5]=[e.createTextVNode("Barcode (ISBN, UPC, GTIN, etc.)",-1)])),_:1,__:[5]}),e.createVNode(u,{id:"barcode",modelValue:e.unref(r),"onUpdate:modelValue":d[1]||(d[1]=f=>e.isRef(r)?r.value=f:null)},null,8,["modelValue"])])]),e.createElementVNode("div",Uw,[e.createVNode(c,{id:"track-quantity",modelValue:e.unref(l),"onUpdate:modelValue":d[2]||(d[2]=f=>e.isRef(l)?l.value=f:null)},null,8,["modelValue"]),e.createVNode(s,{for:"track-quantity",class:"text-sm"},{default:e.withCtx(()=>d[6]||(d[6]=[e.createTextVNode("Track quantity",-1)])),_:1,__:[6]})]),e.createElementVNode("div",Hw,[e.createVNode(c,{id:"continue-selling",modelValue:e.unref(a),"onUpdate:modelValue":d[3]||(d[3]=f=>e.isRef(a)?a.value=f:null)},null,8,["modelValue"]),e.createVNode(s,{for:"continue-selling",class:"text-sm"},{default:e.withCtx(()=>d[7]||(d[7]=[e.createTextVNode("Continue selling when out of stock",-1)])),_:1,__:[7]})])]),_:1,__:[8]})]),_:1})}}}),qw={};function Ww(t,n){return null}const Zw=Kt(qw,[["render",Ww]]),Yw={key:0,class:"flex gap-4 p-6 border-b last:border-b-0"},Xw={class:"option-drag-handle flex-none mt-9.5 cursor-grab"},Jw={class:"flex-1"},Kw={class:"mb-3"},Qw={class:"flex items-center"},e0={key:0,class:"mt-1 text-sm text-red-600"},t0={class:"flex items-center gap-1"},n0={class:"mb-2"},o0={key:0,class:"option-value-drag-handle absolute -left-7 top-1/2 -translate-y-1/2 flex-none mr-2 cursor-grab"},r0=["onClick"],l0={class:"flex justify-between"},a0={class:"flex-1"},i0={class:"text-sm mb-2"},s0={class:"flex flex-wrap gap-2"},u0={key:0,class:"px-2 py-1 border rounded-full bg-muted text-muted-foreground text-sm"},d0=e.defineComponent({__name:"Option",props:{option:{type:Object,required:!0}},emits:["update:option","remove"],setup(t,{expose:n,emit:o}){const r=t,{confirm:l}=J.useConfirmation(),a=o,i=e.computed({get(){return r.option},set(b){a("update:option",b)}}),d=e.computed({get(){return i.value.values},set(b){i.value.values=b}}),s=e.useTemplateRef("valueListRef"),u=e.ref(!1);e.watch(u,async b=>{console.log("minified",b),b||(await e.nextTick(),Jo({parent:s==null?void 0:s.value,values:d,group:"valueList",dragHandle:".option-value-drag-handle",plugins:[co.animations()]}))},{immediate:!0});const c=()=>Math.random().toString(36).substring(2,15),p=()=>{i.value.values.push({id:c(),value:""})},m=async()=>{(i.value.name.trim()||i.value.values.filter(b=>b.value.trim()!=="").length>0)&&!await l("Are you sure you want to remove this option?")||a("remove")},f=b=>{i.value.values.splice(b,1)},v=b=>{b.name.trim()?b.nameError=void 0:b.nameError="Option name is required."},g=(b,_)=>{const k=b.target,x=i.value.values;if(b.key==="Backspace"&&k.value===""&&(x==null?void 0:x.length)>2){f(_);return}},h=(b,_)=>{b.target;const k=i.value.values,x=k==null?void 0:k[_];x.touched=!0,(k==null?void 0:k.every(N=>N.value.trim()!==""))&&p()},y=b=>{const _=i.value,k=_==null?void 0:_.values.every((x,C)=>x.value.trim()!==""||C===b);_&&_.values[b].value.trim()===""&&!k&&f(b)};return n({minified:u}),(b,_)=>{const k=e.resolveComponent("Input"),x=e.resolveComponent("Button");return u.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"flex gap-4 p-6 border-b last:border-b-0 hover:bg-accent dark:hover:bg-accent/50 cursor-pointer transition-colors duration-200",onClick:_[5]||(_[5]=C=>u.value=!1)},[e.createElementVNode("div",null,[e.createElementVNode("div",{class:"option-drag-handle flex-none mt-5 cursor-grab",onClick:_[4]||(_[4]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",a0,[e.createElementVNode("p",i0,e.toDisplayString(i.value.name),1),e.createElementVNode("div",s0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,C=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:C.id},[C.value?(e.openBlock(),e.createElementBlock("span",u0,e.toDisplayString(C.value),1)):e.createCommentVNode("",!0)],64))),128))])])])):(e.openBlock(),e.createElementBlock("div",Yw,[e.createElementVNode("div",null,[e.createElementVNode("div",Xw,[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])]),e.createElementVNode("div",Jw,[e.createElementVNode("div",Kw,[_[6]||(_[6]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option name",-1)),e.createElementVNode("div",Qw,[e.createVNode(k,{modelValue:i.value.name,"onUpdate:modelValue":_[0]||(_[0]=C=>i.value.name=C),onBlur:_[1]||(_[1]=C=>v(i.value)),"aria-invalid":i.value.nameError?"true":"false",placeholder:"Color",spellcheck:"false"},null,8,["modelValue","aria-invalid"])]),i.value.nameError?(e.openBlock(),e.createElementBlock("p",e0,[e.createElementVNode("span",t0,[e.createVNode(e.unref(F.CircleX),{class:"size-4"}),e.createTextVNode(" "+e.toDisplayString(i.value.nameError),1)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",n0,[_[7]||(_[7]=e.createElementVNode("label",{class:"block text-sm mb-2"},"Option values",-1)),e.createElementVNode("div",{ref_key:"valueListRef",ref:s},[d.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(d.value,(C,N)=>(e.openBlock(),e.createElementBlock("div",{key:C.id,class:"relative flex items-center mb-2"},[C.touched?(e.openBlock(),e.createElementBlock("div",o0,[e.createVNode(e.unref(F.GripVertical),{class:"size-4 text-gray-400"})])):e.createCommentVNode("",!0),e.createVNode(k,{modelValue:C.value,"onUpdate:modelValue":B=>C.value=B,placeholder:"Option value",class:"pr-12",onKeydown:B=>g(B,N),onKeyup:B=>h(B,N),onBlur:B=>y(N),spellcheck:"false"},null,8,["modelValue","onUpdate:modelValue","onKeydown","onKeyup","onBlur"]),d.value.length>2&&C.touched?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:B=>f(N),class:"absolute right-2 top-1/2 -translate-y-1/2 ml-2 p-2 text-muted-foreground hover:text-muted",type:"button"},[e.createVNode(e.unref(F.Trash2),{class:"size-4"})],8,r0)):e.createCommentVNode("",!0)]))),128)):e.createCommentVNode("",!0)],512)]),e.createElementVNode("div",l0,[e.createVNode(x,{size:"sm",variant:"outline",onClick:_[2]||(_[2]=C=>m()),class:"text-red-500 hover:text-red-600"},{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode("Delete",-1)])),_:1,__:[8]}),e.createVNode(x,{size:"sm",onClick:_[3]||(_[3]=C=>u.value=!0),disabled:i.value.name.trim()===""},{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("Done",-1)])),_:1,__:[9]},8,["disabled"])])])]))}}}),c0=e.defineComponent({__name:"Options",props:{modelValue:{type:Array,default:()=>[]}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.ref([]),i=e.useTemplateRef("optionsListRefElement"),d=e.useTemplateRef("optionRefs"),s=e.computed({get(){return r.modelValue},set(g){l("update:modelValue",g)}}),u=e.ref(!1);e.watch(s,g=>{u.value||(!a.value||a.value.length===0&&g.length>0)&&(u.value=!0,a.value=g?JSON.parse(JSON.stringify(g)):[])},{deep:!0}),e.watch(a,g=>{s.value=g==null?void 0:g.map(h=>({...h,values:h.values.filter(y=>y.value.trim()!=="")}))},{deep:!0});const c=()=>Math.random().toString(36).substring(2,15),p=()=>{const h={id:c(),name:"",values:[{id:c(),value:""}],nameError:void 0};a.value.push(h)},m=()=>{var g;console.log("minifyAll"),(g=d.value)==null||g.forEach(h=>{h&&(h.minified=!0)})},f=g=>{const h=a.value.findIndex(y=>y.id===g.id);h!==-1&&(a.value[h]=g)},v=g=>{const h=a.value.findIndex(y=>y.id===g.id);h!==-1&&a.value.splice(h,1)};return e.onMounted(()=>{a.value=r.modelValue?JSON.parse(JSON.stringify(r.modelValue)):[],Jo({parent:i==null?void 0:i.value,values:a,group:"optionsList",dragHandle:".option-drag-handle",plugins:[co.animations()]})}),n({minifyAll:m}),(g,h)=>{const y=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg",a.value.length>0?"border mb-6":""])},[e.createElementVNode("div",{ref_key:"optionsListRefElement",ref:i},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,b=>(e.openBlock(),e.createBlock(d0,{ref_for:!0,ref_key:"optionRefs",ref:d,key:b.id,option:b,"onUpdate:option":h[0]||(h[0]=_=>f(_)),onRemove:_=>v(b)},null,8,["option","onRemove"]))),128))],512),a.value&&a.value.length<3?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(a.value.length>0?"border-t":"")},[a.value.length===0?(e.openBlock(),e.createBlock(y,{key:0,onClick:p,variant:"ghost"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle),{class:"size-4"}),h[1]||(h[1]=e.createTextVNode(" Add options like size or color ",-1))]),_:1,__:[1]})):(e.openBlock(),e.createBlock(y,{key:1,onClick:p,variant:"ghost",class:"w-full justify-start pl-2 rounded-t-none"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.PlusCircle),{class:"size-4"}),h[2]||(h[2]=e.createTextVNode(" Add another option ",-1))]),_:1,__:[2]}))],2)):e.createCommentVNode("",!0)],2)])}}}),p0={key:0},f0={class:"flex items-center justify-between gap-2 mb-2"},m0={key:0,class:"flex items-center gap-2"},g0={key:0,class:"mb-4"},v0={class:"flex flex-wrap gap-2"},h0=["onClick"],x0={class:"-mx-6 w-[calc(100%+3rem)]"},_0={class:"text-muted-foreground text-xs"},y0={class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},V0={class:"z-[101] sticky -top-4 py-2 font-normal whitespace-nowrap bg-accent dark:bg-border"},C0={class:"flex items-center gap-2"},b0={class:"z-[101] sticky -top-4 py-2 pr-6 font-normal bg-accent dark:bg-border"},w0={class:"text-sm"},N0=["onClick"],k0={class:"w-10 p-2"},S0={class:"p-2"},E0={class:"flex items-stretch gap-2"},T0=["src"],D0={key:2,class:"relative"},B0=["src"],$0=["src"],I0={class:"flex flex-col justify-center px-2"},M0={class:"text-md mb-0.5 hover:underline select-none"},P0={class:"flex items-center gap-1 text-xs text-muted-foreground hover:opacity-70 transition-opacity duration-200 cursor-pointer select-none"},R0={class:"p-2 w-[30%]"},A0={class:"relative"},F0={key:0},O0={key:1},z0={key:0,class:"absolute inset-0 top-1/2 -translate-y-1/2 px-2 truncate text-sm text-muted-foreground w-full text-center pointer-events-none"},L0={class:"p-2 w-[18%]"},j0={class:"w-10"},U0={class:"w-10 p-2 translate-x-10"},H0={class:"p-2 pl-12"},G0={class:"flex items-stretch gap-2"},q0=["src"],W0={class:"flex flex-col justify-center px-2"},Z0={class:"p-2 w-[30%]"},Y0={class:"p-2 w-[18%] group"},X0={class:"text-center text-sm text-muted-foreground bg-accent dark:bg-border p-3 -mx-6 -mb-6 rounded-b-lg"},J0={key:0},K0=e.defineComponent({__name:"VariantList",props:{options:{type:Object,required:!0},modelValue:{type:Array,required:!0},hide:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=e.computed({get(){return r.modelValue},set(A){l("update:modelValue",A)}}),i=e.inject("sources"),d=e.ref(""),s=e.ref(""),u=e.ref(!1),c=e.ref([]),p=e.ref({}),m=()=>{Object.keys(r.options).length>0&&(s.value=Object.keys(r.options)[0])};e.watch(()=>r.options,()=>{s.value===""&&m()},{immediate:!0,deep:!0}),e.watch(p,A=>{f()},{deep:!0}),e.watch(()=>r.hide,A=>{A||(m(),f())});function f(){var w;if(!p.value){a.value=[];return}let A=[];(w=Object.keys(p.value))==null||w.forEach(E=>{A.push({combinedOptions:E,name:h(E),disabled:!1,price:p.value[E].price,stock:p.value[E].stock,image:p.value[E].image,options:y(E)})}),a.value=A.filter(E=>{var V,D;return((V=E.options)==null?void 0:V.length)===Object.keys(r.options).length&&((D=E.options)==null?void 0:D.every(L=>Object.entries(r.options).find(([ee,O])=>O.id===L.optionId)))})}function v(A){return A.reduce((w,E)=>w.flatMap(V=>E.map(D=>[...V,D])),[[]])}function g(A){return A.slice().sort((w,E)=>w.optionId.localeCompare(E.optionId)).map(({optionId:w,valueId:E})=>`${w}:${E}`).join("|")}const h=A=>A.split("|").map(E=>{const[V,D]=E.split(":");return{optionId:V,valueId:D}}).map(E=>{var L,ee;const V=(L=r.options)==null?void 0:L[E.optionId],D=(ee=V==null?void 0:V.values)==null?void 0:ee.find(O=>O.id===E.valueId);return(D==null?void 0:D.value)||""}).join(" "),y=A=>A.split("|").map(E=>{const[V,D]=E.split(":");return{optionId:V,valueId:D}}).map(E=>{var L,ee;const V=(L=r.options)==null?void 0:L[E.optionId],D=(ee=V==null?void 0:V.values)==null?void 0:ee.find(O=>O.id===E.valueId);return{optionId:V==null?void 0:V.id,option:V==null?void 0:V.name,valueId:D==null?void 0:D.id,value:D==null?void 0:D.value}}),b=e.computed(()=>{const A=Object.values(r.options).map(E=>E.values.map(V=>({optionId:E.id,optionName:E.name,valueId:V.id,value:V.value})));return v(A).map(E=>{const V=g(E);return p.value[V]||(p.value[V]={price:0,stock:0}),{key:V,options:E,...p.value[V]}})}),_=e.computed(()=>{let A=[...b.value];return d.value&&(A=A.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.value.toLowerCase().includes(d.value.toLowerCase()))})),A}),k=(A,w)=>{const E=_.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===w});E&&E.forEach(V=>{p.value[g(V.options)].image=A})},x=A=>b.value.filter(E=>{var V,D;return((D=(V=E.options)==null?void 0:V.find(L=>L.optionId===s.value))==null?void 0:D.valueId)===A}).every(E=>!E.image),C=A=>{const w=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A});return w.filter((V,D)=>V.image&&w.findIndex(L=>L.image===V.image)===D).length===1},N=A=>{var E;return(E=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A}).filter(V=>V.image)[0])==null?void 0:E.image},B=A=>{var E;return(E=b.value.filter(V=>{var D,L;return((L=(D=V.options)==null?void 0:D.find(ee=>ee.optionId===s.value))==null?void 0:L.valueId)===A}).filter(V=>V.image)[1])==null?void 0:E.image},z=A=>{var V;const w=b.value.filter(D=>{var L;return(L=D.options)==null?void 0:L.find(ee=>ee.valueId===A)});if(w.length===0)return"0";const E=w.map(D=>D.price);return Math.min(...E)===Math.max(...E)?((V=E[0])==null?void 0:V.toString())||"0":`${Math.min(...E)} - ${Math.max(...E)}`},Y=A=>b.value.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.valueId===A)}).reduce((w,E)=>E.stock>0?w+E.stock:w,0),R=A=>b.value.filter(w=>{var E;return(E=w.options)==null?void 0:E.find(V=>V.valueId===A)}).reduce((w,E)=>E.stock<0?w+E.stock:w,0),T=()=>{var w,E,V;let A=0;return(V=(E=(w=r.options)==null?void 0:w[s.value])==null?void 0:E.values)==null||V.forEach(D=>{A+=Y(D.id)}),A},U=()=>{var w,E,V;let A=0;return(V=(E=(w=r.options)==null?void 0:w[s.value])==null?void 0:E.values)==null||V.forEach(D=>{A+=R(D.id)}),A},S=e.ref(null),j=e.ref(""),P=async(A,w)=>{A.preventDefault(),S.value=w,j.value="TODO"},M=A=>{S.value=null,j.value=""},K=A=>{p.value=A.reduce((w,E)=>(w[E.combinedOptions]={price:E.price,stock:E.stock,image:E.image},w),{})};return e.onMounted(()=>{m()}),n({setVariantMap:K,refreshVariants:f}),(A,w)=>{const E=e.resolveComponent("SelectValue"),V=e.resolveComponent("SelectTrigger"),D=e.resolveComponent("SelectItem"),L=e.resolveComponent("SelectContent"),ee=e.resolveComponent("Select"),O=e.resolveComponent("Button"),W=e.resolveComponent("Input"),se=e.resolveComponent("PopoverTrigger"),G=e.resolveComponent("RadioGroupItem"),ue=e.resolveComponent("Label"),te=e.resolveComponent("RadioGroup"),we=e.resolveComponent("PopoverContent"),je=e.resolveComponent("Popover"),ye=e.resolveComponent("Checkbox"),$e=e.resolveComponent("TooltipTrigger"),De=e.resolveComponent("TooltipContent"),Ve=e.resolveComponent("Tooltip"),Fe=e.resolveComponent("MediaPickerDialog"),Oe=e.resolveComponent("NumberFieldInput"),Ie=e.resolveComponent("NumberFieldContent"),Ue=e.resolveComponent("NumberField"),Vt=e.resolveComponent("NumberFieldDecrement"),Ct=e.resolveComponent("NumberFieldIncrement");return t.hide?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",p0,[e.createElementVNode("div",f0,[Object.keys(t.options).length>1?(e.openBlock(),e.createElementBlock("div",m0,[w[13]||(w[13]=e.createElementVNode("p",null,"Group by",-1)),e.createVNode(ee,{modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=H=>s.value=H)},{default:e.withCtx(()=>[e.createVNode(V,{size:"sm"},{default:e.withCtx(()=>[e.createVNode(E,{placeholder:"Option"})]),_:1}),e.createVNode(L,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,H=>(e.openBlock(),e.createBlock(D,{key:H.id,value:H.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(H.name),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createBlock(O,{key:2,variant:"outline",onClick:w[2]||(w[2]=H=>u.value=!1),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>w[14]||(w[14]=[e.createTextVNode(" Cancel ",-1)])),_:1,__:[14]})):(e.openBlock(),e.createBlock(O,{key:1,variant:"outline",onClick:w[1]||(w[1]=H=>u.value=!0),size:"sm",class:"ml-auto"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Search),{class:"size-4"}),e.createVNode(e.unref(F.ListFilter),{class:"size-4"})]),_:1}))]),u.value?(e.openBlock(),e.createElementBlock("div",g0,[e.createElementVNode("div",{class:e.normalizeClass(["relative",{"mb-4":Object.keys(t.options).length>0}])},[e.createVNode(W,{placeholder:"Search",class:"pl-10",modelValue:d.value,"onUpdate:modelValue":w[3]||(w[3]=H=>d.value=H)},null,8,["modelValue"]),e.createVNode(e.unref(F.Search),{class:"size-4 absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none"})],2),e.createElementVNode("div",v0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,H=>(e.openBlock(),e.createBlock(je,{key:H.id},{default:e.withCtx(()=>[e.createVNode(se,{asChild:""},{default:e.withCtx(()=>[e.createVNode(O,{variant:"outline",size:"sm",class:"border-dashed"},{default:e.withCtx(()=>{var Ce;return[H.groupBy?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(H.name)+" is "+e.toDisplayString((Ce=H.values.find(qe=>qe.id===H.groupBy))==null?void 0:Ce.value)+" ",1),e.createElementVNode("div",{class:"p-2",onClick:e.withModifiers(qe=>H.groupBy="",["stop"])},[e.createVNode(e.unref(F.X),{class:"size-3"})],8,h0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(H.name)+" ",1),e.createVNode(e.unref(F.ChevronDown),{class:"size-3"})],64))]}),_:2},1024)]),_:2},1024),e.createVNode(we,null,{default:e.withCtx(()=>[e.createVNode(te,{modelValue:H.groupBy,"onUpdate:modelValue":Ce=>H.groupBy=Ce,class:"mb-4"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(H.values,Ce=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center space-x-2",key:Ce.id},[e.createVNode(G,{id:Ce.id,value:Ce.id,class:"border-ring"},null,8,["id","value"]),e.createVNode(ue,{for:Ce.id},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Ce.value),1)]),_:2},1032,["for"])]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"]),e.createVNode(O,{variant:"ghost",onClick:Ce=>H.groupBy="",size:"sm",class:"ml-auto",disabled:!H.groupBy},{default:e.withCtx(()=>w[15]||(w[15]=[e.createTextVNode(" Clear ",-1)])),_:2,__:[15]},1032,["onClick","disabled"])]),_:2},1024)]),_:2},1024))),128))])])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("table",x0,[e.createElementVNode("thead",_0,[e.createElementVNode("tr",null,[e.createElementVNode("th",y0,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5"})]),e.createElementVNode("th",V0,[e.createElementVNode("div",C0,[w[16]||(w[16]=e.createElementVNode("span",null,"Variant",-1)),w[17]||(w[17]=e.createElementVNode("span",null,"·",-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("button",{key:0,class:"hover:underline cursor-pointer",onClick:w[4]||(w[4]=H=>c.value=[])},"Collapse all")):(e.openBlock(),e.createElementBlock("button",{key:1,class:"hover:underline cursor-pointer",onClick:w[5]||(w[5]=H=>c.value=t.options[s.value].values.map(Ce=>Ce.id))},"Expand all"))])]),w[20]||(w[20]=e.createElementVNode("th",{class:"z-[101] sticky -top-4 py-2 font-normal bg-accent dark:bg-border"},"Price",-1)),e.createElementVNode("th",b0,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"underline decoration-dashed underline-offset-4"},{default:e.withCtx(()=>w[18]||(w[18]=[e.createTextVNode("Available",-1)])),_:1,__:[18]}),e.createVNode(De,null,{default:e.withCtx(()=>w[19]||(w[19]=[e.createElementVNode("p",null,"Inventory at your store that can be sold.",-1)])),_:1,__:[19]})]),_:1})])])]),e.createElementVNode("tbody",w0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options[s.value].values,H=>{var Ce,qe;return e.openBlock(),e.createElementBlock(e.Fragment,{key:H.id},[e.createElementVNode("tr",{class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input",onClick:ae=>c.value.includes(H.id)?c.value.splice(c.value.indexOf(H.id),1):c.value.push(H.id)},[e.createElementVNode("td",k0,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5",onClick:w[6]||(w[6]=e.withModifiers(()=>{},["stop"]))})]),e.createElementVNode("td",S0,[e.createElementVNode("div",E0,[e.createElementVNode("div",null,[e.createVNode(Fe,{sources:e.unref(i),"max-files":1,"initial-value":x(H.id)?[]:C(H.id)?[N(H.id)]:[N(H.id),B(H.id)],onSubmit:ae=>k(ae,H.id)},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:w[7]||(w[7]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[x(H.id)?(e.openBlock(),e.createBlock(O,{key:0,variant:"outline",class:"size-15 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ImagePlus))]),_:1})):C(H.id)?(e.openBlock(),e.createElementBlock("img",{key:1,src:N(H.id),class:"size-15 rounded-md object-cover",draggable:"false"},null,8,T0)):(e.openBlock(),e.createElementBlock("div",D0,[e.createElementVNode("img",{src:B(H.id),class:"absolute rotate-[12deg] size-15 rounded-md object-cover",draggable:"false"},null,8,B0),e.createElementVNode("img",{src:N(H.id),class:"relative size-15 rounded-md shadow object-cover",draggable:"false"},null,8,$0)]))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",I0,[e.createElementVNode("p",M0,e.toDisplayString(H.value),1),e.createElementVNode("button",P0,[e.createTextVNode(e.toDisplayString((Ce=_.value)==null?void 0:Ce.filter(ae=>{var ie,Ee;return((Ee=(ie=ae.options)==null?void 0:ie.find(Te=>Te.optionId===s.value))==null?void 0:Ee.valueId)===H.id}).length)+" variants ",1),e.createVNode(e.unref(F.ChevronDown),{class:e.normalizeClass(["size-3 transition-transform duration-200",c.value.includes(H.id)?"rotate-180":""])},null,8,["class"])])])])]),e.createElementVNode("td",R0,[e.createElementVNode("div",A0,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"w-full",asChild:""},{default:e.withCtx(()=>[e.createVNode(W,{modelValue:j.value,"onUpdate:modelValue":w[8]||(w[8]=ae=>j.value=ae),class:e.normalizeClass(["dark:bg-transparent dark:border-ring/50",S.value===H.id?"":"text-transparent"]),onClick:w[9]||(w[9]=e.withModifiers(()=>{},["stop"])),onFocus:ae=>P(ae,H.id),onBlur:ae=>M(H.id)},null,8,["modelValue","class","onFocus","onBlur"])]),_:2},1024),e.createVNode(De,null,{default:e.withCtx(()=>{var ae,ie;return[((ae=_.value)==null?void 0:ae.filter(Ee=>{var Te,$;return(($=(Te=Ee.options)==null?void 0:Te.find(I=>I.optionId===s.value))==null?void 0:$.valueId)===H.id}).length)===1?(e.openBlock(),e.createElementBlock("p",F0,"Applies to 1 variant")):(e.openBlock(),e.createElementBlock("p",O0,"Applies to all "+e.toDisplayString((ie=_.value)==null?void 0:ie.filter(Ee=>{var Te,$;return(($=(Te=Ee.options)==null?void 0:Te.find(I=>I.optionId===s.value))==null?void 0:$.valueId)===H.id}).length)+" variants",1))]}),_:2},1024)]),_:2},1024),S.value!==H.id?(e.openBlock(),e.createElementBlock("span",z0,e.toDisplayString(z(H.id)),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("td",L0,[e.createVNode(Ve,null,{default:e.withCtx(()=>[e.createVNode($e,{class:"w-full focus-visible:outline-none",onClick:w[10]||(w[10]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.createVNode(Ue,null,{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Oe,{value:Y(H.id),class:"dark:border-ring/50",disabled:""},null,8,["value"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e.createVNode(De,null,{default:e.withCtx(()=>w[21]||(w[21]=[e.createElementVNode("p",null,"Update for individual variants only",-1)])),_:1,__:[21]})]),_:2},1024)])],8,N0),c.value.includes(H.id)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList((qe=_.value)==null?void 0:qe.filter(ae=>{var ie,Ee;return((Ee=(ie=ae.options)==null?void 0:ie.find(Te=>Te.optionId===s.value))==null?void 0:Ee.valueId)===H.id}),ae=>(e.openBlock(),e.createElementBlock("tr",{key:ae.id,class:"hover:bg-accent/50 cursor-pointer transition-colors duration-200 border-b border-input"},[e.createElementVNode("td",j0,[e.createElementVNode("div",U0,[e.createVNode(ye,{class:"border-muted-foreground translate-y-0.5",onClick:w[11]||(w[11]=e.withModifiers(()=>{},["stop"]))})])]),e.createElementVNode("td",H0,[e.createElementVNode("div",G0,[e.createElementVNode("div",null,[e.createVNode(Fe,{sources:e.unref(i),"max-files":1,"initial-value":p.value[g(ae.options)].image?[p.value[g(ae.options)].image]:[],onSubmit:ie=>p.value[g(ae.options)].image=ie},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:w[12]||(w[12]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer"},[p.value[g(ae.options)].image?(e.openBlock(),e.createElementBlock("img",{key:0,src:p.value[g(ae.options)].image,class:"size-10 object-cover rounded-md",draggable:"false"},null,8,q0)):(e.openBlock(),e.createBlock(O,{key:1,variant:"outline",class:"size-10 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.ImagePlus))]),_:1}))])]),_:2},1032,["sources","initial-value","onSubmit"])]),e.createElementVNode("div",W0,[e.createElementVNode("p",null,e.toDisplayString(ae.options.filter(ie=>ie.optionId!==s.value).map(ie=>ie.value).join(" / ")),1)])])]),e.createElementVNode("td",Z0,[e.createVNode(Ue,{"format-options":{style:"currency",currency:"EUR",currencyDisplay:"symbol",currencySign:"standard"},modelValue:p.value[g(ae.options)].price,"onUpdate:modelValue":ie=>p.value[g(ae.options)].price=ie,min:0},{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Oe,{class:"dark:border-ring/50"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("td",Y0,[e.createVNode(Ue,{modelValue:p.value[g(ae.options)].stock,"onUpdate:modelValue":ie=>p.value[g(ae.options)].stock=ie},{default:e.withCtx(()=>[e.createVNode(Ie,null,{default:e.withCtx(()=>[e.createVNode(Vt,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"}),e.createVNode(Oe,{class:"dark:border-ring/50"}),e.createVNode(Ct,{class:"group-hover:opacity-100 opacity-0 transition-opacity duration-200"})]),_:1})]),_:2},1032,["modelValue","onUpdate:modelValue"])])]))),128)):e.createCommentVNode("",!0)],64)}),128))])]),e.createElementVNode("div",X0,[e.createTextVNode(" Total inventory at Webshop: "+e.toDisplayString(T())+" ",1),U()<0?(e.openBlock(),e.createElementBlock("span",J0,"("+e.toDisplayString(U())+")",1)):e.createCommentVNode("",!0),w[22]||(w[22]=e.createTextVNode(" available ",-1))])],64)):e.createCommentVNode("",!0)]))}}}),Q0=e.defineComponent({__name:"Variants",setup(t){const{params:n}=J.useModuleRoute(),{value:o}=Se("options"),{value:r}=Se("variants"),l=e.ref([]),a=e.ref([]),i=e.useTemplateRef("optionsEl"),d=e.useTemplateRef("variantsEl");e.watch(l,async p=>{var m;o.value=p?JSON.parse(JSON.stringify(p)):[],await e.nextTick(),(m=d.value)==null||m.refreshVariants()},{deep:!0}),e.watch(a,p=>{r.value=p?JSON.parse(JSON.stringify(p)):[]},{deep:!0});const s=e.ref(!1),u=e.ref(!1);e.watch(o,async p=>{var m;n.value.productId=="new"||!p||Array.isArray(p)&&p.length===0||s.value||(s.value=!0,l.value=JSON.parse(JSON.stringify(p)),await e.nextTick(),p.length>1&&((m=i.value)==null||m.minifyAll()))},{deep:!0,immediate:!0}),e.watch(r,async p=>{var m;n.value.productId=="new"||!p||Array.isArray(p)&&p.length===0||u.value||(u.value=!0,a.value=JSON.parse(JSON.stringify(p)),await e.nextTick(),(m=d.value)==null||m.setVariantMap(p))},{deep:!0,immediate:!0});const c=e.computed(()=>{let p=l.value||[],m={};return!p||!Array.isArray(p)||p.forEach(f=>{var v,g,h,y;!f.name.trim()||((g=(v=f.values)==null?void 0:v.filter(b=>b.value.trim()!==""))==null?void 0:g.length)===0||(m[f.id]={id:f.id,name:f.name,values:((y=(h=f.values)==null?void 0:h.map(b=>({id:b.id,value:b.value})))==null?void 0:y.filter(b=>b.value.trim()!==""))||[]})}),m});return(p,m)=>{const f=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[m[2]||(m[2]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Variants",-1)),e.createVNode(c0,{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=g=>l.value=g),ref_key:"optionsEl",ref:i},null,8,["modelValue"]),e.createVNode(K0,{ref_key:"variantsEl",ref:d,options:c.value,modelValue:a.value,"onUpdate:modelValue":m[1]||(m[1]=g=>a.value=g),hide:Object.keys(c.value).length===0},null,8,["options","modelValue","hide"])]),_:1,__:[2]})]),_:1})}}}),eN={class:"flex justify-between gap-4"},tN={class:"text-[#1a0dab] text-lg"},nN={class:"text-[#006621] text-[13px]"},oN={class:"text-[#545454] text-[13px]"},rN={key:0,class:"text-red-500 text-sm mt-1"},lN={key:0,class:"text-red-500 text-sm mt-1"},aN={key:0,class:"text-red-500 text-sm mt-1"},iN={key:1,class:"text-[#545454] text-[13px]"},sN=e.defineComponent({__name:"SEO",setup(t){const{errors:n}=Tt(),{value:o}=Se("slug"),{value:r}=Se("seo");return(l,a)=>{const i=e.resolveComponent("Button"),d=e.resolveComponent("Label"),s=e.resolveComponent("Input"),u=e.resolveComponent("CardContent"),c=e.resolveComponent("Card");return e.openBlock(),e.createBlock(c,null,{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>{var p,m;return[e.createElementVNode("div",eN,[a[3]||(a[3]=e.createElementVNode("p",{class:"text-md font-semibold"},"Search engine listing",-1)),e.createVNode(i,{variant:"ghost"},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Pencil))]),_:1})]),a[7]||(a[7]=e.createElementVNode("p",{class:"text-sm text-muted-foreground"}," Add a title and description to see how this product might appear in a search engine listing ",-1)),e.createElementVNode("div",null,[e.createElementVNode("p",tN,e.toDisplayString(e.unref(r).title),1),e.createElementVNode("p",nN,e.toDisplayString(e.unref(o)),1),e.createElementVNode("p",oN,e.toDisplayString(e.unref(r).description),1)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"slug"},{default:e.withCtx(()=>a[4]||(a[4]=[e.createTextVNode("Slug",-1)])),_:1,__:[4]}),e.createVNode(s,{id:"slug",placeholder:"Slug",modelValue:e.unref(o),"onUpdate:modelValue":a[0]||(a[0]=f=>e.isRef(o)?o.value=f:null)},null,8,["modelValue"]),e.unref(n).slug?(e.openBlock(),e.createElementBlock("p",rN,e.toDisplayString(e.unref(n).slug),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"meta-title"},{default:e.withCtx(()=>a[5]||(a[5]=[e.createTextVNode("Title",-1)])),_:1,__:[5]}),e.createVNode(s,{id:"meta-title",placeholder:"Title",modelValue:e.unref(r).title,"onUpdate:modelValue":a[1]||(a[1]=f=>e.unref(r).title=f)},null,8,["modelValue"]),(p=e.unref(n).seo)!=null&&p.title?(e.openBlock(),e.createElementBlock("p",lN,e.toDisplayString(e.unref(n).seo.title),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(d,{for:"meta-description"},{default:e.withCtx(()=>a[6]||(a[6]=[e.createTextVNode("Description",-1)])),_:1,__:[6]}),e.createVNode(s,{id:"meta-description",placeholder:"Description",modelValue:e.unref(r).description,"onUpdate:modelValue":a[2]||(a[2]=f=>e.unref(r).description=f)},null,8,["modelValue"]),(m=e.unref(n).seo)!=null&&m.description?(e.openBlock(),e.createElementBlock("p",aN,e.toDisplayString(e.unref(n).seo.description),1)):(e.openBlock(),e.createElementBlock("p",iN,e.toDisplayString(e.unref(r).description.length)+" characters",1))])]}),_:1,__:[7]})]),_:1})}}}),uN={class:"flex items-center gap-2"},dN={key:0,class:"size-3 rounded-full bg-green-500"},cN={key:1,class:"size-3 rounded-full bg-blue-500"},pN={key:2,class:"size-3 rounded-full bg-gray-300"},fN=e.defineComponent({__name:"Status",setup(t){const{errors:n}=Tt(),{value:o}=Se("status");return(r,l)=>{const a=e.resolveComponent("SelectValue"),i=e.resolveComponent("SelectTrigger"),d=e.resolveComponent("SelectItem"),s=e.resolveComponent("SelectGroup"),u=e.resolveComponent("SelectContent"),c=e.resolveComponent("Select"),p=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[l[4]||(l[4]=e.createElementVNode("p",{class:"text-md font-semibold mb-2"},"Status",-1)),e.createVNode(c,{modelValue:e.unref(o),"onUpdate:modelValue":l[0]||(l[0]=f=>e.isRef(o)?o.value=f:null),class:"w-full"},{default:e.withCtx(()=>[e.createVNode(i,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",uN,[e.unref(o)==="published"?(e.openBlock(),e.createElementBlock("span",dN)):e.unref(o)==="draft"?(e.openBlock(),e.createElementBlock("span",cN)):e.unref(o)==="archived"?(e.openBlock(),e.createElementBlock("span",pN)):e.createCommentVNode("",!0),e.createVNode(a,{placeholder:"Status"})])]),_:1}),e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(d,{value:"published"},{default:e.withCtx(()=>l[1]||(l[1]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-green-500"},null,-1),e.createTextVNode(" Published ",-1)])),_:1,__:[1]}),e.createVNode(d,{value:"draft"},{default:e.withCtx(()=>l[2]||(l[2]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-blue-500"},null,-1),e.createTextVNode(" Draft ",-1)])),_:1,__:[2]}),e.createVNode(d,{value:"archived"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-gray-300"},null,-1),e.createTextVNode(" Archived ",-1)])),_:1,__:[3]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1,__:[4]})]),_:1})}}}),mN={class:"relative @container"},gN={class:"flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6"},vN={class:"flex items-center"},hN={class:"text-lg font-semibold mx-2"},xN={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},_N={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},yN={class:"flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24"},VN={class:"flex flex-col gap-4 w-full @3xl:w-2/3"},CN={class:"flex flex-col gap-4 w-full @3xl:w-1/3"},bN={key:0,class:"fixed bottom-4 left-0 md:left-12 right-0 min-w-xs max-w-5xl w-[calc(100%-2rem)] md:w-[calc(100%-5rem)] xl:w-[calc(100%-2rem)] h-16 border border-white/10 backdrop-blur-sm border-t border-border flex items-center justify-center px-4 mx-auto z-[9999] rounded-xl overflow-hidden shadow",style:{background:"radial-gradient(#00000080, transparent)"}},wN={class:"w-full max-w-5xl flex items-center justify-end mx-auto"},NN={key:1,class:"inline-flex items-center gap-1"},kN={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},SN={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},EN={key:2,class:"size-3 rounded-full bg-gray-300 translate-y-[1px]"},TN={key:1,class:"inline-flex items-center gap-1"},DN={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},BN={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},$N={key:2,class:"size-3 rounded-full bg-gray-300 translate-y-[1px]"},La=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o,hasPermissionOR:r}=J.useModulePermissions(),{params:l,navigateTo:a}=J.useModuleRoute(),{confirm:i}=J.useConfirmation(),{setModuleBreadcrumbs:d}=J.useBreadcrumbs(),s=J.useFirebaseIntegration(n.config.project);e.provide("sources",n.config.allowedMediaSources),e.provide("defaultSource",n.config.defaultUploadMediaSource);const u=e.computed(()=>!l.value.productId||l.value.productId==="new"),c=e.ref(!1),p=Zi(ft({title:_e().min(1,"Title is required"),description:_e().optional(),media:pt(_e()).optional(),price:mt.number().positive("Must be positive"),compareAtPrice:mt.number().positive("Must be positive").optional(),isTaxable:Nt().optional(),costPerItem:mt.number().positive("Must be positive").optional(),currency:_e(),stock:mt.number().optional(),trackInventory:Nt().optional(),allowBackorder:Nt().optional(),isGiftCard:Nt().optional(),slug:_e(),seo:ft({title:_e().optional(),description:_e().optional()}).optional(),createdAt:Fo(),updatedAt:Fo(),status:_e(),options:pt(ft({id:_e(),name:_e().min(1),values:pt(ft({id:_e(),value:_e()}))})).optional(),variants:pt(ft({combinedOptions:_e().min(1),name:_e().min(1),disabled:Nt().optional(),price:mt.number().positive("Must be positive"),stock:mt.number().optional(),image:_e().optional(),options:pt(ft({optionId:_e(),option:_e(),valueId:_e(),value:_e()}))})).optional(),tags:pt(_e()).optional()})),{handleSubmit:m,errors:f,values:v,setValues:g}=Bi({validationSchema:p,initialValues:{createdAt:new Date,updatedAt:new Date,status:"draft",options:[],variants:[],media:[],isTaxable:!1,trackInventory:!1,allowBackorder:!1,isGiftCard:!1,tags:[],currency:n.config.defaultCurrency||"USD",price:1,stock:0,seo:{title:"",description:""}}}),h=m(async x=>{if(c.value=!0,u.value){console.log("saving",x);const C=await s.add(n.config.productCollection,x);a(C.id),Ae.success("Product created")}else await s.update(n.config.productCollection,l.value.productId,x),a(`${l.value.productId}`),Ae.success("Product updated");c.value=!1}),y=async()=>{const x=await s.get(n.config.productCollection,l.value.productId);x.createdAt=new Date(x.createdAt),x.updatedAt=new Date(x.updatedAt),g(x),d([{text:x.title,href:`/products/${l.value.productId}`,disabled:!0}])},b=async()=>{try{let x={...v};x.id=void 0,x.createdAt=new Date,x.updatedAt=new Date,x.slug=x.slug+"-copy",x.status="draft",x.title=x.title+" (copy)";const C=await s.add(n.config.productCollection,x);a(C.id),Ae.success("Product duplicated")}catch{Ae.error("Failed to duplicate product")}},_=async()=>{try{await s.update(n.config.productCollection,l.value.productId,{status:"archived"}),g({status:"archived"},{force:!1}),Ae.success("Product archived")}catch{Ae.error("Failed to archive product")}},k=async()=>{if(await i("Are you sure you want to delete this product?"))try{await s.remove(n.config.productCollection,l.value.productId),a(""),Ae.success("Product deleted")}catch{Ae.error("Failed to delete product")}};return e.onMounted(()=>{u.value?d([{text:"New Product",href:"/products/new",disabled:!0}]):y()}),(x,C)=>{const N=e.resolveComponent("Button"),B=e.resolveComponent("MenubarTrigger"),z=e.resolveComponent("MenubarMenu"),Y=e.resolveComponent("MenubarShortcut"),R=e.resolveComponent("MenubarItem"),T=e.resolveComponent("MenubarSeparator"),U=e.resolveComponent("MenubarContent"),S=e.resolveComponent("Menubar");return e.openBlock(),e.createElementBlock("div",mN,[e.createElementVNode("div",gN,[e.createElementVNode("div",vN,[e.createVNode(N,{variant:"ghost",onClick:C[0]||(C[0]=j=>e.unref(a)(""))},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(F.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",hN,e.toDisplayString(u.value?"New Collection":x.collection.title),1),x.collection.status==="published"?(e.openBlock(),e.createElementBlock("span",xN,"Published")):x.collection.status==="draft"?(e.openBlock(),e.createElementBlock("span",_N,"Draft")):e.createCommentVNode("",!0)]),u.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(S,{key:0,class:"bg-sidebar"},{default:e.withCtx(()=>[e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(z,{key:0},{default:e.withCtx(()=>[e.createVNode(B,{onClick:b},{default:e.withCtx(()=>C[1]||(C[1]=[e.createTextVNode("Duplicate",-1)])),_:1,__:[1]})]),_:1})):e.createCommentVNode("",!0),e.createVNode(z,null,{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>C[2]||(C[2]=[e.createTextVNode("Preview",-1)])),_:1,__:[2]})]),_:1}),e.createVNode(z,null,{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>C[3]||(C[3]=[e.createTextVNode("Share",-1)])),_:1,__:[3]}),e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>[C[5]||(C[5]=e.createTextVNode(" New Tab ",-1)),e.createVNode(Y,null,{default:e.withCtx(()=>C[4]||(C[4]=[e.createTextVNode("⌘T",-1)])),_:1,__:[4]})]),_:1,__:[5]}),e.createVNode(R,null,{default:e.withCtx(()=>C[6]||(C[6]=[e.createTextVNode("New Window",-1)])),_:1,__:[6]}),e.createVNode(T),e.createVNode(R,null,{default:e.withCtx(()=>C[7]||(C[7]=[e.createTextVNode("Share",-1)])),_:1,__:[7]}),e.createVNode(T),e.createVNode(R,null,{default:e.withCtx(()=>C[8]||(C[8]=[e.createTextVNode("Print",-1)])),_:1,__:[8]})]),_:1})]),_:1}),e.unref(r)("edit-product","delete-product")?(e.openBlock(),e.createBlock(z,{key:1},{default:e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>C[9]||(C[9]=[e.createTextVNode("More actions",-1)])),_:1,__:[9]}),e.createVNode(U,null,{default:e.withCtx(()=>[e.unref(o)("edit-product")?(e.openBlock(),e.createBlock(R,{key:0,onClick:_},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Archive),{class:"size-4"}),C[10]||(C[10]=e.createTextVNode(" Archive product ",-1))]),_:1,__:[10]})):e.createCommentVNode("",!0),e.unref(o)("delete-product")?(e.openBlock(),e.createBlock(R,{key:1,variant:"destructive",onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(F.Trash),{class:"size-4"}),C[11]||(C[11]=e.createTextVNode(" Delete product ",-1))]),_:1,__:[11]})):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}))]),e.createElementVNode("div",yN,[e.createElementVNode("div",VN,[e.createVNode(Cw),e.createVNode(Lw),e.createVNode(Gw),e.createVNode(Zw),e.createVNode(Q0),e.createVNode(sN)]),e.createElementVNode("div",CN,[e.createVNode(fN)])]),e.unref(r)("create-collection","edit-collection")?(e.openBlock(),e.createElementBlock("div",bN,[e.createElementVNode("div",wN,[u.value&&e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(N,{key:0,onClick:e.unref(h),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Creating":"Create")+" new collection ",1),e.unref(v).status?(e.openBlock(),e.createElementBlock("span",NN,[C[12]||(C[12]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(v).status==="published"?(e.openBlock(),e.createElementBlock("span",kN)):e.unref(v).status==="draft"?(e.openBlock(),e.createElementBlock("span",SN)):e.unref(v).status==="archived"?(e.openBlock(),e.createElementBlock("span",EN)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(v).status),1),C[13]||(C[13]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.unref(o)("edit-product")?(e.openBlock(),e.createBlock(N,{key:1,onClick:e.unref(h),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(F.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Saving":"Save")+" changes ",1),e.unref(v).status?(e.openBlock(),e.createElementBlock("span",TN,[C[14]||(C[14]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(v).status==="published"?(e.openBlock(),e.createElementBlock("span",DN)):e.unref(v).status==="draft"?(e.openBlock(),e.createElementBlock("span",BN)):e.unref(v).status==="archived"?(e.openBlock(),e.createElementBlock("span",$N)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(v).status),1),C[15]||(C[15]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)])}}}),IN=[{path:"",component:pw},{path:"/:collectionId",component:La},{path:"/new",component:La}],MN=[{key:"create-product-collection",name:"Create product collection",description:"Team member can create a new product collection"},{key:"edit-product-collection",name:"Edit product collection",description:"Team member can edit a product collection"},{key:"delete-product-collection",name:"Delete product collection",description:"Team member can delete a product collection"}],PN={component:nw,metadata:ow,config:rw,routes:IN,permissions:MN};exports.custom=mC;exports.productCollections=PN;exports.products=ix;exports.promoCodes=tw;exports.table=gp;
|
|
35
|
+
`,$+="."+R+" { "+d(["-webkit-animation-duration: 0.1s","animation-duration: 0.1s","-webkit-animation-name: "+S,"animation-name: "+S])+` }
|
|
36
|
+
`,$+="@-webkit-keyframes "+S+` { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }
|
|
37
|
+
`,$+="@keyframes "+S+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }",_($)}}function m(N){N.className+=" "+u+"_animation_active"}function p(N,C,V){if(N.addEventListener)N.addEventListener(C,V);else if(N.attachEvent)N.attachEvent("on"+C,V);else return n.error("[scroll] Don't know how to add event listeners.")}function g(N,C,V){if(N.removeEventListener)N.removeEventListener(C,V);else if(N.detachEvent)N.detachEvent("on"+C,V);else return n.error("[scroll] Don't know how to remove event listeners.")}function v(N){return r(N).container.childNodes[0].childNodes[0].childNodes[0]}function h(N){return r(N).container.childNodes[0].childNodes[0].childNodes[1]}function x(N,C){var V=r(N).listeners;if(!V.push)throw new Error("Cannot add listener to an element that is not detectable.");r(N).listeners.push(C)}function b(N,C,V){V||(V=C,C=N,N=null),N=N||{};function _(){if(N.debug){var q=Array.prototype.slice.call(arguments);if(q.unshift(l.get(C),"Scroll: "),n.log.apply)n.log.apply(null,q);else for(var ie=0;ie<q.length;ie++)n.log(q[ie])}}function S(q){function ie(te){var be=te.getRootNode&&te.getRootNode().contains(te);return te===te.ownerDocument.body||te.ownerDocument.body.contains(te)||be}return!ie(q)||window.getComputedStyle(q)===null}function R(q){var ie=r(q).container.childNodes[0],te=window.getComputedStyle(ie);return!te.width||te.width.indexOf("px")===-1}function $(){var q=window.getComputedStyle(C),ie={};return ie.position=q.position,ie.width=C.offsetWidth,ie.height=C.offsetHeight,ie.top=q.top,ie.right=q.right,ie.bottom=q.bottom,ie.left=q.left,ie.widthCSS=q.width,ie.heightCSS=q.height,ie}function U(){var q=$();r(C).startSize={width:q.width,height:q.height},_("Element start size",r(C).startSize)}function P(){r(C).listeners=[]}function G(){if(_("storeStyle invoked."),!r(C)){_("Aborting because element has been uninstalled");return}var q=$();r(C).style=q}function k(q,ie,te){r(q).lastWidth=ie,r(q).lastHeight=te}function B(q){return v(q).childNodes[0]}function E(){return 2*a.width+1}function I(){return 2*a.height+1}function X(q){return q+10+E()}function le(q){return q+10+I()}function F(q){return q*2+E()}function T(q){return q*2+I()}function w(q,ie,te){var be=v(q),qe=h(q),Ge=X(ie),$e=le(te),Be=F(ie),ye=T(te);be.scrollLeft=Ge,be.scrollTop=$e,qe.scrollLeft=Be,qe.scrollTop=ye}function A(){var q=r(C).container;if(!q){q=document.createElement("div"),q.className=u,q.style.cssText=d(["visibility: hidden","display: inline","width: 0px","height: 0px","z-index: -1","overflow: hidden","margin: 0","padding: 0"]),r(C).container=q,m(q),C.appendChild(q);var ie=function(){r(C).onRendered&&r(C).onRendered()};p(q,"animationstart",ie),r(C).onAnimationStart=ie}return q}function L(){function q(){var pe=r(C).style;if(pe.position==="static"){C.style.setProperty("position","relative",N.important?"important":"");var Se=function(je,D,M,H){function Q(ve){return ve.replace(/[^-\d\.]/g,"")}var se=M[H];se!=="auto"&&Q(se)!=="0"&&(je.warn("An element that is positioned static has style."+H+"="+se+" which is ignored due to the static positioning. The element will need to be positioned relative, so the style."+H+" will be set to 0. Element: ",D),D.style[H]=0)};Se(n,C,pe,"top"),Se(n,C,pe,"right"),Se(n,C,pe,"bottom"),Se(n,C,pe,"left")}}function ie(pe,Se,je,D){return pe=pe?pe+"px":"0",Se=Se?Se+"px":"0",je=je?je+"px":"0",D=D?D+"px":"0",["left: "+pe,"top: "+Se,"right: "+D,"bottom: "+je]}if(_("Injecting elements"),!r(C)){_("Aborting because element has been uninstalled");return}q();var te=r(C).container;te||(te=A());var be=a.width,qe=a.height,Ge=d(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden","width: 100%","height: 100%","left: 0px","top: 0px"]),$e=d(["position: absolute","flex: none","overflow: hidden","z-index: -1","visibility: hidden"].concat(ie(-(1+be),-(1+qe),-qe,-be))),Be=d(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),ye=d(["position: absolute","flex: none","overflow: scroll","z-index: -1","visibility: hidden","width: 100%","height: 100%"]),Re=d(["position: absolute","left: 0","top: 0"]),xe=d(["position: absolute","width: 200%","height: 200%"]),ke=document.createElement("div"),Pe=document.createElement("div"),lt=document.createElement("div"),pt=document.createElement("div"),Ue=document.createElement("div"),oe=document.createElement("div");ke.dir="ltr",ke.style.cssText=Ge,ke.className=u,Pe.className=u,Pe.style.cssText=$e,lt.style.cssText=Be,pt.style.cssText=Re,Ue.style.cssText=ye,oe.style.cssText=xe,lt.appendChild(pt),Ue.appendChild(oe),Pe.appendChild(lt),Pe.appendChild(Ue),ke.appendChild(Pe),te.appendChild(ke);function Ie(){var pe=r(C);pe&&pe.onExpand?pe.onExpand():_("Aborting expand scroll handler: element has been uninstalled")}function yt(){var pe=r(C);pe&&pe.onShrink?pe.onShrink():_("Aborting shrink scroll handler: element has been uninstalled")}p(lt,"scroll",Ie),p(Ue,"scroll",yt),r(C).onExpandScroll=Ie,r(C).onShrinkScroll=yt}function J(){function q(Be,ye,Re){var xe=B(Be),ke=X(ye),Pe=le(Re);xe.style.setProperty("width",ke+"px",N.important?"important":""),xe.style.setProperty("height",Pe+"px",N.important?"important":"")}function ie(Be){var ye=C.offsetWidth,Re=C.offsetHeight,xe=ye!==r(C).lastWidth||Re!==r(C).lastHeight;_("Storing current size",ye,Re),k(C,ye,Re),o.add(0,function(){if(xe){if(!r(C)){_("Aborting because element has been uninstalled");return}if(!te()){_("Aborting because element container has not been initialized");return}if(N.debug){var ke=C.offsetWidth,Pe=C.offsetHeight;(ke!==ye||Pe!==Re)&&n.warn(l.get(C),"Scroll: Size changed before updating detector elements.")}q(C,ye,Re)}}),o.add(1,function(){if(!r(C)){_("Aborting because element has been uninstalled");return}if(!te()){_("Aborting because element container has not been initialized");return}w(C,ye,Re)}),xe&&Be&&o.add(2,function(){if(!r(C)){_("Aborting because element has been uninstalled");return}if(!te()){_("Aborting because element container has not been initialized");return}Be()})}function te(){return!!r(C).container}function be(){function Be(){return r(C).lastNotifiedWidth===void 0}_("notifyListenersIfNeeded invoked");var ye=r(C);if(Be()&&ye.lastWidth===ye.startSize.width&&ye.lastHeight===ye.startSize.height)return _("Not notifying: Size is the same as the start size, and there has been no notification yet.");if(ye.lastWidth===ye.lastNotifiedWidth&&ye.lastHeight===ye.lastNotifiedHeight)return _("Not notifying: Size already notified");_("Current size not notified, notifying..."),ye.lastNotifiedWidth=ye.lastWidth,ye.lastNotifiedHeight=ye.lastHeight,oV(r(C).listeners,function(Re){Re(C)})}function qe(){if(_("startanimation triggered."),R(C)){_("Ignoring since element is still unrendered...");return}_("Element rendered.");var Be=v(C),ye=h(C);(Be.scrollLeft===0||Be.scrollTop===0||ye.scrollLeft===0||ye.scrollTop===0)&&(_("Scrollbars out of sync. Updating detector elements..."),ie(be))}function Ge(){if(_("Scroll detected."),R(C)){_("Scroll event fired while unrendered. Ignoring...");return}ie(be)}if(_("registerListenersAndPositionElements invoked."),!r(C)){_("Aborting because element has been uninstalled");return}r(C).onRendered=qe,r(C).onExpand=Ge,r(C).onShrink=Ge;var $e=r(C).style;q(C,$e.width,$e.height)}function O(){if(_("finalizeDomMutation invoked."),!r(C)){_("Aborting because element has been uninstalled");return}var q=r(C).style;k(C,q.width,q.height),w(C,q.width,q.height)}function j(){V(C)}function ae(){_("Installing..."),P(),U(),o.add(0,G),o.add(1,L),o.add(2,J),o.add(3,O),o.add(4,j)}_("Making detectable..."),S(C)?(_("Element is detached"),A(),_("Waiting until element is attached..."),r(C).onRendered=function(){_("Element is now attached"),ae()}):ae()}function y(N){var C=r(N);C&&(C.onExpandScroll&&g(v(N),"scroll",C.onExpandScroll),C.onShrinkScroll&&g(h(N),"scroll",C.onShrinkScroll),C.onAnimationStart&&g(C.container,"animationstart",C.onAnimationStart),C.container&&N.removeChild(C.container))}return{makeDetectable:b,addListener:x,uninstall:y,initDocument:s}},Xn=Ps.forEach,lV=H1,aV=q1,iV=G1,sV=W1,uV=X1,Pa=zs,dV=J1,Pt=tV,cV=nV,fV=rV;function Fa(t){return Array.isArray(t)||t.length!==void 0}function Oa(t){if(Array.isArray(t))return t;var n=[];return Xn(t,function(o){n.push(o)}),n}function za(t){return t&&t.nodeType===1}var pV=function(t){t=t||{};var n;if(t.idHandler)n={get:function(b){return t.idHandler.get(b,!0)},set:t.idHandler.set};else{var o=iV(),r=sV({idGenerator:o,stateHandler:Pt});n=r}var l=t.reporter;if(!l){var a=l===!1;l=uV(a)}var i=Ft(t,"batchProcessor",dV({reporter:l})),u={};u.callOnAdd=!!Ft(t,"callOnAdd",!0),u.debug=!!Ft(t,"debug",!1);var s=aV(n),d=lV({stateHandler:Pt}),c,f=Ft(t,"strategy","object"),m=Ft(t,"important",!1),p={reporter:l,batchProcessor:i,stateHandler:Pt,idHandler:n,important:m};if(f==="scroll"&&(Pa.isLegacyOpera()?(l.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy."),f="object"):Pa.isIE(9)&&(l.warn("Scroll strategy is not supported on IE9. Changing to object strategy."),f="object")),f==="scroll")c=fV(p);else if(f==="object")c=cV(p);else throw new Error("Invalid strategy name: "+f);var g={};function v(b,y,N){function C(U){var P=s.get(U);Xn(P,function(G){G(U)})}function V(U,P,G){s.add(P,G),U&&G(P)}if(N||(N=y,y=b,b={}),!y)throw new Error("At least one element required.");if(!N)throw new Error("Listener required.");if(za(y))y=[y];else if(Fa(y))y=Oa(y);else return l.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");var _=0,S=Ft(b,"callOnAdd",u.callOnAdd),R=Ft(b,"onReady",function(){}),$=Ft(b,"debug",u.debug);Xn(y,function(U){Pt.getState(U)||(Pt.initState(U),n.set(U));var P=n.get(U);if($&&l.log("Attaching listener to element",P,U),!d.isDetectable(U)){if($&&l.log(P,"Not detectable."),d.isBusy(U)){$&&l.log(P,"System busy making it detectable"),V(S,U,N),g[P]=g[P]||[],g[P].push(function(){_++,_===y.length&&R()});return}return $&&l.log(P,"Making detectable..."),d.markBusy(U,!0),c.makeDetectable({debug:$,important:m},U,function(G){if($&&l.log(P,"onElementDetectable"),Pt.getState(G)){d.markAsDetectable(G),d.markBusy(G,!1),c.addListener(G,C),V(S,G,N);var k=Pt.getState(G);if(k&&k.startSize){var B=G.offsetWidth,E=G.offsetHeight;(k.startSize.width!==B||k.startSize.height!==E)&&C(G)}g[P]&&Xn(g[P],function(I){I()})}else $&&l.log(P,"Element uninstalled before being detectable.");delete g[P],_++,_===y.length&&R()})}$&&l.log(P,"Already detecable, adding listener."),V(S,U,N),_++}),_===y.length&&R()}function h(b){if(!b)return l.error("At least one element is required.");if(za(b))b=[b];else if(Fa(b))b=Oa(b);else return l.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");Xn(b,function(y){s.removeAllListeners(y),c.uninstall(y),Pt.cleanState(y)})}function x(b){c.initDocument&&c.initDocument(b)}return{listenTo:v,removeListener:s.removeListener,removeAllListeners:s.removeAllListeners,uninstall:h,initDocument:x}};function Ft(t,n,o){var r=t[n];return r==null&&o!==void 0?o:r}const mV=j1(pV);function gV(t){return{all:t=t||new Map,on:function(n,o){var r=t.get(n);r?r.push(o):t.set(n,[o])},off:function(n,o){var r=t.get(n);r&&(o?r.splice(r.indexOf(o)>>>0,1):t.set(n,[]))},emit:function(n,o){var r=t.get(n);r&&r.slice().map(function(l){l(o)}),(r=t.get("*"))&&r.slice().map(function(l){l(n,o)})}}}function js(){return typeof window<"u"}const $s=()=>{};function vV(t,n=$s){if(!js){n();return}window.addEventListener(t,n)}function hV(t,n=$s){js&&window.removeEventListener(t,n)}const xV={__name:"grid-layout",props:{layout:{type:Array,required:!0},responsiveLayouts:{type:Object,default(){return{}}},colNum:{type:Number,default:12},rowHeight:{type:Number,default:150},maxRows:{type:Number,default:1/0},margin:{type:Array,default(){return[10,10]}},isDraggable:{type:Boolean,default:!0},isResizable:{type:Boolean,default:!0},isMirrored:{type:Boolean,default:!1},isBounded:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!0},verticalCompact:{type:Boolean,default:!0},restoreOnDrag:{type:Boolean,default:!1},preventCollision:{type:Boolean,default:!1},useCssTransforms:{type:Boolean,default:!0},responsive:{type:Boolean,default:!1},breakpoints:{type:Object,default(){return{lg:1200,md:996,sm:768,xs:480,xxs:0}}},cols:{type:Object,default(){return{lg:12,md:10,sm:6,xs:4,xxs:2}}},useStyleCursor:{type:Boolean,default:!0},transformScale:{type:Number,default:1}},emits:["update:layout","layout-ready","layout-created","layout-before-mount","layout-mounted","layout-updated","breakpoint-changed"],setup(t,{expose:n,emit:o}){const r=t,l=o,a=gV(),i={el:void 0,placeholderEl:void 0,placeholder:{},emitter:a};n(i);const u=mV({strategy:"scroll",callOnAdd:!1}),s=e.reactive({width:null,mergedStyle:{},isDragging:!1,placeholder:{x:0,y:0,w:0,h:0,i:-1},layout:[],layouts:{},lastBreakpoint:null,originalLayout:null});e.provide("emitter",a),e.provide("gridLayout",{props:r,state:s});function d(){a.on("resizeEvent",h),a.on("dragEvent",v),l("layout-created",r.layout),vV("resize",p)}d(),e.onBeforeMount(()=>{l("layout-before-mount",s.layout)}),e.onMounted(()=>{l("layout-mounted",s.layout)}),e.onBeforeUnmount(()=>{a.off("resizeEvent",h),a.off("dragEvent",v),hV("resize",p),u&&i.el&&u.uninstall(i.el)}),e.watch(()=>s.width,async(C,V)=>{a.emit("updateWidth",s.width),m(),V===null&&(await e.nextTick(),l("layout-ready",s.layout))}),e.watch(()=>r.layout,()=>{M1(r.layout),s.originalLayout=r.layout,f()},{deep:!0,immediate:!0}),e.watch(()=>r.colNum,()=>{s.colNum=r.colNum,a.emit("setColNum",r.colNum)},{immediate:!0}),e.watch(()=>r.rowHeight,()=>{a.emit("setRowHeight",r.rowHeight)}),e.watch(()=>r.isDraggable,()=>{a.emit("setDraggable",r.isDraggable)}),e.watch(()=>r.isResizable,()=>{a.emit("setResizable",r.isResizable)}),e.watch(()=>r.isBounded,()=>{a.emit("setBounded",r.isBounded)}),e.watch(()=>r.transformScale,()=>{a.emit("setTransformScale",r.transformScale)}),e.watch(()=>r.responsive,()=>{r.responsive||(s.layout=on(s.originalLayout),a.emit("setColNum",r.colNum)),p()}),e.watch(()=>r.maxRows,()=>{a.emit("setMaxRows",r.maxRows)}),e.watch(()=>r.margin,()=>{m()},{deep:!0});function c(C,V){if((C==null?void 0:C.length)!==(V==null?void 0:V.length))return!0;let _=!1,S=0;for(;S<C.length;){const R=C[S],$=Object.keys(R),U=V[S],P=Object.keys(U),G=[...new Set([...$,...P])];let k=0;for(;k<G.length;){const B=G[k];if(R[B]!==U[B]){_=!0;break}k+=1}if(_)break;S+=1}return _}function f(){if(c(r.layout,s.layout)&&(b(),s.layout=on(r.layout),Wn(s.layout,r.verticalCompact),a.emit("updateWidth",s.width),m(),c(r.layout,s.layout))){const C=on(s.layout);l("layout-updated",C),l("update:layout",C)}}function m(){s.mergedStyle={height:g()}}function p(){i.el&&(s.width=i.el.offsetWidth),a.emit("resizeEvent")}function g(){var C;if(!r.autoSize)return;const V=((C=r.margin)==null?void 0:C[1])||0;return`${E1(s.layout)*(r.rowHeight+V)+V}px`}function v([C,V,_,S,R,$]=[]){let U=Ta(s.layout,V);if(U==null&&(U={x:0,y:0}),C==="dragstart"&&!r.verticalCompact&&(s.positionsBeforeDrag=s.layout.reduce((P,{i:G,x:k,y:B})=>({...P,[G]:{x:k,y:B}}),{})),C==="dragmove"||C==="dragstart"?(s.placeholder.x=U.x,s.placeholder.y=U.y,s.placeholder.w=$,s.placeholder.h=R,s.isDragging=!0):s.isDragging=!1,s.layout=Kr(s.layout,U,_,S,!0,r.preventCollision),r.restoreOnDrag?(U.static=!0,Wn(s.layout,r.verticalCompact,s.positionsBeforeDrag),U.static=!1):Wn(s.layout,r.verticalCompact),m(),C==="dragend"&&delete s.positionsBeforeDrag,c(r.layout,s.layout)){const P=on(s.layout);l("layout-updated",P),l("update:layout",P)}}function h([C,V,_,S,R,$]=[]){let U=Ta(s.layout,V);U==null&&(U={h:0,w:0});let P;if(r.preventCollision){const G=Es(s.layout,{...U,w:$,h:R}).filter(k=>k.i!==U.i);if(P=G.length>0,P){let k=1/0,B=1/0;G.forEach(E=>{E.x>U.x&&(k=Math.min(k,E.x)),E.y>U.y&&(B=Math.min(B,E.y))}),Number.isFinite(k)&&(U.w=k-U.x),Number.isFinite(B)&&(U.h=B-U.y)}}if(P||(U.w=$,U.h=R),C==="resizestart"||C==="resizemove"?(s.placeholder.x=_,s.placeholder.y=S,s.placeholder.w=U.w,s.placeholder.h=U.h,s.isDragging=!0):s.isDragging=!1,r.responsive&&x(),Wn(s.layout,r.verticalCompact),m(),c(r.layout,s.layout)){const G=on(s.layout);l("layout-updated",G),l("update:layout",G)}}function x(){const C=O1(r.breakpoints,s.width),V=Bs(C,r.cols);V!==s.colNum&&(s.colNum=V,s.layout=z1(s.layout,s.layouts,r.breakpoints,C,V,r.verticalCompact),s.layouts[C]=s.layout,a.emit("setColNum",V)),s.lastBreakpoint!==C&&(s.lastBreakpoint=C,l("breakpoint-changed",C,s.layout))}function b(){s.layouts={...r.responsiveLayouts}}function y(C){!C||C===i.el||(i.el=C,u&&u.listenTo(i.el,()=>{p()}),s.width=i.el.offsetWidth)}function N(C){C&&(i.placeholder=C,i.placeholderEl=C.el)}return(C,V)=>(e.openBlock(),e.createElementBlock("div",{ref:y,class:"vue-grid-layout",style:e.normalizeStyle(s.mergedStyle)},[e.renderSlot(C.$slots,"default",{},void 0,!0),e.withDirectives(e.createVNode(Is,{ref:N,class:"vue-grid-placeholder",x:s.placeholder.x,y:s.placeholder.y,w:s.placeholder.w,h:s.placeholder.h,i:"placeholder"},null,8,["x","y","w","h"]),[[e.vShow,s.isDragging]])],4))}},yV=Rs(xV,[["__scopeId","data-v-a10aee95"]]),CV={class:"items-top flex gap-x-2"},VV={class:"grid gap-1.5 leading-none"},wV=["for"],bV={class:"text-sm text-muted-foreground"},_V=e.defineComponent({__name:"Checkbox",props:{variableName:{type:String,required:!0},label:{type:String,required:!0},text:{type:String,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Checkbox",!0);return e.openBlock(),e.createElementBlock("div",CV,[e.createVNode(a,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=i=>e.unref(o).elementValues[t.variableName]=i),class:"border-ring"},null,8,["id","modelValue"]),e.createElementVNode("div",VV,[e.createElementVNode("label",{for:e.unref(n),class:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"},e.toDisplayString(t.label),9,wV),e.createElementVNode("p",bV,e.toDisplayString(t.text),1)])])}}}),NV={};function kV(t,n){return e.openBlock(),e.createElementBlock("div")}const SV=In(NV,[["render",kV]]),EV={};function AV(t,n){return e.openBlock(),e.createElementBlock("div")}const TV=In(EV,[["render",AV]]),BV={};function DV(t,n){return e.openBlock(),e.createElementBlock("div")}const RV=In(BV,[["render",DV]]),IV={class:"whitespace-pre-wrap"},MV=e.defineComponent({__name:"Label",props:{text:{type:String,default:""}},setup(t){const n=t,o=e.inject("allAvailableVariables"),r=e.computed(()=>jo(n.text,o==null?void 0:o.value));return(l,a)=>(e.openBlock(),e.createElementBlock("p",IV,e.toDisplayString(r.value),1))}}),PV={};function FV(t,n){return e.openBlock(),e.createElementBlock("div")}const OV=In(PV,[["render",FV]]),zV={class:"grid w-full items-center gap-1.5"},LV=e.defineComponent({__name:"Radios",props:{variableName:{type:String,required:!0},label:{type:String,default:""},orientation:{type:String,default:"vertical"},options:{type:Array,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("RadioGroupItem"),u=e.resolveComponent("RadioGroup");return e.openBlock(),e.createElementBlock("div",zV,[t.label?(e.openBlock(),e.createBlock(a,{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(u,{modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=s=>e.unref(o).elementValues[t.variableName]=s),orientation:t.orientation,class:"flex-wrap"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,s=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center space-x-2",key:s.value},[e.createVNode(i,{id:e.unref(n)+"_"+s.value,value:s.value,class:"border-ring"},null,8,["id","value"]),e.createVNode(a,{for:e.unref(n)+"_"+s.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1032,["for"])]))),128))]),_:1},8,["modelValue","orientation"])])}}}),UV={};function jV(t,n){return e.openBlock(),e.createElementBlock("div")}const $V=In(UV,[["render",jV]]),HV={class:"grid w-full items-center gap-1.5"},qV=e.defineComponent({__name:"Select",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""},options:{type:Array,required:!0}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("SelectValue"),u=e.resolveComponent("SelectTrigger"),s=e.resolveComponent("SelectItem"),d=e.resolveComponent("SelectGroup"),c=e.resolveComponent("SelectContent"),f=e.resolveComponent("Select",!0);return e.openBlock(),e.createElementBlock("div",HV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(f,{modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=m=>e.unref(o).elementValues[t.variableName]=m)},{default:e.withCtx(()=>[e.createVNode(u,{class:"w-[180px] border-ring"},{default:e.withCtx(()=>[e.createVNode(i,{placeholder:t.placeholder},null,8,["placeholder"])]),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,m=>(e.openBlock(),e.createBlock(s,{key:m.value,value:m.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),GV={class:"whitespace-pre-wrap"},WV=e.defineComponent({__name:"Text",props:{text:{type:String,default:""}},setup(t){const n=t,o=e.inject("allAvailableVariables"),r=e.computed(()=>jo(n.text,o==null?void 0:o.value));return(l,a)=>(e.openBlock(),e.createElementBlock("p",GV,e.toDisplayString(r.value),1))}}),XV={class:"flex flex-col w-full h-full items-start gap-1.5"},YV=e.defineComponent({__name:"Textarea",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Textarea",!0);return e.openBlock(),e.createElementBlock("div",XV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(i,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=u=>e.unref(o).elementValues[t.variableName]=u),placeholder:t.placeholder,class:"border-ring h-full resize-none"},null,8,["id","modelValue","placeholder"])])}}}),ZV={class:"grid w-full items-center gap-1.5"},KV=e.defineComponent({__name:"Textfield",props:{variableName:{type:String,required:!0},label:{type:String,default:""},placeholder:{type:String,default:""}},setup(t){const n=crypto.randomUUID(),o=e.inject("state");return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock("div",ZV,[t.label?(e.openBlock(),e.createBlock(a,{key:0,for:e.unref(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.label),1)]),_:1},8,["for"])):e.createCommentVNode("",!0),e.createVNode(i,{id:e.unref(n),modelValue:e.unref(o).elementValues[t.variableName],"onUpdate:modelValue":l[0]||(l[0]=u=>e.unref(o).elementValues[t.variableName]=u),type:"text",placeholder:t.placeholder,class:"border-ring"},null,8,["id","modelValue","placeholder"])])}}}),JV={class:"truncate w-full"},QV=e.defineComponent({__name:"Button",props:{variableName:{type:String,required:!0},text:{type:String,default:""},variant:{type:String,default:""},onClickEvents:{type:Array,default:()=>[]}},setup(t){const n=e.inject("allAvailableVariables"),o=t,r=()=>{o.onClickEvents.forEach(a=>{const{fireAction:i}=Z.useIntegrationActions(a.action.integration);i(a.action,n.value)})},l=e.computed(()=>!1);return(a,i)=>{const u=e.resolveComponent("Button",!0);return e.openBlock(),e.createBlock(u,{variant:t.variant,onClick:r,disabled:l.value,class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",JV,e.toDisplayString(t.text),1)]),_:1},8,["variant","disabled"])}}}),ew={CustomModuleCheckbox:_V,CustomModuleFile:SV,CustomModuleImages:TV,CustomModuleItems:RV,CustomModuleLabel:MV,CustomModuleLocation:OV,CustomModuleRadios:LV,CustomModuleRichText:$V,CustomModuleSelect:qV,CustomModuleText:WV,CustomModuleTextarea:YV,CustomModuleTextfield:KV,CustomModuleButton:QV},tw={class:"relative min-h-full flex flex-col"},nw=["onClick"],ow=e.defineComponent({__name:"CustomDashboard",setup(t){const n=Z.useConfirmation(),o=e.inject("state"),r=e.inject("isDragging"),l=e.inject("activeElement"),a=e.inject("selectedItems"),i=e.inject("isEditMode",e.ref(!1)),u=e.inject("allAvailableVariables"),s=e.useTemplateRef("containerRef"),{height:d}=fi(s);function c(F,T){o.itemRefs[F.i]=T}function f(F){o.layoutRef=F}function m(F,T,w){console.info(`MOVE i=${F}, X=${T}, Y=${w}`)}function p(F,T,w,A,L){console.info(`RESIZE i=${F}, H=${T}, W=${w}, H(px)=${A}, W(px)=${L}`)}function g(F,T,w){console.info(`### MOVED i=${F}, X=${T}, Y=${w}`)}function v(F,T,w,A,L){console.info(`### RESIZED i=${F}, H=${T}, W=${w}, H(px)=${A}, W(px)=${L}`)}function h(F,T,w,A,L){console.info(`### CONTAINER RESIZED i=${F}, H=${T}, W=${w}, H(px)=${A}, W(px)=${L}`)}function x(F){console.info("Created layout: ",F)}function b(F){console.info("beforeMount layout: ",F)}function y(F){console.info("Mounted layout: ",F)}function N(F){console.info("Ready layout: ",F)}function C(F){console.info("Updated layout: ",F)}function V(F,T){console.info("breakpoint changed breakpoint=",F,", layout: ",T)}const _=F=>{l.value=F};let S,R,$,U;const P=e.ref(!1),G=F=>{if(!i.value||F.target.closest(".vue-grid-item"))return;P.value=!0;const A=S.getBoundingClientRect(),L=S.scrollTop,J=S.scrollLeft;$=F.clientX-A.left+J,U=F.clientY-A.top+L,R.style.left=$+"px",R.style.top=U+"px",R.style.width="0px",R.style.height="0px",R.style.opacity="1"},k=F=>{if(!i.value||!P.value)return;const T=S.getBoundingClientRect(),w=S.scrollTop,A=S.scrollLeft,L=F.clientX-T.left+A,J=F.clientY-T.top+w,O=Math.min($,L),j=Math.min(U,J),ae=Math.abs($-L),q=Math.abs(U-J);R.style.left=O+"px",R.style.top=j+"px",R.style.width=ae+"px",R.style.height=q+"px"},B=()=>{if(!i.value)return;P.value=!1,R.style.opacity="0";const F=R.getBoundingClientRect(),T=document.querySelectorAll("#custom-module-wrapper .vue-grid-item:not(.vue-grid-placeholder)");(F.width>3||F.height>3)&&(a.value=[],l.value=null),T.forEach(w=>{const A=w.getBoundingClientRect();if(A.left>=F.left&&A.right<=F.right&&A.top>=F.top&&A.bottom<=F.bottom){const J=w.getAttribute("data-grid-id");a.value.push(parseInt(J))}}),R.style.left="0px",R.style.top="0px",R.style.width="0px",R.style.height="0px"};function E(){var w,A;const F=(w=document.activeElement)==null?void 0:w.tagName.toLowerCase(),T=(A=document.activeElement)==null?void 0:A.getAttribute("contenteditable");return["input","textarea","select"].includes(F)||T==="true"}async function I(F){i.value&&F.key==="Backspace"&&!E()&&(a.value.length>0||l.value)&&(F.preventDefault(),await n.confirm(`Are you sure you want to delete ${a.value.length>1?"these "+a.value.length+" items":"this item"}?`)&&(a.value.length>0?a.value.forEach(w=>{X(w)}):X(l.value.i)),a.value=[],l.value=null)}const X=F=>{o.layout.splice(o.layout.findIndex(T=>T.i===F),1)},le=F=>Object.keys(F).includes("visibility")?![!0,"true",1].includes(jo(F.visibility.trim(),u==null?void 0:u.value)):!1;return e.onMounted(()=>{R=document.getElementById("selection-box"),S=document.getElementById("custom-module-wrapper"),window.addEventListener("mouseup",B),window.addEventListener("mousemove",k),window.addEventListener("keydown",I)}),e.onUnmounted(()=>{window.removeEventListener("mouseup",B),window.removeEventListener("mousemove",k),window.removeEventListener("keydown",I)}),(F,T)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:s,id:"custom-module-wrapper",class:e.normalizeClass(["relative block w-full overflow-auto bg-muted/80 border border-ring/50 dark:border-ring rounded-xl",{"select-none":e.unref(r)||P.value}]),onMousedown:G},[e.createElementVNode("div",tw,[e.createElementVNode("div",{class:e.normalizeClass(["absolute inset-0 h-full w-full bg-grid transition-all duration-500",`${e.unref(r)?"dark:opacity-10 opacity-20":"opacity-0"}`])},null,2),e.createVNode(e.unref(yV),{class:e.normalizeClass(["min-w-[900px]",`${e.unref(r)||P.value?"select-none":""}`]),style:e.normalizeStyle(`min-height: ${e.unref(d)-5}px;`),ref:f,margin:[parseInt(e.unref(o).marginX),parseInt(e.unref(o).marginY)],layout:e.unref(o).layout,"onUpdate:layout":T[0]||(T[0]=w=>e.unref(o).layout=w),"col-num":parseInt(e.unref(o).colNum),cols:e.unref(o).cols,"row-height":e.unref(o).rowHeight,"is-draggable":e.unref(i),"is-resizable":e.unref(i),"is-mirrored":e.unref(o).mirrored,"is-bounded":e.unref(o).bounded,"prevent-collision":e.unref(o).preventCollision,"vertical-compact":e.unref(o).compact,"restore-on-drag":e.unref(o).restoreOnDrag,"use-css-transforms":!0,responsive:e.unref(o).responsive,"transform-scale":e.unref(o).transformScale,onLayoutCreated:x,onLayoutBeforeMount:b,onLayoutMounted:y,onLayoutReady:N,onLayoutUpdated:C,onBreakpointChanged:V},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o).layout,w=>(e.openBlock(),e.createBlock(e.unref(Is),{key:w.i,ref_for:!0,ref:A=>c(w,A),class:"group","data-grid-id":w.i,static:w.static,x:w.x,y:w.y,w:w.w,h:w.h,i:w.i,"min-w":w.minW,"max-w":w.maxW,"min-h":w.minH,"max-h":w.maxH,"min-x":w.minX,"max-x":w.maxX,"min-y":w.minY,"max-y":w.maxY,"preserve-aspect-ratio":w.preserveAspectRatio,onResize:p,onMove:m,onResized:v,onContainerResized:h,onMoved:g},{default:e.withCtx(()=>{var A;return[e.createElementVNode("div",{class:e.normalizeClass(["w-full h-full p-2 outline-primary/70",e.unref(xt)(e.unref(i)&&(e.unref(r)||P.value)?"outline outline-dashed":"",e.unref(i)?"group-hover:outline-2":"",e.unref(i)&&(e.unref(a).includes(w.i)||((A=e.unref(l))==null?void 0:A.i)===w.i)?"outline-2":"",e.unref(i)&&le(w)?"opacity-50":le(w)?"hidden pointer-events-none":"")]),onClick:L=>e.unref(i)?_(w):null},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ew)[`CustomModule${w.component}`]),e.mergeProps({key:w.i},{ref_for:!0},w),null,16))],10,nw)]}),_:2},1032,["data-grid-id","static","x","y","w","h","i","min-w","max-w","min-h","max-h","min-x","max-x","min-y","max-y","preserve-aspect-ratio"]))),128))]),_:1},8,["class","style","margin","layout","col-num","cols","row-height","is-draggable","is-resizable","is-mirrored","is-bounded","prevent-collision","vertical-compact","restore-on-drag","responsive","transform-scale"]),T[1]||(T[1]=e.createElementVNode("div",{id:"selection-box",class:"absolute border border-dashed border-primary bg-primary/10 opacity-0 pointer-events-none transition-opacity duration-300"},null,-1))])],34))}}),rw={class:"flex-1 flex flex-col overflow-hidden",style:{"max-height":"calc(100vh - 132px)"}},lw={key:0,class:"flex justify-end my-2"},aw={key:1,class:"flex gap-2"},iw={class:"@container/custom-dashboard flex-1 flex gap-2 w-full max-h-full overflow-hidden"},sw=e.defineComponent({__name:"View",props:{config:{type:Object,required:!0}},setup(t){const n=Z.useModuleRoute(),{isAdmin:o}=Z.useModulePermissions(),{setModuleBreadcrumbs:r}=Z.useBreadcrumbs();r([]);const l=e.ref("new-element"),a=e.ref(!1),i=e.ref(null),u=e.ref([]),s=e.ref(!1),d=[{x:0,y:0,w:2,h:2,i:"0",resizable:!0,draggable:!0,static:!1,minY:0,maxY:2}],c=e.reactive({layout:JSON.parse(JSON.stringify(d)),mirrored:!1,responsive:!1,bounded:!1,transformScale:1,preventCollision:!0,compact:!1,restoreOnDrag:!1,rowHeight:8,colNum:12,cols:{lg:12,md:12,sm:12,xs:12,xxs:12},index:0,marginX:0,marginY:0,layoutRef:{},itemRefs:{},variables:[],transformers:[],apiActions:[],elementValues:{}}),f=e.ref(),m=e.computed(()=>{var F,T;const E=((F=c.variables)==null?void 0:F.map(w=>({name:w.name,type:w.type,value:w.value??null})))||[],I=((T=c.apiActions)==null?void 0:T.map(w=>({name:w.label,type:"apiActionResponse",value:w.action??null})))||[],X=Object.entries(c.elementValues??{}).map(([w,A])=>({name:w,type:"element",value:{value:A??null}}))||[],le=Object.entries(n.query).map(([w,A])=>({name:p(w),type:"routeQueryParam",value:A??null}))||[];return[...E,...I,...X,...le].filter(w=>w.name)});function p(E){return E.replace(/-([a-z])/g,(I,X)=>X.toUpperCase())}const g=e.computed(()=>{const E=Object.fromEntries(m.value.map(I=>[I.name,I.value]));return(c.transformers??[]).map(I=>({name:I.name,type:"transformer",value:h(I.expression,E)}))}),v=e.computed(()=>[...m.value,...g.value]),h=(E,I)=>x(E,I),x=(E,I={})=>{var X;try{const le=document.createElement("iframe");le.style.display="none",document.body.appendChild(le);const F=(X=le.contentWindow)==null?void 0:X.Function;return document.body.removeChild(le),F==null?void 0:F(...Object.keys(I),"'use strict';"+E)(...Object.values(I))}catch(le){return console.error("Sandbox error:",le),""}};function b(E){c.layout.splice(c.layout.findIndex(I=>I.i===E),1)}e.onMounted(()=>{document.addEventListener("mousedown",y,!0),document.addEventListener("mouseup",N,!0)}),e.onUnmounted(()=>{document.removeEventListener("mousedown",y,!0),document.removeEventListener("mouseup",N,!0)});async function y(E){var I;a.value&&(I=E.target)!=null&&I.closest(".vue-grid-item")&&(s.value=!0)}function N(){s.value=!1}const C={x:null,y:null},V={x:null,y:null,w:1,h:1,i:null};document.addEventListener("dragover",E=>{C.x=E.clientX,C.y=E.clientY},!1),e.provide("mouseXY",C),e.provide("DragPos",V),e.provide("state",c),e.provide("isDragging",s),e.provide("activeElement",i),e.provide("selectedItems",u),e.provide("isEditMode",a),e.provide("allAvailableVariables",v);const{getModuleData:_,setModuleData:S}=Z.useModuleStorage();function R(){a.value=!0,f.value=JSON.parse(JSON.stringify(c))}function $(){var E;a.value=!1,(E=Object.keys(f.value))==null||E.forEach(I=>{c[I]=f.value[I]})}function U(){var I;let E=JSON.parse(JSON.stringify(c));(I=E.apiActions)==null||I.forEach(X=>{X.action.response=null,X.firedAt=null,X.hasFired=!1}),E.elementValues={},S("state",E),a.value=!1}async function P(){var I;const E=await _("state");E&&((I=Object.keys(E))==null||I.forEach(X=>{c[X]=E[X]}))}function G(){var E;(E=c.layout)==null||E.forEach(I=>{Object.keys(I).includes("defaultValue")&&(c.elementValues[I.variableName]=I.defaultValue)})}const k=async()=>{await P(),G(),console.log("accc",c.apiActions),B()},B=()=>{async function E(I){console.log("loadAction",I);const{fireAction:X}=Z.useIntegrationActions(I.action.integration);let le=await X(I.action,v.value);c.apiActions.find(F=>F.id===I.id).action.response=le}c.apiActions.forEach(I=>{console.log("action",I),I.fireOnStart&&E(I)})};return e.onMounted(()=>{k()}),(E,I)=>{const X=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",rw,[e.unref(o)?(e.openBlock(),e.createElementBlock("div",lw,[a.value?(e.openBlock(),e.createElementBlock("div",aw,[e.createVNode(X,{variant:"outline",onClick:$},{default:e.withCtx(()=>I[2]||(I[2]=[e.createTextVNode("Cancel",-1)])),_:1,__:[2]}),e.createVNode(X,{onClick:U},{default:e.withCtx(()=>I[3]||(I[3]=[e.createTextVNode("Save",-1)])),_:1,__:[3]})])):(e.openBlock(),e.createBlock(X,{key:0,onClick:R},{default:e.withCtx(()=>I[1]||(I[1]=[e.createTextVNode(" Edit layout ",-1)])),_:1,__:[1]}))])):e.createCommentVNode("",!0),e.createElementVNode("div",iw,[a.value?(e.openBlock(),e.createBlock(sx,{key:0,modelValue:l.value,"onUpdate:modelValue":I[0]||(I[0]=le=>l.value=le)},null,8,["modelValue"])):e.createCommentVNode("",!0),a.value?(e.openBlock(),e.createBlock(Ux,{key:1,view:l.value},null,8,["view"])):e.createCommentVNode("",!0),e.createVNode(ow),i.value&&a.value?(e.openBlock(),e.createBlock(my,{key:2,onRemoveItem:b})):e.createCommentVNode("",!0)])])}}}),uw=[{path:"",component:sw}],dw=[],cw={component:lx,metadata:ax,config:ix,routes:uw,permissions:dw},fw=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=Z.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),pw={name:"Promo Codes",description:"Create and manage promo codes",icon:"mdi-table",version:"1.0.0"},mw={project:{label:"Project",type:"resource",accept:["FIREBASE"]},promoCodeCollection:{label:"Promo Code Collection",type:"input",default:"promo-codes"}},gw=e.defineComponent({__name:"SingleCode",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("Label"),a=e.resolveComponent("Input");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(l,{class:"text-muted-foreground mb-2",for:"code"},{default:e.withCtx(()=>r[1]||(r[1]=[e.createTextVNode("Enter the coupon code",-1)])),_:1,__:[1]}),e.createVNode(a,{modelValue:e.unref(n).code,"onUpdate:modelValue":r[0]||(r[0]=i=>e.unref(n).code=i),id:"code"},null,8,["modelValue"])],64)}}}),vw={class:"flex items-center space-x-2"},hw={class:"flex items-center space-x-2"},xw={key:0,class:"flex items-end w-full gap-4"},yw={class:"relative w-full"},Cw={key:1},Vw=e.defineComponent({__name:"MultiCodes",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("RadioGroupItem"),a=e.resolveComponent("Label"),i=e.resolveComponent("RadioGroup"),u=e.resolveComponent("NumberFieldDecrement"),s=e.resolveComponent("NumberFieldInput"),d=e.resolveComponent("NumberFieldIncrement"),c=e.resolveComponent("NumberFieldContent"),f=e.resolveComponent("NumberField"),m=e.resolveComponent("Input"),p=e.resolveComponent("Textarea");return e.openBlock(),e.createElementBlock(e.Fragment,null,[r[8]||(r[8]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-2"},"How do you want to create the codes?",-1)),e.createVNode(i,{modelValue:e.unref(n).generationMode,"onUpdate:modelValue":r[0]||(r[0]=g=>e.unref(n).generationMode=g),orientation:"vertical",class:"mb-6"},{default:e.withCtx(()=>[e.createElementVNode("div",vw,[e.createVNode(l,{id:"generation_mode_generate",value:"generate"}),e.createVNode(a,{for:"generation_mode_generate"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode("Generate random codes",-1)])),_:1,__:[3]})]),e.createElementVNode("div",hw,[e.createVNode(l,{id:"generation_mode_input",value:"input"}),e.createVNode(a,{for:"generation_mode_input"},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode("Provide specific codes",-1)])),_:1,__:[4]})])]),_:1},8,["modelValue"]),e.unref(n).generationMode=="generate"?(e.openBlock(),e.createElementBlock("div",xw,[e.createVNode(f,{id:"age","default-value":1,min:1,class:"w-full"},{default:e.withCtx(()=>[e.createVNode(a,{for:"age",class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>r[5]||(r[5]=[e.createTextVNode("Number of codes to generate",-1)])),_:1,__:[5]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u),e.createVNode(s),e.createVNode(d)]),_:1})]),_:1}),e.createElementVNode("div",yw,[e.createVNode(m,{modelValue:e.unref(n).prefix,"onUpdate:modelValue":r[1]||(r[1]=g=>e.unref(n).prefix=g),placeholder:"Prefix",class:"pr-42"},null,8,["modelValue"]),r[6]||(r[6]=e.createElementVNode("span",{class:"absolute right-2 top-1/2 transform -translate-y-1/2 text-muted-foreground/80 pointer-events-none"},"- GENERATED CODE",-1))])])):(e.openBlock(),e.createElementBlock("div",Cw,[e.createVNode(a,{class:"text-muted-foreground mb-2",for:"codes"},{default:e.withCtx(()=>r[7]||(r[7]=[e.createTextVNode("Enter the codes you want to create (one per line)",-1)])),_:1,__:[7]}),e.createVNode(p,{modelValue:e.unref(n).codes,"onUpdate:modelValue":r[2]||(r[2]=g=>e.unref(n).codes=g),id:"codes",class:"max-h-48"},null,8,["modelValue"])]))],64)}}}),ww={class:"grid gap-6 py-4"},bw={class:"flex items-center"},_w={class:"flex items-center gap-2"},Nw={class:"flex items-center gap-2"},kw={class:"flex items-center gap-2"},Sw={class:"flex items-center gap-2"},Ew={class:"flex items-center space-x-2 mb-2"},Aw={key:0,class:"text-xs text-blue-600 bg-blue-500/10 p-2 rounded border border-blue-500 mt-1 flex items-start gap-1"},Tw={class:"flex items-center space-x-2 mb-2"},Bw=e.defineComponent({__name:"TypeDetailDialog",setup(t,{expose:n}){const{isAdmin:o}=Z.useModulePermissions(),{getModuleData:r,setModuleData:l}=Z.useModuleStorage(),a=e.inject("promoTypes",e.ref([])),i=e.ref({id:"",label:"",key:"",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""}),u=e.ref(!1),s=e.ref("add"),d=e.ref(!1),c=v=>{u.value=!0,d.value=!1,v?(s.value="edit",i.value=JSON.parse(JSON.stringify(v))):(s.value="add",i.value={id:crypto.randomUUID(),label:"",key:"",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""})},f=v=>{u.value=!0,d.value=!1,s.value="add",g(v)},m=async()=>{d.value=!0;let v=await r("promo-types")||[];v.push(JSON.parse(JSON.stringify(i.value))),l("promo-types",v),a.value=JSON.parse(JSON.stringify(v)),u.value=!1},p=async()=>{d.value=!0;let v=await r("promo-types")||[];v=v.map(h=>h.id===i.value.id?i.value:h),l("promo-types",v),a.value=JSON.parse(JSON.stringify(v)),u.value=!1},g=v=>{switch(v){case"fixed":i.value={id:crypto.randomUUID(),label:"Fixed Amount",key:"fixed",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Amount",valuePrefix:"$",valueSuffix:""};break;case"percentage":i.value={id:crypto.randomUUID(),label:"Percentage",key:"percentage",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Percentage",valuePrefix:"",valueSuffix:"%"};break;case"free_shipping":i.value={id:crypto.randomUUID(),label:"Free Shipping",key:"free_shipping",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""};break}};return n({open:c,openFromTemplate:f}),(v,h)=>{const x=e.resolveComponent("DialogTitle"),b=e.resolveComponent("DialogHeader"),y=e.resolveComponent("Button"),N=e.resolveComponent("DropdownMenuTrigger"),C=e.resolveComponent("DropdownMenuItem"),V=e.resolveComponent("DropdownMenuContent"),_=e.resolveComponent("DropdownMenu"),S=e.resolveComponent("Label"),R=e.resolveComponent("Input"),$=e.resolveComponent("Switch"),U=e.resolveComponent("DialogFooter"),P=e.resolveComponent("DialogScrollContent"),G=e.resolveComponent("Dialog");return e.openBlock(),e.createBlock(G,{open:u.value,"onUpdate:open":h[11]||(h[11]=k=>u.value=k)},{default:e.withCtx(()=>[e.unref(o)()?(e.openBlock(),e.createBlock(P,{key:0,class:"sm:max-w-[475px]"},{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.value==="add"?"Add Promo Type":"Edit Promo Type"),1)]),_:1})]),_:1}),e.createElementVNode("div",ww,[e.createElementVNode("div",bw,[s.value==="add"?(e.openBlock(),e.createBlock(_,{key:0},{default:e.withCtx(()=>[e.createVNode(N,null,{default:e.withCtx(()=>[e.createVNode(y,{variant:"outline"},{default:e.withCtx(()=>[e.createElementVNode("div",_w,[e.createVNode(e.unref(z.Import),{class:"size-4"}),h[12]||(h[12]=e.createTextVNode(" Load pre-defined type ",-1))])]),_:1})]),_:1}),e.createVNode(V,null,{default:e.withCtx(()=>[e.createVNode(C,{onClick:h[0]||(h[0]=k=>g("fixed"))},{default:e.withCtx(()=>[e.createElementVNode("div",Nw,[e.createVNode(e.unref(z.DollarSign),{class:"size-4"}),h[13]||(h[13]=e.createTextVNode(" Fixed Amount ",-1))])]),_:1}),e.createVNode(C,{onClick:h[1]||(h[1]=k=>g("percentage"))},{default:e.withCtx(()=>[e.createElementVNode("div",kw,[e.createVNode(e.unref(z.Percent),{class:"size-4"}),h[14]||(h[14]=e.createTextVNode(" Percentage ",-1))])]),_:1}),e.createVNode(C,{onClick:h[2]||(h[2]=k=>g("free_shipping"))},{default:e.withCtx(()=>[e.createElementVNode("div",Sw,[e.createVNode(e.unref(z.Truck),{class:"size-4"}),h[15]||(h[15]=e.createTextVNode(" Free Shipping ",-1))])]),_:1})]),_:1})]),_:1})):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(S,{for:"label",class:"mb-2"},{default:e.withCtx(()=>h[16]||(h[16]=[e.createTextVNode("Display Name",-1)])),_:1,__:[16]}),e.createVNode(R,{modelValue:i.value.label,"onUpdate:modelValue":h[3]||(h[3]=k=>i.value.label=k),id:"label"},null,8,["modelValue"]),h[17]||(h[17]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'Shown in the Studio UI. e.g. "VIP Shipping"',-1))]),e.createElementVNode("div",null,[e.createVNode(S,{for:"key",class:"mb-2"},{default:e.withCtx(()=>h[18]||(h[18]=[e.createTextVNode("Internal Key",-1)])),_:1,__:[18]}),e.createVNode(R,{modelValue:i.value.key,"onUpdate:modelValue":h[4]||(h[4]=k=>i.value.key=k),id:"key"},null,8,["modelValue"]),h[19]||(h[19]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},[e.createTextVNode("Used in logic. Must be unique, lowercase, no spaces. e.g. "),e.createElementVNode("span",{class:"font-mono bg-muted-foreground/20 px-1 py-0.5 rounded"},"vip_shipping")],-1))]),e.createElementVNode("div",null,[e.createVNode(S,{for:"allowUnlimitedUses",class:"mb-4"},{default:e.withCtx(()=>h[20]||(h[20]=[e.createTextVNode("Allow Unlimited Uses",-1)])),_:1,__:[20]}),e.createElementVNode("div",Ew,[e.createVNode($,{id:"allowUnlimitedUses",modelValue:i.value.allowUnlimitedUses,"onUpdate:modelValue":h[5]||(h[5]=k=>i.value.allowUnlimitedUses=k)},null,8,["modelValue"]),e.createVNode(S,{for:"allowUnlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value.allowUnlimitedUses?"Yes":"No"),1)]),_:1})]),h[22]||(h[22]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'Show the "Unlimited uses" toggle when creating a promo code.',-1)),i.value.allowUnlimitedUses?(e.openBlock(),e.createElementBlock("p",Aw,[e.createVNode(e.unref(z.Info),{class:"size-4"}),h[21]||(h[21]=e.createTextVNode(" This option is always hidden when generating multiple codes. ",-1))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[e.createVNode(S,{for:"hasValueField",class:"mb-4"},{default:e.withCtx(()=>h[23]||(h[23]=[e.createTextVNode("Has Value Field",-1)])),_:1,__:[23]}),e.createElementVNode("div",Tw,[e.createVNode($,{id:"hasValueField",modelValue:i.value.hasValueField,"onUpdate:modelValue":h[6]||(h[6]=k=>i.value.hasValueField=k)},null,8,["modelValue"]),e.createVNode(S,{for:"hasValueField"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.value.hasValueField?"Yes":"No"),1)]),_:1})]),h[24]||(h[24]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"Show a numeric value input when using this type.",-1))]),e.createElementVNode("div",null,[e.createVNode(S,{for:"valueLabel",class:"mb-2"},{default:e.withCtx(()=>h[25]||(h[25]=[e.createTextVNode("Value Field Label",-1)])),_:1,__:[25]}),e.createVNode(R,{modelValue:i.value.valueLabel,"onUpdate:modelValue":h[7]||(h[7]=k=>i.value.valueLabel=k),id:"valueLabel"},null,8,["modelValue"]),h[26]||(h[26]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},'e.g. "Gift amount", "Shipping cost"',-1))]),e.createElementVNode("div",null,[e.createVNode(S,{for:"valuePrefix",class:"mb-2"},{default:e.withCtx(()=>h[27]||(h[27]=[e.createTextVNode("Value Field Prefix",-1)])),_:1,__:[27]}),e.createVNode(R,{modelValue:i.value.valuePrefix,"onUpdate:modelValue":h[8]||(h[8]=k=>i.value.valuePrefix=k),id:"valuePrefix"},null,8,["modelValue"]),h[28]||(h[28]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"e.g. € or $",-1))]),e.createElementVNode("div",null,[e.createVNode(S,{for:"valueSuffix",class:"mb-2"},{default:e.withCtx(()=>h[29]||(h[29]=[e.createTextVNode("Value Field Suffix",-1)])),_:1,__:[29]}),e.createVNode(R,{modelValue:i.value.valueSuffix,"onUpdate:modelValue":h[9]||(h[9]=k=>i.value.valueSuffix=k),id:"valueSuffix"},null,8,["modelValue"]),h[30]||(h[30]=e.createElementVNode("p",{class:"text-xs text-muted-foreground mt-1"},"e.g. %, credits",-1))])]),e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(y,{variant:"outline",onClick:h[10]||(h[10]=k=>u.value=!1)},{default:e.withCtx(()=>h[31]||(h[31]=[e.createTextVNode("Cancel",-1)])),_:1,__:[31]}),s.value==="add"?(e.openBlock(),e.createBlock(y,{key:0,disabled:d.value,onClick:m},{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),h[32]||(h[32]=e.createTextVNode(" Add Type ",-1))]),_:1,__:[32]},8,["disabled"])):(e.openBlock(),e.createBlock(y,{key:1,disabled:d.value,onClick:p},{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),h[33]||(h[33]=e.createTextVNode(" Save Changes ",-1))]),_:1,__:[33]},8,["disabled"]))]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["open"])}}}),Dw={class:"grid gap-4 py-4"},Rw={key:0,class:"flex flex-col gap-2 items-center text-muted-foreground border rounded p-4"},Iw={class:"flex gap-2 items-center"},Mw={key:1},Pw={class:"flex justify-end w-full mb-2"},Fw={class:"flex items-center gap-2"},Ow={class:"flex items-center gap-2"},zw={class:"flex items-center gap-2"},Lw={class:"flex items-center gap-2"},Uw={class:"flex items-center gap-2"},jw={class:"font-mono bg-muted-foreground/20 px-1 py-0.5 rounded"},$w=e.defineComponent({__name:"TypeManageDialog",setup(t){const{isAdmin:n}=Z.useModulePermissions(),{getModuleData:o,setModuleData:r}=Z.useModuleStorage(),{confirm:l}=Z.useConfirmation(),a=e.inject("promoTypes",e.ref([])),i=e.useTemplateRef("typeDetailDialog"),u=async d=>{if(!await l(`Are you sure you want to delete the type "${d.label}"?`))return;let f=await o("promo-types")||[];f=f.filter(m=>m.id!==d.id),r("promo-types",f),a.value=JSON.parse(JSON.stringify(f))},s=async()=>{const d=[{id:crypto.randomUUID(),label:"Fixed Amount",key:"fixed",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Amount",valuePrefix:"$",valueSuffix:""},{id:crypto.randomUUID(),label:"Percentage",key:"percentage",allowUnlimitedUses:!1,hasValueField:!0,valueLabel:"Percentage",valuePrefix:"",valueSuffix:"%"},{id:crypto.randomUUID(),label:"Free Shipping",key:"free_shipping",allowUnlimitedUses:!1,hasValueField:!1,valueLabel:"",valuePrefix:"",valueSuffix:""}];r("promo-types",d),a.value=JSON.parse(JSON.stringify(d))};return(d,c)=>{const f=e.resolveComponent("Button"),m=e.resolveComponent("DialogTrigger"),p=e.resolveComponent("DialogTitle"),g=e.resolveComponent("DialogDescription"),v=e.resolveComponent("DialogHeader"),h=e.resolveComponent("DropdownMenuTrigger"),x=e.resolveComponent("DropdownMenuItem"),b=e.resolveComponent("DropdownMenuSeparator"),y=e.resolveComponent("DropdownMenuContent"),N=e.resolveComponent("DropdownMenu"),C=e.resolveComponent("TableHead"),V=e.resolveComponent("TableRow"),_=e.resolveComponent("TableHeader"),S=e.resolveComponent("TableCell"),R=e.resolveComponent("TableBody"),$=e.resolveComponent("Table"),U=e.resolveComponent("DialogFooter"),P=e.resolveComponent("DialogScrollContent"),G=e.resolveComponent("Dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(G,null,{default:e.withCtx(()=>[e.createVNode(m,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(e.unref(z.UserCog),{class:"size-4"}),c[6]||(c[6]=e.createTextVNode(" Edit Promo Types ",-1))]),_:1,__:[6]})]),_:1}),e.unref(n)()?(e.openBlock(),e.createBlock(P,{key:0,class:"sm:max-w-2xl"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>c[7]||(c[7]=[e.createTextVNode("Edit Promo Types",-1)])),_:1,__:[7]}),e.createVNode(g,null,{default:e.withCtx(()=>c[8]||(c[8]=[e.createTextVNode(" Define reusable custom promo types to use in discount codes. You can configure how they behave and what fields are shown. ",-1)])),_:1,__:[8]})]),_:1}),e.createElementVNode("div",Dw,[e.unref(a).length===0?(e.openBlock(),e.createElementBlock("div",Rw,[c[12]||(c[12]=e.createElementVNode("p",null,"You haven't created any custom types yet.",-1)),e.createElementVNode("p",Iw,[e.createVNode(f,{variant:"link",onClick:c[0]||(c[0]=k=>{var B;return(B=i.value)==null?void 0:B.open()})},{default:e.withCtx(()=>c[9]||(c[9]=[e.createTextVNode("Create a custom type",-1)])),_:1,__:[9]}),c[11]||(c[11]=e.createTextVNode(" or ",-1)),e.createVNode(f,{variant:"link",onClick:c[1]||(c[1]=k=>s())},{default:e.withCtx(()=>c[10]||(c[10]=[e.createTextVNode("Import Default Types",-1)])),_:1,__:[10]})])])):(e.openBlock(),e.createElementBlock("div",Mw,[e.createElementVNode("div",Pw,[e.createVNode(N,null,{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>[e.createVNode(f,{variant:"outline"},{default:e.withCtx(()=>[e.createElementVNode("div",Fw,[e.createVNode(e.unref(z.Plus),{class:"size-4"}),c[13]||(c[13]=e.createTextVNode(" Create new Promo Type ",-1))])]),_:1})]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(x,{onClick:c[2]||(c[2]=k=>{var B;return(B=i.value)==null?void 0:B.open()})},{default:e.withCtx(()=>[e.createElementVNode("div",Ow,[e.createVNode(e.unref(z.Plus),{class:"size-4"}),c[14]||(c[14]=e.createTextVNode(" New Type ",-1))])]),_:1}),e.createVNode(b),e.createVNode(x,{onClick:c[3]||(c[3]=k=>{var B;return(B=i.value)==null?void 0:B.openFromTemplate("fixed")})},{default:e.withCtx(()=>[e.createElementVNode("div",zw,[e.createVNode(e.unref(z.DollarSign),{class:"size-4"}),c[15]||(c[15]=e.createTextVNode(" Fixed Amount ",-1))])]),_:1}),e.createVNode(x,{onClick:c[4]||(c[4]=k=>{var B;return(B=i.value)==null?void 0:B.openFromTemplate("percentage")})},{default:e.withCtx(()=>[e.createElementVNode("div",Lw,[e.createVNode(e.unref(z.Percent),{class:"size-4"}),c[16]||(c[16]=e.createTextVNode(" Percentage ",-1))])]),_:1}),e.createVNode(x,{onClick:c[5]||(c[5]=k=>{var B;return(B=i.value)==null?void 0:B.openFromTemplate("free_shipping")})},{default:e.withCtx(()=>[e.createElementVNode("div",Uw,[e.createVNode(e.unref(z.Truck),{class:"size-4"}),c[17]||(c[17]=e.createTextVNode(" Free Shipping ",-1))])]),_:1})]),_:1})]),_:1})]),e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(V,null,{default:e.withCtx(()=>[e.createVNode(C,null,{default:e.withCtx(()=>c[18]||(c[18]=[e.createTextVNode("Name (label)",-1)])),_:1,__:[18]}),e.createVNode(C,null,{default:e.withCtx(()=>c[19]||(c[19]=[e.createTextVNode("Key",-1)])),_:1,__:[19]}),e.createVNode(C,null,{default:e.withCtx(()=>c[20]||(c[20]=[e.createTextVNode("Value Field",-1)])),_:1,__:[20]}),e.createVNode(C,null,{default:e.withCtx(()=>c[21]||(c[21]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[21]}),e.createVNode(C,{class:"text-right"},{default:e.withCtx(()=>c[22]||(c[22]=[e.createTextVNode("Actions",-1)])),_:1,__:[22]})]),_:1})]),_:1}),e.createVNode(R,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a),k=>(e.openBlock(),e.createBlock(V,{key:k.key},{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.label),1)]),_:2},1024),e.createVNode(S,null,{default:e.withCtx(()=>[e.createElementVNode("span",jw,e.toDisplayString(k.key),1)]),_:2},1024),e.createVNode(S,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.hasValueField?"Yes":"No"),1)]),_:2},1024),e.createVNode(S,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.allowUnlimitedUses?"Yes":"No"),1)]),_:2},1024),e.createVNode(S,{class:"text-right"},{default:e.withCtx(()=>[e.createVNode(f,{variant:"ghost",size:"icon",onClick:B=>{var E;return(E=i.value)==null?void 0:E.open(k)}},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Pencil),{class:"size-4"})]),_:2},1032,["onClick"]),e.createVNode(f,{variant:"ghost",size:"icon",onClick:B=>u(k)},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Trash2),{class:"size-4 text-red-500"})]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]))]),e.createVNode(U,null,{default:e.withCtx(()=>[e.createVNode(f,{variant:"outline",disabled:""},{default:e.withCtx(()=>c[23]||(c[23]=[e.createTextVNode(" Auto-saved ",-1)])),_:1,__:[23]})]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(Bw,{ref_key:"typeDetailDialog",ref:i},null,512)],64)}}}),Hw={class:"flex justify-between items-center"},qw={class:"grid gap-2"},Gw={class:"flex flex-wrap gap-12"},Ww={key:0,class:"grid gap-2"},Xw={class:"flex items-center gap-2"},Yw={key:1,class:"grid gap-2"},Zw={class:"flex items-center space-x-2"},Kw=e.defineComponent({__name:"index",setup(t){const n=e.inject("newCoupon"),o=e.inject("promoTypes",e.ref([])),r=e.computed(()=>o.value.find(a=>{var i;return a.key===((i=n.value)==null?void 0:i.type)})||null),{isAdmin:l}=Z.useModulePermissions();return(a,i)=>{const u=e.resolveComponent("Label"),s=e.resolveComponent("SelectValue"),d=e.resolveComponent("SelectTrigger"),c=e.resolveComponent("SelectItem"),f=e.resolveComponent("SelectGroup"),m=e.resolveComponent("SelectContent"),p=e.resolveComponent("Select"),g=e.resolveComponent("Input"),v=e.resolveComponent("Switch"),h=e.resolveComponent("Card");return e.openBlock(),e.createBlock(h,{class:"p-4"},{default:e.withCtx(()=>{var x,b,y,N;return[e.createElementVNode("div",Hw,[i[3]||(i[3]=e.createElementVNode("h2",{class:"font-medium"},"Value",-1)),e.unref(l)()?(e.openBlock(),e.createBlock($w,{key:0})):e.createCommentVNode("",!0)]),e.createElementVNode("div",qw,[e.createVNode(u,{class:"text-muted-foreground"},{default:e.withCtx(()=>i[4]||(i[4]=[e.createTextVNode("Promo Type",-1)])),_:1,__:[4]}),e.createVNode(p,{modelValue:e.unref(n).type,"onUpdate:modelValue":i[0]||(i[0]=C=>e.unref(n).type=C)},{default:e.withCtx(()=>[e.createVNode(d,{class:"w-[200px]"},{default:e.withCtx(()=>[e.createVNode(s,{placeholder:"Select a promo type"})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),C=>(e.openBlock(),e.createBlock(c,{key:C.key,value:C.key},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),e.createElementVNode("div",Gw,[(x=r.value)!=null&&x.hasValueField?(e.openBlock(),e.createElementBlock("div",Ww,[e.createVNode(u,{for:"discountValue",class:"text-muted-foreground"},{default:e.withCtx(()=>{var C;return[e.createTextVNode(e.toDisplayString(((C=r.value)==null?void 0:C.valueLabel)||"Value"),1)]}),_:1}),e.createElementVNode("div",Xw,[(b=r.value)!=null&&b.valuePrefix?(e.openBlock(),e.createBlock(u,{key:0,for:"discountValue",class:"text-lg"},{default:e.withCtx(()=>{var C;return[e.createTextVNode(e.toDisplayString((C=r.value)==null?void 0:C.valuePrefix),1)]}),_:1})):e.createCommentVNode("",!0),e.createVNode(g,{modelValue:e.unref(n).value,"onUpdate:modelValue":i[1]||(i[1]=C=>e.unref(n).value=C),id:"discountValue"},null,8,["modelValue"]),(y=r.value)!=null&&y.valueSuffix?(e.openBlock(),e.createBlock(u,{key:1,for:"discountValue",class:"text-lg"},{default:e.withCtx(()=>{var C;return[e.createTextVNode(e.toDisplayString((C=r.value)==null?void 0:C.valueSuffix),1)]}),_:1})):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(N=r.value)!=null&&N.allowUnlimitedUses&&e.unref(n).creationMode!=="multi"?(e.openBlock(),e.createElementBlock("div",Yw,[e.createVNode(u,{for:"unlimitedUses",class:"text-muted-foreground"},{default:e.withCtx(()=>i[5]||(i[5]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[5]}),e.createElementVNode("div",Zw,[e.createVNode(v,{id:"unlimitedUses",modelValue:e.unref(n).unlimitedUses,"onUpdate:modelValue":i[2]||(i[2]=C=>e.unref(n).unlimitedUses=C)},null,8,["modelValue"]),e.createVNode(u,{for:"unlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n).unlimitedUses?"Yes":"No"),1)]),_:1})])])):e.createCommentVNode("",!0)])]}),_:1})}}}),Jw={class:"flex gap-4"},Qw={class:"flex flex-col"},eb={key:0,class:"-ml-2"},tb={key:1,class:"text-xs text-muted-foreground mt-2"},nb={class:"flex flex-col"},ob={key:0,class:"-ml-2"},rb={key:1,class:"text-xs text-muted-foreground mt-2"},lb=e.defineComponent({__name:"DateRange",setup(t){const n=e.inject("newCoupon"),o=new sl("en-US",{dateStyle:"long"});return(r,l)=>{const a=e.resolveComponent("Label"),i=e.resolveComponent("Button"),u=e.resolveComponent("PopoverTrigger"),s=e.resolveComponent("Calendar"),d=e.resolveComponent("PopoverContent"),c=e.resolveComponent("Popover"),f=e.resolveComponent("Card");return e.openBlock(),e.createBlock(f,{class:"p-4"},{default:e.withCtx(()=>[l[8]||(l[8]=e.createElementVNode("div",null,[e.createElementVNode("h2",{class:"font-medium mb-2"},"Availability"),e.createElementVNode("p",{class:"text-muted-foreground"},"When will this code be available?")],-1)),e.createElementVNode("div",Jw,[e.createElementVNode("div",Qw,[e.createVNode(a,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>l[4]||(l[4]=[e.createTextVNode("Available from",-1)])),_:1,__:[4]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",class:e.normalizeClass(e.unref(xt)("w-[280px] justify-start text-left font-normal",!e.unref(n).startsAt&&"text-muted-foreground"))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(n).startsAt?e.unref(o).format(e.unref(n).startsAt.toDate(e.unref(gt)())):"Pick a date"),1)]),_:1},8,["class"])]),_:1}),e.createVNode(d,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:e.unref(n).startsAt,"onUpdate:modelValue":l[0]||(l[0]=m=>e.unref(n).startsAt=m),"initial-focus":"",minValue:e.unref(Ja)()},null,8,["modelValue","minValue"])]),_:1})]),_:1}),e.unref(n).startsAt?(e.openBlock(),e.createElementBlock("div",eb,[e.createVNode(i,{onClick:l[1]||(l[1]=m=>e.unref(n).startsAt=void 0),variant:"link"},{default:e.withCtx(()=>l[5]||(l[5]=[e.createTextVNode("Clear",-1)])),_:1,__:[5]})])):(e.openBlock(),e.createElementBlock("p",tb,"Not set - codes will be available immediately"))]),e.createElementVNode("div",nb,[e.createVNode(a,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>l[6]||(l[6]=[e.createTextVNode("Until",-1)])),_:1,__:[6]}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(u,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(i,{variant:"outline",class:e.normalizeClass(e.unref(xt)("w-[280px] justify-start text-left font-normal",!e.unref(n).expiresAt&&"text-muted-foreground"))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(e.unref(n).expiresAt?e.unref(o).format(e.unref(n).expiresAt.toDate(e.unref(gt)())):"Pick a date"),1)]),_:1},8,["class"])]),_:1}),e.createVNode(d,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(s,{modelValue:e.unref(n).expiresAt,"onUpdate:modelValue":l[2]||(l[2]=m=>e.unref(n).expiresAt=m),"initial-focus":"",minValue:e.unref(n).startsAt},null,8,["modelValue","minValue"])]),_:1})]),_:1}),e.unref(n).expiresAt?(e.openBlock(),e.createElementBlock("div",ob,[e.createVNode(i,{onClick:l[3]||(l[3]=m=>e.unref(n).expiresAt=void 0),variant:"link"},{default:e.withCtx(()=>l[7]||(l[7]=[e.createTextVNode("Clear",-1)])),_:1,__:[7]})])):(e.openBlock(),e.createElementBlock("p",rb,"Not set - codes will never expire"))])])]),_:1,__:[8]})}}}),ab=e.defineComponent({__name:"Note",setup(t){const n=e.inject("newCoupon");return(o,r)=>{const l=e.resolveComponent("Textarea"),a=e.resolveComponent("Card");return e.openBlock(),e.createBlock(a,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",null,[r[1]||(r[1]=e.createElementVNode("h2",{class:"font-medium mb-2"},"Note",-1)),r[2]||(r[2]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-2"},"Used internally. It's a good idea to write down why you're creating this promo code.",-1)),e.createVNode(l,{modelValue:e.unref(n).note,"onUpdate:modelValue":r[0]||(r[0]=i=>e.unref(n).note=i)},null,8,["modelValue"])])]),_:1})}}}),ib={class:"relative"},sb={ref:"container",class:"flex flex-col gap-4 w-full max-w-5xl mx-auto"},ub={class:"flex justify-between items-center mb-4"},db={class:"w-full max-w-2xl"},cb={class:"flex items-center space-x-2"},fb={class:"flex items-center space-x-2"},pb={class:"flex justify-end w-full"},mb=e.defineComponent({__name:"Create",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l}=Z.useModulePermissions(),{navigateTo:a}=Z.useModuleRoute(),{getTimezone:i}=Z.useProjectSettings(),{log:u,logError:s}=Z.useLogs(),{setModuleBreadcrumbs:d}=Z.useBreadcrumbs(),{getModuleData:c,setModuleData:f}=Z.useModuleStorage();d([]);const m=Z.useFirebaseIntegration(r.config.project),p=e.ref(!1),g=e.ref({creationMode:"single",generationMode:"generate",quantity:1,prefix:"",codes:"",code:"",type:void 0,value:void 0,unlimitedUses:!1,startsAt:void 0,expiresAt:void 0,minOrderAmount:0,note:""}),v=e.ref([]);v.value=([n,o]=e.withAsyncContext(()=>c("promo-types")),n=await n,o(),n||[]),e.provide("newCoupon",g),e.provide("promoTypes",v);const h=()=>{var b,y,N,C;if(g.value.creationMode=="single"){if(g.value.code=(b=g.value.code)==null?void 0:b.trim().toUpperCase(),!g.value.code)return Me.error("Please enter a code"),!1}else if(g.value.generationMode=="generate"){if(g.value.prefix=(y=g.value.prefix)==null?void 0:y.trim().toUpperCase(),!g.value.prefix)return Me.error("Please enter a prefix"),!1;if(!g.value.quantity||g.value.quantity<1)return Me.error("Generate at least 1 code"),!1}else if(g.value.generationMode=="input"&&(g.value.codes=(N=g.value.codes)==null?void 0:N.trim().toUpperCase(),!g.value.codes||g.value.codes.length<1))return Me.error("Please enter some codes"),!1;return g.value.type?(C=v.value.find(V=>V.key===g.value.type))!=null&&C.hasValueField&&!g.value.value?(Me.error("Please enter a value"),!1):(g.value.creationMode==="multi"&&(g.value.unlimitedUses=!1),!0):(Me.error("Please select a type"),!1)},x=async()=>{try{if(!h())return;if(p.value=!0,g.value.creationMode=="single"){let b={code:g.value.code,type:g.value.type,value:g.value.value,minOrderAmount:g.value.minOrderAmount,usageLimit:g.value.unlimitedUses?0:1,usageCount:0,lastUsedAt:null,startsAt:g.value.startsAt?g.value.startsAt.toDate(i()):null,expiresAt:g.value.expiresAt?g.value.expiresAt.toDate(i()):null,disabled:!1,note:g.value.note,createdAt:new Date,updatedAt:new Date};const y=await m.add(r.config.promoCodeCollection,b);u("Promo code created",{id:y.id,code:y.code,note:y.note}),Me.success("Promo code created")}}catch{s("Failed to create promo code"),Me.error("Failed to create promo code")}finally{p.value=!1}};return(b,y)=>{const N=e.resolveComponent("Button"),C=e.resolveComponent("RadioGroupItem"),V=e.resolveComponent("Label"),_=e.resolveComponent("RadioGroup"),S=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",ib,[e.createElementVNode("div",sb,[e.createElementVNode("div",ub,[y[3]||(y[3]=e.createElementVNode("h1",{class:"text-2xl font-bold"},"New Promo Code",-1)),e.createVNode(N,{onClick:y[0]||(y[0]=R=>e.unref(a)("promo-codes")),variant:"outline",disabled:p.value},{default:e.withCtx(()=>[e.createVNode(e.unref(z.List),{class:"size-4"}),y[2]||(y[2]=e.createTextVNode(" View Promo Codes ",-1))]),_:1,__:[2]},8,["disabled"])]),e.createVNode(S,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",db,[y[6]||(y[6]=e.createElementVNode("h2",{class:"font-medium mb-4"},"Codes",-1)),e.createVNode(_,{modelValue:g.value.creationMode,"onUpdate:modelValue":y[1]||(y[1]=R=>g.value.creationMode=R),orientation:"horizontal",class:"mb-6"},{default:e.withCtx(()=>[e.createElementVNode("div",cb,[e.createVNode(C,{id:"creation_mode_single",value:"single"}),e.createVNode(V,{for:"creation_mode_single"},{default:e.withCtx(()=>y[4]||(y[4]=[e.createTextVNode("Create 1 code",-1)])),_:1,__:[4]})]),e.createElementVNode("div",fb,[e.createVNode(C,{id:"creation_mode_multi",value:"multi"}),e.createVNode(V,{for:"creation_mode_multi"},{default:e.withCtx(()=>y[5]||(y[5]=[e.createTextVNode("Create multiple codes",-1)])),_:1,__:[5]})])]),_:1},8,["modelValue"]),g.value.creationMode=="single"?(e.openBlock(),e.createBlock(gw,{key:0})):(e.openBlock(),e.createBlock(Vw,{key:1}))])]),_:1}),e.createVNode(Kw),e.createVNode(lb),e.createVNode(ab),e.createElementVNode("div",pb,[e.createVNode(N,{disabled:p.value,onClick:x},{default:e.withCtx(()=>[p.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),y[7]||(y[7]=e.createTextVNode(" Create Promo Code ",-1))]),_:1,__:[7]},8,["disabled"])])],512)])}}}),gb={class:"relative"},vb={ref:"container",class:"w-full max-w-5xl mx-auto"},hb={class:"flex justify-between items-center mb-4"},xb={class:"relative w-full max-w-sm items-center"},yb={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2 pointer-events-none"},Cb={class:"absolute end-0 inset-y-0 flex items-center justify-center px-2 pointer-events-none"},Vb=e.defineComponent({__name:"Find",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{hasPermission:l}=Z.useModulePermissions(),{navigateTo:a}=Z.useModuleRoute(),{getModuleData:i}=Z.useModuleStorage(),{setModuleBreadcrumbs:u}=Z.useBreadcrumbs();u([{text:"Promo codes list",href:"",disabled:!0}]);const s=e.ref([]);s.value=([n,o]=e.withAsyncContext(()=>i("promo-types")),n=await n,o(),n||[]);const d=e.ref([]),c=Z.useFirebaseIntegration(r.config.project);d.value=([n,o]=e.withAsyncContext(()=>c.find(r.config.promoCodeCollection)),n=await n,o(),n);const f=useRoute(),m=useRouter(),p=e.ref(f.query.q||""),g=e.ref(""),v=e.ref(!1),h=jf(async()=>{v.value=!0;let b=p.value.trim().toUpperCase();b.length===0?d.value=await c.find(r.config.promoCodeCollection):d.value=await c.find(r.config.promoCodeCollection,{filters:[{field:"code",operator:">=",value:b},{field:"code",operator:"<",value:b.slice(0,-1)+String.fromCharCode(b.slice(-1).charCodeAt(0)+1)}]}),g.value=p.value,v.value=!1},600);e.watch(p,async()=>{await h(),m.replace({query:{...f.query,q:p.value.trim()?p.value.trim():void 0}})});const x=b=>{const y=new Date;return b.expiresAt>y&&b.startsAt<y};return e.onMounted(async()=>{p.value.trim()&&await h()}),(b,y)=>{const N=e.resolveComponent("Button"),C=e.resolveComponent("Input"),V=e.resolveComponent("TableCaption"),_=e.resolveComponent("TableHead"),S=e.resolveComponent("TableRow"),R=e.resolveComponent("TableHeader"),$=e.resolveComponent("TableCell"),U=e.resolveComponent("TableBody"),P=e.resolveComponent("Table"),G=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",gb,[e.createElementVNode("div",vb,[e.createElementVNode("div",hb,[y[3]||(y[3]=e.createElementVNode("h1",{class:"text-2xl font-bold"},"Find Promo Codes",-1)),e.createVNode(N,{onClick:y[0]||(y[0]=k=>e.unref(a)("")),variant:"outline"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),y[2]||(y[2]=e.createTextVNode(" Create New Promo Code ",-1))]),_:1,__:[2]})]),e.createVNode(G,{class:"p-4"},{default:e.withCtx(()=>[e.createElementVNode("div",xb,[e.createVNode(C,{id:"search",type:"text",placeholder:"Search...",modelValue:p.value,"onUpdate:modelValue":y[1]||(y[1]=k=>p.value=k),class:"px-8"},null,8,["modelValue"]),e.createElementVNode("span",yb,[e.createVNode(e.unref(z.Search),{class:"size-4 text-muted-foreground"})]),e.createElementVNode("span",Cb,[v.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4 text-muted-foreground animate-spin"})):e.createCommentVNode("",!0)])]),e.createVNode(P,null,{default:e.withCtx(()=>{var k;return[g.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(V,{key:0},{default:e.withCtx(()=>y[4]||(y[4]=[e.createTextVNode("A list of your most recent promo codes.",-1)])),_:1,__:[4]})),g.value?(e.openBlock(),e.createBlock(V,{key:1},{default:e.withCtx(()=>[y[5]||(y[5]=e.createTextVNode("A list of your promo codes starting with ",-1)),e.createElementVNode("strong",null,'"'+e.toDisplayString(g.value)+'"',1),y[6]||(y[6]=e.createTextVNode(".",-1))]),_:1,__:[5,6]})):e.createCommentVNode("",!0),e.createVNode(R,null,{default:e.withCtx(()=>[e.createVNode(S,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>y[7]||(y[7]=[e.createTextVNode("Code",-1)])),_:1,__:[7]}),e.createVNode(_,null,{default:e.withCtx(()=>y[8]||(y[8]=[e.createTextVNode("Type",-1)])),_:1,__:[8]}),e.createVNode(_,null,{default:e.withCtx(()=>y[9]||(y[9]=[e.createTextVNode("Value",-1)])),_:1,__:[9]}),e.createVNode(_,null,{default:e.withCtx(()=>y[10]||(y[10]=[e.createTextVNode("Used",-1)])),_:1,__:[10]}),e.createVNode(_,null,{default:e.withCtx(()=>y[11]||(y[11]=[e.createTextVNode("Still eligible",-1)])),_:1,__:[11]}),e.createVNode(_,null,{default:e.withCtx(()=>y[12]||(y[12]=[e.createTextVNode("Action",-1)])),_:1,__:[12]})]),_:1})]),_:1}),((k=d.value)==null?void 0:k.length)>0?(e.openBlock(),e.createBlock(U,{key:2},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,B=>(e.openBlock(),e.createBlock(S,{key:B.id},{default:e.withCtx(()=>[e.createVNode($,{class:"font-medium uppercase"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.code),1)]),_:2},1024),e.createVNode($,null,{default:e.withCtx(()=>{var E;return[e.createTextVNode(e.toDisplayString((E=s.value.find(I=>I.key===B.type))==null?void 0:E.label),1)]}),_:2},1024),e.createVNode($,null,{default:e.withCtx(()=>{var E,I;return[e.createTextVNode(e.toDisplayString((E=s.value.find(X=>X.key===B.type))==null?void 0:E.valuePrefix)+" "+e.toDisplayString(B.value)+" "+e.toDisplayString((I=s.value.find(X=>X.key===B.type))==null?void 0:I.valueSuffix),1)]}),_:2},1024),e.createVNode($,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.usageLimit===1?B.usageCount>0?"Yes":"No":B.usageCount===0?"No":B.usageCount===1?"1 time":B.usageCount+" times"),1)]),_:2},1024),e.createVNode($,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x(B)?"Yes":"No"),1)]),_:2},1024),e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(N,{variant:"ghost",size:"icon",onClick:E=>e.unref(a)("/promo-codes/"+B.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Pencil),{class:"size-4"})]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})):e.createCommentVNode("",!0)]}),_:1})]),_:1})],512)])}}}),wb={class:"relative @container"},bb={key:0,class:"max-w-5xl mx-auto mt-4"},_b={class:"flex flex-row gap-4 justify-between mb-6"},Nb={class:"flex items-center"},kb={class:"text-lg font-semibold mx-2 uppercase"},Sb={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},Eb={key:1,class:"bg-gray-500 text-gray-950 px-2 py-1 rounded-lg text-xs"},Ab={class:"font-medium mb-2 uppercase"},Tb={class:"mb-6"},Bb={key:0},Db={key:1},Rb={key:2},Ib={class:"flex flex-wrap gap-12 mb-6"},Mb={key:0,class:"grid gap-2"},Pb={class:"flex items-center gap-2"},Fb={key:0,class:"text-lg"},Ob={key:1,class:"text-lg"},zb={key:1,class:"grid gap-2"},Lb={class:"flex items-center space-x-2"},Ub={class:"flex gap-4 mb-6"},jb={class:"flex flex-col"},$b={key:0,class:"-ml-2"},Hb={key:1,class:"text-xs text-muted-foreground mt-2"},qb={class:"flex flex-col"},Gb={key:0,class:"-ml-2"},Wb={key:1,class:"text-xs text-muted-foreground mt-2"},Xb={class:"flex justify-end gap-2 mt-6"},Yb=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},async setup(t){let n,o;const r=t,{log:l,logWarning:a,logError:i}=Z.useLogs(),{params:u,navigateTo:s}=Z.useModuleRoute(),{setModuleBreadcrumbs:d}=Z.useBreadcrumbs(),{getModuleData:c}=Z.useModuleStorage(),{confirm:f}=useConfirmation(),m=e.ref([]);m.value=([n,o]=e.withAsyncContext(()=>c("promo-types")),n=await n,o(),n||[]);const p=e.computed(()=>{var C;return((C=v.value)==null?void 0:C.usageCount)>0});d([{text:"Promo codes list",href:"/promo-codes",disabled:!0}]);const g=Z.useFirebaseIntegration(r.config.project),v=e.ref(null),h=e.ref(!1),x=e.computed(()=>m.value.find(C=>{var V;return C.key===((V=v.value)==null?void 0:V.type)})||null),b=new sl("en-US",{dateStyle:"long"}),y=async()=>{var C,V,_,S,R;v.value=await g.get(r.config.promoCodeCollection,u.value.promoCodeId),v.value.startsAt=Bl((V=(C=v.value)==null?void 0:C.startsAt)==null?void 0:V.replace(/\.\d{3}Z$/,"")),v.value.expiresAt=Bl((S=(_=v.value)==null?void 0:_.expiresAt)==null?void 0:S.replace(/\.\d{3}Z$/,"")),d([{text:"Promo codes list",href:"/promo-codes",disabled:!1},{text:((R=v.value)==null?void 0:R.code)||"",href:"",disabled:!0}])},N=async()=>{var V;await f(`Are you sure you want to delete the code "${(V=v.value)==null?void 0:V.code}"?`)&&(await g.remove(r.config.promoCodeCollection,u.value.promoCodeId),s("/promo-codes"))};return y(),(C,V)=>{const _=e.resolveComponent("Button"),S=e.resolveComponent("Label"),R=e.resolveComponent("Input"),$=e.resolveComponent("SelectValue"),U=e.resolveComponent("SelectTrigger"),P=e.resolveComponent("SelectItem"),G=e.resolveComponent("SelectGroup"),k=e.resolveComponent("SelectContent"),B=e.resolveComponent("Select"),E=e.resolveComponent("Switch"),I=e.resolveComponent("PopoverTrigger"),X=e.resolveComponent("Calendar"),le=e.resolveComponent("PopoverContent"),F=e.resolveComponent("Popover"),T=e.resolveComponent("Textarea"),w=e.resolveComponent("Loader2"),A=e.resolveComponent("CardContent"),L=e.resolveComponent("Card");return e.openBlock(),e.createElementBlock("div",wb,[v.value?(e.openBlock(),e.createElementBlock("div",bb,[e.createElementVNode("div",_b,[e.createElementVNode("div",Nb,[e.createVNode(_,{variant:"ghost",onClick:V[0]||(V[0]=J=>e.unref(s)("/promo-codes"))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(z.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",kb,e.toDisplayString(v.value.code),1),v.value.expiresAt>new Date?(e.openBlock(),e.createElementBlock("span",Sb,"Active")):(e.openBlock(),e.createElementBlock("span",Eb,"Expired"))])]),e.createVNode(L,null,{default:e.withCtx(()=>[e.createVNode(A,null,{default:e.withCtx(()=>{var J,O,j,ae,q,ie;return[e.createElementVNode("h3",Ab,e.toDisplayString(v.value.code),1),e.createElementVNode("p",Tb,[V[14]||(V[14]=e.createTextVNode(" This promo code has been created on ",-1)),e.createElementVNode("strong",null,e.toDisplayString(new Date(v.value.createdAt).toLocaleString()),1),V[15]||(V[15]=e.createTextVNode(".",-1)),V[16]||(V[16]=e.createElementVNode("br",null,null,-1)),v.value.usageCount===1?(e.openBlock(),e.createElementBlock("span",Bb,V[11]||(V[11]=[e.createTextVNode("It has been used ",-1),e.createElementVNode("strong",null,"1 time",-1),e.createTextVNode(", so you can't edit it.",-1)]))):v.value.usageCount>1?(e.openBlock(),e.createElementBlock("span",Db,[V[12]||(V[12]=e.createTextVNode("It has been used ",-1)),e.createElementVNode("strong",null,e.toDisplayString(v.value.usageCount)+" times",1),V[13]||(V[13]=e.createTextVNode(", so you can't edit it.",-1))])):(e.openBlock(),e.createElementBlock("span",Rb,"It has not been used yet."))]),e.createVNode(S,{for:"code",class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>V[17]||(V[17]=[e.createTextVNode("Promo Code",-1)])),_:1,__:[17]}),e.createVNode(R,{id:"code",modelValue:v.value.code,"onUpdate:modelValue":V[1]||(V[1]=te=>v.value.code=te),disabled:p.value,class:"mb-6 uppercase"},null,8,["modelValue","disabled"]),e.createElementVNode("div",null,[V[27]||(V[27]=e.createElementVNode("h3",{class:"font-medium mb-2"},"Value",-1)),e.createVNode(B,{modelValue:v.value.type,"onUpdate:modelValue":V[2]||(V[2]=te=>v.value.type=te)},{default:e.withCtx(()=>[e.createVNode(U,{class:"w-[200px] mb-4",disabled:p.value},{default:e.withCtx(()=>[e.createVNode($,{placeholder:"Select a promo type"})]),_:1},8,["disabled"]),e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(G,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,te=>(e.openBlock(),e.createBlock(P,{key:te.key,value:te.key},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(te.label),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",Ib,[(J=x.value)!=null&&J.hasValueField?(e.openBlock(),e.createElementBlock("div",Mb,[e.createVNode(S,{for:"discountValue",class:"text-muted-foreground"},{default:e.withCtx(()=>{var te;return[e.createTextVNode(e.toDisplayString(((te=x.value)==null?void 0:te.valueLabel)||"Value"),1)]}),_:1}),e.createElementVNode("div",Pb,[(O=x.value)!=null&&O.valuePrefix?(e.openBlock(),e.createElementBlock("span",Fb,e.toDisplayString((j=x.value)==null?void 0:j.valuePrefix),1)):e.createCommentVNode("",!0),e.createVNode(R,{modelValue:v.value.value,"onUpdate:modelValue":V[3]||(V[3]=te=>v.value.value=te),id:"discountValue",disabled:p.value},null,8,["modelValue","disabled"]),(ae=x.value)!=null&&ae.valueSuffix?(e.openBlock(),e.createElementBlock("span",Ob,e.toDisplayString((q=x.value)==null?void 0:q.valueSuffix),1)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(ie=x.value)!=null&&ie.allowUnlimitedUses?(e.openBlock(),e.createElementBlock("div",zb,[e.createVNode(S,{for:"unlimitedUses",class:"text-muted-foreground"},{default:e.withCtx(()=>V[18]||(V[18]=[e.createTextVNode("Unlimited Uses",-1)])),_:1,__:[18]}),e.createElementVNode("div",Lb,[e.createVNode(E,{id:"unlimitedUses",modelValue:v.value.unlimitedUses,"onUpdate:modelValue":V[4]||(V[4]=te=>v.value.unlimitedUses=te),disabled:p.value},null,8,["modelValue","disabled"]),e.createVNode(S,{for:"unlimitedUses"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.value.unlimitedUses?"Yes":"No"),1)]),_:1})])])):e.createCommentVNode("",!0)]),V[28]||(V[28]=e.createElementVNode("h3",{class:"font-medium"},"Availability",-1)),V[29]||(V[29]=e.createElementVNode("p",{class:"text-sm text-muted-foreground mb-4"},"When will this code be available?",-1)),e.createElementVNode("div",Ub,[e.createElementVNode("div",jb,[e.createVNode(S,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>V[19]||(V[19]=[e.createTextVNode("Available from",-1)])),_:1,__:[19]}),e.createVNode(F,null,{default:e.withCtx(()=>[e.createVNode(I,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(_,{variant:"outline",class:e.normalizeClass(e.unref(xt)("w-[280px] justify-start text-left font-normal",!v.value.startsAt&&"text-muted-foreground")),disabled:p.value},{default:e.withCtx(()=>[e.createVNode(e.unref(z.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(v.value.startsAt?e.unref(b).format(v.value.startsAt.toDate(e.unref(gt)())):"Pick a date"),1)]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(le,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(X,{modelValue:v.value.startsAt,"onUpdate:modelValue":V[5]||(V[5]=te=>v.value.startsAt=te),"initial-focus":"",minValue:e.unref(Ja)()},null,8,["modelValue","minValue"])]),_:1})]),_:1}),v.value.startsAt?(e.openBlock(),e.createElementBlock("div",$b,[p.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(_,{key:0,onClick:V[6]||(V[6]=te=>v.value.startsAt=void 0),variant:"link"},{default:e.withCtx(()=>V[20]||(V[20]=[e.createTextVNode("Clear",-1)])),_:1,__:[20]}))])):(e.openBlock(),e.createElementBlock("p",Hb,"Not set - codes will be available immediately"))]),e.createElementVNode("div",qb,[e.createVNode(S,{class:"text-muted-foreground mb-2"},{default:e.withCtx(()=>V[21]||(V[21]=[e.createTextVNode("Until",-1)])),_:1,__:[21]}),e.createVNode(F,null,{default:e.withCtx(()=>[e.createVNode(I,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(_,{variant:"outline",class:e.normalizeClass(e.unref(xt)("w-[280px] justify-start text-left font-normal",!v.value.expiresAt&&"text-muted-foreground")),disabled:p.value},{default:e.withCtx(()=>[e.createVNode(e.unref(z.CalendarIcon),{class:"mr-2 h-4 w-4"}),e.createTextVNode(" "+e.toDisplayString(v.value.expiresAt?e.unref(b).format(v.value.expiresAt.toDate(e.unref(gt)())):"Pick a date"),1)]),_:1},8,["class","disabled"])]),_:1}),e.createVNode(le,{class:"w-auto p-0"},{default:e.withCtx(()=>[e.createVNode(X,{modelValue:v.value.expiresAt,"onUpdate:modelValue":V[7]||(V[7]=te=>v.value.expiresAt=te),"initial-focus":"",minValue:v.value.startsAt},null,8,["modelValue","minValue"])]),_:1})]),_:1}),v.value.expiresAt?(e.openBlock(),e.createElementBlock("div",Gb,[p.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(_,{key:0,onClick:V[8]||(V[8]=te=>v.value.expiresAt=void 0),variant:"link"},{default:e.withCtx(()=>V[22]||(V[22]=[e.createTextVNode("Clear",-1)])),_:1,__:[22]}))])):(e.openBlock(),e.createElementBlock("p",Wb,"Not set - codes will never expire"))])]),e.createVNode(S,{for:"note",class:"text-lg font-medium"},{default:e.withCtx(()=>V[23]||(V[23]=[e.createTextVNode("Note",-1)])),_:1,__:[23]}),e.createVNode(S,{for:"note",class:"font-normal text-sm text-muted-foreground mb-2"},{default:e.withCtx(()=>V[24]||(V[24]=[e.createTextVNode("Internal note, you can always edit this later",-1)])),_:1,__:[24]}),e.createVNode(T,{modelValue:v.value.note,"onUpdate:modelValue":V[9]||(V[9]=te=>v.value.note=te),id:"note"},null,8,["modelValue"]),e.createElementVNode("div",Xb,[e.createVNode(_,{variant:"destructive",onClick:V[10]||(V[10]=te=>N()),disabled:h.value},{default:e.withCtx(()=>V[25]||(V[25]=[e.createTextVNode(" Delete Code ",-1)])),_:1,__:[25]},8,["disabled"]),e.createVNode(_,{disabled:h.value},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(w,{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),V[26]||(V[26]=e.createTextVNode(" Update Code ",-1))]),_:1,__:[26]},8,["disabled"])])])]}),_:1})]),_:1}),e.createTextVNode(" "+e.toDisplayString(v.value),1)])):e.createCommentVNode("",!0)])}}}),Zb=[{path:"",component:mb},{path:"/promo-codes",component:Vb},{path:"/promo-codes/:promoCodeId",component:Yb}],Kb=[{key:"create-promo-codes",name:"Create promo codes",description:"Team member can create promo codes"},{key:"view-promo-codes",name:"View promo codes",description:"Team member can view promo codes"},{key:"delete-promo-codes",name:"Delete promo codes",description:"Team member can delete promo codes"}],Jb={component:fw,metadata:pw,config:mw,routes:Zb,permissions:Kb},Qb=e.defineComponent({__name:"index",props:{config:{type:Object,required:!0},routes:{type:Array,required:!0}},setup(t){const{pageComponent:n}=Z.useModuleRoute();return(o,r)=>(e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)),{config:t.config},null,8,["config"]))]))}}),e_={name:"Product Collections",description:"Manage product collections",icon:"mdi-table",version:"1.0.0"},t_={project:{label:"Project",type:"resource",accept:["FIREBASE"]},collectionsCollection:{label:"Collections Collection",type:"input",default:"public/e-commerce:collections"},allowedMediaSources:{label:"Allowed Media Sources",type:"mediaSource",multiple:!0},defaultUploadMediaSource:{label:"Default Upload Media Source",type:"mediaSource",multiple:!1}},n_={class:"flex items-center gap-2"},o_={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},r_={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},l_=e.defineComponent({__name:"ListView",props:{collections:{type:Array,required:!0}},setup(t){const{navigateTo:n}=Z.useModuleRoute(),{hasPermission:o}=Z.useModulePermissions();return(r,l)=>{const a=e.resolveComponent("TableHead"),i=e.resolveComponent("TableRow"),u=e.resolveComponent("TableHeader"),s=e.resolveComponent("AvatarImage"),d=e.resolveComponent("AvatarFallback"),c=e.resolveComponent("Avatar"),f=e.resolveComponent("TableCell"),m=e.resolveComponent("TableBody"),p=e.resolveComponent("Table");return e.openBlock(),e.createBlock(p,null,{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(i,null,{default:e.withCtx(()=>[e.createVNode(a,{class:"w-[100px]"},{default:e.withCtx(()=>l[0]||(l[0]=[e.createTextVNode(" Title ",-1)])),_:1,__:[0]}),e.createVNode(a,null,{default:e.withCtx(()=>l[1]||(l[1]=[e.createTextVNode("Status",-1)])),_:1,__:[1]}),e.createVNode(a,null,{default:e.withCtx(()=>l[2]||(l[2]=[e.createTextVNode(" Type",-1)])),_:1,__:[2]}),e.createVNode(a,{class:"text-right"},{default:e.withCtx(()=>l[3]||(l[3]=[e.createTextVNode(" Actions ",-1)])),_:1,__:[3]})]),_:1})]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.collections,g=>(e.openBlock(),e.createBlock(i,{key:g.id,onClick:v=>e.unref(o)("view-product-detail")?e.unref(n)(g.id):null,class:e.normalizeClass({"cursor-pointer":e.unref(o)("view-product-detail")})},{default:e.withCtx(()=>[e.createVNode(f,{class:"font-medium"},{default:e.withCtx(()=>[e.createElementVNode("div",n_,[g.thumbnail?(e.openBlock(),e.createBlock(c,{key:0,class:"size-12 rounded-xl"},{default:e.withCtx(()=>[e.createVNode(s,{src:g.thumbnail,class:"object-cover"},null,8,["src"]),e.createVNode(d,{class:"rounded-xl"})]),_:2},1024)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(g.title),1)])]),_:2},1024),e.createVNode(f,null,{default:e.withCtx(()=>[g.status==="published"?(e.openBlock(),e.createElementBlock("span",o_,"Published")):g.status==="draft"?(e.openBlock(),e.createElementBlock("span",r_,"Draft")):e.createCommentVNode("",!0)]),_:2},1024),e.createVNode(f,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.type),1)]),_:2},1024),e.createVNode(f,{class:"text-right"},{default:e.withCtx(()=>l[4]||(l[4]=[e.createTextVNode(" EDIT ",-1)])),_:1,__:[4]})]),_:2},1032,["onClick","class"]))),128))]),_:1})]),_:1})}}}),a_={class:"relative"},i_={ref:"container",class:"flex items-center justify-between gap-4 w-full mt-12 mb-8"},s_={class:"flex items-center gap-4"},u_={class:"text-lg whitespace-nowrap"},d_={class:"relative w-full max-w-sm items-center"},c_={class:"absolute start-0 inset-y-0 flex items-center justify-center px-2"},f_={class:"flex items-center gap-4"},p_=e.defineComponent({__name:"Overview",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o}=Z.useModulePermissions(),{navigateTo:r}=Z.useModuleRoute(),{log:l,logWarning:a,logError:i}=Z.useLogs(),{setModuleBreadcrumbs:u}=Z.useBreadcrumbs();u([]);const s=Z.useFirebaseIntegration(n.config.project),d=e.ref([]),c=async()=>{const f=async()=>{if(!n.config.collectionsCollection)return[];const m=n.config.collectionsCollection.split(":");if(m.length!==2)return[];const p=await s.get(m[0]);return(p==null?void 0:p[m[1]])||[]};return d.value=await f(),d.value};return e.onMounted(()=>{c()}),(f,m)=>{var v;const p=e.resolveComponent("Input"),g=e.resolveComponent("Button");return e.openBlock(),e.createElementBlock("div",a_,[e.createElementVNode("div",i_,[e.createElementVNode("div",s_,[e.createElementVNode("p",u_,e.toDisplayString((v=d.value)==null?void 0:v.length)+" collections",1),e.createElementVNode("div",d_,[e.createVNode(p,{id:"search",type:"text",placeholder:"Search...",class:"pl-8"}),e.createElementVNode("span",c_,[e.createVNode(e.unref(z.Search),{class:"size-4 text-muted-foreground"})])])]),e.createElementVNode("div",f_,[e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(g,{key:0,variant:"outline",onClick:m[0]||(m[0]=h=>e.unref(r)("new"))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Plus),{class:"size-4"}),m[1]||(m[1]=e.createTextVNode(" New Collection ",-1))]),_:1,__:[1]})):e.createCommentVNode("",!0)])],512),e.createVNode(l_,{collections:d.value},null,8,["collections"])])}}}),m_={class:"flex flex-col gap-4"},g_={class:"flex flex-col gap-2"},v_={key:0,class:"text-red-500 text-sm mt-1"},h_={class:"flex flex-col gap-4"},x_={class:"flex flex-col gap-2"},y_={key:0,class:"text-red-500 text-sm mt-1"},C_={class:"flex flex-col gap-4"},V_={class:"flex flex-col gap-2"},w_={class:"flex items-center gap-2 mb-2"},b_={class:"flex items-center gap-2"},__=["src"],N_={key:0,class:"text-red-500 text-sm mt-1"},k_=e.defineComponent({__name:"Main",setup(t){const n=e.inject("sources");e.inject("defaultSource");const{errors:o}=Nt(),{value:r}=Ne("title"),{value:l}=Ne("description"),{value:a}=Ne("thumbnail"),i=u=>{a.value=u};return(u,s)=>{const d=e.resolveComponent("Label"),c=e.resolveComponent("Input"),f=e.resolveComponent("Textarea"),m=e.resolveComponent("Button"),p=e.resolveComponent("MediaPickerDialog"),g=e.resolveComponent("CardContent"),v=e.resolveComponent("Card");return e.openBlock(),e.createBlock(v,null,{default:e.withCtx(()=>[e.createVNode(g,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[e.createElementVNode("div",m_,[e.createElementVNode("div",g_,[e.createVNode(d,{for:"title",class:"text-sm mb-2"},{default:e.withCtx(()=>s[5]||(s[5]=[e.createTextVNode("Title",-1)])),_:1,__:[5]}),e.createVNode(c,{type:"text",id:"title",placeholder:"Summer collection",modelValue:e.unref(r),"onUpdate:modelValue":s[0]||(s[0]=h=>e.isRef(r)?r.value=h:null)},null,8,["modelValue"]),e.unref(o).title?(e.openBlock(),e.createElementBlock("p",v_,e.toDisplayString(e.unref(o).title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",h_,[e.createElementVNode("div",x_,[e.createVNode(d,{for:"description",class:"text-sm mb-2"},{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("Description",-1)])),_:1,__:[6]}),e.createVNode(f,{id:"description",placeholder:"Fresh, vibrant, and bold. The perfect collection for the summer season.",modelValue:e.unref(l),"onUpdate:modelValue":s[1]||(s[1]=h=>e.isRef(l)?l.value=h:null)},null,8,["modelValue"]),e.unref(o).description?(e.openBlock(),e.createElementBlock("p",y_,e.toDisplayString(e.unref(o).description),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",C_,[e.createElementVNode("div",V_,[e.createElementVNode("div",w_,[e.createVNode(d,{for:"media",class:"text-sm"},{default:e.withCtx(()=>s[7]||(s[7]=[e.createTextVNode("Thumbnail",-1)])),_:1,__:[7]}),e.unref(a)?(e.openBlock(),e.createBlock(m,{key:0,variant:"ghost",size:"icon",onClick:s[2]||(s[2]=h=>a.value="")},{default:e.withCtx(()=>[e.createVNode(e.unref(z.X),{class:"size-4"})]),_:1})):e.createCommentVNode("",!0)]),e.createElementVNode("div",b_,[e.createVNode(p,{sources:e.unref(n),"max-files":1,"initial-value":e.unref(a)?[e.unref(a)]:[],onSubmit:s[4]||(s[4]=h=>i(h))},{default:e.withCtx(()=>[e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(()=>{},["stop"])),tabindex:"-1",class:"cursor-pointer block"},[e.unref(a)?(e.openBlock(),e.createElementBlock("img",{key:1,src:e.unref(a),class:"size-42 rounded-md object-cover",draggable:"false"},null,8,__)):(e.openBlock(),e.createBlock(m,{key:0,variant:"outline",class:"size-42 border-dashed cursor-pointer"},{default:e.withCtx(()=>[e.createVNode(e.unref(z.ImagePlus))]),_:1}))])]),_:1},8,["sources","initial-value"]),e.unref(o).thumbnail?(e.openBlock(),e.createElementBlock("p",N_,e.toDisplayString(e.unref(o).thumbnail),1)):e.createCommentVNode("",!0)])])])]),_:1})]),_:1})}}}),S_={class:"bg-white dark:bg-gray-50 border-4 dark:border-gray-600 p-4 rounded-lg mb-4"},E_={class:"flex items-center gap-2 mb-2"},A_=["src"],T_={class:"text-[#1a0dab] text-lg"},B_={class:"text-[#006621] text-[13px]"},D_={class:"text-[#545454] text-[13px]"},R_={class:"flex flex-col gap-4 mb-4"},I_={class:"flex flex-col"},M_={key:0,class:"text-red-500 text-sm mt-1"},P_={class:"flex flex-col gap-4 mb-4"},F_={class:"flex flex-col"},O_={key:0,class:"text-red-500 text-sm mt-1"},z_={class:"flex flex-col gap-4"},L_={class:"flex flex-col"},U_={key:0,class:"text-red-500 text-sm mt-1"},j_={key:1,class:"text-[#545454] text-[13px]"},$_={key:2,class:"text-orange-500 text-[13px]"},H_=e.defineComponent({__name:"SEO",setup(t){const{errors:n}=Nt(),{value:o}=Ne("title"),{value:r}=Ne("slug"),{value:l}=Ne("seo");function a(i){return i?i.normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,"-"):""}return e.watch(o,(i,u)=>{(!r.value||a(u)===r.value)&&(r.value=a(i)),(!l.value.title||u===l.value.title)&&(l.value.title=i)}),(i,u)=>{const s=e.resolveComponent("Label"),d=e.resolveComponent("Input"),c=e.resolveComponent("Textarea"),f=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>{var p,g,v,h;return[u[7]||(u[7]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Search engine listing",-1)),e.createElementVNode("div",S_,[e.createElementVNode("div",E_,[e.createElementVNode("img",{src:e.unref($i),alt:"Google",class:"w-16 pointer-events-none",draggable:"false"},null,8,A_),u[3]||(u[3]=e.createElementVNode("span",{class:"text-[#4186f5] font-medium text-xs"},"Preview",-1))]),e.createElementVNode("p",T_,e.toDisplayString(e.unref(l).title),1),e.createElementVNode("p",B_,e.toDisplayString(e.unref(r)),1),e.createElementVNode("p",D_,e.toDisplayString((p=e.unref(l).description)==null?void 0:p.slice(0,155))+e.toDisplayString(((g=e.unref(l).description)==null?void 0:g.length)>155?" ...":""),1)]),e.createElementVNode("div",R_,[e.createElementVNode("div",I_,[e.createVNode(s,{for:"slug",class:"text-sm mb-2"},{default:e.withCtx(()=>u[4]||(u[4]=[e.createTextVNode("Slug",-1)])),_:1,__:[4]}),e.createVNode(d,{id:"slug",placeholder:"t-shirt-with-red-heart",modelValue:e.unref(r),"onUpdate:modelValue":u[0]||(u[0]=x=>e.isRef(r)?r.value=x:null)},null,8,["modelValue"]),e.unref(n).slug?(e.openBlock(),e.createElementBlock("p",M_,e.toDisplayString(e.unref(n).slug),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",P_,[e.createElementVNode("div",F_,[e.createVNode(s,{for:"meta-title",class:"text-sm mb-2"},{default:e.withCtx(()=>u[5]||(u[5]=[e.createTextVNode("Title",-1)])),_:1,__:[5]}),e.createVNode(d,{id:"meta-title",placeholder:"T-shirt with red heart",modelValue:e.unref(l).title,"onUpdate:modelValue":u[1]||(u[1]=x=>e.unref(l).title=x)},null,8,["modelValue"]),(v=e.unref(n).seo)!=null&&v.title?(e.openBlock(),e.createElementBlock("p",O_,e.toDisplayString(e.unref(n).seo.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",z_,[e.createElementVNode("div",L_,[e.createVNode(s,{for:"meta-description",class:"text-sm mb-2"},{default:e.withCtx(()=>u[6]||(u[6]=[e.createTextVNode("Description",-1)])),_:1,__:[6]}),e.createVNode(c,{id:"meta-description",placeholder:"Lovely T-shirt featuring a red heart",modelValue:e.unref(l).description,"onUpdate:modelValue":u[2]||(u[2]=x=>e.unref(l).description=x),class:"mb-1 resize-none"},null,8,["modelValue"]),(h=e.unref(n).seo)!=null&&h.description?(e.openBlock(),e.createElementBlock("p",U_,e.toDisplayString(e.unref(n).seo.description),1)):e.unref(l).description.length<155?(e.openBlock(),e.createElementBlock("p",j_,e.toDisplayString(e.unref(l).description.length)+" characters",1)):(e.openBlock(),e.createElementBlock("p",$_,"Please keep it under 155 characters"))])])]}),_:1,__:[7]})]),_:1})}}}),q_={class:"flex items-center gap-2"},G_={key:0,class:"size-3 rounded-full bg-green-500"},W_={key:1,class:"size-3 rounded-full bg-blue-500"},X_=e.defineComponent({__name:"Status",setup(t){const{errors:n}=Nt(),{value:o}=Ne("status");return(r,l)=>{const a=e.resolveComponent("SelectValue"),i=e.resolveComponent("SelectTrigger"),u=e.resolveComponent("SelectItem"),s=e.resolveComponent("SelectGroup"),d=e.resolveComponent("SelectContent"),c=e.resolveComponent("Select"),f=e.resolveComponent("CardContent"),m=e.resolveComponent("Card");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(()=>[l[3]||(l[3]=e.createElementVNode("p",{class:"text-md font-semibold mb-2"},"Status",-1)),e.createVNode(c,{modelValue:e.unref(o),"onUpdate:modelValue":l[0]||(l[0]=p=>e.isRef(o)?o.value=p:null),class:"w-full"},{default:e.withCtx(()=>[e.createVNode(i,{class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("div",q_,[e.unref(o)==="published"?(e.openBlock(),e.createElementBlock("span",G_)):e.unref(o)==="draft"?(e.openBlock(),e.createElementBlock("span",W_)):e.createCommentVNode("",!0),e.createVNode(a,{placeholder:"Status"})])]),_:1}),e.createVNode(d,null,{default:e.withCtx(()=>[e.createVNode(s,null,{default:e.withCtx(()=>[e.createVNode(u,{value:"published"},{default:e.withCtx(()=>l[1]||(l[1]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-green-500"},null,-1),e.createTextVNode(" Published ",-1)])),_:1,__:[1]}),e.createVNode(u,{value:"draft"},{default:e.withCtx(()=>l[2]||(l[2]=[e.createElementVNode("span",{class:"size-3 rounded-full bg-blue-500"},null,-1),e.createTextVNode(" Draft ",-1)])),_:1,__:[2]})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1,__:[3]})]),_:1})}}}),Y_={class:"relative @container"},Z_={class:"flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6"},K_={class:"flex items-center"},J_={class:"text-lg font-semibold mx-2"},Q_={key:0,class:"bg-green-500 text-green-950 px-2 py-1 rounded-lg text-xs"},e0={key:1,class:"bg-blue-500 text-blue-950 px-2 py-1 rounded-lg text-xs"},t0={class:"flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24"},n0={class:"flex flex-col gap-4 w-full @3xl:w-2/3"},o0={class:"flex flex-col gap-4 w-full @3xl:w-1/3"},r0={key:0,class:"fixed bottom-4 left-0 md:left-12 right-0 min-w-xs max-w-5xl w-[calc(100%-2rem)] md:w-[calc(100%-5rem)] xl:w-[calc(100%-2rem)] h-16 border border-white/10 backdrop-blur-sm border-t border-border flex items-center justify-center px-4 mx-auto z-[9999] rounded-xl overflow-hidden shadow",style:{background:"radial-gradient(#00000080, transparent)"}},l0={class:"w-full max-w-5xl flex items-center justify-end mx-auto"},a0={key:1,class:"inline-flex items-center gap-1"},i0={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},s0={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},u0={key:1,class:"inline-flex items-center gap-1"},d0={key:0,class:"size-3 rounded-full bg-green-500 translate-y-[1px]"},c0={key:1,class:"size-3 rounded-full bg-blue-500 translate-y-[1px]"},La=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},setup(t){const n=t,{hasPermission:o,hasPermissionOR:r}=Z.useModulePermissions(),{params:l,navigateTo:a}=Z.useModuleRoute(),{confirm:i}=Z.useConfirmation(),{setModuleBreadcrumbs:u}=Z.useBreadcrumbs(),s=Z.useFirebaseIntegration(n.config.project);e.provide("sources",n.config.allowedMediaSources),e.provide("defaultSource",n.config.defaultUploadMediaSource);const d=e.computed(()=>!l.value.collectionId||l.value.collectionId==="new"),c=e.ref(!1),f=Yi(Lt({id:_e().optional(),title:_e().min(1,"Title is required"),type:_e(),description:_e().optional(),thumbnail:_e().optional(),slug:_e(),seo:Lt({title:_e().optional(),description:_e().optional()}).optional(),status:_e()})),{handleSubmit:m,errors:p,values:g,setValues:v}=Ti({validationSchema:f,initialValues:{status:"draft",type:"manual",seo:{title:"",description:""}}}),h=m(async V=>{c.value=!0;let _=await x()||[];if(d.value){let S=JSON.parse(JSON.stringify(V));if(S.id=crypto.randomUUID(),await C(S.slug)){Me.error("Collection with this slug already exists"),c.value=!1;return}const R=[..._,S],$=n.config.collectionsCollection.split(":");console.log("collectionParts",$[0],{[$[1]]:R}),await s.update($[0],null,{[$[1]]:R}),a(S.id),Me.success("Collection created")}else{let S=JSON.parse(JSON.stringify(V));const R=_.map(U=>U.id===l.value.collectionId?S:U),$=n.config.collectionsCollection.split(":");await s.update($[0],null,{[$[1]]:R}),a(`${l.value.collectionId}`),Me.success("Collection updated")}c.value=!1}),x=async()=>{if(!n.config.collectionsCollection)return[];const V=n.config.collectionsCollection.split(":");if(V.length!==2)return[];const _=await s.get(V[0]);return(_==null?void 0:_[V[1]])||[]},b=async()=>{const _=(await x()).find(S=>S.id===l.value.collectionId);v(_),u([{text:_.title,href:`/collections/${l.value.collectionId}`,disabled:!0}])},y=async()=>{try{let V={...g},_=V.slug+"-copy",S=2;for(;await C(_);)_=V.slug+"-copy-"+S,S++;V.id=crypto.randomUUID(),V.slug=_,V.status="draft",V.title=V.title+" (copy)";const $=[...await x()||[],V],U=n.config.collectionsCollection.split(":");await s.update(U[0],null,{[U[1]]:$}),a(V.id),Me.success("Collection duplicated")}catch{Me.error("Failed to duplicate collection")}},N=async()=>{if(await i("Are you sure you want to delete this collection?"))try{const _=await x()||[];if(_.length===0||!l.value.collectionId)throw new Error("Error loading values");const S=_.filter($=>$.id!==l.value.collectionId),R=n.config.collectionsCollection.split(":");await s.update(R[0],null,{[R[1]]:S}),a(""),Me.success("Collection deleted")}catch{Me.error("Failed to delete collection")}},C=async V=>!!(await x()||[]).find(S=>S.slug===V);return e.onMounted(()=>{d.value?u([{text:"New Collection",href:"/new",disabled:!0}]):b()}),(V,_)=>{const S=e.resolveComponent("Button"),R=e.resolveComponent("MenubarTrigger"),$=e.resolveComponent("MenubarMenu"),U=e.resolveComponent("MenubarShortcut"),P=e.resolveComponent("MenubarItem"),G=e.resolveComponent("MenubarSeparator"),k=e.resolveComponent("MenubarContent"),B=e.resolveComponent("Menubar");return e.openBlock(),e.createElementBlock("div",Y_,[e.createElementVNode("div",Z_,[e.createElementVNode("div",K_,[e.createVNode(S,{variant:"ghost",onClick:_[0]||(_[0]=E=>e.unref(a)(""))},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(z.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",J_,e.toDisplayString(d.value?"New Collection":e.unref(g).title),1),e.unref(g).status==="published"?(e.openBlock(),e.createElementBlock("span",Q_,"Published")):e.unref(g).status==="draft"?(e.openBlock(),e.createElementBlock("span",e0,"Draft")):e.createCommentVNode("",!0)]),d.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(B,{key:0,class:"bg-sidebar"},{default:e.withCtx(()=>[e.unref(o)("create-collection")?(e.openBlock(),e.createBlock($,{key:0},{default:e.withCtx(()=>[e.createVNode(R,{onClick:y},{default:e.withCtx(()=>_[1]||(_[1]=[e.createTextVNode("Duplicate",-1)])),_:1,__:[1]})]),_:1})):e.createCommentVNode("",!0),e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>_[2]||(_[2]=[e.createTextVNode("Preview",-1)])),_:1,__:[2]})]),_:1}),e.createVNode($,null,{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>_[3]||(_[3]=[e.createTextVNode("Share",-1)])),_:1,__:[3]}),e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(P,null,{default:e.withCtx(()=>[_[5]||(_[5]=e.createTextVNode(" New Tab ",-1)),e.createVNode(U,null,{default:e.withCtx(()=>_[4]||(_[4]=[e.createTextVNode("⌘T",-1)])),_:1,__:[4]})]),_:1,__:[5]}),e.createVNode(P,null,{default:e.withCtx(()=>_[6]||(_[6]=[e.createTextVNode("New Window",-1)])),_:1,__:[6]}),e.createVNode(G),e.createVNode(P,null,{default:e.withCtx(()=>_[7]||(_[7]=[e.createTextVNode("Share",-1)])),_:1,__:[7]}),e.createVNode(G),e.createVNode(P,null,{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode("Print",-1)])),_:1,__:[8]})]),_:1})]),_:1}),e.unref(r)("edit-collection","delete-collection")?(e.openBlock(),e.createBlock($,{key:1},{default:e.withCtx(()=>[e.createVNode(R,null,{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("More actions",-1)])),_:1,__:[9]}),e.createVNode(k,null,{default:e.withCtx(()=>[e.unref(o)("delete-collection")?(e.openBlock(),e.createBlock(P,{key:0,variant:"destructive",onClick:N},{default:e.withCtx(()=>[e.createVNode(e.unref(z.Trash),{class:"size-4"}),_[10]||(_[10]=e.createTextVNode(" Delete collection ",-1))]),_:1,__:[10]})):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}))]),e.createElementVNode("div",t0,[e.createElementVNode("div",n0,[e.createVNode(k_),e.createVNode(H_)]),e.createElementVNode("div",o0,[e.createVNode(X_)])]),e.unref(r)("create-collection","edit-collection")?(e.openBlock(),e.createElementBlock("div",r0,[e.createElementVNode("div",l0,[d.value&&e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(S,{key:0,onClick:e.unref(h),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Creating":"Create")+" new collection ",1),e.unref(g).status?(e.openBlock(),e.createElementBlock("span",a0,[_[11]||(_[11]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(g).status==="published"?(e.openBlock(),e.createElementBlock("span",i0)):e.unref(g).status==="draft"?(e.openBlock(),e.createElementBlock("span",s0)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(g).status),1),_[12]||(_[12]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.unref(o)("edit-collection")?(e.openBlock(),e.createBlock(S,{key:1,onClick:e.unref(h),disabled:c.value},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(z.Loader2),{key:0,class:"size-4"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.value?"Saving":"Save")+" changes ",1),e.unref(g).status?(e.openBlock(),e.createElementBlock("span",u0,[_[13]||(_[13]=e.createTextVNode(e.toDisplayString("(")+" ",-1)),e.unref(g).status==="published"?(e.openBlock(),e.createElementBlock("span",d0)):e.unref(g).status==="draft"?(e.openBlock(),e.createElementBlock("span",c0)):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(e.unref(g).status),1),_[14]||(_[14]=e.createTextVNode(" "+e.toDisplayString(")"),-1))])):e.createCommentVNode("",!0)]),_:1},8,["onClick","disabled"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)])}}}),f0=[{path:"",component:p_},{path:"/:collectionId",component:La},{path:"/new",component:La}],p0=[{key:"create-product-collection",name:"Create product collection",description:"Team member can create a new product collection"},{key:"edit-product-collection",name:"Edit product collection",description:"Team member can edit a product collection"},{key:"delete-product-collection",name:"Delete product collection",description:"Team member can delete a product collection"}],m0={component:Qb,metadata:e_,config:t_,routes:f0,permissions:p0};exports.custom=cw;exports.productCollections=m0;exports.products=rx;exports.promoCodes=Jb;exports.table=hf;
|