@steroidsjs/core 3.0.0-beta.9 → 3.0.0-beta.90
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/README.md +23 -6
- package/actions/list.d.ts +71 -4
- package/actions/list.js +7 -9
- package/base/Enum.d.ts +3 -3
- package/components/ClientStorageComponent.d.ts +27 -1
- package/components/ClientStorageComponent.js +4 -3
- package/components/HttpComponent.d.ts +1 -0
- package/components/HttpComponent.js +4 -3
- package/components/LocaleComponent.d.ts +53 -6
- package/components/LocaleComponent.js +9 -8
- 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 +30076 -0
- package/en.json +824 -0
- package/hooks/index.d.ts +7 -1
- package/hooks/index.js +13 -1
- package/hooks/useAbsolutePositioning.d.ts +56 -7
- package/hooks/useAbsolutePositioning.js +39 -131
- package/hooks/useAddressBar.d.ts +11 -0
- package/hooks/useApplication.d.ts +4 -1
- package/hooks/useApplication.js +19 -1
- package/hooks/useDataProvider.d.ts +29 -29
- package/hooks/useDataProvider.js +4 -5
- package/hooks/useDataSelect.d.ts +10 -3
- package/hooks/useDataSelect.js +40 -23
- package/hooks/useFetch.d.ts +5 -6
- package/hooks/useFetch.js +0 -3
- package/hooks/useFile.d.ts +51 -2
- package/hooks/useForm.d.ts +0 -1
- package/hooks/useForm.js +0 -1
- package/hooks/useList.d.ts +20 -5
- package/hooks/useList.js +64 -15
- package/hooks/useSaveCursorPosition.d.ts +6 -0
- package/hooks/useSaveCursorPosition.js +29 -0
- package/hooks/useTheme.d.ts +2 -0
- package/hooks/useTheme.js +8 -0
- package/index.d.ts +28 -15
- package/package.json +12 -7
- package/providers/ComponentsProvider.d.ts +8 -5
- 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 +40 -15
- package/ui/content/Accordion/AccordionItem.d.ts +4 -3
- package/ui/content/Alert/Alert.d.ts +29 -10
- package/ui/content/Avatar/Avatar.d.ts +26 -24
- package/ui/content/Avatar/Avatar.js +1 -1
- 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 +19 -10
- package/ui/content/Calendar/Calendar.js +9 -2
- package/ui/content/CalendarSystem/CalendarSystem.d.ts +56 -0
- package/ui/content/CalendarSystem/CalendarSystem.js +106 -0
- package/ui/content/CalendarSystem/enums/CalendarType.d.ts +6 -0
- package/ui/content/CalendarSystem/enums/CalendarType.js +38 -0
- package/ui/content/CalendarSystem/enums/DateControlType.d.ts +10 -0
- package/ui/content/CalendarSystem/enums/DateControlType.js +42 -0
- package/ui/content/CalendarSystem/helpers/addEventIfMatchDate.d.ts +3 -0
- package/ui/content/CalendarSystem/helpers/addEventIfMatchDate.js +21 -0
- package/ui/content/CalendarSystem/hooks/useCalendarControls.d.ts +8 -0
- package/ui/content/CalendarSystem/hooks/useCalendarControls.js +47 -0
- package/ui/content/CalendarSystem/hooks/useDisplayDate.d.ts +6 -0
- package/ui/content/CalendarSystem/hooks/useDisplayDate.js +27 -0
- package/ui/content/CalendarSystem/hooks/useMonthCalendar.d.ts +16 -0
- package/ui/content/CalendarSystem/hooks/useMonthCalendar.js +87 -0
- package/ui/content/CalendarSystem/hooks/useWeekCalendar.d.ts +15 -0
- package/ui/content/CalendarSystem/hooks/useWeekCalendar.js +86 -0
- package/ui/content/CalendarSystem/index.d.ts +2 -0
- package/ui/{list/LayoutNames/demo/basic.js → content/CalendarSystem/index.js} +2 -7
- package/ui/content/CalendarSystem/utils/utils.d.ts +3 -0
- package/ui/content/CalendarSystem/utils/utils.js +29 -0
- package/ui/content/Card/Card.d.ts +75 -45
- package/ui/content/Card/Card.js +0 -5
- package/ui/content/Chart/Chart.d.ts +37 -0
- package/ui/content/Chart/Chart.js +19 -0
- package/ui/content/Chart/index.d.ts +2 -0
- package/ui/content/Chart/index.js +7 -0
- package/ui/content/CopyToClipboard/CopyToClipboard.d.ts +68 -8
- package/ui/content/CopyToClipboard/CopyToClipboard.js +26 -59
- 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 +22 -10
- package/ui/content/DropDown/DropDown.js +15 -3
- 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/content/Menu/index.js +7 -0
- package/ui/content/Slider/Slider.d.ts +28 -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 +8 -1
- package/ui/content/index.js +16 -1
- package/ui/crud/Crud/Crud.d.ts +116 -4
- package/ui/crud/Crud/CrudContent.d.ts +1 -2
- package/ui/crud/Crud/utils.js +10 -14
- package/ui/crud/index.d.ts +0 -1
- package/ui/form/AutoCompleteField/AutoCompleteField.d.ts +26 -6
- package/ui/form/AutoCompleteField/AutoCompleteField.js +17 -3
- package/ui/form/BlankField/BlankField.d.ts +19 -1
- package/ui/form/Button/Button.d.ts +19 -26
- package/ui/form/Button/Button.js +1 -10
- package/ui/form/CheckboxField/CheckboxField.d.ts +9 -8
- package/ui/form/CheckboxField/CheckboxField.js +36 -6
- package/ui/form/CheckboxListField/CheckboxListField.d.ts +23 -8
- package/ui/form/CheckboxListField/CheckboxListField.js +36 -8
- package/ui/form/DateField/DateField.d.ts +20 -15
- package/ui/form/DateField/DateField.js +7 -2
- package/ui/form/DateField/useDateInputState.js +4 -3
- package/ui/form/DateField/useDateRange.d.ts +2 -1
- package/ui/form/DateField/useDateRange.js +23 -0
- package/ui/form/DateField/useDateTime.js +3 -2
- package/ui/form/DateRangeField/DateRangeField.d.ts +12 -21
- package/ui/form/DateRangeField/DateRangeField.js +6 -3
- package/ui/form/DateTimeField/DateTimeField.d.ts +9 -15
- package/ui/form/DateTimeField/DateTimeField.js +6 -8
- package/ui/form/DateTimeRangeField/DateTimeRangeField.d.ts +7 -21
- package/ui/form/DateTimeRangeField/DateTimeRangeField.js +16 -3
- 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 +35 -14
- 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 +54 -34
- package/ui/form/FileField/FileField.js +30 -10
- package/ui/form/Form/Form.d.ts +32 -40
- package/ui/form/Form/Form.js +26 -34
- 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 -50
- package/ui/form/InputField/InputField.js +57 -17
- 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 +15 -11
- package/ui/form/NumberField/NumberField.js +33 -10
- package/ui/form/NumberField/hooks/useInputTypeNumber.d.ts +10 -0
- package/ui/form/NumberField/hooks/useInputTypeNumber.js +45 -0
- package/ui/form/PasswordField/PasswordField.d.ts +20 -14
- package/ui/form/PasswordField/PasswordField.js +21 -11
- package/ui/form/RadioField/RadioField.d.ts +31 -0
- package/{hoc/file.js → ui/form/RadioField/RadioField.js} +21 -5
- 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 +11 -13
- package/ui/form/RateField/RateField.js +2 -1
- package/ui/form/RateField/demo/errors.js +1 -1
- package/ui/form/ReCaptchaField/ReCaptchaField.d.ts +66 -5
- 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 +8 -27
- package/ui/form/TextField/TextField.js +10 -9
- 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/form/validate.js +3 -2
- package/ui/format/BooleanFormatter/BooleanFormatter.d.ts +13 -0
- package/ui/format/DateFormatter/DateFormatter.d.ts +11 -1
- package/ui/format/DateFormatter/DateFormatter.js +1 -1
- package/ui/format/DateTimeFormatter/DateTimeFormatter.d.ts +11 -1
- package/ui/format/DateTimeFormatter/DateTimeFormatter.js +4 -3
- package/ui/format/EnumFormatter/EnumFormatter.d.ts +10 -0
- package/ui/format/FileSize/FileSize.d.ts +8 -3
- 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 +92 -9
- package/ui/layout/Header/Header.js +20 -1
- package/ui/layout/Loader/Loader.d.ts +15 -1
- package/ui/layout/Meta/Meta.js +3 -3
- package/ui/layout/Notifications/Notifications.d.ts +32 -1
- package/ui/layout/ProgressBar/ProgressBar.js +8 -4
- package/ui/layout/Sidebar/Sidebar.d.ts +82 -0
- package/ui/{list/ControlsColumn/demo/basic.js → layout/Sidebar/Sidebar.js} +21 -13
- package/ui/layout/Sidebar/index.d.ts +2 -0
- package/ui/layout/Sidebar/index.js +7 -0
- package/ui/layout/Skeleton/Skeleton.d.ts +25 -2
- package/ui/layout/Tooltip/Tooltip.d.ts +39 -12
- package/ui/layout/Tooltip/Tooltip.js +17 -46
- package/ui/layout/index.d.ts +2 -1
- package/ui/layout/index.js +3 -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 +4 -3
- 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 +14 -4
- package/ui/list/List/List.d.ts +2 -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/list/TreeTable/TreeTable.d.ts +39 -0
- package/ui/list/{Grid/demo/indexing.js → TreeTable/TreeTable.js} +30 -9
- package/ui/list/TreeTable/index.d.ts +2 -0
- package/ui/list/TreeTable/index.js +7 -0
- 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 +12 -2
- package/ui/nav/ButtonGroup/ButtonGroup.d.ts +44 -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.d.ts +1 -0
- package/ui/nav/Link/Link.js +1 -1
- package/ui/nav/Nav/Nav.d.ts +13 -6
- package/ui/nav/Nav/Nav.js +29 -14
- package/ui/nav/Router/Router.d.ts +0 -10
- package/ui/nav/Router/Router.js +13 -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 +7 -2
- package/ui/nav/Tree/Tree.js +41 -18
- package/ui/nav/index.d.ts +2 -1
- package/ui/nav/index.js +3 -1
- package/ui/typography/Text/Text.d.ts +10 -8
- package/ui/typography/Title/Title.d.ts +10 -8
- package/utils/calculateComponentAbsolutePosition.d.ts +6 -0
- package/{ui/layout/Tooltip/calculate.js → utils/calculateComponentAbsolutePosition.js} +67 -58
- package/utils/calendar.d.ts +1 -1
- package/utils/calendar.js +17 -15
- package/utils/form.d.ts +0 -2
- package/utils/form.js +1 -12
- package/utils/list.d.ts +1 -0
- package/utils/list.js +5 -0
- package/components/ApiComponent.d.ts +0 -23
- package/components/ApiComponent.js +0 -75
- 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/http.d.ts +0 -7
- package/hoc/http.js +0 -53
- 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/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/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 -57
- package/ui/layout/Notifications/demo/position.d.ts +0 -3
- package/ui/layout/Notifications/demo/position.js +0 -49
- package/ui/layout/Notifications/demo/timeOut.d.ts +0 -3
- package/ui/layout/Notifications/demo/timeOut.js +0 -49
- package/ui/layout/Tooltip/calculate.d.ts +0 -6
- 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/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/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
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { ListControlPosition } from '../../../hooks/useList';
|
|
3
2
|
import { IButtonProps } from '../../form/Button/Button';
|
|
4
3
|
/**
|
|
5
4
|
* Pagination
|
|
@@ -41,10 +40,8 @@ export interface IPaginationProps {
|
|
|
41
40
|
*/
|
|
42
41
|
className?: CssClassName;
|
|
43
42
|
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
*/
|
|
47
|
-
position?: ListControlPosition;
|
|
43
|
+
* Параметры кнопки
|
|
44
|
+
*/
|
|
48
45
|
buttonProps?: IButtonProps;
|
|
49
46
|
/**
|
|
50
47
|
* Переопределение view React компонента для кастомизации отображения
|
|
@@ -69,6 +66,16 @@ export interface IPaginationProps {
|
|
|
69
66
|
* Список, для которого используется пагинация
|
|
70
67
|
*/
|
|
71
68
|
list?: any;
|
|
69
|
+
/**
|
|
70
|
+
* Нужно ли отображать кнопки с шагом в одну страницу
|
|
71
|
+
* @example {'true'}
|
|
72
|
+
*/
|
|
73
|
+
showSteps?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Нужно ли отображать кнопки с шагом до первой / последней страницы
|
|
76
|
+
* @example {'true'}
|
|
77
|
+
*/
|
|
78
|
+
showEdgeSteps?: boolean;
|
|
72
79
|
[key: string]: any;
|
|
73
80
|
}
|
|
74
81
|
export interface IPaginationViewProps extends IPaginationProps {
|
|
@@ -80,6 +87,11 @@ export interface IPaginationViewProps extends IPaginationProps {
|
|
|
80
87
|
}[];
|
|
81
88
|
onSelect: (page: number) => void;
|
|
82
89
|
onSelectNext: () => void;
|
|
90
|
+
onSelectPrev: () => void;
|
|
91
|
+
onSelectLast: () => void;
|
|
92
|
+
onSelectFirst: () => void;
|
|
93
|
+
isFirstPage: boolean;
|
|
94
|
+
isLastPage: boolean;
|
|
83
95
|
}
|
|
84
96
|
export declare const generatePages: (page: any, totalPages: any, aroundCount?: number) => any[];
|
|
85
97
|
declare function Pagination(props: IPaginationProps): JSX.Element;
|
|
@@ -89,6 +101,7 @@ declare namespace Pagination {
|
|
|
89
101
|
attribute: string;
|
|
90
102
|
aroundCount: number;
|
|
91
103
|
defaultValue: number;
|
|
104
|
+
size: string;
|
|
92
105
|
loadMore: boolean;
|
|
93
106
|
position: string;
|
|
94
107
|
sizeAttribute: string;
|
|
@@ -44,6 +44,7 @@ var React = __importStar(require("react"));
|
|
|
44
44
|
var hooks_1 = require("../../../hooks");
|
|
45
45
|
var useForm_1 = __importDefault(require("../../../hooks/useForm"));
|
|
46
46
|
var form_1 = require("../../../actions/form");
|
|
47
|
+
var FIRST_PAGE = 1;
|
|
47
48
|
var generatePages = function (page, totalPages, aroundCount) {
|
|
48
49
|
if (aroundCount === void 0) { aroundCount = 3; }
|
|
49
50
|
if (!page || !totalPages) {
|
|
@@ -78,6 +79,8 @@ function Pagination(props) {
|
|
|
78
79
|
});
|
|
79
80
|
}) || initialValues, page = _e.page, pageSize = _e.pageSize;
|
|
80
81
|
var totalPages = Math.ceil((((_c = props.list) === null || _c === void 0 ? void 0 : _c.total) || 0) / (pageSize || 1));
|
|
82
|
+
var isFirstPage = React.useMemo(function () { return page === FIRST_PAGE; }, [page]);
|
|
83
|
+
var isLastPage = React.useMemo(function () { return page === totalPages; }, [page, totalPages]);
|
|
81
84
|
var pages = (0, react_1.useMemo)(function () { return (0, exports.generatePages)(page, totalPages, props.aroundCount)
|
|
82
85
|
.map(function (pageItem, index, pagesArray) {
|
|
83
86
|
// Номер страницы для '...' кнопки (выбирает страницу между двумя соседними пронумерованными)
|
|
@@ -99,26 +102,31 @@ function Pagination(props) {
|
|
|
99
102
|
var onSelectNext = (0, react_1.useCallback)(function () {
|
|
100
103
|
onSelect(page + 1);
|
|
101
104
|
}, [onSelect, page]);
|
|
105
|
+
var onSelectPrev = (0, react_1.useCallback)(function () {
|
|
106
|
+
onSelect(page - 1);
|
|
107
|
+
}, [onSelect, page]);
|
|
108
|
+
var onSelectLast = (0, react_1.useCallback)(function () {
|
|
109
|
+
onSelect(totalPages);
|
|
110
|
+
}, [onSelect, totalPages]);
|
|
111
|
+
var onSelectFirst = (0, react_1.useCallback)(function () {
|
|
112
|
+
onSelect(FIRST_PAGE);
|
|
113
|
+
}, [onSelect]);
|
|
102
114
|
if (!props.list || !page || !pageSize || props.list.total <= pageSize) {
|
|
103
115
|
return null;
|
|
104
116
|
}
|
|
105
117
|
// Do not show in last page in 'loadMore' mode
|
|
106
|
-
if (props.loadMore &&
|
|
118
|
+
if (props.loadMore && isLastPage) {
|
|
107
119
|
return null;
|
|
108
120
|
}
|
|
109
121
|
var defaultView = (props.loadMore ? 'list.PaginationMoreView' : 'list.PaginationButtonView');
|
|
110
|
-
return components.ui.renderView(props.view || defaultView, {
|
|
111
|
-
totalPages: totalPages,
|
|
112
|
-
pages: pages,
|
|
113
|
-
onSelect: onSelect,
|
|
114
|
-
onSelectNext: onSelectNext
|
|
115
|
-
});
|
|
122
|
+
return components.ui.renderView(props.view || defaultView, __assign(__assign({}, props), { totalPages: totalPages, pages: pages, onSelect: onSelect, onSelectNext: onSelectNext, onSelectPrev: onSelectPrev, onSelectLast: onSelectLast, onSelectFirst: onSelectFirst, isFirstPage: isFirstPage, isLastPage: isLastPage }));
|
|
116
123
|
}
|
|
117
124
|
Pagination.defaultProps = {
|
|
118
125
|
enable: true,
|
|
119
126
|
attribute: 'page',
|
|
120
127
|
aroundCount: 3,
|
|
121
128
|
defaultValue: 1,
|
|
129
|
+
size: 'md',
|
|
122
130
|
loadMore: false,
|
|
123
131
|
position: 'bottom',
|
|
124
132
|
sizeAttribute: 'pageSize'
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { IButtonProps } from '../../form/Button/Button';
|
|
2
3
|
import { ListControlPosition } from '../../../hooks/useList';
|
|
3
4
|
/**
|
|
4
5
|
* PaginationSize
|
|
5
6
|
* Компонент для выбора количества элементов в списке
|
|
6
7
|
*/
|
|
7
|
-
export interface IPaginationSizeProps {
|
|
8
|
+
export interface IPaginationSizeProps extends IUiComponent {
|
|
8
9
|
/**
|
|
9
10
|
* Подключить выбор количества элементов
|
|
10
11
|
* @example true
|
|
@@ -25,19 +26,10 @@ export interface IPaginationSizeProps {
|
|
|
25
26
|
* @example 'both'
|
|
26
27
|
*/
|
|
27
28
|
position?: ListControlPosition;
|
|
28
|
-
/**
|
|
29
|
-
* Дополнительный CSS-класс для элемента отображения
|
|
30
|
-
*/
|
|
31
|
-
className?: CssClassName;
|
|
32
29
|
/**
|
|
33
30
|
* Значение по-умолчанию
|
|
34
31
|
*/
|
|
35
32
|
defaultValue?: number;
|
|
36
|
-
/**
|
|
37
|
-
* Переопределение view React компонента для кастомизации отображения
|
|
38
|
-
* @example MyCustomView
|
|
39
|
-
*/
|
|
40
|
-
view?: CustomView;
|
|
41
33
|
/**
|
|
42
34
|
* Обработчик, который вызывается после смены страницы
|
|
43
35
|
* @param {number} value
|
|
@@ -48,13 +40,16 @@ export interface IPaginationSizeProps {
|
|
|
48
40
|
* Список, для которого используется пагинация
|
|
49
41
|
*/
|
|
50
42
|
list?: any;
|
|
43
|
+
/**
|
|
44
|
+
* Свойства для кнопок пагинации
|
|
45
|
+
*/
|
|
46
|
+
buttonProps?: IButtonProps;
|
|
51
47
|
[key: string]: any;
|
|
52
48
|
}
|
|
53
49
|
export interface IPaginationSizeViewProps extends IPaginationSizeProps {
|
|
54
50
|
items: {
|
|
55
|
-
|
|
51
|
+
id: number;
|
|
56
52
|
label: string | number;
|
|
57
|
-
isActive: boolean;
|
|
58
53
|
}[];
|
|
59
54
|
onSelect: (size: number) => void;
|
|
60
55
|
}
|
|
@@ -66,6 +61,9 @@ declare namespace PaginationSize {
|
|
|
66
61
|
sizes: number[];
|
|
67
62
|
defaultValue: number;
|
|
68
63
|
position: string;
|
|
64
|
+
buttonProps: {
|
|
65
|
+
size: string;
|
|
66
|
+
};
|
|
69
67
|
};
|
|
70
68
|
}
|
|
71
69
|
export declare const normalizePaginationSizeProps: (props: any) => any;
|
|
@@ -45,15 +45,13 @@ var hooks_1 = require("../../../hooks");
|
|
|
45
45
|
var useForm_1 = __importDefault(require("../../../hooks/useForm"));
|
|
46
46
|
var form_1 = require("../../../actions/form");
|
|
47
47
|
function PaginationSize(props) {
|
|
48
|
-
var _a, _b
|
|
48
|
+
var _a, _b;
|
|
49
49
|
var components = (0, hooks_1.useComponents)();
|
|
50
|
-
var pageSize = (_a = props.list) === null || _a === void 0 ? void 0 : _a.pageSize;
|
|
51
50
|
var items = (0, react_1.useMemo)(function () { return props.sizes.map(function (size) { return ({
|
|
52
|
-
|
|
53
|
-
label: size
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
var _d = (0, useForm_1["default"])(), formId = _d.formId, formDispatch = _d.formDispatch;
|
|
51
|
+
id: size,
|
|
52
|
+
label: size
|
|
53
|
+
}); }); }, [props.sizes]);
|
|
54
|
+
var _c = (0, useForm_1["default"])(), formId = _c.formId, formDispatch = _c.formDispatch;
|
|
57
55
|
var onSelect = (0, react_1.useCallback)(function (newPage) {
|
|
58
56
|
if (formDispatch) {
|
|
59
57
|
formDispatch((0, form_1.formChange)(formId, props.attribute, newPage));
|
|
@@ -62,7 +60,7 @@ function PaginationSize(props) {
|
|
|
62
60
|
props.onChange.call(null, newPage);
|
|
63
61
|
}
|
|
64
62
|
}, [formDispatch, formId, props.attribute, props.onChange]);
|
|
65
|
-
if (!((
|
|
63
|
+
if (!((_b = (_a = props.list) === null || _a === void 0 ? void 0 : _a.items) === null || _b === void 0 ? void 0 : _b.length)) {
|
|
66
64
|
return null;
|
|
67
65
|
}
|
|
68
66
|
return components.ui.renderView(props.view || 'list.PaginationSizeView', __assign(__assign({}, props), { items: items, onSelect: onSelect }));
|
|
@@ -72,7 +70,10 @@ PaginationSize.defaultProps = {
|
|
|
72
70
|
attribute: 'pageSize',
|
|
73
71
|
sizes: [30, 50, 100],
|
|
74
72
|
defaultValue: 50,
|
|
75
|
-
position: 'top'
|
|
73
|
+
position: 'top',
|
|
74
|
+
buttonProps: {
|
|
75
|
+
size: 'sm'
|
|
76
|
+
}
|
|
76
77
|
};
|
|
77
78
|
var normalizePaginationSizeProps = function (props) { return (__assign(__assign(__assign({}, PaginationSize.defaultProps), { enable: !!props, defaultValue: (0, get_1["default"])(props, 'sizes.0') || PaginationSize.defaultProps.defaultValue }), (typeof props === 'boolean' ? { enable: props } : props))); };
|
|
78
79
|
exports.normalizePaginationSizeProps = normalizePaginationSizeProps;
|
|
@@ -7,6 +7,9 @@ import { IFormProps } from '../../../ui/form/Form/Form';
|
|
|
7
7
|
* после чего в list-компонент подгружаются новые элементы коллекции.
|
|
8
8
|
*/
|
|
9
9
|
export interface ISearchFormProps extends IFormProps {
|
|
10
|
+
/**
|
|
11
|
+
* Id списка
|
|
12
|
+
*/
|
|
10
13
|
listId?: string;
|
|
11
14
|
}
|
|
12
15
|
declare const _default: React.MemoExoticComponent<(props: ISearchFormProps) => JSX.Element>;
|
|
@@ -28,12 +28,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
exports.__esModule = true;
|
|
29
29
|
var React = __importStar(require("react"));
|
|
30
30
|
var List_1 = __importDefault(require("../../List"));
|
|
31
|
-
|
|
31
|
+
// import {searchForm, items} from '../../List/demo/search-form';
|
|
32
32
|
/**
|
|
33
33
|
* List with search form
|
|
34
34
|
* @order 1
|
|
35
35
|
* @col 6
|
|
36
36
|
*/
|
|
37
|
-
exports["default"] = (function () { return (React.createElement(List_1["default"], { listId: 'ListDemoSearch',
|
|
37
|
+
exports["default"] = (function () { return (React.createElement(List_1["default"], { listId: 'ListDemoSearch',
|
|
38
|
+
// items={items}
|
|
39
|
+
// searchForm={searchForm}
|
|
40
|
+
className: 'list-group', itemView: function (props) { return (React.createElement("div", { className: 'list-group-item' },
|
|
38
41
|
React.createElement("div", null, props.item.name),
|
|
39
42
|
React.createElement("div", null, "Category: ".concat(props.item.category)))); } })); });
|
package/ui/list/Steps/Steps.d.ts
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Компонент Steps предоставляет шаги для выполнения определенного процесса.
|
|
4
|
+
**/
|
|
2
5
|
interface IStepsProps {
|
|
3
6
|
stepItems: IStepItem[];
|
|
4
7
|
currentStep: number;
|
|
5
8
|
isChangeable?: boolean;
|
|
6
|
-
className?:
|
|
9
|
+
className?: CssClassName;
|
|
7
10
|
onChange?: (index: number) => void;
|
|
8
11
|
}
|
|
9
12
|
export interface IStepsViewProps {
|
|
10
|
-
className?:
|
|
13
|
+
className?: CssClassName;
|
|
11
14
|
children?: React.ReactNode;
|
|
12
15
|
}
|
|
13
16
|
export interface IStepItemViewProps {
|
|
14
17
|
stepItem: IStepItem;
|
|
15
|
-
className?:
|
|
18
|
+
className?: CssClassName;
|
|
16
19
|
index: number;
|
|
17
20
|
status: string;
|
|
18
21
|
disabled: boolean;
|
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
|
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IColumnViewProps, IGridColumn, IGridProps } from '../Grid/Grid';
|
|
3
|
+
export interface ITreeColumnViewProps extends IColumnViewProps {
|
|
4
|
+
item: {
|
|
5
|
+
onTreeItemClick?: (uniqueId: string, item: {
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
}) => void;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export interface ITreeTableItem {
|
|
12
|
+
/**
|
|
13
|
+
* Идентификатор узла
|
|
14
|
+
*/
|
|
15
|
+
id?: string | number;
|
|
16
|
+
/**
|
|
17
|
+
* Вложенные элементы
|
|
18
|
+
* @example items: [{id: 3, name: 'Ivan'}]
|
|
19
|
+
*/
|
|
20
|
+
items?: any[];
|
|
21
|
+
/**
|
|
22
|
+
* Уникальный идентификатор,
|
|
23
|
+
* используется для сохранения состояния открыта или закрыта ячейка
|
|
24
|
+
*/
|
|
25
|
+
uniqueId?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface ITreeTableProps extends Omit<IGridProps, 'items'> {
|
|
28
|
+
/**
|
|
29
|
+
* Элементы коллекции
|
|
30
|
+
* @example [{id: 1, name: 'Jane'}, {id: 2, name: 'John', items: [...]}]
|
|
31
|
+
*/
|
|
32
|
+
items?: ITreeTableItem[];
|
|
33
|
+
}
|
|
34
|
+
export declare const addTreeColumnFieldsToFirstColumn: (columns: IGridColumn[]) => IGridColumn[];
|
|
35
|
+
/**
|
|
36
|
+
* TreeTable
|
|
37
|
+
* Компонент для представления данных коллекции в виде иерархической структуры.
|
|
38
|
+
*/
|
|
39
|
+
export default function TreeTable(props: ITreeTableProps): JSX.Element;
|
|
@@ -33,20 +33,41 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
33
33
|
__setModuleDefault(result, mod);
|
|
34
34
|
return result;
|
|
35
35
|
};
|
|
36
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
37
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
38
|
+
if (ar || !(i in from)) {
|
|
39
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
40
|
+
ar[i] = from[i];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
44
|
+
};
|
|
36
45
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
46
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
47
|
};
|
|
39
48
|
exports.__esModule = true;
|
|
49
|
+
exports.addTreeColumnFieldsToFirstColumn = void 0;
|
|
40
50
|
var React = __importStar(require("react"));
|
|
51
|
+
var react_1 = require("react");
|
|
52
|
+
var merge_1 = __importDefault(require("lodash-es/merge"));
|
|
41
53
|
var Grid_1 = __importDefault(require("../Grid"));
|
|
42
|
-
var
|
|
54
|
+
var TREE_COLUMN_VIEW_FIELDS = {
|
|
55
|
+
valueView: 'TreeColumnView',
|
|
56
|
+
headerClassName: 'TreeColumnHeader'
|
|
57
|
+
};
|
|
58
|
+
var addTreeColumnFieldsToFirstColumn = function (columns) {
|
|
59
|
+
var newColumns = __spreadArray([], columns, true);
|
|
60
|
+
// Add tree view to the first column
|
|
61
|
+
(0, merge_1["default"])(newColumns[0], TREE_COLUMN_VIEW_FIELDS);
|
|
62
|
+
return newColumns;
|
|
63
|
+
};
|
|
64
|
+
exports.addTreeColumnFieldsToFirstColumn = addTreeColumnFieldsToFirstColumn;
|
|
43
65
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* @col 8
|
|
66
|
+
* TreeTable
|
|
67
|
+
* Компонент для представления данных коллекции в виде иерархической структуры.
|
|
47
68
|
*/
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
69
|
+
function TreeTable(props) {
|
|
70
|
+
var columns = (0, react_1.useMemo)(function () { return (0, exports.addTreeColumnFieldsToFirstColumn)(props.columns); }, [props.columns]);
|
|
71
|
+
return (React.createElement(Grid_1["default"], __assign({}, props, { columns: columns, items: props.items, itemsIndexing: false, hasTreeItems: true })));
|
|
72
|
+
}
|
|
73
|
+
exports["default"] = TreeTable;
|
|
@@ -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 TreeTable_1 = __importDefault(require("./TreeTable"));
|
|
7
|
+
exports["default"] = TreeTable_1["default"];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IButtonProps } from '../../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;
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
import { IRouteItem } from '../Router/Router';
|
|
3
3
|
/**
|
|
4
4
|
* Breadcrumbs
|
|
5
|
-
*
|
|
6
|
-
|
|
5
|
+
*
|
|
6
|
+
* Компонент Breadcrumbs отображает хлебные крошки.
|
|
7
|
+
**/
|
|
7
8
|
export interface IBreadcrumbsProps {
|
|
8
9
|
/**
|
|
9
10
|
* Кастомный CSS-класс
|
|
@@ -27,6 +28,15 @@ export interface IBreadcrumbsProps {
|
|
|
27
28
|
* @example 'Каталог'
|
|
28
29
|
*/
|
|
29
30
|
pageTitle?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Показать иконку заменяющую первый роут
|
|
33
|
+
* @example true
|
|
34
|
+
*/
|
|
35
|
+
showIcon?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Кастомная иконка, заменяющая первый роут
|
|
38
|
+
*/
|
|
39
|
+
customIcon?: string | React.ReactElement;
|
|
30
40
|
/**
|
|
31
41
|
* Переопределение view React компонента для кастомизации отображения
|
|
32
42
|
* @example MyCustomView
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IButtonProps } from '../../form/Button/Button';
|
|
3
|
+
import { DataProviderItems } from '../../../hooks/useDataProvider';
|
|
4
|
+
/**
|
|
5
|
+
* ButtonGroup
|
|
6
|
+
*
|
|
7
|
+
* Компонент ButtonGroup отображает группу кнопок.
|
|
8
|
+
**/
|
|
9
|
+
export interface IButtonGroupProps extends IUiComponent {
|
|
10
|
+
/**
|
|
11
|
+
* Элементы для группы кнопок
|
|
12
|
+
* @example ['button1', 'button2', 'button3']
|
|
13
|
+
*/
|
|
14
|
+
items: DataProviderItems;
|
|
15
|
+
/**
|
|
16
|
+
* Функция, которая будет вызываться при клике по кнопке
|
|
17
|
+
* @example setActiveTab
|
|
18
|
+
*/
|
|
19
|
+
onClick: (value: number | string | boolean) => void;
|
|
20
|
+
/**
|
|
21
|
+
* При указании в связке с onClick предоставляет возможность реализовать two-way binding
|
|
22
|
+
* @example 'button1'
|
|
23
|
+
*/
|
|
24
|
+
activeButton?: number | string;
|
|
25
|
+
/**
|
|
26
|
+
* Кнопка по умолчанию.
|
|
27
|
+
*/
|
|
28
|
+
defaultActiveButton?: number | string;
|
|
29
|
+
/**
|
|
30
|
+
* Общие свойства для всех кнопок группы
|
|
31
|
+
* @example {outline: true, color: 'secondary'}
|
|
32
|
+
*/
|
|
33
|
+
buttonProps?: IButtonProps;
|
|
34
|
+
}
|
|
35
|
+
export interface IButtonGroupViewProps extends Omit<IButtonGroupProps, 'items'> {
|
|
36
|
+
items: {
|
|
37
|
+
id: number | string | boolean;
|
|
38
|
+
label?: string;
|
|
39
|
+
[key: string]: unknown;
|
|
40
|
+
}[];
|
|
41
|
+
size: Size;
|
|
42
|
+
}
|
|
43
|
+
declare function ButtonGroup(props: IButtonGroupProps): JSX.Element;
|
|
44
|
+
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;
|