@oneclick.dev/cms-core-modules 0.0.123 → 0.0.125
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/AppointmentListTable-CWzbwqR-.js +1 -0
- package/dist/AppointmentListTable-DoZuBstk.mjs +270 -0
- package/dist/ContentEditor-BlNbqkAz.js +324 -0
- package/dist/{ContentEditor-MDGolnIP.mjs → ContentEditor-D754iLJS.mjs} +7985 -26820
- package/dist/{Detail-Dk8E6_uF.mjs → Detail-BOxWQ1QQ.mjs} +15 -14
- package/dist/{Detail-Cn9Bk0u0.mjs → Detail-BfKW0uZE.mjs} +26 -25
- package/dist/Detail-DFVu2F38.mjs +11 -0
- package/dist/Detail-DJea_fCd.js +1 -0
- package/dist/Detail-DPJacXfm.js +1 -0
- package/dist/Detail-DSLZ7_bM.js +1 -0
- package/dist/Detail-DUGThL9Y.js +1 -0
- package/dist/{Detail-B_scnidb.mjs → Detail-D_LlEeHu.mjs} +35 -34
- package/dist/Editor-D4evcdhv.mjs +768 -0
- package/dist/Editor-gLLtuJbY.js +1 -0
- package/dist/FormStatusBadge.vue_vue_type_script_setup_true_lang-BjKpsqT9.js +1 -0
- package/dist/FormStatusBadge.vue_vue_type_script_setup_true_lang-D5v5AhLe.mjs +76 -0
- package/dist/Knowledge-B66vxz--.js +1 -0
- package/dist/Knowledge-BnMTTuJ7.mjs +742 -0
- package/dist/Overview-0hFXiuYo.js +1 -0
- package/dist/Overview-BE4uYPx0.mjs +745 -0
- package/dist/Overview-BTx5LF4J.js +1 -0
- package/dist/Overview-CCu2PHai.mjs +289 -0
- package/dist/Overview-CQRpFhbJ.mjs +286 -0
- package/dist/Overview-CTs7sX4d.js +1 -0
- package/dist/Overview-Cj89XXKN.js +1 -0
- package/dist/Overview-D2u-leeO.js +1 -0
- package/dist/Overview-D_2wozCG.mjs +1733 -0
- package/dist/Overview-D_c18mbR.mjs +248 -0
- package/dist/Overview-Dffo-zH4.mjs +11 -0
- package/dist/Overview-g4Rcj245.js +1 -0
- package/dist/{TableCalculationWidget-CrqcLGfU.mjs → TableCalculationWidget-B_LFoOYm.mjs} +3 -3
- package/dist/{TableCalculationWidget-CkQPrVUd.js → TableCalculationWidget-CahOIcbk.js} +1 -1
- package/dist/TableDataWidget-BwqWFH4A.js +1 -0
- package/dist/TableDataWidget-RsVxcDsL.mjs +112 -0
- package/dist/TableOverviewCard-BPWCqo56.js +1 -0
- package/dist/{TableOverviewCard-Ci0d4o4w.mjs → TableOverviewCard-D667DDag.mjs} +113 -127
- package/dist/TableResultView.vue_vue_type_script_setup_true_lang-C3XiOXgb.js +1 -0
- package/dist/TableResultView.vue_vue_type_script_setup_true_lang-sp0TLio0.mjs +547 -0
- package/dist/{TableRowActionCard-BhdnnPaq.mjs → TableRowActionCard-BPYJ-Kjy.mjs} +95 -101
- package/dist/TableRowActionCard-Bnqj1YIe.js +1 -0
- package/dist/TableView-CwhZ9YN2.js +4 -0
- package/dist/TableView-DX9PKS8N.mjs +9673 -0
- package/dist/TemplateBuilder.vue_vue_type_script_setup_true_lang-BgDdzbLe.js +1 -0
- package/dist/TemplateBuilder.vue_vue_type_script_setup_true_lang-D85V4nrQ.mjs +2886 -0
- package/dist/Test-CzmOmi53.mjs +447 -0
- package/dist/Test-USDtNFY1.js +1 -0
- package/dist/UserDetail-DpUL3mhk.mjs +1483 -0
- package/dist/UserDetail-KRIfxaYd.js +1 -0
- package/dist/cms-core-modules.css +1 -1
- package/dist/dateRangePresets-CaPVagHY.mjs +453 -0
- package/dist/dateRangePresets-gxQCiZ6c.js +1 -0
- package/dist/index-6hZ6MYY6.js +1 -0
- package/dist/index-BVmmicu3.mjs +14 -0
- package/dist/index-CQuN5rKx.js +1 -0
- package/dist/index-ChHD_1Cf.js +144 -0
- package/dist/index-CnDGeInm.js +1 -0
- package/dist/index-CqDTc5Ig.mjs +20 -0
- package/dist/index-CvV4nVWI.js +1 -0
- package/dist/index-CyvvAdt4.js +1 -0
- package/dist/index-DH2z0W_w.mjs +19012 -0
- package/dist/index-DIRD7t5_.mjs +20 -0
- package/dist/index-DZKzj48V.mjs +17 -0
- package/dist/index-OJuBYR60.mjs +57 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.mjs +480 -103
- package/dist/orders-C_sz8J9b.js +1 -0
- package/dist/{orders-BfTLIm7U.mjs → orders-Cgdggzvx.mjs} +84 -84
- package/dist/server-handlers.cjs.js +1 -1
- package/dist/server-handlers.mjs +2696 -605
- package/dist/src/appointments/chat-components/AppointmentListTable.vue.d.ts +3 -0
- package/dist/src/appointments/index.d.ts +93 -3
- package/dist/src/appointments/reservation-summary.d.ts +48 -0
- package/dist/src/appointments/server.d.ts +1 -0
- package/dist/src/appointments/tools.d.ts +93 -3
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Container.d.ts +1 -1
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Row.d.ts +7 -0
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/Stack.d.ts +7 -0
- package/dist/src/contentManager/components/content-editor/tiptap-extensions/helpers/resizeHistory.d.ts +9 -0
- package/dist/src/contentManager/components/content-editor/tiptap-menus/ElementEditorMenu.vue.d.ts +3 -1
- package/dist/src/filezone/config.d.ts +31 -0
- package/dist/src/filezone/index.d.ts +43 -0
- package/dist/src/filezone/index.vue.d.ts +2 -0
- package/dist/src/filezone/metadata.d.ts +2 -0
- package/dist/src/filezone/pages/Overview.vue.d.ts +4 -0
- package/dist/src/filezone/permissions.d.ts +5 -0
- package/dist/src/filezone/routes.d.ts +5 -0
- package/dist/src/filezone/server.d.ts +36 -0
- package/dist/src/firebaseAuthManager/components/DeleteUserDialog.vue.d.ts +25 -0
- package/dist/src/firebaseAuthManager/components/ReasonActionDialog.vue.d.ts +23 -0
- package/dist/src/firebaseAuthManager/components/UserStatusBadge.vue.d.ts +5 -0
- package/dist/src/firebaseAuthManager/config.d.ts +151 -0
- package/dist/src/firebaseAuthManager/index.d.ts +163 -0
- package/dist/src/firebaseAuthManager/index.vue.d.ts +14 -0
- package/dist/src/firebaseAuthManager/metadata.d.ts +2 -0
- package/dist/src/firebaseAuthManager/pages/Overview.vue.d.ts +2 -0
- package/dist/src/firebaseAuthManager/pages/UserDetail.vue.d.ts +2 -0
- package/dist/src/firebaseAuthManager/permissions.d.ts +5 -0
- package/dist/src/firebaseAuthManager/routes.d.ts +5 -0
- package/dist/src/firebaseAuthManager/server.d.ts +162 -0
- package/dist/src/firebaseAuthManager/types.d.ts +84 -0
- package/dist/src/formBuilder/components/FormPreviewDialog.vue.d.ts +12 -0
- package/dist/src/formBuilder/components/FormStatusBadge.vue.d.ts +9 -0
- package/dist/src/formBuilder/config.d.ts +31 -0
- package/dist/src/formBuilder/index.d.ts +44 -0
- package/dist/src/formBuilder/index.vue.d.ts +14 -0
- package/dist/src/formBuilder/lib/forms.d.ts +11 -0
- package/dist/src/formBuilder/metadata.d.ts +2 -0
- package/dist/src/formBuilder/pages/Editor.vue.d.ts +2 -0
- package/dist/src/formBuilder/pages/Overview.vue.d.ts +2 -0
- package/dist/src/formBuilder/permissions.d.ts +5 -0
- package/dist/src/formBuilder/routes.d.ts +5 -0
- package/dist/src/formBuilder/server.d.ts +87 -0
- package/dist/src/formBuilder/tools.d.ts +1 -0
- package/dist/src/formBuilder/types.d.ts +46 -0
- package/dist/src/helpbot/composables/useHelpbotApi.d.ts +18 -0
- package/dist/src/helpbot/config.d.ts +17 -0
- package/dist/src/helpbot/index.d.ts +29 -0
- package/dist/src/helpbot/index.vue.d.ts +2 -0
- package/dist/src/helpbot/metadata.d.ts +2 -0
- package/dist/src/helpbot/pages/Knowledge.vue.d.ts +4 -0
- package/dist/src/helpbot/pages/Overview.vue.d.ts +2 -0
- package/dist/src/helpbot/pages/Test.vue.d.ts +4 -0
- package/dist/src/helpbot/permissions.d.ts +5 -0
- package/dist/src/helpbot/routes.d.ts +5 -0
- package/dist/src/helpbot/types.d.ts +42 -0
- package/dist/src/index.d.ts +5 -0
- package/dist/src/mailTemplates/builder-types.d.ts +40 -0
- package/dist/src/mailTemplates/components/BlockRenderer.vue.d.ts +24 -0
- package/dist/src/mailTemplates/components/DesignPanel.vue.d.ts +13 -0
- package/dist/src/mailTemplates/components/EmailCanvas.vue.d.ts +44 -0
- package/dist/src/mailTemplates/components/RichTextEditor.vue.d.ts +10 -0
- package/dist/src/mailTemplates/components/RightSidebar.vue.d.ts +18 -0
- package/dist/src/mailTemplates/components/SettingsPanel.vue.d.ts +15 -0
- package/dist/src/mailTemplates/components/TemplateBuilder.vue.d.ts +2 -0
- package/dist/src/mailTemplates/components/TemplateList.vue.d.ts +19 -1
- package/dist/src/mailTemplates/components/rich-text.d.ts +6 -0
- package/dist/src/mailTemplates/config.d.ts +10 -4
- package/dist/src/mailTemplates/defaults.d.ts +10 -0
- package/dist/src/mailTemplates/editor-state.d.ts +21 -0
- package/dist/src/mailTemplates/index.d.ts +11 -5
- package/dist/src/mailTemplates/index.vue.d.ts +2 -4
- package/dist/src/mailTemplates/metadata.d.ts +1 -1
- package/dist/src/mailTemplates/pages/Detail.vue.d.ts +1 -13
- package/dist/src/mailTemplates/pages/Overview.vue.d.ts +1 -13
- package/dist/src/mailTemplates/server.d.ts +23 -0
- package/dist/src/server-handlers.d.ts +6 -0
- package/dist/src/table/badge-filter-utils.d.ts +8 -0
- package/dist/src/table/chat-components/TableOverviewCard.vue.d.ts +2 -7
- package/dist/src/table/chat-components/TableResultView.vue.d.ts +3 -7
- package/dist/src/table/components/TableDisplayCell.vue.d.ts +8 -0
- package/dist/src/table/components/columns/BadgeColumnSettings.vue.d.ts +9 -0
- package/dist/src/table/components/columns/ColumnColorSelect.vue.d.ts +11 -0
- package/dist/src/table/components/columns/ColumnDisplaySettings.vue.d.ts +9 -0
- package/dist/src/table/components/columns/ColumnTypeSelect.vue.d.ts +11 -0
- package/dist/src/table/components/columns/ColumnValueSourceInput.vue.d.ts +15 -0
- package/dist/src/table/components/columns/DialogTableColumnItem.vue.d.ts +8 -11
- package/dist/src/table/components/columns/ProgressColumnSettings.vue.d.ts +8 -0
- package/dist/src/table/components/stats/StatDialog.vue.d.ts +6 -10
- package/dist/src/table/components/stats/Stats.vue.d.ts +9 -15
- package/dist/src/table/composables/useTableClock.d.ts +4 -0
- package/dist/src/table/display-utils.d.ts +35 -0
- package/dist/src/table/row-value.d.ts +1 -0
- package/dist/src/table/stat-utils.d.ts +9 -0
- package/dist/src/table/tool-utils.d.ts +1 -1
- package/dist/src/table/types.d.ts +54 -1
- package/dist/src/whatsappBusiness/analytics.d.ts +4 -0
- package/dist/src/whatsappBusiness/components/AccountPanel.vue.d.ts +2 -0
- package/dist/src/whatsappBusiness/components/InsightsPanel.vue.d.ts +5 -0
- package/dist/src/whatsappBusiness/components/TemplateDialog.vue.d.ts +14 -0
- package/dist/src/whatsappBusiness/components/TemplatesPanel.vue.d.ts +5 -0
- package/dist/src/whatsappBusiness/components/presentation.d.ts +4 -0
- package/dist/src/whatsappBusiness/config.d.ts +51 -0
- package/dist/src/whatsappBusiness/connection.d.ts +77 -0
- package/dist/src/whatsappBusiness/index.d.ts +63 -0
- package/dist/src/whatsappBusiness/index.vue.d.ts +5 -0
- package/dist/src/whatsappBusiness/metadata.d.ts +2 -0
- package/dist/src/whatsappBusiness/pages/Overview.vue.d.ts +2 -0
- package/dist/src/whatsappBusiness/permissions.d.ts +5 -0
- package/dist/src/whatsappBusiness/provider.d.ts +21 -0
- package/dist/src/whatsappBusiness/routes.d.ts +5 -0
- package/dist/src/whatsappBusiness/server.d.ts +14 -0
- package/dist/src/whatsappBusiness/templates.d.ts +94 -0
- package/dist/src/whatsappBusiness/types.d.ts +162 -0
- package/dist/{tool-sandbox-DoF1PsyS.js → tool-sandbox-BSkKdH7V.js} +1 -1
- package/dist/{tool-sandbox-DdkMLkDK.mjs → tool-sandbox-DU9b1B7v.mjs} +1 -1
- package/dist/types-9N-DKxNj.mjs +250 -0
- package/dist/types-B5MifmeF.mjs +2696 -0
- package/dist/types-Cem0vPo_.js +1 -0
- package/dist/types-D5dgTskW.js +1 -0
- package/dist/useHelpbotApi-BIIungOh.js +1 -0
- package/dist/useHelpbotApi-HC9JSiSn.mjs +229 -0
- package/dist/{useTableAgentTools-D5mzGf3A.js → useTableAgentTools-BrUot49I.js} +1 -1
- package/dist/{useTableAgentTools-DcN3kYRL.mjs → useTableAgentTools-r5InEI4p.mjs} +8 -8
- package/dist/vee-validate-zod-CWZwNTWE.js +1 -0
- package/dist/vee-validate-zod-D0WaDgDZ.mjs +1780 -0
- package/package.json +2 -2
- package/src/appointments/tools.ts +52 -2
- package/src/formBuilder/tools.ts +1 -0
- package/dist/AppointmentListTable-DZJNmTMb.mjs +0 -177
- package/dist/AppointmentListTable-Dieu9US_.js +0 -1
- package/dist/ContentEditor-C-Wm48ai.js +0 -467
- package/dist/Detail-BCUUNWvp.js +0 -1
- package/dist/Detail-Byk781b4.mjs +0 -26
- package/dist/Detail-DGg_xXZc.js +0 -1
- package/dist/Detail-Sc2qZdxj.js +0 -1
- package/dist/Detail-mvSGbnFU.js +0 -1
- package/dist/Overview-BDlBCUI_.js +0 -1
- package/dist/Overview-Su8ZUbMs.mjs +0 -26
- package/dist/TableDataWidget-7qvC3Egd.js +0 -1
- package/dist/TableDataWidget-DMTSoGRO.mjs +0 -121
- package/dist/TableOverviewCard-AFq-puJs.js +0 -1
- package/dist/TableResultView.vue_vue_type_script_setup_true_lang-CBn-Oxl9.mjs +0 -534
- package/dist/TableResultView.vue_vue_type_script_setup_true_lang-C_Lv-SmJ.js +0 -1
- package/dist/TableRowActionCard-IzB6tNN-.js +0 -1
- package/dist/TableView-BkwoKREo.js +0 -4
- package/dist/TableView-C4Zyp8d7.mjs +0 -8228
- package/dist/TemplateList.vue_vue_type_script_setup_true_lang-B_AtWnHa.js +0 -1
- package/dist/TemplateList.vue_vue_type_script_setup_true_lang-Cmovy7kk.mjs +0 -40
- package/dist/dateRangePresets-B-l5b_wR.mjs +0 -48
- package/dist/dateRangePresets-CPWqst_x.js +0 -1
- package/dist/orders-DUa2PVoa.js +0 -1
- package/dist/vee-validate-zod-SjDT8X35.mjs +0 -4404
- package/dist/vee-validate-zod-VCmLnrtQ.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),p=require("./vee-validate-zod-CWZwNTWE.js"),E=require("./countries-CgZ081No.js"),b=require("lucide-vue-next"),S=require("@oneclick.dev/cms-kit"),B=require("./index-ijdf0d9-.js"),C=require("./types-D5dgTskW.js"),F={class:"flex flex-col gap-4"},L={class:"flex flex-col gap-2"},R={key:0,class:"text-red-500 text-sm mt-1"},z={class:"flex flex-col gap-4"},U={class:"flex flex-col gap-2"},j={key:0,class:"text-red-500 text-sm mt-1"},P={class:"flex flex-col gap-4"},q={class:"flex flex-col gap-2"},G={key:0,class:"text-red-500 text-sm mt-1"},A=e.defineComponent({__name:"Main",setup($){const c=e.inject("isLoadingCompleted",e.ref(!1)),{errors:o}=p.useFormContext(),{value:r}=p.useField("title"),{value:n}=p.useField("description"),{value:l}=p.useField("price");return(d,t)=>{const a=e.resolveComponent("Label"),u=e.resolveComponent("Input"),m=e.resolveComponent("Textarea"),N=e.resolveComponent("CardContent"),w=e.resolveComponent("Card");return e.openBlock(),e.createBlock(w,null,{default:e.withCtx(()=>[e.createVNode(N,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[e.createElementVNode("div",F,[e.createElementVNode("div",L,[e.createVNode(a,{for:"title",class:"text-sm"},{default:e.withCtx(()=>[...t[3]||(t[3]=[e.createTextVNode("Name",-1)])]),_:1}),e.createVNode(u,{type:"text",id:"title",placeholder:e.unref(c)?"Fast shipping":"",modelValue:e.unref(r),"onUpdate:modelValue":t[0]||(t[0]=g=>e.isRef(r)?r.value=g:null)},null,8,["placeholder","modelValue"]),e.unref(o).title?(e.openBlock(),e.createElementBlock("p",R,e.toDisplayString(e.unref(o).title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",z,[e.createElementVNode("div",U,[e.createVNode(a,{for:"description",class:"text-sm"},{default:e.withCtx(()=>[...t[4]||(t[4]=[e.createTextVNode("Description (optional)",-1)])]),_:1}),e.createVNode(m,{id:"description",placeholder:e.unref(c)?"Ships next day":"",modelValue:e.unref(n),"onUpdate:modelValue":t[1]||(t[1]=g=>e.isRef(n)?n.value=g:null)},null,8,["placeholder","modelValue"]),e.unref(o).description?(e.openBlock(),e.createElementBlock("p",j,e.toDisplayString(e.unref(o).description),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",P,[e.createElementVNode("div",q,[e.createVNode(a,{for:"price",class:"text-sm"},{default:e.withCtx(()=>[...t[5]||(t[5]=[e.createTextVNode("Price",-1)])]),_:1}),e.createVNode(u,{type:"number",min:"0",id:"price",placeholder:e.unref(c)?"Free":"",modelValue:e.unref(l),"onUpdate:modelValue":t[2]||(t[2]=g=>e.isRef(l)?l.value=g:null),class:"no-spinner"},null,8,["placeholder","modelValue"]),e.unref(o).price?(e.openBlock(),e.createElementBlock("p",G,e.toDisplayString(e.unref(o).price),1)):e.createCommentVNode("",!0)])])]),_:1})]),_:1})}}}),J={class:"flex flex-col gap-4"},K={class:"flex flex-col gap-2"},W={class:"truncate"},X={class:"relative w-full max-w-sm items-center"},Z={class:"absolute start-0 inset-y-0 flex items-center justify-center px-3"},H={class:"truncate"},Q={key:0,class:"text-red-500 text-sm mt-1"},Y={key:0},ee={class:"group flex items-center gap-2 bg-muted/50 rounded-md mb-1 p-2"},te={class:"w-6"},oe={class:"text-muted-foreground group-hover:text-black dark:group-hover:text-white"},ne=e.defineComponent({__name:"Countries",setup($){const{errors:c}=p.useFormContext(),{value:o}=p.useField("countries");return e.watch(o,r=>{let n=r?.sort((d,t)=>!d||!t?0:E.rawCountries.find(a=>a.cca2===d)?.name.common.localeCompare(E.rawCountries.find(a=>a.cca2===t)?.name.common)),l=!0;for(let d=0;d<r.length;d++)if(r[d]!==o.value[d]){l=!1;break}l||(o.value=n)}),(r,n)=>{const l=e.resolveComponent("Label"),d=e.resolveComponent("Button"),t=e.resolveComponent("ComboboxTrigger"),a=e.resolveComponent("ComboboxAnchor"),u=e.resolveComponent("ComboboxInput"),m=e.resolveComponent("ComboboxEmpty"),N=e.resolveComponent("ComboboxItemIndicator"),w=e.resolveComponent("ComboboxItem"),g=e.resolveComponent("ComboboxGroup"),f=e.resolveComponent("ComboboxList"),O=e.resolveComponent("Combobox"),T=e.resolveComponent("CardContent"),k=e.resolveComponent("Card");return e.openBlock(),e.createBlock(k,null,{default:e.withCtx(()=>[e.createVNode(T,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[n[3]||(n[3]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Countries",-1)),e.createElementVNode("div",J,[e.createElementVNode("div",K,[e.createVNode(l,{class:"text-sm mb-2"},{default:e.withCtx(()=>[...n[1]||(n[1]=[e.createTextVNode("For which countries should this option be available?",-1)])]),_:1}),e.createVNode(O,{modelValue:e.unref(o),"onUpdate:modelValue":n[0]||(n[0]=x=>e.isRef(o)?o.value=x:null),multiple:!0},{default:e.withCtx(()=>[e.createVNode(a,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(t,{"as-child":""},{default:e.withCtx(()=>[e.createVNode(d,{variant:"outline",class:"justify-between"},{default:e.withCtx(()=>[e.createElementVNode("span",W,e.toDisplayString(e.unref(o)?.length>0?e.unref(o).slice(0,4).map(x=>e.unref(E.rawCountries).find(h=>h.cca2===x)?.name.common).join(", "):"Select countries"),1),e.createVNode(e.unref(b.ChevronsUpDown),{class:"ml-2 size-4 shrink-0 opacity-50"})]),_:1})]),_:1})]),_:1}),e.createVNode(f,null,{default:e.withCtx(()=>[e.createElementVNode("div",X,[e.createVNode(u,{class:"pl-9 focus-visible:ring-0 border-0 border-b rounded-none h-10",placeholder:"Find country..."}),e.createElementVNode("span",Z,[e.createVNode(e.unref(b.Search),{class:"size-4 text-muted-foreground"})])]),e.createVNode(m,null,{default:e.withCtx(()=>[...n[2]||(n[2]=[e.createTextVNode(" No countries found. ",-1)])]),_:1}),e.createVNode(g,{class:"max-h-72 overflow-y-scroll"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(E.rawCountries),x=>(e.openBlock(),e.createBlock(w,{key:x.cca2,value:x.cca2},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.flag)+" ",1),e.createElementVNode("span",H,e.toDisplayString(x.name.common),1),e.createVNode(N,null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.Check),{class:"size-4"})]),_:1})]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.unref(c).countries?(e.openBlock(),e.createElementBlock("p",Q,e.toDisplayString(e.unref(c).countries),1)):e.createCommentVNode("",!0)])]),e.unref(o)?.length>0?(e.openBlock(),e.createElementBlock("div",Y,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),x=>(e.openBlock(),e.createElementBlock("div",ee,[e.createElementVNode("div",te,e.toDisplayString(e.unref(E.rawCountries).find(h=>h.cca2===x)?.flag),1),e.createElementVNode("p",oe,e.toDisplayString(e.unref(E.rawCountries).find(h=>h.cca2===x)?.name.common),1),e.createVNode(d,{variant:"ghost",size:"icon",onClick:h=>o.value=e.unref(o).filter(I=>I!==x),class:"hidden group-hover:flex ml-auto size-6"},{default:e.withCtx(()=>[e.createVNode(e.unref(b.X),{class:"size-3"})]),_:1},8,["onClick"])]))),256))])):e.createCommentVNode("",!0)]),_:1})]),_:1})}}}),le={class:"flex items-center space-x-2"},se={class:"flex items-center space-x-2"},re={class:"flex items-center space-x-2"},ie={key:0,class:"flex gap-2 w-full mt-4"},ae={class:"flex flex-col gap-4 w-full"},ce={class:"flex flex-col gap-2"},de={class:"relative"},ue={key:0,class:"text-red-500 text-sm mt-1"},pe={class:"flex flex-col gap-4 w-full"},me={class:"flex flex-col gap-2"},fe={class:"relative"},xe={key:0,class:"text-red-500 text-sm mt-1"},_e={key:1,class:"flex gap-2 w-full mt-4"},Ce={class:"flex flex-col gap-4 w-full"},Ve={class:"flex flex-col gap-2"},ve={class:"relative"},Ne={key:0,class:"text-red-500 text-sm mt-1"},ge={class:"flex flex-col gap-4 w-full"},be={class:"flex flex-col gap-2"},he={class:"relative"},we={key:0,class:"text-red-500 text-sm mt-1"},ke=e.defineComponent({__name:"Condition",setup($){const c=e.inject("isLoadingCompleted",e.ref(!1)),{errors:o}=p.useFormContext(),{value:r}=p.useField("condition"),{value:n}=p.useField("condition_min"),{value:l}=p.useField("condition_max");return(d,t)=>{const a=e.resolveComponent("RadioGroupItem"),u=e.resolveComponent("Label"),m=e.resolveComponent("RadioGroup"),N=e.resolveComponent("Input"),w=e.resolveComponent("CardContent"),g=e.resolveComponent("Card");return e.openBlock(),e.createBlock(g,null,{default:e.withCtx(()=>[e.createVNode(w,{class:"flex flex-col gap-4"},{default:e.withCtx(()=>[t[16]||(t[16]=e.createElementVNode("h3",{class:"text-lg font-semibold mb-4"},"Condition",-1)),t[17]||(t[17]=e.createElementVNode("p",null," Specify when this option should be available ",-1)),e.createVNode(m,{"default-value":"always",modelValue:e.unref(r),"onUpdate:modelValue":t[0]||(t[0]=f=>e.isRef(r)?r.value=f:null),class:e.normalizeClass(["flex flex-col transition-all duration-300",{"opacity-0 pointer-events-none":!e.unref(c)}])},{default:e.withCtx(()=>[e.createElementVNode("div",le,[e.createVNode(a,{id:"always",value:"always"}),e.createVNode(u,{for:"always"},{default:e.withCtx(()=>[...t[5]||(t[5]=[e.createTextVNode("Always",-1)])]),_:1})]),e.createElementVNode("div",se,[e.createVNode(a,{id:"weight_based",value:"weight_based"}),e.createVNode(u,{for:"weight_based"},{default:e.withCtx(()=>[...t[6]||(t[6]=[e.createTextVNode("Weight based",-1)])]),_:1})]),e.createElementVNode("div",re,[e.createVNode(a,{id:"price_based",value:"price_based"}),e.createVNode(u,{for:"price_based"},{default:e.withCtx(()=>[...t[7]||(t[7]=[e.createTextVNode("Price based",-1)])]),_:1})])]),_:1},8,["modelValue","class"]),e.unref(r)==="weight_based"?(e.openBlock(),e.createElementBlock("div",ie,[e.createElementVNode("div",ae,[e.createElementVNode("div",ce,[e.createVNode(u,{for:"condition_min",class:"text-sm"},{default:e.withCtx(()=>[...t[8]||(t[8]=[e.createTextVNode("Minimum weight",-1)])]),_:1}),e.createElementVNode("div",de,[e.createVNode(N,{type:"number",id:"condition_min",min:"0",placeholder:"0",modelValue:e.unref(n),"onUpdate:modelValue":t[1]||(t[1]=f=>e.isRef(n)?n.value=f:null),class:"no-spinner pr-10"},null,8,["modelValue"]),t[9]||(t[9]=e.createElementVNode("span",{class:"absolute pointer-events-none top-1/2 right-3 -translate-y-1/2 text-sm text-muted-foreground"},"kg",-1))]),e.unref(o).condition_min?(e.openBlock(),e.createElementBlock("p",ue,e.toDisplayString(e.unref(o).condition_min),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",pe,[e.createElementVNode("div",me,[e.createVNode(u,{for:"condition_max",class:"text-sm"},{default:e.withCtx(()=>[...t[10]||(t[10]=[e.createTextVNode("Maximum weight",-1)])]),_:1}),e.createElementVNode("div",fe,[e.createVNode(N,{type:"number",id:"condition_max",min:"0",placeholder:"No limit",modelValue:e.unref(l),"onUpdate:modelValue":t[2]||(t[2]=f=>e.isRef(l)?l.value=f:null),class:"no-spinner pr-10"},null,8,["modelValue"]),t[11]||(t[11]=e.createElementVNode("span",{class:"absolute pointer-events-none top-1/2 right-3 -translate-y-1/2 text-sm text-muted-foreground"},"kg",-1))]),e.unref(o).condition_max?(e.openBlock(),e.createElementBlock("p",xe,e.toDisplayString(e.unref(o).condition_max),1)):e.createCommentVNode("",!0)])])])):e.unref(r)==="price_based"?(e.openBlock(),e.createElementBlock("div",_e,[e.createElementVNode("div",Ce,[e.createElementVNode("div",Ve,[e.createVNode(u,{for:"condition_min",class:"text-sm"},{default:e.withCtx(()=>[...t[12]||(t[12]=[e.createTextVNode("Minimum price",-1)])]),_:1}),e.createElementVNode("div",ve,[e.createVNode(N,{type:"number",id:"condition_min",min:"0",placeholder:"0, 00",modelValue:e.unref(n),"onUpdate:modelValue":t[3]||(t[3]=f=>e.isRef(n)?n.value=f:null),class:"no-spinner pl-8"},null,8,["modelValue"]),t[13]||(t[13]=e.createElementVNode("span",{class:"absolute pointer-events-none top-1/2 left-3 -translate-y-1/2 text-sm text-muted-foreground"},"€",-1))]),e.unref(o).condition_min?(e.openBlock(),e.createElementBlock("p",Ne,e.toDisplayString(e.unref(o).condition_min),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",ge,[e.createElementVNode("div",be,[e.createVNode(u,{for:"condition_max",class:"text-sm"},{default:e.withCtx(()=>[...t[14]||(t[14]=[e.createTextVNode("Maximum price",-1)])]),_:1}),e.createElementVNode("div",he,[e.createVNode(N,{type:"number",id:"condition_max",min:"0",placeholder:"No limit",modelValue:e.unref(l),"onUpdate:modelValue":t[4]||(t[4]=f=>e.isRef(l)?l.value=f:null),class:"no-spinner pl-8"},null,8,["modelValue"]),t[15]||(t[15]=e.createElementVNode("span",{class:"absolute pointer-events-none top-1/2 left-3 -translate-y-1/2 text-sm text-muted-foreground"},"€",-1))]),e.unref(o).condition_max?(e.openBlock(),e.createElementBlock("p",we,e.toDisplayString(e.unref(o).condition_max),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0)]),_:1})]),_:1})}}}),ye={class:"flex gap-2 rounded-lg p-2 bg-white text-black overflow-hidden shadow border"},Ee={class:"w-full overflow-hidden"},Be={class:"truncate"},$e={key:0,class:"text-sm text-muted-foreground"},Se={class:"ml-auto shrink-0"},Te={class:"font-bold"},Oe=e.defineComponent({__name:"Example",setup($){const{value:c}=p.useField("title"),{value:o}=p.useField("description"),{value:r}=p.useField("price");return(n,l)=>{const d=e.resolveComponent("CardContent"),t=e.resolveComponent("Card");return e.openBlock(),e.createBlock(t,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>[l[1]||(l[1]=e.createElementVNode("p",{class:"text-md font-semibold mb-2"},"Example",-1)),e.createElementVNode("div",ye,[l[0]||(l[0]=e.createElementVNode("div",{class:"pt-1 shrink-0"},[e.createElementVNode("div",{class:"size-4 rounded-full bg-primary flex items-center justify-center"},[e.createElementVNode("div",{class:"size-2 rounded-full bg-white"})])],-1)),e.createElementVNode("div",Ee,[e.createElementVNode("p",Be,e.toDisplayString(e.unref(c)||"Option Name"),1),e.unref(o)?(e.openBlock(),e.createElementBlock("p",$e,e.toDisplayString(e.unref(o)),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Se,[e.createElementVNode("p",Te,e.toDisplayString(e.unref(r)?"€"+e.unref(r).toFixed(2):"FREE"),1)])])]),_:1})]),_:1})}}}),Ie={class:"relative @container"},De={class:"flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6"},Me={class:"flex items-center"},Fe={class:"text-lg font-semibold mx-2"},Le={class:"flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24"},Re={class:"flex flex-col gap-4 w-full @3xl:w-2/3"},ze={class:"flex flex-col gap-4 w-full @3xl:w-1/3"},Ue={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)]"},je={class:"w-full max-w-5xl flex items-center justify-end mx-auto"},Pe=e.defineComponent({__name:"Detail",props:{config:{type:Object,required:!0}},setup($){const c=$,{hasPermission:o,hasAnyPermission:r}=S.useModulePermissions(),{params:n,navigateTo:l}=S.useModuleRoute(),{confirm:d}=S.useConfirmation(),t=S.useFirebaseIntegration(c.config.project),a=e.computed(()=>!n.value.optionId||n.value.optionId==="new"),u=e.ref(!1),m=e.ref(!1),N=p.toTypedSchema(C.objectType({id:C.stringType().optional(),status:C.stringType().optional(),title:C.stringType().min(1,"Title is required"),description:C.stringType().optional(),price:C.preprocessType(i=>i===""?void 0:i,C.coerce.number().positive("Must be positive").optional()),countries:C.arrayType(C.stringType()).optional(),condition:C.stringType(),condition_min:C.preprocessType(i=>i===""?void 0:i,C.coerce.number().positive("Must be positive").optional()),condition_max:C.preprocessType(i=>i===""?void 0:i,C.coerce.number().positive("Must be positive").optional())})),{handleSubmit:w,errors:g,values:f,setValues:O}=p.useForm({validationSchema:N,initialValues:{status:"published",countries:[],condition:"always"}});S.useModuleBreadcrumbs(()=>[{text:f.title??"New Option"}]);const T=w(async i=>{m.value=!0;let s=await k()||[];if(a.value){let _=JSON.parse(JSON.stringify(i));_.id=crypto.randomUUID();const v=[...s,_],V=c.config.shippingOptionsCollection.split(":");await t.update(V[0],null,{[V[1]]:v}),l(_.id),B.toast.success("Shipping option created")}else{let _=JSON.parse(JSON.stringify(i));const v=s.map(y=>y.id===n.value.optionId?_:y),V=c.config.shippingOptionsCollection.split(":");await t.update(V[0],null,{[V[1]]:v}),l(`${n.value.optionId}`),B.toast.success("Shipping option updated")}m.value=!1}),k=async()=>{if(!c.config.shippingOptionsCollection)return[];const i=c.config.shippingOptionsCollection.split(":");return i.length!==2?[]:(await t.get(i[0]))?.[i[1]]||[]},x=async()=>{const s=(await k()).find(_=>_.id===n.value.optionId);O(s),u.value=!0},h=async()=>{try{let s={...[...await k()||[]].find(y=>y.id===n.value.optionId)};s.id=crypto.randomUUID(),s.status="published",s.title=s.title+" (copy)";const v=[...await k()||[],s],V=c.config.shippingOptionsCollection.split(":");await t.update(V[0],null,{[V[1]]:v}),l(s.id),B.toast.success("Option duplicated")}catch{B.toast.error("Failed to duplicate option")}},I=async()=>{if(await d("Are you sure you want to delete this option?"))try{const s=await k()||[];if(s.length===0||!n.value.optionId)throw new Error("Error loading values");const _=s.filter(V=>V.id!==n.value.optionId),v=c.config.shippingOptionsCollection.split(":");await t.update(v[0],null,{[v[1]]:_}),l(""),B.toast.success("Option deleted")}catch{B.toast.error("Failed to delete option")}};return e.onMounted(()=>{a.value?u.value=!0:x()}),e.provide("isLoadingCompleted",u),(i,s)=>{const _=e.resolveComponent("Button"),v=e.resolveComponent("MenubarTrigger"),V=e.resolveComponent("MenubarMenu"),y=e.resolveComponent("MenubarItem"),D=e.resolveComponent("MenubarContent"),M=e.resolveComponent("Menubar");return e.openBlock(),e.createElementBlock("div",Ie,[e.createElementVNode("div",De,[e.createElementVNode("div",Me,[e.createVNode(_,{variant:"ghost",onClick:s[0]||(s[0]=qe=>e.unref(l)(""))},{default:e.withCtx(()=>[e.createVNode(e.unref(b.Tag),{class:"size-4"})]),_:1}),e.createVNode(e.unref(b.ChevronRight),{class:"size-3"}),e.createElementVNode("h1",Fe,e.toDisplayString(a.value?"New Option":e.unref(f).title),1)]),a.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(M,{key:0,class:"bg-sidebar"},{default:e.withCtx(()=>[e.unref(o)("create-collection")?(e.openBlock(),e.createBlock(V,{key:0},{default:e.withCtx(()=>[e.createVNode(v,{onClick:h},{default:e.withCtx(()=>[...s[1]||(s[1]=[e.createTextVNode("Duplicate",-1)])]),_:1})]),_:1})):e.createCommentVNode("",!0),e.unref(r)("edit-collection","delete-option")?(e.openBlock(),e.createBlock(V,{key:1},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[...s[2]||(s[2]=[e.createTextVNode("More actions",-1)])]),_:1}),e.createVNode(D,null,{default:e.withCtx(()=>[e.unref(o)("delete-option")?(e.openBlock(),e.createBlock(y,{key:0,variant:"destructive",onClick:I},{default:e.withCtx(()=>[e.createVNode(e.unref(b.Trash),{class:"size-4"}),s[3]||(s[3]=e.createTextVNode(" Delete option ",-1))]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}))]),e.createElementVNode("div",Le,[e.createElementVNode("div",Re,[e.createVNode(A),e.createVNode(ne),e.createVNode(ke)]),e.createElementVNode("div",ze,[e.createVNode(Oe)])]),e.unref(r)("create-option","edit-option")?(e.openBlock(),e.createElementBlock("div",Ue,[e.createElementVNode("div",je,[a.value&&e.unref(o)("create-option")?(e.openBlock(),e.createBlock(_,{key:0,onClick:e.unref(T),disabled:m.value},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createBlock(e.unref(b.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(m.value?"Creating":"Create")+" New Option ",1)]),_:1},8,["onClick","disabled"])):e.unref(o)("edit-option")?(e.openBlock(),e.createBlock(_,{key:1,onClick:e.unref(T),disabled:m.value},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createBlock(e.unref(b.Loader2),{key:0,class:"size-4 animate-spin"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(m.value?"Saving":"Save")+" Changes ",1)]),_:1},8,["onClick","disabled"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)])}}});exports.default=Pe;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { defineComponent as B, inject as Q, ref as R, resolveComponent as i, openBlock as d, createBlock as O, withCtx as s, createVNode as n, createElementVNode as o, createTextVNode as v, isRef as N, unref as e, createElementBlock as b, toDisplayString as _, createCommentVNode as f, watch as ee, Fragment as X, renderList as H, normalizeClass as te, computed as oe, onMounted as ne, provide as se } from "vue";
|
|
2
|
-
import { u as W, a as S, t as le,
|
|
3
|
-
import { r as
|
|
4
|
-
import { ChevronsUpDown as
|
|
5
|
-
import { useModulePermissions as
|
|
6
|
-
import { t as
|
|
2
|
+
import { u as W, a as S, t as le, b as ie } from "./vee-validate-zod-D0WaDgDZ.mjs";
|
|
3
|
+
import { r as F } from "./countries-BTPvmrsb.mjs";
|
|
4
|
+
import { ChevronsUpDown as ae, Search as de, Check as re, X as ce, Tag as ue, ChevronRight as pe, Trash as me, Loader2 as K } from "lucide-vue-next";
|
|
5
|
+
import { useModulePermissions as fe, useModuleRoute as _e, useConfirmation as xe, useFirebaseIntegration as ve, useModuleBreadcrumbs as be } from "@oneclick.dev/cms-kit";
|
|
6
|
+
import { t as j } from "./index-RLz1QPrf.mjs";
|
|
7
|
+
import { o as ge, p as J, c as q, s as E, a as he } from "./types-B5MifmeF.mjs";
|
|
7
8
|
const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2" }, ye = {
|
|
8
9
|
key: 0,
|
|
9
10
|
class: "text-red-500 text-sm mt-1"
|
|
@@ -103,7 +104,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
103
104
|
setup(P) {
|
|
104
105
|
const { errors: x } = W(), { value: l } = S("countries");
|
|
105
106
|
return ee(l, (u) => {
|
|
106
|
-
let a = u?.sort((g, t) => !g || !t ? 0 :
|
|
107
|
+
let a = u?.sort((g, t) => !g || !t ? 0 : F.find((m) => m.cca2 === g)?.name.common.localeCompare(F.find((m) => m.cca2 === t)?.name.common)), r = !0;
|
|
107
108
|
for (let g = 0; g < u.length; g++)
|
|
108
109
|
if (u[g] !== l.value[g]) {
|
|
109
110
|
r = !1;
|
|
@@ -140,8 +141,8 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
140
141
|
class: "justify-between"
|
|
141
142
|
}, {
|
|
142
143
|
default: s(() => [
|
|
143
|
-
o("span", Te, _(e(l)?.length > 0 ? e(l).slice(0, 4).map((y) => e(
|
|
144
|
-
n(e(
|
|
144
|
+
o("span", Te, _(e(l)?.length > 0 ? e(l).slice(0, 4).map((y) => e(F).find((L) => L.cca2 === y)?.name.common).join(", ") : "Select countries"), 1),
|
|
145
|
+
n(e(ae), { class: "ml-2 size-4 shrink-0 opacity-50" })
|
|
145
146
|
]),
|
|
146
147
|
_: 1
|
|
147
148
|
})
|
|
@@ -159,7 +160,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
159
160
|
placeholder: "Find country..."
|
|
160
161
|
}),
|
|
161
162
|
o("span", Ue, [
|
|
162
|
-
n(e(
|
|
163
|
+
n(e(de), { class: "size-4 text-muted-foreground" })
|
|
163
164
|
])
|
|
164
165
|
]),
|
|
165
166
|
n(C, null, {
|
|
@@ -170,7 +171,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
170
171
|
}),
|
|
171
172
|
n(M, { class: "max-h-72 overflow-y-scroll" }, {
|
|
172
173
|
default: s(() => [
|
|
173
|
-
(d(!0), b(X, null, H(e(
|
|
174
|
+
(d(!0), b(X, null, H(e(F), (y) => (d(), O(T, {
|
|
174
175
|
key: y.cca2,
|
|
175
176
|
value: y.cca2
|
|
176
177
|
}, {
|
|
@@ -179,7 +180,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
179
180
|
o("span", Fe, _(y.name.common), 1),
|
|
180
181
|
n(I, null, {
|
|
181
182
|
default: s(() => [
|
|
182
|
-
n(e(
|
|
183
|
+
n(e(re), { class: "size-4" })
|
|
183
184
|
]),
|
|
184
185
|
_: 1
|
|
185
186
|
})
|
|
@@ -200,8 +201,8 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
200
201
|
]),
|
|
201
202
|
e(l)?.length > 0 ? (d(), b("div", Ee, [
|
|
202
203
|
(d(!0), b(X, null, H(e(l), (y) => (d(), b("div", Pe, [
|
|
203
|
-
o("div", Be, _(e(
|
|
204
|
-
o("p", De, _(e(
|
|
204
|
+
o("div", Be, _(e(F).find((L) => L.cca2 === y)?.flag), 1),
|
|
205
|
+
o("p", De, _(e(F).find((L) => L.cca2 === y)?.name.common), 1),
|
|
205
206
|
n(g, {
|
|
206
207
|
variant: "ghost",
|
|
207
208
|
size: "icon",
|
|
@@ -209,7 +210,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
209
210
|
class: "hidden group-hover:flex ml-auto size-6"
|
|
210
211
|
}, {
|
|
211
212
|
default: s(() => [
|
|
212
|
-
n(e(
|
|
213
|
+
n(e(ce), { class: "size-3" })
|
|
213
214
|
]),
|
|
214
215
|
_: 1
|
|
215
216
|
}, 8, ["onClick"])
|
|
@@ -453,7 +454,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
453
454
|
}), bt = { class: "relative @container" }, gt = { class: "flex flex-row gap-4 justify-between max-w-5xl mx-auto mt-4 mb-6" }, ht = { class: "flex items-center" }, Ct = { class: "text-lg font-semibold mx-2" }, wt = { class: "flex flex-col @3xl:flex-row gap-4 max-w-5xl mx-auto pb-24" }, yt = { class: "flex flex-col gap-4 w-full @3xl:w-2/3" }, kt = { class: "flex flex-col gap-4 w-full @3xl:w-1/3" }, $t = {
|
|
454
455
|
key: 0,
|
|
455
456
|
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)]"
|
|
456
|
-
}, Ot = { class: "w-full max-w-5xl flex items-center justify-end mx-auto" },
|
|
457
|
+
}, Ot = { class: "w-full max-w-5xl flex items-center justify-end mx-auto" }, Ut = /* @__PURE__ */ B({
|
|
457
458
|
__name: "Detail",
|
|
458
459
|
props: {
|
|
459
460
|
config: {
|
|
@@ -462,17 +463,17 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
462
463
|
}
|
|
463
464
|
},
|
|
464
465
|
setup(P) {
|
|
465
|
-
const x = P, { hasPermission: l, hasAnyPermission: u } =
|
|
466
|
-
id:
|
|
467
|
-
status:
|
|
468
|
-
title:
|
|
469
|
-
description:
|
|
466
|
+
const x = P, { hasPermission: l, hasAnyPermission: u } = fe(), { params: a, navigateTo: r } = _e(), { confirm: g } = xe(), t = ve(x.config.project), m = oe(() => !a.value.optionId || a.value.optionId === "new"), h = R(!1), C = R(!1), I = le(ge({
|
|
467
|
+
id: E().optional(),
|
|
468
|
+
status: E().optional(),
|
|
469
|
+
title: E().min(1, "Title is required"),
|
|
470
|
+
description: E().optional(),
|
|
470
471
|
price: J(
|
|
471
472
|
(p) => p === "" ? void 0 : p,
|
|
472
473
|
q.number().positive("Must be positive").optional()
|
|
473
474
|
),
|
|
474
|
-
countries:
|
|
475
|
-
condition:
|
|
475
|
+
countries: he(E()).optional(),
|
|
476
|
+
condition: E(),
|
|
476
477
|
condition_min: J(
|
|
477
478
|
(p) => p === "" ? void 0 : p,
|
|
478
479
|
q.number().positive("Must be positive").optional()
|
|
@@ -481,7 +482,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
481
482
|
(p) => p === "" ? void 0 : p,
|
|
482
483
|
q.number().positive("Must be positive").optional()
|
|
483
484
|
)
|
|
484
|
-
})), { handleSubmit: T, errors: M, values: w, setValues: G } =
|
|
485
|
+
})), { handleSubmit: T, errors: M, values: w, setValues: G } = ie({
|
|
485
486
|
validationSchema: I,
|
|
486
487
|
initialValues: {
|
|
487
488
|
status: "published",
|
|
@@ -489,7 +490,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
489
490
|
condition: "always"
|
|
490
491
|
}
|
|
491
492
|
});
|
|
492
|
-
|
|
493
|
+
be(() => [
|
|
493
494
|
{ text: w.title ?? "New Option" }
|
|
494
495
|
]);
|
|
495
496
|
const D = T(async (p) => {
|
|
@@ -499,11 +500,11 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
499
500
|
let k = JSON.parse(JSON.stringify(p));
|
|
500
501
|
k.id = crypto.randomUUID();
|
|
501
502
|
const V = [...c, k], $ = x.config.shippingOptionsCollection.split(":");
|
|
502
|
-
await t.update($[0], null, { [$[1]]: V }), r(k.id),
|
|
503
|
+
await t.update($[0], null, { [$[1]]: V }), r(k.id), j.success("Shipping option created");
|
|
503
504
|
} else {
|
|
504
505
|
let k = JSON.parse(JSON.stringify(p));
|
|
505
506
|
const V = c.map((U) => U.id === a.value.optionId ? k : U), $ = x.config.shippingOptionsCollection.split(":");
|
|
506
|
-
await t.update($[0], null, { [$[1]]: V }), r(`${a.value.optionId}`),
|
|
507
|
+
await t.update($[0], null, { [$[1]]: V }), r(`${a.value.optionId}`), j.success("Shipping option updated");
|
|
507
508
|
}
|
|
508
509
|
C.value = !1;
|
|
509
510
|
}), z = async () => {
|
|
@@ -518,9 +519,9 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
518
519
|
let c = { ...[...await z() || []].find((U) => U.id === a.value.optionId) };
|
|
519
520
|
c.id = crypto.randomUUID(), c.status = "published", c.title = c.title + " (copy)";
|
|
520
521
|
const V = [...await z() || [], c], $ = x.config.shippingOptionsCollection.split(":");
|
|
521
|
-
await t.update($[0], null, { [$[1]]: V }), r(c.id),
|
|
522
|
+
await t.update($[0], null, { [$[1]]: V }), r(c.id), j.success("Option duplicated");
|
|
522
523
|
} catch {
|
|
523
|
-
|
|
524
|
+
j.error("Failed to duplicate option");
|
|
524
525
|
}
|
|
525
526
|
}, A = async () => {
|
|
526
527
|
if (await g("Are you sure you want to delete this option?"))
|
|
@@ -528,9 +529,9 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
528
529
|
const c = await z() || [];
|
|
529
530
|
if (c.length === 0 || !a.value.optionId) throw new Error("Error loading values");
|
|
530
531
|
const k = c.filter(($) => $.id !== a.value.optionId), V = x.config.shippingOptionsCollection.split(":");
|
|
531
|
-
await t.update(V[0], null, { [V[1]]: k }), r(""),
|
|
532
|
+
await t.update(V[0], null, { [V[1]]: k }), r(""), j.success("Option deleted");
|
|
532
533
|
} catch {
|
|
533
|
-
|
|
534
|
+
j.error("Failed to delete option");
|
|
534
535
|
}
|
|
535
536
|
};
|
|
536
537
|
return ne(() => {
|
|
@@ -545,11 +546,11 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
545
546
|
onClick: c[0] || (c[0] = (Vt) => e(r)(""))
|
|
546
547
|
}, {
|
|
547
548
|
default: s(() => [
|
|
548
|
-
n(e(
|
|
549
|
+
n(e(ue), { class: "size-4" })
|
|
549
550
|
]),
|
|
550
551
|
_: 1
|
|
551
552
|
}),
|
|
552
|
-
n(e(
|
|
553
|
+
n(e(pe), { class: "size-3" }),
|
|
553
554
|
o("h1", Ct, _(m.value ? "New Option" : e(w).title), 1)
|
|
554
555
|
]),
|
|
555
556
|
m.value ? f("", !0) : (d(), O(Z, {
|
|
@@ -584,7 +585,7 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
584
585
|
onClick: A
|
|
585
586
|
}, {
|
|
586
587
|
default: s(() => [
|
|
587
|
-
n(e(
|
|
588
|
+
n(e(me), { class: "size-4" }),
|
|
588
589
|
c[3] || (c[3] = v(" Delete option ", -1))
|
|
589
590
|
]),
|
|
590
591
|
_: 1
|
|
@@ -645,5 +646,5 @@ const Ce = { class: "flex flex-col gap-4" }, we = { class: "flex flex-col gap-2"
|
|
|
645
646
|
}
|
|
646
647
|
});
|
|
647
648
|
export {
|
|
648
|
-
|
|
649
|
+
Ut as default
|
|
649
650
|
};
|