@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.
Files changed (422) hide show
  1. package/dist/components/breadcrumbs/index.jsx +10 -15
  2. package/dist/components/breadcrumbs/index.jsx.map +1 -1
  3. package/dist/components/bulletList/index.jsx +6 -14
  4. package/dist/components/bulletList/index.jsx.map +1 -1
  5. package/dist/components/bulletList/listRow.jsx +19 -40
  6. package/dist/components/bulletList/listRow.jsx.map +1 -1
  7. package/dist/components/button/index.jsx +17 -16
  8. package/dist/components/button/index.jsx.map +1 -1
  9. package/dist/components/chipsBar/chip.jsx +5 -10
  10. package/dist/components/chipsBar/chip.jsx.map +1 -1
  11. package/dist/components/chipsBar/chipsList.jsx +4 -9
  12. package/dist/components/chipsBar/chipsList.jsx.map +1 -1
  13. package/dist/components/chipsBar/index.jsx +12 -14
  14. package/dist/components/chipsBar/index.jsx.map +1 -1
  15. package/dist/components/circle/circleEmpty.jsx +4 -9
  16. package/dist/components/circle/circleEmpty.jsx.map +1 -1
  17. package/dist/components/circle/index.jsx +3 -8
  18. package/dist/components/circle/index.jsx.map +1 -1
  19. package/dist/components/circlePieChart/emptyCirclePieChart.jsx +9 -12
  20. package/dist/components/circlePieChart/emptyCirclePieChart.jsx.map +1 -1
  21. package/dist/components/circlePieChart/index.jsx +18 -21
  22. package/dist/components/circlePieChart/index.jsx.map +1 -1
  23. package/dist/components/circlePieChart/tooltip.jsx +26 -0
  24. package/dist/components/circlePieChart/tooltip.jsx.map +1 -0
  25. package/dist/components/cookieDetails/details.jsx +76 -105
  26. package/dist/components/cookieDetails/details.jsx.map +1 -1
  27. package/dist/components/cookieDetails/index.jsx +8 -13
  28. package/dist/components/cookieDetails/index.jsx.map +1 -1
  29. package/dist/components/cookieTable/index.jsx +32 -57
  30. package/dist/components/cookieTable/index.jsx.map +1 -1
  31. package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js +14 -19
  32. package/dist/components/cookieTable/utils/conditionalTableRowClassesHandler.js.map +1 -1
  33. package/dist/components/cookieTable/utils/exportCookies.js +6 -8
  34. package/dist/components/cookieTable/utils/exportCookies.js.map +1 -1
  35. package/dist/components/cookieTable/utils/index.js +2 -10
  36. package/dist/components/cookieTable/utils/index.js.map +1 -1
  37. package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx +6 -11
  38. package/dist/components/cookiesLanding/cookiesLandingWrapper.jsx.map +1 -1
  39. package/dist/components/cookiesLanding/cookiesMatrix/index.jsx +19 -20
  40. package/dist/components/cookiesLanding/cookiesMatrix/index.jsx.map +1 -1
  41. package/dist/components/cookiesLanding/index.jsx +2 -7
  42. package/dist/components/cookiesLanding/index.jsx.map +1 -1
  43. package/dist/components/cookiesLanding/landingHeader/index.jsx +11 -18
  44. package/dist/components/cookiesLanding/landingHeader/index.jsx.map +1 -1
  45. package/dist/components/cookiesLanding/useFiltersMapping.jsx +13 -11
  46. package/dist/components/cookiesLanding/useFiltersMapping.jsx.map +1 -1
  47. package/dist/components/cookiesLanding/useGlobalFiltering.jsx +77 -83
  48. package/dist/components/cookiesLanding/useGlobalFiltering.jsx.map +1 -1
  49. package/dist/components/draggableTray/index.jsx +36 -52
  50. package/dist/components/draggableTray/index.jsx.map +1 -1
  51. package/dist/components/dropdown/index.jsx +30 -0
  52. package/dist/components/dropdown/index.jsx.map +1 -0
  53. package/dist/components/dropdown/options.jsx +41 -0
  54. package/dist/components/dropdown/options.jsx.map +1 -0
  55. package/dist/components/errorFallback/extensionReloadNotification.jsx +5 -11
  56. package/dist/components/errorFallback/extensionReloadNotification.jsx.map +1 -1
  57. package/dist/components/errorFallback/index.jsx +6 -11
  58. package/dist/components/errorFallback/index.jsx.map +1 -1
  59. package/dist/components/exportButton/index.jsx +7 -12
  60. package/dist/components/exportButton/index.jsx.map +1 -1
  61. package/dist/components/filtersSidebar/index.jsx +14 -42
  62. package/dist/components/filtersSidebar/index.jsx.map +1 -1
  63. package/dist/components/filtersSidebar/listItem.jsx +20 -50
  64. package/dist/components/filtersSidebar/listItem.jsx.map +1 -1
  65. package/dist/components/filtersSidebar/option.jsx +6 -34
  66. package/dist/components/filtersSidebar/option.jsx.map +1 -1
  67. package/dist/components/filtersSidebar/subList.jsx +9 -37
  68. package/dist/components/filtersSidebar/subList.jsx.map +1 -1
  69. package/dist/components/frameContent/index.jsx +5 -10
  70. package/dist/components/frameContent/index.jsx.map +1 -1
  71. package/dist/components/index.js +60 -119
  72. package/dist/components/index.js.map +1 -1
  73. package/dist/components/inspectButton/index.jsx +7 -12
  74. package/dist/components/inspectButton/index.jsx.map +1 -1
  75. package/dist/components/jsonView/index.js +1 -8
  76. package/dist/components/jsonView/index.js.map +1 -1
  77. package/dist/components/jsonView/jsonTheme.js +1 -5
  78. package/dist/components/jsonView/jsonTheme.js.map +1 -1
  79. package/dist/components/jsonView/jsonView.jsx +11 -41
  80. package/dist/components/jsonView/jsonView.jsx.map +1 -1
  81. package/dist/components/landingPage/LandingPage.jsx +32 -64
  82. package/dist/components/landingPage/LandingPage.jsx.map +1 -1
  83. package/dist/components/landingPage/cardsPanel.jsx +33 -44
  84. package/dist/components/landingPage/cardsPanel.jsx.map +1 -1
  85. package/dist/components/landingPage/constants.js +1 -4
  86. package/dist/components/landingPage/constants.js.map +1 -1
  87. package/dist/components/landingPage/contentPanel.jsx +27 -28
  88. package/dist/components/landingPage/contentPanel.jsx.map +1 -1
  89. package/dist/components/landingPage/getStoryPlayerMarkup.js +3 -8
  90. package/dist/components/landingPage/getStoryPlayerMarkup.js.map +1 -1
  91. package/dist/components/landingPage/index.jsx +23 -47
  92. package/dist/components/landingPage/index.jsx.map +1 -1
  93. package/dist/components/landingPage/infoCard/fetchPSInfo.js +7 -21
  94. package/dist/components/landingPage/infoCard/fetchPSInfo.js.map +1 -1
  95. package/dist/components/landingPage/infoCard/index.jsx +28 -58
  96. package/dist/components/landingPage/infoCard/index.jsx.map +1 -1
  97. package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx +13 -17
  98. package/dist/components/landingPage/infoCard/learnMoreDropdown.jsx.map +1 -1
  99. package/dist/components/landingPage/infoCard/renderLink.jsx +5 -10
  100. package/dist/components/landingPage/infoCard/renderLink.jsx.map +1 -1
  101. package/dist/components/landingPage/quickLinksList.jsx +29 -64
  102. package/dist/components/landingPage/quickLinksList.jsx.map +1 -1
  103. package/dist/components/landingPage/supportLink.jsx +8 -13
  104. package/dist/components/landingPage/supportLink.jsx.map +1 -1
  105. package/dist/components/link/index.jsx +7 -41
  106. package/dist/components/link/index.jsx.map +1 -1
  107. package/dist/components/linkProcessor/index.jsx +13 -41
  108. package/dist/components/linkProcessor/index.jsx.map +1 -1
  109. package/dist/components/matrix/index.jsx +10 -13
  110. package/dist/components/matrix/index.jsx.map +1 -1
  111. package/dist/components/matrix/matrixComponent/index.jsx +6 -11
  112. package/dist/components/matrix/matrixComponent/index.jsx.map +1 -1
  113. package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx +4 -9
  114. package/dist/components/matrix/matrixComponent/matrixComponentHorizontal.jsx.map +1 -1
  115. package/dist/components/matrixContainer/index.jsx +15 -43
  116. package/dist/components/matrixContainer/index.jsx.map +1 -1
  117. package/dist/components/menuBar/index.jsx +31 -69
  118. package/dist/components/menuBar/index.jsx.map +1 -1
  119. package/dist/components/menuBar/utils/index.js +1 -8
  120. package/dist/components/menuBar/utils/index.js.map +1 -1
  121. package/dist/components/menuBar/utils/isElementInView.js +1 -4
  122. package/dist/components/menuBar/utils/isElementInView.js.map +1 -1
  123. package/dist/components/messageBox/index.jsx +8 -11
  124. package/dist/components/messageBox/index.jsx.map +1 -1
  125. package/dist/components/multiSelectDropDown/index.jsx +143 -0
  126. package/dist/components/multiSelectDropDown/index.jsx.map +1 -0
  127. package/dist/components/pill/index.jsx +2 -7
  128. package/dist/components/pill/index.jsx.map +1 -1
  129. package/dist/components/pillToggle/index.jsx +60 -24
  130. package/dist/components/pillToggle/index.jsx.map +1 -1
  131. package/dist/components/progressBar/borderProgressbar.jsx +2 -7
  132. package/dist/components/progressBar/borderProgressbar.jsx.map +1 -1
  133. package/dist/components/progressBar/index.jsx +2 -7
  134. package/dist/components/progressBar/index.jsx.map +1 -1
  135. package/dist/components/refreshButton/index.jsx +5 -10
  136. package/dist/components/refreshButton/index.jsx.map +1 -1
  137. package/dist/components/resizableTray/index.jsx +74 -0
  138. package/dist/components/resizableTray/index.jsx.map +1 -0
  139. package/dist/components/searchInput/index.jsx +20 -46
  140. package/dist/components/searchInput/index.jsx.map +1 -1
  141. package/dist/components/sidebar/collapsedSidebar.jsx +19 -47
  142. package/dist/components/sidebar/collapsedSidebar.jsx.map +1 -1
  143. package/dist/components/sidebar/expandedSidebar.jsx +19 -50
  144. package/dist/components/sidebar/expandedSidebar.jsx.map +1 -1
  145. package/dist/components/sidebar/index.js +3 -24
  146. package/dist/components/sidebar/index.js.map +1 -1
  147. package/dist/components/sidebar/sidebar.jsx +10 -15
  148. package/dist/components/sidebar/sidebar.jsx.map +1 -1
  149. package/dist/components/sidebar/sidebarChild.jsx +38 -53
  150. package/dist/components/sidebar/sidebarChild.jsx.map +1 -1
  151. package/dist/components/sidebar/useSidebar/constants.js +4 -5
  152. package/dist/components/sidebar/useSidebar/constants.js.map +1 -1
  153. package/dist/components/sidebar/useSidebar/context.js +9 -12
  154. package/dist/components/sidebar/useSidebar/context.js.map +1 -1
  155. package/dist/components/sidebar/useSidebar/index.js +3 -19
  156. package/dist/components/sidebar/useSidebar/index.js.map +1 -1
  157. package/dist/components/sidebar/useSidebar/provider.jsx +77 -100
  158. package/dist/components/sidebar/useSidebar/provider.jsx.map +1 -1
  159. package/dist/components/sidebar/useSidebar/types.js +1 -2
  160. package/dist/components/sidebar/useSidebar/types.js.map +1 -1
  161. package/dist/components/sidebar/useSidebar/useSidebar.jsx +4 -7
  162. package/dist/components/sidebar/useSidebar/useSidebar.jsx.map +1 -1
  163. package/dist/components/sidebar/useSidebar/utils/createKeyPath.js +3 -8
  164. package/dist/components/sidebar/useSidebar/utils/createKeyPath.js.map +1 -1
  165. package/dist/components/sidebar/useSidebar/utils/findItem.js +11 -9
  166. package/dist/components/sidebar/useSidebar/utils/findItem.js.map +1 -1
  167. package/dist/components/sidebar/useSidebar/utils/findKeyParent.js +1 -3
  168. package/dist/components/sidebar/useSidebar/utils/findKeyParent.js.map +1 -1
  169. package/dist/components/sidebar/useSidebar/utils/findNextItem.js +7 -12
  170. package/dist/components/sidebar/useSidebar/utils/findNextItem.js.map +1 -1
  171. package/dist/components/sidebar/useSidebar/utils/findPrevItem.js +6 -11
  172. package/dist/components/sidebar/useSidebar/utils/findPrevItem.js.map +1 -1
  173. package/dist/components/sidebar/useSidebar/utils/index.js +6 -18
  174. package/dist/components/sidebar/useSidebar/utils/index.js.map +1 -1
  175. package/dist/components/sidebar/useSidebar/utils/matchKey.js +1 -3
  176. package/dist/components/sidebar/useSidebar/utils/matchKey.js.map +1 -1
  177. package/dist/components/slider/index.jsx +29 -0
  178. package/dist/components/slider/index.jsx.map +1 -0
  179. package/dist/components/table/components/columnMenu/columnList.jsx +7 -35
  180. package/dist/components/table/components/columnMenu/columnList.jsx.map +1 -1
  181. package/dist/components/table/components/columnMenu/columnListItem.jsx +4 -9
  182. package/dist/components/table/components/columnMenu/columnListItem.jsx.map +1 -1
  183. package/dist/components/table/components/columnMenu/index.jsx +32 -46
  184. package/dist/components/table/components/columnMenu/index.jsx.map +1 -1
  185. package/dist/components/table/components/filtersSidebar/chips/index.jsx +4 -9
  186. package/dist/components/table/components/filtersSidebar/chips/index.jsx.map +1 -1
  187. package/dist/components/table/components/filtersSidebar/index.jsx +7 -35
  188. package/dist/components/table/components/filtersSidebar/index.jsx.map +1 -1
  189. package/dist/components/table/components/index.jsx +58 -71
  190. package/dist/components/table/components/index.jsx.map +1 -1
  191. package/dist/components/table/components/tableBody/bodyCell.jsx +22 -22
  192. package/dist/components/table/components/tableBody/bodyCell.jsx.map +1 -1
  193. package/dist/components/table/components/tableBody/bodyRow.jsx +33 -57
  194. package/dist/components/table/components/tableBody/bodyRow.jsx.map +1 -1
  195. package/dist/components/table/components/tableBody/index.jsx +39 -60
  196. package/dist/components/table/components/tableBody/index.jsx.map +1 -1
  197. package/dist/components/table/components/tableHeader/headerCell.jsx +25 -52
  198. package/dist/components/table/components/tableHeader/headerCell.jsx.map +1 -1
  199. package/dist/components/table/components/tableHeader/headerResizer.jsx +2 -7
  200. package/dist/components/table/components/tableHeader/headerResizer.jsx.map +1 -1
  201. package/dist/components/table/components/tableHeader/headerRow.jsx +8 -13
  202. package/dist/components/table/components/tableHeader/headerRow.jsx.map +1 -1
  203. package/dist/components/table/components/tableHeader/index.jsx +7 -35
  204. package/dist/components/table/components/tableHeader/index.jsx.map +1 -1
  205. package/dist/components/table/components/tableTopBar/index.jsx +10 -15
  206. package/dist/components/table/components/tableTopBar/index.jsx.map +1 -1
  207. package/dist/components/table/index.js +11 -38
  208. package/dist/components/table/index.js.map +1 -1
  209. package/dist/components/table/persistentSettingsStore/index.jsx +28 -69
  210. package/dist/components/table/persistentSettingsStore/index.jsx.map +1 -1
  211. package/dist/components/table/persistentSettingsStore/utils/extractStorage.js +8 -19
  212. package/dist/components/table/persistentSettingsStore/utils/extractStorage.js.map +1 -1
  213. package/dist/components/table/persistentSettingsStore/utils/index.js +2 -10
  214. package/dist/components/table/persistentSettingsStore/utils/index.js.map +1 -1
  215. package/dist/components/table/persistentSettingsStore/utils/updateStorage.js +24 -32
  216. package/dist/components/table/persistentSettingsStore/utils/updateStorage.js.map +1 -1
  217. package/dist/components/table/useTable/context.js +19 -18
  218. package/dist/components/table/useTable/context.js.map +1 -1
  219. package/dist/components/table/useTable/index.js +3 -19
  220. package/dist/components/table/useTable/index.js.map +1 -1
  221. package/dist/components/table/useTable/provider.jsx +78 -62
  222. package/dist/components/table/useTable/provider.jsx.map +1 -1
  223. package/dist/components/table/useTable/types.js +1 -2
  224. package/dist/components/table/useTable/useColumnResizing/index.jsx +237 -125
  225. package/dist/components/table/useTable/useColumnResizing/index.jsx.map +1 -1
  226. package/dist/components/table/useTable/useColumnSorting/index.jsx +16 -20
  227. package/dist/components/table/useTable/useColumnSorting/index.jsx.map +1 -1
  228. package/dist/components/table/useTable/useColumnVisibility/index.jsx +22 -24
  229. package/dist/components/table/useTable/useColumnVisibility/index.jsx.map +1 -1
  230. package/dist/components/table/useTable/useFiltering/hooks/index.js +3 -12
  231. package/dist/components/table/useTable/useFiltering/hooks/index.js.map +1 -1
  232. package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx +44 -39
  233. package/dist/components/table/useTable/useFiltering/hooks/useFiltersExtraction.jsx.map +1 -1
  234. package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx +14 -16
  235. package/dist/components/table/useTable/useFiltering/hooks/useFiltersOptions.jsx.map +1 -1
  236. package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx +39 -25
  237. package/dist/components/table/useTable/useFiltering/hooks/useFiltersPersistence.jsx.map +1 -1
  238. package/dist/components/table/useTable/useFiltering/index.jsx +58 -47
  239. package/dist/components/table/useTable/useFiltering/index.jsx.map +1 -1
  240. package/dist/components/table/useTable/useSearch/index.jsx +11 -13
  241. package/dist/components/table/useTable/useSearch/index.jsx.map +1 -1
  242. package/dist/components/table/useTable/useTable.jsx +4 -7
  243. package/dist/components/table/useTable/useTable.jsx.map +1 -1
  244. package/dist/components/table/utils/index.js +1 -17
  245. package/dist/components/table/utils/index.js.map +1 -1
  246. package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js +5 -7
  247. package/dist/components/table/utils/precalculatedFiltersUtils/calculateBlockedReasonsFilterValues.js.map +1 -1
  248. package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js +6 -8
  249. package/dist/components/table/utils/precalculatedFiltersUtils/calculateDynamicFilterValues.js.map +1 -1
  250. package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js +2 -4
  251. package/dist/components/table/utils/precalculatedFiltersUtils/calculateExemptionReasons.js.map +1 -1
  252. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js +5 -8
  253. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateSelectAllOption.js.map +1 -1
  254. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js +3 -6
  255. package/dist/components/table/utils/precalculatedFiltersUtils/evaluateStaticFilterValues.js.map +1 -1
  256. package/dist/components/table/utils/precalculatedFiltersUtils/index.js +5 -16
  257. package/dist/components/table/utils/precalculatedFiltersUtils/index.js.map +1 -1
  258. package/dist/components/tabs/index.jsx +132 -75
  259. package/dist/components/tabs/index.jsx.map +1 -1
  260. package/dist/components/tabs/useTabs/context.js +12 -9
  261. package/dist/components/tabs/useTabs/context.js.map +1 -1
  262. package/dist/components/tabs/useTabs/index.js +3 -19
  263. package/dist/components/tabs/useTabs/index.js.map +1 -1
  264. package/dist/components/tabs/useTabs/provider.jsx +144 -62
  265. package/dist/components/tabs/useTabs/provider.jsx.map +1 -1
  266. package/dist/components/tabs/useTabs/types.js +1 -2
  267. package/dist/components/tabs/useTabs/useTabs.jsx +4 -7
  268. package/dist/components/tabs/useTabs/useTabs.jsx.map +1 -1
  269. package/dist/components/timeline/bar.jsx +71 -0
  270. package/dist/components/timeline/bar.jsx.map +1 -0
  271. package/dist/components/timeline/constants.js +29 -0
  272. package/dist/components/timeline/constants.js.map +1 -0
  273. package/dist/components/timeline/index.jsx +195 -0
  274. package/dist/components/timeline/index.jsx.map +1 -0
  275. package/dist/components/toastMessage/index.jsx +2 -7
  276. package/dist/components/toastMessage/index.jsx.map +1 -1
  277. package/dist/components/toggleSwitch/index.jsx +2 -7
  278. package/dist/components/toggleSwitch/index.jsx.map +1 -1
  279. package/dist/components/topbar/index.jsx +13 -41
  280. package/dist/components/topbar/index.jsx.map +1 -1
  281. package/dist/constants.js +9 -12
  282. package/dist/constants.js.map +1 -1
  283. package/dist/icons/index.jsx +118 -225
  284. package/dist/icons/index.jsx.map +1 -1
  285. package/dist/icons/ps-icons/index.js +12 -30
  286. package/dist/icons/ps-icons/index.js.map +1 -1
  287. package/dist/index.js +5 -21
  288. package/dist/index.js.map +1 -1
  289. package/dist/test-data/cookieMockData.js +44 -22
  290. package/dist/test-data/cookieMockData.js.map +1 -1
  291. package/dist/test-data/cookieStats.js +1 -3
  292. package/dist/test-data/cookieStats.js.map +1 -1
  293. package/dist/test-data/cookieTableBody.js +9 -14
  294. package/dist/test-data/cookieTableBody.js.map +1 -1
  295. package/dist/test-data/cookieTableMockData.jsx +18 -24
  296. package/dist/test-data/cookieTableMockData.jsx.map +1 -1
  297. package/dist/test-data/cookiesStatsComponents.js +1 -3
  298. package/dist/test-data/cookiesStatsComponents.js.map +1 -1
  299. package/dist/theme/colors.js +1 -4
  300. package/dist/theme/colors.js.map +1 -1
  301. package/dist/utils/index.js +6 -18
  302. package/dist/utils/index.js.map +1 -1
  303. package/dist/utils/noop.js +1 -5
  304. package/dist/utils/noop.js.map +1 -1
  305. package/dist/utils/prepareCookieDataMapping.js +7 -10
  306. package/dist/utils/prepareCookieDataMapping.js.map +1 -1
  307. package/dist/utils/prepareCookieStatsComponents.js +29 -33
  308. package/dist/utils/prepareCookieStatsComponents.js.map +1 -1
  309. package/dist/utils/prepareCookiesCount.js +12 -25
  310. package/dist/utils/prepareCookiesCount.js.map +1 -1
  311. package/dist/utils/prepareFrameStatsComponent.js +19 -24
  312. package/dist/utils/prepareFrameStatsComponent.js.map +1 -1
  313. package/dist/utils/prepareFrameStatsComponentForExtensionDashboard.js +16 -21
  314. package/dist/utils/prepareFrameStatsComponentForExtensionDashboard.js.map +1 -1
  315. package/dist-types/components/button/index.d.ts +2 -1
  316. package/dist-types/components/chipsBar/index.d.ts +1 -1
  317. package/dist-types/components/circlePieChart/emptyCirclePieChart.d.ts +4 -1
  318. package/dist-types/components/circlePieChart/index.d.ts +3 -1
  319. package/dist-types/components/circlePieChart/tooltip.d.ts +8 -0
  320. package/dist-types/components/draggableTray/index.d.ts +4 -0
  321. package/dist-types/components/dropdown/index.d.ts +18 -0
  322. package/dist-types/components/dropdown/options.d.ts +20 -0
  323. package/dist-types/components/index.d.ts +7 -0
  324. package/dist-types/components/landingPage/LandingPage.d.ts +2 -5
  325. package/dist-types/components/landingPage/cardsPanel.d.ts +7 -8
  326. package/dist-types/components/landingPage/contentPanel.d.ts +1 -1
  327. package/dist-types/components/landingPage/infoCard/fetchPSInfo.d.ts +2 -0
  328. package/dist-types/components/landingPage/infoCard/index.d.ts +2 -1
  329. package/dist-types/components/link/index.d.ts +2 -1
  330. package/dist-types/components/messageBox/index.d.ts +5 -1
  331. package/dist-types/components/multiSelectDropDown/index.d.ts +14 -0
  332. package/dist-types/components/pillToggle/index.d.ts +8 -5
  333. package/dist-types/components/resizableTray/index.d.ts +15 -0
  334. package/dist-types/components/searchInput/index.d.ts +4 -1
  335. package/dist-types/components/sidebar/expandedSidebar.d.ts +2 -1
  336. package/dist-types/components/sidebar/sidebar.d.ts +2 -1
  337. package/dist-types/components/sidebar/sidebarChild.d.ts +2 -1
  338. package/dist-types/components/sidebar/useSidebar/constants.d.ts +3 -1
  339. package/dist-types/components/sidebar/useSidebar/context.d.ts +6 -2
  340. package/dist-types/components/sidebar/useSidebar/types.d.ts +2 -0
  341. package/dist-types/components/sidebar/useSidebar/utils/findItem.d.ts +2 -1
  342. package/dist-types/components/slider/index.d.ts +14 -0
  343. package/dist-types/components/table/components/index.d.ts +4 -2
  344. package/dist-types/components/table/components/tableBody/bodyCell.d.ts +5 -2
  345. package/dist-types/components/table/components/tableBody/bodyRow.d.ts +3 -2
  346. package/dist-types/components/table/components/tableBody/index.d.ts +3 -2
  347. package/dist-types/components/table/components/tableHeader/headerCell.d.ts +4 -2
  348. package/dist-types/components/table/components/tableTopBar/index.d.ts +2 -1
  349. package/dist-types/components/table/persistentSettingsStore/index.d.ts +1 -1
  350. package/dist-types/components/table/useTable/context.d.ts +13 -5
  351. package/dist-types/components/table/useTable/provider.d.ts +1 -1
  352. package/dist-types/components/table/useTable/types.d.ts +47 -4
  353. package/dist-types/components/table/useTable/useColumnResizing/index.d.ts +11 -9
  354. package/dist-types/components/table/useTable/useFiltering/index.d.ts +1 -1
  355. package/dist-types/components/tabs/index.d.ts +1 -1
  356. package/dist-types/components/tabs/useTabs/context.d.ts +11 -1
  357. package/dist-types/components/tabs/useTabs/provider.d.ts +2 -2
  358. package/dist-types/components/tabs/useTabs/types.d.ts +8 -3
  359. package/dist-types/components/timeline/bar.d.ts +16 -0
  360. package/dist-types/components/timeline/constants.d.ts +8 -0
  361. package/dist-types/components/timeline/index.d.ts +12 -0
  362. package/dist-types/icons/index.d.ts +117 -101
  363. package/dist-types/icons/ps-icons/index.d.ts +12 -12
  364. package/package.json +12 -7
  365. package/tsconfig.json +5 -3
  366. package/dist/components/button/stories/Button.stories.jsx +0 -23
  367. package/dist/components/button/stories/Button.stories.jsx.map +0 -1
  368. package/dist/components/circle/stories/circle.stories.jsx +0 -26
  369. package/dist/components/circle/stories/circle.stories.jsx.map +0 -1
  370. package/dist/components/circle/stories/circleEmpty.stories.jsx +0 -18
  371. package/dist/components/circle/stories/circleEmpty.stories.jsx.map +0 -1
  372. package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx +0 -91
  373. package/dist/components/circlePieChart/stories/circlePieChart.stories.jsx.map +0 -1
  374. package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx +0 -48
  375. package/dist/components/circlePieChart/stories/emptyCirclePieChart.stories.jsx.map +0 -1
  376. package/dist/components/cookieDetails/stories/cookieDetails.stories.js +0 -30
  377. package/dist/components/cookieDetails/stories/cookieDetails.stories.js.map +0 -1
  378. package/dist/components/cookieDetails/stories/details.stories.js +0 -30
  379. package/dist/components/cookieDetails/stories/details.stories.js.map +0 -1
  380. package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx +0 -59
  381. package/dist/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.jsx.map +0 -1
  382. package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx +0 -40
  383. package/dist/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.jsx.map +0 -1
  384. package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx +0 -20
  385. package/dist/components/cookiesLanding/stories/cookiesLanding.stories.jsx.map +0 -1
  386. package/dist/components/errorFallback/stories/errorFallback.stories.jsx +0 -31
  387. package/dist/components/errorFallback/stories/errorFallback.stories.jsx.map +0 -1
  388. package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx +0 -20
  389. package/dist/components/errorFallback/stories/extensionReloadNotification.stories.jsx.map +0 -1
  390. package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx +0 -27
  391. package/dist/components/matrix/matrixComponent/stories/MatrixComponent.stories.jsx.map +0 -1
  392. package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx +0 -25
  393. package/dist/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.jsx.map +0 -1
  394. package/dist/components/matrix/stories/matrix.stories.jsx +0 -59
  395. package/dist/components/matrix/stories/matrix.stories.jsx.map +0 -1
  396. package/dist/components/messageBox/stories/messageBox.stories.jsx +0 -23
  397. package/dist/components/messageBox/stories/messageBox.stories.jsx.map +0 -1
  398. package/dist/components/progressBar/stories/progressBar.stories.jsx +0 -22
  399. package/dist/components/progressBar/stories/progressBar.stories.jsx.map +0 -1
  400. package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js +0 -61
  401. package/dist/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.js.map +0 -1
  402. package/dist/components/table/useTable/useColumnResizing/resizeColumns.js +0 -54
  403. package/dist/components/table/useTable/useColumnResizing/resizeColumns.js.map +0 -1
  404. package/dist-types/components/button/stories/Button.stories.d.ts +0 -11
  405. package/dist-types/components/circle/stories/circle.stories.d.ts +0 -11
  406. package/dist-types/components/circle/stories/circleEmpty.stories.d.ts +0 -11
  407. package/dist-types/components/circlePieChart/stories/circlePieChart.stories.d.ts +0 -9
  408. package/dist-types/components/circlePieChart/stories/emptyCirclePieChart.stories.d.ts +0 -9
  409. package/dist-types/components/cookieDetails/stories/cookieDetails.stories.d.ts +0 -12
  410. package/dist-types/components/cookieDetails/stories/details.stories.d.ts +0 -12
  411. package/dist-types/components/cookiesLanding/cookiesMatrix/stories/cookiesMatrix.stories.d.ts +0 -11
  412. package/dist-types/components/cookiesLanding/landingHeader/stories/LandingHeader.stories.d.ts +0 -11
  413. package/dist-types/components/cookiesLanding/stories/cookiesLanding.stories.d.ts +0 -11
  414. package/dist-types/components/errorFallback/stories/errorFallback.stories.d.ts +0 -12
  415. package/dist-types/components/errorFallback/stories/extensionReloadNotification.stories.d.ts +0 -11
  416. package/dist-types/components/matrix/matrixComponent/stories/MatrixComponent.stories.d.ts +0 -11
  417. package/dist-types/components/matrix/matrixComponent/stories/matrixComponentHorizontal.stories.d.ts +0 -11
  418. package/dist-types/components/matrix/stories/matrix.stories.d.ts +0 -11
  419. package/dist-types/components/messageBox/stories/messageBox.stories.d.ts +0 -11
  420. package/dist-types/components/progressBar/stories/progressBar.stories.d.ts +0 -11
  421. package/dist-types/components/table/useTable/useColumnResizing/handleResizeOnColumnsVisibilityChange.d.ts +0 -7
  422. package/dist-types/components/table/useTable/useColumnResizing/resizeColumns.d.ts +0 -5
