hazo_collab_forms 3.0.13 → 3.0.17

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 (203) hide show
  1. package/CHANGE_LOG.md +58 -0
  2. package/README.md +5 -38
  3. package/dist/components/clarification/clarification_card.d.ts +2 -0
  4. package/dist/components/clarification/clarification_card.d.ts.map +1 -1
  5. package/dist/components/clarification/clarification_card.js +13 -4
  6. package/dist/components/clarification/clarification_card.js.map +1 -1
  7. package/dist/components/clarification/clarification_doc_reference.js +1 -1
  8. package/dist/components/clarification/clarification_doc_reference.js.map +1 -1
  9. package/dist/components/clarification/clarification_group_card.d.ts +2 -0
  10. package/dist/components/clarification/clarification_group_card.d.ts.map +1 -1
  11. package/dist/components/clarification/clarification_group_card.js +2 -2
  12. package/dist/components/clarification/clarification_group_card.js.map +1 -1
  13. package/dist/components/clarification/clarification_item_body.d.ts +2 -0
  14. package/dist/components/clarification/clarification_item_body.d.ts.map +1 -1
  15. package/dist/components/clarification/clarification_item_body.js +7 -2
  16. package/dist/components/clarification/clarification_item_body.js.map +1 -1
  17. package/dist/components/clarification/clarification_response_form.d.ts +2 -0
  18. package/dist/components/clarification/clarification_response_form.d.ts.map +1 -1
  19. package/dist/components/clarification/clarification_response_form.js +2 -2
  20. package/dist/components/clarification/clarification_response_form.js.map +1 -1
  21. package/dist/components/clarification/clarification_section.d.ts +2 -0
  22. package/dist/components/clarification/clarification_section.d.ts.map +1 -1
  23. package/dist/components/clarification/clarification_section.js +2 -2
  24. package/dist/components/clarification/clarification_section.js.map +1 -1
  25. package/dist/components/clarification/clarification_thread.d.ts +19 -0
  26. package/dist/components/clarification/clarification_thread.d.ts.map +1 -0
  27. package/dist/components/clarification/clarification_thread.js +94 -0
  28. package/dist/components/clarification/clarification_thread.js.map +1 -0
  29. package/dist/components/collab_form_file_upload.js +1 -2
  30. package/dist/components/collab_form_file_upload.js.map +1 -1
  31. package/dist/components/data_ok_multi_state.d.ts.map +1 -1
  32. package/dist/components/data_ok_multi_state.js +1 -2
  33. package/dist/components/data_ok_multi_state.js.map +1 -1
  34. package/dist/components/hazo_collab_form_base.d.ts.map +1 -1
  35. package/dist/components/hazo_collab_form_base.js +6 -8
  36. package/dist/components/hazo_collab_form_base.js.map +1 -1
  37. package/dist/components/hazo_collab_form_combo.d.ts.map +1 -1
  38. package/dist/components/hazo_collab_form_combo.js +8 -10
  39. package/dist/components/hazo_collab_form_combo.js.map +1 -1
  40. package/dist/components/hazo_collab_form_data_table.d.ts.map +1 -1
  41. package/dist/components/hazo_collab_form_data_table.js +7 -4
  42. package/dist/components/hazo_collab_form_data_table.js.map +1 -1
  43. package/dist/components/hazo_collab_form_date.d.ts.map +1 -1
  44. package/dist/components/hazo_collab_form_date.js +3 -6
  45. package/dist/components/hazo_collab_form_date.js.map +1 -1
  46. package/dist/components/hazo_collab_form_file_textbox/validation_dialog.d.ts.map +1 -1
  47. package/dist/components/hazo_collab_form_file_textbox/validation_dialog.js +1 -1
  48. package/dist/components/hazo_collab_form_file_textbox/validation_dialog.js.map +1 -1
  49. package/dist/components/hazo_fb_form/components/draft_clarification_card.d.ts.map +1 -1
  50. package/dist/components/hazo_fb_form/components/draft_clarification_card.js +19 -11
  51. package/dist/components/hazo_fb_form/components/draft_clarification_card.js.map +1 -1
  52. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.d.ts +15 -0
  53. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.d.ts.map +1 -0
  54. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.js +26 -0
  55. package/dist/components/hazo_fb_form/components/reject_clarification_dialog.js.map +1 -0
  56. package/dist/components/hazo_fb_form/components/run_details_dialog.d.ts.map +1 -1
  57. package/dist/components/hazo_fb_form/components/run_details_dialog.js +4 -4
  58. package/dist/components/hazo_fb_form/components/run_details_dialog.js.map +1 -1
  59. package/dist/components/hazo_fb_form/components/sent_clarification_group.d.ts +2 -1
  60. package/dist/components/hazo_fb_form/components/sent_clarification_group.d.ts.map +1 -1
  61. package/dist/components/hazo_fb_form/components/sent_clarification_group.js +2 -2
  62. package/dist/components/hazo_fb_form/components/sent_clarification_group.js.map +1 -1
  63. package/dist/components/hazo_fb_form/context.d.ts +39 -2
  64. package/dist/components/hazo_fb_form/context.d.ts.map +1 -1
  65. package/dist/components/hazo_fb_form/context.js.map +1 -1
  66. package/dist/components/hazo_fb_form/hazo_fb_form.d.ts.map +1 -1
  67. package/dist/components/hazo_fb_form/hazo_fb_form.js +272 -45
  68. package/dist/components/hazo_fb_form/hazo_fb_form.js.map +1 -1
  69. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts +14 -3
  70. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.d.ts.map +1 -1
  71. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js +293 -5
  72. package/dist/components/hazo_fb_form/hooks/use_fb_form_state.js.map +1 -1
  73. package/dist/components/hazo_fb_form/hooks/use_llm_run.d.ts.map +1 -1
  74. package/dist/components/hazo_fb_form/hooks/use_llm_run.js +252 -50
  75. package/dist/components/hazo_fb_form/hooks/use_llm_run.js.map +1 -1
  76. package/dist/components/hazo_fb_form/index.d.ts +5 -0
  77. package/dist/components/hazo_fb_form/index.d.ts.map +1 -1
  78. package/dist/components/hazo_fb_form/index.js +3 -0
  79. package/dist/components/hazo_fb_form/index.js.map +1 -1
  80. package/dist/components/hazo_fb_form/shared/agent_stepper.d.ts +9 -0
  81. package/dist/components/hazo_fb_form/shared/agent_stepper.d.ts.map +1 -0
  82. package/dist/components/hazo_fb_form/shared/agent_stepper.js +17 -0
  83. package/dist/components/hazo_fb_form/shared/agent_stepper.js.map +1 -0
  84. package/dist/components/hazo_fb_form/shared/format.d.ts +3 -0
  85. package/dist/components/hazo_fb_form/shared/format.d.ts.map +1 -1
  86. package/dist/components/hazo_fb_form/shared/format.js +16 -0
  87. package/dist/components/hazo_fb_form/shared/format.js.map +1 -1
  88. package/dist/components/hazo_fb_form/shared/group_debug_icon.d.ts +15 -0
  89. package/dist/components/hazo_fb_form/shared/group_debug_icon.d.ts.map +1 -0
  90. package/dist/components/hazo_fb_form/shared/group_debug_icon.js +48 -0
  91. package/dist/components/hazo_fb_form/shared/group_debug_icon.js.map +1 -0
  92. package/dist/components/hazo_fb_form/shared/pdf_side_panel.js +1 -1
  93. package/dist/components/hazo_fb_form/shared/pdf_side_panel.js.map +1 -1
  94. package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts +31 -0
  95. package/dist/components/hazo_fb_form/shared/send_back_item_card.d.ts.map +1 -0
  96. package/dist/components/hazo_fb_form/shared/send_back_item_card.js +41 -0
  97. package/dist/components/hazo_fb_form/shared/send_back_item_card.js.map +1 -0
  98. package/dist/components/hazo_fb_form/types.d.ts +47 -4
  99. package/dist/components/hazo_fb_form/types.d.ts.map +1 -1
  100. package/dist/components/hazo_fb_form/views/back_office_view.d.ts.map +1 -1
  101. package/dist/components/hazo_fb_form/views/back_office_view.js +69 -18
  102. package/dist/components/hazo_fb_form/views/back_office_view.js.map +1 -1
  103. package/dist/components/hazo_fb_form/views/clarifications_view.d.ts.map +1 -1
  104. package/dist/components/hazo_fb_form/views/clarifications_view.js +18 -7
  105. package/dist/components/hazo_fb_form/views/clarifications_view.js.map +1 -1
  106. package/dist/components/hazo_fb_form/views/client_data_view.d.ts.map +1 -1
  107. package/dist/components/hazo_fb_form/views/client_data_view.js +5 -2
  108. package/dist/components/hazo_fb_form/views/client_data_view.js.map +1 -1
  109. package/dist/components/hazo_fb_form/views/front_office_view.d.ts.map +1 -1
  110. package/dist/components/hazo_fb_form/views/front_office_view.js +121 -41
  111. package/dist/components/hazo_fb_form/views/front_office_view.js.map +1 -1
  112. package/dist/components/hazo_fb_form/views/interim_view.d.ts.map +1 -1
  113. package/dist/components/hazo_fb_form/views/interim_view.js +174 -55
  114. package/dist/components/hazo_fb_form/views/interim_view.js.map +1 -1
  115. package/dist/components/hazo_fb_form/views/review_queue_view.d.ts +14 -0
  116. package/dist/components/hazo_fb_form/views/review_queue_view.d.ts.map +1 -0
  117. package/dist/components/hazo_fb_form/views/review_queue_view.js +162 -0
  118. package/dist/components/hazo_fb_form/views/review_queue_view.js.map +1 -0
  119. package/dist/components/hazo_fb_form/views/send_back_view.d.ts +13 -0
  120. package/dist/components/hazo_fb_form/views/send_back_view.d.ts.map +1 -0
  121. package/dist/components/hazo_fb_form/views/send_back_view.js +203 -0
  122. package/dist/components/hazo_fb_form/views/send_back_view.js.map +1 -0
  123. package/dist/components/hazo_fb_form/views/summary_review_view.d.ts +3 -1
  124. package/dist/components/hazo_fb_form/views/summary_review_view.d.ts.map +1 -1
  125. package/dist/components/hazo_fb_form/views/summary_review_view.js +75 -14
  126. package/dist/components/hazo_fb_form/views/summary_review_view.js.map +1 -1
  127. package/dist/components/hazo_field_selector_dialog/components/field_autocomplete.d.ts.map +1 -1
  128. package/dist/components/hazo_field_selector_dialog/components/field_autocomplete.js +7 -8
  129. package/dist/components/hazo_field_selector_dialog/components/field_autocomplete.js.map +1 -1
  130. package/dist/components/hazo_field_selector_dialog/components/sortable_field_item.d.ts.map +1 -1
  131. package/dist/components/hazo_field_selector_dialog/components/sortable_field_item.js +1 -2
  132. package/dist/components/hazo_field_selector_dialog/components/sortable_field_item.js.map +1 -1
  133. package/dist/components/hazo_template_generator/types.d.ts.map +1 -1
  134. package/dist/components/hazo_template_generator/types.js +1 -0
  135. package/dist/components/hazo_template_generator/types.js.map +1 -1
  136. package/dist/components/hazo_validation_rule_editor/components/rule_editor.js +1 -1
  137. package/dist/components/hazo_validation_rule_editor/components/rule_editor.js.map +1 -1
  138. package/dist/components/index.d.ts +2 -2
  139. package/dist/components/index.d.ts.map +1 -1
  140. package/dist/components/index.js +1 -1
  141. package/dist/components/index.js.map +1 -1
  142. package/dist/components/multi_state_radio.d.ts.map +1 -1
  143. package/dist/components/multi_state_radio.js +1 -2
  144. package/dist/components/multi_state_radio.js.map +1 -1
  145. package/dist/components/shared/field_tooltip/field_tooltip.d.ts.map +1 -1
  146. package/dist/components/shared/field_tooltip/field_tooltip.js +1 -2
  147. package/dist/components/shared/field_tooltip/field_tooltip.js.map +1 -1
  148. package/dist/components/shared/file_bar/file_bar.d.ts +12 -2
  149. package/dist/components/shared/file_bar/file_bar.d.ts.map +1 -1
  150. package/dist/components/shared/file_bar/file_bar.js +8 -9
  151. package/dist/components/shared/file_bar/file_bar.js.map +1 -1
  152. package/dist/components/shared/file_bar/file_bar_validation.d.ts +1 -1
  153. package/dist/components/shared/file_bar/file_bar_validation.d.ts.map +1 -1
  154. package/dist/components/shared/file_bar/file_bar_validation.js +9 -0
  155. package/dist/components/shared/file_bar/file_bar_validation.js.map +1 -1
  156. package/dist/components/shared/file_bar/file_bar_validation_dialog.d.ts +16 -1
  157. package/dist/components/shared/file_bar/file_bar_validation_dialog.d.ts.map +1 -1
  158. package/dist/components/shared/file_bar/file_bar_validation_dialog.js +31 -26
  159. package/dist/components/shared/file_bar/file_bar_validation_dialog.js.map +1 -1
  160. package/dist/components/shared/file_bar/file_validation_issues_dialog.d.ts +3 -1
  161. package/dist/components/shared/file_bar/file_validation_issues_dialog.d.ts.map +1 -1
  162. package/dist/components/shared/file_bar/file_validation_issues_dialog.js +2 -2
  163. package/dist/components/shared/file_bar/file_validation_issues_dialog.js.map +1 -1
  164. package/dist/components/shared/role_utils/role_utils.d.ts +1 -0
  165. package/dist/components/shared/role_utils/role_utils.d.ts.map +1 -1
  166. package/dist/components/shared/role_utils/role_utils.js +3 -0
  167. package/dist/components/shared/role_utils/role_utils.js.map +1 -1
  168. package/dist/components/shared/rule_result_card.d.ts +31 -0
  169. package/dist/components/shared/rule_result_card.d.ts.map +1 -0
  170. package/dist/components/shared/rule_result_card.js +72 -0
  171. package/dist/components/shared/rule_result_card.js.map +1 -0
  172. package/dist/components/shared/unified_field_controls/constants.d.ts.map +1 -1
  173. package/dist/components/shared/unified_field_controls/constants.js +1 -0
  174. package/dist/components/shared/unified_field_controls/constants.js.map +1 -1
  175. package/dist/components/shared/unified_field_controls/resolve_field_controls.d.ts +2 -0
  176. package/dist/components/shared/unified_field_controls/resolve_field_controls.d.ts.map +1 -1
  177. package/dist/components/shared/unified_field_controls/resolve_field_controls.js +4 -0
  178. package/dist/components/shared/unified_field_controls/resolve_field_controls.js.map +1 -1
  179. package/dist/components/shared/unified_field_controls/types.d.ts +5 -0
  180. package/dist/components/shared/unified_field_controls/types.d.ts.map +1 -1
  181. package/dist/components/shared/unified_field_controls/unified_field_controls.d.ts.map +1 -1
  182. package/dist/components/shared/unified_field_controls/unified_field_controls.js +13 -2
  183. package/dist/components/shared/unified_field_controls/unified_field_controls.js.map +1 -1
  184. package/dist/components/shared/use_base_form_field.d.ts +2 -0
  185. package/dist/components/shared/use_base_form_field.d.ts.map +1 -1
  186. package/dist/components/shared/use_base_form_field.js +4 -0
  187. package/dist/components/shared/use_base_form_field.js.map +1 -1
  188. package/dist/lib/autofill_handler.d.ts +5 -0
  189. package/dist/lib/autofill_handler.d.ts.map +1 -1
  190. package/dist/lib/autofill_handler.js +27 -10
  191. package/dist/lib/autofill_handler.js.map +1 -1
  192. package/dist/lib/fb_form_handler.d.ts.map +1 -1
  193. package/dist/lib/fb_form_handler.js +45 -0
  194. package/dist/lib/fb_form_handler.js.map +1 -1
  195. package/dist/types/clarification.d.ts +22 -1
  196. package/dist/types/clarification.d.ts.map +1 -1
  197. package/dist/types/icons_behaviour.d.ts +1 -1
  198. package/dist/types/icons_behaviour.d.ts.map +1 -1
  199. package/dist/types/icons_behaviour.js +3 -1
  200. package/dist/types/icons_behaviour.js.map +1 -1
  201. package/dist/types/validation.d.ts +6 -0
  202. package/dist/types/validation.d.ts.map +1 -1
  203. package/package.json +4 -8
