hazo_collab_forms 1.9.5 → 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 (394) hide show
  1. package/CHANGE_LOG.md +49 -0
  2. package/README.md +416 -0
  3. package/dist/components/_internal_form_set.d.ts +41 -0
  4. package/dist/components/_internal_form_set.d.ts.map +1 -1
  5. package/dist/components/_internal_form_set.js +81 -3
  6. package/dist/components/_internal_form_set.js.map +1 -1
  7. package/dist/components/clarification/clarification_badge.d.ts +16 -0
  8. package/dist/components/clarification/clarification_badge.d.ts.map +1 -0
  9. package/dist/components/clarification/clarification_badge.js +15 -0
  10. package/dist/components/clarification/clarification_badge.js.map +1 -0
  11. package/dist/components/clarification/clarification_card.d.ts +48 -0
  12. package/dist/components/clarification/clarification_card.d.ts.map +1 -0
  13. package/dist/components/clarification/clarification_card.js +46 -0
  14. package/dist/components/clarification/clarification_card.js.map +1 -0
  15. package/dist/components/clarification/clarification_dialog.d.ts +32 -0
  16. package/dist/components/clarification/clarification_dialog.d.ts.map +1 -0
  17. package/dist/components/clarification/clarification_dialog.js +63 -0
  18. package/dist/components/clarification/clarification_dialog.js.map +1 -0
  19. package/dist/components/clarification/clarification_doc_reference.d.ts +18 -0
  20. package/dist/components/clarification/clarification_doc_reference.d.ts.map +1 -0
  21. package/dist/components/clarification/clarification_doc_reference.js +22 -0
  22. package/dist/components/clarification/clarification_doc_reference.js.map +1 -0
  23. package/dist/components/clarification/clarification_response_form.d.ts +32 -0
  24. package/dist/components/clarification/clarification_response_form.d.ts.map +1 -0
  25. package/dist/components/clarification/clarification_response_form.js +38 -0
  26. package/dist/components/clarification/clarification_response_form.js.map +1 -0
  27. package/dist/components/clarification/clarification_section.d.ts +26 -0
  28. package/dist/components/clarification/clarification_section.d.ts.map +1 -0
  29. package/dist/components/clarification/clarification_section.js +46 -0
  30. package/dist/components/clarification/clarification_section.js.map +1 -0
  31. package/dist/components/clarification/index.d.ts +18 -0
  32. package/dist/components/clarification/index.d.ts.map +1 -0
  33. package/dist/components/clarification/index.js +13 -0
  34. package/dist/components/clarification/index.js.map +1 -0
  35. package/dist/components/clarification/use_clarifications.d.ts +49 -0
  36. package/dist/components/clarification/use_clarifications.d.ts.map +1 -0
  37. package/dist/components/clarification/use_clarifications.js +160 -0
  38. package/dist/components/clarification/use_clarifications.js.map +1 -0
  39. package/dist/components/collab_form_file_upload.d.ts +16 -1
  40. package/dist/components/collab_form_file_upload.d.ts.map +1 -1
  41. package/dist/components/collab_form_file_upload.js +44 -10
  42. package/dist/components/collab_form_file_upload.js.map +1 -1
  43. package/dist/components/hazo_add_field_dialog/types.d.ts.map +1 -1
  44. package/dist/components/hazo_add_field_dialog/types.js +28 -0
  45. package/dist/components/hazo_add_field_dialog/types.js.map +1 -1
  46. package/dist/components/hazo_collab_form_base.d.ts +32 -2
  47. package/dist/components/hazo_collab_form_base.d.ts.map +1 -1
  48. package/dist/components/hazo_collab_form_base.js +11 -5
  49. package/dist/components/hazo_collab_form_base.js.map +1 -1
  50. package/dist/components/hazo_collab_form_computed.d.ts +33 -0
  51. package/dist/components/hazo_collab_form_computed.d.ts.map +1 -0
  52. package/dist/components/hazo_collab_form_computed.js +42 -0
  53. package/dist/components/hazo_collab_form_computed.js.map +1 -0
  54. package/dist/components/hazo_collab_form_currency.d.ts +29 -0
  55. package/dist/components/hazo_collab_form_currency.d.ts.map +1 -0
  56. package/dist/components/hazo_collab_form_currency.js +42 -0
  57. package/dist/components/hazo_collab_form_currency.js.map +1 -0
  58. package/dist/components/hazo_collab_form_data_table.d.ts +1 -1
  59. package/dist/components/hazo_collab_form_data_table.d.ts.map +1 -1
  60. package/dist/components/hazo_collab_form_data_table.js +7 -3
  61. package/dist/components/hazo_collab_form_data_table.js.map +1 -1
  62. package/dist/components/hazo_collab_form_group.d.ts +12 -0
  63. package/dist/components/hazo_collab_form_group.d.ts.map +1 -1
  64. package/dist/components/hazo_collab_form_group.js +27 -4
  65. package/dist/components/hazo_collab_form_group.js.map +1 -1
  66. package/dist/components/hazo_collab_form_masked.d.ts +32 -0
  67. package/dist/components/hazo_collab_form_masked.d.ts.map +1 -0
  68. package/dist/components/hazo_collab_form_masked.js +55 -0
  69. package/dist/components/hazo_collab_form_masked.js.map +1 -0
  70. package/dist/components/hazo_collab_form_percentage.d.ts +27 -0
  71. package/dist/components/hazo_collab_form_percentage.d.ts.map +1 -0
  72. package/dist/components/hazo_collab_form_percentage.js +41 -0
  73. package/dist/components/hazo_collab_form_percentage.js.map +1 -0
  74. package/dist/components/hazo_collab_form_static_text.d.ts +26 -0
  75. package/dist/components/hazo_collab_form_static_text.d.ts.map +1 -0
  76. package/dist/components/hazo_collab_form_static_text.js +24 -0
  77. package/dist/components/hazo_collab_form_static_text.js.map +1 -0
  78. package/dist/components/hazo_collab_form_summary_row.d.ts +41 -0
  79. package/dist/components/hazo_collab_form_summary_row.d.ts.map +1 -0
  80. package/dist/components/hazo_collab_form_summary_row.js +35 -0
  81. package/dist/components/hazo_collab_form_summary_row.js.map +1 -0
  82. package/dist/components/hazo_collab_form_view/context.d.ts.map +1 -1
  83. package/dist/components/hazo_collab_form_view/context.js +25 -1
  84. package/dist/components/hazo_collab_form_view/context.js.map +1 -1
  85. package/dist/components/hazo_collab_form_view/index.d.ts +1 -1
  86. package/dist/components/hazo_collab_form_view/index.d.ts.map +1 -1
  87. package/dist/components/hazo_collab_form_view/index.js +8 -0
  88. package/dist/components/hazo_collab_form_view/index.js.map +1 -1
  89. package/dist/components/hazo_collab_form_view/types.d.ts +167 -2
  90. package/dist/components/hazo_collab_form_view/types.d.ts.map +1 -1
  91. package/dist/components/hazo_collab_form_view/views/edit_view.d.ts.map +1 -1
  92. package/dist/components/hazo_collab_form_view/views/edit_view.js +76 -8
  93. package/dist/components/hazo_collab_form_view/views/edit_view.js.map +1 -1
  94. package/dist/components/hazo_collab_form_view/views/summary_view.d.ts.map +1 -1
  95. package/dist/components/hazo_collab_form_view/views/summary_view.js +237 -14
  96. package/dist/components/hazo_collab_form_view/views/summary_view.js.map +1 -1
  97. package/dist/components/hazo_data_form/field_renderers/boolean_field.d.ts +6 -0
  98. package/dist/components/hazo_data_form/field_renderers/boolean_field.d.ts.map +1 -0
  99. package/dist/components/hazo_data_form/field_renderers/boolean_field.js +9 -0
  100. package/dist/components/hazo_data_form/field_renderers/boolean_field.js.map +1 -0
  101. package/dist/components/hazo_data_form/field_renderers/computed_field.d.ts +7 -0
  102. package/dist/components/hazo_data_form/field_renderers/computed_field.d.ts.map +1 -0
  103. package/dist/components/hazo_data_form/field_renderers/computed_field.js +34 -0
  104. package/dist/components/hazo_data_form/field_renderers/computed_field.js.map +1 -0
  105. package/dist/components/hazo_data_form/field_renderers/currency_field.d.ts +7 -0
  106. package/dist/components/hazo_data_form/field_renderers/currency_field.d.ts.map +1 -0
  107. package/dist/components/hazo_data_form/field_renderers/currency_field.js +30 -0
  108. package/dist/components/hazo_data_form/field_renderers/currency_field.js.map +1 -0
  109. package/dist/components/hazo_data_form/field_renderers/date_field.d.ts +7 -0
  110. package/dist/components/hazo_data_form/field_renderers/date_field.d.ts.map +1 -0
  111. package/dist/components/hazo_data_form/field_renderers/date_field.js +17 -0
  112. package/dist/components/hazo_data_form/field_renderers/date_field.js.map +1 -0
  113. package/dist/components/hazo_data_form/field_renderers/email_field.d.ts +6 -0
  114. package/dist/components/hazo_data_form/field_renderers/email_field.d.ts.map +1 -0
  115. package/dist/components/hazo_data_form/field_renderers/email_field.js +12 -0
  116. package/dist/components/hazo_data_form/field_renderers/email_field.js.map +1 -0
  117. package/dist/components/hazo_data_form/field_renderers/index.d.ts +50 -0
  118. package/dist/components/hazo_data_form/field_renderers/index.d.ts.map +1 -0
  119. package/dist/components/hazo_data_form/field_renderers/index.js +95 -0
  120. package/dist/components/hazo_data_form/field_renderers/index.js.map +1 -0
  121. package/dist/components/hazo_data_form/field_renderers/masked_field.d.ts +7 -0
  122. package/dist/components/hazo_data_form/field_renderers/masked_field.d.ts.map +1 -0
  123. package/dist/components/hazo_data_form/field_renderers/masked_field.js +56 -0
  124. package/dist/components/hazo_data_form/field_renderers/masked_field.js.map +1 -0
  125. package/dist/components/hazo_data_form/field_renderers/number_field.d.ts +6 -0
  126. package/dist/components/hazo_data_form/field_renderers/number_field.d.ts.map +1 -0
  127. package/dist/components/hazo_data_form/field_renderers/number_field.js +15 -0
  128. package/dist/components/hazo_data_form/field_renderers/number_field.js.map +1 -0
  129. package/dist/components/hazo_data_form/field_renderers/option_field.d.ts +6 -0
  130. package/dist/components/hazo_data_form/field_renderers/option_field.d.ts.map +1 -0
  131. package/dist/components/hazo_data_form/field_renderers/option_field.js +15 -0
  132. package/dist/components/hazo_data_form/field_renderers/option_field.js.map +1 -0
  133. package/dist/components/hazo_data_form/field_renderers/percentage_field.d.ts +7 -0
  134. package/dist/components/hazo_data_form/field_renderers/percentage_field.d.ts.map +1 -0
  135. package/dist/components/hazo_data_form/field_renderers/percentage_field.js +22 -0
  136. package/dist/components/hazo_data_form/field_renderers/percentage_field.js.map +1 -0
  137. package/dist/components/hazo_data_form/field_renderers/static_text_field.d.ts +7 -0
  138. package/dist/components/hazo_data_form/field_renderers/static_text_field.d.ts.map +1 -0
  139. package/dist/components/hazo_data_form/field_renderers/static_text_field.js +11 -0
  140. package/dist/components/hazo_data_form/field_renderers/static_text_field.js.map +1 -0
  141. package/dist/components/hazo_data_form/field_renderers/summary_row_field.d.ts +7 -0
  142. package/dist/components/hazo_data_form/field_renderers/summary_row_field.d.ts.map +1 -0
  143. package/dist/components/hazo_data_form/field_renderers/summary_row_field.js +20 -0
  144. package/dist/components/hazo_data_form/field_renderers/summary_row_field.js.map +1 -0
  145. package/dist/components/hazo_data_form/field_renderers/table_field.d.ts +7 -0
  146. package/dist/components/hazo_data_form/field_renderers/table_field.d.ts.map +1 -0
  147. package/dist/components/hazo_data_form/field_renderers/table_field.js +179 -0
  148. package/dist/components/hazo_data_form/field_renderers/table_field.js.map +1 -0
  149. package/dist/components/hazo_data_form/field_renderers/tel_field.d.ts +6 -0
  150. package/dist/components/hazo_data_form/field_renderers/tel_field.d.ts.map +1 -0
  151. package/dist/components/hazo_data_form/field_renderers/tel_field.js +12 -0
  152. package/dist/components/hazo_data_form/field_renderers/tel_field.js.map +1 -0
  153. package/dist/components/hazo_data_form/field_renderers/text_field.d.ts +6 -0
  154. package/dist/components/hazo_data_form/field_renderers/text_field.d.ts.map +1 -0
  155. package/dist/components/hazo_data_form/field_renderers/text_field.js +12 -0
  156. package/dist/components/hazo_data_form/field_renderers/text_field.js.map +1 -0
  157. package/dist/components/hazo_data_form/field_renderers/textarea_field.d.ts +6 -0
  158. package/dist/components/hazo_data_form/field_renderers/textarea_field.d.ts.map +1 -0
  159. package/dist/components/hazo_data_form/field_renderers/textarea_field.js +12 -0
  160. package/dist/components/hazo_data_form/field_renderers/textarea_field.js.map +1 -0
  161. package/dist/components/hazo_data_form/file_manager_button.d.ts +12 -0
  162. package/dist/components/hazo_data_form/file_manager_button.d.ts.map +1 -0
  163. package/dist/components/hazo_data_form/file_manager_button.js +9 -0
  164. package/dist/components/hazo_data_form/file_manager_button.js.map +1 -0
  165. package/dist/components/hazo_data_form/group_renderer.d.ts +20 -0
  166. package/dist/components/hazo_data_form/group_renderer.d.ts.map +1 -0
  167. package/dist/components/hazo_data_form/group_renderer.js +74 -0
  168. package/dist/components/hazo_data_form/group_renderer.js.map +1 -0
  169. package/dist/components/hazo_data_form/hazo_data_form.d.ts +10 -0
  170. package/dist/components/hazo_data_form/hazo_data_form.d.ts.map +1 -0
  171. package/dist/components/hazo_data_form/hazo_data_form.js +100 -0
  172. package/dist/components/hazo_data_form/hazo_data_form.js.map +1 -0
  173. package/dist/components/hazo_data_form/index.d.ts +15 -0
  174. package/dist/components/hazo_data_form/index.d.ts.map +1 -0
  175. package/dist/components/hazo_data_form/index.js +14 -0
  176. package/dist/components/hazo_data_form/index.js.map +1 -0
  177. package/dist/components/hazo_data_form/section_renderer.d.ts +24 -0
  178. package/dist/components/hazo_data_form/section_renderer.d.ts.map +1 -0
  179. package/dist/components/hazo_data_form/section_renderer.js +34 -0
  180. package/dist/components/hazo_data_form/section_renderer.js.map +1 -0
  181. package/dist/components/hazo_data_form/shared/data_form_badge.d.ts +13 -0
  182. package/dist/components/hazo_data_form/shared/data_form_badge.d.ts.map +1 -0
  183. package/dist/components/hazo_data_form/shared/data_form_badge.js +13 -0
  184. package/dist/components/hazo_data_form/shared/data_form_badge.js.map +1 -0
  185. package/dist/components/hazo_data_form/shared/data_form_field_layout.d.ts +17 -0
  186. package/dist/components/hazo_data_form/shared/data_form_field_layout.d.ts.map +1 -0
  187. package/dist/components/hazo_data_form/shared/data_form_field_layout.js +31 -0
  188. package/dist/components/hazo_data_form/shared/data_form_field_layout.js.map +1 -0
  189. package/dist/components/hazo_data_form/shared/data_form_file_column.d.ts +17 -0
  190. package/dist/components/hazo_data_form/shared/data_form_file_column.d.ts.map +1 -0
  191. package/dist/components/hazo_data_form/shared/data_form_file_column.js +46 -0
  192. package/dist/components/hazo_data_form/shared/data_form_file_column.js.map +1 -0
  193. package/dist/components/hazo_data_form/shared/data_form_help_tooltip.d.ts +15 -0
  194. package/dist/components/hazo_data_form/shared/data_form_help_tooltip.d.ts.map +1 -0
  195. package/dist/components/hazo_data_form/shared/data_form_help_tooltip.js +25 -0
  196. package/dist/components/hazo_data_form/shared/data_form_help_tooltip.js.map +1 -0
  197. package/dist/components/hazo_data_form/shared/data_form_label.d.ts +12 -0
  198. package/dist/components/hazo_data_form/shared/data_form_label.d.ts.map +1 -0
  199. package/dist/components/hazo_data_form/shared/data_form_label.js +18 -0
  200. package/dist/components/hazo_data_form/shared/data_form_label.js.map +1 -0
  201. package/dist/components/hazo_data_form/shared/data_form_reference_value.d.ts +10 -0
  202. package/dist/components/hazo_data_form/shared/data_form_reference_value.d.ts.map +1 -0
  203. package/dist/components/hazo_data_form/shared/data_form_reference_value.js +10 -0
  204. package/dist/components/hazo_data_form/shared/data_form_reference_value.js.map +1 -0
  205. package/dist/components/hazo_data_form/shared/index.d.ts +16 -0
  206. package/dist/components/hazo_data_form/shared/index.d.ts.map +1 -0
  207. package/dist/components/hazo_data_form/shared/index.js +10 -0
  208. package/dist/components/hazo_data_form/shared/index.js.map +1 -0
  209. package/dist/components/hazo_data_form/shared/types.d.ts +6 -0
  210. package/dist/components/hazo_data_form/shared/types.d.ts.map +1 -0
  211. package/dist/components/hazo_data_form/shared/types.js +5 -0
  212. package/dist/components/hazo_data_form/shared/types.js.map +1 -0
  213. package/dist/components/hazo_data_form/types.d.ts +110 -0
  214. package/dist/components/hazo_data_form/types.d.ts.map +1 -0
  215. package/dist/components/hazo_data_form/types.js +6 -0
  216. package/dist/components/hazo_data_form/types.js.map +1 -0
  217. package/dist/components/hazo_template_generator/components/type_editors/data_table_editor.d.ts.map +1 -1
  218. package/dist/components/hazo_template_generator/components/type_editors/data_table_editor.js +2 -0
  219. package/dist/components/hazo_template_generator/components/type_editors/data_table_editor.js.map +1 -1
  220. package/dist/components/hazo_template_generator/types.d.ts +2 -2
  221. package/dist/components/hazo_template_generator/types.d.ts.map +1 -1
  222. package/dist/components/hazo_template_generator/types.js +62 -0
  223. package/dist/components/hazo_template_generator/types.js.map +1 -1
  224. package/dist/components/hazo_validation_rule_editor/components/clarification_settings.d.ts +10 -0
  225. package/dist/components/hazo_validation_rule_editor/components/clarification_settings.d.ts.map +1 -0
  226. package/dist/components/hazo_validation_rule_editor/components/clarification_settings.js +57 -0
  227. package/dist/components/hazo_validation_rule_editor/components/clarification_settings.js.map +1 -0
  228. package/dist/components/hazo_validation_rule_editor/components/prompt_editor.d.ts +11 -0
  229. package/dist/components/hazo_validation_rule_editor/components/prompt_editor.d.ts.map +1 -0
  230. package/dist/components/hazo_validation_rule_editor/components/prompt_editor.js +145 -0
  231. package/dist/components/hazo_validation_rule_editor/components/prompt_editor.js.map +1 -0
  232. package/dist/components/hazo_validation_rule_editor/components/rule_editor.d.ts +6 -0
  233. package/dist/components/hazo_validation_rule_editor/components/rule_editor.d.ts.map +1 -0
  234. package/dist/components/hazo_validation_rule_editor/components/rule_editor.js +149 -0
  235. package/dist/components/hazo_validation_rule_editor/components/rule_editor.js.map +1 -0
  236. package/dist/components/hazo_validation_rule_editor/components/rule_list.d.ts +6 -0
  237. package/dist/components/hazo_validation_rule_editor/components/rule_list.d.ts.map +1 -0
  238. package/dist/components/hazo_validation_rule_editor/components/rule_list.js +57 -0
  239. package/dist/components/hazo_validation_rule_editor/components/rule_list.js.map +1 -0
  240. package/dist/components/hazo_validation_rule_editor/context.d.ts +19 -0
  241. package/dist/components/hazo_validation_rule_editor/context.d.ts.map +1 -0
  242. package/dist/components/hazo_validation_rule_editor/context.js +95 -0
  243. package/dist/components/hazo_validation_rule_editor/context.js.map +1 -0
  244. package/dist/components/hazo_validation_rule_editor/hooks/use_file_validation.d.ts +20 -0
  245. package/dist/components/hazo_validation_rule_editor/hooks/use_file_validation.d.ts.map +1 -0
  246. package/dist/components/hazo_validation_rule_editor/hooks/use_file_validation.js +127 -0
  247. package/dist/components/hazo_validation_rule_editor/hooks/use_file_validation.js.map +1 -0
  248. package/dist/components/hazo_validation_rule_editor/hooks/use_validation_rules.d.ts +30 -0
  249. package/dist/components/hazo_validation_rule_editor/hooks/use_validation_rules.d.ts.map +1 -0
  250. package/dist/components/hazo_validation_rule_editor/hooks/use_validation_rules.js +216 -0
  251. package/dist/components/hazo_validation_rule_editor/hooks/use_validation_rules.js.map +1 -0
  252. package/dist/components/hazo_validation_rule_editor/index.d.ts +14 -0
  253. package/dist/components/hazo_validation_rule_editor/index.d.ts.map +1 -0
  254. package/dist/components/hazo_validation_rule_editor/index.js +12 -0
  255. package/dist/components/hazo_validation_rule_editor/index.js.map +1 -0
  256. package/dist/components/hazo_validation_rule_editor/types.d.ts +53 -0
  257. package/dist/components/hazo_validation_rule_editor/types.d.ts.map +1 -0
  258. package/dist/components/hazo_validation_rule_editor/types.js +5 -0
  259. package/dist/components/hazo_validation_rule_editor/types.js.map +1 -0
  260. package/dist/components/hazo_validation_rule_editor/validation_rule_editor.d.ts +3 -0
  261. package/dist/components/hazo_validation_rule_editor/validation_rule_editor.d.ts.map +1 -0
  262. package/dist/components/hazo_validation_rule_editor/validation_rule_editor.js +14 -0
  263. package/dist/components/hazo_validation_rule_editor/validation_rule_editor.js.map +1 -0
  264. package/dist/components/index.d.ts +30 -2
  265. package/dist/components/index.d.ts.map +1 -1
  266. package/dist/components/index.js +22 -1
  267. package/dist/components/index.js.map +1 -1
  268. package/dist/components/shared/field_state/normalize.d.ts.map +1 -1
  269. package/dist/components/shared/field_state/normalize.js +1 -0
  270. package/dist/components/shared/field_state/normalize.js.map +1 -1
  271. package/dist/components/shared/field_state/types.d.ts +6 -0
  272. package/dist/components/shared/field_state/types.d.ts.map +1 -1
  273. package/dist/components/shared/field_utils/types.d.ts +1 -1
  274. package/dist/components/shared/field_utils/types.d.ts.map +1 -1
  275. package/dist/components/shared/strip_base_props.d.ts.map +1 -1
  276. package/dist/components/shared/strip_base_props.js +2 -0
  277. package/dist/components/shared/strip_base_props.js.map +1 -1
  278. package/dist/components/shared/summary_files/summary_files.d.ts +9 -1
  279. package/dist/components/shared/summary_files/summary_files.d.ts.map +1 -1
  280. package/dist/components/shared/summary_files/summary_files.js +11 -5
  281. package/dist/components/shared/summary_files/summary_files.js.map +1 -1
  282. package/dist/components/shared/unified_field_controls/types.d.ts +8 -0
  283. package/dist/components/shared/unified_field_controls/types.d.ts.map +1 -1
  284. package/dist/components/shared/unified_field_controls/unified_field_controls.d.ts +1 -1
  285. package/dist/components/shared/unified_field_controls/unified_field_controls.d.ts.map +1 -1
  286. package/dist/components/shared/unified_field_controls/unified_field_controls.js +3 -2
  287. package/dist/components/shared/unified_field_controls/unified_field_controls.js.map +1 -1
  288. package/dist/components/shared/use_base_form_field.d.ts +14 -0
  289. package/dist/components/shared/use_base_form_field.d.ts.map +1 -1
  290. package/dist/components/shared/use_base_form_field.js +41 -2
  291. package/dist/components/shared/use_base_form_field.js.map +1 -1
  292. package/dist/components/status_badges.d.ts +33 -0
  293. package/dist/components/status_badges.d.ts.map +1 -1
  294. package/dist/components/status_badges.js +27 -2
  295. package/dist/components/status_badges.js.map +1 -1
  296. package/dist/config/clarification_templates.d.ts +24 -0
  297. package/dist/config/clarification_templates.d.ts.map +1 -0
  298. package/dist/config/clarification_templates.js +66 -0
  299. package/dist/config/clarification_templates.js.map +1 -0
  300. package/dist/config/defaults.d.ts +4 -0
  301. package/dist/config/defaults.d.ts.map +1 -1
  302. package/dist/config/defaults.js +4 -0
  303. package/dist/config/defaults.js.map +1 -1
  304. package/dist/config/index.d.ts +3 -1
  305. package/dist/config/index.d.ts.map +1 -1
  306. package/dist/config/index.js +3 -1
  307. package/dist/config/index.js.map +1 -1
  308. package/dist/config/validation_rule_commands.d.ts +12 -0
  309. package/dist/config/validation_rule_commands.d.ts.map +1 -0
  310. package/dist/config/validation_rule_commands.js +106 -0
  311. package/dist/config/validation_rule_commands.js.map +1 -0
  312. package/dist/index.client.d.ts +1 -0
  313. package/dist/index.client.d.ts.map +1 -1
  314. package/dist/index.client.js +1 -0
  315. package/dist/index.client.js.map +1 -1
  316. package/dist/lib/autofill_handler.d.ts +34 -0
  317. package/dist/lib/autofill_handler.d.ts.map +1 -0
  318. package/dist/lib/autofill_handler.js +330 -0
  319. package/dist/lib/autofill_handler.js.map +1 -0
  320. package/dist/lib/index.d.ts +9 -0
  321. package/dist/lib/index.d.ts.map +1 -1
  322. package/dist/lib/index.js +5 -0
  323. package/dist/lib/index.js.map +1 -1
  324. package/dist/lib/validation_handler.d.ts +27 -0
  325. package/dist/lib/validation_handler.d.ts.map +1 -0
  326. package/dist/lib/validation_handler.js +341 -0
  327. package/dist/lib/validation_handler.js.map +1 -0
  328. package/dist/types/clarification.d.ts +126 -0
  329. package/dist/types/clarification.d.ts.map +1 -0
  330. package/dist/types/clarification.js +8 -0
  331. package/dist/types/clarification.js.map +1 -0
  332. package/dist/types/doc_link.d.ts +42 -0
  333. package/dist/types/doc_link.d.ts.map +1 -0
  334. package/dist/types/doc_link.js +5 -0
  335. package/dist/types/doc_link.js.map +1 -0
  336. package/dist/types/field_type_definition.d.ts +67 -0
  337. package/dist/types/field_type_definition.d.ts.map +1 -0
  338. package/dist/types/field_type_definition.js +41 -0
  339. package/dist/types/field_type_definition.js.map +1 -0
  340. package/dist/types/file_attachment.d.ts +2 -0
  341. package/dist/types/file_attachment.d.ts.map +1 -1
  342. package/dist/types/file_attachment.js.map +1 -1
  343. package/dist/types/file_manager.d.ts +36 -0
  344. package/dist/types/file_manager.d.ts.map +1 -1
  345. package/dist/types/index.d.ts +8 -1
  346. package/dist/types/index.d.ts.map +1 -1
  347. package/dist/types/index.js +2 -0
  348. package/dist/types/index.js.map +1 -1
  349. package/dist/types/style_variant.d.ts +93 -0
  350. package/dist/types/style_variant.d.ts.map +1 -0
  351. package/dist/types/style_variant.js +248 -0
  352. package/dist/types/style_variant.js.map +1 -0
  353. package/dist/types/validation.d.ts +192 -0
  354. package/dist/types/validation.d.ts.map +1 -0
  355. package/dist/types/validation.js +9 -0
  356. package/dist/types/validation.js.map +1 -0
  357. package/dist/utils/build_rule_field_map.d.ts +31 -0
  358. package/dist/utils/build_rule_field_map.d.ts.map +1 -0
  359. package/dist/utils/build_rule_field_map.js +53 -0
  360. package/dist/utils/build_rule_field_map.js.map +1 -0
  361. package/dist/utils/data_form_uploads.d.ts +25 -0
  362. package/dist/utils/data_form_uploads.d.ts.map +1 -0
  363. package/dist/utils/data_form_uploads.js +36 -0
  364. package/dist/utils/data_form_uploads.js.map +1 -0
  365. package/dist/utils/financial_format.d.ts +12 -0
  366. package/dist/utils/financial_format.d.ts.map +1 -0
  367. package/dist/utils/financial_format.js +19 -0
  368. package/dist/utils/financial_format.js.map +1 -0
  369. package/dist/utils/formula.d.ts +13 -0
  370. package/dist/utils/formula.d.ts.map +1 -0
  371. package/dist/utils/formula.js +104 -0
  372. package/dist/utils/formula.js.map +1 -0
  373. package/dist/utils/index.d.ts +11 -0
  374. package/dist/utils/index.d.ts.map +1 -1
  375. package/dist/utils/index.js +16 -0
  376. package/dist/utils/index.js.map +1 -1
  377. package/dist/utils/mask_format.d.ts +20 -0
  378. package/dist/utils/mask_format.d.ts.map +1 -0
  379. package/dist/utils/mask_format.js +41 -0
  380. package/dist/utils/mask_format.js.map +1 -0
  381. package/dist/utils/slugify.d.ts +10 -0
  382. package/dist/utils/slugify.d.ts.map +1 -0
  383. package/dist/utils/slugify.js +17 -0
  384. package/dist/utils/slugify.js.map +1 -0
  385. package/dist/utils/style_resolver.d.ts +36 -0
  386. package/dist/utils/style_resolver.d.ts.map +1 -0
  387. package/dist/utils/style_resolver.js +160 -0
  388. package/dist/utils/style_resolver.js.map +1 -0
  389. package/dist/utils/use_computed_fields.d.ts +14 -0
  390. package/dist/utils/use_computed_fields.d.ts.map +1 -0
  391. package/dist/utils/use_computed_fields.js +24 -0
  392. package/dist/utils/use_computed_fields.js.map +1 -0
  393. package/package.json +15 -3
  394. package/templates/config/hazo_collab_forms_config.ini +7 -0
