@supersoniks/concorde 5.1.1 → 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 (459) hide show
  1. package/.agents/skills/concorde-docs/SKILL.md +153 -0
  2. package/.agents/skills/{concorde-component-docs/template.md → concorde-docs/templates/component.md} +6 -2
  3. package/.agents/skills/concorde-docs/templates/decorator.md +43 -0
  4. package/.agents/skills/concorde-docs/templates/guide.md +25 -0
  5. package/.claude/skills +1 -0
  6. package/.github/workflows/ci.yml +21 -0
  7. package/.github-export-ignore +30 -0
  8. package/CONTRIBUTING.md +59 -0
  9. package/DEV.md +54 -0
  10. package/LICENSE +21 -0
  11. package/OPEN_SOURCE_CHECKPOINT.md +133 -0
  12. package/README.md +4 -4
  13. package/ai/README.md +29 -41
  14. package/ai/skills/concorde/SKILL.md +54 -324
  15. package/ai/skills/concorde/rules/composition.md +32 -0
  16. package/ai/skills/concorde/rules/data.md +47 -0
  17. package/ai/skills/concorde/rules/http.md +25 -0
  18. package/ai/skills/concorde/rules/lists-forms.md +35 -0
  19. package/ai/skills/concorde/rules/styling.md +46 -0
  20. package/ai/skills/concorde/rules/troubleshooting.md +45 -0
  21. package/build-infos.json +1 -1
  22. package/concorde-core.bundle.js +177 -177
  23. package/concorde-core.es.js +4993 -4833
  24. package/custom-elements-manifest.public.config.mjs +8 -0
  25. package/{.tmp-cem/custom-elements.json → custom-elements.json} +11758 -8904
  26. package/dist/concorde-core.bundle.js +177 -177
  27. package/dist/concorde-core.es.js +4993 -4833
  28. package/dist/docs-mock-api-sw.js +58 -223
  29. package/dist/docs-mock-api-sw.js.map +4 -4
  30. package/dist/img/concorde/plane_01.jpg +0 -0
  31. package/dist/img/concorde/plane_02.jpg +0 -0
  32. package/dist/img/concorde/plane_03.jpg +0 -0
  33. package/dist/img/concorde/plane_04.jpg +0 -0
  34. package/dist/img/concorde/plane_05.jpg +0 -0
  35. package/dist/img/concorde/plane_06.jpg +0 -0
  36. package/dist/img/concorde/plane_07.jpg +0 -0
  37. package/dist/img/concorde/plane_08.jpg +0 -0
  38. package/dist/img/concorde/plane_09.jpg +0 -0
  39. package/dist/img/concorde/plane_10.jpg +0 -0
  40. package/dist/img/concorde/plane_11.jpg +0 -0
  41. package/dist/img/concorde/plane_12.jpg +0 -0
  42. package/dist/img/concorde/plane_13.jpg +0 -0
  43. package/dist/img/og-concorde.jpg +0 -0
  44. package/dist/robots.txt +11 -10
  45. package/docs/assets/index-D_alEsng.js +12122 -0
  46. package/docs/crawl/core/components/functional/date/date.html +190 -0
  47. package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
  48. package/docs/crawl/core/components/functional/if/if.html +27 -0
  49. package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
  50. package/docs/crawl/core/components/functional/list/list.html +70 -0
  51. package/docs/crawl/core/components/functional/mix/mix.html +45 -0
  52. package/docs/crawl/core/components/functional/queue/queue.html +96 -0
  53. package/docs/crawl/core/components/functional/router/router.html +106 -0
  54. package/docs/crawl/core/components/functional/sdui/sdui-extension-points.html +126 -0
  55. package/docs/crawl/core/components/functional/sdui/sdui.html +368 -0
  56. package/docs/crawl/core/components/functional/states/states.html +66 -0
  57. package/docs/crawl/core/components/functional/submit/submit.html +160 -0
  58. package/docs/crawl/core/components/functional/subscriber/subscriber.html +67 -0
  59. package/docs/crawl/core/components/functional/value/value.html +51 -0
  60. package/docs/crawl/core/components/ui/alert/alert.html +211 -0
  61. package/docs/crawl/core/components/ui/alert-messages/alert-messages.html +131 -0
  62. package/docs/crawl/core/components/ui/badge/badge.html +197 -0
  63. package/docs/crawl/core/components/ui/button/button.html +150 -0
  64. package/docs/crawl/core/components/ui/captcha/captcha.html +112 -0
  65. package/docs/crawl/core/components/ui/card/card.html +253 -0
  66. package/docs/crawl/core/components/ui/divider/divider.html +144 -0
  67. package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
  68. package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +266 -0
  69. package/docs/crawl/core/components/ui/form/form-actions/form-actions.html +122 -0
  70. package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +121 -0
  71. package/docs/crawl/core/components/ui/form/input/input.html +109 -0
  72. package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
  73. package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
  74. package/docs/crawl/core/components/ui/form/select/select.html +73 -0
  75. package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
  76. package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
  77. package/docs/crawl/core/components/ui/group/group.html +104 -0
  78. package/docs/crawl/core/components/ui/icon/icon.html +222 -0
  79. package/docs/crawl/core/components/ui/image/image.html +298 -0
  80. package/docs/crawl/core/components/ui/link/link.html +100 -0
  81. package/docs/crawl/core/components/ui/loader/loader.html +124 -0
  82. package/docs/crawl/core/components/ui/menu/menu.html +394 -0
  83. package/docs/crawl/core/components/ui/modal/modal.html +342 -0
  84. package/docs/crawl/core/components/ui/pop/pop.html +296 -0
  85. package/docs/crawl/core/components/ui/progress/progress.html +131 -0
  86. package/docs/crawl/core/components/ui/table/table.html +545 -0
  87. package/docs/crawl/core/components/ui/theme/theme.html +131 -0
  88. package/docs/crawl/core/components/ui/toast/toast.html +233 -0
  89. package/docs/crawl/core/components/ui/tooltip/tooltip.html +140 -0
  90. package/docs/crawl/docs/_core-concept/dataFlow.html +177 -0
  91. package/docs/crawl/docs/_core-concept/overview.html +66 -0
  92. package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
  93. package/docs/crawl/docs/_decorators/ancestor-attribute.html +117 -0
  94. package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
  95. package/docs/crawl/docs/_decorators/bind.html +141 -0
  96. package/docs/crawl/docs/_decorators/get.html +149 -0
  97. package/docs/crawl/docs/_decorators/handle.html +165 -0
  98. package/docs/crawl/docs/_decorators/on-assign.html +355 -0
  99. package/docs/crawl/docs/_decorators/patch.html +78 -0
  100. package/docs/crawl/docs/_decorators/post.html +139 -0
  101. package/docs/crawl/docs/_decorators/publish.html +61 -0
  102. package/docs/crawl/docs/_decorators/put.html +78 -0
  103. package/docs/crawl/docs/_decorators/subscribe.html +109 -0
  104. package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
  105. package/docs/crawl/docs/_directives/sub.html +93 -0
  106. package/docs/crawl/docs/_getting-started/ai-agents.html +173 -0
  107. package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
  108. package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
  109. package/docs/crawl/docs/_getting-started/create-a-component.html +111 -0
  110. package/docs/crawl/docs/_getting-started/my-first-component.html +189 -0
  111. package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
  112. package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
  113. package/docs/crawl/docs/_getting-started/start.html +76 -0
  114. package/docs/crawl/docs/_getting-started/theming.html +333 -0
  115. package/docs/crawl/docs/_misc/api-configuration.html +149 -0
  116. package/docs/crawl/docs/_misc/dataProviderKey.html +135 -0
  117. package/docs/crawl/docs/_misc/docs-mock-api.html +158 -0
  118. package/docs/crawl/docs/_misc/dynamic-path.html +180 -0
  119. package/docs/crawl/docs/_misc/endpoint.html +50 -0
  120. package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
  121. package/docs/crawl/docs/_misc/html-integration.html +48 -0
  122. package/docs/crawl/hubs/decorators.html +547 -0
  123. package/docs/crawl/hubs/form-components.html +381 -0
  124. package/docs/crawl/hubs/remote-data.html +452 -0
  125. package/docs/crawl/index.html +103 -0
  126. package/docs/index.html +1 -1
  127. package/docs/llms-full.txt +7174 -0
  128. package/docs/llms.txt +98 -0
  129. package/docs/sitemap.xml +243 -0
  130. package/docs/src/core/components/functional/date/date.md +290 -0
  131. package/docs/src/core/components/functional/fetch/fetch.md +125 -0
  132. package/docs/src/core/components/functional/if/if.md +9 -0
  133. package/docs/src/core/components/functional/jsonata/jsonata.md +56 -0
  134. package/docs/src/core/components/functional/list/list.md +65 -0
  135. package/docs/src/core/components/functional/mix/mix.md +41 -0
  136. package/docs/src/core/components/functional/queue/queue.md +72 -0
  137. package/docs/src/core/components/functional/router/router.md +94 -0
  138. package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +511 -0
  139. package/docs/src/core/components/functional/sdui/component-catalog.json +3103 -0
  140. package/docs/src/core/components/functional/sdui/default-library.json +108 -0
  141. package/docs/src/core/components/functional/sdui/example.json +99 -0
  142. package/docs/src/core/components/functional/sdui/sdui-extension-points.md +94 -0
  143. package/docs/src/core/components/functional/sdui/sdui.md +478 -0
  144. package/docs/src/core/components/functional/states/states.md +87 -0
  145. package/docs/src/core/components/functional/submit/submit.md +114 -0
  146. package/docs/src/core/components/functional/subscriber/subscriber.md +91 -0
  147. package/docs/src/core/components/functional/value/value.md +35 -0
  148. package/docs/src/core/components/ui/alert/alert.md +196 -0
  149. package/docs/src/core/components/ui/alert-messages/alert-messages.md +85 -0
  150. package/docs/src/core/components/ui/badge/badge.md +188 -0
  151. package/docs/src/core/components/ui/button/button.md +183 -0
  152. package/docs/src/core/components/ui/captcha/captcha.md +71 -0
  153. package/docs/src/core/components/ui/card/card.md +215 -0
  154. package/docs/src/core/components/ui/divider/divider.md +129 -0
  155. package/docs/src/core/components/ui/form/checkbox/checkbox.md +77 -0
  156. package/docs/src/core/components/ui/form/fieldset/fieldset.md +205 -0
  157. package/docs/src/core/components/ui/form/form-actions/form-actions.md +100 -0
  158. package/docs/src/core/components/ui/form/form-layout/form-layout.md +119 -0
  159. package/docs/src/core/components/ui/form/input/input.md +142 -0
  160. package/docs/src/core/components/ui/form/radio/radio.md +57 -0
  161. package/docs/src/core/components/ui/form/select/select.md +71 -0
  162. package/docs/src/core/components/ui/form/switch/switch.md +57 -0
  163. package/docs/src/core/components/ui/form/textarea/textarea.md +65 -0
  164. package/docs/src/core/components/ui/group/group.md +75 -0
  165. package/docs/src/core/components/ui/icon/icon.md +214 -0
  166. package/docs/src/core/components/ui/icon/icons.json +1 -0
  167. package/docs/src/core/components/ui/image/image.md +233 -0
  168. package/docs/src/core/components/ui/link/link.md +81 -0
  169. package/docs/src/core/components/ui/loader/loader.md +112 -0
  170. package/docs/src/core/components/ui/menu/menu.md +370 -0
  171. package/docs/src/core/components/ui/modal/modal.md +235 -0
  172. package/docs/src/core/components/ui/pop/pop.md +294 -0
  173. package/docs/src/core/components/ui/progress/progress.md +109 -0
  174. package/docs/src/core/components/ui/table/table.md +431 -0
  175. package/docs/src/core/components/ui/theme/theme.md +122 -0
  176. package/docs/src/core/components/ui/toast/toast.md +216 -0
  177. package/docs/src/core/components/ui/tooltip/tooltip.md +124 -0
  178. package/{src → docs/src}/docs/_core-concept/subscriber.md +0 -0
  179. package/{src → docs/src}/docs/_getting-started/my-first-subscriber.md +0 -0
  180. package/{src → docs/src}/docs/_getting-started/pubsub.md +0 -0
  181. package/docs/src/docs/_getting-started/theming.md +253 -0
  182. package/docs/src/docs/search/docs-search.json +12242 -0
  183. package/docs/src/tag-list.json +1 -0
  184. package/docs/src/tsconfig-model.json +23 -0
  185. package/docs/src/tsconfig.declarations.json +22 -0
  186. package/docs/src/tsconfig.emit.json +23 -0
  187. package/docs/src/tsconfig.json +1332 -0
  188. package/gitlab/job_github_mirror.sh +39 -0
  189. package/index.html +157 -5
  190. package/package.json +22 -4
  191. package/public/docs-mock-api-sw.js +58 -223
  192. package/public/docs-mock-api-sw.js.map +4 -4
  193. package/public/img/concorde/plane_01.jpg +0 -0
  194. package/public/img/concorde/plane_02.jpg +0 -0
  195. package/public/img/concorde/plane_03.jpg +0 -0
  196. package/public/img/concorde/plane_04.jpg +0 -0
  197. package/public/img/concorde/plane_05.jpg +0 -0
  198. package/public/img/concorde/plane_06.jpg +0 -0
  199. package/public/img/concorde/plane_07.jpg +0 -0
  200. package/public/img/concorde/plane_08.jpg +0 -0
  201. package/public/img/concorde/plane_09.jpg +0 -0
  202. package/public/img/concorde/plane_10.jpg +0 -0
  203. package/public/img/concorde/plane_11.jpg +0 -0
  204. package/public/img/concorde/plane_12.jpg +0 -0
  205. package/public/img/concorde/plane_13.jpg +0 -0
  206. package/public/img/og-concorde.jpg +0 -0
  207. package/public/robots.txt +11 -10
  208. package/scripts/ai-init.mjs +104 -379
  209. package/scripts/ai-init.test.mjs +81 -239
  210. package/scripts/docs-markdown-vite-plugin.ts +43 -0
  211. package/scripts/docs-public-url.mjs +56 -0
  212. package/scripts/docs.htaccess +82 -0
  213. package/scripts/generate-cem.mjs +244 -0
  214. package/scripts/generate-cem.test.mjs +122 -0
  215. package/scripts/generate-crawl-docs.mjs +233 -118
  216. package/scripts/generate-crawl-docs.test.mjs +124 -0
  217. package/scripts/generate-sdui-catalog.mjs +11 -10
  218. package/scripts/github-export.mjs +150 -0
  219. package/scripts/post-build-docs.js +37 -50
  220. package/scripts/post-build.mjs +0 -0
  221. package/scripts/pre-publish.mjs +2 -1
  222. package/scripts/site-pages.mjs +212 -0
  223. package/scripts/site-pages.test.mjs +116 -0
  224. package/site-pages/about.md +22 -0
  225. package/site-pages/privacy.md +32 -0
  226. package/src/core/components/functional/date/date.md +91 -231
  227. package/src/core/components/functional/example/example.ts +3 -1
  228. package/src/core/components/functional/fetch/fetch.md +66 -83
  229. package/src/core/components/functional/if/if.md +28 -3
  230. package/src/core/components/functional/if/if.ts +0 -0
  231. package/src/core/components/functional/jsonata/jsonata.md +42 -37
  232. package/src/core/components/functional/list/list.demo.ts +0 -0
  233. package/src/core/components/functional/list/list.md +103 -43
  234. package/src/core/components/functional/list/list.ts +17 -4
  235. package/src/core/components/functional/mix/mix.md +31 -26
  236. package/src/core/components/functional/queue/queue.demo.ts +10 -7
  237. package/src/core/components/functional/queue/queue.md +40 -61
  238. package/src/core/components/functional/router/router.demo.ts +16 -16
  239. package/src/core/components/functional/router/router.md +64 -65
  240. package/src/core/components/functional/router/router.ts +0 -0
  241. package/src/core/components/functional/sdui/SDUIDescriptorTransformer.ts +0 -0
  242. package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  243. package/src/core/components/functional/sdui/component-catalog.json +2 -2
  244. package/src/core/components/functional/sdui/example.json +19 -86
  245. package/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
  246. package/src/core/components/functional/sdui/sdui-immutable.spec.ts +74 -0
  247. package/src/core/components/functional/sdui/sdui.md +187 -358
  248. package/src/core/components/functional/sdui/sdui.ts +33 -8
  249. package/src/core/components/functional/sdui/types.ts +0 -0
  250. package/src/core/components/functional/states/states.demo.ts +21 -22
  251. package/src/core/components/functional/states/states.md +86 -61
  252. package/src/core/components/functional/states/states.ts +1 -1
  253. package/src/core/components/functional/submit/submit.md +64 -72
  254. package/src/core/components/functional/submit/submit.spec.ts +60 -0
  255. package/src/core/components/functional/submit/submit.ts +6 -3
  256. package/src/core/components/functional/subscriber/subscriber.ts +0 -0
  257. package/src/core/components/functional/translation/translation.md +38 -0
  258. package/src/core/components/functional/value/value.md +34 -22
  259. package/src/core/components/functional/value/value.ts +0 -0
  260. package/src/core/components/ui/_css/size.ts +0 -0
  261. package/src/core/components/ui/alert/alert.md +48 -58
  262. package/src/core/components/ui/badge/badge.md +27 -34
  263. package/src/core/components/ui/button/button.md +139 -106
  264. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  265. package/src/core/components/ui/captcha/captcha.md +17 -32
  266. package/src/core/components/ui/card/card.md +6 -6
  267. package/src/core/components/ui/divider/divider.md +8 -11
  268. package/src/core/components/ui/form/checkbox/checkbox.md +90 -42
  269. package/src/core/components/ui/form/fieldset/fieldset.md +31 -75
  270. package/src/core/components/ui/form/form-actions/form-actions.md +14 -16
  271. package/src/core/components/ui/form/form-layout/form-layout.md +19 -29
  272. package/src/core/components/ui/form/input/input.md +108 -90
  273. package/src/core/components/ui/form/input/input.ts +8 -2
  274. package/src/core/components/ui/form/radio/radio.md +65 -30
  275. package/src/core/components/ui/form/select/select.md +60 -45
  276. package/src/core/components/ui/form/switch/switch.md +57 -34
  277. package/src/core/components/ui/form/textarea/textarea.md +55 -38
  278. package/src/core/components/ui/group/group.md +35 -33
  279. package/src/core/components/ui/icon/icon.md +4 -4
  280. package/src/core/components/ui/image/image.md +41 -107
  281. package/src/core/components/ui/link/link.md +6 -6
  282. package/src/core/components/ui/loader/loader.md +30 -55
  283. package/src/core/components/ui/menu/menu.md +27 -27
  284. package/src/core/components/ui/modal/modal.md +72 -96
  285. package/src/core/components/ui/pop/pop.md +80 -158
  286. package/src/core/components/ui/progress/progress.md +2 -2
  287. package/src/core/components/ui/table/table.md +91 -255
  288. package/src/core/components/ui/theme/theme.md +11 -36
  289. package/src/core/components/ui/toast/toast.md +48 -117
  290. package/src/core/components/ui/tooltip/tooltip.md +27 -62
  291. package/src/core/decorators/subscriber/bind.ts +9 -14
  292. package/src/core/decorators/subscriber/subscribe.ts +15 -9
  293. package/src/core/decorators/subscriber/subscribe.type-test.ts +14 -5
  294. package/src/core/mixins/Subscriber.ts +0 -0
  295. package/src/core/utils/DataBindObserver.ts +0 -0
  296. package/src/core/utils/LocationHandler.spec.ts +80 -0
  297. package/src/core/utils/LocationHandler.ts +5 -9
  298. package/src/core/utils/Objects.ts +0 -0
  299. package/src/core/utils/PublisherProxy.ts +166 -125
  300. package/src/core/utils/deepReadonly.spec.ts +66 -0
  301. package/src/core/utils/deepReadonly.ts +71 -0
  302. package/src/core/utils/immutableValue.spec.ts +54 -0
  303. package/src/core/utils/immutableValue.ts +102 -0
  304. package/src/core/utils/nestedDotForm.spec.ts +88 -0
  305. package/src/core/utils/publisherImmutable.spec.ts +76 -0
  306. package/src/core/utils/route.ts +0 -0
  307. package/src/core/utils/strictGet.spec.ts +61 -0
  308. package/src/core/utils/strictGet.ts +102 -0
  309. package/src/css.d.ts +19 -0
  310. package/src/docs/components/docs-demo-sources.ts +55 -140
  311. package/src/docs/components/docs-lit-demo.ts +1 -3
  312. package/src/docs/components/docs-source-link.ts +0 -82
  313. package/src/docs/decorators/ancestor-attribute.md +59 -0
  314. package/src/docs/decorators/auto-subscribe.md +40 -0
  315. package/src/docs/decorators/bind.md +76 -0
  316. package/src/docs/decorators/get.md +160 -0
  317. package/src/docs/decorators/handle.md +119 -0
  318. package/src/docs/decorators/on-assign.md +63 -0
  319. package/src/docs/decorators/patch.md +44 -0
  320. package/src/docs/decorators/post.md +134 -0
  321. package/src/docs/decorators/publish.md +56 -0
  322. package/src/docs/decorators/put.md +51 -0
  323. package/src/docs/decorators/subscribe.md +87 -0
  324. package/src/docs/decorators/wait-for-ancestors.md +76 -0
  325. package/src/docs/directives/sub.md +75 -0
  326. package/src/docs/directives/t.md +73 -0
  327. package/src/docs/docs-location.spec.ts +56 -0
  328. package/src/docs/docs-location.ts +133 -32
  329. package/src/docs/docs.ts +1 -2
  330. package/src/docs/example/decorators-demo-bind-demos.ts +83 -135
  331. package/src/docs/example/decorators-demo-geo.ts +30 -19
  332. package/src/docs/example/decorators-demo-post.ts +88 -186
  333. package/src/docs/example/decorators-demo-subscribe-publish-get-demos.ts +165 -268
  334. package/src/docs/example/decorators-demo.ts +85 -98
  335. package/src/docs/example/docs-api-config-demos.ts +19 -20
  336. package/src/docs/example/docs-flight-demos.ts +147 -0
  337. package/src/docs/example/docs-jsonata-demos.ts +52 -52
  338. package/src/docs/example/docs-list-demos.ts +43 -123
  339. package/src/docs/example/docs-provider-keys.ts +21 -28
  340. package/src/docs/example/docs-queue-demos.ts +37 -77
  341. package/src/docs/example/docs-router-demos.ts +20 -25
  342. package/src/docs/example/docs-submit-demos.ts +48 -48
  343. package/src/docs/example/docs-toggle-demos.ts +4 -3
  344. package/src/docs/example/users.ts +0 -0
  345. package/src/docs/getting-started/ai-agents.md +50 -0
  346. package/src/docs/getting-started/create-a-component.md +136 -0
  347. package/src/docs/getting-started/dataFlow.md +87 -0
  348. package/src/docs/getting-started/installation.md +36 -0
  349. package/src/docs/getting-started/my-first-component.md +227 -0
  350. package/src/docs/getting-started/start.md +35 -0
  351. package/src/docs/header/header.ts +11 -6
  352. package/src/docs/home/catalog.ts +1 -1
  353. package/src/docs/home/home.ts +20 -11
  354. package/src/docs/layout.ts +12 -13
  355. package/src/docs/misc/api-configuration.md +79 -0
  356. package/src/docs/misc/dataProviderKey.md +168 -0
  357. package/src/docs/misc/docs-mock-api.md +62 -0
  358. package/src/docs/misc/dynamic-path.md +71 -0
  359. package/src/docs/misc/endpoint.md +45 -0
  360. package/src/docs/misc/html-integration.md +14 -0
  361. package/src/docs/misc/publisher-get-immutability-docs-crawl.json +902 -0
  362. package/src/docs/misc/publisher-get-immutability-docs-recheck.json +13 -0
  363. package/src/docs/misc/publisher-get-immutability-study.md +229 -0
  364. package/src/docs/mock-api/api-config-mock.ts +5 -0
  365. package/src/docs/mock-api/fixtures.ts +0 -278
  366. package/src/docs/mock-api/flights.ts +89 -0
  367. package/src/docs/mock-api/router.ts +3 -4
  368. package/src/docs/mock-api/urls.ts +1 -2
  369. package/src/docs/navigation/navigation.ts +84 -101
  370. package/src/docs/navigation/toc.ts +7 -4
  371. package/src/docs/search/docs-search.json +3188 -5153
  372. package/src/docs/search/markdown-renderer.ts +31 -8
  373. package/src/docs/search/page.ts +9 -6
  374. package/src/docs/search/search.ts +154 -122
  375. package/src/docs/tailwind/css/docs/content.css +4 -5
  376. package/src/tsconfig.declarations.json +22 -0
  377. package/src/tsconfig.emit.json +23 -0
  378. package/src/tsconfig.json +53 -5
  379. package/src/tsconfig.tsbuildinfo +1 -1
  380. package/vite.config.mts +11 -2
  381. package/.agents/skills/concorde-component-docs/SKILL.md +0 -194
  382. package/.taste-skill/after/desktop-fold.jpg +0 -0
  383. package/.taste-skill/after/desktop-page-01.jpg +0 -0
  384. package/.taste-skill/after/desktop-page-02.jpg +0 -0
  385. package/.taste-skill/after/desktop-page-03.jpg +0 -0
  386. package/.taste-skill/after/mobile-fold.jpg +0 -0
  387. package/.taste-skill/after/mobile-page-01.jpg +0 -0
  388. package/.taste-skill/after/report.json +0 -4103
  389. package/.taste-skill/after/tablet-fold.jpg +0 -0
  390. package/.taste-skill/after/tablet-page-01.jpg +0 -0
  391. package/.taste-skill/after/tablet-page-02.jpg +0 -0
  392. package/.taste-skill/before/desktop-fold.jpg +0 -0
  393. package/.taste-skill/before/desktop-page-01.jpg +0 -0
  394. package/.taste-skill/before/desktop-page-02.jpg +0 -0
  395. package/.taste-skill/before/mobile-fold.jpg +0 -0
  396. package/.taste-skill/before/mobile-page-01.jpg +0 -0
  397. package/.taste-skill/before/report.json +0 -2556
  398. package/.taste-skill/before/tablet-fold.jpg +0 -0
  399. package/.taste-skill/before/tablet-page-01.jpg +0 -0
  400. package/.taste-skill/direction.json +0 -510
  401. package/.taste-skill/notes.md +0 -84
  402. package/.taste-skill/prod/desktop-fold.jpg +0 -0
  403. package/.taste-skill/prod/desktop-page-01.jpg +0 -0
  404. package/.taste-skill/prod/desktop-page-02.jpg +0 -0
  405. package/.taste-skill/prod/desktop-page-03.jpg +0 -0
  406. package/.taste-skill/prod/mobile-fold.jpg +0 -0
  407. package/.taste-skill/prod/mobile-page-01.jpg +0 -0
  408. package/.taste-skill/prod/mobile-page-02.jpg +0 -0
  409. package/.taste-skill/prod/report.json +0 -1973
  410. package/.taste-skill/prod/tablet-fold.jpg +0 -0
  411. package/.taste-skill/prod/tablet-page-01.jpg +0 -0
  412. package/.taste-skill/prod/tablet-page-02.jpg +0 -0
  413. package/AUDIT.md +0 -228
  414. package/PLAN-AMELIORATION.md +0 -220
  415. package/ai/AGENTS.md +0 -56
  416. package/ai/cursor/rules/concorde-menu.mdc +0 -15
  417. package/ai/cursor/rules/concorde-scope.mdc +0 -14
  418. package/ai/cursor/rules/concorde-theme.mdc +0 -13
  419. package/ai/cursor/rules/concorde.mdc +0 -66
  420. package/ai/jetbrains/rules/concorde.md +0 -53
  421. package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
  422. package/ai/skills/concorde-imports/SKILL.md +0 -78
  423. package/ai/skills/concorde-menu/SKILL.md +0 -74
  424. package/ai/skills/concorde-scope/SKILL.md +0 -70
  425. package/ai/skills/concorde-theme/SKILL.md +0 -57
  426. package/docs/assets/index-Bb-_LRyY.js +0 -12280
  427. package/src/docs/example/docs-input-autocomplete-demos.ts +0 -110
  428. package/src/docs/example/docs-joke-demos.ts +0 -297
  429. /package/{src → docs/src}/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -0
  430. /package/{src → docs/src}/docs/_core-concept/dataFlow.md +0 -0
  431. /package/{src → docs/src}/docs/_core-concept/overview.md +0 -0
  432. /package/{src → docs/src}/docs/_decorators/ancestor-attribute.md +0 -0
  433. /package/{src → docs/src}/docs/_decorators/auto-subscribe.md +0 -0
  434. /package/{src → docs/src}/docs/_decorators/bind.md +0 -0
  435. /package/{src → docs/src}/docs/_decorators/get.md +0 -0
  436. /package/{src → docs/src}/docs/_decorators/handle.md +0 -0
  437. /package/{src → docs/src}/docs/_decorators/on-assign.md +0 -0
  438. /package/{src → docs/src}/docs/_decorators/patch.md +0 -0
  439. /package/{src → docs/src}/docs/_decorators/post.md +0 -0
  440. /package/{src → docs/src}/docs/_decorators/publish.md +0 -0
  441. /package/{src → docs/src}/docs/_decorators/put.md +0 -0
  442. /package/{src → docs/src}/docs/_decorators/subscribe.md +0 -0
  443. /package/{src → docs/src}/docs/_decorators/wait-for-ancestors.md +0 -0
  444. /package/{src → docs/src}/docs/_directives/sub.md +0 -0
  445. /package/{src → docs/src}/docs/_getting-started/ai-agents.md +0 -0
  446. /package/{src → docs/src}/docs/_getting-started/concorde-manual-install.md +0 -0
  447. /package/{src → docs/src}/docs/_getting-started/concorde-outside.md +0 -0
  448. /package/{src → docs/src}/docs/_getting-started/create-a-component.md +0 -0
  449. /package/{src → docs/src}/docs/_getting-started/my-first-component.md +0 -0
  450. /package/{src → docs/src}/docs/_getting-started/start.md +0 -0
  451. /package/{src → docs/src}/docs/_misc/api-configuration.md +0 -0
  452. /package/{src → docs/src}/docs/_misc/dataProviderKey.md +0 -0
  453. /package/{src → docs/src}/docs/_misc/docs-mock-api.md +0 -0
  454. /package/{src → docs/src}/docs/_misc/dynamic-path.md +0 -0
  455. /package/{src → docs/src}/docs/_misc/endpoint.md +0 -0
  456. /package/{src → docs/src}/docs/_misc/formelement-subscriber-removal.md +0 -0
  457. /package/{src → docs/src}/docs/_misc/html-integration.md +0 -0
  458. /package/src/docs/{_getting-started → getting-started}/components.md +0 -0
  459. /package/src/docs/{_getting-started → getting-started}/theming.md +0 -0
