@aceshooting/lyra-ui 3.0.0 → 3.2.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/README.md +21 -3
- package/custom-elements.json +12254 -4196
- package/dist/components/archive-viewer/archive-loader.d.ts +8 -0
- package/dist/components/archive-viewer/archive-loader.d.ts.map +1 -0
- package/dist/components/archive-viewer/archive-loader.js +19 -0
- package/dist/components/archive-viewer/archive-loader.js.map +1 -0
- package/dist/components/archive-viewer/archive-viewer-register.d.ts +2 -0
- package/dist/components/archive-viewer/archive-viewer-register.d.ts.map +1 -0
- package/dist/components/archive-viewer/archive-viewer-register.js +8 -0
- package/dist/components/archive-viewer/archive-viewer-register.js.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.class.d.ts +47 -0
- package/dist/components/archive-viewer/archive-viewer.class.d.ts.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.class.js +115 -0
- package/dist/components/archive-viewer/archive-viewer.class.js.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.d.ts +4 -0
- package/dist/components/archive-viewer/archive-viewer.d.ts.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.js +7 -0
- package/dist/components/archive-viewer/archive-viewer.js.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.styles.d.ts +2 -0
- package/dist/components/archive-viewer/archive-viewer.styles.d.ts.map +1 -0
- package/dist/components/archive-viewer/archive-viewer.styles.js +14 -0
- package/dist/components/archive-viewer/archive-viewer.styles.js.map +1 -0
- package/dist/components/attachment-chip/attachment-chip.class.d.ts +16 -0
- package/dist/components/attachment-chip/attachment-chip.class.d.ts.map +1 -1
- package/dist/components/attachment-chip/attachment-chip.class.js +54 -3
- package/dist/components/attachment-chip/attachment-chip.class.js.map +1 -1
- package/dist/components/attachment-chip/attachment-chip.d.ts +2 -0
- package/dist/components/attachment-chip/attachment-chip.d.ts.map +1 -1
- package/dist/components/attachment-chip/attachment-chip.js +2 -0
- package/dist/components/attachment-chip/attachment-chip.js.map +1 -1
- package/dist/components/attachment-chip/attachment-chip.styles.d.ts.map +1 -1
- package/dist/components/attachment-chip/attachment-chip.styles.js +8 -0
- package/dist/components/attachment-chip/attachment-chip.styles.js.map +1 -1
- package/dist/components/calendar-viewer/calendar-loader.d.ts +5 -0
- package/dist/components/calendar-viewer/calendar-loader.d.ts.map +1 -0
- package/dist/components/calendar-viewer/calendar-loader.js +18 -0
- package/dist/components/calendar-viewer/calendar-loader.js.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.class.d.ts +55 -0
- package/dist/components/calendar-viewer/calendar-viewer.class.d.ts.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.class.js +123 -0
- package/dist/components/calendar-viewer/calendar-viewer.class.js.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.d.ts +3 -0
- package/dist/components/calendar-viewer/calendar-viewer.d.ts.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.js +12 -0
- package/dist/components/calendar-viewer/calendar-viewer.js.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.styles.d.ts +2 -0
- package/dist/components/calendar-viewer/calendar-viewer.styles.d.ts.map +1 -0
- package/dist/components/calendar-viewer/calendar-viewer.styles.js +16 -0
- package/dist/components/calendar-viewer/calendar-viewer.styles.js.map +1 -0
- package/dist/components/code-block/code-block-core.class.d.ts +3 -0
- package/dist/components/code-block/code-block-core.class.d.ts.map +1 -1
- package/dist/components/code-block/code-block-core.class.js +41 -16
- package/dist/components/code-block/code-block-core.class.js.map +1 -1
- package/dist/components/code-block/code-block.class.d.ts +3 -0
- package/dist/components/code-block/code-block.class.d.ts.map +1 -1
- package/dist/components/code-block/code-block.class.js +41 -16
- package/dist/components/code-block/code-block.class.js.map +1 -1
- package/dist/components/code-block/code-block.styles.d.ts.map +1 -1
- package/dist/components/code-block/code-block.styles.js +16 -0
- package/dist/components/code-block/code-block.styles.js.map +1 -1
- package/dist/components/code-block/code-loader.d.ts +2 -0
- package/dist/components/code-block/code-loader.d.ts.map +1 -1
- package/dist/components/code-block/code-loader.js +14 -4
- package/dist/components/code-block/code-loader.js.map +1 -1
- package/dist/components/code-block/greycat-language.d.ts +9 -0
- package/dist/components/code-block/greycat-language.d.ts.map +1 -0
- package/dist/components/code-block/greycat-language.js +73 -0
- package/dist/components/code-block/greycat-language.js.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.class.d.ts +31 -0
- package/dist/components/contact-viewer/contact-viewer.class.d.ts.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.class.js +92 -0
- package/dist/components/contact-viewer/contact-viewer.class.js.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.d.ts +3 -0
- package/dist/components/contact-viewer/contact-viewer.d.ts.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.js +13 -0
- package/dist/components/contact-viewer/contact-viewer.js.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.styles.d.ts +2 -0
- package/dist/components/contact-viewer/contact-viewer.styles.d.ts.map +1 -0
- package/dist/components/contact-viewer/contact-viewer.styles.js +16 -0
- package/dist/components/contact-viewer/contact-viewer.styles.js.map +1 -0
- package/dist/components/contact-viewer/vcard.d.ts +31 -0
- package/dist/components/contact-viewer/vcard.d.ts.map +1 -0
- package/dist/components/contact-viewer/vcard.js +87 -0
- package/dist/components/contact-viewer/vcard.js.map +1 -0
- package/dist/components/csv-viewer/csv-loader.d.ts +8 -0
- package/dist/components/csv-viewer/csv-loader.d.ts.map +1 -0
- package/dist/components/csv-viewer/csv-loader.js +19 -0
- package/dist/components/csv-viewer/csv-loader.js.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.class.d.ts +31 -0
- package/dist/components/csv-viewer/csv-viewer.class.d.ts.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.class.js +108 -0
- package/dist/components/csv-viewer/csv-viewer.class.js.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.d.ts +3 -0
- package/dist/components/csv-viewer/csv-viewer.d.ts.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.js +9 -0
- package/dist/components/csv-viewer/csv-viewer.js.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.styles.d.ts +2 -0
- package/dist/components/csv-viewer/csv-viewer.styles.d.ts.map +1 -0
- package/dist/components/csv-viewer/csv-viewer.styles.js +14 -0
- package/dist/components/csv-viewer/csv-viewer.styles.js.map +1 -0
- package/dist/components/dataset-viewer/dataset-loader.d.ts +7 -0
- package/dist/components/dataset-viewer/dataset-loader.d.ts.map +1 -0
- package/dist/components/dataset-viewer/dataset-loader.js +19 -0
- package/dist/components/dataset-viewer/dataset-loader.js.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.class.d.ts +34 -0
- package/dist/components/dataset-viewer/dataset-viewer.class.d.ts.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.class.js +93 -0
- package/dist/components/dataset-viewer/dataset-viewer.class.js.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.d.ts +3 -0
- package/dist/components/dataset-viewer/dataset-viewer.d.ts.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.js +13 -0
- package/dist/components/dataset-viewer/dataset-viewer.js.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.styles.d.ts +2 -0
- package/dist/components/dataset-viewer/dataset-viewer.styles.d.ts.map +1 -0
- package/dist/components/dataset-viewer/dataset-viewer.styles.js +13 -0
- package/dist/components/dataset-viewer/dataset-viewer.styles.js.map +1 -0
- package/dist/components/document-viewer/document-viewer.class.d.ts +55 -0
- package/dist/components/document-viewer/document-viewer.class.d.ts.map +1 -0
- package/dist/components/document-viewer/document-viewer.class.js +160 -0
- package/dist/components/document-viewer/document-viewer.class.js.map +1 -0
- package/dist/components/document-viewer/document-viewer.d.ts +5 -0
- package/dist/components/document-viewer/document-viewer.d.ts.map +1 -0
- package/dist/components/document-viewer/document-viewer.js +8 -0
- package/dist/components/document-viewer/document-viewer.js.map +1 -0
- package/dist/components/document-viewer/document-viewer.styles.d.ts +2 -0
- package/dist/components/document-viewer/document-viewer.styles.d.ts.map +1 -0
- package/dist/components/document-viewer/document-viewer.styles.js +48 -0
- package/dist/components/document-viewer/document-viewer.styles.js.map +1 -0
- package/dist/components/document-viewer/registry.d.ts +30 -0
- package/dist/components/document-viewer/registry.d.ts.map +1 -0
- package/dist/components/document-viewer/registry.js +42 -0
- package/dist/components/document-viewer/registry.js.map +1 -0
- package/dist/components/docx-viewer/docx-loader.d.ts +11 -0
- package/dist/components/docx-viewer/docx-loader.d.ts.map +1 -0
- package/dist/components/docx-viewer/docx-loader.js +39 -0
- package/dist/components/docx-viewer/docx-loader.js.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.class.d.ts +42 -0
- package/dist/components/docx-viewer/docx-viewer.class.d.ts.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.class.js +131 -0
- package/dist/components/docx-viewer/docx-viewer.class.js.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.d.ts +3 -0
- package/dist/components/docx-viewer/docx-viewer.d.ts.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.js +12 -0
- package/dist/components/docx-viewer/docx-viewer.js.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.styles.d.ts +2 -0
- package/dist/components/docx-viewer/docx-viewer.styles.d.ts.map +1 -0
- package/dist/components/docx-viewer/docx-viewer.styles.js +99 -0
- package/dist/components/docx-viewer/docx-viewer.styles.js.map +1 -0
- package/dist/components/docx-viewer/fixtures/minimal-docx-fixture.d.ts +2 -0
- package/dist/components/docx-viewer/fixtures/minimal-docx-fixture.d.ts.map +1 -0
- package/dist/components/docx-viewer/fixtures/minimal-docx-fixture.js +3 -0
- package/dist/components/docx-viewer/fixtures/minimal-docx-fixture.js.map +1 -0
- package/dist/components/ebook-viewer/ebook-loader.d.ts +9 -0
- package/dist/components/ebook-viewer/ebook-loader.d.ts.map +1 -0
- package/dist/components/ebook-viewer/ebook-loader.js +21 -0
- package/dist/components/ebook-viewer/ebook-loader.js.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer-register.d.ts +2 -0
- package/dist/components/ebook-viewer/ebook-viewer-register.d.ts.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer-register.js +9 -0
- package/dist/components/ebook-viewer/ebook-viewer-register.js.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.class.d.ts +51 -0
- package/dist/components/ebook-viewer/ebook-viewer.class.d.ts.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.class.js +164 -0
- package/dist/components/ebook-viewer/ebook-viewer.class.js.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.d.ts +2 -0
- package/dist/components/ebook-viewer/ebook-viewer.d.ts.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.js +5 -0
- package/dist/components/ebook-viewer/ebook-viewer.js.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.styles.d.ts +2 -0
- package/dist/components/ebook-viewer/ebook-viewer.styles.d.ts.map +1 -0
- package/dist/components/ebook-viewer/ebook-viewer.styles.js +73 -0
- package/dist/components/ebook-viewer/ebook-viewer.styles.js.map +1 -0
- package/dist/components/ebook-viewer/fixtures/minimal-epub-fixture.d.ts +2 -0
- package/dist/components/ebook-viewer/fixtures/minimal-epub-fixture.d.ts.map +1 -0
- package/dist/components/ebook-viewer/fixtures/minimal-epub-fixture.js +2 -0
- package/dist/components/ebook-viewer/fixtures/minimal-epub-fixture.js.map +1 -0
- package/dist/components/email-viewer/email-loader.d.ts +10 -0
- package/dist/components/email-viewer/email-loader.d.ts.map +1 -0
- package/dist/components/email-viewer/email-loader.js +38 -0
- package/dist/components/email-viewer/email-loader.js.map +1 -0
- package/dist/components/email-viewer/email-viewer.class.d.ts +72 -0
- package/dist/components/email-viewer/email-viewer.class.d.ts.map +1 -0
- package/dist/components/email-viewer/email-viewer.class.js +154 -0
- package/dist/components/email-viewer/email-viewer.class.js.map +1 -0
- package/dist/components/email-viewer/email-viewer.d.ts +3 -0
- package/dist/components/email-viewer/email-viewer.d.ts.map +1 -0
- package/dist/components/email-viewer/email-viewer.js +12 -0
- package/dist/components/email-viewer/email-viewer.js.map +1 -0
- package/dist/components/email-viewer/email-viewer.styles.d.ts +2 -0
- package/dist/components/email-viewer/email-viewer.styles.d.ts.map +1 -0
- package/dist/components/email-viewer/email-viewer.styles.js +35 -0
- package/dist/components/email-viewer/email-viewer.styles.js.map +1 -0
- package/dist/components/file-icon/file-icon.class.d.ts +31 -0
- package/dist/components/file-icon/file-icon.class.d.ts.map +1 -0
- package/dist/components/file-icon/file-icon.class.js +74 -0
- package/dist/components/file-icon/file-icon.class.js.map +1 -0
- package/dist/components/file-icon/file-icon.d.ts +3 -0
- package/dist/components/file-icon/file-icon.d.ts.map +1 -0
- package/dist/components/file-icon/file-icon.js +6 -0
- package/dist/components/file-icon/file-icon.js.map +1 -0
- package/dist/components/file-icon/file-icon.styles.d.ts +2 -0
- package/dist/components/file-icon/file-icon.styles.d.ts.map +1 -0
- package/dist/components/file-icon/file-icon.styles.js +23 -0
- package/dist/components/file-icon/file-icon.styles.js.map +1 -0
- package/dist/components/file-icon/file-type-metadata.d.ts +14 -0
- package/dist/components/file-icon/file-type-metadata.d.ts.map +1 -0
- package/dist/components/file-icon/file-type-metadata.js +81 -0
- package/dist/components/file-icon/file-type-metadata.js.map +1 -0
- package/dist/components/html-viewer/dompurify-loader.d.ts +7 -0
- package/dist/components/html-viewer/dompurify-loader.d.ts.map +1 -0
- package/dist/components/html-viewer/dompurify-loader.js +19 -0
- package/dist/components/html-viewer/dompurify-loader.js.map +1 -0
- package/dist/components/html-viewer/html-viewer.class.d.ts +29 -0
- package/dist/components/html-viewer/html-viewer.class.d.ts.map +1 -0
- package/dist/components/html-viewer/html-viewer.class.js +88 -0
- package/dist/components/html-viewer/html-viewer.class.js.map +1 -0
- package/dist/components/html-viewer/html-viewer.d.ts +2 -0
- package/dist/components/html-viewer/html-viewer.d.ts.map +1 -0
- package/dist/components/html-viewer/html-viewer.js +15 -0
- package/dist/components/html-viewer/html-viewer.js.map +1 -0
- package/dist/components/html-viewer/html-viewer.styles.d.ts +2 -0
- package/dist/components/html-viewer/html-viewer.styles.d.ts.map +1 -0
- package/dist/components/html-viewer/html-viewer.styles.js +26 -0
- package/dist/components/html-viewer/html-viewer.styles.js.map +1 -0
- package/dist/components/pdf-viewer/pdf-loader.d.ts +6 -0
- package/dist/components/pdf-viewer/pdf-loader.d.ts.map +1 -0
- package/dist/components/pdf-viewer/pdf-loader.js +22 -0
- package/dist/components/pdf-viewer/pdf-loader.js.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.class.d.ts +80 -0
- package/dist/components/pdf-viewer/pdf-viewer.class.d.ts.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.class.js +296 -0
- package/dist/components/pdf-viewer/pdf-viewer.class.js.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.d.ts +2 -0
- package/dist/components/pdf-viewer/pdf-viewer.d.ts.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.js +13 -0
- package/dist/components/pdf-viewer/pdf-viewer.js.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.styles.d.ts +2 -0
- package/dist/components/pdf-viewer/pdf-viewer.styles.d.ts.map +1 -0
- package/dist/components/pdf-viewer/pdf-viewer.styles.js +19 -0
- package/dist/components/pdf-viewer/pdf-viewer.styles.js.map +1 -0
- package/dist/components/pptx-viewer/pptx-loader.d.ts +5 -0
- package/dist/components/pptx-viewer/pptx-loader.d.ts.map +1 -0
- package/dist/components/pptx-viewer/pptx-loader.js +20 -0
- package/dist/components/pptx-viewer/pptx-loader.js.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.class.d.ts +68 -0
- package/dist/components/pptx-viewer/pptx-viewer.class.d.ts.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.class.js +205 -0
- package/dist/components/pptx-viewer/pptx-viewer.class.js.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.d.ts +2 -0
- package/dist/components/pptx-viewer/pptx-viewer.d.ts.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.js +11 -0
- package/dist/components/pptx-viewer/pptx-viewer.js.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.styles.d.ts +2 -0
- package/dist/components/pptx-viewer/pptx-viewer.styles.d.ts.map +1 -0
- package/dist/components/pptx-viewer/pptx-viewer.styles.js +66 -0
- package/dist/components/pptx-viewer/pptx-viewer.styles.js.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-loader.d.ts +8 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-loader.d.ts.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-loader.js +19 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-loader.js.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.class.d.ts +32 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.class.d.ts.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.class.js +99 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.class.js.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.d.ts +3 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.d.ts.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.js +12 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.js.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.d.ts +2 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.d.ts.map +1 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.js +14 -0
- package/dist/components/spreadsheet-viewer/spreadsheet-viewer.styles.js.map +1 -0
- package/dist/components/svg-viewer/dompurify-loader.d.ts +7 -0
- package/dist/components/svg-viewer/dompurify-loader.d.ts.map +1 -0
- package/dist/components/svg-viewer/dompurify-loader.js +19 -0
- package/dist/components/svg-viewer/dompurify-loader.js.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.class.d.ts +29 -0
- package/dist/components/svg-viewer/svg-viewer.class.d.ts.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.class.js +95 -0
- package/dist/components/svg-viewer/svg-viewer.class.js.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.d.ts +2 -0
- package/dist/components/svg-viewer/svg-viewer.d.ts.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.js +15 -0
- package/dist/components/svg-viewer/svg-viewer.js.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.styles.d.ts +2 -0
- package/dist/components/svg-viewer/svg-viewer.styles.d.ts.map +1 -0
- package/dist/components/svg-viewer/svg-viewer.styles.js +50 -0
- package/dist/components/svg-viewer/svg-viewer.styles.js.map +1 -0
- package/dist/internal/localization.d.ts +1 -1
- package/dist/internal/localization.d.ts.map +1 -1
- package/dist/internal/localization.js +65 -0
- package/dist/internal/localization.js.map +1 -1
- package/dist/internal/root-registration-allowlist.d.ts +1 -1
- package/dist/internal/root-registration-allowlist.d.ts.map +1 -1
- package/dist/internal/root-registration-allowlist.js +15 -0
- package/dist/internal/root-registration-allowlist.js.map +1 -1
- package/dist/lyra.d.ts +44 -1
- package/dist/lyra.d.ts.map +1 -1
- package/dist/lyra.js +32 -0
- package/dist/lyra.js.map +1 -1
- package/llms-full.txt +331 -8
- package/llms.txt +2 -1
- package/package.json +83 -3
package/llms-full.txt
CHANGED
|
@@ -34,6 +34,7 @@ composition without registration; for example, `components/empty/empty.class.js`
|
|
|
34
34
|
`lyra-thinking-panel`, `lyra-generation-status`, `lyra-code-block`, `lyra-tool-approval-dialog`,
|
|
35
35
|
`lyra-tool-param-form`, `lyra-menu`/`lyra-menu-item`, `lyra-chip`/`lyra-chip-group`,
|
|
36
36
|
`lyra-model-settings-panel`, `lyra-context-meter`, `lyra-dock-panel`, `lyra-document-preview`,
|
|
37
|
+
`lyra-document-viewer`, `lyra-docx-viewer`, `lyra-email-viewer`, `lyra-calendar-viewer`, `lyra-archive-viewer`,
|
|
37
38
|
`lyra-media-card`, `lyra-attachment-trigger`, `lyra-kbd`, `lyra-result-card`/`lyra-result-field`,
|
|
38
39
|
`lyra-avatar`, `lyra-card`, `lyra-stepper`, `lyra-segmented`, `lyra-diff-view`, `lyra-poll-status`,
|
|
39
40
|
`lyra-code-block-core` (needs the optional peer `shiki`)
|
|
@@ -4874,7 +4875,8 @@ to populate it: set `file` to a real `File` (fresh from a picker/drop), from whi
|
|
|
4874
4875
|
`mime-type` and the image thumbnail are all auto-derived; or set the plain `name`/`size`/
|
|
4875
4876
|
`mime-type`/`thumbnail-src` props instead, for reconstructing a chip from server-persisted
|
|
4876
4877
|
attachment metadata after a page reload, when no real `File` object exists any more. `file` always
|
|
4877
|
-
wins when both are present.
|
|
4878
|
+
wins when both are present. When a real `File` or `preview-src` is available, the chip also offers
|
|
4879
|
+
a localized preview action that opens `<lyra-document-viewer>` using the same effective MIME type.
|
|
4878
4880
|
|
|
4879
4881
|
**Properties:**
|
|
4880
4882
|
- `file?: File` (attribute `false`, i.e. property-only) — when set, `name`/`size`/`mimeType`/the
|
|
@@ -4885,6 +4887,10 @@ wins when both are present.
|
|
|
4885
4887
|
- `thumbnailSrc: string = ''` (attribute `thumbnail-src`) — thumbnail image URL, used only while
|
|
4886
4888
|
`file` is unset; rendered whenever present regardless of `mimeType` (no `file`-derived equivalent
|
|
4887
4889
|
exists for a non-image file)
|
|
4890
|
+
- `previewSrc: string = ''` (attribute `preview-src`) — source URL used for preview and download when
|
|
4891
|
+
`file` is unset; a real `File` takes precedence and uses a temporary blob URL
|
|
4892
|
+
- `previewable: boolean = true` (reflected) — shows the preview action whenever a `file` or
|
|
4893
|
+
`preview-src` is available
|
|
4888
4894
|
- `status: AttachmentChipStatus = 'pending'` (reflected) — `'pending' | 'uploading' | 'error' |
|
|
4889
4895
|
'done'`; drives the accent tint and which of `progress`/`spinner`/`retry-button` renders
|
|
4890
4896
|
- `progress: number = 0` — upload completion, 0-100; only meaningful while `status="uploading"`, a
|
|
@@ -4916,12 +4922,13 @@ derived from `` `${file.name}:${file.size}:${file.lastModified}` ``; when neithe
|
|
|
4916
4922
|
generated internal id is used as a last resort.
|
|
4917
4923
|
|
|
4918
4924
|
**Events:** `lyra-remove` (`detail: { id }`, only rendered while `removable`), `lyra-retry`
|
|
4919
|
-
(`detail: { id }`, only rendered while `status="error"`)
|
|
4925
|
+
(`detail: { id }`, only rendered while `status="error"`), `lyra-preview` (`detail: { id, name,
|
|
4926
|
+
mimeType, src }`, emitted when the preview action opens the document viewer)
|
|
4920
4927
|
|
|
4921
4928
|
**Slots:** none.
|
|
4922
4929
|
|
|
4923
4930
|
**CSS parts:** `base`, `thumbnail`, `meta`, `name`, `size`, `status-text`, `progress`,
|
|
4924
|
-
`progress-fill`, `spinner`, `retry-button`, `remove-button`
|
|
4931
|
+
`progress-fill`, `spinner`, `retry-button`, `preview-button`, `remove-button`
|
|
4925
4932
|
|
|
4926
4933
|
**Themeable custom properties:** `--lyra-attachment-chip-accent` (default
|
|
4927
4934
|
`var(--lyra-color-text-quiet)`), `--lyra-attachment-chip-bg` (default `var(--lyra-color-surface)`),
|
|
@@ -4953,6 +4960,7 @@ size renders nothing instead of `"NaN B"`.
|
|
|
4953
4960
|
chip.file = pickedFile; // name/size/mime-type/thumbnail all derived from the File
|
|
4954
4961
|
chip.addEventListener('lyra-remove', (e) => removeAttachment(e.detail.id));
|
|
4955
4962
|
chip.addEventListener('lyra-retry', (e) => retryUpload(e.detail.id));
|
|
4963
|
+
chip.addEventListener('lyra-preview', (e) => console.log(e.detail));
|
|
4956
4964
|
console.log(formatFileSize(pickedFile.size));
|
|
4957
4965
|
</script>
|
|
4958
4966
|
```
|
|
@@ -4973,6 +4981,9 @@ leaks URLs that were created but never shown.
|
|
|
4973
4981
|
(`uploading` with no known progress).
|
|
4974
4982
|
- `thumbnailSrc` is used whenever present regardless of `mimeType` — pass a URL that's already known
|
|
4975
4983
|
to be an image; there's no non-image fallback check for it the way there is for `file`.
|
|
4984
|
+
- `previewSrc` is used only when `file` is unset. A preview action is omitted when neither a real
|
|
4985
|
+
`File` nor `preview-src` supplies a source. The viewer's footer omits its download link for unsafe
|
|
4986
|
+
source schemes.
|
|
4976
4987
|
|
|
4977
4988
|
---
|
|
4978
4989
|
|
|
@@ -6597,9 +6608,10 @@ something that announces state *transitions* instead. The Stop button gets a nor
|
|
|
6597
6608
|
## `lyra-code-block`
|
|
6598
6609
|
|
|
6599
6610
|
Fenced code display with optional lazy syntax highlighting and a copy button. First-party invention
|
|
6600
|
-
(no Web Awesome equivalent).
|
|
6601
|
-
|
|
6602
|
-
to a plain `<pre><code>` when that peer isn't installed or
|
|
6611
|
+
(no Web Awesome equivalent). It lazy-loads the optional peer dependency `shiki` (see
|
|
6612
|
+
`code-loader.ts`) for the actual tokenizing, and includes a compact GreyCat/GCL grammar because
|
|
6613
|
+
Shiki does not bundle one. It falls back to a plain `<pre><code>` when that peer isn't installed or
|
|
6614
|
+
`language` is unset/unrecognized. That
|
|
6603
6615
|
fallback is the *default* rendering path, not a degraded one: unhighlighted code is perfectly usable,
|
|
6604
6616
|
and it's what every instance renders at zero extra bytes until shiki resolves.
|
|
6605
6617
|
|
|
@@ -6607,7 +6619,10 @@ and it's what every instance renders at zero extra bytes until shiki resolves.
|
|
|
6607
6619
|
- `code: string = ''` — the raw source text
|
|
6608
6620
|
- `language: string = ''` — a shiki-recognized language id or alias (e.g. `"javascript"`, `"python"`,
|
|
6609
6621
|
`"json"`); when unset, or when shiki doesn't recognize it, the code renders as plain unhighlighted
|
|
6610
|
-
text regardless of whether shiki itself is available
|
|
6622
|
+
text regardless of whether shiki itself is available. Shiki's bundled catalog covers most common
|
|
6623
|
+
programming, markup, data, and configuration languages, including Python, C, C++, C#, Java,
|
|
6624
|
+
JavaScript, TypeScript, HTML, CSS, JSON, SQL, Go, Rust, YAML, Markdown, and shell scripts. Lyra
|
|
6625
|
+
also includes a built-in GreyCat grammar; use `"gcl"` or `"greycat"` for GreyCat source.
|
|
6611
6626
|
- `filename: string = ''` — shown in the header, when set
|
|
6612
6627
|
- `accessibleLabel: string = ''` (attribute `aria-label`) — names the internal focusable code-body
|
|
6613
6628
|
region; otherwise a localized filename/language description is generated
|
|
@@ -6619,6 +6634,8 @@ and it's what every instance renders at zero extra bytes until shiki resolves.
|
|
|
6619
6634
|
cannot override a true default)
|
|
6620
6635
|
- `maxHeight: string = ''` (attribute `max-height`) — a CSS length (e.g. `"20rem"`); once set, the
|
|
6621
6636
|
code scrolls internally past this height instead of growing the page
|
|
6637
|
+
- `lineNumbers: boolean = false` (attribute `line-numbers`, reflected) — displays one-based line
|
|
6638
|
+
numbers for both highlighted output and the plain-text fallback
|
|
6622
6639
|
- `languages?: Record<string, ShikiLanguageInput>` (attribute: false) — a map of language id to an
|
|
6623
6640
|
already-imported shiki grammar module (e.g. `{ bash: bashGrammar }` from a module-scope
|
|
6624
6641
|
`import bash from 'shiki/langs/bash.mjs'`). When `language` matches a key here, highlighting is
|
|
@@ -6668,6 +6685,9 @@ highlighting).
|
|
|
6668
6685
|
></lyra-code-block>
|
|
6669
6686
|
```
|
|
6670
6687
|
|
|
6688
|
+
Set `line-numbers` when source context benefits from numbered lines. The option does not change the
|
|
6689
|
+
raw `code` value or the `lyra-copy` event payload.
|
|
6690
|
+
|
|
6671
6691
|
A `<lyra-skeleton variant="rect">` placeholder (with `aria-busy="true"` on the host) stands in only
|
|
6672
6692
|
while shiki itself is loading for the very first time on the page and `language` is set — it is
|
|
6673
6693
|
deliberately *not* shown again for a later per-language grammar fetch (that's typically fast, and the
|
|
@@ -6731,6 +6751,8 @@ toggle, the loading-skeleton behavior while the fine-grained highlighter resolve
|
|
|
6731
6751
|
- `copyable: boolean = true` (reflected) — shows the copy-to-clipboard button.
|
|
6732
6752
|
- `maxHeight: string = ''` (attribute `max-height`) — a CSS length (e.g. `"20rem"`); once set, the
|
|
6733
6753
|
code scrolls internally past this height instead of growing the page.
|
|
6754
|
+
- `lineNumbers: boolean = false` (attribute `line-numbers`, reflected) — displays one-based line
|
|
6755
|
+
numbers for highlighted and plain output.
|
|
6734
6756
|
- `languages: Record<string, ShikiLanguageInput> = {}` (attribute: false) — grammar definitions this
|
|
6735
6757
|
instance can highlight, e.g. `{ json: jsonGrammar }` (import from `shiki/langs/<name>.mjs`). Empty
|
|
6736
6758
|
(the default) never highlights at all — every `language` renders the plain-text fallback.
|
|
@@ -7780,6 +7802,307 @@ available, the region becomes a standard `role="progressbar"` instead, self-desc
|
|
|
7780
7802
|
|
|
7781
7803
|
---
|
|
7782
7804
|
|
|
7805
|
+
## `lyra-document-viewer`
|
|
7806
|
+
|
|
7807
|
+
A dialog-hosted, format-dispatching full viewer for one document or attachment. It uses a pluggable
|
|
7808
|
+
renderer registry and falls back to `<lyra-document-preview>` when no renderer matches the file's MIME
|
|
7809
|
+
type. First-party invention.
|
|
7810
|
+
|
|
7811
|
+
**Properties:**
|
|
7812
|
+
- `open: boolean = false` (reflected) — opens or closes the viewer dialog.
|
|
7813
|
+
- `name: string = ''` — display name passed to the renderer and used as the dialog heading.
|
|
7814
|
+
- `mimeType: string = ''` (attribute `mime-type`) — MIME type used for exact renderer dispatch.
|
|
7815
|
+
- `src: string = ''` — source URL passed to the selected renderer or the fallback preview.
|
|
7816
|
+
- `registry?: DocumentRendererRegistry` (attribute: false) — optional per-instance registry override;
|
|
7817
|
+
the module-level registry is used when unset.
|
|
7818
|
+
|
|
7819
|
+
**Events:**
|
|
7820
|
+
- `lyra-close` — `detail: DocumentViewerCloseReason`, the nested dialog's dismissal reason. The
|
|
7821
|
+
event is emitted after the viewer sets `open` to `false`.
|
|
7822
|
+
- `lyra-download` — `detail: { src, filename }`, emitted when the native safe download action is
|
|
7823
|
+
activated. The browser download itself is handled by the link.
|
|
7824
|
+
|
|
7825
|
+
**CSS parts:** `body` — wrapper around the active renderer, loading/error state, or fallback preview;
|
|
7826
|
+
`download-link` — the native download action, rendered when `src` passes Lyra's safe-link policy.
|
|
7827
|
+
|
|
7828
|
+
**Renderer registry exports:**
|
|
7829
|
+
- `DocumentFile` — `{ name: string; mimeType: string; src: string }`, the value passed to renderers.
|
|
7830
|
+
- `DocumentRendererDefinition` — optional `render(file)`, `matches(file)`, and lazy `load()` hooks.
|
|
7831
|
+
- `DocumentRendererRegistry` — `Map<string, DocumentRendererDefinition>`.
|
|
7832
|
+
- `registerDocumentRenderer(key, definition)` — adds or replaces a default-registry entry.
|
|
7833
|
+
- `findDocumentRenderer(file, registry?)` — checks an exact MIME-type key, then the first matching
|
|
7834
|
+
`matches()` entry in registration order.
|
|
7835
|
+
- `loadDocumentRenderer(definition)` — resolves and identity-caches a lazy definition; rejected loads
|
|
7836
|
+
are retried on the next call.
|
|
7837
|
+
|
|
7838
|
+
```html
|
|
7839
|
+
<lyra-document-viewer
|
|
7840
|
+
open
|
|
7841
|
+
name="report.pdf"
|
|
7842
|
+
mime-type="application/pdf"
|
|
7843
|
+
src="/files/report.pdf"
|
|
7844
|
+
></lyra-document-viewer>
|
|
7845
|
+
```
|
|
7846
|
+
|
|
7847
|
+
Register a renderer once during application setup. The definition may load a heavy optional viewer
|
|
7848
|
+
only when a matching document is opened:
|
|
7849
|
+
|
|
7850
|
+
```ts
|
|
7851
|
+
import { registerDocumentRenderer } from '@aceshooting/lyra-ui';
|
|
7852
|
+
|
|
7853
|
+
registerDocumentRenderer('application/x-example', {
|
|
7854
|
+
render: (file) => `Preview: ${file.name}`,
|
|
7855
|
+
});
|
|
7856
|
+
```
|
|
7857
|
+
|
|
7858
|
+
When no renderer matches, the viewer renders `<lyra-document-preview>`, which handles text and images
|
|
7859
|
+
inline and provides a safe generic fallback for other formats.
|
|
7860
|
+
|
|
7861
|
+
## `lyra-docx-viewer`
|
|
7862
|
+
|
|
7863
|
+
Fetches a `.docx` Word document as an `ArrayBuffer`, converts it to semantic HTML with the optional
|
|
7864
|
+
`mammoth` peer, sanitizes that HTML through the optional `dompurify` peer, and renders the result.
|
|
7865
|
+
Mammoth preserves document structure such as headings, paragraphs, lists, tables, and images; it is
|
|
7866
|
+
not intended to reproduce pixel-exact Word page layout. There is no unsanitized rendering escape
|
|
7867
|
+
hatch: if `dompurify` is unavailable, rendering is blocked even when Mammoth converted successfully.
|
|
7868
|
+
|
|
7869
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings. `maxHeight` caps
|
|
7870
|
+
the scrollable document body.
|
|
7871
|
+
|
|
7872
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching, conversion, sanitization, or a
|
|
7873
|
+
non-fatal Mammoth conversion message occurs.
|
|
7874
|
+
|
|
7875
|
+
**CSS parts:** `base`, `body`, `content`, `spinner`, and `error`.
|
|
7876
|
+
|
|
7877
|
+
**Optional peer dependencies:** install `mammoth` and `dompurify` with `pnpm add mammoth dompurify`.
|
|
7878
|
+
The component registers a lazy `application/vnd.openxmlformats-officedocument.wordprocessingml.document`
|
|
7879
|
+
renderer with `<lyra-document-viewer>` and matches `.docx` filenames when the MIME type is generic.
|
|
7880
|
+
|
|
7881
|
+
```html
|
|
7882
|
+
<lyra-docx-viewer src="/files/report.docx" name="report.docx" max-height="32rem"></lyra-docx-viewer>
|
|
7883
|
+
```
|
|
7884
|
+
|
|
7885
|
+
## `lyra-email-viewer`
|
|
7886
|
+
|
|
7887
|
+
Fetches and parses `.eml` messages with the optional `postal-mime` peer. HTML message bodies are
|
|
7888
|
+
sanitized through the existing optional `dompurify` peer before rendering; plain-text messages
|
|
7889
|
+
remain available without DOMPurify. Attachments are listed as filename/type/size metadata and their
|
|
7890
|
+
content is never rendered by this component.
|
|
7891
|
+
|
|
7892
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings.
|
|
7893
|
+
|
|
7894
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
7895
|
+
|
|
7896
|
+
**CSS parts:** `base`, `headers`, `from-label`, `from`, `to-label`, `to`, `subject-label`, `subject`,
|
|
7897
|
+
`date-label`, `date`, `body`, `body-html`, `body-text`, `attachments`, `attachments-label`,
|
|
7898
|
+
`attachment-list`, `attachment-item`, `spinner`, and `error`.
|
|
7899
|
+
|
|
7900
|
+
**Optional peer dependencies:** install `postal-mime` and `dompurify` with
|
|
7901
|
+
`pnpm add postal-mime dompurify`. The component registers `message/rfc822` and falls back to
|
|
7902
|
+
matching `.eml` filenames in `<lyra-document-viewer>`.
|
|
7903
|
+
|
|
7904
|
+
## `lyra-calendar-viewer`
|
|
7905
|
+
|
|
7906
|
+
Fetches and parses `.ics` calendars with the optional `ical.js` peer and renders each VEVENT as
|
|
7907
|
+
plain text, including its title, start/end time, location, and description. No HTML is injected.
|
|
7908
|
+
|
|
7909
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings.
|
|
7910
|
+
|
|
7911
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
7912
|
+
|
|
7913
|
+
**CSS parts:** `base`, `body`, `event-list`, `event`, `event-summary`, `event-time`, `event-location`,
|
|
7914
|
+
`event-description`, `spinner`, and `error`.
|
|
7915
|
+
|
|
7916
|
+
**Optional peer dependency:** install `ical.js` with `pnpm add ical.js`. The component registers
|
|
7917
|
+
`text/calendar` and falls back to matching `.ics` filenames in `<lyra-document-viewer>`.
|
|
7918
|
+
|
|
7919
|
+
## `lyra-archive-viewer`
|
|
7920
|
+
|
|
7921
|
+
Lists entry names and human-readable uncompressed sizes inside a `.zip` archive using the optional
|
|
7922
|
+
`jszip` peer. It is listing-only: entry content is never rendered or previewed. Files are measured
|
|
7923
|
+
through JSZip's public async API, so every file is decompressed once up front to obtain its size;
|
|
7924
|
+
there is no cheaper public uncompressed-size API. The list composes `<lyra-virtual-list>` for large
|
|
7925
|
+
archives.
|
|
7926
|
+
|
|
7927
|
+
**Properties:** `src` and `name` are strings.
|
|
7928
|
+
|
|
7929
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
7930
|
+
|
|
7931
|
+
**CSS parts:** `base`, `entry`, `entry-icon`, `entry-name`, `entry-size`, `spinner`, and `error`.
|
|
7932
|
+
|
|
7933
|
+
**Exports:** `ArchiveEntry` — `{ name: string; dir: boolean; size: number }`.
|
|
7934
|
+
|
|
7935
|
+
**Optional peer dependency:** install `jszip` with `pnpm add jszip`. The lazy registry registers
|
|
7936
|
+
`application/zip` and `application/x-zip-compressed`, with a `.zip` filename fallback, and imports
|
|
7937
|
+
the viewer only when a matching archive is opened. `.tar`, `.rar`, and other archive formats fall
|
|
7938
|
+
through to `<lyra-document-preview>`'s generic download fallback.
|
|
7939
|
+
|
|
7940
|
+
## `lyra-ebook-viewer`
|
|
7941
|
+
|
|
7942
|
+
Renders EPUB ebooks through the optional `epubjs` peer. `src` is fetched as an `ArrayBuffer`, and
|
|
7943
|
+
epub.js renders the reading area into its stable `mount` element, using an internal iframe for
|
|
7944
|
+
chapter content.
|
|
7945
|
+
|
|
7946
|
+
**Properties:** `src` and `name` are strings. `accessibleLabel` (attribute `aria-label`) overrides
|
|
7947
|
+
the reading region's accessible name.
|
|
7948
|
+
|
|
7949
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching, opening, or rendering fails.
|
|
7950
|
+
|
|
7951
|
+
**CSS parts:** `base`, `toolbar`, `previous-button`, `next-button`, `previous-icon`, `next-icon`,
|
|
7952
|
+
`mount`, and `error`.
|
|
7953
|
+
|
|
7954
|
+
**Optional peer dependency:** install `epubjs` with `pnpm add epubjs`. The document-viewer registry
|
|
7955
|
+
matches `application/epub+zip` and `.epub` filenames.
|
|
7956
|
+
|
|
7957
|
+
## `lyra-pptx-viewer`
|
|
7958
|
+
|
|
7959
|
+
Best-effort client-side PPTX viewer backed by the optional `@aiden0z/pptx-renderer` peer. A
|
|
7960
|
+
localized fidelity notice is always visible because animations, equations, embedded objects,
|
|
7961
|
+
speaker notes, and several advanced effects are not rendered.
|
|
7962
|
+
|
|
7963
|
+
**Properties:** `src`, `name`, and `label` are strings. A host `aria-label` also names the viewer
|
|
7964
|
+
region when `label` is unset.
|
|
7965
|
+
|
|
7966
|
+
**Methods:** `goToSlide(index)` returns a promise and navigates the mounted presentation.
|
|
7967
|
+
|
|
7968
|
+
**Events:** `lyra-load` (`detail: { slideCount }`), `lyra-slide-change` (`detail: { index, count }`),
|
|
7969
|
+
and `lyra-render-error` with `detail.error`.
|
|
7970
|
+
|
|
7971
|
+
**CSS parts:** `base`, `header`, `name`, `notice`, `error`, `nav`, `previous-button`,
|
|
7972
|
+
`previous-icon`, `slide-count`, `next-button`, `next-icon`, and `container`.
|
|
7973
|
+
|
|
7974
|
+
**Optional peer dependency:** install `@aiden0z/pptx-renderer` with
|
|
7975
|
+
`pnpm add @aiden0z/pptx-renderer`. The registry matches the official PPTX MIME type and `.pptx`
|
|
7976
|
+
filenames.
|
|
7977
|
+
|
|
7978
|
+
## `lyra-file-icon`
|
|
7979
|
+
|
|
7980
|
+
Localized, tokenized file-format badge for surrounding upload rows, cards, selectors, and viewer
|
|
7981
|
+
headers. The companion `getFileTypeMetadata(mimeType, fileName?)` utility covers common document,
|
|
7982
|
+
spreadsheet, presentation, code, archive, image, audio, and video formats. An explicit known MIME
|
|
7983
|
+
type wins; filename extension fallback is used only for an empty or `application/octet-stream`
|
|
7984
|
+
MIME type. Unknown values return a generic file result.
|
|
7985
|
+
|
|
7986
|
+
**Properties:** `mimeType` (attribute `mime-type`), `name`, `label`, `decorative`, and
|
|
7987
|
+
`variant: 'icon' | 'label'`.
|
|
7988
|
+
|
|
7989
|
+
**CSS parts:** `base`, `icon`, and `label`.
|
|
7990
|
+
|
|
7991
|
+
**Exports:** `LyraFileTypeMetadata`, `LyraFileTypeIcon`, `LyraFileTypeCategory`,
|
|
7992
|
+
`getFileTypeMetadata()`, and `registerFileTypeMetadata()` for application-specific mappings.
|
|
7993
|
+
|
|
7994
|
+
```html
|
|
7995
|
+
<lyra-file-icon mime-type="application/pdf" variant="label"></lyra-file-icon>
|
|
7996
|
+
```
|
|
7997
|
+
|
|
7998
|
+
## `lyra-svg-viewer`
|
|
7999
|
+
|
|
8000
|
+
Fetches an SVG document, sanitizes it with the optional `dompurify` peer, and renders it inline.
|
|
8001
|
+
|
|
8002
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings. `maxHeight` caps
|
|
8003
|
+
the scrollable body.
|
|
8004
|
+
|
|
8005
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or sanitizing fails.
|
|
8006
|
+
|
|
8007
|
+
**CSS parts:** `base`, `body`, `svg`, `spinner`, and `error`.
|
|
8008
|
+
|
|
8009
|
+
**Optional peer dependency:** `dompurify`.
|
|
8010
|
+
|
|
8011
|
+
## `lyra-html-viewer`
|
|
8012
|
+
|
|
8013
|
+
Fetches an HTML document, sanitizes it with the optional `dompurify` peer, and renders the safe markup
|
|
8014
|
+
inside a bounded, scrollable body.
|
|
8015
|
+
|
|
8016
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings.
|
|
8017
|
+
|
|
8018
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or sanitizing fails.
|
|
8019
|
+
|
|
8020
|
+
**CSS parts:** `base`, `body`, `html`, `spinner`, and `error`.
|
|
8021
|
+
|
|
8022
|
+
**Optional peer dependency:** `dompurify`.
|
|
8023
|
+
|
|
8024
|
+
## `lyra-dataset-viewer`
|
|
8025
|
+
|
|
8026
|
+
Fetches tab-, pipe-, or delimiter-separated text and renders an accessible table using the optional
|
|
8027
|
+
`papaparse` peer. The document registry matches `.tsv`, `.psv`, and `.dat` filenames.
|
|
8028
|
+
|
|
8029
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings.
|
|
8030
|
+
|
|
8031
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
8032
|
+
|
|
8033
|
+
**CSS parts:** `base`, `body`, `table`, `spinner`, and `error`.
|
|
8034
|
+
|
|
8035
|
+
**Exports:** `DatasetTable` is `{ fields: string[]; rows: Record<string, string>[] }`.
|
|
8036
|
+
|
|
8037
|
+
**Optional peer dependency:** `papaparse`.
|
|
8038
|
+
|
|
8039
|
+
## `lyra-contact-viewer`
|
|
8040
|
+
|
|
8041
|
+
Fetches a vCard document and renders one accessible card per contact. The document registry matches
|
|
8042
|
+
`.vcf` filenames and common `FN`, `N`, `ORG`, `TEL`, `EMAIL`, and `ADR` fields are displayed.
|
|
8043
|
+
|
|
8044
|
+
**Properties:** `src`, `name`, and `maxHeight` (attribute `max-height`) are strings.
|
|
8045
|
+
|
|
8046
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
8047
|
+
|
|
8048
|
+
**CSS parts:** `base`, `body`, `contact`, `contact-name`, `contact-org`, `contact-tel`,
|
|
8049
|
+
`contact-email`, `contact-adr`, `spinner`, and `error`.
|
|
8050
|
+
|
|
8051
|
+
**Exports:** `parseVCards()` and the `VCardName`, `VCardTypedValue`, `VCardAddress`, and `VCardContact`
|
|
8052
|
+
types.
|
|
8053
|
+
|
|
8054
|
+
## `lyra-pdf-viewer`
|
|
8055
|
+
|
|
8056
|
+
Fetches a PDF and renders its pages with the optional `pdfjs-dist` peer. Pages are virtualized through
|
|
8057
|
+
`lyra-virtual-list`, and PDF.js's selectable text layer is positioned over each rendered canvas.
|
|
8058
|
+
|
|
8059
|
+
**Properties:** `src` and `name` are strings. `page: number = 1` is the one-based current page and
|
|
8060
|
+
`zoom: number = 1` is clamped to `0.25`–`4`.
|
|
8061
|
+
|
|
8062
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching, parsing, or rendering fails;
|
|
8063
|
+
`lyra-page-change` with `{ page, pageCount }`; and `lyra-zoom-change` with `{ zoom }`.
|
|
8064
|
+
|
|
8065
|
+
**Methods:** `nextPage()`, `previousPage()`, `zoomIn()`, and `zoomOut()` update the corresponding
|
|
8066
|
+
controlled state within its supported range.
|
|
8067
|
+
|
|
8068
|
+
**CSS parts:** `base`, `toolbar`, `page-indicator`, `zoom-indicator`, `pages`, `page`, `text-layer`,
|
|
8069
|
+
`spinner`, and `error`.
|
|
8070
|
+
|
|
8071
|
+
**Optional peer dependency:** install `pdfjs-dist` with `pnpm add pdfjs-dist`. The component registers
|
|
8072
|
+
a lazy `application/pdf` renderer with `<lyra-document-viewer>` so the PDF library is loaded only when
|
|
8073
|
+
a PDF is opened.
|
|
8074
|
+
|
|
8075
|
+
## `lyra-spreadsheet-viewer`
|
|
8076
|
+
|
|
8077
|
+
Fetches and renders `.xlsx` and `.xls` workbooks with the optional `xlsx` (SheetJS) peer. Multiple
|
|
8078
|
+
worksheets render through a `<lyra-tabs>` switcher, and body rows use `<lyra-virtual-list>`.
|
|
8079
|
+
|
|
8080
|
+
**Properties:** `src` and `name` are strings.
|
|
8081
|
+
|
|
8082
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing fails.
|
|
8083
|
+
|
|
8084
|
+
**CSS parts:** `base`, `tabs`, `sheet`, `header-row`, `data-row`, `cell`, `rows`, `spinner`, and
|
|
8085
|
+
`error`.
|
|
8086
|
+
|
|
8087
|
+
**Optional peer dependency:** install `xlsx` with `pnpm add xlsx`. The registry matches the official
|
|
8088
|
+
`.xlsx` and `.xls` MIME types and filename extensions.
|
|
8089
|
+
|
|
8090
|
+
## `lyra-csv-viewer`
|
|
8091
|
+
|
|
8092
|
+
Fetches CSV text, parses quoted fields with the optional `papaparse` peer, and virtualizes body rows.
|
|
8093
|
+
|
|
8094
|
+
**Properties:** `src` and `name` are strings. `hasHeaderRow: boolean = true` (attribute
|
|
8095
|
+
`has-header-row`) controls whether the first parsed row is rendered as a sticky header.
|
|
8096
|
+
|
|
8097
|
+
**Events:** `lyra-render-error` with `detail.error` when fetching or parsing reports an error.
|
|
8098
|
+
|
|
8099
|
+
**CSS parts:** `base`, `sheet`, `header-row`, `data-row`, `cell`, `rows`, `spinner`, and `error`.
|
|
8100
|
+
|
|
8101
|
+
**Optional peer dependency:** install `papaparse` with `pnpm add papaparse`. The registry matches
|
|
8102
|
+
`text/csv` and `.csv` filenames.
|
|
8103
|
+
|
|
8104
|
+
---
|
|
8105
|
+
|
|
7783
8106
|
## `lyra-media-card`
|
|
7784
8107
|
|
|
7785
8108
|
A lightweight inline preview for one already-sent, already-available attachment inside a rendered
|
|
@@ -8360,7 +8683,7 @@ These apply across the whole library rather than to any one component:
|
|
|
8360
8683
|
- **Independence and migration.** Lyra has no runtime, theme, or design-token dependency on
|
|
8361
8684
|
Shoelace or Web Awesome. The documented `wa-*` comparisons are migration references only; Lyra's
|
|
8362
8685
|
own `lyra-*` tokens, events, localization runtime, and implementation are the source of truth.
|
|
8363
|
-
For a staged Web Awesome migration, map existing
|
|
8686
|
+
For a staged Web Awesome migration, map existing external theme-input values to `--lyra-theme-*` explicitly
|
|
8364
8687
|
in application CSS instead of relying on an implicit compatibility layer.
|
|
8365
8688
|
|
|
8366
8689
|
- **Internationalization.** Built-in UI copy, accessible names, descriptions, validation messages,
|
package/llms.txt
CHANGED
|
@@ -74,7 +74,8 @@ The catalog is grouped by capability; `llms-full.txt` follows the same consumer-
|
|
|
74
74
|
`lyra-thinking-panel`, `lyra-generation-status`, `lyra-code-block` (needs the optional peer
|
|
75
75
|
`shiki`), `lyra-tool-approval-dialog`, `lyra-tool-param-form`, `lyra-menu`/`lyra-menu-item`,
|
|
76
76
|
`lyra-chip`/`lyra-chip-group`, `lyra-model-settings-panel`, `lyra-context-meter`,
|
|
77
|
-
`lyra-dock-panel`, `lyra-document-preview`, `lyra-
|
|
77
|
+
`lyra-dock-panel`, `lyra-document-preview`, `lyra-document-viewer`, `lyra-svg-viewer`, `lyra-html-viewer`,
|
|
78
|
+
`lyra-dataset-viewer`, `lyra-contact-viewer`, `lyra-pdf-viewer`, `lyra-spreadsheet-viewer`, `lyra-csv-viewer`, `lyra-docx-viewer`, `lyra-email-viewer`, `lyra-calendar-viewer`, `lyra-archive-viewer`, `lyra-ebook-viewer`, `lyra-pptx-viewer`, `lyra-file-icon`, `lyra-media-card`, `lyra-attachment-trigger`,
|
|
78
79
|
`lyra-kbd`, `lyra-result-card`/`lyra-result-field`, `lyra-avatar`, `lyra-card`, `lyra-stepper`,
|
|
79
80
|
`lyra-segmented`, `lyra-diff-view`, `lyra-poll-status`, `lyra-code-block-core` (needs the
|
|
80
81
|
optional peer `shiki`).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aceshooting/lyra-ui",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "Free, independent Lit web components: an open-source alternative to Shoelace and Web Awesome with accessible forms, dashboards, charts, and agent UI.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web-components",
|
|
@@ -64,6 +64,8 @@
|
|
|
64
64
|
"./dist/components/attachment-chip/attachment-chip.js",
|
|
65
65
|
"./dist/components/attachment-trigger/attachment-trigger.js",
|
|
66
66
|
"./dist/components/avatar/avatar.js",
|
|
67
|
+
"./dist/components/archive-viewer/archive-viewer.js",
|
|
68
|
+
"./dist/components/archive-viewer/archive-viewer-register.js",
|
|
67
69
|
"./dist/components/button/button.js",
|
|
68
70
|
"./dist/components/button-group/button-group.js",
|
|
69
71
|
"./dist/components/card/card.js",
|
|
@@ -101,6 +103,21 @@
|
|
|
101
103
|
"./dist/components/diff-view/diff-view.js",
|
|
102
104
|
"./dist/components/dock-panel/dock-panel.js",
|
|
103
105
|
"./dist/components/document-preview/document-preview.js",
|
|
106
|
+
"./dist/components/document-viewer/document-viewer.js",
|
|
107
|
+
"./dist/components/ebook-viewer/ebook-viewer.js",
|
|
108
|
+
"./dist/components/ebook-viewer/ebook-viewer-register.js",
|
|
109
|
+
"./dist/components/pptx-viewer/pptx-viewer.js",
|
|
110
|
+
"./dist/components/file-icon/file-icon.js",
|
|
111
|
+
"./dist/components/contact-viewer/contact-viewer.js",
|
|
112
|
+
"./dist/components/dataset-viewer/dataset-viewer.js",
|
|
113
|
+
"./dist/components/html-viewer/html-viewer.js",
|
|
114
|
+
"./dist/components/pdf-viewer/pdf-viewer.js",
|
|
115
|
+
"./dist/components/spreadsheet-viewer/spreadsheet-viewer.js",
|
|
116
|
+
"./dist/components/csv-viewer/csv-viewer.js",
|
|
117
|
+
"./dist/components/docx-viewer/docx-viewer.js",
|
|
118
|
+
"./dist/components/email-viewer/email-viewer.js",
|
|
119
|
+
"./dist/components/calendar-viewer/calendar-viewer.js",
|
|
120
|
+
"./dist/components/svg-viewer/svg-viewer.js",
|
|
104
121
|
"./dist/components/details/details.js",
|
|
105
122
|
"./dist/components/details/accordion.js",
|
|
106
123
|
"./dist/components/details/accordion-item.js",
|
|
@@ -198,6 +215,8 @@
|
|
|
198
215
|
"./src/components/attachment-chip/attachment-chip.ts",
|
|
199
216
|
"./src/components/attachment-trigger/attachment-trigger.ts",
|
|
200
217
|
"./src/components/avatar/avatar.ts",
|
|
218
|
+
"./src/components/archive-viewer/archive-viewer.ts",
|
|
219
|
+
"./src/components/archive-viewer/archive-viewer-register.ts",
|
|
201
220
|
"./src/components/button/button.ts",
|
|
202
221
|
"./src/components/button-group/button-group.ts",
|
|
203
222
|
"./src/components/card/card.ts",
|
|
@@ -235,6 +254,21 @@
|
|
|
235
254
|
"./src/components/diff-view/diff-view.ts",
|
|
236
255
|
"./src/components/dock-panel/dock-panel.ts",
|
|
237
256
|
"./src/components/document-preview/document-preview.ts",
|
|
257
|
+
"./src/components/document-viewer/document-viewer.ts",
|
|
258
|
+
"./src/components/ebook-viewer/ebook-viewer.ts",
|
|
259
|
+
"./src/components/ebook-viewer/ebook-viewer-register.ts",
|
|
260
|
+
"./src/components/pptx-viewer/pptx-viewer.ts",
|
|
261
|
+
"./src/components/file-icon/file-icon.ts",
|
|
262
|
+
"./src/components/contact-viewer/contact-viewer.ts",
|
|
263
|
+
"./src/components/dataset-viewer/dataset-viewer.ts",
|
|
264
|
+
"./src/components/html-viewer/html-viewer.ts",
|
|
265
|
+
"./src/components/pdf-viewer/pdf-viewer.ts",
|
|
266
|
+
"./src/components/spreadsheet-viewer/spreadsheet-viewer.ts",
|
|
267
|
+
"./src/components/csv-viewer/csv-viewer.ts",
|
|
268
|
+
"./src/components/docx-viewer/docx-viewer.ts",
|
|
269
|
+
"./src/components/email-viewer/email-viewer.ts",
|
|
270
|
+
"./src/components/calendar-viewer/calendar-viewer.ts",
|
|
271
|
+
"./src/components/svg-viewer/svg-viewer.ts",
|
|
238
272
|
"./src/components/details/details.ts",
|
|
239
273
|
"./src/components/details/accordion.ts",
|
|
240
274
|
"./src/components/details/accordion-item.ts",
|
|
@@ -338,6 +372,7 @@
|
|
|
338
372
|
},
|
|
339
373
|
"peerDependencies": {
|
|
340
374
|
"@aceshooting/lyra-flags": "^1.3.0",
|
|
375
|
+
"@aiden0z/pptx-renderer": "^1.2.4",
|
|
341
376
|
"@sgratzl/chartjs-chart-boxplot": "^4.4.0",
|
|
342
377
|
"chart.js": "^4.5.0",
|
|
343
378
|
"chartjs-plugin-zoom": "^2.2.0",
|
|
@@ -346,10 +381,18 @@
|
|
|
346
381
|
"d3-selection": "^3.0.0",
|
|
347
382
|
"d3-zoom": "^3.0.0",
|
|
348
383
|
"dompurify": "^3.4.12",
|
|
384
|
+
"epubjs": "^0.3.93",
|
|
385
|
+
"ical.js": "^2.2.1",
|
|
386
|
+
"jszip": "^3.10.1",
|
|
349
387
|
"libphonenumber-js": ">=1.11.0 <2",
|
|
388
|
+
"mammoth": "^1.12.0",
|
|
350
389
|
"maplibre-gl": "^5.24.0",
|
|
351
390
|
"marked": "^18.0.6",
|
|
352
|
-
"
|
|
391
|
+
"papaparse": "^5.5.3",
|
|
392
|
+
"pdfjs-dist": "^6.1.200",
|
|
393
|
+
"postal-mime": "^2.7.5",
|
|
394
|
+
"shiki": "^4.3.1",
|
|
395
|
+
"xlsx": "^0.18.5"
|
|
353
396
|
},
|
|
354
397
|
"peerDependenciesMeta": {
|
|
355
398
|
"@aceshooting/lyra-flags": {
|
|
@@ -358,6 +401,9 @@
|
|
|
358
401
|
"@sgratzl/chartjs-chart-boxplot": {
|
|
359
402
|
"optional": true
|
|
360
403
|
},
|
|
404
|
+
"@aiden0z/pptx-renderer": {
|
|
405
|
+
"optional": true
|
|
406
|
+
},
|
|
361
407
|
"d3-force": {
|
|
362
408
|
"optional": true
|
|
363
409
|
},
|
|
@@ -379,21 +425,46 @@
|
|
|
379
425
|
"dompurify": {
|
|
380
426
|
"optional": true
|
|
381
427
|
},
|
|
428
|
+
"epubjs": {
|
|
429
|
+
"optional": true
|
|
430
|
+
},
|
|
431
|
+
"ical.js": {
|
|
432
|
+
"optional": true
|
|
433
|
+
},
|
|
434
|
+
"jszip": {
|
|
435
|
+
"optional": true
|
|
436
|
+
},
|
|
382
437
|
"libphonenumber-js": {
|
|
383
438
|
"optional": true
|
|
384
439
|
},
|
|
440
|
+
"mammoth": {
|
|
441
|
+
"optional": true
|
|
442
|
+
},
|
|
385
443
|
"maplibre-gl": {
|
|
386
444
|
"optional": true
|
|
387
445
|
},
|
|
388
446
|
"marked": {
|
|
389
447
|
"optional": true
|
|
390
448
|
},
|
|
449
|
+
"postal-mime": {
|
|
450
|
+
"optional": true
|
|
451
|
+
},
|
|
452
|
+
"papaparse": {
|
|
453
|
+
"optional": true
|
|
454
|
+
},
|
|
455
|
+
"pdfjs-dist": {
|
|
456
|
+
"optional": true
|
|
457
|
+
},
|
|
391
458
|
"shiki": {
|
|
392
459
|
"optional": true
|
|
460
|
+
},
|
|
461
|
+
"xlsx": {
|
|
462
|
+
"optional": true
|
|
393
463
|
}
|
|
394
464
|
},
|
|
395
465
|
"devDependencies": {
|
|
396
466
|
"@aceshooting/lyra-flags": "^1.3.0",
|
|
467
|
+
"@aiden0z/pptx-renderer": "^1.2.4",
|
|
397
468
|
"@custom-elements-manifest/analyzer": "^0.11.0",
|
|
398
469
|
"@open-wc/testing": "^4.0.0",
|
|
399
470
|
"@sgratzl/chartjs-chart-boxplot": "^4.4.5",
|
|
@@ -402,6 +473,7 @@
|
|
|
402
473
|
"@types/d3-force": "^3.0.10",
|
|
403
474
|
"@types/d3-selection": "^3.0.11",
|
|
404
475
|
"@types/d3-zoom": "^3.0.8",
|
|
476
|
+
"@types/papaparse": "^5.5.2",
|
|
405
477
|
"@types/sinonjs__fake-timers": "^15.0.1",
|
|
406
478
|
"@web/dev-server-esbuild": "^2.0.0",
|
|
407
479
|
"@web/test-runner": "^1.0.0",
|
|
@@ -413,11 +485,19 @@
|
|
|
413
485
|
"d3-selection": "^3.0.0",
|
|
414
486
|
"d3-zoom": "^3.0.0",
|
|
415
487
|
"dompurify": "^3.4.12",
|
|
488
|
+
"epubjs": "^0.3.93",
|
|
489
|
+
"ical.js": "^2.2.1",
|
|
490
|
+
"jszip": "^3.10.1",
|
|
491
|
+
"mammoth": "^1.12.0",
|
|
416
492
|
"maplibre-gl": "^5.24.0",
|
|
417
493
|
"marked": "^18.0.6",
|
|
494
|
+
"papaparse": "^5.5.3",
|
|
495
|
+
"pdfjs-dist": "^6.1.200",
|
|
418
496
|
"playwright": "^1.61.1",
|
|
497
|
+
"postal-mime": "^2.7.5",
|
|
419
498
|
"shiki": "^4.3.1",
|
|
420
|
-
"typescript": "^7.0.2"
|
|
499
|
+
"typescript": "^7.0.2",
|
|
500
|
+
"xlsx": "^0.18.5"
|
|
421
501
|
},
|
|
422
502
|
"customElements": "custom-elements.json",
|
|
423
503
|
"scripts": {
|