@plumile/ui 0.1.120 → 0.1.125

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 (335) hide show
  1. package/README.md +12 -0
  2. package/lib/esm/__tests__/reactDomTestUtils.js +48 -0
  3. package/lib/esm/__tests__/reactDomTestUtils.js.map +1 -0
  4. package/lib/esm/admin/organisms/admin_sidebar/AdminSidebar.js +1 -1
  5. package/lib/esm/admin/organisms/admin_sidebar/adminSidebar.css.js +3 -2
  6. package/lib/esm/admin/organisms/admin_topbar/adminTopbar.css.js +1 -1
  7. package/lib/esm/admin/theme/adminDensity.css.js.map +1 -1
  8. package/lib/esm/admin/theme/adminSurface.css.js.map +1 -1
  9. package/lib/esm/atomic/atoms/badge/badge.css.js +7 -7
  10. package/lib/esm/atomic/atoms/badge/badge.css.js.map +1 -1
  11. package/lib/esm/atomic/atoms/button/button.css.js +38 -38
  12. package/lib/esm/atomic/atoms/button/button.css.js.map +1 -1
  13. package/lib/esm/atomic/atoms/checkbox/checkbox.css.js +8 -8
  14. package/lib/esm/atomic/atoms/checkbox/checkbox.css.js.map +1 -1
  15. package/lib/esm/atomic/atoms/error_message/errorMessage.css.js +1 -1
  16. package/lib/esm/atomic/atoms/input/input.css.js +9 -9
  17. package/lib/esm/atomic/atoms/input/input.css.js.map +1 -1
  18. package/lib/esm/atomic/atoms/label/label.css.js +7 -7
  19. package/lib/esm/atomic/atoms/modal/Modal.js +1 -1
  20. package/lib/esm/atomic/atoms/modal/modal.css.js +1 -1
  21. package/lib/esm/atomic/atoms/modal/modal.css.js.map +1 -1
  22. package/lib/esm/atomic/atoms/overlay/overlay.css.js +1 -1
  23. package/lib/esm/atomic/atoms/textarea/textarea.css.js +8 -8
  24. package/lib/esm/atomic/atoms/textarea/textarea.css.js.map +1 -1
  25. package/lib/esm/atomic/molecules/breadcrumb_navigation/BreadcrumbMenuPopover.js +1 -1
  26. package/lib/esm/atomic/molecules/breadcrumb_navigation/breadcrumbNavigation.css.js +1 -1
  27. package/lib/esm/atomic/molecules/breadcrumb_navigation/breadcrumbNavigation.css.js.map +1 -1
  28. package/lib/esm/atomic/molecules/card/Card.css.js +1 -1
  29. package/lib/esm/atomic/molecules/checkbox_field/checkboxField.css.js +1 -1
  30. package/lib/esm/atomic/molecules/checkbox_field/checkboxField.css.js.map +1 -1
  31. package/lib/esm/atomic/molecules/dropdown/dropdown.css.js +1 -1
  32. package/lib/esm/atomic/molecules/empty-state/EmptyState.css.js +1 -1
  33. package/lib/esm/atomic/molecules/form/FormErrorBanner.css.js +1 -1
  34. package/lib/esm/atomic/molecules/form/formStyles.css.js +1 -1
  35. package/lib/esm/atomic/molecules/form_error/formError.css.js +1 -1
  36. package/lib/esm/atomic/molecules/form_field/formField.css.js +1 -1
  37. package/lib/esm/atomic/molecules/highlight/HighlightCode.css.js +1 -1
  38. package/lib/esm/atomic/molecules/highlight/highlightStyles.css.js +1 -1
  39. package/lib/esm/atomic/molecules/markdown/LazyMarkdownRenderer.css.js +1 -1
  40. package/lib/esm/atomic/molecules/markdown/components/MarkdownArticleContainer.css.js +1 -1
  41. package/lib/esm/atomic/molecules/markdown/components/MarkdownArticleContainer.css.js.map +1 -1
  42. package/lib/esm/atomic/molecules/markdown/components/MarkdownBlockquote.css.js +1 -1
  43. package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.js +1 -1
  44. package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.js.map +1 -1
  45. package/lib/esm/atomic/molecules/markdown/components/MarkdownDelete.css.js +1 -1
  46. package/lib/esm/atomic/molecules/markdown/components/MarkdownDelete.css.js.map +1 -1
  47. package/lib/esm/atomic/molecules/markdown/components/MarkdownEmphasis.css.js.map +1 -1
  48. package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteDefinition.css.js +1 -1
  49. package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteReference.css.js +1 -2
  50. package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteReference.css.js.map +1 -1
  51. package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnotesSection.css.js +1 -1
  52. package/lib/esm/atomic/molecules/markdown/components/MarkdownHeading.css.js +8 -7
  53. package/lib/esm/atomic/molecules/markdown/components/MarkdownHeading.css.js.map +1 -1
  54. package/lib/esm/atomic/molecules/markdown/components/MarkdownHtmlFallback.css.js +1 -1
  55. package/lib/esm/atomic/molecules/markdown/components/MarkdownImage.css.js +1 -1
  56. package/lib/esm/atomic/molecules/markdown/components/MarkdownInlineCode.css.js +1 -1
  57. package/lib/esm/atomic/molecules/markdown/components/MarkdownInlineCode.css.js.map +1 -1
  58. package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js +1 -1
  59. package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js.map +1 -1
  60. package/lib/esm/atomic/molecules/markdown/components/MarkdownList.css.js +1 -1
  61. package/lib/esm/atomic/molecules/markdown/components/MarkdownList.css.js.map +1 -1
  62. package/lib/esm/atomic/molecules/markdown/components/MarkdownListItem.css.js +1 -1
  63. package/lib/esm/atomic/molecules/markdown/components/MarkdownListItem.css.js.map +1 -1
  64. package/lib/esm/atomic/molecules/markdown/components/MarkdownMark.css.js +1 -1
  65. package/lib/esm/atomic/molecules/markdown/components/MarkdownMark.css.js.map +1 -1
  66. package/lib/esm/atomic/molecules/markdown/components/MarkdownMermaidBlock.css.js +1 -1
  67. package/lib/esm/atomic/molecules/markdown/components/MarkdownParagraph.css.js +1 -1
  68. package/lib/esm/atomic/molecules/markdown/components/MarkdownParagraph.css.js.map +1 -1
  69. package/lib/esm/atomic/molecules/markdown/components/MarkdownStrong.css.js +1 -1
  70. package/lib/esm/atomic/molecules/markdown/components/MarkdownStrong.css.js.map +1 -1
  71. package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js +1 -1
  72. package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js.map +1 -1
  73. package/lib/esm/atomic/molecules/markdown/components/MarkdownSuperscript.css.js +1 -1
  74. package/lib/esm/atomic/molecules/markdown/components/MarkdownSuperscript.css.js.map +1 -1
  75. package/lib/esm/atomic/molecules/markdown/components/MarkdownTable.css.js +1 -1
  76. package/lib/esm/atomic/molecules/markdown/components/MarkdownTable.css.js.map +1 -1
  77. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCaption.css.js +1 -1
  78. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js +1 -1
  79. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js.map +1 -1
  80. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableHead.css.js +1 -1
  81. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableHeaderCell.css.js +1 -1
  82. package/lib/esm/atomic/molecules/markdown/components/MarkdownTaskListItem.css.js +1 -1
  83. package/lib/esm/atomic/molecules/markdown/components/MarkdownTaskListItem.css.js.map +1 -1
  84. package/lib/esm/atomic/molecules/markdown/components/MarkdownText.css.js +1 -1
  85. package/lib/esm/atomic/molecules/markdown/components/MarkdownText.css.js.map +1 -1
  86. package/lib/esm/atomic/molecules/markdown/components/MarkdownThematicBreak.css.js +1 -1
  87. package/lib/esm/atomic/molecules/tabs/tabs.css.js +4 -4
  88. package/lib/esm/atomic/molecules/toast/toast.css.js +2 -2
  89. package/lib/esm/atomic/molecules/toast/toast.css.js.map +1 -1
  90. package/lib/esm/atomic/organisms/login_form/loginForm.css.js +1 -1
  91. package/lib/esm/atomic/organisms/sidebar/SidebarContainer.js +2 -2
  92. package/lib/esm/atomic/organisms/sidebar/navigationSidebar.css.js +13 -13
  93. package/lib/esm/atomic/organisms/sidebar/sidebar.css.js +2 -2
  94. package/lib/esm/atomic/templates/auth_layout/authLayout.css.js +1 -1
  95. package/lib/esm/atomic/templates/detail-page/DetailPage.js +4 -4
  96. package/lib/esm/atomic/templates/detail-page/detailPage.css.js +1 -1
  97. package/lib/esm/atomic/templates/page-container/PageContainer.js +3 -3
  98. package/lib/esm/atomic/templates/page-container/pageContainer.css.js +1 -1
  99. package/lib/esm/backoffice/atoms/backoffice_id_badge/backofficeIdBadge.css.js +1 -1
  100. package/lib/esm/backoffice/atoms/copyable_text/copyableText.css.js +1 -1
  101. package/lib/esm/backoffice/atoms/environment_badge/environmentBadge.css.js +1 -1
  102. package/lib/esm/backoffice/atoms/shortcut_hint/shortcutHint.css.js +1 -1
  103. package/lib/esm/backoffice/atoms/skeleton/skeleton.css.js +5 -5
  104. package/lib/esm/backoffice/atoms/skeleton/skeleton.css.js.map +1 -1
  105. package/lib/esm/backoffice/atoms/spinner/spinner.css.js +1 -1
  106. package/lib/esm/backoffice/atoms/spinner/spinner.css.js.map +1 -1
  107. package/lib/esm/backoffice/atoms/status_badge/statusBadge.css.js +1 -1
  108. package/lib/esm/backoffice/atoms/tag/tag.css.js +7 -7
  109. package/lib/esm/backoffice/atoms/tag/tag.css.js.map +1 -1
  110. package/lib/esm/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.js +1 -1
  111. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.js +1 -1
  112. package/lib/esm/backoffice/molecules/backoffice_filter_drawer/BackofficeFilterDrawer.js +7 -7
  113. package/lib/esm/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.js +1 -1
  114. package/lib/esm/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.js.map +1 -1
  115. package/lib/esm/backoffice/molecules/backoffice_filter_field/backofficeFilterField.css.js +1 -1
  116. package/lib/esm/backoffice/molecules/backoffice_filters_bar/backofficeFiltersBar.css.js +1 -1
  117. package/lib/esm/backoffice/molecules/backoffice_form_section/BackofficeFormSection.js +3 -3
  118. package/lib/esm/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.js +1 -1
  119. package/lib/esm/backoffice/molecules/backoffice_infinite_list_status/BackofficeInfiniteListStatus.js +2 -2
  120. package/lib/esm/backoffice/molecules/backoffice_infinite_list_status/backofficeInfiniteListStatus.css.js +1 -1
  121. package/lib/esm/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.css.js +1 -1
  122. package/lib/esm/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.js +1 -1
  123. package/lib/esm/backoffice/molecules/backoffice_json_viewer/backofficeJsonViewer.css.js +1 -1
  124. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.js +1 -1
  125. package/lib/esm/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.js +1 -1
  126. package/lib/esm/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.js.map +1 -1
  127. package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.js +4 -4
  128. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.js +1 -1
  129. package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.js +4 -4
  130. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js +1 -1
  131. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js.map +1 -1
  132. package/lib/esm/backoffice/molecules/backoffice_table_skeleton/backofficeTableSkeleton.css.js +4 -4
  133. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.js +8 -8
  134. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js +1 -1
  135. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js.map +1 -1
  136. package/lib/esm/backoffice/molecules/backoffice_tabs/backofficeTabs.css.js +8 -8
  137. package/lib/esm/backoffice/molecules/backoffice_tabs/backofficeTabs.css.js.map +1 -1
  138. package/lib/esm/backoffice/molecules/bulk_actions_bar/bulkActionsBar.css.js +1 -1
  139. package/lib/esm/backoffice/molecules/confirm_dialog/confirmDialog.css.js +1 -1
  140. package/lib/esm/backoffice/molecules/filter_chip_row/filterChipRow.css.js +1 -1
  141. package/lib/esm/backoffice/molecules/filter_chip_row/filterChipRow.css.js.map +1 -1
  142. package/lib/esm/backoffice/molecules/global_search_input/globalSearchInput.css.js +1 -1
  143. package/lib/esm/backoffice/molecules/global_search_input/globalSearchInput.css.js.map +1 -1
  144. package/lib/esm/backoffice/molecules/inline_banner/inlineBanner.css.js +6 -6
  145. package/lib/esm/backoffice/molecules/inline_banner/inlineBanner.css.js.map +1 -1
  146. package/lib/esm/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.js +1 -1
  147. package/lib/esm/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.js.map +1 -1
  148. package/lib/esm/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.js +1 -1
  149. package/lib/esm/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.js.map +1 -1
  150. package/lib/esm/backoffice/molecules/sidebar_nav_section/SidebarNavSection.js +5 -5
  151. package/lib/esm/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.js +1 -1
  152. package/lib/esm/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.js.map +1 -1
  153. package/lib/esm/backoffice/molecules/sidebar_profile_menu/BackofficeSidebarProfileMenu.js +4 -4
  154. package/lib/esm/backoffice/molecules/sidebar_profile_menu/BackofficeSidebarProfileMenu.js.map +1 -1
  155. package/lib/esm/backoffice/molecules/sidebar_profile_menu/sidebarProfileMenu.css.js +5 -5
  156. package/lib/esm/backoffice/molecules/table_toolbar/tableToolbar.css.js +1 -1
  157. package/lib/esm/backoffice/organisms/audit_timeline/auditTimeline.css.js +1 -1
  158. package/lib/esm/backoffice/organisms/backoffice_data_table/backofficeDataTable.css.js +1 -1
  159. package/lib/esm/backoffice/organisms/backoffice_virtualized_connection_table/backofficeVirtualizedConnectionTable.css.js +1 -1
  160. package/lib/esm/backoffice/organisms/entity_header/entityHeader.css.js +1 -1
  161. package/lib/esm/backoffice/templates/detail_page_template/DetailPageTemplate.js +2 -2
  162. package/lib/esm/backoffice/templates/detail_page_template/detailPageTemplate.css.js +2 -2
  163. package/lib/esm/backoffice/templates/detail_page_template/detailPageTemplate.css.js.map +1 -1
  164. package/lib/esm/backoffice/templates/list_page_template/ListPageTemplate.js +1 -1
  165. package/lib/esm/backoffice/templates/list_page_template/ListPageTemplate.js.map +1 -1
  166. package/lib/esm/backoffice/templates/list_page_template/listPageTemplate.css.js +10 -10
  167. package/lib/esm/backoffice/templates/list_page_template/listPageTemplate.css.js.map +1 -1
  168. package/lib/esm/components/agent/AgentMarkdownCard.css.js +1 -1
  169. package/lib/esm/components/charts/MetricHistoryChart.js +17 -39
  170. package/lib/esm/components/charts/MetricHistoryChart.js.map +1 -1
  171. package/lib/esm/components/charts/TimeSeriesLineChart.js +20 -32
  172. package/lib/esm/components/charts/TimeSeriesLineChart.js.map +1 -1
  173. package/lib/esm/components/charts/metricHistoryChart.css.js +1 -1
  174. package/lib/esm/components/charts/timeSeriesLineChart.css.js +1 -1
  175. package/lib/esm/components/dashboard/activity_card/ActivityCard.css.js +1 -1
  176. package/lib/esm/components/dashboard/activity_card/ActivityCard.js +2 -2
  177. package/lib/esm/components/dashboard/activity_feed/ActivityFeed.css.js +1 -1
  178. package/lib/esm/components/dashboard/dashboard_grid/DashboardGrid.css.js +21 -21
  179. package/lib/esm/components/dashboard/dashboard_grid/DashboardGrid.css.js.map +1 -1
  180. package/lib/esm/components/dashboard/metadata_strip/MetadataStrip.css.js +1 -1
  181. package/lib/esm/components/dashboard/metric_card/MetricCard.css.js +1 -1
  182. package/lib/esm/components/dashboard/metric_card/MetricCard.js +2 -2
  183. package/lib/esm/components/dashboard/metric_tile_group/MetricTileGroup.css.js +1 -1
  184. package/lib/esm/components/dashboard/page_hero/PageHero.css.js +1 -1
  185. package/lib/esm/components/dashboard/page_hero/PageHero.js +3 -3
  186. package/lib/esm/components/dashboard/section_nav/SectionNav.css.js +1 -1
  187. package/lib/esm/components/dashboard/section_nav/SectionNav.css.js.map +1 -1
  188. package/lib/esm/components/dashboard/segmented_nav/SegmentedNav.css.js +1 -1
  189. package/lib/esm/components/dashboard/segmented_nav/SegmentedNav.css.js.map +1 -1
  190. package/lib/esm/components/dashboard/selectable_card/SelectableCard.css.js +1 -1
  191. package/lib/esm/components/dashboard/selectable_card/SelectableCard.css.js.map +1 -1
  192. package/lib/esm/components/dashboard/selectable_card/SelectableCard.js +2 -2
  193. package/lib/esm/components/dashboard/status_summary_panel/StatusSummaryPanel.css.js +1 -1
  194. package/lib/esm/components/dashboard/status_summary_panel/StatusSummaryPanel.js +1 -1
  195. package/lib/esm/components/dashboard/timeline_event_row/TimelineEventRow.css.js +1 -1
  196. package/lib/esm/components/dashboard/timeline_event_row/TimelineEventRow.js +2 -2
  197. package/lib/esm/components/data-table/DataTable.css.js +28 -28
  198. package/lib/esm/components/data-table/DataTable.css.js.map +1 -1
  199. package/lib/esm/components/data-table/DataTable.js +33 -35
  200. package/lib/esm/components/data-table/DataTable.js.map +1 -1
  201. package/lib/esm/components/data-table/ResponsiveRecordList.css.js +6 -6
  202. package/lib/esm/components/data-table/TableCell.css.js +2 -2
  203. package/lib/esm/components/data-table/VirtualizedConnectionTable.css.js +1 -1
  204. package/lib/esm/components/data-table/VirtualizedConnectionTable.js +49 -61
  205. package/lib/esm/components/data-table/VirtualizedConnectionTable.js.map +1 -1
  206. package/lib/esm/components/feedback/OperationFeedback.css.js +1 -1
  207. package/lib/esm/components/feedback/OperationFeedback.js +1 -1
  208. package/lib/esm/components/infinite/InfiniteScrollTrigger.js +1 -1
  209. package/lib/esm/components/infinite/infiniteScrollTrigger.css.js +1 -1
  210. package/lib/esm/components/layout/ActionPanel.css.js +1 -1
  211. package/lib/esm/components/layout/ActionPanel.js +3 -3
  212. package/lib/esm/components/layout/ActionPanel.js.map +1 -1
  213. package/lib/esm/components/layout/AppHeader.css.js +1 -1
  214. package/lib/esm/components/layout/AppHeader.js +4 -4
  215. package/lib/esm/components/layout/ContentLayout.css.js +1 -1
  216. package/lib/esm/components/layout/ContentLayout.js +2 -2
  217. package/lib/esm/components/layout/DetailSummaryHeader.css.js +1 -1
  218. package/lib/esm/components/layout/DetailSummaryHeader.js +3 -3
  219. package/lib/esm/components/layout/PageShell.css.js +4 -4
  220. package/lib/esm/components/layout/PageShell.js +5 -5
  221. package/lib/esm/components/layout/PageShell.js.map +1 -1
  222. package/lib/esm/components/layout/SettingsLayout.css.js +1 -1
  223. package/lib/esm/components/layout/SplitViewLayout.css.js +1 -1
  224. package/lib/esm/components/layout/TabsContentLayout.css.js +1 -1
  225. package/lib/esm/components/layout/ToolbarRow.css.js +1 -1
  226. package/lib/esm/components/media/imagePreviewModal.css.js +5 -5
  227. package/lib/esm/components/responsive/ResponsiveCollectionRenderer.css.js +1 -1
  228. package/lib/esm/components/responsive/ResponsiveCollectionRenderer.css.js.map +1 -1
  229. package/lib/esm/components/routing/routeFallback.css.js +1 -1
  230. package/lib/esm/components/routing/routeFallback.css.js.map +1 -1
  231. package/lib/esm/components/routing/routePendingBar.css.js +1 -1
  232. package/lib/esm/components/routing/routePendingBar.css.js.map +1 -1
  233. package/lib/esm/components/select/SimpleSelect.css.js +14 -14
  234. package/lib/esm/components/select/SimpleSelect.css.js.map +1 -1
  235. package/lib/esm/components/subscriptions/RefetchNeededBanner.css.js +1 -1
  236. package/lib/esm/components/tile/InfoTile.css.js +1 -1
  237. package/lib/esm/components/tile/InfoTile.css.js.map +1 -1
  238. package/lib/esm/components/tile/InfoTile.js +3 -3
  239. package/lib/esm/index.js +257 -255
  240. package/lib/esm/internal/charts/metricHistoryChartHelpers.js +24 -0
  241. package/lib/esm/internal/charts/metricHistoryChartHelpers.js.map +1 -0
  242. package/lib/esm/internal/charts/timeSeriesLineChartHelpers.js +18 -0
  243. package/lib/esm/internal/charts/timeSeriesLineChartHelpers.js.map +1 -0
  244. package/lib/esm/internal/data-table/layout.js +6 -0
  245. package/lib/esm/internal/data-table/layout.js.map +1 -0
  246. package/lib/esm/internal/data-table/virtualization.js +12 -0
  247. package/lib/esm/internal/data-table/virtualization.js.map +1 -0
  248. package/lib/esm/node_modules/@vitest/pretty-format/dist/index.js +614 -0
  249. package/lib/esm/node_modules/@vitest/pretty-format/dist/index.js.map +1 -0
  250. package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js +909 -0
  251. package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js.map +1 -0
  252. package/lib/esm/node_modules/@vitest/runner/dist/index.js +1 -0
  253. package/lib/esm/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js +50 -0
  254. package/lib/esm/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js.map +1 -0
  255. package/lib/esm/node_modules/@vitest/utils/dist/display.js +424 -0
  256. package/lib/esm/node_modules/@vitest/utils/dist/display.js.map +1 -0
  257. package/lib/esm/node_modules/@vitest/utils/dist/helpers.js +43 -0
  258. package/lib/esm/node_modules/@vitest/utils/dist/helpers.js.map +1 -0
  259. package/lib/esm/node_modules/@vitest/utils/dist/source-map.js +68 -0
  260. package/lib/esm/node_modules/@vitest/utils/dist/source-map.js.map +1 -0
  261. package/lib/esm/node_modules/@vitest/utils/dist/timers.js +19 -0
  262. package/lib/esm/node_modules/@vitest/utils/dist/timers.js.map +1 -0
  263. package/lib/esm/node_modules/tinyrainbow/dist/index.js +85 -0
  264. package/lib/esm/node_modules/tinyrainbow/dist/index.js.map +1 -0
  265. package/lib/esm/shared/backofficeTableDensity.css.js.map +1 -1
  266. package/lib/esm/style.css +1 -1
  267. package/lib/esm/theme/accessibility.css.js +1 -1
  268. package/lib/esm/theme/accessibility.css.js.map +1 -1
  269. package/lib/esm/theme/index.js +12 -10
  270. package/lib/esm/theme/sprinkles.css.js +73323 -51658
  271. package/lib/esm/theme/sprinkles.css.js.map +1 -1
  272. package/lib/esm/theme/styleRecipes.css.js +19 -0
  273. package/lib/esm/theme/styleRecipes.css.js.map +1 -0
  274. package/lib/esm/theme/theme-dark.css.js.map +1 -1
  275. package/lib/esm/theme/theme-light.css.js +23 -2
  276. package/lib/esm/theme/theme-light.css.js.map +1 -1
  277. package/lib/esm/theme/theme.css.js +23 -2
  278. package/lib/esm/theme/themeContract.js +23 -2
  279. package/lib/esm/theme/themeContract.js.map +1 -1
  280. package/lib/types/atomic/atoms/button/button.css.d.ts.map +1 -1
  281. package/lib/types/atomic/atoms/checkbox/checkbox.css.d.ts.map +1 -1
  282. package/lib/types/atomic/atoms/input/input.css.d.ts.map +1 -1
  283. package/lib/types/atomic/atoms/modal/modal.css.d.ts.map +1 -1
  284. package/lib/types/atomic/atoms/textarea/textarea.css.d.ts.map +1 -1
  285. package/lib/types/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.d.ts.map +1 -1
  286. package/lib/types/atomic/molecules/toast/toast.css.d.ts.map +1 -1
  287. package/lib/types/backoffice/atoms/tag/tag.css.d.ts.map +1 -1
  288. package/lib/types/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.d.ts.map +1 -1
  289. package/lib/types/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.d.ts.map +1 -1
  290. package/lib/types/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.d.ts.map +1 -1
  291. package/lib/types/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.d.ts.map +1 -1
  292. package/lib/types/backoffice/molecules/backoffice_tabs/backofficeTabs.css.d.ts.map +1 -1
  293. package/lib/types/backoffice/molecules/filter_chip_row/filterChipRow.css.d.ts.map +1 -1
  294. package/lib/types/backoffice/molecules/global_search_input/globalSearchInput.css.d.ts.map +1 -1
  295. package/lib/types/backoffice/molecules/inline_banner/inlineBanner.css.d.ts.map +1 -1
  296. package/lib/types/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.d.ts.map +1 -1
  297. package/lib/types/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.d.ts.map +1 -1
  298. package/lib/types/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.d.ts.map +1 -1
  299. package/lib/types/backoffice/templates/detail_page_template/detailPageTemplate.css.d.ts.map +1 -1
  300. package/lib/types/backoffice/templates/list_page_template/listPageTemplate.css.d.ts.map +1 -1
  301. package/lib/types/components/charts/MetricHistoryChart.d.ts +0 -8
  302. package/lib/types/components/charts/MetricHistoryChart.d.ts.map +1 -1
  303. package/lib/types/components/charts/TimeSeriesLineChart.d.ts +0 -4
  304. package/lib/types/components/charts/TimeSeriesLineChart.d.ts.map +1 -1
  305. package/lib/types/components/dashboard/dashboard_grid/DashboardGrid.css.d.ts.map +1 -1
  306. package/lib/types/components/dashboard/section_nav/SectionNav.css.d.ts.map +1 -1
  307. package/lib/types/components/dashboard/segmented_nav/SegmentedNav.css.d.ts.map +1 -1
  308. package/lib/types/components/dashboard/selectable_card/SelectableCard.css.d.ts.map +1 -1
  309. package/lib/types/components/data-table/DataTable.d.ts +1 -5
  310. package/lib/types/components/data-table/DataTable.d.ts.map +1 -1
  311. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts +1 -34
  312. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts.map +1 -1
  313. package/lib/types/components/select/SimpleSelect.css.d.ts.map +1 -1
  314. package/lib/types/components/tile/InfoTile.css.d.ts.map +1 -1
  315. package/lib/types/internal/charts/metricHistoryChartHelpers.d.ts +4 -0
  316. package/lib/types/internal/charts/metricHistoryChartHelpers.d.ts.map +1 -0
  317. package/lib/types/internal/charts/timeSeriesLineChartHelpers.d.ts +9 -0
  318. package/lib/types/internal/charts/timeSeriesLineChartHelpers.d.ts.map +1 -0
  319. package/lib/types/internal/data-table/layout.d.ts +4 -0
  320. package/lib/types/internal/data-table/layout.d.ts.map +1 -0
  321. package/lib/types/internal/data-table/virtualization.d.ts +29 -0
  322. package/lib/types/internal/data-table/virtualization.d.ts.map +1 -0
  323. package/lib/types/shared/backofficeTableDensity.css.d.ts.map +1 -1
  324. package/lib/types/theme/index.d.ts +2 -0
  325. package/lib/types/theme/index.d.ts.map +1 -1
  326. package/lib/types/theme/sprinkles.css.d.ts +684 -60
  327. package/lib/types/theme/sprinkles.css.d.ts.map +1 -1
  328. package/lib/types/theme/styleRecipes.css.d.ts +29 -0
  329. package/lib/types/theme/styleRecipes.css.d.ts.map +1 -0
  330. package/lib/types/theme/theme-dark.css.d.ts.map +1 -1
  331. package/lib/types/theme/theme-light.css.d.ts +21 -0
  332. package/lib/types/theme/theme-light.css.d.ts.map +1 -1
  333. package/lib/types/theme/themeContract.d.ts +21 -0
  334. package/lib/types/theme/themeContract.d.ts.map +1 -1
  335. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"MetricHistoryChart.js","names":[],"sources":["../../../../src/components/charts/MetricHistoryChart.tsx"],"sourcesContent":["import { ResponsiveLine, type SliceTooltipProps } from '@nivo/line';\nimport type { JSX } from 'react';\n\nimport * as styles from './metricHistoryChart.css.js';\nimport { vars } from '../../theme/themeContract.js';\n\nexport type MetricHistoryChartPoint = {\n x: string;\n y: number;\n};\n\nexport type MetricHistoryChartSerie = {\n id: string;\n label: string;\n color: string;\n unit?: string;\n data: readonly MetricHistoryChartPoint[];\n};\n\ntype SlicePointPayload = {\n seriesId: string;\n label: string;\n value: number;\n color: string;\n unit?: string;\n};\n\nexport type MetricHistoryChartProps = {\n series: readonly MetricHistoryChartSerie[];\n ariaLabel: string;\n formatValue?: (value: number, unit?: string) => string;\n formatTimestamp?: (value: string) => string;\n emptyMessage?: string;\n};\n\n/**\n * Formats metric values with an optional unit suffix.\n */\nfunction formatDefaultValue(value: number, unit?: string): string {\n const formatted = new Intl.NumberFormat(undefined, {\n maximumFractionDigits: 2,\n }).format(value);\n\n if (unit == null || unit.length === 0) {\n return formatted;\n }\n\n return `${formatted} ${unit}`;\n}\n\n/**\n * Formats an ISO timestamp for tooltip display.\n */\nfunction formatDefaultTimestamp(value: string): string {\n const parsed = new Date(value);\n if (Number.isNaN(parsed.getTime())) {\n return value;\n }\n\n return parsed.toLocaleString(undefined, {\n month: 'short',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n });\n}\n\n/**\n * Formats chart axis ticks as localized times.\n */\nfunction formatAxisTimestamp(value: Date): string {\n return value.toLocaleTimeString(undefined, {\n hour: '2-digit',\n minute: '2-digit',\n });\n}\n\nexport const MetricHistoryChart = ({\n ariaLabel,\n emptyMessage = 'No data',\n formatTimestamp = formatDefaultTimestamp,\n formatValue = formatDefaultValue,\n series,\n}: MetricHistoryChartProps): JSX.Element => {\n const visibleSeries = series.filter((serie) => {\n return serie.data.length > 0;\n });\n\n if (visibleSeries.length === 0) {\n return <div className={styles.emptyState}>{emptyMessage}</div>;\n }\n\n const metadataById = Object.fromEntries(\n visibleSeries.map((serie) => {\n return [\n serie.id,\n {\n color: serie.color,\n label: serie.label,\n unit: serie.unit,\n },\n ];\n }),\n );\n\n const data = visibleSeries.map((serie) => {\n return {\n id: serie.id,\n data: serie.data.map((point) => {\n return {\n x: new Date(point.x),\n y: point.y,\n };\n }),\n };\n });\n\n const legends = [\n {\n anchor: 'bottom' as const,\n direction: 'row' as const,\n translateY: 56,\n itemWidth: 110,\n itemHeight: 16,\n itemsSpacing: 8,\n symbolSize: 10,\n symbolShape: 'circle' as const,\n itemTextColor: vars.colors.textSecondary,\n data: visibleSeries.map((serie) => {\n return {\n id: serie.id,\n label: serie.label,\n color: serie.color,\n };\n }),\n },\n ];\n\n const sliceTooltip = ({\n slice,\n }: SliceTooltipProps<(typeof data)[number]>): JSX.Element => {\n const firstPoint = slice.points[0];\n let timestampValue = String(slice.id);\n if (firstPoint?.data.x instanceof Date) {\n timestampValue = firstPoint.data.x.toISOString();\n }\n\n const points = [...slice.points]\n .map((point): SlicePointPayload | null => {\n let value = Number(point.data.y);\n if (typeof point.data.y === 'number') {\n value = point.data.y;\n }\n\n if (Number.isNaN(value)) {\n return null;\n }\n\n const seriesId = String(point.seriesId);\n const metadata = metadataById[seriesId];\n\n return {\n seriesId,\n label: metadata?.label ?? seriesId,\n value,\n color: point.seriesColor,\n unit: metadata?.unit,\n };\n })\n .filter((point): point is SlicePointPayload => {\n return point != null;\n });\n\n return (\n <div className={styles.tooltip}>\n <p className={styles.tooltipDate}>{formatTimestamp(timestampValue)}</p>\n {points.map((point) => {\n return (\n <div\n key={`${point.seriesId}-${timestampValue}`}\n className={styles.tooltipRow}\n >\n <span className={styles.tooltipRowLabel}>\n <span\n className={styles.tooltipSwatch}\n style={{ backgroundColor: point.color }}\n aria-hidden\n />\n <span>{point.label}</span>\n </span>\n <strong>{formatValue(point.value, point.unit)}</strong>\n </div>\n );\n })}\n </div>\n );\n };\n\n return (\n <div className={styles.chartContainer}>\n <ResponsiveLine\n data={data}\n margin={{ top: 14, right: 16, bottom: 74, left: 52 }}\n colors={(serie) => {\n return metadataById[String(serie.id)]?.color ?? vars.colors.primary;\n }}\n xScale={{\n type: 'time',\n format: 'native',\n precision: 'minute',\n useUTC: false,\n }}\n xFormat=\"time:%Y-%m-%dT%H:%M:%S.%LZ\"\n yScale={{ type: 'linear', min: 'auto', max: 'auto' }}\n curve=\"monotoneX\"\n lineWidth={2.5}\n pointSize={4}\n pointBorderWidth={2}\n pointBorderColor={{ from: 'seriesColor', modifiers: [['darker', 0.2]] }}\n enableArea\n areaOpacity={0.1}\n enableGridX={false}\n enableGridY\n axisTop={null}\n axisRight={null}\n axisBottom={{\n format: (value) => {\n if (!(value instanceof Date)) {\n return '';\n }\n\n return formatAxisTimestamp(value);\n },\n tickSize: 0,\n tickPadding: 10,\n tickValues: 'every 15 minutes',\n }}\n axisLeft={{\n tickSize: 0,\n tickPadding: 8,\n tickValues: 5,\n format: (value) => {\n if (typeof value !== 'number') {\n return '';\n }\n\n return new Intl.NumberFormat(undefined, {\n notation: 'compact',\n maximumFractionDigits: 1,\n }).format(value);\n },\n }}\n enablePoints\n useMesh\n legends={legends}\n theme={{\n grid: {\n line: {\n stroke: vars.colors.borderLight,\n },\n },\n axis: {\n ticks: {\n text: {\n fill: vars.colors.textMuted,\n fontSize: 12,\n },\n },\n },\n crosshair: {\n line: {\n stroke: vars.colors.border,\n strokeWidth: 1,\n strokeDasharray: '4 4',\n },\n },\n tooltip: {\n container: {\n background: 'transparent',\n boxShadow: 'none',\n padding: 0,\n },\n },\n }}\n sliceTooltip={sliceTooltip}\n enableSlices=\"x\"\n role=\"img\"\n ariaLabel={ariaLabel}\n />\n </div>\n );\n};\n\nexport default MetricHistoryChart;\n\nexport const __test = {\n formatDefaultValue,\n formatDefaultTimestamp,\n formatAxisTimestamp,\n} as const;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MetricHistoryChart.js","names":[],"sources":["../../../../src/components/charts/MetricHistoryChart.tsx"],"sourcesContent":["import { ResponsiveLine, type SliceTooltipProps } from '@nivo/line';\nimport type { JSX } from 'react';\n\nimport * as styles from './metricHistoryChart.css.js';\nimport {\n formatAxisTimestamp,\n formatDefaultTimestamp,\n formatDefaultValue,\n} from '../../internal/charts/metricHistoryChartHelpers.js';\nimport { vars } from '../../theme/themeContract.js';\n\nexport type MetricHistoryChartPoint = {\n x: string;\n y: number;\n};\n\nexport type MetricHistoryChartSerie = {\n id: string;\n label: string;\n color: string;\n unit?: string;\n data: readonly MetricHistoryChartPoint[];\n};\n\ntype SlicePointPayload = {\n seriesId: string;\n label: string;\n value: number;\n color: string;\n unit?: string;\n};\n\nexport type MetricHistoryChartProps = {\n series: readonly MetricHistoryChartSerie[];\n ariaLabel: string;\n formatValue?: (value: number, unit?: string) => string;\n formatTimestamp?: (value: string) => string;\n emptyMessage?: string;\n};\n\nexport const MetricHistoryChart = ({\n ariaLabel,\n emptyMessage = 'No data',\n formatTimestamp = formatDefaultTimestamp,\n formatValue = formatDefaultValue,\n series,\n}: MetricHistoryChartProps): JSX.Element => {\n const visibleSeries = series.filter((serie) => {\n return serie.data.length > 0;\n });\n\n if (visibleSeries.length === 0) {\n return <div className={styles.emptyState}>{emptyMessage}</div>;\n }\n\n const metadataById = Object.fromEntries(\n visibleSeries.map((serie) => {\n return [\n serie.id,\n {\n color: serie.color,\n label: serie.label,\n unit: serie.unit,\n },\n ];\n }),\n );\n\n const data = visibleSeries.map((serie) => {\n return {\n id: serie.id,\n data: serie.data.map((point) => {\n return {\n x: new Date(point.x),\n y: point.y,\n };\n }),\n };\n });\n\n const legends = [\n {\n anchor: 'bottom' as const,\n direction: 'row' as const,\n translateY: 56,\n itemWidth: 110,\n itemHeight: 16,\n itemsSpacing: 8,\n symbolSize: 10,\n symbolShape: 'circle' as const,\n itemTextColor: vars.colors.textSecondary,\n data: visibleSeries.map((serie) => {\n return {\n id: serie.id,\n label: serie.label,\n color: serie.color,\n };\n }),\n },\n ];\n\n const sliceTooltip = ({\n slice,\n }: SliceTooltipProps<(typeof data)[number]>): JSX.Element => {\n const firstPoint = slice.points[0];\n let timestampValue = String(slice.id);\n if (firstPoint?.data.x instanceof Date) {\n timestampValue = firstPoint.data.x.toISOString();\n }\n\n const points = [...slice.points]\n .map((point): SlicePointPayload | null => {\n let value = Number(point.data.y);\n if (typeof point.data.y === 'number') {\n value = point.data.y;\n }\n\n if (Number.isNaN(value)) {\n return null;\n }\n\n const seriesId = String(point.seriesId);\n const metadata = metadataById[seriesId];\n\n return {\n seriesId,\n label: metadata?.label ?? seriesId,\n value,\n color: point.seriesColor,\n unit: metadata?.unit,\n };\n })\n .filter((point): point is SlicePointPayload => {\n return point != null;\n });\n\n return (\n <div className={styles.tooltip}>\n <p className={styles.tooltipDate}>{formatTimestamp(timestampValue)}</p>\n {points.map((point) => {\n return (\n <div\n key={`${point.seriesId}-${timestampValue}`}\n className={styles.tooltipRow}\n >\n <span className={styles.tooltipRowLabel}>\n <span\n className={styles.tooltipSwatch}\n style={{ backgroundColor: point.color }}\n aria-hidden\n />\n <span>{point.label}</span>\n </span>\n <strong>{formatValue(point.value, point.unit)}</strong>\n </div>\n );\n })}\n </div>\n );\n };\n\n return (\n <div className={styles.chartContainer}>\n <ResponsiveLine\n data={data}\n margin={{ top: 14, right: 16, bottom: 74, left: 52 }}\n colors={(serie) => {\n return metadataById[String(serie.id)]?.color ?? vars.colors.primary;\n }}\n xScale={{\n type: 'time',\n format: 'native',\n precision: 'minute',\n useUTC: false,\n }}\n xFormat=\"time:%Y-%m-%dT%H:%M:%S.%LZ\"\n yScale={{ type: 'linear', min: 'auto', max: 'auto' }}\n curve=\"monotoneX\"\n lineWidth={2.5}\n pointSize={4}\n pointBorderWidth={2}\n pointBorderColor={{ from: 'seriesColor', modifiers: [['darker', 0.2]] }}\n enableArea\n areaOpacity={0.1}\n enableGridX={false}\n enableGridY\n axisTop={null}\n axisRight={null}\n axisBottom={{\n format: (value) => {\n if (!(value instanceof Date)) {\n return '';\n }\n\n return formatAxisTimestamp(value);\n },\n tickSize: 0,\n tickPadding: 10,\n tickValues: 'every 15 minutes',\n }}\n axisLeft={{\n tickSize: 0,\n tickPadding: 8,\n tickValues: 5,\n format: (value) => {\n if (typeof value !== 'number') {\n return '';\n }\n\n return new Intl.NumberFormat(undefined, {\n notation: 'compact',\n maximumFractionDigits: 1,\n }).format(value);\n },\n }}\n enablePoints\n useMesh\n legends={legends}\n theme={{\n grid: {\n line: {\n stroke: vars.colors.borderLight,\n },\n },\n axis: {\n ticks: {\n text: {\n fill: vars.colors.textMuted,\n fontSize: 12,\n },\n },\n },\n crosshair: {\n line: {\n stroke: vars.colors.border,\n strokeWidth: 1,\n strokeDasharray: '4 4',\n },\n },\n tooltip: {\n container: {\n background: 'transparent',\n boxShadow: 'none',\n padding: 0,\n },\n },\n }}\n sliceTooltip={sliceTooltip}\n enableSlices=\"x\"\n role=\"img\"\n ariaLabel={ariaLabel}\n />\n </div>\n );\n};\n\nexport default MetricHistoryChart;\n"],"mappings":"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"}
