@aceshooting/lyra-ui 13.0.1 → 14.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 +199 -0
- package/custom-elements.json +1 -1
- package/dist/cli/migration-contract.json +1 -1
- package/dist/components/agent-tools/activity-feed/activity-feed.class.d.ts +23 -15
- package/dist/components/agent-tools/activity-feed/activity-feed.class.js +9 -6
- package/dist/components/agent-tools/agent-trace/agent-trace.class.d.ts +12 -3
- package/dist/components/agent-tools/agent-trace/agent-trace.class.js +2 -1
- package/dist/components/agent-tools/approval-queue/approval-queue.class.d.ts +4 -2
- package/dist/components/agent-tools/approval-queue/approval-queue.class.js +1 -1
- package/dist/components/agent-tools/artifact-panel/artifact-panel.styles.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 +7 -7
- package/dist/components/agent-tools/schema-viewer/schema-viewer.class.d.ts +5 -5
- package/dist/components/agent-tools/schema-viewer/schema-viewer.class.js +23 -10
- package/dist/components/agent-tools/span-waterfall/span-waterfall.class.d.ts +13 -6
- package/dist/components/agent-tools/span-waterfall/span-waterfall.class.js +3 -3
- package/dist/components/agent-tools/span-waterfall/span-waterfall.styles.js +1 -1
- package/dist/components/agent-tools/stack-trace/stack-trace-parse.js +3 -3
- package/dist/components/agent-tools/subagent-panel/subagent-panel.class.js +1 -1
- package/dist/components/agent-tools/subagent-panel/subagent-panel.styles.js +1 -1
- package/dist/components/agent-tools/task-list/task-list.class.d.ts +1 -2
- package/dist/components/agent-tools/task-list/task-list.class.js +2 -2
- package/dist/components/agent-tools/terminal/terminal.class.d.ts +10 -1
- package/dist/components/agent-tools/terminal/terminal.class.js +3 -3
- package/dist/components/agent-tools/terminal/terminal.styles.js +1 -1
- package/dist/components/agent-tools/test-results/test-results.class.d.ts +4 -2
- package/dist/components/agent-tools/test-results/test-results.class.js +2 -2
- package/dist/components/agent-tools/thinking-panel/thinking-panel.class.d.ts +2 -0
- package/dist/components/agent-tools/thinking-panel/thinking-panel.styles.js +1 -1
- package/dist/components/agent-tools/tool-approval-dialog/tool-approval-dialog.class.js +1 -1
- package/dist/components/agent-tools/tool-call-chip/tool-call-chip.class.js +1 -1
- package/dist/components/agent-tools/tool-param-form/tool-param-form.class.js +3 -2
- package/dist/components/agent-tools/tool-param-form/tool-param-form.d.ts +1 -1
- package/dist/components/agent-tools/tool-param-form/tool-param-form.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 +2 -1
- package/dist/components/agent-tools/tool-result-view/tool-result-view.class.d.ts +1 -1
- 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.d.ts +18 -12
- package/dist/components/agent-tools/tool-select-dialog/tool-select-dialog.class.js +6 -6
- package/dist/components/agent-tools/tool-timeline/tool-timeline.class.d.ts +9 -3
- package/dist/components/agent-tools/tool-timeline/tool-timeline.class.js +1 -1
- package/dist/components/agent-tools/trace-tree/span.js +1 -1
- package/dist/components/agent-tools/trace-tree/trace-tree.styles.js +1 -1
- package/dist/components/charts/chart/box-plot.class.d.ts +10 -3
- package/dist/components/charts/chart/box-plot.class.js +9 -9
- package/dist/components/charts/chart/box-plot.styles.js +1 -1
- package/dist/components/charts/chart/chart-core-loader.js +1 -1
- package/dist/components/charts/chart/chart-feature-loader.js +1 -1
- package/dist/components/charts/chart/chart-preload.d.ts +1 -1
- package/dist/components/charts/chart/chart-preload.js +1 -1
- package/dist/components/charts/chart/chart.class.d.ts +27 -9
- package/dist/components/charts/chart/chart.class.js +23 -14
- package/dist/components/charts/chart/chart.styles.js +1 -1
- package/dist/components/charts/chart/histogram-bin.js +1 -1
- package/dist/components/charts/chart/lite-chart.class.js +7 -3
- package/dist/components/charts/chart/lite-chart.styles.js +1 -1
- package/dist/components/conversation/agent-workspace/agent-workspace.class.d.ts +1 -1
- package/dist/components/conversation/agent-workspace/agent-workspace.class.js +2 -2
- package/dist/components/conversation/audio-visualizer/audio-visualizer.class.d.ts +10 -5
- package/dist/components/conversation/audio-visualizer/audio-visualizer.class.js +1 -1
- package/dist/components/conversation/branch-picker/branch-picker.class.d.ts +4 -2
- package/dist/components/conversation/branch-picker/branch-picker.class.js +1 -1
- package/dist/components/conversation/branch-picker/branch-picker.styles.js +1 -1
- package/dist/components/conversation/chat-composer/chat-composer.class.d.ts +6 -2
- package/dist/components/conversation/chat-composer/chat-composer.class.js +3 -3
- package/dist/components/conversation/chat-composer/chat-composer.styles.js +1 -1
- package/dist/components/conversation/chat-message/chat-message.class.js +2 -2
- package/dist/components/conversation/chat-message/chat-message.styles.js +1 -1
- package/dist/components/conversation/chat-viewport/chat-viewport.styles.js +1 -1
- package/dist/components/conversation/code-block/code-block-shared.js +1 -1
- package/dist/components/conversation/code-block/code-block.styles.js +1 -1
- package/dist/components/conversation/code-block/code-loader.d.ts +1 -1
- package/dist/components/conversation/code-block/code-loader.js +1 -1
- package/dist/components/conversation/code-block/shiki-types.js +1 -1
- package/dist/components/conversation/conversation-item/conversation-item.styles.js +1 -1
- package/dist/components/conversation/generation-metrics/generation-metrics.styles.js +1 -1
- package/dist/components/conversation/markdown/katex-loader.d.ts +4 -4
- package/dist/components/conversation/markdown/katex-loader.js +1 -1
- package/dist/components/conversation/markdown/markdown-base.class.js +1 -1
- package/dist/components/conversation/markdown/markdown-loader.d.ts +1 -1
- package/dist/components/conversation/markdown/markdown-loader.js +1 -1
- package/dist/components/conversation/markdown/markdown-shared.d.ts +6 -1
- package/dist/components/conversation/markdown/markdown-shared.js +5 -4
- package/dist/components/conversation/message-actions/message-actions.class.d.ts +16 -3
- package/dist/components/conversation/message-actions/message-actions.class.js +2 -2
- package/dist/components/conversation/message-actions/message-actions.styles.js +1 -1
- package/dist/components/conversation/message-actions/toolbar-actions.d.ts +3 -1
- package/dist/components/conversation/message-actions/toolbar-actions.js +1 -1
- package/dist/components/conversation/message-feedback/message-feedback.class.d.ts +38 -15
- package/dist/components/conversation/message-feedback/message-feedback.class.js +7 -3
- package/dist/components/conversation/message-feedback/message-feedback.styles.js +1 -1
- package/dist/components/conversation/message-parts/message-parts.class.d.ts +7 -4
- package/dist/components/conversation/message-parts/message-parts.class.js +2 -2
- package/dist/components/conversation/message-parts/message-parts.styles.js +1 -1
- package/dist/components/conversation/model-select/model-select.class.d.ts +5 -2
- package/dist/components/conversation/model-select/model-select.class.js +5 -2
- package/dist/components/conversation/model-settings-panel/model-settings-panel.class.d.ts +3 -5
- package/dist/components/conversation/model-settings-panel/model-settings-panel.class.js +2 -1
- package/dist/components/conversation/prompt-input/prompt-input.class.d.ts +9 -2
- package/dist/components/conversation/prompt-input/prompt-input.class.js +3 -3
- package/dist/components/conversation/prompt-input/prompt-input.styles.js +1 -1
- package/dist/components/conversation/prompt-queue/prompt-queue.class.d.ts +20 -4
- package/dist/components/conversation/prompt-queue/prompt-queue.class.js +1 -1
- package/dist/components/conversation/prompt-queue/prompt-queue.styles.js +1 -1
- package/dist/components/conversation/push-to-talk/push-to-talk.class.d.ts +17 -8
- package/dist/components/conversation/push-to-talk/push-to-talk.class.js +1 -1
- package/dist/components/conversation/push-to-talk/push-to-talk.styles.js +1 -1
- package/dist/components/conversation/selection-toolbar/selection-toolbar.class.d.ts +6 -3
- package/dist/components/conversation/selection-toolbar/selection-toolbar.class.js +1 -1
- package/dist/components/conversation/selection-toolbar/selection-toolbar.styles.js +1 -1
- package/dist/components/conversation/thread-list/thread-list.class.d.ts +14 -4
- package/dist/components/conversation/thread-list/thread-list.class.js +11 -11
- package/dist/components/conversation/thread-list/thread-list.styles.js +1 -1
- package/dist/components/conversation/transcript-feed/transcript-feed.styles.js +1 -1
- package/dist/components/conversation/voice-picker/voice-picker.class.d.ts +12 -4
- package/dist/components/conversation/voice-picker/voice-picker.class.js +5 -2
- package/dist/components/conversation/voice-picker/voice-picker.styles.js +1 -1
- package/dist/components/data/calendar/calendar.class.d.ts +12 -4
- package/dist/components/data/calendar/calendar.class.js +2 -2
- package/dist/components/data/calendar/calendar.styles.js +1 -1
- package/dist/components/data/context-meter/context-meter.class.d.ts +3 -1
- package/dist/components/data/context-meter/context-meter.class.js +3 -3
- package/dist/components/data/data-grid/data-grid.class.d.ts +45 -4
- package/dist/components/data/data-grid/data-grid.class.js +25 -11
- package/dist/components/data/data-grid/data-grid.styles.js +1 -1
- package/dist/components/data/document-library/document-library.class.js +1 -1
- package/dist/components/data/env-list/env-list.class.js +1 -1
- package/dist/components/data/flow-canvas/flow-canvas.class.d.ts +19 -12
- package/dist/components/data/flow-canvas/flow-canvas.class.js +1 -2
- package/dist/components/data/flow-controls/flow-controls.styles.js +1 -1
- package/dist/components/data/flow-run-status/flow-run-status.class.js +1 -1
- package/dist/components/data/gauge/gauge.class.js +1 -1
- package/dist/components/data/graph-query-builder/graph-query-builder.styles.js +1 -1
- package/dist/components/data/heatmap/heatmap.class.js +1 -1
- package/dist/components/data/sequence-strip/sequence-strip.class.js +1 -1
- package/dist/components/data/stat/stat.class.js +1 -1
- package/dist/components/data/table/table.class.d.ts +10 -14
- package/dist/components/data/table/table.class.js +4 -3
- 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-item.styles.js +1 -1
- package/dist/components/data/word-cloud/word-cloud.class.js +1 -1
- package/dist/components/forms/checkbox-group/checkbox-group.class.d.ts +7 -2
- package/dist/components/forms/checkbox-group/checkbox-group.class.js +1 -1
- package/dist/components/forms/code-editor/code-editor.class.d.ts +8 -4
- package/dist/components/forms/code-editor/code-editor.class.js +16 -5
- package/dist/components/forms/code-editor/code-editor.styles.js +1 -1
- package/dist/components/forms/color-picker/color-picker.class.d.ts +1 -1
- package/dist/components/forms/color-picker/color-picker.class.js +1 -1
- package/dist/components/forms/combobox/combobox.styles.js +1 -1
- package/dist/components/forms/date-picker/date-input.class.js +1 -1
- package/dist/components/forms/date-picker/date-picker.class.d.ts +9 -2
- package/dist/components/forms/date-picker/date-picker.class.js +4 -4
- 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.js +1 -1
- package/dist/components/forms/input/input.class.d.ts +11 -4
- package/dist/components/forms/input/input.class.js +7 -1
- package/dist/components/forms/input/time-input.class.d.ts +8 -2
- package/dist/components/forms/input/time-input.class.js +1 -1
- package/dist/components/forms/locale-picker/locale-picker.class.d.ts +17 -3
- package/dist/components/forms/locale-picker/locale-picker.class.js +1 -1
- package/dist/components/forms/locale-picker/locale-picker.styles.js +1 -1
- package/dist/components/forms/rubric-form/rubric-form.class.js +1 -1
- package/dist/components/forms/select/select.styles.js +1 -1
- package/dist/components/forms/slider/slider.class.js +1 -1
- package/dist/components/forms/swatch-picker/swatch-picker.class.js +1 -1
- package/dist/components/forms/token-input/token-input.class.js +1 -1
- package/dist/components/forms/token-input/token-input.styles.js +1 -1
- package/dist/components/layout/app-rail/app-rail.class.d.ts +6 -4
- package/dist/components/layout/app-rail/app-rail.class.js +4 -3
- package/dist/components/layout/app-rail/app-rail.styles.js +1 -1
- package/dist/components/layout/command-palette/command-palette.class.d.ts +2 -2
- package/dist/components/layout/command-palette/command-palette.class.js +1 -1
- package/dist/components/layout/command-palette/command-palette.styles.js +1 -1
- package/dist/components/layout/dashboard-grid/dashboard-grid.class.js +1 -1
- package/dist/components/layout/details/details.class.d.ts +13 -12
- package/dist/components/layout/details/details.class.js +43 -34
- package/dist/components/layout/details/details.styles.js +1 -1
- package/dist/components/layout/dock-panel/dock-panel.class.d.ts +4 -3
- package/dist/components/layout/dock-panel/dock-panel.class.js +2 -1
- package/dist/components/layout/filter-bar/filter-bar.class.js +2 -2
- package/dist/components/layout/menu/menu-item.class.js +2 -2
- package/dist/components/layout/menu/menu.class.js +1 -1
- package/dist/components/layout/multi-split/multi-split.class.d.ts +10 -5
- package/dist/components/layout/multi-split/multi-split.class.js +2 -1
- package/dist/components/layout/scroller/scroller.class.d.ts +4 -4
- package/dist/components/layout/scroller/scroller.styles.js +1 -1
- package/dist/components/layout/split-panel/split-panel.class.d.ts +3 -2
- package/dist/components/layout/split-panel/split-panel.class.js +3 -2
- package/dist/components/layout/tab-group/tab-group.styles.js +1 -1
- package/dist/components/layout/virtual-list/virtual-list.class.js +2 -2
- package/dist/components/layout/widget/widget.styles.js +1 -1
- package/dist/components/media/file-input/file-input.styles.js +1 -1
- package/dist/components/media/flag/flag.class.js +1 -1
- package/dist/components/media/lightbox/lightbox.styles.js +1 -1
- package/dist/components/media/map/map-loader.js +1 -1
- package/dist/components/media/map/map.class.d.ts +17 -31
- package/dist/components/media/map/map.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 +5 -2
- package/dist/components/media/qr-code/qr-code.class.js +2 -2
- package/dist/components/media/sequence-playback/sequence-playback.class.d.ts +2 -2
- package/dist/components/media/sequence-playback/sequence-playback.class.js +1 -1
- package/dist/components/overlays/alert/alert.styles.js +1 -1
- package/dist/components/overlays/callout/callout.styles.js +1 -1
- package/dist/components/overlays/dialog/dialog.styles.js +1 -1
- package/dist/components/overlays/kbd/kbd.class.js +1 -1
- package/dist/components/overlays/overlay/popover.class.js +1 -1
- package/dist/components/overlays/overlay/tooltip.class.js +1 -1
- package/dist/components/overlays/rating/rating.class.js +1 -1
- package/dist/components/overlays/toast/toast-item.class.js +1 -1
- package/dist/components/retrieval/claim-evidence/claim-evidence.class.d.ts +11 -5
- package/dist/components/retrieval/claim-evidence/claim-evidence.class.js +3 -3
- package/dist/components/retrieval/graph/graph-loader.js +1 -1
- package/dist/components/retrieval/graph/graph.class.d.ts +1 -1
- package/dist/components/retrieval/graph/graph.class.js +10 -10
- package/dist/components/retrieval/graph-legend/graph-legend.class.d.ts +4 -2
- package/dist/components/retrieval/graph-legend/graph-legend.class.js +1 -1
- package/dist/components/retrieval/grounding-summary/grounding-summary.class.d.ts +14 -6
- package/dist/components/retrieval/grounding-summary/grounding-summary.class.js +7 -5
- package/dist/components/retrieval/knowledge-base/knowledge-base.class.d.ts +3 -2
- package/dist/components/retrieval/knowledge-base/knowledge-base.class.js +4 -3
- package/dist/components/retrieval/knowledge-base/knowledge-base.styles.js +1 -1
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +4 -1
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js +2 -1
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.styles.js +1 -1
- package/dist/components/retrieval/memory-panel/memory-panel.class.d.ts +15 -6
- package/dist/components/retrieval/memory-panel/memory-panel.class.js +1 -1
- package/dist/components/retrieval/neighbor-list/neighbor-list.class.js +1 -1
- package/dist/components/retrieval/neighbor-list/neighbor-list.styles.js +1 -1
- package/dist/components/retrieval/node-palette/node-palette.class.d.ts +17 -12
- package/dist/components/retrieval/node-palette/node-palette.class.js +2 -2
- package/dist/components/retrieval/node-palette/node-palette.styles.js +1 -1
- package/dist/components/retrieval/path-strip/path-strip.class.js +1 -1
- package/dist/components/retrieval/retrieval-results/retrieval-results.class.d.ts +1 -1
- package/dist/components/retrieval/retrieval-results/retrieval-results.class.js +5 -5
- package/dist/components/retrieval/retrieval-trace/retrieval-trace.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.d.ts +2 -1
- package/dist/components/utility/copy-button/copy-button.class.js +1 -1
- package/dist/components/utility/diff-view/diff-view.class.d.ts +4 -1
- package/dist/components/utility/diff-view/diff-view.class.js +1 -1
- package/dist/components/utility/export-button/export-button.class.d.ts +2 -2
- package/dist/components/utility/export-button/export-button.class.js +1 -1
- package/dist/components/utility/export-button/export-button.styles.js +1 -1
- package/dist/components/utility/format/format-date.class.js +1 -1
- package/dist/components/utility/format/relative-time.class.js +1 -1
- package/dist/components/utility/icon/dompurify-loader.js +1 -1
- package/dist/components/utility/icon/icon-library.js +1 -1
- package/dist/components/utility/intersection-observer/intersection-observer.class.js +1 -1
- package/dist/components/utility/json-viewer/json-viewer.class.d.ts +3 -1
- package/dist/components/utility/json-viewer/json-viewer.class.js +5 -5
- package/dist/components/utility/known-date/known-date.class.js +1 -1
- package/dist/components/utility/mention-popover/mention-popover.class.d.ts +29 -44
- 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/viewers/calendar-viewer/calendar-loader.js +1 -1
- package/dist/components/viewers/document-compare/document-compare.class.d.ts +11 -8
- package/dist/components/viewers/document-compare/document-compare.class.js +2 -2
- package/dist/components/viewers/document-preview/document-preview.class.d.ts +4 -2
- package/dist/components/viewers/document-preview/document-preview.class.js +4 -4
- package/dist/components/viewers/document-preview/document-preview.styles.js +1 -1
- package/dist/components/viewers/document-viewer/document-viewer.class.d.ts +2 -0
- package/dist/components/viewers/document-viewer/document-viewer.styles.js +1 -1
- package/dist/components/viewers/docx-viewer/docx-loader.js +1 -1
- package/dist/components/viewers/docx-viewer/docx-viewer.class.js +1 -1
- package/dist/components/viewers/ebook-viewer/ebook-loader.d.ts +1 -1
- package/dist/components/viewers/ebook-viewer/ebook-viewer.class.d.ts +2 -2
- package/dist/components/viewers/ebook-viewer/ebook-viewer.class.js +1 -1
- package/dist/components/viewers/email-viewer/email-loader.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/html-viewer/dompurify-loader.js +1 -1
- package/dist/components/viewers/notebook-viewer/dompurify-loader.js +1 -1
- package/dist/components/viewers/pdf-viewer/pdf-loader.js +1 -1
- package/dist/components/viewers/pptx-viewer/pptx-loader.js +1 -1
- package/dist/components/viewers/spreadsheet-viewer/spreadsheet-loader.js +1 -1
- package/dist/components/viewers/svg-viewer/dompurify-loader.js +1 -1
- package/dist/components/viewers/viewer-loading.js +1 -1
- package/dist/components/viewers/viewer-search-limits.d.ts +2 -0
- package/dist/components/viewers/viewer-search-limits.js +1 -1
- package/dist/custom-elements-jsx.d.ts +1 -1
- package/dist/events.d.ts +13 -6
- package/dist/internal/aria-controls.d.ts +16 -13
- package/dist/internal/aria-controls.js +1 -1
- package/dist/internal/aria-reflection.js +1 -1
- package/dist/internal/catalog-picker.d.ts +2 -2
- package/dist/internal/catalog-picker.js +1 -1
- package/dist/internal/chart-annotation-registration.d.ts +1 -0
- package/dist/internal/chart-annotation-registration.js +1 -0
- package/dist/internal/data-descriptors.d.ts +13 -0
- package/dist/internal/data-descriptors.js +1 -0
- package/dist/internal/default-strings.generated.d.ts +1 -1
- package/dist/internal/default-strings.generated.js +2 -2
- package/dist/internal/dev-mode-attribute-warning.js +1 -1
- package/dist/internal/element-internals.d.ts +4 -3
- package/dist/internal/element-internals.js +1 -1
- package/dist/internal/highlight-collection.d.ts +2 -0
- package/dist/internal/highlight-collection.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 +10 -1
- package/dist/internal/lyra-element.js +2 -1
- package/dist/internal/package-metadata.d.ts +1 -1
- package/dist/internal/package-metadata.js +1 -1
- package/dist/internal/papaparse-loader.js +1 -1
- package/dist/internal/pseudo-localization.js +1 -1
- package/dist/internal/safe-css.js +1 -1
- package/dist/internal/step-value.d.ts +6 -0
- package/dist/internal/step-value.js +1 -0
- package/dist/internal/text-quote.js +1 -1
- package/dist/lyra.d.ts +1 -1
- package/dist/svelte.d.ts +1 -1
- package/dist/translations/ar.js +2 -2
- package/dist/translations/de.js +2 -2
- package/dist/translations/es.js +2 -2
- package/dist/translations/fa.js +2 -2
- package/dist/translations/fr.js +2 -2
- package/dist/translations/he.js +2 -2
- package/dist/translations/ja.js +2 -2
- package/dist/translations/pseudo/ar-XB.js +1 -1
- package/dist/translations/pt-BR.js +2 -2
- package/dist/translations/ru.js +2 -2
- package/dist/translations/zh-CN.js +2 -2
- package/dist/vue.d.ts +1 -1
- package/llms/components/lr-accordion-item.md +6 -5
- package/llms/components/lr-accordion.md +6 -5
- package/llms/components/lr-activity-feed.md +6 -5
- package/llms/components/lr-agent-run.md +1 -1
- package/llms/components/lr-agent-workspace.md +3 -2
- package/llms/components/lr-attachment-chip.md +2 -3
- package/llms/components/lr-audio-visualizer.md +9 -6
- package/llms/components/lr-bar-chart.md +2 -2
- package/llms/components/lr-box-plot.md +9 -6
- package/llms/components/lr-bubble-chart.md +2 -2
- package/llms/components/lr-calendar.md +10 -4
- package/llms/components/lr-chart.md +11 -5
- package/llms/components/lr-chat-composer.md +2 -1
- package/llms/components/lr-chunk-inspector.md +2 -2
- package/llms/components/lr-code-block-core.md +4 -4
- package/llms/components/lr-code-block.md +10 -14
- package/llms/components/lr-code-editor.md +2 -0
- package/llms/components/lr-copy-button.md +4 -1
- package/llms/components/lr-data-grid.md +11 -2
- package/llms/components/lr-date-input.md +4 -0
- package/llms/components/lr-date-picker.md +5 -1
- package/llms/components/lr-details.md +6 -5
- package/llms/components/lr-diff-view.md +6 -0
- package/llms/components/lr-document-compare.md +6 -2
- package/llms/components/lr-document-preview.md +11 -3
- package/llms/components/lr-document-viewer.md +5 -1
- package/llms/components/lr-docx-viewer.md +6 -0
- package/llms/components/lr-doughnut-chart.md +2 -2
- package/llms/components/lr-ebook-viewer.md +8 -3
- package/llms/components/lr-email-viewer.md +5 -0
- package/llms/components/lr-eval-dataset.md +2 -2
- package/llms/components/lr-export-button.md +9 -0
- package/llms/components/lr-file-input.md +5 -8
- package/llms/components/lr-format-date.md +3 -1
- package/llms/components/lr-graph-legend.md +4 -2
- package/llms/components/lr-grounding-summary.md +8 -8
- package/llms/components/lr-histogram.md +2 -2
- package/llms/components/lr-ingestion-queue.md +1 -1
- package/llms/components/lr-intersection-observer.md +9 -0
- package/llms/components/lr-json-viewer.md +6 -1
- package/llms/components/lr-knowledge-base.md +10 -1
- package/llms/components/lr-line-chart.md +2 -2
- package/llms/components/lr-lite-chart.md +8 -5
- package/llms/components/lr-locale-picker.md +6 -0
- package/llms/components/lr-map.md +15 -5
- package/llms/components/lr-markdown.md +7 -4
- package/llms/components/lr-media-card.md +0 -6
- package/llms/components/lr-mention-popover.md +12 -10
- package/llms/components/lr-message-actions.md +10 -3
- package/llms/components/lr-message-feedback.md +20 -7
- package/llms/components/lr-message-parts.md +3 -1
- package/llms/components/lr-model-select.md +5 -2
- package/llms/components/lr-multi-split.md +5 -1
- package/llms/components/lr-mutation-observer.md +8 -0
- package/llms/components/lr-node-palette.md +5 -2
- package/llms/components/lr-pie-chart.md +2 -2
- package/llms/components/lr-polar-area-chart.md +2 -2
- package/llms/components/lr-prompt-input.md +7 -3
- package/llms/components/lr-prompt-queue.md +6 -0
- package/llms/components/lr-push-to-talk.md +5 -0
- package/llms/components/lr-qr-code.md +6 -0
- package/llms/components/lr-radar-chart.md +2 -2
- package/llms/components/lr-rating.md +5 -0
- package/llms/components/lr-relative-time.md +2 -0
- package/llms/components/lr-result-card.md +3 -3
- package/llms/components/lr-result-field.md +3 -3
- package/llms/components/lr-retrieval-results.md +1 -1
- package/llms/components/lr-scatter-chart.md +2 -2
- package/llms/components/lr-scroller.md +5 -5
- package/llms/components/lr-sequence-playback.md +1 -2
- package/llms/components/lr-slider.md +3 -1
- package/llms/components/lr-streaming-text.md +2 -3
- package/llms/components/lr-terminal.md +14 -5
- package/llms/components/lr-thinking-panel.md +3 -1
- package/llms/components/lr-thread-list.md +20 -1
- package/llms/components/lr-tool-call-chip.md +2 -2
- package/llms/components/lr-tool-param-form.md +2 -2
- package/llms/components/lr-tool-result-view.md +2 -3
- package/llms/components/lr-tool-select-dialog.md +2 -2
- package/llms/components/lr-voice-picker.md +7 -2
- package/llms/components/lr-widget-renderer.md +12 -13
- package/llms/peers.md +5 -5
- package/llms/shared.md +74 -63
- package/llms-full.txt +629 -247
- package/package.json +18 -13
- package/vscode-css-data.json +1 -1
- package/vscode-html-data.json +1 -1
- package/web-types.json +1 -1
- package/dist/components/viewers/docx-viewer/fixtures/minimal-docx-fixture.d.ts +0 -1
- package/dist/components/viewers/docx-viewer/fixtures/minimal-docx-fixture.js +0 -1
- package/dist/components/viewers/ebook-viewer/fixtures/minimal-epub-fixture.d.ts +0 -1
- package/dist/components/viewers/ebook-viewer/fixtures/minimal-epub-fixture.js +0 -1
- package/dist/components/viewers/spreadsheet-viewer/fixtures/minimal-xlsx-fixture.d.ts +0 -1
- package/dist/components/viewers/spreadsheet-viewer/fixtures/minimal-xlsx-fixture.js +0 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- **Release history** [CHANGELOG.md](../../CHANGELOG.md)
|
|
10
10
|
- **Deprecations** none
|
|
11
11
|
- **Optional peers** none
|
|
12
|
-
- **Themeable via** 2 parts,
|
|
12
|
+
- **Themeable via** 2 parts, 3 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
15
15
|
---
|
|
@@ -79,6 +79,10 @@ polite and assertive sinks, respectively;
|
|
|
79
79
|
|
|
80
80
|
**Themeable custom properties:** `--lr-document-viewer-max-height` (default `70vh`) — maximum block
|
|
81
81
|
size of `[part="body"]` before the dialog body scrolls internally.
|
|
82
|
+
`--lr-document-viewer-download-link-hover-bg` defaults to `color-mix(in oklab,
|
|
83
|
+
var(--lr-color-brand), var(--lr-color-mix-partner) var(--lr-color-mix-hover))`, and
|
|
84
|
+
`--lr-document-viewer-download-link-active-bg` uses `var(--lr-color-mix-active)` in that same mix
|
|
85
|
+
for the native download action's hover and pressed backgrounds.
|
|
82
86
|
|
|
83
87
|
**Renderer registry exports:**
|
|
84
88
|
|
|
@@ -68,6 +68,12 @@ resolved keyboard action was activated.
|
|
|
68
68
|
content. `lr-anchor-result` (`detail: { found }`) — fired after an `anchor` assignment or a
|
|
69
69
|
`scrollToAnchor()` call.
|
|
70
70
|
|
|
71
|
+
Mammoth's conversion result is usable only when it has own-data `value: string` and an own-data
|
|
72
|
+
`messages` array; an unusable primary result is terminal. From a usable result, the first 100
|
|
73
|
+
message positions are considered, malformed entries are omitted, and valid opaque causes are
|
|
74
|
+
retained in their diagnostics. Sanitized document content remains visible while those non-fatal
|
|
75
|
+
diagnostics are emitted.
|
|
76
|
+
|
|
71
77
|
**CSS parts:** `base`, `body`, `content`, `spinner`, `error`, `highlight` (a painted `text-quote`
|
|
72
78
|
highlight), `highlight-actions` (keyboard-accessible actions for resolved highlights),
|
|
73
79
|
`highlight-action` (one native highlight activation button), `search-match` (a painted in-document
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
|
|
10
10
|
- **Deprecations** none
|
|
11
11
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
12
|
-
- **Themeable via** 16 parts,
|
|
12
|
+
- **Themeable via** 16 parts, 36 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
13
13
|
- **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
|
|
14
14
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
15
15
|
|
|
@@ -58,7 +58,7 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
58
58
|
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
59
59
|
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
60
60
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
61
|
-
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
61
|
+
`--lr-chart-canvas-hover-outline-color`, `--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
62
62
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
|
63
63
|
together. The mirrored hooks are `--border-color-1`,
|
|
64
64
|
`--border-color-2`, `--border-color-3`, `--border-color-4`, `--border-color-5`,
|
|
@@ -18,7 +18,9 @@
|
|
|
18
18
|
|
|
19
19
|
Renders EPUB ebooks through the optional `epubjs` peer. `src` is fetched as an `ArrayBuffer`, and
|
|
20
20
|
epub.js renders the reading area into its stable `mount` element, using an internal iframe for
|
|
21
|
-
chapter content.
|
|
21
|
+
chapter content. A usable book exposes `ready`, `renderTo()`, and `destroy()`, and its rendition
|
|
22
|
+
exposes `display()`, `prev()`, `next()`, `on()`, and `annotations.highlight()`/`remove()`; an absent
|
|
23
|
+
required capability is terminal. Navigation and spine data are optional.
|
|
22
24
|
|
|
23
25
|
**Properties:** `src: string = ''` and `name: string = ''`. A plain `aria-label` attribute on the
|
|
24
26
|
host overrides the reading region's accessible name — by attribute presence, so an explicitly empty
|
|
@@ -39,14 +41,17 @@ viewer's supported `LyraAnchor.kind` values for the shared anchor-target contrac
|
|
|
39
41
|
**Methods:** `getToc()` resolves the EPUB's own navigation document (`book.navigation.toc`,
|
|
40
42
|
populated once `book.ready` resolves) flattened into document-ordered `EbookTocItem[]` (`{ id,
|
|
41
43
|
label, href, level }`, `level` starting at 1 for a top-level entry, `id` falling back to `href`
|
|
42
|
-
when a navigation entry has none), `[]` before a book has loaded
|
|
44
|
+
when a navigation entry has none), `[]` before a book has loaded or when navigation is absent. TOC
|
|
45
|
+
projection examines at most 10,000 positions, nodes, and depth 100; malformed entries are skipped
|
|
46
|
+
without preventing later valid entries. `search(query)` resolves the
|
|
43
47
|
match count across every spine section, in document order, via epub.js's own `item.load()`/
|
|
44
48
|
`item.find()`/`item.unload()` (empty/whitespace query behaves like `clearSearch()`; a newer
|
|
45
49
|
`search()` call or a `src` change aborts an in-flight scan; peer output is capped at 10,000
|
|
46
50
|
matches after at most 1,000 spine items and 4,000,000 result code units; queries are capped at 4,096
|
|
47
51
|
code units); `searchNext()`/`searchPrevious()`
|
|
48
52
|
advance/step back through matches (wrapping, resolving `false` when there are none); `clearSearch()`
|
|
49
|
-
clears the query, matches, and painted search annotation.
|
|
53
|
+
clears the query, matches, and painted search annotation. `matchCountExact: false` also reports
|
|
54
|
+
malformed or holey spine/find data and failed section load/unload work, not only a search ceiling.
|
|
50
55
|
|
|
51
56
|
**Events:** `lr-render-error` with `detail.error` when fetching, opening, or rendering fails;
|
|
52
57
|
`lr-location-change` (`detail: { cfi, href }`) fired from epub.js's own `relocated` event;
|
|
@@ -29,6 +29,11 @@ An attachment with no filename uses the localized `emailViewerUnnamedAttachment`
|
|
|
29
29
|
`lr-attachment-open` detail. The fallback resolves while rendering, so changing the locale or
|
|
30
30
|
per-instance `strings` after the message loads updates it without reparsing the message.
|
|
31
31
|
|
|
32
|
+
Parser output is admitted through a bounded direct-data projection: malformed optional fields,
|
|
33
|
+
recipients, and attachment entries are omitted without discarding later valid siblings. Accepted
|
|
34
|
+
string, `Uint8Array`, and `ArrayBuffer` attachment bytes are copied before use, and every
|
|
35
|
+
`lr-attachment-open` creates a fresh Blob, so later source mutation cannot change event bytes.
|
|
36
|
+
|
|
32
37
|
Sanitized HTML uses the passive-document profile: anchors, form controls, and custom elements are
|
|
33
38
|
unwrapped to ordinary text/children where safe, remote navigation/resource attributes are removed,
|
|
34
39
|
and an `<a>` itself never remains. Images render only inline base64 GIF, JPEG, PNG, or WebP data;
|
|
@@ -22,8 +22,8 @@ Filterable and taggable evaluation-example list with add, remove, import, and ex
|
|
|
22
22
|
|
|
23
23
|
- `examples: readonly EvalExample[] = []` (attribute: false) — `EvalExample { id: string; input: string;
|
|
24
24
|
expectedOutput?: string; tags?: readonly string[]; metadata?: Record<string, unknown> }` (exported here).
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
It is a dedicated dataset-row shape; no shared agent type models a labeled evaluation row.
|
|
26
|
+
`input`/`expectedOutput` are plain
|
|
27
27
|
strings (not structured payloads), rendered as plain text by every column's `cell()`. Fully
|
|
28
28
|
controlled: add/remove/import/export are all _requests_; the host mutates and passes the array
|
|
29
29
|
back. Empty/blank ids and later duplicate ids are omitted before selection, filtering, mutation requests, and the
|
|
@@ -123,6 +123,15 @@ downloadBlob(content: string, filename: string, mime: string, ownerDocument?: Do
|
|
|
123
123
|
|
|
124
124
|
**Known gotchas:**
|
|
125
125
|
|
|
126
|
+
- Format options are read from their direct data fields into a frozen list. Accessor-backed, missing,
|
|
127
|
+
malformed, or throwing descriptor fields are ignored rather than evaluated; later menu rendering
|
|
128
|
+
and `lr-export` events use that snapshot. The snapshot includes only direct `formatId`, `label`,
|
|
129
|
+
`description`, and `extension` fields; accepted records are frozen and never reread from the
|
|
130
|
+
caller. An open multi-format menu is a non-modal overlay owned by the element's
|
|
131
|
+
current document: only its topmost menu handles that document's Escape, outside pointer, or Tab.
|
|
132
|
+
It rebinds after document adoption; Escape or a selected export returns focus to its own trigger,
|
|
133
|
+
while a Tab close permits normal document navigation. Placement uses the current trigger and panel
|
|
134
|
+
geometry and remains clamped to the current document's viewport.
|
|
126
135
|
- CSV and JSON are the only built-in encoders. To offer XLSX/PDF/etc., pass an
|
|
127
136
|
`LyraExportFormatDescriptor` and handle its `formatId` from `lr-export`; custom formats never trigger a
|
|
128
137
|
download or `lr-export-complete` on their own. A descriptor's optional `extension` is metadata
|
|
@@ -108,10 +108,8 @@ no client-side CSV/XLSX/etc. parsing is performed (that's left entirely to the h
|
|
|
108
108
|
`resetValidity()`; reset clears only consumer custom validity and restores current intrinsic
|
|
109
109
|
`required` validity.
|
|
110
110
|
|
|
111
|
-
**Events:** a user selection or removal emits native bubbling/composed `input`, then
|
|
112
|
-
programmatic `files` writes are silent.
|
|
113
|
-
the shadow root, so a picker selection exposes exactly one post-commit host `change`, not the
|
|
114
|
-
implementation event plus a duplicate. `lr-files` (`detail: LyraFileInputFilesDetail`, with fresh
|
|
111
|
+
**Events:** a user selection or removal emits native bubbling/composed `input`, then exactly one
|
|
112
|
+
host `change`; programmatic `files` writes are silent. `lr-files` (`detail: LyraFileInputFilesDetail`, with fresh
|
|
115
113
|
frozen readonly `files` and `rejected` arrays and frozen rejected-file records, fired on both drop
|
|
116
114
|
and manual file-picker selection; immutable `File` objects retain identity) —
|
|
117
115
|
`LyraFileInputRejectedFile = { readonly file: File; readonly reason: 'type' | 'count' | 'size' | 'directory' | 'read' | 'limit'
|
|
@@ -172,10 +170,9 @@ What this changes for you:
|
|
|
172
170
|
- **Nothing about what the visible text says or where it renders.** `[part="rejection"]`'s text is
|
|
173
171
|
ordinary visible content and stays in the accessibility tree, so a user who reaches it reads it
|
|
174
172
|
normally. Both parts remain the right styling hooks.
|
|
175
|
-
- **
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
other Lyra announcement lands.
|
|
173
|
+
- **Read announcements from the shared light-DOM region** — query
|
|
174
|
+
`[data-lr-live-region="assertive"]` or `[data-lr-live-region="polite"]` in the document rather
|
|
175
|
+
than the styling parts.
|
|
179
176
|
- **A `::part(rejection)[role]`-style selector never matched anyway** — an attribute selector
|
|
180
177
|
cannot follow `::part()`. Nothing that worked before stopped working.
|
|
181
178
|
|
|
@@ -39,6 +39,8 @@ granular fields are then ignored entirely (`Intl` throws when the two are mixed)
|
|
|
39
39
|
to use the granular set. An unparseable `date` renders the default slot. An invalid
|
|
40
40
|
`timeZone` throws a `RangeError` inside `Intl`, which is caught and retried once without the zone —
|
|
41
41
|
so the output falls back to the browser's local zone instead of failing to render. Valid output is
|
|
42
|
-
wrapped in semantic `<time datetime="…">`.
|
|
42
|
+
wrapped in semantic `<time datetime="…">`. Date input accepts primitive strings/numbers or a
|
|
43
|
+
genuine `Date`; arbitrary objects are rejected without calling their `valueOf()`, `toString()`, or
|
|
44
|
+
other conversion hooks.
|
|
43
45
|
|
|
44
46
|
**Slots:** default — fallback content for an invalid/unparseable `date`.
|
|
@@ -37,8 +37,10 @@ string; shape?: 'circle' | 'square' | 'diamond' }`, the shared `lr-graph.nodeTyp
|
|
|
37
37
|
`aria-label` makes the host the sole overall owner (the wrapper omits its duplicate role/name);
|
|
38
38
|
an explicitly empty host label stays empty on the wrapper
|
|
39
39
|
|
|
40
|
-
**Events:** `lr-visibility-change` (`detail: { hiddenTypes }`,
|
|
41
|
-
|
|
40
|
+
**Events:** cancelable `lr-before-visibility-change` (`detail: { hiddenTypes }`, a frozen complete
|
|
41
|
+
next array) fires before a toggle changes state or announces it. Preventing it suppresses all three.
|
|
42
|
+
`lr-visibility-change` (`detail: { hiddenTypes }`, the complete updated array) fires after an
|
|
43
|
+
accepted assignment and announcement.
|
|
42
44
|
|
|
43
45
|
**Slots:** none.
|
|
44
46
|
|
|
@@ -25,7 +25,7 @@ and `lr-citation-badge` for each evidence entry.
|
|
|
25
25
|
**Properties:**
|
|
26
26
|
|
|
27
27
|
- `assessment: GroundingAssessment | null = null` (attribute: false) — **`GroundingAssessment`,
|
|
28
|
-
imported from `@aceshooting/lyra-ui/ai
|
|
28
|
+
imported from `@aceshooting/lyra-ui/ai`**: `{ supportedClaims: number;
|
|
29
29
|
unsupportedClaims: number; coverage: number; confidence?: number; warnings?: string[];
|
|
30
30
|
claims?: GroundedClaim[] }`, where `coverage` and `confidence` are 0–1 fractions. `null` renders
|
|
31
31
|
the empty state
|
|
@@ -48,16 +48,16 @@ label?: string }`. Independent of `assessment`; empty omits the whole evidence s
|
|
|
48
48
|
level used by both warnings and evidence sections; `'none'` keeps the visual text without
|
|
49
49
|
exposing a heading role, and invalid untyped values fall back to level 3
|
|
50
50
|
|
|
51
|
-
Direct citations and `assessment.claims` are
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
Direct citations and `assessment.claims` are keyed independently by nonblank `id` before counts,
|
|
52
|
+
rendering, or events. Usable display fields are captured once while emitted selected claim/citation
|
|
53
|
+
objects retain their original identity. Malformed rows and later duplicate ids are omitted; the
|
|
54
|
+
first valid occurrence wins.
|
|
54
55
|
|
|
55
56
|
**Events:** `lr-citation-select` (`detail: CitationSelectEventDetail` from
|
|
56
57
|
`@aceshooting/lyra-ui/ai` = `{ citation: Citation }`) — emitted when an evidence badge is activated.
|
|
57
58
|
The inner `lr-citation-badge`'s generic activation is stopped at this composition boundary; this
|
|
58
|
-
richer event exists because a bare `sourceId`/`index` pair
|
|
59
|
-
|
|
60
|
-
`lr-claim-select` (`detail: { claim }`) unchanged when a claim is activated.
|
|
59
|
+
richer event exists because a bare `sourceId`/`index` pair cannot identify the exact evidence span.
|
|
60
|
+
The summary emits `lr-claim-select` (`detail: { claim }`) when a claim is activated.
|
|
61
61
|
|
|
62
62
|
**Slots:** none.
|
|
63
63
|
|
|
@@ -69,7 +69,7 @@ row), `warnings` (omitted when there are none), `warnings-heading`, `warnings-co
|
|
|
69
69
|
its semantics survive list-style resets),
|
|
70
70
|
`evidence-item` (one `<li>` containing a badge + always-visible label/span text),
|
|
71
71
|
`evidence-label` (omitted when `Citation.label` is unset), `evidence-span` (the formatted
|
|
72
|
-
`Citation.span` range, omitted when unset), `claims` (the
|
|
72
|
+
`Citation.span` range, omitted when unset), `claims` (the claim/evidence region), `empty`
|
|
73
73
|
(shown when `assessment` is `null`).
|
|
74
74
|
|
|
75
75
|
**Themeable custom properties:** shared tokens only.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
|
|
10
10
|
- **Deprecations** none
|
|
11
11
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
12
|
-
- **Themeable via** 16 parts,
|
|
12
|
+
- **Themeable via** 16 parts, 36 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
15
15
|
---
|
|
@@ -65,7 +65,7 @@ inherited from `LyraChart`, unaffected by the binning logic).
|
|
|
65
65
|
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
66
66
|
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
67
67
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
68
|
-
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — inherited from `LyraChart`, identical in meaning, together with the
|
|
68
|
+
`--lr-chart-canvas-hover-outline-color`, `--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — inherited from `LyraChart`, identical in meaning, together with the
|
|
69
69
|
mirrored `--border-color-1`,
|
|
70
70
|
`--border-color-2`,
|
|
71
71
|
`--border-color-3`, `--border-color-4`, `--border-color-5`, `--border-color-6`, `--fill-color-1`,
|
|
@@ -73,7 +73,7 @@ announcement itself goes to the library's shared **light-DOM** assertive region,
|
|
|
73
73
|
consumer's `<body>` and marked `data-lr-live-region="assertive"`, because a live region inside a
|
|
74
74
|
shadow root is not reliably announced (JAWS with Firefox ignores one outright). What is announced
|
|
75
75
|
is unchanged: only failures added or transitioned _after_ mount, so historical failed rows stay
|
|
76
|
-
visible without being re-announced.
|
|
76
|
+
visible without being re-announced. Read that document-level region rather than
|
|
77
77
|
`::part(failure-live)`.
|
|
78
78
|
|
|
79
79
|
In virtualized mode (above `virtualizeAt`) the rows live in the internal
|
|
@@ -27,6 +27,15 @@ boolean = false` (reflected; unobserves a target after its first intersection).
|
|
|
27
27
|
target stays consumed across option-driven observer rebuilds and disconnect/reconnect cycles;
|
|
28
28
|
setting `once` to false is the explicit reset boundary.
|
|
29
29
|
|
|
30
|
+
The browser capability is optional. A missing or throwing owner-window lookup or unavailable
|
|
31
|
+
constructor leaves that rebuild inert rather than leaking an exception; an initial construction
|
|
32
|
+
failure retries once with safe default options. Individual `observe`, `unobserve`, and `disconnect`
|
|
33
|
+
failures are contained, so later valid targets and later rebuilds can still observe. Callbacks are
|
|
34
|
+
tied to the current owner document, so a detached or adopted wrapper cannot emit a stale batch.
|
|
35
|
+
Threshold collections inspect at most their first 10,000 direct data entries. Malformed or
|
|
36
|
+
accessor-backed entries are skipped; a valid prefix remains active, while an entirely unusable value
|
|
37
|
+
falls back to threshold `0`.
|
|
38
|
+
|
|
30
39
|
**Events:** mapped `lr-intersect` once per entry with `{ entry }`, plus the existing batch alias
|
|
31
40
|
`lr-intersection` with a frozen
|
|
32
41
|
`Readonly<{ entries: readonly IntersectionObserverEntry[] }>` detail. The batch sequence is
|
|
@@ -18,7 +18,12 @@
|
|
|
18
18
|
|
|
19
19
|
A collapsible, copyable tree view for an arbitrary JSON-serializable value (object, array, string,
|
|
20
20
|
number, boolean, null, or `undefined`). Serves as a fallback renderer wherever a raw payload needs
|
|
21
|
-
inspecting without a bespoke view.
|
|
21
|
+
inspecting without a bespoke view. Assignment creates one bounded, frozen graph from own enumerable
|
|
22
|
+
data descriptors. It never invokes getters or object-conversion hooks; accessor/reflection-failed
|
|
23
|
+
branches and function or symbol leaves are omitted, while bigint is retained as decimal text.
|
|
24
|
+
Rendering, searching, toolbar copy, and per-node copy all use that same owned graph, so later
|
|
25
|
+
mutation or revocation of the supplied object cannot change a displayed or copied value. Ordinary
|
|
26
|
+
aliases, cycles, and sparse-array holes are retained. Expand/collapse state is keyed by structural path (not object
|
|
22
27
|
identity), so it survives a `data` reassignment that keeps the same shape — e.g. a streaming result
|
|
23
28
|
being patched in place. A container value that self-references (directly or through a longer cycle)
|
|
24
29
|
renders as a leaf `Circular reference` marker (`data-type="circular"`) instead of recursing — no
|
|
@@ -35,7 +35,8 @@ errorMessage?: string }` (all four types exported here), where
|
|
|
35
35
|
`syncStatus === 'error'`. `id`/`name` follow `DocumentRef`'s spirit, but a source is a _connector
|
|
36
36
|
feeding_ documents, not a document, so the rest of the fields are its own
|
|
37
37
|
- `label?: string` — heading text and the table's accessible name; omission uses the localized
|
|
38
|
-
knowledge-base label
|
|
38
|
+
knowledge-base label. An explicit empty string keeps the visible heading empty while the nested
|
|
39
|
+
table still takes the localized default as its accessible name
|
|
39
40
|
- `hideSummary: boolean = false` (attribute `hide-summary`, reflected) — hides the aggregate
|
|
40
41
|
total/synced/syncing/needs-attention row
|
|
41
42
|
- `hideCreate: boolean = false` (attribute `hide-create`, reflected) — hides the "Add source"
|
|
@@ -63,6 +64,14 @@ unset), `sync-cell`, `sync-badge`, `sync-timestamp`, `sync-error`, `health-cell`
|
|
|
63
64
|
`document-count` (omitted when unset), `permission-badge` (omitted when `permission` is unset),
|
|
64
65
|
`actions-menu`, `actions-trigger` (the kebab `<button>`).
|
|
65
66
|
|
|
67
|
+
The 13 row parts — `name-cell`, `source-name`, `source-type`, `sync-cell`, `sync-badge`,
|
|
68
|
+
`sync-timestamp`, `sync-error`, `health-cell`, `health-badge`, `document-count`,
|
|
69
|
+
`permission-badge`, `actions-menu`, and `actions-trigger` — are forwarded from the composed table
|
|
70
|
+
through `[part="table"]`/`exportparts`, so they are styleable as
|
|
71
|
+
`lr-knowledge-base::part(actions-trigger)`. `actions-trigger` is the forwarded kebab button: it
|
|
72
|
+
inherits the row font, has the shared `--lr-icon-button-size` minimum hit area (40px by default),
|
|
73
|
+
and keeps independent hover, pressed, and focus treatment.
|
|
74
|
+
|
|
66
75
|
**Themeable custom properties:** shared tokens only.
|
|
67
76
|
|
|
68
77
|
**Optional peer deps:** none.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [llms-full.txt](../../llms-full.txt)
|
|
10
10
|
- **Deprecations** none
|
|
11
11
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
12
|
-
- **Themeable via** 16 parts,
|
|
12
|
+
- **Themeable via** 16 parts, 36 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
13
13
|
- **Documented with** `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
|
|
14
14
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
15
15
|
|
|
@@ -58,7 +58,7 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
58
58
|
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
59
59
|
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
60
60
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
61
|
-
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
61
|
+
`--lr-chart-canvas-hover-outline-color`, `--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
62
62
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
|
63
63
|
together. The mirrored hooks are `--border-color-1`,
|
|
64
64
|
`--border-color-2`, `--border-color-3`, `--border-color-4`, `--border-color-5`,
|
|
@@ -76,7 +76,8 @@ passthrough). Not a subclass of `LyraChart`.
|
|
|
76
76
|
more here than on `lr-chart`: this component exists to avoid the Chart.js peers, so without it an
|
|
77
77
|
app that chose it for exactly that reason had to either hand-roll a `<details>` around a
|
|
78
78
|
duplicated table or adopt `lr-chart` and pull in Chart.js for a button — the cheap component
|
|
79
|
-
stuck with the expensive workaround.
|
|
79
|
+
stuck with the expensive workaround. A supplied `slot="data-table"` follows the same disclosure
|
|
80
|
+
state. Unset, nothing renders and behavior is unchanged.
|
|
80
81
|
Themeable via `--lr-lite-chart-data-table-toggle-hover-bg` (default
|
|
81
82
|
`var(--lr-color-brand-quiet)`) and `--lr-lite-chart-data-table-toggle-active-bg` (default: that
|
|
82
83
|
hover colour mixed by `--lr-color-mix-active`).
|
|
@@ -152,10 +153,12 @@ passthrough). Not a subclass of `LyraChart`.
|
|
|
152
153
|
equivalent for the full charts.
|
|
153
154
|
- `withoutValueAxis: boolean = false` (attribute `without-value-axis`) — suppresses gridlines and
|
|
154
155
|
value-axis tick labels; x-axis category labels remain.
|
|
155
|
-
- `selectedIndices: readonly number[] = []` (attribute: false) —
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
156
|
+
- `selectedIndices: readonly number[] = []` (attribute: false) — names **source category indices**,
|
|
157
|
+
not positions in the sampled SVG output. Finite integer entries whose source rows are represented
|
|
158
|
+
in the bounded rendered sample select matching bars and line points, which receive
|
|
159
|
+
`data-selected` and explicit `aria-pressed="true"`; all other marks render `aria-pressed="false"`.
|
|
160
|
+
For a multi-series chart, a selected source category selects the matching rendered mark in every
|
|
161
|
+
dataset. Empty is the default.
|
|
159
162
|
Style the built-in highlight through `--lr-lite-chart-selected-outline-color` and
|
|
160
163
|
`--lr-lite-chart-selected-outline-width`. Note
|
|
161
164
|
`::part(bar)[data-selected]` and `::part(point)[data-selected]` are **invalid CSS** — Shadow Parts
|
|
@@ -96,6 +96,12 @@ raises `customError` and blocks submission, `''` restores the picker's own compu
|
|
|
96
96
|
required picker with nothing committed goes back to `valueMissing`. It survives every
|
|
97
97
|
`value`/`required` change and a form reset. `getForm()` returns the browser-resolved owning form.
|
|
98
98
|
|
|
99
|
+
The open list is a nonmodal overlay: only its topmost owner handles Escape and outside pointer
|
|
100
|
+
dismissal; Escape restores the trigger, while Tab keeps ordinary document navigation. Disconnect or
|
|
101
|
+
cross-document adoption closes it. A required, uncommitted value recomputes its intrinsic localized
|
|
102
|
+
message when `.strings` or the effective locale changes; an author custom-validity message retains
|
|
103
|
+
priority until cleared.
|
|
104
|
+
|
|
99
105
|
**Slots:** `label`, `hint`, `error`.
|
|
100
106
|
|
|
101
107
|
**CSS parts:** `form-control`, `form-control-label`, `trigger`,
|
|
@@ -94,7 +94,8 @@ string; geojson: GeoJSON.FeatureCollection; field: string; stops: [number, strin
|
|
|
94
94
|
the live host cascade before passing the expression to MapLibre's WebGL renderer.
|
|
95
95
|
- `markers: LyraMapMarker[] = []` (attribute: false) — `LyraMapMarker { id?: string; lngLat:
|
|
96
96
|
[number, number]; color?: string; label?: string; unsafeHtml?: string }`; an explicit `id` is
|
|
97
|
-
trimmed and must be nonempty, and the first marker for an explicit ID wins.
|
|
97
|
+
trimmed and must be nonempty, and the first successfully admitted marker for an explicit ID wins.
|
|
98
|
+
A malformed earlier row does not reserve that ID. Markers are reconciled
|
|
98
99
|
by that explicit ID (falling back
|
|
99
100
|
to a `lng,lat` key, disambiguated by occurrence order for duplicate-coordinate id-less markers,
|
|
100
101
|
when `id` is omitted) so an unchanged marker isn't torn down and recreated on every `markers`
|
|
@@ -120,7 +121,8 @@ string; geojson: GeoJSON.FeatureCollection; field: string; stops: [number, strin
|
|
|
120
121
|
GeoJSON.FeatureCollection; tone?: 'accent' | 'success' | 'warning' |
|
|
121
122
|
'danger' | 'neutral'; color?: string; strokeColor?: string; kind?: LyraMapDataLayerKind;
|
|
122
123
|
heatmap?: LyraMapHeatmapOptions; cluster?: LyraMapClusterOptions }`. `sourceId` is trimmed and must be nonempty; the first layer for a
|
|
123
|
-
`sourceId` wins
|
|
124
|
+
`sourceId` that is successfully admitted wins; blank, malformed, and later duplicate records are
|
|
125
|
+
ignored without reserving an identity for a valid later sibling. Each retained entry adds one
|
|
124
126
|
GeoJSON source plus three geometry-filtered layers
|
|
125
127
|
(fill, line, and circle, so a mixed `FeatureCollection` renders correctly), colored from the
|
|
126
128
|
matching `--lr-color-*` token (`tone` defaults to `'accent'` → `--lr-color-brand`).
|
|
@@ -144,6 +146,10 @@ heatmap?: LyraMapHeatmapOptions; cluster?: LyraMapClusterOptions }`. `sourceId`
|
|
|
144
146
|
its private source/layers removed, and a genuinely new `sourceId` gets new resources — nothing
|
|
145
147
|
leaks on removal, style change, or disconnect.
|
|
146
148
|
|
|
149
|
+
The component snapshots the configuration it reads. It passes `choropleth.geojson` and
|
|
150
|
+
`dataLayers[].geojson` through to MapLibre; assign a new `choropleth`, `dataLayers`, or `markers`
|
|
151
|
+
value after changing configuration, because mutating an assigned value is not observed.
|
|
152
|
+
|
|
147
153
|
`cluster` and `kind` (both new in 12.0.0) opt one entry out of that three-layer geometry split.
|
|
148
154
|
**Both are strictly additive: an entry that sets neither renders exactly what it rendered before,
|
|
149
155
|
down to the layer ids and the point layer's filter.**
|
|
@@ -216,9 +222,9 @@ expensive on an animated one. When every feature has a unique `string`/`number`
|
|
|
216
222
|
features keep semantically unchanged geometry/bbox values, the component emits MapLibre's
|
|
217
223
|
incremental `updateData()` for property changes, additions, removals, and order changes. The exact
|
|
218
224
|
next order is preserved: an unchanged prefix stays in place and only the invalidated suffix is
|
|
219
|
-
removed and re-added. Lyra
|
|
220
|
-
|
|
221
|
-
|
|
225
|
+
removed and re-added. Lyra snapshots control and projection data while retaining opaque GeoJSON
|
|
226
|
+
identity at the MapLibre boundary; a bounded, accessor-free comparison verifies the JSON geometry
|
|
227
|
+
graph instead. A missing/duplicate ID, changed geometry, exceeded bound, or uncertain
|
|
222
228
|
comparison falls back to `setData()` with no change in rendered behaviour. Peers without
|
|
223
229
|
`updateData()` always take the old path.
|
|
224
230
|
|
|
@@ -273,6 +279,10 @@ zoom-to-cluster handler reads. The count label is deliberately not hit-tested (i
|
|
|
273
279
|
the circle already queried and would only make the label the topmost hit), and a `kind: 'heatmap'`
|
|
274
280
|
layer is never queried at all — MapLibre returns no features for a rendered density surface
|
|
275
281
|
|
|
282
|
+
The outer marker-activation detail is frozen, while an opaque marker `unsafeHtml` value remains the
|
|
283
|
+
original supplied value at the MapLibre popup and marker-activation boundary. Treat it as trusted
|
|
284
|
+
markup as described above.
|
|
285
|
+
|
|
276
286
|
**Slots:** `legend` — custom legend content, rendered inside the legend panel's own layout so it
|
|
277
287
|
stays positioned with the map instead of floating beside it. Supplying it opens the panel even
|
|
278
288
|
when `legend` and `legendGradient` are both empty.
|
|
@@ -74,7 +74,9 @@ uses for its own `[part="body"]`.
|
|
|
74
74
|
to plain text if the peer is unavailable; `escape` displays raw HTML source as text while ordinary
|
|
75
75
|
Markdown still renders; `trusted` renders raw HTML without sanitization and is only for trusted
|
|
76
76
|
content.
|
|
77
|
-
- `gfm: boolean = true` — GitHub-flavored Markdown (tables, strikethrough, autolinks, task lists)
|
|
77
|
+
- `gfm: boolean = true` — GitHub-flavored Markdown (tables, strikethrough, autolinks, task lists).
|
|
78
|
+
GFM task-list checkboxes stay disabled. A task's primary inline text supplies its accessible name;
|
|
79
|
+
nested task text is excluded, and a blank task receives no generated name.
|
|
78
80
|
- `linkTarget: string | null = '_blank'` (attribute `link-target`) — `target` applied to every
|
|
79
81
|
rendered `<a>`, with `rel="noopener noreferrer"` always added alongside it whenever a `target` is
|
|
80
82
|
emitted. `'_blank'` (the default) preserves the original output; a falsy value (`null`, or the
|
|
@@ -140,9 +142,10 @@ placed first and preserved inside both ceilings.
|
|
|
140
142
|
|
|
141
143
|
**Events:**
|
|
142
144
|
|
|
143
|
-
- `lr-link-click` (`detail: { href: string }`) — fired, with
|
|
144
|
-
|
|
145
|
-
|
|
145
|
+
- `lr-link-click` (`detail: { href: string }`) — fired, with navigation prevented, when a rendered
|
|
146
|
+
link's `href` starts with `internal-link-prefix`; ordinary external links navigate normally and
|
|
147
|
+
never fire this. If an intercepted link overlaps a painted highlight,
|
|
148
|
+
`lr-highlight-activate` fires first for pointer and Enter activation.
|
|
146
149
|
- `lr-render-error` (`detail: { error: unknown }`) — rendering fell back to plain text (see the
|
|
147
150
|
fallback matrix below), or `math` is set but the `katex` peer isn't installed
|
|
148
151
|
- `lr-highlight-activate` (`detail: { highlightId: string }`) — a painted `text-quote` highlight was clicked
|
|
@@ -151,12 +151,6 @@ the video's own native controls bubble up and spuriously fire `lr-media-open`.
|
|
|
151
151
|
|
|
152
152
|
**Known gotchas:**
|
|
153
153
|
|
|
154
|
-
- Calling the real `.click()` (or dispatching a `click`/`MouseEvent`) on the file-chip's `<a href>`
|
|
155
|
-
in a test genuinely triggers real browser navigation — always `preventDefault()` on a `click`
|
|
156
|
-
listener registered before triggering it, the same precaution `lr-document-preview`'s own
|
|
157
|
-
download-link tests already take. A synthetic `dispatchEvent(new MouseEvent('click', {cancelable:
|
|
158
|
-
true}))` still invokes the anchor's native activation behavior if nothing calls
|
|
159
|
-
`preventDefault()` during dispatch — it is not a safe no-op.
|
|
160
154
|
- `kind` only reflects to the host attribute when explicitly set — CSS keying off the
|
|
161
155
|
auto-detected resolved kind should target the rendered `[part]`/element (e.g. `video[part="media"]`),
|
|
162
156
|
not `:host([kind=...])`, since the latter won't see an auto-detected kind.
|
|
@@ -18,13 +18,14 @@
|
|
|
18
18
|
|
|
19
19
|
A caret-anchored, keyboard-navigable popover for `@`-mention and `/`-slash-command autocomplete
|
|
20
20
|
inside a plain-text `<textarea>`/`<input>` the host owns. First-party invention (no Web Awesome
|
|
21
|
-
equivalent).
|
|
22
|
-
`
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
equivalent). A textarea keeps its native textbox semantics while open and, after a consumed
|
|
22
|
+
navigation key, `focusActiveOption()` moves real focus to the active option in the shadow listbox.
|
|
23
|
+
A single-line text input retains its active-descendant element-reference route; only that route
|
|
24
|
+
uses `syncActiveDescendant()`, which returns `false` for a textarea.
|
|
25
|
+
Textarea ARIA/AOM values are restored on close, anchor replacement, disconnect, or adoption; a
|
|
26
|
+
cross-root string IDREF is never left behind. Later localized result-count and active-position
|
|
27
|
+
changes are announced once through the shared polite region; opening markup and unchanged state are
|
|
28
|
+
silent.
|
|
28
29
|
|
|
29
30
|
**Properties:**
|
|
30
31
|
|
|
@@ -66,9 +67,10 @@ replacement, disconnect, or adoption; a cross-root string IDREF is never left be
|
|
|
66
67
|
`preventDefault()` when `filteredItems` is empty, letting the keystroke fall through to the
|
|
67
68
|
host's own control unchanged. `Escape` closes with no selection. Returns `true` whenever the key
|
|
68
69
|
was intercepted and `false` for keys the method does not recognize.
|
|
69
|
-
- `syncActiveDescendant(control: HTMLElement): boolean` —
|
|
70
|
-
`
|
|
71
|
-
|
|
70
|
+
- `syncActiveDescendant(control: HTMLElement): boolean` — applies
|
|
71
|
+
`ariaActiveDescendantElement` only for a retained single-line input route. For a textarea it
|
|
72
|
+
returns `false` without mutating `aria-activedescendant`; the managed textarea session clears that
|
|
73
|
+
value separately.
|
|
72
74
|
- `focusActiveOption(options?: LyraMentionFocusOptions): Promise<boolean>` — same-tree fallback
|
|
73
75
|
after a consumed navigation key when `syncActiveDescendant()` returns `false`. Focuses the active
|
|
74
76
|
option, lets the popover handle subsequent navigation, and restores focus to `anchor` when the
|
|
@@ -41,19 +41,26 @@ intent events, so each built-in can occur at most once. `copyText: string = ''`
|
|
|
41
41
|
(attribute `copy-text`) — required for the `copy` built-in to render at all. `feedbackRating:
|
|
42
42
|
MessageFeedbackValue = null` (attribute `feedback-rating`) — forwarded to the embedded, thumbs-only
|
|
43
43
|
`lr-message-feedback` (its `detail`/`detailFor` are never forwarded, so its detail panel never
|
|
44
|
-
opens). `
|
|
44
|
+
opens). `feedbackPending: boolean` (read-only, nonreflecting) — true only while the current built-in
|
|
45
|
+
feedback control awaits settlement; it has no `feedback-pending` attribute or change event.
|
|
46
|
+
`revealOnInteraction: boolean = false` (reflected, attribute `reveal-on-interaction`) — hides
|
|
45
47
|
the bar until the closest `lr-chat-message` ancestor is hovered, or the toolbar contains focus.
|
|
46
48
|
`label: string = ''` — accessible name override for the toolbar. `accessibleLabel: string | null =
|
|
47
49
|
null` (attribute `aria-label`) — overrides the toolbar's computed accessible name, winning over
|
|
48
50
|
`label` and the localized default; attribute-reflects from a host-level `aria-label`.
|
|
49
51
|
|
|
52
|
+
**Methods:** `finalizePendingSubmit(submissionId: string): boolean` and
|
|
53
|
+
`revertPendingSubmit(submissionId: string): boolean` settle only the current built-in feedback
|
|
54
|
+
request. Both return `false` for blank, stale, mismatched, removed, or replaced requests.
|
|
55
|
+
|
|
50
56
|
**Events:** `lr-regenerate`/`lr-edit` — a built-in was activated, `detail: null`. `lr-copy` —
|
|
51
57
|
frozen `detail: { ok: true, text }`, emitted only after the embedded `lr-copy-button`'s clipboard
|
|
52
58
|
write fulfills (bubbles/composed already, not re-emitted). A failed write surfaces generic
|
|
53
59
|
`lr-error` (`detail: null`) plus `lr-copy-error` with frozen
|
|
54
60
|
`detail: { ok: false, text, reason, error }`; `reason` is `'unsupported' | 'denied' | 'failed'`.
|
|
55
|
-
`lr-feedback-change`/`lr-feedback-submit` — bubble unchanged from the embedded,
|
|
56
|
-
|
|
61
|
+
`lr-feedback-change`/`lr-feedback-submit` — bubble unchanged from the embedded, thumbs-only
|
|
62
|
+
`lr-message-feedback`; the frozen submit detail includes its `submissionId`, which is the value to
|
|
63
|
+
pass to either settlement method. A colliding event from an
|
|
57
64
|
arbitrary slotted child is contained at that slot boundary rather than being mistaken for a
|
|
58
65
|
built-in action.
|
|
59
66
|
|
|
@@ -36,21 +36,34 @@ owns that one detail panel. `disabled: boolean = false` (reflected) makes a reco
|
|
|
36
36
|
submission while host persistence is unresolved; all feedback controls are disabled and the panel
|
|
37
37
|
reports busy until that state is resolved.
|
|
38
38
|
|
|
39
|
+
When the optional comment textarea renders, `spellcheck: boolean = true`,
|
|
40
|
+
`autocapitalize: string = ''`, `autocorrect: boolean = true`, and
|
|
41
|
+
`wrap: MessageFeedbackWrap = 'soft'` forward to it; they have no effect without that textarea.
|
|
42
|
+
`MessageFeedbackWrap` is `'soft' | 'hard' | 'off'`, the native textarea wrap vocabulary.
|
|
43
|
+
|
|
39
44
|
**Methods:** `focus()` focuses the thumb matching the current `rating` (the up thumb when `null`);
|
|
40
45
|
`blur()` blurs both thumbs; `click()` activates that same thumb when enabled.
|
|
41
46
|
`getToolbarActions()` returns the ordered logical thumb actions used by an enclosing toolbar.
|
|
42
|
-
`finalizePendingSubmit()` completes a prevented submit after persistence succeeds, closing the
|
|
43
|
-
panel, announcing success, and returning focus to the active thumb.
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
`finalizePendingSubmit(submissionId?: string): boolean` completes a prevented submit after persistence succeeds, closing the
|
|
48
|
+
panel, announcing success, and returning focus to the active thumb.
|
|
49
|
+
`revertPendingSubmit(submissionId?: string): boolean` releases
|
|
50
|
+
the pending state after failure without clearing the draft or announcing success, restoring the
|
|
51
|
+
prior rating and panel state. A detail-panel submit remains open for retry, while a thumbs-only
|
|
52
|
+
submit remains panel-free; it likewise accepts an optional `submissionId` and returns `boolean`. The event
|
|
53
|
+
supplies a nonblank, never-reused id; a later/current settlement must use that exact id. Legacy
|
|
54
|
+
no-argument settlement remains available only for the first transaction that has never been
|
|
55
|
+
invalidated; stale or mismatched settlements return `false`.
|
|
46
56
|
|
|
47
57
|
**Events:** `lr-feedback-change` — `detail: { rating: 'up' | 'down' | null }`, fired when a thumb's
|
|
48
58
|
provisional rating changes or clears. `lr-feedback-submit` — cancelable
|
|
49
|
-
`detail: { rating: 'up' | 'down' | null; reasonIds: string[]; comment: string }`, fired for every
|
|
59
|
+
`detail: { rating: 'up' | 'down' | null; reasonIds: string[]; comment: string; submissionId: string }`, fired for every
|
|
50
60
|
terminal thumbs-only choice/clear and by the detail panel's submit button. The pending transaction
|
|
51
|
-
is installed before dispatch, so even a synchronous listener may finalize/revert it safely.
|
|
61
|
+
is installed before dispatch, so even a synchronous listener may finalize/revert it safely. The
|
|
62
|
+
event detail is frozen.
|
|
52
63
|
`preventDefault()` holds the panel/control in `pending` and delays
|
|
53
|
-
success announcement/focus until `finalizePendingSubmit()`; call
|
|
64
|
+
success announcement/focus until `finalizePendingSubmit(detail.submissionId)`; call
|
|
65
|
+
`revertPendingSubmit(detail.submissionId)` on failure. The no-argument form is only the documented
|
|
66
|
+
legacy first-transaction path.
|
|
54
67
|
When uncanceled it retains the synchronous close/announce/focus behavior. The optional comment
|
|
55
68
|
`<textarea>`'s native `focus` and `blur` are re-dispatched as bubbling, composed host events.
|
|
56
69
|
`lr-toolbar-actions-change` is the no-detail coordination event emitted when the provider's logical
|
|
@@ -23,12 +23,14 @@ parse/highlight work; replacing that same-id part with `state: 'complete'` flush
|
|
|
23
23
|
Citation badge ranks are precomputed in one linear pass per render, rather than rescanning and
|
|
24
24
|
allocating every preceding part for each citation in a citation-heavy or growing message.
|
|
25
25
|
|
|
26
|
-
**Properties:** `parts: MessagePart[] = []` (attribute: false); `contentMode:
|
|
26
|
+
**Properties:** `parts: MessagePart[] = []` (attribute: false); `contentMode: MessagePartsContentMode =
|
|
27
27
|
'markdown'` (attribute `content-mode`, reflected) and `showReasoning: boolean = true` (attribute
|
|
28
28
|
`show-reasoning`, reflected, with string-aware true-default conversion);
|
|
29
29
|
`renderPart?: MessagePartRenderer` (attribute: false), where returning `undefined` delegates that
|
|
30
30
|
part to the built-in renderer; `accessibleLabel: string | null = null` (attribute `aria-label`).
|
|
31
31
|
|
|
32
|
+
Unsupported direct or `content-mode` attribute values normalize and reflect as `markdown`.
|
|
33
|
+
|
|
32
34
|
`MessagePartRenderer = (part: MessagePart, index: number) => unknown`; `MessagePart` and its
|
|
33
35
|
discriminated part shapes come from the `@aceshooting/lyra-ui/ai` subpath. Tool results are a strict
|
|
34
36
|
success/error union: a success has `result` and cannot have `error`; an error has `error` and may
|