@aceshooting/lyra-ui 26.0.0 → 28.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -675
- package/README.md +285 -1130
- package/design-tokens.json +1 -1
- package/dist/ai/types.d.ts +5 -5
- package/dist/autoloader.js +1 -1
- package/dist/cli/agent-registry.mjs +1 -0
- package/dist/cli/component-inventory.mjs +1 -1
- package/dist/cli/css-declarations.mjs +1 -0
- package/dist/cli/init-agents.mjs +40 -0
- package/dist/cli/is-main-module.mjs +1 -0
- package/dist/cli/lyra-rename-ledger.mjs +1 -1
- package/dist/cli/lyra-ui.mjs +11 -0
- package/dist/cli/migrate-wa.mjs +12 -5
- package/dist/cli/migration-contract.json +1 -1
- package/dist/cli/migration-renames.mjs +2 -2
- package/dist/cli/migration-theme-scopes.mjs +3 -0
- package/dist/cli/theme-scope-vocabulary.generated.mjs +1 -0
- package/dist/components/agent-tools/activity-feed/activity-feed.class.js +1 -1
- package/dist/components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.class.d.ts +1 -1
- package/dist/components/agent-tools/agent-eval-dashboard/agent-eval-dashboard.class.js +2 -2
- package/dist/components/agent-tools/agent-question/agent-question.class.js +1 -1
- package/dist/components/agent-tools/agent-run/agent-run.class.js +1 -1
- package/dist/components/agent-tools/agent-trace/agent-trace.class.js +1 -1
- package/dist/components/agent-tools/approval-queue/approval-queue.class.js +1 -1
- package/dist/components/agent-tools/artifact-panel/artifact-panel.class.js +1 -1
- package/dist/components/agent-tools/background-runs/background-runs.class.js +1 -1
- package/dist/components/agent-tools/browser-frame/browser-frame.class.js +1 -1
- package/dist/components/agent-tools/budget-meter/budget-meter.class.js +1 -1
- package/dist/components/agent-tools/change-review/change-review.class.js +1 -1
- package/dist/components/agent-tools/commit-card/commit-card.class.js +1 -1
- package/dist/components/agent-tools/compare-panel/compare-panel.class.js +1 -1
- package/dist/components/agent-tools/confirm-bar/confirm-bar.class.d.ts +2 -2
- package/dist/components/agent-tools/confirm-bar/confirm-bar.class.js +2 -2
- package/dist/components/agent-tools/connector-manager/connector-manager.class.d.ts +4 -2
- package/dist/components/agent-tools/connector-manager/connector-manager.class.js +6 -3
- package/dist/components/agent-tools/connector-manager/connector-manager.d.ts +1 -1
- package/dist/components/agent-tools/connector-manager/connector-manager.js +1 -1
- package/dist/components/agent-tools/connector-manager/connector-manager.styles.js +1 -1
- package/dist/components/agent-tools/context-inspector/context-inspector.class.d.ts +2 -2
- package/dist/components/agent-tools/context-inspector/context-inspector.class.js +6 -6
- package/dist/components/agent-tools/eval-dataset/eval-dataset.class.d.ts +8 -33
- package/dist/components/agent-tools/eval-dataset/eval-dataset.class.js +27 -4
- package/dist/components/agent-tools/eval-dataset/eval-dataset.d.ts +1 -1
- package/dist/components/agent-tools/eval-dataset/eval-dataset.js +1 -1
- package/dist/components/agent-tools/eval-dataset/eval-dataset.styles.js +1 -1
- package/dist/components/agent-tools/eval-result/eval-result.class.js +1 -1
- package/dist/components/agent-tools/evaluation-run/evaluation-run.class.js +1 -1
- package/dist/components/agent-tools/mcp-app/mcp-app.class.js +1 -1
- package/dist/components/agent-tools/permission-grant/permission-grant.class.d.ts +4 -2
- package/dist/components/agent-tools/permission-grant/permission-grant.class.js +6 -3
- package/dist/components/agent-tools/permission-grant/permission-grant.d.ts +1 -1
- package/dist/components/agent-tools/permission-grant/permission-grant.js +1 -1
- package/dist/components/agent-tools/permission-grant/permission-grant.styles.js +1 -1
- package/dist/components/agent-tools/permission-rules/permission-rules.class.js +1 -1
- package/dist/components/agent-tools/policy-summary/policy-summary.class.js +1 -1
- package/dist/components/agent-tools/prompt-studio/prompt-studio.class.d.ts +1 -1
- package/dist/components/agent-tools/prompt-studio/prompt-studio.class.js +2 -2
- package/dist/components/agent-tools/result-card/result-field.class.js +1 -1
- package/dist/components/agent-tools/schema-viewer/schema-viewer.class.d.ts +3 -1
- package/dist/components/agent-tools/schema-viewer/schema-viewer.class.js +1 -1
- package/dist/components/agent-tools/span-waterfall/span-waterfall.class.js +1 -1
- package/dist/components/agent-tools/stack-trace/stack-trace.class.js +1 -1
- package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js +2 -2
- package/dist/components/agent-tools/task-list/task-list.class.d.ts +2 -2
- package/dist/components/agent-tools/task-list/task-list.class.js +2 -2
- package/dist/components/agent-tools/terminal/terminal.class.d.ts +1 -1
- package/dist/components/agent-tools/terminal/terminal.class.js +4 -4
- package/dist/components/agent-tools/test-results/test-results.class.js +1 -1
- package/dist/components/agent-tools/thinking-panel/thinking-panel.class.js +1 -1
- package/dist/components/agent-tools/tool-approval-dialog/tool-approval-dialog.class.d.ts +15 -9
- package/dist/components/agent-tools/tool-approval-dialog/tool-approval-dialog.class.js +1 -1
- package/dist/components/agent-tools/tool-call-block/tool-call-block.class.d.ts +2 -2
- package/dist/components/agent-tools/tool-call-block/tool-call-block.class.js +1 -1
- package/dist/components/agent-tools/tool-call-block/tool-call-block.styles.js +1 -1
- package/dist/components/agent-tools/tool-call-chip/tool-call-chip.class.d.ts +2 -7
- package/dist/components/agent-tools/tool-call-chip/tool-call-chip.class.js +1 -1
- package/dist/components/agent-tools/tool-call-chip/tool-call-chip.styles.js +1 -1
- package/dist/components/agent-tools/tool-param-form/tool-param-constraints.js +1 -1
- package/dist/components/agent-tools/tool-param-form/tool-param-form.class.d.ts +3 -5
- package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js +1 -1
- package/dist/components/agent-tools/tool-result-dialog/tool-result-dialog.class.d.ts +2 -5
- package/dist/components/agent-tools/tool-result-dialog/tool-result-dialog.class.js +1 -1
- package/dist/components/agent-tools/tool-result-dialog/tool-result-dialog.styles.js +1 -1
- package/dist/components/agent-tools/tool-result-view/registry.d.ts +4 -12
- package/dist/components/agent-tools/tool-result-view/tool-result-view.class.d.ts +2 -2
- package/dist/components/agent-tools/tool-result-view/tool-result-view.class.js +1 -1
- package/dist/components/agent-tools/tool-select-dialog/tool-select-dialog.class.js +1 -1
- package/dist/components/agent-tools/tool-status.d.ts +7 -0
- package/dist/components/agent-tools/tool-status.styles.js +1 -0
- package/dist/components/agent-tools/tool-timeline/tool-timeline.class.js +1 -1
- package/dist/components/agent-tools/tool-timeline/tool-timeline.d.ts +1 -1
- package/dist/components/agent-tools/tool-timeline/tool-timeline.js +1 -1
- package/dist/components/agent-tools/trace-tree/trace-tree.class.js +2 -2
- package/dist/components/charts/chart/box-plot.class.d.ts +1 -1
- package/dist/components/charts/chart/box-plot.class.js +1 -1
- package/dist/components/charts/chart/box-plot.styles.js +1 -1
- package/dist/components/charts/chart/chart-surface-shared.js +1 -0
- package/dist/components/charts/chart/chart-surface.styles.js +1 -1
- package/dist/components/charts/chart/chart-table-sampling.js +1 -1
- package/dist/components/charts/chart/chart-token-cache.js +2 -2
- package/dist/components/charts/chart/chart.class.d.ts +3 -3
- package/dist/components/charts/chart/chart.class.js +3 -3
- package/dist/components/charts/chart/chart.styles.js +1 -1
- package/dist/components/charts/chart/histogram.class.js +1 -1
- package/dist/components/charts/chart/lite-chart.class.d.ts +1 -1
- package/dist/components/charts/chart/lite-chart.class.js +4 -4
- package/dist/components/conversation/agent-workspace/agent-workspace.class.js +1 -1
- package/dist/components/conversation/audio-visualizer/audio-visualizer.class.js +1 -1
- package/dist/components/conversation/branch-picker/branch-picker.class.js +1 -1
- package/dist/components/conversation/catalog-picker-element.d.ts +28 -13
- package/dist/components/conversation/catalog-picker-element.js +1 -1
- package/dist/components/conversation/catalog-picker-trigger.styles.js +1 -0
- package/dist/components/conversation/chat-composer/chat-composer.class.js +1 -1
- package/dist/components/conversation/chat-message/chat-message.class.js +1 -1
- package/dist/components/conversation/chat-message/chat-message.styles.js +1 -1
- package/dist/components/conversation/chat-viewport/chat-viewport.class.d.ts +1 -1
- package/dist/components/conversation/chat-viewport/chat-viewport.class.js +1 -1
- package/dist/components/conversation/checkpoint/checkpoint.class.js +1 -1
- package/dist/components/conversation/code-block/code-block-base.class.js +1 -1
- package/dist/components/conversation/code-block/code-block-core.class.js +1 -1
- package/dist/components/conversation/code-block/code-block-shared.js +1 -1
- package/dist/components/conversation/code-block/code-block.class.js +1 -1
- package/dist/components/conversation/conversation-item/conversation-item.class.js +1 -1
- package/dist/components/conversation/generation-metrics/generation-metrics.class.js +2 -2
- package/dist/components/conversation/handoff-divider/handoff-divider.class.js +1 -1
- package/dist/components/conversation/markdown/markdown-base.class.js +1 -1
- package/dist/components/conversation/markdown/markdown-code-header.js +1 -1
- package/dist/components/conversation/markdown/markdown-core.class.js +1 -1
- package/dist/components/conversation/markdown/markdown.class.js +1 -1
- package/dist/components/conversation/message-actions/message-actions.class.js +1 -1
- package/dist/components/conversation/message-feedback/message-feedback.class.js +1 -1
- package/dist/components/conversation/message-parts/message-parts.class.js +1 -1
- package/dist/components/conversation/model-select/model-select.class.d.ts +7 -34
- package/dist/components/conversation/model-select/model-select.class.js +3 -3
- package/dist/components/conversation/model-select/model-select.styles.js +1 -1
- package/dist/components/conversation/model-settings-panel/model-settings-panel.class.js +1 -1
- package/dist/components/conversation/prompt-input/prompt-input.class.d.ts +7 -2
- package/dist/components/conversation/prompt-input/prompt-input.class.js +5 -2
- package/dist/components/conversation/prompt-queue/prompt-queue.class.js +1 -1
- package/dist/components/conversation/push-to-talk/push-to-talk.class.js +1 -1
- package/dist/components/conversation/realtime-session/realtime-session.class.js +1 -1
- package/dist/components/conversation/selection-toolbar/selection-toolbar.class.js +1 -1
- package/dist/components/conversation/stream-status/stream-status.class.js +1 -1
- package/dist/components/conversation/suggestion-chips/suggestion-chips.class.js +1 -1
- package/dist/components/conversation/thread-list/thread-list.class.js +1 -1
- package/dist/components/conversation/transcript-feed/transcript-feed.class.js +1 -1
- package/dist/components/conversation/typing-indicator/typing-indicator.class.js +1 -1
- package/dist/components/conversation/usage-badge/usage-badge.class.js +1 -1
- package/dist/components/conversation/voice-picker/voice-picker.class.d.ts +10 -27
- package/dist/components/conversation/voice-picker/voice-picker.class.js +3 -3
- package/dist/components/conversation/voice-picker/voice-picker.styles.js +1 -1
- package/dist/components/data/calendar/calendar.class.js +1 -1
- package/dist/components/data/condition-builder/condition-builder.class.js +1 -1
- package/dist/components/data/context-meter/context-meter.class.js +1 -1
- package/dist/components/data/data-grid/data-grid.class.d.ts +2 -2
- package/dist/components/data/data-grid/data-grid.class.js +3 -3
- package/dist/components/data/document-library/document-library.class.d.ts +2 -2
- package/dist/components/data/document-library/document-library.class.js +2 -2
- package/dist/components/data/env-list/env-list.class.js +1 -1
- package/dist/components/data/file-tree/file-tree.class.d.ts +2 -2
- package/dist/components/data/file-tree/file-tree.class.js +1 -1
- package/dist/components/data/flow-canvas/flow-canvas.class.js +1 -1
- package/dist/components/data/flow-controls/flow-controls.class.js +1 -1
- package/dist/components/data/flow-minimap/flow-minimap.class.js +1 -1
- package/dist/components/data/flow-node/flow-node.class.js +1 -1
- package/dist/components/data/flow-run-status/flow-run-status.class.js +1 -1
- package/dist/components/data/funnel/funnel.class.js +1 -1
- package/dist/components/data/gauge/gauge.class.js +1 -1
- package/dist/components/data/graph-query-builder/graph-query-builder.class.d.ts +3 -3
- package/dist/components/data/graph-query-builder/graph-query-builder.class.js +1 -1
- package/dist/components/data/heatmap/heatmap.class.js +2 -2
- package/dist/components/data/pagination/pagination.class.d.ts +2 -0
- package/dist/components/data/pagination/pagination.class.js +1 -1
- package/dist/components/data/pagination/pagination.styles.js +1 -1
- package/dist/components/data/sequence-strip/sequence-strip.class.d.ts +1 -1
- package/dist/components/data/sequence-strip/sequence-strip.class.js +1 -1
- package/dist/components/data/sparkline/sparkline.class.js +1 -1
- package/dist/components/data/stat/stat.class.js +1 -1
- package/dist/components/data/table/table.class.d.ts +33 -197
- package/dist/components/data/table/table.class.js +6 -4
- package/dist/components/data/table/table.styles.js +1 -1
- package/dist/components/data/timeline/timeline.class.js +1 -1
- package/dist/components/data/tree/tree.class.js +1 -1
- package/dist/components/data/word-cloud/word-cloud.class.js +1 -1
- package/dist/components/forms/button/button.class.d.ts +3 -3
- package/dist/components/forms/button/button.class.js +1 -1
- package/dist/components/forms/catalog-picker-base.js +1 -1
- package/dist/components/forms/checkbox/checkbox.class.d.ts +13 -34
- package/dist/components/forms/checkbox/checkbox.class.js +3 -3
- package/dist/components/forms/checkbox-group/checkbox-group.class.d.ts +3 -3
- package/dist/components/forms/checkbox-group/checkbox-group.class.js +1 -1
- package/dist/components/forms/code-editor/code-editor.class.js +1 -1
- package/dist/components/forms/color-picker/color-picker.class.d.ts +8 -4
- package/dist/components/forms/color-picker/color-picker.class.js +2 -2
- package/dist/components/forms/combobox/combobox.class.d.ts +6 -6
- package/dist/components/forms/combobox/combobox.class.js +3 -2
- package/dist/components/forms/combobox/option.class.d.ts +3 -0
- package/dist/components/forms/combobox/option.class.js +2 -2
- package/dist/components/forms/country-picker/country-picker.class.js +1 -1
- package/dist/components/forms/currency-picker/currency-picker.class.js +1 -1
- package/dist/components/forms/date-picker/date-input.class.d.ts +10 -11
- package/dist/components/forms/date-picker/date-input.class.js +4 -3
- package/dist/components/forms/date-picker/date-input.styles.js +1 -1
- package/dist/components/forms/date-picker/date-picker.class.d.ts +6 -0
- package/dist/components/forms/date-picker/date-picker.class.js +1 -1
- package/dist/components/forms/date-picker/date-picker.styles.js +1 -1
- package/dist/components/forms/emoji-picker/emoji-data-loader.js +1 -1
- package/dist/components/forms/emoji-picker/emoji-picker.class.d.ts +7 -4
- package/dist/components/forms/emoji-picker/emoji-picker.class.js +5 -5
- package/dist/components/forms/icon-button/icon-button.class.d.ts +4 -0
- package/dist/components/forms/icon-button/icon-button.class.js +1 -1
- package/dist/components/forms/icon-button/icon-button.styles.js +1 -1
- package/dist/components/forms/input/input-shared.js +1 -1
- package/dist/components/forms/input/input.class.js +1 -1
- package/dist/components/forms/input/input.styles.js +1 -1
- package/dist/components/forms/input/native-time-input.class.js +1 -1
- package/dist/components/forms/input/number-input.class.js +1 -1
- package/dist/components/forms/input/time-input.class.d.ts +1 -1
- package/dist/components/forms/input/time-input.class.js +1 -1
- package/dist/components/forms/input/time-input.styles.js +1 -1
- package/dist/components/forms/locale-picker/locale-picker.class.d.ts +5 -5
- package/dist/components/forms/locale-picker/locale-picker.class.js +1 -1
- package/dist/components/forms/otp-input/otp-input.class.js +2 -1
- package/dist/components/forms/phone-input/phone-input.class.d.ts +7 -9
- package/dist/components/forms/phone-input/phone-input.class.js +6 -5
- package/dist/components/forms/phone-input/phone-input.styles.js +1 -1
- package/dist/components/forms/radio/radio-group.class.d.ts +4 -4
- package/dist/components/forms/radio/radio-group.class.js +1 -1
- package/dist/components/forms/radio/radio.class.d.ts +11 -19
- package/dist/components/forms/radio/radio.class.js +2 -2
- package/dist/components/forms/rubric-form/rubric-form.class.d.ts +3 -5
- package/dist/components/forms/rubric-form/rubric-form.class.js +4 -4
- package/dist/components/forms/select/select.class.d.ts +5 -7
- package/dist/components/forms/select/select.class.js +3 -2
- package/dist/components/forms/signature-pad/signature-pad.class.js +1 -1
- package/dist/components/forms/slider/slider.class.d.ts +3 -3
- package/dist/components/forms/slider/slider.class.js +1 -1
- package/dist/components/forms/slider/slider.styles.js +1 -1
- package/dist/components/forms/swatch-picker/swatch-picker.class.js +1 -1
- package/dist/components/forms/switch/switch.class.d.ts +11 -36
- package/dist/components/forms/switch/switch.class.js +2 -2
- package/dist/components/forms/textarea/textarea.class.js +2 -1
- package/dist/components/forms/textarea/textarea.styles.js +1 -1
- package/dist/components/forms/time-range/time-range.class.d.ts +5 -3
- package/dist/components/forms/time-range/time-range.class.js +1 -1
- package/dist/components/forms/time-range/time-range.styles.js +1 -1
- package/dist/components/forms/time-zone-picker/time-zone-picker.class.js +1 -1
- package/dist/components/forms/toggle-group/toggle-group.class.d.ts +2 -2
- package/dist/components/forms/toggle-group/toggle-group.class.js +1 -1
- package/dist/components/forms/token-input/token-input.class.d.ts +3 -3
- package/dist/components/forms/token-input/token-input.class.js +1 -1
- package/dist/components/forms/unit-picker/unit-picker.class.js +1 -1
- package/dist/components/layout/app-rail/app-rail-item.class.js +1 -1
- package/dist/components/layout/app-rail/app-rail.class.d.ts +71 -8
- package/dist/components/layout/app-rail/app-rail.class.js +16 -4
- package/dist/components/layout/app-rail/app-rail.styles.js +1 -1
- package/dist/components/layout/app-rail-group/app-rail-group.class.js +1 -1
- package/dist/components/layout/breadcrumb/breadcrumb-item.class.js +1 -1
- package/dist/components/layout/breadcrumb/breadcrumb.class.js +1 -1
- package/dist/components/layout/card/card.class.js +1 -1
- package/dist/components/layout/carousel/carousel.class.js +1 -1
- package/dist/components/layout/command-palette/command-palette.class.d.ts +6 -2
- package/dist/components/layout/command-palette/command-palette.class.js +1 -1
- package/dist/components/layout/dashboard-grid/dashboard-grid.class.js +1 -1
- package/dist/components/layout/details/accordion-item.class.js +1 -1
- package/dist/components/layout/details/accordion.class.js +1 -1
- package/dist/components/layout/details/details.class.js +1 -1
- package/dist/components/layout/dock-panel/dock-panel.class.d.ts +1 -1
- package/dist/components/layout/dock-panel/dock-panel.class.js +1 -1
- package/dist/components/layout/drilldown-panel/drilldown-panel.class.js +2 -2
- package/dist/components/layout/filter-bar/filter-bar.class.d.ts +3 -2
- package/dist/components/layout/filter-bar/filter-bar.class.js +18 -15
- package/dist/components/layout/filter-bar/filter-bar.styles.js +1 -1
- package/dist/components/layout/menu/menu.class.d.ts +1 -1
- package/dist/components/layout/menu/menu.class.js +1 -1
- package/dist/components/layout/menubar/menubar.class.js +1 -1
- package/dist/components/layout/multi-split/multi-split.class.d.ts +1 -1
- package/dist/components/layout/multi-split/multi-split.class.js +1 -1
- package/dist/components/layout/navigation-menu/navigation-menu.class.js +1 -1
- package/dist/components/layout/navigation-menu-item/navigation-menu-item.class.js +1 -1
- package/dist/components/layout/page/page.class.d.ts +1 -1
- package/dist/components/layout/page/page.class.js +1 -1
- package/dist/components/layout/reorder-list/reorder-item.class.js +1 -1
- package/dist/components/layout/reorder-list/reorder-list.class.js +1 -1
- package/dist/components/layout/responsive-panel/responsive-panel.class.d.ts +1 -1
- package/dist/components/layout/responsive-panel/responsive-panel.class.js +1 -1
- package/dist/components/layout/scroller/scroller.class.js +1 -1
- package/dist/components/layout/segmented/segmented.class.d.ts +7 -4
- package/dist/components/layout/segmented/segmented.class.js +1 -1
- package/dist/components/layout/segmented/segmented.styles.js +1 -1
- package/dist/components/layout/split-panel/split-panel.class.js +1 -1
- package/dist/components/layout/stepper/stepper.class.js +2 -2
- package/dist/components/layout/tab-group/tab-group.class.js +1 -1
- package/dist/components/layout/tab-group/tab.class.js +1 -1
- package/dist/components/layout/virtual-list/virtual-list.class.d.ts +1 -1
- package/dist/components/layout/virtual-list/virtual-list.class.js +1 -1
- package/dist/components/layout/virtual-list/virtual-list.styles.js +1 -1
- package/dist/components/layout/widget/widget.class.d.ts +1 -1
- package/dist/components/layout/widget/widget.class.js +3 -3
- package/dist/components/media/animated-image/animated-image.class.js +1 -1
- package/dist/components/media/attachment-chip/attachment-chip.class.js +1 -1
- package/dist/components/media/attachment-trigger/attachment-trigger.class.js +2 -2
- package/dist/components/media/av-player/av-player.class.js +1 -1
- package/dist/components/media/avatar-group/avatar-group.class.js +1 -1
- package/dist/components/media/drop-zone/drop-zone.class.d.ts +10 -0
- package/dist/components/media/drop-zone/drop-zone.class.js +2 -2
- package/dist/components/media/file-icon/file-icon.class.js +1 -1
- package/dist/components/media/file-input/file-input.class.d.ts +3 -3
- package/dist/components/media/file-input/file-input.class.js +2 -2
- package/dist/components/media/file-input/file-intake.d.ts +5 -1
- package/dist/components/media/file-input/file-intake.js +1 -1
- package/dist/components/media/flag/flag.class.js +1 -1
- package/dist/components/media/image-comparer/image-comparer.class.js +1 -1
- package/dist/components/media/image-viewer/image-viewer.class.d.ts +2 -1
- package/dist/components/media/image-viewer/image-viewer.class.js +4 -2
- package/dist/components/media/image-viewer/image-viewer.styles.js +1 -1
- package/dist/components/media/lightbox/lightbox.class.js +1 -1
- package/dist/components/media/map/map.class.js +2 -2
- package/dist/components/media/media-card/media-card.class.js +1 -1
- package/dist/components/media/pan-zoom/pan-zoom.class.js +1 -1
- package/dist/components/media/qr-code/qr-code-loader.js +1 -1
- package/dist/components/media/qr-code/qr-code.class.d.ts +2 -2
- package/dist/components/media/qr-code/qr-code.class.js +1 -1
- package/dist/components/media/sequence-playback/sequence-playback.class.js +1 -1
- package/dist/components/media/video/video.class.js +3 -3
- package/dist/components/media/video-playlist/video-playlist.class.js +1 -1
- package/dist/components/media/zoomable-frame/zoomable-frame.class.d.ts +2 -2
- package/dist/components/media/zoomable-frame/zoomable-frame.class.js +1 -1
- package/dist/components/overlays/alert/alert.class.d.ts +3 -3
- package/dist/components/overlays/alert/alert.class.js +1 -1
- package/dist/components/overlays/badge/badge.class.d.ts +2 -2
- package/dist/components/overlays/badge/badge.class.js +1 -1
- package/dist/components/overlays/badge/tag.class.d.ts +3 -1
- package/dist/components/overlays/badge/tag.class.js +3 -2
- package/dist/components/overlays/badge/tag.styles.js +1 -1
- package/dist/components/overlays/callout/callout.class.d.ts +2 -2
- package/dist/components/overlays/callout/callout.class.js +1 -1
- package/dist/components/overlays/chip/chip-group.class.js +1 -1
- package/dist/components/overlays/chip/chip.class.d.ts +4 -2
- package/dist/components/overlays/chip/chip.class.js +2 -2
- package/dist/components/overlays/context-menu/context-menu.class.js +1 -1
- package/dist/components/overlays/dialog/confirm.js +1 -1
- package/dist/components/overlays/dialog/dialog.class.d.ts +1 -1
- package/dist/components/overlays/dialog/dialog.class.js +1 -1
- package/dist/components/overlays/kbd/kbd.class.js +1 -1
- package/dist/components/overlays/overlay/overlay-shared.d.ts +9 -0
- package/dist/components/overlays/overlay/overlay-shared.js +1 -1
- package/dist/components/overlays/overlay/popover.class.d.ts +2 -2
- package/dist/components/overlays/overlay/popover.class.js +1 -1
- package/dist/components/overlays/overlay/tooltip.class.d.ts +1 -1
- package/dist/components/overlays/overlay/tooltip.class.js +1 -1
- package/dist/components/overlays/progress/progress-bar.class.d.ts +5 -22
- package/dist/components/overlays/progress/progress-bar.class.js +4 -4
- package/dist/components/overlays/progress/progress-base.d.ts +25 -0
- package/dist/components/overlays/progress/progress-base.js +1 -0
- package/dist/components/overlays/progress/progress-ring.class.d.ts +3 -24
- package/dist/components/overlays/progress/progress-ring.class.js +4 -4
- package/dist/components/overlays/rating/rating.class.d.ts +3 -3
- package/dist/components/overlays/rating/rating.class.js +1 -1
- package/dist/components/overlays/skeleton/skeleton.class.js +1 -1
- package/dist/components/overlays/spinner/spinner.class.js +1 -1
- package/dist/components/overlays/toast/toast-item.class.js +1 -1
- package/dist/components/overlays/toast/toast.class.js +1 -1
- package/dist/components/retrieval/chunk-inspector/chunk-inspector.class.d.ts +4 -2
- package/dist/components/retrieval/chunk-inspector/chunk-inspector.class.js +4 -4
- package/dist/components/retrieval/citation-badge/citation-badge.class.js +1 -1
- package/dist/components/retrieval/claim-evidence/claim-evidence.class.js +1 -1
- package/dist/components/retrieval/community-card/community-card.class.js +1 -1
- package/dist/components/retrieval/embedding-explorer/embedding-explorer.class.js +1 -1
- package/dist/components/retrieval/entity-card/entity-card.class.js +1 -1
- package/dist/components/retrieval/entity-chip/entity-chip.class.js +1 -1
- package/dist/components/retrieval/entity-dossier/entity-dossier.class.d.ts +1 -1
- package/dist/components/retrieval/entity-dossier/entity-dossier.class.js +1 -1
- package/dist/components/retrieval/graph/graph-canvas.js +1 -1
- package/dist/components/retrieval/graph/graph-model.js +1 -1
- package/dist/components/retrieval/graph/graph.class.d.ts +1 -3
- package/dist/components/retrieval/graph/graph.class.js +1 -1
- package/dist/components/retrieval/graph-legend/graph-legend.class.js +1 -1
- package/dist/components/retrieval/grounding-summary/grounding-summary.class.d.ts +1 -1
- package/dist/components/retrieval/grounding-summary/grounding-summary.class.js +2 -2
- package/dist/components/retrieval/ingestion-queue/ingestion-queue.class.js +1 -1
- package/dist/components/retrieval/knowledge-base/knowledge-base.class.d.ts +1 -1
- package/dist/components/retrieval/knowledge-base/knowledge-base.class.js +2 -2
- package/dist/components/retrieval/knowledge-base-admin/knowledge-base-admin.class.js +1 -1
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +1 -0
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js +2 -1
- package/dist/components/retrieval/memory-panel/memory-panel.class.d.ts +6 -2
- package/dist/components/retrieval/memory-panel/memory-panel.class.js +2 -2
- package/dist/components/retrieval/memory-panel/memory-panel.styles.js +1 -1
- package/dist/components/retrieval/mind-map/mind-map.class.js +1 -1
- package/dist/components/retrieval/neighbor-list/neighbor-list.class.js +1 -1
- package/dist/components/retrieval/node-palette/node-palette.class.js +1 -1
- package/dist/components/retrieval/path-strip/path-strip.class.js +1 -1
- package/dist/components/retrieval/provenance-panel/provenance-panel.class.d.ts +1 -1
- package/dist/components/retrieval/provenance-panel/provenance-panel.class.js +1 -1
- package/dist/components/retrieval/rag-answer/rag-answer.class.js +1 -1
- package/dist/components/retrieval/rag-eval-dashboard/rag-eval-dashboard.class.js +1 -1
- package/dist/components/retrieval/research-progress/research-progress.class.d.ts +5 -1
- package/dist/components/retrieval/research-progress/research-progress.class.js +3 -3
- package/dist/components/retrieval/research-progress/research-progress.d.ts +1 -1
- package/dist/components/retrieval/research-progress/research-progress.js +1 -1
- package/dist/components/retrieval/research-progress/research-progress.styles.js +1 -1
- package/dist/components/retrieval/retrieval-compare/retrieval-compare.class.d.ts +6 -2
- package/dist/components/retrieval/retrieval-compare/retrieval-compare.class.js +2 -2
- package/dist/components/retrieval/retrieval-compare/retrieval-compare.styles.js +1 -1
- package/dist/components/retrieval/retrieval-results/retrieval-results.class.d.ts +2 -2
- package/dist/components/retrieval/retrieval-results/retrieval-results.class.js +3 -2
- package/dist/components/retrieval/retrieval-search/retrieval-search.class.js +3 -3
- package/dist/components/retrieval/retrieval-trace/retrieval-trace.class.d.ts +6 -2
- package/dist/components/retrieval/retrieval-trace/retrieval-trace.class.js +2 -2
- package/dist/components/retrieval/retrieval-trace/retrieval-trace.styles.js +1 -1
- package/dist/components/retrieval/source-card/source-card.class.js +1 -1
- package/dist/components/retrieval/source-list/source-list.class.js +1 -1
- package/dist/components/retrieval/source-picker/source-picker.class.js +1 -1
- package/dist/components/utility/copy-button/copy-button.class.js +1 -1
- package/dist/components/utility/diff-view/diff-view.class.js +1 -1
- package/dist/components/utility/export-button/export-button.class.d.ts +1 -1
- package/dist/components/utility/export-button/export-button.class.js +1 -1
- package/dist/components/utility/icon/dompurify-loader.js +1 -1
- package/dist/components/utility/icon/icon.class.js +1 -1
- package/dist/components/utility/json-viewer/json-viewer.class.js +2 -2
- package/dist/components/utility/known-date/known-date.class.js +1 -1
- package/dist/components/utility/mention-popover/mention-popover.class.js +1 -1
- package/dist/components/utility/mutation-observer/mutation-observer.class.js +1 -1
- package/dist/components/utility/poll-status/poll-status.class.js +1 -1
- package/dist/components/utility/random-content/random-content.class.d.ts +1 -1
- package/dist/components/utility/random-content/random-content.class.js +1 -1
- package/dist/components/utility/tour/tour.class.d.ts +1 -1
- package/dist/components/utility/tour/tour.class.js +1 -1
- package/dist/components/viewers/archive-viewer/archive-viewer.class.js +1 -1
- package/dist/components/viewers/archive-viewer/archive-viewer.styles.js +1 -1
- package/dist/components/viewers/calendar-viewer/calendar-viewer.class.d.ts +3 -1
- package/dist/components/viewers/calendar-viewer/calendar-viewer.class.js +1 -1
- package/dist/components/viewers/contact-viewer/contact-viewer.class.d.ts +3 -1
- package/dist/components/viewers/contact-viewer/contact-viewer.class.js +2 -2
- package/dist/components/viewers/csv-viewer/csv-viewer.class.d.ts +2 -2
- package/dist/components/viewers/csv-viewer/csv-viewer.class.js +4 -18
- package/dist/components/viewers/csv-viewer/csv-viewer.styles.js +1 -1
- package/dist/components/viewers/dataset-viewer/dataset-viewer.class.d.ts +2 -2
- package/dist/components/viewers/dataset-viewer/dataset-viewer.class.js +4 -18
- package/dist/components/viewers/dataset-viewer/dataset-viewer.styles.js +1 -1
- package/dist/components/viewers/document-compare/document-compare.class.js +1 -1
- package/dist/components/viewers/document-preview/document-preview.class.d.ts +1 -1
- package/dist/components/viewers/document-preview/document-preview.class.js +3 -16
- package/dist/components/viewers/document-viewer/document-viewer.class.js +1 -1
- package/dist/components/viewers/document-viewer/ooxml-part-guard.js +1 -0
- package/dist/components/viewers/docx-viewer/docx-loader.js +1 -1
- package/dist/components/viewers/docx-viewer/docx-resource-guard.js +1 -1
- package/dist/components/viewers/docx-viewer/docx-viewer.class.d.ts +3 -3
- package/dist/components/viewers/docx-viewer/docx-viewer.class.js +3 -3
- package/dist/components/viewers/ebook-viewer/ebook-loader.js +1 -1
- package/dist/components/viewers/ebook-viewer/ebook-viewer.class.d.ts +1 -1
- package/dist/components/viewers/ebook-viewer/ebook-viewer.class.js +2 -1
- package/dist/components/viewers/ebook-viewer/epub-resource-guard.js +1 -1
- package/dist/components/viewers/email-viewer/email-viewer.class.d.ts +1 -1
- package/dist/components/viewers/email-viewer/email-viewer.class.js +2 -2
- package/dist/components/viewers/geojson-view/geojson-view.class.js +1 -1
- package/dist/components/viewers/geojson-view/geojson-viewer.class.d.ts +1 -4
- package/dist/components/viewers/geojson-view/geojson-viewer.class.js +1 -1
- package/dist/components/viewers/highlight-layer/highlight-layer.class.js +1 -1
- package/dist/components/viewers/html-viewer/html-viewer.class.d.ts +3 -1
- package/dist/components/viewers/html-viewer/html-viewer.class.js +1 -1
- package/dist/components/viewers/html-viewer/html-viewer.styles.js +1 -1
- package/dist/components/viewers/include/include.class.js +1 -1
- package/dist/components/viewers/notebook-viewer/dompurify-loader.js +1 -1
- package/dist/components/viewers/notebook-viewer/notebook-viewer.class.js +2 -2
- package/dist/components/viewers/page-rail/page-rail.class.d.ts +1 -1
- package/dist/components/viewers/page-rail/page-rail.class.js +3 -3
- package/dist/components/viewers/passive-markup.js +1 -1
- package/dist/components/viewers/pdf-viewer/pdf-loader.js +1 -1
- package/dist/components/viewers/pdf-viewer/pdf-viewer.class.d.ts +3 -3
- package/dist/components/viewers/pdf-viewer/pdf-viewer.class.js +4 -4
- package/dist/components/viewers/pptx-viewer/pptx-loader.js +1 -1
- package/dist/components/viewers/pptx-viewer/pptx-resource-guard.js +1 -1
- package/dist/components/viewers/pptx-viewer/pptx-viewer.class.js +1 -1
- package/dist/components/viewers/region-highlight-layer.js +15 -2
- package/dist/components/viewers/spreadsheet-viewer/spreadsheet-viewer.class.d.ts +2 -2
- package/dist/components/viewers/spreadsheet-viewer/spreadsheet-viewer.class.js +4 -18
- package/dist/components/viewers/spreadsheet-viewer/spreadsheet-viewer.styles.js +1 -1
- package/dist/components/viewers/svg-viewer/svg-viewer.class.d.ts +1 -1
- package/dist/components/viewers/svg-viewer/svg-viewer.class.js +2 -15
- package/dist/components/viewers/svg-viewer/svg-viewer.styles.js +1 -1
- package/dist/components/viewers/table-viewer-shared.js +15 -1
- package/dist/components/viewers/table-viewer-shared.styles.js +1 -0
- package/dist/components/viewers/xml-viewer/xml-viewer.class.js +1 -1
- package/dist/events.d.ts +25 -19
- package/dist/framework-types.d.ts +1 -1
- package/dist/internal/accessibility-visibility.d.ts +3 -1
- package/dist/internal/accessibility-visibility.js +1 -1
- package/dist/internal/accessible-text-controller.js +1 -1
- package/dist/internal/active-element.d.ts +11 -0
- package/dist/internal/active-element.js +1 -1
- package/dist/internal/adjacent-runs.js +1 -1
- package/dist/internal/approval-wait-until.d.ts +7 -0
- package/dist/internal/approval-wait-until.js +1 -0
- package/dist/internal/aria-controls.js +1 -1
- package/dist/internal/catalog-picker.d.ts +2 -2
- package/dist/internal/catalog-picker.js +1 -1
- package/dist/internal/collection-snapshot.js +1 -1
- package/dist/internal/composed-tree.d.ts +18 -0
- package/dist/internal/composed-tree.js +1 -1
- package/dist/internal/copy-feedback.js +1 -0
- package/dist/internal/css-length.js +1 -1
- package/dist/internal/css-motion-time.js +1 -1
- package/dist/internal/css-number.js +1 -0
- package/dist/internal/default-strings/agent-tools.generated.js +1 -0
- package/dist/internal/default-strings/charts.generated.js +1 -0
- package/dist/internal/default-strings/conversation.generated.js +1 -0
- package/dist/internal/default-strings/data.generated.js +1 -0
- package/dist/internal/default-strings/forms.generated.js +1 -0
- package/dist/internal/default-strings/layout.generated.js +1 -0
- package/dist/internal/default-strings/media.generated.js +1 -0
- package/dist/internal/default-strings/overlays.generated.js +1 -0
- package/dist/internal/default-strings/retrieval.generated.js +1 -0
- package/dist/internal/default-strings/shared.generated.js +1 -0
- package/dist/internal/default-strings/utility.generated.js +1 -0
- package/dist/internal/default-strings/viewers.generated.js +5 -0
- package/dist/internal/deferred-focus-return.d.ts +33 -0
- package/dist/internal/deferred-focus-return.js +1 -1
- package/dist/internal/dev-mode-attribute-warning.development.js +1 -1
- package/dist/internal/dev-mode-attribute-warning.production.js +1 -1
- package/dist/internal/document-tokens.d.ts +11 -0
- package/dist/internal/document-tokens.generated.js +15 -0
- package/dist/internal/document-tokens.js +3 -0
- package/dist/internal/fixed-containing-block.js +1 -1
- package/dist/internal/form-associated.d.ts +39 -3
- package/dist/internal/form-associated.js +1 -1
- package/dist/internal/form-control-element.d.ts +13 -0
- package/dist/internal/form-control-element.js +1 -0
- package/dist/internal/form-control.styles.js +1 -1
- package/dist/internal/glass-surface.styles.js +1 -1
- package/dist/internal/host-tokens.styles.js +1 -0
- package/dist/internal/image-zoom.js +1 -0
- package/dist/internal/inherited-attribute-hub.js +1 -1
- package/dist/internal/intl-cache.js +1 -1
- package/dist/internal/locale-loaders.generated.js +1 -1
- package/dist/internal/localization-types.d.ts +1 -1
- package/dist/internal/localization.js +2 -2
- package/dist/internal/lyra-element.d.ts +4 -2
- package/dist/internal/lyra-element.js +2 -2
- package/dist/internal/modal-surface-controller.js +1 -1
- package/dist/internal/object-guards.js +1 -1
- package/dist/internal/opaque-content-border.styles.js +1 -1
- package/dist/internal/open-overlay-raise.styles.js +1 -0
- package/dist/internal/optional-peer-capabilities.d.ts +3 -1
- package/dist/internal/optional-peer-capabilities.js +1 -1
- package/dist/internal/optional-peer-failure.js +1 -0
- package/dist/internal/orientation-breakpoint.js +1 -1
- package/dist/internal/overlay-manager.d.ts +6 -1
- package/dist/internal/overlay-manager.js +1 -1
- package/dist/internal/overlay-stack.d.ts +7 -3
- package/dist/internal/overlay-stack.js +1 -1
- package/dist/internal/package-metadata.js +1 -1
- package/dist/internal/persisted-restore.js +1 -1
- package/dist/internal/popup-controller.js +1 -0
- package/dist/internal/prefix.js +1 -1
- package/dist/internal/rendered-tree-traversal.d.ts +3 -1
- package/dist/internal/rendered-tree-traversal.js +1 -1
- package/dist/internal/retry-forwarder.js +1 -0
- package/dist/internal/roving-toolbar.js +1 -1
- package/dist/internal/scoped-definitions.generated.js +1 -1
- package/dist/internal/score-tiers.d.ts +4 -0
- package/dist/internal/score-tiers.js +1 -0
- package/dist/internal/semantic-variant.d.ts +7 -0
- package/dist/internal/semantic-variant.js +1 -0
- package/dist/internal/shared-unions.d.ts +1 -1
- package/dist/internal/specialist-host-tokens.styles.js +1 -0
- package/dist/internal/specialist-tokens.generated.js +2 -0
- package/dist/internal/step-value.js +1 -1
- package/dist/internal/theme-observation.js +1 -1
- package/dist/internal/theme-scopes.d.ts +11 -0
- package/dist/internal/theme-scopes.js +1 -0
- package/dist/internal/viewer-search.js +1 -1
- package/dist/looks/shadcn.css +1 -1
- package/dist/lyra.d.ts +1 -1
- package/dist/lyra.js +1 -1
- package/dist/styles/design-tokens.css +1 -1
- package/dist/styles/tokens-root.css +1 -1
- package/dist/surfaces/glass.css +1 -1
- package/dist/testing/happy-dom-shims.d.ts +37 -0
- package/dist/testing/happy-dom-shims.js +1 -1
- package/dist/testing/index.d.ts +1 -1
- package/dist/testing/index.js +1 -1
- package/dist/testing/interaction-drivers.d.ts +66 -7
- package/dist/testing/interaction-drivers.js +1 -1
- package/dist/testing/jsdom-shims.d.ts +70 -0
- package/dist/testing/jsdom-shims.js +1 -0
- package/dist/theme/look-inputs.d.ts +1 -1
- package/dist/theme/look-inputs.js +37 -41
- package/dist/theme/theme.d.ts +13 -0
- package/dist/theme/theme.js +1 -1
- package/dist/theme.css +1 -1
- package/dist/utilities/index.d.ts +1 -1
- package/dist/utilities/index.js +1 -1
- package/dist/utilities/scoped-registry.d.ts +3 -0
- package/dist/utilities/scoped-registry.js +1 -1
- package/dist/utilities/theme-scopes.d.ts +1 -0
- package/dist/utilities/theme-scopes.js +1 -0
- package/dist/utilities/tokens.d.ts +1 -0
- package/dist/utilities/tokens.js +1 -0
- package/llms/components/lr-accordion-item.md +1 -1
- package/llms/components/lr-accordion.md +1 -1
- package/llms/components/lr-alert.md +2 -2
- package/llms/components/lr-app-rail-group.md +1 -1
- package/llms/components/lr-app-rail-item.md +1 -1
- package/llms/components/lr-app-rail.md +52 -5
- package/llms/components/lr-attachment-chip.md +1 -10
- package/llms/components/lr-attachment-trigger.md +0 -10
- package/llms/components/lr-avatar.md +4 -8
- package/llms/components/lr-badge.md +16 -20
- package/llms/components/lr-box-plot.md +1 -1
- package/llms/components/lr-breadcrumb-item.md +1 -1
- package/llms/components/lr-breadcrumb.md +1 -1
- package/llms/components/lr-button-group.md +1 -1
- package/llms/components/lr-button.md +1 -1
- package/llms/components/lr-calendar.md +1 -1
- package/llms/components/lr-callout.md +3 -13
- package/llms/components/lr-card.md +1 -1
- package/llms/components/lr-carousel-item.md +1 -1
- package/llms/components/lr-carousel.md +1 -1
- package/llms/components/lr-chart.md +5 -7
- package/llms/components/lr-checkbox-group.md +1 -1
- package/llms/components/lr-checkbox.md +2 -1
- package/llms/components/lr-chip.md +3 -17
- package/llms/components/lr-chunk-inspector.md +2 -1
- package/llms/components/lr-citation-badge.md +2 -2
- package/llms/components/lr-code-block.md +0 -10
- package/llms/components/lr-code-editor.md +1 -1
- package/llms/components/lr-color-picker.md +1 -1
- package/llms/components/lr-combobox.md +6 -3
- package/llms/components/lr-command-palette.md +5 -2
- package/llms/components/lr-commit-card.md +1 -3
- package/llms/components/lr-condition-builder.md +1 -1
- package/llms/components/lr-confirm-bar.md +7 -13
- package/llms/components/lr-connector-manager.md +3 -1
- package/llms/components/lr-context-inspector.md +1 -1
- package/llms/components/lr-context-meter.md +1 -1
- package/llms/components/lr-control-group.md +1 -1
- package/llms/components/lr-copy-button.md +8 -10
- package/llms/components/lr-country-picker.md +1 -1
- package/llms/components/lr-currency-picker.md +1 -1
- package/llms/components/lr-dashboard-grid.md +1 -1
- package/llms/components/lr-data-grid.md +1 -1
- package/llms/components/lr-date-input.md +1 -1
- package/llms/components/lr-date-picker.md +11 -4
- package/llms/components/lr-details.md +1 -1
- package/llms/components/lr-dialog.md +8 -31
- package/llms/components/lr-diff-view.md +1 -1
- package/llms/components/lr-divider.md +1 -1
- package/llms/components/lr-dock-panel.md +1 -1
- package/llms/components/lr-document-library.md +1 -1
- package/llms/components/lr-drawer.md +1 -13
- package/llms/components/lr-drilldown-panel.md +1 -1
- package/llms/components/lr-drop-zone.md +4 -0
- package/llms/components/lr-dropdown-item.md +1 -1
- package/llms/components/lr-ebook-viewer.md +4 -3
- package/llms/components/lr-emoji-picker.md +14 -9
- package/llms/components/lr-entity-chip.md +2 -2
- package/llms/components/lr-env-list.md +1 -1
- package/llms/components/lr-eval-dataset.md +4 -19
- package/llms/components/lr-export-button.md +3 -3
- package/llms/components/lr-file-icon.md +0 -5
- package/llms/components/lr-file-input.md +3 -5
- package/llms/components/lr-file-tree.md +1 -1
- package/llms/components/lr-filter-bar.md +5 -1
- package/llms/components/lr-flag.md +1 -2
- package/llms/components/lr-flow-canvas.md +1 -1
- package/llms/components/lr-flow-controls.md +1 -1
- package/llms/components/lr-flow-minimap.md +2 -2
- package/llms/components/lr-flow-node.md +1 -1
- package/llms/components/lr-flow-run-status.md +1 -1
- package/llms/components/lr-format-bytes.md +2 -3
- package/llms/components/lr-format-date.md +2 -3
- package/llms/components/lr-format-number.md +1 -1
- package/llms/components/lr-funnel.md +1 -1
- package/llms/components/lr-gauge.md +1 -1
- package/llms/components/lr-generation-metrics.md +1 -1
- package/llms/components/lr-graph-query-builder.md +1 -1
- package/llms/components/lr-heatmap.md +1 -1
- package/llms/components/lr-icon-button.md +14 -2
- package/llms/components/lr-icon.md +1 -1
- package/llms/components/lr-image-viewer.md +8 -0
- package/llms/components/lr-input.md +1 -1
- package/llms/components/lr-intersection-observer.md +1 -1
- package/llms/components/lr-json-viewer.md +1 -1
- package/llms/components/lr-knowledge-graph-explorer.md +2 -2
- package/llms/components/lr-known-date.md +1 -1
- package/llms/components/lr-lite-chart.md +3 -4
- package/llms/components/lr-live-region.md +1 -1
- package/llms/components/lr-locale-picker.md +1 -1
- package/llms/components/lr-map.md +1 -3
- package/llms/components/lr-media-card.md +1 -10
- package/llms/components/lr-memory-panel.md +2 -0
- package/llms/components/lr-mention-popover.md +3 -3
- package/llms/components/lr-menu-item.md +1 -1
- package/llms/components/lr-menu-label.md +1 -1
- package/llms/components/lr-menu.md +1 -1
- package/llms/components/lr-menubar-item.md +1 -1
- package/llms/components/lr-menubar.md +1 -1
- package/llms/components/lr-message-actions.md +1 -11
- package/llms/components/lr-message-parts.md +3 -5
- package/llms/components/lr-model-select.md +2 -4
- package/llms/components/lr-multi-split.md +1 -1
- package/llms/components/lr-mutation-observer.md +2 -2
- package/llms/components/lr-native-time-input.md +1 -1
- package/llms/components/lr-navigation-menu-item.md +1 -1
- package/llms/components/lr-navigation-menu.md +1 -1
- package/llms/components/lr-number-input.md +1 -1
- package/llms/components/lr-option.md +1 -1
- package/llms/components/lr-otp-input.md +1 -1
- package/llms/components/lr-page.md +1 -1
- package/llms/components/lr-pagination.md +5 -3
- package/llms/components/lr-pan-zoom.md +1 -3
- package/llms/components/lr-permission-grant.md +3 -1
- package/llms/components/lr-phone-input.md +7 -5
- package/llms/components/lr-poll-status.md +1 -1
- package/llms/components/lr-popover.md +5 -9
- package/llms/components/lr-popup.md +1 -3
- package/llms/components/lr-progress-bar.md +2 -1
- package/llms/components/lr-progress-ring.md +4 -8
- package/llms/components/lr-prompt-input.md +3 -1
- package/llms/components/lr-prompt-studio.md +4 -4
- package/llms/components/lr-radio-button.md +2 -2
- package/llms/components/lr-radio-group.md +1 -1
- package/llms/components/lr-radio.md +3 -2
- package/llms/components/lr-random-content.md +1 -1
- package/llms/components/lr-rating.md +2 -3
- package/llms/components/lr-relative-time.md +2 -3
- package/llms/components/lr-reorder-item.md +1 -1
- package/llms/components/lr-reorder-list.md +1 -1
- package/llms/components/lr-research-progress.md +2 -0
- package/llms/components/lr-resize-observer.md +1 -1
- package/llms/components/lr-responsive-panel.md +1 -1
- package/llms/components/lr-retrieval-compare.md +2 -0
- package/llms/components/lr-retrieval-trace.md +2 -0
- package/llms/components/lr-rubric-form.md +1 -1
- package/llms/components/lr-scroller.md +1 -1
- package/llms/components/lr-segmented.md +8 -4
- package/llms/components/lr-select.md +1 -1
- package/llms/components/lr-sequence-playback.md +1 -2
- package/llms/components/lr-sequence-strip.md +1 -1
- package/llms/components/lr-signature-pad.md +1 -1
- package/llms/components/lr-skeleton.md +2 -4
- package/llms/components/lr-slider.md +1 -1
- package/llms/components/lr-sparkline.md +1 -1
- package/llms/components/lr-split-panel.md +1 -1
- package/llms/components/lr-stat.md +1 -1
- package/llms/components/lr-stepper.md +1 -1
- package/llms/components/lr-swatch-picker.md +1 -1
- package/llms/components/lr-switch.md +2 -1
- package/llms/components/lr-tab-group.md +1 -1
- package/llms/components/lr-tab-panel.md +1 -1
- package/llms/components/lr-tab.md +1 -1
- package/llms/components/lr-table.md +16 -14
- package/llms/components/lr-task-list.md +3 -3
- package/llms/components/lr-test-results.md +2 -4
- package/llms/components/lr-textarea.md +1 -1
- package/llms/components/lr-thread-list.md +4 -3
- package/llms/components/lr-time-input.md +1 -1
- package/llms/components/lr-time-range.md +5 -4
- package/llms/components/lr-time-zone-picker.md +1 -1
- package/llms/components/lr-timeline-item.md +1 -1
- package/llms/components/lr-timeline.md +1 -1
- package/llms/components/lr-toggle-group.md +1 -1
- package/llms/components/lr-toggle.md +1 -1
- package/llms/components/lr-token-input.md +1 -1
- package/llms/components/lr-tool-approval-dialog.md +12 -10
- package/llms/components/lr-tool-call-block.md +1 -1
- package/llms/components/lr-tool-call-chip.md +1 -3
- package/llms/components/lr-tool-result-view.md +3 -3
- package/llms/components/lr-tool-timeline.md +2 -2
- package/llms/components/lr-tooltip.md +8 -11
- package/llms/components/lr-tour.md +2 -2
- package/llms/components/lr-tree-item.md +1 -1
- package/llms/components/lr-tree.md +1 -1
- package/llms/components/lr-unit-picker.md +1 -1
- package/llms/components/lr-usage-badge.md +1 -3
- package/llms/components/lr-video.md +1 -2
- package/llms/components/lr-virtual-list.md +1 -1
- package/llms/components/lr-visually-hidden.md +1 -1
- package/llms/components/lr-voice-picker.md +1 -1
- package/llms/components/lr-widget.md +1 -1
- package/llms/components/lr-word-cloud.md +1 -1
- package/llms/components/lr-zoomable-frame.md +1 -6
- package/llms/migration.md +105 -2
- package/llms/peers.md +3 -2
- package/llms/shared/ai-and-peers.md +2 -2
- package/llms/shared/events-and-types.md +45 -1
- package/llms/shared/frameworks-and-ssr.md +16 -0
- package/llms/shared/imports-and-registration.md +6 -5
- package/llms/shared/localization-and-rtl.md +18 -18
- package/llms/shared/native-styles-and-utilities.md +38 -3
- package/llms/shared/styles-and-tokens.md +243 -103
- package/llms/shared/testing-and-utilities.md +134 -49
- package/llms/shared.md +502 -181
- package/llms/tokens.md +31 -49
- package/llms.txt +14 -12
- package/locales.json +1002 -1002
- package/package.json +28 -6884
- package/registrations.json +1 -1
- package/skills/compose-lyra-interfaces/SKILL.md +60 -0
- package/skills/compose-lyra-interfaces/agents/openai.yaml +4 -0
- package/skills/compose-lyra-interfaces/references/composition-patterns.md +77 -0
- package/skills/lyra-ui/SKILL.md +145 -0
- package/skills/lyra-ui/commands/frontend.md +37 -0
- package/skills/lyra-ui/commands/migrate.md +44 -0
- package/skills/lyra-ui/commands/new-component.md +19 -0
- package/skills/lyra-ui/commands/review.md +247 -0
- package/skills/lyra-ui/commands/update.md +30 -0
- package/skills/lyra-ui/reporting.md +137 -0
- package/custom-elements.json +0 -1
- package/dist/internal/default-strings.generated.js +0 -5
- package/dist/internal/side-effect-only.d.ts +0 -1
- package/dist/internal/specialist-tokens.styles.js +0 -1
- package/dist/internal/tokens/palette.styles.js +0 -1
- package/dist/internal/tokens.styles.js +0 -1
- package/dist/translations/am/agent-tools.js +0 -1
- package/dist/translations/am/charts.js +0 -1
- package/dist/translations/am/conversation.js +0 -1
- package/dist/translations/am/data.js +0 -1
- package/dist/translations/am/forms.js +0 -1
- package/dist/translations/am/layout.js +0 -1
- package/dist/translations/am/media.js +0 -1
- package/dist/translations/am/overlays.js +0 -1
- package/dist/translations/am/retrieval.js +0 -1
- package/dist/translations/am/shared.js +0 -1
- package/dist/translations/am/utility.js +0 -1
- package/dist/translations/am/viewers.js +0 -5
- package/dist/translations/am.js +0 -1
- package/dist/translations/ar/agent-tools.js +0 -1
- package/dist/translations/ar/charts.js +0 -1
- package/dist/translations/ar/conversation.js +0 -1
- package/dist/translations/ar/data.js +0 -1
- package/dist/translations/ar/forms.js +0 -1
- package/dist/translations/ar/layout.js +0 -1
- package/dist/translations/ar/media.js +0 -1
- package/dist/translations/ar/overlays.js +0 -1
- package/dist/translations/ar/retrieval.js +0 -1
- package/dist/translations/ar/shared.js +0 -1
- package/dist/translations/ar/utility.js +0 -1
- package/dist/translations/ar/viewers.js +0 -5
- package/dist/translations/ar.js +0 -1
- package/dist/translations/bho/agent-tools.js +0 -1
- package/dist/translations/bho/charts.js +0 -1
- package/dist/translations/bho/conversation.js +0 -1
- package/dist/translations/bho/data.js +0 -1
- package/dist/translations/bho/forms.js +0 -1
- package/dist/translations/bho/layout.js +0 -1
- package/dist/translations/bho/media.js +0 -1
- package/dist/translations/bho/overlays.js +0 -1
- package/dist/translations/bho/retrieval.js +0 -1
- package/dist/translations/bho/shared.js +0 -1
- package/dist/translations/bho/utility.js +0 -1
- package/dist/translations/bho/viewers.js +0 -5
- package/dist/translations/bho.js +0 -1
- package/dist/translations/bn/agent-tools.js +0 -1
- package/dist/translations/bn/charts.js +0 -1
- package/dist/translations/bn/conversation.js +0 -1
- package/dist/translations/bn/data.js +0 -1
- package/dist/translations/bn/forms.js +0 -1
- package/dist/translations/bn/layout.js +0 -1
- package/dist/translations/bn/media.js +0 -1
- package/dist/translations/bn/overlays.js +0 -1
- package/dist/translations/bn/retrieval.js +0 -1
- package/dist/translations/bn/shared.js +0 -1
- package/dist/translations/bn/utility.js +0 -1
- package/dist/translations/bn/viewers.js +0 -5
- package/dist/translations/bn.js +0 -1
- package/dist/translations/cs/agent-tools.js +0 -1
- package/dist/translations/cs/charts.js +0 -1
- package/dist/translations/cs/conversation.js +0 -1
- package/dist/translations/cs/data.js +0 -1
- package/dist/translations/cs/forms.js +0 -1
- package/dist/translations/cs/layout.js +0 -1
- package/dist/translations/cs/media.js +0 -1
- package/dist/translations/cs/overlays.js +0 -1
- package/dist/translations/cs/retrieval.js +0 -1
- package/dist/translations/cs/shared.js +0 -1
- package/dist/translations/cs/utility.js +0 -1
- package/dist/translations/cs/viewers.js +0 -5
- package/dist/translations/cs.js +0 -1
- package/dist/translations/da/agent-tools.js +0 -1
- package/dist/translations/da/charts.js +0 -1
- package/dist/translations/da/conversation.js +0 -1
- package/dist/translations/da/data.js +0 -1
- package/dist/translations/da/forms.js +0 -1
- package/dist/translations/da/layout.js +0 -1
- package/dist/translations/da/media.js +0 -1
- package/dist/translations/da/overlays.js +0 -1
- package/dist/translations/da/retrieval.js +0 -1
- package/dist/translations/da/shared.js +0 -1
- package/dist/translations/da/utility.js +0 -1
- package/dist/translations/da/viewers.js +0 -5
- package/dist/translations/da.js +0 -1
- package/dist/translations/de/agent-tools.js +0 -1
- package/dist/translations/de/charts.js +0 -1
- package/dist/translations/de/conversation.js +0 -1
- package/dist/translations/de/data.js +0 -1
- package/dist/translations/de/forms.js +0 -1
- package/dist/translations/de/layout.js +0 -1
- package/dist/translations/de/media.js +0 -1
- package/dist/translations/de/overlays.js +0 -1
- package/dist/translations/de/retrieval.js +0 -1
- package/dist/translations/de/shared.js +0 -1
- package/dist/translations/de/utility.js +0 -1
- package/dist/translations/de/viewers.js +0 -5
- package/dist/translations/de-CH/agent-tools.js +0 -1
- package/dist/translations/de-CH/charts.js +0 -1
- package/dist/translations/de-CH/conversation.js +0 -1
- package/dist/translations/de-CH/data.js +0 -1
- package/dist/translations/de-CH/forms.js +0 -1
- package/dist/translations/de-CH/layout.js +0 -1
- package/dist/translations/de-CH/media.js +0 -1
- package/dist/translations/de-CH/overlays.js +0 -1
- package/dist/translations/de-CH/retrieval.js +0 -1
- package/dist/translations/de-CH/shared.js +0 -1
- package/dist/translations/de-CH/utility.js +0 -1
- package/dist/translations/de-CH/viewers.js +0 -1
- package/dist/translations/de-CH.js +0 -1
- package/dist/translations/de.js +0 -1
- package/dist/translations/el/agent-tools.js +0 -1
- package/dist/translations/el/charts.js +0 -1
- package/dist/translations/el/conversation.js +0 -1
- package/dist/translations/el/data.js +0 -1
- package/dist/translations/el/forms.js +0 -1
- package/dist/translations/el/layout.js +0 -1
- package/dist/translations/el/media.js +0 -1
- package/dist/translations/el/overlays.js +0 -1
- package/dist/translations/el/retrieval.js +0 -1
- package/dist/translations/el/shared.js +0 -1
- package/dist/translations/el/utility.js +0 -1
- package/dist/translations/el/viewers.js +0 -5
- package/dist/translations/el.js +0 -1
- package/dist/translations/es/agent-tools.js +0 -1
- package/dist/translations/es/charts.js +0 -1
- package/dist/translations/es/conversation.js +0 -1
- package/dist/translations/es/data.js +0 -1
- package/dist/translations/es/forms.js +0 -1
- package/dist/translations/es/layout.js +0 -1
- package/dist/translations/es/media.js +0 -1
- package/dist/translations/es/overlays.js +0 -1
- package/dist/translations/es/retrieval.js +0 -1
- package/dist/translations/es/shared.js +0 -1
- package/dist/translations/es/utility.js +0 -1
- package/dist/translations/es/viewers.js +0 -5
- package/dist/translations/es.js +0 -1
- package/dist/translations/fa/agent-tools.js +0 -1
- package/dist/translations/fa/charts.js +0 -1
- package/dist/translations/fa/conversation.js +0 -1
- package/dist/translations/fa/data.js +0 -1
- package/dist/translations/fa/forms.js +0 -1
- package/dist/translations/fa/layout.js +0 -1
- package/dist/translations/fa/media.js +0 -1
- package/dist/translations/fa/overlays.js +0 -1
- package/dist/translations/fa/retrieval.js +0 -1
- package/dist/translations/fa/shared.js +0 -1
- package/dist/translations/fa/utility.js +0 -1
- package/dist/translations/fa/viewers.js +0 -5
- package/dist/translations/fa-AF/agent-tools.js +0 -1
- package/dist/translations/fa-AF/charts.js +0 -1
- package/dist/translations/fa-AF/conversation.js +0 -1
- package/dist/translations/fa-AF/data.js +0 -1
- package/dist/translations/fa-AF/forms.js +0 -1
- package/dist/translations/fa-AF/layout.js +0 -1
- package/dist/translations/fa-AF/media.js +0 -1
- package/dist/translations/fa-AF/overlays.js +0 -1
- package/dist/translations/fa-AF/retrieval.js +0 -1
- package/dist/translations/fa-AF/shared.js +0 -1
- package/dist/translations/fa-AF/utility.js +0 -1
- package/dist/translations/fa-AF/viewers.js +0 -5
- package/dist/translations/fa-AF.js +0 -1
- package/dist/translations/fa.js +0 -1
- package/dist/translations/fi/agent-tools.js +0 -1
- package/dist/translations/fi/charts.js +0 -1
- package/dist/translations/fi/conversation.js +0 -1
- package/dist/translations/fi/data.js +0 -1
- package/dist/translations/fi/forms.js +0 -1
- package/dist/translations/fi/layout.js +0 -1
- package/dist/translations/fi/media.js +0 -1
- package/dist/translations/fi/overlays.js +0 -1
- package/dist/translations/fi/retrieval.js +0 -1
- package/dist/translations/fi/shared.js +0 -1
- package/dist/translations/fi/utility.js +0 -1
- package/dist/translations/fi/viewers.js +0 -5
- package/dist/translations/fi.js +0 -1
- package/dist/translations/fr/agent-tools.js +0 -1
- package/dist/translations/fr/charts.js +0 -1
- package/dist/translations/fr/conversation.js +0 -1
- package/dist/translations/fr/data.js +0 -1
- package/dist/translations/fr/forms.js +0 -1
- package/dist/translations/fr/layout.js +0 -1
- package/dist/translations/fr/media.js +0 -1
- package/dist/translations/fr/overlays.js +0 -1
- package/dist/translations/fr/retrieval.js +0 -1
- package/dist/translations/fr/shared.js +0 -1
- package/dist/translations/fr/utility.js +0 -1
- package/dist/translations/fr/viewers.js +0 -5
- package/dist/translations/fr.js +0 -1
- package/dist/translations/gu/agent-tools.js +0 -1
- package/dist/translations/gu/charts.js +0 -1
- package/dist/translations/gu/conversation.js +0 -1
- package/dist/translations/gu/data.js +0 -1
- package/dist/translations/gu/forms.js +0 -1
- package/dist/translations/gu/layout.js +0 -1
- package/dist/translations/gu/media.js +0 -1
- package/dist/translations/gu/overlays.js +0 -1
- package/dist/translations/gu/retrieval.js +0 -1
- package/dist/translations/gu/shared.js +0 -1
- package/dist/translations/gu/utility.js +0 -1
- package/dist/translations/gu/viewers.js +0 -5
- package/dist/translations/gu.js +0 -1
- package/dist/translations/ha/agent-tools.js +0 -1
- package/dist/translations/ha/charts.js +0 -1
- package/dist/translations/ha/conversation.js +0 -1
- package/dist/translations/ha/data.js +0 -1
- package/dist/translations/ha/forms.js +0 -1
- package/dist/translations/ha/layout.js +0 -1
- package/dist/translations/ha/media.js +0 -1
- package/dist/translations/ha/overlays.js +0 -1
- package/dist/translations/ha/retrieval.js +0 -1
- package/dist/translations/ha/shared.js +0 -1
- package/dist/translations/ha/utility.js +0 -1
- package/dist/translations/ha/viewers.js +0 -5
- package/dist/translations/ha.js +0 -1
- package/dist/translations/he/agent-tools.js +0 -1
- package/dist/translations/he/charts.js +0 -1
- package/dist/translations/he/conversation.js +0 -1
- package/dist/translations/he/data.js +0 -1
- package/dist/translations/he/forms.js +0 -1
- package/dist/translations/he/layout.js +0 -1
- package/dist/translations/he/media.js +0 -1
- package/dist/translations/he/overlays.js +0 -1
- package/dist/translations/he/retrieval.js +0 -1
- package/dist/translations/he/shared.js +0 -1
- package/dist/translations/he/utility.js +0 -1
- package/dist/translations/he/viewers.js +0 -5
- package/dist/translations/he.js +0 -1
- package/dist/translations/hi/agent-tools.js +0 -1
- package/dist/translations/hi/charts.js +0 -1
- package/dist/translations/hi/conversation.js +0 -1
- package/dist/translations/hi/data.js +0 -1
- package/dist/translations/hi/forms.js +0 -1
- package/dist/translations/hi/layout.js +0 -1
- package/dist/translations/hi/media.js +0 -1
- package/dist/translations/hi/overlays.js +0 -1
- package/dist/translations/hi/retrieval.js +0 -1
- package/dist/translations/hi/shared.js +0 -1
- package/dist/translations/hi/utility.js +0 -1
- package/dist/translations/hi/viewers.js +0 -5
- package/dist/translations/hi.js +0 -1
- package/dist/translations/hr/agent-tools.js +0 -1
- package/dist/translations/hr/charts.js +0 -1
- package/dist/translations/hr/conversation.js +0 -1
- package/dist/translations/hr/data.js +0 -1
- package/dist/translations/hr/forms.js +0 -1
- package/dist/translations/hr/layout.js +0 -1
- package/dist/translations/hr/media.js +0 -1
- package/dist/translations/hr/overlays.js +0 -1
- package/dist/translations/hr/retrieval.js +0 -1
- package/dist/translations/hr/shared.js +0 -1
- package/dist/translations/hr/utility.js +0 -1
- package/dist/translations/hr/viewers.js +0 -5
- package/dist/translations/hr.js +0 -1
- package/dist/translations/hu/agent-tools.js +0 -1
- package/dist/translations/hu/charts.js +0 -1
- package/dist/translations/hu/conversation.js +0 -1
- package/dist/translations/hu/data.js +0 -1
- package/dist/translations/hu/forms.js +0 -1
- package/dist/translations/hu/layout.js +0 -1
- package/dist/translations/hu/media.js +0 -1
- package/dist/translations/hu/overlays.js +0 -1
- package/dist/translations/hu/retrieval.js +0 -1
- package/dist/translations/hu/shared.js +0 -1
- package/dist/translations/hu/utility.js +0 -1
- package/dist/translations/hu/viewers.js +0 -5
- package/dist/translations/hu.js +0 -1
- package/dist/translations/id/agent-tools.js +0 -1
- package/dist/translations/id/charts.js +0 -1
- package/dist/translations/id/conversation.js +0 -1
- package/dist/translations/id/data.js +0 -1
- package/dist/translations/id/forms.js +0 -1
- package/dist/translations/id/layout.js +0 -1
- package/dist/translations/id/media.js +0 -1
- package/dist/translations/id/overlays.js +0 -1
- package/dist/translations/id/retrieval.js +0 -1
- package/dist/translations/id/shared.js +0 -1
- package/dist/translations/id/utility.js +0 -1
- package/dist/translations/id/viewers.js +0 -5
- package/dist/translations/id.js +0 -1
- package/dist/translations/ig/agent-tools.js +0 -1
- package/dist/translations/ig/charts.js +0 -1
- package/dist/translations/ig/conversation.js +0 -1
- package/dist/translations/ig/data.js +0 -1
- package/dist/translations/ig/forms.js +0 -1
- package/dist/translations/ig/layout.js +0 -1
- package/dist/translations/ig/media.js +0 -1
- package/dist/translations/ig/overlays.js +0 -1
- package/dist/translations/ig/retrieval.js +0 -1
- package/dist/translations/ig/shared.js +0 -1
- package/dist/translations/ig/utility.js +0 -1
- package/dist/translations/ig/viewers.js +0 -5
- package/dist/translations/ig.js +0 -1
- package/dist/translations/it/agent-tools.js +0 -1
- package/dist/translations/it/charts.js +0 -1
- package/dist/translations/it/conversation.js +0 -1
- package/dist/translations/it/data.js +0 -1
- package/dist/translations/it/forms.js +0 -1
- package/dist/translations/it/layout.js +0 -1
- package/dist/translations/it/media.js +0 -1
- package/dist/translations/it/overlays.js +0 -1
- package/dist/translations/it/retrieval.js +0 -1
- package/dist/translations/it/shared.js +0 -1
- package/dist/translations/it/utility.js +0 -1
- package/dist/translations/it/viewers.js +0 -5
- package/dist/translations/it.js +0 -1
- package/dist/translations/ja/agent-tools.js +0 -1
- package/dist/translations/ja/charts.js +0 -1
- package/dist/translations/ja/conversation.js +0 -1
- package/dist/translations/ja/data.js +0 -1
- package/dist/translations/ja/forms.js +0 -1
- package/dist/translations/ja/layout.js +0 -1
- package/dist/translations/ja/media.js +0 -1
- package/dist/translations/ja/overlays.js +0 -1
- package/dist/translations/ja/retrieval.js +0 -1
- package/dist/translations/ja/shared.js +0 -1
- package/dist/translations/ja/utility.js +0 -1
- package/dist/translations/ja/viewers.js +0 -4
- package/dist/translations/ja.js +0 -1
- package/dist/translations/jv/agent-tools.js +0 -1
- package/dist/translations/jv/charts.js +0 -1
- package/dist/translations/jv/conversation.js +0 -1
- package/dist/translations/jv/data.js +0 -1
- package/dist/translations/jv/forms.js +0 -1
- package/dist/translations/jv/layout.js +0 -1
- package/dist/translations/jv/media.js +0 -1
- package/dist/translations/jv/overlays.js +0 -1
- package/dist/translations/jv/retrieval.js +0 -1
- package/dist/translations/jv/shared.js +0 -1
- package/dist/translations/jv/utility.js +0 -1
- package/dist/translations/jv/viewers.js +0 -5
- package/dist/translations/jv.js +0 -1
- package/dist/translations/kk/agent-tools.js +0 -1
- package/dist/translations/kk/charts.js +0 -1
- package/dist/translations/kk/conversation.js +0 -1
- package/dist/translations/kk/data.js +0 -1
- package/dist/translations/kk/forms.js +0 -1
- package/dist/translations/kk/layout.js +0 -1
- package/dist/translations/kk/media.js +0 -1
- package/dist/translations/kk/overlays.js +0 -1
- package/dist/translations/kk/retrieval.js +0 -1
- package/dist/translations/kk/shared.js +0 -1
- package/dist/translations/kk/utility.js +0 -1
- package/dist/translations/kk/viewers.js +0 -5
- package/dist/translations/kk.js +0 -1
- package/dist/translations/kn/agent-tools.js +0 -1
- package/dist/translations/kn/charts.js +0 -1
- package/dist/translations/kn/conversation.js +0 -1
- package/dist/translations/kn/data.js +0 -1
- package/dist/translations/kn/forms.js +0 -1
- package/dist/translations/kn/layout.js +0 -1
- package/dist/translations/kn/media.js +0 -1
- package/dist/translations/kn/overlays.js +0 -1
- package/dist/translations/kn/retrieval.js +0 -1
- package/dist/translations/kn/shared.js +0 -1
- package/dist/translations/kn/utility.js +0 -1
- package/dist/translations/kn/viewers.js +0 -5
- package/dist/translations/kn.js +0 -1
- package/dist/translations/ko/agent-tools.js +0 -1
- package/dist/translations/ko/charts.js +0 -1
- package/dist/translations/ko/conversation.js +0 -1
- package/dist/translations/ko/data.js +0 -1
- package/dist/translations/ko/forms.js +0 -1
- package/dist/translations/ko/layout.js +0 -1
- package/dist/translations/ko/media.js +0 -1
- package/dist/translations/ko/overlays.js +0 -1
- package/dist/translations/ko/retrieval.js +0 -1
- package/dist/translations/ko/shared.js +0 -1
- package/dist/translations/ko/utility.js +0 -1
- package/dist/translations/ko/viewers.js +0 -5
- package/dist/translations/ko.js +0 -1
- package/dist/translations/ln/agent-tools.js +0 -1
- package/dist/translations/ln/charts.js +0 -1
- package/dist/translations/ln/conversation.js +0 -1
- package/dist/translations/ln/data.js +0 -1
- package/dist/translations/ln/forms.js +0 -1
- package/dist/translations/ln/layout.js +0 -1
- package/dist/translations/ln/media.js +0 -1
- package/dist/translations/ln/overlays.js +0 -1
- package/dist/translations/ln/retrieval.js +0 -1
- package/dist/translations/ln/shared.js +0 -1
- package/dist/translations/ln/utility.js +0 -1
- package/dist/translations/ln/viewers.js +0 -5
- package/dist/translations/ln.js +0 -1
- package/dist/translations/ml/agent-tools.js +0 -1
- package/dist/translations/ml/charts.js +0 -1
- package/dist/translations/ml/conversation.js +0 -1
- package/dist/translations/ml/data.js +0 -1
- package/dist/translations/ml/forms.js +0 -1
- package/dist/translations/ml/layout.js +0 -1
- package/dist/translations/ml/media.js +0 -1
- package/dist/translations/ml/overlays.js +0 -1
- package/dist/translations/ml/retrieval.js +0 -1
- package/dist/translations/ml/shared.js +0 -1
- package/dist/translations/ml/utility.js +0 -1
- package/dist/translations/ml/viewers.js +0 -5
- package/dist/translations/ml.js +0 -1
- package/dist/translations/mr/agent-tools.js +0 -1
- package/dist/translations/mr/charts.js +0 -1
- package/dist/translations/mr/conversation.js +0 -1
- package/dist/translations/mr/data.js +0 -1
- package/dist/translations/mr/forms.js +0 -1
- package/dist/translations/mr/layout.js +0 -1
- package/dist/translations/mr/media.js +0 -1
- package/dist/translations/mr/overlays.js +0 -1
- package/dist/translations/mr/retrieval.js +0 -1
- package/dist/translations/mr/shared.js +0 -1
- package/dist/translations/mr/utility.js +0 -1
- package/dist/translations/mr/viewers.js +0 -5
- package/dist/translations/mr.js +0 -1
- package/dist/translations/ms/agent-tools.js +0 -1
- package/dist/translations/ms/charts.js +0 -1
- package/dist/translations/ms/conversation.js +0 -1
- package/dist/translations/ms/data.js +0 -1
- package/dist/translations/ms/forms.js +0 -1
- package/dist/translations/ms/layout.js +0 -1
- package/dist/translations/ms/media.js +0 -1
- package/dist/translations/ms/overlays.js +0 -1
- package/dist/translations/ms/retrieval.js +0 -1
- package/dist/translations/ms/shared.js +0 -1
- package/dist/translations/ms/utility.js +0 -1
- package/dist/translations/ms/viewers.js +0 -5
- package/dist/translations/ms.js +0 -1
- package/dist/translations/my/agent-tools.js +0 -1
- package/dist/translations/my/charts.js +0 -1
- package/dist/translations/my/conversation.js +0 -1
- package/dist/translations/my/data.js +0 -1
- package/dist/translations/my/forms.js +0 -1
- package/dist/translations/my/layout.js +0 -1
- package/dist/translations/my/media.js +0 -1
- package/dist/translations/my/overlays.js +0 -1
- package/dist/translations/my/retrieval.js +0 -1
- package/dist/translations/my/shared.js +0 -1
- package/dist/translations/my/utility.js +0 -1
- package/dist/translations/my/viewers.js +0 -5
- package/dist/translations/my.js +0 -1
- package/dist/translations/nb/agent-tools.js +0 -1
- package/dist/translations/nb/charts.js +0 -1
- package/dist/translations/nb/conversation.js +0 -1
- package/dist/translations/nb/data.js +0 -1
- package/dist/translations/nb/forms.js +0 -1
- package/dist/translations/nb/layout.js +0 -1
- package/dist/translations/nb/media.js +0 -1
- package/dist/translations/nb/overlays.js +0 -1
- package/dist/translations/nb/retrieval.js +0 -1
- package/dist/translations/nb/shared.js +0 -1
- package/dist/translations/nb/utility.js +0 -1
- package/dist/translations/nb/viewers.js +0 -5
- package/dist/translations/nb.js +0 -1
- package/dist/translations/ne/agent-tools.js +0 -1
- package/dist/translations/ne/charts.js +0 -1
- package/dist/translations/ne/conversation.js +0 -1
- package/dist/translations/ne/data.js +0 -1
- package/dist/translations/ne/forms.js +0 -1
- package/dist/translations/ne/layout.js +0 -1
- package/dist/translations/ne/media.js +0 -1
- package/dist/translations/ne/overlays.js +0 -1
- package/dist/translations/ne/retrieval.js +0 -1
- package/dist/translations/ne/shared.js +0 -1
- package/dist/translations/ne/utility.js +0 -1
- package/dist/translations/ne/viewers.js +0 -5
- package/dist/translations/ne.js +0 -1
- package/dist/translations/nl/agent-tools.js +0 -1
- package/dist/translations/nl/charts.js +0 -1
- package/dist/translations/nl/conversation.js +0 -1
- package/dist/translations/nl/data.js +0 -1
- package/dist/translations/nl/forms.js +0 -1
- package/dist/translations/nl/layout.js +0 -1
- package/dist/translations/nl/media.js +0 -1
- package/dist/translations/nl/overlays.js +0 -1
- package/dist/translations/nl/retrieval.js +0 -1
- package/dist/translations/nl/shared.js +0 -1
- package/dist/translations/nl/utility.js +0 -1
- package/dist/translations/nl/viewers.js +0 -5
- package/dist/translations/nl.js +0 -1
- package/dist/translations/nn/agent-tools.js +0 -1
- package/dist/translations/nn/charts.js +0 -1
- package/dist/translations/nn/conversation.js +0 -1
- package/dist/translations/nn/data.js +0 -1
- package/dist/translations/nn/forms.js +0 -1
- package/dist/translations/nn/layout.js +0 -1
- package/dist/translations/nn/media.js +0 -1
- package/dist/translations/nn/overlays.js +0 -1
- package/dist/translations/nn/retrieval.js +0 -1
- package/dist/translations/nn/shared.js +0 -1
- package/dist/translations/nn/utility.js +0 -1
- package/dist/translations/nn/viewers.js +0 -5
- package/dist/translations/nn.js +0 -1
- package/dist/translations/om/agent-tools.js +0 -1
- package/dist/translations/om/charts.js +0 -1
- package/dist/translations/om/conversation.js +0 -1
- package/dist/translations/om/data.js +0 -1
- package/dist/translations/om/forms.js +0 -1
- package/dist/translations/om/layout.js +0 -1
- package/dist/translations/om/media.js +0 -1
- package/dist/translations/om/overlays.js +0 -1
- package/dist/translations/om/retrieval.js +0 -1
- package/dist/translations/om/shared.js +0 -1
- package/dist/translations/om/utility.js +0 -1
- package/dist/translations/om/viewers.js +0 -5
- package/dist/translations/om.js +0 -1
- package/dist/translations/or/agent-tools.js +0 -1
- package/dist/translations/or/charts.js +0 -1
- package/dist/translations/or/conversation.js +0 -1
- package/dist/translations/or/data.js +0 -1
- package/dist/translations/or/forms.js +0 -1
- package/dist/translations/or/layout.js +0 -1
- package/dist/translations/or/media.js +0 -1
- package/dist/translations/or/overlays.js +0 -1
- package/dist/translations/or/retrieval.js +0 -1
- package/dist/translations/or/shared.js +0 -1
- package/dist/translations/or/utility.js +0 -1
- package/dist/translations/or/viewers.js +0 -5
- package/dist/translations/or.js +0 -1
- package/dist/translations/pa/agent-tools.js +0 -1
- package/dist/translations/pa/charts.js +0 -1
- package/dist/translations/pa/conversation.js +0 -1
- package/dist/translations/pa/data.js +0 -1
- package/dist/translations/pa/forms.js +0 -1
- package/dist/translations/pa/layout.js +0 -1
- package/dist/translations/pa/media.js +0 -1
- package/dist/translations/pa/overlays.js +0 -1
- package/dist/translations/pa/retrieval.js +0 -1
- package/dist/translations/pa/shared.js +0 -1
- package/dist/translations/pa/utility.js +0 -1
- package/dist/translations/pa/viewers.js +0 -5
- package/dist/translations/pa.js +0 -1
- package/dist/translations/pcm/agent-tools.js +0 -1
- package/dist/translations/pcm/charts.js +0 -1
- package/dist/translations/pcm/conversation.js +0 -1
- package/dist/translations/pcm/data.js +0 -1
- package/dist/translations/pcm/forms.js +0 -1
- package/dist/translations/pcm/layout.js +0 -1
- package/dist/translations/pcm/media.js +0 -1
- package/dist/translations/pcm/overlays.js +0 -1
- package/dist/translations/pcm/retrieval.js +0 -1
- package/dist/translations/pcm/shared.js +0 -1
- package/dist/translations/pcm/utility.js +0 -1
- package/dist/translations/pcm/viewers.js +0 -5
- package/dist/translations/pcm.js +0 -1
- package/dist/translations/pl/agent-tools.js +0 -1
- package/dist/translations/pl/charts.js +0 -1
- package/dist/translations/pl/conversation.js +0 -1
- package/dist/translations/pl/data.js +0 -1
- package/dist/translations/pl/forms.js +0 -1
- package/dist/translations/pl/layout.js +0 -1
- package/dist/translations/pl/media.js +0 -1
- package/dist/translations/pl/overlays.js +0 -1
- package/dist/translations/pl/retrieval.js +0 -1
- package/dist/translations/pl/shared.js +0 -1
- package/dist/translations/pl/utility.js +0 -1
- package/dist/translations/pl/viewers.js +0 -5
- package/dist/translations/pl.js +0 -1
- package/dist/translations/pnb/agent-tools.js +0 -1
- package/dist/translations/pnb/charts.js +0 -1
- package/dist/translations/pnb/conversation.js +0 -1
- package/dist/translations/pnb/data.js +0 -1
- package/dist/translations/pnb/forms.js +0 -1
- package/dist/translations/pnb/layout.js +0 -1
- package/dist/translations/pnb/media.js +0 -1
- package/dist/translations/pnb/overlays.js +0 -1
- package/dist/translations/pnb/retrieval.js +0 -1
- package/dist/translations/pnb/shared.js +0 -1
- package/dist/translations/pnb/utility.js +0 -1
- package/dist/translations/pnb/viewers.js +0 -5
- package/dist/translations/pnb.js +0 -1
- package/dist/translations/ps/agent-tools.js +0 -1
- package/dist/translations/ps/charts.js +0 -1
- package/dist/translations/ps/conversation.js +0 -1
- package/dist/translations/ps/data.js +0 -1
- package/dist/translations/ps/forms.js +0 -1
- package/dist/translations/ps/layout.js +0 -1
- package/dist/translations/ps/media.js +0 -1
- package/dist/translations/ps/overlays.js +0 -1
- package/dist/translations/ps/retrieval.js +0 -1
- package/dist/translations/ps/shared.js +0 -1
- package/dist/translations/ps/utility.js +0 -1
- package/dist/translations/ps/viewers.js +0 -5
- package/dist/translations/ps.js +0 -1
- package/dist/translations/pt-BR/agent-tools.js +0 -1
- package/dist/translations/pt-BR/charts.js +0 -1
- package/dist/translations/pt-BR/conversation.js +0 -1
- package/dist/translations/pt-BR/data.js +0 -1
- package/dist/translations/pt-BR/forms.js +0 -1
- package/dist/translations/pt-BR/layout.js +0 -1
- package/dist/translations/pt-BR/media.js +0 -1
- package/dist/translations/pt-BR/overlays.js +0 -1
- package/dist/translations/pt-BR/retrieval.js +0 -1
- package/dist/translations/pt-BR/shared.js +0 -1
- package/dist/translations/pt-BR/utility.js +0 -1
- package/dist/translations/pt-BR/viewers.js +0 -5
- package/dist/translations/pt-BR.js +0 -1
- package/dist/translations/pt-PT/agent-tools.js +0 -1
- package/dist/translations/pt-PT/charts.js +0 -1
- package/dist/translations/pt-PT/conversation.js +0 -1
- package/dist/translations/pt-PT/data.js +0 -1
- package/dist/translations/pt-PT/forms.js +0 -1
- package/dist/translations/pt-PT/layout.js +0 -1
- package/dist/translations/pt-PT/media.js +0 -1
- package/dist/translations/pt-PT/overlays.js +0 -1
- package/dist/translations/pt-PT/retrieval.js +0 -1
- package/dist/translations/pt-PT/shared.js +0 -1
- package/dist/translations/pt-PT/utility.js +0 -1
- package/dist/translations/pt-PT/viewers.js +0 -5
- package/dist/translations/pt-PT.js +0 -1
- package/dist/translations/ro/agent-tools.js +0 -1
- package/dist/translations/ro/charts.js +0 -1
- package/dist/translations/ro/conversation.js +0 -1
- package/dist/translations/ro/data.js +0 -1
- package/dist/translations/ro/forms.js +0 -1
- package/dist/translations/ro/layout.js +0 -1
- package/dist/translations/ro/media.js +0 -1
- package/dist/translations/ro/overlays.js +0 -1
- package/dist/translations/ro/retrieval.js +0 -1
- package/dist/translations/ro/shared.js +0 -1
- package/dist/translations/ro/utility.js +0 -1
- package/dist/translations/ro/viewers.js +0 -5
- package/dist/translations/ro.js +0 -1
- package/dist/translations/ru/agent-tools.js +0 -1
- package/dist/translations/ru/charts.js +0 -1
- package/dist/translations/ru/conversation.js +0 -1
- package/dist/translations/ru/data.js +0 -1
- package/dist/translations/ru/forms.js +0 -1
- package/dist/translations/ru/layout.js +0 -1
- package/dist/translations/ru/media.js +0 -1
- package/dist/translations/ru/overlays.js +0 -1
- package/dist/translations/ru/retrieval.js +0 -1
- package/dist/translations/ru/shared.js +0 -1
- package/dist/translations/ru/utility.js +0 -1
- package/dist/translations/ru/viewers.js +0 -5
- package/dist/translations/ru.js +0 -1
- package/dist/translations/sd/agent-tools.js +0 -1
- package/dist/translations/sd/charts.js +0 -1
- package/dist/translations/sd/conversation.js +0 -1
- package/dist/translations/sd/data.js +0 -1
- package/dist/translations/sd/forms.js +0 -1
- package/dist/translations/sd/layout.js +0 -1
- package/dist/translations/sd/media.js +0 -1
- package/dist/translations/sd/overlays.js +0 -1
- package/dist/translations/sd/retrieval.js +0 -1
- package/dist/translations/sd/shared.js +0 -1
- package/dist/translations/sd/utility.js +0 -1
- package/dist/translations/sd/viewers.js +0 -5
- package/dist/translations/sd.js +0 -1
- package/dist/translations/sl/agent-tools.js +0 -1
- package/dist/translations/sl/charts.js +0 -1
- package/dist/translations/sl/conversation.js +0 -1
- package/dist/translations/sl/data.js +0 -1
- package/dist/translations/sl/forms.js +0 -1
- package/dist/translations/sl/layout.js +0 -1
- package/dist/translations/sl/media.js +0 -1
- package/dist/translations/sl/overlays.js +0 -1
- package/dist/translations/sl/retrieval.js +0 -1
- package/dist/translations/sl/shared.js +0 -1
- package/dist/translations/sl/utility.js +0 -1
- package/dist/translations/sl/viewers.js +0 -5
- package/dist/translations/sl.js +0 -1
- package/dist/translations/su/agent-tools.js +0 -1
- package/dist/translations/su/charts.js +0 -1
- package/dist/translations/su/conversation.js +0 -1
- package/dist/translations/su/data.js +0 -1
- package/dist/translations/su/forms.js +0 -1
- package/dist/translations/su/layout.js +0 -1
- package/dist/translations/su/media.js +0 -1
- package/dist/translations/su/overlays.js +0 -1
- package/dist/translations/su/retrieval.js +0 -1
- package/dist/translations/su/shared.js +0 -1
- package/dist/translations/su/utility.js +0 -1
- package/dist/translations/su/viewers.js +0 -5
- package/dist/translations/su.js +0 -1
- package/dist/translations/sv/agent-tools.js +0 -1
- package/dist/translations/sv/charts.js +0 -1
- package/dist/translations/sv/conversation.js +0 -1
- package/dist/translations/sv/data.js +0 -1
- package/dist/translations/sv/forms.js +0 -1
- package/dist/translations/sv/layout.js +0 -1
- package/dist/translations/sv/media.js +0 -1
- package/dist/translations/sv/overlays.js +0 -1
- package/dist/translations/sv/retrieval.js +0 -1
- package/dist/translations/sv/shared.js +0 -1
- package/dist/translations/sv/utility.js +0 -1
- package/dist/translations/sv/viewers.js +0 -5
- package/dist/translations/sv.js +0 -1
- package/dist/translations/sw/agent-tools.js +0 -1
- package/dist/translations/sw/charts.js +0 -1
- package/dist/translations/sw/conversation.js +0 -1
- package/dist/translations/sw/data.js +0 -1
- package/dist/translations/sw/forms.js +0 -1
- package/dist/translations/sw/layout.js +0 -1
- package/dist/translations/sw/media.js +0 -1
- package/dist/translations/sw/overlays.js +0 -1
- package/dist/translations/sw/retrieval.js +0 -1
- package/dist/translations/sw/shared.js +0 -1
- package/dist/translations/sw/utility.js +0 -1
- package/dist/translations/sw/viewers.js +0 -5
- package/dist/translations/sw.js +0 -1
- package/dist/translations/ta/agent-tools.js +0 -1
- package/dist/translations/ta/charts.js +0 -1
- package/dist/translations/ta/conversation.js +0 -1
- package/dist/translations/ta/data.js +0 -1
- package/dist/translations/ta/forms.js +0 -1
- package/dist/translations/ta/layout.js +0 -1
- package/dist/translations/ta/media.js +0 -1
- package/dist/translations/ta/overlays.js +0 -1
- package/dist/translations/ta/retrieval.js +0 -1
- package/dist/translations/ta/shared.js +0 -1
- package/dist/translations/ta/utility.js +0 -1
- package/dist/translations/ta/viewers.js +0 -5
- package/dist/translations/ta.js +0 -1
- package/dist/translations/te/agent-tools.js +0 -1
- package/dist/translations/te/charts.js +0 -1
- package/dist/translations/te/conversation.js +0 -1
- package/dist/translations/te/data.js +0 -1
- package/dist/translations/te/forms.js +0 -1
- package/dist/translations/te/layout.js +0 -1
- package/dist/translations/te/media.js +0 -1
- package/dist/translations/te/overlays.js +0 -1
- package/dist/translations/te/retrieval.js +0 -1
- package/dist/translations/te/shared.js +0 -1
- package/dist/translations/te/utility.js +0 -1
- package/dist/translations/te/viewers.js +0 -5
- package/dist/translations/te.js +0 -1
- package/dist/translations/th/agent-tools.js +0 -1
- package/dist/translations/th/charts.js +0 -1
- package/dist/translations/th/conversation.js +0 -1
- package/dist/translations/th/data.js +0 -1
- package/dist/translations/th/forms.js +0 -1
- package/dist/translations/th/layout.js +0 -1
- package/dist/translations/th/media.js +0 -1
- package/dist/translations/th/overlays.js +0 -1
- package/dist/translations/th/retrieval.js +0 -1
- package/dist/translations/th/shared.js +0 -1
- package/dist/translations/th/utility.js +0 -1
- package/dist/translations/th/viewers.js +0 -5
- package/dist/translations/th.js +0 -1
- package/dist/translations/tl/agent-tools.js +0 -1
- package/dist/translations/tl/charts.js +0 -1
- package/dist/translations/tl/conversation.js +0 -1
- package/dist/translations/tl/data.js +0 -1
- package/dist/translations/tl/forms.js +0 -1
- package/dist/translations/tl/layout.js +0 -1
- package/dist/translations/tl/media.js +0 -1
- package/dist/translations/tl/overlays.js +0 -1
- package/dist/translations/tl/retrieval.js +0 -1
- package/dist/translations/tl/shared.js +0 -1
- package/dist/translations/tl/utility.js +0 -1
- package/dist/translations/tl/viewers.js +0 -5
- package/dist/translations/tl.js +0 -1
- package/dist/translations/tr/agent-tools.js +0 -1
- package/dist/translations/tr/charts.js +0 -1
- package/dist/translations/tr/conversation.js +0 -1
- package/dist/translations/tr/data.js +0 -1
- package/dist/translations/tr/forms.js +0 -1
- package/dist/translations/tr/layout.js +0 -1
- package/dist/translations/tr/media.js +0 -1
- package/dist/translations/tr/overlays.js +0 -1
- package/dist/translations/tr/retrieval.js +0 -1
- package/dist/translations/tr/shared.js +0 -1
- package/dist/translations/tr/utility.js +0 -1
- package/dist/translations/tr/viewers.js +0 -5
- package/dist/translations/tr.js +0 -1
- package/dist/translations/uk/agent-tools.js +0 -1
- package/dist/translations/uk/charts.js +0 -1
- package/dist/translations/uk/conversation.js +0 -1
- package/dist/translations/uk/data.js +0 -1
- package/dist/translations/uk/forms.js +0 -1
- package/dist/translations/uk/layout.js +0 -1
- package/dist/translations/uk/media.js +0 -1
- package/dist/translations/uk/overlays.js +0 -1
- package/dist/translations/uk/retrieval.js +0 -1
- package/dist/translations/uk/shared.js +0 -1
- package/dist/translations/uk/utility.js +0 -1
- package/dist/translations/uk/viewers.js +0 -5
- package/dist/translations/uk.js +0 -1
- package/dist/translations/ur/agent-tools.js +0 -1
- package/dist/translations/ur/charts.js +0 -1
- package/dist/translations/ur/conversation.js +0 -1
- package/dist/translations/ur/data.js +0 -1
- package/dist/translations/ur/forms.js +0 -1
- package/dist/translations/ur/layout.js +0 -1
- package/dist/translations/ur/media.js +0 -1
- package/dist/translations/ur/overlays.js +0 -1
- package/dist/translations/ur/retrieval.js +0 -1
- package/dist/translations/ur/shared.js +0 -1
- package/dist/translations/ur/utility.js +0 -1
- package/dist/translations/ur/viewers.js +0 -5
- package/dist/translations/ur.js +0 -1
- package/dist/translations/uz/agent-tools.js +0 -1
- package/dist/translations/uz/charts.js +0 -1
- package/dist/translations/uz/conversation.js +0 -1
- package/dist/translations/uz/data.js +0 -1
- package/dist/translations/uz/forms.js +0 -1
- package/dist/translations/uz/layout.js +0 -1
- package/dist/translations/uz/media.js +0 -1
- package/dist/translations/uz/overlays.js +0 -1
- package/dist/translations/uz/retrieval.js +0 -1
- package/dist/translations/uz/shared.js +0 -1
- package/dist/translations/uz/utility.js +0 -1
- package/dist/translations/uz/viewers.js +0 -5
- package/dist/translations/uz.js +0 -1
- package/dist/translations/vi/agent-tools.js +0 -1
- package/dist/translations/vi/charts.js +0 -1
- package/dist/translations/vi/conversation.js +0 -1
- package/dist/translations/vi/data.js +0 -1
- package/dist/translations/vi/forms.js +0 -1
- package/dist/translations/vi/layout.js +0 -1
- package/dist/translations/vi/media.js +0 -1
- package/dist/translations/vi/overlays.js +0 -1
- package/dist/translations/vi/retrieval.js +0 -1
- package/dist/translations/vi/shared.js +0 -1
- package/dist/translations/vi/utility.js +0 -1
- package/dist/translations/vi/viewers.js +0 -5
- package/dist/translations/vi.js +0 -1
- package/dist/translations/yo/agent-tools.js +0 -1
- package/dist/translations/yo/charts.js +0 -1
- package/dist/translations/yo/conversation.js +0 -1
- package/dist/translations/yo/data.js +0 -1
- package/dist/translations/yo/forms.js +0 -1
- package/dist/translations/yo/layout.js +0 -1
- package/dist/translations/yo/media.js +0 -1
- package/dist/translations/yo/overlays.js +0 -1
- package/dist/translations/yo/retrieval.js +0 -1
- package/dist/translations/yo/shared.js +0 -1
- package/dist/translations/yo/utility.js +0 -1
- package/dist/translations/yo/viewers.js +0 -5
- package/dist/translations/yo.js +0 -1
- package/dist/translations/zh-CN/agent-tools.js +0 -1
- package/dist/translations/zh-CN/charts.js +0 -1
- package/dist/translations/zh-CN/conversation.js +0 -1
- package/dist/translations/zh-CN/data.js +0 -1
- package/dist/translations/zh-CN/forms.js +0 -1
- package/dist/translations/zh-CN/layout.js +0 -1
- package/dist/translations/zh-CN/media.js +0 -1
- package/dist/translations/zh-CN/overlays.js +0 -1
- package/dist/translations/zh-CN/retrieval.js +0 -1
- package/dist/translations/zh-CN/shared.js +0 -1
- package/dist/translations/zh-CN/utility.js +0 -1
- package/dist/translations/zh-CN/viewers.js +0 -5
- package/dist/translations/zh-CN.js +0 -1
- package/dist/translations/zh-TW/agent-tools.js +0 -1
- package/dist/translations/zh-TW/charts.js +0 -1
- package/dist/translations/zh-TW/conversation.js +0 -1
- package/dist/translations/zh-TW/data.js +0 -1
- package/dist/translations/zh-TW/forms.js +0 -1
- package/dist/translations/zh-TW/layout.js +0 -1
- package/dist/translations/zh-TW/media.js +0 -1
- package/dist/translations/zh-TW/overlays.js +0 -1
- package/dist/translations/zh-TW/retrieval.js +0 -1
- package/dist/translations/zh-TW/shared.js +0 -1
- package/dist/translations/zh-TW/utility.js +0 -1
- package/dist/translations/zh-TW/viewers.js +0 -5
- package/dist/translations/zh-TW.js +0 -1
- package/dist/translations/zu/agent-tools.js +0 -1
- package/dist/translations/zu/charts.js +0 -1
- package/dist/translations/zu/conversation.js +0 -1
- package/dist/translations/zu/data.js +0 -1
- package/dist/translations/zu/forms.js +0 -1
- package/dist/translations/zu/layout.js +0 -1
- package/dist/translations/zu/media.js +0 -1
- package/dist/translations/zu/overlays.js +0 -1
- package/dist/translations/zu/retrieval.js +0 -1
- package/dist/translations/zu/shared.js +0 -1
- package/dist/translations/zu/utility.js +0 -1
- package/dist/translations/zu/viewers.js +0 -5
- package/dist/translations/zu.js +0 -1
- package/vscode-css-data.json +0 -1
- package/vscode-html-data.json +0 -1
- package/web-types.json +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{tag}from"../../../internal/prefix.js";import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{repeat}from"lit/directives/repeat.js";import{LyraElement}from"../../../internal/lyra-element.js";import{HostDescriptionController}from"../../../internal/aria-controls.js";import{pencilIcon,regenerateIcon}from"../../../internal/icons.js";import{getInheritedPropertyDescriptor,getOwnDataDescriptor,isObjectValue,MISSING_OWN_DATA_DESCRIPTOR,UNSAFE_OWN_DATA_DESCRIPTOR}from"../../../internal/data-descriptors.js";import"../../utility/copy-button/copy-button.class.js";import"../message-feedback/message-feedback.class.js";import{styles}from"./message-actions.styles.js";import{applyComposedFocusRepair,captureComposedFocusRepair,isComposedFocusAvailable,isSemanticActionElement}from"../../../internal/focus-navigation.js";import{composedContains}from"../../../internal/overlay-manager.js";import{composedParentElement}from"../../../internal/active-element.js";import{isEditableKeyEventTarget}from"../../../internal/hotkey.js";import{RovingToolbarController,leaseTabIndex}from"../../../internal/roving-toolbar.js";import{SlottedOverlayController}from"../../../internal/slotted-overlay-controller.js";import{isLyraToolbarActionProvider}from"./toolbar-actions.js";import{LYRA_DEFAULT_editMessage,LYRA_DEFAULT_messageActionsLabel,LYRA_DEFAULT_regenerateResponse}from"../../../internal/default-strings.generated.js";const MESSAGE_ACTION_CONTROLS=["copy","regenerate","edit","feedback"],MAX_TOOLBAR_ACTIONS=100,COMPOSITE_ROLES=new Set(["menu","menubar","listbox","tree","treegrid","grid","tablist","radiogroup"]);function insideComposite(element,root){for(let node=composedParentElement(element);node&&node!==root;node=composedParentElement(node))if(COMPOSITE_ROLES.has(node.getAttribute("role")??""))return!0;return!1}function dataCallable(value,key){const descriptor=getInheritedPropertyDescriptor(value,key);return descriptor&&Object.hasOwn(descriptor,"value")&&typeof descriptor.value=="function"?descriptor.value:void 0}function dataValue(value,key){const descriptor=getInheritedPropertyDescriptor(value,key);return descriptor&&Object.hasOwn(descriptor,"value")?descriptor.value:void 0}function projectDisabled(value){const descriptor=getInheritedPropertyDescriptor(value,"disabled");if(!descriptor)return{valid:!0,disabled:!1};if(Object.hasOwn(descriptor,"value"))return{valid:!0,disabled:descriptor.value===!0};if(typeof descriptor.get!="function")return{valid:!1,disabled:!0};try{return{valid:!0,disabled:Reflect.apply(descriptor.get,value,[])===!0}}catch{return{valid:!1,disabled:!0}}}function projectToolbarAction(value){if(!isObjectValue(value))return;const id=dataValue(value,"id"),focus=dataCallable(value,"focus"),setTabIndex=dataCallable(value,"setTabIndex"),matchesEventPath=dataCallable(value,"matchesEventPath"),releaseTabIndex=dataCallable(value,"releaseTabIndex"),disabled=projectDisabled(value);if(typeof id!="string"||id.trim().length===0||!focus||!setTabIndex||!matchesEventPath||!disabled.valid)return;const action={id,disabled:disabled.disabled,focus(options){try{Reflect.apply(focus,value,[options])}catch{}},setTabIndex(tabIndex){try{Reflect.apply(setTabIndex,value,[tabIndex])}catch{}},...releaseTabIndex?{releaseTabIndex(){try{Reflect.apply(releaseTabIndex,value,[])}catch{}}}:{},matchesEventPath(path){try{return Reflect.apply(matchesEventPath,value,[path])===!0}catch{return!1}}};return{source:value,action}}class LyraMessageActions extends LyraElement{constructor(){super(...arguments),this.hostDescription=new HostDescriptionController(this,()=>this.renderRoot.querySelector('[part="base"][role="toolbar"]')),this.controls=[],this.copyText="",this.feedbackRating=null,this.revealOnInteraction=!1,this.accessibleLabel=null,this.activeStopIndex=0,this.rovingToolbar=new RovingToolbarController,this.revealed=!1,this.hoverTarget=null,this.slottedOverlay=new SlottedOverlayController(this,()=>this.renderRoot?.querySelector('[part="base"] > slot:not([name])')),this.slottedOverlayWasOpen=!1,this.stopSyncGeneration=0,this.managedStops=[],this.directActions=new WeakMap,this.nextDirectActionId=0,this.onHoverTargetEnter=()=>{this.setRevealed(!0)},this.onHoverTargetLeave=()=>{!this.matches(":focus-within")&&!this.slottedOverlay.open&&this.setRevealed(!1)},this.onFocusIn=event=>{this.setRevealed(!0);const stops=this.logicalActions(),path=event.composedPath(),index=stops.findIndex(({action})=>action.matchesEventPath(path));if(index>=0){this.setActiveStop(stops,index,stops[index]);const base=this.renderRoot.querySelector('[part="base"]'),repair=base?captureComposedFocusRepair(this,base):null,stop=stops[index];this.focusedStop=stop&&repair?{index,owner:stop.owner,id:stop.action.id,source:stop.source,repair}:void 0}else this.focusedStop=void 0},this.onFocusOut=event=>{!this.hoverTarget?.matches(":hover")&&!this.slottedOverlay.open&&this.setRevealed(!1);const destination=event.relatedTarget;destination&&destination.nodeType===1&&!composedContains(this,destination)&&(this.focusedStop=void 0)},this.onStopMutations=records=>{this.reconcileStopsAfterChildren()},this.onSlotChange=()=>{const stops=this.logicalActions();this.setActiveStop(stops,Math.min(this.activeStopIndex,Math.max(0,stops.length-1))),this.reconcileStopsAfterChildren()},this.onToolbarActionsChange=event=>{event.stopPropagation(),this.reconcileStopsAfterChildren()},this.containSlottedFeedbackEvent=event=>{event.stopPropagation()},this.onToolbarKeyDown=e=>{if(e.defaultPrevented||isEditableKeyEventTarget(e))return;const stops=this.logicalActions();if(stops.length===0)return;const path=e.composedPath(),originIndex=stops.findIndex(({action})=>action.matchesEventPath(path));if(originIndex<0&&path[0]!==e.currentTarget)return;const currentIndex=originIndex>=0?originIndex:this.activeStopIndex,target=this.rovingToolbar.move(e,stops.length,currentIndex,this.effectiveDirection);target!==null&&(e.preventDefault(),this.setActiveStop(stops,target),stops[target]?.action.focus())},this.onRegenerateClick=()=>{this.emit("lr-regenerate",null)},this.onEditClick=()=>{this.emit("lr-edit",null)}}static{this.defaultStrings={...super.defaultStrings,editMessage:LYRA_DEFAULT_editMessage,messageActionsLabel:LYRA_DEFAULT_messageActionsLabel,regenerateResponse:LYRA_DEFAULT_regenerateResponse}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["controls"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-feedback-submit-request"])}get effectiveControls(){const seen=new Set,controls=[];for(const value of this.controls){if(typeof value!="string"||!MESSAGE_ACTION_CONTROLS.includes(value)||seen.has(value))continue;const control=value;seen.add(control),controls.push(control)}return controls}get feedbackPending(){return this.currentBuiltInFeedback()?.pending===!0}finalizePendingSubmit(submissionId){const feedback=this.currentBuiltInFeedback();return typeof submissionId=="string"&&submissionId.trim().length>0&&feedback!==void 0?feedback.finalizePendingSubmit(submissionId):!1}revertPendingSubmit(submissionId){const feedback=this.currentBuiltInFeedback();return typeof submissionId=="string"&&submissionId.trim().length>0&&feedback!==void 0?feedback.revertPendingSubmit(submissionId):!1}currentBuiltInFeedback(){const base=this.renderRoot.querySelector('[part="base"]'),feedback=base?.querySelector(`${tag("message-feedback")}[part~="feedback"]`);return feedback&&feedback.parentElement===base&&feedback.getRootNode()===this.renderRoot&&feedback.isConnected?feedback:void 0}connectedCallback(){super.connectedCallback(),this.addEventListener("focusin",this.onFocusIn),this.addEventListener("focusout",this.onFocusOut),this.revealOnInteraction&&this.bindHoverTarget(),this.hasUpdated&&this.reconcileStopsAfterChildren()}disconnectedCallback(){this.stopSyncGeneration++,this.stopObserver?.disconnect(),this.stopObserver=void 0,this.releaseManagedStops(),this.focusedStop=void 0,this.unbindHoverTarget(),this.removeEventListener("focusin",this.onFocusIn),this.removeEventListener("focusout",this.onFocusOut),super.disconnectedCallback()}adoptedCallback(){super.adoptedCallback(),this.hostDescription.adopted(),this.stopSyncGeneration++,this.stopObserver?.disconnect(),this.stopObserver=void 0,this.releaseManagedStops()}willUpdate(changed){super.willUpdate(changed),changed.has("revealOnInteraction")&&(this.revealOnInteraction?this.bindHoverTarget():this.unbindHoverTarget());const overlayOpen=this.slottedOverlay.open;overlayOpen!==this.slottedOverlayWasOpen&&(this.slottedOverlayWasOpen=overlayOpen,overlayOpen?this.setRevealed(!0):!this.hoverTarget?.matches(":hover")&&!this.matches(":focus-within")&&this.setRevealed(!1))}firstUpdated(changed){super.firstUpdated(changed),this.setActiveStop(this.logicalActions(),0),this.reconcileStopsAfterChildren()}updated(changed){if(super.updated(changed),changed.has("controls")){const stops=this.logicalActions();this.setActiveStop(stops,Math.min(this.activeStopIndex,Math.max(0,stops.length-1))),this.reconcileStopsAfterChildren()}}setRevealed(revealed){this.revealed!==revealed&&(this.revealed=revealed,this.toggleAttribute("data-revealed",revealed))}bindHoverTarget(){this.unbindHoverTarget();const target=this.closest(tag("chat-message"))??this.parentElement;target&&(this.hoverTarget=target,target.addEventListener("pointerenter",this.onHoverTargetEnter),target.addEventListener("pointerleave",this.onHoverTargetLeave))}unbindHoverTarget(){this.hoverTarget?.removeEventListener("pointerenter",this.onHoverTargetEnter),this.hoverTarget?.removeEventListener("pointerleave",this.onHoverTargetLeave),this.hoverTarget=null,this.setRevealed(!1)}actionRoots(){const base=this.renderRoot.querySelector('[part="base"]');if(!base)return[];const direct=[...base.children].filter(element=>element.localName!=="slot"),slot=base.querySelector("slot");return[...direct,...slot?.assignedElements({flatten:!0})??[]]}sameAction(left,right){return left.owner===right.owner&&left.source===right.source&&left.action.id===right.action.id}isAvailable(action){try{return action.disabled!==!0}catch{return!1}}directActionFor(element){let action=this.directActions.get(element);if(action)return action;const target=element,id=`direct-${++this.nextDirectActionId}`,tabIndexLease=leaseTabIndex();return action={id,get disabled(){return!isComposedFocusAvailable(element)},focus(options){target.focus(options)},setTabIndex(tabIndex){tabIndexLease.set(target,tabIndex)},releaseTabIndex:()=>tabIndexLease.release(),hasAuthoredTabIndex(){return tabIndexLease.hasAuthored(target)},matchesEventPath(path){return path.includes(element)}},this.directActions.set(element,action),action}logicalActions(){const actions=[],addProvider=(owner,provider)=>{const getToolbarActions=dataCallable(provider,"getToolbarActions");if(!getToolbarActions)return;let provided;try{provided=Reflect.apply(getToolbarActions,provider,[])}catch{return}let isArray=!1;try{isArray=Array.isArray(provided)}catch{return}if(!isArray)return;const length=getOwnDataDescriptor(provided,"length");if(length===MISSING_OWN_DATA_DESCRIPTOR||length===UNSAFE_OWN_DATA_DESCRIPTOR||typeof length.value!="number"||!Number.isSafeInteger(length.value)||length.value<0)return;const seen=new Set,inspected=Math.min(length.value,MAX_TOOLBAR_ACTIONS);for(let index=0;index<inspected;index+=1){const candidate=getOwnDataDescriptor(provided,String(index));if(candidate===MISSING_OWN_DATA_DESCRIPTOR||candidate===UNSAFE_OWN_DATA_DESCRIPTOR)continue;const projected=projectToolbarAction(candidate.value);!projected||seen.has(projected.action.id)||(seen.add(projected.action.id),this.isAvailable(projected.action)&&actions.push({owner,...projected}))}},visit=element=>{if(insideComposite(element,this))return;if(isLyraToolbarActionProvider(element)){addProvider(element,element);return}const knownAction=this.directActions.get(element);if(isSemanticActionElement(element)||(knownAction?.hasAuthoredTabIndex()??element.hasAttribute("tabindex"))){const action=this.directActionFor(element);this.isAvailable(action)&&actions.push({owner:element,action,source:action});return}for(const child of element.children)visit(child)};for(const root of this.actionRoots())visit(root);return actions}setActiveStop(stops,index,preferred){this.stopObserver?.disconnect();for(const previous of this.managedStops)stops.some(stop=>this.sameAction(stop,previous))||this.releaseManagedStop(previous);const preferredIndex=preferred?stops.findIndex(stop=>this.sameAction(stop,preferred)):-1;this.activeStopIndex=stops.length===0?0:preferredIndex>=0?preferredIndex:Math.min(Math.max(0,index),stops.length-1),stops.forEach(({action},stopIndex)=>{try{action.setTabIndex(stopIndex===this.activeStopIndex?0:-1)}catch{}}),this.managedStops=stops,this.observeStopChanges()}releaseManagedStop(stop){try{stop.action.releaseTabIndex?.()}catch{}this.directActions.get(stop.owner)===stop.action&&this.directActions.delete(stop.owner)}releaseManagedStops(){for(const stop of this.managedStops)this.releaseManagedStop(stop);this.managedStops=[]}observeStopChanges(){this.stopObserver?.disconnect();const Observer=this.ownerDocument.defaultView?.MutationObserver,base=this.renderRoot.querySelector('[part="base"]');if(!Observer||!base||!this.isConnected){this.stopObserver=void 0;return}const observer=new Observer(this.onStopMutations),roots=new Set([base,...this.actionRoots()]),options={attributes:!0,attributeOldValue:!0,attributeFilter:["aria-disabled","aria-hidden","contenteditable","controls","disabled","hidden","href","inert","open","role","tabindex","type"],childList:!0,subtree:!0};for(const root of roots)observer.observe(root,options);this.stopObserver=observer}async reconcileStopsAfterChildren(){const generation=++this.stopSyncGeneration,pending=this.actionRoots().map(root=>root.updateComplete).filter(value=>value!==void 0&&typeof value.then=="function");if(await Promise.all(pending),await Promise.resolve(),generation!==this.stopSyncGeneration||!this.isConnected)return;const stops=this.logicalActions(),focused=this.focusedStop,retainedIndex=focused?stops.findIndex(stop=>stop.owner===focused.owner&&stop.source===focused.source&&stop.action.id===focused.id):-1,targetIndex=retainedIndex>=0?retainedIndex:Math.min(focused?Math.max(0,focused.index):this.activeStopIndex,Math.max(0,stops.length-1));if(this.setActiveStop(stops,targetIndex),focused&&retainedIndex<0){const base=this.renderRoot.querySelector('[part="base"]');base&&applyComposedFocusRepair(focused.repair,base)&&stops[targetIndex]?.action.focus(),this.focusedStop===focused&&(this.focusedStop=void 0)}}renderControl(type){switch(type){case"copy":return this.copyText?html`<lr-copy-button
|
|
1
|
+
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{tag}from"../../../internal/prefix.js";import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{repeat}from"lit/directives/repeat.js";import{LyraElement}from"../../../internal/lyra-element.js";import{HostDescriptionController}from"../../../internal/aria-controls.js";import{pencilIcon,regenerateIcon}from"../../../internal/icons.js";import{getInheritedPropertyDescriptor,getOwnDataDescriptor,isObjectValue,MISSING_OWN_DATA_DESCRIPTOR,UNSAFE_OWN_DATA_DESCRIPTOR}from"../../../internal/data-descriptors.js";import"../../utility/copy-button/copy-button.class.js";import"../message-feedback/message-feedback.class.js";import{styles}from"./message-actions.styles.js";import{applyComposedFocusRepair,captureComposedFocusRepair,isComposedFocusAvailable,isSemanticActionElement}from"../../../internal/focus-navigation.js";import{composedContains}from"../../../internal/overlay-manager.js";import{composedParentElement}from"../../../internal/active-element.js";import{isEditableKeyEventTarget,keyEventOwnedByInnerControl}from"../../../internal/hotkey.js";import{RovingToolbarController,leaseTabIndex,observeStopChanges}from"../../../internal/roving-toolbar.js";import{SlottedOverlayController}from"../../../internal/slotted-overlay-controller.js";import{isLyraToolbarActionProvider}from"./toolbar-actions.js";import{LYRA_DEFAULT_editMessage,LYRA_DEFAULT_messageActionsLabel,LYRA_DEFAULT_regenerateResponse}from"../../../internal/default-strings/conversation.generated.js";const MESSAGE_ACTION_CONTROLS=["copy","regenerate","edit","feedback"],MAX_TOOLBAR_ACTIONS=100,COMPOSITE_ROLES=new Set(["menu","menubar","listbox","tree","treegrid","grid","tablist","radiogroup"]);function insideComposite(element,root){for(let node=composedParentElement(element);node&&node!==root;node=composedParentElement(node))if(COMPOSITE_ROLES.has(node.getAttribute("role")??""))return!0;return!1}function dataCallable(value,key){const descriptor=getInheritedPropertyDescriptor(value,key);return descriptor&&Object.hasOwn(descriptor,"value")&&typeof descriptor.value=="function"?descriptor.value:void 0}function dataValue(value,key){const descriptor=getInheritedPropertyDescriptor(value,key);return descriptor&&Object.hasOwn(descriptor,"value")?descriptor.value:void 0}function projectDisabled(value){const descriptor=getInheritedPropertyDescriptor(value,"disabled");if(!descriptor)return{valid:!0,disabled:!1};if(Object.hasOwn(descriptor,"value"))return{valid:!0,disabled:descriptor.value===!0};if(typeof descriptor.get!="function")return{valid:!1,disabled:!0};try{return{valid:!0,disabled:Reflect.apply(descriptor.get,value,[])===!0}}catch{return{valid:!1,disabled:!0}}}function projectToolbarAction(value){if(!isObjectValue(value))return;const id=dataValue(value,"id"),focus=dataCallable(value,"focus"),setTabIndex=dataCallable(value,"setTabIndex"),matchesEventPath=dataCallable(value,"matchesEventPath"),releaseTabIndex=dataCallable(value,"releaseTabIndex"),disabled=projectDisabled(value);if(typeof id!="string"||id.trim().length===0||!focus||!setTabIndex||!matchesEventPath||!disabled.valid)return;const action={id,disabled:disabled.disabled,focus(options){try{Reflect.apply(focus,value,[options])}catch{}},setTabIndex(tabIndex){try{Reflect.apply(setTabIndex,value,[tabIndex])}catch{}},...releaseTabIndex?{releaseTabIndex(){try{Reflect.apply(releaseTabIndex,value,[])}catch{}}}:{},matchesEventPath(path){try{return Reflect.apply(matchesEventPath,value,[path])===!0}catch{return!1}}};return{source:value,action}}class LyraMessageActions extends LyraElement{constructor(){super(...arguments),this.hostDescription=new HostDescriptionController(this,()=>this.renderRoot.querySelector('[part="base"][role="toolbar"]')),this.controls=[],this.copyText="",this.feedbackRating=null,this.revealOnInteraction=!1,this.accessibleLabel=null,this.activeStopIndex=0,this.rovingToolbar=new RovingToolbarController,this.revealed=!1,this.hoverTarget=null,this.slottedOverlay=new SlottedOverlayController(this,()=>this.renderRoot?.querySelector('[part="base"] > slot:not([name])')),this.slottedOverlayWasOpen=!1,this.stopSyncGeneration=0,this.managedStops=[],this.directActions=new WeakMap,this.nextDirectActionId=0,this.onHoverTargetEnter=()=>{this.setRevealed(!0)},this.onHoverTargetLeave=()=>{!this.matches(":focus-within")&&!this.slottedOverlay.open&&this.setRevealed(!1)},this.onFocusIn=event=>{this.setRevealed(!0);const stops=this.logicalActions(),path=event.composedPath(),index=stops.findIndex(({action})=>action.matchesEventPath(path));if(index>=0){this.setActiveStop(stops,index,stops[index]);const base=this.renderRoot.querySelector('[part="base"]'),repair=base?captureComposedFocusRepair(this,base):null,stop=stops[index];this.focusedStop=stop&&repair?{index,owner:stop.owner,id:stop.action.id,source:stop.source,repair}:void 0}else this.focusedStop=void 0},this.onFocusOut=event=>{!this.hoverTarget?.matches(":hover")&&!this.slottedOverlay.open&&this.setRevealed(!1);const destination=event.relatedTarget;destination&&destination.nodeType===1&&!composedContains(this,destination)&&(this.focusedStop=void 0)},this.onStopMutations=records=>{this.reconcileStopsAfterChildren()},this.onSlotChange=()=>{const stops=this.logicalActions();this.setActiveStop(stops,Math.min(this.activeStopIndex,Math.max(0,stops.length-1))),this.reconcileStopsAfterChildren()},this.onToolbarActionsChange=event=>{event.stopPropagation(),this.reconcileStopsAfterChildren()},this.containSlottedFeedbackEvent=event=>{event.stopPropagation()},this.onToolbarKeyDown=e=>{if(e.defaultPrevented||isEditableKeyEventTarget(e)||keyEventOwnedByInnerControl(e,{container:this}))return;const stops=this.logicalActions();if(stops.length===0)return;const path=e.composedPath(),originIndex=stops.findIndex(({action})=>action.matchesEventPath(path));if(originIndex<0&&path[0]!==e.currentTarget)return;const currentIndex=originIndex>=0?originIndex:this.activeStopIndex,target=this.rovingToolbar.move(e,stops.length,currentIndex,this.effectiveDirection);target!==null&&(e.preventDefault(),this.setActiveStop(stops,target),stops[target]?.action.focus())},this.onRegenerateClick=()=>{this.emit("lr-regenerate",null)},this.onEditClick=()=>{this.emit("lr-edit",null)}}static{this.defaultStrings={...super.defaultStrings,editMessage:LYRA_DEFAULT_editMessage,messageActionsLabel:LYRA_DEFAULT_messageActionsLabel,regenerateResponse:LYRA_DEFAULT_regenerateResponse}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["controls"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-feedback-submit-request"])}get effectiveControls(){const seen=new Set,controls=[];for(const value of this.controls){if(typeof value!="string"||!MESSAGE_ACTION_CONTROLS.includes(value)||seen.has(value))continue;const control=value;seen.add(control),controls.push(control)}return controls}get feedbackPending(){return this.currentBuiltInFeedback()?.pending===!0}finalizePendingSubmit(submissionId){const feedback=this.currentBuiltInFeedback();return typeof submissionId=="string"&&submissionId.trim().length>0&&feedback!==void 0?feedback.finalizePendingSubmit(submissionId):!1}revertPendingSubmit(submissionId){const feedback=this.currentBuiltInFeedback();return typeof submissionId=="string"&&submissionId.trim().length>0&&feedback!==void 0?feedback.revertPendingSubmit(submissionId):!1}currentBuiltInFeedback(){const base=this.renderRoot.querySelector('[part="base"]'),feedback=base?.querySelector(`${tag("message-feedback")}[part~="feedback"]`);return feedback&&feedback.parentElement===base&&feedback.getRootNode()===this.renderRoot&&feedback.isConnected?feedback:void 0}connectedCallback(){super.connectedCallback(),this.addEventListener("focusin",this.onFocusIn),this.addEventListener("focusout",this.onFocusOut),this.revealOnInteraction&&this.bindHoverTarget(),this.hasUpdated&&this.reconcileStopsAfterChildren()}disconnectedCallback(){this.stopSyncGeneration++,this.stopObserver?.disconnect(),this.stopObserver=void 0,this.releaseManagedStops(),this.focusedStop=void 0,this.unbindHoverTarget(),this.removeEventListener("focusin",this.onFocusIn),this.removeEventListener("focusout",this.onFocusOut),super.disconnectedCallback()}adoptedCallback(){super.adoptedCallback(),this.hostDescription.adopted(),this.stopSyncGeneration++,this.stopObserver?.disconnect(),this.stopObserver=void 0,this.releaseManagedStops()}willUpdate(changed){super.willUpdate(changed),changed.has("revealOnInteraction")&&(this.revealOnInteraction?this.bindHoverTarget():this.unbindHoverTarget());const overlayOpen=this.slottedOverlay.open;overlayOpen!==this.slottedOverlayWasOpen&&(this.slottedOverlayWasOpen=overlayOpen,overlayOpen?this.setRevealed(!0):!this.hoverTarget?.matches(":hover")&&!this.matches(":focus-within")&&this.setRevealed(!1))}firstUpdated(changed){super.firstUpdated(changed),this.setActiveStop(this.logicalActions(),0),this.reconcileStopsAfterChildren()}updated(changed){if(super.updated(changed),changed.has("controls")){const stops=this.logicalActions();this.setActiveStop(stops,Math.min(this.activeStopIndex,Math.max(0,stops.length-1))),this.reconcileStopsAfterChildren()}}setRevealed(revealed){this.revealed!==revealed&&(this.revealed=revealed,this.toggleAttribute("data-revealed",revealed))}bindHoverTarget(){this.unbindHoverTarget();const target=this.closest(tag("chat-message"))??this.parentElement;target&&(this.hoverTarget=target,target.addEventListener("pointerenter",this.onHoverTargetEnter),target.addEventListener("pointerleave",this.onHoverTargetLeave))}unbindHoverTarget(){this.hoverTarget?.removeEventListener("pointerenter",this.onHoverTargetEnter),this.hoverTarget?.removeEventListener("pointerleave",this.onHoverTargetLeave),this.hoverTarget=null,this.setRevealed(!1)}actionRoots(){const base=this.renderRoot.querySelector('[part="base"]');if(!base)return[];const direct=[...base.children].filter(element=>element.localName!=="slot"),slot=base.querySelector("slot");return[...direct,...slot?.assignedElements({flatten:!0})??[]]}sameAction(left,right){return left.owner===right.owner&&left.source===right.source&&left.action.id===right.action.id}isAvailable(action){try{return action.disabled!==!0}catch{return!1}}directActionFor(element){let action=this.directActions.get(element);if(action)return action;const target=element,id=`direct-${++this.nextDirectActionId}`,tabIndexLease=leaseTabIndex();return action={id,get disabled(){return!isComposedFocusAvailable(element)},focus(options){target.focus(options)},setTabIndex(tabIndex){tabIndexLease.set(target,tabIndex)},releaseTabIndex:()=>tabIndexLease.release(),hasAuthoredTabIndex(){return tabIndexLease.hasAuthored(target)},matchesEventPath(path){return path.includes(element)}},this.directActions.set(element,action),action}logicalActions(){const actions=[],addProvider=(owner,provider)=>{const getToolbarActions=dataCallable(provider,"getToolbarActions");if(!getToolbarActions)return;let provided;try{provided=Reflect.apply(getToolbarActions,provider,[])}catch{return}let isArray=!1;try{isArray=Array.isArray(provided)}catch{return}if(!isArray)return;const length=getOwnDataDescriptor(provided,"length");if(length===MISSING_OWN_DATA_DESCRIPTOR||length===UNSAFE_OWN_DATA_DESCRIPTOR||typeof length.value!="number"||!Number.isSafeInteger(length.value)||length.value<0)return;const seen=new Set,inspected=Math.min(length.value,MAX_TOOLBAR_ACTIONS);for(let index=0;index<inspected;index+=1){const candidate=getOwnDataDescriptor(provided,String(index));if(candidate===MISSING_OWN_DATA_DESCRIPTOR||candidate===UNSAFE_OWN_DATA_DESCRIPTOR)continue;const projected=projectToolbarAction(candidate.value);!projected||seen.has(projected.action.id)||(seen.add(projected.action.id),this.isAvailable(projected.action)&&actions.push({owner,...projected}))}},visit=element=>{if(insideComposite(element,this))return;if(isLyraToolbarActionProvider(element)){addProvider(element,element);return}const knownAction=this.directActions.get(element);if(isSemanticActionElement(element)||(knownAction?.hasAuthoredTabIndex()??element.hasAttribute("tabindex"))){const action=this.directActionFor(element);this.isAvailable(action)&&actions.push({owner:element,action,source:action});return}for(const child of element.children)visit(child)};for(const root of this.actionRoots())visit(root);return actions}setActiveStop(stops,index,preferred){this.stopObserver?.disconnect();for(const previous of this.managedStops)stops.some(stop=>this.sameAction(stop,previous))||this.releaseManagedStop(previous);const preferredIndex=preferred?stops.findIndex(stop=>this.sameAction(stop,preferred)):-1;this.activeStopIndex=stops.length===0?0:preferredIndex>=0?preferredIndex:Math.min(Math.max(0,index),stops.length-1),stops.forEach(({action},stopIndex)=>{try{action.setTabIndex(stopIndex===this.activeStopIndex?0:-1)}catch{}}),this.managedStops=stops,this.observeStopChanges()}releaseManagedStop(stop){try{stop.action.releaseTabIndex?.()}catch{}this.directActions.get(stop.owner)===stop.action&&this.directActions.delete(stop.owner)}releaseManagedStops(){for(const stop of this.managedStops)this.releaseManagedStop(stop);this.managedStops=[]}observeStopChanges(){this.stopObserver?.disconnect();const Observer=this.ownerDocument.defaultView?.MutationObserver,base=this.renderRoot.querySelector('[part="base"]');if(!Observer||!base||!this.isConnected){this.stopObserver=void 0;return}const observer=new Observer(this.onStopMutations),roots=new Set([base,...this.actionRoots()]),options=observeStopChanges();for(const root of roots)observer.observe(root,options);this.stopObserver=observer}async reconcileStopsAfterChildren(){const generation=++this.stopSyncGeneration,pending=this.actionRoots().map(root=>root.updateComplete).filter(value=>value!==void 0&&typeof value.then=="function");if(await Promise.all(pending),await Promise.resolve(),generation!==this.stopSyncGeneration||!this.isConnected)return;const stops=this.logicalActions(),focused=this.focusedStop,retainedIndex=focused?stops.findIndex(stop=>stop.owner===focused.owner&&stop.source===focused.source&&stop.action.id===focused.id):-1,targetIndex=retainedIndex>=0?retainedIndex:Math.min(focused?Math.max(0,focused.index):this.activeStopIndex,Math.max(0,stops.length-1));if(this.setActiveStop(stops,targetIndex),focused&&retainedIndex<0){const base=this.renderRoot.querySelector('[part="base"]');base&&applyComposedFocusRepair(focused.repair,base)&&stops[targetIndex]?.action.focus(),this.focusedStop===focused&&(this.focusedStop=void 0)}}renderControl(type){switch(type){case"copy":return this.copyText?html`<lr-copy-button
|
|
2
2
|
part="copy-button"
|
|
3
3
|
.value=${this.copyText}
|
|
4
4
|
></lr-copy-button>`:nothing;case"regenerate":return html`<lr-icon-button
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{relayNativeEvent}from"../../../internal/native-event-relay.js";import{nativeAutocorrectAttribute}from"../../../internal/native-text-control.js";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property,query,state}from"lit/decorators.js";import{LyraElement}from"../../../internal/lyra-element.js";import{thumbIcon}from"../../../internal/icons.js";import{nextId}from"../../../internal/a11y.js";import{deepActiveElementIn}from"../../../internal/active-element.js";import{composedContains}from"../../../internal/overlay-stack.js";import{getOwnDataDescriptor,isObjectValue,MISSING_OWN_DATA_DESCRIPTOR,UNSAFE_OWN_DATA_DESCRIPTOR}from"../../../internal/data-descriptors.js";import{autocorrectConverter,declaredDefaultConverter,normalizeAutocorrect,omittedEmptyStringConverter,trueDefaultSpellcheckConverter}from"../../../internal/converters.js";import{acquireAnnouncementSink}from"../../../internal/announcer.js";import{styles}from"./message-feedback.styles.js";import{leaseTabIndex}from"../../../internal/roving-toolbar.js";import{LYRA_DEFAULT_feedbackCommentLabel,LYRA_DEFAULT_feedbackCommentPlaceholder,LYRA_DEFAULT_feedbackNegative,LYRA_DEFAULT_feedbackPositive,LYRA_DEFAULT_feedbackReasonsLabel,LYRA_DEFAULT_feedbackSubmit,LYRA_DEFAULT_feedbackSubmitted}from"../../../internal/default-strings.generated.js";const MAX_PROJECTED_FEEDBACK_REASONS=1e4,EMPTY_FEEDBACK_DETAIL_PROJECTION=Object.freeze({reasons:Object.freeze([]),commentable:!1});function isArrayValue(value){try{return Array.isArray(value)}catch{return!1}}function projectFeedbackDetail(detail){if(!isObjectValue(detail))return EMPTY_FEEDBACK_DETAIL_PROJECTION;const reasonsDescriptor=getOwnDataDescriptor(detail,"reasons"),commentableDescriptor=getOwnDataDescriptor(detail,"commentable"),commentable=commentableDescriptor!==MISSING_OWN_DATA_DESCRIPTOR&&commentableDescriptor!==UNSAFE_OWN_DATA_DESCRIPTOR&&commentableDescriptor.value===!0,reasonsValue=reasonsDescriptor!==MISSING_OWN_DATA_DESCRIPTOR&&reasonsDescriptor!==UNSAFE_OWN_DATA_DESCRIPTOR?reasonsDescriptor.value:void 0;if(!isArrayValue(reasonsValue))return commentable?Object.freeze({reasons:Object.freeze([]),commentable}):EMPTY_FEEDBACK_DETAIL_PROJECTION;const lengthDescriptor=getOwnDataDescriptor(reasonsValue,"length");if(lengthDescriptor===MISSING_OWN_DATA_DESCRIPTOR||lengthDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||typeof lengthDescriptor.value!="number"||!Number.isSafeInteger(lengthDescriptor.value)||lengthDescriptor.value<0)return commentable?Object.freeze({reasons:Object.freeze([]),commentable}):EMPTY_FEEDBACK_DETAIL_PROJECTION;const reasons=[],seen=new Set,length=Math.min(lengthDescriptor.value,MAX_PROJECTED_FEEDBACK_REASONS);for(let index=0;index<length;index+=1){const rowDescriptor=getOwnDataDescriptor(reasonsValue,String(index));if(rowDescriptor===MISSING_OWN_DATA_DESCRIPTOR||rowDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||!isObjectValue(rowDescriptor.value))continue;const row=rowDescriptor.value,idDescriptor=getOwnDataDescriptor(row,"id"),labelDescriptor=getOwnDataDescriptor(row,"label");if(idDescriptor===MISSING_OWN_DATA_DESCRIPTOR||idDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||labelDescriptor===MISSING_OWN_DATA_DESCRIPTOR||labelDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||typeof idDescriptor.value!="string"||typeof labelDescriptor.value!="string")continue;const id=idDescriptor.value,label=labelDescriptor.value;id.trim().length===0||seen.has(id)||(seen.add(id),reasons.push(Object.freeze({id,label})))}return Object.freeze({reasons:Object.freeze(reasons),commentable})}class LyraMessageFeedback extends LyraElement{constructor(){super(...arguments),this.rating=null,this.detailFor="down",this.disabled=!1,this.pending=!1,this.spellcheck=!0,this.autocapitalize="",this.autocorrectValue=!0,this.wrap="soft",this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="",this.detailProjectionSource=Symbol("unprojected-feedback-detail"),this.detailProjection=EMPTY_FEEDBACK_DETAIL_PROJECTION,this.submissionSequence=0,this.submissionCount=0,this.legacyNoArgumentSettlementInvalidated=!1,this.lifecycleGeneration=0,this.focusGeneration=0,this.settingPending=!1,this.panelId=nextId("message-feedback-panel"),this.upToolbarAction=this.createToolbarAction("up"),this.downToolbarAction=this.createToolbarAction("down"),this.onPanelKeyDown=e=>{e.key==="Escape"&&(e.stopPropagation(),this.closePanel())},this.stopChipAliasEvent=event=>{event.stopPropagation()},this.onCommentInput=e=>{this.commentDraft=e.target.value},this.onCommentFocus=event=>{relayNativeEvent(this,event)},this.onCommentBlur=event=>{relayNativeEvent(this,event)},this.submissionRequestDispatching=!1,this.onSubmit=()=>{if(this.disabled||this.pending||!this.rating||!this.panelOpen)return;const validReasonIds=new Set(this.detailReasons.map(reason=>reason.id));this.requestSubmission({rating:this.rating,reasonIds:this.selectedReasonIds.filter(id=>validReasonIds.has(id)),comment:this.detailCommentable?this.commentDraft.trim():""},this.rating,!0)}}static{this.defaultStrings={...super.defaultStrings,feedbackCommentLabel:LYRA_DEFAULT_feedbackCommentLabel,feedbackCommentPlaceholder:LYRA_DEFAULT_feedbackCommentPlaceholder,feedbackNegative:LYRA_DEFAULT_feedbackNegative,feedbackPositive:LYRA_DEFAULT_feedbackPositive,feedbackReasonsLabel:LYRA_DEFAULT_feedbackReasonsLabel,feedbackSubmit:LYRA_DEFAULT_feedbackSubmit,feedbackSubmitted:LYRA_DEFAULT_feedbackSubmitted}}emitFeedbackSubmitRequest(detail){return this.emit("lr-feedback-submit-request",Object.freeze(detail),{cancelable:!0})}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["detail"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-feedback-submit-request"])}get autocorrect(){return this.autocorrectValue}set autocorrect(next){const previous=this.autocorrectValue;this.autocorrectValue=normalizeAutocorrect(next),this.requestUpdate("autocorrect",previous)}createToolbarAction(direction){const host=this,button=()=>direction==="up"?host.upButtonEl:host.downButtonEl,tabIndexLease=leaseTabIndex();return{id:direction,get disabled(){return!button()||button().disabled},focus(options){button()?.focus(options)},setTabIndex(tabIndex){tabIndexLease.set(button(),tabIndex)},releaseTabIndex:()=>tabIndexLease.release(),matchesEventPath(path){const target=button();return target!==void 0&&path.includes(target)}}}getToolbarActions(){return[this.upToolbarAction,this.downToolbarAction]}focus(options){(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.focus(options)}blur(){this.upButtonEl?.blur(),this.downButtonEl?.blur()}click(){this.disabled||this.pending||(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.click()}get detailReasons(){return this.currentDetailProjection.reasons}get detailCommentable(){return this.currentDetailProjection.commentable}get currentDetailProjection(){const detail=this.detail;return detail!==this.detailProjectionSource&&(this.detailProjectionSource=detail,this.detailProjection=projectFeedbackDetail(detail)),this.detailProjection}get hasDetailContent(){return this.detailReasons.length>0||this.detailCommentable}detailApplies(direction){return this.detailFor==="both"||this.detailFor===direction}requestUpdate(name,oldValue,options){const currentValue=name==="rating"?this.rating:name==="detail"?this.detail:name==="detailFor"?this.detailFor:name==="pending"?this.pending:void 0,changed=oldValue!==currentValue,internalRatingWrite=name==="rating"&&this.pendingInternalRating?.rating===this.rating;changed&&(name==="rating"||name==="detail"||name==="detailFor"||name==="pending")&&!(name==="rating"&&internalRatingWrite)&&(this.focusGeneration=(this.focusGeneration??0)+1,this.pendingSubmission&&(name!=="pending"||!this.settingPending&&this.pending===!1)&&this.invalidatePendingSubmission()),super.requestUpdate(name,oldValue,options)}connectedCallback(){super.connectedCallback(),this.sink??=acquireAnnouncementSink("polite",{document:this.ownerDocument,source:this})}disconnectedCallback(){this.sink?.release(),this.sink=void 0,this.lifecycleGeneration+=1,this.invalidatePendingSubmission(),this.upToolbarAction.releaseTabIndex?.(),this.downToolbarAction.releaseTabIndex?.(),super.disconnectedCallback()}adoptedCallback(){super.adoptedCallback(),this.lifecycleGeneration+=1,this.invalidatePendingSubmission(),this.upToolbarAction.releaseTabIndex?.(),this.downToolbarAction.releaseTabIndex?.()}willUpdate(changed){if(super.willUpdate(changed),changed.has("rating")){const internal=this.pendingInternalRating?.rating===this.rating;this.pendingInternalRating=void 0,internal||(this.invalidatePendingSubmission(),this.setPending(!1),this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="")}if(changed.has("detail")){const validIds=new Set(this.detailReasons.map(reason=>reason.id));this.selectedReasonIds=this.selectedReasonIds.filter(id=>validIds.has(id)),this.detailCommentable||(this.commentDraft="")}this.panelOpen&&(!this.rating||!this.detailApplies(this.rating)||!this.hasDetailContent)&&(this.invalidatePendingSubmission(),this.setPending(!1),this.panelOpen=!1,changed.has("detailFor")&&(this.selectedReasonIds=[],this.commentDraft=""))}updated(changed){super.updated(changed),(changed.has("disabled")||changed.has("pending"))&&this.emit("lr-toolbar-actions-change")}setRatingFromInteraction(rating){this.pendingInternalRating={rating},this.rating=rating}activateThumb(next){if(this.disabled||this.pending)return;const previousRating=this.rating;if(this.rating===next){if(this.panelOpen){this.setRatingFromInteraction(null),this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="",this.emit("lr-feedback-change",{rating:null}),this.requestSubmission({rating:null,reasonIds:[],comment:""},previousRating,!0);return}if(this.detailApplies(next)&&this.hasDetailContent){this.panelOpen=!0;return}this.setRatingFromInteraction(null),this.emit("lr-feedback-change",{rating:null}),this.requestSubmission({rating:null,reasonIds:[],comment:""},previousRating,!1);return}this.selectedReasonIds=[],this.commentDraft="",this.setRatingFromInteraction(next),this.panelOpen=this.detailApplies(next)&&this.hasDetailContent,this.emit("lr-feedback-change",{rating:next}),this.panelOpen||this.requestSubmission({rating:next,reasonIds:[],comment:""},previousRating,!1)}focusActiveThumb(){(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.focus()}closePanel(){this.panelOpen&&(this.panelOpen=!1,this.focusActiveThumb())}toggleReason(id){this.disabled||this.pending||(this.selectedReasonIds=this.selectedReasonIds.includes(id)?this.selectedReasonIds.filter(r=>r!==id):[...this.selectedReasonIds,id])}setPending(pending){this.settingPending=!0,this.pending=pending,this.settingPending=!1}invalidatePendingSubmission(){const transaction=this.pendingSubmission;transaction&&(this.pendingSubmission=void 0,this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),this.legacyNoArgumentSettlementInvalidated=!0,this.focusGeneration+=1,this.setPending(!1))}isCurrentPendingSubmission(transaction){return this.pendingSubmission===transaction&&this.pending&&this.isConnected&&transaction.lifecycleGeneration===this.lifecycleGeneration&&transaction.rating===this.rating&&transaction.detail===this.detail&&transaction.detailFor===this.detailFor?!0:(this.pendingSubmission===transaction&&this.invalidatePendingSubmission(),!1)}canSettleWithoutSubmissionId(transaction){return!this.legacyNoArgumentSettlementInvalidated&&this.submissionCount===1&&transaction.sequence===1}scheduleSettlementFocus(transaction,destination){const focusGeneration=++this.focusGeneration,lifecycleGeneration=transaction.lifecycleGeneration;this.ownsSettlementFocus()&&this.updateComplete.then(()=>{focusGeneration!==this.focusGeneration||lifecycleGeneration!==this.lifecycleGeneration||!this.isConnected||this.pending||this.pendingSubmission||!this.ownsSettlementFocus()||(destination==="submit"&&this.panelOpen?this.submitButtonEl?.focus():this.focusActiveThumb())})}ownsSettlementFocus(){const doc=this.ownerDocument,active=deepActiveElementIn(doc);return active===null||active===doc.body||active===doc.documentElement||composedContains(this,active)}settlePendingSubmission(settlement,submissionId){const transaction=this.pendingSubmission;if(!transaction||!this.isCurrentPendingSubmission(transaction))return!1;if(submissionId===void 0){if(!this.canSettleWithoutSubmissionId(transaction))return!1}else if(submissionId!==transaction.submissionId)return!1;return transaction.settlement?!1:this.dispatchingSubmission===transaction?(transaction.settlement=settlement,!0):(this.commitSettlement(transaction,settlement),!0)}commitSettlement(transaction,settlement){if(this.isCurrentPendingSubmission(transaction)){if(this.pendingSubmission=void 0,this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),this.setPending(!1),settlement==="finalize"){this.panelOpen=!1,this.sink?.announce(this.localize("feedbackSubmitted")),this.scheduleSettlementFocus(transaction,"thumb");return}this.setRatingFromInteraction(transaction.previousRating),this.panelOpen=transaction.panelWasOpen,this.scheduleSettlementFocus(transaction,transaction.panelWasOpen?"submit":"thumb")}}finalizePendingSubmit(submissionId){return this.settlePendingSubmission("finalize",submissionId)}revertPendingSubmit(submissionId){return this.settlePendingSubmission("revert",submissionId)}requestSubmission(detail,previousRating,panelWasOpen){if(!this.submissionRequestDispatching){this.submissionRequestDispatching=!0;try{this.focusGeneration+=1;const sequence=++this.submissionSequence;this.submissionCount+=1;const transaction={submissionId:nextId("message-feedback-submission"),sequence,lifecycleGeneration:this.lifecycleGeneration,rating:this.rating,detail:this.detail,detailFor:this.detailFor,previousRating,panelWasOpen};this.pendingSubmission=transaction,this.setPending(!0),this.dispatchingSubmission=transaction;const event=this.emitFeedbackSubmitRequest({...detail,submissionId:transaction.submissionId});if(this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),!this.isCurrentPendingSubmission(transaction))return;if(transaction.settlement){this.commitSettlement(transaction,transaction.settlement);return}event.defaultPrevented||this.commitSettlement(transaction,"finalize")}finally{this.submissionRequestDispatching=!1}}}renderThumb(direction){const pressed=this.rating===direction,canExpand=this.detailApplies(direction)&&this.hasDetailContent;return html`
|
|
1
|
+
import{__decorate}from"tslib";import{relayNativeEvent}from"../../../internal/native-event-relay.js";import{nativeAutocorrectAttribute}from"../../../internal/native-text-control.js";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property,query,state}from"lit/decorators.js";import{LyraElement}from"../../../internal/lyra-element.js";import{thumbIcon}from"../../../internal/icons.js";import{nextId}from"../../../internal/a11y.js";import{deepActiveElementIn}from"../../../internal/active-element.js";import{composedContains}from"../../../internal/overlay-stack.js";import{getOwnDataDescriptor,isObjectValue,MISSING_OWN_DATA_DESCRIPTOR,UNSAFE_OWN_DATA_DESCRIPTOR}from"../../../internal/data-descriptors.js";import{autocorrectConverter,declaredDefaultConverter,normalizeAutocorrect,omittedEmptyStringConverter,trueDefaultSpellcheckConverter}from"../../../internal/converters.js";import{acquireAnnouncementSink}from"../../../internal/announcer.js";import{styles}from"./message-feedback.styles.js";import{leaseTabIndex}from"../../../internal/roving-toolbar.js";import{LYRA_DEFAULT_feedbackCommentLabel,LYRA_DEFAULT_feedbackCommentPlaceholder,LYRA_DEFAULT_feedbackNegative,LYRA_DEFAULT_feedbackPositive,LYRA_DEFAULT_feedbackReasonsLabel,LYRA_DEFAULT_feedbackSubmit,LYRA_DEFAULT_feedbackSubmitted}from"../../../internal/default-strings/conversation.generated.js";const MAX_PROJECTED_FEEDBACK_REASONS=1e4,EMPTY_FEEDBACK_DETAIL_PROJECTION=Object.freeze({reasons:Object.freeze([]),commentable:!1});function isArrayValue(value){try{return Array.isArray(value)}catch{return!1}}function projectFeedbackDetail(detail){if(!isObjectValue(detail))return EMPTY_FEEDBACK_DETAIL_PROJECTION;const reasonsDescriptor=getOwnDataDescriptor(detail,"reasons"),commentableDescriptor=getOwnDataDescriptor(detail,"commentable"),commentable=commentableDescriptor!==MISSING_OWN_DATA_DESCRIPTOR&&commentableDescriptor!==UNSAFE_OWN_DATA_DESCRIPTOR&&commentableDescriptor.value===!0,reasonsValue=reasonsDescriptor!==MISSING_OWN_DATA_DESCRIPTOR&&reasonsDescriptor!==UNSAFE_OWN_DATA_DESCRIPTOR?reasonsDescriptor.value:void 0;if(!isArrayValue(reasonsValue))return commentable?Object.freeze({reasons:Object.freeze([]),commentable}):EMPTY_FEEDBACK_DETAIL_PROJECTION;const lengthDescriptor=getOwnDataDescriptor(reasonsValue,"length");if(lengthDescriptor===MISSING_OWN_DATA_DESCRIPTOR||lengthDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||typeof lengthDescriptor.value!="number"||!Number.isSafeInteger(lengthDescriptor.value)||lengthDescriptor.value<0)return commentable?Object.freeze({reasons:Object.freeze([]),commentable}):EMPTY_FEEDBACK_DETAIL_PROJECTION;const reasons=[],seen=new Set,length=Math.min(lengthDescriptor.value,MAX_PROJECTED_FEEDBACK_REASONS);for(let index=0;index<length;index+=1){const rowDescriptor=getOwnDataDescriptor(reasonsValue,String(index));if(rowDescriptor===MISSING_OWN_DATA_DESCRIPTOR||rowDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||!isObjectValue(rowDescriptor.value))continue;const row=rowDescriptor.value,idDescriptor=getOwnDataDescriptor(row,"id"),labelDescriptor=getOwnDataDescriptor(row,"label");if(idDescriptor===MISSING_OWN_DATA_DESCRIPTOR||idDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||labelDescriptor===MISSING_OWN_DATA_DESCRIPTOR||labelDescriptor===UNSAFE_OWN_DATA_DESCRIPTOR||typeof idDescriptor.value!="string"||typeof labelDescriptor.value!="string")continue;const id=idDescriptor.value,label=labelDescriptor.value;id.trim().length===0||seen.has(id)||(seen.add(id),reasons.push(Object.freeze({id,label})))}return Object.freeze({reasons:Object.freeze(reasons),commentable})}class LyraMessageFeedback extends LyraElement{constructor(){super(...arguments),this.rating=null,this.detailFor="down",this.disabled=!1,this.pending=!1,this.spellcheck=!0,this.autocapitalize="",this.autocorrectValue=!0,this.wrap="soft",this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="",this.detailProjectionSource=Symbol("unprojected-feedback-detail"),this.detailProjection=EMPTY_FEEDBACK_DETAIL_PROJECTION,this.submissionSequence=0,this.submissionCount=0,this.legacyNoArgumentSettlementInvalidated=!1,this.lifecycleGeneration=0,this.focusGeneration=0,this.settingPending=!1,this.panelId=nextId("message-feedback-panel"),this.upToolbarAction=this.createToolbarAction("up"),this.downToolbarAction=this.createToolbarAction("down"),this.onPanelKeyDown=e=>{e.key==="Escape"&&(e.stopPropagation(),this.closePanel())},this.stopChipAliasEvent=event=>{event.stopPropagation()},this.onCommentInput=e=>{this.commentDraft=e.target.value},this.onCommentFocus=event=>{relayNativeEvent(this,event)},this.onCommentBlur=event=>{relayNativeEvent(this,event)},this.submissionRequestDispatching=!1,this.onSubmit=()=>{if(this.disabled||this.pending||!this.rating||!this.panelOpen)return;const validReasonIds=new Set(this.detailReasons.map(reason=>reason.id));this.requestSubmission({rating:this.rating,reasonIds:this.selectedReasonIds.filter(id=>validReasonIds.has(id)),comment:this.detailCommentable?this.commentDraft.trim():""},this.rating,!0)}}static{this.defaultStrings={...super.defaultStrings,feedbackCommentLabel:LYRA_DEFAULT_feedbackCommentLabel,feedbackCommentPlaceholder:LYRA_DEFAULT_feedbackCommentPlaceholder,feedbackNegative:LYRA_DEFAULT_feedbackNegative,feedbackPositive:LYRA_DEFAULT_feedbackPositive,feedbackReasonsLabel:LYRA_DEFAULT_feedbackReasonsLabel,feedbackSubmit:LYRA_DEFAULT_feedbackSubmit,feedbackSubmitted:LYRA_DEFAULT_feedbackSubmitted}}emitFeedbackSubmitRequest(detail){return this.emit("lr-feedback-submit-request",Object.freeze(detail),{cancelable:!0})}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["detail"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-feedback-submit-request"])}get autocorrect(){return this.autocorrectValue}set autocorrect(next){const previous=this.autocorrectValue;this.autocorrectValue=normalizeAutocorrect(next),this.requestUpdate("autocorrect",previous)}createToolbarAction(direction){const host=this,button=()=>direction==="up"?host.upButtonEl:host.downButtonEl,tabIndexLease=leaseTabIndex();return{id:direction,get disabled(){return!button()||button().disabled},focus(options){button()?.focus(options)},setTabIndex(tabIndex){tabIndexLease.set(button(),tabIndex)},releaseTabIndex:()=>tabIndexLease.release(),matchesEventPath(path){const target=button();return target!==void 0&&path.includes(target)}}}getToolbarActions(){return[this.upToolbarAction,this.downToolbarAction]}focus(options){(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.focus(options)}blur(){this.upButtonEl?.blur(),this.downButtonEl?.blur()}click(){this.disabled||this.pending||(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.click()}get detailReasons(){return this.currentDetailProjection.reasons}get detailCommentable(){return this.currentDetailProjection.commentable}get currentDetailProjection(){const detail=this.detail;return detail!==this.detailProjectionSource&&(this.detailProjectionSource=detail,this.detailProjection=projectFeedbackDetail(detail)),this.detailProjection}get hasDetailContent(){return this.detailReasons.length>0||this.detailCommentable}detailApplies(direction){return this.detailFor==="both"||this.detailFor===direction}requestUpdate(name,oldValue,options){const currentValue=name==="rating"?this.rating:name==="detail"?this.detail:name==="detailFor"?this.detailFor:name==="pending"?this.pending:void 0,changed=oldValue!==currentValue,internalRatingWrite=name==="rating"&&this.pendingInternalRating?.rating===this.rating;changed&&(name==="rating"||name==="detail"||name==="detailFor"||name==="pending")&&!(name==="rating"&&internalRatingWrite)&&(this.focusGeneration=(this.focusGeneration??0)+1,this.pendingSubmission&&(name!=="pending"||!this.settingPending&&this.pending===!1)&&this.invalidatePendingSubmission()),super.requestUpdate(name,oldValue,options)}connectedCallback(){super.connectedCallback(),this.sink??=acquireAnnouncementSink("polite",{document:this.ownerDocument,source:this})}disconnectedCallback(){this.sink?.release(),this.sink=void 0,this.lifecycleGeneration+=1,this.invalidatePendingSubmission(),this.upToolbarAction.releaseTabIndex?.(),this.downToolbarAction.releaseTabIndex?.(),super.disconnectedCallback()}adoptedCallback(){super.adoptedCallback(),this.lifecycleGeneration+=1,this.invalidatePendingSubmission(),this.upToolbarAction.releaseTabIndex?.(),this.downToolbarAction.releaseTabIndex?.()}willUpdate(changed){if(super.willUpdate(changed),changed.has("rating")){const internal=this.pendingInternalRating?.rating===this.rating;this.pendingInternalRating=void 0,internal||(this.invalidatePendingSubmission(),this.setPending(!1),this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="")}if(changed.has("detail")){const validIds=new Set(this.detailReasons.map(reason=>reason.id));this.selectedReasonIds=this.selectedReasonIds.filter(id=>validIds.has(id)),this.detailCommentable||(this.commentDraft="")}this.panelOpen&&(!this.rating||!this.detailApplies(this.rating)||!this.hasDetailContent)&&(this.invalidatePendingSubmission(),this.setPending(!1),this.panelOpen=!1,changed.has("detailFor")&&(this.selectedReasonIds=[],this.commentDraft=""))}updated(changed){super.updated(changed),(changed.has("disabled")||changed.has("pending"))&&this.emit("lr-toolbar-actions-change")}setRatingFromInteraction(rating){this.pendingInternalRating={rating},this.rating=rating}activateThumb(next){if(this.disabled||this.pending)return;const previousRating=this.rating;if(this.rating===next){if(this.panelOpen){this.setRatingFromInteraction(null),this.panelOpen=!1,this.selectedReasonIds=[],this.commentDraft="",this.emit("lr-feedback-change",{rating:null}),this.requestSubmission({rating:null,reasonIds:[],comment:""},previousRating,!0);return}if(this.detailApplies(next)&&this.hasDetailContent){this.panelOpen=!0;return}this.setRatingFromInteraction(null),this.emit("lr-feedback-change",{rating:null}),this.requestSubmission({rating:null,reasonIds:[],comment:""},previousRating,!1);return}this.selectedReasonIds=[],this.commentDraft="",this.setRatingFromInteraction(next),this.panelOpen=this.detailApplies(next)&&this.hasDetailContent,this.emit("lr-feedback-change",{rating:next}),this.panelOpen||this.requestSubmission({rating:next,reasonIds:[],comment:""},previousRating,!1)}focusActiveThumb(){(this.rating==="down"?this.downButtonEl:this.upButtonEl)?.focus()}closePanel(){this.panelOpen&&(this.panelOpen=!1,this.focusActiveThumb())}toggleReason(id){this.disabled||this.pending||(this.selectedReasonIds=this.selectedReasonIds.includes(id)?this.selectedReasonIds.filter(r=>r!==id):[...this.selectedReasonIds,id])}setPending(pending){this.settingPending=!0,this.pending=pending,this.settingPending=!1}invalidatePendingSubmission(){const transaction=this.pendingSubmission;transaction&&(this.pendingSubmission=void 0,this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),this.legacyNoArgumentSettlementInvalidated=!0,this.focusGeneration+=1,this.setPending(!1))}isCurrentPendingSubmission(transaction){return this.pendingSubmission===transaction&&this.pending&&this.isConnected&&transaction.lifecycleGeneration===this.lifecycleGeneration&&transaction.rating===this.rating&&transaction.detail===this.detail&&transaction.detailFor===this.detailFor?!0:(this.pendingSubmission===transaction&&this.invalidatePendingSubmission(),!1)}canSettleWithoutSubmissionId(transaction){return!this.legacyNoArgumentSettlementInvalidated&&this.submissionCount===1&&transaction.sequence===1}scheduleSettlementFocus(transaction,destination){const focusGeneration=++this.focusGeneration,lifecycleGeneration=transaction.lifecycleGeneration;this.ownsSettlementFocus()&&this.updateComplete.then(()=>{focusGeneration!==this.focusGeneration||lifecycleGeneration!==this.lifecycleGeneration||!this.isConnected||this.pending||this.pendingSubmission||!this.ownsSettlementFocus()||(destination==="submit"&&this.panelOpen?this.submitButtonEl?.focus():this.focusActiveThumb())})}ownsSettlementFocus(){const doc=this.ownerDocument,active=deepActiveElementIn(doc);return active===null||active===doc.body||active===doc.documentElement||composedContains(this,active)}settlePendingSubmission(settlement,submissionId){const transaction=this.pendingSubmission;if(!transaction||!this.isCurrentPendingSubmission(transaction))return!1;if(submissionId===void 0){if(!this.canSettleWithoutSubmissionId(transaction))return!1}else if(submissionId!==transaction.submissionId)return!1;return transaction.settlement?!1:this.dispatchingSubmission===transaction?(transaction.settlement=settlement,!0):(this.commitSettlement(transaction,settlement),!0)}commitSettlement(transaction,settlement){if(this.isCurrentPendingSubmission(transaction)){if(this.pendingSubmission=void 0,this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),this.setPending(!1),settlement==="finalize"){this.panelOpen=!1,this.sink?.announce(this.localize("feedbackSubmitted")),this.scheduleSettlementFocus(transaction,"thumb");return}this.setRatingFromInteraction(transaction.previousRating),this.panelOpen=transaction.panelWasOpen,this.scheduleSettlementFocus(transaction,transaction.panelWasOpen?"submit":"thumb")}}finalizePendingSubmit(submissionId){return this.settlePendingSubmission("finalize",submissionId)}revertPendingSubmit(submissionId){return this.settlePendingSubmission("revert",submissionId)}requestSubmission(detail,previousRating,panelWasOpen){if(!this.submissionRequestDispatching){this.submissionRequestDispatching=!0;try{this.focusGeneration+=1;const sequence=++this.submissionSequence;this.submissionCount+=1;const transaction={submissionId:nextId("message-feedback-submission"),sequence,lifecycleGeneration:this.lifecycleGeneration,rating:this.rating,detail:this.detail,detailFor:this.detailFor,previousRating,panelWasOpen};this.pendingSubmission=transaction,this.setPending(!0),this.dispatchingSubmission=transaction;const event=this.emitFeedbackSubmitRequest({...detail,submissionId:transaction.submissionId});if(this.dispatchingSubmission===transaction&&(this.dispatchingSubmission=void 0),!this.isCurrentPendingSubmission(transaction))return;if(transaction.settlement){this.commitSettlement(transaction,transaction.settlement);return}event.defaultPrevented||this.commitSettlement(transaction,"finalize")}finally{this.submissionRequestDispatching=!1}}}renderThumb(direction){const pressed=this.rating===direction,canExpand=this.detailApplies(direction)&&this.hasDetailContent;return html`
|
|
2
2
|
<button
|
|
3
3
|
part=${direction==="up"?"up-button":"down-button"}
|
|
4
4
|
type="button"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{repeat}from"lit/directives/repeat.js";import{isToolCallStatus}from"../../agent-tools/tool-status.js";import{projectedRedactionFields,redactToolDetail,TOO_MANY_REDACTION_PATHS}from"../../agent-tools/tool-redaction.js";import{literalSetConverter}from"../../../internal/converters.js";import{finiteCount}from"../../../internal/numbers.js";import{LyraElement}from"../../../internal/lyra-element.js";import{safeMediaSrc}from"../../../internal/safe-url.js";import{acquireAnnouncementSink}from"../../../internal/announcer.js";import{isNonBlankIdentity,isRecord}from"../../retrieval/retrieval-identity.js";import{styles}from"./message-parts.styles.js";import{
|
|
1
|
+
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{repeat}from"lit/directives/repeat.js";import{isToolCallStatus}from"../../agent-tools/tool-status.js";import{projectedRedactionFields,redactToolDetail,TOO_MANY_REDACTION_PATHS}from"../../agent-tools/tool-redaction.js";import{literalSetConverter}from"../../../internal/converters.js";import{finiteCount}from"../../../internal/numbers.js";import{LyraElement}from"../../../internal/lyra-element.js";import{safeMediaSrc}from"../../../internal/safe-url.js";import{acquireAnnouncementSink}from"../../../internal/announcer.js";import{isNonBlankIdentity,isRecord}from"../../retrieval/retrieval-identity.js";import{styles}from"./message-parts.styles.js";import{LYRA_DEFAULT_messagePartError,LYRA_DEFAULT_messagePartRetry,LYRA_DEFAULT_messagePartsLabel,LYRA_DEFAULT_streamInterrupted,LYRA_DEFAULT_streamResume}from"../../../internal/default-strings/conversation.generated.js";import{LYRA_DEFAULT_envListValueHidden,LYRA_DEFAULT_retry,LYRA_DEFAULT_thinkingPanelLabel}from"../../../internal/default-strings/shared.generated.js";const MESSAGE_PARTS_CONTENT_MODES=Object.freeze(["plain","markdown"]),MESSAGE_PARTS_TOOL_DISPLAY=literalSetConverter(["chip","block"],"chip"),EMPTY_REDACTED_FIELDS=Object.freeze([]),TOOL_BLOCK_EXPORTPARTS="header:tool-block-header, body:tool-block-body, args:tool-block-args, result:tool-block-result, error:tool-block-error";function resolveBlockStatus(invocation,result){const status=isToolCallStatus(invocation.status)?invocation.status:"pending";return status==="denied"||status==="incomplete"?status:status==="error"||result&&"error"in result?"error":result&&result.state==="streaming"?"running":result?"success":status}function invocationDuration(invocation){if(invocation.startedAt==null||invocation.endedAt==null)return;const diff=invocation.endedAt-invocation.startedAt;return Number.isFinite(diff)?diff:void 0}function invocationDisplayName(invocation){return typeof invocation.displayName=="string"?invocation.displayName:void 0}function normalizeMessagePartsContentMode(value){return typeof value=="string"&&MESSAGE_PARTS_CONTENT_MODES.includes(value)?value:"markdown"}class LyraMessageParts extends LyraElement{constructor(){super(...arguments),this.parts=[],this.disabled=!1,this.contentModeValue="markdown",this.toolDisplayValue="chip",this.withoutReasoning=!1,this.streamingRender="plain",this.codeBlockHeader=!1,this.maxRenderedParts=0,this.knownErrorIds=new Set,this.redactionByInvocation=new Map,this.redactionMemo=new WeakMap,this.suppressNextErrorAnnouncement=!0,this.resumeDispatching=!1}static{this.defaultStrings={...super.defaultStrings,envListValueHidden:LYRA_DEFAULT_envListValueHidden,messagePartError:LYRA_DEFAULT_messagePartError,messagePartRetry:LYRA_DEFAULT_messagePartRetry,messagePartsLabel:LYRA_DEFAULT_messagePartsLabel,retry:LYRA_DEFAULT_retry,streamInterrupted:LYRA_DEFAULT_streamInterrupted,streamResume:LYRA_DEFAULT_streamResume,thinkingPanelLabel:LYRA_DEFAULT_thinkingPanelLabel}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["parts"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-citation-select","lr-part-retry","lr-part-resume"])}get contentMode(){return this.contentModeValue}set contentMode(value){const previous=this.contentModeValue,normalized=normalizeMessagePartsContentMode(value);this.contentModeValue=normalized,typeof value=="string"&&value!==normalized&&this.getAttribute("content-mode")!==normalized&&this.setAttribute("content-mode",normalized),this.requestUpdate("contentMode",previous,{reflect:!0,hasChanged:()=>!0})}get toolDisplay(){return this.toolDisplayValue}set toolDisplay(value){const normalized=MESSAGE_PARTS_TOOL_DISPLAY.normalizeReflected(this,"tool-display",value),previous=this.toolDisplayValue;previous!==normalized&&(this.toolDisplayValue=normalized,this.requestUpdate("toolDisplay",previous))}connectedCallback(){super.connectedCallback(),this.errorAnnouncementSink?.element.ownerDocument!==this.ownerDocument&&(this.errorAnnouncementSink?.release(),this.errorAnnouncementSink=acquireAnnouncementSink("assertive",{document:this.ownerDocument,source:this}),this.hasUpdated&&(this.suppressNextErrorAnnouncement=!0,this.requestUpdate()))}disconnectedCallback(){super.disconnectedCallback(),this.errorAnnouncementSink?.release(),this.errorAnnouncementSink=void 0,this.suppressNextErrorAnnouncement=!0}get effectiveParts(){const seen=new Set;return this.parts.filter(part=>{const id=part?.id;return!isNonBlankIdentity(id)||seen.has(id)||part.type==="tool-call"&&!isRecord(part.invocation)||part.type==="citation"&&!isRecord(part.citation)||part.type==="attachment"&&!isRecord(part.document)?!1:(seen.add(id),!0)})}get effectiveMaxRenderedParts(){return finiteCount(this.maxRenderedParts,0)}get renderedParts(){const parts=this.effectiveParts,max=this.effectiveMaxRenderedParts;return max>0&&parts.length>max?parts.slice(-max):parts}willUpdate(changed){if(super.willUpdate(changed),!changed.has("parts")&&this.hasUpdated||(this.redactionByInvocation=this.projectRedactions(),!changed.has("parts")))return;const current=this.effectiveParts.filter(part=>part.type==="error");if(this.hasUpdated&&!this.suppressNextErrorAnnouncement)for(const part of current)this.knownErrorIds.has(part.id)||this.errorAnnouncementSink?.announce(part.message||this.localize("messagePartError"));this.knownErrorIds=new Set(current.map(part=>part.id))}projectRedactions(){const map=new Map,seen=new Set;for(const part of this.effectiveParts){if(part.type!=="tool-call")continue;const id=part.invocation.id;if(typeof id!="string"||seen.has(id))continue;seen.add(id);const paths=projectedRedactionFields(part.invocation.redactedFields)??TOO_MANY_REDACTION_PATHS;paths.length>0&&map.set(id,paths)}return map}redacted(part,invocationId,source){if(typeof invocationId!="string")return;const paths=this.redactionByInvocation.get(invocationId);if(!paths)return;const detail=redactToolDetail(source,paths,this.localize("envListValueHidden"),this.redactionMemo.get(part));return this.redactionMemo.set(part,detail),detail}updated(_changed){super.updated(_changed),this.suppressNextErrorAnnouncement=!1}selectCitation(event,part){event.stopPropagation(),this.emit("lr-citation-select",{citation:part.citation})}partNames(part){const parts=["part"];switch(part.type){case"text":parts.push("text");break;case"reasoning":parts.push("reasoning");break;case"tool-call":parts.push("tool-call");break;case"tool-result":parts.push("tool-result");break;case"citation":parts.push("citation");break;case"attachment":parts.push("attachment");break;case"data":parts.push("data");break;case"audio":parts.push("audio");break;case"error":parts.push("error");break}return part.state==="streaming"&&parts.push("part-streaming"),part.state==="interrupted"&&parts.push("part-interrupted"),parts.join(" ")}renderToolBlock(part,paired){const invocation=part.invocation,result=paired?paired.result:invocation.result,error=paired&&"error"in paired?paired.error:invocation.error,redactedFields=this.redactionByInvocation.get(invocation.id)??EMPTY_REDACTED_FIELDS;return html`<lr-tool-call-block
|
|
2
2
|
.name=${invocation.name}
|
|
3
3
|
.displayName=${invocationDisplayName(invocation)}
|
|
4
4
|
.callId=${invocation.id}
|
|
@@ -139,7 +139,7 @@ export type LyraModelSelectSelectionDirection=LyraSelectionDirection;export inte
|
|
|
139
139
|
* @status stable
|
|
140
140
|
* @since 4.0.0
|
|
141
141
|
*/
|
|
142
|
-
export declare class LyraModelSelect extends LyraCatalogPickerElement<LyraModelSelectEventMap>{protected static collectionSupport:import("../../../internal/lyra-element.js").LyraCollectionSupport;protected static readonly ownedCollectionProperties:readonly string[];static formAssociated:boolean;static styles:import("lit").CSSResultGroup[];static properties:{
|
|
142
|
+
export declare class LyraModelSelect extends LyraCatalogPickerElement<LyraModelSelectEventMap>{protected static collectionSupport:import("../../../internal/lyra-element.js").LyraCollectionSupport;protected static readonly ownedCollectionProperties:readonly string[];static formAssociated:boolean;static styles:import("lit").CSSResultGroup[];static properties:{value:{attribute:boolean;noAccessor:boolean;};defaultValue:{attribute:string;reflect:boolean;useDefault:boolean;noAccessor:boolean;};};
|
|
143
143
|
/** Informational only — e.g. `'ollama'`. Rendered as a small leading badge for display grouping. */
|
|
144
144
|
provider:string;
|
|
145
145
|
/** The clone-owned full model list. Omit (or leave empty) to fall back to plain free-text entry.
|
|
@@ -169,15 +169,10 @@ errorText:string;placeholder:string;
|
|
|
169
169
|
spellcheck:boolean;
|
|
170
170
|
/** Forwarded to the free-text mode's native `<input>`'s own `autocapitalize`. Empty string omits
|
|
171
171
|
* the attribute (browser default). */
|
|
172
|
-
autocapitalize:string;
|
|
173
|
-
/**
|
|
174
|
-
*
|
|
175
|
-
|
|
176
|
-
* `boolean`-typed `HTMLElement.autocorrect` IDL member, which conflicts with this string-typed
|
|
177
|
-
* property of the same name -- same rename fix as `<lr-date-input>` (`<lr-textarea>` instead
|
|
178
|
-
* keeps the native `autocorrect` name and overrides it as a boolean accessor). The explicit
|
|
179
|
-
* attribute mapping preserves the lowercase wire name in generated component metadata. */
|
|
180
|
-
autoCorrect:string;
|
|
172
|
+
autocapitalize:string;private autocorrectValue;
|
|
173
|
+
/** Native editing-assistance state forwarded as canonical `autocorrect="on"|"off"`. Reads are
|
|
174
|
+
* boolean; writes accept the boolean IDL and the `'on'`/`'off'` vocabulary. */
|
|
175
|
+
get autocorrect():boolean;set autocorrect(next:boolean|string);
|
|
181
176
|
/** Native editing and virtual-keyboard hints forwarded to free-text mode's input. */
|
|
182
177
|
autocomplete:string;inputMode:string;enterKeyHint:string;
|
|
183
178
|
/** Whether the model list is open. Effectively disabled controls reject direct reopen attempts,
|
|
@@ -186,30 +181,8 @@ get open():boolean;set open(next:boolean);
|
|
|
186
181
|
/** Visual size, on the library-wide six-step ladder (`2xs`–`xl`). `small`/`medium`/`large` are
|
|
187
182
|
* accepted spellings of `s`/`m`/`l` and render identically, so markup migrated from Web Awesome
|
|
188
183
|
* or Shoelace needs no attribute rewrite. */
|
|
189
|
-
size:LyraSize;private get activeIndex();private get query();private
|
|
190
|
-
/** Consumer-supplied validation message reflected through `custom-error`. */
|
|
191
|
-
customError:string|null;private listId;private controlId;private _fieldsetDisabled;private _name;private _disabled;private _required;protected get catalogEditing():CatalogPickerController<LyraModelCatalogEntry>;protected get formInternals():ElementInternals;private readonly catalogPicker;constructor();connectedCallback():void;protected willUpdate(changed:PropertyValues<this>):void;disconnectedCallback():void;adoptedCallback():void;
|
|
184
|
+
size:LyraSize;private get activeIndex();private get query();private readonly slotPresence;private listId;private controlId;protected get catalogEditing():CatalogPickerController<LyraModelCatalogEntry>;private readonly catalogPicker;connectedCallback():void;protected willUpdate(changed:PropertyValues<this>):void;disconnectedCallback():void;adoptedCallback():void;
|
|
192
185
|
/** The current model id (empty string when nothing is selected). */
|
|
193
186
|
get value():string;set value(next:string);
|
|
194
187
|
/** Reflected current reset default; changing it never overwrites a dirty live `value`. */
|
|
195
|
-
get defaultValue():string;set defaultValue(next:string);
|
|
196
|
-
/** The form submission key, reflected synchronously for native form APIs. */
|
|
197
|
-
get name():string;set name(next:string);get disabled():boolean;set disabled(next:boolean);get required():boolean;set required(next:boolean);
|
|
198
|
-
/** Whether the control is disabled explicitly or by an ancestor fieldset. */
|
|
199
|
-
get effectiveDisabled():boolean;private get barredFromValidation();private updateValidity;private publishValidityStates;formResetCallback():void;formStateRestoreCallback(state:string|File|FormData|null,_mode?:'restore'|'autocomplete'):void;formDisabledCallback(disabled:boolean):void;private markInteracted;checkValidity():boolean;reportValidity():boolean;
|
|
200
|
-
/**
|
|
201
|
-
* Sets or clears a consumer-supplied validation error — the standard channel for a server-side
|
|
202
|
-
* rejection ("that model was retired by the provider") that no client-side constraint can
|
|
203
|
-
* express. A non-empty `message` raises `customError` and becomes `validationMessage`, so the
|
|
204
|
-
* control fails `checkValidity()`, blocks submission, and matches `:state(invalid)`; `''` clears
|
|
205
|
-
* it.
|
|
206
|
-
*
|
|
207
|
-
* Clearing restores the control's own computed validity rather than forcing it valid: a
|
|
208
|
-
* `required` picker with no value stays `valueMissing`. The custom error also survives every
|
|
209
|
-
* intrinsic recomputation in between (each `value`/`required` change re-runs `updateValidity()`)
|
|
210
|
-
* and a `form.reset()` — matching a native control, where only another `setCustomValidity('')`
|
|
211
|
-
* clears it.
|
|
212
|
-
*
|
|
213
|
-
* The message is caller-supplied content, so it is used verbatim and never localized here.
|
|
214
|
-
*/
|
|
215
|
-
setCustomValidity(message:string):void;private get closedMode();private get effectiveEntries();private get filteredEntries();private labelFor;private show;private hide;protected updated(changed:PropertyValues):void;private onTriggerClick;private onTriggerBlur;private onTriggerFocus;private onTriggerKeyDown;private onComboMouseDown;private onInputFocus;private onInput;private onInputBlur;private onInputKeyDown;private onListboxMouseDown;private onListboxClick;private renderRows;private renderListbox;private get hasVisibleLabel();private renderLabel;private renderHintError;private renderClosed;private renderFreeText;render():TemplateResult;}declare global{interface HTMLElementTagNameMap{'lr-model-select':LyraModelSelect;}}
|
|
188
|
+
get defaultValue():string;set defaultValue(next:string);protected requiredMessage():string;formResetCallback():void;formStateRestoreCallback(state:string|File|FormData|null,_mode?:'restore'|'autocomplete'):void;formDisabledCallback(disabled:boolean):void;private get closedMode();private get effectiveEntries();private get filteredEntries();private labelFor;private show;private hide;protected updated(changed:PropertyValues):void;private onTriggerClick;private onTriggerBlur;private onTriggerFocus;private onTriggerKeyDown;private onComboMouseDown;private onInputFocus;private onInput;private onInputBlur;private onInputKeyDown;private onListboxMouseDown;private onListboxClick;private renderRows;private renderListbox;private get hasVisibleLabel();private renderLabel;private renderHintError;private renderClosed;private renderFreeText;render():TemplateResult;}declare global{interface HTMLElementTagNameMap{'lr-model-select':LyraModelSelect;}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{
|
|
1
|
+
import{__decorate}from"tslib";import{nativeAutocorrectAttribute}from"../../../internal/native-text-control.js";import{renderFormControlHintError}from"../../../internal/form-control-template.js";import{installFormControlLabelSupport}from"../../../internal/form-control-labels.js";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property}from"lit/decorators.js";import{LyraElement}from"../../../internal/lyra-element.js";import{LyraCatalogPickerElement}from"../catalog-picker-element.js";import{sizes}from"../../../internal/sizes.styles.js";import{hostAriaLabel,nextId}from"../../../internal/a11y.js";import{chevronIcon}from"../../../internal/icons.js";import{VALIDITY_ANCHOR}from"../../../internal/anchored-validity.js";import{styles}from"./model-select.styles.js";import{autocorrectConverter,normalizeAutocorrect,spellcheckFromAttributeConverter as spellcheckConverter}from"../../../internal/converters.js";import{CatalogPickerController}from"../../../internal/catalog-picker.js";import{SlotPresenceController}from"../../../internal/slot-presence-controller.js";import{LYRA_DEFAULT_model,LYRA_DEFAULT_modelSelectNoModels,LYRA_DEFAULT_modelSelectRequired}from"../../../internal/default-strings/conversation.generated.js";import{LYRA_DEFAULT_noMatches,LYRA_DEFAULT_notInCatalog}from"../../../internal/default-strings/shared.generated.js";installFormControlLabelSupport();class LyraModelSelect extends LyraCatalogPickerElement{constructor(){super(...arguments),this.provider="",this.allowCustom=!1,this.readonly=!1,this.label="",this.hint="",this.errorText="",this.placeholder="",this.spellcheck=!0,this.autocapitalize="",this.autocorrectValue=!0,this.autocomplete="off",this.inputMode="",this.enterKeyHint="",this.size="m",this.slotPresence=new SlotPresenceController(this),this.listId=nextId("model-select-list"),this.controlId=nextId("model-select-control"),this.catalogPicker=new CatalogPickerController(this,{catalog:()=>this.catalog,allowCustom:()=>this.allowCustom,isReadonly:()=>this.readonly,locale:()=>this.effectiveLocale,searchableFields:entry=>[entry.id,entry.label],emitInput:detail=>this.emit("lr-input",detail),emitChange:detail=>this.emit("lr-change",detail),onValueChange:(value,oldValue)=>{this.internals.setFormValue(value),this.updateValidity(),this.requestUpdate("value",oldValue)},onDefaultValueChange:(_value,oldValue)=>this.requestUpdate("defaultValue",oldValue),onStateChange:(state,oldValue)=>{state==="open"?this.requestUpdate("open",oldValue):this.requestUpdate()},onControlFocus:event=>this.captureModeFocus(event),onControlBlur:event=>{this.effectiveDisabled||(this.touched=!0),this.retireModeFocusAfterBlur(event)},forwardFreeInputClick:!0}),this.onTriggerClick=()=>{this.effectiveDisabled||(this.open?this.hide():this.show())},this.onTriggerBlur=event=>{this.catalogPicker.handleControlBlur(event)},this.onTriggerFocus=event=>{this.catalogPicker.handleControlFocus(event)},this.onTriggerKeyDown=e=>{this.catalogPicker.handleTriggerKeyDown(e)},this.onComboMouseDown=e=>{this.catalogPicker.handleComboMouseDown(e)},this.onInputFocus=event=>{this.catalogPicker.handleInputFocus(event)},this.onInput=e=>{this.catalogPicker.handleInput(e)},this.onInputBlur=event=>{this.catalogPicker.handleControlBlur(event)},this.onInputKeyDown=e=>{this.catalogPicker.handleInputKeyDown(e)},this.onListboxMouseDown=e=>{this.catalogPicker.handleListboxMouseDown(e)},this.onListboxClick=e=>{this.catalogPicker.handleListboxClick(e)}}static{this.defaultStrings={...super.defaultStrings,model:LYRA_DEFAULT_model,modelSelectNoModels:LYRA_DEFAULT_modelSelectNoModels,modelSelectRequired:LYRA_DEFAULT_modelSelectRequired,noMatches:LYRA_DEFAULT_noMatches,notInCatalog:LYRA_DEFAULT_notInCatalog}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["catalog"])}static{this.formAssociated=!0}static{this.styles=[LyraElement.styles,sizes,styles]}static{this.properties={value:{attribute:!1,noAccessor:!0},defaultValue:{attribute:"value",reflect:!0,useDefault:!0,noAccessor:!0}}}get autocorrect(){return this.autocorrectValue}set autocorrect(next){this.autocorrectValue=normalizeAutocorrect(next),this.requestUpdate()}get open(){return this.catalogPicker.open}set open(next){this.catalogPicker.setOpen(next)}get activeIndex(){return this.catalogPicker.activeIndex}get query(){return this.catalogPicker.query}get catalogEditing(){return this.catalogPicker}[VALIDITY_ANCHOR](){return this.renderRoot?.querySelector('[part="trigger"], [part="combobox-input"]')??null}connectedCallback(){super.connectedCallback(),this.updateValidity(),this.catalogPicker.connected(this.hasUpdated)}willUpdate(changed){super.willUpdate(changed);const modeChanged=this.prepareModeFocus(this.closedMode);if(this.catalogPicker.suppressControlEvents=modeChanged,this.open&&(changed.has("catalog")||changed.has("value")||changed.has("allowCustom"))){const activeValue=typeof this.renderRoot?.querySelector=="function"?this.renderRoot.querySelector('[part="option"][data-active]')?.dataset.value:void 0;this.catalogPicker.reconcileRows(activeValue,changed.has("value")||changed.has("allowCustom")||modeChanged,!1)}}disconnectedCallback(){super.disconnectedCallback(),this.clearModeFocus(),this.catalogPicker.disconnected()}adoptedCallback(){super.adoptedCallback(),this.clearModeFocus(),this.catalogPicker.adopted()}get value(){return this.catalogPicker.value}set value(next){this.catalogPicker.value=next}get defaultValue(){return this.catalogPicker.defaultValue}set defaultValue(next){this.catalogPicker.defaultValue=next}requiredMessage(){return this.localize("modelSelectRequired")}formResetCallback(){this.touched=!1,this.catalogPicker.resetValue()}formStateRestoreCallback(state,_mode){this.catalogPicker.restoreState(state)}formDisabledCallback(disabled){this.formDisabledChanged(disabled)}get closedMode(){return this.catalogPicker.closedMode}get effectiveEntries(){return this.catalogPicker.effectiveEntries}get filteredEntries(){return this.catalogPicker.filteredEntries}labelFor(id){return this.catalogPicker.labelFor(id)}show(){this.catalogPicker.show()}hide(){this.catalogPicker.hide()}updated(changed){super.updated(changed),this.syncCatalogDescription(this.controlId);const reposition=changed.has("open")||this.open&&(changed.has("catalog")||changed.has("allowCustom"));this.catalogPicker.updated(reposition),(changed.has("required")||changed.has("readonly")||changed.has("touched")||changed.has("value"))&&(changed.has("readonly")&&this.updateValidity(),this.toggleAttribute("data-invalid",this.touched&&!this.internals.validity.valid)),this.publishValidityStates(),this.catalogPicker.suppressControlEvents=!1,this.finishModeFocus("model-select-mode-focus")}renderRows(rows,activeId){return rows.map((entry,i)=>{const id=`${this.listId}-opt-${i}`,selected=entry.id===this.value,disabled=entry.disabled===!0;return html`<div
|
|
2
2
|
part="option"
|
|
3
3
|
id=${id}
|
|
4
4
|
role="option"
|
|
@@ -77,7 +77,7 @@ import{__decorate}from"tslib";import{renderFormControlHintError}from"../../../in
|
|
|
77
77
|
autocomplete=${this.autocomplete||nothing}
|
|
78
78
|
spellcheck=${this.spellcheck}
|
|
79
79
|
autocapitalize=${this.autocapitalize||nothing}
|
|
80
|
-
autocorrect=${this.
|
|
80
|
+
autocorrect=${nativeAutocorrectAttribute(this,this.autocorrect)}
|
|
81
81
|
inputmode=${this.inputMode||nothing}
|
|
82
82
|
enterkeyhint=${this.enterKeyHint||nothing}
|
|
83
83
|
.value=${this.open?this.query:this.labelFor(this.value)}
|
|
@@ -95,4 +95,4 @@ import{__decorate}from"tslib";import{renderFormControlHintError}from"../../../in
|
|
|
95
95
|
${this.renderHintError(hasError,hasHint)}
|
|
96
96
|
`}render(){return html`<div part="form-control" tabindex="-1">
|
|
97
97
|
${this.closedMode?this.renderClosed():this.renderFreeText()}
|
|
98
|
-
</div>`}}__decorate([property()],LyraModelSelect.prototype,"provider",void 0),__decorate([property({attribute:!1})],LyraModelSelect.prototype,"catalog",void 0),__decorate([property({type:Boolean,reflect:!0,attribute:"allow-custom"})],LyraModelSelect.prototype,"allowCustom",void 0),__decorate([property({type:Boolean,reflect:!0})],LyraModelSelect.prototype,"readonly",void 0),__decorate([property()],LyraModelSelect.prototype,"label",void 0),__decorate([property()],LyraModelSelect.prototype,"hint",void 0),__decorate([property({attribute:"error-text"})],LyraModelSelect.prototype,"errorText",void 0),__decorate([property()],LyraModelSelect.prototype,"placeholder",void 0),__decorate([property({converter:spellcheckConverter})],LyraModelSelect.prototype,"spellcheck",void 0),__decorate([property()],LyraModelSelect.prototype,"autocapitalize",void 0),__decorate([property({
|
|
98
|
+
</div>`}}__decorate([property()],LyraModelSelect.prototype,"provider",void 0),__decorate([property({attribute:!1})],LyraModelSelect.prototype,"catalog",void 0),__decorate([property({type:Boolean,reflect:!0,attribute:"allow-custom"})],LyraModelSelect.prototype,"allowCustom",void 0),__decorate([property({type:Boolean,reflect:!0})],LyraModelSelect.prototype,"readonly",void 0),__decorate([property()],LyraModelSelect.prototype,"label",void 0),__decorate([property()],LyraModelSelect.prototype,"hint",void 0),__decorate([property({attribute:"error-text"})],LyraModelSelect.prototype,"errorText",void 0),__decorate([property()],LyraModelSelect.prototype,"placeholder",void 0),__decorate([property({converter:spellcheckConverter})],LyraModelSelect.prototype,"spellcheck",void 0),__decorate([property()],LyraModelSelect.prototype,"autocapitalize",void 0),__decorate([property({converter:autocorrectConverter})],LyraModelSelect.prototype,"autocorrect",null),__decorate([property()],LyraModelSelect.prototype,"autocomplete",void 0),__decorate([property({attribute:"inputmode"})],LyraModelSelect.prototype,"inputMode",void 0),__decorate([property({attribute:"enterkeyhint"})],LyraModelSelect.prototype,"enterKeyHint",void 0),__decorate([property({type:Boolean,reflect:!0})],LyraModelSelect.prototype,"open",null),__decorate([property({reflect:!0})],LyraModelSelect.prototype,"size",void 0);export{LyraModelSelect};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{focusRing}from"../../../internal/interactive-control.styles.js";import{css}from"lit";import{glassSurface}from"../../../internal/glass-surface.styles.js";import{glassScrollLayerStyles}from"../../../internal/glass-scroll-layer.styles.js";import{glassIndependentRootStyles}from"../../../internal/glass-independent-root.styles.js";import{formControlChrome,formControlFocusHalo,formControlRequiredMarker}from"../../../internal/form-control.styles.js";import{overlaySurfaceFill,overlaySurfaceControlEdge}from"../../../internal/overlay-surface.styles.js";const styles=css` :host { position: relative; display: inline-block; inline-size: 100%; min-inline-size: 0; max-inline-size: var(--lr-model-select-max-inline-size, var(--lr-size-24rem)); --_lr-model-select-trigger-padding: var(--lr-form-control-padding-block) var(--lr-form-control-padding-inline); --_lr-model-select-trigger-min-height: var(--lr-form-control-height); --_lr-model-select-font-size: var(--lr-form-control-font-size); --_lr-model-select-expand-size: var(--lr-size-1-75rem); --_lr-model-select-gap-default: var(--lr-space-xs); --_lr-model-select-radius-default: var(--lr-form-control-radius); --_lr-form-control-focus-shadow: var(--lr-form-control-focus-shadow, none); } :host(:disabled) { cursor: not-allowed; } :host([size="2xs"]), :host([size="xs"]) { --_lr-model-select-expand-size: var(--lr-size-1rem); } :host([size="s"]), :host([size="small"]) { --_lr-model-select-expand-size: var(--lr-size-1-25rem); } ${formControlChrome} ${formControlRequiredMarker} [part='trigger'], [part='combobox'] { display: flex; align-items: center; gap: var(--lr-model-select-gap, var(--_lr-model-select-gap-default)); inline-size: 100%; min-inline-size: 0; min-block-size: var( --lr-model-select-trigger-height, var( --lr-model-select-trigger-min-height, var(--_lr-model-select-trigger-min-height) ) ); block-size: var(--lr-model-select-trigger-height, auto); box-sizing: border-box; padding: var( --lr-model-select-trigger-padding, var(--_lr-model-select-trigger-padding) ); border: var(--lr-border-width-thin) solid var(--lr-model-select-trigger-border-color, var(--lr-color-border)); border-radius: var( --lr-model-select-radius, var(--_lr-model-select-radius-default) ); background: var(--lr-model-select-trigger-fill, var(--lr-color-surface)); color: inherit; font: inherit; font-size: var( --lr-model-select-font-size, var(--_lr-model-select-font-size) ); } [part="trigger"] { cursor: pointer; text-align: start; } [part="combobox"] { cursor: text; } [part="trigger"]:focus-visible, [part="combobox"]:focus-within { ${focusRing} } [part="trigger"]:focus, [part="combobox"]:focus-within { ${formControlFocusHalo} } :where([part="trigger"]):hover:where(:not(:disabled)) { background: var(--lr-color-brand-quiet); border-color: var( --lr-model-select-trigger-hover-border-color, var(--lr-model-select-trigger-border-color, var(--lr-color-border)) ); } :where([part="trigger"]):active:where(:not(:disabled)) { background: color-mix( in oklab, var(--lr-color-brand-quiet), var(--lr-color-mix-partner) var(--lr-color-mix-active) ); } :host([open]) [part="trigger"] { border-color: var( --lr-model-select-open-border-color, var(--lr-color-brand) ); } :host(:disabled) [part="trigger"], :host(:disabled) [part="combobox"] { opacity: var(--lr-opacity-disabled); cursor: not-allowed; }
|
|
1
|
+
import{focusRing}from"../../../internal/interactive-control.styles.js";import{css}from"lit";import{catalogPickerTriggerLabel}from"../catalog-picker-trigger.styles.js";import{glassSurface}from"../../../internal/glass-surface.styles.js";import{glassScrollLayerStyles}from"../../../internal/glass-scroll-layer.styles.js";import{glassIndependentRootStyles}from"../../../internal/glass-independent-root.styles.js";import{formControlChrome,formControlFocusHalo,formControlRequiredMarker}from"../../../internal/form-control.styles.js";import{overlaySurfaceFill,overlaySurfaceControlEdge}from"../../../internal/overlay-surface.styles.js";const styles=css` :host { position: relative; display: inline-block; inline-size: 100%; min-inline-size: 0; max-inline-size: var(--lr-model-select-max-inline-size, var(--lr-size-24rem)); --_lr-model-select-trigger-padding: var(--lr-form-control-padding-block) var(--lr-form-control-padding-inline); --_lr-model-select-trigger-min-height: var(--lr-form-control-height); --_lr-model-select-font-size: var(--lr-form-control-font-size); --_lr-model-select-expand-size: var(--lr-size-1-75rem); --_lr-model-select-gap-default: var(--lr-space-xs); --_lr-model-select-radius-default: var(--lr-form-control-radius); --_lr-form-control-focus-shadow: var(--lr-form-control-focus-shadow, none); } :host(:disabled) { cursor: not-allowed; } :host([size="2xs"]), :host([size="xs"]) { --_lr-model-select-expand-size: var(--lr-size-1rem); } :host([size="s"]), :host([size="small"]) { --_lr-model-select-expand-size: var(--lr-size-1-25rem); } ${formControlChrome} ${formControlRequiredMarker} [part='trigger'], [part='combobox'] { display: flex; align-items: center; gap: var(--lr-model-select-gap, var(--_lr-model-select-gap-default)); inline-size: 100%; min-inline-size: 0; min-block-size: var( --lr-model-select-trigger-height, var( --lr-model-select-trigger-min-height, var(--_lr-model-select-trigger-min-height) ) ); block-size: var(--lr-model-select-trigger-height, auto); box-sizing: border-box; padding: var( --lr-model-select-trigger-padding, var(--_lr-model-select-trigger-padding) ); border: var(--lr-border-width-thin) solid var(--lr-model-select-trigger-border-color, var(--lr-color-border)); border-radius: var( --lr-model-select-radius, var(--_lr-model-select-radius-default) ); background: var(--lr-model-select-trigger-fill, var(--lr-color-surface)); color: inherit; font: inherit; font-size: var( --lr-model-select-font-size, var(--_lr-model-select-font-size) ); } [part="trigger"] { cursor: pointer; text-align: start; } [part="combobox"] { cursor: text; } [part="trigger"]:focus-visible, [part="combobox"]:focus-within { ${focusRing} } [part="trigger"]:focus, [part="combobox"]:focus-within { ${formControlFocusHalo} } :where([part="trigger"]):hover:where(:not(:disabled)) { background: var(--lr-color-brand-quiet); border-color: var( --lr-model-select-trigger-hover-border-color, var(--lr-model-select-trigger-border-color, var(--lr-color-border)) ); } :where([part="trigger"]):active:where(:not(:disabled)) { background: color-mix( in oklab, var(--lr-color-brand-quiet), var(--lr-color-mix-partner) var(--lr-color-mix-active) ); } :host([open]) [part="trigger"] { border-color: var( --lr-model-select-open-border-color, var(--lr-color-brand) ); } :host(:disabled) [part="trigger"], :host(:disabled) [part="combobox"] { opacity: var(--lr-opacity-disabled); cursor: not-allowed; } ${catalogPickerTriggerLabel} [part="combobox-input"] { flex: 1 1 auto; min-inline-size: 0; border: none; outline: none; background: transparent; color: inherit; font: inherit; } [part="combobox-input"]::placeholder { color: var(--lr-color-text-quiet); } [part="expand-icon"] { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; color: var(--lr-color-text-quiet); min-inline-size: min( var(--lr-icon-button-size), var(--lr-model-select-expand-size, var(--_lr-model-select-expand-size)) ); min-block-size: min( var(--lr-icon-button-size), var(--lr-model-select-expand-size, var(--_lr-model-select-expand-size)) ); line-height: var(--lr-line-height-none); } [part="expand-icon"] svg { transform: rotate(90deg); } [part="listbox"][hidden] { display: none; } [part="listbox"] { position: fixed; z-index: var(--lr-layer-dropdown); box-sizing: border-box; max-block-size: min(var(--lr-size-18rem), var(--lr-positioner-available-block-size, var(--lr-size-18rem))); overflow-y: auto; overflow-x: hidden; inline-size: max-content; min-inline-size: min(var(--lr-size-12rem), var(--lr-positioner-available-inline-size, var(--lr-size-12rem))); max-inline-size: min(var(--lr-popover-viewport-clamp), var(--lr-size-28rem), var(--lr-positioner-available-inline-size, 100vw)); padding: var(--lr-space-xs); ${overlaySurfaceFill} ${overlaySurfaceControlEdge} border-radius: var( --lr-model-select-radius, var(--lr-overlay-radius, var(--_lr-model-select-radius-default)) ); box-shadow: var(--lr-overlay-shadow-anchored, var(--lr-shadow-m)); visibility: hidden; opacity: 0; transform: translateY(var(--lr-size-neg-0-25rem)); transition: opacity var(--lr-transition-fast), transform var(--lr-transition-fast), visibility var(--lr-transition-fast); } :host([open]) [part="listbox"] { visibility: visible; opacity: 1; transform: translateY(0); } @media (prefers-reduced-motion: reduce) { [part="listbox"] { transition: none !important; } } [part="option"] { display: flex; align-items: center; gap: var(--lr-model-select-gap, var(--_lr-model-select-gap-default)); inline-size: 100%; box-sizing: border-box; padding: var(--lr-space-xs) var(--lr-space-s); border: var(--lr-border-width-thin) solid transparent; border-radius: var( --lr-model-select-radius, var(--_lr-model-select-radius-default) ); background: none; color: inherit; font: inherit; text-align: start; cursor: pointer; } [part="option"][aria-selected="true"] { background: var(--lr-model-select-option-selected-bg, transparent); border-color: var( --lr-model-select-option-selected-border, var(--lr-color-brand) ); color: var(--lr-model-select-option-selected-color, var(--lr-color-brand)); font-weight: var( --lr-model-select-option-selected-font-weight, var(--lr-font-weight-semibold) ); } [part="option"]:where(:not([aria-disabled='true'])):hover, [part="option"][data-active] { background: var( --lr-model-select-option-active-bg, var(--lr-color-brand-quiet) ); } [part="option"]:where(:not([aria-disabled='true'])):active { background: color-mix( in oklab, var(--lr-model-select-option-active-bg, var(--lr-color-brand-quiet)), var(--lr-color-mix-partner) var(--lr-color-mix-active) ); } [part="option"][aria-disabled='true'] { cursor: default; opacity: var(--lr-model-select-option-disabled-opacity, 0.5); } [part="option-icon"] { flex: 0 0 auto; line-height: var(--lr-line-height-1-4); } [part="option-label"] { flex: 1 1 auto; min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } [part="option"][data-synthetic] { border-style: var(--lr-model-select-option-synthetic-border-style, dashed); border-color: var( --lr-model-select-option-synthetic-border-color, var(--lr-color-border) ); } [part="option"][data-synthetic] [part="option-label"] { font-style: var(--lr-model-select-option-synthetic-font-style, italic); } [part="option-badge"] { flex: 0 0 auto; font-size: var(--lr-size-0-6875rem); font-style: normal; font-weight: var(--lr-font-weight-normal); color: var(--lr-color-text-quiet); white-space: nowrap; } [part="empty"] { padding: var(--lr-space-m); color: var(--lr-color-text-quiet); font-size: var(--lr-font-size-md-sm); } ${glassScrollLayerStyles} ${glassIndependentRootStyles} ${glassSurface('[part="listbox"]',css`var(--lr-overlay-surface, var(--_lr-overlay-surface, var(--lr-color-surface-container-high)))`,void 0,!0)} `;export{styles};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html}from"lit";import{property}from"lit/decorators.js";import{LyraElement}from"../../../internal/lyra-element.js";import{normalizeCatalog}from"../../../internal/catalog-picker.js";import{getNumberFormat}from"../../../internal/intl-cache.js";import{finiteNumber,finiteRange}from"../../../internal/numbers.js";import{clampSteppedValue}from"../../../internal/step-value.js";import{literalSetConverter}from"../../../internal/converters.js";import{styles}from"./model-settings-panel.styles.js";import"../model-select/model-select.class.js";import"../../forms/slider/slider.class.js";import{LYRA_DEFAULT_model,LYRA_DEFAULT_selectModel,LYRA_DEFAULT_temperature}from"../../../internal/default-strings.generated.js";const MODEL_SETTINGS_PANEL_LAYOUT=literalSetConverter(["vertical","compact"],"vertical"),DEFAULT_TEMPERATURE_MIN=0,DEFAULT_TEMPERATURE_MAX=2,DEFAULT_TEMPERATURE_STEP=.1,DEFAULT_TEMPERATURE=1;class LyraModelSettingsPanel extends LyraElement{constructor(){super(...arguments),this.provider="",this.model="",this.allowCustom=!1,this.temperature=DEFAULT_TEMPERATURE,this.temperatureMin=DEFAULT_TEMPERATURE_MIN,this.temperatureMax=DEFAULT_TEMPERATURE_MAX,this.temperatureStep=DEFAULT_TEMPERATURE_STEP,this._layout="vertical",this.disabled=!1,this.formatTemperature=value=>{const expanded=getNumberFormat(this.effectiveLocale,{maximumFractionDigits:20}).format(value);return expanded.length<=24?expanded:getNumberFormat(this.effectiveLocale,{notation:"scientific",maximumSignificantDigits:6}).format(value)},this.onModelChange=e=>{e.stopPropagation(),!this.disabled&&(this.model=e.detail.value,this.emitChange())},this.onTemperatureChange=e=>{e.stopPropagation(),!this.disabled&&(this.temperature=this.clampTemperature(e.detail.value),this.emitChange())},this.onTemperatureInput=e=>{e.stopPropagation(),!this.disabled&&(this.temperature=this.clampTemperature(e.detail.value))},this.containNativeEvent=event=>{event.stopPropagation()}}static{this.defaultStrings={...super.defaultStrings,model:LYRA_DEFAULT_model,selectModel:LYRA_DEFAULT_selectModel,temperature:LYRA_DEFAULT_temperature}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["catalog"])}static{this.styles=[LyraElement.styles,styles]}get layout(){return this._layout}set layout(next){const normalized=MODEL_SETTINGS_PANEL_LAYOUT.normalizeReflected(this,"layout",next),old=this._layout;old!==normalized&&(this._layout=normalized,this.requestUpdate("layout",old))}get inCatalog(){return normalizeCatalog(this.catalog).some(entry=>entry.id===this.model)}get temperatureDomain(){const min=finiteNumber(this.temperatureMin,DEFAULT_TEMPERATURE_MIN),max=finiteNumber(this.temperatureMax,DEFAULT_TEMPERATURE_MAX);return{min,max,lo:Math.min(min,max),hi:Math.max(min,max),step:finiteRange(this.temperatureStep,0,0)}}clampTemperature(raw){const{lo,hi,step}=this.temperatureDomain,temperature=finiteNumber(raw,lo);return clampSteppedValue(temperature,lo,hi,step)}emitChange(){this.emit("lr-change",{model:this.model,inCatalog:this.inCatalog,temperature:this.temperature})}willUpdate(changed){if(super.willUpdate(changed),changed.has("temperature")||changed.has("temperatureMin")||changed.has("temperatureMax")||changed.has("temperatureStep")){const clamped=this.clampTemperature(this.temperature);clamped!==this.temperature&&(this.temperature=clamped)}}render(){const domain=this.temperatureDomain,modelLabel=this.localize("model"),temperatureLabel=this.localize("temperature");return html`
|
|
1
|
+
import{__decorate}from"tslib";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html}from"lit";import{property}from"lit/decorators.js";import{LyraElement}from"../../../internal/lyra-element.js";import{normalizeCatalog}from"../../../internal/catalog-picker.js";import{getNumberFormat}from"../../../internal/intl-cache.js";import{finiteNumber,finiteRange}from"../../../internal/numbers.js";import{clampSteppedValue}from"../../../internal/step-value.js";import{literalSetConverter}from"../../../internal/converters.js";import{styles}from"./model-settings-panel.styles.js";import"../model-select/model-select.class.js";import"../../forms/slider/slider.class.js";import{LYRA_DEFAULT_model,LYRA_DEFAULT_selectModel,LYRA_DEFAULT_temperature}from"../../../internal/default-strings/conversation.generated.js";const MODEL_SETTINGS_PANEL_LAYOUT=literalSetConverter(["vertical","compact"],"vertical"),DEFAULT_TEMPERATURE_MIN=0,DEFAULT_TEMPERATURE_MAX=2,DEFAULT_TEMPERATURE_STEP=.1,DEFAULT_TEMPERATURE=1;class LyraModelSettingsPanel extends LyraElement{constructor(){super(...arguments),this.provider="",this.model="",this.allowCustom=!1,this.temperature=DEFAULT_TEMPERATURE,this.temperatureMin=DEFAULT_TEMPERATURE_MIN,this.temperatureMax=DEFAULT_TEMPERATURE_MAX,this.temperatureStep=DEFAULT_TEMPERATURE_STEP,this._layout="vertical",this.disabled=!1,this.formatTemperature=value=>{const expanded=getNumberFormat(this.effectiveLocale,{maximumFractionDigits:20}).format(value);return expanded.length<=24?expanded:getNumberFormat(this.effectiveLocale,{notation:"scientific",maximumSignificantDigits:6}).format(value)},this.onModelChange=e=>{e.stopPropagation(),!this.disabled&&(this.model=e.detail.value,this.emitChange())},this.onTemperatureChange=e=>{e.stopPropagation(),!this.disabled&&(this.temperature=this.clampTemperature(e.detail.value),this.emitChange())},this.onTemperatureInput=e=>{e.stopPropagation(),!this.disabled&&(this.temperature=this.clampTemperature(e.detail.value))},this.containNativeEvent=event=>{event.stopPropagation()}}static{this.defaultStrings={...super.defaultStrings,model:LYRA_DEFAULT_model,selectModel:LYRA_DEFAULT_selectModel,temperature:LYRA_DEFAULT_temperature}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["catalog"])}static{this.styles=[LyraElement.styles,styles]}get layout(){return this._layout}set layout(next){const normalized=MODEL_SETTINGS_PANEL_LAYOUT.normalizeReflected(this,"layout",next),old=this._layout;old!==normalized&&(this._layout=normalized,this.requestUpdate("layout",old))}get inCatalog(){return normalizeCatalog(this.catalog).some(entry=>entry.id===this.model)}get temperatureDomain(){const min=finiteNumber(this.temperatureMin,DEFAULT_TEMPERATURE_MIN),max=finiteNumber(this.temperatureMax,DEFAULT_TEMPERATURE_MAX);return{min,max,lo:Math.min(min,max),hi:Math.max(min,max),step:finiteRange(this.temperatureStep,0,0)}}clampTemperature(raw){const{lo,hi,step}=this.temperatureDomain,temperature=finiteNumber(raw,lo);return clampSteppedValue(temperature,lo,hi,step)}emitChange(){this.emit("lr-change",{model:this.model,inCatalog:this.inCatalog,temperature:this.temperature})}willUpdate(changed){if(super.willUpdate(changed),changed.has("temperature")||changed.has("temperatureMin")||changed.has("temperatureMax")||changed.has("temperatureStep")){const clamped=this.clampTemperature(this.temperature);clamped!==this.temperature&&(this.temperature=clamped)}}render(){const domain=this.temperatureDomain,modelLabel=this.localize("model"),temperatureLabel=this.localize("temperature");return html`
|
|
2
2
|
<div part="base" @input=${this.containNativeEvent} @change=${this.containNativeEvent}>
|
|
3
3
|
<div part="model-row">
|
|
4
4
|
<lr-model-select
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type{LyraEventDetailSnapshot}from'../../../internal/lyra-element.js';import{type PropertyValues,type TemplateResult}from'lit';import type{DocumentRef}from'../../../ai/types.js';import{LyraElement}from'../../../internal/lyra-element.js';import type{LyraAttachmentCapability,LyraAttachmentFilesDetail}from'../../media/attachment-trigger/attachment-trigger.class.js';import type{LyraSourceEntry}from'../../retrieval/source-picker/source-picker.class.js';export type{LyraSourceEntry}from'../../retrieval/source-picker/source-picker.class.js';import type{LyraMentionItem}from'../../utility/mention-popover/mention-popover.class.js';import type{ChatComposerSelectionDirection,ChatComposerStatus,ChatComposerWrap}from'../chat-composer/chat-composer.class.js';import type{LyraCatalog,LyraModelCatalogEntry}from'../model-select/model-select.class.js';import type{PromptQueueItem}from'../prompt-queue/prompt-queue.class.js';export type{PromptQueueItem}from'../prompt-queue/prompt-queue.class.js';import type{PromptQueueChangeDetail}from'../prompt-queue/prompt-queue.class.js';import type{LyraAttachmentIdDetail,LyraAttachmentPreviewRequestDetail,LyraAttachmentUploadStatus}from'../../media/attachment-chip/attachment-chip.class.js';import type{LyraVoiceCatalogEntry}from'../voice-picker/voice-picker.class.js';export type{LyraVoiceCatalogEntry}from'../voice-picker/voice-picker.class.js';export interface LyraPromptSuggestion extends LyraMentionItem{
|
|
1
|
+
import type{LyraEventDetailSnapshot}from'../../../internal/lyra-element.js';import{type PropertyValues,type TemplateResult}from'lit';import type{DocumentRef}from'../../../ai/types.js';import{LyraElement}from'../../../internal/lyra-element.js';import type{LyraAttachmentCapability,LyraAttachmentFilesDetail}from'../../media/attachment-trigger/attachment-trigger.class.js';import type{LyraSourceEntry}from'../../retrieval/source-picker/source-picker.class.js';export type{LyraSourceEntry}from'../../retrieval/source-picker/source-picker.class.js';import type{LyraMentionItem}from'../../utility/mention-popover/mention-popover.class.js';import type{ChatComposerActionsLayout,ChatComposerFrame,ChatComposerSelectionDirection,ChatComposerStatus,ChatComposerWrap}from'../chat-composer/chat-composer.class.js';import type{LyraCatalog,LyraModelCatalogEntry}from'../model-select/model-select.class.js';import type{PromptQueueItem}from'../prompt-queue/prompt-queue.class.js';export type{PromptQueueItem}from'../prompt-queue/prompt-queue.class.js';import type{PromptQueueChangeDetail}from'../prompt-queue/prompt-queue.class.js';import type{LyraAttachmentIdDetail,LyraAttachmentPreviewRequestDetail,LyraAttachmentUploadStatus}from'../../media/attachment-chip/attachment-chip.class.js';import type{LyraVoiceCatalogEntry}from'../voice-picker/voice-picker.class.js';export type{LyraVoiceCatalogEntry}from'../voice-picker/voice-picker.class.js';export interface LyraPromptSuggestion extends LyraMentionItem{
|
|
2
2
|
/** Inserted after the trigger. Defaults to `label`. */
|
|
3
3
|
insertText?:string;}export interface LyraPromptInputAttachment extends Omit<DocumentRef,'id'>{attachmentId:string;file?:File;
|
|
4
4
|
/** File size in bytes, forwarded to the rendered attachment chip. */
|
|
@@ -27,6 +27,7 @@ bytes?:number;status?:LyraAttachmentUploadStatus;progress?:number;}export interf
|
|
|
27
27
|
* @slot controls - Replaces the data-driven model, voice, and source controls.
|
|
28
28
|
* @slot start - Attachment-control content rendered before the textarea. Replaces the default
|
|
29
29
|
* attachment trigger.
|
|
30
|
+
* @slot toolbar - Content above the textarea, forwarded to the composed composer's `toolbar` slot.
|
|
30
31
|
* @slot chips - Replaces the data-driven attachment chips.
|
|
31
32
|
* @slot end - Custom send/stop action replacing the built-in composer action.
|
|
32
33
|
* @slot footer - Content below the composer.
|
|
@@ -80,7 +81,11 @@ withoutEnterSubmit:boolean;
|
|
|
80
81
|
/** Forwarded to the composed composer: gates Send without disabling the textarea or Stop. */
|
|
81
82
|
submitDisabled:boolean;
|
|
82
83
|
/** Forwarded to the composed composer: a busy composer shows a disabled Send instead of Stop. */
|
|
83
|
-
withoutStop:boolean;
|
|
84
|
+
withoutStop:boolean;
|
|
85
|
+
/** Forwarded to the composed composer: `'plain'` removes its border, background and padding. */
|
|
86
|
+
frame:ChatComposerFrame;
|
|
87
|
+
/** Forwarded to the composed composer: `'stacked'` arranges `start` above `end` beside the textarea. */
|
|
88
|
+
actionsLayout:ChatComposerActionsLayout;minRows:number;maxRows:number;
|
|
84
89
|
/** Forwarded to the composed native textarea. `spellcheck="false"` parses as `false`, matching
|
|
85
90
|
* the textarea's true default while remaining usable from plain HTML. */
|
|
86
91
|
spellcheck:boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{setNativeRangeText,nativeAutocorrectAttribute}from"../../../internal/native-text-control.js";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property,query,state}from"lit/decorators.js";import{ifDefined}from"lit/directives/if-defined.js";import{repeat}from"lit/directives/repeat.js";import{autocorrectConverter,normalizeAutocorrect,trueDefaultBooleanConverter}from"../../../internal/converters.js";import{LyraElement}from"../../../internal/lyra-element.js";import{lengthLimitConverter}from"../../../internal/length-constraints.js";import{relayNativeEvent}from"../../../internal/native-event-relay.js";import{SlotPresenceController}from"../../../internal/slot-presence-controller.js";import{deepActiveElementIn}from"../../../internal/active-element.js";import{isHtmlElement}from"../../../internal/dom-guards.js";import{normalizeCatalog}from"../../../internal/catalog-picker.js";import{composedContains}from"../../../internal/overlay-manager.js";import{canonicalIdentityList,firstByRetrievalIdentity as firstByPromptIdentity}from"../../retrieval/retrieval-identity.js";import{guard}from"lit/directives/guard.js";import{acquireResolvedAriaRelationship}from"../../../internal/aria-controls.js";import{normalizeChatComposerStatus}from"../chat-composer/chat-composer.class.js";import{styles}from"./prompt-input.styles.js";import{LYRA_DEFAULT_fieldRequired,LYRA_DEFAULT_promptInputAttachments,LYRA_DEFAULT_promptInputControls,LYRA_DEFAULT_promptInputLabel,LYRA_DEFAULT_promptInputSources}from"../../../internal/default-strings.generated.js";class LyraPromptInput extends LyraElement{constructor(){super(...arguments),this.suggestionCaretGeneration=0,this._value="",this.statusValue="idle",this.placeholder="",this.disabled=!1,this.readOnly=!1,this.withoutEnterSubmit=!1,this.submitDisabled=!1,this.withoutStop=!1,this.minRows=1,this.maxRows=8,this.spellcheck=!0,this.autocapitalize="",this.autocorrectValue=!0,this.wrap="soft",this.autocomplete="",this.inputMode="",this.enterKeyHint="",this.attachments=[],this.attachmentCapabilities=["files","image","audio"],this.mentionItems=[],this.commandItems=[],this.model="",this.voice="",this.sources=[],this.selectedSourceIds=[],this.queue=[],this.accessibleLabel=null,this.activeSuggestion=null,this.slotPresence=new SlotPresenceController(this),this.suggestionNavigationGeneration=0,this.syncDescription=()=>{const target=this.composer?.input;this.isConnected&&target&&!this.descriptionLease&&(this.descriptionLease=acquireResolvedAriaRelationship(this,target,"aria-describedby"))},this.onCompositeKeyDown=event=>{event.composedPath()[0]===this.composer?.input&&this.onKeyDown(event)},this.onCompositeFocusOut=event=>{const popover=this.suggestionPopover;if(!popover||!this.activeSuggestion||!popover.open)return;const relatedTarget=isHtmlElement(event.relatedTarget)?event.relatedTarget:null;this.suggestionFocusIsOwned(popover,relatedTarget)||(this.suggestionNavigationGeneration+=1);const generation=this.suggestionNavigationGeneration;queueMicrotask(()=>{if(!this.isConnected||generation!==this.suggestionNavigationGeneration)return;const currentPopover=this.suggestionPopover;(!currentPopover||!this.suggestionFocusIsOwned(currentPopover))&&this.closeSuggestions()})},this.onNativeInput=event=>{if(this.disabled||this.readOnly||!this.composer||!event.composedPath().includes(this.composer)){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeChange=event=>{if(this.disabled||this.readOnly||!this.composer||!event.composedPath().includes(this.composer)){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeFocus=event=>{if(event.target!==this.composer){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeBlur=event=>{if(event.target!==this.composer){event.stopPropagation();return}relayNativeEvent(this,event)},this.firstByIdentity=new WeakMap}static{this.defaultStrings={...super.defaultStrings,fieldRequired:LYRA_DEFAULT_fieldRequired,promptInputAttachments:LYRA_DEFAULT_promptInputAttachments,promptInputControls:LYRA_DEFAULT_promptInputControls,promptInputLabel:LYRA_DEFAULT_promptInputLabel,promptInputSources:LYRA_DEFAULT_promptInputSources}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["attachments","attachmentCapabilities","mentionItems","commandItems","modelCatalog","voiceCatalog","sources","selectedSourceIds","queue"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-attachments-add","lr-sources-change","lr-queue-change","lr-send-now"])}static{this.identityEventDetailProperties=Object.freeze({"lr-send-now":Object.freeze(["item"])})}static{this.identityEventDetailCollectionItems=Object.freeze({"lr-queue-change":Object.freeze(["items"])})}get value(){return this._value}set value(next){if(next===this._value)return;const old=this._value;this._value=next,this.suggestionCaretGeneration+=1,this.requestUpdate("value",old)}get status(){return this.statusValue}set status(value){const previous=this.statusValue;this.statusValue=normalizeChatComposerStatus(value),this.requestUpdate("status",previous)}get autocorrect(){return this.autocorrectValue}set autocorrect(next){this.autocorrectValue=normalizeAutocorrect(next),this.requestUpdate()}focus(options){this.composer?.focus(options)}blur(){this.composer?.blur()}click(){this.disabled||this.composer?.click()}get input(){return this.composer?.input??null}get selectionStart(){return this.composer?.selectionStart??null}set selectionStart(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionStart=value)}get selectionEnd(){return this.composer?.selectionEnd??null}set selectionEnd(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionEnd=value)}get selectionDirection(){return this.composer?.selectionDirection??null}set selectionDirection(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionDirection=value)}select(){this.suggestionCaretGeneration+=1,this.composer?.select()}setSelectionRange(start,end,direction){this.suggestionCaretGeneration+=1,this.composer?.setSelectionRange(start,end,direction)}setRangeText(replacement,start,end,selectMode){const composer=this.composer;composer&&(setNativeRangeText(composer,replacement,start,end,selectMode),this.value=composer.value)}willUpdate(changed){super.willUpdate(changed);let invalidate=changed.has("mentionItems")||changed.has("commandItems")||changed.has("disabled")||changed.has("readOnly");if(changed.has("value")){const internal=this.pendingSuggestionValue===this.value;this.pendingSuggestionValue=void 0,invalidate||=!internal}invalidate&&(this.suggestionNavigationGeneration+=1,this.activeSuggestion=null,this.suggestionAnchor=void 0)}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.onCompositeKeyDown,!0),this.hasUpdated&&this.syncDescription()}disconnectedCallback(){this.removeEventListener("keydown",this.onCompositeKeyDown,!0),this.suggestionCaretGeneration+=1,this.closeSuggestions(),this.descriptionLease?.release(),this.descriptionLease=void 0,super.disconnectedCallback()}firstUpdated(changed){super.firstUpdated(changed),this.composer?.updateComplete.then(this.syncDescription)}updated(_changed){super.updated(_changed);const popover=this.suggestionPopover;popover&&this.suggestionAnchor&&(popover.anchor=this.suggestionAnchor)}suggestions(){return this.activeSuggestion?.trigger==="/"?this.commandItems:this.mentionItems}detectSuggestion(value){const caret=this.composer?.selectionStart??value.length,prefix=value.slice(0,caret),match=/(?:^|\s)([@/])([^\s@/]*)$/.exec(prefix);if(!match||match[1]!=="@"&&match[1]!=="/"){this.activeSuggestion=null;return}const start=caret-match[2].length-1,items=match[1]==="@"?this.mentionItems:this.commandItems;this.activeSuggestion=items.length?{trigger:match[1],start,query:match[2]??""}:null}onInput(event){if(event.stopPropagation(),this.disabled||this.readOnly)return;const composer=event.currentTarget;this.suggestionAnchor=composer?.input??this.composer?.input??void 0,this.pendingSuggestionValue=event.detail.value,this.value=event.detail.value,this.detectSuggestion(this.value),this.emit("lr-input",{value:this.value})}onChange(event){event.stopPropagation(),!(this.disabled||this.readOnly)&&(this.value=event.detail.value,this.emit("lr-change",{value:this.value}))}onSubmit(event){event.stopPropagation(),!this.disabled&&this.emit("lr-submit",event.detail)}onStop(event){event.stopPropagation(),!this.disabled&&this.emit("lr-stop",null)}onKeyDown(event){if(event.defaultPrevented)return;const popover=this.suggestionPopover;if(!(this.disabled||this.readOnly||!this.activeSuggestion||!popover?.open)&&popover.handleKeyDown(event)){const shouldMoveFocus=event.key==="ArrowDown"||event.key==="ArrowUp",generation=++this.suggestionNavigationGeneration;popover.updateComplete.then(async()=>{shouldMoveFocus&&generation===this.suggestionNavigationGeneration&&this.isConnected&&!this.disabled&&!this.readOnly&&this.suggestionPopover===popover&&this.activeSuggestion&&popover.open&&this.suggestionFocusIsOwned(popover)&&await popover.focusActiveOption({ownsFocus:()=>generation===this.suggestionNavigationGeneration&&this.isConnected&&!this.disabled&&!this.readOnly&&this.suggestionPopover===popover&&this.activeSuggestion!==null&&popover.open&&this.suggestionFocusIsOwned(popover)})})}}suggestionFocusIsOwned(popover,focused=deepActiveElementIn(this.ownerDocument)){return focused===this.composer?.input||focused===this.composer||focused!==null&&composedContains(popover,focused)}closeSuggestions(){this.suggestionNavigationGeneration+=1,this.activeSuggestion=null,this.suggestionAnchor=void 0}onSuggestionSelect(event){if(event.stopPropagation(),this.disabled||this.readOnly)return;const active=this.activeSuggestion;if(!active)return;const occurrence=this.suggestions()[event.detail.index];if(!occurrence||occurrence.suggestionId!==event.detail.suggestionId)return;const item=occurrence,composer=this.composer,caret=composer?.selectionStart??this.value.length,inserted=`${active.trigger}${item?.insertText??event.detail.label} `;this.value=this.value.slice(0,active.start)+inserted+this.value.slice(caret);const caretGeneration=this.suggestionCaretGeneration,nextCaret=active.start+inserted.length;this.closeSuggestions(),this.emit("lr-input",{value:this.value}),this.emit("lr-mention-select",{suggestionId:event.detail.suggestionId,index:event.detail.index,label:event.detail.label,trigger:active.trigger}),this.updateComplete.then(()=>{caretGeneration===this.suggestionCaretGeneration&&this.isConnected&&this.composer===composer&&composer?.setSelectionRange(nextCaret,nextCaret)})}onFiles(event){event.stopPropagation(),!this.disabled&&this.emit("lr-attachments-add",event.detail)}get effectiveAttachments(){const seen=new Set;return this.attachments.filter(attachment=>{const id=attachment?.attachmentId;return typeof id!="string"||id.trim()===""||seen.has(id)?!1:(seen.add(id),!0)})}firstById(values,identity){let retained=this.firstByIdentity.get(values);return retained||this.firstByIdentity.set(values,retained=firstByPromptIdentity(values,identity)),retained}get effectiveSources(){return this.firstById(this.sources,source=>source.id)}get effectiveSelectedSourceIds(){return canonicalIdentityList(this.selectedSourceIds)}get effectiveQueue(){return this.firstById(this.queue,item=>item.id)}renderDefaultAttachmentTrigger(){return html`<lr-attachment-trigger multiple
|
|
1
|
+
import{__decorate}from"tslib";import{setNativeRangeText,nativeAutocorrectAttribute}from"../../../internal/native-text-control.js";import{collectionSupport}from"../../../internal/collection-snapshot.js";import{html,nothing}from"lit";import{property,query,state}from"lit/decorators.js";import{ifDefined}from"lit/directives/if-defined.js";import{repeat}from"lit/directives/repeat.js";import{autocorrectConverter,normalizeAutocorrect,trueDefaultBooleanConverter}from"../../../internal/converters.js";import{LyraElement}from"../../../internal/lyra-element.js";import{lengthLimitConverter}from"../../../internal/length-constraints.js";import{relayNativeEvent}from"../../../internal/native-event-relay.js";import{SlotPresenceController}from"../../../internal/slot-presence-controller.js";import{deepActiveElementIn}from"../../../internal/active-element.js";import{isHtmlElement}from"../../../internal/dom-guards.js";import{normalizeCatalog}from"../../../internal/catalog-picker.js";import{composedContains}from"../../../internal/overlay-manager.js";import{canonicalIdentityList,firstByRetrievalIdentity as firstByPromptIdentity}from"../../retrieval/retrieval-identity.js";import{guard}from"lit/directives/guard.js";import{acquireResolvedAriaRelationship}from"../../../internal/aria-controls.js";import{normalizeChatComposerStatus}from"../chat-composer/chat-composer.class.js";import{styles}from"./prompt-input.styles.js";import{LYRA_DEFAULT_promptInputAttachments,LYRA_DEFAULT_promptInputControls,LYRA_DEFAULT_promptInputLabel,LYRA_DEFAULT_promptInputSources}from"../../../internal/default-strings/conversation.generated.js";import{LYRA_DEFAULT_fieldRequired}from"../../../internal/default-strings/shared.generated.js";class LyraPromptInput extends LyraElement{constructor(){super(...arguments),this.suggestionCaretGeneration=0,this._value="",this.statusValue="idle",this.placeholder="",this.disabled=!1,this.readOnly=!1,this.withoutEnterSubmit=!1,this.submitDisabled=!1,this.withoutStop=!1,this.frame="card",this.actionsLayout="inline",this.minRows=1,this.maxRows=8,this.spellcheck=!0,this.autocapitalize="",this.autocorrectValue=!0,this.wrap="soft",this.autocomplete="",this.inputMode="",this.enterKeyHint="",this.attachments=[],this.attachmentCapabilities=["files","image","audio"],this.mentionItems=[],this.commandItems=[],this.model="",this.voice="",this.sources=[],this.selectedSourceIds=[],this.queue=[],this.accessibleLabel=null,this.activeSuggestion=null,this.slotPresence=new SlotPresenceController(this),this.suggestionNavigationGeneration=0,this.syncDescription=()=>{const target=this.composer?.input;this.isConnected&&target&&!this.descriptionLease&&(this.descriptionLease=acquireResolvedAriaRelationship(this,target,"aria-describedby"))},this.onCompositeKeyDown=event=>{event.composedPath()[0]===this.composer?.input&&this.onKeyDown(event)},this.onCompositeFocusOut=event=>{const popover=this.suggestionPopover;if(!popover||!this.activeSuggestion||!popover.open)return;const relatedTarget=isHtmlElement(event.relatedTarget)?event.relatedTarget:null;this.suggestionFocusIsOwned(popover,relatedTarget)||(this.suggestionNavigationGeneration+=1);const generation=this.suggestionNavigationGeneration;queueMicrotask(()=>{if(!this.isConnected||generation!==this.suggestionNavigationGeneration)return;const currentPopover=this.suggestionPopover;(!currentPopover||!this.suggestionFocusIsOwned(currentPopover))&&this.closeSuggestions()})},this.onNativeInput=event=>{if(this.disabled||this.readOnly||!this.composer||!event.composedPath().includes(this.composer)){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeChange=event=>{if(this.disabled||this.readOnly||!this.composer||!event.composedPath().includes(this.composer)){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeFocus=event=>{if(event.target!==this.composer){event.stopPropagation();return}relayNativeEvent(this,event)},this.onNativeBlur=event=>{if(event.target!==this.composer){event.stopPropagation();return}relayNativeEvent(this,event)},this.firstByIdentity=new WeakMap}static{this.defaultStrings={...super.defaultStrings,fieldRequired:LYRA_DEFAULT_fieldRequired,promptInputAttachments:LYRA_DEFAULT_promptInputAttachments,promptInputControls:LYRA_DEFAULT_promptInputControls,promptInputLabel:LYRA_DEFAULT_promptInputLabel,promptInputSources:LYRA_DEFAULT_promptInputSources}}static{this.collectionSupport=collectionSupport}static{this.ownedCollectionProperties=Object.freeze(["attachments","attachmentCapabilities","mentionItems","commandItems","modelCatalog","voiceCatalog","sources","selectedSourceIds","queue"])}static{this.styles=[LyraElement.styles,styles]}static{this.immutableEventDetails=Object.freeze(["lr-attachments-add","lr-sources-change","lr-queue-change","lr-send-now"])}static{this.identityEventDetailProperties=Object.freeze({"lr-send-now":Object.freeze(["item"])})}static{this.identityEventDetailCollectionItems=Object.freeze({"lr-queue-change":Object.freeze(["items"])})}get value(){return this._value}set value(next){if(next===this._value)return;const old=this._value;this._value=next,this.suggestionCaretGeneration+=1,this.requestUpdate("value",old)}get status(){return this.statusValue}set status(value){const previous=this.statusValue;this.statusValue=normalizeChatComposerStatus(value),this.requestUpdate("status",previous)}get autocorrect(){return this.autocorrectValue}set autocorrect(next){this.autocorrectValue=normalizeAutocorrect(next),this.requestUpdate()}focus(options){this.composer?.focus(options)}blur(){this.composer?.blur()}click(){this.disabled||this.composer?.click()}get input(){return this.composer?.input??null}get selectionStart(){return this.composer?.selectionStart??null}set selectionStart(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionStart=value)}get selectionEnd(){return this.composer?.selectionEnd??null}set selectionEnd(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionEnd=value)}get selectionDirection(){return this.composer?.selectionDirection??null}set selectionDirection(value){this.suggestionCaretGeneration+=1,this.composer&&(this.composer.selectionDirection=value)}select(){this.suggestionCaretGeneration+=1,this.composer?.select()}setSelectionRange(start,end,direction){this.suggestionCaretGeneration+=1,this.composer?.setSelectionRange(start,end,direction)}setRangeText(replacement,start,end,selectMode){const composer=this.composer;composer&&(setNativeRangeText(composer,replacement,start,end,selectMode),this.value=composer.value)}willUpdate(changed){super.willUpdate(changed);let invalidate=changed.has("mentionItems")||changed.has("commandItems")||changed.has("disabled")||changed.has("readOnly");if(changed.has("value")){const internal=this.pendingSuggestionValue===this.value;this.pendingSuggestionValue=void 0,invalidate||=!internal}invalidate&&(this.suggestionNavigationGeneration+=1,this.activeSuggestion=null,this.suggestionAnchor=void 0)}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.onCompositeKeyDown,!0),this.hasUpdated&&this.syncDescription()}disconnectedCallback(){this.removeEventListener("keydown",this.onCompositeKeyDown,!0),this.suggestionCaretGeneration+=1,this.closeSuggestions(),this.descriptionLease?.release(),this.descriptionLease=void 0,super.disconnectedCallback()}firstUpdated(changed){super.firstUpdated(changed),this.composer?.updateComplete.then(this.syncDescription)}updated(_changed){super.updated(_changed);const popover=this.suggestionPopover;popover&&this.suggestionAnchor&&(popover.anchor=this.suggestionAnchor)}suggestions(){return this.activeSuggestion?.trigger==="/"?this.commandItems:this.mentionItems}detectSuggestion(value){const caret=this.composer?.selectionStart??value.length,prefix=value.slice(0,caret),match=/(?:^|\s)([@/])([^\s@/]*)$/.exec(prefix);if(!match||match[1]!=="@"&&match[1]!=="/"){this.activeSuggestion=null;return}const start=caret-match[2].length-1,items=match[1]==="@"?this.mentionItems:this.commandItems;this.activeSuggestion=items.length?{trigger:match[1],start,query:match[2]??""}:null}onInput(event){if(event.stopPropagation(),this.disabled||this.readOnly)return;const composer=event.currentTarget;this.suggestionAnchor=composer?.input??this.composer?.input??void 0,this.pendingSuggestionValue=event.detail.value,this.value=event.detail.value,this.detectSuggestion(this.value),this.emit("lr-input",{value:this.value})}onChange(event){event.stopPropagation(),!(this.disabled||this.readOnly)&&(this.value=event.detail.value,this.emit("lr-change",{value:this.value}))}onSubmit(event){event.stopPropagation(),!this.disabled&&this.emit("lr-submit",event.detail)}onStop(event){event.stopPropagation(),!this.disabled&&this.emit("lr-stop",null)}onKeyDown(event){if(event.defaultPrevented)return;const popover=this.suggestionPopover;if(!(this.disabled||this.readOnly||!this.activeSuggestion||!popover?.open)&&popover.handleKeyDown(event)){const shouldMoveFocus=event.key==="ArrowDown"||event.key==="ArrowUp",generation=++this.suggestionNavigationGeneration;popover.updateComplete.then(async()=>{shouldMoveFocus&&generation===this.suggestionNavigationGeneration&&this.isConnected&&!this.disabled&&!this.readOnly&&this.suggestionPopover===popover&&this.activeSuggestion&&popover.open&&this.suggestionFocusIsOwned(popover)&&await popover.focusActiveOption({ownsFocus:()=>generation===this.suggestionNavigationGeneration&&this.isConnected&&!this.disabled&&!this.readOnly&&this.suggestionPopover===popover&&this.activeSuggestion!==null&&popover.open&&this.suggestionFocusIsOwned(popover)})})}}suggestionFocusIsOwned(popover,focused=deepActiveElementIn(this.ownerDocument)){return focused===this.composer?.input||focused===this.composer||focused!==null&&composedContains(popover,focused)}closeSuggestions(){this.suggestionNavigationGeneration+=1,this.activeSuggestion=null,this.suggestionAnchor=void 0}onSuggestionSelect(event){if(event.stopPropagation(),this.disabled||this.readOnly)return;const active=this.activeSuggestion;if(!active)return;const occurrence=this.suggestions()[event.detail.index];if(!occurrence||occurrence.suggestionId!==event.detail.suggestionId)return;const item=occurrence,composer=this.composer,caret=composer?.selectionStart??this.value.length,inserted=`${active.trigger}${item?.insertText??event.detail.label} `;this.value=this.value.slice(0,active.start)+inserted+this.value.slice(caret);const caretGeneration=this.suggestionCaretGeneration,nextCaret=active.start+inserted.length;this.closeSuggestions(),this.emit("lr-input",{value:this.value}),this.emit("lr-mention-select",{suggestionId:event.detail.suggestionId,index:event.detail.index,label:event.detail.label,trigger:active.trigger}),this.updateComplete.then(()=>{caretGeneration===this.suggestionCaretGeneration&&this.isConnected&&this.composer===composer&&composer?.setSelectionRange(nextCaret,nextCaret)})}onFiles(event){event.stopPropagation(),!this.disabled&&this.emit("lr-attachments-add",event.detail)}get effectiveAttachments(){const seen=new Set;return this.attachments.filter(attachment=>{const id=attachment?.attachmentId;return typeof id!="string"||id.trim()===""||seen.has(id)?!1:(seen.add(id),!0)})}firstById(values,identity){let retained=this.firstByIdentity.get(values);return retained||this.firstByIdentity.set(values,retained=firstByPromptIdentity(values,identity)),retained}get effectiveSources(){return this.firstById(this.sources,source=>source.id)}get effectiveSelectedSourceIds(){return canonicalIdentityList(this.selectedSourceIds)}get effectiveQueue(){return this.firstById(this.queue,item=>item.id)}renderDefaultAttachmentTrigger(){return html`<lr-attachment-trigger multiple
|
|
2
2
|
.capabilities=${this.attachmentCapabilities}
|
|
3
3
|
.disabled=${this.disabled}
|
|
4
4
|
@lr-files=${this.onFiles}
|
|
@@ -90,12 +90,15 @@ import{__decorate}from"tslib";import{setNativeRangeText,nativeAutocorrectAttribu
|
|
|
90
90
|
.withoutStop=${this.withoutStop}
|
|
91
91
|
.minRows=${this.minRows}
|
|
92
92
|
.maxRows=${this.maxRows}
|
|
93
|
+
.frame=${this.frame}
|
|
94
|
+
.actionsLayout=${this.actionsLayout}
|
|
93
95
|
aria-label=${label}
|
|
94
96
|
@lr-input=${this.onInput}
|
|
95
97
|
@lr-change=${this.onChange}
|
|
96
98
|
@lr-submit=${this.onSubmit}
|
|
97
99
|
@lr-stop=${this.onStop}
|
|
98
100
|
>
|
|
101
|
+
${this.slotPresence.has("toolbar")?html`<slot name="toolbar" slot="toolbar"></slot>`:nothing}
|
|
99
102
|
<span slot="start" part="start">
|
|
100
103
|
<slot name="start">${this.renderDefaultAttachmentTrigger()}</slot>
|
|
101
104
|
</span>
|
|
@@ -120,4 +123,4 @@ import{__decorate}from"tslib";import{setNativeRangeText,nativeAutocorrectAttribu
|
|
|
120
123
|
@lr-mention-close=${event=>{event.stopPropagation(),this.closeSuggestions()}}
|
|
121
124
|
></lr-mention-popover>
|
|
122
125
|
${this.slotPresence.has("footer")?html`<div part="footer"><slot name="footer"></slot></div>`:html`<slot name="footer" hidden aria-hidden="true"></slot>`}
|
|
123
|
-
</section>`}}__decorate([property()],LyraPromptInput.prototype,"value",null),__decorate([property()],LyraPromptInput.prototype,"status",null),__decorate([property()],LyraPromptInput.prototype,"placeholder",void 0),__decorate([property({type:Boolean,reflect:!0})],LyraPromptInput.prototype,"disabled",void 0),__decorate([property({type:Boolean,reflect:!0,attribute:"readonly"})],LyraPromptInput.prototype,"readOnly",void 0),__decorate([property({converter:lengthLimitConverter,attribute:"minlength"})],LyraPromptInput.prototype,"minLength",void 0),__decorate([property({converter:lengthLimitConverter,attribute:"maxlength"})],LyraPromptInput.prototype,"maxLength",void 0),__decorate([property({type:Boolean,attribute:"without-enter-submit"})],LyraPromptInput.prototype,"withoutEnterSubmit",void 0),__decorate([property({type:Boolean,attribute:"submit-disabled"})],LyraPromptInput.prototype,"submitDisabled",void 0),__decorate([property({type:Boolean,attribute:"without-stop"})],LyraPromptInput.prototype,"withoutStop",void 0),__decorate([property({type:Number,attribute:"min-rows"})],LyraPromptInput.prototype,"minRows",void 0),__decorate([property({type:Number,attribute:"max-rows"})],LyraPromptInput.prototype,"maxRows",void 0),__decorate([property({converter:trueDefaultBooleanConverter})],LyraPromptInput.prototype,"spellcheck",void 0),__decorate([property()],LyraPromptInput.prototype,"autocapitalize",void 0),__decorate([property({converter:autocorrectConverter})],LyraPromptInput.prototype,"autocorrect",null),__decorate([property()],LyraPromptInput.prototype,"wrap",void 0),__decorate([property()],LyraPromptInput.prototype,"autocomplete",void 0),__decorate([property({attribute:"inputmode"})],LyraPromptInput.prototype,"inputMode",void 0),__decorate([property({attribute:"enterkeyhint"})],LyraPromptInput.prototype,"enterKeyHint",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"attachments",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"attachmentCapabilities",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"mentionItems",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"commandItems",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"modelCatalog",void 0),__decorate([property()],LyraPromptInput.prototype,"model",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"voiceCatalog",void 0),__decorate([property()],LyraPromptInput.prototype,"voice",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"sources",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"selectedSourceIds",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"queue",void 0),__decorate([property()],LyraPromptInput.prototype,"label",void 0),__decorate([property({attribute:"aria-label"})],LyraPromptInput.prototype,"accessibleLabel",void 0),__decorate([state()],LyraPromptInput.prototype,"activeSuggestion",void 0),__decorate([query("lr-chat-composer")],LyraPromptInput.prototype,"composer",void 0),__decorate([query("lr-mention-popover")],LyraPromptInput.prototype,"suggestionPopover",void 0);export{LyraPromptInput};
|
|
126
|
+
</section>`}}__decorate([property()],LyraPromptInput.prototype,"value",null),__decorate([property()],LyraPromptInput.prototype,"status",null),__decorate([property()],LyraPromptInput.prototype,"placeholder",void 0),__decorate([property({type:Boolean,reflect:!0})],LyraPromptInput.prototype,"disabled",void 0),__decorate([property({type:Boolean,reflect:!0,attribute:"readonly"})],LyraPromptInput.prototype,"readOnly",void 0),__decorate([property({converter:lengthLimitConverter,attribute:"minlength"})],LyraPromptInput.prototype,"minLength",void 0),__decorate([property({converter:lengthLimitConverter,attribute:"maxlength"})],LyraPromptInput.prototype,"maxLength",void 0),__decorate([property({type:Boolean,attribute:"without-enter-submit"})],LyraPromptInput.prototype,"withoutEnterSubmit",void 0),__decorate([property({type:Boolean,attribute:"submit-disabled"})],LyraPromptInput.prototype,"submitDisabled",void 0),__decorate([property({type:Boolean,attribute:"without-stop"})],LyraPromptInput.prototype,"withoutStop",void 0),__decorate([property()],LyraPromptInput.prototype,"frame",void 0),__decorate([property({attribute:"actions-layout"})],LyraPromptInput.prototype,"actionsLayout",void 0),__decorate([property({type:Number,attribute:"min-rows"})],LyraPromptInput.prototype,"minRows",void 0),__decorate([property({type:Number,attribute:"max-rows"})],LyraPromptInput.prototype,"maxRows",void 0),__decorate([property({converter:trueDefaultBooleanConverter})],LyraPromptInput.prototype,"spellcheck",void 0),__decorate([property()],LyraPromptInput.prototype,"autocapitalize",void 0),__decorate([property({converter:autocorrectConverter})],LyraPromptInput.prototype,"autocorrect",null),__decorate([property()],LyraPromptInput.prototype,"wrap",void 0),__decorate([property()],LyraPromptInput.prototype,"autocomplete",void 0),__decorate([property({attribute:"inputmode"})],LyraPromptInput.prototype,"inputMode",void 0),__decorate([property({attribute:"enterkeyhint"})],LyraPromptInput.prototype,"enterKeyHint",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"attachments",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"attachmentCapabilities",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"mentionItems",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"commandItems",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"modelCatalog",void 0),__decorate([property()],LyraPromptInput.prototype,"model",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"voiceCatalog",void 0),__decorate([property()],LyraPromptInput.prototype,"voice",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"sources",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"selectedSourceIds",void 0),__decorate([property({attribute:!1})],LyraPromptInput.prototype,"queue",void 0),__decorate([property()],LyraPromptInput.prototype,"label",void 0),__decorate([property({attribute:"aria-label"})],LyraPromptInput.prototype,"accessibleLabel",void 0),__decorate([state()],LyraPromptInput.prototype,"activeSuggestion",void 0),__decorate([query("lr-chat-composer")],LyraPromptInput.prototype,"composer",void 0),__decorate([query("lr-mention-popover")],LyraPromptInput.prototype,"suggestionPopover",void 0);export{LyraPromptInput};
|