@@ -1,23 +1,11 @@
1
1
  import { vars as e } from "../../theme/themeContract.js";
2
2
  import { chartContainer as t, tooltip as n, tooltipDate as r, tooltipRow as i, tooltipRowLabel as a, tooltipSwatch as o } from "./timeSeriesLineChart.css.js";
3
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
4
- import { ResponsiveLine as l } from "@nivo/line";
3
+ import { formatDayTick as s, getVisibleDayTicks as c } from "../../internal/charts/timeSeriesLineChartHelpers.js";
4
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
5
+ import { ResponsiveLine as d } from "@nivo/line";
5
6
  //#region src/components/charts/TimeSeriesLineChart.tsx
6
- var u = 6;
7
- function d(e) {
8
- let t = e[0];
9
- if (t == null || t.data.length <= u) return t == null ? [] : t.data.map((e) => e.x);
10
- let n = Math.ceil(t.data.length / u), r = t.data.filter((e, t) => t % n === 0).map((e) => e.x), i = t.data.at(-1);
11
- return i != null && r.at(-1) !== i.x && r.push(i.x), r;
12
- }
13
- function f(e) {
14
- return (/* @__PURE__ */ new Date(`${e}T00:00:00Z`)).toLocaleDateString(void 0, {
15
- month: "short",
16
- day: "2-digit"
17
- });
18
- }
19
- var p = (u) => {
20
- let { ariaLabel: p, categoryColorById: m, categoryLabel: h, categoryOrder: g, formatValue: _, series: v } = u, y = d(v), b = g, x = (e) => b.includes(e), S = [{
7
+ var f = (f) => {
8
+ let { ariaLabel: p, categoryColorById: m, categoryLabel: h, categoryOrder: g, formatValue: _, series: v } = f, y = c(v), b = g, x = (e) => b.includes(e), S = [{
21
9
  anchor: "bottom",
22
10
  direction: "row",
23
11
  translateY: 56,
@@ -33,9 +21,9 @@ var p = (u) => {
33
21
  color: m[e]
34
22
  }))
35
23
  }];
36
- return /* @__PURE__ */ s("div", {
24
+ return /* @__PURE__ */ l("div", {
37
25
  className: t,
38
- children: /* @__PURE__ */ s(l, {
26
+ children: /* @__PURE__ */ l(d, {
39
27
  data: v,
40
28
  margin: {
41
29
  top: 14,
@@ -66,7 +54,7 @@ var p = (u) => {
66
54
  axisRight: null,
67
55
  axisBottom: {
68
56
  tickValues: y,
69
- format: (e) => f(String(e)),
57
+ format: (e) => s(String(e)),
70
58
  tickSize: 0,
71
59
  tickPadding: 10
72
60
  },
@@ -100,31 +88,31 @@ var p = (u) => {
100
88
  } }
101
89
  },
102
90
  sliceTooltip: ({ slice: e }) => {
103
- let t = String(e.id), l = g[0] ?? null, u = [...e.points].map((e) => {
91
+ let t = String(e.id), c = g[0] ?? null, d = [...e.points].map((e) => {
104
92
  let t = 0;
105
93
  typeof e.data.y == "number" && (t = e.data.y);
106
- let n = l;
94
+ let n = c;
107
95
  return typeof e.seriesId == "string" && x(e.seriesId) && (n = e.seriesId), n == null ? null : {
108
96
  seriesId: n,
109
97
  data: { y: t },
110
98
  color: e.seriesColor
111
99
  };
112
100
  }).filter((e) => e != null).sort((e, t) => g.indexOf(e.seriesId) - g.indexOf(t.seriesId));
113
- return /* @__PURE__ */ c("div", {
101
+ return /* @__PURE__ */ u("div", {
114
102
  className: n,
115
- children: [/* @__PURE__ */ s("p", {
103
+ children: [/* @__PURE__ */ l("p", {
116
104
  className: r,
117
- children: f(t)
118
- }), u.map((e) => /* @__PURE__ */ c("div", {
105
+ children: s(t)
106
+ }), d.map((e) => /* @__PURE__ */ u("div", {
119
107
  className: i,
120
- children: [/* @__PURE__ */ c("span", {
108
+ children: [/* @__PURE__ */ u("span", {
121
109
  className: a,
122
- children: [/* @__PURE__ */ s("span", {
110
+ children: [/* @__PURE__ */ l("span", {
123
111
  className: o,
124
112
  style: { backgroundColor: e.color },
125
113
  "aria-hidden": !0
126
- }), /* @__PURE__ */ s("span", { children: h(e.seriesId) })]
127
- }), /* @__PURE__ */ s("strong", { children: _(e.data.y) })]
114
+ }), /* @__PURE__ */ l("span", { children: h(e.seriesId) })]
115
+ }), /* @__PURE__ */ l("strong", { children: _(e.data.y) })]
128
116
  }, `${t}-${e.seriesId}`))]
129
117
  });
130
118
  },
@@ -133,8 +121,8 @@ var p = (u) => {
133
121
  ariaLabel: p
134
122
  })
135
123
  });
136
- }, m = { formatDayTick: f };
124
+ };
137
125
  //#endregion
138
- export { p as TimeSeriesLineChart, p as default, m as __test };
126
+ export { f as TimeSeriesLineChart, f as default };
139
127
 
140
128
  //# sourceMappingURL=TimeSeriesLineChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimeSeriesLineChart.js","names":[],"sources":["../../../../src/components/charts/TimeSeriesLineChart.tsx"],"sourcesContent":["import { ResponsiveLine, type SliceTooltipProps } from '@nivo/line';\nimport type { JSX } from 'react';\n\nimport * as styles from './timeSeriesLineChart.css.js';\nimport { vars } from '../../theme/themeContract.js';\n\nexport type TimeSeriesLineChartPoint = {\n x: string;\n y: number;\n};\n\nexport type TimeSeriesLineChartSerie<Category extends string> = {\n id: Category;\n data: readonly TimeSeriesLineChartPoint[];\n};\n\ntype SlicePointPayload<Category extends string> = {\n seriesId: Category;\n data: {\n y: number;\n };\n color: string;\n};\n\nexport type TimeSeriesLineChartProps<Category extends string> = {\n series: readonly TimeSeriesLineChartSerie<Category>[];\n categoryOrder: readonly Category[];\n categoryColorById: Readonly<Record<Category, string>>;\n categoryLabel: (category: Category) => string;\n formatValue: (value: number) => string;\n ariaLabel: string;\n};\n\nconst MAX_X_TICKS = 6;\n\n/**\n * Limits the number of visible day ticks while always keeping the last point.\n */\nfunction getVisibleDayTicks<Category extends string>(\n series: readonly TimeSeriesLineChartSerie<Category>[],\n): readonly string[] {\n const firstSerie = series[0];\n if (firstSerie == null || firstSerie.data.length <= MAX_X_TICKS) {\n if (firstSerie == null) {\n return [];\n }\n\n return firstSerie.data.map((point) => {\n return point.x;\n });\n }\n\n const step = Math.ceil(firstSerie.data.length / MAX_X_TICKS);\n const visibleTicks = firstSerie.data\n .filter((_, index) => {\n return index % step === 0;\n })\n .map((point) => {\n return point.x;\n });\n\n const lastPoint = firstSerie.data.at(-1);\n if (lastPoint != null && visibleTicks.at(-1) !== lastPoint.x) {\n visibleTicks.push(lastPoint.x);\n }\n\n return visibleTicks;\n}\n\n/**\n * Formats a `YYYY-MM-DD` key into a short month/day label for the x-axis.\n */\nfunction formatDayTick(dayKey: string): string {\n const parsed = new Date(`${dayKey}T00:00:00Z`);\n return parsed.toLocaleDateString(undefined, {\n month: 'short',\n day: '2-digit',\n });\n}\n\nexport const TimeSeriesLineChart = <Category extends string>(\n props: TimeSeriesLineChartProps<Category>,\n): JSX.Element => {\n const {\n ariaLabel,\n categoryColorById,\n categoryLabel,\n categoryOrder,\n formatValue,\n series,\n } = props;\n\n const visibleTicks = getVisibleDayTicks(series);\n const categoryOrderString = categoryOrder as readonly string[];\n const isCategory = (value: string): value is Category => {\n return categoryOrderString.includes(value);\n };\n\n const legends = [\n {\n anchor: 'bottom' as const,\n direction: 'row' as const,\n translateY: 56,\n itemWidth: 90,\n itemHeight: 16,\n itemsSpacing: 8,\n symbolSize: 10,\n symbolShape: 'circle' as const,\n itemTextColor: vars.colors.textSecondary,\n data: categoryOrder.map((category) => {\n return {\n id: category,\n label: categoryLabel(category),\n color: categoryColorById[category],\n };\n }),\n },\n ];\n\n const colorById = (serie: { id: string | number }): string => {\n if (typeof serie.id !== 'string' || !isCategory(serie.id)) {\n return vars.colors.primary;\n }\n\n return categoryColorById[serie.id];\n };\n\n const sliceTooltip = ({\n slice,\n }: SliceTooltipProps<TimeSeriesLineChartSerie<Category>>): JSX.Element => {\n const dayKey = String(slice.id);\n const fallbackCategory = categoryOrder[0] ?? null;\n const points = [...slice.points]\n .map((point): SlicePointPayload<Category> | null => {\n let credits = 0;\n if (typeof point.data.y === 'number') {\n credits = point.data.y;\n }\n\n let seriesId = fallbackCategory;\n if (typeof point.seriesId === 'string' && isCategory(point.seriesId)) {\n seriesId = point.seriesId;\n }\n if (seriesId == null) {\n return null;\n }\n\n return {\n seriesId,\n data: { y: credits },\n color: point.seriesColor,\n };\n })\n .filter((point): point is SlicePointPayload<Category> => {\n return point != null;\n })\n .sort((left, right) => {\n const leftIndex = categoryOrder.indexOf(left.seriesId);\n const rightIndex = categoryOrder.indexOf(right.seriesId);\n\n return leftIndex - rightIndex;\n });\n\n return (\n <div className={styles.tooltip}>\n <p className={styles.tooltipDate}>{formatDayTick(dayKey)}</p>\n {points.map((point) => {\n return (\n <div\n key={`${dayKey}-${point.seriesId}`}\n className={styles.tooltipRow}\n >\n <span className={styles.tooltipRowLabel}>\n <span\n className={styles.tooltipSwatch}\n style={{ backgroundColor: point.color }}\n aria-hidden\n />\n <span>{categoryLabel(point.seriesId)}</span>\n </span>\n <strong>{formatValue(point.data.y)}</strong>\n </div>\n );\n })}\n </div>\n );\n };\n\n return (\n <div className={styles.chartContainer}>\n <ResponsiveLine\n data={series}\n margin={{ top: 14, right: 16, bottom: 74, left: 52 }}\n colors={colorById}\n xScale={{ type: 'point' }}\n yScale={{ type: 'linear', min: 0, max: 'auto' }}\n curve=\"monotoneX\"\n lineWidth={2.5}\n pointSize={4}\n pointBorderWidth={2}\n pointBorderColor={{ from: 'seriesColor', modifiers: [['darker', 0.2]] }}\n enableArea\n areaOpacity={0.1}\n enableGridX={false}\n enableGridY\n axisTop={null}\n axisRight={null}\n axisBottom={{\n tickValues: visibleTicks,\n format: (value) => {\n return formatDayTick(String(value));\n },\n tickSize: 0,\n tickPadding: 10,\n }}\n axisLeft={{\n tickSize: 0,\n tickPadding: 8,\n tickValues: 5,\n format: (value) => {\n if (typeof value !== 'number') {\n return '';\n }\n\n return new Intl.NumberFormat('en-US', {\n notation: 'compact',\n maximumFractionDigits: 1,\n }).format(value);\n },\n }}\n enablePoints\n useMesh\n legends={legends}\n theme={{\n grid: {\n line: {\n stroke: vars.colors.borderLight,\n },\n },\n axis: {\n ticks: {\n text: {\n fill: vars.colors.textMuted,\n fontSize: 12,\n },\n },\n },\n crosshair: {\n line: {\n stroke: vars.colors.border,\n strokeWidth: 1,\n strokeDasharray: '4 4',\n },\n },\n tooltip: {\n container: {\n background: 'transparent',\n boxShadow: 'none',\n padding: 0,\n },\n },\n }}\n sliceTooltip={sliceTooltip}\n enableSlices=\"x\"\n role=\"img\"\n ariaLabel={ariaLabel}\n />\n </div>\n );\n};\n\nexport default TimeSeriesLineChart;\n\nexport const __test = {\n formatDayTick,\n} as const;\n"],"mappings":"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"}
1
+ {"version":3,"file":"TimeSeriesLineChart.js","names":[],"sources":["../../../../src/components/charts/TimeSeriesLineChart.tsx"],"sourcesContent":["import { ResponsiveLine, type SliceTooltipProps } from '@nivo/line';\nimport type { JSX } from 'react';\n\nimport * as styles from './timeSeriesLineChart.css.js';\nimport {\n formatDayTick,\n getVisibleDayTicks,\n} from '../../internal/charts/timeSeriesLineChartHelpers.js';\nimport { vars } from '../../theme/themeContract.js';\n\nexport type TimeSeriesLineChartPoint = {\n x: string;\n y: number;\n};\n\nexport type TimeSeriesLineChartSerie<Category extends string> = {\n id: Category;\n data: readonly TimeSeriesLineChartPoint[];\n};\n\ntype SlicePointPayload<Category extends string> = {\n seriesId: Category;\n data: {\n y: number;\n };\n color: string;\n};\n\nexport type TimeSeriesLineChartProps<Category extends string> = {\n series: readonly TimeSeriesLineChartSerie<Category>[];\n categoryOrder: readonly Category[];\n categoryColorById: Readonly<Record<Category, string>>;\n categoryLabel: (category: Category) => string;\n formatValue: (value: number) => string;\n ariaLabel: string;\n};\n\nexport const TimeSeriesLineChart = <Category extends string>(\n props: TimeSeriesLineChartProps<Category>,\n): JSX.Element => {\n const {\n ariaLabel,\n categoryColorById,\n categoryLabel,\n categoryOrder,\n formatValue,\n series,\n } = props;\n\n const visibleTicks = getVisibleDayTicks(series);\n const categoryOrderString = categoryOrder as readonly string[];\n const isCategory = (value: string): value is Category => {\n return categoryOrderString.includes(value);\n };\n\n const legends = [\n {\n anchor: 'bottom' as const,\n direction: 'row' as const,\n translateY: 56,\n itemWidth: 90,\n itemHeight: 16,\n itemsSpacing: 8,\n symbolSize: 10,\n symbolShape: 'circle' as const,\n itemTextColor: vars.colors.textSecondary,\n data: categoryOrder.map((category) => {\n return {\n id: category,\n label: categoryLabel(category),\n color: categoryColorById[category],\n };\n }),\n },\n ];\n\n const colorById = (serie: { id: string | number }): string => {\n if (typeof serie.id !== 'string' || !isCategory(serie.id)) {\n return vars.colors.primary;\n }\n\n return categoryColorById[serie.id];\n };\n\n const sliceTooltip = ({\n slice,\n }: SliceTooltipProps<TimeSeriesLineChartSerie<Category>>): JSX.Element => {\n const dayKey = String(slice.id);\n const fallbackCategory = categoryOrder[0] ?? null;\n const points = [...slice.points]\n .map((point): SlicePointPayload<Category> | null => {\n let credits = 0;\n if (typeof point.data.y === 'number') {\n credits = point.data.y;\n }\n\n let seriesId = fallbackCategory;\n if (typeof point.seriesId === 'string' && isCategory(point.seriesId)) {\n seriesId = point.seriesId;\n }\n if (seriesId == null) {\n return null;\n }\n\n return {\n seriesId,\n data: { y: credits },\n color: point.seriesColor,\n };\n })\n .filter((point): point is SlicePointPayload<Category> => {\n return point != null;\n })\n .sort((left, right) => {\n const leftIndex = categoryOrder.indexOf(left.seriesId);\n const rightIndex = categoryOrder.indexOf(right.seriesId);\n\n return leftIndex - rightIndex;\n });\n\n return (\n <div className={styles.tooltip}>\n <p className={styles.tooltipDate}>{formatDayTick(dayKey)}</p>\n {points.map((point) => {\n return (\n <div\n key={`${dayKey}-${point.seriesId}`}\n className={styles.tooltipRow}\n >\n <span className={styles.tooltipRowLabel}>\n <span\n className={styles.tooltipSwatch}\n style={{ backgroundColor: point.color }}\n aria-hidden\n />\n <span>{categoryLabel(point.seriesId)}</span>\n </span>\n <strong>{formatValue(point.data.y)}</strong>\n </div>\n );\n })}\n </div>\n );\n };\n\n return (\n <div className={styles.chartContainer}>\n <ResponsiveLine\n data={series}\n margin={{ top: 14, right: 16, bottom: 74, left: 52 }}\n colors={colorById}\n xScale={{ type: 'point' }}\n yScale={{ type: 'linear', min: 0, max: 'auto' }}\n curve=\"monotoneX\"\n lineWidth={2.5}\n pointSize={4}\n pointBorderWidth={2}\n pointBorderColor={{ from: 'seriesColor', modifiers: [['darker', 0.2]] }}\n enableArea\n areaOpacity={0.1}\n enableGridX={false}\n enableGridY\n axisTop={null}\n axisRight={null}\n axisBottom={{\n tickValues: visibleTicks,\n format: (value) => {\n return formatDayTick(String(value));\n },\n tickSize: 0,\n tickPadding: 10,\n }}\n axisLeft={{\n tickSize: 0,\n tickPadding: 8,\n tickValues: 5,\n format: (value) => {\n if (typeof value !== 'number') {\n return '';\n }\n\n return new Intl.NumberFormat('en-US', {\n notation: 'compact',\n maximumFractionDigits: 1,\n }).format(value);\n },\n }}\n enablePoints\n useMesh\n legends={legends}\n theme={{\n grid: {\n line: {\n stroke: vars.colors.borderLight,\n },\n },\n axis: {\n ticks: {\n text: {\n fill: vars.colors.textMuted,\n fontSize: 12,\n },\n },\n },\n crosshair: {\n line: {\n stroke: vars.colors.border,\n strokeWidth: 1,\n strokeDasharray: '4 4',\n },\n },\n tooltip: {\n container: {\n background: 'transparent',\n boxShadow: 'none',\n padding: 0,\n },\n },\n }}\n sliceTooltip={sliceTooltip}\n enableSlices=\"x\"\n role=\"img\"\n ariaLabel={ariaLabel}\n />\n </div>\n );\n};\n\nexport default TimeSeriesLineChart;\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/charts/metricHistoryChart.css.ts
4
- var e = "kweehz0 txvbqbnvy txvbqboj7 txvbqbp6g txvbqbly7 txvbqbu7g txvbqbcfy txvbqbcfr txvbqb1dg txvbqb1qg txvbqbx7 txvbqb1rp txvbqbv41", t = "kweehz1 txvbqbnwg txvbqbojp txvbqbp6y txvbqblyp txvbqbu7g txvbqbjoy txvbqb9ip txvbqbcp txvbqbdoy txvbqbt6y txvbqbva3 txvbqb8y txvbqb1dg txvbqb1qg txvbqbx7 txvbqb1rp txvbqbv41", n = "kweehz2 txvbqbohp txvbqbp4y txvbqbp6g txvbqbly7 txvbqb9ip txvbqbai7 txvbqbb9p txvbqb1dg txvbqb1qg txvbqbwg txvbqb1rg txvbqbv47 txvbqb8q7", r = "kweehz3 txvbqb8p txvbqbva3 txvbqbamg txvbqbfcp", i = "kweehz4 txvbqb9ip txvbqbcp txvbqbdpp txvbqbaog txvbqb8y txvbqbv9z", a = "kweehz5 txvbqb9jg txvbqbcp txvbqbb9p", o = "kweehz6 txvbqbtwp txvbqbc5p txvbqb1t7";
4
+ var e = "kweehz0 txvbqbyo5 txvbqbzlq txvbqb10jb txvbqbvve txvbqb17w0 txvbqbi0p txvbqbi0e txvbqb1w1 txvbqb2et txvbqb18k txvbqb2gm txvbqb196b", t = "kweehz1 txvbqbyov txvbqbzmg txvbqb10k1 txvbqbvw4 txvbqb17w0 txvbqbsky txvbqbdr8 txvbqbey txvbqbjtp txvbqb16fa txvbqb19cd txvbqb9j txvbqb1w1 txvbqb2et txvbqb18k txvbqb2gm txvbqb196b", n = "kweehz2 txvbqbzjk txvbqb10h5 txvbqb10jb txvbqbvve txvbqbdr8 txvbqbf6i txvbqbga8 txvbqb1w1 txvbqb2et txvbqb17h txvbqb2g9 txvbqb196h txvbqbck9", r = "kweehz3 txvbqb96 txvbqb19cd txvbqbfcn txvbqbm9g", i = "kweehz4 txvbqbdr8 txvbqbey txvbqbjus txvbqbffj txvbqb9j txvbqb19c9", a = "kweehz5 txvbqbdsb txvbqbey txvbqbga8", o = "kweehz6 txvbqb17gh txvbqbhlw txvbqb2is";
5
5
  //#endregion
6
6
  export { e as chartContainer, t as emptyState, n as tooltip, r as tooltipDate, i as tooltipRow, a as tooltipRowLabel, o as tooltipSwatch };
7
7
 
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/charts/timeSeriesLineChart.css.ts
4
- var e = "_15xy5md0 txvbqbnvy txvbqboj7 txvbqbp6g txvbqbly7 txvbqbu7g txvbqbcfy txvbqbcfi txvbqb1dg txvbqb1qg txvbqbx7 txvbqb1rp txvbqbv41", t = "_15xy5md1 txvbqbohp txvbqbp4y txvbqbp6g txvbqbly7 txvbqb9ip txvbqbai7 txvbqbb9p txvbqb1dg txvbqb1qg txvbqbwg txvbqb1rg txvbqbv47 txvbqb8q7", n = "_15xy5md2 txvbqb8p txvbqbva3 txvbqbamg txvbqbfcp", r = "_15xy5md3 txvbqb9ip txvbqbcp txvbqbdpp txvbqbaog txvbqb8y txvbqbv9z", i = "_15xy5md4 txvbqb9jg txvbqbcp txvbqbb9p", a = "_15xy5md5 txvbqbtwp txvbqbc5p txvbqb1t7";
4
+ var e = "_15xy5md0 txvbqbyo5 txvbqbzlq txvbqb10jb txvbqbvve txvbqb17w0 txvbqbi0p txvbqbi01 txvbqb1w1 txvbqb2et txvbqb18k txvbqb2gm txvbqb196b", t = "_15xy5md1 txvbqbzjk txvbqb10h5 txvbqb10jb txvbqbvve txvbqbdr8 txvbqbf6i txvbqbga8 txvbqb1w1 txvbqb2et txvbqb17h txvbqb2g9 txvbqb196h txvbqbck9", n = "_15xy5md2 txvbqb96 txvbqb19cd txvbqbfcn txvbqbm9g", r = "_15xy5md3 txvbqbdr8 txvbqbey txvbqbjus txvbqbffj txvbqb9j txvbqb19c9", i = "_15xy5md4 txvbqbdsb txvbqbey txvbqbga8", a = "_15xy5md5 txvbqb17gh txvbqbhlw txvbqb2is";
5
5
  //#endregion
6
6
  export { e as chartContainer, t as tooltip, n as tooltipDate, r as tooltipRow, i as tooltipRowLabel, a as tooltipSwatch };
7
7
 
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/activity_card/ActivityCard.css.ts
4
- var e = "_1d32hgo0 txvbqb9ip txvbqbai7 txvbqbao7", t = "_1d32hgo1 txvbqb9ip txvbqbdpp txvbqbcp txvbqbao7", n = "_1d32hgo2 txvbqb8y txvbqbamp txvbqbv9z", r = "_1d32hgo3 txvbqb8p txvbqbva1", i = "_1d32hgo4 txvbqb8y txvbqbva1";
4
+ var e = "_1d32hgo0 txvbqbdr8 txvbqbf6i txvbqbff6", t = "_1d32hgo1 txvbqbdr8 txvbqbjus txvbqbey txvbqbff6", n = "_1d32hgo2 txvbqb9j txvbqbfd0 txvbqb19c9", r = "_1d32hgo3 txvbqb96 txvbqb19cb", i = "_1d32hgo4 txvbqb9j txvbqb19cb";
5
5
  //#endregion
6
6
  export { e as root, i as summary, r as timestamp, n as title, t as top };
7
7
 
@@ -22,11 +22,11 @@ var c = ({ className: c, details: l, status: u, statusTone: d, summary: f, times
22
22
  }), h]
23
23
  }),
24
24
  p != null && /* @__PURE__ */ o("span", {
25
- className: "_1d32hgo3 txvbqb8p txvbqbva1",
25
+ className: "_1d32hgo3 txvbqb96 txvbqb19cb",
26
26
  children: /* @__PURE__ */ o(e, { value: p })
27
27
  }),
28
28
  f != null && /* @__PURE__ */ o("div", {
29
- className: "_1d32hgo4 txvbqb8y txvbqbva1",
29
+ className: "_1d32hgo4 txvbqb9j txvbqb19cb",
30
30
  children: f
31
31
  }),
32
32
  l
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/activity_feed/ActivityFeed.css.ts
4
- var e = "_1rlmg5z0 txvbqb9ip txvbqbai7 txvbqbao7";
4
+ var e = "_1rlmg5z0 txvbqbdr8 txvbqbf6i txvbqbff6";
5
5
  //#endregion
6
6
  export { e as root };
7
7
 
@@ -2,33 +2,33 @@
2
2
  /* empty css */
3
3
  import { createRuntimeFn as e } from "@vanilla-extract/recipes/createRuntimeFn";
4
4
  //#region src/components/dashboard/dashboard_grid/DashboardGrid.css.ts
5
- var t = "_15366911 _15366910 txvbqb9iy txvbqbaop txvbqbu7g txvbqbjh7", n = {
6
- 1: "_15366912 txvbqbbtg txvbqbbto",
7
- 2: "_15366913 txvbqbbtg txvbqbbtx",
8
- 3: "_15366914 txvbqbbtg txvbqbbu6",
9
- 4: "_15366915 txvbqbbtg txvbqbbuf",
10
- 12: "_15366917 _15366916 txvbqbbtg txvbqbbwf",
11
- uneven: "_15366918 txvbqbbtg txvbqbbyo"
12
- }, r = "_15366919 txvbqb9ip txvbqbai7 txvbqbaop txvbqbjh7", i = e({
13
- defaultClassName: "_1536691n _1536691a",
5
+ var t = "_15366910 txvbqbdrl txvbqbffw txvbqb17w0 txvbqbs9r", n = {
6
+ 1: "_15366911 txvbqbh2r txvbqbh33",
7
+ 2: "_15366912 txvbqbh2r txvbqbh3g",
8
+ 3: "_15366913 txvbqbh2r txvbqbh3t",
9
+ 4: "_15366914 txvbqbh2r txvbqbh46",
10
+ 12: "_15366916 _15366915 txvbqbh2r txvbqbh72",
11
+ uneven: "_15366917 txvbqbh2r txvbqbhbr"
12
+ }, r = "_15366918 txvbqbdr8 txvbqbf6i txvbqbffw txvbqbs9r", i = e({
13
+ defaultClassName: "_1536691m _15366919 txvbqbt9i",
14
14
  variantClassNames: {
15
15
  minHeight: {
16
- auto: "_1536691o _1536691b",
17
- sm: "_1536691p _1536691c txvbqbjm7",
18
- md: "_1536691q _1536691d txvbqbjmy",
19
- lg: "_1536691r _1536691e txvbqbjnp"
16
+ auto: "_1536691n _1536691a txvbqbs9r",
17
+ sm: "_1536691o _1536691b txvbqbsgz",
18
+ md: "_1536691p _1536691c txvbqbsi2",
19
+ lg: "_1536691q _1536691d txvbqbsj5"
20
20
  },
21
21
  span: {
22
- span3: "_1536691s _1536691f",
23
- span4: "_1536691t _1536691g",
24
- span6: "_1536691u _1536691h",
25
- span8: "_1536691v _1536691i",
26
- span12: "_1536691w _1536691j"
22
+ span3: "_1536691r _1536691e",
23
+ span4: "_1536691s _1536691f",
24
+ span6: "_1536691t _1536691g",
25
+ span8: "_1536691u _1536691h",
26
+ span12: "_1536691v _1536691i txvbqbgjm"
27
27
  },
28
28
  tabletSpan: {
29
- auto: "_1536691x _1536691k",
30
- tablet3: "_1536691y _1536691l",
31
- tablet6: "_1536691z _1536691m"
29
+ auto: "_1536691w _1536691j",
30
+ tablet3: "_1536691x _1536691k",
31
+ tablet6: "_1536691y _1536691l"
32
32
  }
33
33
  },
34
34
  defaultVariants: {
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardGrid.css.js","names":[],"sources":["../../../../../src/components/dashboard/dashboard_grid/DashboardGrid.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { recipe } from '@vanilla-extract/recipes';\n\nimport { sprinkles } from '../../../theme/sprinkles.css.js';\n\nexport const root = style([\n sprinkles({\n display: 'grid',\n gap: 4,\n width: 'full',\n minHeight: 0,\n }),\n]);\n\nexport const columns = {\n 1: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 1,\n },\n }),\n 2: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 2,\n },\n }),\n 3: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 3,\n },\n }),\n 4: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 4,\n },\n }),\n 12: style([\n sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 12,\n },\n }),\n {\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridTemplateColumns: 'repeat(6, minmax(0, 1fr))',\n },\n },\n },\n ]),\n uneven: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 'dashboardUneven',\n },\n }),\n} as const;\n\nexport const column = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n minHeight: 0,\n});\n\nexport const item = recipe({\n base: style({\n minWidth: 0,\n }),\n variants: {\n minHeight: {\n auto: style({\n minHeight: 0,\n }),\n sm: sprinkles({\n minHeight: 24,\n }),\n md: sprinkles({\n minHeight: 32,\n }),\n lg: sprinkles({\n minHeight: 40,\n }),\n },\n span: {\n span3: style({\n gridColumn: 'span 3 / span 3',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span4: style({\n gridColumn: 'span 4 / span 4',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span6: style({\n gridColumn: 'span 6 / span 6',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span8: style({\n gridColumn: 'span 8 / span 8',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span12: style({\n gridColumn: '1 / -1',\n }),\n },\n tabletSpan: {\n auto: style({}),\n tablet3: style({\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n },\n }),\n tablet6: style({\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n },\n }),\n },\n },\n defaultVariants: {\n minHeight: 'auto',\n span: 'span12',\n tabletSpan: 'auto',\n },\n});\n"],"mappings":""}
1
+ {"version":3,"file":"DashboardGrid.css.js","names":[],"sources":["../../../../../src/components/dashboard/dashboard_grid/DashboardGrid.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { recipe } from '@vanilla-extract/recipes';\n\nimport { sprinkles } from '../../../theme/sprinkles.css.js';\n\nexport const root = sprinkles({\n display: 'grid',\n gap: 4,\n width: 'full',\n minHeight: 0,\n});\n\nexport const columns = {\n 1: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 1,\n },\n }),\n 2: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 2,\n },\n }),\n 3: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 3,\n },\n }),\n 4: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 4,\n },\n }),\n 12: style([\n sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 12,\n },\n }),\n {\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridTemplateColumns: 'repeat(6, minmax(0, 1fr))',\n },\n },\n },\n ]),\n uneven: sprinkles({\n gridTemplateColumns: {\n base: 1,\n min1200: 'dashboardUneven',\n },\n }),\n} as const;\n\nexport const column = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n minHeight: 0,\n});\n\nexport const item = recipe({\n base: sprinkles({\n minWidth: 0,\n }),\n variants: {\n minHeight: {\n auto: sprinkles({\n minHeight: 0,\n }),\n sm: sprinkles({\n minHeight: 24,\n }),\n md: sprinkles({\n minHeight: 32,\n }),\n lg: sprinkles({\n minHeight: 40,\n }),\n },\n span: {\n span3: style({\n gridColumn: 'span 3 / span 3',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span4: style({\n gridColumn: 'span 4 / span 4',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span6: style({\n gridColumn: 'span 6 / span 6',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span8: style({\n gridColumn: 'span 8 / span 8',\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n 'screen and (max-width: 767px)': {\n gridColumn: '1 / -1',\n },\n },\n }),\n span12: sprinkles({\n gridColumn: 'span-full',\n }),\n },\n tabletSpan: {\n auto: sprinkles({}),\n tablet3: style({\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 3 / span 3',\n },\n },\n }),\n tablet6: style({\n '@media': {\n 'screen and (min-width: 768px) and (max-width: 1199px)': {\n gridColumn: 'span 6 / span 6',\n },\n },\n }),\n },\n },\n defaultVariants: {\n minHeight: 'auto',\n span: 'span12',\n tabletSpan: 'auto',\n },\n});\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/metadata_strip/MetadataStrip.css.ts
4
- var e = "b5wog90 txvbqb9ip txvbqbai7 txvbqbao7", t = "b5wog91 txvbqb9iy txvbqbaog txvbqbby7", n = "b5wog92 txvbqb8p txvbqbva1 txvbqb66 txvbqbefy", r = "b5wog93 txvbqb8y txvbqbv9z txvbqbk5y";
4
+ var e = "b5wog90 txvbqbdr8 txvbqbf6i txvbqbff6", t = "b5wog91 txvbqbdrl txvbqbffj txvbqbhb2", n = "b5wog92 txvbqb96 txvbqb19cb txvbqb6a txvbqbky5", r = "b5wog93 txvbqb9j txvbqb19c9 txvbqbt9i";
5
5
  //#endregion
6
6
  export { t as item, n as label, e as list, r as value };
7
7
 
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/metric_card/MetricCard.css.ts
4
- var e = "_177uje60 txvbqb9ip txvbqbai7 txvbqbaog", t = "_177uje61 txvbqb9ip txvbqbcg txvbqbdpp txvbqbaog", n = "_177uje62 txvbqbfcp txvbqb8y txvbqbva1", r = "_177uje63 txvbqbfcp txvbqb9y txvbqba9 txvbqbamy txvbqbv9z", i = "_177uje64 txvbqbfcp txvbqb8y txvbqbva1", a = "_177uje65 txvbqb9jg txvbqbcp txvbqbdoy txvbqbva1";
4
+ var e = "_177uje60 txvbqbdr8 txvbqbf6i txvbqbffj", t = "_177uje61 txvbqbdr8 txvbqbel txvbqbjus txvbqbffj", n = "_177uje62 txvbqbm9g txvbqb9j txvbqb19cb", r = "_177uje63 txvbqbm9g txvbqbaz txvbqbbe txvbqbfdd txvbqb19c9", i = "_177uje64 txvbqbm9g txvbqb9j txvbqb19cb", a = "_177uje65 txvbqbdsb txvbqbey txvbqbjtp txvbqb19cb";
5
5
  //#endregion
6
6
  export { i as hint, a as icon, n as label, e as root, t as top, r as value };
7
7
 
@@ -16,11 +16,11 @@ var s = ({ actions: s, className: c, hint: l, icon: u, label: d, value: f }) =>
16
16
  className: i,
17
17
  children: f
18
18
  })] }), u != null && /* @__PURE__ */ a("div", {
19
- className: "_177uje65 txvbqb9jg txvbqbcp txvbqbdoy txvbqbva1",
19
+ className: "_177uje65 txvbqbdsb txvbqbey txvbqbjtp txvbqb19cb",
20
20
  children: u
21
21
  })]
22
22
  }), l != null && /* @__PURE__ */ a("p", {
23
- className: "_177uje64 txvbqbfcp txvbqb8y txvbqbva1",
23
+ className: "_177uje64 txvbqbm9g txvbqb9j txvbqb19cb",
24
24
  children: l
25
25
  })]
