hazo_collab_forms 1.1.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 (82) hide show
  1. package/README.md +114 -0
  2. package/dist/components/collab_form_file_upload.d.ts +65 -0
  3. package/dist/components/collab_form_file_upload.d.ts.map +1 -0
  4. package/dist/components/collab_form_file_upload.js +339 -0
  5. package/dist/components/collab_form_file_upload.js.map +1 -0
  6. package/dist/components/data_ok_checkbox.d.ts +36 -0
  7. package/dist/components/data_ok_checkbox.d.ts.map +1 -0
  8. package/dist/components/data_ok_checkbox.js +26 -0
  9. package/dist/components/data_ok_checkbox.js.map +1 -0
  10. package/dist/components/hazo_collab_form_base.d.ts +398 -0
  11. package/dist/components/hazo_collab_form_base.d.ts.map +1 -0
  12. package/dist/components/hazo_collab_form_base.js +206 -0
  13. package/dist/components/hazo_collab_form_base.js.map +1 -0
  14. package/dist/components/hazo_collab_form_checkbox.d.ts +52 -0
  15. package/dist/components/hazo_collab_form_checkbox.d.ts.map +1 -0
  16. package/dist/components/hazo_collab_form_checkbox.js +65 -0
  17. package/dist/components/hazo_collab_form_checkbox.js.map +1 -0
  18. package/dist/components/hazo_collab_form_combo.d.ts +91 -0
  19. package/dist/components/hazo_collab_form_combo.d.ts.map +1 -0
  20. package/dist/components/hazo_collab_form_combo.js +192 -0
  21. package/dist/components/hazo_collab_form_combo.js.map +1 -0
  22. package/dist/components/hazo_collab_form_date.d.ts +71 -0
  23. package/dist/components/hazo_collab_form_date.d.ts.map +1 -0
  24. package/dist/components/hazo_collab_form_date.js +251 -0
  25. package/dist/components/hazo_collab_form_date.js.map +1 -0
  26. package/dist/components/hazo_collab_form_group.d.ts +40 -0
  27. package/dist/components/hazo_collab_form_group.d.ts.map +1 -0
  28. package/dist/components/hazo_collab_form_group.js +151 -0
  29. package/dist/components/hazo_collab_form_group.js.map +1 -0
  30. package/dist/components/hazo_collab_form_inputbox.d.ts +44 -0
  31. package/dist/components/hazo_collab_form_inputbox.d.ts.map +1 -0
  32. package/dist/components/hazo_collab_form_inputbox.js +64 -0
  33. package/dist/components/hazo_collab_form_inputbox.js.map +1 -0
  34. package/dist/components/hazo_collab_form_radio.d.ts +73 -0
  35. package/dist/components/hazo_collab_form_radio.d.ts.map +1 -0
  36. package/dist/components/hazo_collab_form_radio.js +65 -0
  37. package/dist/components/hazo_collab_form_radio.js.map +1 -0
  38. package/dist/components/hazo_collab_form_set.d.ts +181 -0
  39. package/dist/components/hazo_collab_form_set.d.ts.map +1 -0
  40. package/dist/components/hazo_collab_form_set.js +425 -0
  41. package/dist/components/hazo_collab_form_set.js.map +1 -0
  42. package/dist/components/hazo_collab_form_textarea.d.ts +43 -0
  43. package/dist/components/hazo_collab_form_textarea.d.ts.map +1 -0
  44. package/dist/components/hazo_collab_form_textarea.js +61 -0
  45. package/dist/components/hazo_collab_form_textarea.js.map +1 -0
  46. package/dist/components/index.d.ts +23 -0
  47. package/dist/components/index.d.ts.map +1 -0
  48. package/dist/components/index.js +14 -0
  49. package/dist/components/index.js.map +1 -0
  50. package/dist/index.client.d.ts +7 -0
  51. package/dist/index.client.d.ts.map +1 -0
  52. package/dist/index.client.js +7 -0
  53. package/dist/index.client.js.map +1 -0
  54. package/dist/index.d.ts +8 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +8 -0
  57. package/dist/index.js.map +1 -0
  58. package/dist/lib/config.d.ts +15 -0
  59. package/dist/lib/config.d.ts.map +1 -0
  60. package/dist/lib/config.js +62 -0
  61. package/dist/lib/config.js.map +1 -0
  62. package/dist/lib/index.d.ts +5 -0
  63. package/dist/lib/index.d.ts.map +1 -0
  64. package/dist/lib/index.js +5 -0
  65. package/dist/lib/index.js.map +1 -0
  66. package/dist/utils/cn.d.ts +12 -0
  67. package/dist/utils/cn.d.ts.map +1 -0
  68. package/dist/utils/cn.js +15 -0
  69. package/dist/utils/cn.js.map +1 -0
  70. package/dist/utils/index.d.ts +9 -0
  71. package/dist/utils/index.d.ts.map +1 -0
  72. package/dist/utils/index.js +7 -0
  73. package/dist/utils/index.js.map +1 -0
  74. package/dist/utils/use_chat_messages_check.d.ts +40 -0
  75. package/dist/utils/use_chat_messages_check.d.ts.map +1 -0
  76. package/dist/utils/use_chat_messages_check.js +80 -0
  77. package/dist/utils/use_chat_messages_check.js.map +1 -0
  78. package/dist/utils/use_collab_chat.d.ts +21 -0
  79. package/dist/utils/use_collab_chat.d.ts.map +1 -0
  80. package/dist/utils/use_collab_chat.js +49 -0
  81. package/dist/utils/use_collab_chat.js.map +1 -0
  82. package/package.json +78 -0
