hazo_collab_forms 5.7.0 → 6.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 (362) hide show
  1. package/CHANGE_LOG.md +115 -0
  2. package/README.md +203 -111
  3. package/dist/audit/built_in_actions.d.ts +6 -0
  4. package/dist/audit/built_in_actions.d.ts.map +1 -0
  5. package/dist/audit/built_in_actions.js +23 -0
  6. package/dist/audit/built_in_actions.js.map +1 -0
  7. package/dist/audit/intent_emitter.d.ts +4 -0
  8. package/dist/audit/intent_emitter.d.ts.map +1 -0
  9. package/dist/audit/intent_emitter.js +25 -0
  10. package/dist/audit/intent_emitter.js.map +1 -0
  11. package/dist/audit/lazy_audit_icon.d.ts +8 -0
  12. package/dist/audit/lazy_audit_icon.d.ts.map +1 -0
  13. package/dist/audit/lazy_audit_icon.js +20 -0
  14. package/dist/audit/lazy_audit_icon.js.map +1 -0
  15. package/dist/components/_internal_form_set.d.ts +6 -0
  16. package/dist/components/_internal_form_set.d.ts.map +1 -1
  17. package/dist/components/_internal_form_set.js +48 -51
  18. package/dist/components/_internal_form_set.js.map +1 -1
  19. package/dist/components/clarification/clarification_item_body.d.ts +1 -1
  20. package/dist/components/clarification/clarification_item_body.d.ts.map +1 -1
  21. package/dist/components/clarification/resolution_status_strip.d.ts +1 -1
  22. package/dist/components/clarification/resolution_status_strip.d.ts.map +1 -1
  23. package/dist/components/field_audit/auditor.d.ts +30 -0
  24. package/dist/components/field_audit/auditor.d.ts.map +1 -0
  25. package/dist/components/field_audit/auditor.js +91 -0
  26. package/dist/components/field_audit/auditor.js.map +1 -0
  27. package/dist/components/field_audit/context.d.ts +29 -0
  28. package/dist/components/field_audit/context.d.ts.map +1 -0
  29. package/dist/components/field_audit/context.js +123 -0
  30. package/dist/components/field_audit/context.js.map +1 -0
  31. package/dist/components/field_audit/field_audit_icon.d.ts +12 -0
  32. package/dist/components/field_audit/field_audit_icon.d.ts.map +1 -0
  33. package/dist/components/field_audit/field_audit_icon.js +23 -0
  34. package/dist/components/field_audit/field_audit_icon.js.map +1 -0
  35. package/dist/components/field_audit/field_audit_panel.d.ts +9 -0
  36. package/dist/components/field_audit/field_audit_panel.d.ts.map +1 -0
  37. package/dist/components/field_audit/field_audit_panel.js +54 -0
  38. package/dist/components/field_audit/field_audit_panel.js.map +1 -0
  39. package/dist/components/field_audit/index.d.ts +33 -0
  40. package/dist/components/field_audit/index.d.ts.map +1 -0
  41. package/dist/components/field_audit/index.js +29 -0
  42. package/dist/components/field_audit/index.js.map +1 -0
  43. package/dist/components/field_audit/types.d.ts +75 -0
  44. package/dist/components/field_audit/types.d.ts.map +1 -0
  45. package/dist/components/field_audit/types.js +10 -0
  46. package/dist/components/field_audit/types.js.map +1 -0
  47. package/dist/components/field_audit/with_field_audit.d.ts +32 -0
  48. package/dist/components/field_audit/with_field_audit.d.ts.map +1 -0
  49. package/dist/components/field_audit/with_field_audit.js +42 -0
  50. package/dist/components/field_audit/with_field_audit.js.map +1 -0
  51. package/dist/components/hazo_collab_form_checkbox.d.ts.map +1 -1
  52. package/dist/components/hazo_collab_form_checkbox.js +3 -1
  53. package/dist/components/hazo_collab_form_checkbox.js.map +1 -1
  54. package/dist/components/hazo_collab_form_doc.d.ts.map +1 -1
  55. package/dist/components/hazo_collab_form_doc.js +4 -1
  56. package/dist/components/hazo_collab_form_doc.js.map +1 -1
  57. package/dist/components/hazo_collab_form_radio.d.ts.map +1 -1
  58. package/dist/components/hazo_collab_form_radio.js +4 -2
  59. package/dist/components/hazo_collab_form_radio.js.map +1 -1
  60. package/dist/components/hazo_collab_form_view/context.d.ts +7 -0
  61. package/dist/components/hazo_collab_form_view/context.d.ts.map +1 -1
  62. package/dist/components/hazo_collab_form_view/context.js +46 -0
  63. package/dist/components/hazo_collab_form_view/context.js.map +1 -1
  64. package/dist/components/hazo_collab_form_view/hooks/use_view_callbacks.d.ts +8 -1
  65. package/dist/components/hazo_collab_form_view/hooks/use_view_callbacks.d.ts.map +1 -1
  66. package/dist/components/hazo_collab_form_view/hooks/use_view_callbacks.js +4 -2
  67. package/dist/components/hazo_collab_form_view/hooks/use_view_callbacks.js.map +1 -1
  68. package/dist/components/hazo_collab_form_view/index.d.ts +1 -1
  69. package/dist/components/hazo_collab_form_view/index.d.ts.map +1 -1
  70. package/dist/components/hazo_collab_form_view/index.js +59 -3
  71. package/dist/components/hazo_collab_form_view/index.js.map +1 -1
  72. package/dist/components/hazo_collab_form_view/types.d.ts +134 -0
  73. package/dist/components/hazo_collab_form_view/types.d.ts.map +1 -1
  74. package/dist/components/hazo_collab_form_view/views/approval_view.d.ts.map +1 -1
  75. package/dist/components/hazo_collab_form_view/views/approval_view.js +3 -1
  76. package/dist/components/hazo_collab_form_view/views/approval_view.js.map +1 -1
  77. package/dist/components/hazo_collab_form_view/views/edit_view.d.ts.map +1 -1
  78. package/dist/components/hazo_collab_form_view/views/edit_view.js +8 -3
  79. package/dist/components/hazo_collab_form_view/views/edit_view.js.map +1 -1
  80. package/dist/components/hazo_collab_form_view/views/print_view.d.ts.map +1 -1
  81. package/dist/components/hazo_collab_form_view/views/print_view.js +3 -1
  82. package/dist/components/hazo_collab_form_view/views/print_view.js.map +1 -1
  83. package/dist/components/hazo_collab_form_view/views/summary_view.d.ts.map +1 -1
  84. package/dist/components/hazo_collab_form_view/views/summary_view.js +4 -2
  85. package/dist/components/hazo_collab_form_view/views/summary_view.js.map +1 -1
  86. package/dist/components/hazo_data_form/group_renderer.d.ts +8 -2
  87. package/dist/components/hazo_data_form/group_renderer.d.ts.map +1 -1
  88. package/dist/components/hazo_data_form/group_renderer.js +3 -3
  89. package/dist/components/hazo_data_form/group_renderer.js.map +1 -1
  90. package/dist/components/hazo_data_form/hazo_data_form.d.ts +2 -1
  91. package/dist/components/hazo_data_form/hazo_data_form.d.ts.map +1 -1
  92. package/dist/components/hazo_data_form/hazo_data_form.js +47 -6
  93. package/dist/components/hazo_data_form/hazo_data_form.js.map +1 -1
  94. package/dist/components/hazo_data_form/section_renderer.d.ts +4 -2
  95. package/dist/components/hazo_data_form/section_renderer.d.ts.map +1 -1
  96. package/dist/components/hazo_data_form/section_renderer.js +2 -2
  97. package/dist/components/hazo_data_form/section_renderer.js.map +1 -1
  98. package/dist/components/hazo_data_form/shared/data_form_field_layout.d.ts +4 -1
  99. package/dist/components/hazo_data_form/shared/data_form_field_layout.d.ts.map +1 -1
  100. package/dist/components/hazo_data_form/shared/data_form_field_layout.js +34 -8
  101. package/dist/components/hazo_data_form/shared/data_form_field_layout.js.map +1 -1
  102. package/dist/components/hazo_data_form/types.d.ts +56 -1
  103. package/dist/components/hazo_data_form/types.d.ts.map +1 -1
  104. package/dist/components/index.d.ts +5 -5
  105. package/dist/components/index.d.ts.map +1 -1
  106. package/dist/components/index.js +4 -4
  107. package/dist/components/index.js.map +1 -1
  108. package/dist/components/shared/base_field_layout.d.ts.map +1 -1
  109. package/dist/components/shared/base_field_layout.js +5 -1
  110. package/dist/components/shared/base_field_layout.js.map +1 -1
  111. package/dist/components/shared/field_action_array_slot.d.ts +10 -0
  112. package/dist/components/shared/field_action_array_slot.d.ts.map +1 -0
  113. package/dist/components/shared/field_action_array_slot.js +33 -0
  114. package/dist/components/shared/field_action_array_slot.js.map +1 -0
  115. package/dist/components/shared/field_action_slot.d.ts +22 -0
  116. package/dist/components/shared/field_action_slot.d.ts.map +1 -0
  117. package/dist/components/shared/field_action_slot.js +20 -0
  118. package/dist/components/shared/field_action_slot.js.map +1 -0
  119. package/dist/components/shared/ihelp_icon.d.ts +1 -1
  120. package/dist/components/shared/ihelp_icon.js +1 -1
  121. package/dist/components/shared/rule_result_card.js +1 -1
  122. package/dist/components/shared/rule_result_card.js.map +1 -1
  123. package/dist/components/shared/use_field_action_slot.d.ts +37 -0
  124. package/dist/components/shared/use_field_action_slot.d.ts.map +1 -0
  125. package/dist/components/shared/use_field_action_slot.js +77 -0
  126. package/dist/components/shared/use_field_action_slot.js.map +1 -0
  127. package/dist/components/thread_form/components/key_info_drawer.d.ts +7 -1
  128. package/dist/components/thread_form/components/key_info_drawer.d.ts.map +1 -1
  129. package/dist/components/thread_form/components/key_info_drawer.js +2 -2
  130. package/dist/components/thread_form/components/key_info_drawer.js.map +1 -1
  131. package/dist/components/thread_form/components/send_back_message.d.ts +1 -1
  132. package/dist/components/thread_form/components/send_back_message.d.ts.map +1 -1
  133. package/dist/components/thread_form/hooks/use_file_pipeline.d.ts +1 -1
  134. package/dist/components/thread_form/hooks/use_file_pipeline.d.ts.map +1 -1
  135. package/dist/components/thread_form/hooks/use_file_pipeline.js +1 -1
  136. package/dist/components/thread_form/hooks/use_file_pipeline.js.map +1 -1
  137. package/dist/components/thread_form/index.d.ts +1 -1
  138. package/dist/components/thread_form/index.d.ts.map +1 -1
  139. package/dist/components/thread_form/index.js.map +1 -1
  140. package/dist/components/thread_form/thread_form.d.ts.map +1 -1
  141. package/dist/components/thread_form/thread_form.js +3 -3
  142. package/dist/components/thread_form/thread_form.js.map +1 -1
  143. package/dist/components/thread_form/types.d.ts +32 -4
  144. package/dist/components/thread_form/types.d.ts.map +1 -1
  145. package/dist/components/thread_form/types.js.map +1 -1
  146. package/dist/lib/index.d.ts +0 -2
  147. package/dist/lib/index.d.ts.map +1 -1
  148. package/dist/lib/index.js +0 -2
  149. package/dist/lib/index.js.map +1 -1
  150. package/dist/lib/resolution_handler.d.ts +1 -1
  151. package/dist/lib/resolution_handler.d.ts.map +1 -1
  152. package/dist/lib/resolve_variable.d.ts +1 -1
  153. package/dist/lib/resolve_variable.d.ts.map +1 -1
  154. package/dist/types/clarification.d.ts +1 -1
  155. package/dist/types/clarification.d.ts.map +1 -1
  156. package/dist/types/field_action.d.ts +25 -0
  157. package/dist/types/field_action.d.ts.map +1 -0
  158. package/dist/types/field_action.js +8 -0
  159. package/dist/types/field_action.js.map +1 -0
  160. package/dist/types/index.d.ts +3 -6
  161. package/dist/types/index.d.ts.map +1 -1
  162. package/dist/types/index.js +1 -3
  163. package/dist/types/index.js.map +1 -1
  164. package/dist/types/{fb_form_data.d.ts → shared_data.d.ts} +1 -3
  165. package/dist/types/shared_data.d.ts.map +1 -0
  166. package/dist/types/{fb_form_data.js → shared_data.js} +1 -2
  167. package/dist/types/shared_data.js.map +1 -0
  168. package/dist/utils/dev_file_manager.d.ts +1 -1
  169. package/dist/utils/dev_file_manager.js +1 -1
  170. package/dist/{components/hazo_fb_form/shared → utils}/format.d.ts +2 -2
  171. package/dist/utils/format.d.ts.map +1 -0
  172. package/dist/{components/hazo_fb_form/shared → utils}/format.js +1 -1
  173. package/dist/utils/format.js.map +1 -0
  174. package/dist/utils/index.d.ts +1 -9
  175. package/dist/utils/index.d.ts.map +1 -1
  176. package/dist/utils/index.js +3 -15
  177. package/dist/utils/index.js.map +1 -1
  178. package/package.json +6 -1
  179. package/dist/components/hazo_fb_form/components/backoffice_run_button.d.ts +0 -18
  180. package/dist/components/hazo_fb_form/components/backoffice_run_button.d.ts.map +0 -1
  181. package/dist/components/hazo_fb_form/components/backoffice_run_button.js +0 -23
  182. package/dist/components/hazo_fb_form/components/backoffice_run_button.js.map +0 -1
  183. package/dist/components/hazo_fb_form/components/draft_clarification_card.d.ts +0 -39
  184. package/dist/components/hazo_fb_form/components/draft_clarification_card.d.ts.map +0 -1
  185. package/dist/components/hazo_fb_form/components/draft_clarification_card.js +0 -94
  186. package/dist/components/hazo_fb_form/components/draft_clarification_card.js.map +0 -1
  187. package/dist/components/hazo_fb_form/components/fb_document_type_editor.d.ts +0 -11
  188. package/dist/components/hazo_fb_form/components/fb_document_type_editor.d.ts.map +0 -1
  189. package/dist/components/hazo_fb_form/components/fb_document_type_editor.js +0 -82
  190. package/dist/components/hazo_fb_form/components/fb_document_type_editor.js.map +0 -1
  191. package/dist/components/hazo_fb_form/components/fb_tag_editor.d.ts +0 -11
  192. package/dist/components/hazo_fb_form/components/fb_tag_editor.d.ts.map +0 -1
  193. package/dist/components/hazo_fb_form/components/fb_tag_editor.js +0 -107
  194. package/dist/components/hazo_fb_form/components/fb_tag_editor.js.map +0 -1
  195. package/dist/components/hazo_fb_form/components/front_office_stepper.d.ts +0 -15
  196. package/dist/components/hazo_fb_form/components/front_office_stepper.d.ts.map +0 -1
  197. package/dist/components/hazo_fb_form/components/front_office_stepper.js +0 -21
  198. package/dist/components/hazo_fb_form/components/front_office_stepper.js.map +0 -1
  199. package/dist/components/hazo_fb_form/components/instance_sidebar.d.ts +0 -21
  200. package/dist/components/hazo_fb_form/components/instance_sidebar.d.ts.map +0 -1
  201. package/dist/components/hazo_fb_form/components/instance_sidebar.js +0 -58
  202. package/dist/components/hazo_fb_form/components/instance_sidebar.js.map +0 -1
  203. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.d.ts +0 -15
  204. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.d.ts.map +0 -1
  205. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.js +0 -26
  206. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.js.map +0 -1
  207. package/dist/components/hazo_fb_form/components/run_button.d.ts +0 -19
  208. package/dist/components/hazo_fb_form/components/run_button.d.ts.map +0 -1
  209. package/dist/components/hazo_fb_form/components/run_button.js +0 -38
  210. package/dist/components/hazo_fb_form/components/run_button.js.map +0 -1
  211. package/dist/components/hazo_fb_form/components/run_details_dialog.d.ts +0 -17
  212. package/dist/components/hazo_fb_form/components/run_details_dialog.d.ts.map +0 -1
  213. package/dist/components/hazo_fb_form/components/run_details_dialog.js +0 -35
  214. package/dist/components/hazo_fb_form/components/run_details_dialog.js.map +0 -1
  215. package/dist/components/hazo_fb_form/components/sent_clarification_group.d.ts +0 -30
  216. package/dist/components/hazo_fb_form/components/sent_clarification_group.d.ts.map +0 -1
  217. package/dist/components/hazo_fb_form/components/sent_clarification_group.js +0 -76
  218. package/dist/components/hazo_fb_form/components/sent_clarification_group.js.map +0 -1
  219. package/dist/components/hazo_fb_form/components/tag_pill.d.ts +0 -15
  220. package/dist/components/hazo_fb_form/components/tag_pill.d.ts.map +0 -1
  221. package/dist/components/hazo_fb_form/components/tag_pill.js +0 -15
  222. package/dist/components/hazo_fb_form/components/tag_pill.js.map +0 -1
  223. package/dist/components/hazo_fb_form/context.d.ts +0 -135
  224. package/dist/components/hazo_fb_form/context.d.ts.map +0 -1
  225. package/dist/components/hazo_fb_form/context.js +0 -13
  226. package/dist/components/hazo_fb_form/context.js.map +0 -1
  227. package/dist/components/hazo_fb_form/hazo_fb_form.d.ts +0 -13
  228. package/dist/components/hazo_fb_form/hazo_fb_form.d.ts.map +0 -1
  229. package/dist/components/hazo_fb_form/hazo_fb_form.js +0 -1188
  230. package/dist/components/hazo_fb_form/hazo_fb_form.js.map +0 -1
  231. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts +0 -58
  232. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts.map +0 -1
  233. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js +0 -919
  234. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js.map +0 -1
  235. package/dist/components/hazo_fb_form/hooks/use_llm_run.d.ts +0 -52
  236. package/dist/components/hazo_fb_form/hooks/use_llm_run.d.ts.map +0 -1
  237. package/dist/components/hazo_fb_form/hooks/use_llm_run.js +0 -1863
  238. package/dist/components/hazo_fb_form/hooks/use_llm_run.js.map +0 -1
  239. package/dist/components/hazo_fb_form/index.d.ts +0 -29
  240. package/dist/components/hazo_fb_form/index.d.ts.map +0 -1
  241. package/dist/components/hazo_fb_form/index.js +0 -19
  242. package/dist/components/hazo_fb_form/index.js.map +0 -1
  243. package/dist/components/hazo_fb_form/shared/agent_stepper.d.ts +0 -9
  244. package/dist/components/hazo_fb_form/shared/agent_stepper.d.ts.map +0 -1
  245. package/dist/components/hazo_fb_form/shared/agent_stepper.js +0 -17
  246. package/dist/components/hazo_fb_form/shared/agent_stepper.js.map +0 -1
  247. package/dist/components/hazo_fb_form/shared/clarification_helpers.d.ts +0 -15
  248. package/dist/components/hazo_fb_form/shared/clarification_helpers.d.ts.map +0 -1
  249. package/dist/components/hazo_fb_form/shared/clarification_helpers.js +0 -23
  250. package/dist/components/hazo_fb_form/shared/clarification_helpers.js.map +0 -1
  251. package/dist/components/hazo_fb_form/shared/file_status_accordion.d.ts +0 -9
  252. package/dist/components/hazo_fb_form/shared/file_status_accordion.d.ts.map +0 -1
  253. package/dist/components/hazo_fb_form/shared/file_status_accordion.js +0 -39
  254. package/dist/components/hazo_fb_form/shared/file_status_accordion.js.map +0 -1
  255. package/dist/components/hazo_fb_form/shared/file_utils.d.ts +0 -9
  256. package/dist/components/hazo_fb_form/shared/file_utils.d.ts.map +0 -1
  257. package/dist/components/hazo_fb_form/shared/file_utils.js +0 -31
  258. package/dist/components/hazo_fb_form/shared/file_utils.js.map +0 -1
  259. package/dist/components/hazo_fb_form/shared/format.d.ts.map +0 -1
  260. package/dist/components/hazo_fb_form/shared/format.js.map +0 -1
  261. package/dist/components/hazo_fb_form/shared/group_debug_icon.d.ts +0 -15
  262. package/dist/components/hazo_fb_form/shared/group_debug_icon.d.ts.map +0 -1
  263. package/dist/components/hazo_fb_form/shared/group_debug_icon.js +0 -48
  264. package/dist/components/hazo_fb_form/shared/group_debug_icon.js.map +0 -1
  265. package/dist/components/hazo_fb_form/shared/index.d.ts +0 -10
  266. package/dist/components/hazo_fb_form/shared/index.d.ts.map +0 -1
  267. package/dist/components/hazo_fb_form/shared/index.js +0 -9
  268. package/dist/components/hazo_fb_form/shared/index.js.map +0 -1
  269. package/dist/components/hazo_fb_form/shared/pdf_side_panel.d.ts +0 -22
  270. package/dist/components/hazo_fb_form/shared/pdf_side_panel.d.ts.map +0 -1
  271. package/dist/components/hazo_fb_form/shared/pdf_side_panel.js +0 -10
  272. package/dist/components/hazo_fb_form/shared/pdf_side_panel.js.map +0 -1
  273. package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts +0 -44
  274. package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts.map +0 -1
  275. package/dist/components/hazo_fb_form/shared/send_back_item_card.js +0 -80
  276. package/dist/components/hazo_fb_form/shared/send_back_item_card.js.map +0 -1
  277. package/dist/components/hazo_fb_form/shared/use_pdf_viewer.d.ts +0 -28
  278. package/dist/components/hazo_fb_form/shared/use_pdf_viewer.d.ts.map +0 -1
  279. package/dist/components/hazo_fb_form/shared/use_pdf_viewer.js +0 -46
  280. package/dist/components/hazo_fb_form/shared/use_pdf_viewer.js.map +0 -1
  281. package/dist/components/hazo_fb_form/types.d.ts +0 -372
  282. package/dist/components/hazo_fb_form/types.d.ts.map +0 -1
  283. package/dist/components/hazo_fb_form/types.js +0 -5
  284. package/dist/components/hazo_fb_form/types.js.map +0 -1
  285. package/dist/components/hazo_fb_form/views/back_office_view.d.ts +0 -7
  286. package/dist/components/hazo_fb_form/views/back_office_view.d.ts.map +0 -1
  287. package/dist/components/hazo_fb_form/views/back_office_view.js +0 -425
  288. package/dist/components/hazo_fb_form/views/back_office_view.js.map +0 -1
  289. package/dist/components/hazo_fb_form/views/clarifications_view.d.ts +0 -16
  290. package/dist/components/hazo_fb_form/views/clarifications_view.d.ts.map +0 -1
  291. package/dist/components/hazo_fb_form/views/clarifications_view.js +0 -291
  292. package/dist/components/hazo_fb_form/views/clarifications_view.js.map +0 -1
  293. package/dist/components/hazo_fb_form/views/client_data_view.d.ts +0 -6
  294. package/dist/components/hazo_fb_form/views/client_data_view.d.ts.map +0 -1
  295. package/dist/components/hazo_fb_form/views/client_data_view.js +0 -39
  296. package/dist/components/hazo_fb_form/views/client_data_view.js.map +0 -1
  297. package/dist/components/hazo_fb_form/views/front_office_view.d.ts +0 -6
  298. package/dist/components/hazo_fb_form/views/front_office_view.d.ts.map +0 -1
  299. package/dist/components/hazo_fb_form/views/front_office_view.js +0 -1351
  300. package/dist/components/hazo_fb_form/views/front_office_view.js.map +0 -1
  301. package/dist/components/hazo_fb_form/views/interim_view.d.ts +0 -8
  302. package/dist/components/hazo_fb_form/views/interim_view.d.ts.map +0 -1
  303. package/dist/components/hazo_fb_form/views/interim_view.js +0 -535
  304. package/dist/components/hazo_fb_form/views/interim_view.js.map +0 -1
  305. package/dist/components/hazo_fb_form/views/review_queue_view.d.ts +0 -14
  306. package/dist/components/hazo_fb_form/views/review_queue_view.d.ts.map +0 -1
  307. package/dist/components/hazo_fb_form/views/review_queue_view.js +0 -230
  308. package/dist/components/hazo_fb_form/views/review_queue_view.js.map +0 -1
  309. package/dist/components/hazo_fb_form/views/send_back_view.d.ts +0 -13
  310. package/dist/components/hazo_fb_form/views/send_back_view.d.ts.map +0 -1
  311. package/dist/components/hazo_fb_form/views/send_back_view.js +0 -258
  312. package/dist/components/hazo_fb_form/views/send_back_view.js.map +0 -1
  313. package/dist/components/hazo_fb_form/views/summary_review_view.d.ts +0 -17
  314. package/dist/components/hazo_fb_form/views/summary_review_view.d.ts.map +0 -1
  315. package/dist/components/hazo_fb_form/views/summary_review_view.js +0 -258
  316. package/dist/components/hazo_fb_form/views/summary_review_view.js.map +0 -1
  317. package/dist/components/shared/json_data_panel/index.d.ts +0 -3
  318. package/dist/components/shared/json_data_panel/index.d.ts.map +0 -1
  319. package/dist/components/shared/json_data_panel/index.js +0 -2
  320. package/dist/components/shared/json_data_panel/index.js.map +0 -1
  321. package/dist/components/shared/json_data_panel/json_data_panel.d.ts +0 -28
  322. package/dist/components/shared/json_data_panel/json_data_panel.d.ts.map +0 -1
  323. package/dist/components/shared/json_data_panel/json_data_panel.js +0 -156
  324. package/dist/components/shared/json_data_panel/json_data_panel.js.map +0 -1
  325. package/dist/lib/fb_form_handler.d.ts +0 -63
  326. package/dist/lib/fb_form_handler.d.ts.map +0 -1
  327. package/dist/lib/fb_form_handler.js +0 -425
  328. package/dist/lib/fb_form_handler.js.map +0 -1
  329. package/dist/types/fb_form_data.d.ts.map +0 -1
  330. package/dist/types/fb_form_data.js.map +0 -1
  331. package/dist/types/fb_form_data_v1.d.ts +0 -250
  332. package/dist/types/fb_form_data_v1.d.ts.map +0 -1
  333. package/dist/types/fb_form_data_v1.js +0 -117
  334. package/dist/types/fb_form_data_v1.js.map +0 -1
  335. package/dist/types/fb_form_instance.d.ts +0 -49
  336. package/dist/types/fb_form_instance.d.ts.map +0 -1
  337. package/dist/types/fb_form_instance.js +0 -10
  338. package/dist/types/fb_form_instance.js.map +0 -1
  339. package/dist/utils/fb_data_adapter.d.ts +0 -33
  340. package/dist/utils/fb_data_adapter.d.ts.map +0 -1
  341. package/dist/utils/fb_data_adapter.js +0 -436
  342. package/dist/utils/fb_data_adapter.js.map +0 -1
  343. package/dist/utils/fb_data_adapter_v2.d.ts +0 -17
  344. package/dist/utils/fb_data_adapter_v2.d.ts.map +0 -1
  345. package/dist/utils/fb_data_adapter_v2.js +0 -483
  346. package/dist/utils/fb_data_adapter_v2.js.map +0 -1
  347. package/dist/utils/fb_data_helpers.d.ts +0 -86
  348. package/dist/utils/fb_data_helpers.d.ts.map +0 -1
  349. package/dist/utils/fb_data_helpers.js +0 -269
  350. package/dist/utils/fb_data_helpers.js.map +0 -1
  351. package/dist/utils/fb_data_mutations.d.ts +0 -43
  352. package/dist/utils/fb_data_mutations.d.ts.map +0 -1
  353. package/dist/utils/fb_data_mutations.js +0 -379
  354. package/dist/utils/fb_data_mutations.js.map +0 -1
  355. package/dist/utils/fb_data_mutations_v2.d.ts +0 -46
  356. package/dist/utils/fb_data_mutations_v2.d.ts.map +0 -1
  357. package/dist/utils/fb_data_mutations_v2.js +0 -341
  358. package/dist/utils/fb_data_mutations_v2.js.map +0 -1
  359. package/dist/utils/fb_data_queries.d.ts +0 -81
  360. package/dist/utils/fb_data_queries.d.ts.map +0 -1
  361. package/dist/utils/fb_data_queries.js +0 -354
  362. package/dist/utils/fb_data_queries.js.map +0 -1
