@ketvietlab/ketsuite 0.1.22 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/dist/cli.js +9 -3
  2. package/dist/cli.js.map +1 -1
  3. package/dist/demo/crm.d.ts +3 -0
  4. package/dist/demo/crm.d.ts.map +1 -0
  5. package/dist/demo/crm.js +418 -0
  6. package/dist/demo/crm.js.map +1 -0
  7. package/dist/demo/partner.d.ts +8 -0
  8. package/dist/demo/partner.d.ts.map +1 -0
  9. package/dist/demo/partner.js +179 -0
  10. package/dist/demo/partner.js.map +1 -0
  11. package/dist/demo/product.d.ts +25 -0
  12. package/dist/demo/product.d.ts.map +1 -0
  13. package/dist/demo/product.js +579 -0
  14. package/dist/demo/product.js.map +1 -0
  15. package/dist/demo/purchase.d.ts +4 -0
  16. package/dist/demo/purchase.d.ts.map +1 -0
  17. package/dist/demo/purchase.js +58 -0
  18. package/dist/demo/purchase.js.map +1 -0
  19. package/dist/demo/sale.d.ts +4 -0
  20. package/dist/demo/sale.d.ts.map +1 -0
  21. package/dist/demo/sale.js +52 -0
  22. package/dist/demo/sale.js.map +1 -0
  23. package/dist/demo/seed.d.ts +14 -0
  24. package/dist/demo/seed.d.ts.map +1 -0
  25. package/dist/demo/seed.js +88 -0
  26. package/dist/demo/seed.js.map +1 -0
  27. package/dist/demo/stock.d.ts +7 -0
  28. package/dist/demo/stock.d.ts.map +1 -0
  29. package/dist/demo/stock.js +26 -0
  30. package/dist/demo/stock.js.map +1 -0
  31. package/dist/demo/user.d.ts +4 -0
  32. package/dist/demo/user.d.ts.map +1 -0
  33. package/dist/demo/user.js +41 -0
  34. package/dist/demo/user.js.map +1 -0
  35. package/dist/demo/util.d.ts +7 -0
  36. package/dist/demo/util.d.ts.map +1 -0
  37. package/dist/demo/util.js +19 -0
  38. package/dist/demo/util.js.map +1 -0
  39. package/dist/modules/backend/design/client/backend-shell.d.mts +2 -2
  40. package/dist/modules/backend/design/client/backend-shell.d.mts.map +1 -1
  41. package/dist/modules/backend/design/client/backend-shell.mjs +1 -1
  42. package/dist/modules/backend/design/client/backend-shell.mjs.map +3 -3
  43. package/dist/modules/backend/design/forms.css +7 -0
  44. package/dist/modules/backend/screen.d.ts.map +1 -1
  45. package/dist/modules/backend/screen.js +11 -2
  46. package/dist/modules/backend/screen.js.map +1 -1
  47. package/dist/modules/crm/functions/access.d.ts +3 -0
  48. package/dist/modules/crm/functions/access.d.ts.map +1 -0
  49. package/dist/modules/crm/functions/access.js +89 -0
  50. package/dist/modules/crm/functions/access.js.map +1 -0
  51. package/dist/modules/crm/functions/activities.d.ts +3 -0
  52. package/dist/modules/crm/functions/activities.d.ts.map +1 -0
  53. package/dist/modules/crm/functions/activities.js +174 -0
  54. package/dist/modules/crm/functions/activities.js.map +1 -0
  55. package/dist/modules/crm/functions/cases.d.ts +3 -0
  56. package/dist/modules/crm/functions/cases.d.ts.map +1 -0
  57. package/dist/modules/crm/functions/cases.js +585 -0
  58. package/dist/modules/crm/functions/cases.js.map +1 -0
  59. package/dist/modules/crm/functions/configuration.d.ts +3 -0
  60. package/dist/modules/crm/functions/configuration.d.ts.map +1 -0
  61. package/dist/modules/crm/functions/configuration.js +331 -0
  62. package/dist/modules/crm/functions/configuration.js.map +1 -0
  63. package/dist/modules/crm/functions/gamification.d.ts +3 -0
  64. package/dist/modules/crm/functions/gamification.d.ts.map +1 -0
  65. package/dist/modules/crm/functions/gamification.js +58 -0
  66. package/dist/modules/crm/functions/gamification.js.map +1 -0
  67. package/dist/modules/crm/functions/index.d.ts +4 -0
  68. package/dist/modules/crm/functions/index.d.ts.map +1 -0
  69. package/dist/modules/crm/functions/index.js +33 -0
  70. package/dist/modules/crm/functions/index.js.map +1 -0
  71. package/dist/modules/crm/functions/modal-context.d.ts +3 -0
  72. package/dist/modules/crm/functions/modal-context.d.ts.map +1 -0
  73. package/dist/modules/crm/functions/modal-context.js +248 -0
  74. package/dist/modules/crm/functions/modal-context.js.map +1 -0
  75. package/dist/modules/crm/functions/previews.d.ts +3 -0
  76. package/dist/modules/crm/functions/previews.d.ts.map +1 -0
  77. package/dist/modules/crm/functions/previews.js +20 -0
  78. package/dist/modules/crm/functions/previews.js.map +1 -0
  79. package/dist/modules/crm/functions/shared.d.ts +31 -0
  80. package/dist/modules/crm/functions/shared.d.ts.map +1 -0
  81. package/dist/modules/crm/functions/shared.js +194 -0
  82. package/dist/modules/crm/functions/shared.js.map +1 -0
  83. package/dist/modules/crm/index.d.ts +1 -1
  84. package/dist/modules/crm/index.d.ts.map +1 -1
  85. package/dist/modules/crm/index.js +2 -2
  86. package/dist/modules/crm/index.js.map +1 -1
  87. package/dist/modules/crm/messages.d.ts +4 -1
  88. package/dist/modules/crm/messages.d.ts.map +1 -1
  89. package/dist/modules/crm/messages.js +6 -0
  90. package/dist/modules/crm/messages.js.map +1 -1
  91. package/dist/modules/crm/record-modal-labels.d.ts +9 -0
  92. package/dist/modules/crm/record-modal-labels.d.ts.map +1 -0
  93. package/dist/modules/crm/record-modal-labels.js +36 -0
  94. package/dist/modules/crm/record-modal-labels.js.map +1 -0
  95. package/dist/modules/crm/types.d.ts +5 -0
  96. package/dist/modules/crm/types.d.ts.map +1 -1
  97. package/dist/modules/crm/types.js +9 -0
  98. package/dist/modules/crm/types.js.map +1 -1
  99. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts +352 -0
  100. package/dist/modules/crm_backend/client/crm-configuration-modal.d.mts.map +1 -0
  101. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs +2 -0
  102. package/dist/modules/crm_backend/client/crm-configuration-modal.mjs.map +7 -0
  103. package/dist/modules/crm_backend/index.d.ts.map +1 -1
  104. package/dist/modules/crm_backend/index.js +5 -1
  105. package/dist/modules/crm_backend/index.js.map +1 -1
  106. package/dist/modules/crm_backend/islands.d.ts +27 -0
  107. package/dist/modules/crm_backend/islands.d.ts.map +1 -1
  108. package/dist/modules/crm_backend/islands.js +22 -0
  109. package/dist/modules/crm_backend/islands.js.map +1 -1
  110. package/dist/modules/crm_backend/messages.d.ts +30 -0
  111. package/dist/modules/crm_backend/messages.d.ts.map +1 -1
  112. package/dist/modules/crm_backend/messages.js +30 -0
  113. package/dist/modules/crm_backend/messages.js.map +1 -1
  114. package/dist/modules/crm_backend/modal/configuration-modal-view.d.ts +55 -0
  115. package/dist/modules/crm_backend/modal/configuration-modal-view.d.ts.map +1 -0
  116. package/dist/modules/crm_backend/modal/configuration-modal-view.js +601 -0
  117. package/dist/modules/crm_backend/modal/configuration-modal-view.js.map +1 -0
  118. package/dist/modules/crm_backend/routes.d.ts.map +1 -1
  119. package/dist/modules/crm_backend/routes.js +69 -359
  120. package/dist/modules/crm_backend/routes.js.map +1 -1
  121. package/dist/modules/crm_backend/screens/configuration.d.ts +24 -32
  122. package/dist/modules/crm_backend/screens/configuration.d.ts.map +1 -1
  123. package/dist/modules/crm_backend/screens/configuration.js +183 -274
  124. package/dist/modules/crm_backend/screens/configuration.js.map +1 -1
  125. package/dist/modules/crm_backend/screens/index.d.ts +2 -2
  126. package/dist/modules/crm_backend/screens/index.d.ts.map +1 -1
  127. package/dist/modules/crm_backend/screens/index.js +1 -1
  128. package/dist/modules/crm_backend/screens/index.js.map +1 -1
  129. package/dist/modules/product/functions.d.ts +14 -1
  130. package/dist/modules/product/functions.d.ts.map +1 -1
  131. package/dist/modules/product/functions.js +36 -31
  132. package/dist/modules/product/functions.js.map +1 -1
  133. package/dist/modules/product/product-modal-context.d.ts +3 -0
  134. package/dist/modules/product/product-modal-context.d.ts.map +1 -0
  135. package/dist/modules/product/product-modal-context.js +173 -0
  136. package/dist/modules/product/product-modal-context.js.map +1 -0
  137. package/dist/modules/product/product-record-tabs.d.ts +14 -0
  138. package/dist/modules/product/product-record-tabs.d.ts.map +1 -0
  139. package/dist/modules/product/product-record-tabs.js +23 -0
  140. package/dist/modules/product/product-record-tabs.js.map +1 -0
  141. package/dist/modules/product_backend/client/product-modal.d.mts +144 -0
  142. package/dist/modules/product_backend/client/product-modal.d.mts.map +1 -0
  143. package/dist/modules/product_backend/client/product-modal.mjs +2 -0
  144. package/dist/modules/product_backend/client/product-modal.mjs.map +7 -0
  145. package/dist/modules/product_backend/index.d.ts.map +1 -1
  146. package/dist/modules/product_backend/index.js +25 -0
  147. package/dist/modules/product_backend/index.js.map +1 -1
  148. package/dist/modules/product_backend/islands.d.ts +1 -0
  149. package/dist/modules/product_backend/islands.d.ts.map +1 -1
  150. package/dist/modules/product_backend/islands.js +9 -0
  151. package/dist/modules/product_backend/islands.js.map +1 -1
  152. package/dist/modules/product_backend/modal/product-modal-view.d.ts +49 -0
  153. package/dist/modules/product_backend/modal/product-modal-view.d.ts.map +1 -0
  154. package/dist/modules/product_backend/modal/product-modal-view.js +609 -0
  155. package/dist/modules/product_backend/modal/product-modal-view.js.map +1 -0
  156. package/dist/modules/product_backend/routes.d.ts.map +1 -1
  157. package/dist/modules/product_backend/routes.js +44 -330
  158. package/dist/modules/product_backend/routes.js.map +1 -1
  159. package/dist/modules/product_backend/screens/detail.d.ts.map +1 -1
  160. package/dist/modules/product_backend/screens/detail.js +6 -108
  161. package/dist/modules/product_backend/screens/detail.js.map +1 -1
  162. package/dist/modules/product_backend/screens/index.d.ts +0 -1
  163. package/dist/modules/product_backend/screens/index.d.ts.map +1 -1
  164. package/dist/modules/product_backend/screens/index.js +0 -1
  165. package/dist/modules/product_backend/screens/index.js.map +1 -1
  166. package/dist/modules/product_backend/screens/list.d.ts +3 -1
  167. package/dist/modules/product_backend/screens/list.d.ts.map +1 -1
  168. package/dist/modules/product_backend/screens/list.js +6 -5
  169. package/dist/modules/product_backend/screens/list.js.map +1 -1
  170. package/dist/modules/user/authorization.d.ts.map +1 -1
  171. package/dist/modules/user/authorization.js +114 -0
  172. package/dist/modules/user/authorization.js.map +1 -1
  173. package/dist/modules/user/functions.d.ts.map +1 -1
  174. package/dist/modules/user/functions.js +2 -0
  175. package/dist/modules/user/functions.js.map +1 -1
  176. package/dist/modules/user/user-modal-context.d.ts +3 -0
  177. package/dist/modules/user/user-modal-context.d.ts.map +1 -0
  178. package/dist/modules/user/user-modal-context.js +151 -0
  179. package/dist/modules/user/user-modal-context.js.map +1 -0
  180. package/dist/modules/user_backend/client/user-modal.d.mts +72 -0
  181. package/dist/modules/user_backend/client/user-modal.d.mts.map +1 -0
  182. package/dist/modules/user_backend/client/user-modal.mjs +2 -0
  183. package/dist/modules/user_backend/client/user-modal.mjs.map +7 -0
  184. package/dist/modules/user_backend/index.d.ts.map +1 -1
  185. package/dist/modules/user_backend/index.js +9 -0
  186. package/dist/modules/user_backend/index.js.map +1 -1
  187. package/dist/modules/user_backend/islands.d.ts +15 -0
  188. package/dist/modules/user_backend/islands.d.ts.map +1 -0
  189. package/dist/modules/user_backend/islands.js +14 -0
  190. package/dist/modules/user_backend/islands.js.map +1 -0
  191. package/dist/modules/user_backend/messages.d.ts +30 -0
  192. package/dist/modules/user_backend/messages.d.ts.map +1 -1
  193. package/dist/modules/user_backend/messages.js +30 -0
  194. package/dist/modules/user_backend/messages.js.map +1 -1
  195. package/dist/modules/user_backend/modal/user-modal-view.d.ts +26 -0
  196. package/dist/modules/user_backend/modal/user-modal-view.d.ts.map +1 -0
  197. package/dist/modules/user_backend/modal/user-modal-view.js +320 -0
  198. package/dist/modules/user_backend/modal/user-modal-view.js.map +1 -0
  199. package/dist/modules/user_backend/routes.d.ts.map +1 -1
  200. package/dist/modules/user_backend/routes.js +15 -3
  201. package/dist/modules/user_backend/routes.js.map +1 -1
  202. package/dist/permission-catalogue.d.ts.map +1 -1
  203. package/dist/permission-catalogue.js +8 -0
  204. package/dist/permission-catalogue.js.map +1 -1
  205. package/dist/scaffold/index.js +1 -1
  206. package/dist/ui/client/record-modal-form.d.ts +67 -0
  207. package/dist/ui/client/record-modal-form.d.ts.map +1 -0
  208. package/dist/ui/client/record-modal-form.js +45 -0
  209. package/dist/ui/client/record-modal-form.js.map +1 -0
  210. package/dist/ui/client/record-modal.d.ts +103 -6
  211. package/dist/ui/client/record-modal.d.ts.map +1 -1
  212. package/dist/ui/client/record-modal.js +333 -65
  213. package/dist/ui/client/record-modal.js.map +1 -1
  214. package/dist/ui/index.d.ts +2 -1
  215. package/dist/ui/index.d.ts.map +1 -1
  216. package/dist/ui/index.js +2 -1
  217. package/dist/ui/index.js.map +1 -1
  218. package/dist/ui/nav.d.ts +7 -0
  219. package/dist/ui/nav.d.ts.map +1 -1
  220. package/dist/ui/nav.js +1 -1
  221. package/dist/ui/nav.js.map +1 -1
  222. package/dist/ui/record-modal.d.ts +15 -0
  223. package/dist/ui/record-modal.d.ts.map +1 -1
  224. package/dist/ui/record-modal.js +12 -0
  225. package/dist/ui/record-modal.js.map +1 -1
  226. package/dist/ui/table.d.ts.map +1 -1
  227. package/dist/ui/table.js +1 -1
  228. package/dist/ui/table.js.map +1 -1
  229. package/package.json +4 -4
  230. package/dist/modules/crm/functions.d.ts +0 -10
  231. package/dist/modules/crm/functions.d.ts.map +0 -1
  232. package/dist/modules/crm/functions.js +0 -1394
  233. package/dist/modules/crm/functions.js.map +0 -1
  234. package/dist/modules/product_backend/screens/create.d.ts +0 -16
  235. package/dist/modules/product_backend/screens/create.d.ts.map +0 -1
  236. package/dist/modules/product_backend/screens/create.js +0 -86
  237. package/dist/modules/product_backend/screens/create.js.map +0 -1
