@google-psat/design-system 0.14.1 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/breadcrumbs/index.jsx +10 -15
- package/dist/components/breadcrumbs/index.jsx.map +1 -1
- package/dist/components/bulletList/index.jsx +6 -14
- package/dist/components/bulletList/index.jsx.map +1 -1
- package/dist/components/bulletList/listRow.jsx +19 -40
- package/dist/components/bulletList/listRow.jsx.map +1 -1
- package/dist/components/button/index.jsx +17 -16
- package/dist/components/button/index.jsx.map +1 -1
- package/dist/components/chipsBar/chip.jsx +5 -10
- package/dist/components/chipsBar/chip.jsx.map +1 -1
- package/dist/components/chipsBar/chipsList.jsx +4 -9
- package/dist/components/chipsBar/chipsList.jsx.map +1 -1
- package/dist/components/chipsBar/index.jsx +12 -14
- package/dist/components/chipsBar/index.jsx.map +1 -1
- package/dist/components/circle/circleEmpty.jsx +4 -9
- package/dist/components/circle/circleEmpty.jsx.map +1 -1
- package/dist/components/circle/index.jsx +3 -8
- package/dist/components/circle/index.jsx.map +1 -1
- package/dist/components/circlePieChart/emptyCirclePieChart.jsx +9 -12
- package/dist/components/circlePieChart/emptyCirclePieChart.jsx.map +1 -1
- package/dist/components/circlePieChart/index.jsx +18 -21
- package/dist/components/circlePieChart/index.jsx.map +1 -1
- package/dist/components/circlePieChart/tooltip.jsx +26 -0
- package/dist/components/circlePieChart/tooltip.jsx.map +1 -0
- package/dist/components/cookieDetails/details.jsx +76 -105
- package/dist/components/cookieDetails/details.jsx.map +1 -1
- package/dist/components/cookieDetails/index.jsx +8 -13
- package/dist/components/cookieDetails/index.jsx.map +1 -1
- package/dist/components/cookieTable/index.jsx +32 -57
- package/dist/components/cookieTable/index.jsx.map +1 -1
- package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js +14 -19
- package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js.map +1 -1
- package/dist/components/cookieTable/utils/exportCookies.js +6 -8
- package/dist/components/cookieTable/utils/exportCookies.js.map +1 -1
- package/dist/components/cookieTable/utils/index.js +2 -10
- package/dist/components/cookieTable/utils/index.js.map +1 -1
- package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx +6 -11
- package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx.map +1 -1
- package/dist/components/cookiesLanding/cookiesMatrix/index.jsx +19 -20
- package/dist/components/cookiesLanding/cookiesMatrix/index.jsx.map +1 -1
- package/dist/components/cookiesLanding/index.jsx +2 -7
- package/dist/components/cookiesLanding/index.jsx.map +1 -1
- package/dist/components/cookiesLanding/landingHeader/index.jsx +11 -18
- package/dist/components/cookiesLanding/landingHeader/index.jsx.map +1 -1
- package/dist/components/cookiesLanding/useFiltersMapping.jsx +13 -11
- package/dist/components/cookiesLanding/useFiltersMapping.jsx.map +1 -1
- package/dist/components/cookiesLanding/useGlobalFiltering.jsx +77 -83
- package/dist/components/cookiesLanding/useGlobalFiltering.jsx.map +1 -1
- package/dist/components/draggableTray/index.jsx +36 -52
- package/dist/components/draggableTray/index.jsx.map +1 -1
- package/dist/components/dropdown/index.jsx +30 -0
- package/dist/components/dropdown/index.jsx.map +1 -0
- package/dist/components/dropdown/options.jsx +41 -0
- package/dist/components/dropdown/options.jsx.map +1 -0
- package/dist/components/errorFallback/extensionReloadNotification.jsx +5 -11
- package/dist/components/errorFallback/extensionReloadNotification.jsx.map +1 -1
- package/dist/components/errorFallback/index.jsx +6 -11
- package/dist/components/errorFallback/index.jsx.map +1 -1
- package/dist/components/exportButton/index.jsx +7 -12
- package/dist/components/exportButton/index.jsx.map +1 -1
- package/dist/components/filtersSidebar/index.jsx +14 -42
- package/dist/components/filtersSidebar/index.jsx.map +1 -1
- package/dist/components/filtersSidebar/listItem.jsx +20 -50
- package/dist/components/filtersSidebar/listItem.jsx.map +1 -1
- package/dist/components/filtersSidebar/option.jsx +6 -34
- package/dist/components/filtersSidebar/option.jsx.map +1 -1
- package/dist/components/filtersSidebar/subList.jsx +9 -37
- package/dist/components/filtersSidebar/subList.jsx.map +1 -1
- package/dist/components/frameContent/index.jsx +5 -10
- package/dist/components/frameContent/index.jsx.map +1 -1
- package/dist/components/index.js +60 -119
- package/dist/components/index.js.map +1 -1
- package/dist/components/inspectButton/index.jsx +7 -12
- package/dist/components/inspectButton/index.jsx.map +1 -1
- package/dist/components/jsonView/index.js +1 -8
- package/dist/components/jsonView/index.js.map +1 -1
- package/dist/components/jsonView/jsonTheme.js +1 -5
- package/dist/components/jsonView/jsonTheme.js.map +1 -1
- package/dist/components/jsonView/jsonView.jsx +11 -41
- package/dist/components/jsonView/jsonView.jsx.map +1 -1
- package/dist/components/landingPage/LandingPage.jsx +32 -64
- package/dist/components/landingPage/LandingPage.jsx.map +1 -1
- package/dist/components/landingPage/cardsPanel.jsx +33 -44
- package/dist/components/landingPage/cardsPanel.jsx.map +1 -1
- package/dist/components/landingPage/constants.js +1 -4
- package/dist/components/landingPage/constants.js.map +1 -1
- package/dist/components/landingPage/contentPanel.jsx +27 -28
- package/dist/components/landingPage/contentPanel.jsx.map +1 -1
- package/dist/components/landingPage/getStoryPlayerMarkup.js +3 -8
- package/dist/components/landingPage/getStoryPlayerMarkup.js.map +1 -1
- package/dist/components/landingPage/index.jsx +23 -47
- package/dist/components/landingPage/index.jsx.map +1 -1
- package/dist/components/landingPage/infoCard/fetchPSInfo.js +7 -21
- package/dist/components/landingPage/infoCard/fetchPSInfo.js.map +1 -1
- package/dist/components/landingPage/infoCard/index.jsx +28 -58
- package/dist/components/landingPage/infoCard/index.jsx.map +1 -1
- package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx +13 -17
- package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx.map +1 -1
- package/dist/components/landingPage/infoCard/renderLink.jsx +5 -10
- package/dist/components/landingPage/infoCard/renderLink.jsx.map +1 -1
- package/dist/components/landingPage/quickLinksList.jsx +29 -64
- package/dist/components/landingPage/quickLinksList.jsx.map +1 -1
- package/dist/components/landingPage/supportLink.jsx +8 -13
- package/dist/components/landingPage/supportLink.jsx.map +1 -1
- package/dist/components/link/index.jsx +7 -41
- package/dist/components/link/index.jsx.map +1 -1
- package/dist/components/linkProcessor/index.jsx +13 -41
- package/dist/components/linkProcessor/index.jsx.map +1 -1
- package/dist/components/matrix/index.jsx +10 -13
- package/dist/components/matrix/index.jsx.map +1 -1
- package/dist/components/matrix/matrixComponent/index.jsx +6 -11
- package/dist/components/matrix/matrixComponent/index.jsx.map +1 -1
- package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx +4 -9
- package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx.map +1 -1
- package/dist/components/matrixContainer/index.jsx +15 -43
- package/dist/components/matrixContainer/index.jsx.map +1 -1
- package/dist/components/menuBar/index.jsx +31 -69
- package/dist/components/menuBar/index.jsx.map +1 -1
- package/dist/components/menuBar/utils/index.js +1 -8
- package/dist/components/menuBar/utils/index.js.map +1 -1
- package/dist/components/menuBar/utils/isElementInView.js +1 -4
- package/dist/components/menuBar/utils/isElementInView.js.map +1 -1
- package/dist/components/messageBox/index.jsx +8 -11
- package/dist/components/messageBox/index.jsx.map +1 -1
- package/dist/components/multiSelectDropDown/index.jsx +143 -0
- package/dist/components/multiSelectDropDown/index.jsx.map +1 -0
- package/dist/components/pill/index.jsx +2 -7
- package/dist/components/pill/index.jsx.map +1 -1
- package/dist/components/pillToggle/index.jsx +60 -24
- package/dist/components/pillToggle/index.jsx.map +1 -1
- package/dist/components/progressBar/borderProgressbar.jsx +2 -7
- package/dist/components/progressBar/borderProgressbar.jsx.map +1 -1
- package/dist/components/progressBar/index.jsx +2 -7
- package/dist/components/progressBar/index.jsx.map +1 -1
- package/dist/components/refreshButton/index.jsx +5 -10
- package/dist/components/refreshButton/index.jsx.map +1 -1
- package/dist/components/resizableTray/index.jsx +74 -0
- package/dist/components/resizableTray/index.jsx.map +1 -0
- package/dist/components/searchInput/index.jsx +20 -46
- package/dist/components/searchInput/index.jsx.map +1 -1
- package/dist/components/sidebar/collapsedSidebar.jsx +19 -47
- package/dist/components/sidebar/collapsedSidebar.jsx.map +1 -1
- package/dist/components/sidebar/expandedSidebar.jsx +19 -50
- package/dist/components/sidebar/expandedSidebar.jsx.map +1 -1
- package/dist/components/sidebar/index.js +3 -24
- package/dist/components/sidebar/index.js.map +1 -1
- package/dist/components/sidebar/sidebar.jsx +10 -15
- package/dist/components/sidebar/sidebar.jsx.map +1 -1
- package/dist/components/sidebar/sidebarChild.jsx +38 -53
- package/dist/components/sidebar/sidebarChild.jsx.map +1 -1
- package/dist/components/sidebar/useSidebar/constants.js +4 -5
- package/dist/components/sidebar/useSidebar/constants.js.map +1 -1
- package/dist/components/sidebar/useSidebar/context.js +9 -12
- package/dist/components/sidebar/useSidebar/context.js.map +1 -1
- package/dist/components/sidebar/useSidebar/index.js +3 -19
- package/dist/components/sidebar/useSidebar/index.js.map +1 -1
- package/dist/components/sidebar/useSidebar/provider.jsx +77 -100
- package/dist/components/sidebar/useSidebar/provider.jsx.map +1 -1
- package/dist/components/sidebar/useSidebar/types.js +1 -2
- package/dist/components/sidebar/useSidebar/types.js.map +1 -1
- package/dist/components/sidebar/useSidebar/useSidebar.jsx +4 -7
- package/dist/components/sidebar/useSidebar/useSidebar.jsx.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/createKeyPath.js +3 -8
- package/dist/components/sidebar/useSidebar/utils/createKeyPath.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/findItem.js +11 -9
- package/dist/components/sidebar/useSidebar/utils/findItem.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/findKeyParent.js +1 -3
- package/dist/components/sidebar/useSidebar/utils/findKeyParent.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/findNextItem.js +7 -12
- package/dist/components/sidebar/useSidebar/utils/findNextItem.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/findPrevItem.js +6 -11
- package/dist/components/sidebar/useSidebar/utils/findPrevItem.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/index.js +6 -18
- package/dist/components/sidebar/useSidebar/utils/index.js.map +1 -1
- package/dist/components/sidebar/useSidebar/utils/matchKey.js +1 -3
- package/dist/components/sidebar/useSidebar/utils/matchKey.js.map +1 -1
- package/dist/components/slider/index.jsx +29 -0
- package/dist/components/slider/index.jsx.map +1 -0
- package/dist/components/table/components/columnMenu/columnList.jsx +7 -35
- package/dist/components/table/components/columnMenu/columnList.jsx.map +1 -1
- package/dist/components/table/components/columnMenu/columnListItem.jsx +4 -9
- package/dist/components/table/components/columnMenu/columnListItem.jsx.map +1 -1
- package/dist/components/table/components/columnMenu/index.jsx +32 -46
- package/dist/components/table/components/columnMenu/index.jsx.map +1 -1
- package/dist/components/table/components/filtersSidebar/chips/index.jsx +4 -9
- package/dist/components/table/components/filtersSidebar/chips/index.jsx.map +1 -1
- package/dist/components/table/components/filtersSidebar/index.jsx +7 -35
- package/dist/components/table/components/filtersSidebar/index.jsx.map +1 -1
- package/dist/components/table/components/index.jsx +58 -71
- package/dist/components/table/components/index.jsx.map +1 -1
- package/dist/components/table/components/tableBody/bodyCell.jsx +22 -22
- package/dist/components/table/components/tableBody/bodyCell.jsx.map +1 -1
- package/dist/components/table/components/tableBody/bodyRow.jsx +33 -57
- package/dist/components/table/components/tableBody/bodyRow.jsx.map +1 -1
- package/dist/components/table/components/tableBody/index.jsx +39 -60
- package/dist/components/table/components/tableBody/index.jsx.map +1 -1
- package/dist/components/table/components/tableHeader/headerCell.jsx +25 -52
- package/dist/components/table/components/tableHeader/headerCell.jsx.map +1 -1
- package/dist/components/table/components/tableHeader/headerResizer.jsx +2 -7
- package/dist/components/table/components/tableHeader/headerResizer.jsx.map +1 -1
- package/dist/components/table/components/tableHeader/headerRow.jsx +8 -13
- package/dist/components/table/components/tableHeader/headerRow.jsx.map +1 -1
- package/dist/components/table/components/tableHeader/index.jsx +7 -35
- package/dist/components/table/components/tableHeader/index.jsx.map +1 -1
- package/dist/components/table/components/tableTopBar/index.jsx +10 -15
- package/dist/components/table/components/tableTopBar/index.jsx.map +1 -1
- package/dist/components/table/index.js +11 -38
- package/dist/components/table/index.js.map +1 -1
- package/dist/components/table/persistentSettingsStore/index.jsx +28 -69
- package/dist/components/table/persistentSettingsStore/index.jsx.map +1 -1
- package/dist/components/table/persistentSettingsStore/utils/extractStorage.js +8 -19
- package/dist/components/table/persistentSettingsStore/utils/extractStorage.js.map +1 -1
- package/dist/components/table/persistentSettingsStore/utils/index.js +2 -10
- package/dist/components/table/persistentSettingsStore/utils/index.js.map +1 -1
- package/dist/components/table/persistentSettingsStore/utils/updateStorage.js +24 -32
- package/dist/components/table/persistentSettingsStore/utils/updateStorage.js.map +1 -1
- package/dist/components/table/useTable/context.js +19 -18
- package/dist/components/table/useTable/context.js.map +1 -1
- package/dist/components/table/useTable/index.js +3 -19
- package/dist/components/table/useTable/index.js.map +1 -1
- package/dist/components/table/useTable/provider.jsx +78 -62
- package/dist/components/table/useTable/provider.jsx.map +1 -1
- package/dist/components/table/useTable/types.js +1 -2
- package/dist/components/table/useTable/useColumnResizing/index.jsx +237 -125
- package/dist/components/table/useTable/useColumnResizing/index.jsx.map +1 -1
- package/dist/components/table/useTable/useColumnSorting/index.jsx +16 -20
- package/dist/components/table/useTable/useColumnSorting/index.jsx.map +1 -1
- package/dist/components/table/useTable/useColumnVisibility/index.jsx +22 -24
- package/dist/components/table/useTable/useColumnVisibility/index.jsx.map +1 -1
- package/dist/components/table/useTable/useFiltering/hooks/index.js +3 -12
- package/dist/components/table/useTable/useFiltering/hooks/index.js.map +1 -1
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx +44 -39
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx.map +1 -1
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx +14 -16
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx.map +1 -1
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx +39 -25
- package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx.map +1 -1
- package/dist/components/table/useTable/useFiltering/index.jsx +58 -47
- package/dist/components/table/useTable/useFiltering/index.jsx.map +1 -1
- package/dist/components/table/useTable/useSearch/index.jsx +11 -13
- package/dist/components/table/useTable/useSearch/index.jsx.map +1 -1
- package/dist/components/table/useTable/useTable.jsx +4 -7
- package/dist/components/table/useTable/useTable.jsx.map +1 -1
- package/dist/components/table/utils/index.js +1 -17
- package/dist/components/table/utils/index.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js +5 -7
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js +6 -8
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js +2 -4
- package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js +5 -8
- package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js +3 -6
- package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js.map +1 -1
- package/dist/components/table/utils/precalculatedFiltersUtils/index.js +5 -16
- package/dist/components/table/utils/precalculatedFiltersUtils/index.js.map +1 -1
- package/dist/components/tabs/index.jsx +132 -75
- package/dist/components/tabs/index.jsx.map +1 -1
- package/dist/components/tabs/useTabs/context.js +12 -9
- package/dist/components/tabs/useTabs/context.js.map +1 -1
- package/dist/components/tabs/useTabs/index.js +3 -19
- package/dist/components/tabs/useTabs/index.js.map +1 -1
- package/dist/components/tabs/useTabs/provider.jsx +144 -62
- package/dist/components/tabs/useTabs/provider.jsx.map +1 -1
- package/dist/components/tabs/useTabs/types.js +1 -2
- package/dist/components/tabs/useTabs/useTabs.jsx +4 -7
- package/dist/components/tabs/useTabs/useTabs.jsx.map +1 -1
- package/dist/components/timeline/bar.jsx +71 -0
- package/dist/components/timeline/bar.jsx.map +1 -0
- package/dist/components/timeline/constants.js +29 -0
- package/dist/components/timeline/constants.js.map +1 -0
- package/dist/components/timeline/index.jsx +195 -0
- package/dist/components/timeline/index.jsx.map +1 -0
- package/dist/components/toastMessage/index.jsx +2 -7
- package/dist/components/toastMessage/index.jsx.map +1 -1
- package/dist/components/toggleSwitch/index.jsx +2 -7
- package/dist/components/toggleSwitch/index.jsx.map +1 -1
- package/dist/components/topbar/index.jsx +13 -41
- package/dist/components/topbar/index.jsx.map +1 -1
- package/dist/constants.js +9 -12
- package/dist/constants.js.map +1 -1
- package/dist/icons/index.jsx +118 -225
- package/dist/icons/index.jsx.map +1 -1
- package/dist/icons/ps-icons/index.js +12 -30
- package/dist/icons/ps-icons/index.js.map +1 -1
- package/dist/index.js +5 -21
- package/dist/index.js.map +1 -1
- package/dist/test-data/cookieMockData.js +44 -22
- package/dist/test-data/cookieMockData.js.map +1 -1
- package/dist/test-data/cookieStats.js +1 -3
- package/dist/test-data/cookieStats.js.map +1 -1
- package/dist/test-data/cookieTableBody.js +9 -14
- package/dist/test-data/cookieTableBody.js.map +1 -1
- package/dist/test-data/cookieTableMockData.jsx +18 -24
- package/dist/test-data/cookieTableMockData.jsx.map +1 -1
- package/dist/test-data/cookiesStatsComponents.js +1 -3
- package/dist/test-data/cookiesStatsComponents.js.map +1 -1
- package/dist/theme/colors.js +1 -4
- package/dist/theme/colors.js.map +1 -1
- package/dist/utils/index.js +6 -18
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/noop.js +1 -5
- package/dist/utils/noop.js.map +1 -1
- package/dist/utils/prepareCookieDataMapping.js +7 -10
- package/dist/utils/prepareCookieDataMapping.js.map +1 -1
- package/dist/utils/prepareCookieStatsComponents.js +29 -33
- package/dist/utils/prepareCookieStatsComponents.js.map +1 -1
- package/dist/utils/prepareCookiesCount.js +12 -25
- package/dist/utils/prepareCookiesCount.js.map +1 -1
- package/dist/utils/prepareFrameStatsComponent.js +19 -24
- package/dist/utils/prepareFrameStatsComponent.js.map +1 -1
- package/dist/utils/prepareFrameStatsComponentForExtensionDashboard.js +16 -21
- package/dist/utils/prepareFrameStatsComponentForExtensionDashboard.js.map +1 -1
- package/dist-types/components/button/index.d.ts +2 -1
- package/dist-types/components/chipsBar/index.d.ts +1 -1
- package/dist-types/components/circlePieChart/emptyCirclePieChart.d.ts +4 -1
- package/dist-types/components/circlePieChart/index.d.ts +3 -1
- package/dist-types/components/circlePieChart/tooltip.d.ts +8 -0
- package/dist-types/components/draggableTray/index.d.ts +4 -0
- package/dist-types/components/dropdown/index.d.ts +18 -0
- package/dist-types/components/dropdown/options.d.ts +20 -0
- package/dist-types/components/index.d.ts +7 -0
- package/dist-types/components/landingPage/LandingPage.d.ts +2 -5
- package/dist-types/components/landingPage/cardsPanel.d.ts +7 -8
- package/dist-types/components/landingPage/contentPanel.d.ts +1 -1
- package/dist-types/components/landingPage/infoCard/fetchPSInfo.d.ts +2 -0
- package/dist-types/components/landingPage/infoCard/index.d.ts +2 -1
- package/dist-types/components/link/index.d.ts +2 -1
- package/dist-types/components/messageBox/index.d.ts +5 -1
- package/dist-types/components/multiSelectDropDown/index.d.ts +14 -0
- package/dist-types/components/pillToggle/index.d.ts +8 -5
- package/dist-types/components/resizableTray/index.d.ts +15 -0
- package/dist-types/components/searchInput/index.d.ts +4 -1
- package/dist-types/components/sidebar/expandedSidebar.d.ts +2 -1
- package/dist-types/components/sidebar/sidebar.d.ts +2 -1
- package/dist-types/components/sidebar/sidebarChild.d.ts +2 -1
- package/dist-types/components/sidebar/useSidebar/constants.d.ts +3 -1
- package/dist-types/components/sidebar/useSidebar/context.d.ts +6 -2
- package/dist-types/components/sidebar/useSidebar/types.d.ts +2 -0
- package/dist-types/components/sidebar/useSidebar/utils/findItem.d.ts +2 -1
- package/dist-types/components/slider/index.d.ts +14 -0
- package/dist-types/components/table/components/index.d.ts +4 -2
- package/dist-types/components/table/components/tableBody/bodyCell.d.ts +5 -2
- package/dist-types/components/table/components/tableBody/bodyRow.d.ts +3 -2
- package/dist-types/components/table/components/tableBody/index.d.ts +3 -2
- package/dist-types/components/table/components/tableHeader/headerCell.d.ts +4 -2
- package/dist-types/components/table/components/tableTopBar/index.d.ts +2 -1
- package/dist-types/components/table/persistentSettingsStore/index.d.ts +1 -1
- package/dist-types/components/table/useTable/context.d.ts +13 -5
- package/dist-types/components/table/useTable/provider.d.ts +1 -1
- package/dist-types/components/table/useTable/types.d.ts +47 -4
- package/dist-types/components/table/useTable/useColumnResizing/index.d.ts +11 -9
- package/dist-types/components/table/useTable/useFiltering/index.d.ts +1 -1
- package/dist-types/components/tabs/index.d.ts +1 -1
- package/dist-types/components/tabs/useTabs/context.d.ts +11 -1
- package/dist-types/components/tabs/useTabs/provider.d.ts +2 -2
- package/dist-types/components/tabs/useTabs/types.d.ts +8 -3
- package/dist-types/components/timeline/bar.d.ts +16 -0
- package/dist-types/components/timeline/constants.d.ts +8 -0
- package/dist-types/components/timeline/index.d.ts +12 -0
- package/dist-types/icons/index.d.ts +117 -101
- package/dist-types/icons/ps-icons/index.d.ts +12 -12
- package/package.json +12 -7
- package/tsconfig.json +5 -3
- package/dist/components/button/stories/Button.stories.jsx +0 -23
- package/dist/components/button/stories/Button.stories.jsx.map +0 -1
- package/dist/components/circle/stories/circle.stories.jsx +0 -26
- package/dist/components/circle/stories/circle.stories.jsx.map +0 -1
- package/dist/components/circle/stories/circleEmpty.stories.jsx +0 -18
- package/dist/components/circle/stories/circleEmpty.stories.jsx.map +0 -1
- package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx +0 -91
- package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx.map +0 -1
- package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx +0 -48
- package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx.map +0 -1
- package/dist/components/cookieDetails/stories/cookieDetails.stories.js +0 -30
- package/dist/components/cookieDetails/stories/cookieDetails.stories.js.map +0 -1
- package/dist/components/cookieDetails/stories/details.stories.js +0 -30
- package/dist/components/cookieDetails/stories/details.stories.js.map +0 -1
- package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx +0 -59
- package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx.map +0 -1
- package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx +0 -40
- package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx.map +0 -1
- package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx +0 -20
- package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx.map +0 -1
- package/dist/components/errorFallback/stories/errorFallback.stories.jsx +0 -31
- package/dist/components/errorFallback/stories/errorFallback.stories.jsx.map +0 -1
- package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx +0 -20
- package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx.map +0 -1
- package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx +0 -27
- package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx.map +0 -1
- package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx +0 -25
- package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx.map +0 -1
- package/dist/components/matrix/stories/matrix.stories.jsx +0 -59
- package/dist/components/matrix/stories/matrix.stories.jsx.map +0 -1
- package/dist/components/messageBox/stories/messageBox.stories.jsx +0 -23
- package/dist/components/messageBox/stories/messageBox.stories.jsx.map +0 -1
- package/dist/components/progressBar/stories/progressBar.stories.jsx +0 -22
- package/dist/components/progressBar/stories/progressBar.stories.jsx.map +0 -1
- package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js +0 -61
- package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js.map +0 -1
- package/dist/components/table/useTable/useColumnResizing/resizeColumns.js +0 -54
- package/dist/components/table/useTable/useColumnResizing/resizeColumns.js.map +0 -1
- package/dist-types/components/button/stories/Button.stories.d.ts +0 -11
- package/dist-types/components/circle/stories/circle.stories.d.ts +0 -11
- package/dist-types/components/circle/stories/circleEmpty.stories.d.ts +0 -11
- package/dist-types/components/circlePieChart/stories/circlePieChart.stories.d.ts +0 -9
- package/dist-types/components/circlePieChart/stories/emptyCirclePieChart.stories.d.ts +0 -9
- package/dist-types/components/cookieDetails/stories/cookieDetails.stories.d.ts +0 -12
- package/dist-types/components/cookieDetails/stories/details.stories.d.ts +0 -12
- package/dist-types/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.d.ts +0 -11
- package/dist-types/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.d.ts +0 -11
- package/dist-types/components/cookiesLanding/stories/cookiesLanding.stories.d.ts +0 -11
- package/dist-types/components/errorFallback/stories/errorFallback.stories.d.ts +0 -12
- package/dist-types/components/errorFallback/stories/extensionReloadNotification.stories.d.ts +0 -11
- package/dist-types/components/matrix/matrixComponent/stories/MatrixComponent.stories.d.ts +0 -11
- package/dist-types/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.d.ts +0 -11
- package/dist-types/components/matrix/stories/matrix.stories.d.ts +0 -11
- package/dist-types/components/messageBox/stories/messageBox.stories.d.ts +0 -11
- package/dist-types/components/progressBar/stories/progressBar.stories.d.ts +0 -11
- package/dist-types/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.d.ts +0 -7
- package/dist-types/components/table/useTable/useColumnResizing/resizeColumns.d.ts +0 -5
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/*
|
|
3
|
-
* Copyright
|
|
2
|
+
* Copyright 2025 Google LLC
|
|
4
3
|
*
|
|
5
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -14,145 +13,258 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
16
|
/**
|
|
19
17
|
* External dependencies.
|
|
20
18
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
19
|
+
import { useEffect, useRef, useState, useCallback } from 'react';
|
|
20
|
+
import { useTablePersistentSettingsStore } from '../../persistentSettingsStore';
|
|
21
|
+
export const columnResizeHandleClassName = 'column-resize-handle';
|
|
22
|
+
const getColumnElement = (columnId) => {
|
|
23
|
+
return document.querySelector(`[data-column-resize-id="${columnId}"]`);
|
|
24
|
+
};
|
|
25
|
+
const getColumnMinWidth = (columnElement) => {
|
|
26
|
+
return Number(columnElement?.dataset.minWidth) || 0;
|
|
27
|
+
};
|
|
28
|
+
const getColumnMaxWidth = (columnElement) => {
|
|
29
|
+
return Number(columnElement?.dataset.maxWidth) || Number.POSITIVE_INFINITY;
|
|
30
|
+
};
|
|
31
|
+
const getColumnWidth = (columnElement) => {
|
|
32
|
+
return (columnElement.getBoundingClientRect().width ||
|
|
33
|
+
parseFloat(columnElement.style.width));
|
|
34
|
+
};
|
|
35
|
+
const setColumnWidth = (columnElement, width) => {
|
|
36
|
+
const parsedWidth = typeof width === 'string' ? parseFloat(width) : width;
|
|
37
|
+
columnElement.style.width = `${parsedWidth}px`;
|
|
38
|
+
columnElement.style.minWidth = `${parsedWidth}px`;
|
|
39
|
+
columnElement.style.maxWidth = `${parsedWidth}px`;
|
|
40
|
+
};
|
|
41
|
+
const setColumnFullWidth = (columnElement) => {
|
|
42
|
+
columnElement.style.width = '100%';
|
|
43
|
+
columnElement.style.minWidth = '100%';
|
|
44
|
+
columnElement.style.maxWidth = '100%';
|
|
45
|
+
};
|
|
46
|
+
const getColumnInitialWidth = (columnElement) => {
|
|
47
|
+
return Number(columnElement?.dataset.initialWidth) || undefined;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Custom hook to handle column resizing.
|
|
51
|
+
* @param tablePersistentSettingsKey - key to persist the columns sizing
|
|
52
|
+
* @returns {UseColumnResizing} isResizing - Whether the column is being resized.
|
|
53
|
+
*/
|
|
54
|
+
const useColumnResizing = (tablePersistentSettingsKey) => {
|
|
55
|
+
const [isResizing, setIsResizing] = useState(false);
|
|
56
|
+
const startingColumnWidth = useRef(0);
|
|
57
|
+
const startX = useRef(0);
|
|
58
|
+
const rafId = useRef();
|
|
59
|
+
const tableContainerRef = useRef(null);
|
|
60
|
+
const tableRef = useRef(null);
|
|
61
|
+
const currentColumn = useRef(null);
|
|
62
|
+
const [persistedColumnsSizing, setPersistedColumnsSizing] = useState(undefined);
|
|
63
|
+
const handleMouseDown = useCallback((event) => {
|
|
64
|
+
const target = event.target;
|
|
65
|
+
if (target?.dataset?.columnResizeHandle) {
|
|
66
|
+
event.stopPropagation();
|
|
67
|
+
event.preventDefault();
|
|
68
|
+
setIsResizing(true);
|
|
69
|
+
const columnId = target.dataset.columnResizeHandle;
|
|
70
|
+
startX.current = event.screenX;
|
|
71
|
+
const columnElement = getColumnElement(columnId);
|
|
72
|
+
if (columnElement) {
|
|
73
|
+
startingColumnWidth.current = getColumnWidth(columnElement) || 0;
|
|
74
|
+
currentColumn.current = columnElement;
|
|
75
|
+
}
|
|
35
76
|
}
|
|
36
|
-
}, [tableColumns]);
|
|
37
|
-
(0, react_1.useEffect)(() => {
|
|
38
|
-
setColumns((prev) => {
|
|
39
|
-
var _a;
|
|
40
|
-
return (0, handleResizeOnColumnsVisibilityChange_1.handleResizeOnColumnsVisibilityChange)(prev, tableColumns, columnsSizingRef.current, ((_a = tableContainerRef.current) === null || _a === void 0 ? void 0 : _a.scrollWidth) || 0, allTableColumnsKeys.length === tableColumns.length);
|
|
41
|
-
});
|
|
42
|
-
}, [allTableColumnsKeys.length, tableColumns]);
|
|
43
|
-
const setColumnsCallback = (0, react_1.useCallback)((columnsSizing) => {
|
|
44
|
-
setColumns((prevColumns) => {
|
|
45
|
-
var _a;
|
|
46
|
-
const tableWidth = ((_a = tableContainerRef.current) === null || _a === void 0 ? void 0 : _a.scrollWidth) || 0;
|
|
47
|
-
const newColumns = prevColumns.map((column) => (Object.assign(Object.assign({}, column), { width: (columnsSizing === null || columnsSizing === void 0 ? void 0 : columnsSizing[column.accessorKey]) || column.width || 0 })));
|
|
48
|
-
return (0, resizeColumns_1.resizeColumns)(newColumns, tableWidth);
|
|
49
|
-
});
|
|
50
77
|
}, []);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
newColumn1Width =
|
|
76
|
-
newColumn2Width === 40
|
|
77
|
-
? column1Width + column2Width - 40
|
|
78
|
-
: column1Width + widthChange;
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
newColumn1Width = Math.max(40, column1Width + widthChange);
|
|
82
|
-
newColumn2Width =
|
|
83
|
-
newColumn1Width === 40
|
|
84
|
-
? column1Width + column2Width - 40
|
|
85
|
-
: column2Width - widthChange;
|
|
86
|
-
}
|
|
87
|
-
const newColumns = [...prev];
|
|
88
|
-
newColumns[selectedColumn] = Object.assign(Object.assign({}, column1), { width: newColumn1Width });
|
|
89
|
-
newColumns[selectedColumn + 1] = Object.assign(Object.assign({}, column2), { width: newColumn2Width });
|
|
90
|
-
return newColumns;
|
|
91
|
-
});
|
|
92
|
-
};
|
|
93
|
-
const mouseEvents = {
|
|
94
|
-
moveHandler: (e) => onMove(e.clientX),
|
|
95
|
-
upHandler: () => {
|
|
96
|
-
var _a, _b;
|
|
97
|
-
setTimeout(() => setIsResizing(false), 100);
|
|
98
|
-
(_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.removeEventListener('mousemove', mouseEvents.moveHandler);
|
|
99
|
-
(_b = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseup', mouseEvents.upHandler);
|
|
100
|
-
},
|
|
101
|
-
};
|
|
102
|
-
(_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.addEventListener('mousemove', mouseEvents.moveHandler);
|
|
103
|
-
(_b = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseup', mouseEvents.upHandler);
|
|
104
|
-
}, []);
|
|
105
|
-
(0, react_1.useEffect)(() => {
|
|
106
|
-
const resizer = new ResizeObserver(() => {
|
|
107
|
-
setColumnsCallback();
|
|
78
|
+
const handleMouseMove = useCallback((event) => {
|
|
79
|
+
if (!isResizing || !currentColumn.current) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
if (rafId.current) {
|
|
83
|
+
cancelAnimationFrame(rafId.current);
|
|
84
|
+
}
|
|
85
|
+
rafId.current = requestAnimationFrame(() => {
|
|
86
|
+
if (!currentColumn.current) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
const columnElement = currentColumn.current;
|
|
90
|
+
if (!columnElement) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const minWidth = getColumnMinWidth(columnElement);
|
|
94
|
+
const maxWidth = getColumnMaxWidth(columnElement);
|
|
95
|
+
const newDiffX = startX.current - event.screenX;
|
|
96
|
+
const newWidth = startingColumnWidth.current - newDiffX;
|
|
97
|
+
// not allow resizing to be less than minWidth or greater than maxWidth
|
|
98
|
+
if (newWidth > maxWidth || newWidth < minWidth) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
setColumnWidth(columnElement, newWidth);
|
|
108
102
|
});
|
|
109
|
-
|
|
110
|
-
|
|
103
|
+
}, [isResizing]);
|
|
104
|
+
const handleMouseUp = useCallback(() => {
|
|
105
|
+
if (!isResizing || !currentColumn.current) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
const columnElement = currentColumn.current;
|
|
109
|
+
if (columnElement) {
|
|
110
|
+
const columnId = columnElement.dataset.columnResizeId;
|
|
111
|
+
if (!columnId) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const width = getColumnWidth(columnElement) || 0;
|
|
115
|
+
setPersistedColumnsSizing((prev) => {
|
|
116
|
+
return { ...(prev || {}), [columnId]: width };
|
|
117
|
+
});
|
|
118
|
+
requestAnimationFrame(() => {
|
|
119
|
+
currentColumn.current = null;
|
|
120
|
+
setIsResizing(false);
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
if (rafId.current) {
|
|
124
|
+
cancelAnimationFrame(rafId.current);
|
|
125
|
+
}
|
|
126
|
+
currentColumn.current = null;
|
|
127
|
+
}, [isResizing]);
|
|
128
|
+
const handleMouseOut = useCallback((event) => {
|
|
129
|
+
if (!event.relatedTarget && isResizing) {
|
|
130
|
+
currentColumn.current = null;
|
|
131
|
+
handleMouseUp();
|
|
111
132
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
const { getPreferences, setPreferences } = (0, persistentSettingsStore_1.useTablePersistentSettingsStore)(({ actions }) => ({
|
|
133
|
+
}, [isResizing, handleMouseUp]);
|
|
134
|
+
const { getPreferences, setPreferences } = useTablePersistentSettingsStore(({ actions }) => ({
|
|
115
135
|
getPreferences: actions.getPreferences,
|
|
116
136
|
setPreferences: actions.setPreferences,
|
|
117
137
|
}));
|
|
118
|
-
|
|
138
|
+
const [areSettingsLoaded, setAreSettingsLoaded] = useState(false);
|
|
139
|
+
useEffect(() => {
|
|
119
140
|
if (tablePersistentSettingsKey) {
|
|
120
|
-
const
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
}
|
|
141
|
+
const columnsSizing = getPreferences(tablePersistentSettingsKey, 'columnsSizing');
|
|
142
|
+
const data = columnsSizing && Object.keys(columnsSizing).length > 0
|
|
143
|
+
? columnsSizing
|
|
144
|
+
: undefined;
|
|
145
|
+
setPersistedColumnsSizing(data);
|
|
126
146
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
}, {});
|
|
133
|
-
const _columnsSizing = (allTableColumnsKeys || []).reduce((acc, accessorKey) => {
|
|
134
|
-
acc[accessorKey] =
|
|
135
|
-
_columns[accessorKey] || columnsSizingRef.current[accessorKey] || 0;
|
|
136
|
-
return acc;
|
|
137
|
-
}, {});
|
|
138
|
-
columnsSizingRef.current = Object.assign(Object.assign({}, columnsSizingRef.current), _columnsSizing);
|
|
139
|
-
if (tablePersistentSettingsKey) {
|
|
147
|
+
setAreSettingsLoaded(true);
|
|
148
|
+
}, [getPreferences, tablePersistentSettingsKey]);
|
|
149
|
+
// keep store in sync with the persisted columns sizing
|
|
150
|
+
useEffect(() => {
|
|
151
|
+
if (persistedColumnsSizing && tablePersistentSettingsKey) {
|
|
140
152
|
setPreferences({
|
|
141
|
-
columnsSizing:
|
|
153
|
+
columnsSizing: persistedColumnsSizing,
|
|
142
154
|
}, tablePersistentSettingsKey);
|
|
143
155
|
}
|
|
156
|
+
}, [persistedColumnsSizing, setPreferences, tablePersistentSettingsKey]);
|
|
157
|
+
// fixes the column widths when the component is mounted
|
|
158
|
+
// so the columns don't resize when the user starts dragging
|
|
159
|
+
const setColumnWidths = useCallback(() => {
|
|
160
|
+
if (!areSettingsLoaded || isResizing) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
const allHandles = document.querySelectorAll(`[data-column-resize-id]`);
|
|
164
|
+
const lastHandleId = allHandles[allHandles.length - 1]
|
|
165
|
+
?.dataset?.columnResizeId;
|
|
166
|
+
// calculate initial column widths
|
|
167
|
+
const columnsSizing = {};
|
|
168
|
+
if (allHandles.length === 0) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
Array.from(allHandles).forEach((handle) => {
|
|
172
|
+
const columnId = handle.dataset.columnResizeId;
|
|
173
|
+
if (!columnId) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const columnElement = getColumnElement(columnId);
|
|
177
|
+
if (!columnElement) {
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
if (columnId === lastHandleId) {
|
|
181
|
+
setColumnFullWidth(columnElement);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
// use persisted columns sizing if available
|
|
185
|
+
if (persistedColumnsSizing?.[columnId]) {
|
|
186
|
+
setColumnWidth(columnElement, persistedColumnsSizing[columnId]);
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
const initialWidth = getColumnInitialWidth(columnElement);
|
|
190
|
+
const minWidth = getColumnMinWidth(columnElement);
|
|
191
|
+
const maxWidth = getColumnMaxWidth(columnElement);
|
|
192
|
+
const colWidth = getColumnWidth(columnElement);
|
|
193
|
+
let width = 0;
|
|
194
|
+
if (initialWidth) {
|
|
195
|
+
if (initialWidth > maxWidth) {
|
|
196
|
+
width = maxWidth;
|
|
197
|
+
}
|
|
198
|
+
else if (initialWidth < minWidth) {
|
|
199
|
+
width = minWidth;
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
width = initialWidth;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
if (colWidth > maxWidth) {
|
|
207
|
+
width = maxWidth;
|
|
208
|
+
}
|
|
209
|
+
else if (colWidth < minWidth) {
|
|
210
|
+
width = minWidth;
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
width = colWidth;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
setColumnWidth(columnElement, width);
|
|
217
|
+
columnsSizing[columnId] = width;
|
|
218
|
+
});
|
|
219
|
+
// persist columns sizing if not already set
|
|
220
|
+
if (!persistedColumnsSizing) {
|
|
221
|
+
setPersistedColumnsSizing(columnsSizing);
|
|
222
|
+
}
|
|
223
|
+
if (tableRef.current) {
|
|
224
|
+
if (allHandles.length === 1) {
|
|
225
|
+
tableRef.current.style.width = '100%';
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
// allow table to resized freely after all columns are set
|
|
229
|
+
tableRef.current.style.width = 'auto';
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}, [areSettingsLoaded, persistedColumnsSizing, isResizing]);
|
|
233
|
+
useEffect(() => {
|
|
234
|
+
document.addEventListener('mousemove', handleMouseMove);
|
|
235
|
+
document.addEventListener('mouseup', handleMouseUp);
|
|
236
|
+
document.addEventListener('mousedown', handleMouseDown);
|
|
237
|
+
document.addEventListener('mouseout', handleMouseOut);
|
|
238
|
+
return () => {
|
|
239
|
+
document.removeEventListener('mousemove', handleMouseMove);
|
|
240
|
+
document.removeEventListener('mouseup', handleMouseUp);
|
|
241
|
+
document.removeEventListener('mousedown', handleMouseDown);
|
|
242
|
+
document.removeEventListener('mouseout', handleMouseOut);
|
|
243
|
+
};
|
|
144
244
|
}, [
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
]);
|
|
150
|
-
return {
|
|
151
|
-
columns,
|
|
245
|
+
handleMouseDown,
|
|
246
|
+
handleMouseMove,
|
|
247
|
+
handleMouseOut,
|
|
248
|
+
handleMouseUp,
|
|
152
249
|
tableContainerRef,
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
250
|
+
]);
|
|
251
|
+
useEffect(() => {
|
|
252
|
+
if (isResizing) {
|
|
253
|
+
document.body.style.cursor = 'ew-resize';
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
document.body.style.cursor = 'default';
|
|
257
|
+
}
|
|
258
|
+
}, [isResizing]);
|
|
259
|
+
useEffect(() => {
|
|
260
|
+
setColumnWidths();
|
|
261
|
+
return () => {
|
|
262
|
+
if (rafId.current) {
|
|
263
|
+
cancelAnimationFrame(rafId.current);
|
|
264
|
+
}
|
|
265
|
+
};
|
|
266
|
+
}, [setColumnWidths]);
|
|
267
|
+
return { isResizing, setColumnWidths, tableContainerRef, tableRef };
|
|
156
268
|
};
|
|
157
|
-
|
|
269
|
+
export default useColumnResizing;
|
|
158
270
|
//# sourceMappingURL=index.jsx.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/components/table/useTable/useColumnResizing/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/components/table/useTable/useColumnResizing/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/*
|
|
3
2
|
* Copyright 2023 Google LLC
|
|
4
3
|
*
|
|
@@ -14,21 +13,20 @@
|
|
|
14
13
|
* See the License for the specific language governing permissions and
|
|
15
14
|
* limitations under the License.
|
|
16
15
|
*/
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
16
|
/**
|
|
19
17
|
* External dependencies.
|
|
20
18
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
import { useState, useCallback, useMemo, useEffect } from 'react';
|
|
20
|
+
import { getValueByKey } from '@google-psat/common';
|
|
21
|
+
import { useTablePersistentSettingsStore } from '../../persistentSettingsStore';
|
|
24
22
|
const useColumnSorting = (data, tableColumns, tablePersistentSettingsKey) => {
|
|
25
|
-
const [sortKey, _setSortKey] =
|
|
26
|
-
const [ascending, setAscending] =
|
|
27
|
-
const [isDataLoading, setIsDataLoading] =
|
|
28
|
-
const setSortOrder =
|
|
23
|
+
const [sortKey, _setSortKey] = useState('');
|
|
24
|
+
const [ascending, setAscending] = useState(true);
|
|
25
|
+
const [isDataLoading, setIsDataLoading] = useState(true);
|
|
26
|
+
const setSortOrder = useCallback((sortOrder) => {
|
|
29
27
|
setAscending(sortOrder === 'asc');
|
|
30
28
|
}, []);
|
|
31
|
-
const setSortKey =
|
|
29
|
+
const setSortKey = useCallback((newSortKey) => {
|
|
32
30
|
if (newSortKey === sortKey) {
|
|
33
31
|
setAscending(!ascending);
|
|
34
32
|
}
|
|
@@ -37,16 +35,14 @@ const useColumnSorting = (data, tableColumns, tablePersistentSettingsKey) => {
|
|
|
37
35
|
setAscending(true);
|
|
38
36
|
}
|
|
39
37
|
}, [ascending, sortKey]);
|
|
40
|
-
const sortedData =
|
|
41
|
-
var _a;
|
|
38
|
+
const sortedData = useMemo(() => {
|
|
42
39
|
if (isDataLoading) {
|
|
43
40
|
return [];
|
|
44
41
|
}
|
|
45
|
-
const sortingComparator =
|
|
42
|
+
const sortingComparator = tableColumns.find((column) => column.accessorKey === sortKey)?.sortingComparator;
|
|
46
43
|
const _sortedData = [...data].sort((a, b) => {
|
|
47
|
-
|
|
48
|
-
let
|
|
49
|
-
let candidateB = (_b = (0, common_1.getValueByKey)(sortKey, b)) !== null && _b !== void 0 ? _b : '';
|
|
44
|
+
let candidateA = getValueByKey(sortKey, a) ?? '';
|
|
45
|
+
let candidateB = getValueByKey(sortKey, b) ?? '';
|
|
50
46
|
if (sortingComparator) {
|
|
51
47
|
return sortingComparator(candidateA, candidateB) * (ascending ? 1 : -1);
|
|
52
48
|
}
|
|
@@ -65,11 +61,11 @@ const useColumnSorting = (data, tableColumns, tablePersistentSettingsKey) => {
|
|
|
65
61
|
});
|
|
66
62
|
return _sortedData;
|
|
67
63
|
}, [ascending, data, isDataLoading, sortKey, tableColumns]);
|
|
68
|
-
const { getPreferences, setPreferences } =
|
|
64
|
+
const { getPreferences, setPreferences } = useTablePersistentSettingsStore(({ actions }) => ({
|
|
69
65
|
getPreferences: actions.getPreferences,
|
|
70
66
|
setPreferences: actions.setPreferences,
|
|
71
67
|
}));
|
|
72
|
-
|
|
68
|
+
useEffect(() => {
|
|
73
69
|
if (tablePersistentSettingsKey) {
|
|
74
70
|
const sortByData = getPreferences(tablePersistentSettingsKey, 'sortBy');
|
|
75
71
|
const sortOrderData = getPreferences(tablePersistentSettingsKey, 'sortOrder');
|
|
@@ -86,7 +82,7 @@ const useColumnSorting = (data, tableColumns, tablePersistentSettingsKey) => {
|
|
|
86
82
|
setAscending(true);
|
|
87
83
|
};
|
|
88
84
|
}, [getPreferences, tablePersistentSettingsKey]);
|
|
89
|
-
|
|
85
|
+
useEffect(() => {
|
|
90
86
|
if (tablePersistentSettingsKey && sortKey) {
|
|
91
87
|
setPreferences({
|
|
92
88
|
sortBy: sortKey,
|
|
@@ -102,5 +98,5 @@ const useColumnSorting = (data, tableColumns, tablePersistentSettingsKey) => {
|
|
|
102
98
|
sortOrder: ascending ? 'asc' : 'desc',
|
|
103
99
|
};
|
|
104
100
|
};
|
|
105
|
-
|
|
101
|
+
export default useColumnSorting;
|
|
106
102
|
//# sourceMappingURL=index.jsx.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/components/table/useTable/useColumnSorting/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/components/table/useTable/useColumnSorting/index.tsx"],"names":[],"mappings":"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"}
|