@@ -1,10 +0,0 @@
1
- /**
2
- * Shared PDF side panel component used by front_office, back_office, and clarifications views.
3
- */
4
- 'use client';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
- import { cn } from '../../../utils/cn.js';
7
- export function PdfSidePanel({ file_name, file_url, mime_type, PdfViewer, on_close, panel_class_name, panel_width = 'w-[480px]', }) {
8
- return (_jsxs("div", { className: cn(panel_width, 'flex-shrink-0 max-w-[50vw] h-[calc(100vh-200px)] sticky top-0 border rounded-md bg-background flex flex-col overflow-hidden', panel_class_name), children: [_jsxs("div", { className: "flex items-center justify-between px-3 py-2 border-b bg-muted/50 shrink-0", children: [_jsx("span", { className: "text-sm font-medium truncate flex-1 mr-2", title: file_name, children: file_name }), _jsx("button", { type: "button", onClick: on_close, className: "h-7 w-7 inline-flex items-center justify-center rounded-sm text-muted-foreground hover:text-foreground hover:bg-muted transition-colors", title: "Close panel", children: "\u00D7" })] }), _jsx("div", { className: "flex-1 min-h-0", children: !file_url ? (_jsx("div", { className: "flex items-center justify-center h-full text-sm text-muted-foreground p-4", children: "Unable to resolve file URL. The file may need to be re-uploaded." })) : PdfViewer ? (_jsx(PdfViewer, { url: file_url, display_filename: file_name, fit_to_width: true, enable_popout: true, className: "h-full" })) : (_jsx("div", { className: "flex items-center justify-center h-full text-sm text-muted-foreground p-4", children: (!mime_type || mime_type === 'application/pdf') ? ('hazo_pdf is not installed. Install it to preview PDFs.') : (_jsxs("a", { href: file_url, target: "_blank", rel: "noopener noreferrer", className: "text-primary hover:underline", children: ["Download ", file_name] })) })) })] }));
9
- }
10
- //# sourceMappingURL=pdf_side_panel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pdf_side_panel.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/shared/pdf_side_panel.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAmB1C,MAAM,UAAU,YAAY,CAAC,EAC3B,SAAS,EACT,QAAQ,EACR,SAAS,EACT,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAW,GAAG,WAAW,GACP;IAClB,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAChB,WAAW,EACX,6HAA6H,EAC7H,gBAAgB,CACjB,aAEC,eAAK,SAAS,EAAC,2EAA2E,aACxF,eAAM,SAAS,EAAC,0CAA0C,EAAC,KAAK,EAAE,SAAS,YACxE,SAAS,GACL,EACP,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,yIAAyI,EACnJ,KAAK,EAAC,aAAa,uBAGZ,IACL,EAEN,cAAK,SAAS,EAAC,gBAAgB,YAC5B,CAAC,QAAQ,CAAC,CAAC,CAAC,CACX,cAAK,SAAS,EAAC,2EAA2E,iFAEpF,CACP,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACd,KAAC,SAAS,IACR,GAAG,EAAE,QAAQ,EACb,gBAAgB,EAAE,SAAS,EAC3B,YAAY,EAAE,IAAI,EAClB,aAAa,EAAE,IAAI,EACnB,SAAS,EAAC,QAAQ,GAClB,CACH,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,2EAA2E,YACvF,CAAC,CAAC,SAAS,IAAI,SAAS,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CACjD,wDAAwD,CACzD,CAAC,CAAC,CAAC,CACF,aACE,IAAI,EAAE,QAAQ,EACd,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,8BAA8B,0BAE9B,SAAS,IACjB,CACL,GACG,CACP,GACG,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,44 +0,0 @@
1
- /**
2
- * SendBackItemCard — Shared card component for displaying a send-back item.
3
- * Used in both ReviewQueueView (Step 1) and SendBackView (Step 3).
4
- *
5
- * Layout: FileBar → Original Issue → Client Response → Your Feedback → Response Options
6
- */
7
- import type { ReviewQueueItem } from '../types.js';
8
- export interface SendBackItemCardProps {
9
- item: ReviewQueueItem;
10
- /** Current feedback text */
11
- feedback: string;
12
- /** Callback when feedback changes */
13
- on_feedback_change: (value: string) => void;
14
- /** Whether the card is read-only (actioned state) */
15
- read_only?: boolean;
16
- /** Show remove button */
17
- on_remove?: () => void;
18
- /** Show response options preview */
19
- show_response_options?: boolean;
20
- /** All available response types for the tag picker */
21
- available_response_types?: Array<{
22
- response_id: string;
23
- label: string;
24
- }>;
25
- /** Callback when selected response options change */
26
- on_response_options_change?: (option_ids: string[]) => void;
27
- /** Callback when file view is clicked */
28
- on_view_file?: () => void;
29
- /** Whether a file manager is available (enables view button on FileBar) */
30
- has_file_manager?: boolean;
31
- /** Hide the feedback textarea (used when item is not in send-back mode yet) */
32
- hide_feedback?: boolean;
33
- /** Submit callback — renders a "Submit Response" button at the bottom of the card */
34
- on_submit?: () => void;
35
- /** Whether the item has been submitted (shows confirmation instead of button) */
36
- submitted?: boolean;
37
- /** Whether the submit button should be disabled (e.g., feedback required) */
38
- submit_disabled?: boolean;
39
- }
40
- export declare function SendBackItemCard({ item, feedback, on_feedback_change, read_only, on_remove, show_response_options, available_response_types, on_response_options_change, on_view_file, has_file_manager, hide_feedback, on_submit, submitted, submit_disabled, }: SendBackItemCardProps): import("react/jsx-runtime").JSX.Element;
41
- export declare namespace SendBackItemCard {
42
- var displayName: string;
43
- }
44
- //# sourceMappingURL=send_back_item_card.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"send_back_item_card.d.ts","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/shared/send_back_item_card.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,eAAe,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oCAAoC;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sDAAsD;IACtD,wBAAwB,CAAC,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,qDAAqD;IACrD,0BAA0B,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5D,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+EAA+E;IAC/E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,SAAS,EACT,eAAe,GAChB,EAAE,qBAAqB,2CA8SvB;yBA7Te,gBAAgB"}
@@ -1,80 +0,0 @@
1
- /**
2
- * SendBackItemCard — Shared card component for displaying a send-back item.
3
- * Used in both ReviewQueueView (Step 1) and SendBackView (Step 3).
4
- *
5
- * Layout: FileBar → Original Issue → Client Response → Your Feedback → Response Options
6
- */
7
- 'use client';
8
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
- import React from 'react';
10
- import { cn } from '../../../utils/cn.js';
11
- import { FileBar } from '../../shared/file_bar/index.js';
12
- import { ClarificationThread } from '../../clarification/clarification_thread.js';
13
- import { ResolutionStatusStrip } from '../../clarification/resolution_status_strip.js';
14
- export function SendBackItemCard({ item, feedback, on_feedback_change, read_only, on_remove, show_response_options, available_response_types, on_response_options_change, on_view_file, has_file_manager, hide_feedback, on_submit, submitted, submit_disabled, }) {
15
- const [search, set_search] = React.useState('');
16
- const [picker_open, set_picker_open] = React.useState(false);
17
- const picker_ref = React.useRef(null);
18
- // Close picker on outside click
19
- React.useEffect(() => {
20
- if (!picker_open)
21
- return;
22
- const handler = (e) => {
23
- if (picker_ref.current && !picker_ref.current.contains(e.target))
24
- set_picker_open(false);
25
- };
26
- document.addEventListener('mousedown', handler);
27
- return () => document.removeEventListener('mousedown', handler);
28
- }, [picker_open]);
29
- // Use response options directly from item data (persisted via parent callback)
30
- const response_options = item.clarification?.response_options ?? [];
31
- // Notify parent of option changes — parent persists to data model
32
- const update_options = React.useCallback((next_ids) => {
33
- on_response_options_change?.(next_ids);
34
- }, [on_response_options_change]);
35
- const has_client_response = !!(item.clarification?.response_choice || item.clarification?.user_comment);
36
- const clr = item.clarification;
37
- // Look up human-readable label for the response choice
38
- const response_choice_label = clr?.response_choice
39
- ? response_options.find(opt => opt.value === clr.response_choice)?.label ?? clr.response_choice
40
- : undefined;
41
- // Format status for display
42
- const status_label = clr?.status ? clr.status.toUpperCase() : undefined;
43
- // Validation type from rule_name (e.g., "DATE CHECK")
44
- const validation_type = clr?.rule_name;
45
- return (_jsxs("div", { className: "space-y-3", children: [(status_label || validation_type) && (_jsxs("div", { className: "flex items-center gap-2 text-xs", children: [status_label && (_jsxs("span", { className: cn('inline-flex items-center gap-1 font-semibold uppercase tracking-wide', clr?.status === 'responded' ? 'text-green-600' :
46
- clr?.status === 'resolved' ? 'text-blue-600' :
47
- clr?.status === 'dismissed' ? 'text-muted-foreground' :
48
- 'text-amber-600'), children: [clr?.status === 'responded' && _jsx("span", { className: "inline-block w-2 h-2 rounded-full bg-green-500" }), clr?.status === 'resolved' && _jsx("span", { className: "inline-block w-2 h-2 rounded-full bg-blue-500" }), clr?.status === 'pending' && _jsx("span", { className: "inline-block w-2 h-2 rounded-full bg-amber-500" }), "ISSUE (", status_label, ")"] })), status_label && validation_type && (_jsx("span", { className: "text-muted-foreground", children: "\u00B7" })), validation_type && (_jsx("span", { className: "font-medium text-muted-foreground uppercase tracking-wide", children: validation_type }))] })), on_remove && (_jsx("div", { className: "flex justify-end", children: _jsx("button", { type: "button", onClick: on_remove, className: "flex-shrink-0 px-2.5 py-1 rounded-md text-xs font-medium text-muted-foreground bg-white border border-border hover:bg-red-100 hover:text-red-700 hover:border-red-300 transition-colors", title: "Remove \u2014 revert to Accept", children: "Remove" }) })), item.resolution_check && (_jsx(ResolutionStatusStrip, { check: item.resolution_check, read_only: true })), clr?.thread && clr.thread.length > 0 ? (_jsx(ClarificationThread, { thread: clr.thread, response_options: response_options, on_file_view: has_file_manager && on_view_file ? (file_id, file_name) => on_view_file() : undefined })) : (_jsxs(_Fragment, { children: [_jsx("div", { className: "flex items-start gap-2", children: _jsx("div", { className: "flex-1 min-w-0", children: item.source === 'file' && item.clarification?.doc_references?.[0] ? (() => {
49
- const ref = item.clarification.doc_references[0];
50
- return (_jsx(FileBar, { attachment: {
51
- file_id: ref.file_id,
52
- ref_id: ref.file_id,
53
- file_name: ref.file_name,
54
- file_size: ref.file_size ?? 0,
55
- mime_type: ref.mime_type,
56
- visibility: 'public',
57
- attached_at: '',
58
- }, on_view: has_file_manager && on_view_file ? () => on_view_file() : undefined, max_width: "max-w-full" }));
59
- })() : (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "text-base", children: "\u270F\uFE0F" }), _jsx("span", { className: "text-sm font-semibold truncate", children: item.source_label }), _jsx("span", { className: "text-xs text-muted-foreground bg-muted/60 px-1.5 py-0.5 rounded", children: "Text" })] })) }) }), _jsxs("div", { className: "space-y-1", children: [_jsx("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wide", children: "Original Issue" }), _jsx("p", { className: "text-sm text-foreground", children: item.issue })] }), has_client_response && (_jsxs("div", { className: "space-y-1", children: [_jsx("p", { className: "text-xs font-medium text-blue-600 uppercase tracking-wide", children: "Client Response" }), _jsxs("div", { className: "px-3 py-2 rounded-md bg-blue-50 border border-blue-200 text-sm text-blue-900", children: [response_choice_label && (_jsxs("p", { className: "font-medium mb-0.5", children: ["Selected: ", response_choice_label] })), clr?.user_comment && (_jsx("p", { className: response_choice_label ? 'mt-0.5' : '', children: clr.user_comment }))] })] }))] })), !hide_feedback && _jsxs("div", { className: "space-y-1", children: [_jsxs("label", { htmlFor: `feedback_${item.id}`, className: "text-xs font-medium text-amber-700 uppercase tracking-wide", children: ["Your Feedback to Client ", _jsx("span", { className: "text-red-500", children: "*" })] }), read_only ? (_jsx("p", { className: "text-sm text-foreground px-3 py-2 rounded-md bg-amber-50 border border-amber-200", children: feedback || _jsx("span", { className: "text-muted-foreground italic", children: "No feedback provided" }) })) : (_jsx("textarea", { id: `feedback_${item.id}`, value: feedback, onChange: e => on_feedback_change(e.target.value), rows: 2, className: cn('w-full px-3 py-2 rounded-md border bg-white text-sm', 'focus:outline-none focus:ring-2 focus:ring-amber-300 focus:border-amber-400', 'resize-y min-h-[48px]', !feedback.trim() ? 'border-amber-300' : 'border-border'), placeholder: "Explain what's wrong and what the client should do..." }))] }), show_response_options && (_jsxs("div", { className: "space-y-1.5", children: [_jsx("p", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wide", children: "Client Response Options" }), on_response_options_change && available_response_types && !read_only ? (_jsxs("div", { ref: picker_ref, className: "relative", children: [_jsxs("div", { className: cn('flex flex-wrap gap-1.5 min-h-[36px] p-1.5 border rounded-lg bg-white cursor-text', picker_open && 'ring-2 ring-primary/20 border-primary/40'), onClick: () => set_picker_open(true), children: [response_options.map(opt => (_jsxs("span", { className: "inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-blue-100 text-blue-800 text-xs font-medium", children: [opt.label, _jsx("button", { type: "button", onClick: (e) => {
60
- e.stopPropagation();
61
- update_options(response_options.filter(o => o.value !== opt.value).map(o => o.value));
62
- }, className: "text-blue-500 hover:text-blue-800 ml-0.5", children: "\u00D7" })] }, opt.value))), _jsx("input", { type: "text", value: search, onChange: e => { set_search(e.target.value); set_picker_open(true); }, onFocus: () => set_picker_open(true), placeholder: response_options.length === 0 ? 'Add response types...' : '', className: "flex-1 min-w-[80px] text-xs outline-none bg-transparent px-1 py-0.5" }), _jsx("button", { type: "button", onClick: (e) => {
63
- e.stopPropagation();
64
- set_picker_open(prev => !prev);
65
- }, className: "flex-shrink-0 p-0.5 rounded text-muted-foreground hover:text-primary hover:bg-primary/10 transition-colors", title: "Add response option", children: _jsx("svg", { className: "w-4 h-4", viewBox: "0 0 20 20", fill: "currentColor", children: _jsx("path", { fillRule: "evenodd", d: "M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z", clipRule: "evenodd" }) }) })] }), picker_open && (() => {
66
- const selected_ids = new Set(response_options.map(o => o.value));
67
- const selected_labels = new Set(response_options.map(o => o.label.toLowerCase()));
68
- const filtered = available_response_types.filter(rt => !selected_ids.has(rt.response_id)
69
- && !selected_labels.has(rt.label.toLowerCase())
70
- && rt.label.toLowerCase().includes(search.toLowerCase()));
71
- return (_jsx("div", { className: "absolute z-[9999] mt-1 w-full max-h-40 overflow-y-auto rounded-lg border bg-white shadow-lg", children: filtered.length > 0 ? filtered.map(rt => (_jsx("button", { type: "button", onClick: () => {
72
- update_options([...response_options.map(o => o.value), rt.response_id]);
73
- set_search('');
74
- }, className: "w-full text-left px-3 py-1.5 text-xs hover:bg-blue-50 transition-colors", children: rt.label }, rt.response_id))) : (_jsx("p", { className: "px-3 py-2 text-xs text-muted-foreground italic", children: "All options added" })) }));
75
- })()] })) : response_options.length > 0 ? (_jsx("div", { className: "flex flex-wrap gap-1.5", children: response_options.map(opt => (_jsx("span", { className: "inline-flex items-center px-2.5 py-1 rounded-full text-xs font-medium bg-white border border-border text-foreground", title: opt.description, children: opt.label }, opt.value))) })) : null] })), on_submit && (_jsx("div", { className: "flex justify-end pt-2", children: submitted ? (_jsx("span", { className: "inline-flex items-center gap-1.5 text-sm font-medium text-green-600", children: "\u2713 Response submitted" })) : (_jsx("button", { type: "button", onClick: on_submit, disabled: submit_disabled, className: cn('px-4 py-2 rounded-md text-sm font-medium transition-colors', !submit_disabled
76
- ? 'bg-blue-600 text-white hover:bg-blue-700 shadow-sm'
77
- : 'bg-muted text-muted-foreground cursor-not-allowed'), children: "Submit Response" })) }))] }));
78
- }
79
- SendBackItemCard.displayName = 'SendBackItemCard';
80
- //# sourceMappingURL=send_back_item_card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"send_back_item_card.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/shared/send_back_item_card.tsx"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- /**
2
- * Shared hook for lazy-loading PdfViewer from hazo_pdf.
3
- * Deduplicates the identical pattern used across front_office, back_office, and clarifications views.
4
- */
5
- import type { FormFileAttachment } from '../../../types/file_attachment.js';
6
- import type { FileManagerConfig } from '../../../types/file_manager.js';
7
- interface UsePdfViewerOptions {
8
- file_manager?: FileManagerConfig;
9
- /** Externally provided PdfViewer component — bypasses dynamic import */
10
- pdf_viewer?: React.ComponentType<any>;
11
- }
12
- interface UsePdfViewerReturn {
13
- /** Lazily loaded PdfViewer component (null if hazo_pdf not installed) */
14
- PdfViewerComponent: React.ComponentType<any> | null;
15
- /** Currently viewed file (null if none) */
16
- viewed_file: FormFileAttachment | null;
17
- /** Set the viewed file (toggle off if same file_id) */
18
- set_viewed_file: React.Dispatch<React.SetStateAction<FormFileAttachment | null>>;
19
- /** Toggle file view — if same file, close panel; otherwise open */
20
- toggle_file_view: (file: FormFileAttachment) => void;
21
- /** Resolved download URL for the viewed file (null if unavailable) */
22
- viewed_file_url: string | null;
23
- /** Close the PDF panel */
24
- close_panel: () => void;
25
- }
26
- export declare function use_pdf_viewer({ file_manager, pdf_viewer }?: UsePdfViewerOptions): UsePdfViewerReturn;
27
- export {};
28
- //# sourceMappingURL=use_pdf_viewer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use_pdf_viewer.d.ts","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/shared/use_pdf_viewer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGxE,UAAU,mBAAmB;IAC3B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,wEAAwE;IACxE,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CACvC;AAED,UAAU,kBAAkB;IAC1B,yEAAyE;IACzE,kBAAkB,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,2CAA2C;IAC3C,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACvC,uDAAuD;IACvD,eAAe,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,CAAC;IACjF,mEAAmE;IACnE,gBAAgB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACrD,sEAAsE;IACtE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,wBAAgB,cAAc,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,GAAE,mBAAwB,GAAG,kBAAkB,CAwCzG"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Shared hook for lazy-loading PdfViewer from hazo_pdf.
3
- * Deduplicates the identical pattern used across front_office, back_office, and clarifications views.
4
- */
5
- 'use client';
6
- import { useState, useEffect, useMemo, useCallback } from 'react';
7
- import { optional_import } from '../../../utils/optional_import.js';
8
- export function use_pdf_viewer({ file_manager, pdf_viewer } = {}) {
9
- const [PdfViewerComponent, set_pdf_viewer] = useState(pdf_viewer ?? null);
10
- const [viewed_file, set_viewed_file] = useState(null);
11
- // Use externally provided PdfViewer if available, otherwise lazy-load from hazo_pdf
12
- useEffect(() => {
13
- if (pdf_viewer) {
14
- set_pdf_viewer(() => pdf_viewer);
15
- return;
16
- }
17
- let cancelled = false;
18
- optional_import('hazo_pdf')
19
- .then((mod) => {
20
- if (!cancelled && mod.PdfViewer)
21
- set_pdf_viewer(() => mod.PdfViewer);
22
- })
23
- .catch(() => { });
24
- return () => { cancelled = true; };
25
- }, [pdf_viewer]);
26
- const toggle_file_view = useCallback((file) => {
27
- set_viewed_file((prev) => prev?.file_id === file.file_id ? null : file);
28
- }, []);
29
- const close_panel = useCallback(() => {
30
- set_viewed_file(null);
31
- }, []);
32
- const viewed_file_url = useMemo(() => {
33
- if (!viewed_file || !file_manager?.callbacks?.get_download_url)
34
- return null;
35
- return file_manager.callbacks.get_download_url(viewed_file.file_id, viewed_file.visibility);
36
- }, [viewed_file, file_manager]);
37
- return {
38
- PdfViewerComponent,
39
- viewed_file,
40
- set_viewed_file,
41
- toggle_file_view,
42
- viewed_file_url,
43
- close_panel,
44
- };
45
- }
46
- //# sourceMappingURL=use_pdf_viewer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use_pdf_viewer.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/shared/use_pdf_viewer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGlE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAuBpE,MAAM,UAAU,cAAc,CAAC,EAAE,YAAY,EAAE,UAAU,KAA0B,EAAE;IACnF,MAAM,CAAC,kBAAkB,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAkC,UAAU,IAAI,IAAI,CAAC,CAAC;IAC3G,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,QAAQ,CAA4B,IAAI,CAAC,CAAC;IAEjF,oFAAoF;IACpF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,UAAU,EAAE,CAAC;YACf,cAAc,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QACD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,eAAe,CAAC,UAAU,CAAC;aACxB,IAAI,CAAC,CAAC,GAAQ,EAAE,EAAE;YACjB,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS;gBAAE,cAAc,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAAgC,CAAC,CAAC,CAAC;QACjD,OAAO,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,IAAwB,EAAE,EAAE;QAChE,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,gBAAgB;YAAE,OAAO,IAAI,CAAC;QAC5E,OAAO,YAAY,CAAC,SAAS,CAAC,gBAAgB,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9F,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhC,OAAO;QACL,kBAAkB;QAClB,WAAW;QACX,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,WAAW;KACZ,CAAC;AACJ,CAAC"}
@@ -1,372 +0,0 @@
1
- /**
2
- * Type definitions for HazoFbForm - Front/Back office form component.
3
- */
4
- import type React from 'react';
5
- import type { ViewSection } from '../hazo_collab_form_view/types.js';
6
- import type { FbResponseType, FbResponseSet } from '../../types/fb_response_types.js';
7
- import type { FileManagerConfig } from '../../types/file_manager.js';
8
- import type { NewFieldDefinition } from '../hazo_add_field_dialog/types.js';
9
- import type { ClarificationItem } from '../../types/clarification.js';
10
- import type { ValidationRule, ValidationRuleResult } from '../../types/validation.js';
11
- import type { FbDataEntry } from '../../types/fb_form_data_v1.js';
12
- /** Tab identifiers for HazoFbForm. 'agent_stepper' activates the guided workflow. */
13
- export type FbTabId = 'front' | 'client_data' | 'back' | 'clarifications' | 'agent_stepper';
14
- /** Agent workflow step identifiers */
15
- export type AgentStepId = 'review' | 'tax_data' | 'send_back';
16
- /** Step visibility configuration (computed from instance state) */
17
- export interface AgentStepConfig {
18
- id: AgentStepId;
19
- label: string;
20
- /** Number of pending items for badge display */
21
- badge_count: number;
22
- /** Whether the step is actionable (vs skipped) */
23
- enabled: boolean;
24
- /** Whether the step has been completed */
25
- completed: boolean;
26
- }
27
- /** Review decision made for a single item in the review queue */
28
- export interface ReviewQueueItem {
29
- /** Clarification ID or validation result ID */
30
- id: string;
31
- /** Tax category this item belongs to (tag_id from classification) */
32
- category: string;
33
- /** Display label for the category */
34
- category_label: string;
35
- /** Source type */
36
- source: 'file' | 'text';
37
- /** Source identifier (file name or text excerpt) */
38
- source_label: string;
39
- /** Issue description */
40
- issue: string;
41
- /** Client's response (if any) */
42
- client_response?: string;
43
- /** The underlying clarification item */
44
- clarification: ClarificationItem;
45
- /** Agent's decision */
46
- decision?: 'accept' | 'send_back';
47
- /** Agent's comment when sending back (explains why) */
48
- send_back_comment?: string;
49
- /** Latest aggregate resolver verdict for this item's response (sum_match, etc.). Surfaced read-only in the agent's review view. */
50
- resolution_check?: import('../../types/fb_form_data.js').ResolutionCheck;
51
- }
52
- /** Data passed to the submit callback */
53
- export interface FbFormSubmitData {
54
- front_form_data: Record<string, unknown>;
55
- back_form_data: Record<string, unknown>;
56
- classification_results: FbClassificationResult[];
57
- clarifications: ClarificationItem[];
58
- instance_id?: string;
59
- }
60
- import type { IconsBehaviour } from '../../types/icons_behaviour.js';
61
- import type { FbFormInstance } from '../../types/fb_form_instance.js';
62
- /** Document type definition for classification */
63
- export interface FbDocumentType {
64
- type_id: string;
65
- type_label: string;
66
- description?: string;
67
- /**
68
- * Optional per-doctype field hints. When set, the classification prompt
69
- * lists these for the LLM to populate, and the inline renderer in the
70
- * Collected Data tab uses the type/label hints for formatting.
71
- * See ExpectedField in src/components/thread_form/types.ts.
72
- */
73
- expected_fields?: import('../thread_form/types.js').ExpectedField[];
74
- }
75
- /** Tag definition for classification */
76
- export interface FbTag {
77
- tag_id: string;
78
- tag_label: string;
79
- color?: string;
80
- /** Description to provide context for classification (included in LLM prompt) */
81
- description?: string;
82
- }
83
- /** Classification config for a front-office field */
84
- export interface FbFieldClassification {
85
- prompt_area: string;
86
- prompt_key: string;
87
- /** Per-field tags (optional — overrides top-level available_tags if set) */
88
- available_tags?: FbTag[];
89
- }
90
- /** Full config for a front-office file_textbox field */
91
- export interface FbFieldTextboxConfig {
92
- classification: FbFieldClassification;
93
- }
94
- /** Per-file classification result including metadata */
95
- export interface FbFileClassification {
96
- file_id: string;
97
- file_name: string;
98
- tags: string[];
99
- /** Per-tag reason for classification (keyed by tag_id) */
100
- tag_reasons?: Record<string, string>;
101
- /** Document date extracted by LLM (e.g. "2025-06", "FY2024-25") */
102
- document_date?: string;
103
- /** Document nature/type extracted by LLM (e.g. "payslip", "bank statement") */
104
- document_nature?: string;
105
- /** Document type(s) extracted by LLM (e.g. ["payg_summary", "bank_statement"]) */
106
- document_type?: string[];
107
- /** Reason the file could not be classified (when tags is empty) */
108
- unclassified_reason?: string;
109
- }
110
- /** Result of classification for a single field (per-file) */
111
- export interface FbClassificationResult {
112
- field_id: string;
113
- /** Aggregated tags across all files (union) */
114
- tags: string[];
115
- /** Per-file classification breakdown */
116
- file_classifications: FbFileClassification[];
117
- }
118
- /** Run mode for the LLM pipeline */
119
- export type FbRunMode = 'new_only' | 'all';
120
- /** An unassigned file that didn't match any back-office group tag_id */
121
- export interface FbUnassignedFile {
122
- file_id: string;
123
- file_name: string;
124
- tags: string[];
125
- document_date?: string;
126
- document_nature?: string;
127
- /** Which front-office field this file came from */
128
- source_field_id: string;
129
- }
130
- /** Validation status for a file */
131
- export type FbFileValidationStatus = 'pending' | 'validating' | 'passed' | 'failed' | 'skipped' | 'manual_review';
132
- /** Validation result for a single file */
133
- export interface FbFileValidationResult {
134
- file_id: string;
135
- file_name: string;
136
- status: FbFileValidationStatus;
137
- errors: ClarificationItem[];
138
- document_types: string[];
139
- rule_results?: ValidationRuleResult[];
140
- /** Reason text when the file could not be validated (e.g., unsupported format) */
141
- failure_reason?: string;
142
- }
143
- /** Overall run result */
144
- export interface FbRunResult {
145
- classifications: FbClassificationResult[];
146
- unassigned_files: FbUnassignedFile[];
147
- validation_results: FbFileValidationResult[];
148
- errors: Array<{
149
- step: string;
150
- error: string;
151
- }>;
152
- }
153
- /** Per-field autofill detail (which field, what value, from which file) */
154
- export interface FbAutofillDetail {
155
- field_id: string;
156
- field_label: string;
157
- file_name: string;
158
- value_summary: string;
159
- }
160
- /** Per-group autofill log entry */
161
- export interface FbGroupAutofillLog {
162
- status: 'success' | 'error' | 'empty';
163
- message: string;
164
- timestamp: number;
165
- details?: FbAutofillDetail[];
166
- /** API call log entries for this group (prompt/response debugging) */
167
- run_log?: FbRunLogEntry[];
168
- }
169
- /** A single API call log entry capturing request/response */
170
- export interface FbRunLogEntry {
171
- step: 'classify' | 'classify_text' | 'validate' | 'autofill';
172
- label: string;
173
- prompt_area?: string;
174
- prompt_key?: string;
175
- request: Record<string, unknown>;
176
- response: Record<string, unknown>;
177
- timestamp: number;
178
- duration_ms: number;
179
- }
180
- /** Run progress state */
181
- export interface FbRunProgress {
182
- status: 'idle' | 'classifying' | 'validating' | 'validated' | 'routing' | 'done' | 'error';
183
- current_step?: string;
184
- total_steps: number;
185
- completed_steps: number;
186
- /** Overall percentage (0-100) across all pipeline actions */
187
- overall_percent?: number;
188
- error?: string;
189
- /** Detailed error list from the last run */
190
- error_details?: Array<{
191
- step: string;
192
- error: string;
193
- }>;
194
- /** API call log from the last run */
195
- run_log?: FbRunLogEntry[];
196
- }
197
- /** User role in the FB form (author=agent, responder=client) */
198
- export type FbUserRole = 'author' | 'responder';
199
- /** Props for HazoFbForm */
200
- export interface HazoFbFormProps {
201
- /** Front-office sections (client-facing questions) — used when instances is not provided */
202
- front_sections: ViewSection[];
203
- /** Back-office sections (detailed form) — groups should have tag_id for file routing */
204
- back_sections: ViewSection[];
205
- /** Front-office form data — used when instances is not provided */
206
- front_form_data: Record<string, unknown>;
207
- /** Back-office form data — used when instances is not provided */
208
- back_form_data: Record<string, unknown>;
209
- /** Front-office field change callback */
210
- on_front_change?: (field_id: string, value: unknown) => void;
211
- /** Back-office field change callback */
212
- on_back_change?: (field_id: string, value: unknown) => void;
213
- /** Role-based icon control configuration */
214
- icons_behaviour?: IconsBehaviour;
215
- /** Active role ID (must match a role in icons_behaviour.roles) */
216
- active_role?: string;
217
- /** User role: author=agent, responder=client */
218
- user_role?: FbUserRole;
219
- /** Current user info */
220
- current_user?: {
221
- id?: string;
222
- name: string;
223
- email: string;
224
- };
225
- /** Array of form instances (when provided, enables multi-instance mode with sidebar) */
226
- instances?: FbFormInstance[];
227
- /** Currently active instance ID */
228
- active_instance_id?: string;
229
- /** Callback when user switches between instances */
230
- on_instance_change?: (instance_id: string) => void;
231
- /** Render function for custom badge per instance in the sidebar */
232
- instance_badge_render?: (instance: FbFormInstance) => React.ReactNode;
233
- /** Callback to create a new instance */
234
- on_instance_create?: () => Promise<FbFormInstance>;
235
- /** Callback when an instance is updated */
236
- on_instance_update?: (instance_id: string, updates: Partial<FbFormInstance>) => void;
237
- /** Unified hierarchical data array — the single source of truth for all processing
238
- * results, validations, clarifications, and review decisions across all instances.
239
- * When provided, this is used alongside (and eventually replaces) the flat model. */
240
- data?: FbDataEntry[];
241
- /** Callback when the hierarchical data array changes */
242
- on_data_change?: (data: FbDataEntry[]) => void;
243
- /** Callback when user clicks "Send to Client" button to send instance to client.
244
- * Only shown for non-first instances in multi-instance mode. */
245
- on_send_to_client?: (instance_id: string) => void;
246
- /** Callback when clarifications are prepared for client (moved to another instance) */
247
- on_prepare_for_client?: (clarification_ids: string[], target_instance_id: string, items?: ClarificationItem[]) => void;
248
- /** Per front-office field textbox config */
249
- field_textbox_configs?: Record<string, FbFieldTextboxConfig>;
250
- /** Shared classification tags used by all front-office fields.
251
- * Per-field available_tags in FbFieldClassification takes precedence if set. */
252
- available_tags?: FbTag[];
253
- /** LLM API endpoint for classification */
254
- llm_api_endpoint?: string;
255
- /** Autofill API endpoint for triggering autofill on back-office fields */
256
- autofill_api_endpoint?: string;
257
- /** Validation API endpoint for document validation */
258
- validation_api_endpoint?: string;
259
- /** Prompts API endpoint for fetching prompt templates (e.g., '/api/prompts').
260
- * Used for clarification response validation prompt lookup. */
261
- prompts_api_endpoint?: string;
262
- /** Validation rules to apply during the pipeline */
263
- validation_rules?: ValidationRule[];
264
- /** Available document types for LLM classification */
265
- available_document_types?: FbDocumentType[];
266
- /** Callback when user confirms adding new document types suggested by LLM */
267
- on_document_types_change?: (types: FbDocumentType[]) => void;
268
- /** Configured response types for clarification workflows */
269
- available_response_types?: FbResponseType[];
270
- /** Configured response sets (named groups of response types) */
271
- available_response_sets?: FbResponseSet[];
272
- /** File manager for uploads */
273
- file_manager?: FileManagerConfig;
274
- /** PDF viewer component — pass to bypass dynamic import of hazo_pdf.
275
- * Usage: `import { PdfViewer } from 'hazo_pdf'; <HazoFbForm pdf_viewer={PdfViewer} />` */
276
- pdf_viewer?: React.ComponentType<any>;
277
- /** Inline help icon component — pass to bypass dynamic import of hazo_ihelp.
278
- * Usage: `import { IhelpIcon } from 'hazo_ihelp'; <HazoFbForm ihelp_icon={IhelpIcon} />` */
279
- ihelp_icon?: React.ComponentType<{
280
- context_key: string;
281
- size?: number;
282
- className?: string;
283
- }>;
284
- /** Submit callback for Summary & Review tab */
285
- on_submit?: (data: FbFormSubmitData) => Promise<void> | void;
286
- /** Submit button label (default: "Submit") */
287
- submit_label?: string;
288
- /** Disable submit button */
289
- submit_disabled?: boolean;
290
- /** Description text shown above the submit button in Summary & Review */
291
- submit_description?: string;
292
- /** Center the submit button and description (default: false, right-aligned) */
293
- submit_centered?: boolean;
294
- /** Initial tab */
295
- initial_tab?: FbTabId;
296
- /** Run complete callback */
297
- on_run_complete?: (result: FbRunResult) => void;
298
- /** Callback when clarifications are sent to client */
299
- on_clarifications_sent?: (items: ClarificationItem[]) => void;
300
- /** Callback fired when review queue items are accepted, with their file IDs.
301
- * The package already routes these files for autofill internally.
302
- * Use this callback for external side effects (logging, state sync, etc.). */
303
- on_review_accepted?: (accepted_file_ids: string[]) => void;
304
- /** Classification results (controlled - for displaying tags) */
305
- classification_results?: FbClassificationResult[];
306
- /** Show classification tags + metadata on front-office file cards (default: true) */
307
- show_classification_tags?: boolean;
308
- /** Callback when a field is added in the front office (after_field_id, field definition) */
309
- on_add_front_field?: (after_field_id: string, field_definition: NewFieldDefinition) => void;
310
- /** Callback when a group is added in the front office (after_group_id, group config) */
311
- on_add_front_group?: (after_group_id: string, group_config: Record<string, unknown>) => void;
312
- /** Callback when a field is added in the back office (after_field_id, field definition) */
313
- on_add_back_field?: (after_field_id: string, field_definition: NewFieldDefinition) => void;
314
- /** Callback when a group is added in the back office (after_group_id, group config) */
315
- on_add_back_group?: (after_group_id: string, group_config: Record<string, unknown>) => void;
316
- /** Tab bar container class */
317
- tab_bar_class_name?: string;
318
- /** Individual tab button class */
319
- tab_class_name?: string;
320
- /** Active tab indicator class */
321
- active_tab_class_name?: string;
322
- /** Section card wrapper class */
323
- section_class_name?: string;
324
- /** Section header class */
325
- section_header_class_name?: string;
326
- /** Group label text class */
327
- group_label_class_name?: string;
328
- /** Submit button class */
329
- submit_class_name?: string;
330
- /** PDF side panel container class */
331
- pdf_panel_class_name?: string;
332
- /** PDF panel width (default: 'w-[480px]') */
333
- pdf_panel_width?: string;
334
- /** Instance sidebar class (multi-instance) */
335
- sidebar_class_name?: string;
336
- /** Run button class */
337
- run_button_class_name?: string;
338
- /** Label for the backoffice run button (default: 'Process Data') */
339
- run_button_label?: string;
340
- /** Front office tab label (default: 'Client View') */
341
- front_tab_label?: string;
342
- /** Badge element rendered after the front tab label (e.g., status badge) */
343
- front_tab_badge?: React.ReactNode;
344
- /** Title displayed above the front office content area */
345
- front_office_title?: string;
346
- /** Client data tab label (default: 'Client Data') */
347
- client_data_tab_label?: string;
348
- /** Back office tab label (default: 'Back Office') */
349
- back_tab_label?: string;
350
- /** Clarifications tab label (default: 'Clarifications') */
351
- clarifications_tab_label?: string;
352
- /** Show debug dialogs (run details, autofill results, validation details).
353
- * Default: true. Set to false for production to hide debug-only dialogs.
354
- * Error dialogs always show regardless of this setting. */
355
- show_debug_dialogs?: boolean;
356
- /** Number of files to classify in a single batch request (default: 5) */
357
- classification_batch_size?: number;
358
- /** Show section name headers above groups (default: true) */
359
- show_section_headers?: boolean;
360
- /** Show stepped sub-tab navigation in front office (default: true) */
361
- front_office_stepper?: boolean;
362
- /** Custom actions rendered at the right side of the front office stepper row (e.g., "Send to Client" button) */
363
- front_stepper_actions?: React.ReactNode;
364
- /** Enable agent stepper workflow (replaces Client Data, Back Office, Send Back tabs).
365
- * Default: false (preserves existing tab behavior for backwards compatibility). */
366
- agent_stepper?: boolean;
367
- /** Step labels override */
368
- stepper_labels?: Partial<Record<AgentStepId, string>>;
369
- /** Additional class name */
370
- className?: string;
371
- }
372
- //# sourceMappingURL=types.d.ts.map