26
26
  })
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/metric_tile_group/MetricTileGroup.css.ts
4
- var e = "_1p0u7xj0 txvbqb9iy txvbqbaog txvbqbu7g txvbqbc0y";
4
+ var e = "_1p0u7xj0 txvbqbdrl txvbqbffj txvbqb17w0 txvbqbhf1";
5
5
  //#endregion
6
6
  export { e as root };
7
7
 
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/page_hero/PageHero.css.ts
4
- var e = "_1oey25i0 txvbqbnwy txvbqbok7 txvbqbp6y txvbqblyp txvbqb9ip txvbqbai7 txvbqbai0 txvbqbcg txvbqbcr txvbqbdpp txvbqbaop txvbqbu7g", t = "_1oey25i1 txvbqb9ip txvbqbai7 txvbqbb9p txvbqbk5y", n = "_1oey25i2 txvbqbfcp txvbqb9y txvbqba9 txvbqbamy txvbqbv9z", r = "_1oey25i3 txvbqbfcp txvbqb8y txvbqbva1 txvbqbjay", i = "_1oey25i4 txvbqb9ip txvbqbcp txvbqbajy txvbqbao7 txvbqbva1 txvbqb8y", a = "_1oey25i5 txvbqb9ip txvbqbcp txvbqbajy txvbqbao7";
4
+ var e = "_1oey25i0 txvbqbypl txvbqbzn6 txvbqb10k1 txvbqbvw4 txvbqbdr8 txvbqbf6i txvbqbf67 txvbqbel txvbqbf0 txvbqbjus txvbqbffw txvbqb17w0", t = "_1oey25i1 txvbqbdr8 txvbqbf6i txvbqbga8 txvbqbt9i", n = "_1oey25i2 txvbqbm9g txvbqbaz txvbqbbe txvbqbfdd txvbqb19c9", r = "_1oey25i3 txvbqbm9g txvbqb9j txvbqb19cb txvbqbryx", i = "_1oey25i4 txvbqbdr8 txvbqbey txvbqbf91 txvbqbff6 txvbqb19cb txvbqb9j", a = "_1oey25i5 txvbqbdr8 txvbqbey txvbqbf91 txvbqbff6";
5
5
  //#endregion
