@jobber/components 6.103.2-JOB-140609-fafe469.18 → 6.103.2-JOB-135467-8ed574a.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 (77) hide show
  1. package/dist/Autocomplete/Autocomplete.types.d.ts +1 -12
  2. package/dist/Autocomplete/index.cjs +12 -0
  3. package/dist/Autocomplete/index.mjs +12 -0
  4. package/dist/Button/Button.d.ts +757 -6
  5. package/dist/Button-cjs.js +15 -9
  6. package/dist/Button-es.js +16 -10
  7. package/dist/Checkbox/Checkbox.types.d.ts +9 -2
  8. package/dist/Checkbox/index.cjs +2 -3
  9. package/dist/Checkbox/index.mjs +2 -3
  10. package/dist/Chips/InternalChipDismissible/hooks/index.cjs +2 -2
  11. package/dist/Chips/InternalChipDismissible/hooks/index.mjs +2 -2
  12. package/dist/Chips/InternalChipDismissible/index.cjs +2 -2
  13. package/dist/Chips/InternalChipDismissible/index.mjs +2 -2
  14. package/dist/Chips/index.cjs +2 -2
  15. package/dist/Chips/index.mjs +2 -2
  16. package/dist/DataList/components/DataListSearch/index.cjs +12 -1
  17. package/dist/DataList/components/DataListSearch/index.mjs +12 -1
  18. package/dist/DataList/index.cjs +8 -0
  19. package/dist/DataList/index.mjs +8 -0
  20. package/dist/DataTable/index.cjs +2 -2
  21. package/dist/DataTable/index.mjs +2 -2
  22. package/dist/DatePicker/index.cjs +2 -2
  23. package/dist/DatePicker/index.mjs +2 -2
  24. package/dist/FormField/FormFieldTypes.d.ts +0 -195
  25. package/dist/FormField-cjs.js +1 -0
  26. package/dist/FormField-es.js +1 -1
  27. package/dist/InputDate/index.cjs +4 -8
  28. package/dist/InputDate/index.mjs +4 -8
  29. package/dist/InputDate/useInputDateActivatorActions.d.ts +2 -2
  30. package/dist/InputEmail/InputEmail.types.d.ts +21 -28
  31. package/dist/InputEmail/hooks/useInputEmailActions.d.ts +1 -1
  32. package/dist/InputEmail/hooks/useInputEmailFormField.d.ts +32 -0
  33. package/dist/InputEmail/index.cjs +45 -10
  34. package/dist/InputEmail/index.mjs +45 -10
  35. package/dist/InputNumber/InputNumber.rebuilt.types.d.ts +1 -30
  36. package/dist/InputNumber/index.cjs +2 -10
  37. package/dist/InputNumber/index.mjs +2 -10
  38. package/dist/InputPhoneNumber/InputPhoneNumber.types.d.ts +24 -25
  39. package/dist/InputPhoneNumber/hooks/useInputPhoneActions.d.ts +1 -1
  40. package/dist/InputPhoneNumber/hooks/useInputPhoneFormField.d.ts +71 -0
  41. package/dist/InputPhoneNumber/index.cjs +36 -24
  42. package/dist/InputPhoneNumber/index.mjs +36 -24
  43. package/dist/InputText/InputText.d.ts +2 -2
  44. package/dist/InputText/InputText.types.d.ts +24 -39
  45. package/dist/InputText/index.cjs +55 -26
  46. package/dist/InputText/index.mjs +56 -27
  47. package/dist/InputText/useInputTextActions.d.ts +1 -1
  48. package/dist/InputText/useInputTextFormField.d.ts +352 -0
  49. package/dist/InputTime/InputTime.rebuilt.d.ts +1 -1
  50. package/dist/InputTime/InputTime.types.d.ts +1 -29
  51. package/dist/InputTime/index.cjs +25 -32
  52. package/dist/InputTime/index.d.ts +1 -1
  53. package/dist/InputTime/index.mjs +27 -34
  54. package/dist/List/index.cjs +2 -2
  55. package/dist/List/index.mjs +2 -2
  56. package/dist/RecurringSelect/index.cjs +2 -2
  57. package/dist/RecurringSelect/index.mjs +2 -2
  58. package/dist/Select/Select.rebuilt.d.ts +1 -1
  59. package/dist/Select/Select.types.d.ts +1 -18
  60. package/dist/Select/hooks/useSelectActions.d.ts +5 -5
  61. package/dist/Select/hooks/useSelectFormField.d.ts +34 -0
  62. package/dist/Select/index.cjs +41 -27
  63. package/dist/Select/index.d.ts +5 -7
  64. package/dist/Select/index.mjs +43 -29
  65. package/dist/_baseEach-cjs.js +12 -12
  66. package/dist/_baseEach-es.js +1 -1
  67. package/dist/_baseFlatten-cjs.js +2 -2
  68. package/dist/_baseFlatten-es.js +1 -1
  69. package/dist/{_getAllKeys-cjs.js → _baseGet-cjs.js} +181 -181
  70. package/dist/{_getAllKeys-es.js → _baseGet-es.js} +182 -182
  71. package/dist/index.cjs +2 -2
  72. package/dist/index.mjs +2 -2
  73. package/dist/omit-cjs.js +14 -14
  74. package/dist/omit-es.js +1 -1
  75. package/dist/useScrollToActive-cjs.js +3 -3
  76. package/dist/useScrollToActive-es.js +1 -1
  77. package/package.json +2 -2