@@ -0,0 +1,251 @@
1
+ /**
2
+ * Collaboration form date picker component
3
+ * Provides a reusable date picker field with label, error message, and chat icon functionality
4
+ */
5
+ 'use client';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ import React from 'react';
8
+ import { cn } from '../utils/cn.js';
9
+ import { use_collab_form_field, CollabFormFieldContainer, CollabFormFieldLabel, CollabFormChatIcon, CollabFormFieldError, CollabFormDataOkCheckbox, CollabFormFileUploadSection, } from './hazo_collab_form_base.js';
10
+ /**
11
+ * Convert ISO date string to Date object
12
+ */
13
+ function iso_string_to_date(iso_string) {
14
+ if (!iso_string)
15
+ return undefined;
16
+ const date = new Date(iso_string + 'T00:00:00');
17
+ return isNaN(date.getTime()) ? undefined : date;
18
+ }
19
+ /**
20
+ * Convert Date object to ISO date string (YYYY-MM-DD)
21
+ */
22
+ function date_to_iso_string(date) {
23
+ if (!date)
24
+ return '';
25
+ const year = date.getFullYear();
26
+ const month = String(date.getMonth() + 1).padStart(2, '0');
27
+ const day = String(date.getDate()).padStart(2, '0');
28
+ return `${year}-${month}-${day}`;
29
+ }
30
+ /**
31
+ * Format date for display
32
+ */
33
+ function format_date_display(iso_string) {
34
+ if (!iso_string)
35
+ return '';
36
+ const date = iso_string_to_date(iso_string);
37
+ if (!date)
38
+ return '';
39
+ return date.toLocaleDateString('en-US', { year: 'numeric', month: 'short', day: 'numeric' });
40
+ }
41
+ /**
42
+ * Collaboration form date picker component
43
+ * Displays a labeled date picker field with error message and chat icon
44
+ */
45
+ export const HazoCollabFormDate = React.forwardRef((props, ref) => {
46
+ // Create internal ref for component reference (for file_processor)
47
+ const component_ref = React.useRef(null);
48
+ const [internal_files, set_internal_files] = React.useState([]);
49
+ // Use controlled files if provided, otherwise use internal state
50
+ const current_files = props.files !== undefined ? props.files : internal_files;
51
+ // Expose get_file_data method and forward ref to button element
52
+ React.useImperativeHandle(ref, () => {
53
+ return {
54
+ ...component_ref.current,
55
+ get_file_data: () => current_files,
56
+ };
57
+ }, [current_files]);
58
+ const { label, error, field_id, field_data_id, field_name, value, onChange, on_chat_click, has_chat_messages, is_chat_active, chat_background_color = 'bg-muted', is_data_ok_default, container_class_name, label_class_name, date_wrapper_class_name, error_class_name, field_width_class_name, required, multi_state_radio, data_ok_checked, on_data_ok_change, data_ok_editable, disable_data_ok, disable_chat, accept_files, files_dir, max_size, min_files, max_files, file_accept, file_processor, files: controlled_files_prop, on_files_change, id, date_mode = 'single', min_date, max_date, disabled_dates, placeholder,
59
+ // HazoChat props
60
+ hazo_chat_receiver_user_id, recipient_user_id, hazo_chat_reference_id, hazo_chat_reference_type, hazo_chat_api_base_url, hazo_chat_timezone, hazo_chat_title, hazo_chat_subtitle, hazo_chat_realtime_mode, hazo_chat_polling_interval, hazo_chat_messages_per_page, hazo_chat_class_name, hazo_chat_on_close, hazo_chat_is_open, hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button, hazo_chat_bubble_radius, } = props;
61
+ const { field_id_final, handle_chat_icon_click, chat_is_open, is_chat_disabled } = use_collab_form_field({
62
+ label,
63
+ field_id,
64
+ id,
65
+ field_data_id,
66
+ field_name,
67
+ on_chat_click,
68
+ hazo_chat_receiver_user_id,
69
+ recipient_user_id,
70
+ hazo_chat_on_open_change,
71
+ hazo_chat_is_open,
72
+ });
73
+ // Determine if field should be disabled when chat is active
74
+ // Use is_chat_active if provided, otherwise use chat_is_open
75
+ const is_field_disabled = is_chat_active !== undefined ? is_chat_active : chat_is_open;
76
+ // State for popover open/close
77
+ const [popover_open, set_popover_open] = React.useState(false);
78
+ // Dynamic imports for shadcn components
79
+ const [Components, setComponents] = React.useState(null);
80
+ const [is_loading, set_is_loading] = React.useState(true);
81
+ const [is_mounted, set_is_mounted] = React.useState(false);
82
+ React.useEffect(() => {
83
+ set_is_mounted(true);
84
+ }, []);
85
+ React.useEffect(() => {
86
+ if (!is_mounted)
87
+ return;
88
+ const loadComponents = async () => {
89
+ try {
90
+ set_is_loading(true);
91
+ // Try to import from consuming app's components directory
92
+ // This path will be resolved by Next.js/webpack in the consuming app
93
+ // @ts-expect-error - These modules are provided by the consuming application
94
+ const popoverModule = await import('@/components/ui/popover').catch(() => null);
95
+ // @ts-expect-error - These modules are provided by the consuming application
96
+ const calendarModule = await import('@/components/ui/calendar').catch(() => null);
97
+ // @ts-expect-error - These modules are provided by the consuming application
98
+ const buttonModule = await import('@/components/ui/button').catch(() => null);
99
+ const lucideModule = await import('lucide-react').catch(() => null);
100
+ if (popoverModule && calendarModule && buttonModule && lucideModule) {
101
+ setComponents({
102
+ Popover: popoverModule.Popover,
103
+ PopoverTrigger: popoverModule.PopoverTrigger,
104
+ PopoverContent: popoverModule.PopoverContent,
105
+ Calendar: calendarModule.Calendar,
106
+ Button: buttonModule.Button,
107
+ CalendarIcon: lucideModule.CalendarIcon,
108
+ });
109
+ }
110
+ else {
111
+ console.warn('[HazoCollabFormDate] shadcn Popover, Calendar, Button, or lucide-react not found. ' +
112
+ 'Please install them: npx shadcn@latest add popover calendar button && npm install lucide-react');
113
+ }
114
+ }
115
+ catch (error) {
116
+ console.warn('[HazoCollabFormDate] Error loading components:', error);
117
+ }
118
+ finally {
119
+ set_is_loading(false);
120
+ }
121
+ };
122
+ loadComponents();
123
+ }, [is_mounted]);
124
+ /**
125
+ * Get current date value(s) as Date objects for Calendar component
126
+ */
127
+ const get_calendar_date = React.useMemo(() => {
128
+ if (date_mode === 'single') {
129
+ return iso_string_to_date(value);
130
+ }
131
+ else {
132
+ const range_value = value;
133
+ if (!range_value)
134
+ return undefined;
135
+ return {
136
+ from: iso_string_to_date(range_value.from),
137
+ to: iso_string_to_date(range_value.to),
138
+ };
139
+ }
140
+ }, [value, date_mode]);
141
+ /**
142
+ * Get disabled dates as Date objects
143
+ */
144
+ const disabled_dates_as_dates = React.useMemo(() => {
145
+ if (!disabled_dates || disabled_dates.length === 0)
146
+ return undefined;
147
+ return disabled_dates.map(iso_string_to_date).filter((d) => d !== undefined);
148
+ }, [disabled_dates]);
149
+ /**
150
+ * Get min/max dates as Date objects
151
+ */
152
+ const min_date_obj = React.useMemo(() => iso_string_to_date(min_date), [min_date]);
153
+ const max_date_obj = React.useMemo(() => iso_string_to_date(max_date), [max_date]);
154
+ /**
155
+ * Handle date selection from Calendar
156
+ */
157
+ const handle_date_select = React.useCallback((selected_date) => {
158
+ if (!selected_date) {
159
+ if (date_mode === 'single') {
160
+ onChange('');
161
+ }
162
+ else {
163
+ onChange({ from: '', to: '' });
164
+ }
165
+ return;
166
+ }
167
+ if (date_mode === 'single') {
168
+ const date = selected_date;
169
+ onChange(date_to_iso_string(date));
170
+ set_popover_open(false);
171
+ }
172
+ else {
173
+ const range = selected_date;
174
+ // For range mode, we need to handle the selection differently
175
+ // The Calendar component in range mode will provide { from, to }
176
+ const new_range = {
177
+ from: date_to_iso_string(range.from),
178
+ to: date_to_iso_string(range.to),
179
+ };
180
+ onChange(new_range);
181
+ // Close popover when both dates are selected
182
+ if (range.from && range.to) {
183
+ set_popover_open(false);
184
+ }
185
+ }
186
+ }, [date_mode, onChange]);
187
+ /**
188
+ * Get display text for the date picker button
189
+ */
190
+ const get_button_text = React.useMemo(() => {
191
+ if (date_mode === 'single') {
192
+ const date_str = value;
193
+ if (!date_str)
194
+ return placeholder || 'Pick a date';
195
+ return format_date_display(date_str);
196
+ }
197
+ else {
198
+ const range_value = value;
199
+ if (!range_value || (!range_value.from && !range_value.to)) {
200
+ return placeholder || 'Pick a date range';
201
+ }
202
+ if (range_value.from && range_value.to) {
203
+ return `${format_date_display(range_value.from)} - ${format_date_display(range_value.to)}`;
204
+ }
205
+ if (range_value.from) {
206
+ return `${format_date_display(range_value.from)} - ...`;
207
+ }
208
+ return placeholder || 'Pick a date range';
209
+ }
210
+ }, [value, date_mode, placeholder]);
211
+ // Show loading state while components are loading
212
+ if (is_loading) {
213
+ return (_jsxs(CollabFormFieldContainer, { has_chat_messages: has_chat_messages, is_chat_active: is_chat_active, chat_background_color: chat_background_color, is_data_ok_default: is_data_ok_default, container_class_name: container_class_name, hazo_chat_is_open: chat_is_open, hazo_chat_receiver_user_id: hazo_chat_receiver_user_id, recipient_user_id: recipient_user_id, hazo_chat_reference_id: hazo_chat_reference_id, hazo_chat_reference_type: hazo_chat_reference_type, hazo_chat_api_base_url: hazo_chat_api_base_url, hazo_chat_timezone: hazo_chat_timezone, hazo_chat_title: hazo_chat_title, hazo_chat_subtitle: hazo_chat_subtitle, hazo_chat_realtime_mode: hazo_chat_realtime_mode, hazo_chat_polling_interval: hazo_chat_polling_interval, hazo_chat_messages_per_page: hazo_chat_messages_per_page, hazo_chat_class_name: hazo_chat_class_name, hazo_chat_on_close: hazo_chat_on_close, hazo_chat_on_open_change: hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle: hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button: hazo_chat_show_delete_button, hazo_chat_bubble_radius: hazo_chat_bubble_radius, field_data_id: field_data_id, field_name: field_name, label: label, files: current_files, children: [_jsx(CollabFormFieldLabel, { field_id_final: field_id_final, label: label, label_class_name: label_class_name, required: required }), _jsx("div", { className: cn('cls_collab_date_wrapper flex items-center gap-2', date_wrapper_class_name), suppressHydrationWarning: true, children: _jsx("div", { className: cn(field_width_class_name || 'flex-1', field_width_class_name && 'flex-shrink-0'), children: _jsx("div", { className: "cls_collab_date_loading w-full h-9 rounded-md border border-input bg-muted animate-pulse" }) }) })] }));
214
+ }
215
+ // If components are not available, show fallback
216
+ if (!Components) {
217
+ return (_jsxs(CollabFormFieldContainer, { has_chat_messages: has_chat_messages, is_chat_active: is_chat_active, chat_background_color: chat_background_color, is_data_ok_default: is_data_ok_default, container_class_name: container_class_name, hazo_chat_is_open: chat_is_open, hazo_chat_receiver_user_id: hazo_chat_receiver_user_id, recipient_user_id: recipient_user_id, hazo_chat_reference_id: hazo_chat_reference_id, hazo_chat_reference_type: hazo_chat_reference_type, hazo_chat_api_base_url: hazo_chat_api_base_url, hazo_chat_timezone: hazo_chat_timezone, hazo_chat_title: hazo_chat_title, hazo_chat_subtitle: hazo_chat_subtitle, hazo_chat_realtime_mode: hazo_chat_realtime_mode, hazo_chat_polling_interval: hazo_chat_polling_interval, hazo_chat_messages_per_page: hazo_chat_messages_per_page, hazo_chat_class_name: hazo_chat_class_name, hazo_chat_on_close: hazo_chat_on_close, hazo_chat_on_open_change: hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle: hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button: hazo_chat_show_delete_button, hazo_chat_bubble_radius: hazo_chat_bubble_radius, field_data_id: field_data_id, field_name: field_name, label: label, files: current_files, children: [_jsx(CollabFormFieldLabel, { field_id_final: field_id_final, label: label, label_class_name: label_class_name, required: required }), _jsx("div", { className: cn('cls_collab_date_wrapper flex items-center gap-2', date_wrapper_class_name), suppressHydrationWarning: true, children: _jsx("div", { className: cn(field_width_class_name || 'flex-1', field_width_class_name && 'flex-shrink-0'), children: _jsx("div", { className: "cls_collab_date_fallback w-full h-9 rounded-md border border-destructive bg-transparent px-3 py-1 text-sm text-muted-foreground flex items-center", children: "Date picker components not available. Please install: npx shadcn@latest add popover calendar button" }) }) }), error && (_jsx(CollabFormFieldError, { field_id_final: field_id_final, error: error, error_class_name: error_class_name }))] }));
218
+ }
219
+ const { Popover, PopoverTrigger, PopoverContent, Calendar, Button, CalendarIcon } = Components;
220
+ return (_jsxs(CollabFormFieldContainer, { has_chat_messages: has_chat_messages, is_chat_active: is_chat_active, chat_background_color: chat_background_color, is_data_ok_default: is_data_ok_default, container_class_name: container_class_name, hazo_chat_is_open: chat_is_open, hazo_chat_receiver_user_id: hazo_chat_receiver_user_id, recipient_user_id: recipient_user_id, hazo_chat_reference_id: hazo_chat_reference_id, hazo_chat_reference_type: hazo_chat_reference_type, hazo_chat_api_base_url: hazo_chat_api_base_url, hazo_chat_timezone: hazo_chat_timezone, hazo_chat_title: hazo_chat_title, hazo_chat_subtitle: hazo_chat_subtitle, hazo_chat_realtime_mode: hazo_chat_realtime_mode, hazo_chat_polling_interval: hazo_chat_polling_interval, hazo_chat_messages_per_page: hazo_chat_messages_per_page, hazo_chat_class_name: hazo_chat_class_name, hazo_chat_on_close: hazo_chat_on_close, hazo_chat_on_open_change: hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle: hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button: hazo_chat_show_delete_button, hazo_chat_bubble_radius: hazo_chat_bubble_radius, field_data_id: field_data_id, field_name: field_name, label: label, files: current_files, children: [_jsx(CollabFormFieldLabel, { field_id_final: field_id_final, label: label, label_class_name: label_class_name, required: required }), _jsxs("div", { className: cn('cls_collab_date_wrapper flex items-center gap-2', date_wrapper_class_name), suppressHydrationWarning: true, children: [_jsx("div", { className: cn(field_width_class_name || 'flex-1', field_width_class_name && 'flex-shrink-0'), children: _jsxs(Popover, { open: popover_open, onOpenChange: set_popover_open, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { ref: component_ref, id: field_id_final, variant: "outline", disabled: is_field_disabled, className: cn('cls_collab_date_button w-full h-9 justify-start text-left font-normal', !value && 'text-muted-foreground', error && 'border-destructive focus-visible:ring-destructive'), "aria-invalid": error ? 'true' : 'false', "aria-describedby": error ? `${field_id_final}-error` : undefined, children: [_jsx(CalendarIcon, { className: "mr-2 h-4 w-4" }), get_button_text] }) }), _jsx(PopoverContent, { className: "w-auto p-0", align: "start", children: _jsx(Calendar, { mode: date_mode, selected: get_calendar_date, onSelect: handle_date_select, disabled: (date) => {
221
+ // Normalize date to midnight for accurate comparison
222
+ const normalized_date = new Date(date.getFullYear(), date.getMonth(), date.getDate());
223
+ // Check if date is before min_date
224
+ if (min_date_obj) {
225
+ const normalized_min = new Date(min_date_obj.getFullYear(), min_date_obj.getMonth(), min_date_obj.getDate());
226
+ if (normalized_date < normalized_min)
227
+ return true;
228
+ }
229
+ // Check if date is after max_date
230
+ if (max_date_obj) {
231
+ const normalized_max = new Date(max_date_obj.getFullYear(), max_date_obj.getMonth(), max_date_obj.getDate());
232
+ if (normalized_date > normalized_max)
233
+ return true;
234
+ }
235
+ // Check if date is in disabled_dates
236
+ if (disabled_dates_as_dates) {
237
+ const date_str = date_to_iso_string(date);
238
+ return disabled_dates_as_dates.some(d => date_to_iso_string(d) === date_str);
239
+ }
240
+ return false;
241
+ }, initialFocus: true }) })] }) }), !disable_data_ok && (_jsx(CollabFormDataOkCheckbox, { label: label, data_ok_checked: data_ok_checked, on_data_ok_change: on_data_ok_change, editable: data_ok_editable })), !disable_chat && (_jsx(CollabFormChatIcon, { label: label, error: error, on_click: handle_chat_icon_click, multi_state_radio: multi_state_radio, has_chat_messages: has_chat_messages, disabled: disable_chat, button_disabled: is_chat_disabled }))] }), _jsx(CollabFormFieldError, { field_id_final: field_id_final, error: error, error_class_name: error_class_name }), _jsx(CollabFormFileUploadSection, { field_id_final: field_id_final, accept_files: accept_files, files_dir: files_dir, max_size: max_size, min_files: min_files, max_files: max_files, file_accept: file_accept, file_processor: file_processor, files: current_files, on_files_change: (new_files) => {
242
+ if (controlled_files_prop === undefined) {
243
+ set_internal_files(new_files);
244
+ }
245
+ if (on_files_change) {
246
+ on_files_change(new_files);
247
+ }
248
+ }, component_ref: component_ref })] }));
249
+ });
250
+ HazoCollabFormDate.displayName = 'HazoCollabFormDate';
251
+ //# sourceMappingURL=hazo_collab_form_date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hazo_collab_form_date.js","sourceRoot":"","sources":["../../src/components/hazo_collab_form_date.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Collaboration form group component
3
+ * Groups multiple collab form fields together with a single data ok checkbox and chat icon at the group level
4
+ */
5
+ import React from 'react';
6
+ import { type CollabFormFieldBaseProps, type FileData } from './hazo_collab_form_base.js';
7
+ /**
8
+ * Props for the HazoCollabFormGroup component
9
+ */
10
+ export interface HazoCollabFormGroupProps extends CollabFormFieldBaseProps {
11
+ /**
12
+ * Child form fields to group together
13
+ */
14
+ children: React.ReactNode;
15
+ /**
16
+ * Custom className for the group wrapper
17
+ */
18
+ group_wrapper_class_name?: string;
19
+ /**
20
+ * Whether to disable the border/frame around the group
21
+ * Default: false (border is shown by default)
22
+ */
23
+ disable_border?: boolean;
24
+ }
25
+ /**
26
+ * Exposed methods for HazoCollabFormGroup
27
+ */
28
+ export interface HazoCollabFormGroupRef {
29
+ /**
30
+ * Get the current files data
31
+ * Returns array of FileData objects
32
+ */
33
+ get_file_data: () => FileData[];
34
+ }
35
+ /**
36
+ * Collaboration form group component
37
+ * Groups multiple collab form fields together with group-level data ok checkbox and chat icon
38
+ */
39
+ export declare const HazoCollabFormGroup: React.ForwardRefExoticComponent<HazoCollabFormGroupProps & React.RefAttributes<HTMLDivElement & HazoCollabFormGroupRef>>;
40
+ //# sourceMappingURL=hazo_collab_form_group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hazo_collab_form_group.d.ts","sourceRoot":"","sources":["../../src/components/hazo_collab_form_group.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAQL,KAAK,wBAAwB,EAC7B,KAAK,QAAQ,EACd,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAkGD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,aAAa,EAAE,MAAM,QAAQ,EAAE,CAAC;CACjC;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,0HAmN9B,CAAC"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Collaboration form group component
3
+ * Groups multiple collab form fields together with a single data ok checkbox and chat icon at the group level
4
+ */
5
+ 'use client';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ import React from 'react';
8
+ import { cn } from '../utils/cn.js';
9
+ import { use_collab_form_field, CollabFormFieldContainer, CollabFormFieldLabel, CollabFormChatIcon, CollabFormFieldError, CollabFormDataOkCheckbox, CollabFormFileUploadSection, } from './hazo_collab_form_base.js';
10
+ /**
11
+ * List of collab form component display names to identify them
12
+ */
13
+ const COLLAB_FORM_COMPONENT_NAMES = [
14
+ 'HazoCollabFormInputbox',
15
+ 'HazoCollabFormTextArea',
16
+ 'HazoCollabFormCheckbox',
17
+ 'HazoCollabFormCombo',
18
+ 'HazoCollabFormRadio',
19
+ ];
20
+ /**
21
+ * Check if a React element is a collab form component
22
+ */
23
+ function is_collab_form_component(element) {
24
+ if (!element || typeof element !== 'object') {
25
+ return false;
26
+ }
27
+ const element_type = element.type;
28
+ // Helper function to check displayName
29
+ const check_display_name = (type_to_check) => {
30
+ if (!type_to_check)
31
+ return false;
32
+ // Check displayName directly
33
+ if (type_to_check.displayName) {
34
+ if (COLLAB_FORM_COMPONENT_NAMES.includes(type_to_check.displayName)) {
35
+ return true;
36
+ }
37
+ // Also check if it starts with "HazoCollabForm" as a fallback
38
+ if (type_to_check.displayName.startsWith('HazoCollabForm')) {
39
+ return true;
40
+ }
41
+ }
42
+ // Check render.displayName for forwardRef components
43
+ if (type_to_check.render && type_to_check.render.displayName) {
44
+ if (COLLAB_FORM_COMPONENT_NAMES.includes(type_to_check.render.displayName)) {
45
+ return true;
46
+ }
47
+ // Also check if it starts with "HazoCollabForm" as a fallback
48
+ if (type_to_check.render.displayName.startsWith('HazoCollabForm')) {
49
+ return true;
50
+ }
51
+ }
52
+ return false;
53
+ };
54
+ // Check if it's a forwardRef component (object with render function)
55
+ if (element_type && typeof element_type === 'object' && element_type !== null) {
56
+ if (check_display_name(element_type)) {
57
+ return true;
58
+ }
59
+ }
60
+ // Check if it's a regular function component
61
+ if (element_type && typeof element_type === 'function') {
62
+ if (check_display_name(element_type)) {
63
+ return true;
64
+ }
65
+ }
66
+ // Fallback: Check props to see if it has collab form component props
67
+ // This is a more lenient check - if it has the base props, assume it's a collab form component
68
+ if (element.props) {
69
+ const has_label = typeof element.props.label === 'string';
70
+ // Check for any collab form component indicators
71
+ const has_collab_value = element.props.value !== undefined ||
72
+ element.props.checked !== undefined ||
73
+ element.props.options !== undefined;
74
+ const has_collab_callbacks = element.props.onChange !== undefined;
75
+ // Also check for common collab form props
76
+ const has_collab_props = element.props.field_id !== undefined ||
77
+ element.props.field_data_id !== undefined ||
78
+ element.props.field_name !== undefined ||
79
+ element.props.disable_data_ok !== undefined ||
80
+ element.props.disable_chat !== undefined;
81
+ // If it has a label and any collab form indicators, treat it as a collab form component
82
+ // Very lenient: if it has a label and onChange, it's likely a collab form component
83
+ if (has_label && (has_collab_value || has_collab_callbacks || has_collab_props || element.props.onChange)) {
84
+ return true;
85
+ }
86
+ }
87
+ return false;
88
+ }
89
+ /**
90
+ * Collaboration form group component
91
+ * Groups multiple collab form fields together with group-level data ok checkbox and chat icon
92
+ */
93
+ export const HazoCollabFormGroup = React.forwardRef((props, ref) => {
94
+ // Create internal ref for component reference (for file_processor)
95
+ const component_ref = React.useRef(null);
96
+ const [internal_files, set_internal_files] = React.useState([]);
97
+ // Use controlled files if provided, otherwise use internal state
98
+ const current_files = props.files !== undefined ? props.files : internal_files;
99
+ // Expose get_file_data method and forward ref to div element
100
+ React.useImperativeHandle(ref, () => {
101
+ return {
102
+ ...component_ref.current,
103
+ get_file_data: () => current_files,
104
+ };
105
+ }, [current_files]);
106
+ const { label, error, field_id, field_data_id, field_name, children, on_chat_click, has_chat_messages, is_chat_active, chat_background_color = 'bg-muted', is_data_ok_default, container_class_name, label_class_name, group_wrapper_class_name, error_class_name, multi_state_radio, data_ok_checked, on_data_ok_change, data_ok_editable, disable_border = false, accept_files, files_dir, max_size, min_files, max_files, file_accept, file_processor, files: controlled_files, on_files_change, id,
107
+ // HazoChat props
108
+ hazo_chat_receiver_user_id, recipient_user_id, hazo_chat_reference_id, hazo_chat_reference_type, hazo_chat_api_base_url, hazo_chat_timezone, hazo_chat_title, hazo_chat_subtitle, hazo_chat_realtime_mode, hazo_chat_polling_interval, hazo_chat_messages_per_page, hazo_chat_class_name, hazo_chat_on_close, hazo_chat_is_open, hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button, hazo_chat_bubble_radius, } = props;
109
+ const { field_id_final, handle_chat_icon_click, chat_is_open } = use_collab_form_field({
110
+ label,
111
+ field_id,
112
+ id,
113
+ field_data_id,
114
+ field_name,
115
+ on_chat_click,
116
+ hazo_chat_receiver_user_id,
117
+ recipient_user_id,
118
+ hazo_chat_on_open_change,
119
+ hazo_chat_is_open,
120
+ });
121
+ /**
122
+ * Clone children and add disable_data_ok and disable_chat props to collab form components
123
+ */
124
+ const cloned_children = React.Children.map(children, (child) => {
125
+ if (!React.isValidElement(child)) {
126
+ return child;
127
+ }
128
+ // Check if this child is a collab form component
129
+ if (is_collab_form_component(child)) {
130
+ // Clone the element and add disable props
131
+ // Merge with existing props to ensure we don't override important props
132
+ return React.cloneElement(child, {
133
+ ...child.props,
134
+ disable_data_ok: true,
135
+ disable_chat: true,
136
+ });
137
+ }
138
+ // If not a collab form component, return as-is
139
+ return child;
140
+ });
141
+ return (_jsxs("div", { className: "cls_collab_group_root space-y-2", ref: component_ref, children: [_jsxs("div", { className: "cls_collab_group_label_row flex items-center justify-between gap-2", children: [_jsx(CollabFormFieldLabel, { field_id_final: field_id_final, label: label, label_class_name: label_class_name }), _jsxs("div", { className: "cls_collab_group_actions flex items-center gap-2 flex-shrink-0", suppressHydrationWarning: true, children: [_jsx(CollabFormDataOkCheckbox, { label: label, data_ok_checked: data_ok_checked, on_data_ok_change: on_data_ok_change, editable: data_ok_editable }), _jsx(CollabFormChatIcon, { label: label, error: error, on_click: handle_chat_icon_click, multi_state_radio: multi_state_radio, has_chat_messages: has_chat_messages })] })] }), _jsxs(CollabFormFieldContainer, { has_chat_messages: has_chat_messages, is_chat_active: is_chat_active, chat_background_color: chat_background_color, is_data_ok_default: is_data_ok_default, container_class_name: cn(!disable_border && 'border border-input rounded-md p-4', container_class_name), hazo_chat_is_open: chat_is_open, hazo_chat_receiver_user_id: hazo_chat_receiver_user_id, recipient_user_id: recipient_user_id, hazo_chat_reference_id: hazo_chat_reference_id, hazo_chat_reference_type: hazo_chat_reference_type, hazo_chat_api_base_url: hazo_chat_api_base_url, hazo_chat_timezone: hazo_chat_timezone, hazo_chat_title: hazo_chat_title, hazo_chat_subtitle: hazo_chat_subtitle, hazo_chat_realtime_mode: hazo_chat_realtime_mode, hazo_chat_polling_interval: hazo_chat_polling_interval, hazo_chat_messages_per_page: hazo_chat_messages_per_page, hazo_chat_class_name: hazo_chat_class_name, hazo_chat_on_close: hazo_chat_on_close, hazo_chat_on_open_change: hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle: hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button: hazo_chat_show_delete_button, hazo_chat_bubble_radius: hazo_chat_bubble_radius, field_data_id: field_data_id, field_name: field_name, label: label, files: current_files, children: [_jsx("div", { className: cn('cls_collab_group_wrapper space-y-2', group_wrapper_class_name), children: cloned_children }), _jsx(CollabFormFieldError, { field_id_final: field_id_final, error: error, error_class_name: error_class_name }), _jsx(CollabFormFileUploadSection, { field_id_final: field_id_final, accept_files: accept_files, files_dir: files_dir, max_size: max_size, min_files: min_files, max_files: max_files, file_accept: file_accept, file_processor: file_processor, files: current_files, on_files_change: (new_files) => {
142
+ if (controlled_files === undefined) {
143
+ set_internal_files(new_files);
144
+ }
145
+ if (on_files_change) {
146
+ on_files_change(new_files);
147
+ }
148
+ }, component_ref: component_ref })] })] }));
149
+ });
150
+ HazoCollabFormGroup.displayName = 'HazoCollabFormGroup';
151
+ //# sourceMappingURL=hazo_collab_form_group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hazo_collab_form_group.js","sourceRoot":"","sources":["../../src/components/hazo_collab_form_group.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Collaboration form input box component
3
+ * Provides a reusable input field with label, error message, and chat icon functionality
4
+ */
5
+ import React from 'react';
6
+ import { type HazoUiFlexInputProps } from 'hazo_ui';
7
+ import { type CollabFormFieldBaseProps, type FileData } from './hazo_collab_form_base.js';
8
+ /**
9
+ * Props for the HazoCollabFormInputbox component
10
+ */
11
+ export interface HazoCollabFormInputboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange' | 'type'>, CollabFormFieldBaseProps, Pick<HazoUiFlexInputProps, 'input_type' | 'text_len_min' | 'text_len_max' | 'num_min' | 'num_max' | 'regex' | 'num_decimals' | 'format_guide' | 'format_guide_info'> {
12
+ /**
13
+ * Current value of the input
14
+ */
15
+ value: string;
16
+ /**
17
+ * Callback when input value changes
18
+ */
19
+ onChange: (value: string) => void;
20
+ /**
21
+ * Additional context data for chat functionality
22
+ */
23
+ additional_context?: Record<string, unknown>;
24
+ /**
25
+ * Custom className for the input wrapper
26
+ */
27
+ input_wrapper_class_name?: string;
28
+ }
29
+ /**
30
+ * Exposed methods for HazoCollabFormInputbox
31
+ */
32
+ export interface HazoCollabFormInputboxRef {
33
+ /**
34
+ * Get the current files data
35
+ * Returns array of FileData objects
36
+ */
37
+ get_file_data: () => FileData[];
38
+ }
39
+ /**
40
+ * Collaboration form input box component
41
+ * Displays a labeled input field with error message and chat icon
42
+ */
43
+ export declare const HazoCollabFormInputbox: React.ForwardRefExoticComponent<HazoCollabFormInputboxProps & React.RefAttributes<HTMLInputElement & HazoCollabFormInputboxRef>>;
44
+ //# sourceMappingURL=hazo_collab_form_inputbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hazo_collab_form_inputbox.d.ts","sourceRoot":"","sources":["../../src/components/hazo_collab_form_inputbox.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,EAQL,KAAK,wBAAwB,EAC7B,KAAK,QAAQ,EACd,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,2BACf,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC,EACtF,wBAAwB,EACxB,IAAI,CAAC,oBAAoB,EAAE,YAAY,GAAG,cAAc,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,cAAc,GAAG,cAAc,GAAG,mBAAmB,CAAC;IACtK;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAElC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE7C;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,aAAa,EAAE,MAAM,QAAQ,EAAE,CAAC;CACjC;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,kIAgPjC,CAAC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Collaboration form input box component
3
+ * Provides a reusable input field with label, error message, and chat icon functionality
4
+ */
5
+ 'use client';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ import React from 'react';
8
+ import { HazoUiFlexInput } from 'hazo_ui';
9
+ import { cn } from '../utils/cn.js';
10
+ import { use_collab_form_field, CollabFormFieldContainer, CollabFormFieldLabel, CollabFormChatIcon, CollabFormFieldError, CollabFormDataOkCheckbox, CollabFormFileUploadSection, } from './hazo_collab_form_base.js';
11
+ /**
12
+ * Collaboration form input box component
13
+ * Displays a labeled input field with error message and chat icon
14
+ */
15
+ export const HazoCollabFormInputbox = React.forwardRef((props, ref) => {
16
+ // Create internal ref for component reference (for file_processor)
17
+ const component_ref = React.useRef(null);
18
+ const [internal_files, set_internal_files] = React.useState([]);
19
+ // Use controlled files if provided, otherwise use internal state
20
+ const current_files = props.files !== undefined ? props.files : internal_files;
21
+ // Expose get_file_data method and forward ref to input element
22
+ React.useImperativeHandle(ref, () => {
23
+ return {
24
+ ...component_ref.current,
25
+ get_file_data: () => current_files,
26
+ };
27
+ }, [current_files]);
28
+ const { label, error, field_id, field_data_id, field_name, value, onChange, additional_context, on_chat_click, has_chat_messages, is_chat_active, chat_background_color = 'bg-muted', is_data_ok_default, container_class_name, label_class_name, input_wrapper_class_name, error_class_name, field_width_class_name, required, multi_state_radio, data_ok_checked, on_data_ok_change, data_ok_editable, disable_data_ok, disable_chat, accept_files, files_dir, max_size, min_files, max_files, file_accept, file_processor, files: controlled_files_prop, on_files_change, className, id,
29
+ // HazoChat props
30
+ hazo_chat_receiver_user_id, recipient_user_id, hazo_chat_reference_id, hazo_chat_reference_type, hazo_chat_api_base_url, hazo_chat_timezone, hazo_chat_title, hazo_chat_subtitle, hazo_chat_realtime_mode, hazo_chat_polling_interval, hazo_chat_messages_per_page, hazo_chat_class_name, hazo_chat_on_close, hazo_chat_is_open, hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button, hazo_chat_bubble_radius,
31
+ // HazoUiFlexInput validation props
32
+ input_type, text_len_min, text_len_max, num_min, num_max, regex, num_decimals, format_guide, format_guide_info, ...input_props } = props;
33
+ const { field_id_final, handle_chat_icon_click, chat_is_open, is_chat_disabled } = use_collab_form_field({
34
+ label,
35
+ field_id,
36
+ id,
37
+ field_data_id,
38
+ field_name,
39
+ on_chat_click,
40
+ hazo_chat_receiver_user_id,
41
+ recipient_user_id,
42
+ hazo_chat_on_open_change,
43
+ hazo_chat_is_open,
44
+ });
45
+ // Determine if field should be disabled when chat is active
46
+ // Use is_chat_active if provided, otherwise use chat_is_open
47
+ const is_field_disabled = is_chat_active !== undefined ? is_chat_active : chat_is_open;
48
+ /**
49
+ * Handle input change event
50
+ */
51
+ const handle_change = (e) => {
52
+ onChange(e.target.value);
53
+ };
54
+ return (_jsxs(CollabFormFieldContainer, { has_chat_messages: has_chat_messages, is_chat_active: is_chat_active, chat_background_color: chat_background_color, is_data_ok_default: is_data_ok_default, container_class_name: container_class_name, hazo_chat_is_open: chat_is_open, hazo_chat_receiver_user_id: hazo_chat_receiver_user_id, recipient_user_id: recipient_user_id, hazo_chat_reference_id: hazo_chat_reference_id, hazo_chat_reference_type: hazo_chat_reference_type, hazo_chat_api_base_url: hazo_chat_api_base_url, hazo_chat_timezone: hazo_chat_timezone, hazo_chat_title: hazo_chat_title, hazo_chat_subtitle: hazo_chat_subtitle, hazo_chat_realtime_mode: hazo_chat_realtime_mode, hazo_chat_polling_interval: hazo_chat_polling_interval, hazo_chat_messages_per_page: hazo_chat_messages_per_page, hazo_chat_class_name: hazo_chat_class_name, hazo_chat_on_close: hazo_chat_on_close, hazo_chat_on_open_change: hazo_chat_on_open_change, hazo_chat_show_sidebar_toggle: hazo_chat_show_sidebar_toggle, hazo_chat_show_delete_button: hazo_chat_show_delete_button, hazo_chat_bubble_radius: hazo_chat_bubble_radius, field_data_id: field_data_id, field_name: field_name, label: label, files: current_files, children: [_jsx(CollabFormFieldLabel, { field_id_final: field_id_final, label: label, label_class_name: label_class_name, required: required }), _jsxs("div", { className: cn('cls_collab_input_wrapper flex items-center gap-2', input_wrapper_class_name), suppressHydrationWarning: true, children: [_jsx("div", { className: cn(field_width_class_name || 'flex-1', field_width_class_name && 'flex-shrink-0'), children: _jsx(HazoUiFlexInput, { ref: component_ref, id: field_id_final, value: value, onChange: handle_change, disabled: is_field_disabled, className: cn('cls_collab_input w-full h-9 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm', error && 'border-destructive focus-visible:ring-destructive', className), "aria-invalid": error ? 'true' : 'false', "aria-describedby": error ? `${field_id_final}-error` : undefined, input_type: input_type, text_len_min: text_len_min, text_len_max: text_len_max, num_min: num_min, num_max: num_max, regex: regex, num_decimals: num_decimals, format_guide: format_guide, format_guide_info: format_guide_info, ...input_props }) }), !disable_data_ok && (_jsx(CollabFormDataOkCheckbox, { label: label, data_ok_checked: data_ok_checked, on_data_ok_change: on_data_ok_change, editable: data_ok_editable })), !disable_chat && (_jsx(CollabFormChatIcon, { label: label, error: error, on_click: handle_chat_icon_click, multi_state_radio: multi_state_radio, has_chat_messages: has_chat_messages, disabled: disable_chat, button_disabled: is_chat_disabled }))] }), _jsx(CollabFormFieldError, { field_id_final: field_id_final, error: error, error_class_name: error_class_name }), _jsx(CollabFormFileUploadSection, { field_id_final: field_id_final, accept_files: accept_files, files_dir: files_dir, max_size: max_size, min_files: min_files, max_files: max_files, file_accept: file_accept, file_processor: file_processor, files: current_files, on_files_change: (new_files) => {
55
+ if (controlled_files_prop === undefined) {
56
+ set_internal_files(new_files);
57
+ }
58
+ if (on_files_change) {
59
+ on_files_change(new_files);
60
+ }
61
+ }, component_ref: component_ref })] }));
62
+ });
63
+ HazoCollabFormInputbox.displayName = 'HazoCollabFormInputbox';
64
+ //# sourceMappingURL=hazo_collab_form_inputbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hazo_collab_form_inputbox.js","sourceRoot":"","sources":["../../src/components/hazo_collab_form_inputbox.tsx"],"names":[],"mappings":"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"}