6
6
  export { a as actions, t as body, i as meta, e as root, r as subtitle, n as title };
7
7
 
@@ -12,16 +12,16 @@ var o = ({ actions: o, className: s, meta: c, subtitle: l, title: u }) => /* @__
12
12
  children: u
13
13
  }),
14
14
  l != null && /* @__PURE__ */ i("div", {
15
- className: "_1oey25i3 txvbqbfcp txvbqb8y txvbqbva1 txvbqbjay",
15
+ className: "_1oey25i3 txvbqbm9g txvbqb9j txvbqb19cb txvbqbryx",
16
16
  children: l
17
17
  }),
18
18
  c != null && /* @__PURE__ */ i("div", {
19
- className: "_1oey25i4 txvbqb9ip txvbqbcp txvbqbajy txvbqbao7 txvbqbva1 txvbqb8y",
19
+ className: "_1oey25i4 txvbqbdr8 txvbqbey txvbqbf91 txvbqbff6 txvbqb19cb txvbqb9j",
20
20
  children: c
21
21
  })
22
22
  ]
23
23
  }), o != null && /* @__PURE__ */ i("div", {
24
- className: "_1oey25i5 txvbqb9ip txvbqbcp txvbqbajy txvbqbao7",
24
+ className: "_1oey25i5 txvbqbdr8 txvbqbey txvbqbf91 txvbqbff6",
25
25
  children: o
26
26
  })]