@@ -68,12 +68,7 @@ function ButtonLabel(_a) {
68
68
  return (React.createElement(Typography.Typography, Object.assign({ element: element, fontWeight: fontWeight, fontFamily: fontFamily, size: getTypeSizes(size) }, props)));
69
69
  }
70
70
 
71
- function Button(props) {
72
- const { size } = props;
73
- return (React.createElement(ButtonProvider, { size: size },
74
- React.createElement(ButtonWrapper, Object.assign({}, props))));
75
- }
76
- function ButtonWrapper(props) {
71
+ const ButtonWrapper = React.forwardRef((props, ref) => {
77
72
  const { ariaControls, ariaHaspopup, ariaExpanded, ariaLabel, disabled = false, external, id, name, onClick, onMouseDown, loading, role, value, submit, to, url, UNSAFE_className = {}, UNSAFE_style = {}, children, } = props;
78
73
  const { combined } = useButtonStyles(props);
79
74
  const buttonType = submit ? "submit" : "button";
@@ -85,11 +80,22 @@ function ButtonWrapper(props) {
85
80
  })), (url === undefined && to === undefined && { type: buttonType })), { "aria-controls": ariaControls, "aria-haspopup": ariaHaspopup, "aria-busy": loading, "aria-expanded": ariaExpanded, "aria-label": ariaLabel, role: role });
86
81
  const buttonInternals = children || React.createElement(ButtonContent, Object.assign({}, props));
87
82
  if (to) {
88
- return (React.createElement(reactRouterDom.Link, Object.assign({}, tagProps, { to: to }), buttonInternals));
83
+ return (React.createElement(reactRouterDom.Link, Object.assign({}, tagProps, { to: to, ref: ref }), buttonInternals));
89
84
  }
90
85
  const Tag = url ? "a" : "button";
91
- return React.createElement(Tag, Object.assign({}, tagProps), buttonInternals);
92
- }
86
+ // Use createElement for proper ref typing (similar to Chip component)
87
+ return React.createElement(Tag, Object.assign(Object.assign({}, tagProps), { ref }), buttonInternals);
88
+ });
89
+ ButtonWrapper.displayName = "ButtonWrapper";
90
+ const ButtonForwarded = React.forwardRef((props, ref) => {
91
+ const { size } = props;
92
+ return (React.createElement(ButtonProvider, { size: size },
93
+ React.createElement(ButtonWrapper, Object.assign({}, props, { ref: ref }))));
94
+ });
95
+ ButtonForwarded.displayName = "Button";
96
+ // Add function overloads for type-safe refs
97
+ const Button = ButtonForwarded;
98
+ // Attach namespace components (preserving existing API)
93
99
  Button.Label = ButtonLabel;
94
100
  Button.Icon = ButtonIcon;
95
101
 
package/dist/Button-es.js CHANGED
@@ -1,4 +1,4 @@
1
- import React__default, { createContext, useContext } from 'react';
1
+ import React__default, { createContext, useContext, forwardRef } from 'react';
2
2
  import { Link } from 'react-router-dom';
3
3
  import classnames from 'classnames';
4
4
  import { _ as __rest } from './tslib.es6-es.js';
@@ -66,12 +66,7 @@ function ButtonLabel(_a) {
66
66
  return (React__default.createElement(Typography, Object.assign({ element: element, fontWeight: fontWeight, fontFamily: fontFamily, size: getTypeSizes(size) }, props)));
67
67
  }
68
68
 
69
- function Button(props) {
70
- const { size } = props;
71
- return (React__default.createElement(ButtonProvider, { size: size },
72
- React__default.createElement(ButtonWrapper, Object.assign({}, props))));
73
- }
74
- function ButtonWrapper(props) {
69
+ const ButtonWrapper = forwardRef((props, ref) => {
75
70
  const { ariaControls, ariaHaspopup, ariaExpanded, ariaLabel, disabled = false, external, id, name, onClick, onMouseDown, loading, role, value, submit, to, url, UNSAFE_className = {}, UNSAFE_style = {}, children, } = props;
76
71
  const { combined } = useButtonStyles(props);
77
72
  const buttonType = submit ? "submit" : "button";
@@ -83,11 +78,22 @@ function ButtonWrapper(props) {
83
78
  })), (url === undefined && to === undefined && { type: buttonType })), { "aria-controls": ariaControls, "aria-haspopup": ariaHaspopup, "aria-busy": loading, "aria-expanded": ariaExpanded, "aria-label": ariaLabel, role: role });
