@databiosphere/findable-ui 24.0.0 → 25.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +39 -0
  3. package/lib/common/entities.d.ts +1 -0
  4. package/lib/components/DataDictionary/components/Entities/constants.d.ts +2 -2
  5. package/lib/components/DataDictionary/components/Entities/constants.js +1 -1
  6. package/lib/components/DataDictionary/components/Entities/entities.js +3 -3
  7. package/lib/components/DataDictionary/components/Entity/constants.d.ts +2 -2
  8. package/lib/components/DataDictionary/components/Entity/constants.js +1 -1
  9. package/lib/components/DataDictionary/components/Entity/entity.js +4 -4
  10. package/lib/components/Detail/components/Table/components/TableHead/tableHead.d.ts +8 -0
  11. package/lib/components/Detail/components/Table/components/TableHead/tableHead.js +36 -0
  12. package/lib/components/Export/components/ExportForm/exportForm.styles.d.ts +2 -2
  13. package/lib/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.js +1 -1
  14. package/lib/components/Filter/components/FilterLabel/filterLabel.js +2 -2
  15. package/lib/components/Filter/components/FilterLabel/filterLabel.styles.d.ts +1 -1
  16. package/lib/components/Filter/components/SearchAllFiltersSearch/components/SearchCloseButton/searchCloseButton.js +2 -2
  17. package/lib/components/Index/components/EntitiesView/components/ChartView/chartView.d.ts +2 -0
  18. package/lib/components/Index/components/EntitiesView/components/ChartView/chartView.js +17 -0
  19. package/lib/components/Index/components/EntitiesView/components/ChartView/chartView.styles.d.ts +13 -0
  20. package/lib/components/Index/components/EntitiesView/components/ChartView/chartView.styles.js +12 -0
  21. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/constants.d.ts +9 -0
  22. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/constants.js +9 -0
  23. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/plot.d.ts +3 -0
  24. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/plot.js +86 -0
  25. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/utils.d.ts +105 -0
  26. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/utils.js +196 -0
  27. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.d.ts +2 -0
  28. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.js +7 -0
  29. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.styles.d.ts +3 -0
  30. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.styles.js +29 -0
  31. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/constants.d.ts +1 -0
  32. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/constants.js +1 -0
  33. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/args.d.ts +4 -0
  34. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/args.js +70 -0
  35. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/chart.stories.d.ts +7 -0
  36. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/chart.stories.js +19 -0
  37. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/types.d.ts +6 -0
  38. package/lib/components/Index/components/EntitiesView/components/ChartView/components/Chart/types.js +1 -0
  39. package/lib/components/Index/components/EntitiesView/components/ChartView/constants.d.ts +1 -0
  40. package/lib/components/Index/components/EntitiesView/components/ChartView/constants.js +1 -0
  41. package/lib/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/types.d.ts +7 -0
  42. package/lib/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/types.js +1 -0
  43. package/lib/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/useChartView.d.ts +3 -0
  44. package/lib/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/useChartView.js +11 -0
  45. package/lib/components/Index/components/EntitiesView/components/ChartView/stories/args.d.ts +3 -0
  46. package/lib/components/Index/components/EntitiesView/components/ChartView/stories/args.js +96 -0
  47. package/lib/components/Index/components/EntitiesView/components/ChartView/stories/chartView.stories.d.ts +6 -0
  48. package/lib/components/Index/components/EntitiesView/components/ChartView/stories/chartView.stories.js +16 -0
  49. package/lib/components/Index/components/EntitiesView/components/ChartView/types.d.ts +6 -0
  50. package/lib/components/Index/components/EntitiesView/components/ChartView/types.js +1 -0
  51. package/lib/components/Index/components/EntitiesView/components/ChartView/utils.d.ts +14 -0
  52. package/lib/components/Index/components/EntitiesView/components/ChartView/utils.js +21 -0
  53. package/lib/components/Index/components/EntitiesView/components/EntityList/entityList.d.ts +2 -0
  54. package/lib/components/Index/components/EntitiesView/components/EntityList/entityList.js +16 -0
  55. package/lib/components/Index/components/EntitiesView/components/EntityList/types.d.ts +3 -0
  56. package/lib/components/Index/components/EntitiesView/components/EntityList/types.js +1 -0
  57. package/lib/components/Index/components/EntitiesView/constants.d.ts +1 -0
  58. package/lib/components/Index/components/EntitiesView/constants.js +1 -0
  59. package/lib/components/Index/components/EntitiesView/entitiesView.d.ts +2 -0
  60. package/lib/components/Index/components/EntitiesView/entitiesView.js +14 -0
  61. package/lib/components/Index/components/EntitiesView/entitiesView.styles.d.ts +3 -0
  62. package/lib/components/Index/components/EntitiesView/entitiesView.styles.js +20 -0
  63. package/lib/components/Index/components/EntitiesView/hooks/UseEntitiesView/hook.d.ts +2 -0
  64. package/lib/components/Index/components/EntitiesView/hooks/UseEntitiesView/hook.js +14 -0
  65. package/lib/components/Index/components/EntitiesView/hooks/UseEntitiesView/types.d.ts +13 -0
  66. package/lib/components/Index/components/EntitiesView/hooks/UseEntitiesView/types.js +5 -0
  67. package/lib/components/Index/components/EntitiesView/stories/entitiesView.stories.d.ts +8 -0
  68. package/lib/components/Index/components/EntitiesView/stories/entitiesView.stories.js +50 -0
  69. package/lib/components/Index/components/EntitiesView/types.d.ts +8 -0
  70. package/lib/components/Index/components/EntitiesView/types.js +1 -0
  71. package/lib/components/Index/components/NTagCell/nTagCell.stories.d.ts +5 -16
  72. package/lib/components/Index/components/NTagCell/nTagCell.stories.js +8 -8
  73. package/lib/components/Index/components/TitleCell/titleCell.d.ts +6 -0
  74. package/lib/components/Index/components/TitleCell/titleCell.js +10 -0
  75. package/lib/components/Index/components/TitleCell/titleCell.styles.d.ts +3 -0
  76. package/lib/components/Index/components/TitleCell/titleCell.styles.js +6 -0
  77. package/lib/components/Index/index.d.ts +2 -13
  78. package/lib/components/Index/index.js +6 -2
  79. package/lib/components/Index/index.stories.js +3 -2
  80. package/lib/components/Index/types.d.ts +12 -0
  81. package/lib/components/Index/types.js +1 -0
  82. package/lib/components/Layout/components/BackPage/components/BackPageHero/backPageHero.d.ts +1 -1
  83. package/lib/components/Layout/components/BackPage/components/BackPageHero/backPageHero.js +5 -4
  84. package/lib/components/Layout/components/BackPage/components/BackPageHero/stories/backPageHero.stories.d.ts +6 -0
  85. package/lib/components/Layout/components/BackPage/components/BackPageHero/stories/backPageHero.stories.js +18 -0
  86. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/authentication.js +3 -3
  87. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.d.ts +5 -0
  88. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.js +29 -0
  89. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.styles.d.ts +1 -1
  90. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/Button/button.styles.d.ts +1 -1
  91. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.d.ts +6 -0
  92. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.js +13 -0
  93. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.d.ts +36 -0
  94. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.js +9 -0
  95. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Menu/components/Toolbar/toolbar.js +2 -2
  96. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Menu/menu.js +2 -2
  97. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/Button/button.styles.d.ts +1 -1
  98. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchBar/searchBar.js +5 -3
  99. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchBar/searchBar.styles.d.ts +5 -1
  100. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchBar/searchBar.styles.js +4 -3
  101. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.d.ts +5 -0
  102. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.js +10 -0
  103. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.d.ts +36 -0
  104. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.js +9 -0
  105. package/lib/components/Layout/components/Header/components/Content/components/Navigation/components/NavigationDrawer/navigationDrawer.js +2 -2
  106. package/lib/components/Layout/components/Header/components/Content/components/Navigation/components/NavigationMenu/navigationMenu.js +2 -2
  107. package/lib/components/Layout/components/Header/hooks/useMeasureHeader.d.ts +5 -0
  108. package/lib/components/Layout/components/Header/hooks/useMeasureHeader.js +19 -0
  109. package/lib/components/Layout/components/Outline/common/constants.d.ts +2 -0
  110. package/lib/components/Layout/components/Outline/common/constants.js +1 -0
  111. package/lib/components/Layout/components/Sidebar/components/SidebarButton/sidebarButton.js +2 -2
  112. package/lib/components/Loading/loading.d.ts +2 -1
  113. package/lib/components/Loading/loading.js +2 -2
  114. package/lib/components/Login/components/Button/button.styles.d.ts +1 -1
  115. package/lib/components/Login/components/Section/components/Consent/consent.js +3 -3
  116. package/lib/components/Login/components/Section/components/Consent/consent.styles.d.ts +1 -1
  117. package/lib/components/Login/components/Section/components/Consent/consent.styles.js +2 -2
  118. package/lib/components/Login/components/Section/components/Consent/types.d.ts +2 -2
  119. package/lib/components/Login/login.stories.d.ts +6 -0
  120. package/lib/components/Login/login.stories.js +31 -0
  121. package/lib/components/NoResults/noResults.d.ts +1 -8
  122. package/lib/components/NoResults/noResults.js +9 -8
  123. package/lib/components/NoResults/noResults.styles.d.ts +2 -2
  124. package/lib/components/NoResults/noResults.styles.js +4 -2
  125. package/lib/components/NoResults/types.d.ts +8 -0
  126. package/lib/components/NoResults/types.js +1 -0
  127. package/lib/components/Plot/components/BarX/barX.d.ts +2 -0
  128. package/lib/components/Plot/components/BarX/barX.js +13 -0
  129. package/lib/components/Plot/components/BarX/types.d.ts +5 -0
  130. package/lib/components/Plot/components/BarX/types.js +1 -0
  131. package/lib/components/Stepper/components/Step/components/StepContent/stepContent.js +2 -2
  132. package/lib/components/Stepper/components/Step/components/StepContent/stepContent.styles.js +1 -1
  133. package/lib/components/Stepper/components/Step/step.styles.d.ts +1 -1
  134. package/lib/components/Support/components/SupportRequest/components/Dialog/dialog.js +2 -2
  135. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.d.ts +16 -0
  136. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.js +28 -0
  137. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.stories.d.ts +5 -0
  138. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.stories.js +46 -0
  139. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.styles.d.ts +3 -0
  140. package/lib/components/Table/components/CheckboxMenu/checkboxMenu.styles.js +21 -0
  141. package/lib/components/Table/components/EntityViewToggle/entityViewToggle.d.ts +2 -0
  142. package/lib/components/Table/components/EntityViewToggle/entityViewToggle.js +37 -0
  143. package/lib/components/Table/components/Pagination/pagination.js +3 -4
  144. package/lib/components/Table/components/TableHead/tableHead.js +2 -2
  145. package/lib/components/Table/table.js +11 -11
  146. package/lib/components/TableCreator/common/constants.d.ts +6 -0
  147. package/lib/components/TableCreator/common/constants.js +19 -0
  148. package/lib/components/TableCreator/common/entities.d.ts +5 -0
  149. package/lib/components/TableCreator/common/entities.js +1 -0
  150. package/lib/components/TableCreator/tableCreator.js +1 -6
  151. package/lib/components/common/Alert/alert.stories.d.ts +6 -0
  152. package/lib/components/common/Alert/alert.stories.js +36 -0
  153. package/lib/components/common/Alert/components/AlertText/alertText.styles.d.ts +4 -0
  154. package/lib/components/common/Alert/components/AlertText/alertText.styles.js +19 -0
  155. package/lib/components/common/AnchorLink/anchorLink.js +2 -2
  156. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.d.ts +7 -0
  157. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.js +5 -0
  158. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.d.ts +3 -0
  159. package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.js +19 -0
  160. package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.d.ts +10 -0
  161. package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.js +16 -0
  162. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.d.ts +3 -0
  163. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.js +21 -0
  164. package/lib/components/common/Breadcrumbs/breadcrumbs.js +2 -2
  165. package/lib/components/common/Breadcrumbs/typeGuard.d.ts +13 -0
  166. package/lib/components/common/Breadcrumbs/typeGuard.js +23 -0
  167. package/lib/components/common/Button/components/DropdownButton/dropdownButton.js +2 -2
  168. package/lib/components/common/Button/components/LoginButton/loginButton.d.ts +3 -0
  169. package/lib/components/common/Button/components/LoginButton/loginButton.js +6 -0
  170. package/lib/components/common/Button/components/LoginButton/loginButton.styles.d.ts +7 -0
  171. package/lib/components/common/Button/components/LoginButton/loginButton.styles.js +11 -0
  172. package/lib/components/common/Button/components/NavigationButton/navigationButton.js +2 -2
  173. package/lib/components/common/CopyToClipboard/copyToClipboard.js +2 -2
  174. package/lib/components/common/Dialog/components/DialogTitle/dialogTitle.js +2 -2
  175. package/lib/components/common/Drawer/components/DrawerTitle/drawerTitle.js +2 -2
  176. package/lib/components/common/Form/components/Input/input.styles.d.ts +1 -1
  177. package/lib/components/common/Form/components/Select/components/DropDownIcon/dropDownIcon.d.ts +2 -3
  178. package/lib/components/common/Form/components/Select/components/DropDownIcon/dropDownIcon.js +3 -3
  179. package/lib/components/common/Form/components/Select/select.js +1 -2
  180. package/lib/components/common/Form/components/Select/select.styles.d.ts +1 -1
  181. package/lib/components/common/Form/components/UploadFile/uploadFile.js +2 -2
  182. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.d.ts +5 -0
  183. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.js +10 -0
  184. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.d.ts +3 -0
  185. package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.js +9 -0
  186. package/lib/components/common/IconButton/iconButton.styles.d.ts +1 -1
  187. package/lib/components/common/Input/input.styles.d.ts +1 -1
  188. package/lib/components/common/LoginDialog/loginDialog.styles.js +1 -1
  189. package/lib/components/common/Paper/paper.d.ts +2 -1
  190. package/lib/components/common/Paper/paper.js +2 -2
  191. package/lib/components/common/Section/components/CollapsableSection/collapsableSection.js +2 -3
  192. package/lib/components/common/ToggleButtonGroup/hooks/UseToggleButtonGroup/hook.d.ts +2 -0
  193. package/lib/components/common/ToggleButtonGroup/hooks/UseToggleButtonGroup/hook.js +10 -0
  194. package/lib/components/types.d.ts +3 -0
  195. package/lib/config/entities.d.ts +2 -0
  196. package/lib/hooks/useAuthentication/common/constants.d.ts +4 -0
  197. package/lib/hooks/useAuthentication/common/constants.js +19 -0
  198. package/lib/hooks/useAuthentication/common/entities.d.ts +25 -0
  199. package/lib/hooks/useAuthentication/common/entities.js +11 -0
  200. package/lib/hooks/useAuthentication/common/utils.d.ts +15 -0
  201. package/lib/hooks/useAuthentication/common/utils.js +25 -0
  202. package/lib/hooks/useAuthentication/useAuthentication.d.ts +6 -0
  203. package/lib/hooks/useAuthentication/useAuthentication.js +9 -0
  204. package/lib/hooks/useAuthentication/useAuthenticationComplete.d.ts +6 -0
  205. package/lib/hooks/useAuthentication/useAuthenticationComplete.js +55 -0
  206. package/lib/hooks/useAuthentication/useAuthenticationForm.d.ts +20 -0
  207. package/lib/hooks/useAuthentication/useAuthenticationForm.js +88 -0
  208. package/lib/hooks/useAuthentication/useAuthenticationNIHExpiry.d.ts +18 -0
  209. package/lib/hooks/useAuthentication/useAuthenticationNIHExpiry.js +50 -0
  210. package/lib/hooks/useAuthentication/useAuthenticationStatus.d.ts +20 -0
  211. package/lib/hooks/useAuthentication/useAuthenticationStatus.js +32 -0
  212. package/lib/hooks/useAuthentication/useFetchGoogleProfile.d.ts +21 -0
  213. package/lib/hooks/useAuthentication/useFetchGoogleProfile.js +41 -0
  214. package/lib/hooks/useAuthentication/useFetchTerraNIHProfile.d.ts +18 -0
  215. package/lib/hooks/useAuthentication/useFetchTerraNIHProfile.js +62 -0
  216. package/lib/hooks/useAuthentication/useFetchTerraProfile.d.ts +24 -0
  217. package/lib/hooks/useAuthentication/useFetchTerraProfile.js +62 -0
  218. package/lib/hooks/useAuthentication/useFetchTerraTermsOfService.d.ts +15 -0
  219. package/lib/hooks/useAuthentication/useFetchTerraTermsOfService.js +62 -0
  220. package/lib/hooks/useAuthentication/useTokenClient.d.ts +11 -0
  221. package/lib/hooks/useAuthentication/useTokenClient.js +29 -0
  222. package/lib/hooks/useAuthenticationConfig.d.ts +6 -0
  223. package/lib/hooks/useAuthenticationConfig.js +14 -0
  224. package/lib/hooks/useCategoryConfigs.d.ts +6 -0
  225. package/lib/hooks/useCategoryConfigs.js +17 -0
  226. package/lib/hooks/useCategoryFilter.js +1 -0
  227. package/lib/hooks/useEntityListRelatedView.d.ts +15 -0
  228. package/lib/hooks/useEntityListRelatedView.js +62 -0
  229. package/lib/hooks/useFileManifest/common/buildFileManifestRequestURL.d.ts +15 -0
  230. package/lib/hooks/useFileManifest/common/buildFileManifestRequestURL.js +27 -0
  231. package/lib/hooks/useFileManifest/useFileManifestURL.d.ts +5 -0
  232. package/lib/hooks/useFileManifest/useFileManifestURL.js +11 -0
  233. package/lib/hooks/useFileManifest/useRequestFileManifest.d.ts +9 -0
  234. package/lib/hooks/useFileManifest/useRequestFileManifest.js +37 -0
  235. package/lib/hooks/useLayoutState.d.ts +6 -0
  236. package/lib/hooks/useLayoutState.js +9 -0
  237. package/lib/hooks/useMenu.d.ts +10 -0
  238. package/lib/hooks/useMenu.js +17 -0
  239. package/lib/hooks/useMenuWithPosition.d.ts +14 -0
  240. package/lib/hooks/useMenuWithPosition.js +33 -0
  241. package/lib/hooks/useResizeObserver.d.ts +2 -1
  242. package/lib/hooks/useResizeObserver.js +5 -2
  243. package/lib/hooks/useSessionTimeout.d.ts +11 -0
  244. package/lib/hooks/useSessionTimeout.js +28 -0
  245. package/lib/providers/authentication.d.ts +51 -0
  246. package/lib/providers/authentication.js +110 -0
  247. package/lib/providers/layoutState.d.ts +40 -0
  248. package/lib/providers/layoutState.js +47 -0
  249. package/lib/styles/common/mui/palette.d.ts +47 -0
  250. package/lib/styles/common/mui/palette.js +47 -0
  251. package/lib/theme/common/components.js +4 -0
  252. package/lib/theme/common/typography.d.ts +1 -1
  253. package/lib/theme/theme.js +1 -0
  254. package/lib/views/ExploreView/exploreView.js +4 -24
  255. package/package.json +6 -4
  256. package/src/common/entities.ts +1 -0
  257. package/src/components/DataDictionary/components/Entities/constants.ts +2 -2
  258. package/src/components/DataDictionary/components/Entities/entities.tsx +4 -4
  259. package/src/components/DataDictionary/components/Entity/constants.ts +2 -2
  260. package/src/components/DataDictionary/components/Entity/entity.tsx +6 -6
  261. package/src/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.tsx +1 -1
  262. package/src/components/Filter/components/FilterLabel/filterLabel.tsx +2 -2
  263. package/src/components/Filter/components/SearchAllFiltersSearch/components/SearchCloseButton/searchCloseButton.tsx +2 -2
  264. package/src/components/Index/components/EntitiesView/components/ChartView/chartView.styles.ts +14 -0
  265. package/src/components/Index/components/EntitiesView/components/ChartView/chartView.tsx +38 -0
  266. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/constants.ts +13 -0
  267. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/plot.ts +104 -0
  268. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/barX/utils.ts +229 -0
  269. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.styles.ts +30 -0
  270. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/chart.tsx +16 -0
  271. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/constants.ts +1 -0
  272. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/args.ts +74 -0
  273. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/stories/chart.stories.tsx +29 -0
  274. package/src/components/Index/components/EntitiesView/components/ChartView/components/Chart/types.ts +9 -0
  275. package/src/components/Index/components/EntitiesView/components/ChartView/constants.ts +1 -0
  276. package/src/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/types.ts +8 -0
  277. package/src/components/Index/components/EntitiesView/components/ChartView/hooks/UseChartView/useChartView.ts +29 -0
  278. package/src/components/Index/components/EntitiesView/components/ChartView/stories/args.ts +99 -0
  279. package/src/components/Index/components/EntitiesView/components/ChartView/stories/chartView.stories.tsx +25 -0
  280. package/src/components/Index/components/EntitiesView/components/ChartView/types.ts +7 -0
  281. package/src/components/Index/components/EntitiesView/components/ChartView/utils.ts +26 -0
  282. package/src/components/Index/components/EntitiesView/components/EntityList/entityList.tsx +29 -0
  283. package/src/components/Index/components/EntitiesView/components/EntityList/types.ts +3 -0
  284. package/src/components/Index/components/EntitiesView/constants.ts +1 -0
  285. package/src/components/Index/components/EntitiesView/entitiesView.styles.ts +21 -0
  286. package/src/components/Index/components/EntitiesView/entitiesView.tsx +30 -0
  287. package/src/components/Index/components/EntitiesView/hooks/UseEntitiesView/hook.ts +15 -0
  288. package/src/components/Index/components/EntitiesView/hooks/UseEntitiesView/types.ts +16 -0
  289. package/src/components/Index/components/EntitiesView/stories/entitiesView.stories.tsx +76 -0
  290. package/src/components/Index/components/EntitiesView/types.ts +9 -0
  291. package/src/components/Index/index.stories.tsx +3 -2
  292. package/src/components/Index/index.tsx +15 -15
  293. package/src/components/Index/types.ts +13 -0
  294. package/src/components/Layout/components/BackPage/components/BackPageHero/backPageHero.tsx +19 -14
  295. package/src/components/Layout/components/BackPage/components/BackPageHero/stories/backPageHero.stories.tsx +24 -0
  296. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/authentication.tsx +3 -3
  297. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Menu/components/Toolbar/toolbar.tsx +2 -2
  298. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Menu/menu.tsx +2 -2
  299. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchBar/searchBar.styles.ts +8 -3
  300. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchBar/searchBar.tsx +5 -2
  301. package/src/components/Layout/components/Header/components/Content/components/Navigation/components/NavigationDrawer/navigationDrawer.tsx +2 -2
  302. package/src/components/Layout/components/Header/components/Content/components/Navigation/components/NavigationMenu/navigationMenu.tsx +2 -2
  303. package/src/components/Layout/components/Sidebar/components/SidebarButton/sidebarButton.tsx +2 -2
  304. package/src/components/Loading/loading.tsx +11 -3
  305. package/src/components/Login/components/Section/components/Consent/consent.styles.ts +2 -2
  306. package/src/components/Login/components/Section/components/Consent/consent.tsx +4 -4
  307. package/src/components/Login/components/Section/components/Consent/types.ts +2 -2
  308. package/src/components/NoResults/noResults.styles.ts +4 -2
  309. package/src/components/NoResults/noResults.tsx +16 -22
  310. package/src/components/NoResults/types.ts +13 -0
  311. package/src/components/Plot/components/BarX/barX.tsx +20 -0
  312. package/src/components/Plot/components/BarX/types.ts +6 -0
  313. package/src/components/Stepper/components/Step/components/StepContent/stepContent.styles.ts +1 -1
  314. package/src/components/Stepper/components/Step/components/StepContent/stepContent.tsx +2 -2
  315. package/src/components/Support/components/SupportRequest/components/Dialog/dialog.tsx +2 -2
  316. package/src/components/Table/components/Pagination/pagination.tsx +3 -4
  317. package/src/components/Table/components/TableHead/tableHead.tsx +2 -2
  318. package/src/components/Table/table.tsx +42 -38
  319. package/src/components/TableCreator/tableCreator.tsx +8 -18
  320. package/src/components/common/AnchorLink/anchorLink.tsx +2 -2
  321. package/src/components/common/Breadcrumbs/breadcrumbs.tsx +2 -2
  322. package/src/components/common/Breadcrumbs/typeGuard.ts +24 -0
  323. package/src/components/common/Button/components/DropdownButton/dropdownButton.tsx +2 -2
  324. package/src/components/common/Button/components/NavigationButton/navigationButton.tsx +2 -2
  325. package/src/components/common/CopyToClipboard/copyToClipboard.tsx +2 -2
  326. package/src/components/common/Dialog/components/DialogTitle/dialogTitle.tsx +2 -2
  327. package/src/components/common/Drawer/components/DrawerTitle/drawerTitle.tsx +2 -2
  328. package/src/components/common/Form/components/Select/components/DropDownIcon/dropDownIcon.tsx +5 -6
  329. package/src/components/common/Form/components/Select/select.tsx +1 -8
  330. package/src/components/common/Form/components/UploadFile/uploadFile.tsx +2 -2
  331. package/src/components/common/LoginDialog/loginDialog.styles.ts +1 -1
  332. package/src/components/common/Paper/paper.tsx +9 -3
  333. package/src/components/common/Section/components/CollapsableSection/collapsableSection.tsx +2 -3
  334. package/src/components/common/ToggleButtonGroup/hooks/UseToggleButtonGroup/hook.ts +17 -0
  335. package/src/components/types.ts +4 -0
  336. package/src/config/entities.ts +2 -0
  337. package/src/hooks/useCategoryFilter.ts +1 -0
  338. package/src/hooks/useResizeObserver.ts +5 -2
  339. package/src/styles/common/mui/palette.ts +47 -0
  340. package/src/theme/common/components.ts +4 -0
  341. package/src/theme/common/typography.ts +1 -1
  342. package/src/theme/theme.ts +1 -0
  343. package/src/views/ExploreView/exploreView.tsx +8 -42
  344. package/tests/chart.test.tsx +170 -0
  345. package/tests/chartView.test.tsx +36 -0
  346. package/tests/entitiesView.test.tsx +36 -0
  347. package/tests/setup.ts +13 -0
  348. package/types/data-explorer-ui.d.ts +36 -80
  349. package/src/components/Index/components/Cell/cell.tsx +0 -22
  350. package/src/components/Index/components/NTag/components/Tooltip/tooltip.styles.ts +0 -11
  351. package/src/components/Index/components/NTag/components/Tooltip/tooltip.tsx +0 -90
  352. package/src/components/Index/components/NTag/nTag.tsx +0 -25
  353. package/src/components/Index/components/NTagCell/nTagCell.stories.tsx +0 -22
  354. package/src/components/Index/components/NTagCell/nTagCell.tsx +0 -74
  355. package/src/components/Layout/components/BackPage/components/BackPageHero/backPageHero.stories.tsx +0 -16
  356. package/src/components/TableCreator/tableCreator.styles.ts +0 -5
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "24.0.0"
2
+ ".": "25.0.0"
3
3
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,44 @@
1
1
  # Changelog
