@ilo-org/react 0.7.8 → 0.8.1
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.
- package/CHANGELOG.md +24 -0
- package/lib/cjs/components/Checkbox/Checkbox.js +28 -16
- package/lib/cjs/components/Checkbox/index.js +25 -3
- package/lib/cjs/components/DatePicker/DatePicker.js +21 -16
- package/lib/cjs/components/DatePicker/index.js +4 -4
- package/lib/cjs/components/Dropdown/Dropdown.js +19 -15
- package/lib/cjs/components/Dropdown/index.js +3 -3
- package/lib/cjs/components/Fieldset/Fieldset.js +33 -9
- package/lib/cjs/components/Fieldset/index.js +2 -2
- package/lib/cjs/components/FileUpload/FileUpload.js +29 -15
- package/lib/cjs/components/FileUpload/index.js +3 -3
- package/lib/cjs/components/Form/Form.js +8 -55
- package/lib/cjs/components/Form/index.js +10 -20
- package/lib/cjs/components/FormControl/FormControl.js +79 -0
- package/lib/cjs/components/FormControl/index.js +16 -0
- package/lib/cjs/components/Input/Input.js +1 -1
- package/lib/cjs/components/NumberPicker/NumberPicker.js +21 -16
- package/lib/cjs/components/NumberPicker/index.js +4 -4
- package/lib/cjs/components/Radio/Radio.js +34 -17
- package/lib/cjs/components/Radio/index.js +19 -4
- package/lib/cjs/components/TextInput/TextInput.js +30 -0
- package/lib/cjs/components/TextInput/index.js +52 -0
- package/lib/cjs/components/Textarea/Textarea.js +19 -19
- package/lib/cjs/components/Textarea/index.js +26 -5
- package/lib/cjs/components/Toggle/Toggle.js +33 -0
- package/lib/cjs/components/Toggle/index.js +51 -0
- package/lib/cjs/components/Tooltip/Tooltip.js +2 -2
- package/lib/cjs/components/index.js +10 -11
- package/lib/cjs/hooks/usePrevious.js +20 -0
- package/lib/cjs/index.js +10 -11
- package/lib/esm/components/Checkbox/Checkbox.js +31 -19
- package/lib/esm/components/Checkbox/index.js +27 -2
- package/lib/esm/components/DatePicker/DatePicker.js +22 -17
- package/lib/esm/components/DatePicker/index.js +4 -4
- package/lib/esm/components/Dropdown/Dropdown.js +20 -16
- package/lib/esm/components/Dropdown/index.js +3 -3
- package/lib/esm/components/Fieldset/Fieldset.js +31 -11
- package/lib/esm/components/Fieldset/index.js +1 -1
- package/lib/esm/components/FileUpload/FileUpload.js +31 -17
- package/lib/esm/components/FileUpload/index.js +3 -3
- package/lib/esm/components/Form/Form.js +10 -57
- package/lib/esm/components/Form/index.js +13 -20
- package/lib/esm/components/FormControl/FormControl.js +73 -0
- package/lib/esm/components/{ChoiceGroup → FormControl}/index.js +3 -6
- package/lib/esm/components/NumberPicker/NumberPicker.js +21 -16
- package/lib/esm/components/NumberPicker/index.js +4 -4
- package/lib/esm/components/Radio/Radio.js +34 -17
- package/lib/esm/components/Radio/index.js +21 -3
- package/lib/esm/components/TextInput/TextInput.js +28 -0
- package/lib/esm/components/TextInput/index.js +49 -0
- package/lib/esm/components/Textarea/Textarea.js +19 -19
- package/lib/esm/components/Textarea/index.js +28 -4
- package/lib/esm/components/Toggle/Toggle.js +31 -0
- package/lib/esm/components/Toggle/index.js +48 -0
- package/lib/esm/components/Tooltip/Tooltip.js +2 -2
- package/lib/esm/components/index.js +8 -5
- package/lib/esm/hooks/usePrevious.js +15 -0
- package/lib/esm/index.js +8 -5
- package/lib/types/react/src/components/Checkbox/Checkbox.args.d.ts +52 -0
- package/lib/types/react/src/components/Checkbox/Checkbox.d.ts +5 -3
- package/lib/types/react/src/components/Checkbox/Checkbox.props.d.ts +4 -13
- package/lib/types/react/src/components/Checkbox/index.d.ts +1 -0
- package/lib/types/react/src/components/DatePicker/DatePicker.d.ts +4 -3
- package/lib/types/react/src/components/DatePicker/DatePicker.props.d.ts +10 -43
- package/lib/types/react/src/components/Dropdown/Dropdown.d.ts +5 -3
- package/lib/types/react/src/components/Dropdown/Dropdown.props.d.ts +16 -42
- package/lib/types/react/src/components/Fieldset/Fieldset.d.ts +6 -0
- package/lib/types/react/src/components/Fieldset/Fieldset.props.d.ts +14 -21
- package/lib/types/react/src/components/FileUpload/FileUpload.d.ts +5 -3
- package/lib/types/react/src/components/FileUpload/FileUpload.props.d.ts +7 -44
- package/lib/types/react/src/components/Form/Form.args.d.ts +2 -0
- package/lib/types/react/src/components/Form/Form.d.ts +1 -2
- package/lib/types/react/src/components/Form/Form.props.d.ts +4 -111
- package/lib/types/react/src/components/Form/index.d.ts +1 -0
- package/lib/types/react/src/components/FormControl/FormControl.d.ts +9 -0
- package/lib/types/react/src/components/FormControl/FormControl.props.d.ts +55 -0
- package/lib/types/react/src/components/FormControl/index.d.ts +2 -0
- package/lib/types/react/src/components/FormElement/FormElement.props.d.ts +2 -2
- package/lib/types/react/src/components/Input/Input.props.d.ts +2 -2
- package/lib/types/react/src/components/NumberPicker/NumberPicker.d.ts +5 -3
- package/lib/types/react/src/components/NumberPicker/NumberPicker.props.d.ts +5 -42
- package/lib/types/react/src/components/Radio/Radio.args.d.ts +8 -0
- package/lib/types/react/src/components/Radio/Radio.d.ts +5 -3
- package/lib/types/react/src/components/Radio/Radio.props.d.ts +4 -14
- package/lib/types/react/src/components/Radio/index.d.ts +1 -0
- package/lib/types/react/src/components/TextInput/TextInput.args.d.ts +10 -0
- package/lib/types/react/src/components/TextInput/TextInput.d.ts +6 -0
- package/lib/types/react/src/components/TextInput/TextInput.props.d.ts +17 -0
- package/lib/types/react/src/components/TextInput/index.d.ts +2 -0
- package/lib/types/react/src/components/Textarea/Textarea.args.d.ts +10 -0
- package/lib/types/react/src/components/Textarea/Textarea.d.ts +5 -3
- package/lib/types/react/src/components/Textarea/Textarea.props.d.ts +17 -39
- package/lib/types/react/src/components/Textarea/index.d.ts +2 -0
- package/lib/types/react/src/components/Toggle/Toggle.args.d.ts +12 -0
- package/lib/types/react/src/components/Toggle/Toggle.d.ts +5 -0
- package/lib/types/react/src/components/Toggle/Toggle.props.d.ts +22 -0
- package/lib/types/react/src/components/Toggle/index.d.ts +3 -0
- package/lib/types/react/src/components/Tooltip/Tooltip.props.d.ts +4 -0
- package/lib/types/react/src/components/index.d.ts +1 -5
- package/lib/types/react/src/hooks/usePrevious.d.ts +2 -0
- package/lib/types/react/src/types/index.d.ts +57 -1
- package/package.json +20 -19
- package/src/components/Checkbox/Checkbox.args.ts +31 -9
- package/src/components/Checkbox/Checkbox.props.ts +5 -13
- package/src/components/Checkbox/Checkbox.tsx +78 -76
- package/src/components/Checkbox/index.ts +1 -0
- package/src/components/DatePicker/DatePicker.args.ts +6 -32
- package/src/components/DatePicker/DatePicker.props.ts +11 -51
- package/src/components/DatePicker/DatePicker.tsx +71 -110
- package/src/components/Dropdown/Dropdown.args.ts +42 -192
- package/src/components/Dropdown/Dropdown.props.ts +18 -49
- package/src/components/Dropdown/Dropdown.tsx +73 -62
- package/src/components/Fieldset/Fieldset.props.ts +14 -23
- package/src/components/Fieldset/Fieldset.tsx +75 -69
- package/src/components/FileUpload/FileUpload.args.ts +25 -27
- package/src/components/FileUpload/FileUpload.props.ts +8 -53
- package/src/components/FileUpload/FileUpload.tsx +103 -72
- package/src/components/Form/Form.args.ts +2 -184
- package/src/components/Form/Form.props.ts +4 -133
- package/src/components/Form/Form.tsx +17 -77
- package/src/components/Form/index.ts +1 -0
- package/src/components/FormControl/FormControl.props.ts +72 -0
- package/src/components/FormControl/FormControl.tsx +169 -0
- package/src/components/FormControl/index.ts +2 -0
- package/src/components/FormElement/FormElement.props.ts +2 -2
- package/src/components/Input/Input.props.ts +2 -2
- package/src/components/Navigation/Navigation.args.ts +2 -1
- package/src/components/NumberPicker/NumberPicker.args.ts +18 -26
- package/src/components/NumberPicker/NumberPicker.props.ts +7 -52
- package/src/components/NumberPicker/NumberPicker.tsx +73 -56
- package/src/components/Radio/Radio.args.ts +1 -7
- package/src/components/Radio/Radio.props.ts +6 -14
- package/src/components/Radio/Radio.tsx +90 -52
- package/src/components/Radio/index.ts +1 -0
- package/src/components/TextInput/TextInput.args.ts +75 -0
- package/src/components/TextInput/TextInput.props.ts +20 -0
- package/src/components/TextInput/TextInput.tsx +71 -0
- package/src/components/TextInput/index.ts +2 -0
- package/src/components/Textarea/Textarea.args.ts +19 -37
- package/src/components/Textarea/Textarea.props.ts +18 -46
- package/src/components/Textarea/Textarea.tsx +44 -59
- package/src/components/Textarea/index.ts +2 -0
- package/src/components/Toggle/Toggle.args.ts +62 -0
- package/src/components/Toggle/Toggle.props.ts +27 -0
- package/src/components/Toggle/Toggle.tsx +85 -0
- package/src/components/Toggle/index.ts +3 -0
- package/src/components/Tooltip/Tooltip.props.ts +5 -0
- package/src/components/Tooltip/Tooltip.tsx +2 -0
- package/src/components/index.ts +1 -5
- package/src/hooks/usePrevious.ts +15 -0
- package/src/types/forms.args.ts +288 -0
- package/src/types/index.ts +69 -1
- package/tsconfig.json +2 -1
- package/lib/cjs/components/ChoiceGroup/ChoiceGroup.js +0 -34
- package/lib/cjs/components/ChoiceGroup/index.js +0 -19
- package/lib/cjs/components/FormGroup/FormGroup.js +0 -58
- package/lib/cjs/components/FormGroup/index.js +0 -26
- package/lib/esm/components/ChoiceGroup/ChoiceGroup.js +0 -32
- package/lib/esm/components/FormGroup/FormGroup.js +0 -56
- package/lib/esm/components/FormGroup/index.js +0 -20
- package/lib/types/react/src/components/ChoiceGroup/ChoiceGroup.d.ts +0 -4
- package/lib/types/react/src/components/ChoiceGroup/ChoiceGroup.props.d.ts +0 -20
- package/lib/types/react/src/components/ChoiceGroup/index.d.ts +0 -1
- package/lib/types/react/src/components/FormGroup/FormGroup.d.ts +0 -4
- package/lib/types/react/src/components/FormGroup/FormGroup.props.d.ts +0 -81
- package/lib/types/react/src/components/FormGroup/index.d.ts +0 -1
- package/src/components/ChoiceGroup/ChoiceGroup.args.ts +0 -95
- package/src/components/ChoiceGroup/ChoiceGroup.props.ts +0 -25
- package/src/components/ChoiceGroup/ChoiceGroup.tsx +0 -54
- package/src/components/ChoiceGroup/index.ts +0 -1
- package/src/components/FormGroup/FormGroup.args.ts +0 -85
- package/src/components/FormGroup/FormGroup.props.ts +0 -102
- package/src/components/FormGroup/FormGroup.tsx +0 -73
- package/src/components/FormGroup/index.ts +0 -1
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var classNames = require('classnames');
|
|
7
|
+
var nanoid = require('nanoid');
|
|
8
|
+
var require$$0 = require('react');
|
|
9
|
+
var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
|
|
10
|
+
var components_Tooltip_Tooltip = require('../Tooltip/Tooltip.js');
|
|
11
|
+
require('tslib');
|
|
12
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
13
|
+
require('react-dom');
|
|
14
|
+
|
|
15
|
+
// Calculates unique IDs for the internal accessibility elements
|
|
16
|
+
// TODO: When we upgrade to React 8, this should use useId instead
|
|
17
|
+
function getA11yFields(baseClass = "", { tooltip, helper, errorMessage } = {}) {
|
|
18
|
+
return {
|
|
19
|
+
tooltipId: tooltip && `${baseClass}--tooltip--${nanoid.nanoid()}`,
|
|
20
|
+
helperId: helper && `${baseClass}--helper--${nanoid.nanoid()}`,
|
|
21
|
+
errorId: errorMessage && `${baseClass}--error--${nanoid.nanoid()}`,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
// Calculates the aria-describedby attribute value based on whether or not there's an error
|
|
25
|
+
function getAriaDescribedBy(getAllyFields, hasError) {
|
|
26
|
+
const { tooltipId, helperId, errorId } = getAllyFields;
|
|
27
|
+
const ariaDescribedBy = classNames(tooltipId, {
|
|
28
|
+
[`${helperId}`]: !hasError,
|
|
29
|
+
[`${errorId}`]: hasError,
|
|
30
|
+
});
|
|
31
|
+
// For some reason, classnames seems to return "undefined" as a string sometimes
|
|
32
|
+
if (!ariaDescribedBy || ariaDescribedBy === "undefined") {
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
return ariaDescribedBy;
|
|
36
|
+
}
|
|
37
|
+
// The context passed down to form elements wrapped by the form control
|
|
38
|
+
const FormControlContext = require$$0.createContext({});
|
|
39
|
+
// Hook to get the context value
|
|
40
|
+
const useFormControl = () => require$$0.useContext(FormControlContext);
|
|
41
|
+
const FormControl = ({ children, className, label, helper, errorMessage, tooltip, style, error, disabled, fieldId, labelSize = "medium", labelPlacement = "top", }) => {
|
|
42
|
+
const { prefix } = hooks_useGlobalSettings();
|
|
43
|
+
// Classes applied to the outer container
|
|
44
|
+
const baseClass = `${prefix}--form-control`;
|
|
45
|
+
// The ids of the tooltip, helper, and error only get calculated on first render
|
|
46
|
+
const a11yFields = require$$0.useMemo(() => getA11yFields(baseClass, { helper, errorMessage, tooltip }), [baseClass, helper, errorMessage, tooltip]);
|
|
47
|
+
// The ids of the tooltip, helper, and error
|
|
48
|
+
const { tooltipId, helperId, errorId } = a11yFields;
|
|
49
|
+
// The aria-describedby attribute value
|
|
50
|
+
const [ariaDescribedBy, setAriaDescribedBy] = require$$0.useState(undefined);
|
|
51
|
+
// Update the aria-describedby attribute value when the error changes
|
|
52
|
+
require$$0.useEffect(() => {
|
|
53
|
+
setAriaDescribedBy(getAriaDescribedBy({ tooltipId, helperId, errorId }, error));
|
|
54
|
+
}, [tooltipId, helperId, errorId, error]);
|
|
55
|
+
// The context passed down to form elements wrapped by the form control
|
|
56
|
+
const contextValue = {
|
|
57
|
+
ariaDescribedBy,
|
|
58
|
+
};
|
|
59
|
+
// Classes applied to the outer container
|
|
60
|
+
const errorClass = `${baseClass}__error`;
|
|
61
|
+
const disabledClass = `${baseClass}__disabled`;
|
|
62
|
+
const labelPlacementClass = `${baseClass}__label-placement__${labelPlacement}`;
|
|
63
|
+
const formControlClass = classNames(baseClass, className, labelPlacementClass, [{ [errorClass]: error }, { [disabledClass]: disabled }]);
|
|
64
|
+
// Classes applies to the label
|
|
65
|
+
const labelBaseClass = `${baseClass}--label`;
|
|
66
|
+
const labelSizeClass = `${labelBaseClass}__size__${labelSize}`;
|
|
67
|
+
const labelClass = classNames(labelBaseClass, labelSizeClass);
|
|
68
|
+
// Helper class
|
|
69
|
+
const helperClass = `${baseClass}--helper`;
|
|
70
|
+
// Show the error message if there is an error and an error message
|
|
71
|
+
const showError = !!error && !!errorMessage;
|
|
72
|
+
// Show the helper text if there is no error and a helper text
|
|
73
|
+
const showHelper = !showError && !!helper;
|
|
74
|
+
return (jsxRuntime.jsx(FormControlContext.Provider, Object.assign({ value: contextValue }, { children: jsxRuntime.jsxs("div", Object.assign({ className: formControlClass, style: style }, { children: [jsxRuntime.jsxs("span", Object.assign({ className: labelClass }, { children: [jsxRuntime.jsx("label", Object.assign({ htmlFor: fieldId }, { children: label })), tooltip && (jsxRuntime.jsx(components_Tooltip_Tooltip, { id: tooltipId, className: `${baseClass}--legend--tooltip`, icon: true, label: tooltip, theme: "dark" }))] })), children, showHelper && (jsxRuntime.jsx("span", Object.assign({ id: helperId, className: helperClass }, { children: helper }))), showError && (jsxRuntime.jsx("span", Object.assign({ id: errorId, className: helperClass, "aria-live": "assertive" }, { children: errorMessage })))] })) })));
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
exports.FormControlContext = FormControlContext;
|
|
78
|
+
exports.default = FormControl;
|
|
79
|
+
exports.useFormControl = useFormControl;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var components_FormControl_FormControl = require('./FormControl.js');
|
|
4
|
+
require('react/jsx-runtime');
|
|
5
|
+
require('classnames');
|
|
6
|
+
require('nanoid');
|
|
7
|
+
require('react');
|
|
8
|
+
require('../../hooks/useGlobalSettings.js');
|
|
9
|
+
require('tslib');
|
|
10
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
11
|
+
require('../Tooltip/Tooltip.js');
|
|
12
|
+
require('react-dom');
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
exports.FormControl = components_FormControl_FormControl.default;
|
|
@@ -26,7 +26,7 @@ const Input = ({ callback, disabled = false, error, helper, id, label, name, pla
|
|
|
26
26
|
callback(e);
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
-
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 }, { children: jsxRuntime.jsx("input", { id: id ? id : name, name: name, onChange: handleChange, disabled: disabled, placeholder: placeholder, required: required, type: type, className: InputClasses }) })) }));
|
|
29
|
+
return (jsxRuntime.jsx(components_Fieldset_Fieldset.default, { 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: type, className: InputClasses }) })) }));
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
module.exports = Input;
|
|
@@ -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
|
|
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 NumberPicker = ({
|
|
14
|
+
const NumberPicker = require$$0.forwardRef(({ onChange, onBlur, disabled = false, error, id, name, placeholder, required, }, ref) => {
|
|
15
15
|
const { prefix } = hooks_useGlobalSettings();
|
|
16
|
+
const formControlCtx = components_FormControl_FormControl.useFormControl();
|
|
17
|
+
const { ariaDescribedBy } = formControlCtx;
|
|
18
|
+
const inputClass = `${prefix}--input`;
|
|
16
19
|
const baseClass = `${prefix}--numberpicker`;
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
+
const hasError = !disabled && !!error;
|
|
21
|
+
const numberPickerClasses = classNames(inputClass, baseClass, {
|
|
22
|
+
error: hasError,
|
|
20
23
|
});
|
|
21
|
-
/**
|
|
22
|
-
* On change, if there is a callback, call it
|
|
23
|
-
*/
|
|
24
24
|
const handleChange = (e) => {
|
|
25
|
-
if (
|
|
26
|
-
|
|
25
|
+
if (onChange) {
|
|
26
|
+
onChange(e);
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
-
return (jsxRuntime.jsx(
|
|
30
|
-
};
|
|
29
|
+
return (jsxRuntime.jsx("input", { ref: ref, id: id ? id : name, name: name, onChange: handleChange, onBlur: onBlur, disabled: disabled, placeholder: placeholder, required: required, type: "number", className: numberPickerClasses, pattern: "[0-9]*", inputMode: "numeric", "aria-describedby": ariaDescribedBy }));
|
|
30
|
+
});
|
|
31
|
+
const LabelledNumberPicker = 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(NumberPicker, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
|
|
35
|
+
});
|
|
31
36
|
|
|
32
|
-
module.exports =
|
|
37
|
+
module.exports = LabelledNumberPicker;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components_NumberPicker_NumberPicker = require('./NumberPicker.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('../
|
|
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,29 +1,46 @@
|
|
|
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
|
|
7
|
-
require('
|
|
8
|
-
require('
|
|
8
|
+
var components_Fieldset_Fieldset = require('../Fieldset/Fieldset.js');
|
|
9
|
+
var components_FormControl_FormControl = require('../FormControl/FormControl.js');
|
|
10
|
+
var hooks_usePrevious = require('../../hooks/usePrevious.js');
|
|
9
11
|
require('../../GlobalCtx-97e4b433.js');
|
|
12
|
+
require('../Tooltip/Tooltip.js');
|
|
13
|
+
require('react-dom');
|
|
14
|
+
require('nanoid');
|
|
10
15
|
|
|
11
|
-
const Radio = ({
|
|
16
|
+
const Radio = require$$0.forwardRef(({ onChange, onBlur, disabled = false, error, id, name, required, checked, defaultChecked = false, value, }, ref) => {
|
|
12
17
|
const { prefix } = hooks_useGlobalSettings();
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
const { setHasError } = components_Fieldset_Fieldset.useFieldsetError();
|
|
19
|
+
const formControlCtx = components_FormControl_FormControl.useFormControl();
|
|
20
|
+
const prevError = hooks_usePrevious.usePrevious(error);
|
|
21
|
+
require$$0.useEffect(() => {
|
|
22
|
+
if (error !== prevError) {
|
|
23
|
+
setHasError(!!error);
|
|
24
|
+
}
|
|
25
|
+
}, [error, prevError, setHasError]);
|
|
26
|
+
const { ariaDescribedBy } = formControlCtx;
|
|
21
27
|
const handleChange = (e) => {
|
|
22
|
-
|
|
23
|
-
|
|
28
|
+
console.log(e.target.value);
|
|
29
|
+
if (onChange) {
|
|
30
|
+
onChange(e);
|
|
24
31
|
}
|
|
25
32
|
};
|
|
26
|
-
|
|
27
|
-
}
|
|
33
|
+
const baseClass = `${prefix}--radio`;
|
|
34
|
+
const errorClass = `${baseClass}__error`;
|
|
35
|
+
const RadioClasses = classNames(baseClass, {
|
|
36
|
+
[errorClass]: error,
|
|
37
|
+
});
|
|
38
|
+
return (jsxRuntime.jsx("input", { ref: ref, id: id ? id : name, name: name, onChange: handleChange, onBlur: onBlur, disabled: disabled, required: required, type: "radio", className: RadioClasses, defaultChecked: defaultChecked, "aria-describedby": ariaDescribedBy, checked: checked, value: value }));
|
|
39
|
+
});
|
|
40
|
+
const LabelledRadio = require$$0.forwardRef((props, ref) => {
|
|
41
|
+
const { style, inputStyle, className, labelPlacement = "end", labelSize = "small" } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className", "labelPlacement", "labelSize"]);
|
|
42
|
+
const fieldId = props.id ? props.id : props.name;
|
|
43
|
+
return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className, labelPlacement: labelPlacement, labelSize: labelSize }, rest, { children: jsxRuntime.jsx(Radio, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
|
|
44
|
+
});
|
|
28
45
|
|
|
29
|
-
module.exports =
|
|
46
|
+
module.exports = LabelledRadio;
|
|
@@ -1,14 +1,29 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components_Radio_Radio = require('./Radio.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('../
|
|
11
|
-
|
|
10
|
+
require('../Fieldset/Fieldset.js');
|
|
11
|
+
require('../Tooltip/Tooltip.js');
|
|
12
|
+
require('react-dom');
|
|
13
|
+
require('../FormControl/FormControl.js');
|
|
14
|
+
require('nanoid');
|
|
15
|
+
require('../../hooks/usePrevious.js');
|
|
12
16
|
|
|
17
|
+
const basic = {
|
|
18
|
+
className: "Radio",
|
|
19
|
+
name: "radio",
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Sample prop definitions Radio's enumerable properties (imported in stories and test)
|
|
23
|
+
*/
|
|
24
|
+
const RadioArgs = {
|
|
25
|
+
basic,
|
|
26
|
+
};
|
|
13
27
|
|
|
14
28
|
exports.Radio = components_Radio_Radio;
|
|
29
|
+
exports.RadioArgs = RadioArgs;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var require$$0 = require('react');
|
|
6
|
+
var classNames = require('classnames');
|
|
7
|
+
var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
|
|
8
|
+
var components_FormControl_FormControl = require('../FormControl/FormControl.js');
|
|
9
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
10
|
+
require('nanoid');
|
|
11
|
+
require('../Tooltip/Tooltip.js');
|
|
12
|
+
require('react-dom');
|
|
13
|
+
|
|
14
|
+
const TextInput = require$$0.forwardRef(({ onChange, onBlur, error, id, name, placeholder, required, pattern, disabled = false, type = "text", }, ref) => {
|
|
15
|
+
const { prefix } = hooks_useGlobalSettings();
|
|
16
|
+
const formControlCtx = components_FormControl_FormControl.useFormControl();
|
|
17
|
+
const { ariaDescribedBy } = formControlCtx;
|
|
18
|
+
const baseClass = `${prefix}--text-input`;
|
|
19
|
+
const inputClass = classNames(baseClass, {
|
|
20
|
+
[`${baseClass}__error`]: error,
|
|
21
|
+
});
|
|
22
|
+
return (jsxRuntime.jsx("input", { ref: ref, id: id ? id : name, name: name, onChange: onChange, onBlur: onBlur, disabled: disabled, placeholder: placeholder, required: required, type: type, className: inputClass, pattern: pattern, "aria-describedby": ariaDescribedBy }));
|
|
23
|
+
});
|
|
24
|
+
const LabelledTextInput = require$$0.forwardRef((props, ref) => {
|
|
25
|
+
const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
|
|
26
|
+
const fieldId = props.id ? props.id : props.name;
|
|
27
|
+
return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(TextInput, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
module.exports = LabelledTextInput;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var components_TextInput_TextInput = require('./TextInput.js');
|
|
4
|
+
require('tslib');
|
|
5
|
+
require('react/jsx-runtime');
|
|
6
|
+
require('react');
|
|
7
|
+
require('classnames');
|
|
8
|
+
require('../../hooks/useGlobalSettings.js');
|
|
9
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
10
|
+
require('../FormControl/FormControl.js');
|
|
11
|
+
require('nanoid');
|
|
12
|
+
require('../Tooltip/Tooltip.js');
|
|
13
|
+
require('react-dom');
|
|
14
|
+
|
|
15
|
+
const basic = {
|
|
16
|
+
disabled: false,
|
|
17
|
+
errorMessage: "This is an error message",
|
|
18
|
+
error: false,
|
|
19
|
+
style: { width: "100%" },
|
|
20
|
+
id: "text-input",
|
|
21
|
+
label: "Insert your name here",
|
|
22
|
+
labelPlacement: "top",
|
|
23
|
+
labelSize: "medium",
|
|
24
|
+
name: "text",
|
|
25
|
+
placeholder: "This is a text field",
|
|
26
|
+
required: false,
|
|
27
|
+
type: "text",
|
|
28
|
+
};
|
|
29
|
+
const isdisabled = Object.assign(Object.assign({}, basic), { disabled: true, placeholder: "Disabled Text Field" });
|
|
30
|
+
const hashelper = Object.assign(Object.assign({}, basic), { placeholder: "This has a helper text" });
|
|
31
|
+
const haserror = Object.assign(Object.assign({}, basic), { placeholder: "This has an error", error: true });
|
|
32
|
+
const hastooltip = Object.assign(Object.assign({}, basic), { placeholder: "This has an tooltip", tooltip: "This is a tooltip" });
|
|
33
|
+
const email = Object.assign(Object.assign({}, basic), { label: "Enter your email address", placeholder: "my@email.com", type: "email", id: "email-input" });
|
|
34
|
+
const password = Object.assign(Object.assign({}, basic), { label: "Enter your password", placeholder: "Must be 8 digits long", type: "password", id: "password-input" });
|
|
35
|
+
const telephone = Object.assign(Object.assign({}, basic), { name: "tel", label: "Enter your telephone number", placeholder: "###-###-####", required: false, type: "tel", pattern: "[0-9]{3}-[0-9]{3}-[0-9]{4}" });
|
|
36
|
+
const url = Object.assign(Object.assign({}, basic), { label: "Enter website address", id: "url-input", name: "url", placeholder: "https://www.example.com", required: false, type: "url" });
|
|
37
|
+
|
|
38
|
+
var TextInput_args = /*#__PURE__*/Object.freeze({
|
|
39
|
+
__proto__: null,
|
|
40
|
+
basic: basic,
|
|
41
|
+
email: email,
|
|
42
|
+
haserror: haserror,
|
|
43
|
+
hashelper: hashelper,
|
|
44
|
+
hastooltip: hastooltip,
|
|
45
|
+
isdisabled: isdisabled,
|
|
46
|
+
password: password,
|
|
47
|
+
telephone: telephone,
|
|
48
|
+
url: url
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
exports.TextInput = components_TextInput_TextInput;
|
|
52
|
+
exports.TextInputArgs = TextInput_args;
|
|
@@ -1,32 +1,32 @@
|
|
|
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
|
|
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 Textarea = (
|
|
14
|
+
const Textarea = require$$0.forwardRef((_a, ref) => {
|
|
15
|
+
var { error, className, name, id } = _a, props = tslib.__rest(_a, ["error", "className", "name", "id"]);
|
|
15
16
|
const { prefix } = hooks_useGlobalSettings();
|
|
17
|
+
const formControlCtx = components_FormControl_FormControl.useFormControl();
|
|
18
|
+
const { ariaDescribedBy } = formControlCtx;
|
|
16
19
|
const baseClass = `${prefix}--textarea`;
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
[
|
|
20
|
+
const errorClass = `${baseClass}__error`;
|
|
21
|
+
const textAreaClass = classNames(baseClass, className, {
|
|
22
|
+
[errorClass]: error,
|
|
20
23
|
});
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
};
|
|
29
|
-
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 }, { children: jsxRuntime.jsx("textarea", { id: id, name: name, onChange: handleChange, disabled: disabled, placeholder: placeholder, required: required, className: TextareaClasses, maxLength: maxlength, minLength: minlength, spellCheck: spellcheck }) })) }));
|
|
30
|
-
};
|
|
24
|
+
return (jsxRuntime.jsx("textarea", Object.assign({ ref: ref, className: textAreaClass, name: name, id: id ? id : name, "aria-describedby": ariaDescribedBy }, props)));
|
|
25
|
+
});
|
|
26
|
+
const LabelledTextarea = require$$0.forwardRef((props, ref) => {
|
|
27
|
+
const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
|
|
28
|
+
const fieldId = props.id ? props.id : props.name;
|
|
29
|
+
return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(Textarea, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
|
|
30
|
+
});
|
|
31
31
|
|
|
32
|
-
module.exports =
|
|
32
|
+
module.exports = LabelledTextarea;
|
|
@@ -1,17 +1,38 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components_Textarea_Textarea = require('./Textarea.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('../
|
|
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
|
-
|
|
15
14
|
|
|
15
|
+
const placeholder = "It was a cold day in April and the clocks were striking thirteen....";
|
|
16
|
+
const basic = {
|
|
17
|
+
id: "textarea",
|
|
18
|
+
disabled: false,
|
|
19
|
+
name: "textarea",
|
|
20
|
+
placeholder,
|
|
21
|
+
required: false,
|
|
22
|
+
spellcheck: false,
|
|
23
|
+
label: "Insert your life story here",
|
|
24
|
+
labelPlacement: "top",
|
|
25
|
+
labelSize: "medium",
|
|
26
|
+
style: { width: "100%" },
|
|
27
|
+
errorMessage: "This is an error message",
|
|
28
|
+
};
|
|
29
|
+
const haserror = Object.assign(Object.assign({}, basic), { error: true });
|
|
30
|
+
const disabled = Object.assign(Object.assign({}, basic), { disabled: true });
|
|
31
|
+
var Textarea_args = {
|
|
32
|
+
basic,
|
|
33
|
+
haserror,
|
|
34
|
+
disabled,
|
|
35
|
+
};
|
|
16
36
|
|
|
17
37
|
exports.Textarea = components_Textarea_Textarea;
|
|
38
|
+
exports.TextareaArgs = Textarea_args;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var require$$0 = require('react');
|
|
6
|
+
var hooks_useGlobalSettings = require('../../hooks/useGlobalSettings.js');
|
|
7
|
+
var classNames = require('classnames');
|
|
8
|
+
var components_FormControl_FormControl = require('../FormControl/FormControl.js');
|
|
9
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
10
|
+
require('nanoid');
|
|
11
|
+
require('../Tooltip/Tooltip.js');
|
|
12
|
+
require('react-dom');
|
|
13
|
+
|
|
14
|
+
const Toggle = require$$0.forwardRef(({ size = "medium", error = false, disabled = false, defaultChecked = false, required = false, id, name, onChange, onBlur, onClick, checked, className, }, ref) => {
|
|
15
|
+
const { prefix } = hooks_useGlobalSettings();
|
|
16
|
+
const formControlCtx = components_FormControl_FormControl.useFormControl();
|
|
17
|
+
const { ariaDescribedBy } = formControlCtx;
|
|
18
|
+
const hasError = !disabled && !!error;
|
|
19
|
+
const baseClass = `${prefix}--input--toggle`;
|
|
20
|
+
const sliderClass = `${baseClass}--slider`;
|
|
21
|
+
const toggleClass = classNames(baseClass, className, `${baseClass}__size__${size}`, [
|
|
22
|
+
{ [`${baseClass}__error`]: hasError },
|
|
23
|
+
{ [`${baseClass}__disabled`]: disabled },
|
|
24
|
+
]);
|
|
25
|
+
return (jsxRuntime.jsxs("div", Object.assign({ className: toggleClass }, { children: [jsxRuntime.jsx("input", { ref: ref, checked: checked, disabled: disabled, defaultChecked: defaultChecked, name: name, id: id ? id : name, type: "checkbox", role: "switch", required: required, onChange: onChange, onBlur: onBlur, onClick: onClick, "aria-describedby": ariaDescribedBy }), jsxRuntime.jsx("span", { className: sliderClass })] })));
|
|
26
|
+
});
|
|
27
|
+
const LabelledToggle = require$$0.forwardRef((props, ref) => {
|
|
28
|
+
const fieldId = props.id ? props.id : props.name;
|
|
29
|
+
const { style, inputStyle, className } = props, rest = tslib.__rest(props, ["style", "inputStyle", "className"]);
|
|
30
|
+
return (jsxRuntime.jsx(components_FormControl_FormControl.default, Object.assign({ fieldId: fieldId, style: style, className: className }, rest, { children: jsxRuntime.jsx(Toggle, Object.assign({ ref: ref, style: inputStyle }, rest)) })));
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
module.exports = LabelledToggle;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var components_Toggle_Toggle = require('./Toggle.js');
|
|
4
|
+
require('tslib');
|
|
5
|
+
require('react/jsx-runtime');
|
|
6
|
+
require('react');
|
|
7
|
+
require('../../hooks/useGlobalSettings.js');
|
|
8
|
+
require('../../GlobalCtx-97e4b433.js');
|
|
9
|
+
require('classnames');
|
|
10
|
+
require('../FormControl/FormControl.js');
|
|
11
|
+
require('nanoid');
|
|
12
|
+
require('../Tooltip/Tooltip.js');
|
|
13
|
+
require('react-dom');
|
|
14
|
+
|
|
15
|
+
const Default = {
|
|
16
|
+
defaultChecked: false,
|
|
17
|
+
errorMessage: "Invalid option",
|
|
18
|
+
name: "my-toggle",
|
|
19
|
+
size: "medium",
|
|
20
|
+
label: "Show details",
|
|
21
|
+
labelPlacement: "end",
|
|
22
|
+
labelSize: "small",
|
|
23
|
+
};
|
|
24
|
+
const Checked = Object.assign(Object.assign({}, Default), { defaultChecked: true });
|
|
25
|
+
const Disabled = Object.assign(Object.assign({}, Default), { disabled: true });
|
|
26
|
+
const Helper = Object.assign(Object.assign({}, Default), { helper: "This is a helper text" });
|
|
27
|
+
const Tooltip = Object.assign(Object.assign({}, Helper), { tooltip: "This is a tooltip" });
|
|
28
|
+
const Error = Object.assign(Object.assign({}, Default), { error: true });
|
|
29
|
+
const DefaultChecked = Object.assign(Object.assign({}, Default), { defaultChecked: true });
|
|
30
|
+
const Controlled = Object.assign(Object.assign({}, Default), { onClick: () => console.log("clicked"), checked: true });
|
|
31
|
+
const Large = Object.assign(Object.assign({}, Default), { size: "large" });
|
|
32
|
+
const Medium = Object.assign(Object.assign({}, Default), { size: "medium" });
|
|
33
|
+
const Small = Object.assign(Object.assign({}, Default), { size: "small" });
|
|
34
|
+
|
|
35
|
+
var Toggle_args = /*#__PURE__*/Object.freeze({
|
|
36
|
+
__proto__: null,
|
|
37
|
+
Checked: Checked,
|
|
38
|
+
Controlled: Controlled,
|
|
39
|
+
Default: Default,
|
|
40
|
+
DefaultChecked: DefaultChecked,
|
|
41
|
+
Disabled: Disabled,
|
|
42
|
+
Error: Error,
|
|
43
|
+
Helper: Helper,
|
|
44
|
+
Large: Large,
|
|
45
|
+
Medium: Medium,
|
|
46
|
+
Small: Small,
|
|
47
|
+
Tooltip: Tooltip
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
exports.Toggle = components_Toggle_Toggle;
|
|
51
|
+
exports.ToggleArgs = Toggle_args;
|
|
@@ -8,7 +8,7 @@ var ReactDOM = require('react-dom');
|
|
|
8
8
|
require('tslib');
|
|
9
9
|
require('../../GlobalCtx-97e4b433.js');
|
|
10
10
|
|
|
11
|
-
const Tooltip = ({ className, children, icon, label, theme, }) => {
|
|
11
|
+
const Tooltip = ({ className, children, icon, label, theme, id, }) => {
|
|
12
12
|
const { prefix } = hooks_useGlobalSettings();
|
|
13
13
|
const baseClass = `${prefix}--tooltip`;
|
|
14
14
|
const [isVisible, setIsVisible] = require$$0.useState(false);
|
|
@@ -97,7 +97,7 @@ const Tooltip = ({ className, children, icon, label, theme, }) => {
|
|
|
97
97
|
left: position.x + "px",
|
|
98
98
|
top: position.y + "px",
|
|
99
99
|
};
|
|
100
|
-
return (jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrapper ${icon && "has-icon"}`, onMouseOver: handleOnMouseOver, onFocus: handleOnMouseOver, onMouseOut: handleOnMouseOut, onBlur: handleOnMouseOut }, { children: [!icon && jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }), jsxRuntime.jsxs("span", Object.assign({ className: tooltipClasses, style: style, ref: tooltipRef }, { children: [jsxRuntime.jsx("span", { className: tooltipArrowClasses, role: "presentation" }), label] }))] })));
|
|
100
|
+
return (jsxRuntime.jsxs("div", Object.assign({ className: `${baseClass}--wrapper ${icon && "has-icon"}`, onMouseOver: handleOnMouseOver, onFocus: handleOnMouseOver, onMouseOut: handleOnMouseOut, onBlur: handleOnMouseOut, id: id }, { children: [!icon && jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }), jsxRuntime.jsxs("span", Object.assign({ className: tooltipClasses, style: style, ref: tooltipRef }, { children: [jsxRuntime.jsx("span", { className: tooltipArrowClasses, role: "presentation" }), label] }))] })));
|
|
101
101
|
};
|
|
102
102
|
|
|
103
103
|
module.exports = Tooltip;
|