@koine/react 1.0.11 → 1.0.12
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/Alert/Alert.js +7 -13
- package/Animations/Reveal.js +12 -10
- package/Animations/Underline.js +3 -13
- package/Animations/useReveal.js +18 -17
- package/Autocomplete/AutocompleteDownshift.js +1 -1
- package/Autocomplete/AutocompleteDownshiftMultiselect.js +1 -1
- package/Autocomplete/AutocompleteMui.js +61 -56
- package/Autocomplete/AutocompleteReach.js +1 -1
- package/Autocomplete/components.js +17 -72
- package/Autocomplete/helpers.js +1 -1
- package/Bg/BgColor.js +14 -24
- package/Bg/BgPhoto.js +11 -54
- package/Bg/BgSvg.js +6 -9
- package/Breadcrumbs/Breadcrumbs.js +14 -54
- package/Buttons/Button.js +8 -73
- package/Buttons/ButtonComposite.js +20 -41
- package/Buttons/ButtonFab.js +4 -6
- package/Buttons/ButtonLink.js +7 -6
- package/Buttons/IconButton.js +5 -17
- package/Calendar/CalendarDaygridCell.js +20 -14
- package/Calendar/CalendarDaygridNav.js +10 -9
- package/Calendar/CalendarDaygridTable.js +32 -30
- package/Calendar/CalendarLegend.js +7 -2
- package/Calendar/calendar-api-google.js +101 -68
- package/Calendar/useCalendar.js +114 -113
- package/Calendar/utils.js +73 -74
- package/Carousel/Carousel.js +1 -1
- package/Carousel/CarouselCss.js +12 -26
- package/Collapsable/Collapsable.js +1 -1
- package/Debug/Debug.js +5 -17
- package/Details/Details.js +30 -27
- package/Dialog/DialogMui.js +22 -20
- package/Dialog/css/bare.js +17 -15
- package/Dialog/m/bare.js +17 -13
- package/Dialog/m/basic.js +2 -2
- package/Dialog/m/index.js +4 -4
- package/Dialog/sc/bare.js +25 -43
- package/Dialog/sc/framer.js +6 -6
- package/Dialog/sc/framerMaterial.js +6 -6
- package/Dialog/sc/material.js +17 -37
- package/Dialog/tw/bare.js +25 -19
- package/Dialog/tw/elegant.js +17 -15
- package/Dialog/tw/framer.js +6 -6
- package/Dialog/tw/framerMaterial.js +6 -6
- package/Dialog/tw/material.js +17 -15
- package/Editor/Editor--tiptap.js +14 -11
- package/Editor/components.js +6 -24
- package/Favicon/FaviconTags.js +2 -1
- package/Form/Form.js +30 -28
- package/Form/sc/bare.js +9 -18
- package/Forms/Checkbox/Checkbox.js +9 -15
- package/Forms/Feedback/Feedback.js +6 -7
- package/Forms/Field/Field.js +15 -26
- package/Forms/Field/FieldControl.js +19 -15
- package/Forms/Field/FieldHint.js +3 -5
- package/Forms/Input/Input.js +10 -16
- package/Forms/InputGroup/InputGroup.js +9 -36
- package/Forms/Label/Label.js +5 -23
- package/Forms/Password/Password.js +10 -23
- package/Forms/Radio/Radio.js +15 -18
- package/Forms/Switch/Switch.js +9 -39
- package/Forms/Textarea/Textarea.js +6 -7
- package/Forms/Textarea/TextareaRich.js +10 -24
- package/Forms/Toggle/Toggle.js +19 -67
- package/Forms/Toggle/useToggle.js +29 -29
- package/Forms/antispam.js +12 -12
- package/Forms/helpers.js +7 -6
- package/Forms/styles.js +12 -43
- package/Gauge/Gauge.js +1 -1
- package/Grid/Grid.js +25 -51
- package/Hamburger/Hamburger.js +35 -47
- package/Header/useHeader.js +12 -12
- package/Hidden/Hidden.js +9 -13
- package/Img/sc/bare.js +3 -1
- package/Link/Link.js +3 -1
- package/Link/LinkBlank.js +8 -17
- package/Menu/Menu.js +3 -10
- package/MenuItem/MenuItem.js +3 -19
- package/Meta/Meta.js +3 -2
- package/NoJs/NoJs.js +2 -2
- package/Pagination/PaginationNav.js +26 -48
- package/Pagination/PaginationResults.js +7 -6
- package/Pill/Pill.js +6 -36
- package/Progress/ProgressCircular.js +9 -30
- package/Progress/ProgressLinear.js +8 -16
- package/Progress/ProgressOverlay.js +11 -27
- package/Rating/Rating.js +24 -44
- package/Rating/index.js +19 -15
- package/Select/SelectDownshift.js +1 -1
- package/Select/components.js +6 -12
- package/Sidebar/Sidebar.js +13 -38
- package/Spacing/Spacing.js +12 -12
- package/Sticky/Sticky.js +1 -1
- package/Sticky/StickyCss.js +4 -2
- package/Tabs/TabsMui.js +19 -16
- package/Tabs/tw/bare.js +13 -11
- package/Tabs/tw/material.js +15 -11
- package/Tabs/useTabs.js +16 -16
- package/Typography/CopyPasteVisible.js +3 -5
- package/Typography/Native.js +12 -45
- package/Typography/ReadMore.js +25 -51
- package/Typography/TextLoop.js +19 -22
- package/Typography/TypeStairs.js +20 -16
- package/helpers/classed.js +21 -18
- package/helpers/extend-component.js +6 -6
- package/hooks/useAsyncFn.js +18 -11
- package/hooks/useDateLocale.js +22 -13
- package/hooks/useEffectOnce.js +1 -1
- package/hooks/useFirstMountState.js +1 -1
- package/hooks/useFocus.js +3 -3
- package/hooks/useId.js +3 -2
- package/hooks/useIsomorphicLayoutEffect.js +1 -1
- package/hooks/useMount.js +2 -2
- package/hooks/useMountedState.js +4 -4
- package/hooks/usePrevious.js +2 -2
- package/hooks/useScrollPosition.js +20 -15
- package/hooks/useScrollTo.js +7 -5
- package/hooks/useTraceUpdate.js +4 -3
- package/hooks/useUpdateEffect.js +3 -3
- package/hooks/useWindowSize.js +3 -3
- package/m/MotionProvider.js +4 -2
- package/node/Alert/Alert.js +9 -16
- package/node/Alert/index.js +1 -1
- package/node/Animations/Reveal.js +15 -13
- package/node/Animations/Underline.js +5 -16
- package/node/Animations/index.js +1 -1
- package/node/Animations/useReveal.js +19 -18
- package/node/Autocomplete/AutocompleteMui.js +69 -64
- package/node/Autocomplete/components.js +26 -82
- package/node/Autocomplete/helpers.js +2 -2
- package/node/Bg/BgColor.js +18 -29
- package/node/Bg/BgPhoto.js +15 -59
- package/node/Bg/BgSvg.js +8 -12
- package/node/Bg/index.js +1 -1
- package/node/Breadcrumbs/Breadcrumbs.js +20 -61
- package/node/Breadcrumbs/index.js +1 -1
- package/node/Buttons/Button.js +10 -76
- package/node/Buttons/ButtonComposite.js +23 -45
- package/node/Buttons/ButtonFab.js +6 -9
- package/node/Buttons/ButtonLink.js +10 -10
- package/node/Buttons/IconButton.js +7 -20
- package/node/Buttons/index.js +1 -1
- package/node/Calendar/CalendarDaygridCell.js +24 -18
- package/node/Calendar/CalendarDaygridNav.js +14 -13
- package/node/Calendar/CalendarDaygridTable.js +39 -38
- package/node/Calendar/CalendarLegend.js +8 -3
- package/node/Calendar/calendar-api-google.js +105 -73
- package/node/Calendar/index.js +1 -1
- package/node/Calendar/useCalendar.js +117 -116
- package/node/Calendar/utils.js +82 -84
- package/node/Carousel/CarouselCss.js +17 -32
- package/node/Carousel/index.js +1 -1
- package/node/Collapsable/index.js +1 -1
- package/node/Debug/Debug.js +7 -20
- package/node/Debug/index.js +1 -1
- package/node/Details/Details.js +24 -22
- package/node/Details/index.js +1 -1
- package/node/Dialog/DialogMui.js +12 -11
- package/node/Dialog/css/bare.js +11 -10
- package/node/Dialog/m/bare.js +18 -14
- package/node/Dialog/m/basic.js +1 -1
- package/node/Dialog/m/index.js +4 -4
- package/node/Dialog/sc/bare.js +22 -41
- package/node/Dialog/sc/framer.js +5 -5
- package/node/Dialog/sc/framerMaterial.js +5 -5
- package/node/Dialog/sc/material.js +12 -33
- package/node/Dialog/tw/bare.js +19 -14
- package/node/Dialog/tw/elegant.js +11 -9
- package/node/Dialog/tw/framer.js +5 -5
- package/node/Dialog/tw/framerMaterial.js +5 -5
- package/node/Dialog/tw/material.js +11 -9
- package/node/Editor/Editor--tiptap.js +19 -17
- package/node/Editor/components.js +9 -28
- package/node/Editor/index.js +1 -1
- package/node/Favicon/FaviconTags.js +3 -2
- package/node/Favicon/index.js +1 -1
- package/node/Form/Form.js +20 -18
- package/node/Form/index.js +1 -1
- package/node/Form/sc/bare.js +12 -22
- package/node/Forms/Checkbox/Checkbox.js +13 -20
- package/node/Forms/Checkbox/index.js +1 -1
- package/node/Forms/Feedback/Feedback.js +8 -10
- package/node/Forms/Feedback/index.js +1 -1
- package/node/Forms/Field/Field.js +18 -30
- package/node/Forms/Field/FieldControl.js +26 -22
- package/node/Forms/Field/FieldHint.js +4 -7
- package/node/Forms/Field/index.js +1 -1
- package/node/Forms/Input/Input.js +15 -22
- package/node/Forms/Input/index.js +1 -1
- package/node/Forms/InputGroup/InputGroup.js +14 -42
- package/node/Forms/InputGroup/index.js +1 -1
- package/node/Forms/Label/Label.js +6 -25
- package/node/Forms/Label/index.js +1 -1
- package/node/Forms/Password/Password.js +16 -30
- package/node/Forms/Password/index.js +1 -1
- package/node/Forms/Radio/Radio.js +21 -25
- package/node/Forms/Radio/index.js +1 -1
- package/node/Forms/Switch/Switch.js +15 -46
- package/node/Forms/Switch/index.js +1 -1
- package/node/Forms/Textarea/Textarea.js +11 -13
- package/node/Forms/Textarea/TextareaRich.js +16 -31
- package/node/Forms/Textarea/index.js +1 -1
- package/node/Forms/Toggle/Toggle.js +23 -72
- package/node/Forms/Toggle/index.js +1 -1
- package/node/Forms/Toggle/useToggle.js +33 -33
- package/node/Forms/antispam.js +14 -14
- package/node/Forms/helpers.js +8 -7
- package/node/Forms/index.js +1 -1
- package/node/Forms/styles.js +16 -48
- package/node/Gauge/Gauge.js +1 -1
- package/node/Grid/Grid.js +24 -51
- package/node/Grid/index.js +1 -1
- package/node/Hamburger/Hamburger.js +37 -50
- package/node/Hamburger/index.js +1 -1
- package/node/Header/index.js +1 -1
- package/node/Header/useHeader.js +16 -16
- package/node/Hidden/Hidden.js +10 -15
- package/node/Hidden/index.js +1 -1
- package/node/Img/index.js +1 -1
- package/node/Img/sc/bare.js +4 -3
- package/node/Link/Link.js +4 -3
- package/node/Link/LinkBlank.js +11 -21
- package/node/Link/index.js +1 -1
- package/node/Menu/Menu.js +4 -12
- package/node/Menu/index.js +1 -1
- package/node/MenuItem/MenuItem.js +4 -21
- package/node/MenuItem/index.js +1 -1
- package/node/Meta/Meta.js +4 -3
- package/node/Meta/index.js +1 -1
- package/node/NoJs/NoJs.js +3 -3
- package/node/NoJs/index.js +1 -1
- package/node/Pagination/PaginationNav.js +30 -53
- package/node/Pagination/PaginationResults.js +10 -10
- package/node/Pagination/index.js +1 -1
- package/node/Pill/Pill.js +7 -38
- package/node/Pill/index.js +1 -1
- package/node/Progress/ProgressCircular.js +11 -33
- package/node/Progress/ProgressLinear.js +11 -20
- package/node/Progress/ProgressOverlay.js +18 -35
- package/node/Progress/index.js +1 -1
- package/node/Rating/Rating.js +28 -49
- package/node/Rating/index.js +20 -16
- package/node/Select/components.js +11 -18
- package/node/Sidebar/Sidebar.js +21 -47
- package/node/Sidebar/index.js +1 -1
- package/node/Spacing/Spacing.js +16 -17
- package/node/Spacing/index.js +1 -1
- package/node/Sticky/StickyCss.js +5 -3
- package/node/Sticky/index.js +1 -1
- package/node/Tabs/TabsMui.js +16 -14
- package/node/Tabs/index.js +1 -1
- package/node/Tabs/tw/bare.js +9 -8
- package/node/Tabs/tw/material.js +11 -7
- package/node/Tabs/useTabs.js +19 -19
- package/node/Typography/CopyPasteVisible.js +4 -7
- package/node/Typography/Native.js +14 -48
- package/node/Typography/ReadMore.js +30 -57
- package/node/Typography/TextLoop.js +22 -25
- package/node/Typography/TypeStairs.js +22 -18
- package/node/Typography/index.js +1 -1
- package/node/css/index.js +1 -1
- package/node/helpers/classed.js +22 -19
- package/node/helpers/extend-component.js +7 -7
- package/node/helpers/index.js +1 -1
- package/node/hooks/index.js +1 -1
- package/node/hooks/useAsyncFn.js +20 -13
- package/node/hooks/useDateLocale.js +23 -37
- package/node/hooks/useEffectOnce.js +2 -2
- package/node/hooks/useFirstMountState.js +2 -2
- package/node/hooks/useFocus.js +4 -4
- package/node/hooks/useId.js +4 -3
- package/node/hooks/useIsomorphicLayoutEffect.js +2 -2
- package/node/hooks/useMount.js +3 -3
- package/node/hooks/useMountedState.js +5 -5
- package/node/hooks/usePrevious.js +3 -3
- package/node/hooks/useScrollPosition.js +23 -18
- package/node/hooks/useScrollTo.js +9 -7
- package/node/hooks/useTraceUpdate.js +5 -4
- package/node/hooks/useUpdateEffect.js +5 -5
- package/node/hooks/useWindowSize.js +4 -4
- package/node/index.js +1 -1
- package/node/m/MotionProvider.js +6 -4
- package/node/m/index.js +1 -1
- package/node/m/lite.js +1 -1
- package/node/m/max.js +1 -1
- package/node/sc/index.js +1 -1
- package/node/scm/index.js +1 -1
- package/node/shared/index.js +1 -1
- package/node/styles/Body.js +5 -10
- package/node/styles/Global.js +5 -37
- package/node/styles/index.js +1 -1
- package/node/styles/media.js +42 -38
- package/node/styles/spacing.js +15 -16
- package/node/styles/styled.js +7 -21
- package/node/styles/theme--vanilla.js +21 -19
- package/node/styles/theme.js +9 -9
- package/node/tw/index.js +1 -1
- package/node/twm/index.js +1 -1
- package/package.json +3 -2
- package/styles/Body.js +4 -8
- package/styles/Global.js +4 -36
- package/styles/media.js +41 -36
- package/styles/spacing.js +15 -16
- package/styles/styled.js +7 -21
- package/styles/theme--vanilla.js +20 -18
- package/styles/theme.js +11 -11
|
@@ -1,32 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Radio = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const RadioToggle = (0, styled_components_1.default)(Toggle_1.Toggle) ``;
|
|
22
|
-
const RadioIndicator = (0, styled_components_1.default)(Toggle_1.ToggleIndicatorSquared) ``;
|
|
23
|
-
const RadioOptionLabel = (0, styled_components_1.default)(Toggle_1.ToggleLabel) ``;
|
|
24
|
-
const RadioOption = (0, react_1.forwardRef)(function RadioOption({ register, name, label, $ref, ...props }, ref) {
|
|
25
|
-
const inputProps = register ? register(name) : { name, ref: $ref || ref };
|
|
26
|
-
return ((0, jsx_runtime_1.jsxs)(RadioOptionRoot, { children: [(0, jsx_runtime_1.jsxs)(RadioToggle, { children: [(0, jsx_runtime_1.jsx)(styles_1.InputInvisible, { type: "radio", ...inputProps, ...props }), (0, jsx_runtime_1.jsx)(RadioIndicator, {})] }), (0, jsx_runtime_1.jsx)(RadioOptionLabel, { children: label })] }));
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
8
|
+
var Label_1 = require("../Label/Label");
|
|
9
|
+
var Toggle_1 = require("../Toggle");
|
|
10
|
+
var styles_1 = require("../styles");
|
|
11
|
+
var RadioRoot = styled_components_1.default.div(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject([""], [""])));
|
|
12
|
+
var RadioLabel = styled_components_1.default.div(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), Label_1.label);
|
|
13
|
+
var RadioOptionRoot = styled_components_1.default.label(templateObject_3 || (templateObject_3 = tslib_1.__makeTemplateObject(["\n display: flex;\n align-items: center;\n padding: 0.05em;\n cursor: pointer;\n"], ["\n display: flex;\n align-items: center;\n padding: 0.05em;\n cursor: pointer;\n"])));
|
|
14
|
+
var RadioToggle = (0, styled_components_1.default)(Toggle_1.Toggle)(templateObject_4 || (templateObject_4 = tslib_1.__makeTemplateObject([""], [""])));
|
|
15
|
+
var RadioIndicator = (0, styled_components_1.default)(Toggle_1.ToggleIndicatorSquared)(templateObject_5 || (templateObject_5 = tslib_1.__makeTemplateObject([""], [""])));
|
|
16
|
+
var RadioOptionLabel = (0, styled_components_1.default)(Toggle_1.ToggleLabel)(templateObject_6 || (templateObject_6 = tslib_1.__makeTemplateObject([""], [""])));
|
|
17
|
+
var RadioOption = (0, react_1.forwardRef)(function RadioOption(_a, ref) {
|
|
18
|
+
var register = _a.register, name = _a.name, label = _a.label, $ref = _a.$ref, props = tslib_1.__rest(_a, ["register", "name", "label", "$ref"]);
|
|
19
|
+
var inputProps = register ? register(name) : { name: name, ref: $ref || ref };
|
|
20
|
+
return ((0, jsx_runtime_1.jsxs)(RadioOptionRoot, { children: [(0, jsx_runtime_1.jsxs)(RadioToggle, { children: [(0, jsx_runtime_1.jsx)(styles_1.InputInvisible, tslib_1.__assign({ type: "radio" }, inputProps, props)), (0, jsx_runtime_1.jsx)(RadioIndicator, {})] }), (0, jsx_runtime_1.jsx)(RadioOptionLabel, { children: label })] }));
|
|
27
21
|
});
|
|
28
|
-
exports.Radio = (0, react_1.forwardRef)(function Radio(
|
|
22
|
+
exports.Radio = (0, react_1.forwardRef)(function Radio(_a, ref) {
|
|
23
|
+
var label = _a.label, options = _a.options, props = tslib_1.__rest(_a, ["label", "options"]);
|
|
29
24
|
if (!options)
|
|
30
25
|
return null;
|
|
31
|
-
return ((0, jsx_runtime_1.jsxs)(RadioRoot, { children: [label && (0, jsx_runtime_1.jsx)(RadioLabel, { children: label }), options.map((option, idx)
|
|
26
|
+
return ((0, jsx_runtime_1.jsxs)(RadioRoot, { children: [label && (0, jsx_runtime_1.jsx)(RadioLabel, { children: label }), options.map(function (option, idx) { return ((0, jsx_runtime_1.jsx)(RadioOption, tslib_1.__assign({}, option, props, { "$ref": ref }), idx)); })] }));
|
|
32
27
|
});
|
|
28
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
|
|
@@ -1,54 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Switch = exports.SwitchHandle = exports.SwitchTrack = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
exports.SwitchTrack = styled_components_1.default.span
|
|
15
|
-
position:
|
|
16
|
-
width: ${SWITCH_HANDLE_SIZE * 3}em;
|
|
17
|
-
height: ${SWITCH_HANDLE_SIZE * 1.5}em;
|
|
18
|
-
padding: ${SWITCH_GUTTER}em;
|
|
19
|
-
border-radius: ${SWITCH_HANDLE_SIZE}em;
|
|
20
|
-
${Toggle_1.toggleBase}
|
|
21
|
-
|
|
22
|
-
input:focus ~ & {
|
|
23
|
-
${styled_1.stateFocus}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
input:disabled ~ & {
|
|
27
|
-
opacity: 0.5;
|
|
28
|
-
cursor: not-allowed;
|
|
29
|
-
}
|
|
30
|
-
`;
|
|
31
|
-
exports.SwitchHandle = styled_components_1.default.span `
|
|
32
|
-
position: absolute;
|
|
33
|
-
width: ${SWITCH_HANDLE_SIZE}em;
|
|
34
|
-
height: ${SWITCH_HANDLE_SIZE}em;
|
|
35
|
-
left: ${SWITCH_GUTTER}em;
|
|
36
|
-
margin-top: -1px;
|
|
37
|
-
/* border: 1px solid currentColor; */
|
|
38
|
-
background: currentColor;
|
|
39
|
-
opacity: 0.5;
|
|
40
|
-
border-radius: 100%;
|
|
41
|
-
transition: all 0.18s ease-in-out;
|
|
42
|
-
|
|
43
|
-
input:checked + ${exports.SwitchTrack} & {
|
|
44
|
-
opacity: 1;
|
|
45
|
-
left: calc(100% - ${SWITCH_HANDLE_SIZE}em - ${SWITCH_GUTTER}em);
|
|
46
|
-
}
|
|
47
|
-
`;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
8
|
+
var Checkbox_1 = require("../Checkbox");
|
|
9
|
+
var Toggle_1 = require("../Toggle");
|
|
10
|
+
var useToggle_1 = require("../Toggle/useToggle");
|
|
11
|
+
var styled_1 = require("../../styles/styled");
|
|
12
|
+
var SWITCH_GUTTER = 0.25;
|
|
13
|
+
var SWITCH_HANDLE_SIZE = 1;
|
|
14
|
+
exports.SwitchTrack = styled_components_1.default.span(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n position: relative;\n width: ", "em;\n height: ", "em;\n padding: ", "em;\n border-radius: ", "em;\n ", "\n\n input:focus ~ & {\n ", "\n }\n\n input:disabled ~ & {\n opacity: 0.5;\n cursor: not-allowed;\n }\n"], ["\n position: relative;\n width: ", "em;\n height: ", "em;\n padding: ", "em;\n border-radius: ", "em;\n ", "\n\n input:focus ~ & {\n ", "\n }\n\n input:disabled ~ & {\n opacity: 0.5;\n cursor: not-allowed;\n }\n"])), SWITCH_HANDLE_SIZE * 3, SWITCH_HANDLE_SIZE * 1.5, SWITCH_GUTTER, SWITCH_HANDLE_SIZE, Toggle_1.toggleBase, styled_1.stateFocus);
|
|
15
|
+
exports.SwitchHandle = styled_components_1.default.span(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n position: absolute;\n width: ", "em;\n height: ", "em;\n left: ", "em;\n margin-top: -1px;\n /* border: 1px solid currentColor; */\n background: currentColor;\n opacity: 0.5;\n border-radius: 100%;\n transition: all 0.18s ease-in-out;\n\n input:checked + ", " & {\n opacity: 1;\n left: calc(100% - ", "em - ", "em);\n }\n"], ["\n position: absolute;\n width: ", "em;\n height: ", "em;\n left: ", "em;\n margin-top: -1px;\n /* border: 1px solid currentColor; */\n background: currentColor;\n opacity: 0.5;\n border-radius: 100%;\n transition: all 0.18s ease-in-out;\n\n input:checked + ", " & {\n opacity: 1;\n left: calc(100% - ", "em - ", "em);\n }\n"])), SWITCH_HANDLE_SIZE, SWITCH_HANDLE_SIZE, SWITCH_GUTTER, exports.SwitchTrack, SWITCH_HANDLE_SIZE, SWITCH_GUTTER);
|
|
48
16
|
/**
|
|
49
17
|
* All logic and invisible Inputs come from the `useToggle` hook
|
|
50
18
|
*/
|
|
51
19
|
exports.Switch = (0, react_1.forwardRef)(function Switch(props, ref) {
|
|
52
|
-
|
|
53
|
-
return ((0, jsx_runtime_1.jsxs)(Checkbox_1.CheckboxRoot, {
|
|
20
|
+
var _a = (0, useToggle_1.useToggle)(props, ref), rootProps = _a.rootProps, Inputs = _a.Inputs, label = _a.label;
|
|
21
|
+
return ((0, jsx_runtime_1.jsxs)(Checkbox_1.CheckboxRoot, tslib_1.__assign({}, rootProps, { children: [Inputs, (0, jsx_runtime_1.jsx)(exports.SwitchTrack, { children: (0, jsx_runtime_1.jsx)(exports.SwitchHandle, {}) }), label && (0, jsx_runtime_1.jsx)(Checkbox_1.CheckboxLabel, { children: label })] })));
|
|
54
22
|
});
|
|
23
|
+
var templateObject_1, templateObject_2;
|
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Textarea = exports.TextareaNative = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
exports.TextareaNative = styled_components_1.default.textarea
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
`;
|
|
15
|
-
exports.Textarea = (0, react_1.forwardRef)(function Textarea({ register, name, label, ...props }, ref) {
|
|
16
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [label && (0, jsx_runtime_1.jsx)(Label_1.Label, { children: label }), (0, jsx_runtime_1.jsx)(exports.TextareaNative, { ...(register ? register(name) : { name, ref }), ...props })] }));
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
8
|
+
var Label_1 = require("../Label/Label");
|
|
9
|
+
var styles_1 = require("../styles");
|
|
10
|
+
exports.TextareaNative = styled_components_1.default.textarea(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n ", "\n ", "\n resize: vertical;\n"], ["\n ", "\n ", "\n resize: vertical;\n"])), styles_1.inputBase, styles_1.inputFocus);
|
|
11
|
+
exports.Textarea = (0, react_1.forwardRef)(function Textarea(_a, ref) {
|
|
12
|
+
var register = _a.register, name = _a.name, label = _a.label, props = tslib_1.__rest(_a, ["register", "name", "label"]);
|
|
13
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [label && (0, jsx_runtime_1.jsx)(Label_1.Label, { children: label }), (0, jsx_runtime_1.jsx)(exports.TextareaNative, tslib_1.__assign({}, (register ? register(name) : { name: name, ref: ref }), props))] }));
|
|
17
14
|
});
|
|
15
|
+
var templateObject_1;
|
|
@@ -1,46 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TextareaRich = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
8
8
|
// import TextareaAutosize from "@mui/base/TextareaAutosize";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
overflow: auto;
|
|
16
|
-
}
|
|
17
|
-
.EditorContent {
|
|
18
|
-
position: relative;
|
|
19
|
-
&:after {
|
|
20
|
-
position: absolute;
|
|
21
|
-
content: "";
|
|
22
|
-
bottom: 0;
|
|
23
|
-
left: 0;
|
|
24
|
-
right: 16px; /* scrollbar width? */
|
|
25
|
-
height: 3em;
|
|
26
|
-
background: linear-gradient(0deg, white, white 33%, transparent);
|
|
27
|
-
pointer-events: none;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
`;
|
|
31
|
-
exports.TextareaRich = (0, react_1.forwardRef)(function TextareaRich({ register, setValue, name, label, defaultValue = "", onChange, ...props }, ref) {
|
|
9
|
+
var Label_1 = require("../Label/Label");
|
|
10
|
+
var Editor_1 = require("../../Editor");
|
|
11
|
+
var helpers_1 = require("../helpers");
|
|
12
|
+
var Root = styled_components_1.default.div(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n .ProseMirror {\n max-height: 160px;\n overflow: auto;\n }\n .EditorContent {\n position: relative;\n &:after {\n position: absolute;\n content: \"\";\n bottom: 0;\n left: 0;\n right: 16px; /* scrollbar width? */\n height: 3em;\n background: linear-gradient(0deg, white, white 33%, transparent);\n pointer-events: none;\n }\n }\n"], ["\n .ProseMirror {\n max-height: 160px;\n overflow: auto;\n }\n .EditorContent {\n position: relative;\n &:after {\n position: absolute;\n content: \"\";\n bottom: 0;\n left: 0;\n right: 16px; /* scrollbar width? */\n height: 3em;\n background: linear-gradient(0deg, white, white 33%, transparent);\n pointer-events: none;\n }\n }\n"])));
|
|
13
|
+
exports.TextareaRich = (0, react_1.forwardRef)(function TextareaRich(_a, ref) {
|
|
14
|
+
var register = _a.register, setValue = _a.setValue, name = _a.name, label = _a.label, _b = _a.defaultValue, defaultValue = _b === void 0 ? "" : _b, onChange = _a.onChange, props = tslib_1.__rest(_a, ["register", "setValue", "name", "label", "defaultValue", "onChange"]);
|
|
32
15
|
if (register)
|
|
33
16
|
register(name);
|
|
34
|
-
return ((0, jsx_runtime_1.jsxs)(Root, { children: [label && (0, jsx_runtime_1.jsx)(Label_1.Label, { children: label }), (0, jsx_runtime_1.jsx)(Editor_1.Editor, { options: {
|
|
17
|
+
return ((0, jsx_runtime_1.jsxs)(Root, { children: [label && (0, jsx_runtime_1.jsx)(Label_1.Label, { children: label }), (0, jsx_runtime_1.jsx)(Editor_1.Editor, tslib_1.__assign({ options: {
|
|
35
18
|
// element: <TextareaAutosize />,
|
|
36
19
|
content: defaultValue,
|
|
37
20
|
onUpdate: (onChange || setValue) && name
|
|
38
|
-
? (
|
|
39
|
-
|
|
21
|
+
? function (_a) {
|
|
22
|
+
var editor = _a.editor;
|
|
23
|
+
var value = editor.getHTML();
|
|
40
24
|
if (setValue)
|
|
41
25
|
setValue(name, value);
|
|
42
26
|
(0, helpers_1.triggerOnChange)(onChange, name, value);
|
|
43
27
|
}
|
|
44
28
|
: undefined,
|
|
45
|
-
},
|
|
29
|
+
} }, props))] }));
|
|
46
30
|
});
|
|
31
|
+
var templateObject_1;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ToggleIndicatorRounded = exports.ToggleIndicatorSquared = exports.ToggleIndicatorFg = exports.ToggleIndicatorBgCircle = exports.ToggleIndicatorBgSquare = exports.ToggleIndicatorHolder = exports.ToggleLabelSub = exports.ToggleLabel = exports.Toggle = exports.toggleIndicatorFg = exports.toggleIndicatorBgShape = exports.toggleIndicatorBg = exports.toggleBase = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
/**
|
|
7
7
|
* @file
|
|
8
8
|
*
|
|
@@ -10,77 +10,28 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
10
10
|
* - minimum target size of 44px https://www.w3.org/TR/WCAG21/#target-size
|
|
11
11
|
*/
|
|
12
12
|
// import { useId } from "react";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
exports.toggleBase =
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
exports.
|
|
20
|
-
display: inline-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
exports.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
stroke: var(--forms-border-color);
|
|
30
|
-
`;
|
|
31
|
-
exports.toggleIndicatorFg = `
|
|
32
|
-
position: absolute;
|
|
33
|
-
left: 0;
|
|
34
|
-
width: 100%;
|
|
35
|
-
height: 100%;
|
|
36
|
-
fill: currentcolor;
|
|
37
|
-
`;
|
|
38
|
-
exports.Toggle = styled_components_1.default.span `
|
|
39
|
-
position: relative;
|
|
40
|
-
display: inline-flex;
|
|
41
|
-
align-items: center;
|
|
42
|
-
justify-content: center;
|
|
43
|
-
width: 2em;
|
|
44
|
-
height: 2em;
|
|
45
|
-
margin: 0 -0.3em; /* rtl */
|
|
46
|
-
padding: 0.3em;
|
|
47
|
-
`;
|
|
48
|
-
exports.ToggleLabel = styled_components_1.default.span `
|
|
49
|
-
margin-left: 0.6em; /* rtl */
|
|
50
|
-
`;
|
|
51
|
-
exports.ToggleLabelSub = styled_components_1.default.small `
|
|
52
|
-
opacity: 0.7;
|
|
53
|
-
font-size: 0.7em; ;
|
|
54
|
-
`;
|
|
55
|
-
exports.ToggleIndicatorHolder = styled_components_1.default.span `
|
|
56
|
-
position: relative;
|
|
57
|
-
display: flex;
|
|
58
|
-
|
|
59
|
-
input:focus ~ & {
|
|
60
|
-
${styled_1.stateFocus}
|
|
61
|
-
}
|
|
62
|
-
`;
|
|
63
|
-
exports.ToggleIndicatorBgSquare = styled_components_1.default.svg `
|
|
64
|
-
${exports.toggleIndicatorBgShape}
|
|
65
|
-
`;
|
|
66
|
-
exports.ToggleIndicatorBgCircle = styled_components_1.default.svg `
|
|
67
|
-
${exports.toggleIndicatorBgShape}
|
|
68
|
-
`;
|
|
69
|
-
exports.ToggleIndicatorFg = styled_components_1.default.svg `
|
|
70
|
-
${exports.toggleIndicatorFg}
|
|
71
|
-
transform: scale(0);
|
|
72
|
-
transition: transform 0.18s ease;
|
|
73
|
-
|
|
74
|
-
input:checked + ${exports.ToggleIndicatorHolder} & {
|
|
75
|
-
transform: scale(1);
|
|
76
|
-
}
|
|
77
|
-
`;
|
|
78
|
-
const ToggleIndicatorSquared = (props) => {
|
|
79
|
-
return ((0, jsx_runtime_1.jsxs)(exports.ToggleIndicatorHolder, { children: [(0, jsx_runtime_1.jsx)(exports.ToggleIndicatorBgSquare, { viewBox: "0 0 24 24", children: (0, jsx_runtime_1.jsx)("rect", { width: "24", height: "24" }) }), (0, jsx_runtime_1.jsx)(exports.ToggleIndicatorFg, { viewBox: "0 0 24 24", children: (0, jsx_runtime_1.jsx)("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) })] }));
|
|
13
|
+
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
14
|
+
var styled_1 = require("../../styles/styled");
|
|
15
|
+
var useId_1 = require("../../hooks/useId");
|
|
16
|
+
exports.toggleBase = "\n border: 1px solid var(--forms-border-color);\n";
|
|
17
|
+
exports.toggleIndicatorBg = "\n display: inline-block;\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n";
|
|
18
|
+
exports.toggleIndicatorBgShape = "\n ".concat(exports.toggleIndicatorBg, "\n fill: none;\n stroke-width: 2px;\n stroke: var(--forms-border-color);\n");
|
|
19
|
+
exports.toggleIndicatorFg = "\n position: absolute;\n left: 0;\n width: 100%;\n height: 100%;\n fill: currentcolor;\n";
|
|
20
|
+
exports.Toggle = styled_components_1.default.span(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"])));
|
|
21
|
+
exports.ToggleLabel = styled_components_1.default.span(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n margin-left: 0.6em; /* rtl */\n"], ["\n margin-left: 0.6em; /* rtl */\n"])));
|
|
22
|
+
exports.ToggleLabelSub = styled_components_1.default.small(templateObject_3 || (templateObject_3 = tslib_1.__makeTemplateObject(["\n opacity: 0.7;\n font-size: 0.7em; ;\n"], ["\n opacity: 0.7;\n font-size: 0.7em; ;\n"])));
|
|
23
|
+
exports.ToggleIndicatorHolder = styled_components_1.default.span(templateObject_4 || (templateObject_4 = tslib_1.__makeTemplateObject(["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"], ["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"])), styled_1.stateFocus);
|
|
24
|
+
exports.ToggleIndicatorBgSquare = styled_components_1.default.svg(templateObject_5 || (templateObject_5 = tslib_1.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.toggleIndicatorBgShape);
|
|
25
|
+
exports.ToggleIndicatorBgCircle = styled_components_1.default.svg(templateObject_6 || (templateObject_6 = tslib_1.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.toggleIndicatorBgShape);
|
|
26
|
+
exports.ToggleIndicatorFg = styled_components_1.default.svg(templateObject_7 || (templateObject_7 = tslib_1.__makeTemplateObject(["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"], ["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"])), exports.toggleIndicatorFg, exports.ToggleIndicatorHolder);
|
|
27
|
+
var ToggleIndicatorSquared = function (props) {
|
|
28
|
+
return ((0, jsx_runtime_1.jsxs)(exports.ToggleIndicatorHolder, { children: [(0, jsx_runtime_1.jsx)(exports.ToggleIndicatorBgSquare, tslib_1.__assign({ viewBox: "0 0 24 24" }, { children: (0, jsx_runtime_1.jsx)("rect", { width: "24", height: "24" }) })), (0, jsx_runtime_1.jsx)(exports.ToggleIndicatorFg, tslib_1.__assign({ viewBox: "0 0 24 24" }, { children: (0, jsx_runtime_1.jsx)("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) }))] }));
|
|
80
29
|
};
|
|
81
30
|
exports.ToggleIndicatorSquared = ToggleIndicatorSquared;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
31
|
+
var ToggleIndicatorRounded = function (_a) {
|
|
32
|
+
var _b = _a.r, r = _b === void 0 ? 6 : _b;
|
|
33
|
+
var id = (0, useId_1.useId)();
|
|
34
|
+
return ((0, jsx_runtime_1.jsxs)(exports.ToggleIndicatorHolder, { children: [(0, jsx_runtime_1.jsxs)(exports.ToggleIndicatorBgCircle, tslib_1.__assign({ viewBox: "0 0 24 24" }, { children: [(0, jsx_runtime_1.jsx)("circle", { cy: "12", cx: "12", r: "12", id: "r_".concat(id), clipPath: "url(#c_".concat(id, ")") }), (0, jsx_runtime_1.jsx)("clipPath", tslib_1.__assign({ id: "c_".concat(id) }, { children: (0, jsx_runtime_1.jsx)("use", { xlinkHref: "#r_".concat(id) }) }))] })), (0, jsx_runtime_1.jsx)(exports.ToggleIndicatorFg, tslib_1.__assign({ viewBox: "0 0 24 24" }, { children: (0, jsx_runtime_1.jsx)("circle", { r: r, cx: "12", cy: "12" }) }))] }));
|
|
85
35
|
};
|
|
86
36
|
exports.ToggleIndicatorRounded = ToggleIndicatorRounded;
|
|
37
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useToggle = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var react_hook_form_1 = require("react-hook-form");
|
|
8
|
+
var styles_1 = require("../styles");
|
|
8
9
|
/**
|
|
9
10
|
* This hook is meant to powere Checkboxes, Switches and checkbox-like Radios
|
|
10
11
|
* components, it works in fact in two modes:
|
|
@@ -35,25 +36,25 @@ const styles_1 = require("../styles");
|
|
|
35
36
|
* an array of options with the shape of `Option`
|
|
36
37
|
*/
|
|
37
38
|
function useToggle(props, ref) {
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
var name = props.name, control = props.control, register = props.register, label = props.label, options = props.options, propValue = props.value, restProps = tslib_1.__rest(props, ["name", "control", "register", "label", "options", "value"]);
|
|
40
|
+
var id = restProps.id, valueTrue = restProps.valueTrue, valueFalse = restProps.valueFalse,
|
|
40
41
|
// defaultChecked,
|
|
41
42
|
// defaultValue,
|
|
42
43
|
// eslint-disable-next-line prefer-const
|
|
43
|
-
|
|
44
|
+
remainingInputProps = tslib_1.__rest(restProps, ["id", "valueTrue", "valueFalse"]);
|
|
44
45
|
// use options data convention to pass on the true/false values
|
|
45
46
|
if (options) {
|
|
46
47
|
valueTrue = options
|
|
47
|
-
.filter((opt)
|
|
48
|
+
.filter(function (opt) { return opt.value === "true"; })[0]
|
|
48
49
|
.label.toString();
|
|
49
50
|
valueFalse = options
|
|
50
|
-
.filter((opt)
|
|
51
|
+
.filter(function (opt) { return opt.value === "false"; })[0]
|
|
51
52
|
.label.toString();
|
|
52
53
|
}
|
|
53
|
-
id =
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
id = "switch-".concat(name);
|
|
55
|
+
var idTrue = "".concat(id, "-true");
|
|
56
|
+
var idFalse = "".concat(id, "-false");
|
|
57
|
+
var isRadio = !!(valueTrue && valueFalse);
|
|
57
58
|
// // manage default values for both toggle modes
|
|
58
59
|
// defaultChecked = isUndefined(defaultChecked) ? false : defaultChecked;
|
|
59
60
|
// // TODO: maybe throw an error if the defaultValue that arrives here is not
|
|
@@ -64,9 +65,9 @@ function useToggle(props, ref) {
|
|
|
64
65
|
// : valueFalse;
|
|
65
66
|
// get the value either from the uncontrolled watched input or from the given
|
|
66
67
|
// prop to control the component
|
|
67
|
-
|
|
68
|
-
name,
|
|
69
|
-
control,
|
|
68
|
+
var value = (0, react_hook_form_1.useWatch)({
|
|
69
|
+
name: name,
|
|
70
|
+
control: control,
|
|
70
71
|
// defaultValue: isRadio ? defaultValue : defaultChecked,
|
|
71
72
|
});
|
|
72
73
|
if (propValue) {
|
|
@@ -76,14 +77,14 @@ function useToggle(props, ref) {
|
|
|
76
77
|
// a `register` function, then check if we have a `control` object or just
|
|
77
78
|
// rely on the `name` prop and `ref`, they probably would be passed alongside
|
|
78
79
|
// an `onChange` prop that is spreaded on the inputs
|
|
79
|
-
|
|
80
|
+
var inputProps = (0, react_1.useMemo)(function () {
|
|
80
81
|
return register
|
|
81
82
|
? register(name)
|
|
82
83
|
: control
|
|
83
84
|
? control.register(name)
|
|
84
85
|
: {
|
|
85
|
-
name,
|
|
86
|
-
ref,
|
|
86
|
+
name: name,
|
|
87
|
+
ref: ref,
|
|
87
88
|
};
|
|
88
89
|
}, [register, control, name, ref]);
|
|
89
90
|
/**
|
|
@@ -92,15 +93,15 @@ function useToggle(props, ref) {
|
|
|
92
93
|
* Fake the spacebar keyboard behaviour on the radio mode of the checkbox.
|
|
93
94
|
* Without this *only* the arrow keys would change the checkbox state
|
|
94
95
|
*/
|
|
95
|
-
|
|
96
|
+
var handleKeyDown = (0, react_1.useCallback)(function (event) {
|
|
96
97
|
if (event.key === " ") {
|
|
97
98
|
event.preventDefault();
|
|
98
99
|
event.stopPropagation();
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
100
|
+
var firstInput = event.target;
|
|
101
|
+
var next = firstInput.nextElementSibling;
|
|
102
|
+
var prev = firstInput.previousElementSibling;
|
|
103
|
+
var secondInput = (next === null || next === void 0 ? void 0 : next.tagName) === "INPUT" ? next : prev;
|
|
104
|
+
var target = firstInput;
|
|
104
105
|
if (firstInput.checked) {
|
|
105
106
|
target = secondInput;
|
|
106
107
|
}
|
|
@@ -116,7 +117,7 @@ function useToggle(props, ref) {
|
|
|
116
117
|
}, [valueTrue]);
|
|
117
118
|
// collect all the return values that are dependent on the current value
|
|
118
119
|
// of the input
|
|
119
|
-
|
|
120
|
+
var valueDependentProps = (0, react_1.useMemo)(function () { return ({
|
|
120
121
|
rootProps: {
|
|
121
122
|
htmlFor: isRadio
|
|
122
123
|
? !value || value === valueFalse
|
|
@@ -125,9 +126,11 @@ function useToggle(props, ref) {
|
|
|
125
126
|
: id,
|
|
126
127
|
},
|
|
127
128
|
label: label ? label : value,
|
|
128
|
-
value,
|
|
129
|
-
}), [value, valueFalse, isRadio, id, idTrue, idFalse, label]);
|
|
130
|
-
|
|
129
|
+
value: value,
|
|
130
|
+
}); }, [value, valueFalse, isRadio, id, idTrue, idFalse, label]);
|
|
131
|
+
var Inputs = (0, react_1.useMemo)(function () {
|
|
132
|
+
return isRadio ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(styles_1.InputInvisible, tslib_1.__assign({ id: idFalse }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueFalse })), (0, jsx_runtime_1.jsx)(styles_1.InputInvisible, tslib_1.__assign({ id: idTrue }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueTrue }))] })) : ((0, jsx_runtime_1.jsx)(styles_1.InputInvisible, tslib_1.__assign({ id: id, type: "checkbox" }, inputProps, remainingInputProps)));
|
|
133
|
+
}, [
|
|
131
134
|
inputProps,
|
|
132
135
|
remainingInputProps,
|
|
133
136
|
handleKeyDown,
|
|
@@ -141,9 +144,6 @@ function useToggle(props, ref) {
|
|
|
141
144
|
// defaultValue,
|
|
142
145
|
]);
|
|
143
146
|
// console.log("useToggle: render", value);
|
|
144
|
-
return {
|
|
145
|
-
...valueDependentProps,
|
|
146
|
-
Inputs,
|
|
147
|
-
};
|
|
147
|
+
return tslib_1.__assign(tslib_1.__assign({}, valueDependentProps), { Inputs: Inputs });
|
|
148
148
|
}
|
|
149
149
|
exports.useToggle = useToggle;
|
package/node/Forms/antispam.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.decodeForm = exports.encodeForm = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var yup_1 = require("yup");
|
|
5
|
+
var utils_1 = require("@koine/utils");
|
|
6
6
|
/**
|
|
7
7
|
* Encode form
|
|
8
8
|
*
|
|
@@ -13,19 +13,19 @@ const utils_1 = require("@koine/utils");
|
|
|
13
13
|
* form data not created by user input.
|
|
14
14
|
*/
|
|
15
15
|
function encodeForm(validationRules) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
for (
|
|
19
|
-
if (!
|
|
20
|
-
|
|
21
|
-
encoded[encodedName] = validationRules[
|
|
22
|
-
encodedNames[
|
|
16
|
+
var encoded = {};
|
|
17
|
+
var encodedNames = {};
|
|
18
|
+
for (var name_1 in validationRules) {
|
|
19
|
+
if (!name_1.startsWith("_")) {
|
|
20
|
+
var encodedName = (0, utils_1.encode)(name_1);
|
|
21
|
+
encoded[encodedName] = validationRules[name_1];
|
|
22
|
+
encodedNames[name_1] = encodedName;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
// we need `.required()` to correctly infer the type @see
|
|
26
26
|
// https://github.com/jquense/yup/issues/946
|
|
27
|
-
|
|
28
|
-
return { encodedSchema, encodedNames };
|
|
27
|
+
var encodedSchema = (0, yup_1.object)(encoded).required();
|
|
28
|
+
return { encodedSchema: encodedSchema, encodedNames: encodedNames };
|
|
29
29
|
}
|
|
30
30
|
exports.encodeForm = encodeForm;
|
|
31
31
|
/**
|
|
@@ -38,9 +38,9 @@ exports.encodeForm = encodeForm;
|
|
|
38
38
|
* which are considered programmatic form data not created by user input.
|
|
39
39
|
*/
|
|
40
40
|
function decodeForm(formData) {
|
|
41
|
-
|
|
42
|
-
for (
|
|
43
|
-
|
|
41
|
+
var json = {};
|
|
42
|
+
for (var encodedName in formData) {
|
|
43
|
+
var decodedName = (0, utils_1.decode)(encodedName);
|
|
44
44
|
// always add underscore prefixed names as they are treated as internal
|
|
45
45
|
// private inputs outside of the honeypot system, normalise them here removing
|
|
46
46
|
// the underscore prefix
|
package/node/Forms/helpers.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.triggerChange = exports.triggerOnChange = exports.defaultOptionsFilterFn = exports.normaliseOptions = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
var utils_1 = require("@koine/utils");
|
|
5
|
+
var normaliseOptions = function (options) {
|
|
6
|
+
if (options === void 0) { options = []; }
|
|
7
|
+
return options.map(function (option) {
|
|
7
8
|
return (0, utils_1.isString)(option)
|
|
8
9
|
? {
|
|
9
10
|
label: option,
|
|
@@ -26,7 +27,7 @@ exports.defaultOptionsFilterFn = defaultOptionsFilterFn;
|
|
|
26
27
|
function triggerOnChange(onChange, name, value) {
|
|
27
28
|
// @ts-expect-error nevermind
|
|
28
29
|
if (onChange)
|
|
29
|
-
onChange({ target: { name, value } });
|
|
30
|
+
onChange({ target: { name: name, value: value } });
|
|
30
31
|
}
|
|
31
32
|
exports.triggerOnChange = triggerOnChange;
|
|
32
33
|
/**
|
|
@@ -34,7 +35,7 @@ exports.triggerOnChange = triggerOnChange;
|
|
|
34
35
|
* @deprecated
|
|
35
36
|
*/
|
|
36
37
|
function triggerChange(input, value) {
|
|
37
|
-
|
|
38
|
+
var obj = window.Object;
|
|
38
39
|
if (!obj) {
|
|
39
40
|
// if (process.env["NODE_ENV"] !== "production") {
|
|
40
41
|
// console.warn("triggerChange: window.Object does not exists, bailing.");
|
|
@@ -42,10 +43,10 @@ function triggerChange(input, value) {
|
|
|
42
43
|
return;
|
|
43
44
|
}
|
|
44
45
|
// @ts-expect-error nevermind
|
|
45
|
-
|
|
46
|
+
var nativeInputValueSetter = obj.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, "value").set;
|
|
46
47
|
// @ts-expect-error nevermind
|
|
47
48
|
nativeInputValueSetter.call(input, value);
|
|
48
|
-
|
|
49
|
+
var inputEvent = new Event("input", { bubbles: true });
|
|
49
50
|
input.dispatchEvent(inputEvent);
|
|
50
51
|
}
|
|
51
52
|
exports.triggerChange = triggerChange;
|
package/node/Forms/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./antispam"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./Checkbox"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./Input"), exports);
|