@@ -0,0 +1,162 @@
1
+ /**
2
+ * ReviewQueueView - Step 1 of the agent stepper workflow.
3
+ *
4
+ * Renders review items grouped by tax category with accept/send-back buttons per item.
5
+ * Items come from clarification responses and validation results that need agent review.
6
+ *
7
+ * Layout: summary bar -> per-category sections -> footer with "Next" button.
8
+ * Optional PDF side panel when viewing a file-sourced item.
9
+ */
10
+ 'use client';
11
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
12
+ import { useState, useCallback, useEffect, useMemo } from 'react';
13
+ import { cn } from '../../../utils/cn.js';
14
+ import { optional_import } from '../../../utils/optional_import.js';
15
+ import { useFbFormContext } from '../context.js';
16
+ import { PdfSidePanel } from '../shared/pdf_side_panel.js';
17
+ import { SendBackItemCard } from '../shared/send_back_item_card.js';
18
+ /* ── Helpers ── */
19
+ function group_by_category(items) {
20
+ const map = new Map();
21
+ for (const item of items) {
22
+ const key = item.category || '__uncategorized';
23
+ const group = map.get(key);
24
+ if (group) {
25
+ group.push(item);
26
+ }
27
+ else {
28
+ map.set(key, [item]);
29
+ }
30
+ }
31
+ return map;
32
+ }
33
+ /* ── Component ── */
34
+ export function ReviewQueueView() {
35
+ const { props, review_queue_items, review_queue_decisions, set_review_queue_decisions, review_complete, confirm_review_decisions, set_active_step, step_configs, } = useFbFormContext();
36
+ // If the review step is marked completed, all items are "actioned" and should show minimized
37
+ const is_actioned = step_configs.find(s => s.id === 'review')?.completed ?? false;
38
+ const { file_manager } = props;
39
+ // Per-item send-back comments from context (shared with send_back_view)
40
+ const { send_back_comments, set_send_back_comments } = useFbFormContext();
41
+ const [viewing_file_id, set_viewing_file_id] = useState(null);
42
+ const [viewing_file_url, set_viewing_file_url] = useState(null);
43
+ const [viewing_file_name, set_viewing_file_name] = useState('');
44
+ const [PdfViewerComponent, set_pdf_viewer] = useState(null);
45
+ // Use externally provided PdfViewer if available, otherwise lazy-load from hazo_pdf
46
+ useEffect(() => {
47
+ if (props.pdf_viewer) {
48
+ set_pdf_viewer(() => props.pdf_viewer);
49
+ return;
50
+ }
51
+ let cancelled = false;
52
+ optional_import('hazo_pdf')
53
+ .then((mod) => {
54
+ if (!cancelled && mod.PdfViewer)
55
+ set_pdf_viewer(() => mod.PdfViewer);
56
+ })
57
+ .catch(() => { });
58
+ return () => { cancelled = true; };
59
+ }, [props.pdf_viewer]);
60
+ // Group items by category
61
+ const grouped = useMemo(() => group_by_category(review_queue_items), [review_queue_items]);
62
+ // Derived counts
63
+ const total_items = review_queue_items.length;
64
+ const decided_count = review_queue_items.filter(i => review_queue_decisions.has(i.id)).length;
65
+ // Check all send-back items have comments
66
+ const send_back_ids = review_queue_items.filter(i => review_queue_decisions.get(i.id) === 'send_back');
67
+ const all_send_backs_have_comments = send_back_ids.every(i => (send_back_comments.get(i.id) ?? '').trim().length > 0);
68
+ const can_proceed = review_complete && (send_back_ids.length === 0 || all_send_backs_have_comments);
69
+ /* ── Decision toggle ── */
70
+ const toggle_decision = useCallback((item_id, decision) => {
71
+ set_review_queue_decisions(prev => {
72
+ const next = new Map(prev);
73
+ if (next.get(item_id) === decision) {
74
+ // Same button clicked again — remove decision
75
+ next.delete(item_id);
76
+ }
77
+ else {
78
+ next.set(item_id, decision);
79
+ }
80
+ return next;
81
+ });
82
+ }, [set_review_queue_decisions]);
83
+ /* ── Accept All ── */
84
+ const handle_accept_all = useCallback(() => {
85
+ set_review_queue_decisions(_prev => {
86
+ const next = new Map();
87
+ for (const item of review_queue_items) {
88
+ next.set(item.id, 'accept');
89
+ }
90
+ return next;
91
+ });
92
+ }, [review_queue_items, set_review_queue_decisions]);
93
+ /* ── File viewing ── */
94
+ const handle_view_file = useCallback((item) => {
95
+ if (item.source !== 'file')
96
+ return;
97
+ // Toggle off if already viewing this item
98
+ if (viewing_file_id === item.id) {
99
+ set_viewing_file_id(null);
100
+ set_viewing_file_url(null);
101
+ set_viewing_file_name('');
102
+ return;
103
+ }
104
+ const file_id = item.clarification?.doc_references?.[0]?.file_id;
105
+ if (!file_id)
106
+ return;
107
+ const get_url = file_manager?.callbacks?.get_download_url;
108
+ const url = get_url ? get_url(file_id, 'public') : null;
109
+ set_viewing_file_id(item.id);
110
+ set_viewing_file_url(url && url !== '#' ? url : null);
111
+ set_viewing_file_name(item.source_label);
112
+ }, [viewing_file_id, file_manager]);
113
+ /* ── Next step ── */
114
+ const handle_next = useCallback(() => {
115
+ confirm_review_decisions();
116
+ set_active_step('tax_data');
117
+ }, [confirm_review_decisions, set_active_step]);
118
+ /* ── Empty state ── */
119
+ if (total_items === 0) {
120
+ return (_jsxs("div", { className: "text-center py-16 text-muted-foreground", children: [_jsx("p", { className: "text-sm", children: "No items to review." }), _jsx("p", { className: "text-xs mt-1.5", children: "All clarification responses have been processed." })] }));
121
+ }
122
+ /* ── Main content ── */
123
+ const main_content = (_jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex items-center justify-between px-4 py-3 rounded-lg border bg-muted/30", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsxs("span", { className: "text-sm font-medium", children: [total_items, " item", total_items !== 1 ? 's' : '', " need", total_items === 1 ? 's' : '', " your review"] }), _jsxs("span", { className: cn('inline-flex items-center justify-center h-6 min-w-[24px] px-1.5 rounded-full text-xs font-bold', review_complete
124
+ ? 'bg-green-100 text-green-700'
125
+ : 'bg-amber-100 text-amber-700'), children: [decided_count, " / ", total_items] })] }), _jsx("button", { type: "button", onClick: handle_accept_all, className: "px-3 py-1.5 rounded-md text-xs font-medium bg-green-600 text-white hover:bg-green-700 transition-colors", children: "Accept All" })] }), Array.from(grouped.entries()).map(([category_key, items]) => {
126
+ const category_label = items[0]?.category_label || category_key;
127
+ const undecided_count = items.filter(i => !review_queue_decisions.has(i.id)).length;
128
+ return (_jsxs("section", { className: "space-y-3", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("h3", { className: "text-sm font-semibold", children: category_label }), undecided_count > 0 && (_jsx("span", { className: "inline-flex items-center justify-center h-5 min-w-[20px] px-1.5 rounded-full text-xs font-bold bg-red-100 text-red-700", children: undecided_count }))] }), _jsx("div", { className: "space-y-2", children: items.map(item => {
129
+ const decision = review_queue_decisions.get(item.id);
130
+ const is_accepted = decision === 'accept';
131
+ const is_send_back = decision === 'send_back';
132
+ const item_actioned = is_actioned && decision;
133
+ return (_jsxs("div", { className: cn('rounded-lg border p-3 transition-colors', item_actioned && 'border-blue-200 bg-blue-50/50', !item_actioned && is_accepted && 'border-green-300 bg-green-50', !item_actioned && is_send_back && 'border-red-300 bg-red-50', !item_actioned && !decision && 'border-border bg-background'), children: [_jsx("div", { className: "flex items-center justify-end gap-1.5 mb-2", children: item_actioned ? (_jsx("span", { className: cn('px-2.5 py-1 rounded-md text-xs font-semibold', is_accepted ? 'bg-blue-100 text-blue-700' : 'bg-amber-100 text-amber-700'), children: is_accepted ? 'Accepted' : 'Sending Back' })) : (_jsxs(_Fragment, { children: [_jsx("button", { type: "button", onClick: () => toggle_decision(item.id, 'accept'), className: cn('px-3 py-1.5 rounded-md text-xs font-medium transition-colors', is_accepted
134
+ ? 'bg-green-600 text-white'
135
+ : 'bg-muted text-muted-foreground hover:bg-green-100 hover:text-green-700'), children: "Accept" }), _jsx("button", { type: "button", onClick: () => toggle_decision(item.id, 'send_back'), className: cn('px-3 py-1.5 rounded-md text-xs font-medium transition-colors', is_send_back
136
+ ? 'bg-red-600 text-white'
137
+ : 'bg-muted text-muted-foreground hover:bg-red-100 hover:text-red-700'), children: "Send Back" })] })) }), _jsx(SendBackItemCard, { item: item, feedback: send_back_comments.get(item.id) ?? '', on_feedback_change: (val) => {
138
+ set_send_back_comments(prev => {
139
+ const next = new Map(prev);
140
+ next.set(item.id, val);
141
+ return next;
142
+ });
143
+ }, on_view_file: () => handle_view_file(item), has_file_manager: !!file_manager, hide_feedback: !is_send_back })] }, item.id));
144
+ }) })] }, category_key));
145
+ }), _jsx("div", { className: "pt-4 border-t", children: _jsxs("div", { className: "flex items-center justify-end gap-3", children: [!can_proceed && (_jsx("p", { className: "text-xs text-muted-foreground mr-auto", children: !review_complete
146
+ ? 'Decide on all items to proceed.'
147
+ : 'Add comments for all send-back items.' })), _jsx("button", { type: "button", onClick: handle_next, disabled: !can_proceed, className: cn('px-5 py-2.5 rounded-md text-sm font-medium transition-colors', can_proceed
148
+ ? 'bg-primary text-primary-foreground hover:bg-primary/90 shadow-sm'
149
+ : 'bg-muted text-muted-foreground cursor-not-allowed'), children: "Next: Tax Data \u2192" })] }) })] }));
150
+ // No PDF panel requested
151
+ if (!viewing_file_id) {
152
+ return main_content;
153
+ }
154
+ // Side-by-side: review items + PDF panel
155
+ return (_jsxs("div", { className: "flex gap-4 h-full", children: [_jsx("div", { className: "flex-1 min-w-0 overflow-y-auto", children: main_content }), _jsx(PdfSidePanel, { file_name: viewing_file_name, file_url: viewing_file_url, PdfViewer: PdfViewerComponent, on_close: () => {
156
+ set_viewing_file_id(null);
157
+ set_viewing_file_url(null);
158
+ set_viewing_file_name('');
159
+ }, panel_class_name: props.pdf_panel_class_name, panel_width: props.pdf_panel_width })] }));
160
+ }
161
+ ReviewQueueView.displayName = 'ReviewQueueView';
162
+ //# sourceMappingURL=review_queue_view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review_queue_view.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/review_queue_view.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * SendBackView - Step 3 of the agent stepper workflow.
3
+ *
4
+ * Shows items marked for send-back with editable messages per item.
5
+ * Agent can remove items (reverting to 'accept') or send all to client.
6
+ *
7
+ * Layout: warning banner → per-category sections → footer with back/send buttons.
8
+ */
9
+ export declare function SendBackView(): import("react/jsx-runtime").JSX.Element;
10
+ export declare namespace SendBackView {
11
+ var displayName: string;
12
+ }
13
+ //# sourceMappingURL=send_back_view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send_back_view.d.ts","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/send_back_view.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6BH,wBAAgB,YAAY,4CAmS3B;yBAnSe,YAAY"}
@@ -0,0 +1,203 @@
1
+ /**
2
+ * SendBackView - Step 3 of the agent stepper workflow.
3
+ *
4
+ * Shows items marked for send-back with editable messages per item.
5
+ * Agent can remove items (reverting to 'accept') or send all to client.
6
+ *
7
+ * Layout: warning banner → per-category sections → footer with back/send buttons.
8
+ */
9
+ 'use client';
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ import { useState, useMemo, useCallback, useEffect } from 'react';
12
+ import { cn } from '../../../utils/cn.js';
13
+ import { useFbFormContext } from '../context.js';
14
+ import { SendBackItemCard } from '../shared/send_back_item_card.js';
15
+ /* ── Helpers ── */
16
+ function group_by_category(items) {
17
+ const map = new Map();
18
+ for (const item of items) {
19
+ const key = item.category || '__uncategorized';
20
+ const group = map.get(key);
21
+ if (group) {
22
+ group.push(item);
23
+ }
24
+ else {
25
+ map.set(key, [item]);
26
+ }
27
+ }
28
+ return map;
29
+ }
30
+ /* ── Component ── */
31
+ export function SendBackView() {
32
+ const { send_back_items, set_active_step, set_review_queue_decisions, send_clarifications, prepare_for_client, props, } = useFbFormContext();
33
+ // Per-item editable messages (issue shown to client), pre-filled with issue description
34
+ const [messages, set_messages] = useState(() => {
35
+ const map = new Map();
36
+ for (const item of send_back_items) {
37
+ map.set(item.id, item.issue);
38
+ }
39
+ return map;
40
+ });
41
+ // Per-item agent feedback — pre-filled from review queue comments, or from item.send_back_comment
42
+ const { send_back_comments } = useFbFormContext();
43
+ const [feedback, set_feedback] = useState(() => {
44
+ const map = new Map();
45
+ for (const item of send_back_items) {
46
+ const comment = send_back_comments.get(item.id) ?? item.send_back_comment ?? '';
47
+ if (comment)
48
+ map.set(item.id, comment);
49
+ }
50
+ return map;
51
+ });
52
+ // Sync messages when send_back_items changes (e.g. new items added after initial render)
53
+ useEffect(() => {
54
+ set_messages(prev => {
55
+ const next = new Map(prev);
56
+ for (const item of send_back_items) {
57
+ if (!next.has(item.id)) {
58
+ next.set(item.id, item.issue);
59
+ }
60
+ }
61
+ return next;
62
+ });
63
+ }, [send_back_items]);
64
+ const { active_instance } = useFbFormContext();
65
+ const is_completed_instance = active_instance?.status === 'completed' || active_instance?.status === 'archived';
66
+ const [sending, set_sending] = useState(false);
67
+ const [sent, set_sent] = useState(is_completed_instance);
68
+ const total = send_back_items.length;
69
+ // Group by category
70
+ const grouped = useMemo(() => group_by_category(send_back_items), [send_back_items]);
71
+ /* ── Remove item (revert to accept) ── */
72
+ const handle_remove = useCallback((item_id) => {
73
+ set_review_queue_decisions(prev => {
74
+ const next = new Map(prev);
75
+ next.set(item_id, 'accept');
76
+ return next;
77
+ });
78
+ set_messages(prev => {
79
+ const next = new Map(prev);
80
+ next.delete(item_id);
81
+ return next;
82
+ });
83
+ }, [set_review_queue_decisions]);
84
+ /* ── Message change ── */
85
+ const handle_message_change = useCallback((item_id, value) => {
86
+ set_messages(prev => {
87
+ const next = new Map(prev);
88
+ next.set(item_id, value);
89
+ return next;
90
+ });
91
+ }, []);
92
+ /* ── Feedback change ── */
93
+ const handle_feedback_change = useCallback((item_id, value) => {
94
+ set_feedback(prev => {
95
+ const next = new Map(prev);
96
+ next.set(item_id, value);
97
+ return next;
98
+ });
99
+ }, []);
100
+ // Check if all items have feedback
101
+ const all_have_feedback = send_back_items.every(item => (feedback.get(item.id) ?? '').trim().length > 0);
102
+ /* ── Send to client ── */
103
+ const handle_send = useCallback(async () => {
104
+ if (sending || total === 0)
105
+ return;
106
+ set_sending(true);
107
+ try {
108
+ // Build clarification items with edited messages and thread history
109
+ const now = new Date().toISOString();
110
+ const items_to_send = send_back_items.map(item => {
111
+ const clr = item.clarification;
112
+ const edited_message = messages.get(item.id) ?? clr.issue_description;
113
+ // Build thread: preserve existing thread + add original issue + client response + agent send-back
114
+ const thread = [...(clr.thread ?? [])];
115
+ // Prepend original input + issue as first entries if not already present
116
+ if (!thread.some(t => t.role === 'system' && t.action === 'created')) {
117
+ // First: the input (document/file reference)
118
+ if (clr.doc_references?.length) {
119
+ thread.unshift({
120
+ role: 'system',
121
+ action: 'created',
122
+ message: undefined,
123
+ files: clr.doc_references.map(ref => ({
124
+ file_id: ref.file_id,
125
+ ref_id: ref.file_id,
126
+ file_name: ref.file_name,
127
+ file_size: ref.file_size ?? 0,
128
+ mime_type: ref.mime_type,
129
+ visibility: 'public',
130
+ attached_at: clr.created_at || now,
131
+ })),
132
+ timestamp: clr.created_at || now,
133
+ });
134
+ }
135
+ // Second: the validation issue
136
+ thread.splice(clr.doc_references?.length ? 1 : 0, 0, {
137
+ role: 'system',
138
+ action: 'created',
139
+ message: clr.issue_description,
140
+ timestamp: clr.created_at || now,
141
+ });
142
+ }
143
+ // Add client's original response if it exists and isn't already in thread
144
+ if (clr.response_choice && !thread.some(t => t.role === 'client' && t.response_choice === clr.response_choice)) {
145
+ thread.push({
146
+ role: 'client',
147
+ action: 'responded',
148
+ response_choice: clr.response_choice,
149
+ message: clr.user_comment || undefined,
150
+ timestamp: clr.updated_at || now,
151
+ });
152
+ }
153
+ // Add agent's send-back feedback
154
+ const agent_feedback = feedback.get(item.id)?.trim() || edited_message;
155
+ thread.push({
156
+ role: 'author',
157
+ action: 'rejected',
158
+ message: agent_feedback,
159
+ timestamp: now,
160
+ actor_name: props.current_user?.name,
161
+ });
162
+ return {
163
+ ...clr,
164
+ issue_description: edited_message,
165
+ review_decision: 'approve',
166
+ status: 'pending',
167
+ // Reset response so client can respond again
168
+ response_choice: undefined,
169
+ user_comment: undefined,
170
+ response_files: [],
171
+ thread,
172
+ reviewed_at: now,
173
+ created_at: clr.created_at || now,
174
+ updated_at: now,
175
+ };
176
+ });
177
+ // First send the clarifications (adds to sent_clarifications)
178
+ send_clarifications(items_to_send);
179
+ // Then prepare for client (creates new instance if multi-instance)
180
+ const ids = items_to_send.map(i => i.id);
181
+ await prepare_for_client(ids, items_to_send);
182
+ // Notify via callback if available
183
+ props.on_clarifications_sent?.(items_to_send);
184
+ set_sent(true);
185
+ }
186
+ finally {
187
+ set_sending(false);
188
+ }
189
+ }, [sending, total, send_back_items, messages, feedback, send_clarifications, prepare_for_client, props]);
190
+ /* ── Empty state ── */
191
+ if (total === 0) {
192
+ return (_jsxs("div", { className: "space-y-6", children: [_jsx("div", { className: "text-center py-16 text-muted-foreground", children: _jsx("p", { className: "text-sm", children: "No items to send back." }) }), _jsx("div", { className: "pt-4 border-t", children: _jsx("button", { type: "button", onClick: () => set_active_step('tax_data'), className: "px-4 py-2 rounded-md text-sm font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors", children: "\u2190 Back to Tax Data" }) })] }));
193
+ }
194
+ /* ── Main content ── */
195
+ return (_jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex items-start gap-3 px-4 py-3 rounded-lg border border-amber-300 bg-amber-50 text-amber-800", children: [_jsx("span", { className: "text-lg flex-shrink-0 mt-0.5", children: "\u26A0\uFE0F" }), _jsxs("p", { className: "text-sm font-medium", children: [total, " item", total !== 1 ? 's' : '', " will be sent back to the client for clarification. Review and edit the messages below before sending."] })] }), Array.from(grouped.entries()).map(([category_key, items]) => {
196
+ const category_label = items[0]?.category_label || category_key;
197
+ return (_jsxs("section", { className: "space-y-3", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("h3", { className: "text-sm font-semibold", children: category_label }), _jsx("span", { className: "inline-flex items-center justify-center h-5 min-w-[20px] px-1.5 rounded-full text-xs font-bold bg-red-100 text-red-700", children: items.length })] }), _jsx("div", { className: "space-y-3", children: items.map(item => (_jsx("div", { className: "rounded-lg border border-red-200 bg-red-50 p-4", children: _jsx(SendBackItemCard, { item: item, feedback: feedback.get(item.id) ?? '', on_feedback_change: (val) => handle_feedback_change(item.id, val), on_remove: () => handle_remove(item.id), show_response_options: true }) }, item.id))) })] }, category_key));
198
+ }), _jsx("div", { className: "pt-4 border-t", children: _jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("button", { type: "button", onClick: () => set_active_step('tax_data'), className: "px-4 py-2 rounded-md text-sm font-medium text-muted-foreground hover:text-foreground hover:bg-muted transition-colors", children: "\u2190 Back to Tax Data" }), sent ? (_jsx("span", { className: "inline-flex items-center gap-1.5 px-5 py-2.5 rounded-md text-sm font-medium bg-green-100 text-green-700", children: "\u2713 Sent to Client" })) : (_jsxs("div", { className: "flex items-center gap-2", children: [!all_have_feedback && (_jsx("p", { className: "text-xs text-amber-600", children: "Add feedback for all items" })), _jsx("button", { type: "button", onClick: handle_send, disabled: sending || total === 0 || !all_have_feedback, className: cn('px-5 py-2.5 rounded-md text-sm font-medium transition-colors shadow-sm', !sending && total > 0 && all_have_feedback
199
+ ? 'bg-red-600 text-white hover:bg-red-700'
200
+ : 'bg-muted text-muted-foreground cursor-not-allowed'), children: sending ? 'Sending...' : `Send to Client (${total} item${total !== 1 ? 's' : ''}) \u2192` })] }))] }) })] }));
201
+ }
202
+ SendBackView.displayName = 'SendBackView';
203
+ //# sourceMappingURL=send_back_view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send_back_view.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/send_back_view.tsx"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export interface SummaryReviewViewProps {
10
10
  on_file_view?: (attachment: FormFileAttachment) => void;
