@qoretechnologies/reqraft 0.10.53 → 0.10.54-pr.115.ge2d364c

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 (215) hide show
  1. package/.claude/CLAUDE.md +25 -0
  2. package/.tasks/INDEX.md +1 -0
  3. package/.tasks/STORY_NETWORK_ISOLATION.md +98 -0
  4. package/README.md +1 -1
  5. package/design/FORM_ENGINE_EXPRESSIONS.md +110 -0
  6. package/design/RENDER_EXPRESSION_TRANSPORT.md +18 -0
  7. package/dist/components/dpqlEditor/dpqlProbe.d.ts +37 -0
  8. package/dist/components/dpqlEditor/dpqlProbe.d.ts.map +1 -0
  9. package/dist/components/dpqlEditor/dpqlProbe.js +203 -0
  10. package/dist/components/dpqlEditor/dpqlProbe.js.map +1 -0
  11. package/dist/components/dpqlEditor/index.d.ts +4 -0
  12. package/dist/components/dpqlEditor/index.d.ts.map +1 -1
  13. package/dist/components/dpqlEditor/index.js +5 -1
  14. package/dist/components/dpqlEditor/index.js.map +1 -1
  15. package/dist/components/dpqlEditor/types.d.ts +29 -2
  16. package/dist/components/dpqlEditor/types.d.ts.map +1 -1
  17. package/dist/components/dpqlEditor/useDpqlProbe.d.ts +4 -0
  18. package/dist/components/dpqlEditor/useDpqlProbe.d.ts.map +1 -0
  19. package/dist/components/dpqlEditor/useDpqlProbe.js +29 -0
  20. package/dist/components/dpqlEditor/useDpqlProbe.js.map +1 -0
  21. package/dist/components/dpqlEditor/useDpqlSession.d.ts +5 -2
  22. package/dist/components/dpqlEditor/useDpqlSession.d.ts.map +1 -1
  23. package/dist/components/dpqlEditor/useDpqlSession.js +8 -2
  24. package/dist/components/dpqlEditor/useDpqlSession.js.map +1 -1
  25. package/dist/components/form/engine/CompactRow.d.ts.map +1 -1
  26. package/dist/components/form/engine/CompactRow.js +186 -21
  27. package/dist/components/form/engine/CompactRow.js.map +1 -1
  28. package/dist/components/form/engine/CompactToolbar.d.ts.map +1 -1
  29. package/dist/components/form/engine/CompactToolbar.js +5 -2
  30. package/dist/components/form/engine/CompactToolbar.js.map +1 -1
  31. package/dist/components/form/engine/FormEngine.d.ts +159 -11
  32. package/dist/components/form/engine/FormEngine.d.ts.map +1 -1
  33. package/dist/components/form/engine/FormEngine.js +376 -75
  34. package/dist/components/form/engine/FormEngine.js.map +1 -1
  35. package/dist/components/form/engine/FormFieldsSkeleton.d.ts +48 -0
  36. package/dist/components/form/engine/FormFieldsSkeleton.d.ts.map +1 -0
  37. package/dist/components/form/engine/FormFieldsSkeleton.js +38 -0
  38. package/dist/components/form/engine/FormFieldsSkeleton.js.map +1 -0
  39. package/dist/components/form/engine/OptionFieldMessages.d.ts +17 -2
  40. package/dist/components/form/engine/OptionFieldMessages.d.ts.map +1 -1
  41. package/dist/components/form/engine/OptionFieldMessages.js +61 -11
  42. package/dist/components/form/engine/OptionFieldMessages.js.map +1 -1
  43. package/dist/components/form/engine/_structuredData/SchemaDataView.d.ts.map +1 -1
  44. package/dist/components/form/engine/_structuredData/SchemaDataView.js +7 -1
  45. package/dist/components/form/engine/_structuredData/SchemaDataView.js.map +1 -1
  46. package/dist/components/form/engine/compactToolbarContext.d.ts +1 -0
  47. package/dist/components/form/engine/compactToolbarContext.d.ts.map +1 -1
  48. package/dist/components/form/engine/readFirst.d.ts +42 -1
  49. package/dist/components/form/engine/readFirst.d.ts.map +1 -1
  50. package/dist/components/form/engine/readFirst.js +74 -7
  51. package/dist/components/form/engine/readFirst.js.map +1 -1
  52. package/dist/components/form/engine/rendererTypes.d.ts +13 -0
  53. package/dist/components/form/engine/rendererTypes.d.ts.map +1 -1
  54. package/dist/components/form/engine/rendererTypes.js.map +1 -1
  55. package/dist/components/form/engine/rowMenuContext.d.ts +78 -0
  56. package/dist/components/form/engine/rowMenuContext.d.ts.map +1 -0
  57. package/dist/components/form/engine/rowMenuContext.js +103 -0
  58. package/dist/components/form/engine/rowMenuContext.js.map +1 -0
  59. package/dist/components/form/engine/typeChoices.d.ts +37 -0
  60. package/dist/components/form/engine/typeChoices.d.ts.map +1 -0
  61. package/dist/components/form/engine/typeChoices.js +25 -0
  62. package/dist/components/form/engine/typeChoices.js.map +1 -0
  63. package/dist/components/form/expressions/ExpressionField.d.ts +7 -1
  64. package/dist/components/form/expressions/ExpressionField.d.ts.map +1 -1
  65. package/dist/components/form/expressions/ExpressionField.js +181 -33
  66. package/dist/components/form/expressions/ExpressionField.js.map +1 -1
  67. package/dist/components/form/expressions/argumentPresence.d.ts +97 -0
  68. package/dist/components/form/expressions/argumentPresence.d.ts.map +1 -0
  69. package/dist/components/form/expressions/argumentPresence.js +203 -0
  70. package/dist/components/form/expressions/argumentPresence.js.map +1 -0
  71. package/dist/components/form/expressions/builder/argumentLabel.d.ts.map +1 -1
  72. package/dist/components/form/expressions/builder/argumentLabel.js +9 -4
  73. package/dist/components/form/expressions/builder/argumentLabel.js.map +1 -1
  74. package/dist/components/form/expressions/builder/index.d.ts +15 -2
  75. package/dist/components/form/expressions/builder/index.d.ts.map +1 -1
  76. package/dist/components/form/expressions/builder/index.js +19 -57
  77. package/dist/components/form/expressions/builder/index.js.map +1 -1
  78. package/dist/components/form/expressions/dpqlMockLsp.d.ts +17 -0
  79. package/dist/components/form/expressions/dpqlMockLsp.d.ts.map +1 -1
  80. package/dist/components/form/expressions/dpqlMockLsp.js +75 -9
  81. package/dist/components/form/expressions/dpqlMockLsp.js.map +1 -1
  82. package/dist/components/form/expressions/renderExpressionToText.d.ts.map +1 -1
  83. package/dist/components/form/expressions/renderExpressionToText.js +94 -19
  84. package/dist/components/form/expressions/renderExpressionToText.js.map +1 -1
  85. package/dist/components/form/fields/Field.d.ts.map +1 -1
  86. package/dist/components/form/fields/Field.js +3 -1
  87. package/dist/components/form/fields/Field.js.map +1 -1
  88. package/dist/components/form/fields/allowed-values/AllowedValues.d.ts +11 -1
  89. package/dist/components/form/fields/allowed-values/AllowedValues.d.ts.map +1 -1
  90. package/dist/components/form/fields/allowed-values/AllowedValues.js +14 -2
  91. package/dist/components/form/fields/allowed-values/AllowedValues.js.map +1 -1
  92. package/dist/components/form/fields/auto/AutoFormField.d.ts.map +1 -1
  93. package/dist/components/form/fields/auto/AutoFormField.js +13 -2
  94. package/dist/components/form/fields/auto/AutoFormField.js.map +1 -1
  95. package/dist/components/form/fields/rich-text/RichText.d.ts +11 -0
  96. package/dist/components/form/fields/rich-text/RichText.d.ts.map +1 -1
  97. package/dist/components/form/fields/rich-text/RichText.js +84 -5
  98. package/dist/components/form/fields/rich-text/RichText.js.map +1 -1
  99. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts +2 -1
  100. package/dist/components/form/fields/template/ReadOnlyTemplateTag.d.ts.map +1 -1
  101. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js +3 -2
  102. package/dist/components/form/fields/template/ReadOnlyTemplateTag.js.map +1 -1
  103. package/dist/components/form/fields/template/TemplateField.d.ts +31 -1
  104. package/dist/components/form/fields/template/TemplateField.d.ts.map +1 -1
  105. package/dist/components/form/fields/template/TemplateField.js +507 -40
  106. package/dist/components/form/fields/template/TemplateField.js.map +1 -1
  107. package/dist/components/form/index.d.ts +1 -0
  108. package/dist/components/form/index.d.ts.map +1 -1
  109. package/dist/components/form/index.js +1 -0
  110. package/dist/components/form/index.js.map +1 -1
  111. package/dist/components/smartEditor/__fixtures__/mockLspServer.d.ts +1 -0
  112. package/dist/components/smartEditor/__fixtures__/mockLspServer.d.ts.map +1 -1
  113. package/dist/components/smartEditor/__fixtures__/mockLspServer.js +6 -1
  114. package/dist/components/smartEditor/__fixtures__/mockLspServer.js.map +1 -1
  115. package/dist/helpers/dpqlDetection.d.ts +58 -0
  116. package/dist/helpers/dpqlDetection.d.ts.map +1 -0
  117. package/dist/helpers/dpqlDetection.js +164 -0
  118. package/dist/helpers/dpqlDetection.js.map +1 -0
  119. package/dist/helpers/optionUiTypes.d.ts +1 -1
  120. package/dist/helpers/options.d.ts +37 -0
  121. package/dist/helpers/options.d.ts.map +1 -1
  122. package/dist/helpers/options.js +78 -1
  123. package/dist/helpers/options.js.map +1 -1
  124. package/dist/helpers/templateItems.d.ts +47 -0
  125. package/dist/helpers/templateItems.d.ts.map +1 -0
  126. package/dist/helpers/templateItems.js +88 -0
  127. package/dist/helpers/templateItems.js.map +1 -0
  128. package/dist/helpers/templates.d.ts +21 -0
  129. package/dist/helpers/templates.d.ts.map +1 -1
  130. package/dist/helpers/templates.js +49 -3
  131. package/dist/helpers/templates.js.map +1 -1
  132. package/dist/helpers/validations.d.ts.map +1 -1
  133. package/dist/helpers/validations.js +56 -9
  134. package/dist/helpers/validations.js.map +1 -1
  135. package/dist/hooks/useArgSchema.d.ts +2 -1
  136. package/dist/hooks/useArgSchema.d.ts.map +1 -1
  137. package/dist/hooks/useFetch/useFetch.d.ts +3 -1
  138. package/dist/hooks/useFetch/useFetch.d.ts.map +1 -1
  139. package/dist/hooks/useFetch/useFetch.js +47 -9
  140. package/dist/hooks/useFetch/useFetch.js.map +1 -1
  141. package/dist/hooks/useTemplates.d.ts +20 -0
  142. package/dist/hooks/useTemplates.d.ts.map +1 -1
  143. package/dist/hooks/useTemplates.js +34 -2
  144. package/dist/hooks/useTemplates.js.map +1 -1
  145. package/dist/index.d.ts +2 -1
  146. package/dist/index.d.ts.map +1 -1
  147. package/dist/index.js +5 -1
  148. package/dist/index.js.map +1 -1
  149. package/dist/stories/storyNetwork.d.ts +36 -0
  150. package/dist/stories/storyNetwork.d.ts.map +1 -0
  151. package/dist/stories/storyNetwork.js +82 -0
  152. package/dist/stories/storyNetwork.js.map +1 -0
  153. package/dist/utils/fetch.d.ts +151 -1
  154. package/dist/utils/fetch.d.ts.map +1 -1
  155. package/dist/utils/fetch.js +256 -44
  156. package/dist/utils/fetch.js.map +1 -1
  157. package/dist/utils/lspClient.d.ts +6 -0
  158. package/dist/utils/lspClient.d.ts.map +1 -1
  159. package/dist/utils/lspClient.js +62 -11
  160. package/dist/utils/lspClient.js.map +1 -1
  161. package/dist/utils/websocket.d.ts +6 -0
  162. package/dist/utils/websocket.d.ts.map +1 -1
  163. package/dist/utils/websocket.js +15 -7
  164. package/dist/utils/websocket.js.map +1 -1
  165. package/package.json +2 -2
  166. package/src/components/dpqlEditor/DpqlEditor.stories.tsx +0 -2
  167. package/src/components/dpqlEditor/dpqlProbe.ts +165 -0
  168. package/src/components/dpqlEditor/index.ts +4 -0
  169. package/src/components/dpqlEditor/types.ts +26 -2
  170. package/src/components/dpqlEditor/useDpqlProbe.ts +33 -0
  171. package/src/components/dpqlEditor/useDpqlSession.ts +20 -4
  172. package/src/components/form/engine/CompactRow.tsx +231 -11
  173. package/src/components/form/engine/CompactToolbar.tsx +10 -3
  174. package/src/components/form/engine/FormEngine.stories.tsx +331 -30
  175. package/src/components/form/engine/FormEngine.tsx +504 -87
  176. package/src/components/form/engine/FormFieldsSkeleton.tsx +76 -0
  177. package/src/components/form/engine/OptionFieldMessages.tsx +89 -11
  178. package/src/components/form/engine/_structuredData/SchemaDataView.tsx +11 -0
  179. package/src/components/form/engine/compactToolbarContext.ts +1 -1
  180. package/src/components/form/engine/readFirst.ts +86 -7
  181. package/src/components/form/engine/rendererTypes.ts +12 -0
  182. package/src/components/form/engine/rowMenuContext.ts +159 -0
  183. package/src/components/form/engine/typeChoices.ts +55 -0
  184. package/src/components/form/expressions/ExpressionField.stories.tsx +828 -31
  185. package/src/components/form/expressions/ExpressionField.tsx +234 -29
  186. package/src/components/form/expressions/argumentPresence.ts +200 -0
  187. package/src/components/form/expressions/builder/argumentLabel.tsx +10 -4
  188. package/src/components/form/expressions/builder/index.tsx +31 -75
  189. package/src/components/form/expressions/dpqlMockLsp.ts +81 -1
  190. package/src/components/form/expressions/renderExpressionToText.ts +106 -17
  191. package/src/components/form/fields/Field.tsx +3 -2
  192. package/src/components/form/fields/allowed-values/AllowedValues.tsx +13 -2
  193. package/src/components/form/fields/auto/AutoFormField.tsx +12 -2
  194. package/src/components/form/fields/rich-text/RichText.tsx +112 -19
  195. package/src/components/form/fields/template/ReadOnlyTemplateTag.tsx +4 -2
  196. package/src/components/form/fields/template/TemplateField.tsx +667 -95
  197. package/src/components/form/index.tsx +1 -0
  198. package/src/components/log/Log.stories.tsx +2 -1
  199. package/src/components/smartEditor/__fixtures__/mockLspServer.ts +6 -1
  200. package/src/helpers/dpqlDetection.ts +209 -0
  201. package/src/helpers/options.ts +70 -0
  202. package/src/helpers/templateItems.ts +81 -0
  203. package/src/helpers/templates.ts +51 -2
  204. package/src/helpers/validations.ts +59 -9
  205. package/src/hooks/useFetch/useFetch.stories.tsx +6 -5
  206. package/src/hooks/useFetch/useFetch.tsx +53 -7
  207. package/src/hooks/useStorage/useStorage.stories.tsx +2 -1
  208. package/src/hooks/useTemplates.ts +41 -0
  209. package/src/hooks/useWebSocket/useWebsocket.stories.tsx +2 -1
  210. package/src/index.tsx +14 -1
  211. package/src/stores/currentUser/currentUser.stories.tsx +2 -1
  212. package/src/stories/storyNetwork.ts +92 -0
  213. package/src/utils/fetch.ts +311 -21
  214. package/src/utils/lspClient.ts +68 -11
  215. package/src/utils/websocket.ts +20 -9
