@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.
- package/README.md +12 -0
- package/lib/esm/__tests__/reactDomTestUtils.js +48 -0
- package/lib/esm/__tests__/reactDomTestUtils.js.map +1 -0
- package/lib/esm/admin/organisms/admin_sidebar/AdminSidebar.js +1 -1
- package/lib/esm/admin/organisms/admin_sidebar/adminSidebar.css.js +3 -2
- package/lib/esm/admin/organisms/admin_topbar/adminTopbar.css.js +1 -1
- package/lib/esm/admin/theme/adminDensity.css.js.map +1 -1
- package/lib/esm/admin/theme/adminSurface.css.js.map +1 -1
- package/lib/esm/atomic/atoms/badge/badge.css.js +7 -7
- package/lib/esm/atomic/atoms/badge/badge.css.js.map +1 -1
- package/lib/esm/atomic/atoms/button/button.css.js +38 -38
- package/lib/esm/atomic/atoms/button/button.css.js.map +1 -1
- package/lib/esm/atomic/atoms/checkbox/checkbox.css.js +8 -8
- package/lib/esm/atomic/atoms/checkbox/checkbox.css.js.map +1 -1
- package/lib/esm/atomic/atoms/error_message/errorMessage.css.js +1 -1
- package/lib/esm/atomic/atoms/input/input.css.js +9 -9
- package/lib/esm/atomic/atoms/input/input.css.js.map +1 -1
- package/lib/esm/atomic/atoms/label/label.css.js +7 -7
- package/lib/esm/atomic/atoms/modal/Modal.js +1 -1
- package/lib/esm/atomic/atoms/modal/modal.css.js +1 -1
- package/lib/esm/atomic/atoms/modal/modal.css.js.map +1 -1
- package/lib/esm/atomic/atoms/overlay/overlay.css.js +1 -1
- package/lib/esm/atomic/atoms/textarea/textarea.css.js +8 -8
- package/lib/esm/atomic/atoms/textarea/textarea.css.js.map +1 -1
- package/lib/esm/atomic/molecules/breadcrumb_navigation/BreadcrumbMenuPopover.js +1 -1
- package/lib/esm/atomic/molecules/breadcrumb_navigation/breadcrumbNavigation.css.js +1 -1
- package/lib/esm/atomic/molecules/breadcrumb_navigation/breadcrumbNavigation.css.js.map +1 -1
- package/lib/esm/atomic/molecules/card/Card.css.js +1 -1
- package/lib/esm/atomic/molecules/checkbox_field/checkboxField.css.js +1 -1
- package/lib/esm/atomic/molecules/checkbox_field/checkboxField.css.js.map +1 -1
- package/lib/esm/atomic/molecules/dropdown/dropdown.css.js +1 -1
- package/lib/esm/atomic/molecules/empty-state/EmptyState.css.js +1 -1
- package/lib/esm/atomic/molecules/form/FormErrorBanner.css.js +1 -1
- package/lib/esm/atomic/molecules/form/formStyles.css.js +1 -1
- package/lib/esm/atomic/molecules/form_error/formError.css.js +1 -1
- package/lib/esm/atomic/molecules/form_field/formField.css.js +1 -1
- package/lib/esm/atomic/molecules/highlight/HighlightCode.css.js +1 -1
- package/lib/esm/atomic/molecules/highlight/highlightStyles.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/LazyMarkdownRenderer.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownArticleContainer.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownArticleContainer.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownBlockquote.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownDelete.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownDelete.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownEmphasis.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteDefinition.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteReference.css.js +1 -2
- package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnoteReference.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownFootnotesSection.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownHeading.css.js +8 -7
- package/lib/esm/atomic/molecules/markdown/components/MarkdownHeading.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownHtmlFallback.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownImage.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownInlineCode.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownInlineCode.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownList.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownList.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownListItem.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownListItem.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownMark.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownMark.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownMermaidBlock.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownParagraph.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownParagraph.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownStrong.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownStrong.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownSuperscript.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownSuperscript.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTable.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTable.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCaption.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableHead.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTableHeaderCell.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTaskListItem.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownTaskListItem.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownText.css.js +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownText.css.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownThematicBreak.css.js +1 -1
- package/lib/esm/atomic/molecules/tabs/tabs.css.js +4 -4
- package/lib/esm/atomic/molecules/toast/toast.css.js +2 -2
- package/lib/esm/atomic/molecules/toast/toast.css.js.map +1 -1
- package/lib/esm/atomic/organisms/login_form/loginForm.css.js +1 -1
- package/lib/esm/atomic/organisms/sidebar/SidebarContainer.js +2 -2
- package/lib/esm/atomic/organisms/sidebar/navigationSidebar.css.js +13 -13
- package/lib/esm/atomic/organisms/sidebar/sidebar.css.js +2 -2
- package/lib/esm/atomic/templates/auth_layout/authLayout.css.js +1 -1
- package/lib/esm/atomic/templates/detail-page/DetailPage.js +4 -4
- package/lib/esm/atomic/templates/detail-page/detailPage.css.js +1 -1
- package/lib/esm/atomic/templates/page-container/PageContainer.js +3 -3
- package/lib/esm/atomic/templates/page-container/pageContainer.css.js +1 -1
- package/lib/esm/backoffice/atoms/backoffice_id_badge/backofficeIdBadge.css.js +1 -1
- package/lib/esm/backoffice/atoms/copyable_text/copyableText.css.js +1 -1
- package/lib/esm/backoffice/atoms/environment_badge/environmentBadge.css.js +1 -1
- package/lib/esm/backoffice/atoms/shortcut_hint/shortcutHint.css.js +1 -1
- package/lib/esm/backoffice/atoms/skeleton/skeleton.css.js +5 -5
- package/lib/esm/backoffice/atoms/skeleton/skeleton.css.js.map +1 -1
- package/lib/esm/backoffice/atoms/spinner/spinner.css.js +1 -1
- package/lib/esm/backoffice/atoms/spinner/spinner.css.js.map +1 -1
- package/lib/esm/backoffice/atoms/status_badge/statusBadge.css.js +1 -1
- package/lib/esm/backoffice/atoms/tag/tag.css.js +7 -7
- package/lib/esm/backoffice/atoms/tag/tag.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_filter_drawer/BackofficeFilterDrawer.js +7 -7
- package/lib/esm/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_filter_field/backofficeFilterField.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_filters_bar/backofficeFiltersBar.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_form_section/BackofficeFormSection.js +3 -3
- package/lib/esm/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_infinite_list_status/BackofficeInfiniteListStatus.js +2 -2
- package/lib/esm/backoffice/molecules/backoffice_infinite_list_status/backofficeInfiniteListStatus.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_json_viewer/backofficeJsonViewer.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.js +4 -4
- package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.js +4 -4
- package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_table_skeleton/backofficeTableSkeleton.css.js +4 -4
- package/lib/esm/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.js +8 -8
- package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js +1 -1
- package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_tabs/backofficeTabs.css.js +8 -8
- package/lib/esm/backoffice/molecules/backoffice_tabs/backofficeTabs.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/bulk_actions_bar/bulkActionsBar.css.js +1 -1
- package/lib/esm/backoffice/molecules/confirm_dialog/confirmDialog.css.js +1 -1
- package/lib/esm/backoffice/molecules/filter_chip_row/filterChipRow.css.js +1 -1
- package/lib/esm/backoffice/molecules/filter_chip_row/filterChipRow.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/global_search_input/globalSearchInput.css.js +1 -1
- package/lib/esm/backoffice/molecules/global_search_input/globalSearchInput.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/inline_banner/inlineBanner.css.js +6 -6
- package/lib/esm/backoffice/molecules/inline_banner/inlineBanner.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.js +1 -1
- package/lib/esm/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.js +1 -1
- package/lib/esm/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/sidebar_nav_section/SidebarNavSection.js +5 -5
- package/lib/esm/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.js +1 -1
- package/lib/esm/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.js.map +1 -1
- package/lib/esm/backoffice/molecules/sidebar_profile_menu/BackofficeSidebarProfileMenu.js +4 -4
- package/lib/esm/backoffice/molecules/sidebar_profile_menu/BackofficeSidebarProfileMenu.js.map +1 -1
- package/lib/esm/backoffice/molecules/sidebar_profile_menu/sidebarProfileMenu.css.js +5 -5
- package/lib/esm/backoffice/molecules/table_toolbar/tableToolbar.css.js +1 -1
- package/lib/esm/backoffice/organisms/audit_timeline/auditTimeline.css.js +1 -1
- package/lib/esm/backoffice/organisms/backoffice_data_table/backofficeDataTable.css.js +1 -1
- package/lib/esm/backoffice/organisms/backoffice_virtualized_connection_table/backofficeVirtualizedConnectionTable.css.js +1 -1
- package/lib/esm/backoffice/organisms/entity_header/entityHeader.css.js +1 -1
- package/lib/esm/backoffice/templates/detail_page_template/DetailPageTemplate.js +2 -2
- package/lib/esm/backoffice/templates/detail_page_template/detailPageTemplate.css.js +2 -2
- package/lib/esm/backoffice/templates/detail_page_template/detailPageTemplate.css.js.map +1 -1
- package/lib/esm/backoffice/templates/list_page_template/ListPageTemplate.js +1 -1
- package/lib/esm/backoffice/templates/list_page_template/ListPageTemplate.js.map +1 -1
- package/lib/esm/backoffice/templates/list_page_template/listPageTemplate.css.js +10 -10
- package/lib/esm/backoffice/templates/list_page_template/listPageTemplate.css.js.map +1 -1
- package/lib/esm/components/agent/AgentMarkdownCard.css.js +1 -1
- package/lib/esm/components/charts/MetricHistoryChart.js +17 -39
- package/lib/esm/components/charts/MetricHistoryChart.js.map +1 -1
- package/lib/esm/components/charts/TimeSeriesLineChart.js +20 -32
- package/lib/esm/components/charts/TimeSeriesLineChart.js.map +1 -1
- package/lib/esm/components/charts/metricHistoryChart.css.js +1 -1
- package/lib/esm/components/charts/timeSeriesLineChart.css.js +1 -1
- package/lib/esm/components/dashboard/activity_card/ActivityCard.css.js +1 -1
- package/lib/esm/components/dashboard/activity_card/ActivityCard.js +2 -2
- package/lib/esm/components/dashboard/activity_feed/ActivityFeed.css.js +1 -1
- package/lib/esm/components/dashboard/dashboard_grid/DashboardGrid.css.js +21 -21
- package/lib/esm/components/dashboard/dashboard_grid/DashboardGrid.css.js.map +1 -1
- package/lib/esm/components/dashboard/metadata_strip/MetadataStrip.css.js +1 -1
- package/lib/esm/components/dashboard/metric_card/MetricCard.css.js +1 -1
- package/lib/esm/components/dashboard/metric_card/MetricCard.js +2 -2
- package/lib/esm/components/dashboard/metric_tile_group/MetricTileGroup.css.js +1 -1
- package/lib/esm/components/dashboard/page_hero/PageHero.css.js +1 -1
- package/lib/esm/components/dashboard/page_hero/PageHero.js +3 -3
- package/lib/esm/components/dashboard/section_nav/SectionNav.css.js +1 -1
- package/lib/esm/components/dashboard/section_nav/SectionNav.css.js.map +1 -1
- package/lib/esm/components/dashboard/segmented_nav/SegmentedNav.css.js +1 -1
- package/lib/esm/components/dashboard/segmented_nav/SegmentedNav.css.js.map +1 -1
- package/lib/esm/components/dashboard/selectable_card/SelectableCard.css.js +1 -1
- package/lib/esm/components/dashboard/selectable_card/SelectableCard.css.js.map +1 -1
- package/lib/esm/components/dashboard/selectable_card/SelectableCard.js +2 -2
- package/lib/esm/components/dashboard/status_summary_panel/StatusSummaryPanel.css.js +1 -1
- package/lib/esm/components/dashboard/status_summary_panel/StatusSummaryPanel.js +1 -1
- package/lib/esm/components/dashboard/timeline_event_row/TimelineEventRow.css.js +1 -1
- package/lib/esm/components/dashboard/timeline_event_row/TimelineEventRow.js +2 -2
- package/lib/esm/components/data-table/DataTable.css.js +28 -28
- package/lib/esm/components/data-table/DataTable.css.js.map +1 -1
- package/lib/esm/components/data-table/DataTable.js +33 -35
- package/lib/esm/components/data-table/DataTable.js.map +1 -1
- package/lib/esm/components/data-table/ResponsiveRecordList.css.js +6 -6
- package/lib/esm/components/data-table/TableCell.css.js +2 -2
- package/lib/esm/components/data-table/VirtualizedConnectionTable.css.js +1 -1
- package/lib/esm/components/data-table/VirtualizedConnectionTable.js +49 -61
- package/lib/esm/components/data-table/VirtualizedConnectionTable.js.map +1 -1
- package/lib/esm/components/feedback/OperationFeedback.css.js +1 -1
- package/lib/esm/components/feedback/OperationFeedback.js +1 -1
- package/lib/esm/components/infinite/InfiniteScrollTrigger.js +1 -1
- package/lib/esm/components/infinite/infiniteScrollTrigger.css.js +1 -1
- package/lib/esm/components/layout/ActionPanel.css.js +1 -1
- package/lib/esm/components/layout/ActionPanel.js +3 -3
- package/lib/esm/components/layout/ActionPanel.js.map +1 -1
- package/lib/esm/components/layout/AppHeader.css.js +1 -1
- package/lib/esm/components/layout/AppHeader.js +4 -4
- package/lib/esm/components/layout/ContentLayout.css.js +1 -1
- package/lib/esm/components/layout/ContentLayout.js +2 -2
- package/lib/esm/components/layout/DetailSummaryHeader.css.js +1 -1
- package/lib/esm/components/layout/DetailSummaryHeader.js +3 -3
- package/lib/esm/components/layout/PageShell.css.js +4 -4
- package/lib/esm/components/layout/PageShell.js +5 -5
- package/lib/esm/components/layout/PageShell.js.map +1 -1
- package/lib/esm/components/layout/SettingsLayout.css.js +1 -1
- package/lib/esm/components/layout/SplitViewLayout.css.js +1 -1
- package/lib/esm/components/layout/TabsContentLayout.css.js +1 -1
- package/lib/esm/components/layout/ToolbarRow.css.js +1 -1
- package/lib/esm/components/media/imagePreviewModal.css.js +5 -5
- package/lib/esm/components/responsive/ResponsiveCollectionRenderer.css.js +1 -1
- package/lib/esm/components/responsive/ResponsiveCollectionRenderer.css.js.map +1 -1
- package/lib/esm/components/routing/routeFallback.css.js +1 -1
- package/lib/esm/components/routing/routeFallback.css.js.map +1 -1
- package/lib/esm/components/routing/routePendingBar.css.js +1 -1
- package/lib/esm/components/routing/routePendingBar.css.js.map +1 -1
- package/lib/esm/components/select/SimpleSelect.css.js +14 -14
- package/lib/esm/components/select/SimpleSelect.css.js.map +1 -1
- package/lib/esm/components/subscriptions/RefetchNeededBanner.css.js +1 -1
- package/lib/esm/components/tile/InfoTile.css.js +1 -1
- package/lib/esm/components/tile/InfoTile.css.js.map +1 -1
- package/lib/esm/components/tile/InfoTile.js +3 -3
- package/lib/esm/index.js +257 -255
- package/lib/esm/internal/charts/metricHistoryChartHelpers.js +24 -0
- package/lib/esm/internal/charts/metricHistoryChartHelpers.js.map +1 -0
- package/lib/esm/internal/charts/timeSeriesLineChartHelpers.js +18 -0
- package/lib/esm/internal/charts/timeSeriesLineChartHelpers.js.map +1 -0
- package/lib/esm/internal/data-table/layout.js +6 -0
- package/lib/esm/internal/data-table/layout.js.map +1 -0
- package/lib/esm/internal/data-table/virtualization.js +12 -0
- package/lib/esm/internal/data-table/virtualization.js.map +1 -0
- package/lib/esm/node_modules/@vitest/pretty-format/dist/index.js +614 -0
- package/lib/esm/node_modules/@vitest/pretty-format/dist/index.js.map +1 -0
- package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js +909 -0
- package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js.map +1 -0
- package/lib/esm/node_modules/@vitest/runner/dist/index.js +1 -0
- package/lib/esm/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js +50 -0
- package/lib/esm/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js.map +1 -0
- package/lib/esm/node_modules/@vitest/utils/dist/display.js +424 -0
- package/lib/esm/node_modules/@vitest/utils/dist/display.js.map +1 -0
- package/lib/esm/node_modules/@vitest/utils/dist/helpers.js +43 -0
- package/lib/esm/node_modules/@vitest/utils/dist/helpers.js.map +1 -0
- package/lib/esm/node_modules/@vitest/utils/dist/source-map.js +68 -0
- package/lib/esm/node_modules/@vitest/utils/dist/source-map.js.map +1 -0
- package/lib/esm/node_modules/@vitest/utils/dist/timers.js +19 -0
- package/lib/esm/node_modules/@vitest/utils/dist/timers.js.map +1 -0
- package/lib/esm/node_modules/tinyrainbow/dist/index.js +85 -0
- package/lib/esm/node_modules/tinyrainbow/dist/index.js.map +1 -0
- package/lib/esm/shared/backofficeTableDensity.css.js.map +1 -1
- package/lib/esm/style.css +1 -1
- package/lib/esm/theme/accessibility.css.js +1 -1
- package/lib/esm/theme/accessibility.css.js.map +1 -1
- package/lib/esm/theme/index.js +12 -10
- package/lib/esm/theme/sprinkles.css.js +73323 -51658
- package/lib/esm/theme/sprinkles.css.js.map +1 -1
- package/lib/esm/theme/styleRecipes.css.js +19 -0
- package/lib/esm/theme/styleRecipes.css.js.map +1 -0
- package/lib/esm/theme/theme-dark.css.js.map +1 -1
- package/lib/esm/theme/theme-light.css.js +23 -2
- package/lib/esm/theme/theme-light.css.js.map +1 -1
- package/lib/esm/theme/theme.css.js +23 -2
- package/lib/esm/theme/themeContract.js +23 -2
- package/lib/esm/theme/themeContract.js.map +1 -1
- package/lib/types/atomic/atoms/button/button.css.d.ts.map +1 -1
- package/lib/types/atomic/atoms/checkbox/checkbox.css.d.ts.map +1 -1
- package/lib/types/atomic/atoms/input/input.css.d.ts.map +1 -1
- package/lib/types/atomic/atoms/modal/modal.css.d.ts.map +1 -1
- package/lib/types/atomic/atoms/textarea/textarea.css.d.ts.map +1 -1
- package/lib/types/atomic/molecules/markdown/components/MarkdownCodeCopyButton.css.d.ts.map +1 -1
- package/lib/types/atomic/molecules/toast/toast.css.d.ts.map +1 -1
- package/lib/types/backoffice/atoms/tag/tag.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/backoffice_filter_drawer/backofficeFilterDrawer.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/backoffice_tabs/backofficeTabs.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/filter_chip_row/filterChipRow.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/global_search_input/globalSearchInput.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/inline_banner/inlineBanner.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/sidebar_collapse_toggle/sidebarCollapseToggle.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/sidebar_nav_item/sidebarNavItem.css.d.ts.map +1 -1
- package/lib/types/backoffice/molecules/sidebar_nav_section/sidebarNavSection.css.d.ts.map +1 -1
- package/lib/types/backoffice/templates/detail_page_template/detailPageTemplate.css.d.ts.map +1 -1
- package/lib/types/backoffice/templates/list_page_template/listPageTemplate.css.d.ts.map +1 -1
- package/lib/types/components/charts/MetricHistoryChart.d.ts +0 -8
- package/lib/types/components/charts/MetricHistoryChart.d.ts.map +1 -1
- package/lib/types/components/charts/TimeSeriesLineChart.d.ts +0 -4
- package/lib/types/components/charts/TimeSeriesLineChart.d.ts.map +1 -1
- package/lib/types/components/dashboard/dashboard_grid/DashboardGrid.css.d.ts.map +1 -1
- package/lib/types/components/dashboard/section_nav/SectionNav.css.d.ts.map +1 -1
- package/lib/types/components/dashboard/segmented_nav/SegmentedNav.css.d.ts.map +1 -1
- package/lib/types/components/dashboard/selectable_card/SelectableCard.css.d.ts.map +1 -1
- package/lib/types/components/data-table/DataTable.d.ts +1 -5
- package/lib/types/components/data-table/DataTable.d.ts.map +1 -1
- package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts +1 -34
- package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts.map +1 -1
- package/lib/types/components/select/SimpleSelect.css.d.ts.map +1 -1
- package/lib/types/components/tile/InfoTile.css.d.ts.map +1 -1
- package/lib/types/internal/charts/metricHistoryChartHelpers.d.ts +4 -0
- package/lib/types/internal/charts/metricHistoryChartHelpers.d.ts.map +1 -0
- package/lib/types/internal/charts/timeSeriesLineChartHelpers.d.ts +9 -0
- package/lib/types/internal/charts/timeSeriesLineChartHelpers.d.ts.map +1 -0
- package/lib/types/internal/data-table/layout.d.ts +4 -0
- package/lib/types/internal/data-table/layout.d.ts.map +1 -0
- package/lib/types/internal/data-table/virtualization.d.ts +29 -0
- package/lib/types/internal/data-table/virtualization.d.ts.map +1 -0
- package/lib/types/shared/backofficeTableDensity.css.d.ts.map +1 -1
- package/lib/types/theme/index.d.ts +2 -0
- package/lib/types/theme/index.d.ts.map +1 -1
- package/lib/types/theme/sprinkles.css.d.ts +684 -60
- package/lib/types/theme/sprinkles.css.d.ts.map +1 -1
- package/lib/types/theme/styleRecipes.css.d.ts +29 -0
- package/lib/types/theme/styleRecipes.css.d.ts.map +1 -0
- package/lib/types/theme/theme-dark.css.d.ts.map +1 -1
- package/lib/types/theme/theme-light.css.d.ts +21 -0
- package/lib/types/theme/theme-light.css.d.ts.map +1 -1
- package/lib/types/theme/themeContract.d.ts +21 -0
- package/lib/types/theme/themeContract.d.ts.map +1 -1
- 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 {
|
|
4
|
-
import {
|
|
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
|
|
7
|
-
|
|
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__ */
|
|
24
|
+
return /* @__PURE__ */ l("div", {
|
|
37
25
|
className: t,
|
|
38
|
-
children: /* @__PURE__ */
|
|
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) =>
|
|
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),
|
|
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 =
|
|
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__ */
|
|
101
|
+
return /* @__PURE__ */ u("div", {
|
|
114
102
|
className: n,
|
|
115
|
-
children: [/* @__PURE__ */
|
|
103
|
+
children: [/* @__PURE__ */ l("p", {
|
|
116
104
|
className: r,
|
|
117
|
-
children:
|
|
118
|
-
}),
|
|
105
|
+
children: s(t)
|
|
106
|
+
}), d.map((e) => /* @__PURE__ */ u("div", {
|
|
119
107
|
className: i,
|
|
120
|
-
children: [/* @__PURE__ */
|
|
108
|
+
children: [/* @__PURE__ */ u("span", {
|
|
121
109
|
className: a,
|
|
122
|
-
children: [/* @__PURE__ */
|
|
110
|
+
children: [/* @__PURE__ */ l("span", {
|
|
123
111
|
className: o,
|
|
124
112
|
style: { backgroundColor: e.color },
|
|
125
113
|
"aria-hidden": !0
|
|
126
|
-
}), /* @__PURE__ */
|
|
127
|
-
}), /* @__PURE__ */
|
|
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
|
-
}
|
|
124
|
+
};
|
|
137
125
|
//#endregion
|
|
138
|
-
export {
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
29
|
+
className: "_1d32hgo4 txvbqb9j txvbqb19cb",
|
|
30
30
|
children: f
|
|
31
31
|
}),
|
|
32
32
|
l
|
|
@@ -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 = "
|
|
6
|
-
1: "
|
|
7
|
-
2: "
|
|
8
|
-
3: "
|
|
9
|
-
4: "
|
|
10
|
-
12: "
|
|
11
|
-
uneven: "
|
|
12
|
-
}, r = "
|
|
13
|
-
defaultClassName: "
|
|
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: "
|
|
17
|
-
sm: "
|
|
18
|
-
md: "
|
|
19
|
-
lg: "
|
|
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: "
|
|
23
|
-
span4: "
|
|
24
|
-
span6: "
|
|
25
|
-
span8: "
|
|
26
|
-
span12: "
|
|
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: "
|
|
30
|
-
tablet3: "
|
|
31
|
-
tablet6: "
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
19
|
+
className: "_177uje65 txvbqbdsb txvbqbey txvbqbjtp txvbqb19cb",
|
|
20
20
|
children: u
|
|
21
21
|
})]
|
|
22
22
|
}), l != null && /* @__PURE__ */ a("p", {
|
|
23
|
-
className: "_177uje64
|
|
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
|
|
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
|
|
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
|
|
15
|
+
className: "_1oey25i3 txvbqbm9g txvbqb9j txvbqb19cb txvbqbryx",
|
|
16
16
|
children: l
|
|
17
17
|
}),
|
|
18
18
|
c != null && /* @__PURE__ */ i("div", {
|
|
19
|
-
className: "_1oey25i4
|
|
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
|
|
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
|
|
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';\
|
|
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
|
|
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';\
|
|
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
|
|
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';\
|
|
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
|
|
18
|
+
className: "_1ev8s9e6 txvbqb19cb txvbqb96",
|
|
19
19
|
children: l
|
|
20
20
|
}),
|
|
21
21
|
s != null && /* @__PURE__ */ a("div", {
|
|
22
|
-
className: "_1ev8s9e7
|
|
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
|
|
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
|
|
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
|
|
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
|
|
14
|
+
className: "_1664kmj2 txvbqb9j txvbqb19c9",
|
|
15
15
|
children: l
|
|
16
16
|
}),
|
|
17
17
|
c.length > 0 && /* @__PURE__ */ i("div", {
|
|
18
|
-
className: "_1664kmj3
|
|
18
|
+
className: "_1664kmj3 txvbqbdr8 txvbqbf91 txvbqbff6 txvbqb96 txvbqb19cb",
|
|
19
19
|
children: c.map((e) => /* @__PURE__ */ a("span", { children: [
|
|
20
20
|
e.label,
|
|
21
21
|
": ",
|