@verbb/plugin-kit-react 1.0.9 → 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 (720) hide show
  1. package/CHANGELOG.md +25 -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 -73
  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 -155
  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 -35
  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/uniqueHandle.d.ts +0 -9
  549. package/dist/forms/engine/rules/uniqueHandle.d.ts.map +0 -1
  550. package/dist/forms/engine/rules/uniqueHandle.js +0 -95
  551. package/dist/forms/engine/rules/uniqueHandle.js.map +0 -1
  552. package/dist/forms/engine/rules/utils.d.ts +0 -3
  553. package/dist/forms/engine/rules/utils.d.ts.map +0 -1
  554. package/dist/forms/engine/rules/utils.js +0 -21
  555. package/dist/forms/engine/rules/utils.js.map +0 -1
  556. package/dist/forms/fields/CalculationsField.d.ts +0 -24
  557. package/dist/forms/fields/CalculationsField.d.ts.map +0 -1
  558. package/dist/forms/fields/CalculationsField.js +0 -215
  559. package/dist/forms/fields/CalculationsField.js.map +0 -1
  560. package/dist/forms/fields/CalculationsToolbar.d.ts +0 -17
  561. package/dist/forms/fields/CalculationsToolbar.d.ts.map +0 -1
  562. package/dist/forms/fields/CalculationsToolbar.js +0 -130
  563. package/dist/forms/fields/CalculationsToolbar.js.map +0 -1
  564. package/dist/forms/fields/EditableTableField.d.ts +0 -22
  565. package/dist/forms/fields/EditableTableField.d.ts.map +0 -1
  566. package/dist/forms/fields/EditableTableField.js +0 -37
  567. package/dist/forms/fields/EditableTableField.js.map +0 -1
  568. package/dist/forms/fields/ElementSelectField.d.ts +0 -20
  569. package/dist/forms/fields/ElementSelectField.d.ts.map +0 -1
  570. package/dist/forms/fields/ElementSelectField.js +0 -215
  571. package/dist/forms/fields/ElementSelectField.js.map +0 -1
  572. package/dist/forms/fields/HandleField.d.ts +0 -20
  573. package/dist/forms/fields/HandleField.d.ts.map +0 -1
  574. package/dist/forms/fields/HandleField.js +0 -70
  575. package/dist/forms/fields/HandleField.js.map +0 -1
  576. package/dist/forms/fields/ListField.d.ts +0 -18
  577. package/dist/forms/fields/ListField.d.ts.map +0 -1
  578. package/dist/forms/fields/ListField.js +0 -52
  579. package/dist/forms/fields/ListField.js.map +0 -1
  580. package/dist/forms/fields/RichTextField.d.ts +0 -24
  581. package/dist/forms/fields/RichTextField.d.ts.map +0 -1
  582. package/dist/forms/fields/RichTextField.js +0 -53
  583. package/dist/forms/fields/RichTextField.js.map +0 -1
  584. package/dist/forms/fields/StaticTableField.d.ts +0 -34
  585. package/dist/forms/fields/StaticTableField.d.ts.map +0 -1
  586. package/dist/forms/fields/StaticTableField.js +0 -128
  587. package/dist/forms/fields/StaticTableField.js.map +0 -1
  588. package/dist/forms/fields/VariablePickerField.d.ts +0 -21
  589. package/dist/forms/fields/VariablePickerField.d.ts.map +0 -1
  590. package/dist/forms/fields/VariablePickerField.js +0 -51
  591. package/dist/forms/fields/VariablePickerField.js.map +0 -1
  592. package/dist/forms/store/element-store.d.ts +0 -11
  593. package/dist/forms/store/element-store.d.ts.map +0 -1
  594. package/dist/forms/store/element-store.js +0 -41
  595. package/dist/forms/store/element-store.js.map +0 -1
  596. package/dist/forms/useEditableTableFieldBinding.d.ts +0 -13
  597. package/dist/forms/useEditableTableFieldBinding.d.ts.map +0 -1
  598. package/dist/forms/useEditableTableFieldBinding.js +0 -91
  599. package/dist/forms/useEditableTableFieldBinding.js.map +0 -1
  600. package/dist/hooks/useKeyboardShortcuts.d.ts +0 -14
  601. package/dist/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  602. package/dist/hooks/useKeyboardShortcuts.js +0 -67
  603. package/dist/hooks/useKeyboardShortcuts.js.map +0 -1
  604. package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -15
  605. package/dist/node_modules/@babel/runtime/helpers/arrayLikeToArray.js.map +0 -1
  606. package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -15
  607. package/dist/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js.map +0 -1
  608. package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -13
  609. package/dist/node_modules/@babel/runtime/helpers/classCallCheck.js.map +0 -1
  610. package/dist/node_modules/@babel/runtime/helpers/createClass.js +0 -21
  611. package/dist/node_modules/@babel/runtime/helpers/createClass.js.map +0 -1
  612. package/dist/node_modules/@babel/runtime/helpers/defineProperty.js +0 -20
  613. package/dist/node_modules/@babel/runtime/helpers/defineProperty.js.map +0 -1
  614. package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -13
  615. package/dist/node_modules/@babel/runtime/helpers/interopRequireDefault.js.map +0 -1
  616. package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -13
  617. package/dist/node_modules/@babel/runtime/helpers/iterableToArray.js.map +0 -1
  618. package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -13
  619. package/dist/node_modules/@babel/runtime/helpers/nonIterableSpread.js.map +0 -1
  620. package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -21
  621. package/dist/node_modules/@babel/runtime/helpers/toConsumableArray.js.map +0 -1
  622. package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -22
  623. package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js.map +0 -1
  624. package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -18
  625. package/dist/node_modules/@babel/runtime/helpers/toPropertyKey.js.map +0 -1
  626. package/dist/node_modules/@babel/runtime/helpers/typeof.js +0 -18
  627. package/dist/node_modules/@babel/runtime/helpers/typeof.js.map +0 -1
  628. package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -19
  629. package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js.map +0 -1
  630. package/dist/node_modules/jexl/dist/Expression.js +0 -84
  631. package/dist/node_modules/jexl/dist/Expression.js.map +0 -1
  632. package/dist/node_modules/jexl/dist/Jexl.js +0 -165
  633. package/dist/node_modules/jexl/dist/Jexl.js.map +0 -1
  634. package/dist/node_modules/jexl/dist/Lexer.js +0 -152
  635. package/dist/node_modules/jexl/dist/Lexer.js.map +0 -1
  636. package/dist/node_modules/jexl/dist/PromiseSync.js +0 -87
  637. package/dist/node_modules/jexl/dist/PromiseSync.js.map +0 -1
  638. package/dist/node_modules/jexl/dist/evaluator/Evaluator.js +0 -98
  639. package/dist/node_modules/jexl/dist/evaluator/Evaluator.js.map +0 -1
  640. package/dist/node_modules/jexl/dist/evaluator/handlers.js +0 -162
  641. package/dist/node_modules/jexl/dist/evaluator/handlers.js.map +0 -1
  642. package/dist/node_modules/jexl/dist/grammar.js +0 -195
  643. package/dist/node_modules/jexl/dist/grammar.js.map +0 -1
  644. package/dist/node_modules/jexl/dist/parser/Parser.js +0 -135
  645. package/dist/node_modules/jexl/dist/parser/Parser.js.map +0 -1
  646. package/dist/node_modules/jexl/dist/parser/handlers.js +0 -205
  647. package/dist/node_modules/jexl/dist/parser/handlers.js.map +0 -1
  648. package/dist/node_modules/jexl/dist/parser/states.js +0 -158
  649. package/dist/node_modules/jexl/dist/parser/states.js.map +0 -1
  650. package/dist/types/global.d.d.ts +0 -1
  651. package/dist/types/global.d.js +0 -0
  652. package/dist/utils/classes.d.ts +0 -18
  653. package/dist/utils/classes.d.ts.map +0 -1
  654. package/dist/utils/classes.js +0 -25
  655. package/dist/utils/classes.js.map +0 -1
  656. package/dist/utils/config.d.ts +0 -14
  657. package/dist/utils/config.d.ts.map +0 -1
  658. package/dist/utils/config.js +0 -20
  659. package/dist/utils/config.js.map +0 -1
  660. package/dist/utils/datetime.d.ts +0 -10
  661. package/dist/utils/datetime.d.ts.map +0 -1
  662. package/dist/utils/datetime.js +0 -60
  663. package/dist/utils/datetime.js.map +0 -1
  664. package/dist/utils/documentScrollStability.d.ts +0 -7
  665. package/dist/utils/documentScrollStability.d.ts.map +0 -1
  666. package/dist/utils/documentScrollStability.js +0 -19
  667. package/dist/utils/documentScrollStability.js.map +0 -1
  668. package/dist/utils/handle.d.ts +0 -10
  669. package/dist/utils/handle.d.ts.map +0 -1
  670. package/dist/utils/handle.js +0 -51
  671. package/dist/utils/handle.js.map +0 -1
  672. package/dist/utils/hostBridge.d.ts +0 -40
  673. package/dist/utils/hostBridge.d.ts.map +0 -1
  674. package/dist/utils/hostBridge.js +0 -35
  675. package/dist/utils/hostBridge.js.map +0 -1
  676. package/dist/utils/index.js.map +0 -1
  677. package/dist/utils/portal.d.ts +0 -17
  678. package/dist/utils/portal.d.ts.map +0 -1
  679. package/dist/utils/portal.js +0 -51
  680. package/dist/utils/portal.js.map +0 -1
  681. package/dist/utils/schema.d.ts +0 -17
  682. package/dist/utils/schema.d.ts.map +0 -1
  683. package/dist/utils/schema.js +0 -56
  684. package/dist/utils/schema.js.map +0 -1
  685. package/dist/utils/schemaFieldNames.d.ts +0 -2
  686. package/dist/utils/schemaFieldNames.d.ts.map +0 -1
  687. package/dist/utils/schemaFieldNames.js +0 -16
  688. package/dist/utils/schemaFieldNames.js.map +0 -1
  689. package/dist/utils/schemaIndex.d.ts +0 -6
  690. package/dist/utils/schemaIndex.d.ts.map +0 -1
  691. package/dist/utils/schemaIndex.js +0 -31
  692. package/dist/utils/schemaIndex.js.map +0 -1
  693. package/dist/utils/schemaIndexCache.d.ts +0 -6
  694. package/dist/utils/schemaIndexCache.d.ts.map +0 -1
  695. package/dist/utils/schemaIndexCache.js +0 -32
  696. package/dist/utils/schemaIndexCache.js.map +0 -1
  697. package/dist/utils/schemaNormalize.d.ts +0 -13
  698. package/dist/utils/schemaNormalize.d.ts.map +0 -1
  699. package/dist/utils/schemaNormalize.js +0 -17
  700. package/dist/utils/schemaNormalize.js.map +0 -1
  701. package/dist/utils/store.d.ts +0 -7
  702. package/dist/utils/store.d.ts.map +0 -1
  703. package/dist/utils/store.js +0 -6
  704. package/dist/utils/store.js.map +0 -1
  705. package/dist/utils/timeOptions.d.ts +0 -6
  706. package/dist/utils/timeOptions.d.ts.map +0 -1
  707. package/dist/utils/timeOptions.js +0 -42
  708. package/dist/utils/timeOptions.js.map +0 -1
  709. package/dist/utils/tiptap.d.ts +0 -13
  710. package/dist/utils/tiptap.d.ts.map +0 -1
  711. package/dist/utils/tiptap.js +0 -39
  712. package/dist/utils/tiptap.js.map +0 -1
  713. package/dist/utils/translation.d.ts +0 -5
  714. package/dist/utils/translation.d.ts.map +0 -1
  715. package/dist/utils/translation.js +0 -21
  716. package/dist/utils/translation.js.map +0 -1
  717. package/dist/utils/validation.d.ts +0 -4
  718. package/dist/utils/validation.d.ts.map +0 -1
  719. package/dist/utils/validation.js +0 -253
  720. package/dist/utils/validation.js.map +0 -1