11
11
  /** Callback fired after successful submit */
12
12
  on_submitted?: () => void;
13
+ /** Callback to navigate to clarifications (stepper step or tab) */
14
+ on_go_to_clarifications?: () => void;
13
15
  }
14
- export declare function SummaryReviewView({ on_file_view, on_submitted }: SummaryReviewViewProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function SummaryReviewView({ on_file_view, on_submitted, on_go_to_clarifications }: SummaryReviewViewProps): import("react/jsx-runtime").JSX.Element;
15
17
  //# sourceMappingURL=summary_review_view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"summary_review_view.d.ts","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/summary_review_view.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAgB5E,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACxD,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,sBAAsB,2CAiPvF"}
1
+ {"version":3,"file":"summary_review_view.d.ts","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/summary_review_view.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAkB5E,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACxD,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,mEAAmE;IACnE,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;CACtC;AAED,wBAAgB,iBAAiB,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,EAAE,sBAAsB,2CA6VhH"}
@@ -6,28 +6,64 @@
6
6
  */
7
7
  'use client';
8
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
- import { useState, useCallback } from 'react';
9
+ import { useState, useCallback, useMemo } from 'react';
10
10
  import { useFbFormContext } from '../context.js';
11
11
  import { cn } from '../../../utils/cn.js';
12
12
  import { HiCheckCircle } from 'react-icons/hi';
13
+ import { IoAlertCircle } from 'react-icons/io5';
14
+ import { LuLoader } from 'react-icons/lu';
13
15
  import { VIRTUAL_INSTANCE_ID } from '../hazo_fb_form.js';
14
16
  import { is_fb_terminal_status } from '../../../types/fb_form_instance.js';
15
- export function SummaryReviewView({ on_file_view, on_submitted }) {
17
+ export function SummaryReviewView({ on_file_view, on_submitted, on_go_to_clarifications }) {
16
18
  const ctx = useFbFormContext();
17
- const { props, classification_results, sent_clarifications, active_instance_id, active_instance, all_clarifications, is_multi_instance, pending_clarification_responses, batch_update_clarification_responses, set_manual_review_file_ids } = ctx;
19
+ const { props, classification_results, sent_clarifications, draft_clarifications, active_instance_id, active_instance, all_clarifications, is_multi_instance, pending_clarification_responses, batch_update_clarification_responses, set_manual_review_file_ids, classifying_file_ids, queued_file_ids, validating_file_ids, autofilling_file_ids, set_active_tab, submitted_at, set_submitted_at } = ctx;
18
20
  const { front_sections, front_form_data } = props;
19
21
  const is_past_instance = active_instance ? is_fb_terminal_status(active_instance.status) : false;
20
- const [submitting, set_submitting] = useState(false);
21
- const [submitted_at, set_submitted_at] = useState(() => {
22
- // If instance was already submitted (client_submitted / completed), show confirmation on mount
23
- if (active_instance) {
24
- const s = active_instance.status;
25
- if (s === 'client_submitted' || s === 'client_submitted_auto_review' || s === 'completed') {
26
- return active_instance.updated_at ? new Date(active_instance.updated_at) : new Date();
22
+ // Block submit if any clarifications haven't been responded to.
23
+ // Check all sources: context sent_clarifications, drafts, and the raw instance data.
24
+ // A clarification blocks submit if status is 'pending' AND the user hasn't provided a response.
25
+ const has_unresponded_clarifications = useMemo(() => {
26
+ const is_unresponded = (c) => c.status === 'pending' && !pending_clarification_responses.has(c.id);
27
+ // Check context-level clarifications
28
+ if (sent_clarifications.some(is_unresponded))
29
+ return true;
30
+ if (draft_clarifications.some(is_unresponded))
31
+ return true;
32
+ // Check raw instance data (may contain clarifications not yet in context)
33
+ if (active_instance?.sent_clarifications?.some(is_unresponded))
34
+ return true;
35
+ // Check sourced clarifications in front_form_data.__clarifications (items from other instances)
36
+ const sourced_items = Array.isArray(front_form_data?.['__clarifications'])
37
+ ? front_form_data['__clarifications']
38
+ : [];
39
+ if (sourced_items.some(is_unresponded))
40
+ return true;
41
+ // Check all clarifications across all instances for items targeting this instance
42
+ // This catches clarifications forwarded via prepare_for_client
43
+ if (is_multi_instance && active_instance_id) {
44
+ const instance = props.instances?.find?.((i) => i.instance_id === active_instance_id);
45
+ if (instance?.sent_clarifications?.some((c) => is_unresponded(c)))
46
+ return true;
47
+ }
48
+ return false;
49
+ }, [sent_clarifications, draft_clarifications, active_instance, active_instance_id, is_multi_instance, pending_clarification_responses, props, front_form_data]);
50
+ // Block submit if any fields with __complete_ keys haven't been marked true
51
+ const has_incomplete_fields = useMemo(() => {
52
+ if (!front_form_data)
53
+ return false;
54
+ for (const key of Object.keys(front_form_data)) {
55
+ if (key.startsWith('__complete_') && front_form_data[key] !== true) {
56
+ return true;
27
57
  }
28
58
  }
29
- return null;
30
- });
59
+ return false;
60
+ }, [front_form_data]);
61
+ // Block submit if files are still being processed
62
+ const has_files_processing = classifying_file_ids.size > 0
63
+ || queued_file_ids.size > 0
64
+ || validating_file_ids.size > 0
65
+ || autofilling_file_ids.size > 0;
66
+ const [submitting, set_submitting] = useState(false);
31
67
  const show_submit = !!props.on_submit && !is_past_instance;
32
68
  /**
33
69
  * Collect files from clarification responses (e.g. "Provide a new document")
@@ -174,7 +210,12 @@ export function SummaryReviewView({ on_file_view, on_submitted }) {
174
210
  instance_id: active_instance_id !== VIRTUAL_INSTANCE_ID ? active_instance_id : undefined,
175
211
  };
176
212
  await props.on_submit(data);
177
- set_submitted_at(new Date());
213
+ const now = new Date();
214
+ set_submitted_at(now);
215
+ // Persist submitted status to instance so it survives remounts
216
+ if (active_instance_id !== VIRTUAL_INSTANCE_ID) {
217
+ props.on_instance_update?.(active_instance_id, { status: 'client_submitted', updated_at: now.toISOString() });
218
+ }
178
219
  on_submitted?.();
179
220
  }
180
221
  finally {
@@ -192,6 +233,26 @@ export function SummaryReviewView({ on_file_view, on_submitted }) {
192
233
  const time = date.toLocaleString('en-AU', { hour: 'numeric', minute: '2-digit', hour12: true });
193
234
  return `${day} ${month} ${year} at ${time}`;
194
235
  };
195
- return (_jsx("div", { className: "space-y-5 pb-8", children: submitted_at ? (_jsxs("div", { className: "flex items-center gap-3 rounded-lg border border-green-200 bg-green-50 px-5 py-4", children: [_jsx(HiCheckCircle, { className: "h-6 w-6 text-green-600 flex-shrink-0" }), _jsxs("div", { children: [_jsx("p", { className: "text-sm font-medium text-green-800", children: "Submitted successfully" }), _jsxs("p", { className: "text-xs text-green-600 mt-0.5", children: ["Submitted on ", format_submitted_date(submitted_at)] })] })] })) : show_submit ? (_jsxs("div", { className: cn('pt-4', props.submit_centered ? 'flex flex-col items-center' : 'flex justify-end'), children: [props.submit_description && (_jsx("p", { className: "text-sm text-muted-foreground mb-3 max-w-lg text-center", children: props.submit_description })), _jsx("button", { type: "button", onClick: handle_submit, disabled: submitting || props.submit_disabled, className: cn('px-6 py-2.5 rounded-lg text-sm font-medium transition-colors', 'bg-primary text-primary-foreground hover:bg-primary/90', 'disabled:opacity-50 disabled:cursor-not-allowed'), children: submit_label })] })) : null }));
236
+ const is_blocked = has_files_processing || has_unresponded_clarifications || has_incomplete_fields;
237
+ return (_jsx("div", { className: "pb-8", children: submitted_at ? (
238
+ /* ── Submitted confirmation ── */
239
+ _jsx("div", { className: "border rounded-lg bg-card shadow-sm overflow-hidden", children: _jsxs("div", { className: "flex items-center justify-center gap-3 px-5 py-12", children: [_jsx(HiCheckCircle, { className: "h-8 w-8 text-green-500 flex-shrink-0" }), _jsxs("div", { children: [_jsx("h3", { className: "text-base font-semibold text-green-700", children: "Submitted successfully" }), _jsxs("p", { className: "text-sm text-muted-foreground mt-0.5", children: ["Submitted on ", format_submitted_date(submitted_at)] })] })] }) })) : show_submit ? (_jsxs("div", { className: "border rounded-lg bg-card shadow-sm overflow-hidden", children: [is_blocked && (_jsxs("div", { className: "border-b border-border/60 px-6 py-4 space-y-3", children: [has_files_processing && (_jsxs("div", { className: "flex items-center gap-3 rounded-md bg-amber-50 border border-amber-200 px-4 py-3", children: [_jsx(LuLoader, { className: "h-5 w-5 text-amber-600 animate-spin flex-shrink-0" }), _jsx("p", { className: "text-sm text-amber-800", children: "Files are being processed. Please wait for processing to complete before submitting." })] })), has_unresponded_clarifications && (_jsxs("div", { className: "flex items-center gap-3 rounded-md bg-amber-50 border border-amber-200 px-4 py-3", children: [_jsx(IoAlertCircle, { className: "h-5 w-5 text-amber-600 flex-shrink-0" }), _jsxs("div", { className: "text-sm text-amber-800", children: ["There are pending clarifications that must be addressed before submitting.", ' ', _jsx("button", { type: "button", onClick: () => on_go_to_clarifications ? on_go_to_clarifications() : set_active_tab('clarifications'), className: "underline font-semibold hover:text-amber-900", children: "Go to Clarifications" })] })] })), has_incomplete_fields && (_jsxs("div", { className: "flex items-center gap-3 rounded-md bg-amber-50 border border-amber-200 px-4 py-3", children: [_jsx(IoAlertCircle, { className: "h-5 w-5 text-amber-600 flex-shrink-0" }), _jsx("p", { className: "text-sm text-amber-800", children: "Some fields have not been marked as complete. Please review and mark all fields as complete before submitting." })] }))] })), _jsxs("div", { className: "flex flex-col items-center px-6 py-10", children: [!is_blocked && (_jsx(HiCheckCircle, { className: "h-10 w-10 text-green-500 mb-3" })), has_files_processing && !has_unresponded_clarifications && !has_incomplete_fields && (_jsx(LuLoader, { className: "h-10 w-10 text-amber-500 animate-spin mb-3" })), _jsx("h3", { className: "text-base font-semibold text-foreground", children: !is_blocked
240
+ ? 'Ready to submit'
241
+ : has_incomplete_fields && !has_files_processing && !has_unresponded_clarifications
242
+ ? 'Fields incomplete'
243
+ : has_unresponded_clarifications && !has_files_processing
244
+ ? 'Action required'
245
+ : has_files_processing && !has_unresponded_clarifications && !has_incomplete_fields
246
+ ? 'Almost there'
247
+ : 'Please wait' }), _jsx("p", { className: "text-sm text-muted-foreground mt-1 max-w-md text-center", children: props.submit_description
248
+ ?? (!is_blocked
249
+ ? 'All checks have passed. You can submit your form.'
250
+ : has_incomplete_fields && !has_files_processing && !has_unresponded_clarifications
251
+ ? 'Some fields have not been marked as complete. Please review all fields before submitting.'
252
+ : has_files_processing && !has_unresponded_clarifications && !has_incomplete_fields
253
+ ? 'Your files are being processed. You\'ll be able to submit once processing is complete.'
254
+ : has_unresponded_clarifications && !has_files_processing && !has_incomplete_fields
255
+ ? 'There are clarifications that need your attention before you can submit.'
256
+ : 'There are items that need your attention before you can submit.') }), _jsx("button", { type: "button", onClick: handle_submit, disabled: submitting || props.submit_disabled || is_blocked, className: cn('mt-6 px-8 py-2.5 rounded-lg text-sm font-medium transition-colors', 'bg-primary text-primary-foreground hover:bg-primary/90', 'disabled:opacity-50 disabled:cursor-not-allowed'), children: submit_label })] })] })) : null }));
196
257
  }
197
258
  //# sourceMappingURL=summary_review_view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"summary_review_view.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/summary_review_view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary_review_view.js","sourceRoot":"","sources":["../../../../src/components/hazo_fb_form/views/summary_review_view.tsx"],"names":[],"mappings":"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"}