27
27
  });
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/section_nav/SectionNav.css.ts
4
- var e = "_1wio3660 txvbqb9ip txvbqbajy txvbqbao7 txvbqbu7g", t = "_1wio3664 _1wio3661 txvbqb4 _1wio3662 txvbqbnw7 txvbqbojg txvbqbp6g txvbqbly7 txvbqb9jg txvbqbcp txvbqbdoy txvbqb1t7 txvbqbv txvbqb8y txvbqbamg txvbqbva1 txvbqbv41 txvbqb77 txvbqb6y txvbqb7k txvbqb3b _1wio3663 txvbqbwm4 txvbqbw4a", n = "_1wio3665 txvbqbv6f txvbqbv3r";
4
+ var e = "_1wio3660 txvbqbdr8 txvbqbf91 txvbqbff6 txvbqb17w0", t = "_1wio3664 _1wio3661 txvbqb4 _1wio3662 txvbqbyoi txvbqbzm3 txvbqb10jb txvbqbvve txvbqbdsb txvbqbey txvbqbjtp txvbqb2is txvbqbv txvbqb9j txvbqbfcn txvbqb19cb txvbqb196b txvbqb7g txvbqb77 txvbqb7t txvbqb3f _1wio3663 txvbqb1bs9 txvbqb1afl", n = "_1wio3665 txvbqb198p txvbqb1961";
5
5
  //#endregion
