@ketvietlab/ketsuite 0.1.30 → 0.1.31

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 (92) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/modules/backend/design/client/backend-shell.d.mts.map +1 -1
  3. package/dist/modules/backend/design/client/backend-shell.mjs +1 -1
  4. package/dist/modules/backend/design/client/backend-shell.mjs.map +2 -2
  5. package/dist/modules/backend/design/client/ket-table.d.mts.map +1 -1
  6. package/dist/modules/backend/design/client/ket-table.mjs +1 -1
  7. package/dist/modules/backend/design/client/ket-table.mjs.map +2 -2
  8. package/dist/modules/backend/design/client/search-filter.d.mts.map +1 -1
  9. package/dist/modules/backend/design/client/search-filter.mjs +1 -1
  10. package/dist/modules/backend/design/client/search-filter.mjs.map +2 -2
  11. package/dist/modules/backend/design/content.css +5 -5
  12. package/dist/modules/backend/design/controls.css +10 -36
  13. package/dist/modules/backend/design/forms.css +2 -188
  14. package/dist/modules/backend/design/lists.css +1 -50
  15. package/dist/modules/crm_backend/client/crm-case-modal.d.mts +8 -8
  16. package/dist/modules/crm_backend/client/crm-case-modal.d.mts.map +1 -1
  17. package/dist/modules/crm_backend/client/crm-case-modal.mjs +1 -1
  18. package/dist/modules/crm_backend/client/crm-case-modal.mjs.map +3 -3
  19. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts +35 -35
  20. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts.map +1 -1
  21. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs +1 -1
  22. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs.map +3 -3
  23. package/dist/modules/product_backend/client/attribute-modal.d.mts +5 -5
  24. package/dist/modules/product_backend/client/attribute-modal.d.mts.map +1 -1
  25. package/dist/modules/product_backend/client/attribute-modal.mjs +1 -1
  26. package/dist/modules/product_backend/client/attribute-modal.mjs.map +3 -3
  27. package/dist/modules/product_backend/client/product-modal.d.mts +8 -8
  28. package/dist/modules/product_backend/client/product-modal.d.mts.map +1 -1
  29. package/dist/modules/product_backend/client/product-modal.mjs +1 -1
  30. package/dist/modules/product_backend/client/product-modal.mjs.map +3 -3
  31. package/dist/modules/product_backend/client/variant-editor.d.mts +2 -2
  32. package/dist/modules/product_backend/client/variant-editor.d.mts.map +1 -1
  33. package/dist/modules/product_backend/client/variant-editor.mjs +1 -1
  34. package/dist/modules/product_backend/client/variant-editor.mjs.map +2 -2
  35. package/dist/modules/purchase_backend/client/purchase-order-modal.d.mts +5 -5
  36. package/dist/modules/purchase_backend/client/purchase-order-modal.d.mts.map +1 -1
  37. package/dist/modules/purchase_backend/client/purchase-order-modal.mjs +1 -1
  38. package/dist/modules/purchase_backend/client/purchase-order-modal.mjs.map +3 -3
  39. package/dist/modules/purchase_backend/client/vendor-pricelist-modal.d.mts +4 -4
  40. package/dist/modules/purchase_backend/client/vendor-pricelist-modal.d.mts.map +1 -1
  41. package/dist/modules/purchase_backend/client/vendor-pricelist-modal.mjs +1 -1
  42. package/dist/modules/purchase_backend/client/vendor-pricelist-modal.mjs.map +3 -3
  43. package/dist/modules/sale_backend/client/invoicing-policy-modal.d.mts +4 -4
  44. package/dist/modules/sale_backend/client/invoicing-policy-modal.d.mts.map +1 -1
  45. package/dist/modules/sale_backend/client/invoicing-policy-modal.mjs +1 -1
  46. package/dist/modules/sale_backend/client/invoicing-policy-modal.mjs.map +3 -3
  47. package/dist/modules/sale_backend/client/sale-order-modal.d.mts +5 -5
  48. package/dist/modules/sale_backend/client/sale-order-modal.d.mts.map +1 -1
  49. package/dist/modules/sale_backend/client/sale-order-modal.mjs +1 -1
  50. package/dist/modules/sale_backend/client/sale-order-modal.mjs.map +3 -3
  51. package/dist/modules/stock_backend/client/inventory-count-modal.d.mts +4 -4
  52. package/dist/modules/stock_backend/client/inventory-count-modal.d.mts.map +1 -1
  53. package/dist/modules/stock_backend/client/inventory-count-modal.mjs +1 -1
  54. package/dist/modules/stock_backend/client/inventory-count-modal.mjs.map +3 -3
  55. package/dist/modules/stock_backend/client/stock-configuration-modal.d.mts +14 -14
  56. package/dist/modules/stock_backend/client/stock-configuration-modal.d.mts.map +1 -1
  57. package/dist/modules/stock_backend/client/stock-configuration-modal.mjs +1 -1
  58. package/dist/modules/stock_backend/client/stock-configuration-modal.mjs.map +3 -3
  59. package/dist/modules/stock_backend/client/stock-transfer-modal.d.mts +4 -4
  60. package/dist/modules/stock_backend/client/stock-transfer-modal.d.mts.map +1 -1
  61. package/dist/modules/stock_backend/client/stock-transfer-modal.mjs +1 -1
  62. package/dist/modules/stock_backend/client/stock-transfer-modal.mjs.map +3 -3
  63. package/dist/modules/user_backend/client/access-policy-modal.d.mts +4 -4
  64. package/dist/modules/user_backend/client/access-policy-modal.d.mts.map +1 -1
  65. package/dist/modules/user_backend/client/access-policy-modal.mjs +1 -1
  66. package/dist/modules/user_backend/client/access-policy-modal.mjs.map +3 -3
  67. package/dist/modules/user_backend/client/role-modal.d.mts +6 -6
  68. package/dist/modules/user_backend/client/role-modal.d.mts.map +1 -1
  69. package/dist/modules/user_backend/client/role-modal.mjs +1 -1
  70. package/dist/modules/user_backend/client/role-modal.mjs.map +3 -3
  71. package/dist/modules/user_backend/client/user-modal.d.mts +9 -9
  72. package/dist/modules/user_backend/client/user-modal.d.mts.map +1 -1
  73. package/dist/modules/user_backend/client/user-modal.mjs +1 -1
  74. package/dist/modules/user_backend/client/user-modal.mjs.map +3 -3
  75. package/dist/scaffold/index.js +1 -1
  76. package/dist/ui/client/record-modal-form.d.ts +10 -0
  77. package/dist/ui/client/record-modal-form.d.ts.map +1 -1
  78. package/dist/ui/client/record-modal-form.js +3 -1
  79. package/dist/ui/client/record-modal-form.js.map +1 -1
  80. package/dist/ui/client/record-modal.d.ts +9 -1
  81. package/dist/ui/client/record-modal.d.ts.map +1 -1
  82. package/dist/ui/client/record-modal.js +78 -17
  83. package/dist/ui/client/record-modal.js.map +1 -1
  84. package/dist/ui/index.d.ts +2 -2
  85. package/dist/ui/index.d.ts.map +1 -1
  86. package/dist/ui/index.js +2 -2
  87. package/dist/ui/index.js.map +1 -1
  88. package/dist/ui/record-modal.d.ts +3 -0
  89. package/dist/ui/record-modal.d.ts.map +1 -1
  90. package/dist/ui/record-modal.js +15 -1
  91. package/dist/ui/record-modal.js.map +1 -1
  92. package/package.json +4 -4
