@ketvietlab/ketsuite 0.1.24 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts +6 -6
  3. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts.map +1 -1
  4. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs +1 -1
  5. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs.map +2 -2
  6. package/dist/modules/product/product-modal-context.d.ts.map +1 -1
  7. package/dist/modules/product/product-modal-context.js +2 -0
  8. package/dist/modules/product/product-modal-context.js.map +1 -1
  9. package/dist/modules/product/product-record-tabs.d.ts +14 -0
  10. package/dist/modules/product/product-record-tabs.d.ts.map +1 -0
  11. package/dist/modules/product/product-record-tabs.js +23 -0
  12. package/dist/modules/product/product-record-tabs.js.map +1 -0
  13. package/dist/modules/product_backend/client/product-modal.d.mts +8 -7
  14. package/dist/modules/product_backend/client/product-modal.d.mts.map +1 -1
  15. package/dist/modules/product_backend/client/product-modal.mjs +1 -1
  16. package/dist/modules/product_backend/client/product-modal.mjs.map +3 -3
  17. package/dist/modules/product_backend/index.d.ts.map +1 -1
  18. package/dist/modules/product_backend/index.js +9 -0
  19. package/dist/modules/product_backend/index.js.map +1 -1
  20. package/dist/modules/product_backend/modal/product-modal-view.d.ts +6 -0
  21. package/dist/modules/product_backend/modal/product-modal-view.d.ts.map +1 -1
  22. package/dist/modules/product_backend/modal/product-modal-view.js +8 -1
  23. package/dist/modules/product_backend/modal/product-modal-view.js.map +1 -1
  24. package/dist/modules/user_backend/client/user-modal.d.mts.map +1 -1
  25. package/dist/modules/user_backend/client/user-modal.mjs +1 -1
  26. package/dist/modules/user_backend/client/user-modal.mjs.map +2 -2
  27. package/dist/scaffold/index.js +1 -1
  28. package/dist/ui/client/record-modal.d.ts +6 -0
  29. package/dist/ui/client/record-modal.d.ts.map +1 -1
  30. package/dist/ui/client/record-modal.js +4 -2
  31. package/dist/ui/client/record-modal.js.map +1 -1
  32. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"product-modal-context.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/product/product-modal-context.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAO,MAAM,EAAO,MAAM,mBAAmB,CAAA;AAwDzD,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoH/D,CAAA"}
1
+ {"version":3,"file":"product-modal-context.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/product/product-modal-context.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAO,MAAM,EAAO,MAAM,mBAAmB,CAAA;AAyDzD,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqH/D,CAAA"}
@@ -7,6 +7,7 @@
7
7
  // Media (the gallery, uploads) and the description's rich-text controller stay on
8
8
  // the server-rendered detail page for now — this context does not answer for them.
9
9
  import { defineFn } from '@ketvietlab/ketjs';
10
+ import { recordTabsFor } from './product-record-tabs.js';
10
11
  import { AUTHORIZATION_EFFECTS, effectiveFunctionKeys } from '../user/authorization.js';
11
12
  import { attributeLinesOf, describeVariants } from './functions.js';
12
13
  import { PRODUCT_TYPES } from './types.js';
@@ -162,6 +163,7 @@ export const productModalContextFunctions = {
162
163
  taxEnabled: hasTax,
163
164
  permissions,
164
165
  lang,
166
+ extensionTabs: creating ? [] : recordTabsFor(ctx, lang),
165
167
  },
166
168
  messages: messagesFor(ctx, lang),
167
169
  };
@@ -1 +1 @@
1
- {"version":3,"file":"product-modal-context.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/product/product-modal-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-modal-context.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/product/product-modal-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Ctx } from '@ketvietlab/ketjs';
2
+ type Lang = 'vi' | 'en';
3
+ /**
4
+ * Tabs other modules add to the template record modal, from the fills of
5
+ * `product_backend:template.recordTabs`. A client modal cannot render a joint, so
6
+ * it places the island itself; only an island fill can cross.
7
+ */
8
+ export declare const recordTabsFor: (ctx: Pick<Ctx, 'manifest'>, lang: Lang) => Array<{
9
+ id: string;
10
+ label: string;
11
+ island: string;
12
+ }>;
13
+ export {};
14
+ //# sourceMappingURL=product-record-tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product-record-tabs.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/product/product-record-tabs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAE5C,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAEvB;;;;GAIG;AACH,eAAO,MAAM,aAAa,QACnB,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,QACpB,IAAI,KACT,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAcrD,CAAA"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Tabs other modules add to the template record modal, from the fills of
3
+ * `product_backend:template.recordTabs`. A client modal cannot render a joint, so
4
+ * it places the island itself; only an island fill can cross.
5
+ */
6
+ export const recordTabsFor = (ctx, lang) => {
7
+ const catalog = ctx.manifest.messages?.[lang] ?? {};
8
+ const message = (key) => {
9
+ const value = catalog[key];
10
+ if (value === undefined)
11
+ return null;
12
+ return typeof value === 'string' ? value : String(value.other ?? Object.values(value)[0] ?? key);
13
+ };
14
+ return ctx.manifest.fills
15
+ .filter((fill) => fill.joint === 'product_backend:template.recordTabs')
16
+ .flatMap((fill) => {
17
+ const island = /\{%\s*island\s+"([^"]+)"\s*%\}/u.exec(fill.template)?.[1];
18
+ if (!island)
19
+ return [];
20
+ return [{ id: fill.by, label: message(`${fill.by}.productTemplateTab`) ?? fill.by, island }];
21
+ });
22
+ };
23
+ //# sourceMappingURL=product-record-tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product-record-tabs.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/product/product-record-tabs.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,GAA0B,EAC1B,IAAU,EAC4C,EAAE;IACxD,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACnD,MAAM,OAAO,GAAG,CAAC,GAAW,EAAiB,EAAE;QAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;IAClG,CAAC,CAAA;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK;SACtB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,qCAAqC,CAAC;SACtE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAChB,MAAM,MAAM,GAAG,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACzE,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAA;QACtB,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,qBAAqB,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- declare var ji: (e: any) => any, ln: (e: any) => any, dn: (e: any) => any, sn: (e: any) => any, un: {
1
+ declare var tn: (e: any) => any, dn: (e: any) => any, cn: (e: any) => any, un: (e: any) => any, gn: {
2
2
  kind: string;
3
3
  size: string;
4
4
  fixedHeight: string;
@@ -13,19 +13,20 @@ declare var ji: (e: any) => any, ln: (e: any) => any, dn: (e: any) => any, sn: (
13
13
  };
14
14
  };
15
15
  title: (e: any) => any;
16
- status: typeof dn;
17
- actions: typeof sn;
16
+ status: typeof cn;
17
+ actions: typeof un;
18
18
  body: (e: any) => any;
19
19
  tabs: {
20
20
  id: string;
21
21
  label: (e: any) => any;
22
22
  visible: (e: any) => boolean;
23
- view: typeof ji;
23
+ view: typeof tn;
24
24
  }[];
25
+ extensionTabs: (e: any) => any;
25
26
  dialogs: {
26
27
  variant: {
27
28
  title: (e: any) => any;
28
- view: typeof ln;
29
+ view: typeof dn;
29
30
  };
30
31
  };
31
32
  commands: {
@@ -132,12 +133,12 @@ declare var ji: (e: any) => any, ln: (e: any) => any, dn: (e: any) => any, sn: (
132
133
  after: string;
133
134
  };
134
135
  };
135
- }, $m: () => {
136
+ }, Bm: () => {
136
137
  view: () => any;
137
138
  mount: ({ root: o, lifetime: u }: {
138
139
  lifetime: any;
139
140
  root: any;
140
141
  }) => void;
141
142
  };
142
- export { $m as templateModal, un as templateModalDefinition };
143
+ export { Bm as templateModal, gn as templateModalDefinition };
143
144
  //# sourceMappingURL=product-modal.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-modal.d.mts","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/product_backend/client/product-modal.mjs"],"names":[],"mappings":"AACst+C,QAAA,IAA02G,EAAE,iBAAsQ,EAAszE,EAAE,iBAAke,EAAgT,EAAE,iBAA2I,EAAC,EAAE,iBAAka,EAAwtB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA2jB,EAAE;gBAAM,IAAI;gBAAa,IAAI;gBAAsB,KAAK;gBAAoB,UAAU;gBAAyB,SAAS;gBAAmB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAupB,UAAU;oBAAM,UAAU;oBAAoB,QAAQ;;;;;;oBAA4H,UAAU;oBAAM,KAAK;;;;;;;;gBAA8F,EAAE;gBAAM,MAAM;;;;;;;gBAA8F,GAAG;;;;;;;;gBAA0J,UAAU;;;;;;;gBAA4N,EAAE;gBAAM,UAAU;gBAAM,WAAW;gBAAG,QAAQ;;;;;;;gBAAuF,EAAE;;;;;;;gBAAmF,EAAE;gBAAyB,UAAU;gBAAM,WAAW;gBAA0B,OAAO;gBAAsB,MAAM;gBAAgB,MAAM;;;;;CAAmC,EAAC,EAAE;;;;;;CAAO,CAAC;AAAA,OAAM,EAAC,EAAE,IAAI,aAAa,EAAC,EAAE,IAAI,uBAAuB,EAAC,CAAC"}
