@supersoniks/concorde 5.1.2 → 5.1.3-immutable.1
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 +1 -1
- package/.claude/skills +1 -0
- package/.github/workflows/ci.yml +21 -0
- package/.github-export-ignore +30 -0
- package/CONTRIBUTING.md +59 -0
- package/DEV.md +54 -0
- package/LICENSE +21 -0
- package/OPEN_SOURCE_CHECKPOINT.md +133 -0
- package/README.md +1 -1
- package/ai/README.md +29 -41
- package/ai/skills/concorde/SKILL.md +54 -324
- package/ai/skills/concorde/rules/composition.md +32 -0
- package/ai/skills/concorde/rules/data.md +47 -0
- package/ai/skills/concorde/rules/http.md +25 -0
- package/ai/skills/concorde/rules/lists-forms.md +35 -0
- package/ai/skills/concorde/rules/styling.md +46 -0
- package/ai/skills/concorde/rules/troubleshooting.md +45 -0
- package/build-infos.json +1 -1
- package/concorde-core.bundle.js +177 -177
- package/concorde-core.es.js +4993 -4833
- package/custom-elements-manifest.public.config.mjs +8 -0
- package/{.tmp-cem/custom-elements.json → custom-elements.json} +11722 -8868
- package/dist/concorde-core.bundle.js +177 -177
- package/dist/concorde-core.es.js +4993 -4833
- package/dist/docs-mock-api-sw.js +58 -223
- package/dist/docs-mock-api-sw.js.map +4 -4
- package/dist/img/og-concorde.jpg +0 -0
- package/dist/robots.txt +11 -10
- package/docs/assets/index-CD4WyL6o.css +1 -0
- package/docs/assets/index-D_alEsng.js +12122 -0
- package/docs/crawl/core/components/functional/date/date.html +190 -0
- package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
- package/docs/crawl/core/components/functional/if/if.html +27 -0
- package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
- package/docs/crawl/core/components/functional/list/list.html +70 -0
- package/docs/crawl/core/components/functional/mix/mix.html +45 -0
- package/docs/crawl/core/components/functional/queue/queue.html +96 -0
- package/docs/crawl/core/components/functional/router/router.html +106 -0
- package/docs/{core → crawl/core}/components/functional/sdui/sdui-extension-points.html +8 -9
- package/docs/crawl/core/components/functional/sdui/sdui.html +368 -0
- package/docs/crawl/core/components/functional/states/states.html +66 -0
- package/docs/crawl/core/components/functional/submit/submit.html +160 -0
- package/docs/{core → crawl/core}/components/functional/subscriber/subscriber.html +5 -6
- package/docs/crawl/core/components/functional/value/value.html +51 -0
- package/docs/{core → crawl/core}/components/ui/alert/alert.html +63 -53
- package/docs/{core → crawl/core}/components/ui/alert-messages/alert-messages.html +5 -6
- package/docs/{core → crawl/core}/components/ui/badge/badge.html +33 -33
- package/docs/crawl/core/components/ui/button/button.html +150 -0
- package/docs/crawl/core/components/ui/captcha/captcha.html +112 -0
- package/docs/{core → crawl/core}/components/ui/card/card.html +11 -12
- package/docs/{core → crawl/core}/components/ui/divider/divider.html +14 -14
- package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
- package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +266 -0
- package/docs/{core → crawl/core}/components/ui/form/form-actions/form-actions.html +23 -23
- package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +121 -0
- package/docs/crawl/core/components/ui/form/input/input.html +109 -0
- package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
- package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
- package/docs/crawl/core/components/ui/form/select/select.html +73 -0
- package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
- package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
- package/docs/crawl/core/components/ui/group/group.html +104 -0
- package/docs/{core → crawl/core}/components/ui/icon/icon.html +9 -10
- package/docs/crawl/core/components/ui/image/image.html +298 -0
- package/docs/{core → crawl/core}/components/ui/link/link.html +11 -12
- package/docs/crawl/core/components/ui/loader/loader.html +124 -0
- package/docs/{core → crawl/core}/components/ui/menu/menu.html +33 -34
- package/docs/crawl/core/components/ui/modal/modal.html +342 -0
- package/docs/crawl/core/components/ui/pop/pop.html +296 -0
- package/docs/{core → crawl/core}/components/ui/progress/progress.html +7 -8
- package/docs/crawl/core/components/ui/table/table.html +545 -0
- package/docs/crawl/core/components/ui/theme/theme.html +131 -0
- package/docs/crawl/core/components/ui/toast/toast.html +233 -0
- package/docs/crawl/core/components/ui/tooltip/tooltip.html +140 -0
- package/docs/{docs/getting-started → crawl/docs/_core-concept}/dataFlow.html +29 -26
- package/docs/crawl/docs/_core-concept/overview.html +66 -0
- package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
- package/docs/crawl/docs/_decorators/ancestor-attribute.html +117 -0
- package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
- package/docs/crawl/docs/_decorators/bind.html +141 -0
- package/docs/crawl/docs/_decorators/get.html +149 -0
- package/docs/crawl/docs/_decorators/handle.html +165 -0
- package/docs/crawl/docs/_decorators/on-assign.html +355 -0
- package/docs/crawl/docs/_decorators/patch.html +78 -0
- package/docs/crawl/docs/_decorators/post.html +139 -0
- package/docs/crawl/docs/_decorators/publish.html +61 -0
- package/docs/crawl/docs/_decorators/put.html +78 -0
- package/docs/crawl/docs/_decorators/subscribe.html +109 -0
- package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
- package/docs/crawl/docs/_directives/sub.html +93 -0
- package/docs/{docs/getting-started → crawl/docs/_getting-started}/ai-agents.html +11 -12
- package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
- package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
- package/docs/{docs/getting-started → crawl/docs/_getting-started}/create-a-component.html +14 -11
- package/docs/{docs/getting-started → crawl/docs/_getting-started}/my-first-component.html +22 -13
- package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
- package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
- package/docs/crawl/docs/_getting-started/start.html +76 -0
- package/docs/{docs/getting-started → crawl/docs/_getting-started}/theming.html +9 -10
- package/docs/{docs/misc → crawl/docs/_misc}/api-configuration.html +18 -18
- package/docs/{docs/misc → crawl/docs/_misc}/dataProviderKey.html +11 -12
- package/docs/{docs/misc → crawl/docs/_misc}/docs-mock-api.html +28 -25
- package/docs/{docs/misc → crawl/docs/_misc}/dynamic-path.html +15 -16
- package/docs/{docs/misc → crawl/docs/_misc}/endpoint.html +15 -16
- package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
- package/docs/{docs/misc → crawl/docs/_misc}/html-integration.html +15 -12
- package/docs/crawl/hubs/decorators.html +547 -0
- package/docs/crawl/hubs/form-components.html +381 -0
- package/docs/crawl/hubs/remote-data.html +452 -0
- package/docs/crawl/index.html +103 -0
- package/docs/docs-mock-api-sw.js +223 -58
- package/docs/docs-mock-api-sw.js.map +4 -4
- package/docs/index.html +68 -95
- package/docs/llms-full.txt +3610 -2231
- package/docs/llms.txt +86 -94
- package/docs/robots.txt +10 -11
- package/docs/sitemap.xml +84 -78
- package/docs/src/core/components/functional/date/date.md +231 -91
- package/docs/src/core/components/functional/fetch/fetch.md +83 -66
- package/docs/src/core/components/functional/if/if.md +3 -28
- package/docs/src/core/components/functional/jsonata/jsonata.md +37 -42
- package/docs/src/core/components/functional/list/list.md +43 -99
- package/docs/src/core/components/functional/mix/mix.md +26 -31
- package/docs/src/core/components/functional/queue/queue.md +61 -40
- package/docs/src/core/components/functional/router/router.md +65 -64
- package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
- package/docs/src/core/components/functional/sdui/component-catalog.json +1 -1
- package/docs/src/core/components/functional/sdui/example.json +86 -19
- package/docs/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
- package/docs/src/core/components/functional/sdui/sdui.md +358 -187
- package/docs/src/core/components/functional/states/states.md +61 -86
- package/docs/src/core/components/functional/submit/submit.md +72 -64
- package/docs/src/core/components/functional/value/value.md +22 -34
- package/docs/src/core/components/ui/alert/alert.md +58 -48
- package/docs/src/core/components/ui/badge/badge.md +34 -27
- package/docs/src/core/components/ui/button/button.md +106 -139
- package/docs/src/core/components/ui/captcha/captcha.md +32 -17
- package/docs/src/core/components/ui/card/card.md +6 -6
- package/docs/src/core/components/ui/divider/divider.md +11 -8
- package/docs/src/core/components/ui/form/checkbox/checkbox.md +42 -90
- package/docs/src/core/components/ui/form/fieldset/fieldset.md +75 -31
- package/docs/src/core/components/ui/form/form-actions/form-actions.md +16 -14
- package/docs/src/core/components/ui/form/form-layout/form-layout.md +29 -19
- package/docs/src/core/components/ui/form/input/input.md +95 -95
- package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +29 -0
- package/docs/src/core/components/ui/form/radio/radio.md +34 -55
- package/docs/src/core/components/ui/form/select/select.md +45 -60
- package/docs/src/core/components/ui/form/switch/switch.md +34 -57
- package/docs/src/core/components/ui/form/textarea/textarea.md +38 -55
- package/docs/src/core/components/ui/group/group.md +33 -35
- package/docs/src/core/components/ui/icon/icon.md +4 -4
- package/docs/src/core/components/ui/image/image.md +107 -41
- package/docs/src/core/components/ui/link/link.md +6 -6
- package/docs/src/core/components/ui/loader/loader.md +55 -30
- package/docs/src/core/components/ui/menu/menu.md +27 -27
- package/docs/src/core/components/ui/modal/modal.md +96 -72
- package/docs/src/core/components/ui/pop/pop.md +158 -80
- package/docs/src/core/components/ui/progress/progress.md +2 -2
- package/docs/src/core/components/ui/table/table.md +255 -91
- package/docs/src/core/components/ui/theme/theme.md +36 -11
- package/docs/src/core/components/ui/toast/toast.md +117 -48
- package/docs/src/core/components/ui/tooltip/tooltip.md +62 -27
- package/docs/{docs/getting-started → src/docs/_core-concept}/dataFlow.md +18 -17
- package/docs/src/docs/_core-concept/overview.md +57 -0
- package/docs/src/docs/_core-concept/subscriber.md +75 -0
- package/docs/src/docs/_decorators/ancestor-attribute.md +128 -0
- package/docs/src/docs/_decorators/auto-subscribe.md +202 -0
- package/docs/src/docs/_decorators/bind.md +167 -0
- package/docs/src/docs/_decorators/get.md +162 -0
- package/docs/src/docs/_decorators/handle.md +175 -0
- package/docs/src/docs/_decorators/on-assign.md +390 -0
- package/docs/src/docs/_decorators/patch.md +70 -0
- package/docs/src/docs/_decorators/post.md +146 -0
- package/docs/src/docs/_decorators/publish.md +55 -0
- package/docs/src/docs/_decorators/put.md +70 -0
- package/docs/src/docs/_decorators/subscribe.md +100 -0
- package/docs/src/docs/_decorators/wait-for-ancestors.md +163 -0
- package/docs/src/docs/_directives/sub.md +91 -0
- package/docs/src/docs/{getting-started → _getting-started}/ai-agents.md +3 -3
- package/docs/src/docs/_getting-started/concorde-manual-install.md +133 -0
- package/docs/src/docs/_getting-started/concorde-outside.md +33 -0
- package/docs/{docs/getting-started → src/docs/_getting-started}/create-a-component.md +6 -3
- package/docs/src/docs/{getting-started → _getting-started}/my-first-component.md +14 -5
- package/docs/src/docs/_getting-started/my-first-subscriber.md +120 -0
- package/docs/src/docs/_getting-started/pubsub.md +37 -0
- package/docs/src/docs/{getting-started → _getting-started}/start.md +13 -1
- package/docs/src/docs/{getting-started → _getting-started}/theming.md +2 -2
- package/docs/src/docs/{misc → _misc}/api-configuration.md +12 -10
- package/docs/src/docs/{misc → _misc}/dataProviderKey.md +4 -4
- package/docs/{docs/misc → src/docs/_misc}/docs-mock-api.md +13 -12
- package/docs/{docs/misc → src/docs/_misc}/dynamic-path.md +8 -8
- package/docs/{docs/misc → src/docs/_misc}/endpoint.md +8 -8
- package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
- package/docs/{docs/misc → src/docs/_misc}/html-integration.md +5 -4
- package/docs/src/docs/search/docs-search.json +4375 -2420
- package/docs/src/tsconfig.declarations.json +22 -0
- package/docs/src/tsconfig.emit.json +23 -0
- package/docs/src/tsconfig.json +2 -23
- package/gitlab/job_github_mirror.sh +39 -0
- package/index.html +89 -0
- package/package.json +22 -4
- package/public/img/og-concorde.jpg +0 -0
- package/scripts/ai-init.mjs +104 -379
- package/scripts/ai-init.test.mjs +81 -239
- package/scripts/docs-markdown-vite-plugin.ts +11 -5
- package/scripts/docs-public-url.mjs +6 -0
- package/scripts/docs.htaccess +7 -0
- package/scripts/generate-cem.mjs +244 -0
- package/scripts/generate-cem.test.mjs +122 -0
- package/scripts/generate-crawl-docs.mjs +29 -5
- package/scripts/generate-sdui-catalog.mjs +11 -10
- package/scripts/github-export.mjs +150 -0
- package/scripts/post-build-docs.js +3 -0
- package/scripts/post-build.mjs +0 -0
- package/scripts/pre-publish.mjs +2 -1
- package/scripts/site-pages.mjs +212 -0
- package/scripts/site-pages.test.mjs +116 -0
- package/site-pages/about.md +22 -0
- package/site-pages/privacy.md +32 -0
- package/src/core/components/functional/date/date.md +1 -1
- package/src/core/components/functional/example/example.ts +3 -1
- package/src/core/components/functional/if/if.ts +0 -0
- package/src/core/components/functional/list/list.demo.ts +0 -0
- package/src/core/components/functional/list/list.md +6 -2
- package/src/core/components/functional/list/list.ts +17 -4
- package/src/core/components/functional/mix/mix.md +0 -0
- package/src/core/components/functional/router/router.demo.ts +0 -0
- 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 +2 -2
- package/src/core/components/functional/sdui/example.json +0 -0
- package/src/core/components/functional/sdui/sdui-immutable.spec.ts +74 -0
- package/src/core/components/functional/sdui/sdui.ts +33 -8
- package/src/core/components/functional/sdui/types.ts +0 -0
- package/src/core/components/functional/states/states.ts +0 -0
- package/src/core/components/functional/submit/submit.spec.ts +60 -0
- package/src/core/components/functional/submit/submit.ts +6 -3
- package/src/core/components/functional/subscriber/subscriber.ts +0 -0
- package/src/core/components/functional/value/value.md +0 -0
- 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/captcha/altchaStyles.ts +0 -0
- package/src/core/components/ui/card/card.md +1 -1
- package/src/core/components/ui/form/input/input.md +19 -1
- package/src/core/components/ui/form/input/input.ts +8 -2
- package/src/core/components/ui/form/radio/radio.md +14 -0
- package/src/core/components/ui/image/image.md +17 -17
- package/src/core/components/ui/modal/modal.md +2 -2
- package/src/core/decorators/subscriber/bind.ts +9 -14
- package/src/core/decorators/subscriber/subscribe.ts +15 -9
- package/src/core/decorators/subscriber/subscribe.type-test.ts +14 -5
- package/src/core/mixins/Subscriber.ts +0 -0
- package/src/core/utils/DataBindObserver.ts +0 -0
- package/src/core/utils/Objects.ts +0 -0
- package/src/core/utils/PublisherProxy.ts +166 -125
- package/src/core/utils/deepReadonly.spec.ts +66 -0
- package/src/core/utils/deepReadonly.ts +71 -0
- package/src/core/utils/immutableValue.spec.ts +54 -0
- package/src/core/utils/immutableValue.ts +102 -0
- package/src/core/utils/nestedDotForm.spec.ts +88 -0
- package/src/core/utils/publisherImmutable.spec.ts +76 -0
- package/src/core/utils/route.ts +0 -0
- package/src/core/utils/strictGet.spec.ts +61 -0
- package/src/core/utils/strictGet.ts +102 -0
- package/src/css.d.ts +19 -0
- package/src/docs/components/docs-demo-sources.ts +3 -3
- package/src/docs/decorators/bind.md +23 -24
- package/src/docs/docs-location.spec.ts +10 -0
- package/src/docs/docs-location.ts +10 -0
- package/src/docs/example/decorators-demo-bind-demos.ts +11 -28
- package/src/docs/example/docs-toggle-demos.ts +1 -1
- package/src/docs/example/users.ts +0 -0
- package/src/docs/getting-started/ai-agents.md +29 -55
- package/src/docs/getting-started/dataFlow.md +2 -2
- package/src/docs/home/home.ts +3 -1
- package/src/docs/misc/publisher-get-immutability-docs-crawl.json +902 -0
- package/src/docs/misc/publisher-get-immutability-docs-recheck.json +13 -0
- package/src/docs/misc/publisher-get-immutability-study.md +229 -0
- package/src/docs/navigation/navigation.ts +5 -1
- package/src/docs/search/docs-search.json +358 -58
- package/src/docs/search/markdown-renderer.ts +6 -1
- package/src/docs/tailwind/css/docs/content.css +4 -5
- package/src/tsconfig.declarations.json +22 -0
- package/src/tsconfig.emit.json +23 -0
- package/src/tsconfig.json +53 -5
- package/src/tsconfig.tsbuildinfo +1 -1
- 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 +0 -4103
- 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 +0 -2556
- package/.taste-skill/before/tablet-fold.jpg +0 -0
- package/.taste-skill/before/tablet-page-01.jpg +0 -0
- package/.taste-skill/direction.json +0 -510
- package/.taste-skill/notes.md +0 -84
- 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 +0 -1973
- 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/AUDIT.md +0 -228
- package/PLAN-AMELIORATION.md +0 -220
- package/PLAN-DOCS-AGENTS.md +0 -80
- package/ai/AGENTS.md +0 -56
- package/ai/cursor/rules/concorde-menu.mdc +0 -15
- package/ai/cursor/rules/concorde-scope.mdc +0 -14
- package/ai/cursor/rules/concorde-theme.mdc +0 -13
- package/ai/cursor/rules/concorde.mdc +0 -66
- package/ai/jetbrains/rules/concorde.md +0 -53
- package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
- package/ai/skills/concorde-imports/SKILL.md +0 -78
- package/ai/skills/concorde-menu/SKILL.md +0 -74
- package/ai/skills/concorde-scope/SKILL.md +0 -70
- package/ai/skills/concorde-theme/SKILL.md +0 -57
- package/docs/.htaccess +0 -75
- package/docs/404.html +0 -15
- package/docs/404.md +0 -5
- package/docs/assets/index-BgG6FFPt.js +0 -11765
- package/docs/assets/index-x89XINSG.css +0 -1
- package/docs/core/components/functional/date/date.html +0 -211
- package/docs/core/components/functional/date/date.md +0 -150
- package/docs/core/components/functional/fetch/fetch.html +0 -180
- package/docs/core/components/functional/fetch/fetch.md +0 -108
- package/docs/core/components/functional/if/if.html +0 -65
- package/docs/core/components/functional/if/if.md +0 -34
- package/docs/core/components/functional/jsonata/jsonata.html +0 -110
- package/docs/core/components/functional/jsonata/jsonata.md +0 -61
- package/docs/core/components/functional/list/list.html +0 -198
- package/docs/core/components/functional/list/list.md +0 -121
- package/docs/core/components/functional/mix/mix.html +0 -78
- package/docs/core/components/functional/mix/mix.md +0 -46
- package/docs/core/components/functional/queue/queue.html +0 -155
- package/docs/core/components/functional/queue/queue.md +0 -51
- package/docs/core/components/functional/router/router.html +0 -154
- package/docs/core/components/functional/router/router.md +0 -93
- package/docs/core/components/functional/sdui/sdui-extension-points.md +0 -94
- package/docs/core/components/functional/sdui/sdui.html +0 -397
- package/docs/core/components/functional/sdui/sdui.md +0 -307
- package/docs/core/components/functional/states/states.html +0 -141
- package/docs/core/components/functional/states/states.md +0 -112
- package/docs/core/components/functional/submit/submit.html +0 -178
- package/docs/core/components/functional/submit/submit.md +0 -106
- package/docs/core/components/functional/subscriber/subscriber.md +0 -91
- package/docs/core/components/functional/translation/translation.html +0 -60
- package/docs/core/components/functional/translation/translation.md +0 -38
- package/docs/core/components/functional/value/value.html +0 -81
- package/docs/core/components/functional/value/value.md +0 -47
- package/docs/core/components/ui/alert/alert.md +0 -186
- package/docs/core/components/ui/alert-messages/alert-messages.md +0 -85
- package/docs/core/components/ui/badge/badge.md +0 -181
- package/docs/core/components/ui/button/button.html +0 -309
- package/docs/core/components/ui/button/button.md +0 -216
- package/docs/core/components/ui/captcha/captcha.html +0 -80
- package/docs/core/components/ui/captcha/captcha.md +0 -56
- package/docs/core/components/ui/card/card.md +0 -215
- package/docs/core/components/ui/divider/divider.md +0 -126
- package/docs/core/components/ui/form/checkbox/checkbox.html +0 -200
- package/docs/core/components/ui/form/checkbox/checkbox.md +0 -125
- package/docs/core/components/ui/form/fieldset/fieldset.html +0 -238
- package/docs/core/components/ui/form/fieldset/fieldset.md +0 -161
- package/docs/core/components/ui/form/form-actions/form-actions.md +0 -98
- package/docs/core/components/ui/form/form-layout/form-layout.html +0 -115
- package/docs/core/components/ui/form/form-layout/form-layout.md +0 -109
- package/docs/core/components/ui/form/input/input.html +0 -235
- package/docs/core/components/ui/form/input/input.md +0 -142
- package/docs/core/components/ui/form/radio/radio.html +0 -144
- package/docs/core/components/ui/form/radio/radio.md +0 -78
- package/docs/core/components/ui/form/select/select.html +0 -178
- package/docs/core/components/ui/form/select/select.md +0 -86
- package/docs/core/components/ui/form/switch/switch.html +0 -146
- package/docs/core/components/ui/form/switch/switch.md +0 -80
- package/docs/core/components/ui/form/textarea/textarea.html +0 -162
- package/docs/core/components/ui/form/textarea/textarea.md +0 -82
- package/docs/core/components/ui/group/group.html +0 -113
- package/docs/core/components/ui/group/group.md +0 -77
- package/docs/core/components/ui/icon/icon.md +0 -214
- package/docs/core/components/ui/image/image.html +0 -194
- package/docs/core/components/ui/image/image.md +0 -167
- package/docs/core/components/ui/link/link.md +0 -81
- package/docs/core/components/ui/loader/loader.html +0 -114
- package/docs/core/components/ui/loader/loader.md +0 -87
- package/docs/core/components/ui/menu/menu.md +0 -370
- package/docs/core/components/ui/modal/modal.html +0 -324
- package/docs/core/components/ui/modal/modal.md +0 -211
- package/docs/core/components/ui/pop/pop.html +0 -250
- package/docs/core/components/ui/pop/pop.md +0 -216
- package/docs/core/components/ui/progress/progress.md +0 -109
- package/docs/core/components/ui/table/table.html +0 -333
- package/docs/core/components/ui/table/table.md +0 -267
- package/docs/core/components/ui/theme/theme.html +0 -116
- package/docs/core/components/ui/theme/theme.md +0 -97
- package/docs/core/components/ui/toast/toast.html +0 -185
- package/docs/core/components/ui/toast/toast.md +0 -147
- package/docs/core/components/ui/tooltip/tooltip.html +0 -112
- package/docs/core/components/ui/tooltip/tooltip.md +0 -89
- package/docs/docs/decorators/ancestor-attribute.html +0 -71
- package/docs/docs/decorators/ancestor-attribute.md +0 -59
- package/docs/docs/decorators/auto-subscribe.html +0 -61
- package/docs/docs/decorators/auto-subscribe.md +0 -40
- package/docs/docs/decorators/bind.html +0 -86
- package/docs/docs/decorators/bind.md +0 -77
- package/docs/docs/decorators/get.html +0 -166
- package/docs/docs/decorators/get.md +0 -160
- package/docs/docs/decorators/handle.html +0 -139
- package/docs/docs/decorators/handle.md +0 -119
- package/docs/docs/decorators/on-assign.html +0 -72
- package/docs/docs/decorators/on-assign.md +0 -63
- package/docs/docs/decorators/patch.html +0 -76
- package/docs/docs/decorators/patch.md +0 -44
- package/docs/docs/decorators/post.html +0 -150
- package/docs/docs/decorators/post.md +0 -134
- package/docs/docs/decorators/publish.html +0 -74
- package/docs/docs/decorators/publish.md +0 -56
- package/docs/docs/decorators/put.html +0 -83
- package/docs/docs/decorators/put.md +0 -51
- package/docs/docs/decorators/subscribe.html +0 -91
- package/docs/docs/decorators/subscribe.md +0 -87
- package/docs/docs/decorators/wait-for-ancestors.html +0 -82
- package/docs/docs/decorators/wait-for-ancestors.md +0 -76
- package/docs/docs/directives/sub.html +0 -79
- package/docs/docs/directives/sub.md +0 -75
- package/docs/docs/directives/t.html +0 -91
- package/docs/docs/directives/t.md +0 -73
- package/docs/docs/getting-started/ai-agents.md +0 -76
- package/docs/docs/getting-started/components.html +0 -27
- package/docs/docs/getting-started/components.md +0 -5
- package/docs/docs/getting-started/installation.html +0 -69
- package/docs/docs/getting-started/installation.md +0 -36
- package/docs/docs/getting-started/my-first-component.md +0 -227
- package/docs/docs/getting-started/start.html +0 -47
- package/docs/docs/getting-started/start.md +0 -35
- package/docs/docs/getting-started/theming.md +0 -253
- package/docs/docs/index.html +0 -99
- package/docs/docs/misc/api-configuration.md +0 -79
- package/docs/docs/misc/dataProviderKey.md +0 -168
- package/docs/hubs/decorators.html +0 -443
- package/docs/hubs/form-components.html +0 -404
- package/docs/hubs/remote-data.html +0 -371
- 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 +0 -28
- package/docs/index.md +0 -22
- package/docs/src/core/components/functional/translation/translation.md +0 -38
- package/docs/src/docs/decorators/ancestor-attribute.md +0 -59
- package/docs/src/docs/decorators/auto-subscribe.md +0 -40
- package/docs/src/docs/decorators/bind.md +0 -77
- package/docs/src/docs/decorators/get.md +0 -160
- package/docs/src/docs/decorators/handle.md +0 -119
- package/docs/src/docs/decorators/on-assign.md +0 -63
- package/docs/src/docs/decorators/patch.md +0 -44
- package/docs/src/docs/decorators/post.md +0 -134
- package/docs/src/docs/decorators/publish.md +0 -56
- package/docs/src/docs/decorators/put.md +0 -51
- package/docs/src/docs/decorators/subscribe.md +0 -87
- package/docs/src/docs/decorators/wait-for-ancestors.md +0 -76
- package/docs/src/docs/directives/sub.md +0 -75
- package/docs/src/docs/directives/t.md +0 -73
- package/docs/src/docs/getting-started/components.md +0 -5
- package/docs/src/docs/getting-started/create-a-component.md +0 -136
- package/docs/src/docs/getting-started/dataFlow.md +0 -87
- package/docs/src/docs/getting-started/installation.md +0 -36
- package/docs/src/docs/misc/docs-mock-api.md +0 -62
- package/docs/src/docs/misc/dynamic-path.md +0 -71
- package/docs/src/docs/misc/endpoint.md +0 -45
- package/docs/src/docs/misc/html-integration.md +0 -14
- /package/{docs → dist}/img/concorde/plane_01.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_02.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_03.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_04.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_05.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_06.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_07.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_08.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_09.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_10.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_11.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_12.jpg +0 -0
- /package/{docs → dist}/img/concorde/plane_13.jpg +0 -0
|
@@ -780,7 +780,7 @@
|
|
|
780
780
|
}
|
|
781
781
|
},
|
|
782
782
|
{
|
|
783
|
-
"search": "sonic-list renders one row per entry of its props array, either set directly or loaded with fetch.
|
|
783
|
+
"search": "sonic-list renders one row per entry of its props array, either set directly or loaded with fetch. In TypeScript, prefer the .items row renderer (with .separator · .noItems · .skeleton); <template> children are for plain HTML hosts without Lit. Each row gets its own data provider at <dataProvider>/list-item/<index>.\n",
|
|
784
784
|
"files": {
|
|
785
785
|
"core/components/functional/list/list.md": {
|
|
786
786
|
"title": "List",
|
|
@@ -810,7 +810,7 @@
|
|
|
810
810
|
}
|
|
811
811
|
},
|
|
812
812
|
{
|
|
813
|
-
"search": "Fetch attributes (lazyload · refetchEveryMs · headers · authentication) are shared with Fetch.\n",
|
|
813
|
+
"search": "This example uses HTML templates; from Lit, use the row renderer instead. Fetch attributes (lazyload · refetchEveryMs · headers · authentication) are shared with Fetch.\n",
|
|
814
814
|
"files": {
|
|
815
815
|
"core/components/functional/list/list.md": {
|
|
816
816
|
"title": "List",
|
|
@@ -914,6 +914,36 @@
|
|
|
914
914
|
}
|
|
915
915
|
}
|
|
916
916
|
},
|
|
917
|
+
{
|
|
918
|
+
"search": "Properties (TypeScript / Lit, preferred):\n",
|
|
919
|
+
"files": {
|
|
920
|
+
"core/components/functional/list/list.md": {
|
|
921
|
+
"title": "List",
|
|
922
|
+
"hashes": {
|
|
923
|
+
"api-reference": {
|
|
924
|
+
"count": 1,
|
|
925
|
+
"title": "API reference",
|
|
926
|
+
"type": "paragraph"
|
|
927
|
+
}
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
}
|
|
931
|
+
},
|
|
932
|
+
{
|
|
933
|
+
"search": "Templates (plain HTML hosts):\n",
|
|
934
|
+
"files": {
|
|
935
|
+
"core/components/functional/list/list.md": {
|
|
936
|
+
"title": "List",
|
|
937
|
+
"hashes": {
|
|
938
|
+
"api-reference": {
|
|
939
|
+
"count": 1,
|
|
940
|
+
"title": "API reference",
|
|
941
|
+
"type": "paragraph"
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
}
|
|
946
|
+
},
|
|
917
947
|
{
|
|
918
948
|
"search": "Mix",
|
|
919
949
|
"files": {
|
|
@@ -1290,7 +1320,7 @@
|
|
|
1290
1320
|
}
|
|
1291
1321
|
},
|
|
1292
1322
|
{
|
|
1293
|
-
"search": "Aide-mémoire pour les dépôts externes (adaptateurs, shells).Pas une page de la doc site — à lire dans le package npm(node_modules/@supersoniks/concorde/src/core/components/functional/sdui/sdui-extension-points.md).La doc utilisateur
|
|
1323
|
+
"search": "Aide-mémoire pour les dépôts externes (adaptateurs, shells).Pas une page de la doc site — à lire dans le package npm(node_modules/@supersoniks/concorde/src/core/components/functional/sdui/sdui-extension-points.md).La doc utilisateur reste sdui.md (auto-suffisante).\n",
|
|
1294
1324
|
"files": {
|
|
1295
1325
|
"core/components/functional/sdui/sdui-extension-points.md": {
|
|
1296
1326
|
"title": "SDUI — points d’extension publics",
|
|
@@ -3845,14 +3875,29 @@
|
|
|
3845
3875
|
}
|
|
3846
3876
|
},
|
|
3847
3877
|
{
|
|
3848
|
-
"search": "
|
|
3878
|
+
"search": "A dot in name stores a nested object in the form publisher.\n",
|
|
3849
3879
|
"files": {
|
|
3850
3880
|
"core/components/ui/form/input/input.md": {
|
|
3851
3881
|
"title": "Input",
|
|
3852
3882
|
"hashes": {
|
|
3853
|
-
"
|
|
3883
|
+
"nested-keys": {
|
|
3854
3884
|
"count": 1,
|
|
3855
|
-
"title": "
|
|
3885
|
+
"title": "Nested keys",
|
|
3886
|
+
"type": "paragraph"
|
|
3887
|
+
}
|
|
3888
|
+
}
|
|
3889
|
+
}
|
|
3890
|
+
}
|
|
3891
|
+
},
|
|
3892
|
+
{
|
|
3893
|
+
"search": "sameValueAs sets pattern to the value of another field in the same store, for confirmation fields. Dot paths are supported.\n",
|
|
3894
|
+
"files": {
|
|
3895
|
+
"core/components/ui/form/input/input.md": {
|
|
3896
|
+
"title": "Input",
|
|
3897
|
+
"hashes": {
|
|
3898
|
+
"nested-keys": {
|
|
3899
|
+
"count": 1,
|
|
3900
|
+
"title": "Nested keys",
|
|
3856
3901
|
"type": "paragraph"
|
|
3857
3902
|
}
|
|
3858
3903
|
}
|
|
@@ -3919,6 +3964,21 @@
|
|
|
3919
3964
|
}
|
|
3920
3965
|
}
|
|
3921
3966
|
},
|
|
3967
|
+
{
|
|
3968
|
+
"search": "A dot in name writes a nested object in the form store (same as Submit nested fields).\n",
|
|
3969
|
+
"files": {
|
|
3970
|
+
"core/components/ui/form/radio/radio.md": {
|
|
3971
|
+
"title": "Radio",
|
|
3972
|
+
"hashes": {
|
|
3973
|
+
"nested-keys": {
|
|
3974
|
+
"count": 1,
|
|
3975
|
+
"title": "Nested keys",
|
|
3976
|
+
"type": "paragraph"
|
|
3977
|
+
}
|
|
3978
|
+
}
|
|
3979
|
+
}
|
|
3980
|
+
}
|
|
3981
|
+
},
|
|
3922
3982
|
{
|
|
3923
3983
|
"search": "The radio group writes one status value to the store used as dataFilterProvider by a sonic-queue. See Checkbox for the multi-value version.\n",
|
|
3924
3984
|
"files": {
|
|
@@ -6020,7 +6080,7 @@
|
|
|
6020
6080
|
}
|
|
6021
6081
|
},
|
|
6022
6082
|
{
|
|
6023
|
-
"search": "
|
|
6083
|
+
"search": "@bind(key) keeps a class property and one path of the DataProvider store in sync. With { reflect: true } the sync goes both ways: the property follows the store, and each assignment is written back to it. For one direction only, use the complementary decorators: @subscribe to read, @publish to write. See Data flow for the overall model.\n",
|
|
6024
6084
|
"files": {
|
|
6025
6085
|
"docs/decorators/bind.md": {
|
|
6026
6086
|
"title": "@bind",
|
|
@@ -6035,7 +6095,7 @@
|
|
|
6035
6095
|
}
|
|
6036
6096
|
},
|
|
6037
6097
|
{
|
|
6038
|
-
"search": "
|
|
6098
|
+
"search": "type Flight = { flight: string; gate: string; boarded: number };\nconst flightKey = new DataProviderKey<Flight>("flight");\n",
|
|
6039
6099
|
"files": {
|
|
6040
6100
|
"docs/decorators/bind.md": {
|
|
6041
6101
|
"title": "@bind",
|
|
@@ -6050,29 +6110,14 @@
|
|
|
6050
6110
|
}
|
|
6051
6111
|
},
|
|
6052
6112
|
{
|
|
6053
|
-
"search": "
|
|
6054
|
-
"files": {
|
|
6055
|
-
"docs/decorators/bind.md": {
|
|
6056
|
-
"title": "@bind",
|
|
6057
|
-
"hashes": {
|
|
6058
|
-
"basic-usage": {
|
|
6059
|
-
"count": 1,
|
|
6060
|
-
"title": "Basic usage",
|
|
6061
|
-
"type": "paragraph"
|
|
6062
|
-
}
|
|
6063
|
-
}
|
|
6064
|
-
}
|
|
6065
|
-
}
|
|
6066
|
-
},
|
|
6067
|
-
{
|
|
6068
|
-
"search": "With a DataProviderKey<T>, TypeScript checks that the property type matches T at that path.\n",
|
|
6113
|
+
"search": "@bind(flightKey.boarded, { reflect: true })\n@state()\nboarded = 0;\n \n\n",
|
|
6069
6114
|
"files": {
|
|
6070
6115
|
"docs/decorators/bind.md": {
|
|
6071
6116
|
"title": "@bind",
|
|
6072
6117
|
"hashes": {
|
|
6073
|
-
"
|
|
6118
|
+
"import": {
|
|
6074
6119
|
"count": 1,
|
|
6075
|
-
"title": "
|
|
6120
|
+
"title": "Import",
|
|
6076
6121
|
"type": "paragraph"
|
|
6077
6122
|
}
|
|
6078
6123
|
}
|
|
@@ -6080,14 +6125,14 @@
|
|
|
6080
6125
|
}
|
|
6081
6126
|
},
|
|
6082
6127
|
{
|
|
6083
|
-
"search": "
|
|
6128
|
+
"search": "The key is a DataProviderKey: TypeScript checks that the property type matches T at that path. The property updates each time the store value changes. Add @state() so Lit re-renders.\n",
|
|
6084
6129
|
"files": {
|
|
6085
6130
|
"docs/decorators/bind.md": {
|
|
6086
6131
|
"title": "@bind",
|
|
6087
6132
|
"hashes": {
|
|
6088
|
-
"
|
|
6133
|
+
"basic-usage": {
|
|
6089
6134
|
"count": 1,
|
|
6090
|
-
"title": "
|
|
6135
|
+
"title": "Basic usage",
|
|
6091
6136
|
"type": "paragraph"
|
|
6092
6137
|
}
|
|
6093
6138
|
}
|
|
@@ -6095,14 +6140,14 @@
|
|
|
6095
6140
|
}
|
|
6096
6141
|
},
|
|
6097
6142
|
{
|
|
6098
|
-
"search": "
|
|
6143
|
+
"search": "With reflect: true, each assignment to the property calls set() at the key path, so every other subscriber sees the new value. An internal guard prevents update loops. Without reflect (the default), assigning the property does not touch the store, and @bind behaves like @subscribe.\n",
|
|
6099
6144
|
"files": {
|
|
6100
6145
|
"docs/decorators/bind.md": {
|
|
6101
6146
|
"title": "@bind",
|
|
6102
6147
|
"hashes": {
|
|
6103
|
-
"
|
|
6148
|
+
"reflect": {
|
|
6104
6149
|
"count": 1,
|
|
6105
|
-
"title": "
|
|
6150
|
+
"title": "Reflect",
|
|
6106
6151
|
"type": "paragraph"
|
|
6107
6152
|
}
|
|
6108
6153
|
}
|
|
@@ -6110,14 +6155,14 @@
|
|
|
6110
6155
|
}
|
|
6111
6156
|
},
|
|
6112
6157
|
{
|
|
6113
|
-
"search": "
|
|
6158
|
+
"search": "Placeholders such as ${index} are resolved from properties of the same component, and @bind re-subscribes when they change. Declare them in the key's second generic and write them in a plain string, not a backtick template literal. While a placeholder is null or undefined the binding is inactive; { skipEmptyPlaceholder: true } also waits on "". Full rules: Dynamic paths.\n",
|
|
6114
6159
|
"files": {
|
|
6115
6160
|
"docs/decorators/bind.md": {
|
|
6116
6161
|
"title": "@bind",
|
|
6117
6162
|
"hashes": {
|
|
6118
|
-
"
|
|
6163
|
+
"dynamic-path": {
|
|
6119
6164
|
"count": 1,
|
|
6120
|
-
"title": "
|
|
6165
|
+
"title": "Dynamic path",
|
|
6121
6166
|
"type": "paragraph"
|
|
6122
6167
|
}
|
|
6123
6168
|
}
|
|
@@ -6125,7 +6170,7 @@
|
|
|
6125
6170
|
}
|
|
6126
6171
|
},
|
|
6127
6172
|
{
|
|
6128
|
-
"search": "
|
|
6173
|
+
"search": "@bind(personKey)\n@state()\nperson: Person | null = null;\n \n\n",
|
|
6129
6174
|
"files": {
|
|
6130
6175
|
"docs/decorators/bind.md": {
|
|
6131
6176
|
"title": "@bind",
|
|
@@ -8135,12 +8180,12 @@
|
|
|
8135
8180
|
}
|
|
8136
8181
|
},
|
|
8137
8182
|
{
|
|
8138
|
-
"search": "AI agents (
|
|
8183
|
+
"search": "AI agents (skill)",
|
|
8139
8184
|
"files": {
|
|
8140
8185
|
"docs/getting-started/ai-agents.md": {
|
|
8141
|
-
"title": "AI agents (
|
|
8186
|
+
"title": "AI agents (skill)",
|
|
8142
8187
|
"hashes": {
|
|
8143
|
-
"ai-agents-
|
|
8188
|
+
"ai-agents-skill": {
|
|
8144
8189
|
"count": 1,
|
|
8145
8190
|
"title": "",
|
|
8146
8191
|
"type": "page"
|
|
@@ -8150,12 +8195,12 @@
|
|
|
8150
8195
|
}
|
|
8151
8196
|
},
|
|
8152
8197
|
{
|
|
8153
|
-
"search": "Concorde ships
|
|
8198
|
+
"search": "Concorde ships one Agent Skill, concorde, so coding agents follow the framework patterns. Cursor, Claude Code, JetBrains Junie and other agents load it on their own when they work on Concorde code; there is nothing to add to your AGENTS.md.\n",
|
|
8154
8199
|
"files": {
|
|
8155
8200
|
"docs/getting-started/ai-agents.md": {
|
|
8156
|
-
"title": "AI agents (
|
|
8201
|
+
"title": "AI agents (skill)",
|
|
8157
8202
|
"hashes": {
|
|
8158
|
-
"ai-agents-
|
|
8203
|
+
"ai-agents-skill": {
|
|
8159
8204
|
"count": 1,
|
|
8160
8205
|
"title": "",
|
|
8161
8206
|
"type": "paragraph"
|
|
@@ -8165,12 +8210,12 @@
|
|
|
8165
8210
|
}
|
|
8166
8211
|
},
|
|
8167
8212
|
{
|
|
8168
|
-
"search": "On a starter project, run yarn ai:sync after install. On an existing project, install Concorde first, then
|
|
8213
|
+
"search": "On a starter project, run yarn ai:sync after install. On an existing project, install Concorde first, then run ai-init.\n",
|
|
8169
8214
|
"files": {
|
|
8170
8215
|
"docs/getting-started/ai-agents.md": {
|
|
8171
|
-
"title": "AI agents (
|
|
8216
|
+
"title": "AI agents (skill)",
|
|
8172
8217
|
"hashes": {
|
|
8173
|
-
"ai-agents-
|
|
8218
|
+
"ai-agents-skill": {
|
|
8174
8219
|
"count": 1,
|
|
8175
8220
|
"title": "",
|
|
8176
8221
|
"type": "paragraph"
|
|
@@ -8180,14 +8225,44 @@
|
|
|
8180
8225
|
}
|
|
8181
8226
|
},
|
|
8182
8227
|
{
|
|
8183
|
-
"search": "
|
|
8228
|
+
"search": "Re-run the same command after each Concorde upgrade to refresh the skill.\n",
|
|
8229
|
+
"files": {
|
|
8230
|
+
"docs/getting-started/ai-agents.md": {
|
|
8231
|
+
"title": "AI agents (skill)",
|
|
8232
|
+
"hashes": {
|
|
8233
|
+
"commands": {
|
|
8234
|
+
"count": 1,
|
|
8235
|
+
"title": "Commands",
|
|
8236
|
+
"type": "paragraph"
|
|
8237
|
+
}
|
|
8238
|
+
}
|
|
8239
|
+
}
|
|
8240
|
+
}
|
|
8241
|
+
},
|
|
8242
|
+
{
|
|
8243
|
+
"search": "SKILL.md is the entry point: where to find the truth (the project, these docs, custom-elements.json), the critical rules and the imports. Details live in rules/ files that the agent reads only for the topic at hand.\n",
|
|
8244
|
+
"files": {
|
|
8245
|
+
"docs/getting-started/ai-agents.md": {
|
|
8246
|
+
"title": "AI agents (skill)",
|
|
8247
|
+
"hashes": {
|
|
8248
|
+
"the-skill": {
|
|
8249
|
+
"count": 1,
|
|
8250
|
+
"title": "The skill",
|
|
8251
|
+
"type": "paragraph"
|
|
8252
|
+
}
|
|
8253
|
+
}
|
|
8254
|
+
}
|
|
8255
|
+
}
|
|
8256
|
+
},
|
|
8257
|
+
{
|
|
8258
|
+
"search": "Where symlinks are not allowed (some Windows setups), the skill is copied instead. Your own skills in these folders are never touched. Commit .agents/ and the links if your team shares agent settings.\n",
|
|
8184
8259
|
"files": {
|
|
8185
8260
|
"docs/getting-started/ai-agents.md": {
|
|
8186
|
-
"title": "AI agents (
|
|
8261
|
+
"title": "AI agents (skill)",
|
|
8187
8262
|
"hashes": {
|
|
8188
|
-
"
|
|
8263
|
+
"what-gets-installed": {
|
|
8189
8264
|
"count": 1,
|
|
8190
|
-
"title": "
|
|
8265
|
+
"title": "What gets installed",
|
|
8191
8266
|
"type": "paragraph"
|
|
8192
8267
|
}
|
|
8193
8268
|
}
|
|
@@ -8195,14 +8270,14 @@
|
|
|
8195
8270
|
}
|
|
8196
8271
|
},
|
|
8197
8272
|
{
|
|
8198
|
-
"search": "
|
|
8273
|
+
"search": "AGENTS.md stays yours: ai-init never reads or writes it.\n",
|
|
8199
8274
|
"files": {
|
|
8200
8275
|
"docs/getting-started/ai-agents.md": {
|
|
8201
|
-
"title": "AI agents (
|
|
8276
|
+
"title": "AI agents (skill)",
|
|
8202
8277
|
"hashes": {
|
|
8203
|
-
"
|
|
8278
|
+
"what-gets-installed": {
|
|
8204
8279
|
"count": 1,
|
|
8205
|
-
"title": "
|
|
8280
|
+
"title": "What gets installed",
|
|
8206
8281
|
"type": "paragraph"
|
|
8207
8282
|
}
|
|
8208
8283
|
}
|
|
@@ -8210,14 +8285,14 @@
|
|
|
8210
8285
|
}
|
|
8211
8286
|
},
|
|
8212
8287
|
{
|
|
8213
|
-
"search": "Source files in the npm package: node_modules/@supersoniks/concorde/ai/
|
|
8288
|
+
"search": "Source files in the npm package: node_modules/@supersoniks/concorde/ai/skills/concorde/.\n",
|
|
8214
8289
|
"files": {
|
|
8215
8290
|
"docs/getting-started/ai-agents.md": {
|
|
8216
|
-
"title": "AI agents (
|
|
8291
|
+
"title": "AI agents (skill)",
|
|
8217
8292
|
"hashes": {
|
|
8218
|
-
"
|
|
8293
|
+
"flags": {
|
|
8219
8294
|
"count": 1,
|
|
8220
|
-
"title": "
|
|
8295
|
+
"title": "Flags",
|
|
8221
8296
|
"type": "paragraph"
|
|
8222
8297
|
}
|
|
8223
8298
|
}
|
|
@@ -8570,7 +8645,7 @@
|
|
|
8570
8645
|
}
|
|
8571
8646
|
},
|
|
8572
8647
|
{
|
|
8573
|
-
"search": "
|
|
8648
|
+
"search": "Agent skill: concorde (rules/data.md), see AI agents.\n",
|
|
8574
8649
|
"files": {
|
|
8575
8650
|
"docs/getting-started/dataFlow.md": {
|
|
8576
8651
|
"title": "Data flow",
|
|
@@ -10283,5 +10358,230 @@
|
|
|
10283
10358
|
}
|
|
10284
10359
|
}
|
|
10285
10360
|
}
|
|
10361
|
+
},
|
|
10362
|
+
{
|
|
10363
|
+
"search": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10364
|
+
"files": {
|
|
10365
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10366
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10367
|
+
"hashes": {
|
|
10368
|
+
"étude--immutabilité-dataprovider--get-redmine-79567": {
|
|
10369
|
+
"count": 1,
|
|
10370
|
+
"title": "",
|
|
10371
|
+
"type": "page"
|
|
10372
|
+
}
|
|
10373
|
+
}
|
|
10374
|
+
}
|
|
10375
|
+
}
|
|
10376
|
+
},
|
|
10377
|
+
{
|
|
10378
|
+
"search": "Nature : étude d’opportunité + ADR de direction.Branche : 79567_publisher_get_immutability_study.Recadrage (oct. 2026) : la cible n’est plus un empilement de gardes opt-in, mais un store immutable clair.\n",
|
|
10379
|
+
"files": {
|
|
10380
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10381
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10382
|
+
"hashes": {
|
|
10383
|
+
"étude--immutabilité-dataprovider--get-redmine-79567": {
|
|
10384
|
+
"count": 1,
|
|
10385
|
+
"title": "",
|
|
10386
|
+
"type": "paragraph"
|
|
10387
|
+
}
|
|
10388
|
+
}
|
|
10389
|
+
}
|
|
10390
|
+
}
|
|
10391
|
+
},
|
|
10392
|
+
{
|
|
10393
|
+
"search": "Le publisher possède les données. On ne mute jamais. On remplace.\n",
|
|
10394
|
+
"files": {
|
|
10395
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10396
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10397
|
+
"hashes": {
|
|
10398
|
+
"contrat-cible": {
|
|
10399
|
+
"count": 1,
|
|
10400
|
+
"title": "Contrat cible",
|
|
10401
|
+
"type": "paragraph"
|
|
10402
|
+
}
|
|
10403
|
+
}
|
|
10404
|
+
}
|
|
10405
|
+
}
|
|
10406
|
+
},
|
|
10407
|
+
{
|
|
10408
|
+
"search": "Empiler DeepReadonly + strictGet warn/throw + clone parfois = pansements autour d’un moteur encore mutable. Utile en radar de migration, pas comme architecture cible.\n",
|
|
10409
|
+
"files": {
|
|
10410
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10411
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10412
|
+
"hashes": {
|
|
10413
|
+
"ce-quon-ne-garde-pas-comme-design-produit": {
|
|
10414
|
+
"count": 1,
|
|
10415
|
+
"title": "Ce qu’on ne garde pas comme design produit",
|
|
10416
|
+
"type": "paragraph"
|
|
10417
|
+
}
|
|
10418
|
+
}
|
|
10419
|
+
}
|
|
10420
|
+
}
|
|
10421
|
+
},
|
|
10422
|
+
{
|
|
10423
|
+
"search": "Refonte du moteur PublisherProxy : plus de _value_[k] = … / delete _value_[k] / sync parent par mutation. Updates immutables (Immer ou setIn maison) sur tout chemin d’écriture (y compris traps Proxy / sous-proxies).\n",
|
|
10424
|
+
"files": {
|
|
10425
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10426
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10427
|
+
"hashes": {
|
|
10428
|
+
"conséquence-technique": {
|
|
10429
|
+
"count": 1,
|
|
10430
|
+
"title": "Conséquence technique",
|
|
10431
|
+
"type": "paragraph"
|
|
10432
|
+
}
|
|
10433
|
+
}
|
|
10434
|
+
}
|
|
10435
|
+
}
|
|
10436
|
+
},
|
|
10437
|
+
{
|
|
10438
|
+
"search": "Aujourd’hui get() renvoie la référence live de _value_. Une mutation locale (cart.items.push…) contourne set et les listeners → état partagé / UI désynchronisés.\n",
|
|
10439
|
+
"files": {
|
|
10440
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10441
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10442
|
+
"hashes": {
|
|
10443
|
+
"1-problème-rappel": {
|
|
10444
|
+
"count": 1,
|
|
10445
|
+
"title": "1. Problème (rappel)",
|
|
10446
|
+
"type": "paragraph"
|
|
10447
|
+
}
|
|
10448
|
+
}
|
|
10449
|
+
}
|
|
10450
|
+
}
|
|
10451
|
+
},
|
|
10452
|
+
{
|
|
10453
|
+
"search": "Écritures « officielles » (set, sous-proxies, publisher.clé = …) notifient ; le trou est get + mutation et réutilisation de la ref passée à set.\n",
|
|
10454
|
+
"files": {
|
|
10455
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10456
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10457
|
+
"hashes": {
|
|
10458
|
+
"1-problème-rappel": {
|
|
10459
|
+
"count": 1,
|
|
10460
|
+
"title": "1. Problème (rappel)",
|
|
10461
|
+
"type": "paragraph"
|
|
10462
|
+
}
|
|
10463
|
+
}
|
|
10464
|
+
}
|
|
10465
|
+
}
|
|
10466
|
+
},
|
|
10467
|
+
{
|
|
10468
|
+
"search": "Fichier central : src/core/utils/PublisherProxy.ts.\n",
|
|
10469
|
+
"files": {
|
|
10470
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10471
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10472
|
+
"hashes": {
|
|
10473
|
+
"1-problème-rappel": {
|
|
10474
|
+
"count": 1,
|
|
10475
|
+
"title": "1. Problème (rappel)",
|
|
10476
|
+
"type": "paragraph"
|
|
10477
|
+
}
|
|
10478
|
+
}
|
|
10479
|
+
}
|
|
10480
|
+
}
|
|
10481
|
+
},
|
|
10482
|
+
{
|
|
10483
|
+
"search": "Le modèle F met le coût là où il est acceptable (écritures), avec une sémantique nette.\n",
|
|
10484
|
+
"files": {
|
|
10485
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10486
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10487
|
+
"hashes": {
|
|
10488
|
+
"perf-ordre-de-grandeur": {
|
|
10489
|
+
"count": 1,
|
|
10490
|
+
"title": "Perf (ordre de grandeur)",
|
|
10491
|
+
"type": "paragraph"
|
|
10492
|
+
}
|
|
10493
|
+
}
|
|
10494
|
+
}
|
|
10495
|
+
}
|
|
10496
|
+
},
|
|
10497
|
+
{
|
|
10498
|
+
"search": "Déjà présent (ne pas confondre avec la cible) :\n",
|
|
10499
|
+
"files": {
|
|
10500
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10501
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10502
|
+
"hashes": {
|
|
10503
|
+
"33-rôle-du-spike-actuel-sur-cette-branche": {
|
|
10504
|
+
"count": 1,
|
|
10505
|
+
"title": "3.3 Rôle du spike actuel sur cette branche",
|
|
10506
|
+
"type": "paragraph"
|
|
10507
|
+
}
|
|
10508
|
+
}
|
|
10509
|
+
}
|
|
10510
|
+
}
|
|
10511
|
+
},
|
|
10512
|
+
{
|
|
10513
|
+
"search": "→ Radar pour lister les mutations pendant la migration vers F. Destiné à disparaître ou à se réduire une fois le moteur immutable en place.\n",
|
|
10514
|
+
"files": {
|
|
10515
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10516
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10517
|
+
"hashes": {
|
|
10518
|
+
"33-rôle-du-spike-actuel-sur-cette-branche": {
|
|
10519
|
+
"count": 1,
|
|
10520
|
+
"title": "3.3 Rôle du spike actuel sur cette branche",
|
|
10521
|
+
"type": "paragraph"
|
|
10522
|
+
}
|
|
10523
|
+
}
|
|
10524
|
+
}
|
|
10525
|
+
}
|
|
10526
|
+
},
|
|
10527
|
+
{
|
|
10528
|
+
"search": "Oui : publier le chantier sur un dist-tag npm dédié, pas sur latest, le temps d’un usage approfondi.\n",
|
|
10529
|
+
"files": {
|
|
10530
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10531
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10532
|
+
"hashes": {
|
|
10533
|
+
"4-canal-de-livraison--dist-tag-npm-reco": {
|
|
10534
|
+
"count": 1,
|
|
10535
|
+
"title": "4. Canal de livraison — dist-tag npm (reco)",
|
|
10536
|
+
"type": "paragraph"
|
|
10537
|
+
}
|
|
10538
|
+
}
|
|
10539
|
+
}
|
|
10540
|
+
}
|
|
10541
|
+
},
|
|
10542
|
+
{
|
|
10543
|
+
"search": "Versions du type 6.0.0-immutable.1, .2, … (prerelease) : claires dans le lockfile, republish fréquentes OK.\n",
|
|
10544
|
+
"files": {
|
|
10545
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10546
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10547
|
+
"hashes": {
|
|
10548
|
+
"proposition-de-tags": {
|
|
10549
|
+
"count": 1,
|
|
10550
|
+
"title": "Proposition de tags",
|
|
10551
|
+
"type": "paragraph"
|
|
10552
|
+
}
|
|
10553
|
+
}
|
|
10554
|
+
}
|
|
10555
|
+
}
|
|
10556
|
+
},
|
|
10557
|
+
{
|
|
10558
|
+
"search": "Go dist-tag immutable. C’est le bon niveau de netteté : chantier puissant isolé, adoption volontaire, mesure avant major. Le spike strictGet peut vivre sur la même branche/tag comme aide à la migration, documenté comme temporaire.\n",
|
|
10559
|
+
"files": {
|
|
10560
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10561
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10562
|
+
"hashes": {
|
|
10563
|
+
"avis": {
|
|
10564
|
+
"count": 1,
|
|
10565
|
+
"title": "Avis",
|
|
10566
|
+
"type": "paragraph"
|
|
10567
|
+
}
|
|
10568
|
+
}
|
|
10569
|
+
}
|
|
10570
|
+
}
|
|
10571
|
+
},
|
|
10572
|
+
{
|
|
10573
|
+
"search": "Zones Billetterie chaudes : access-control/**, utils/cart.ts + components/cart/**, placing/**, subscription / tarifs, forms, ~300 onAssign, legacy lb_placement JS.\n",
|
|
10574
|
+
"files": {
|
|
10575
|
+
"docs/misc/publisher-get-immutability-study.md": {
|
|
10576
|
+
"title": "Étude — immutabilité DataProvider / `get()` (REDMINE-79567)",
|
|
10577
|
+
"hashes": {
|
|
10578
|
+
"5-impact-consommateurs-rappel-audit": {
|
|
10579
|
+
"count": 1,
|
|
10580
|
+
"title": "5. Impact consommateurs (rappel audit)",
|
|
10581
|
+
"type": "paragraph"
|
|
10582
|
+
}
|
|
10583
|
+
}
|
|
10584
|
+
}
|
|
10585
|
+
}
|
|
10286
10586
|
}
|
|
10287
10587
|
]
|
|
@@ -38,7 +38,12 @@ export class DocsMakdownRenderer extends Subscriber(LitElement) {
|
|
|
38
38
|
private _text = "";
|
|
39
39
|
set text(value: string) {
|
|
40
40
|
this._text = parseMarkdownWithSonicCode(
|
|
41
|
-
|
|
41
|
+
// Tables scroll in a wrapper, so they keep their full width on phones
|
|
42
|
+
(markdown) =>
|
|
43
|
+
(marked.parse(markdown) as string).replace(
|
|
44
|
+
/<table>[\s\S]*?<\/table>/g,
|
|
45
|
+
(table) => `<div class="docs-table-scroll">${table}</div>`,
|
|
46
|
+
),
|
|
42
47
|
value,
|
|
43
48
|
);
|
|
44
49
|
this.requestUpdate();
|
|
@@ -19,14 +19,13 @@ docs-markdown-renderer :is(h1, h2, h3, h4)[id] {
|
|
|
19
19
|
docs-page.prose :where(img) {
|
|
20
20
|
max-width: 100%;
|
|
21
21
|
}
|
|
22
|
+
/* Markdown tables keep 100% width; the wrapper scrolls when columns overflow */
|
|
23
|
+
docs-page .docs-table-scroll {
|
|
24
|
+
overflow-x: auto;
|
|
25
|
+
}
|
|
22
26
|
/* Wide demos (fixed min-width groups…) scroll instead of widening the page on phones */
|
|
23
27
|
@media (max-width: 639px) {
|
|
24
28
|
docs-page sonic-code > div {
|
|
25
29
|
overflow-x: auto;
|
|
26
30
|
}
|
|
27
|
-
/* tables stay 100% wide on larger screens; on phones they scroll */
|
|
28
|
-
docs-page.prose :where(table) {
|
|
29
|
-
display: block;
|
|
30
|
-
overflow-x: auto;
|
|
31
|
-
}
|
|
32
31
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "./tsconfig-model.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"noEmit": false,
|
|
5
|
+
"emitDeclarationOnly": true,
|
|
6
|
+
"declaration": true,
|
|
7
|
+
"declarationMap": true,
|
|
8
|
+
"outDir": "../dist/types",
|
|
9
|
+
"rootDir": "."
|
|
10
|
+
},
|
|
11
|
+
"include": ["**/*.ts"],
|
|
12
|
+
"exclude": [
|
|
13
|
+
"node_modules/**/*",
|
|
14
|
+
"**/*.spec.ts",
|
|
15
|
+
"**/*.test.ts",
|
|
16
|
+
"**/*.demo.ts",
|
|
17
|
+
"**/*.stories.ts",
|
|
18
|
+
"**/*.type-test.ts",
|
|
19
|
+
"docs.ts",
|
|
20
|
+
"docs/**/*"
|
|
21
|
+
]
|
|
22
|
+
}
|