@@ -1,110 +0,0 @@
1
- import { html, LitElement } from "lit";
2
- import { customElement } from "lit/decorators.js";
3
- import { DOCS_MOCK_GEO_SERVICE } from "../mock-api/urls";
4
-
5
- import "../../core/components/ui/form/input-autocomplete/input-autocomplete";
6
- import "../../core/components/ui/menu/menu-item";
7
-
8
- type CommuneRow = { nom: string; code: string };
9
-
10
- /** Ligne suggestion : pas de radio/name (évite d'écrire dans le form au render). */
11
- const communeItem =
12
- (valueKey: "nom" | "code") => (item: CommuneRow) =>
13
- html`<sonic-menu-item
14
- data-autocomplete-value=${item[valueKey]}
15
- data-autocomplete-label=${item.nom}
16
- >${item.nom}</sonic-menu-item
17
- >`;
18
-
19
- @customElement("docs-input-autocomplete-basic-demo")
20
- export class DocsInputAutocompleteBasicDemo extends LitElement {
21
- private items = communeItem("nom");
22
-
23
- render() {
24
- return html`
25
- <sonic-input-autocomplete
26
- class="w-64"
27
- label="Ville"
28
- formDataProvider="autoComplete-example-base"
29
- name="nom"
30
- placeholder="Paris, Lyon, Tours, ..."
31
- serviceURL=${DOCS_MOCK_GEO_SERVICE}
32
- dataProviderExpression="communes?limit=5"
33
- .items=${this.items}
34
- ></sonic-input-autocomplete>
35
- `;
36
- }
37
- }
38
-
39
- @customElement("docs-input-autocomplete-code-demo")
40
- export class DocsInputAutocompleteCodeDemo extends LitElement {
41
- private items = communeItem("code");
42
-
43
- render() {
44
- return html`
45
- <sonic-input-autocomplete
46
- class="w-64"
47
- label="Ville (code INSEE)"
48
- formDataProvider="autoComplete-example"
49
- name="code"
50
- value="13055"
51
- placeholder="Paris, Lyon, Tours, ..."
52
- serviceURL=${DOCS_MOCK_GEO_SERVICE}
53
- dataProviderExpression="communes?limit=5"
54
- searchParameter="nom"
55
- .items=${this.items}
56
- ></sonic-input-autocomplete>
57
- `;
58
- }
59
- }
60
-
61
- @customElement("docs-input-autocomplete-select-demo")
62
- export class DocsInputAutocompleteSelectDemo extends LitElement {
63
- private items = communeItem("code");
64
-
65
- render() {
66
- return html`
67
- <sonic-input-autocomplete
68
- select
69
- class="w-64"
70
- label="Ville (select)"
71
- formDataProvider="autoComplete-example2"
72
- name="code"
73
- value="69123"
74
- placeholder="Paris, Lyon, Tours, ..."
75
- serviceURL=${DOCS_MOCK_GEO_SERVICE}
76
- dataProviderExpression="communes?limit=5"
77
- searchParameter="nom"
78
- .items=${this.items}
79
- ></sonic-input-autocomplete>
80
- `;
81
- }
82
- }
83
-
84
- @customElement("docs-input-autocomplete-keyboard-demo")
85
- export class DocsInputAutocompleteKeyboardDemo extends LitElement {
86
- private items = (item: CommuneRow) =>
87
- html`<sonic-menu-item
88
- data-keyboard-nav="nav-autocomplete"
89
- data-autocomplete-value=${item.nom}
90
- data-autocomplete-label=${item.nom}
91
- >${item.nom}</sonic-menu-item
92
- >`;
93
-
94
- render() {
95
- return html`
96
- <sonic-input-autocomplete
97
- class="w-64"
98
- label="Ville"
99
- formDataProvider="autoComplete-example-keyboard"
100
- name="nom"
101
- data-keyboard-nav="nav-autocomplete"
102
- placeholder="Paris, Lyon, Tours, ..."
103
- serviceURL=${DOCS_MOCK_GEO_SERVICE}
104
- dataProviderExpression="communes?limit=60"
105
- minSearchLength="1"
106
- .items=${this.items}
107
- ></sonic-input-autocomplete>
108
- `;
109
- }
110
- }
@@ -1,297 +0,0 @@
1
- import { html, LitElement, nothing } from "lit";
2
- import { customElement, property, state } from "lit/decorators.js";
3
- import {
4
- ancestorAttribute,
5
- subscribe,
6
- } from "@supersoniks/concorde/core/decorators/Subscriber";
7
- import { DataProviderKey } from "@supersoniks/concorde/core/utils/dataProviderKey";
8
- import { DOCS_MOCK_JOKES_SERVICE } from "../mock-api/urls";
9
- import {
10
- docsJokeCheckboxFilterKey,
11
- docsJokeInputFilterKey,
12
- docsJokeRadioFilterKey,
13
- docsJokeSelectFilterKey,
14
- docsJokeSwitchFilterKey,
15
- } from "./docs-provider-keys";
16
- import { tailwind } from "../tailwind";
17
-
18
- import "../../core/components/functional/queue/queue";
19
- import "../../core/components/ui/form/input/input";
20
- import "../../core/components/ui/form/select/select";
21
- import "../../core/components/ui/form/checkbox/checkbox";
22
- import "../../core/components/ui/form/radio/radio";
23
- import "../../core/components/ui/form/switch/switch";
24
-
25
- type JokeRow = {
26
- joke: string;
27
- setup?: string;
28
- delivery?: string;
29
- };
30
-
31
- const jokeRowKey = new DataProviderKey<
32
- JokeRow,
33
- { dataProvider: string | null }
34
- >("${dataProvider}");
35
-
36
- const filterFieldKey = new DataProviderKey<
37
- string,
38
- { filterProvider: string; field: string }
39
- >("${filterProvider}.${field}");
40
-
41
- @customElement("docs-joke-item")
42
- export class DocsJokeItem extends LitElement {
43
- static styles = [tailwind];
44
-
45
- @ancestorAttribute("dataProvider")
46
- dataProvider: string | null = null;
47
-
48
- @subscribe(jokeRowKey)
49
- @state()
50
- row: JokeRow | null = null;
51
-
52
- render() {
53
- const r = this.row;
54
- if (!r) return nothing;
55
- return html`
56
- <div
57
- class="space-y-1 border-0 border-b border-dotted border-neutral-300 py-3"
58
- >
59
- <div>${r.joke}</div>
60
- ${r.setup
61
- ? html`<div class="text-sm text-neutral-500">${r.setup}</div>`
62
- : nothing}
63
- ${r.delivery
64
- ? html`<div class="text-sm text-neutral-500">${r.delivery}</div>`
65
- : nothing}
66
- </div>
67
- `;
68
- }
69
- }
70
-
71
- @customElement("docs-joke-filter-caption")
72
- export class DocsJokeFilterCaption extends LitElement {
73
- @property() filterProvider = "";
74
- @property() field = "";
75
- @property() label = "";
76
-
77
- @subscribe(filterFieldKey)
78
- @state()
79
- value = "";
80
-
81
- render() {
82
- return html`
83
- <p class="my-4 block text-xl font-bold">
84
- ${this.label} « <span class="text-info">${this.value || "…"}</span> » :
85
- </p>
86
- `;
87
- }
88
- }
89
-
90
- @customElement("docs-joke-queue")
91
- export class DocsJokeQueue extends LitElement {
92
- @property() filterProvider = "";
93
- @property() expression = "joke/Any?amount=10&lang=fr";
94
-
95
- private jokeItem = () => html`<docs-joke-item></docs-joke-item>`;
96
-
97
- render() {
98
- return html`
99
- <sonic-queue
100
- lazyload
101
- dataProviderExpression=${this.expression}
102
- dataFilterProvider=${this.filterProvider}
103
- serviceURL=${DOCS_MOCK_JOKES_SERVICE}
104
- key="jokes"
105
- .items=${this.jokeItem}
106
- ></sonic-queue>
107
- `;
108
- }
109
- }
110
-
111
- @customElement("docs-joke-search-demo")
112
- export class DocsJokeSearchDemo extends LitElement {
113
- static styles = [tailwind];
114
-
115
- render() {
116
- return html`
117
- <sonic-input
118
- formDataProvider=${docsJokeInputFilterKey.path}
119
- name="contains"
120
- value="chien"
121
- class="mb-4"
122
- ></sonic-input>
123
- <docs-joke-filter-caption
124
- filterProvider=${docsJokeInputFilterKey.path}
125
- field="contains"
126
- label="Blagues trouvées pour"
127
- ></docs-joke-filter-caption>
128
- <docs-joke-queue
129
- filterProvider=${docsJokeInputFilterKey.path}
130
- expression="joke/Any?amount=10&lang=fr"
131
- ></docs-joke-queue>
132
- `;
133
- }
134
- }
135
-
136
- @customElement("docs-joke-lang-demo")
137
- export class DocsJokeLangDemo extends LitElement {
138
- static styles = [tailwind];
139
-
140
- render() {
141
- return html`
142
- <sonic-select
143
- formDataProvider=${docsJokeSelectFilterKey.path}
144
- name="lang"
145
- value="fr"
146
- >
147
- <option value="fr">fr</option>
148
- <option value="en">en</option>
149
- </sonic-select>
150
- <docs-joke-filter-caption
151
- filterProvider=${docsJokeSelectFilterKey.path}
152
- field="lang"
153
- label="Blagues pour la langue"
154
- ></docs-joke-filter-caption>
155
- <docs-joke-queue
156
- filterProvider=${docsJokeSelectFilterKey.path}
157
- expression="joke/Any?amount=10"
158
- ></docs-joke-queue>
159
- `;
160
- }
161
- }
162
-
163
- const jokeQueueRow = (row: JokeRow) => html`
164
- <div class="border-0 border-b border-neutral-300 py-3 leading-tight">
165
- <div>${row.joke}</div>
166
- ${row.setup ? html`<div class="font-bold">${row.setup}</div>` : nothing}
167
- ${row.delivery ? html`<div>${row.delivery}</div>` : nothing}
168
- </div>
169
- `;
170
-
171
- const BLACKLIST_CONTROLS = html`
172
- <sonic-checkbox name="blacklistFlags" value="nsfw">nsfw</sonic-checkbox>
173
- <sonic-checkbox name="blacklistFlags" value="religious">religious</sonic-checkbox>
174
- <sonic-checkbox name="blacklistFlags" value="political">political</sonic-checkbox>
175
- <sonic-checkbox name="blacklistFlags" value="racist" checked>racist</sonic-checkbox>
176
- <sonic-checkbox name="blacklistFlags" value="sexist" checked>sexist</sonic-checkbox>
177
- <sonic-checkbox name="blacklistFlags" value="explicit">explicit</sonic-checkbox>
178
- `;
179
-
180
- /** Checkbox — « Remove following jokes » (blacklistFlags → mock API). */
181
- @customElement("docs-joke-blacklist-demo")
182
- export class DocsJokeBlacklistDemo extends LitElement {
183
- static styles = [tailwind];
184
-
185
- private items = jokeQueueRow;
186
-
187
- render() {
188
- return html`
189
- <p class="my-4 block text-xl font-bold">Remove following jokes :</p>
190
- <div
191
- formDataProvider=${docsJokeCheckboxFilterKey.path}
192
- class="mb-3 grid grid-cols-2 gap-x-6 gap-y-2 lg:grid-cols-3"
193
- >
194
- ${BLACKLIST_CONTROLS}
195
- </div>
196
- <sonic-queue
197
- lazyload
198
- dataProviderExpression="joke/Any?offset=$offset&limit=$limit&lang=en"
199
- dataFilterProvider=${docsJokeCheckboxFilterKey.path}
200
- serviceURL=${DOCS_MOCK_JOKES_SERVICE}
201
- key="jokes"
202
- limit="5"
203
- class="grid max-h-96 overflow-y-auto"
204
- .items=${this.items}
205
- debug
206
- ></sonic-queue>
207
- `;
208
- }
209
- }
210
-
211
- /** Radio group — same API, single `blacklistFlags` value. */
212
- @customElement("docs-joke-blacklist-radio-demo")
213
- export class DocsJokeBlacklistRadioDemo extends LitElement {
214
- static styles = [tailwind];
215
-
216
- private items = jokeQueueRow;
217
-
218
- render() {
219
- return html`
220
- <p class="my-4 block text-xl font-bold">Remove following jokes :</p>
221
- <div
222
- formDataProvider=${docsJokeRadioFilterKey.path}
223
- class="mb-3 grid grid-cols-2 gap-x-6 gap-y-2 lg:grid-cols-3"
224
- >
225
- <sonic-radio name="blacklistFlags" value="nsfw">nsfw</sonic-radio>
226
- <sonic-radio name="blacklistFlags" value="religious"
227
- >religious</sonic-radio
228
- >
229
- <sonic-radio name="blacklistFlags" value="political"
230
- >political</sonic-radio
231
- >
232
- <sonic-radio name="blacklistFlags" value="racist" checked
233
- >racist</sonic-radio
234
- >
235
- <sonic-radio name="blacklistFlags" value="sexist">sexist</sonic-radio>
236
- <sonic-radio name="blacklistFlags" value="explicit"
237
- >explicit</sonic-radio
238
- >
239
- </div>
240
- <sonic-queue
241
- lazyload
242
- dataProviderExpression="joke/Any?offset=$offset&limit=$limit&lang=en"
243
- dataFilterProvider="jokeFilterRadio"
244
- serviceURL=${DOCS_MOCK_JOKES_SERVICE}
245
- key="jokes"
246
- limit="5"
247
- class="grid max-h-96 overflow-y-auto"
248
- .items=${this.items}
249
- debug
250
- ></sonic-queue>
251
- `;
252
- }
253
- }
254
-
255
- /** Switch — same blacklist filter. */
256
- @customElement("docs-joke-blacklist-switch-demo")
257
- export class DocsJokeBlacklistSwitchDemo extends LitElement {
258
- static styles = [tailwind];
259
-
260
- private items = jokeQueueRow;
261
-
262
- render() {
263
- return html`
264
- <p class="my-4 block text-xl font-bold">Remove following jokes :</p>
265
- <div
266
- formDataProvider=${docsJokeSwitchFilterKey.path}
267
- class="mb-3 grid grid-cols-2 gap-x-6 gap-y-2 lg:grid-cols-3"
268
- >
269
- <sonic-switch name="blacklistFlags" value="nsfw">nsfw</sonic-switch>
270
- <sonic-switch name="blacklistFlags" value="religious"
271
- >religious</sonic-switch
272
- >
273
- <sonic-switch name="blacklistFlags" value="political"
274
- >political</sonic-switch
275
- >
276
- <sonic-switch name="blacklistFlags" value="racist" checked
277
- >racist</sonic-switch
278
- >
279
- <sonic-switch name="blacklistFlags" value="sexist">sexist</sonic-switch>
280
- <sonic-switch name="blacklistFlags" value="explicit"
281
- >explicit</sonic-switch
282
- >
283
- </div>
284
- <sonic-queue
285
- lazyload
286
- dataProviderExpression="joke/Any?offset=$offset&limit=$limit&lang=en"
287
- dataFilterProvider=${docsJokeSwitchFilterKey.path}
288
- serviceURL=${DOCS_MOCK_JOKES_SERVICE}
289
- key="jokes"
290
- limit="5"
291
- class="grid max-h-96 overflow-y-auto"
292
- .items=${this.items}
293
- debug
294
- ></sonic-queue>
295
- `;
296
- }
297
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes