@ilo-org/react 0.7.8 → 0.8.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 (174) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/cjs/components/Checkbox/Checkbox.js +28 -16
  3. package/lib/cjs/components/Checkbox/index.js +25 -3
  4. package/lib/cjs/components/DatePicker/DatePicker.js +21 -16
  5. package/lib/cjs/components/DatePicker/index.js +4 -4
  6. package/lib/cjs/components/Dropdown/Dropdown.js +19 -15
  7. package/lib/cjs/components/Dropdown/index.js +3 -3
  8. package/lib/cjs/components/Fieldset/Fieldset.js +33 -9
  9. package/lib/cjs/components/Fieldset/index.js +2 -2
  10. package/lib/cjs/components/FileUpload/FileUpload.js +29 -15
  11. package/lib/cjs/components/FileUpload/index.js +3 -3
  12. package/lib/cjs/components/Form/Form.js +8 -55
  13. package/lib/cjs/components/Form/index.js +10 -20
  14. package/lib/cjs/components/FormControl/FormControl.js +79 -0
  15. package/lib/cjs/components/FormControl/index.js +16 -0
  16. package/lib/cjs/components/Input/Input.js +1 -1
  17. package/lib/cjs/components/NumberPicker/NumberPicker.js +21 -16
  18. package/lib/cjs/components/NumberPicker/index.js +4 -4
  19. package/lib/cjs/components/Radio/Radio.js +34 -17
  20. package/lib/cjs/components/Radio/index.js +19 -4
  21. package/lib/cjs/components/TextInput/TextInput.js +30 -0
  22. package/lib/cjs/components/TextInput/index.js +52 -0
  23. package/lib/cjs/components/Textarea/Textarea.js +19 -19
  24. package/lib/cjs/components/Textarea/index.js +26 -5
  25. package/lib/cjs/components/Toggle/Toggle.js +33 -0
  26. package/lib/cjs/components/Toggle/index.js +51 -0
  27. package/lib/cjs/components/Tooltip/Tooltip.js +2 -2
  28. package/lib/cjs/components/index.js +10 -11
  29. package/lib/cjs/hooks/usePrevious.js +20 -0
  30. package/lib/cjs/index.js +10 -11
  31. package/lib/esm/components/Checkbox/Checkbox.js +31 -19
  32. package/lib/esm/components/Checkbox/index.js +27 -2
  33. package/lib/esm/components/DatePicker/DatePicker.js +22 -17
  34. package/lib/esm/components/DatePicker/index.js +4 -4
  35. package/lib/esm/components/Dropdown/Dropdown.js +20 -16
  36. package/lib/esm/components/Dropdown/index.js +3 -3
  37. package/lib/esm/components/Fieldset/Fieldset.js +31 -11
  38. package/lib/esm/components/Fieldset/index.js +1 -1
  39. package/lib/esm/components/FileUpload/FileUpload.js +31 -17
  40. package/lib/esm/components/FileUpload/index.js +3 -3
  41. package/lib/esm/components/Form/Form.js +10 -57
  42. package/lib/esm/components/Form/index.js +13 -20
  43. package/lib/esm/components/FormControl/FormControl.js +73 -0
  44. package/lib/esm/components/{ChoiceGroup → FormControl}/index.js +3 -6
  45. package/lib/esm/components/NumberPicker/NumberPicker.js +21 -16
  46. package/lib/esm/components/NumberPicker/index.js +4 -4
  47. package/lib/esm/components/Radio/Radio.js +34 -17
  48. package/lib/esm/components/Radio/index.js +21 -3
  49. package/lib/esm/components/TextInput/TextInput.js +28 -0
  50. package/lib/esm/components/TextInput/index.js +49 -0
  51. package/lib/esm/components/Textarea/Textarea.js +19 -19
  52. package/lib/esm/components/Textarea/index.js +28 -4
  53. package/lib/esm/components/Toggle/Toggle.js +31 -0
  54. package/lib/esm/components/Toggle/index.js +48 -0
  55. package/lib/esm/components/Tooltip/Tooltip.js +2 -2
  56. package/lib/esm/components/index.js +8 -5
  57. package/lib/esm/hooks/usePrevious.js +15 -0
  58. package/lib/esm/index.js +8 -5
  59. package/lib/types/react/src/components/Checkbox/Checkbox.args.d.ts +52 -0
  60. package/lib/types/react/src/components/Checkbox/Checkbox.d.ts +5 -3
  61. package/lib/types/react/src/components/Checkbox/Checkbox.props.d.ts +4 -13
  62. package/lib/types/react/src/components/Checkbox/index.d.ts +1 -0
  63. package/lib/types/react/src/components/DatePicker/DatePicker.d.ts +4 -3
  64. package/lib/types/react/src/components/DatePicker/DatePicker.props.d.ts +10 -43
  65. package/lib/types/react/src/components/Dropdown/Dropdown.d.ts +5 -3
  66. package/lib/types/react/src/components/Dropdown/Dropdown.props.d.ts +16 -42
  67. package/lib/types/react/src/components/Fieldset/Fieldset.d.ts +6 -0
  68. package/lib/types/react/src/components/Fieldset/Fieldset.props.d.ts +14 -21
  69. package/lib/types/react/src/components/FileUpload/FileUpload.d.ts +5 -3
  70. package/lib/types/react/src/components/FileUpload/FileUpload.props.d.ts +7 -44
  71. package/lib/types/react/src/components/Form/Form.args.d.ts +2 -0
  72. package/lib/types/react/src/components/Form/Form.d.ts +1 -2
  73. package/lib/types/react/src/components/Form/Form.props.d.ts +4 -111
  74. package/lib/types/react/src/components/Form/index.d.ts +1 -0
  75. package/lib/types/react/src/components/FormControl/FormControl.d.ts +9 -0
  76. package/lib/types/react/src/components/FormControl/FormControl.props.d.ts +55 -0
  77. package/lib/types/react/src/components/FormControl/index.d.ts +2 -0
  78. package/lib/types/react/src/components/FormElement/FormElement.props.d.ts +2 -2
  79. package/lib/types/react/src/components/Input/Input.props.d.ts +2 -2
  80. package/lib/types/react/src/components/NumberPicker/NumberPicker.d.ts +5 -3
  81. package/lib/types/react/src/components/NumberPicker/NumberPicker.props.d.ts +5 -42
  82. package/lib/types/react/src/components/Radio/Radio.args.d.ts +8 -0
  83. package/lib/types/react/src/components/Radio/Radio.d.ts +5 -3
  84. package/lib/types/react/src/components/Radio/Radio.props.d.ts +4 -14
  85. package/lib/types/react/src/components/Radio/index.d.ts +1 -0
  86. package/lib/types/react/src/components/TextInput/TextInput.args.d.ts +10 -0
  87. package/lib/types/react/src/components/TextInput/TextInput.d.ts +6 -0
  88. package/lib/types/react/src/components/TextInput/TextInput.props.d.ts +17 -0
  89. package/lib/types/react/src/components/TextInput/index.d.ts +2 -0
  90. package/lib/types/react/src/components/Textarea/Textarea.args.d.ts +10 -0
  91. package/lib/types/react/src/components/Textarea/Textarea.d.ts +5 -3
  92. package/lib/types/react/src/components/Textarea/Textarea.props.d.ts +17 -39
  93. package/lib/types/react/src/components/Textarea/index.d.ts +2 -0
  94. package/lib/types/react/src/components/Toggle/Toggle.args.d.ts +12 -0
  95. package/lib/types/react/src/components/Toggle/Toggle.d.ts +5 -0
  96. package/lib/types/react/src/components/Toggle/Toggle.props.d.ts +22 -0
  97. package/lib/types/react/src/components/Toggle/index.d.ts +3 -0
  98. package/lib/types/react/src/components/Tooltip/Tooltip.props.d.ts +4 -0
  99. package/lib/types/react/src/components/index.d.ts +1 -5
  100. package/lib/types/react/src/hooks/usePrevious.d.ts +2 -0
  101. package/lib/types/react/src/types/index.d.ts +57 -1
  102. package/package.json +19 -18
  103. package/src/components/Checkbox/Checkbox.args.ts +31 -9
  104. package/src/components/Checkbox/Checkbox.props.ts +5 -13
  105. package/src/components/Checkbox/Checkbox.tsx +78 -76
  106. package/src/components/Checkbox/index.ts +1 -0
  107. package/src/components/DatePicker/DatePicker.args.ts +6 -32
  108. package/src/components/DatePicker/DatePicker.props.ts +11 -51
  109. package/src/components/DatePicker/DatePicker.tsx +71 -110
  110. package/src/components/Dropdown/Dropdown.args.ts +42 -192
  111. package/src/components/Dropdown/Dropdown.props.ts +18 -49
  112. package/src/components/Dropdown/Dropdown.tsx +73 -62
  113. package/src/components/Fieldset/Fieldset.props.ts +14 -23
  114. package/src/components/Fieldset/Fieldset.tsx +75 -69
  115. package/src/components/FileUpload/FileUpload.args.ts +25 -27
  116. package/src/components/FileUpload/FileUpload.props.ts +8 -53
  117. package/src/components/FileUpload/FileUpload.tsx +103 -72
  118. package/src/components/Form/Form.args.ts +2 -184
  119. package/src/components/Form/Form.props.ts +4 -133
  120. package/src/components/Form/Form.tsx +17 -77
  121. package/src/components/Form/index.ts +1 -0
  122. package/src/components/FormControl/FormControl.props.ts +72 -0
  123. package/src/components/FormControl/FormControl.tsx +169 -0
  124. package/src/components/FormControl/index.ts +2 -0
  125. package/src/components/FormElement/FormElement.props.ts +2 -2
  126. package/src/components/Input/Input.props.ts +2 -2
  127. package/src/components/Navigation/Navigation.args.ts +2 -1
  128. package/src/components/NumberPicker/NumberPicker.args.ts +18 -26
  129. package/src/components/NumberPicker/NumberPicker.props.ts +7 -52
  130. package/src/components/NumberPicker/NumberPicker.tsx +73 -56
  131. package/src/components/Radio/Radio.args.ts +1 -7
  132. package/src/components/Radio/Radio.props.ts +6 -14
  133. package/src/components/Radio/Radio.tsx +90 -52
  134. package/src/components/Radio/index.ts +1 -0
  135. package/src/components/TextInput/TextInput.args.ts +75 -0
  136. package/src/components/TextInput/TextInput.props.ts +20 -0
  137. package/src/components/TextInput/TextInput.tsx +71 -0
  138. package/src/components/TextInput/index.ts +2 -0
  139. package/src/components/Textarea/Textarea.args.ts +19 -37
  140. package/src/components/Textarea/Textarea.props.ts +18 -46
  141. package/src/components/Textarea/Textarea.tsx +44 -59
  142. package/src/components/Textarea/index.ts +2 -0
  143. package/src/components/Toggle/Toggle.args.ts +62 -0
  144. package/src/components/Toggle/Toggle.props.ts +27 -0
  145. package/src/components/Toggle/Toggle.tsx +85 -0
  146. package/src/components/Toggle/index.ts +3 -0
  147. package/src/components/Tooltip/Tooltip.props.ts +5 -0
  148. package/src/components/Tooltip/Tooltip.tsx +2 -0
  149. package/src/components/index.ts +1 -5
  150. package/src/hooks/usePrevious.ts +15 -0
  151. package/src/types/forms.args.ts +288 -0
  152. package/src/types/index.ts +69 -1
  153. package/tsconfig.json +2 -1
  154. package/lib/cjs/components/ChoiceGroup/ChoiceGroup.js +0 -34
  155. package/lib/cjs/components/ChoiceGroup/index.js +0 -19
  156. package/lib/cjs/components/FormGroup/FormGroup.js +0 -58
  157. package/lib/cjs/components/FormGroup/index.js +0 -26
  158. package/lib/esm/components/ChoiceGroup/ChoiceGroup.js +0 -32
  159. package/lib/esm/components/FormGroup/FormGroup.js +0 -56
  160. package/lib/esm/components/FormGroup/index.js +0 -20
  161. package/lib/types/react/src/components/ChoiceGroup/ChoiceGroup.d.ts +0 -4
  162. package/lib/types/react/src/components/ChoiceGroup/ChoiceGroup.props.d.ts +0 -20
  163. package/lib/types/react/src/components/ChoiceGroup/index.d.ts +0 -1
  164. package/lib/types/react/src/components/FormGroup/FormGroup.d.ts +0 -4
  165. package/lib/types/react/src/components/FormGroup/FormGroup.props.d.ts +0 -81
  166. package/lib/types/react/src/components/FormGroup/index.d.ts +0 -1
  167. package/src/components/ChoiceGroup/ChoiceGroup.args.ts +0 -95
  168. package/src/components/ChoiceGroup/ChoiceGroup.props.ts +0 -25
  169. package/src/components/ChoiceGroup/ChoiceGroup.tsx +0 -54
  170. package/src/components/ChoiceGroup/index.ts +0 -1
  171. package/src/components/FormGroup/FormGroup.args.ts +0 -85
  172. package/src/components/FormGroup/FormGroup.props.ts +0 -102
  173. package/src/components/FormGroup/FormGroup.tsx +0 -73
  174. package/src/components/FormGroup/index.ts +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @ilo-org/react
2
2
 
3
+ ## 0.8.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 897fe5766: This release includes refactored form components and styles. Whereas before, the Form component took all of the props for all of the form components itself and determined which to render based on data, this release exposes all of the individual form components directly to the developer. The Form component is refactored as a simple wrapper around an HTML form element, which includes a `theme` prop modifying the label and text colors for use on dark backgrounds. Otherwise, it simply provides a layout for different form elements. The Fieldset is used as a layout wrapper to group multiple related form components together, especially theRadio and Checkbox, for which it can also handle error messages. All form components provide access to the underlying form element (usually an `input`) via a `ref` prop.
8
+
9
+ ### Patch Changes
10
+
11
+ - 897fe5766: fix label/icon misalignment issue
12
+ - Updated dependencies [897fe5766]
13
+ - Updated dependencies [897fe5766]
14
+ - Updated dependencies [897fe5766]
15
+ - @ilo-org/styles@0.9.0
16
+
3
17
  ## 0.7.8
4
18
 
5
19
  ### Patch Changes
@@ -1,34 +1,46 @@
1
1
  'use strict';
2
2
 
3
+ var tslib = require('tslib');
3
4
  var jsxRuntime = require('react/jsx-runtime');
4
5
  var require$$0 = require('react');
5
6
  var classNames = require('classnames');
6
7
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
7
8
  var components_Fieldset_Fieldset = require('../Fieldset/Fieldset.js');
8
- var components_FormElement_FormElement = require('../FormElement/FormElement.js');
9
- require('tslib');
9
+ var components_FormControl_FormControl = require('../FormControl/FormControl.js');
10
+ var hooks_usePrevious = require('../../hooks/usePrevious.js');
10
11
  require('../../GlobalCtx-97e4b433.js');
11
12
  require('../Tooltip/Tooltip.js');
12
13
  require('react-dom');
14
+ require('nanoid');
13
15
 
14
- const Checkbox = ({ callback, disabled = false, error, grouped, helper, id, label, name, required, tooltip, }) => {
16
+ const Checkbox = require$$0.forwardRef((props, ref) => {
17
+ const { onChange, onBlur, disabled = false, error, id, name, required, defaultChecked = false, checked, value, } = props;
15
18
  const { prefix } = hooks_useGlobalSettings();
19
+ const { setHasError } = components_Fieldset_Fieldset.useFieldsetError();
20
+ const formControlCtx = components_FormControl_FormControl.useFormControl();
21
+ const { ariaDescribedBy } = formControlCtx;
16
22
  const baseClass = `${prefix}--checkbox`;
17
- const CheckboxClasses = classNames("", {
18
- [baseClass]: true,
19
- [`error`]: error,
23
+ const errorClass = `${baseClass}__error`;
24
+ const CheckboxClasses = classNames(baseClass, {
25
+ [errorClass]: error,
20
26
  });
21
- const [checked, setChecked] = require$$0.useState(false);
22
- /**
23
- * On change, if there is a callback, call it
24
- */
27
+ const prevError = hooks_usePrevious.usePrevious(error);
28
+ require$$0.useEffect(() => {
29
+ if (error !== prevError) {
30
+ setHasError(!!error);
31
+ }
32
+ }, [error, prevError, setHasError]);
25
33
  const handleChange = (e) => {
26
- setChecked(e.target.checked);
27
- if (callback) {
28
- callback(e);
34
+ if (onChange) {
35
+ onChange(e);
29
36
  }
30
37
  };
31
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [grouped && (jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: id, label: label, helper: helper, error: error, required: required, tooltip: tooltip }, { children: jsxRuntime.jsx("input", { id: id, name: name, onChange: handleChange, disabled: disabled, required: required, type: "checkbox", className: CheckboxClasses, checked: checked }) }))), !grouped && (jsxRuntime.jsx(components_Fieldset_Fieldset, { children: jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: id, label: label, helper: helper, error: error, required: required, tooltip: tooltip, type: "checkbox" }, { children: jsxRuntime.jsx("input", { id: id, name: name, onChange: handleChange, disabled: disabled, required: required, type: "checkbox", className: CheckboxClasses, checked: checked }) })) }))] }));
32
- };
38
+ return (jsxRuntime.jsx("input", { ref: ref, id: id ? id : name, name: name, onChange: handleChange, onBlur: onBlur, disabled: disabled, required: required, type: "checkbox", className: CheckboxClasses, defaultChecked: defaultChecked, "aria-describedby": ariaDescribedBy, checked: checked, value: value }));
39
+ });
40
+ const LabelledCheckbox = require$$0.forwardRef((props, ref) => {
41
+ const fieldId = props.id ? props.id : props.name;
42
+ const { style, inputStyle, className, labelPlacement = "end", labelSize = "small" } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className", "labelPlacement", "labelSize"]);
43
+ return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className, labelPlacement: labelPlacement, labelSize: labelSize }, rest, { children: jsxRuntime.jsx(Checkbox, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
44
+ });
33
45
 
34
- module.exports = Checkbox;
46
+ module.exports = LabelledCheckbox;
@@ -1,17 +1,39 @@
1
1
  'use strict';
2
2
 
3
3
  var components_Checkbox_Checkbox = require('./Checkbox.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
5
6
  require('react');
6
7
  require('classnames');
7
8
  require('../../hooks/useGlobalSettings.js');
8
- require('tslib');
9
9
  require('../../GlobalCtx-97e4b433.js');
10
10
  require('../Fieldset/Fieldset.js');
11
11
  require('../Tooltip/Tooltip.js');
12
12
  require('react-dom');
13
- require('../FormElement/FormElement.js');
14
-
13
+ require('../FormControl/FormControl.js');
14
+ require('nanoid');
15
+ require('../../hooks/usePrevious.js');
15
16
 
17
+ const NUMBER_CHECKBOXES = 3;
18
+ const basic = {
19
+ label: "Checkbox",
20
+ className: "checkbox",
21
+ name: "checkbox",
22
+ };
23
+ const basicCheckBoxes = Array(NUMBER_CHECKBOXES).map((_, i) => (Object.assign(Object.assign({}, basic), { id: `checkbox-${i}` })));
24
+ const checked = Object.assign(Object.assign({}, basic), { defaultChecked: true });
25
+ const error = Object.assign(Object.assign({}, basic), { error: true });
26
+ const errorCheckBoxes = Array(NUMBER_CHECKBOXES).map((_, i) => (Object.assign(Object.assign({}, error), { id: `checkbox-${i}` })));
27
+ /**
28
+ * Sample prop definitions Checkbox's enumerable properties (imported in stories and test)
29
+ */
30
+ const CheckboxArgs = {
31
+ basic,
32
+ basicCheckBoxes,
33
+ errorCheckBoxes,
34
+ checked,
35
+ error,
36
+ };
16
37
 
17
38
  exports.Checkbox = components_Checkbox_Checkbox;
39
+ exports.CheckboxArgs = CheckboxArgs;
@@ -1,32 +1,37 @@
1
1
  'use strict';
2
2
 
3
+ var tslib = require('tslib');
3
4
  var jsxRuntime = require('react/jsx-runtime');
5
+ var require$$0 = require('react');
4
6
  var classNames = require('classnames');
5
7
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
6
- var components_Fieldset_Fieldset = require('../Fieldset/Fieldset.js');
7
- var components_FormElement_FormElement = require('../FormElement/FormElement.js');
8
- require('tslib');
9
- require('react');
8
+ var components_FormControl_FormControl = require('../FormControl/FormControl.js');
10
9
  require('../../GlobalCtx-97e4b433.js');
10
+ require('nanoid');
11
11
  require('../Tooltip/Tooltip.js');
12
12
  require('react-dom');
13
13
 
14
- const DatePicker = ({ callback, disabled = false, enddata, error, helper, id, label, name, placeholder, range, required, tooltip, }) => {
14
+ const DatePicker = require$$0.forwardRef((props, ref) => {
15
+ const { onChange, onBlur, disabled = false, error, id, name, placeholder, required, max, min, step, } = props;
15
16
  const { prefix } = hooks_useGlobalSettings();
17
+ const formControlCtx = components_FormControl_FormControl.useFormControl();
18
+ const { ariaDescribedBy } = formControlCtx;
19
+ const inputClass = `${prefix}--input`;
16
20
  const baseClass = `${prefix}--datepicker`;
17
- const DatePickerClasses = classNames("", {
18
- [baseClass]: true,
21
+ const datePickerClasses = classNames(inputClass, baseClass, {
19
22
  [`error`]: error,
20
23
  });
21
- /**
22
- * On change, if there is a callback, call it
23
- */
24
- const handleChange = (e, picker) => {
25
- if (callback) {
26
- callback(e, picker);
24
+ const handleChange = (e) => {
25
+ if (onChange) {
26
+ onChange(e);
27
27
  }
28
28
  };
29
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [!range && (jsxRuntime.jsx(components_Fieldset_Fieldset, { children: jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: name, label: label, helper: helper, error: error, required: required, tooltip: tooltip }, { children: jsxRuntime.jsx("input", { id: `${id ? id : name}`, name: `${name}`, onChange: handleChange, disabled: disabled, placeholder: placeholder, required: required, type: "date", className: `${DatePickerClasses} ${prefix}--input` }) })) })), range && (jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--range` }, { children: [jsxRuntime.jsx(components_Fieldset_Fieldset, { children: jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: name, label: label, helper: helper, error: error, required: required, tooltip: tooltip, type: "date" }, { children: jsxRuntime.jsx("input", { id: `${id ? id : name}`, name: `${name}`, onChange: handleChange, disabled: disabled, placeholder: placeholder, required: required, type: "date", className: `${DatePickerClasses} ${prefix}--input` }) })) }), jsxRuntime.jsx(components_Fieldset_Fieldset, { children: jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: enddata === null || enddata === void 0 ? void 0 : enddata.name, label: enddata === null || enddata === void 0 ? void 0 : enddata.label, helper: enddata === null || enddata === void 0 ? void 0 : enddata.helper, error: enddata === null || enddata === void 0 ? void 0 : enddata.error, required: enddata === null || enddata === void 0 ? void 0 : enddata.required, tooltip: enddata === null || enddata === void 0 ? void 0 : enddata.tooltip, type: "date" }, { children: jsxRuntime.jsx("input", { id: (enddata === null || enddata === void 0 ? void 0 : enddata.id) ? enddata === null || enddata === void 0 ? void 0 : enddata.id : enddata === null || enddata === void 0 ? void 0 : enddata.name, name: enddata === null || enddata === void 0 ? void 0 : enddata.name, onChange: (e) => handleChange(e, "end"), disabled: enddata === null || enddata === void 0 ? void 0 : enddata.disabled, placeholder: enddata === null || enddata === void 0 ? void 0 : enddata.placeholder, required: enddata === null || enddata === void 0 ? void 0 : enddata.required, type: "date", className: `${DatePickerClasses} ${prefix}--input` }) })) })] })))] }));
30
- };
29
+ return (jsxRuntime.jsx("input", { ref: ref, type: "date", id: id ? id : name, name: name, onChange: handleChange, onBlur: onBlur, disabled: disabled, placeholder: placeholder, required: required, className: datePickerClasses, max: max, min: min, step: step, "aria-describedby": ariaDescribedBy }));
30
+ });
31
+ const LabelledDatePicker = require$$0.forwardRef((props, ref) => {
32
+ const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
33
+ const fieldId = props.id ? props.id : props.name;
34
+ return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(DatePicker, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
35
+ });
31
36
 
32
- module.exports = DatePicker;
37
+ module.exports = LabelledDatePicker;
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var components_DatePicker_DatePicker = require('./DatePicker.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
6
+ require('react');
5
7
  require('classnames');
6
8
  require('../../hooks/useGlobalSettings.js');
7
- require('tslib');
8
- require('react');
9
9
  require('../../GlobalCtx-97e4b433.js');
10
- require('../Fieldset/Fieldset.js');
10
+ require('../FormControl/FormControl.js');
11
+ require('nanoid');
11
12
  require('../Tooltip/Tooltip.js');
12
13
  require('react-dom');
13
- require('../FormElement/FormElement.js');
14
14
 
15
15
 
16
16
 
@@ -1,35 +1,39 @@
1
1
  'use strict';
2
2
 
3
+ var tslib = require('tslib');
3
4
  var jsxRuntime = require('react/jsx-runtime');
4
5
  var require$$0 = require('react');
5
6
  var classNames = require('classnames');
6
7
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
7
- var components_Fieldset_Fieldset = require('../Fieldset/Fieldset.js');
8
- var components_FormElement_FormElement = require('../FormElement/FormElement.js');
9
- require('tslib');
8
+ var components_FormControl_FormControl = require('../FormControl/FormControl.js');
10
9
  require('../../GlobalCtx-97e4b433.js');
10
+ require('nanoid');
11
11
  require('../Tooltip/Tooltip.js');
12
12
  require('react-dom');
13
13
 
14
- const Dropdown = ({ autocomplete, callback, disabled = false, error, helper, id, label, name, options, required, tooltip, value, }) => {
14
+ const Dropdown = require$$0.forwardRef((props, ref) => {
15
+ const { autocomplete, onChange, onBlur, disabled = false, error, id, name, options, required, value, form, multiple, selectSize, } = props;
15
16
  const { prefix } = hooks_useGlobalSettings();
17
+ const formControlCtx = components_FormControl_FormControl.useFormControl();
18
+ const { ariaDescribedBy } = formControlCtx;
16
19
  const baseClass = `${prefix}--dropdown`;
17
- const dropdownClasses = classNames("", {
18
- [baseClass]: true,
20
+ const dropdownClasses = classNames(baseClass, {
19
21
  [`error`]: error,
20
22
  });
21
23
  const [currentvalue, setValue] = require$$0.useState(value);
22
- /**
23
- * On change, if there is a callback, call it
24
- */
25
24
  const handleChange = (e) => {
26
25
  setValue(e.target.value);
27
- if (callback) {
28
- callback(e);
26
+ if (onChange) {
27
+ onChange(e);
29
28
  }
30
29
  };
31
- return (jsxRuntime.jsx(components_Fieldset_Fieldset, { children: jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: name, label: label, helper: helper, error: error, required: required, tooltip: tooltip, type: "dropdown" }, { children: jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrapper` }, { children: jsxRuntime.jsx("select", Object.assign({ id: id ? id : name, autoComplete: autocomplete, name: name, required: required, onChange: handleChange, disabled: disabled, className: dropdownClasses, value: currentvalue }, { children: options &&
32
- options.map((option, i) => (jsxRuntime.jsx("option", { disabled: option.disabled, label: option.label, value: option.value }, `${baseClass}--option--${i}`))) })) })) })) }));
33
- };
30
+ return (jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--wrapper` }, { children: jsxRuntime.jsx("select", Object.assign({ ref: ref, id: id ? id : name, autoComplete: autocomplete, name: name, required: required, onChange: handleChange, onBlur: onBlur, disabled: disabled, className: dropdownClasses, value: currentvalue, form: form, multiple: multiple, size: selectSize, "aria-describedby": ariaDescribedBy }, { children: options &&
31
+ options.map((option, i) => (jsxRuntime.jsx("option", { disabled: option.disabled, label: option.label, value: option.value }, `${baseClass}--option--${i}`))) })) })));
32
+ });
33
+ const LabelledDropdown = require$$0.forwardRef((props, ref) => {
34
+ const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
35
+ const fieldId = props.id ? props.id : props.name;
36
+ return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(Dropdown, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
37
+ });
34
38
 
35
- module.exports = Dropdown;
39
+ module.exports = LabelledDropdown;
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var components_Dropdown_Dropdown = require('./Dropdown.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
5
6
  require('react');
6
7
  require('classnames');
7
8
  require('../../hooks/useGlobalSettings.js');
8
- require('tslib');
9
9
  require('../../GlobalCtx-97e4b433.js');
10
- require('../Fieldset/Fieldset.js');
10
+ require('../FormControl/FormControl.js');
11
+ require('nanoid');
11
12
  require('../Tooltip/Tooltip.js');
12
13
  require('react-dom');
13
- require('../FormElement/FormElement.js');
14
14
 
15
15
 
16
16
 
@@ -1,24 +1,48 @@
1
1
  'use strict';
2
2
 
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
3
6
  var jsxRuntime = require('react/jsx-runtime');
4
7
  var require$$0 = require('react');
5
8
  var classNames = require('classnames');
6
9
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
7
10
  var components_Tooltip_Tooltip = require('../Tooltip/Tooltip.js');
8
- require('tslib');
9
11
  require('../../GlobalCtx-97e4b433.js');
10
12
  require('react-dom');
11
13
 
12
- const Fieldset = ({ children, className, fieldsetid, grouperror, grouphelper, grouptooltip, legend, }) => {
14
+ // Create a new context for the error state
15
+ const FieldsetErrorContext = require$$0.createContext({
16
+ hasError: false,
17
+ setHasError: (value) => value,
18
+ });
19
+ // Custom hook to access the error state from the context
20
+ const useFieldsetError = () => require$$0.useContext(FieldsetErrorContext);
21
+ const Fieldset = (_a) => {
22
+ var { children, className, legend, helper, tooltip, errorMessage, disabled = false, wrap = "nowrap", direction = "column" } = _a, props = tslib.__rest(_a, ["children", "className", "legend", "helper", "tooltip", "errorMessage", "disabled", "wrap", "direction"]);
13
23
  const { prefix } = hooks_useGlobalSettings();
24
+ const [hasError, setHasError] = require$$0.useState(false);
14
25
  const baseClass = `${prefix}--fieldset`;
15
- const fieldsetClasses = classNames(className, {
16
- [baseClass]: true,
26
+ const wrapClass = `${baseClass}--wrap__${wrap}`;
27
+ const directionClass = `${baseClass}--direction__${direction}`;
28
+ const helperClass = `${baseClass}--helper`;
29
+ const errorClass = `${baseClass}__error`;
30
+ const disabledClass = `${baseClass}__disabled`;
31
+ const fieldsetClasses = classNames(className, baseClass, wrapClass, directionClass, {
32
+ [disabledClass]: disabled,
33
+ });
34
+ const helperClasses = classNames(helperClass, {
35
+ [errorClass]: hasError,
17
36
  });
18
- return (jsxRuntime.jsxs("fieldset", Object.assign({ className: fieldsetClasses, id: fieldsetid ? fieldsetid : undefined }, { children: [legend && (jsxRuntime.jsxs("legend", Object.assign({ className: `${baseClass}--legend` }, { children: [legend, grouptooltip && (jsxRuntime.jsx(components_Tooltip_Tooltip, { className: `${baseClass}--legend--tooltip`, icon: true, label: grouptooltip, theme: "dark" }))] }))), grouphelper && !grouperror && (jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--helper` }, { children: grouphelper }))), grouperror && (jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--error` }, { children: grouperror }))), require$$0.Children.map(children, (child, i) => {
19
- var _a;
20
- return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: child && child.props && (jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--input${((_a = child.props) === null || _a === void 0 ? void 0 : _a.type) ? "--" + child.props.type : ""} ${child.props.error ? "error" : ""}` }, { children: [child.props.label && (jsxRuntime.jsxs("label", Object.assign({ className: `${baseClass}--label`, htmlFor: child.props.id ? child.props.id : child.props.name }, { children: [child.props.label, child.props.tooltip && (jsxRuntime.jsx(components_Tooltip_Tooltip, { className: `${baseClass}--label--tooltip`, icon: true, label: child.props.tooltip, theme: "dark" }))] }))), child, child.props.helper && !child.props.error && (jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--helper` }, { children: child.props.helper }))), child.props.error && (jsxRuntime.jsx("span", Object.assign({ className: `${baseClass}--error` }, { children: child.props.error })))] }), `${baseClass}--input--${i}`)) }));
21
- })] })));
37
+ const contextValue = {
38
+ hasError,
39
+ setHasError,
40
+ };
41
+ const showHelper = !!helper || hasError;
42
+ const helperMessage = hasError ? errorMessage : helper;
43
+ return (jsxRuntime.jsxs("fieldset", Object.assign({ className: fieldsetClasses }, props, { children: [legend || helper ? (jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--legend-wrapper` }, { children: [legend && (jsxRuntime.jsxs("legend", Object.assign({ className: `${baseClass}--legend` }, { children: [legend, tooltip && (jsxRuntime.jsx(components_Tooltip_Tooltip, { className: `${baseClass}--legend--tooltip`, icon: true, label: tooltip, theme: "dark" }))] }))), showHelper && jsxRuntime.jsx("span", Object.assign({ className: helperClasses }, { children: helperMessage }))] }))) : null, jsxRuntime.jsx("div", Object.assign({ className: `${baseClass}--elements` }, { children: jsxRuntime.jsx(FieldsetErrorContext.Provider, Object.assign({ value: contextValue }, { children: children })) }))] })));
22
44
  };
23
45
 
24
- module.exports = Fieldset;
46
+ exports.FieldsetErrorContext = FieldsetErrorContext;
47
+ exports.default = Fieldset;
48
+ exports.useFieldsetError = useFieldsetError;
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var components_Fieldset_Fieldset = require('./Fieldset.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
5
6
  require('react');
6
7
  require('classnames');
7
8
  require('../../hooks/useGlobalSettings.js');
8
- require('tslib');
9
9
  require('../../GlobalCtx-97e4b433.js');
10
10
  require('../Tooltip/Tooltip.js');
11
11
  require('react-dom');
12
12
 
13
13
 
14
14
 
15
- exports.Fieldset = components_Fieldset_Fieldset;
15
+ exports.Fieldset = components_Fieldset_Fieldset.default;
@@ -1,35 +1,49 @@
1
1
  'use strict';
2
2
 
3
+ var tslib = require('tslib');
3
4
  var jsxRuntime = require('react/jsx-runtime');
4
5
  var require$$0 = require('react');
5
6
  var classNames = require('classnames');
6
7
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
7
- var components_Fieldset_Fieldset = require('../Fieldset/Fieldset.js');
8
- var components_FormElement_FormElement = require('../FormElement/FormElement.js');
9
- require('tslib');
8
+ var components_FormControl_FormControl = require('../FormControl/FormControl.js');
10
9
  require('../../GlobalCtx-97e4b433.js');
10
+ require('nanoid');
11
11
  require('../Tooltip/Tooltip.js');
12
12
  require('react-dom');
13
13
 
14
- const FileUpload = ({ callback, disabled = false, error, helper, id, label, multiple, name, placeholder, required, tooltip, }) => {
14
+ function formatBytes(bytes, decimals = 2) {
15
+ if (!+bytes)
16
+ return "0 Bytes";
17
+ const k = 1024;
18
+ const dm = decimals < 0 ? 0 : decimals;
19
+ const sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
20
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
21
+ return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`;
22
+ }
23
+ const FileUpload = require$$0.forwardRef(({ onChange, onBlur, disabled = false, error, id, multiple, name, placeholder, required, }, ref) => {
15
24
  const { prefix } = hooks_useGlobalSettings();
25
+ const formControlCtx = components_FormControl_FormControl.useFormControl();
26
+ const { ariaDescribedBy } = formControlCtx;
16
27
  const baseClass = `${prefix}--file-upload`;
17
- const FileUploadClasses = classNames("", {
18
- [baseClass]: true,
28
+ const fileUploadClasses = classNames(baseClass, {
19
29
  [`error`]: error,
20
30
  });
21
- const [uploadfiles, setUploadFiles] = require$$0.useState([]);
22
- /**
23
- * On change, add file to listed files, if there is a callback, call it
24
- */
31
+ const inputClass = `${baseClass}--input`;
32
+ const [uploadfiles, setUploadFiles] = require$$0.useState(null);
25
33
  const handleChange = (e) => {
26
34
  const files = e.target.files;
27
35
  setUploadFiles(files);
28
- if (callback) {
29
- callback(e);
36
+ if (onChange) {
37
+ onChange(e);
30
38
  }
31
39
  };
32
- return (jsxRuntime.jsxs(components_Fieldset_Fieldset, Object.assign({ className: "file-upload" }, { children: [jsxRuntime.jsx(components_FormElement_FormElement, Object.assign({ elemid: name, label: label, helper: helper, error: error, required: required, tooltip: tooltip, type: "file" }, { children: jsxRuntime.jsx("input", { id: id ? id : name, name: name, onChange: handleChange, disabled: disabled, multiple: multiple, placeholder: placeholder, required: required, type: "file", className: FileUploadClasses, "data-label": placeholder }) })), uploadfiles.length > 0 && (jsxRuntime.jsx("ul", Object.assign({ className: `${baseClass}--list` }, { children: [...uploadfiles].map((file, i) => (jsxRuntime.jsx("li", Object.assign({ className: `${baseClass}--list-item` }, { children: file.name }), `${baseClass}--list-item-${i}`))) })))] })));
33
- };
40
+ const inputId = id ? id : name;
41
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", Object.assign({ className: fileUploadClasses }, { children: jsxRuntime.jsxs("label", Object.assign({ className: inputClass }, { children: [placeholder, jsxRuntime.jsx("input", { ref: ref, id: inputId, name: name, onChange: handleChange, onBlur: onBlur, disabled: disabled, multiple: multiple, placeholder: placeholder, required: required, type: "file", "data-label": placeholder, "aria-describedby": ariaDescribedBy })] })) })), uploadfiles && uploadfiles.length > 0 && (jsxRuntime.jsx("ul", Object.assign({ className: `${baseClass}--list` }, { children: [...uploadfiles].map((file, i) => (jsxRuntime.jsx("li", Object.assign({ className: `${baseClass}--list-item` }, { children: `${file.name} (${formatBytes(file.size)})` }), `${baseClass}--list-item-${i}`))) })))] }));
42
+ });
43
+ const LabelledFileUpload = require$$0.forwardRef((props, ref) => {
44
+ const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
45
+ const fieldId = props.id ? props.id : props.name;
46
+ return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(FileUpload, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
47
+ });
34
48
 
35
- module.exports = FileUpload;
49
+ module.exports = LabelledFileUpload;
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var components_FileUpload_FileUpload = require('./FileUpload.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
5
6
  require('react');
6
7
  require('classnames');
7
8
  require('../../hooks/useGlobalSettings.js');
8
- require('tslib');
9
9
  require('../../GlobalCtx-97e4b433.js');
10
- require('../Fieldset/Fieldset.js');
10
+ require('../FormControl/FormControl.js');
11
+ require('nanoid');
11
12
  require('../Tooltip/Tooltip.js');
12
13
  require('react-dom');
13
- require('../FormElement/FormElement.js');
14
14
 
15
15
 
16
16
 
@@ -1,66 +1,19 @@
1
1
  'use strict';
2
2
 
3
+ var tslib = require('tslib');
3
4
  var jsxRuntime = require('react/jsx-runtime');
4
5
  var require$$0 = require('react');
5
- var classNames = require('classnames');
6
6
  var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
7
- var components_Button_Button = require('../Button/Button.js');
8
- var components_FormGroup_FormGroup = require('../FormGroup/FormGroup.js');
9
- var components_Checkbox_Checkbox = require('../Checkbox/Checkbox.js');
10
- var components_ChoiceGroup_ChoiceGroup = require('../ChoiceGroup/ChoiceGroup.js');
11
- var components_DatePicker_DatePicker = require('../DatePicker/DatePicker.js');
12
- var components_Dropdown_Dropdown = require('../Dropdown/Dropdown.js');
13
- var components_FileUpload_FileUpload = require('../FileUpload/FileUpload.js');
14
- var components_Input_Input = require('../Input/Input.js');
15
- var components_NumberPicker_NumberPicker = require('../NumberPicker/NumberPicker.js');
16
- var components_Textarea_Textarea = require('../Textarea/Textarea.js');
17
- require('tslib');
7
+ var classNames = require('classnames');
18
8
  require('../../GlobalCtx-97e4b433.js');
19
- require('../Link/Link.js');
20
- require('../Icon/Icon.js');
21
- require('@ilo-org/icons-react');
22
- require('../Fieldset/Fieldset.js');
23
- require('../Tooltip/Tooltip.js');
24
- require('react-dom');
25
- require('../FormElement/FormElement.js');
26
- require('../Radio/Radio.js');
27
9
 
28
- const Form = ({ action, className, formid, items, submitlabel, }) => {
10
+ const Form = require$$0.forwardRef((_a, ref) => {
11
+ var { children, theme = "light" } = _a, props = tslib.__rest(_a, ["children", "theme"]);
29
12
  const { prefix } = hooks_useGlobalSettings();
30
13
  const baseClass = `${prefix}--form`;
31
- const formClasses = classNames(className, {
32
- [baseClass]: true,
33
- });
34
- return (jsxRuntime.jsxs("form", Object.assign({ className: formClasses, id: formid, action: action }, { children: [items.map((item, i) => {
35
- if ((item === null || item === void 0 ? void 0 : item.type) === "input") {
36
- return require$$0.createElement(components_Input_Input, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
37
- }
38
- if ((item === null || item === void 0 ? void 0 : item.type) === "dropdown") {
39
- return require$$0.createElement(components_Dropdown_Dropdown, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
40
- }
41
- if ((item === null || item === void 0 ? void 0 : item.type) === "checkbox" && Array.isArray(item === null || item === void 0 ? void 0 : item.field) === false) {
42
- return require$$0.createElement(components_Checkbox_Checkbox, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
43
- }
44
- if (((item === null || item === void 0 ? void 0 : item.type) === "checkbox" || (item === null || item === void 0 ? void 0 : item.type) === "radio") &&
45
- Array.isArray(item === null || item === void 0 ? void 0 : item.field)) {
46
- return (jsxRuntime.jsx(components_ChoiceGroup_ChoiceGroup, { items: item === null || item === void 0 ? void 0 : item.field, legend: item === null || item === void 0 ? void 0 : item.legend, choicegroupid: item === null || item === void 0 ? void 0 : item.choicegroupid, grouperror: item === null || item === void 0 ? void 0 : item.grouperror, grouphelper: item === null || item === void 0 ? void 0 : item.grouphelper, grouptooltip: item === null || item === void 0 ? void 0 : item.grouptooltip }, i));
47
- }
48
- if ((item === null || item === void 0 ? void 0 : item.type) === "file") {
49
- return require$$0.createElement(components_FileUpload_FileUpload, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
50
- }
51
- if ((item === null || item === void 0 ? void 0 : item.type) === "date") {
52
- return require$$0.createElement(components_DatePicker_DatePicker, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
53
- }
54
- if ((item === null || item === void 0 ? void 0 : item.type) === "number") {
55
- return require$$0.createElement(components_NumberPicker_NumberPicker, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
56
- }
57
- if ((item === null || item === void 0 ? void 0 : item.type) === "textarea") {
58
- return require$$0.createElement(components_Textarea_Textarea, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
59
- }
60
- if ((item === null || item === void 0 ? void 0 : item.type) === "formgroup") {
61
- return require$$0.createElement(components_FormGroup_FormGroup, Object.assign({}, item === null || item === void 0 ? void 0 : item.field, { key: i }));
62
- }
63
- }), jsxRuntime.jsx(components_Button_Button, { kind: "submit", label: submitlabel, size: "large", type: "primary" })] })));
64
- };
14
+ const themeClass = `${baseClass}__theme__${theme}`;
15
+ const formClasses = classNames(baseClass, themeClass);
16
+ return (jsxRuntime.jsx("form", Object.assign({ ref: ref, className: formClasses }, props, { children: children })));
17
+ });
65
18
 
66
19
  module.exports = Form;
@@ -1,31 +1,21 @@
1
1
  'use strict';
2
2
 
3
3
  var components_Form_Form = require('./Form.js');
4
+ require('tslib');
4
5
  require('react/jsx-runtime');
5
6
  require('react');
6
- require('classnames');
7
7
  require('../../hooks/useGlobalSettings.js');
8
- require('tslib');
9
8
  require('../../GlobalCtx-97e4b433.js');
10
- require('../Button/Button.js');
11
- require('../Link/Link.js');
12
- require('../Icon/Icon.js');
13
- require('@ilo-org/icons-react');
14
- require('../FormGroup/FormGroup.js');
15
- require('../Checkbox/Checkbox.js');
16
- require('../Fieldset/Fieldset.js');
17
- require('../Tooltip/Tooltip.js');
18
- require('react-dom');
19
- require('../FormElement/FormElement.js');
20
- require('../ChoiceGroup/ChoiceGroup.js');
21
- require('../Radio/Radio.js');
22
- require('../DatePicker/DatePicker.js');
23
- require('../Dropdown/Dropdown.js');
24
- require('../FileUpload/FileUpload.js');
25
- require('../Input/Input.js');
26
- require('../NumberPicker/NumberPicker.js');
27
- require('../Textarea/Textarea.js');
9
+ require('classnames');
28
10
 
11
+ const basic = {
12
+ theme: "light",
13
+ };
29
14
 
15
+ var Form_args = /*#__PURE__*/Object.freeze({
16
+ __proto__: null,
17
+ basic: basic
18
+ });
30
19
 
31
20
  exports.Form = components_Form_Form;
21
+ exports.FormArgs = Form_args;