@@ -0,0 +1,43 @@
1
+ import { ReactNode } from 'react';
2
+ import { AppFaultContext, AppFaultKind, AppFaultRecord } from './types.js';
3
+ type RecordFaultInput = {
4
+ kind: AppFaultKind;
5
+ message: string;
6
+ stack?: string;
7
+ tagName?: string;
8
+ fatal?: boolean;
9
+ };
10
+ export type AppFaultProviderProps = AppFaultContext & {
11
+ children: ReactNode;
12
+ /** When false, skip the main-thread watchdog (useful in tests). */
13
+ enableWatchdog?: boolean;
14
+ /** Labels for the fault UI — pass translated strings from the host app. */
15
+ labels?: {
16
+ fatalTitle?: string;
17
+ fatalMessage?: string;
18
+ stuckTitle?: string;
19
+ stuckMessage?: string;
20
+ };
21
+ };
22
+ type AppFaultContextValue = {
23
+ faults: AppFaultRecord[];
24
+ hasFatalFault: boolean;
25
+ isStuck: boolean;
26
+ recordFault: (input: RecordFaultInput) => void;
27
+ resetUi: () => void;
28
+ reload: () => void;
29
+ clearFaults: () => void;
30
+ dismissStuck: () => void;
31
+ };
32
+ export declare function AppFaultProvider({ children, meta, onResetUi, onReload, enableWatchdog, labels, }: AppFaultProviderProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function useAppFault(): AppFaultContextValue;
34
+ /** Optional hook — returns null outside a provider (for chrome mounted in separate portals). */
35
+ export declare function useAppFaultOptional(): AppFaultContextValue | null;
36
+ export type ResetUiButtonProps = {
37
+ className?: string;
38
+ label?: string;
39
+ };
40
+ /** Always-reachable overlay recovery — mount in builder chrome, not inside dialogs. */
41
+ export declare function ResetUiButton({ className, label }: ResetUiButtonProps): import("react/jsx-runtime").JSX.Element | null;
42
+ export {};
43
+ //# sourceMappingURL=AppFaultProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppFaultProvider.d.ts","sourceRoot":"","sources":["../../src/fault/AppFaultProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQH,KAAK,SAAS,EACjB,MAAM,OAAO,CAAC;AAMf,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGhF,KAAK,gBAAgB,GAAG;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,eAAe,GAAG;IAClD,QAAQ,EAAE,SAAS,CAAC;IACpB,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,MAAM,CAAC,EAAE;QACL,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACL,CAAC;AAEF,KAAK,oBAAoB,GAAG;IACxB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAOF,wBAAgB,gBAAgB,CAAC,EAC7B,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,cAAqB,EACrB,MAAM,GACT,EAAE,qBAAqB,2CA0MvB;AAED,wBAAgB,WAAW,IAAI,oBAAoB,CAQlD;AAED,gGAAgG;AAChG,wBAAgB,mBAAmB,IAAI,oBAAoB,GAAG,IAAI,CAEjE;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,KAAkB,EAAE,EAAE,kBAAkB,kDAYlF"}
@@ -0,0 +1,192 @@
1
+ import { AppFaultBoundary } from "./AppFaultBoundary.js";
2
+ import { FaultFallback } from "./FaultFallback.js";
3
+ import { isIgnorableGlobalError } from "./isIgnorableGlobalError.js";
4
+ import { useUiWatchdog } from "./useUiWatchdog.js";
5
+ import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState } from "react";
6
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
7
+ import { recoverOverlays } from "@verbb/plugin-kit-web/plugin-kit";
8
+ //#region src/fault/AppFaultProvider.tsx
9
+ var AppFaultReactContext = createContext(null);
10
+ var faultKey = (input) => `${input.kind}:${input.tagName ?? ""}:${input.message.split("\n")[0]}`;
11
+ function AppFaultProvider({ children, meta, onResetUi, onReload, enableWatchdog = true, labels }) {
12
+ const [faults, setFaults] = useState([]);
13
+ const [hasFatalFault, setHasFatalFault] = useState(false);
14
+ const [isStuck, setIsStuck] = useState(false);
15
+ const seenRef = useRef(/* @__PURE__ */ new Map());
16
+ const recordFault = useCallback((input) => {
17
+ const key = faultKey(input);
18
+ const count = (seenRef.current.get(key) ?? 0) + 1;
19
+ seenRef.current.set(key, count);
20
+ const record = {
21
+ kind: input.kind,
22
+ message: input.message,
23
+ stack: input.stack,
24
+ tagName: input.tagName,
25
+ timestamp: Date.now(),
26
+ count
27
+ };
28
+ setFaults((prev) => {
29
+ return [record, ...prev.filter((item) => faultKey(item) !== key)].slice(0, 8);
30
+ });
31
+ if (input.fatal !== false && (input.kind === "react" || input.kind === "global")) setHasFatalFault(true);
32
+ }, []);
33
+ const resetUi = useCallback(() => {
34
+ const { actions, diagnostic } = recoverOverlays();
35
+ console.info("[plugin-kit] overlay recovery:", actions.join(", "), diagnostic.report);
36
+ onResetUi?.();
37
+ setIsStuck(false);
38
+ setHasFatalFault(false);
39
+ setFaults([]);
40
+ seenRef.current.clear();
41
+ }, [onResetUi]);
42
+ const reload = useCallback(() => {
43
+ if (onReload) {
44
+ onReload();
45
+ return;
46
+ }
47
+ window.location.reload();
48
+ }, [onReload]);
49
+ const clearFaults = useCallback(() => {
50
+ setHasFatalFault(false);
51
+ setFaults([]);
52
+ seenRef.current.clear();
53
+ }, []);
54
+ const dismissStuck = useCallback(() => {
55
+ setIsStuck(false);
56
+ }, []);
57
+ useEffect(() => {
58
+ const onResetShortcut = (event) => {
59
+ if (!((event.ctrlKey || event.metaKey) && event.shiftKey && (event.key === "U" || event.key === "u"))) return;
60
+ event.preventDefault();
61
+ resetUi();
62
+ };
63
+ window.addEventListener("keydown", onResetShortcut, true);
64
+ return () => {
65
+ window.removeEventListener("keydown", onResetShortcut, true);
66
+ };
67
+ }, [resetUi]);
68
+ useEffect(() => {
69
+ const onError = (event) => {
70
+ if (isIgnorableGlobalError(event.message, event.error)) return;
71
+ recordFault({
72
+ kind: "global",
73
+ message: event.message || event.error?.message || "Unknown error",
74
+ stack: event.error?.stack,
75
+ fatal: true
76
+ });
77
+ };
78
+ const onRejection = (event) => {
79
+ const reason = event.reason;
80
+ const message = reason?.message ?? String(event.reason);
81
+ if (isIgnorableGlobalError(message, reason)) return;
82
+ recordFault({
83
+ kind: "rejection",
84
+ message,
85
+ stack: reason?.stack,
86
+ fatal: false
87
+ });
88
+ };
89
+ const onPkError = (event) => {
90
+ const detail = event.detail;
91
+ recordFault({
92
+ kind: "pk-error",
93
+ tagName: detail?.tagName,
94
+ message: detail?.message ?? "Web component error",
95
+ stack: detail?.stack,
96
+ fatal: false
97
+ });
98
+ };
99
+ window.addEventListener("error", onError);
100
+ window.addEventListener("unhandledrejection", onRejection);
101
+ window.addEventListener("pk-error", onPkError);
102
+ return () => {
103
+ window.removeEventListener("error", onError);
104
+ window.removeEventListener("unhandledrejection", onRejection);
105
+ window.removeEventListener("pk-error", onPkError);
106
+ };
107
+ }, [recordFault]);
108
+ useUiWatchdog({
109
+ enabled: enableWatchdog && !hasFatalFault,
110
+ onStall: () => {
111
+ setIsStuck(true);
112
+ recordFault({
113
+ kind: "watchdog",
114
+ message: "The builder stopped responding.",
115
+ fatal: false
116
+ });
117
+ }
118
+ });
119
+ const value = useMemo(() => ({
120
+ faults,
121
+ hasFatalFault,
122
+ isStuck,
123
+ recordFault,
124
+ resetUi,
125
+ reload,
126
+ clearFaults,
127
+ dismissStuck
128
+ }), [
129
+ faults,
130
+ hasFatalFault,
131
+ isStuck,
132
+ recordFault,
133
+ resetUi,
134
+ reload,
135
+ clearFaults,
136
+ dismissStuck
137
+ ]);
138
+ return /* @__PURE__ */ jsx(AppFaultReactContext.Provider, {
139
+ value,
140
+ children: /* @__PURE__ */ jsx(AppFaultBoundary, {
141
+ onFault: (fault) => recordFault({
142
+ ...fault,
143
+ fatal: true
144
+ }),
145
+ children: hasFatalFault ? /* @__PURE__ */ jsx(FaultFallback, {
146
+ title: labels?.fatalTitle,
147
+ message: labels?.fatalMessage,
148
+ faults,
149
+ meta,
150
+ onReload: reload,
151
+ onResetUi: resetUi
152
+ }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [isStuck ? /* @__PURE__ */ jsx("div", {
153
+ className: "mb-3",
154
+ children: /* @__PURE__ */ jsx(FaultFallback, {
155
+ compact: true,
156
+ title: labels?.stuckTitle ?? "Builder became unresponsive",
157
+ message: labels?.stuckMessage ?? "The page may still scroll but clicks might not work. Reset UI to close stuck overlays, or reload if the problem continues.",
158
+ faults,
159
+ meta,
160
+ onReload: reload,
161
+ onResetUi: resetUi,
162
+ onDismiss: dismissStuck
163
+ })
164
+ }) : null, children] })
165
+ })
166
+ });
167
+ }
168
+ function useAppFault() {
169
+ const ctx = useContext(AppFaultReactContext);
170
+ if (!ctx) throw new Error("useAppFault must be used within AppFaultProvider");
171
+ return ctx;
172
+ }
173
+ /** Optional hook — returns null outside a provider (for chrome mounted in separate portals). */
174
+ function useAppFaultOptional() {
175
+ return useContext(AppFaultReactContext);
176
+ }
177
+ /** Always-reachable overlay recovery — mount in builder chrome, not inside dialogs. */
178
+ function ResetUiButton({ className, label = "Reset UI" }) {
179
+ const fault = useAppFaultOptional();
180
+ if (!fault) return null;
181
+ return /* @__PURE__ */ jsx("button", {
182
+ type: "button",
183
+ className,
184
+ onClick: fault.resetUi,
185
+ title: "Close stuck dialogs and overlays",
186
+ children: label
187
+ });
188
+ }
189
+ //#endregion
190
+ export { AppFaultProvider, ResetUiButton, useAppFault, useAppFaultOptional };
191
+
192
+ //# sourceMappingURL=AppFaultProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppFaultProvider.js","names":[],"sources":["../../src/fault/AppFaultProvider.tsx"],"sourcesContent":["import {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n type ReactNode,\n} from 'react';\nimport { recoverOverlays } from '@verbb/plugin-kit-web/plugin-kit';\n\nimport { AppFaultBoundary } from './AppFaultBoundary.js';\nimport { FaultFallback } from './FaultFallback.js';\nimport { isIgnorableGlobalError } from './isIgnorableGlobalError.js';\nimport type { AppFaultContext, AppFaultKind, AppFaultRecord } from './types.js';\nimport { useUiWatchdog } from './useUiWatchdog.js';\n\ntype RecordFaultInput = {\n kind: AppFaultKind;\n message: string;\n stack?: string;\n tagName?: string;\n fatal?: boolean;\n};\n\nexport type AppFaultProviderProps = AppFaultContext & {\n children: ReactNode;\n /** When false, skip the main-thread watchdog (useful in tests). */\n enableWatchdog?: boolean;\n /** Labels for the fault UI — pass translated strings from the host app. */\n labels?: {\n fatalTitle?: string;\n fatalMessage?: string;\n stuckTitle?: string;\n stuckMessage?: string;\n };\n};\n\ntype AppFaultContextValue = {\n faults: AppFaultRecord[];\n hasFatalFault: boolean;\n isStuck: boolean;\n recordFault: (input: RecordFaultInput) => void;\n resetUi: () => void;\n reload: () => void;\n clearFaults: () => void;\n dismissStuck: () => void;\n};\n\nconst AppFaultReactContext = createContext<AppFaultContextValue | null>(null);\n\nconst faultKey = (input: RecordFaultInput): string =>\n `${input.kind}:${input.tagName ?? ''}:${input.message.split('\\n')[0]}`;\n\nexport function AppFaultProvider({\n children,\n meta,\n onResetUi,\n onReload,\n enableWatchdog = true,\n labels,\n}: AppFaultProviderProps) {\n const [faults, setFaults] = useState<AppFaultRecord[]>([]);\n const [hasFatalFault, setHasFatalFault] = useState(false);\n const [isStuck, setIsStuck] = useState(false);\n const seenRef = useRef(new Map<string, number>());\n\n const recordFault = useCallback((input: RecordFaultInput) => {\n const key = faultKey(input);\n const count = (seenRef.current.get(key) ?? 0) + 1;\n seenRef.current.set(key, count);\n\n const record: AppFaultRecord = {\n kind: input.kind,\n message: input.message,\n stack: input.stack,\n tagName: input.tagName,\n timestamp: Date.now(),\n count,\n };\n\n setFaults((prev) => {\n const withoutDup = prev.filter((item) => faultKey(item) !== key);\n return [record, ...withoutDup].slice(0, 8);\n });\n\n if (input.fatal !== false && (input.kind === 'react' || input.kind === 'global')) {\n setHasFatalFault(true);\n }\n }, []);\n\n const resetUi = useCallback(() => {\n const { actions, diagnostic } = recoverOverlays();\n console.info('[plugin-kit] overlay recovery:', actions.join(', '), diagnostic.report);\n onResetUi?.();\n setIsStuck(false);\n setHasFatalFault(false);\n setFaults([]);\n seenRef.current.clear();\n }, [onResetUi]);\n\n const reload = useCallback(() => {\n if (onReload) {\n onReload();\n return;\n }\n\n window.location.reload();\n }, [onReload]);\n\n const clearFaults = useCallback(() => {\n setHasFatalFault(false);\n setFaults([]);\n seenRef.current.clear();\n }, []);\n\n const dismissStuck = useCallback(() => {\n setIsStuck(false);\n }, []);\n\n useEffect(() => {\n const onResetShortcut = (event: KeyboardEvent) => {\n const combo =\n (event.ctrlKey || event.metaKey) && event.shiftKey && (event.key === 'U' || event.key === 'u');\n\n if (!combo) {\n return;\n }\n\n event.preventDefault();\n resetUi();\n };\n\n window.addEventListener('keydown', onResetShortcut, true);\n\n return () => {\n window.removeEventListener('keydown', onResetShortcut, true);\n };\n }, [resetUi]);\n\n useEffect(() => {\n const onError = (event: ErrorEvent) => {\n if (isIgnorableGlobalError(event.message, event.error)) {\n return;\n }\n\n recordFault({\n kind: 'global',\n message: event.message || event.error?.message || 'Unknown error',\n stack: event.error?.stack,\n fatal: true,\n });\n };\n\n const onRejection = (event: PromiseRejectionEvent) => {\n const reason = event.reason as Error | undefined;\n const message = reason?.message ?? String(event.reason);\n\n if (isIgnorableGlobalError(message, reason)) {\n return;\n }\n\n recordFault({\n kind: 'rejection',\n message,\n stack: reason?.stack,\n fatal: false,\n });\n };\n\n const onPkError = (event: Event) => {\n const detail = (event as CustomEvent<{ tagName?: string; message?: string; stack?: string }>).detail;\n\n recordFault({\n kind: 'pk-error',\n tagName: detail?.tagName,\n message: detail?.message ?? 'Web component error',\n stack: detail?.stack,\n fatal: false,\n });\n };\n\n window.addEventListener('error', onError);\n window.addEventListener('unhandledrejection', onRejection);\n window.addEventListener('pk-error', onPkError);\n\n return () => {\n window.removeEventListener('error', onError);\n window.removeEventListener('unhandledrejection', onRejection);\n window.removeEventListener('pk-error', onPkError);\n };\n }, [recordFault]);\n\n useUiWatchdog({\n enabled: enableWatchdog && !hasFatalFault,\n onStall: () => {\n setIsStuck(true);\n recordFault({\n kind: 'watchdog',\n message: 'The builder stopped responding.',\n fatal: false,\n });\n },\n });\n\n const value = useMemo<AppFaultContextValue>(\n () => ({\n faults,\n hasFatalFault,\n isStuck,\n recordFault,\n resetUi,\n reload,\n clearFaults,\n dismissStuck,\n }),\n [faults, hasFatalFault, isStuck, recordFault, resetUi, reload, clearFaults, dismissStuck],\n );\n\n return (\n <AppFaultReactContext.Provider value={value}>\n <AppFaultBoundary\n onFault={(fault) =>\n recordFault({\n ...fault,\n fatal: true,\n })\n }\n >\n {hasFatalFault ? (\n <FaultFallback\n title={labels?.fatalTitle}\n message={labels?.fatalMessage}\n faults={faults}\n meta={meta}\n onReload={reload}\n onResetUi={resetUi}\n />\n ) : (\n <>\n {isStuck ? (\n <div className=\"mb-3\">\n <FaultFallback\n compact\n title={labels?.stuckTitle ?? 'Builder became unresponsive'}\n message={\n labels?.stuckMessage ??\n 'The page may still scroll but clicks might not work. Reset UI to close stuck overlays, or reload if the problem continues.'\n }\n faults={faults}\n meta={meta}\n onReload={reload}\n onResetUi={resetUi}\n onDismiss={dismissStuck}\n />\n </div>\n ) : null}\n {children}\n </>\n )}\n </AppFaultBoundary>\n </AppFaultReactContext.Provider>\n );\n}\n\nexport function useAppFault(): AppFaultContextValue {\n const ctx = useContext(AppFaultReactContext);\n\n if (!ctx) {\n throw new Error('useAppFault must be used within AppFaultProvider');\n }\n\n return ctx;\n}\n\n/** Optional hook — returns null outside a provider (for chrome mounted in separate portals). */\nexport function useAppFaultOptional(): AppFaultContextValue | null {\n return useContext(AppFaultReactContext);\n}\n\nexport type ResetUiButtonProps = {\n className?: string;\n label?: string;\n};\n\n/** Always-reachable overlay recovery — mount in builder chrome, not inside dialogs. */\nexport function ResetUiButton({ className, label = 'Reset UI' }: ResetUiButtonProps) {\n const fault = useAppFaultOptional();\n\n if (!fault) {\n return null;\n }\n\n return (\n <button type=\"button\" className={className} onClick={fault.resetUi} title=\"Close stuck dialogs and overlays\">\n {label}\n </button>\n );\n}\n"],"mappings":";;;;;;;;AAkDA,IAAM,uBAAuB,cAA2C,KAAK;AAE7E,IAAM,YAAY,UACd,GAAG,MAAM,KAAK,GAAG,MAAM,WAAW,GAAG,GAAG,MAAM,QAAQ,MAAM,KAAK,CAAC;AAEtE,SAAgB,iBAAiB,EAC7B,UACA,MACA,WACA,UACA,iBAAiB,MACjB,UACsB;CACtB,MAAM,CAAC,QAAQ,aAAa,SAA2B,EAAE,CAAC;CAC1D,MAAM,CAAC,eAAe,oBAAoB,SAAS,MAAM;CACzD,MAAM,CAAC,SAAS,cAAc,SAAS,MAAM;CAC7C,MAAM,UAAU,uBAAO,IAAI,KAAqB,CAAC;CAEjD,MAAM,cAAc,aAAa,UAA4B;EACzD,MAAM,MAAM,SAAS,MAAM;EAC3B,MAAM,SAAS,QAAQ,QAAQ,IAAI,IAAI,IAAI,KAAK;AAChD,UAAQ,QAAQ,IAAI,KAAK,MAAM;EAE/B,MAAM,SAAyB;GAC3B,MAAM,MAAM;GACZ,SAAS,MAAM;GACf,OAAO,MAAM;GACb,SAAS,MAAM;GACf,WAAW,KAAK,KAAK;GACrB;GACH;AAED,aAAW,SAAS;AAEhB,UAAO,CAAC,QAAQ,GADG,KAAK,QAAQ,SAAS,SAAS,KAAK,KAAK,IACzC,CAAW,CAAC,MAAM,GAAG,EAAE;IAC5C;AAEF,MAAI,MAAM,UAAU,UAAU,MAAM,SAAS,WAAW,MAAM,SAAS,UACnE,kBAAiB,KAAK;IAE3B,EAAE,CAAC;CAEN,MAAM,UAAU,kBAAkB;EAC9B,MAAM,EAAE,SAAS,eAAe,iBAAiB;AACjD,UAAQ,KAAK,kCAAkC,QAAQ,KAAK,KAAK,EAAE,WAAW,OAAO;AACrF,eAAa;AACb,aAAW,MAAM;AACjB,mBAAiB,MAAM;AACvB,YAAU,EAAE,CAAC;AACb,UAAQ,QAAQ,OAAO;IACxB,CAAC,UAAU,CAAC;CAEf,MAAM,SAAS,kBAAkB;AAC7B,MAAI,UAAU;AACV,aAAU;AACV;;AAGJ,SAAO,SAAS,QAAQ;IACzB,CAAC,SAAS,CAAC;CAEd,MAAM,cAAc,kBAAkB;AAClC,mBAAiB,MAAM;AACvB,YAAU,EAAE,CAAC;AACb,UAAQ,QAAQ,OAAO;IACxB,EAAE,CAAC;CAEN,MAAM,eAAe,kBAAkB;AACnC,aAAW,MAAM;IAClB,EAAE,CAAC;AAEN,iBAAgB;EACZ,MAAM,mBAAmB,UAAyB;AAI9C,OAAI,GAFC,MAAM,WAAW,MAAM,YAAY,MAAM,aAAa,MAAM,QAAQ,OAAO,MAAM,QAAQ,MAG1F;AAGJ,SAAM,gBAAgB;AACtB,YAAS;;AAGb,SAAO,iBAAiB,WAAW,iBAAiB,KAAK;AAEzD,eAAa;AACT,UAAO,oBAAoB,WAAW,iBAAiB,KAAK;;IAEjE,CAAC,QAAQ,CAAC;AAEb,iBAAgB;EACZ,MAAM,WAAW,UAAsB;AACnC,OAAI,uBAAuB,MAAM,SAAS,MAAM,MAAM,CAClD;AAGJ,eAAY;IACR,MAAM;IACN,SAAS,MAAM,WAAW,MAAM,OAAO,WAAW;IAClD,OAAO,MAAM,OAAO;IACpB,OAAO;IACV,CAAC;;EAGN,MAAM,eAAe,UAAiC;GAClD,MAAM,SAAS,MAAM;GACrB,MAAM,UAAU,QAAQ,WAAW,OAAO,MAAM,OAAO;AAEvD,OAAI,uBAAuB,SAAS,OAAO,CACvC;AAGJ,eAAY;IACR,MAAM;IACN;IACA,OAAO,QAAQ;IACf,OAAO;IACV,CAAC;;EAGN,MAAM,aAAa,UAAiB;GAChC,MAAM,SAAU,MAA8E;AAE9F,eAAY;IACR,MAAM;IACN,SAAS,QAAQ;IACjB,SAAS,QAAQ,WAAW;IAC5B,OAAO,QAAQ;IACf,OAAO;IACV,CAAC;;AAGN,SAAO,iBAAiB,SAAS,QAAQ;AACzC,SAAO,iBAAiB,sBAAsB,YAAY;AAC1D,SAAO,iBAAiB,YAAY,UAAU;AAE9C,eAAa;AACT,UAAO,oBAAoB,SAAS,QAAQ;AAC5C,UAAO,oBAAoB,sBAAsB,YAAY;AAC7D,UAAO,oBAAoB,YAAY,UAAU;;IAEtD,CAAC,YAAY,CAAC;AAEjB,eAAc;EACV,SAAS,kBAAkB,CAAC;EAC5B,eAAe;AACX,cAAW,KAAK;AAChB,eAAY;IACR,MAAM;IACN,SAAS;IACT,OAAO;IACV,CAAC;;EAET,CAAC;CAEF,MAAM,QAAQ,eACH;EACH;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACH,GACD;EAAC;EAAQ;EAAe;EAAS;EAAa;EAAS;EAAQ;EAAa;EAAa,CAC5F;AAED,QACI,oBAAC,qBAAqB,UAAtB;EAAsC;YAClC,oBAAC,kBAAD;GACI,UAAU,UACN,YAAY;IACR,GAAG;IACH,OAAO;IACV,CAAC;aAGL,gBACG,oBAAC,eAAD;IACI,OAAO,QAAQ;IACf,SAAS,QAAQ;IACT;IACF;IACN,UAAU;IACV,WAAW;IACb,CAAA,GAEF,qBAAA,YAAA,EAAA,UAAA,CACK,UACG,oBAAC,OAAD;IAAK,WAAU;cACX,oBAAC,eAAD;KACI,SAAA;KACA,OAAO,QAAQ,cAAc;KAC7B,SACI,QAAQ,gBACR;KAEI;KACF;KACN,UAAU;KACV,WAAW;KACX,WAAW;KACb,CAAA;IACA,CAAA,GACN,MACH,SACF,EAAA,CAAA;GAEQ,CAAA;EACS,CAAA;;AAIxC,SAAgB,cAAoC;CAChD,MAAM,MAAM,WAAW,qBAAqB;AAE5C,KAAI,CAAC,IACD,OAAM,IAAI,MAAM,mDAAmD;AAGvE,QAAO;;;AAIX,SAAgB,sBAAmD;AAC/D,QAAO,WAAW,qBAAqB;;;AAS3C,SAAgB,cAAc,EAAE,WAAW,QAAQ,cAAkC;CACjF,MAAM,QAAQ,qBAAqB;AAEnC,KAAI,CAAC,MACD,QAAO;AAGX,QACI,oBAAC,UAAD;EAAQ,MAAK;EAAoB;EAAW,SAAS,MAAM;EAAS,OAAM;YACrE;EACI,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from 'react';
2
+ import { AppFaultRecord } from './types.js';
3
+ export type FaultFallbackProps = {
4
+ title?: string;
5
+ message?: string;
6
+ faults: AppFaultRecord[];
7
+ meta?: Record<string, unknown>;
8
+ onReload: () => void;
9
+ onResetUi?: () => void;
10
+ onDismiss?: () => void;
11
+ /** When true, show inline banner styling instead of full-panel takeover. */
12
+ compact?: boolean;
13
+ children?: ReactNode;
14
+ };
15
+ export declare function FaultFallback({ title, message, faults, meta, onReload, onResetUi, onDismiss, compact, children, }: FaultFallbackProps): import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=FaultFallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FaultFallback.d.ts","sourceRoot":"","sources":["../../src/fault/FaultFallback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB,CAAC;AAQF,wBAAgB,aAAa,CAAC,EAC1B,KAA8B,EAC9B,OAAuG,EACvG,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,SAAS,EACT,OAAe,EACf,QAAQ,GACX,EAAE,kBAAkB,2CAgDpB"}
@@ -0,0 +1,67 @@
1
+ import { buildSupportBundle } from "./buildSupportBundle.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ //#region src/fault/FaultFallback.tsx
4
+ var btnClass = "inline-flex items-center justify-center rounded-md border border-black/10 bg-white px-3 py-1.5 text-sm font-medium text-gray-800 shadow-sm hover:bg-gray-50 disabled:opacity-50";
5
+ var btnPrimaryClass = "inline-flex items-center justify-center rounded-md border border-transparent bg-[#0d78f2] px-3 py-1.5 text-sm font-medium text-white shadow-sm hover:bg-[#0b6ad9] disabled:opacity-50";
6
+ function FaultFallback({ title = "Something went wrong", message = "The builder hit an unexpected error. You can try resetting the UI or reloading the builder.", faults, meta, onReload, onResetUi, onDismiss, compact = false, children }) {
7
+ const copyDetails = async () => {
8
+ const text = buildSupportBundle(faults, meta);
9
+ try {
10
+ await navigator.clipboard.writeText(text);
11
+ } catch {
12
+ console.warn("[plugin-kit] support bundle:\n", text);
13
+ }
14
+ };
15
+ return /* @__PURE__ */ jsxs("div", {
16
+ className: compact ? "rounded-lg border border-amber-300 bg-amber-50 p-4 text-sm text-amber-950" : "rounded-lg border border-red-200 bg-red-50 p-6 text-sm text-red-900",
17
+ role: "alert",
18
+ children: [
19
+ /* @__PURE__ */ jsx("div", {
20
+ className: "font-semibold",
21
+ children: title
22
+ }),
23
+ /* @__PURE__ */ jsx("p", {
24
+ className: "mt-2 text-[13px] leading-relaxed opacity-90",
25
+ children: message
26
+ }),
27
+ children,
28
+ /* @__PURE__ */ jsxs("div", {
29
+ className: "mt-4 flex flex-wrap gap-2",
30
+ children: [
31
+ onResetUi ? /* @__PURE__ */ jsx("button", {
32
+ type: "button",
33
+ className: btnClass,
34
+ onClick: onResetUi,
35
+ children: "Reset UI"
36
+ }) : null,
37
+ /* @__PURE__ */ jsx("button", {
38
+ type: "button",
39
+ className: btnPrimaryClass,
40
+ onClick: onReload,
41
+ children: "Reload builder"
42
+ }),
43
+ /* @__PURE__ */ jsx("button", {
44
+ type: "button",
45
+ className: btnClass,
46
+ onClick: () => void copyDetails(),
47
+ children: "Copy details for support"
48
+ }),
49
+ onDismiss ? /* @__PURE__ */ jsx("button", {
50
+ type: "button",
51
+ className: btnClass,
52
+ onClick: onDismiss,
53
+ children: "Dismiss"
54
+ }) : null
55
+ ]
56
+ }),
57
+ !compact && faults[0]?.message ? /* @__PURE__ */ jsx("pre", {
58
+ className: "mt-4 max-h-40 overflow-auto rounded border border-red-200/60 bg-white/70 p-3 text-xs text-red-800",
59
+ children: faults[0].message
60
+ }) : null
61
+ ]
62
+ });
63
+ }
64
+ //#endregion
65
+ export { FaultFallback };
66
+
67
+ //# sourceMappingURL=FaultFallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FaultFallback.js","names":[],"sources":["../../src/fault/FaultFallback.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport { buildSupportBundle } from './buildSupportBundle.js';\nimport type { AppFaultRecord } from './types.js';\n\nexport type FaultFallbackProps = {\n title?: string;\n message?: string;\n faults: AppFaultRecord[];\n meta?: Record<string, unknown>;\n onReload: () => void;\n onResetUi?: () => void;\n onDismiss?: () => void;\n /** When true, show inline banner styling instead of full-panel takeover. */\n compact?: boolean;\n children?: ReactNode;\n};\n\nconst btnClass =\n 'inline-flex items-center justify-center rounded-md border border-black/10 bg-white px-3 py-1.5 text-sm font-medium text-gray-800 shadow-sm hover:bg-gray-50 disabled:opacity-50';\n\nconst btnPrimaryClass =\n 'inline-flex items-center justify-center rounded-md border border-transparent bg-[#0d78f2] px-3 py-1.5 text-sm font-medium text-white shadow-sm hover:bg-[#0b6ad9] disabled:opacity-50';\n\nexport function FaultFallback({\n title = 'Something went wrong',\n message = 'The builder hit an unexpected error. You can try resetting the UI or reloading the builder.',\n faults,\n meta,\n onReload,\n onResetUi,\n onDismiss,\n compact = false,\n children,\n}: FaultFallbackProps) {\n const copyDetails = async () => {\n const text = buildSupportBundle(faults, meta);\n\n try {\n await navigator.clipboard.writeText(text);\n } catch {\n console.warn('[plugin-kit] support bundle:\\n', text);\n }\n };\n\n const shellClass = compact\n ? 'rounded-lg border border-amber-300 bg-amber-50 p-4 text-sm text-amber-950'\n : 'rounded-lg border border-red-200 bg-red-50 p-6 text-sm text-red-900';\n\n return (\n <div className={shellClass} role=\"alert\">\n <div className=\"font-semibold\">{title}</div>\n <p className=\"mt-2 text-[13px] leading-relaxed opacity-90\">{message}</p>\n\n {children}\n\n <div className=\"mt-4 flex flex-wrap gap-2\">\n {onResetUi ? (\n <button type=\"button\" className={btnClass} onClick={onResetUi}>\n Reset UI\n </button>\n ) : null}\n <button type=\"button\" className={btnPrimaryClass} onClick={onReload}>\n Reload builder\n </button>\n <button type=\"button\" className={btnClass} onClick={() => void copyDetails()}>\n Copy details for support\n </button>\n {onDismiss ? (\n <button type=\"button\" className={btnClass} onClick={onDismiss}>\n Dismiss\n </button>\n ) : null}\n </div>\n\n {!compact && faults[0]?.message ? (\n <pre className=\"mt-4 max-h-40 overflow-auto rounded border border-red-200/60 bg-white/70 p-3 text-xs text-red-800\">\n {faults[0].message}\n </pre>\n ) : null}\n </div>\n );\n}\n"],"mappings":";;;AAkBA,IAAM,WACF;AAEJ,IAAM,kBACF;AAEJ,SAAgB,cAAc,EAC1B,QAAQ,wBACR,UAAU,+FACV,QACA,MACA,UACA,WACA,WACA,UAAU,OACV,YACmB;CACnB,MAAM,cAAc,YAAY;EAC5B,MAAM,OAAO,mBAAmB,QAAQ,KAAK;AAE7C,MAAI;AACA,SAAM,UAAU,UAAU,UAAU,KAAK;UACrC;AACJ,WAAQ,KAAK,kCAAkC,KAAK;;;AAQ5D,QACI,qBAAC,OAAD;EAAK,WALU,UACb,8EACA;EAG0B,MAAK;YAAjC;GACI,oBAAC,OAAD;IAAK,WAAU;cAAiB;IAAY,CAAA;GAC5C,oBAAC,KAAD;IAAG,WAAU;cAA+C;IAAY,CAAA;GAEvE;GAED,qBAAC,OAAD;IAAK,WAAU;cAAf;KACK,YACG,oBAAC,UAAD;MAAQ,MAAK;MAAS,WAAW;MAAU,SAAS;gBAAW;MAEtD,CAAA,GACT;KACJ,oBAAC,UAAD;MAAQ,MAAK;MAAS,WAAW;MAAiB,SAAS;gBAAU;MAE5D,CAAA;KACT,oBAAC,UAAD;MAAQ,MAAK;MAAS,WAAW;MAAU,eAAe,KAAK,aAAa;gBAAE;MAErE,CAAA;KACR,YACG,oBAAC,UAAD;MAAQ,MAAK;MAAS,WAAW;MAAU,SAAS;gBAAW;MAEtD,CAAA,GACT;KACF;;GAEL,CAAC,WAAW,OAAO,IAAI,UACpB,oBAAC,OAAD;IAAK,WAAU;cACV,OAAO,GAAG;IACT,CAAA,GACN;GACF"}
@@ -0,0 +1,3 @@
1
+ import { AppFaultRecord } from './types.js';
2
+ export declare const buildSupportBundle: (faults: AppFaultRecord[], meta?: Record<string, unknown>) => string;
3
+ //# sourceMappingURL=buildSupportBundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSupportBundle.d.ts","sourceRoot":"","sources":["../../src/fault/buildSupportBundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,kBAAkB,GAC3B,QAAQ,cAAc,EAAE,EACxB,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC/B,MAiBF,CAAC"}
@@ -0,0 +1,22 @@
1
+ //#region src/fault/buildSupportBundle.ts
2
+ var buildSupportBundle = (faults, meta) => {
3
+ const payload = {
4
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
5
+ userAgent: typeof navigator !== "undefined" ? navigator.userAgent : "",
6
+ url: typeof location !== "undefined" ? location.href : "",
7
+ meta: meta ?? {},
8
+ faults: faults.map((fault) => ({
9
+ kind: fault.kind,
10
+ message: fault.message,
11
+ stack: fault.stack,
12
+ tagName: fault.tagName,
13
+ timestamp: new Date(fault.timestamp).toISOString(),
14
+ count: fault.count
15
+ }))
16
+ };
17
+ return JSON.stringify(payload, null, 2);
18
+ };
19
+ //#endregion
20
+ export { buildSupportBundle };
21
+
22
+ //# sourceMappingURL=buildSupportBundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSupportBundle.js","names":[],"sources":["../../src/fault/buildSupportBundle.ts"],"sourcesContent":["import type { AppFaultRecord } from './types.js';\n\nexport const buildSupportBundle = (\n faults: AppFaultRecord[],\n meta?: Record<string, unknown>,\n): string => {\n const payload = {\n timestamp: new Date().toISOString(),\n userAgent: typeof navigator !== 'undefined' ? navigator.userAgent : '',\n url: typeof location !== 'undefined' ? location.href : '',\n meta: meta ?? {},\n faults: faults.map((fault) => ({\n kind: fault.kind,\n message: fault.message,\n stack: fault.stack,\n tagName: fault.tagName,\n timestamp: new Date(fault.timestamp).toISOString(),\n count: fault.count,\n })),\n };\n\n return JSON.stringify(payload, null, 2);\n};\n"],"mappings":";AAEA,IAAa,sBACT,QACA,SACS;CACT,MAAM,UAAU;EACZ,4BAAW,IAAI,MAAM,EAAC,aAAa;EACnC,WAAW,OAAO,cAAc,cAAc,UAAU,YAAY;EACpE,KAAK,OAAO,aAAa,cAAc,SAAS,OAAO;EACvD,MAAM,QAAQ,EAAE;EAChB,QAAQ,OAAO,KAAK,WAAW;GAC3B,MAAM,MAAM;GACZ,SAAS,MAAM;GACf,OAAO,MAAM;GACb,SAAS,MAAM;GACf,WAAW,IAAI,KAAK,MAAM,UAAU,CAAC,aAAa;GAClD,OAAO,MAAM;GAChB,EAAE;EACN;AAED,QAAO,KAAK,UAAU,SAAS,MAAM,EAAE"}
@@ -0,0 +1,8 @@
1
+ export { AppFaultBoundary } from './AppFaultBoundary.js';
2
+ export { AppFaultProvider, ResetUiButton, useAppFault, useAppFaultOptional, type AppFaultProviderProps, type ResetUiButtonProps, } from './AppFaultProvider.js';
3
+ export { buildSupportBundle } from './buildSupportBundle.js';
4
+ export { FaultFallback, type FaultFallbackProps } from './FaultFallback.js';
5
+ export { isIgnorableGlobalError } from './isIgnorableGlobalError.js';
6
+ export { useUiWatchdog, type UiWatchdogOptions } from './useUiWatchdog.js';
7
+ export type { AppFaultContext, AppFaultKind, AppFaultRecord } from './types.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fault/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACH,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { AppFaultBoundary } from "./AppFaultBoundary.js";
2
+ import { buildSupportBundle } from "./buildSupportBundle.js";
3
+ import { FaultFallback } from "./FaultFallback.js";
4
+ import { isIgnorableGlobalError } from "./isIgnorableGlobalError.js";
5
+ import { useUiWatchdog } from "./useUiWatchdog.js";
6
+ import { AppFaultProvider, ResetUiButton, useAppFault, useAppFaultOptional } from "./AppFaultProvider.js";
7
+ export { AppFaultBoundary, AppFaultProvider, FaultFallback, ResetUiButton, buildSupportBundle, isIgnorableGlobalError, useAppFault, useAppFaultOptional, useUiWatchdog };
@@ -0,0 +1,3 @@
1
+ /** Errors that should not escalate to the app fault UI. */
2
+ export declare const isIgnorableGlobalError: (message: string, error?: Error) => boolean;
3
+ //# sourceMappingURL=isIgnorableGlobalError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isIgnorableGlobalError.d.ts","sourceRoot":"","sources":["../../src/fault/isIgnorableGlobalError.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,GAAI,SAAS,MAAM,EAAE,QAAQ,KAAK,KAAG,OAoBvE,CAAC"}
@@ -0,0 +1,14 @@
1
+ //#region src/fault/isIgnorableGlobalError.ts
2
+ /** Errors that should not escalate to the app fault UI. */
3
+ var isIgnorableGlobalError = (message, error) => {
4
+ const text = `${message}\n${error?.message ?? ""}`.toLowerCase();
5
+ if (text.includes("resizeobserver loop")) return true;
6
+ if (text.includes("aborted") && text.includes("fetch")) return true;
7
+ if (text.includes("networkerror") && text.includes("fetch")) return true;
8
+ if (text.includes("loading chunk") && text.includes("failed")) return false;
9
+ return false;
10
+ };
11
+ //#endregion
12
+ export { isIgnorableGlobalError };
13
+
14
+ //# sourceMappingURL=isIgnorableGlobalError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isIgnorableGlobalError.js","names":[],"sources":["../../src/fault/isIgnorableGlobalError.ts"],"sourcesContent":["/** Errors that should not escalate to the app fault UI. */\nexport const isIgnorableGlobalError = (message: string, error?: Error): boolean => {\n const text = `${message}\\n${error?.message ?? ''}`.toLowerCase();\n\n if (text.includes('resizeobserver loop')) {\n return true;\n }\n\n if (text.includes('aborted') && text.includes('fetch')) {\n return true;\n }\n\n if (text.includes('networkerror') && text.includes('fetch')) {\n return true;\n }\n\n if (text.includes('loading chunk') && text.includes('failed')) {\n return false;\n }\n\n return false;\n};\n"],"mappings":";;AACA,IAAa,0BAA0B,SAAiB,UAA2B;CAC/E,MAAM,OAAO,GAAG,QAAQ,IAAI,OAAO,WAAW,KAAK,aAAa;AAEhE,KAAI,KAAK,SAAS,sBAAsB,CACpC,QAAO;AAGX,KAAI,KAAK,SAAS,UAAU,IAAI,KAAK,SAAS,QAAQ,CAClD,QAAO;AAGX,KAAI,KAAK,SAAS,eAAe,IAAI,KAAK,SAAS,QAAQ,CACvD,QAAO;AAGX,KAAI,KAAK,SAAS,gBAAgB,IAAI,KAAK,SAAS,SAAS,CACzD,QAAO;AAGX,QAAO"}
@@ -0,0 +1,18 @@
1
+ export type AppFaultKind = 'react' | 'global' | 'rejection' | 'pk-error' | 'watchdog' | 'overlay';
2
+ export type AppFaultRecord = {
3
+ kind: AppFaultKind;
4
+ message: string;
5
+ stack?: string;
6
+ tagName?: string;
7
+ timestamp: number;
8
+ count: number;
9
+ };
10
+ export type AppFaultContext = {
11
+ /** App-specific metadata included in support bundles (menu id, site id, etc.). */
12
+ meta?: Record<string, unknown>;
13
+ /** Called after overlay recovery — reset dialog/menu React state. */
14
+ onResetUi?: () => void;
15
+ /** Soft reload — remount builder without full page navigation when provided. */
16
+ onReload?: () => void;
17
+ };
18
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fault/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAElG,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,kFAAkF;IAClF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC"}
@@ -0,0 +1,13 @@
1
+ export type UiWatchdogOptions = {
2
+ /** Milliseconds without a heartbeat tick before reporting stuck UI. */
3
+ stallMs?: number;
4
+ /** When false, the watchdog is paused (e.g. app fault screen already shown). */
5
+ enabled?: boolean;
6
+ onStall: () => void;
7
+ };
8
+ /**
9
+ * Detects main-thread stalls via rAF heartbeat. Does not recover — callers show
10
+ * a banner or escalate to the fault UI.
11
+ */
12
+ export declare const useUiWatchdog: ({ stallMs, enabled, onStall, }: UiWatchdogOptions) => void;
13
+ //# sourceMappingURL=useUiWatchdog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUiWatchdog.d.ts","sourceRoot":"","sources":["../../src/fault/useUiWatchdog.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG;IAC5B,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,gCAI3B,iBAAiB,KAAG,IAyCtB,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { useEffect, useRef } from "react";
2
+ //#region src/fault/useUiWatchdog.ts
3
+ /**
4
+ * Detects main-thread stalls via rAF heartbeat. Does not recover — callers show
5
+ * a banner or escalate to the fault UI.
6
+ */
7
+ var useUiWatchdog = ({ stallMs = 3e3, enabled = true, onStall }) => {
8
+ const lastTickRef = useRef(performance.now());
9
+ const firedRef = useRef(false);
10
+ const onStallRef = useRef(onStall);
11
+ onStallRef.current = onStall;
12
+ useEffect(() => {
13
+ if (!enabled) return;
14
+ firedRef.current = false;
15
+ lastTickRef.current = performance.now();
16
+ let rafId = 0;
17
+ const tick = () => {
18
+ lastTickRef.current = performance.now();
19
+ rafId = window.requestAnimationFrame(tick);
20
+ };
21
+ rafId = window.requestAnimationFrame(tick);
22
+ const intervalId = window.setInterval(() => {
23
+ if (firedRef.current) return;
24
+ if (performance.now() - lastTickRef.current >= stallMs) {
25
+ firedRef.current = true;
26
+ onStallRef.current();
27
+ }
28
+ }, Math.min(500, stallMs / 2));
29
+ return () => {
30
+ window.cancelAnimationFrame(rafId);
31
+ window.clearInterval(intervalId);
32
+ };
33
+ }, [enabled, stallMs]);
34
+ };
35
+ //#endregion
36
+ export { useUiWatchdog };
37
+
38
+ //# sourceMappingURL=useUiWatchdog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUiWatchdog.js","names":[],"sources":["../../src/fault/useUiWatchdog.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nexport type UiWatchdogOptions = {\n /** Milliseconds without a heartbeat tick before reporting stuck UI. */\n stallMs?: number;\n /** When false, the watchdog is paused (e.g. app fault screen already shown). */\n enabled?: boolean;\n onStall: () => void;\n};\n\n/**\n * Detects main-thread stalls via rAF heartbeat. Does not recover — callers show\n * a banner or escalate to the fault UI.\n */\nexport const useUiWatchdog = ({\n stallMs = 3000,\n enabled = true,\n onStall,\n}: UiWatchdogOptions): void => {\n const lastTickRef = useRef(performance.now());\n const firedRef = useRef(false);\n const onStallRef = useRef(onStall);\n onStallRef.current = onStall;\n\n useEffect(() => {\n if (!enabled) {\n return;\n }\n\n firedRef.current = false;\n lastTickRef.current = performance.now();\n\n let rafId = 0;\n\n const tick = () => {\n lastTickRef.current = performance.now();\n rafId = window.requestAnimationFrame(tick);\n };\n\n rafId = window.requestAnimationFrame(tick);\n\n const intervalId = window.setInterval(() => {\n if (firedRef.current) {\n return;\n }\n\n const elapsed = performance.now() - lastTickRef.current;\n\n if (elapsed >= stallMs) {\n firedRef.current = true;\n onStallRef.current();\n }\n }, Math.min(500, stallMs / 2));\n\n return () => {\n window.cancelAnimationFrame(rafId);\n window.clearInterval(intervalId);\n };\n }, [enabled, stallMs]);\n};\n"],"mappings":";;;;;;AAcA,IAAa,iBAAiB,EAC1B,UAAU,KACV,UAAU,MACV,cAC2B;CAC3B,MAAM,cAAc,OAAO,YAAY,KAAK,CAAC;CAC7C,MAAM,WAAW,OAAO,MAAM;CAC9B,MAAM,aAAa,OAAO,QAAQ;AAClC,YAAW,UAAU;AAErB,iBAAgB;AACZ,MAAI,CAAC,QACD;AAGJ,WAAS,UAAU;AACnB,cAAY,UAAU,YAAY,KAAK;EAEvC,IAAI,QAAQ;EAEZ,MAAM,aAAa;AACf,eAAY,UAAU,YAAY,KAAK;AACvC,WAAQ,OAAO,sBAAsB,KAAK;;AAG9C,UAAQ,OAAO,sBAAsB,KAAK;EAE1C,MAAM,aAAa,OAAO,kBAAkB;AACxC,OAAI,SAAS,QACT;AAKJ,OAFgB,YAAY,KAAK,GAAG,YAAY,WAEjC,SAAS;AACpB,aAAS,UAAU;AACnB,eAAW,SAAS;;KAEzB,KAAK,IAAI,KAAK,UAAU,EAAE,CAAC;AAE9B,eAAa;AACT,UAAO,qBAAqB,MAAM;AAClC,UAAO,cAAc,WAAW;;IAErC,CAAC,SAAS,QAAQ,CAAC"}
@@ -1,38 +1,26 @@
1
- import { ComponentProps, ReactNode } from 'react';
2
- import { Label } from '../components';
3
- import { Slot } from '../components/Slot';
4
- type FieldContextValue = {
5
- id: string;
6
- name: string;
7
- errors: string[];
8
- };
9
- declare const InlineFieldErrorVisibilityContext: import('react').Context<boolean>;
10
- declare const useFieldContext: () => FieldContextValue;
11
- type FieldRootProps = ComponentProps<'div'> & {
12
- name: string;
13
- errors?: string[];
14
- };
15
- declare const FieldRoot: ({ name, errors, className, ...props }: FieldRootProps) => import("react/jsx-runtime").JSX.Element;
16
- declare const FieldHeader: ({ className, ...props }: ComponentProps<"div">) => import("react/jsx-runtime").JSX.Element;
17
- declare const FieldLabel: ({ className, ...props }: ComponentProps<typeof Label>) => import("react/jsx-runtime").JSX.Element;
18
- declare const FieldInstructions: ({ className, children, ...props }: ComponentProps<"p">) => import("react/jsx-runtime").JSX.Element;
19
- type FieldControlProps = Omit<ComponentProps<typeof Slot>, 'className'> & {
20
- className?: string;
21
- };
22
- declare const FieldControl: ({ className, ...props }: FieldControlProps) => import("react/jsx-runtime").JSX.Element;
23
- declare const FieldErrors: ({ className, ...props }: ComponentProps<"ul">) => import("react/jsx-runtime").JSX.Element | null;
24
- type FieldLayoutProps = ComponentProps<'div'> & {
1
+ import { default as React, ReactNode } from 'react';
2
+ export type FieldLayoutProps = {
25
3
  name: string;
26
4
  label?: string;
27
5
  instructions?: string;
28
- headerEnd?: ReactNode;
29
- required?: boolean;
30
6
  warning?: string;
31
- errors?: string[];
32
- withControl?: boolean;
33
- showInlineErrors?: boolean;
7
+ tip?: string;
8
+ required?: boolean;
34
9
  translatable?: boolean;
10
+ errors?: string[];
11
+ headerEnd?: ReactNode;
12
+ className?: string;
13
+ style?: React.CSSProperties;
14
+ children?: ReactNode;
35
15
  };
36
- declare const FieldLayout: ({ name, label, instructions, headerEnd, required, warning, errors, withControl, showInlineErrors, translatable, className, children, ...props }: FieldLayoutProps) => import("react/jsx-runtime").JSX.Element;
37
- export { FieldRoot, FieldHeader, FieldLabel, FieldInstructions, FieldControl, FieldErrors, FieldLayout, InlineFieldErrorVisibilityContext, useFieldContext, };
16
+ /**
17
+ * Schema-form field shell. Delegates label / instructions / errors / warning / tip /
18
+ * required / translatable rendering to the `<pk-field>` web component, so there is no
19
+ * Tailwind or per-framework styling in this facade — only tokens + shadow-DOM CSS.
20
+ *
21
+ * Do not force `width: auto` on unlabeled shells here — composite controls (conditions
22
+ * tables, etc.) need full width. FieldWrap clusters shrink nested hosts via
23
+ * `[data-pk-field-wrap-controls] pk-field` in `style.css`.
24
+ */
25
+ export declare const FieldLayout: ({ name, label, instructions, warning, tip, required, translatable, errors, headerEnd, className, style, children, }: FieldLayoutProps) => import("react/jsx-runtime").JSX.Element;
38
26
  //# sourceMappingURL=Field.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/forms/Field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAC+B,KAAK,cAAc,EAAE,KAAK,SAAS,EACxE,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,KAAK,EAAY,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AAQ/D,KAAK,iBAAiB,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAGF,QAAA,MAAM,iCAAiC,kCAA+B,CAAC;AAEvE,QAAA,MAAM,eAAe,yBAMpB,CAAC;AAEF,KAAK,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAEF,QAAA,MAAM,SAAS,GAAI,uCAEhB,cAAc,4CAWhB,CAAC;AAEF,QAAA,MAAM,WAAW,GAAI,yBAAyB,cAAc,CAAC,KAAK,CAAC,4CAIlE,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,yBAAyB,cAAc,CAAC,OAAO,KAAK,CAAC,4CAWxE,CAAC;AAEF,QAAA,MAAM,iBAAiB,GAAI,mCAAmC,cAAc,CAAC,GAAG,CAAC,4CA0BhF,CAAC;AAEF,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,WAAW,CAAC,GAAG;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,QAAA,MAAM,YAAY,GAAI,yBAAyB,iBAAiB,4CAe/D,CAAC;AAEF,QAAA,MAAM,WAAW,GAAI,yBAAyB,cAAc,CAAC,IAAI,CAAC,mDAsBjE,CAAC;AAEF,KAAK,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,QAAA,MAAM,WAAW,GAAI,iJAclB,gBAAgB,4CAqElB,CAAC;AAEF,OAAO,EACH,SAAS,EACT,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,WAAW,EACX,iCAAiC,EACjC,eAAe,GAClB,CAAC"}
1
+ {"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/forms/Field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAI9C,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,GAAI,qHAazB,gBAAgB,4CAkBlB,CAAC"}