@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.
Files changed (497) hide show
  1. package/.agents/skills/concorde-docs/SKILL.md +1 -1
  2. package/.claude/skills +1 -0
  3. package/.github/workflows/ci.yml +21 -0
  4. package/.github-export-ignore +30 -0
  5. package/CONTRIBUTING.md +59 -0
  6. package/DEV.md +54 -0
  7. package/LICENSE +21 -0
  8. package/OPEN_SOURCE_CHECKPOINT.md +133 -0
  9. package/README.md +1 -1
  10. package/ai/README.md +29 -41
  11. package/ai/skills/concorde/SKILL.md +54 -324
  12. package/ai/skills/concorde/rules/composition.md +32 -0
  13. package/ai/skills/concorde/rules/data.md +47 -0
  14. package/ai/skills/concorde/rules/http.md +25 -0
  15. package/ai/skills/concorde/rules/lists-forms.md +35 -0
  16. package/ai/skills/concorde/rules/styling.md +46 -0
  17. package/ai/skills/concorde/rules/troubleshooting.md +45 -0
  18. package/build-infos.json +1 -1
  19. package/concorde-core.bundle.js +177 -177
  20. package/concorde-core.es.js +4993 -4833
  21. package/custom-elements-manifest.public.config.mjs +8 -0
  22. package/{.tmp-cem/custom-elements.json → custom-elements.json} +11722 -8868
  23. package/dist/concorde-core.bundle.js +177 -177
  24. package/dist/concorde-core.es.js +4993 -4833
  25. package/dist/docs-mock-api-sw.js +58 -223
  26. package/dist/docs-mock-api-sw.js.map +4 -4
  27. package/dist/img/og-concorde.jpg +0 -0
  28. package/dist/robots.txt +11 -10
  29. package/docs/assets/index-CD4WyL6o.css +1 -0
  30. package/docs/assets/index-D_alEsng.js +12122 -0
  31. package/docs/crawl/core/components/functional/date/date.html +190 -0
  32. package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
  33. package/docs/crawl/core/components/functional/if/if.html +27 -0
  34. package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
  35. package/docs/crawl/core/components/functional/list/list.html +70 -0
  36. package/docs/crawl/core/components/functional/mix/mix.html +45 -0
  37. package/docs/crawl/core/components/functional/queue/queue.html +96 -0
  38. package/docs/crawl/core/components/functional/router/router.html +106 -0
  39. package/docs/{core → crawl/core}/components/functional/sdui/sdui-extension-points.html +8 -9
  40. package/docs/crawl/core/components/functional/sdui/sdui.html +368 -0
  41. package/docs/crawl/core/components/functional/states/states.html +66 -0
  42. package/docs/crawl/core/components/functional/submit/submit.html +160 -0
  43. package/docs/{core → crawl/core}/components/functional/subscriber/subscriber.html +5 -6
  44. package/docs/crawl/core/components/functional/value/value.html +51 -0
  45. package/docs/{core → crawl/core}/components/ui/alert/alert.html +63 -53
  46. package/docs/{core → crawl/core}/components/ui/alert-messages/alert-messages.html +5 -6
  47. package/docs/{core → crawl/core}/components/ui/badge/badge.html +33 -33
  48. package/docs/crawl/core/components/ui/button/button.html +150 -0
  49. package/docs/crawl/core/components/ui/captcha/captcha.html +112 -0
  50. package/docs/{core → crawl/core}/components/ui/card/card.html +11 -12
  51. package/docs/{core → crawl/core}/components/ui/divider/divider.html +14 -14
  52. package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
  53. package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +266 -0
  54. package/docs/{core → crawl/core}/components/ui/form/form-actions/form-actions.html +23 -23
  55. package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +121 -0
  56. package/docs/crawl/core/components/ui/form/input/input.html +109 -0
  57. package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
  58. package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
  59. package/docs/crawl/core/components/ui/form/select/select.html +73 -0
  60. package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
  61. package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
  62. package/docs/crawl/core/components/ui/group/group.html +104 -0
  63. package/docs/{core → crawl/core}/components/ui/icon/icon.html +9 -10
  64. package/docs/crawl/core/components/ui/image/image.html +298 -0
  65. package/docs/{core → crawl/core}/components/ui/link/link.html +11 -12
  66. package/docs/crawl/core/components/ui/loader/loader.html +124 -0
  67. package/docs/{core → crawl/core}/components/ui/menu/menu.html +33 -34
  68. package/docs/crawl/core/components/ui/modal/modal.html +342 -0
  69. package/docs/crawl/core/components/ui/pop/pop.html +296 -0
  70. package/docs/{core → crawl/core}/components/ui/progress/progress.html +7 -8
  71. package/docs/crawl/core/components/ui/table/table.html +545 -0
  72. package/docs/crawl/core/components/ui/theme/theme.html +131 -0
  73. package/docs/crawl/core/components/ui/toast/toast.html +233 -0
  74. package/docs/crawl/core/components/ui/tooltip/tooltip.html +140 -0
  75. package/docs/{docs/getting-started → crawl/docs/_core-concept}/dataFlow.html +29 -26
  76. package/docs/crawl/docs/_core-concept/overview.html +66 -0
  77. package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
  78. package/docs/crawl/docs/_decorators/ancestor-attribute.html +117 -0
  79. package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
  80. package/docs/crawl/docs/_decorators/bind.html +141 -0
  81. package/docs/crawl/docs/_decorators/get.html +149 -0
  82. package/docs/crawl/docs/_decorators/handle.html +165 -0
  83. package/docs/crawl/docs/_decorators/on-assign.html +355 -0
  84. package/docs/crawl/docs/_decorators/patch.html +78 -0
  85. package/docs/crawl/docs/_decorators/post.html +139 -0
  86. package/docs/crawl/docs/_decorators/publish.html +61 -0
  87. package/docs/crawl/docs/_decorators/put.html +78 -0
  88. package/docs/crawl/docs/_decorators/subscribe.html +109 -0
  89. package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
  90. package/docs/crawl/docs/_directives/sub.html +93 -0
  91. package/docs/{docs/getting-started → crawl/docs/_getting-started}/ai-agents.html +11 -12
  92. package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
  93. package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
  94. package/docs/{docs/getting-started → crawl/docs/_getting-started}/create-a-component.html +14 -11
  95. package/docs/{docs/getting-started → crawl/docs/_getting-started}/my-first-component.html +22 -13
  96. package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
  97. package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
  98. package/docs/crawl/docs/_getting-started/start.html +76 -0
  99. package/docs/{docs/getting-started → crawl/docs/_getting-started}/theming.html +9 -10
  100. package/docs/{docs/misc → crawl/docs/_misc}/api-configuration.html +18 -18
  101. package/docs/{docs/misc → crawl/docs/_misc}/dataProviderKey.html +11 -12
  102. package/docs/{docs/misc → crawl/docs/_misc}/docs-mock-api.html +28 -25
  103. package/docs/{docs/misc → crawl/docs/_misc}/dynamic-path.html +15 -16
  104. package/docs/{docs/misc → crawl/docs/_misc}/endpoint.html +15 -16
  105. package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
  106. package/docs/{docs/misc → crawl/docs/_misc}/html-integration.html +15 -12
  107. package/docs/crawl/hubs/decorators.html +547 -0
  108. package/docs/crawl/hubs/form-components.html +381 -0
  109. package/docs/crawl/hubs/remote-data.html +452 -0
  110. package/docs/crawl/index.html +103 -0
  111. package/docs/docs-mock-api-sw.js +223 -58
  112. package/docs/docs-mock-api-sw.js.map +4 -4
  113. package/docs/index.html +68 -95
  114. package/docs/llms-full.txt +3610 -2231
  115. package/docs/llms.txt +86 -94
  116. package/docs/robots.txt +10 -11
  117. package/docs/sitemap.xml +84 -78
  118. package/docs/src/core/components/functional/date/date.md +231 -91
  119. package/docs/src/core/components/functional/fetch/fetch.md +83 -66
  120. package/docs/src/core/components/functional/if/if.md +3 -28
  121. package/docs/src/core/components/functional/jsonata/jsonata.md +37 -42
  122. package/docs/src/core/components/functional/list/list.md +43 -99
  123. package/docs/src/core/components/functional/mix/mix.md +26 -31
  124. package/docs/src/core/components/functional/queue/queue.md +61 -40
  125. package/docs/src/core/components/functional/router/router.md +65 -64
  126. package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  127. package/docs/src/core/components/functional/sdui/component-catalog.json +1 -1
  128. package/docs/src/core/components/functional/sdui/example.json +86 -19
  129. package/docs/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
  130. package/docs/src/core/components/functional/sdui/sdui.md +358 -187
  131. package/docs/src/core/components/functional/states/states.md +61 -86
  132. package/docs/src/core/components/functional/submit/submit.md +72 -64
  133. package/docs/src/core/components/functional/value/value.md +22 -34
  134. package/docs/src/core/components/ui/alert/alert.md +58 -48
  135. package/docs/src/core/components/ui/badge/badge.md +34 -27
  136. package/docs/src/core/components/ui/button/button.md +106 -139
  137. package/docs/src/core/components/ui/captcha/captcha.md +32 -17
  138. package/docs/src/core/components/ui/card/card.md +6 -6
  139. package/docs/src/core/components/ui/divider/divider.md +11 -8
  140. package/docs/src/core/components/ui/form/checkbox/checkbox.md +42 -90
  141. package/docs/src/core/components/ui/form/fieldset/fieldset.md +75 -31
  142. package/docs/src/core/components/ui/form/form-actions/form-actions.md +16 -14
  143. package/docs/src/core/components/ui/form/form-layout/form-layout.md +29 -19
  144. package/docs/src/core/components/ui/form/input/input.md +95 -95
  145. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +29 -0
  146. package/docs/src/core/components/ui/form/radio/radio.md +34 -55
  147. package/docs/src/core/components/ui/form/select/select.md +45 -60
  148. package/docs/src/core/components/ui/form/switch/switch.md +34 -57
  149. package/docs/src/core/components/ui/form/textarea/textarea.md +38 -55
  150. package/docs/src/core/components/ui/group/group.md +33 -35
  151. package/docs/src/core/components/ui/icon/icon.md +4 -4
  152. package/docs/src/core/components/ui/image/image.md +107 -41
  153. package/docs/src/core/components/ui/link/link.md +6 -6
  154. package/docs/src/core/components/ui/loader/loader.md +55 -30
  155. package/docs/src/core/components/ui/menu/menu.md +27 -27
  156. package/docs/src/core/components/ui/modal/modal.md +96 -72
  157. package/docs/src/core/components/ui/pop/pop.md +158 -80
  158. package/docs/src/core/components/ui/progress/progress.md +2 -2
  159. package/docs/src/core/components/ui/table/table.md +255 -91
  160. package/docs/src/core/components/ui/theme/theme.md +36 -11
  161. package/docs/src/core/components/ui/toast/toast.md +117 -48
  162. package/docs/src/core/components/ui/tooltip/tooltip.md +62 -27
  163. package/docs/{docs/getting-started → src/docs/_core-concept}/dataFlow.md +18 -17
  164. package/docs/src/docs/_core-concept/overview.md +57 -0
  165. package/docs/src/docs/_core-concept/subscriber.md +75 -0
  166. package/docs/src/docs/_decorators/ancestor-attribute.md +128 -0
  167. package/docs/src/docs/_decorators/auto-subscribe.md +202 -0
  168. package/docs/src/docs/_decorators/bind.md +167 -0
  169. package/docs/src/docs/_decorators/get.md +162 -0
  170. package/docs/src/docs/_decorators/handle.md +175 -0
  171. package/docs/src/docs/_decorators/on-assign.md +390 -0
  172. package/docs/src/docs/_decorators/patch.md +70 -0
  173. package/docs/src/docs/_decorators/post.md +146 -0
  174. package/docs/src/docs/_decorators/publish.md +55 -0
  175. package/docs/src/docs/_decorators/put.md +70 -0
  176. package/docs/src/docs/_decorators/subscribe.md +100 -0
  177. package/docs/src/docs/_decorators/wait-for-ancestors.md +163 -0
  178. package/docs/src/docs/_directives/sub.md +91 -0
  179. package/docs/src/docs/{getting-started → _getting-started}/ai-agents.md +3 -3
  180. package/docs/src/docs/_getting-started/concorde-manual-install.md +133 -0
  181. package/docs/src/docs/_getting-started/concorde-outside.md +33 -0
  182. package/docs/{docs/getting-started → src/docs/_getting-started}/create-a-component.md +6 -3
  183. package/docs/src/docs/{getting-started → _getting-started}/my-first-component.md +14 -5
  184. package/docs/src/docs/_getting-started/my-first-subscriber.md +120 -0
  185. package/docs/src/docs/_getting-started/pubsub.md +37 -0
  186. package/docs/src/docs/{getting-started → _getting-started}/start.md +13 -1
  187. package/docs/src/docs/{getting-started → _getting-started}/theming.md +2 -2
  188. package/docs/src/docs/{misc → _misc}/api-configuration.md +12 -10
  189. package/docs/src/docs/{misc → _misc}/dataProviderKey.md +4 -4
  190. package/docs/{docs/misc → src/docs/_misc}/docs-mock-api.md +13 -12
  191. package/docs/{docs/misc → src/docs/_misc}/dynamic-path.md +8 -8
  192. package/docs/{docs/misc → src/docs/_misc}/endpoint.md +8 -8
  193. package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
  194. package/docs/{docs/misc → src/docs/_misc}/html-integration.md +5 -4
  195. package/docs/src/docs/search/docs-search.json +4375 -2420
  196. package/docs/src/tsconfig.declarations.json +22 -0
  197. package/docs/src/tsconfig.emit.json +23 -0
  198. package/docs/src/tsconfig.json +2 -23
  199. package/gitlab/job_github_mirror.sh +39 -0
  200. package/index.html +89 -0
  201. package/package.json +22 -4
  202. package/public/img/og-concorde.jpg +0 -0
  203. package/scripts/ai-init.mjs +104 -379
  204. package/scripts/ai-init.test.mjs +81 -239
  205. package/scripts/docs-markdown-vite-plugin.ts +11 -5
  206. package/scripts/docs-public-url.mjs +6 -0
  207. package/scripts/docs.htaccess +7 -0
  208. package/scripts/generate-cem.mjs +244 -0
  209. package/scripts/generate-cem.test.mjs +122 -0
  210. package/scripts/generate-crawl-docs.mjs +29 -5
  211. package/scripts/generate-sdui-catalog.mjs +11 -10
  212. package/scripts/github-export.mjs +150 -0
  213. package/scripts/post-build-docs.js +3 -0
  214. package/scripts/post-build.mjs +0 -0
  215. package/scripts/pre-publish.mjs +2 -1
  216. package/scripts/site-pages.mjs +212 -0
  217. package/scripts/site-pages.test.mjs +116 -0
  218. package/site-pages/about.md +22 -0
  219. package/site-pages/privacy.md +32 -0
  220. package/src/core/components/functional/date/date.md +1 -1
  221. package/src/core/components/functional/example/example.ts +3 -1
  222. package/src/core/components/functional/if/if.ts +0 -0
  223. package/src/core/components/functional/list/list.demo.ts +0 -0
  224. package/src/core/components/functional/list/list.md +6 -2
  225. package/src/core/components/functional/list/list.ts +17 -4
  226. package/src/core/components/functional/mix/mix.md +0 -0
  227. package/src/core/components/functional/router/router.demo.ts +0 -0
  228. package/src/core/components/functional/router/router.ts +0 -0
  229. package/src/core/components/functional/sdui/SDUIDescriptorTransformer.ts +0 -0
  230. package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  231. package/src/core/components/functional/sdui/component-catalog.json +2 -2
  232. package/src/core/components/functional/sdui/example.json +0 -0
  233. package/src/core/components/functional/sdui/sdui-immutable.spec.ts +74 -0
  234. package/src/core/components/functional/sdui/sdui.ts +33 -8
  235. package/src/core/components/functional/sdui/types.ts +0 -0
  236. package/src/core/components/functional/states/states.ts +0 -0
  237. package/src/core/components/functional/submit/submit.spec.ts +60 -0
  238. package/src/core/components/functional/submit/submit.ts +6 -3
  239. package/src/core/components/functional/subscriber/subscriber.ts +0 -0
  240. package/src/core/components/functional/value/value.md +0 -0
  241. package/src/core/components/functional/value/value.ts +0 -0
  242. package/src/core/components/ui/_css/size.ts +0 -0
  243. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  244. package/src/core/components/ui/card/card.md +1 -1
  245. package/src/core/components/ui/form/input/input.md +19 -1
  246. package/src/core/components/ui/form/input/input.ts +8 -2
  247. package/src/core/components/ui/form/radio/radio.md +14 -0
  248. package/src/core/components/ui/image/image.md +17 -17
  249. package/src/core/components/ui/modal/modal.md +2 -2
  250. package/src/core/decorators/subscriber/bind.ts +9 -14
  251. package/src/core/decorators/subscriber/subscribe.ts +15 -9
  252. package/src/core/decorators/subscriber/subscribe.type-test.ts +14 -5
  253. package/src/core/mixins/Subscriber.ts +0 -0
  254. package/src/core/utils/DataBindObserver.ts +0 -0
  255. package/src/core/utils/Objects.ts +0 -0
  256. package/src/core/utils/PublisherProxy.ts +166 -125
  257. package/src/core/utils/deepReadonly.spec.ts +66 -0
  258. package/src/core/utils/deepReadonly.ts +71 -0
  259. package/src/core/utils/immutableValue.spec.ts +54 -0
  260. package/src/core/utils/immutableValue.ts +102 -0
  261. package/src/core/utils/nestedDotForm.spec.ts +88 -0
  262. package/src/core/utils/publisherImmutable.spec.ts +76 -0
  263. package/src/core/utils/route.ts +0 -0
  264. package/src/core/utils/strictGet.spec.ts +61 -0
  265. package/src/core/utils/strictGet.ts +102 -0
  266. package/src/css.d.ts +19 -0
  267. package/src/docs/components/docs-demo-sources.ts +3 -3
  268. package/src/docs/decorators/bind.md +23 -24
  269. package/src/docs/docs-location.spec.ts +10 -0
  270. package/src/docs/docs-location.ts +10 -0
  271. package/src/docs/example/decorators-demo-bind-demos.ts +11 -28
  272. package/src/docs/example/docs-toggle-demos.ts +1 -1
  273. package/src/docs/example/users.ts +0 -0
  274. package/src/docs/getting-started/ai-agents.md +29 -55
  275. package/src/docs/getting-started/dataFlow.md +2 -2
  276. package/src/docs/home/home.ts +3 -1
  277. package/src/docs/misc/publisher-get-immutability-docs-crawl.json +902 -0
  278. package/src/docs/misc/publisher-get-immutability-docs-recheck.json +13 -0
  279. package/src/docs/misc/publisher-get-immutability-study.md +229 -0
  280. package/src/docs/navigation/navigation.ts +5 -1
  281. package/src/docs/search/docs-search.json +358 -58
  282. package/src/docs/search/markdown-renderer.ts +6 -1
  283. package/src/docs/tailwind/css/docs/content.css +4 -5
  284. package/src/tsconfig.declarations.json +22 -0
  285. package/src/tsconfig.emit.json +23 -0
  286. package/src/tsconfig.json +53 -5
  287. package/src/tsconfig.tsbuildinfo +1 -1
  288. package/.taste-skill/after/desktop-fold.jpg +0 -0
  289. package/.taste-skill/after/desktop-page-01.jpg +0 -0
  290. package/.taste-skill/after/desktop-page-02.jpg +0 -0
  291. package/.taste-skill/after/desktop-page-03.jpg +0 -0
  292. package/.taste-skill/after/mobile-fold.jpg +0 -0
  293. package/.taste-skill/after/mobile-page-01.jpg +0 -0
  294. package/.taste-skill/after/report.json +0 -4103
  295. package/.taste-skill/after/tablet-fold.jpg +0 -0
  296. package/.taste-skill/after/tablet-page-01.jpg +0 -0
  297. package/.taste-skill/after/tablet-page-02.jpg +0 -0
  298. package/.taste-skill/before/desktop-fold.jpg +0 -0
  299. package/.taste-skill/before/desktop-page-01.jpg +0 -0
  300. package/.taste-skill/before/desktop-page-02.jpg +0 -0
  301. package/.taste-skill/before/mobile-fold.jpg +0 -0
  302. package/.taste-skill/before/mobile-page-01.jpg +0 -0
  303. package/.taste-skill/before/report.json +0 -2556
  304. package/.taste-skill/before/tablet-fold.jpg +0 -0
  305. package/.taste-skill/before/tablet-page-01.jpg +0 -0
  306. package/.taste-skill/direction.json +0 -510
  307. package/.taste-skill/notes.md +0 -84
  308. package/.taste-skill/prod/desktop-fold.jpg +0 -0
  309. package/.taste-skill/prod/desktop-page-01.jpg +0 -0
  310. package/.taste-skill/prod/desktop-page-02.jpg +0 -0
  311. package/.taste-skill/prod/desktop-page-03.jpg +0 -0
  312. package/.taste-skill/prod/mobile-fold.jpg +0 -0
  313. package/.taste-skill/prod/mobile-page-01.jpg +0 -0
  314. package/.taste-skill/prod/mobile-page-02.jpg +0 -0
  315. package/.taste-skill/prod/report.json +0 -1973
  316. package/.taste-skill/prod/tablet-fold.jpg +0 -0
  317. package/.taste-skill/prod/tablet-page-01.jpg +0 -0
  318. package/.taste-skill/prod/tablet-page-02.jpg +0 -0
  319. package/AUDIT.md +0 -228
  320. package/PLAN-AMELIORATION.md +0 -220
  321. package/PLAN-DOCS-AGENTS.md +0 -80
  322. package/ai/AGENTS.md +0 -56
  323. package/ai/cursor/rules/concorde-menu.mdc +0 -15
  324. package/ai/cursor/rules/concorde-scope.mdc +0 -14
  325. package/ai/cursor/rules/concorde-theme.mdc +0 -13
  326. package/ai/cursor/rules/concorde.mdc +0 -66
  327. package/ai/jetbrains/rules/concorde.md +0 -53
  328. package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
  329. package/ai/skills/concorde-imports/SKILL.md +0 -78
  330. package/ai/skills/concorde-menu/SKILL.md +0 -74
  331. package/ai/skills/concorde-scope/SKILL.md +0 -70
  332. package/ai/skills/concorde-theme/SKILL.md +0 -57
  333. package/docs/.htaccess +0 -75
  334. package/docs/404.html +0 -15
  335. package/docs/404.md +0 -5
  336. package/docs/assets/index-BgG6FFPt.js +0 -11765
  337. package/docs/assets/index-x89XINSG.css +0 -1
  338. package/docs/core/components/functional/date/date.html +0 -211
  339. package/docs/core/components/functional/date/date.md +0 -150
  340. package/docs/core/components/functional/fetch/fetch.html +0 -180
  341. package/docs/core/components/functional/fetch/fetch.md +0 -108
  342. package/docs/core/components/functional/if/if.html +0 -65
  343. package/docs/core/components/functional/if/if.md +0 -34
  344. package/docs/core/components/functional/jsonata/jsonata.html +0 -110
  345. package/docs/core/components/functional/jsonata/jsonata.md +0 -61
  346. package/docs/core/components/functional/list/list.html +0 -198
  347. package/docs/core/components/functional/list/list.md +0 -121
  348. package/docs/core/components/functional/mix/mix.html +0 -78
  349. package/docs/core/components/functional/mix/mix.md +0 -46
  350. package/docs/core/components/functional/queue/queue.html +0 -155
  351. package/docs/core/components/functional/queue/queue.md +0 -51
  352. package/docs/core/components/functional/router/router.html +0 -154
  353. package/docs/core/components/functional/router/router.md +0 -93
  354. package/docs/core/components/functional/sdui/sdui-extension-points.md +0 -94
  355. package/docs/core/components/functional/sdui/sdui.html +0 -397
  356. package/docs/core/components/functional/sdui/sdui.md +0 -307
  357. package/docs/core/components/functional/states/states.html +0 -141
  358. package/docs/core/components/functional/states/states.md +0 -112
  359. package/docs/core/components/functional/submit/submit.html +0 -178
  360. package/docs/core/components/functional/submit/submit.md +0 -106
  361. package/docs/core/components/functional/subscriber/subscriber.md +0 -91
  362. package/docs/core/components/functional/translation/translation.html +0 -60
  363. package/docs/core/components/functional/translation/translation.md +0 -38
  364. package/docs/core/components/functional/value/value.html +0 -81
  365. package/docs/core/components/functional/value/value.md +0 -47
  366. package/docs/core/components/ui/alert/alert.md +0 -186
  367. package/docs/core/components/ui/alert-messages/alert-messages.md +0 -85
  368. package/docs/core/components/ui/badge/badge.md +0 -181
  369. package/docs/core/components/ui/button/button.html +0 -309
  370. package/docs/core/components/ui/button/button.md +0 -216
  371. package/docs/core/components/ui/captcha/captcha.html +0 -80
  372. package/docs/core/components/ui/captcha/captcha.md +0 -56
  373. package/docs/core/components/ui/card/card.md +0 -215
  374. package/docs/core/components/ui/divider/divider.md +0 -126
  375. package/docs/core/components/ui/form/checkbox/checkbox.html +0 -200
  376. package/docs/core/components/ui/form/checkbox/checkbox.md +0 -125
  377. package/docs/core/components/ui/form/fieldset/fieldset.html +0 -238
  378. package/docs/core/components/ui/form/fieldset/fieldset.md +0 -161
  379. package/docs/core/components/ui/form/form-actions/form-actions.md +0 -98
  380. package/docs/core/components/ui/form/form-layout/form-layout.html +0 -115
  381. package/docs/core/components/ui/form/form-layout/form-layout.md +0 -109
  382. package/docs/core/components/ui/form/input/input.html +0 -235
  383. package/docs/core/components/ui/form/input/input.md +0 -142
  384. package/docs/core/components/ui/form/radio/radio.html +0 -144
  385. package/docs/core/components/ui/form/radio/radio.md +0 -78
  386. package/docs/core/components/ui/form/select/select.html +0 -178
  387. package/docs/core/components/ui/form/select/select.md +0 -86
  388. package/docs/core/components/ui/form/switch/switch.html +0 -146
  389. package/docs/core/components/ui/form/switch/switch.md +0 -80
  390. package/docs/core/components/ui/form/textarea/textarea.html +0 -162
  391. package/docs/core/components/ui/form/textarea/textarea.md +0 -82
  392. package/docs/core/components/ui/group/group.html +0 -113
  393. package/docs/core/components/ui/group/group.md +0 -77
  394. package/docs/core/components/ui/icon/icon.md +0 -214
  395. package/docs/core/components/ui/image/image.html +0 -194
  396. package/docs/core/components/ui/image/image.md +0 -167
  397. package/docs/core/components/ui/link/link.md +0 -81
  398. package/docs/core/components/ui/loader/loader.html +0 -114
  399. package/docs/core/components/ui/loader/loader.md +0 -87
  400. package/docs/core/components/ui/menu/menu.md +0 -370
  401. package/docs/core/components/ui/modal/modal.html +0 -324
  402. package/docs/core/components/ui/modal/modal.md +0 -211
  403. package/docs/core/components/ui/pop/pop.html +0 -250
  404. package/docs/core/components/ui/pop/pop.md +0 -216
  405. package/docs/core/components/ui/progress/progress.md +0 -109
  406. package/docs/core/components/ui/table/table.html +0 -333
  407. package/docs/core/components/ui/table/table.md +0 -267
  408. package/docs/core/components/ui/theme/theme.html +0 -116
  409. package/docs/core/components/ui/theme/theme.md +0 -97
  410. package/docs/core/components/ui/toast/toast.html +0 -185
  411. package/docs/core/components/ui/toast/toast.md +0 -147
  412. package/docs/core/components/ui/tooltip/tooltip.html +0 -112
  413. package/docs/core/components/ui/tooltip/tooltip.md +0 -89
  414. package/docs/docs/decorators/ancestor-attribute.html +0 -71
  415. package/docs/docs/decorators/ancestor-attribute.md +0 -59
  416. package/docs/docs/decorators/auto-subscribe.html +0 -61
  417. package/docs/docs/decorators/auto-subscribe.md +0 -40
  418. package/docs/docs/decorators/bind.html +0 -86
  419. package/docs/docs/decorators/bind.md +0 -77
  420. package/docs/docs/decorators/get.html +0 -166
  421. package/docs/docs/decorators/get.md +0 -160
  422. package/docs/docs/decorators/handle.html +0 -139
  423. package/docs/docs/decorators/handle.md +0 -119
  424. package/docs/docs/decorators/on-assign.html +0 -72
  425. package/docs/docs/decorators/on-assign.md +0 -63
  426. package/docs/docs/decorators/patch.html +0 -76
  427. package/docs/docs/decorators/patch.md +0 -44
  428. package/docs/docs/decorators/post.html +0 -150
  429. package/docs/docs/decorators/post.md +0 -134
  430. package/docs/docs/decorators/publish.html +0 -74
  431. package/docs/docs/decorators/publish.md +0 -56
  432. package/docs/docs/decorators/put.html +0 -83
  433. package/docs/docs/decorators/put.md +0 -51
  434. package/docs/docs/decorators/subscribe.html +0 -91
  435. package/docs/docs/decorators/subscribe.md +0 -87
  436. package/docs/docs/decorators/wait-for-ancestors.html +0 -82
  437. package/docs/docs/decorators/wait-for-ancestors.md +0 -76
  438. package/docs/docs/directives/sub.html +0 -79
  439. package/docs/docs/directives/sub.md +0 -75
  440. package/docs/docs/directives/t.html +0 -91
  441. package/docs/docs/directives/t.md +0 -73
  442. package/docs/docs/getting-started/ai-agents.md +0 -76
  443. package/docs/docs/getting-started/components.html +0 -27
  444. package/docs/docs/getting-started/components.md +0 -5
  445. package/docs/docs/getting-started/installation.html +0 -69
  446. package/docs/docs/getting-started/installation.md +0 -36
  447. package/docs/docs/getting-started/my-first-component.md +0 -227
  448. package/docs/docs/getting-started/start.html +0 -47
  449. package/docs/docs/getting-started/start.md +0 -35
  450. package/docs/docs/getting-started/theming.md +0 -253
  451. package/docs/docs/index.html +0 -99
  452. package/docs/docs/misc/api-configuration.md +0 -79
  453. package/docs/docs/misc/dataProviderKey.md +0 -168
  454. package/docs/hubs/decorators.html +0 -443
  455. package/docs/hubs/form-components.html +0 -404
  456. package/docs/hubs/remote-data.html +0 -371
  457. package/docs/img/archive/concorde-001-2cv.webp +0 -0
  458. package/docs/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
  459. package/docs/img/archive/concorde-red-arrows-2002.webm +0 -0
  460. package/docs/img/archive/credits.json +0 -28
  461. package/docs/index.md +0 -22
  462. package/docs/src/core/components/functional/translation/translation.md +0 -38
  463. package/docs/src/docs/decorators/ancestor-attribute.md +0 -59
  464. package/docs/src/docs/decorators/auto-subscribe.md +0 -40
  465. package/docs/src/docs/decorators/bind.md +0 -77
  466. package/docs/src/docs/decorators/get.md +0 -160
  467. package/docs/src/docs/decorators/handle.md +0 -119
  468. package/docs/src/docs/decorators/on-assign.md +0 -63
  469. package/docs/src/docs/decorators/patch.md +0 -44
  470. package/docs/src/docs/decorators/post.md +0 -134
  471. package/docs/src/docs/decorators/publish.md +0 -56
  472. package/docs/src/docs/decorators/put.md +0 -51
  473. package/docs/src/docs/decorators/subscribe.md +0 -87
  474. package/docs/src/docs/decorators/wait-for-ancestors.md +0 -76
  475. package/docs/src/docs/directives/sub.md +0 -75
  476. package/docs/src/docs/directives/t.md +0 -73
  477. package/docs/src/docs/getting-started/components.md +0 -5
  478. package/docs/src/docs/getting-started/create-a-component.md +0 -136
  479. package/docs/src/docs/getting-started/dataFlow.md +0 -87
  480. package/docs/src/docs/getting-started/installation.md +0 -36
  481. package/docs/src/docs/misc/docs-mock-api.md +0 -62
  482. package/docs/src/docs/misc/dynamic-path.md +0 -71
  483. package/docs/src/docs/misc/endpoint.md +0 -45
  484. package/docs/src/docs/misc/html-integration.md +0 -14
  485. /package/{docs → dist}/img/concorde/plane_01.jpg +0 -0
  486. /package/{docs → dist}/img/concorde/plane_02.jpg +0 -0
  487. /package/{docs → dist}/img/concorde/plane_03.jpg +0 -0
  488. /package/{docs → dist}/img/concorde/plane_04.jpg +0 -0
  489. /package/{docs → dist}/img/concorde/plane_05.jpg +0 -0
  490. /package/{docs → dist}/img/concorde/plane_06.jpg +0 -0
  491. /package/{docs → dist}/img/concorde/plane_07.jpg +0 -0
  492. /package/{docs → dist}/img/concorde/plane_08.jpg +0 -0
  493. /package/{docs → dist}/img/concorde/plane_09.jpg +0 -0
  494. /package/{docs → dist}/img/concorde/plane_10.jpg +0 -0
  495. /package/{docs → dist}/img/concorde/plane_11.jpg +0 -0
  496. /package/{docs → dist}/img/concorde/plane_12.jpg +0 -0
  497. /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 `img/concorde/plane_XX.jpg` (relative path, served from `public/`). Always set a meaningful `alt`.
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
@@ -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 `.cursor/skills`, `.cursor/rules`, `.aiassistant/rules` et `AGENTS.md`. Voir [ai/README.md](ai/README.md).
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
- Fichiers installables pour **Cursor** et **JetBrains AI Assistant**.
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
- ## Installation dans un projet
6
-
7
- ```bash
8
- node node_modules/@supersoniks/concorde/scripts/ai-init.mjs
9
- ```
10
-
11
- Options :
5
+ ## Structure
12
6
 