@@ -0,0 +1,67 @@
1
+ import type { FieldOption, FieldProps } from '@ketvietlab/design-system';
2
+ import type { JSXChild, TemplateResult } from '@ketvietlab/ketjs-view';
3
+ /**
4
+ * The form a record modal's runtime submits. A `command` becomes the hidden
5
+ * `__command` field; without one, the submitting button names it.
6
+ */
7
+ export declare const RecordModalForm: (props: {
8
+ kind: string;
9
+ fields: readonly FieldProps[];
10
+ actions?: readonly JSXChild[];
11
+ command?: string | null;
12
+ /** Lets a button outside this form submit it via the HTML `form` attribute. */
13
+ id?: string;
14
+ }) => TemplateResult;
15
+ /**
16
+ * The control of a select whose choice changes what the rest of the form offers.
17
+ * Use it as a design-system field's `control`; `data-record-state` makes the
18
+ * runtime re-render the view with the new choice.
19
+ */
20
+ export declare const recordStateSelectControl: (props: {
21
+ id: string;
22
+ name: string;
23
+ state: string;
24
+ value: string;
25
+ options: readonly FieldOption[];
26
+ required?: boolean;
27
+ disabled?: boolean;
28
+ invalid?: boolean;
29
+ }) => TemplateResult;
30
+ /**
31
+ * Opens a dialog of the open record. `id` reaches the dialog as `params.id`;
32
+ * without it the dialog opens for a new child (for example a new team member).
33
+ */
34
+ export declare const RecordDialogTrigger: (props: {
35
+ dialog: string;
36
+ id?: string | null;
37
+ children: JSXChild;
38
+ }) => TemplateResult;
39
+ /**
40
+ * A bare form for an action that names no field of its own — generate, remove.
41
+ * `data-layout="actions"` opts the form out of the record-form grid (built for a
42
+ * field/label pair), which would otherwise stretch a lone submit button to fill it.
43
+ */
44
+ export declare const RecordActionForm: (props: {
45
+ kind: string;
46
+ command: string;
47
+ hidden?: Record<string, string>;
48
+ children: JSXChild;
49
+ }) => TemplateResult;
50
+ /**
51
+ * A form with no field or button of its own, submitted only through the HTML
52
+ * `form` attribute on buttons placed elsewhere — a menu whose every item names
53
+ * its own command on itself, so one empty form serves the whole menu.
54
+ */
55
+ export declare const RecordCommandForm: (props: {
56
+ kind: string;
57
+ id: string;
58
+ }) => TemplateResult;
59
+ /**
60
+ * Marks its child as a labeled close control the runtime's own click handler
61
+ * recognizes from anywhere in the record's body — distinct from
62
+ * `data-ui="modal-close"`, the icon-only corner control's own styling hook.
63
+ */
64
+ export declare const RecordCloseTrigger: (props: {
65
+ children: JSXChild;
66
+ }) => TemplateResult;
67
+ //# sourceMappingURL=record-modal-form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-modal-form.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/record-modal-form.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACxE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAGtE;;;GAGG;AACH,eAAO,MAAM,eAAe,UAAW;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,+EAA+E;IAC/E,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ,KAAG,cAaH,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,UAAW;IAC9C,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,SAAS,WAAW,EAAE,CAAA;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,KAAG,cAgBH,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAAW;IACzC,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;CACnB,KAAG,cAIH,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,UAAW;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,QAAQ,EAAE,QAAQ,CAAA;CACnB,KAAG,cAQH,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,UAAW;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,KAAG,cAEvE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,UAAW;IAAE,QAAQ,EAAE,QAAQ,CAAA;CAAE,KAAG,cAElE,CAAA"}
@@ -0,0 +1,45 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@ketvietlab/ketjs-view/jsx-runtime";
2
+ // Record-modal form markup, owned by the kit.
3
+ //
4
+ // A record modal's views are module code; markup belongs to `ketsuite/ui`. These
5
+ // are the pieces a view needs beyond the design system's fields and buttons: the
6
+ // form the runtime submits (optionally naming its command), a select whose choice
7
+ // feeds view state before anything is submitted, and a trigger that opens a dialog
8
+ // of the same record.
9
+ import { ActionGroup, Field } from '@ketvietlab/design-system';
10
+ import { RECORD_COMMAND_FIELD } from './record-modal.js';
11
+ /**
12
+ * The form a record modal's runtime submits. A `command` becomes the hidden
13
+ * `__command` field; without one, the submitting button names it.
14
+ */
15
+ export const RecordModalForm = (props) => (_jsxs("form", { "data-ui": "record-form", method: "post", action: "", "data-record-kind": props.kind, id: props.id, children: [props.command ? (_jsx("input", { type: "hidden", name: RECORD_COMMAND_FIELD, value: props.command, autocomplete: "off" })) : (''), _jsx("div", { "data-ui": "form-grid", children: props.fields.map((item) => Field(item)) }), props.actions?.length ? _jsx("div", { "data-ui": "form-actions", children: ActionGroup({ actions: props.actions }) }) : ''] }));
16
+ /**
17
+ * The control of a select whose choice changes what the rest of the form offers.
18
+ * Use it as a design-system field's `control`; `data-record-state` makes the
19
+ * runtime re-render the view with the new choice.
20
+ */
21
+ export const recordStateSelectControl = (props) => (_jsx("select", { "data-ui": "field-control", "data-record-state": props.state, id: props.id, name: props.name, required: props.required === true, disabled: props.disabled === true, "aria-invalid": props.invalid ? 'true' : null, children: props.options.map((option) => (_jsx("option", { value: option.value, selected: option.value === props.value, children: option.label }))) }));
22
+ /**
23
+ * Opens a dialog of the open record. `id` reaches the dialog as `params.id`;
24
+ * without it the dialog opens for a new child (for example a new team member).
25
+ */
26
+ export const RecordDialogTrigger = (props) => (_jsx("span", { "data-record-dialog": props.dialog, "data-record-param-id": props.id ?? null, children: props.children }));
27
+ /**
28
+ * A bare form for an action that names no field of its own — generate, remove.
29
+ * `data-layout="actions"` opts the form out of the record-form grid (built for a
30
+ * field/label pair), which would otherwise stretch a lone submit button to fill it.
31
+ */
32
+ export const RecordActionForm = (props) => (_jsxs("form", { "data-ui": "record-form", "data-layout": "actions", method: "post", action: "", "data-record-kind": props.kind, children: [_jsx("input", { type: "hidden", name: RECORD_COMMAND_FIELD, value: props.command, autocomplete: "off" }), Object.entries(props.hidden ?? {}).map(([name, value]) => (_jsx("input", { type: "hidden", name: name, value: value, autocomplete: "off" }))), props.children] }));
33
+ /**
34
+ * A form with no field or button of its own, submitted only through the HTML
35
+ * `form` attribute on buttons placed elsewhere — a menu whose every item names
36
+ * its own command on itself, so one empty form serves the whole menu.
37
+ */
38
+ export const RecordCommandForm = (props) => (_jsx("form", { id: props.id, "data-record-kind": props.kind, method: "post", action: "", hidden: true }));
39
+ /**
40
+ * Marks its child as a labeled close control the runtime's own click handler
41
+ * recognizes from anywhere in the record's body — distinct from
42
+ * `data-ui="modal-close"`, the icon-only corner control's own styling hook.
43
+ */
44
+ export const RecordCloseTrigger = (props) => (_jsx("span", { "data-record-close": "true", children: props.children }));
45
+ //# sourceMappingURL=record-modal-form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-modal-form.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/ui/client/record-modal-form.tsx"],"names":[],"mappings":";AAAA,8CAA8C;AAC9C,EAAE;AACF,iFAAiF;AACjF,iFAAiF;AACjF,kFAAkF;AAClF,mFAAmF;AACnF,sBAAsB;AAEtB,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAG9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAoB,CAAA;AAEzD;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAO/B,EAAkB,EAAE,CAAC,CACpB,2BAAc,aAAa,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,EAAE,sBAAmB,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,aAC3F,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAIf,gBAAO,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,YAAY,EAAC,KAAK,GAAG,CAC7F,CAAC,CAAC,CAAC,CACF,EAAE,CACH,EACD,yBAAa,WAAW,YAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAO,EACvE,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,yBAAa,cAAc,YAAE,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,GAAO,CAAC,CAAC,CAAC,EAAE,IACpG,CACR,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KASxC,EAAkB,EAAE,CAAC,CACpB,4BACU,eAAe,uBACJ,KAAK,CAAC,KAAK,EAC9B,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI,EACjC,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI,kBACnB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,YAE1C,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC7B,iBAAQ,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,YAChE,MAAM,CAAC,KAAK,GACN,CACV,CAAC,GACK,CACV,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAInC,EAAkB,EAAE,CAAC,CACpB,qCAA0B,KAAK,CAAC,MAAM,0BAAwB,KAAK,CAAC,EAAE,IAAI,IAAI,YAC3E,KAAK,CAAC,QAAQ,GACV,CACR,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAKhC,EAAkB,EAAE,CAAC,CACpB,2BAAc,aAAa,iBAAa,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,EAAE,sBAAmB,KAAK,CAAC,IAAI,aACpG,gBAAO,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,YAAY,EAAC,KAAK,GAAG,EAC3F,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACzD,gBAAO,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,KAAK,GAAG,CACrE,CAAC,EACD,KAAK,CAAC,QAAQ,IACV,CACR,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAmC,EAAkB,EAAE,CAAC,CACxF,eAAM,EAAE,EAAE,KAAK,CAAC,EAAE,sBAAoB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,SAAG,CACpF,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAA6B,EAAkB,EAAE,CAAC,CACnF,oCAAwB,MAAM,YAAE,KAAK,CAAC,QAAQ,GAAQ,CACvD,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { IslandController, JSXChild, TemplateResult } from '@ketvietlab/ketjs-view';
2
- import { RECORD_PARAM, RECORD_TAB_PARAM, readRecordModalTarget, recordModalClosedHref, recordModalHref } from '../record-modal.tsx';
2
+ import { RECORD_NEW_ID, RECORD_PARAM, RECORD_TAB_PARAM, readRecordModalTarget, recordModalClosedHref, recordModalCreateHref, recordModalHref } from '../record-modal.tsx';
3
3
  export type RecordIssue = {
4
4
  field: string | null;
5
5
  code: string;
@@ -35,6 +35,8 @@ export type RecordContextEnvelope<Data> = {
35
35
  export type RecordModalContext<Data> = {
36
36
  kind: string;
37
37
  id: string;
38
+ /** The modal was opened by a create action (`record=<kind>:new`); there is no record yet. */
39
+ creating: boolean;
38
40
  tab: string;
39
41
  data: Data;
40
42
  /** Translate a key the context shipped, interpolating `{name}` params. */
@@ -43,7 +45,13 @@ export type RecordModalContext<Data> = {
43
45
  fieldError: (name: string) => string | null;
44
46
  /** What was typed into a field before a refused submit, or the fallback. */
45
47
  draft: (name: string, fallback?: string) => string;
46
- /** A submit is in flight. */
48
+ /** Whether a checkbox/radio value was selected before the view re-rendered. */
49
+ draftChecked: (name: string, value?: string, fallback?: boolean) => boolean;
50
+ /**
51
+ * A submit has been in flight long enough to be worth saying so. A command the
52
+ * server answers at once never sets it, so a button bound to it does not flash
53
+ * its spinner; the runtime stops a second submit either way.
54
+ */
47
55
  busy: boolean;
48
56
  dialog: {
49
57
  name: string;
@@ -58,26 +66,51 @@ export type RecordUploads = Record<string, {
58
66
  id: string;
59
67
  name: string | null;
60
68
  }>;
69
+ /** One extra call of a multi-step command — see `RecordModalCommand.also`. */
70
+ export type RecordModalCommandStep<Data> = {
71
+ fn: string;
72
+ input: (form: FormData, context: RecordModalContext<Data>, uploads: RecordUploads) => Record<string, unknown>;
73
+ /** Skip this step — a module not installed, a permission the viewer lacks. */
74
+ when?: (context: RecordModalContext<Data>) => boolean;
75
+ };
61
76
  export type RecordModalCommand<Data> = {
62
77
  fn: string;
63
78
  /** Map the submitted form to the function's input. */
64
79
  input: (form: FormData, context: RecordModalContext<Data>, uploads: RecordUploads) => Record<string, unknown>;
80
+ /**
81
+ * Further calls made right after `fn`/`input` succeeds, in order, as part of
82
+ * the same user-facing action — one busy state, one success notice, one set
83
+ * of field refusals — stopping at the first one that fails. For an edit that
84
+ * spans functions in different modules that cannot call one another (a
85
+ * single `product.saveTemplate` cannot also configure stock tracking or
86
+ * tax), this is what lets one "Save" button still read as one save.
87
+ */
88
+ also?: readonly RecordModalCommandStep<Data>[];
65
89
  /**
66
90
  * File fields stored through `/files` before the function runs, each mapped to
67
91
  * the attachment's metadata (`resModel`, `resId`, `resField`, `public`). The
68
92
  * stored attachment ids reach `input` as its third argument.
69
93
  */
70
94
  upload?: Record<string, (form: FormData, context: RecordModalContext<Data>) => Record<string, string>>;
95
+ /** A destructive command asks first; declining leaves the record untouched. */
96
+ confirm?: (context: RecordModalContext<Data>) => string | null;
71
97
  /**
72
98
  * What happens after success. Defaults to `close`. `reload` reads the record
73
99
  * again behind a loading state and closes a dialog; `refresh` reads it again in
74
100
  * place, keeping the tab, the open dialog and any islands mounted in them.
101
+ * `open` is for a create command: the modal switches to the record it created
102
+ * (the id from `created`, else the function value's `id`) on the tab named by
103
+ * `openTab`, replacing the `:new` history entry.
75
104
  */
76
- after?: 'close' | 'reload' | 'refresh' | 'stay' | {
105
+ after?: 'close' | 'reload' | 'refresh' | 'stay' | 'open' | {
77
106
  tab: string;
78
107
  } | {
79
108
  dialog: string | null;
80
109
  };
110
+ /** The id of the record a create command made, read from the function's value. */
111
+ created?: (value: unknown) => string | null;
112
+ /** Tab to open on the created record when `after` is `open`. */
113
+ openTab?: string;
81
114
  };
82
115
  export type RecordModalTab<Data> = {
83
116
  id: string;
@@ -93,15 +126,47 @@ export type RecordModalDialog<Data> = {
93
126
  export type RecordModalDefinition<Data> = {
94
127
  kind: string;
95
128
  size?: 'default' | 'large';
96
- /** A permission-checked read returning `{ data, messages }`. */
129
+ /**
130
+ * Caps a tabbed record's fixed height (a CSS length or `min()`/`calc()`
131
+ * expression) below the viewport-filling default, for a record whose own
132
+ * content is shorter than that — see `ModalSheet.fixedHeight`. Ignored for a
133
+ * record with one tab or none, since those never turn on `height: 'fixed'`.
134
+ */
135
+ fixedHeight?: string;
136
+ /**
137
+ * A permission-checked read returning `{ data, messages }`. For a create action
138
+ * the default input is `{}` (no id): the read returns the empty record's defaults,
139
+ * the choices its form needs and the viewer's permissions.
140
+ */
97
141
  context: {
98
142
  fn: string;
99
- input?: (id: string) => Record<string, unknown>;
143
+ input?: (id: string, creating: boolean) => Record<string, unknown>;
100
144
  };
101
145
  title: (context: RecordModalContext<Data>) => string;
102
146
  description?: (context: RecordModalContext<Data>) => string | null;
147
+ /**
148
+ * What state this record is in, beside the modal's title: a badge, not a
149
+ * strip. It stays put while the body scrolls, and a reader looking at the
150
+ * title learns the state without reading down into the form.
151
+ */
152
+ status?: (context: RecordModalContext<Data>) => JSXChild;
153
+ /** A strip above the body — a customer, a summary — for what a badge cannot hold. */
103
154
  header?: (context: RecordModalContext<Data>) => JSXChild;
155
+ /**
156
+ * A footer strip below the body, outside the scrolling area and the same on
157
+ * every tab — the natural home for a record's primary actions (save, close,
158
+ * more) so they stay reachable without hunting through the tab that happens
159
+ * to hold the save button. Return `undefined` (not `''`) to render no footer
160
+ * at all, e.g. while creating, when the create form owns its own submit.
161
+ */
162
+ actions?: (context: RecordModalContext<Data>) => JSXChild | undefined;
104
163
  tabs?: readonly RecordModalTab<Data>[];
164
+ /**
165
+ * Tabs other modules add to this record, read from its context: they follow the
166
+ * declared tabs, in composition order, and render through the same TabbedView.
167
+ * A module that owns the record cannot know them when it is built.
168
+ */
169
+ extensionTabs?: (context: RecordModalContext<Data>) => readonly RecordModalTab<Data>[];
105
170
  /** The body of a record without tabs. */
106
171
  body?: (context: RecordModalContext<Data>) => JSXChild;
107
172
  dialogs?: Record<string, RecordModalDialog<Data>>;
@@ -112,7 +177,15 @@ export type RecordModalDefinition<Data> = {
112
177
  * built-in English defaults, because `messages` arrive with the context.
113
178
  */
114
179
  labels?: Record<string, string> | (() => Record<string, string>);
180
+ /**
181
+ * Keep read contexts in memory so reopening a record shows at once and is read
182
+ * again quietly (stale-while-revalidate). On by default; set `false` for a kind
183
+ * whose context must never be shown before a fresh read.
184
+ */
185
+ cache?: boolean;
115
186
  };
187
+ /** How many record contexts one island keeps for instant reopening. */
188
+ export declare const RECORD_MODAL_CACHE_SIZE = 30;
116
189
  /**
117
190
  * English defaults for every label the runtime itself shows. A module passes its
118
191
  * own language through `labels`; these only guarantee a reader never sees a key.
@@ -134,6 +207,30 @@ export declare const RECORD_COMMAND_FIELD = "__command";
134
207
  export declare const RECORD_DIALOG_ATTRIBUTE = "data-record-dialog";
135
208
  /** Whether anything in a layer was typed into since it rendered. Same rule as route modals. */
136
209
  export declare const recordLayerHasDraft: (layer: HTMLElement) => boolean;
210
+ /**
211
+ * How long a command may run before its button says so. Below this the answer
212
+ * arrives while the reader is still lifting their finger, and a spinner shown
213
+ * and withdrawn inside that window is noise; above it, silence would read as a
214
+ * click that did nothing.
215
+ */
216
+ export declare const BUSY_AFTER_MS = 400;
217
+ /**
218
+ * A flag that turns on late and off at once. Work that finishes inside the
219
+ * window never raises it, so a progress indicator bound to it appears only when
220
+ * there is progress to report, and never flashes on its way back out.
221
+ */
222
+ export declare const delayedFlag: (show: (value: boolean) => void, after?: number) => {
223
+ set: (running: boolean) => void;
224
+ stop: () => void;
225
+ };
226
+ /**
227
+ * Where a click is asking to go: the link it landed on, or the row it landed
228
+ * in. A table row carries its destination on the row itself (`rowLink: false`),
229
+ * so the whole row is one target rather than a link around the first cell. The
230
+ * shell would navigate such a row through the navigation layer, which fetches
231
+ * the collection again and leaves the modal unopened, so this reads it first.
232
+ */
233
+ export declare const openerHref: (element: Element | null) => string | null;
137
234
  /**
138
235
  * Create the island controller for one record kind.
139
236
  *
@@ -146,5 +243,5 @@ export declare const createRecordModal: <Data>(definition: RecordModalDefinition
146
243
  * appears and disposes it when the host leaves; props must be JSON.
147
244
  */
148
245
  export declare const recordIsland: (name: string, props: Record<string, unknown>) => TemplateResult;
149
- export { RECORD_PARAM, RECORD_TAB_PARAM, recordModalHref, recordModalClosedHref, readRecordModalTarget };
246
+ export { RECORD_NEW_ID, RECORD_PARAM, RECORD_TAB_PARAM, recordModalHref, recordModalCreateHref, recordModalClosedHref, readRecordModalTarget, };
150
247
  //# sourceMappingURL=record-modal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"record-modal.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/record-modal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-modal.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/ui/client/record-modal.tsx"],"names":[],"mappings":"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"}