@@ -0,0 +1,143 @@
1
+ /*
2
+ * Copyright 2025 Google LLC
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ /**
17
+ * External dependencies
18
+ */
19
+ import React, { useState, useRef, useEffect, useMemo, useCallback, } from 'react';
20
+ import classNames from 'classnames';
21
+ import { createPortal } from 'react-dom';
22
+ /**
23
+ * Internal dependencies
24
+ */
25
+ import { ArrowDown } from '../../icons';
26
+ const MultiSelectDropdown = ({ options, selected, onChange, placeholder = 'Default levels', specialValue = options[0].value, }) => {
27
+ const [isOpen, setIsOpen] = useState(false);
28
+ const [position, setPosition] = useState({ x: 0, y: 0 });
29
+ const [startAnimation, setStartAnimation] = useState(false);
30
+ const dropdownRef = useRef(null);
31
+ const wrapperRef = useRef(null);
32
+ const timeoutRef = useRef(null);
33
+ useEffect(() => {
34
+ return () => {
35
+ if (timeoutRef.current) {
36
+ clearTimeout(timeoutRef.current);
37
+ }
38
+ };
39
+ }, []);
40
+ const handleClose = useCallback(() => {
41
+ document.body.style.overflow = isOpen ? 'auto' : 'hidden';
42
+ setStartAnimation(true);
43
+ timeoutRef.current = setTimeout(() => {
44
+ setIsOpen(!isOpen);
45
+ setStartAnimation(false);
46
+ }, 100);
47
+ }, [isOpen]);
48
+ useEffect(() => {
49
+ const handleClickOutside = (event) => {
50
+ if (wrapperRef.current &&
51
+ !wrapperRef.current.contains(event.target)) {
52
+ setIsOpen(false);
53
+ }
54
+ };
55
+ document.addEventListener('mousedown', handleClickOutside);
56
+ return () => document.removeEventListener('mousedown', handleClickOutside);
57
+ }, []);
58
+ const toggleOption = (value) => {
59
+ let newSelected = [];
60
+ const isSelected = selected.includes(value);
61
+ if (value === 'ALL') {
62
+ newSelected = isSelected ? [] : options.map((o) => o.value);
63
+ }
64
+ else {
65
+ if (isSelected) {
66
+ newSelected = selected.filter((v) => v !== value);
67
+ }
68
+ else {
69
+ newSelected = [...selected, value];
70
+ }
71
+ const allOption = options.find((o) => o.value === 'ALL');
72
+ const individualOptions = options.filter((o) => o.value !== 'ALL');
73
+ const allSelected = individualOptions.every((opt) => newSelected.includes(opt.value));
74
+ if (allOption) {
75
+ if (allSelected) {
76
+ newSelected = options.map((o) => o.value);
77
+ }
78
+ else {
79
+ newSelected = newSelected.filter((v) => v !== 'ALL');
80
+ }
81
+ }
82
+ }
83
+ onChange(newSelected);
84
+ };
85
+ const labelToDisplay = useMemo(() => {
86
+ if (selected.length === 0) {
87
+ return placeholder;
88
+ }
89
+ else {
90
+ if (selected.includes(specialValue)) {
91
+ return 'All levels';
92
+ }
93
+ else {
94
+ if (selected.length > 1) {
95
+ return 'Custom levels';
96
+ }
97
+ else {
98
+ return `${options.find((option) => option.value === selected[0])?.label} only`;
99
+ }
100
+ }
101
+ }
102
+ }, [options, placeholder, selected, specialValue]);
103
+ return (<div className="relative inline-block text-left text-sm" ref={dropdownRef}>
104
+ <button type="button" className="gap-1 inline-flex items-center px-1 rounded-md dark:bg-raisin-black text-raisin-black dark:text-bright-gray" onClick={(event) => {
105
+ setIsOpen((prev) => !prev);
106
+ setPosition({ x: event.clientX, y: event.clientY });
107
+ }}>
108
+ {labelToDisplay}
109
+ <ArrowDown />
110
+ </button>
111
+
112
+ {isOpen &&
113
+ createPortal(<div ref={wrapperRef} className={classNames('transition duration-100', startAnimation ? 'opacity-0' : 'opacity-100')} data-testid="column-menu">
114
+ <div className="absolute z-[100] text-raisin-black dark:text-bright-gray rounded-md backdrop-blur-2xl w-screen max-w-[13rem] p-1.5 mr-2 divide-y divide-neutral-300 dark:divide-neutral-500 max-h-[78vh] overflow-auto bg-stone-200 dark:bg-neutral-700 shadow-3xl" style={{
115
+ left: 'min( calc( 100vw - 15rem),' + position.x + 'px )',
116
+ top: position.y + 'px',
117
+ border: '0.5px solid rgba(0, 0, 0, 0.20)',
118
+ }}>
119
+ <div>
120
+ <ul>
121
+ {options.map((option) => (<li key={option.value} onClick={() => toggleOption(option.value)}>
122
+ <button className="w-full text-xs rounded px-1 py-[3px] mb-1.5 flex items-center hover:bg-blueberry hover:text-white cursor-default" onClick={() => {
123
+ toggleOption(option.value);
124
+ handleClose();
125
+ }}>
126
+ <span className={classNames('mr-2 font-semibold', selected.includes(option.value)
127
+ ? 'opacity-100'
128
+ : 'opacity-0')}>
129
+
130
+ </span>
131
+ <span>{option.label}</span>
132
+ </button>
133
+ </li>))}
134
+ </ul>
135
+ </div>
136
+ </div>
137
+
138
+ <div data-testid="column-menu-overlay" onClick={handleClose} className="absolute w-screen h-screen z-10 top-0 left-0"/>
139
+ </div>, document.body)}
140
+ </div>);
141
+ };
142
+ export default MultiSelectDropdown;
143
+ //# sourceMappingURL=index.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/multiSelectDropDown/index.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /*
3
2
  * Copyright 2024 Google LLC