6
6
  export { n as active, t as item, e as nav };
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"SectionNav.css.js","names":[],"sources":["../../../../../src/components/dashboard/section_nav/SectionNav.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\n\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { vars } from '../../../theme/themeContract.js';\n\nexport const nav = sprinkles({\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n width: 'full',\n});\n\nconst reset = sprinkles({\n all: 'unset',\n});\n\nexport const item = style([\n reset,\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingX: 3,\n paddingY: 2,\n borderRadius: 'full',\n cursor: 'pointer',\n fontSize: 'sm',\n fontWeight: 'medium',\n color: 'textSecondary',\n backgroundColor: 'surface',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n textDecoration: 'none',\n }),\n stateSprinkles({\n color: {\n hover: 'text',\n },\n backgroundColor: {\n hover: 'backgroundSecondary',\n },\n }),\n {\n ':focus-visible': {\n outline: `2px solid ${vars.colors['blue-500']}`,\n outlineOffset: '2px',\n },\n },\n]);\n\nexport const active = sprinkles({\n color: 'white',\n backgroundColor: 'primary',\n});\n"],"mappings":""}
1
+ {"version":3,"file":"SectionNav.css.js","names":[],"sources":["../../../../../src/components/dashboard/section_nav/SectionNav.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { vars } from '../../../theme/themeContract.js';\n\nexport const nav = sprinkles({\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n width: 'full',\n});\n\nconst reset = sprinkles({\n all: 'unset',\n});\n\nexport const item = style([\n reset,\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingX: 3,\n paddingY: 2,\n borderRadius: 'full',\n cursor: 'pointer',\n fontSize: 'sm',\n fontWeight: 'medium',\n color: 'textSecondary',\n backgroundColor: 'surface',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n textDecoration: 'none',\n }),\n stateSprinkles({\n color: {\n hover: 'text',\n },\n backgroundColor: {\n hover: 'backgroundSecondary',\n },\n }),\n {\n ':focus-visible': {\n outline: `2px solid ${vars.colors['blue-500']}`,\n outlineOffset: '2px',\n },\n },\n]);\n\nexport const active = sprinkles({\n color: 'white',\n backgroundColor: 'primary',\n});\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/segmented_nav/SegmentedNav.css.ts
4
- var e = "bfnpna0 txvbqb9ip txvbqbajy txvbqbao7 txvbqbu7g", t = "bfnpna4 bfnpna1 txvbqb4 bfnpna2 txvbqbnw7 txvbqbojg txvbqbp6g txvbqbly7 txvbqb9jg txvbqbcp txvbqbdoy txvbqb1t7 txvbqbv txvbqb8y txvbqbamp txvbqbva1 txvbqbv4b txvbqb77 txvbqb6y txvbqb7k txvbqb3b bfnpna3 txvbqbwm4 txvbqbw41", n = "bfnpna5 txvbqbv6f txvbqbv3r";
4
+ var e = "bfnpna0 txvbqbdr8 txvbqbf91 txvbqbff6 txvbqb17w0", t = "bfnpna4 bfnpna1 txvbqb4 bfnpna2 txvbqbyoi txvbqbzm3 txvbqb10jb txvbqbvve txvbqbdsb txvbqbey txvbqbjtp txvbqb2is txvbqbv txvbqb9j txvbqbfd0 txvbqb19cb txvbqb196l txvbqb7g txvbqb77 txvbqb7t txvbqb3f bfnpna3 txvbqb1bs9 txvbqb1aex", n = "bfnpna5 txvbqb198p txvbqb1961";
5
5
  //#endregion
6
6
  export { n as active, t as item, e as nav };
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedNav.css.js","names":[],"sources":["../../../../../src/components/dashboard/segmented_nav/SegmentedNav.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\n\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { vars } from '../../../theme/themeContract.js';\n\nexport const nav = sprinkles({\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n width: 'full',\n});\n\nconst reset = sprinkles({\n all: 'unset',\n});\n\nexport const item = style([\n reset,\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingX: 3,\n paddingY: 2,\n borderRadius: 'full',\n cursor: 'pointer',\n fontSize: 'sm',\n fontWeight: 'semibold',\n color: 'textSecondary',\n backgroundColor: 'backgroundSecondary',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n textDecoration: 'none',\n }),\n stateSprinkles({\n color: {\n hover: 'text',\n },\n backgroundColor: {\n hover: 'surfaceMuted',\n },\n }),\n {\n ':focus-visible': {\n outline: `2px solid ${vars.colors['blue-500']}`,\n outlineOffset: '2px',\n },\n },\n]);\n\nexport const active = sprinkles({\n color: 'white',\n backgroundColor: 'primary',\n});\n"],"mappings":""}
1
+ {"version":3,"file":"SegmentedNav.css.js","names":[],"sources":["../../../../../src/components/dashboard/segmented_nav/SegmentedNav.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { vars } from '../../../theme/themeContract.js';\n\nexport const nav = sprinkles({\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n width: 'full',\n});\n\nconst reset = sprinkles({\n all: 'unset',\n});\n\nexport const item = style([\n reset,\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingX: 3,\n paddingY: 2,\n borderRadius: 'full',\n cursor: 'pointer',\n fontSize: 'sm',\n fontWeight: 'semibold',\n color: 'textSecondary',\n backgroundColor: 'backgroundSecondary',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n textDecoration: 'none',\n }),\n stateSprinkles({\n color: {\n hover: 'text',\n },\n backgroundColor: {\n hover: 'surfaceMuted',\n },\n }),\n {\n ':focus-visible': {\n outline: `2px solid ${vars.colors['blue-500']}`,\n outlineOffset: '2px',\n },\n },\n]);\n\nexport const active = sprinkles({\n color: 'white',\n backgroundColor: 'primary',\n});\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/selectable_card/SelectableCard.css.ts
4
- var e = "_1ev8s9e2 _1ev8s9e0 txvbqb4 txvbqbu7g txvbqb9ip txvbqbai7 txvbqbao7 txvbqblb7 txvbqb1cp txvbqb1qg txvbqbwp txvbqb1rg txvbqbv49 txvbqbv txvbqb77 txvbqb6y txvbqb7k _1ev8s9e1 txvbqbwep", t = "_1ev8s9e3 txvbqbsg txvbqbv45", n = "_1ev8s9e4 txvbqb9ip txvbqbdpp txvbqbcp txvbqbao7", r = "_1ev8s9e5 txvbqbamp txvbqbv9z txvbqb8y", i = "_1ev8s9e6 txvbqbva1 txvbqb8p", a = "_1ev8s9e7 txvbqb9ip txvbqbai7 txvbqbao7";
4
+ var e = "_1ev8s9e2 _1ev8s9e0 txvbqb4 txvbqb17w0 txvbqbdr8 txvbqbf6i txvbqbff6 txvbqbuy6 txvbqb1uy txvbqb2et txvbqb17u txvbqb2g9 txvbqb196j txvbqbv txvbqb7g txvbqb77 txvbqb7t _1ev8s9e1 txvbqb1b7d qbwcue6 txvbqb1d2y txvbqb1d37 qbwcue0 txvbqb1cb0 txvbqb1cws", t = "_1ev8s9e3 txvbqb11p txvbqb196f", n = "_1ev8s9e4 txvbqbdr8 txvbqbjus txvbqbey txvbqbff6", r = "_1ev8s9e5 txvbqbfd0 txvbqb19c9 txvbqb9j", i = "_1ev8s9e6 txvbqb19cb txvbqb96", a = "_1ev8s9e7 txvbqbdr8 txvbqbf6i txvbqbff6";
5
5
  //#endregion
6
6
  export { a as body, e as button, i as meta, t as selected, r as title, n as top };
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"SelectableCard.css.js","names":[],"sources":["../../../../../src/components/dashboard/selectable_card/SelectableCard.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\n\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { vars } from '../../../theme/themeContract.js';\n\nexport const button = style([\n sprinkles({\n all: 'unset',\n width: 'full',\n display: 'flex',\n flexDirection: 'column',\n gap: 2,\n padding: 3,\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n borderRadius: 'md',\n backgroundColor: 'background',\n cursor: 'pointer',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n }),\n stateSprinkles({\n boxShadow: {\n hover: 'sm',\n },\n }),\n {\n ':hover': {\n transform: 'translateY(-1px)',\n },\n ':focus-visible': {\n outline: `2px solid ${vars.colors['blue-500']}`,\n outlineOffset: '2px',\n },\n },\n]);\n\nexport const selected = sprinkles({\n borderColor: 'primary',\n backgroundColor: 'surfaceMuted',\n});\n\nexport const top = sprinkles({\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n gap: 2,\n});\n\nexport const title = sprinkles({\n fontWeight: 'semibold',\n color: 'text',\n fontSize: 'sm',\n});\n\nexport const meta = sprinkles({\n color: 'textSecondary',\n fontSize: 'xs',\n});\n\nexport const body = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 2,\n});\n"],"mappings":""}
1
+ {"version":3,"file":"SelectableCard.css.js","names":[],"sources":["../../../../../src/components/dashboard/selectable_card/SelectableCard.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles, stateSprinkles } from '../../../theme/sprinkles.css.js';\nimport { focusRing, liftOnHover } from '../../../theme/styleRecipes.css.js';\n\nexport const button = style([\n sprinkles({\n all: 'unset',\n width: 'full',\n display: 'flex',\n flexDirection: 'column',\n gap: 2,\n padding: 3,\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n borderRadius: 'md',\n backgroundColor: 'background',\n cursor: 'pointer',\n transitionProperty: 'default',\n transitionDuration: 160,\n transitionTimingFunction: 'ease',\n }),\n stateSprinkles({\n boxShadow: {\n hover: 'sm',\n },\n }),\n liftOnHover,\n focusRing,\n]);\n\nexport const selected = sprinkles({\n borderColor: 'primary',\n backgroundColor: 'surfaceMuted',\n});\n\nexport const top = sprinkles({\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n gap: 2,\n});\n\nexport const title = sprinkles({\n fontWeight: 'semibold',\n color: 'text',\n fontSize: 'sm',\n});\n\nexport const meta = sprinkles({\n color: 'textSecondary',\n fontSize: 'xs',\n});\n\nexport const body = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 2,\n});\n"],"mappings":""}
@@ -15,11 +15,11 @@ var s = ({ children: s, className: c, meta: l, onSelect: u, selected: d = !1, ti
15
15
  }), p]