@@ -1 +1 @@
1
- {"version":3,"file":"ExpressionField.js","sourceRoot":"","sources":["../../../../src/components/form/expressions/ExpressionField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpressionField.js","sourceRoot":"","sources":["../../../../src/components/form/expressions/ExpressionField.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Is this expression argument SUPPLIED, or is it still missing?
3
+ *
4
+ * DPQL has a null literal: `null` parses to `{exp: "value", args: [null]}` and
5
+ * round-trips, and an author writing it in the text editor means *"this is the
6
+ * value — nothing"*. It is the only way to assert that a call returned no
7
+ * value, which is how it was reported.
8
+ *
9
+ * The rule, stated once here because three different places had drawn it
10
+ * differently: **an argument that is explicitly null is supplied; one that is
11
+ * absent or `undefined` is still missing.**
12
+ *
13
+ * The builder used to ask `size(arg) === 0`, and lodash answers `0` for `null`
14
+ * as readily as for `{}`. So an explicit null was read as a missing argument
15
+ * and reset from the catalogue's declaration — which is how a saved draft ended
16
+ * up holding `{"type": "any", "required": true}`, an argument DEFINITION where
17
+ * its value should be, with the author's `null` gone and `required` (a schema
18
+ * key, never a value key) left behind to give it away.
19
+ */
20
+ /**
21
+ * True when `arg` carries no value yet — `undefined`, the `{}` the builder
22
+ * writes when a type change resets an argument, or any envelope with no
23
+ * `value` in it.
24
+ *
25
+ * `null` is NOT missing: it is the null literal.
26
+ *
27
+ * The rule used to be "an object with no keys at all", which let an envelope
28
+ * holding nothing but SCHEMA keys pass as a supplied value. That is how a saved
29
+ * draft kept `{type: 'any', required: true}` — an argument DEFINITION where the
30
+ * author's value belonged — and why re-opening the expression never repaired
31
+ * it: the builder looked at those two keys, concluded the argument was already
32
+ * supplied, and left the definition in place as data. `required` is a schema
33
+ * key; nothing ever reads it back off a stored value.
34
+ *
35
+ * Asking for the `value` instead makes the question the one that was always
36
+ * meant: has the author put something here?
37
+ *
38
+ * @param arg one entry of an expression's `args`
39
+ */
40
+ export declare const isExpressionArgumentMissing: (arg: unknown) => boolean;
41
+ /**
42
+ * The shape the builder stores an argument in: `{type, value}`.
43
+ *
44
+ * A parse result carries its arguments RAW — `args: [null]`, `args: [3]` —
45
+ * because that is what the grammar produced. The builder's editors read
46
+ * `arg.value`, so a raw argument has to be widened before it is stored, and
47
+ * widening `null` is the whole point: dropped instead, the author's null
48
+ * becomes an argument with no `value` key at all, which every later reader
49
+ * treats as an empty field.
50
+ *
51
+ * An argument that is already an envelope is returned untouched.
52
+ *
53
+ * @param arg one entry of an expression's `args`
54
+ * @param uiType the type the catalogue declares for that position
55
+ */
56
+ export declare const asExpressionArgumentEnvelope: (arg: unknown, uiType?: string) => unknown;
57
+ /**
58
+ * Does this value still look like an expression AST?
59
+ *
60
+ * `{exp, args}` is the shape the builder and `dpql/parse` both produce. The
61
+ * check is structural on purpose: the flag that marks an option as holding an
62
+ * expression describes its VALUE, so the value is what should decide whether
63
+ * the flag survives a change that said nothing about it.
64
+ */
65
+ export declare const looksLikeExpressionAst: (value: unknown) => boolean;
66
+ /**
67
+ * Whether an option should still be marked as holding an expression.
68
+ *
69
+ * The form engine used to delete the flag on ANY change that did not re-assert
70
+ * it, and most changes do not: an editor re-mounting, a revert, a validation
71
+ * pass. The value stayed the AST while the flag went, so the option degraded
72
+ * into a plain hash — which is how an assertion's Expected Value came back
73
+ * from a saved draft as a two-field object showing `exp` and `args`, and why
74
+ * `encodeTestValue` then stored it with `source: "literal"`.
75
+ *
76
+ * @param isFunction what the caller said: `true` sets the flag, `false` clears
77
+ * it deliberately (choosing a concrete type does this), `undefined` is no
78
+ * opinion at all
79
+ * @param value the option's new value
80
+ * @param wasExpression whether the option was marked before this change
81
+ */
82
+ export declare const shouldMarkAsExpression: (isFunction: boolean | undefined, value: unknown, wasExpression: boolean | undefined) => boolean;
83
+ /**
84
+ * Fill in an expression's missing arguments, leaving the supplied ones alone.
85
+ *
86
+ * Extracted from the builder so the decision it makes can be tested directly:
87
+ * a component test of the same behaviour passed just as happily with the defect
88
+ * in place, because the builder normalises on an interaction the harness never
89
+ * performed. A test that cannot fail is worse than none.
90
+ *
91
+ * @param expressions the served expression catalogue
92
+ * @param expression the chosen expression's `name`
93
+ * @param args the arguments so far — raw from a parse, or envelopes from the
94
+ * builder's own editors
95
+ */
96
+ export declare const addMissingExpressionArgs: (expressions: any[] | undefined, expression: string, args?: any[]) => any[];
97
+ //# sourceMappingURL=argumentPresence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argumentPresence.d.ts","sourceRoot":"","sources":["../../../../src/components/form/expressions/argumentPresence.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,2BAA2B,QAAS,OAAO,KAAG,OAe1D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,4BAA4B,QAAS,OAAO,WAAW,MAAM,KAAG,OAM5E,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,UAAW,OAAO,KAAG,OAIF,CAAC;AAEvD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB,eACrB,OAAO,GAAG,SAAS,SACxB,OAAO,iBACC,OAAO,GAAG,SAAS,KACjC,OAYF,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,gBACtB,GAAG,EAAE,GAAG,SAAS,cAClB,MAAM,SACZ,GAAG,EAAE,KACV,GAAG,EAqDL,CAAC"}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ // Copyright 2026 Qore Technologies, s.r.o.
3
+ /**
4
+ * Is this expression argument SUPPLIED, or is it still missing?
5
+ *
6
+ * DPQL has a null literal: `null` parses to `{exp: "value", args: [null]}` and
7
+ * round-trips, and an author writing it in the text editor means *"this is the
8
+ * value — nothing"*. It is the only way to assert that a call returned no
9
+ * value, which is how it was reported.
10
+ *
11
+ * The rule, stated once here because three different places had drawn it
12
+ * differently: **an argument that is explicitly null is supplied; one that is
13
+ * absent or `undefined` is still missing.**
14
+ *
15
+ * The builder used to ask `size(arg) === 0`, and lodash answers `0` for `null`
16
+ * as readily as for `{}`. So an explicit null was read as a missing argument
17
+ * and reset from the catalogue's declaration — which is how a saved draft ended
18
+ * up holding `{"type": "any", "required": true}`, an argument DEFINITION where
19
+ * its value should be, with the author's `null` gone and `required` (a schema
20
+ * key, never a value key) left behind to give it away.
21
+ */
22
+ var __assign = (this && this.__assign) || function () {
23
+ __assign = Object.assign || function(t) {
24
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
25
+ s = arguments[i];
26
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
27
+ t[p] = s[p];
28
+ }
29
+ return t;
30
+ };
31
+ return __assign.apply(this, arguments);
32
+ };
33
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
34
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
35
+ if (ar || !(i in from)) {
36
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
37
+ ar[i] = from[i];
38
+ }
39
+ }
40
+ return to.concat(ar || Array.prototype.slice.call(from));
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.addMissingExpressionArgs = exports.shouldMarkAsExpression = exports.looksLikeExpressionAst = exports.asExpressionArgumentEnvelope = exports.isExpressionArgumentMissing = void 0;
44
+ /**
45
+ * True when `arg` carries no value yet — `undefined`, the `{}` the builder
46
+ * writes when a type change resets an argument, or any envelope with no
47
+ * `value` in it.
48
+ *
49
+ * `null` is NOT missing: it is the null literal.
50
+ *
51
+ * The rule used to be "an object with no keys at all", which let an envelope
52
+ * holding nothing but SCHEMA keys pass as a supplied value. That is how a saved
53
+ * draft kept `{type: 'any', required: true}` — an argument DEFINITION where the
54
+ * author's value belonged — and why re-opening the expression never repaired
55
+ * it: the builder looked at those two keys, concluded the argument was already
56
+ * supplied, and left the definition in place as data. `required` is a schema
57
+ * key; nothing ever reads it back off a stored value.
58
+ *
59
+ * Asking for the `value` instead makes the question the one that was always
60
+ * meant: has the author put something here?
61
+ *
62
+ * @param arg one entry of an expression's `args`
63
+ */
64
+ var isExpressionArgumentMissing = function (arg) {
65
+ if (arg === null) {
66
+ return false;
67
+ }
68
+ if (arg === undefined) {
69
+ return true;
70
+ }
71
+ if (typeof arg !== 'object') {
72
+ // a raw scalar argument — `0`, `false` and `''` are values too
73
+ return false;
74
+ }
75
+ return arg.value === undefined;
76
+ };
77
+ exports.isExpressionArgumentMissing = isExpressionArgumentMissing;
78
+ /**
79
+ * The shape the builder stores an argument in: `{type, value}`.
80
+ *
81
+ * A parse result carries its arguments RAW — `args: [null]`, `args: [3]` —
82
+ * because that is what the grammar produced. The builder's editors read
83
+ * `arg.value`, so a raw argument has to be widened before it is stored, and
84
+ * widening `null` is the whole point: dropped instead, the author's null
85
+ * becomes an argument with no `value` key at all, which every later reader
86
+ * treats as an empty field.
87
+ *
88
+ * An argument that is already an envelope is returned untouched.
89
+ *
90
+ * @param arg one entry of an expression's `args`
91
+ * @param uiType the type the catalogue declares for that position
92
+ */
93
+ var asExpressionArgumentEnvelope = function (arg, uiType) {
94
+ if (arg !== null && (arg === undefined || typeof arg === 'object')) {
95
+ return arg;
96
+ }
97
+ return __assign({ value: arg }, (uiType ? { type: uiType } : {}));
98
+ };
99
+ exports.asExpressionArgumentEnvelope = asExpressionArgumentEnvelope;
100
+ /**
101
+ * Does this value still look like an expression AST?
102
+ *
103
+ * `{exp, args}` is the shape the builder and `dpql/parse` both produce. The
104
+ * check is structural on purpose: the flag that marks an option as holding an
105
+ * expression describes its VALUE, so the value is what should decide whether
106
+ * the flag survives a change that said nothing about it.
107
+ */
108
+ var looksLikeExpressionAst = function (value) {
109
+ return !!value &&
110
+ typeof value === 'object' &&
111
+ !Array.isArray(value) &&
112
+ typeof value.exp === 'string';
113
+ };
114
+ exports.looksLikeExpressionAst = looksLikeExpressionAst;
115
+ /**
116
+ * Whether an option should still be marked as holding an expression.
117
+ *
118
+ * The form engine used to delete the flag on ANY change that did not re-assert
119
+ * it, and most changes do not: an editor re-mounting, a revert, a validation
120
+ * pass. The value stayed the AST while the flag went, so the option degraded
121
+ * into a plain hash — which is how an assertion's Expected Value came back
122
+ * from a saved draft as a two-field object showing `exp` and `args`, and why
123
+ * `encodeTestValue` then stored it with `source: "literal"`.
124
+ *
125
+ * @param isFunction what the caller said: `true` sets the flag, `false` clears
126
+ * it deliberately (choosing a concrete type does this), `undefined` is no
127
+ * opinion at all
128
+ * @param value the option's new value
129
+ * @param wasExpression whether the option was marked before this change
130
+ */
131
+ var shouldMarkAsExpression = function (isFunction, value, wasExpression) {
132
+ if (isFunction === true) {
133
+ return true;
134
+ }
135
+ if (isFunction === false) {
136
+ return false;
137
+ }
138
+ // No opinion: the flag belongs to the value, so it survives exactly as long
139
+ // as the value is still an expression.
140
+ return !!wasExpression && (0, exports.looksLikeExpressionAst)(value);
141
+ };
142
+ exports.shouldMarkAsExpression = shouldMarkAsExpression;
143
+ /**
144
+ * Fill in an expression's missing arguments, leaving the supplied ones alone.
145
+ *
146
+ * Extracted from the builder so the decision it makes can be tested directly:
147
+ * a component test of the same behaviour passed just as happily with the defect
148
+ * in place, because the builder normalises on an interaction the harness never
149
+ * performed. A test that cannot fail is worse than none.
150
+ *
151
+ * @param expressions the served expression catalogue
152
+ * @param expression the chosen expression's `name`
153
+ * @param args the arguments so far — raw from a parse, or envelopes from the
154
+ * builder's own editors
155
+ */
156
+ var addMissingExpressionArgs = function (expressions, expression, args) {
157
+ var _a;
158
+ if (args === void 0) { args = []; }
159
+ var newArgs = __spreadArray([], args, true);
160
+ var selected = expressions === null || expressions === void 0 ? void 0 : expressions.find(function (exp) { return (exp === null || exp === void 0 ? void 0 : exp.name) === expression; });
161
+ if (!selected) {
162
+ return newArgs;
163
+ }
164
+ if (selected.varargs) {
165
+ if (selected.subtype === 2) {
166
+ newArgs.push({ is_expression: true, value: { args: [] } });
167
+ }
168
+ else {
169
+ newArgs.push.apply(newArgs, Array.from({ length: ((_a = selected.min_args) !== null && _a !== void 0 ? _a : 1) - 1 }, function () { return ({
170
+ type: selected.args[0].ui_type === 'richtext' || selected.args[0].ui_type === 'number'
171
+ ? selected.args[0].ui_type
172
+ : undefined,
173
+ }); }));
174
+ }
175
+ return newArgs;
176
+ }
177
+ selected.args.forEach(function (arg, index) {
178
+ /* A RAW argument, as `dpql/parse` produces it — `args: [null]`, `args: [3]`
179
+ — is widened into the `{type, value}` envelope the editors read. Widening
180
+ the null is the point: dropped instead, the author's `null` became an
181
+ argument with no `value` key, and the branch below then filled the gap
182
+ from the catalogue's DECLARATION, which is how a saved draft came back
183
+ holding `{type: "any", required: true}` where its value belonged. */
184
+ newArgs[index] = (0, exports.asExpressionArgumentEnvelope)(newArgs[index], arg.ui_type);
185
+ /* "Missing" already means "carries no value", so an argument waiting for
186
+ its catalogue default is simply a missing one — it needs no separate
187
+ test. */
188
+ if (!(0, exports.isExpressionArgumentMissing)(newArgs[index])) {
189
+ return;
190
+ }
191
+ newArgs[index] =
192
+ arg.default_value ?
193
+ { value: arg.default_value, type: arg.ui_type }
194
+ : {
195
+ type: arg.ui_type === 'richtext' || arg.ui_type === 'number' || arg.ui_type === 'bool' ?
196
+ arg.ui_type
197
+ : undefined,
198
+ };
199
+ });
200
+ return newArgs;
201
+ };
202
+ exports.addMissingExpressionArgs = addMissingExpressionArgs;
203
+ //# sourceMappingURL=argumentPresence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"argumentPresence.js","sourceRoot":"","sources":["../../../../src/components/form/expressions/argumentPresence.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"argumentLabel.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/argumentLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhF,MAAM,WAAW,oCAAoC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,8BAA8B,+CAMxC,oCAAoC,4CAsHtC,CAAC"}
1
+ {"version":3,"file":"argumentLabel.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/argumentLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhF,MAAM,WAAW,oCAAoC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,8BAA8B,+CAMxC,oCAAoC,4CA4HtC,CAAC"}
@@ -34,9 +34,14 @@ var ExpressionBuilderArgumentLabel = function (_a) {
34
34
  types.getExactMatches(schema.ui_type).includes('any') ||
35
35
  type === 'any';
36
36
  var acceptedTypes = (0, lodash_1.uniq)(__spreadArray(__spreadArray([], types.getExactMatches(schema.ui_type), true), types.getAcceptedTypes(schema.ui_type), true));
37
- var _c = arg.is_expression
38
- ? (0, validations_1.validateFieldWithResult)('expression', arg, { expressions: expressions })
39
- : (0, validations_1.validateFieldWithResult)(argumentType, arg.value, schema, !schema.required), isValid = _c.isValid, reason = _c.reason;
37
+ /* `arg` is optional — an operand the author has not filled in yet has no
38
+ entry at all, and a literal carried straight from a parse can be the null
39
+ literal itself. Both were dereferenced unguarded here, which took the whole
40
+ expression editor down to its error boundary rather than drawing an empty
41
+ argument. */
42
+ var _c = (arg === null || arg === void 0 ? void 0 : arg.is_expression) ?
43
+ (0, validations_1.validateFieldWithResult)('expression', arg, { expressions: expressions })
44
+ : (0, validations_1.validateFieldWithResult)(argumentType, arg === null || arg === void 0 ? void 0 : arg.value, schema, !schema.required), isValid = _c.isValid, reason = _c.reason;
40
45
  return ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreP, { size: 'tiny', effect: {
41
46
  uppercase: true,
42
47
  spaced: 1,
@@ -52,7 +57,7 @@ var ExpressionBuilderArgumentLabel = function (_a) {
52
57
  italic: true,
53
58
  weight: 'light',
54
59
  opacity: 0.5,
55
- }, children: ['[', types.getTypeDisplayName(schema.ui_type)] }), !matchesType ? ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'ErrorWarningLine', color: 'warning', size: '10px', margin: 'both' })) : null, (argumentType || (arg.is_expression && ((_b = arg.value) === null || _b === void 0 ? void 0 : _b.exp))) &&
60
+ }, children: ['[', types.getTypeDisplayName(schema.ui_type)] }), !matchesType ? ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'ErrorWarningLine', color: 'warning', size: '10px', margin: 'both' })) : null, (argumentType || ((arg === null || arg === void 0 ? void 0 : arg.is_expression) && ((_b = arg.value) === null || _b === void 0 ? void 0 : _b.exp))) &&
56
61
  types.getTypeDisplayName(argumentType) !== types.getTypeDisplayName(schema.ui_type) &&