4
3
  *
@@ -14,18 +13,14 @@
14
13
  * See the License for the specific language governing permissions and
15
14
  * limitations under the License.
16
15
  */
17
- var __importDefault = (this && this.__importDefault) || function (mod) {
18
- return (mod && mod.__esModule) ? mod : { "default": mod };
19
- };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
16
  /**
22
17
  * External dependencies.
23
18
  */
24
- const react_1 = __importDefault(require("react"));
19
+ import React from 'react';
25
20
  const Pill = ({ title }) => {
26
21
  return (<div className="h-fit p-1 dark:text-bright-gray border border-gray-400 dark:border-dark-gray-x11 rounded-full">
27
22
  {title}
28
23
  </div>);
29
24
  };
30
- exports.default = Pill;
25
+ export default Pill;
31
26
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/pill/index.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;AAEH;;GAEG;AACH,kDAA0B;AAM1B,MAAM,IAAI,GAAG,CAAC,EAAE,KAAK,EAAa,EAAE,EAAE;IACpC,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,+FAA+F,CAC5G;MAAA,CAAC,KAAK,CACR;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/pill/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,IAAI,GAAG,CAAC,EAAE,KAAK,EAAa,EAAE,EAAE;IACpC,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,+FAA+F,CAC5G;MAAA,CAAC,KAAK,CACR;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1,8 +1,3 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
1
  /*
7
2
  * Copyright 2024 Google LLC
8
3
  *
@@ -21,25 +16,66 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
16
  /**
22
17
  * External dependencies.
23
18
  */
