@povio/ui 3.3.0-rc.4 → 3.3.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 (63) hide show
  1. package/README.md +15 -1
  2. package/dist/components/Breadcrumbs/Breadcrumbs.js +55 -206
  3. package/dist/components/buttons/InlineIconButton/InlineIconButton.js +9 -34
  4. package/dist/components/buttons/shared/ButtonContent.js +22 -80
  5. package/dist/components/inputs/Checkbox/CheckboxCheckmark.js +10 -24
  6. package/dist/components/inputs/DateTime/DatePicker/DatePicker.js +93 -227
  7. package/dist/components/inputs/DateTime/DateRangePicker/DateRangePicker.js +84 -202
  8. package/dist/components/inputs/DateTime/DateTimePicker/DateTimePicker.js +60 -132
  9. package/dist/components/inputs/DateTime/shared/Calendar.js +139 -339
  10. package/dist/components/inputs/DateTime/shared/CalendarCell.js +114 -308
  11. package/dist/components/inputs/DateTime/shared/CalendarGrid.js +35 -150
  12. package/dist/components/inputs/DateTime/shared/CalendarHeader.js +95 -229
  13. package/dist/components/inputs/DateTime/shared/CalendarSelectHeader.js +115 -296
  14. package/dist/components/inputs/DateTime/shared/DateField.js +135 -306
  15. package/dist/components/inputs/DateTime/shared/DatePickerInput.js +140 -338
  16. package/dist/components/inputs/DateTime/shared/DateTimeDialogFooter.js +10 -59
  17. package/dist/components/inputs/File/FileUpload.js +1 -1
  18. package/dist/components/inputs/File/InputUpload.js +65 -261
  19. package/dist/components/inputs/File/shared/FileUploadContentEmpty.js +48 -180
  20. package/dist/components/inputs/File/shared/FileUploadContentError.js +95 -265
  21. package/dist/components/inputs/File/shared/FileUploadContentFilled.js +99 -261
  22. package/dist/components/inputs/File/shared/FileUploadContentLoading.js +56 -234
  23. package/dist/components/inputs/File/shared/ProgressBar.js +15 -102
  24. package/dist/components/inputs/FormField/FormField.js +34 -47
  25. package/dist/components/inputs/Input/NumberRangeInput/NumberRangeInput.js +75 -313
  26. package/dist/components/inputs/Selection/Autocomplete/Autocomplete.js +23 -83
  27. package/dist/components/inputs/Selection/Select/QuerySelect.js +30 -96
  28. package/dist/components/inputs/Selection/Select/Select.js +3 -3
  29. package/dist/components/inputs/Selection/shared/SelectInput.js +1 -0
  30. package/dist/components/inputs/Selection/shared/SelectListBox.js +51 -163
  31. package/dist/components/inputs/Selection/shared/useSelectItems.js +48 -108
  32. package/dist/components/inputs/Skeleton/InputFrame.js +177 -552
  33. package/dist/components/inputs/TextEditor/TextEditor.js +87 -389
  34. package/dist/components/inputs/shared/InputClear.js +24 -40
  35. package/dist/components/navigation/Accordion/Accordion.js +22 -69
  36. package/dist/components/navigation/Accordion/AccordionItem.js +41 -86
  37. package/dist/components/navigation/Stepper/Stepper.js +22 -67
  38. package/dist/components/overlays/ActionModal/ActionModal.js +35 -169
  39. package/dist/components/overlays/ResponsivePopover/ResponsivePopover.js +29 -110
  40. package/dist/components/shared/pagination/Pagination.js +22 -108
  41. package/dist/components/status/Alert/Alert.js +30 -97
  42. package/dist/components/table/InfiniteTable.js +16 -67
  43. package/dist/components/table/Table.d.ts +2 -8
  44. package/dist/components/table/Table.js +33 -55
  45. package/dist/components/text/Typography/Typography.js +8 -23
  46. package/dist/config/confirmation.context.js +1 -1
  47. package/dist/config/theme.context.js +45 -98
  48. package/dist/config/uiConfig.context.js +8 -39
  49. package/dist/config/uiOverrides.context.d.ts +0 -1
  50. package/dist/hooks/useDebounceCallback.js +17 -51
  51. package/dist/hooks/useFormAutosave.js +33 -120
  52. package/dist/hooks/useLongPressRepeat.js +20 -55
  53. package/dist/index.d.ts +0 -1
  54. package/dist/index.js +1 -2
  55. package/package.json +2 -2
  56. package/dist/components/inputs/FormField/formField.cva.d.ts +0 -11
  57. package/dist/components/inputs/FormField/formField.cva.js +0 -16
  58. package/dist/components/table/TableColumnFilterInput.d.ts +0 -9
  59. package/dist/components/table/TableColumnFilterInput.js +0 -108
  60. package/dist/components/table/TableColumnFilterPlaceholder.d.ts +0 -5
  61. package/dist/components/table/TableColumnFilterPlaceholder.js +0 -41
  62. package/dist/components/table/TableColumnFilterRow.d.ts +0 -16
  63. package/dist/components/table/TableColumnFilterRow.js +0 -68
@@ -8,13 +8,11 @@ import { FormField } from "../FormField/FormField.js";
8
8
  import { inputBaseDefinition, inputContentWrapperDefinition, inputSizeDefinition } from "../shared/input.cva.js";
9
9
  import { InputClear } from "../shared/InputClear.js";