@@ -1,4 +1,4 @@
1
- declare var Ya: (e: any) => any, oi: {
1
+ declare var an: (e: any) => any, ci: {
2
2
  kind: string;
3
3
  size: string;
4
4
  labels: () => {
@@ -37,7 +37,7 @@ declare var Ya: (e: any) => any, oi: {
37
37
  id: string;
38
38
  label: (e: any) => any;
39
39
  visible: (e: any) => boolean;
40
- view: typeof Ya;
40
+ view: typeof an;
41
41
  }[];
42
42
  actions: (e: any) => any;
43
43
  dialogs: {
@@ -150,12 +150,12 @@ declare var Ya: (e: any) => any, oi: {
150
150
  after: string;
151
151
  };
152
152
  };
153
- }, Hf: () => {
153
+ }, Kf: () => {
154
154
  view: () => any;
155
- mount: ({ root: i, lifetime: d }: {
155
+ mount: ({ root: r, lifetime: d }: {
156
156
  lifetime: any;
157
157
  root: any;
158
158
  }) => void;
159
159
  };
160
- export { Hf as saleOrderModal, oi as saleOrderModalDefinition };
160
+ export { Kf as saleOrderModal, ci as saleOrderModalDefinition };
161
161
  //# sourceMappingURL=sale-order-modal.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sale-order-modal.d.mts","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/sale_backend/client/sale-order-modal.mjs"],"names":[],"mappings":"AACq2rD,QAAA,IAAupE,EAAE,iBAAk8B,EAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA6uH,EAAE;;;;;;;;gBAA0H,EAAE;;;;;;;gBAAuE,EAAE;gBAAM,gBAAgB;;;;;;;gBAA6F,EAAE;;;;;;;gBAAsE,EAAE;;;;;;;;;;;;;;;;;;;;;;;gBAAiO,EAAE;gBAAM,gBAAgB;;;;;;;;;;;;;;CAAoR,EAAC,EAAE;;;;;;CAAO,CAAC;AAAA,OAAM,EAAC,EAAE,IAAI,cAAc,EAAC,EAAE,IAAI,wBAAwB,EAAC,CAAC"}
1
+ {"version":3,"file":"sale-order-modal.d.mts","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/sale_backend/client/sale-order-modal.mjs"],"names":[],"mappings":"AAC61uD,QAAA,IAAupE,EAAE,iBAAk8B,EAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA6uH,EAAE;;;;;;;;gBAA0H,EAAE;;;;;;;gBAAuE,EAAE;gBAAM,gBAAgB;;;;;;;gBAA6F,EAAE;;;;;;;gBAAsE,EAAE;;;;;;;;;;;;;;;;;;;;;;;gBAAiO,EAAE;gBAAM,gBAAgB;;;;;;;;;;;;;;CAAoR,EAAC,EAAE;;;;;;CAAO,CAAC;AAAA,OAAM,EAAC,EAAE,IAAI,cAAc,EAAC,EAAE,IAAI,wBAAwB,EAAC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  // @ts-nocheck Generated by tools/build-backend-client.mjs — do not edit.
2
- import{each as sn}from"/_ket/view/index.js";import{Fragment as kt,jsx as ae,jsxs as cn}from"/_ket/view/jsx-runtime.js";var Tt=["action","action-leading","action-label","action-spinner","action-group"],dn=e=>cn(kt,{children:[e.loading===!0&&ae("span",{"data-ui":"action-spinner","aria-hidden":"true"}),e.loading!==!0&&e.leading!==void 0&&ae("span",{"data-ui":"action-leading","aria-hidden":"true",children:e.leading}),!e.iconOnly&&ae("span",{"data-ui":"action-label",children:e.label})]}),R=e=>ae("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,"aria-expanded":e.expanded===void 0?null:String(e.expanded),"aria-controls":e.controls??null,children:ae(dn,{...e})});var z=e=>ae("div",{"data-ui":"action-group",role:"group","aria-label":e.label??null,children:sn(e.actions,(t,a)=>a,t=>ae(kt,{children:t}))});import{jsx as un,jsxs as ui}from"/_ket/view/jsx-runtime.js";var wt=["badge","tag","tag-remove","count-badge","avatar","code","text","media-label","media-label-image","media-label-copy"];var Ce=e=>un("span",{"data-ui":"badge","data-pattern":"badge","data-tone":e.tone??"neutral","data-value":e.value??"",children:e.label});import{each as mn}from"/_ket/view/index.js";import{Fragment as $e,jsx as T,jsxs as W}from"/_ket/view/jsx-runtime.js";var Rt=["notice","notice-mark","notice-copy","notice-title","notice-message","notice-actions","empty","empty-mark","empty-title","empty-message","empty-actions","loading","loading-label"],gn={info:()=>W($e,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"M12 16v-4"}),T("path",{d:"M12 8h.01"})]}),positive:()=>W($e,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"m9 12 2 2 4-4"})]}),warning:()=>W($e,{children:[T("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"}),T("path",{d:"M12 9v4"}),T("path",{d:"M12 17h.01"})]}),danger:()=>W($e,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"M12 8v4"}),T("path",{d:"M12 16h.01"})]})},Z=e=>W("aside",{"data-ui":"notice","data-pattern":"notice","data-tone":e.tone??"info",role:e.tone==="danger"?"alert":"status",children:[T("span",{"data-ui":"notice-mark","aria-hidden":"true",children:T("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:gn[e.tone??"info"]()})}),W("div",{"data-ui":"notice-copy",children:[T("p",{"data-ui":"notice-title",children:e.title}),T("p",{"data-ui":"notice-message",children:e.message})]}),e.actions!==void 0&&T("div",{"data-ui":"notice-actions",children:e.actions})]}),ne=e=>W("div",{"data-ui":"empty",role:"status",children:[T("span",{"data-ui":"empty-mark","aria-hidden":"true",children:"\u25C7"}),T("p",{"data-ui":"empty-title",children:e.title}),T("p",{"data-ui":"empty-message",children:e.message}),e.actions!==void 0&&T("div",{"data-ui":"empty-actions",children:e.actions})]}),ge=e=>W("div",{"data-ui":"loading",role:"status","aria-live":"polite",children:[T("span",{"data-ui":"loading-label",children:e.label}),T("div",{"data-ui":"skeleton","aria-hidden":"true",children:mn(Array.from({length:Math.max(1,e.lines??3)}),(t,a)=>a,(t,a)=>T("span",{"data-ui":"skeleton-line","data-line":String(a+1)}))})]});import{each as at}from"/_ket/view/index.js";import{each as vn}from"/_ket/view/index.js";import{jsx as B,jsxs as Le}from"/_ket/view/jsx-runtime.js";var Ct=["modal-layer","modal-backdrop","modal-sheet","modal-head","modal-heading","modal-title-row","modal-title","modal-description","modal-close","modal-body","modal-actions"],ie=e=>{let t=e.mode==="client",a=e.mode==="embedded";return Le("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?B("button",{"data-ui":"modal-backdrop",type:"button","aria-hidden":"true",tabIndex:-1,children:B("span",{children:e.closeLabel})}):B("a",{"data-ui":"modal-backdrop",href:e.closeHref??"#","aria-label":e.closeLabel,children:B("span",{children:e.closeLabel})}),Le("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`:"",...e.dialogSemantics==="parent"?{}:{role:"dialog","aria-modal":a?"false":"true"},"aria-labelledby":e.dialogSemantics==="parent"?null:`${e.id}-title`,"aria-describedby":e.dialogSemantics!=="parent"&&e.description?`${e.id}-description`:null,tabindex:a?null:"-1",children:[Le("header",{"data-ui":"modal-head",children:[Le("div",{"data-ui":"modal-heading",children:[Le("div",{"data-ui":"modal-title-row",children:[B("h2",{"data-ui":"modal-title",id:`${e.id}-title`,children:e.title}),e.status!==void 0&&e.status]}),!!e.description&&B("p",{"data-ui":"modal-description",id:`${e.id}-description`,children:e.description})]}),t?B("button",{"data-ui":"modal-close",type:"button","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"}):B("a",{"data-ui":"modal-close",href:e.closeHref??"#","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"})]}),B("div",{"data-ui":"modal-body",children:e.body}),e.actions!==void 0&&B("footer",{"data-ui":"modal-actions",children:e.actions})]})]})};import{Fragment as Si,jsx as vi,jsxs as xi}from"/_ket/view/jsx-runtime.js";import{Fragment as Pi,jsx as Ci,jsxs as Li}from"/_ket/view/jsx-runtime.js";var Pt=["app-shell","app-shell-topbar","app-topbar","app-location-bar","app-location-context","app-brand","app-topbar-brand","app-topbar-context","global-search-trigger","global-search-trigger-label","global-search-shortcut","global-search-dialog","global-search","global-search-input","global-search-submit","app-sidebar","app-main","app-right-rail","page","page-context","page-header","page-heading","page-eyebrow","page-title-row","page-title","page-subline","page-status","page-actions","page-meta","page-body","record-canvas","record-content","record-section","record-section-title"];import{Fragment as Mt,jsx as L,jsxs as re}from"/_ket/view/jsx-runtime.js";var Et=["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"],xn=e=>L(Mt,{children:vn(e.items,(t,a)=>a,t=>typeof t=="string"||typeof t=="number"?L("span",{children:t}):L(Mt,{children:t}))}),Ke=e=>L("div",{"data-ui":"stack","data-pattern":"stack","data-gap":e.gap??"default","data-divided":e.divided===!0?"true":null,children:L(xn,{items:e.items})});var et=e=>re("div",{"data-ui":"surface","data-tone":e.tone??"default","data-padding":e.padding??"default","data-has-heading":e.title?"true":null,children:[e.title&&re("header",{"data-ui":"surface-head",children:[e.description?re("div",{"data-ui":"surface-heading",children:[L("h2",{"data-ui":"surface-title",children:e.title}),L("p",{"data-ui":"surface-description",children:e.description})]}):L("h2",{"data-ui":"surface-title",children:e.title}),e.actions!==void 0&&L("div",{"data-ui":"surface-actions",children:e.actions})]}),e.body]}),tt=e=>re("details",{"data-ui":"disclosure",open:e.open===!0?!0:void 0,children:[L("summary",{"data-ui":"disclosure-summary",children:e.summary}),L("div",{"data-ui":"disclosure-body",children:e.body})]}),Pe=e=>re("section",{"data-ui":"section",children:[re("header",{"data-ui":"section-head",children:[re("div",{children:[!!e.eyebrow&&L("p",{"data-ui":"section-eyebrow",children:e.eyebrow}),L("h2",{"data-ui":"section-title",children:e.title}),!!e.description&&L("p",{"data-ui":"section-description",children:e.description})]}),e.actions!==void 0&&L("div",{"data-ui":"section-actions",children:e.actions})]}),L("div",{"data-ui":"section-body",children:e.body})]});import{each as Sn}from"/_ket/view/index.js";import{Fragment as Tn,jsx as Me}from"/_ket/view/jsx-runtime.js";var Be=(e,t)=>e.control!==void 0?Me(Tn,{children:e.control}):e.type==="textarea"?Me("textarea",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,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"?Me("select",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:Sn(e.options??[],a=>a.value,a=>Me("option",{value:a.value,selected:String(e.value??"")===a.value,disabled:a.disabled===!0,children:a.label}))}):Me("input",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,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 w,jsxs as U}from"/_ket/view/jsx-runtime.js";var Ft=["field","field-label","field-required","field-control","field-options","field-option","field-option-input","field-help","field-error"],Ot=e=>!!e.error||(e.fields?.some(Ot)??!1),oe=e=>{let t=e.help?`${e.id}-help`:null,a=e.error?`${e.id}-error`:null,l=[t,a].filter(Boolean).join(" ")||null,g=U("span",{"data-ui":"field-label",children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]});return e.fields?U("div",{"data-ui":"field","data-kind":"group","data-span":"full","data-invalid":String(!!e.error),children:[w(tt,{summary:e.label,open:e.open||Ot(e),body:w("div",{"data-ui":"form-grid",children:at(e.fields.map(u=>({...u,disabled:e.disabled||u.disabled,readOnly:e.readOnly||u.readOnly})),u=>u.id,u=>w(oe,{...u}))})}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="checkbox-group"?U("div",{"data-ui":"field","data-kind":"checkbox-group","data-span":e.span??"half","data-invalid":String(!!e.error),children:[U("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),w("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"group","aria-labelledby":`${e.id}-label`,children:at(e.options??[],u=>u.name??u.value,u=>U("label",{"data-ui":"field-option",children:[w("input",{"data-ui":"field-option-input",type:"checkbox",name:u.name??`${e.name}[]`,value:u.value,checked:u.checked===!0,disabled:e.disabled===!0||u.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":l,autocomplete:"off"}),w("span",{children:u.label})]}))}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="radio"?U("div",{"data-ui":"field","data-kind":"radio","data-span":e.span??"half","data-invalid":String(!!e.error),children:[U("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),w("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"radiogroup","aria-labelledby":`${e.id}-label`,children:at(e.options??[],u=>u.value,u=>U("label",{"data-ui":"field-option",children:[w("input",{"data-ui":"field-option-input",type:"radio",name:e.name,value:u.value,checked:String(e.value??"")===u.value,required:e.required===!0,disabled:e.disabled===!0||u.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":l,autocomplete:"off"}),w("span",{children:u.label})]}))}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):U("label",{"data-ui":"field","data-kind":e.type??"text","data-label-hidden":e.labelHidden?"true":null,"data-selection-hidden":e.selectionHidden?"true":null,"data-span":e.span??"half","data-invalid":String(!!e.error),for:e.id,children:[e.type==="checkbox"&&Be(e,l),g,e.type!=="checkbox"&&Be(e,l),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]})};import{each as kn}from"/_ket/view/index.js";import{jsx as fe,jsxs as it}from"/_ket/view/jsx-runtime.js";var Ht=["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 Dt=e=>it("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&&fe("span",{"data-ui":"tab-count",children:String(e.count)})]}),It=(e,t)=>`${e}-${t.replace(/[^a-zA-Z0-9_-]+/gu,"-")}-tab`,At=e=>it("nav",{"data-ui":"tabs","data-pattern":"tabs","aria-label":e.label,children:[kn(e.items,t=>t.id,t=>fe(Dt,{...t,elementId:e.id?It(e.id,t.id):void 0,controls:e.panelId})),e.extension]}),$t=e=>fe("section",{"data-ui":"tab-panel",id:e.id,"aria-labelledby":e.labelledBy,tabindex:"-1",children:e.body}),nt=e=>{let t=`${e.id}-tabs`,a=`${e.id}-panel`,l=e.items.find(g=>g.active===!0);return it("div",{"data-ui":"tabbed-view",children:[e.context!==void 0&&e.context!==""?fe("div",{"data-ui":"tabbed-view-context",children:e.context}):"",fe(At,{id:t,label:e.label,items:e.items,extension:e.extension,panelId:a}),fe($t,{id:a,labelledBy:l?It(t,l.id):void 0,body:e.body})]})};import{jsx as Zi,jsxs as Qi}from"/_ket/view/jsx-runtime.js";var Kt=["progress","progress-label","progress-value","progress-track","progress-bar"];import{each as er}from"/_ket/view/index.js";import{Fragment as ir,jsx as ar,jsxs as nr}from"/_ket/view/jsx-runtime.js";var Bt=["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"];import{jsx as lr,jsxs as sr}from"/_ket/view/jsx-runtime.js";var qt=["popover","popover-trigger","popover-panel","popover-close"];import{jsx as ur,jsxs as mr}from"/_ket/view/jsx-runtime.js";var Nt=["tooltip","tooltip-trigger","tooltip-content"];import{jsx as hr}from"/_ket/view/jsx-runtime.js";var Jt=["dialog","confirm-dialog-message"];import{each as xr}from"/_ket/view/index.js";import{jsx as Tr,jsxs as kr}from"/_ket/view/jsx-runtime.js";var Xt=["toast-region","toast","toast-copy","toast-title","toast-message","toast-actions"];import{jsx as Cr}from"/_ket/view/jsx-runtime.js";var zt=["spinner","visually-hidden"];import{each as Mr}from"/_ket/view/index.js";import{jsx as Fr}from"/_ket/view/jsx-runtime.js";var Ut=["skeleton","skeleton-line"];import{each as Dr,effect as Ir,signal as Ar}from"/_ket/view/index.js";import{jsx as Br,jsxs as Kr}from"/_ket/view/jsx-runtime.js";var Vt=["relation-select","relation-native","relation-trigger","relation-value","relation-caret","relation-chips","relation-chip","relation-chip-clear","relation-menu","relation-search","relation-options","relation-option","relation-footer","relation-empty","relation-editor","relation-dialog-toolbar","relation-search-field","relation-search-icon","relation-dialog-list","relation-dialog-row","relation-dialog-main","relation-dialog-meta","relation-dialog-actions"];import{each as Jr,signal as Xr}from"/_ket/view/index.js";import{jsx as Ur,jsxs as Vr}from"/_ket/view/jsx-runtime.js";var Gt=["lightbox","lightbox-thumbs","lightbox-thumb","lightbox-empty","lightbox-layer","lightbox-backdrop","lightbox-toolbar","lightbox-counter","lightbox-tool","lightbox-stage","lightbox-image","lightbox-nav","lightbox-caption"];import{each as Zr,signal as Qr}from"/_ket/view/index.js";import{Fragment as to,jsx as eo,jsxs as jr}from"/_ket/view/jsx-runtime.js";var _t=["search-filter","search-filter-bar","search-filter-section-toggle","search-filter-sheet","search-filter-clear","search-filter-icon","search-filter-field","search-filter-input","search-filter-facets","search-filter-facet","search-filter-facet-remove","search-filter-suggestions","search-filter-suggestion","search-filter-toggle","search-filter-columns","search-filter-column","search-filter-column-title","search-filter-empty","search-filter-grouping","search-filter-grouping-head","search-filter-grouping-list","search-filter-grouping-item","search-filter-grouping-order","search-filter-grouping-label","search-filter-grouping-actions","search-filter-grouping-action","search-filter-grouping-clear","search-filter-grouping-add-label","custom-filter","custom-filter-row","custom-filter-add","custom-group-by","favorite-list","favorite-item","favorite-item-default","favorite-item-remove","favorite-save","favorite-save-toggle","favorite-save-row"];import{each as lo,effect as so,signal as co}from"/_ket/view/index.js";import{jsx as io}from"/_ket/view/jsx-runtime.js";var Wt=["formatted-date","formatted-number","formatted-money"];import{Fragment as bo,jsx as po,jsxs as ho}from"/_ket/view/jsx-runtime.js";var Qt=["ket-table","kt-scroll","kt-selection-target","kt-grid","kt-select-col","kt-select-all","kt-col","kt-sort-button","kt-sort-icon","kt-row","kt-cell","kt-person","kt-select-cell","kt-row-select","kt-row-link","kt-group-row","kt-group-cell","kt-group-toggle","kt-group-indent","kt-group-count","kt-group-pager","kt-pager","kt-pager-label","kt-pager-button","kt-select-persisted","kt-caption","kt-tools"];var Oo=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","summary",'[tabindex]:not([tabindex="-1"])'].join(",");var Mn=['[data-ui="timeframe-menu"]','[data-ui="view-settings"]'],Ho=Mn.map(e=>`${e}[open]`).join(", ");import{jsx as Ao,jsxs as $o}from"/_ket/view/jsx-runtime.js";import{jsx as Jo,jsxs as Xo}from"/_ket/view/jsx-runtime.js";var Yt=["switch-control","switch-track"];import{each as Vo}from"/_ket/view/index.js";import{Fragment as Qo,jsx as Wo,jsxs as Zo}from"/_ket/view/jsx-runtime.js";var jt=["combobox","combobox-input-row","combobox-toggle","combobox-listbox","combobox-option","combobox-empty","tag-picker"];import{Fragment as ll,jsx as rl,jsxs as ol}from"/_ket/view/jsx-runtime.js";var ea=["date-picker","date-range","date-inputs","date-control-row","date-tools","date-range-error","date-calendar","date-calendar-head","date-calendar-title","date-calendar-body","date-field-control","date-range-preset","date-boundary","date-calendar-months","date-month","date-month-title","date-grid","date-weekday","date-cell","date-day","date-calendar-footer","date-calendar-status"];import{jsx as ul,jsxs as ml}from"/_ket/view/jsx-runtime.js";var ta=["file-upload","drop-zone","upload-status"];import{jsx as pl}from"/_ket/view/jsx-runtime.js";var aa=["relation-picker"];import{each as vl}from"/_ket/view/index.js";import{jsx as kl,jsxs as wl}from"/_ket/view/jsx-runtime.js";var na=["search-bar","filter-bar","applied-filters","applied-filter","saved-views","saved-view","view-settings","view-settings-options"];import{jsx as Pl,jsxs as Ml}from"/_ket/view/jsx-runtime.js";var ia=["inline-edit","inline-edit-value","inline-edit-form","inline-edit-actions"];import{each as Jl}from"/_ket/view/index.js";import{each as Dl}from"/_ket/view/index.js";import{Fragment as Bl,jsx as $l,jsxs as Kl}from"/_ket/view/jsx-runtime.js";var ra=["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 Gl}from"/_ket/view/jsx-runtime.js";var oa=["resource-list","resource-list-item","resource-list-select","resource-list-link"];import{each as Zl}from"/_ket/view/index.js";import{jsx as Yl,jsxs as jl}from"/_ket/view/jsx-runtime.js";var la=["data-grid-scroll","data-grid","data-grid-cap","data-grid-cell"];import{each as as}from"/_ket/view/index.js";import{jsx as is,jsxs as rs}from"/_ket/view/jsx-runtime.js";var sa=["tree","tree-item","tree-link","tree-grid","tree-grid-row"];import{each as ss}from"/_ket/view/index.js";import{jsx as cs,jsxs as us}from"/_ket/view/jsx-runtime.js";var da=["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 fs}from"/_ket/view/index.js";import{jsx as ps,jsxs as hs}from"/_ket/view/jsx-runtime.js";var ca=["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 xs}from"/_ket/view/index.js";import{jsx as Ts,jsxs as ks}from"/_ket/view/jsx-runtime.js";var ua=["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 Dn}from"/_ket/view/index.js";import{jsx as Ne,jsxs as In}from"/_ket/view/jsx-runtime.js";var ma=["description-list","key-value","key-value-label","key-value-value","person","person-body","avatar-group","status"],ga=e=>In("div",{"data-ui":"key-value",children:[Ne("dt",{"data-ui":"key-value-label",children:e.label}),Ne("dd",{"data-ui":"key-value-value",children:e.value??e.emptyLabel??"\u2014"})]}),Je=e=>Ne("dl",{"data-ui":"description-list","aria-label":e.label,"data-columns":String(e.columns??2),"data-layout":e.layout==="strip"?"strip":null,children:Dn(e.items,t=>t.id,t=>Ne(ga,{...t}))});import{each as Es}from"/_ket/view/index.js";import{jsx as Is,jsxs as As}from"/_ket/view/jsx-runtime.js";var ba=["record-summary","record-summary-main","record-actions","record-rail"];import{each as Bs}from"/_ket/view/index.js";import{jsx as Xs,jsxs as zs}from"/_ket/view/jsx-runtime.js";var pa=["activity-timeline","activity-item","activity-marker","audit-log","audit-item"];import{each as Gs}from"/_ket/view/index.js";import{jsx as Zs,jsxs as Qs}from"/_ket/view/jsx-runtime.js";var ha=["attachments","attachment","media-gallery","media-item"];import{each as ed}from"/_ket/view/index.js";import{Fragment as id,jsx as ad,jsxs as nd}from"/_ket/view/jsx-runtime.js";var ya=["app-navigation","navigation-trigger","navigation-toggle","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 be}from"/_ket/view/index.js";import{Fragment as wa,jsx as x,jsxs as Q}from"/_ket/view/jsx-runtime.js";var va=["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"],$n=e=>e.shownColumns??e.columns.filter(t=>t.hidden!==!0).map(t=>t.key),Kn=e=>{let t=new Set($n(e));return e.columns.filter(a=>t.has(a.key))},xa=(e,t)=>t.length+(e.selection?1:0),Bn=(e,t)=>e.sort?.direction?e.sort.direction==="ascending"?t?.sortedAscending??"Sorted ascending":t?.sortedDescending??"Sorted descending":null,qn=(e,t)=>x("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?Q("a",{"data-ui":"sort-link",href:e.sort.href,"aria-label":e.sort.label??e.label,children:[x("span",{children:e.label}),!!e.sort.direction&&x("span",{"data-ui":"sort-icon","aria-hidden":"true",title:Bn(e,t)??void 0,children:e.sort.direction==="ascending"?"\u2191":"\u2193"})]}):e.label}),Nn=e=>e.selection?x("th",{"data-ui":"select-col",scope:"col",children:x("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,Sa=(e,t)=>e.selected?.(t)===!0?!0:e.selection?.selectedIds?.includes(e.id(t))===!0,Jn=(e,t,a)=>Q(wa,{children:[e.selection&&x("td",{"data-ui":"select-cell",children:x("input",{"data-ui":"row-select",type:"checkbox",name:e.selection.name??"ids",form:e.selection.form,value:e.id(a),checked:Sa(e,a),"aria-label":e.labels?.selectRow?.(a,e.id(a))??`Select row ${e.id(a)}`,disabled:e.selection.disabled===!0})}),be(t,l=>l.key,l=>x("td",{"data-ui":"cell","data-col":l.key,"data-linked":e.rowHref&&l===t[0]?"true":null,"data-align":l.align??"start","data-kind":l.kind??"text","data-priority":l.priority??"secondary","data-label":e.responsive==="stack"?l.label:null,children:e.rowHref&&l===t[0]?x("a",{"data-ui":"row-link",href:e.rowHref(a),children:l.cell(a)}):l.cell(a)}))]}),Ta=(e,t,a)=>x("tr",{"data-ui":"row","data-row":e.id(a),"data-selected":Sa(e,a)?"true":null,children:Jn(e,t,a)}),Xn=(e,t,a)=>a?x("tr",{"data-ui":"group-pager",children:Q("td",{colSpan:String(xa(e,t)),children:[x("span",{children:a.label}),Q("span",{"data-ui":"group-pager-actions",children:[a.previousHref&&x("a",{href:a.previousHref,"aria-label":e.labels?.previousPage??"Previous page",children:"\u2039"}),a.nextHref&&x("a",{href:a.nextHref,"aria-label":e.labels?.nextPage??"Next page",children:"\u203A"})]})]})}):null,ka=(e,t,a,l)=>Q(wa,{children:[x("tr",{"data-ui":"group-row","data-group":a.id,"data-depth":String(l),children:Q("th",{"data-ui":"group-cell",colSpan:String(xa(e,t)),scope:"rowgroup",children:[x("span",{"data-ui":"group-indent",style:`--kv-group-depth: ${l}`,"aria-hidden":"true"}),a.href?x("a",{"data-ui":"group-link",href:a.href,children:a.label}):x("span",{"data-ui":"group-link",children:a.label}),a.count!==void 0&&x("span",{"data-ui":"group-count",children:String(a.count)})]})}),be(a.rows??[],e.id,g=>Ta(e,t,g)),be(a.children??[],g=>g.id,g=>ka(e,t,g,l+1)),Xn(e,t,a.pager)]}),Ee=e=>{let t=Kn(e),a=e.groups??[],g=e.rows.length>0||a.length>0?x("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:Q("table",{"data-ui":"table","aria-label":e.caption?null:e.title??null,children:[!!e.caption&&x("caption",{"data-ui":"table-caption",children:e.caption}),x("thead",{children:Q("tr",{children:[Nn(e),be(t,u=>u.key,u=>qn(u,e.labels))]})}),x("tbody",{children:a.length>0?be(a,u=>u.id,u=>ka(e,t,u,0)):be(e.rows,e.id,u=>Ta(e,t,u))})]})}):x(ne,{title:e.emptyTitle??"No records",message:e.emptyMessage??"There is nothing to show yet.",actions:e.emptyActions});return e.title?x(et,{title:e.title,actions:e.actions,padding:"none",body:g}):g};import{Fragment as xd,jsx as vd,jsxs as Sd}from"/_ket/view/jsx-runtime.js";var Ra=["list-page","list-page-context","list-page-header","list-page-heading","list-page-title-row","list-page-eyebrow","list-page-title","list-page-actions","list-page-tools","list-page-toolbar","list-page-controls","list-page-status","list-page-body","list-page-footer"];import{jsx as Rd,jsxs as Cd}from"/_ket/view/jsx-runtime.js";var Ca=["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-actions","record-page-meta","record-page-controller","record-page-navigation","record-page-layout","record-page-body","record-page-aside"];var La=["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-actions","form-page-meta","form-page-controller","form-page-navigation","form-page-layout","form-page-body","form-page-aside"];import{jsx as Id,jsxs as Ad}from"/_ket/view/jsx-runtime.js";var Pa=["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-actions","dashboard-page-meta","dashboard-page-body"];var Ma=["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-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 Gd,jsxs as _d}from"/_ket/view/jsx-runtime.js";var Ea=["pipeline","pipeline-step","pipeline-arrow","pipeline-step-label","pipeline-step-value","pipeline-step-node"];import{each as jd}from"/_ket/view/index.js";import{jsx as nc,jsxs as ic}from"/_ket/view/jsx-runtime.js";var Fa=["record-form","form-errors","form-grid","form-actions"];import{each as mc}from"/_ket/view/index.js";import{jsx as pc,jsxs as hc}from"/_ket/view/jsx-runtime.js";var Oa=["reorder-list","reorder-list-value","reorder-list-rows","reorder-list-row","reorder-list-content","reorder-list-controls"];var Ha={actions:Tt,feedback:Rt,fields:Ft,status:wt,navigation:Ht,progress:Kt,menu:Bt,reorderList:Oa,popover:qt,tooltip:Nt,dialog:Jt,toast:Xt,spinner:zt,skeleton:Ut,lightbox:Gt,relationSelect:Vt,searchFilter:_t,ketTable:Qt,scalarFields:Yt,combobox:jt,dateTime:ea,upload:ta,relationPicker:aa,listControls:na,inlineEdit:ia,resourceList:oa,dataGrid:la,tree:sa,matrix:da,barChart:ca,timeframe:ua,recordDisplay:ma,formattedValues:Wt,recordComposition:ba,activity:pa,media:ha,layouts:Et,shell:Pt,appNavigation:ya,table:va,listChrome:ra,listPage:Ra,formPage:La,recordPage:Ca,dashboardPage:Pa,boardPage:Ma,modal:Ct,pipeline:Ea,form:Fa},Un=[...new Set(Object.values(Ha).flat())].sort(),Vn=Object.freeze(Object.fromEntries(Object.entries(Ha).map(([e,t])=>[e,[...t]])));import{signal as M}from"/_ket/view/index.js";import{jsx as _n}from"/_ket/view/jsx-runtime.js";var Xe="record";var Gn=/^[a-z][a-z0-9_]*(?:\.[a-zA-Z][a-zA-Z0-9_]*)+$/u,Da=e=>Gn.test(e),st=(e,t)=>{if(!Da(t.kind))throw new TypeError(`invalid record kind "${t.kind}"`);let a=new URL(String(e),"http://ket.local");return a.searchParams.set(Xe,`${t.kind}:${t.id}`),t.tab?a.searchParams.set("tab",t.tab):a.searchParams.delete("tab"),`${a.pathname}${a.search}`};var Ia=e=>{let t=new URL(String(e),"http://ket.local");return t.searchParams.delete(Xe),t.searchParams.delete("tab"),`${t.pathname}${t.search}`},pe=e=>{let t=new URL(String(e),"http://ket.local"),a=t.searchParams.get(Xe)??"",l=a.indexOf(":");if(l<=0||l===a.length-1)return null;let g=a.slice(0,l);return Da(g)?{kind:g,id:a.slice(l+1),tab:t.searchParams.get("tab")}:null},dt=e=>_n("span",{"data-ui":"record-modal-host","data-record-kind":e,hidden:!0});import{jsx as le,jsxs as Aa}from"/_ket/view/jsx-runtime.js";var he=e=>Aa("form",{"data-ui":"record-form",method:"post",action:"","data-record-kind":e.kind,id:e.id,"data-record-dirty":e.dirty===!0?"true":null,children:[e.command?le("input",{type:"hidden",name:ye,value:e.command,autocomplete:"off"}):"",Object.entries(e.hidden??{}).map(([t,a])=>le("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),le("div",{"data-ui":"form-grid",children:e.fields.map(t=>oe(t))}),e.body,e.actions?.length?le("div",{"data-ui":"form-actions",children:z({actions:e.actions})}):""]});var ze=e=>le("span",{"data-record-dialog":e.dialog,"data-record-param-id":e.id??null,children:e.children}),ct=e=>Aa("form",{"data-ui":"record-form","data-layout":"actions",method:"post",action:"","data-record-kind":e.kind,children:[le("input",{type:"hidden",name:ye,value:e.command,autocomplete:"off"}),Object.entries(e.hidden??{}).map(([t,a])=>le("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),e.children]});import{Fragment as Fe,jsx as Rf,jsxs as Oe}from"/_ket/view/jsx-runtime.js";var Ka=e=>{let t=e??{};return(Array.isArray(t.errors)?t.errors:Array.isArray(t.issues)?t.issues:[]).map(l=>{let g=l??{},u=Array.isArray(g.path)?g.path.join("."):null;return{field:typeof g.field=="string"?g.field:u,code:String(g.code??"invalid"),message:typeof g.message=="string"?g.message:null,params:g.params&&typeof g.params=="object"?g.params:{}}})},Ua=async(e,t,a={})=>{let l=new URL(e,"https://record.invalid");if(l.origin!=="https://record.invalid"||!e.startsWith("/")||e.startsWith("//"))throw new Error("Record commands require a same-origin route");let g=await fetch(l.pathname+l.search,{method:"POST",credentials:"same-origin",headers:{"content-type":"application/json",...a.idempotencyKey?{"idempotency-key":a.idempotencyKey}:{}},body:JSON.stringify(t),signal:a.signal}),u=await g.json().catch(()=>({}));if(!g.ok||u.ok===!1)return{ok:!1,issues:Ka(u.error??u),message:g.status>=500?null:u.error?.message??u.message??null,status:g.status};let D=u.value;return D&&typeof D=="object"&&D.ok===!1?{ok:!1,issues:Ka(D),message:null,status:g.status}:{ok:!0,value:u.value}},Ba=(e,t,a={})=>Ua(`/_ket/fn/${encodeURIComponent(e)}`,t,a),Wn=async(e,t)=>{let a=new URL(e,location.href);if(a.origin!==location.origin)throw new Error("Record context must stay same-origin");let l=await fetch(a.href,{credentials:"same-origin",signal:t,headers:{accept:"application/json"}});return l.ok?{ok:!0,value:await l.json()}:{ok:!1,issues:[],message:null,status:l.status}},Zn=30,Qn=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."}),Ve=(e,t)=>t.messages?.[e]??t.previous?.[e]??t.labels?.[e]??Qn[e]??(/^E_[A-Z_]+$/u.test(e)?Ve("recordModal.saveFailed",t):e),Yn=(e,t)=>{let a=Ve(e,t);return a===e?Ve("recordModal.saveFailed",t):a},ye="__command",qa="data-record-dialog",Na=(e,t={})=>e.replace(/\{([a-zA-Z0-9_]+)\}/gu,(a,l)=>l in t?String(t[l]??""):a),Va=["a[href]","button:not(:disabled)",'input:not(:disabled):not([type="hidden"])',"select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),Ja=e=>[...e.querySelectorAll(Va)].filter(t=>!t.hidden&&t.getAttribute("aria-hidden")!=="true"&&!t.matches('[data-ui="modal-backdrop"]'));var jn=e=>{let t=[],a=e;for(;a&&a!==document.body;){let l=a.parentElement;if(!l)break;for(let g of l.children)g instanceof HTMLElement&&g!==a&&!g.matches("script, style, template")&&(t.push({element:g,inert:g.inert}),g.inert=!0);a=l}return()=>{for(let{element:l,inert:g}of t)l.inert=g}},Xa=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,ei=e=>Object.entries(e.values).some(([t,a])=>a!==e.initialValues[t])||Object.entries(e.checks).some(([t,a])=>a!==e.initialChecks[t]),E=()=>({values:{},checks:{},initialValues:{},initialChecks:{}}),za=(e,t)=>`${e}\0${t}`,Ue="__all:",ut=e=>e.after??"close",ti=400,ai=(e,t=ti)=>{let a,l=()=>{clearTimeout(a),a=void 0};return{set:g=>{if(l(),!g){e(!1);return}a=setTimeout(()=>e(!0),t)},stop:l}},ni='a, button, input, select, textarea, label, summary, details, [data-ui="select-cell"]',ii=e=>{let t=e?.closest("a[href]");return t?t.target&&t.target!=="_self"?null:t.href:e?.closest(ni)?null:e?.closest("[data-row-href]")?.getAttribute("data-row-href")??null},Ga=e=>()=>{let t=M(null),a=M("idle"),l=M(null),g=M(null),u=M([]),D=M(E()),F=M(E()),mt=M(!1),gt=M(!1),ft=ai(i=>gt.set(i)),xe=M(!1),bt=i=>{mt.set(i),ft.set(i),i&&xe.set(!1)},O=M(null),Se=M(0),Y=M({}),q=M(null),$=new Map,tn=(i,d)=>{for($.delete(i),$.set(i,d);$.size>Zn;)$.delete($.keys().next().value)},P=null,He=null,De=!1,We=null,K=null,se=null,Te=null,an=()=>typeof e.labels=="function"?e.labels():e.labels??{},pt=()=>({messages:l()?.messages,previous:Te,labels:an()}),N=(i,d)=>Na(Ve(i,pt()),d),ht=i=>i.message??Na(Yn(i.code,pt()),i.params),yt=i=>[...e.tabs??[],...e.extensionTabs?.(i)??[]].filter(d=>d.visible?.(i)??!0),Ie=(i,d,c="record")=>{let s=()=>c==="dialog"?F():D(),o={kind:e.kind,id:i.id,creating:i.id==="new",tab:i.tab,data:d,t:N,fieldError:b=>{let n=u().find(r=>r.field===b);return n?ht(n):null},draft:(b,n="")=>{let r=s();return r.initialValues[b]??=n,r.values[b]??n},draftChecked:(b,n="1",r=!1)=>{let m=s(),v=za(b,n);return m.initialChecks[v]??=r,m.checks[v]??r},outcome:b=>{let n=q();return n?.command===b?n.value:null},busy:gt(),dialog:O(),href:b=>st(location.href,{kind:e.kind,id:i.id,tab:b}),state:(b,n="")=>Y()[b]??n},h=yt(o);return h.length&&!h.some(b=>b.id===i.tab)&&(o.tab=h[0].id),o},j=async(i,d=!1)=>{He?.abort();let c=new AbortController;He=c;let s=e.cache===!1?void 0:$.get(i);s&&(Te=s.messages??Te,l.set(s),a.set("ready"),d=!0),d||a.set("loading"),g.set(null);try{let o=i==="new",h="route"in e.context?await Wn(e.context.route(i,o),c.signal):await Ba(e.context.fn,e.context.input?e.context.input(i,o):o?{}:{id:i},{signal:c.signal});if(c.signal.aborted)return;if(!h.ok||!h.value){g.set(h.ok?"recordModal.notFound":h.message??"recordModal.loadFailed"),a.set("error");return}Te=h.value.messages??Te,e.cache!==!1&&tn(i,h.value),l.set(h.value),a.set("ready")}catch(o){if(c.signal.aborted||o?.name==="AbortError")return;g.set("recordModal.loadFailed"),a.set("error")}},Ae=()=>P?[...P.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]')]:[],de=()=>Ae()[0]??null,Ze=()=>Ae().at(-1)??null,ce=0,ue=()=>{if(e.fixedHeight||a()!=="ready")return;let i=de()?.querySelector('[data-ui="modal-sheet"][data-height="fixed"]');if(!i)return;if(window.matchMedia("(max-width: 47.9375rem)").matches){i.style.setProperty("height","100dvh","important"),i.style.removeProperty("min-height");return}let d=i.querySelector('[data-ui="tabbed-view"]');if(!d)return;let c=d.querySelector('[data-ui="tab-panel"]'),s=c?.scrollTop??0;i.style.setProperty("height","auto","important"),i.style.setProperty("min-height","0"),d.style.setProperty("height","auto"),ce=Math.max(ce,Math.ceil(i.getBoundingClientRect().height)),d.style.removeProperty("height");let o=getComputedStyle(i).maxHeight;i.style.setProperty("min-height",o==="none"?`${ce}px`:`min(${ce}px, ${o})`),c&&(c.scrollTop=s)},ee=(i,d)=>{if(!i)return;let c=d==="dialog"?F():D(),s={values:{...c.values},checks:{...c.checks},initialValues:{...c.initialValues},initialChecks:{...c.initialChecks}};for(let o of i.querySelectorAll("input[name], select[name], textarea[name]"))if(!(o.disabled||o.name===ye)){if(o instanceof HTMLInputElement){if(o.type==="file"||o.type==="hidden")continue;if(o.type==="checkbox"||o.type==="radio"){let h=za(o.name,o.value);s.initialChecks[h]??=o.defaultChecked,s.checks[h]=o.checked,o.type==="checkbox"?s.values[o.name]=o.checked?o.value:"":o.checked&&(s.values[o.name]=o.value),s.initialValues[o.name]=s.values[o.name]??"";continue}}s.initialValues[o.name]??=o instanceof HTMLSelectElement?[...o.options].find(h=>h.defaultSelected)?.value??o.options[0]?.value??"":o.defaultValue,s.values[o.name]=o.value}d==="dialog"?F.set(s):D.set(s)},Qe=()=>{let i=Ae();ee(i[0]??null,"record"),i.length>1&&ee(i.at(-1)??null,"dialog")},vt=i=>{if(!i)return!0;let d=O()&&i===Ze()?"dialog":"record";ee(i,d);let c=d==="dialog"?F():D(),s=[...i.querySelectorAll('input[type="file"]')].some(o=>!o.disabled&&!!o.files?.length);return!ei(c)&&!s?!0:globalThis.confirm(N("recordModal.unsaved"))},ke=i=>{requestAnimationFrame(()=>{let d=Ae(),c=d[0],s=d.at(-1);if(!s)return;c&&(c.inert=d.length>1);let o=i?.();if(o?.isConnected&&s.contains(o)){o.focus();return}if(s.contains(document.activeElement))return;let h=s.querySelector('[data-ui="modal-sheet"]');(Ja(s).find(n=>!n.matches('[data-ui="modal-close"]'))??h)?.focus()})},G=(i,d,c,s)=>{let o=t(),h=o?.id===i,b=d??(h?o.tab:"");h||(ce=0,We=document.activeElement instanceof HTMLElement?document.activeElement:null,u.set([]),xe.set(!1),D.set(E()),F.set(E()),Y.set({}),q.set(null),O.set(null),K=null,l.set(null),j(i)),t.set({id:i,tab:b});let n=st(location.href,{kind:e.kind,id:i,tab:b||null});c==="push"?(history.replaceState({...history.state??{},__ketScroll:[window.scrollX,window.scrollY]},"",location.href),history.pushState({...history.state??{},__ketRecordModal:e.kind},"",n),De=!0):c==="replace"&&history.replaceState(history.state??{},"",n),P&&!se&&(se=jn(P)),ke(s)},we=i=>{He?.abort(),t.set(null),ce=0,O.set(null),u.set([]),xe.set(!1),D.set(E()),F.set(E()),Y.set({}),q.set(null),a.set("idle"),l.set(null),se?.(),se=null,i==="history"&&De?(De=!1,history.back()):i!=="none"&&(De=!1,history.replaceState(history.state??{},"",Ia(location.href)));let d=We;We=null,K=null,d?.isConnected&&requestAnimationFrame(()=>d.focus())},xt=()=>{if(O()){if(!vt(Ze()))return;let i=K;K=null,O.set(null),F.set(E()),u.set([]),q.set(null),ke(()=>i?.isConnected?i:null);return}vt(de())&&we("history")},nn=async(i,d,c)=>{let s=e.commands?.[i],o=t(),h=l()?.data;if(!s||!o||h===void 0||mt())return;let b=new FormData(d,c instanceof HTMLButtonElement?c:null),n=d.closest('[data-ui="modal-layer"][data-client-modal="true"]'),r=O()&&n===Ze()?"dialog":"record";ee(n,r);let m=Ie(o,h,r);if(s.confirm){let v=s.confirm(m);if(v&&!globalThis.confirm(v))return}bt(!0),u.set([]);try{let v={};for(let[f,I]of Object.entries(s.upload??{})){let A=b.get(f);if(!(A instanceof File)||A.size===0)continue;let me=new FormData;for(let[Ye,ln]of Object.entries(I(b,m)))me.append(Ye,ln);me.append("file",A,A.name);let Re=await fetch("/files",{method:"POST",credentials:"same-origin",body:me}),X=await Re.json().catch(()=>null);if(!Re.ok||!X?.id){u.set([{field:null,code:"recordModal.uploadFailed",message:typeof X?.message=="string"?X.message:null,params:{}}]);return}v[f]={id:String(X.id),name:typeof X.name=="string"?X.name:null}}let k=(f,I)=>Ba(f,I,{idempotencyKey:Xa()}),y=s.route?await Ua(s.route,s.input(b,m,v),{idempotencyKey:Xa()}):await k(s.fn,s.input(b,m,v));for(let f of y.ok?s.also??[]:[])if(!(f.when&&!f.when(m))&&(y=await k(f.fn,f.input(b,m,v)),!y.ok))break;if(!y.ok){q.set(null),u.set(y.issues.length?y.issues.map(f=>({...f,field:f.field&&s.issueField?s.issueField(f.field,b,m):f.field})):[{field:null,code:y.message??"recordModal.saveFailed",message:y.message,params:{}}]);return}if(s.preview){q.set({command:i,value:y.value}),Se.set(Se()+1);return}r==="dialog"?F.set(E()):D.set(E()),q.set(ut(s)==="stay"?{command:i,value:y.value}:null),d.reset();let J=y.value,_=ut(s)==="open"?s.created?.(y.value)??(J&&typeof J=="object"&&J.id!=null?String(J.id):null):null;$.delete(o.id),_&&$.delete(_);let te=()=>{document.dispatchEvent(new CustomEvent("ket:records-changed",{detail:{kind:e.kind,ids:[_??o.id]}}))};if(s.navigate){let f=new URL(s.navigate(y.value,m),location.href);if(f.origin!==location.origin)throw new Error("Record navigation must stay same-origin");we("none"),location.assign(f.href);return}let H=ut(s);if(H!=="close"&&xe.set(!0),H==="open"){O.set(null),F.set(E()),_?G(_,s.openTab??null,"replace"):we("history"),te();return}if(te(),H==="close")we("history");else if(H==="reload"){let f=K;K=null,O.set(null),F.set(E()),await j(o.id),ke(()=>f?.isConnected?f:null)}else if(H==="refresh")await j(o.id,!0);else if(H==="stay")Se.set(Se()+1);else if("tab"in H)K=null,O.set(null),F.set(E()),G(o.id,H.tab,"replace"),await j(o.id);else{let f=H.dialog?null:K;K=H.dialog&&c instanceof HTMLElement?c:null,O.set(H.dialog?{name:H.dialog,params:{}}:null),F.set(E()),await j(o.id,!0),ke(()=>f?.isConnected?f:null)}}catch{u.set([{field:null,code:"recordModal.saveFailed",message:null,params:{}}])}finally{bt(!1)}},St=i=>{let d=u().filter(o=>!o.field),c=u().filter(o=>o.field&&!P?.querySelector(`[name="${CSS.escape(o.field)}"]`)),s=[...d,...c];return s.length?Z({title:i.t("recordModal.errorTitle"),message:s.map(ht).join(" \xB7 "),tone:"danger"}):xe()?Z({title:i.t("recordModal.savedTitle"),message:i.t("recordModal.saved"),tone:"positive"}):""},rn=()=>{let i=t();if(!i)return"";if(a()==="error")return Oe(Fe,{children:[Z({title:N("recordModal.errorTitle"),message:N(g()??"recordModal.loadFailed"),tone:"danger"}),R({label:N("recordModal.retry"),variant:"secondary",name:"intent",value:"retry"})]});let d=l()?.data;if(a()!=="ready"||d===void 0)return ge({label:N("recordModal.loading")});let c=Ie(i,d),s=yt(c),o=s.find(r=>r.id===c.tab),h=e.header?.(c)??"",b=St(c),n=o?o.view(c):e.body?.(c)??"";return s.length?nt({id:`record-view-${e.kind.replaceAll(".","-")}`,label:e.title(c),items:s.map(r=>({id:r.id,label:r.label(c),href:c.href(r.id),active:r.id===c.tab})),context:h!==""||b!==""?Oe(Fe,{children:[h,b]}):void 0,body:n}):Oe(Fe,{children:[h,b,n]})},on=()=>{let i=t(),d=O(),c=l()?.data;if(!i||!d||c===void 0)return"";let s=e.dialogs?.[d.name];if(!s)return"";let o=Ie(i,c,"dialog");return ie({id:`record-dialog-${e.kind.replaceAll(".","-")}-${d.name}`,mode:"client",presentation:"dialog",size:s.size??"default",title:s.title(o),actions:s.actions?.(o),closeLabel:N("recordModal.close"),body:Oe(Fe,{children:[St(o),s.view(o)]})})};return{view:()=>{Se();let i=t();if(!i)return dt(e.kind);let d=l()?.data,c=d===void 0?null:Ie(i,d);return Oe(Fe,{children:[dt(e.kind),ie({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??"auto",title:c?e.title(c):N("recordModal.loading"),description:c?e.description?.(c)??null:null,status:c?e.status?.(c):void 0,actions:c?e.actions?.(c):void 0,closeLabel:N("recordModal.close"),body:rn()}),on()]})},mount:({root:i,lifetime:d})=>{P=i,document.addEventListener("click",n=>{if(n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let r=n.target instanceof Element?n.target:null,m=r?.closest('[data-ui="modal-layer"][data-client-modal="true"]');if(m&&P?.contains(m)){if(r?.closest('[data-ui="modal-close"], [data-ui="modal-backdrop"], [data-record-close]')){n.preventDefault(),xt();return}let f=r?.closest("button[data-record-state], a[data-record-state]");if(f){n.preventDefault(),Qe(),Y.set({...Y(),[f.getAttribute("data-record-state")??""]:f.getAttribute("data-record-value")??""});return}let I=r?.closest(`[${qa}]`);if(I){n.preventDefault(),ee(de(),"record");let A=document.activeElement;K=A instanceof HTMLElement&&I.contains(A)?A:I.querySelector(Va),F.set(E());let me={};for(let[Re,X]of Object.entries(I.dataset))Re.startsWith("recordParam")&&X!==void 0&&(me[Re.slice(11).replace(/^./u,Ye=>Ye.toLowerCase())]=X);u.set([]),q.set(null),O.set({name:I.getAttribute(qa)??"",params:me}),ke();return}if(r?.closest('button[name="intent"][value="retry"]')){n.preventDefault();let A=t();A&&j(A.id);return}}let v=ii(r);if(!v)return;let k=new URL(v,location.href);if(k.origin!==location.origin||k.pathname!==location.pathname)return;let y=pe(k);if(!y||y.kind!==e.kind)return;n.preventDefault();let J=t(),_="route"in e.context?e.context.query??[]:[],te=new URL(location.href);if(_.some(f=>te.searchParams.get(f)!==k.searchParams.get(f))){ee(de(),"record");for(let f of _){let I=k.searchParams.get(f);I===null?te.searchParams.delete(f):te.searchParams.set(f,I)}history.replaceState(history.state??{},"",te.href),J?.id===y.id&&j(J.id)}if(J?.id===y.id){if((y.tab??"")===J.tab)return;ee(de(),"record"),u.set([]),q.set(null),G(y.id,y.tab??null,"replace",()=>de()?.querySelector('[data-ui="tab"][data-active="true"]')??null);return}G(y.id,y.tab??null,"push")},{signal:d,capture:!0}),document.addEventListener("keydown",n=>{if(n.defaultPrevented||n.key!=="Enter"&&n.key!==" ")return;let r=n.target instanceof Element?n.target:null;if(!r?.matches('[data-row-href][tabindex="0"]'))return;let m=r.getAttribute("data-row-href"),v=m?new URL(m,location.href):null;if(!v||v.origin!==location.origin||v.pathname!==location.pathname)return;let k=pe(v);!k||k.kind!==e.kind||(n.preventDefault(),G(k.id,k.tab??null,"push"))},{signal:d,capture:!0}),document.addEventListener("submit",n=>{let r=n.target instanceof HTMLFormElement?n.target:null;if(!r||!P?.contains(r))return;n.preventDefault();let m=n.submitter??null,v=(m instanceof HTMLButtonElement&&m.name===ye?m.value:null)??String(new FormData(r).get(ye)??"");nn(v,r,m)},{signal:d}),document.addEventListener("keydown",n=>{if(!t())return;let r=P?.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]'),m=r?.[r.length-1];if(!m)return;if(n.key==="Escape"){n.preventDefault(),xt();return}if(n.key!=="Tab")return;let v=Ja(m);if(!v.length){n.preventDefault(),m.querySelector('[data-ui="modal-sheet"]')?.focus();return}let k=v[0],y=v.at(-1);n.shiftKey&&(document.activeElement===k||!m.contains(document.activeElement))?(n.preventDefault(),y.focus()):!n.shiftKey&&(document.activeElement===y||!m.contains(document.activeElement))&&(n.preventDefault(),k.focus())},{signal:d}),document.addEventListener("change",n=>{let r=n.target instanceof Element?n.target:null;if(!r||!P?.contains(r))return;if(r instanceof HTMLInputElement&&r.type==="checkbox"&&r.form){let v=r.form;if(v.querySelector(`input[type="checkbox"][name^="${Ue}"]`)){if(r.name.startsWith(Ue)){let k=r.name.slice(Ue.length);for(let y of v.querySelectorAll('input[type="checkbox"]'))!y.disabled&&!y.name.startsWith(Ue)&&y.name.startsWith(k)&&(y.checked=r.checked)}Qe();return}}let m=r.getAttribute("data-record-state")??(["relation-native","reorder-list-value"].includes(r.getAttribute("data-ui")??"")?r.getAttribute("name"):null);if((r instanceof HTMLSelectElement||r instanceof HTMLInputElement)&&m){Qe(),Y.set({...Y(),[m]:r.value});return}r instanceof HTMLInputElement&&r.type==="file"&&r.hasAttribute("data-record-submit")&&r.files?.length&&r.form?.requestSubmit()},{signal:d});let c=n=>{let m=(n.target instanceof Element?n.target:null)?.closest("form[data-record-dropzone]")??null;return m&&P?.contains(m)?m:null};document.addEventListener("dragover",n=>{let r=c(n);r&&(n.preventDefault(),r.dataset.drag="1")},{signal:d}),document.addEventListener("dragleave",n=>{let r=c(n);if(!r)return;let m=n.relatedTarget;m instanceof Node&&r.contains(m)||delete r.dataset.drag},{signal:d}),document.addEventListener("drop",n=>{let r=c(n);if(!r)return;n.preventDefault(),delete r.dataset.drag;let m=n.dataTransfer?.files,v=r.querySelector('input[type="file"]');if(!v||!m?.length)return;let k=new DataTransfer;k.items.add(m[0]),v.files=k.files,r.requestSubmit()},{signal:d});let s="ket-island, div[data-ket-island]",o=n=>n instanceof Element&&(n.matches(s)||n.querySelector(s)!==null),h=new MutationObserver(n=>{ue();for(let r of n){for(let m of r.removedNodes)o(m)&&document.dispatchEvent(new CustomEvent("ket:islands-detach",{detail:{root:m}}));for(let m of r.addedNodes)o(m)&&m.isConnected&&document.dispatchEvent(new CustomEvent("ket:islands-attach",{detail:{root:m}}))}});h.observe(P,{childList:!0,subtree:!0,characterData:!0}),d.addEventListener("abort",()=>h.disconnect()),window.addEventListener("resize",ue,{signal:d}),P.addEventListener("load",ue,{capture:!0,signal:d}),P.addEventListener("toggle",ue,{capture:!0,signal:d}),document.fonts?.ready.then(()=>{d.aborted||ue()}),ue(),document.addEventListener("ket:records-changed",n=>{let r=n.detail;if(r?.kind===e.kind)if(!Array.isArray(r.ids)||!r.ids.length)$.clear();else for(let m of r.ids)$.delete(String(m))},{signal:d}),document.addEventListener("ket:popstate",n=>{let r=pe(location.href),m=r?.kind===e.kind;!m&&!t()||(n.preventDefault(),m&&r?G(r.id,r.tab??null,"none"):we("none"))},{signal:d}),document.addEventListener("ket:navigation-complete",()=>{let n=pe(location.href);n?.kind===e.kind&&!t()&&G(n.id,n.tab??null,"none")},{signal:d});let b=pe(location.href);b?.kind===e.kind&&G(b.id,b.tab??null,"none"),d.addEventListener("abort",()=>{He?.abort(),ft.stop(),se?.(),se=null,P=null})}}};var _a={vi:{"recordModal.close":"\u0110\xF3ng","recordModal.loading":"\u0110ang t\u1EA3i\u2026","recordModal.loadFailed":"Kh\xF4ng \u0111\u1ECDc \u0111\u01B0\u1EE3c d\u1EEF li\u1EC7u. H\xE3y th\u1EED l\u1EA1i.","recordModal.notFound":"M\u1EE5c n\xE0y kh\xF4ng c\xF2n t\u1ED3n t\u1EA1i ho\u1EB7c b\u1EA1n kh\xF4ng c\xF3 quy\u1EC1n xem.","recordModal.retry":"Th\u1EED l\u1EA1i","recordModal.errorTitle":"Ch\u01B0a l\u01B0u \u0111\u01B0\u1EE3c","recordModal.saveFailed":"Thao t\xE1c kh\xF4ng th\xE0nh c\xF4ng. H\xE3y th\u1EED l\u1EA1i.","recordModal.savedTitle":"\u0110\xE3 l\u01B0u","recordModal.saved":"Thay \u0111\u1ED5i \u0111\xE3 \u0111\u01B0\u1EE3c ghi nh\u1EADn.","recordModal.unsaved":"B\u1ECF c\xE1c thay \u0111\u1ED5i ch\u01B0a l\u01B0u?","recordModal.uploadFailed":"Kh\xF4ng t\u1EA3i \u0111\u01B0\u1EE3c t\u1EC7p l\xEAn. H\xE3y th\u1EED l\u1EA1i."},en:{"recordModal.close":"Close","recordModal.loading":"Loading\u2026","recordModal.loadFailed":"The record could not be read. Try again.","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 changes have been saved.","recordModal.unsaved":"Discard unsaved changes?","recordModal.uploadFailed":"The file could not be uploaded. Try again."}};import{jsx as S}from"/_ket/view/jsx-runtime.js";var Wa=()=>typeof document<"u"&&document.documentElement.lang==="en"?"en":"vi",p=(e,t)=>e.t(`sale_backend.${t}`),_e=e=>!e.data.record.orderAuthority||e.data.record.orderAuthority==="local",Za=e=>_e(e)&&["draft","sent"].includes(String(e.data.record.state))&&!e.data.record.locked,V=(e,t)=>(e.data.choices[t]??[]).map(a=>({value:String(a.id),label:String(a.name)})),C=(e,t,a,l={})=>({id:`sale-${e.dialog?.name??"record"}-${t}`,name:t,label:p(e,`field.${a}`),...l,value:e.draft(t,String(l.value??"")),error:e.fieldError(t),disabled:e.busy}),ve=(e,t,a,l=!1)=>S(ct,{kind:e.kind,command:t,children:S(R,{type:"submit",label:p(e,`action.${a}`),variant:l?"primary":"secondary",disabled:e.busy})}),ja=(e,t,a)=>S(ze,{dialog:t,children:S(R,{label:p(e,`action.${a}`),disabled:e.busy})}),Ge=(e,t)=>Object.fromEntries(t.flatMap(a=>{let l=String(e.get(a)??"");return l?[[a,l]]:[]})),en=e=>e.data.record.lines.find(t=>t.id===e.dialog?.params.id),Qa=(e,t=!1)=>{let a=t?en(e):void 0;return[...t?[]:[C(e,"productId","product",{type:"select",options:V(e,"variants"),required:!0}),C(e,"productUomId","uom",{type:"select",options:V(e,"units"),required:!0})],C(e,"productUomQty","quantity",{type:"decimal",value:String(a?.productUomQty??"1"),required:!0}),C(e,"priceUnit","priceUnit",{type:"decimal",value:String(a?.priceUnit??"")}),C(e,"discount","discount",{type:"decimal",value:String(a?.discount??"0")}),C(e,"taxId","tax",{type:"select",options:[{value:"",label:"\u2014"},...V(e,"taxes")],value:String(a?.taxId??"")})]},ri=e=>S(he,{kind:e.kind,command:"create",fields:[C(e,"partnerId","customer",{type:"select",options:V(e,"partners"),required:!0}),C(e,"warehouseId","warehouse",{type:"select",options:V(e,"warehouses"),required:!0}),C(e,"clientOrderRef","clientOrderRef"),C(e,"pricelistId","pricelist",{type:"select",options:[{value:"",label:"\u2014"},...V(e,"pricelists")]}),C(e,"paymentTermId","paymentTerm",{type:"select",options:[{value:"",label:"\u2014"},...V(e,"terms")]}),C(e,"dateOrder","dateOrder",{type:"date"}),C(e,"validityDate","validityDate",{type:"date"}),C(e,"notes","notes",{type:"textarea",span:"full"})],actions:[S(R,{type:"submit",label:p(e,"action.create"),variant:"primary",disabled:e.busy})]}),Ya=e=>S(Ke,{items:[S(Je,{items:["partnerName","clientOrderRef","dateOrder","validityDate","amountTotal","notes"].map(t=>({id:t,label:p(e,`field.${t==="partnerName"?"customer":t}`),value:String(e.data.record.display?.[t]??e.data.record[t]??"\u2014")||"\u2014"}))}),S(Pe,{title:p(e,"modal.lines"),actions:Za(e)&&e.data.permissions.addLine?ja(e,"addLine","addLine"):null,body:S(Ee,{rows:e.data.record.lines,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:p(e,"field.product"),cell:t=>String(t.name)},{key:"productUomQty",label:p(e,"field.quantity"),cell:t=>String(t.productUomQty)},{key:"qtyDelivered",label:p(e,"field.delivered"),cell:t=>String(t.qtyDelivered)},{key:"priceUnit",label:p(e,"field.priceUnit"),cell:t=>String(t.priceUnitLabel??t.priceUnit)},{key:"edit",label:p(e,"modal.edit"),cell:t=>Za(e)&&e.data.permissions.updateLine?S(ze,{dialog:"editLine",id:String(t.id),children:S(R,{label:p(e,"modal.edit"),variant:"tertiary"})}):""}]})})]}),oi={kind:"sale.order",size:"large",labels:()=>_a[Wa()],context:{route:(e,t)=>`/admin/sales/record/${t?"new":encodeURIComponent(e)}/context?lang=${Wa()}`,query:["company","branch"]},title:e=>e.creating?p(e,"action.create"):String(e.data.record.name),status:e=>e.creating?null:S(Ce,{label:p(e,`state.${e.data.record.state}`)}),body:e=>e.creating?ri(e):Ya(e),tabs:[{id:"info",label:e=>p(e,"modal.info"),visible:e=>!e.creating,view:Ya},{id:"deliveries",label:e=>p(e,"modal.deliveries"),visible:e=>!e.creating,view:e=>S(Ee,{rows:e.data.record.pickings,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:p(e,"field.name"),cell:t=>String(t.name)},{key:"state",label:p(e,"field.state"),cell:t=>String(t.state)}]})},{id:"invoices",label:e=>p(e,"modal.invoices"),visible:e=>!e.creating,view:e=>S(Pe,{title:p(e,"modal.invoices"),actions:_e(e)&&e.data.record.state==="sale"&&e.data.permissions.createInvoice?ja(e,"bill","createInvoice"):null,body:S(Ee,{rows:e.data.record.invoices,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:p(e,"field.name"),cell:t=>String(t.name)},{key:"state",label:p(e,"field.state"),cell:t=>String(t.state)}]})})},{id:"actions",label:e=>p(e,"modal.more"),visible:e=>!e.creating&&_e(e),view:e=>S(Ke,{items:[...e.data.record.state==="cancel"&&e.data.permissions.resetOrder?[ve(e,"reset","reset")]:[],...e.data.record.state==="sale"&&e.data.permissions.lockOrder?[ve(e,e.data.record.locked?"unlock":"lock",e.data.record.locked?"unlock":"lock")]:[],...e.data.record.state!=="cancel"&&!e.data.record.locked&&!e.data.record.moves?.some(t=>t.state==="done")&&e.data.permissions.cancelOrder?[ve(e,"cancel","cancel")]:[]]})}],actions:e=>e.creating||!_e(e)?void 0:S(z,{actions:[...e.data.record.state==="draft"&&e.data.permissions.sendQuotation?[ve(e,"send","send")]:[],...["draft","sent"].includes(String(e.data.record.state))&&e.data.permissions.confirmOrder?[ve(e,"confirm","confirm",!0)]:[],...e.data.record.state==="sale"&&e.data.permissions.syncDeliveries?[ve(e,"sync","sync")]:[]]}),dialogs:{addLine:{title:e=>p(e,"action.addLine"),view:e=>S(he,{kind:e.kind,command:"addLine",fields:Qa(e),actions:[S(R,{type:"submit",label:p(e,"action.addLine"),variant:"primary",disabled:e.busy})]})},editLine:{title:e=>p(e,"modal.edit"),view:e=>S(he,{kind:e.kind,fields:Qa(e,!0),actions:[S(R,{type:"submit",name:"__command",value:"updateLine",label:p(e,"action.updateLine"),variant:"primary",disabled:e.busy}),...e.data.permissions.removeLine?[S(R,{type:"submit",name:"__command",value:"removeLine",label:p(e,"action.removeLine"),variant:"destructive",disabled:e.busy})]:[]]})},bill:{title:e=>p(e,"action.createInvoice"),view:e=>S(he,{kind:e.kind,command:"bill",fields:[C(e,"journalId","journal",{type:"select",options:V(e,"journals"),required:!0}),...["revenueAccountId","receivableAccountId","taxAccountId"].map(t=>C(e,t,t.replace("Id",""),{type:"select",options:V(e,"accounts"),required:t!=="taxAccountId"})),C(e,"invoiceDate","invoiceDate",{type:"date"})],actions:[S(R,{type:"submit",label:p(e,"action.createInvoice"),variant:"primary",disabled:e.busy})]})}},commands:{create:{fn:"sale.createOrder",input:(e,t)=>({id:t.data.draftId,...Ge(e,["partnerId","warehouseId","pricelistId","paymentTermId","clientOrderRef","dateOrder","validityDate","notes"])}),after:"open"},addLine:{fn:"sale.addLine",input:(e,t)=>({id:t.data.draftId,orderId:t.id,...Ge(e,["productId","productUomId","productUomQty","priceUnit","discount","taxId"])}),after:"reload"},updateLine:{fn:"sale.updateLine",input:(e,t)=>({id:t.dialog?.params.id,expectedRevision:Number(t.data.record.revision),...Ge(e,["productUomQty","priceUnit","discount"]),...String(e.get("taxId")??"")!==String(en(t)?.taxId??"")?{taxIds:e.get("taxId")?[String(e.get("taxId"))]:[]}:{}}),after:"reload"},removeLine:{fn:"sale.removeLine",input:(e,t)=>({id:t.dialog?.params.id}),after:"reload",confirm:e=>p(e,"modal.confirmRemove")},send:{fn:"sale.sendQuotation",input:(e,t)=>({id:t.id}),after:"reload"},confirm:{fn:"sale.confirmOrder",input:(e,t)=>({id:t.id,expectedRevision:Number(t.data.record.revision)}),after:"reload"},reset:{fn:"sale.resetOrder",input:(e,t)=>({id:t.id}),after:"reload"},sync:{fn:"sale.syncDeliveries",input:(e,t)=>({id:t.id}),after:"reload"},lock:{fn:"sale.lockOrder",input:(e,t)=>({id:t.id,locked:!0}),after:"reload"},unlock:{fn:"sale.lockOrder",input:(e,t)=>({id:t.id,locked:!1}),after:"reload"},cancel:{fn:"sale.cancelOrder",input:(e,t)=>({id:t.id,expectedRevision:Number(t.data.record.revision)}),after:"reload",confirm:e=>p(e,"modal.confirmCancel")},bill:{fn:"sale.createInvoice",input:(e,t)=>({id:t.data.draftId,orderId:t.id,...Ge(e,["journalId","revenueAccountId","receivableAccountId","taxAccountId","invoiceDate"])}),after:"reload"}}},Hf=Ga(oi);export{Hf as saleOrderModal,oi as saleOrderModalDefinition};
2
+ import{each as mn}from"/_ket/view/index.js";import{Fragment as Ct,jsx as ie,jsxs as fn}from"/_ket/view/jsx-runtime.js";var Rt=["action","action-leading","action-label","action-spinner","action-group"],gn=e=>fn(Ct,{children:[e.loading===!0&&ie("span",{"data-ui":"action-spinner","aria-hidden":"true"}),e.loading!==!0&&e.leading!==void 0&&ie("span",{"data-ui":"action-leading","aria-hidden":"true",children:e.leading}),!e.iconOnly&&ie("span",{"data-ui":"action-label",children:e.label})]}),R=e=>ie("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,"aria-expanded":e.expanded===void 0?null:String(e.expanded),"aria-controls":e.controls??null,children:ie(gn,{...e})});var G=e=>ie("div",{"data-ui":"action-group",role:"group","aria-label":e.label??null,children:mn(e.actions,(t,a)=>a,t=>ie(Ct,{children:t}))});import{jsx as bn,jsxs as bi}from"/_ket/view/jsx-runtime.js";var Lt=["badge","tag","tag-remove","count-badge","avatar","code","text","media-label","media-label-image","media-label-copy"];var Pe=e=>bn("span",{"data-ui":"badge","data-pattern":"badge","data-tone":e.tone??"neutral","data-value":e.value??"",children:e.label});import{each as pn}from"/_ket/view/index.js";import{Fragment as Je,jsx as T,jsxs as Y}from"/_ket/view/jsx-runtime.js";var Pt=["notice","notice-mark","notice-copy","notice-title","notice-message","notice-actions","empty","empty-mark","empty-title","empty-message","empty-actions","loading","loading-label"],hn={info:()=>Y(Je,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"M12 16v-4"}),T("path",{d:"M12 8h.01"})]}),positive:()=>Y(Je,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"m9 12 2 2 4-4"})]}),warning:()=>Y(Je,{children:[T("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"}),T("path",{d:"M12 9v4"}),T("path",{d:"M12 17h.01"})]}),danger:()=>Y(Je,{children:[T("circle",{cx:"12",cy:"12",r:"10"}),T("path",{d:"M12 8v4"}),T("path",{d:"M12 16h.01"})]})},j=e=>Y("aside",{"data-ui":"notice","data-pattern":"notice","data-tone":e.tone??"info",role:e.tone==="danger"?"alert":"status",children:[T("span",{"data-ui":"notice-mark","aria-hidden":"true",children:T("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:hn[e.tone??"info"]()})}),Y("div",{"data-ui":"notice-copy",children:[T("p",{"data-ui":"notice-title",children:e.title}),T("p",{"data-ui":"notice-message",children:e.message})]}),e.actions!==void 0&&T("div",{"data-ui":"notice-actions",children:e.actions})]}),re=e=>Y("div",{"data-ui":"empty",role:"status",children:[T("span",{"data-ui":"empty-mark","aria-hidden":"true",children:"\u25C7"}),T("p",{"data-ui":"empty-title",children:e.title}),T("p",{"data-ui":"empty-message",children:e.message}),e.actions!==void 0&&T("div",{"data-ui":"empty-actions",children:e.actions})]}),pe=e=>Y("div",{"data-ui":"loading",role:"status","aria-live":"polite",children:[T("span",{"data-ui":"loading-label",children:e.label}),T("div",{"data-ui":"skeleton","aria-hidden":"true",children:pn(Array.from({length:Math.max(1,e.lines??3)}),(t,a)=>a,(t,a)=>T("span",{"data-ui":"skeleton-line","data-line":String(a+1)}))})]});import{each as ot}from"/_ket/view/index.js";import{each as kn}from"/_ket/view/index.js";import{jsx as N,jsxs as Me}from"/_ket/view/jsx-runtime.js";var Mt=["modal-layer","modal-backdrop","modal-sheet","modal-head","modal-heading","modal-title-row","modal-title","modal-description","modal-close","modal-body","modal-actions"],oe=e=>{let t=e.mode==="client",a=e.mode==="embedded";return Me("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?N("button",{"data-ui":"modal-backdrop",type:"button","aria-hidden":"true",tabIndex:-1,children:N("span",{children:e.closeLabel})}):N("a",{"data-ui":"modal-backdrop",href:e.closeHref??"#","aria-label":e.closeLabel,children:N("span",{children:e.closeLabel})}),Me("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?`--kv-modal-fixed-height: ${e.fixedHeight}`:"",...e.dialogSemantics==="parent"?{}:{role:"dialog","aria-modal":a?"false":"true"},"aria-labelledby":e.dialogSemantics==="parent"?null:`${e.id}-title`,"aria-describedby":e.dialogSemantics!=="parent"&&e.description?`${e.id}-description`:null,tabindex:a?null:"-1",children:[Me("header",{"data-ui":"modal-head",children:[Me("div",{"data-ui":"modal-heading",children:[Me("div",{"data-ui":"modal-title-row",children:[N("h2",{"data-ui":"modal-title",id:`${e.id}-title`,children:e.title}),e.status!==void 0&&e.status]}),!!e.description&&N("p",{"data-ui":"modal-description",id:`${e.id}-description`,children:e.description})]}),t?N("button",{"data-ui":"modal-close",type:"button","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"}):N("a",{"data-ui":"modal-close",href:e.closeHref??"#","aria-label":e.closeLabel,title:e.closeLabel,children:"\xD7"})]}),N("div",{"data-ui":"modal-body",children:e.body}),e.actions!==void 0&&N("footer",{"data-ui":"modal-actions",children:e.actions})]})]})};import{Fragment as Ri,jsx as ki,jsxs as wi}from"/_ket/view/jsx-runtime.js";import{Fragment as Oi,jsx as Ei,jsxs as Fi}from"/_ket/view/jsx-runtime.js";var Ft=["app-shell","app-shell-topbar","app-topbar","app-location-bar","app-location-context","app-brand","app-topbar-brand","app-topbar-context","global-search-trigger","global-search-trigger-label","global-search-shortcut","global-search-dialog","global-search","global-search-input","global-search-submit","app-sidebar","app-main","app-right-rail","page","page-context","page-header","page-heading","page-eyebrow","page-title-row","page-title","page-subline","page-status","page-actions","page-meta","page-body","record-canvas","record-content","record-section","record-section-title"];import{Fragment as Ot,jsx as M,jsxs as le}from"/_ket/view/jsx-runtime.js";var Ht=["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"],wn=e=>M(Ot,{children:kn(e.items,(t,a)=>a,t=>typeof t=="string"||typeof t=="number"?M("span",{children:t}):M(Ot,{children:t}))}),Xe=e=>M("div",{"data-ui":"stack","data-pattern":"stack","data-gap":e.gap??"default","data-divided":e.divided===!0?"true":null,children:M(wn,{items:e.items})});var it=e=>le("div",{"data-ui":"surface","data-tone":e.tone??"default","data-padding":e.padding??"default","data-has-heading":e.title?"true":null,children:[e.title&&le("header",{"data-ui":"surface-head",children:[e.description?le("div",{"data-ui":"surface-heading",children:[M("h2",{"data-ui":"surface-title",children:e.title}),M("p",{"data-ui":"surface-description",children:e.description})]}):M("h2",{"data-ui":"surface-title",children:e.title}),e.actions!==void 0&&M("div",{"data-ui":"surface-actions",children:e.actions})]}),e.body]}),rt=e=>le("details",{"data-ui":"disclosure",open:e.open===!0?!0:void 0,children:[M("summary",{"data-ui":"disclosure-summary",children:e.summary}),M("div",{"data-ui":"disclosure-body",children:e.body})]}),Ee=e=>le("section",{"data-ui":"section",children:[le("header",{"data-ui":"section-head",children:[le("div",{children:[!!e.eyebrow&&M("p",{"data-ui":"section-eyebrow",children:e.eyebrow}),M("h2",{"data-ui":"section-title",children:e.title}),!!e.description&&M("p",{"data-ui":"section-description",children:e.description})]}),e.actions!==void 0&&M("div",{"data-ui":"section-actions",children:e.actions})]}),M("div",{"data-ui":"section-body",children:e.body})]});import{each as Rn}from"/_ket/view/index.js";import{Fragment as Cn,jsx as Fe}from"/_ket/view/jsx-runtime.js";var ze=(e,t)=>e.control!==void 0?Fe(Cn,{children:e.control}):e.type==="textarea"?Fe("textarea",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,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"?Fe("select",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,id:e.id,name:e.name,required:e.required===!0,disabled:e.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":t,children:Rn(e.options??[],a=>a.value,a=>Fe("option",{value:a.value,selected:String(e.value??"")===a.value,disabled:a.disabled===!0,children:a.label}))}):Fe("input",{"data-ui":"field-control","data-appearance":e.appearance==="embedded"?"embedded":null,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 w,jsxs as _}from"/_ket/view/jsx-runtime.js";var Dt=["field","field-label","field-required","field-control","field-options","field-option","field-option-input","field-help","field-error"],It=e=>!!e.error||(e.fields?.some(It)??!1),se=e=>{let t=e.help?`${e.id}-help`:null,a=e.error?`${e.id}-error`:null,l=[t,a].filter(Boolean).join(" ")||null,g=_("span",{"data-ui":"field-label",children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]});return e.fields?_("div",{"data-ui":"field","data-kind":"group","data-span":"full","data-invalid":String(!!e.error),children:[w(rt,{summary:e.label,open:e.open||It(e),body:w("div",{"data-ui":"form-grid",children:ot(e.fields.map(u=>({...u,disabled:e.disabled||u.disabled,readOnly:e.readOnly||u.readOnly})),u=>u.id,u=>w(se,{...u}))})}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="checkbox-group"?_("div",{"data-ui":"field","data-kind":"checkbox-group","data-span":e.span??"half","data-invalid":String(!!e.error),children:[_("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),w("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"group","aria-labelledby":`${e.id}-label`,children:ot(e.options??[],u=>u.name??u.value,u=>_("label",{"data-ui":"field-option",children:[w("input",{"data-ui":"field-option-input",type:"checkbox",name:u.name??`${e.name}[]`,value:u.value,checked:u.checked===!0,disabled:e.disabled===!0||u.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":l,autocomplete:"off"}),w("span",{children:u.label})]}))}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):e.type==="radio"?_("div",{"data-ui":"field","data-kind":"radio","data-span":e.span??"half","data-invalid":String(!!e.error),children:[_("span",{"data-ui":"field-label",id:`${e.id}-label`,children:[e.label,e.required&&w("span",{"data-ui":"field-required","aria-hidden":"true",children:" *"})]}),w("div",{"data-ui":"field-options","data-orientation":e.optionsOrientation==="vertical"?"vertical":null,role:"radiogroup","aria-labelledby":`${e.id}-label`,children:ot(e.options??[],u=>u.value,u=>_("label",{"data-ui":"field-option",children:[w("input",{"data-ui":"field-option-input",type:"radio",name:e.name,value:u.value,checked:String(e.value??"")===u.value,required:e.required===!0,disabled:e.disabled===!0||u.disabled===!0,"aria-invalid":e.error?"true":null,"aria-describedby":l,autocomplete:"off"}),w("span",{children:u.label})]}))}),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]}):_("label",{"data-ui":"field","data-kind":e.type??"text","data-label-hidden":e.labelHidden?"true":null,"data-selection-hidden":e.selectionHidden?"true":null,"data-span":e.span??"half","data-invalid":String(!!e.error),for:e.id,children:[e.type==="checkbox"&&ze(e,l),g,e.type!=="checkbox"&&ze(e,l),!!e.help&&w("small",{"data-ui":"field-help",id:t??void 0,children:e.help}),!!e.error&&w("small",{"data-ui":"field-error",id:a??void 0,children:e.error})]})};import{each as Ln}from"/_ket/view/index.js";import{jsx as he,jsxs as st}from"/_ket/view/jsx-runtime.js";var At=["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 $t=e=>st("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&&he("span",{"data-ui":"tab-count",children:String(e.count)})]}),Kt=(e,t)=>`${e}-${t.replace(/[^a-zA-Z0-9_-]+/gu,"-")}-tab`,Bt=e=>st("nav",{"data-ui":"tabs","data-pattern":"tabs","aria-label":e.label,children:[Ln(e.items,t=>t.id,t=>he($t,{...t,elementId:e.id?Kt(e.id,t.id):void 0,controls:e.panelId})),e.extension]}),qt=e=>he("section",{"data-ui":"tab-panel",id:e.id,"aria-labelledby":e.labelledBy,tabindex:"-1",children:e.body}),lt=e=>{let t=`${e.id}-tabs`,a=`${e.id}-panel`,l=e.items.find(g=>g.active===!0);return st("div",{"data-ui":"tabbed-view",children:[e.context!==void 0&&e.context!==""?he("div",{"data-ui":"tabbed-view-context",children:e.context}):"",he(Bt,{id:t,label:e.label,items:e.items,extension:e.extension,panelId:a}),he(qt,{id:a,labelledBy:l?Kt(t,l.id):void 0,body:e.body})]})};import{jsx as er,jsxs as tr}from"/_ket/view/jsx-runtime.js";var Nt=["progress","progress-label","progress-value","progress-track","progress-bar"];import{each as ir}from"/_ket/view/index.js";import{Fragment as sr,jsx as or,jsxs as lr}from"/_ket/view/jsx-runtime.js";var Jt=["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"];import{jsx as ur,jsxs as mr}from"/_ket/view/jsx-runtime.js";var Xt=["popover","popover-trigger","popover-panel","popover-close"];import{jsx as br,jsxs as pr}from"/_ket/view/jsx-runtime.js";var zt=["tooltip","tooltip-trigger","tooltip-content"];import{jsx as Sr}from"/_ket/view/jsx-runtime.js";var Ut=["dialog","confirm-dialog-message"];import{each as wr}from"/_ket/view/index.js";import{jsx as Cr,jsxs as Lr}from"/_ket/view/jsx-runtime.js";var Vt=["toast-region","toast","toast-copy","toast-title","toast-message","toast-actions"];import{jsx as Er}from"/_ket/view/jsx-runtime.js";var Gt=["spinner","visually-hidden"];import{each as Hr}from"/_ket/view/index.js";import{jsx as Ir}from"/_ket/view/jsx-runtime.js";var _t=["skeleton","skeleton-line"];import{each as Kr,effect as Br,signal as qr}from"/_ket/view/index.js";import{jsx as Xr,jsxs as Jr}from"/_ket/view/jsx-runtime.js";var Wt=["relation-select","relation-native","relation-trigger","relation-value","relation-caret","relation-chips","relation-chip","relation-chip-clear","relation-menu","relation-search","relation-options","relation-option","relation-footer","relation-empty","relation-editor","relation-dialog-toolbar","relation-search-field","relation-search-icon","relation-dialog-list","relation-dialog-row","relation-dialog-main","relation-dialog-meta","relation-dialog-actions"];import{each as Vr,signal as Gr}from"/_ket/view/index.js";import{jsx as Wr,jsxs as Zr}from"/_ket/view/jsx-runtime.js";var Zt=["lightbox","lightbox-thumbs","lightbox-thumb","lightbox-empty","lightbox-layer","lightbox-backdrop","lightbox-toolbar","lightbox-counter","lightbox-tool","lightbox-stage","lightbox-image","lightbox-nav","lightbox-caption"];import{each as eo,signal as to}from"/_ket/view/index.js";import{Fragment as ro,jsx as io,jsxs as no}from"/_ket/view/jsx-runtime.js";var Qt=["search-filter","search-filter-bar","search-filter-section-toggle","search-filter-sheet","search-filter-clear","search-filter-icon","search-filter-field","search-filter-input","search-filter-facets","search-filter-facet","search-filter-facet-remove","search-filter-suggestions","search-filter-suggestion","search-filter-toggle","search-filter-columns","search-filter-column","search-filter-column-title","search-filter-empty","search-filter-grouping","search-filter-grouping-head","search-filter-grouping-list","search-filter-grouping-item","search-filter-grouping-order","search-filter-grouping-label","search-filter-grouping-actions","search-filter-grouping-action","search-filter-grouping-clear","search-filter-grouping-add-label","custom-filter","custom-filter-row","custom-filter-add","custom-group-by","favorite-list","favorite-item","favorite-item-default","favorite-item-remove","favorite-save","favorite-save-toggle","favorite-save-row"];import{each as mo,effect as go,signal as fo}from"/_ket/view/index.js";import{jsx as so}from"/_ket/view/jsx-runtime.js";var Yt=["formatted-date","formatted-number","formatted-money"];import{Fragment as vo,jsx as xo,jsxs as So}from"/_ket/view/jsx-runtime.js";var ea=["ket-table","kt-scroll","kt-selection-target","kt-grid","kt-select-col","kt-select-all","kt-col","kt-sort-button","kt-sort-icon","kt-row","kt-cell","kt-person","kt-select-cell","kt-row-select","kt-row-link","kt-group-row","kt-group-cell","kt-group-toggle","kt-group-indent","kt-group-count","kt-group-pager","kt-pager","kt-pager-label","kt-pager-button","kt-select-persisted","kt-caption","kt-tools"];var Ao=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","summary",'[tabindex]:not([tabindex="-1"])'].join(",");var Hn=['[data-ui="timeframe-menu"]','[data-ui="view-settings"]'],$o=Hn.map(e=>`${e}[open]`).join(", ");import{jsx as qo,jsxs as No}from"/_ket/view/jsx-runtime.js";import{jsx as Vo,jsxs as Go}from"/_ket/view/jsx-runtime.js";var ta=["switch-control","switch-track"];import{each as Zo}from"/_ket/view/index.js";import{Fragment as tl,jsx as jo,jsxs as el}from"/_ket/view/jsx-runtime.js";var aa=["combobox","combobox-input-row","combobox-toggle","combobox-listbox","combobox-option","combobox-empty","tag-picker"];import{Fragment as ul,jsx as dl,jsxs as cl}from"/_ket/view/jsx-runtime.js";var na=["date-picker","date-range","date-inputs","date-control-row","date-tools","date-range-error","date-calendar","date-calendar-head","date-calendar-title","date-calendar-body","date-field-control","date-range-preset","date-boundary","date-calendar-months","date-month","date-month-title","date-grid","date-weekday","date-cell","date-day","date-calendar-footer","date-calendar-status"];import{jsx as bl,jsxs as pl}from"/_ket/view/jsx-runtime.js";var ia=["file-upload","drop-zone","upload-status"];import{jsx as xl}from"/_ket/view/jsx-runtime.js";var ra=["relation-picker"];import{each as kl}from"/_ket/view/index.js";import{jsx as Ll,jsxs as Pl}from"/_ket/view/jsx-runtime.js";var oa=["search-bar","filter-bar","applied-filters","applied-filter","saved-views","saved-view","view-settings","view-settings-options"];import{jsx as Ol,jsxs as Hl}from"/_ket/view/jsx-runtime.js";var la=["inline-edit","inline-edit-value","inline-edit-form","inline-edit-actions"];import{each as Vl}from"/_ket/view/index.js";import{each as Kl}from"/_ket/view/index.js";import{Fragment as Xl,jsx as Nl,jsxs as Jl}from"/_ket/view/jsx-runtime.js";var sa=["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 Zl,jsxs as Ql}from"/_ket/view/jsx-runtime.js";var da=["resource-list","resource-list-item","resource-list-select","resource-list-link"];import{each as es}from"/_ket/view/index.js";import{jsx as as,jsxs as ns}from"/_ket/view/jsx-runtime.js";var ca=["data-grid-scroll","data-grid","data-grid-cap","data-grid-cell"];import{each as os}from"/_ket/view/index.js";import{jsx as ss,jsxs as ds}from"/_ket/view/jsx-runtime.js";var ua=["tree","tree-item","tree-link","tree-grid","tree-grid-row"];import{each as ms}from"/_ket/view/index.js";import{jsx as fs,jsxs as bs}from"/_ket/view/jsx-runtime.js";var ma=["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 ys}from"/_ket/view/index.js";import{jsx as xs,jsxs as Ss}from"/_ket/view/jsx-runtime.js";var ga=["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 ws}from"/_ket/view/index.js";import{jsx as Cs,jsxs as Ls}from"/_ket/view/jsx-runtime.js";var fa=["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 Kn}from"/_ket/view/index.js";import{jsx as Ve,jsxs as Bn}from"/_ket/view/jsx-runtime.js";var ba=["description-list","key-value","key-value-label","key-value-value","person","person-body","avatar-group","status"],pa=e=>Bn("div",{"data-ui":"key-value",children:[Ve("dt",{"data-ui":"key-value-label",children:e.label}),Ve("dd",{"data-ui":"key-value-value",children:e.value??e.emptyLabel??"\u2014"})]}),Ge=e=>Ve("dl",{"data-ui":"description-list","aria-label":e.label,"data-columns":String(e.columns??2),"data-layout":e.layout==="strip"?"strip":null,children:Kn(e.items,t=>t.id,t=>Ve(pa,{...t}))});import{each as Ds}from"/_ket/view/index.js";import{jsx as Bs,jsxs as qs}from"/_ket/view/jsx-runtime.js";var ya=["record-summary","record-summary-main","record-actions","record-rail"];import{each as Xs}from"/_ket/view/index.js";import{jsx as Gs,jsxs as _s}from"/_ket/view/jsx-runtime.js";var va=["activity-timeline","activity-item","activity-marker","audit-log","audit-item"];import{each as Qs}from"/_ket/view/index.js";import{jsx as ed,jsxs as td}from"/_ket/view/jsx-runtime.js";var xa=["attachments","attachment","media-gallery","media-item"];import{each as id}from"/_ket/view/index.js";import{Fragment as sd,jsx as od,jsxs as ld}from"/_ket/view/jsx-runtime.js";var Sa=["app-navigation","navigation-trigger","navigation-toggle","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 ye}from"/_ket/view/index.js";import{Fragment as La,jsx as x,jsxs as ee}from"/_ket/view/jsx-runtime.js";var Ta=["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"],Nn=e=>e.shownColumns??e.columns.filter(t=>t.hidden!==!0).map(t=>t.key),Jn=e=>{let t=new Set(Nn(e));return e.columns.filter(a=>t.has(a.key))},ka=(e,t)=>t.length+(e.selection?1:0),Xn=(e,t)=>e.sort?.direction?e.sort.direction==="ascending"?t?.sortedAscending??"Sorted ascending":t?.sortedDescending??"Sorted descending":null,zn=(e,t)=>x("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?ee("a",{"data-ui":"sort-link",href:e.sort.href,"aria-label":e.sort.label??e.label,children:[x("span",{children:e.label}),!!e.sort.direction&&x("span",{"data-ui":"sort-icon","aria-hidden":"true",title:Xn(e,t)??void 0,children:e.sort.direction==="ascending"?"\u2191":"\u2193"})]}):e.label}),Un=e=>e.selection?x("th",{"data-ui":"select-col",scope:"col",children:x("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,wa=(e,t)=>e.selected?.(t)===!0?!0:e.selection?.selectedIds?.includes(e.id(t))===!0,Vn=(e,t,a)=>ee(La,{children:[e.selection&&x("td",{"data-ui":"select-cell",children:x("input",{"data-ui":"row-select",type:"checkbox",name:e.selection.name??"ids",form:e.selection.form,value:e.id(a),checked:wa(e,a),"aria-label":e.labels?.selectRow?.(a,e.id(a))??`Select row ${e.id(a)}`,disabled:e.selection.disabled===!0})}),ye(t,l=>l.key,l=>x("td",{"data-ui":"cell","data-col":l.key,"data-linked":e.rowHref&&l===t[0]?"true":null,"data-align":l.align??"start","data-kind":l.kind??"text","data-priority":l.priority??"secondary","data-label":e.responsive==="stack"?l.label:null,children:e.rowHref&&l===t[0]?x("a",{"data-ui":"row-link",href:e.rowHref(a),children:l.cell(a)}):l.cell(a)}))]}),Ra=(e,t,a)=>x("tr",{"data-ui":"row","data-row":e.id(a),"data-selected":wa(e,a)?"true":null,children:Vn(e,t,a)}),Gn=(e,t,a)=>a?x("tr",{"data-ui":"group-pager",children:ee("td",{colSpan:String(ka(e,t)),children:[x("span",{children:a.label}),ee("span",{"data-ui":"group-pager-actions",children:[a.previousHref&&x("a",{href:a.previousHref,"aria-label":e.labels?.previousPage??"Previous page",children:"\u2039"}),a.nextHref&&x("a",{href:a.nextHref,"aria-label":e.labels?.nextPage??"Next page",children:"\u203A"})]})]})}):null,Ca=(e,t,a,l)=>ee(La,{children:[x("tr",{"data-ui":"group-row","data-group":a.id,"data-depth":String(l),children:ee("th",{"data-ui":"group-cell",colSpan:String(ka(e,t)),scope:"rowgroup",children:[x("span",{"data-ui":"group-indent",style:`--kv-group-depth: ${l}`,"aria-hidden":"true"}),a.href?x("a",{"data-ui":"group-link",href:a.href,children:a.label}):x("span",{"data-ui":"group-link",children:a.label}),a.count!==void 0&&x("span",{"data-ui":"group-count",children:String(a.count)})]})}),ye(a.rows??[],e.id,g=>Ra(e,t,g)),ye(a.children??[],g=>g.id,g=>Ca(e,t,g,l+1)),Gn(e,t,a.pager)]}),Oe=e=>{let t=Jn(e),a=e.groups??[],g=e.rows.length>0||a.length>0?x("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:ee("table",{"data-ui":"table","aria-label":e.caption?null:e.title??null,children:[!!e.caption&&x("caption",{"data-ui":"table-caption",children:e.caption}),x("thead",{children:ee("tr",{children:[Un(e),ye(t,u=>u.key,u=>zn(u,e.labels))]})}),x("tbody",{children:a.length>0?ye(a,u=>u.id,u=>Ca(e,t,u,0)):ye(e.rows,e.id,u=>Ra(e,t,u))})]})}):x(re,{title:e.emptyTitle??"No records",message:e.emptyMessage??"There is nothing to show yet.",actions:e.emptyActions});return e.title?x(it,{title:e.title,actions:e.actions,padding:"none",body:g}):g};import{Fragment as wd,jsx as kd,jsxs as Rd}from"/_ket/view/jsx-runtime.js";var Pa=["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-tools","list-page-toolbar","list-page-controls","list-page-status","list-page-body","list-page-footer"];import{jsx as Md,jsxs as Ed}from"/_ket/view/jsx-runtime.js";var Ma=["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-actions","record-page-meta","record-page-controller","record-page-navigation","record-page-layout","record-page-body","record-page-aside"];var Ea=["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-actions","form-page-meta","form-page-controller","form-page-navigation","form-page-layout","form-page-body","form-page-aside"];import{jsx as Bd,jsxs as qd}from"/_ket/view/jsx-runtime.js";var Fa=["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-actions","dashboard-page-meta","dashboard-page-body"];var Oa=["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-actions","board-page-meta","board-page-toolbar","board-page-controls","board-page-body"];import{each as Wd}from"/_ket/view/index.js";import{jsx as Qd,jsxs as Yd}from"/_ket/view/jsx-runtime.js";var Ha=["pipeline","pipeline-step","pipeline-arrow","pipeline-step-label","pipeline-step-value","pipeline-step-node"];import{each as nc}from"/_ket/view/index.js";import{jsx as lc,jsxs as sc}from"/_ket/view/jsx-runtime.js";var Da=["record-form","form-errors","form-grid","form-actions"];import{each as pc}from"/_ket/view/index.js";import{jsx as xc,jsxs as Sc}from"/_ket/view/jsx-runtime.js";var Ia=["reorder-list","reorder-list-value","reorder-list-rows","reorder-list-row","reorder-list-content","reorder-list-controls"];var Aa={actions:Rt,feedback:Pt,fields:Dt,status:Lt,navigation:At,progress:Nt,menu:Jt,reorderList:Ia,popover:Xt,tooltip:zt,dialog:Ut,toast:Vt,spinner:Gt,skeleton:_t,lightbox:Zt,relationSelect:Wt,searchFilter:Qt,ketTable:ea,scalarFields:ta,combobox:aa,dateTime:na,upload:ia,relationPicker:ra,listControls:oa,inlineEdit:la,resourceList:da,dataGrid:ca,tree:ua,matrix:ma,barChart:ga,timeframe:fa,recordDisplay:ba,formattedValues:Yt,recordComposition:ya,activity:va,media:xa,layouts:Ht,shell:Ft,appNavigation:Sa,table:Ta,listChrome:sa,listPage:Pa,formPage:Ea,recordPage:Ma,dashboardPage:Fa,boardPage:Oa,modal:Mt,pipeline:Ha,form:Da},Wn=[...new Set(Object.values(Aa).flat())].sort(),Zn=Object.freeze(Object.fromEntries(Object.entries(Aa).map(([e,t])=>[e,[...t]])));import{signal as O}from"/_ket/view/index.js";import{jsx as Yn}from"/_ket/view/jsx-runtime.js";var _e="record";var He="recordDialog";var Qn=/^[a-z][a-z0-9_]*(?:\.[a-zA-Z][a-zA-Z0-9_]*)+$/u,$a=e=>Qn.test(e),De=(e,t)=>{if(!$a(t.kind))throw new TypeError(`invalid record kind "${t.kind}"`);let a=new URL(String(e),"http://ket.local");return a.searchParams.set(_e,`${t.kind}:${t.id}`),t.tab?a.searchParams.set("tab",t.tab):a.searchParams.delete("tab"),t.dialog?a.searchParams.set(He,t.dialog):a.searchParams.delete(He),`${a.pathname}${a.search}`};var Ka=e=>{let t=new URL(String(e),"http://ket.local");return t.searchParams.delete(_e),t.searchParams.delete("tab"),t.searchParams.delete(He),`${t.pathname}${t.search}`},ve=e=>{let t=new URL(String(e),"http://ket.local"),a=t.searchParams.get(_e)??"",l=a.indexOf(":");if(l<=0||l===a.length-1)return null;let g=a.slice(0,l);return $a(g)?{kind:g,id:a.slice(l+1),tab:t.searchParams.get("tab"),...t.searchParams.get(He)?{dialog:t.searchParams.get(He)}:{}}:null},mt=e=>Yn("span",{"data-ui":"record-modal-host","data-record-kind":e,hidden:!0});import{jsx as de,jsxs as Ba}from"/_ket/view/jsx-runtime.js";var xe=e=>Ba("form",{"data-ui":"record-form",method:"post",action:"","data-record-kind":e.kind,"data-record-dropzone":e.dropzone?"":null,id:e.id,"data-record-dirty":e.dirty===!0?"true":null,children:[e.command?de("input",{type:"hidden",name:Se,value:e.command,autocomplete:"off"}):"",Object.entries(e.hidden??{}).map(([t,a])=>de("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),e.fields.length?de("div",{"data-ui":"form-grid",children:e.fields.map(t=>se(t))}):null,e.body,e.actions?.length?de("div",{"data-ui":"form-actions",children:G({actions:e.actions})}):""]});var We=e=>de("span",{"data-record-dialog":e.dialog,"data-record-param-id":e.id??null,children:e.children});var gt=e=>Ba("form",{"data-ui":"record-form","data-layout":"actions",method:"post",action:"","data-record-kind":e.kind,children:[de("input",{type:"hidden",name:Se,value:e.command,autocomplete:"off"}),Object.entries(e.hidden??{}).map(([t,a])=>de("input",{type:"hidden",name:t,value:a,autocomplete:"off"})),e.children]});import{Fragment as Ie,jsx as Ef,jsxs as Ae}from"/_ket/view/jsx-runtime.js";var Na=e=>{let t=e??{};return(Array.isArray(t.errors)?t.errors:Array.isArray(t.issues)?t.issues:[]).map(l=>{let g=l??{},u=Array.isArray(g.path)?g.path.join("."):null;return{field:typeof g.field=="string"?g.field:u,code:String(g.code??"invalid"),message:typeof g.message=="string"?g.message:null,params:g.params&&typeof g.params=="object"?g.params:{}}})},Wa=async(e,t,a={})=>{let l=new URL(e,"https://record.invalid");if(l.origin!=="https://record.invalid"||!e.startsWith("/")||e.startsWith("//"))throw new Error("Record commands require a same-origin route");let g=await fetch(l.pathname+l.search,{method:"POST",credentials:"same-origin",headers:{"content-type":"application/json",...a.idempotencyKey?{"idempotency-key":a.idempotencyKey}:{}},body:JSON.stringify(t),signal:a.signal}),u=await g.json().catch(()=>({}));if(!g.ok||u.ok===!1)return{ok:!1,issues:Na(u.error??u),message:g.status>=500?null:u.error?.message??u.message??null,status:g.status};let P=u.value;return P&&typeof P=="object"&&P.ok===!1?{ok:!1,issues:Na(P),message:null,status:g.status}:{ok:!0,value:u.value}},Ja=(e,t,a={})=>Wa(`/_ket/fn/${encodeURIComponent(e)}`,t,a),jn=async(e,t)=>{let a=new URL(e,location.href);if(a.origin!==location.origin)throw new Error("Record context must stay same-origin");let l=await fetch(a.href,{credentials:"same-origin",signal:t,headers:{accept:"application/json"}});return l.ok?{ok:!0,value:await l.json()}:{ok:!1,issues:[],message:null,status:l.status}},ei=30,ti=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."}),Qe=(e,t)=>t.messages?.[e]??t.previous?.[e]??t.labels?.[e]??ti[e]??(/^E_[A-Z_]+$/u.test(e)?Qe("recordModal.saveFailed",t):e),ai=(e,t)=>{let a=Qe(e,t);return a===e?Qe("recordModal.saveFailed",t):a},Se="__command",Xa="data-record-dialog",za=(e,t={})=>e.replace(/\{([a-zA-Z0-9_]+)\}/gu,(a,l)=>l in t?String(t[l]??""):a),Za=["a[href]","button:not(:disabled)",'input:not(:disabled):not([type="hidden"])',"select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),Ua=e=>[...e.querySelectorAll(Za)].filter(t=>!t.hidden&&t.getAttribute("aria-hidden")!=="true"&&!t.matches('[data-ui="modal-backdrop"]'));var ni=e=>{let t=[],a=e;for(;a&&a!==document.body;){let l=a.parentElement;if(!l)break;for(let g of l.children)g instanceof HTMLElement&&g!==a&&!g.matches("script, style, template")&&(t.push({element:g,inert:g.inert}),g.inert=!0);a=l}return()=>{for(let{element:l,inert:g}of t)l.inert=g}},Va=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,ii=e=>Object.entries(e.values).some(([t,a])=>a!==e.initialValues[t])||Object.entries(e.checks).some(([t,a])=>a!==e.initialChecks[t]),Ga=(e,t)=>{let a=l=>Object.fromEntries(Object.entries(l).filter(([g])=>!t.includes(g)));return{values:a(e.values),checks:a(e.checks),initialValues:a(e.initialValues),initialChecks:a(e.initialChecks)}},H=()=>({values:{},checks:{},initialValues:{},initialChecks:{}}),_a=(e,t)=>`${e}\0${t}`,Ze="__all:",ft=e=>e.after??"close",ri=400,oi=(e,t=ri)=>{let a,l=()=>{clearTimeout(a),a=void 0};return{set:g=>{if(l(),!g){e(!1);return}a=setTimeout(()=>e(!0),t)},stop:l}},li='a, button, input, select, textarea, label, summary, details, [data-ui="select-cell"]',si=e=>{let t=e?.closest("a[href]");return t?t.target&&t.target!=="_self"?null:t.href:e?.closest(li)?null:e?.closest("[data-row-href]")?.getAttribute("data-row-href")??null},Qa=e=>()=>{let t=O(null),a=O("idle"),l=O(null),g=O(null),u=O([]),P=O(H()),E=O(H()),bt=O(!1),pt=O(!1),ht=oi(r=>pt.set(r)),ce=O(!1),yt=r=>{bt.set(r),ht.set(r),r&&ce.set(!1)},C=O(null),ke=O(0),we=O({}),A=O({}),J=O(null),B=new Map,on=(r,d)=>{for(B.delete(r),B.set(r,d);B.size>ei;)B.delete(B.keys().next().value)},F=null,$e=null,Ke=!1,et=null,q=null,ue=null,Re=null,ln=()=>typeof e.labels=="function"?e.labels():e.labels??{},vt=()=>({messages:l()?.messages,previous:Re,labels:ln()}),X=(r,d)=>za(Qe(r,vt()),d),xt=r=>r.message??za(ai(r.code,vt()),r.params),St=r=>[...e.tabs??[],...e.extensionTabs?.(r)??[]].filter(d=>d.visible?.(r)??!0),Be=(r,d,c="record")=>{let s=()=>c==="dialog"?E():P(),o={kind:e.kind,id:r.id,creating:r.id==="new",tab:r.tab,data:d,t:X,fieldError:f=>{let n=u().find(i=>i.field===f);return n?xt(n):null},draft:(f,n="")=>{let i=s();return i.initialValues[f]??=n,i.values[f]??n},recordDraft:(f,n="")=>P().values[f]??n,draftChecked:(f,n="1",i=!1)=>{let m=s(),p=_a(f,n);return m.initialChecks[p]??=i,m.checks[p]??i},outcome:f=>{let n=J();return n?.command===f?n.value:null},busy:pt(),dialog:C(),href:f=>De(location.href,{kind:e.kind,id:r.id,tab:f}),state:(f,n="")=>(c==="dialog"?A()[f]:void 0)??we()[f]??n},v=St(o);return v.length&&!v.some(f=>f.id===r.tab)&&(o.tab=v[0].id),o},Ce=null,te=async(r,d=!1)=>{$e?.abort();let c=new AbortController;$e=c;let s=e.cache===!1?void 0:B.get(r);s&&(Re=s.messages??Re,l.set(s),a.set("ready"),d=!0),d||a.set("loading"),g.set(null);try{let o=r==="new",v="route"in e.context?await jn(e.context.route(r,o),c.signal):await Ja(e.context.fn,e.context.input?e.context.input(r,o):o?{}:{id:r},{signal:c.signal});if(c.signal.aborted)return;if(!v.ok||!v.value){g.set(v.ok?"recordModal.notFound":v.message??"recordModal.loadFailed"),a.set("error");return}Re=v.value.messages??Re,e.cache!==!1&&on(r,v.value),l.set(v.value),a.set("ready"),Ce&&e.dialogs?.[Ce]&&(C.set({name:Ce,params:{}}),be()),Ce=null}catch(o){if(c.signal.aborted||o?.name==="AbortError")return;g.set("recordModal.loadFailed"),a.set("error")}},qe=()=>F?[...F.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]')]:[],me=()=>qe()[0]??null,tt=()=>qe().at(-1)??null,ge=0,fe=()=>{if(e.fixedHeight||a()!=="ready")return;let r=me()?.querySelector('[data-ui="modal-sheet"][data-height="fixed"]');if(!r)return;if(window.matchMedia("(max-width: 47.9375rem)").matches){r.style.setProperty("height","100dvh","important"),r.style.removeProperty("min-height");return}let d=r.querySelector('[data-ui="tabbed-view"]');if(!d)return;let c=d.querySelector('[data-ui="tab-panel"]'),s=c?.scrollTop??0;r.style.setProperty("height","auto","important"),r.style.setProperty("min-height","0"),d.style.setProperty("height","auto"),ge=Math.max(ge,Math.ceil(r.getBoundingClientRect().height)),d.style.removeProperty("height");let o=getComputedStyle(r).maxHeight;r.style.setProperty("min-height",o==="none"?`${ge}px`:`min(${ge}px, ${o})`),c&&(c.scrollTop=s)},ae=(r,d)=>{if(!r)return;let c=d==="dialog"?E():P(),s={values:{...c.values},checks:{...c.checks},initialValues:{...c.initialValues},initialChecks:{...c.initialChecks}};for(let o of r.querySelectorAll("input[name], select[name], textarea[name]"))if(!(o.disabled||o.name===Se)){if(o instanceof HTMLInputElement){if(o.type==="file"||o.type==="hidden")continue;if(o.type==="checkbox"||o.type==="radio"){let v=_a(o.name,o.value);s.initialChecks[v]??=o.defaultChecked,s.checks[v]=o.checked,o.type==="checkbox"?s.values[o.name]=o.checked?o.value:"":o.checked&&(s.values[o.name]=o.value),s.initialValues[o.name]=s.values[o.name]??"";continue}}s.initialValues[o.name]??=o instanceof HTMLSelectElement?[...o.options].find(v=>v.defaultSelected)?.value??o.options[0]?.value??"":o.defaultValue,s.values[o.name]=o.value}d==="dialog"?E.set(s):P.set(s)},Ne=()=>{let r=qe();ae(r[0]??null,"record"),r.length>1&&ae(r.at(-1)??null,"dialog")},Tt=r=>{if(!r)return!0;let d=C()&&r===tt()?"dialog":"record";ae(r,d);let c=d==="dialog"?E():P(),s=[...r.querySelectorAll('input[type="file"]')].some(o=>!o.disabled&&!!o.files?.length);return!ii(c)&&!s?!0:globalThis.confirm(X("recordModal.unsaved"))},be=r=>{requestAnimationFrame(()=>{let d=qe(),c=d[0],s=d.at(-1);if(!s)return;c&&(c.inert=d.length>1);let o=r?.();if(o?.isConnected&&s.contains(o)){o.focus();return}if(s.contains(document.activeElement))return;let v=s.querySelector('[data-ui="modal-sheet"]');(Ua(s).find(n=>!n.matches('[data-ui="modal-close"]'))??v)?.focus()})},Z=(r,d,c,s,o)=>{let v=t(),f=v?.id===r,n=d??(f?v.tab:"");f||(ge=0,Ce=o??null,et=document.activeElement instanceof HTMLElement?document.activeElement:null,u.set([]),ce.set(!1),P.set(H()),E.set(H()),A.set({}),we.set({}),J.set(null),C.set(null),q=null,l.set(null),te(r)),f&&o&&e.dialogs?.[o]&&(Ne(),E.set(H()),A.set({}),C.set({name:o,params:{}})),t.set({id:r,tab:n});let i=De(location.href,{kind:e.kind,id:r,tab:n||null,dialog:o});c==="push"?(history.replaceState({...history.state??{},__ketScroll:[window.scrollX,window.scrollY]},"",location.href),history.pushState({...history.state??{},__ketRecordModal:e.kind},"",i),Ke=!0):c==="replace"&&history.replaceState(history.state??{},"",i),F&&!ue&&(ue=ni(F)),be(s)},Le=r=>{$e?.abort(),t.set(null),ge=0,C.set(null),u.set([]),ce.set(!1),P.set(H()),E.set(H()),A.set({}),we.set({}),J.set(null),a.set("idle"),l.set(null),ue?.(),ue=null,r==="history"&&Ke?(Ke=!1,history.back()):r!=="none"&&(Ke=!1,history.replaceState(history.state??{},"",Ka(location.href)));let d=et;et=null,q=null,d?.isConnected&&requestAnimationFrame(()=>d.focus())},kt=()=>{if(C()){if(!Tt(tt()))return;let r=q;q=null,C.set(null);let d=t();d&&history.replaceState(history.state??{},"",De(location.href,{kind:e.kind,id:d.id,tab:d.tab})),E.set(H()),A.set({}),u.set([]),J.set(null),be(()=>r?.isConnected?r:null);return}Tt(me())&&Le("history")},sn=async(r,d,c)=>{let s=e.commands?.[r],o=t(),v=l()?.data;if(!s||!o||v===void 0||bt())return;let f=new FormData(d,c instanceof HTMLButtonElement?c:null),n=d.closest('[data-ui="modal-layer"][data-client-modal="true"]'),i=C()&&n===tt()?"dialog":"record";ae(n,i);let m=Be(o,v,i);if(s.confirm){let p=s.confirm(m);if(p&&!globalThis.confirm(p))return}yt(!0),u.set([]);try{let p={};for(let[b,K]of Object.entries(s.upload??{})){let D=f.get(b);if(!(D instanceof File)||D.size===0)continue;let U=new FormData;for(let[at,un]of Object.entries(K(f,m)))U.append(at,un);U.append("file",D,D.name);let V=await fetch("/files",{method:"POST",credentials:"same-origin",body:U}),I=await V.json().catch(()=>null);if(!V.ok||!I?.id){u.set([{field:null,code:"recordModal.uploadFailed",message:typeof I?.message=="string"?I.message:null,params:{}}]);return}p[b]={id:String(I.id),name:typeof I.name=="string"?I.name:null}}let k=(b,K)=>Ja(b,K,{idempotencyKey:Va()}),h=s.route?await Wa(s.route,s.input(f,m,p),{idempotencyKey:Va()}):await k(s.fn,s.input(f,m,p));for(let b of h.ok?s.also??[]:[])if(!(b.when&&!b.when(m))&&(h=await k(b.fn,b.input(f,m,p)),!h.ok))break;if(!h.ok){J.set(null),u.set(h.issues.length?h.issues.map(b=>({...b,field:b.field&&s.issueField?s.issueField(b.field,f,m):b.field})):[{field:null,code:h.message??"recordModal.saveFailed",message:h.message,params:{}}]);return}if(s.preview){J.set({command:r,value:h.value}),ke.set(ke()+1);return}i==="dialog"?(E.set(H()),A.set({})):P.set(H()),s.clearRecordDrafts?.length&&P.set(Ga(P(),s.clearRecordDrafts)),J.set(ft(s)==="stay"?{command:r,value:h.value}:null),d.reset();let z=h.value,Q=ft(s)==="open"?s.created?.(h.value)??(z&&typeof z=="object"&&z.id!=null?String(z.id):null):null;B.delete(o.id),Q&&B.delete(Q);let ne=()=>{document.dispatchEvent(new CustomEvent("ket:records-changed",{detail:{kind:e.kind,ids:[Q??o.id]}}))};if(s.navigate){let b=new URL(s.navigate(h.value,m),location.href);if(b.origin!==location.origin)throw new Error("Record navigation must stay same-origin");Le("none"),location.assign(b.href);return}let $=ft(s);if($!=="close"&&ce.set(!0),$==="open"){C.set(null),E.set(H()),A.set({}),Q?Z(Q,s.openTab??null,"replace"):Le("history"),ne();return}if(ne(),$==="close")Le("history");else if($==="reload"){let b=q;q=null,C.set(null),E.set(H()),A.set({}),history.replaceState(history.state??{},"",De(location.href,{kind:e.kind,id:o.id,tab:o.tab})),await te(o.id),be(()=>b?.isConnected?b:null)}else if($==="refresh")await te(o.id,!0);else if($==="stay")ke.set(ke()+1);else if("tab"in $)q=null,C.set(null),E.set(H()),A.set({}),Z(o.id,$.tab,"replace"),await te(o.id);else{let b=$.dialog?null:q;q=$.dialog&&c instanceof HTMLElement?c:null,C.set($.dialog?{name:$.dialog,params:{}}:null),E.set(H()),A.set({}),await te(o.id,!0),be(()=>b?.isConnected?b:null)}}catch{u.set([{field:null,code:"recordModal.saveFailed",message:null,params:{}}])}finally{yt(!1)}},wt=r=>{let d=u().filter(o=>!o.field),c=u().filter(o=>o.field&&!F?.querySelector(`[name="${CSS.escape(o.field)}"]`)),s=[...d,...c];return s.length?j({title:r.t("recordModal.errorTitle"),message:s.map(xt).join(" \xB7 "),tone:"danger"}):ce()?j({title:r.t("recordModal.savedTitle"),message:r.t("recordModal.saved"),tone:"positive"}):""},dn=()=>{let r=t();if(!r)return"";if(a()==="error")return Ae(Ie,{children:[j({title:X("recordModal.errorTitle"),message:X(g()??"recordModal.loadFailed"),tone:"danger"}),R({label:X("recordModal.retry"),variant:"secondary",name:"intent",value:"retry"})]});let d=l()?.data;if(a()!=="ready"||d===void 0)return pe({label:X("recordModal.loading")});let c=Be(r,d),s=St(c),o=s.find(i=>i.id===c.tab),v=e.header?.(c)??"",f=wt(c),n=o?o.view(c):e.body?.(c)??"";return s.length?lt({id:`record-view-${e.kind.replaceAll(".","-")}`,label:e.title(c),items:s.map(i=>({id:i.id,label:i.label(c),href:c.href(i.id),active:i.id===c.tab})),context:v!==""||f!==""?Ae(Ie,{children:[v,f]}):void 0,body:n}):Ae(Ie,{children:[v,f,n]})},cn=()=>{let r=t(),d=C(),c=l()?.data;if(!r||!d||c===void 0)return"";let s=e.dialogs?.[d.name];if(!s)return"";let o=Be(r,c,"dialog");return oe({id:`record-dialog-${e.kind.replaceAll(".","-")}-${d.name}`,mode:"client",presentation:"dialog",size:s.size??"default",title:s.title(o),description:s.description?.(o),actions:s.actions?.(o),closeLabel:X("recordModal.close"),body:Ae(Ie,{children:[wt(o),s.view(o)]})})};return{view:()=>{ke();let r=t();if(!r)return mt(e.kind);let d=l()?.data,c=d===void 0?null:Be(r,d);return Ae(Ie,{children:[mt(e.kind),oe({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??"auto",title:c?e.title(c):X("recordModal.loading"),description:c?e.description?.(c)??null:null,status:c?e.status?.(c):void 0,actions:c?e.actions?.(c):void 0,closeLabel:X("recordModal.close"),body:dn()}),cn()]})},mount:({root:r,lifetime:d})=>{F=r,document.addEventListener("click",n=>{if(n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let i=n.target instanceof Element?n.target:null,m=i?.closest('[data-ui="modal-layer"][data-client-modal="true"]');if(m&&F?.contains(m)){if(i?.closest('[data-ui="modal-close"], [data-ui="modal-backdrop"], [data-record-close]')){n.preventDefault(),kt();return}let b=i?.closest("button[data-record-state], a[data-record-state], [data-record-state-trigger]");if(b){n.preventDefault(),Ne();let D=b.getAttribute("data-record-reset-fields");if(D){let V=JSON.parse(D);if(Array.isArray(V)&&V.every(I=>typeof I=="string")){let I=C()?E:P;I.set(Ga(I(),V))}}let U=C()?A:we;U.set({...U(),[b.getAttribute("data-record-state-trigger")??b.getAttribute("data-record-state")??""]:b.getAttribute("data-record-value")??""});return}let K=i?.closest(`[${Xa}]`);if(K){n.preventDefault(),ae(me(),"record");let D=document.activeElement;q=D instanceof HTMLElement&&K.contains(D)?D:K.querySelector(Za),E.set(H()),A.set({});let U={};for(let[V,I]of Object.entries(K.dataset))V.startsWith("recordParam")&&I!==void 0&&(U[V.slice(11).replace(/^./u,at=>at.toLowerCase())]=I);u.set([]),J.set(null),ce.set(!1),C.set({name:K.getAttribute(Xa)??"",params:U}),be();return}if(i?.closest('button[name="intent"][value="retry"]')){n.preventDefault();let D=t();D&&te(D.id);return}}let p=si(i);if(!p)return;let k=new URL(p,location.href);if(k.origin!==location.origin||k.pathname!==location.pathname)return;let h=ve(k);if(!h||h.kind!==e.kind)return;n.preventDefault();let z=t(),Q="route"in e.context?e.context.query??[]:[],ne=new URL(location.href);if(Q.some(b=>ne.searchParams.get(b)!==k.searchParams.get(b))){ae(me(),"record");for(let b of Q){let K=k.searchParams.get(b);K===null?ne.searchParams.delete(b):ne.searchParams.set(b,K)}history.replaceState(history.state??{},"",ne.href),z?.id===h.id&&te(z.id)}if(z?.id===h.id){if((h.tab??"")===z.tab&&!h.dialog)return;ae(me(),"record"),u.set([]),J.set(null),Z(h.id,h.tab??null,"replace",()=>me()?.querySelector('[data-ui="tab"][data-active="true"]')??null);return}Z(h.id,h.tab??null,"push",void 0,h.dialog)},{signal:d,capture:!0}),document.addEventListener("keydown",n=>{if(n.defaultPrevented||n.key!=="Enter"&&n.key!==" ")return;let i=n.target instanceof Element?n.target:null;if(!i?.matches('[data-row-href][tabindex="0"]'))return;let m=i.getAttribute("data-row-href"),p=m?new URL(m,location.href):null;if(!p||p.origin!==location.origin||p.pathname!==location.pathname)return;let k=ve(p);!k||k.kind!==e.kind||(n.preventDefault(),Z(k.id,k.tab??null,"push",void 0,k.dialog))},{signal:d,capture:!0}),document.addEventListener("submit",n=>{let i=n.target instanceof HTMLFormElement?n.target:null;if(!i||!F?.contains(i))return;n.preventDefault();let m=n.submitter??null,p=(m instanceof HTMLButtonElement&&m.name===Se?m.value:null)??String(new FormData(i).get(Se)??"");sn(p,i,m)},{signal:d}),document.addEventListener("keydown",n=>{if(!t())return;let i=F?.querySelectorAll('[data-ui="modal-layer"][data-client-modal="true"]'),m=i?.[i.length-1];if(!m)return;if(n.key==="Escape"){n.preventDefault(),kt();return}if(n.key!=="Tab")return;let p=Ua(m);if(!p.length){n.preventDefault(),m.querySelector('[data-ui="modal-sheet"]')?.focus();return}let k=p[0],h=p.at(-1);n.shiftKey&&(document.activeElement===k||!m.contains(document.activeElement))?(n.preventDefault(),h.focus()):!n.shiftKey&&(document.activeElement===h||!m.contains(document.activeElement))&&(n.preventDefault(),k.focus())},{signal:d}),document.addEventListener("change",n=>{let i=n.target instanceof Element?n.target:null;if(!i||!F?.contains(i))return;if(i instanceof HTMLInputElement&&i.type==="checkbox"&&i.form){let p=i.form;if(p.querySelector(`input[type="checkbox"][name^="${Ze}"]`)){if(i.name.startsWith(Ze)){let k=i.name.slice(Ze.length);for(let h of p.querySelectorAll('input[type="checkbox"]'))!h.disabled&&!h.name.startsWith(Ze)&&h.name.startsWith(k)&&(h.checked=i.checked)}Ne();return}}let m=i.getAttribute("data-record-state")??(["relation-native","reorder-list-value"].includes(i.getAttribute("data-ui")??"")?i.getAttribute("name"):null);if((i instanceof HTMLSelectElement||i instanceof HTMLInputElement)&&m){Ne();let p=C()?A:we;p.set({...p(),[m]:i.value});return}i instanceof HTMLInputElement&&i.type==="file"&&(i.hasAttribute("data-record-submit")||i.form?.hasAttribute("data-record-dropzone"))&&i.files?.length&&i.form?.requestSubmit()},{signal:d});let c=n=>{let m=(n.target instanceof Element?n.target:null)?.closest("form[data-record-dropzone]")??null;return m&&F?.contains(m)?m:null};document.addEventListener("dragover",n=>{let i=c(n);i&&(n.preventDefault(),i.dataset.drag="1")},{signal:d}),document.addEventListener("dragleave",n=>{let i=c(n);if(!i)return;let m=n.relatedTarget;m instanceof Node&&i.contains(m)||delete i.dataset.drag},{signal:d}),document.addEventListener("drop",n=>{let i=c(n);if(!i)return;n.preventDefault(),delete i.dataset.drag;let m=n.dataTransfer?.files,p=i.querySelector('input[type="file"]');if(!p||!m?.length)return;let k=new DataTransfer;k.items.add(m[0]),p.files=k.files,i.requestSubmit()},{signal:d});let s="ket-island, div[data-ket-island]",o=n=>n instanceof Element&&(n.matches(s)||n.querySelector(s)!==null),v=new MutationObserver(n=>{fe();for(let i of n){for(let m of i.removedNodes)o(m)&&document.dispatchEvent(new CustomEvent("ket:islands-detach",{detail:{root:m}}));for(let m of i.addedNodes)o(m)&&m.isConnected&&document.dispatchEvent(new CustomEvent("ket:islands-attach",{detail:{root:m}}))}});v.observe(F,{childList:!0,subtree:!0,characterData:!0}),d.addEventListener("abort",()=>v.disconnect()),window.addEventListener("resize",fe,{signal:d}),F.addEventListener("load",fe,{capture:!0,signal:d}),F.addEventListener("toggle",fe,{capture:!0,signal:d}),document.fonts?.ready.then(()=>{d.aborted||fe()}),fe(),document.addEventListener("ket:records-changed",n=>{let i=n.detail;if(i?.kind===e.kind)if(!Array.isArray(i.ids)||!i.ids.length)B.clear();else for(let m of i.ids)B.delete(String(m))},{signal:d}),document.addEventListener("ket:popstate",n=>{let i=ve(location.href),m=i?.kind===e.kind;!m&&!t()||(n.preventDefault(),m&&i?Z(i.id,i.tab??null,"none",void 0,i.dialog):Le("none"))},{signal:d}),document.addEventListener("ket:navigation-complete",()=>{let n=ve(location.href);n?.kind===e.kind&&!t()&&Z(n.id,n.tab??null,"none",void 0,n.dialog)},{signal:d});let f=ve(location.href);f?.kind===e.kind&&Z(f.id,f.tab??null,"none",void 0,f.dialog),d.addEventListener("abort",()=>{$e?.abort(),ht.stop(),ue?.(),ue=null,F=null})}}};var Ya={vi:{"recordModal.close":"\u0110\xF3ng","recordModal.loading":"\u0110ang t\u1EA3i\u2026","recordModal.loadFailed":"Kh\xF4ng \u0111\u1ECDc \u0111\u01B0\u1EE3c d\u1EEF li\u1EC7u. H\xE3y th\u1EED l\u1EA1i.","recordModal.notFound":"M\u1EE5c n\xE0y kh\xF4ng c\xF2n t\u1ED3n t\u1EA1i ho\u1EB7c b\u1EA1n kh\xF4ng c\xF3 quy\u1EC1n xem.","recordModal.retry":"Th\u1EED l\u1EA1i","recordModal.errorTitle":"Ch\u01B0a l\u01B0u \u0111\u01B0\u1EE3c","recordModal.saveFailed":"Thao t\xE1c kh\xF4ng th\xE0nh c\xF4ng. H\xE3y th\u1EED l\u1EA1i.","recordModal.savedTitle":"\u0110\xE3 l\u01B0u","recordModal.saved":"Thay \u0111\u1ED5i \u0111\xE3 \u0111\u01B0\u1EE3c ghi nh\u1EADn.","recordModal.unsaved":"B\u1ECF c\xE1c thay \u0111\u1ED5i ch\u01B0a l\u01B0u?","recordModal.uploadFailed":"Kh\xF4ng t\u1EA3i \u0111\u01B0\u1EE3c t\u1EC7p l\xEAn. H\xE3y th\u1EED l\u1EA1i."},en:{"recordModal.close":"Close","recordModal.loading":"Loading\u2026","recordModal.loadFailed":"The record could not be read. Try again.","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 changes have been saved.","recordModal.unsaved":"Discard unsaved changes?","recordModal.uploadFailed":"The file could not be uploaded. Try again."}};import{jsx as S}from"/_ket/view/jsx-runtime.js";var ja=()=>typeof document<"u"&&document.documentElement.lang==="en"?"en":"vi",y=(e,t)=>e.t(`sale_backend.${t}`),je=e=>!e.data.record.orderAuthority||e.data.record.orderAuthority==="local",en=e=>je(e)&&["draft","sent"].includes(String(e.data.record.state))&&!e.data.record.locked,W=(e,t)=>(e.data.choices[t]??[]).map(a=>({value:String(a.id),label:String(a.name)})),L=(e,t,a,l={})=>({id:`sale-${e.dialog?.name??"record"}-${t}`,name:t,label:y(e,`field.${a}`),...l,value:e.draft(t,String(l.value??"")),error:e.fieldError(t),disabled:e.busy}),Te=(e,t,a,l=!1)=>S(gt,{kind:e.kind,command:t,children:S(R,{type:"submit",label:y(e,`action.${a}`),variant:l?"primary":"secondary",disabled:e.busy})}),nn=(e,t,a)=>S(We,{dialog:t,children:S(R,{label:y(e,`action.${a}`),disabled:e.busy})}),Ye=(e,t)=>Object.fromEntries(t.flatMap(a=>{let l=String(e.get(a)??"");return l?[[a,l]]:[]})),rn=e=>e.data.record.lines.find(t=>t.id===e.dialog?.params.id),tn=(e,t=!1)=>{let a=t?rn(e):void 0;return[...t?[]:[L(e,"productId","product",{type:"select",options:W(e,"variants"),required:!0}),L(e,"productUomId","uom",{type:"select",options:W(e,"units"),required:!0})],L(e,"productUomQty","quantity",{type:"decimal",value:String(a?.productUomQty??"1"),required:!0}),L(e,"priceUnit","priceUnit",{type:"decimal",value:String(a?.priceUnit??"")}),L(e,"discount","discount",{type:"decimal",value:String(a?.discount??"0")}),L(e,"taxId","tax",{type:"select",options:[{value:"",label:"\u2014"},...W(e,"taxes")],value:String(a?.taxId??"")})]},di=e=>S(xe,{kind:e.kind,command:"create",fields:[L(e,"partnerId","customer",{type:"select",options:W(e,"partners"),required:!0}),L(e,"warehouseId","warehouse",{type:"select",options:W(e,"warehouses"),required:!0}),L(e,"clientOrderRef","clientOrderRef"),L(e,"pricelistId","pricelist",{type:"select",options:[{value:"",label:"\u2014"},...W(e,"pricelists")]}),L(e,"paymentTermId","paymentTerm",{type:"select",options:[{value:"",label:"\u2014"},...W(e,"terms")]}),L(e,"dateOrder","dateOrder",{type:"date"}),L(e,"validityDate","validityDate",{type:"date"}),L(e,"notes","notes",{type:"textarea",span:"full"})],actions:[S(R,{type:"submit",label:y(e,"action.create"),variant:"primary",disabled:e.busy})]}),an=e=>S(Xe,{items:[S(Ge,{items:["partnerName","clientOrderRef","dateOrder","validityDate","amountTotal","notes"].map(t=>({id:t,label:y(e,`field.${t==="partnerName"?"customer":t}`),value:String(e.data.record.display?.[t]??e.data.record[t]??"\u2014")||"\u2014"}))}),S(Ee,{title:y(e,"modal.lines"),actions:en(e)&&e.data.permissions.addLine?nn(e,"addLine","addLine"):null,body:S(Oe,{rows:e.data.record.lines,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:y(e,"field.product"),cell:t=>String(t.name)},{key:"productUomQty",label:y(e,"field.quantity"),cell:t=>String(t.productUomQty)},{key:"qtyDelivered",label:y(e,"field.delivered"),cell:t=>String(t.qtyDelivered)},{key:"priceUnit",label:y(e,"field.priceUnit"),cell:t=>String(t.priceUnitLabel??t.priceUnit)},{key:"edit",label:y(e,"modal.edit"),cell:t=>en(e)&&e.data.permissions.updateLine?S(We,{dialog:"editLine",id:String(t.id),children:S(R,{label:y(e,"modal.edit"),variant:"tertiary"})}):""}]})})]}),ci={kind:"sale.order",size:"large",labels:()=>Ya[ja()],context:{route:(e,t)=>`/admin/sales/record/${t?"new":encodeURIComponent(e)}/context?lang=${ja()}`,query:["company","branch"]},title:e=>e.creating?y(e,"action.create"):String(e.data.record.name),status:e=>e.creating?null:S(Pe,{label:y(e,`state.${e.data.record.state}`)}),body:e=>e.creating?di(e):an(e),tabs:[{id:"info",label:e=>y(e,"modal.info"),visible:e=>!e.creating,view:an},{id:"deliveries",label:e=>y(e,"modal.deliveries"),visible:e=>!e.creating,view:e=>S(Oe,{rows:e.data.record.pickings,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:y(e,"field.name"),cell:t=>String(t.name)},{key:"state",label:y(e,"field.state"),cell:t=>String(t.state)}]})},{id:"invoices",label:e=>y(e,"modal.invoices"),visible:e=>!e.creating,view:e=>S(Ee,{title:y(e,"modal.invoices"),actions:je(e)&&e.data.record.state==="sale"&&e.data.permissions.createInvoice?nn(e,"bill","createInvoice"):null,body:S(Oe,{rows:e.data.record.invoices,id:t=>String(t.id),responsive:"scroll",columns:[{key:"name",label:y(e,"field.name"),cell:t=>String(t.name)},{key:"state",label:y(e,"field.state"),cell:t=>String(t.state)}]})})},{id:"actions",label:e=>y(e,"modal.more"),visible:e=>!e.creating&&je(e),view:e=>S(Xe,{items:[...e.data.record.state==="cancel"&&e.data.permissions.resetOrder?[Te(e,"reset","reset")]:[],...e.data.record.state==="sale"&&e.data.permissions.lockOrder?[Te(e,e.data.record.locked?"unlock":"lock",e.data.record.locked?"unlock":"lock")]:[],...e.data.record.state!=="cancel"&&!e.data.record.locked&&!e.data.record.moves?.some(t=>t.state==="done")&&e.data.permissions.cancelOrder?[Te(e,"cancel","cancel")]:[]]})}],actions:e=>e.creating||!je(e)?void 0:S(G,{actions:[...e.data.record.state==="draft"&&e.data.permissions.sendQuotation?[Te(e,"send","send")]:[],...["draft","sent"].includes(String(e.data.record.state))&&e.data.permissions.confirmOrder?[Te(e,"confirm","confirm",!0)]:[],...e.data.record.state==="sale"&&e.data.permissions.syncDeliveries?[Te(e,"sync","sync")]:[]]}),dialogs:{addLine:{title:e=>y(e,"action.addLine"),view:e=>S(xe,{kind:e.kind,command:"addLine",fields:tn(e),actions:[S(R,{type:"submit",label:y(e,"action.addLine"),variant:"primary",disabled:e.busy})]})},editLine:{title:e=>y(e,"modal.edit"),view:e=>S(xe,{kind:e.kind,fields:tn(e,!0),actions:[S(R,{type:"submit",name:"__command",value:"updateLine",label:y(e,"action.updateLine"),variant:"primary",disabled:e.busy}),...e.data.permissions.removeLine?[S(R,{type:"submit",name:"__command",value:"removeLine",label:y(e,"action.removeLine"),variant:"destructive",disabled:e.busy})]:[]]})},bill:{title:e=>y(e,"action.createInvoice"),view:e=>S(xe,{kind:e.kind,command:"bill",fields:[L(e,"journalId","journal",{type:"select",options:W(e,"journals"),required:!0}),...["revenueAccountId","receivableAccountId","taxAccountId"].map(t=>L(e,t,t.replace("Id",""),{type:"select",options:W(e,"accounts"),required:t!=="taxAccountId"})),L(e,"invoiceDate","invoiceDate",{type:"date"})],actions:[S(R,{type:"submit",label:y(e,"action.createInvoice"),variant:"primary",disabled:e.busy})]})}},commands:{create:{fn:"sale.createOrder",input:(e,t)=>({id:t.data.draftId,...Ye(e,["partnerId","warehouseId","pricelistId","paymentTermId","clientOrderRef","dateOrder","validityDate","notes"])}),after:"open"},addLine:{fn:"sale.addLine",input:(e,t)=>({id:t.data.draftId,orderId:t.id,...Ye(e,["productId","productUomId","productUomQty","priceUnit","discount","taxId"])}),after:"reload"},updateLine:{fn:"sale.updateLine",input:(e,t)=>({id:t.dialog?.params.id,expectedRevision:Number(t.data.record.revision),...Ye(e,["productUomQty","priceUnit","discount"]),...String(e.get("taxId")??"")!==String(rn(t)?.taxId??"")?{taxIds:e.get("taxId")?[String(e.get("taxId"))]:[]}:{}}),after:"reload"},removeLine:{fn:"sale.removeLine",input:(e,t)=>({id:t.dialog?.params.id}),after:"reload",confirm:e=>y(e,"modal.confirmRemove")},send:{fn:"sale.sendQuotation",input:(e,t)=>({id:t.id}),after:"reload"},confirm:{fn:"sale.confirmOrder",input:(e,t)=>({id:t.id,expectedRevision:Number(t.data.record.revision)}),after:"reload"},reset:{fn:"sale.resetOrder",input:(e,t)=>({id:t.id}),after:"reload"},sync:{fn:"sale.syncDeliveries",input:(e,t)=>({id:t.id}),after:"reload"},lock:{fn:"sale.lockOrder",input:(e,t)=>({id:t.id,locked:!0}),after:"reload"},unlock:{fn:"sale.lockOrder",input:(e,t)=>({id:t.id,locked:!1}),after:"reload"},cancel:{fn:"sale.cancelOrder",input:(e,t)=>({id:t.id,expectedRevision:Number(t.data.record.revision)}),after:"reload",confirm:e=>y(e,"modal.confirmCancel")},bill:{fn:"sale.createInvoice",input:(e,t)=>({id:t.data.draftId,orderId:t.id,...Ye(e,["journalId","revenueAccountId","receivableAccountId","taxAccountId","invoiceDate"])}),after:"reload"}}},Kf=Qa(ci);export{Kf as saleOrderModal,ci as saleOrderModalDefinition};