24
- const classnames_1 = __importDefault(require("classnames"));
25
- const react_1 = __importDefault(require("react"));
26
- const PillToggle = ({ firstOption, secondOption, pillToggle, setPillToggle, eeAnimatedTab, }) => {
27
- return (<div className="w-80 h-8 rounded-full border border-gray-300 dark:border-quartz text-sm">
28
- <button className={(0, classnames_1.default)('w-1/2 h-full rounded-full text-raisin-black dark:text-bright-gray', {
29
- 'bg-gray-200 dark:bg-gray-500 ': pillToggle === firstOption,
30
- 'bg-transparent': pillToggle !== firstOption,
31
- 'text-xs': eeAnimatedTab,
32
- })} onClick={() => setPillToggle(firstOption)}>
33
- {firstOption}
34
- </button>
35
- <button className={(0, classnames_1.default)('w-1/2 h-full rounded-full text-raisin-black dark:text-bright-gray', {
36
- 'bg-gray-200 dark:bg-gray-500': pillToggle === secondOption,
37
- 'bg-transparent': pillToggle !== secondOption,
38
- 'text-xs': eeAnimatedTab,
39
- })} onClick={() => setPillToggle(secondOption)}>
40
- {secondOption}
41
- </button>
19
+ import { getSessionStorage, updateSessionStorage } from '@google-psat/common';
20
+ import classNames from 'classnames';
21
+ import React, { useEffect, useRef, useState } from 'react';
22
+ const PillToggle = ({ options, pillToggle, setPillToggle, eeAnimatedTab, width = 'w-max', highlightOption, setHighlightOption, persistenceKey, }) => {
23
+ const defaultPillToggle = useRef(pillToggle);
24
+ useEffect(() => {
25
+ setPillToggle(null);
26
+ }, [setPillToggle]);
27
+ useEffect(() => {
28
+ if (pillToggle === highlightOption) {
29
+ setHighlightOption?.('');
30
+ }
31
+ }, [highlightOption, pillToggle, setHighlightOption]);
32
+ const [loading, setLoading] = useState(true);
33
+ useEffect(() => {
34
+ if (!persistenceKey) {
35
+ setPillToggle(defaultPillToggle.current);
36
+ setLoading(false);
37
+ return;
38
+ }
39
+ (async () => {
40
+ const sessionStorage = await getSessionStorage('pillToggle');
41
+ if (sessionStorage?.[persistenceKey]?.value) {
42
+ setPillToggle(sessionStorage[persistenceKey].value);
43
+ }
44
+ else {
45
+ setPillToggle(defaultPillToggle.current);
46
+ }
47
+ setLoading(false);
48
+ })();
49
+ }, [persistenceKey, setPillToggle]);
50
+ useEffect(() => {
51
+ if (!persistenceKey || loading) {
52
+ return;
53
+ }
54
+ (async () => {
55
+ await updateSessionStorage({
56
+ [persistenceKey]: {
57
+ value: pillToggle,
58
+ },
59
+ }, 'pillToggle');
60
+ })();
61
+ }, [loading, persistenceKey, pillToggle]);
62
+ if (loading) {
63
+ return null;
64
+ }
65
+ return (<div className="h-8 border rounded-full w-max border-gray-300 dark:border-quartz text-sm">
66
+ {options.map((option, index) => {
67
+ return (<button key={option} style={{ zIndex: options.length - index }} className={classNames(`px-5 h-full border-r border-gray-silver dark:border-quartz text-raisin-black dark:text-bright-gray relative`, width, {
68
+ 'dark:bg-raisin-black bg-white': pillToggle === option,
69
+ 'bg-anti-flash-white dark:bg-gray-500 ': pillToggle !== option,
70
+ 'text-xs': eeAnimatedTab,
71
+ 'rounded-r-full -ml-[10px]': index > 0,
72
+ 'rounded-full': index === 0,
73
+ underline: highlightOption === option,
74
+ })} onClick={() => setPillToggle(option)}>
75
+ {option}
76
+ </button>);
77
+ })}
42
78
  </div>);
43
79
  };
44
- exports.default = PillToggle;
80
+ export default PillToggle;
45
81
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/pillToggle/index.tsx"],"names":[],"mappings":";;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,4DAAoC;AACpC,kDAA0B;AAU1B,MAAM,UAAU,GAAG,CAAC,EAClB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,aAAa,GACG,EAAE,EAAE;IACpB,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,yEAAyE,CACtF;MAAA,CAAC,MAAM,CACL,SAAS,CAAC,CAAC,IAAA,oBAAU,EACnB,mEAAmE,EACnE;YACE,+BAA+B,EAAE,UAAU,KAAK,WAAW;YAC3D,gBAAgB,EAAE,UAAU,KAAK,WAAW;YAC5C,SAAS,EAAE,aAAa;SACzB,CACF,CAAC,CACF,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAE1C;QAAA,CAAC,WAAW,CACd;MAAA,EAAE,MAAM,CACR;MAAA,CAAC,MAAM,CACL,SAAS,CAAC,CAAC,IAAA,oBAAU,EACnB,mEAAmE,EACnE;YACE,8BAA8B,EAAE,UAAU,KAAK,YAAY;YAC3D,gBAAgB,EAAE,UAAU,KAAK,YAAY;YAC7C,SAAS,EAAE,aAAa;SACzB,CACF,CAAC,CACF,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAE3C;QAAA,CAAC,YAAY,CACf;MAAA,EAAE,MAAM,CACV;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/pillToggle/index.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,3 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
1
  /*
7
2
  * Copyright 2023 Google LLC
8
3
  *
@@ -21,7 +16,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
16
  /**
22
17
  * External dependencies.
23
18
  */
24
- const react_1 = __importDefault(require("react"));
19
+ import React from 'react';
25
20
  const BorderProgressBar = ({ additionalStyles = '', }) => {
26
21
  return (<div className={`${additionalStyles} flex justify-center flex-col gap-2 relative overflow-hidden mx-auto`}>
27
22
  <div className="h-px w-full bg-gainsboro dark:bg-neutral-600 overflow-hidden">
@@ -29,5 +24,5 @@ const BorderProgressBar = ({ additionalStyles = '', }) => {
29
24
  </div>
30
25
  </div>);
31
26
  };
32
- exports.default = BorderProgressBar;
27
+ export default BorderProgressBar;
33
28
  //# sourceMappingURL=borderProgressbar.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"borderProgressbar.jsx","sourceRoot":"","sources":["../../../src/components/progressBar/borderProgressbar.tsx"],"names":[],"mappings":";;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,kDAA0B;AAK1B,MAAM,iBAAiB,GAAG,CAAC,EACzB,gBAAgB,GAAG,EAAE,GACE,EAAE,EAAE;IAC3B,OAAO,CACL,CAAC,GAAG,CACF,SAAS,CAAC,CAAC,GAAG,gBAAgB,sEAAsE,CAAC,CAErG;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,8DAA8D,CAC3E;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,6DAA6D,CAAC,EAAE,GAAG,CACpF;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"borderProgressbar.jsx","sourceRoot":"","sources":["../../../src/components/progressBar/borderProgressbar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,iBAAiB,GAAG,CAAC,EACzB,gBAAgB,GAAG,EAAE,GACE,EAAE,EAAE;IAC3B,OAAO,CACL,CAAC,GAAG,CACF,SAAS,CAAC,CAAC,GAAG,gBAAgB,sEAAsE,CAAC,CAErG;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,8DAA8D,CAC3E;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,6DAA6D,CAAC,EAAE,GAAG,CACpF;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1,8 +1,3 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
1
  /*
7
2
  * Copyright 2023 Google LLC
8
3
  *
@@ -21,7 +16,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
16
  /**
22
17
  * External dependencies.
23
18
  */
24
- const react_1 = __importDefault(require("react"));
19
+ import React from 'react';
25
20
  const ProgressBar = ({ additionalStyles = '', barAdditionalStyles = 'bg-gainsboro dark:bg-neutral-600', }) => {
26
21
  return (<div data-testid="progress-bar" className={`${additionalStyles} flex justify-center flex-col gap-2 relative overflow-hidden`}>
27
22
  <div className={`${barAdditionalStyles} mb-6 h-1 w-full overflow-hidden`}>
@@ -29,5 +24,5 @@ const ProgressBar = ({ additionalStyles = '', barAdditionalStyles = 'bg-gainsbor
29
24
  </div>
30
25
  </div>);
31
26
  };
32
- exports.default = ProgressBar;
27
+ export default ProgressBar;
33
28
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/progressBar/index.tsx"],"names":[],"mappings":";;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,kDAA0B;AAM1B,MAAM,WAAW,GAAG,CAAC,EACnB,gBAAgB,GAAG,EAAE,EACrB,mBAAmB,GAAG,kCAAkC,GACvC,EAAE,EAAE;IACrB,OAAO,CACL,CAAC,GAAG,CACF,WAAW,CAAC,cAAc,CAC1B,SAAS,CAAC,CAAC,GAAG,gBAAgB,8DAA8D,CAAC,CAE7F;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,mBAAmB,kCAAkC,CAAC,CACvE;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,4DAA4D,CAAC,EAAE,GAAG,CACnF;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/progressBar/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,WAAW,GAAG,CAAC,EACnB,gBAAgB,GAAG,EAAE,EACrB,mBAAmB,GAAG,kCAAkC,GACvC,EAAE,EAAE;IACrB,OAAO,CACL,CAAC,GAAG,CACF,WAAW,CAAC,cAAc,CAC1B,SAAS,CAAC,CAAC,GAAG,gBAAgB,8DAA8D,CAAC,CAE7F;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,mBAAmB,kCAAkC,CAAC,CACvE;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,4DAA4D,CAAC,EAAE,GAAG,CACnF;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,8 +1,3 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
1
  /*
7
2
  * Copyright 2023 Google LLC
8
3
  *
@@ -21,12 +16,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
16
  /**
22
17
  * External dependencies.
23
18
  */
24
- const react_1 = __importDefault(require("react"));
25
- const icons_1 = require("../../icons");
19
+ import React from 'react';
20
+ import { Refresh as RefreshIcon } from '../../icons';
26
21
  const RefreshButton = ({ onClick, title = 'Refresh' }) => {
27
- return (<button onClick={onClick ? onClick : undefined} title={title} className={'flex items-center justify-center h-full text-center dark:text-mischka text-comet-black hover:text-comet-grey hover:dark:text-bright-gray active:dark:text-mischka active:text-comet-black pt-[1px]'}>
28
- <icons_1.Refresh className="h-[13px] w-[13px]"/>
22
+ return (<button onClick={onClick ? onClick : undefined} title={title} className={'flex items-center justify-center h-full text-center dark:text-mischka text-comet-black hover:text-comet-grey dark:hover:text-bright-gray dark:active:text-mischka active:text-comet-black pt-[1px]'}>
23
+ <RefreshIcon className="h-[13px] w-[13px]"/>
29
24
  </button>);
30
25
  };
31
- exports.default = RefreshButton;
26
+ export default RefreshButton;
32
27
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/refreshButton/index.tsx"],"names":[],"mappings":";;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,kDAA0B;AAC1B,uCAAqD;AAMrD,MAAM,aAAa,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,SAAS,EAAsB,EAAE,EAAE;IAC3E,OAAO,CACL,CAAC,MAAM,CACL,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CACvC,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,SAAS,CAAC,CACR,oMACF,CAAC,CAED;MAAA,CAAC,eAAW,CAAC,SAAS,CAAC,mBAAmB,EAC5C;IAAA,EAAE,MAAM,CAAC,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/refreshButton/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,aAAa,CAAC;AAMrD,MAAM,aAAa,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,SAAS,EAAsB,EAAE,EAAE;IAC3E,OAAO,CACL,CAAC,MAAM,CACL,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CACvC,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,SAAS,CAAC,CACR,oMACF,CAAC,CAED;MAAA,CAAC,WAAW,CAAC,SAAS,CAAC,mBAAmB,EAC5C;IAAA,EAAE,MAAM,CAAC,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,74 @@
1
+ /*
2
+ * Copyright 2024 Google LLC
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * https://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ /**
17
+ * External dependencies.
18
+ */
19
+ import { Resizable } from 're-resizable';
20
+ import React, { useEffect, useRef, useState } from 'react';
21
+ import { getSessionStorage, updateSessionStorage } from '@google-psat/common';
22
+ const STORAGE_KEY = 'persistent-tray';
23
+ export const usePersistentTray = (trayId, defaultSize) => {
24
+ const [height, setHeight] = useState(typeof defaultSize?.height === 'number'
25
+ ? `${defaultSize.height}px`
26
+ : defaultSize?.height);
27
+ const storageLoaded = useRef(false);
28
+ useEffect(() => {
29
+ const initializeHeight = async () => {
30
+ if (storageLoaded.current || !trayId || !chrome?.storage) {
31
+ return;
32
+ }
33
+ const data = (await getSessionStorage(STORAGE_KEY)) || {};
34
+ if (data[trayId]?.height) {
35
+ setHeight(data[trayId].height);
36
+ }
37
+ storageLoaded.current = true;
38
+ };
39
+ initializeHeight();
40
+ return () => {
41
+ storageLoaded.current = false;
42
+ };
43
+ }, [trayId]);
44
+ useEffect(() => {
45
+ if (storageLoaded.current && trayId && chrome?.storage) {
46
+ updateSessionStorage({ [trayId]: { height } }, STORAGE_KEY);
47
+ }
48
+ }, [height, trayId]);
49
+ const onResizeStop = (_, __, divRef) => {
50
+ setHeight(() => `${divRef.clientHeight}px`);
51
+ };
52
+ return { height, setHeight, onResizeStop };
53
+ };
54
+ const ResizableTray = (props) => {
55
+ const { trayId, ...rest } = props;
56
+ const { height, onResizeStop, setHeight } = usePersistentTray(trayId, rest.defaultSize);
57
+ useEffect(() => {
58
+ if (rest.defaultSize?.height) {
59
+ setHeight(String(rest.defaultSize?.height));
60
+ }
61
+ }, [rest.defaultSize?.height, setHeight]);
62
+ if (!trayId) {
63
+ return <Resizable {...rest}/>;
64
+ }
65
+ return (<Resizable {...rest} onResizeStop={(_, __, divRef, delta) => {
66
+ onResizeStop?.(_, __, divRef, delta);
67
+ rest.onResizeStop?.(_, __, divRef, delta);
68
+ }} size={{
69
+ ...rest.size,
70
+ height: height || rest.defaultSize?.height,
71
+ }}/>);
72
+ };
73
+ export default ResizableTray;
74
+ //# sourceMappingURL=index.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/resizableTray/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,47 +13,22 @@
14
13
  * See the License for the specific language governing permissions and
15
14
  * limitations under the License.
16
15
  */
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
- Object.defineProperty(exports, "__esModule", { value: true });
41
16
  /**
42
17
  * External dependencies.
43
18
  */
44
- const react_1 = __importStar(require("react"));
45
- const i18n_1 = require("@google-psat/i18n");
19
+ import React, { useEffect, useRef, useState } from 'react';
20
+ import { I18n } from '@google-psat/i18n';
46
21
  /**
47
22
  * Internal dependencies.
48
23
  */
49
- const icons_1 = require("../../icons");
50
- const SearchInput = ({ value, onChange, clearInput, placeholder, }) => {
51
- const [isFocused, setIsFocused] = (0, react_1.useState)(false);
52
- const inputContainerRef = (0, react_1.useRef)(null);
53
- const inputRef = (0, react_1.useRef)(null);
54
- (0, react_1.useEffect)(() => {
55
- var _a;
24
+ import { PaddedCross } from '../../icons';
25
+ const SearchInput = ({ value, onChange, clearInput, placeholder, inputExtraClass, icon = <></>, // Default icon if not provided
26
+ }) => {
27
+ const [isFocused, setIsFocused] = useState(false);
28
+ const inputContainerRef = useRef(null);
29
+ const inputRef = useRef(null);
30
+ useEffect(() => {
56
31
  const handleClick = (event) => {
57
- var _a;
58
32
  if (inputContainerRef.current) {
59
33
  const isClickInside = inputContainerRef.current.contains(event.target);
60
34
  if (!isClickInside) {
@@ -62,25 +36,25 @@ const SearchInput = ({ value, onChange, clearInput, placeholder, }) => {
62
36
  }
63
37
  else {
64
38
  setIsFocused(true);
65
- (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
39
+ inputRef.current?.focus();
66
40
  }
67
41
  }
68
42
  };
69
- (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.addEventListener('click', handleClick);
43
+ globalThis?.document?.addEventListener('click', handleClick);
70
44
  return () => {
71
- var _a;
72
- (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.removeEventListener('click', handleClick);
45
+ globalThis?.document?.removeEventListener('click', handleClick);
73
46
  };
74
47
  }, []);
75
- return (<div ref={inputContainerRef} className={`w-3/5 cursor-text bg-white dark:bg-charleston-green text-raisin-black dark:text-bright-gray border rounded flex justify-between items-center gap-1 mx-[3px] my-px px-[3px] pt-0.5 pb-px box-content text-xs ${isFocused
76
- ? 'border-sapphire dark:border-baby-blue-eyes'
77
- : 'border-chinese-silver dark:border-davys-grey hover:bg-eerie-black dark:hover:bg-outer-space'}`}>
78
- <input ref={inputRef} type="text" className="h-[14px] w-full outline-none bg-transparent" placeholder={placeholder || i18n_1.I18n.getMessage('search')} value={value} onChange={onChange} onFocus={() => setIsFocused(true)}/>
48
+ return (<div ref={inputContainerRef} className={`w-3/5 cursor-text bg-slate-gray dark:bg-dark-graphite text-raisin-black dark:text-bright-gray rounded flex justify-between items-center gap-1 mx-[3px] my-px px-[3px] pl-2 pt-0.5 pb-px box-content text-xs border border-gray-300 dark:border-quartz ${inputExtraClass} ${isFocused
49
+ ? 'border border-sapphire dark:border-baby-blue-eyes'
50
+ : 'hover:bg-eerie-black dark:hover:bg-[#FDFCFB1A]'}`}>
51
+ {icon}
52
+ <input role="textbox" ref={inputRef} type="text" className="h-[14px] w-full outline-hidden bg-transparent" placeholder={placeholder || I18n.getMessage('search')} value={value} onChange={onChange} onFocus={() => setIsFocused(true)}/>
79
53
 
80
- <button onClick={clearInput} className={`w-fit h-3 px-px scale-[1.6] hover:opacity-70 active:opacity-50 flex justify-center items-center ${value ? 'visible' : 'invisible'}`} title={i18n_1.I18n.getMessage('clearSearch')}>
81
- <icons_1.PaddedCross />
54
+ <button onClick={clearInput} className={`w-fit h-3 px-px scale-[1.6] hover:opacity-70 active:opacity-50 flex justify-center items-center ${value ? 'visible' : 'invisible'}`} title={I18n.getMessage('clearSearch')}>
55
+ <PaddedCross />
82
56
  </button>
83
57
  </div>);
84
58
  };
85
- exports.default = SearchInput;
59
+ export default SearchInput;
86
60
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/searchInput/index.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH;;GAEG;AACH,+CAA2D;AAC3D,4CAAyC;AAEzC;;GAEG;AACH,uCAA0C;AAS1C,MAAM,WAAW,GAAG,CAAC,EACnB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,WAAW,GACM,EAAE,EAAE;IACrB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAC;IAEhD,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;;YACxC,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CACtD,KAAK,CAAC,MAAc,CACrB,CAAC;gBAEF,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnB,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,0CAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE7D,OAAO,GAAG,EAAE;;YACV,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,0CAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,CAAC,GAAG,CACF,GAAG,CAAC,CAAC,iBAAiB,CAAC,CACvB,SAAS,CAAC,CAAC,+MACT,SAAS;YACP,CAAC,CAAC,4CAA4C;YAC9C,CAAC,CAAC,6FACN,EAAE,CAAC,CAEH;MAAA,CAAC,KAAK,CACJ,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,IAAI,CAAC,MAAM,CACX,SAAS,CAAC,6CAA6C,CACvD,WAAW,CAAC,CAAC,WAAW,IAAI,WAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CACtD,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAGpC;;MAAA,CAAC,MAAM,CACL,OAAO,CAAC,CAAC,UAAU,CAAC,CACpB,SAAS,CAAC,CAAC,mGACT,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WACtB,EAAE,CAAC,CACH,KAAK,CAAC,CAAC,WAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAEtC;QAAA,CAAC,mBAAW,CAAC,AAAD,EACd;MAAA,EAAE,MAAM,CACV;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../src/components/searchInput/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAY1C,MAAM,WAAW,GAAG,CAAC,EACnB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,WAAW,EACX,eAAe,EACf,IAAI,GAAG,EAAE,GAAG,EAAE,+BAA+B;EAC5B,EAAE,EAAE;IACrB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAEhD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;YACxC,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CACtD,KAAK,CAAC,MAAc,CACrB,CAAC;gBAEF,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnB,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,UAAU,EAAE,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE7D,OAAO,GAAG,EAAE;YACV,UAAU,EAAE,QAAQ,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,CAAC,GAAG,CACF,GAAG,CAAC,CAAC,iBAAiB,CAAC,CACvB,SAAS,CAAC,CAAC,yPAAyP,eAAe,IACjR,SAAS;YACP,CAAC,CAAC,mDAAmD;YACrD,CAAC,CAAC,gDACN,EAAE,CAAC,CAEH;MAAA,CAAC,IAAI,CACL;MAAA,CAAC,KAAK,CACJ,IAAI,CAAC,SAAS,CACd,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,IAAI,CAAC,MAAM,CACX,SAAS,CAAC,+CAA+C,CACzD,WAAW,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CACtD,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAGpC;;MAAA,CAAC,MAAM,CACL,OAAO,CAAC,CAAC,UAAU,CAAC,CACpB,SAAS,CAAC,CAAC,mGACT,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WACtB,EAAE,CAAC,CACH,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAEtC;QAAA,CAAC,WAAW,CAAC,AAAD,EACd;MAAA,EAAE,MAAM,CACV;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}