@verbb/plugin-kit-react 1.0.10 → 2.0.0

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 (728) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +91 -16
  3. package/dist/app/PluginKitProvider.d.ts +28 -0
  4. package/dist/app/PluginKitProvider.d.ts.map +1 -0
  5. package/dist/app/PluginKitProvider.js +39 -0
  6. package/dist/app/PluginKitProvider.js.map +1 -0
  7. package/dist/app/configure.d.ts +29 -0
  8. package/dist/app/configure.d.ts.map +1 -0
  9. package/dist/app/configure.js +35 -0
  10. package/dist/app/configure.js.map +1 -0
  11. package/dist/app/index.d.ts +5 -0
  12. package/dist/app/index.d.ts.map +1 -0
  13. package/dist/app/index.js +5 -0
  14. package/dist/app/mountShadowApp.d.ts +6 -0
  15. package/dist/app/mountShadowApp.d.ts.map +1 -0
  16. package/dist/app/mountShadowApp.js +2 -0
  17. package/dist/components/Button.d.ts +26 -25
  18. package/dist/components/Button.d.ts.map +1 -1
  19. package/dist/components/Button.js +34 -141
  20. package/dist/components/Button.js.map +1 -1
  21. package/dist/components/ButtonGroup.d.ts +15 -10
  22. package/dist/components/ButtonGroup.d.ts.map +1 -1
  23. package/dist/components/ButtonGroup.js +24 -54
  24. package/dist/components/ButtonGroup.js.map +1 -1
  25. package/dist/components/Calendar.d.ts +17 -10
  26. package/dist/components/Calendar.d.ts.map +1 -1
  27. package/dist/components/Calendar.js +17 -129
  28. package/dist/components/Calendar.js.map +1 -1
  29. package/dist/components/Checkbox.d.ts +27 -4
  30. package/dist/components/Checkbox.d.ts.map +1 -1
  31. package/dist/components/Checkbox.js +37 -34
  32. package/dist/components/Checkbox.js.map +1 -1
  33. package/dist/components/CheckboxInput.d.ts +10 -10
  34. package/dist/components/CheckboxInput.d.ts.map +1 -1
  35. package/dist/components/CheckboxInput.js +30 -10
  36. package/dist/components/CheckboxInput.js.map +1 -1
  37. package/dist/components/CheckboxSelect.d.ts +18 -17
  38. package/dist/components/CheckboxSelect.d.ts.map +1 -1
  39. package/dist/components/CheckboxSelect.js +30 -58
  40. package/dist/components/CheckboxSelect.js.map +1 -1
  41. package/dist/components/CodeEditor.d.ts +16 -10
  42. package/dist/components/CodeEditor.d.ts.map +1 -1
  43. package/dist/components/CodeEditor.js +32 -71
  44. package/dist/components/CodeEditor.js.map +1 -1
  45. package/dist/components/ColorInput.d.ts +25 -12
  46. package/dist/components/ColorInput.d.ts.map +1 -1
  47. package/dist/components/ColorInput.js +42 -142
  48. package/dist/components/ColorInput.js.map +1 -1
  49. package/dist/components/Combobox.d.ts +31 -39
  50. package/dist/components/Combobox.d.ts.map +1 -1
  51. package/dist/components/Combobox.js +47 -385
  52. package/dist/components/Combobox.js.map +1 -1
  53. package/dist/components/ComboboxInput.d.ts +34 -17
  54. package/dist/components/ComboboxInput.d.ts.map +1 -1
  55. package/dist/components/ComboboxInput.js +81 -161
  56. package/dist/components/ComboboxInput.js.map +1 -1
  57. package/dist/components/CopyButton.d.ts +12 -8
  58. package/dist/components/CopyButton.d.ts.map +1 -1
  59. package/dist/components/CopyButton.js +15 -36
  60. package/dist/components/CopyButton.js.map +1 -1
  61. package/dist/components/DatePicker.d.ts +28 -7
  62. package/dist/components/DatePicker.d.ts.map +1 -1
  63. package/dist/components/DatePicker.js +82 -53
  64. package/dist/components/DatePicker.js.map +1 -1
  65. package/dist/components/Dialog.d.ts +20 -20
  66. package/dist/components/Dialog.d.ts.map +1 -1
  67. package/dist/components/Dialog.js +50 -175
  68. package/dist/components/Dialog.js.map +1 -1
  69. package/dist/components/DropdownMenu.d.ts +39 -46
  70. package/dist/components/DropdownMenu.d.ts.map +1 -1
  71. package/dist/components/DropdownMenu.js +40 -232
  72. package/dist/components/DropdownMenu.js.map +1 -1
  73. package/dist/components/EditableTable.d.ts +82 -27
  74. package/dist/components/EditableTable.d.ts.map +1 -1
  75. package/dist/components/EditableTable.js +183 -133
  76. package/dist/components/EditableTable.js.map +1 -1
  77. package/dist/components/Field.d.ts +13 -0
  78. package/dist/components/Field.d.ts.map +1 -0
  79. package/dist/components/Field.js +32 -0
  80. package/dist/components/Field.js.map +1 -0
  81. package/dist/components/Icon.d.ts +7 -0
  82. package/dist/components/Icon.d.ts.map +1 -0
  83. package/dist/components/Icon.js +15 -0
  84. package/dist/components/Icon.js.map +1 -0
  85. package/dist/components/Input.d.ts +20 -8
  86. package/dist/components/Input.d.ts.map +1 -1
  87. package/dist/components/Input.js +37 -34
  88. package/dist/components/Input.js.map +1 -1
  89. package/dist/components/InputGroup.d.ts +39 -19
  90. package/dist/components/InputGroup.d.ts.map +1 -1
  91. package/dist/components/InputGroup.js +83 -102
  92. package/dist/components/InputGroup.js.map +1 -1
  93. package/dist/components/Lightswitch.d.ts +15 -8
  94. package/dist/components/Lightswitch.d.ts.map +1 -1
  95. package/dist/components/Lightswitch.js +22 -47
  96. package/dist/components/Lightswitch.js.map +1 -1
  97. package/dist/components/Popover.d.ts +23 -11
  98. package/dist/components/Popover.d.ts.map +1 -1
  99. package/dist/components/Popover.js +46 -65
  100. package/dist/components/Popover.js.map +1 -1
  101. package/dist/components/Popup.d.ts +14 -0
  102. package/dist/components/Popup.d.ts.map +1 -0
  103. package/dist/components/Popup.js +19 -0
  104. package/dist/components/Popup.js.map +1 -0
  105. package/dist/components/RadioGroup.d.ts +26 -5
  106. package/dist/components/RadioGroup.d.ts.map +1 -1
  107. package/dist/components/RadioGroup.js +56 -26
  108. package/dist/components/RadioGroup.js.map +1 -1
  109. package/dist/components/RadioGroupInput.d.ts +19 -0
  110. package/dist/components/RadioGroupInput.d.ts.map +1 -0
  111. package/dist/components/RadioGroupInput.js +35 -0
  112. package/dist/components/RadioGroupInput.js.map +1 -0
  113. package/dist/components/ScrollArea.d.ts +11 -15
  114. package/dist/components/ScrollArea.d.ts.map +1 -1
  115. package/dist/components/ScrollArea.js +11 -42
  116. package/dist/components/ScrollArea.js.map +1 -1
  117. package/dist/components/Select.d.ts +46 -22
  118. package/dist/components/Select.d.ts.map +1 -1
  119. package/dist/components/Select.js +74 -196
  120. package/dist/components/Select.js.map +1 -1
  121. package/dist/components/SelectInput.d.ts +28 -21
  122. package/dist/components/SelectInput.d.ts.map +1 -1
  123. package/dist/components/SelectInput.js +62 -76
  124. package/dist/components/SelectInput.js.map +1 -1
  125. package/dist/components/Separator.d.ts +7 -3
  126. package/dist/components/Separator.d.ts.map +1 -1
  127. package/dist/components/Separator.js +11 -13
  128. package/dist/components/Separator.js.map +1 -1
  129. package/dist/components/Spinner.d.ts +12 -8
  130. package/dist/components/Spinner.d.ts.map +1 -1
  131. package/dist/components/Spinner.js +15 -34
  132. package/dist/components/Spinner.js.map +1 -1
  133. package/dist/components/Status.d.ts +7 -7
  134. package/dist/components/Status.d.ts.map +1 -1
  135. package/dist/components/Status.js +11 -51
  136. package/dist/components/Status.js.map +1 -1
  137. package/dist/components/Tabs.d.ts +31 -7
  138. package/dist/components/Tabs.d.ts.map +1 -1
  139. package/dist/components/Tabs.js +57 -30
  140. package/dist/components/Tabs.js.map +1 -1
  141. package/dist/components/Textarea.d.ts +18 -7
  142. package/dist/components/Textarea.d.ts.map +1 -1
  143. package/dist/components/Textarea.js +33 -18
  144. package/dist/components/Textarea.js.map +1 -1
  145. package/dist/components/TimePicker.d.ts +18 -8
  146. package/dist/components/TimePicker.d.ts.map +1 -1
  147. package/dist/components/TimePicker.js +38 -36
  148. package/dist/components/TimePicker.js.map +1 -1
  149. package/dist/components/Tiptap.d.ts +43 -0
  150. package/dist/components/Tiptap.d.ts.map +1 -0
  151. package/dist/components/Tiptap.js +96 -0
  152. package/dist/components/Tiptap.js.map +1 -0
  153. package/dist/components/Toggle.d.ts +13 -8
  154. package/dist/components/Toggle.d.ts.map +1 -1
  155. package/dist/components/Toggle.js +13 -42
  156. package/dist/components/Toggle.js.map +1 -1
  157. package/dist/components/ToggleGroup.d.ts +11 -10
  158. package/dist/components/ToggleGroup.d.ts.map +1 -1
  159. package/dist/components/ToggleGroup.js +11 -65
  160. package/dist/components/ToggleGroup.js.map +1 -1
  161. package/dist/components/Tooltip.d.ts +18 -8
  162. package/dist/components/Tooltip.d.ts.map +1 -1
  163. package/dist/components/Tooltip.js +18 -47
  164. package/dist/components/Tooltip.js.map +1 -1
  165. package/dist/components/index.d.ts +37 -45
  166. package/dist/components/index.d.ts.map +1 -1
  167. package/dist/components/index.js +35 -43
  168. package/dist/fault/AppFaultBoundary.d.ts +18 -0
  169. package/dist/fault/AppFaultBoundary.d.ts.map +1 -0
  170. package/dist/fault/AppFaultBoundary.js +24 -0
  171. package/dist/fault/AppFaultBoundary.js.map +1 -0
  172. package/dist/fault/AppFaultProvider.d.ts +43 -0
  173. package/dist/fault/AppFaultProvider.d.ts.map +1 -0
  174. package/dist/fault/AppFaultProvider.js +192 -0
  175. package/dist/fault/AppFaultProvider.js.map +1 -0
  176. package/dist/fault/FaultFallback.d.ts +16 -0
  177. package/dist/fault/FaultFallback.d.ts.map +1 -0
  178. package/dist/fault/FaultFallback.js +67 -0
  179. package/dist/fault/FaultFallback.js.map +1 -0
  180. package/dist/fault/buildSupportBundle.d.ts +3 -0
  181. package/dist/fault/buildSupportBundle.d.ts.map +1 -0
  182. package/dist/fault/buildSupportBundle.js +22 -0
  183. package/dist/fault/buildSupportBundle.js.map +1 -0
  184. package/dist/fault/index.d.ts +8 -0
  185. package/dist/fault/index.d.ts.map +1 -0
  186. package/dist/fault/index.js +7 -0
  187. package/dist/fault/isIgnorableGlobalError.d.ts +3 -0
  188. package/dist/fault/isIgnorableGlobalError.d.ts.map +1 -0
  189. package/dist/fault/isIgnorableGlobalError.js +14 -0
  190. package/dist/fault/isIgnorableGlobalError.js.map +1 -0
  191. package/dist/fault/types.d.ts +18 -0
  192. package/dist/fault/types.d.ts.map +1 -0
  193. package/dist/fault/useUiWatchdog.d.ts +13 -0
  194. package/dist/fault/useUiWatchdog.d.ts.map +1 -0
  195. package/dist/fault/useUiWatchdog.js +38 -0
  196. package/dist/fault/useUiWatchdog.js.map +1 -0
  197. package/dist/forms/Field.d.ts +19 -31
  198. package/dist/forms/Field.d.ts.map +1 -1
  199. package/dist/forms/Field.js +28 -164
  200. package/dist/forms/Field.js.map +1 -1
  201. package/dist/forms/SchemaFormEngine.d.ts +5 -4
  202. package/dist/forms/SchemaFormEngine.d.ts.map +1 -1
  203. package/dist/forms/SchemaFormEngine.js +36 -16
  204. package/dist/forms/SchemaFormEngine.js.map +1 -1
  205. package/dist/forms/SchemaFormFieldNode.d.ts +13 -0
  206. package/dist/forms/SchemaFormFieldNode.d.ts.map +1 -0
  207. package/dist/forms/SchemaFormFieldNode.js +48 -0
  208. package/dist/forms/SchemaFormFieldNode.js.map +1 -0
  209. package/dist/forms/assertSchemaRegistry.d.ts +18 -0
  210. package/dist/forms/assertSchemaRegistry.d.ts.map +1 -0
  211. package/dist/forms/assertSchemaRegistry.js +71 -0
  212. package/dist/forms/assertSchemaRegistry.js.map +1 -0
  213. package/dist/forms/builtin-field-loaders.d.ts +11 -0
  214. package/dist/forms/builtin-field-loaders.d.ts.map +1 -0
  215. package/dist/forms/builtin-field-loaders.js +31 -0
  216. package/dist/forms/builtin-field-loaders.js.map +1 -0
  217. package/dist/forms/components/FieldWrap.d.ts +7 -1
  218. package/dist/forms/components/FieldWrap.d.ts.map +1 -1
  219. package/dist/forms/components/FieldWrap.js +17 -23
  220. package/dist/forms/components/FieldWrap.js.map +1 -1
  221. package/dist/forms/components/ModalTabs.d.ts +28 -13
  222. package/dist/forms/components/ModalTabs.d.ts.map +1 -1
  223. package/dist/forms/components/ModalTabs.js +99 -30
  224. package/dist/forms/components/ModalTabs.js.map +1 -1
  225. package/dist/forms/components/index.d.ts +3 -2
  226. package/dist/forms/components/index.d.ts.map +1 -1
  227. package/dist/forms/components/schemaErrors.d.ts +5 -0
  228. package/dist/forms/components/schemaErrors.d.ts.map +1 -0
  229. package/dist/forms/components/schemaErrors.js +34 -0
  230. package/dist/forms/components/schemaErrors.js.map +1 -0
  231. package/dist/forms/datetime.d.ts +12 -0
  232. package/dist/forms/datetime.d.ts.map +1 -0
  233. package/dist/forms/datetime.js +34 -0
  234. package/dist/forms/datetime.js.map +1 -0
  235. package/dist/forms/engine/context.d.ts +4 -19
  236. package/dist/forms/engine/context.d.ts.map +1 -1
  237. package/dist/forms/engine/context.js.map +1 -1
  238. package/dist/forms/fields/CheckboxSelectField.d.ts +3 -3
  239. package/dist/forms/fields/CheckboxSelectField.d.ts.map +1 -1
  240. package/dist/forms/fields/CheckboxSelectField.js +1 -3
  241. package/dist/forms/fields/CheckboxSelectField.js.map +1 -1
  242. package/dist/forms/fields/CodeEditorField.d.ts +3 -3
  243. package/dist/forms/fields/CodeEditorField.d.ts.map +1 -1
  244. package/dist/forms/fields/CodeEditorField.js +7 -7
  245. package/dist/forms/fields/CodeEditorField.js.map +1 -1
  246. package/dist/forms/fields/ColorField.d.ts +1 -1
  247. package/dist/forms/fields/ColorField.d.ts.map +1 -1
  248. package/dist/forms/fields/ColorField.js +4 -5
  249. package/dist/forms/fields/ColorField.js.map +1 -1
  250. package/dist/forms/fields/ComboboxField.d.ts +4 -5
  251. package/dist/forms/fields/ComboboxField.d.ts.map +1 -1
  252. package/dist/forms/fields/ComboboxField.js +2 -5
  253. package/dist/forms/fields/ComboboxField.js.map +1 -1
  254. package/dist/forms/fields/DateTimeField.d.ts +1 -1
  255. package/dist/forms/fields/DateTimeField.d.ts.map +1 -1
  256. package/dist/forms/fields/DateTimeField.js +22 -18
  257. package/dist/forms/fields/DateTimeField.js.map +1 -1
  258. package/dist/forms/fields/GroupField.d.ts +2 -2
  259. package/dist/forms/fields/GroupField.d.ts.map +1 -1
  260. package/dist/forms/fields/GroupField.js +0 -1
  261. package/dist/forms/fields/GroupField.js.map +1 -1
  262. package/dist/forms/fields/LightswitchField.d.ts +1 -1
  263. package/dist/forms/fields/LightswitchField.d.ts.map +1 -1
  264. package/dist/forms/fields/LightswitchField.js +2 -6
  265. package/dist/forms/fields/LightswitchField.js.map +1 -1
  266. package/dist/forms/fields/NumberField.d.ts +1 -1
  267. package/dist/forms/fields/NumberField.d.ts.map +1 -1
  268. package/dist/forms/fields/NumberField.js +4 -5
  269. package/dist/forms/fields/NumberField.js.map +1 -1
  270. package/dist/forms/fields/RadioGroupField.d.ts +2 -2
  271. package/dist/forms/fields/RadioGroupField.d.ts.map +1 -1
  272. package/dist/forms/fields/RadioGroupField.js +14 -39
  273. package/dist/forms/fields/RadioGroupField.js.map +1 -1
  274. package/dist/forms/fields/SelectField.d.ts +2 -2
  275. package/dist/forms/fields/SelectField.d.ts.map +1 -1
  276. package/dist/forms/fields/SelectField.js +1 -2
  277. package/dist/forms/fields/SelectField.js.map +1 -1
  278. package/dist/forms/fields/TextField.d.ts +1 -1
  279. package/dist/forms/fields/TextField.d.ts.map +1 -1
  280. package/dist/forms/fields/TextField.js +3 -4
  281. package/dist/forms/fields/TextField.js.map +1 -1
  282. package/dist/forms/fields/TextareaField.d.ts +1 -1
  283. package/dist/forms/fields/TextareaField.d.ts.map +1 -1
  284. package/dist/forms/fields/TextareaField.js +3 -5
  285. package/dist/forms/fields/TextareaField.js.map +1 -1
  286. package/dist/forms/index.d.ts +12 -7
  287. package/dist/forms/index.d.ts.map +1 -1
  288. package/dist/forms/index.js +9 -7
  289. package/dist/forms/registry.d.ts +4 -1
  290. package/dist/forms/registry.d.ts.map +1 -1
  291. package/dist/forms/registry.js +18 -50
  292. package/dist/forms/registry.js.map +1 -1
  293. package/dist/forms/useEngineField.d.ts +1 -1
  294. package/dist/forms/useEngineField.d.ts.map +1 -1
  295. package/dist/forms/useEngineField.js.map +1 -1
  296. package/dist/forms/utils.d.ts +6 -0
  297. package/dist/forms/utils.d.ts.map +1 -0
  298. package/dist/forms/utils.js +14 -0
  299. package/dist/forms/utils.js.map +1 -0
  300. package/dist/hooks/index.d.ts +1 -2
  301. package/dist/hooks/index.d.ts.map +1 -1
  302. package/dist/hooks/index.js +1 -2
  303. package/dist/hooks/useTranslation.d.ts +2 -1
  304. package/dist/hooks/useTranslation.d.ts.map +1 -1
  305. package/dist/hooks/useTranslation.js +3 -5
  306. package/dist/hooks/useTranslation.js.map +1 -1
  307. package/dist/index.d.ts +2 -1
  308. package/dist/index.d.ts.map +1 -1
  309. package/dist/index.js +42 -2
  310. package/dist/utils/cn.d.ts +4 -0
  311. package/dist/utils/cn.d.ts.map +1 -0
  312. package/dist/utils/cn.js +11 -0
  313. package/dist/utils/cn.js.map +1 -0
  314. package/dist/utils/craftHostBridge.d.ts +3 -2
  315. package/dist/utils/craftHostBridge.d.ts.map +1 -1
  316. package/dist/utils/craftHostBridge.js +1 -0
  317. package/dist/utils/craftHostBridge.js.map +1 -1
  318. package/dist/utils/create-plugin-kit-component.d.ts +16 -0
  319. package/dist/utils/create-plugin-kit-component.d.ts.map +1 -0
  320. package/dist/utils/create-plugin-kit-component.js +97 -0
  321. package/dist/utils/create-plugin-kit-component.js.map +1 -0
  322. package/dist/utils/index.d.ts +8 -19
  323. package/dist/utils/index.d.ts.map +1 -1
  324. package/dist/utils/index.js +7 -74
  325. package/dist/utils/isHostEvent.d.ts +7 -0
  326. package/dist/utils/isHostEvent.d.ts.map +1 -0
  327. package/dist/utils/isHostEvent.js +13 -0
  328. package/dist/utils/isHostEvent.js.map +1 -0
  329. package/dist/utils/lit-react-booleans.d.ts +9 -0
  330. package/dist/utils/lit-react-booleans.d.ts.map +1 -0
  331. package/dist/utils/lit-react-booleans.js +17 -0
  332. package/dist/utils/lit-react-booleans.js.map +1 -0
  333. package/dist/utils/pk-change.d.ts +5 -0
  334. package/dist/utils/pk-change.d.ts.map +1 -0
  335. package/dist/utils/pk-change.js +13 -0
  336. package/dist/utils/pk-change.js.map +1 -0
  337. package/package.json +34 -80
  338. package/style.css +16 -0
  339. package/tailwind-preflight-scope.css +28 -0
  340. package/tailwind-theme.css +245 -0
  341. package/vite-dev.mjs +22 -2
  342. package/dist/_virtual/_rolldown/runtime.js +0 -34
  343. package/dist/components/Command.d.ts +0 -26
  344. package/dist/components/Command.d.ts.map +0 -1
  345. package/dist/components/Command.js +0 -94
  346. package/dist/components/Command.js.map +0 -1
  347. package/dist/components/FadeIn.d.ts +0 -12
  348. package/dist/components/FadeIn.d.ts.map +0 -1
  349. package/dist/components/FadeIn.js +0 -24
  350. package/dist/components/FadeIn.js.map +0 -1
  351. package/dist/components/Label.d.ts +0 -4
  352. package/dist/components/Label.d.ts.map +0 -1
  353. package/dist/components/Label.js +0 -15
  354. package/dist/components/Label.js.map +0 -1
  355. package/dist/components/Markdown.d.ts +0 -11
  356. package/dist/components/Markdown.d.ts.map +0 -1
  357. package/dist/components/Markdown.js +0 -46
  358. package/dist/components/Markdown.js.map +0 -1
  359. package/dist/components/MenuButton.d.ts +0 -40
  360. package/dist/components/MenuButton.d.ts.map +0 -1
  361. package/dist/components/MenuButton.js +0 -122
  362. package/dist/components/MenuButton.js.map +0 -1
  363. package/dist/components/ModalTabs.d.ts +0 -8
  364. package/dist/components/ModalTabs.d.ts.map +0 -1
  365. package/dist/components/ModalTabs.js +0 -37
  366. package/dist/components/ModalTabs.js.map +0 -1
  367. package/dist/components/PaneTabs.d.ts +0 -8
  368. package/dist/components/PaneTabs.d.ts.map +0 -1
  369. package/dist/components/PaneTabs.js +0 -37
  370. package/dist/components/PaneTabs.js.map +0 -1
  371. package/dist/components/SlideUp.d.ts +0 -12
  372. package/dist/components/SlideUp.d.ts.map +0 -1
  373. package/dist/components/SlideUp.js +0 -36
  374. package/dist/components/SlideUp.js.map +0 -1
  375. package/dist/components/Slot.d.ts +0 -6
  376. package/dist/components/Slot.d.ts.map +0 -1
  377. package/dist/components/Slot.js +0 -52
  378. package/dist/components/Slot.js.map +0 -1
  379. package/dist/components/Table.d.ts +0 -10
  380. package/dist/components/Table.d.ts.map +0 -1
  381. package/dist/components/Table.js +0 -64
  382. package/dist/components/Table.js.map +0 -1
  383. package/dist/components/TiptapContent.d.ts +0 -9
  384. package/dist/components/TiptapContent.d.ts.map +0 -1
  385. package/dist/components/TiptapContent.js +0 -43
  386. package/dist/components/TiptapContent.js.map +0 -1
  387. package/dist/components/TiptapEditor.d.ts +0 -43
  388. package/dist/components/TiptapEditor.d.ts.map +0 -1
  389. package/dist/components/TiptapEditor.js +0 -573
  390. package/dist/components/TiptapEditor.js.map +0 -1
  391. package/dist/components/TiptapInput.d.ts +0 -20
  392. package/dist/components/TiptapInput.d.ts.map +0 -1
  393. package/dist/components/TiptapInput.js +0 -140
  394. package/dist/components/TiptapInput.js.map +0 -1
  395. package/dist/components/VirtualizedScrollArea.d.ts +0 -25
  396. package/dist/components/VirtualizedScrollArea.d.ts.map +0 -1
  397. package/dist/components/VirtualizedScrollArea.js +0 -80
  398. package/dist/components/VirtualizedScrollArea.js.map +0 -1
  399. package/dist/components/editable-table/RowDataCells.d.ts +0 -3
  400. package/dist/components/editable-table/RowDataCells.d.ts.map +0 -1
  401. package/dist/components/editable-table/RowDataCells.js +0 -33
  402. package/dist/components/editable-table/RowDataCells.js.map +0 -1
  403. package/dist/components/editable-table/TableCell.d.ts +0 -13
  404. package/dist/components/editable-table/TableCell.d.ts.map +0 -1
  405. package/dist/components/editable-table/TableCell.js +0 -415
  406. package/dist/components/editable-table/TableCell.js.map +0 -1
  407. package/dist/components/editable-table/TableRow.d.ts +0 -3
  408. package/dist/components/editable-table/TableRow.d.ts.map +0 -1
  409. package/dist/components/editable-table/TableRow.js +0 -166
  410. package/dist/components/editable-table/TableRow.js.map +0 -1
  411. package/dist/components/editable-table/helpers.d.ts +0 -12
  412. package/dist/components/editable-table/helpers.d.ts.map +0 -1
  413. package/dist/components/editable-table/helpers.js +0 -23
  414. package/dist/components/editable-table/helpers.js.map +0 -1
  415. package/dist/components/editable-table/index.d.ts +0 -4
  416. package/dist/components/editable-table/index.d.ts.map +0 -1
  417. package/dist/components/editable-table/index.js +0 -4
  418. package/dist/components/editable-table/types.d.ts +0 -55
  419. package/dist/components/editable-table/types.d.ts.map +0 -1
  420. package/dist/components/editable-table/types.js +0 -0
  421. package/dist/components/editable-table/useEditableTableCellChange.d.ts +0 -17
  422. package/dist/components/editable-table/useEditableTableCellChange.d.ts.map +0 -1
  423. package/dist/components/editable-table/useEditableTableCellChange.js +0 -152
  424. package/dist/components/editable-table/useEditableTableCellChange.js.map +0 -1
  425. package/dist/components/editable-table/useEditableTableDnd.d.ts +0 -18
  426. package/dist/components/editable-table/useEditableTableDnd.d.ts.map +0 -1
  427. package/dist/components/editable-table/useEditableTableDnd.js +0 -55
  428. package/dist/components/editable-table/useEditableTableDnd.js.map +0 -1
  429. package/dist/components/editable-table/useEditableTableRows.d.ts +0 -17
  430. package/dist/components/editable-table/useEditableTableRows.d.ts.map +0 -1
  431. package/dist/components/editable-table/useEditableTableRows.js +0 -108
  432. package/dist/components/editable-table/useEditableTableRows.js.map +0 -1
  433. package/dist/components/tiptap/InlineVariablePickerPopover.d.ts +0 -24
  434. package/dist/components/tiptap/InlineVariablePickerPopover.d.ts.map +0 -1
  435. package/dist/components/tiptap/InlineVariablePickerPopover.js +0 -63
  436. package/dist/components/tiptap/InlineVariablePickerPopover.js.map +0 -1
  437. package/dist/components/tiptap/InsertLinkDialog.d.ts +0 -14
  438. package/dist/components/tiptap/InsertLinkDialog.d.ts.map +0 -1
  439. package/dist/components/tiptap/InsertLinkDialog.js +0 -145
  440. package/dist/components/tiptap/InsertLinkDialog.js.map +0 -1
  441. package/dist/components/tiptap/LinkBubbleMenu.d.ts +0 -10
  442. package/dist/components/tiptap/LinkBubbleMenu.d.ts.map +0 -1
  443. package/dist/components/tiptap/LinkBubbleMenu.js +0 -106
  444. package/dist/components/tiptap/LinkBubbleMenu.js.map +0 -1
  445. package/dist/components/tiptap/LinkDropdown.d.ts +0 -53
  446. package/dist/components/tiptap/LinkDropdown.d.ts.map +0 -1
  447. package/dist/components/tiptap/LinkDropdown.js +0 -155
  448. package/dist/components/tiptap/LinkDropdown.js.map +0 -1
  449. package/dist/components/tiptap/VariableCommandList.d.ts +0 -37
  450. package/dist/components/tiptap/VariableCommandList.d.ts.map +0 -1
  451. package/dist/components/tiptap/VariableCommandList.js +0 -166
  452. package/dist/components/tiptap/VariableCommandList.js.map +0 -1
  453. package/dist/components/tiptap/VariableDropdown.d.ts +0 -40
  454. package/dist/components/tiptap/VariableDropdown.d.ts.map +0 -1
  455. package/dist/components/tiptap/VariableDropdown.js +0 -121
  456. package/dist/components/tiptap/VariableDropdown.js.map +0 -1
  457. package/dist/components/tiptap/VariablePickerContext.d.ts +0 -58
  458. package/dist/components/tiptap/VariablePickerContext.d.ts.map +0 -1
  459. package/dist/components/tiptap/VariablePickerContext.js +0 -34
  460. package/dist/components/tiptap/VariablePickerContext.js.map +0 -1
  461. package/dist/components/tiptap/VariableTag.d.ts +0 -6
  462. package/dist/components/tiptap/VariableTag.d.ts.map +0 -1
  463. package/dist/components/tiptap/VariableTag.js +0 -153
  464. package/dist/components/tiptap/VariableTag.js.map +0 -1
  465. package/dist/components/tiptap/VariableTagView.d.ts +0 -3
  466. package/dist/components/tiptap/VariableTagView.d.ts.map +0 -1
  467. package/dist/components/tiptap/VariableTagView.js +0 -584
  468. package/dist/components/tiptap/VariableTagView.js.map +0 -1
  469. package/dist/components/tiptap/VariableTransformControls.d.ts +0 -37
  470. package/dist/components/tiptap/VariableTransformControls.d.ts.map +0 -1
  471. package/dist/components/tiptap/VariableTransformControls.js +0 -157
  472. package/dist/components/tiptap/VariableTransformControls.js.map +0 -1
  473. package/dist/components/tiptap/editorConfig.d.ts +0 -15
  474. package/dist/components/tiptap/editorConfig.d.ts.map +0 -1
  475. package/dist/components/tiptap/editorConfig.js +0 -191
  476. package/dist/components/tiptap/editorConfig.js.map +0 -1
  477. package/dist/components/tiptap/useInlineVariablePicker.d.ts +0 -34
  478. package/dist/components/tiptap/useInlineVariablePicker.d.ts.map +0 -1
  479. package/dist/components/tiptap/useInlineVariablePicker.js +0 -240
  480. package/dist/components/tiptap/useInlineVariablePicker.js.map +0 -1
  481. package/dist/components/tiptap/useVariablePicker.d.ts +0 -28
  482. package/dist/components/tiptap/useVariablePicker.d.ts.map +0 -1
  483. package/dist/components/tiptap/useVariablePicker.js +0 -122
  484. package/dist/components/tiptap/useVariablePicker.js.map +0 -1
  485. package/dist/components/tiptap/variablePickerUtils.d.ts +0 -11
  486. package/dist/components/tiptap/variablePickerUtils.d.ts.map +0 -1
  487. package/dist/components/tiptap/variablePickerUtils.js +0 -63
  488. package/dist/components/tiptap/variablePickerUtils.js.map +0 -1
  489. package/dist/components/tiptap/variableSerialization.d.ts +0 -53
  490. package/dist/components/tiptap/variableSerialization.d.ts.map +0 -1
  491. package/dist/components/tiptap/variableSerialization.js +0 -291
  492. package/dist/components/tiptap/variableSerialization.js.map +0 -1
  493. package/dist/css/core.css +0 -288
  494. package/dist/css/style.css +0 -295
  495. package/dist/forms/TranslationIcon.d.ts +0 -5
  496. package/dist/forms/TranslationIcon.d.ts.map +0 -1
  497. package/dist/forms/TranslationIcon.js +0 -18
  498. package/dist/forms/TranslationIcon.js.map +0 -1
  499. package/dist/forms/components/index.js +0 -3
  500. package/dist/forms/contexts/VariableCategoriesContext.d.ts +0 -19
  501. package/dist/forms/contexts/VariableCategoriesContext.d.ts.map +0 -1
  502. package/dist/forms/contexts/VariableCategoriesContext.js +0 -20
  503. package/dist/forms/contexts/VariableCategoriesContext.js.map +0 -1
  504. package/dist/forms/engine/FormStateStore.d.ts +0 -24
  505. package/dist/forms/engine/FormStateStore.d.ts.map +0 -1
  506. package/dist/forms/engine/FormStateStore.js +0 -97
  507. package/dist/forms/engine/FormStateStore.js.map +0 -1
  508. package/dist/forms/engine/SchemaIndex.d.ts +0 -33
  509. package/dist/forms/engine/SchemaIndex.d.ts.map +0 -1
  510. package/dist/forms/engine/SchemaIndex.js +0 -21
  511. package/dist/forms/engine/SchemaIndex.js.map +0 -1
  512. package/dist/forms/engine/ValidationEngine.d.ts +0 -13
  513. package/dist/forms/engine/ValidationEngine.d.ts.map +0 -1
  514. package/dist/forms/engine/ValidationEngine.js +0 -156
  515. package/dist/forms/engine/ValidationEngine.js.map +0 -1
  516. package/dist/forms/engine/buildGroupedMessage.d.ts +0 -2
  517. package/dist/forms/engine/buildGroupedMessage.d.ts.map +0 -1
  518. package/dist/forms/engine/buildGroupedMessage.js +0 -20
  519. package/dist/forms/engine/buildGroupedMessage.js.map +0 -1
  520. package/dist/forms/engine/rules/email.d.ts +0 -2
  521. package/dist/forms/engine/rules/email.d.ts.map +0 -1
  522. package/dist/forms/engine/rules/email.js +0 -11
  523. package/dist/forms/engine/rules/email.js.map +0 -1
  524. package/dist/forms/engine/rules/emailOrVariable.d.ts +0 -2
  525. package/dist/forms/engine/rules/emailOrVariable.d.ts.map +0 -1
  526. package/dist/forms/engine/rules/emailOrVariable.js +0 -13
  527. package/dist/forms/engine/rules/emailOrVariable.js.map +0 -1
  528. package/dist/forms/engine/rules/handle.d.ts +0 -2
  529. package/dist/forms/engine/rules/handle.d.ts.map +0 -1
  530. package/dist/forms/engine/rules/handle.js +0 -12
  531. package/dist/forms/engine/rules/handle.js.map +0 -1
  532. package/dist/forms/engine/rules/index.d.ts +0 -9
  533. package/dist/forms/engine/rules/index.d.ts.map +0 -1
  534. package/dist/forms/engine/rules/index.js +0 -39
  535. package/dist/forms/engine/rules/index.js.map +0 -1
  536. package/dist/forms/engine/rules/max.d.ts +0 -2
  537. package/dist/forms/engine/rules/max.d.ts.map +0 -1
  538. package/dist/forms/engine/rules/max.js +0 -16
  539. package/dist/forms/engine/rules/max.js.map +0 -1
  540. package/dist/forms/engine/rules/min.d.ts +0 -2
  541. package/dist/forms/engine/rules/min.d.ts.map +0 -1
  542. package/dist/forms/engine/rules/min.js +0 -16
  543. package/dist/forms/engine/rules/min.js.map +0 -1
  544. package/dist/forms/engine/rules/required.d.ts +0 -2
  545. package/dist/forms/engine/rules/required.d.ts.map +0 -1
  546. package/dist/forms/engine/rules/required.js +0 -11
  547. package/dist/forms/engine/rules/required.js.map +0 -1
  548. package/dist/forms/engine/rules/requiredRichText.d.ts +0 -2
  549. package/dist/forms/engine/rules/requiredRichText.d.ts.map +0 -1
  550. package/dist/forms/engine/rules/requiredRichText.js +0 -11
  551. package/dist/forms/engine/rules/requiredRichText.js.map +0 -1
  552. package/dist/forms/engine/rules/requiredRules.d.ts +0 -3
  553. package/dist/forms/engine/rules/requiredRules.d.ts.map +0 -1
  554. package/dist/forms/engine/rules/requiredRules.js +0 -9
  555. package/dist/forms/engine/rules/requiredRules.js.map +0 -1
  556. package/dist/forms/engine/rules/uniqueHandle.d.ts +0 -9
  557. package/dist/forms/engine/rules/uniqueHandle.d.ts.map +0 -1
  558. package/dist/forms/engine/rules/uniqueHandle.js +0 -95
  559. package/dist/forms/engine/rules/uniqueHandle.js.map +0 -1
  560. package/dist/forms/engine/rules/utils.d.ts +0 -3
  561. package/dist/forms/engine/rules/utils.d.ts.map +0 -1
  562. package/dist/forms/engine/rules/utils.js +0 -21
  563. package/dist/forms/engine/rules/utils.js.map +0 -1
  564. package/dist/forms/fields/CalculationsField.d.ts +0 -24
  565. package/dist/forms/fields/CalculationsField.d.ts.map +0 -1
  566. package/dist/forms/fields/CalculationsField.js +0 -215
  567. package/dist/forms/fields/CalculationsField.js.map +0 -1
  568. package/dist/forms/fields/CalculationsToolbar.d.ts +0 -17
  569. package/dist/forms/fields/CalculationsToolbar.d.ts.map +0 -1
  570. package/dist/forms/fields/CalculationsToolbar.js +0 -130
  571. package/dist/forms/fields/CalculationsToolbar.js.map +0 -1
  572. package/dist/forms/fields/EditableTableField.d.ts +0 -22
  573. package/dist/forms/fields/EditableTableField.d.ts.map +0 -1
  574. package/dist/forms/fields/EditableTableField.js +0 -37
  575. package/dist/forms/fields/EditableTableField.js.map +0 -1
  576. package/dist/forms/fields/ElementSelectField.d.ts +0 -20
  577. package/dist/forms/fields/ElementSelectField.d.ts.map +0 -1
  578. package/dist/forms/fields/ElementSelectField.js +0 -215
  579. package/dist/forms/fields/ElementSelectField.js.map +0 -1
  580. package/dist/forms/fields/HandleField.d.ts +0 -20
  581. package/dist/forms/fields/HandleField.d.ts.map +0 -1
  582. package/dist/forms/fields/HandleField.js +0 -70
  583. package/dist/forms/fields/HandleField.js.map +0 -1
  584. package/dist/forms/fields/ListField.d.ts +0 -18
  585. package/dist/forms/fields/ListField.d.ts.map +0 -1
  586. package/dist/forms/fields/ListField.js +0 -52
  587. package/dist/forms/fields/ListField.js.map +0 -1
  588. package/dist/forms/fields/RichTextField.d.ts +0 -24
  589. package/dist/forms/fields/RichTextField.d.ts.map +0 -1
  590. package/dist/forms/fields/RichTextField.js +0 -53
  591. package/dist/forms/fields/RichTextField.js.map +0 -1
  592. package/dist/forms/fields/StaticTableField.d.ts +0 -34
  593. package/dist/forms/fields/StaticTableField.d.ts.map +0 -1
  594. package/dist/forms/fields/StaticTableField.js +0 -128
  595. package/dist/forms/fields/StaticTableField.js.map +0 -1
  596. package/dist/forms/fields/VariablePickerField.d.ts +0 -21
  597. package/dist/forms/fields/VariablePickerField.d.ts.map +0 -1
  598. package/dist/forms/fields/VariablePickerField.js +0 -51
  599. package/dist/forms/fields/VariablePickerField.js.map +0 -1
  600. package/dist/forms/store/element-store.d.ts +0 -11
  601. package/dist/forms/store/element-store.d.ts.map +0 -1
  602. package/dist/forms/store/element-store.js +0 -41
  603. package/dist/forms/store/element-store.js.map +0 -1
  604. package/dist/forms/useEditableTableFieldBinding.d.ts +0 -13
  605. package/dist/forms/useEditableTableFieldBinding.d.ts.map +0 -1
  606. package/dist/forms/useEditableTableFieldBinding.js +0 -91
  607. package/dist/forms/useEditableTableFieldBinding.js.map +0 -1
  608. package/dist/hooks/useKeyboardShortcuts.d.ts +0 -14
  609. package/dist/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  610. package/dist/hooks/useKeyboardShortcuts.js +0 -67
  611. package/dist/hooks/useKeyboardShortcuts.js.map +0 -1
  612. package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -15
  613. package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js.map +0 -1
  614. package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -15
  615. package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js.map +0 -1
  616. package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -13
  617. package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js.map +0 -1
  618. package/dist/node_modules/@babel/runtime/helpers/createClass.js +0 -21
  619. package/dist/node_modules/@babel/runtime/helpers/createClass.js.map +0 -1
  620. package/dist/node_modules/@babel/runtime/helpers/defineProperty.js +0 -20
  621. package/dist/node_modules/@babel/runtime/helpers/defineProperty.js.map +0 -1
  622. package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -13
  623. package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js.map +0 -1
  624. package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -13
  625. package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js.map +0 -1
  626. package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -13
  627. package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js.map +0 -1
  628. package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -21
  629. package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js.map +0 -1
  630. package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -22
  631. package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js.map +0 -1
  632. package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -18
  633. package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js.map +0 -1
  634. package/dist/node_modules/@babel/runtime/helpers/typeof.js +0 -18
  635. package/dist/node_modules/@babel/runtime/helpers/typeof.js.map +0 -1
  636. package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -19
  637. package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js.map +0 -1
  638. package/dist/node_modules/jexl/dist/Expression.js +0 -84
  639. package/dist/node_modules/jexl/dist/Expression.js.map +0 -1
  640. package/dist/node_modules/jexl/dist/Jexl.js +0 -165
  641. package/dist/node_modules/jexl/dist/Jexl.js.map +0 -1
  642. package/dist/node_modules/jexl/dist/Lexer.js +0 -152
  643. package/dist/node_modules/jexl/dist/Lexer.js.map +0 -1
  644. package/dist/node_modules/jexl/dist/PromiseSync.js +0 -87
  645. package/dist/node_modules/jexl/dist/PromiseSync.js.map +0 -1
  646. package/dist/node_modules/jexl/dist/evaluator/Evaluator.js +0 -98
  647. package/dist/node_modules/jexl/dist/evaluator/Evaluator.js.map +0 -1
  648. package/dist/node_modules/jexl/dist/evaluator/handlers.js +0 -162
  649. package/dist/node_modules/jexl/dist/evaluator/handlers.js.map +0 -1
  650. package/dist/node_modules/jexl/dist/grammar.js +0 -195
  651. package/dist/node_modules/jexl/dist/grammar.js.map +0 -1
  652. package/dist/node_modules/jexl/dist/parser/Parser.js +0 -135
  653. package/dist/node_modules/jexl/dist/parser/Parser.js.map +0 -1
  654. package/dist/node_modules/jexl/dist/parser/handlers.js +0 -205
  655. package/dist/node_modules/jexl/dist/parser/handlers.js.map +0 -1
  656. package/dist/node_modules/jexl/dist/parser/states.js +0 -158
  657. package/dist/node_modules/jexl/dist/parser/states.js.map +0 -1
  658. package/dist/types/global.d.d.ts +0 -1
  659. package/dist/types/global.d.js +0 -0
  660. package/dist/utils/classes.d.ts +0 -18
  661. package/dist/utils/classes.d.ts.map +0 -1
  662. package/dist/utils/classes.js +0 -25
  663. package/dist/utils/classes.js.map +0 -1
  664. package/dist/utils/config.d.ts +0 -14
  665. package/dist/utils/config.d.ts.map +0 -1
  666. package/dist/utils/config.js +0 -20
  667. package/dist/utils/config.js.map +0 -1
  668. package/dist/utils/datetime.d.ts +0 -10
  669. package/dist/utils/datetime.d.ts.map +0 -1
  670. package/dist/utils/datetime.js +0 -60
  671. package/dist/utils/datetime.js.map +0 -1
  672. package/dist/utils/documentScrollStability.d.ts +0 -7
  673. package/dist/utils/documentScrollStability.d.ts.map +0 -1
  674. package/dist/utils/documentScrollStability.js +0 -19
  675. package/dist/utils/documentScrollStability.js.map +0 -1
  676. package/dist/utils/handle.d.ts +0 -10
  677. package/dist/utils/handle.d.ts.map +0 -1
  678. package/dist/utils/handle.js +0 -51
  679. package/dist/utils/handle.js.map +0 -1
  680. package/dist/utils/hostBridge.d.ts +0 -40
  681. package/dist/utils/hostBridge.d.ts.map +0 -1
  682. package/dist/utils/hostBridge.js +0 -35
  683. package/dist/utils/hostBridge.js.map +0 -1
  684. package/dist/utils/index.js.map +0 -1
  685. package/dist/utils/portal.d.ts +0 -17
  686. package/dist/utils/portal.d.ts.map +0 -1
  687. package/dist/utils/portal.js +0 -51
  688. package/dist/utils/portal.js.map +0 -1
  689. package/dist/utils/schema.d.ts +0 -17
  690. package/dist/utils/schema.d.ts.map +0 -1
  691. package/dist/utils/schema.js +0 -56
  692. package/dist/utils/schema.js.map +0 -1
  693. package/dist/utils/schemaFieldNames.d.ts +0 -2
  694. package/dist/utils/schemaFieldNames.d.ts.map +0 -1
  695. package/dist/utils/schemaFieldNames.js +0 -16
  696. package/dist/utils/schemaFieldNames.js.map +0 -1
  697. package/dist/utils/schemaIndex.d.ts +0 -6
  698. package/dist/utils/schemaIndex.d.ts.map +0 -1
  699. package/dist/utils/schemaIndex.js +0 -31
  700. package/dist/utils/schemaIndex.js.map +0 -1
  701. package/dist/utils/schemaIndexCache.d.ts +0 -6
  702. package/dist/utils/schemaIndexCache.d.ts.map +0 -1
  703. package/dist/utils/schemaIndexCache.js +0 -32
  704. package/dist/utils/schemaIndexCache.js.map +0 -1
  705. package/dist/utils/schemaNormalize.d.ts +0 -13
  706. package/dist/utils/schemaNormalize.d.ts.map +0 -1
  707. package/dist/utils/schemaNormalize.js +0 -17
  708. package/dist/utils/schemaNormalize.js.map +0 -1
  709. package/dist/utils/store.d.ts +0 -7
  710. package/dist/utils/store.d.ts.map +0 -1
  711. package/dist/utils/store.js +0 -6
  712. package/dist/utils/store.js.map +0 -1
  713. package/dist/utils/timeOptions.d.ts +0 -6
  714. package/dist/utils/timeOptions.d.ts.map +0 -1
  715. package/dist/utils/timeOptions.js +0 -42
  716. package/dist/utils/timeOptions.js.map +0 -1
  717. package/dist/utils/tiptap.d.ts +0 -19
  718. package/dist/utils/tiptap.d.ts.map +0 -1
  719. package/dist/utils/tiptap.js +0 -92
  720. package/dist/utils/tiptap.js.map +0 -1
  721. package/dist/utils/translation.d.ts +0 -5
  722. package/dist/utils/translation.d.ts.map +0 -1
  723. package/dist/utils/translation.js +0 -25
  724. package/dist/utils/translation.js.map +0 -1
  725. package/dist/utils/validation.d.ts +0 -4
  726. package/dist/utils/validation.d.ts.map +0 -1
  727. package/dist/utils/validation.js +0 -260
  728. package/dist/utils/validation.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"uniqueHandle.js","names":[],"sources":["../../../../src/forms/engine/rules/uniqueHandle.ts"],"sourcesContent":["import { get } from 'lodash-es';\nimport { translate } from '@verbb/plugin-kit-react/utils/translation';\nimport type { SchemaNode } from '../SchemaIndex';\n\ntype RuleContext = {\n path: string;\n values: Record<string, unknown>;\n field: SchemaNode;\n};\n\ntype HandleEntry = {\n path: string;\n handle: string;\n};\n\nconst isRecord = (value: unknown): value is Record<string, unknown> => {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value);\n};\n\nconst getHandleValue = (value: unknown) => {\n if (!isRecord(value)) {\n return '';\n }\n\n const settings = isRecord(value.settings) ? value.settings : {};\n return String(value.handle || settings.handle || '').trim();\n};\n\nconst collectTopLevelFieldHandles = (values: Record<string, unknown>) => {\n const entries: HandleEntry[] = [];\n const pages = Array.isArray(values?.pages) ? values.pages : [];\n\n pages.forEach((page, pageIndex) => {\n const rows = Array.isArray(page?.rows) ? page.rows : [];\n\n rows.forEach((row, rowIndex) => {\n const fields = Array.isArray(row?.fields) ? row.fields : [];\n\n fields.forEach((field, fieldIndex) => {\n const handle = getHandleValue(field);\n if (!handle) {\n return;\n }\n\n entries.push({\n path: `pages.${pageIndex}.rows.${rowIndex}.fields.${fieldIndex}.handle`,\n handle,\n });\n });\n });\n });\n\n return entries;\n};\n\nconst collectNestedFieldHandles = (values: Record<string, unknown>, parentFieldPath: string) => {\n const entries: HandleEntry[] = [];\n const rows = get(values, `${parentFieldPath}.rows`, []);\n const nestedRows = Array.isArray(rows) ? rows : [];\n\n nestedRows.forEach((row, nestedRowIndex) => {\n const fields = Array.isArray(row?.fields) ? row.fields : [];\n\n fields.forEach((field, nestedFieldIndex) => {\n const handle = getHandleValue(field);\n if (!handle) {\n return;\n }\n\n entries.push({\n path: `${parentFieldPath}.rows.${nestedRowIndex}.fields.${nestedFieldIndex}.handle`,\n handle,\n });\n });\n });\n\n return entries;\n};\n\nconst collectNotificationHandles = (values: Record<string, unknown>) => {\n const entries: HandleEntry[] = [];\n const notifications = Array.isArray(values?.notifications) ? values.notifications : [];\n\n notifications.forEach((notification, index) => {\n const handle = String(notification?.handle || '').trim();\n if (!handle) {\n return;\n }\n\n entries.push({\n path: `notifications.${index}.handle`,\n handle,\n });\n });\n\n return entries;\n};\n\nconst getScopedHandleEntries = (context: RuleContext) => {\n const { path, values } = context;\n const explicitScope = context?.field?.uniqueHandleScope;\n\n if (explicitScope === 'topLevelFields') {\n return collectTopLevelFieldHandles(values);\n }\n\n if (explicitScope === 'notifications') {\n return collectNotificationHandles(values);\n }\n\n if (explicitScope === 'nestedSiblings') {\n const parentFieldPath = context?.field?.uniqueHandleScopePath;\n\n if (typeof parentFieldPath === 'string' && parentFieldPath.trim() !== '') {\n return collectNestedFieldHandles(values, parentFieldPath);\n }\n }\n\n const nestedMatch = path.match(/^(pages\\.\\d+\\.rows\\.\\d+\\.fields\\.\\d+(?:\\.rows\\.\\d+\\.fields\\.\\d+)*)\\.rows\\.\\d+\\.fields\\.\\d+\\.handle$/);\n if (nestedMatch) {\n const [, parentFieldPath] = nestedMatch;\n return collectNestedFieldHandles(values, parentFieldPath);\n }\n\n if (/^pages\\.\\d+\\.rows\\.\\d+\\.fields\\.\\d+\\.handle$/.test(path)) {\n return collectTopLevelFieldHandles(values);\n }\n\n if (/^notifications\\.\\d+\\.handle$/.test(path)) {\n return collectNotificationHandles(values);\n }\n\n return [];\n};\n\nexport const uniqueHandleRule = (value: unknown, label: string, args: string[], context?: RuleContext) => {\n if (!context?.path || !context?.values) {\n return null;\n }\n\n const handle = String(value ?? '').trim();\n if (!handle) {\n return null;\n }\n\n const entries = getScopedHandleEntries(context);\n const normalizedHandle = handle.toLowerCase();\n const scopedDuplicate = entries.some((entry) => {\n if (entry.path === context.path) {\n return false;\n }\n\n return entry.handle.toLowerCase() === normalizedHandle;\n });\n\n const reservedHandles = Array.isArray(context.field?.reservedHandles) ? context.field.reservedHandles : [];\n const reservedDuplicate = reservedHandles.some((reservedHandle) => {\n return String(reservedHandle || '').toLowerCase() === normalizedHandle;\n });\n\n const duplicate = scopedDuplicate || reservedDuplicate;\n\n if (!duplicate) {\n return null;\n }\n\n return translate('{attribute} \"{value}\" has already been taken.', {\n attribute: label,\n value: handle,\n });\n};\n"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export declare const isEmptyValue: (value: unknown) => boolean;
2
- export declare const getValueSize: (value: unknown) => number;
3
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/forms/engine/rules/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,YAc1C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,WAmB1C,CAAC"}
@@ -1,21 +0,0 @@
1
- //#region src/forms/engine/rules/utils.ts
2
- var isEmptyValue = (value) => {
3
- if (value === void 0 || value === null) return true;
4
- if (typeof value === "string") return value === "";
5
- if (Array.isArray(value)) return value.length === 0;
6
- return false;
7
- };
8
- var getValueSize = (value) => {
9
- if (typeof value === "number") return value;
10
- if (typeof value === "string") {
11
- const trimmed = value.trim();
12
- if (trimmed !== "" && Number.isFinite(Number(trimmed))) return Number(trimmed);
13
- return value.length;
14
- }
15
- if (Array.isArray(value)) return value.length;
16
- return NaN;
17
- };
18
- //#endregion
19
- export { getValueSize, isEmptyValue };
20
-
21
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","names":[],"sources":["../../../../src/forms/engine/rules/utils.ts"],"sourcesContent":["export const isEmptyValue = (value: unknown) => {\n if (value === undefined || value === null) {\n return true;\n }\n\n if (typeof value === 'string') {\n return value === '';\n }\n\n if (Array.isArray(value)) {\n return value.length === 0;\n }\n\n return false;\n};\n\nexport const getValueSize = (value: unknown) => {\n if (typeof value === 'number') {\n return value;\n }\n\n if (typeof value === 'string') {\n const trimmed = value.trim();\n if (trimmed !== '' && Number.isFinite(Number(trimmed))) {\n return Number(trimmed);\n }\n\n return value.length;\n }\n\n if (Array.isArray(value)) {\n return value.length;\n }\n\n return NaN;\n};\n"],"mappings":";AAAA,IAAa,gBAAgB,UAAmB;AAC5C,KAAI,UAAU,KAAA,KAAa,UAAU,KACjC,QAAO;AAGX,KAAI,OAAO,UAAU,SACjB,QAAO,UAAU;AAGrB,KAAI,MAAM,QAAQ,MAAM,CACpB,QAAO,MAAM,WAAW;AAG5B,QAAO;;AAGX,IAAa,gBAAgB,UAAmB;AAC5C,KAAI,OAAO,UAAU,SACjB,QAAO;AAGX,KAAI,OAAO,UAAU,UAAU;EAC3B,MAAM,UAAU,MAAM,MAAM;AAC5B,MAAI,YAAY,MAAM,OAAO,SAAS,OAAO,QAAQ,CAAC,CAClD,QAAO,OAAO,QAAQ;AAG1B,SAAO,MAAM;;AAGjB,KAAI,MAAM,QAAQ,MAAM,CACpB,QAAO,MAAM;AAGjB,QAAO"}
@@ -1,24 +0,0 @@
1
- import { VariableCategories } from '../../components/tiptap/VariableDropdown';
2
- import { SchemaFormEngineApi } from '../engine/context';
3
- import { SchemaNode } from '../engine/SchemaIndex';
4
- import { VariableConfig } from '../contexts/VariableCategoriesContext';
5
- type CalculationsFieldProps = {
6
- form: SchemaFormEngineApi;
7
- field: SchemaNode & {
8
- name: string;
9
- label?: string;
10
- instructions?: string;
11
- warning?: string;
12
- placeholder?: string;
13
- required?: boolean;
14
- disabled?: boolean;
15
- variableConfig?: VariableConfig;
16
- variableCategories?: VariableCategories;
17
- variablePickerTriggerCharacters?: string[];
18
- validationAction?: string;
19
- rows?: number;
20
- };
21
- };
22
- export declare const CalculationsField: ({ form, field }: CalculationsFieldProps) => import("react/jsx-runtime").JSX.Element;
23
- export {};
24
- //# sourceMappingURL=CalculationsField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CalculationsField.d.ts","sourceRoot":"","sources":["../../../src/forms/fields/CalculationsField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAkB,MAAM,4DAA4D,CAAC;AAKrH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAU5E,KAAK,sBAAsB,GAAG;IAC1B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,UAAU,GAAG;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,+BAA+B,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACL,CAAC;AAyIF,eAAO,MAAM,iBAAiB,GAAI,iBAAiB,sBAAsB,4CAsJxE,CAAC"}
@@ -1,215 +0,0 @@
1
- import { cn } from "../../utils/classes.js";
2
- import { hostRequest } from "../../utils/hostBridge.js";
3
- import "../../utils/index.js";
4
- import { useTranslation } from "../../hooks/useTranslation.js";
5
- import "../../hooks/index.js";
6
- import { contentToValue } from "../../components/tiptap/variableSerialization.js";
7
- import { TiptapEditor } from "../../components/TiptapEditor.js";
8
- import "../../components/index.js";
9
- import { FieldLayout } from "../Field.js";
10
- import { useEngineField } from "../useEngineField.js";
11
- import { useVariableCategoriesContext } from "../contexts/VariableCategoriesContext.js";
12
- import { CalculationsToolbar } from "./CalculationsToolbar.js";
13
- import { useMemo, useState } from "react";
14
- import { jsx, jsxs } from "react/jsx-runtime";
15
- import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
16
- import { faCheck } from "@fortawesome/pro-solid-svg-icons";
17
- //#region src/forms/fields/CalculationsField.tsx
18
- var flattenVariableOptions = (options = []) => {
19
- const flat = [];
20
- const visit = (nodes) => {
21
- nodes.forEach((node) => {
22
- flat.push(node);
23
- if (Array.isArray(node?.children) && node.children.length) visit(node.children);
24
- });
25
- };
26
- visit(options);
27
- return flat;
28
- };
29
- var getAvailableVariableTokens = (variableCategories) => {
30
- const flat = flattenVariableOptions(Object.values(variableCategories ?? {}).flatMap((items) => {
31
- return Array.isArray(items) ? items : [];
32
- }));
33
- return Array.from(new Set(flat.map((item) => {
34
- return typeof item?.value === "string" ? item.value.trim() : "";
35
- }).filter(Boolean)));
36
- };
37
- var getVariableTokenLabelMap = (variableCategories) => {
38
- return flattenVariableOptions(Object.values(variableCategories ?? {}).flatMap((items) => {
39
- return Array.isArray(items) ? items : [];
40
- })).reduce((map, item) => {
41
- const token = typeof item?.value === "string" ? item.value.trim() : "";
42
- if (!token) return map;
43
- map[token] = (typeof item?.label === "string" ? item.label.trim() : "") || token;
44
- return map;
45
- }, {});
46
- };
47
- var getFormulaFromValue = (value) => {
48
- if (typeof value === "string") return value;
49
- if (Array.isArray(value)) return contentToValue(value);
50
- if (value && typeof value === "object" && Array.isArray(value.content)) return contentToValue(value.content);
51
- return "";
52
- };
53
- var getPageIndexFromScopePath = (scopePathValue) => {
54
- const scopePath = typeof scopePathValue === "string" ? scopePathValue : "";
55
- if (!scopePath) return null;
56
- const match = scopePath.match(/(?:^|\\.)pages\\.(\\d+)(?:\\.|$)/);
57
- if (!match) return null;
58
- const pageIndex = Number.parseInt(match[1] || "", 10);
59
- return Number.isInteger(pageIndex) ? pageIndex : null;
60
- };
61
- var getActivePageIndex = (pages, activePage) => {
62
- if (!Array.isArray(pages) || !pages.length || typeof activePage !== "string" || !activePage) return null;
63
- const pageIndex = pages.findIndex((page) => {
64
- const resolvedPage = page && typeof page === "object" ? page : {};
65
- return resolvedPage._handle === activePage || resolvedPage.handle === activePage;
66
- });
67
- return pageIndex >= 0 ? pageIndex : null;
68
- };
69
- var getValidationErrorDetails = (error, fallbackMessage) => {
70
- const resolvedError = error && typeof error === "object" ? error : {};
71
- const responseData = resolvedError.response?.data;
72
- const message = responseData?.message || resolvedError.message || fallbackMessage;
73
- return {
74
- message: String(message),
75
- technicalMessage: String(responseData?.technicalMessage ?? "")
76
- };
77
- };
78
- var CalculationsField = ({ form, field }) => {
79
- const t = useTranslation();
80
- const { value, setValue, errors } = useEngineField(form, field.name);
81
- const [guideOpen, setGuideOpen] = useState(false);
82
- const [validating, setValidating] = useState(false);
83
- const [validation, setValidation] = useState({
84
- type: "idle",
85
- message: ""
86
- });
87
- const { getVariableCategories, variableCategoryLabels, variableCategoryOrder, variableTransformerRegistry } = useVariableCategoriesContext();
88
- const resolvedVariableCategories = useMemo(() => {
89
- if (field.variableCategories) return field.variableCategories;
90
- const { variableConfig } = field;
91
- if (!variableConfig || !getVariableCategories) return;
92
- const pages = form?.getFieldValue?.("pages");
93
- const activePage = form?.getFieldValue?.("activePage");
94
- const scopePageIndex = getPageIndexFromScopePath(field._scopePath);
95
- const activePageIndex = getActivePageIndex(pages, activePage);
96
- const currentPageIndex = Number.isInteger(scopePageIndex) ? scopePageIndex : activePageIndex;
97
- return getVariableCategories({
98
- ...variableConfig,
99
- ...Number.isInteger(currentPageIndex) ? { currentPageIndex } : {}
100
- }, { form });
101
- }, [
102
- field,
103
- form,
104
- getVariableCategories
105
- ]);
106
- const availableVariableTokens = useMemo(() => {
107
- return getAvailableVariableTokens(resolvedVariableCategories);
108
- }, [resolvedVariableCategories]);
109
- const tokenLabels = useMemo(() => {
110
- return getVariableTokenLabelMap(resolvedVariableCategories);
111
- }, [resolvedVariableCategories]);
112
- const runValidation = async () => {
113
- const formula = getFormulaFromValue(value).trim();
114
- if (!formula) {
115
- setValidation({
116
- type: "error",
117
- message: t("Enter a formula to test.")
118
- });
119
- return;
120
- }
121
- setValidating(true);
122
- setValidation({
123
- type: "idle",
124
- message: "",
125
- technicalMessage: ""
126
- });
127
- try {
128
- const response = await hostRequest("POST", field.validationAction || "plugin-kit/fields/validate-calculations-formula", { data: {
129
- formula,
130
- availableTokens: availableVariableTokens,
131
- tokenLabels
132
- } });
133
- const payload = response?.data ?? response;
134
- const isValid = Boolean(payload?.valid);
135
- const message = String(payload?.message ?? "");
136
- const technicalMessage = String(payload?.technicalMessage ?? "");
137
- setValidation({
138
- type: isValid ? "success" : "error",
139
- message: message || (isValid ? t("Formula is valid.") : t("Formula is invalid.")),
140
- technicalMessage
141
- });
142
- } catch (error) {
143
- const { message, technicalMessage } = getValidationErrorDetails(error, t("Unable to validate formula."));
144
- setValidation({
145
- type: "error",
146
- message: String(message),
147
- technicalMessage
148
- });
149
- } finally {
150
- setValidating(false);
151
- }
152
- };
153
- return /* @__PURE__ */ jsx(FieldLayout, {
154
- name: field.name,
155
- label: field.label,
156
- instructions: field.instructions,
157
- warning: field.warning,
158
- required: field.required,
159
- errors,
160
- withControl: false,
161
- children: /* @__PURE__ */ jsxs("div", {
162
- className: "space-y-2",
163
- children: [/* @__PURE__ */ jsx(TiptapEditor, {
164
- value: value ?? "",
165
- onChange: setValue,
166
- placeholder: field.placeholder,
167
- rows: field.rows,
168
- buttons: ["variableTag"],
169
- toolbarContent: ({ editor, variableCategories, variableCategoryLabels, variableCategoryOrder, variablePickerOpen, onVariablePickerOpenChange }) => {
170
- return /* @__PURE__ */ jsx(CalculationsToolbar, {
171
- editor,
172
- variableCategories,
173
- variableCategoryLabels,
174
- variableCategoryOrder,
175
- variablePickerOpen,
176
- onVariablePickerOpenChange,
177
- guideOpen,
178
- onGuideOpenChange: setGuideOpen,
179
- validating,
180
- onValidate: runValidation
181
- });
182
- },
183
- disabled: field.disabled,
184
- isInvalid: errors.length > 0,
185
- variableCategories: resolvedVariableCategories,
186
- variableCategoryLabels,
187
- variableCategoryOrder,
188
- variableTransformerRegistry,
189
- variablePickerTriggerCharacters: field.variablePickerTriggerCharacters
190
- }), validation.type !== "idle" && /* @__PURE__ */ jsxs("div", {
191
- className: "space-y-1",
192
- children: [/* @__PURE__ */ jsxs("p", {
193
- className: cn("flex items-center gap-1", validation.type === "success" ? "text-emerald-700" : "text-rose-700"),
194
- children: [validation.type === "success" ? /* @__PURE__ */ jsx(FontAwesomeIcon, {
195
- icon: faCheck,
196
- className: "size-3 mt-0.5"
197
- }) : null, validation.message]
198
- }), validation.type === "error" && validation.technicalMessage && validation.technicalMessage !== validation.message && /* @__PURE__ */ jsxs("details", {
199
- className: "text-xs text-gray-500",
200
- children: [/* @__PURE__ */ jsx("summary", {
201
- className: "cursor-pointer select-none",
202
- children: t("Show technical details")
203
- }), /* @__PURE__ */ jsx("p", {
204
- className: "mt-1 text-rose-700",
205
- children: validation.technicalMessage
206
- })]
207
- })]
208
- })]
209
- })
210
- });
211
- };
212
- //#endregion
213
- export { CalculationsField };
214
-
215
- //# sourceMappingURL=CalculationsField.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CalculationsField.js","names":[],"sources":["../../../src/forms/fields/CalculationsField.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport { TiptapEditor } from '@verbb/plugin-kit-react/components';\nimport type { VariableCategories, VariableOption } from '@verbb/plugin-kit-react/components/tiptap/VariableDropdown';\nimport { contentToValue } from '@verbb/plugin-kit-react/components/tiptap/variableSerialization';\nimport { useTranslation } from '@verbb/plugin-kit-react/hooks';\nimport { hostRequest } from '@verbb/plugin-kit-react/utils';\nimport { FieldLayout } from '../Field';\nimport type { SchemaFormEngineApi } from '../engine/context';\nimport type { SchemaNode } from '../engine/SchemaIndex';\nimport type { VariableConfig } from '../contexts/VariableCategoriesContext';\nimport { useEngineField } from '../useEngineField';\nimport { useVariableCategoriesContext } from '../contexts/VariableCategoriesContext';\nimport { CalculationsToolbar } from './CalculationsToolbar';\n\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { faCheck } from '@fortawesome/pro-solid-svg-icons';\n\nimport { cn } from '@verbb/plugin-kit-react/utils';\n\ntype CalculationsFieldProps = {\n form: SchemaFormEngineApi;\n field: SchemaNode & {\n name: string;\n label?: string;\n instructions?: string;\n warning?: string;\n placeholder?: string;\n required?: boolean;\n disabled?: boolean;\n variableConfig?: VariableConfig;\n variableCategories?: VariableCategories;\n variablePickerTriggerCharacters?: string[];\n validationAction?: string;\n rows?: number;\n };\n};\n\ntype ValidationState = {\n type: 'idle' | 'success' | 'error';\n message: string;\n technicalMessage?: string;\n};\n\ntype CalculationPage = {\n _handle?: string;\n handle?: string;\n};\n\ntype ValidationResponsePayload = {\n valid?: unknown;\n message?: unknown;\n technicalMessage?: unknown;\n};\n\ntype HostRequestError = {\n message?: string;\n response?: {\n data?: {\n message?: unknown;\n technicalMessage?: unknown;\n };\n };\n};\n\nconst flattenVariableOptions = (options: VariableOption[] = []): VariableOption[] => {\n const flat: VariableOption[] = [];\n\n const visit = (nodes: VariableOption[]) => {\n nodes.forEach((node) => {\n flat.push(node);\n\n if (Array.isArray(node?.children) && node.children.length) {\n visit(node.children);\n }\n });\n };\n\n visit(options);\n return flat;\n};\n\nconst getAvailableVariableTokens = (variableCategories?: VariableCategories): string[] => {\n const categoryOptions = Object.values(variableCategories ?? {}).flatMap((items) => {\n return Array.isArray(items) ? items : [];\n });\n\n const flat = flattenVariableOptions(categoryOptions);\n\n return Array.from(new Set(flat\n .map((item) => {\n return typeof item?.value === 'string' ? item.value.trim() : '';\n })\n .filter(Boolean)));\n};\n\nconst getVariableTokenLabelMap = (variableCategories?: VariableCategories): Record<string, string> => {\n const categoryOptions = Object.values(variableCategories ?? {}).flatMap((items) => {\n return Array.isArray(items) ? items : [];\n });\n\n const flat = flattenVariableOptions(categoryOptions);\n\n return flat.reduce((map, item) => {\n const token = typeof item?.value === 'string' ? item.value.trim() : '';\n if (!token) {\n return map;\n }\n\n const label = typeof item?.label === 'string' ? item.label.trim() : '';\n map[token] = label || token;\n\n return map;\n }, {} as Record<string, string>);\n};\n\nconst getFormulaFromValue = (value: unknown): string => {\n if (typeof value === 'string') {\n return value;\n }\n\n if (Array.isArray(value)) {\n return contentToValue(value);\n }\n\n if (value && typeof value === 'object' && Array.isArray((value as { content?: unknown[] }).content)) {\n return contentToValue((value as { content: unknown[] }).content);\n }\n\n return '';\n};\n\nconst getPageIndexFromScopePath = (scopePathValue: unknown): number | null => {\n const scopePath = typeof scopePathValue === 'string' ? scopePathValue : '';\n\n if (!scopePath) {\n return null;\n }\n\n const match = scopePath.match(/(?:^|\\\\.)pages\\\\.(\\\\d+)(?:\\\\.|$)/);\n if (!match) {\n return null;\n }\n\n const pageIndex = Number.parseInt(match[1] || '', 10);\n\n return Number.isInteger(pageIndex) ? pageIndex : null;\n};\n\nconst getActivePageIndex = (pages: unknown, activePage: unknown): number | null => {\n if (!Array.isArray(pages) || !pages.length || typeof activePage !== 'string' || !activePage) {\n return null;\n }\n\n const pageIndex = pages.findIndex((page) => {\n const resolvedPage = (page && typeof page === 'object') ? page as CalculationPage : {};\n return resolvedPage._handle === activePage || resolvedPage.handle === activePage;\n });\n\n return pageIndex >= 0 ? pageIndex : null;\n};\n\nconst getValidationErrorDetails = (error: unknown, fallbackMessage: string) => {\n const resolvedError = (error && typeof error === 'object') ? error as HostRequestError : {};\n const responseData = resolvedError.response?.data;\n const message = responseData?.message || resolvedError.message || fallbackMessage;\n\n return {\n message: String(message),\n technicalMessage: String(responseData?.technicalMessage ?? ''),\n };\n};\n\nexport const CalculationsField = ({ form, field }: CalculationsFieldProps) => {\n const t = useTranslation();\n const { value, setValue, errors } = useEngineField(form, field.name);\n const [guideOpen, setGuideOpen] = useState(false);\n const [validating, setValidating] = useState(false);\n const [validation, setValidation] = useState<ValidationState>({ type: 'idle', message: '' });\n const {\n getVariableCategories,\n variableCategoryLabels,\n variableCategoryOrder,\n variableTransformerRegistry,\n } = useVariableCategoriesContext();\n\n const resolvedVariableCategories = useMemo(() => {\n if (field.variableCategories) {\n return field.variableCategories;\n }\n\n const { variableConfig } = field;\n if (!variableConfig || !getVariableCategories) {\n return undefined;\n }\n\n const pages = form?.getFieldValue?.('pages');\n const activePage = form?.getFieldValue?.('activePage');\n const scopePageIndex = getPageIndexFromScopePath(field._scopePath);\n const activePageIndex = getActivePageIndex(pages, activePage);\n const currentPageIndex = Number.isInteger(scopePageIndex) ? scopePageIndex : activePageIndex;\n const scopedVariableConfig = {\n ...variableConfig,\n ...(Number.isInteger(currentPageIndex) ? { currentPageIndex } : {}),\n };\n\n return getVariableCategories(scopedVariableConfig, { form });\n }, [field, form, getVariableCategories]);\n\n const availableVariableTokens = useMemo(() => {\n return getAvailableVariableTokens(resolvedVariableCategories);\n }, [resolvedVariableCategories]);\n const tokenLabels = useMemo(() => {\n return getVariableTokenLabelMap(resolvedVariableCategories);\n }, [resolvedVariableCategories]);\n\n const runValidation = async () => {\n const formula = getFormulaFromValue(value).trim();\n if (!formula) {\n setValidation({ type: 'error', message: t('Enter a formula to test.') });\n return;\n }\n\n setValidating(true);\n setValidation({ type: 'idle', message: '', technicalMessage: '' });\n\n try {\n const action = field.validationAction || 'plugin-kit/fields/validate-calculations-formula';\n const response = await hostRequest('POST', action, {\n data: {\n formula,\n availableTokens: availableVariableTokens,\n tokenLabels,\n },\n });\n\n const payload = (response?.data ?? response) as ValidationResponsePayload;\n const isValid = Boolean(payload?.valid);\n const message = String(payload?.message ?? '');\n const technicalMessage = String(payload?.technicalMessage ?? '');\n\n setValidation({\n type: isValid ? 'success' : 'error',\n message: message || (isValid ? t('Formula is valid.') : t('Formula is invalid.')),\n technicalMessage,\n });\n } catch (error) {\n const { message, technicalMessage } = getValidationErrorDetails(error, t('Unable to validate formula.'));\n setValidation({\n type: 'error',\n message: String(message),\n technicalMessage,\n });\n } finally {\n setValidating(false);\n }\n };\n\n return (\n <FieldLayout\n name={field.name}\n label={field.label}\n instructions={field.instructions}\n warning={field.warning}\n required={field.required}\n errors={errors}\n withControl={false}\n >\n <div className=\"space-y-2\">\n <TiptapEditor\n value={value ?? ''}\n onChange={setValue}\n placeholder={field.placeholder}\n rows={field.rows}\n buttons={['variableTag']}\n toolbarContent={({ editor, variableCategories, variableCategoryLabels, variableCategoryOrder, variablePickerOpen, onVariablePickerOpenChange }) => {\n return (\n <CalculationsToolbar\n editor={editor}\n variableCategories={variableCategories}\n variableCategoryLabels={variableCategoryLabels}\n variableCategoryOrder={variableCategoryOrder}\n variablePickerOpen={variablePickerOpen}\n onVariablePickerOpenChange={onVariablePickerOpenChange}\n guideOpen={guideOpen}\n onGuideOpenChange={setGuideOpen}\n validating={validating}\n onValidate={runValidation}\n />\n );\n }}\n disabled={field.disabled}\n isInvalid={errors.length > 0}\n variableCategories={resolvedVariableCategories}\n variableCategoryLabels={variableCategoryLabels}\n variableCategoryOrder={variableCategoryOrder}\n variableTransformerRegistry={variableTransformerRegistry}\n variablePickerTriggerCharacters={field.variablePickerTriggerCharacters}\n />\n\n {validation.type !== 'idle' && (\n <div className=\"space-y-1\">\n <p className={cn(\n 'flex items-center gap-1',\n validation.type === 'success' ? 'text-emerald-700' : 'text-rose-700',\n )}>\n {validation.type === 'success' ? (\n <FontAwesomeIcon icon={faCheck} className=\"size-3 mt-0.5\" />\n ) : null}\n {validation.message}\n </p>\n\n {validation.type === 'error' && validation.technicalMessage && validation.technicalMessage !== validation.message && (\n <details className=\"text-xs text-gray-500\">\n <summary className=\"cursor-pointer select-none\">{t('Show technical details')}</summary>\n <p className=\"mt-1 text-rose-700\">{validation.technicalMessage}</p>\n </details>\n )}\n </div>\n )}\n </div>\n </FieldLayout>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;AAgEA,IAAM,0BAA0B,UAA4B,EAAE,KAAuB;CACjF,MAAM,OAAyB,EAAE;CAEjC,MAAM,SAAS,UAA4B;AACvC,QAAM,SAAS,SAAS;AACpB,QAAK,KAAK,KAAK;AAEf,OAAI,MAAM,QAAQ,MAAM,SAAS,IAAI,KAAK,SAAS,OAC/C,OAAM,KAAK,SAAS;IAE1B;;AAGN,OAAM,QAAQ;AACd,QAAO;;AAGX,IAAM,8BAA8B,uBAAsD;CAKtF,MAAM,OAAO,uBAJW,OAAO,OAAO,sBAAsB,EAAE,CAAC,CAAC,SAAS,UAAU;AAC/E,SAAO,MAAM,QAAQ,MAAM,GAAG,QAAQ,EAAE;GAGR,CAAgB;AAEpD,QAAO,MAAM,KAAK,IAAI,IAAI,KACrB,KAAK,SAAS;AACX,SAAO,OAAO,MAAM,UAAU,WAAW,KAAK,MAAM,MAAM,GAAG;GAC/D,CACD,OAAO,QAAQ,CAAC,CAAC;;AAG1B,IAAM,4BAA4B,uBAAoE;AAOlG,QAFa,uBAJW,OAAO,OAAO,sBAAsB,EAAE,CAAC,CAAC,SAAS,UAAU;AAC/E,SAAO,MAAM,QAAQ,MAAM,GAAG,QAAQ,EAAE;GAGR,CAE7B,CAAK,QAAQ,KAAK,SAAS;EAC9B,MAAM,QAAQ,OAAO,MAAM,UAAU,WAAW,KAAK,MAAM,MAAM,GAAG;AACpE,MAAI,CAAC,MACD,QAAO;AAIX,MAAI,UADU,OAAO,MAAM,UAAU,WAAW,KAAK,MAAM,MAAM,GAAG,OAC9C;AAEtB,SAAO;IACR,EAAE,CAA2B;;AAGpC,IAAM,uBAAuB,UAA2B;AACpD,KAAI,OAAO,UAAU,SACjB,QAAO;AAGX,KAAI,MAAM,QAAQ,MAAM,CACpB,QAAO,eAAe,MAAM;AAGhC,KAAI,SAAS,OAAO,UAAU,YAAY,MAAM,QAAS,MAAkC,QAAQ,CAC/F,QAAO,eAAgB,MAAiC,QAAQ;AAGpE,QAAO;;AAGX,IAAM,6BAA6B,mBAA2C;CAC1E,MAAM,YAAY,OAAO,mBAAmB,WAAW,iBAAiB;AAExE,KAAI,CAAC,UACD,QAAO;CAGX,MAAM,QAAQ,UAAU,MAAM,mCAAmC;AACjE,KAAI,CAAC,MACD,QAAO;CAGX,MAAM,YAAY,OAAO,SAAS,MAAM,MAAM,IAAI,GAAG;AAErD,QAAO,OAAO,UAAU,UAAU,GAAG,YAAY;;AAGrD,IAAM,sBAAsB,OAAgB,eAAuC;AAC/E,KAAI,CAAC,MAAM,QAAQ,MAAM,IAAI,CAAC,MAAM,UAAU,OAAO,eAAe,YAAY,CAAC,WAC7E,QAAO;CAGX,MAAM,YAAY,MAAM,WAAW,SAAS;EACxC,MAAM,eAAgB,QAAQ,OAAO,SAAS,WAAY,OAA0B,EAAE;AACtF,SAAO,aAAa,YAAY,cAAc,aAAa,WAAW;GACxE;AAEF,QAAO,aAAa,IAAI,YAAY;;AAGxC,IAAM,6BAA6B,OAAgB,oBAA4B;CAC3E,MAAM,gBAAiB,SAAS,OAAO,UAAU,WAAY,QAA4B,EAAE;CAC3F,MAAM,eAAe,cAAc,UAAU;CAC7C,MAAM,UAAU,cAAc,WAAW,cAAc,WAAW;AAElE,QAAO;EACH,SAAS,OAAO,QAAQ;EACxB,kBAAkB,OAAO,cAAc,oBAAoB,GAAG;EACjE;;AAGL,IAAa,qBAAqB,EAAE,MAAM,YAAoC;CAC1E,MAAM,IAAI,gBAAgB;CAC1B,MAAM,EAAE,OAAO,UAAU,WAAW,eAAe,MAAM,MAAM,KAAK;CACpE,MAAM,CAAC,WAAW,gBAAgB,SAAS,MAAM;CACjD,MAAM,CAAC,YAAY,iBAAiB,SAAS,MAAM;CACnD,MAAM,CAAC,YAAY,iBAAiB,SAA0B;EAAE,MAAM;EAAQ,SAAS;EAAI,CAAC;CAC5F,MAAM,EACF,uBACA,wBACA,uBACA,gCACA,8BAA8B;CAElC,MAAM,6BAA6B,cAAc;AAC7C,MAAI,MAAM,mBACN,QAAO,MAAM;EAGjB,MAAM,EAAE,mBAAmB;AAC3B,MAAI,CAAC,kBAAkB,CAAC,sBACpB;EAGJ,MAAM,QAAQ,MAAM,gBAAgB,QAAQ;EAC5C,MAAM,aAAa,MAAM,gBAAgB,aAAa;EACtD,MAAM,iBAAiB,0BAA0B,MAAM,WAAW;EAClE,MAAM,kBAAkB,mBAAmB,OAAO,WAAW;EAC7D,MAAM,mBAAmB,OAAO,UAAU,eAAe,GAAG,iBAAiB;AAM7E,SAAO,sBAAsB;GAJzB,GAAG;GACH,GAAI,OAAO,UAAU,iBAAiB,GAAG,EAAE,kBAAkB,GAAG,EAAE;GAGzC,EAAsB,EAAE,MAAM,CAAC;IAC7D;EAAC;EAAO;EAAM;EAAsB,CAAC;CAExC,MAAM,0BAA0B,cAAc;AAC1C,SAAO,2BAA2B,2BAA2B;IAC9D,CAAC,2BAA2B,CAAC;CAChC,MAAM,cAAc,cAAc;AAC9B,SAAO,yBAAyB,2BAA2B;IAC5D,CAAC,2BAA2B,CAAC;CAEhC,MAAM,gBAAgB,YAAY;EAC9B,MAAM,UAAU,oBAAoB,MAAM,CAAC,MAAM;AACjD,MAAI,CAAC,SAAS;AACV,iBAAc;IAAE,MAAM;IAAS,SAAS,EAAE,2BAA2B;IAAE,CAAC;AACxE;;AAGJ,gBAAc,KAAK;AACnB,gBAAc;GAAE,MAAM;GAAQ,SAAS;GAAI,kBAAkB;GAAI,CAAC;AAElE,MAAI;GAEA,MAAM,WAAW,MAAM,YAAY,QADpB,MAAM,oBAAoB,mDACU,EAC/C,MAAM;IACF;IACA,iBAAiB;IACjB;IACH,EACJ,CAAC;GAEF,MAAM,UAAW,UAAU,QAAQ;GACnC,MAAM,UAAU,QAAQ,SAAS,MAAM;GACvC,MAAM,UAAU,OAAO,SAAS,WAAW,GAAG;GAC9C,MAAM,mBAAmB,OAAO,SAAS,oBAAoB,GAAG;AAEhE,iBAAc;IACV,MAAM,UAAU,YAAY;IAC5B,SAAS,YAAY,UAAU,EAAE,oBAAoB,GAAG,EAAE,sBAAsB;IAChF;IACH,CAAC;WACG,OAAO;GACZ,MAAM,EAAE,SAAS,qBAAqB,0BAA0B,OAAO,EAAE,8BAA8B,CAAC;AACxG,iBAAc;IACV,MAAM;IACN,SAAS,OAAO,QAAQ;IACxB;IACH,CAAC;YACI;AACN,iBAAc,MAAM;;;AAI5B,QACI,oBAAC,aAAD;EACI,MAAM,MAAM;EACZ,OAAO,MAAM;EACb,cAAc,MAAM;EACpB,SAAS,MAAM;EACf,UAAU,MAAM;EACR;EACR,aAAa;YAEb,qBAAC,OAAD;GAAK,WAAU;aAAf,CACI,oBAAC,cAAD;IACI,OAAO,SAAS;IAChB,UAAU;IACV,aAAa,MAAM;IACnB,MAAM,MAAM;IACZ,SAAS,CAAC,cAAc;IACxB,iBAAiB,EAAE,QAAQ,oBAAoB,wBAAwB,uBAAuB,oBAAoB,iCAAiC;AAC/I,YACI,oBAAC,qBAAD;MACY;MACY;MACI;MACD;MACH;MACQ;MACjB;MACX,mBAAmB;MACP;MACZ,YAAY;MACd,CAAA;;IAGV,UAAU,MAAM;IAChB,WAAW,OAAO,SAAS;IAC3B,oBAAoB;IACI;IACD;IACM;IAC7B,iCAAiC,MAAM;IACzC,CAAA,EAED,WAAW,SAAS,UACjB,qBAAC,OAAD;IAAK,WAAU;cAAf,CACI,qBAAC,KAAD;KAAG,WAAW,GACV,2BACA,WAAW,SAAS,YAAY,qBAAqB,gBACxD;eAHD,CAIK,WAAW,SAAS,YACjB,oBAAC,iBAAD;MAAiB,MAAM;MAAS,WAAU;MAAkB,CAAA,GAC5D,MACH,WAAW,QACZ;QAEH,WAAW,SAAS,WAAW,WAAW,oBAAoB,WAAW,qBAAqB,WAAW,WACtG,qBAAC,WAAD;KAAS,WAAU;eAAnB,CACI,oBAAC,WAAD;MAAS,WAAU;gBAA8B,EAAE,yBAAyB;MAAW,CAAA,EACvF,oBAAC,KAAD;MAAG,WAAU;gBAAsB,WAAW;MAAqB,CAAA,CAC7D;OAEZ;MAER;;EACI,CAAA"}
@@ -1,17 +0,0 @@
1
- import { Editor } from '@tiptap/core';
2
- import { VariableCategories } from '../../components/tiptap/VariableDropdown';
3
- type CalculationsToolbarProps = {
4
- editor: Editor | null | undefined;
5
- variableCategories: VariableCategories;
6
- variableCategoryLabels?: Record<string, string>;
7
- variableCategoryOrder?: string[];
8
- variablePickerOpen: boolean;
9
- onVariablePickerOpenChange: (open: boolean) => void;
10
- guideOpen: boolean;
11
- onGuideOpenChange: (open: boolean) => void;
12
- validating: boolean;
13
- onValidate: () => void;
14
- };
15
- export declare const CalculationsToolbar: ({ editor, variableCategories, variableCategoryLabels, variableCategoryOrder, variablePickerOpen, onVariablePickerOpenChange, guideOpen, onGuideOpenChange, validating, onValidate, }: CalculationsToolbarProps) => import("react/jsx-runtime").JSX.Element;
16
- export {};
17
- //# sourceMappingURL=CalculationsToolbar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CalculationsToolbar.d.ts","sourceRoot":"","sources":["../../../src/forms/fields/CalculationsToolbar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AA+DrG,KAAK,wBAAwB,GAAG;IAC5B,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,0BAA0B,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,sLAWjC,wBAAwB,4CA0D1B,CAAC"}
@@ -1,130 +0,0 @@
1
- import { useTranslation } from "../../hooks/useTranslation.js";
2
- import "../../hooks/index.js";
3
- import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger } from "../../components/Dialog.js";
4
- import { VariableDropdown } from "../../components/tiptap/VariableDropdown.js";
5
- import "../../components/index.js";
6
- import { Button } from "../../components/Button.js";
7
- import { jsx, jsxs } from "react/jsx-runtime";
8
- //#region src/forms/fields/CalculationsToolbar.tsx
9
- var OPERATOR_GROUPS = [
10
- {
11
- title: "Arithmetic",
12
- items: [
13
- ["+", "Addition"],
14
- ["-", "Subtraction"],
15
- ["*", "Multiplication"],
16
- ["/", "Division"],
17
- ["%", "Modulus"],
18
- ["**", "Power"]
19
- ]
20
- },
21
- {
22
- title: "Bitwise",
23
- items: [
24
- ["&", "AND"],
25
- ["|", "OR"],
26
- ["^", "XOR"]
27
- ]
28
- },
29
- {
30
- title: "Logical",
31
- items: [
32
- ["!, not", "Not"],
33
- ["&&, and", "And"],
34
- ["||, or", "Or"]
35
- ]
36
- },
37
- {
38
- title: "Comparison",
39
- items: [
40
- ["==", "Equal"],
41
- ["===", "Identical"],
42
- ["!=", "Not equal"],
43
- ["!==", "Not identical"],
44
- ["<, >, <=, >=", "Relational"],
45
- ["matches", "Regex match"]
46
- ]
47
- },
48
- {
49
- title: "Ternary",
50
- items: [["a ? b : c", "Conditional"]]
51
- },
52
- {
53
- title: "Array",
54
- items: [["in", "Contains"], ["not in", "Does not contain"]]
55
- },
56
- {
57
- title: "Numeric",
58
- items: [["..", "Range"]]
59
- },
60
- {
61
- title: "String",
62
- items: [["~", "Concatenation"]]
63
- }
64
- ];
65
- var CalculationsToolbar = ({ editor, variableCategories, variableCategoryLabels, variableCategoryOrder, variablePickerOpen, onVariablePickerOpenChange, guideOpen, onGuideOpenChange, validating, onValidate }) => {
66
- const t = useTranslation();
67
- return /* @__PURE__ */ jsxs("div", {
68
- className: "flex items-center justify-between relative z-10 px-[8px] py-[8px] border-b border-[rgba(96,125,159,0.4)] bg-white shadow-[0_2px_3px_rgba(49,49,93,.07)]",
69
- children: [/* @__PURE__ */ jsx("div", {
70
- className: "flex flex-wrap gap-1",
71
- children: /* @__PURE__ */ jsx(VariableDropdown, {
72
- editor,
73
- variableCategories,
74
- variableCategoryLabels,
75
- variableCategoryOrder,
76
- title: t("Insert Variable"),
77
- buttonLabel: t("Insert Field"),
78
- buttonVariant: "outline",
79
- buttonSize: "sm",
80
- buttonClassName: "h-auto [&_svg]:size-3",
81
- open: variablePickerOpen,
82
- onOpenChange: onVariablePickerOpenChange
83
- })
84
- }), /* @__PURE__ */ jsxs("div", {
85
- className: "flex items-center gap-2",
86
- children: [/* @__PURE__ */ jsxs(Dialog, {
87
- open: guideOpen,
88
- onOpenChange: onGuideOpenChange,
89
- children: [/* @__PURE__ */ jsx(DialogTrigger, { render: /* @__PURE__ */ jsx(Button, {
90
- variant: "outline",
91
- size: "sm",
92
- children: t("Syntax Guide")
93
- }) }), /* @__PURE__ */ jsxs(DialogContent, {
94
- className: "max-w-4xl",
95
- showCloseButton: true,
96
- children: [/* @__PURE__ */ jsxs(DialogHeader, { children: [/* @__PURE__ */ jsx(DialogTitle, { children: t("Syntax Guide") }), /* @__PURE__ */ jsx(DialogDescription, { children: t("Use field variables and expression syntax in formulas.") })] }), /* @__PURE__ */ jsx("div", {
97
- className: "grid gap-4 p-4 text-sm md:grid-cols-2 xl:grid-cols-4",
98
- children: OPERATOR_GROUPS.map((group) => {
99
- return /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
100
- className: "mb-2 font-semibold text-gray-700",
101
- children: t(group.title)
102
- }), /* @__PURE__ */ jsx("ul", {
103
- className: "space-y-1 text-xs text-gray-600",
104
- children: group.items.map(([token, label]) => {
105
- return /* @__PURE__ */ jsxs("li", {
106
- className: "flex items-center gap-2",
107
- children: [/* @__PURE__ */ jsx("code", {
108
- className: "rounded bg-gray-200 px-1.5 py-0.5 font-mono text-[11px]",
109
- children: token
110
- }), /* @__PURE__ */ jsx("span", { children: t(label) })]
111
- }, `${group.title}-${token}`);
112
- })
113
- })] }, group.title);
114
- })
115
- })]
116
- })]
117
- }), /* @__PURE__ */ jsx(Button, {
118
- variant: "secondary",
119
- size: "sm",
120
- loading: validating,
121
- onClick: onValidate,
122
- children: t("Test Formula")
123
- })]
124
- })]
125
- });
126
- };
127
- //#endregion
128
- export { CalculationsToolbar };
129
-
130
- //# sourceMappingURL=CalculationsToolbar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CalculationsToolbar.js","names":[],"sources":["../../../src/forms/fields/CalculationsToolbar.tsx"],"sourcesContent":["import { Button, Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger } from '@verbb/plugin-kit-react/components';\nimport type { Editor } from '@tiptap/core';\nimport { VariableDropdown } from '@verbb/plugin-kit-react/components/tiptap/VariableDropdown';\nimport type { VariableCategories } from '@verbb/plugin-kit-react/components/tiptap/VariableDropdown';\nimport { useTranslation } from '@verbb/plugin-kit-react/hooks';\n\nconst OPERATOR_GROUPS = [\n {\n title: 'Arithmetic',\n items: [\n ['+', 'Addition'],\n ['-', 'Subtraction'],\n ['*', 'Multiplication'],\n ['/', 'Division'],\n ['%', 'Modulus'],\n ['**', 'Power'],\n ],\n },\n {\n title: 'Bitwise',\n items: [\n ['&', 'AND'],\n ['|', 'OR'],\n ['^', 'XOR'],\n ],\n },\n {\n title: 'Logical',\n items: [\n ['!, not', 'Not'],\n ['&&, and', 'And'],\n ['||, or', 'Or'],\n ],\n },\n {\n title: 'Comparison',\n items: [\n ['==', 'Equal'],\n ['===', 'Identical'],\n ['!=', 'Not equal'],\n ['!==', 'Not identical'],\n ['<, >, <=, >=', 'Relational'],\n ['matches', 'Regex match'],\n ],\n },\n {\n title: 'Ternary',\n items: [['a ? b : c', 'Conditional']],\n },\n {\n title: 'Array',\n items: [\n ['in', 'Contains'],\n ['not in', 'Does not contain'],\n ],\n },\n {\n title: 'Numeric',\n items: [['..', 'Range']],\n },\n {\n title: 'String',\n items: [['~', 'Concatenation']],\n },\n];\n\ntype CalculationsToolbarProps = {\n editor: Editor | null | undefined;\n variableCategories: VariableCategories;\n variableCategoryLabels?: Record<string, string>;\n variableCategoryOrder?: string[];\n variablePickerOpen: boolean;\n onVariablePickerOpenChange: (open: boolean) => void;\n guideOpen: boolean;\n onGuideOpenChange: (open: boolean) => void;\n validating: boolean;\n onValidate: () => void;\n};\n\nexport const CalculationsToolbar = ({\n editor,\n variableCategories,\n variableCategoryLabels,\n variableCategoryOrder,\n variablePickerOpen,\n onVariablePickerOpenChange,\n guideOpen,\n onGuideOpenChange,\n validating,\n onValidate,\n}: CalculationsToolbarProps) => {\n const t = useTranslation();\n\n return (\n <div className=\"flex items-center justify-between relative z-10 px-[8px] py-[8px] border-b border-[rgba(96,125,159,0.4)] bg-white shadow-[0_2px_3px_rgba(49,49,93,.07)]\">\n <div className=\"flex flex-wrap gap-1\">\n <VariableDropdown\n editor={editor}\n variableCategories={variableCategories}\n variableCategoryLabels={variableCategoryLabels}\n variableCategoryOrder={variableCategoryOrder}\n title={t('Insert Variable')}\n buttonLabel={t('Insert Field')}\n buttonVariant=\"outline\"\n buttonSize=\"sm\"\n buttonClassName=\"h-auto [&_svg]:size-3\"\n open={variablePickerOpen}\n onOpenChange={onVariablePickerOpenChange}\n />\n </div>\n\n <div className=\"flex items-center gap-2\">\n <Dialog open={guideOpen} onOpenChange={onGuideOpenChange}>\n <DialogTrigger render={<Button variant=\"outline\" size=\"sm\">{t('Syntax Guide')}</Button>} />\n <DialogContent className=\"max-w-4xl\" showCloseButton>\n <DialogHeader>\n <DialogTitle>{t('Syntax Guide')}</DialogTitle>\n <DialogDescription>{t('Use field variables and expression syntax in formulas.')}</DialogDescription>\n </DialogHeader>\n\n <div className=\"grid gap-4 p-4 text-sm md:grid-cols-2 xl:grid-cols-4\">\n {OPERATOR_GROUPS.map((group) => {\n return (\n <div key={group.title}>\n <p className=\"mb-2 font-semibold text-gray-700\">{t(group.title)}</p>\n <ul className=\"space-y-1 text-xs text-gray-600\">\n {group.items.map(([token, label]) => {\n return (\n <li key={`${group.title}-${token}`} className=\"flex items-center gap-2\">\n <code className=\"rounded bg-gray-200 px-1.5 py-0.5 font-mono text-[11px]\">{token}</code>\n <span>{t(label)}</span>\n </li>\n );\n })}\n </ul>\n </div>\n );\n })}\n </div>\n </DialogContent>\n </Dialog>\n\n <Button variant=\"secondary\" size=\"sm\" loading={validating} onClick={onValidate}>\n {t('Test Formula')}\n </Button>\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;;;AAMA,IAAM,kBAAkB;CACpB;EACI,OAAO;EACP,OAAO;GACH,CAAC,KAAK,WAAW;GACjB,CAAC,KAAK,cAAc;GACpB,CAAC,KAAK,iBAAiB;GACvB,CAAC,KAAK,WAAW;GACjB,CAAC,KAAK,UAAU;GAChB,CAAC,MAAM,QAAQ;GAClB;EACJ;CACD;EACI,OAAO;EACP,OAAO;GACH,CAAC,KAAK,MAAM;GACZ,CAAC,KAAK,KAAK;GACX,CAAC,KAAK,MAAM;GACf;EACJ;CACD;EACI,OAAO;EACP,OAAO;GACH,CAAC,UAAU,MAAM;GACjB,CAAC,WAAW,MAAM;GAClB,CAAC,UAAU,KAAK;GACnB;EACJ;CACD;EACI,OAAO;EACP,OAAO;GACH,CAAC,MAAM,QAAQ;GACf,CAAC,OAAO,YAAY;GACpB,CAAC,MAAM,YAAY;GACnB,CAAC,OAAO,gBAAgB;GACxB,CAAC,gBAAgB,aAAa;GAC9B,CAAC,WAAW,cAAc;GAC7B;EACJ;CACD;EACI,OAAO;EACP,OAAO,CAAC,CAAC,aAAa,cAAc,CAAC;EACxC;CACD;EACI,OAAO;EACP,OAAO,CACH,CAAC,MAAM,WAAW,EAClB,CAAC,UAAU,mBAAmB,CACjC;EACJ;CACD;EACI,OAAO;EACP,OAAO,CAAC,CAAC,MAAM,QAAQ,CAAC;EAC3B;CACD;EACI,OAAO;EACP,OAAO,CAAC,CAAC,KAAK,gBAAgB,CAAC;EAClC;CACJ;AAeD,IAAa,uBAAuB,EAChC,QACA,oBACA,wBACA,uBACA,oBACA,4BACA,WACA,mBACA,YACA,iBAC4B;CAC5B,MAAM,IAAI,gBAAgB;AAE1B,QACI,qBAAC,OAAD;EAAK,WAAU;YAAf,CACI,oBAAC,OAAD;GAAK,WAAU;aACX,oBAAC,kBAAD;IACY;IACY;IACI;IACD;IACvB,OAAO,EAAE,kBAAkB;IAC3B,aAAa,EAAE,eAAe;IAC9B,eAAc;IACd,YAAW;IACX,iBAAgB;IAChB,MAAM;IACN,cAAc;IAChB,CAAA;GACA,CAAA,EAEN,qBAAC,OAAD;GAAK,WAAU;aAAf,CACI,qBAAC,QAAD;IAAQ,MAAM;IAAW,cAAc;cAAvC,CACI,oBAAC,eAAD,EAAe,QAAQ,oBAAC,QAAD;KAAQ,SAAQ;KAAU,MAAK;eAAM,EAAE,eAAe;KAAU,CAAA,EAAI,CAAA,EAC3F,qBAAC,eAAD;KAAe,WAAU;KAAY,iBAAA;eAArC,CACI,qBAAC,cAAD,EAAA,UAAA,CACI,oBAAC,aAAD,EAAA,UAAc,EAAE,eAAe,EAAe,CAAA,EAC9C,oBAAC,mBAAD,EAAA,UAAoB,EAAE,yDAAyD,EAAqB,CAAA,CACzF,EAAA,CAAA,EAEf,oBAAC,OAAD;MAAK,WAAU;gBACV,gBAAgB,KAAK,UAAU;AAC5B,cACI,qBAAC,OAAD,EAAA,UAAA,CACI,oBAAC,KAAD;QAAG,WAAU;kBAAoC,EAAE,MAAM,MAAM;QAAK,CAAA,EACpE,oBAAC,MAAD;QAAI,WAAU;kBACT,MAAM,MAAM,KAAK,CAAC,OAAO,WAAW;AACjC,gBACI,qBAAC,MAAD;UAAoC,WAAU;oBAA9C,CACI,oBAAC,QAAD;WAAM,WAAU;qBAA2D;WAAa,CAAA,EACxF,oBAAC,QAAD,EAAA,UAAO,EAAE,MAAM,EAAQ,CAAA,CACtB;YAHI,GAAG,MAAM,MAAM,GAAG,QAGtB;UAEX;QACD,CAAA,CACH,EAAA,EAZI,MAAM,MAYV;QAEZ;MACA,CAAA,CACM;OACX;OAET,oBAAC,QAAD;IAAQ,SAAQ;IAAY,MAAK;IAAK,SAAS;IAAY,SAAS;cAC/D,EAAE,eAAe;IACb,CAAA,CACP;KACJ"}
@@ -1,22 +0,0 @@
1
- import { EditableTable } from '../../components';
2
- import { ComponentProps } from 'react';
3
- import { SchemaFormEngineApi } from '../engine/context';
4
- type EditableTableFieldProps = {
5
- form: SchemaFormEngineApi;
6
- field: {
7
- name: string;
8
- label?: string;
9
- instructions?: string;
10
- warning?: string;
11
- required?: boolean;
12
- columns: ComponentProps<typeof EditableTable>['columns'];
13
- addRowLabel?: string;
14
- allowReorder?: boolean;
15
- allowAdd?: boolean;
16
- allowDelete?: boolean;
17
- newRowDefaults?: Record<string, unknown>;
18
- };
19
- };
20
- export declare const EditableTableField: ({ form, field }: EditableTableFieldProps) => import("react/jsx-runtime").JSX.Element;
21
- export {};
22
- //# sourceMappingURL=EditableTableField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EditableTableField.d.ts","sourceRoot":"","sources":["../../../src/forms/fields/EditableTableField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,KAAK,uBAAuB,GAAG;IAC3B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,cAAc,CAAC,OAAO,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC;QACzD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,CAAC;CACL,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,uBAAuB,4CAoC1E,CAAC"}
@@ -1,37 +0,0 @@
1
- import { EditableTable } from "../../components/EditableTable.js";
2
- import "../../components/index.js";
3
- import { FieldLayout } from "../Field.js";
4
- import { useEditableTableFieldBinding } from "../useEditableTableFieldBinding.js";
5
- import { jsx } from "react/jsx-runtime";
6
- //#region src/forms/fields/EditableTableField.tsx
7
- var EditableTableField = ({ form, field }) => {
8
- const { rows, setRows, errors, cellErrors, handleCellChange } = useEditableTableFieldBinding(form, field.name);
9
- return /* @__PURE__ */ jsx(FieldLayout, {
10
- name: field.name,
11
- label: field.label,
12
- instructions: field.instructions,
13
- warning: field.warning,
14
- required: field.required,
15
- errors,
16
- withControl: false,
17
- children: /* @__PURE__ */ jsx(EditableTable, {
18
- columns: field.columns,
19
- rows,
20
- onChange: setRows,
21
- onCellChange: handleCellChange,
22
- addRowLabel: field.addRowLabel,
23
- allowReorder: field.allowReorder,
24
- allowAdd: field.allowAdd,
25
- allowDelete: field.allowDelete,
26
- newRowDefaults: field.newRowDefaults,
27
- className: "",
28
- fieldName: field.name,
29
- cellErrors,
30
- modifyColumn: void 0
31
- })
32
- });
33
- };
34
- //#endregion
35
- export { EditableTableField };
36
-
37
- //# sourceMappingURL=EditableTableField.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EditableTableField.js","names":[],"sources":["../../../src/forms/fields/EditableTableField.tsx"],"sourcesContent":["import { EditableTable } from '@verbb/plugin-kit-react/components';\nimport type { ComponentProps } from 'react';\nimport { FieldLayout } from '../Field';\nimport type { SchemaFormEngineApi } from '../engine/context';\nimport { useEditableTableFieldBinding } from '../useEditableTableFieldBinding';\n\ntype EditableTableFieldProps = {\n form: SchemaFormEngineApi;\n field: {\n name: string;\n label?: string;\n instructions?: string;\n warning?: string;\n required?: boolean;\n columns: ComponentProps<typeof EditableTable>['columns'];\n addRowLabel?: string;\n allowReorder?: boolean;\n allowAdd?: boolean;\n allowDelete?: boolean;\n newRowDefaults?: Record<string, unknown>;\n };\n};\n\nexport const EditableTableField = ({ form, field }: EditableTableFieldProps) => {\n const {\n rows,\n setRows,\n errors,\n cellErrors,\n handleCellChange,\n } = useEditableTableFieldBinding(form, field.name);\n\n return (\n <FieldLayout\n name={field.name}\n label={field.label}\n instructions={field.instructions}\n warning={field.warning}\n required={field.required}\n errors={errors}\n withControl={false}\n >\n <EditableTable\n columns={field.columns}\n rows={rows}\n onChange={setRows}\n onCellChange={handleCellChange}\n addRowLabel={field.addRowLabel}\n allowReorder={field.allowReorder}\n allowAdd={field.allowAdd}\n allowDelete={field.allowDelete}\n newRowDefaults={field.newRowDefaults}\n className=\"\"\n fieldName={field.name}\n cellErrors={cellErrors}\n modifyColumn={undefined}\n />\n </FieldLayout>\n );\n};\n"],"mappings":";;;;;;AAuBA,IAAa,sBAAsB,EAAE,MAAM,YAAqC;CAC5E,MAAM,EACF,MACA,SACA,QACA,YACA,qBACA,6BAA6B,MAAM,MAAM,KAAK;AAElD,QACI,oBAAC,aAAD;EACI,MAAM,MAAM;EACZ,OAAO,MAAM;EACb,cAAc,MAAM;EACpB,SAAS,MAAM;EACf,UAAU,MAAM;EACR;EACR,aAAa;YAEb,oBAAC,eAAD;GACI,SAAS,MAAM;GACT;GACN,UAAU;GACV,cAAc;GACd,aAAa,MAAM;GACnB,cAAc,MAAM;GACpB,UAAU,MAAM;GAChB,aAAa,MAAM;GACnB,gBAAgB,MAAM;GACtB,WAAU;GACV,WAAW,MAAM;GACL;GACZ,cAAc,KAAA;GAChB,CAAA;EACQ,CAAA"}
@@ -1,20 +0,0 @@
1
- import { SchemaFormEngineApi } from '../engine/context';
2
- type ElementSelectFieldProps = {
3
- form: SchemaFormEngineApi;
4
- field: {
5
- name: string;
6
- label?: string;
7
- instructions?: string;
8
- warning?: string;
9
- required?: boolean;
10
- elementType?: string;
11
- sources?: string[];
12
- criteria?: Record<string, unknown>;
13
- limit?: number;
14
- elementSelectOptionsAction?: string;
15
- elementSelectStorageKeyPrefix?: string;
16
- };
17
- };
18
- export declare const ElementSelectField: ({ form, field }: ElementSelectFieldProps) => import("react/jsx-runtime").JSX.Element;
19
- export {};
20
- //# sourceMappingURL=ElementSelectField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ElementSelectField.d.ts","sourceRoot":"","sources":["../../../src/forms/fields/ElementSelectField.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAW7D,KAAK,uBAAuB,GAAG;IAC3B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,0BAA0B,CAAC,EAAE,MAAM,CAAC;QACpC,6BAA6B,CAAC,EAAE,MAAM,CAAC;KAC1C,CAAC;CACL,CAAC;AAkEF,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,uBAAuB,4CAsL1E,CAAC"}