13
- - `--overlay <dir>` — couche projet ; lit `AGENTS.concorde.md` (legacy : `AGENTS.overlay.md`, `AGENTS.starter.md`)
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
- Depuis le dépôt Concorde (dev) : `yarn ai-init`
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
- ## Politique `AGENTS.md` (non invasive)
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
- | Situation | Comportement par défaut |
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
- ```text
33
- [optional project preamble — short, project-only]
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
- - Tout **après** `<!-- concorde-ai -->` est **régénéré** à chaque run (pas d’empilement).
40
- - Ne pas recopier le guide Concorde dans le préambule : notes projet → `overlay/AGENTS.concorde.md`.
41
- - Si le préambule duplique `ai/AGENTS.md`, `ai-init` le **allège / drop** et affiche un warning.
42
- - Legacy : `AGENTS.overlay.md` / `AGENTS.starter.md` encore lus si `AGENTS.concorde.md` est absent (warning de dépréciation).
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
- ## Contenu
35
+ Options :
45
36
 
46
- | Dossier | Cible |
47
- |---------|--------|
48
- | `skills/` | `.cursor/skills/` (concorde, imports, scope, theme, menu) |
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
- ## Template starter
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
- Le package `create-concorde-ts-starter` ajoute un overlay via `yarn ai:sync`.
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