@supersoniks/concorde 5.1.2 → 5.1.3-immutable.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 +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 +5183 -5018
- 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 +5183 -5018
- 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 +58 -0
- package/src/core/utils/immutableValue.ts +116 -0
- package/src/core/utils/nestedDotForm.spec.ts +88 -0
- package/src/core/utils/publisherImmutable.spec.ts +127 -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 +51 -51
- 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
|
@@ -105,7 +105,7 @@ The library is named after Concorde: every example tells a small aviation story.
|
|
|
105
105
|
|
|
106
106
|
### Images
|
|
107
107
|
|
|
108
|
-
Use
|
|
108
|
+
Use `/img/concorde/plane_XX.jpg` (absolute from the site root, files in `public/img/`). Always set a meaningful `alt`.
|
|
109
109
|
|
|
110
110
|
| File | Subject | Fits |
|
|
111
111
|
|------|---------|------|
|
package/.claude/skills
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
../.agents/skills
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master, main]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [master, main]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/checkout@v4
|
|
14
|
+
|
|
15
|
+
- uses: actions/setup-node@v4
|
|
16
|
+
with:
|
|
17
|
+
node-version: "22"
|
|
18
|
+
cache: yarn
|
|
19
|
+
|
|
20
|
+
- run: yarn install --frozen-lockfile
|
|
21
|
+
- run: yarn test:ci
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Arborescence exclue du miroir public GitHub (GitLab reste complet).
|
|
2
|
+
# Syntaxe : une entrée par ligne, # = commentaire.
|
|
3
|
+
|
|
4
|
+
# Site doc
|
|
5
|
+
index.html
|
|
6
|
+
src/docs.ts
|
|
7
|
+
src/docs/
|
|
8
|
+
docs/
|
|
9
|
+
img/
|
|
10
|
+
scripts/create-search.js
|
|
11
|
+
scripts/post-build-docs.js
|
|
12
|
+
scripts/docs-mock-api-vite-plugin.ts
|
|
13
|
+
scripts/docs-open-in-editor-plugin.ts
|
|
14
|
+
public/docs-mock-api-sw.js
|
|
15
|
+
public/docs-mock-api-sw.js.map
|
|
16
|
+
|
|
17
|
+
# Captcha (dépend de altcha.supersoniks.org)
|
|
18
|
+
src/core/components/ui/captcha/
|
|
19
|
+
|
|
20
|
+
# Démos intégrées à la doc
|
|
21
|
+
**/*.demo.ts
|
|
22
|
+
|
|
23
|
+
# CI / infra interne
|
|
24
|
+
gitlab/
|
|
25
|
+
|
|
26
|
+
# Artefacts locaux
|
|
27
|
+
dist/
|
|
28
|
+
build-infos.json
|
|
29
|
+
concorde-core.bundle.js
|
|
30
|
+
concorde-core.es.js
|
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Contribuer à Concorde
|
|
2
|
+
|
|
3
|
+
Merci de votre intérêt pour `@supersoniks/concorde` !
|
|
4
|
+
|
|
5
|
+
## Modèle de contribution (phase 1)
|
|
6
|
+
|
|
7
|
+
Concorde utilise un dépôt **GitLab interne** comme source complète, avec un **export public filtré** sur GitHub (librairie uniquement — pas le site doc, pas le composant captcha lié à l’infra Supersoniks).
|
|
8
|
+
|
|
9
|
+
| Qui | Où | Comment |
|
|
10
|
+
|-----|-----|---------|
|
|
11
|
+
| Équipe Supersoniks | GitLab | Branche + **Merge Request** vers `master` |
|
|
12
|
+
| Contributeurs externes | GitHub | **Issues** pour signaler bugs ou proposer des améliorations |
|
|
13
|
+
| Contributeurs externes (code) | GitHub / email | Décrire le changement dans une issue, ou proposer un patch que l'équipe intègre sur GitLab |
|
|
14
|
+
|
|
15
|
+
> Les Pull Requests sur le dépôt GitHub public **ne sont pas mergées directement** : le miroir GitLab → GitHub écraserait ces changements. Ouvrez une issue pour discuter avant d'investir du temps.
|
|
16
|
+
|
|
17
|
+
## Prérequis
|
|
18
|
+
|
|
19
|
+
- Node.js 20+ (22 recommandé)
|
|
20
|
+
- Yarn 1.22 (`packageManager` dans `package.json`)
|
|
21
|
+
|
|
22
|
+
## Workflow développeur interne
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
git checkout -b ma-branche
|
|
26
|
+
yarn install
|
|
27
|
+
# … modifications …
|
|
28
|
+
yarn test:ci
|
|
29
|
+
# Ouvrir une Merge Request vers master sur GitLab
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Tests
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
yarn test # watch (développement)
|
|
36
|
+
yarn test:ci # exécution unique (CI)
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Build
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
yarn build # librairie → dist/
|
|
43
|
+
yarn build-docs # documentation statique → docs/
|
|
44
|
+
yarn dev # serveur de doc local (https://localhost:3000)
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Conventions
|
|
48
|
+
|
|
49
|
+
- Suivre les patterns existants (Lit, décorateurs, DataProviderKey).
|
|
50
|
+
- Pas de `console.log` oubliés (bloqué par `prepublishOnly`).
|
|
51
|
+
- Documentation : fichiers `.md` colocalisés avec les composants dans `src/`.
|
|
52
|
+
|
|
53
|
+
## Signaler un problème de sécurité
|
|
54
|
+
|
|
55
|
+
Ne pas ouvrir d'issue publique. Contacter l'équipe Supersoniks directement.
|
|
56
|
+
|
|
57
|
+
## Évolution prévue
|
|
58
|
+
|
|
59
|
+
Si des contributions externes deviennent fréquentes, le dépôt GitHub pourra devenir la source canonique (modèle inversé). En attendant, GitLab reste le point d'entrée pour le code.
|
package/DEV.md
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Développement local — consommer Concorde depuis un autre projet
|
|
2
|
+
|
|
3
|
+
## Recommandé : `file:` (sans `yarn link`)
|
|
4
|
+
|
|
5
|
+
Dans le projet consommateur (la-billetterie, etc.) :
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
yarn add @supersoniks/concorde@file:../../concorde
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
- Pas de `yarn link` / `yarn unlink` à gérer
|
|
12
|
+
- Comportement proche d’un install registry
|
|
13
|
+
- Après modification de Concorde : `yarn build` dans concorde (génère `dist/js/` + `dist/types/`), puis rebuild du consommateur
|
|
14
|
+
|
|
15
|
+
## Alternative : `yarn link`
|
|
16
|
+
|
|
17
|
+
Toujours supporté. Dans Concorde :
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
yarn link
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Dans le consommateur :
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
yarn link @supersoniks/concorde
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Pourquoi `vite-config` exclut Concorde du pre-bundle
|
|
30
|
+
|
|
31
|
+
Dans `vite/config.js`, quand un `tsconfig` est passé :
|
|
32
|
+
|
|
33
|
+
```js
|
|
34
|
+
optimizeDeps: {
|
|
35
|
+
exclude: ["@supersoniks/concorde"],
|
|
36
|
+
// ...
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Toujours utile** avec `yarn link` ou `file:` : Vite ne met pas Concorde en cache dans `node_modules/.vite`, donc les changements dans `dist/js/` (après `yarn build` dans Concorde) sont pris en compte au prochain HMR / rebuild.
|
|
41
|
+
|
|
42
|
+
Les exports npm pointent vers `dist/js/` (runtime) et `dist/types/` (types) — le source `src/` sert au développement de Concorde lui-même.
|
|
43
|
+
|
|
44
|
+
## Types (`.d.ts`) et runtime (`.js`)
|
|
45
|
+
|
|
46
|
+
`yarn build` exécute `prebuild` (exports) → bundle Vite → `postbuild` (génération de `dist/types/` + `dist/js/`).
|
|
47
|
+
|
|
48
|
+
`yarn build:types` / `yarn build:js` restent disponibles pour régénérer uniquement les déclarations ou le JS.
|
|
49
|
+
|
|
50
|
+
## Scripts la-billetterie
|
|
51
|
+
|
|
52
|
+
`link:concorde` / `unlink:concorde` dans `la-billetterie/concorde/package.json` restent valides.
|
|
53
|
+
|
|
54
|
+
`test:concorde-lib` pointe vers un fichier `resolvePublisher.spec.ts` **supprimé** — script obsolète à nettoyer côté billetterie.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Supersoniks
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# Point d'étape — Open Source Concorde
|
|
2
|
+
|
|
3
|
+
> Modèle retenu (phase 1) : **GitLab = source complète**, **GitHub = export filtré** (librairie seule).
|
|
4
|
+
|
|
5
|
+
Dernière mise à jour : juin 2025.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## ✅ Fait (dans ce dépôt GitLab)
|
|
10
|
+
|
|
11
|
+
| Élément | Fichier / action |
|
|
12
|
+
|---------|------------------|
|
|
13
|
+
| Licence MIT | `LICENSE` |
|
|
14
|
+
| Retrait Typekit inutilisé | `index.html` |
|
|
15
|
+
| Métadonnées npm (repo, homepage, bugs) | `package.json` |
|
|
16
|
+
| README mis à jour | `README.md` |
|
|
17
|
+
| Guide contributeurs | `CONTRIBUTING.md` |
|
|
18
|
+
| CI GitHub Actions | `.github/workflows/ci.yml` |
|
|
19
|
+
| **Liste d'exclusion GitHub** | `.github-export-ignore` |
|
|
20
|
+
| **Script d'export filtré** | `scripts/github-export.mjs` |
|
|
21
|
+
| **Job CI miroir GitHub** | `gitlab/job_github_mirror.sh` |
|
|
22
|
+
|
|
23
|
+
### Ce qui reste sur GitLab uniquement (pas sur GitHub)
|
|
24
|
+
|
|
25
|
+
| Exclu | Raison |
|
|
26
|
+
|-------|--------|
|
|
27
|
+
| `index.html`, `src/docs/`, `src/docs.ts` | Site doc → [concorde.supersoniks.org](https://concorde.supersoniks.org/) |
|
|
28
|
+
| `src/core/components/ui/captcha/` | Dépend de `altcha.supersoniks.org` |
|
|
29
|
+
| `**/*.demo.ts` | Démos intégrées à la doc |
|
|
30
|
+
| `gitlab/` | CI / infra interne |
|
|
31
|
+
|
|
32
|
+
Le script retire aussi l'import captcha dans `ui.ts` et filtre les `exports` npm liés à la doc/captcha.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## ⏳ À faire de votre côté
|
|
37
|
+
|
|
38
|
+
### 1. Merger ces changements sur GitLab
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
git add LICENSE README.md CONTRIBUTING.md OPEN_SOURCE_CHECKPOINT.md \
|
|
42
|
+
.github-export-ignore scripts/github-export.mjs \
|
|
43
|
+
.github/workflows/ci.yml .gitlab-ci.yml \
|
|
44
|
+
gitlab/job_github_mirror.sh package.json index.html
|
|
45
|
+
git commit -m "Open source : export GitHub filtré (sans doc ni captcha)"
|
|
46
|
+
# MR vers master
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 2. Créer le dépôt GitHub public
|
|
50
|
+
|
|
51
|
+
1. https://github.com/organizations/supersoniks → **New repository** → `concorde`
|
|
52
|
+
2. **Public**, sans README initial
|
|
53
|
+
|
|
54
|
+
### 3. Variables CI GitLab
|
|
55
|
+
|
|
56
|
+
**Settings → CI/CD → Variables** (masquées) :
|
|
57
|
+
|
|
58
|
+
| Variable | Exemple |
|
|
59
|
+
|----------|---------|
|
|
60
|
+
| `GITHUB_REPO_URL` | `https://github.com/supersoniks/concorde.git` |
|
|
61
|
+
| `GITHUB_TOKEN` | PAT GitHub scope `repo` |
|
|
62
|
+
|
|
63
|
+
### 4. Premier export (manuel ou CI)
|
|
64
|
+
|
|
65
|
+
**En local :**
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
node scripts/github-export.mjs /tmp/concorde-github
|
|
69
|
+
cd /tmp/concorde-github
|
|
70
|
+
git init && git add -A && git commit -m "Initial export lib"
|
|
71
|
+
git remote add origin git@github.com:supersoniks/concorde.git
|
|
72
|
+
git push -u origin master
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Via GitLab CI** (après merge sur `master`) :
|
|
76
|
+
|
|
77
|
+
- Lancer le job manuel **`github-mirror`** dans la pipeline
|
|
78
|
+
|
|
79
|
+
> **Ne pas** utiliser le push mirror GitLab natif (il enverrait tout, doc + captcha inclus).
|
|
80
|
+
|
|
81
|
+
### 5. Vérifier GitHub
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
git clone https://github.com/supersoniks/concorde.git
|
|
85
|
+
cd concorde
|
|
86
|
+
yarn install && yarn test:ci
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
- Pas de `index.html`, pas de `src/docs/`, pas de `captcha.ts`
|
|
90
|
+
- Pas de référence à `cdn.supersoniks.com` ni `altcha.supersoniks.org` dans le tree
|
|
91
|
+
|
|
92
|
+
### 6. npm
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
yarn build
|
|
96
|
+
npm publish --access public
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
(idéalement depuis l'export filtré ou après avoir aligné `files` / `exports` npm)
|
|
100
|
+
|
|
101
|
+
### 7. Documentation en ligne
|
|
102
|
+
|
|
103
|
+
Doc hébergée sur **https://concorde.supersoniks.org/** (build depuis GitLab, pas depuis GitHub).
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Schéma
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
┌──────────────────────────────────────────┐
|
|
111
|
+
│ GitLab (interne) — tout le dépôt │
|
|
112
|
+
│ doc + captcha + dev (yarn dev) + CI │
|
|
113
|
+
└──────────────────┬───────────────────────┘
|
|
114
|
+
│ scripts/github-export.mjs
|
|
115
|
+
│ (job github-mirror)
|
|
116
|
+
▼
|
|
117
|
+
┌──────────────────────────────────────────┐
|
|
118
|
+
│ GitHub (public) — librairie seule │
|
|
119
|
+
│ src/core, décorateurs, tests, CI Actions │
|
|
120
|
+
└──────────────────────────────────────────┘
|
|
121
|
+
|
|
122
|
+
Doc en ligne : concorde.supersoniks.org (déployée depuis GitLab)
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Checklist finale
|
|
128
|
+
|
|
129
|
+
- [ ] Export GitHub sans `cdn.supersoniks` / `altcha.supersoniks`
|
|
130
|
+
- [ ] `yarn test:ci` OK sur clone GitHub
|
|
131
|
+
- [ ] Job `github-mirror` configuré
|
|
132
|
+
- [ ] npm `@supersoniks/concorde` publié
|
|
133
|
+
- [ ] Doc accessible sur concorde.supersoniks.org
|
package/README.md
CHANGED
|
@@ -23,7 +23,7 @@ yarn ai-init
|
|
|
23
23
|
node node_modules/@supersoniks/concorde/scripts/ai-init.mjs
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
Installe `.
|
|
26
|
+
Installe la skill `concorde` dans `.agents/skills` (liée depuis `.claude/skills` et `.junie/skills`). `AGENTS.md` n’est jamais touché. Voir [ai/README.md](ai/README.md).
|
|
27
27
|
|
|
28
28
|
## 📁 Structure du projet
|
|
29
29
|
|
package/ai/README.md
CHANGED
|
@@ -1,58 +1,46 @@
|
|
|
1
1
|
# Agent IA — Concorde
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Une skill unique, `concorde` (format [Agent Skills](https://agentskills.io)), installable dans un projet : Cursor, Claude Code, JetBrains Junie et tout agent qui lit `.agents/skills`.
|
|
4
4
|
|
|
5
|
-
##
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
node node_modules/@supersoniks/concorde/scripts/ai-init.mjs
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
Options :
|
|
5
|
+
## Structure
|
|
12
6
|
|
|
13
|
-
|
|
14
|
-
- `--skip-agents` — n’écrit jamais `AGENTS.md` (skills / rules seulement)
|
|
15
|
-
- `--merge-agents` — opt-in : conserve le préambule projet et ajoute / rafraîchit le bloc Concorde
|
|
16
|
-
- `--force-agents` — opt-in : **remplace** tout `AGENTS.md` (destructif)
|
|
17
|
-
- `--cursor-only` / `--jetbrains-only`
|
|
7
|
+
Sur le modèle de la skill shadcn : un point d’entrée court, des fichiers de règles lus à la demande.
|
|
18
8
|
|
|
19
|
-
|
|
9
|
+
```text
|
|
10
|
+
skills/concorde/
|
|
11
|
+
SKILL.md point d’entrée : sources (projet, doc, custom-elements.json), règles critiques, imports
|
|
12
|
+
rules/data.md store, DataProviderKey, décorateurs, sub(), get / set / dp
|
|
13
|
+
rules/http.md Endpoint, @get / @post, configuration API
|
|
14
|
+
rules/lists-forms.md
|
|
15
|
+
rules/styling.md thème, tokens, règles de style
|
|
16
|
+
rules/composition.md parties des composants composés, états intégrés
|
|
17
|
+
rules/troubleshooting.md symptôme → cause → correction
|
|
18
|
+
```
|
|
20
19
|
|
|
21
|
-
|
|
20
|
+
Ajouter un sujet = un fichier dans `rules/` + une ligne dans le tableau « Rules files » de `SKILL.md`. Pas de nouvelle skill sauf besoin vraiment distinct.
|
|
22
21
|
|
|
23
|
-
|
|
24
|
-
|-----------|-------------------------|
|
|
25
|
-
| Pas de `AGENTS.md` | Création du guide Concorde |
|
|
26
|
-
| Fichier avec `<!-- concorde-ai -->` | Rafraîchit la zone gérée seulement |
|
|
27
|
-
| Fichier **sans** marker (notes projet) | **Laissé intact** — skills / rules suffisent |
|
|
28
|
-
| `--merge-agents` | Préambule projet + bloc Concorde après le marker |
|
|
29
|
-
| `--force-agents` | Remplacement complet |
|
|
30
|
-
| `--skip-agents` | Jamais d’écriture `AGENTS.md` |
|
|
22
|
+
## Installation dans un projet
|
|
31
23
|
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
<!-- concorde-ai -->
|
|
35
|
-
<package ai/AGENTS.md>
|
|
36
|
-
[--- + overlay AGENTS.concorde.md]
|
|
24
|
+
```bash
|
|
25
|
+
node node_modules/@supersoniks/concorde/scripts/ai-init.mjs
|
|
37
26
|
```
|
|
38
27
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
28
|
+
Depuis le dépôt Concorde : `yarn ai-init`.
|
|
29
|
+
|
|
30
|
+
| Source | Cible dans le projet |
|
|
31
|
+
|--------|---------------------|
|
|
32
|
+
| `skills/<nom>/` | `.agents/skills/<nom>/` (copie ; lue directement par Cursor) |
|
|
33
|
+
| — | `.claude/skills/<nom>` et `.junie/skills/<nom>` : liens symboliques (copie si les liens sont interdits) |
|
|
43
34
|
|
|
44
|
-
|
|
35
|
+
Options :
|
|
45
36
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
| `cursor/rules/` | `.cursor/rules/` |
|
|
50
|
-
| `jetbrains/rules/` | `.aiassistant/rules/` |
|
|
51
|
-
| `AGENTS.md` | racine du projet **seulement** si absent, déjà marqué, ou via `--merge-agents` / `--force-agents` |
|
|
37
|
+
- `--overlay <dir>` — skills supplémentaires d’un kit projet (`<dir>/skills/<nom>/`)
|
|
38
|
+
- `--no-links` — `.agents/skills` seulement
|
|
39
|
+
- `--project-root <dir>`, `--concorde-ai <dir>`
|
|
52
40
|
|
|
53
|
-
|
|
41
|
+
**`AGENTS.md` appartient au projet** : `ai-init` ne le lit ni ne l’écrit. Les agents trouvent la skill seuls, par sa description.
|
|
54
42
|
|
|
55
|
-
|
|
43
|
+
Seules les skills du package sont remplacées ; une skill du projet portant le même nom n’est jamais écrasée. Si `.claude/skills` pointe déjà vers `.agents/skills`, aucun lien par skill n’est créé.
|
|
56
44
|
|
|
57
45
|
## Tests
|
|
58
46
|
|