57
62
  !matchesTypeExactly ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [matchesType ? ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreIcon, { icon: 'CheckLine', color: 'pending', size: '10px', margin: 'both', tooltip: 'Type matches, but a transformation may be applied' })) : null, (0, jsx_runtime_1.jsx)(reqore_1.ReqoreSpan, { effect: {
58
63
  italic: true,
@@ -1 +1 @@
1
- {"version":3,"file":"argumentLabel.js","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/argumentLabel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"argumentLabel.js","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/argumentLabel.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { IReqorePanelAction } from '@qoretechnologies/reqore/dist/components/Panel';
2
2
  import { IReqoreFormTemplates } from '@qoretechnologies/reqore/dist/components/Textarea';
3
3
  import { TQorusType } from '@qoretechnologies/ts-toolkit';
4
+ import React from 'react';
4
5
  import { IExpression, IExpressionSchema, TExpressionReorder } from '../types';
5
6
  export interface IExpressionBuilderProps {
6
7
  localTemplates?: IReqoreFormTemplates;
@@ -21,6 +22,18 @@ export interface IExpressionBuilderProps {
21
22
  expressions?: IExpressionSchema[];
22
23
  expressionsUrl?: string;
23
24
  serverHandled?: boolean;
25
+ /**
26
+ * SEAM (reqraft): the host's per-`ui_type` editors, forwarded to the operand
27
+ * fields below.
28
+ *
29
+ * Without them an operand whose type is one of the CONSUMER's own ui_types
30
+ * falls through `AutoFormField`'s switch to the literal "Unknown type!" tag.
31
+ * That is what an assertion's `Value` did the moment it was turned into an
32
+ * expression: the field is `test-reference`, an IDE ui_type whose editor the
33
+ * IDE registers through `componentOverrides`, and the builder rendered its
34
+ * operands without them.
35
+ */
36
+ componentOverrides?: Record<string, React.FC<any>>;
24
37
  size?: string;
25
38
  /**
26
39
  * SEAM (reqraft): extra hover actions prepended to each expression card —
@@ -40,6 +53,6 @@ export interface IExpressionBuilderProps {
40
53
  }
41
54
  export interface IExpressionProps extends IExpressionBuilderProps {
42
55
  }
43
- export declare const Expression: ({ localTemplates, value, isChild, index, type, level, path, onValueChange, group, returnType, readOnly, id, expressionsUrl, serverHandled, extraActions, ...props }: IExpressionProps) => import("react/jsx-runtime").JSX.Element;
44
- export declare const ExpressionBuilder: ({ localTemplates, value, isChild, level, index, path, type, returnType, group, onChange, onValueChange, readOnly, expressions, expressionsUrl, serverHandled, extraActions, reorder, }: IExpressionBuilderProps) => import("react/jsx-runtime").JSX.Element;
56
+ export declare const Expression: ({ localTemplates, value, isChild, index, type, level, path, onValueChange, group, returnType, readOnly, id, expressionsUrl, serverHandled, extraActions, componentOverrides, ...props }: IExpressionProps) => import("react/jsx-runtime").JSX.Element;
57
+ export declare const ExpressionBuilder: ({ localTemplates, value, isChild, level, index, path, type, returnType, group, onChange, onValueChange, readOnly, expressions, expressionsUrl, serverHandled, extraActions, componentOverrides, reorder, }: IExpressionBuilderProps) => import("react/jsx-runtime").JSX.Element;
45
58
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAmB1D,OAAO,EAEL,WAAW,EACX,iBAAiB,EAEjB,kBAAkB,EAEnB,MAAM,UAAU,CAAC;AAclB,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;IACvC,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7E,6FAA6F;IAC7F,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EACT,kBAAkB,EAAE,GACpB,CAAC,CAAC,OAAO,EAAE;QACT,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;QACvC,KAAK,CAAC,EAAE,WAAW,CAAC;KACrB,KAAK,kBAAkB,EAAE,CAAC,CAAC;CACjC;AAiBD,MAAM,WAAW,gBAAiB,SAAQ,uBAAuB;CAAG;AAEpE,eAAO,MAAM,UAAU,wKAiBpB,gBAAgB,4CA2kClB,CAAC;AAEF,eAAO,MAAM,iBAAiB,2LAkB3B,uBAAuB,4CA2LzB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/expressions/builder/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,OAAO,KAAiD,MAAM,OAAO,CAAC;AAiBtE,OAAO,EAEL,WAAW,EACX,iBAAiB,EAEjB,kBAAkB,EAEnB,MAAM,UAAU,CAAC;AAclB,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;IACvC,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7E,6FAA6F;IAC7F,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EACT,kBAAkB,EAAE,GACpB,CAAC,CAAC,OAAO,EAAE;QACT,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;QACvC,KAAK,CAAC,EAAE,WAAW,CAAC;KACrB,KAAK,kBAAkB,EAAE,CAAC,CAAC;CACjC;AAiBD,MAAM,WAAW,gBAAiB,SAAQ,uBAAuB;CAAG;AAEpE,eAAO,MAAM,UAAU,4LAkBpB,gBAAgB,4CA+gClB,CAAC;AAEF,eAAO,MAAM,iBAAiB,+MAmB3B,uBAAuB,4CA4LzB,CAAC"}
@@ -70,6 +70,7 @@ var react_1 = __importStar(require("react"));
70
70
  var styled_components_1 = __importDefault(require("styled-components"));
71
71
  var common_1 = require("../../../../helpers/common");
72
72
  var expressions_1 = require("../../../../helpers/expressions");
73
+ var argumentPresence_1 = require("../argumentPresence");
73
74
  var templates_1 = require("../../../../helpers/templates");
74
75
  var validations_1 = require("../../../../helpers/validations");
75
76
  var useQorusTypes_1 = require("../../../../hooks/useQorusTypes");
@@ -97,7 +98,7 @@ var noopUseRegisterHintView = function () {
97
98
  var StyledExpressionItemLabel = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n text-orientation: upright;\n writing-mode: vertical-rl;\n top: calc(50%);\n transform: translateY(-50%);\n white-space: nowrap;\n height: calc(100% - 24px);\n // Centered flex\n display: flex;\n align-items: center;\n justify-content: center;\n border-right: 1px solid ", ";\n"], ["\n position: absolute;\n text-orientation: upright;\n writing-mode: vertical-rl;\n top: calc(50%);\n transform: translateY(-50%);\n white-space: nowrap;\n height: calc(100% - 24px);\n // Centered flex\n display: flex;\n align-items: center;\n justify-content: center;\n border-right: 1px solid ", ";\n"])), function () { return (0, polished_1.rgba)('#fff', 0.3); });
98
99
  var Expression = function (_a) {
99
100
  var _b, _c, _d, _f, _g, _h, _j, _k, _l;
100
- var localTemplates = _a.localTemplates, _m = _a.value, value = _m === void 0 ? types_1.ExpressionDefaultValue : _m, isChild = _a.isChild, index = _a.index, type = _a.type, level = _a.level, path = _a.path, onValueChange = _a.onValueChange, group = _a.group, returnType = _a.returnType, readOnly = _a.readOnly, id = _a.id, expressionsUrl = _a.expressionsUrl, serverHandled = _a.serverHandled, extraActions = _a.extraActions, props = __rest(_a, ["localTemplates", "value", "isChild", "index", "type", "level", "path", "onValueChange", "group", "returnType", "readOnly", "id", "expressionsUrl", "serverHandled", "extraActions"]);
101
+ var localTemplates = _a.localTemplates, _m = _a.value, value = _m === void 0 ? types_1.ExpressionDefaultValue : _m, isChild = _a.isChild, index = _a.index, type = _a.type, level = _a.level, path = _a.path, onValueChange = _a.onValueChange, group = _a.group, returnType = _a.returnType, readOnly = _a.readOnly, id = _a.id, expressionsUrl = _a.expressionsUrl, serverHandled = _a.serverHandled, extraActions = _a.extraActions, componentOverrides = _a.componentOverrides, props = __rest(_a, ["localTemplates", "value", "isChild", "index", "type", "level", "path", "onValueChange", "group", "returnType", "readOnly", "id", "expressionsUrl", "serverHandled", "extraActions", "componentOverrides"]);
101
102
  var types = (0, useQorusTypes_1.useQorusTypes)();
102
103
  var _o = (0, react_1.useState)(false), showSummary = _o[0], setShowSummary = _o[1];
103
104
  var _p = (0, react_1.useState)(undefined), confirmDialogData = _p[0], setConfirmDialogData = _p[1];
@@ -170,53 +171,8 @@ var Expression = function (_a) {
170
171
  }, path);
171
172
  }, [onValueChange, JSON.stringify(value), path]);
172
173
  var addMissingArgs = (0, react_1.useCallback)(function (expression, args) {
173
- var _a;
174
174
  if (args === void 0) { args = []; }
175
- var newArgs = __spreadArray([], args, true);
176
- // Check if this expression has variable arguments
177
- var selectedExpression = (_a = expressions.value) === null || _a === void 0 ? void 0 : _a.find(function (exp) { return exp.name === expression; });
178
- if (selectedExpression.varargs) {
179
- if (selectedExpression.subtype === 2) {
180
- newArgs.push({
181
- is_expression: true,
182
- value: {
183
- args: [],
184
- },
185
- });
186
- }
187
- else {
188
- // Add the number of arguments equal to min_args - 1
189
- newArgs.push.apply(newArgs, Array.from({ length: selectedExpression.min_args - 1 }, function () { return ({
190
- type: selectedExpression.args[0].ui_type === 'richtext' ||
191
- selectedExpression.args[0].ui_type === 'number'
192
- ? selectedExpression.args[0].ui_type
193
- : undefined,
194
- }); }));
195
- }
196
- }
197
- else {
198
- // Check if any of the arguments have a default value
199
- selectedExpression.args.forEach(function (arg, index) {
200
- if (newArgs[index] === undefined ||
201
- (0, lodash_1.size)(newArgs[index]) === 0 ||
202
- (arg.default_value && 'value' in newArgs[index] === false)) {
203
- if (arg.default_value) {
204
- newArgs[index] = {
205
- value: arg.default_value,
206
- type: arg.ui_type,
207
- };
208
- }
209
- else {
210
- newArgs[index] = {
211
- type: arg.ui_type === 'richtext' || arg.ui_type === 'number' || arg.ui_type === 'bool'
212
- ? arg.ui_type
213
- : undefined,
214
- };
215
- }
216
- }
217
- });
218
- }
219
- return newArgs;
175
+ return (0, argumentPresence_1.addMissingExpressionArgs)(expressions.value, expression, args);
220
176
  }, [JSON.stringify(expressions.value)]);
221
177
  var updateExp = (0, react_1.useCallback)(function (val) {
222
178
  var _a;
@@ -320,7 +276,7 @@ var Expression = function (_a) {
320
276
  var updateMultipleArgs = (0, react_1.useCallback)(function (args) {
321
277
  onValueChange(__assign(__assign({}, value), { value: __assign(__assign({}, value.value), { args: addMissingArgs(value.value.exp, args) }) }), path);
322
278
  }, [onValueChange, JSON.stringify(value), path, addMissingArgs]);
323
- var updateArg = (0, react_1.useCallback)(function (val, index, type, isFunction, isRequired) {
279
+ var updateArg = (0, react_1.useCallback)(function (val, index, type, isFunction) {
324
280
  var _a;
325
281
  if (index === void 0) { index = 0; }
326
282
  var args = (0, lodash_1.clone)(value.value.args);
@@ -328,7 +284,14 @@ var Expression = function (_a) {
328
284
  if (newVal === null || newVal === void 0 ? void 0 : newVal.exp) {
329
285
  newVal.args = addMissingArgs(newVal.exp, newVal.args);
330
286
  }
331
- args[index] = __assign(__assign({}, args[index]), { value: newVal, type: !isFunction ? type || ((_a = args[index]) === null || _a === void 0 ? void 0 : _a.type) : undefined, is_expression: isFunction, required: isRequired });
287
+ /* `required` is NOT written here. It is a schema key — it describes the
288
+ catalogue's declaration of the argument, not the author's value, and
289
+ nothing reads it back off a stored argument (validation takes it from
290
+ the schema). Persisting it made a cleared argument indistinguishable
291
+ from real data: the value dropped out as `undefined`, `required: true`
292
+ stayed, and what was saved to the draft was `{type, required}` — an
293
+ argument DEFINITION sitting where its value should be. */
294
+ args[index] = __assign(__assign({}, args[index]), { value: newVal, type: !isFunction ? type || ((_a = args[index]) === null || _a === void 0 ? void 0 : _a.type) : undefined, is_expression: isFunction });
332
295
  onValueChange(__assign(__assign({}, value), { value: __assign(__assign({}, value.value), { args: args }) }), path);
333
296
  }, [addMissingArgs, onValueChange, JSON.stringify(value), path]);
334
297
  var handleRemoveClick = (0, react_1.useCallback)(function () {
@@ -437,11 +400,10 @@ var Expression = function (_a) {
437
400
  updateType(value === 'context' ? undefined : value, true);
438
401
  }, [updateType]);
439
402
  var handleFirstParamChange = (0, react_1.useCallback)(function (_name, value, type, isFunction) {
440
- var _a, _b;
441
403
  if (isFunction || (type !== 'any' && type !== 'auto')) {
442
- updateArg(value, 0, isFunction ? undefined : type, isFunction, (_b = (_a = selectedExpression === null || selectedExpression === void 0 ? void 0 : selectedExpression.args) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.required);
404
+ updateArg(value, 0, isFunction ? undefined : type, isFunction);
443
405
  }
444
- }, [updateArg, JSON.stringify(selectedExpression)]);
406
+ }, [updateArg]);
445
407
  var buildCustomTemplateItems = (0, react_1.useCallback)(function (arg, onClick) {
446
408
  var _a, _b;
447
409
  // If the argument has allowed values or element allowed values, do not allow type changing
@@ -648,7 +610,7 @@ var Expression = function (_a) {
648
610
  setConfirmDialogData(undefined);
649
611
  },
650
612
  },
651
- ], children: confirmDialogData.children })), showSummary && (0, jsx_runtime_1.jsx)(renderTemplate_1.ExpressionRenderTemplate, { exp: value, expressions: expressions.value }), !selectedExpression && !serverExpression && !(firstArgument === null || firstArgument === void 0 ? void 0 : firstArgument.value) && level === 0 ? ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { size: 'small', opaque: false, intent: 'info', children: "Select an operation to start building your expression" })) : ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreControlGroup, { fluid: false, style: { maxWidth: '100%' }, wrap: true, verticalAlign: 'flex-start', size: 'normal', gapSize: 'big', children: [(firstArgSchema === null || firstArgSchema === void 0 ? void 0 : firstArgSchema.label_before) && ((0, jsx_runtime_1.jsx)(argumentDetail_1.ExpressionArgumentDetail, { label: firstArgSchema.label_before })), (0, jsx_runtime_1.jsx)(argumentWrapper_1.ExpressionBuilderArgumentWrapper, { expressions: expressions.value, arg: firstArgument, schema: firstArgSchema, onTypeChange: handleUpdateTypeChange, readOnly: readOnly, reorder: argReorderSurfaces, argIndex: 0, argCount: argCount, dragOver: isDragOverArg(0), onMoveArg: moveVarArg, onArgDragStart: handleArgDragStart, onArgDragOver: handleArgDragOver, onArgDrop: handleArgDrop, onArgDragEnd: handleArgDragEnd, children: (0, jsx_runtime_1.jsx)(TemplateField_1.TemplateField, { component: AutoFormField_1.AutoFormField,
613
+ ], children: confirmDialogData.children })), showSummary && (0, jsx_runtime_1.jsx)(renderTemplate_1.ExpressionRenderTemplate, { exp: value, expressions: expressions.value }), !selectedExpression && !serverExpression && !(firstArgument === null || firstArgument === void 0 ? void 0 : firstArgument.value) && level === 0 ? ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreMessage, { size: 'small', opaque: false, intent: 'info', children: "Select an operation to start building your expression" })) : ((0, jsx_runtime_1.jsxs)(reqore_1.ReqoreControlGroup, { fluid: false, style: { maxWidth: '100%' }, wrap: true, verticalAlign: 'flex-start', size: 'normal', gapSize: 'big', children: [(firstArgSchema === null || firstArgSchema === void 0 ? void 0 : firstArgSchema.label_before) && ((0, jsx_runtime_1.jsx)(argumentDetail_1.ExpressionArgumentDetail, { label: firstArgSchema.label_before })), (0, jsx_runtime_1.jsx)(argumentWrapper_1.ExpressionBuilderArgumentWrapper, { expressions: expressions.value, arg: firstArgument, schema: firstArgSchema, onTypeChange: handleUpdateTypeChange, readOnly: readOnly, reorder: argReorderSurfaces, argIndex: 0, argCount: argCount, dragOver: isDragOverArg(0), onMoveArg: moveVarArg, onArgDragStart: handleArgDragStart, onArgDragOver: handleArgDragOver, onArgDrop: handleArgDrop, onArgDragEnd: handleArgDragEnd, children: (0, jsx_runtime_1.jsx)(TemplateField_1.TemplateField, { component: AutoFormField_1.AutoFormField, componentOverrides: componentOverrides,
652
614
  // SEAM (reqraft): an operand that becomes an expression mounts
653
615
  // its own builder through this TemplateField — hand the host's
654
616
  // actions on, or nesting silently drops them (the group
@@ -688,7 +650,7 @@ var Expression = function (_a) {
688
650
  updateArg(undefined, index + 1, value === 'context' ? undefined : value);
689
651
  }, onRemoveArgClick: function () {
690
652
  removeVarArg(index + 1);
691
- }, hasMultipleArgs: selectedExpression.varargs && (0, lodash_1.size)(rest) > 1, reorder: argReorderSurfaces, argIndex: index + 1, argCount: argCount, dragOver: isDragOverArg(index + 1), onMoveArg: moveVarArg, onArgDragStart: handleArgDragStart, onArgDragOver: handleArgDragOver, onArgDrop: handleArgDrop, onArgDragEnd: handleArgDragEnd, children: (0, jsx_runtime_1.jsx)(TemplateField_1.TemplateField, { minimal: true, component: AutoFormField_1.AutoFormField,
653
+ }, hasMultipleArgs: selectedExpression.varargs && (0, lodash_1.size)(rest) > 1, reorder: argReorderSurfaces, argIndex: index + 1, argCount: argCount, dragOver: isDragOverArg(index + 1), onMoveArg: moveVarArg, onArgDragStart: handleArgDragStart, onArgDragOver: handleArgDragOver, onArgDrop: handleArgDrop, onArgDragEnd: handleArgDragEnd, children: (0, jsx_runtime_1.jsx)(TemplateField_1.TemplateField, { minimal: true, component: AutoFormField_1.AutoFormField, componentOverrides: componentOverrides,
692
654
  // SEAM (reqraft): same as the first operand above.
693
655
  extraActions: extraActions, noSoft: true, level: level + 1, allowFunctions: !(arg === null || arg === void 0 ? void 0 : arg.allowed_values) && !(arg === null || arg === void 0 ? void 0 : arg.element_allowed_values), isFunction: (_a = rest[index]) === null || _a === void 0 ? void 0 : _a.is_expression,
694
656
  // An empty argument has no value to take a type from; fall
@@ -705,7 +667,7 @@ var Expression = function (_a) {
705
667
  !!arg.element_allowed_values ||
706
668
  !!((_h = rest[index]) === null || _h === void 0 ? void 0 : _h.type) ||
707
669
  !!arg.default_value, onChange: (function (_name, value, type, isFunction) {
708
- updateArg(value, index + 1, isFunction ? undefined : type, isFunction, arg.required);
670
+ updateArg(value, index + 1, isFunction ? undefined : type, isFunction);
709
671
  }), fluid: false, fixed: true, disableManagement: true, disabled: readOnly, menuItems: buildCustomTemplateItems(arg, function (type, removeTemplate) {
710
672
  removeTemplate === null || removeTemplate === void 0 ? void 0 : removeTemplate();
711
673
  updateArg(undefined, index + 1, type.name === 'context' ? undefined : type.name);
@@ -716,7 +678,7 @@ var Expression = function (_a) {
716
678
  exports.Expression = Expression;
717
679
  var ExpressionBuilder = function (_a) {
718
680
  var _b, _c, _d;
719
- var localTemplates = _a.localTemplates, _f = _a.value, value = _f === void 0 ? types_1.ExpressionDefaultValue : _f, isChild = _a.isChild, _g = _a.level, level = _g === void 0 ? 0 : _g, _h = _a.index, index = _h === void 0 ? 0 : _h, path = _a.path, type = _a.type, returnType = _a.returnType, group = _a.group, onChange = _a.onChange, onValueChange = _a.onValueChange, readOnly = _a.readOnly, expressions = _a.expressions, expressionsUrl = _a.expressionsUrl, serverHandled = _a.serverHandled, extraActions = _a.extraActions, reorder = _a.reorder;
681
+ var localTemplates = _a.localTemplates, _f = _a.value, value = _f === void 0 ? types_1.ExpressionDefaultValue : _f, isChild = _a.isChild, _g = _a.level, level = _g === void 0 ? 0 : _g, _h = _a.index, index = _h === void 0 ? 0 : _h, path = _a.path, type = _a.type, returnType = _a.returnType, group = _a.group, onChange = _a.onChange, onValueChange = _a.onValueChange, readOnly = _a.readOnly, expressions = _a.expressions, expressionsUrl = _a.expressionsUrl, serverHandled = _a.serverHandled, extraActions = _a.extraActions, componentOverrides = _a.componentOverrides, reorder = _a.reorder;
720
682
  var templates = (0, useTemplates_1.useTemplates)(!isChild, localTemplates);
721
683
  var theme = (0, reqore_1.useReqoreTheme)();
722
684
  var _j = (0, react_1.useState)(false), showSummary = _j[0], setShowSummary = _j[1];
@@ -799,7 +761,7 @@ var ExpressionBuilder = function (_a) {
799
761
  marginLeft: 10,
800
762
  } }))] }, index)); })] }) }) }));
801
763
  }
802
- return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreErrorBoundary, { children: (0, jsx_runtime_1.jsx)(exports.Expression, { localTemplates: templates.value, value: value, isChild: isChild, type: type, returnType: returnType, level: level, path: path, index: index, onValueChange: handleChange, group: group, readOnly: readOnly, expressions: expressions, expressionsUrl: expressionsUrl, id: level === 0 && index === 0 ? 'expression-builder' : undefined, serverHandled: serverHandled, extraActions: extraActions, reorder: reorder }) }));
764
+ return ((0, jsx_runtime_1.jsx)(reqore_1.ReqoreErrorBoundary, { children: (0, jsx_runtime_1.jsx)(exports.Expression, { localTemplates: templates.value, value: value, isChild: isChild, type: type, returnType: returnType, level: level, path: path, index: index, onValueChange: handleChange, group: group, readOnly: readOnly, expressions: expressions, expressionsUrl: expressionsUrl, id: level === 0 && index === 0 ? 'expression-builder' : undefined, serverHandled: serverHandled, extraActions: extraActions, componentOverrides: componentOverrides, reorder: reorder }) }));
803
765
  };
804
766
  exports.ExpressionBuilder = ExpressionBuilder;
805
767
  var templateObject_1;