@mirai/ui 2.0.43 → 2.1.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/build/components/Action/Action.js +24 -30
- package/build/components/Action/Action.js.map +1 -1
- package/build/components/Action/Action.stories.js +3 -6
- package/build/components/Action/Action.stories.js.map +1 -1
- package/build/components/Action/index.js +1 -1
- package/build/components/Action/index.js.map +1 -1
- package/build/components/Button/Button.js +32 -39
- package/build/components/Button/Button.js.map +1 -1
- package/build/components/Button/Button.stories.js +25 -48
- package/build/components/Button/Button.stories.js.map +1 -1
- package/build/components/Button/index.js +1 -1
- package/build/components/Button/index.js.map +1 -1
- package/build/components/Calendar/Calendar.Month.js +45 -57
- package/build/components/Calendar/Calendar.Month.js.map +1 -1
- package/build/components/Calendar/Calendar.Week.js +54 -83
- package/build/components/Calendar/Calendar.Week.js.map +1 -1
- package/build/components/Calendar/Calendar.Weekdays.js +15 -15
- package/build/components/Calendar/Calendar.Weekdays.js.map +1 -1
- package/build/components/Calendar/Calendar.constants.js +2 -4
- package/build/components/Calendar/Calendar.constants.js.map +1 -1
- package/build/components/Calendar/Calendar.js +110 -162
- package/build/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Calendar/Calendar.stories.js +75 -90
- package/build/components/Calendar/Calendar.stories.js.map +1 -1
- package/build/components/Calendar/helpers/getFirstDateOfMonth.js +2 -2
- package/build/components/Calendar/helpers/getFirstDateOfMonth.js.map +1 -1
- package/build/components/Calendar/helpers/getFirstDateOfWeek.js +6 -6
- package/build/components/Calendar/helpers/getFirstDateOfWeek.js.map +1 -1
- package/build/components/Calendar/helpers/getFirstDayOfWeek.js +5 -5
- package/build/components/Calendar/helpers/getFirstDayOfWeek.js.map +1 -1
- package/build/components/Calendar/helpers/getHeader.js +6 -6
- package/build/components/Calendar/helpers/getHeader.js.map +1 -1
- package/build/components/Calendar/helpers/getMonthRef.js +9 -8
- package/build/components/Calendar/helpers/getMonthRef.js.map +1 -1
- package/build/components/Calendar/helpers/getScrollTo.js +8 -15
- package/build/components/Calendar/helpers/getScrollTo.js.map +1 -1
- package/build/components/Calendar/helpers/getToday.js +1 -3
- package/build/components/Calendar/helpers/getToday.js.map +1 -1
- package/build/components/Calendar/helpers/getWeekDays.js +8 -8
- package/build/components/Calendar/helpers/getWeekDays.js.map +1 -1
- package/build/components/Calendar/helpers/getWeekNumber.js +3 -3
- package/build/components/Calendar/helpers/getWeekNumber.js.map +1 -1
- package/build/components/Calendar/helpers/index.js +9 -9
- package/build/components/Calendar/helpers/index.js.map +1 -1
- package/build/components/Calendar/index.js +1 -1
- package/build/components/Calendar/index.js.map +1 -1
- package/build/components/Form/Form.constants.js +5 -10
- package/build/components/Form/Form.constants.js.map +1 -1
- package/build/components/Form/Form.js +86 -118
- package/build/components/Form/Form.js.map +1 -1
- package/build/components/Form/Form.stories.js +47 -83
- package/build/components/Form/Form.stories.js.map +1 -1
- package/build/components/Form/helpers/getChildrenErrors.js +18 -22
- package/build/components/Form/helpers/getChildrenErrors.js.map +1 -1
- package/build/components/Form/helpers/getChildrenValues.js +15 -22
- package/build/components/Form/helpers/getChildrenValues.js.map +1 -1
- package/build/components/Form/helpers/getField.js +5 -4
- package/build/components/Form/helpers/getField.js.map +1 -1
- package/build/components/Form/helpers/groupState.js +8 -10
- package/build/components/Form/helpers/groupState.js.map +1 -1
- package/build/components/Form/helpers/index.js +4 -4
- package/build/components/Form/helpers/index.js.map +1 -1
- package/build/components/Form/index.js +1 -1
- package/build/components/Form/index.js.map +1 -1
- package/build/components/InputDate/InputDate.js +23 -38
- package/build/components/InputDate/InputDate.js.map +1 -1
- package/build/components/InputDate/InputDate.stories.js +18 -34
- package/build/components/InputDate/InputDate.stories.js.map +1 -1
- package/build/components/InputDate/helpers/formatValue.js +11 -13
- package/build/components/InputDate/helpers/formatValue.js.map +1 -1
- package/build/components/InputDate/helpers/index.js +1 -1
- package/build/components/InputDate/helpers/index.js.map +1 -1
- package/build/components/InputDate/index.js +1 -1
- package/build/components/InputDate/index.js.map +1 -1
- package/build/components/InputNumber/InputNumber.js +31 -44
- package/build/components/InputNumber/InputNumber.js.map +1 -1
- package/build/components/InputNumber/InputNumber.stories.js +8 -20
- package/build/components/InputNumber/InputNumber.stories.js.map +1 -1
- package/build/components/InputNumber/index.js +1 -1
- package/build/components/InputNumber/index.js.map +1 -1
- package/build/components/InputOption/InputOption.constants.js +3 -6
- package/build/components/InputOption/InputOption.constants.js.map +1 -1
- package/build/components/InputOption/InputOption.js +34 -38
- package/build/components/InputOption/InputOption.js.map +1 -1
- package/build/components/InputOption/InputOption.stories.js +8 -20
- package/build/components/InputOption/InputOption.stories.js.map +1 -1
- package/build/components/InputOption/index.js +2 -2
- package/build/components/InputOption/index.js.map +1 -1
- package/build/components/InputPhone/InputPhone.js +99 -143
- package/build/components/InputPhone/InputPhone.js.map +1 -1
- package/build/components/InputPhone/InputPhone.stories.js +22 -45
- package/build/components/InputPhone/InputPhone.stories.js.map +1 -1
- package/build/components/InputPhone/helpers/index.js +2 -2
- package/build/components/InputPhone/helpers/index.js.map +1 -1
- package/build/components/InputPhone/helpers/parseValue.js +8 -17
- package/build/components/InputPhone/helpers/parseValue.js.map +1 -1
- package/build/components/InputPhone/helpers/sanitizePrefixes.js +4 -12
- package/build/components/InputPhone/helpers/sanitizePrefixes.js.map +1 -1
- package/build/components/InputPhone/index.js +1 -1
- package/build/components/InputPhone/index.js.map +1 -1
- package/build/components/InputSelect/InputSelect.js +47 -70
- package/build/components/InputSelect/InputSelect.js.map +1 -1
- package/build/components/InputSelect/InputSelect.stories.js +12 -26
- package/build/components/InputSelect/InputSelect.stories.js.map +1 -1
- package/build/components/InputSelect/index.js +1 -1
- package/build/components/InputSelect/index.js.map +1 -1
- package/build/components/InputSelect/partials/InputSelect.Expand.js +3 -3
- package/build/components/InputSelect/partials/InputSelect.Expand.js.map +1 -1
- package/build/components/InputSelect/partials/index.js +1 -1
- package/build/components/InputSelect/partials/index.js.map +1 -1
- package/build/components/InputText/InputText.js +54 -87
- package/build/components/InputText/InputText.js.map +1 -1
- package/build/components/InputText/InputText.stories.js +17 -36
- package/build/components/InputText/InputText.stories.js.map +1 -1
- package/build/components/InputText/index.js +1 -1
- package/build/components/InputText/index.js.map +1 -1
- package/build/components/InputText/partials/InputText.Hint.js +8 -9
- package/build/components/InputText/partials/InputText.Hint.js.map +1 -1
- package/build/components/InputText/partials/InputText.IconState.js +10 -8
- package/build/components/InputText/partials/InputText.IconState.js.map +1 -1
- package/build/components/InputText/partials/InputText.Label.js +13 -15
- package/build/components/InputText/partials/InputText.Label.js.map +1 -1
- package/build/components/InputText/partials/index.js +3 -3
- package/build/components/InputText/partials/index.js.map +1 -1
- package/build/components/Menu/Menu.Option.js +14 -15
- package/build/components/Menu/Menu.Option.js.map +1 -1
- package/build/components/Menu/Menu.js +30 -41
- package/build/components/Menu/Menu.js.map +1 -1
- package/build/components/Menu/Menu.stories.js +9 -23
- package/build/components/Menu/Menu.stories.js.map +1 -1
- package/build/components/Menu/index.js +1 -1
- package/build/components/Menu/index.js.map +1 -1
- package/build/components/Modal/Modal.constants.js +2 -4
- package/build/components/Modal/Modal.constants.js.map +1 -1
- package/build/components/Modal/Modal.js +70 -103
- package/build/components/Modal/Modal.js.map +1 -1
- package/build/components/Modal/Modal.stories.js +15 -36
- package/build/components/Modal/Modal.stories.js.map +1 -1
- package/build/components/Modal/index.js +2 -2
- package/build/components/Modal/index.js.map +1 -1
- package/build/components/Notification/Notification.js +24 -26
- package/build/components/Notification/Notification.js.map +1 -1
- package/build/components/Notification/Notification.stories.js +14 -17
- package/build/components/Notification/Notification.stories.js.map +1 -1
- package/build/components/Notification/index.js +1 -1
- package/build/components/Notification/index.js.map +1 -1
- package/build/components/Progress/Progress.js +11 -15
- package/build/components/Progress/Progress.js.map +1 -1
- package/build/components/Progress/Progress.stories.js +4 -7
- package/build/components/Progress/Progress.stories.js.map +1 -1
- package/build/components/Progress/index.js +1 -1
- package/build/components/Progress/index.js.map +1 -1
- package/build/components/Slider/Slider.Item.js +17 -25
- package/build/components/Slider/Slider.Item.js.map +1 -1
- package/build/components/Slider/Slider.constants.js +2 -4
- package/build/components/Slider/Slider.constants.js.map +1 -1
- package/build/components/Slider/Slider.js +78 -130
- package/build/components/Slider/Slider.js.map +1 -1
- package/build/components/Slider/Slider.stories.js +25 -30
- package/build/components/Slider/Slider.stories.js.map +1 -1
- package/build/components/Slider/index.js +1 -1
- package/build/components/Slider/index.js.map +1 -1
- package/build/components/Table/Table.ColumnFilter.js +77 -116
- package/build/components/Table/Table.ColumnFilter.js.map +1 -1
- package/build/components/Table/Table.Filter.js +31 -41
- package/build/components/Table/Table.Filter.js.map +1 -1
- package/build/components/Table/Table.Row.js +48 -65
- package/build/components/Table/Table.Row.js.map +1 -1
- package/build/components/Table/Table.constants.js +4 -7
- package/build/components/Table/Table.constants.js.map +1 -1
- package/build/components/Table/Table.js +96 -125
- package/build/components/Table/Table.js.map +1 -1
- package/build/components/Table/Table.stories.js +38 -70
- package/build/components/Table/Table.stories.js.map +1 -1
- package/build/components/Table/helpers/index.js +2 -2
- package/build/components/Table/helpers/index.js.map +1 -1
- package/build/components/Table/helpers/select.js +54 -68
- package/build/components/Table/helpers/select.js.map +1 -1
- package/build/components/Table/helpers/storage.js +5 -6
- package/build/components/Table/helpers/storage.js.map +1 -1
- package/build/components/Table/index.js +1 -1
- package/build/components/Table/index.js.map +1 -1
- package/build/components/Tooltip/Tooltip.js +63 -84
- package/build/components/Tooltip/Tooltip.js.map +1 -1
- package/build/components/Tooltip/Tooltip.stories.js +87 -100
- package/build/components/Tooltip/Tooltip.stories.js.map +1 -1
- package/build/components/Tooltip/helpers/index.js +1 -1
- package/build/components/Tooltip/helpers/index.js.map +1 -1
- package/build/components/Tooltip/helpers/isPressableInstance.js +6 -5
- package/build/components/Tooltip/helpers/isPressableInstance.js.map +1 -1
- package/build/components/Tooltip/index.js +1 -1
- package/build/components/Tooltip/index.js.map +1 -1
- package/build/components/components.customElements.js.map +1 -1
- package/build/components/index.js +17 -17
- package/build/components/index.js.map +1 -1
- package/build/helpers/CustomElement.js +9 -29
- package/build/helpers/CustomElement.js.map +1 -1
- package/build/helpers/getIconState.js +6 -5
- package/build/helpers/getIconState.js.map +1 -1
- package/build/helpers/getInputDateErrors.js +10 -10
- package/build/helpers/getInputDateErrors.js.map +1 -1
- package/build/helpers/getInputErrors.js +25 -28
- package/build/helpers/getInputErrors.js.map +1 -1
- package/build/helpers/getInputPhoneErrors.js +11 -13
- package/build/helpers/getInputPhoneErrors.js.map +1 -1
- package/build/helpers/getNavigator.js +10 -10
- package/build/helpers/getNavigator.js.map +1 -1
- package/build/helpers/index.js +9 -9
- package/build/helpers/index.js.map +1 -1
- package/build/helpers/isJest.js +4 -6
- package/build/helpers/isJest.js.map +1 -1
- package/build/helpers/isPlaywright.js +3 -4
- package/build/helpers/isPlaywright.js.map +1 -1
- package/build/helpers/isValidDate.js +21 -38
- package/build/helpers/isValidDate.js.map +1 -1
- package/build/helpers/isValidEmail.js +3 -3
- package/build/helpers/isValidEmail.js.map +1 -1
- package/build/helpers/isValidPhone.js +9 -8
- package/build/helpers/isValidPhone.js.map +1 -1
- package/build/helpers/styles.js +3 -7
- package/build/helpers/styles.js.map +1 -1
- package/build/hooks/helpers/getResolution.js +7 -8
- package/build/hooks/helpers/getResolution.js.map +1 -1
- package/build/hooks/helpers/index.js +2 -2
- package/build/hooks/helpers/index.js.map +1 -1
- package/build/hooks/helpers/sanitizePx.js +1 -3
- package/build/hooks/helpers/sanitizePx.js.map +1 -1
- package/build/hooks/index.js +1 -1
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/useDevice.js +21 -39
- package/build/hooks/useDevice.js.map +1 -1
- package/build/hooks/useDevice.stories.js +7 -16
- package/build/hooks/useDevice.stories.js.map +1 -1
- package/build/index.js +5 -5
- package/build/index.js.map +1 -1
- package/build/primitives/Checkbox/Checkbox.js +18 -18
- package/build/primitives/Checkbox/Checkbox.js.map +1 -1
- package/build/primitives/Checkbox/Checkbox.stories.js +8 -20
- package/build/primitives/Checkbox/Checkbox.stories.js.map +1 -1
- package/build/primitives/Checkbox/index.js +1 -1
- package/build/primitives/Checkbox/index.js.map +1 -1
- package/build/primitives/Icon/Icon.constants.js +1 -2
- package/build/primitives/Icon/Icon.constants.js.map +1 -1
- package/build/primitives/Icon/Icon.js +34 -41
- package/build/primitives/Icon/Icon.js.map +1 -1
- package/build/primitives/Icon/Icon.stories.js +8 -10
- package/build/primitives/Icon/Icon.stories.js.map +1 -1
- package/build/primitives/Icon/index.js +2 -2
- package/build/primitives/Icon/index.js.map +1 -1
- package/build/primitives/Input/Input.js +49 -63
- package/build/primitives/Input/Input.js.map +1 -1
- package/build/primitives/Input/Input.stories.js +14 -29
- package/build/primitives/Input/Input.stories.js.map +1 -1
- package/build/primitives/Input/helpers/index.js +1 -1
- package/build/primitives/Input/helpers/index.js.map +1 -1
- package/build/primitives/Input/helpers/parseValue.js +5 -5
- package/build/primitives/Input/helpers/parseValue.js.map +1 -1
- package/build/primitives/Input/index.js +1 -1
- package/build/primitives/Input/index.js.map +1 -1
- package/build/primitives/Layer/Layer.js +79 -93
- package/build/primitives/Layer/Layer.js.map +1 -1
- package/build/primitives/Layer/Layer.stories.js +10 -13
- package/build/primitives/Layer/Layer.stories.js.map +1 -1
- package/build/primitives/Layer/LayerContent.js +5 -3
- package/build/primitives/Layer/LayerContent.js.map +1 -1
- package/build/primitives/Layer/helpers/getElementLayout.js +18 -15
- package/build/primitives/Layer/helpers/getElementLayout.js.map +1 -1
- package/build/primitives/Layer/helpers/getLayerPosition.js +66 -69
- package/build/primitives/Layer/helpers/getLayerPosition.js.map +1 -1
- package/build/primitives/Layer/helpers/getModalParent.js +10 -9
- package/build/primitives/Layer/helpers/getModalParent.js.map +1 -1
- package/build/primitives/Layer/helpers/getScrollParent.js +4 -3
- package/build/primitives/Layer/helpers/getScrollParent.js.map +1 -1
- package/build/primitives/Layer/helpers/index.js +5 -5
- package/build/primitives/Layer/helpers/index.js.map +1 -1
- package/build/primitives/Layer/helpers/isComponentFixed.js +8 -19
- package/build/primitives/Layer/helpers/isComponentFixed.js.map +1 -1
- package/build/primitives/Layer/index.js +2 -2
- package/build/primitives/Layer/index.js.map +1 -1
- package/build/primitives/Pressable/Pressable.constants.js +1 -2
- package/build/primitives/Pressable/Pressable.constants.js.map +1 -1
- package/build/primitives/Pressable/Pressable.js +34 -44
- package/build/primitives/Pressable/Pressable.js.map +1 -1
- package/build/primitives/Pressable/Pressable.stories.js +5 -8
- package/build/primitives/Pressable/Pressable.stories.js.map +1 -1
- package/build/primitives/Pressable/index.js +1 -1
- package/build/primitives/Pressable/index.js.map +1 -1
- package/build/primitives/Primitive/Primitive.constants.js +4 -8
- package/build/primitives/Primitive/Primitive.constants.js.map +1 -1
- package/build/primitives/Primitive/Primitive.js +20 -28
- package/build/primitives/Primitive/Primitive.js.map +1 -1
- package/build/primitives/Primitive/Primitive.stories.js +7 -10
- package/build/primitives/Primitive/Primitive.stories.js.map +1 -1
- package/build/primitives/Primitive/helpers/getProps.js +8 -17
- package/build/primitives/Primitive/helpers/getProps.js.map +1 -1
- package/build/primitives/Primitive/helpers/getTag.js +4 -4
- package/build/primitives/Primitive/helpers/getTag.js.map +1 -1
- package/build/primitives/Primitive/helpers/index.js +2 -2
- package/build/primitives/Primitive/helpers/index.js.map +1 -1
- package/build/primitives/Primitive/index.js +1 -1
- package/build/primitives/Primitive/index.js.map +1 -1
- package/build/primitives/Radio/Radio.js +11 -15
- package/build/primitives/Radio/Radio.js.map +1 -1
- package/build/primitives/Radio/Radio.stories.js +8 -20
- package/build/primitives/Radio/Radio.stories.js.map +1 -1
- package/build/primitives/Radio/index.js +1 -1
- package/build/primitives/Radio/index.js.map +1 -1
- package/build/primitives/ScrollView/ScrollView.js +73 -96
- package/build/primitives/ScrollView/ScrollView.js.map +1 -1
- package/build/primitives/ScrollView/ScrollView.stories.js +12 -17
- package/build/primitives/ScrollView/ScrollView.stories.js.map +1 -1
- package/build/primitives/ScrollView/index.js +1 -1
- package/build/primitives/ScrollView/index.js.map +1 -1
- package/build/primitives/Select/Select.js +44 -54
- package/build/primitives/Select/Select.js.map +1 -1
- package/build/primitives/Select/Select.stories.js +14 -29
- package/build/primitives/Select/Select.stories.js.map +1 -1
- package/build/primitives/Select/index.js +1 -1
- package/build/primitives/Select/index.js.map +1 -1
- package/build/primitives/Switch/Switch.js +14 -16
- package/build/primitives/Switch/Switch.js.map +1 -1
- package/build/primitives/Switch/Switch.stories.js +8 -20
- package/build/primitives/Switch/Switch.stories.js.map +1 -1
- package/build/primitives/Switch/index.js +1 -1
- package/build/primitives/Switch/index.js.map +1 -1
- package/build/primitives/Text/Text.js +43 -55
- package/build/primitives/Text/Text.js.map +1 -1
- package/build/primitives/Text/Text.stories.js +8 -10
- package/build/primitives/Text/Text.stories.js.map +1 -1
- package/build/primitives/Text/helpers/color.js +13 -12
- package/build/primitives/Text/helpers/color.js.map +1 -1
- package/build/primitives/Text/helpers/index.js +2 -2
- package/build/primitives/Text/helpers/index.js.map +1 -1
- package/build/primitives/Text/helpers/parseMarkdown.js +41 -54
- package/build/primitives/Text/helpers/parseMarkdown.js.map +1 -1
- package/build/primitives/Text/index.js +1 -1
- package/build/primitives/Text/index.js.map +1 -1
- package/build/primitives/View/View.js +16 -25
- package/build/primitives/View/View.js.map +1 -1
- package/build/primitives/View/View.stories.js +7 -10
- package/build/primitives/View/View.stories.js.map +1 -1
- package/build/primitives/View/index.js +1 -1
- package/build/primitives/View/index.js.map +1 -1
- package/build/primitives/index.js +12 -12
- package/build/primitives/index.js.map +1 -1
- package/build/primitives/primitives.customElements.js.map +1 -1
- package/build/theme/helpers/camelcase.js +3 -5
- package/build/theme/helpers/camelcase.js.map +1 -1
- package/build/theme/helpers/index.js +2 -2
- package/build/theme/helpers/index.js.map +1 -1
- package/build/theme/helpers/palette.js +18 -32
- package/build/theme/helpers/palette.js.map +1 -1
- package/build/theme/index.js +2 -2
- package/build/theme/index.js.map +1 -1
- package/build/theme/theme.constants.js +16 -23
- package/build/theme/theme.constants.js.map +1 -1
- package/build/theme/theme.js +61 -81
- package/build/theme/theme.js.map +1 -1
- package/build/theme/theme.stories.js +25 -38
- package/build/theme/theme.stories.js.map +1 -1
- package/package.json +18 -15
|
@@ -9,7 +9,7 @@ Object.keys(_getFirstDateOfMonth).forEach(function (key) {
|
|
|
9
9
|
if (key in exports && exports[key] === _getFirstDateOfMonth[key]) return;
|
|
10
10
|
Object.defineProperty(exports, key, {
|
|
11
11
|
enumerable: true,
|
|
12
|
-
get: function
|
|
12
|
+
get: function () {
|
|
13
13
|
return _getFirstDateOfMonth[key];
|
|
14
14
|
}
|
|
15
15
|
});
|
|
@@ -20,7 +20,7 @@ Object.keys(_getFirstDateOfWeek).forEach(function (key) {
|
|
|
20
20
|
if (key in exports && exports[key] === _getFirstDateOfWeek[key]) return;
|
|
21
21
|
Object.defineProperty(exports, key, {
|
|
22
22
|
enumerable: true,
|
|
23
|
-
get: function
|
|
23
|
+
get: function () {
|
|
24
24
|
return _getFirstDateOfWeek[key];
|
|
25
25
|
}
|
|
26
26
|
});
|
|
@@ -31,7 +31,7 @@ Object.keys(_getFirstDayOfWeek).forEach(function (key) {
|
|
|
31
31
|
if (key in exports && exports[key] === _getFirstDayOfWeek[key]) return;
|
|
32
32
|
Object.defineProperty(exports, key, {
|
|
33
33
|
enumerable: true,
|
|
34
|
-
get: function
|
|
34
|
+
get: function () {
|
|
35
35
|
return _getFirstDayOfWeek[key];
|
|
36
36
|
}
|
|
37
37
|
});
|
|
@@ -42,7 +42,7 @@ Object.keys(_getHeader).forEach(function (key) {
|
|
|
42
42
|
if (key in exports && exports[key] === _getHeader[key]) return;
|
|
43
43
|
Object.defineProperty(exports, key, {
|
|
44
44
|
enumerable: true,
|
|
45
|
-
get: function
|
|
45
|
+
get: function () {
|
|
46
46
|
return _getHeader[key];
|
|
47
47
|
}
|
|
48
48
|
});
|
|
@@ -53,7 +53,7 @@ Object.keys(_getMonthRef).forEach(function (key) {
|
|
|
53
53
|
if (key in exports && exports[key] === _getMonthRef[key]) return;
|
|
54
54
|
Object.defineProperty(exports, key, {
|
|
55
55
|
enumerable: true,
|
|
56
|
-
get: function
|
|
56
|
+
get: function () {
|
|
57
57
|
return _getMonthRef[key];
|
|
58
58
|
}
|
|
59
59
|
});
|
|
@@ -64,7 +64,7 @@ Object.keys(_getScrollTo).forEach(function (key) {
|
|
|
64
64
|
if (key in exports && exports[key] === _getScrollTo[key]) return;
|
|
65
65
|
Object.defineProperty(exports, key, {
|
|
66
66
|
enumerable: true,
|
|
67
|
-
get: function
|
|
67
|
+
get: function () {
|
|
68
68
|
return _getScrollTo[key];
|
|
69
69
|
}
|
|
70
70
|
});
|
|
@@ -75,7 +75,7 @@ Object.keys(_getToday).forEach(function (key) {
|
|
|
75
75
|
if (key in exports && exports[key] === _getToday[key]) return;
|
|
76
76
|
Object.defineProperty(exports, key, {
|
|
77
77
|
enumerable: true,
|
|
78
|
-
get: function
|
|
78
|
+
get: function () {
|
|
79
79
|
return _getToday[key];
|
|
80
80
|
}
|
|
81
81
|
});
|
|
@@ -86,7 +86,7 @@ Object.keys(_getWeekDays).forEach(function (key) {
|
|
|
86
86
|
if (key in exports && exports[key] === _getWeekDays[key]) return;
|
|
87
87
|
Object.defineProperty(exports, key, {
|
|
88
88
|
enumerable: true,
|
|
89
|
-
get: function
|
|
89
|
+
get: function () {
|
|
90
90
|
return _getWeekDays[key];
|
|
91
91
|
}
|
|
92
92
|
});
|
|
@@ -97,7 +97,7 @@ Object.keys(_getWeekNumber).forEach(function (key) {
|
|
|
97
97
|
if (key in exports && exports[key] === _getWeekNumber[key]) return;
|
|
98
98
|
Object.defineProperty(exports, key, {
|
|
99
99
|
enumerable: true,
|
|
100
|
-
get: function
|
|
100
|
+
get: function () {
|
|
101
101
|
return _getWeekNumber[key];
|
|
102
102
|
}
|
|
103
103
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/Calendar/helpers/index.js"],"sourcesContent":["export * from './getFirstDateOfMonth';\nexport * from './getFirstDateOfWeek';\nexport * from './getFirstDayOfWeek';\nexport * from './getHeader';\nexport * from './getMonthRef';\nexport * from './getScrollTo';\nexport * from './getToday';\nexport * from './getWeekDays';\nexport * from './getWeekNumber';\n"],"mappings":";;;;;AAAA;
|
|
1
|
+
{"version":3,"file":"index.js","names":["_getFirstDateOfMonth","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_getFirstDateOfWeek","_getFirstDayOfWeek","_getHeader","_getMonthRef","_getScrollTo","_getToday","_getWeekDays","_getWeekNumber"],"sources":["../../../../src/components/Calendar/helpers/index.js"],"sourcesContent":["export * from './getFirstDateOfMonth';\nexport * from './getFirstDateOfWeek';\nexport * from './getFirstDayOfWeek';\nexport * from './getHeader';\nexport * from './getMonthRef';\nexport * from './getScrollTo';\nexport * from './getToday';\nexport * from './getWeekDays';\nexport * from './getWeekNumber';\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/Calendar/index.js"],"sourcesContent":["export * from './Calendar';\n"],"mappings":";;;;;AAAA;
|
|
1
|
+
{"version":3,"file":"index.js","names":["_Calendar","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/components/Calendar/index.js"],"sourcesContent":["export * from './Calendar';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -4,14 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.FIELDS_WITHOUT_ERROR = exports.FIELDS_INPUT = exports.FIELDS_BOOLEAN = exports.DEFAULT_TIMEOUT_ONERROR = exports.DEFAULT_TIMEOUT_ONCHANGE = void 0;
|
|
7
|
-
|
|
8
|
-
exports.
|
|
9
|
-
|
|
10
|
-
exports.
|
|
11
|
-
|
|
12
|
-
exports.FIELDS_BOOLEAN = FIELDS_BOOLEAN;
|
|
13
|
-
var FIELDS_INPUT = ['Component:InputText', 'Component:InputDate', 'Component:InputPhone'];
|
|
14
|
-
exports.FIELDS_INPUT = FIELDS_INPUT;
|
|
15
|
-
var FIELDS_WITHOUT_ERROR = ['Primitive:Radio', 'Component:InputNumber'];
|
|
16
|
-
exports.FIELDS_WITHOUT_ERROR = FIELDS_WITHOUT_ERROR;
|
|
7
|
+
const DEFAULT_TIMEOUT_ONCHANGE = exports.DEFAULT_TIMEOUT_ONCHANGE = 0;
|
|
8
|
+
const DEFAULT_TIMEOUT_ONERROR = exports.DEFAULT_TIMEOUT_ONERROR = 10;
|
|
9
|
+
const FIELDS_BOOLEAN = exports.FIELDS_BOOLEAN = ['Component:InputOption', 'Primitive:Checkbox', 'Primitive:Radio', 'Primitive.Switch'];
|
|
10
|
+
const FIELDS_INPUT = exports.FIELDS_INPUT = ['Component:InputText', 'Component:InputDate', 'Component:InputPhone'];
|
|
11
|
+
const FIELDS_WITHOUT_ERROR = exports.FIELDS_WITHOUT_ERROR = ['Primitive:Radio', 'Component:InputNumber'];
|
|
17
12
|
//# sourceMappingURL=Form.constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.constants.js","names":["DEFAULT_TIMEOUT_ONCHANGE","DEFAULT_TIMEOUT_ONERROR","FIELDS_BOOLEAN","FIELDS_INPUT","FIELDS_WITHOUT_ERROR"],"sources":["../../../src/components/Form/Form.constants.js"],"sourcesContent":["const DEFAULT_TIMEOUT_ONCHANGE = 0;\nconst DEFAULT_TIMEOUT_ONERROR = 10;\nconst FIELDS_BOOLEAN = ['Component:InputOption', 'Primitive:Checkbox', 'Primitive:Radio', 'Primitive.Switch'];\nconst FIELDS_INPUT = ['Component:InputText', 'Component:InputDate', 'Component:InputPhone'];\nconst FIELDS_WITHOUT_ERROR = ['Primitive:Radio', 'Component:InputNumber'];\n\nexport { DEFAULT_TIMEOUT_ONCHANGE, DEFAULT_TIMEOUT_ONERROR, FIELDS_BOOLEAN, FIELDS_INPUT, FIELDS_WITHOUT_ERROR };\n"],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Form.constants.js","names":["DEFAULT_TIMEOUT_ONCHANGE","exports","DEFAULT_TIMEOUT_ONERROR","FIELDS_BOOLEAN","FIELDS_INPUT","FIELDS_WITHOUT_ERROR"],"sources":["../../../src/components/Form/Form.constants.js"],"sourcesContent":["const DEFAULT_TIMEOUT_ONCHANGE = 0;\nconst DEFAULT_TIMEOUT_ONERROR = 10;\nconst FIELDS_BOOLEAN = ['Component:InputOption', 'Primitive:Checkbox', 'Primitive:Radio', 'Primitive.Switch'];\nconst FIELDS_INPUT = ['Component:InputText', 'Component:InputDate', 'Component:InputPhone'];\nconst FIELDS_WITHOUT_ERROR = ['Primitive:Radio', 'Component:InputNumber'];\n\nexport { DEFAULT_TIMEOUT_ONCHANGE, DEFAULT_TIMEOUT_ONERROR, FIELDS_BOOLEAN, FIELDS_INPUT, FIELDS_WITHOUT_ERROR };\n"],"mappings":";;;;;;AAAA,MAAMA,wBAAwB,GAAAC,OAAA,CAAAD,wBAAA,GAAG,CAAC;AAClC,MAAME,uBAAuB,GAAAD,OAAA,CAAAC,uBAAA,GAAG,EAAE;AAClC,MAAMC,cAAc,GAAAF,OAAA,CAAAE,cAAA,GAAG,CAAC,uBAAuB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;AAC7G,MAAMC,YAAY,GAAAH,OAAA,CAAAG,YAAA,GAAG,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,sBAAsB,CAAC;AAC3F,MAAMC,oBAAoB,GAAAJ,OAAA,CAAAI,oBAAA,GAAG,CAAC,iBAAiB,EAAE,uBAAuB,CAAC","ignoreList":[]}
|
|
@@ -1,68 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.Form = void 0;
|
|
8
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _primitives = require("../../primitives");
|
|
11
9
|
var _Form = require("./Form.constants");
|
|
12
10
|
var _helpers = require("./helpers");
|
|
13
|
-
var
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
16
|
-
function _interopRequireDefault(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
_ref$validateOnMount = _ref.validateOnMount,
|
|
40
|
-
validateOnMount = _ref$validateOnMount === void 0 ? false : _ref$validateOnMount,
|
|
41
|
-
onChange = _ref.onChange,
|
|
42
|
-
onEnter = _ref.onEnter,
|
|
43
|
-
onError = _ref.onError,
|
|
44
|
-
onLeave = _ref.onLeave,
|
|
45
|
-
onSubmit = _ref.onSubmit,
|
|
46
|
-
others = _objectWithoutProperties(_ref, _excluded);
|
|
47
|
-
var _useState = (0, _react.useState)({}),
|
|
48
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
49
|
-
error = _useState2[0],
|
|
50
|
-
setError = _useState2[1];
|
|
51
|
-
var _useState3 = (0, _react.useState)({}),
|
|
52
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
53
|
-
initialValue = _useState4[0],
|
|
54
|
-
setInitialValue = _useState4[1];
|
|
55
|
-
var _useState5 = (0, _react.useState)({}),
|
|
56
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
57
|
-
touched = _useState6[0],
|
|
58
|
-
setTouched = _useState6[1];
|
|
59
|
-
var _useState7 = (0, _react.useState)({}),
|
|
60
|
-
_useState8 = _slicedToArray(_useState7, 2),
|
|
61
|
-
values = _useState8[0],
|
|
62
|
-
setValues = _useState8[1];
|
|
63
|
-
(0, _react.useEffect)(function () {
|
|
64
|
-
var nextValues = (0, _helpers.getChildrenValues)(children);
|
|
65
|
-
var nextChildrenKeys = Object.keys(nextValues).sort();
|
|
11
|
+
var _primitives = require("../../primitives");
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
let timeoutError;
|
|
16
|
+
const Form = _ref => {
|
|
17
|
+
let {
|
|
18
|
+
children,
|
|
19
|
+
debounce = _Form.DEFAULT_TIMEOUT_ONCHANGE,
|
|
20
|
+
schema = {},
|
|
21
|
+
showErrors = false,
|
|
22
|
+
validateOnMount = false,
|
|
23
|
+
onChange,
|
|
24
|
+
onEnter,
|
|
25
|
+
onError,
|
|
26
|
+
onLeave,
|
|
27
|
+
onSubmit,
|
|
28
|
+
...others
|
|
29
|
+
} = _ref;
|
|
30
|
+
const [error, setError] = (0, _react.useState)({});
|
|
31
|
+
const [initialValue, setInitialValue] = (0, _react.useState)({});
|
|
32
|
+
const [touched, setTouched] = (0, _react.useState)({});
|
|
33
|
+
const [values, setValues] = (0, _react.useState)({});
|
|
34
|
+
(0, _react.useEffect)(() => {
|
|
35
|
+
const nextValues = (0, _helpers.getChildrenValues)(children);
|
|
36
|
+
const nextChildrenKeys = Object.keys(nextValues).sort();
|
|
66
37
|
if (!Object.keys(nextValues).length) return;
|
|
67
38
|
if (JSON.stringify(nextChildrenKeys) !== JSON.stringify(Object.keys(initialValue).sort())) {
|
|
68
39
|
setInitialValue(nextValues);
|
|
@@ -71,9 +42,7 @@ var Form = function Form(_ref) {
|
|
|
71
42
|
if (validateOnMount) handleError(nextValues);else setError({});
|
|
72
43
|
setTouched({});
|
|
73
44
|
} else {
|
|
74
|
-
|
|
75
|
-
return JSON.stringify(values[key]) !== JSON.stringify(nextValues[key]);
|
|
76
|
-
});
|
|
45
|
+
const collision = nextChildrenKeys.some(key => JSON.stringify(values[key]) !== JSON.stringify(nextValues[key]));
|
|
77
46
|
if (collision) {
|
|
78
47
|
setValues(nextValues);
|
|
79
48
|
handleError(nextValues);
|
|
@@ -81,93 +50,92 @@ var Form = function Form(_ref) {
|
|
|
81
50
|
}
|
|
82
51
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
83
52
|
}, [children]);
|
|
84
|
-
(0, _react.useEffect)(
|
|
53
|
+
(0, _react.useEffect)(() => {
|
|
85
54
|
if (!onChange || values === initialValue || !Object.keys(values).length) return;
|
|
86
55
|
if (!debounce) return onChange(values, (0, _helpers.groupState)({
|
|
87
|
-
initialValue
|
|
56
|
+
initialValue,
|
|
88
57
|
value: values,
|
|
89
|
-
touched
|
|
58
|
+
touched
|
|
90
59
|
}));
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}, debounce);
|
|
98
|
-
return function () {
|
|
99
|
-
return clearTimeout(timer);
|
|
100
|
-
};
|
|
60
|
+
const timer = setTimeout(() => onChange(values, (0, _helpers.groupState)({
|
|
61
|
+
initialValue,
|
|
62
|
+
value: values,
|
|
63
|
+
touched
|
|
64
|
+
})), debounce);
|
|
65
|
+
return () => clearTimeout(timer);
|
|
101
66
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
102
67
|
}, [values]);
|
|
103
|
-
|
|
104
|
-
|
|
68
|
+
const handleChange = (field, fieldValue) => {
|
|
69
|
+
const nextValues = {
|
|
70
|
+
...values,
|
|
71
|
+
[field]: fieldValue
|
|
72
|
+
};
|
|
105
73
|
setValues(nextValues);
|
|
106
|
-
timeoutError = setTimeout(
|
|
107
|
-
return handleError(nextValues);
|
|
108
|
-
}, _Form.DEFAULT_TIMEOUT_ONERROR);
|
|
74
|
+
timeoutError = setTimeout(() => handleError(nextValues), _Form.DEFAULT_TIMEOUT_ONERROR);
|
|
109
75
|
};
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
children
|
|
113
|
-
schema
|
|
114
|
-
values
|
|
76
|
+
const handleError = values => {
|
|
77
|
+
const next = (0, _helpers.getChildrenErrors)({
|
|
78
|
+
children,
|
|
79
|
+
schema,
|
|
80
|
+
values
|
|
115
81
|
});
|
|
116
82
|
setError(next);
|
|
117
83
|
if (JSON.stringify(error) !== JSON.stringify(next)) onError && onError(next);
|
|
118
84
|
return next;
|
|
119
85
|
};
|
|
120
|
-
|
|
121
|
-
setTouched(
|
|
86
|
+
const handleLeave = (field, event) => {
|
|
87
|
+
setTouched({
|
|
88
|
+
...touched,
|
|
89
|
+
[field]: true
|
|
90
|
+
});
|
|
122
91
|
if (onEnter) onEnter(field, event);
|
|
123
92
|
};
|
|
124
|
-
|
|
93
|
+
const handleKeyUp = event => {
|
|
125
94
|
if (event.key !== 'Enter' || Object.keys(error).length) return;
|
|
126
95
|
handleSubmit(event);
|
|
127
96
|
};
|
|
128
|
-
|
|
97
|
+
const handleSubmit = event => {
|
|
129
98
|
event.preventDefault();
|
|
130
|
-
|
|
99
|
+
const errors = handleError(values);
|
|
131
100
|
if (Object.keys(errors).length) onError(errors);else if (onSubmit) onSubmit(values, (0, _helpers.groupState)({
|
|
132
|
-
initialValue
|
|
101
|
+
initialValue,
|
|
133
102
|
value: values,
|
|
134
|
-
touched
|
|
103
|
+
touched
|
|
135
104
|
}), event);
|
|
136
105
|
};
|
|
137
|
-
return (0, _react.useMemo)(
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
106
|
+
return (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement(_primitives.Primitive, {
|
|
107
|
+
...others,
|
|
108
|
+
tag: 'form',
|
|
109
|
+
onSubmit: handleSubmit
|
|
110
|
+
}, _react.default.Children.map(children, (child, index) => {
|
|
111
|
+
if (!child || child === null) return;
|
|
112
|
+
const {
|
|
113
|
+
props = {},
|
|
114
|
+
type: {
|
|
115
|
+
displayName
|
|
116
|
+
} = {}
|
|
117
|
+
} = child || {};
|
|
118
|
+
const {
|
|
119
|
+
type
|
|
120
|
+
} = props;
|
|
121
|
+
const field = (0, _helpers.getField)(props);
|
|
122
|
+
return /*#__PURE__*/_react.default.cloneElement(child, {
|
|
123
|
+
key: index,
|
|
124
|
+
...(field ? {
|
|
125
|
+
...props,
|
|
126
|
+
...schema[field],
|
|
154
127
|
error: !_Form.FIELDS_WITHOUT_ERROR.includes(displayName) && (props.error || showErrors && !!error[field]),
|
|
155
128
|
value: !_Form.FIELDS_BOOLEAN.includes(displayName) ? values[field] : props.value,
|
|
156
|
-
onChange:
|
|
157
|
-
|
|
158
|
-
},
|
|
159
|
-
onEnter: function onEnter(event) {
|
|
160
|
-
return handleLeave(field, event);
|
|
161
|
-
},
|
|
129
|
+
onChange: value => handleChange(field, value),
|
|
130
|
+
onEnter: event => handleLeave(field, event),
|
|
162
131
|
onKeyUp: _Form.FIELDS_INPUT.includes(displayName) ? handleKeyUp : undefined,
|
|
163
|
-
onLeave: onLeave ?
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}) : type === 'submit' ? _objectSpread(_objectSpread({}, props), {}, {
|
|
132
|
+
onLeave: onLeave ? event => onLeave(field, event) : undefined
|
|
133
|
+
} : type === 'submit' ? {
|
|
134
|
+
...props,
|
|
167
135
|
onPress: handleSubmit
|
|
168
|
-
}
|
|
169
|
-
})
|
|
170
|
-
},
|
|
136
|
+
} : undefined)
|
|
137
|
+
});
|
|
138
|
+
})),
|
|
171
139
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
172
140
|
[children, error, others, schema]);
|
|
173
141
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","names":["timeoutError","Form","children","debounce","DEFAULT_TIMEOUT_ONCHANGE","schema","showErrors","validateOnMount","onChange","onEnter","onError","onLeave","onSubmit","others","useState","error","setError","initialValue","setInitialValue","touched","setTouched","values","setValues","useEffect","nextValues","getChildrenValues","nextChildrenKeys","Object","keys","sort","length","JSON","stringify","clearTimeout","handleError","collision","some","key","groupState","value","timer","setTimeout","handleChange","field","fieldValue","DEFAULT_TIMEOUT_ONERROR","next","getChildrenErrors","handleLeave","event","handleKeyUp","handleSubmit","preventDefault","errors","useMemo","React","createElement","Primitive","tag","Children","map","child","index","props","type","displayName","getField","cloneElement","FIELDS_WITHOUT_ERROR","includes","FIELDS_BOOLEAN","onKeyUp","FIELDS_INPUT","undefined","onPress","propTypes","PropTypes","node","number","shape","bool","func"],"sources":["../../../src/components/Form/Form.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport { Primitive } from '../../primitives';\nimport {\n DEFAULT_TIMEOUT_ONCHANGE,\n DEFAULT_TIMEOUT_ONERROR,\n FIELDS_BOOLEAN,\n FIELDS_INPUT,\n FIELDS_WITHOUT_ERROR,\n} from './Form.constants';\nimport { getChildrenErrors, getChildrenValues, getField, groupState } from './helpers';\n\nlet timeoutError;\n\nconst Form = ({\n children,\n debounce = DEFAULT_TIMEOUT_ONCHANGE,\n schema = {},\n showErrors = false,\n validateOnMount = false,\n onChange,\n onEnter,\n onError,\n onLeave,\n onSubmit,\n ...others\n}) => {\n const [error, setError] = useState({});\n const [initialValue, setInitialValue] = useState({});\n const [touched, setTouched] = useState({});\n const [values, setValues] = useState({});\n\n useEffect(() => {\n const nextValues = getChildrenValues(children);\n const nextChildrenKeys = Object.keys(nextValues).sort();\n\n if (!Object.keys(nextValues).length) return;\n\n if (JSON.stringify(nextChildrenKeys) !== JSON.stringify(Object.keys(initialValue).sort())) {\n setInitialValue(nextValues);\n setValues(nextValues);\n clearTimeout(timeoutError);\n\n if (validateOnMount) handleError(nextValues);\n else setError({});\n\n setTouched({});\n } else {\n const collision = nextChildrenKeys.some((key) => JSON.stringify(values[key]) !== JSON.stringify(nextValues[key]));\n if (collision) {\n setValues(nextValues);\n handleError(nextValues);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children]);\n\n useEffect(() => {\n if (!onChange || values === initialValue || !Object.keys(values).length) return;\n\n if (!debounce) return onChange(values, groupState({ initialValue, value: values, touched }));\n\n const timer = setTimeout(() => onChange(values, groupState({ initialValue, value: values, touched })), debounce);\n return () => clearTimeout(timer);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handleChange = (field, fieldValue) => {\n const nextValues = { ...values, [field]: fieldValue };\n\n setValues(nextValues);\n timeoutError = setTimeout(() => handleError(nextValues), DEFAULT_TIMEOUT_ONERROR);\n };\n\n const handleError = (values) => {\n const next = getChildrenErrors({ children, schema, values });\n\n setError(next);\n if (JSON.stringify(error) !== JSON.stringify(next)) onError && onError(next);\n\n return next;\n };\n\n const handleLeave = (field, event) => {\n setTouched({ ...touched, [field]: true });\n if (onEnter) onEnter(field, event);\n };\n\n const handleKeyUp = (event) => {\n if (event.key !== 'Enter' || Object.keys(error).length) return;\n handleSubmit(event);\n };\n\n const handleSubmit = (event) => {\n event.preventDefault();\n const errors = handleError(values);\n\n if (Object.keys(errors).length) onError(errors);\n else if (onSubmit) onSubmit(values, groupState({ initialValue, value: values, touched }), event);\n };\n\n return useMemo(\n () =>\n React.createElement(\n Primitive,\n {\n ...others,\n tag: 'form',\n onSubmit: handleSubmit,\n },\n React.Children.map(children, (child, index) => {\n if (!child || child === null) return;\n\n const { props = {}, type: { displayName } = {} } = child || {};\n const { type } = props;\n const field = getField(props);\n\n return React.cloneElement(child, {\n key: index,\n ...(field\n ? {\n ...props,\n ...schema[field],\n error: !FIELDS_WITHOUT_ERROR.includes(displayName) && (props.error || (showErrors && !!error[field])),\n value: !FIELDS_BOOLEAN.includes(displayName) ? values[field] : props.value,\n onChange: (value) => handleChange(field, value),\n onEnter: (event) => handleLeave(field, event),\n onKeyUp: FIELDS_INPUT.includes(displayName) ? handleKeyUp : undefined,\n onLeave: onLeave ? (event) => onLeave(field, event) : undefined,\n }\n : type === 'submit'\n ? { ...props, onPress: handleSubmit }\n : undefined),\n });\n }),\n ),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [children, error, others, schema],\n );\n};\n\nForm.displayName = 'Component:Form';\n\nForm.propTypes = {\n children: PropTypes.node,\n debounce: PropTypes.number,\n schema: PropTypes.shape({}),\n showErrors: PropTypes.bool,\n validateOnMount: PropTypes.bool,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Form };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Form.js","names":["_propTypes","_interopRequireDefault","require","_react","_interopRequireWildcard","_Form","_helpers","_primitives","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","timeoutError","Form","_ref","children","debounce","DEFAULT_TIMEOUT_ONCHANGE","schema","showErrors","validateOnMount","onChange","onEnter","onError","onLeave","onSubmit","others","error","setError","useState","initialValue","setInitialValue","touched","setTouched","values","setValues","useEffect","nextValues","getChildrenValues","nextChildrenKeys","keys","sort","length","JSON","stringify","clearTimeout","handleError","collision","some","key","groupState","value","timer","setTimeout","handleChange","field","fieldValue","DEFAULT_TIMEOUT_ONERROR","next","getChildrenErrors","handleLeave","event","handleKeyUp","handleSubmit","preventDefault","errors","useMemo","React","createElement","Primitive","tag","Children","map","child","index","props","type","displayName","getField","cloneElement","FIELDS_WITHOUT_ERROR","includes","FIELDS_BOOLEAN","onKeyUp","FIELDS_INPUT","undefined","onPress","exports","propTypes","PropTypes","node","number","shape","bool","func"],"sources":["../../../src/components/Form/Form.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport {\n DEFAULT_TIMEOUT_ONCHANGE,\n DEFAULT_TIMEOUT_ONERROR,\n FIELDS_BOOLEAN,\n FIELDS_INPUT,\n FIELDS_WITHOUT_ERROR,\n} from './Form.constants';\nimport { getChildrenErrors, getChildrenValues, getField, groupState } from './helpers';\nimport { Primitive } from '../../primitives';\n\nlet timeoutError;\n\nconst Form = ({\n children,\n debounce = DEFAULT_TIMEOUT_ONCHANGE,\n schema = {},\n showErrors = false,\n validateOnMount = false,\n onChange,\n onEnter,\n onError,\n onLeave,\n onSubmit,\n ...others\n}) => {\n const [error, setError] = useState({});\n const [initialValue, setInitialValue] = useState({});\n const [touched, setTouched] = useState({});\n const [values, setValues] = useState({});\n\n useEffect(() => {\n const nextValues = getChildrenValues(children);\n const nextChildrenKeys = Object.keys(nextValues).sort();\n\n if (!Object.keys(nextValues).length) return;\n\n if (JSON.stringify(nextChildrenKeys) !== JSON.stringify(Object.keys(initialValue).sort())) {\n setInitialValue(nextValues);\n setValues(nextValues);\n clearTimeout(timeoutError);\n\n if (validateOnMount) handleError(nextValues);\n else setError({});\n\n setTouched({});\n } else {\n const collision = nextChildrenKeys.some((key) => JSON.stringify(values[key]) !== JSON.stringify(nextValues[key]));\n if (collision) {\n setValues(nextValues);\n handleError(nextValues);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children]);\n\n useEffect(() => {\n if (!onChange || values === initialValue || !Object.keys(values).length) return;\n\n if (!debounce) return onChange(values, groupState({ initialValue, value: values, touched }));\n\n const timer = setTimeout(() => onChange(values, groupState({ initialValue, value: values, touched })), debounce);\n return () => clearTimeout(timer);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handleChange = (field, fieldValue) => {\n const nextValues = { ...values, [field]: fieldValue };\n\n setValues(nextValues);\n timeoutError = setTimeout(() => handleError(nextValues), DEFAULT_TIMEOUT_ONERROR);\n };\n\n const handleError = (values) => {\n const next = getChildrenErrors({ children, schema, values });\n\n setError(next);\n if (JSON.stringify(error) !== JSON.stringify(next)) onError && onError(next);\n\n return next;\n };\n\n const handleLeave = (field, event) => {\n setTouched({ ...touched, [field]: true });\n if (onEnter) onEnter(field, event);\n };\n\n const handleKeyUp = (event) => {\n if (event.key !== 'Enter' || Object.keys(error).length) return;\n handleSubmit(event);\n };\n\n const handleSubmit = (event) => {\n event.preventDefault();\n const errors = handleError(values);\n\n if (Object.keys(errors).length) onError(errors);\n else if (onSubmit) onSubmit(values, groupState({ initialValue, value: values, touched }), event);\n };\n\n return useMemo(\n () =>\n React.createElement(\n Primitive,\n {\n ...others,\n tag: 'form',\n onSubmit: handleSubmit,\n },\n React.Children.map(children, (child, index) => {\n if (!child || child === null) return;\n\n const { props = {}, type: { displayName } = {} } = child || {};\n const { type } = props;\n const field = getField(props);\n\n return React.cloneElement(child, {\n key: index,\n ...(field\n ? {\n ...props,\n ...schema[field],\n error: !FIELDS_WITHOUT_ERROR.includes(displayName) && (props.error || (showErrors && !!error[field])),\n value: !FIELDS_BOOLEAN.includes(displayName) ? values[field] : props.value,\n onChange: (value) => handleChange(field, value),\n onEnter: (event) => handleLeave(field, event),\n onKeyUp: FIELDS_INPUT.includes(displayName) ? handleKeyUp : undefined,\n onLeave: onLeave ? (event) => onLeave(field, event) : undefined,\n }\n : type === 'submit'\n ? { ...props, onPress: handleSubmit }\n : undefined),\n });\n }),\n ),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [children, error, others, schema],\n );\n};\n\nForm.displayName = 'Component:Form';\n\nForm.propTypes = {\n children: PropTypes.node,\n debounce: PropTypes.number,\n schema: PropTypes.shape({}),\n showErrors: PropTypes.bool,\n validateOnMount: PropTypes.bool,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Form };\n"],"mappings":"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","ignoreList":[]}
|