@cognivo/components 0.8.0 → 0.8.2
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/dist/chunks/focus-trap-vlQwKK-3.js +82 -0
- package/dist/chunks/focus-trap-vlQwKK-3.js.map +1 -0
- package/dist/chunks/{premium.css-9I4kHrsl.js → premium.css-DHekUEUt.js} +25 -25
- package/dist/chunks/{premium.css-9I4kHrsl.js.map → premium.css-DHekUEUt.js.map} +1 -1
- package/dist/cognivo.min.js +3375 -5270
- package/dist/cognivo.min.js.map +1 -1
- package/dist/components/ai-ab-test/ai-ab-test.js +1 -1
- package/dist/components/ai-accessibility-report/ai-accessibility-report.d.ts.map +1 -1
- package/dist/components/ai-accessibility-report/ai-accessibility-report.js +14 -13
- package/dist/components/ai-accessibility-report/ai-accessibility-report.js.map +1 -1
- package/dist/components/ai-action-preview/ai-action-preview.d.ts.map +1 -1
- package/dist/components/ai-action-preview/ai-action-preview.js +15 -14
- package/dist/components/ai-action-preview/ai-action-preview.js.map +1 -1
- package/dist/components/ai-agent-card/ai-agent-card.js +1 -1
- package/dist/components/ai-agent-steps/ai-agent-steps.d.ts +8 -21
- package/dist/components/ai-agent-steps/ai-agent-steps.d.ts.map +1 -1
- package/dist/components/ai-agent-steps/ai-agent-steps.js +85 -139
- package/dist/components/ai-agent-steps/ai-agent-steps.js.map +1 -1
- package/dist/components/ai-alert-card/ai-alert-card.js +5 -5
- package/dist/components/ai-alert-card/ai-alert-card.js.map +1 -1
- package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts +0 -13
- package/dist/components/ai-analytics-chart/ai-analytics-chart.d.ts.map +1 -1
- package/dist/components/ai-analytics-chart/ai-analytics-chart.js +75 -125
- package/dist/components/ai-analytics-chart/ai-analytics-chart.js.map +1 -1
- package/dist/components/ai-annotation/ai-annotation.js +2 -2
- package/dist/components/ai-annotation/ai-annotation.js.map +1 -1
- package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts +0 -9
- package/dist/components/ai-api-key-manager/ai-api-key-manager.d.ts.map +1 -1
- package/dist/components/ai-api-key-manager/ai-api-key-manager.js +115 -276
- package/dist/components/ai-api-key-manager/ai-api-key-manager.js.map +1 -1
- package/dist/components/ai-app-sidebar/ai-app-sidebar.js +13 -13
- package/dist/components/ai-app-sidebar/ai-app-sidebar.js.map +1 -1
- package/dist/components/ai-assistant-widget/ai-assistant-widget.d.ts.map +1 -1
- package/dist/components/ai-assistant-widget/ai-assistant-widget.js +5 -2
- package/dist/components/ai-assistant-widget/ai-assistant-widget.js.map +1 -1
- package/dist/components/ai-audio-player/ai-audio-player.d.ts.map +1 -1
- package/dist/components/ai-audio-player/ai-audio-player.js +23 -19
- package/dist/components/ai-audio-player/ai-audio-player.js.map +1 -1
- package/dist/components/ai-avatar/ai-avatar.js +1 -1
- package/dist/components/ai-badge/ai-badge.js +1 -1
- package/dist/components/ai-batch-progress/ai-batch-progress.js +6 -6
- package/dist/components/ai-batch-progress/ai-batch-progress.js.map +1 -1
- package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts +0 -13
- package/dist/components/ai-cache-indicator/ai-cache-indicator.d.ts.map +1 -1
- package/dist/components/ai-cache-indicator/ai-cache-indicator.js +90 -185
- package/dist/components/ai-cache-indicator/ai-cache-indicator.js.map +1 -1
- package/dist/components/ai-capture-flow/ai-capture-flow.js +21 -21
- package/dist/components/ai-capture-flow/ai-capture-flow.js.map +1 -1
- package/dist/components/ai-changelog/ai-changelog.js +26 -26
- package/dist/components/ai-changelog/ai-changelog.js.map +1 -1
- package/dist/components/ai-chart-summary/ai-chart-summary.d.ts +0 -6
- package/dist/components/ai-chart-summary/ai-chart-summary.d.ts.map +1 -1
- package/dist/components/ai-chart-summary/ai-chart-summary.js +100 -103
- package/dist/components/ai-chart-summary/ai-chart-summary.js.map +1 -1
- package/dist/components/ai-chat/ai-chat.d.ts.map +1 -1
- package/dist/components/ai-chat/ai-chat.js +9 -3
- package/dist/components/ai-chat/ai-chat.js.map +1 -1
- package/dist/components/ai-citation/ai-citation.d.ts +0 -6
- package/dist/components/ai-citation/ai-citation.d.ts.map +1 -1
- package/dist/components/ai-citation/ai-citation.js +64 -90
- package/dist/components/ai-citation/ai-citation.js.map +1 -1
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts +1 -27
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.d.ts.map +1 -1
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js +114 -260
- package/dist/components/ai-collaborative-editor/ai-collaborative-editor.js.map +1 -1
- package/dist/components/ai-command-palette/ai-command-palette.js +1 -1
- package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts +11 -9
- package/dist/components/ai-confidence-badge/ai-confidence-badge.d.ts.map +1 -1
- package/dist/components/ai-confidence-badge/ai-confidence-badge.js +183 -101
- package/dist/components/ai-confidence-badge/ai-confidence-badge.js.map +1 -1
- package/dist/components/ai-confidence-slider/ai-confidence-slider.js +27 -27
- package/dist/components/ai-confidence-slider/ai-confidence-slider.js.map +1 -1
- package/dist/components/ai-consent-manager/ai-consent-manager.js +2 -2
- package/dist/components/ai-consent-manager/ai-consent-manager.js.map +1 -1
- package/dist/components/ai-context-window/ai-context-window.js +19 -19
- package/dist/components/ai-context-window/ai-context-window.js.map +1 -1
- package/dist/components/ai-copy-button/ai-copy-button.js +4 -4
- package/dist/components/ai-copy-button/ai-copy-button.js.map +1 -1
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js +14 -14
- package/dist/components/ai-cost-dashboard/ai-cost-dashboard.js.map +1 -1
- package/dist/components/ai-data-card/ai-data-card.js +2 -2
- package/dist/components/ai-data-card/ai-data-card.js.map +1 -1
- package/dist/components/ai-data-lineage/ai-data-lineage.js +6 -6
- package/dist/components/ai-data-lineage/ai-data-lineage.js.map +1 -1
- package/dist/components/ai-data-preview/ai-data-preview.d.ts +0 -7
- package/dist/components/ai-data-preview/ai-data-preview.d.ts.map +1 -1
- package/dist/components/ai-data-preview/ai-data-preview.js +130 -267
- package/dist/components/ai-data-preview/ai-data-preview.js.map +1 -1
- package/dist/components/ai-data-table/ai-data-table.js +9 -9
- package/dist/components/ai-data-table/ai-data-table.js.map +1 -1
- package/dist/components/ai-debug-console/ai-debug-console.d.ts +1 -13
- package/dist/components/ai-debug-console/ai-debug-console.d.ts.map +1 -1
- package/dist/components/ai-debug-console/ai-debug-console.js +134 -340
- package/dist/components/ai-debug-console/ai-debug-console.js.map +1 -1
- package/dist/components/ai-detection-canvas/ai-detection-canvas.js +2 -2
- package/dist/components/ai-detection-canvas/ai-detection-canvas.js.map +1 -1
- package/dist/components/ai-diff-panel/ai-diff-panel.js +1 -1
- package/dist/components/ai-embedding-viz/ai-embedding-viz.js +4 -4
- package/dist/components/ai-embedding-viz/ai-embedding-viz.js.map +1 -1
- package/dist/components/ai-empty-state/ai-empty-state.js +1 -1
- package/dist/components/ai-error-boundary/ai-error-boundary.d.ts.map +1 -1
- package/dist/components/ai-error-boundary/ai-error-boundary.js +26 -21
- package/dist/components/ai-error-boundary/ai-error-boundary.js.map +1 -1
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js +5 -5
- package/dist/components/ai-eval-scorecard/ai-eval-scorecard.js.map +1 -1
- package/dist/components/ai-feature-flag/ai-feature-flag.d.ts +0 -14
- package/dist/components/ai-feature-flag/ai-feature-flag.d.ts.map +1 -1
- package/dist/components/ai-feature-flag/ai-feature-flag.js +181 -322
- package/dist/components/ai-feature-flag/ai-feature-flag.js.map +1 -1
- package/dist/components/ai-feedback/ai-feedback.d.ts.map +1 -1
- package/dist/components/ai-feedback/ai-feedback.js +10 -5
- package/dist/components/ai-feedback/ai-feedback.js.map +1 -1
- package/dist/components/ai-file-upload/ai-file-upload.js +1 -1
- package/dist/components/ai-form-generator/ai-form-generator.js +1 -1
- package/dist/components/ai-guardrail/ai-guardrail.js +2 -2
- package/dist/components/ai-guardrail/ai-guardrail.js.map +1 -1
- package/dist/components/ai-heatmap/ai-heatmap.js +1 -1
- package/dist/components/ai-insight-card/ai-insight-card.js +4 -4
- package/dist/components/ai-insight-card/ai-insight-card.js.map +1 -1
- package/dist/components/ai-json-viewer/ai-json-viewer.js +13 -13
- package/dist/components/ai-json-viewer/ai-json-viewer.js.map +1 -1
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js +24 -24
- package/dist/components/ai-keyboard-shortcuts/ai-keyboard-shortcuts.js.map +1 -1
- package/dist/components/ai-kpi-grid/ai-kpi-grid.js +2 -2
- package/dist/components/ai-kpi-grid/ai-kpi-grid.js.map +1 -1
- package/dist/components/ai-labeling-board/ai-labeling-board.js +11 -11
- package/dist/components/ai-labeling-board/ai-labeling-board.js.map +1 -1
- package/dist/components/ai-memory-panel/ai-memory-panel.js +7 -7
- package/dist/components/ai-memory-panel/ai-memory-panel.js.map +1 -1
- package/dist/components/ai-model-comparison/ai-model-comparison.js +2 -2
- package/dist/components/ai-model-comparison/ai-model-comparison.js.map +1 -1
- package/dist/components/ai-model-selector/ai-model-selector.js +7 -7
- package/dist/components/ai-model-selector/ai-model-selector.js.map +1 -1
- package/dist/components/ai-notification-center/ai-notification-center.js +27 -27
- package/dist/components/ai-notification-center/ai-notification-center.js.map +1 -1
- package/dist/components/ai-onboarding/ai-onboarding.js +5 -5
- package/dist/components/ai-onboarding/ai-onboarding.js.map +1 -1
- package/dist/components/ai-permission-gate/ai-permission-gate.js +1 -1
- package/dist/components/ai-personalization-dash/ai-personalization-dash.js +1 -1
- package/dist/components/ai-presence/ai-presence.js +25 -25
- package/dist/components/ai-presence/ai-presence.js.map +1 -1
- package/dist/components/ai-progress-steps/ai-progress-steps.js +11 -11
- package/dist/components/ai-progress-steps/ai-progress-steps.js.map +1 -1
- package/dist/components/ai-prompt-editor/ai-prompt-editor.js +1 -1
- package/dist/components/ai-prompt-template/ai-prompt-template.js +29 -29
- package/dist/components/ai-prompt-template/ai-prompt-template.js.map +1 -1
- package/dist/components/ai-rag-panel/ai-rag-panel.js +4 -4
- package/dist/components/ai-rag-panel/ai-rag-panel.js.map +1 -1
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js +16 -16
- package/dist/components/ai-reasoning-tree/ai-reasoning-tree.js.map +1 -1
- package/dist/components/ai-result-panel/ai-result-panel.js +1 -1
- package/dist/components/ai-reveal-animation/ai-reveal-animation.js +3 -3
- package/dist/components/ai-reveal-animation/ai-reveal-animation.js.map +1 -1
- package/dist/components/ai-reward-signal/ai-reward-signal.js +1 -1
- package/dist/components/ai-rich-message/ai-rich-message.d.ts.map +1 -1
- package/dist/components/ai-rich-message/ai-rich-message.js +37 -30
- package/dist/components/ai-rich-message/ai-rich-message.js.map +1 -1
- package/dist/components/ai-scenario-panel/ai-scenario-panel.js +10 -10
- package/dist/components/ai-scenario-panel/ai-scenario-panel.js.map +1 -1
- package/dist/components/ai-search/ai-search.js +1 -1
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js +3 -3
- package/dist/components/ai-segmentation-viewer/ai-segmentation-viewer.js.map +1 -1
- package/dist/components/ai-sidebar/ai-sidebar.js +1 -1
- package/dist/components/ai-similarity-card/ai-similarity-card.js +1 -1
- package/dist/components/ai-source-graph/ai-source-graph.js +2 -2
- package/dist/components/ai-source-graph/ai-source-graph.js.map +1 -1
- package/dist/components/ai-status-page/ai-status-page.js +15 -15
- package/dist/components/ai-status-page/ai-status-page.js.map +1 -1
- package/dist/components/ai-streaming-text/ai-streaming-text.js +1 -1
- package/dist/components/ai-test-runner/ai-test-runner.d.ts +0 -8
- package/dist/components/ai-test-runner/ai-test-runner.d.ts.map +1 -1
- package/dist/components/ai-test-runner/ai-test-runner.js +100 -257
- package/dist/components/ai-test-runner/ai-test-runner.js.map +1 -1
- package/dist/components/ai-thinking/ai-thinking.js +1 -1
- package/dist/components/ai-timeline/ai-timeline.js +2 -2
- package/dist/components/ai-timeline/ai-timeline.js.map +1 -1
- package/dist/components/ai-token-tracker/ai-token-tracker.js +3 -3
- package/dist/components/ai-token-tracker/ai-token-tracker.js.map +1 -1
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js +23 -23
- package/dist/components/ai-tool-card-resolver/ai-tool-card-resolver.js.map +1 -1
- package/dist/components/ai-tool-indicator/ai-tool-indicator.js +3 -3
- package/dist/components/ai-tool-indicator/ai-tool-indicator.js.map +1 -1
- package/dist/components/ai-transform-slider/ai-transform-slider.js +1 -1
- package/dist/components/ai-translation-panel/ai-translation-panel.js +2 -2
- package/dist/components/ai-translation-panel/ai-translation-panel.js.map +1 -1
- package/dist/components/ai-usage-meter/ai-usage-meter.js +1 -1
- package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts +1 -11
- package/dist/components/ai-validation-checklist/ai-validation-checklist.d.ts.map +1 -1
- package/dist/components/ai-validation-checklist/ai-validation-checklist.js +133 -187
- package/dist/components/ai-validation-checklist/ai-validation-checklist.js.map +1 -1
- package/dist/components/ai-version-selector/ai-version-selector.d.ts +0 -4
- package/dist/components/ai-version-selector/ai-version-selector.d.ts.map +1 -1
- package/dist/components/ai-version-selector/ai-version-selector.js +189 -210
- package/dist/components/ai-version-selector/ai-version-selector.js.map +1 -1
- package/dist/components/ai-voice-panel/ai-voice-panel.js +28 -28
- package/dist/components/ai-voice-panel/ai-voice-panel.js.map +1 -1
- package/dist/components/ai-webhook-config/ai-webhook-config.d.ts +0 -17
- package/dist/components/ai-webhook-config/ai-webhook-config.d.ts.map +1 -1
- package/dist/components/ai-webhook-config/ai-webhook-config.js +281 -221
- package/dist/components/ai-webhook-config/ai-webhook-config.js.map +1 -1
- package/dist/components/ai-workflow-builder/ai-workflow-builder.js +2 -2
- package/dist/components/ai-workflow-builder/ai-workflow-builder.js.map +1 -1
- package/dist/components/bias-anchoring/bias-anchoring.js +1 -1
- package/dist/components/bias-authority/bias-authority.js +1 -1
- package/dist/components/bias-commitment/bias-commitment.js +1 -1
- package/dist/components/bias-reciprocity/bias-reciprocity.js +1 -1
- package/dist/components/bias-scarcity/bias-scarcity.js +1 -1
- package/dist/components/bias-social-proof/bias-social-proof.js +1 -1
- package/dist/components/cg-accordion/cg-accordion.d.ts.map +1 -1
- package/dist/components/cg-accordion/cg-accordion.js +51 -43
- package/dist/components/cg-accordion/cg-accordion.js.map +1 -1
- package/dist/components/cg-alert-dialog/cg-alert-dialog.js +18 -18
- package/dist/components/cg-alert-dialog/cg-alert-dialog.js.map +1 -1
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.d.ts.map +1 -1
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js +25 -21
- package/dist/components/cg-aspect-ratio/cg-aspect-ratio.js.map +1 -1
- package/dist/components/cg-autocomplete/cg-autocomplete.d.ts +1 -0
- package/dist/components/cg-autocomplete/cg-autocomplete.d.ts.map +1 -1
- package/dist/components/cg-autocomplete/cg-autocomplete.js +59 -43
- package/dist/components/cg-autocomplete/cg-autocomplete.js.map +1 -1
- package/dist/components/cg-avatar/cg-avatar.d.ts.map +1 -1
- package/dist/components/cg-avatar/cg-avatar.js +24 -24
- package/dist/components/cg-avatar/cg-avatar.js.map +1 -1
- package/dist/components/cg-avatar-group/cg-avatar-group.d.ts.map +1 -1
- package/dist/components/cg-avatar-group/cg-avatar-group.js +18 -12
- package/dist/components/cg-avatar-group/cg-avatar-group.js.map +1 -1
- package/dist/components/cg-badge/cg-badge.d.ts.map +1 -1
- package/dist/components/cg-badge/cg-badge.js +26 -20
- package/dist/components/cg-badge/cg-badge.js.map +1 -1
- package/dist/components/cg-badge-group/cg-badge-group.d.ts +0 -1
- package/dist/components/cg-badge-group/cg-badge-group.d.ts.map +1 -1
- package/dist/components/cg-badge-group/cg-badge-group.js +31 -29
- package/dist/components/cg-badge-group/cg-badge-group.js.map +1 -1
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js +21 -21
- package/dist/components/cg-breadcrumbs/cg-breadcrumbs.js.map +1 -1
- package/dist/components/cg-button/cg-button.d.ts +5 -71
- package/dist/components/cg-button/cg-button.d.ts.map +1 -1
- package/dist/components/cg-button/cg-button.js +63 -172
- package/dist/components/cg-button/cg-button.js.map +1 -1
- package/dist/components/cg-button-group/cg-button-group.d.ts +2 -0
- package/dist/components/cg-button-group/cg-button-group.d.ts.map +1 -1
- package/dist/components/cg-button-group/cg-button-group.js +43 -29
- package/dist/components/cg-button-group/cg-button-group.js.map +1 -1
- package/dist/components/cg-calendar/cg-calendar.d.ts +4 -0
- package/dist/components/cg-calendar/cg-calendar.d.ts.map +1 -1
- package/dist/components/cg-calendar/cg-calendar.js +28 -12
- package/dist/components/cg-calendar/cg-calendar.js.map +1 -1
- package/dist/components/cg-callout/cg-callout.d.ts.map +1 -1
- package/dist/components/cg-callout/cg-callout.js +49 -48
- package/dist/components/cg-callout/cg-callout.js.map +1 -1
- package/dist/components/cg-card/cg-card.d.ts +9 -22
- package/dist/components/cg-card/cg-card.d.ts.map +1 -1
- package/dist/components/cg-card/cg-card.js +28 -56
- package/dist/components/cg-card/cg-card.js.map +1 -1
- package/dist/components/cg-carousel/cg-carousel.d.ts.map +1 -1
- package/dist/components/cg-carousel/cg-carousel.js +19 -13
- package/dist/components/cg-carousel/cg-carousel.js.map +1 -1
- package/dist/components/cg-chart/cg-chart.d.ts.map +1 -1
- package/dist/components/cg-chart/cg-chart.js +63 -58
- package/dist/components/cg-chart/cg-chart.js.map +1 -1
- package/dist/components/cg-checkbox/cg-checkbox.d.ts +0 -6
- package/dist/components/cg-checkbox/cg-checkbox.d.ts.map +1 -1
- package/dist/components/cg-checkbox/cg-checkbox.js +51 -51
- package/dist/components/cg-checkbox/cg-checkbox.js.map +1 -1
- package/dist/components/cg-chip/cg-chip.js +31 -31
- package/dist/components/cg-chip/cg-chip.js.map +1 -1
- package/dist/components/cg-code-block/cg-code-block.d.ts.map +1 -1
- package/dist/components/cg-code-block/cg-code-block.js +36 -34
- package/dist/components/cg-code-block/cg-code-block.js.map +1 -1
- package/dist/components/cg-collapsible/cg-collapsible.d.ts.map +1 -1
- package/dist/components/cg-collapsible/cg-collapsible.js +23 -18
- package/dist/components/cg-collapsible/cg-collapsible.js.map +1 -1
- package/dist/components/cg-color-picker/cg-color-picker.d.ts +3 -0
- package/dist/components/cg-color-picker/cg-color-picker.d.ts.map +1 -1
- package/dist/components/cg-color-picker/cg-color-picker.js +189 -91
- package/dist/components/cg-color-picker/cg-color-picker.js.map +1 -1
- package/dist/components/cg-combobox/cg-combobox.d.ts.map +1 -1
- package/dist/components/cg-combobox/cg-combobox.js +13 -6
- package/dist/components/cg-combobox/cg-combobox.js.map +1 -1
- package/dist/components/cg-command/cg-command.d.ts.map +1 -1
- package/dist/components/cg-command/cg-command.js +52 -45
- package/dist/components/cg-command/cg-command.js.map +1 -1
- package/dist/components/cg-context-menu/cg-context-menu.js +1 -1
- package/dist/components/cg-date-picker/cg-date-picker.d.ts.map +1 -1
- package/dist/components/cg-date-picker/cg-date-picker.js +36 -34
- package/dist/components/cg-date-picker/cg-date-picker.js.map +1 -1
- package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts +2 -0
- package/dist/components/cg-date-range-picker/cg-date-range-picker.d.ts.map +1 -1
- package/dist/components/cg-date-range-picker/cg-date-range-picker.js +12 -8
- package/dist/components/cg-date-range-picker/cg-date-range-picker.js.map +1 -1
- package/dist/components/cg-date-time-picker/cg-date-time-picker.d.ts.map +1 -1
- package/dist/components/cg-date-time-picker/cg-date-time-picker.js +3 -1
- package/dist/components/cg-date-time-picker/cg-date-time-picker.js.map +1 -1
- package/dist/components/cg-drawer/cg-drawer.js +3 -3
- package/dist/components/cg-drawer/cg-drawer.js.map +1 -1
- package/dist/components/cg-dropdown/cg-dropdown.d.ts.map +1 -1
- package/dist/components/cg-dropdown/cg-dropdown.js +1 -2
- package/dist/components/cg-dropdown/cg-dropdown.js.map +1 -1
- package/dist/components/cg-empty-state/cg-empty-state.d.ts +3 -24
- package/dist/components/cg-empty-state/cg-empty-state.d.ts.map +1 -1
- package/dist/components/cg-empty-state/cg-empty-state.js +51 -74
- package/dist/components/cg-empty-state/cg-empty-state.js.map +1 -1
- package/dist/components/cg-file-input/cg-file-input.d.ts.map +1 -1
- package/dist/components/cg-file-input/cg-file-input.js +9 -10
- package/dist/components/cg-file-input/cg-file-input.js.map +1 -1
- package/dist/components/cg-focus-scope/cg-focus-scope.js +1 -1
- package/dist/components/cg-follow-up/cg-follow-up.d.ts.map +1 -1
- package/dist/components/cg-follow-up/cg-follow-up.js +6 -7
- package/dist/components/cg-follow-up/cg-follow-up.js.map +1 -1
- package/dist/components/cg-form/cg-form.js +17 -17
- package/dist/components/cg-form/cg-form.js.map +1 -1
- package/dist/components/cg-hover-card/cg-hover-card.d.ts +1 -0
- package/dist/components/cg-hover-card/cg-hover-card.d.ts.map +1 -1
- package/dist/components/cg-hover-card/cg-hover-card.js +37 -32
- package/dist/components/cg-hover-card/cg-hover-card.js.map +1 -1
- package/dist/components/cg-icon/cg-icon.d.ts.map +1 -1
- package/dist/components/cg-icon/cg-icon.js +44 -37
- package/dist/components/cg-icon/cg-icon.js.map +1 -1
- package/dist/components/cg-image/cg-image.js +2 -2
- package/dist/components/cg-image/cg-image.js.map +1 -1
- package/dist/components/cg-image-block/cg-image-block.js +3 -3
- package/dist/components/cg-image-block/cg-image-block.js.map +1 -1
- package/dist/components/cg-image-gallery/cg-image-gallery.js +20 -20
- package/dist/components/cg-image-gallery/cg-image-gallery.js.map +1 -1
- package/dist/components/cg-input/cg-input.js +3 -3
- package/dist/components/cg-input/cg-input.js.map +1 -1
- package/dist/components/cg-kbd/cg-kbd.d.ts.map +1 -1
- package/dist/components/cg-kbd/cg-kbd.js +26 -24
- package/dist/components/cg-kbd/cg-kbd.js.map +1 -1
- package/dist/components/cg-label/cg-label.d.ts +4 -1
- package/dist/components/cg-label/cg-label.d.ts.map +1 -1
- package/dist/components/cg-label/cg-label.js +44 -41
- package/dist/components/cg-label/cg-label.js.map +1 -1
- package/dist/components/cg-link/cg-link.js +23 -23
- package/dist/components/cg-link/cg-link.js.map +1 -1
- package/dist/components/cg-list/cg-list.js +5 -5
- package/dist/components/cg-list/cg-list.js.map +1 -1
- package/dist/components/cg-listbox/cg-listbox.d.ts.map +1 -1
- package/dist/components/cg-listbox/cg-listbox.js +46 -40
- package/dist/components/cg-listbox/cg-listbox.js.map +1 -1
- package/dist/components/cg-markdown/cg-markdown.d.ts +2 -0
- package/dist/components/cg-markdown/cg-markdown.d.ts.map +1 -1
- package/dist/components/cg-markdown/cg-markdown.js +171 -121
- package/dist/components/cg-markdown/cg-markdown.js.map +1 -1
- package/dist/components/cg-menubar/cg-menubar.d.ts +6 -0
- package/dist/components/cg-menubar/cg-menubar.d.ts.map +1 -1
- package/dist/components/cg-menubar/cg-menubar.js +59 -47
- package/dist/components/cg-menubar/cg-menubar.js.map +1 -1
- package/dist/components/cg-meter/cg-meter.d.ts.map +1 -1
- package/dist/components/cg-meter/cg-meter.js +76 -76
- package/dist/components/cg-meter/cg-meter.js.map +1 -1
- package/dist/components/cg-metric-card/cg-metric-card.d.ts.map +1 -1
- package/dist/components/cg-metric-card/cg-metric-card.js +65 -68
- package/dist/components/cg-metric-card/cg-metric-card.js.map +1 -1
- package/dist/components/cg-modal/cg-modal.d.ts +3 -0
- package/dist/components/cg-modal/cg-modal.d.ts.map +1 -1
- package/dist/components/cg-modal/cg-modal.js +82 -83
- package/dist/components/cg-modal/cg-modal.js.map +1 -1
- package/dist/components/cg-navbar/cg-navbar.d.ts +1 -1
- package/dist/components/cg-navbar/cg-navbar.d.ts.map +1 -1
- package/dist/components/cg-navbar/cg-navbar.js +64 -55
- package/dist/components/cg-navbar/cg-navbar.js.map +1 -1
- package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts +3 -0
- package/dist/components/cg-navigation-menu/cg-navigation-menu.d.ts.map +1 -1
- package/dist/components/cg-navigation-menu/cg-navigation-menu.js +38 -26
- package/dist/components/cg-navigation-menu/cg-navigation-menu.js.map +1 -1
- package/dist/components/cg-number-input/cg-number-input.d.ts +1 -0
- package/dist/components/cg-number-input/cg-number-input.d.ts.map +1 -1
- package/dist/components/cg-number-input/cg-number-input.js +90 -77
- package/dist/components/cg-number-input/cg-number-input.js.map +1 -1
- package/dist/components/cg-otp-input/cg-otp-input.d.ts.map +1 -1
- package/dist/components/cg-otp-input/cg-otp-input.js +70 -60
- package/dist/components/cg-otp-input/cg-otp-input.js.map +1 -1
- package/dist/components/cg-pagination/cg-pagination.d.ts +2 -0
- package/dist/components/cg-pagination/cg-pagination.d.ts.map +1 -1
- package/dist/components/cg-pagination/cg-pagination.js +50 -49
- package/dist/components/cg-pagination/cg-pagination.js.map +1 -1
- package/dist/components/cg-password-input/cg-password-input.d.ts.map +1 -1
- package/dist/components/cg-password-input/cg-password-input.js +42 -34
- package/dist/components/cg-password-input/cg-password-input.js.map +1 -1
- package/dist/components/cg-phone-input/cg-phone-input.d.ts.map +1 -1
- package/dist/components/cg-phone-input/cg-phone-input.js +18 -14
- package/dist/components/cg-phone-input/cg-phone-input.js.map +1 -1
- package/dist/components/cg-popover/cg-popover.d.ts +12 -2
- package/dist/components/cg-popover/cg-popover.d.ts.map +1 -1
- package/dist/components/cg-popover/cg-popover.js +90 -63
- package/dist/components/cg-popover/cg-popover.js.map +1 -1
- package/dist/components/cg-portal/cg-portal.d.ts.map +1 -1
- package/dist/components/cg-portal/cg-portal.js +42 -41
- package/dist/components/cg-portal/cg-portal.js.map +1 -1
- package/dist/components/cg-progress-bar/cg-progress-bar.d.ts.map +1 -1
- package/dist/components/cg-progress-bar/cg-progress-bar.js +25 -25
- package/dist/components/cg-progress-bar/cg-progress-bar.js.map +1 -1
- package/dist/components/cg-radio/cg-radio.d.ts +10 -0
- package/dist/components/cg-radio/cg-radio.d.ts.map +1 -1
- package/dist/components/cg-radio/cg-radio.js +59 -48
- package/dist/components/cg-radio/cg-radio.js.map +1 -1
- package/dist/components/cg-radio-group/cg-radio-group.d.ts +6 -0
- package/dist/components/cg-radio-group/cg-radio-group.d.ts.map +1 -1
- package/dist/components/cg-radio-group/cg-radio-group.js +50 -37
- package/dist/components/cg-radio-group/cg-radio-group.js.map +1 -1
- package/dist/components/cg-rating/cg-rating.d.ts.map +1 -1
- package/dist/components/cg-rating/cg-rating.js +56 -54
- package/dist/components/cg-rating/cg-rating.js.map +1 -1
- package/dist/components/cg-resizable/cg-resizable.d.ts +4 -1
- package/dist/components/cg-resizable/cg-resizable.d.ts.map +1 -1
- package/dist/components/cg-resizable/cg-resizable.js +45 -35
- package/dist/components/cg-resizable/cg-resizable.js.map +1 -1
- package/dist/components/cg-scroll-area/cg-scroll-area.d.ts +8 -0
- package/dist/components/cg-scroll-area/cg-scroll-area.d.ts.map +1 -1
- package/dist/components/cg-scroll-area/cg-scroll-area.js +64 -21
- package/dist/components/cg-scroll-area/cg-scroll-area.js.map +1 -1
- package/dist/components/cg-segmented-control/cg-segmented-control.d.ts +4 -0
- package/dist/components/cg-segmented-control/cg-segmented-control.d.ts.map +1 -1
- package/dist/components/cg-segmented-control/cg-segmented-control.js +75 -39
- package/dist/components/cg-segmented-control/cg-segmented-control.js.map +1 -1
- package/dist/components/cg-select/cg-select.d.ts +4 -2
- package/dist/components/cg-select/cg-select.d.ts.map +1 -1
- package/dist/components/cg-select/cg-select.js +96 -58
- package/dist/components/cg-select/cg-select.js.map +1 -1
- package/dist/components/cg-separator/cg-separator.d.ts +1 -2
- package/dist/components/cg-separator/cg-separator.d.ts.map +1 -1
- package/dist/components/cg-separator/cg-separator.js +5 -8
- package/dist/components/cg-separator/cg-separator.js.map +1 -1
- package/dist/components/cg-sheet/cg-sheet.d.ts +4 -0
- package/dist/components/cg-sheet/cg-sheet.d.ts.map +1 -1
- package/dist/components/cg-sheet/cg-sheet.js +80 -43
- package/dist/components/cg-sheet/cg-sheet.js.map +1 -1
- package/dist/components/cg-sidebar/cg-sidebar.d.ts.map +1 -1
- package/dist/components/cg-sidebar/cg-sidebar.js +82 -19
- package/dist/components/cg-sidebar/cg-sidebar.js.map +1 -1
- package/dist/components/cg-skeleton/cg-skeleton.d.ts +7 -1
- package/dist/components/cg-skeleton/cg-skeleton.d.ts.map +1 -1
- package/dist/components/cg-skeleton/cg-skeleton.js +61 -63
- package/dist/components/cg-skeleton/cg-skeleton.js.map +1 -1
- package/dist/components/cg-slider/cg-slider.d.ts.map +1 -1
- package/dist/components/cg-slider/cg-slider.js +80 -73
- package/dist/components/cg-slider/cg-slider.js.map +1 -1
- package/dist/components/cg-spinner/cg-spinner.d.ts.map +1 -1
- package/dist/components/cg-spinner/cg-spinner.js +10 -19
- package/dist/components/cg-spinner/cg-spinner.js.map +1 -1
- package/dist/components/cg-split-button/cg-split-button.d.ts.map +1 -1
- package/dist/components/cg-split-button/cg-split-button.js +64 -50
- package/dist/components/cg-split-button/cg-split-button.js.map +1 -1
- package/dist/components/cg-stack/cg-stack.js +1 -1
- package/dist/components/cg-steps/cg-steps.js +1 -1
- package/dist/components/cg-switch/cg-switch.d.ts +3 -0
- package/dist/components/cg-switch/cg-switch.d.ts.map +1 -1
- package/dist/components/cg-switch/cg-switch.js +39 -47
- package/dist/components/cg-switch/cg-switch.js.map +1 -1
- package/dist/components/cg-table/cg-table.d.ts +0 -7
- package/dist/components/cg-table/cg-table.d.ts.map +1 -1
- package/dist/components/cg-table/cg-table.js +50 -47
- package/dist/components/cg-table/cg-table.js.map +1 -1
- package/dist/components/cg-tabs/cg-tabs.js +1 -1
- package/dist/components/cg-tag-input/cg-tag-input.js +1 -1
- package/dist/components/cg-text/cg-text.js +1 -1
- package/dist/components/cg-textarea/cg-textarea.js +1 -1
- package/dist/components/cg-time-picker/cg-time-picker.js +1 -1
- package/dist/components/cg-toaster/cg-toaster.js +3 -3
- package/dist/components/cg-toaster/cg-toaster.js.map +1 -1
- package/dist/components/cg-toggle/cg-toggle.js +1 -1
- package/dist/components/cg-toggle-group/cg-toggle-group.js +1 -1
- package/dist/components/cg-tree-view/cg-tree-view.js +1 -1
- package/dist/foundation.d.ts +0 -16
- package/dist/foundation.d.ts.map +1 -1
- package/dist/foundation.js +174 -206
- package/dist/foundation.js.map +1 -1
- package/dist/index.d.ts +1 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +100 -132
- package/dist/index.js.map +1 -1
- package/dist/utils/focus-trap.d.ts +19 -2
- package/dist/utils/focus-trap.d.ts.map +1 -1
- package/package.json +6 -810
- package/dist/chunks/focus-trap-BdRNhSPD.js +0 -53
- package/dist/chunks/focus-trap-BdRNhSPD.js.map +0 -1
- package/dist/components/cg-app-shell/cg-app-shell.d.ts +0 -54
- package/dist/components/cg-app-shell/cg-app-shell.d.ts.map +0 -1
- package/dist/components/cg-app-shell/cg-app-shell.js +0 -135
- package/dist/components/cg-app-shell/cg-app-shell.js.map +0 -1
- package/dist/components/cg-auth-shell/cg-auth-shell.d.ts +0 -61
- package/dist/components/cg-auth-shell/cg-auth-shell.d.ts.map +0 -1
- package/dist/components/cg-auth-shell/cg-auth-shell.js +0 -163
- package/dist/components/cg-auth-shell/cg-auth-shell.js.map +0 -1
- package/dist/components/cg-definition-list/cg-definition-list.d.ts +0 -99
- package/dist/components/cg-definition-list/cg-definition-list.d.ts.map +0 -1
- package/dist/components/cg-definition-list/cg-definition-list.js +0 -332
- package/dist/components/cg-definition-list/cg-definition-list.js.map +0 -1
- package/dist/components/cg-draggable/cg-draggable.d.ts +0 -53
- package/dist/components/cg-draggable/cg-draggable.d.ts.map +0 -1
- package/dist/components/cg-draggable/cg-draggable.js +0 -136
- package/dist/components/cg-draggable/cg-draggable.js.map +0 -1
- package/dist/components/cg-droppable/cg-droppable.d.ts +0 -57
- package/dist/components/cg-droppable/cg-droppable.d.ts.map +0 -1
- package/dist/components/cg-droppable/cg-droppable.js +0 -114
- package/dist/components/cg-droppable/cg-droppable.js.map +0 -1
- package/dist/components/cg-filter-bar/cg-filter-bar.d.ts +0 -50
- package/dist/components/cg-filter-bar/cg-filter-bar.d.ts.map +0 -1
- package/dist/components/cg-filter-bar/cg-filter-bar.js +0 -115
- package/dist/components/cg-filter-bar/cg-filter-bar.js.map +0 -1
- package/dist/components/cg-filter-chip/cg-filter-chip.d.ts +0 -55
- package/dist/components/cg-filter-chip/cg-filter-chip.d.ts.map +0 -1
- package/dist/components/cg-filter-chip/cg-filter-chip.js +0 -213
- package/dist/components/cg-filter-chip/cg-filter-chip.js.map +0 -1
- package/dist/components/cg-kanban/cg-kanban.d.ts +0 -44
- package/dist/components/cg-kanban/cg-kanban.d.ts.map +0 -1
- package/dist/components/cg-kanban/cg-kanban.js +0 -86
- package/dist/components/cg-kanban/cg-kanban.js.map +0 -1
- package/dist/components/cg-kanban-column/cg-kanban-column.d.ts +0 -58
- package/dist/components/cg-kanban-column/cg-kanban-column.d.ts.map +0 -1
- package/dist/components/cg-kanban-column/cg-kanban-column.js +0 -144
- package/dist/components/cg-kanban-column/cg-kanban-column.js.map +0 -1
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts +0 -77
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.d.ts.map +0 -1
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js +0 -245
- package/dist/components/cg-mfa-prompt/cg-mfa-prompt.js.map +0 -1
- package/dist/components/cg-search-input/cg-search-input.d.ts +0 -62
- package/dist/components/cg-search-input/cg-search-input.d.ts.map +0 -1
- package/dist/components/cg-search-input/cg-search-input.js +0 -106
- package/dist/components/cg-search-input/cg-search-input.js.map +0 -1
- package/dist/components/cg-sortable/cg-sortable.d.ts +0 -72
- package/dist/components/cg-sortable/cg-sortable.d.ts.map +0 -1
- package/dist/components/cg-sortable/cg-sortable.js +0 -177
- package/dist/components/cg-sortable/cg-sortable.js.map +0 -1
- package/dist/components/cg-theme/cg-theme.d.ts +0 -82
- package/dist/components/cg-theme/cg-theme.d.ts.map +0 -1
- package/dist/components/cg-theme/cg-theme.js +0 -91
- package/dist/components/cg-theme/cg-theme.js.map +0 -1
- package/dist/components/cg-theme-editor/cg-theme-editor.d.ts +0 -98
- package/dist/components/cg-theme-editor/cg-theme-editor.d.ts.map +0 -1
- package/dist/components/cg-theme-editor/cg-theme-editor.js +0 -341
- package/dist/components/cg-theme-editor/cg-theme-editor.js.map +0 -1
- package/dist/components/cg-timeline/cg-timeline.d.ts +0 -70
- package/dist/components/cg-timeline/cg-timeline.d.ts.map +0 -1
- package/dist/components/cg-timeline/cg-timeline.js +0 -131
- package/dist/components/cg-timeline/cg-timeline.js.map +0 -1
- package/dist/components/cg-timeline-event/cg-timeline-event.d.ts +0 -59
- package/dist/components/cg-timeline-event/cg-timeline-event.d.ts.map +0 -1
- package/dist/components/cg-timeline-event/cg-timeline-event.js +0 -190
- package/dist/components/cg-timeline-event/cg-timeline-event.js.map +0 -1
- package/dist/utils/drag-manager.d.ts +0 -40
- package/dist/utils/drag-manager.d.ts.map +0 -1
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
import { css as p, LitElement as u, nothing as g, html as c } from "lit";
|
|
2
|
-
import { property as r, state as h, customElement as f } from "lit/decorators.js";
|
|
3
|
-
import { h as b, r as m } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
-
import "../cg-otp-input/cg-otp-input.js";
|
|
5
|
-
var v = Object.defineProperty, y = Object.getOwnPropertyDescriptor, i = (e, s, n, a) => {
|
|
6
|
-
for (var o = a > 1 ? void 0 : a ? y(s, n) : s, d = e.length - 1, l; d >= 0; d--)
|
|
7
|
-
(l = e[d]) && (o = (a ? l(s, n, o) : l(o)) || o);
|
|
8
|
-
return a && o && v(s, n, o), o;
|
|
9
|
-
};
|
|
10
|
-
let t = class extends u {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments), this.factor = "totp", this.length = 6, this.destination = "", this.resendCooldown = 30, this.disabled = !1, this.resendLabel = "Resend code", this.triggerLabel = "Use security key", this._code = "", this._resendRemaining = 0, this._onCodeChange = (e) => {
|
|
13
|
-
const s = e.detail;
|
|
14
|
-
this._code = s?.value ?? "";
|
|
15
|
-
}, this._onCodeComplete = (e) => {
|
|
16
|
-
const n = e.detail?.value ?? this._code;
|
|
17
|
-
this._submit(n);
|
|
18
|
-
}, this._onResend = () => {
|
|
19
|
-
this.disabled || this._resendRemaining > 0 || (this.dispatchEvent(new CustomEvent("cg-mfa-resend", {
|
|
20
|
-
detail: { factor: this.factor },
|
|
21
|
-
bubbles: !0,
|
|
22
|
-
composed: !0
|
|
23
|
-
})), this.startCooldown());
|
|
24
|
-
}, this._onTrigger = () => {
|
|
25
|
-
this.disabled || this.dispatchEvent(new CustomEvent("cg-mfa-trigger", {
|
|
26
|
-
detail: { factor: this.factor },
|
|
27
|
-
bubbles: !0,
|
|
28
|
-
composed: !0
|
|
29
|
-
}));
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
connectedCallback() {
|
|
33
|
-
super.connectedCallback(), this.resendCooldown > 0 && (this._resendRemaining = this.resendCooldown, this._tickResend());
|
|
34
|
-
}
|
|
35
|
-
disconnectedCallback() {
|
|
36
|
-
super.disconnectedCallback(), this._resendTimer !== void 0 && clearInterval(this._resendTimer);
|
|
37
|
-
}
|
|
38
|
-
_tickResend() {
|
|
39
|
-
this._resendTimer !== void 0 && clearInterval(this._resendTimer), this._resendTimer = window.setInterval(() => {
|
|
40
|
-
if (this._resendRemaining <= 0) {
|
|
41
|
-
this._resendTimer !== void 0 && clearInterval(this._resendTimer), this._resendTimer = void 0;
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
this._resendRemaining -= 1;
|
|
45
|
-
}, 1e3);
|
|
46
|
-
}
|
|
47
|
-
/** Restart the resend cooldown. Call after the consumer issues a new code. */
|
|
48
|
-
startCooldown(e = this.resendCooldown) {
|
|
49
|
-
this._resendRemaining = e, this._tickResend();
|
|
50
|
-
}
|
|
51
|
-
_submit(e) {
|
|
52
|
-
this.disabled || this.factor !== "webauthn" && e.length !== this.length || this.dispatchEvent(new CustomEvent("cg-mfa-submit", {
|
|
53
|
-
detail: { factor: this.factor, code: e },
|
|
54
|
-
bubbles: !0,
|
|
55
|
-
composed: !0
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
58
|
-
_factorCopy() {
|
|
59
|
-
switch (this.factor) {
|
|
60
|
-
case "totp":
|
|
61
|
-
return {
|
|
62
|
-
title: "Two-factor verification",
|
|
63
|
-
subtitle: "Enter the 6-digit code from your authenticator app."
|
|
64
|
-
};
|
|
65
|
-
case "sms":
|
|
66
|
-
return {
|
|
67
|
-
title: "Verify your phone",
|
|
68
|
-
subtitle: this.destination ? `We sent a code to ${this.destination}.` : "Enter the code we just sent you."
|
|
69
|
-
};
|
|
70
|
-
case "email":
|
|
71
|
-
return {
|
|
72
|
-
title: "Verify your email",
|
|
73
|
-
subtitle: this.destination ? `We sent a code to ${this.destination}.` : "Enter the code from your inbox."
|
|
74
|
-
};
|
|
75
|
-
case "webauthn":
|
|
76
|
-
return {
|
|
77
|
-
title: "Verify with security key",
|
|
78
|
-
subtitle: "Insert your security key or use a registered passkey."
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
render() {
|
|
83
|
-
const e = this._factorCopy(), s = this.factor !== "webauthn", n = this.disabled || this._resendRemaining > 0, a = this._resendRemaining > 0 ? `Resend in ${this._resendRemaining}s` : this.resendLabel;
|
|
84
|
-
return c`
|
|
85
|
-
<div class="wrapper">
|
|
86
|
-
<div class="heading">
|
|
87
|
-
<span class="title">${e.title}</span>
|
|
88
|
-
<span class="subtitle">
|
|
89
|
-
${this.destination && (this.factor === "sms" || this.factor === "email") ? c`${e.subtitle.split(this.destination)[0] ?? ""}<span class="destination">${this.destination}</span>${e.subtitle.split(this.destination)[1] ?? ""}` : e.subtitle}
|
|
90
|
-
</span>
|
|
91
|
-
</div>
|
|
92
|
-
|
|
93
|
-
${s ? c`
|
|
94
|
-
<div class="input-region">
|
|
95
|
-
<cg-otp-input
|
|
96
|
-
.length=${this.length}
|
|
97
|
-
?disabled=${this.disabled}
|
|
98
|
-
@cg-input=${this._onCodeChange}
|
|
99
|
-
@cg-complete=${this._onCodeComplete}
|
|
100
|
-
></cg-otp-input>
|
|
101
|
-
</div>
|
|
102
|
-
<div class="resend-row">
|
|
103
|
-
<span>Didn't get it?</span>
|
|
104
|
-
<button
|
|
105
|
-
class="resend"
|
|
106
|
-
type="button"
|
|
107
|
-
?disabled=${n}
|
|
108
|
-
@click=${this._onResend}
|
|
109
|
-
>${a}</button>
|
|
110
|
-
</div>
|
|
111
|
-
` : c`
|
|
112
|
-
<div class="trigger">
|
|
113
|
-
<button
|
|
114
|
-
class="resend"
|
|
115
|
-
type="button"
|
|
116
|
-
?disabled=${this.disabled}
|
|
117
|
-
@click=${this._onTrigger}
|
|
118
|
-
>${this.triggerLabel}</button>
|
|
119
|
-
</div>
|
|
120
|
-
`}
|
|
121
|
-
|
|
122
|
-
<div class="footer-slot">
|
|
123
|
-
<slot name="footer"></slot>
|
|
124
|
-
</div>
|
|
125
|
-
</div>
|
|
126
|
-
${g}
|
|
127
|
-
`;
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
t.styles = [b, m, p`
|
|
131
|
-
:host { display: block; }
|
|
132
|
-
|
|
133
|
-
.wrapper {
|
|
134
|
-
display: flex;
|
|
135
|
-
flex-direction: column;
|
|
136
|
-
gap: var(--cg-spacing-16);
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.heading {
|
|
140
|
-
display: flex;
|
|
141
|
-
flex-direction: column;
|
|
142
|
-
gap: var(--cg-spacing-4);
|
|
143
|
-
text-align: center;
|
|
144
|
-
}
|
|
145
|
-
.title {
|
|
146
|
-
font-size: var(--cg-font-size-base);
|
|
147
|
-
font-weight: var(--cg-font-weight-semibold);
|
|
148
|
-
color: var(--cg-color-surface-base-text);
|
|
149
|
-
}
|
|
150
|
-
.subtitle {
|
|
151
|
-
font-size: var(--cg-font-size-sm);
|
|
152
|
-
color: var(--cg-color-surface-container-outlined);
|
|
153
|
-
line-height: var(--cg-line-height-snug);
|
|
154
|
-
}
|
|
155
|
-
.destination {
|
|
156
|
-
font-family: var(--cg-font-family-mono, ui-monospace, monospace);
|
|
157
|
-
color: var(--cg-color-surface-base-text);
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
.input-region {
|
|
161
|
-
display: flex;
|
|
162
|
-
justify-content: center;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
.resend-row {
|
|
166
|
-
display: flex;
|
|
167
|
-
align-items: center;
|
|
168
|
-
justify-content: center;
|
|
169
|
-
gap: var(--cg-spacing-8);
|
|
170
|
-
font-size: var(--cg-font-size-xs);
|
|
171
|
-
color: var(--cg-color-surface-container-outlined);
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
.resend {
|
|
175
|
-
background: transparent;
|
|
176
|
-
border: 0;
|
|
177
|
-
color: var(--cg-color-action-primary-text-default);
|
|
178
|
-
font: inherit;
|
|
179
|
-
font-weight: var(--cg-font-weight-medium);
|
|
180
|
-
cursor: pointer;
|
|
181
|
-
padding: var(--cg-spacing-4) var(--cg-spacing-6);
|
|
182
|
-
border-radius: var(--cg-border-radius-50);
|
|
183
|
-
}
|
|
184
|
-
.resend:disabled {
|
|
185
|
-
color: var(--cg-color-surface-container-outlined);
|
|
186
|
-
cursor: not-allowed;
|
|
187
|
-
}
|
|
188
|
-
.resend:hover:not(:disabled) {
|
|
189
|
-
background: var(--cg-color-action-tertiary-background-hover);
|
|
190
|
-
}
|
|
191
|
-
.resend:focus-visible {
|
|
192
|
-
outline: none;
|
|
193
|
-
box-shadow: 0 0 0 var(--cg-spacing-2) var(--cg-color-focus-ring);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
.trigger {
|
|
197
|
-
display: flex;
|
|
198
|
-
justify-content: center;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
.footer-slot {
|
|
202
|
-
display: flex;
|
|
203
|
-
flex-direction: column;
|
|
204
|
-
align-items: center;
|
|
205
|
-
gap: var(--cg-spacing-4);
|
|
206
|
-
font-size: var(--cg-font-size-xs);
|
|
207
|
-
}
|
|
208
|
-
.footer-slot:empty { display: none; }
|
|
209
|
-
|
|
210
|
-
:host([disabled]) .wrapper { opacity: 0.6; pointer-events: none; }
|
|
211
|
-
`];
|
|
212
|
-
i([
|
|
213
|
-
r({ reflect: !0 })
|
|
214
|
-
], t.prototype, "factor", 2);
|
|
215
|
-
i([
|
|
216
|
-
r({ type: Number })
|
|
217
|
-
], t.prototype, "length", 2);
|
|
218
|
-
i([
|
|
219
|
-
r()
|
|
220
|
-
], t.prototype, "destination", 2);
|
|
221
|
-
i([
|
|
222
|
-
r({ type: Number, attribute: "resend-cooldown" })
|
|
223
|
-
], t.prototype, "resendCooldown", 2);
|
|
224
|
-
i([
|
|
225
|
-
r({ type: Boolean, reflect: !0 })
|
|
226
|
-
], t.prototype, "disabled", 2);
|
|
227
|
-
i([
|
|
228
|
-
r({ attribute: "resend-label" })
|
|
229
|
-
], t.prototype, "resendLabel", 2);
|
|
230
|
-
i([
|
|
231
|
-
r({ attribute: "trigger-label" })
|
|
232
|
-
], t.prototype, "triggerLabel", 2);
|
|
233
|
-
i([
|
|
234
|
-
h()
|
|
235
|
-
], t.prototype, "_code", 2);
|
|
236
|
-
i([
|
|
237
|
-
h()
|
|
238
|
-
], t.prototype, "_resendRemaining", 2);
|
|
239
|
-
t = i([
|
|
240
|
-
f("cg-mfa-prompt")
|
|
241
|
-
], t);
|
|
242
|
-
export {
|
|
243
|
-
t as CgMfaPrompt
|
|
244
|
-
};
|
|
245
|
-
//# sourceMappingURL=cg-mfa-prompt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cg-mfa-prompt.js","sources":["../../../src/components/cg-mfa-prompt/cg-mfa-prompt.ts"],"sourcesContent":["import { LitElement, html, css, nothing } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\nimport '../cg-otp-input/cg-otp-input.js';\n\n/**\n * @element cg-mfa-prompt\n * Multi-factor authentication challenge UI. Shows the current factor\n * (TOTP, SMS, email, WebAuthn), a code input where applicable, and a\n * resend control with a token-driven cooldown timer. Emits `cg-mfa-submit`\n * when the user submits a code.\n *\n * The component is form-aware via cg-otp-input — pressing Enter inside\n * the OTP cells, or auto-submit when the code reaches the configured\n * length, both fire `cg-mfa-submit` with the entered value.\n *\n * @example TOTP challenge\n * ```html\n * <cg-mfa-prompt\n * factor=\"totp\"\n * length=\"6\"\n * .resendCooldown=${30}\n * @cg-mfa-submit=${onSubmit}\n * @cg-mfa-resend=${onResend}\n * ></cg-mfa-prompt>\n * ```\n *\n * @example SMS with destination hint\n * ```html\n * <cg-mfa-prompt factor=\"sms\" destination=\"+61 4** *** 219\"></cg-mfa-prompt>\n * ```\n *\n * @example WebAuthn (no code input — just a re-prompt button)\n * ```html\n * <cg-mfa-prompt factor=\"webauthn\" @cg-mfa-trigger=${onWebAuthn}></cg-mfa-prompt>\n * ```\n *\n * @slot footer - Slot for \"Use a backup code\" / \"Try another method\" links.\n *\n * @fires {CustomEvent<{factor: string, code: string}>} cg-mfa-submit - Code submitted (auto or explicit)\n * @fires {CustomEvent<{factor: string}>} cg-mfa-resend - Resend requested (after cooldown)\n * @fires {CustomEvent<{factor: string}>} cg-mfa-trigger - Trigger requested (factors that don't take a code, e.g. WebAuthn)\n */\n@customElement('cg-mfa-prompt')\nexport class CgMfaPrompt extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n :host { display: block; }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--cg-spacing-16);\n }\n\n .heading {\n display: flex;\n flex-direction: column;\n gap: var(--cg-spacing-4);\n text-align: center;\n }\n .title {\n font-size: var(--cg-font-size-base);\n font-weight: var(--cg-font-weight-semibold);\n color: var(--cg-color-surface-base-text);\n }\n .subtitle {\n font-size: var(--cg-font-size-sm);\n color: var(--cg-color-surface-container-outlined);\n line-height: var(--cg-line-height-snug);\n }\n .destination {\n font-family: var(--cg-font-family-mono, ui-monospace, monospace);\n color: var(--cg-color-surface-base-text);\n }\n\n .input-region {\n display: flex;\n justify-content: center;\n }\n\n .resend-row {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--cg-spacing-8);\n font-size: var(--cg-font-size-xs);\n color: var(--cg-color-surface-container-outlined);\n }\n\n .resend {\n background: transparent;\n border: 0;\n color: var(--cg-color-action-primary-text-default);\n font: inherit;\n font-weight: var(--cg-font-weight-medium);\n cursor: pointer;\n padding: var(--cg-spacing-4) var(--cg-spacing-6);\n border-radius: var(--cg-border-radius-50);\n }\n .resend:disabled {\n color: var(--cg-color-surface-container-outlined);\n cursor: not-allowed;\n }\n .resend:hover:not(:disabled) {\n background: var(--cg-color-action-tertiary-background-hover);\n }\n .resend:focus-visible {\n outline: none;\n box-shadow: 0 0 0 var(--cg-spacing-2) var(--cg-color-focus-ring);\n }\n\n .trigger {\n display: flex;\n justify-content: center;\n }\n\n .footer-slot {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--cg-spacing-4);\n font-size: var(--cg-font-size-xs);\n }\n .footer-slot:empty { display: none; }\n\n :host([disabled]) .wrapper { opacity: 0.6; pointer-events: none; }\n `];\n\n /** Active factor. Drives the visible copy + which input renders. */\n @property({ reflect: true }) factor: 'totp' | 'sms' | 'email' | 'webauthn' = 'totp';\n\n /** OTP code length. 6 by default; some providers use 4 or 8. */\n @property({ type: Number }) length = 6;\n\n /** Where the code was sent (e.g. masked phone or email). Decorative. */\n @property() destination = '';\n\n /** Cooldown in seconds before the resend button reactivates after a click. */\n @property({ type: Number, attribute: 'resend-cooldown' }) resendCooldown = 30;\n\n /** Disable the entire prompt (resending + submitting). */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Override the resend label — e.g. \"Send new code\" vs \"Resend\". */\n @property({ attribute: 'resend-label' }) resendLabel = 'Resend code';\n\n /** Override the WebAuthn trigger label. */\n @property({ attribute: 'trigger-label' }) triggerLabel = 'Use security key';\n\n @state() private _code = '';\n @state() private _resendRemaining = 0;\n\n private _resendTimer: number | undefined;\n\n override connectedCallback(): void {\n super.connectedCallback();\n if (this.resendCooldown > 0) {\n this._resendRemaining = this.resendCooldown;\n this._tickResend();\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n if (this._resendTimer !== undefined) clearInterval(this._resendTimer);\n }\n\n private _tickResend(): void {\n if (this._resendTimer !== undefined) clearInterval(this._resendTimer);\n this._resendTimer = window.setInterval(() => {\n if (this._resendRemaining <= 0) {\n if (this._resendTimer !== undefined) clearInterval(this._resendTimer);\n this._resendTimer = undefined;\n return;\n }\n this._resendRemaining -= 1;\n }, 1000);\n }\n\n /** Restart the resend cooldown. Call after the consumer issues a new code. */\n startCooldown(seconds: number = this.resendCooldown): void {\n this._resendRemaining = seconds;\n this._tickResend();\n }\n\n private _onCodeChange = (e: Event): void => {\n const detail = (e as CustomEvent<{ value: string }>).detail;\n this._code = detail?.value ?? '';\n };\n\n private _onCodeComplete = (e: Event): void => {\n const detail = (e as CustomEvent<{ value: string }>).detail;\n const code = detail?.value ?? this._code;\n this._submit(code);\n };\n\n private _submit(code: string): void {\n if (this.disabled) return;\n if (this.factor !== 'webauthn' && code.length !== this.length) return;\n this.dispatchEvent(new CustomEvent('cg-mfa-submit', {\n detail: { factor: this.factor, code },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _onResend = (): void => {\n if (this.disabled || this._resendRemaining > 0) return;\n this.dispatchEvent(new CustomEvent('cg-mfa-resend', {\n detail: { factor: this.factor },\n bubbles: true,\n composed: true,\n }));\n this.startCooldown();\n };\n\n private _onTrigger = (): void => {\n if (this.disabled) return;\n this.dispatchEvent(new CustomEvent('cg-mfa-trigger', {\n detail: { factor: this.factor },\n bubbles: true,\n composed: true,\n }));\n };\n\n private _factorCopy(): { title: string; subtitle: string } {\n switch (this.factor) {\n case 'totp':\n return {\n title: 'Two-factor verification',\n subtitle: 'Enter the 6-digit code from your authenticator app.',\n };\n case 'sms':\n return {\n title: 'Verify your phone',\n subtitle: this.destination\n ? `We sent a code to ${this.destination}.`\n : 'Enter the code we just sent you.',\n };\n case 'email':\n return {\n title: 'Verify your email',\n subtitle: this.destination\n ? `We sent a code to ${this.destination}.`\n : 'Enter the code from your inbox.',\n };\n case 'webauthn':\n return {\n title: 'Verify with security key',\n subtitle: 'Insert your security key or use a registered passkey.',\n };\n }\n }\n\n override render() {\n const copy = this._factorCopy();\n const showCodeInput = this.factor !== 'webauthn';\n const resendDisabled = this.disabled || this._resendRemaining > 0;\n const resendLabel =\n this._resendRemaining > 0\n ? `Resend in ${this._resendRemaining}s`\n : this.resendLabel;\n\n return html`\n <div class=\"wrapper\">\n <div class=\"heading\">\n <span class=\"title\">${copy.title}</span>\n <span class=\"subtitle\">\n ${this.destination && (this.factor === 'sms' || this.factor === 'email')\n ? html`${copy.subtitle.split(this.destination)[0] ?? ''}<span class=\"destination\">${this.destination}</span>${copy.subtitle.split(this.destination)[1] ?? ''}`\n : copy.subtitle}\n </span>\n </div>\n\n ${showCodeInput\n ? html`\n <div class=\"input-region\">\n <cg-otp-input\n .length=${this.length}\n ?disabled=${this.disabled}\n @cg-input=${this._onCodeChange}\n @cg-complete=${this._onCodeComplete}\n ></cg-otp-input>\n </div>\n <div class=\"resend-row\">\n <span>Didn't get it?</span>\n <button\n class=\"resend\"\n type=\"button\"\n ?disabled=${resendDisabled}\n @click=${this._onResend}\n >${resendLabel}</button>\n </div>\n `\n : html`\n <div class=\"trigger\">\n <button\n class=\"resend\"\n type=\"button\"\n ?disabled=${this.disabled}\n @click=${this._onTrigger}\n >${this.triggerLabel}</button>\n </div>\n `}\n\n <div class=\"footer-slot\">\n <slot name=\"footer\"></slot>\n </div>\n </div>\n ${nothing}\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-mfa-prompt': CgMfaPrompt;\n }\n}\n"],"names":["CgMfaPrompt","LitElement","detail","code","seconds","copy","showCodeInput","resendDisabled","resendLabel","html","nothing","hostBlock","reducedMotion","css","__decorateClass","property","state","customElement"],"mappings":"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"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
/**
|
|
3
|
-
* @element cg-search-input
|
|
4
|
-
* Search input — wraps `<cg-input>` with a leading search icon, clearable
|
|
5
|
-
* trailing button, debounced search event, and a `role="search"` landmark.
|
|
6
|
-
* Use this anywhere a user filters/queries a collection.
|
|
7
|
-
*
|
|
8
|
-
* Two events: `cg-search` fires after `debounce` ms of inactivity and on
|
|
9
|
-
* Enter; `cg-input` fires on every keystroke (forwarded from cg-input)
|
|
10
|
-
* for callers that want immediate value-change visibility without the
|
|
11
|
-
* debounce.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```html
|
|
15
|
-
* <cg-search-input
|
|
16
|
-
* placeholder="Search patients…"
|
|
17
|
-
* debounce="200"
|
|
18
|
-
* @cg-search=${onSearch}
|
|
19
|
-
* ></cg-search-input>
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* @fires {CustomEvent<{value: string}>} cg-input - Forwarded from cg-input on every keystroke
|
|
23
|
-
* @fires {CustomEvent<{value: string}>} cg-search - Debounced search event (also fires on Enter and clear)
|
|
24
|
-
*
|
|
25
|
-
* @cssprop --cg-component-input-height-md - Inherits from cg-input
|
|
26
|
-
*/
|
|
27
|
-
export declare class CgSearchInput extends LitElement {
|
|
28
|
-
static styles: import('lit').CSSResult[];
|
|
29
|
-
/** Current query value. Two-way: read it back via `value`, or set it to seed/clear. */
|
|
30
|
-
value: string;
|
|
31
|
-
/** Placeholder shown when the field is empty. */
|
|
32
|
-
placeholder: string;
|
|
33
|
-
/** Visible label. Pass empty string to suppress. */
|
|
34
|
-
label: string;
|
|
35
|
-
/** Debounce window in ms for the `cg-search` event. 0 disables the debounce. */
|
|
36
|
-
debounce: number;
|
|
37
|
-
/** Disable the input. */
|
|
38
|
-
disabled: boolean;
|
|
39
|
-
/** Mark the input as loading (input shows the inherited loading affordance). */
|
|
40
|
-
loading: boolean;
|
|
41
|
-
/** Suppress the leading search icon. */
|
|
42
|
-
noIcon: boolean;
|
|
43
|
-
private _internalValue;
|
|
44
|
-
private _searchTimer;
|
|
45
|
-
connectedCallback(): void;
|
|
46
|
-
disconnectedCallback(): void;
|
|
47
|
-
updated(changed: Map<string, unknown>): void;
|
|
48
|
-
private _emitSearch;
|
|
49
|
-
private _scheduleSearch;
|
|
50
|
-
private _onInput;
|
|
51
|
-
private _onKeydown;
|
|
52
|
-
private _onClear;
|
|
53
|
-
/** Force the search event to fire now, bypassing the debounce window. */
|
|
54
|
-
flush(): void;
|
|
55
|
-
render(): import('lit').TemplateResult<1>;
|
|
56
|
-
}
|
|
57
|
-
declare global {
|
|
58
|
-
interface HTMLElementTagNameMap {
|
|
59
|
-
'cg-search-input': CgSearchInput;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
//# sourceMappingURL=cg-search-input.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cg-search-input.d.ts","sourceRoot":"","sources":["../../../src/components/cg-search-input/cg-search-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBACa,aAAc,SAAQ,UAAU;IAC3C,OAAgB,MAAM,4BAGnB;IAEH,uFAAuF;IAC3E,KAAK,SAAM;IAEvB,iDAAiD;IACrC,WAAW,SAAY;IAEnC,oDAAoD;IACxC,KAAK,SAAM;IAEvB,gFAAgF;IACpD,QAAQ,SAAO;IAE3C,yBAAyB;IACmB,QAAQ,UAAS;IAE7D,gFAAgF;IACpC,OAAO,UAAS;IAE5D,wCAAwC;IAC0B,MAAM,UAAS;IAExE,OAAO,CAAC,cAAc,CAAM;IAErC,OAAO,CAAC,YAAY,CAAqB;IAEhC,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAK5B,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAMrD,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,QAAQ,CAMd;IAEF,OAAO,CAAC,UAAU,CAOhB;IAEF,OAAO,CAAC,QAAQ,CAQd;IAEF,yEAAyE;IACzE,KAAK,IAAI,IAAI;IAQJ,MAAM;CAoBhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,aAAa,CAAC;KAClC;CACF"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { css as u, LitElement as p, html as n } from "lit";
|
|
2
|
-
import { property as a, state as d, customElement as m } from "lit/decorators.js";
|
|
3
|
-
import { h as _, r as b } from "../../chunks/premium.css-9I4kHrsl.js";
|
|
4
|
-
import "../cg-input/cg-input.js";
|
|
5
|
-
import "../cg-icon/cg-icon.js";
|
|
6
|
-
var f = Object.defineProperty, v = Object.getOwnPropertyDescriptor, i = (e, l, r, h) => {
|
|
7
|
-
for (var s = h > 1 ? void 0 : h ? v(l, r) : l, o = e.length - 1, c; o >= 0; o--)
|
|
8
|
-
(c = e[o]) && (s = (h ? c(l, r, s) : c(s)) || s);
|
|
9
|
-
return h && s && f(l, r, s), s;
|
|
10
|
-
};
|
|
11
|
-
let t = class extends p {
|
|
12
|
-
constructor() {
|
|
13
|
-
super(...arguments), this.value = "", this.placeholder = "Search", this.label = "", this.debounce = 200, this.disabled = !1, this.loading = !1, this.noIcon = !1, this._internalValue = "", this._onInput = (e) => {
|
|
14
|
-
const r = e.detail?.value ?? "";
|
|
15
|
-
this._internalValue = r, this.value = r, this._scheduleSearch(r);
|
|
16
|
-
}, this._onKeydown = (e) => {
|
|
17
|
-
e.key === "Enter" && (this._searchTimer && (clearTimeout(this._searchTimer), this._searchTimer = void 0), this._emitSearch(this._internalValue));
|
|
18
|
-
}, this._onClear = () => {
|
|
19
|
-
this._internalValue = "", this.value = "", this._searchTimer && (clearTimeout(this._searchTimer), this._searchTimer = void 0), this._emitSearch("");
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
connectedCallback() {
|
|
23
|
-
super.connectedCallback(), this._internalValue = this.value;
|
|
24
|
-
}
|
|
25
|
-
disconnectedCallback() {
|
|
26
|
-
super.disconnectedCallback(), this._searchTimer && clearTimeout(this._searchTimer);
|
|
27
|
-
}
|
|
28
|
-
updated(e) {
|
|
29
|
-
e.has("value") && this.value !== this._internalValue && (this._internalValue = this.value);
|
|
30
|
-
}
|
|
31
|
-
_emitSearch(e) {
|
|
32
|
-
this.dispatchEvent(new CustomEvent("cg-search", {
|
|
33
|
-
detail: { value: e },
|
|
34
|
-
bubbles: !0,
|
|
35
|
-
composed: !0
|
|
36
|
-
}));
|
|
37
|
-
}
|
|
38
|
-
_scheduleSearch(e) {
|
|
39
|
-
if (this._searchTimer && clearTimeout(this._searchTimer), this.debounce <= 0) {
|
|
40
|
-
this._emitSearch(e);
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
this._searchTimer = window.setTimeout(() => {
|
|
44
|
-
this._emitSearch(e), this._searchTimer = void 0;
|
|
45
|
-
}, this.debounce);
|
|
46
|
-
}
|
|
47
|
-
/** Force the search event to fire now, bypassing the debounce window. */
|
|
48
|
-
flush() {
|
|
49
|
-
this._searchTimer && (clearTimeout(this._searchTimer), this._searchTimer = void 0), this._emitSearch(this._internalValue);
|
|
50
|
-
}
|
|
51
|
-
render() {
|
|
52
|
-
return n`
|
|
53
|
-
<div class="wrapper" role="search">
|
|
54
|
-
<cg-input
|
|
55
|
-
type="search"
|
|
56
|
-
.value=${this._internalValue}
|
|
57
|
-
.placeholder=${this.placeholder}
|
|
58
|
-
.label=${this.label}
|
|
59
|
-
?disabled=${this.disabled}
|
|
60
|
-
?loading=${this.loading}
|
|
61
|
-
clearable
|
|
62
|
-
@cg-input=${this._onInput}
|
|
63
|
-
@cg-clear=${this._onClear}
|
|
64
|
-
@keydown=${this._onKeydown}
|
|
65
|
-
>
|
|
66
|
-
${this.noIcon ? "" : n`<cg-icon slot="prefix" name="search" size="sm"></cg-icon>`}
|
|
67
|
-
</cg-input>
|
|
68
|
-
</div>
|
|
69
|
-
`;
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
t.styles = [_, b, u`
|
|
73
|
-
:host { display: block; }
|
|
74
|
-
.wrapper { display: block; }
|
|
75
|
-
`];
|
|
76
|
-
i([
|
|
77
|
-
a()
|
|
78
|
-
], t.prototype, "value", 2);
|
|
79
|
-
i([
|
|
80
|
-
a()
|
|
81
|
-
], t.prototype, "placeholder", 2);
|
|
82
|
-
i([
|
|
83
|
-
a()
|
|
84
|
-
], t.prototype, "label", 2);
|
|
85
|
-
i([
|
|
86
|
-
a({ type: Number })
|
|
87
|
-
], t.prototype, "debounce", 2);
|
|
88
|
-
i([
|
|
89
|
-
a({ type: Boolean, reflect: !0 })
|
|
90
|
-
], t.prototype, "disabled", 2);
|
|
91
|
-
i([
|
|
92
|
-
a({ type: Boolean, reflect: !0 })
|
|
93
|
-
], t.prototype, "loading", 2);
|
|
94
|
-
i([
|
|
95
|
-
a({ type: Boolean, attribute: "no-icon", reflect: !0 })
|
|
96
|
-
], t.prototype, "noIcon", 2);
|
|
97
|
-
i([
|
|
98
|
-
d()
|
|
99
|
-
], t.prototype, "_internalValue", 2);
|
|
100
|
-
t = i([
|
|
101
|
-
m("cg-search-input")
|
|
102
|
-
], t);
|
|
103
|
-
export {
|
|
104
|
-
t as CgSearchInput
|
|
105
|
-
};
|
|
106
|
-
//# sourceMappingURL=cg-search-input.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cg-search-input.js","sources":["../../../src/components/cg-search-input/cg-search-input.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { hostBlock, reducedMotion } from '../../styles/index.js';\nimport '../cg-input/cg-input.js';\nimport '../cg-icon/cg-icon.js';\n\n/**\n * @element cg-search-input\n * Search input — wraps `<cg-input>` with a leading search icon, clearable\n * trailing button, debounced search event, and a `role=\"search\"` landmark.\n * Use this anywhere a user filters/queries a collection.\n *\n * Two events: `cg-search` fires after `debounce` ms of inactivity and on\n * Enter; `cg-input` fires on every keystroke (forwarded from cg-input)\n * for callers that want immediate value-change visibility without the\n * debounce.\n *\n * @example\n * ```html\n * <cg-search-input\n * placeholder=\"Search patients…\"\n * debounce=\"200\"\n * @cg-search=${onSearch}\n * ></cg-search-input>\n * ```\n *\n * @fires {CustomEvent<{value: string}>} cg-input - Forwarded from cg-input on every keystroke\n * @fires {CustomEvent<{value: string}>} cg-search - Debounced search event (also fires on Enter and clear)\n *\n * @cssprop --cg-component-input-height-md - Inherits from cg-input\n */\n@customElement('cg-search-input')\nexport class CgSearchInput extends LitElement {\n static override styles = [hostBlock, reducedMotion, css`\n :host { display: block; }\n .wrapper { display: block; }\n `];\n\n /** Current query value. Two-way: read it back via `value`, or set it to seed/clear. */\n @property() value = '';\n\n /** Placeholder shown when the field is empty. */\n @property() placeholder = 'Search';\n\n /** Visible label. Pass empty string to suppress. */\n @property() label = '';\n\n /** Debounce window in ms for the `cg-search` event. 0 disables the debounce. */\n @property({ type: Number }) debounce = 200;\n\n /** Disable the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Mark the input as loading (input shows the inherited loading affordance). */\n @property({ type: Boolean, reflect: true }) loading = false;\n\n /** Suppress the leading search icon. */\n @property({ type: Boolean, attribute: 'no-icon', reflect: true }) noIcon = false;\n\n @state() private _internalValue = '';\n\n private _searchTimer: number | undefined;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this._internalValue = this.value;\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n if (this._searchTimer) clearTimeout(this._searchTimer);\n }\n\n override updated(changed: Map<string, unknown>): void {\n if (changed.has('value') && this.value !== this._internalValue) {\n this._internalValue = this.value;\n }\n }\n\n private _emitSearch(value: string): void {\n this.dispatchEvent(new CustomEvent('cg-search', {\n detail: { value },\n bubbles: true,\n composed: true,\n }));\n }\n\n private _scheduleSearch(value: string): void {\n if (this._searchTimer) clearTimeout(this._searchTimer);\n if (this.debounce <= 0) {\n this._emitSearch(value);\n return;\n }\n this._searchTimer = window.setTimeout(() => {\n this._emitSearch(value);\n this._searchTimer = undefined;\n }, this.debounce);\n }\n\n private _onInput = (e: Event): void => {\n const detail = (e as CustomEvent<{ value: string }>).detail;\n const next = detail?.value ?? '';\n this._internalValue = next;\n this.value = next;\n this._scheduleSearch(next);\n };\n\n private _onKeydown = (e: KeyboardEvent): void => {\n if (e.key !== 'Enter') return;\n if (this._searchTimer) {\n clearTimeout(this._searchTimer);\n this._searchTimer = undefined;\n }\n this._emitSearch(this._internalValue);\n };\n\n private _onClear = (): void => {\n this._internalValue = '';\n this.value = '';\n if (this._searchTimer) {\n clearTimeout(this._searchTimer);\n this._searchTimer = undefined;\n }\n this._emitSearch('');\n };\n\n /** Force the search event to fire now, bypassing the debounce window. */\n flush(): void {\n if (this._searchTimer) {\n clearTimeout(this._searchTimer);\n this._searchTimer = undefined;\n }\n this._emitSearch(this._internalValue);\n }\n\n override render() {\n return html`\n <div class=\"wrapper\" role=\"search\">\n <cg-input\n type=\"search\"\n .value=${this._internalValue}\n .placeholder=${this.placeholder}\n .label=${this.label}\n ?disabled=${this.disabled}\n ?loading=${this.loading}\n clearable\n @cg-input=${this._onInput}\n @cg-clear=${this._onClear}\n @keydown=${this._onKeydown}\n >\n ${this.noIcon ? '' : html`<cg-icon slot=\"prefix\" name=\"search\" size=\"sm\"></cg-icon>`}\n </cg-input>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'cg-search-input': CgSearchInput;\n }\n}\n"],"names":["CgSearchInput","LitElement","next","changed","value","html","hostBlock","reducedMotion","css","__decorateClass","property","state","customElement"],"mappings":";;;;;;;;;;AAgCO,IAAMA,IAAN,cAA4BC,EAAW;AAAA,EAAvC,cAAA;AAAA,UAAA,GAAA,SAAA,GAOO,KAAA,QAAQ,IAGR,KAAA,cAAc,UAGd,KAAA,QAAQ,IAGQ,KAAA,WAAW,KAGK,KAAA,WAAW,IAGX,KAAA,UAAU,IAGY,KAAA,SAAS,IAElE,KAAQ,iBAAiB,IAwClC,KAAQ,WAAW,CAAC,MAAmB;AAErC,YAAMC,IADU,EAAqC,QAChC,SAAS;AAC9B,WAAK,iBAAiBA,GACtB,KAAK,QAAQA,GACb,KAAK,gBAAgBA,CAAI;AAAA,IAC3B,GAEA,KAAQ,aAAa,CAAC,MAA2B;AAC/C,MAAI,EAAE,QAAQ,YACV,KAAK,iBACP,aAAa,KAAK,YAAY,GAC9B,KAAK,eAAe,SAEtB,KAAK,YAAY,KAAK,cAAc;AAAA,IACtC,GAEA,KAAQ,WAAW,MAAY;AAC7B,WAAK,iBAAiB,IACtB,KAAK,QAAQ,IACT,KAAK,iBACP,aAAa,KAAK,YAAY,GAC9B,KAAK,eAAe,SAEtB,KAAK,YAAY,EAAE;AAAA,IACrB;AAAA,EAAA;AAAA,EA7DS,oBAA0B;AACjC,UAAM,kBAAA,GACN,KAAK,iBAAiB,KAAK;AAAA,EAC7B;AAAA,EAES,uBAA6B;AACpC,UAAM,qBAAA,GACF,KAAK,gBAAc,aAAa,KAAK,YAAY;AAAA,EACvD;AAAA,EAES,QAAQC,GAAqC;AACpD,IAAIA,EAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,KAAK,mBAC9C,KAAK,iBAAiB,KAAK;AAAA,EAE/B;AAAA,EAEQ,YAAYC,GAAqB;AACvC,SAAK,cAAc,IAAI,YAAY,aAAa;AAAA,MAC9C,QAAQ,EAAE,OAAAA,EAAA;AAAA,MACV,SAAS;AAAA,MACT,UAAU;AAAA,IAAA,CACX,CAAC;AAAA,EACJ;AAAA,EAEQ,gBAAgBA,GAAqB;AAE3C,QADI,KAAK,gBAAc,aAAa,KAAK,YAAY,GACjD,KAAK,YAAY,GAAG;AACtB,WAAK,YAAYA,CAAK;AACtB;AAAA,IACF;AACA,SAAK,eAAe,OAAO,WAAW,MAAM;AAC1C,WAAK,YAAYA,CAAK,GACtB,KAAK,eAAe;AAAA,IACtB,GAAG,KAAK,QAAQ;AAAA,EAClB;AAAA;AAAA,EA8BA,QAAc;AACZ,IAAI,KAAK,iBACP,aAAa,KAAK,YAAY,GAC9B,KAAK,eAAe,SAEtB,KAAK,YAAY,KAAK,cAAc;AAAA,EACtC;AAAA,EAES,SAAS;AAChB,WAAOC;AAAA;AAAA;AAAA;AAAA,mBAIQ,KAAK,cAAc;AAAA,yBACb,KAAK,WAAW;AAAA,mBACtB,KAAK,KAAK;AAAA,sBACP,KAAK,QAAQ;AAAA,qBACd,KAAK,OAAO;AAAA;AAAA,sBAEX,KAAK,QAAQ;AAAA,sBACb,KAAK,QAAQ;AAAA,qBACd,KAAK,UAAU;AAAA;AAAA,YAExB,KAAK,SAAS,KAAKA,4DAA+D;AAAA;AAAA;AAAA;AAAA,EAI5F;AACF;AA3HaL,EACK,SAAS,CAACM,GAAWC,GAAeC;AAAA;AAAA;AAAA,GAGnD;AAGWC,EAAA;AAAA,EAAXC,EAAA;AAAS,GAPCV,EAOC,WAAA,SAAA,CAAA;AAGAS,EAAA;AAAA,EAAXC,EAAA;AAAS,GAVCV,EAUC,WAAA,eAAA,CAAA;AAGAS,EAAA;AAAA,EAAXC,EAAA;AAAS,GAbCV,EAaC,WAAA,SAAA,CAAA;AAGgBS,EAAA;AAAA,EAA3BC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GAhBfV,EAgBiB,WAAA,YAAA,CAAA;AAGgBS,EAAA;AAAA,EAA3CC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAnB/BV,EAmBiC,WAAA,YAAA,CAAA;AAGAS,EAAA;AAAA,EAA3CC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAtB/BV,EAsBiC,WAAA,WAAA,CAAA;AAGsBS,EAAA;AAAA,EAAjEC,EAAS,EAAE,MAAM,SAAS,WAAW,WAAW,SAAS,IAAM;AAAA,GAzBrDV,EAyBuD,WAAA,UAAA,CAAA;AAEjDS,EAAA;AAAA,EAAhBE,EAAA;AAAM,GA3BIX,EA2BM,WAAA,kBAAA,CAAA;AA3BNA,IAANS,EAAA;AAAA,EADNG,EAAc,iBAAiB;AAAA,GACnBZ,CAAA;"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
/**
|
|
3
|
-
* @element cg-sortable
|
|
4
|
-
* Reorderable list. Slot in any elements as direct children — drag them with
|
|
5
|
-
* a pointer (mouse/touch/pen) or move them with the keyboard to reorder.
|
|
6
|
-
* Fires `cg-sort` with the new order when a reorder commits.
|
|
7
|
-
*
|
|
8
|
-
* Pointer drag uses pointer capture, so it works on mouse, touch, and stylus
|
|
9
|
-
* without separate code paths. Keyboard reorder: focus an item, then
|
|
10
|
-
* ArrowUp/ArrowDown (or ArrowLeft/ArrowRight in horizontal mode) to move
|
|
11
|
-
* it. Home/End jump to first/last position.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```html
|
|
15
|
-
* <cg-sortable @cg-sort=${onSort}>
|
|
16
|
-
* <div data-id="a">Item A</div>
|
|
17
|
-
* <div data-id="b">Item B</div>
|
|
18
|
-
* <div data-id="c">Item C</div>
|
|
19
|
-
* </cg-sortable>
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* @example With drag handles only
|
|
23
|
-
* ```html
|
|
24
|
-
* <cg-sortable handle-selector=".handle">
|
|
25
|
-
* <div data-id="a"><span class="handle">⋮</span> Item A</div>
|
|
26
|
-
* <div data-id="b"><span class="handle">⋮</span> Item B</div>
|
|
27
|
-
* </cg-sortable>
|
|
28
|
-
* ```
|
|
29
|
-
*
|
|
30
|
-
* @slot - Direct children become the sortable items.
|
|
31
|
-
*
|
|
32
|
-
* @fires {CustomEvent<{from: number, to: number, items: HTMLElement[]}>} cg-sort - Reorder committed
|
|
33
|
-
* @fires {CustomEvent<{index: number, item: HTMLElement}>} cg-sort-start - Drag/move started
|
|
34
|
-
* @fires {CustomEvent<{index: number, item: HTMLElement}>} cg-sort-end - Drag/move ended (no commit if cancelled)
|
|
35
|
-
*
|
|
36
|
-
* @cssprop --cg-component-sortable-dragging-opacity - Opacity of the dragged item (default 0.6)
|
|
37
|
-
*/
|
|
38
|
-
export declare class CgSortable extends LitElement {
|
|
39
|
-
static styles: import('lit').CSSResult[];
|
|
40
|
-
/** CSS selector inside each item that initiates drag. Empty = whole item is the handle. */
|
|
41
|
-
handleSelector: string;
|
|
42
|
-
/** Disable both pointer and keyboard reordering. */
|
|
43
|
-
disabled: boolean;
|
|
44
|
-
/** Layout axis. `vertical` listens to ArrowUp/Down; `horizontal` listens to ArrowLeft/Right. */
|
|
45
|
-
direction: 'vertical' | 'horizontal';
|
|
46
|
-
/** Threshold (0..1) of an item's height/width that the pointer must cross to swap. Default 0.5. */
|
|
47
|
-
swapThreshold: number;
|
|
48
|
-
private _announcement;
|
|
49
|
-
private _draggingEl;
|
|
50
|
-
private _startIndex;
|
|
51
|
-
private _pointerId;
|
|
52
|
-
private _startPointer;
|
|
53
|
-
private _startRect;
|
|
54
|
-
private _items;
|
|
55
|
-
private _findItemFromTarget;
|
|
56
|
-
private _onPointerDown;
|
|
57
|
-
private _onPointerMove;
|
|
58
|
-
private _onPointerUp;
|
|
59
|
-
private _onPointerCancel;
|
|
60
|
-
private _finishDrag;
|
|
61
|
-
private _onKeyDown;
|
|
62
|
-
private _announce;
|
|
63
|
-
connectedCallback(): void;
|
|
64
|
-
disconnectedCallback(): void;
|
|
65
|
-
render(): import('lit').TemplateResult<1>;
|
|
66
|
-
}
|
|
67
|
-
declare global {
|
|
68
|
-
interface HTMLElementTagNameMap {
|
|
69
|
-
'cg-sortable': CgSortable;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=cg-sortable.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cg-sortable.d.ts","sourceRoot":"","sources":["../../../src/components/cg-sortable/cg-sortable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAI5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBACa,UAAW,SAAQ,UAAU;IACxC,OAAgB,MAAM,4BAgCnB;IAEH,2FAA2F;IAC/C,cAAc,SAAM;IAEhE,oDAAoD;IACR,QAAQ,UAAS;IAE7D,gGAAgG;IACnE,SAAS,EAAE,UAAU,GAAG,YAAY,CAAc;IAE/E,mGAAmG;IAC1C,aAAa,SAAO;IAEpE,OAAO,CAAC,aAAa,CAAM;IAEpC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,aAAa,CAA4C;IACjE,OAAO,CAAC,UAAU,CAAwB;IAE1C,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,cAAc,CAmBpB;IAEF,OAAO,CAAC,cAAc,CAqDpB;IAEF,OAAO,CAAC,YAAY,CAGlB;IAEF,OAAO,CAAC,gBAAgB,CAGtB;IAEF,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,UAAU,CAyChB;IAEF,OAAO,CAAC,SAAS;IAKR,iBAAiB,IAAI,IAAI;IASzB,oBAAoB,IAAI,IAAI;IAS5B,MAAM;CAMhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,UAAU,CAAC;KAC3B;CACF"}
|