@steroidsjs/core 3.0.0-beta.6 → 3.0.0-beta.60
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/actions/list.d.ts +69 -0
- package/actions/list.js +6 -1
- package/base/Enum.d.ts +3 -3
- package/components/ClientStorageComponent.js +1 -1
- package/components/ResourceComponent.d.ts +88 -6
- package/components/ResourceComponent.js +11 -11
- package/components/UiComponent.d.ts +130 -1
- package/docs-autogen-result.json +28623 -0
- package/hooks/index.d.ts +2 -1
- package/hooks/index.js +3 -1
- package/hooks/useAddressBar.d.ts +11 -0
- package/hooks/useAddressBar.js +0 -2
- package/hooks/useApplication.d.ts +4 -1
- package/hooks/useApplication.js +5 -1
- package/hooks/useDataProvider.d.ts +29 -28
- package/hooks/useDataSelect.d.ts +10 -3
- package/hooks/useDataSelect.js +37 -23
- package/hooks/useDispatch.d.ts +2 -1
- package/hooks/useDispatch.js +1 -0
- package/hooks/useFile.d.ts +51 -2
- package/hooks/useForm.d.ts +0 -1
- package/hooks/useForm.js +0 -1
- package/hooks/useLayout.js +1 -6
- package/hooks/useList.d.ts +13 -3
- package/hooks/useList.js +6 -8
- package/hooks/useTheme.d.ts +2 -0
- package/hooks/useTheme.js +8 -0
- package/index.d.ts +29 -15
- package/package.json +11 -6
- package/providers/ComponentsProvider.d.ts +4 -2
- package/providers/ThemeProvider.d.ts +14 -0
- package/providers/ThemeProvider.js +62 -0
- package/reducers/list.d.ts +1 -0
- package/reducers/list.js +4 -1
- package/reducers/router.d.ts +0 -1
- package/reducers/router.js +2 -2
- package/ui/content/Accordion/Accordion.d.ts +90 -0
- package/ui/content/{Collapse/Collapse.js → Accordion/Accordion.js} +18 -22
- package/ui/content/Accordion/AccordionItem.d.ts +7 -0
- package/ui/content/Accordion/AccordionItem.js +25 -0
- package/ui/content/Accordion/index.d.ts +3 -0
- package/ui/content/Accordion/index.js +10 -0
- package/ui/content/Alert/Alert.d.ts +29 -10
- package/ui/content/Avatar/Avatar.d.ts +27 -25
- package/ui/content/Avatar/AvatarGroup.d.ts +3 -3
- package/ui/content/Badge/Badge.d.ts +29 -16
- package/ui/content/Badge/Badge.js +1 -1
- package/ui/content/Calendar/Calendar.d.ts +15 -11
- package/ui/content/Calendar/Calendar.js +3 -1
- package/ui/content/Card/Card.d.ts +75 -45
- package/ui/content/Card/Card.js +0 -5
- package/ui/content/CopyToClipboard/CopyToClipboard.d.ts +68 -8
- package/ui/content/CopyToClipboard/CopyToClipboard.js +26 -61
- package/ui/content/Detail/Detail.d.ts +16 -11
- package/ui/content/Detail/DetailItem.d.ts +1 -1
- package/ui/content/DropDown/DropDown.d.ts +21 -9
- package/ui/content/DropDown/DropDown.js +14 -2
- package/ui/content/Icon/Icon.d.ts +13 -7
- package/ui/content/Icon/Icon.js +4 -1
- package/ui/content/Menu/Menu.d.ts +56 -0
- package/ui/content/Menu/Menu.js +23 -0
- package/ui/content/Menu/index.d.ts +2 -0
- package/ui/{list/LayoutNames/demo/basic.js → content/Menu/index.js} +2 -7
- package/ui/content/Slider/Slider.d.ts +37 -0
- package/ui/content/Slider/Slider.js +19 -0
- package/ui/content/Slider/index.d.ts +2 -0
- package/ui/content/Slider/index.js +7 -0
- package/ui/content/index.d.ts +7 -2
- package/ui/content/index.js +15 -4
- package/ui/crud/Crud/Crud.d.ts +132 -3
- package/ui/crud/Crud/Crud.js +0 -4
- package/ui/crud/Crud/CrudContent.js +0 -2
- package/ui/crud/index.d.ts +0 -1
- package/ui/form/AutoCompleteField/AutoCompleteField.d.ts +26 -6
- package/ui/form/AutoCompleteField/AutoCompleteField.js +13 -2
- package/ui/form/BlankField/BlankField.d.ts +19 -1
- package/ui/form/Button/Button.d.ts +19 -33
- package/ui/form/Button/Button.js +5 -14
- package/ui/form/CheckboxField/CheckboxField.d.ts +6 -9
- package/ui/form/CheckboxField/CheckboxField.js +36 -6
- package/ui/form/CheckboxListField/CheckboxListField.d.ts +10 -10
- package/ui/form/CheckboxListField/CheckboxListField.js +32 -7
- package/ui/form/DateField/DateField.d.ts +20 -15
- package/ui/form/DateField/DateField.js +7 -2
- package/ui/form/DateField/useDateInputState.js +1 -1
- package/ui/form/DateRangeField/DateRangeField.d.ts +12 -21
- package/ui/form/DateRangeField/DateRangeField.js +3 -2
- package/ui/form/DateTimeField/DateTimeField.d.ts +9 -15
- package/ui/form/DateTimeField/DateTimeField.js +4 -2
- package/ui/form/DateTimeRangeField/DateTimeRangeField.d.ts +7 -21
- package/ui/form/DateTimeRangeField/DateTimeRangeField.js +3 -2
- package/ui/form/DropDownField/DropDownField.d.ts +94 -23
- package/ui/form/DropDownField/DropDownField.js +113 -8
- package/ui/form/Field/Field.d.ts +3 -2
- package/ui/form/Field/fieldWrapper.d.ts +29 -9
- package/ui/form/Field/fieldWrapper.js +5 -5
- package/ui/form/FieldLayout/FieldLayout.d.ts +13 -20
- package/ui/form/FieldLayout/FieldLayout.js +1 -13
- package/ui/form/FieldList/FieldList.d.ts +11 -20
- package/ui/form/FieldList/FieldList.js +2 -3
- package/ui/form/FieldSet/FieldSet.d.ts +1 -1
- package/ui/form/FieldSet/FieldSet.js +2 -4
- package/ui/form/FileField/FileField.d.ts +49 -34
- package/ui/form/FileField/FileField.js +19 -10
- package/ui/form/Form/Form.d.ts +31 -38
- package/ui/form/Form/Form.js +8 -13
- package/ui/form/HtmlField/HtmlField.d.ts +2 -11
- package/ui/form/ImageField/ImageField.d.ts +15 -14
- package/ui/form/ImageField/ImageField.js +4 -0
- package/ui/form/InputField/InputField.d.ts +51 -49
- package/ui/form/InputField/InputField.js +51 -16
- package/ui/form/MaskField/MaskField.d.ts +10 -0
- package/ui/form/MaskField/MaskField.js +34 -0
- package/ui/form/MaskField/index.d.ts +2 -0
- package/ui/form/MaskField/index.js +7 -0
- package/ui/form/NavField/NavField.d.ts +6 -3
- package/ui/form/NumberField/NumberField.d.ts +7 -8
- package/ui/form/NumberField/NumberField.js +1 -6
- package/ui/form/PasswordField/PasswordField.d.ts +15 -12
- package/ui/form/PasswordField/PasswordField.js +6 -5
- package/ui/form/RadioField/RadioField.d.ts +31 -0
- package/{hoc/http.js → ui/form/RadioField/RadioField.js} +21 -13
- package/ui/form/RadioField/index.d.ts +2 -0
- package/ui/form/RadioField/index.js +7 -0
- package/ui/form/RadioListField/RadioListField.d.ts +10 -9
- package/ui/form/RadioListField/RadioListField.js +32 -2
- package/ui/form/RateField/RateField.d.ts +6 -9
- package/ui/form/RateField/RateField.js +2 -1
- package/ui/form/RateField/demo/errors.js +1 -1
- package/ui/form/ReCaptchaField/ReCaptchaField.d.ts +65 -4
- package/ui/form/ReCaptchaField/ReCaptchaField.js +22 -1
- package/ui/form/SliderField/SliderField.d.ts +3 -12
- package/ui/form/SliderField/SliderField.js +1 -1
- package/ui/form/SwitcherField/SwitcherField.d.ts +21 -15
- package/ui/form/SwitcherField/SwitcherField.js +34 -4
- package/ui/form/SwitcherField/demo/errors.js +1 -1
- package/ui/form/TextField/TextField.d.ts +7 -26
- package/ui/form/TextField/TextField.js +4 -7
- package/ui/form/TimeField/TimeField.d.ts +2 -16
- package/ui/form/TimeField/TimeField.js +3 -2
- package/ui/form/TimeField/demo/errors.js +1 -1
- package/ui/form/TimeRangeField/TimeRangeField.d.ts +58 -0
- package/ui/form/TimeRangeField/TimeRangeField.js +85 -0
- package/ui/form/TimeRangeField/index.d.ts +2 -0
- package/ui/form/TimeRangeField/index.js +7 -0
- package/ui/form/index.d.ts +37 -1
- package/ui/form/index.js +37 -1
- package/ui/format/BooleanFormatter/BooleanFormatter.d.ts +13 -0
- package/ui/format/DateFormatter/DateFormatter.d.ts +11 -1
- package/ui/format/DateTimeFormatter/DateTimeFormatter.d.ts +11 -1
- package/ui/format/EnumFormatter/EnumFormatter.d.ts +10 -0
- package/ui/format/FileSize/FileSize.d.ts +7 -2
- package/ui/format/FileSize/FileSize.js +1 -1
- package/ui/format/Format/Format.d.ts +6 -0
- package/ui/format/MoneyFormatter/MoneyFormatter.d.ts +9 -1
- package/ui/format/MoneyFormatter/MoneyFormatter.js +3 -2
- package/ui/layout/Header/Header.d.ts +13 -7
- package/ui/layout/Loader/Loader.d.ts +15 -1
- package/ui/layout/Meta/Meta.js +3 -3
- package/ui/layout/Notifications/Notifications.d.ts +30 -1
- package/ui/layout/Notifications/Notifications.js +0 -2
- package/ui/layout/Portal.d.ts +1 -1
- package/ui/layout/ProgressBar/ProgressBar.js +8 -4
- package/ui/layout/Skeleton/Skeleton.d.ts +25 -2
- package/ui/layout/Tooltip/Tooltip.d.ts +29 -5
- package/ui/layout/Tooltip/Tooltip.js +3 -0
- package/ui/layout/Tooltip/calculate.d.ts +3 -3
- package/ui/layout/Tooltip/calculate.js +4 -1
- package/ui/list/CheckboxColumn/CheckboxColumn.d.ts +3 -2
- package/ui/list/CheckboxColumn/CheckboxColumn.js +4 -1
- package/ui/list/ControlsColumn/ControlsColumn.d.ts +3 -4
- package/ui/list/Empty/Empty.d.ts +1 -10
- package/ui/list/Empty/Empty.js +2 -2
- package/ui/list/FlexGrid/FlexGrid.d.ts +85 -0
- package/ui/list/FlexGrid/FlexGrid.js +51 -0
- package/ui/list/FlexGrid/index.d.ts +2 -0
- package/ui/list/FlexGrid/index.js +7 -0
- package/ui/list/Grid/Grid.d.ts +69 -3
- package/ui/list/Grid/Grid.js +12 -3
- package/ui/list/List/List.d.ts +1 -0
- package/ui/list/List/List.js +1 -0
- package/ui/list/Pagination/Pagination.d.ts +18 -5
- package/ui/list/Pagination/Pagination.js +15 -7
- package/ui/list/PaginationSize/PaginationSize.d.ts +10 -12
- package/ui/list/PaginationSize/PaginationSize.js +10 -9
- package/ui/list/SearchForm/SearchForm.d.ts +3 -0
- package/ui/list/SearchForm/demo/basic.js +5 -2
- package/ui/list/Steps/Steps.d.ts +6 -3
- package/ui/list/Steps/Steps.js +11 -5
- package/ui/modal/Modal/Modal.d.ts +5 -5
- package/ui/modal/Modal/Modal.js +1 -1
- package/ui/modal/ModalPortal/ModalPortal.d.ts +3 -0
- package/ui/modal/TwoFactorModal/TwoFactorModal.d.ts +10 -2
- package/ui/nav/Breadcrumbs/Breadcrumbs.d.ts +11 -3
- package/ui/nav/ButtonGroup/ButtonGroup.d.ts +42 -0
- package/ui/nav/ButtonGroup/ButtonGroup.js +59 -0
- package/ui/nav/ButtonGroup/index.d.ts +2 -0
- package/ui/nav/ButtonGroup/index.js +7 -0
- package/ui/nav/Controls/Controls.d.ts +3 -3
- package/ui/nav/Controls/Controls.js +6 -5
- package/ui/nav/Link/Link.js +1 -1
- package/ui/nav/Nav/Nav.d.ts +3 -2
- package/ui/nav/Nav/Nav.js +3 -2
- package/ui/nav/Router/Router.d.ts +0 -10
- package/ui/nav/Router/Router.js +9 -77
- package/ui/nav/Router/helpers.d.ts +4 -0
- package/ui/nav/Router/helpers.js +81 -0
- package/ui/nav/Tree/Tree.d.ts +2 -2
- package/ui/nav/index.d.ts +2 -1
- package/ui/nav/index.js +3 -1
- package/ui/typography/Text/Text.d.ts +33 -0
- package/ui/{content/Collapse/CollapseItem.js → typography/Text/Text.js} +5 -5
- package/ui/typography/Text/index.d.ts +2 -0
- package/ui/typography/Text/index.js +7 -0
- package/ui/typography/Title/Title.d.ts +33 -0
- package/ui/typography/Title/Title.js +22 -0
- package/ui/typography/Title/index.d.ts +2 -0
- package/ui/typography/Title/index.js +7 -0
- package/ui/typography/index.d.ts +3 -0
- package/ui/typography/index.js +10 -0
- package/utils/form.d.ts +2 -9
- package/utils/form.js +1 -12
- package/hoc/application.d.ts +0 -8
- package/hoc/application.js +0 -50
- package/hoc/bem.d.ts +0 -14
- package/hoc/bem.js +0 -42
- package/hoc/components.d.ts +0 -11
- package/hoc/components.js +0 -62
- package/hoc/connect.d.ts +0 -6
- package/hoc/connect.js +0 -3
- package/hoc/fetch.d.ts +0 -13
- package/hoc/fetch.js +0 -60
- package/hoc/file.d.ts +0 -28
- package/hoc/file.js +0 -45
- package/hoc/http.d.ts +0 -7
- package/hoc/index.d.ts +0 -8
- package/hoc/index.js +0 -20
- package/hoc/layout.d.ts +0 -30
- package/hoc/layout.js +0 -48
- package/ui/content/Card/demo/basic.d.ts +0 -8
- package/ui/content/Card/demo/basic.js +0 -39
- package/ui/content/Card/demo/border color.d.ts +0 -3
- package/ui/content/Card/demo/border color.js +0 -52
- package/ui/content/Card/demo/color.d.ts +0 -3
- package/ui/content/Card/demo/color.js +0 -52
- package/ui/content/Card/demo/header.d.ts +0 -3
- package/ui/content/Card/demo/header.js +0 -47
- package/ui/content/Card/demo/hover.d.ts +0 -3
- package/ui/content/Card/demo/hover.js +0 -42
- package/ui/content/Card/demo/link.d.ts +0 -3
- package/ui/content/Card/demo/link.js +0 -43
- package/ui/content/Card/demo/orientation.d.ts +0 -3
- package/ui/content/Card/demo/orientation.js +0 -46
- package/ui/content/Collapse/Collapse.d.ts +0 -63
- package/ui/content/Collapse/CollapseItem.d.ts +0 -67
- package/ui/content/Collapse/demo/accordion.d.ts +0 -8
- package/ui/content/Collapse/demo/accordion.js +0 -41
- package/ui/content/Collapse/demo/basic.d.ts +0 -8
- package/ui/content/Collapse/demo/basic.js +0 -41
- package/ui/content/Collapse/demo/borderless.d.ts +0 -8
- package/ui/content/Collapse/demo/borderless.js +0 -41
- package/ui/content/Collapse/demo/disable.d.ts +0 -8
- package/ui/content/Collapse/demo/disable.js +0 -41
- package/ui/content/Collapse/demo/icon position.d.ts +0 -8
- package/ui/content/Collapse/demo/icon position.js +0 -41
- package/ui/content/Collapse/demo/icon.d.ts +0 -8
- package/ui/content/Collapse/demo/icon.js +0 -57
- package/ui/content/Collapse/demo/onChange.d.ts +0 -8
- package/ui/content/Collapse/demo/onChange.js +0 -51
- package/ui/content/Collapse/demo/show icon.d.ts +0 -8
- package/ui/content/Collapse/demo/show icon.js +0 -41
- package/ui/content/Collapse/index.d.ts +0 -8
- package/ui/content/Collapse/index.js +0 -14
- package/ui/content/Detail/demo/basic.d.ts +0 -8
- package/ui/content/Detail/demo/basic.js +0 -60
- package/ui/content/Detail/demo/colors.d.ts +0 -3
- package/ui/content/Detail/demo/colors.js +0 -44
- package/ui/content/Detail/demo/controls.d.ts +0 -8
- package/ui/content/Detail/demo/controls.js +0 -60
- package/ui/content/Detail/demo/layout.d.ts +0 -8
- package/ui/content/Detail/demo/layout.js +0 -60
- package/ui/content/Detail/demo/responsive.d.ts +0 -8
- package/ui/content/Detail/demo/responsive.js +0 -75
- package/ui/content/Detail/demo/sizes.d.ts +0 -8
- package/ui/content/Detail/demo/sizes.js +0 -65
- package/ui/content/Icon/demo/icon.d.ts +0 -3
- package/ui/content/Icon/demo/icon.js +0 -32
- package/ui/crud/Crud/demo/default.d.ts +0 -8
- package/ui/crud/Crud/demo/default.js +0 -76
- package/ui/form/AutoCompleteField/demo/basic.d.ts +0 -12
- package/ui/form/AutoCompleteField/demo/basic.js +0 -52
- package/ui/form/AutoCompleteField/demo/disabled.d.ts +0 -8
- package/ui/form/AutoCompleteField/demo/disabled.js +0 -38
- package/ui/form/AutoCompleteField/demo/errors.d.ts +0 -8
- package/ui/form/AutoCompleteField/demo/errors.js +0 -38
- package/ui/form/AutoCompleteField/demo/placeholder.d.ts +0 -8
- package/ui/form/AutoCompleteField/demo/placeholder.js +0 -38
- package/ui/form/AutoCompleteField/demo/required.d.ts +0 -8
- package/ui/form/AutoCompleteField/demo/required.js +0 -38
- package/ui/form/AutoCompleteField/demo/sizes.d.ts +0 -3
- package/ui/form/AutoCompleteField/demo/sizes.js +0 -43
- package/ui/form/BlankField/demo/basic.d.ts +0 -12
- package/ui/form/BlankField/demo/basic.js +0 -55
- package/ui/form/Button/demo/badge.d.ts +0 -8
- package/ui/form/Button/demo/badge.js +0 -37
- package/ui/form/Button/demo/basic.d.ts +0 -8
- package/ui/form/Button/demo/basic.js +0 -37
- package/ui/form/Button/demo/block.d.ts +0 -8
- package/ui/form/Button/demo/block.js +0 -37
- package/ui/form/Button/demo/colors.d.ts +0 -8
- package/ui/form/Button/demo/colors.js +0 -49
- package/ui/form/Button/demo/confirm.d.ts +0 -8
- package/ui/form/Button/demo/confirm.js +0 -37
- package/ui/form/Button/demo/disabled.d.ts +0 -8
- package/ui/form/Button/demo/disabled.js +0 -37
- package/ui/form/Button/demo/hint.d.ts +0 -8
- package/ui/form/Button/demo/hint.js +0 -37
- package/ui/form/Button/demo/icon.d.ts +0 -8
- package/ui/form/Button/demo/icon.js +0 -37
- package/ui/form/Button/demo/link.d.ts +0 -8
- package/ui/form/Button/demo/link.js +0 -37
- package/ui/form/Button/demo/sizes.d.ts +0 -3
- package/ui/form/Button/demo/sizes.js +0 -41
- package/ui/form/Button/demo/tags.d.ts +0 -8
- package/ui/form/Button/demo/tags.js +0 -38
- package/ui/form/CheckboxField/demo/basic.d.ts +0 -8
- package/ui/form/CheckboxField/demo/basic.js +0 -37
- package/ui/form/CheckboxField/demo/disabled.d.ts +0 -8
- package/ui/form/CheckboxField/demo/disabled.js +0 -37
- package/ui/form/CheckboxField/demo/errors.d.ts +0 -8
- package/ui/form/CheckboxField/demo/errors.js +0 -37
- package/ui/form/CheckboxField/demo/required.d.ts +0 -8
- package/ui/form/CheckboxField/demo/required.js +0 -37
- package/ui/form/CheckboxListField/demo/basic.d.ts +0 -9
- package/ui/form/CheckboxListField/demo/basic.js +0 -43
- package/ui/form/CheckboxListField/demo/disabled.d.ts +0 -8
- package/ui/form/CheckboxListField/demo/disabled.js +0 -38
- package/ui/form/CheckboxListField/demo/errors.d.ts +0 -8
- package/ui/form/CheckboxListField/demo/errors.js +0 -38
- package/ui/form/CheckboxListField/demo/required.d.ts +0 -8
- package/ui/form/CheckboxListField/demo/required.js +0 -38
- package/ui/form/DateField/demo/basic.d.ts +0 -8
- package/ui/form/DateField/demo/basic.js +0 -37
- package/ui/form/DateField/demo/disabled.d.ts +0 -8
- package/ui/form/DateField/demo/disabled.js +0 -37
- package/ui/form/DateField/demo/errors.d.ts +0 -8
- package/ui/form/DateField/demo/errors.js +0 -37
- package/ui/form/DateField/demo/icon.d.ts +0 -8
- package/ui/form/DateField/demo/icon.js +0 -39
- package/ui/form/DateField/demo/placeholder.d.ts +0 -8
- package/ui/form/DateField/demo/placeholder.js +0 -37
- package/ui/form/DateField/demo/required.d.ts +0 -8
- package/ui/form/DateField/demo/required.js +0 -37
- package/ui/form/DateField/demo/sizes.d.ts +0 -8
- package/ui/form/DateField/demo/sizes.js +0 -43
- package/ui/form/DateRangeField/demo/basic.d.ts +0 -8
- package/ui/form/DateRangeField/demo/basic.js +0 -37
- package/ui/form/DateRangeField/demo/disabled.d.ts +0 -8
- package/ui/form/DateRangeField/demo/disabled.js +0 -37
- package/ui/form/DateRangeField/demo/errors.d.ts +0 -8
- package/ui/form/DateRangeField/demo/errors.js +0 -37
- package/ui/form/DateRangeField/demo/icon.d.ts +0 -8
- package/ui/form/DateRangeField/demo/icon.js +0 -39
- package/ui/form/DateRangeField/demo/placeholder.d.ts +0 -8
- package/ui/form/DateRangeField/demo/placeholder.js +0 -37
- package/ui/form/DateRangeField/demo/required.d.ts +0 -8
- package/ui/form/DateRangeField/demo/required.js +0 -37
- package/ui/form/DateTimeField/demo/basic.d.ts +0 -8
- package/ui/form/DateTimeField/demo/basic.js +0 -37
- package/ui/form/DateTimeField/demo/disabled.d.ts +0 -8
- package/ui/form/DateTimeField/demo/disabled.js +0 -38
- package/ui/form/DateTimeField/demo/errors.d.ts +0 -8
- package/ui/form/DateTimeField/demo/errors.js +0 -37
- package/ui/form/DateTimeField/demo/icon.d.ts +0 -8
- package/ui/form/DateTimeField/demo/icon.js +0 -39
- package/ui/form/DateTimeField/demo/placeholder.d.ts +0 -8
- package/ui/form/DateTimeField/demo/placeholder.js +0 -37
- package/ui/form/DateTimeField/demo/required.d.ts +0 -8
- package/ui/form/DateTimeField/demo/required.js +0 -37
- package/ui/form/DateTimeField/demo/showRemove.d.ts +0 -8
- package/ui/form/DateTimeField/demo/showRemove.js +0 -36
- package/ui/form/DateTimeRangeField/demo/basic.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/basic.js +0 -36
- package/ui/form/DateTimeRangeField/demo/disabled.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/disabled.js +0 -36
- package/ui/form/DateTimeRangeField/demo/errors.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/errors.js +0 -37
- package/ui/form/DateTimeRangeField/demo/icon.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/icon.js +0 -36
- package/ui/form/DateTimeRangeField/demo/placeholder.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/placeholder.js +0 -37
- package/ui/form/DateTimeRangeField/demo/required.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/required.js +0 -37
- package/ui/form/DateTimeRangeField/demo/showRemove.d.ts +0 -8
- package/ui/form/DateTimeRangeField/demo/showRemove.js +0 -36
- package/ui/form/DropDownField/demo/auto-complete.d.ts +0 -8
- package/ui/form/DropDownField/demo/auto-complete.js +0 -38
- package/ui/form/DropDownField/demo/basic.d.ts +0 -12
- package/ui/form/DropDownField/demo/basic.js +0 -56
- package/ui/form/DropDownField/demo/disabled.d.ts +0 -8
- package/ui/form/DropDownField/demo/disabled.js +0 -38
- package/ui/form/DropDownField/demo/errors.d.ts +0 -8
- package/ui/form/DropDownField/demo/errors.js +0 -38
- package/ui/form/DropDownField/demo/multiple.d.ts +0 -8
- package/ui/form/DropDownField/demo/multiple.js +0 -38
- package/ui/form/DropDownField/demo/no-border.d.ts +0 -8
- package/ui/form/DropDownField/demo/no-border.js +0 -38
- package/ui/form/DropDownField/demo/placeholder.d.ts +0 -8
- package/ui/form/DropDownField/demo/placeholder.js +0 -38
- package/ui/form/DropDownField/demo/required.d.ts +0 -8
- package/ui/form/DropDownField/demo/required.js +0 -38
- package/ui/form/DropDownField/demo/show-reset.d.ts +0 -8
- package/ui/form/DropDownField/demo/show-reset.js +0 -38
- package/ui/form/DropDownField/demo/size.d.ts +0 -8
- package/ui/form/DropDownField/demo/size.js +0 -45
- package/ui/form/Field/demo/basic.d.ts +0 -8
- package/ui/form/Field/demo/basic.js +0 -37
- package/ui/form/Field/demo/component.d.ts +0 -8
- package/ui/form/Field/demo/component.js +0 -38
- package/ui/form/Field/demo/model.d.ts +0 -8
- package/ui/form/Field/demo/model.js +0 -48
- package/ui/form/FieldLayout/demo/errors.d.ts +0 -8
- package/ui/form/FieldLayout/demo/errors.js +0 -38
- package/ui/form/FieldLayout/demo/layouts.d.ts +0 -8
- package/ui/form/FieldLayout/demo/layouts.js +0 -43
- package/ui/form/FieldLayout/demo/required.d.ts +0 -8
- package/ui/form/FieldLayout/demo/required.js +0 -38
- package/ui/form/FieldList/demo/basic.d.ts +0 -8
- package/ui/form/FieldList/demo/basic.js +0 -62
- package/ui/form/FieldList/demo/disabled.d.ts +0 -8
- package/ui/form/FieldList/demo/disabled.js +0 -62
- package/ui/form/FieldSet/demo/basic.d.ts +0 -8
- package/ui/form/FieldSet/demo/basic.js +0 -53
- package/ui/form/FileField/demo/basic.d.ts +0 -8
- package/ui/form/FileField/demo/basic.js +0 -37
- package/ui/form/Form/demo/basic.d.ts +0 -8
- package/ui/form/Form/demo/basic.js +0 -62
- package/ui/form/Form/demo/border.d.ts +0 -8
- package/ui/form/Form/demo/border.js +0 -62
- package/ui/form/Form/demo/horizontal.d.ts +0 -8
- package/ui/form/Form/demo/horizontal.js +0 -55
- package/ui/form/Form/demo/inline.d.ts +0 -8
- package/ui/form/Form/demo/inline.js +0 -53
- package/ui/form/HtmlField/demo/basic.d.ts +0 -8
- package/ui/form/HtmlField/demo/basic.js +0 -37
- package/ui/form/InputField/demo/addons.d.ts +0 -8
- package/ui/form/InputField/demo/addons.js +0 -37
- package/ui/form/InputField/demo/basic.d.ts +0 -8
- package/ui/form/InputField/demo/basic.js +0 -36
- package/ui/form/InputField/demo/disabled.d.ts +0 -8
- package/ui/form/InputField/demo/disabled.js +0 -36
- package/ui/form/InputField/demo/errors.d.ts +0 -8
- package/ui/form/InputField/demo/errors.js +0 -37
- package/ui/form/InputField/demo/mask.d.ts +0 -8
- package/ui/form/InputField/demo/mask.js +0 -39
- package/ui/form/InputField/demo/placeholder.d.ts +0 -8
- package/ui/form/InputField/demo/placeholder.js +0 -37
- package/ui/form/InputField/demo/required.d.ts +0 -8
- package/ui/form/InputField/demo/required.js +0 -37
- package/ui/form/InputField/demo/sizes.d.ts +0 -3
- package/ui/form/InputField/demo/sizes.js +0 -42
- package/ui/form/InputField/demo/textAddons.d.ts +0 -8
- package/ui/form/InputField/demo/textAddons.js +0 -37
- package/ui/form/InputField/demo/types.d.ts +0 -3
- package/ui/form/InputField/demo/types.js +0 -44
- package/ui/form/NavField/demo/basic.d.ts +0 -12
- package/ui/form/NavField/demo/basic.js +0 -56
- package/ui/form/NavField/demo/disabled.d.ts +0 -8
- package/ui/form/NavField/demo/disabled.js +0 -38
- package/ui/form/NavField/demo/errors.d.ts +0 -8
- package/ui/form/NavField/demo/errors.js +0 -38
- package/ui/form/NavField/demo/layouts.d.ts +0 -12
- package/ui/form/NavField/demo/layouts.js +0 -61
- package/ui/form/NavField/demo/required.d.ts +0 -8
- package/ui/form/NavField/demo/required.js +0 -38
- package/ui/form/NumberField/demo/basic.d.ts +0 -8
- package/ui/form/NumberField/demo/basic.js +0 -37
- package/ui/form/NumberField/demo/disabled.d.ts +0 -8
- package/ui/form/NumberField/demo/disabled.js +0 -37
- package/ui/form/NumberField/demo/errors.d.ts +0 -8
- package/ui/form/NumberField/demo/errors.js +0 -37
- package/ui/form/NumberField/demo/placeholder.d.ts +0 -8
- package/ui/form/NumberField/demo/placeholder.js +0 -37
- package/ui/form/NumberField/demo/required.d.ts +0 -8
- package/ui/form/NumberField/demo/required.js +0 -37
- package/ui/form/NumberField/demo/sizes.d.ts +0 -8
- package/ui/form/NumberField/demo/sizes.js +0 -42
- package/ui/form/PasswordField/demo/basic.d.ts +0 -8
- package/ui/form/PasswordField/demo/basic.js +0 -37
- package/ui/form/PasswordField/demo/disabled.d.ts +0 -8
- package/ui/form/PasswordField/demo/disabled.js +0 -37
- package/ui/form/PasswordField/demo/errors.d.ts +0 -8
- package/ui/form/PasswordField/demo/errors.js +0 -37
- package/ui/form/PasswordField/demo/placeholder.d.ts +0 -8
- package/ui/form/PasswordField/demo/placeholder.js +0 -37
- package/ui/form/PasswordField/demo/required.d.ts +0 -8
- package/ui/form/PasswordField/demo/required.js +0 -37
- package/ui/form/PasswordField/demo/security.d.ts +0 -8
- package/ui/form/PasswordField/demo/security.js +0 -37
- package/ui/form/PasswordField/demo/sizes.d.ts +0 -8
- package/ui/form/PasswordField/demo/sizes.js +0 -42
- package/ui/form/RadioListField/demo/basic.d.ts +0 -12
- package/ui/form/RadioListField/demo/basic.js +0 -56
- package/ui/form/RadioListField/demo/disabled.d.ts +0 -8
- package/ui/form/RadioListField/demo/disabled.js +0 -38
- package/ui/form/RadioListField/demo/errors.d.ts +0 -8
- package/ui/form/RadioListField/demo/errors.js +0 -38
- package/ui/form/RadioListField/demo/required.d.ts +0 -8
- package/ui/form/RadioListField/demo/required.js +0 -38
- package/ui/form/ReCaptchaField/demo/basic.d.ts +0 -8
- package/ui/form/ReCaptchaField/demo/basic.js +0 -43
- package/ui/form/SliderField/demo/basic.d.ts +0 -8
- package/ui/form/SliderField/demo/basic.js +0 -37
- package/ui/form/SliderField/demo/disabled.d.ts +0 -8
- package/ui/form/SliderField/demo/disabled.js +0 -37
- package/ui/form/SliderField/demo/errors.d.ts +0 -8
- package/ui/form/SliderField/demo/errors.js +0 -37
- package/ui/form/SliderField/demo/marks.d.ts +0 -3
- package/ui/form/SliderField/demo/marks.js +0 -49
- package/ui/form/SliderField/demo/min-max.d.ts +0 -8
- package/ui/form/SliderField/demo/min-max.js +0 -37
- package/ui/form/SliderField/demo/onAfterChange.d.ts +0 -8
- package/ui/form/SliderField/demo/onAfterChange.js +0 -43
- package/ui/form/SliderField/demo/onChange.d.ts +0 -8
- package/ui/form/SliderField/demo/onChange.js +0 -43
- package/ui/form/SliderField/demo/range.d.ts +0 -8
- package/ui/form/SliderField/demo/range.js +0 -37
- package/ui/form/TextField/demo/basic.d.ts +0 -8
- package/ui/form/TextField/demo/basic.js +0 -37
- package/ui/form/TextField/demo/disabled.d.ts +0 -8
- package/ui/form/TextField/demo/disabled.js +0 -37
- package/ui/form/TextField/demo/errors.d.ts +0 -8
- package/ui/form/TextField/demo/errors.js +0 -37
- package/ui/form/TextField/demo/placeholder.d.ts +0 -8
- package/ui/form/TextField/demo/placeholder.js +0 -37
- package/ui/form/TextField/demo/required.d.ts +0 -8
- package/ui/form/TextField/demo/required.js +0 -37
- package/ui/form/TextField/demo/sizes.d.ts +0 -3
- package/ui/form/TextField/demo/sizes.js +0 -43
- package/ui/form/TextField/demo/submit.d.ts +0 -8
- package/ui/form/TextField/demo/submit.js +0 -37
- package/ui/format/DateFormatter/demo/basic.d.ts +0 -3
- package/ui/format/DateFormatter/demo/basic.js +0 -32
- package/ui/format/DateTimeFormatter/demo/basic.d.ts +0 -3
- package/ui/format/DateTimeFormatter/demo/basic.js +0 -32
- package/ui/layout/Notifications/demo/basic.d.ts +0 -8
- package/ui/layout/Notifications/demo/basic.js +0 -59
- package/ui/layout/Notifications/demo/position.d.ts +0 -3
- package/ui/layout/Notifications/demo/position.js +0 -51
- package/ui/layout/Notifications/demo/timeOut.d.ts +0 -3
- package/ui/layout/Notifications/demo/timeOut.js +0 -52
- package/ui/layout/Tooltip/demo/basic.d.ts +0 -8
- package/ui/layout/Tooltip/demo/basic.js +0 -56
- package/ui/list/CheckboxColumn/demo/basic.d.ts +0 -8
- package/ui/list/CheckboxColumn/demo/basic.js +0 -51
- package/ui/list/ControlsColumn/demo/basic.d.ts +0 -8
- package/ui/list/ControlsColumn/demo/basic.js +0 -49
- package/ui/list/Empty/demo/basic.d.ts +0 -8
- package/ui/list/Empty/demo/basic.js +0 -37
- package/ui/list/Empty/demo/custom-text.d.ts +0 -8
- package/ui/list/Empty/demo/custom-text.js +0 -37
- package/ui/list/Grid/demo/basic.d.ts +0 -18
- package/ui/list/Grid/demo/basic.js +0 -72
- package/ui/list/Grid/demo/controls.d.ts +0 -8
- package/ui/list/Grid/demo/controls.js +0 -44
- package/ui/list/Grid/demo/empty.d.ts +0 -8
- package/ui/list/Grid/demo/empty.js +0 -38
- package/ui/list/Grid/demo/formatter.d.ts +0 -8
- package/ui/list/Grid/demo/formatter.js +0 -67
- package/ui/list/Grid/demo/indexing.d.ts +0 -8
- package/ui/list/Grid/demo/indexing.js +0 -52
- package/ui/list/Grid/demo/inner-search-form.d.ts +0 -16
- package/ui/list/Grid/demo/inner-search-form.js +0 -60
- package/ui/list/Grid/demo/load-more.d.ts +0 -8
- package/ui/list/Grid/demo/load-more.js +0 -43
- package/ui/list/Grid/demo/pagination.d.ts +0 -8
- package/ui/list/Grid/demo/pagination.js +0 -41
- package/ui/list/Grid/demo/search-form.d.ts +0 -8
- package/ui/list/Grid/demo/search-form.js +0 -50
- package/ui/list/Grid/demo/sort.d.ts +0 -8
- package/ui/list/Grid/demo/sort.js +0 -48
- package/ui/list/Grid/demo/visible.d.ts +0 -8
- package/ui/list/Grid/demo/visible.js +0 -52
- package/ui/list/LayoutNames/demo/basic.d.ts +0 -7
- package/ui/list/List/demo/basic.d.ts +0 -12
- package/ui/list/List/demo/basic.js +0 -61
- package/ui/list/List/demo/condition.d.ts +0 -8
- package/ui/list/List/demo/condition.js +0 -90
- package/ui/list/List/demo/empty.d.ts +0 -8
- package/ui/list/List/demo/empty.js +0 -36
- package/ui/list/List/demo/layout.d.ts +0 -8
- package/ui/list/List/demo/layout.js +0 -49
- package/ui/list/List/demo/load-more.d.ts +0 -8
- package/ui/list/List/demo/load-more.js +0 -45
- package/ui/list/List/demo/pagination.d.ts +0 -8
- package/ui/list/List/demo/pagination.js +0 -45
- package/ui/list/List/demo/search-form.d.ts +0 -30
- package/ui/list/List/demo/search-form.js +0 -107
- package/ui/list/List/demo/sort.d.ts +0 -17
- package/ui/list/List/demo/sort.js +0 -92
- package/ui/list/Pagination/demo/basic.d.ts +0 -8
- package/ui/list/Pagination/demo/basic.js +0 -45
- package/ui/list/Pagination/demo/load-more.d.ts +0 -8
- package/ui/list/Pagination/demo/load-more.js +0 -41
- package/ui/list/Pagination/demo/sizes.d.ts +0 -8
- package/ui/list/Pagination/demo/sizes.js +0 -48
- package/ui/list/PaginationSize/demo/basic.d.ts +0 -8
- package/ui/list/PaginationSize/demo/basic.js +0 -41
- package/ui/list/PaginationSize/demo/size.d.ts +0 -8
- package/ui/list/PaginationSize/demo/size.js +0 -49
- package/ui/modal/Modal/demo/basic.d.ts +0 -8
- package/ui/modal/Modal/demo/basic.js +0 -63
- package/ui/modal/Modal/demo/closeTimeout.d.ts +0 -8
- package/ui/modal/Modal/demo/closeTimeout.js +0 -64
- package/ui/modal/Modal/demo/closing.d.ts +0 -9
- package/ui/modal/Modal/demo/closing.js +0 -67
- package/ui/modal/Modal/demo/component.d.ts +0 -10
- package/ui/modal/Modal/demo/component.js +0 -55
- package/ui/modal/Modal/demo/controls.d.ts +0 -8
- package/ui/modal/Modal/demo/controls.js +0 -66
- package/ui/modal/Modal/demo/size.d.ts +0 -8
- package/ui/modal/Modal/demo/size.js +0 -70
- package/ui/nav/Breadcrumbs/demo/basic.d.ts +0 -8
- package/ui/nav/Breadcrumbs/demo/basic.js +0 -37
- package/ui/nav/Breadcrumbs/demo/items.d.ts +0 -8
- package/ui/nav/Breadcrumbs/demo/items.js +0 -42
- package/ui/nav/Breadcrumbs/demo/page-title.d.ts +0 -8
- package/ui/nav/Breadcrumbs/demo/page-title.js +0 -37
- package/ui/nav/Controls/demo/basic.d.ts +0 -12
- package/ui/nav/Controls/demo/basic.js +0 -59
- package/ui/nav/Link/demo/badge.d.ts +0 -8
- package/ui/nav/Link/demo/badge.js +0 -37
- package/ui/nav/Link/demo/basic.d.ts +0 -8
- package/ui/nav/Link/demo/basic.js +0 -37
- package/ui/nav/Link/demo/colors.d.ts +0 -8
- package/ui/nav/Link/demo/colors.js +0 -46
- package/ui/nav/Link/demo/confirm.d.ts +0 -8
- package/ui/nav/Link/demo/confirm.js +0 -37
- package/ui/nav/Link/demo/disabled.d.ts +0 -8
- package/ui/nav/Link/demo/disabled.js +0 -37
- package/ui/nav/Link/demo/hint.d.ts +0 -8
- package/ui/nav/Link/demo/hint.js +0 -37
- package/ui/nav/Link/demo/icon.d.ts +0 -8
- package/ui/nav/Link/demo/icon.js +0 -37
- package/ui/nav/Link/demo/sizes.d.ts +0 -8
- package/ui/nav/Link/demo/sizes.js +0 -41
- package/ui/nav/Nav/demo/basic.d.ts +0 -13
- package/ui/nav/Nav/demo/basic.js +0 -58
- package/ui/nav/Nav/demo/layout.d.ts +0 -8
- package/ui/nav/Nav/demo/layout.js +0 -56
- package/ui/nav/Router/ConnectedRouter.d.ts +0 -16
- package/ui/nav/Router/ConnectedRouter.js +0 -107
- package/ui/nav/Tree/demo/auto-open-levels.d.ts +0 -8
- package/ui/nav/Tree/demo/auto-open-levels.js +0 -38
- package/ui/nav/Tree/demo/basic.d.ts +0 -32
- package/ui/nav/Tree/demo/basic.js +0 -72
- package/ui/nav/Tree/demo/level.d.ts +0 -8
- package/ui/nav/Tree/demo/level.js +0 -38
- package/ui/nav/Tree/demo/routes.d.ts +0 -8
- package/ui/nav/Tree/demo/routes.js +0 -37
- package/ui/nav/Tree/demo/selected-item.d.ts +0 -8
- package/ui/nav/Tree/demo/selected-item.js +0 -38
package/ui/list/Steps/Steps.js
CHANGED
|
@@ -6,12 +6,15 @@ function Steps(props) {
|
|
|
6
6
|
var _a = (0, react_1.useState)(false), isChangeable = _a[0], setIsChangeable = _a[1];
|
|
7
7
|
(0, react_1.useEffect)(function () { return setIsChangeable(props.isChangeable); }, [props.isChangeable]);
|
|
8
8
|
function getStepStatus(index, stepItem) {
|
|
9
|
-
if (stepItem.isError)
|
|
9
|
+
if (stepItem.isError) {
|
|
10
10
|
return 'error';
|
|
11
|
-
|
|
11
|
+
}
|
|
12
|
+
if (props.currentStep < index) {
|
|
12
13
|
return 'wait';
|
|
13
|
-
|
|
14
|
+
}
|
|
15
|
+
if (props.currentStep === index) {
|
|
14
16
|
return 'active';
|
|
17
|
+
}
|
|
15
18
|
return 'finish';
|
|
16
19
|
}
|
|
17
20
|
return (0, hooks_1.useComponents)().ui.renderView('list.StepsView', {
|
|
@@ -23,8 +26,11 @@ function Steps(props) {
|
|
|
23
26
|
index: index + 1,
|
|
24
27
|
status: getStepStatus(index, stepItem),
|
|
25
28
|
disabled: !isChangeable,
|
|
26
|
-
onChange: function () {
|
|
27
|
-
|
|
29
|
+
onChange: function () {
|
|
30
|
+
if (isChangeable) {
|
|
31
|
+
props.onChange(index);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
28
34
|
}); })
|
|
29
35
|
});
|
|
30
36
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IButtonProps } from 'src/ui/form/Button/Button';
|
|
3
3
|
/**
|
|
4
4
|
* Modal
|
|
5
5
|
* Модальное окно
|
|
@@ -14,16 +14,16 @@ export interface IModalProps {
|
|
|
14
14
|
* Компонент, который отрендерится внутри Modal
|
|
15
15
|
* @example () => <InnerModalComponent />
|
|
16
16
|
*/
|
|
17
|
-
component?: () => JSX.Element;
|
|
17
|
+
component?: (props: React.ComponentProps<any>) => JSX.Element;
|
|
18
18
|
/**
|
|
19
19
|
* Свойства для внутреннего компонента
|
|
20
20
|
*/
|
|
21
21
|
componentProps?: any;
|
|
22
22
|
/**
|
|
23
|
-
* Коллекция
|
|
23
|
+
* Коллекция кнопок, которая отобразится в нижней секции Modal
|
|
24
24
|
* @example [{label: __(('Закрыть')), onClick: () => props.onClose()}]
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
buttons?: IButtonProps[];
|
|
27
27
|
/**
|
|
28
28
|
* Время, в течение которого будет происходить анимация закрытия Modal.
|
|
29
29
|
* Переопределяет отрезок времени, заданный в ModalPortal
|
package/ui/modal/Modal/Modal.js
CHANGED
|
@@ -49,7 +49,7 @@ function Modal(props) {
|
|
|
49
49
|
return (React.createElement(ModalView, __assign({}, props), (ContentComponent && (React.createElement(ContentComponent, __assign({}, props, props.componentProps)))) || (props.children)));
|
|
50
50
|
}
|
|
51
51
|
Modal.defaultProps = {
|
|
52
|
-
size: '
|
|
52
|
+
size: 'md',
|
|
53
53
|
shouldCloseOnEsc: true,
|
|
54
54
|
shouldCloseOnOverlayClick: true
|
|
55
55
|
};
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
interface ITwoFactorModalProps {
|
|
3
|
-
|
|
2
|
+
interface ITwoFactorModalProps extends IUiComponent {
|
|
3
|
+
/**
|
|
4
|
+
* Имя провайдера
|
|
5
|
+
*/
|
|
4
6
|
providerName: string;
|
|
7
|
+
/**
|
|
8
|
+
* Функция, которая вызывается при закрытии модального окна
|
|
9
|
+
*/
|
|
5
10
|
onClose?: any;
|
|
6
11
|
}
|
|
7
12
|
interface ITwoFactorModalPrivateProps extends ITwoFactorModalProps {
|
|
@@ -13,6 +18,9 @@ interface ITwoFactorModalPrivateProps extends ITwoFactorModalProps {
|
|
|
13
18
|
isConfirmed: string;
|
|
14
19
|
};
|
|
15
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Компонент TwoFactorModal отображает модальное окно для двухфакторной аутентификации.
|
|
23
|
+
**/
|
|
16
24
|
export interface ITwoFactorModalViewProps extends ITwoFactorModalPrivateProps {
|
|
17
25
|
description?: string;
|
|
18
26
|
formProps?: any;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { IRouteItem } from '../Router/Router';
|
|
3
3
|
/**
|
|
4
|
-
* Breadcrumbs
|
|
5
|
-
|
|
6
|
-
*/
|
|
4
|
+
* Компонент Breadcrumbs отображает хлебные крошки.
|
|
5
|
+
**/
|
|
7
6
|
export interface IBreadcrumbsProps {
|
|
8
7
|
/**
|
|
9
8
|
* Кастомный CSS-класс
|
|
@@ -27,6 +26,15 @@ export interface IBreadcrumbsProps {
|
|
|
27
26
|
* @example 'Каталог'
|
|
28
27
|
*/
|
|
29
28
|
pageTitle?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Показать иконку заменяющую первый роут
|
|
31
|
+
* @example true
|
|
32
|
+
*/
|
|
33
|
+
showIcon?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Кастомная иконка, заменяющая первый роут
|
|
36
|
+
*/
|
|
37
|
+
customIcon?: string | React.ReactElement;
|
|
30
38
|
/**
|
|
31
39
|
* Переопределение view React компонента для кастомизации отображения
|
|
32
40
|
* @example MyCustomView
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IButtonProps } from 'src/ui/form/Button/Button';
|
|
3
|
+
import { DataProviderItems } from '../../../hooks/useDataProvider';
|
|
4
|
+
/**
|
|
5
|
+
* Компонент ButtonGroup отображает группу кнопок.
|
|
6
|
+
**/
|
|
7
|
+
export interface IButtonGroupProps extends IUiComponent {
|
|
8
|
+
/**
|
|
9
|
+
* Элементы для группы кнопок
|
|
10
|
+
* @example ['button1', 'button2', 'button3']
|
|
11
|
+
*/
|
|
12
|
+
items: DataProviderItems;
|
|
13
|
+
/**
|
|
14
|
+
* Функция, которая будет вызываться при клике по кнопке
|
|
15
|
+
* @example setActiveTab
|
|
16
|
+
*/
|
|
17
|
+
onClick: (value: number | string | boolean) => void;
|
|
18
|
+
/**
|
|
19
|
+
* При указании в связке с onClick предоставляет возможность реализовать two-way binding
|
|
20
|
+
* @example 'button1'
|
|
21
|
+
*/
|
|
22
|
+
activeButton?: number | string;
|
|
23
|
+
/**
|
|
24
|
+
* Кнопка по умолчанию.
|
|
25
|
+
*/
|
|
26
|
+
defaultActiveButton?: number | string;
|
|
27
|
+
/**
|
|
28
|
+
* Общие свойства для всех кнопок группы
|
|
29
|
+
* @example {outline: true, color: 'secondary'}
|
|
30
|
+
*/
|
|
31
|
+
buttonProps?: IButtonProps;
|
|
32
|
+
}
|
|
33
|
+
export interface IButtonGroupViewProps extends Omit<IButtonGroupProps, 'items'> {
|
|
34
|
+
items: {
|
|
35
|
+
id: number | string | boolean;
|
|
36
|
+
label?: string;
|
|
37
|
+
[key: string]: unknown;
|
|
38
|
+
}[];
|
|
39
|
+
size: Size;
|
|
40
|
+
}
|
|
41
|
+
declare function ButtonGroup(props: IButtonGroupProps): JSX.Element;
|
|
42
|
+
export default ButtonGroup;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
exports.__esModule = true;
|
|
29
|
+
var react_1 = __importStar(require("react"));
|
|
30
|
+
var hooks_1 = require("../../../hooks");
|
|
31
|
+
var useDataProvider_1 = __importDefault(require("../../../hooks/useDataProvider"));
|
|
32
|
+
var DEFAULT_BUTTON_GROUP_SIZE = 'md';
|
|
33
|
+
function ButtonGroup(props) {
|
|
34
|
+
var _a, _b;
|
|
35
|
+
var components = (0, hooks_1.useComponents)();
|
|
36
|
+
var items = (0, useDataProvider_1["default"])({
|
|
37
|
+
items: props.items
|
|
38
|
+
}).items;
|
|
39
|
+
var _c = (0, react_1.useState)(props.activeButton || props.defaultActiveButton || ((_a = items[0]) === null || _a === void 0 ? void 0 : _a.id)), activeButton = _c[0], setActiveButton = _c[1];
|
|
40
|
+
react_1["default"].useEffect(function () {
|
|
41
|
+
if (props.activeButton) {
|
|
42
|
+
setActiveButton(props.activeButton);
|
|
43
|
+
}
|
|
44
|
+
}, [props.activeButton]);
|
|
45
|
+
var onClick = function (buttonId) {
|
|
46
|
+
setActiveButton(buttonId);
|
|
47
|
+
props.onClick(buttonId);
|
|
48
|
+
};
|
|
49
|
+
return components.ui.renderView(props.view || 'nav.ButtonGroupView', {
|
|
50
|
+
className: props.className,
|
|
51
|
+
style: props.style,
|
|
52
|
+
buttonProps: props.buttonProps,
|
|
53
|
+
size: ((_b = props.buttonProps) === null || _b === void 0 ? void 0 : _b.size) || DEFAULT_BUTTON_GROUP_SIZE,
|
|
54
|
+
activeButton: activeButton,
|
|
55
|
+
items: items,
|
|
56
|
+
onClick: onClick
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
exports["default"] = ButtonGroup;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
var ButtonGroup_1 = __importDefault(require("./ButtonGroup"));
|
|
7
|
+
exports["default"] = ButtonGroup_1["default"];
|
|
@@ -39,16 +39,16 @@ export interface IControlsProps {
|
|
|
39
39
|
* Переопределение view React компонента для кастомизации отображения
|
|
40
40
|
* @example MyCustomView
|
|
41
41
|
*/
|
|
42
|
-
view?:
|
|
42
|
+
view?: CustomView;
|
|
43
43
|
/**
|
|
44
44
|
* Дополнительный CSS-класс для элемента отображения
|
|
45
45
|
* @example MyCustomView
|
|
46
46
|
*/
|
|
47
|
-
className?:
|
|
47
|
+
className?: CssClassName;
|
|
48
48
|
[key: string]: any;
|
|
49
49
|
}
|
|
50
50
|
export interface IControlsViewProps extends IControlsProps {
|
|
51
|
-
className?:
|
|
51
|
+
className?: CssClassName;
|
|
52
52
|
items: (IControlItem & {
|
|
53
53
|
icon?: string;
|
|
54
54
|
label?: string | any;
|
|
@@ -11,18 +11,19 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
exports.__esModule = true;
|
|
14
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
14
15
|
var react_1 = require("react");
|
|
15
16
|
var hooks_1 = require("../../../hooks");
|
|
16
17
|
function Controls(props) {
|
|
17
18
|
var defaultItems = {
|
|
18
|
-
|
|
19
|
-
icon: '
|
|
19
|
+
back: {
|
|
20
|
+
icon: 'left_12x12',
|
|
20
21
|
label: __('К списку'),
|
|
21
22
|
color: 'secondary',
|
|
22
23
|
outline: true
|
|
23
24
|
},
|
|
24
25
|
create: {
|
|
25
|
-
icon: '
|
|
26
|
+
icon: 'add_square',
|
|
26
27
|
label: __('Добавить'),
|
|
27
28
|
color: 'success',
|
|
28
29
|
outline: true
|
|
@@ -34,13 +35,13 @@ function Controls(props) {
|
|
|
34
35
|
outline: true
|
|
35
36
|
},
|
|
36
37
|
update: {
|
|
37
|
-
icon: '
|
|
38
|
+
icon: 'edit',
|
|
38
39
|
label: __('Редактировать'),
|
|
39
40
|
color: 'secondary',
|
|
40
41
|
outline: true
|
|
41
42
|
},
|
|
42
43
|
"delete": {
|
|
43
|
-
icon: '
|
|
44
|
+
icon: 'cancel_ellips',
|
|
44
45
|
label: __('Удалить'),
|
|
45
46
|
confirm: __('Удалить запись?'),
|
|
46
47
|
color: 'danger',
|
package/ui/nav/Link/Link.js
CHANGED
|
@@ -40,6 +40,6 @@ exports.__esModule = true;
|
|
|
40
40
|
var React = __importStar(require("react"));
|
|
41
41
|
var Button_1 = __importDefault(require("../../form/Button"));
|
|
42
42
|
function Link(props) {
|
|
43
|
-
return (React.createElement(Button_1["default"], __assign({ tag: 'a', link: true }, props, { formId: false })));
|
|
43
|
+
return (React.createElement(Button_1["default"], __assign({ tag: 'a', link: true, color: 'link' }, props, { formId: false })));
|
|
44
44
|
}
|
|
45
45
|
exports["default"] = Link;
|
package/ui/nav/Nav/Nav.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export interface INavItem extends IButtonProps {
|
|
|
28
28
|
* Переопределение view React компонента для кастомизации отображения элемента
|
|
29
29
|
* @example MyCustomView
|
|
30
30
|
*/
|
|
31
|
-
view?:
|
|
31
|
+
view?: CustomView;
|
|
32
32
|
/**
|
|
33
33
|
* Видимость элемента
|
|
34
34
|
* @example true
|
|
@@ -74,7 +74,7 @@ export interface INavProps {
|
|
|
74
74
|
* Переопределение view React компонента для кастомизации отображения элемента
|
|
75
75
|
* @example MyCustomView
|
|
76
76
|
*/
|
|
77
|
-
view?:
|
|
77
|
+
view?: CustomView;
|
|
78
78
|
/**
|
|
79
79
|
* Обработчик, который вызывается при смене активного элемента навигации
|
|
80
80
|
* @param args
|
|
@@ -101,6 +101,7 @@ declare function Nav(props: INavProps): JSX.Element;
|
|
|
101
101
|
declare namespace Nav {
|
|
102
102
|
var defaultProps: {
|
|
103
103
|
layout: string;
|
|
104
|
+
size: string;
|
|
104
105
|
};
|
|
105
106
|
}
|
|
106
107
|
export default Nav;
|
package/ui/nav/Nav/Nav.js
CHANGED
|
@@ -74,7 +74,7 @@ function Nav(props) {
|
|
|
74
74
|
}
|
|
75
75
|
if ((0, isFunction_1["default"])(activeItem.content) || (0, isObject_1["default"])(activeItem.content)) {
|
|
76
76
|
var ContentComponent = activeItem.content;
|
|
77
|
-
return React.createElement(ContentComponent, __assign({}, activeItem, activeItem.contentProps));
|
|
77
|
+
return (React.createElement(ContentComponent, __assign({}, activeItem, activeItem.contentProps)));
|
|
78
78
|
}
|
|
79
79
|
return activeItem.content;
|
|
80
80
|
};
|
|
@@ -100,6 +100,7 @@ function Nav(props) {
|
|
|
100
100
|
return components.ui.renderView(props.view || defaultViewMap[props.layout], __assign(__assign({}, props), { items: items, onClick: onClick, disabled: props.disabled, children: renderContent() }));
|
|
101
101
|
}
|
|
102
102
|
Nav.defaultProps = {
|
|
103
|
-
layout: 'button'
|
|
103
|
+
layout: 'button',
|
|
104
|
+
size: 'md'
|
|
104
105
|
};
|
|
105
106
|
exports["default"] = Nav;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { IFetchConfig } from '../../../hooks/useFetch';
|
|
3
3
|
import { IListProps } from '../../list/List/List';
|
|
4
|
-
import { IFetchHocConfigFunc } from '../../../hoc/fetch';
|
|
5
4
|
export declare const ROUTER_ROLE_LOGIN = "login";
|
|
6
5
|
export declare const ROUTER_ROLE_MODAL = "modal";
|
|
7
6
|
export declare const ROUTER_ROLE_404 = "404";
|
|
@@ -86,13 +85,6 @@ export interface IRouteItem {
|
|
|
86
85
|
* @example ['user', 'admin']
|
|
87
86
|
*/
|
|
88
87
|
roles?: Array<string | null>;
|
|
89
|
-
/**
|
|
90
|
-
* Обработчик, который возвращает конфигурацию для осуществления HTTP-запроса. Запрос происходит каждый раз
|
|
91
|
-
* перед рендерингом страницы, чтобы получить для неё все необходимые данные
|
|
92
|
-
* @param {*} props
|
|
93
|
-
* @return {Object} Например, {url: '/api/v1/some-data', key: 'someData'}
|
|
94
|
-
*/
|
|
95
|
-
fetch?: IFetchHocConfigFunc;
|
|
96
88
|
/**
|
|
97
89
|
* Вложенные роуты
|
|
98
90
|
*/
|
|
@@ -146,8 +138,6 @@ export interface IRouterProps {
|
|
|
146
138
|
*/
|
|
147
139
|
children?: React.ReactNode;
|
|
148
140
|
}
|
|
149
|
-
export declare const walkRoutesRecursive: (item: any, defaultItem?: any, parentItem?: any) => any;
|
|
150
|
-
export declare const treeToList: (item: any, isRoot?: boolean) => any;
|
|
151
141
|
declare function Router(props: IRouterProps): JSX.Element;
|
|
152
142
|
declare namespace Router {
|
|
153
143
|
var defaultProps: {
|
package/ui/nav/Router/Router.js
CHANGED
|
@@ -37,93 +37,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
exports.
|
|
40
|
+
exports.ROUTER_ROLE_404 = exports.ROUTER_ROLE_MODAL = exports.ROUTER_ROLE_LOGIN = void 0;
|
|
41
41
|
var React = __importStar(require("react"));
|
|
42
42
|
var react_router_1 = require("react-router");
|
|
43
43
|
var react_router_dom_1 = require("react-router-dom");
|
|
44
44
|
var connected_react_router_1 = require("connected-react-router");
|
|
45
45
|
var get_1 = __importDefault(require("lodash-es/get"));
|
|
46
46
|
var isEqual_1 = __importDefault(require("lodash-es/isEqual"));
|
|
47
|
-
var isArray_1 = __importDefault(require("lodash-es/isArray"));
|
|
48
|
-
var isObject_1 = __importDefault(require("lodash-es/isObject"));
|
|
49
47
|
var react_1 = require("react");
|
|
50
48
|
var react_use_1 = require("react-use");
|
|
51
49
|
var modal_1 = require("../../../actions/modal");
|
|
52
50
|
var modal_2 = require("../../../reducers/modal");
|
|
53
51
|
var hooks_1 = require("../../../hooks");
|
|
54
|
-
var hoc_1 = require("../../../hoc");
|
|
55
52
|
var router_1 = require("../../../actions/router");
|
|
56
53
|
var useDispatch_1 = __importDefault(require("../../../hooks/useDispatch"));
|
|
57
54
|
var router_2 = require("../../../reducers/router");
|
|
58
55
|
var SsrProvider_1 = require("../../../providers/SsrProvider");
|
|
56
|
+
var helpers_1 = require("./helpers");
|
|
59
57
|
exports.ROUTER_ROLE_LOGIN = 'login';
|
|
60
58
|
exports.ROUTER_ROLE_MODAL = 'modal';
|
|
61
59
|
exports.ROUTER_ROLE_404 = '404';
|
|
62
|
-
var findRedirectPathRecursive = function (route) {
|
|
63
|
-
if (!route) {
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
if (typeof route.redirectTo === 'boolean') {
|
|
67
|
-
var key = (0, isObject_1["default"])(route.items) && !(0, isArray_1["default"])(route.items) ? Object.keys(route.items)[0] : '0';
|
|
68
|
-
return findRedirectPathRecursive((0, get_1["default"])(route, ['items', key]));
|
|
69
|
-
}
|
|
70
|
-
if (typeof route.redirectTo === 'string') {
|
|
71
|
-
return route.redirectTo;
|
|
72
|
-
}
|
|
73
|
-
return route.path || route.path === ''
|
|
74
|
-
? route.path
|
|
75
|
-
: null;
|
|
76
|
-
};
|
|
77
|
-
var walkRoutesRecursive = function (item, defaultItem, parentItem) {
|
|
78
|
-
if (defaultItem === void 0) { defaultItem = {}; }
|
|
79
|
-
if (parentItem === void 0) { parentItem = {}; }
|
|
80
|
-
var normalizedItem = __assign(__assign(__assign({}, defaultItem), item), { id: item.id, exact: item.exact, path: item.path && (item.path.indexOf('/') !== 0 && parentItem.path ? parentItem.path + '/' : '') + item.path, label: item.label, title: item.title, isVisible: typeof item.isVisible !== 'undefined'
|
|
81
|
-
? item.isVisible
|
|
82
|
-
: (typeof parentItem.isVisible !== 'undefined'
|
|
83
|
-
? parentItem.isVisible
|
|
84
|
-
: defaultItem.isVisible), isNavVisible: typeof item.isNavVisible !== 'undefined'
|
|
85
|
-
? item.isNavVisible
|
|
86
|
-
: (typeof parentItem.isNavVisible !== 'undefined'
|
|
87
|
-
? parentItem.isNavVisible
|
|
88
|
-
: defaultItem.isNavVisible), layout: item.layout || parentItem.layout || defaultItem.layout || null, roles: item.roles || parentItem.roles || defaultItem.roles || null, component: null, componentProps: null });
|
|
89
|
-
var items = null;
|
|
90
|
-
if ((0, isArray_1["default"])(item.items)) {
|
|
91
|
-
items = item.items.map(function (i) { return (0, exports.walkRoutesRecursive)(i, defaultItem, normalizedItem); });
|
|
92
|
-
}
|
|
93
|
-
else if ((0, isObject_1["default"])(item.items)) {
|
|
94
|
-
items = Object.keys(item.items)
|
|
95
|
-
.map(function (id) { return (0, exports.walkRoutesRecursive)(__assign(__assign({}, item.items[id]), { id: id }), defaultItem, normalizedItem); });
|
|
96
|
-
}
|
|
97
|
-
return __assign(__assign({}, normalizedItem), { items: items });
|
|
98
|
-
};
|
|
99
|
-
exports.walkRoutesRecursive = walkRoutesRecursive;
|
|
100
|
-
var treeToList = function (item, isRoot) {
|
|
101
|
-
if (isRoot === void 0) { isRoot = true; }
|
|
102
|
-
if ((0, isArray_1["default"])(item)) {
|
|
103
|
-
return item;
|
|
104
|
-
}
|
|
105
|
-
if (isRoot && !item.id) {
|
|
106
|
-
item.id = 'root';
|
|
107
|
-
}
|
|
108
|
-
var items = item.path ? [item] : [];
|
|
109
|
-
if ((0, isArray_1["default"])(item.items)) {
|
|
110
|
-
item.items.forEach(function (sub) {
|
|
111
|
-
items = items.concat((0, exports.treeToList)(sub, false));
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
else if ((0, isObject_1["default"])(item.items)) {
|
|
115
|
-
Object.keys(item.items).forEach(function (id) {
|
|
116
|
-
items = items.concat((0, exports.treeToList)(__assign(__assign({}, item.items[id]), { id: id }), false));
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
return items;
|
|
120
|
-
};
|
|
121
|
-
exports.treeToList = treeToList;
|
|
122
60
|
var renderComponent = function (route, activePath, routeProps) {
|
|
123
61
|
var _a, _b;
|
|
124
62
|
var routePath = (0, router_2.buildUrl)(route.path, (_a = routeProps === null || routeProps === void 0 ? void 0 : routeProps.match) === null || _a === void 0 ? void 0 : _a.params);
|
|
125
63
|
if (route.redirectTo && routePath === activePath) {
|
|
126
|
-
var to = findRedirectPathRecursive(route);
|
|
64
|
+
var to = (0, helpers_1.findRedirectPathRecursive)(route);
|
|
127
65
|
if (to === null) {
|
|
128
66
|
// eslint-disable-next-line no-console
|
|
129
67
|
console.error('Not found path for redirect in route:', route);
|
|
@@ -139,21 +77,18 @@ var renderComponent = function (route, activePath, routeProps) {
|
|
|
139
77
|
return null;
|
|
140
78
|
}
|
|
141
79
|
var Component = route.component;
|
|
142
|
-
if (route.fetch) {
|
|
143
|
-
Component = (0, hoc_1.fetch)(route.fetch)(Component);
|
|
144
|
-
}
|
|
145
80
|
return (React.createElement(Component, __assign({}, routeProps, route.componentProps)));
|
|
146
81
|
};
|
|
147
82
|
function Router(props) {
|
|
148
83
|
var components = (0, hooks_1.useComponents)();
|
|
149
84
|
var _a = (0, hooks_1.useSelector)(function (state) {
|
|
150
|
-
var _a, _b;
|
|
85
|
+
var _a, _b, _c;
|
|
151
86
|
return ({
|
|
152
87
|
isInitialized: (0, router_2.isRouterInitialized)(state),
|
|
153
88
|
pathname: (0, get_1["default"])(state, 'router.location.pathname'),
|
|
154
89
|
route: (0, router_2.getRoute)(state),
|
|
155
|
-
routeParams: state.router.params,
|
|
156
|
-
activePath: (
|
|
90
|
+
routeParams: (_a = state.router.match) === null || _a === void 0 ? void 0 : _a.params,
|
|
91
|
+
activePath: (_c = (_b = state.router) === null || _b === void 0 ? void 0 : _b.location) === null || _c === void 0 ? void 0 : _c.pathname,
|
|
157
92
|
activeRouteIds: (0, router_2.getActiveRouteIds)(state)
|
|
158
93
|
});
|
|
159
94
|
}), isInitialized = _a.isInitialized, pathname = _a.pathname, route = _a.route, routeParams = _a.routeParams, activePath = _a.activePath, activeRouteIds = _a.activeRouteIds;
|
|
@@ -162,7 +97,7 @@ function Router(props) {
|
|
|
162
97
|
var dispatch = (0, useDispatch_1["default"])();
|
|
163
98
|
(0, react_use_1.useEffectOnce)(function () {
|
|
164
99
|
if (props.routes) {
|
|
165
|
-
dispatch((0, router_1.initRoutes)((0,
|
|
100
|
+
dispatch((0, router_1.initRoutes)((0, helpers_1.walkRoutesRecursive)(__assign({ id: 'root' }, props.routes), props.defaultRoles ? { roles: props.defaultRoles } : undefined)));
|
|
166
101
|
}
|
|
167
102
|
});
|
|
168
103
|
// Sync route params with redux
|
|
@@ -173,7 +108,7 @@ function Router(props) {
|
|
|
173
108
|
}
|
|
174
109
|
}, [dispatch, prevRouteParams, routeParams]);
|
|
175
110
|
// Routes state
|
|
176
|
-
var _b = (0, react_1.useState)((0,
|
|
111
|
+
var _b = (0, react_1.useState)((0, helpers_1.treeToList)(props.routes)), routes = _b[0], setRoutes = _b[1];
|
|
177
112
|
(0, react_use_1.useUpdateEffect)(function () {
|
|
178
113
|
setRoutes(props.routes);
|
|
179
114
|
}, [props.routes]);
|
|
@@ -217,10 +152,7 @@ function Router(props) {
|
|
|
217
152
|
return activeRoute && activeRoute.role !== exports.ROUTER_ROLE_MODAL;
|
|
218
153
|
});
|
|
219
154
|
if (parentRouteId) {
|
|
220
|
-
|
|
221
|
-
//TODO remove //@ts-ignore
|
|
222
|
-
//@ts-ignore
|
|
223
|
-
dispatch((0, router_1.goToRoute)(parentRouteId));
|
|
155
|
+
dispatch((0, router_1.goToRoute)(parentRouteId, routeParams));
|
|
224
156
|
}
|
|
225
157
|
}
|
|
226
158
|
});
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { IRouteItem } from './Router';
|
|
2
|
+
export declare const findRedirectPathRecursive: (route: IRouteItem) => any;
|
|
3
|
+
export declare const walkRoutesRecursive: (item: IRouteItem | Record<string, any>, defaultItem?: any, parentItem?: any) => any;
|
|
4
|
+
export declare const treeToList: (item: IRouteItem | Record<string, any>, isRoot?: boolean) => Record<string, any>;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
exports.__esModule = true;
|
|
17
|
+
exports.treeToList = exports.walkRoutesRecursive = exports.findRedirectPathRecursive = void 0;
|
|
18
|
+
var get_1 = __importDefault(require("lodash-es/get"));
|
|
19
|
+
var isArray_1 = __importDefault(require("lodash-es/isArray"));
|
|
20
|
+
var isObject_1 = __importDefault(require("lodash-es/isObject"));
|
|
21
|
+
var findRedirectPathRecursive = function (route) {
|
|
22
|
+
if (!route) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
if (typeof route.redirectTo === 'boolean') {
|
|
26
|
+
var key = (0, isObject_1["default"])(route.items) && !(0, isArray_1["default"])(route.items) ? Object.keys(route.items)[0] : '0';
|
|
27
|
+
return (0, exports.findRedirectPathRecursive)((0, get_1["default"])(route, ['items', key]));
|
|
28
|
+
}
|
|
29
|
+
if (typeof route.redirectTo === 'string') {
|
|
30
|
+
return route.redirectTo;
|
|
31
|
+
}
|
|
32
|
+
return route.path || route.path === ''
|
|
33
|
+
? route.path
|
|
34
|
+
: null;
|
|
35
|
+
};
|
|
36
|
+
exports.findRedirectPathRecursive = findRedirectPathRecursive;
|
|
37
|
+
var walkRoutesRecursive = function (item, defaultItem, parentItem) {
|
|
38
|
+
if (defaultItem === void 0) { defaultItem = {}; }
|
|
39
|
+
if (parentItem === void 0) { parentItem = {}; }
|
|
40
|
+
var normalizedItem = __assign(__assign(__assign({}, defaultItem), item), { id: item.id, exact: item.exact, path: item.path && (item.path.indexOf('/') !== 0 && parentItem.path ? parentItem.path + '/' : '') + item.path, label: item.label, title: item.title, isVisible: typeof item.isVisible !== 'undefined'
|
|
41
|
+
? item.isVisible
|
|
42
|
+
: (typeof parentItem.isVisible !== 'undefined'
|
|
43
|
+
? parentItem.isVisible
|
|
44
|
+
: defaultItem.isVisible), isNavVisible: typeof item.isNavVisible !== 'undefined'
|
|
45
|
+
? item.isNavVisible
|
|
46
|
+
: (typeof parentItem.isNavVisible !== 'undefined'
|
|
47
|
+
? parentItem.isNavVisible
|
|
48
|
+
: defaultItem.isNavVisible), layout: item.layout || parentItem.layout || defaultItem.layout || null, roles: item.roles || parentItem.roles || defaultItem.roles || null, component: null, componentProps: null });
|
|
49
|
+
var items = null;
|
|
50
|
+
if ((0, isArray_1["default"])(item.items)) {
|
|
51
|
+
items = item.items.map(function (subItem) { return (0, exports.walkRoutesRecursive)(subItem, defaultItem, normalizedItem); });
|
|
52
|
+
}
|
|
53
|
+
else if ((0, isObject_1["default"])(item.items)) {
|
|
54
|
+
items = Object.keys(item.items)
|
|
55
|
+
.map(function (id) { return (0, exports.walkRoutesRecursive)(__assign(__assign({}, item.items[id]), { id: id }), defaultItem, normalizedItem); });
|
|
56
|
+
}
|
|
57
|
+
return __assign(__assign({}, normalizedItem), { items: items });
|
|
58
|
+
};
|
|
59
|
+
exports.walkRoutesRecursive = walkRoutesRecursive;
|
|
60
|
+
var treeToList = function (item, isRoot) {
|
|
61
|
+
if (isRoot === void 0) { isRoot = true; }
|
|
62
|
+
if ((0, isArray_1["default"])(item)) {
|
|
63
|
+
return item;
|
|
64
|
+
}
|
|
65
|
+
if (isRoot && !item.id) {
|
|
66
|
+
item.id = 'root';
|
|
67
|
+
}
|
|
68
|
+
var items = item.path ? [item] : [];
|
|
69
|
+
if ((0, isArray_1["default"])(item.items)) {
|
|
70
|
+
item.items.forEach(function (subItem) {
|
|
71
|
+
items = items.concat((0, exports.treeToList)(subItem, false));
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
else if ((0, isObject_1["default"])(item.items)) {
|
|
75
|
+
Object.keys(item.items).forEach(function (id) {
|
|
76
|
+
items = items.concat((0, exports.treeToList)(__assign(__assign({}, item.items[id]), { id: id }), false));
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return items;
|
|
80
|
+
};
|
|
81
|
+
exports.treeToList = treeToList;
|
package/ui/nav/Tree/Tree.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export interface ITreeProps {
|
|
|
55
55
|
* Переопределение view React компонента для кастомизации отображения элемента
|
|
56
56
|
* @example MyCustomView
|
|
57
57
|
*/
|
|
58
|
-
view?:
|
|
58
|
+
view?: CustomView;
|
|
59
59
|
/**
|
|
60
60
|
* Максимальный уровень вложенности, до которого все узлы будут отображаться в развёрнутом виде
|
|
61
61
|
* @example 1
|
|
@@ -86,7 +86,7 @@ export interface ITreeViewProps extends ITreeProps {
|
|
|
86
86
|
})[];
|
|
87
87
|
levelPadding?: number;
|
|
88
88
|
}
|
|
89
|
-
declare function Tree(props: ITreeProps): any
|
|
89
|
+
declare function Tree(props: ITreeProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
90
90
|
declare namespace Tree {
|
|
91
91
|
var defaultProps: {
|
|
92
92
|
itemsKey: string;
|