84
79
  const buttonInternals = children || React__default.createElement(ButtonContent, Object.assign({}, props));
85
80
  if (to) {
86
- return (React__default.createElement(Link, Object.assign({}, tagProps, { to: to }), buttonInternals));
81
+ return (React__default.createElement(Link, Object.assign({}, tagProps, { to: to, ref: ref }), buttonInternals));
87
82
  }
88
83
  const Tag = url ? "a" : "button";
89
- return React__default.createElement(Tag, Object.assign({}, tagProps), buttonInternals);
90
- }
84
+ // Use createElement for proper ref typing (similar to Chip component)
85
+ return React__default.createElement(Tag, Object.assign(Object.assign({}, tagProps), { ref }), buttonInternals);
86
+ });
87
+ ButtonWrapper.displayName = "ButtonWrapper";
88
+ const ButtonForwarded = forwardRef((props, ref) => {
89
+ const { size } = props;
90
+ return (React__default.createElement(ButtonProvider, { size: size },
91
+ React__default.createElement(ButtonWrapper, Object.assign({}, props, { ref: ref }))));
92
+ });
93
+ ButtonForwarded.displayName = "Button";
94
+ // Add function overloads for type-safe refs
95
+ const Button = ButtonForwarded;
96
+ // Attach namespace components (preserving existing API)
91
97
  Button.Label = ButtonLabel;
92
98
  Button.Icon = ButtonIcon;
93
99
 
@@ -1,7 +1,6 @@
1
1
  import type { ReactElement, ReactNode } from "react";
2
2
  import type { XOR } from "ts-xor";
3
- import type { AriaInputProps, FocusEvents } from "../FormField/FormFieldTypes";
4
- export interface BaseCheckboxProps extends AriaInputProps, FocusEvents<HTMLInputElement> {
3
+ export interface BaseCheckboxProps {
5
4
  /**
6
5
  * Determines if the checkbox is checked or not.
7
6
  */
@@ -42,6 +41,14 @@ export interface BaseCheckboxProps extends AriaInputProps, FocusEvents<HTMLInput
42
41
  * Called when the checkbox value changes
43
42
  */
44
43
  onChange?(newValue: boolean): void;
44
+ /**
45
+ * Called when the checkbox is focused
46
+ */
47
+ onFocus?(event: React.FocusEvent<HTMLInputElement>): void;
48
+ /**
49
+ * Called when the checkbox loses focus
50
+ */
51
+ onBlur?(event: React.FocusEvent<HTMLInputElement>): void;
45
52
  /**
46
53
  * Whether the checkbox is invalid
47
54
  */
@@ -54,7 +54,7 @@ function CheckboxLegacy({ checked, defaultChecked, disabled, label, name, value,
54
54
  } }));
55
55
  }
56
56
 
