@aceshooting/lyra-ui 11.2.0 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +388 -0
- package/README.md +11 -8
- package/custom-elements.json +1 -1
- package/dist/all.d.ts +1 -0
- package/dist/all.js +1 -1
- package/dist/components/charts/chart/chart.class.d.ts +13 -1
- package/dist/components/data/funnel/funnel.class.d.ts +92 -0
- package/dist/components/data/funnel/funnel.class.js +25 -0
- package/dist/components/data/funnel/funnel.d.ts +1 -0
- package/dist/components/data/funnel/funnel.js +1 -0
- package/dist/components/data/funnel/funnel.styles.d.ts +1 -0
- package/dist/components/data/funnel/funnel.styles.js +127 -0
- package/dist/components/data/heatmap/heatmap.class.d.ts +195 -13
- package/dist/components/data/heatmap/heatmap.class.js +30 -22
- package/dist/components/data/heatmap/heatmap.styles.js +36 -0
- package/dist/components/data/index.d.ts +1 -0
- package/dist/components/data/index.js +1 -1
- package/dist/components/forms/date-picker/date-input.class.d.ts +23 -0
- package/dist/components/forms/date-picker/date-input.class.js +1 -1
- package/dist/components/layout/app-rail/app-rail-item.class.d.ts +16 -0
- package/dist/components/layout/app-rail/app-rail-item.class.js +4 -4
- package/dist/components/layout/filter-bar/filter-bar.class.d.ts +32 -3
- package/dist/components/layout/filter-bar/filter-bar.class.js +2 -1
- package/dist/components/layout/widget/widget.class.d.ts +16 -0
- package/dist/components/layout/widget/widget.class.js +2 -2
- package/dist/components/lr-funnel.d.ts +1 -0
- package/dist/components/lr-funnel.js +1 -0
- package/dist/components/media/flag/flag-peer-bulk-standard.d.ts +25 -0
- package/dist/components/media/flag/flag-peer-bulk-standard.js +1 -0
- package/dist/components/media/flag/flag.class.d.ts +8 -0
- package/dist/components/media/flag/flag.class.js +1 -1
- package/dist/components/media/map/map.class.d.ts +196 -15
- package/dist/components/media/map/map.class.js +1 -1
- package/dist/components/overlays/chip/chip-group.class.d.ts +16 -0
- package/dist/components/overlays/chip/chip-group.class.js +10 -3
- package/dist/custom-elements-jsx.d.ts +12 -4
- package/dist/internal/autoloader-manifest.js +1 -1
- package/dist/internal/autoloader-tags.d.ts +1 -1
- package/dist/internal/autoloader-tags.js +1 -1
- package/dist/internal/lyra-element.d.ts +7 -1
- package/dist/internal/lyra-element.js +1 -1
- package/dist/internal/package-metadata.d.ts +1 -1
- package/dist/internal/package-metadata.js +1 -1
- package/dist/internal/root-registration-allowlist.d.ts +1 -1
- package/dist/internal/root-registration-allowlist.js +1 -1
- package/dist/lyra.d.ts +4 -2
- package/dist/lyra.js +1 -1
- package/dist/ssr/all.d.ts +1 -0
- package/dist/ssr/all.js +1 -1
- package/dist/ssr.d.ts +4 -4
- package/dist/styles/tokens-root.css +488 -0
- package/dist/svelte.d.ts +13 -4
- package/dist/vue.d.ts +12 -4
- package/llms/components/lr-app-rail-item.md +8 -1
- package/llms/components/lr-app-rail.md +6 -0
- package/llms/components/lr-chip-group.md +7 -0
- package/llms/components/lr-chip.md +7 -0
- package/llms/components/lr-date-input.md +19 -1
- package/llms/components/lr-date-picker.md +19 -1
- package/llms/components/lr-filter-bar.md +50 -1
- package/llms/components/lr-flag.md +14 -0
- package/llms/components/lr-funnel.md +122 -0
- package/llms/components/lr-heatmap.md +51 -7
- package/llms/components/lr-map.md +65 -8
- package/llms/components/lr-widget.md +7 -1
- package/llms/index.md +3 -2
- package/llms/peers.md +1 -1
- package/llms/shared.md +110 -1
- package/llms-full.txt +468 -18
- package/llms.txt +1 -1
- package/package.json +25 -6
- package/vscode-css-data.json +42 -0
- package/vscode-html-data.json +96 -17
- package/web-types.json +32714 -317
package/dist/all.d.ts
CHANGED
|
@@ -106,6 +106,7 @@ import './components/data/flow-run-status/flow-run-status.js';
|
|
|
106
106
|
import './components/utility/format/format-bytes.js';
|
|
107
107
|
import './components/utility/format/format-date.js';
|
|
108
108
|
import './components/utility/format/format-number.js';
|
|
109
|
+
import './components/data/funnel/funnel.js';
|
|
109
110
|
import './components/data/gauge/gauge.js';
|
|
110
111
|
import './components/conversation/generation-metrics/generation-metrics.js';
|
|
111
112
|
import './components/retrieval/graph-legend/graph-legend.js';
|
package/dist/all.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./components/layout/details/accordion.js";import"./components/layout/details/accordion-item.js";import"./components/agent-tools/activity-feed/activity-feed.js";import"./components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.js";import"./components/agent-tools/agent-run/agent-run.js";import"./components/agent-tools/agent-trace/agent-trace.js";import"./components/conversation/agent-workspace/agent-workspace.js";import"./components/overlays/alert/alert.js";import"./components/media/animated-image/animated-image.js";import"./components/media/animation/animation.js";import"./components/layout/app-rail/app-rail.js";import"./components/layout/app-rail/app-rail-item.js";import"./components/agent-tools/approval-queue/approval-queue.js";import"./components/viewers/archive-viewer/archive-viewer.js";import"./components/agent-tools/artifact-panel/artifact-panel.js";import"./components/media/attachment-chip/attachment-chip.js";import"./components/media/attachment-trigger/attachment-trigger.js";import"./components/conversation/audio-visualizer/audio-visualizer.js";import"./components/media/av-player/av-player.js";import"./components/media/avatar/avatar.js";import"./components/media/avatar-group/avatar-group.js";import"./components/overlays/badge/badge.js";import"./components/conversation/branch-picker/branch-picker.js";import"./components/layout/breadcrumb/breadcrumb.js";import"./components/layout/breadcrumb/breadcrumb-item.js";import"./components/agent-tools/browser-frame/browser-frame.js";import"./components/forms/button/button.js";import"./components/layout/button-group/button-group.js";import"./components/data/calendar/calendar.js";import"./components/viewers/calendar-viewer/calendar-viewer.js";import"./components/overlays/callout/callout.js";import"./components/layout/card/card.js";import"./components/layout/carousel/carousel.js";import"./components/layout/carousel/carousel-item.js";import"./components/conversation/chat-composer/chat-composer.js";import"./components/conversation/chat-message/chat-message.js";import"./components/conversation/chat-viewport/chat-viewport.js";import"./components/forms/checkbox/checkbox.js";import"./components/forms/checkbox-group/checkbox-group.js";import"./components/conversation/checkpoint/checkpoint.js";import"./components/overlays/chip/chip.js";import"./components/overlays/chip/chip-group.js";import"./components/retrieval/chunk-inspector/chunk-inspector.js";import"./components/retrieval/citation-badge/citation-badge.js";import"./components/retrieval/claim-evidence/claim-evidence.js";import"./components/conversation/code-block/code-block.js";import"./components/conversation/code-block/code-block-core.js";import"./components/forms/code-editor/code-editor.js";import"./components/forms/color-picker/color-picker.js";import"./components/forms/combobox/combobox.js";import"./components/layout/command-palette/command-palette.js";import"./components/agent-tools/commit-card/commit-card.js";import"./components/retrieval/community-card/community-card.js";import"./components/agent-tools/compare-panel/compare-panel.js";import"./components/data/condition-builder/condition-builder.js";import"./components/agent-tools/confirm-bar/confirm-bar.js";import"./components/viewers/contact-viewer/contact-viewer.js";import"./components/agent-tools/context-inspector/context-inspector.js";import"./components/data/context-meter/context-meter.js";import"./components/layout/control-group/control-group.js";import"./components/conversation/conversation-item/conversation-item.js";import"./components/utility/copy-button/copy-button.js";import"./components/viewers/csv-viewer/csv-viewer.js";import"./components/layout/dashboard-grid/dashboard-grid.js";import"./components/data/data-grid/data-grid.js";import"./components/viewers/dataset-viewer/dataset-viewer.js";import"./components/forms/date-picker/date-input.js";import"./components/forms/date-picker/date-picker.js";import"./components/layout/details/details.js";import"./components/overlays/dialog/dialog.js";import"./components/utility/diff-view/diff-view.js";import"./components/utility/divider/divider.js";import"./components/layout/dock-panel/dock-panel.js";import"./components/viewers/document-compare/document-compare.js";import"./components/data/document-library/document-library.js";import"./components/viewers/document-preview/document-preview.js";import"./components/viewers/document-viewer/document-viewer.js";import"./components/viewers/docx-viewer/docx-viewer.js";import"./components/overlays/drawer/drawer.js";import"./components/layout/drilldown-panel/drilldown-panel.js";import"./components/overlays/overlay/dropdown.js";import"./components/layout/menu/dropdown-item.js";import"./components/viewers/ebook-viewer/ebook-viewer.js";import"./components/viewers/email-viewer/email-viewer.js";import"./components/retrieval/embedding-explorer/embedding-explorer.js";import"./components/forms/emoji-picker/emoji-picker.js";import"./components/overlays/empty/empty.js";import"./components/retrieval/entity-card/entity-card.js";import"./components/retrieval/entity-chip/entity-chip.js";import"./components/retrieval/entity-dossier/entity-dossier.js";import"./components/data/env-list/env-list.js";import"./components/agent-tools/eval-dataset/eval-dataset.js";import"./components/agent-tools/eval-result/eval-result.js";import"./components/agent-tools/evaluation-run/evaluation-run.js";import"./components/utility/export-button/export-button.js";import"./components/media/file-icon/file-icon.js";import"./components/media/file-input/file-input.js";import"./components/data/file-tree/file-tree.js";import"./components/layout/filter-bar/filter-bar.js";import"./components/media/flag/flag.js";import"./components/data/flow-canvas/flow-canvas.js";import"./components/data/flow-controls/flow-controls.js";import"./components/data/flow-minimap/flow-minimap.js";import"./components/data/flow-node/flow-node.js";import"./components/data/flow-run-status/flow-run-status.js";import"./components/utility/format/format-bytes.js";import"./components/utility/format/format-date.js";import"./components/utility/format/format-number.js";import"./components/data/gauge/gauge.js";import"./components/conversation/generation-metrics/generation-metrics.js";import"./components/retrieval/graph-legend/graph-legend.js";import"./components/data/graph-query-builder/graph-query-builder.js";import"./components/retrieval/grounding-summary/grounding-summary.js";import"./components/conversation/handoff-divider/handoff-divider.js";import"./components/data/heatmap/heatmap.js";import"./components/viewers/highlight-layer/highlight-layer.js";import"./components/viewers/html-viewer/html-viewer.js";import"./components/utility/icon/icon.js";import"./components/forms/icon-button/icon-button.js";import"./components/media/image-comparer/image-comparer.js";import"./components/media/image-viewer/image-viewer.js";import"./components/viewers/include/include.js";import"./components/retrieval/ingestion-queue/ingestion-queue.js";import"./components/forms/input/input.js";import"./components/utility/intersection-observer/intersection-observer.js";import"./components/agent-tools/schema-viewer/schema-viewer.js";import"./components/utility/json-viewer/json-viewer.js";import"./components/overlays/kbd/kbd.js";import"./components/retrieval/knowledge-base/knowledge-base.js";import"./components/retrieval/knowledge-base-admin/knowledge-base-admin.js";import"./components/utility/known-date/known-date.js";import"./components/media/lightbox/lightbox.js";import"./components/charts/chart/lite-chart.js";import"./components/utility/live-region/live-region.js";import"./components/forms/locale-picker/locale-picker.js";import"./components/conversation/markdown/markdown.js";import"./components/conversation/markdown/markdown-core.js";import"./components/agent-tools/mcp-app/mcp-app.js";import"./components/media/media-card/media-card.js";import"./components/retrieval/memory-panel/memory-panel.js";import"./components/utility/mention-popover/mention-popover.js";import"./components/layout/menu/menu.js";import"./components/layout/menu/menu-item.js";import"./components/layout/menu/menu-label.js";import"./components/conversation/message-actions/message-actions.js";import"./components/conversation/message-feedback/message-feedback.js";import"./components/conversation/message-parts/message-parts.js";import"./components/retrieval/mind-map/mind-map.js";import"./components/conversation/model-select/model-select.js";import"./components/conversation/model-settings-panel/model-settings-panel.js";import"./components/layout/multi-split/multi-split.js";import"./components/utility/mutation-observer/mutation-observer.js";import"./components/forms/input/native-time-input.js";import"./components/retrieval/neighbor-list/neighbor-list.js";import"./components/retrieval/node-palette/node-palette.js";import"./components/viewers/notebook-viewer/notebook-viewer.js";import"./components/forms/input/number-input.js";import"./components/forms/combobox/option.js";import"./components/forms/otp-input/otp-input.js";import"./components/layout/page/page.js";import"./components/viewers/page-rail/page-rail.js";import"./components/data/pagination/pagination.js";import"./components/media/pan-zoom/pan-zoom.js";import"./components/retrieval/path-strip/path-strip.js";import"./components/viewers/pdf-viewer/pdf-viewer.js";import"./components/forms/phone-input/phone-input.js";import"./components/agent-tools/policy-summary/policy-summary.js";import"./components/utility/poll-status/poll-status.js";import"./components/overlays/overlay/popover.js";import"./components/overlays/popup/popup.js";import"./components/viewers/pptx-viewer/pptx-viewer.js";import"./components/overlays/progress/progress-bar.js";import"./components/overlays/progress/progress-ring.js";import"./components/conversation/prompt-input/prompt-input.js";import"./components/conversation/prompt-queue/prompt-queue.js";import"./components/agent-tools/prompt-studio/prompt-studio.js";import"./components/retrieval/provenance-panel/provenance-panel.js";import"./components/conversation/push-to-talk/push-to-talk.js";import"./components/media/qr-code/qr-code.js";import"./components/forms/radio/radio.js";import"./components/forms/radio/radio-button.js";import"./components/forms/radio/radio-group.js";import"./components/retrieval/rag-answer/rag-answer.js";import"./components/retrieval/rag-eval-dashboard/rag-eval-dashboard.js";import"./components/utility/random-content/random-content.js";import"./components/overlays/rating/rating.js";import"./components/conversation/realtime-session/realtime-session.js";import"./components/utility/format/relative-time.js";import"./components/layout/reorder-list/reorder-item.js";import"./components/layout/reorder-list/reorder-list.js";import"./components/utility/resize-observer/resize-observer.js";import"./components/layout/responsive-panel/responsive-panel.js";import"./components/agent-tools/result-card/result-card.js";import"./components/agent-tools/result-card/result-field.js";import"./components/retrieval/retrieval-compare/retrieval-compare.js";import"./components/retrieval/retrieval-results/retrieval-results.js";import"./components/retrieval/retrieval-search/retrieval-search.js";import"./components/retrieval/retrieval-trace/retrieval-trace.js";import"./components/forms/rubric-form/rubric-form.js";import"./components/layout/scroller/scroller.js";import"./components/layout/segmented/segmented.js";import"./components/forms/select/select.js";import"./components/conversation/selection-toolbar/selection-toolbar.js";import"./components/media/sequence-playback/sequence-playback.js";import"./components/data/sequence-strip/sequence-strip.js";import"./components/overlays/skeleton/skeleton.js";import"./components/forms/slider/slider.js";import"./components/retrieval/source-card/source-card.js";import"./components/retrieval/source-list/source-list.js";import"./components/retrieval/source-picker/source-picker.js";import"./components/agent-tools/span-waterfall/span-waterfall.js";import"./components/data/sparkline/sparkline.js";import"./components/overlays/spinner/spinner.js";import"./components/layout/split-panel/split-panel.js";import"./components/viewers/spreadsheet-viewer/spreadsheet-viewer.js";import"./components/agent-tools/stack-trace/stack-trace.js";import"./components/data/stat/stat.js";import"./components/layout/stepper/stepper.js";import"./components/conversation/stream-status/stream-status.js";import"./components/conversation/streaming-text/streaming-text.js";import"./components/agent-tools/subagent-panel/subagent-panel.js";import"./components/conversation/suggestion-chips/suggestion-chips.js";import"./components/viewers/svg-viewer/svg-viewer.js";import"./components/forms/swatch-picker/swatch-picker.js";import"./components/forms/switch/switch.js";import"./components/layout/tab-group/tab.js";import"./components/layout/tab-group/tab-group.js";import"./components/layout/tab-group/tab-panel.js";import"./components/data/table/table.js";import"./components/overlays/badge/tag.js";import"./components/agent-tools/task-list/task-list.js";import"./components/agent-tools/terminal/terminal.js";import"./components/agent-tools/test-results/test-results.js";import"./components/forms/textarea/textarea.js";import"./components/agent-tools/thinking-panel/thinking-panel.js";import"./components/conversation/thread-list/thread-list.js";import"./components/forms/input/time-input.js";import"./components/forms/time-range/time-range.js";import"./components/data/timeline/timeline.js";import"./components/data/timeline/timeline-item.js";import"./components/overlays/toast/toast.js";import"./components/overlays/toast/toast-item.js";import"./components/forms/token-input/token-input.js";import"./components/agent-tools/tool-approval-dialog/tool-approval-dialog.js";import"./components/agent-tools/tool-call-chip/tool-call-chip.js";import"./components/agent-tools/tool-param-form/tool-param-form.js";import"./components/agent-tools/tool-result-dialog/tool-result-dialog.js";import"./components/agent-tools/tool-result-view/tool-result-view.js";import"./components/agent-tools/tool-select-dialog/tool-select-dialog.js";import"./components/agent-tools/tool-timeline/tool-timeline.js";import"./components/overlays/overlay/tooltip.js";import"./components/utility/tour/tour.js";import"./components/agent-tools/trace-tree/trace-tree.js";import"./components/conversation/transcript-feed/transcript-feed.js";import"./components/data/tree/tree.js";import"./components/data/tree/tree-item.js";import"./components/conversation/typing-indicator/typing-indicator.js";import"./components/conversation/usage-badge/usage-badge.js";import"./components/media/video/video.js";import"./components/media/video-playlist/video-playlist.js";import"./components/layout/virtual-list/virtual-list.js";import"./components/utility/visually-hidden/visually-hidden.js";import"./components/conversation/voice-picker/voice-picker.js";import"./components/layout/widget/widget.js";import"./components/conversation/widget-renderer/widget-renderer.js";import"./components/data/word-cloud/word-cloud.js";import"./components/viewers/xml-viewer/xml-viewer.js";import"./components/media/zoomable-frame/zoomable-frame.js";import"./components/viewers/archive-viewer/archive-viewer-register.js";import"./components/viewers/ebook-viewer/ebook-viewer-register.js";export*from"./lyra.js";
|
|
1
|
+
import"./components/layout/details/accordion.js";import"./components/layout/details/accordion-item.js";import"./components/agent-tools/activity-feed/activity-feed.js";import"./components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.js";import"./components/agent-tools/agent-run/agent-run.js";import"./components/agent-tools/agent-trace/agent-trace.js";import"./components/conversation/agent-workspace/agent-workspace.js";import"./components/overlays/alert/alert.js";import"./components/media/animated-image/animated-image.js";import"./components/media/animation/animation.js";import"./components/layout/app-rail/app-rail.js";import"./components/layout/app-rail/app-rail-item.js";import"./components/agent-tools/approval-queue/approval-queue.js";import"./components/viewers/archive-viewer/archive-viewer.js";import"./components/agent-tools/artifact-panel/artifact-panel.js";import"./components/media/attachment-chip/attachment-chip.js";import"./components/media/attachment-trigger/attachment-trigger.js";import"./components/conversation/audio-visualizer/audio-visualizer.js";import"./components/media/av-player/av-player.js";import"./components/media/avatar/avatar.js";import"./components/media/avatar-group/avatar-group.js";import"./components/overlays/badge/badge.js";import"./components/conversation/branch-picker/branch-picker.js";import"./components/layout/breadcrumb/breadcrumb.js";import"./components/layout/breadcrumb/breadcrumb-item.js";import"./components/agent-tools/browser-frame/browser-frame.js";import"./components/forms/button/button.js";import"./components/layout/button-group/button-group.js";import"./components/data/calendar/calendar.js";import"./components/viewers/calendar-viewer/calendar-viewer.js";import"./components/overlays/callout/callout.js";import"./components/layout/card/card.js";import"./components/layout/carousel/carousel.js";import"./components/layout/carousel/carousel-item.js";import"./components/conversation/chat-composer/chat-composer.js";import"./components/conversation/chat-message/chat-message.js";import"./components/conversation/chat-viewport/chat-viewport.js";import"./components/forms/checkbox/checkbox.js";import"./components/forms/checkbox-group/checkbox-group.js";import"./components/conversation/checkpoint/checkpoint.js";import"./components/overlays/chip/chip.js";import"./components/overlays/chip/chip-group.js";import"./components/retrieval/chunk-inspector/chunk-inspector.js";import"./components/retrieval/citation-badge/citation-badge.js";import"./components/retrieval/claim-evidence/claim-evidence.js";import"./components/conversation/code-block/code-block.js";import"./components/conversation/code-block/code-block-core.js";import"./components/forms/code-editor/code-editor.js";import"./components/forms/color-picker/color-picker.js";import"./components/forms/combobox/combobox.js";import"./components/layout/command-palette/command-palette.js";import"./components/agent-tools/commit-card/commit-card.js";import"./components/retrieval/community-card/community-card.js";import"./components/agent-tools/compare-panel/compare-panel.js";import"./components/data/condition-builder/condition-builder.js";import"./components/agent-tools/confirm-bar/confirm-bar.js";import"./components/viewers/contact-viewer/contact-viewer.js";import"./components/agent-tools/context-inspector/context-inspector.js";import"./components/data/context-meter/context-meter.js";import"./components/layout/control-group/control-group.js";import"./components/conversation/conversation-item/conversation-item.js";import"./components/utility/copy-button/copy-button.js";import"./components/viewers/csv-viewer/csv-viewer.js";import"./components/layout/dashboard-grid/dashboard-grid.js";import"./components/data/data-grid/data-grid.js";import"./components/viewers/dataset-viewer/dataset-viewer.js";import"./components/forms/date-picker/date-input.js";import"./components/forms/date-picker/date-picker.js";import"./components/layout/details/details.js";import"./components/overlays/dialog/dialog.js";import"./components/utility/diff-view/diff-view.js";import"./components/utility/divider/divider.js";import"./components/layout/dock-panel/dock-panel.js";import"./components/viewers/document-compare/document-compare.js";import"./components/data/document-library/document-library.js";import"./components/viewers/document-preview/document-preview.js";import"./components/viewers/document-viewer/document-viewer.js";import"./components/viewers/docx-viewer/docx-viewer.js";import"./components/overlays/drawer/drawer.js";import"./components/layout/drilldown-panel/drilldown-panel.js";import"./components/overlays/overlay/dropdown.js";import"./components/layout/menu/dropdown-item.js";import"./components/viewers/ebook-viewer/ebook-viewer.js";import"./components/viewers/email-viewer/email-viewer.js";import"./components/retrieval/embedding-explorer/embedding-explorer.js";import"./components/forms/emoji-picker/emoji-picker.js";import"./components/overlays/empty/empty.js";import"./components/retrieval/entity-card/entity-card.js";import"./components/retrieval/entity-chip/entity-chip.js";import"./components/retrieval/entity-dossier/entity-dossier.js";import"./components/data/env-list/env-list.js";import"./components/agent-tools/eval-dataset/eval-dataset.js";import"./components/agent-tools/eval-result/eval-result.js";import"./components/agent-tools/evaluation-run/evaluation-run.js";import"./components/utility/export-button/export-button.js";import"./components/media/file-icon/file-icon.js";import"./components/media/file-input/file-input.js";import"./components/data/file-tree/file-tree.js";import"./components/layout/filter-bar/filter-bar.js";import"./components/media/flag/flag.js";import"./components/data/flow-canvas/flow-canvas.js";import"./components/data/flow-controls/flow-controls.js";import"./components/data/flow-minimap/flow-minimap.js";import"./components/data/flow-node/flow-node.js";import"./components/data/flow-run-status/flow-run-status.js";import"./components/utility/format/format-bytes.js";import"./components/utility/format/format-date.js";import"./components/utility/format/format-number.js";import"./components/data/funnel/funnel.js";import"./components/data/gauge/gauge.js";import"./components/conversation/generation-metrics/generation-metrics.js";import"./components/retrieval/graph-legend/graph-legend.js";import"./components/data/graph-query-builder/graph-query-builder.js";import"./components/retrieval/grounding-summary/grounding-summary.js";import"./components/conversation/handoff-divider/handoff-divider.js";import"./components/data/heatmap/heatmap.js";import"./components/viewers/highlight-layer/highlight-layer.js";import"./components/viewers/html-viewer/html-viewer.js";import"./components/utility/icon/icon.js";import"./components/forms/icon-button/icon-button.js";import"./components/media/image-comparer/image-comparer.js";import"./components/media/image-viewer/image-viewer.js";import"./components/viewers/include/include.js";import"./components/retrieval/ingestion-queue/ingestion-queue.js";import"./components/forms/input/input.js";import"./components/utility/intersection-observer/intersection-observer.js";import"./components/agent-tools/schema-viewer/schema-viewer.js";import"./components/utility/json-viewer/json-viewer.js";import"./components/overlays/kbd/kbd.js";import"./components/retrieval/knowledge-base/knowledge-base.js";import"./components/retrieval/knowledge-base-admin/knowledge-base-admin.js";import"./components/utility/known-date/known-date.js";import"./components/media/lightbox/lightbox.js";import"./components/charts/chart/lite-chart.js";import"./components/utility/live-region/live-region.js";import"./components/forms/locale-picker/locale-picker.js";import"./components/conversation/markdown/markdown.js";import"./components/conversation/markdown/markdown-core.js";import"./components/agent-tools/mcp-app/mcp-app.js";import"./components/media/media-card/media-card.js";import"./components/retrieval/memory-panel/memory-panel.js";import"./components/utility/mention-popover/mention-popover.js";import"./components/layout/menu/menu.js";import"./components/layout/menu/menu-item.js";import"./components/layout/menu/menu-label.js";import"./components/conversation/message-actions/message-actions.js";import"./components/conversation/message-feedback/message-feedback.js";import"./components/conversation/message-parts/message-parts.js";import"./components/retrieval/mind-map/mind-map.js";import"./components/conversation/model-select/model-select.js";import"./components/conversation/model-settings-panel/model-settings-panel.js";import"./components/layout/multi-split/multi-split.js";import"./components/utility/mutation-observer/mutation-observer.js";import"./components/forms/input/native-time-input.js";import"./components/retrieval/neighbor-list/neighbor-list.js";import"./components/retrieval/node-palette/node-palette.js";import"./components/viewers/notebook-viewer/notebook-viewer.js";import"./components/forms/input/number-input.js";import"./components/forms/combobox/option.js";import"./components/forms/otp-input/otp-input.js";import"./components/layout/page/page.js";import"./components/viewers/page-rail/page-rail.js";import"./components/data/pagination/pagination.js";import"./components/media/pan-zoom/pan-zoom.js";import"./components/retrieval/path-strip/path-strip.js";import"./components/viewers/pdf-viewer/pdf-viewer.js";import"./components/forms/phone-input/phone-input.js";import"./components/agent-tools/policy-summary/policy-summary.js";import"./components/utility/poll-status/poll-status.js";import"./components/overlays/overlay/popover.js";import"./components/overlays/popup/popup.js";import"./components/viewers/pptx-viewer/pptx-viewer.js";import"./components/overlays/progress/progress-bar.js";import"./components/overlays/progress/progress-ring.js";import"./components/conversation/prompt-input/prompt-input.js";import"./components/conversation/prompt-queue/prompt-queue.js";import"./components/agent-tools/prompt-studio/prompt-studio.js";import"./components/retrieval/provenance-panel/provenance-panel.js";import"./components/conversation/push-to-talk/push-to-talk.js";import"./components/media/qr-code/qr-code.js";import"./components/forms/radio/radio.js";import"./components/forms/radio/radio-button.js";import"./components/forms/radio/radio-group.js";import"./components/retrieval/rag-answer/rag-answer.js";import"./components/retrieval/rag-eval-dashboard/rag-eval-dashboard.js";import"./components/utility/random-content/random-content.js";import"./components/overlays/rating/rating.js";import"./components/conversation/realtime-session/realtime-session.js";import"./components/utility/format/relative-time.js";import"./components/layout/reorder-list/reorder-item.js";import"./components/layout/reorder-list/reorder-list.js";import"./components/utility/resize-observer/resize-observer.js";import"./components/layout/responsive-panel/responsive-panel.js";import"./components/agent-tools/result-card/result-card.js";import"./components/agent-tools/result-card/result-field.js";import"./components/retrieval/retrieval-compare/retrieval-compare.js";import"./components/retrieval/retrieval-results/retrieval-results.js";import"./components/retrieval/retrieval-search/retrieval-search.js";import"./components/retrieval/retrieval-trace/retrieval-trace.js";import"./components/forms/rubric-form/rubric-form.js";import"./components/layout/scroller/scroller.js";import"./components/layout/segmented/segmented.js";import"./components/forms/select/select.js";import"./components/conversation/selection-toolbar/selection-toolbar.js";import"./components/media/sequence-playback/sequence-playback.js";import"./components/data/sequence-strip/sequence-strip.js";import"./components/overlays/skeleton/skeleton.js";import"./components/forms/slider/slider.js";import"./components/retrieval/source-card/source-card.js";import"./components/retrieval/source-list/source-list.js";import"./components/retrieval/source-picker/source-picker.js";import"./components/agent-tools/span-waterfall/span-waterfall.js";import"./components/data/sparkline/sparkline.js";import"./components/overlays/spinner/spinner.js";import"./components/layout/split-panel/split-panel.js";import"./components/viewers/spreadsheet-viewer/spreadsheet-viewer.js";import"./components/agent-tools/stack-trace/stack-trace.js";import"./components/data/stat/stat.js";import"./components/layout/stepper/stepper.js";import"./components/conversation/stream-status/stream-status.js";import"./components/conversation/streaming-text/streaming-text.js";import"./components/agent-tools/subagent-panel/subagent-panel.js";import"./components/conversation/suggestion-chips/suggestion-chips.js";import"./components/viewers/svg-viewer/svg-viewer.js";import"./components/forms/swatch-picker/swatch-picker.js";import"./components/forms/switch/switch.js";import"./components/layout/tab-group/tab.js";import"./components/layout/tab-group/tab-group.js";import"./components/layout/tab-group/tab-panel.js";import"./components/data/table/table.js";import"./components/overlays/badge/tag.js";import"./components/agent-tools/task-list/task-list.js";import"./components/agent-tools/terminal/terminal.js";import"./components/agent-tools/test-results/test-results.js";import"./components/forms/textarea/textarea.js";import"./components/agent-tools/thinking-panel/thinking-panel.js";import"./components/conversation/thread-list/thread-list.js";import"./components/forms/input/time-input.js";import"./components/forms/time-range/time-range.js";import"./components/data/timeline/timeline.js";import"./components/data/timeline/timeline-item.js";import"./components/overlays/toast/toast.js";import"./components/overlays/toast/toast-item.js";import"./components/forms/token-input/token-input.js";import"./components/agent-tools/tool-approval-dialog/tool-approval-dialog.js";import"./components/agent-tools/tool-call-chip/tool-call-chip.js";import"./components/agent-tools/tool-param-form/tool-param-form.js";import"./components/agent-tools/tool-result-dialog/tool-result-dialog.js";import"./components/agent-tools/tool-result-view/tool-result-view.js";import"./components/agent-tools/tool-select-dialog/tool-select-dialog.js";import"./components/agent-tools/tool-timeline/tool-timeline.js";import"./components/overlays/overlay/tooltip.js";import"./components/utility/tour/tour.js";import"./components/agent-tools/trace-tree/trace-tree.js";import"./components/conversation/transcript-feed/transcript-feed.js";import"./components/data/tree/tree.js";import"./components/data/tree/tree-item.js";import"./components/conversation/typing-indicator/typing-indicator.js";import"./components/conversation/usage-badge/usage-badge.js";import"./components/media/video/video.js";import"./components/media/video-playlist/video-playlist.js";import"./components/layout/virtual-list/virtual-list.js";import"./components/utility/visually-hidden/visually-hidden.js";import"./components/conversation/voice-picker/voice-picker.js";import"./components/layout/widget/widget.js";import"./components/conversation/widget-renderer/widget-renderer.js";import"./components/data/word-cloud/word-cloud.js";import"./components/viewers/xml-viewer/xml-viewer.js";import"./components/media/zoomable-frame/zoomable-frame.js";import"./components/viewers/archive-viewer/archive-viewer-register.js";import"./components/viewers/ebook-viewer/ebook-viewer-register.js";export*from"./lyra.js";
|
|
@@ -322,7 +322,19 @@ export declare class LyraChart extends LyraElement<LyraChartEventMap> {
|
|
|
322
322
|
* indexes are ignored when state is applied or emitted.
|
|
323
323
|
*/
|
|
324
324
|
hiddenDatasets?: readonly number[];
|
|
325
|
-
/**
|
|
325
|
+
/**
|
|
326
|
+
* Accessible chart description, which REPLACES the generated summary rather than adding to it.
|
|
327
|
+
*
|
|
328
|
+
* Left unset, the component builds an sr-only per-series summary from the actual data. Setting
|
|
329
|
+
* this discards that summary entirely and substitutes your text -- a full override, which is the
|
|
330
|
+
* right tool when you can describe the chart better than a generic walk of the series can.
|
|
331
|
+
*
|
|
332
|
+
* It is the wrong tool for adding a caveat ("excludes returns", "sampled hourly") on top of the
|
|
333
|
+
* data summary: you would trade the whole summary for the caveat, and a consumer reasonably read
|
|
334
|
+
* the old one-line doc as additive and did exactly that. For a caveat, prefer visible text beside
|
|
335
|
+
* the chart -- a note only screen-reader users hear is worse for everyone than one everybody
|
|
336
|
+
* sees -- or fold the data into your own `description` text if you are overriding anyway.
|
|
337
|
+
*/
|
|
326
338
|
description: string | null;
|
|
327
339
|
/** Controls which cartesian grid axes are drawn. */
|
|
328
340
|
grid: LyraChartGrid;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { type TemplateResult } from 'lit';
|
|
2
|
+
import { LyraElement } from '../../../internal/lyra-element.js';
|
|
3
|
+
/** One ordered step of a conversion funnel. */
|
|
4
|
+
export interface LyraFunnelStage {
|
|
5
|
+
/** Stage name, rendered beside the bar and read as the row's own text. Caller-owned copy. */
|
|
6
|
+
readonly label: string;
|
|
7
|
+
/** Absolute count or measure for the stage. Non-finite input is treated as 0. */
|
|
8
|
+
readonly value: number;
|
|
9
|
+
/** CSS color for this stage's bar. Unparseable values fall back to the shared bar color. */
|
|
10
|
+
readonly color?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* `<lr-funnel>` — a dependency-free conversion funnel: an ordered set of stages, each drawn as a
|
|
14
|
+
* bar whose length is that stage's share of the FIRST stage, read top-to-bottom as progressive
|
|
15
|
+
* drop-off.
|
|
16
|
+
*
|
|
17
|
+
* This is an analytics primitive rather than a general chart type — a sibling of `<lr-gauge>` and
|
|
18
|
+
* `<lr-heatmap>` rather than of the Chart.js-backed chart family, and it pulls no charting peer.
|
|
19
|
+
* It renders plain HTML, so stage names, absolute values, shares and drop-off percentages are real
|
|
20
|
+
* text in the DOM rather than a sighted-only drawing with a separate transcript bolted on.
|
|
21
|
+
*
|
|
22
|
+
* A funnel is deliberately not a sorted bar chart: it normalizes to the first stage instead of the
|
|
23
|
+
* data maximum, draws no value axis, and reads as stage-to-stage retention rather than category
|
|
24
|
+
* comparison.
|
|
25
|
+
*
|
|
26
|
+
* Degenerate inputs are defined rather than avoided:
|
|
27
|
+
*
|
|
28
|
+
* - An empty series renders the localized empty state and no list.
|
|
29
|
+
* - A single stage renders one full-length bar and no drop-off row.
|
|
30
|
+
* - A zero or negative first stage cannot define a share, so shares and drop-off percentages are
|
|
31
|
+
* omitted, every bar is zero-length, and the absolute values still render.
|
|
32
|
+
* - A stage larger than its predecessor (funnel re-entry) reports its true share above 100% in
|
|
33
|
+
* text while its bar clamps to the track, carrying the extra bar-overflow part token.
|
|
34
|
+
* - A comparison series of a different length pairs by index: extra comparison entries are
|
|
35
|
+
* ignored, and stages past its end simply get no comparison bar.
|
|
36
|
+
*
|
|
37
|
+
* @customElement lr-funnel
|
|
38
|
+
* @csspart base - The container element.
|
|
39
|
+
* @csspart stages - The ordered list of stages.
|
|
40
|
+
* @csspart stage - One stage row.
|
|
41
|
+
* @csspart dropoff - The change from the previous stage, above each stage after the first.
|
|
42
|
+
* @csspart stage-header - The text row above a stage's bar.
|
|
43
|
+
* @csspart stage-label - A stage's name.
|
|
44
|
+
* @csspart stage-value - A stage's absolute value.
|
|
45
|
+
* @csspart stage-share - A stage's share of the first stage.
|
|
46
|
+
* @csspart comparison-value - The comparison series' share for a stage.
|
|
47
|
+
* @csspart track - The full-length groove a stage's bar is drawn in.
|
|
48
|
+
* @csspart bar - A stage's bar.
|
|
49
|
+
* @csspart bar-overflow - Added to bar when the stage exceeds the first stage.
|
|
50
|
+
* @csspart comparison-bar - The comparison series' outline drawn behind a stage's bar.
|
|
51
|
+
* @csspart empty - The empty state shown when there are no stages.
|
|
52
|
+
* @cssprop [--lr-funnel-bar-color=var(--lr-color-brand)] - Fill of every stage bar that has no own color.
|
|
53
|
+
* @cssprop [--lr-funnel-comparison-color=var(--lr-color-border-strong)] - Outline of the comparison bars.
|
|
54
|
+
* @cssprop [--lr-funnel-track-color=var(--lr-color-surface-raised)] - Background of the bar track.
|
|
55
|
+
* @cssprop [--lr-funnel-bar-size=var(--lr-size-1-5rem)] - Thickness of a stage's track.
|
|
56
|
+
* @status experimental
|
|
57
|
+
* @since 12.0.0
|
|
58
|
+
*/
|
|
59
|
+
export declare class LyraFunnel extends LyraElement {
|
|
60
|
+
static styles: import("lit").CSSResultGroup[];
|
|
61
|
+
/** The ordered stages, first to last. Every share is measured against the first entry. */
|
|
62
|
+
stages: readonly LyraFunnelStage[];
|
|
63
|
+
/**
|
|
64
|
+
* An optional baseline/peer cohort drawn behind each bar as an outline. It is normalized to its
|
|
65
|
+
* OWN first stage, so a funnel's shape stays comparable against a baseline whose absolute
|
|
66
|
+
* volumes are not comparable at all.
|
|
67
|
+
*/
|
|
68
|
+
comparison: readonly LyraFunnelStage[];
|
|
69
|
+
/** Name for the comparison series. Falls back to a localized generic label. */
|
|
70
|
+
comparisonLabel: string;
|
|
71
|
+
/** Accessible name for the stage list. A host `aria-label` wins over it. */
|
|
72
|
+
label: string;
|
|
73
|
+
/** Whether the change from the previous stage is rendered above each later stage. */
|
|
74
|
+
dropoff: boolean;
|
|
75
|
+
/** Fraction digits used for every share and drop-off percentage. */
|
|
76
|
+
sharePrecision: number;
|
|
77
|
+
private get precision();
|
|
78
|
+
private formatValue;
|
|
79
|
+
private formatShare;
|
|
80
|
+
/** Resolves every stage's geometry and text inputs in one pass so render stays declarative. */
|
|
81
|
+
private resolveStages;
|
|
82
|
+
/** Clamped bar length as a CSS percentage; a share above 1 fills the track without spilling. */
|
|
83
|
+
private barLength;
|
|
84
|
+
private changeText;
|
|
85
|
+
private renderStage;
|
|
86
|
+
render(): TemplateResult;
|
|
87
|
+
}
|
|
88
|
+
declare global {
|
|
89
|
+
interface HTMLElementTagNameMap {
|
|
90
|
+
'lr-funnel': LyraFunnel;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
var __decorate=function(decorators,target,key,desc){var c=arguments.length,r=c<3?target:desc===null?desc=Object.getOwnPropertyDescriptor(target,key):desc,d;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(decorators,target,key,desc);else for(var i=decorators.length-1;i>=0;i--)(d=decorators[i])&&(r=(c<3?d(r):c>3?d(target,key,r):d(target,key))||r);return c>3&&r&&Object.defineProperty(target,key,r),r};import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{styleMap}from"lit/directives/style-map.js";import{LyraElement}from"../../../internal/lyra-element.js";import{hostAriaLabel}from"../../../internal/a11y.js";import{getNumberFormat}from"../../../internal/intl-cache.js";import{finiteInteger,finiteNumber}from"../../../internal/numbers.js";import{trueDefaultBooleanConverter}from"../../../internal/converters.js";import{sanitizeCssColor}from"../../../internal/safe-css.js";import{styles}from"./funnel.styles.js";import{LYRA_DEFAULT_chart,LYRA_DEFAULT_comparePanel,LYRA_DEFAULT_contextMeterLabeledSummary,LYRA_DEFAULT_noData,LYRA_DEFAULT_statTrendDecreased,LYRA_DEFAULT_statTrendIncreased,LYRA_DEFAULT_trendUnchanged}from"../../../internal/default-strings.generated.js";const MAX_SHARE_PRECISION=20;class LyraFunnel extends LyraElement{constructor(){super(...arguments),this.stages=[],this.comparison=[],this.comparisonLabel="",this.label="",this.dropoff=!0,this.sharePrecision=0}static{this.defaultStrings={...super.defaultStrings,chart:LYRA_DEFAULT_chart,comparePanel:LYRA_DEFAULT_comparePanel,contextMeterLabeledSummary:LYRA_DEFAULT_contextMeterLabeledSummary,noData:LYRA_DEFAULT_noData,statTrendDecreased:LYRA_DEFAULT_statTrendDecreased,statTrendIncreased:LYRA_DEFAULT_statTrendIncreased,trendUnchanged:LYRA_DEFAULT_trendUnchanged}}static{this.styles=[LyraElement.styles,styles]}get precision(){return finiteInteger(this.sharePrecision,0,0,MAX_SHARE_PRECISION)}formatValue(value){return getNumberFormat(this.effectiveLocale).format(value)}formatShare(ratio){const precision=this.precision;return getNumberFormat(this.effectiveLocale,{style:"percent",minimumFractionDigits:precision,maximumFractionDigits:precision}).format(ratio)}resolveStages(){const values=this.stages.map(stage=>finiteNumber(stage.value,0)),base=values[0]??0,hasBase=base>0,comparisonValues=this.comparison.map(stage=>finiteNumber(stage.value,0)),comparisonBase=comparisonValues[0]??0,hasComparisonBase=comparisonBase>0;return this.stages.map((stage,index)=>{const value=values[index]??0,previous=values[index-1],comparisonValue=comparisonValues[index];return{stage,value,share:hasBase?value/base:null,change:index>0&&previous!==void 0&&previous>0?(value-previous)/previous:null,comparisonShare:hasComparisonBase&&comparisonValue!==void 0?comparisonValue/comparisonBase:null}})}barLength(share){return`${(share===null?0:Math.min(1,Math.max(0,finiteNumber(share,0))))*100}%`}changeText(change){return change===0?this.localize("trendUnchanged"):this.localize(change>0?"statTrendIncreased":"statTrendDecreased",void 0,{value:this.formatShare(Math.abs(change))})}renderStage(resolved){const{stage,value,share,change,comparisonShare}=resolved,barColor=sanitizeCssColor(stage.color),barPart=share!==null&&share>1?"bar bar-overflow":"bar",comparisonName=this.comparisonLabel||this.localize("comparePanel");return html`<li part="stage">
|
|
2
|
+
${this.dropoff&&change!==null?html`<span part="dropoff">${this.changeText(change)}</span>`:nothing}
|
|
3
|
+
<span part="stage-header">
|
|
4
|
+
<span part="stage-label">${stage.label}</span>
|
|
5
|
+
<span part="stage-value">${this.formatValue(value)}</span>
|
|
6
|
+
${share===null?nothing:html`<span part="stage-share">${this.formatShare(share)}</span>`}
|
|
7
|
+
${comparisonShare===null?nothing:html`<span part="comparison-value"
|
|
8
|
+
>${this.localize("contextMeterLabeledSummary",void 0,{label:comparisonName,summary:this.formatShare(comparisonShare)})}</span
|
|
9
|
+
>`}
|
|
10
|
+
</span>
|
|
11
|
+
<span part="track">
|
|
12
|
+
${comparisonShare===null?nothing:html`<span
|
|
13
|
+
part="comparison-bar"
|
|
14
|
+
style=${styleMap({inlineSize:this.barLength(comparisonShare)})}
|
|
15
|
+
></span>`}
|
|
16
|
+
<span
|
|
17
|
+
part=${barPart}
|
|
18
|
+
style=${styleMap({inlineSize:this.barLength(share),...barColor===void 0?{}:{backgroundColor:barColor}})}
|
|
19
|
+
></span>
|
|
20
|
+
</span>
|
|
21
|
+
</li>`}render(){const resolved=this.resolveStages();if(resolved.length===0)return html`<div part="base"><p part="empty">${this.localize("noData")}</p></div>`;const name=hostAriaLabel(this)??(this.label||this.localize("chart"));return html`<div part="base">
|
|
22
|
+
<ol part="stages" aria-label=${name}>
|
|
23
|
+
${resolved.map(entry=>this.renderStage(entry))}
|
|
24
|
+
</ol>
|
|
25
|
+
</div>`}}__decorate([property({attribute:!1})],LyraFunnel.prototype,"stages",void 0),__decorate([property({attribute:!1})],LyraFunnel.prototype,"comparison",void 0),__decorate([property({attribute:"comparison-label"})],LyraFunnel.prototype,"comparisonLabel",void 0),__decorate([property()],LyraFunnel.prototype,"label",void 0),__decorate([property({type:Boolean,reflect:!0,converter:trueDefaultBooleanConverter})],LyraFunnel.prototype,"dropoff",void 0),__decorate([property({type:Number,attribute:"share-precision"})],LyraFunnel.prototype,"sharePrecision",void 0);export{LyraFunnel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './funnel.class.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export*from"./funnel.class.js";import{LyraFunnel}from"./funnel.class.js";import{defineElement}from"../../../internal/prefix.js";defineElement("funnel",LyraFunnel);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import{css}from"lit";const styles=css`
|
|
2
|
+
:host {
|
|
3
|
+
display: block;
|
|
4
|
+
font-family: var(--lr-font);
|
|
5
|
+
color: var(--lr-color-text);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
[part='base'] {
|
|
9
|
+
min-inline-size: 0;
|
|
10
|
+
container-type: inline-size;
|
|
11
|
+
contain-intrinsic-inline-size: var(--lr-size-16rem);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
[part='stages'] {
|
|
15
|
+
list-style: none;
|
|
16
|
+
margin: 0;
|
|
17
|
+
padding: 0;
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
gap: var(--lr-space-s);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
[part='stage'] {
|
|
24
|
+
display: flex;
|
|
25
|
+
flex-direction: column;
|
|
26
|
+
gap: var(--lr-space-2xs);
|
|
27
|
+
min-inline-size: 0;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
[part='dropoff'] {
|
|
31
|
+
font-size: var(--lr-font-size-xs);
|
|
32
|
+
color: var(--lr-color-text-quiet);
|
|
33
|
+
align-self: flex-start;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
[part='stage-header'] {
|
|
37
|
+
display: flex;
|
|
38
|
+
flex-wrap: wrap;
|
|
39
|
+
align-items: baseline;
|
|
40
|
+
gap: var(--lr-space-2xs) var(--lr-space-xs);
|
|
41
|
+
min-inline-size: 0;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
[part='stage-label'] {
|
|
45
|
+
flex: 1 1 auto;
|
|
46
|
+
min-inline-size: 0;
|
|
47
|
+
font-size: var(--lr-font-size-sm);
|
|
48
|
+
overflow-wrap: anywhere;
|
|
49
|
+
text-align: start;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
[part='stage-value'] {
|
|
53
|
+
font-size: var(--lr-font-size-sm);
|
|
54
|
+
font-weight: var(--lr-font-weight-semibold);
|
|
55
|
+
font-variant-numeric: tabular-nums;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
[part='stage-share'] {
|
|
59
|
+
font-size: var(--lr-font-size-sm);
|
|
60
|
+
color: var(--lr-color-text-quiet);
|
|
61
|
+
font-variant-numeric: tabular-nums;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
[part='comparison-value'] {
|
|
65
|
+
flex-basis: 100%;
|
|
66
|
+
font-size: var(--lr-font-size-xs);
|
|
67
|
+
color: var(--lr-color-text-quiet);
|
|
68
|
+
text-align: start;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[part='track'] {
|
|
72
|
+
position: relative;
|
|
73
|
+
display: block;
|
|
74
|
+
inline-size: 100%;
|
|
75
|
+
block-size: var(--lr-funnel-bar-size, var(--lr-size-1-5rem));
|
|
76
|
+
background: var(--lr-funnel-track-color, var(--lr-color-surface-raised));
|
|
77
|
+
border-radius: var(--lr-radius-xs);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
[part~='bar'],
|
|
81
|
+
[part='comparison-bar'] {
|
|
82
|
+
position: absolute;
|
|
83
|
+
inset-inline-start: 0;
|
|
84
|
+
border-radius: inherit;
|
|
85
|
+
transition: inline-size var(--lr-transition-base);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
[part='comparison-bar'] {
|
|
89
|
+
inset-block: 0;
|
|
90
|
+
border: var(--lr-size-1px) dashed
|
|
91
|
+
var(--lr-funnel-comparison-color, var(--lr-color-border-strong));
|
|
92
|
+
background: none;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
[part~='bar'] {
|
|
96
|
+
inset-block: 0;
|
|
97
|
+
background: var(--lr-funnel-bar-color, var(--lr-color-brand));
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
[part='comparison-bar'] ~ [part~='bar'] {
|
|
101
|
+
inset-block: var(--lr-size-0-25rem);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
[part~='bar-overflow'] {
|
|
105
|
+
border-inline-end: var(--lr-size-3px) solid var(--lr-color-text);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
[part='empty'] {
|
|
109
|
+
margin: 0;
|
|
110
|
+
font-size: var(--lr-font-size-sm);
|
|
111
|
+
color: var(--lr-color-text-quiet);
|
|
112
|
+
text-align: start;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
@container (max-inline-size: 18rem) {
|
|
116
|
+
[part='stage-label'] {
|
|
117
|
+
flex-basis: 100%;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@media (prefers-reduced-motion: reduce) {
|
|
122
|
+
[part~='bar'],
|
|
123
|
+
[part='comparison-bar'] {
|
|
124
|
+
transition: none;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
`;export{styles};
|