16
16
  }),
17
17
  l != null && /* @__PURE__ */ a("div", {
18
- className: "_1ev8s9e6 txvbqbva1 txvbqb8p",
18
+ className: "_1ev8s9e6 txvbqb19cb txvbqb96",
19
19
  children: l
20
20
  }),
21
21
  s != null && /* @__PURE__ */ a("div", {
22
- className: "_1ev8s9e7 txvbqb9ip txvbqbai7 txvbqbao7",
22
+ className: "_1ev8s9e7 txvbqbdr8 txvbqbf6i txvbqbff6",
23
23
  children: s
24
24
  })
25
25
  ]
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/status_summary_panel/StatusSummaryPanel.css.ts
4
- var e = "_1geqsra0 txvbqb9ip txvbqbai7 txvbqbaog", t = "_1geqsra1 txvbqb9ip txvbqbdpp txvbqbcp txvbqbao7", n = "_1geqsra2 txvbqb8y txvbqbva1";
4
+ var e = "_1geqsra0 txvbqbdr8 txvbqbf6i txvbqbffj", t = "_1geqsra1 txvbqbdr8 txvbqbjus txvbqbey txvbqbff6", n = "_1geqsra2 txvbqb9j txvbqb19cb";
5
5
  //#endregion
6
6
  export { n as help, e as root, t as row };