1
+ {"version":3,"file":"product-modal.d.mts","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/product_backend/client/product-modal.mjs"],"names":[],"mappings":"AACu1+C,QAAA,IAA02G,EAAE,iBAAsQ,EAAszE,EAAE,iBAAke,EAAgT,EAAE,iBAA2I,EAAC,EAAE,iBAAka,EAAwtB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAqtB,EAAE;gBAAM,IAAI;gBAAa,IAAI;gBAAsB,KAAK;gBAAoB,UAAU;gBAAyB,SAAS;gBAAmB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAupB,UAAU;oBAAM,UAAU;oBAAoB,QAAQ;;;;;;oBAA4H,UAAU;oBAAM,KAAK;;;;;;;;gBAA8F,EAAE;gBAAM,MAAM;;;;;;;gBAA8F,GAAG;;;;;;;;gBAA0J,UAAU;;;;;;;gBAA4N,EAAE;gBAAM,UAAU;gBAAM,WAAW;gBAAG,QAAQ;;;;;;;gBAAuF,EAAE;;;;;;;gBAAmF,EAAE;gBAAyB,UAAU;gBAAM,WAAW;gBAA0B,OAAO;gBAAsB,MAAM;gBAAgB,MAAM;;;;;CAAmC,EAAC,EAAE;;;;;;CAAO,CAAC;AAAA,OAAM,EAAC,EAAE,IAAI,aAAa,EAAC,EAAE,IAAI,uBAAuB,EAAC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  // @ts-nocheck Generated by tools/build-backend-client.mjs — do not edit.
2
- import{each as Ya}from"/_ket/view/index.js";import{Fragment as ft,jsx as Z,jsxs as ei}from"/_ket/view/jsx-runtime.js";var bt=["action","action-leading","action-label","action-spinner","action-group"],ja=e=>ei(ft,{children:[e.loading===!0&&Z("span",{"data-ui":"action-spinner","aria-hidden":"true"}),e.loading!==!0&&e.leading!==void 0&&Z("span",{"data-ui":"action-leading","aria-hidden":"true",children:e.leading}),!e.iconOnly&&Z("span",{"data-ui":"action-label",children:e.label})]}),L=e=>Z("button",{"data-ui":"action","data-variant":e.variant??"secondary","data-size":e.size??"default",type:e.type??"button",name:e.name??null,value:e.value??null,form:e.form??null,disabled:e.disabled===!0||e.loading===!0,"aria-busy":e.loading===!0?"true":null,"aria-describedby":e.describedBy??null,children:Z(ja,{...e})});var Q=e=>Z("div",{"data-ui":"action-group",role:"group","aria-label":e.label??null,children:Ya(e.actions,(t,a)=>a,t=>Z(ft,{children:t}))});import{jsx as ti,jsxs as pn}from"/_ket/view/jsx-runtime.js";var pt=["badge","tag","tag-remove","count-badge","avatar","code"],he=e=>ti("span",{"data-ui":"badge","data-pattern":"badge","data-tone":e.tone??"neutral","data-value":e.value??"",children:e.label});import{each as ai}from"/_ket/view/index.js";import{Fragment as Oe,jsx as v,jsxs as V}from"/_ket/view/jsx-runtime.js";var ht=["notice","notice-mark","notice-copy","notice-title","notice-message","notice-actions","empty","empty-mark","empty-title","empty-message","empty-actions","loading","loading-label"],ii={info:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"M12 16v-4"}),v("path",{d:"M12 8h.01"})]}),positive:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"m9 12 2 2 4-4"})]}),warning:()=>V(Oe,{children:[v("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.46 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}),v("path",{d:"M12 9v4"}),v("path",{d:"M12 17h.01"})]}),danger:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"M12 8v4"}),v("path",{d:"M12 16h.01"})]})},I=e=>V("aside",{"data-ui":"notice","data-pattern":"notice","data-tone":e.tone??"info",role:e.tone==="danger"?"alert":"status",children:[v("span",{"data-ui":"notice-mark","aria-hidden":"true",children:v("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false",children:ii[e.tone??"info"]()})}),V("div",{"data-ui":"notice-copy",children:[v("p",{"data-ui":"notice-title",children:e.title}),v("p",{"data-ui":"notice-message",children:e.message})]}),e.actions!==void 0&&v("div",{"data-ui":"notice-actions",children:e.actions})]}),oe=e=>V("div",{"data-ui":"empty",role:"status",children:[v("span",{"data-ui":"empty-mark","aria-hidden":"true",children:"\u25C7"}),v("p",{"data-ui":"empty-title",children:e.title}),v("p",{"data-ui":"empty-message",children:e.message}),e.actions!==void 0&&v("div",{"data-ui":"empty-actions",children:e.actions})]}),de=e=>V("div",{"data-ui":"loading",role:"status","aria-live":"polite",children:[v("span",{"data-ui":"loading-label",children:e.label}),v("div",{"data-ui":"skeleton","aria-hidden":"true",children:ai(Array.from({length:Math.max(1,e.lines??3)}),(t,a)=>a,(t,a)=>v("span",{"data-ui":"skeleton-line","data-line":String(a+1)}))})]});import{each as _e}from"/_ket/view/index.js";import{each as si}from"/_ket/view/index.js";import{Fragment as Tn,jsx as kn,jsxs as Rn}from"/_ket/view/jsx-runtime.js";import{jsx as Ln,jsxs as Mn}from"/_ket/view/jsx-runtime.js";var vt=["app-shell","app-sidebar","app-main","app-right-rail","page","page-context","page-header","page-heading","page-eyebrow","page-title-row","page-title","page-description","page-subline","page-status","page-actions","page-meta","page-body","record-canvas","record-content","record-section","record-section-title"];import{Fragment as xt,jsx as P,jsxs as Y}from"/_ket/view/jsx-runtime.js";var St=["stack","inline","grid","card-grid","surface","surface-head","surface-heading","surface-title","surface-description","surface-actions","disclosure","disclosure-summary","disclosure-body","section","section-head","section-eyebrow","section-title","section-description","section-actions","section-body","content-card","card-media","card-head","card-leading","card-heading","card-eyebrow","card-title","card-summary","card-status","card-body","card-meta","card-actions","kanban","kanban-card","kanban-media","kanban-title","kanban-meta","kanban-note","kanban-actions","metric","metric-icon","metric-label","metric-value","metric-detail"],ci=e=>P(xt,{children:si(e.items,(t,a)=>a,t=>typeof t=="string"||typeof t=="number"?P("span",{children:t}):P(xt,{children:t}))}),se=e=>P("div",{"data-ui":"stack","data-pattern":"stack","data-gap":e.gap??"default",children:P(ci,{items:e.items})});var Be=e=>Y("div",{"data-ui":"surface","data-tone":e.tone??"default","data-padding":e.padding??"default","data-has-heading":e.title?"true":null,children:[e.title&&Y("header",{"data-ui":"surface-head",children:[e.description?Y("div",{"data-ui":"surface-heading",children:[P("h2",{"data-ui":"surface-title",children:e.title}),P("p",{"data-ui":"surface-description",children:e.description})]}):P("h2",{"data-ui":"surface-title",children:e.title}),e.actions!==void 0&&P("div",{"data-ui":"surface-actions",children:e.actions})]}),e.body]}),qe=e=>Y("details",{"data-ui":"disclosure",open:e.open===!0?!0:void 0,children:[P("summary",{"data-ui":"disclosure-summary",children:e.summary}),P("div",{"data-ui":"disclosure-body",children:e.body})]}),j=e=>Y("section",{"data-ui":"section",children:[Y("header",{"data-ui":"section-head",children:[Y("div",{children:[!!e.eyebrow&&P("p",{"data-ui":"section-eyebrow",children:e.eyebrow}),P("h2",{"data-ui":"section-title",children:e.title}),!!e.description&&P("p",{"data-ui":"section-description",children:e.description})]}),e.actions!==void 0&&P("div",{"data-ui":"section-actions",children:e.actions})]}),P("div",{"data-ui":"section-body",children:e.body})]});import{each as ui}from"/_ket/view/index.js";import{Fragment as mi,jsx as ye}from"/_ket/view/jsx-runtime.js";var Ve=(e,t)=>e.control!==void 0?ye(mi,{children:e.control}):e.type==="textarea"?ye("textarea",{"data-ui":"field-control",id:e.id,name:e.name,placeholder:e.placeholder??null,required:e.required===!0,disabled:e.disabled===!0,readonly:e.readOnly===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:String(e.value??"")}):e.type==="select"?ye("select",{"data-ui":"field-control",id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:ui(e.options??[],a=>a.value,a=>ye("option",{value:a.value,selected:String(e.value??"")===a.value,disabled:a.disabled===!0,children:a.label}))}):ye("input",{"data-ui":"field-control",id:e.id,type:e.type==="decimal"?"number":e.type??"text",name:e.name,value:e.type==="checkbox"?"1":String(e.value??""),checked:e.type==="checkbox"&&(e.value===!0||e.value==="1"),placeholder:e.placeholder??null,required:e.required===!0,disabled:e.disabled===!0,readonly:e.readOnly===!0,min:e.min,max:e.max,"aria-invalid":e.error?"true":null,"aria-describedby":t,autocomplete:e.autocomplete??"off",step:e.type==="decimal"?e.step??"any":e.step??null});import{jsx as R,jsxs as B}from"/_ket/view/jsx-runtime.js";var kt=["field","field-label","field-required","field-control","field-options","field-option","field-option-input","field-help","field-error"],Rt=e=>!!e.error||(e.fields?.some(Rt)??!1),ee=e=>{let t=e.help?`${e.id}-help`:null,a=e.error?`${e.id}-error`:null,n=[t,a].filter(Boolean).join(" ")||null,c=B("span",{"data-ui":"field-label",children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]});return e.fields?B("div",{"data-ui":"field","data-kind":"group","data-span":"full","data-invalid":String(!!e.error),children:[R(qe,{summary:e.label,open:e.open||Rt(e),body:R("div",{"data-ui":"form-grid",children:_e(e.fields.map(s=>({...s,disabled:e.disabled||s.disabled,readOnly:e.readOnly||s.readOnly})),s=>s.id,s=>R(ee,{...s}))})}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="checkbox-group"?B("div",{"data-ui":"field","data-kind":"checkbox-group","data-span":e.span??"half","data-invalid":String(!!e.error),children:[B("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),R("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"group","aria-labelledby":`${e.id}-label`,children:_e(e.options??[],s=>s.name??s.value,s=>B("label",{"data-ui":"field-option",children:[R("input",{"data-ui":"field-option-input",type:"checkbox",name:s.name??`${e.name}[]`,value:s.value,checked:s.checked===!0,disabled:e.disabled===!0||s.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":n,autocomplete:"off"}),R("span",{children:s.label})]}))}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="radio"?B("div",{"data-ui":"field","data-kind":"radio","data-span":e.span??"half","data-invalid":String(!!e.error),children:[B("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),R("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"radiogroup","aria-labelledby":`${e.id}-label`,children:_e(e.options??[],s=>s.value,s=>B("label",{"data-ui":"field-option",children:[R("input",{"data-ui":"field-option-input",type:"radio",name:e.name,value:s.value,checked:String(e.value??"")===s.value,required:e.required===!0,disabled:e.disabled===!0||s.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":n,autocomplete:"off"}),R("span",{children:s.label})]}))}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):B("label",{"data-ui":"field","data-kind":e.type??"text","data-span":e.span??"half","data-invalid":String(!!e.error),for:e.id,children:[e.type==="checkbox"&&Ve(e,n),c,e.type!=="checkbox"&&Ve(e,n),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]})};import{each as gi}from"/_ket/view/index.js";import{jsx as ce,jsxs as Ge}from"/_ket/view/jsx-runtime.js";var Tt=["breadcrumbs","breadcrumb","breadcrumb-overflow","breadcrumb-overflow-trigger","breadcrumb-overflow-list","nav-list","nav-item","nav-item-leading","nav-item-label","nav-item-count","tabs","tab","tab-count","tabbed-view","tabbed-view-context","tab-panel"];var wt=e=>Ge("a",{"data-ui":"tab","data-active":e.active===!0?"true":null,id:e.elementId,href:e.href,"aria-current":e.active===!0?"page":null,"aria-controls":e.controls,children:[e.label,e.count!==void 0&&ce("span",{"data-ui":"tab-count",children:String(e.count)})]}),Ct=(e,t)=>`${e}-${t.replace(/[^a-zA-Z0-9_-]+/gu,"-")}-tab`,Pt=e=>Ge("nav",{"data-ui":"tabs","data-pattern":"tabs","aria-label":e.label,children:[gi(e.items,t=>t.id,t=>ce(wt,{...t,elementId:e.id?Ct(e.id,t.id):void 0,controls:e.panelId})),e.extension]}),Lt=e=>ce("section",{"data-ui":"tab-panel",id:e.id,"aria-labelledby":e.labelledBy,tabindex:"-1",children:e.body}),ze=e=>{let t=`${e.id}-tabs`,a=`${e.id}-panel`,n=e.items.find(c=>c.active===!0);return Ge("div",{"data-ui":"tabbed-view",children:[e.context!==void 0&&e.context!==""?ce("div",{"data-ui":"tabbed-view-context",children:e.context}):"",ce(Pt,{id:t,label:e.label,items:e.items,extension:e.extension,panelId:a}),ce(Lt,{id:a,labelledBy:n?Ct(t,n.id):void 0,body:e.body})]})};import{jsx as Qn,jsxs as Yn}from"/_ket/view/jsx-runtime.js";var Mt=["progress","progress-label","progress-value","progress-track","progress-bar"];import{each as Ht}from"/_ket/view/index.js";import{Fragment as bi,jsx as M,jsxs as te}from"/_ket/view/jsx-runtime.js";var Ot=["menu","menu-trigger","menu-trigger-count","menu-panel","menu-search","menu-search-input","menu-label","menu-separator","menu-item","menu-item-leading","menu-item-copy","menu-item-check","menu-item-shortcut"],Ue=e=>te("details",{"data-ui":"menu","data-align":e.align??"start","data-size":e.size==="compact"?"compact":null,"data-active":e.count?"true":null,"data-placement":e.placement??"bottom",open:e.open===!0?!0:void 0,children:[te("summary",{"data-ui":"menu-trigger","aria-haspopup":"menu","aria-controls":`${e.id}-panel`,"aria-label":e.trigger!==void 0?e.label:void 0,title:e.trigger!==void 0?e.label:void 0,children:[e.trigger??e.label,!!e.count&&M("span",{"data-ui":"menu-trigger-count",children:String(e.count)})]}),te("div",{"data-ui":"menu-panel",id:`${e.id}-panel`,role:"menu","aria-label":e.label,children:[e.search&&te("form",{"data-ui":"menu-search",role:"search",method:"get",action:e.search.action,children:[Ht(Object.entries(e.search.hidden??{}),([t])=>t,([t,a])=>M("input",{type:"hidden",name:t,value:a})),M("input",{"data-ui":"menu-search-input",type:"search",name:e.search.name,value:e.search.value??"",placeholder:e.search.placeholder??e.search.label,"aria-label":e.search.label,autocomplete:"off"})]}),Ht(e.items,t=>t.id,t=>{if(t.kind==="separator")return M("hr",{"data-ui":"menu-separator"});if(t.kind==="label")return M("span",{"data-ui":"menu-label",role:"presentation",children:t.label});let a=t.checked===void 0?"menuitem":"menuitemcheckbox",n=te(bi,{children:[t.checked!==void 0&&M("span",{"data-ui":"menu-item-check","aria-hidden":"true",children:t.checked?"\u2713":""}),t.leading!==void 0&&M("span",{"data-ui":"menu-item-leading","aria-hidden":"true",children:t.leading}),te("span",{"data-ui":"menu-item-copy",children:[M("span",{children:t.label}),t.description&&M("small",{children:t.description})]}),t.shortcut&&M("kbd",{"data-ui":"menu-item-shortcut",children:t.shortcut})]});return t.disabled?M("span",{"data-ui":"menu-item",role:a,"aria-checked":t.checked===void 0?null:String(t.checked),"aria-disabled":"true",tabIndex:"-1",children:n}):t.href?M("a",{"data-ui":"menu-item","data-destructive":t.destructive?"true":null,role:a,"aria-checked":t.checked===void 0?null:String(t.checked),href:t.href,children:n}):M("button",{"data-ui":"menu-item","data-destructive":t.destructive?"true":null,role:a,"aria-checked":t.checked===void 0?null:String(t.checked),type:"submit",name:t.name??"intent",value:t.value??t.id,form:t.form??null,children:n})})]})]}),We=e=>M(Ue,{...e,trigger:te("span",{children:[e.triggerLabel??e.label," \xB7\xB7\xB7"]}),align:e.align??"end"});import{jsx as nr,jsxs as rr}from"/_ket/view/jsx-runtime.js";var Dt=["popover","popover-trigger","popover-panel","popover-close"];import{jsx as dr,jsxs as sr}from"/_ket/view/jsx-runtime.js";var Et=["tooltip","tooltip-trigger","tooltip-content"];import{jsx as K,jsxs as ve}from"/_ket/view/jsx-runtime.js";var At=["modal-layer","modal-backdrop","modal-sheet","modal-head","modal-heading","modal-title-row","modal-title","modal-description","modal-close","modal-body","modal-actions"],xe=e=>{let t=e.mode==="client",a=e.mode==="embedded";return ve("div",{"data-ui":"modal-layer","data-mode":e.mode??"overlay","data-route-modal":a||t?null:"true","data-client-modal":t?"true":null,"data-presentation":e.presentation??"sheet","data-unsaved-prompt":e.unsavedPrompt??null,children:[t?K("button",{"data-ui":"modal-backdrop",type:"button","aria-label":e.closeLabel,tabindex:"-1",children:K("span",{children:e.closeLabel})}):K("a",{"data-ui":"modal-backdrop",href:e.closeHref??"#","aria-label":e.closeLabel,children:K("span",{children:e.closeLabel})}),ve("section",{id:e.id,"data-ui":"modal-sheet","data-size":e.size??"default","data-height":e.height==="fixed"?"fixed":null,style:e.height==="fixed"&&e.fixedHeight?`height: ${e.fixedHeight} !important`:"",role:"dialog","aria-modal":a?"false":"true","aria-labelledby":`${e.id}-title`,"aria-describedby":e.description?`${e.id}-description`:null,tabindex:a?null:"-1",children:[ve("header",{"data-ui":"modal-head",children:[ve("div",{"data-ui":"modal-heading",children:[ve("div",{"data-ui":"modal-title-row",children:[K("h2",{"data-ui":"modal-title",id:`${e.id}-title`,children:e.title}),e.status!==void 0&&e.status]}),!!e.description&&K("p",{"data-ui":"modal-description",id:`${e.id}-description`,children:e.description})]}),t?K("button",{"data-ui":"modal-close",type:"button","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"}):K("a",{"data-ui":"modal-close",href:e.closeHref??"#","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"})]}),K("div",{"data-ui":"modal-body",children:e.body}),e.actions!==void 0&&K("footer",{"data-ui":"modal-actions",children:e.actions})]})]})};import{jsx as pr}from"/_ket/view/jsx-runtime.js";var It=["dialog","confirm-dialog-message"];import{each as vr}from"/_ket/view/index.js";import{jsx as Sr,jsxs as kr}from"/_ket/view/jsx-runtime.js";var Ft=["toast-region","toast","toast-copy","toast-title","toast-message","toast-actions"];import{jsx as wr}from"/_ket/view/jsx-runtime.js";var Jt=["spinner","visually-hidden"];import{each as Lr}from"/_ket/view/index.js";import{jsx as Hr}from"/_ket/view/jsx-runtime.js";var Xt=["skeleton","skeleton-line"];var Dr=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","summary",'[tabindex]:not([tabindex="-1"])'].join(",");var fi=['[data-ui="timeframe-menu"]','[data-ui="view-settings"]'],Er=fi.map(e=>`${e}[open]`).join(", ");import{jsx as Fr,jsxs as Jr}from"/_ket/view/jsx-runtime.js";import{jsx as Br,jsxs as qr}from"/_ket/view/jsx-runtime.js";var $t=["switch-control","switch-track"];import{each as zr}from"/_ket/view/index.js";import{Fragment as Qr,jsx as Wr,jsxs as Zr}from"/_ket/view/jsx-runtime.js";var Bt=["combobox","combobox-input-row","combobox-toggle","combobox-listbox","combobox-option","combobox-empty","tag-picker"];import{jsx as al,jsxs as il}from"/_ket/view/jsx-runtime.js";var qt=["date-range"];import{jsx as ol,jsxs as dl}from"/_ket/view/jsx-runtime.js";var Vt=["file-upload","drop-zone","upload-status"];import{jsx as ml}from"/_ket/view/jsx-runtime.js";var _t=["relation-picker"];import{each as fl}from"/_ket/view/index.js";import{jsx as vl,jsxs as xl}from"/_ket/view/jsx-runtime.js";var zt=["search-bar","filter-bar","applied-filters","applied-filter","saved-views","saved-view","view-settings","view-settings-options"];import{jsx as Tl,jsxs as wl}from"/_ket/view/jsx-runtime.js";var Gt=["inline-edit","inline-edit-value","inline-edit-form","inline-edit-actions"];import{each as Xl}from"/_ket/view/index.js";import{each as Hl}from"/_ket/view/index.js";import{Fragment as Il,jsx as El,jsxs as Al}from"/_ket/view/jsx-runtime.js";var Ut=["list-chrome","list-chrome-row","list-search","list-search-label","list-search-input","list-search-submit","list-filter-menus","list-facets","list-facet","list-facet-count","list-view-switch","list-view","list-sort","list-sort-label","list-sort-select","list-status","list-actions","bulk-actions","bulk-summary","bulk-count","bulk-action-list","pager-bar","pager-summary","pager-pages","pager-page","pager-actions","pager-link"];import{jsx as Bl,jsxs as ql}from"/_ket/view/jsx-runtime.js";var Wt=["resource-list","resource-list-item","resource-list-select","resource-list-link"];import{each as zl}from"/_ket/view/index.js";import{jsx as Ul,jsxs as Wl}from"/_ket/view/jsx-runtime.js";var Zt=["data-grid-scroll","data-grid","data-grid-cap","data-grid-cell"];import{each as Yl}from"/_ket/view/index.js";import{jsx as eo,jsxs as to}from"/_ket/view/jsx-runtime.js";var Qt=["tree","tree-item","tree-link","tree-grid","tree-grid-row"];import{each as no}from"/_ket/view/index.js";import{jsx as lo,jsxs as oo}from"/_ket/view/jsx-runtime.js";var Yt=["data-matrix","data-matrix-head","data-matrix-heading","data-matrix-eyebrow","data-matrix-title","data-matrix-description","data-matrix-summary","data-matrix-scroll","data-matrix-table","data-matrix-column","data-matrix-row-head","data-matrix-row-leading","data-matrix-row-title","data-matrix-row-description","data-matrix-row-status","data-matrix-row-actions","data-matrix-cell"];import{each as uo}from"/_ket/view/index.js";import{jsx as go,jsxs as bo}from"/_ket/view/jsx-runtime.js";var jt=["bar-chart","bar-chart-rows","bar-chart-row","bar-chart-label","bar-chart-caption","bar-chart-track","bar-chart-fill","bar-chart-segment","bar-chart-value","bar-chart-scale","bar-chart-legend","bar-chart-legend-item","bar-chart-legend-swatch","bar-chart-empty"];import{each as ho}from"/_ket/view/index.js";import{jsx as vo,jsxs as xo}from"/_ket/view/jsx-runtime.js";var ea=["timeframe","timeframe-menu","timeframe-trigger","timeframe-label","timeframe-value","timeframe-content","timeframe-option","timeframe-option-label","timeframe-option-detail","timeframe-range","timeframe-asof","timeframe-note"];import{each as Ro}from"/_ket/view/index.js";import{jsx as Co,jsxs as Po}from"/_ket/view/jsx-runtime.js";var ta=["description-list","key-value","key-value-label","key-value-value","person","person-body","avatar-group","status"];import{jsx as Ho}from"/_ket/view/jsx-runtime.js";var aa=["formatted-date","formatted-number","formatted-money"];import{each as Eo}from"/_ket/view/index.js";import{jsx as ia,jsxs as Xo}from"/_ket/view/jsx-runtime.js";var ra=["record-summary","record-summary-main","record-actions","record-rail"];var Qe=e=>ia("nav",{"data-ui":"record-actions","aria-label":e.label??"Record actions",children:ia(Q,{actions:e.actions})});import{each as $o}from"/_ket/view/index.js";import{jsx as _o,jsxs as zo}from"/_ket/view/jsx-runtime.js";var la=["activity-timeline","activity-item","activity-marker","audit-log","audit-item"];import{each as Wo}from"/_ket/view/index.js";import{jsx as Yo,jsxs as jo}from"/_ket/view/jsx-runtime.js";var oa=["attachments","attachment","media-gallery","media-item"];import{each as ad}from"/_ket/view/index.js";import{Fragment as ld,jsx as nd,jsxs as rd}from"/_ket/view/jsx-runtime.js";var da=["app-navigation","navigation-trigger","navigation-trigger-icon","navigation-trigger-identity","navigation-trigger-label","navigation-layer","navigation-backdrop","navigation-drawer","navigation-header","navigation-identity","navigation-context","navigation-close","navigation-groups","navigation-group","navigation-group-label","navigation-items","navigation-supplementary","navigation-item","navigation-branch","navigation-branch-trigger","navigation-children","navigation-item-leading","navigation-item-copy","navigation-item-label","navigation-item-description","navigation-item-count","navigation-footer"];import{each as ue}from"/_ket/view/index.js";import{Fragment as ba,jsx as h,jsxs as _}from"/_ket/view/jsx-runtime.js";var sa=["table-scroll","table","table-caption","select-col","select-all","col","sort-link","sort-icon","row","group-row","group-cell","group-link","group-indent","group-count","group-pager","group-pager-actions","cell","select-cell","row-select","row-link"],Si=e=>e.shownColumns??e.columns.filter(t=>t.hidden!==!0).map(t=>t.key),ki=e=>{let t=new Set(Si(e));return e.columns.filter(a=>t.has(a.key))},ca=(e,t)=>t.length+(e.selection?1:0),Ri=(e,t)=>e.sort?.direction?e.sort.direction==="ascending"?t?.sortedAscending??"Sorted ascending":t?.sortedDescending??"Sorted descending":null,Ti=(e,t)=>h("th",{"data-ui":"col","data-col":e.key,"data-align":e.align??"start","data-kind":e.kind??"text","data-width":e.width??null,"data-optional":e.optional===!0?"true":null,"data-sort":e.sort?.direction??null,"aria-sort":e.sort?.direction??null,scope:"col",children:e.sort?_("a",{"data-ui":"sort-link",href:e.sort.href,"aria-label":e.sort.label??e.label,children:[h("span",{children:e.label}),!!e.sort.direction&&h("span",{"data-ui":"sort-icon","aria-hidden":"true",title:Ri(e,t)??void 0,children:e.sort.direction==="ascending"?"\u2191":"\u2193"})]}):e.label}),wi=e=>e.selection?h("th",{"data-ui":"select-col",scope:"col",children:h("input",{"data-ui":"select-all",type:"checkbox",name:e.selection.selectAllName??"select-all","aria-label":e.labels?.selectAll??"Select all rows",disabled:e.selection.disabled===!0})}):null,ua=(e,t)=>e.selected?.(t)===!0?!0:e.selection?.selectedIds?.includes(e.id(t))===!0,Ci=(e,t,a)=>_(ba,{children:[e.selection&&h("td",{"data-ui":"select-cell",children:h("input",{"data-ui":"row-select",type:"checkbox",name:e.selection.name??"ids",form:e.selection.form,value:e.id(a),checked:ua(e,a),"aria-label":e.labels?.selectRow?.(a,e.id(a))??`Select row ${e.id(a)}`,disabled:e.selection.disabled===!0})}),ue(t,n=>n.key,n=>h("td",{"data-ui":"cell","data-col":n.key,"data-linked":e.rowHref&&n===t[0]?"true":null,"data-align":n.align??"start","data-kind":n.kind??"text","data-priority":n.priority??"secondary","data-label":e.responsive==="stack"?n.label:null,children:e.rowHref&&n===t[0]?h("a",{"data-ui":"row-link",href:e.rowHref(a),children:n.cell(a)}):n.cell(a)}))]}),ma=(e,t,a)=>h("tr",{"data-ui":"row","data-row":e.id(a),"data-selected":ua(e,a)?"true":null,children:Ci(e,t,a)}),Pi=(e,t,a)=>a?h("tr",{"data-ui":"group-pager",children:_("td",{colSpan:String(ca(e,t)),children:[h("span",{children:a.label}),_("span",{"data-ui":"group-pager-actions",children:[a.previousHref&&h("a",{href:a.previousHref,"aria-label":e.labels?.previousPage??"Previous page",children:"\u2039"}),a.nextHref&&h("a",{href:a.nextHref,"aria-label":e.labels?.nextPage??"Next page",children:"\u203A"})]})]})}):null,ga=(e,t,a,n)=>_(ba,{children:[h("tr",{"data-ui":"group-row","data-group":a.id,"data-depth":String(n),children:_("th",{"data-ui":"group-cell",colSpan:String(ca(e,t)),scope:"rowgroup",children:[h("span",{"data-ui":"group-indent",style:`--kv-group-depth: ${n}`,"aria-hidden":"true"}),a.href?h("a",{"data-ui":"group-link",href:a.href,children:a.label}):h("span",{"data-ui":"group-link",children:a.label}),a.count!==void 0&&h("span",{"data-ui":"group-count",children:String(a.count)})]})}),ue(a.rows??[],e.id,c=>ma(e,t,c)),ue(a.children??[],c=>c.id,c=>ga(e,t,c,n+1)),Pi(e,t,a.pager)]}),Ee=e=>{let t=ki(e),a=e.groups??[],c=e.rows.length>0||a.length>0?h("div",{"data-ui":"table-scroll","data-pattern":"data-table","data-framed":e.title?"false":null,"data-responsive":e.responsive??"scroll","data-gutter":e.gutter==="compact"?"compact":null,children:_("table",{"data-ui":"table","aria-label":e.caption?null:e.title??null,children:[!!e.caption&&h("caption",{"data-ui":"table-caption",children:e.caption}),h("thead",{children:_("tr",{children:[wi(e),ue(t,s=>s.key,s=>Ti(s,e.labels))]})}),h("tbody",{children:a.length>0?ue(a,s=>s.id,s=>ga(e,t,s,0)):ue(e.rows,e.id,s=>ma(e,t,s))})]})}):h(oe,{title:e.emptyTitle??"No records",message:e.emptyMessage??"There is nothing to show yet.",actions:e.emptyActions});return e.title?h(Be,{title:e.title,actions:e.actions,padding:"none",body:c}):c};import{jsx as Sd,jsxs as kd}from"/_ket/view/jsx-runtime.js";var fa=["list-page","list-page-context","list-page-header","list-page-heading","list-page-title-row","list-page-eyebrow","list-page-title","list-page-description","list-page-actions","list-page-toolbar","list-page-controls","list-page-status","list-page-body","list-page-footer"];import{jsx as Cd,jsxs as Pd}from"/_ket/view/jsx-runtime.js";var pa=["record-page","record-page-context","record-page-header","record-page-title-row","record-page-heading","record-page-title","record-page-subline","record-page-status","record-page-description","record-page-actions","record-page-meta","record-page-controller","record-page-navigation","record-page-layout","record-page-body","record-page-aside"];var ha=["form-page","form-page-context","form-page-header","form-page-title-row","form-page-heading","form-page-title","form-page-subline","form-page-status","form-page-description","form-page-actions","form-page-meta","form-page-controller","form-page-navigation","form-page-layout","form-page-body","form-page-aside"];import{jsx as Fd,jsxs as Jd}from"/_ket/view/jsx-runtime.js";var ya=["dashboard-page","dashboard-page-context","dashboard-page-header","dashboard-page-heading","dashboard-page-eyebrow","dashboard-page-title-row","dashboard-page-title","dashboard-page-subline","dashboard-page-status","dashboard-page-description","dashboard-page-actions","dashboard-page-meta","dashboard-page-body"];var va=["board-page","board-page-context","board-page-header","board-page-heading","board-page-eyebrow","board-page-title-row","board-page-title","board-page-subline","board-page-status","board-page-description","board-page-actions","board-page-meta","board-page-toolbar","board-page-controls","board-page-body"];import{each as zd}from"/_ket/view/index.js";import{jsx as Ud,jsxs as Wd}from"/_ket/view/jsx-runtime.js";var xa=["pipeline","pipeline-step","pipeline-arrow","pipeline-step-label","pipeline-step-value","pipeline-step-node"];import{each as es}from"/_ket/view/index.js";import{jsx as ns,jsxs as rs}from"/_ket/view/jsx-runtime.js";var Sa=["record-form","form-errors","form-grid","form-actions"];var ka={actions:bt,feedback:ht,fields:kt,status:pt,navigation:Tt,progress:Mt,menu:Ot,popover:Dt,tooltip:Et,dialog:It,toast:Ft,spinner:Jt,skeleton:Xt,scalarFields:$t,combobox:Bt,dateTime:qt,upload:Vt,relationPicker:_t,listControls:zt,inlineEdit:Gt,resourceList:Wt,dataGrid:Zt,tree:Qt,matrix:Yt,barChart:jt,timeframe:ea,recordDisplay:ta,formattedValues:aa,recordComposition:ra,activity:la,media:oa,layouts:St,shell:vt,appNavigation:da,table:sa,listChrome:Ut,listPage:fa,formPage:ha,recordPage:pa,dashboardPage:ya,boardPage:va,modal:At,pipeline:xa,form:Sa},Mi=[...new Set(Object.values(ka).flat())].sort(),Hi=Object.freeze(Object.fromEntries(Object.entries(ka).map(([e,t])=>[e,[...t]])));import{signal as D}from"/_ket/view/index.js";import{jsx as Di}from"/_ket/view/jsx-runtime.js";var Ae="record";var Oi=/^[a-z][a-z0-9_]*(?:\.[a-zA-Z][a-zA-Z0-9_]*)+$/u,Ra=e=>Oi.test(e),Ye=(e,t)=>{if(!Ra(t.kind))throw new TypeError(`invalid record kind "${t.kind}"`);let a=new URL(String(e),"http://ket.local");return a.searchParams.set(Ae,`${t.kind}:${t.id}`),t.tab?a.searchParams.set("tab",t.tab):a.searchParams.delete("tab"),`${a.pathname}${a.search}`};var Ta=e=>{let t=new URL(String(e),"http://ket.local");return t.searchParams.delete(Ae),t.searchParams.delete("tab"),`${t.pathname}${t.search}`},Se=e=>{let t=new URL(String(e),"http://ket.local"),a=t.searchParams.get(Ae)??"",n=a.indexOf(":");if(n<=0||n===a.length-1)return null;let c=a.slice(0,n);return Ra(c)?{kind:c,id:a.slice(n+1),tab:t.searchParams.get("tab")}:null},je=e=>Di("span",{"data-ui":"record-modal-host","data-record-kind":e,hidden:!0});import{Fragment as ke,jsx as Dm,jsxs as Re}from"/_ket/view/jsx-runtime.js";var Ca=e=>{let t=e??{};return(Array.isArray(t.errors)?t.errors:Array.isArray(t.issues)?t.issues:[]).map(n=>{let c=n??{},s=Array.isArray(c.path)?c.path.join("."):null;return{field:typeof c.field=="string"?c.field:s,code:String(c.code??"invalid"),message:typeof c.message=="string"?c.message:null,params:c.params&&typeof c.params=="object"?c.params:{}}})},Pa=async(e,t,a={})=>{let n=await fetch(`/_ket/fn/${encodeURIComponent(e)}`,{method:"POST",credentials:"same-origin",headers:{"content-type":"application/json",...a.idempotencyKey?{"idempotency-key":a.idempotencyKey}:{}},body:JSON.stringify(t),signal:a.signal}),c=await n.json().catch(()=>({}));if(!n.ok||c.ok===!1)return{ok:!1,issues:Ca(c.error??c),message:c.error?.message??c.message??null,status:n.status};let s=c.value;return s&&typeof s=="object"&&s.ok===!1?{ok:!1,issues:Ca(s),message:null,status:n.status}:{ok:!0,value:c.value}},Ei=30,Ai=Object.freeze({"recordModal.close":"Close","recordModal.loading":"Loading\u2026","recordModal.loadFailed":"The record could not be read.","recordModal.notFound":"The record is gone or you cannot see it.","recordModal.retry":"Retry","recordModal.errorTitle":"Not saved","recordModal.saveFailed":"That did not work. Try again.","recordModal.savedTitle":"Saved","recordModal.saved":"The change is in.","recordModal.unsaved":"Discard what you typed?","recordModal.uploadFailed":"The file could not be uploaded. Try again."}),Ii=(e,t)=>t.messages?.[e]??t.previous?.[e]??t.labels?.[e]??Ai[e]??e,me="__command",La="data-record-dialog",Fi=(e,t={})=>e.replace(/\{([a-zA-Z0-9_]+)\}/gu,(a,n)=>n in t?String(t[n]??""):a),Da=["a[href]","button:not(:disabled)",'input:not(:disabled):not([type="hidden"])',"select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),Ma=e=>[...e.querySelectorAll(Da)].filter(t=>!t.hidden&&t.getAttribute("aria-hidden")!=="true"&&!t.matches('[data-ui="modal-backdrop"]')),Ji=e=>{for(let t of e.querySelectorAll('input:not([type="hidden"])'))if(!t.disabled){if(t.type==="checkbox"||t.type==="radio"){if(t.checked!==t.defaultChecked)return!0}else if(t.value!==t.defaultValue)return!0}for(let t of e.querySelectorAll("textarea"))if(!t.disabled&&t.value!==t.defaultValue)return!0;for(let t of e.querySelectorAll("select"))if(!t.disabled){for(let a of t.options)if(a.selected!==a.defaultSelected)return!0}return!1},Xi=e=>{let t=[],a=e;for(;a&&a!==document.body;){let n=a.parentElement;if(!n)break;for(let c of n.children)c instanceof HTMLElement&&c!==a&&!c.matches("script, style, template")&&(t.push({element:c,inert:c.inert}),c.inert=!0);a=n}return()=>{for(let{element:n,inert:c}of t)n.inert=c}},Ki=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,H=()=>({values:{},checks:{}}),Ha=(e,t)=>`${e}\0${t}`,Oa=e=>e.after??"close",Ni=400,$i=(e,t=Ni)=>{let a,n=()=>{clearTimeout(a),a=void 0};return{set:c=>{if(n(),!c){e(!1);return}a=setTimeout(()=>e(!0),t)},stop:n}},Bi='a, button, input, select, textarea, label, summary, details, [data-ui="select-cell"]',qi=e=>{let t=e?.closest("a[href]");return t?t.target&&t.target!=="_self"?null:t.href:e?.closest(Bi)?null:e?.closest("[data-row-href]")?.getAttribute("data-row-href")??null},Ea=e=>()=>{let t=D(null),a=D("idle"),n=D(null),c=D(null),s=D([]),ae=D(H()),E=D(H()),it=D(!1),nt=D(!1),rt=$i(o=>nt.set(o)),ge=D(!1),lt=o=>{it.set(o),rt.set(o),o&&ge.set(!1)},A=D(null),Xe=D(0),z=D({}),F=new Map,_a=(o,u)=>{for(F.delete(o),F.set(o,u);F.size>Ei;)F.delete(F.keys().next().value)},O=null,we=null,Ce=!1,Ke=null,J=null,ie=null,be=null,za=()=>typeof e.labels=="function"?e.labels():e.labels??{},X=(o,u)=>Fi(Ii(o,{messages:n()?.messages,previous:be,labels:za()}),u),ot=o=>(e.tabs??[]).filter(u=>u.visible?.(o)??!0),Pe=(o,u,m="record")=>{let g=()=>m==="dialog"?E():ae(),d={kind:e.kind,id:o.id,creating:o.id==="new",tab:o.tab,data:u,t:X,fieldError:f=>{let i=s().find(l=>l.field===f);return i?i.message??X(i.code,i.params):null},draft:(f,i="")=>g().values[f]??i,draftChecked:(f,i="1",l=!1)=>g().checks[Ha(f,i)]??l,busy:nt(),dialog:A(),href:f=>Ye(location.href,{kind:e.kind,id:o.id,tab:f}),state:(f,i="")=>z()[f]??i},k=ot(d);return k.length&&!k.some(f=>f.id===o.tab)&&(d.tab=k[0].id),d},ne=async(o,u=!1)=>{we?.abort();let m=new AbortController;we=m;let g=e.cache===!1?void 0:F.get(o);g&&(be=g.messages??be,n.set(g),a.set("ready"),u=!0),u||a.set("loading"),c.set(null);try{let d=o==="new",k=e.context.input?e.context.input(o,d):d?{}:{id:o},f=await Pa(e.context.fn,k,{signal:m.signal});if(m.signal.aborted)return;if(!f.ok||!f.value){c.set(f.ok?"recordModal.notFound":f.message??"recordModal.loadFailed"),a.set("error");return}be=f.value.messages??be,e.cache!==!1&&_a(o,f.value),n.set(f.value),a.set("ready")}catch(d){if(m.signal.aborted||d?.name==="AbortError")return;c.set("recordModal.loadFailed"),a.set("error")}},Le=()=>O?[...O.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]')]:[],Ne=()=>Le()[0]??null,dt=()=>Le().at(-1)??null,Me=(o,u)=>{if(!o)return;let m=u==="dialog"?E():ae(),g={values:{...m.values},checks:{...m.checks}};for(let d of o.querySelectorAll("input[name], select[name], textarea[name]"))if(!(d.disabled||d.name===me)){if(d instanceof HTMLInputElement){if(d.type==="file"||d.type==="hidden")continue;if(d.type==="checkbox"||d.type==="radio"){g.checks[Ha(d.name,d.value)]=d.checked,d.type==="checkbox"?g.values[d.name]=d.checked?d.value:"":d.checked&&(g.values[d.name]=d.value);continue}}g.values[d.name]=d.value}u==="dialog"?E.set(g):ae.set(g)},st=()=>{let o=Le();Me(o[0]??null,"record"),o.length>1&&Me(o.at(-1)??null,"dialog")},ct=o=>!o||!Ji(o)?!0:globalThis.confirm(X("recordModal.unsaved")),fe=o=>{requestAnimationFrame(()=>{let u=Le(),m=u[0],g=u.at(-1);if(!g)return;m&&(m.inert=u.length>1);let d=o?.();if(d?.isConnected&&g.contains(d)){d.focus();return}if(g.contains(document.activeElement))return;let k=g.querySelector('[data-ui="modal-sheet"]');(Ma(g).find(i=>!i.matches('[data-ui="modal-close"]'))??k)?.focus()})},G=(o,u,m,g)=>{let d=t(),k=d?.id===o,f=u??(k?d.tab:"");k||(Ke=document.activeElement instanceof HTMLElement?document.activeElement:null,s.set([]),ge.set(!1),ae.set(H()),E.set(H()),z.set({}),A.set(null),J=null,n.set(null),ne(o)),t.set({id:o,tab:f});let i=Ye(location.href,{kind:e.kind,id:o,tab:f||null});m==="push"?(history.replaceState({...history.state??{},__ketScroll:[window.scrollX,window.scrollY]},"",location.href),history.pushState({...history.state??{},__ketRecordModal:e.kind},"",i),Ce=!0):m==="replace"&&history.replaceState(history.state??{},"",i),O&&!ie&&(ie=Xi(O)),fe(g)},He=o=>{we?.abort(),t.set(null),A.set(null),s.set([]),ge.set(!1),ae.set(H()),E.set(H()),z.set({}),a.set("idle"),n.set(null),ie?.(),ie=null,o==="history"&&Ce?(Ce=!1,history.back()):o!=="none"&&(Ce=!1,history.replaceState(history.state??{},"",Ta(location.href)));let u=Ke;Ke=null,J=null,u?.isConnected&&requestAnimationFrame(()=>u.focus())},ut=()=>{if(A()){if(!ct(dt()))return;let o=J;J=null,A.set(null),E.set(H()),s.set([]),fe(()=>o?.isConnected?o:null);return}ct(Ne())&&He("history")},Ga=async(o,u,m)=>{let g=e.commands?.[o],d=t(),k=n()?.data;if(!g||!d||k===void 0||it())return;let f=new FormData(u,m instanceof HTMLButtonElement?m:null),i=u.closest('[data-ui="modal-layer"][data-client-modal="true"]'),l=A()&&i===dt()?"dialog":"record";Me(i,l);let b=Pe(d,k,l);if(g.confirm){let y=g.confirm(b);if(y&&!globalThis.confirm(y))return}lt(!0),s.set([]);try{let y={};for(let[w,re]of Object.entries(g.upload??{})){let W=f.get(w);if(!(W instanceof File)||W.size===0)continue;let pe=new FormData;for(let[Za,Qa]of Object.entries(re(f,b)))pe.append(Za,Qa);pe.append("file",W,W.name);let gt=await fetch("/files",{method:"POST",credentials:"same-origin",body:pe}),le=await gt.json().catch(()=>null);if(!gt.ok||!le?.id){s.set([{field:null,code:"recordModal.uploadFailed",message:typeof le?.message=="string"?le.message:null,params:{}}]);return}y[w]={id:String(le.id),name:typeof le.name=="string"?le.name:null}}let C=(w,re)=>Pa(w,re,{idempotencyKey:Ki()}),x=await C(g.fn,g.input(f,b,y));for(let w of x.ok?g.also??[]:[])if(!(w.when&&!w.when(b))&&(x=await C(w.fn,w.input(f,b,y)),!x.ok))break;if(!x.ok){s.set(x.issues.length?x.issues:[{field:null,code:x.message??"recordModal.saveFailed",message:x.message,params:{}}]);return}l==="dialog"?E.set(H()):ae.set(H()),u.reset();let U=x.value,$=Oa(g)==="open"?g.created?.(x.value)??(U&&typeof U=="object"&&U.id!=null?String(U.id):null):null;F.delete(d.id),$&&F.delete($);let q=()=>{document.dispatchEvent(new CustomEvent("ket:records-changed",{detail:{kind:e.kind,ids:[$??d.id]}}))},T=Oa(g);if(T!=="close"&&ge.set(!0),T==="open"){A.set(null),E.set(H()),$?G($,g.openTab??null,"replace"):He("history"),q();return}if(q(),T==="close")He("history");else if(T==="reload"){let w=J;J=null,A.set(null),E.set(H()),await ne(d.id),fe(()=>w?.isConnected?w:null)}else if(T==="refresh")await ne(d.id,!0);else if(T==="stay")Xe.set(Xe()+1);else if("tab"in T)J=null,A.set(null),E.set(H()),G(d.id,T.tab,"replace"),await ne(d.id);else{let w=T.dialog?null:J;J=T.dialog&&m instanceof HTMLElement?m:null,A.set(T.dialog?{name:T.dialog,params:{}}:null),E.set(H()),await ne(d.id,!0),fe(()=>w?.isConnected?w:null)}}catch{s.set([{field:null,code:"recordModal.saveFailed",message:null,params:{}}])}finally{lt(!1)}},mt=o=>{let u=s().filter(d=>!d.field),m=s().filter(d=>d.field&&!O?.querySelector(`[name="${CSS.escape(d.field)}"]`)),g=[...u,...m];return g.length?I({title:o.t("recordModal.errorTitle"),message:g.map(d=>d.message??o.t(d.code,d.params)).join(" \xB7 "),tone:"danger"}):ge()?I({title:o.t("recordModal.savedTitle"),message:o.t("recordModal.saved"),tone:"positive"}):""},Ua=()=>{let o=t();if(!o)return"";if(a()==="error")return Re(ke,{children:[I({title:X("recordModal.errorTitle"),message:X(c()??"recordModal.loadFailed"),tone:"danger"}),L({label:X("recordModal.retry"),variant:"secondary",name:"intent",value:"retry"})]});let u=n()?.data;if(a()!=="ready"||u===void 0)return de({label:X("recordModal.loading")});let m=Pe(o,u),g=ot(m),d=g.find(l=>l.id===m.tab),k=e.header?.(m)??"",f=mt(m),i=d?d.view(m):e.body?.(m)??"";return g.length?ze({id:`record-view-${e.kind.replaceAll(".","-")}`,label:e.title(m),items:g.map(l=>({id:l.id,label:l.label(m),href:m.href(l.id),active:l.id===m.tab})),context:k!==""||f!==""?Re(ke,{children:[k,f]}):void 0,body:i}):Re(ke,{children:[k,f,i]})},Wa=()=>{let o=t(),u=A(),m=n()?.data;if(!o||!u||m===void 0)return"";let g=e.dialogs?.[u.name];if(!g)return"";let d=Pe(o,m,"dialog");return xe({id:`record-dialog-${e.kind.replaceAll(".","-")}-${u.name}`,mode:"client",presentation:"dialog",size:g.size??"default",title:g.title(d),closeLabel:X("recordModal.close"),body:Re(ke,{children:[mt(d),g.view(d)]})})};return{view:()=>{Xe();let o=t();if(!o)return je(e.kind);let u=n()?.data,m=u===void 0?null:Pe(o,u);return Re(ke,{children:[je(e.kind),xe({id:`record-modal-${e.kind.replaceAll(".","-")}`,mode:"client",presentation:"dialog",size:e.size??"default",height:(e.tabs?.length??0)>1?"fixed":"content",fixedHeight:e.fixedHeight,title:m?e.title(m):X("recordModal.loading"),description:m?e.description?.(m)??null:null,status:m?e.status?.(m):void 0,actions:m?e.actions?.(m):void 0,closeLabel:X("recordModal.close"),body:Ua()}),Wa()]})},mount:({root:o,lifetime:u})=>{O=o,document.addEventListener("click",i=>{if(i.defaultPrevented||i.button!==0||i.metaKey||i.ctrlKey||i.shiftKey||i.altKey)return;let l=i.target instanceof Element?i.target:null,b=l?.closest('[data-ui="modal-layer"][data-client-modal="true"]');if(b&&O?.contains(b)){if(l?.closest('[data-ui="modal-close"], [data-ui="modal-backdrop"], [data-record-close]')){i.preventDefault(),ut();return}let $=l?.closest("button[data-record-state], a[data-record-state]");if($){i.preventDefault(),st(),z.set({...z(),[$.getAttribute("data-record-state")??""]:$.getAttribute("data-record-value")??""});return}let q=l?.closest(`[${La}]`);if(q){i.preventDefault();let T=document.activeElement;J=T instanceof HTMLElement&&q.contains(T)?T:q.querySelector(Da),E.set(H());let w={};for(let[re,W]of Object.entries(q.dataset))re.startsWith("recordParam")&&W!==void 0&&(w[re.slice(11).replace(/^./u,pe=>pe.toLowerCase())]=W);s.set([]),A.set({name:q.getAttribute(La)??"",params:w}),fe();return}if(l?.closest('button[name="intent"][value="retry"]')){i.preventDefault();let T=t();T&&ne(T.id);return}}let y=qi(l);if(!y)return;let C=new URL(y,location.href);if(C.origin!==location.origin||C.pathname!==location.pathname)return;let x=Se(C);if(!x||x.kind!==e.kind)return;i.preventDefault();let U=t();if(U?.id===x.id){if((x.tab??"")===U.tab)return;Me(Ne(),"record"),s.set([]),G(x.id,x.tab??null,"replace",()=>Ne()?.querySelector('[data-ui="tab"][data-active="true"]')??null);return}G(x.id,x.tab??null,"push")},{signal:u,capture:!0}),document.addEventListener("keydown",i=>{if(i.defaultPrevented||i.key!=="Enter"&&i.key!==" ")return;let l=i.target instanceof Element?i.target:null;if(!l?.matches('[data-row-href][tabindex="0"]'))return;let b=l.getAttribute("data-row-href"),y=b?new URL(b,location.href):null;if(!y||y.origin!==location.origin||y.pathname!==location.pathname)return;let C=Se(y);!C||C.kind!==e.kind||(i.preventDefault(),G(C.id,C.tab??null,"push"))},{signal:u,capture:!0}),document.addEventListener("submit",i=>{let l=i.target instanceof HTMLFormElement?i.target:null;if(!l||!O?.contains(l))return;i.preventDefault();let b=i.submitter??null,y=(b instanceof HTMLButtonElement&&b.name===me?b.value:null)??String(new FormData(l).get(me)??"");Ga(y,l,b)},{signal:u}),document.addEventListener("keydown",i=>{if(!t())return;let l=O?.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]'),b=l?.[l.length-1];if(!b)return;if(i.key==="Escape"){i.preventDefault(),ut();return}if(i.key!=="Tab")return;let y=Ma(b);if(!y.length){i.preventDefault(),b.querySelector('[data-ui="modal-sheet"]')?.focus();return}let C=y[0],x=y.at(-1);i.shiftKey&&(document.activeElement===C||!b.contains(document.activeElement))?(i.preventDefault(),x.focus()):!i.shiftKey&&(document.activeElement===x||!b.contains(document.activeElement))&&(i.preventDefault(),C.focus())},{signal:u}),document.addEventListener("change",i=>{let l=i.target instanceof Element?i.target:null;if(!(!l||!O?.contains(l))){if((l instanceof HTMLSelectElement||l instanceof HTMLInputElement)&&l.hasAttribute("data-record-state")){st(),z.set({...z(),[l.getAttribute("data-record-state")??""]:l.value});return}l instanceof HTMLInputElement&&l.type==="file"&&l.hasAttribute("data-record-submit")&&l.files?.length&&l.form?.requestSubmit()}},{signal:u});let m=i=>{let b=(i.target instanceof Element?i.target:null)?.closest("form[data-record-dropzone]")??null;return b&&O?.contains(b)?b:null};document.addEventListener("dragover",i=>{let l=m(i);l&&(i.preventDefault(),l.dataset.drag="1")},{signal:u}),document.addEventListener("dragleave",i=>{let l=m(i);if(!l)return;let b=i.relatedTarget;b instanceof Node&&l.contains(b)||delete l.dataset.drag},{signal:u}),document.addEventListener("drop",i=>{let l=m(i);if(!l)return;i.preventDefault(),delete l.dataset.drag;let b=i.dataTransfer?.files,y=l.querySelector('input[type="file"]');if(!y||!b?.length)return;let C=new DataTransfer;C.items.add(b[0]),y.files=C.files,l.requestSubmit()},{signal:u});let g="ket-island, div[data-ket-island]",d=i=>i instanceof Element&&(i.matches(g)||i.querySelector(g)!==null),k=new MutationObserver(i=>{for(let l of i){for(let b of l.removedNodes)d(b)&&document.dispatchEvent(new CustomEvent("ket:islands-detach",{detail:{root:b}}));for(let b of l.addedNodes)d(b)&&b.isConnected&&document.dispatchEvent(new CustomEvent("ket:islands-attach",{detail:{root:b}}))}});k.observe(O,{childList:!0,subtree:!0}),u.addEventListener("abort",()=>k.disconnect()),document.addEventListener("ket:records-changed",i=>{let l=i.detail;if(l?.kind===e.kind)if(!Array.isArray(l.ids)||!l.ids.length)F.clear();else for(let b of l.ids)F.delete(String(b))},{signal:u}),document.addEventListener("ket:popstate",i=>{let l=Se(location.href),b=l?.kind===e.kind;!b&&!t()||(i.preventDefault(),b&&l?G(l.id,l.tab??null,"none"):He("none"))},{signal:u});let f=Se(location.href);f?.kind===e.kind&&G(f.id,f.tab??null,"none"),u.addEventListener("abort",()=>{we?.abort(),rt.stop(),ie?.(),ie=null,O=null})}}};import{jsx as N,jsxs as Ka}from"/_ket/view/jsx-runtime.js";var Te=e=>Ka("form",{"data-ui":"record-form",method:"post",action:"","data-record-kind":e.kind,id:e.id,children:[e.command?N("input",{type:"hidden",name:me,value:e.command,autocomplete:"off"}):"",N("div",{"data-ui":"form-grid",children:e.fields.map(t=>ee(t))}),e.actions?.length?N("div",{"data-ui":"form-actions",children:Q({actions:e.actions})}):""]}),Aa=e=>N("select",{"data-ui":"field-control","data-record-state":e.state,id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.invalid?"true":null,children:e.options.map(t=>N("option",{value:t.value,selected:t.value===e.value,children:t.label}))}),Ia=e=>N("span",{"data-record-dialog":e.dialog,"data-record-param-id":e.id??null,children:e.children}),Fa=e=>Ka("form",{"data-ui":"record-form","data-layout":"actions",method:"post",action:"","data-record-kind":e.kind,children:[N("input",{type:"hidden",name:me,value:e.command,autocomplete:"off"}),Object.entries(e.hidden??{}).map(([t,a])=>N("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),e.children]}),Ja=e=>N("form",{id:e.id,"data-record-kind":e.kind,method:"post",action:"",hidden:!0}),Xa=e=>N("span",{"data-record-close":"true",children:e.children});var Je="__command",Vi=["none","lot","serial"],Na=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,$a=()=>typeof document<"u"&&document.documentElement.lang==="en"?"en":"vi",r=(e,t,a)=>e.t(`product_backend.${t}`,a),S=(e,t)=>String(e.get(t)??"").trim(),Ie=(e,t)=>["1","on","true"].includes(String(e.get(t)??"")),Fe=(e,t,a="0")=>{let n=S(e,t);return n===""?a:n},_i=e=>{let t=Number(e);return Number.isFinite(t)?t.toLocaleString("vi-VN"):String(e)},tt=e=>e.data.permissions.save===!0,zi=e=>`product-template-${e}`,p=(e,t)=>({...t,id:zi(t.name),value:t.type==="checkbox"?e.draftChecked(t.name,"1",t.value===!0||t.value==="1"):t.type==="checkbox-group"?t.value:e.draft(t.name,String(t.value??"")),options:t.type==="checkbox-group"?t.options?.map(a=>({...a,checked:e.draftChecked(a.name??`${t.name}[]`,a.value,a.checked===!0)})):t.options,error:e.fieldError(t.name),disabled:t.disabled===!0||!tt(e)}),Gi=(e,t)=>{let a=p(e,{name:t.name,label:t.label,type:"select",required:t.required});return{...a,options:t.options,control:Aa({id:a.id,name:t.name,state:t.name,value:t.value,options:t.options,required:t.required,disabled:a.disabled===!0,invalid:!!a.error})}},at=(e,t,a,n="primary")=>L({type:"submit",name:Je,value:t,label:a,variant:n,loading:e.busy}),Ba=(e,t,a,n)=>Fa({kind:e.kind,command:t,hidden:a,children:L({type:"submit",label:n,variant:"secondary",size:"compact",loading:e.busy})}),et="product-template-more-form",qa="product-template-general-form",Ui=(e,t)=>Ja({kind:e.kind,id:t}),Wi=e=>Xa({children:L({label:r(e,"action.close"),variant:"secondary"})}),Va=e=>e.data.types.map(t=>({value:t,label:r(e,`type.${t}`)})),Zi=e=>{let t=e.data.record;return[p(e,{name:"businessUse",label:r(e,"field.businessUse"),type:"checkbox-group",span:"full",options:[{name:"saleOk",value:"1",label:r(e,"field.saleOk"),checked:t.saleOk},{name:"purchaseOk",value:"1",label:r(e,"field.purchaseOk"),checked:t.purchaseOk}]}),p(e,{name:"type",label:r(e,"field.productKind"),type:"radio",value:t.type,required:!0,span:"full",options:Va(e)}),p(e,{name:"name",label:r(e,"field.name"),value:t.name,required:!0,span:"full"}),p(e,{name:"uomId",label:r(e,"field.uom"),type:"select",value:t.uomId??"",options:[{value:"",label:"\u2014"},...e.data.uoms]}),p(e,{name:"listPrice",label:r(e,"field.listPrice"),type:"decimal",value:t.listPrice}),p(e,{name:"categoryId",label:r(e,"field.category"),type:"select",value:t.categoryId??"",options:[{value:"",label:"\u2014"},...e.data.categories]}),p(e,{name:"description",label:r(e,"field.description"),type:"textarea",value:t.description,span:"full"}),...e.data.hasVariants?[]:[p(e,{name:"defaultCode",label:r(e,"field.defaultCode"),value:t.defaultCode}),p(e,{name:"barcode",label:r(e,"field.barcode"),value:t.barcode})],p(e,{name:"brandId",label:r(e,"field.brand"),type:"select",value:t.brandId??"",options:[{value:"",label:"\u2014"},...e.data.brands]}),p(e,{name:"origin",label:r(e,"field.origin"),value:t.origin,span:"full"})]},Qi=e=>[p(e,{name:"isStorable",label:r(e,"field.isStorable"),type:"checkbox",value:e.data.record.isStorable}),p(e,{name:"tracking",label:r(e,"field.tracking"),type:"select",value:e.data.record.tracking,options:Vi.map(t=>({value:t,label:r(e,`tracking.${t}`)}))})],Yi=e=>[p(e,{name:"taxId",label:r(e,"field.taxRate"),type:"select",value:e.data.record.taxId??"",options:[{value:"",label:"\u2014"},...e.data.taxes]})],ji=e=>{let t=tt(e);return j({title:r(e,"tabs.general"),body:se({gap:"compact",items:[t?"":I({title:r(e,"readOnly.title"),message:r(e,"readOnly.message")}),Te({id:qa,kind:e.kind,fields:[...Zi(e),...e.data.stockEnabled?Qi(e):[],...e.data.taxEnabled?Yi(e):[]]})]})})},en=e=>e.data.attributeLines.length?Ee({rows:e.data.attributeLines,id:t=>String(t.id),columns:[{key:"attribute",label:r(e,"attributes.nameColumn"),priority:"primary",cell:t=>String(t.attribute??t.attributeId)},{key:"values",label:r(e,"attributes.values"),cell:t=>(Array.isArray(t.values)?t.values:[]).map(a=>String(a.name)).join(" \xB7 ")},{key:"actions",label:r(e,"attributes.actions"),cell:t=>e.data.permissions.removeAttributeLine?Ba(e,"removeAttributeLine",{id:String(t.id)},r(e,"attributes.removeLine")):""}]}):I({title:r(e,"attributes.linesEmpty"),message:r(e,"attributes.linesEmptyHint")}),tn=e=>{if(!e.data.permissions.saveAttributeLine||!e.data.attributes.length)return"";let t=e.state("attributeId",String(e.data.attributes[0]?.value??"")),a=e.data.attributeValuesByAttribute[t]??[];return Te({kind:e.kind,fields:[Gi(e,{name:"attributeId",label:r(e,"attributes.attribute"),value:t,required:!0,options:e.data.attributes.map(n=>({value:String(n.value),label:String(n.label)}))}),p(e,{name:"valueIds",label:r(e,"attributes.values"),type:"checkbox-group",span:"full",required:!0,options:a.map(n=>({name:`value_${n.value}`,value:"1",label:n.label}))})],actions:[at(e,"saveAttributeLine",r(e,"attributes.addLine"),"secondary")]})},an=e=>e.data.variants.length?Ee({rows:e.data.variants,id:t=>String(t.id),columns:[{key:"code",label:r(e,"variants.code"),priority:"primary",cell:t=>Ia({dialog:"variant",id:String(t.id),children:L({label:String(t.defaultCode||t.name||t.id),variant:"tertiary",size:"compact"})})},{key:"values",label:r(e,"variants.values"),cell:t=>(Array.isArray(t.values)?t.values:[]).map(a=>String(a.value)).join(" \xB7 ")},{key:"price",label:r(e,"field.listPrice"),cell:()=>_i(e.data.record.listPrice)},{key:"state",label:r(e,"col.state"),cell:t=>he({label:t.active===!1?r(e,"state.archived"):r(e,"variants.selling"),tone:t.active===!1?"neutral":"positive"})}]}):I({title:r(e,"variants.empty"),message:r(e,"variants.panelHint")}),nn=e=>se({gap:"loose",items:[j({title:r(e,"attributes.panelTitle"),description:r(e,"attributes.panelHint"),body:se({gap:"compact",items:[en(e),tn(e)]})}),j({title:r(e,"variants.title"),description:r(e,"variants.panelHint"),actions:e.data.permissions.generateVariants?Ba(e,"generateVariants",{},r(e,"variants.generate")):void 0,body:an(e)})]}),rn=e=>e.data.variants.find(t=>String(t.id)===e.dialog?.params.id),ln=e=>{let t=rn(e);return t?Te({kind:e.kind,fields:[p(e,{name:"defaultCode",label:r(e,"field.defaultCode"),value:t.defaultCode}),p(e,{name:"barcode",label:r(e,"field.barcode"),value:t.barcode}),p(e,{name:"weight",label:r(e,"field.weight"),type:"decimal",value:t.weight??0}),p(e,{name:"volume",label:r(e,"field.volume"),type:"decimal",value:t.volume??0})],actions:e.data.permissions.saveVariant?[at(e,"variantSave",r(e,"action.save"))]:[]}):I({title:r(e,"variants.empty"),message:""})},on=e=>{let t=[];return e.data.permissions.archive&&t.push({id:"archive",label:e.data.record.active?r(e,"archive.action"):r(e,"archive.restore"),name:Je,value:"archive",form:et}),e.data.permissions.delete&&t.push({id:"delete",label:r(e,"action.delete"),name:Je,value:"delete",form:et,destructive:!0}),t},dn=e=>e.creating?"":he({label:e.data.record.active?r(e,"state.active"):r(e,"state.archived"),tone:e.data.record.active?"positive":"neutral"}),sn=e=>{if(e.creating)return;let t=tt(e),a=on(e);return se({gap:"compact",items:[a.length?Ui(e,et):"",Qe({label:r(e,"action.more"),actions:[t?L({type:"submit",name:Je,value:"save",label:r(e,"action.save"),variant:"primary",loading:e.busy,form:qa,disabled:e.tab!=="general"}):"",Wi(e),a.length?We({id:"product-template-more",label:r(e,"action.more"),triggerLabel:r(e,"action.moreShort"),items:a,placement:"top"}):""]})]})},cn=e=>j({title:r(e,"create.title"),description:r(e,"create.subtitle"),body:Te({kind:e.kind,fields:[p(e,{name:"type",label:r(e,"field.productKind"),type:"radio",value:"goods",required:!0,span:"full",options:Va(e)}),p(e,{name:"name",label:r(e,"field.name"),required:!0,span:"full"}),p(e,{name:"uomId",label:r(e,"field.uom"),type:"select",options:[{value:"",label:"\u2014"},...e.data.uoms]}),p(e,{name:"categoryId",label:r(e,"field.category"),type:"select",options:[{value:"",label:"\u2014"},...e.data.categories]}),p(e,{name:"listPrice",label:r(e,"field.listPrice"),type:"decimal",value:"0"}),p(e,{name:"description",label:r(e,"field.description"),type:"textarea",span:"full"})],actions:[at(e,"create",r(e,"action.create"))]})}),un={kind:"product.template",size:"large",fixedHeight:"min(48rem, calc(100dvh - var(--kv-space-12)))",context:{fn:"product.templateModalContext",input:(e,t)=>t?{locale:$a()}:{id:e,locale:$a()}},title:e=>e.creating?r(e,"create.title"):e.data.record.name,status:dn,actions:sn,body:e=>e.creating?cn(e):"",tabs:[{id:"general",label:e=>r(e,"tabs.general"),visible:e=>!e.creating,view:ji},{id:"variants",label:e=>r(e,"tabs.variants"),visible:e=>!e.creating,view:nn}],dialogs:{variant:{title:e=>r(e,"variants.edit"),view:ln}},commands:{create:{fn:"product.saveTemplate",input:e=>({id:Na(),name:S(e,"name"),type:S(e,"type")||"goods",uomId:S(e,"uomId")||null,categoryId:S(e,"categoryId")||null,listPrice:Fe(e,"listPrice"),description:S(e,"description")||null}),after:"open",openTab:"general",created:e=>{let t=e??{};return typeof t.id=="string"?t.id:null}},save:{fn:"product.saveTemplate",input:(e,t)=>({id:t.id,name:S(e,"name"),type:S(e,"type")||"goods",uomId:S(e,"uomId")||null,categoryId:S(e,"categoryId")||null,brandId:S(e,"brandId")||null,origin:S(e,"origin")||null,description:S(e,"description")||null,listPrice:Fe(e,"listPrice"),saleOk:Ie(e,"saleOk"),purchaseOk:Ie(e,"purchaseOk"),...t.data.hasVariants?{}:{defaultCode:S(e,"defaultCode")||null,barcode:S(e,"barcode")||null}}),also:[{fn:"stock.configureProduct",when:e=>e.data.stockEnabled&&e.data.permissions.configureStock,input:(e,t)=>({templateId:t.id,isStorable:Ie(e,"isStorable"),tracking:S(e,"tracking")||"none"})},{fn:"account.setProductTax",when:e=>e.data.taxEnabled&&e.data.permissions.setTax,input:(e,t)=>({templateId:t.id,taxId:S(e,"taxId")||null})}],after:"refresh"},archive:{fn:"product.archiveTemplate",input:(e,t)=>({id:t.id,active:!t.data.record.active}),after:"refresh"},delete:{fn:"product.deleteTemplates",input:(e,t)=>({ids:[t.id]}),confirm:e=>r(e,"archive.deleteConfirm",{name:e.data.record.name}),after:"close"},generateVariants:{fn:"product.generateVariants",input:(e,t)=>({templateId:t.id}),after:"refresh"},saveAttributeLine:{fn:"product.saveAttributeLine",input:(e,t)=>{let a=S(e,"attributeId"),c=(t.data.attributeValuesByAttribute[a]??[]).map(s=>String(s.value)).filter(s=>Ie(e,`value_${s}`));return{id:Na(),templateId:t.id,attributeId:a,valueIds:c}},after:"refresh"},removeAttributeLine:{fn:"product.removeAttributeLine",input:e=>({id:S(e,"id")}),after:"refresh"},variantSave:{fn:"product.saveVariant",input:(e,t)=>({id:t.dialog?.params.id??"",templateId:t.id,defaultCode:S(e,"defaultCode")||null,barcode:S(e,"barcode")||null,weight:Fe(e,"weight"),volume:Fe(e,"volume")}),after:"reload"}}},$m=Ea(un);export{$m as templateModal,un as templateModalDefinition};
2
+ import{each as ja}from"/_ket/view/index.js";import{Fragment as ft,jsx as Z,jsxs as ti}from"/_ket/view/jsx-runtime.js";var bt=["action","action-leading","action-label","action-spinner","action-group"],ei=e=>ti(ft,{children:[e.loading===!0&&Z("span",{"data-ui":"action-spinner","aria-hidden":"true"}),e.loading!==!0&&e.leading!==void 0&&Z("span",{"data-ui":"action-leading","aria-hidden":"true",children:e.leading}),!e.iconOnly&&Z("span",{"data-ui":"action-label",children:e.label})]}),L=e=>Z("button",{"data-ui":"action","data-variant":e.variant??"secondary","data-size":e.size??"default",type:e.type??"button",name:e.name??null,value:e.value??null,form:e.form??null,disabled:e.disabled===!0||e.loading===!0,"aria-busy":e.loading===!0?"true":null,"aria-describedby":e.describedBy??null,children:Z(ei,{...e})});var Q=e=>Z("div",{"data-ui":"action-group",role:"group","aria-label":e.label??null,children:ja(e.actions,(t,a)=>a,t=>Z(ft,{children:t}))});import{jsx as ai,jsxs as yn}from"/_ket/view/jsx-runtime.js";var pt=["badge","tag","tag-remove","count-badge","avatar","code"],he=e=>ai("span",{"data-ui":"badge","data-pattern":"badge","data-tone":e.tone??"neutral","data-value":e.value??"",children:e.label});import{each as ii}from"/_ket/view/index.js";import{Fragment as Oe,jsx as v,jsxs as V}from"/_ket/view/jsx-runtime.js";var ht=["notice","notice-mark","notice-copy","notice-title","notice-message","notice-actions","empty","empty-mark","empty-title","empty-message","empty-actions","loading","loading-label"],ni={info:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"M12 16v-4"}),v("path",{d:"M12 8h.01"})]}),positive:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"m9 12 2 2 4-4"})]}),warning:()=>V(Oe,{children:[v("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.46 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}),v("path",{d:"M12 9v4"}),v("path",{d:"M12 17h.01"})]}),danger:()=>V(Oe,{children:[v("circle",{cx:"12",cy:"12",r:"10"}),v("path",{d:"M12 8v4"}),v("path",{d:"M12 16h.01"})]})},I=e=>V("aside",{"data-ui":"notice","data-pattern":"notice","data-tone":e.tone??"info",role:e.tone==="danger"?"alert":"status",children:[v("span",{"data-ui":"notice-mark","aria-hidden":"true",children:v("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false",children:ni[e.tone??"info"]()})}),V("div",{"data-ui":"notice-copy",children:[v("p",{"data-ui":"notice-title",children:e.title}),v("p",{"data-ui":"notice-message",children:e.message})]}),e.actions!==void 0&&v("div",{"data-ui":"notice-actions",children:e.actions})]}),oe=e=>V("div",{"data-ui":"empty",role:"status",children:[v("span",{"data-ui":"empty-mark","aria-hidden":"true",children:"\u25C7"}),v("p",{"data-ui":"empty-title",children:e.title}),v("p",{"data-ui":"empty-message",children:e.message}),e.actions!==void 0&&v("div",{"data-ui":"empty-actions",children:e.actions})]}),de=e=>V("div",{"data-ui":"loading",role:"status","aria-live":"polite",children:[v("span",{"data-ui":"loading-label",children:e.label}),v("div",{"data-ui":"skeleton","aria-hidden":"true",children:ii(Array.from({length:Math.max(1,e.lines??3)}),(t,a)=>a,(t,a)=>v("span",{"data-ui":"skeleton-line","data-line":String(a+1)}))})]});import{each as _e}from"/_ket/view/index.js";import{each as ci}from"/_ket/view/index.js";import{Fragment as Cn,jsx as Tn,jsxs as wn}from"/_ket/view/jsx-runtime.js";import{jsx as Hn,jsxs as On}from"/_ket/view/jsx-runtime.js";var vt=["app-shell","app-sidebar","app-main","app-right-rail","page","page-context","page-header","page-heading","page-eyebrow","page-title-row","page-title","page-description","page-subline","page-status","page-actions","page-meta","page-body","record-canvas","record-content","record-section","record-section-title"];import{Fragment as xt,jsx as P,jsxs as Y}from"/_ket/view/jsx-runtime.js";var St=["stack","inline","grid","card-grid","surface","surface-head","surface-heading","surface-title","surface-description","surface-actions","disclosure","disclosure-summary","disclosure-body","section","section-head","section-eyebrow","section-title","section-description","section-actions","section-body","content-card","card-media","card-head","card-leading","card-heading","card-eyebrow","card-title","card-summary","card-status","card-body","card-meta","card-actions","kanban","kanban-card","kanban-media","kanban-title","kanban-meta","kanban-note","kanban-actions","metric","metric-icon","metric-label","metric-value","metric-detail"],ui=e=>P(xt,{children:ci(e.items,(t,a)=>a,t=>typeof t=="string"||typeof t=="number"?P("span",{children:t}):P(xt,{children:t}))}),se=e=>P("div",{"data-ui":"stack","data-pattern":"stack","data-gap":e.gap??"default",children:P(ui,{items:e.items})});var Be=e=>Y("div",{"data-ui":"surface","data-tone":e.tone??"default","data-padding":e.padding??"default","data-has-heading":e.title?"true":null,children:[e.title&&Y("header",{"data-ui":"surface-head",children:[e.description?Y("div",{"data-ui":"surface-heading",children:[P("h2",{"data-ui":"surface-title",children:e.title}),P("p",{"data-ui":"surface-description",children:e.description})]}):P("h2",{"data-ui":"surface-title",children:e.title}),e.actions!==void 0&&P("div",{"data-ui":"surface-actions",children:e.actions})]}),e.body]}),qe=e=>Y("details",{"data-ui":"disclosure",open:e.open===!0?!0:void 0,children:[P("summary",{"data-ui":"disclosure-summary",children:e.summary}),P("div",{"data-ui":"disclosure-body",children:e.body})]}),j=e=>Y("section",{"data-ui":"section",children:[Y("header",{"data-ui":"section-head",children:[Y("div",{children:[!!e.eyebrow&&P("p",{"data-ui":"section-eyebrow",children:e.eyebrow}),P("h2",{"data-ui":"section-title",children:e.title}),!!e.description&&P("p",{"data-ui":"section-description",children:e.description})]}),e.actions!==void 0&&P("div",{"data-ui":"section-actions",children:e.actions})]}),P("div",{"data-ui":"section-body",children:e.body})]});import{each as mi}from"/_ket/view/index.js";import{Fragment as gi,jsx as ye}from"/_ket/view/jsx-runtime.js";var Ve=(e,t)=>e.control!==void 0?ye(gi,{children:e.control}):e.type==="textarea"?ye("textarea",{"data-ui":"field-control",id:e.id,name:e.name,placeholder:e.placeholder??null,required:e.required===!0,disabled:e.disabled===!0,readonly:e.readOnly===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:String(e.value??"")}):e.type==="select"?ye("select",{"data-ui":"field-control",id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:mi(e.options??[],a=>a.value,a=>ye("option",{value:a.value,selected:String(e.value??"")===a.value,disabled:a.disabled===!0,children:a.label}))}):ye("input",{"data-ui":"field-control",id:e.id,type:e.type==="decimal"?"number":e.type??"text",name:e.name,value:e.type==="checkbox"?"1":String(e.value??""),checked:e.type==="checkbox"&&(e.value===!0||e.value==="1"),placeholder:e.placeholder??null,required:e.required===!0,disabled:e.disabled===!0,readonly:e.readOnly===!0,min:e.min,max:e.max,"aria-invalid":e.error?"true":null,"aria-describedby":t,autocomplete:e.autocomplete??"off",step:e.type==="decimal"?e.step??"any":e.step??null});import{jsx as R,jsxs as B}from"/_ket/view/jsx-runtime.js";var kt=["field","field-label","field-required","field-control","field-options","field-option","field-option-input","field-help","field-error"],Rt=e=>!!e.error||(e.fields?.some(Rt)??!1),ee=e=>{let t=e.help?`${e.id}-help`:null,a=e.error?`${e.id}-error`:null,n=[t,a].filter(Boolean).join(" ")||null,c=B("span",{"data-ui":"field-label",children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]});return e.fields?B("div",{"data-ui":"field","data-kind":"group","data-span":"full","data-invalid":String(!!e.error),children:[R(qe,{summary:e.label,open:e.open||Rt(e),body:R("div",{"data-ui":"form-grid",children:_e(e.fields.map(s=>({...s,disabled:e.disabled||s.disabled,readOnly:e.readOnly||s.readOnly})),s=>s.id,s=>R(ee,{...s}))})}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="checkbox-group"?B("div",{"data-ui":"field","data-kind":"checkbox-group","data-span":e.span??"half","data-invalid":String(!!e.error),children:[B("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),R("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"group","aria-labelledby":`${e.id}-label`,children:_e(e.options??[],s=>s.name??s.value,s=>B("label",{"data-ui":"field-option",children:[R("input",{"data-ui":"field-option-input",type:"checkbox",name:s.name??`${e.name}[]`,value:s.value,checked:s.checked===!0,disabled:e.disabled===!0||s.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":n,autocomplete:"off"}),R("span",{children:s.label})]}))}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="radio"?B("div",{"data-ui":"field","data-kind":"radio","data-span":e.span??"half","data-invalid":String(!!e.error),children:[B("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&R("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),R("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"radiogroup","aria-labelledby":`${e.id}-label`,children:_e(e.options??[],s=>s.value,s=>B("label",{"data-ui":"field-option",children:[R("input",{"data-ui":"field-option-input",type:"radio",name:e.name,value:s.value,checked:String(e.value??"")===s.value,required:e.required===!0,disabled:e.disabled===!0||s.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":n,autocomplete:"off"}),R("span",{children:s.label})]}))}),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):B("label",{"data-ui":"field","data-kind":e.type??"text","data-span":e.span??"half","data-invalid":String(!!e.error),for:e.id,children:[e.type==="checkbox"&&Ve(e,n),c,e.type!=="checkbox"&&Ve(e,n),!!e.help&&R("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&R("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]})};import{each as bi}from"/_ket/view/index.js";import{jsx as ce,jsxs as Ge}from"/_ket/view/jsx-runtime.js";var Tt=["breadcrumbs","breadcrumb","breadcrumb-overflow","breadcrumb-overflow-trigger","breadcrumb-overflow-list","nav-list","nav-item","nav-item-leading","nav-item-label","nav-item-count","tabs","tab","tab-count","tabbed-view","tabbed-view-context","tab-panel"];var wt=e=>Ge("a",{"data-ui":"tab","data-active":e.active===!0?"true":null,id:e.elementId,href:e.href,"aria-current":e.active===!0?"page":null,"aria-controls":e.controls,children:[e.label,e.count!==void 0&&ce("span",{"data-ui":"tab-count",children:String(e.count)})]}),Ct=(e,t)=>`${e}-${t.replace(/[^a-zA-Z0-9_-]+/gu,"-")}-tab`,Pt=e=>Ge("nav",{"data-ui":"tabs","data-pattern":"tabs","aria-label":e.label,children:[bi(e.items,t=>t.id,t=>ce(wt,{...t,elementId:e.id?Ct(e.id,t.id):void 0,controls:e.panelId})),e.extension]}),Lt=e=>ce("section",{"data-ui":"tab-panel",id:e.id,"aria-labelledby":e.labelledBy,tabindex:"-1",children:e.body}),ze=e=>{let t=`${e.id}-tabs`,a=`${e.id}-panel`,n=e.items.find(c=>c.active===!0);return Ge("div",{"data-ui":"tabbed-view",children:[e.context!==void 0&&e.context!==""?ce("div",{"data-ui":"tabbed-view-context",children:e.context}):"",ce(Pt,{id:t,label:e.label,items:e.items,extension:e.extension,panelId:a}),ce(Lt,{id:a,labelledBy:n?Ct(t,n.id):void 0,body:e.body})]})};import{jsx as jn,jsxs as er}from"/_ket/view/jsx-runtime.js";var Mt=["progress","progress-label","progress-value","progress-track","progress-bar"];import{each as Ht}from"/_ket/view/index.js";import{Fragment as fi,jsx as M,jsxs as te}from"/_ket/view/jsx-runtime.js";var Ot=["menu","menu-trigger","menu-trigger-count","menu-panel","menu-search","menu-search-input","menu-label","menu-separator","menu-item","menu-item-leading","menu-item-copy","menu-item-check","menu-item-shortcut"],Ue=e=>te("details",{"data-ui":"menu","data-align":e.align??"start","data-size":e.size==="compact"?"compact":null,"data-active":e.count?"true":null,"data-placement":e.placement??"bottom",open:e.open===!0?!0:void 0,children:[te("summary",{"data-ui":"menu-trigger","aria-haspopup":"menu","aria-controls":`${e.id}-panel`,"aria-label":e.trigger!==void 0?e.label:void 0,title:e.trigger!==void 0?e.label:void 0,children:[e.trigger??e.label,!!e.count&&M("span",{"data-ui":"menu-trigger-count",children:String(e.count)})]}),te("div",{"data-ui":"menu-panel",id:`${e.id}-panel`,role:"menu","aria-label":e.label,children:[e.search&&te("form",{"data-ui":"menu-search",role:"search",method:"get",action:e.search.action,children:[Ht(Object.entries(e.search.hidden??{}),([t])=>t,([t,a])=>M("input",{type:"hidden",name:t,value:a})),M("input",{"data-ui":"menu-search-input",type:"search",name:e.search.name,value:e.search.value??"",placeholder:e.search.placeholder??e.search.label,"aria-label":e.search.label,autocomplete:"off"})]}),Ht(e.items,t=>t.id,t=>{if(t.kind==="separator")return M("hr",{"data-ui":"menu-separator"});if(t.kind==="label")return M("span",{"data-ui":"menu-label",role:"presentation",children:t.label});let a=t.checked===void 0?"menuitem":"menuitemcheckbox",n=te(fi,{children:[t.checked!==void 0&&M("span",{"data-ui":"menu-item-check","aria-hidden":"true",children:t.checked?"\u2713":""}),t.leading!==void 0&&M("span",{"data-ui":"menu-item-leading","aria-hidden":"true",children:t.leading}),te("span",{"data-ui":"menu-item-copy",children:[M("span",{children:t.label}),t.description&&M("small",{children:t.description})]}),t.shortcut&&M("kbd",{"data-ui":"menu-item-shortcut",children:t.shortcut})]});return t.disabled?M("span",{"data-ui":"menu-item",role:a,"aria-checked":t.checked===void 0?null:String(t.checked),"aria-disabled":"true",tabIndex:"-1",children:n}):t.href?M("a",{"data-ui":"menu-item","data-destructive":t.destructive?"true":null,role:a,"aria-checked":t.checked===void 0?null:String(t.checked),href:t.href,children:n}):M("button",{"data-ui":"menu-item","data-destructive":t.destructive?"true":null,role:a,"aria-checked":t.checked===void 0?null:String(t.checked),type:"submit",name:t.name??"intent",value:t.value??t.id,form:t.form??null,children:n})})]})]}),We=e=>M(Ue,{...e,trigger:te("span",{children:[e.triggerLabel??e.label," \xB7\xB7\xB7"]}),align:e.align??"end"});import{jsx as lr,jsxs as or}from"/_ket/view/jsx-runtime.js";var Dt=["popover","popover-trigger","popover-panel","popover-close"];import{jsx as cr,jsxs as ur}from"/_ket/view/jsx-runtime.js";var Et=["tooltip","tooltip-trigger","tooltip-content"];import{jsx as K,jsxs as ve}from"/_ket/view/jsx-runtime.js";var At=["modal-layer","modal-backdrop","modal-sheet","modal-head","modal-heading","modal-title-row","modal-title","modal-description","modal-close","modal-body","modal-actions"],xe=e=>{let t=e.mode==="client",a=e.mode==="embedded";return ve("div",{"data-ui":"modal-layer","data-mode":e.mode??"overlay","data-route-modal":a||t?null:"true","data-client-modal":t?"true":null,"data-presentation":e.presentation??"sheet","data-unsaved-prompt":e.unsavedPrompt??null,children:[t?K("button",{"data-ui":"modal-backdrop",type:"button","aria-label":e.closeLabel,tabindex:"-1",children:K("span",{children:e.closeLabel})}):K("a",{"data-ui":"modal-backdrop",href:e.closeHref??"#","aria-label":e.closeLabel,children:K("span",{children:e.closeLabel})}),ve("section",{id:e.id,"data-ui":"modal-sheet","data-size":e.size??"default","data-height":e.height==="fixed"?"fixed":null,style:e.height==="fixed"&&e.fixedHeight?`height: ${e.fixedHeight} !important`:"",role:"dialog","aria-modal":a?"false":"true","aria-labelledby":`${e.id}-title`,"aria-describedby":e.description?`${e.id}-description`:null,tabindex:a?null:"-1",children:[ve("header",{"data-ui":"modal-head",children:[ve("div",{"data-ui":"modal-heading",children:[ve("div",{"data-ui":"modal-title-row",children:[K("h2",{"data-ui":"modal-title",id:`${e.id}-title`,children:e.title}),e.status!==void 0&&e.status]}),!!e.description&&K("p",{"data-ui":"modal-description",id:`${e.id}-description`,children:e.description})]}),t?K("button",{"data-ui":"modal-close",type:"button","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"}):K("a",{"data-ui":"modal-close",href:e.closeHref??"#","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"})]}),K("div",{"data-ui":"modal-body",children:e.body}),e.actions!==void 0&&K("footer",{"data-ui":"modal-actions",children:e.actions})]})]})};import{jsx as yr}from"/_ket/view/jsx-runtime.js";var It=["dialog","confirm-dialog-message"];import{each as Sr}from"/_ket/view/index.js";import{jsx as Rr,jsxs as Tr}from"/_ket/view/jsx-runtime.js";var Ft=["toast-region","toast","toast-copy","toast-title","toast-message","toast-actions"];import{jsx as Pr}from"/_ket/view/jsx-runtime.js";var Jt=["spinner","visually-hidden"];import{each as Hr}from"/_ket/view/index.js";import{jsx as Dr}from"/_ket/view/jsx-runtime.js";var Xt=["skeleton","skeleton-line"];var Ar=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","summary",'[tabindex]:not([tabindex="-1"])'].join(",");var pi=['[data-ui="timeframe-menu"]','[data-ui="view-settings"]'],Ir=pi.map(e=>`${e}[open]`).join(", ");import{jsx as Xr,jsxs as Kr}from"/_ket/view/jsx-runtime.js";import{jsx as Vr,jsxs as _r}from"/_ket/view/jsx-runtime.js";var $t=["switch-control","switch-track"];import{each as Ur}from"/_ket/view/index.js";import{Fragment as jr,jsx as Qr,jsxs as Yr}from"/_ket/view/jsx-runtime.js";var Bt=["combobox","combobox-input-row","combobox-toggle","combobox-listbox","combobox-option","combobox-empty","tag-picker"];import{jsx as nl,jsxs as rl}from"/_ket/view/jsx-runtime.js";var qt=["date-range"];import{jsx as sl,jsxs as cl}from"/_ket/view/jsx-runtime.js";var Vt=["file-upload","drop-zone","upload-status"];import{jsx as bl}from"/_ket/view/jsx-runtime.js";var _t=["relation-picker"];import{each as hl}from"/_ket/view/index.js";import{jsx as Sl,jsxs as kl}from"/_ket/view/jsx-runtime.js";var zt=["search-bar","filter-bar","applied-filters","applied-filter","saved-views","saved-view","view-settings","view-settings-options"];import{jsx as Cl,jsxs as Pl}from"/_ket/view/jsx-runtime.js";var Gt=["inline-edit","inline-edit-value","inline-edit-form","inline-edit-actions"];import{each as Nl}from"/_ket/view/index.js";import{each as Dl}from"/_ket/view/index.js";import{Fragment as Jl,jsx as Il,jsxs as Fl}from"/_ket/view/jsx-runtime.js";var Ut=["list-chrome","list-chrome-row","list-search","list-search-label","list-search-input","list-search-submit","list-filter-menus","list-facets","list-facet","list-facet-count","list-view-switch","list-view","list-sort","list-sort-label","list-sort-select","list-status","list-actions","bulk-actions","bulk-summary","bulk-count","bulk-action-list","pager-bar","pager-summary","pager-pages","pager-page","pager-actions","pager-link"];import{jsx as Vl,jsxs as _l}from"/_ket/view/jsx-runtime.js";var Wt=["resource-list","resource-list-item","resource-list-select","resource-list-link"];import{each as Ul}from"/_ket/view/index.js";import{jsx as Zl,jsxs as Ql}from"/_ket/view/jsx-runtime.js";var Zt=["data-grid-scroll","data-grid","data-grid-cap","data-grid-cell"];import{each as eo}from"/_ket/view/index.js";import{jsx as ao,jsxs as io}from"/_ket/view/jsx-runtime.js";var Qt=["tree","tree-item","tree-link","tree-grid","tree-grid-row"];import{each as lo}from"/_ket/view/index.js";import{jsx as so,jsxs as co}from"/_ket/view/jsx-runtime.js";var Yt=["data-matrix","data-matrix-head","data-matrix-heading","data-matrix-eyebrow","data-matrix-title","data-matrix-description","data-matrix-summary","data-matrix-scroll","data-matrix-table","data-matrix-column","data-matrix-row-head","data-matrix-row-leading","data-matrix-row-title","data-matrix-row-description","data-matrix-row-status","data-matrix-row-actions","data-matrix-cell"];import{each as go}from"/_ket/view/index.js";import{jsx as fo,jsxs as po}from"/_ket/view/jsx-runtime.js";var jt=["bar-chart","bar-chart-rows","bar-chart-row","bar-chart-label","bar-chart-caption","bar-chart-track","bar-chart-fill","bar-chart-segment","bar-chart-value","bar-chart-scale","bar-chart-legend","bar-chart-legend-item","bar-chart-legend-swatch","bar-chart-empty"];import{each as vo}from"/_ket/view/index.js";import{jsx as So,jsxs as ko}from"/_ket/view/jsx-runtime.js";var ea=["timeframe","timeframe-menu","timeframe-trigger","timeframe-label","timeframe-value","timeframe-content","timeframe-option","timeframe-option-label","timeframe-option-detail","timeframe-range","timeframe-asof","timeframe-note"];import{each as wo}from"/_ket/view/index.js";import{jsx as Lo,jsxs as Mo}from"/_ket/view/jsx-runtime.js";var ta=["description-list","key-value","key-value-label","key-value-value","person","person-body","avatar-group","status"];import{jsx as Do}from"/_ket/view/jsx-runtime.js";var aa=["formatted-date","formatted-number","formatted-money"];import{each as Io}from"/_ket/view/index.js";import{jsx as ia,jsxs as No}from"/_ket/view/jsx-runtime.js";var ra=["record-summary","record-summary-main","record-actions","record-rail"];var Qe=e=>ia("nav",{"data-ui":"record-actions","aria-label":e.label??"Record actions",children:ia(Q,{actions:e.actions})});import{each as qo}from"/_ket/view/index.js";import{jsx as Go,jsxs as Uo}from"/_ket/view/jsx-runtime.js";var la=["activity-timeline","activity-item","activity-marker","audit-log","audit-item"];import{each as Qo}from"/_ket/view/index.js";import{jsx as ed,jsxs as td}from"/_ket/view/jsx-runtime.js";var oa=["attachments","attachment","media-gallery","media-item"];import{each as nd}from"/_ket/view/index.js";import{Fragment as dd,jsx as ld,jsxs as od}from"/_ket/view/jsx-runtime.js";var da=["app-navigation","navigation-trigger","navigation-trigger-icon","navigation-trigger-identity","navigation-trigger-label","navigation-layer","navigation-backdrop","navigation-drawer","navigation-header","navigation-identity","navigation-context","navigation-close","navigation-groups","navigation-group","navigation-group-label","navigation-items","navigation-supplementary","navigation-item","navigation-branch","navigation-branch-trigger","navigation-children","navigation-item-leading","navigation-item-copy","navigation-item-label","navigation-item-description","navigation-item-count","navigation-footer"];import{each as ue}from"/_ket/view/index.js";import{Fragment as ba,jsx as h,jsxs as _}from"/_ket/view/jsx-runtime.js";var sa=["table-scroll","table","table-caption","select-col","select-all","col","sort-link","sort-icon","row","group-row","group-cell","group-link","group-indent","group-count","group-pager","group-pager-actions","cell","select-cell","row-select","row-link"],ki=e=>e.shownColumns??e.columns.filter(t=>t.hidden!==!0).map(t=>t.key),Ri=e=>{let t=new Set(ki(e));return e.columns.filter(a=>t.has(a.key))},ca=(e,t)=>t.length+(e.selection?1:0),Ti=(e,t)=>e.sort?.direction?e.sort.direction==="ascending"?t?.sortedAscending??"Sorted ascending":t?.sortedDescending??"Sorted descending":null,wi=(e,t)=>h("th",{"data-ui":"col","data-col":e.key,"data-align":e.align??"start","data-kind":e.kind??"text","data-width":e.width??null,"data-optional":e.optional===!0?"true":null,"data-sort":e.sort?.direction??null,"aria-sort":e.sort?.direction??null,scope:"col",children:e.sort?_("a",{"data-ui":"sort-link",href:e.sort.href,"aria-label":e.sort.label??e.label,children:[h("span",{children:e.label}),!!e.sort.direction&&h("span",{"data-ui":"sort-icon","aria-hidden":"true",title:Ti(e,t)??void 0,children:e.sort.direction==="ascending"?"\u2191":"\u2193"})]}):e.label}),Ci=e=>e.selection?h("th",{"data-ui":"select-col",scope:"col",children:h("input",{"data-ui":"select-all",type:"checkbox",name:e.selection.selectAllName??"select-all","aria-label":e.labels?.selectAll??"Select all rows",disabled:e.selection.disabled===!0})}):null,ua=(e,t)=>e.selected?.(t)===!0?!0:e.selection?.selectedIds?.includes(e.id(t))===!0,Pi=(e,t,a)=>_(ba,{children:[e.selection&&h("td",{"data-ui":"select-cell",children:h("input",{"data-ui":"row-select",type:"checkbox",name:e.selection.name??"ids",form:e.selection.form,value:e.id(a),checked:ua(e,a),"aria-label":e.labels?.selectRow?.(a,e.id(a))??`Select row ${e.id(a)}`,disabled:e.selection.disabled===!0})}),ue(t,n=>n.key,n=>h("td",{"data-ui":"cell","data-col":n.key,"data-linked":e.rowHref&&n===t[0]?"true":null,"data-align":n.align??"start","data-kind":n.kind??"text","data-priority":n.priority??"secondary","data-label":e.responsive==="stack"?n.label:null,children:e.rowHref&&n===t[0]?h("a",{"data-ui":"row-link",href:e.rowHref(a),children:n.cell(a)}):n.cell(a)}))]}),ma=(e,t,a)=>h("tr",{"data-ui":"row","data-row":e.id(a),"data-selected":ua(e,a)?"true":null,children:Pi(e,t,a)}),Li=(e,t,a)=>a?h("tr",{"data-ui":"group-pager",children:_("td",{colSpan:String(ca(e,t)),children:[h("span",{children:a.label}),_("span",{"data-ui":"group-pager-actions",children:[a.previousHref&&h("a",{href:a.previousHref,"aria-label":e.labels?.previousPage??"Previous page",children:"\u2039"}),a.nextHref&&h("a",{href:a.nextHref,"aria-label":e.labels?.nextPage??"Next page",children:"\u203A"})]})]})}):null,ga=(e,t,a,n)=>_(ba,{children:[h("tr",{"data-ui":"group-row","data-group":a.id,"data-depth":String(n),children:_("th",{"data-ui":"group-cell",colSpan:String(ca(e,t)),scope:"rowgroup",children:[h("span",{"data-ui":"group-indent",style:`--kv-group-depth: ${n}`,"aria-hidden":"true"}),a.href?h("a",{"data-ui":"group-link",href:a.href,children:a.label}):h("span",{"data-ui":"group-link",children:a.label}),a.count!==void 0&&h("span",{"data-ui":"group-count",children:String(a.count)})]})}),ue(a.rows??[],e.id,c=>ma(e,t,c)),ue(a.children??[],c=>c.id,c=>ga(e,t,c,n+1)),Li(e,t,a.pager)]}),Ee=e=>{let t=Ri(e),a=e.groups??[],c=e.rows.length>0||a.length>0?h("div",{"data-ui":"table-scroll","data-pattern":"data-table","data-framed":e.title?"false":null,"data-responsive":e.responsive??"scroll","data-gutter":e.gutter==="compact"?"compact":null,children:_("table",{"data-ui":"table","aria-label":e.caption?null:e.title??null,children:[!!e.caption&&h("caption",{"data-ui":"table-caption",children:e.caption}),h("thead",{children:_("tr",{children:[Ci(e),ue(t,s=>s.key,s=>wi(s,e.labels))]})}),h("tbody",{children:a.length>0?ue(a,s=>s.id,s=>ga(e,t,s,0)):ue(e.rows,e.id,s=>ma(e,t,s))})]})}):h(oe,{title:e.emptyTitle??"No records",message:e.emptyMessage??"There is nothing to show yet.",actions:e.emptyActions});return e.title?h(Be,{title:e.title,actions:e.actions,padding:"none",body:c}):c};import{jsx as Rd,jsxs as Td}from"/_ket/view/jsx-runtime.js";var fa=["list-page","list-page-context","list-page-header","list-page-heading","list-page-title-row","list-page-eyebrow","list-page-title","list-page-description","list-page-actions","list-page-toolbar","list-page-controls","list-page-status","list-page-body","list-page-footer"];import{jsx as Ld,jsxs as Md}from"/_ket/view/jsx-runtime.js";var pa=["record-page","record-page-context","record-page-header","record-page-title-row","record-page-heading","record-page-title","record-page-subline","record-page-status","record-page-description","record-page-actions","record-page-meta","record-page-controller","record-page-navigation","record-page-layout","record-page-body","record-page-aside"];var ha=["form-page","form-page-context","form-page-header","form-page-title-row","form-page-heading","form-page-title","form-page-subline","form-page-status","form-page-description","form-page-actions","form-page-meta","form-page-controller","form-page-navigation","form-page-layout","form-page-body","form-page-aside"];import{jsx as Xd,jsxs as Kd}from"/_ket/view/jsx-runtime.js";var ya=["dashboard-page","dashboard-page-context","dashboard-page-header","dashboard-page-heading","dashboard-page-eyebrow","dashboard-page-title-row","dashboard-page-title","dashboard-page-subline","dashboard-page-status","dashboard-page-description","dashboard-page-actions","dashboard-page-meta","dashboard-page-body"];var va=["board-page","board-page-context","board-page-header","board-page-heading","board-page-eyebrow","board-page-title-row","board-page-title","board-page-subline","board-page-status","board-page-description","board-page-actions","board-page-meta","board-page-toolbar","board-page-controls","board-page-body"];import{each as Ud}from"/_ket/view/index.js";import{jsx as Zd,jsxs as Qd}from"/_ket/view/jsx-runtime.js";var xa=["pipeline","pipeline-step","pipeline-arrow","pipeline-step-label","pipeline-step-value","pipeline-step-node"];import{each as as}from"/_ket/view/index.js";import{jsx as ls,jsxs as os}from"/_ket/view/jsx-runtime.js";var Sa=["record-form","form-errors","form-grid","form-actions"];var ka={actions:bt,feedback:ht,fields:kt,status:pt,navigation:Tt,progress:Mt,menu:Ot,popover:Dt,tooltip:Et,dialog:It,toast:Ft,spinner:Jt,skeleton:Xt,scalarFields:$t,combobox:Bt,dateTime:qt,upload:Vt,relationPicker:_t,listControls:zt,inlineEdit:Gt,resourceList:Wt,dataGrid:Zt,tree:Qt,matrix:Yt,barChart:jt,timeframe:ea,recordDisplay:ta,formattedValues:aa,recordComposition:ra,activity:la,media:oa,layouts:St,shell:vt,appNavigation:da,table:sa,listChrome:Ut,listPage:fa,formPage:ha,recordPage:pa,dashboardPage:ya,boardPage:va,modal:At,pipeline:xa,form:Sa},Hi=[...new Set(Object.values(ka).flat())].sort(),Oi=Object.freeze(Object.fromEntries(Object.entries(ka).map(([e,t])=>[e,[...t]])));import{signal as D}from"/_ket/view/index.js";import{jsx as Ei}from"/_ket/view/jsx-runtime.js";var Ae="record";var Di=/^[a-z][a-z0-9_]*(?:\.[a-zA-Z][a-zA-Z0-9_]*)+$/u,Ra=e=>Di.test(e),Ye=(e,t)=>{if(!Ra(t.kind))throw new TypeError(`invalid record kind "${t.kind}"`);let a=new URL(String(e),"http://ket.local");return a.searchParams.set(Ae,`${t.kind}:${t.id}`),t.tab?a.searchParams.set("tab",t.tab):a.searchParams.delete("tab"),`${a.pathname}${a.search}`};var Ta=e=>{let t=new URL(String(e),"http://ket.local");return t.searchParams.delete(Ae),t.searchParams.delete("tab"),`${t.pathname}${t.search}`},Se=e=>{let t=new URL(String(e),"http://ket.local"),a=t.searchParams.get(Ae)??"",n=a.indexOf(":");if(n<=0||n===a.length-1)return null;let c=a.slice(0,n);return Ra(c)?{kind:c,id:a.slice(n+1),tab:t.searchParams.get("tab")}:null},je=e=>Ei("span",{"data-ui":"record-modal-host","data-record-kind":e,hidden:!0});import{Fragment as ke,jsx as _i,jsxs as Re}from"/_ket/view/jsx-runtime.js";var Ca=e=>{let t=e??{};return(Array.isArray(t.errors)?t.errors:Array.isArray(t.issues)?t.issues:[]).map(n=>{let c=n??{},s=Array.isArray(c.path)?c.path.join("."):null;return{field:typeof c.field=="string"?c.field:s,code:String(c.code??"invalid"),message:typeof c.message=="string"?c.message:null,params:c.params&&typeof c.params=="object"?c.params:{}}})},Pa=async(e,t,a={})=>{let n=await fetch(`/_ket/fn/${encodeURIComponent(e)}`,{method:"POST",credentials:"same-origin",headers:{"content-type":"application/json",...a.idempotencyKey?{"idempotency-key":a.idempotencyKey}:{}},body:JSON.stringify(t),signal:a.signal}),c=await n.json().catch(()=>({}));if(!n.ok||c.ok===!1)return{ok:!1,issues:Ca(c.error??c),message:c.error?.message??c.message??null,status:n.status};let s=c.value;return s&&typeof s=="object"&&s.ok===!1?{ok:!1,issues:Ca(s),message:null,status:n.status}:{ok:!0,value:c.value}},Ai=30,Ii=Object.freeze({"recordModal.close":"Close","recordModal.loading":"Loading\u2026","recordModal.loadFailed":"The record could not be read.","recordModal.notFound":"The record is gone or you cannot see it.","recordModal.retry":"Retry","recordModal.errorTitle":"Not saved","recordModal.saveFailed":"That did not work. Try again.","recordModal.savedTitle":"Saved","recordModal.saved":"The change is in.","recordModal.unsaved":"Discard what you typed?","recordModal.uploadFailed":"The file could not be uploaded. Try again."}),Fi=(e,t)=>t.messages?.[e]??t.previous?.[e]??t.labels?.[e]??Ii[e]??e,me="__command",La="data-record-dialog",Ji=(e,t={})=>e.replace(/\{([a-zA-Z0-9_]+)\}/gu,(a,n)=>n in t?String(t[n]??""):a),Da=["a[href]","button:not(:disabled)",'input:not(:disabled):not([type="hidden"])',"select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),Ma=e=>[...e.querySelectorAll(Da)].filter(t=>!t.hidden&&t.getAttribute("aria-hidden")!=="true"&&!t.matches('[data-ui="modal-backdrop"]')),Xi=e=>{for(let t of e.querySelectorAll('input:not([type="hidden"])'))if(!t.disabled){if(t.type==="checkbox"||t.type==="radio"){if(t.checked!==t.defaultChecked)return!0}else if(t.value!==t.defaultValue)return!0}for(let t of e.querySelectorAll("textarea"))if(!t.disabled&&t.value!==t.defaultValue)return!0;for(let t of e.querySelectorAll("select"))if(!t.disabled){for(let a of t.options)if(a.selected!==a.defaultSelected)return!0}return!1},Ki=e=>{let t=[],a=e;for(;a&&a!==document.body;){let n=a.parentElement;if(!n)break;for(let c of n.children)c instanceof HTMLElement&&c!==a&&!c.matches("script, style, template")&&(t.push({element:c,inert:c.inert}),c.inert=!0);a=n}return()=>{for(let{element:n,inert:c}of t)n.inert=c}},Ni=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,H=()=>({values:{},checks:{}}),Ha=(e,t)=>`${e}\0${t}`,Oa=e=>e.after??"close",$i=400,Bi=(e,t=$i)=>{let a,n=()=>{clearTimeout(a),a=void 0};return{set:c=>{if(n(),!c){e(!1);return}a=setTimeout(()=>e(!0),t)},stop:n}},qi='a, button, input, select, textarea, label, summary, details, [data-ui="select-cell"]',Vi=e=>{let t=e?.closest("a[href]");return t?t.target&&t.target!=="_self"?null:t.href:e?.closest(qi)?null:e?.closest("[data-row-href]")?.getAttribute("data-row-href")??null},Ea=e=>()=>{let t=D(null),a=D("idle"),n=D(null),c=D(null),s=D([]),ae=D(H()),E=D(H()),it=D(!1),nt=D(!1),rt=Bi(o=>nt.set(o)),ge=D(!1),lt=o=>{it.set(o),rt.set(o),o&&ge.set(!1)},A=D(null),Xe=D(0),z=D({}),F=new Map,za=(o,u)=>{for(F.delete(o),F.set(o,u);F.size>Ai;)F.delete(F.keys().next().value)},O=null,we=null,Ce=!1,Ke=null,J=null,ie=null,be=null,Ga=()=>typeof e.labels=="function"?e.labels():e.labels??{},X=(o,u)=>Ji(Fi(o,{messages:n()?.messages,previous:be,labels:Ga()}),u),ot=o=>[...e.tabs??[],...e.extensionTabs?.(o)??[]].filter(u=>u.visible?.(o)??!0),Pe=(o,u,m="record")=>{let g=()=>m==="dialog"?E():ae(),d={kind:e.kind,id:o.id,creating:o.id==="new",tab:o.tab,data:u,t:X,fieldError:f=>{let i=s().find(l=>l.field===f);return i?i.message??X(i.code,i.params):null},draft:(f,i="")=>g().values[f]??i,draftChecked:(f,i="1",l=!1)=>g().checks[Ha(f,i)]??l,busy:nt(),dialog:A(),href:f=>Ye(location.href,{kind:e.kind,id:o.id,tab:f}),state:(f,i="")=>z()[f]??i},k=ot(d);return k.length&&!k.some(f=>f.id===o.tab)&&(d.tab=k[0].id),d},ne=async(o,u=!1)=>{we?.abort();let m=new AbortController;we=m;let g=e.cache===!1?void 0:F.get(o);g&&(be=g.messages??be,n.set(g),a.set("ready"),u=!0),u||a.set("loading"),c.set(null);try{let d=o==="new",k=e.context.input?e.context.input(o,d):d?{}:{id:o},f=await Pa(e.context.fn,k,{signal:m.signal});if(m.signal.aborted)return;if(!f.ok||!f.value){c.set(f.ok?"recordModal.notFound":f.message??"recordModal.loadFailed"),a.set("error");return}be=f.value.messages??be,e.cache!==!1&&za(o,f.value),n.set(f.value),a.set("ready")}catch(d){if(m.signal.aborted||d?.name==="AbortError")return;c.set("recordModal.loadFailed"),a.set("error")}},Le=()=>O?[...O.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]')]:[],Ne=()=>Le()[0]??null,dt=()=>Le().at(-1)??null,Me=(o,u)=>{if(!o)return;let m=u==="dialog"?E():ae(),g={values:{...m.values},checks:{...m.checks}};for(let d of o.querySelectorAll("input[name], select[name], textarea[name]"))if(!(d.disabled||d.name===me)){if(d instanceof HTMLInputElement){if(d.type==="file"||d.type==="hidden")continue;if(d.type==="checkbox"||d.type==="radio"){g.checks[Ha(d.name,d.value)]=d.checked,d.type==="checkbox"?g.values[d.name]=d.checked?d.value:"":d.checked&&(g.values[d.name]=d.value);continue}}g.values[d.name]=d.value}u==="dialog"?E.set(g):ae.set(g)},st=()=>{let o=Le();Me(o[0]??null,"record"),o.length>1&&Me(o.at(-1)??null,"dialog")},ct=o=>!o||!Xi(o)?!0:globalThis.confirm(X("recordModal.unsaved")),fe=o=>{requestAnimationFrame(()=>{let u=Le(),m=u[0],g=u.at(-1);if(!g)return;m&&(m.inert=u.length>1);let d=o?.();if(d?.isConnected&&g.contains(d)){d.focus();return}if(g.contains(document.activeElement))return;let k=g.querySelector('[data-ui="modal-sheet"]');(Ma(g).find(i=>!i.matches('[data-ui="modal-close"]'))??k)?.focus()})},G=(o,u,m,g)=>{let d=t(),k=d?.id===o,f=u??(k?d.tab:"");k||(Ke=document.activeElement instanceof HTMLElement?document.activeElement:null,s.set([]),ge.set(!1),ae.set(H()),E.set(H()),z.set({}),A.set(null),J=null,n.set(null),ne(o)),t.set({id:o,tab:f});let i=Ye(location.href,{kind:e.kind,id:o,tab:f||null});m==="push"?(history.replaceState({...history.state??{},__ketScroll:[window.scrollX,window.scrollY]},"",location.href),history.pushState({...history.state??{},__ketRecordModal:e.kind},"",i),Ce=!0):m==="replace"&&history.replaceState(history.state??{},"",i),O&&!ie&&(ie=Ki(O)),fe(g)},He=o=>{we?.abort(),t.set(null),A.set(null),s.set([]),ge.set(!1),ae.set(H()),E.set(H()),z.set({}),a.set("idle"),n.set(null),ie?.(),ie=null,o==="history"&&Ce?(Ce=!1,history.back()):o!=="none"&&(Ce=!1,history.replaceState(history.state??{},"",Ta(location.href)));let u=Ke;Ke=null,J=null,u?.isConnected&&requestAnimationFrame(()=>u.focus())},ut=()=>{if(A()){if(!ct(dt()))return;let o=J;J=null,A.set(null),E.set(H()),s.set([]),fe(()=>o?.isConnected?o:null);return}ct(Ne())&&He("history")},Ua=async(o,u,m)=>{let g=e.commands?.[o],d=t(),k=n()?.data;if(!g||!d||k===void 0||it())return;let f=new FormData(u,m instanceof HTMLButtonElement?m:null),i=u.closest('[data-ui="modal-layer"][data-client-modal="true"]'),l=A()&&i===dt()?"dialog":"record";Me(i,l);let b=Pe(d,k,l);if(g.confirm){let y=g.confirm(b);if(y&&!globalThis.confirm(y))return}lt(!0),s.set([]);try{let y={};for(let[w,re]of Object.entries(g.upload??{})){let W=f.get(w);if(!(W instanceof File)||W.size===0)continue;let pe=new FormData;for(let[Qa,Ya]of Object.entries(re(f,b)))pe.append(Qa,Ya);pe.append("file",W,W.name);let gt=await fetch("/files",{method:"POST",credentials:"same-origin",body:pe}),le=await gt.json().catch(()=>null);if(!gt.ok||!le?.id){s.set([{field:null,code:"recordModal.uploadFailed",message:typeof le?.message=="string"?le.message:null,params:{}}]);return}y[w]={id:String(le.id),name:typeof le.name=="string"?le.name:null}}let C=(w,re)=>Pa(w,re,{idempotencyKey:Ni()}),x=await C(g.fn,g.input(f,b,y));for(let w of x.ok?g.also??[]:[])if(!(w.when&&!w.when(b))&&(x=await C(w.fn,w.input(f,b,y)),!x.ok))break;if(!x.ok){s.set(x.issues.length?x.issues:[{field:null,code:x.message??"recordModal.saveFailed",message:x.message,params:{}}]);return}l==="dialog"?E.set(H()):ae.set(H()),u.reset();let U=x.value,$=Oa(g)==="open"?g.created?.(x.value)??(U&&typeof U=="object"&&U.id!=null?String(U.id):null):null;F.delete(d.id),$&&F.delete($);let q=()=>{document.dispatchEvent(new CustomEvent("ket:records-changed",{detail:{kind:e.kind,ids:[$??d.id]}}))},T=Oa(g);if(T!=="close"&&ge.set(!0),T==="open"){A.set(null),E.set(H()),$?G($,g.openTab??null,"replace"):He("history"),q();return}if(q(),T==="close")He("history");else if(T==="reload"){let w=J;J=null,A.set(null),E.set(H()),await ne(d.id),fe(()=>w?.isConnected?w:null)}else if(T==="refresh")await ne(d.id,!0);else if(T==="stay")Xe.set(Xe()+1);else if("tab"in T)J=null,A.set(null),E.set(H()),G(d.id,T.tab,"replace"),await ne(d.id);else{let w=T.dialog?null:J;J=T.dialog&&m instanceof HTMLElement?m:null,A.set(T.dialog?{name:T.dialog,params:{}}:null),E.set(H()),await ne(d.id,!0),fe(()=>w?.isConnected?w:null)}}catch{s.set([{field:null,code:"recordModal.saveFailed",message:null,params:{}}])}finally{lt(!1)}},mt=o=>{let u=s().filter(d=>!d.field),m=s().filter(d=>d.field&&!O?.querySelector(`[name="${CSS.escape(d.field)}"]`)),g=[...u,...m];return g.length?I({title:o.t("recordModal.errorTitle"),message:g.map(d=>d.message??o.t(d.code,d.params)).join(" \xB7 "),tone:"danger"}):ge()?I({title:o.t("recordModal.savedTitle"),message:o.t("recordModal.saved"),tone:"positive"}):""},Wa=()=>{let o=t();if(!o)return"";if(a()==="error")return Re(ke,{children:[I({title:X("recordModal.errorTitle"),message:X(c()??"recordModal.loadFailed"),tone:"danger"}),L({label:X("recordModal.retry"),variant:"secondary",name:"intent",value:"retry"})]});let u=n()?.data;if(a()!=="ready"||u===void 0)return de({label:X("recordModal.loading")});let m=Pe(o,u),g=ot(m),d=g.find(l=>l.id===m.tab),k=e.header?.(m)??"",f=mt(m),i=d?d.view(m):e.body?.(m)??"";return g.length?ze({id:`record-view-${e.kind.replaceAll(".","-")}`,label:e.title(m),items:g.map(l=>({id:l.id,label:l.label(m),href:m.href(l.id),active:l.id===m.tab})),context:k!==""||f!==""?Re(ke,{children:[k,f]}):void 0,body:i}):Re(ke,{children:[k,f,i]})},Za=()=>{let o=t(),u=A(),m=n()?.data;if(!o||!u||m===void 0)return"";let g=e.dialogs?.[u.name];if(!g)return"";let d=Pe(o,m,"dialog");return xe({id:`record-dialog-${e.kind.replaceAll(".","-")}-${u.name}`,mode:"client",presentation:"dialog",size:g.size??"default",title:g.title(d),closeLabel:X("recordModal.close"),body:Re(ke,{children:[mt(d),g.view(d)]})})};return{view:()=>{Xe();let o=t();if(!o)return je(e.kind);let u=n()?.data,m=u===void 0?null:Pe(o,u);return Re(ke,{children:[je(e.kind),xe({id:`record-modal-${e.kind.replaceAll(".","-")}`,mode:"client",presentation:"dialog",size:e.size??"default",height:(e.tabs?.length??0)+(e.extensionTabs?1:0)>1?"fixed":"content",fixedHeight:e.fixedHeight,title:m?e.title(m):X("recordModal.loading"),description:m?e.description?.(m)??null:null,status:m?e.status?.(m):void 0,actions:m?e.actions?.(m):void 0,closeLabel:X("recordModal.close"),body:Wa()}),Za()]})},mount:({root:o,lifetime:u})=>{O=o,document.addEventListener("click",i=>{if(i.defaultPrevented||i.button!==0||i.metaKey||i.ctrlKey||i.shiftKey||i.altKey)return;let l=i.target instanceof Element?i.target:null,b=l?.closest('[data-ui="modal-layer"][data-client-modal="true"]');if(b&&O?.contains(b)){if(l?.closest('[data-ui="modal-close"], [data-ui="modal-backdrop"], [data-record-close]')){i.preventDefault(),ut();return}let $=l?.closest("button[data-record-state], a[data-record-state]");if($){i.preventDefault(),st(),z.set({...z(),[$.getAttribute("data-record-state")??""]:$.getAttribute("data-record-value")??""});return}let q=l?.closest(`[${La}]`);if(q){i.preventDefault();let T=document.activeElement;J=T instanceof HTMLElement&&q.contains(T)?T:q.querySelector(Da),E.set(H());let w={};for(let[re,W]of Object.entries(q.dataset))re.startsWith("recordParam")&&W!==void 0&&(w[re.slice(11).replace(/^./u,pe=>pe.toLowerCase())]=W);s.set([]),A.set({name:q.getAttribute(La)??"",params:w}),fe();return}if(l?.closest('button[name="intent"][value="retry"]')){i.preventDefault();let T=t();T&&ne(T.id);return}}let y=Vi(l);if(!y)return;let C=new URL(y,location.href);if(C.origin!==location.origin||C.pathname!==location.pathname)return;let x=Se(C);if(!x||x.kind!==e.kind)return;i.preventDefault();let U=t();if(U?.id===x.id){if((x.tab??"")===U.tab)return;Me(Ne(),"record"),s.set([]),G(x.id,x.tab??null,"replace",()=>Ne()?.querySelector('[data-ui="tab"][data-active="true"]')??null);return}G(x.id,x.tab??null,"push")},{signal:u,capture:!0}),document.addEventListener("keydown",i=>{if(i.defaultPrevented||i.key!=="Enter"&&i.key!==" ")return;let l=i.target instanceof Element?i.target:null;if(!l?.matches('[data-row-href][tabindex="0"]'))return;let b=l.getAttribute("data-row-href"),y=b?new URL(b,location.href):null;if(!y||y.origin!==location.origin||y.pathname!==location.pathname)return;let C=Se(y);!C||C.kind!==e.kind||(i.preventDefault(),G(C.id,C.tab??null,"push"))},{signal:u,capture:!0}),document.addEventListener("submit",i=>{let l=i.target instanceof HTMLFormElement?i.target:null;if(!l||!O?.contains(l))return;i.preventDefault();let b=i.submitter??null,y=(b instanceof HTMLButtonElement&&b.name===me?b.value:null)??String(new FormData(l).get(me)??"");Ua(y,l,b)},{signal:u}),document.addEventListener("keydown",i=>{if(!t())return;let l=O?.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]'),b=l?.[l.length-1];if(!b)return;if(i.key==="Escape"){i.preventDefault(),ut();return}if(i.key!=="Tab")return;let y=Ma(b);if(!y.length){i.preventDefault(),b.querySelector('[data-ui="modal-sheet"]')?.focus();return}let C=y[0],x=y.at(-1);i.shiftKey&&(document.activeElement===C||!b.contains(document.activeElement))?(i.preventDefault(),x.focus()):!i.shiftKey&&(document.activeElement===x||!b.contains(document.activeElement))&&(i.preventDefault(),C.focus())},{signal:u}),document.addEventListener("change",i=>{let l=i.target instanceof Element?i.target:null;if(!(!l||!O?.contains(l))){if((l instanceof HTMLSelectElement||l instanceof HTMLInputElement)&&l.hasAttribute("data-record-state")){st(),z.set({...z(),[l.getAttribute("data-record-state")??""]:l.value});return}l instanceof HTMLInputElement&&l.type==="file"&&l.hasAttribute("data-record-submit")&&l.files?.length&&l.form?.requestSubmit()}},{signal:u});let m=i=>{let b=(i.target instanceof Element?i.target:null)?.closest("form[data-record-dropzone]")??null;return b&&O?.contains(b)?b:null};document.addEventListener("dragover",i=>{let l=m(i);l&&(i.preventDefault(),l.dataset.drag="1")},{signal:u}),document.addEventListener("dragleave",i=>{let l=m(i);if(!l)return;let b=i.relatedTarget;b instanceof Node&&l.contains(b)||delete l.dataset.drag},{signal:u}),document.addEventListener("drop",i=>{let l=m(i);if(!l)return;i.preventDefault(),delete l.dataset.drag;let b=i.dataTransfer?.files,y=l.querySelector('input[type="file"]');if(!y||!b?.length)return;let C=new DataTransfer;C.items.add(b[0]),y.files=C.files,l.requestSubmit()},{signal:u});let g="ket-island, div[data-ket-island]",d=i=>i instanceof Element&&(i.matches(g)||i.querySelector(g)!==null),k=new MutationObserver(i=>{for(let l of i){for(let b of l.removedNodes)d(b)&&document.dispatchEvent(new CustomEvent("ket:islands-detach",{detail:{root:b}}));for(let b of l.addedNodes)d(b)&&b.isConnected&&document.dispatchEvent(new CustomEvent("ket:islands-attach",{detail:{root:b}}))}});k.observe(O,{childList:!0,subtree:!0}),u.addEventListener("abort",()=>k.disconnect()),document.addEventListener("ket:records-changed",i=>{let l=i.detail;if(l?.kind===e.kind)if(!Array.isArray(l.ids)||!l.ids.length)F.clear();else for(let b of l.ids)F.delete(String(b))},{signal:u}),document.addEventListener("ket:popstate",i=>{let l=Se(location.href),b=l?.kind===e.kind;!b&&!t()||(i.preventDefault(),b&&l?G(l.id,l.tab??null,"none"):He("none"))},{signal:u});let f=Se(location.href);f?.kind===e.kind&&G(f.id,f.tab??null,"none"),u.addEventListener("abort",()=>{we?.abort(),rt.stop(),ie?.(),ie=null,O=null})}}},Aa=(e,t)=>_i("ket-island",{"data-island":e,"data-props":JSON.stringify(t)});import{jsx as N,jsxs as Na}from"/_ket/view/jsx-runtime.js";var Te=e=>Na("form",{"data-ui":"record-form",method:"post",action:"","data-record-kind":e.kind,id:e.id,children:[e.command?N("input",{type:"hidden",name:me,value:e.command,autocomplete:"off"}):"",N("div",{"data-ui":"form-grid",children:e.fields.map(t=>ee(t))}),e.actions?.length?N("div",{"data-ui":"form-actions",children:Q({actions:e.actions})}):""]}),Ia=e=>N("select",{"data-ui":"field-control","data-record-state":e.state,id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.invalid?"true":null,children:e.options.map(t=>N("option",{value:t.value,selected:t.value===e.value,children:t.label}))}),Fa=e=>N("span",{"data-record-dialog":e.dialog,"data-record-param-id":e.id??null,children:e.children}),Ja=e=>Na("form",{"data-ui":"record-form","data-layout":"actions",method:"post",action:"","data-record-kind":e.kind,children:[N("input",{type:"hidden",name:me,value:e.command,autocomplete:"off"}),Object.entries(e.hidden??{}).map(([t,a])=>N("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),e.children]}),Xa=e=>N("form",{id:e.id,"data-record-kind":e.kind,method:"post",action:"",hidden:!0}),Ka=e=>N("span",{"data-record-close":"true",children:e.children});var Je="__command",zi=["none","lot","serial"],$a=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,Ba=()=>typeof document<"u"&&document.documentElement.lang==="en"?"en":"vi",r=(e,t,a)=>e.t(`product_backend.${t}`,a),S=(e,t)=>String(e.get(t)??"").trim(),Ie=(e,t)=>["1","on","true"].includes(String(e.get(t)??"")),Fe=(e,t,a="0")=>{let n=S(e,t);return n===""?a:n},Gi=e=>{let t=Number(e);return Number.isFinite(t)?t.toLocaleString("vi-VN"):String(e)},tt=e=>e.data.permissions.save===!0,Ui=e=>`product-template-${e}`,p=(e,t)=>({...t,id:Ui(t.name),value:t.type==="checkbox"?e.draftChecked(t.name,"1",t.value===!0||t.value==="1"):t.type==="checkbox-group"?t.value:e.draft(t.name,String(t.value??"")),options:t.type==="checkbox-group"?t.options?.map(a=>({...a,checked:e.draftChecked(a.name??`${t.name}[]`,a.value,a.checked===!0)})):t.options,error:e.fieldError(t.name),disabled:t.disabled===!0||!tt(e)}),Wi=(e,t)=>{let a=p(e,{name:t.name,label:t.label,type:"select",required:t.required});return{...a,options:t.options,control:Ia({id:a.id,name:t.name,state:t.name,value:t.value,options:t.options,required:t.required,disabled:a.disabled===!0,invalid:!!a.error})}},at=(e,t,a,n="primary")=>L({type:"submit",name:Je,value:t,label:a,variant:n,loading:e.busy}),qa=(e,t,a,n)=>Ja({kind:e.kind,command:t,hidden:a,children:L({type:"submit",label:n,variant:"secondary",size:"compact",loading:e.busy})}),et="product-template-more-form",Va="product-template-general-form",Zi=(e,t)=>Xa({kind:e.kind,id:t}),Qi=e=>Ka({children:L({label:r(e,"action.close"),variant:"secondary"})}),_a=e=>e.data.types.map(t=>({value:t,label:r(e,`type.${t}`)})),Yi=e=>{let t=e.data.record;return[p(e,{name:"businessUse",label:r(e,"field.businessUse"),type:"checkbox-group",span:"full",options:[{name:"saleOk",value:"1",label:r(e,"field.saleOk"),checked:t.saleOk},{name:"purchaseOk",value:"1",label:r(e,"field.purchaseOk"),checked:t.purchaseOk}]}),p(e,{name:"type",label:r(e,"field.productKind"),type:"radio",value:t.type,required:!0,span:"full",options:_a(e)}),p(e,{name:"name",label:r(e,"field.name"),value:t.name,required:!0,span:"full"}),p(e,{name:"uomId",label:r(e,"field.uom"),type:"select",value:t.uomId??"",options:[{value:"",label:"\u2014"},...e.data.uoms]}),p(e,{name:"listPrice",label:r(e,"field.listPrice"),type:"decimal",value:t.listPrice}),p(e,{name:"categoryId",label:r(e,"field.category"),type:"select",value:t.categoryId??"",options:[{value:"",label:"\u2014"},...e.data.categories]}),p(e,{name:"description",label:r(e,"field.description"),type:"textarea",value:t.description,span:"full"}),...e.data.hasVariants?[]:[p(e,{name:"defaultCode",label:r(e,"field.defaultCode"),value:t.defaultCode}),p(e,{name:"barcode",label:r(e,"field.barcode"),value:t.barcode})],p(e,{name:"brandId",label:r(e,"field.brand"),type:"select",value:t.brandId??"",options:[{value:"",label:"\u2014"},...e.data.brands]}),p(e,{name:"origin",label:r(e,"field.origin"),value:t.origin,span:"full"})]},ji=e=>[p(e,{name:"isStorable",label:r(e,"field.isStorable"),type:"checkbox",value:e.data.record.isStorable}),p(e,{name:"tracking",label:r(e,"field.tracking"),type:"select",value:e.data.record.tracking,options:zi.map(t=>({value:t,label:r(e,`tracking.${t}`)}))})],en=e=>[p(e,{name:"taxId",label:r(e,"field.taxRate"),type:"select",value:e.data.record.taxId??"",options:[{value:"",label:"\u2014"},...e.data.taxes]})],tn=e=>{let t=tt(e);return j({title:r(e,"tabs.general"),body:se({gap:"compact",items:[t?"":I({title:r(e,"readOnly.title"),message:r(e,"readOnly.message")}),Te({id:Va,kind:e.kind,fields:[...Yi(e),...e.data.stockEnabled?ji(e):[],...e.data.taxEnabled?en(e):[]]})]})})},an=e=>e.data.attributeLines.length?Ee({rows:e.data.attributeLines,id:t=>String(t.id),columns:[{key:"attribute",label:r(e,"attributes.nameColumn"),priority:"primary",cell:t=>String(t.attribute??t.attributeId)},{key:"values",label:r(e,"attributes.values"),cell:t=>(Array.isArray(t.values)?t.values:[]).map(a=>String(a.name)).join(" \xB7 ")},{key:"actions",label:r(e,"attributes.actions"),cell:t=>e.data.permissions.removeAttributeLine?qa(e,"removeAttributeLine",{id:String(t.id)},r(e,"attributes.removeLine")):""}]}):I({title:r(e,"attributes.linesEmpty"),message:r(e,"attributes.linesEmptyHint")}),nn=e=>{if(!e.data.permissions.saveAttributeLine||!e.data.attributes.length)return"";let t=e.state("attributeId",String(e.data.attributes[0]?.value??"")),a=e.data.attributeValuesByAttribute[t]??[];return Te({kind:e.kind,fields:[Wi(e,{name:"attributeId",label:r(e,"attributes.attribute"),value:t,required:!0,options:e.data.attributes.map(n=>({value:String(n.value),label:String(n.label)}))}),p(e,{name:"valueIds",label:r(e,"attributes.values"),type:"checkbox-group",span:"full",required:!0,options:a.map(n=>({name:`value_${n.value}`,value:"1",label:n.label}))})],actions:[at(e,"saveAttributeLine",r(e,"attributes.addLine"),"secondary")]})},rn=e=>e.data.variants.length?Ee({rows:e.data.variants,id:t=>String(t.id),columns:[{key:"code",label:r(e,"variants.code"),priority:"primary",cell:t=>Fa({dialog:"variant",id:String(t.id),children:L({label:String(t.defaultCode||t.name||t.id),variant:"tertiary",size:"compact"})})},{key:"values",label:r(e,"variants.values"),cell:t=>(Array.isArray(t.values)?t.values:[]).map(a=>String(a.value)).join(" \xB7 ")},{key:"price",label:r(e,"field.listPrice"),cell:()=>Gi(e.data.record.listPrice)},{key:"state",label:r(e,"col.state"),cell:t=>he({label:t.active===!1?r(e,"state.archived"):r(e,"variants.selling"),tone:t.active===!1?"neutral":"positive"})}]}):I({title:r(e,"variants.empty"),message:r(e,"variants.panelHint")}),ln=e=>se({gap:"loose",items:[j({title:r(e,"attributes.panelTitle"),description:r(e,"attributes.panelHint"),body:se({gap:"compact",items:[an(e),nn(e)]})}),j({title:r(e,"variants.title"),description:r(e,"variants.panelHint"),actions:e.data.permissions.generateVariants?qa(e,"generateVariants",{},r(e,"variants.generate")):void 0,body:rn(e)})]}),on=e=>e.data.variants.find(t=>String(t.id)===e.dialog?.params.id),dn=e=>{let t=on(e);return t?Te({kind:e.kind,fields:[p(e,{name:"defaultCode",label:r(e,"field.defaultCode"),value:t.defaultCode}),p(e,{name:"barcode",label:r(e,"field.barcode"),value:t.barcode}),p(e,{name:"weight",label:r(e,"field.weight"),type:"decimal",value:t.weight??0}),p(e,{name:"volume",label:r(e,"field.volume"),type:"decimal",value:t.volume??0})],actions:e.data.permissions.saveVariant?[at(e,"variantSave",r(e,"action.save"))]:[]}):I({title:r(e,"variants.empty"),message:""})},sn=e=>{let t=[];return e.data.permissions.archive&&t.push({id:"archive",label:e.data.record.active?r(e,"archive.action"):r(e,"archive.restore"),name:Je,value:"archive",form:et}),e.data.permissions.delete&&t.push({id:"delete",label:r(e,"action.delete"),name:Je,value:"delete",form:et,destructive:!0}),t},cn=e=>e.creating?"":he({label:e.data.record.active?r(e,"state.active"):r(e,"state.archived"),tone:e.data.record.active?"positive":"neutral"}),un=e=>{if(e.creating)return;let t=tt(e),a=sn(e);return se({gap:"compact",items:[a.length?Zi(e,et):"",Qe({label:r(e,"action.more"),actions:[t?L({type:"submit",name:Je,value:"save",label:r(e,"action.save"),variant:"primary",loading:e.busy,form:Va,disabled:e.tab!=="general"}):"",Qi(e),a.length?We({id:"product-template-more",label:r(e,"action.more"),triggerLabel:r(e,"action.moreShort"),items:a,placement:"top"}):""]})]})},mn=e=>j({title:r(e,"create.title"),description:r(e,"create.subtitle"),body:Te({kind:e.kind,fields:[p(e,{name:"type",label:r(e,"field.productKind"),type:"radio",value:"goods",required:!0,span:"full",options:_a(e)}),p(e,{name:"name",label:r(e,"field.name"),required:!0,span:"full"}),p(e,{name:"uomId",label:r(e,"field.uom"),type:"select",options:[{value:"",label:"\u2014"},...e.data.uoms]}),p(e,{name:"categoryId",label:r(e,"field.category"),type:"select",options:[{value:"",label:"\u2014"},...e.data.categories]}),p(e,{name:"listPrice",label:r(e,"field.listPrice"),type:"decimal",value:"0"}),p(e,{name:"description",label:r(e,"field.description"),type:"textarea",span:"full"})],actions:[at(e,"create",r(e,"action.create"))]})}),gn={kind:"product.template",size:"large",fixedHeight:"min(48rem, calc(100dvh - var(--kv-space-12)))",context:{fn:"product.templateModalContext",input:(e,t)=>t?{locale:Ba()}:{id:e,locale:Ba()}},title:e=>e.creating?r(e,"create.title"):e.data.record.name,status:cn,actions:un,body:e=>e.creating?mn(e):"",tabs:[{id:"general",label:e=>r(e,"tabs.general"),visible:e=>!e.creating,view:tn},{id:"variants",label:e=>r(e,"tabs.variants"),visible:e=>!e.creating,view:ln}],extensionTabs:e=>e.creating?[]:(e.data.extensionTabs??[]).map(t=>({id:t.id,label:()=>t.label,view:a=>Aa(t.island,{templateId:a.id,locale:a.data.lang})})),dialogs:{variant:{title:e=>r(e,"variants.edit"),view:dn}},commands:{create:{fn:"product.saveTemplate",input:e=>({id:$a(),name:S(e,"name"),type:S(e,"type")||"goods",uomId:S(e,"uomId")||null,categoryId:S(e,"categoryId")||null,listPrice:Fe(e,"listPrice"),description:S(e,"description")||null}),after:"open",openTab:"general",created:e=>{let t=e??{};return typeof t.id=="string"?t.id:null}},save:{fn:"product.saveTemplate",input:(e,t)=>({id:t.id,name:S(e,"name"),type:S(e,"type")||"goods",uomId:S(e,"uomId")||null,categoryId:S(e,"categoryId")||null,brandId:S(e,"brandId")||null,origin:S(e,"origin")||null,description:S(e,"description")||null,listPrice:Fe(e,"listPrice"),saleOk:Ie(e,"saleOk"),purchaseOk:Ie(e,"purchaseOk"),...t.data.hasVariants?{}:{defaultCode:S(e,"defaultCode")||null,barcode:S(e,"barcode")||null}}),also:[{fn:"stock.configureProduct",when:e=>e.data.stockEnabled&&e.data.permissions.configureStock,input:(e,t)=>({templateId:t.id,isStorable:Ie(e,"isStorable"),tracking:S(e,"tracking")||"none"})},{fn:"account.setProductTax",when:e=>e.data.taxEnabled&&e.data.permissions.setTax,input:(e,t)=>({templateId:t.id,taxId:S(e,"taxId")||null})}],after:"refresh"},archive:{fn:"product.archiveTemplate",input:(e,t)=>({id:t.id,active:!t.data.record.active}),after:"refresh"},delete:{fn:"product.deleteTemplates",input:(e,t)=>({ids:[t.id]}),confirm:e=>r(e,"archive.deleteConfirm",{name:e.data.record.name}),after:"close"},generateVariants:{fn:"product.generateVariants",input:(e,t)=>({templateId:t.id}),after:"refresh"},saveAttributeLine:{fn:"product.saveAttributeLine",input:(e,t)=>{let a=S(e,"attributeId"),c=(t.data.attributeValuesByAttribute[a]??[]).map(s=>String(s.value)).filter(s=>Ie(e,`value_${s}`));return{id:$a(),templateId:t.id,attributeId:a,valueIds:c}},after:"refresh"},removeAttributeLine:{fn:"product.removeAttributeLine",input:e=>({id:S(e,"id")}),after:"refresh"},variantSave:{fn:"product.saveVariant",input:(e,t)=>({id:t.dialog?.params.id??"",templateId:t.id,defaultCode:S(e,"defaultCode")||null,barcode:S(e,"barcode")||null,weight:Fe(e,"weight"),volume:Fe(e,"volume")}),after:"reload"}}},Bm=Ea(gn);export{Bm as templateModal,gn as templateModalDefinition};