@supersoniks/concorde 5.1.0 → 5.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/concorde-docs/SKILL.md +153 -0
- package/.agents/skills/{concorde-component-docs/template.md → concorde-docs/templates/component.md} +6 -2
- package/.agents/skills/concorde-docs/templates/decorator.md +43 -0
- package/.agents/skills/concorde-docs/templates/guide.md +25 -0
- package/.claude/launch.json +15 -0
- package/.claude/vite.http.config.mjs +7 -0
- package/.taste-skill/after/desktop-fold.jpg +0 -0
- package/.taste-skill/after/desktop-page-01.jpg +0 -0
- package/.taste-skill/after/desktop-page-02.jpg +0 -0
- package/.taste-skill/after/desktop-page-03.jpg +0 -0
- package/.taste-skill/after/mobile-fold.jpg +0 -0
- package/.taste-skill/after/mobile-page-01.jpg +0 -0
- package/.taste-skill/after/report.json +4103 -0
- package/.taste-skill/after/tablet-fold.jpg +0 -0
- package/.taste-skill/after/tablet-page-01.jpg +0 -0
- package/.taste-skill/after/tablet-page-02.jpg +0 -0
- package/.taste-skill/before/desktop-fold.jpg +0 -0
- package/.taste-skill/before/desktop-page-01.jpg +0 -0
- package/.taste-skill/before/desktop-page-02.jpg +0 -0
- package/.taste-skill/before/mobile-fold.jpg +0 -0
- package/.taste-skill/before/mobile-page-01.jpg +0 -0
- package/.taste-skill/before/report.json +2556 -0
- package/.taste-skill/before/tablet-fold.jpg +0 -0
- package/.taste-skill/before/tablet-page-01.jpg +0 -0
- package/.taste-skill/direction.json +510 -0
- package/.taste-skill/notes.md +84 -0
- package/.taste-skill/prod/desktop-fold.jpg +0 -0
- package/.taste-skill/prod/desktop-page-01.jpg +0 -0
- package/.taste-skill/prod/desktop-page-02.jpg +0 -0
- package/.taste-skill/prod/desktop-page-03.jpg +0 -0
- package/.taste-skill/prod/mobile-fold.jpg +0 -0
- package/.taste-skill/prod/mobile-page-01.jpg +0 -0
- package/.taste-skill/prod/mobile-page-02.jpg +0 -0
- package/.taste-skill/prod/report.json +1973 -0
- package/.taste-skill/prod/tablet-fold.jpg +0 -0
- package/.taste-skill/prod/tablet-page-01.jpg +0 -0
- package/.taste-skill/prod/tablet-page-02.jpg +0 -0
- package/.tmp-cem/custom-elements.json +2013 -2013
- package/AUDIT.md +228 -0
- package/PLAN-AMELIORATION.md +220 -0
- package/PLAN-DOCS-AGENTS.md +80 -0
- package/README.md +3 -3
- package/ai/skills/concorde/SKILL.md +1 -1
- package/ai/skills/concorde-get-set-dp/SKILL.md +3 -3
- package/ai/skills/concorde-theme/SKILL.md +1 -1
- package/build-infos.json +1 -1
- package/concorde-core.bundle.js +16 -16
- package/concorde-core.es.js +235 -233
- package/dist/concorde-core.bundle.js +16 -16
- package/dist/concorde-core.es.js +235 -233
- package/dist/img/archive/concorde-001-2cv.webp +0 -0
- package/dist/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
- package/dist/img/archive/concorde-red-arrows-2002.webm +0 -0
- package/dist/img/archive/credits.json +28 -0
- package/docs/.htaccess +75 -0
- package/docs/404.html +15 -0
- package/docs/404.md +5 -0
- package/docs/assets/index-BgG6FFPt.js +11765 -0
- package/docs/assets/index-x89XINSG.css +1 -0
- package/docs/core/components/functional/date/date.html +211 -0
- package/docs/core/components/functional/date/date.md +150 -0
- package/docs/core/components/functional/fetch/fetch.html +180 -0
- package/docs/core/components/functional/fetch/fetch.md +108 -0
- package/docs/core/components/functional/if/if.html +65 -0
- package/docs/core/components/functional/if/if.md +34 -0
- package/docs/core/components/functional/jsonata/jsonata.html +110 -0
- package/docs/core/components/functional/jsonata/jsonata.md +61 -0
- package/docs/core/components/functional/list/list.html +198 -0
- package/docs/core/components/functional/list/list.md +121 -0
- package/docs/core/components/functional/mix/mix.html +78 -0
- package/docs/core/components/functional/mix/mix.md +46 -0
- package/docs/core/components/functional/queue/queue.html +155 -0
- package/docs/core/components/functional/queue/queue.md +51 -0
- package/docs/core/components/functional/router/router.html +154 -0
- package/docs/core/components/functional/router/router.md +93 -0
- package/docs/core/components/functional/sdui/sdui-extension-points.html +127 -0
- package/docs/core/components/functional/sdui/sdui-extension-points.md +94 -0
- package/docs/core/components/functional/sdui/sdui.html +397 -0
- package/docs/core/components/functional/sdui/sdui.md +307 -0
- package/docs/core/components/functional/states/states.html +141 -0
- package/docs/core/components/functional/states/states.md +112 -0
- package/docs/core/components/functional/submit/submit.html +178 -0
- package/docs/core/components/functional/submit/submit.md +106 -0
- package/docs/{crawl/core → core}/components/functional/subscriber/subscriber.html +6 -5
- package/docs/core/components/functional/subscriber/subscriber.md +91 -0
- package/docs/core/components/functional/translation/translation.html +60 -0
- package/docs/core/components/functional/translation/translation.md +38 -0
- package/docs/core/components/functional/value/value.html +81 -0
- package/docs/core/components/functional/value/value.md +47 -0
- package/docs/core/components/ui/alert/alert.html +201 -0
- package/docs/core/components/ui/alert/alert.md +186 -0
- package/docs/core/components/ui/alert-messages/alert-messages.html +132 -0
- package/docs/core/components/ui/alert-messages/alert-messages.md +85 -0
- package/docs/core/components/ui/badge/badge.html +197 -0
- package/docs/core/components/ui/badge/badge.md +181 -0
- package/docs/core/components/ui/button/button.html +309 -0
- package/docs/core/components/ui/button/button.md +216 -0
- package/docs/core/components/ui/captcha/captcha.html +80 -0
- package/docs/core/components/ui/captcha/captcha.md +56 -0
- package/docs/core/components/ui/card/card.html +254 -0
- package/docs/core/components/ui/card/card.md +215 -0
- package/docs/core/components/ui/divider/divider.html +144 -0
- package/docs/core/components/ui/divider/divider.md +126 -0
- package/docs/core/components/ui/form/checkbox/checkbox.html +200 -0
- package/docs/core/components/ui/form/checkbox/checkbox.md +125 -0
- package/docs/core/components/ui/form/fieldset/fieldset.html +238 -0
- package/docs/core/components/ui/form/fieldset/fieldset.md +161 -0
- package/docs/core/components/ui/form/form-actions/form-actions.html +122 -0
- package/docs/core/components/ui/form/form-actions/form-actions.md +98 -0
- package/docs/core/components/ui/form/form-layout/form-layout.html +115 -0
- package/docs/core/components/ui/form/form-layout/form-layout.md +109 -0
- package/docs/core/components/ui/form/input/input.html +235 -0
- package/docs/core/components/ui/form/input/input.md +142 -0
- package/docs/core/components/ui/form/radio/radio.html +144 -0
- package/docs/core/components/ui/form/radio/radio.md +78 -0
- package/docs/core/components/ui/form/select/select.html +178 -0
- package/docs/core/components/ui/form/select/select.md +86 -0
- package/docs/core/components/ui/form/switch/switch.html +146 -0
- package/docs/core/components/ui/form/switch/switch.md +80 -0
- package/docs/core/components/ui/form/textarea/textarea.html +162 -0
- package/docs/core/components/ui/form/textarea/textarea.md +82 -0
- package/docs/core/components/ui/group/group.html +113 -0
- package/docs/core/components/ui/group/group.md +77 -0
- package/docs/core/components/ui/icon/icon.html +223 -0
- package/docs/core/components/ui/icon/icon.md +214 -0
- package/docs/core/components/ui/image/image.html +194 -0
- package/docs/core/components/ui/image/image.md +167 -0
- package/docs/core/components/ui/link/link.html +101 -0
- package/docs/core/components/ui/link/link.md +81 -0
- package/docs/core/components/ui/loader/loader.html +114 -0
- package/docs/core/components/ui/loader/loader.md +87 -0
- package/docs/{crawl/core → core}/components/ui/menu/menu.html +189 -116
- package/docs/core/components/ui/menu/menu.md +370 -0
- package/docs/core/components/ui/modal/modal.html +324 -0
- package/docs/core/components/ui/modal/modal.md +211 -0
- package/docs/core/components/ui/pop/pop.html +250 -0
- package/docs/core/components/ui/pop/pop.md +216 -0
- package/docs/core/components/ui/progress/progress.html +132 -0
- package/docs/core/components/ui/progress/progress.md +109 -0
- package/docs/core/components/ui/table/table.html +333 -0
- package/docs/core/components/ui/table/table.md +267 -0
- package/docs/core/components/ui/theme/theme.html +116 -0
- package/docs/core/components/ui/theme/theme.md +97 -0
- package/docs/core/components/ui/toast/toast.html +185 -0
- package/docs/core/components/ui/toast/toast.md +147 -0
- package/docs/core/components/ui/tooltip/tooltip.html +112 -0
- package/docs/core/components/ui/tooltip/tooltip.md +89 -0
- package/docs/docs/decorators/ancestor-attribute.html +71 -0
- package/docs/docs/decorators/ancestor-attribute.md +59 -0
- package/docs/docs/decorators/auto-subscribe.html +61 -0
- package/docs/docs/decorators/auto-subscribe.md +40 -0
- package/docs/docs/decorators/bind.html +86 -0
- package/docs/docs/decorators/bind.md +77 -0
- package/docs/docs/decorators/get.html +166 -0
- package/docs/docs/decorators/get.md +160 -0
- package/docs/docs/decorators/handle.html +139 -0
- package/docs/docs/decorators/handle.md +119 -0
- package/docs/docs/decorators/on-assign.html +72 -0
- package/docs/docs/decorators/on-assign.md +63 -0
- package/docs/docs/decorators/patch.html +76 -0
- package/docs/docs/decorators/patch.md +44 -0
- package/docs/docs/decorators/post.html +150 -0
- package/docs/docs/decorators/post.md +134 -0
- package/docs/docs/decorators/publish.html +74 -0
- package/docs/docs/decorators/publish.md +56 -0
- package/docs/docs/decorators/put.html +83 -0
- package/docs/docs/decorators/put.md +51 -0
- package/docs/docs/decorators/subscribe.html +91 -0
- package/docs/docs/decorators/subscribe.md +87 -0
- package/docs/docs/decorators/wait-for-ancestors.html +82 -0
- package/docs/docs/decorators/wait-for-ancestors.md +76 -0
- package/docs/docs/directives/sub.html +79 -0
- package/docs/docs/directives/sub.md +75 -0
- package/docs/docs/directives/t.html +91 -0
- package/docs/docs/directives/t.md +73 -0
- package/docs/{crawl/docs/_getting-started → docs/getting-started}/ai-agents.html +12 -11
- package/{src/docs/_getting-started → docs/docs/getting-started}/ai-agents.md +3 -3
- package/docs/docs/getting-started/components.html +27 -0
- package/docs/docs/getting-started/components.md +5 -0
- package/docs/{crawl/docs/_getting-started → docs/getting-started}/create-a-component.html +11 -14
- package/docs/{src/docs/_getting-started → docs/getting-started}/create-a-component.md +3 -6
- package/docs/{crawl/docs/_core-concept → docs/getting-started}/dataFlow.html +26 -29
- package/docs/{src/docs/_core-concept → docs/getting-started}/dataFlow.md +17 -18
- package/docs/docs/getting-started/installation.html +69 -0
- package/docs/docs/getting-started/installation.md +36 -0
- package/docs/{crawl/docs/_getting-started → docs/getting-started}/my-first-component.html +13 -22
- package/docs/{src/docs/_getting-started → docs/getting-started}/my-first-component.md +5 -14
- package/docs/docs/getting-started/start.html +47 -0
- package/{src/docs/_getting-started → docs/docs/getting-started}/start.md +1 -13
- package/docs/docs/getting-started/theming.html +334 -0
- package/{src/docs/_getting-started → docs/docs/getting-started}/theming.md +2 -2
- package/docs/docs/index.html +99 -0
- package/docs/{crawl/docs/_misc → docs/misc}/api-configuration.html +18 -18
- package/docs/{src/docs/_misc → docs/misc}/api-configuration.md +10 -12
- package/docs/{crawl/docs/_misc → docs/misc}/dataProviderKey.html +12 -11
- package/{src/docs/_misc → docs/docs/misc}/dataProviderKey.md +4 -4
- package/docs/{crawl/docs/_misc → docs/misc}/docs-mock-api.html +25 -28
- package/docs/{src/docs/_misc → docs/misc}/docs-mock-api.md +12 -13
- package/docs/{crawl/docs/_misc → docs/misc}/dynamic-path.html +16 -15
- package/{src/docs/_misc → docs/docs/misc}/dynamic-path.md +8 -8
- package/docs/{crawl/docs/_misc → docs/misc}/endpoint.html +16 -15
- package/{src/docs/_misc → docs/docs/misc}/endpoint.md +8 -8
- package/docs/{crawl/docs/_misc → docs/misc}/html-integration.html +12 -15
- package/docs/{src/docs/_misc → docs/misc}/html-integration.md +4 -5
- package/docs/docs-mock-api-sw.js +60 -223
- package/docs/docs-mock-api-sw.js.map +4 -4
- package/docs/hubs/decorators.html +443 -0
- package/docs/hubs/form-components.html +404 -0
- package/docs/hubs/remote-data.html +371 -0
- package/docs/img/archive/concorde-001-2cv.webp +0 -0
- package/docs/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
- package/docs/img/archive/concorde-red-arrows-2002.webm +0 -0
- package/docs/img/archive/credits.json +28 -0
- package/docs/img/concorde/plane_01.jpg +0 -0
- package/docs/img/concorde/plane_02.jpg +0 -0
- package/docs/img/concorde/plane_03.jpg +0 -0
- package/docs/img/concorde/plane_04.jpg +0 -0
- package/docs/img/concorde/plane_05.jpg +0 -0
- package/docs/img/concorde/plane_06.jpg +0 -0
- package/docs/img/concorde/plane_07.jpg +0 -0
- package/docs/img/concorde/plane_08.jpg +0 -0
- package/docs/img/concorde/plane_09.jpg +0 -0
- package/docs/img/concorde/plane_10.jpg +0 -0
- package/docs/img/concorde/plane_11.jpg +0 -0
- package/docs/img/concorde/plane_12.jpg +0 -0
- package/docs/img/concorde/plane_13.jpg +0 -0
- package/docs/index.html +96 -67
- package/docs/index.md +22 -0
- package/docs/llms-full.txt +3329 -3295
- package/docs/llms.txt +94 -92
- package/docs/robots.txt +11 -10
- package/docs/sitemap.xml +78 -78
- package/docs/src/core/components/functional/date/date.md +91 -231
- package/docs/src/core/components/functional/fetch/fetch.md +66 -83
- package/docs/src/core/components/functional/if/if.md +28 -3
- package/docs/src/core/components/functional/jsonata/jsonata.md +42 -37
- package/docs/src/core/components/functional/list/list.md +99 -43
- package/docs/src/core/components/functional/mix/mix.md +31 -26
- package/docs/src/core/components/functional/queue/queue.md +40 -61
- package/docs/src/core/components/functional/router/router.md +64 -65
- package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +511 -0
- package/docs/src/core/components/functional/sdui/component-catalog.json +3103 -0
- package/docs/src/core/components/functional/sdui/example.json +19 -86
- package/docs/src/core/components/functional/sdui/sdui-extension-points.md +94 -0
- package/docs/src/core/components/functional/sdui/sdui.md +196 -245
- package/docs/src/core/components/functional/states/states.md +86 -61
- package/docs/src/core/components/functional/submit/submit.md +64 -72
- package/docs/src/core/components/functional/translation/translation.md +38 -0
- package/docs/src/core/components/functional/value/value.md +34 -22
- package/docs/src/core/components/ui/alert/alert.md +139 -74
- package/docs/src/core/components/ui/alert-messages/alert-messages.md +85 -0
- package/docs/src/core/components/ui/badge/badge.md +137 -83
- package/docs/src/core/components/ui/button/button.md +139 -105
- package/docs/src/core/components/ui/captcha/captcha.md +50 -6
- package/docs/src/core/components/ui/card/card.md +183 -65
- package/docs/src/core/components/ui/divider/divider.md +104 -13
- package/docs/src/core/components/ui/form/checkbox/checkbox.md +90 -42
- package/docs/src/core/components/ui/form/fieldset/fieldset.md +135 -103
- package/docs/src/core/components/ui/form/form-actions/form-actions.md +71 -50
- package/docs/src/core/components/ui/form/form-layout/form-layout.md +99 -34
- package/docs/src/core/components/ui/form/input/input.md +95 -95
- package/docs/src/core/components/ui/form/radio/radio.md +55 -34
- package/docs/src/core/components/ui/form/select/select.md +60 -45
- package/docs/src/core/components/ui/form/switch/switch.md +57 -34
- package/docs/src/core/components/ui/form/textarea/textarea.md +55 -38
- package/docs/src/core/components/ui/group/group.md +49 -47
- package/docs/src/core/components/ui/icon/icon.md +132 -43
- package/docs/src/core/components/ui/image/image.md +132 -72
- package/docs/src/core/components/ui/link/link.md +46 -8
- package/docs/src/core/components/ui/loader/loader.md +55 -23
- package/docs/src/core/components/ui/menu/menu.md +155 -114
- package/docs/src/core/components/ui/modal/modal.md +154 -62
- package/docs/src/core/components/ui/pop/pop.md +185 -65
- package/docs/src/core/components/ui/progress/progress.md +76 -30
- package/docs/src/core/components/ui/table/table.md +146 -334
- package/docs/src/core/components/ui/theme/theme.md +97 -0
- package/docs/src/core/components/ui/toast/toast.md +80 -99
- package/docs/src/core/components/ui/tooltip/tooltip.md +52 -45
- package/docs/src/docs/decorators/ancestor-attribute.md +59 -0
- package/docs/src/docs/decorators/auto-subscribe.md +40 -0
- package/docs/src/docs/decorators/bind.md +77 -0
- package/docs/src/docs/decorators/get.md +160 -0
- package/docs/src/docs/decorators/handle.md +119 -0
- package/docs/src/docs/decorators/on-assign.md +63 -0
- package/docs/src/docs/decorators/patch.md +44 -0
- package/docs/src/docs/decorators/post.md +134 -0
- package/docs/src/docs/decorators/publish.md +56 -0
- package/docs/src/docs/decorators/put.md +51 -0
- package/docs/src/docs/decorators/subscribe.md +87 -0
- package/docs/src/docs/decorators/wait-for-ancestors.md +76 -0
- package/docs/src/docs/directives/sub.md +75 -0
- package/docs/src/docs/directives/t.md +73 -0
- package/docs/src/docs/{_getting-started → getting-started}/ai-agents.md +3 -3
- package/docs/src/docs/getting-started/components.md +5 -0
- package/{src/docs/_getting-started → docs/src/docs/getting-started}/create-a-component.md +3 -6
- package/{src/docs/_core-concept → docs/src/docs/getting-started}/dataFlow.md +17 -18
- package/docs/src/docs/getting-started/installation.md +36 -0
- package/{src/docs/_getting-started → docs/src/docs/getting-started}/my-first-component.md +5 -14
- package/docs/src/docs/getting-started/start.md +35 -0
- package/docs/src/docs/getting-started/theming.md +253 -0
- package/{src/docs/_misc → docs/src/docs/misc}/api-configuration.md +10 -12
- package/docs/src/docs/{_misc → misc}/dataProviderKey.md +4 -4
- package/{src/docs/_misc → docs/src/docs/misc}/docs-mock-api.md +12 -13
- package/docs/src/docs/{_misc → misc}/dynamic-path.md +8 -8
- package/docs/src/docs/{_misc → misc}/endpoint.md +8 -8
- package/{src/docs/_misc → docs/src/docs/misc}/html-integration.md +4 -5
- package/docs/src/docs/search/docs-search.json +3729 -2949
- package/docs/src/tsconfig.json +176 -5
- package/index.html +94 -67
- package/package.json +11 -4
- package/public/docs-mock-api-sw.js +58 -223
- package/public/docs-mock-api-sw.js.map +4 -4
- package/public/img/archive/concorde-001-2cv.webp +0 -0
- package/public/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
- package/public/img/archive/concorde-red-arrows-2002.webm +0 -0
- package/public/img/archive/credits.json +28 -0
- package/public/img/concorde/plane_01.jpg +0 -0
- package/public/img/concorde/plane_02.jpg +0 -0
- package/public/img/concorde/plane_03.jpg +0 -0
- package/public/img/concorde/plane_04.jpg +0 -0
- package/public/img/concorde/plane_05.jpg +0 -0
- package/public/img/concorde/plane_06.jpg +0 -0
- package/public/img/concorde/plane_07.jpg +0 -0
- package/public/img/concorde/plane_08.jpg +0 -0
- package/public/img/concorde/plane_09.jpg +0 -0
- package/public/img/concorde/plane_10.jpg +0 -0
- package/public/img/concorde/plane_11.jpg +0 -0
- package/public/img/concorde/plane_12.jpg +0 -0
- package/public/img/concorde/plane_13.jpg +0 -0
- package/public/robots.txt +11 -10
- package/scripts/docs-markdown-vite-plugin.ts +37 -0
- package/scripts/docs-public-url.mjs +50 -0
- package/scripts/docs.htaccess +75 -0
- package/scripts/generate-crawl-docs.mjs +207 -116
- package/scripts/generate-crawl-docs.test.mjs +124 -0
- package/scripts/post-build-docs.js +34 -50
- package/scripts/post-build.mjs +0 -0
- package/src/core/components/functional/date/date.md +91 -231
- package/src/core/components/functional/fetch/fetch.md +66 -83
- package/src/core/components/functional/if/if.md +28 -3
- package/src/core/components/functional/if/if.ts +0 -0
- package/src/core/components/functional/jsonata/jsonata.md +42 -37
- package/src/core/components/functional/list/list.demo.ts +0 -0
- package/src/core/components/functional/list/list.md +99 -43
- package/src/core/components/functional/mix/mix.md +31 -26
- package/src/core/components/functional/queue/queue.demo.ts +10 -7
- package/src/core/components/functional/queue/queue.md +40 -61
- package/src/core/components/functional/router/router.demo.ts +16 -16
- package/src/core/components/functional/router/router.md +64 -65
- package/src/core/components/functional/router/router.ts +0 -0
- package/src/core/components/functional/sdui/SDUIDescriptorTransformer.ts +0 -0
- package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
- package/src/core/components/functional/sdui/component-catalog.json +1 -1
- package/src/core/components/functional/sdui/example.json +19 -86
- package/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
- package/src/core/components/functional/sdui/sdui.md +187 -358
- package/src/core/components/functional/sdui/types.ts +0 -0
- package/src/core/components/functional/states/states.demo.ts +21 -22
- package/src/core/components/functional/states/states.md +86 -61
- package/src/core/components/functional/states/states.ts +1 -1
- package/src/core/components/functional/submit/submit.md +64 -72
- package/src/core/components/functional/subscriber/subscriber.ts +0 -0
- package/src/core/components/functional/translation/translation.md +38 -0
- package/src/core/components/functional/value/value.md +34 -22
- package/src/core/components/functional/value/value.ts +0 -0
- package/src/core/components/ui/_css/size.ts +0 -0
- package/src/core/components/ui/alert/alert.md +48 -58
- package/src/core/components/ui/badge/badge.md +27 -34
- package/src/core/components/ui/button/button.md +139 -106
- package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
- package/src/core/components/ui/captcha/captcha.md +17 -32
- package/src/core/components/ui/card/card.md +6 -6
- package/src/core/components/ui/divider/divider.md +8 -11
- package/src/core/components/ui/form/checkbox/checkbox.md +90 -42
- package/src/core/components/ui/form/fieldset/fieldset.md +31 -75
- package/src/core/components/ui/form/form-actions/form-actions.md +14 -16
- package/src/core/components/ui/form/form-layout/form-layout.md +19 -29
- package/src/core/components/ui/form/input/input.md +95 -95
- package/src/core/components/ui/form/radio/radio.md +55 -34
- package/src/core/components/ui/form/select/select.md +60 -45
- package/src/core/components/ui/form/switch/switch.md +57 -34
- package/src/core/components/ui/form/textarea/textarea.md +55 -38
- package/src/core/components/ui/group/group.md +35 -33
- package/src/core/components/ui/icon/icon.md +4 -4
- package/src/core/components/ui/image/image.md +41 -107
- package/src/core/components/ui/link/link.md +6 -6
- package/src/core/components/ui/loader/loader.md +30 -55
- package/src/core/components/ui/menu/menu.md +27 -27
- package/src/core/components/ui/modal/modal.md +72 -96
- package/src/core/components/ui/modal/modal.ts +14 -11
- package/src/core/components/ui/pop/pop.md +80 -158
- package/src/core/components/ui/progress/progress.md +2 -2
- package/src/core/components/ui/table/table.md +91 -255
- package/src/core/components/ui/theme/theme.md +11 -36
- package/src/core/components/ui/toast/toast.md +48 -117
- package/src/core/components/ui/tooltip/tooltip.md +27 -62
- package/src/core/mixins/Subscriber.ts +0 -0
- package/src/core/utils/DataBindObserver.ts +0 -0
- package/src/core/utils/LocationHandler.spec.ts +80 -0
- package/src/core/utils/LocationHandler.ts +5 -9
- package/src/core/utils/Objects.ts +0 -0
- package/src/core/utils/route.ts +0 -0
- package/src/docs/code.ts +88 -75
- package/src/docs/components/docs-demo-sources.ts +70 -147
- package/src/docs/components/docs-lit-demo.ts +20 -40
- package/src/docs/components/docs-source-link.ts +0 -82
- package/src/docs/decorators/ancestor-attribute.md +59 -0
- package/src/docs/decorators/auto-subscribe.md +40 -0
- package/src/docs/decorators/bind.md +77 -0
- package/src/docs/decorators/get.md +160 -0
- package/src/docs/decorators/handle.md +119 -0
- package/src/docs/decorators/on-assign.md +63 -0
- package/src/docs/decorators/patch.md +44 -0
- package/src/docs/decorators/post.md +134 -0
- package/src/docs/decorators/publish.md +56 -0
- package/src/docs/decorators/put.md +51 -0
- package/src/docs/decorators/subscribe.md +87 -0
- package/src/docs/decorators/wait-for-ancestors.md +76 -0
- package/src/docs/directives/sub.md +75 -0
- package/src/docs/directives/t.md +73 -0
- package/src/docs/docs-location.spec.ts +46 -0
- package/src/docs/docs-location.ts +123 -32
- package/src/docs/docs.ts +6 -2
- package/src/docs/example/decorators-demo-bind-demos.ts +81 -116
- package/src/docs/example/decorators-demo-geo.ts +30 -19
- package/src/docs/example/decorators-demo-post.ts +88 -186
- package/src/docs/example/decorators-demo-subscribe-publish-get-demos.ts +165 -268
- package/src/docs/example/decorators-demo.ts +85 -98
- package/src/docs/example/docs-api-config-demos.ts +19 -20
- package/src/docs/example/docs-boarding-pass-demo.ts +134 -0
- package/src/docs/example/docs-flight-demos.ts +147 -0
- package/src/docs/example/docs-jsonata-demos.ts +52 -52
- package/src/docs/example/docs-list-demos.ts +43 -123
- package/src/docs/example/docs-provider-keys.ts +33 -28
- package/src/docs/example/docs-queue-demos.ts +37 -77
- package/src/docs/example/docs-router-demos.ts +20 -25
- package/src/docs/example/docs-submit-demos.ts +48 -48
- package/src/docs/example/docs-toggle-demos.ts +4 -3
- package/src/docs/example/users.ts +0 -0
- package/src/docs/getting-started/ai-agents.md +76 -0
- package/src/docs/getting-started/components.md +5 -0
- package/src/docs/getting-started/create-a-component.md +136 -0
- package/src/docs/getting-started/dataFlow.md +87 -0
- package/src/docs/getting-started/installation.md +36 -0
- package/src/docs/getting-started/my-first-component.md +227 -0
- package/src/docs/getting-started/start.md +35 -0
- package/src/docs/getting-started/theming.md +253 -0
- package/src/docs/header/header.ts +240 -71
- package/src/docs/home/catalog.ts +44 -0
- package/src/docs/home/home.ts +520 -0
- package/src/docs/home/mach-stage.ts +389 -0
- package/src/docs/layout.ts +12 -11
- package/src/docs/misc/api-configuration.md +79 -0
- package/src/docs/misc/dataProviderKey.md +168 -0
- package/src/docs/misc/docs-mock-api.md +62 -0
- package/src/docs/misc/dynamic-path.md +71 -0
- package/src/docs/misc/endpoint.md +45 -0
- package/src/docs/misc/html-integration.md +14 -0
- package/src/docs/mock-api/api-config-mock.ts +5 -0
- package/src/docs/mock-api/fixtures.ts +0 -278
- package/src/docs/mock-api/flights.ts +89 -0
- package/src/docs/mock-api/router.ts +3 -4
- package/src/docs/mock-api/urls.ts +1 -2
- package/src/docs/navigation/components-index.ts +56 -0
- package/src/docs/navigation/navigation.ts +219 -232
- package/src/docs/navigation/pager.ts +67 -0
- package/src/docs/navigation/toc.ts +101 -0
- package/src/docs/search/docs-search.json +2419 -4374
- package/src/docs/search/markdown-renderer.ts +33 -7
- package/src/docs/search/page.ts +9 -6
- package/src/docs/search/search.ts +154 -122
- package/src/docs/shiki/index.ts +109 -0
- package/src/docs/tailwind/css/base/scrollbar.css +22 -0
- package/src/docs/tailwind/css/base/theme.css +96 -0
- package/src/docs/tailwind/css/base/typography.css +4 -0
- package/src/docs/tailwind/css/docs/boarding-pass.css +65 -0
- package/src/docs/tailwind/css/docs/content.css +32 -0
- package/src/docs/tailwind/css/docs/page.css +10 -0
- package/src/docs/tailwind/css/docs.css +9 -0
- package/src/docs/tailwind/css/home/hero.css +210 -0
- package/src/docs/tailwind/css/home/motion.css +84 -0
- package/src/docs/tailwind/css/home/sections.css +416 -0
- package/src/docs/tailwind/css/tailwind.css +7 -185
- package/src/tsconfig.json +23 -2
- package/src/tsconfig.tsbuildinfo +1 -1
- package/tailwind.config.js +8 -4
- package/vite.config.mts +11 -2
- package/.agents/skills/concorde-component-docs/SKILL.md +0 -194
- package/.github/workflows/ci.yml +0 -21
- package/.github-export-ignore +0 -30
- package/CONTRIBUTING.md +0 -59
- package/DEV.md +0 -54
- package/LICENSE +0 -21
- package/OPEN_SOURCE_CHECKPOINT.md +0 -133
- package/concorde-3d.bundle.js +0 -3960
- package/concorde-3d.es.js +0 -33433
- package/concorde-hugging-face-infer.bundle.js +0 -32
- package/concorde-hugging-face-infer.es.js +0 -2952
- package/concorde-interactive.bundle.js +0 -1157
- package/concorde-interactive.es.js +0 -10734
- package/concorde-shader.bundle.js +0 -116
- package/concorde-shader.es.js +0 -8353
- package/concorde-webgpu.bundle.js +0 -307
- package/concorde-webgpu.es.js +0 -8627
- package/docs/assets/index-D8MVWqY6.js +0 -12251
- package/docs/assets/index-DiD0qYvE.css +0 -1
- package/docs/crawl/core/components/functional/date/date.html +0 -190
- package/docs/crawl/core/components/functional/fetch/fetch.html +0 -109
- package/docs/crawl/core/components/functional/if/if.html +0 -27
- package/docs/crawl/core/components/functional/jsonata/jsonata.html +0 -79
- package/docs/crawl/core/components/functional/list/list.html +0 -70
- package/docs/crawl/core/components/functional/mix/mix.html +0 -45
- package/docs/crawl/core/components/functional/queue/queue.html +0 -96
- package/docs/crawl/core/components/functional/router/router.html +0 -106
- package/docs/crawl/core/components/functional/sdui/sdui.html +0 -269
- package/docs/crawl/core/components/functional/states/states.html +0 -66
- package/docs/crawl/core/components/functional/submit/submit.html +0 -160
- package/docs/crawl/core/components/functional/value/value.html +0 -51
- package/docs/crawl/core/components/ui/alert/alert.html +0 -110
- package/docs/crawl/core/components/ui/alert-messages/alert-messages.html +0 -23
- package/docs/crawl/core/components/ui/badge/badge.html +0 -119
- package/docs/crawl/core/components/ui/button/button.html +0 -149
- package/docs/crawl/core/components/ui/captcha/captcha.html +0 -30
- package/docs/crawl/core/components/ui/card/card.html +0 -99
- package/docs/crawl/core/components/ui/divider/divider.html +0 -58
- package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +0 -73
- package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +0 -135
- package/docs/crawl/core/components/ui/form/form-actions/form-actions.html +0 -79
- package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +0 -62
- package/docs/crawl/core/components/ui/form/input/input.html +0 -109
- package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +0 -38
- package/docs/crawl/core/components/ui/form/radio/radio.html +0 -56
- package/docs/crawl/core/components/ui/form/select/select.html +0 -73
- package/docs/crawl/core/components/ui/form/switch/switch.html +0 -56
- package/docs/crawl/core/components/ui/form/textarea/textarea.html +0 -59
- package/docs/crawl/core/components/ui/group/group.html +0 -82
- package/docs/crawl/core/components/ui/icon/icon.html +0 -133
- package/docs/crawl/core/components/ui/image/image.html +0 -110
- package/docs/crawl/core/components/ui/link/link.html +0 -42
- package/docs/crawl/core/components/ui/loader/loader.html +0 -50
- package/docs/crawl/core/components/ui/modal/modal.html +0 -117
- package/docs/crawl/core/components/ui/pop/pop.html +0 -102
- package/docs/crawl/core/components/ui/progress/progress.html +0 -58
- package/docs/crawl/core/components/ui/table/table.html +0 -413
- package/docs/crawl/core/components/ui/toast/toast.html +0 -122
- package/docs/crawl/core/components/ui/tooltip/tooltip.html +0 -79
- package/docs/crawl/docs/_core-concept/overview.html +0 -66
- package/docs/crawl/docs/_core-concept/subscriber.html +0 -75
- package/docs/crawl/docs/_decorators/ancestor-attribute.html +0 -116
- package/docs/crawl/docs/_decorators/auto-subscribe.html +0 -202
- package/docs/crawl/docs/_decorators/bind.html +0 -141
- package/docs/crawl/docs/_decorators/get.html +0 -149
- package/docs/crawl/docs/_decorators/handle.html +0 -165
- package/docs/crawl/docs/_decorators/on-assign.html +0 -355
- package/docs/crawl/docs/_decorators/patch.html +0 -78
- package/docs/crawl/docs/_decorators/post.html +0 -139
- package/docs/crawl/docs/_decorators/publish.html +0 -61
- package/docs/crawl/docs/_decorators/put.html +0 -78
- package/docs/crawl/docs/_decorators/subscribe.html +0 -109
- package/docs/crawl/docs/_decorators/wait-for-ancestors.html +0 -137
- package/docs/crawl/docs/_directives/sub.html +0 -93
- package/docs/crawl/docs/_getting-started/concorde-manual-install.html +0 -100
- package/docs/crawl/docs/_getting-started/concorde-outside.html +0 -58
- package/docs/crawl/docs/_getting-started/my-first-subscriber.html +0 -110
- package/docs/crawl/docs/_getting-started/pubsub.html +0 -62
- package/docs/crawl/docs/_getting-started/start.html +0 -76
- package/docs/crawl/docs/_getting-started/theming.html +0 -85
- package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +0 -138
- package/docs/crawl/hubs/decorators.html +0 -547
- package/docs/crawl/hubs/form-components.html +0 -359
- package/docs/crawl/hubs/remote-data.html +0 -452
- package/docs/crawl/index.html +0 -101
- package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -29
- package/docs/src/docs/_core-concept/overview.md +0 -57
- package/docs/src/docs/_core-concept/subscriber.md +0 -75
- package/docs/src/docs/_decorators/ancestor-attribute.md +0 -127
- package/docs/src/docs/_decorators/auto-subscribe.md +0 -202
- package/docs/src/docs/_decorators/bind.md +0 -167
- package/docs/src/docs/_decorators/get.md +0 -162
- package/docs/src/docs/_decorators/handle.md +0 -175
- package/docs/src/docs/_decorators/on-assign.md +0 -390
- package/docs/src/docs/_decorators/patch.md +0 -70
- package/docs/src/docs/_decorators/post.md +0 -146
- package/docs/src/docs/_decorators/publish.md +0 -55
- package/docs/src/docs/_decorators/put.md +0 -70
- package/docs/src/docs/_decorators/subscribe.md +0 -100
- package/docs/src/docs/_decorators/wait-for-ancestors.md +0 -163
- package/docs/src/docs/_directives/sub.md +0 -91
- package/docs/src/docs/_getting-started/concorde-manual-install.md +0 -133
- package/docs/src/docs/_getting-started/concorde-outside.md +0 -33
- package/docs/src/docs/_getting-started/my-first-subscriber.md +0 -120
- package/docs/src/docs/_getting-started/pubsub.md +0 -37
- package/docs/src/docs/_getting-started/start.md +0 -47
- package/docs/src/docs/_getting-started/theming.md +0 -91
- package/docs/src/docs/_misc/formelement-subscriber-removal.md +0 -115
- package/docs/src/tsconfig.declarations.json +0 -22
- package/docs/src/tsconfig.emit.json +0 -23
- package/gitlab/job_github_mirror.sh +0 -39
- package/scripts/github-export.mjs +0 -150
- package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -29
- package/src/css.d.ts +0 -19
- package/src/docs/_core-concept/overview.md +0 -57
- package/src/docs/_core-concept/subscriber.md +0 -75
- package/src/docs/_decorators/ancestor-attribute.md +0 -128
- package/src/docs/_decorators/auto-subscribe.md +0 -202
- package/src/docs/_decorators/bind.md +0 -167
- package/src/docs/_decorators/get.md +0 -162
- package/src/docs/_decorators/handle.md +0 -175
- package/src/docs/_decorators/on-assign.md +0 -390
- package/src/docs/_decorators/patch.md +0 -70
- package/src/docs/_decorators/post.md +0 -146
- package/src/docs/_decorators/publish.md +0 -55
- package/src/docs/_decorators/put.md +0 -70
- package/src/docs/_decorators/subscribe.md +0 -100
- package/src/docs/_decorators/wait-for-ancestors.md +0 -163
- package/src/docs/_directives/sub.md +0 -91
- package/src/docs/_getting-started/concorde-manual-install.md +0 -133
- package/src/docs/_getting-started/concorde-outside.md +0 -33
- package/src/docs/_getting-started/my-first-subscriber.md +0 -120
- package/src/docs/_getting-started/pubsub.md +0 -37
- package/src/docs/_misc/formelement-subscriber-removal.md +0 -115
- package/src/docs/example/docs-input-autocomplete-demos.ts +0 -110
- package/src/docs/example/docs-joke-demos.ts +0 -297
- package/src/docs/prism/index.ts +0 -6
- package/src/docs/prism/prism.css +0 -158
- package/src/docs/prism/prism.js +0 -1022
- package/src/tsconfig.declarations.json +0 -22
- package/src/tsconfig.emit.json +0 -23
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
# Captcha
|
|
2
2
|
|
|
3
|
-
**`sonic-captcha`** embeds an
|
|
4
|
-
|
|
5
|
-
> Live widget calls the Supersoniks challenge service — not part of [docs mock API](#docs/_misc/docs-mock-api.md/docs-mock-api).
|
|
3
|
+
**`sonic-captcha`** embeds an [ALTCHA](https://altcha.org) proof-of-work widget and makes the nearest form wait for it. Place it inside a form scope and put **`sonic-submit`** in its default slot: the widget renders above the slot content, and the submit sends only once a token is available.
|
|
6
4
|
|
|
7
5
|
## Basic example
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
The widget loads only on **HTTPS**. On plain HTTP the component renders nothing and the form is not blocked.
|
|
10
8
|
|
|
11
9
|
<sonic-code>
|
|
12
10
|
<template>
|
|
@@ -15,57 +13,44 @@ Wrap the form scope and place **`sonic-submit`** in the default slot so the chal
|
|
|
15
13
|
formDataProvider="captcha-docs-form"
|
|
16
14
|
submitResultDataProvider="captcha-docs-result"
|
|
17
15
|
>
|
|
18
|
-
<sonic-captcha
|
|
19
|
-
<sonic-input class="mb-3" name="email" type="email" label="Email" value="demo@example.com"></sonic-input>
|
|
16
|
+
<sonic-captcha>
|
|
17
|
+
<sonic-input class="mb-3 block" name="email" type="email" label="Email" value="demo@example.com"></sonic-input>
|
|
20
18
|
<sonic-submit endPoint="api/register" onClick>
|
|
21
|
-
<sonic-button type="primary">
|
|
19
|
+
<sonic-button type="primary">Join the crew</sonic-button>
|
|
22
20
|
</sonic-submit>
|
|
23
21
|
</sonic-captcha>
|
|
24
22
|
</sonic-scope>
|
|
25
23
|
</template>
|
|
26
24
|
</sonic-code>
|
|
27
25
|
|
|
28
|
-
##
|
|
29
|
-
|
|
30
|
-
Optional **`key`** skips client-side key generation. When omitted, the component derives an encrypted key on connect (after **`generateEncryptedKey`**).
|
|
31
|
-
|
|
32
|
-
<sonic-code>
|
|
33
|
-
<template>
|
|
34
|
-
<sonic-captcha formDataProvider="captcha-docs-form" key="6Leq5V0iAAAAAB-41DlWN335jDlcIuXmhNtdd00t">
|
|
35
|
-
<sonic-button type="outline" disabled>Complete the challenge above to enable submit</sonic-button>
|
|
36
|
-
</sonic-captcha>
|
|
37
|
-
</template>
|
|
38
|
-
</sonic-code>
|
|
39
|
-
|
|
40
|
-
## Form publisher fields
|
|
26
|
+
## Form integration
|
|
41
27
|
|
|
42
|
-
|
|
28
|
+
The component writes to the publisher named by the closest `headersDataProvider`, or else `formDataProvider`, on itself or an ancestor. On connect it sets `needsCaptchaValidation` to `true`. When **`sonic-submit`** sees that flag, it requests a token, the captcha copies the solved ALTCHA payload into `captchaToken` and its key into `captchaKey`, and the request is sent. `needsCaptchaValidation` is stripped from the payload. On disconnect both fields are reset.
|
|
43
29
|
|
|
44
30
|
<sonic-code language="typescript">
|
|
45
31
|
<template>
|
|
46
32
|
{
|
|
47
|
-
|
|
33
|
+
email: "demo@example.com",
|
|
48
34
|
captchaKey: "…",
|
|
49
35
|
captchaToken: "…"
|
|
50
36
|
}
|
|
51
37
|
</template>
|
|
52
38
|
</sonic-code>
|
|
53
39
|
|
|
40
|
+
## Key and challenge endpoint
|
|
41
|
+
|
|
42
|
+
With no `key`, the component generates an encrypted key on connect. The widget fetches its challenge from the `chalengeUrl` property (a JavaScript property, not an attribute) with `key` and `maxNumber` (default `50000`) as query parameters. Point it at your own ALTCHA server and verify `captchaToken` there.
|
|
43
|
+
|
|
44
|
+
Labels follow the page language: French when `<html lang>` starts with `fr`, English otherwise.
|
|
45
|
+
|
|
54
46
|
## API reference
|
|
55
47
|
|
|
56
48
|
| Attribute | Values | Description |
|
|
57
49
|
|----------|---------|-------------|
|
|
58
|
-
| `
|
|
59
|
-
| `key` | string | ALTCHA site key; auto-generated when empty |
|
|
60
|
-
| `action` | string | Optional action name forwarded to the widget |
|
|
61
|
-
| `zIndex` | number (default `9999`) | Stacking for the challenge overlay |
|
|
50
|
+
| `key` | string (default generated) | Key sent to the challenge endpoint and copied to `captchaKey` |
|
|
62
51
|
|
|
63
52
|
| Slot | Description |
|
|
64
53
|
|------|-------------|
|
|
65
|
-
| *(default)* | Form
|
|
66
|
-
|
|
67
|
-
| Event | Description |
|
|
68
|
-
|-------|-------------|
|
|
69
|
-
| `sonic-captcha-validate` | Fired when **`state`** is **`verified`** · **`error`** or **`expired`**; **`detail.valid`** is **`true`** only for **`verified`** |
|
|
54
|
+
| *(default)* | Form fields and actions, rendered below the widget |
|
|
70
55
|
|
|
71
|
-
|
|
56
|
+
No events.
|
|
@@ -7,7 +7,7 @@ Cards **group related content** on a padded surface with radius, theme **`type`*
|
|
|
7
7
|
<sonic-code>
|
|
8
8
|
<template>
|
|
9
9
|
<sonic-card class="max-w-sm">
|
|
10
|
-
<p class="m-0">
|
|
10
|
+
<p class="m-0">CN 001 · CDG → JFK · On time.</p>
|
|
11
11
|
</sonic-card>
|
|
12
12
|
</template>
|
|
13
13
|
</sonic-code>
|
|
@@ -153,23 +153,23 @@ Header, media, body, and footer together.
|
|
|
153
153
|
<sonic-code>
|
|
154
154
|
<template>
|
|
155
155
|
<sonic-card class="max-w-md">
|
|
156
|
-
<sonic-card-header label="Featured route" description="
|
|
156
|
+
<sonic-card-header label="Featured route" description="CDG → JFK">
|
|
157
157
|
<sonic-icon slot="suffix" library="iconoir" name="airplane" aria-hidden="true"></sonic-icon>
|
|
158
158
|
</sonic-card-header>
|
|
159
159
|
<sonic-card-main>
|
|
160
160
|
<sonic-image
|
|
161
161
|
rounded
|
|
162
162
|
ratio="16/9"
|
|
163
|
-
src="
|
|
164
|
-
alt="
|
|
163
|
+
src="img/concorde/plane_04.jpg"
|
|
164
|
+
alt="Concorde on the apron under a blue sky"
|
|
165
165
|
></sonic-image>
|
|
166
166
|
<p class="mb-0">
|
|
167
|
-
Nonstop
|
|
167
|
+
Nonstop at Mach 2.04, with flexible dates.
|
|
168
168
|
</p>
|
|
169
169
|
</sonic-card-main>
|
|
170
170
|
<sonic-card-footer>
|
|
171
171
|
<div class="flex items-center justify-between gap-3 flex-wrap">
|
|
172
|
-
<span class="text-sm font-semibold">
|
|
172
|
+
<span class="text-sm font-semibold">Cabin class: Business</span>
|
|
173
173
|
<sonic-button type="primary" size="sm">Book</sonic-button>
|
|
174
174
|
</div>
|
|
175
175
|
</sonic-card-footer>
|
|
@@ -14,7 +14,7 @@ A bare divider is a full-width line with vertical margin. Omit **`size`** to use
|
|
|
14
14
|
|
|
15
15
|
## Label and align
|
|
16
16
|
|
|
17
|
-
**`label`** renders inside the line (
|
|
17
|
+
**`label`** renders inside the line (as HTML). **`align`** controls which side(s) of the line remain visible: **`left`** drops the leading segment, **`right`** drops the trailing segment, **`center`** keeps both.
|
|
18
18
|
|
|
19
19
|
<sonic-code>
|
|
20
20
|
<template>
|
|
@@ -80,13 +80,12 @@ Slotted content replaces or augments **`label`**. Useful for badges, icons, or m
|
|
|
80
80
|
<sonic-code>
|
|
81
81
|
<template>
|
|
82
82
|
<sonic-divider>
|
|
83
|
-
<span class="mr-2">
|
|
83
|
+
<span class="mr-2">Departures</span>
|
|
84
84
|
<sonic-badge type="danger">+25</sonic-badge>
|
|
85
85
|
</sonic-divider>
|
|
86
86
|
</template>
|
|
87
87
|
</sonic-code>
|
|
88
88
|
|
|
89
|
-
|
|
90
89
|
## Inside typed cards
|
|
91
90
|
|
|
92
91
|
On **`sonic-card`** with semantic **`type`** (`primary` · `warning` · `danger` · `info` · `success`), the rule uses the card’s text color at reduced opacity so it stays visible on tinted surfaces. **`label`** and slotted captions use the same foreground color as surrounding copy.
|
|
@@ -95,15 +94,15 @@ On **`sonic-card`** with semantic **`type`** (`primary` · `warning` · `danger`
|
|
|
95
94
|
<template>
|
|
96
95
|
<div class="grid gap-4 max-w-xl">
|
|
97
96
|
<sonic-card type="danger">
|
|
98
|
-
<div>
|
|
99
|
-
<sonic-divider label="Affected
|
|
97
|
+
<div>CN 001 is cancelled.</div>
|
|
98
|
+
<sonic-divider label="Affected passengers"></sonic-divider>
|
|
100
99
|
<ul class="m-0 pl-5 text-sm">
|
|
101
|
-
<li>
|
|
102
|
-
<li>
|
|
100
|
+
<li>Ada Lindqvist</li>
|
|
101
|
+
<li>Captain Leo Marchand</li>
|
|
103
102
|
</ul>
|
|
104
103
|
</sonic-card>
|
|
105
104
|
<sonic-card type="info">
|
|
106
|
-
<div>
|
|
105
|
+
<div>Aircraft maintenance is scheduled for tonight.</div>
|
|
107
106
|
<sonic-divider></sonic-divider>
|
|
108
107
|
<div class="opacity-60">Expected downtime: about 15 minutes.</div>
|
|
109
108
|
</sonic-card>
|
|
@@ -117,7 +116,7 @@ On **`sonic-card`** with semantic **`type`** (`primary` · `warning` · `danger`
|
|
|
117
116
|
|----------|---------|-------------|
|
|
118
117
|
| `label` | string (HTML) | Caption centered on the rule; combined with default-slot content when both are set |
|
|
119
118
|
| `align` | `left` · `center` · `right` (default `center`) | Hides the leading or trailing line segment for left/right alignment |
|
|
120
|
-
| `size` | `2xs`
|
|
119
|
+
| `size` | `2xs` … `2xl` · `inherit` | Vertical margin and label `font-size`; omit for host defaults |
|
|
121
120
|
| `lineStyle` | `solid` · `dashed` · `dotted` (default `solid`) | Stroke style of the rule (HTML attribute `linestyle`) |
|
|
122
121
|
| `vertical` | boolean | Renders a vertical rule; swap block/inline margins |
|
|
123
122
|
| `noMargin` | boolean | Sets host margin to `0` |
|
|
@@ -125,5 +124,3 @@ On **`sonic-card`** with semantic **`type`** (`primary` · `warning` · `danger`
|
|
|
125
124
|
| Slot | Description |
|
|
126
125
|
|------|-------------|
|
|
127
126
|
| *(default)* | Label markup when **`label`** is insufficient or empty |
|
|
128
|
-
|
|
129
|
-
The inner flex container exposes **`part="divider"`** for theme overrides.
|
|
@@ -1,77 +1,125 @@
|
|
|
1
1
|
# Checkbox
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**`sonic-checkbox`** is a styled checkbox that writes its `value` into form data. Give it a `name` and a `formDataProvider` (on the field or an ancestor); checkboxes sharing a `name` build an array of the checked values. Label goes in the default slot or `label`, helper text in the `description` slot.
|
|
4
|
+
|
|
5
|
+
## Basic example
|
|
6
|
+
|
|
4
7
|
<sonic-code>
|
|
5
8
|
<template>
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
<sonic-checkbox>default checkbox</sonic-checkbox>
|
|
11
|
-
<sonic-checkbox size="lg">lg checkbox</sonic-checkbox>
|
|
12
|
-
<sonic-checkbox size="xl">xl checkbox</sonic-checkbox>
|
|
13
|
-
<sonic-checkbox size="2xl">2xl checkbox</sonic-checkbox>
|
|
14
|
-
</div>
|
|
9
|
+
<sonic-checkbox>
|
|
10
|
+
Notify me of gate changes
|
|
11
|
+
<span slot="description">One message per change, no spam.</span>
|
|
12
|
+
</sonic-checkbox>
|
|
15
13
|
</template>
|
|
16
14
|
</sonic-code>
|
|
17
15
|
|
|
18
|
-
##
|
|
16
|
+
## Size
|
|
17
|
+
|
|
18
|
+
With no `size`, the checkbox follows `md` (1rem).
|
|
19
|
+
|
|
19
20
|
<sonic-code>
|
|
20
21
|
<template>
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
<div class="grid gap-2">
|
|
23
|
+
<sonic-checkbox size="2xs">2xs</sonic-checkbox>
|
|
24
|
+
<sonic-checkbox size="xs">xs</sonic-checkbox>
|
|
25
|
+
<sonic-checkbox size="sm">sm</sonic-checkbox>
|
|
26
|
+
<sonic-checkbox>Default</sonic-checkbox>
|
|
27
|
+
<sonic-checkbox size="lg">lg</sonic-checkbox>
|
|
28
|
+
<sonic-checkbox size="xl">xl</sonic-checkbox>
|
|
29
|
+
<sonic-checkbox size="2xl">2xl</sonic-checkbox>
|
|
30
|
+
</div>
|
|
24
31
|
</template>
|
|
25
32
|
</sonic-code>
|
|
26
33
|
|
|
27
|
-
##
|
|
34
|
+
## Checked and disabled
|
|
35
|
+
|
|
36
|
+
`checked` sets the initial state. `disabled` blocks interaction and dims the control.
|
|
37
|
+
|
|
28
38
|
<sonic-code>
|
|
29
39
|
<template>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
40
|
+
<div class="grid gap-2">
|
|
41
|
+
<sonic-checkbox checked>Checked</sonic-checkbox>
|
|
42
|
+
<sonic-checkbox disabled>Disabled</sonic-checkbox>
|
|
43
|
+
<sonic-checkbox disabled checked>Disabled and checked</sonic-checkbox>
|
|
44
|
+
<sonic-checkbox>I accept the <sonic-link href="#" class="underline">terms</sonic-link></sonic-checkbox>
|
|
45
|
+
</div>
|
|
33
46
|
</template>
|
|
34
47
|
</sonic-code>
|
|
35
48
|
|
|
36
|
-
##
|
|
49
|
+
## Form binding
|
|
50
|
+
|
|
51
|
+
Checkboxes with the same `name` under one `formDataProvider` store an array of the checked `value`s. Initial state is read from that data, so a value already present checks the matching box. See [Data flow](/docs/getting-started/dataFlow).
|
|
52
|
+
|
|
37
53
|
<sonic-code>
|
|
38
54
|
<template>
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
55
|
+
<div formDataProvider="checkbox-multiple-demo" class="grid gap-2">
|
|
56
|
+
<sonic-checkbox name="extras" value="baggage" checked>Extra baggage</sonic-checkbox>
|
|
57
|
+
<sonic-checkbox name="extras" value="meal">Meal</sonic-checkbox>
|
|
58
|
+
<sonic-checkbox name="extras" value="lounge">Lounge access</sonic-checkbox>
|
|
59
|
+
<div>Selected: <sonic-value dataProvider="checkbox-multiple-demo" key="extras"></sonic-value></div>
|
|
60
|
+
</div>
|
|
42
61
|
</template>
|
|
43
62
|
</sonic-code>
|
|
44
63
|
|
|
45
|
-
##
|
|
64
|
+
## Single value
|
|
65
|
+
|
|
66
|
+
`unique` stores a single value instead of an array: checking one box unchecks the others with the same `name`, and the checked box can be unchecked again (value `null`). `radio` does the same but cannot be unchecked by a click.
|
|
67
|
+
|
|
46
68
|
<sonic-code>
|
|
47
69
|
<template>
|
|
48
|
-
|
|
70
|
+
<div formDataProvider="checkbox-unique-demo" class="grid gap-2">
|
|
71
|
+
<sonic-checkbox unique name="cabin" value="economy">Economy</sonic-checkbox>
|
|
72
|
+
<sonic-checkbox unique name="cabin" value="business">Business</sonic-checkbox>
|
|
73
|
+
<div>Cabin: <sonic-value dataProvider="checkbox-unique-demo" key="cabin"></sonic-value></div>
|
|
74
|
+
</div>
|
|
49
75
|
</template>
|
|
50
76
|
</sonic-code>
|
|
51
77
|
|
|
52
|
-
## Check all
|
|
78
|
+
## Check all and indeterminate
|
|
79
|
+
|
|
80
|
+
A checkbox with `checksAll` and the same `name` toggles every sibling value. It shows the indeterminate icon when only some are checked; its own `value` is never stored. With `unsetOnDisconnect`, a checkbox removes its value from the data when it leaves the DOM. `showAsIndeterminate` forces the indeterminate icon on any checkbox.
|
|
81
|
+
|
|
53
82
|
<sonic-code>
|
|
54
|
-
<template>
|
|
55
|
-
|
|
56
|
-
<sonic-checkbox
|
|
57
|
-
<sonic-
|
|
58
|
-
<
|
|
59
|
-
<
|
|
60
|
-
|
|
83
|
+
<template>
|
|
84
|
+
<div formDataProvider="checkbox-check-all-demo" class="grid gap-2">
|
|
85
|
+
<sonic-checkbox name="alerts" value="all" checksAll>All alerts</sonic-checkbox>
|
|
86
|
+
<sonic-checkbox name="alerts" value="boarding">Boarding</sonic-checkbox>
|
|
87
|
+
<sonic-checkbox name="alerts" value="gate">Gate change</sonic-checkbox>
|
|
88
|
+
<div id="checkbox-removable" class="flex gap-2 items-center">
|
|
89
|
+
<sonic-checkbox name="alerts" value="delay" unsetOnDisconnect>Delay</sonic-checkbox>
|
|
90
|
+
<sonic-button size="xs" variant="ghost" onclick="document.getElementById('checkbox-removable').remove()">Remove</sonic-button>
|
|
61
91
|
</div>
|
|
62
|
-
<sonic-
|
|
63
|
-
<div>
|
|
64
|
-
<span>Enabling unsetOnDisconect ensures that outdated or irrelevant values are not retained in the form state once their associated inputs are no longer rendered.</span>
|
|
65
|
-
<div id="prunable-checkbox" class="flex gap-2 items-center">
|
|
66
|
-
<sonic-checkbox name="someSharedName" value="baz">Baz</sonic-checkbox>
|
|
67
|
-
<sonic-button variant="ghost" shape="circle" unique name="toggleCheckboxExistance" onclick="document.getElementById('prunable-checkbox').remove();" value="true"><sonic-icon library="fontAwesome" prefix="solid" name="trash"></sonic-icon></sonic-button>
|
|
68
|
-
</div>
|
|
92
|
+
<div>Selected: <sonic-value dataProvider="checkbox-check-all-demo" key="alerts"></sonic-value></div>
|
|
69
93
|
</div>
|
|
70
94
|
</template>
|
|
71
95
|
</sonic-code>
|
|
72
96
|
|
|
73
|
-
##
|
|
97
|
+
## API reference
|
|
98
|
+
|
|
99
|
+
| Attribute | Values | Description |
|
|
100
|
+
|----------|---------|-------------|
|
|
101
|
+
| `name` | string | Key in the form data (dot notation supported) |
|
|
102
|
+
| `value` | string | Value stored when checked |
|
|
103
|
+
| `formDataProvider` | string | Form data id; inherited from the closest ancestor when omitted |
|
|
104
|
+
| `checked` | boolean | Initial checked state |
|
|
105
|
+
| `unique` | boolean | Stores a single value; can be unchecked |
|
|
106
|
+
| `radio` | boolean | Stores a single value; cannot be unchecked by a click |
|
|
107
|
+
| `checksAll` | boolean | Toggles every checkbox with the same `name` |
|
|
108
|
+
| `unsetOnDisconnect` | boolean | Removes the value from the data when the element is removed |
|
|
109
|
+
| `showAsIndeterminate` | boolean | Forces the indeterminate icon |
|
|
110
|
+
| `label` | string (HTML) | Label, rendered before the default slot |
|
|
111
|
+
| `description` | string (HTML) | Helper text, rendered in the `description` slot |
|
|
112
|
+
| `size` | `2xs` … `2xl` · `inherit` (default `md`) | Font size and box size |
|
|
113
|
+
| `disabled` | boolean | Blocks interaction |
|
|
114
|
+
| `required` | boolean | Native validation on form submit |
|
|
115
|
+
| `autofocus` | boolean | Focuses the input on load |
|
|
116
|
+
| `iconName` | string (default `check`) | Icon shown when checked |
|
|
117
|
+
| `indeterminateIconName` | string (default `minus-small`) | Icon shown when indeterminate |
|
|
118
|
+
| `data-aria-label` · `data-aria-labelledby` | string | Forwarded to the inner input as `aria-label` / `aria-labelledby` |
|
|
74
119
|
|
|
75
|
-
|
|
120
|
+
| Slot | Description |
|
|
121
|
+
|------|-------------|
|
|
122
|
+
| *(default)* | Label content (text, links) |
|
|
123
|
+
| `description` | Helper text under the label |
|
|
76
124
|
|
|
77
|
-
|
|
125
|
+
Fires a `change` event on each click.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Fieldset
|
|
2
2
|
|
|
3
|
-
**`sonic-fieldset`** groups related form controls
|
|
3
|
+
**`sonic-fieldset`** groups related form controls in a bordered container rendered as a native `<fieldset>`. Put fields in the default slot and title the group with a slotted `sonic-legend` or with the `label` and `description` shorthand. Pair the body with `sonic-form-layout` for responsive columns.
|
|
4
4
|
|
|
5
5
|
## Basic example
|
|
6
6
|
|
|
7
7
|
<sonic-code>
|
|
8
8
|
<template>
|
|
9
9
|
<sonic-fieldset>
|
|
10
|
-
<sonic-legend label="
|
|
10
|
+
<sonic-legend label="Passenger contact"></sonic-legend>
|
|
11
11
|
<sonic-form-layout>
|
|
12
12
|
<sonic-input autocomplete="email" label="Email" name="email" type="email"></sonic-input>
|
|
13
13
|
<sonic-input autocomplete="tel" label="Phone" name="phone" type="tel"></sonic-input>
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
## Variant
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
With no `variant`, the fieldset is `default` (bordered). `ghost` and `shadow` hide the border; `shadow` adds `--sc-shadow-lg`.
|
|
22
22
|
|
|
23
23
|
<sonic-code>
|
|
24
24
|
<template>
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
</template>
|
|
40
40
|
</sonic-code>
|
|
41
41
|
|
|
42
|
-
## Tight
|
|
42
|
+
## Tight
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
`tight` removes horizontal padding, side borders and rounding, for a flat strip inside a parent.
|
|
45
45
|
|
|
46
46
|
<sonic-code>
|
|
47
47
|
<template>
|
|
@@ -54,9 +54,7 @@ Set **`tight`** to remove horizontal padding and side borders (flat strip inside
|
|
|
54
54
|
|
|
55
55
|
## Legend
|
|
56
56
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
Attribute values on **`sonic-legend`** are rendered as HTML—use only trusted content.
|
|
57
|
+
`sonic-legend` takes `label` and `description`, or custom markup in its default slot with `sonic-legend-description` for the secondary line. `iconName` adds a leading `sonic-icon`. **`label` and `description` are rendered as HTML**: pass trusted content only.
|
|
60
58
|
|
|
61
59
|
<sonic-code>
|
|
62
60
|
<template>
|
|
@@ -76,15 +74,15 @@ Attribute values on **`sonic-legend`** are rendered as HTML—use only trusted c
|
|
|
76
74
|
</template>
|
|
77
75
|
</sonic-code>
|
|
78
76
|
|
|
79
|
-
## Shorthand legend
|
|
77
|
+
## Shorthand legend
|
|
80
78
|
|
|
81
|
-
When
|
|
79
|
+
When `label` is set on `sonic-fieldset`, it renders the `sonic-legend` itself and forwards `description` · `iconName` · `iconLibrary` · `iconPrefix`. Do not also slot a `sonic-legend`, or the group gets two titles.
|
|
82
80
|
|
|
83
81
|
<sonic-code>
|
|
84
82
|
<template>
|
|
85
83
|
<sonic-fieldset
|
|
86
|
-
label="
|
|
87
|
-
description="Basic
|
|
84
|
+
label="Crew profile"
|
|
85
|
+
description="Basic crew member fields"
|
|
88
86
|
iconLibrary="iconoir"
|
|
89
87
|
iconName="user"
|
|
90
88
|
>
|
|
@@ -95,12 +93,12 @@ When **`label`** is set on **`sonic-fieldset`**, the component renders **`sonic-
|
|
|
95
93
|
|
|
96
94
|
## Legend actions
|
|
97
95
|
|
|
98
|
-
|
|
96
|
+
`slot="suffix"` on `sonic-legend` aligns menus or icon buttons to the end of the title row.
|
|
99
97
|
|
|
100
98
|
<sonic-code>
|
|
101
99
|
<template>
|
|
102
100
|
<sonic-fieldset>
|
|
103
|
-
<sonic-legend label="
|
|
101
|
+
<sonic-legend label="Passenger details">
|
|
104
102
|
<sonic-pop class="inline-block" slot="suffix">
|
|
105
103
|
<sonic-button shape="circle" variant="ghost">
|
|
106
104
|
<sonic-icon library="iconoir" size="lg" name="more-vert"></sonic-icon>
|
|
@@ -119,49 +117,7 @@ Use **`slot="suffix"`** on **`sonic-legend`** for menus or icon buttons aligned
|
|
|
119
117
|
</template>
|
|
120
118
|
</sonic-code>
|
|
121
119
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
### Associating a distant `form`
|
|
125
|
-
|
|
126
|
-
Set **`form`** on **`sonic-fieldset`** to the **`id`** of a **`<form>`** elsewhere in the page (same as the native **`form`** attribute on **`<fieldset>`**). Named fields in the fieldset then belong to that form for submit and constraint validation—for example a toolbar **`form`** and a field group rendered lower on the layout.
|
|
127
|
-
|
|
128
|
-
<sonic-code>
|
|
129
|
-
<template>
|
|
130
|
-
<div class="grid gap-4">
|
|
131
|
-
<form id="billing-form" class="flex flex-wrap items-center gap-2">
|
|
132
|
-
<sonic-button submit type="primary">Save billing</sonic-button>
|
|
133
|
-
</form>
|
|
134
|
-
<sonic-fieldset form="billing-form" label="Billing address">
|
|
135
|
-
<sonic-form-layout>
|
|
136
|
-
<sonic-input label="Street" name="street" autocomplete="street-address"></sonic-input>
|
|
137
|
-
<sonic-input label="Postal code" required name="postal_code" autocomplete="postal-code"></sonic-input>
|
|
138
|
-
<sonic-input label="City" name="city" autocomplete="address-level2"></sonic-input>
|
|
139
|
-
</sonic-form-layout>
|
|
140
|
-
</sonic-fieldset>
|
|
141
|
-
</div>
|
|
142
|
-
</template>
|
|
143
|
-
</sonic-code>
|
|
144
|
-
|
|
145
|
-
### Disabling a group
|
|
146
|
-
|
|
147
|
-
Set **`disabled`** on **`sonic-fieldset`** to disable the inner **`<fieldset>`** and every control in the group (same as a native fieldset). Use it for read-only steps or sections gated by permissions.
|
|
148
|
-
|
|
149
|
-
<sonic-code>
|
|
150
|
-
<template>
|
|
151
|
-
<div class="grid gap-4">
|
|
152
|
-
<sonic-fieldset label="Editable">
|
|
153
|
-
<sonic-input label="Display name" name="display_name"></sonic-input>
|
|
154
|
-
</sonic-fieldset>
|
|
155
|
-
<sonic-fieldset label="Locked" disabled>
|
|
156
|
-
<sonic-input label="Account ID" name="account_id" value="acct_42"></sonic-input>
|
|
157
|
-
</sonic-fieldset>
|
|
158
|
-
</div>
|
|
159
|
-
</template>
|
|
160
|
-
</sonic-code>
|
|
161
|
-
|
|
162
|
-
## Accessibility
|
|
163
|
-
|
|
164
|
-
The inner **`<fieldset>`** carries grouping semantics. **`disabled`** is applied on that element so nested controls are disabled in the usual way. **`sonic-legend`** renders a native **`<legend>`** for the group label.
|
|
120
|
+
<sonic-alert status="warning" label="Disabled state and form association" text="Both attributes are set on the inner native fieldset only. Slotted Concorde fields are not disabled or re-associated by them: set disabled on each field instead."></sonic-alert>
|
|
165
121
|
|
|
166
122
|
## API reference
|
|
167
123
|
|
|
@@ -170,36 +126,36 @@ The inner **`<fieldset>`** carries grouping semantics. **`disabled`** is applied
|
|
|
170
126
|
| Attribute | Values | Description |
|
|
171
127
|
|----------|---------|-------------|
|
|
172
128
|
| `variant` | `default` · `ghost` · `shadow` (default `default`) | Border and shadow treatment |
|
|
173
|
-
| `tight` | boolean | Removes horizontal padding
|
|
174
|
-
| `label` | string | Shorthand
|
|
175
|
-
| `description` | string | Shorthand
|
|
176
|
-
| `iconName` | string | Shorthand legend icon
|
|
177
|
-
| `iconLibrary` | string | Shorthand legend icon
|
|
178
|
-
| `iconPrefix` | string | Shorthand legend icon
|
|
179
|
-
| `disabled` | boolean |
|
|
180
|
-
| `form` | string |
|
|
181
|
-
| `dataProvider` | string |
|
|
129
|
+
| `tight` | boolean | Removes horizontal padding, side borders and rounding |
|
|
130
|
+
| `label` | string | Shorthand title; renders a `sonic-legend` when set |
|
|
131
|
+
| `description` | string | Shorthand description (HTML) |
|
|
132
|
+
| `iconName` | string | Shorthand legend icon `name` |
|
|
133
|
+
| `iconLibrary` | string | Shorthand legend icon `library` |
|
|
134
|
+
| `iconPrefix` | string | Shorthand legend icon `prefix` |
|
|
135
|
+
| `disabled` | boolean | Sets `disabled` on the inner native `<fieldset>` |
|
|
136
|
+
| `form` | string | Sets `form` on the inner native `<fieldset>` |
|
|
137
|
+
| `dataProvider` | string | Publisher key; matching publisher fields (e.g. `label`) fill the properties |
|
|
182
138
|
|
|
183
139
|
| Slot | Description |
|
|
184
140
|
|------|-------------|
|
|
185
|
-
| *(default)* |
|
|
141
|
+
| *(default)* | Optional `sonic-legend`, then the grouped fields |
|
|
186
142
|
|
|
187
143
|
### `sonic-legend`
|
|
188
144
|
|
|
189
145
|
| Attribute | Values | Description |
|
|
190
146
|
|----------|---------|-------------|
|
|
191
|
-
| `label` | string | Title HTML
|
|
192
|
-
| `description` | string | Description HTML
|
|
193
|
-
| `iconName` | string | Leading
|
|
194
|
-
| `iconLibrary` | string | Icon
|
|
195
|
-
| `iconPrefix` | string | Icon
|
|
196
|
-
| `forceAutoFill` | boolean |
|
|
147
|
+
| `label` | string | Title (HTML) |
|
|
148
|
+
| `description` | string | Description (HTML), wrapped in `sonic-legend-description` |
|
|
149
|
+
| `iconName` | string | Leading `sonic-icon` `name` |
|
|
150
|
+
| `iconLibrary` | string | Icon `library` |
|
|
151
|
+
| `iconPrefix` | string | Icon `prefix` |
|
|
152
|
+
| `forceAutoFill` | boolean | Lets a `label` or `description` set as a property override the attribute value |
|
|
197
153
|
|
|
198
154
|
| Slot | Description |
|
|
199
155
|
|------|-------------|
|
|
200
|
-
| *(default)* |
|
|
156
|
+
| *(default)* | Custom title and `sonic-legend-description` |
|
|
201
157
|
| `suffix` | Trailing actions (menus, icon buttons) |
|
|
202
158
|
|
|
203
159
|
### `sonic-legend-description`
|
|
204
160
|
|
|
205
|
-
|
|
161
|
+
No attributes. The default slot holds the muted line under the legend title.
|