7
7
 
@@ -21,7 +21,7 @@ var c = ({ className: c, help: l, items: u = [], status: d, statusLabel: f, stat
21
21
  h != null && /* @__PURE__ */ o(e, { value: h }),
22
22
  u.length > 0 && /* @__PURE__ */ o(r, { items: u }),
23
23
  l != null && /* @__PURE__ */ o("div", {
24
- className: "_1geqsra2 txvbqb8y txvbqbva1",
24
+ className: "_1geqsra2 txvbqb9j txvbqb19cb",
25
25
  children: l
26
26
  })
27
27
  ]
@@ -1,7 +1,7 @@
1
1
  /* empty css */
2
2
  /* empty css */
3
3
  //#region src/components/dashboard/timeline_event_row/TimelineEventRow.css.ts
4
- var e = "_1664kmj0 txvbqb1cp txvbqb1qg txvbqbwp txvbqb1rg txvbqblb7 txvbqb9ip txvbqbai7 txvbqbao7 txvbqbv4b", t = "_1664kmj1 txvbqb8p txvbqbva1", n = "_1664kmj2 txvbqb8y txvbqbv9z", r = "_1664kmj3 txvbqb9ip txvbqbajy txvbqbao7 txvbqb8p txvbqbva1";
4
+ var e = "_1664kmj0 txvbqb1uy txvbqb2et txvbqb17u txvbqb2g9 txvbqbuy6 txvbqbdr8 txvbqbf6i txvbqbff6 txvbqb196l", t = "_1664kmj1 txvbqb96 txvbqb19cb", n = "_1664kmj2 txvbqb9j txvbqb19c9", r = "_1664kmj3 txvbqbdr8 txvbqbf91 txvbqbff6 txvbqb96 txvbqb19cb";
5
5
  //#endregion
6
6
  export { r as metrics, e as root, n as summary, t as timestamp };
7
7
 
@@ -11,11 +11,11 @@ var o = ({ className: o, details: s, metrics: c = [], summary: l, timestamp: u }
11
11
  children: /* @__PURE__ */ i(t, { value: u })
12
12
  }),
13
13
  l != null && /* @__PURE__ */ i("div", {
14
- className: "_1664kmj2 txvbqb8y txvbqbv9z",
14
+ className: "_1664kmj2 txvbqb9j txvbqb19c9",
15
15
  children: l
16
16
  }),
17
17
  c.length > 0 && /* @__PURE__ */ i("div", {
18
- className: "_1664kmj3 txvbqb9ip txvbqbajy txvbqbao7 txvbqb8p txvbqbva1",
18
+ className: "_1664kmj3 txvbqbdr8 txvbqbf91 txvbqbff6 txvbqb96 txvbqb19cb",
19
19
  children: c.map((e) => /* @__PURE__ */ a("span", { children: [
20
20
  e.label,
21
21
  ": ",