@google-psat/design-system 0.9.0-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.
Files changed (430) hide show
  1. package/.eslintrc.json +6 -0
  2. package/README.md +4 -0
  3. package/dist/components/bulletList/index.jsx +51 -0
  4. package/dist/components/bulletList/index.jsx.map +1 -0
  5. package/dist/components/bulletList/listRow.jsx +41 -0
  6. package/dist/components/bulletList/listRow.jsx.map +1 -0
  7. package/dist/components/button/index.jsx +44 -0
  8. package/dist/components/button/index.jsx.map +1 -0
  9. package/dist/components/button/stories/Button.stories.jsx +23 -0
  10. package/dist/components/button/stories/Button.stories.jsx.map +1 -0
  11. package/dist/components/circle/circleEmpty.jsx +31 -0
  12. package/dist/components/circle/circleEmpty.jsx.map +1 -0
  13. package/dist/components/circle/index.jsx +27 -0
  14. package/dist/components/circle/index.jsx.map +1 -0
  15. package/dist/components/circle/stories/circle.stories.jsx +26 -0
  16. package/dist/components/circle/stories/circle.stories.jsx.map +1 -0
  17. package/dist/components/circle/stories/circleEmpty.stories.jsx +18 -0
  18. package/dist/components/circle/stories/circleEmpty.stories.jsx.map +1 -0
  19. package/dist/components/circlePieChart/emptyCirclePieChart.jsx +39 -0
  20. package/dist/components/circlePieChart/emptyCirclePieChart.jsx.map +1 -0
  21. package/dist/components/circlePieChart/index.jsx +52 -0
  22. package/dist/components/circlePieChart/index.jsx.map +1 -0
  23. package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx +91 -0
  24. package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx.map +1 -0
  25. package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx +48 -0
  26. package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx.map +1 -0
  27. package/dist/components/cookieDetails/details.jsx +272 -0
  28. package/dist/components/cookieDetails/details.jsx.map +1 -0
  29. package/dist/components/cookieDetails/index.jsx +41 -0
  30. package/dist/components/cookieDetails/index.jsx.map +1 -0
  31. package/dist/components/cookieDetails/stories/cookieDetails.stories.js +30 -0
  32. package/dist/components/cookieDetails/stories/cookieDetails.stories.js.map +1 -0
  33. package/dist/components/cookieDetails/stories/details.stories.js +30 -0
  34. package/dist/components/cookieDetails/stories/details.stories.js.map +1 -0
  35. package/dist/components/cookieTable/index.jsx +117 -0
  36. package/dist/components/cookieTable/index.jsx.map +1 -0
  37. package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js +53 -0
  38. package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js.map +1 -0
  39. package/dist/components/cookieTable/utils/exportCookies.js +32 -0
  40. package/dist/components/cookieTable/utils/exportCookies.js.map +1 -0
  41. package/dist/components/cookieTable/utils/index.js +26 -0
  42. package/dist/components/cookieTable/utils/index.js.map +1 -0
  43. package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx +56 -0
  44. package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx.map +1 -0
  45. package/dist/components/cookiesLanding/cookiesMatrix/index.jsx +60 -0
  46. package/dist/components/cookiesLanding/cookiesMatrix/index.jsx.map +1 -0
  47. package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx +59 -0
  48. package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx.map +1 -0
  49. package/dist/components/cookiesLanding/index.jsx +31 -0
  50. package/dist/components/cookiesLanding/index.jsx.map +1 -0
  51. package/dist/components/cookiesLanding/landingHeader/index.jsx +54 -0
  52. package/dist/components/cookiesLanding/landingHeader/index.jsx.map +1 -0
  53. package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx +40 -0
  54. package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx.map +1 -0
  55. package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx +20 -0
  56. package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx.map +1 -0
  57. package/dist/components/cookiesLanding/useFiltersMapping.jsx +55 -0
  58. package/dist/components/cookiesLanding/useFiltersMapping.jsx.map +1 -0
  59. package/dist/components/errorFallback/extensionReloadNotification.jsx +50 -0
  60. package/dist/components/errorFallback/extensionReloadNotification.jsx.map +1 -0
  61. package/dist/components/errorFallback/index.jsx +37 -0
  62. package/dist/components/errorFallback/index.jsx.map +1 -0
  63. package/dist/components/errorFallback/stories/errorFallback.stories.jsx +31 -0
  64. package/dist/components/errorFallback/stories/errorFallback.stories.jsx.map +1 -0
  65. package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx +20 -0
  66. package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx.map +1 -0
  67. package/dist/components/exportButton/index.jsx +40 -0
  68. package/dist/components/exportButton/index.jsx.map +1 -0
  69. package/dist/components/index.js +97 -0
  70. package/dist/components/index.js.map +1 -0
  71. package/dist/components/inspectButton/index.jsx +39 -0
  72. package/dist/components/inspectButton/index.jsx.map +1 -0
  73. package/dist/components/landingPage/constants.js +45 -0
  74. package/dist/components/landingPage/constants.js.map +1 -0
  75. package/dist/components/landingPage/contentPanel.jsx +51 -0
  76. package/dist/components/landingPage/contentPanel.jsx.map +1 -0
  77. package/dist/components/landingPage/index.jsx +90 -0
  78. package/dist/components/landingPage/index.jsx.map +1 -0
  79. package/dist/components/landingPage/infoCard/fetchPSInfo.js +54 -0
  80. package/dist/components/landingPage/infoCard/fetchPSInfo.js.map +1 -0
  81. package/dist/components/landingPage/infoCard/index.jsx +87 -0
  82. package/dist/components/landingPage/infoCard/index.jsx.map +1 -0
  83. package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx +91 -0
  84. package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx.map +1 -0
  85. package/dist/components/landingPage/infoCard/renderLink.jsx +40 -0
  86. package/dist/components/landingPage/infoCard/renderLink.jsx.map +1 -0
  87. package/dist/components/landingPage/quickLinksList.jsx +117 -0
  88. package/dist/components/landingPage/quickLinksList.jsx.map +1 -0
  89. package/dist/components/matrix/index.jsx +55 -0
  90. package/dist/components/matrix/index.jsx.map +1 -0
  91. package/dist/components/matrix/matrixComponent/index.jsx +47 -0
  92. package/dist/components/matrix/matrixComponent/index.jsx.map +1 -0
  93. package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx +55 -0
  94. package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx.map +1 -0
  95. package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx +27 -0
  96. package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx.map +1 -0
  97. package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx +25 -0
  98. package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx.map +1 -0
  99. package/dist/components/matrix/stories/matrix.stories.jsx +59 -0
  100. package/dist/components/matrix/stories/matrix.stories.jsx.map +1 -0
  101. package/dist/components/matrixContainer/index.jsx +91 -0
  102. package/dist/components/matrixContainer/index.jsx.map +1 -0
  103. package/dist/components/menuBar/index.jsx +141 -0
  104. package/dist/components/menuBar/index.jsx.map +1 -0
  105. package/dist/components/menuBar/utils/index.js +24 -0
  106. package/dist/components/menuBar/utils/index.js.map +1 -0
  107. package/dist/components/menuBar/utils/isElementInView.js +39 -0
  108. package/dist/components/menuBar/utils/isElementInView.js.map +1 -0
  109. package/dist/components/messageBox/index.jsx +34 -0
  110. package/dist/components/messageBox/index.jsx.map +1 -0
  111. package/dist/components/messageBox/stories/messageBox.stories.jsx +23 -0
  112. package/dist/components/messageBox/stories/messageBox.stories.jsx.map +1 -0
  113. package/dist/components/progressBar/borderProgressbar.jsx +33 -0
  114. package/dist/components/progressBar/borderProgressbar.jsx.map +1 -0
  115. package/dist/components/progressBar/index.jsx +33 -0
  116. package/dist/components/progressBar/index.jsx.map +1 -0
  117. package/dist/components/progressBar/stories/progressBar.stories.jsx +22 -0
  118. package/dist/components/progressBar/stories/progressBar.stories.jsx.map +1 -0
  119. package/dist/components/refreshButton/index.jsx +32 -0
  120. package/dist/components/refreshButton/index.jsx.map +1 -0
  121. package/dist/components/searchInput/index.jsx +86 -0
  122. package/dist/components/searchInput/index.jsx.map +1 -0
  123. package/dist/components/sidebar/index.js +40 -0
  124. package/dist/components/sidebar/index.js.map +1 -0
  125. package/dist/components/sidebar/sidebar.jsx +82 -0
  126. package/dist/components/sidebar/sidebar.jsx.map +1 -0
  127. package/dist/components/sidebar/sidebarChild.jsx +141 -0
  128. package/dist/components/sidebar/sidebarChild.jsx.map +1 -0
  129. package/dist/components/sidebar/useSidebar/constants.js +38 -0
  130. package/dist/components/sidebar/useSidebar/constants.js.map +1 -0
  131. package/dist/components/sidebar/useSidebar/context.js +48 -0
  132. package/dist/components/sidebar/useSidebar/context.js.map +1 -0
  133. package/dist/components/sidebar/useSidebar/index.js +35 -0
  134. package/dist/components/sidebar/useSidebar/index.js.map +1 -0
  135. package/dist/components/sidebar/useSidebar/provider.jsx +243 -0
  136. package/dist/components/sidebar/useSidebar/provider.jsx.map +1 -0
  137. package/dist/components/sidebar/useSidebar/types.js +18 -0
  138. package/dist/components/sidebar/useSidebar/types.js.map +1 -0
  139. package/dist/components/sidebar/useSidebar/useSidebar.jsx +30 -0
  140. package/dist/components/sidebar/useSidebar/useSidebar.jsx.map +1 -0
  141. package/dist/components/sidebar/useSidebar/utils/createKeyPath.js +54 -0
  142. package/dist/components/sidebar/useSidebar/utils/createKeyPath.js.map +1 -0
  143. package/dist/components/sidebar/useSidebar/utils/findItem.js +54 -0
  144. package/dist/components/sidebar/useSidebar/utils/findItem.js.map +1 -0
  145. package/dist/components/sidebar/useSidebar/utils/findKeyParent.js +32 -0
  146. package/dist/components/sidebar/useSidebar/utils/findKeyParent.js.map +1 -0
  147. package/dist/components/sidebar/useSidebar/utils/findNextItem.js +66 -0
  148. package/dist/components/sidebar/useSidebar/utils/findNextItem.js.map +1 -0
  149. package/dist/components/sidebar/useSidebar/utils/findPrevItem.js +59 -0
  150. package/dist/components/sidebar/useSidebar/utils/findPrevItem.js.map +1 -0
  151. package/dist/components/sidebar/useSidebar/utils/index.js +34 -0
  152. package/dist/components/sidebar/useSidebar/utils/index.js.map +1 -0
  153. package/dist/components/sidebar/useSidebar/utils/matchKey.js +30 -0
  154. package/dist/components/sidebar/useSidebar/utils/matchKey.js.map +1 -0
  155. package/dist/components/table/components/columnMenu/columnList.jsx +71 -0
  156. package/dist/components/table/components/columnMenu/columnList.jsx.map +1 -0
  157. package/dist/components/table/components/columnMenu/columnListItem.jsx +40 -0
  158. package/dist/components/table/components/columnMenu/columnListItem.jsx.map +1 -0
  159. package/dist/components/table/components/columnMenu/index.jsx +110 -0
  160. package/dist/components/table/components/columnMenu/index.jsx.map +1 -0
  161. package/dist/components/table/components/filtersSidebar/chips/chip.jsx +40 -0
  162. package/dist/components/table/components/filtersSidebar/chips/chip.jsx.map +1 -0
  163. package/dist/components/table/components/filtersSidebar/chips/chipList.jsx +44 -0
  164. package/dist/components/table/components/filtersSidebar/chips/chipList.jsx.map +1 -0
  165. package/dist/components/table/components/filtersSidebar/chips/index.jsx +53 -0
  166. package/dist/components/table/components/filtersSidebar/chips/index.jsx.map +1 -0
  167. package/dist/components/table/components/filtersSidebar/index.jsx +107 -0
  168. package/dist/components/table/components/filtersSidebar/index.jsx.map +1 -0
  169. package/dist/components/table/components/filtersSidebar/listItem.jsx +110 -0
  170. package/dist/components/table/components/filtersSidebar/listItem.jsx.map +1 -0
  171. package/dist/components/table/components/filtersSidebar/option.jsx +65 -0
  172. package/dist/components/table/components/filtersSidebar/option.jsx.map +1 -0
  173. package/dist/components/table/components/filtersSidebar/subList.jsx +74 -0
  174. package/dist/components/table/components/filtersSidebar/subList.jsx.map +1 -0
  175. package/dist/components/table/components/index.jsx +118 -0
  176. package/dist/components/table/components/index.jsx.map +1 -0
  177. package/dist/components/table/components/tableBody/bodyCell.jsx +54 -0
  178. package/dist/components/table/components/tableBody/bodyCell.jsx.map +1 -0
  179. package/dist/components/table/components/tableBody/bodyRow.jsx +64 -0
  180. package/dist/components/table/components/tableBody/bodyRow.jsx.map +1 -0
  181. package/dist/components/table/components/tableBody/index.jsx +148 -0
  182. package/dist/components/table/components/tableBody/index.jsx.map +1 -0
  183. package/dist/components/table/components/tableHeader/headerCell.jsx +83 -0
  184. package/dist/components/table/components/tableHeader/headerCell.jsx.map +1 -0
  185. package/dist/components/table/components/tableHeader/headerResizer.jsx +31 -0
  186. package/dist/components/table/components/tableHeader/headerResizer.jsx.map +1 -0
  187. package/dist/components/table/components/tableHeader/headerRow.jsx +39 -0
  188. package/dist/components/table/components/tableHeader/headerRow.jsx.map +1 -0
  189. package/dist/components/table/components/tableHeader/index.jsx +63 -0
  190. package/dist/components/table/components/tableHeader/index.jsx.map +1 -0
  191. package/dist/components/table/components/tableTopBar/index.jsx +92 -0
  192. package/dist/components/table/components/tableTopBar/index.jsx.map +1 -0
  193. package/dist/components/table/index.js +41 -0
  194. package/dist/components/table/index.js.map +1 -0
  195. package/dist/components/table/persistentSettingsStore/index.jsx +114 -0
  196. package/dist/components/table/persistentSettingsStore/index.jsx.map +1 -0
  197. package/dist/components/table/persistentSettingsStore/utils/extractStorage.js +50 -0
  198. package/dist/components/table/persistentSettingsStore/utils/extractStorage.js.map +1 -0
  199. package/dist/components/table/persistentSettingsStore/utils/index.js +26 -0
  200. package/dist/components/table/persistentSettingsStore/utils/index.js.map +1 -0
  201. package/dist/components/table/persistentSettingsStore/utils/updateStorage.js +87 -0
  202. package/dist/components/table/persistentSettingsStore/utils/updateStorage.js.map +1 -0
  203. package/dist/components/table/useTable/context.js +57 -0
  204. package/dist/components/table/useTable/context.js.map +1 -0
  205. package/dist/components/table/useTable/index.js +35 -0
  206. package/dist/components/table/useTable/index.js.map +1 -0
  207. package/dist/components/table/useTable/provider.jsx +138 -0
  208. package/dist/components/table/useTable/provider.jsx.map +1 -0
  209. package/dist/components/table/useTable/types.js +3 -0
  210. package/dist/components/table/useTable/types.js.map +1 -0
  211. package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js +61 -0
  212. package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js.map +1 -0
  213. package/dist/components/table/useTable/useColumnResizing/index.jsx +161 -0
  214. package/dist/components/table/useTable/useColumnResizing/index.jsx.map +1 -0
  215. package/dist/components/table/useTable/useColumnResizing/resizeColumns.js +54 -0
  216. package/dist/components/table/useTable/useColumnResizing/resizeColumns.js.map +1 -0
  217. package/dist/components/table/useTable/useColumnSorting/index.jsx +90 -0
  218. package/dist/components/table/useTable/useColumnSorting/index.jsx.map +1 -0
  219. package/dist/components/table/useTable/useColumnVisibility/index.jsx +127 -0
  220. package/dist/components/table/useTable/useColumnVisibility/index.jsx.map +1 -0
  221. package/dist/components/table/useTable/useFiltering/hooks/index.js +28 -0
  222. package/dist/components/table/useTable/useFiltering/hooks/index.js.map +1 -0
  223. package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx +159 -0
  224. package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx.map +1 -0
  225. package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx +65 -0
  226. package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx.map +1 -0
  227. package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx +121 -0
  228. package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx.map +1 -0
  229. package/dist/components/table/useTable/useFiltering/index.jsx +189 -0
  230. package/dist/components/table/useTable/useFiltering/index.jsx.map +1 -0
  231. package/dist/components/table/useTable/useSearch/index.jsx +73 -0
  232. package/dist/components/table/useTable/useSearch/index.jsx.map +1 -0
  233. package/dist/components/table/useTable/useTable.jsx +36 -0
  234. package/dist/components/table/useTable/useTable.jsx.map +1 -0
  235. package/dist/components/table/utils/generatExtensionCookietableCSV.js +88 -0
  236. package/dist/components/table/utils/generatExtensionCookietableCSV.js.map +1 -0
  237. package/dist/components/table/utils/generateCLICookieTableCSV.js +76 -0
  238. package/dist/components/table/utils/generateCLICookieTableCSV.js.map +1 -0
  239. package/dist/components/table/utils/index.js +41 -0
  240. package/dist/components/table/utils/index.js.map +1 -0
  241. package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js +57 -0
  242. package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js.map +1 -0
  243. package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js +58 -0
  244. package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js.map +1 -0
  245. package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js +37 -0
  246. package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js.map +1 -0
  247. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js +39 -0
  248. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js.map +1 -0
  249. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js +48 -0
  250. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js.map +1 -0
  251. package/dist/components/table/utils/precalculatedFiltersUtils/index.js +32 -0
  252. package/dist/components/table/utils/precalculatedFiltersUtils/index.js.map +1 -0
  253. package/dist/components/toastMessage/index.jsx +39 -0
  254. package/dist/components/toastMessage/index.jsx.map +1 -0
  255. package/dist/components/toggleSwitch/index.jsx +41 -0
  256. package/dist/components/toggleSwitch/index.jsx.map +1 -0
  257. package/dist/constants.js +143 -0
  258. package/dist/constants.js.map +1 -0
  259. package/dist/icons/index.jsx +143 -0
  260. package/dist/icons/index.jsx.map +1 -0
  261. package/dist/index.js +37 -0
  262. package/dist/index.js.map +1 -0
  263. package/dist/test-data/cookieMockData.js +117 -0
  264. package/dist/test-data/cookieMockData.js.map +1 -0
  265. package/dist/test-data/cookieStats.js +38 -0
  266. package/dist/test-data/cookieStats.js.map +1 -0
  267. package/dist/test-data/cookieTableBody.js +43 -0
  268. package/dist/test-data/cookieTableBody.js.map +1 -0
  269. package/dist/test-data/cookieTableMockData.jsx +268 -0
  270. package/dist/test-data/cookieTableMockData.jsx.map +1 -0
  271. package/dist/test-data/cookiesStatsComponents.js +96 -0
  272. package/dist/test-data/cookiesStatsComponents.js.map +1 -0
  273. package/dist/theme/colors.js +213 -0
  274. package/dist/theme/colors.js.map +1 -0
  275. package/dist/utils/index.js +32 -0
  276. package/dist/utils/index.js.map +1 -0
  277. package/dist/utils/noop.js +22 -0
  278. package/dist/utils/noop.js.map +1 -0
  279. package/dist/utils/prepareCookieDataMapping.js +34 -0
  280. package/dist/utils/prepareCookieDataMapping.js.map +1 -0
  281. package/dist/utils/prepareCookieStatsComponents.js +127 -0
  282. package/dist/utils/prepareCookieStatsComponents.js.map +1 -0
  283. package/dist/utils/prepareCookiesCount.js +110 -0
  284. package/dist/utils/prepareCookiesCount.js.map +1 -0
  285. package/dist/utils/prepareFrameStatsComponent.js +125 -0
  286. package/dist/utils/prepareFrameStatsComponent.js.map +1 -0
  287. package/dist-types/components/bulletList/index.d.ts +10 -0
  288. package/dist-types/components/bulletList/listRow.d.ts +9 -0
  289. package/dist-types/components/button/index.d.ts +14 -0
  290. package/dist-types/components/button/stories/Button.stories.d.ts +11 -0
  291. package/dist-types/components/circle/circleEmpty.d.ts +9 -0
  292. package/dist-types/components/circle/index.d.ts +9 -0
  293. package/dist-types/components/circle/stories/circle.stories.d.ts +11 -0
  294. package/dist-types/components/circle/stories/circleEmpty.stories.d.ts +11 -0
  295. package/dist-types/components/circlePieChart/emptyCirclePieChart.d.ts +6 -0
  296. package/dist-types/components/circlePieChart/index.d.ts +19 -0
  297. package/dist-types/components/circlePieChart/stories/circlePieChart.stories.d.ts +9 -0
  298. package/dist-types/components/circlePieChart/stories/emptyCirclePieChart.stories.d.ts +9 -0
  299. package/dist-types/components/cookieDetails/details.d.ts +11 -0
  300. package/dist-types/components/cookieDetails/index.d.ts +13 -0
  301. package/dist-types/components/cookieDetails/stories/cookieDetails.stories.d.ts +8 -0
  302. package/dist-types/components/cookieDetails/stories/details.stories.d.ts +8 -0
  303. package/dist-types/components/cookieTable/index.d.ts +34 -0
  304. package/dist-types/components/cookieTable/utils/conditionalTableRowClassesHandler.d.ts +3 -0
  305. package/dist-types/components/cookieTable/utils/exportCookies.d.ts +6 -0
  306. package/dist-types/components/cookieTable/utils/index.d.ts +2 -0
  307. package/dist-types/components/cookiesLanding/cookiesLandingWrapper.d.ts +15 -0
  308. package/dist-types/components/cookiesLanding/cookiesMatrix/index.d.ts +24 -0
  309. package/dist-types/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.d.ts +11 -0
  310. package/dist-types/components/cookiesLanding/index.d.ts +17 -0
  311. package/dist-types/components/cookiesLanding/landingHeader/index.d.ts +10 -0
  312. package/dist-types/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.d.ts +11 -0
  313. package/dist-types/components/cookiesLanding/stories/cookiesLanding.stories.d.ts +11 -0
  314. package/dist-types/components/cookiesLanding/useFiltersMapping.d.ts +12 -0
  315. package/dist-types/components/errorFallback/extensionReloadNotification.d.ts +13 -0
  316. package/dist-types/components/errorFallback/index.d.ts +9 -0
  317. package/dist-types/components/errorFallback/stories/errorFallback.stories.d.ts +12 -0
  318. package/dist-types/components/errorFallback/stories/extensionReloadNotification.stories.d.ts +11 -0
  319. package/dist-types/components/exportButton/index.d.ts +11 -0
  320. package/dist-types/components/index.d.ts +34 -0
  321. package/dist-types/components/inspectButton/index.d.ts +11 -0
  322. package/dist-types/components/landingPage/constants.d.ts +4 -0
  323. package/dist-types/components/landingPage/contentPanel.d.ts +16 -0
  324. package/dist-types/components/landingPage/index.d.ts +16 -0
  325. package/dist-types/components/landingPage/infoCard/fetchPSInfo.d.ts +26 -0
  326. package/dist-types/components/landingPage/infoCard/index.d.ts +11 -0
  327. package/dist-types/components/landingPage/infoCard/learnMoreDropdown.d.ts +14 -0
  328. package/dist-types/components/landingPage/infoCard/renderLink.d.ts +11 -0
  329. package/dist-types/components/landingPage/quickLinksList.d.ts +6 -0
  330. package/dist-types/components/matrix/index.d.ts +14 -0
  331. package/dist-types/components/matrix/matrixComponent/index.d.ts +16 -0
  332. package/dist-types/components/matrix/matrixComponent/matrixComponentHorizontal.d.ts +13 -0
  333. package/dist-types/components/matrix/matrixComponent/stories/MatrixComponent.stories.d.ts +11 -0
  334. package/dist-types/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.d.ts +11 -0
  335. package/dist-types/components/matrix/stories/matrix.stories.d.ts +11 -0
  336. package/dist-types/components/matrixContainer/index.d.ts +20 -0
  337. package/dist-types/components/menuBar/index.d.ts +17 -0
  338. package/dist-types/components/menuBar/utils/index.d.ts +1 -0
  339. package/dist-types/components/menuBar/utils/isElementInView.d.ts +6 -0
  340. package/dist-types/components/messageBox/index.d.ts +10 -0
  341. package/dist-types/components/messageBox/stories/messageBox.stories.d.ts +11 -0
  342. package/dist-types/components/progressBar/borderProgressbar.d.ts +9 -0
  343. package/dist-types/components/progressBar/index.d.ts +9 -0
  344. package/dist-types/components/progressBar/stories/progressBar.stories.d.ts +11 -0
  345. package/dist-types/components/refreshButton/index.d.ts +10 -0
  346. package/dist-types/components/searchInput/index.d.ts +11 -0
  347. package/dist-types/components/sidebar/index.d.ts +3 -0
  348. package/dist-types/components/sidebar/sidebar.d.ts +9 -0
  349. package/dist-types/components/sidebar/sidebarChild.d.ts +15 -0
  350. package/dist-types/components/sidebar/useSidebar/constants.d.ts +18 -0
  351. package/dist-types/components/sidebar/useSidebar/context.d.ts +28 -0
  352. package/dist-types/components/sidebar/useSidebar/index.d.ts +3 -0
  353. package/dist-types/components/sidebar/useSidebar/provider.d.ts +6 -0
  354. package/dist-types/components/sidebar/useSidebar/types.d.ts +24 -0
  355. package/dist-types/components/sidebar/useSidebar/useSidebar.d.ts +3 -0
  356. package/dist-types/components/sidebar/useSidebar/utils/createKeyPath.d.ts +13 -0
  357. package/dist-types/components/sidebar/useSidebar/utils/findItem.d.ts +14 -0
  358. package/dist-types/components/sidebar/useSidebar/utils/findKeyParent.d.ts +8 -0
  359. package/dist-types/components/sidebar/useSidebar/utils/findNextItem.d.ts +17 -0
  360. package/dist-types/components/sidebar/useSidebar/utils/findPrevItem.d.ts +16 -0
  361. package/dist-types/components/sidebar/useSidebar/utils/index.d.ts +6 -0
  362. package/dist-types/components/sidebar/useSidebar/utils/matchKey.d.ts +8 -0
  363. package/dist-types/components/table/components/columnMenu/columnList.d.ts +10 -0
  364. package/dist-types/components/table/components/columnMenu/columnListItem.d.ts +16 -0
  365. package/dist-types/components/table/components/columnMenu/index.d.ts +14 -0
  366. package/dist-types/components/table/components/filtersSidebar/chips/chip.d.ts +11 -0
  367. package/dist-types/components/table/components/filtersSidebar/chips/chipList.d.ts +6 -0
  368. package/dist-types/components/table/components/filtersSidebar/chips/index.d.ts +6 -0
  369. package/dist-types/components/table/components/filtersSidebar/index.d.ts +6 -0
  370. package/dist-types/components/table/components/filtersSidebar/listItem.d.ts +14 -0
  371. package/dist-types/components/table/components/filtersSidebar/option.d.ts +13 -0
  372. package/dist-types/components/table/components/filtersSidebar/subList.d.ts +18 -0
  373. package/dist-types/components/table/components/index.d.ts +12 -0
  374. package/dist-types/components/table/components/tableBody/bodyCell.d.ts +23 -0
  375. package/dist-types/components/table/components/tableBody/bodyRow.d.ts +20 -0
  376. package/dist-types/components/table/components/tableBody/index.d.ts +11 -0
  377. package/dist-types/components/table/components/tableHeader/headerCell.d.ts +12 -0
  378. package/dist-types/components/table/components/tableHeader/headerResizer.d.ts +9 -0
  379. package/dist-types/components/table/components/tableHeader/headerRow.d.ts +9 -0
  380. package/dist-types/components/table/components/tableHeader/index.d.ts +14 -0
  381. package/dist-types/components/table/components/tableTopBar/index.d.ts +13 -0
  382. package/dist-types/components/table/index.d.ts +4 -0
  383. package/dist-types/components/table/persistentSettingsStore/index.d.ts +22 -0
  384. package/dist-types/components/table/persistentSettingsStore/utils/extractStorage.d.ts +6 -0
  385. package/dist-types/components/table/persistentSettingsStore/utils/index.d.ts +2 -0
  386. package/dist-types/components/table/persistentSettingsStore/utils/updateStorage.d.ts +8 -0
  387. package/dist-types/components/table/useTable/context.d.ts +46 -0
  388. package/dist-types/components/table/useTable/index.d.ts +3 -0
  389. package/dist-types/components/table/useTable/provider.d.ts +6 -0
  390. package/dist-types/components/table/useTable/types.d.ts +77 -0
  391. package/dist-types/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.d.ts +7 -0
  392. package/dist-types/components/table/useTable/useColumnResizing/index.d.ts +13 -0
  393. package/dist-types/components/table/useTable/useColumnResizing/resizeColumns.d.ts +5 -0
  394. package/dist-types/components/table/useTable/useColumnSorting/index.d.ts +17 -0
  395. package/dist-types/components/table/useTable/useColumnVisibility/index.d.ts +14 -0
  396. package/dist-types/components/table/useTable/useFiltering/hooks/index.d.ts +3 -0
  397. package/dist-types/components/table/useTable/useFiltering/hooks/useFiltersExtraction.d.ts +14 -0
  398. package/dist-types/components/table/useTable/useFiltering/hooks/useFiltersOptions.d.ts +10 -0
  399. package/dist-types/components/table/useTable/useFiltering/hooks/useFiltersPersistence.d.ts +7 -0
  400. package/dist-types/components/table/useTable/useFiltering/index.d.ts +16 -0
  401. package/dist-types/components/table/useTable/useSearch/index.d.ts +16 -0
  402. package/dist-types/components/table/useTable/useTable.d.ts +6 -0
  403. package/dist-types/components/table/utils/generatExtensionCookietableCSV.d.ts +6 -0
  404. package/dist-types/components/table/utils/generateCLICookieTableCSV.d.ts +6 -0
  405. package/dist-types/components/table/utils/index.d.ts +3 -0
  406. package/dist-types/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.d.ts +19 -0
  407. package/dist-types/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.d.ts +20 -0
  408. package/dist-types/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.d.ts +15 -0
  409. package/dist-types/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.d.ts +9 -0
  410. package/dist-types/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.d.ts +16 -0
  411. package/dist-types/components/table/utils/precalculatedFiltersUtils/index.d.ts +5 -0
  412. package/dist-types/components/toastMessage/index.d.ts +14 -0
  413. package/dist-types/components/toggleSwitch/index.d.ts +12 -0
  414. package/dist-types/constants.d.ts +20 -0
  415. package/dist-types/icons/index.d.ts +60 -0
  416. package/dist-types/index.d.ts +5 -0
  417. package/dist-types/test-data/cookieMockData.d.ts +28 -0
  418. package/dist-types/test-data/cookieStats.d.ts +21 -0
  419. package/dist-types/test-data/cookieTableBody.d.ts +88 -0
  420. package/dist-types/test-data/cookieTableMockData.d.ts +209 -0
  421. package/dist-types/test-data/cookiesStatsComponents.d.ts +27 -0
  422. package/dist-types/theme/colors.d.ts +6 -0
  423. package/dist-types/utils/index.d.ts +5 -0
  424. package/dist-types/utils/noop.d.ts +1 -0
  425. package/dist-types/utils/prepareCookieDataMapping.d.ts +12 -0
  426. package/dist-types/utils/prepareCookieStatsComponents.d.ts +6 -0
  427. package/dist-types/utils/prepareCookiesCount.d.ts +13 -0
  428. package/dist-types/utils/prepareFrameStatsComponent.d.ts +27 -0
  429. package/package.json +46 -0
  430. package/tsconfig.json +28 -0
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __importDefault = (this && this.__importDefault) || function (mod) {
41
+ return (mod && mod.__esModule) ? mod : { "default": mod };
42
+ };
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ /**
45
+ * External dependencies.
46
+ */
47
+ const react_1 = __importStar(require("react"));
48
+ /**
49
+ * Internal dependencies.
50
+ */
51
+ const sidebarChild_1 = __importDefault(require("./sidebarChild"));
52
+ const useSidebar_1 = require("./useSidebar");
53
+ const Sidebar = ({ visibleWidth }) => {
54
+ const { sidebarItems, setIsSidebarFocused } = (0, useSidebar_1.useSidebar)(({ state, actions }) => ({
55
+ sidebarItems: state.sidebarItems,
56
+ setIsSidebarFocused: actions.setIsSidebarFocused,
57
+ }));
58
+ const [didUserInteract, setDidUserInteract] = (0, react_1.useState)(false);
59
+ const sidebarContainerRef = (0, react_1.useRef)(null);
60
+ (0, react_1.useEffect)(() => {
61
+ var _a;
62
+ const handleClickOutside = (event) => {
63
+ var _a;
64
+ if (sidebarContainerRef.current &&
65
+ !((_a = sidebarContainerRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target))) {
66
+ setIsSidebarFocused(false);
67
+ }
68
+ };
69
+ (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.addEventListener('click', handleClickOutside);
70
+ return () => {
71
+ var _a;
72
+ (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.removeEventListener('click', handleClickOutside);
73
+ };
74
+ }, [setIsSidebarFocused]);
75
+ return (<div className="w-full h-full overflow-auto border border-l-0 border-t-0 border-b-0 border-gray-300 dark:border-quartz dark:bg-raisin-black" data-testid="sidebar">
76
+ <div ref={sidebarContainerRef} className="min-w-fit">
77
+ {Object.entries(sidebarItems).map(([itemKey, sidebarItem]) => (<sidebarChild_1.default didUserInteract={didUserInteract} setDidUserInteract={setDidUserInteract} itemKey={itemKey} sidebarItem={sidebarItem} key={itemKey} visibleWidth={visibleWidth}/>))}
78
+ </div>
79
+ </div>);
80
+ };
81
+ exports.default = Sidebar;
82
+ //# sourceMappingURL=sidebar.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.jsx","sourceRoot":"","sources":["../../../src/components/sidebar/sidebar.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH;;GAEG;AACH,+CAA2D;AAE3D;;GAEG;AACH,kEAA0C;AAC1C,6CAA0C;AAM1C,MAAM,OAAO,GAAG,CAAC,EAAE,YAAY,EAAgB,EAAE,EAAE;IACjD,MAAM,EAAE,YAAY,EAAE,mBAAmB,EAAE,GAAG,IAAA,uBAAU,EACtD,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;KACjD,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,mBAAmB,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAEzD,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,MAAM,kBAAkB,GAAG,CAAC,KAAiB,EAAE,EAAE;;YAC/C,IACE,mBAAmB,CAAC,OAAO;gBAC3B,CAAC,CAAA,MAAA,mBAAmB,CAAC,OAAO,0CAAE,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,CAAA,EAC5D,CAAC;gBACD,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC;QAEF,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,0CAAE,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAEpE,OAAO,GAAG,EAAE;;YACV,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,0CAAE,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACzE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,OAAO,CACL,CAAC,GAAG,CACF,SAAS,CAAC,6HAA6H,CACvI,WAAW,CAAC,SAAS,CAErB;MAAA,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,WAAW,CAClD;QAAA,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAC5D,CAAC,sBAAY,CACX,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,GAAG,CAAC,CAAC,OAAO,CAAC,CACb,YAAY,CAAC,CAAC,YAAY,CAAC,EAC3B,CACH,CAAC,CACJ;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,OAAO,CAAC"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ /*
27
+ * Copyright 2023 Google LLC
28
+ *
29
+ * Licensed under the Apache License, Version 2.0 (the "License");
30
+ * you may not use this file except in compliance with the License.
31
+ * You may obtain a copy of the License at
32
+ *
33
+ * https://www.apache.org/licenses/LICENSE-2.0
34
+ *
35
+ * Unless required by applicable law or agreed to in writing, software
36
+ * distributed under the License is distributed on an "AS IS" BASIS,
37
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
38
+ * See the License for the specific language governing permissions and
39
+ * limitations under the License.
40
+ */
41
+ /**
42
+ * External dependencies.
43
+ */
44
+ const react_1 = __importStar(require("react"));
45
+ /**
46
+ * Internal dependencies.
47
+ */
48
+ const icons_1 = require("../../icons");
49
+ const useSidebar_1 = require("./useSidebar");
50
+ // eslint-disable-next-line complexity
51
+ const SidebarChild = ({ didUserInteract, setDidUserInteract, itemKey, sidebarItem, recursiveStackIndex = 0, visibleWidth, }) => {
52
+ var _a, _b, _c, _d, _e, _f;
53
+ const { selectedItemKey, isSidebarFocused, setIsSidebarFocused, updateSelectedItemKey, toggleDropdown, isKeyAncestor, isKeySelected, onKeyNavigation, } = (0, useSidebar_1.useSidebar)(({ state, actions }) => ({
54
+ selectedItemKey: state.selectedItemKey,
55
+ isSidebarFocused: state.isSidebarFocused,
56
+ setIsSidebarFocused: actions.setIsSidebarFocused,
57
+ updateSelectedItemKey: actions.updateSelectedItemKey,
58
+ toggleDropdown: actions.toggleDropdown,
59
+ isKeyAncestor: actions.isKeyAncestor,
60
+ isKeySelected: actions.isKeySelected,
61
+ onKeyNavigation: actions.onKeyNavigation,
62
+ }));
63
+ const itemRef = (0, react_1.useRef)(null);
64
+ (0, react_1.useEffect)(() => {
65
+ var _a;
66
+ if (isKeySelected(itemKey) && didUserInteract) {
67
+ (_a = itemRef.current) === null || _a === void 0 ? void 0 : _a.focus();
68
+ }
69
+ }, [
70
+ didUserInteract,
71
+ isKeySelected,
72
+ itemKey,
73
+ selectedItemKey,
74
+ setIsSidebarFocused,
75
+ ]);
76
+ const SelectedIcon = (_a = sidebarItem.selectedIcon) === null || _a === void 0 ? void 0 : _a.Element;
77
+ const Icon = (_b = sidebarItem.icon) === null || _b === void 0 ? void 0 : _b.Element;
78
+ const ExtraInterfaceToTitle = (_c = sidebarItem.extraInterfaceToTitle) === null || _c === void 0 ? void 0 : _c.Element;
79
+ return (<>
80
+ {/* SidebarItem */}
81
+ <div ref={itemRef} tabIndex={0} title={sidebarItem.popupTitle} onClick={() => {
82
+ updateSelectedItemKey(itemKey);
83
+ setDidUserInteract(true);
84
+ setIsSidebarFocused(true);
85
+ }} onKeyDown={(event) => {
86
+ if (event.key === 'Enter' || event.key === ' ') {
87
+ toggleDropdown(!sidebarItem.dropdownOpen, itemKey);
88
+ }
89
+ else {
90
+ onKeyNavigation(event, itemKey);
91
+ }
92
+ setIsSidebarFocused(true);
93
+ }} className={`relative w-full flex items-center py-0.5 outline-0 text-xs dark:text-bright-gray ${isKeySelected(itemKey)
94
+ ? isSidebarFocused
95
+ ? 'bg-royal-blue text-white dark:bg-medium-persian-blue dark:text-chinese-silver'
96
+ : 'bg-gainsboro dark:bg-outer-space'
97
+ : 'bg-white dark:bg-raisin-black'} cursor-pointer ${sidebarItem.isBlurred ? 'opacity-50' : ''}`} style={{ paddingLeft: recursiveStackIndex * 16 + 12 }} data-testid="sidebar-child">
98
+ {((_d = Object.keys(sidebarItem.children)) === null || _d === void 0 ? void 0 : _d.length) !== 0 && (<button onClick={() => {
99
+ toggleDropdown(!sidebarItem.dropdownOpen, itemKey);
100
+ }} className={`origin-center transition-transform scale-125 p-0.5 mr-1 ${!sidebarItem.dropdownOpen && '-rotate-90'}`} data-testid="sidebar-child-dropdown">
101
+ <div className="pointer-events-none">
102
+ {isKeyAncestor(itemKey) ||
103
+ !isKeySelected(itemKey) ||
104
+ !isSidebarFocused ? (<icons_1.ArrowDown />) : (<icons_1.ArrowDownWhite />)}
105
+ </div>
106
+ </button>)}
107
+ {sidebarItem.icon && sidebarItem.selectedIcon && (<div className="mr-1 pointer-events-none w-4 h-4">
108
+ {isKeySelected(itemKey) && isSidebarFocused
109
+ ? SelectedIcon && (<SelectedIcon {...sidebarItem.selectedIcon.props}/>)
110
+ : Icon && <Icon {...sidebarItem.icon.props}/>}
111
+ </div>)}
112
+ <p className="flex flex-row items-center justify-center whitespace-nowrap gap-x-1 pr-1">
113
+ {typeof sidebarItem.title === 'function'
114
+ ? sidebarItem.title()
115
+ : sidebarItem.title}
116
+
117
+ {sidebarItem.infoIconDescription ? (<span title={sidebarItem.infoIconDescription}>
118
+ <icons_1.InfoIcon className={`${isKeySelected(itemKey) && isSidebarFocused
119
+ ? 'fill-white'
120
+ : 'fill-gray'}`}/>
121
+ </span>) : null}
122
+ </p>
123
+ <div className="absolute" style={{
124
+ left: visibleWidth ? visibleWidth - 35 : 0,
125
+ }}>
126
+ {ExtraInterfaceToTitle && (<ExtraInterfaceToTitle {...(_e = sidebarItem.extraInterfaceToTitle) === null || _e === void 0 ? void 0 : _e.props}/>)}
127
+ </div>
128
+ </div>
129
+ {/* Sidebar item's children */}
130
+ <>
131
+ {((_f = Object.keys(sidebarItem.children)) === null || _f === void 0 ? void 0 : _f.length) !== 0 &&
132
+ sidebarItem.dropdownOpen && (<>
133
+ {Object.entries(sidebarItem.children).map(([childKey, child]) => (<react_1.default.Fragment key={childKey}>
134
+ <SidebarChild didUserInteract={didUserInteract} setDidUserInteract={setDidUserInteract} itemKey={childKey} sidebarItem={child} recursiveStackIndex={recursiveStackIndex + 1} visibleWidth={visibleWidth}/>
135
+ </react_1.default.Fragment>))}
136
+ </>)}
137
+ </>
138
+ </>);
139
+ };
140
+ exports.default = SidebarChild;
141
+ //# sourceMappingURL=sidebarChild.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebarChild.jsx","sourceRoot":"","sources":["../../../src/components/sidebar/sidebarChild.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,+CAAiD;AACjD;;GAEG;AACH,uCAAkE;AAClE,6CAA4D;AAU5D,sCAAsC;AACtC,MAAM,YAAY,GAAG,CAAC,EACpB,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,WAAW,EACX,mBAAmB,GAAG,CAAC,EACvB,YAAY,GACK,EAAE,EAAE;;IACrB,MAAM,EACJ,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,GAChB,GAAG,IAAA,uBAAU,EAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,eAAe,EAAE,OAAO,CAAC,eAAe;KACzC,CAAC,CAAC,CAAC;IAEJ,MAAM,OAAO,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAE7C,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;YAC9C,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC,EAAE;QACD,eAAe;QACf,aAAa;QACb,OAAO;QACP,eAAe;QACf,mBAAmB;KACpB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,MAAA,WAAW,CAAC,YAAY,0CAAE,OAAO,CAAC;IACvD,MAAM,IAAI,GAAG,MAAA,WAAW,CAAC,IAAI,0CAAE,OAAO,CAAC;IACvC,MAAM,qBAAqB,GAAG,MAAA,WAAW,CAAC,qBAAqB,0CAAE,OAAO,CAAC;IAEzE,OAAO,CACL,EACE;MAAA,CAAC,iBAAiB,CAClB;MAAA,CAAC,GAAG,CACF,GAAG,CAAC,CAAC,OAAO,CAAC,CACb,QAAQ,CAAC,CAAC,CAAC,CAAC,CACZ,KAAK,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAC9B,OAAO,CAAC,CAAC,GAAG,EAAE;YACZ,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAC/B,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzB,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CACF,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gBAC/C,cAAc,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;YACD,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CACF,SAAS,CAAC,CAAC,oFACT,aAAa,CAAC,OAAO,CAAC;YACpB,CAAC,CAAC,gBAAgB;gBAChB,CAAC,CAAC,+EAA+E;gBACjF,CAAC,CAAC,kCAAkC;YACtC,CAAC,CAAC,+BACN,mBAAmB,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC/D,KAAK,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CACtD,WAAW,CAAC,eAAe,CAE3B;QAAA,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,0CAAE,MAAM,MAAK,CAAC,IAAI,CAClD,CAAC,MAAM,CACL,OAAO,CAAC,CAAC,GAAG,EAAE;gBACZ,cAAc,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC,CAAC,CACF,SAAS,CAAC,CAAC,2DACT,CAAC,WAAW,CAAC,YAAY,IAAI,YAC/B,EAAE,CAAC,CACH,WAAW,CAAC,wBAAwB,CAEpC;YAAA,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAClC;cAAA,CAAC,aAAa,CAAC,OAAO,CAAC;gBACvB,CAAC,aAAa,CAAC,OAAO,CAAC;gBACvB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAClB,CAAC,iBAAS,CAAC,AAAD,EAAG,CACd,CAAC,CAAC,CAAC,CACF,CAAC,sBAAc,CAAC,AAAD,EAAG,CACnB,CACH;YAAA,EAAE,GAAG,CACP;UAAA,EAAE,MAAM,CAAC,CACV,CACD;QAAA,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,YAAY,IAAI,CAC/C,CAAC,GAAG,CAAC,SAAS,CAAC,kCAAkC,CAC/C;YAAA,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,gBAAgB;gBACzC,CAAC,CAAC,YAAY,IAAI,CACd,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,EAAG,CACrD;gBACH,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAG,CAClD;UAAA,EAAE,GAAG,CAAC,CACP,CACD;QAAA,CAAC,CAAC,CAAC,SAAS,CAAC,0EAA0E,CACrF;UAAA,CAAC,OAAO,WAAW,CAAC,KAAK,KAAK,UAAU;YACtC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE;YACrB,CAAC,CAAC,WAAW,CAAC,KAAK,CAErB;;UAAA,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC,CACjC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAC3C;cAAA,CAAC,gBAAQ,CACP,SAAS,CAAC,CAAC,GACT,aAAa,CAAC,OAAO,CAAC,IAAI,gBAAgB;gBACxC,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,WACN,EAAE,CAAC,EAEP;YAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACV;QAAA,EAAE,CAAC,CACH;QAAA,CAAC,GAAG,CACF,SAAS,CAAC,UAAU,CACpB,KAAK,CAAC,CAAC;YACL,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;SAC3C,CAAC,CAEF;UAAA,CAAC,qBAAqB,IAAI,CACxB,CAAC,qBAAqB,CACpB,IAAI,MAAA,WAAW,CAAC,qBAAqB,0CAAE,KAAK,CAAC,EAC7C,CACH,CACH;QAAA,EAAE,GAAG,CACP;MAAA,EAAE,GAAG,CACL;MAAA,CAAC,6BAA6B,CAC9B;MAAA,EACE;QAAA,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,0CAAE,MAAM,MAAK,CAAC;YAC9C,WAAW,CAAC,YAAY,IAAI,CAC1B,EACE;cAAA,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC/D,CAAC,eAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAC5B;kBAAA,CAAC,YAAY,CACX,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAClB,WAAW,CAAC,CAAC,KAAK,CAAC,CACnB,mBAAmB,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAC7C,YAAY,CAAC,CAAC,YAAY,CAAC,EAE/B;gBAAA,EAAE,eAAK,CAAC,QAAQ,CAAC,CAClB,CAAC,CACJ;YAAA,GAAG,CACJ,CACL;MAAA,GACF;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.SIDEBAR_ITEMS_KEYS = void 0;
19
+ var SIDEBAR_ITEMS_KEYS;
20
+ (function (SIDEBAR_ITEMS_KEYS) {
21
+ SIDEBAR_ITEMS_KEYS["COOKIES"] = "cookies";
22
+ SIDEBAR_ITEMS_KEYS["COOKIES_WITH_ISSUES"] = "cookie-issues";
23
+ SIDEBAR_ITEMS_KEYS["TECHNOLOGIES"] = "technologies";
24
+ SIDEBAR_ITEMS_KEYS["PRIVACY_SANDBOX"] = "privacy-sandbox";
25
+ SIDEBAR_ITEMS_KEYS["SITE_BOUNDARIES"] = "site-boundaries";
26
+ SIDEBAR_ITEMS_KEYS["CHIPS"] = "chips";
27
+ SIDEBAR_ITEMS_KEYS["RELATED_WEBSITE_SETS"] = "related-website-sets";
28
+ SIDEBAR_ITEMS_KEYS["PRIVATE_ADVERTISING"] = "private-advertising";
29
+ SIDEBAR_ITEMS_KEYS["TOPICS"] = "topics";
30
+ SIDEBAR_ITEMS_KEYS["ATTRIBUTION"] = "attribution";
31
+ SIDEBAR_ITEMS_KEYS["PROTECTED_AUDIENCE"] = "protected-audience";
32
+ SIDEBAR_ITEMS_KEYS["ANTI_COVERT_TRACKING"] = "anti-covert-tracking";
33
+ SIDEBAR_ITEMS_KEYS["BOUNCE_TRACKING"] = "bounce-tracking";
34
+ SIDEBAR_ITEMS_KEYS["FINGERPRINTING"] = "fingerprinting";
35
+ SIDEBAR_ITEMS_KEYS["FACILITATED_TESTING"] = "facilitated-testing";
36
+ SIDEBAR_ITEMS_KEYS["SETTINGS"] = "settings";
37
+ })(SIDEBAR_ITEMS_KEYS || (exports.SIDEBAR_ITEMS_KEYS = SIDEBAR_ITEMS_KEYS = {}));
38
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/components/sidebar/useSidebar/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,IAAY,kBAiBX;AAjBD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,2DAAqC,CAAA;IACrC,mDAA6B,CAAA;IAC7B,yDAAmC,CAAA;IACnC,yDAAmC,CAAA;IACnC,qCAAe,CAAA;IACf,mEAA6C,CAAA;IAC7C,iEAA2C,CAAA;IAC3C,uCAAiB,CAAA;IACjB,iDAA2B,CAAA;IAC3B,+DAAyC,CAAA;IACzC,mEAA6C,CAAA;IAC7C,yDAAmC,CAAA;IACnC,uDAAiC,CAAA;IACjC,iEAA2C,CAAA;IAC3C,2CAAqB,CAAA;AACvB,CAAC,EAjBW,kBAAkB,kCAAlB,kBAAkB,QAiB7B"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.SidebarContext = exports.initialState = void 0;
19
+ /**
20
+ * External dependencies.
21
+ */
22
+ const common_1 = require("@google-psat/common");
23
+ exports.initialState = {
24
+ state: {
25
+ activePanel: {
26
+ panel: {
27
+ Element: () => '',
28
+ props: {},
29
+ },
30
+ query: '',
31
+ clearQuery: common_1.noop,
32
+ },
33
+ selectedItemKey: null,
34
+ currentItemKey: null,
35
+ sidebarItems: {},
36
+ isSidebarFocused: true,
37
+ },
38
+ actions: {
39
+ setIsSidebarFocused: common_1.noop,
40
+ updateSelectedItemKey: common_1.noop,
41
+ onKeyNavigation: common_1.noop,
42
+ toggleDropdown: common_1.noop,
43
+ isKeyAncestor: () => false,
44
+ isKeySelected: () => false,
45
+ },
46
+ };
47
+ exports.SidebarContext = (0, common_1.createContext)(exports.initialState);
48
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/components/sidebar/useSidebar/context.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AACH,gDAA0D;AAgC7C,QAAA,YAAY,GAAwB;IAC/C,KAAK,EAAE;QACL,WAAW,EAAE;YACX,KAAK,EAAE;gBACL,OAAO,EAAE,GAAG,EAAE,CAAC,EAAS;gBACxB,KAAK,EAAE,EAAE;aACV;YACD,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,aAAI;SACjB;QACD,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,IAAI;QACpB,YAAY,EAAE,EAAE;QAChB,gBAAgB,EAAE,IAAI;KACvB;IACD,OAAO,EAAE;QACP,mBAAmB,EAAE,aAAI;QACzB,qBAAqB,EAAE,aAAI;QAC3B,eAAe,EAAE,aAAI;QACrB,cAAc,EAAE,aAAI;QACpB,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;QAC1B,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;KAC3B;CACF,CAAC;AAEW,QAAA,cAAc,GAAG,IAAA,sBAAa,EAAsB,oBAAY,CAAC,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /*
18
+ * Copyright 2023 Google LLC
19
+ *
20
+ * Licensed under the Apache License, Version 2.0 (the "License");
21
+ * you may not use this file except in compliance with the License.
22
+ * You may obtain a copy of the License at
23
+ *
24
+ * https://www.apache.org/licenses/LICENSE-2.0
25
+ *
26
+ * Unless required by applicable law or agreed to in writing, software
27
+ * distributed under the License is distributed on an "AS IS" BASIS,
28
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
29
+ * See the License for the specific language governing permissions and
30
+ * limitations under the License.
31
+ */
32
+ __exportStar(require("./provider"), exports);
33
+ __exportStar(require("./types"), exports);
34
+ __exportStar(require("./useSidebar"), exports);
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/sidebar/useSidebar/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,6CAA2B;AAC3B,0CAAwB;AACxB,+CAA6B"}
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.SidebarProvider = void 0;
27
+ /*
28
+ * Copyright 2023 Google LLC
29
+ *
30
+ * Licensed under the Apache License, Version 2.0 (the "License");
31
+ * you may not use this file except in compliance with the License.
32
+ * You may obtain a copy of the License at
33
+ *
34
+ * https://www.apache.org/licenses/LICENSE-2.0
35
+ *
36
+ * Unless required by applicable law or agreed to in writing, software
37
+ * distributed under the License is distributed on an "AS IS" BASIS,
38
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
39
+ * See the License for the specific language governing permissions and
40
+ * limitations under the License.
41
+ */
42
+ /**
43
+ * External dependencies.
44
+ */
45
+ const react_1 = __importStar(require("react"));
46
+ /**
47
+ * Internal dependencies.
48
+ */
49
+ const utils_1 = require("./utils");
50
+ const context_1 = require("./context");
51
+ const SidebarProvider = ({ data, defaultSelectedItemKey = null, children, }) => {
52
+ const [selectedItemKey, setSelectedItemKey] = (0, react_1.useState)(null);
53
+ const [activePanel, setActivePanel] = (0, react_1.useState)(context_1.initialState.state.activePanel);
54
+ const [query, setQuery] = (0, react_1.useState)('');
55
+ const [sidebarItems, setSidebarItems] = (0, react_1.useState)({});
56
+ const [isSidebarFocused, setIsSidebarFocused] = (0, react_1.useState)(true);
57
+ /**
58
+ * Update the selected item key when the defaultSelectedItemKey loads.
59
+ */
60
+ (0, react_1.useEffect)(() => {
61
+ setSelectedItemKey(defaultSelectedItemKey);
62
+ }, [defaultSelectedItemKey]);
63
+ /**
64
+ * Get the last sidebar item key in selectedItemKey chain.
65
+ * Eg: selectedItemKey = 'Privacy-Sandbox#cookies#frameUrl'
66
+ * currentItemKey = 'frameUrl'
67
+ */
68
+ const currentItemKey = (0, react_1.useMemo)(() => {
69
+ if (!selectedItemKey) {
70
+ return null;
71
+ }
72
+ const keys = selectedItemKey.split('#');
73
+ const length = keys.length;
74
+ return keys[length - 1];
75
+ }, [selectedItemKey]);
76
+ /**
77
+ * Update the sidebar items when the sidebar data changes.
78
+ */
79
+ (0, react_1.useEffect)(() => {
80
+ setSidebarItems(data);
81
+ }, [data]);
82
+ /**
83
+ * Find the active panel when the selected item key changes.
84
+ */
85
+ (0, react_1.useEffect)(() => {
86
+ let keyFound = false;
87
+ /**
88
+ * Find the active panel, if the selected item key is matched with the item key.
89
+ * If the item key is matched, set the active panel.
90
+ * If the item has children, recursively find the active panel.
91
+ * @param items Sidebar items.
92
+ */
93
+ const findActivePanel = (items) => {
94
+ Object.entries(items).forEach(([itemKey, item]) => {
95
+ if (keyFound) {
96
+ return;
97
+ }
98
+ if ((0, utils_1.matchKey)(selectedItemKey || '', itemKey)) {
99
+ if (item.panel) {
100
+ setActivePanel({
101
+ query,
102
+ clearQuery: () => {
103
+ setTimeout(() => setQuery(''));
104
+ },
105
+ panel: item.panel,
106
+ });
107
+ }
108
+ keyFound = true;
109
+ return;
110
+ }
111
+ if (item.children) {
112
+ findActivePanel(item.children);
113
+ }
114
+ });
115
+ };
116
+ if (selectedItemKey) {
117
+ findActivePanel(sidebarItems);
118
+ }
119
+ }, [query, selectedItemKey, sidebarItems]);
120
+ /**
121
+ * Update the selected item key and query string.
122
+ * @param key Selected item key.
123
+ * @param queryString Query string to pass to the new panel.
124
+ */
125
+ const updateSelectedItemKey = (0, react_1.useCallback)((key, queryString = '') => {
126
+ const keyPath = (0, utils_1.createKeyPath)(sidebarItems, key || '');
127
+ if (!keyPath.length) {
128
+ setSelectedItemKey(null);
129
+ return;
130
+ }
131
+ setSelectedItemKey(keyPath.join('#'));
132
+ setQuery(queryString);
133
+ }, [sidebarItems]);
134
+ /**
135
+ * Toggle the dropdown of the sidebar item.
136
+ * @param action Dropdown action.
137
+ * @param key Sidebar item key to toggle dropdown.
138
+ */
139
+ const toggleDropdown = (0, react_1.useCallback)((action, key) => {
140
+ setSidebarItems((prev) => {
141
+ const items = Object.assign({}, prev);
142
+ const item = (0, utils_1.findItem)(items, key);
143
+ if (item && Object.keys(item.children).length) {
144
+ item.dropdownOpen = action;
145
+ }
146
+ return items;
147
+ });
148
+ }, []);
149
+ /**
150
+ * Handle keyboard navigation in the sidebar.
151
+ * @param event Keyboard event.
152
+ * @param key Sidebar item key to navigate.
153
+ */
154
+ const onKeyNavigation = (0, react_1.useCallback)((event, key) => {
155
+ event.preventDefault();
156
+ event.stopPropagation();
157
+ if (!key) {
158
+ return;
159
+ }
160
+ const navigationAction = event.key;
161
+ const keyPath = (0, utils_1.createKeyPath)(sidebarItems, key);
162
+ if (!keyPath.length) {
163
+ return;
164
+ }
165
+ /**
166
+ * Open or close the dropdown based on the navigation action.
167
+ */
168
+ if (navigationAction === 'ArrowRight') {
169
+ toggleDropdown(true, key);
170
+ }
171
+ else if (navigationAction === 'ArrowLeft') {
172
+ toggleDropdown(false, key);
173
+ }
174
+ /**
175
+ * Navigate to the previous or next sidebar item based on the navigation action.
176
+ */
177
+ if (navigationAction === 'ArrowUp') {
178
+ const prevItem = (0, utils_1.findPrevItem)(sidebarItems, keyPath);
179
+ if (!prevItem) {
180
+ return;
181
+ }
182
+ // delay navigation as user can hold up arrow key which make useEffect to run multiple times unnecessarily.
183
+ setTimeout(() => updateSelectedItemKey(prevItem));
184
+ }
185
+ else if (navigationAction === 'ArrowDown') {
186
+ const nextItem = (0, utils_1.findNextItem)(sidebarItems, keyPath);
187
+ if (!nextItem) {
188
+ return;
189
+ }
190
+ // delay navigation as user can hold down arrow key which make useEffect to run multiple times unnecessarily.
191
+ setTimeout(() => updateSelectedItemKey(nextItem));
192
+ }
193
+ }, [sidebarItems, toggleDropdown, updateSelectedItemKey]);
194
+ /**
195
+ * Check if the key is an ancestor of the selected item key.
196
+ * @param key Sidebar item key to check.
197
+ * @returns boolean
198
+ */
199
+ const isKeyAncestor = (0, react_1.useCallback)((key) => {
200
+ if (!selectedItemKey) {
201
+ return false;
202
+ }
203
+ const keys = selectedItemKey.split('#');
204
+ const length = keys.length;
205
+ return keys[length - 1] !== key && keys.includes(key);
206
+ }, [selectedItemKey]);
207
+ /**
208
+ * Check if the key is present in the selected item key chain.
209
+ * Eg: selectedItemKey = 'Privacy-Sandbox#cookies#frameUrl'
210
+ * isKeySelected('frameUrl') => true
211
+ * @param key Sidebar item key to check.
212
+ * @returns boolean
213
+ */
214
+ const isKeySelected = (0, react_1.useCallback)((key) => {
215
+ if (!selectedItemKey) {
216
+ return false;
217
+ }
218
+ const keys = selectedItemKey.split('#');
219
+ const length = keys.length;
220
+ return keys[length - 1] === key;
221
+ }, [selectedItemKey]);
222
+ return (<context_1.SidebarContext.Provider value={{
223
+ state: {
224
+ activePanel,
225
+ selectedItemKey,
226
+ currentItemKey,
227
+ sidebarItems,
228
+ isSidebarFocused,
229
+ },
230
+ actions: {
231
+ setIsSidebarFocused,
232
+ updateSelectedItemKey,
233
+ onKeyNavigation,
234
+ toggleDropdown,
235
+ isKeyAncestor,
236
+ isKeySelected,
237
+ },
238
+ }}>
239
+ {children}
240
+ </context_1.SidebarContext.Provider>);
241
+ };
242
+ exports.SidebarProvider = SidebarProvider;
243
+ //# sourceMappingURL=provider.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.jsx","sourceRoot":"","sources":["../../../../src/components/sidebar/useSidebar/provider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/sidebar/useSidebar/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG"}