@cognivo/components 0.8.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/LICENSE +21 -0
- package/README.md +119 -0
- package/dist/ai.d.ts +102 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +181 -0
- package/dist/ai.js.map +1 -0
- package/dist/bias.d.ts +21 -0
- package/dist/bias.d.ts.map +1 -0
- package/dist/bias.js +15 -0
- package/dist/bias.js.map +1 -0
- package/dist/chunks/floating-DfsaYJnh.js +103 -0
- package/dist/chunks/floating-DfsaYJnh.js.map +1 -0
- package/dist/chunks/focus-trap-BdRNhSPD.js +53 -0
- package/dist/chunks/focus-trap-BdRNhSPD.js.map +1 -0
- package/dist/chunks/outside-click-CP1P1fK3.js +15 -0
- package/dist/chunks/outside-click-CP1P1fK3.js.map +1 -0
- package/dist/chunks/premium.css-9I4kHrsl.js +466 -0
- package/dist/chunks/premium.css-9I4kHrsl.js.map +1 -0
- package/dist/chunks/roving-index-BuO0tTba.js +31 -0
- package/dist/chunks/roving-index-BuO0tTba.js.map +1 -0
- package/dist/cognivo.min.js +33066 -0
- package/dist/cognivo.min.js.map +1 -0
- package/dist/components/ai-ab-test/ai-ab-test.d.ts +22 -0
- package/dist/components/ai-ab-test/ai-ab-test.d.ts.map +1 -0
- package/dist/components/ai-ab-test/ai-ab-test.js +173 -0
- package/dist/components/ai-ab-test/ai-ab-test.js.map +1 -0
- package/dist/components/ai-accessibility-report/ai-accessibility-report.d.ts +33 -0
- package/dist/components/ai-accessibility-report/ai-accessibility-report.d.ts.map +1 -0
- package/dist/components/ai-accessibility-report/ai-accessibility-report.js +380 -0
- package/dist/components/ai-accessibility-report/ai-accessibility-report.js.map +1 -0
- package/dist/components/ai-action-preview/ai-action-preview.d.ts +32 -0
- package/dist/components/ai-action-preview/ai-action-preview.d.ts.map +1 -0
- package/dist/components/ai-action-preview/ai-action-preview.js +295 -0
- package/dist/components/ai-action-preview/ai-action-preview.js.map +1 -0
- package/dist/components/ai-agent-card/ai-agent-card.d.ts +18 -0
- package/dist/components/ai-agent-card/ai-agent-card.d.ts.map +1 -0
- package/dist/components/ai-agent-card/ai-agent-card.js +267 -0
- package/dist/components/ai-agent-card/ai-agent-card.js.map +1 -0
- package/dist/components/ai-agent-steps/ai-agent-steps.d.ts +53 -0
- package/dist/components/ai-agent-steps/ai-agent-steps.d.ts.map +1 -0
- package/dist/components/ai-agent-steps/ai-agent-steps.js +297 -0
- package/dist/components/ai-agent-steps/ai-agent-steps.js.map +1 -0
- package/dist/components/ai-alert-card/ai-alert-card.d.ts +25 -0
- package/dist/components/ai-alert-card/ai-alert-card.d.ts.map +1 -0
- package/dist/components/ai-alert-card/ai-alert-card.js +235 -0
- package/dist/components/ai-alert-card/ai-alert-card.js.map +1 -0
- package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts +51 -0
- package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts.map +1 -0
- package/dist/components/ai-analytics-chart/ai-analytics-chart.js +334 -0
- package/dist/components/ai-analytics-chart/ai-analytics-chart.js.map +1 -0
- package/dist/components/ai-annotation/ai-annotation.d.ts +34 -0
- package/dist/components/ai-annotation/ai-annotation.d.ts.map +1 -0
- package/dist/components/ai-annotation/ai-annotation.js +254 -0
- package/dist/components/ai-annotation/ai-annotation.js.map +1 -0
- package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts +35 -0
- package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts.map +1 -0
- package/dist/components/ai-api-key-manager/ai-api-key-manager.js +443 -0
- package/dist/components/ai-api-key-manager/ai-api-key-manager.js.map +1 -0
- package/dist/components/ai-app-sidebar/ai-app-sidebar.d.ts +26 -0
- package/dist/components/ai-app-sidebar/ai-app-sidebar.d.ts.map +1 -0
- package/dist/components/ai-app-sidebar/ai-app-sidebar.js +206 -0
- package/dist/components/ai-app-sidebar/ai-app-sidebar.js.map +1 -0
- package/dist/components/ai-assistant-widget/ai-assistant-widget.d.ts +28 -0
- package/dist/components/ai-assistant-widget/ai-assistant-widget.d.ts.map +1 -0
- package/dist/components/ai-assistant-widget/ai-assistant-widget.js +335 -0
- package/dist/components/ai-assistant-widget/ai-assistant-widget.js.map +1 -0
- package/dist/components/ai-audio-player/ai-audio-player.d.ts +31 -0
- package/dist/components/ai-audio-player/ai-audio-player.d.ts.map +1 -0
- package/dist/components/ai-audio-player/ai-audio-player.js +274 -0
- package/dist/components/ai-audio-player/ai-audio-player.js.map +1 -0
- package/dist/components/ai-avatar/ai-avatar.d.ts +20 -0
- package/dist/components/ai-avatar/ai-avatar.d.ts.map +1 -0
- package/dist/components/ai-avatar/ai-avatar.js +77 -0
- package/dist/components/ai-avatar/ai-avatar.js.map +1 -0
- package/dist/components/ai-badge/ai-badge.d.ts +20 -0
- package/dist/components/ai-badge/ai-badge.d.ts.map +1 -0
- package/dist/components/ai-badge/ai-badge.js +69 -0
- package/dist/components/ai-badge/ai-badge.js.map +1 -0
- package/dist/components/ai-batch-progress/ai-batch-progress.d.ts +21 -0
- package/dist/components/ai-batch-progress/ai-batch-progress.d.ts.map +1 -0
- package/dist/components/ai-batch-progress/ai-batch-progress.js +334 -0
- package/dist/components/ai-batch-progress/ai-batch-progress.js.map +1 -0
- package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts +31 -0
- package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts.map +1 -0
- package/dist/components/ai-cache-indicator/ai-cache-indicator.js +314 -0
- package/dist/components/ai-cache-indicator/ai-cache-indicator.js.map +1 -0
- package/dist/components/ai-capture-flow/ai-capture-flow.d.ts +33 -0
- package/dist/components/ai-capture-flow/ai-capture-flow.d.ts.map +1 -0
- package/dist/components/ai-capture-flow/ai-capture-flow.js +336 -0
- package/dist/components/ai-capture-flow/ai-capture-flow.js.map +1 -0
- package/dist/components/ai-changelog/ai-changelog.d.ts +24 -0
- package/dist/components/ai-changelog/ai-changelog.d.ts.map +1 -0
- package/dist/components/ai-changelog/ai-changelog.js +292 -0
- package/dist/components/ai-changelog/ai-changelog.js.map +1 -0
- package/dist/components/ai-chart-summary/ai-chart-summary.d.ts +30 -0
- package/dist/components/ai-chart-summary/ai-chart-summary.d.ts.map +1 -0
- package/dist/components/ai-chart-summary/ai-chart-summary.js +269 -0
- package/dist/components/ai-chart-summary/ai-chart-summary.js.map +1 -0
- package/dist/components/ai-chat/ai-chat.d.ts +70 -0
- package/dist/components/ai-chat/ai-chat.d.ts.map +1 -0
- package/dist/components/ai-chat/ai-chat.js +707 -0
- package/dist/components/ai-chat/ai-chat.js.map +1 -0
- package/dist/components/ai-citation/ai-citation.d.ts +27 -0
- package/dist/components/ai-citation/ai-citation.d.ts.map +1 -0
- package/dist/components/ai-citation/ai-citation.js +277 -0
- package/dist/components/ai-citation/ai-citation.js.map +1 -0
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts +54 -0
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts.map +1 -0
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js +387 -0
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js.map +1 -0
- package/dist/components/ai-command-palette/ai-command-palette.d.ts +34 -0
- package/dist/components/ai-command-palette/ai-command-palette.d.ts.map +1 -0
- package/dist/components/ai-command-palette/ai-command-palette.js +119 -0
- package/dist/components/ai-command-palette/ai-command-palette.js.map +1 -0
- package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts +31 -0
- package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts.map +1 -0
- package/dist/components/ai-confidence-badge/ai-confidence-badge.js +200 -0
- package/dist/components/ai-confidence-badge/ai-confidence-badge.js.map +1 -0
- package/dist/components/ai-confidence-slider/ai-confidence-slider.d.ts +16 -0
- package/dist/components/ai-confidence-slider/ai-confidence-slider.d.ts.map +1 -0
- package/dist/components/ai-confidence-slider/ai-confidence-slider.js +212 -0
- package/dist/components/ai-confidence-slider/ai-confidence-slider.js.map +1 -0
- package/dist/components/ai-consent-manager/ai-consent-manager.d.ts +26 -0
- package/dist/components/ai-consent-manager/ai-consent-manager.d.ts.map +1 -0
- package/dist/components/ai-consent-manager/ai-consent-manager.js +169 -0
- package/dist/components/ai-consent-manager/ai-consent-manager.js.map +1 -0
- package/dist/components/ai-context-window/ai-context-window.d.ts +20 -0
- package/dist/components/ai-context-window/ai-context-window.d.ts.map +1 -0
- package/dist/components/ai-context-window/ai-context-window.js +201 -0
- package/dist/components/ai-context-window/ai-context-window.js.map +1 -0
- package/dist/components/ai-copy-button/ai-copy-button.d.ts +23 -0
- package/dist/components/ai-copy-button/ai-copy-button.d.ts.map +1 -0
- package/dist/components/ai-copy-button/ai-copy-button.js +193 -0
- package/dist/components/ai-copy-button/ai-copy-button.js.map +1 -0
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.d.ts +28 -0
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.d.ts.map +1 -0
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js +328 -0
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js.map +1 -0
- package/dist/components/ai-data-card/ai-data-card.d.ts +50 -0
- package/dist/components/ai-data-card/ai-data-card.d.ts.map +1 -0
- package/dist/components/ai-data-card/ai-data-card.js +358 -0
- package/dist/components/ai-data-card/ai-data-card.js.map +1 -0
- package/dist/components/ai-data-lineage/ai-data-lineage.d.ts +28 -0
- package/dist/components/ai-data-lineage/ai-data-lineage.d.ts.map +1 -0
- package/dist/components/ai-data-lineage/ai-data-lineage.js +200 -0
- package/dist/components/ai-data-lineage/ai-data-lineage.js.map +1 -0
- package/dist/components/ai-data-preview/ai-data-preview.d.ts +31 -0
- package/dist/components/ai-data-preview/ai-data-preview.d.ts.map +1 -0
- package/dist/components/ai-data-preview/ai-data-preview.js +415 -0
- package/dist/components/ai-data-preview/ai-data-preview.js.map +1 -0
- package/dist/components/ai-data-table/ai-data-table.d.ts +62 -0
- package/dist/components/ai-data-table/ai-data-table.d.ts.map +1 -0
- package/dist/components/ai-data-table/ai-data-table.js +388 -0
- package/dist/components/ai-data-table/ai-data-table.js.map +1 -0
- package/dist/components/ai-debug-console/ai-debug-console.d.ts +39 -0
- package/dist/components/ai-debug-console/ai-debug-console.d.ts.map +1 -0
- package/dist/components/ai-debug-console/ai-debug-console.js +517 -0
- package/dist/components/ai-debug-console/ai-debug-console.js.map +1 -0
- package/dist/components/ai-detection-canvas/ai-detection-canvas.d.ts +26 -0
- package/dist/components/ai-detection-canvas/ai-detection-canvas.d.ts.map +1 -0
- package/dist/components/ai-detection-canvas/ai-detection-canvas.js +233 -0
- package/dist/components/ai-detection-canvas/ai-detection-canvas.js.map +1 -0
- package/dist/components/ai-diff-panel/ai-diff-panel.d.ts +35 -0
- package/dist/components/ai-diff-panel/ai-diff-panel.d.ts.map +1 -0
- package/dist/components/ai-diff-panel/ai-diff-panel.js +374 -0
- package/dist/components/ai-diff-panel/ai-diff-panel.js.map +1 -0
- package/dist/components/ai-embedding-viz/ai-embedding-viz.d.ts +31 -0
- package/dist/components/ai-embedding-viz/ai-embedding-viz.d.ts.map +1 -0
- package/dist/components/ai-embedding-viz/ai-embedding-viz.js +256 -0
- package/dist/components/ai-embedding-viz/ai-embedding-viz.js.map +1 -0
- package/dist/components/ai-empty-state/ai-empty-state.d.ts +18 -0
- package/dist/components/ai-empty-state/ai-empty-state.d.ts.map +1 -0
- package/dist/components/ai-empty-state/ai-empty-state.js +58 -0
- package/dist/components/ai-empty-state/ai-empty-state.js.map +1 -0
- package/dist/components/ai-error-boundary/ai-error-boundary.d.ts +17 -0
- package/dist/components/ai-error-boundary/ai-error-boundary.d.ts.map +1 -0
- package/dist/components/ai-error-boundary/ai-error-boundary.js +212 -0
- package/dist/components/ai-error-boundary/ai-error-boundary.js.map +1 -0
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.d.ts +19 -0
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.d.ts.map +1 -0
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js +199 -0
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js.map +1 -0
- package/dist/components/ai-feature-flag/ai-feature-flag.d.ts +43 -0
- package/dist/components/ai-feature-flag/ai-feature-flag.d.ts.map +1 -0
- package/dist/components/ai-feature-flag/ai-feature-flag.js +457 -0
- package/dist/components/ai-feature-flag/ai-feature-flag.js.map +1 -0
- package/dist/components/ai-feedback/ai-feedback.d.ts +28 -0
- package/dist/components/ai-feedback/ai-feedback.d.ts.map +1 -0
- package/dist/components/ai-feedback/ai-feedback.js +478 -0
- package/dist/components/ai-feedback/ai-feedback.js.map +1 -0
- package/dist/components/ai-file-upload/ai-file-upload.d.ts +18 -0
- package/dist/components/ai-file-upload/ai-file-upload.d.ts.map +1 -0
- package/dist/components/ai-file-upload/ai-file-upload.js +70 -0
- package/dist/components/ai-file-upload/ai-file-upload.js.map +1 -0
- package/dist/components/ai-form-generator/ai-form-generator.d.ts +39 -0
- package/dist/components/ai-form-generator/ai-form-generator.d.ts.map +1 -0
- package/dist/components/ai-form-generator/ai-form-generator.js +225 -0
- package/dist/components/ai-form-generator/ai-form-generator.js.map +1 -0
- package/dist/components/ai-guardrail/ai-guardrail.d.ts +22 -0
- package/dist/components/ai-guardrail/ai-guardrail.d.ts.map +1 -0
- package/dist/components/ai-guardrail/ai-guardrail.js +229 -0
- package/dist/components/ai-guardrail/ai-guardrail.js.map +1 -0
- package/dist/components/ai-heatmap/ai-heatmap.d.ts +38 -0
- package/dist/components/ai-heatmap/ai-heatmap.d.ts.map +1 -0
- package/dist/components/ai-heatmap/ai-heatmap.js +250 -0
- package/dist/components/ai-heatmap/ai-heatmap.js.map +1 -0
- package/dist/components/ai-insight-card/ai-insight-card.d.ts +28 -0
- package/dist/components/ai-insight-card/ai-insight-card.d.ts.map +1 -0
- package/dist/components/ai-insight-card/ai-insight-card.js +319 -0
- package/dist/components/ai-insight-card/ai-insight-card.js.map +1 -0
- package/dist/components/ai-json-viewer/ai-json-viewer.d.ts +24 -0
- package/dist/components/ai-json-viewer/ai-json-viewer.d.ts.map +1 -0
- package/dist/components/ai-json-viewer/ai-json-viewer.js +173 -0
- package/dist/components/ai-json-viewer/ai-json-viewer.js.map +1 -0
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.d.ts +25 -0
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.d.ts.map +1 -0
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js +240 -0
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js.map +1 -0
- package/dist/components/ai-kpi-grid/ai-kpi-grid.d.ts +26 -0
- package/dist/components/ai-kpi-grid/ai-kpi-grid.d.ts.map +1 -0
- package/dist/components/ai-kpi-grid/ai-kpi-grid.js +180 -0
- package/dist/components/ai-kpi-grid/ai-kpi-grid.js.map +1 -0
- package/dist/components/ai-labeling-board/ai-labeling-board.d.ts +31 -0
- package/dist/components/ai-labeling-board/ai-labeling-board.d.ts.map +1 -0
- package/dist/components/ai-labeling-board/ai-labeling-board.js +393 -0
- package/dist/components/ai-labeling-board/ai-labeling-board.js.map +1 -0
- package/dist/components/ai-memory-panel/ai-memory-panel.d.ts +24 -0
- package/dist/components/ai-memory-panel/ai-memory-panel.d.ts.map +1 -0
- package/dist/components/ai-memory-panel/ai-memory-panel.js +238 -0
- package/dist/components/ai-memory-panel/ai-memory-panel.js.map +1 -0
- package/dist/components/ai-model-comparison/ai-model-comparison.d.ts +25 -0
- package/dist/components/ai-model-comparison/ai-model-comparison.d.ts.map +1 -0
- package/dist/components/ai-model-comparison/ai-model-comparison.js +321 -0
- package/dist/components/ai-model-comparison/ai-model-comparison.js.map +1 -0
- package/dist/components/ai-model-selector/ai-model-selector.d.ts +29 -0
- package/dist/components/ai-model-selector/ai-model-selector.d.ts.map +1 -0
- package/dist/components/ai-model-selector/ai-model-selector.js +200 -0
- package/dist/components/ai-model-selector/ai-model-selector.js.map +1 -0
- package/dist/components/ai-notification-center/ai-notification-center.d.ts +34 -0
- package/dist/components/ai-notification-center/ai-notification-center.d.ts.map +1 -0
- package/dist/components/ai-notification-center/ai-notification-center.js +334 -0
- package/dist/components/ai-notification-center/ai-notification-center.js.map +1 -0
- package/dist/components/ai-onboarding/ai-onboarding.d.ts +35 -0
- package/dist/components/ai-onboarding/ai-onboarding.d.ts.map +1 -0
- package/dist/components/ai-onboarding/ai-onboarding.js +375 -0
- package/dist/components/ai-onboarding/ai-onboarding.js.map +1 -0
- package/dist/components/ai-permission-gate/ai-permission-gate.d.ts +27 -0
- package/dist/components/ai-permission-gate/ai-permission-gate.d.ts.map +1 -0
- package/dist/components/ai-permission-gate/ai-permission-gate.js +193 -0
- package/dist/components/ai-permission-gate/ai-permission-gate.js.map +1 -0
- package/dist/components/ai-personalization-dash/ai-personalization-dash.d.ts +27 -0
- package/dist/components/ai-personalization-dash/ai-personalization-dash.d.ts.map +1 -0
- package/dist/components/ai-personalization-dash/ai-personalization-dash.js +181 -0
- package/dist/components/ai-personalization-dash/ai-personalization-dash.js.map +1 -0
- package/dist/components/ai-presence/ai-presence.d.ts +27 -0
- package/dist/components/ai-presence/ai-presence.d.ts.map +1 -0
- package/dist/components/ai-presence/ai-presence.js +261 -0
- package/dist/components/ai-presence/ai-presence.js.map +1 -0
- package/dist/components/ai-progress-steps/ai-progress-steps.d.ts +20 -0
- package/dist/components/ai-progress-steps/ai-progress-steps.d.ts.map +1 -0
- package/dist/components/ai-progress-steps/ai-progress-steps.js +201 -0
- package/dist/components/ai-progress-steps/ai-progress-steps.js.map +1 -0
- package/dist/components/ai-prompt-editor/ai-prompt-editor.d.ts +25 -0
- package/dist/components/ai-prompt-editor/ai-prompt-editor.d.ts.map +1 -0
- package/dist/components/ai-prompt-editor/ai-prompt-editor.js +294 -0
- package/dist/components/ai-prompt-editor/ai-prompt-editor.js.map +1 -0
- package/dist/components/ai-prompt-template/ai-prompt-template.d.ts +20 -0
- package/dist/components/ai-prompt-template/ai-prompt-template.d.ts.map +1 -0
- package/dist/components/ai-prompt-template/ai-prompt-template.js +288 -0
- package/dist/components/ai-prompt-template/ai-prompt-template.js.map +1 -0
- package/dist/components/ai-rag-panel/ai-rag-panel.d.ts +24 -0
- package/dist/components/ai-rag-panel/ai-rag-panel.d.ts.map +1 -0
- package/dist/components/ai-rag-panel/ai-rag-panel.js +226 -0
- package/dist/components/ai-rag-panel/ai-rag-panel.js.map +1 -0
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.d.ts +20 -0
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.d.ts.map +1 -0
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js +180 -0
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js.map +1 -0
- package/dist/components/ai-result-panel/ai-result-panel.d.ts +35 -0
- package/dist/components/ai-result-panel/ai-result-panel.d.ts.map +1 -0
- package/dist/components/ai-result-panel/ai-result-panel.js +412 -0
- package/dist/components/ai-result-panel/ai-result-panel.js.map +1 -0
- package/dist/components/ai-reveal-animation/ai-reveal-animation.d.ts +28 -0
- package/dist/components/ai-reveal-animation/ai-reveal-animation.d.ts.map +1 -0
- package/dist/components/ai-reveal-animation/ai-reveal-animation.js +146 -0
- package/dist/components/ai-reveal-animation/ai-reveal-animation.js.map +1 -0
- package/dist/components/ai-reward-signal/ai-reward-signal.d.ts +22 -0
- package/dist/components/ai-reward-signal/ai-reward-signal.d.ts.map +1 -0
- package/dist/components/ai-reward-signal/ai-reward-signal.js +231 -0
- package/dist/components/ai-reward-signal/ai-reward-signal.js.map +1 -0
- package/dist/components/ai-rich-message/ai-rich-message.d.ts +38 -0
- package/dist/components/ai-rich-message/ai-rich-message.d.ts.map +1 -0
- package/dist/components/ai-rich-message/ai-rich-message.js +285 -0
- package/dist/components/ai-rich-message/ai-rich-message.js.map +1 -0
- package/dist/components/ai-scenario-panel/ai-scenario-panel.d.ts +19 -0
- package/dist/components/ai-scenario-panel/ai-scenario-panel.d.ts.map +1 -0
- package/dist/components/ai-scenario-panel/ai-scenario-panel.js +182 -0
- package/dist/components/ai-scenario-panel/ai-scenario-panel.js.map +1 -0
- package/dist/components/ai-search/ai-search.d.ts +38 -0
- package/dist/components/ai-search/ai-search.d.ts.map +1 -0
- package/dist/components/ai-search/ai-search.js +397 -0
- package/dist/components/ai-search/ai-search.js.map +1 -0
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.d.ts +21 -0
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.d.ts.map +1 -0
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js +185 -0
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js.map +1 -0
- package/dist/components/ai-sidebar/ai-sidebar.d.ts +19 -0
- package/dist/components/ai-sidebar/ai-sidebar.d.ts.map +1 -0
- package/dist/components/ai-sidebar/ai-sidebar.js +59 -0
- package/dist/components/ai-sidebar/ai-sidebar.js.map +1 -0
- package/dist/components/ai-similarity-card/ai-similarity-card.d.ts +23 -0
- package/dist/components/ai-similarity-card/ai-similarity-card.d.ts.map +1 -0
- package/dist/components/ai-similarity-card/ai-similarity-card.js +224 -0
- package/dist/components/ai-similarity-card/ai-similarity-card.js.map +1 -0
- package/dist/components/ai-source-graph/ai-source-graph.d.ts +19 -0
- package/dist/components/ai-source-graph/ai-source-graph.d.ts.map +1 -0
- package/dist/components/ai-source-graph/ai-source-graph.js +226 -0
- package/dist/components/ai-source-graph/ai-source-graph.js.map +1 -0
- package/dist/components/ai-status-page/ai-status-page.d.ts +32 -0
- package/dist/components/ai-status-page/ai-status-page.d.ts.map +1 -0
- package/dist/components/ai-status-page/ai-status-page.js +304 -0
- package/dist/components/ai-status-page/ai-status-page.js.map +1 -0
- package/dist/components/ai-streaming-text/ai-streaming-text.d.ts +23 -0
- package/dist/components/ai-streaming-text/ai-streaming-text.d.ts.map +1 -0
- package/dist/components/ai-streaming-text/ai-streaming-text.js +80 -0
- package/dist/components/ai-streaming-text/ai-streaming-text.js.map +1 -0
- package/dist/components/ai-test-runner/ai-test-runner.d.ts +37 -0
- package/dist/components/ai-test-runner/ai-test-runner.d.ts.map +1 -0
- package/dist/components/ai-test-runner/ai-test-runner.js +448 -0
- package/dist/components/ai-test-runner/ai-test-runner.js.map +1 -0
- package/dist/components/ai-thinking/ai-thinking.d.ts +33 -0
- package/dist/components/ai-thinking/ai-thinking.d.ts.map +1 -0
- package/dist/components/ai-thinking/ai-thinking.js +371 -0
- package/dist/components/ai-thinking/ai-thinking.js.map +1 -0
- package/dist/components/ai-timeline/ai-timeline.d.ts +28 -0
- package/dist/components/ai-timeline/ai-timeline.d.ts.map +1 -0
- package/dist/components/ai-timeline/ai-timeline.js +378 -0
- package/dist/components/ai-timeline/ai-timeline.js.map +1 -0
- package/dist/components/ai-toast/ai-toast.d.ts +27 -0
- package/dist/components/ai-toast/ai-toast.d.ts.map +1 -0
- package/dist/components/ai-toast/ai-toast.js +68 -0
- package/dist/components/ai-toast/ai-toast.js.map +1 -0
- package/dist/components/ai-token-tracker/ai-token-tracker.d.ts +20 -0
- package/dist/components/ai-token-tracker/ai-token-tracker.d.ts.map +1 -0
- package/dist/components/ai-token-tracker/ai-token-tracker.js +235 -0
- package/dist/components/ai-token-tracker/ai-token-tracker.js.map +1 -0
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.d.ts +31 -0
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.d.ts.map +1 -0
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js +225 -0
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js.map +1 -0
- package/dist/components/ai-tool-indicator/ai-tool-indicator.d.ts +18 -0
- package/dist/components/ai-tool-indicator/ai-tool-indicator.d.ts.map +1 -0
- package/dist/components/ai-tool-indicator/ai-tool-indicator.js +186 -0
- package/dist/components/ai-tool-indicator/ai-tool-indicator.js.map +1 -0
- package/dist/components/ai-transform-slider/ai-transform-slider.d.ts +21 -0
- package/dist/components/ai-transform-slider/ai-transform-slider.d.ts.map +1 -0
- package/dist/components/ai-transform-slider/ai-transform-slider.js +270 -0
- package/dist/components/ai-transform-slider/ai-transform-slider.js.map +1 -0
- package/dist/components/ai-translation-panel/ai-translation-panel.d.ts +24 -0
- package/dist/components/ai-translation-panel/ai-translation-panel.d.ts.map +1 -0
- package/dist/components/ai-translation-panel/ai-translation-panel.js +347 -0
- package/dist/components/ai-translation-panel/ai-translation-panel.js.map +1 -0
- package/dist/components/ai-usage-meter/ai-usage-meter.d.ts +33 -0
- package/dist/components/ai-usage-meter/ai-usage-meter.d.ts.map +1 -0
- package/dist/components/ai-usage-meter/ai-usage-meter.js +286 -0
- package/dist/components/ai-usage-meter/ai-usage-meter.js.map +1 -0
- package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts +35 -0
- package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts.map +1 -0
- package/dist/components/ai-validation-checklist/ai-validation-checklist.js +360 -0
- package/dist/components/ai-validation-checklist/ai-validation-checklist.js.map +1 -0
- package/dist/components/ai-version-selector/ai-version-selector.d.ts +28 -0
- package/dist/components/ai-version-selector/ai-version-selector.d.ts.map +1 -0
- package/dist/components/ai-version-selector/ai-version-selector.js +326 -0
- package/dist/components/ai-version-selector/ai-version-selector.js.map +1 -0
- package/dist/components/ai-voice-panel/ai-voice-panel.d.ts +46 -0
- package/dist/components/ai-voice-panel/ai-voice-panel.d.ts.map +1 -0
- package/dist/components/ai-voice-panel/ai-voice-panel.js +363 -0
- package/dist/components/ai-voice-panel/ai-voice-panel.js.map +1 -0
- package/dist/components/ai-webhook-config/ai-webhook-config.d.ts +46 -0
- package/dist/components/ai-webhook-config/ai-webhook-config.d.ts.map +1 -0
- package/dist/components/ai-webhook-config/ai-webhook-config.js +358 -0
- package/dist/components/ai-webhook-config/ai-webhook-config.js.map +1 -0
- package/dist/components/ai-workflow-builder/ai-workflow-builder.d.ts +26 -0
- package/dist/components/ai-workflow-builder/ai-workflow-builder.d.ts.map +1 -0
- package/dist/components/ai-workflow-builder/ai-workflow-builder.js +179 -0
- package/dist/components/ai-workflow-builder/ai-workflow-builder.js.map +1 -0
- package/dist/components/bias-anchoring/bias-anchoring.d.ts +35 -0
- package/dist/components/bias-anchoring/bias-anchoring.d.ts.map +1 -0
- package/dist/components/bias-anchoring/bias-anchoring.js +107 -0
- package/dist/components/bias-anchoring/bias-anchoring.js.map +1 -0
- package/dist/components/bias-authority/bias-authority.d.ts +31 -0
- package/dist/components/bias-authority/bias-authority.d.ts.map +1 -0
- package/dist/components/bias-authority/bias-authority.js +97 -0
- package/dist/components/bias-authority/bias-authority.js.map +1 -0
- package/dist/components/bias-commitment/bias-commitment.d.ts +39 -0
- package/dist/components/bias-commitment/bias-commitment.d.ts.map +1 -0
- package/dist/components/bias-commitment/bias-commitment.js +115 -0
- package/dist/components/bias-commitment/bias-commitment.js.map +1 -0
- package/dist/components/bias-reciprocity/bias-reciprocity.d.ts +30 -0
- package/dist/components/bias-reciprocity/bias-reciprocity.d.ts.map +1 -0
- package/dist/components/bias-reciprocity/bias-reciprocity.js +86 -0
- package/dist/components/bias-reciprocity/bias-reciprocity.js.map +1 -0
- package/dist/components/bias-scarcity/bias-scarcity.d.ts +39 -0
- package/dist/components/bias-scarcity/bias-scarcity.d.ts.map +1 -0
- package/dist/components/bias-scarcity/bias-scarcity.js +120 -0
- package/dist/components/bias-scarcity/bias-scarcity.js.map +1 -0
- package/dist/components/bias-social-proof/bias-social-proof.d.ts +37 -0
- package/dist/components/bias-social-proof/bias-social-proof.d.ts.map +1 -0
- package/dist/components/bias-social-proof/bias-social-proof.js +112 -0
- package/dist/components/bias-social-proof/bias-social-proof.js.map +1 -0
- package/dist/components/cg-accordion/cg-accordion.d.ts +34 -0
- package/dist/components/cg-accordion/cg-accordion.d.ts.map +1 -0
- package/dist/components/cg-accordion/cg-accordion.js +219 -0
- package/dist/components/cg-accordion/cg-accordion.js.map +1 -0
- package/dist/components/cg-alert-dialog/cg-alert-dialog.d.ts +53 -0
- package/dist/components/cg-alert-dialog/cg-alert-dialog.d.ts.map +1 -0
- package/dist/components/cg-alert-dialog/cg-alert-dialog.js +220 -0
- package/dist/components/cg-alert-dialog/cg-alert-dialog.js.map +1 -0
- package/dist/components/cg-app-shell/cg-app-shell.d.ts +54 -0
- package/dist/components/cg-app-shell/cg-app-shell.d.ts.map +1 -0
- package/dist/components/cg-app-shell/cg-app-shell.js +135 -0
- package/dist/components/cg-app-shell/cg-app-shell.js.map +1 -0
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.d.ts +34 -0
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.d.ts.map +1 -0
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js +47 -0
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js.map +1 -0
- package/dist/components/cg-auth-shell/cg-auth-shell.d.ts +61 -0
- package/dist/components/cg-auth-shell/cg-auth-shell.d.ts.map +1 -0
- package/dist/components/cg-auth-shell/cg-auth-shell.js +163 -0
- package/dist/components/cg-auth-shell/cg-auth-shell.js.map +1 -0
- package/dist/components/cg-autocomplete/cg-autocomplete.d.ts +50 -0
- package/dist/components/cg-autocomplete/cg-autocomplete.d.ts.map +1 -0
- package/dist/components/cg-autocomplete/cg-autocomplete.js +279 -0
- package/dist/components/cg-autocomplete/cg-autocomplete.js.map +1 -0
- package/dist/components/cg-avatar/cg-avatar.d.ts +35 -0
- package/dist/components/cg-avatar/cg-avatar.d.ts.map +1 -0
- package/dist/components/cg-avatar/cg-avatar.js +171 -0
- package/dist/components/cg-avatar/cg-avatar.js.map +1 -0
- package/dist/components/cg-avatar-group/cg-avatar-group.d.ts +39 -0
- package/dist/components/cg-avatar-group/cg-avatar-group.d.ts.map +1 -0
- package/dist/components/cg-avatar-group/cg-avatar-group.js +218 -0
- package/dist/components/cg-avatar-group/cg-avatar-group.js.map +1 -0
- package/dist/components/cg-badge/cg-badge.d.ts +37 -0
- package/dist/components/cg-badge/cg-badge.d.ts.map +1 -0
- package/dist/components/cg-badge/cg-badge.js +125 -0
- package/dist/components/cg-badge/cg-badge.js.map +1 -0
- package/dist/components/cg-badge-group/cg-badge-group.d.ts +28 -0
- package/dist/components/cg-badge-group/cg-badge-group.d.ts.map +1 -0
- package/dist/components/cg-badge-group/cg-badge-group.js +78 -0
- package/dist/components/cg-badge-group/cg-badge-group.js.map +1 -0
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.d.ts +52 -0
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.d.ts.map +1 -0
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js +286 -0
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js.map +1 -0
- package/dist/components/cg-button/cg-button.d.ts +106 -0
- package/dist/components/cg-button/cg-button.d.ts.map +1 -0
- package/dist/components/cg-button/cg-button.js +355 -0
- package/dist/components/cg-button/cg-button.js.map +1 -0
- package/dist/components/cg-button-group/cg-button-group.d.ts +25 -0
- package/dist/components/cg-button-group/cg-button-group.d.ts.map +1 -0
- package/dist/components/cg-button-group/cg-button-group.js +89 -0
- package/dist/components/cg-button-group/cg-button-group.js.map +1 -0
- package/dist/components/cg-calendar/cg-calendar.d.ts +52 -0
- package/dist/components/cg-calendar/cg-calendar.d.ts.map +1 -0
- package/dist/components/cg-calendar/cg-calendar.js +346 -0
- package/dist/components/cg-calendar/cg-calendar.js.map +1 -0
- package/dist/components/cg-callout/cg-callout.d.ts +32 -0
- package/dist/components/cg-callout/cg-callout.d.ts.map +1 -0
- package/dist/components/cg-callout/cg-callout.js +197 -0
- package/dist/components/cg-callout/cg-callout.js.map +1 -0
- package/dist/components/cg-card/cg-card.d.ts +60 -0
- package/dist/components/cg-card/cg-card.d.ts.map +1 -0
- package/dist/components/cg-card/cg-card.js +207 -0
- package/dist/components/cg-card/cg-card.js.map +1 -0
- package/dist/components/cg-carousel/cg-carousel.d.ts +52 -0
- package/dist/components/cg-carousel/cg-carousel.d.ts.map +1 -0
- package/dist/components/cg-carousel/cg-carousel.js +262 -0
- package/dist/components/cg-carousel/cg-carousel.js.map +1 -0
- package/dist/components/cg-chart/cg-chart.d.ts +55 -0
- package/dist/components/cg-chart/cg-chart.d.ts.map +1 -0
- package/dist/components/cg-chart/cg-chart.js +381 -0
- package/dist/components/cg-chart/cg-chart.js.map +1 -0
- package/dist/components/cg-checkbox/cg-checkbox.d.ts +50 -0
- package/dist/components/cg-checkbox/cg-checkbox.d.ts.map +1 -0
- package/dist/components/cg-checkbox/cg-checkbox.js +294 -0
- package/dist/components/cg-checkbox/cg-checkbox.js.map +1 -0
- package/dist/components/cg-chip/cg-chip.d.ts +36 -0
- package/dist/components/cg-chip/cg-chip.d.ts.map +1 -0
- package/dist/components/cg-chip/cg-chip.js +256 -0
- package/dist/components/cg-chip/cg-chip.js.map +1 -0
- package/dist/components/cg-code-block/cg-code-block.d.ts +23 -0
- package/dist/components/cg-code-block/cg-code-block.d.ts.map +1 -0
- package/dist/components/cg-code-block/cg-code-block.js +327 -0
- package/dist/components/cg-code-block/cg-code-block.js.map +1 -0
- package/dist/components/cg-collapsible/cg-collapsible.d.ts +34 -0
- package/dist/components/cg-collapsible/cg-collapsible.d.ts.map +1 -0
- package/dist/components/cg-collapsible/cg-collapsible.js +160 -0
- package/dist/components/cg-collapsible/cg-collapsible.js.map +1 -0
- package/dist/components/cg-color-picker/cg-color-picker.d.ts +51 -0
- package/dist/components/cg-color-picker/cg-color-picker.d.ts.map +1 -0
- package/dist/components/cg-color-picker/cg-color-picker.js +492 -0
- package/dist/components/cg-color-picker/cg-color-picker.js.map +1 -0
- package/dist/components/cg-combobox/cg-combobox.d.ts +56 -0
- package/dist/components/cg-combobox/cg-combobox.d.ts.map +1 -0
- package/dist/components/cg-combobox/cg-combobox.js +374 -0
- package/dist/components/cg-combobox/cg-combobox.js.map +1 -0
- package/dist/components/cg-command/cg-command.d.ts +65 -0
- package/dist/components/cg-command/cg-command.d.ts.map +1 -0
- package/dist/components/cg-command/cg-command.js +339 -0
- package/dist/components/cg-command/cg-command.js.map +1 -0
- package/dist/components/cg-context-menu/cg-context-menu.d.ts +66 -0
- package/dist/components/cg-context-menu/cg-context-menu.d.ts.map +1 -0
- package/dist/components/cg-context-menu/cg-context-menu.js +165 -0
- package/dist/components/cg-context-menu/cg-context-menu.js.map +1 -0
- package/dist/components/cg-date-picker/cg-date-picker.d.ts +44 -0
- package/dist/components/cg-date-picker/cg-date-picker.d.ts.map +1 -0
- package/dist/components/cg-date-picker/cg-date-picker.js +240 -0
- package/dist/components/cg-date-picker/cg-date-picker.js.map +1 -0
- package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts +45 -0
- package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts.map +1 -0
- package/dist/components/cg-date-range-picker/cg-date-range-picker.js +266 -0
- package/dist/components/cg-date-range-picker/cg-date-range-picker.js.map +1 -0
- package/dist/components/cg-date-time-picker/cg-date-time-picker.d.ts +66 -0
- package/dist/components/cg-date-time-picker/cg-date-time-picker.d.ts.map +1 -0
- package/dist/components/cg-date-time-picker/cg-date-time-picker.js +521 -0
- package/dist/components/cg-date-time-picker/cg-date-time-picker.js.map +1 -0
- package/dist/components/cg-definition-list/cg-definition-list.d.ts +99 -0
- package/dist/components/cg-definition-list/cg-definition-list.d.ts.map +1 -0
- package/dist/components/cg-definition-list/cg-definition-list.js +332 -0
- package/dist/components/cg-definition-list/cg-definition-list.js.map +1 -0
- package/dist/components/cg-draggable/cg-draggable.d.ts +53 -0
- package/dist/components/cg-draggable/cg-draggable.d.ts.map +1 -0
- package/dist/components/cg-draggable/cg-draggable.js +136 -0
- package/dist/components/cg-draggable/cg-draggable.js.map +1 -0
- package/dist/components/cg-drawer/cg-drawer.d.ts +57 -0
- package/dist/components/cg-drawer/cg-drawer.d.ts.map +1 -0
- package/dist/components/cg-drawer/cg-drawer.js +421 -0
- package/dist/components/cg-drawer/cg-drawer.js.map +1 -0
- package/dist/components/cg-dropdown/cg-dropdown.d.ts +63 -0
- package/dist/components/cg-dropdown/cg-dropdown.d.ts.map +1 -0
- package/dist/components/cg-dropdown/cg-dropdown.js +232 -0
- package/dist/components/cg-dropdown/cg-dropdown.js.map +1 -0
- package/dist/components/cg-droppable/cg-droppable.d.ts +57 -0
- package/dist/components/cg-droppable/cg-droppable.d.ts.map +1 -0
- package/dist/components/cg-droppable/cg-droppable.js +114 -0
- package/dist/components/cg-droppable/cg-droppable.js.map +1 -0
- package/dist/components/cg-empty-state/cg-empty-state.d.ts +54 -0
- package/dist/components/cg-empty-state/cg-empty-state.d.ts.map +1 -0
- package/dist/components/cg-empty-state/cg-empty-state.js +201 -0
- package/dist/components/cg-empty-state/cg-empty-state.js.map +1 -0
- package/dist/components/cg-file-input/cg-file-input.d.ts +101 -0
- package/dist/components/cg-file-input/cg-file-input.d.ts.map +1 -0
- package/dist/components/cg-file-input/cg-file-input.js +684 -0
- package/dist/components/cg-file-input/cg-file-input.js.map +1 -0
- package/dist/components/cg-filter-bar/cg-filter-bar.d.ts +50 -0
- package/dist/components/cg-filter-bar/cg-filter-bar.d.ts.map +1 -0
- package/dist/components/cg-filter-bar/cg-filter-bar.js +115 -0
- package/dist/components/cg-filter-bar/cg-filter-bar.js.map +1 -0
- package/dist/components/cg-filter-chip/cg-filter-chip.d.ts +55 -0
- package/dist/components/cg-filter-chip/cg-filter-chip.d.ts.map +1 -0
- package/dist/components/cg-filter-chip/cg-filter-chip.js +213 -0
- package/dist/components/cg-filter-chip/cg-filter-chip.js.map +1 -0
- package/dist/components/cg-focus-scope/cg-focus-scope.d.ts +38 -0
- package/dist/components/cg-focus-scope/cg-focus-scope.d.ts.map +1 -0
- package/dist/components/cg-focus-scope/cg-focus-scope.js +47 -0
- package/dist/components/cg-focus-scope/cg-focus-scope.js.map +1 -0
- package/dist/components/cg-follow-up/cg-follow-up.d.ts +32 -0
- package/dist/components/cg-follow-up/cg-follow-up.d.ts.map +1 -0
- package/dist/components/cg-follow-up/cg-follow-up.js +233 -0
- package/dist/components/cg-follow-up/cg-follow-up.js.map +1 -0
- package/dist/components/cg-form/cg-form.d.ts +32 -0
- package/dist/components/cg-form/cg-form.d.ts.map +1 -0
- package/dist/components/cg-form/cg-form.js +109 -0
- package/dist/components/cg-form/cg-form.js.map +1 -0
- package/dist/components/cg-hover-card/cg-hover-card.d.ts +49 -0
- package/dist/components/cg-hover-card/cg-hover-card.d.ts.map +1 -0
- package/dist/components/cg-hover-card/cg-hover-card.js +149 -0
- package/dist/components/cg-hover-card/cg-hover-card.js.map +1 -0
- package/dist/components/cg-icon/cg-icon.d.ts +28 -0
- package/dist/components/cg-icon/cg-icon.d.ts.map +1 -0
- package/dist/components/cg-icon/cg-icon.js +339 -0
- package/dist/components/cg-icon/cg-icon.js.map +1 -0
- package/dist/components/cg-icon/solar-icons.d.ts +12 -0
- package/dist/components/cg-icon/solar-icons.d.ts.map +1 -0
- package/dist/components/cg-image/cg-image.d.ts +31 -0
- package/dist/components/cg-image/cg-image.d.ts.map +1 -0
- package/dist/components/cg-image/cg-image.js +168 -0
- package/dist/components/cg-image/cg-image.js.map +1 -0
- package/dist/components/cg-image-block/cg-image-block.d.ts +36 -0
- package/dist/components/cg-image-block/cg-image-block.d.ts.map +1 -0
- package/dist/components/cg-image-block/cg-image-block.js +214 -0
- package/dist/components/cg-image-block/cg-image-block.js.map +1 -0
- package/dist/components/cg-image-gallery/cg-image-gallery.d.ts +34 -0
- package/dist/components/cg-image-gallery/cg-image-gallery.d.ts.map +1 -0
- package/dist/components/cg-image-gallery/cg-image-gallery.js +158 -0
- package/dist/components/cg-image-gallery/cg-image-gallery.js.map +1 -0
- package/dist/components/cg-input/cg-input.d.ts +65 -0
- package/dist/components/cg-input/cg-input.d.ts.map +1 -0
- package/dist/components/cg-input/cg-input.js +425 -0
- package/dist/components/cg-input/cg-input.js.map +1 -0
- package/dist/components/cg-kanban/cg-kanban.d.ts +44 -0
- package/dist/components/cg-kanban/cg-kanban.d.ts.map +1 -0
- package/dist/components/cg-kanban/cg-kanban.js +86 -0
- package/dist/components/cg-kanban/cg-kanban.js.map +1 -0
- package/dist/components/cg-kanban-column/cg-kanban-column.d.ts +58 -0
- package/dist/components/cg-kanban-column/cg-kanban-column.d.ts.map +1 -0
- package/dist/components/cg-kanban-column/cg-kanban-column.js +144 -0
- package/dist/components/cg-kanban-column/cg-kanban-column.js.map +1 -0
- package/dist/components/cg-kbd/cg-kbd.d.ts +27 -0
- package/dist/components/cg-kbd/cg-kbd.d.ts.map +1 -0
- package/dist/components/cg-kbd/cg-kbd.js +91 -0
- package/dist/components/cg-kbd/cg-kbd.js.map +1 -0
- package/dist/components/cg-label/cg-label.d.ts +26 -0
- package/dist/components/cg-label/cg-label.d.ts.map +1 -0
- package/dist/components/cg-label/cg-label.js +89 -0
- package/dist/components/cg-label/cg-label.js.map +1 -0
- package/dist/components/cg-link/cg-link.d.ts +27 -0
- package/dist/components/cg-link/cg-link.d.ts.map +1 -0
- package/dist/components/cg-link/cg-link.js +152 -0
- package/dist/components/cg-link/cg-link.js.map +1 -0
- package/dist/components/cg-list/cg-list.d.ts +37 -0
- package/dist/components/cg-list/cg-list.d.ts.map +1 -0
- package/dist/components/cg-list/cg-list.js +314 -0
- package/dist/components/cg-list/cg-list.js.map +1 -0
- package/dist/components/cg-listbox/cg-listbox.d.ts +38 -0
- package/dist/components/cg-listbox/cg-listbox.d.ts.map +1 -0
- package/dist/components/cg-listbox/cg-listbox.js +258 -0
- package/dist/components/cg-listbox/cg-listbox.js.map +1 -0
- package/dist/components/cg-markdown/cg-markdown.d.ts +41 -0
- package/dist/components/cg-markdown/cg-markdown.d.ts.map +1 -0
- package/dist/components/cg-markdown/cg-markdown.js +542 -0
- package/dist/components/cg-markdown/cg-markdown.js.map +1 -0
- package/dist/components/cg-menubar/cg-menubar.d.ts +64 -0
- package/dist/components/cg-menubar/cg-menubar.d.ts.map +1 -0
- package/dist/components/cg-menubar/cg-menubar.js +338 -0
- package/dist/components/cg-menubar/cg-menubar.js.map +1 -0
- package/dist/components/cg-meter/cg-meter.d.ts +36 -0
- package/dist/components/cg-meter/cg-meter.d.ts.map +1 -0
- package/dist/components/cg-meter/cg-meter.js +204 -0
- package/dist/components/cg-meter/cg-meter.js.map +1 -0
- package/dist/components/cg-metric-card/cg-metric-card.d.ts +51 -0
- package/dist/components/cg-metric-card/cg-metric-card.d.ts.map +1 -0
- package/dist/components/cg-metric-card/cg-metric-card.js +312 -0
- package/dist/components/cg-metric-card/cg-metric-card.js.map +1 -0
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts +77 -0
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts.map +1 -0
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js +245 -0
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js.map +1 -0
- package/dist/components/cg-modal/cg-modal.d.ts +55 -0
- package/dist/components/cg-modal/cg-modal.d.ts.map +1 -0
- package/dist/components/cg-modal/cg-modal.js +409 -0
- package/dist/components/cg-modal/cg-modal.js.map +1 -0
- package/dist/components/cg-navbar/cg-navbar.d.ts +87 -0
- package/dist/components/cg-navbar/cg-navbar.d.ts.map +1 -0
- package/dist/components/cg-navbar/cg-navbar.js +473 -0
- package/dist/components/cg-navbar/cg-navbar.js.map +1 -0
- package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts +46 -0
- package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts.map +1 -0
- package/dist/components/cg-navigation-menu/cg-navigation-menu.js +257 -0
- package/dist/components/cg-navigation-menu/cg-navigation-menu.js.map +1 -0
- package/dist/components/cg-number-input/cg-number-input.d.ts +47 -0
- package/dist/components/cg-number-input/cg-number-input.d.ts.map +1 -0
- package/dist/components/cg-number-input/cg-number-input.js +266 -0
- package/dist/components/cg-number-input/cg-number-input.js.map +1 -0
- package/dist/components/cg-otp-input/cg-otp-input.d.ts +44 -0
- package/dist/components/cg-otp-input/cg-otp-input.d.ts.map +1 -0
- package/dist/components/cg-otp-input/cg-otp-input.js +188 -0
- package/dist/components/cg-otp-input/cg-otp-input.js.map +1 -0
- package/dist/components/cg-pagination/cg-pagination.d.ts +34 -0
- package/dist/components/cg-pagination/cg-pagination.d.ts.map +1 -0
- package/dist/components/cg-pagination/cg-pagination.js +232 -0
- package/dist/components/cg-pagination/cg-pagination.js.map +1 -0
- package/dist/components/cg-password-input/cg-password-input.d.ts +43 -0
- package/dist/components/cg-password-input/cg-password-input.d.ts.map +1 -0
- package/dist/components/cg-password-input/cg-password-input.js +261 -0
- package/dist/components/cg-password-input/cg-password-input.js.map +1 -0
- package/dist/components/cg-phone-input/cg-phone-input.d.ts +93 -0
- package/dist/components/cg-phone-input/cg-phone-input.d.ts.map +1 -0
- package/dist/components/cg-phone-input/cg-phone-input.js +972 -0
- package/dist/components/cg-phone-input/cg-phone-input.js.map +1 -0
- package/dist/components/cg-phone-input/countries.d.ts +38 -0
- package/dist/components/cg-phone-input/countries.d.ts.map +1 -0
- package/dist/components/cg-popover/cg-popover.d.ts +53 -0
- package/dist/components/cg-popover/cg-popover.d.ts.map +1 -0
- package/dist/components/cg-popover/cg-popover.js +215 -0
- package/dist/components/cg-popover/cg-popover.js.map +1 -0
- package/dist/components/cg-portal/cg-portal.d.ts +73 -0
- package/dist/components/cg-portal/cg-portal.d.ts.map +1 -0
- package/dist/components/cg-portal/cg-portal.js +80 -0
- package/dist/components/cg-portal/cg-portal.js.map +1 -0
- package/dist/components/cg-progress-bar/cg-progress-bar.d.ts +51 -0
- package/dist/components/cg-progress-bar/cg-progress-bar.d.ts.map +1 -0
- package/dist/components/cg-progress-bar/cg-progress-bar.js +267 -0
- package/dist/components/cg-progress-bar/cg-progress-bar.js.map +1 -0
- package/dist/components/cg-radio/cg-radio.d.ts +43 -0
- package/dist/components/cg-radio/cg-radio.d.ts.map +1 -0
- package/dist/components/cg-radio/cg-radio.js +268 -0
- package/dist/components/cg-radio/cg-radio.js.map +1 -0
- package/dist/components/cg-radio-group/cg-radio-group.d.ts +49 -0
- package/dist/components/cg-radio-group/cg-radio-group.d.ts.map +1 -0
- package/dist/components/cg-radio-group/cg-radio-group.js +142 -0
- package/dist/components/cg-radio-group/cg-radio-group.js.map +1 -0
- package/dist/components/cg-rating/cg-rating.d.ts +41 -0
- package/dist/components/cg-rating/cg-rating.d.ts.map +1 -0
- package/dist/components/cg-rating/cg-rating.js +201 -0
- package/dist/components/cg-rating/cg-rating.js.map +1 -0
- package/dist/components/cg-resizable/cg-resizable.d.ts +33 -0
- package/dist/components/cg-resizable/cg-resizable.d.ts.map +1 -0
- package/dist/components/cg-resizable/cg-resizable.js +236 -0
- package/dist/components/cg-resizable/cg-resizable.js.map +1 -0
- package/dist/components/cg-scroll-area/cg-scroll-area.d.ts +27 -0
- package/dist/components/cg-scroll-area/cg-scroll-area.d.ts.map +1 -0
- package/dist/components/cg-scroll-area/cg-scroll-area.js +111 -0
- package/dist/components/cg-scroll-area/cg-scroll-area.js.map +1 -0
- package/dist/components/cg-search-input/cg-search-input.d.ts +62 -0
- package/dist/components/cg-search-input/cg-search-input.d.ts.map +1 -0
- package/dist/components/cg-search-input/cg-search-input.js +106 -0
- package/dist/components/cg-search-input/cg-search-input.js.map +1 -0
- package/dist/components/cg-segmented-control/cg-segmented-control.d.ts +52 -0
- package/dist/components/cg-segmented-control/cg-segmented-control.d.ts.map +1 -0
- package/dist/components/cg-segmented-control/cg-segmented-control.js +182 -0
- package/dist/components/cg-segmented-control/cg-segmented-control.js.map +1 -0
- package/dist/components/cg-select/cg-select.d.ts +67 -0
- package/dist/components/cg-select/cg-select.d.ts.map +1 -0
- package/dist/components/cg-select/cg-select.js +302 -0
- package/dist/components/cg-select/cg-select.js.map +1 -0
- package/dist/components/cg-separator/cg-separator.d.ts +25 -0
- package/dist/components/cg-separator/cg-separator.d.ts.map +1 -0
- package/dist/components/cg-separator/cg-separator.js +105 -0
- package/dist/components/cg-separator/cg-separator.js.map +1 -0
- package/dist/components/cg-sheet/cg-sheet.d.ts +39 -0
- package/dist/components/cg-sheet/cg-sheet.d.ts.map +1 -0
- package/dist/components/cg-sheet/cg-sheet.js +211 -0
- package/dist/components/cg-sheet/cg-sheet.js.map +1 -0
- package/dist/components/cg-sidebar/cg-sidebar.d.ts +56 -0
- package/dist/components/cg-sidebar/cg-sidebar.d.ts.map +1 -0
- package/dist/components/cg-sidebar/cg-sidebar.js +266 -0
- package/dist/components/cg-sidebar/cg-sidebar.js.map +1 -0
- package/dist/components/cg-skeleton/cg-skeleton.d.ts +31 -0
- package/dist/components/cg-skeleton/cg-skeleton.d.ts.map +1 -0
- package/dist/components/cg-skeleton/cg-skeleton.js +136 -0
- package/dist/components/cg-skeleton/cg-skeleton.js.map +1 -0
- package/dist/components/cg-slider/cg-slider.d.ts +51 -0
- package/dist/components/cg-slider/cg-slider.d.ts.map +1 -0
- package/dist/components/cg-slider/cg-slider.js +375 -0
- package/dist/components/cg-slider/cg-slider.js.map +1 -0
- package/dist/components/cg-sortable/cg-sortable.d.ts +72 -0
- package/dist/components/cg-sortable/cg-sortable.d.ts.map +1 -0
- package/dist/components/cg-sortable/cg-sortable.js +177 -0
- package/dist/components/cg-sortable/cg-sortable.js.map +1 -0
- package/dist/components/cg-spinner/cg-spinner.d.ts +28 -0
- package/dist/components/cg-spinner/cg-spinner.d.ts.map +1 -0
- package/dist/components/cg-spinner/cg-spinner.js +119 -0
- package/dist/components/cg-spinner/cg-spinner.js.map +1 -0
- package/dist/components/cg-split-button/cg-split-button.d.ts +66 -0
- package/dist/components/cg-split-button/cg-split-button.d.ts.map +1 -0
- package/dist/components/cg-split-button/cg-split-button.js +330 -0
- package/dist/components/cg-split-button/cg-split-button.js.map +1 -0
- package/dist/components/cg-stack/cg-stack.d.ts +25 -0
- package/dist/components/cg-stack/cg-stack.d.ts.map +1 -0
- package/dist/components/cg-stack/cg-stack.js +85 -0
- package/dist/components/cg-stack/cg-stack.js.map +1 -0
- package/dist/components/cg-steps/cg-steps.d.ts +37 -0
- package/dist/components/cg-steps/cg-steps.d.ts.map +1 -0
- package/dist/components/cg-steps/cg-steps.js +251 -0
- package/dist/components/cg-steps/cg-steps.js.map +1 -0
- package/dist/components/cg-switch/cg-switch.d.ts +38 -0
- package/dist/components/cg-switch/cg-switch.d.ts.map +1 -0
- package/dist/components/cg-switch/cg-switch.js +210 -0
- package/dist/components/cg-switch/cg-switch.js.map +1 -0
- package/dist/components/cg-table/cg-table.d.ts +67 -0
- package/dist/components/cg-table/cg-table.d.ts.map +1 -0
- package/dist/components/cg-table/cg-table.js +395 -0
- package/dist/components/cg-table/cg-table.js.map +1 -0
- package/dist/components/cg-tabs/cg-tabs.d.ts +39 -0
- package/dist/components/cg-tabs/cg-tabs.d.ts.map +1 -0
- package/dist/components/cg-tabs/cg-tabs.js +241 -0
- package/dist/components/cg-tabs/cg-tabs.js.map +1 -0
- package/dist/components/cg-tag-input/cg-tag-input.d.ts +50 -0
- package/dist/components/cg-tag-input/cg-tag-input.d.ts.map +1 -0
- package/dist/components/cg-tag-input/cg-tag-input.js +307 -0
- package/dist/components/cg-tag-input/cg-tag-input.js.map +1 -0
- package/dist/components/cg-text/cg-text.d.ts +30 -0
- package/dist/components/cg-text/cg-text.d.ts.map +1 -0
- package/dist/components/cg-text/cg-text.js +126 -0
- package/dist/components/cg-text/cg-text.js.map +1 -0
- package/dist/components/cg-textarea/cg-textarea.d.ts +57 -0
- package/dist/components/cg-textarea/cg-textarea.d.ts.map +1 -0
- package/dist/components/cg-textarea/cg-textarea.js +295 -0
- package/dist/components/cg-textarea/cg-textarea.js.map +1 -0
- package/dist/components/cg-theme/cg-theme.d.ts +82 -0
- package/dist/components/cg-theme/cg-theme.d.ts.map +1 -0
- package/dist/components/cg-theme/cg-theme.js +91 -0
- package/dist/components/cg-theme/cg-theme.js.map +1 -0
- package/dist/components/cg-theme-editor/cg-theme-editor.d.ts +98 -0
- package/dist/components/cg-theme-editor/cg-theme-editor.d.ts.map +1 -0
- package/dist/components/cg-theme-editor/cg-theme-editor.js +341 -0
- package/dist/components/cg-theme-editor/cg-theme-editor.js.map +1 -0
- package/dist/components/cg-time-picker/cg-time-picker.d.ts +55 -0
- package/dist/components/cg-time-picker/cg-time-picker.d.ts.map +1 -0
- package/dist/components/cg-time-picker/cg-time-picker.js +417 -0
- package/dist/components/cg-time-picker/cg-time-picker.js.map +1 -0
- package/dist/components/cg-timeline/cg-timeline.d.ts +70 -0
- package/dist/components/cg-timeline/cg-timeline.d.ts.map +1 -0
- package/dist/components/cg-timeline/cg-timeline.js +131 -0
- package/dist/components/cg-timeline/cg-timeline.js.map +1 -0
- package/dist/components/cg-timeline-event/cg-timeline-event.d.ts +59 -0
- package/dist/components/cg-timeline-event/cg-timeline-event.d.ts.map +1 -0
- package/dist/components/cg-timeline-event/cg-timeline-event.js +190 -0
- package/dist/components/cg-timeline-event/cg-timeline-event.js.map +1 -0
- package/dist/components/cg-toaster/cg-toaster.d.ts +44 -0
- package/dist/components/cg-toaster/cg-toaster.d.ts.map +1 -0
- package/dist/components/cg-toaster/cg-toaster.js +226 -0
- package/dist/components/cg-toaster/cg-toaster.js.map +1 -0
- package/dist/components/cg-toggle/cg-toggle.d.ts +38 -0
- package/dist/components/cg-toggle/cg-toggle.d.ts.map +1 -0
- package/dist/components/cg-toggle/cg-toggle.js +204 -0
- package/dist/components/cg-toggle/cg-toggle.js.map +1 -0
- package/dist/components/cg-toggle-group/cg-toggle-group.d.ts +39 -0
- package/dist/components/cg-toggle-group/cg-toggle-group.d.ts.map +1 -0
- package/dist/components/cg-toggle-group/cg-toggle-group.js +112 -0
- package/dist/components/cg-toggle-group/cg-toggle-group.js.map +1 -0
- package/dist/components/cg-tooltip/cg-tooltip.d.ts +59 -0
- package/dist/components/cg-tooltip/cg-tooltip.d.ts.map +1 -0
- package/dist/components/cg-tooltip/cg-tooltip.js +277 -0
- package/dist/components/cg-tooltip/cg-tooltip.js.map +1 -0
- package/dist/components/cg-tree-view/cg-tree-view.d.ts +42 -0
- package/dist/components/cg-tree-view/cg-tree-view.d.ts.map +1 -0
- package/dist/components/cg-tree-view/cg-tree-view.js +244 -0
- package/dist/components/cg-tree-view/cg-tree-view.js.map +1 -0
- package/dist/components/cg-visually-hidden/cg-visually-hidden.d.ts +42 -0
- package/dist/components/cg-visually-hidden/cg-visually-hidden.d.ts.map +1 -0
- package/dist/components/cg-visually-hidden/cg-visually-hidden.js +40 -0
- package/dist/components/cg-visually-hidden/cg-visually-hidden.js.map +1 -0
- package/dist/foundation.d.ts +116 -0
- package/dist/foundation.d.ts.map +1 -0
- package/dist/foundation.js +211 -0
- package/dist/foundation.js.map +1 -0
- package/dist/index.d.ts +228 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +407 -0
- package/dist/index.js.map +1 -0
- package/dist/lazy.d.ts +9 -0
- package/dist/lazy.d.ts.map +1 -0
- package/dist/lazy.js +38 -0
- package/dist/lazy.js.map +1 -0
- package/dist/styles/ai-effects.css.d.ts +11 -0
- package/dist/styles/ai-effects.css.d.ts.map +1 -0
- package/dist/styles/base.css.d.ts +12 -0
- package/dist/styles/base.css.d.ts.map +1 -0
- package/dist/styles/elevation.css.d.ts +11 -0
- package/dist/styles/elevation.css.d.ts.map +1 -0
- package/dist/styles/focus.css.d.ts +11 -0
- package/dist/styles/focus.css.d.ts.map +1 -0
- package/dist/styles/index.d.ts +8 -0
- package/dist/styles/index.d.ts.map +1 -0
- package/dist/styles/menu.css.d.ts +14 -0
- package/dist/styles/menu.css.d.ts.map +1 -0
- package/dist/styles/motion.css.d.ts +41 -0
- package/dist/styles/motion.css.d.ts.map +1 -0
- package/dist/styles/premium.css.d.ts +75 -0
- package/dist/styles/premium.css.d.ts.map +1 -0
- package/dist/utils/drag-manager.d.ts +40 -0
- package/dist/utils/drag-manager.d.ts.map +1 -0
- package/dist/utils/floating.d.ts +55 -0
- package/dist/utils/floating.d.ts.map +1 -0
- package/dist/utils/focus-trap.d.ts +37 -0
- package/dist/utils/focus-trap.d.ts.map +1 -0
- package/dist/utils/lazy.d.ts +47 -0
- package/dist/utils/lazy.d.ts.map +1 -0
- package/dist/utils/outside-click.d.ts +24 -0
- package/dist/utils/outside-click.d.ts.map +1 -0
- package/dist/utils/roving-index.d.ts +54 -0
- package/dist/utils/roving-index.d.ts.map +1 -0
- package/dist/utils/sanitize.d.ts +7 -0
- package/dist/utils/sanitize.d.ts.map +1 -0
- package/dist/utils/text-scramble.d.ts +144 -0
- package/dist/utils/text-scramble.d.ts.map +1 -0
- package/package.json +887 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-timeline.js","sources":["../../../src/components/cg-timeline/cg-timeline.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\nimport '../cg-timeline-event/cg-timeline-event.js';\n\ntype GroupBy = 'none' | 'day' | 'week' | 'month' | 'year';\n\n/**\n * @element cg-timeline\n * Vertical (default) or horizontal sequence of `<cg-timeline-event>`\n * children. The container handles three things automatically as events\n * are added/removed:\n *\n * 1. Marks the final event with `last` so the trailing connector hides.\n * 2. Propagates `direction` so children flip layout for horizontal mode.\n * 3. Groups events by day / week / month / year — when `group-by` is set,\n * the container reads each child's `date` prop, computes a bucket key,\n * and stamps the first event of each bucket with a `group-header=`\n * attribute (e.g. \"Today\", \"Yesterday\", \"Mar 5\", \"March\", \"2024\").\n * The child then renders that label as a sticky-feel section header\n * above its dot/body. Headers use Intl, so they respect `locale`.\n *\n * Vertical layout only supports group headers — horizontal timelines are\n * a different UX problem (cluster headers above runs of same-day events\n * would compete with the time-axis); set `group-by=\"none\"` (default) for\n * horizontal.\n *\n * @example\n * ```html\n * <cg-timeline group-by=\"day\" label=\"Patient activity\">\n * <cg-timeline-event date=\"2026-05-04T09:14\" timestamp=\"09:14\">Checked in</cg-timeline-event>\n * <cg-timeline-event date=\"2026-05-04T09:30\" timestamp=\"09:30\" variant=\"success\">Consultation</cg-timeline-event>\n * <cg-timeline-event date=\"2026-05-03T16:20\" timestamp=\"16:20\">Lab results uploaded</cg-timeline-event>\n * <cg-timeline-event date=\"2026-04-28T11:00\" timestamp=\"Apr 28\">Initial visit</cg-timeline-event>\n * </cg-timeline>\n * <!-- renders headers: Today / Yesterday / Apr 28 -->\n * ```\n *\n * @slot - cg-timeline-event children.\n *\n * @cssprop --cg-component-timeline-event-gap - Gap between events (default 0)\n */\n@customElement('cg-timeline')\nexport class CgTimeline extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n :host {\n display: block;\n }\n .list {\n display: flex;\n flex-direction: column;\n gap: var(--cg-component-timeline-event-gap, 0);\n list-style: none;\n margin: 0;\n padding: 0;\n }\n :host([direction=\"horizontal\"]) .list {\n flex-direction: row;\n align-items: flex-start;\n overflow-x: auto;\n }\n `];\n\n /** Layout direction. */\n @property({ reflect: true }) direction: 'vertical' | 'horizontal' = 'vertical';\n\n /** Accessible label for the timeline as a whole. */\n @property() label = 'Timeline';\n\n /**\n * Auto-grouping mode. When set, events with a `date` prop are bucketed\n * and the first event in each bucket gets a `group-header` attribute\n * with a localized label (Today / Yesterday / weekday / \"Mar 5\" / etc).\n * Vertical layout only.\n */\n @property({ attribute: 'group-by', reflect: true }) groupBy: GroupBy = 'none';\n\n /** BCP 47 locale for group header formatting. Defaults to the document language. */\n @property() locale: string | undefined;\n\n override updated(changed: Map<string, unknown>) {\n if (changed.has('direction') || changed.has('groupBy') || changed.has('locale')) {\n this._syncChildren();\n }\n }\n\n private _syncChildren(slot?: HTMLSlotElement) {\n const root = slot ?? this.shadowRoot?.querySelector('slot');\n if (!root) return;\n const events = (root as HTMLSlotElement).assignedElements({ flatten: true })\n .filter(el => el.tagName.toLowerCase() === 'cg-timeline-event');\n\n const grouping = this.direction === 'vertical' ? this.groupBy : 'none';\n let prevKey = '';\n\n events.forEach((el, i) => {\n // Last + direction always run.\n if (i === events.length - 1) el.setAttribute('last', '');\n else el.removeAttribute('last');\n el.setAttribute('direction', this.direction);\n\n // Grouping (vertical only).\n if (grouping === 'none') {\n el.removeAttribute('group-header');\n return;\n }\n const dateAttr = (el as any).date || el.getAttribute('date') || '';\n if (!dateAttr) {\n el.removeAttribute('group-header');\n return;\n }\n const date = new Date(dateAttr);\n if (Number.isNaN(date.valueOf())) {\n el.removeAttribute('group-header');\n return;\n }\n const key = this._groupKey(date, grouping);\n if (key !== prevKey) {\n el.setAttribute('group-header', this._formatLabel(date, grouping));\n prevKey = key;\n } else {\n el.removeAttribute('group-header');\n }\n });\n }\n\n /** Stable bucket key for a date under a given grouping unit. */\n private _groupKey(date: Date, by: Exclude<GroupBy, 'none'>): string {\n if (by === 'year') return `Y:${date.getFullYear()}`;\n if (by === 'month') return `M:${date.getFullYear()}-${date.getMonth()}`;\n if (by === 'week') {\n // ISO week: Monday-start. Anchor to the Monday of the date's week.\n const d = new Date(date);\n d.setHours(0, 0, 0, 0);\n const day = d.getDay() || 7;\n d.setDate(d.getDate() - day + 1);\n return `W:${d.getFullYear()}-${d.getMonth()}-${d.getDate()}`;\n }\n // day\n return `D:${date.getFullYear()}-${date.getMonth()}-${date.getDate()}`;\n }\n\n /** Localized header label using Intl. */\n private _formatLabel(date: Date, by: Exclude<GroupBy, 'none'>): string {\n const locale = this.locale ?? (typeof document !== 'undefined' ? document.documentElement.lang || undefined : undefined);\n const now = new Date();\n const sameYear = date.getFullYear() === now.getFullYear();\n\n if (by === 'day') {\n const today = this._stripTime(now);\n const target = this._stripTime(date);\n const diffDays = Math.round((today.getTime() - target.getTime()) / 86_400_000);\n if (diffDays === 0) return 'Today';\n if (diffDays === 1) return 'Yesterday';\n if (diffDays === -1) return 'Tomorrow';\n if (diffDays > 1 && diffDays < 7) return new Intl.DateTimeFormat(locale, { weekday: 'long' }).format(date);\n return new Intl.DateTimeFormat(locale, sameYear\n ? { month: 'short', day: 'numeric' }\n : { month: 'short', day: 'numeric', year: 'numeric' }\n ).format(date);\n }\n\n if (by === 'week') {\n const monday = this._mondayOf(date);\n const thisMonday = this._mondayOf(now);\n const diffWeeks = Math.round((thisMonday.getTime() - monday.getTime()) / (7 * 86_400_000));\n if (diffWeeks === 0) return 'This week';\n if (diffWeeks === 1) return 'Last week';\n if (diffWeeks === -1) return 'Next week';\n const wkLabel = new Intl.DateTimeFormat(locale, sameYear\n ? { month: 'short', day: 'numeric' }\n : { month: 'short', day: 'numeric', year: 'numeric' }\n ).format(monday);\n return `Week of ${wkLabel}`;\n }\n\n if (by === 'month') {\n const sameMonth = sameYear && date.getMonth() === now.getMonth();\n if (sameMonth) return 'This month';\n const prev = new Date(now.getFullYear(), now.getMonth() - 1, 1);\n if (date.getFullYear() === prev.getFullYear() && date.getMonth() === prev.getMonth()) return 'Last month';\n return new Intl.DateTimeFormat(locale, sameYear ? { month: 'long' } : { month: 'long', year: 'numeric' }).format(date);\n }\n\n // year\n if (sameYear) return 'This year';\n if (date.getFullYear() === now.getFullYear() - 1) return 'Last year';\n return new Intl.DateTimeFormat(locale, { year: 'numeric' }).format(date);\n }\n\n private _stripTime(d: Date): Date {\n const x = new Date(d);\n x.setHours(0, 0, 0, 0);\n return x;\n }\n\n private _mondayOf(d: Date): Date {\n const x = this._stripTime(d);\n const day = x.getDay() || 7;\n x.setDate(x.getDate() - day + 1);\n return x;\n }\n\n private _onSlotChange = (e: Event): void => {\n this._syncChildren(e.target as HTMLSlotElement);\n };\n\n override render() {\n return html`\n <ol class=\"list\" role=\"list\" aria-label=${this.label}>\n <slot @slotchange=${this._onSlotChange}></slot>\n </ol>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-timeline': CgTimeline;\n }\n}\n"],"names":["CgTimeline","LitElement","e","changed","slot","root","events","el","grouping","prevKey","i","dateAttr","date","key","by","d","day","locale","now","sameYear","today","target","diffDays","monday","thisMonday","diffWeeks","prev","x","html","hostBlock","reducedMotion","css","__decorateClass","property","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* @element cg-timeline-event
|
|
4
|
+
* One entry in a `<cg-timeline>` — renders the dot, the connecting line,
|
|
5
|
+
* an optional timestamp, and the event content. Stack multiple inside a
|
|
6
|
+
* `<cg-timeline>` parent.
|
|
7
|
+
*
|
|
8
|
+
* Variants tint the dot for status (success/warning/error/info/accent).
|
|
9
|
+
* The `default` variant renders a hollow ring (modern, more subtle than
|
|
10
|
+
* a solid grey blob). The parent `<cg-timeline>` sets the `last` attr
|
|
11
|
+
* on the final event to suppress its trailing connector, and propagates
|
|
12
|
+
* its `direction` so horizontal mode just works.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <cg-timeline-event timestamp="09:14" variant="success">
|
|
17
|
+
* <strong>Consultation completed</strong>
|
|
18
|
+
* <p>Notes synced to record.</p>
|
|
19
|
+
* </cg-timeline-event>
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @slot - The event body content.
|
|
23
|
+
* @slot icon - Custom dot icon. Falls back to a token-colored circle.
|
|
24
|
+
* @slot timestamp - Custom timestamp markup. Falls back to the `timestamp` prop.
|
|
25
|
+
*
|
|
26
|
+
* @cssprop --cg-component-timeline-dot-size - Dot diameter (default 12px)
|
|
27
|
+
* @cssprop --cg-component-timeline-line-width - Connector thickness (default 2px)
|
|
28
|
+
*/
|
|
29
|
+
export declare class CgTimelineEvent extends LitElement {
|
|
30
|
+
static styles: import('lit').CSSResult[];
|
|
31
|
+
/** Display string for the timestamp slot's fallback. */
|
|
32
|
+
timestamp: string;
|
|
33
|
+
/** Status tint for the dot. */
|
|
34
|
+
variant: 'default' | 'success' | 'warning' | 'error' | 'info' | 'accent';
|
|
35
|
+
/** When true, suppresses the trailing connector line and the body's bottom padding. Set automatically by <cg-timeline>. */
|
|
36
|
+
last: boolean;
|
|
37
|
+
/** Layout direction. Set automatically by <cg-timeline> from its own direction prop. */
|
|
38
|
+
direction: 'vertical' | 'horizontal';
|
|
39
|
+
/**
|
|
40
|
+
* Parseable date for grouping, separate from the display `timestamp`.
|
|
41
|
+
* Accepts an ISO string, RFC 2822 string, or anything `new Date()` parses.
|
|
42
|
+
* The parent <cg-timeline group-by=...> reads this and computes the
|
|
43
|
+
* bucket; if absent, the event is not grouped.
|
|
44
|
+
*/
|
|
45
|
+
date: string;
|
|
46
|
+
/**
|
|
47
|
+
* Group section label set by the parent <cg-timeline> when this event
|
|
48
|
+
* is the first in its bucket (Today / Yesterday / "Mar 5" / "March" / etc).
|
|
49
|
+
* Consumers don't set this manually — let the parent's group-by drive it.
|
|
50
|
+
*/
|
|
51
|
+
groupHeader: string;
|
|
52
|
+
render(): import('lit').TemplateResult<1>;
|
|
53
|
+
}
|
|
54
|
+
declare global {
|
|
55
|
+
interface HTMLElementTagNameMap {
|
|
56
|
+
'cg-timeline-event': CgTimelineEvent;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=cg-timeline-event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-timeline-event.d.ts","sourceRoot":"","sources":["../../../src/components/cg-timeline-event/cg-timeline-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBACa,eAAgB,SAAQ,UAAU;IAC7C,OAAgB,MAAM,4BAwInB;IAEH,wDAAwD;IAC5C,SAAS,SAAM;IAE3B,+BAA+B;IACF,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAa;IAElH,2HAA2H;IAC/E,IAAI,UAAS;IAEzD,wFAAwF;IAC3D,SAAS,EAAE,UAAU,GAAG,YAAY,CAAc;IAE/E;;;;;OAKG;IACS,IAAI,SAAM;IAEtB;;;;OAIG;IACqD,WAAW,SAAM;IAEhE,MAAM;CAehB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,eAAe,CAAC;KACtC;CACF"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { css as p, LitElement as h, nothing as g, html as c } from "lit";
|
|
2
|
+
import { property as r, customElement as u } from "lit/decorators.js";
|
|
3
|
+
import { h as m, r as v } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
+
var f = Object.defineProperty, b = Object.getOwnPropertyDescriptor, o = (d, a, n, i) => {
|
|
5
|
+
for (var e = i > 1 ? void 0 : i ? b(a, n) : a, s = d.length - 1, l; s >= 0; s--)
|
|
6
|
+
(l = d[s]) && (e = (i ? l(a, n, e) : l(e)) || e);
|
|
7
|
+
return i && e && f(a, n, e), e;
|
|
8
|
+
};
|
|
9
|
+
let t = class extends h {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments), this.timestamp = "", this.variant = "default", this.last = !1, this.direction = "vertical", this.date = "", this.groupHeader = "";
|
|
12
|
+
}
|
|
13
|
+
render() {
|
|
14
|
+
return c`
|
|
15
|
+
${this.groupHeader ? c`<div class="group-header" role="heading" aria-level="3">${this.groupHeader}</div>` : g}
|
|
16
|
+
<div class="marker" aria-hidden="true">
|
|
17
|
+
<span class="dot"><slot name="icon"></slot></span>
|
|
18
|
+
<span class="line"></span>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="body">
|
|
21
|
+
${this.timestamp || this.querySelector('[slot="timestamp"]') ? c`
|
|
22
|
+
<span class="timestamp"><slot name="timestamp">${this.timestamp}</slot></span>
|
|
23
|
+
` : g}
|
|
24
|
+
<slot></slot>
|
|
25
|
+
</div>
|
|
26
|
+
`;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
t.styles = [m, v, p`
|
|
30
|
+
:host {
|
|
31
|
+
--_dot-size: var(--cg-component-timeline-dot-size, var(--cg-spacing-12));
|
|
32
|
+
--_line-width: var(--cg-component-timeline-line-width, var(--cg-border-width-100));
|
|
33
|
+
--_dot-color: var(--cg-color-surface-cards-border);
|
|
34
|
+
--_line-color: var(--cg-color-surface-cards-border);
|
|
35
|
+
display: grid;
|
|
36
|
+
grid-template-columns: var(--_dot-size) 1fr;
|
|
37
|
+
column-gap: var(--cg-spacing-12);
|
|
38
|
+
position: relative;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Group header — rendered when the parent cg-timeline (with group-by)
|
|
42
|
+
stamps a group-header attribute. Spans both columns above the
|
|
43
|
+
dot/body row. */
|
|
44
|
+
.group-header {
|
|
45
|
+
grid-column: 1 / -1;
|
|
46
|
+
font-size: var(--cg-font-size-xs);
|
|
47
|
+
font-weight: var(--cg-font-weight-semibold);
|
|
48
|
+
color: var(--cg-color-input-text-placeholder);
|
|
49
|
+
text-transform: uppercase;
|
|
50
|
+
letter-spacing: var(--cg-letter-spacing-wide);
|
|
51
|
+
padding-top: var(--cg-spacing-16);
|
|
52
|
+
padding-bottom: var(--cg-spacing-8);
|
|
53
|
+
}
|
|
54
|
+
/* First event in the timeline shouldn't have a top gap above its
|
|
55
|
+
header (the timeline already has its own top edge). */
|
|
56
|
+
:host(:first-of-type) .group-header { padding-top: 0; }
|
|
57
|
+
|
|
58
|
+
/* ── Vertical (default) ──
|
|
59
|
+
Dot in left column; body in right column; connector line under
|
|
60
|
+
the dot extending down to the next event. */
|
|
61
|
+
.marker {
|
|
62
|
+
grid-column: 1;
|
|
63
|
+
display: flex;
|
|
64
|
+
flex-direction: column;
|
|
65
|
+
align-items: center;
|
|
66
|
+
padding-top: var(--cg-spacing-4);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.dot {
|
|
70
|
+
box-sizing: border-box;
|
|
71
|
+
width: var(--_dot-size);
|
|
72
|
+
height: var(--_dot-size);
|
|
73
|
+
border-radius: var(--cg-border-radius-full);
|
|
74
|
+
background: var(--_dot-color);
|
|
75
|
+
/* 4px halo of surface-bg masks the connector line where it crosses
|
|
76
|
+
the dot, so the line looks continuous between events. */
|
|
77
|
+
box-shadow: 0 0 0 var(--cg-spacing-4) var(--cg-color-surface-base-background);
|
|
78
|
+
position: relative;
|
|
79
|
+
z-index: 1;
|
|
80
|
+
flex-shrink: 0;
|
|
81
|
+
display: flex;
|
|
82
|
+
align-items: center;
|
|
83
|
+
justify-content: center;
|
|
84
|
+
}
|
|
85
|
+
/* Default variant = hollow ring. Inset shadow draws the ring without
|
|
86
|
+
growing the box; outer shadow keeps the line-masking halo. */
|
|
87
|
+
:host(:not([variant])) .dot,
|
|
88
|
+
:host([variant="default"]) .dot {
|
|
89
|
+
background: transparent;
|
|
90
|
+
box-shadow:
|
|
91
|
+
inset 0 0 0 var(--cg-border-width-100) var(--_dot-color),
|
|
92
|
+
0 0 0 var(--cg-spacing-4) var(--cg-color-surface-base-background);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.line {
|
|
96
|
+
flex: 1 1 auto;
|
|
97
|
+
width: var(--_line-width);
|
|
98
|
+
background: var(--_line-color);
|
|
99
|
+
margin-top: var(--cg-spacing-4);
|
|
100
|
+
}
|
|
101
|
+
:host([last]) .line { display: none; }
|
|
102
|
+
|
|
103
|
+
.body {
|
|
104
|
+
grid-column: 2;
|
|
105
|
+
padding-bottom: var(--cg-spacing-16);
|
|
106
|
+
min-width: 0;
|
|
107
|
+
}
|
|
108
|
+
:host([last]) .body { padding-bottom: 0; }
|
|
109
|
+
|
|
110
|
+
.timestamp {
|
|
111
|
+
font-size: var(--cg-font-size-xs);
|
|
112
|
+
color: var(--cg-color-input-text-placeholder);
|
|
113
|
+
line-height: var(--cg-line-height-snug);
|
|
114
|
+
margin-bottom: var(--cg-spacing-4);
|
|
115
|
+
display: block;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/* ── Horizontal — set by parent <cg-timeline direction="horizontal"> ──
|
|
119
|
+
Marker on top (dot + horizontal line), body below the marker. */
|
|
120
|
+
:host([direction="horizontal"]) {
|
|
121
|
+
display: grid;
|
|
122
|
+
grid-template-columns: 1fr;
|
|
123
|
+
grid-template-rows: var(--_dot-size) 1fr;
|
|
124
|
+
column-gap: 0;
|
|
125
|
+
row-gap: var(--cg-spacing-8);
|
|
126
|
+
flex: 1 1 auto;
|
|
127
|
+
min-width: var(--cg-spacing-128);
|
|
128
|
+
padding-right: var(--cg-spacing-16);
|
|
129
|
+
}
|
|
130
|
+
:host([direction="horizontal"]) .marker {
|
|
131
|
+
grid-row: 1;
|
|
132
|
+
grid-column: 1;
|
|
133
|
+
flex-direction: row;
|
|
134
|
+
align-items: center;
|
|
135
|
+
padding-top: 0;
|
|
136
|
+
}
|
|
137
|
+
:host([direction="horizontal"]) .line {
|
|
138
|
+
width: auto;
|
|
139
|
+
height: var(--_line-width);
|
|
140
|
+
flex: 1 1 auto;
|
|
141
|
+
margin-top: 0;
|
|
142
|
+
margin-left: var(--cg-spacing-4);
|
|
143
|
+
}
|
|
144
|
+
:host([direction="horizontal"]) .body {
|
|
145
|
+
grid-row: 2;
|
|
146
|
+
grid-column: 1;
|
|
147
|
+
padding-bottom: 0;
|
|
148
|
+
}
|
|
149
|
+
:host([direction="horizontal"][last]) {
|
|
150
|
+
flex: 0 0 auto;
|
|
151
|
+
padding-right: 0;
|
|
152
|
+
min-width: 0;
|
|
153
|
+
}
|
|
154
|
+
:host([direction="horizontal"][last]) .line { display: none; }
|
|
155
|
+
|
|
156
|
+
/* ── Variant tints ──
|
|
157
|
+
Use status text-default tokens — they resolve to solid colors in
|
|
158
|
+
both themes (green-700/green-400 etc.) and are the established
|
|
159
|
+
pattern for dot/icon tinting in this system. */
|
|
160
|
+
:host([variant="success"]) { --_dot-color: var(--cg-color-status-success-text-default); }
|
|
161
|
+
:host([variant="warning"]) { --_dot-color: var(--cg-color-status-warning-text-default); }
|
|
162
|
+
:host([variant="error"]) { --_dot-color: var(--cg-color-status-error-text-default); }
|
|
163
|
+
:host([variant="info"]) { --_dot-color: var(--cg-color-status-info-text-default); }
|
|
164
|
+
:host([variant="accent"]) { --_dot-color: var(--cg-color-action-primary-background-default); }
|
|
165
|
+
`];
|
|
166
|
+
o([
|
|
167
|
+
r()
|
|
168
|
+
], t.prototype, "timestamp", 2);
|
|
169
|
+
o([
|
|
170
|
+
r({ reflect: !0 })
|
|
171
|
+
], t.prototype, "variant", 2);
|
|
172
|
+
o([
|
|
173
|
+
r({ type: Boolean, reflect: !0 })
|
|
174
|
+
], t.prototype, "last", 2);
|
|
175
|
+
o([
|
|
176
|
+
r({ reflect: !0 })
|
|
177
|
+
], t.prototype, "direction", 2);
|
|
178
|
+
o([
|
|
179
|
+
r()
|
|
180
|
+
], t.prototype, "date", 2);
|
|
181
|
+
o([
|
|
182
|
+
r({ attribute: "group-header", reflect: !0 })
|
|
183
|
+
], t.prototype, "groupHeader", 2);
|
|
184
|
+
t = o([
|
|
185
|
+
u("cg-timeline-event")
|
|
186
|
+
], t);
|
|
187
|
+
export {
|
|
188
|
+
t as CgTimelineEvent
|
|
189
|
+
};
|
|
190
|
+
//# sourceMappingURL=cg-timeline-event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-timeline-event.js","sources":["../../../src/components/cg-timeline-event/cg-timeline-event.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\n\n/**\n * @element cg-timeline-event\n * One entry in a `<cg-timeline>` — renders the dot, the connecting line,\n * an optional timestamp, and the event content. Stack multiple inside a\n * `<cg-timeline>` parent.\n *\n * Variants tint the dot for status (success/warning/error/info/accent).\n * The `default` variant renders a hollow ring (modern, more subtle than\n * a solid grey blob). The parent `<cg-timeline>` sets the `last` attr\n * on the final event to suppress its trailing connector, and propagates\n * its `direction` so horizontal mode just works.\n *\n * @example\n * ```html\n * <cg-timeline-event timestamp=\"09:14\" variant=\"success\">\n * <strong>Consultation completed</strong>\n * <p>Notes synced to record.</p>\n * </cg-timeline-event>\n * ```\n *\n * @slot - The event body content.\n * @slot icon - Custom dot icon. Falls back to a token-colored circle.\n * @slot timestamp - Custom timestamp markup. Falls back to the `timestamp` prop.\n *\n * @cssprop --cg-component-timeline-dot-size - Dot diameter (default 12px)\n * @cssprop --cg-component-timeline-line-width - Connector thickness (default 2px)\n */\n@customElement('cg-timeline-event')\nexport class CgTimelineEvent extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n :host {\n --_dot-size: var(--cg-component-timeline-dot-size, var(--cg-spacing-12));\n --_line-width: var(--cg-component-timeline-line-width, var(--cg-border-width-100));\n --_dot-color: var(--cg-color-surface-cards-border);\n --_line-color: var(--cg-color-surface-cards-border);\n display: grid;\n grid-template-columns: var(--_dot-size) 1fr;\n column-gap: var(--cg-spacing-12);\n position: relative;\n }\n\n /* Group header — rendered when the parent cg-timeline (with group-by)\n stamps a group-header attribute. Spans both columns above the\n dot/body row. */\n .group-header {\n grid-column: 1 / -1;\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-semibold);\n color: var(--cg-color-input-text-placeholder);\n text-transform: uppercase;\n letter-spacing: var(--cg-letter-spacing-wide);\n padding-top: var(--cg-spacing-16);\n padding-bottom: var(--cg-spacing-8);\n }\n /* First event in the timeline shouldn't have a top gap above its\n header (the timeline already has its own top edge). */\n :host(:first-of-type) .group-header { padding-top: 0; }\n\n /* ── Vertical (default) ──\n Dot in left column; body in right column; connector line under\n the dot extending down to the next event. */\n .marker {\n grid-column: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n padding-top: var(--cg-spacing-4);\n }\n\n .dot {\n box-sizing: border-box;\n width: var(--_dot-size);\n height: var(--_dot-size);\n border-radius: var(--cg-border-radius-full);\n background: var(--_dot-color);\n /* 4px halo of surface-bg masks the connector line where it crosses\n the dot, so the line looks continuous between events. */\n box-shadow: 0 0 0 var(--cg-spacing-4) var(--cg-color-surface-base-background);\n position: relative;\n z-index: 1;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n /* Default variant = hollow ring. Inset shadow draws the ring without\n growing the box; outer shadow keeps the line-masking halo. */\n :host(:not([variant])) .dot,\n :host([variant=\"default\"]) .dot {\n background: transparent;\n box-shadow:\n inset 0 0 0 var(--cg-border-width-100) var(--_dot-color),\n 0 0 0 var(--cg-spacing-4) var(--cg-color-surface-base-background);\n }\n\n .line {\n flex: 1 1 auto;\n width: var(--_line-width);\n background: var(--_line-color);\n margin-top: var(--cg-spacing-4);\n }\n :host([last]) .line { display: none; }\n\n .body {\n grid-column: 2;\n padding-bottom: var(--cg-spacing-16);\n min-width: 0;\n }\n :host([last]) .body { padding-bottom: 0; }\n\n .timestamp {\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-input-text-placeholder);\n line-height: var(--cg-line-height-snug);\n margin-bottom: var(--cg-spacing-4);\n display: block;\n }\n\n /* ── Horizontal — set by parent <cg-timeline direction=\"horizontal\"> ──\n Marker on top (dot + horizontal line), body below the marker. */\n :host([direction=\"horizontal\"]) {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: var(--_dot-size) 1fr;\n column-gap: 0;\n row-gap: var(--cg-spacing-8);\n flex: 1 1 auto;\n min-width: var(--cg-spacing-128);\n padding-right: var(--cg-spacing-16);\n }\n :host([direction=\"horizontal\"]) .marker {\n grid-row: 1;\n grid-column: 1;\n flex-direction: row;\n align-items: center;\n padding-top: 0;\n }\n :host([direction=\"horizontal\"]) .line {\n width: auto;\n height: var(--_line-width);\n flex: 1 1 auto;\n margin-top: 0;\n margin-left: var(--cg-spacing-4);\n }\n :host([direction=\"horizontal\"]) .body {\n grid-row: 2;\n grid-column: 1;\n padding-bottom: 0;\n }\n :host([direction=\"horizontal\"][last]) {\n flex: 0 0 auto;\n padding-right: 0;\n min-width: 0;\n }\n :host([direction=\"horizontal\"][last]) .line { display: none; }\n\n /* ── Variant tints ──\n Use status text-default tokens — they resolve to solid colors in\n both themes (green-700/green-400 etc.) and are the established\n pattern for dot/icon tinting in this system. */\n :host([variant=\"success\"]) { --_dot-color: var(--cg-color-status-success-text-default); }\n :host([variant=\"warning\"]) { --_dot-color: var(--cg-color-status-warning-text-default); }\n :host([variant=\"error\"]) { --_dot-color: var(--cg-color-status-error-text-default); }\n :host([variant=\"info\"]) { --_dot-color: var(--cg-color-status-info-text-default); }\n :host([variant=\"accent\"]) { --_dot-color: var(--cg-color-action-primary-background-default); }\n `];\n\n /** Display string for the timestamp slot's fallback. */\n @property() timestamp = '';\n\n /** Status tint for the dot. */\n @property({ reflect: true }) variant: 'default' | 'success' | 'warning' | 'error' | 'info' | 'accent' = 'default';\n\n /** When true, suppresses the trailing connector line and the body's bottom padding. Set automatically by <cg-timeline>. */\n @property({ type: Boolean, reflect: true }) last = false;\n\n /** Layout direction. Set automatically by <cg-timeline> from its own direction prop. */\n @property({ reflect: true }) direction: 'vertical' | 'horizontal' = 'vertical';\n\n /**\n * Parseable date for grouping, separate from the display `timestamp`.\n * Accepts an ISO string, RFC 2822 string, or anything `new Date()` parses.\n * The parent <cg-timeline group-by=...> reads this and computes the\n * bucket; if absent, the event is not grouped.\n */\n @property() date = '';\n\n /**\n * Group section label set by the parent <cg-timeline> when this event\n * is the first in its bucket (Today / Yesterday / \"Mar 5\" / \"March\" / etc).\n * Consumers don't set this manually — let the parent's group-by drive it.\n */\n @property({ attribute: 'group-header', reflect: true }) groupHeader = '';\n\n override render() {\n return html`\n ${this.groupHeader ? html`<div class=\"group-header\" role=\"heading\" aria-level=\"3\">${this.groupHeader}</div>` : nothing}\n <div class=\"marker\" aria-hidden=\"true\">\n <span class=\"dot\"><slot name=\"icon\"></slot></span>\n <span class=\"line\"></span>\n </div>\n <div class=\"body\">\n ${this.timestamp || this.querySelector('[slot=\"timestamp\"]') ? html`\n <span class=\"timestamp\"><slot name=\"timestamp\">${this.timestamp}</slot></span>\n ` : nothing}\n <slot></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-timeline-event': CgTimelineEvent;\n }\n}\n"],"names":["CgTimelineEvent","LitElement","html","nothing","hostBlock","reducedMotion","css","__decorateClass","property","customElement"],"mappings":";;;;;;;;AAgCO,IAAMA,IAAN,cAA8BC,EAAW;AAAA,EAAzC,cAAA;AAAA,UAAA,GAAA,SAAA,GA4IO,KAAA,YAAY,IAGK,KAAA,UAA2E,WAG5D,KAAA,OAAO,IAGtB,KAAA,YAAuC,YAQxD,KAAA,OAAO,IAOqC,KAAA,cAAc;AAAA,EAAA;AAAA,EAE7D,SAAS;AAChB,WAAOC;AAAA,QACH,KAAK,cAAcA,4DAA+D,KAAK,WAAW,WAAWC,CAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMlH,KAAK,aAAa,KAAK,cAAc,oBAAoB,IAAID;AAAA,2DACZ,KAAK,SAAS;AAAA,YAC7DC,CAAO;AAAA;AAAA;AAAA;AAAA,EAIjB;AACF;AArLaH,EACK,SAAS,CAACI,GAAWC,GAAeC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAwInD;AAGWC,EAAA;AAAA,EAAXC,EAAA;AAAS,GA5ICR,EA4IC,WAAA,aAAA,CAAA;AAGiBO,EAAA;AAAA,EAA5BC,EAAS,EAAE,SAAS,GAAA,CAAM;AAAA,GA/IhBR,EA+IkB,WAAA,WAAA,CAAA;AAGeO,EAAA;AAAA,EAA3CC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAlJ/BR,EAkJiC,WAAA,QAAA,CAAA;AAGfO,EAAA;AAAA,EAA5BC,EAAS,EAAE,SAAS,GAAA,CAAM;AAAA,GArJhBR,EAqJkB,WAAA,aAAA,CAAA;AAQjBO,EAAA;AAAA,EAAXC,EAAA;AAAS,GA7JCR,EA6JC,WAAA,QAAA,CAAA;AAO4CO,EAAA;AAAA,EAAvDC,EAAS,EAAE,WAAW,gBAAgB,SAAS,IAAM;AAAA,GApK3CR,EAoK6C,WAAA,eAAA,CAAA;AApK7CA,IAANO,EAAA;AAAA,EADNE,EAAc,mBAAmB;AAAA,GACrBT,CAAA;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
export type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info' | 'ai';
|
|
3
|
+
export interface ToastOptions {
|
|
4
|
+
title: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
variant?: ToastVariant;
|
|
7
|
+
duration?: number;
|
|
8
|
+
action?: {
|
|
9
|
+
label: string;
|
|
10
|
+
id?: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @element cg-toaster
|
|
15
|
+
* Manages a stack of auto-dismissing toast notifications.
|
|
16
|
+
*
|
|
17
|
+
* @fires {CustomEvent<{id:string}>} cg-toaster-dismiss
|
|
18
|
+
* @fires {CustomEvent<{id:string,actionId?:string}>} cg-toaster-action
|
|
19
|
+
*/
|
|
20
|
+
export declare class CgToaster extends LitElement {
|
|
21
|
+
static styles: import('lit').CSSResult[];
|
|
22
|
+
position: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center';
|
|
23
|
+
max: number;
|
|
24
|
+
private _toasts;
|
|
25
|
+
show(opts: ToastOptions): string;
|
|
26
|
+
dismiss(id: string): void;
|
|
27
|
+
clear(): void;
|
|
28
|
+
disconnectedCallback(): void;
|
|
29
|
+
private _handleAction;
|
|
30
|
+
/**
|
|
31
|
+
* Per-variant icon paths. `default` gets no icon (renders without one).
|
|
32
|
+
* `ai` keeps its sparkle (uses `fill` instead of `stroke`).
|
|
33
|
+
* info/success/warning/error use the same paths as cg-callout for visual
|
|
34
|
+
* consistency across the design system.
|
|
35
|
+
*/
|
|
36
|
+
private _iconFor;
|
|
37
|
+
render(): import('lit').TemplateResult<1>;
|
|
38
|
+
}
|
|
39
|
+
declare global {
|
|
40
|
+
interface HTMLElementTagNameMap {
|
|
41
|
+
'cg-toaster': CgToaster;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=cg-toaster.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-toaster.d.ts","sourceRoot":"","sources":["../../../src/components/cg-toaster/cg-toaster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAKrD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;AAEvF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAOD;;;;;;GAMG;AACH,qBACa,SAAU,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BA4GnB;IAE0B,QAAQ,EAAE,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,aAAa,GAAG,YAAY,GAAG,eAAe,CAAkB;IACvH,GAAG,SAAK;IAE3B,OAAO,CAAC,OAAO,CAAoB;IAErC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAkBhC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASzB,KAAK,IAAI,IAAI;IAKX,oBAAoB,IAAI,IAAI;IAKrC,OAAO,CAAC,aAAa;IAQrB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAiBP,MAAM;CAmChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { css as m, LitElement as f, svg as c, nothing as g, html as l } from "lit";
|
|
2
|
+
import { property as u, state as p, customElement as v } from "lit/decorators.js";
|
|
3
|
+
import { r as h } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
+
var b = Object.defineProperty, w = Object.getOwnPropertyDescriptor, d = (t, r, a, s) => {
|
|
5
|
+
for (var o = s > 1 ? void 0 : s ? w(r, a) : r, n = t.length - 1, i; n >= 0; n--)
|
|
6
|
+
(i = t[n]) && (o = (s ? i(r, a, o) : i(o)) || o);
|
|
7
|
+
return s && o && b(r, a, o), o;
|
|
8
|
+
};
|
|
9
|
+
let e = class extends f {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments), this.position = "bottom-right", this.max = 5, this._toasts = [];
|
|
12
|
+
}
|
|
13
|
+
show(t) {
|
|
14
|
+
const r = `t_${Date.now()}_${Math.random().toString(36).slice(2, 7)}`, a = t.duration ?? 5e3, s = { ...t, id: r, timer: null };
|
|
15
|
+
let o = [...this._toasts, s];
|
|
16
|
+
if (o.length > this.max) {
|
|
17
|
+
const n = o.slice(0, o.length - this.max);
|
|
18
|
+
for (const i of n) i.timer && clearTimeout(i.timer);
|
|
19
|
+
o = o.slice(o.length - this.max);
|
|
20
|
+
}
|
|
21
|
+
return this._toasts = o, a > 0 && (s.timer = window.setTimeout(() => this.dismiss(r), a)), r;
|
|
22
|
+
}
|
|
23
|
+
dismiss(t) {
|
|
24
|
+
const r = this._toasts.find((a) => a.id === t);
|
|
25
|
+
r?.timer && clearTimeout(r.timer), this._toasts = this._toasts.filter((a) => a.id !== t), this.dispatchEvent(new CustomEvent("cg-toaster-dismiss", {
|
|
26
|
+
bubbles: !0,
|
|
27
|
+
composed: !0,
|
|
28
|
+
detail: { id: t }
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
clear() {
|
|
32
|
+
for (const t of this._toasts) t.timer && clearTimeout(t.timer);
|
|
33
|
+
this._toasts = [];
|
|
34
|
+
}
|
|
35
|
+
disconnectedCallback() {
|
|
36
|
+
super.disconnectedCallback();
|
|
37
|
+
for (const t of this._toasts) t.timer && clearTimeout(t.timer);
|
|
38
|
+
}
|
|
39
|
+
_handleAction(t) {
|
|
40
|
+
this.dispatchEvent(new CustomEvent("cg-toaster-action", {
|
|
41
|
+
bubbles: !0,
|
|
42
|
+
composed: !0,
|
|
43
|
+
detail: { id: t.id, actionId: t.action?.id }
|
|
44
|
+
})), this.dismiss(t.id);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Per-variant icon paths. `default` gets no icon (renders without one).
|
|
48
|
+
* `ai` keeps its sparkle (uses `fill` instead of `stroke`).
|
|
49
|
+
* info/success/warning/error use the same paths as cg-callout for visual
|
|
50
|
+
* consistency across the design system.
|
|
51
|
+
*/
|
|
52
|
+
_iconFor(t) {
|
|
53
|
+
switch (t) {
|
|
54
|
+
case "success":
|
|
55
|
+
return c`<path d="M12 2a10 10 0 100 20 10 10 0 000-20zm-2 10l2 2 4-4" />`;
|
|
56
|
+
case "warning":
|
|
57
|
+
return c`<path d="M12 2L2 22h20L12 2zm0 7v4m0 4h.01" />`;
|
|
58
|
+
case "error":
|
|
59
|
+
return c`<path d="M12 2a10 10 0 100 20 10 10 0 000-20zm-1 5h2v6h-2zm0 8h2v2h-2z" />`;
|
|
60
|
+
case "info":
|
|
61
|
+
return c`<path d="M12 2a10 10 0 100 20 10 10 0 000-20zm0 5a1 1 0 011 1v4a1 1 0 01-2 0V8a1 1 0 011-1zm0 8a1 1 0 110 2 1 1 0 010-2z" />`;
|
|
62
|
+
case "ai":
|
|
63
|
+
return c`<path d="M12 2l2.09 6.26L20 10l-5.91 1.74L12 18l-2.09-6.26L4 10l5.91-1.74L12 2z" />`;
|
|
64
|
+
default:
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
render() {
|
|
69
|
+
return l`
|
|
70
|
+
<div role="region" aria-live="polite" aria-label="Notifications" style="display: contents;">
|
|
71
|
+
${this._toasts.map((t) => {
|
|
72
|
+
const r = this._iconFor(t.variant), a = t.variant === "ai";
|
|
73
|
+
return l`
|
|
74
|
+
<div class="toast ${t.variant ?? "default"}" role="status">
|
|
75
|
+
${r ? l`
|
|
76
|
+
<svg
|
|
77
|
+
class="toast-icon"
|
|
78
|
+
viewBox="0 0 24 24"
|
|
79
|
+
fill=${a ? "currentColor" : "none"}
|
|
80
|
+
stroke=${a ? "none" : "currentColor"}
|
|
81
|
+
stroke-width="2"
|
|
82
|
+
stroke-linecap="round"
|
|
83
|
+
stroke-linejoin="round"
|
|
84
|
+
aria-hidden="true"
|
|
85
|
+
>${r}</svg>
|
|
86
|
+
` : g}
|
|
87
|
+
<div class="toast-body">
|
|
88
|
+
<div class="toast-title">${t.title}</div>
|
|
89
|
+
${t.description ? l`<div class="toast-desc">${t.description}</div>` : g}
|
|
90
|
+
</div>
|
|
91
|
+
${t.action ? l`
|
|
92
|
+
<button class="toast-action" @click=${() => this._handleAction(t)}>${t.action.label}</button>
|
|
93
|
+
` : g}
|
|
94
|
+
<button class="toast-close" aria-label="Dismiss" @click=${() => this.dismiss(t.id)}>×</button>
|
|
95
|
+
</div>
|
|
96
|
+
`;
|
|
97
|
+
})}
|
|
98
|
+
</div>
|
|
99
|
+
`;
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
e.styles = [h, m`
|
|
103
|
+
:host {
|
|
104
|
+
position: fixed;
|
|
105
|
+
z-index: var(--cg-z-index-top);
|
|
106
|
+
pointer-events: none;
|
|
107
|
+
display: flex;
|
|
108
|
+
flex-direction: column;
|
|
109
|
+
gap: var(--cg-component-toaster-gap);
|
|
110
|
+
padding: var(--cg-component-toaster-region-padding);
|
|
111
|
+
font-family: var(--cg-font-family-primary);
|
|
112
|
+
max-width: min(var(--cg-component-toaster-max-width), calc(100vw - var(--cg-spacing-32)));
|
|
113
|
+
}
|
|
114
|
+
:host([position="top-right"]) { top: 0; right: 0; }
|
|
115
|
+
:host([position="top-left"]) { top: 0; left: 0; }
|
|
116
|
+
:host([position="bottom-right"]) { bottom: 0; right: 0; }
|
|
117
|
+
:host([position="bottom-left"]) { bottom: 0; left: 0; }
|
|
118
|
+
:host([position="top-center"]) { top: 0; left: 50%; transform: translateX(-50%); }
|
|
119
|
+
:host([position="bottom-center"]) { bottom: 0; left: 50%; transform: translateX(-50%); }
|
|
120
|
+
|
|
121
|
+
.toast {
|
|
122
|
+
pointer-events: auto;
|
|
123
|
+
display: flex;
|
|
124
|
+
align-items: flex-start;
|
|
125
|
+
gap: var(--cg-spacing-12);
|
|
126
|
+
min-width: var(--cg-component-toaster-min-width);
|
|
127
|
+
padding: var(--cg-spacing-16) var(--cg-spacing-16);
|
|
128
|
+
background: var(--cg-color-modal-container-background);
|
|
129
|
+
border: var(--cg-border-width-50) solid var(--cg-color-modal-container-border);
|
|
130
|
+
border-radius: var(--cg-border-radius-150);
|
|
131
|
+
color: var(--cg-color-surface-container-text);
|
|
132
|
+
box-shadow: var(--cg-shadow-elevation-lg);
|
|
133
|
+
animation: toast-in var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out);
|
|
134
|
+
transform-origin: center;
|
|
135
|
+
transition: transform var(--cg-transition-duration-default) var(--cg-transition-easing-default);
|
|
136
|
+
}
|
|
137
|
+
/* Stack effect: non-last toasts scale down subtly */
|
|
138
|
+
.toast:not(:last-child) {
|
|
139
|
+
transform: scale(0.98);
|
|
140
|
+
opacity: 0.9;
|
|
141
|
+
}
|
|
142
|
+
:host([position^="top"]) .toast {
|
|
143
|
+
animation-name: toast-in-top;
|
|
144
|
+
}
|
|
145
|
+
@keyframes toast-in {
|
|
146
|
+
from { opacity: 0; transform: translateY(var(--cg-spacing-16)) scale(0.96); }
|
|
147
|
+
to { opacity: 1; transform: translateY(0) scale(1); }
|
|
148
|
+
}
|
|
149
|
+
@keyframes toast-in-top {
|
|
150
|
+
from { opacity: 0; transform: translateY(calc(-1 * var(--cg-spacing-16))) scale(0.96); }
|
|
151
|
+
to { opacity: 1; transform: translateY(0) scale(1); }
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.toast.success { border-color: var(--cg-color-status-success-border-default); }
|
|
155
|
+
.toast.warning { border-color: var(--cg-color-status-warning-border-default); }
|
|
156
|
+
.toast.error { border-color: var(--cg-color-status-error-border-default); }
|
|
157
|
+
.toast.info { border-color: var(--cg-color-status-info-border-default); }
|
|
158
|
+
.toast.ai {
|
|
159
|
+
border-left: var(--cg-border-width-200) solid var(--cg-color-action-primary-background-default);
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/* Status icon — colored per variant to match the border + give the toast
|
|
163
|
+
a glanceable status indicator (success, warning, error, info, ai). */
|
|
164
|
+
.toast-icon {
|
|
165
|
+
flex-shrink: 0;
|
|
166
|
+
width: var(--cg-spacing-16);
|
|
167
|
+
height: var(--cg-spacing-16);
|
|
168
|
+
margin-top: var(--cg-spacing-2);
|
|
169
|
+
}
|
|
170
|
+
.toast.success .toast-icon { color: var(--cg-color-status-success-text-default); }
|
|
171
|
+
.toast.warning .toast-icon { color: var(--cg-color-status-warning-text-default); }
|
|
172
|
+
.toast.error .toast-icon { color: var(--cg-color-status-error-text-default); }
|
|
173
|
+
.toast.info .toast-icon { color: var(--cg-color-status-info-text-default); }
|
|
174
|
+
.toast.ai .toast-icon { color: var(--cg-color-action-primary-background-default); }
|
|
175
|
+
|
|
176
|
+
.toast-body {
|
|
177
|
+
flex: 1;
|
|
178
|
+
min-width: 0;
|
|
179
|
+
display: flex;
|
|
180
|
+
flex-direction: column;
|
|
181
|
+
gap: var(--cg-spacing-4);
|
|
182
|
+
}
|
|
183
|
+
.toast-title {
|
|
184
|
+
font-size: var(--cg-font-size-sm);
|
|
185
|
+
font-weight: var(--cg-font-weight-semibold);
|
|
186
|
+
}
|
|
187
|
+
.toast-desc {
|
|
188
|
+
font-size: var(--cg-font-size-xs);
|
|
189
|
+
color: var(--cg-color-surface-container-outlined);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.toast-action, .toast-close {
|
|
193
|
+
background: transparent;
|
|
194
|
+
border: none;
|
|
195
|
+
color: inherit;
|
|
196
|
+
font: inherit;
|
|
197
|
+
font-size: var(--cg-font-size-xs);
|
|
198
|
+
font-weight: var(--cg-font-weight-medium);
|
|
199
|
+
padding: var(--cg-spacing-6) var(--cg-spacing-10);
|
|
200
|
+
border-radius: var(--cg-border-radius-50);
|
|
201
|
+
cursor: pointer;
|
|
202
|
+
transition: background-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);
|
|
203
|
+
}
|
|
204
|
+
.toast-action:hover, .toast-close:hover {
|
|
205
|
+
background: var(--cg-color-action-tertiary-background-hover);
|
|
206
|
+
}
|
|
207
|
+
.toast-close {
|
|
208
|
+
color: var(--cg-color-surface-container-outlined);
|
|
209
|
+
}
|
|
210
|
+
`];
|
|
211
|
+
d([
|
|
212
|
+
u({ reflect: !0 })
|
|
213
|
+
], e.prototype, "position", 2);
|
|
214
|
+
d([
|
|
215
|
+
u({ type: Number })
|
|
216
|
+
], e.prototype, "max", 2);
|
|
217
|
+
d([
|
|
218
|
+
p()
|
|
219
|
+
], e.prototype, "_toasts", 2);
|
|
220
|
+
e = d([
|
|
221
|
+
v("cg-toaster")
|
|
222
|
+
], e);
|
|
223
|
+
export {
|
|
224
|
+
e as CgToaster
|
|
225
|
+
};
|
|
226
|
+
//# sourceMappingURL=cg-toaster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-toaster.js","sources":["../../../src/components/cg-toaster/cg-toaster.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit';\nimport { svg } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { reducedMotion } from '../../styles/index.js';\n\nexport type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info' | 'ai';\n\nexport interface ToastOptions {\n title: string;\n description?: string;\n variant?: ToastVariant;\n duration?: number;\n action?: { label: string; id?: string };\n}\n\ninterface ToastEntry extends ToastOptions {\n id: string;\n timer: number | null;\n}\n\n/**\n * @element cg-toaster\n * Manages a stack of auto-dismissing toast notifications.\n *\n * @fires {CustomEvent<{id:string}>} cg-toaster-dismiss\n * @fires {CustomEvent<{id:string,actionId?:string}>} cg-toaster-action\n */\n@customElement('cg-toaster')\nexport class CgToaster extends LitElement {\n static override styles = [reducedMotion, css`\n :host {\n position: fixed;\n z-index: var(--cg-z-index-top);\n pointer-events: none;\n display: flex;\n flex-direction: column;\n gap: var(--cg-component-toaster-gap);\n padding: var(--cg-component-toaster-region-padding);\n font-family: var(--cg-font-family-primary);\n max-width: min(var(--cg-component-toaster-max-width), calc(100vw - var(--cg-spacing-32)));\n }\n :host([position=\"top-right\"]) { top: 0; right: 0; }\n :host([position=\"top-left\"]) { top: 0; left: 0; }\n :host([position=\"bottom-right\"]) { bottom: 0; right: 0; }\n :host([position=\"bottom-left\"]) { bottom: 0; left: 0; }\n :host([position=\"top-center\"]) { top: 0; left: 50%; transform: translateX(-50%); }\n :host([position=\"bottom-center\"]) { bottom: 0; left: 50%; transform: translateX(-50%); }\n\n .toast {\n pointer-events: auto;\n display: flex;\n align-items: flex-start;\n gap: var(--cg-spacing-12);\n min-width: var(--cg-component-toaster-min-width);\n padding: var(--cg-spacing-16) var(--cg-spacing-16);\n background: var(--cg-color-modal-container-background);\n border: var(--cg-border-width-50) solid var(--cg-color-modal-container-border);\n border-radius: var(--cg-border-radius-150);\n color: var(--cg-color-surface-container-text);\n box-shadow: var(--cg-shadow-elevation-lg);\n animation: toast-in var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out);\n transform-origin: center;\n transition: transform var(--cg-transition-duration-default) var(--cg-transition-easing-default);\n }\n /* Stack effect: non-last toasts scale down subtly */\n .toast:not(:last-child) {\n transform: scale(0.98);\n opacity: 0.9;\n }\n :host([position^=\"top\"]) .toast {\n animation-name: toast-in-top;\n }\n @keyframes toast-in {\n from { opacity: 0; transform: translateY(var(--cg-spacing-16)) scale(0.96); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n }\n @keyframes toast-in-top {\n from { opacity: 0; transform: translateY(calc(-1 * var(--cg-spacing-16))) scale(0.96); }\n to { opacity: 1; transform: translateY(0) scale(1); }\n }\n\n .toast.success { border-color: var(--cg-color-status-success-border-default); }\n .toast.warning { border-color: var(--cg-color-status-warning-border-default); }\n .toast.error { border-color: var(--cg-color-status-error-border-default); }\n .toast.info { border-color: var(--cg-color-status-info-border-default); }\n .toast.ai {\n border-left: var(--cg-border-width-200) solid var(--cg-color-action-primary-background-default);\n }\n\n /* Status icon — colored per variant to match the border + give the toast\n a glanceable status indicator (success, warning, error, info, ai). */\n .toast-icon {\n flex-shrink: 0;\n width: var(--cg-spacing-16);\n height: var(--cg-spacing-16);\n margin-top: var(--cg-spacing-2);\n }\n .toast.success .toast-icon { color: var(--cg-color-status-success-text-default); }\n .toast.warning .toast-icon { color: var(--cg-color-status-warning-text-default); }\n .toast.error .toast-icon { color: var(--cg-color-status-error-text-default); }\n .toast.info .toast-icon { color: var(--cg-color-status-info-text-default); }\n .toast.ai .toast-icon { color: var(--cg-color-action-primary-background-default); }\n\n .toast-body {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: var(--cg-spacing-4);\n }\n .toast-title {\n font-size: var(--cg-font-size-sm);\n font-weight: var(--cg-font-weight-semibold);\n }\n .toast-desc {\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-surface-container-outlined);\n }\n\n .toast-action, .toast-close {\n background: transparent;\n border: none;\n color: inherit;\n font: inherit;\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-medium);\n padding: var(--cg-spacing-6) var(--cg-spacing-10);\n border-radius: var(--cg-border-radius-50);\n cursor: pointer;\n transition: background-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .toast-action:hover, .toast-close:hover {\n background: var(--cg-color-action-tertiary-background-hover);\n }\n .toast-close {\n color: var(--cg-color-surface-container-outlined);\n }\n `];\n\n @property({ reflect: true }) position: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center' = 'bottom-right';\n @property({ type: Number }) max = 5;\n\n @state() private _toasts: ToastEntry[] = [];\n\n public show(opts: ToastOptions): string {\n const id = `t_${Date.now()}_${Math.random().toString(36).slice(2, 7)}`;\n const duration = opts.duration ?? 5000;\n const entry: ToastEntry = { ...opts, id, timer: null };\n let next = [...this._toasts, entry];\n if (next.length > this.max) {\n // Clear timers for dropped toasts so they don't leak.\n const dropped = next.slice(0, next.length - this.max);\n for (const t of dropped) if (t.timer) clearTimeout(t.timer);\n next = next.slice(next.length - this.max);\n }\n this._toasts = next;\n if (duration > 0) {\n entry.timer = window.setTimeout(() => this.dismiss(id), duration);\n }\n return id;\n }\n\n public dismiss(id: string): void {\n const toast = this._toasts.find(t => t.id === id);\n if (toast?.timer) clearTimeout(toast.timer);\n this._toasts = this._toasts.filter(t => t.id !== id);\n this.dispatchEvent(new CustomEvent('cg-toaster-dismiss', {\n bubbles: true, composed: true, detail: { id },\n }));\n }\n\n public clear(): void {\n for (const t of this._toasts) if (t.timer) clearTimeout(t.timer);\n this._toasts = [];\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n for (const t of this._toasts) if (t.timer) clearTimeout(t.timer);\n }\n\n private _handleAction(toast: ToastEntry): void {\n this.dispatchEvent(new CustomEvent('cg-toaster-action', {\n bubbles: true, composed: true,\n detail: { id: toast.id, actionId: toast.action?.id },\n }));\n this.dismiss(toast.id);\n }\n\n /**\n * Per-variant icon paths. `default` gets no icon (renders without one).\n * `ai` keeps its sparkle (uses `fill` instead of `stroke`).\n * info/success/warning/error use the same paths as cg-callout for visual\n * consistency across the design system.\n */\n private _iconFor(variant: ToastVariant | undefined) {\n switch (variant) {\n case 'success':\n return svg`<path d=\"M12 2a10 10 0 100 20 10 10 0 000-20zm-2 10l2 2 4-4\" />`;\n case 'warning':\n return svg`<path d=\"M12 2L2 22h20L12 2zm0 7v4m0 4h.01\" />`;\n case 'error':\n return svg`<path d=\"M12 2a10 10 0 100 20 10 10 0 000-20zm-1 5h2v6h-2zm0 8h2v2h-2z\" />`;\n case 'info':\n return svg`<path d=\"M12 2a10 10 0 100 20 10 10 0 000-20zm0 5a1 1 0 011 1v4a1 1 0 01-2 0V8a1 1 0 011-1zm0 8a1 1 0 110 2 1 1 0 010-2z\" />`;\n case 'ai':\n return svg`<path d=\"M12 2l2.09 6.26L20 10l-5.91 1.74L12 18l-2.09-6.26L4 10l5.91-1.74L12 2z\" />`;\n default:\n return null;\n }\n }\n\n override render() {\n return html`\n <div role=\"region\" aria-live=\"polite\" aria-label=\"Notifications\" style=\"display: contents;\">\n ${this._toasts.map(toast => {\n const iconPath = this._iconFor(toast.variant);\n // `ai` is the only variant using fill; the rest use stroke.\n const useFill = toast.variant === 'ai';\n return html`\n <div class=\"toast ${toast.variant ?? 'default'}\" role=\"status\">\n ${iconPath ? html`\n <svg\n class=\"toast-icon\"\n viewBox=\"0 0 24 24\"\n fill=${useFill ? 'currentColor' : 'none'}\n stroke=${useFill ? 'none' : 'currentColor'}\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >${iconPath}</svg>\n ` : nothing}\n <div class=\"toast-body\">\n <div class=\"toast-title\">${toast.title}</div>\n ${toast.description ? html`<div class=\"toast-desc\">${toast.description}</div>` : nothing}\n </div>\n ${toast.action ? html`\n <button class=\"toast-action\" @click=${() => this._handleAction(toast)}>${toast.action.label}</button>\n ` : nothing}\n <button class=\"toast-close\" aria-label=\"Dismiss\" @click=${() => this.dismiss(toast.id)}>×</button>\n </div>\n `;\n })}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-toaster': CgToaster;\n }\n}\n"],"names":["CgToaster","LitElement","opts","id","duration","entry","next","dropped","t","toast","variant","svg","html","iconPath","useFill","nothing","reducedMotion","css","__decorateClass","property","state","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* @element cg-toggle
|
|
4
|
+
* Single press-state button. Uses aria-pressed for toggle semantics.
|
|
5
|
+
* Different from cg-switch (on/off) and cg-button (action).
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```html
|
|
9
|
+
* <cg-toggle pressed>Bold</cg-toggle>
|
|
10
|
+
* <cg-toggle variant="outline">Italic</cg-toggle>
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @slot - Toggle content (text, icon)
|
|
14
|
+
*
|
|
15
|
+
* @fires {CustomEvent<{pressed: boolean, value: string}>} cg-toggle-change
|
|
16
|
+
*/
|
|
17
|
+
export declare class CgToggle extends LitElement {
|
|
18
|
+
static styles: import('lit').CSSResult[];
|
|
19
|
+
static formAssociated: boolean;
|
|
20
|
+
private _internals?;
|
|
21
|
+
constructor();
|
|
22
|
+
pressed: boolean;
|
|
23
|
+
disabled: boolean;
|
|
24
|
+
size: 'sm' | 'md' | 'lg';
|
|
25
|
+
variant: 'ghost' | 'outline' | 'solid';
|
|
26
|
+
rounded: 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
27
|
+
value: string;
|
|
28
|
+
name: string;
|
|
29
|
+
updated(changed: Map<string, unknown>): void;
|
|
30
|
+
private _toggle;
|
|
31
|
+
render(): import('lit').TemplateResult<1>;
|
|
32
|
+
}
|
|
33
|
+
declare global {
|
|
34
|
+
interface HTMLElementTagNameMap {
|
|
35
|
+
'cg-toggle': CgToggle;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=cg-toggle.d.ts.map
|