@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
@@ -0,0 +1,109 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/input/input.html" data-doc-id="core/components/ui/form/input/input">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Input — Concorde</title>
7
+ <meta name="description" content="Native attributes list">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/input/input, input, Input, UI component, form, sonic-input, web component">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/input/input">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/input/input.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/input/input.md/input" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Input</strong>. Native attributes list <span>Doc ID: <code>core/components/ui/form/input/input</code>. Keywords: Concorde, supersoniks, core/components/ui/form/input/input, input, Input, UI component, form, sonic-input, web component. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/input/input.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/input/input.html</a>.</span></p>
19
+ <h1 id="input">Input</h1>
20
+ <sonic-button type="info" size="sm" target="_blank" href="https://www.w3schools.com/tags/tag_input.asp#midcontentadcontainer">
21
+ <sonic-icon library="iconoir" name="open-new-window" slot="prefix" ></sonic-icon>
22
+ Native attributes list
23
+ </sonic-button>
24
+
25
+ <h2 id="label">Label</h2>
26
+ <pre><code>&lt;sonic-input label=&quot;Label&quot;&gt;&lt;/sonic-input&gt;
27
+ </code></pre>
28
+ <h2 id="placeholder">Placeholder</h2>
29
+ <pre><code>&lt;sonic-input placeholder=&quot;placeholder&quot;&gt;&lt;/sonic-input&gt;
30
+ </code></pre>
31
+ <h2 id="value">Value</h2>
32
+ <pre><code>&lt;sonic-input value=&quot;value&quot;&gt;&lt;/sonic-input&gt;
33
+ </code></pre>
34
+ <h2 id="required">Required</h2>
35
+ <pre><code>&lt;sonic-input required type=&quot;email&quot; placeholder=&quot;you@email.com&quot; label=&quot;Feedback on blur&quot;&gt;&lt;/sonic-input&gt;
36
+ </code></pre>
37
+ <h2 id="description">Description</h2>
38
+ <pre><code>&lt;sonic-input description=&quot;Description goes here&quot; &gt;&lt;/sonic-input&gt;
39
+ </code></pre>
40
+ <h2 id="type">Type</h2>
41
+ <p><sonic-button size="2xs" type="info" target="_blank" href="https://www.w3schools.com/html/html_form_input_types.asp">Liste des types</sonic-button></p>
42
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
43
+ &lt;sonic-input type=&quot;text&quot; label=&quot;Text&quot;&gt;Text&lt;/sonic-input&gt;
44
+ &lt;sonic-input type=&quot;email&quot; label=&quot;Email&quot; placeholder=&quot;plop@kiki.com&quot;&gt;&lt;/sonic-input&gt;
45
+ &lt;sonic-input type=&quot;password&quot; label=&quot;Password&quot;&gt;&lt;/sonic-input&gt;
46
+ &lt;sonic-input type=&quot;date&quot; label=&quot;Date&quot;&gt;&lt;/sonic-input&gt;
47
+ &lt;sonic-input type=&quot;number&quot; label=&quot;Number&quot;&gt;&lt;/sonic-input&gt;
48
+ &lt;sonic-input type=&quot;color&quot; label=&quot;Color&quot; value=&quot;#ffff00&quot;&gt;&lt;/sonic-input&gt;
49
+ &lt;/div&gt;
50
+ </code></pre>
51
+ <h2 id="size">Size</h2>
52
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
53
+ &lt;sonic-input size=&quot;2xs&quot; value=&quot;2xs&quot;&gt;&lt;/sonic-input&gt;
54
+ &lt;sonic-input size=&quot;xs&quot; value=&quot;xs&quot;&gt;&lt;/sonic-input&gt;
55
+ &lt;sonic-input size=&quot;sm&quot; value=&quot;sm&quot;&gt;&lt;/sonic-input&gt;
56
+ &lt;sonic-input size=&quot;md&quot; value=&quot;md&quot;&gt;&lt;/sonic-input&gt;
57
+ &lt;sonic-input value=&quot;default&quot;&gt;&lt;/sonic-input&gt;
58
+ &lt;sonic-input size=&quot;lg&quot; value=&quot;lg&quot;&gt;&lt;/sonic-input&gt;
59
+ &lt;sonic-input size=&quot;xl&quot; value=&quot;xl&quot;&gt;&lt;/sonic-input&gt;
60
+ &lt;sonic-input size=&quot;2xl&quot; value=&quot;2xl&quot;&gt;&lt;/sonic-input&gt;
61
+ &lt;/div&gt;
62
+ </code></pre>
63
+ <h2 id="list">List</h2>
64
+ <p><sonic-alert status="error" label="Non fonctionnel" class="mb-4"></sonic-alert></p>
65
+ <pre><code>&lt;sonic-input list=&quot;browsers&quot;&gt;&lt;/sonic-input&gt;
66
+ &lt;datalist id=&quot;browsers&quot;&gt;
67
+ &lt;option value=&quot;Internet Explorer&quot;&gt;
68
+ &lt;option value=&quot;Firefox&quot;&gt;
69
+ &lt;option value=&quot;Google Chrome&quot;&gt;
70
+ &lt;option value=&quot;Opera&quot;&gt;
71
+ &lt;option value=&quot;Safari&quot;&gt;
72
+ &lt;/datalist&gt;
73
+ </code></pre>
74
+ <h2 id="prefix--suffix">Prefix &amp; suffix</h2>
75
+ <pre><code>&lt;div class=&quot;grid grid-cols-2 gap-3&quot;&gt;
76
+ &lt;sonic-input type=&quot;search&quot; label=&quot;Search&quot; placeholder=&quot;Search plane&quot;&gt;
77
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;search&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;
78
+ &lt;/sonic-input&gt;
79
+ &lt;sonic-input type=&quot;number&quot; label=&quot;Amount&quot; placeholder=&quot;0&quot;&gt;
80
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;euro&quot; slot=&quot;suffix&quot;&gt;&lt;/sonic-icon&gt;
81
+ &lt;/sonic-input&gt;
82
+ &lt;/div&gt;
83
+ </code></pre>
84
+ <h2 id="inlinecontent">InlineContent</h2>
85
+ <pre><code>&lt;div class=&quot;grid grid-cols-2 gap-3&quot;&gt;
86
+ &lt;sonic-input inlineContent type=&quot;search&quot; label=&quot;Search icon in input&quot; placeholder=&quot;Search plane&quot;&gt;
87
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;search&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;
88
+ &lt;/sonic-input&gt;
89
+ &lt;sonic-input inlineContent type=&quot;number&quot; label=&quot;Number of seats&quot; placeholder=&quot;0&quot;&gt;
90
+ &lt;div slot=&quot;suffix&quot; class=&quot;flex gap-2 items-center&quot;&gt;
91
+ &lt;sonic-badge type=&quot;danger&quot; size=&quot;sm&quot;&gt;4 max&lt;/sonic-badge&gt;
92
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;euro&quot; &gt;&lt;/sonic-icon&gt;
93
+ &lt;/div&gt;
94
+ &lt;/sonic-input&gt;
95
+ &lt;/div&gt;
96
+ </code></pre>
97
+ <h2 id="example-of-use--search--queue">Example of use — search + queue</h2>
98
+ <p>Filter with <strong><code>formDataProvider</code></strong> + <strong><code>name=&quot;contains&quot;</code></strong> (mock API: substring on joke text). Caption and rows via Lit (<code>@subscribe</code>, <code>.items</code> on <code>sonic-queue</code>):</p>
99
+ <p><docs-lit-demo for="docs-joke-search-demo"></docs-lit-demo></p>
100
+ <pre><code>&lt;sonic-input type=&quot;search&quot; placeholder=&quot;Search plane&quot; class=&quot;inline-block&quot;&gt;
101
+ &lt;/sonic-input&gt;
102
+ &lt;sonic-button type=&quot;danger&quot; label=&quot;Amount&quot; placeholder=&quot;0&quot;&gt;azdazd
103
+ &lt;/sonic-button&gt;
104
+ </code></pre>
105
+ <!-- <sonic-input type="password" inlineContent size="2xl"><span slot="suffix">PLOP</span></sonic-input> -->
106
+ </article>
107
+ </main>
108
+ </body>
109
+ </html>
@@ -0,0 +1,38 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html" data-doc-id="core/components/ui/form/input-autocomplete/input-autocomplete">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Input-autocomplete — Concorde</title>
7
+ <meta name="description" content="Champ formulaire + suggestions via queue. Valeur via formDataProvider + name ; la recherche filtre la queue (store interne).">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/input-autocomplete/input-autocomplete, input-autocomplete, Input-autocomplete, UI component, form, sonic-input-autocomplete, web component, formDataProvider, name, .items, serviceURL=&quot;/docs-mock-api/geo/&quot;, nom, code, value, data-keyboard-nav">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/input-autocomplete/input-autocomplete">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/input-autocomplete/input-autocomplete.md/input-autocomplete" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Input-autocomplete</strong>. Champ formulaire + suggestions via queue. Valeur via formDataProvider + name ; la recherche filtre la queue (store interne). <span>Doc ID: <code>core/components/ui/form/input-autocomplete/input-autocomplete</code>. Keywords: Concorde, supersoniks, core/components/ui/form/input-autocomplete/input-autocomplete, input-autocomplete, Input-autocomplete, UI component, form, sonic-input-autocomplete, web component, formDataProvider, name, .items, serviceURL=&quot;/docs-mock-api/geo/&quot;, nom, code, value, data-keyboard-nav. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html</a>.</span></p>
19
+ <h1 id="input-autocomplete">Input-autocomplete</h1>
20
+ <p>Champ formulaire + suggestions via <a href="../../../functional/queue/queue.html#queue">queue</a>. Valeur via <code>formDataProvider</code> + <code>name</code> ; la recherche filtre la queue (store interne).</p>
21
+ <p>Rendu des lignes : propriété <strong><code>.items</code></strong> (callback Lit) — voir les démos ci-dessous. Mock : <code>serviceURL=&quot;/docs-mock-api/geo/&quot;</code>.</p>
22
+ <h2 id="simple">Simple</h2>
23
+ <p><code>name</code> = paramètre de recherche = valeur formulaire.</p>
24
+ <p><docs-lit-demo for="docs-input-autocomplete-basic-demo"></docs-lit-demo></p>
25
+ <h2 id="valeur--paramètre-de-recherche">Valeur ≠ paramètre de recherche</h2>
26
+ <p>Recherche sur <code>nom</code>, valeur formulaire = <code>code</code>. Préremplissage via <code>value</code>.</p>
27
+ <p><docs-lit-demo for="docs-input-autocomplete-code-demo"></docs-lit-demo></p>
28
+ <h2 id="mode-select">Mode select</h2>
29
+ <p>À la fermeture du pop, seule une valeur de la liste (ou vide) est conservée.</p>
30
+ <p><docs-lit-demo for="docs-input-autocomplete-select-demo"></docs-lit-demo></p>
31
+ <h2 id="navigation-clavier">Navigation clavier</h2>
32
+ <p><code>data-keyboard-nav</code> sur le champ et les items (flèches haut / bas).</p>
33
+ <p><docs-lit-demo for="docs-input-autocomplete-keyboard-demo"></docs-lit-demo></p>
34
+
35
+ </article>
36
+ </main>
37
+ </body>
38
+ </html>
@@ -0,0 +1,56 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/radio/radio.html" data-doc-id="core/components/ui/form/radio/radio">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Radio — Concorde</title>
7
+ <meta name="description" content="&gt;Already checked radio">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/radio/radio, radio, Radio, UI component, form, sonic-radio, web component, blacklistFlags">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/radio/radio">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/radio/radio.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/radio/radio.md/radio" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Radio</strong>. &gt;Already checked radio <span>Doc ID: <code>core/components/ui/form/radio/radio</code>. Keywords: Concorde, supersoniks, core/components/ui/form/radio/radio, radio, Radio, UI component, form, sonic-radio, web component, blacklistFlags. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/radio/radio.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/radio/radio.html</a>.</span></p>
19
+ <h1 id="radio">Radio</h1>
20
+ <h2 id="size">Size</h2>
21
+ <pre><code>&lt;div class=&quot;grid gap-2&quot; formDataProvider=&quot;radioSizeExemple&quot;&gt;
22
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;2xs&quot; size=&quot;2xs&quot;&gt;2xs radio&lt;/sonic-radio&gt;
23
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;xs&quot; size=&quot;xs&quot;&gt;xs radio&lt;/sonic-radio&gt;
24
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;sm&quot; size=&quot;sm&quot;&gt;sm radio&lt;/sonic-radio&gt;
25
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;default&quot; &gt;default radio&lt;/sonic-radio&gt;
26
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;lg&quot; size=&quot;lg&quot;&gt;lg radio&lt;/sonic-radio&gt;
27
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;xl&quot; size=&quot;xl&quot;&gt;xl radio&lt;/sonic-radio&gt;
28
+ &lt;sonic-radio name=&quot;size&quot; value=&quot;2xl&quot; size=&quot;2xl&quot;&gt;2xl radio&lt;/sonic-radio&gt;
29
+ &lt;/div&gt;
30
+ </code></pre>
31
+ <h2 id="checked">Checked</h2>
32
+ <pre><code>&lt;sonic-radio checked
33
+ &gt;Already checked radio
34
+ &lt;/sonic-radio&gt;
35
+ </code></pre>
36
+ <h2 id="disabled">Disabled</h2>
37
+ <pre><code>&lt;sonic-radio disabled
38
+ &gt;Disabled radio
39
+ &lt;/sonic-radio&gt;
40
+ </code></pre>
41
+ <h2 id="disabled-and-checked">Disabled and checked</h2>
42
+ <pre><code>&lt;sonic-radio disabled checked
43
+ &gt;Disabled but already checked radio
44
+ &lt;/sonic-radio&gt;
45
+ </code></pre>
46
+ <h2 id="radio-with-link">radio with link</h2>
47
+ <pre><code>&lt;sonic-radio name=&quot;link&quot; value=&quot;link&quot;&gt;radio with &lt;sonic-link href=&quot;#&quot; class=&quot;underline text-info&quot;&gt;link&lt;/sonic-link&gt;
48
+ </code></pre>
49
+ <h2 id="example-of-use--blacklist--queue">Example of use — blacklist + queue</h2>
50
+ <p>Same mock filter as <a href="../checkbox/checkbox.html#checkbox">Checkbox</a> (<code>blacklistFlags</code> query param). Radio sends <strong>one</strong> flag at a time.</p>
51
+ <p><docs-lit-demo for="docs-joke-blacklist-radio-demo"></docs-lit-demo></p>
52
+
53
+ </article>
54
+ </main>
55
+ </body>
56
+ </html>
@@ -0,0 +1,73 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/select/select.html" data-doc-id="core/components/ui/form/select/select">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Select — Concorde</title>
7
+ <meta name="description" content="{&quot;value&quot;:&quot;dark&quot;, &quot;wording&quot;:&quot;dark (set by \&quot;attribute\&quot;)&quot;, &quot;selected&quot; : &quot;true&quot;}, {&quot;value&quot;:&quot;auto&quot;, &quot;wording&quot;:&quot;auto&quot;}">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/select/select, select, Select, UI component, form, sonic-select, web component, name=&quot;lang&quot;, ?lang=fr|en, filterDocsJokes, contains">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/select/select">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/select/select.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/select/select.md/select" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Select</strong>. {&quot;value&quot;:&quot;dark&quot;, &quot;wording&quot;:&quot;dark (set by \&quot;attribute\&quot;)&quot;, &quot;selected&quot; : &quot;true&quot;}, {&quot;value&quot;:&quot;auto&quot;, &quot;wording&quot;:&quot;auto&quot;} <span>Doc ID: <code>core/components/ui/form/select/select</code>. Keywords: Concorde, supersoniks, core/components/ui/form/select/select, select, Select, UI component, form, sonic-select, web component, name=&quot;lang&quot;, ?lang=fr|en, filterDocsJokes, contains. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/select/select.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/select/select.html</a>.</span></p>
19
+ <h1 id="select">Select</h1>
20
+ <h2 id="options">Options</h2>
21
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
22
+ &lt;sonic-select&gt;
23
+ &lt;option value=&quot;&quot;&gt;No Selection&lt;/option&gt;
24
+ &lt;option value=&quot;1&quot;&gt;One&lt;/option&gt;
25
+ &lt;option value=&quot;2&quot; selected&gt;Two (set by &quot;tag&quot;)&lt;/option&gt;
26
+ &lt;option value=&quot;3&quot;&gt;Three&lt;/option&gt;
27
+ &lt;/sonic-select&gt;
28
+ &lt;sonic-select options=&#39;[{&quot;value&quot;:&quot;&quot;, &quot;wording&quot;:&quot;Set options via \&quot;attribute\&quot;&quot;},
29
+ {&quot;value&quot;:&quot;dark&quot;, &quot;wording&quot;:&quot;dark (set by \&quot;attribute\&quot;)&quot;, &quot;selected&quot; : &quot;true&quot;}, {&quot;value&quot;:&quot;auto&quot;, &quot;wording&quot;:&quot;auto&quot;}
30
+ ]&#39;&gt;
31
+ &lt;/sonic-select&gt;
32
+ &lt;/div&gt;
33
+ </code></pre>
34
+ <h2 id="size">Size</h2>
35
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
36
+ &lt;sonic-select size=&quot;2xs&quot;&gt;&lt;option&gt;2xs&lt;/option&gt;&lt;/sonic-select&gt;
37
+ &lt;sonic-select size=&quot;xs&quot;&gt;&lt;option&gt;xs&lt;/option&gt;&lt;/sonic-select&gt;
38
+ &lt;sonic-select size=&quot;sm&quot;&gt;&lt;option&gt;sm&lt;/option&gt;&lt;/sonic-select&gt;
39
+ &lt;sonic-select size=&quot;md&quot;&gt;&lt;option&gt;md&lt;/option&gt;&lt;/sonic-select&gt;
40
+ &lt;sonic-select size=&quot;default&quot;&gt;&lt;option&gt;default&lt;/option&gt;&lt;/sonic-select&gt;
41
+ &lt;sonic-select size=&quot;lg&quot;&gt;&lt;option&gt;lg&lt;/option&gt;&lt;/sonic-select&gt;
42
+ &lt;sonic-select size=&quot;xl&quot;&gt;&lt;option&gt;xl&lt;/option&gt;&lt;/sonic-select&gt;
43
+ &lt;sonic-select size=&quot;2xl&quot;&gt;&lt;option&gt;2xl&lt;/option&gt;&lt;/sonic-select&gt;
44
+ &lt;/div&gt;
45
+ </code></pre>
46
+ <h2 id="multiple">Multiple</h2>
47
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
48
+ &lt;sonic-select multiple&gt;
49
+ &lt;option value=&quot;&quot;&gt;Choose a number&lt;/option&gt;
50
+ &lt;option value=&quot;1&quot;&gt;One&lt;/option&gt;
51
+ &lt;option value=&quot;2&quot;&gt;Two&lt;/option&gt;
52
+ &lt;option value=&quot;3&quot;&gt;Three&lt;/option&gt;
53
+ &lt;/sonic-select&gt;
54
+ &lt;/div&gt;
55
+ </code></pre>
56
+ <h2 id="disabled">Disabled</h2>
57
+ <pre><code>&lt;div class=&quot;grid gap-3&quot;&gt;
58
+ &lt;sonic-select disabled&gt;
59
+ &lt;option value=&quot;&quot;&gt;Choose a number&lt;/option&gt;
60
+ &lt;option value=&quot;1&quot;&gt;One&lt;/option&gt;
61
+ &lt;option value=&quot;2&quot;&gt;Two&lt;/option&gt;
62
+ &lt;option value=&quot;3&quot;&gt;Three&lt;/option&gt;
63
+ &lt;/sonic-select&gt;
64
+ &lt;/div&gt;
65
+ </code></pre>
66
+ <h2 id="example-of-use--language-filter--queue">Example of use — language filter + queue</h2>
67
+ <p><strong><code>name=&quot;lang&quot;</code></strong> is sent as <code>?lang=fr|en</code> to the <a href="../../../../../docs/_misc/docs-mock-api.html#docs-mock-api">doc mock API</a> (<code>filterDocsJokes</code>). Same pattern as <a href="../input/input.html#input">Input</a> (<code>contains</code>):</p>
68
+ <p><docs-lit-demo for="docs-joke-lang-demo"></docs-lit-demo></p>
69
+
70
+ </article>
71
+ </main>
72
+ </body>
73
+ </html>
@@ -0,0 +1,56 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/switch/switch.html" data-doc-id="core/components/ui/form/switch/switch">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Switch — Concorde</title>
7
+ <meta name="description" content="&gt;Already checked switch">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/switch/switch, switch, Switch, UI component, form, sonic-switch, web component">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/switch/switch">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/switch/switch.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/switch/switch.md/switch" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Switch</strong>. &gt;Already checked switch <span>Doc ID: <code>core/components/ui/form/switch/switch</code>. Keywords: Concorde, supersoniks, core/components/ui/form/switch/switch, switch, Switch, UI component, form, sonic-switch, web component. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/switch/switch.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/switch/switch.html</a>.</span></p>
19
+ <h1 id="switch">Switch</h1>
20
+ <h2 id="size">Size</h2>
21
+ <pre><code>&lt;div class=&quot;grid gap-2&quot; formDataProvider=&quot;switchSizeExemple&quot;&gt;
22
+ &lt;sonic-switch name=&quot;size2xs&quot; value=&quot;2xs&quot; size=&quot;2xs&quot;&gt;2xs switch&lt;/sonic-switch&gt;
23
+ &lt;sonic-switch name=&quot;sizexs&quot; value=&quot;xs&quot; size=&quot;xs&quot;&gt;xs switch&lt;/sonic-switch&gt;
24
+ &lt;sonic-switch name=&quot;sizesm&quot; value=&quot;sm&quot; size=&quot;sm&quot;&gt;sm switch&lt;/sonic-switch&gt;
25
+ &lt;sonic-switch name=&quot;size&quot; value=&quot;default&quot; &gt;default switch&lt;/sonic-switch&gt;
26
+ &lt;sonic-switch name=&quot;sizelg&quot; value=&quot;lg&quot; size=&quot;lg&quot;&gt;lg switch&lt;/sonic-switch&gt;
27
+ &lt;sonic-switch name=&quot;sizexl&quot; value=&quot;xl&quot; size=&quot;xl&quot;&gt;xl switch&lt;/sonic-switch&gt;
28
+ &lt;sonic-switch name=&quot;size2xl&quot; value=&quot;2xl&quot; size=&quot;2xl&quot;&gt;2xl switch&lt;/sonic-switch&gt;
29
+ &lt;/div&gt;
30
+ </code></pre>
31
+ <h2 id="checked">Checked</h2>
32
+ <pre><code>&lt;sonic-switch checked
33
+ &gt;Already checked switch
34
+ &lt;/sonic-switch&gt;
35
+ </code></pre>
36
+ <h2 id="disabled">Disabled</h2>
37
+ <pre><code>&lt;sonic-switch disabled
38
+ &gt;Disabled switch
39
+ &lt;/sonic-switch&gt;
40
+ </code></pre>
41
+ <h2 id="disabled-and-checked">Disabled and checked</h2>
42
+ <pre><code>&lt;sonic-switch disabled checked
43
+ &gt;Disabled but already checked switch
44
+ &lt;/sonic-switch&gt;
45
+ </code></pre>
46
+ <h2 id="switch-with-link">switch with link</h2>
47
+ <pre><code>&lt;sonic-switch name=&quot;link&quot; value=&quot;link&quot;&gt;switch with &lt;sonic-link href=&quot;#&quot; class=&quot;underline text-info&quot;&gt;link&lt;/sonic-link&gt;
48
+ </code></pre>
49
+ <h2 id="example-of-use--blacklist--queue">Example of use — blacklist + queue</h2>
50
+ <p>Same mock filter as <a href="../checkbox/checkbox.html#checkbox">Checkbox</a>; switches can enable several flags (comma-separated in the query).</p>
51
+ <p><docs-lit-demo for="docs-joke-blacklist-switch-demo"></docs-lit-demo></p>
52
+
53
+ </article>
54
+ </main>
55
+ </body>
56
+ </html>
@@ -0,0 +1,59 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/form/textarea/textarea.html" data-doc-id="core/components/ui/form/textarea/textarea">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Textarea — Concorde</title>
7
+ <meta name="description" content="Native attributes list">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/form/textarea/textarea, textarea, Textarea, UI component, form, sonic-textarea, web component">
9
+ <meta name="concorde-doc-id" content="core/components/ui/form/textarea/textarea">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/form/textarea/textarea.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/form/textarea/textarea.md/textarea" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Textarea</strong>. Native attributes list <span>Doc ID: <code>core/components/ui/form/textarea/textarea</code>. Keywords: Concorde, supersoniks, core/components/ui/form/textarea/textarea, textarea, Textarea, UI component, form, sonic-textarea, web component. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/form/textarea/textarea.html">https://concorde.supersoniks.org/crawl/core/components/ui/form/textarea/textarea.html</a>.</span></p>
19
+ <h1 id="textarea">Textarea</h1>
20
+ <sonic-button type="info" size="sm" target="_blank" href="https://www.w3schools.com/tags/tag_textarea.asp#midcontentadcontainer">
21
+ <sonic-icon library="iconoir" name="open-new-window" slot="prefix" ></sonic-icon>
22
+ Native attributes list
23
+ </sonic-button>
24
+
25
+
26
+ <h2 id="label">Label</h2>
27
+ <pre><code>&lt;sonic-textarea label=&quot;Label&quot;&gt;&lt;/sonic-textarea&gt;
28
+ </code></pre>
29
+ <h2 id="placeholder">Placeholder</h2>
30
+ <pre><code>&lt;sonic-textarea placeholder=&quot;placeholder&quot;&gt;&lt;/sonic-textarea&gt;
31
+ </code></pre>
32
+ <h2 id="value">Value</h2>
33
+ <pre><code>&lt;sonic-textarea value=&quot;value&quot;&gt;&lt;/sonic-textarea&gt;
34
+ </code></pre>
35
+ <h2 id="required">Required</h2>
36
+ <pre><code>&lt;sonic-textarea required label=&quot;Feedback on blur&quot; placeholder=&quot;required&quot; &gt;&lt;/sonic-textarea&gt;
37
+ </code></pre>
38
+ <h2 id="rows">Rows</h2>
39
+ <pre><code>&lt;sonic-textarea rows=&quot;8&quot;&gt;&lt;/sonic-textarea&gt;
40
+ </code></pre>
41
+ <h2 id="description">Description</h2>
42
+ <pre><code>&lt;sonic-textarea description=&quot;Description goes here&quot; &gt;&lt;/sonic-textarea&gt;
43
+ </code></pre>
44
+ <h2 id="size">Size</h2>
45
+ <pre><code>&lt;div class=&quot;grid gap-4&quot;&gt;
46
+ &lt;sonic-textarea size=&quot;2xs&quot; value=&quot;2xs&quot;&gt;&lt;/sonic-textarea&gt;
47
+ &lt;sonic-textarea size=&quot;xs&quot; value=&quot;xs&quot;&gt;&lt;/sonic-textarea&gt;
48
+ &lt;sonic-textarea size=&quot;sm&quot; value=&quot;sm&quot;&gt;&lt;/sonic-textarea&gt;
49
+ &lt;sonic-textarea value=&quot;md / default&quot;&gt;&lt;/sonic-textarea&gt;
50
+ &lt;sonic-textarea size=&quot;lg&quot; value=&quot;lg&quot;&gt;&lt;/sonic-textarea&gt;
51
+ &lt;sonic-textarea size=&quot;xl&quot; value=&quot;xl&quot;&gt;&lt;/sonic-textarea&gt;
52
+ &lt;sonic-textarea size=&quot;2xl&quot; value=&quot;2xl&quot;&gt;&lt;/sonic-textarea&gt;
53
+ &lt;/div&gt;
54
+ </code></pre>
55
+
56
+ </article>
57
+ </main>
58
+ </body>
59
+ </html>
@@ -0,0 +1,104 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr" data-crawl-url="https://concorde.supersoniks.org/crawl/core/components/ui/group/group.html" data-doc-id="core/components/ui/group/group">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Group — Concorde</title>
7
+ <meta name="description" content="sonic-group lays out slotted sonic-button · sonic-input and sonic-select controls in a single horizontal row with shared corner radius (first / middle / last items). Optional label and description fol">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/group/group, group, Group, UI component, sonic-group, web component, sonic-button, sonic-input, sonic-select, label, description, radio, name, formDataProvider">
9
+ <meta name="concorde-doc-id" content="core/components/ui/group/group">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/group/group.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="../../../../index.html">Concorde documentation (crawl)</a> · <a href="https://concorde.supersoniks.org/#core/components/ui/group/group.md/group" rel="nofollow">interactive version</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Group</strong>. sonic-group lays out slotted sonic-button · sonic-input and sonic-select controls in a single horizontal row with shared corner radius (first / middle / last items). Optional label and description fol <span>Doc ID: <code>core/components/ui/group/group</code>. Keywords: Concorde, supersoniks, core/components/ui/group/group, group, Group, UI component, sonic-group, web component, sonic-button, sonic-input, sonic-select, label, description, radio, name, formDataProvider. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/group/group.html">https://concorde.supersoniks.org/crawl/core/components/ui/group/group.html</a>.</span></p>
19
+ <h1 id="group">Group</h1>
20
+ <p><strong><code>sonic-group</code></strong> lays out slotted <strong><code>sonic-button</code></strong> · <strong><code>sonic-input</code></strong> and <strong><code>sonic-select</code></strong> controls in a single horizontal row with <strong>shared corner radius</strong> (first / middle / last items). Optional <strong><code>label</code></strong> and <strong><code>description</code></strong> follow form field styling. Use it for <strong>button groups</strong>, <strong>radio rows</strong>, or <strong>input + action</strong> toolbars.</p>
21
+ <h2 id="radio-group">Radio group</h2>
22
+ <p>Pair with <strong><code>sonic-button</code></strong> <strong><code>radio</code></strong> and a shared <strong><code>name</code></strong>; ancestor <strong><code>formDataProvider</code></strong> stores the selected <strong><code>value</code></strong>.</p>
23
+ <pre><code>&lt;sonic-group formDataProvider=&quot;subscriptionData&quot;&gt;
24
+ &lt;sonic-button radio name=&quot;subscription&quot; value=&quot;standard&quot; type=&quot;default&quot;&gt;😎 Standard&lt;/sonic-button&gt;
25
+ &lt;sonic-button radio checked name=&quot;subscription&quot; value=&quot;premium&quot; type=&quot;default&quot;&gt;⭐ Premium&lt;/sonic-button&gt;
26
+ &lt;sonic-button radio name=&quot;subscription&quot; value=&quot;diamond&quot; type=&quot;default&quot;&gt;💎 Diamond&lt;/sonic-button&gt;
27
+ &lt;/sonic-group&gt;
28
+ </code></pre>
29
+ <h2 id="button-group">Button group</h2>
30
+ <p>Adjacent link or action buttons without merging into one control.</p>
31
+ <pre><code>&lt;sonic-group&gt;
32
+ &lt;sonic-button type=&quot;info&quot; target=&quot;_blank&quot; href=&quot;https://wwws.airfrance.fr/&quot;&gt;🗼 Air France&lt;/sonic-button&gt;
33
+ &lt;sonic-button type=&quot;success&quot; target=&quot;_blank&quot; href=&quot;https://www.airtahitinui.com/&quot;&gt;🌴 Air Tahiti&lt;/sonic-button&gt;
34
+ &lt;sonic-button type=&quot;danger&quot; target=&quot;_blank&quot; href=&quot;https://www.aircorsica.com/&quot;&gt;💣 Air Corsica&lt;/sonic-button&gt;
35
+ &lt;/sonic-group&gt;
36
+ </code></pre>
37
+ <h2 id="input-actions-prefix">Input actions prefix</h2>
38
+ <p>Action control before the field. <strong><code>label</code></strong> or <strong><code>description</code></strong> on <strong><code>sonic-group</code></strong> annotate the row.</p>
39
+ <pre><code>&lt;sonic-group label=&quot;Label&quot; description=&quot;Description&quot;&gt;
40
+ &lt;sonic-button type=&quot;info&quot; shape=&quot;square&quot;&gt;
41
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;info-empty&quot;&gt;&lt;/sonic-icon&gt;
42
+ &lt;/sonic-button&gt;
43
+ &lt;sonic-input&gt;&lt;/sonic-input&gt;
44
+ &lt;/sonic-group&gt;
45
+ </code></pre>
46
+ <h2 id="input-actions-suffix">Input actions suffix</h2>
47
+ <p>Field first, action after (submit, validate, etc.).</p>
48
+ <pre><code>&lt;sonic-group label=&quot;Label&quot; description=&quot;Description&quot;&gt;
49
+ &lt;sonic-input&gt;&lt;/sonic-input&gt;
50
+ &lt;sonic-button type=&quot;primary&quot; shape=&quot;square&quot;&gt;
51
+ &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;check&quot;&gt;&lt;/sonic-icon&gt;
52
+ &lt;/sonic-button&gt;
53
+ &lt;/sonic-group&gt;
54
+ </code></pre>
55
+ <h2 id="api-reference">API reference</h2>
56
+ <table>
57
+ <thead>
58
+ <tr>
59
+ <th>Attribute</th>
60
+ <th>Values</th>
61
+ <th>Description</th>
62
+ </tr>
63
+ </thead>
64
+ <tbody><tr>
65
+ <td><code>label</code></td>
66
+ <td>string (HTML)</td>
67
+ <td>Label above the row; <strong><code>slot=&quot;label&quot;</code></strong> overrides / extends</td>
68
+ </tr>
69
+ <tr>
70
+ <td><code>description</code></td>
71
+ <td>string (HTML)</td>
72
+ <td>Help text below the row; <strong><code>slot=&quot;description&quot;</code></strong> overrides / extends</td>
73
+ </tr>
74
+ <tr>
75
+ <td><code>alignItems</code></td>
76
+ <td>CSS align-items (default <code>center</code>)</td>
77
+ <td>Cross-axis alignment of the main flex row</td>
78
+ </tr>
79
+ </tbody></table>
80
+ <table>
81
+ <thead>
82
+ <tr>
83
+ <th>Slot</th>
84
+ <th>Description</th>
85
+ </tr>
86
+ </thead>
87
+ <tbody><tr>
88
+ <td><em>(default)</em></td>
89
+ <td><strong><code>sonic-button</code></strong> · <strong><code>sonic-input</code></strong> · <strong><code>sonic-select</code></strong> in visual order</td>
90
+ </tr>
91
+ <tr>
92
+ <td><code>label</code></td>
93
+ <td>Custom label markup</td>
94
+ </tr>
95
+ <tr>
96
+ <td><code>description</code></td>
97
+ <td>Custom description markup</td>
98
+ </tr>
99
+ </tbody></table>
100
+
101
+ </article>
102
+ </main>
103
+ </body>
104
+ </html>