10
10
  import { TooltipWrapper } from "../shared/TooltipWrapper.js";
11
- import { c } from "react/compiler-runtime";
12
11
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
13
12
  import { clsx } from "clsx";
14
13
  import { isValidElement, useId, useRef } from "react";
15
14
  //#region src/components/inputs/Skeleton/InputFrame.tsx
16
15
  var InputFrame = (props) => {
17
- const $ = c(203);
18
16
  const ui = UIConfig.useConfig();
19
17
  const inputBaseCva = UIOverrides.useCva("input.baseCva", inputBaseDefinition);
20
18
  const inputSizeCva = UIOverrides.useCva("input.sizeCva", inputSizeDefinition);
@@ -22,570 +20,200 @@ var InputFrame = (props) => {
22
20
  const typographyCva = UIOverrides.useCva("typography.cva", typographyDefinition);
23
21
  const generatedInputId = useId();
24
22
  const pendingStaticPressPointerIdRef = useRef(null);
25
- const { ref, children, formFieldRef, labelProps: labelPropsProp, headerProps, error, label, tooltipText, helperText, isRequired, rightContent, isDisabled, isHeaderHidden, hideLabel: hideLabelProp, headerClassName, errorClassName, className, leadingContent, leadingIcon, actionContent, actionContentPlacement: t0, trailingContent, trailingIcon, trailingAction, unit, isLoading, action, isClearable: isClearableProp, showClear, onStaticInteract, onStaticPress, staticPressTarget: t1, clearClassName, onClear, dataAttributes, typographySize, id: idProp, inputClassName, contentClassName, contentWrapperClassName, contentGroup: t2, contentAndTrailingClassName, wrapContentAndTrailing, wrapTrailingContent: t3, reserveTrailingContent, labelPlacement: t4, trailingClassName, onMouseEnter, onFocusCapture, variant: variantProp, as: asProp, size: sizeProp } = props;
26
- const actionContentPlacement = t0 === void 0 ? "content-wrapper" : t0;
27
- const staticPressTarget = t1 === void 0 ? "frame" : t1;
28
- const contentGroup = t2 === void 0 ? "input" : t2;
29
- const wrapTrailingContent = t3 === void 0 ? true : t3;
30
- const labelPlacement = t4 === void 0 ? "content-wrapper" : t4;
23
+ const { ref, children, formFieldRef, labelProps: labelPropsProp, headerProps, error, label, tooltipText, helperText, isRequired, rightContent, isDisabled, isHeaderHidden, hideLabel: hideLabelProp, headerClassName, errorClassName, className, leadingContent, leadingIcon, actionContent, actionContentPlacement = "content-wrapper", trailingContent, trailingIcon, trailingAction, unit, isLoading, action, isClearable: isClearableProp, showClear, onStaticInteract, onStaticPress, staticPressTarget = "frame", clearClassName, onClear, dataAttributes, typographySize, id: idProp, inputClassName, contentClassName, contentWrapperClassName, contentGroup = "input", contentAndTrailingClassName, wrapContentAndTrailing, wrapTrailingContent = true, reserveTrailingContent, labelPlacement = "content-wrapper", trailingClassName, onMouseEnter, onFocusCapture, variant: variantProp, as: asProp, size: sizeProp } = props;
31
24
  const as = asProp ?? ui.input.as;
32
25
  const size = sizeProp ?? ui.input.size;
33
26
  const variant = variantProp ?? ui.input.variant;
34
27
  const hideLabel = hideLabelProp ?? ui.input.hideLabel;
35
28
  const hasClear = !!(isClearableProp ?? ui.input.isClearable);
36
- let t5;
37
- if ($[0] !== leadingIcon) {
38
- t5 = leadingIcon && isValidElement(leadingIcon);
39
- $[0] = leadingIcon;
40
- $[1] = t5;
41
- } else t5 = $[1];
42
- const isLeadingIconElement = t5;
43
- let t6;
44
- if ($[2] !== trailingIcon) {
45
- t6 = trailingIcon && isValidElement(trailingIcon);
46
- $[2] = trailingIcon;
47
- $[3] = t6;
48
- } else t6 = $[3];
49
- const isTrailingIconElement = t6;
29
+ const isLeadingIconElement = leadingIcon && isValidElement(leadingIcon);
30
+ const isTrailingIconElement = trailingIcon && isValidElement(trailingIcon);
50
31
  const hasTrailingContent = reserveTrailingContent || hasClear || !!trailingContent || !!unit || !!isLoading || !!action || !!trailingIcon || !!trailingAction;
51
32
  const isTrailingInteractive = !!action || !!trailingAction || !!isTrailingIconElement || hasClear && !!showClear || !!trailingContent;
52
- let dataAttributeProps;
53
- let formFieldProps;
54
- let isInputContentGroup;
55
- let labelProps;
56
- let t10;
57
- let t11;
58
- let t12;
59
- let t13;
60
- let t14;
61
- let t15;
62
- let t16;
63
- let t7;
64
- let t8;
65
- let t9;
66
- if ($[4] !== actionContent || $[5] !== actionContentPlacement || $[6] !== as || $[7] !== children || $[8] !== className || $[9] !== contentClassName || $[10] !== contentGroup || $[11] !== contentWrapperClassName || $[12] !== dataAttributes || $[13] !== error || $[14] !== errorClassName || $[15] !== generatedInputId || $[16] !== headerClassName || $[17] !== headerProps || $[18] !== helperText || $[19] !== hideLabel || $[20] !== idProp || $[21] !== inputContentWrapperCva || $[22] !== inputSizeCva || $[23] !== isDisabled || $[24] !== isHeaderHidden || $[25] !== isLeadingIconElement || $[26] !== isRequired || $[27] !== label || $[28] !== labelPlacement || $[29] !== labelPropsProp || $[30] !== leadingContent || $[31] !== leadingIcon || $[32] !== rightContent || $[33] !== size || $[34] !== tooltipText || $[35] !== typographyCva || $[36] !== typographySize) {
67
- dataAttributeProps = getInputFrameDataAttributeProps(dataAttributes);
68
- const baseLabelProps = headerProps?.labelProps ?? labelPropsProp;
69
- const inputId = idProp ?? baseLabelProps?.htmlFor ?? `input-frame_${generatedInputId}`;
70
- let t17;
71
- if ($[51] !== baseLabelProps || $[52] !== inputId) {
72
- t17 = {
73
- ...baseLabelProps,
74
- htmlFor: inputId
75
- };
76
- $[51] = baseLabelProps;
77
- $[52] = inputId;
78
- $[53] = t17;
79
- } else t17 = $[53];
80
- labelProps = t17;
81
- const t18 = label ?? "";
82
- const t19 = isHeaderHidden || as === "inline" || as === "filter" || as === "floating";
83
- let t20;
84
- if ($[54] !== className || $[55] !== error || $[56] !== errorClassName || $[57] !== headerClassName || $[58] !== helperText || $[59] !== hideLabel || $[60] !== isDisabled || $[61] !== isRequired || $[62] !== rightContent || $[63] !== t18 || $[64] !== t19 || $[65] !== tooltipText) {
85
- t20 = {
86
- error,
87
- label: t18,
88
- tooltipText,
89
- helperText,
90
- isRequired,
91
- rightContent,
92
- isHeaderHidden: t19,
93
- hideLabel,
94
- isDisabled,
95
- headerClassName,
96
- errorClassName,
97
- className
98
- };
99
- $[54] = className;
100
- $[55] = error;
101
- $[56] = errorClassName;
102
- $[57] = headerClassName;
103
- $[58] = helperText;
104
- $[59] = hideLabel;
105
- $[60] = isDisabled;
106
- $[61] = isRequired;
107
- $[62] = rightContent;
108
- $[63] = t18;
109
- $[64] = t19;
110
- $[65] = tooltipText;
111
- $[66] = t20;
112
- } else t20 = $[66];
113
- formFieldProps = t20;
114
- let t21;
115
- if ($[67] !== headerClassName || $[68] !== headerProps || $[69] !== helperText || $[70] !== hideLabel || $[71] !== isDisabled || $[72] !== isHeaderHidden || $[73] !== isRequired || $[74] !== label || $[75] !== labelProps || $[76] !== rightContent || $[77] !== tooltipText) {
116
- t21 = headerProps ? {
117
- ...headerProps,
118
- labelProps
119
- } : {
120
- label: label ?? "",
121
- tooltipText,
122
- helperText,
123
- isRequired,
124
- rightContent,
125
- isHeaderHidden: hideLabel || isHeaderHidden,
126
- isDisabled,
127
- className: headerClassName,
128
- labelProps
129
- };
130
- $[67] = headerClassName;
131
- $[68] = headerProps;
132
- $[69] = helperText;
133
- $[70] = hideLabel;
134
- $[71] = isDisabled;
135
- $[72] = isHeaderHidden;
136
- $[73] = isRequired;
137
- $[74] = label;
138
- $[75] = labelProps;
139
- $[76] = rightContent;
140
- $[77] = tooltipText;
141
- $[78] = t21;
142
- } else t21 = $[78];
143
- const resolvedHeaderProps = t21;
144
- let t22;
145
- if ($[79] !== as) {
146
- t22 = as && ["filter", "floating"].includes(as);
147
- $[79] = as;
148
- $[80] = t22;
149
- } else t22 = $[80];
150
- const shouldRenderLabel = t22;
151
- let t23;
152
- if ($[81] !== as || $[82] !== resolvedHeaderProps || $[83] !== shouldRenderLabel || $[84] !== size) {
153
- t23 = shouldRenderLabel ? /* @__PURE__ */ jsx(FormFieldLabel, {
154
- as,
155
- size,
156
- ...resolvedHeaderProps
157
- }) : null;
158
- $[81] = as;
159
- $[82] = resolvedHeaderProps;
160
- $[83] = shouldRenderLabel;
161
- $[84] = size;
162
- $[85] = t23;
163
- } else t23 = $[85];
164
- const labelContent = t23;
165
- let t24;
166
- if ($[86] !== as || $[87] !== contentWrapperClassName || $[88] !== inputContentWrapperCva) {
167
- t24 = contentWrapperClassName ?? inputContentWrapperCva({ as });
168
- $[86] = as;
169
- $[87] = contentWrapperClassName;
170
- $[88] = inputContentWrapperCva;
171
- $[89] = t24;
172
- } else t24 = $[89];
173
- const resolvedContentWrapperClassName = t24;
174
- isInputContentGroup = contentGroup === "input";
175
- t11 = dataAttributeProps;
176
- const t25 = isInputContentGroup && inputFrameContentGroupClassNames.input;
177
- const t26 = contentGroup === "select" ? "flex-1" : "w-full";
178
- if ($[90] !== as || $[91] !== contentClassName || $[92] !== inputSizeCva || $[93] !== size || $[94] !== t25 || $[95] !== t26 || $[96] !== typographyCva || $[97] !== typographySize) {
179
- let t27;
180
- if ($[99] !== typographyCva || $[100] !== typographySize) {
181
- t27 = typographySize && typographyCva({ size: typographySize });
182
- $[99] = typographyCva;
183
- $[100] = typographySize;
184
- $[101] = t27;
185
- } else t27 = $[101];
186
- t12 = clsx(t25, "group/input-frame flex min-w-0 items-center gap-input-gap-input-text-to-elements", t26, inputSizeCva({
187
- size,
188
- as
189
- }), t27, contentClassName);
190
- $[90] = as;
191
- $[91] = contentClassName;
192
- $[92] = inputSizeCva;
193
- $[93] = size;
194
- $[94] = t25;
195
- $[95] = t26;
196
- $[96] = typographyCva;
197
- $[97] = typographySize;
198
- $[98] = t12;
199
- } else t12 = $[98];
200
- t13 = leadingContent;
201
- if ($[102] !== isLeadingIconElement || $[103] !== leadingIcon) {
202
- t14 = leadingIcon && /* @__PURE__ */ jsx("div", {
33
+ const dataAttributeProps = getInputFrameDataAttributeProps(dataAttributes);
34
+ const baseLabelProps = headerProps?.labelProps ?? labelPropsProp;
35
+ const inputId = idProp ?? baseLabelProps?.htmlFor ?? `input-frame_${generatedInputId}`;
36
+ const labelProps = {
37
+ ...baseLabelProps,
38
+ htmlFor: inputId
39
+ };
40
+ const formFieldProps = {
41
+ error,
42
+ label: label ?? "",
43
+ tooltipText,
44
+ helperText,
45
+ isRequired,
46
+ rightContent,
47
+ isHeaderHidden: isHeaderHidden || as === "inline" || as === "filter" || as === "floating",
48
+ hideLabel,
49
+ isDisabled,
50
+ headerClassName,
51
+ errorClassName,
52
+ className
53
+ };
54
+ const resolvedHeaderProps = headerProps ? {
55
+ ...headerProps,
56
+ labelProps
57
+ } : {
58
+ label: label ?? "",
59
+ tooltipText,
60
+ helperText,
61
+ isRequired,
62
+ rightContent,
63
+ isHeaderHidden: hideLabel || isHeaderHidden,
64
+ isDisabled,
65
+ className: headerClassName,
66
+ labelProps
67
+ };
68
+ const labelContent = as && ["filter", "floating"].includes(as) ? /* @__PURE__ */ jsx(FormFieldLabel, {
69
+ as,
70
+ size,
71
+ ...resolvedHeaderProps
72
+ }) : null;
73
+ const resolvedContentWrapperClassName = contentWrapperClassName ?? inputContentWrapperCva({ as });
74
+ const isInputContentGroup = contentGroup === "input";
75
+ const contentRow = /* @__PURE__ */ jsxs("div", {
76
+ ...dataAttributeProps,
77
+ className: clsx(isInputContentGroup && inputFrameContentGroupClassNames.input, "group/input-frame flex min-w-0 w-full items-center gap-input-gap-input-text-to-elements", inputSizeCva({
78
+ size,
79
+ as
80
+ }), typographySize && typographyCva({ size: typographySize }), contentClassName),
81
+ children: [
82
+ leadingContent,
83
+ leadingIcon && /* @__PURE__ */ jsx("div", {
203
84
  className: clsx(!isLeadingIconElement && "pointer-events-none"),
204
85
  children: renderIconVisual(leadingIcon)
205
- });
206
- $[102] = isLeadingIconElement;
207
- $[103] = leadingIcon;
208
- $[104] = t14;
209
- } else t14 = $[104];
210
- t15 = labelPlacement === "content-row" && labelContent;
211
- t16 = actionContentPlacement === "content-row" && actionContent;
212
- t7 = resolvedContentWrapperClassName;
213
- t8 = labelPlacement === "content-wrapper" && labelContent;
214
- t9 = actionContentPlacement === "content-wrapper" && actionContent;
215
- t10 = typeof children === "function" ? children({
216
- ...dataAttributeProps,
217
- id: inputId
218
- }) : children;
219
- $[4] = actionContent;
220
- $[5] = actionContentPlacement;
221
- $[6] = as;
222
- $[7] = children;
223
- $[8] = className;
224
- $[9] = contentClassName;
225
- $[10] = contentGroup;
226
- $[11] = contentWrapperClassName;
227
- $[12] = dataAttributes;
228
- $[13] = error;
229
- $[14] = errorClassName;
230
- $[15] = generatedInputId;
231
- $[16] = headerClassName;
232
- $[17] = headerProps;
233
- $[18] = helperText;
234
- $[19] = hideLabel;
235
- $[20] = idProp;
236
- $[21] = inputContentWrapperCva;
237
- $[22] = inputSizeCva;
238
- $[23] = isDisabled;
239
- $[24] = isHeaderHidden;
240
- $[25] = isLeadingIconElement;
241
- $[26] = isRequired;
242
- $[27] = label;
243
- $[28] = labelPlacement;
244
- $[29] = labelPropsProp;
245
- $[30] = leadingContent;
246
- $[31] = leadingIcon;
247
- $[32] = rightContent;
248
- $[33] = size;
249
- $[34] = tooltipText;
250
- $[35] = typographyCva;
251
- $[36] = typographySize;
252
- $[37] = dataAttributeProps;
253
- $[38] = formFieldProps;
254
- $[39] = isInputContentGroup;
255
- $[40] = labelProps;
256
- $[41] = t10;
257
- $[42] = t11;
258
- $[43] = t12;
259
- $[44] = t13;
260
- $[45] = t14;
261
- $[46] = t15;
262
- $[47] = t16;
263
- $[48] = t7;
264
- $[49] = t8;
265
- $[50] = t9;
266
- } else {
267
- dataAttributeProps = $[37];
268
- formFieldProps = $[38];
269
- isInputContentGroup = $[39];
270
- labelProps = $[40];
271
- t10 = $[41];
272
- t11 = $[42];
273
- t12 = $[43];
274
- t13 = $[44];
275
- t14 = $[45];
276
- t15 = $[46];
277
- t16 = $[47];
278
- t7 = $[48];
279
- t8 = $[49];
280
- t9 = $[50];
281
- }
282
- let t17;
283
- if ($[105] !== t10 || $[106] !== t7 || $[107] !== t8 || $[108] !== t9) {
284
- t17 = /* @__PURE__ */ jsxs("div", {
285
- className: t7,
286
- children: [
287
- t8,
288
- t9,
289
- t10
290
- ]
291
- });
292
- $[105] = t10;
293
- $[106] = t7;
294
- $[107] = t8;
295
- $[108] = t9;
296
- $[109] = t17;
297
- } else t17 = $[109];
298
- let t18;
299
- if ($[110] !== t11 || $[111] !== t12 || $[112] !== t13 || $[113] !== t14 || $[114] !== t15 || $[115] !== t16 || $[116] !== t17) {
300
- t18 = /* @__PURE__ */ jsxs("div", {
301
- ...t11,
302
- className: t12,
303
- children: [
304
- t13,
305
- t14,
306
- t15,
307
- t16,
308
- t17
309
- ]
310
- });
311
- $[110] = t11;
312
- $[111] = t12;
313
- $[112] = t13;
314
- $[113] = t14;
315
- $[114] = t15;
316
- $[115] = t16;
317
- $[116] = t17;
318
- $[117] = t18;
319
- } else t18 = $[117];
320
- const contentRow = t18;
321
- let t19;
322
- if ($[118] !== action || $[119] !== clearClassName || $[120] !== hasClear || $[121] !== hasTrailingContent || $[122] !== isDisabled || $[123] !== isLoading || $[124] !== onClear || $[125] !== onStaticPress || $[126] !== showClear || $[127] !== trailingAction || $[128] !== trailingContent || $[129] !== trailingIcon || $[130] !== typographyCva || $[131] !== unit) {
323
- t19 = hasTrailingContent ? /* @__PURE__ */ jsxs(Fragment, { children: [
324
- hasClear && /* @__PURE__ */ jsx(InputClear, {
325
- onClear: () => onClear?.(),
326
- className: clearClassName,
327
- show: !!showClear,
328
- renderStatic: true
329
- }),
330
- trailingContent,
331
- unit && /* @__PURE__ */ jsx("span", {
332
- className: typographyCva({
333
- size: "label-2",
334
- sizeMobile: "label-2",
335
- variant: "prominent-1",
336
- className: "text-text-default-3"
337
- }),
338
- children: unit
339
86
  }),
340
- isLoading && /* @__PURE__ */ jsx("div", {
341
- className: "inline-flex",
342
- children: /* @__PURE__ */ jsx(Loader, {})
87
+ labelPlacement === "content-row" && labelContent,
88
+ actionContentPlacement === "content-row" && actionContent,
89
+ /* @__PURE__ */ jsxs("div", {
90
+ className: resolvedContentWrapperClassName,
91
+ children: [
92
+ labelPlacement === "content-wrapper" && labelContent,
93
+ actionContentPlacement === "content-wrapper" && actionContent,
94
+ typeof children === "function" ? children({
95
+ ...dataAttributeProps,
96
+ id: inputId
97
+ }) : children
98
+ ]
99
+ })
100
+ ]
101
+ });
102
+ const trailingContentNodes = hasTrailingContent ? /* @__PURE__ */ jsxs(Fragment, { children: [
103
+ hasClear && /* @__PURE__ */ jsx(InputClear, {
104
+ onClear: () => onClear?.(),
105
+ className: clearClassName,
106
+ show: !!showClear,
107
+ renderStatic: true
108
+ }),
109
+ trailingContent,
110
+ unit && /* @__PURE__ */ jsx("span", {
111
+ className: typographyCva({
112
+ size: "label-2",
113
+ sizeMobile: "label-2",
114
+ variant: "prominent-1",
115
+ className: "text-text-default-3"
343
116
  }),
344
- !isLoading && action && /* @__PURE__ */ jsx(InlineIconButton, {
345
- color: "secondary",
346
- icon: action.icon,
347
- isDisabled,
348
- onPress: () => {
349
- if (onStaticPress) {
350
- onStaticPress();
351
- return;
352
- }
353
- action.onClick();
354
- },
355
- excludeFromTabOrder: true,
356
- label: action.altText,
357
- className: clsx("border-0!", action.className),
358
- "data-static-press-action": ""
359
- }),
360
- !isLoading && !action && trailingIcon && renderIconVisual(trailingIcon),
361
- trailingAction
362
- ] }) : null;
363
- $[118] = action;
364
- $[119] = clearClassName;
365
- $[120] = hasClear;
366
- $[121] = hasTrailingContent;
367
- $[122] = isDisabled;
368
- $[123] = isLoading;
369
- $[124] = onClear;
370
- $[125] = onStaticPress;
371
- $[126] = showClear;
372
- $[127] = trailingAction;
373
- $[128] = trailingContent;
374
- $[129] = trailingIcon;
375
- $[130] = typographyCva;
376
- $[131] = unit;
377
- $[132] = t19;
378
- } else t19 = $[132];
379
- const trailingContentNodes = t19;
380
- let t20;
381
- if ($[133] !== as || $[134] !== inputSizeCva || $[135] !== isDisabled || $[136] !== isTrailingInteractive || $[137] !== size || $[138] !== trailingClassName || $[139] !== trailingContentNodes || $[140] !== wrapTrailingContent) {
382
- t20 = wrapTrailingContent && trailingContentNodes ? /* @__PURE__ */ jsx("div", {
383
- className: clsx("flex items-center gap-input-gap-trailing-elements", inputSizeCva({
384
- size,
385
- as
386
- }), !isTrailingInteractive && "pointer-events-none", isDisabled && "text-interactive-text-secondary-disabled", trailingClassName),
387
- children: trailingContentNodes
388
- }) : trailingContentNodes;
389
- $[133] = as;
390
- $[134] = inputSizeCva;
391
- $[135] = isDisabled;
392
- $[136] = isTrailingInteractive;
393
- $[137] = size;
394
- $[138] = trailingClassName;
395
- $[139] = trailingContentNodes;
396
- $[140] = wrapTrailingContent;
397
- $[141] = t20;
398
- } else t20 = $[141];
399
- const trailingRow = t20;
400
- let t21;
401
- if ($[142] !== contentAndTrailingClassName || $[143] !== contentRow || $[144] !== trailingRow || $[145] !== wrapContentAndTrailing) {
402
- t21 = wrapContentAndTrailing ? /* @__PURE__ */ jsxs("div", {
403
- className: clsx("flex w-full items-center gap-input-gap-input-text-to-elements", contentAndTrailingClassName),
404
- children: [contentRow, trailingRow]
405
- }) : /* @__PURE__ */ jsxs(Fragment, { children: [contentRow, trailingRow] });
406
- $[142] = contentAndTrailingClassName;
407
- $[143] = contentRow;
408
- $[144] = trailingRow;
409
- $[145] = wrapContentAndTrailing;
410
- $[146] = t21;
411
- } else t21 = $[146];
412
- const inputFrameContent = t21;
413
- let t22;
414
- if ($[147] !== staticPressTarget) {
415
- t22 = (target) => staticPressTarget === "frame" || target instanceof Element && !!target.closest("[data-static-press-action]");
416
- $[147] = staticPressTarget;
417
- $[148] = t22;
418
- } else t22 = $[148];
419
- const shouldReplayStaticPress = t22;
420
- const isStaticPressActionTarget = _temp;
421
- const t23 = as === "inline" ? -1 : void 0;
422
- const t24 = as === "inline" ? -1 : void 0;
423
- let t25;
424
- if ($[149] !== onMouseEnter || $[150] !== onStaticInteract) {
425
- t25 = (event) => {
426
- onMouseEnter?.(event);
427
- if (isStaticPressActionTarget(event.target)) return;
428
- onStaticInteract?.(false, event.target);
429
- };
430
- $[149] = onMouseEnter;
431
- $[150] = onStaticInteract;
432
- $[151] = t25;
433
- } else t25 = $[151];
434
- let t26;
435
- if ($[152] !== onFocusCapture || $[153] !== onStaticInteract) {
436
- t26 = (event_0) => {
437
- onFocusCapture?.(event_0);
438
- if (pendingStaticPressPointerIdRef.current == null) onStaticInteract?.(true, event_0.target);
439
- };
440
- $[152] = onFocusCapture;
441
- $[153] = onStaticInteract;
442
- $[154] = t26;
443
- } else t26 = $[154];
444
- const t27 = !isInputContentGroup && inputFrameContentGroupClassNames[contentGroup];
445
- let t28;
446
- if ($[155] !== as || $[156] !== inputBaseCva || $[157] !== inputClassName || $[158] !== t27 || $[159] !== variant) {
447
- t28 = clsx("relative flex cursor-text has-disabled:cursor-default", t27, inputBaseCva({
448
- variant,
117
+ children: unit
118
+ }),
119
+ isLoading && /* @__PURE__ */ jsx("div", {
120
+ className: "inline-flex",
121
+ children: /* @__PURE__ */ jsx(Loader, {})
122
+ }),
123
+ !isLoading && action && /* @__PURE__ */ jsx(InlineIconButton, {
124
+ color: "secondary",
125
+ icon: action.icon,
126
+ isDisabled,
127
+ onPress: () => {
128
+ if (onStaticPress) {
129
+ onStaticPress();
130
+ return;
131
+ }
132
+ action.onClick();
133
+ },
134
+ excludeFromTabOrder: true,
135
+ label: action.altText,
136
+ className: clsx("border-0!", action.className),
137
+ "data-static-press-action": ""
138
+ }),
139
+ !isLoading && !action && trailingIcon && renderIconVisual(trailingIcon),
140
+ trailingAction
141
+ ] }) : null;
142
+ const trailingRow = wrapTrailingContent && trailingContentNodes ? /* @__PURE__ */ jsx("div", {
143
+ className: clsx("flex items-center gap-input-gap-trailing-elements", inputSizeCva({
144
+ size,
449
145
  as
450
- }), inputClassName);
451
- $[155] = as;
452
- $[156] = inputBaseCva;
453
- $[157] = inputClassName;
454
- $[158] = t27;
455
- $[159] = variant;
456
- $[160] = t28;
457
- } else t28 = $[160];
458
- const t29 = isDisabled ? -1 : 0;
459
- let t30;
460
- if ($[161] !== onStaticInteract) {
461
- t30 = (event_1) => {
462
- if (pendingStaticPressPointerIdRef.current == null) onStaticInteract?.(true, event_1.target);
463
- };
464
- $[161] = onStaticInteract;
465
- $[162] = t30;
466
- } else t30 = $[162];
467
- let t31;
468
- if ($[163] !== onStaticInteract || $[164] !== onStaticPress || $[165] !== shouldReplayStaticPress) {
469
- t31 = (event_2) => {
470
- if (onStaticPress && shouldReplayStaticPress(event_2.target)) {
471
- onStaticPress();
472
- return;
473
- }
474
- onStaticInteract?.(true, event_2.target);
475
- };
476
- $[163] = onStaticInteract;
477
- $[164] = onStaticPress;
478
- $[165] = shouldReplayStaticPress;
479
- $[166] = t31;
480
- } else t31 = $[166];
481
- let t32;
482
- if ($[167] !== onStaticPress || $[168] !== shouldReplayStaticPress) {
483
- t32 = (event_3) => {
484
- if (onStaticPress && shouldReplayStaticPress(event_3.target) || isStaticPressActionTarget(event_3.target)) pendingStaticPressPointerIdRef.current = event_3.pointerId;
485
- };
486
- $[167] = onStaticPress;
487
- $[168] = shouldReplayStaticPress;
488
- $[169] = t32;
489
- } else t32 = $[169];
490
- let t33;
491
- if ($[170] !== onStaticInteract || $[171] !== onStaticPress || $[172] !== shouldReplayStaticPress) {
492
- t33 = (event_4) => {
493
- if (pendingStaticPressPointerIdRef.current === event_4.pointerId) return;
494
- if (onStaticPress && shouldReplayStaticPress(event_4.target)) {
495
- pendingStaticPressPointerIdRef.current = event_4.pointerId;
496
- return;
497
- }
498
- onStaticInteract?.(true, event_4.target);
499
- };
500
- $[170] = onStaticInteract;
501
- $[171] = onStaticPress;
502
- $[172] = shouldReplayStaticPress;
503
- $[173] = t33;
504
- } else t33 = $[173];
505
- let t34;
506
- if ($[174] === Symbol.for("react.memo_cache_sentinel")) {
507
- t34 = (event_5) => {
508
- if (pendingStaticPressPointerIdRef.current === event_5.pointerId) pendingStaticPressPointerIdRef.current = null;
509
- };
510
- $[174] = t34;
511
- } else t34 = $[174];
512
- let t35;
513
- if ($[175] !== onStaticPress) {
514
- t35 = (event_6) => {
515
- if (pendingStaticPressPointerIdRef.current !== event_6.pointerId) return;
516
- pendingStaticPressPointerIdRef.current = null;
517
- onStaticPress?.();
518
- };
519
- $[175] = onStaticPress;
520
- $[176] = t35;
521
- } else t35 = $[176];
522
- let t36;
523
- if ($[177] !== dataAttributeProps || $[178] !== inputFrameContent || $[179] !== ref || $[180] !== t28 || $[181] !== t29 || $[182] !== t30 || $[183] !== t31 || $[184] !== t32 || $[185] !== t33 || $[186] !== t35) {
524
- t36 = /* @__PURE__ */ jsx("div", {
525
- ref,
526
- ...dataAttributeProps,
527
- className: t28,
528
- tabIndex: t29,
529
- onFocus: t30,
530
- onClick: t31,
531
- onPointerDownCapture: t32,
532
- onPointerDown: t33,
533
- onPointerCancel: t34,
534
- onPointerUp: t35,
535
- "data-rac": "",
536
- children: inputFrameContent
537
- });
538
- $[177] = dataAttributeProps;
539
- $[178] = inputFrameContent;
540
- $[179] = ref;
541
- $[180] = t28;
542
- $[181] = t29;
543
- $[182] = t30;
544
- $[183] = t31;
545
- $[184] = t32;
546
- $[185] = t33;
547
- $[186] = t35;
548
- $[187] = t36;
549
- } else t36 = $[187];
550
- let t37;
551
- if ($[188] !== as || $[189] !== dataAttributeProps || $[190] !== formFieldProps || $[191] !== formFieldRef || $[192] !== labelProps || $[193] !== t24 || $[194] !== t25 || $[195] !== t26 || $[196] !== t36) {
552
- t37 = /* @__PURE__ */ jsx(FormField, {
146
+ }), !isTrailingInteractive && "pointer-events-none", isDisabled && "text-interactive-text-secondary-disabled", trailingClassName),
147
+ children: trailingContentNodes
148
+ }) : trailingContentNodes;
149
+ const inputFrameContent = wrapContentAndTrailing ? /* @__PURE__ */ jsxs("div", {
150
+ className: clsx("flex w-full items-center gap-input-gap-input-text-to-elements", contentAndTrailingClassName),
151
+ children: [contentRow, trailingRow]
152
+ }) : /* @__PURE__ */ jsxs(Fragment, { children: [contentRow, trailingRow] });
153
+ const shouldReplayStaticPress = (target) => staticPressTarget === "frame" || target instanceof Element && !!target.closest("[data-static-press-action]");
154
+ const isStaticPressActionTarget = (target_0) => target_0 instanceof Element && !!target_0.closest("[data-static-press-action]");
155
+ return /* @__PURE__ */ jsx(TooltipWrapper, {
156
+ as,
157
+ error,
158
+ triggerTabIndex: as === "inline" ? -1 : void 0,
159
+ children: /* @__PURE__ */ jsx(FormField, {
553
160
  ...formFieldProps,
554
161
  ...dataAttributeProps,
555
162
  ref: formFieldRef,
556
163
  as,
557
164
  labelProps,
558
- tabIndex: t24,
559
- onMouseEnter: t25,
560
- onFocusCapture: t26,
561
- children: t36
562
- });
563
- $[188] = as;
564
- $[189] = dataAttributeProps;
565
- $[190] = formFieldProps;
566
- $[191] = formFieldRef;
567
- $[192] = labelProps;
568
- $[193] = t24;
569
- $[194] = t25;
570
- $[195] = t26;
571
- $[196] = t36;
572
- $[197] = t37;
573
- } else t37 = $[197];
574
- let t38;
575
- if ($[198] !== as || $[199] !== error || $[200] !== t23 || $[201] !== t37) {
576
- t38 = /* @__PURE__ */ jsx(TooltipWrapper, {
577
- as,
578
- error,
579
- triggerTabIndex: t23,
580
- children: t37
581
- });
582
- $[198] = as;
583
- $[199] = error;
584
- $[200] = t23;
585
- $[201] = t37;
586
- $[202] = t38;
587
- } else t38 = $[202];
588
- return t38;
165
+ tabIndex: as === "inline" ? -1 : void 0,
166
+ onMouseEnter: (event) => {
167
+ onMouseEnter?.(event);
168
+ if (isStaticPressActionTarget(event.target)) return;
169
+ onStaticInteract?.(false, event.target);
170
+ },
171
+ onFocusCapture: (event_0) => {
172
+ onFocusCapture?.(event_0);
173
+ if (pendingStaticPressPointerIdRef.current == null) onStaticInteract?.(true, event_0.target);
174
+ },
175
+ children: /* @__PURE__ */ jsx("div", {
176
+ ref,
177
+ ...dataAttributeProps,
178
+ className: clsx("relative flex cursor-text has-disabled:cursor-default", !isInputContentGroup && inputFrameContentGroupClassNames[contentGroup], inputBaseCva({
179
+ variant,
180
+ as
181
+ }), inputClassName),
182
+ tabIndex: isDisabled ? -1 : 0,
183
+ onFocus: (event_1) => {
184
+ if (pendingStaticPressPointerIdRef.current == null) onStaticInteract?.(true, event_1.target);
185
+ },
186
+ onClick: (event_2) => {
187
+ if (onStaticPress && shouldReplayStaticPress(event_2.target)) {
188
+ onStaticPress();
189
+ return;
190
+ }
191
+ onStaticInteract?.(true, event_2.target);
192
+ },
193
+ onPointerDownCapture: (event_3) => {
194
+ if (onStaticPress && shouldReplayStaticPress(event_3.target) || isStaticPressActionTarget(event_3.target)) pendingStaticPressPointerIdRef.current = event_3.pointerId;
195
+ },
196
+ onPointerDown: (event_4) => {
197
+ if (pendingStaticPressPointerIdRef.current === event_4.pointerId) return;
198
+ if (onStaticPress && shouldReplayStaticPress(event_4.target)) {
199
+ pendingStaticPressPointerIdRef.current = event_4.pointerId;
200
+ return;
201
+ }
202
+ onStaticInteract?.(true, event_4.target);
203
+ },
204
+ onPointerCancel: (event_5) => {
205
+ if (pendingStaticPressPointerIdRef.current === event_5.pointerId) pendingStaticPressPointerIdRef.current = null;
206
+ },
207
+ onPointerUp: (event_6) => {
208
+ if (pendingStaticPressPointerIdRef.current !== event_6.pointerId) return;
209
+ pendingStaticPressPointerIdRef.current = null;
210
+ onStaticPress?.();
211
+ },
212
+ "data-rac": "",
213
+ children: inputFrameContent
214
+ })
215
+ })
216
+ });
589
217
  };
590
218
  var inputFrameContentGroupClassNames = {
591
219
  "date-picker": "group/date-picker-content",
@@ -607,8 +235,5 @@ var getInputFrameDataAttributeProps = (dataAttributes) => ({
607
235
  "data-invalid": dataAttributes?.dataInvalid || void 0,
608
236
  "data-has-selection": dataAttributes?.dataHasSelection || void 0
609
237
  });
610
- function _temp(target_0) {
611
- return target_0 instanceof Element && !!target_0.closest("[data-static-press-action]");
612
- }
613
238
  //#endregion
614
239
  export { InputFrame };