57
- const CheckboxRebuilt = React.forwardRef(function CheckboxRebuiltInternal({ checked, defaultChecked, disabled, label, name, value, indeterminate = false, description, id, onBlur, onChange, onFocus, invalid, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, }, ref) {
57
+ const CheckboxRebuilt = React.forwardRef(function CheckboxRebuiltInternal({ checked, defaultChecked, disabled, label, name, value, indeterminate = false, description, id, onBlur, onChange, onFocus, invalid, }, ref) {
58
58
  const descriptionIdentifier = React.useId();
59
59
  const wrapperClassName = classnames(styles.wrapper, disabled && styles.disabled, invalid && styles.invalid);
60
60
  const inputClassName = classnames(styles.input, {
@@ -70,8 +70,7 @@ const CheckboxRebuilt = React.forwardRef(function CheckboxRebuiltInternal({ chec
70
70
  return (React.createElement("div", { className: styles.checkBoxParent },
71
71
  React.createElement("label", { className: wrapperClassName },
72
72
  React.createElement("span", { className: styles.checkHolder },
73
- React.createElement("input", { ref: ref, type: "checkbox", id: id, className: inputClassName, name: name, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy ||
74
- (description ? descriptionIdentifier : undefined), "aria-invalid": ariaInvalid, "aria-required": ariaRequired, checked: checked, value: value, defaultChecked: defaultChecked, disabled: disabled, onChange: handleChange, onFocus: onFocus, onBlur: onBlur }),
73
+ React.createElement("input", { ref: ref, type: "checkbox", id: id, className: inputClassName, name: name, "aria-describedby": description ? descriptionIdentifier : undefined, checked: checked, value: value, defaultChecked: defaultChecked, disabled: disabled, onChange: handleChange, onFocus: onFocus, onBlur: onBlur }),
75
74
  React.createElement("span", { className: styles.checkBox },
76
75
  React.createElement(Icon.Icon, { name: iconName, color: "surface" }))),
77
76
  labelContent && React.createElement("span", { className: styles.label }, labelContent)),
@@ -52,7 +52,7 @@ function CheckboxLegacy({ checked, defaultChecked, disabled, label, name, value,
52
52
  } }));
53
53
  }
54
54
 
55
- const CheckboxRebuilt = forwardRef(function CheckboxRebuiltInternal({ checked, defaultChecked, disabled, label, name, value, indeterminate = false, description, id, onBlur, onChange, onFocus, invalid, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, }, ref) {
55
+ const CheckboxRebuilt = forwardRef(function CheckboxRebuiltInternal({ checked, defaultChecked, disabled, label, name, value, indeterminate = false, description, id, onBlur, onChange, onFocus, invalid, }, ref) {
56
56
  const descriptionIdentifier = useId();
57
57
  const wrapperClassName = classnames(styles.wrapper, disabled && styles.disabled, invalid && styles.invalid);
58
58
  const inputClassName = classnames(styles.input, {
@@ -68,8 +68,7 @@ const CheckboxRebuilt = forwardRef(function CheckboxRebuiltInternal({ checked, d
68
68
  return (React__default.createElement("div", { className: styles.checkBoxParent },
69
69
  React__default.createElement("label", { className: wrapperClassName },
70
70
  React__default.createElement("span", { className: styles.checkHolder },
71
- React__default.createElement("input", { ref: ref, type: "checkbox", id: id, className: inputClassName, name: name, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy ||
72
- (description ? descriptionIdentifier : undefined), "aria-invalid": ariaInvalid, "aria-required": ariaRequired, checked: checked, value: value, defaultChecked: defaultChecked, disabled: disabled, onChange: handleChange, onFocus: onFocus, onBlur: onBlur }),
71
+ React__default.createElement("input", { ref: ref, type: "checkbox", id: id, className: inputClassName, name: name, "aria-describedby": description ? descriptionIdentifier : undefined, checked: checked, value: value, defaultChecked: defaultChecked, disabled: disabled, onChange: handleChange, onFocus: onFocus, onBlur: onBlur }),
73
72
  React__default.createElement("span", { className: styles.checkBox },
74
73
  React__default.createElement(Icon, { name: iconName, color: "surface" }))),
75
74
  labelContent && React__default.createElement("span", { className: styles.label }, labelContent)),
@@ -4,12 +4,12 @@ var useScrollToActive = require('../../../useScrollToActive-cjs.js');
4
4
  require('react');
5
5
  require('../../../_commonjsHelpers-cjs.js');
6
6
  require('../../../_baseFlatten-cjs.js');
7
- require('../../../_getAllKeys-cjs.js');
7
+ require('../../../_baseGet-cjs.js');
8
8
  require('../../../isTypedArray-cjs.js');
9
9
  require('../../../isObjectLike-cjs.js');
10
- require('../../../isSymbol-cjs.js');
11
10
  require('../../../identity-cjs.js');
12
11
  require('../../../_getTag-cjs.js');
12
+ require('../../../isSymbol-cjs.js');
13
13
  require('../../../_baseEach-cjs.js');
14
14
  require('../../../_baseFor-cjs.js');
15
15
  require('../../../_isIterateeCall-cjs.js');
@@ -2,12 +2,12 @@ export { b as useInView, u as useInternalChipDismissible, a as useInternalChipDi
2
2
  import 'react';
3
3
  import '../../../_commonjsHelpers-es.js';
4
4
  import '../../../_baseFlatten-es.js';
5
- import '../../../_getAllKeys-es.js';
5
+ import '../../../_baseGet-es.js';
6
6
  import '../../../isTypedArray-es.js';
7
7
  import '../../../isObjectLike-es.js';
8
- import '../../../isSymbol-es.js';
9
8
  import '../../../identity-es.js';
10
9
  import '../../../_getTag-es.js';
10
+ import '../../../isSymbol-es.js';
11
11
  import '../../../_baseEach-es.js';
12
12
  import '../../../_baseFor-es.js';
13
13
  import '../../../_isIterateeCall-es.js';
@@ -5,12 +5,12 @@ require('react');
5
5
  require('../../useScrollToActive-cjs.js');
6
6
  require('../../_commonjsHelpers-cjs.js');
7
7
  require('../../_baseFlatten-cjs.js');
8
- require('../../_getAllKeys-cjs.js');
8
+ require('../../_baseGet-cjs.js');
9
9
  require('../../isTypedArray-cjs.js');
10
10
  require('../../isObjectLike-cjs.js');
11
- require('../../isSymbol-cjs.js');
12
11
  require('../../identity-cjs.js');
13
12
  require('../../_getTag-cjs.js');
13
+ require('../../isSymbol-cjs.js');
14
14
  require('../../_baseEach-cjs.js');
15
15
  require('../../_baseFor-cjs.js');
16
16
  require('../../_isIterateeCall-cjs.js');
@@ -3,12 +3,12 @@ import 'react';
3
3
  import '../../useScrollToActive-es.js';
4
4
  import '../../_commonjsHelpers-es.js';
5
5
  import '../../_baseFlatten-es.js';
6
- import '../../_getAllKeys-es.js';
6
+ import '../../_baseGet-es.js';
7
7
  import '../../isTypedArray-es.js';
8
8
  import '../../isObjectLike-es.js';
9
- import '../../isSymbol-es.js';
10
9
  import '../../identity-es.js';
11
10
  import '../../_getTag-es.js';
11
+ import '../../isSymbol-es.js';
12
12
  import '../../_baseEach-es.js';
13
13
  import '../../_baseFor-es.js';
14
14
  import '../../_isIterateeCall-es.js';
@@ -7,12 +7,12 @@ var Chips = require('../Chips-cjs.js');
7
7
  require('../useScrollToActive-cjs.js');
8
8
  require('../_commonjsHelpers-cjs.js');
9
9
  require('../_baseFlatten-cjs.js');
10
- require('../_getAllKeys-cjs.js');
10
+ require('../_baseGet-cjs.js');
11
11
  require('../isTypedArray-cjs.js');
12
12
  require('../isObjectLike-cjs.js');
13
- require('../isSymbol-cjs.js');
14
13
  require('../identity-cjs.js');
15
14
  require('../_getTag-cjs.js');
15
+ require('../isSymbol-cjs.js');
16
16
  require('../_baseEach-cjs.js');
17
17
  require('../_baseFor-cjs.js');
18
18
  require('../_isIterateeCall-cjs.js');
@@ -5,12 +5,12 @@ export { C as Chips } from '../Chips-es.js';
5
5
  import '../useScrollToActive-es.js';
6
6
  import '../_commonjsHelpers-es.js';
7
7
  import '../_baseFlatten-es.js';
8
- import '../_getAllKeys-es.js';
8
+ import '../_baseGet-es.js';
9
9
  import '../isTypedArray-es.js';
10
10
  import '../isObjectLike-es.js';
11
- import '../isSymbol-es.js';
12
11
  import '../identity-es.js';
13
12
  import '../_getTag-es.js';
13
+ import '../isSymbol-es.js';
14
14
  import '../_baseEach-es.js';
15
15
  import '../_baseFor-es.js';
16
16
  import '../_isIterateeCall-es.js';
@@ -18,9 +18,20 @@ require('../../../useFormFieldFocus-cjs.js');
18
18
  require('../../../InputValidation-cjs.js');
19
19
  require('../../../Spinner-cjs.js');
20
20
  require('react-hook-form');
21
+ require('../../../omit-cjs.js');
22
+ require('../../../_commonjsHelpers-cjs.js');
23
+ require('../../../_baseGet-cjs.js');
24
+ require('../../../isTypedArray-cjs.js');
25
+ require('../../../isObjectLike-cjs.js');
26
+ require('../../../identity-cjs.js');
27
+ require('../../../_getTag-cjs.js');
28
+ require('../../../isSymbol-cjs.js');
29
+ require('../../../keysIn-cjs.js');
30
+ require('../../../_baseAssignValue-cjs.js');
31
+ require('../../../_baseFlatten-cjs.js');
32
+ require('../../../_setToString-cjs.js');
21
33
  require('../../../DataListContext-cjs.js');
22
34
  require('../../../noop-cjs.js');
23
- require('../../../_commonjsHelpers-cjs.js');
24
35
  require('../../../DataList.const-cjs.js');
25
36
  require('../../../AnimatedSwitcher-cjs.js');
26
37
 
@@ -16,8 +16,19 @@ import '../../../useFormFieldFocus-es.js';
16
16
  import '../../../InputValidation-es.js';
17
17
  import '../../../Spinner-es.js';
18
18
  import 'react-hook-form';
19
+ import '../../../omit-es.js';
20
+ import '../../../_commonjsHelpers-es.js';
21
+ import '../../../_baseGet-es.js';
22
+ import '../../../isTypedArray-es.js';
23
+ import '../../../isObjectLike-es.js';
24
+ import '../../../identity-es.js';
25
+ import '../../../_getTag-es.js';
26
+ import '../../../isSymbol-es.js';
27
+ import '../../../keysIn-es.js';
28
+ import '../../../_baseAssignValue-es.js';
29
+ import '../../../_baseFlatten-es.js';
30
+ import '../../../_setToString-es.js';
19
31
  import '../../../DataListContext-es.js';
20
32
  import '../../../noop-es.js';
21
- import '../../../_commonjsHelpers-es.js';
22
33
  import '../../../DataList.const-es.js';
23
34
  import '../../../AnimatedSwitcher-es.js';
@@ -81,6 +81,14 @@ require('../InputText/index.cjs');
81
81
  require('../FormField-cjs.js');
82
82
  require('../useFormFieldFocus-cjs.js');
83
83
  require('../InputValidation-cjs.js');
84
+ require('../omit-cjs.js');
85
+ require('../_baseGet-cjs.js');
86
+ require('../identity-cjs.js');
87
+ require('../isSymbol-cjs.js');
88
+ require('../keysIn-cjs.js');
89
+ require('../_baseAssignValue-cjs.js');
90
+ require('../_baseFlatten-cjs.js');
91
+ require('../_setToString-cjs.js');
84
92
  require('../DataListEmptyState-cjs.js');
85
93
  require('../DataListLoadMore-cjs.js');
86
94
  require('../DataListAction-cjs.js');
@@ -79,6 +79,14 @@ import '../InputText/index.mjs';
79
79
  import '../FormField-es.js';
80
80
  import '../useFormFieldFocus-es.js';
81
81
  import '../InputValidation-es.js';
82
+ import '../omit-es.js';
83
+ import '../_baseGet-es.js';
84
+ import '../identity-es.js';
85
+ import '../isSymbol-es.js';
86
+ import '../keysIn-es.js';
87
+ import '../_baseAssignValue-es.js';
88
+ import '../_baseFlatten-es.js';
89
+ import '../_setToString-es.js';
82
90
  import '../DataListEmptyState-es.js';
83
91
  import '../DataListLoadMore-es.js';
84
92
  import '../DataListAction-es.js';
@@ -13,12 +13,12 @@ require('../Content-cjs.js');
13
13
  require('../Select/index.cjs');
14
14
  require('../omit-cjs.js');
15
15
  require('../_commonjsHelpers-cjs.js');
16
- require('../_getAllKeys-cjs.js');
16
+ require('../_baseGet-cjs.js');
17
17
  require('../isTypedArray-cjs.js');
18
18
  require('../isObjectLike-cjs.js');
19
- require('../isSymbol-cjs.js');
20
19
  require('../identity-cjs.js');
21
20
  require('../_getTag-cjs.js');
21
+ require('../isSymbol-cjs.js');
22
22
  require('../keysIn-cjs.js');
23
23
  require('../_baseAssignValue-cjs.js');
24
24
  require('../_baseFlatten-cjs.js');
@@ -11,12 +11,12 @@ import '../Content-es.js';
11
11
  import '../Select/index.mjs';
12
12
  import '../omit-es.js';
13
13
  import '../_commonjsHelpers-es.js';
14
- import '../_getAllKeys-es.js';
14
+ import '../_baseGet-es.js';
15
15
  import '../isTypedArray-es.js';
16
16
  import '../isObjectLike-es.js';
17
- import '../isSymbol-es.js';
18
17
  import '../identity-es.js';
19
18
  import '../_getTag-es.js';
19
+ import '../isSymbol-es.js';
20
20
  import '../keysIn-es.js';
21
21
  import '../_baseAssignValue-es.js';
22
22
  import '../_baseFlatten-es.js';
@@ -16,12 +16,12 @@ require('../Icon-cjs.js');
16
16
  require('@jobber/design');
17
17
  require('../omit-cjs.js');
18
18
  require('../_commonjsHelpers-cjs.js');
19
- require('../_getAllKeys-cjs.js');
19
+ require('../_baseGet-cjs.js');
20
20
  require('../isTypedArray-cjs.js');
21
21
  require('../isObjectLike-cjs.js');
22
- require('../isSymbol-cjs.js');
23
22
  require('../identity-cjs.js');
24
23
  require('../_getTag-cjs.js');
24
+ require('../isSymbol-cjs.js');
25
25
  require('../keysIn-cjs.js');
26
26
  require('../_baseAssignValue-cjs.js');
27
27
  require('../_baseFlatten-cjs.js');
@@ -14,12 +14,12 @@ import '../Icon-es.js';
14
14
  import '@jobber/design';
15
15
  import '../omit-es.js';
16
16
  import '../_commonjsHelpers-es.js';
17
- import '../_getAllKeys-es.js';
17
+ import '../_baseGet-es.js';
18
18
  import '../isTypedArray-es.js';
19
19
  import '../isObjectLike-es.js';
20
- import '../isSymbol-es.js';
21
20
  import '../identity-es.js';
22
21
  import '../_getTag-es.js';
22
+ import '../isSymbol-es.js';
23
23
  import '../keysIn-es.js';
24
24
  import '../_baseAssignValue-es.js';
25
25
  import '../_baseFlatten-es.js';
@@ -7,201 +7,6 @@ import type { IconNames } from "../Icon";
7
7
  export type FormFieldTypes = "text" | "password" | "number" | "time" | "textarea" | "select" | "tel" | "email";
8
8
  export type KeyBoardTypes = "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal";
9
9
  export type AutocompleteTypes = "one-time-code" | "address-line1" | "address-line2";
10
- /**
11
- * ARIA attributes for accessibility.
12
- * Common attributes that can be used across input components.
13
- */
14
- export interface AriaInputProps {
15
- /**
16
- * ARIA label for accessibility.
17
- */
18
- readonly "aria-label"?: string;
19
- /**
20
- * ARIA described-by for accessibility.
21
- */
22
- readonly "aria-describedby"?: string;
23
- /**
24
- * ARIA invalid state for accessibility.
25
- */
26
- readonly "aria-invalid"?: boolean | "true" | "false";
27
- /**
28
- * ARIA controls attribute.
29
- */
30
- readonly "aria-controls"?: string;
31
- /**
32
- * ARIA expanded state.
33
- */
34
- readonly "aria-expanded"?: boolean;
35
- /**
36
- * ARIA active descendant.
37
- */
38
- readonly "aria-activedescendant"?: string;
39
- /**
40
- * ARIA autocomplete attribute.
41
- */
42
- readonly "aria-autocomplete"?: "none" | "inline" | "list" | "both";
43
- /**
44
- * ARIA required attribute.
45
- */
46
- readonly "aria-required"?: boolean;
47
- }
48
- /**
49
- * Focus event handlers for input elements.
50
- * Generic interface that can be specialized for different element types.
51
- */
52
- export interface FocusEvents<Target = HTMLElement> {
53
- /**
54
- * Focus event handler.
55
- */
56
- readonly onFocus?: (event: React.FocusEvent<Target>) => void;
57
- /**
58
- * Blur event handler.
59
- */
60
- readonly onBlur?: (event: React.FocusEvent<Target>) => void;
61
- }
62
- /**
63
- * Keyboard event handlers for input elements.
64
- * Generic interface that can be specialized for different element types.
65
- */
66
- export interface KeyboardEvents<Target = HTMLElement> {
67
- /**
68
- * Key down event handler.
69
- */
70
- readonly onKeyDown?: (event: React.KeyboardEvent<Target>) => void;
71
- /**
72
- * Key up event handler.
73
- */
74
- readonly onKeyUp?: (event: React.KeyboardEvent<Target>) => void;
75
- }
76
- /**
77
- * Curated set of HTML input attributes for rebuilt input components.
78
- * This provides a whitelist of standard HTML/React props we want to support,
79
- * avoiding the issues of extending React.InputHTMLAttributes directly.
80
- * Note: Event handlers and ARIA attributes are separate - use FocusEvents, KeyboardEvents, and AriaInputProps.
81
- */
82
- export interface HTMLInputBaseProps extends AriaInputProps {
83
- /**
84
- * The unique identifier for the input element.
85
- */
86
- readonly id?: string;
87
- /**
88
- * The name attribute for the input element.
89
- */
90
- readonly name?: string;
91
- /**
92
- * Placeholder text that appears when the input is empty.
93
- */
94
- readonly placeholder?: string;
95
- /**
96
- * Whether the input is disabled.
97
- */
98
- readonly disabled?: boolean;
99
- /**
100
- * Whether the input is required.
101
- */
102
- readonly required?: boolean;
103
- /**
104
- * Whether the input is read-only (HTML standard casing).
105
- */
106
- readonly readOnly?: boolean;
107
- /**
108
- * Whether the input should be auto-focused (React casing).
109
- */
110
- readonly autoFocus?: boolean;
111
- /**
112
- * Autocomplete behavior for the input (React casing, string values only).
113
- * Use standard HTML autocomplete values or "on"/"off".
114
- */
115
- readonly autoComplete?: string;
116
- /**
117
- * Maximum character length for the input (HTML validation only).
118
- * Note: In v2, this does NOT affect the visual width of the component.
119
- * Use CSS or the size prop for width control.
120
- */
121
- readonly maxLength?: number;
122
- /**
123
- * Minimum character length for the input.
124
- */
125
- readonly minLength?: number;
126
- /**
127
- * Maximum numerical value (for number inputs).
128
- */
129
- readonly max?: number | string;
130
- /**
131
- * Minimum numerical value (for number inputs).
132
- */
133
- readonly min?: number | string;
134
- /**
135
- * Validation pattern (regex) for the input.
136
- */
137
- readonly pattern?: string;
138
- /**
139
- * Input mode hint for virtual keyboards.
140
- */
141
- readonly inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
142
- /**
143
- * Role attribute for accessibility.
144
- */
145
- readonly role?: string;
146
- /**
147
- * Tab index for keyboard navigation.
148
- */
149
- readonly tabIndex?: number;
150
- }
151
- /**
152
- * Common props shared across all rebuilt input components.
153
- * These are Atlantis-specific features not part of standard HTML inputs.
154
- */
155
- export interface RebuiltInputCommonProps {
156
- /**
157
- * Error message to display. This also highlights the field red.
158
- */
159
- readonly error?: string;
160
- /**
161
- * Highlights the field red to indicate an error.
162
- */
163
- readonly invalid?: boolean;
164
- /**
165
- * Show a spinner to indicate loading.
166
- */
167
- readonly loading?: boolean;
168
- /**
169
- * Add a clear action on the input that clears the value.
170
- */
171
- readonly clearable?: Clearable;
172
- /**
173
- * Adjusts the interface to either have small or large spacing.
174
- */
175
- readonly size?: "small" | "large";
176
- /**
177
- * Adjusts the form field to go inline with content.
178
- */
179
- readonly inline?: boolean;
180
- /**
181
- * Determines the alignment of the text inside the input.
182
- */
183
- readonly align?: "center" | "right";
184
- /**
185
- * Adds a prefix label and icon to the field.
186
- */
187
- readonly prefix?: Affix;
188
- /**
189
- * Adds a suffix label and icon with an optional action to the field.
190
- */
191
- readonly suffix?: XOR<Affix, Suffix>;
192
- /**
193
- * Further description of the input, can be used for a hint.
194
- */
195
- readonly description?: ReactNode;
196
- /**
197
- * Children elements to render inside the component.
198
- */
199
- readonly children?: ReactNode;
200
- /**
201
- * Version 2 is highly experimental. Avoid using it unless you have talked with Atlantis first.
202
- */
203
- readonly version: 2;
204
- }
205
10
  export interface FieldActionsRef {
206
11
  setValue(value: string | number): void;
207
12
  }
@@ -467,6 +467,7 @@ exports.FormFieldWrapper = FormFieldWrapper;
467
467
  exports.FormFieldWrapperMain = FormFieldWrapperMain;
468
468
  exports.FormFieldWrapperToolbar = FormFieldWrapperToolbar;
469
469
  exports.mergeRefs = mergeRefs;
470
+ exports.styles = styles$1;
470
471
  exports.useAtlantisFormField = useAtlantisFormField;
471
472
  exports.useAtlantisFormFieldActions = useAtlantisFormFieldActions;
472
473
  exports.useAtlantisFormFieldName = useAtlantisFormFieldName;
@@ -454,4 +454,4 @@ function setAutocomplete(autocompleteSetting) {
454
454
  return autocompleteSetting;
455
455
  }
456
456
 
457
- export { AffixIcon as A, FormFieldInputHorizontalWrapper as F, useAtlantisFormFieldActions as a, useAtlantisFormFieldName as b, useAtlantisReactHookForm as c, FormFieldInputWrapperStyles as d, FormFieldLabel as e, FormFieldWrapper as f, FormFieldWrapperMain as g, FormFieldWrapperToolbar as h, AffixLabel as i, useFormFieldWrapperStyles as j, FormField as k, FormFieldPostFix as l, mergeRefs as m, useAtlantisFormField as u };
457
+ export { AffixIcon as A, FormFieldInputHorizontalWrapper as F, useAtlantisFormFieldActions as a, useAtlantisFormFieldName as b, useAtlantisReactHookForm as c, FormFieldInputWrapperStyles as d, FormFieldLabel as e, FormFieldWrapper as f, FormFieldWrapperMain as g, FormFieldWrapperToolbar as h, AffixLabel as i, useFormFieldWrapperStyles as j, FormField as k, FormFieldPostFix as l, mergeRefs as m, styles$1 as s, useAtlantisFormField as u };
@@ -13,12 +13,12 @@ require('../Button-cjs.js');
13
13
  var DatePicker = require('../DatePicker-cjs.js');
14
14
  var InputText_index = require('../InputText/index.cjs');
15
15
  require('../_commonjsHelpers-cjs.js');
16
- require('../_getAllKeys-cjs.js');
16
+ require('../_baseGet-cjs.js');
17
17
  require('../isTypedArray-cjs.js');
18
18
  require('../isObjectLike-cjs.js');
19
- require('../isSymbol-cjs.js');
20
19
  require('../identity-cjs.js');
21
20
  require('../_getTag-cjs.js');
21
+ require('../isSymbol-cjs.js');
22
22
  require('../keysIn-cjs.js');
23
23
  require('../_baseAssignValue-cjs.js');
24
24
  require('../_baseFlatten-cjs.js');
@@ -89,16 +89,12 @@ function useInputDateActivatorActions({ onChange, onBlur, onFocus, }) {
89
89
  onChange === null || onChange === void 0 ? void 0 : onChange(event);
90
90
  }
91
91
  function handleFocus(event) {
92
- if (event) {
93
- onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
94
- }
92
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
95
93
  setIsFocused(true);
96
94
  }
97
95
  function handleBlur(event) {
98
96
  setIsFocused(false);
99
- if (event) {
100
- onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
101
- }
97
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
102
98
  }
103
99
  return {
104
100
  handleBlur,