@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,241 @@
|
|
|
1
|
+
import { css as u, LitElement as v, nothing as b, html as d } from "lit";
|
|
2
|
+
import { property as n, state as g, query as p, customElement as h } from "lit/decorators.js";
|
|
3
|
+
import { h as f, r as w } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
+
var _ = Object.defineProperty, m = Object.getOwnPropertyDescriptor, o = (a, i, s, e) => {
|
|
5
|
+
for (var t = e > 1 ? void 0 : e ? m(i, s) : i, c = a.length - 1, l; c >= 0; c--)
|
|
6
|
+
(l = a[c]) && (t = (e ? l(i, s, t) : l(t)) || t);
|
|
7
|
+
return e && t && _(i, s, t), t;
|
|
8
|
+
};
|
|
9
|
+
let r = class extends v {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments), this.size = "md", this.tabs = [], this.value = "", this.variant = "underline", this.rounded = "default", this._active = "", this._indicatorLeft = 0, this._indicatorWidth = 0;
|
|
12
|
+
}
|
|
13
|
+
willUpdate(a) {
|
|
14
|
+
(a.has("value") || a.has("tabs")) && (this._active = this.value || (this.tabs.length > 0 ? this.tabs[0].value : ""));
|
|
15
|
+
}
|
|
16
|
+
updated() {
|
|
17
|
+
this._updateIndicator();
|
|
18
|
+
}
|
|
19
|
+
_updateIndicator() {
|
|
20
|
+
if (!this._tabList) return;
|
|
21
|
+
const a = this._tabList.querySelector(".tab.active");
|
|
22
|
+
a && (this._indicatorLeft = a.offsetLeft, this._indicatorWidth = a.offsetWidth);
|
|
23
|
+
}
|
|
24
|
+
_select(a) {
|
|
25
|
+
a.disabled || (this._active = a.value, this.dispatchEvent(new CustomEvent("cg-tab-change", {
|
|
26
|
+
detail: { value: a.value, label: a.label },
|
|
27
|
+
bubbles: !0,
|
|
28
|
+
composed: !0
|
|
29
|
+
})));
|
|
30
|
+
}
|
|
31
|
+
_handleKeydown(a) {
|
|
32
|
+
const i = this.tabs.filter((t) => !t.disabled), s = i.findIndex((t) => t.value === this._active);
|
|
33
|
+
let e = s;
|
|
34
|
+
switch (a.key) {
|
|
35
|
+
case "ArrowRight":
|
|
36
|
+
case "ArrowDown":
|
|
37
|
+
e = (s + 1) % i.length;
|
|
38
|
+
break;
|
|
39
|
+
case "ArrowLeft":
|
|
40
|
+
case "ArrowUp":
|
|
41
|
+
e = (s - 1 + i.length) % i.length;
|
|
42
|
+
break;
|
|
43
|
+
case "Home":
|
|
44
|
+
e = 0;
|
|
45
|
+
break;
|
|
46
|
+
case "End":
|
|
47
|
+
e = i.length - 1;
|
|
48
|
+
break;
|
|
49
|
+
default:
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
a.preventDefault(), this._select(i[e]), requestAnimationFrame(() => {
|
|
53
|
+
this._tabList.querySelectorAll(".tab:not(.disabled)")[e]?.focus();
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
render() {
|
|
57
|
+
return d`
|
|
58
|
+
<div class="tab-list" role="tablist" @keydown=${this._handleKeydown}>
|
|
59
|
+
${this.tabs.map((a) => d`
|
|
60
|
+
<button
|
|
61
|
+
class="tab ${a.value === this._active ? "active" : ""} ${a.disabled ? "disabled" : ""}"
|
|
62
|
+
role="tab"
|
|
63
|
+
id="tab-${a.value}"
|
|
64
|
+
tabindex=${a.value === this._active ? "0" : "-1"}
|
|
65
|
+
aria-selected=${a.value === this._active}
|
|
66
|
+
aria-controls="panel-${a.value}"
|
|
67
|
+
?disabled=${a.disabled}
|
|
68
|
+
@click=${() => this._select(a)}
|
|
69
|
+
>
|
|
70
|
+
<span>${a.label}</span>
|
|
71
|
+
${a.count !== void 0 ? d`<span class="tab-count">${a.count}</span>` : b}
|
|
72
|
+
</button>
|
|
73
|
+
`)}
|
|
74
|
+
<div class="indicator" style="left: ${this._indicatorLeft}px; width: ${this._indicatorWidth}px;"></div>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="panel" role="tabpanel" id="panel-${this._active}" aria-labelledby="tab-${this._active}">
|
|
77
|
+
<slot name=${this._active}></slot>
|
|
78
|
+
<slot></slot>
|
|
79
|
+
</div>
|
|
80
|
+
`;
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
r.styles = [f, w, u`
|
|
84
|
+
.tab-list {
|
|
85
|
+
display: flex;
|
|
86
|
+
position: relative;
|
|
87
|
+
overflow-x: auto;
|
|
88
|
+
scrollbar-width: none;
|
|
89
|
+
}
|
|
90
|
+
.tab-list::-webkit-scrollbar { display: none; }
|
|
91
|
+
|
|
92
|
+
/* Underline variant (default) */
|
|
93
|
+
:host(:not([variant="pills"])) .tab-list {
|
|
94
|
+
border-bottom: var(--cg-border-width-50) solid var(--cg-color-surface-tabbar-border);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
:host(:not([variant="pills"])) .indicator {
|
|
98
|
+
position: absolute;
|
|
99
|
+
bottom: calc(-1 * var(--cg-spacing-1));
|
|
100
|
+
height: var(--cg-border-width-100);
|
|
101
|
+
background: var(--cg-color-action-primary-background-default);
|
|
102
|
+
border-radius: var(--cg-border-radius-full);
|
|
103
|
+
transition: left var(--cg-transition-duration-default) var(--cg-transition-easing-default), width var(--cg-transition-duration-default) var(--cg-transition-easing-default);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.tab {
|
|
107
|
+
display: inline-flex;
|
|
108
|
+
align-items: center;
|
|
109
|
+
gap: var(--cg-spacing-6);
|
|
110
|
+
padding: var(--cg-spacing-8) var(--cg-spacing-16);
|
|
111
|
+
font-size: var(--cg-font-size-sm);
|
|
112
|
+
font-weight: var(--cg-font-weight-medium);
|
|
113
|
+
color: var(--cg-color-surface-container-outlined);
|
|
114
|
+
background: none;
|
|
115
|
+
border: none;
|
|
116
|
+
cursor: pointer;
|
|
117
|
+
white-space: nowrap;
|
|
118
|
+
transition: color var(--cg-transition-duration-default) var(--cg-transition-easing-default), background var(--cg-transition-duration-default) var(--cg-transition-easing-default), transform var(--cg-transition-duration-fast) var(--cg-transition-easing-ease-out);
|
|
119
|
+
font-family: inherit;
|
|
120
|
+
position: relative;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.tab:hover:not(.disabled) {
|
|
124
|
+
color: var(--cg-color-surface-base-text);
|
|
125
|
+
}
|
|
126
|
+
.tab.active {
|
|
127
|
+
color: var(--cg-color-action-primary-background-default);
|
|
128
|
+
font-weight: var(--cg-font-weight-semibold);
|
|
129
|
+
}
|
|
130
|
+
.tab.disabled { opacity: 0.5; cursor: not-allowed; }
|
|
131
|
+
.tab:active:not(.disabled) { transform: scale(var(--cg-interaction-press-scale)); }
|
|
132
|
+
|
|
133
|
+
.tab:focus-visible {
|
|
134
|
+
outline: none;
|
|
135
|
+
border-radius: var(--cg-border-radius-50);
|
|
136
|
+
box-shadow: 0 0 0 2px var(--cg-color-focus-ring-offset), 0 0 0 4px var(--cg-color-focus-ring);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/* Count badge */
|
|
140
|
+
.tab-count {
|
|
141
|
+
font-size: var(--cg-font-size-xs);
|
|
142
|
+
font-weight: var(--cg-font-weight-bold);
|
|
143
|
+
background: var(--cg-color-action-secondary-background-default);
|
|
144
|
+
color: var(--cg-color-surface-container-outlined);
|
|
145
|
+
padding: var(--cg-spacing-1) var(--cg-spacing-6);
|
|
146
|
+
border-radius: var(--cg-border-radius-full);
|
|
147
|
+
line-height: var(--cg-line-height-snug);
|
|
148
|
+
}
|
|
149
|
+
.tab.active .tab-count {
|
|
150
|
+
background: var(--cg-overlay-accent-light);
|
|
151
|
+
color: var(--cg-color-action-primary-background-default);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/* Pills variant */
|
|
155
|
+
:host([variant="pills"]) .tab-list {
|
|
156
|
+
gap: var(--cg-spacing-4);
|
|
157
|
+
background: var(--cg-color-surface-tabbar-background);
|
|
158
|
+
padding: var(--cg-spacing-4);
|
|
159
|
+
border-radius: var(--cg-border-radius-150);
|
|
160
|
+
border: var(--cg-border-width-50) solid var(--cg-color-surface-tabbar-border);
|
|
161
|
+
}
|
|
162
|
+
:host([variant="pills"]) .tab {
|
|
163
|
+
border-radius: var(--cg-border-radius-100);
|
|
164
|
+
padding: var(--cg-spacing-8) var(--cg-spacing-16);
|
|
165
|
+
border: var(--cg-border-width-50) solid transparent;
|
|
166
|
+
}
|
|
167
|
+
:host([variant="pills"]) .tab.active {
|
|
168
|
+
color: var(--cg-color-surface-base-text);
|
|
169
|
+
font-weight: var(--cg-font-weight-semibold);
|
|
170
|
+
}
|
|
171
|
+
:host([variant="pills"]) .tab:hover:not(.active):not(.disabled) {
|
|
172
|
+
background: var(--cg-color-surface-tabbar-hover-background);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/* Sliding pill indicator */
|
|
176
|
+
:host([variant="pills"]) .indicator {
|
|
177
|
+
position: absolute;
|
|
178
|
+
top: var(--cg-spacing-4);
|
|
179
|
+
bottom: var(--cg-spacing-4);
|
|
180
|
+
border-radius: var(--cg-border-radius-100);
|
|
181
|
+
background: var(--cg-color-surface-tabbar-selected-background);
|
|
182
|
+
border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
|
|
183
|
+
transition: left var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out), width var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out);
|
|
184
|
+
z-index: 0;
|
|
185
|
+
}
|
|
186
|
+
:host([variant="pills"]) .tab { z-index: 1; }
|
|
187
|
+
|
|
188
|
+
/* Full rounded pills */
|
|
189
|
+
:host([variant="pills"][rounded="full"]) .tab-list {
|
|
190
|
+
border-radius: var(--cg-border-radius-full);
|
|
191
|
+
}
|
|
192
|
+
:host([variant="pills"][rounded="full"]) .tab {
|
|
193
|
+
border-radius: var(--cg-border-radius-full);
|
|
194
|
+
}
|
|
195
|
+
:host([variant="pills"][rounded="full"]) .indicator {
|
|
196
|
+
border-radius: var(--cg-border-radius-full);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
/* Panel */
|
|
200
|
+
.panel {
|
|
201
|
+
padding: var(--cg-spacing-16) 0;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/* Size variants */
|
|
205
|
+
:host([size="sm"]) .tab { font-size: var(--cg-font-size-xs); padding: var(--cg-spacing-6) var(--cg-spacing-12); }
|
|
206
|
+
:host([size="lg"]) .tab { font-size: var(--cg-font-size-base); padding: var(--cg-spacing-12) var(--cg-spacing-20); }
|
|
207
|
+
`];
|
|
208
|
+
o([
|
|
209
|
+
n({ reflect: !0 })
|
|
210
|
+
], r.prototype, "size", 2);
|
|
211
|
+
o([
|
|
212
|
+
n({ type: Array })
|
|
213
|
+
], r.prototype, "tabs", 2);
|
|
214
|
+
o([
|
|
215
|
+
n()
|
|
216
|
+
], r.prototype, "value", 2);
|
|
217
|
+
o([
|
|
218
|
+
n({ reflect: !0 })
|
|
219
|
+
], r.prototype, "variant", 2);
|
|
220
|
+
o([
|
|
221
|
+
n({ reflect: !0 })
|
|
222
|
+
], r.prototype, "rounded", 2);
|
|
223
|
+
o([
|
|
224
|
+
g()
|
|
225
|
+
], r.prototype, "_active", 2);
|
|
226
|
+
o([
|
|
227
|
+
g()
|
|
228
|
+
], r.prototype, "_indicatorLeft", 2);
|
|
229
|
+
o([
|
|
230
|
+
g()
|
|
231
|
+
], r.prototype, "_indicatorWidth", 2);
|
|
232
|
+
o([
|
|
233
|
+
p(".tab-list")
|
|
234
|
+
], r.prototype, "_tabList", 2);
|
|
235
|
+
r = o([
|
|
236
|
+
h("cg-tabs")
|
|
237
|
+
], r);
|
|
238
|
+
export {
|
|
239
|
+
r as CgTabs
|
|
240
|
+
};
|
|
241
|
+
//# sourceMappingURL=cg-tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-tabs.js","sources":["../../../src/components/cg-tabs/cg-tabs.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\n\n/** Tab definition for cg-tabs. */\nexport interface TabItem {\n value: string;\n label: string;\n icon?: string;\n disabled?: boolean;\n count?: number;\n}\n\n/**\n * @element cg-tabs\n * Tabbed navigation with animated sliding indicator, count badges, and keyboard nav.\n *\n * @fires {CustomEvent<{value: string, label: string}>} cg-tab-change - When a tab is selected\n */\n@customElement('cg-tabs')\nexport class CgTabs extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n .tab-list {\n display: flex;\n position: relative;\n overflow-x: auto;\n scrollbar-width: none;\n }\n .tab-list::-webkit-scrollbar { display: none; }\n\n /* Underline variant (default) */\n :host(:not([variant=\"pills\"])) .tab-list {\n border-bottom: var(--cg-border-width-50) solid var(--cg-color-surface-tabbar-border);\n }\n\n :host(:not([variant=\"pills\"])) .indicator {\n position: absolute;\n bottom: calc(-1 * var(--cg-spacing-1));\n height: var(--cg-border-width-100);\n background: var(--cg-color-action-primary-background-default);\n border-radius: var(--cg-border-radius-full);\n transition: left var(--cg-transition-duration-default) var(--cg-transition-easing-default), width var(--cg-transition-duration-default) var(--cg-transition-easing-default);\n }\n\n .tab {\n display: inline-flex;\n align-items: center;\n gap: var(--cg-spacing-6);\n padding: var(--cg-spacing-8) var(--cg-spacing-16);\n font-size: var(--cg-font-size-sm);\n font-weight: var(--cg-font-weight-medium);\n color: var(--cg-color-surface-container-outlined);\n background: none;\n border: none;\n cursor: pointer;\n white-space: nowrap;\n transition: color var(--cg-transition-duration-default) var(--cg-transition-easing-default), background var(--cg-transition-duration-default) var(--cg-transition-easing-default), transform var(--cg-transition-duration-fast) var(--cg-transition-easing-ease-out);\n font-family: inherit;\n position: relative;\n }\n\n .tab:hover:not(.disabled) {\n color: var(--cg-color-surface-base-text);\n }\n .tab.active {\n color: var(--cg-color-action-primary-background-default);\n font-weight: var(--cg-font-weight-semibold);\n }\n .tab.disabled { opacity: 0.5; cursor: not-allowed; }\n .tab:active:not(.disabled) { transform: scale(var(--cg-interaction-press-scale)); }\n\n .tab:focus-visible {\n outline: none;\n border-radius: var(--cg-border-radius-50);\n box-shadow: 0 0 0 2px var(--cg-color-focus-ring-offset), 0 0 0 4px var(--cg-color-focus-ring);\n }\n\n /* Count badge */\n .tab-count {\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-bold);\n background: var(--cg-color-action-secondary-background-default);\n color: var(--cg-color-surface-container-outlined);\n padding: var(--cg-spacing-1) var(--cg-spacing-6);\n border-radius: var(--cg-border-radius-full);\n line-height: var(--cg-line-height-snug);\n }\n .tab.active .tab-count {\n background: var(--cg-overlay-accent-light);\n color: var(--cg-color-action-primary-background-default);\n }\n\n /* Pills variant */\n :host([variant=\"pills\"]) .tab-list {\n gap: var(--cg-spacing-4);\n background: var(--cg-color-surface-tabbar-background);\n padding: var(--cg-spacing-4);\n border-radius: var(--cg-border-radius-150);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-tabbar-border);\n }\n :host([variant=\"pills\"]) .tab {\n border-radius: var(--cg-border-radius-100);\n padding: var(--cg-spacing-8) var(--cg-spacing-16);\n border: var(--cg-border-width-50) solid transparent;\n }\n :host([variant=\"pills\"]) .tab.active {\n color: var(--cg-color-surface-base-text);\n font-weight: var(--cg-font-weight-semibold);\n }\n :host([variant=\"pills\"]) .tab:hover:not(.active):not(.disabled) {\n background: var(--cg-color-surface-tabbar-hover-background);\n }\n\n /* Sliding pill indicator */\n :host([variant=\"pills\"]) .indicator {\n position: absolute;\n top: var(--cg-spacing-4);\n bottom: var(--cg-spacing-4);\n border-radius: var(--cg-border-radius-100);\n background: var(--cg-color-surface-tabbar-selected-background);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n transition: left var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out), width var(--cg-transition-duration-default) var(--cg-transition-easing-ease-out);\n z-index: 0;\n }\n :host([variant=\"pills\"]) .tab { z-index: 1; }\n\n /* Full rounded pills */\n :host([variant=\"pills\"][rounded=\"full\"]) .tab-list {\n border-radius: var(--cg-border-radius-full);\n }\n :host([variant=\"pills\"][rounded=\"full\"]) .tab {\n border-radius: var(--cg-border-radius-full);\n }\n :host([variant=\"pills\"][rounded=\"full\"]) .indicator {\n border-radius: var(--cg-border-radius-full);\n }\n\n /* Panel */\n .panel {\n padding: var(--cg-spacing-16) 0;\n }\n\n /* Size variants */\n :host([size=\"sm\"]) .tab { font-size: var(--cg-font-size-xs); padding: var(--cg-spacing-6) var(--cg-spacing-12); }\n :host([size=\"lg\"]) .tab { font-size: var(--cg-font-size-base); padding: var(--cg-spacing-12) var(--cg-spacing-20); }\n `];\n\n @property({ reflect: true }) size: 'sm' | 'md' | 'lg' = 'md';\n @property({ type: Array }) tabs: TabItem[] = [];\n @property() value = '';\n @property({ reflect: true }) variant: 'underline' | 'pills' = 'underline';\n @property({ reflect: true }) rounded: 'default' | 'full' = 'default';\n\n @state() private _active = '';\n @state() private _indicatorLeft = 0;\n @state() private _indicatorWidth = 0;\n\n @query('.tab-list') private _tabList!: HTMLElement;\n\n override willUpdate(changed: Map<string, unknown>) {\n if (changed.has('value') || changed.has('tabs')) {\n this._active = this.value || (this.tabs.length > 0 ? this.tabs[0]!.value : '');\n }\n }\n\n override updated() {\n this._updateIndicator();\n }\n\n private _updateIndicator() {\n if (!this._tabList) return;\n const activeBtn = this._tabList.querySelector('.tab.active') as HTMLElement | null;\n if (activeBtn) {\n this._indicatorLeft = activeBtn.offsetLeft;\n this._indicatorWidth = activeBtn.offsetWidth;\n }\n }\n\n private _select(tab: TabItem) {\n if (tab.disabled) return;\n this._active = tab.value;\n this.dispatchEvent(new CustomEvent('cg-tab-change', {\n detail: { value: tab.value, label: tab.label },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _handleKeydown(e: KeyboardEvent) {\n const enabled = this.tabs.filter(t => !t.disabled);\n const idx = enabled.findIndex(t => t.value === this._active);\n let next = idx;\n\n switch (e.key) {\n case 'ArrowRight': case 'ArrowDown': next = (idx + 1) % enabled.length; break;\n case 'ArrowLeft': case 'ArrowUp': next = (idx - 1 + enabled.length) % enabled.length; break;\n case 'Home': next = 0; break;\n case 'End': next = enabled.length - 1; break;\n default: return;\n }\n\n e.preventDefault();\n this._select(enabled[next]!);\n\n requestAnimationFrame(() => {\n const btns = this._tabList.querySelectorAll('.tab:not(.disabled)');\n (btns[next] as HTMLElement)?.focus();\n });\n }\n\n override render() {\n return html`\n <div class=\"tab-list\" role=\"tablist\" @keydown=${this._handleKeydown}>\n ${this.tabs.map(tab => html`\n <button\n class=\"tab ${tab.value === this._active ? 'active' : ''} ${tab.disabled ? 'disabled' : ''}\"\n role=\"tab\"\n id=\"tab-${tab.value}\"\n tabindex=${tab.value === this._active ? '0' : '-1'}\n aria-selected=${tab.value === this._active}\n aria-controls=\"panel-${tab.value}\"\n ?disabled=${tab.disabled}\n @click=${() => this._select(tab)}\n >\n <span>${tab.label}</span>\n ${tab.count !== undefined ? html`<span class=\"tab-count\">${tab.count}</span>` : nothing}\n </button>\n `)}\n <div class=\"indicator\" style=\"left: ${this._indicatorLeft}px; width: ${this._indicatorWidth}px;\"></div>\n </div>\n <div class=\"panel\" role=\"tabpanel\" id=\"panel-${this._active}\" aria-labelledby=\"tab-${this._active}\">\n <slot name=${this._active}></slot>\n <slot></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap { 'cg-tabs': CgTabs; }\n}\n"],"names":["CgTabs","LitElement","changed","activeBtn","tab","e","enabled","idx","next","html","nothing","hostBlock","reducedMotion","css","__decorateClass","property","state","query","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* @element cg-tag-input
|
|
4
|
+
* Chip-based multi-value input. Type + Enter/comma to add tags.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```html
|
|
8
|
+
* <cg-tag-input label="Tags" placeholder="Add a tag..." max="10"></cg-tag-input>
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @fires {CustomEvent<{value: string[], tag: string}>} cg-tag-add
|
|
12
|
+
* @fires {CustomEvent<{value: string[], tag: string}>} cg-tag-remove
|
|
13
|
+
* @fires {CustomEvent<{value: string[]}>} cg-tag-change
|
|
14
|
+
*/
|
|
15
|
+
export declare class CgTagInput extends LitElement {
|
|
16
|
+
static styles: import('lit').CSSResult[];
|
|
17
|
+
static formAssociated: boolean;
|
|
18
|
+
private _internals?;
|
|
19
|
+
constructor();
|
|
20
|
+
value: string[];
|
|
21
|
+
label: string;
|
|
22
|
+
placeholder: string;
|
|
23
|
+
helper: string;
|
|
24
|
+
name: string;
|
|
25
|
+
delimiter: string;
|
|
26
|
+
max: number;
|
|
27
|
+
allowDuplicates: boolean;
|
|
28
|
+
disabled: boolean;
|
|
29
|
+
error: boolean;
|
|
30
|
+
success: boolean;
|
|
31
|
+
size: 'md' | 'lg';
|
|
32
|
+
private _inputValue;
|
|
33
|
+
private _focused;
|
|
34
|
+
private _announcement;
|
|
35
|
+
private _inputEl;
|
|
36
|
+
updated(changed: Map<string, unknown>): void;
|
|
37
|
+
private _addTag;
|
|
38
|
+
private _removeTag;
|
|
39
|
+
private _announce;
|
|
40
|
+
private _handleInput;
|
|
41
|
+
private _handleKeydown;
|
|
42
|
+
private _handleContainerClick;
|
|
43
|
+
render(): import('lit').TemplateResult<1>;
|
|
44
|
+
}
|
|
45
|
+
declare global {
|
|
46
|
+
interface HTMLElementTagNameMap {
|
|
47
|
+
'cg-tag-input': CgTagInput;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=cg-tag-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-tag-input.d.ts","sourceRoot":"","sources":["../../../src/components/cg-tag-input/cg-tag-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD;;;;;;;;;;;;GAYG;AACH,qBACa,UAAW,SAAQ,UAAU;IACxC,OAAgB,MAAM,4BAoJnB;IAEH,MAAM,CAAC,cAAc,UAAQ;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAmB;;IASX,KAAK,EAAE,MAAM,EAAE,CAAM;IACpC,KAAK,SAAM;IACX,WAAW,SAAM;IACjB,MAAM,SAAM;IACZ,IAAI,SAAM;IACV,SAAS,SAAO;IACA,GAAG,SAAK;IACwB,eAAe,UAAS;IACxC,QAAQ,UAAS;IACjB,KAAK,UAAS;IACd,OAAO,UAAS;IAC/B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE7C,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAM;IAEpB,OAAO,CAAC,QAAQ,CAAoB;IAE3C,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAMrD,OAAO,CAAC,OAAO;IA0Bf,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,qBAAqB;IAIpB,MAAM;CAqChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,UAAU,CAAC;KAC5B;CACF"}
|
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
import { css as d, LitElement as h, nothing as p, html as c } from "lit";
|
|
2
|
+
import { property as r, state as g, query as v, customElement as f } from "lit/decorators.js";
|
|
3
|
+
import { h as b, r as m } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
+
var y = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, a = (e, o, n, s) => {
|
|
5
|
+
for (var i = s > 1 ? void 0 : s ? _(o, n) : o, l = e.length - 1, u; l >= 0; l--)
|
|
6
|
+
(u = e[l]) && (i = (s ? u(o, n, i) : u(i)) || i);
|
|
7
|
+
return s && i && y(o, n, i), i;
|
|
8
|
+
};
|
|
9
|
+
let t = class extends h {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(), this.value = [], this.label = "", this.placeholder = "", this.helper = "", this.name = "", this.delimiter = ",", this.max = 0, this.allowDuplicates = !1, this.disabled = !1, this.error = !1, this.success = !1, this.size = "md", this._inputValue = "", this._focused = !1, this._announcement = "", typeof this.attachInternals == "function" && (this._internals = this.attachInternals());
|
|
12
|
+
}
|
|
13
|
+
updated(e) {
|
|
14
|
+
e.has("value") && this._internals?.setFormValue(this.value.join(","));
|
|
15
|
+
}
|
|
16
|
+
_addTag(e) {
|
|
17
|
+
if (e = e.trim(), !!e) {
|
|
18
|
+
if (!this.allowDuplicates && this.value.includes(e)) {
|
|
19
|
+
this._announce(`Tag "${e}" already exists`);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (this.max > 0 && this.value.length >= this.max) {
|
|
23
|
+
this._announce(`Maximum of ${this.max} tags reached`);
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.value = [...this.value, e], this._inputValue = "", this._announce(`Added tag ${e}`), this.dispatchEvent(new CustomEvent("cg-tag-add", {
|
|
27
|
+
detail: { value: this.value, tag: e },
|
|
28
|
+
bubbles: !0,
|
|
29
|
+
composed: !0
|
|
30
|
+
})), this.dispatchEvent(new CustomEvent("cg-tag-change", {
|
|
31
|
+
detail: { value: this.value },
|
|
32
|
+
bubbles: !0,
|
|
33
|
+
composed: !0
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
_removeTag(e) {
|
|
38
|
+
const o = this.value[e];
|
|
39
|
+
o && (this.value = this.value.filter((n, s) => s !== e), this._announce(`Removed tag ${o}`), this.dispatchEvent(new CustomEvent("cg-tag-remove", {
|
|
40
|
+
detail: { value: this.value, tag: o },
|
|
41
|
+
bubbles: !0,
|
|
42
|
+
composed: !0
|
|
43
|
+
})), this.dispatchEvent(new CustomEvent("cg-tag-change", {
|
|
44
|
+
detail: { value: this.value },
|
|
45
|
+
bubbles: !0,
|
|
46
|
+
composed: !0
|
|
47
|
+
})));
|
|
48
|
+
}
|
|
49
|
+
_announce(e) {
|
|
50
|
+
this._announcement = "", requestAnimationFrame(() => {
|
|
51
|
+
this._announcement = e;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
_handleInput(e) {
|
|
55
|
+
this._inputValue = e.target.value;
|
|
56
|
+
}
|
|
57
|
+
_handleKeydown(e) {
|
|
58
|
+
e.key === "Enter" || e.key === this.delimiter ? (e.preventDefault(), this._addTag(this._inputValue)) : e.key === "Backspace" && this._inputValue === "" && this.value.length > 0 ? (e.preventDefault(), this._removeTag(this.value.length - 1)) : e.key === "Escape" && (this._inputValue = "");
|
|
59
|
+
}
|
|
60
|
+
_handleContainerClick() {
|
|
61
|
+
this._inputEl?.focus();
|
|
62
|
+
}
|
|
63
|
+
render() {
|
|
64
|
+
return c`
|
|
65
|
+
${this.label ? c`<label>${this.label}</label>` : p}
|
|
66
|
+
<div
|
|
67
|
+
class="container ${this._focused ? "focused" : ""}"
|
|
68
|
+
@click=${this._handleContainerClick}
|
|
69
|
+
>
|
|
70
|
+
${this.value.map((e, o) => c`
|
|
71
|
+
<span class="tag">
|
|
72
|
+
${e}
|
|
73
|
+
<button
|
|
74
|
+
class="tag-remove"
|
|
75
|
+
type="button"
|
|
76
|
+
aria-label=${`Remove ${e}`}
|
|
77
|
+
@click=${(n) => {
|
|
78
|
+
n.stopPropagation(), this._removeTag(o);
|
|
79
|
+
}}
|
|
80
|
+
>
|
|
81
|
+
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round">
|
|
82
|
+
<path d="M7.5 2.5L2.5 7.5M2.5 2.5l5 5"/>
|
|
83
|
+
</svg>
|
|
84
|
+
</button>
|
|
85
|
+
</span>
|
|
86
|
+
`)}
|
|
87
|
+
<input
|
|
88
|
+
type="text"
|
|
89
|
+
.value=${this._inputValue}
|
|
90
|
+
placeholder=${this.value.length === 0 ? this.placeholder : ""}
|
|
91
|
+
?disabled=${this.disabled}
|
|
92
|
+
@input=${this._handleInput}
|
|
93
|
+
@keydown=${this._handleKeydown}
|
|
94
|
+
@focus=${() => this._focused = !0}
|
|
95
|
+
@blur=${() => this._focused = !1}
|
|
96
|
+
/>
|
|
97
|
+
</div>
|
|
98
|
+
${this.helper ? c`<div class="helper">${this.helper}</div>` : p}
|
|
99
|
+
<div class="sr-only" role="status" aria-live="polite" aria-atomic="true">${this._announcement}</div>
|
|
100
|
+
`;
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
t.styles = [b, m, d`
|
|
104
|
+
:host { display: block; }
|
|
105
|
+
|
|
106
|
+
label {
|
|
107
|
+
display: block;
|
|
108
|
+
margin-bottom: var(--cg-spacing-6);
|
|
109
|
+
font-size: var(--cg-font-size-sm);
|
|
110
|
+
font-weight: var(--cg-font-weight-medium);
|
|
111
|
+
color: var(--cg-color-surface-base-text);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.container {
|
|
115
|
+
display: flex;
|
|
116
|
+
flex-wrap: wrap;
|
|
117
|
+
align-items: center;
|
|
118
|
+
gap: var(--cg-component-tag-input-gap);
|
|
119
|
+
min-height: var(--cg-component-tag-input-min-height);
|
|
120
|
+
padding: var(--cg-spacing-8) var(--cg-spacing-12);
|
|
121
|
+
background: var(--cg-color-input-background-default);
|
|
122
|
+
border: var(--cg-border-width-50) solid var(--cg-color-input-border-default);
|
|
123
|
+
border-radius: var(--cg-component-tag-input-radius);
|
|
124
|
+
cursor: text;
|
|
125
|
+
transition:
|
|
126
|
+
border-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default),
|
|
127
|
+
box-shadow var(--cg-transition-duration-fast) var(--cg-transition-easing-default);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* ── Size: lg ── */
|
|
131
|
+
:host([size="lg"]) .container {
|
|
132
|
+
min-height: var(--cg-component-input-height-lg);
|
|
133
|
+
padding: var(--cg-spacing-12) var(--cg-spacing-16);
|
|
134
|
+
gap: var(--cg-spacing-8);
|
|
135
|
+
}
|
|
136
|
+
.container:hover { border-color: var(--cg-color-input-border-hover); }
|
|
137
|
+
.container.focused {
|
|
138
|
+
border-color: var(--cg-color-input-border-focus);
|
|
139
|
+
box-shadow: 0 0 0 3px var(--cg-overlay-accent-strong);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
:host([error]) .container { border-color: var(--cg-color-status-error-border-default); }
|
|
143
|
+
:host([error]) .container.focused {
|
|
144
|
+
border-color: var(--cg-color-status-error-text-default);
|
|
145
|
+
box-shadow: 0 0 0 3px var(--cg-shadow-focus-error);
|
|
146
|
+
}
|
|
147
|
+
:host([success]) .container { border-color: var(--cg-color-status-success-border-default); }
|
|
148
|
+
:host([success]) .container.focused {
|
|
149
|
+
border-color: var(--cg-color-status-success-text-default);
|
|
150
|
+
box-shadow: 0 0 0 3px var(--cg-shadow-focus-success);
|
|
151
|
+
}
|
|
152
|
+
:host([disabled]) .container { opacity: 0.6; pointer-events: none; }
|
|
153
|
+
|
|
154
|
+
.tag {
|
|
155
|
+
display: inline-flex;
|
|
156
|
+
align-items: center;
|
|
157
|
+
gap: var(--cg-spacing-4);
|
|
158
|
+
padding: var(--cg-spacing-6) var(--cg-spacing-6) var(--cg-spacing-6) var(--cg-spacing-12);
|
|
159
|
+
background: var(--cg-color-action-secondary-background-default);
|
|
160
|
+
border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);
|
|
161
|
+
border-radius: var(--cg-border-radius-full);
|
|
162
|
+
font-size: var(--cg-font-size-xs);
|
|
163
|
+
font-weight: var(--cg-font-weight-medium);
|
|
164
|
+
line-height: 1;
|
|
165
|
+
color: var(--cg-color-surface-base-text);
|
|
166
|
+
animation: tagIn var(--cg-transition-duration-default) var(--cg-transition-easing-spring);
|
|
167
|
+
transition:
|
|
168
|
+
background-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default),
|
|
169
|
+
border-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);
|
|
170
|
+
}
|
|
171
|
+
.tag:hover {
|
|
172
|
+
background: var(--cg-color-action-secondary-background-hover);
|
|
173
|
+
border-color: var(--cg-color-input-border-hover);
|
|
174
|
+
}
|
|
175
|
+
:host([size="lg"]) .tag {
|
|
176
|
+
padding: var(--cg-spacing-8) var(--cg-spacing-8) var(--cg-spacing-8) var(--cg-spacing-16);
|
|
177
|
+
gap: var(--cg-spacing-6);
|
|
178
|
+
font-size: var(--cg-font-size-sm);
|
|
179
|
+
}
|
|
180
|
+
:host([size="lg"]) .tag-remove {
|
|
181
|
+
width: var(--cg-spacing-24);
|
|
182
|
+
height: var(--cg-spacing-24);
|
|
183
|
+
}
|
|
184
|
+
@keyframes tagIn {
|
|
185
|
+
from { opacity: 0; transform: scale(0.8); }
|
|
186
|
+
to { opacity: 1; transform: scale(1); }
|
|
187
|
+
}
|
|
188
|
+
.tag-remove:active {
|
|
189
|
+
transform: scale(var(--cg-interaction-press-scale));
|
|
190
|
+
}
|
|
191
|
+
.tag-remove {
|
|
192
|
+
display: inline-flex;
|
|
193
|
+
align-items: center;
|
|
194
|
+
justify-content: center;
|
|
195
|
+
width: var(--cg-spacing-20);
|
|
196
|
+
height: var(--cg-spacing-20);
|
|
197
|
+
border: none;
|
|
198
|
+
background: none;
|
|
199
|
+
color: inherit;
|
|
200
|
+
cursor: pointer;
|
|
201
|
+
border-radius: var(--cg-border-radius-full);
|
|
202
|
+
opacity: 0.6;
|
|
203
|
+
transition:
|
|
204
|
+
opacity var(--cg-transition-duration-fast) var(--cg-transition-easing-default),
|
|
205
|
+
background var(--cg-transition-duration-fast) var(--cg-transition-easing-default);
|
|
206
|
+
}
|
|
207
|
+
.tag-remove:hover {
|
|
208
|
+
opacity: 1;
|
|
209
|
+
background: var(--cg-color-action-tertiary-background-hover);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
input {
|
|
213
|
+
flex: 1;
|
|
214
|
+
min-width: var(--cg-spacing-80);
|
|
215
|
+
height: var(--cg-spacing-24);
|
|
216
|
+
line-height: var(--cg-spacing-24);
|
|
217
|
+
padding: 0;
|
|
218
|
+
border: none;
|
|
219
|
+
outline: none;
|
|
220
|
+
background: none;
|
|
221
|
+
color: var(--cg-color-input-text-default);
|
|
222
|
+
font-family: inherit;
|
|
223
|
+
font-size: var(--cg-font-size-sm);
|
|
224
|
+
}
|
|
225
|
+
:host([size="lg"]) input {
|
|
226
|
+
height: var(--cg-spacing-32);
|
|
227
|
+
line-height: var(--cg-spacing-32);
|
|
228
|
+
font-size: var(--cg-font-size-base);
|
|
229
|
+
}
|
|
230
|
+
input::placeholder { color: var(--cg-color-input-text-placeholder); }
|
|
231
|
+
|
|
232
|
+
.helper {
|
|
233
|
+
margin-top: var(--cg-spacing-6);
|
|
234
|
+
font-size: var(--cg-font-size-xs);
|
|
235
|
+
color: var(--cg-color-surface-container-outlined);
|
|
236
|
+
}
|
|
237
|
+
:host([error]) .helper { color: var(--cg-color-status-error-text-default); }
|
|
238
|
+
|
|
239
|
+
/* Visually-hidden live region for screen readers */
|
|
240
|
+
.sr-only {
|
|
241
|
+
position: absolute;
|
|
242
|
+
width: 1px;
|
|
243
|
+
height: 1px;
|
|
244
|
+
padding: 0;
|
|
245
|
+
margin: -1px;
|
|
246
|
+
overflow: hidden;
|
|
247
|
+
clip: rect(0, 0, 0, 0);
|
|
248
|
+
white-space: nowrap;
|
|
249
|
+
border: 0;
|
|
250
|
+
}
|
|
251
|
+
`];
|
|
252
|
+
t.formAssociated = !0;
|
|
253
|
+
a([
|
|
254
|
+
r({ type: Array })
|
|
255
|
+
], t.prototype, "value", 2);
|
|
256
|
+
a([
|
|
257
|
+
r()
|
|
258
|
+
], t.prototype, "label", 2);
|
|
259
|
+
a([
|
|
260
|
+
r()
|
|
261
|
+
], t.prototype, "placeholder", 2);
|
|
262
|
+
a([
|
|
263
|
+
r()
|
|
264
|
+
], t.prototype, "helper", 2);
|
|
265
|
+
a([
|
|
266
|
+
r()
|
|
267
|
+
], t.prototype, "name", 2);
|
|
268
|
+
a([
|
|
269
|
+
r()
|
|
270
|
+
], t.prototype, "delimiter", 2);
|
|
271
|
+
a([
|
|
272
|
+
r({ type: Number })
|
|
273
|
+
], t.prototype, "max", 2);
|
|
274
|
+
a([
|
|
275
|
+
r({ type: Boolean, attribute: "allow-duplicates" })
|
|
276
|
+
], t.prototype, "allowDuplicates", 2);
|
|
277
|
+
a([
|
|
278
|
+
r({ type: Boolean, reflect: !0 })
|
|
279
|
+
], t.prototype, "disabled", 2);
|
|
280
|
+
a([
|
|
281
|
+
r({ type: Boolean, reflect: !0 })
|
|
282
|
+
], t.prototype, "error", 2);
|
|
283
|
+
a([
|
|
284
|
+
r({ type: Boolean, reflect: !0 })
|
|
285
|
+
], t.prototype, "success", 2);
|
|
286
|
+
a([
|
|
287
|
+
r({ reflect: !0 })
|
|
288
|
+
], t.prototype, "size", 2);
|
|
289
|
+
a([
|
|
290
|
+
g()
|
|
291
|
+
], t.prototype, "_inputValue", 2);
|
|
292
|
+
a([
|
|
293
|
+
g()
|
|
294
|
+
], t.prototype, "_focused", 2);
|
|
295
|
+
a([
|
|
296
|
+
g()
|
|
297
|
+
], t.prototype, "_announcement", 2);
|
|
298
|
+
a([
|
|
299
|
+
v("input")
|
|
300
|
+
], t.prototype, "_inputEl", 2);
|
|
301
|
+
t = a([
|
|
302
|
+
f("cg-tag-input")
|
|
303
|
+
], t);
|
|
304
|
+
export {
|
|
305
|
+
t as CgTagInput
|
|
306
|
+
};
|
|
307
|
+
//# sourceMappingURL=cg-tag-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cg-tag-input.js","sources":["../../../src/components/cg-tag-input/cg-tag-input.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\n\n/**\n * @element cg-tag-input\n * Chip-based multi-value input. Type + Enter/comma to add tags.\n *\n * @example\n * ```html\n * <cg-tag-input label=\"Tags\" placeholder=\"Add a tag...\" max=\"10\"></cg-tag-input>\n * ```\n *\n * @fires {CustomEvent<{value: string[], tag: string}>} cg-tag-add\n * @fires {CustomEvent<{value: string[], tag: string}>} cg-tag-remove\n * @fires {CustomEvent<{value: string[]}>} cg-tag-change\n */\n@customElement('cg-tag-input')\nexport class CgTagInput extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n :host { display: block; }\n\n label {\n display: block;\n margin-bottom: var(--cg-spacing-6);\n font-size: var(--cg-font-size-sm);\n font-weight: var(--cg-font-weight-medium);\n color: var(--cg-color-surface-base-text);\n }\n\n .container {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--cg-component-tag-input-gap);\n min-height: var(--cg-component-tag-input-min-height);\n padding: var(--cg-spacing-8) var(--cg-spacing-12);\n background: var(--cg-color-input-background-default);\n border: var(--cg-border-width-50) solid var(--cg-color-input-border-default);\n border-radius: var(--cg-component-tag-input-radius);\n cursor: text;\n transition:\n border-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default),\n box-shadow var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n\n /* ── Size: lg ── */\n :host([size=\"lg\"]) .container {\n min-height: var(--cg-component-input-height-lg);\n padding: var(--cg-spacing-12) var(--cg-spacing-16);\n gap: var(--cg-spacing-8);\n }\n .container:hover { border-color: var(--cg-color-input-border-hover); }\n .container.focused {\n border-color: var(--cg-color-input-border-focus);\n box-shadow: 0 0 0 3px var(--cg-overlay-accent-strong);\n }\n\n :host([error]) .container { border-color: var(--cg-color-status-error-border-default); }\n :host([error]) .container.focused {\n border-color: var(--cg-color-status-error-text-default);\n box-shadow: 0 0 0 3px var(--cg-shadow-focus-error);\n }\n :host([success]) .container { border-color: var(--cg-color-status-success-border-default); }\n :host([success]) .container.focused {\n border-color: var(--cg-color-status-success-text-default);\n box-shadow: 0 0 0 3px var(--cg-shadow-focus-success);\n }\n :host([disabled]) .container { opacity: 0.6; pointer-events: none; }\n\n .tag {\n display: inline-flex;\n align-items: center;\n gap: var(--cg-spacing-4);\n padding: var(--cg-spacing-6) var(--cg-spacing-6) var(--cg-spacing-6) var(--cg-spacing-12);\n background: var(--cg-color-action-secondary-background-default);\n border: var(--cg-border-width-50) solid var(--cg-color-surface-cards-border);\n border-radius: var(--cg-border-radius-full);\n font-size: var(--cg-font-size-xs);\n font-weight: var(--cg-font-weight-medium);\n line-height: 1;\n color: var(--cg-color-surface-base-text);\n animation: tagIn var(--cg-transition-duration-default) var(--cg-transition-easing-spring);\n transition:\n background-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default),\n border-color var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .tag:hover {\n background: var(--cg-color-action-secondary-background-hover);\n border-color: var(--cg-color-input-border-hover);\n }\n :host([size=\"lg\"]) .tag {\n padding: var(--cg-spacing-8) var(--cg-spacing-8) var(--cg-spacing-8) var(--cg-spacing-16);\n gap: var(--cg-spacing-6);\n font-size: var(--cg-font-size-sm);\n }\n :host([size=\"lg\"]) .tag-remove {\n width: var(--cg-spacing-24);\n height: var(--cg-spacing-24);\n }\n @keyframes tagIn {\n from { opacity: 0; transform: scale(0.8); }\n to { opacity: 1; transform: scale(1); }\n }\n .tag-remove:active {\n transform: scale(var(--cg-interaction-press-scale));\n }\n .tag-remove {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--cg-spacing-20);\n height: var(--cg-spacing-20);\n border: none;\n background: none;\n color: inherit;\n cursor: pointer;\n border-radius: var(--cg-border-radius-full);\n opacity: 0.6;\n transition:\n opacity var(--cg-transition-duration-fast) var(--cg-transition-easing-default),\n background var(--cg-transition-duration-fast) var(--cg-transition-easing-default);\n }\n .tag-remove:hover {\n opacity: 1;\n background: var(--cg-color-action-tertiary-background-hover);\n }\n\n input {\n flex: 1;\n min-width: var(--cg-spacing-80);\n height: var(--cg-spacing-24);\n line-height: var(--cg-spacing-24);\n padding: 0;\n border: none;\n outline: none;\n background: none;\n color: var(--cg-color-input-text-default);\n font-family: inherit;\n font-size: var(--cg-font-size-sm);\n }\n :host([size=\"lg\"]) input {\n height: var(--cg-spacing-32);\n line-height: var(--cg-spacing-32);\n font-size: var(--cg-font-size-base);\n }\n input::placeholder { color: var(--cg-color-input-text-placeholder); }\n\n .helper {\n margin-top: var(--cg-spacing-6);\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-surface-container-outlined);\n }\n :host([error]) .helper { color: var(--cg-color-status-error-text-default); }\n\n /* Visually-hidden live region for screen readers */\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n }\n `];\n\n static formAssociated = true;\n private _internals?: ElementInternals;\n\n constructor() {\n super();\n if (typeof this.attachInternals === 'function') {\n this._internals = this.attachInternals();\n }\n }\n\n @property({ type: Array }) value: string[] = [];\n @property() label = '';\n @property() placeholder = '';\n @property() helper = '';\n @property() name = '';\n @property() delimiter = ',';\n @property({ type: Number }) max = 0;\n @property({ type: Boolean, attribute: 'allow-duplicates' }) allowDuplicates = false;\n @property({ type: Boolean, reflect: true }) disabled = false;\n @property({ type: Boolean, reflect: true }) error = false;\n @property({ type: Boolean, reflect: true }) success = false;\n @property({ reflect: true }) size: 'md' | 'lg' = 'md';\n\n @state() private _inputValue = '';\n @state() private _focused = false;\n @state() private _announcement = '';\n\n @query('input') private _inputEl!: HTMLInputElement;\n\n override updated(changed: Map<string, unknown>): void {\n if (changed.has('value')) {\n this._internals?.setFormValue(this.value.join(','));\n }\n }\n\n private _addTag(tag: string): void {\n tag = tag.trim();\n if (!tag) return;\n if (!this.allowDuplicates && this.value.includes(tag)) {\n this._announce(`Tag \"${tag}\" already exists`);\n return;\n }\n if (this.max > 0 && this.value.length >= this.max) {\n this._announce(`Maximum of ${this.max} tags reached`);\n return;\n }\n this.value = [...this.value, tag];\n this._inputValue = '';\n this._announce(`Added tag ${tag}`);\n this.dispatchEvent(new CustomEvent('cg-tag-add', {\n detail: { value: this.value, tag },\n bubbles: true,\n composed: true,\n }));\n this.dispatchEvent(new CustomEvent('cg-tag-change', {\n detail: { value: this.value },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _removeTag(idx: number): void {\n const tag = this.value[idx];\n if (!tag) return;\n this.value = this.value.filter((_, i) => i !== idx);\n this._announce(`Removed tag ${tag}`);\n this.dispatchEvent(new CustomEvent('cg-tag-remove', {\n detail: { value: this.value, tag },\n bubbles: true,\n composed: true,\n }));\n this.dispatchEvent(new CustomEvent('cg-tag-change', {\n detail: { value: this.value },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _announce(message: string): void {\n this._announcement = '';\n requestAnimationFrame(() => { this._announcement = message; });\n }\n\n private _handleInput(e: Event): void {\n this._inputValue = (e.target as HTMLInputElement).value;\n }\n\n private _handleKeydown(e: KeyboardEvent): void {\n if (e.key === 'Enter' || e.key === this.delimiter) {\n e.preventDefault();\n this._addTag(this._inputValue);\n } else if (e.key === 'Backspace' && this._inputValue === '' && this.value.length > 0) {\n e.preventDefault();\n this._removeTag(this.value.length - 1);\n } else if (e.key === 'Escape') {\n this._inputValue = '';\n }\n }\n\n private _handleContainerClick(): void {\n this._inputEl?.focus();\n }\n\n override render() {\n return html`\n ${this.label ? html`<label>${this.label}</label>` : nothing}\n <div\n class=\"container ${this._focused ? 'focused' : ''}\"\n @click=${this._handleContainerClick}\n >\n ${this.value.map((tag, idx) => html`\n <span class=\"tag\">\n ${tag}\n <button\n class=\"tag-remove\"\n type=\"button\"\n aria-label=${`Remove ${tag}`}\n @click=${(e: Event) => { e.stopPropagation(); this._removeTag(idx); }}\n >\n <svg width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\">\n <path d=\"M7.5 2.5L2.5 7.5M2.5 2.5l5 5\"/>\n </svg>\n </button>\n </span>\n `)}\n <input\n type=\"text\"\n .value=${this._inputValue}\n placeholder=${this.value.length === 0 ? this.placeholder : ''}\n ?disabled=${this.disabled}\n @input=${this._handleInput}\n @keydown=${this._handleKeydown}\n @focus=${() => this._focused = true}\n @blur=${() => this._focused = false}\n />\n </div>\n ${this.helper ? html`<div class=\"helper\">${this.helper}</div>` : nothing}\n <div class=\"sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">${this._announcement}</div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-tag-input': CgTagInput;\n }\n}\n"],"names":["CgTagInput","LitElement","changed","tag","idx","_","i","message","html","nothing","e","hostBlock","reducedMotion","css","__decorateClass","property","state","query","customElement"],"mappings":"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"}
|