@redhat-cloud-services/frontend-components 4.0.0 → 4.0.2
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/Ansible/Ansible.js +1 -1
- package/Ansible/Ansible.js.map +1 -1
- package/Ansible/ansible.css +3 -3
- package/Ansible/ansible.scss +1 -1
- package/AsyncComponent/index.d.ts +2 -2
- package/AsyncComponent/index.js +1 -1
- package/AsyncComponent/index.js.map +1 -1
- package/Battery/Battery.d.ts +1 -1
- package/Battery/Battery.js +2 -2
- package/Battery/Battery.js.map +1 -1
- package/Battery/battery.css +5 -5
- package/Battery/battery.scss +1 -1
- package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
- package/Breadcrumbs/Breadcrumbs.js +1 -1
- package/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/Breadcrumbs/Breadcrumbs.spec.ct.js +6 -9
- package/Breadcrumbs/Breadcrumbs.spec.ct.js.map +1 -1
- package/Breadcrumbs/ConnectedBreadcrumbs.js.map +1 -1
- package/BulkSelect/BulkSelect.d.ts +4 -4
- package/BulkSelect/BulkSelect.js +19 -4
- package/BulkSelect/BulkSelect.js.map +1 -1
- package/BulkSelect/BulkSelect.spec.ct.js +16 -20
- package/BulkSelect/BulkSelect.spec.ct.js.map +1 -1
- package/BulkSelect/bulk-select.css +2 -2
- package/BulkSelect/bulk-select.scss +2 -2
- package/ConditionalFilter/CheckboxFilter.d.ts +2 -3
- package/ConditionalFilter/CheckboxFilter.js +45 -15
- package/ConditionalFilter/CheckboxFilter.js.map +1 -1
- package/ConditionalFilter/CheckboxFilter.spec.ct.js +13 -13
- package/ConditionalFilter/CheckboxFilter.spec.ct.js.map +1 -1
- package/ConditionalFilter/ConditionalFilter.d.ts +12 -22
- package/ConditionalFilter/ConditionalFilter.js +25 -36
- package/ConditionalFilter/ConditionalFilter.js.map +1 -1
- package/ConditionalFilter/ConditionalFilter.spec.ct.js +17 -18
- package/ConditionalFilter/ConditionalFilter.spec.ct.js.map +1 -1
- package/ConditionalFilter/GroupFilter.d.ts +33 -15
- package/ConditionalFilter/GroupFilter.js +26 -30
- package/ConditionalFilter/GroupFilter.js.map +1 -1
- package/ConditionalFilter/GroupFilter.spec.ct.js +11 -11
- package/ConditionalFilter/GroupFilter.spec.ct.js.map +1 -1
- package/ConditionalFilter/RadioFilter.d.ts +2 -3
- package/ConditionalFilter/RadioFilter.js +37 -8
- package/ConditionalFilter/RadioFilter.js.map +1 -1
- package/ConditionalFilter/RadioFilter.spec.ct.js +16 -16
- package/ConditionalFilter/RadioFilter.spec.ct.js.map +1 -1
- package/ConditionalFilter/TextFilter.d.ts +17 -9
- package/ConditionalFilter/TextFilter.js +9 -18
- package/ConditionalFilter/TextFilter.js.map +1 -1
- package/ConditionalFilter/TextFilter.spec.ct.js +6 -6
- package/ConditionalFilter/TextFilter.spec.ct.js.map +1 -1
- package/ConditionalFilter/conditional-filter.css +18 -18
- package/ConditionalFilter/conditional-filter.scss +18 -18
- package/ConditionalFilter/conditionalFilterConstants.d.ts +4 -9
- package/ConditionalFilter/conditionalFilterConstants.js +1 -5
- package/ConditionalFilter/conditionalFilterConstants.js.map +1 -1
- package/ConditionalFilter/group-filter.css +9 -12
- package/ConditionalFilter/group-filter.scss +9 -12
- package/ConditionalFilter/groupFilterConstants.d.ts +48 -57
- package/ConditionalFilter/groupFilterConstants.js +22 -38
- package/ConditionalFilter/groupFilterConstants.js.map +1 -1
- package/ConditionalFilter/groupType.d.ts +9 -8
- package/ConditionalFilter/groupType.js +8 -9
- package/ConditionalFilter/groupType.js.map +1 -1
- package/ConditionalFilter/index.d.ts +7 -12
- package/ConditionalFilter/index.js +2 -3
- package/ConditionalFilter/index.js.map +1 -1
- package/CullingInfo/CullingInformation.css +4 -4
- package/CullingInfo/CullingInformation.d.ts +1 -1
- package/CullingInfo/CullingInformation.js +4 -4
- package/CullingInfo/CullingInformation.js.map +1 -1
- package/CullingInfo/CullingInformation.scss +4 -4
- package/CullingInfo/utils.d.ts +3 -3
- package/Dark/Dark.d.ts +1 -1
- package/Dark/Dark.js +1 -1
- package/Dark/Dark.js.map +1 -1
- package/Dark/DarkContext.d.ts +1 -1
- package/DateFormat/helper.d.ts +3 -3
- package/DateFormat/helper.js +1 -1
- package/DateFormat/helper.js.map +1 -1
- package/DownloadButton/DownloadButton.d.ts +1 -1
- package/DownloadButton/DownloadButton.js +15 -2
- package/DownloadButton/DownloadButton.js.map +1 -1
- package/DownloadButton/DownloadButton.spec.ct.js +9 -12
- package/DownloadButton/DownloadButton.spec.ct.js.map +1 -1
- package/EmptyTable/EmptyTable.css +2 -2
- package/EmptyTable/EmptyTable.scss +2 -2
- package/ErrorBoundary/ErrorBoundary.css +3 -3
- package/ErrorBoundary/ErrorBoundary.d.ts +2 -2
- package/ErrorBoundary/ErrorBoundary.js +12 -1
- package/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/ErrorBoundary/ErrorBoundary.scss +3 -3
- package/ErrorBoundary/ErrorStack.js +14 -3
- package/ErrorBoundary/ErrorStack.js.map +1 -1
- package/ErrorState/DefaultErrorMessage.d.ts +1 -1
- package/ErrorState/DefaultErrorMessage.js +12 -1
- package/ErrorState/DefaultErrorMessage.js.map +1 -1
- package/ErrorState/ErrorState.js +1 -1
- package/ErrorState/ErrorState.js.map +1 -1
- package/ErrorState/error-state.css +2 -2
- package/ErrorState/error-state.scss +3 -3
- package/FilterChips/FilterChips.d.ts +3 -3
- package/FilterChips/FilterChips.js +5 -5
- package/FilterChips/FilterChips.js.map +1 -1
- package/FilterChips/filter-chips.css +2 -6
- package/FilterChips/filter-chips.scss +2 -6
- package/FilterHooks/constants.d.ts +8 -8
- package/FilterHooks/constants.js +1 -1
- package/FilterHooks/constants.js.map +1 -1
- package/FilterHooks/tagFilterHook.css +3 -3
- package/FilterHooks/tagFilterHook.d.ts +1 -1
- package/FilterHooks/tagFilterHook.js +1 -1
- package/FilterHooks/tagFilterHook.js.map +1 -1
- package/FilterHooks/tagFilterHook.scss +3 -3
- package/Filters/FilterDropdown.d.ts +7 -8
- package/Filters/FilterDropdown.js +4 -5
- package/Filters/FilterDropdown.js.map +1 -1
- package/Filters/FilterInput.js +3 -6
- package/Filters/FilterInput.js.map +1 -1
- package/Filters/filter-dropdown.css +2 -2
- package/Filters/filter-dropdown.scss +1 -1
- package/Input/Input.spec.ct.js +7 -11
- package/Input/Input.spec.ct.js.map +1 -1
- package/Input/package.json +1 -0
- package/InsightsLabel/InsightsLabel.js +1 -1
- package/InsightsLabel/InsightsLabel.js.map +1 -1
- package/InsightsLink/InsightsLink.d.ts +1 -1
- package/InsightsLink/InsightsLink.js.map +1 -1
- package/InvalidObject/InvalidObject.js +1 -1
- package/InvalidObject/InvalidObject.js.map +1 -1
- package/InvalidObject/icon-404.js +12 -1
- package/InvalidObject/icon-404.js.map +1 -1
- package/Inventory/AppInfo.d.ts +2 -2
- package/Inventory/AppInfo.js +2 -2
- package/Inventory/AppInfo.js.map +1 -1
- package/Inventory/DetailWrapper.d.ts +2 -2
- package/Inventory/DetailWrapper.js +2 -2
- package/Inventory/DetailWrapper.js.map +1 -1
- package/Inventory/InventoryDetail.d.ts +2 -2
- package/Inventory/InventoryDetail.js +2 -2
- package/Inventory/InventoryDetail.js.map +1 -1
- package/Inventory/InventoryDetailHead.d.ts +2 -2
- package/Inventory/InventoryDetailHead.js +2 -2
- package/Inventory/InventoryDetailHead.js.map +1 -1
- package/Inventory/InventoryTable.d.ts +2 -2
- package/Inventory/InventoryTable.js +2 -2
- package/Inventory/InventoryTable.js.map +1 -1
- package/Inventory/TagWithDialog.d.ts +2 -2
- package/Inventory/TagWithDialog.js +2 -2
- package/Inventory/TagWithDialog.js.map +1 -1
- package/Inventory/WithHistory.d.ts +2 -2
- package/Main/Main.d.ts +2 -2
- package/Main/Main.js +1 -1
- package/Main/Main.js.map +1 -1
- package/Main/main.css +2 -2
- package/Main/main.scss +2 -2
- package/Maintenance/Maintenance.js +1 -1
- package/Maintenance/Maintenance.js.map +1 -1
- package/Maintenance/maintenance.css +4 -4
- package/Maintenance/maintenance.scss +4 -4
- package/NoRegisteredSystems/NoRegisteredSystems.js +12 -1
- package/NoRegisteredSystems/NoRegisteredSystems.js.map +1 -1
- package/NotAuthorized/NotAuthorized.css +1 -1
- package/NotAuthorized/NotAuthorized.d.ts +1 -0
- package/NotAuthorized/NotAuthorized.js +4 -3
- package/NotAuthorized/NotAuthorized.js.map +1 -1
- package/NotAuthorized/NotAuthorized.scss +1 -1
- package/NotConnected/NotConnected.js +12 -1
- package/NotConnected/NotConnected.js.map +1 -1
- package/OpenSourceBadge/OpenSourceBadge.js +12 -1
- package/OpenSourceBadge/OpenSourceBadge.js.map +1 -1
- package/Ouia/WithOuia.d.ts +2 -2
- package/Ouia/WithOuia.js.map +1 -1
- package/Ouia/index.d.ts +3 -6
- package/Ouia/index.js.map +1 -1
- package/PageHeader/PageHeader.d.ts +1 -1
- package/PageHeader/PageHeader.js +2 -2
- package/PageHeader/PageHeader.js.map +1 -1
- package/PageHeader/PageHeaderTitle.js +12 -1
- package/PageHeader/PageHeaderTitle.js.map +1 -1
- package/PageHeader/page-header.css +2 -2
- package/PageHeader/page-header.scss +4 -4
- package/Pagination/Pagination.spec.ct.js +6 -10
- package/Pagination/Pagination.spec.ct.js.map +1 -1
- package/Pagination/PaginationMenu.d.ts +1 -1
- package/Pagination/package.json +1 -0
- package/Pagination/pagination.css +609 -0
- package/Pagination/pagination.scss +14 -0
- package/PrimaryToolbar/Actions.d.ts +5 -5
- package/PrimaryToolbar/Actions.js +8 -7
- package/PrimaryToolbar/Actions.js.map +1 -1
- package/PrimaryToolbar/Actions.spec.ct.js +11 -14
- package/PrimaryToolbar/Actions.spec.ct.js.map +1 -1
- package/PrimaryToolbar/PrimaryToolbar.d.ts +2 -2
- package/PrimaryToolbar/PrimaryToolbar.js +5 -9
- package/PrimaryToolbar/PrimaryToolbar.js.map +1 -1
- package/PrimaryToolbar/PrimaryToolbar.spec.ct.js +16 -20
- package/PrimaryToolbar/PrimaryToolbar.spec.ct.js.map +1 -1
- package/PrimaryToolbar/SortBy.d.ts +2 -2
- package/PrimaryToolbar/SortBy.js +12 -1
- package/PrimaryToolbar/SortBy.js.map +1 -1
- package/PrimaryToolbar/SortBy.spec.ct.js +7 -10
- package/PrimaryToolbar/SortBy.spec.ct.js.map +1 -1
- package/PrimaryToolbar/primary-toolbar.css +2 -2
- package/PrimaryToolbar/primary-toolbar.scss +2 -2
- package/RBACProvider/RBACProvider.d.ts +3 -3
- package/RBACProvider/RBACProvider.js +7 -4
- package/RBACProvider/RBACProvider.js.map +1 -1
- package/Reboot/reboot.css +1 -1
- package/Reboot/reboot.scss +1 -1
- package/Section/Section.js +1 -1
- package/Section/Section.js.map +1 -1
- package/Section/section.css +1 -1
- package/Shield/Shield.d.ts +2 -2
- package/Shield/Shield.js +4 -3
- package/Shield/Shield.js.map +1 -1
- package/Shield/consts.js.map +1 -1
- package/SimpleTableFilter/SimpleTableFilter.d.ts +8 -7
- package/SimpleTableFilter/SimpleTableFilter.js +14 -15
- package/SimpleTableFilter/SimpleTableFilter.js.map +1 -1
- package/SimpleTableFilter/simple-table-filter.css +15 -0
- package/SimpleTableFilter/simple-table-filter.scss +12 -0
- package/Skeleton/Skeleton.d.ts +1 -1
- package/Skeleton/skeleton.css +7 -7
- package/Skeleton/skeleton.scss +7 -7
- package/SkeletonTable/SkeletonTable.d.ts +16 -10
- package/SkeletonTable/SkeletonTable.js +41 -11
- package/SkeletonTable/SkeletonTable.js.map +1 -1
- package/Spinner/Spinner.js +1 -1
- package/Spinner/Spinner.js.map +1 -1
- package/Spinner/spinner.css +2 -2
- package/Spinner/spinner.scss +2 -2
- package/TabLayout/TabLayout.d.ts +2 -2
- package/TabLayout/TabLayout.js +1 -1
- package/TabLayout/TabLayout.js.map +1 -1
- package/TabLayout/tab-layout.css +4 -4
- package/TabLayout/tab-layout.scss +4 -4
- package/TableToolbar/TableToolbar.css +5 -5
- package/TableToolbar/TableToolbar.js +1 -1
- package/TableToolbar/TableToolbar.js.map +1 -1
- package/TableToolbar/TableToolbar.scss +5 -5
- package/TagCount/TagCount.js +1 -1
- package/TagCount/TagCount.js.map +1 -1
- package/TagCount/tagCount.css +1 -1
- package/TagCount/tagCount.scss +1 -1
- package/TagModal/TableWithFilter.d.ts +2 -3
- package/TagModal/TableWithFilter.js +4 -4
- package/TagModal/TableWithFilter.js.map +1 -1
- package/TagModal/TagModal.d.ts +5 -8
- package/TagModal/TagModal.js +6 -6
- package/TagModal/TagModal.js.map +1 -1
- package/TagModal/tagModal.css +1 -1
- package/TagModal/tagModal.scss +1 -1
- package/TreeTable/decorator.d.ts +2 -2
- package/TreeTable/decorator.js +2 -2
- package/TreeTable/decorator.js.map +1 -1
- package/TreeTable/helpers.d.ts +1 -1
- package/TreeTable/styles.css +116 -116
- package/TreeTable/styles.scss +49 -49
- package/Truncate/Truncate.js +5 -5
- package/Truncate/Truncate.js.map +1 -1
- package/Unavailable/Unavailable.css +1 -1
- package/Unavailable/Unavailable.js +12 -1
- package/Unavailable/Unavailable.js.map +1 -1
- package/Unavailable/Unavailable.scss +1 -1
- package/cypress/cypress.webpack.config.js +57 -0
- package/cypress/fixtures/example.json +5 -0
- package/cypress/plugins/index.js +30 -0
- package/cypress/support/commands.js +25 -0
- package/cypress/support/index.js +21 -0
- package/cypress.json +9 -0
- package/esm/Ansible/Ansible.js +1 -1
- package/esm/Ansible/Ansible.js.map +1 -1
- package/esm/Ansible/ansible.css +3 -3
- package/esm/Ansible/ansible.scss +1 -1
- package/esm/AsyncComponent/index.js +2 -3
- package/esm/AsyncComponent/index.js.map +1 -1
- package/esm/Battery/Battery.js +2 -2
- package/esm/Battery/Battery.js.map +1 -1
- package/esm/Battery/battery.css +5 -5
- package/esm/Battery/battery.scss +1 -1
- package/esm/Breadcrumbs/Breadcrumbs.js +2 -2
- package/esm/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/esm/Breadcrumbs/Breadcrumbs.spec.ct.js +6 -6
- package/esm/Breadcrumbs/Breadcrumbs.spec.ct.js.map +1 -1
- package/esm/Breadcrumbs/ConnectedBreadcrumbs.js.map +1 -1
- package/esm/BulkSelect/BulkSelect.js +21 -9
- package/esm/BulkSelect/BulkSelect.js.map +1 -1
- package/esm/BulkSelect/BulkSelect.spec.ct.js +16 -17
- package/esm/BulkSelect/BulkSelect.spec.ct.js.map +1 -1
- package/esm/BulkSelect/bulk-select.css +2 -2
- package/esm/BulkSelect/bulk-select.scss +2 -2
- package/esm/ConditionalFilter/CheckboxFilter.js +25 -20
- package/esm/ConditionalFilter/CheckboxFilter.js.map +1 -1
- package/esm/ConditionalFilter/CheckboxFilter.spec.ct.js +13 -13
- package/esm/ConditionalFilter/CheckboxFilter.spec.ct.js.map +1 -1
- package/esm/ConditionalFilter/ConditionalFilter.js +28 -43
- package/esm/ConditionalFilter/ConditionalFilter.js.map +1 -1
- package/esm/ConditionalFilter/ConditionalFilter.spec.ct.js +17 -18
- package/esm/ConditionalFilter/ConditionalFilter.spec.ct.js.map +1 -1
- package/esm/ConditionalFilter/GroupFilter.js +31 -42
- package/esm/ConditionalFilter/GroupFilter.js.map +1 -1
- package/esm/ConditionalFilter/GroupFilter.spec.ct.js +11 -11
- package/esm/ConditionalFilter/GroupFilter.spec.ct.js.map +1 -1
- package/esm/ConditionalFilter/RadioFilter.js +16 -12
- package/esm/ConditionalFilter/RadioFilter.js.map +1 -1
- package/esm/ConditionalFilter/RadioFilter.spec.ct.js +16 -16
- package/esm/ConditionalFilter/RadioFilter.spec.ct.js.map +1 -1
- package/esm/ConditionalFilter/TextFilter.js +13 -20
- package/esm/ConditionalFilter/TextFilter.js.map +1 -1
- package/esm/ConditionalFilter/TextFilter.spec.ct.js +6 -6
- package/esm/ConditionalFilter/TextFilter.spec.ct.js.map +1 -1
- package/esm/ConditionalFilter/conditional-filter.css +18 -18
- package/esm/ConditionalFilter/conditional-filter.scss +18 -18
- package/esm/ConditionalFilter/conditionalFilterConstants.js +0 -3
- package/esm/ConditionalFilter/conditionalFilterConstants.js.map +1 -1
- package/esm/ConditionalFilter/group-filter.css +9 -12
- package/esm/ConditionalFilter/group-filter.scss +9 -12
- package/esm/ConditionalFilter/groupFilterConstants.js +29 -44
- package/esm/ConditionalFilter/groupFilterConstants.js.map +1 -1
- package/esm/ConditionalFilter/groupType.js +8 -9
- package/esm/ConditionalFilter/groupType.js.map +1 -1
- package/esm/ConditionalFilter/index.js +1 -2
- package/esm/ConditionalFilter/index.js.map +1 -1
- package/esm/CullingInfo/CullingInformation.css +4 -4
- package/esm/CullingInfo/CullingInformation.js +6 -7
- package/esm/CullingInfo/CullingInformation.js.map +1 -1
- package/esm/CullingInfo/CullingInformation.scss +4 -4
- package/esm/Dark/Dark.js +1 -1
- package/esm/Dark/Dark.js.map +1 -1
- package/esm/DateFormat/DateFormat.js +0 -1
- package/esm/DateFormat/DateFormat.js.map +1 -1
- package/esm/DateFormat/helper.js +2 -2
- package/esm/DateFormat/helper.js.map +1 -1
- package/esm/DownloadButton/DownloadButton.js +18 -7
- package/esm/DownloadButton/DownloadButton.js.map +1 -1
- package/esm/DownloadButton/DownloadButton.spec.ct.js +9 -9
- package/esm/DownloadButton/DownloadButton.spec.ct.js.map +1 -1
- package/esm/EmptyTable/EmptyTable.css +2 -2
- package/esm/EmptyTable/EmptyTable.scss +2 -2
- package/esm/ErrorBoundary/ErrorBoundary.css +3 -3
- package/esm/ErrorBoundary/ErrorBoundary.js +13 -2
- package/esm/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/esm/ErrorBoundary/ErrorBoundary.scss +3 -3
- package/esm/ErrorBoundary/ErrorStack.js +15 -4
- package/esm/ErrorBoundary/ErrorStack.js.map +1 -1
- package/esm/ErrorState/DefaultErrorMessage.js +12 -1
- package/esm/ErrorState/DefaultErrorMessage.js.map +1 -1
- package/esm/ErrorState/ErrorState.js +4 -6
- package/esm/ErrorState/ErrorState.js.map +1 -1
- package/esm/ErrorState/error-state.css +2 -2
- package/esm/ErrorState/error-state.scss +3 -3
- package/esm/FilterChips/FilterChips.js +6 -8
- package/esm/FilterChips/FilterChips.js.map +1 -1
- package/esm/FilterChips/filter-chips.css +2 -6
- package/esm/FilterChips/filter-chips.scss +2 -6
- package/esm/FilterHooks/constants.js +2 -3
- package/esm/FilterHooks/constants.js.map +1 -1
- package/esm/FilterHooks/tagFilterHook.css +3 -3
- package/esm/FilterHooks/tagFilterHook.js +2 -2
- package/esm/FilterHooks/tagFilterHook.js.map +1 -1
- package/esm/FilterHooks/tagFilterHook.scss +3 -3
- package/esm/Filters/FilterDropdown.js +6 -9
- package/esm/Filters/FilterDropdown.js.map +1 -1
- package/esm/Filters/FilterInput.js +4 -8
- package/esm/Filters/FilterInput.js.map +1 -1
- package/esm/Filters/filter-dropdown.css +2 -2
- package/esm/Filters/filter-dropdown.scss +1 -1
- package/esm/Input/Input.js +35 -0
- package/esm/Input/Input.js.map +1 -0
- package/esm/Input/Input.spec.ct.js +35 -0
- package/esm/Input/Input.spec.ct.js.map +1 -0
- package/esm/Input/LabeledInput.js +32 -0
- package/esm/Input/LabeledInput.js.map +1 -0
- package/esm/Input/index.js +6 -0
- package/esm/Input/index.js.map +1 -0
- package/esm/InsightsLabel/InsightsLabel.js +6 -6
- package/esm/InsightsLabel/InsightsLabel.js.map +1 -1
- package/esm/InsightsLink/InsightsLink.js.map +1 -1
- package/esm/InvalidObject/InvalidObject.js +2 -3
- package/esm/InvalidObject/InvalidObject.js.map +1 -1
- package/esm/InvalidObject/icon-404.js +12 -1
- package/esm/InvalidObject/icon-404.js.map +1 -1
- package/esm/Inventory/AppInfo.js +3 -4
- package/esm/Inventory/AppInfo.js.map +1 -1
- package/esm/Inventory/DetailWrapper.js +3 -4
- package/esm/Inventory/DetailWrapper.js.map +1 -1
- package/esm/Inventory/InventoryDetail.js +3 -4
- package/esm/Inventory/InventoryDetail.js.map +1 -1
- package/esm/Inventory/InventoryDetailHead.js +3 -4
- package/esm/Inventory/InventoryDetailHead.js.map +1 -1
- package/esm/Inventory/InventoryTable.js +3 -4
- package/esm/Inventory/InventoryTable.js.map +1 -1
- package/esm/Inventory/TagWithDialog.js +3 -4
- package/esm/Inventory/TagWithDialog.js.map +1 -1
- package/esm/LongTextTooltip/LongTextTooltip.js +1 -1
- package/esm/LongTextTooltip/LongTextTooltip.js.map +1 -1
- package/esm/Main/Main.js +1 -1
- package/esm/Main/Main.js.map +1 -1
- package/esm/Main/main.css +2 -2
- package/esm/Main/main.scss +2 -2
- package/esm/Maintenance/Maintenance.js +3 -4
- package/esm/Maintenance/Maintenance.js.map +1 -1
- package/esm/Maintenance/maintenance.css +4 -4
- package/esm/Maintenance/maintenance.scss +4 -4
- package/esm/NoRegisteredSystems/NoRegisteredSystems.js +14 -4
- package/esm/NoRegisteredSystems/NoRegisteredSystems.js.map +1 -1
- package/esm/NotAuthorized/NotAuthorized.css +1 -1
- package/esm/NotAuthorized/NotAuthorized.js +6 -6
- package/esm/NotAuthorized/NotAuthorized.js.map +1 -1
- package/esm/NotAuthorized/NotAuthorized.scss +1 -1
- package/esm/NotConnected/NotConnected.js +14 -4
- package/esm/NotConnected/NotConnected.js.map +1 -1
- package/esm/OpenSourceBadge/OpenSourceBadge.js +14 -6
- package/esm/OpenSourceBadge/OpenSourceBadge.js.map +1 -1
- package/esm/Ouia/WithOuia.js.map +1 -1
- package/esm/Ouia/index.js.map +1 -1
- package/esm/PageHeader/PageHeader.js +2 -2
- package/esm/PageHeader/PageHeader.js.map +1 -1
- package/esm/PageHeader/PageHeaderTitle.js +13 -2
- package/esm/PageHeader/PageHeaderTitle.js.map +1 -1
- package/esm/PageHeader/page-header.css +2 -2
- package/esm/PageHeader/page-header.scss +4 -4
- package/esm/Pagination/Pagination.js +50 -0
- package/esm/Pagination/Pagination.js.map +1 -0
- package/esm/Pagination/Pagination.spec.ct.js +47 -0
- package/esm/Pagination/Pagination.spec.ct.js.map +1 -0
- package/esm/Pagination/PaginationMenu.js +37 -0
- package/esm/Pagination/PaginationMenu.js.map +1 -0
- package/esm/Pagination/PaginationNav.js +45 -0
- package/esm/Pagination/PaginationNav.js.map +1 -0
- package/esm/Pagination/PaginationNext.js +31 -0
- package/esm/Pagination/PaginationNext.js.map +1 -0
- package/esm/Pagination/index.js +8 -0
- package/esm/Pagination/index.js.map +1 -0
- package/esm/Pagination/pagination.css +609 -0
- package/esm/Pagination/pagination.scss +14 -0
- package/esm/PrimaryToolbar/Actions.js +9 -12
- package/esm/PrimaryToolbar/Actions.js.map +1 -1
- package/esm/PrimaryToolbar/Actions.spec.ct.js +11 -11
- package/esm/PrimaryToolbar/Actions.spec.ct.js.map +1 -1
- package/esm/PrimaryToolbar/PrimaryToolbar.js +7 -14
- package/esm/PrimaryToolbar/PrimaryToolbar.js.map +1 -1
- package/esm/PrimaryToolbar/PrimaryToolbar.spec.ct.js +17 -18
- package/esm/PrimaryToolbar/PrimaryToolbar.spec.ct.js.map +1 -1
- package/esm/PrimaryToolbar/SortBy.js +14 -5
- package/esm/PrimaryToolbar/SortBy.js.map +1 -1
- package/esm/PrimaryToolbar/SortBy.spec.ct.js +7 -7
- package/esm/PrimaryToolbar/SortBy.spec.ct.js.map +1 -1
- package/esm/PrimaryToolbar/primary-toolbar.css +2 -2
- package/esm/PrimaryToolbar/primary-toolbar.scss +2 -2
- package/esm/RBACProvider/RBACProvider.js +8 -6
- package/esm/RBACProvider/RBACProvider.js.map +1 -1
- package/esm/Reboot/Reboot.js +1 -1
- package/esm/Reboot/Reboot.js.map +1 -1
- package/esm/Reboot/reboot.css +1 -1
- package/esm/Reboot/reboot.scss +1 -1
- package/esm/Section/Section.js +1 -1
- package/esm/Section/Section.js.map +1 -1
- package/esm/Section/section.css +1 -1
- package/esm/Shield/Shield.js +6 -7
- package/esm/Shield/Shield.js.map +1 -1
- package/esm/Shield/consts.js.map +1 -1
- package/esm/SimpleTableFilter/SimpleTableFilter.js +16 -20
- package/esm/SimpleTableFilter/SimpleTableFilter.js.map +1 -1
- package/esm/SimpleTableFilter/simple-table-filter.css +15 -0
- package/esm/SimpleTableFilter/simple-table-filter.scss +12 -0
- package/esm/Skeleton/Skeleton.js +1 -1
- package/esm/Skeleton/Skeleton.js.map +1 -1
- package/esm/Skeleton/skeleton.css +7 -7
- package/esm/Skeleton/skeleton.scss +7 -7
- package/esm/SkeletonTable/SkeletonTable.js +40 -13
- package/esm/SkeletonTable/SkeletonTable.js.map +1 -1
- package/esm/Spinner/Spinner.js +1 -1
- package/esm/Spinner/Spinner.js.map +1 -1
- package/esm/Spinner/spinner.css +2 -2
- package/esm/Spinner/spinner.scss +2 -2
- package/esm/TabLayout/TabLayout.js +1 -1
- package/esm/TabLayout/TabLayout.js.map +1 -1
- package/esm/TabLayout/tab-layout.css +4 -4
- package/esm/TabLayout/tab-layout.scss +4 -4
- package/esm/TableToolbar/TableToolbar.css +5 -5
- package/esm/TableToolbar/TableToolbar.js +2 -3
- package/esm/TableToolbar/TableToolbar.js.map +1 -1
- package/esm/TableToolbar/TableToolbar.scss +5 -5
- package/esm/TagCount/TagCount.js +3 -4
- package/esm/TagCount/TagCount.js.map +1 -1
- package/esm/TagCount/tagCount.css +1 -1
- package/esm/TagCount/tagCount.scss +1 -1
- package/esm/TagModal/TableWithFilter.js +4 -7
- package/esm/TagModal/TableWithFilter.js.map +1 -1
- package/esm/TagModal/TagModal.js +7 -9
- package/esm/TagModal/TagModal.js.map +1 -1
- package/esm/TagModal/tagModal.css +1 -1
- package/esm/TagModal/tagModal.scss +1 -1
- package/esm/TreeTable/decorator.js +4 -4
- package/esm/TreeTable/decorator.js.map +1 -1
- package/esm/TreeTable/styles.css +116 -116
- package/esm/TreeTable/styles.scss +49 -49
- package/esm/Truncate/Truncate.js +6 -7
- package/esm/Truncate/Truncate.js.map +1 -1
- package/esm/Unavailable/Unavailable.css +1 -1
- package/esm/Unavailable/Unavailable.js +14 -3
- package/esm/Unavailable/Unavailable.js.map +1 -1
- package/esm/Unavailable/Unavailable.scss +1 -1
- package/esm/index.css +843 -211
- package/esm/index.js +2 -0
- package/esm/index.js.map +1 -1
- package/esm/index.scss +2 -0
- package/esm/useChrome/useChrome.js.map +1 -1
- package/index.css +843 -211
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/index.scss +2 -0
- package/package.json +19 -20
- package/tsconfig.cjs.json +8 -0
- package/useChrome/useChrome.d.ts +1 -1
- package/useChrome/useChrome.js.map +1 -1
- package/Filters/filter-input.css +0 -6
- package/Filters/filter-input.scss +0 -7
- package/InsightsLabel.d.ts +0 -13
- package/TableToolbar.d.ts +0 -13
- package/cypress.config.ts +0 -16
- package/esm/Filters/filter-input.css +0 -6
- package/esm/Filters/filter-input.scss +0 -7
- package/esm/InsightsLabel.js +0 -41
- package/esm/InsightsLabel.js.map +0 -1
|
@@ -4,29 +4,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
-
var react_1 =
|
|
7
|
+
var react_1 = require("@cypress/react");
|
|
8
8
|
var CheckboxFilter_1 = __importDefault(require("./CheckboxFilter"));
|
|
9
9
|
describe('CheckboxFilter component', function () {
|
|
10
10
|
it('renders empty', function () {
|
|
11
|
-
|
|
12
|
-
cy.get('.
|
|
11
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(CheckboxFilter_1.default, {}));
|
|
12
|
+
cy.get('.ins-c-conditional-filter');
|
|
13
13
|
});
|
|
14
14
|
it('renders with correct attributes', function () {
|
|
15
|
-
|
|
16
|
-
cy.get('.
|
|
17
|
-
cy.get('.
|
|
15
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(CheckboxFilter_1.default, { placeholder: "foo", isDisabled: true }));
|
|
16
|
+
cy.get('.ins-c-conditional-filter').invoke('attr', 'placeholder').should('contain', 'foo');
|
|
17
|
+
cy.get('.ins-c-conditional-filter').should('be.disabled');
|
|
18
18
|
});
|
|
19
19
|
it('default value is set', function () {
|
|
20
|
-
|
|
21
|
-
cy.get('.pf-
|
|
22
|
-
cy.get('.pf-
|
|
23
|
-
cy.get('.pf-
|
|
20
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(CheckboxFilter_1.default, { value: ['foo'], items: [{ label: 'one' }, { label: 'two' }] }));
|
|
21
|
+
cy.get('.pf-c-select__toggle').click();
|
|
22
|
+
cy.get('.pf-c-select__menu').children().should('have.length', 2);
|
|
23
|
+
cy.get('.pf-c-select__toggle-badge').should('contain', '1');
|
|
24
24
|
});
|
|
25
25
|
it('onChange called', function () {
|
|
26
26
|
var onChangeSpy = cy.spy().as('ocSpy');
|
|
27
|
-
|
|
28
|
-
cy.get('.pf-
|
|
29
|
-
cy.get('.pf-
|
|
27
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(CheckboxFilter_1.default, { items: [{ label: 'one' }, { label: 'two' }], onChange: onChangeSpy }));
|
|
28
|
+
cy.get('.pf-c-select__toggle').click();
|
|
29
|
+
cy.get('.pf-c-select__menu > :nth-child(1)').click();
|
|
30
30
|
cy.get('@ocSpy').should('have.been.called');
|
|
31
31
|
});
|
|
32
32
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxFilter.spec.ct.js","sourceRoot":"","sources":["../src/ConditionalFilter/CheckboxFilter.spec.ct.js"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"CheckboxFilter.spec.ct.js","sourceRoot":"","sources":["../src/ConditionalFilter/CheckboxFilter.spec.ct.js"],"names":[],"mappings":";;;;;;AACA,wCAAuC;AAEvC,oEAAwC;AAExC,QAAQ,CAAC,0BAA0B,EAAE;IACnC,EAAE,CAAC,eAAe,EAAE;QAClB,IAAA,aAAK,EAAC,uBAAC,wBAAQ,KAAG,CAAC,CAAC;QACpB,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE;QACpC,IAAA,aAAK,EAAC,uBAAC,wBAAQ,IAAC,WAAW,EAAC,KAAK,EAAC,UAAU,SAAG,CAAC,CAAC;QACjD,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3F,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE;QACzB,IAAA,aAAK,EAAC,uBAAC,wBAAQ,IAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,GAAI,CAAC,CAAC;QACjF,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;QACvC,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QACjE,EAAE,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE;QACpB,IAAM,WAAW,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACzC,IAAA,aAAK,EAAC,uBAAC,wBAAQ,IAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,GAAI,CAAC,CAAC;QACxF,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;QACvC,EAAE,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,KAAK,EAAE,CAAC;QACrD,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React, { ReactNode } from 'react';
|
|
2
|
-
import { FilterValue
|
|
2
|
+
import { FilterValue } from './TextFilter';
|
|
3
3
|
import { RadioFilterProps } from './RadioFilter';
|
|
4
4
|
import { CheckboxFilterProps } from './CheckboxFilter';
|
|
5
5
|
import { GroupFilterProps } from './GroupFilter';
|
|
6
6
|
import './conditional-filter.scss';
|
|
7
|
-
export type FilterValues = TextInputProps & RadioFilterProps & CheckboxFilterProps & GroupFilterProps & {
|
|
7
|
+
export declare type FilterValues = TextInputProps & RadioFilterProps & CheckboxFilterProps & GroupFilterProps & {
|
|
8
8
|
items?: FilterValue[];
|
|
9
9
|
};
|
|
10
10
|
export interface TextInputProps {
|
|
@@ -13,33 +13,23 @@ export interface TextInputProps {
|
|
|
13
13
|
placeholder?: string;
|
|
14
14
|
value?: string;
|
|
15
15
|
}
|
|
16
|
-
export
|
|
16
|
+
export interface ConditionalFilterItem {
|
|
17
17
|
id?: string;
|
|
18
18
|
label?: ReactNode;
|
|
19
|
-
placeholder?: string;
|
|
20
19
|
value?: string;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
type: 'radio';
|
|
29
|
-
filterValues: RadioFilterProps;
|
|
30
|
-
} | {
|
|
31
|
-
type: 'group';
|
|
32
|
-
filterValues: GroupFilterProps;
|
|
33
|
-
} | {
|
|
34
|
-
type: 'custom';
|
|
35
|
-
filterValues: Record<string, any>;
|
|
36
|
-
});
|
|
37
|
-
export interface ConditionalFilterProps<R extends HTMLElement = NonNullable<any>> extends TextInputProps {
|
|
20
|
+
type: 'text' | 'checkbox' | 'radio' | 'custom' | 'group';
|
|
21
|
+
filterValues?: Omit<FilterValues, 'value'> & {
|
|
22
|
+
value?: string | string[] | FilterValue | FilterValue[] | Record<string, unknown>;
|
|
23
|
+
};
|
|
24
|
+
placeholder?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface ConditionalFilterProps<R extends HTMLElement = any> extends TextInputProps {
|
|
38
27
|
hideLabel?: boolean;
|
|
39
28
|
items: ConditionalFilterItem[];
|
|
40
29
|
id?: string;
|
|
41
30
|
isDisabled?: boolean;
|
|
42
|
-
|
|
31
|
+
useMobileLayout?: boolean;
|
|
32
|
+
innerRef?: React.Ref<R>;
|
|
43
33
|
}
|
|
44
34
|
declare const ConditionalFilter: React.FunctionComponent<ConditionalFilterProps>;
|
|
45
35
|
export default ConditionalFilter;
|
|
@@ -22,21 +22,20 @@ var react_core_1 = require("@patternfly/react-core");
|
|
|
22
22
|
var react_icons_1 = require("@patternfly/react-icons");
|
|
23
23
|
var TextFilter_1 = __importDefault(require("./TextFilter"));
|
|
24
24
|
var conditionalFilterConstants_1 = require("./conditionalFilterConstants");
|
|
25
|
-
var RadioFilter_1 = __importDefault(require("./RadioFilter"));
|
|
26
|
-
var CheckboxFilter_1 = __importDefault(require("./CheckboxFilter"));
|
|
27
|
-
var GroupFilter_1 = __importDefault(require("./GroupFilter"));
|
|
28
25
|
require("./conditional-filter.css");
|
|
29
26
|
var ConditionalFilter = function (_a) {
|
|
30
|
-
var _b = _a.hideLabel, hideLabel = _b === void 0 ? false : _b, _c = _a.id, id = _c === void 0 ? 'default-input' : _c, _d = _a.isDisabled, isDisabled = _d === void 0 ? false : _d, _f = _a.items, items = _f === void 0 ? [] : _f, onChange = _a.onChange, placeholder = _a.placeholder, _g = _a.value, value =
|
|
27
|
+
var _b = _a.hideLabel, hideLabel = _b === void 0 ? false : _b, _c = _a.id, id = _c === void 0 ? 'default-input' : _c, _d = _a.isDisabled, isDisabled = _d === void 0 ? false : _d, _f = _a.items, items = _f === void 0 ? [] : _f, onChange = _a.onChange, placeholder = _a.placeholder, _g = _a.useMobileLayout, useMobileLayout = _g === void 0 ? false : _g, _h = _a.value, value = _h === void 0 ? '' : _h, innerRef = _a.innerRef;
|
|
31
28
|
var breakpointConstant = parseInt(global_breakpoint_md_1.default.value.replace('px', ''));
|
|
32
29
|
var updateFilterViewport = function (width) { return width <= breakpointConstant; };
|
|
33
|
-
var
|
|
34
|
-
var
|
|
35
|
-
var
|
|
30
|
+
var _j = (0, react_1.useState)(false), isOpen = _j[0], setIsOpen = _j[1];
|
|
31
|
+
var _k = (0, react_1.useState)(), stateValue = _k[0], setStateValue = _k[1];
|
|
32
|
+
var _l = (0, react_1.useState)(updateFilterViewport(window.innerWidth)), isMobile = _l[0], setIsMobile = _l[1];
|
|
36
33
|
var resizeListener = (0, react_1.useRef)(function (event) {
|
|
37
34
|
setIsMobile(updateFilterViewport((event === null || event === void 0 ? void 0 : event.target).innerWidth));
|
|
38
35
|
});
|
|
39
36
|
(0, react_1.useEffect)(function () {
|
|
37
|
+
useMobileLayout ||
|
|
38
|
+
console.warn("The prop \"useMobileLayout\" is set to false. You are using an outdated mobile layout of conditional filter.\n Please switch to new layout by adding \"useMobileLayout={true}\" prop to the PrimaryToolbar or ConditionalFilter directly.\n The new mobile layout will become the default in next minor release.");
|
|
40
39
|
window.addEventListener('resize', resizeListener.current);
|
|
41
40
|
return function () {
|
|
42
41
|
resizeListener.current && window.removeEventListener('resize', resizeListener.current);
|
|
@@ -46,37 +45,27 @@ var ConditionalFilter = function (_a) {
|
|
|
46
45
|
var activeItem = items && items.length && (items.find(function (item, key) { return item.value === currentValue || key === Number(currentValue); }) || items[0]);
|
|
47
46
|
var onChangeDefault = function (_e, value) { return setStateValue(value); };
|
|
48
47
|
var onChangeCallback = onChange || onChangeDefault;
|
|
48
|
+
var shouldRenderNewLayout = useMobileLayout && isMobile;
|
|
49
49
|
var capitalize = function (string) { return string[0].toUpperCase() + string.substring(1); };
|
|
50
|
-
var Wrapper = isMobile
|
|
51
|
-
? function (props) { return ((0, jsx_runtime_1.jsx)(react_core_1.ToolbarToggleGroup, __assign({}, props, { breakpoint: "md", toggleIcon: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { size: "md", children: (0, jsx_runtime_1.jsx)(react_icons_1.FilterIcon, {}) }) }))); }
|
|
52
|
-
: react_1.Fragment;
|
|
53
|
-
var getActiveComponent = function (activeItem) {
|
|
54
|
-
if (activeItem.type === 'checkbox' && (0, conditionalFilterConstants_1.identifyComponent)(activeItem.type, activeItem.filterValues)) {
|
|
55
|
-
return (0, jsx_runtime_1.jsx)(CheckboxFilter_1.default, __assign({ placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label) }, activeItem.filterValues));
|
|
56
|
-
}
|
|
57
|
-
else if (activeItem.type === 'text' && (0, conditionalFilterConstants_1.identifyComponent)(activeItem.type, activeItem.filterValues)) {
|
|
58
|
-
return (0, jsx_runtime_1.jsx)(TextFilter_1.default, __assign({ placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label) }, activeItem.filterValues));
|
|
59
|
-
}
|
|
60
|
-
else if (activeItem.type === 'group' && (0, conditionalFilterConstants_1.identifyComponent)(activeItem.type, activeItem.filterValues)) {
|
|
61
|
-
return (0, jsx_runtime_1.jsx)(GroupFilter_1.default, __assign({ placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label) }, activeItem.filterValues));
|
|
62
|
-
}
|
|
63
|
-
else if (activeItem.type === 'radio' && (0, conditionalFilterConstants_1.identifyComponent)(activeItem.type, activeItem.filterValues)) {
|
|
64
|
-
return ((0, jsx_runtime_1.jsx)(RadioFilter_1.default, __assign({ innerRef: innerRef, placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label) }, activeItem.filterValues)));
|
|
65
|
-
}
|
|
66
|
-
else if (activeItem.type === 'custom' && (0, conditionalFilterConstants_1.identifyComponent)(activeItem.type, activeItem.filterValues)) {
|
|
67
|
-
var C = conditionalFilterConstants_1.typeMapper.custom;
|
|
68
|
-
return (0, jsx_runtime_1.jsx)(C, __assign({}, activeItem.filterValues));
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
throw new Error("Invalid conditional filter component type! Expected one of ".concat(Object.keys(conditionalFilterConstants_1.conditionalFilterType), ", got ").concat(activeItem.type, "."));
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
50
|
var ActiveComponent = activeItem && (conditionalFilterConstants_1.typeMapper[activeItem.type] || conditionalFilterConstants_1.typeMapper.text);
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
51
|
+
var Wrapper = useMobileLayout && isMobile
|
|
52
|
+
? function (props) { return (0, jsx_runtime_1.jsx)(react_core_1.ToolbarToggleGroup, __assign({}, props, { breakpoint: "md", toggleIcon: (0, jsx_runtime_1.jsx)(react_icons_1.FilterIcon, {}) })); }
|
|
53
|
+
: react_1.Fragment;
|
|
54
|
+
return ((0, jsx_runtime_1.jsxs)(Wrapper, { children: [useMobileLayout && isMobile && ((0, jsx_runtime_1.jsx)(react_core_1.ToolbarGroup, __assign({ className: "ins-c-conditional-filter mobile" }, { children: items.map(function (activeItem, key) {
|
|
55
|
+
var ActiveComponent = activeItem && (conditionalFilterConstants_1.typeMapper[activeItem.type] || conditionalFilterConstants_1.typeMapper.text);
|
|
56
|
+
return ((0, jsx_runtime_1.jsx)(react_core_1.ToolbarItem, { children: (0, jsx_runtime_1.jsx)(ActiveComponent, __assign({}, (activeItem.type !== conditionalFilterConstants_1.conditionalFilterType.custom && {
|
|
57
|
+
placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label),
|
|
58
|
+
id: activeItem.filterValues ? activeItem.filterValues.id : currentValue ? String(currentValue) : undefined,
|
|
59
|
+
innerRef: innerRef,
|
|
60
|
+
}), activeItem.filterValues)) }, key));
|
|
61
|
+
}) }))), !shouldRenderNewLayout && ((0, jsx_runtime_1.jsx)(react_1.Fragment, { children: !items || (items && items.length <= 0) ? ((0, jsx_runtime_1.jsx)("div", __assign({ className: (0, classnames_1.default)('ins-c-conditional-filter', {
|
|
62
|
+
desktop: useMobileLayout,
|
|
63
|
+
}) }, { children: (0, jsx_runtime_1.jsx)(TextFilter_1.default, { innerRef: innerRef, id: id, isDisabled: isDisabled, onChange: function (e) { return onChangeCallback(e, e.target.value); }, placeholder: placeholder, value: currentValue ? String(currentValue) : undefined, "widget-type": "InsightsInput" }) }))) : ((0, jsx_runtime_1.jsxs)(react_core_1.Split, __assign({ className: (0, classnames_1.default)('ins-c-conditional-filter', {
|
|
64
|
+
desktop: useMobileLayout,
|
|
65
|
+
}) }, { children: [items.length > 1 && ((0, jsx_runtime_1.jsx)(react_core_1.SplitItem, { children: (0, jsx_runtime_1.jsx)(react_core_1.Dropdown, { ref: innerRef, className: "ins-c-conditional-filter__group", onSelect: function () { return setIsOpen(false); }, isOpen: isOpen, ouiaId: "ConditionalFilter", toggle: (0, jsx_runtime_1.jsxs)(react_core_1.DropdownToggle, __assign({ "aria-label": "Conditional filter", onToggle: setIsOpen, isDisabled: isDisabled, className: hideLabel ? 'ins-c-conditional-filter__no-label' : '', ouiaId: "ConditionalFilter" }, { children: [(0, jsx_runtime_1.jsx)(react_icons_1.FilterIcon, { size: "sm" }), !hideLabel && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "ins-c-conditional-filter__value-selector" }, { children: activeItem && capitalize(String(activeItem.label)) })))] })), dropdownItems: items.map(function (item, key) { return ((0, jsx_runtime_1.jsx)(react_core_1.DropdownItem, __assign({ component: "button", ouiaId: String(item.label), onClick: function (e) { return onChangeCallback(e, item.value || key); }, isHovered: activeItem.label === item.label }, { children: capitalize(String(item.label)) }), item.id ? "".concat(item.id, "-dropdown") : key)); }) }) })), ActiveComponent && ((0, jsx_runtime_1.jsx)(react_core_1.SplitItem, __assign({ isFilled: true }, { children: (0, jsx_runtime_1.jsx)(ActiveComponent, __assign({}, (activeItem.type !== conditionalFilterConstants_1.conditionalFilterType.custom && {
|
|
66
|
+
placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label),
|
|
67
|
+
id: (activeItem.filterValues && activeItem.filterValues.id) || currentValue ? String(currentValue) : undefined,
|
|
68
|
+
}), activeItem.filterValues)) })))] }))) }))] }));
|
|
80
69
|
};
|
|
81
70
|
exports.default = ConditionalFilter;
|
|
82
71
|
//# sourceMappingURL=ConditionalFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalFilter.js","sourceRoot":"","sources":["../src/ConditionalFilter/ConditionalFilter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+BAA2F;AAC3F,0DAAoC;AACpC,+GAAuF;AACvF,
|
|
1
|
+
{"version":3,"file":"ConditionalFilter.js","sourceRoot":"","sources":["../src/ConditionalFilter/ConditionalFilter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
-
var react_1 =
|
|
7
|
+
var react_1 = require("@cypress/react");
|
|
8
8
|
var ConditionalFilter_1 = __importDefault(require("./ConditionalFilter"));
|
|
9
9
|
describe('ConditionalFilter component', function () {
|
|
10
10
|
var config = [
|
|
11
11
|
{
|
|
12
|
-
type: 'text',
|
|
13
12
|
label: 'text',
|
|
14
13
|
},
|
|
15
14
|
{
|
|
@@ -65,33 +64,33 @@ describe('ConditionalFilter component', function () {
|
|
|
65
64
|
},
|
|
66
65
|
];
|
|
67
66
|
it('renders empty', function () {
|
|
68
|
-
|
|
67
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(ConditionalFilter_1.default, {}));
|
|
69
68
|
cy.get('.ins-c-conditional-filter');
|
|
70
69
|
});
|
|
71
70
|
it('renders disabled', function () {
|
|
72
|
-
|
|
73
|
-
cy.get('.pf-
|
|
74
|
-
cy.get('.pf-
|
|
71
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(ConditionalFilter_1.default, { isDisabled: true, items: config }));
|
|
72
|
+
cy.get('.pf-c-dropdown').click({ force: true });
|
|
73
|
+
cy.get('.pf-c-dropdown__menu').should('not.exist');
|
|
75
74
|
});
|
|
76
75
|
it('renders with data', function () {
|
|
77
|
-
|
|
76
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(ConditionalFilter_1.default, { items: config }));
|
|
78
77
|
cy.get('.ins-c-conditional-filter');
|
|
79
|
-
cy.get('.pf-
|
|
80
|
-
cy.get('.pf-
|
|
78
|
+
cy.get('.pf-c-dropdown').click();
|
|
79
|
+
cy.get('.pf-c-dropdown__menu').children().should('have.length', 4);
|
|
81
80
|
});
|
|
82
81
|
it('filter changes on click', function () {
|
|
83
|
-
|
|
84
|
-
cy.get('.pf-
|
|
85
|
-
cy.get('.pf-
|
|
86
|
-
cy.get('.pf-
|
|
87
|
-
cy.get('.pf-
|
|
88
|
-
cy.get('.pf-
|
|
82
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(ConditionalFilter_1.default, { items: config }));
|
|
83
|
+
cy.get('.pf-c-dropdown').click();
|
|
84
|
+
cy.get('.pf-c-dropdown__menu').children().eq(1).click();
|
|
85
|
+
cy.get('.pf-c-dropdown').should('not.contain.text', 'Text');
|
|
86
|
+
cy.get('.pf-c-select').click();
|
|
87
|
+
cy.get('.pf-c-select__menu');
|
|
89
88
|
});
|
|
90
89
|
it('onChange called', function () {
|
|
91
90
|
var ocSpy = cy.spy().as('ocSpy');
|
|
92
|
-
|
|
93
|
-
cy.get('.pf-
|
|
94
|
-
cy.get('.pf-
|
|
91
|
+
(0, react_1.mount)((0, jsx_runtime_1.jsx)(ConditionalFilter_1.default, { items: config, onChange: ocSpy }));
|
|
92
|
+
cy.get('.pf-c-dropdown').click();
|
|
93
|
+
cy.get('.pf-c-dropdown__menu').children().eq(2).click();
|
|
95
94
|
cy.get('@ocSpy').should('have.been.called');
|
|
96
95
|
});
|
|
97
96
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalFilter.spec.ct.js","sourceRoot":"","sources":["../src/ConditionalFilter/ConditionalFilter.spec.ct.js"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"ConditionalFilter.spec.ct.js","sourceRoot":"","sources":["../src/ConditionalFilter/ConditionalFilter.spec.ct.js"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,30 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import React, { FormEvent, MouseEventHandler } from 'react';
|
|
2
|
+
import { ButtonVariant } from '@patternfly/react-core';
|
|
3
|
+
import { FilterMenuItemOnChange } from './groupFilterConstants';
|
|
4
|
+
import { GroupType } from './groupType';
|
|
4
5
|
import './group-filter.scss';
|
|
6
|
+
export interface GroupFilterItem {
|
|
7
|
+
className?: string;
|
|
8
|
+
id?: string;
|
|
9
|
+
isChecked?: boolean;
|
|
10
|
+
label?: Node | string;
|
|
11
|
+
name?: string;
|
|
12
|
+
noFilter?: boolean;
|
|
13
|
+
onChange?: (value: boolean, event: FormEvent<HTMLInputElement>) => void;
|
|
14
|
+
onClick?: (e?: FormEvent | MouseEventHandler<HTMLInputElement>, item?: GroupFilterItem, key?: number, checked?: boolean, groupName?: string, itemName?: string) => void;
|
|
15
|
+
tagKey?: string;
|
|
16
|
+
tagValue?: string;
|
|
17
|
+
type?: GroupType;
|
|
18
|
+
variant?: ButtonVariant;
|
|
19
|
+
value?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface TreeViewItem extends GroupFilterItem {
|
|
22
|
+
hasCheck?: boolean;
|
|
23
|
+
checkProps?: Record<string, boolean | null>;
|
|
24
|
+
children?: TreeViewItem[];
|
|
25
|
+
label?: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
}
|
|
5
28
|
export interface GroupItem {
|
|
6
29
|
isSelected?: boolean;
|
|
7
30
|
group: Group;
|
|
@@ -12,31 +35,26 @@ export interface Group {
|
|
|
12
35
|
id?: string;
|
|
13
36
|
isSelected?: boolean;
|
|
14
37
|
item?: GroupFilterItem;
|
|
15
|
-
items
|
|
16
|
-
label
|
|
38
|
+
items: GroupFilterItem[];
|
|
39
|
+
label?: string;
|
|
17
40
|
noFilter?: boolean;
|
|
18
41
|
type?: GroupType;
|
|
19
42
|
value?: string;
|
|
20
43
|
}
|
|
21
|
-
|
|
22
|
-
isFilterable: true;
|
|
23
|
-
onFilter: (value: string) => void;
|
|
24
|
-
};
|
|
25
|
-
export type GroupFilterProps = {
|
|
44
|
+
export interface GroupFilterProps {
|
|
26
45
|
className?: string;
|
|
27
46
|
filterBy?: string;
|
|
28
47
|
groups?: Group[];
|
|
48
|
+
isFilterable?: boolean;
|
|
29
49
|
items?: GroupFilterItem[];
|
|
30
|
-
|
|
50
|
+
onFilter?: (value: string) => void;
|
|
51
|
+
onChange?: FilterMenuItemOnChange;
|
|
31
52
|
onShowMore?: (event: React.MouseEvent | React.KeyboardEvent | MouseEvent) => void;
|
|
32
53
|
placeholder?: string;
|
|
33
54
|
selected?: Record<string, Record<string, GroupItem | boolean>>;
|
|
34
55
|
showMoreTitle?: React.ReactNode;
|
|
35
56
|
showMoreOptions?: Record<string, unknown>;
|
|
36
57
|
isDisabled?: boolean;
|
|
37
|
-
}
|
|
38
|
-
isFilterable?: false;
|
|
39
|
-
onFilter?: undefined;
|
|
40
|
-
});
|
|
58
|
+
}
|
|
41
59
|
declare const GroupFilter: React.FunctionComponent<GroupFilterProps>;
|
|
42
60
|
export default GroupFilter;
|
|
@@ -10,17 +10,6 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
-
var t = {};
|
|
15
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
-
t[p] = s[p];
|
|
17
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
-
t[p[i]] = s[p[i]];
|
|
21
|
-
}
|
|
22
|
-
return t;
|
|
23
|
-
};
|
|
24
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
25
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
26
15
|
};
|
|
@@ -33,14 +22,18 @@ var react_icons_1 = require("@patternfly/react-icons");
|
|
|
33
22
|
var groupFilterConstants_1 = require("./groupFilterConstants");
|
|
34
23
|
var groupType_1 = __importDefault(require("./groupType"));
|
|
35
24
|
require("./group-filter.css");
|
|
36
|
-
var GroupFilter = function (
|
|
37
|
-
var className =
|
|
38
|
-
var
|
|
39
|
-
var _f = (0, react_1.useState)(
|
|
25
|
+
var GroupFilter = function (_a) {
|
|
26
|
+
var className = _a.className, _b = _a.filterBy, filterBy = _b === void 0 ? '' : _b, _c = _a.groups, groups = _c === void 0 ? [] : _c, items = _a.items, _d = _a.isFilterable, isFilterable = _d === void 0 ? false : _d, onFilter = _a.onFilter, onChange = _a.onChange, onShowMore = _a.onShowMore, placeholder = _a.placeholder, selected = _a.selected, showMoreTitle = _a.showMoreTitle, showMoreOptions = _a.showMoreOptions, isDisabled = _a.isDisabled;
|
|
27
|
+
var _e = (0, react_1.useState)({}), stateSelected = _e[0], setStateSelected = _e[1];
|
|
28
|
+
var _f = (0, react_1.useState)(''), searchString = _f[0], setSearchString = _f[1];
|
|
29
|
+
var _g = (0, react_1.useState)(false), isOpen = _g[0], setIsOpen = _g[1];
|
|
40
30
|
var toggleRef = (0, react_1.useRef)(null);
|
|
41
31
|
var containerRef = (0, react_1.useRef)(null);
|
|
42
32
|
var menuRef = (0, react_1.useRef)(null);
|
|
43
33
|
var inputRef = (0, react_1.useRef)(null);
|
|
34
|
+
(0, react_1.useEffect)(function () {
|
|
35
|
+
selected && setStateSelected(selected);
|
|
36
|
+
}, [selected]);
|
|
44
37
|
(0, react_1.useEffect)(function () {
|
|
45
38
|
setSearchString(filterBy);
|
|
46
39
|
}, [filterBy]);
|
|
@@ -77,27 +70,30 @@ var GroupFilter = function (props) {
|
|
|
77
70
|
};
|
|
78
71
|
var menuItems = (0, groupFilterConstants_1.getMenuItems)((items === null || items === void 0 ? void 0 : items.map(function (item) { return (item.type === groupType_1.default.treeView ? (0, groupFilterConstants_1.convertTreeItem)(item) : item); })) || [], onChange, (0, groupFilterConstants_1.calculateSelected)(selected || {}));
|
|
79
72
|
var groupMenuItems = (0, groupFilterConstants_1.getGroupMenuItems)(groups, onChange, (0, groupFilterConstants_1.calculateSelected)(selected || {}));
|
|
80
|
-
var renderItem = function (
|
|
81
|
-
var groupSelectable = _a.groupSelectable, item = __rest(_a, ["groupSelectable"]);
|
|
73
|
+
var renderItem = function (item, key, type, groupKey) {
|
|
82
74
|
if (groupKey === void 0) { groupKey = ''; }
|
|
83
|
-
return ((0, jsx_runtime_1.jsx)(react_core_1.MenuItem, { itemId: key, className: item === null || item === void 0 ? void 0 : item.className, onClick:
|
|
75
|
+
return ((0, jsx_runtime_1.jsx)(react_core_1.MenuItem, __assign({ itemId: key, className: item === null || item === void 0 ? void 0 : item.className, onClick: item.onClick && (type || item.type) === groupType_1.default.checkbox
|
|
84
76
|
? function (e) {
|
|
85
|
-
|
|
86
|
-
(_a = item.onClick) === null || _a === void 0 ? void 0 : _a.call(item, e);
|
|
77
|
+
item.onClick && item.onClick();
|
|
87
78
|
e.preventDefault();
|
|
88
79
|
}
|
|
89
|
-
: undefined, children: (
|
|
80
|
+
: undefined }, { children: (type || item.type) === groupType_1.default.treeView ? ((0, jsx_runtime_1.jsx)(react_core_1.TreeView, { data: [(0, groupFilterConstants_1.mapTree)(item, groupKey, stateSelected, selected || {})], onCheck: function (e, value) { return (0, groupFilterConstants_1.onTreeCheck)(e, value, [item]); }, hasChecks: true })) : (type || item.type) === groupType_1.default.checkbox ? ((0, jsx_runtime_1.jsx)(react_core_1.Checkbox, __assign({}, item, { label: item === null || item === void 0 ? void 0 : item.label, isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, groupFilterConstants_1.isChecked)(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected || {}) || false, onChange: function (value, event) {
|
|
81
|
+
var _a;
|
|
82
|
+
(_a = item === null || item === void 0 ? void 0 : item.onChange) === null || _a === void 0 ? void 0 : _a.call(item, value, event);
|
|
83
|
+
}, onClick: item.onClick
|
|
90
84
|
? function (e) {
|
|
91
|
-
|
|
92
|
-
(_a = item.onClick) === null || _a === void 0 ? void 0 : _a.call(item, e);
|
|
85
|
+
item.onClick && item.onClick();
|
|
93
86
|
e.stopPropagation();
|
|
94
87
|
}
|
|
95
|
-
: undefined, name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key), id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key) }))) : (
|
|
88
|
+
: undefined, name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key), id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key) }))) : (type || item.type) === groupType_1.default.radio ? ((0, jsx_runtime_1.jsx)(react_core_1.Radio, __assign({}, item, { isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, groupFilterConstants_1.isChecked)(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected || {}) || false, onChange: function (value, event) {
|
|
89
|
+
var _a;
|
|
90
|
+
(_a = item === null || item === void 0 ? void 0 : item.onChange) === null || _a === void 0 ? void 0 : _a.call(item, value, event);
|
|
91
|
+
}, value: (item === null || item === void 0 ? void 0 : item.value) || key, name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key), label: (item === null || item === void 0 ? void 0 : item.label) || '', id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key) }))) : (type || item.type) === groupType_1.default.button ? ((0, jsx_runtime_1.jsx)(react_core_1.Button, __assign({ id: item.id, className: "pf-c-select__option-button ".concat((item === null || item === void 0 ? void 0 : item.className) || ''), variant: item === null || item === void 0 ? void 0 : item.variant, onClick: item.onClick }, { children: item === null || item === void 0 ? void 0 : item.label }))) : ((item === null || item === void 0 ? void 0 : item.label) || '') }), "".concat(item.value, "-").concat(key, "-item")));
|
|
96
92
|
};
|
|
97
93
|
var renderItems = function (items, type, groupKey) {
|
|
98
94
|
if (groupKey === void 0) { groupKey = ''; }
|
|
99
95
|
return items.map(function (item, key) {
|
|
100
|
-
return (type || item.type) === groupType_1.default.treeView ? ((0, jsx_runtime_1.jsx)("div", { className: "ins-c-tree-view", children: renderItem(item, key, type, groupKey) }, "".concat(item.value, "-").concat(key, "-item"))) : (renderItem(item, key, type, groupKey));
|
|
96
|
+
return (type || item.type) === groupType_1.default.treeView ? ((0, jsx_runtime_1.jsx)("div", __assign({ className: "ins-c-tree-view" }, { children: renderItem(item, key, type, groupKey) }), "".concat(item.value, "-").concat(key, "-item"))) : (renderItem(item, key, type, groupKey));
|
|
101
97
|
});
|
|
102
98
|
};
|
|
103
99
|
var hasFocus = document.activeElement === inputRef.current || document.activeElement === toggleRef.current;
|
|
@@ -106,18 +102,18 @@ var GroupFilter = function (props) {
|
|
|
106
102
|
setSearchString(value);
|
|
107
103
|
onFilter === null || onFilter === void 0 ? void 0 : onFilter(value);
|
|
108
104
|
};
|
|
109
|
-
return ((0, jsx_runtime_1.jsx)("div", { ref: containerRef, children: (0, jsx_runtime_1.jsx)(react_core_1.Popper, { appendTo: containerRef.current, trigger: (0, jsx_runtime_1.jsx)(react_core_1.MenuToggle, { "aria-label": "Group filter", ref: toggleRef, onClick: function (e) { return onToggleClick(e); }, isExpanded: isOpen, className: (0, classnames_1.default)('ins-c-group-menu-toggle', className, {
|
|
110
|
-
|
|
111
|
-
|
|
105
|
+
return ((0, jsx_runtime_1.jsx)("div", __assign({ ref: containerRef }, { children: (0, jsx_runtime_1.jsx)(react_core_1.Popper, { appendTo: containerRef.current, trigger: (0, jsx_runtime_1.jsx)(react_core_1.MenuToggle, __assign({ "aria-label": "Group filter", ref: toggleRef, onClick: function (e) { return onToggleClick(e); }, isExpanded: isOpen, className: (0, classnames_1.default)('ins-c-group-menu-toggle', className), isDisabled: isDisabled }, { children: isFilterable || onFilter ? ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(react_core_1.TextInput, { ref: inputRef, className: (0, classnames_1.default)({
|
|
106
|
+
'ins-c-input__clearable': searchDirty,
|
|
107
|
+
}), onChange: function (value) { return setFilter(value); }, onClick: function (e) { return e.preventDefault(); }, onKeyDown: function (e) {
|
|
112
108
|
if (e.key === ' ' || e.key === 'Escape') {
|
|
113
109
|
e.preventDefault();
|
|
114
110
|
setFilter(e.key === ' ' ? "".concat(searchString, " ") : '');
|
|
115
111
|
e.key === 'Escape' && setIsOpen(false);
|
|
116
112
|
}
|
|
117
|
-
}, "aria-label": "input with dropdown and clear button", placeholder: placeholder, value: searchString, tabIndex: 0, type: "text" }), searchDirty && ((0, jsx_runtime_1.jsx)("span", { className: "ins-c-icon__link", children: (0, jsx_runtime_1.jsx)(react_icons_1.CloseIcon, { onClick: function () {
|
|
113
|
+
}, isDisabled: isDisabled, "aria-label": "input with dropdown and clear button", placeholder: placeholder, value: searchString, tabIndex: 0, type: "text" }), searchDirty && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "ins-c-icon__link" }, { children: (0, jsx_runtime_1.jsx)(react_icons_1.CloseIcon, { onClick: function () {
|
|
118
114
|
setFilter('');
|
|
119
115
|
setIsOpen(false);
|
|
120
|
-
} }) }))] })) : (placeholder) }), popper: (0, jsx_runtime_1.jsx)(react_core_1.Menu, { ref: menuRef, className: (0, classnames_1.default)('ins-c-menu__scrollable', className, { 'pf-m-expanded': isOpen }), children: (0, jsx_runtime_1.jsx)(react_core_1.MenuContent, { children: (0, jsx_runtime_1.jsxs)(react_core_1.MenuList, { "aria-label": "Group filter", children: [menuItems.length > 0 && (0, jsx_runtime_1.jsx)(react_core_1.MenuGroup, { children: renderItems(menuItems) }), groupMenuItems.map(function (group, groupKey) { return ((0, jsx_runtime_1.jsx)(react_core_1.MenuGroup, { label: !group.groupSelectable && typeof group.label === 'string' ? group.label : undefined, children:
|
|
116
|
+
} }) })))] })) : (placeholder) })), popper: (0, jsx_runtime_1.jsx)(react_core_1.Menu, __assign({ ref: menuRef, className: (0, classnames_1.default)('ins-c-menu__scrollable', className, { 'pf-m-expanded': isOpen }) }, { children: (0, jsx_runtime_1.jsx)(react_core_1.MenuContent, { children: (0, jsx_runtime_1.jsxs)(react_core_1.MenuList, __assign({ "aria-label": "Group filter" }, { children: [menuItems.length > 0 && (0, jsx_runtime_1.jsx)(react_core_1.MenuGroup, { children: renderItems(menuItems) }), groupMenuItems.map(function (group, groupKey) { return ((0, jsx_runtime_1.jsx)(react_core_1.MenuGroup, __assign({ label: !group.groupSelectable && typeof group.label === 'string' ? group.label : undefined }, { children: renderItems(group.items, group.type, group.value) }), "".concat(group.label, "-").concat(groupKey, "-group"))); }), onShowMore ? ((0, jsx_runtime_1.jsx)(react_core_1.MenuItem, __assign({ itemId: "loader", className: "ins-c-menu__show--more" }, showMoreOptions, { onClick: function (e) { return onShowMore(e); } }, { children: showMoreTitle }))) : ((0, jsx_runtime_1.jsx)("span", { hidden: true, value: "" }))] })) }) })), isVisible: isOpen }) })));
|
|
121
117
|
};
|
|
122
118
|
exports.default = GroupFilter;
|
|
123
119
|
//# sourceMappingURL=GroupFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupFilter.js","sourceRoot":"","sources":["../src/ConditionalFilter/GroupFilter.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GroupFilter.js","sourceRoot":"","sources":["../src/ConditionalFilter/GroupFilter.tsx"],"names":[],"mappings":"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"}
|