2
2
 
3
+ ## [25.0.0](https://github.com/DataBiosphere/findable-ui/compare/v24.0.0...v25.0.0) (2025-04-11)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * refactor filtersummary to chartview ([#395](https://github.com/DataBiosphere/findable-ui/issues/395)) (#396)
9
+ * implement filter summary view charts ([#390](https://github.com/DataBiosphere/findable-ui/issues/390)) (#391)
10
+ * add css variables to theme ([#392](https://github.com/DataBiosphere/findable-ui/issues/392)) (#393)
11
+ * implement filter summary view toggle ([#377](https://github.com/DataBiosphere/findable-ui/issues/377)) (#389)
12
+ * update mui to latest version v7 ([#373](https://github.com/DataBiosphere/findable-ui/issues/373)) (#375)
13
+
14
+ ### Features
15
+
16
+ * add css variables to theme ([#392](https://github.com/DataBiosphere/findable-ui/issues/392)) ([#393](https://github.com/DataBiosphere/findable-ui/issues/393)) ([9a04974](https://github.com/DataBiosphere/findable-ui/commit/9a049749c3ecc122dc86395eca5fa544a59f885b))
17
+ * implement filter summary view charts ([#390](https://github.com/DataBiosphere/findable-ui/issues/390)) ([#391](https://github.com/DataBiosphere/findable-ui/issues/391)) ([f679a0b](https://github.com/DataBiosphere/findable-ui/commit/f679a0b3a4910ebbd270f250dbc5c6cbe75a8257))
18
+ * implement filter summary view toggle ([#377](https://github.com/DataBiosphere/findable-ui/issues/377)) ([#389](https://github.com/DataBiosphere/findable-ui/issues/389)) ([87882f2](https://github.com/DataBiosphere/findable-ui/commit/87882f2d719d6d12748a795dce97f80e89e8a2ef))
19
+ * update backpagehero props to take breadcrumbs as reactnode ([#371](https://github.com/DataBiosphere/findable-ui/issues/371)) ([#372](https://github.com/DataBiosphere/findable-ui/issues/372)) ([d53947a](https://github.com/DataBiosphere/findable-ui/commit/d53947a70d7957f19e9770d3174630bc5b402ce8))
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * add dropdownicon to muiselect default props ([#356](https://github.com/DataBiosphere/findable-ui/issues/356)) ([#384](https://github.com/DataBiosphere/findable-ui/issues/384)) ([de68df4](https://github.com/DataBiosphere/findable-ui/commit/de68df4804f58deaf4d3c8caebafbdc5f88b2884))
25
+ * fix ci test failure 'textencoder is not defined' ([#381](https://github.com/DataBiosphere/findable-ui/issues/381)) ([#382](https://github.com/DataBiosphere/findable-ui/issues/382)) ([0f301b7](https://github.com/DataBiosphere/findable-ui/commit/0f301b7176f65219d9c7484a7cb735ff8b12fdb5))
26
+ * fix Jest ESM Transformation Issue for @mui/icons-material ([#352](https://github.com/DataBiosphere/findable-ui/issues/352)) ([#353](https://github.com/DataBiosphere/findable-ui/issues/353)) ([b812371](https://github.com/DataBiosphere/findable-ui/commit/b812371ed47ecddf32b1eeec18e8e846eee52ae4))
27
+ * fix search bar position when a banner is displayed ([#369](https://github.com/DataBiosphere/findable-ui/issues/369)) ([#370](https://github.com/DataBiosphere/findable-ui/issues/370)) ([c7d476c](https://github.com/DataBiosphere/findable-ui/commit/c7d476cd4db90ecdcd77ad5da774c669b2c04e6b))
28
+ * update 'renew your account' link ([#385](https://github.com/DataBiosphere/findable-ui/issues/385)) ([#386](https://github.com/DataBiosphere/findable-ui/issues/386)) ([ecf0ce3](https://github.com/DataBiosphere/findable-ui/commit/ecf0ce346811ac3a00a64863e9397ff0bf5691c4))
29
+
30
+
31
+ ### Chores
32
+
33
+ * update mui to latest version v7 ([#373](https://github.com/DataBiosphere/findable-ui/issues/373)) ([#375](https://github.com/DataBiosphere/findable-ui/issues/375)) ([b395861](https://github.com/DataBiosphere/findable-ui/commit/b395861d631fa1f744ba8d6e008baa5507e249bd))
34
+
35
+
36
+ ### Code Refactoring
37
+
38
+ * refactor filtersummary to chartview ([#395](https://github.com/DataBiosphere/findable-ui/issues/395)) ([#396](https://github.com/DataBiosphere/findable-ui/issues/396)) ([458ad99](https://github.com/DataBiosphere/findable-ui/commit/458ad9915fe6e9231a3ecb2f00bde688a3305873))
39
+ * refactor list to a jsx element instead of an evaluated function ([#378](https://github.com/DataBiosphere/findable-ui/issues/378)) ([#379](https://github.com/DataBiosphere/findable-ui/issues/379)) ([4a13192](https://github.com/DataBiosphere/findable-ui/commit/4a131926d312a685eab828e125d375656ce56c52))
40
+ * remove deprecated components from index component tree ([#387](https://github.com/DataBiosphere/findable-ui/issues/387)) ([#388](https://github.com/DataBiosphere/findable-ui/issues/388)) ([9725293](https://github.com/DataBiosphere/findable-ui/commit/9725293f0320964d92141c0fe8030dffece5ae03))
41
+
3
42
  ## [24.0.0](https://github.com/DataBiosphere/findable-ui/compare/v23.0.0...v24.0.0) (2025-03-28)
4
43
 
5
44
 
@@ -96,6 +96,7 @@ export interface SelectCategoryValueView {
96
96
  */
97
97
  export interface SelectCategoryView {
98
98
  annotation?: DataDictionaryAnnotation;
99
+ enableChartView?: boolean;
99
100
  isDisabled?: boolean;
100
101
  key: CategoryKey;
101
102
  label: string;
@@ -1,3 +1,3 @@
1
- import { Grid2Props } from "@mui/material";
1
+ import { GridProps } from "@mui/material";
2
2
  export declare const ENTITIES_ROW_GAP = 8;
3
- export declare const GRID2_PROPS: Grid2Props;
3
+ export declare const GRID_PROPS: GridProps;
@@ -1,5 +1,5 @@
1
1
  export const ENTITIES_ROW_GAP = 8;
2
- export const GRID2_PROPS = {
2
+ export const GRID_PROPS = {
3
3
  container: true,
4
4
  direction: "column",
5
5
  flexWrap: "nowrap",
@@ -1,7 +1,7 @@
1
- import { Grid2 } from "@mui/material";
1
+ import { Grid } from "@mui/material";
2
2
  import React from "react";
3
3
  import { Entity } from "../Entity/entity";
4
- import { GRID2_PROPS } from "./constants";
4
+ import { GRID_PROPS } from "./constants";
5
5
  export const Entities = ({ classes, spacing }) => {
6
- return (React.createElement(Grid2, { ...GRID2_PROPS }, classes.map((classData) => (React.createElement(Entity, { key: classData.key, class: classData, spacing: spacing })))));
6
+ return (React.createElement(Grid, { ...GRID_PROPS }, classes.map((classData) => (React.createElement(Entity, { key: classData.key, class: classData, spacing: spacing })))));
7
7
  };
@@ -1,2 +1,2 @@
1
- import { Grid2Props } from "@mui/material";
2
- export declare const GRID2_PROPS: Grid2Props;
1
+ import { GridProps } from "@mui/material";
2
+ export declare const GRID_PROPS: GridProps;
@@ -1,4 +1,4 @@
1
- export const GRID2_PROPS = {
1
+ export const GRID_PROPS = {
2
2
  container: true,
3
3
  direction: "column",
4
4
  flexWrap: "nowrap",
@@ -1,15 +1,15 @@
1
- import { Grid2, Typography } from "@mui/material";
1
+ import { Grid, Typography } from "@mui/material";
2
2
  import React from "react";
3
3
  import { TYPOGRAPHY_PROPS } from "../../../../styles/common/mui/typography";
4
4
  import { AnchorLink } from "../../../common/AnchorLink/anchorLink";
5
5
  import { useTable } from "../Table/hook";
6
6
  import { Table } from "../Table/table";
7
- import { GRID2_PROPS } from "./constants";
7
+ import { GRID_PROPS } from "./constants";
8
8
  import { StyledTypography } from "./entity.styles";
9
9
  export const Entity = ({ class: classData, spacing, }) => {
10
10
  const table = useTable(classData.attributes);
11
- return (React.createElement(Grid2, { ...GRID2_PROPS, rowGap: 4 },
12
- React.createElement(Grid2, { ...GRID2_PROPS, rowGap: 1 },
11
+ return (React.createElement(Grid, { ...GRID_PROPS, rowGap: 4 },
12
+ React.createElement(Grid, { ...GRID_PROPS, rowGap: 1 },
13
13
  React.createElement(StyledTypography, { component: "h3", id: classData.key, variant: TYPOGRAPHY_PROPS.VARIANT.TEXT_HEADING_SMALL, ...spacing },
14
14
  classData.label,
15
15
  " ",
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { Table } from "@tanstack/react-table";
3
+ import { ROW_DIRECTION } from "../../../../../Table/common/entities";
4
+ export interface TableBodyProps<T> {
5
+ rowDirection: ROW_DIRECTION;
6
+ tableInstance: Table<T>;
7
+ }
8
+ export declare const TableHead: <T extends object>({ rowDirection, tableInstance, }: TableBodyProps<T>) => JSX.Element;
@@ -0,0 +1,36 @@
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.TableHead = void 0;
27
+ const material_1 = require("@mui/material");
28
+ const react_table_1 = require("@tanstack/react-table");
29
+ const react_1 = __importStar(require("react"));
30
+ const entities_1 = require("../../../../../Table/common/entities");
31
+ const TableHead = ({ rowDirection, tableInstance, }) => {
32
+ return (react_1.default.createElement(react_1.Fragment, null, rowDirection === entities_1.ROW_DIRECTION.DEFAULT &&
33
+ tableInstance.getHeaderGroups().map((headerGroup) => (react_1.default.createElement(material_1.TableHead, { key: headerGroup.id },
34
+ react_1.default.createElement(material_1.TableRow, null, headerGroup.headers.map((header) => (react_1.default.createElement(material_1.TableCell, { key: header.id }, (0, react_table_1.flexRender)(header.column.columnDef.header, header.getContext()))))))))));
35
+ };
36
+ exports.TableHead = TableHead;
@@ -2,12 +2,12 @@ import { ThemeProps } from "../../../../theme/theme";
2
2
  export declare const margin: ({ theme }: ThemeProps) => import("@emotion/react").SerializedStyles;
3
3
  export declare const FormControl: import("@emotion/styled").StyledComponent<import("@mui/material").FormControlOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
4
4
  ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
5
- }, "style" | "className" | "classes" | "color" | "children" | "margin" | "sx" | "variant" | "error" | "disabled" | "required" | "size" | "focused" | "fullWidth" | "hiddenLabel"> & {
5
+ }, "style" | "className" | "classes" | "color" | "children" | "margin" | "sx" | "variant" | "error" | "disabled" | "required" | "size" | "fullWidth" | "hiddenLabel" | "focused"> & {
6
6
  theme?: import("@emotion/react").Theme;
7
7
  }, {}, {}>;
8
8
  export declare const TableFormControl: import("@emotion/styled").StyledComponent<import("@mui/material").FormControlOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
9
9
  ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
10
- }, "style" | "className" | "classes" | "color" | "children" | "margin" | "sx" | "variant" | "error" | "disabled" | "required" | "size" | "focused" | "fullWidth" | "hiddenLabel"> & {
10
+ }, "style" | "className" | "classes" | "color" | "children" | "margin" | "sx" | "variant" | "error" | "disabled" | "required" | "size" | "fullWidth" | "hiddenLabel" | "focused"> & {
11
11
  theme?: import("@emotion/react").Theme;
12
12
  }, {}, {}>;
13
13
  export declare const GridPaper: import("@emotion/styled").StyledComponent<{
@@ -16,7 +16,7 @@ export const NIHAccountExpiryWarning = () => {
16
16
  React.createElement("span", null,
17
17
  "Please",
18
18
  " ",
19
- React.createElement(Link, { label: "renew your account", url: "https://support.terra.bio/hc/en-us/articles/360038086332-Linking-authorization-accessing-controlled-data-on-external-servers#heading-4" }),
19
+ React.createElement(Link, { label: "renew your account", url: "https://support.terra.bio/hc/en-us/articles/19124069598235" }),
20
20
  " ",
21
21
  "link.")))) : null;
22
22
  };
@@ -1,9 +1,9 @@
1
- import ArrowDropDownRoundedIcon from "@mui/icons-material/ArrowDropDownRounded";
1
+ import { ArrowDropDownRounded } from "@mui/icons-material";
2
2
  import React from "react";
3
3
  import { Tooltip } from "../../../DataDictionary/components/Tooltip/tooltip";
4
4
  import { FilterLabel as Label } from "./filterLabel.styles";
5
5
  export const FilterLabel = ({ annotation, count, disabled = false, isOpen, label, onClick, }) => {
6
6
  const filterLabel = count ? `${label}\xa0(${count})` : label; // When the count is present, a non-breaking space is used to prevent it from being on its own line
7
7
  return (React.createElement(Tooltip, { description: annotation?.description, title: annotation?.label },
8
- React.createElement(Label, { color: "inherit", disabled: disabled, endIcon: React.createElement(ArrowDropDownRoundedIcon, { fontSize: "small" }), fullWidth: true, isOpen: isOpen, onClick: onClick }, filterLabel)));
8
+ React.createElement(Label, { color: "inherit", disabled: disabled, endIcon: React.createElement(ArrowDropDownRounded, { fontSize: "small" }), fullWidth: true, isOpen: isOpen, onClick: onClick }, filterLabel)));
9
9
  };
@@ -3,7 +3,7 @@ interface Props {
3
3
  }
4
4
  export declare const FilterLabel: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
5
5
  ref?: ((instance: HTMLButtonElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLButtonElement> | null | undefined;
6
- }, "style" | "className" | "classes" | "tabIndex" | "color" | "children" | "sx" | "variant" | "disabled" | "href" | "action" | "size" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "startIcon"> & {
6
+ }, "style" | "className" | "classes" | "tabIndex" | "color" | "children" | "sx" | "variant" | "disabled" | "href" | "action" | "loading" | "size" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "fullWidth" | "disableElevation" | "disableFocusRipple" | "endIcon" | "loadingIndicator" | "loadingPosition" | "startIcon"> & {
7
7
  theme?: import("@emotion/react").Theme;
8
8
  } & Props, {}, {}>;
9
9
  export {};
@@ -1,4 +1,4 @@
1
- import CloseRoundedIcon from "@mui/icons-material/CloseRounded";
1
+ import { CloseRounded } from "@mui/icons-material";
2
2
  import { IconButton } from "@mui/material";
3
3
  import React, { Fragment, useContext } from "react";
4
4
  import { BREAKPOINT_FN_NAME, useBreakpointHelper, } from "../../../../../../hooks/useBreakpointHelper";
@@ -10,5 +10,5 @@ export const SearchCloseButton = () => {
10
10
  const showButton = open && (desktopSmDown || searchTerm);
11
11
  const onClickFn = desktopSmDown ? onCloseSearch : onClearSearch;
12
12
  return (React.createElement(Fragment, null, showButton && (React.createElement(IconButton, { onClick: onClickFn, size: "large" },
13
- React.createElement(CloseRoundedIcon, { fontSize: "small" })))));
13
+ React.createElement(CloseRounded, { fontSize: "small" })))));
14
14
  };
@@ -0,0 +1,2 @@
1
+ import { ChartViewProps } from "./types";
2
+ export declare const ChartView: ({ categoryFilters, loading, testId, }: ChartViewProps) => JSX.Element | null;
@@ -0,0 +1,17 @@
1
+ import { Typography } from "@mui/material";
2
+ import React, { Fragment } from "react";
3
+ import { TYPOGRAPHY_PROPS } from "../../../../../../styles/common/mui/typography";
4
+ import { Loading, LOADING_PANEL_STYLE } from "../../../../../Loading/loading";
5
+ import { StyledGrid, StyledGridPaperSection } from "./chartView.styles";
6
+ import { Chart } from "./components/Chart/chart";
7
+ import { useChartView } from "./hooks/UseChartView/useChartView";
8
+ export const ChartView = ({ categoryFilters, loading, testId, }) => {
9
+ const { chartViewRef, selectCategoryViews, width } = useChartView(categoryFilters);
10
+ if (selectCategoryViews.length === 0)
11
+ return null;
12
+ return (React.createElement(Fragment, null,
13
+ React.createElement(Loading, { appear: false, autoPosition: false, loading: loading, panelStyle: LOADING_PANEL_STYLE.INHERIT }),
14
+ React.createElement(StyledGrid, { "data-testid": testId, ref: chartViewRef }, selectCategoryViews.map(({ key, label, values }) => (React.createElement(StyledGridPaperSection, { key: key },
15
+ React.createElement(Typography, { variant: TYPOGRAPHY_PROPS.VARIANT.TEXT_HEADING_SMALL }, label),
16
+ React.createElement(Chart, { selectCategoryValueViews: values, width: width })))))));
17
+ };
@@ -0,0 +1,13 @@
1
+ export declare const StyledGrid: import("@emotion/styled").StyledComponent<import("@mui/material").GridBaseProps & {
2
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme>;
3
+ } & import("@mui/system").SystemProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
4
+ ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
5
+ }, ("fontSize" | "fontWeight" | "lineHeight" | "letterSpacing" | "textTransform" | "p" | "color" | "border" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderColor" | "borderRadius" | "display" | "displayPrint" | "overflow" | "textOverflow" | "visibility" | "whiteSpace" | "flexBasis" | "flexDirection" | "flexWrap" | "justifyContent" | "alignItems" | "alignContent" | "order" | "flex" | "flexGrow" | "flexShrink" | "alignSelf" | "justifyItems" | "justifySelf" | "gap" | "columnGap" | "rowGap" | "gridColumn" | "gridRow" | "gridAutoFlow" | "gridAutoColumns" | "gridAutoRows" | "gridTemplateColumns" | "gridTemplateRows" | "gridTemplateAreas" | "gridArea" | "bgcolor" | "zIndex" | "position" | "top" | "right" | "bottom" | "left" | "boxShadow" | "width" | "maxWidth" | "minWidth" | "height" | "maxHeight" | "minHeight" | "boxSizing" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "my" | "pt" | "pr" | "pb" | "pl" | "px" | "py" | "margin" | "marginTop" | "marginRight" | "marginBottom" | "marginLeft" | "marginX" | "marginY" | "marginInline" | "marginInlineStart" | "marginInlineEnd" | "marginBlock" | "marginBlockStart" | "marginBlockEnd" | "padding" | "paddingTop" | "paddingRight" | "paddingBottom" | "paddingLeft" | "paddingX" | "paddingY" | "paddingInline" | "paddingInlineStart" | "paddingInlineEnd" | "paddingBlock" | "paddingBlockStart" | "paddingBlockEnd" | "typography" | "fontFamily" | "fontStyle" | "textAlign") | "sx" | keyof import("@mui/material").GridBaseProps> & {
6
+ theme?: import("@emotion/react").Theme;
7
+ }, {}, {}>;
8
+ export declare const StyledGridPaperSection: import("@emotion/styled").StyledComponent<{
9
+ theme?: import("@emotion/react").Theme;
10
+ as?: React.ElementType;
11
+ } & import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
12
+ theme?: import("@emotion/react").Theme;
13
+ }, {}, {}>;
@@ -0,0 +1,12 @@
1
+ import styled from "@emotion/styled";
2
+ import { Grid } from "@mui/material";
3
+ import { GridPaperSection } from "../../../../../common/Section/section.styles";
4
+ export const StyledGrid = styled(Grid) `
5
+ display: grid;
6
+ gap: inherit;
7
+ `;
8
+ export const StyledGridPaperSection = styled(GridPaperSection) `
9
+ &:last-of-type {
10
+ border-radius: inherit;
11
+ }
12
+ `;
@@ -0,0 +1,9 @@
1
+ export declare const BAR_GAP = 40;
2
+ export declare const BAR_HEIGHT = 24;
3
+ export declare const DATA_FIELD: {
4
+ readonly COUNT: "count";
5
+ readonly LABEL: "label";
6
+ readonly SELECTED: "selected";
7
+ };
8
+ export declare const TEXT_PADDING = 8;
9
+ export declare const TICKS = 6;
@@ -0,0 +1,9 @@
1
+ export const BAR_GAP = 40;
2
+ export const BAR_HEIGHT = 24;
3
+ export const DATA_FIELD = {
4
+ COUNT: "count",
5
+ LABEL: "label",
6
+ SELECTED: "selected",
7
+ };
8
+ export const TEXT_PADDING = 8;
9
+ export const TICKS = 6;
@@ -0,0 +1,3 @@
1
+ import { PlotOptions } from "@observablehq/plot";
2
+ import { SelectCategoryValueView } from "../../../../../../../../../common/entities";
3
+ export declare function getPlotOptions(selectCategoryValueViews: SelectCategoryValueView[], width: number): PlotOptions;
@@ -0,0 +1,86 @@
1
+ import * as Plot from "@observablehq/plot";
2
+ import { PALETTE } from "../../../../../../../../../styles/common/mui/palette";
3
+ import { formatCountSize } from "../../../../../../../../../utils/formatCountSize";
4
+ import { DATA_FIELD, TEXT_PADDING } from "./constants";
5
+ import { getCategoryValueText, getCategoryValueTextFill, getColorRangeValue, getCountTextFill, getPlotHeight, getTicks, getXDomain, getYPaddingInner, getYPaddingOuter, isAnyValueSelected, renderText, } from "./utils";
6
+ export function getPlotOptions(selectCategoryValueViews, width) {
7
+ const isCategorySelected = isAnyValueSelected(selectCategoryValueViews);
8
+ return {
9
+ color: {
10
+ domain: [false, true], // false = unselected, true = selected.
11
+ legend: false,
12
+ range: [getColorRangeValue(isCategorySelected), PALETTE.PRIMARY_MAIN],
13
+ },
14
+ height: getPlotHeight(selectCategoryValueViews.length),
15
+ margin: 0,
16
+ marginBottom: 32,
17
+ marks: [
18
+ Plot.axisX({
19
+ className: "x-axis",
20
+ tickFormat: formatCountSize,
21
+ tickPadding: 8,
22
+ tickSize: 0,
23
+ ticks: getTicks(selectCategoryValueViews),
24
+ }),
25
+ Plot.gridX({
26
+ stroke: PALETTE.SMOKE_MAIN,
27
+ strokeOpacity: 1,
28
+ ticks: getTicks(selectCategoryValueViews),
29
+ }),
30
+ Plot.barX(selectCategoryValueViews, {
31
+ className: "x-bar",
32
+ fill: DATA_FIELD.SELECTED,
33
+ rx1: 0,
34
+ rx2: 4,
35
+ sort: { y: null },
36
+ x: DATA_FIELD.COUNT,
37
+ y: DATA_FIELD.LABEL,
38
+ }),
39
+ Plot.text(selectCategoryValueViews, {
40
+ className: "text-category-label",
41
+ dx: 16,
42
+ dy: -28,
43
+ fill: (d) => getCategoryValueTextFill(d, isCategorySelected),
44
+ lineWidth: width / 13, // "em" unit; font-size is 13px.
45
+ text: getCategoryValueText,
46
+ textAnchor: "start",
47
+ textOverflow: "ellipsis",
48
+ x: 0,
49
+ y: DATA_FIELD.LABEL,
50
+ }),
51
+ Plot.text(selectCategoryValueViews, {
52
+ className: "text-count",
53
+ dx: -TEXT_PADDING,
54
+ dy: -2,
55
+ fill: (d) => getCountTextFill(d, isCategorySelected),
56
+ fontWeight: 500,
57
+ lineHeight: 0.8125,
58
+ render: renderText,
59
+ text: DATA_FIELD.COUNT,
60
+ textAnchor: "end",
61
+ x: DATA_FIELD.COUNT,
62
+ y: DATA_FIELD.LABEL,
63
+ }),
64
+ ],
65
+ style: {
66
+ dominantBaseline: "middle",
67
+ font: "inherit",
68
+ overflow: "visible",
69
+ },
70
+ width,
71
+ x: {
72
+ domain: getXDomain(selectCategoryValueViews),
73
+ grid: false,
74
+ label: null,
75
+ line: false,
76
+ },
77
+ y: {
78
+ label: null,
79
+ line: false,
80
+ paddingInner: getYPaddingInner(),
81
+ paddingOuter: getYPaddingOuter(),
82
+ tickFormat: () => "",
83
+ tickSize: 0,
84
+ },
85
+ };
86
+ }
@@ -0,0 +1,105 @@
1
+ import { ChannelValues, Context, Dimensions, RenderFunction, ScaleFunctions } from "@observablehq/plot";
2
+ import { SelectCategoryValueView } from "../../../../../../../../../common/entities";
3
+ /**
4
+ * Returns the text for the category value point.
5
+ * @param d - Data point.
6
+ * @returns Formatted text string.
7
+ */
8
+ export declare function getCategoryValueText(d: SelectCategoryValueView): string;
9
+ /**
10
+ * Returns the fill color for the category value point.
11
+ * @param d - Data point.
12
+ * @param isCategorySelected - Flag indicating if any value is selected.
13
+ * @returns Fill color string.
14
+ */
15
+ export declare function getCategoryValueTextFill(d: SelectCategoryValueView, isCategorySelected: boolean): string;
16
+ /**
17
+ * Returns the color range value for "false" (unselected).
18
+ * @param isCategorySelected - Flag indicating if any value is selected.
19
+ * @returns Color range value.
20
+ */
21
+ export declare function getColorRangeValue(isCategorySelected: boolean): string;
22
+ /**
23
+ * Returns the fill color for the count point.
24
+ * @param d - Data point.
25
+ * @param isCategorySelected - Flag indicating if any value is selected.
26
+ * @returns Fill color string.
27
+ */
28
+ export declare function getCountTextFill(d: SelectCategoryValueView, isCategorySelected: boolean): string;
29
+ /**
30
+ * Calculates the total SVG height required to render a horizontal bar chart (barX).
31
+ * The computed height includes:
32
+ * - Padding space equivalent to one bar above the first and below the last bar,
33
+ * - Vertical gaps between bars,
34
+ * - A fixed bottom margin.
35
+ * @param numberOfBars - Number of bars to display.
36
+ * @returns Height.
37
+ */
38
+ export declare function getPlotHeight(numberOfBars: number): number;
39
+ /**
40
+ * Rounds up a number to the next "nice" stop value for axis scaling.
41
+ * This function returns an upper bound based on the input value's
42
+ * order of magnitude. It calculates axis limits or tick maximums
43
+ * for consistent and readable chart scales.
44
+ * The function applies standard magnitude-based steps:
45
+ * - Rounds up to 2.5×, 5×, 7.5×, or 10× the base magnitude
46
+ * - Ensures minimum stop of 10
47
+ * @param n - Number.
48
+ * @returns A rounded "nice" stop value suitable for axis ticks.
49
+ */
50
+ export declare function getStop(n: number): number;
51
+ /**
52
+ * Returns the ticks for the x-axis.
53
+ * @param data - Data.
54
+ * @returns Ticks.
55
+ */
56
+ export declare function getTicks(data: SelectCategoryValueView[]): number[];
57
+ /**
58
+ * Returns the `x` domain.
59
+ * @param data - Data.
60
+ * @returns Domain.
61
+ */
62
+ export declare function getXDomain(data: SelectCategoryValueView[]): [number, number];
63
+ /**
64
+ * Generates an evenly spaced numeric range between a start and stop value.
65
+ * The range includes a fixed number of steps (6), where each value is spaced
66
+ * by a step size derived from the adjusted stop value via `getStop`.
67
+ * Used for grid lines along the x-axis.
68
+ * @param start - Start value.
69
+ * @param stop - Stop value.
70
+ * @returns Range.
71
+ */
72
+ export declare function getXRange(start: number, stop: number): number[];
73
+ /**
74
+ * Calculates the inner padding ratio for a band scale's y-axis.
75
+ * This determines the proportional spacing between adjacent bars in a bar chart.
76
+ * @returns The inner padding value as a fraction (between 0 and 1).
77
+ */
78
+ export declare function getYPaddingInner(): number;
79
+ /**
80
+ * Calculates the outer padding ratio for a band scale's y-axis.
81
+ * This represents the proportional space above the first bar and below the last bar
82
+ * in a vertical layout. It ensures that the outer margins are visually balanced and
83
+ * match the bar height, so the chart breathes evenly at the top and bottom.
84
+ * @returns The outer padding value as a fraction (between 0 and 1).
85
+ */
86
+ export declare function getYPaddingOuter(): number;
87
+ /**
88
+ * Checks if any value in the data array is selected.
89
+ * @param data - Data.
90
+ * @returns True if any value is selected, false otherwise.
91
+ */
92
+ export declare function isAnyValueSelected(data: SelectCategoryValueView[]): boolean;
93
+ /**
94
+ * Renders text elements for count values, positioning them either inside or outside bars
95
+ * based on available space. If text doesn't fit inside a bar, it's repositioned outside
96
+ * with adjusted styling.
97
+ * @param index - The mark's (filtered and transformed) index.
98
+ * @param scales - The plot's scale functions.
99
+ * @param values - The mark's (possibly scaled and transformed) channel values.
100
+ * @param dimensions - The plot's dimensions.
101
+ * @param context - The plot's context.
102
+ * @param next - The next render function in the chain.
103
+ * @returns SVG element or null
104
+ */
105
+ export declare function renderText(index: number[], scales: ScaleFunctions, values: ChannelValues, dimensions: Dimensions, context: Context, next?: RenderFunction): SVGElement | null;