@@ -0,0 +1,341 @@
1
+ /**
2
+ * Server-side validation route handler factory.
3
+ *
4
+ * Creates a POST handler that executes validation rules against uploaded documents
5
+ * using LLM analysis, and returns ClarificationItems for any issues found.
6
+ *
7
+ * Usage:
8
+ * import { create_validation_route } from 'hazo_collab_forms/lib';
9
+ * export const POST = create_validation_route();
10
+ *
11
+ * Uses standard Web API Request/Response for portability.
12
+ * hazo_llm_api is dynamically imported so it's only required at runtime.
13
+ */
14
+ import 'server-only';
15
+ import { DEFAULT_CLARIFICATION_TEMPLATES } from '../config/clarification_templates.js';
16
+ import { DEFAULT_VALIDATION_PROMPT_SUFFIX } from '../config/defaults.js';
17
+ import { get_config } from './config.js';
18
+ // ============================================================================
19
+ // Helpers
20
+ // ============================================================================
21
+ function generate_clarification_id() {
22
+ return `clr_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
23
+ }
24
+ /**
25
+ * Extract has_issue and issue_description from a parsed JSON object.
26
+ * Supports both new format (validation_passed, validation_details) and
27
+ * legacy format (has_issue, issue_description).
28
+ */
29
+ function extract_validation_fields(parsed) {
30
+ // Determine has_issue: prefer new `validation_passed` (inverted), fall back to legacy `has_issue`
31
+ const has_issue = 'validation_passed' in parsed
32
+ ? !parsed.validation_passed
33
+ : !!parsed.has_issue;
34
+ // Determine issue_description: prefer new `validation_details`, fall back to legacy names
35
+ const issue_description = parsed.validation_details ||
36
+ parsed.issue_description ||
37
+ parsed.description ||
38
+ parsed.issue ||
39
+ undefined;
40
+ return {
41
+ has_issue,
42
+ issue_description,
43
+ confidence: typeof parsed.confidence === 'number' ? parsed.confidence : undefined,
44
+ };
45
+ }
46
+ /**
47
+ * Parse LLM response for validation results.
48
+ * Supports new format: { validation_passed, validation_details, confidence }
49
+ * and legacy format: { has_issue, issue_description, confidence }
50
+ */
51
+ function parse_validation_response(text) {
52
+ const cleaned = text.trim();
53
+ // Try direct parse
54
+ try {
55
+ const parsed = JSON.parse(cleaned);
56
+ return extract_validation_fields(parsed);
57
+ }
58
+ catch {
59
+ // Continue
60
+ }
61
+ // Strip markdown code fences
62
+ const fence_match = cleaned.match(/```(?:json)?\s*\n?([\s\S]*?)\n?```/);
63
+ if (fence_match) {
64
+ try {
65
+ const parsed = JSON.parse(fence_match[1].trim());
66
+ return extract_validation_fields(parsed);
67
+ }
68
+ catch {
69
+ // Continue
70
+ }
71
+ }
72
+ // Try to find JSON in text
73
+ const json_match = cleaned.match(/\{[\s\S]*\}/);
74
+ if (json_match) {
75
+ try {
76
+ const parsed = JSON.parse(json_match[0]);
77
+ return extract_validation_fields(parsed);
78
+ }
79
+ catch {
80
+ // Continue
81
+ }
82
+ }
83
+ // Heuristic: if the text mentions "issue", "problem", "invalid", etc., consider it an issue
84
+ const issue_keywords = ['issue', 'problem', 'invalid', 'missing', 'incomplete', 'error', 'incorrect'];
85
+ const lower = cleaned.toLowerCase();
86
+ const has_issue = issue_keywords.some(k => lower.includes(k));
87
+ return {
88
+ has_issue,
89
+ issue_description: has_issue ? cleaned.slice(0, 500) : undefined,
90
+ };
91
+ }
92
+ function is_image_mime(mime_type) {
93
+ return mime_type.startsWith('image/');
94
+ }
95
+ function is_document_mime(mime_type) {
96
+ return mime_type === 'application/pdf';
97
+ }
98
+ /**
99
+ * Substitute {{variable}} placeholders in prompt text.
100
+ */
101
+ function substitute_variables(prompt, variables) {
102
+ return prompt.replace(/\{\{(\w+)\}\}/g, (_, key) => {
103
+ return variables[key] ?? `{{${key}}}`;
104
+ });
105
+ }
106
+ /**
107
+ * Build a validation prompt that wraps the rule prompt with a configurable response format suffix.
108
+ * Reads `[validation] prompt_suffix` from INI config, falling back to DEFAULT_VALIDATION_PROMPT_SUFFIX.
109
+ */
110
+ function build_validation_prompt(rule_prompt) {
111
+ const suffix = get_config('validation', 'prompt_suffix') ?? DEFAULT_VALIDATION_PROMPT_SUFFIX;
112
+ return `You are a document validation assistant. Analyze the provided document according to the following rule and determine if there is an issue.
113
+
114
+ VALIDATION RULE:
115
+ ${rule_prompt}
116
+
117
+ ${suffix}`;
118
+ }
119
+ /**
120
+ * Create a ClarificationItem from a validation rule result.
121
+ */
122
+ function create_clarification_from_result(rule, result, doc_info) {
123
+ const template = rule.clarification_type !== 'none'
124
+ ? DEFAULT_CLARIFICATION_TEMPLATES[rule.clarification_type]
125
+ : null;
126
+ const response_options = rule.custom_response_options ??
127
+ template?.response_options ??
128
+ [];
129
+ return {
130
+ id: generate_clarification_id(),
131
+ type: rule.clarification_type,
132
+ status: 'pending',
133
+ target_field_id: rule.target_field_id,
134
+ target_label: rule.target_label,
135
+ rule_name: rule.name,
136
+ rule_id: rule.rule_id,
137
+ issue_description: rule.custom_issue_description ??
138
+ result.issue_description ??
139
+ template?.default_issue_description ??
140
+ 'A validation issue was detected.',
141
+ validation_details: result.issue_description,
142
+ doc_references: doc_info ? [{
143
+ file_id: '', // Client enriches with actual file_id
144
+ file_name: doc_info.file_name,
145
+ mime_type: doc_info.mime_type,
146
+ }] : [],
147
+ action_description: rule.custom_action_description ??
148
+ template?.default_action_description,
149
+ response_options,
150
+ response_files: [],
151
+ created_at: new Date().toISOString(),
152
+ };
153
+ }
154
+ // ============================================================================
155
+ // Route Handler Factory
156
+ // ============================================================================
157
+ /**
158
+ * Creates a POST route handler for document validation.
159
+ *
160
+ * The handler:
161
+ * 1. Validates the request payload
162
+ * 2. Fetches the file (inline or from URL)
163
+ * 3. Executes each validation rule against the document via LLM
164
+ * 4. Creates ClarificationItems for rules that find issues
165
+ * 5. Returns the results
166
+ */
167
+ export function create_validation_route(options) {
168
+ const sqlite_path = options?.sqlite_path ?? 'data/prompt_library.sqlite';
169
+ const on_error = options?.on_error ?? ((err, ctx) => console.error(`[validation] ${ctx}:`, err));
170
+ // Cache the dynamic import
171
+ let llm_api_module = null;
172
+ let init_promise = null;
173
+ async function get_llm_api() {
174
+ if (!llm_api_module) {
175
+ try {
176
+ const module_id = 'hazo_llm_api/server';
177
+ llm_api_module = await import(/* webpackIgnore: true */ module_id);
178
+ }
179
+ catch {
180
+ throw new Error('hazo_llm_api is required for validation. Install it: npm install hazo_llm_api');
181
+ }
182
+ }
183
+ return llm_api_module;
184
+ }
185
+ async function ensure_initialized() {
186
+ const api = await get_llm_api();
187
+ if (!api.is_initialized()) {
188
+ if (!init_promise) {
189
+ init_promise = api.initialize_llm_api({ sqlite_path }).then(() => { });
190
+ }
191
+ await init_promise;
192
+ }
193
+ }
194
+ /**
195
+ * Execute a single validation rule against a document.
196
+ */
197
+ async function execute_rule(rule, file_b64, mime_type, variables) {
198
+ const api = await get_llm_api();
199
+ // Substitute variables in the prompt
200
+ const resolved_prompt = substitute_variables(rule.prompt, variables);
201
+ const full_prompt = build_validation_prompt(resolved_prompt);
202
+ // Call LLM
203
+ let llm_response;
204
+ if (is_image_mime(mime_type)) {
205
+ llm_response = await api.hazo_llm_image_text({
206
+ prompt: full_prompt,
207
+ image_b64: file_b64,
208
+ image_mime_type: mime_type,
209
+ });
210
+ }
211
+ else if (is_document_mime(mime_type)) {
212
+ llm_response = await api.hazo_llm_document_text({
213
+ prompt: full_prompt,
214
+ document_b64: file_b64,
215
+ document_mime_type: mime_type,
216
+ });
217
+ }
218
+ else {
219
+ // Fallback: treat as image
220
+ llm_response = await api.hazo_llm_image_text({
221
+ prompt: full_prompt,
222
+ image_b64: file_b64,
223
+ image_mime_type: mime_type,
224
+ });
225
+ }
226
+ if (!llm_response.success || !llm_response.text) {
227
+ return {
228
+ rule_id: rule.rule_id,
229
+ has_issue: false,
230
+ raw_response: llm_response.error ?? 'LLM call failed',
231
+ };
232
+ }
233
+ // Parse response
234
+ const parsed = parse_validation_response(llm_response.text);
235
+ return {
236
+ rule_id: rule.rule_id,
237
+ has_issue: parsed.has_issue,
238
+ issue_description: parsed.issue_description,
239
+ confidence: parsed.confidence,
240
+ raw_response: llm_response.text,
241
+ };
242
+ }
243
+ return async function POST(request) {
244
+ try {
245
+ const body = await request.json();
246
+ const { file_name, mime_type, download_url, file_b64: request_file_b64, rules, variables = {}, content_tag, } = body;
247
+ // Validate required fields
248
+ if (!rules?.length) {
249
+ return Response.json({
250
+ success: false,
251
+ clarifications: [],
252
+ rule_results: [],
253
+ errors: [{ rule_id: '', error: 'rules array is required and must not be empty' }],
254
+ }, { status: 400 });
255
+ }
256
+ // Initialize LLM API
257
+ await ensure_initialized();
258
+ // Get file as base64
259
+ let file_b64;
260
+ if (request_file_b64) {
261
+ file_b64 = request_file_b64;
262
+ }
263
+ else if (download_url) {
264
+ try {
265
+ const absolute_url = download_url.startsWith('http')
266
+ ? download_url
267
+ : `${new URL(request.url).origin}${download_url}`;
268
+ const file_response = await fetch(absolute_url);
269
+ if (!file_response.ok) {
270
+ throw new Error(`Failed to fetch file: ${file_response.status}`);
271
+ }
272
+ const buffer = Buffer.from(await file_response.arrayBuffer());
273
+ file_b64 = buffer.toString('base64');
274
+ }
275
+ catch (err) {
276
+ return Response.json({
277
+ success: false,
278
+ clarifications: [],
279
+ rule_results: [],
280
+ errors: [{ rule_id: '', error: `Failed to fetch file "${file_name}": ${err instanceof Error ? err.message : 'Unknown error'}` }],
281
+ }, { status: 500 });
282
+ }
283
+ }
284
+ else {
285
+ return Response.json({
286
+ success: false,
287
+ clarifications: [],
288
+ rule_results: [],
289
+ errors: [{ rule_id: '', error: 'Either file_b64 or download_url is required' }],
290
+ }, { status: 400 });
291
+ }
292
+ // Add file context variables
293
+ const all_variables = {
294
+ ...variables,
295
+ document_name: file_name,
296
+ ...(content_tag ? { document_type: content_tag } : {}),
297
+ };
298
+ // Execute each rule
299
+ const rule_results = [];
300
+ const clarifications = [];
301
+ const errors = [];
302
+ for (const rule of rules) {
303
+ try {
304
+ const result = await execute_rule(rule, file_b64, mime_type, all_variables);
305
+ rule_results.push(result);
306
+ if (result.has_issue && rule.clarification_type !== 'none') {
307
+ const clarification = create_clarification_from_result(rule, result, { file_name, mime_type });
308
+ clarifications.push(clarification);
309
+ }
310
+ }
311
+ catch (err) {
312
+ const message = err instanceof Error ? err.message : 'Unknown error';
313
+ on_error(err, `rule ${rule.rule_id}: ${rule.name}`);
314
+ errors.push({ rule_id: rule.rule_id, error: message });
315
+ rule_results.push({
316
+ rule_id: rule.rule_id,
317
+ has_issue: false,
318
+ raw_response: message,
319
+ });
320
+ }
321
+ }
322
+ const response = {
323
+ success: errors.length === 0,
324
+ clarifications,
325
+ rule_results,
326
+ ...(errors.length > 0 ? { errors } : {}),
327
+ };
328
+ return Response.json(response);
329
+ }
330
+ catch (error) {
331
+ on_error(error, 'unhandled error');
332
+ return Response.json({
333
+ success: false,
334
+ clarifications: [],
335
+ rule_results: [],
336
+ errors: [{ rule_id: '', error: error instanceof Error ? error.message : 'Unknown error' }],
337
+ }, { status: 500 });
338
+ }
339
+ };
340
+ }
341
+ //# sourceMappingURL=validation_handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation_handler.js","sourceRoot":"","sources":["../../src/lib/validation_handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Type definitions for Document Clarifications feature.
3
+ *
4
+ * Clarifications allow reviewers to flag document validation issues,
5
+ * reference relevant documents, and collect structured responses from clients.
6
+ */
7
+ import type { FormFileAttachment } from './file_attachment.js';
8
+ /** Clarification type - maps to templates */
9
+ export type ClarificationType = 'none' | 'invalid_document' | 'additional_info_required';
10
+ /** Lifecycle status of a clarification */
11
+ export type ClarificationStatus = 'pending' | 'responded' | 'resolved' | 'dismissed';
12
+ /** Reference to a document relevant to the clarification */
13
+ export interface ClarificationDocReference {
14
+ /** hazo_files file ID */
15
+ file_id: string;
16
+ /** Display filename */
17
+ file_name: string;
18
+ /** MIME type for icon display */
19
+ mime_type: string;
20
+ /** Why this doc is referenced (optional reviewer comment) */
21
+ comment?: string;
22
+ /** Field this doc was originally uploaded to */
23
+ source_field_id?: string;
24
+ }
25
+ /** A radio option in the response (green) zone */
26
+ export interface ClarificationResponseOption {
27
+ /** Value key for this option */
28
+ value: string;
29
+ /** User-visible label */
30
+ label: string;
31
+ /** Show file upload dropzone when this option is selected */
32
+ shows_file_upload?: boolean;
33
+ /** Show additional text input when this option is selected */
34
+ shows_additional_input?: boolean;
35
+ }
36
+ /** A single clarification item */
37
+ export interface ClarificationItem {
38
+ /** Unique ID, prefixed 'clr_' */
39
+ id: string;
40
+ /** Clarification type (maps to template) */
41
+ type: ClarificationType;
42
+ /** Lifecycle status */
43
+ status: ClarificationStatus;
44
+ /** Field or group this clarification targets */
45
+ target_field_id: string;
46
+ /** Human-readable label for the target */
47
+ target_label: string;
48
+ /** Validation rule that triggered this (Phase 3) */
49
+ rule_name?: string;
50
+ /** Validation rule ID (Phase 3) */
51
+ rule_id?: string;
52
+ /** Description of the issue found */
53
+ issue_description: string;
54
+ /** Detailed validation result from LLM analysis (shown below issue_description) */
55
+ validation_details?: string;
56
+ /** Referenced documents relevant to this clarification */
57
+ doc_references: ClarificationDocReference[];
58
+ /** Description of what action the client should take */
59
+ action_description?: string;
60
+ /** Available response options (radio buttons) */
61
+ response_options: ClarificationResponseOption[];
62
+ /** Client's selected response option value */
63
+ response_choice?: string;
64
+ /** Client's free-text comment */
65
+ user_comment?: string;
66
+ /** Files uploaded as part of the response */
67
+ response_files: FormFileAttachment[];
68
+ /** ISO timestamp when created */
69
+ created_at: string;
70
+ /** ISO timestamp of last update */
71
+ updated_at?: string;
72
+ /** User ID who created this clarification */
73
+ created_by?: string;
74
+ /** User ID who responded */
75
+ responded_by?: string;
76
+ /** User ID who resolved */
77
+ resolved_by?: string;
78
+ }
79
+ /** Template definition for a clarification type */
80
+ export interface ClarificationTemplate {
81
+ /** Template type key */
82
+ type: ClarificationType;
83
+ /** Human-readable name */
84
+ display_name: string;
85
+ /** Default issue description (pre-filled in grey zone) */
86
+ default_issue_description?: string;
87
+ /** Default action description (pre-filled in green zone) */
88
+ default_action_description?: string;
89
+ /** Available response options for this template */
90
+ response_options: ClarificationResponseOption[];
91
+ /** Whether to show the comment textarea */
92
+ enable_comment: boolean;
93
+ /** Whether to show doc reference list */
94
+ show_doc_references: boolean;
95
+ }
96
+ /** Response payload when a client submits a clarification response */
97
+ export interface ClarificationResponse {
98
+ /** Selected response option value */
99
+ response_choice?: string;
100
+ /** Free-text comment */
101
+ user_comment?: string;
102
+ /** Uploaded response files */
103
+ response_files?: FormFileAttachment[];
104
+ }
105
+ /** Consumer-provided callbacks for clarification lifecycle */
106
+ export interface ClarificationCallbacks {
107
+ /** Called when client submits a response to a clarification */
108
+ on_respond?: (clarification_id: string, response: ClarificationResponse) => void;
109
+ /** Called when reviewer resolves a clarification */
110
+ on_resolve?: (clarification_id: string) => void;
111
+ /** Called when reviewer dismisses a clarification */
112
+ on_dismiss?: (clarification_id: string) => void;
113
+ /** Called when reviewer re-opens a resolved/dismissed clarification */
114
+ on_reopen?: (clarification_id: string) => void;
115
+ /** Called when a doc reference is deleted from a clarification */
116
+ on_doc_delete?: (clarification_id: string, file_id: string) => void;
117
+ }
118
+ /** Summary counts for clarifications */
119
+ export interface ClarificationCounts {
120
+ pending: number;
121
+ responded: number;
122
+ resolved: number;
123
+ dismissed: number;
124
+ total: number;
125
+ }
126
+ //# sourceMappingURL=clarification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clarification.d.ts","sourceRoot":"","sources":["../../src/types/clarification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Type definitions for Document Clarifications feature.
3
+ *
4
+ * Clarifications allow reviewers to flag document validation issues,
5
+ * reference relevant documents, and collect structured responses from clients.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=clarification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clarification.js","sourceRoot":"","sources":["../../src/types/clarification.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Document link types for file attachment references
3
+ */
4
+ /**
5
+ * Supported document types for DocLink
6
+ */
7
+ export type DocLinkType = "pdf" | "image" | "document" | "other";
8
+ /**
9
+ * Document link configuration
10
+ */
11
+ export interface DocLink {
12
+ /** Document type - determines how it's displayed */
13
+ type: DocLinkType;
14
+ /** URL/path to the document */
15
+ url: string;
16
+ /** Starting page (PDF only) */
17
+ page?: number;
18
+ /** Optional display name */
19
+ filename?: string;
20
+ /** File ID for uploaded files */
21
+ file_id?: string;
22
+ }
23
+ /**
24
+ * Uploaded file metadata for data form file management
25
+ */
26
+ export interface UploadedFile {
27
+ file_id: string;
28
+ filename: string;
29
+ url: string;
30
+ mime_type: string;
31
+ size: number;
32
+ uploaded_at: string;
33
+ page?: number;
34
+ }
35
+ /**
36
+ * Callback event for doc_links click
37
+ */
38
+ export interface DocLinkClickEvent {
39
+ field_id: string;
40
+ doc_links: DocLink[];
41
+ }
42
+ //# sourceMappingURL=doc_link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc_link.d.ts","sourceRoot":"","sources":["../../src/types/doc_link.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,oDAAoD;IACpD,IAAI,EAAE,WAAW,CAAC;IAClB,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,EAAE,CAAC;CACtB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Document link types for file attachment references
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=doc_link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc_link.js","sourceRoot":"","sources":["../../src/types/doc_link.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Field type definition types for configurable field types
3
+ * Supports custom field types (TFN, ABN, etc.) that map to base renderers
4
+ */
5
+ /**
6
+ * Base field types - built-in renderers available in the library
7
+ */
8
+ export type BaseFieldType = "text" | "number" | "date" | "boolean" | "option" | "email" | "tel" | "currency" | "percentage" | "textarea" | "table" | "computed" | "static_text" | "summary_row";
9
+ /**
10
+ * Field type - includes base types and any custom types defined in config
11
+ */
12
+ export type FieldType = BaseFieldType | string;
13
+ /**
14
+ * Field type definition for configurable field types
15
+ * Loaded from form_field_types.json
16
+ */
17
+ export interface FieldTypeDefinition {
18
+ /** Which built-in renderer to use */
19
+ base_type: BaseFieldType;
20
+ /** Inherit from another field type definition */
21
+ extends?: string;
22
+ /** Human-readable label for this field type */
23
+ label?: string;
24
+ /** Regex pattern for validation (validates raw/unmasked value) */
25
+ pattern?: string;
26
+ /** Error message when validation fails */
27
+ validation_message?: string;
28
+ /** Display format with X placeholders for digits */
29
+ display_format?: string;
30
+ /** Input mask with # for digit placeholders */
31
+ input_mask?: string;
32
+ /** Default placeholder text */
33
+ placeholder?: string;
34
+ /** Maximum input length (including formatting chars) */
35
+ max_length?: number;
36
+ /** Number of digits (without formatting) */
37
+ digit_count?: number;
38
+ /** HTML inputmode attribute for mobile keyboards */
39
+ input_mode?: "text" | "numeric" | "tel" | "email" | "url" | "decimal";
40
+ /** Prefix to display before value */
41
+ prefix?: string;
42
+ /** Suffix to display after value */
43
+ suffix?: string;
44
+ /** Style class to apply from form_styles.json */
45
+ style_class?: string;
46
+ /** Default decimal places for numeric types */
47
+ decimal_places?: number;
48
+ /** Minimum value for numeric types */
49
+ min?: number;
50
+ /** Maximum value for numeric types */
51
+ max?: number;
52
+ }
53
+ /**
54
+ * Field types configuration loaded from form_field_types.json
55
+ */
56
+ export interface FieldTypesConfig {
57
+ meta?: {
58
+ version?: string;
59
+ description?: string;
60
+ };
61
+ field_types: Record<string, FieldTypeDefinition>;
62
+ }
63
+ /**
64
+ * Default field types configuration
65
+ */
66
+ export declare const DEFAULT_FIELD_TYPES_CONFIG: FieldTypesConfig;
67
+ //# sourceMappingURL=field_type_definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field_type_definition.d.ts","sourceRoot":"","sources":["../../src/types/field_type_definition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,QAAQ,GACR,MAAM,GACN,SAAS,GACT,QAAQ,GACR,OAAO,GACP,KAAK,GACL,UAAU,GACV,YAAY,GACZ,UAAU,GACV,OAAO,GACP,UAAU,GACV,aAAa,GACb,aAAa,CAAC;AAElB;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,qCAAqC;IACrC,SAAS,EAAE,aAAa,CAAC;IACzB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;IAGtE,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sCAAsC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAClD;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,gBAgCxC,CAAC"}