@deviceinsight/ng-ui-components 6.19.0-SNAPSHOT → 6.20.0
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/lib/cjs/__mocks__/i18n.d.ts +12 -4
- package/lib/cjs/__mocks__/i18n.d.ts.map +1 -1
- package/lib/cjs/__mocks__/i18n.js +20 -7
- package/lib/cjs/assets/style.css +3 -2
- package/lib/cjs/components/chart/Chart.d.ts +1 -1
- package/lib/cjs/components/colorpicker/ColorPickerPopper.d.ts +1 -1
- package/lib/cjs/components/colorpicker/GradientColorPicker.d.ts +2 -2
- package/lib/cjs/components/colorpicker/GridColorPicker.d.ts +2 -2
- package/lib/cjs/components/contentHeader/ContentHeader.d.ts +1 -1
- package/lib/cjs/components/contentHeader/ContentHeader.d.ts.map +1 -1
- package/lib/cjs/components/infobox/InfoBox.d.ts +1 -1
- package/lib/cjs/components/infobox/InfoBox.d.ts.map +1 -1
- package/lib/cjs/components/input/DateInput.d.ts +2 -2
- package/lib/cjs/components/input/DateInput.d.ts.map +1 -1
- package/lib/cjs/components/input/DateTimeInput.d.ts +2 -2
- package/lib/cjs/components/input/DateTimeInput.d.ts.map +1 -1
- package/lib/cjs/components/input/SelectWithSearch.d.ts +4 -1
- package/lib/cjs/components/input/SelectWithSearch.d.ts.map +1 -1
- package/lib/cjs/components/input/SelectWithSearch.js +25 -4
- package/lib/cjs/components/input/SelectWithSearchAsync.d.ts +1 -1
- package/lib/cjs/components/input/UrnInput.d.ts +1 -1
- package/lib/cjs/components/input/ValidatedTextInput.d.ts +1 -1
- package/lib/cjs/components/input/__tests__/DateInput.spec.js +24 -24
- package/lib/cjs/components/input/__tests__/DateTimeInput.spec.js +5 -4
- package/lib/cjs/components/input/__tests__/SelectWithSearchAsync.spec.js +12 -11
- package/lib/cjs/components/link/RouteLink.d.ts +2 -2
- package/lib/cjs/components/link/RouteLink.d.ts.map +1 -1
- package/lib/cjs/components/multiMenu/MultiMenu.d.ts +1 -1
- package/lib/cjs/components/multiMenu/components/MultiMenuItem.d.ts +1 -1
- package/lib/cjs/components/pagination/Pagination.d.ts +1 -1
- package/lib/cjs/components/pagination/__tests__/Pagination.spec.js +70 -70
- package/lib/cjs/components/periodpicker/PeriodPicker.d.ts +2 -2
- package/lib/cjs/components/periodpicker/PeriodPicker.d.ts.map +1 -1
- package/lib/cjs/components/periodpicker/components/Inputs.d.ts +2 -2
- package/lib/cjs/components/periodpicker/components/Inputs.d.ts.map +1 -1
- package/lib/cjs/components/periodpicker/components/Menu.d.ts +2 -2
- package/lib/cjs/components/periodpicker/components/Menu.d.ts.map +1 -1
- package/lib/cjs/components/periodpicker/components/MonthPicker.d.ts +2 -2
- package/lib/cjs/components/periodpicker/components/MonthPicker.d.ts.map +1 -1
- package/lib/cjs/components/periodpicker/usePeriodName.d.ts +1 -1
- package/lib/cjs/components/periodpicker/usePeriodName.d.ts.map +1 -1
- package/lib/cjs/components/periodpicker/usePeriodName.js +2 -2
- package/lib/cjs/components/prompt/Prompt.d.ts +2 -2
- package/lib/cjs/components/prompt/Prompt.d.ts.map +1 -1
- package/lib/cjs/components/reactable/Reactable.d.ts +1 -1
- package/lib/cjs/components/reactable/helpers/ReactableTable.d.ts +6 -8
- package/lib/cjs/components/reactable/helpers/ReactableTable.d.ts.map +1 -1
- package/lib/cjs/components/reactable/helpers/ReactableTable.js +43 -27
- package/lib/cjs/components/reactable/helpers/ReactableTableHeader.d.ts +2 -2
- package/lib/cjs/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -1
- package/lib/cjs/components/reactable/helpers/ReactableTableRow.d.ts +1 -1
- package/lib/cjs/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +1 -1
- package/lib/cjs/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +64 -72
- package/lib/cjs/components/slider/Slider.d.ts +2 -2
- package/lib/cjs/components/slider/Slider.d.ts.map +1 -1
- package/lib/cjs/components/svg/SvgImage.d.ts +2 -2
- package/lib/cjs/components/svg/SvgImage.d.ts.map +1 -1
- package/lib/cjs/components/svg/utils/__tests__/getMutableNodeList.spec.js +11 -10
- package/lib/cjs/components/tabs/RouteTabs.d.ts +1 -1
- package/lib/cjs/components/tabs/RouteTabs.d.ts.map +1 -1
- package/lib/cjs/components/tabs/RouteTabs.js +2 -2
- package/lib/cjs/components/treeview/TreeView.d.ts +1 -1
- package/lib/cjs/components/treeview/components/Node.d.ts +1 -1
- package/lib/cjs/components/treeview/components/NodeInfo.d.ts +1 -1
- package/lib/cjs/components/upload/FileUpload.d.ts +1 -1
- package/lib/cjs/components/upload/ImageUpload.d.ts +1 -1
- package/lib/cjs/modules/messageBox/messageBox.d.ts +2 -2
- package/lib/cjs/modules/messageBox/messageBox.d.ts.map +1 -1
- package/lib/esm/__mocks__/i18n.d.ts +12 -4
- package/lib/esm/__mocks__/i18n.d.ts.map +1 -1
- package/lib/esm/__mocks__/i18n.js +20 -5
- package/lib/esm/assets/style.css +3 -2
- package/lib/esm/components/chart/Chart.d.ts +1 -1
- package/lib/esm/components/colorpicker/ColorPickerPopper.d.ts +1 -1
- package/lib/esm/components/colorpicker/GradientColorPicker.d.ts +2 -2
- package/lib/esm/components/colorpicker/GridColorPicker.d.ts +2 -2
- package/lib/esm/components/contentHeader/ContentHeader.d.ts +1 -1
- package/lib/esm/components/contentHeader/ContentHeader.d.ts.map +1 -1
- package/lib/esm/components/infobox/InfoBox.d.ts +1 -1
- package/lib/esm/components/infobox/InfoBox.d.ts.map +1 -1
- package/lib/esm/components/input/DateInput.d.ts +2 -2
- package/lib/esm/components/input/DateInput.d.ts.map +1 -1
- package/lib/esm/components/input/DateTimeInput.d.ts +2 -2
- package/lib/esm/components/input/DateTimeInput.d.ts.map +1 -1
- package/lib/esm/components/input/SelectWithSearch.d.ts +4 -1
- package/lib/esm/components/input/SelectWithSearch.d.ts.map +1 -1
- package/lib/esm/components/input/SelectWithSearch.js +25 -4
- package/lib/esm/components/input/SelectWithSearchAsync.d.ts +1 -1
- package/lib/esm/components/input/UrnInput.d.ts +1 -1
- package/lib/esm/components/input/ValidatedTextInput.d.ts +1 -1
- package/lib/esm/components/input/__tests__/DateInput.spec.js +4 -4
- package/lib/esm/components/input/__tests__/DateTimeInput.spec.js +1 -0
- package/lib/esm/components/input/__tests__/SelectWithSearchAsync.spec.js +3 -2
- package/lib/esm/components/link/RouteLink.d.ts +2 -2
- package/lib/esm/components/link/RouteLink.d.ts.map +1 -1
- package/lib/esm/components/multiMenu/MultiMenu.d.ts +1 -1
- package/lib/esm/components/multiMenu/components/MultiMenuItem.d.ts +1 -1
- package/lib/esm/components/pagination/Pagination.d.ts +1 -1
- package/lib/esm/components/pagination/__tests__/Pagination.spec.js +53 -53
- package/lib/esm/components/periodpicker/PeriodPicker.d.ts +2 -2
- package/lib/esm/components/periodpicker/PeriodPicker.d.ts.map +1 -1
- package/lib/esm/components/periodpicker/components/Inputs.d.ts +2 -2
- package/lib/esm/components/periodpicker/components/Inputs.d.ts.map +1 -1
- package/lib/esm/components/periodpicker/components/Menu.d.ts +2 -2
- package/lib/esm/components/periodpicker/components/Menu.d.ts.map +1 -1
- package/lib/esm/components/periodpicker/components/MonthPicker.d.ts +2 -2
- package/lib/esm/components/periodpicker/components/MonthPicker.d.ts.map +1 -1
- package/lib/esm/components/periodpicker/usePeriodName.d.ts +1 -1
- package/lib/esm/components/periodpicker/usePeriodName.d.ts.map +1 -1
- package/lib/esm/components/periodpicker/usePeriodName.js +1 -1
- package/lib/esm/components/prompt/Prompt.d.ts +2 -2
- package/lib/esm/components/prompt/Prompt.d.ts.map +1 -1
- package/lib/esm/components/reactable/Reactable.d.ts +1 -1
- package/lib/esm/components/reactable/helpers/ReactableTable.d.ts +6 -8
- package/lib/esm/components/reactable/helpers/ReactableTable.d.ts.map +1 -1
- package/lib/esm/components/reactable/helpers/ReactableTable.js +43 -26
- package/lib/esm/components/reactable/helpers/ReactableTableHeader.d.ts +2 -2
- package/lib/esm/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -1
- package/lib/esm/components/reactable/helpers/ReactableTableRow.d.ts +1 -1
- package/lib/esm/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +1 -1
- package/lib/esm/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +55 -63
- package/lib/esm/components/slider/Slider.d.ts +2 -2
- package/lib/esm/components/slider/Slider.d.ts.map +1 -1
- package/lib/esm/components/svg/SvgImage.d.ts +2 -2
- package/lib/esm/components/svg/SvgImage.d.ts.map +1 -1
- package/lib/esm/components/svg/utils/__tests__/getMutableNodeList.spec.js +1 -0
- package/lib/esm/components/tabs/RouteTabs.d.ts +1 -1
- package/lib/esm/components/tabs/RouteTabs.d.ts.map +1 -1
- package/lib/esm/components/tabs/RouteTabs.js +2 -2
- package/lib/esm/components/treeview/TreeView.d.ts +1 -1
- package/lib/esm/components/treeview/components/Node.d.ts +1 -1
- package/lib/esm/components/treeview/components/NodeInfo.d.ts +1 -1
- package/lib/esm/components/upload/FileUpload.d.ts +1 -1
- package/lib/esm/components/upload/ImageUpload.d.ts +1 -1
- package/lib/esm/modules/messageBox/messageBox.d.ts +2 -2
- package/lib/esm/modules/messageBox/messageBox.d.ts.map +1 -1
- package/lib/esm/src/__mocks__/i18n.d.ts +13 -0
- package/lib/esm/src/__mocks__/i18n.d.ts.map +1 -0
- package/lib/esm/src/__mocks__/i18n.js +20 -0
- package/lib/esm/src/components/chart/Chart.d.ts +38 -0
- package/lib/esm/src/components/chart/Chart.d.ts.map +1 -0
- package/lib/esm/src/components/chart/Chart.js +202 -0
- package/lib/esm/src/components/colorpicker/ColorPickerPopper.d.ts +24 -0
- package/lib/esm/src/components/colorpicker/ColorPickerPopper.d.ts.map +1 -0
- package/lib/esm/src/components/colorpicker/ColorPickerPopper.js +46 -0
- package/lib/esm/src/components/colorpicker/GradientColorPicker.d.ts +63 -0
- package/lib/esm/src/components/colorpicker/GradientColorPicker.d.ts.map +1 -0
- package/lib/esm/src/components/colorpicker/GradientColorPicker.js +125 -0
- package/lib/esm/src/components/colorpicker/GridColorPicker.d.ts +41 -0
- package/lib/esm/src/components/colorpicker/GridColorPicker.d.ts.map +1 -0
- package/lib/esm/src/components/colorpicker/GridColorPicker.js +30 -0
- package/lib/esm/src/components/contentHeader/ContentHeader.d.ts +25 -0
- package/lib/esm/src/components/contentHeader/ContentHeader.d.ts.map +1 -0
- package/lib/esm/src/components/contentHeader/ContentHeader.js +53 -0
- package/lib/esm/src/components/infobox/InfoBox.d.ts +22 -0
- package/lib/esm/src/components/infobox/InfoBox.d.ts.map +1 -0
- package/lib/esm/src/components/infobox/InfoBox.js +36 -0
- package/lib/esm/src/components/input/DateInput.d.ts +28 -0
- package/lib/esm/src/components/input/DateInput.d.ts.map +1 -0
- package/lib/esm/src/components/input/DateInput.js +157 -0
- package/lib/esm/src/components/input/DateTimeInput.d.ts +27 -0
- package/lib/esm/src/components/input/DateTimeInput.d.ts.map +1 -0
- package/lib/esm/src/components/input/DateTimeInput.js +50 -0
- package/lib/esm/src/components/input/SelectWithSearch.d.ts +65 -0
- package/lib/esm/src/components/input/SelectWithSearch.d.ts.map +1 -0
- package/lib/esm/src/components/input/SelectWithSearch.js +111 -0
- package/lib/esm/src/components/input/SelectWithSearchAsync.d.ts +58 -0
- package/lib/esm/src/components/input/SelectWithSearchAsync.d.ts.map +1 -0
- package/lib/esm/src/components/input/SelectWithSearchAsync.js +100 -0
- package/lib/esm/src/components/input/UrnInput.d.ts +22 -0
- package/lib/esm/src/components/input/UrnInput.d.ts.map +1 -0
- package/lib/esm/src/components/input/UrnInput.js +33 -0
- package/lib/esm/src/components/input/ValidatedTextInput.d.ts +35 -0
- package/lib/esm/src/components/input/ValidatedTextInput.d.ts.map +1 -0
- package/lib/esm/src/components/input/ValidatedTextInput.js +30 -0
- package/lib/esm/src/components/input/__tests__/DateInput.spec.d.ts +2 -0
- package/lib/esm/src/components/input/__tests__/DateInput.spec.d.ts.map +1 -0
- package/lib/esm/src/components/input/__tests__/DateInput.spec.js +85 -0
- package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.d.ts +2 -0
- package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.d.ts.map +1 -0
- package/lib/esm/src/components/input/__tests__/DateTimeInput.spec.js +13 -0
- package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.d.ts +2 -0
- package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.d.ts.map +1 -0
- package/lib/esm/src/components/input/__tests__/SelectWithSearchAsync.spec.js +44 -0
- package/lib/esm/src/components/link/RouteLink.d.ts +31 -0
- package/lib/esm/src/components/link/RouteLink.d.ts.map +1 -0
- package/lib/esm/src/components/link/RouteLink.js +55 -0
- package/lib/esm/src/components/multiMenu/MultiMenu.d.ts +27 -0
- package/lib/esm/src/components/multiMenu/MultiMenu.d.ts.map +1 -0
- package/lib/esm/src/components/multiMenu/MultiMenu.js +30 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuContext.d.ts +7 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuContext.d.ts.map +1 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuContext.js +5 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuItem.d.ts +14 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuItem.d.ts.map +1 -0
- package/lib/esm/src/components/multiMenu/components/MultiMenuItem.js +24 -0
- package/lib/esm/src/components/pagination/Pagination.d.ts +37 -0
- package/lib/esm/src/components/pagination/Pagination.d.ts.map +1 -0
- package/lib/esm/src/components/pagination/Pagination.js +114 -0
- package/lib/esm/src/components/pagination/__tests__/Pagination.spec.d.ts +2 -0
- package/lib/esm/src/components/pagination/__tests__/Pagination.spec.d.ts.map +1 -0
- package/lib/esm/src/components/pagination/__tests__/Pagination.spec.js +87 -0
- package/lib/esm/src/components/periodpicker/PeriodPicker.d.ts +23 -0
- package/lib/esm/src/components/periodpicker/PeriodPicker.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/PeriodPicker.js +11 -0
- package/lib/esm/src/components/periodpicker/components/Inputs.d.ts +12 -0
- package/lib/esm/src/components/periodpicker/components/Inputs.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/components/Inputs.js +59 -0
- package/lib/esm/src/components/periodpicker/components/Menu.d.ts +11 -0
- package/lib/esm/src/components/periodpicker/components/Menu.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/components/Menu.js +96 -0
- package/lib/esm/src/components/periodpicker/components/MonthPicker.d.ts +19 -0
- package/lib/esm/src/components/periodpicker/components/MonthPicker.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/components/MonthPicker.js +62 -0
- package/lib/esm/src/components/periodpicker/periods.d.ts +33 -0
- package/lib/esm/src/components/periodpicker/periods.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/periods.js +56 -0
- package/lib/esm/src/components/periodpicker/types.d.ts +5 -0
- package/lib/esm/src/components/periodpicker/types.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/types.js +1 -0
- package/lib/esm/src/components/periodpicker/usePeriodName.d.ts +7 -0
- package/lib/esm/src/components/periodpicker/usePeriodName.d.ts.map +1 -0
- package/lib/esm/src/components/periodpicker/usePeriodName.js +38 -0
- package/lib/esm/src/components/prompt/Prompt.d.ts +23 -0
- package/lib/esm/src/components/prompt/Prompt.d.ts.map +1 -0
- package/lib/esm/src/components/prompt/Prompt.js +31 -0
- package/lib/esm/src/components/prompt/withPrompt.d.ts +7 -0
- package/lib/esm/src/components/prompt/withPrompt.d.ts.map +1 -0
- package/lib/esm/src/components/prompt/withPrompt.js +33 -0
- package/lib/esm/src/components/reactable/Reactable.d.ts +38 -0
- package/lib/esm/src/components/reactable/Reactable.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/Reactable.js +18 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTable.d.ts +19 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTable.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTable.js +50 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.d.ts +9 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableFilterRow.js +57 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.d.ts +16 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableHeader.js +52 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableRow.d.ts +16 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableRow.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTableRow.js +56 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.d.ts +9 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/ReactableTextFilter.js +18 -0
- package/lib/esm/src/components/reactable/helpers/helper.d.ts +7 -0
- package/lib/esm/src/components/reactable/helpers/helper.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/helpers/helper.js +90 -0
- package/lib/esm/src/components/reactable/types.d.ts +38 -0
- package/lib/esm/src/components/reactable/types.d.ts.map +1 -0
- package/lib/esm/src/components/reactable/types.js +1 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts +69 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.d.ts.map +1 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/ReactableWithClientSidePagination.js +155 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.d.ts +2 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.d.ts.map +1 -0
- package/lib/esm/src/components/reactableWithClientSidePagination/__tests__/ReactableWithClientSidePagination.spec.js +130 -0
- package/lib/esm/src/components/slider/Slider.d.ts +30 -0
- package/lib/esm/src/components/slider/Slider.d.ts.map +1 -0
- package/lib/esm/src/components/slider/Slider.js +35 -0
- package/lib/esm/src/components/slider/useLimitStyling.d.ts +3 -0
- package/lib/esm/src/components/slider/useLimitStyling.d.ts.map +1 -0
- package/lib/esm/src/components/slider/useLimitStyling.js +49 -0
- package/lib/esm/src/components/svg/SvgImage.d.ts +12 -0
- package/lib/esm/src/components/svg/SvgImage.d.ts.map +1 -0
- package/lib/esm/src/components/svg/SvgImage.js +37 -0
- package/lib/esm/src/components/svg/storybookHelper.d.ts +7 -0
- package/lib/esm/src/components/svg/storybookHelper.d.ts.map +1 -0
- package/lib/esm/src/components/svg/storybookHelper.js +53 -0
- package/lib/esm/src/components/svg/types.d.ts +58 -0
- package/lib/esm/src/components/svg/types.d.ts.map +1 -0
- package/lib/esm/src/components/svg/types.js +1 -0
- package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.d.ts +2 -0
- package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/__tests__/getMutableNodeList.spec.js +24 -0
- package/lib/esm/src/components/svg/utils/createHyperlinkModification.d.ts +4 -0
- package/lib/esm/src/components/svg/utils/createHyperlinkModification.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/createHyperlinkModification.js +35 -0
- package/lib/esm/src/components/svg/utils/createPositionModification.d.ts +3 -0
- package/lib/esm/src/components/svg/utils/createPositionModification.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/createPositionModification.js +19 -0
- package/lib/esm/src/components/svg/utils/findConflicts.d.ts +2 -0
- package/lib/esm/src/components/svg/utils/findConflicts.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/findConflicts.js +23 -0
- package/lib/esm/src/components/svg/utils/getMutableNodeList.d.ts +3 -0
- package/lib/esm/src/components/svg/utils/getMutableNodeList.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/getMutableNodeList.js +12 -0
- package/lib/esm/src/components/svg/utils/getSvgElement.d.ts +3 -0
- package/lib/esm/src/components/svg/utils/getSvgElement.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/getSvgElement.js +10 -0
- package/lib/esm/src/components/svg/utils/renderSvg.d.ts +3 -0
- package/lib/esm/src/components/svg/utils/renderSvg.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/renderSvg.js +88 -0
- package/lib/esm/src/components/svg/utils/transformPositionModifications.d.ts +4 -0
- package/lib/esm/src/components/svg/utils/transformPositionModifications.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/transformPositionModifications.js +42 -0
- package/lib/esm/src/components/svg/utils/validateSvg.d.ts +3 -0
- package/lib/esm/src/components/svg/utils/validateSvg.d.ts.map +1 -0
- package/lib/esm/src/components/svg/utils/validateSvg.js +5 -0
- package/lib/esm/src/components/tabs/RouteTabs.d.ts +24 -0
- package/lib/esm/src/components/tabs/RouteTabs.d.ts.map +1 -0
- package/lib/esm/src/components/tabs/RouteTabs.js +67 -0
- package/lib/esm/src/components/treeview/TreeView.d.ts +50 -0
- package/lib/esm/src/components/treeview/TreeView.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/TreeView.js +104 -0
- package/lib/esm/src/components/treeview/components/Node.d.ts +37 -0
- package/lib/esm/src/components/treeview/components/Node.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/components/Node.js +111 -0
- package/lib/esm/src/components/treeview/components/NodeInfo.d.ts +25 -0
- package/lib/esm/src/components/treeview/components/NodeInfo.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/components/NodeInfo.js +64 -0
- package/lib/esm/src/components/treeview/constants.d.ts +6 -0
- package/lib/esm/src/components/treeview/constants.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/constants.js +6 -0
- package/lib/esm/src/components/treeview/treeutils.d.ts +59 -0
- package/lib/esm/src/components/treeview/treeutils.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/treeutils.js +158 -0
- package/lib/esm/src/components/treeview/types.d.ts +37 -0
- package/lib/esm/src/components/treeview/types.d.ts.map +1 -0
- package/lib/esm/src/components/treeview/types.js +1 -0
- package/lib/esm/src/components/upload/FileUpload.d.ts +67 -0
- package/lib/esm/src/components/upload/FileUpload.d.ts.map +1 -0
- package/lib/esm/src/components/upload/FileUpload.js +95 -0
- package/lib/esm/src/components/upload/ImageUpload.d.ts +21 -0
- package/lib/esm/src/components/upload/ImageUpload.d.ts.map +1 -0
- package/lib/esm/src/components/upload/ImageUpload.js +45 -0
- package/lib/esm/src/hoc/outsideClick.d.ts +4 -0
- package/lib/esm/src/hoc/outsideClick.d.ts.map +1 -0
- package/lib/esm/src/hoc/outsideClick.js +73 -0
- package/lib/esm/src/i18n/index.d.ts +16 -0
- package/lib/esm/src/i18n/index.d.ts.map +1 -0
- package/lib/esm/src/i18n/index.js +6 -0
- package/lib/esm/src/index.d.ts +52 -0
- package/lib/esm/src/index.d.ts.map +1 -0
- package/lib/esm/src/index.js +39 -0
- package/lib/esm/src/modules/messageBox/messageBox.d.ts +14 -0
- package/lib/esm/src/modules/messageBox/messageBox.d.ts.map +1 -0
- package/lib/esm/src/modules/messageBox/messageBox.js +56 -0
- package/lib/esm/src/modules/utils/nanoidGen.d.ts +2 -0
- package/lib/esm/src/modules/utils/nanoidGen.d.ts.map +1 -0
- package/lib/esm/src/modules/utils/nanoidGen.js +3 -0
- package/lib/esm/src/modules/utils/uuidGen.d.ts +2 -0
- package/lib/esm/src/modules/utils/uuidGen.d.ts.map +1 -0
- package/lib/esm/src/modules/utils/uuidGen.js +13 -0
- package/lib/esm/src/types/i18n.d.ts +5 -0
- package/lib/esm/src/types/i18n.d.ts.map +1 -0
- package/lib/esm/src/types/i18n.js +1 -0
- package/lib/esm/src/types/pagination.d.ts +19 -0
- package/lib/esm/src/types/pagination.d.ts.map +1 -0
- package/lib/esm/src/types/pagination.js +1 -0
- package/lib/esm/src/utils/dayjsLocales.d.ts +10 -0
- package/lib/esm/src/utils/dayjsLocales.d.ts.map +1 -0
- package/lib/esm/src/utils/dayjsLocales.js +12 -0
- package/lib/esm/src/utils/resolvePath.d.ts +2 -0
- package/lib/esm/src/utils/resolvePath.d.ts.map +1 -0
- package/lib/esm/src/utils/resolvePath.js +4 -0
- package/lib/esm/vite.config.d.mts +3 -0
- package/lib/esm/vite.config.d.mts.map +1 -0
- package/lib/esm/vite.config.mjs +9 -0
- package/lib/esm/vitest.setup.d.ts +3 -0
- package/lib/esm/vitest.setup.d.ts.map +1 -0
- package/lib/esm/vitest.setup.js +10 -0
- package/package.json +24 -54
|
@@ -28,7 +28,8 @@ export default class SelectWithSearch extends React.Component {
|
|
|
28
28
|
constructor() {
|
|
29
29
|
super(...arguments);
|
|
30
30
|
this.state = {
|
|
31
|
-
options: []
|
|
31
|
+
options: [],
|
|
32
|
+
inputValue: null
|
|
32
33
|
};
|
|
33
34
|
this.selectRef = React.createRef();
|
|
34
35
|
this.portalRoot = null;
|
|
@@ -71,7 +72,7 @@ export default class SelectWithSearch extends React.Component {
|
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
74
|
componentDidUpdate(prevProps) {
|
|
74
|
-
if (!isEqual(prevProps.options, this.props.options)) {
|
|
75
|
+
if (!isEqual(prevProps.options, this.props.options) || prevProps.freeForm !== this.props.freeForm) {
|
|
75
76
|
this.updateOptions();
|
|
76
77
|
}
|
|
77
78
|
}
|
|
@@ -83,8 +84,28 @@ export default class SelectWithSearch extends React.Component {
|
|
|
83
84
|
render() {
|
|
84
85
|
const { noResultsMessage, placeholder, value, onChange, clearable, loading, disabled } = this.props;
|
|
85
86
|
const { options } = this.state;
|
|
86
|
-
return (React.createElement(Select, { ref: this.selectRef, joinValues: true, name: "form-field-name", className: this.getContainerClasses().join(' '), classNamePrefix: "select-search", isClearable: clearable, noOptionsMessage: noResultsMessage ? () => noResultsMessage : undefined, options: options, value: value || null, onChange: onChange,
|
|
87
|
+
return (React.createElement(Select, { ref: this.selectRef, joinValues: true, name: "form-field-name", className: this.getContainerClasses().join(' '), classNamePrefix: "select-search", isClearable: clearable, noOptionsMessage: noResultsMessage ? () => noResultsMessage : undefined, options: options, value: value || null, onChange: onChange, onInputChange: (newValue) => {
|
|
88
|
+
if (this.props.freeForm && newValue) {
|
|
89
|
+
this.setState({ inputValue: newValue });
|
|
90
|
+
}
|
|
91
|
+
}, placeholder: placeholder,
|
|
87
92
|
// @ts-ignore
|
|
88
|
-
filterOption: this.filterOption, isLoading: loading, menuPortalTarget: this.portalRoot, isDisabled: disabled
|
|
93
|
+
filterOption: this.filterOption, isLoading: loading, menuPortalTarget: this.portalRoot, isDisabled: disabled, onBlur: () => {
|
|
94
|
+
if (this.props.freeForm && this.state.inputValue !== null) {
|
|
95
|
+
this.setState({ options: this.props.options });
|
|
96
|
+
this.setState({ inputValue: this.state.inputValue }, () => {
|
|
97
|
+
const newItem = {
|
|
98
|
+
type: 'item',
|
|
99
|
+
value: this.state.inputValue,
|
|
100
|
+
label: this.state.inputValue
|
|
101
|
+
};
|
|
102
|
+
this.setState((prevState) => ({
|
|
103
|
+
options: [newItem, ...prevState.options]
|
|
104
|
+
}));
|
|
105
|
+
this.state.inputValue = null;
|
|
106
|
+
onChange(newItem);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
} }));
|
|
89
110
|
}
|
|
90
111
|
}
|
|
@@ -52,7 +52,7 @@ export default class SelectWithSearchAsync<Item, ID extends string | number> ext
|
|
|
52
52
|
options: Array<any>;
|
|
53
53
|
}>;
|
|
54
54
|
handleChange: (item: SelectItem<ID> | null | undefined) => void;
|
|
55
|
-
render(): JSX.Element;
|
|
55
|
+
render(): React.JSX.Element;
|
|
56
56
|
}
|
|
57
57
|
export {};
|
|
58
58
|
//# sourceMappingURL=SelectWithSearchAsync.d.ts.map
|
|
@@ -16,7 +16,7 @@ export default class UrnInput extends React.Component<Props, State> {
|
|
|
16
16
|
state: State;
|
|
17
17
|
handleEdit: () => void;
|
|
18
18
|
handleChangeValue: (event: React.SyntheticEvent<HTMLInputElement>) => any;
|
|
19
|
-
render(): JSX.Element;
|
|
19
|
+
render(): React.JSX.Element;
|
|
20
20
|
}
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=UrnInput.d.ts.map
|
|
@@ -30,6 +30,6 @@ export default class ValidatedTextInput extends React.Component<Props> {
|
|
|
30
30
|
required: boolean;
|
|
31
31
|
};
|
|
32
32
|
handleChange: (e: React.SyntheticEvent<HTMLInputElement>) => void;
|
|
33
|
-
render(): JSX.Element;
|
|
33
|
+
render(): React.JSX.Element;
|
|
34
34
|
}
|
|
35
35
|
//# sourceMappingURL=ValidatedTextInput.d.ts.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
2
3
|
import dayjs from 'dayjs';
|
|
3
4
|
import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
|
|
4
5
|
import DateInput from '../DateInput';
|
|
5
|
-
jest.mock('i18next', () => ({ language: 'de' }));
|
|
6
6
|
const DateStateProvider = ({ children, initialValue }) => {
|
|
7
7
|
const [state, setState] = useState(initialValue);
|
|
8
8
|
return children(state, setState);
|
|
@@ -35,7 +35,7 @@ describe('DateInput.js', () => {
|
|
|
35
35
|
expect(screen.getByTestId('date-input')).toHaveClass('invalid');
|
|
36
36
|
});
|
|
37
37
|
it('should call onChange callback with parsed value of the input during the input is being changed when the value is valid', async () => {
|
|
38
|
-
const onChange =
|
|
38
|
+
const onChange = vi.fn();
|
|
39
39
|
await act(async () => {
|
|
40
40
|
render(React.createElement(DateInput, { value: new Date('2019-02-01').getTime(), onChange: onChange }));
|
|
41
41
|
});
|
|
@@ -46,7 +46,7 @@ describe('DateInput.js', () => {
|
|
|
46
46
|
expect(dayjs(currentValue).toISOString()).toEqual(dayjs('2019-02-02').toISOString());
|
|
47
47
|
});
|
|
48
48
|
it('should not call onChange callback while editing the input when the input value is invalid', async () => {
|
|
49
|
-
const onChange =
|
|
49
|
+
const onChange = vi.fn();
|
|
50
50
|
await act(async () => {
|
|
51
51
|
render(React.createElement(DateInput, { value: new Date('2019-02-01').getTime(), onChange: onChange }));
|
|
52
52
|
});
|
|
@@ -72,7 +72,7 @@ describe('DateInput.js', () => {
|
|
|
72
72
|
expect(screen.getByTestId('date-input')).toHaveValue('dateInput.invalidDate');
|
|
73
73
|
});
|
|
74
74
|
it('should call onChange callback with [null, true] when empty string is set to input field', async () => {
|
|
75
|
-
const onChange =
|
|
75
|
+
const onChange = vi.fn();
|
|
76
76
|
await act(async () => {
|
|
77
77
|
render(React.createElement(DateInput, { value: Date.now(), onChange: onChange }));
|
|
78
78
|
});
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
3
|
import SelectWithSearchAsync from '../SelectWithSearchAsync';
|
|
3
4
|
import { render, screen, waitFor } from '@testing-library/react';
|
|
4
5
|
// helper data
|
|
5
6
|
const obj1 = { id: 1, label: 'obj 1' };
|
|
6
7
|
const obj5 = { id: 5, label: 'obj 5' };
|
|
7
8
|
const content = [obj1, obj5];
|
|
8
|
-
const searchByQuery =
|
|
9
|
+
const searchByQuery = vi.fn(() => Promise.resolve({
|
|
9
10
|
content,
|
|
10
11
|
totalElements: 2,
|
|
11
12
|
totalPages: 1,
|
|
@@ -13,7 +14,7 @@ const searchByQuery = jest.fn(() => Promise.resolve({
|
|
|
13
14
|
size: 5,
|
|
14
15
|
sort: []
|
|
15
16
|
}));
|
|
16
|
-
const searchById =
|
|
17
|
+
const searchById = vi.fn((id) => Promise.resolve(content.find((item) => item.id === id)));
|
|
17
18
|
const noop = () => { };
|
|
18
19
|
describe('SelectWithSearchAsync.js', () => {
|
|
19
20
|
beforeEach(() => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { RouteComponentProps } from 'react-router-dom';
|
|
3
3
|
import { TranslationDescriptor } from '../../types/i18n';
|
|
4
4
|
declare type LocationShape = RouteComponentProps['location'];
|
|
@@ -26,6 +26,6 @@ export declare type Props = {
|
|
|
26
26
|
* RouteLink enables the possibility to add new links to existing routes.
|
|
27
27
|
* Those routes can also be accessed via `keyboardShortcut`
|
|
28
28
|
*/
|
|
29
|
-
export default function RouteLink({ to, confirm, className, title, children, keyboardShortcut, ...otherProps }: Props): JSX.Element;
|
|
29
|
+
export default function RouteLink({ to, confirm, className, title, children, keyboardShortcut, ...otherProps }: Props): React.JSX.Element;
|
|
30
30
|
export {};
|
|
31
31
|
//# sourceMappingURL=RouteLink.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteLink.d.ts","sourceRoot":"","sources":["../../../../src/components/link/RouteLink.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"RouteLink.d.ts","sourceRoot":"","sources":["../../../../src/components/link/RouteLink.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAC,mBAAmB,EAAa,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAEvD,aAAK,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;AAKrD,oBAAY,KAAK,GAAG;IACnB,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC;IAE3B,sBAAsB;IACtB,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAE9B,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;SAKK;IACL,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC;IAE1F,cAAc;IACd,QAAQ,CAAC,EAAE,GAAG,CAAC;IAEf,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAC,EAAE,KAAK,qBAkElH"}
|
|
@@ -21,7 +21,7 @@ declare type State = {
|
|
|
21
21
|
export default class MultiMenu extends React.Component<Props, State> {
|
|
22
22
|
state: State;
|
|
23
23
|
toggleMenu: () => void;
|
|
24
|
-
render(): JSX.Element;
|
|
24
|
+
render(): React.JSX.Element;
|
|
25
25
|
}
|
|
26
26
|
export {};
|
|
27
27
|
//# sourceMappingURL=MultiMenu.d.ts.map
|
|
@@ -9,6 +9,6 @@ export declare type Props = {
|
|
|
9
9
|
};
|
|
10
10
|
export default class MultiMenuItem extends React.PureComponent<Props> {
|
|
11
11
|
createClickHandler: (toggleMenu: () => void) => () => void;
|
|
12
|
-
render(): JSX.Element;
|
|
12
|
+
render(): React.JSX.Element;
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=MultiMenuItem.d.ts.map
|
|
@@ -31,7 +31,7 @@ export default class Pagination extends React.Component<Props, State> {
|
|
|
31
31
|
onChangeSize: (event: React.SyntheticEvent<HTMLSelectElement>) => void;
|
|
32
32
|
notifyPageChange: (page: number) => void;
|
|
33
33
|
handlePageInputChange: (event: React.SyntheticEvent<HTMLInputElement>) => void;
|
|
34
|
-
render(): JSX.Element;
|
|
34
|
+
render(): React.JSX.Element;
|
|
35
35
|
}
|
|
36
36
|
export {};
|
|
37
37
|
//# sourceMappingURL=Pagination.d.ts.map
|
|
@@ -1,87 +1,87 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
3
3
|
import Pagination from '../Pagination';
|
|
4
|
+
import { fireEvent, render, waitFor } from '@testing-library/react';
|
|
4
5
|
describe('Pagination.js', () => {
|
|
5
6
|
it('should disable all buttons when there is only one page', () => {
|
|
6
|
-
const
|
|
7
|
-
expect(
|
|
7
|
+
const { container } = render(React.createElement(Pagination, { page: 0, totalPages: 1, onChangePage: () => { } }));
|
|
8
|
+
expect(container.querySelectorAll('span.disabled')).toHaveLength(4);
|
|
8
9
|
});
|
|
9
10
|
it('should disable "prev" and "first" when the first page is selected', () => {
|
|
10
|
-
const
|
|
11
|
-
expect(
|
|
11
|
+
const { container } = render(React.createElement(Pagination, { page: 0, totalPages: 10, onChangePage: () => { } }));
|
|
12
|
+
expect(container.querySelectorAll('span.prev.disabled')).toHaveLength(2);
|
|
12
13
|
});
|
|
13
14
|
it('should disable "next" and "last" when the last page is selected', () => {
|
|
14
|
-
const
|
|
15
|
-
expect(
|
|
15
|
+
const { container } = render(React.createElement(Pagination, { page: 9, totalPages: 10, onChangePage: () => { } }));
|
|
16
|
+
expect(container.querySelectorAll('span.next.disabled')).toHaveLength(2);
|
|
16
17
|
});
|
|
17
18
|
it('should not disable buttons when on a page > 0 and < max pages', () => {
|
|
18
|
-
const
|
|
19
|
-
expect(
|
|
19
|
+
const { container } = render(React.createElement(Pagination, { page: 5, totalPages: 10, onChangePage: () => { } }));
|
|
20
|
+
expect(container.querySelectorAll('span.disabled')).toHaveLength(0);
|
|
20
21
|
});
|
|
21
22
|
it('should go to the first page when the user clicks "first"', () => {
|
|
22
|
-
const handleChangePage =
|
|
23
|
-
const
|
|
24
|
-
|
|
23
|
+
const handleChangePage = vi.fn();
|
|
24
|
+
const { container } = render(React.createElement(Pagination, { page: 5, totalPages: 10, onChangePage: handleChangePage }));
|
|
25
|
+
fireEvent.click(container.querySelectorAll('span.prev')[0]);
|
|
25
26
|
expect(handleChangePage).toHaveBeenCalledWith(0);
|
|
26
27
|
});
|
|
27
|
-
it('should go to the previous page when the user clicks "prev"', () => {
|
|
28
|
+
it('should go to the previous page when the user clicks "prev"', async () => {
|
|
28
29
|
const page = 2;
|
|
29
|
-
const handleChangePage =
|
|
30
|
-
const
|
|
31
|
-
|
|
30
|
+
const handleChangePage = vi.fn();
|
|
31
|
+
const { container } = render(React.createElement(Pagination, { page: page, totalPages: 10, onChangePage: handleChangePage }));
|
|
32
|
+
fireEvent.click(container.querySelectorAll('span.prev')[1]);
|
|
32
33
|
expect(handleChangePage).toHaveBeenCalledWith(page - 1);
|
|
33
34
|
});
|
|
34
35
|
it('should go to the next page when the user clicks "next"', () => {
|
|
35
|
-
const handleChangePage =
|
|
36
|
-
const
|
|
37
|
-
|
|
36
|
+
const handleChangePage = vi.fn();
|
|
37
|
+
const { container } = render(React.createElement(Pagination, { page: 2, totalPages: 10, onChangePage: handleChangePage }));
|
|
38
|
+
fireEvent.click(container.querySelectorAll('span.next')[0]);
|
|
38
39
|
expect(handleChangePage).toHaveBeenCalledWith(3);
|
|
39
40
|
});
|
|
40
41
|
it('should go to the last page when the user clicks "last"', () => {
|
|
41
|
-
const handleChangePage =
|
|
42
|
-
const
|
|
43
|
-
|
|
42
|
+
const handleChangePage = vi.fn();
|
|
43
|
+
const { container } = render(React.createElement(Pagination, { page: 5, totalPages: 10, onChangePage: handleChangePage }));
|
|
44
|
+
fireEvent.click(container.querySelectorAll('span.next')[1]);
|
|
44
45
|
expect(handleChangePage).toHaveBeenCalledWith(9);
|
|
45
46
|
});
|
|
46
47
|
it('should match snapshot', () => {
|
|
47
|
-
const PaginationWrapper1 =
|
|
48
|
-
const PaginationWrapper2 =
|
|
49
|
-
const PaginationWrapper3 =
|
|
48
|
+
const PaginationWrapper1 = render(React.createElement(Pagination, { page: 0, totalPages: 10, onChangePage: () => { } }));
|
|
49
|
+
const PaginationWrapper2 = render(React.createElement(Pagination, { page: 5, totalPages: 10, onChangePage: () => { } }));
|
|
50
|
+
const PaginationWrapper3 = render(React.createElement(Pagination, { page: 9, totalPages: 10, onChangePage: () => { } }));
|
|
50
51
|
expect(PaginationWrapper1).toMatchSnapshot();
|
|
51
52
|
expect(PaginationWrapper2).toMatchSnapshot();
|
|
52
53
|
expect(PaginationWrapper3).toMatchSnapshot();
|
|
53
54
|
});
|
|
54
55
|
describe('handlePageInputChange', () => {
|
|
55
|
-
it('should set page number if input is a correct number', () => {
|
|
56
|
-
const
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
56
|
+
it('should set page number if input is a correct number', async () => {
|
|
57
|
+
const handleChangePage = vi.fn();
|
|
58
|
+
const { getByRole } = render(React.createElement(Pagination, { page: 0, totalPages: 10, onChangePage: handleChangePage }));
|
|
59
|
+
const input = getByRole('textbox');
|
|
60
|
+
fireEvent.change(input, { target: { value: '4' } });
|
|
61
|
+
fireEvent.blur(input);
|
|
62
|
+
await waitFor(() => {
|
|
63
|
+
expect(handleChangePage).toHaveBeenCalledWith(3);
|
|
64
|
+
});
|
|
63
65
|
});
|
|
64
|
-
it('should not set page number if input is bigger than totalPages', () => {
|
|
65
|
-
const
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
66
|
+
it('should not set page number if input is bigger than totalPages', async () => {
|
|
67
|
+
const handleChangePage = vi.fn();
|
|
68
|
+
const { getByRole } = render(React.createElement(Pagination, { page: 0, totalPages: 10, onChangePage: handleChangePage }));
|
|
69
|
+
const input = getByRole('textbox');
|
|
70
|
+
fireEvent.change(input, { target: { value: '12' } });
|
|
71
|
+
fireEvent.blur(input);
|
|
72
|
+
await waitFor(() => {
|
|
73
|
+
expect(handleChangePage).not.toHaveBeenCalled();
|
|
74
|
+
});
|
|
73
75
|
});
|
|
74
|
-
it('should not set empty string as state
|
|
75
|
-
const
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
expect(PaginationWrapper.state('page')).toBe('');
|
|
84
|
-
expect(spy).not.toHaveBeenCalled();
|
|
76
|
+
it('should not set an empty string as page state', async () => {
|
|
77
|
+
const handleChangePage = vi.fn();
|
|
78
|
+
const { getByRole } = render(React.createElement(Pagination, { page: 0, totalPages: 10, onChangePage: handleChangePage }));
|
|
79
|
+
const input = getByRole('textbox');
|
|
80
|
+
fireEvent.change(input, { target: { value: '' } });
|
|
81
|
+
fireEvent.blur(input);
|
|
82
|
+
await waitFor(() => {
|
|
83
|
+
expect(handleChangePage).not.toHaveBeenCalled();
|
|
84
|
+
});
|
|
85
85
|
});
|
|
86
86
|
});
|
|
87
87
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { Period } from './types';
|
|
3
3
|
export declare type Props = {
|
|
4
4
|
/** Period from start- to endpoint */
|
|
@@ -19,5 +19,5 @@ export declare type Props = {
|
|
|
19
19
|
timezone?: string;
|
|
20
20
|
'data-testid'?: string;
|
|
21
21
|
};
|
|
22
|
-
export default function PeriodPicker({ period, onChange, inputsHiddenByDefault, menuHidden, readOnly, locale, defaultPeriodName, timezone, ...props }: Props): JSX.Element;
|
|
22
|
+
export default function PeriodPicker({ period, onChange, inputsHiddenByDefault, menuHidden, readOnly, locale, defaultPeriodName, timezone, ...props }: Props): React.JSX.Element;
|
|
23
23
|
//# sourceMappingURL=PeriodPicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeriodPicker.d.ts","sourceRoot":"","sources":["../../../../src/components/periodpicker/PeriodPicker.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"PeriodPicker.d.ts","sourceRoot":"","sources":["../../../../src/components/periodpicker/PeriodPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAK/B,oBAAY,KAAK,GAAG;IACnB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IAEf,mCAAmC;IACnC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC,6BAA6B;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,4DAA4D;IAC5D,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC,iCAAiC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACpC,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,UAAU,EACV,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,KAAK,qBAmBP"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { Period } from '../types';
|
|
3
3
|
declare type Props = {
|
|
4
4
|
period: Period;
|
|
@@ -7,6 +7,6 @@ declare type Props = {
|
|
|
7
7
|
locale?: string;
|
|
8
8
|
timezone?: string;
|
|
9
9
|
};
|
|
10
|
-
export default function Inputs({ period, onChange, readOnly, locale, timezone }: Props): JSX.Element;
|
|
10
|
+
export default function Inputs({ period, onChange, readOnly, locale, timezone }: Props): React.JSX.Element;
|
|
11
11
|
export {};
|
|
12
12
|
//# sourceMappingURL=Inputs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Inputs.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/Inputs.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Inputs.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/Inputs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAMhC,aAAK,KAAK,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAC,EAAE,KAAK,qBA2FnF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { Period } from '../types';
|
|
3
3
|
declare type Props = {
|
|
4
4
|
periodName: string | undefined;
|
|
@@ -6,6 +6,6 @@ declare type Props = {
|
|
|
6
6
|
onChange: (period: Period) => void;
|
|
7
7
|
onShowCustomPeriod: ((show: boolean) => void) | undefined;
|
|
8
8
|
};
|
|
9
|
-
export default function Menu({ onChange, onShowCustomPeriod, periodName, timezone }: Props): JSX.Element;
|
|
9
|
+
export default function Menu({ onChange, onShowCustomPeriod, periodName, timezone }: Props): React.JSX.Element;
|
|
10
10
|
export {};
|
|
11
11
|
//# sourceMappingURL=Menu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/Menu.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAMtC,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAgBhC,aAAK,KAAK,GAAG;IACZ,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,kBAAkB,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,QAAQ,EAAC,EAAE,KAAK,qBA2KvF"}
|
|
@@ -12,8 +12,8 @@ declare type State = {
|
|
|
12
12
|
};
|
|
13
13
|
export default class MonthPicker extends React.Component<Props, State> {
|
|
14
14
|
constructor(props: Props);
|
|
15
|
-
tdMonth: (month: number) => JSX.Element;
|
|
16
|
-
render(): JSX.Element;
|
|
15
|
+
tdMonth: (month: number) => React.JSX.Element;
|
|
16
|
+
render(): React.JSX.Element;
|
|
17
17
|
}
|
|
18
18
|
export {};
|
|
19
19
|
//# sourceMappingURL=MonthPicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonthPicker.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/MonthPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,aAAK,QAAQ,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,aAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,aAAK,KAAK,GAAG;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD,KAAK,EAAE,KAAK;IAWxB,OAAO,UAAW,MAAM,
|
|
1
|
+
{"version":3,"file":"MonthPicker.d.ts","sourceRoot":"","sources":["../../../../../src/components/periodpicker/components/MonthPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,aAAK,QAAQ,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,aAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,aAAK,KAAK,GAAG;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD,KAAK,EAAE,KAAK;IAWxB,OAAO,UAAW,MAAM,uBAiBtB;IAEF,MAAM;CAwDN"}
|
|
@@ -3,5 +3,5 @@ import { Period } from './types';
|
|
|
3
3
|
* This hook takes a period and tries to find its translation.
|
|
4
4
|
* @param period
|
|
5
5
|
*/
|
|
6
|
-
export default function usePeriodName(period: Period, timezone: string | undefined):
|
|
6
|
+
export default function usePeriodName(period: Period, timezone: string | undefined): string | undefined;
|
|
7
7
|
//# sourceMappingURL=usePeriodName.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePeriodName.d.ts","sourceRoot":"","sources":["../../../../src/components/periodpicker/usePeriodName.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAgB/B;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"usePeriodName.d.ts","sourceRoot":"","sources":["../../../../src/components/periodpicker/usePeriodName.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAgB/B;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,sBAoCjF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useTranslation } from '
|
|
1
|
+
import { useTranslation } from '../../i18n';
|
|
2
2
|
import { createCurrentMonth, createCurrentWeek, createLastXDays, createToday, createWholeDay, createWholeMonth, createYesterday, periodToDays } from './periods';
|
|
3
3
|
function compare(period1, period2) {
|
|
4
4
|
return period1.tsStart === period2.tsStart && period1.tsEnd === period2.tsEnd;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { TranslationDescriptor } from '../../types/i18n';
|
|
3
3
|
export declare type Props = {
|
|
4
4
|
/** Title of the Prompt's content */
|
|
@@ -19,5 +19,5 @@ export declare type Props = {
|
|
|
19
19
|
/**
|
|
20
20
|
* This component should not be used directly, instead use `@withPrompt` to inject a promise-based prompt method
|
|
21
21
|
*/
|
|
22
|
-
export default function Prompt({ title, message, onAccept, onCancel, inputPlaceholder, cancelButtonLabel, acceptButtonLabel }: Props): JSX.Element;
|
|
22
|
+
export default function Prompt({ title, message, onAccept, onCancel, inputPlaceholder, cancelButtonLabel, acceptButtonLabel }: Props): React.JSX.Element;
|
|
23
23
|
//# sourceMappingURL=Prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Prompt.d.ts","sourceRoot":"","sources":["../../../../src/components/prompt/Prompt.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Prompt.d.ts","sourceRoot":"","sources":["../../../../src/components/prompt/Prompt.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAKzD,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAEvD,oBAAY,KAAK,GAAG;IACnB,oCAAoC;IACpC,KAAK,EAAE,qBAAqB,CAAC;IAE7B,wCAAwC;IACxC,OAAO,EAAE,qBAAqB,CAAC;IAE/B,cAAc;IACd,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjC,cAAc;IACd,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;IAEvC,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAE1C,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAE1C,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACzC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC9B,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,EAAE,KAAK,qBAiEP"}
|
|
@@ -33,6 +33,6 @@ export declare type Props<T, ID extends string | number | undefined | null = any
|
|
|
33
33
|
* Each column can also be extended to be sortable and/or filterable
|
|
34
34
|
*/
|
|
35
35
|
export default class Reactable<T = any, ID extends string | number | undefined | null = any> extends React.Component<Props<T, ID>> {
|
|
36
|
-
render(): JSX.Element;
|
|
36
|
+
render(): React.JSX.Element;
|
|
37
37
|
}
|
|
38
38
|
//# sourceMappingURL=Reactable.d.ts.map
|
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { ReactableColumnDef, ReactableRowDef, ReactableFilterSettings } from '../types';
|
|
3
3
|
import { Pageable, PaginationSettings, SortDirection } from '../../../types/pagination';
|
|
4
4
|
declare type Props<T, ID extends string | number | undefined | null> = {
|
|
5
|
-
columnDefs:
|
|
6
|
-
uniqueItemKey: (
|
|
5
|
+
columnDefs: ReactableColumnDef<T>[];
|
|
6
|
+
uniqueItemKey: (item: T) => ID;
|
|
7
7
|
paginationSettings: PaginationSettings;
|
|
8
8
|
onSort: (property: string, direction: SortDirection) => void;
|
|
9
9
|
onFilter?: (filterSettings: ReactableFilterSettings) => void;
|
|
10
|
-
pageable
|
|
10
|
+
pageable?: Pageable<T> | null;
|
|
11
11
|
isLoading: boolean;
|
|
12
12
|
rowDef?: ReactableRowDef<T>;
|
|
13
13
|
clickable?: boolean;
|
|
14
14
|
messageWhenEmpty?: string;
|
|
15
15
|
'data-testid'?: string;
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
export {};
|
|
17
|
+
declare const ReactableTable: <T, ID extends string | number | null | undefined>({ columnDefs, uniqueItemKey, paginationSettings, onSort, onFilter, pageable, isLoading, rowDef, clickable, messageWhenEmpty, "data-testid": testId }: Props<T, ID>) => React.JSX.Element;
|
|
18
|
+
export default ReactableTable;
|
|
21
19
|
//# sourceMappingURL=ReactableTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactableTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/reactable/helpers/ReactableTable.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ReactableTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/reactable/helpers/ReactableTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAQzD,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAE,uBAAuB,EAAC,MAAM,UAAU,CAAC;AACtF,OAAO,EAAC,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAGtF,aAAK,KAAK,CAAC,CAAC,EAAE,EAAE,SAAS,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,IAAI;IAC9D,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7D,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAC7D,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,QAAA,MAAM,cAAc,6OAgHnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -1,33 +1,50 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React, { useRef, useEffect, useState } from 'react';
|
|
2
2
|
import { Trans } from '../../../i18n';
|
|
3
3
|
import cx from 'classnames';
|
|
4
|
-
import { SpinnerContainer } from '@deviceinsight/ng-ui-basic-components';
|
|
4
|
+
import { Button, Modal, SpinnerContainer } from '@deviceinsight/ng-ui-basic-components';
|
|
5
5
|
import ReactableTableRow from './ReactableTableRow';
|
|
6
6
|
import ReactableTableHeader from './ReactableTableHeader';
|
|
7
7
|
import ReactableTableFilterRow from './ReactableTableFilterRow';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
8
|
+
import { readAccountObject, writeAccountObject } from '@deviceinsight/ng-ui-api-client';
|
|
9
|
+
const ReactableTable = ({ columnDefs, uniqueItemKey, paginationSettings, onSort, onFilter, pageable, isLoading, rowDef, clickable, messageWhenEmpty, 'data-testid': testId }) => {
|
|
10
|
+
const containerRef = useRef(null);
|
|
11
|
+
const tableRef = useRef(null);
|
|
12
|
+
const [showHorizontalScrollingAdvice, setShowHorizontalScrollingAdvice] = useState(true);
|
|
13
|
+
const HIDE_SCROLLING_ADVICE_PATH = 'uiConfigurations/hidescrollingadvice';
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
readAccountObject(HIDE_SCROLLING_ADVICE_PATH).then((value) => setShowHorizontalScrollingAdvice(value === undefined ? false : !value));
|
|
16
|
+
}, []);
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
const updateScrollingAdvice = () => {
|
|
19
|
+
if (containerRef.current && tableRef.current) {
|
|
20
|
+
setShowHorizontalScrollingAdvice(showHorizontalScrollingAdvice && tableRef.current.scrollWidth > containerRef.current.offsetWidth);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
window.addEventListener('resize', updateScrollingAdvice);
|
|
24
|
+
return () => window.removeEventListener('resize', updateScrollingAdvice);
|
|
25
|
+
}, [pageable, columnDefs, showHorizontalScrollingAdvice]);
|
|
26
|
+
const showFilterRow = columnDefs.some((col) => col.filterable);
|
|
27
|
+
return (React.createElement(SpinnerContainer, { show: isLoading },
|
|
28
|
+
React.createElement("div", { ref: containerRef, className: "di reactable scroll-x" },
|
|
29
|
+
showHorizontalScrollingAdvice && (React.createElement(Modal, { className: "scroll-horizontally-advice", header: React.createElement(Trans, { i18nKey: "reactable.scrollHorizontally.advice" }, "SHIFT + mouse wheel to scroll horizontally"), content: React.createElement("div", { className: "scroll-horizontally-advice-buttons" },
|
|
30
|
+
React.createElement(Button, { primary: true, onClick: async () => {
|
|
31
|
+
await writeAccountObject(HIDE_SCROLLING_ADVICE_PATH, true);
|
|
32
|
+
setShowHorizontalScrollingAdvice(false);
|
|
33
|
+
} },
|
|
34
|
+
React.createElement(Trans, { i18nKey: "reactable.scrollHorizontally.neverShowAgain" }, "Never show again")),
|
|
35
|
+
React.createElement(Button, { onClick: () => setShowHorizontalScrollingAdvice(false) },
|
|
36
|
+
React.createElement(Trans, { i18nKey: "reactable.scrollHorizontally.ok" }, "OK"))), width: '40%' })),
|
|
37
|
+
React.createElement("table", { ref: tableRef, className: cx('di reactable sortable hoverable', { selectable: clickable }), "data-testid": testId },
|
|
38
|
+
React.createElement("thead", null,
|
|
39
|
+
React.createElement(ReactableTableHeader, { columnDefs: columnDefs, paginationSettings: paginationSettings, onSort: onSort })),
|
|
40
|
+
React.createElement("tbody", null,
|
|
41
|
+
onFilter && showFilterRow && (React.createElement(ReactableTableFilterRow, { columnDefs: columnDefs, onFilter: onFilter })),
|
|
42
|
+
pageable?.content.length
|
|
43
|
+
? pageable.content
|
|
44
|
+
.slice(0, paginationSettings.size)
|
|
45
|
+
.map((item) => (React.createElement(ReactableTableRow, { key: uniqueItemKey(item), columnDefs: columnDefs, item: item, rowDef: rowDef })))
|
|
46
|
+
: !isLoading && (React.createElement("tr", null,
|
|
30
47
|
React.createElement("td", { colSpan: columnDefs.length },
|
|
31
48
|
React.createElement(Trans, { i18nKey: messageWhenEmpty ?? 'reactable.noEntriesFound' }, "No entries found")))))))));
|
|
32
|
-
|
|
33
|
-
|
|
49
|
+
};
|
|
50
|
+
export default ReactableTable;
|