@supersoniks/concorde 5.1.1 → 5.1.3

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 (494) 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/PLAN-DOCS-AGENTS.md +80 -0
  6. package/README.md +4 -4
  7. package/ai/README.md +29 -41
  8. package/ai/skills/concorde/SKILL.md +54 -324
  9. package/ai/skills/concorde/rules/composition.md +32 -0
  10. package/ai/skills/concorde/rules/data.md +47 -0
  11. package/ai/skills/concorde/rules/http.md +25 -0
  12. package/ai/skills/concorde/rules/lists-forms.md +35 -0
  13. package/ai/skills/concorde/rules/styling.md +46 -0
  14. package/ai/skills/concorde/rules/troubleshooting.md +45 -0
  15. package/build-infos.json +1 -1
  16. package/concorde-core.bundle.js +21 -21
  17. package/concorde-core.es.js +977 -980
  18. package/custom-elements-manifest.public.config.mjs +8 -0
  19. package/{.tmp-cem/custom-elements.json → custom-elements.json} +11758 -8904
  20. package/dist/concorde-core.bundle.js +21 -21
  21. package/dist/concorde-core.es.js +977 -980
  22. package/dist/docs-mock-api-sw.js +58 -223
  23. package/dist/docs-mock-api-sw.js.map +4 -4
  24. package/dist/img/concorde/plane_01.jpg +0 -0
  25. package/dist/img/concorde/plane_02.jpg +0 -0
  26. package/dist/img/concorde/plane_03.jpg +0 -0
  27. package/dist/img/concorde/plane_04.jpg +0 -0
  28. package/dist/img/concorde/plane_05.jpg +0 -0
  29. package/dist/img/concorde/plane_06.jpg +0 -0
  30. package/dist/img/concorde/plane_07.jpg +0 -0
  31. package/dist/img/concorde/plane_08.jpg +0 -0
  32. package/dist/img/concorde/plane_09.jpg +0 -0
  33. package/dist/img/concorde/plane_10.jpg +0 -0
  34. package/dist/img/concorde/plane_11.jpg +0 -0
  35. package/dist/img/concorde/plane_12.jpg +0 -0
  36. package/dist/img/concorde/plane_13.jpg +0 -0
  37. package/dist/img/og-concorde.jpg +0 -0
  38. package/dist/robots.txt +11 -10
  39. package/docs/.htaccess +82 -0
  40. package/docs/404.html +15 -0
  41. package/docs/404.md +5 -0
  42. package/docs/about.html +111 -0
  43. package/docs/about.md +22 -0
  44. package/docs/assets/{index-Bb-_LRyY.js → index-6sS76xWj.js} +2625 -3158
  45. package/docs/assets/index-DkdPbH0F.css +1 -0
  46. package/docs/core/components/functional/date/date.html +211 -0
  47. package/docs/core/components/functional/date/date.md +150 -0
  48. package/docs/core/components/functional/fetch/fetch.html +180 -0
  49. package/docs/core/components/functional/fetch/fetch.md +108 -0
  50. package/docs/core/components/functional/if/if.html +65 -0
  51. package/docs/core/components/functional/if/if.md +34 -0
  52. package/docs/core/components/functional/jsonata/jsonata.html +110 -0
  53. package/docs/core/components/functional/jsonata/jsonata.md +61 -0
  54. package/docs/core/components/functional/list/list.html +200 -0
  55. package/docs/core/components/functional/list/list.md +125 -0
  56. package/docs/core/components/functional/mix/mix.html +78 -0
  57. package/docs/core/components/functional/mix/mix.md +46 -0
  58. package/docs/core/components/functional/queue/queue.html +155 -0
  59. package/docs/core/components/functional/queue/queue.md +51 -0
  60. package/docs/core/components/functional/router/router.html +154 -0
  61. package/docs/core/components/functional/router/router.md +93 -0
  62. package/docs/core/components/functional/sdui/sdui-extension-points.html +127 -0
  63. package/docs/core/components/functional/sdui/sdui-extension-points.md +94 -0
  64. package/docs/core/components/functional/sdui/sdui.html +397 -0
  65. package/docs/core/components/functional/sdui/sdui.md +307 -0
  66. package/docs/core/components/functional/states/states.html +141 -0
  67. package/docs/core/components/functional/states/states.md +112 -0
  68. package/docs/core/components/functional/submit/submit.html +178 -0
  69. package/docs/core/components/functional/submit/submit.md +106 -0
  70. package/docs/core/components/functional/subscriber/subscriber.html +68 -0
  71. package/docs/core/components/functional/subscriber/subscriber.md +91 -0
  72. package/docs/core/components/functional/translation/translation.html +60 -0
  73. package/docs/core/components/functional/translation/translation.md +38 -0
  74. package/docs/core/components/functional/value/value.html +81 -0
  75. package/docs/core/components/functional/value/value.md +47 -0
  76. package/docs/core/components/ui/alert/alert.html +201 -0
  77. package/docs/core/components/ui/alert/alert.md +186 -0
  78. package/docs/core/components/ui/alert-messages/alert-messages.html +132 -0
  79. package/docs/core/components/ui/alert-messages/alert-messages.md +85 -0
  80. package/docs/core/components/ui/badge/badge.html +197 -0
  81. package/docs/core/components/ui/badge/badge.md +181 -0
  82. package/docs/core/components/ui/button/button.html +309 -0
  83. package/docs/core/components/ui/button/button.md +216 -0
  84. package/docs/core/components/ui/captcha/captcha.html +80 -0
  85. package/docs/core/components/ui/captcha/captcha.md +56 -0
  86. package/docs/core/components/ui/card/card.html +254 -0
  87. package/docs/core/components/ui/card/card.md +215 -0
  88. package/docs/core/components/ui/divider/divider.html +144 -0
  89. package/docs/core/components/ui/divider/divider.md +126 -0
  90. package/docs/core/components/ui/form/checkbox/checkbox.html +200 -0
  91. package/docs/core/components/ui/form/checkbox/checkbox.md +125 -0
  92. package/docs/core/components/ui/form/fieldset/fieldset.html +238 -0
  93. package/docs/core/components/ui/form/fieldset/fieldset.md +161 -0
  94. package/docs/core/components/ui/form/form-actions/form-actions.html +122 -0
  95. package/docs/core/components/ui/form/form-actions/form-actions.md +98 -0
  96. package/docs/core/components/ui/form/form-layout/form-layout.html +115 -0
  97. package/docs/core/components/ui/form/form-layout/form-layout.md +109 -0
  98. package/docs/core/components/ui/form/input/input.html +235 -0
  99. package/docs/core/components/ui/form/input/input.md +142 -0
  100. package/docs/core/components/ui/form/radio/radio.html +144 -0
  101. package/docs/core/components/ui/form/radio/radio.md +78 -0
  102. package/docs/core/components/ui/form/select/select.html +178 -0
  103. package/docs/core/components/ui/form/select/select.md +86 -0
  104. package/docs/core/components/ui/form/switch/switch.html +146 -0
  105. package/docs/core/components/ui/form/switch/switch.md +80 -0
  106. package/docs/core/components/ui/form/textarea/textarea.html +162 -0
  107. package/docs/core/components/ui/form/textarea/textarea.md +82 -0
  108. package/docs/core/components/ui/group/group.html +113 -0
  109. package/docs/core/components/ui/group/group.md +77 -0
  110. package/docs/core/components/ui/icon/icon.html +223 -0
  111. package/docs/core/components/ui/icon/icon.md +214 -0
  112. package/docs/core/components/ui/image/image.html +194 -0
  113. package/docs/core/components/ui/image/image.md +167 -0
  114. package/docs/core/components/ui/link/link.html +101 -0
  115. package/docs/core/components/ui/link/link.md +81 -0
  116. package/docs/core/components/ui/loader/loader.html +114 -0
  117. package/docs/core/components/ui/loader/loader.md +87 -0
  118. package/docs/core/components/ui/menu/menu.html +395 -0
  119. package/docs/core/components/ui/menu/menu.md +370 -0
  120. package/docs/core/components/ui/modal/modal.html +324 -0
  121. package/docs/core/components/ui/modal/modal.md +211 -0
  122. package/docs/core/components/ui/pop/pop.html +250 -0
  123. package/docs/core/components/ui/pop/pop.md +216 -0
  124. package/docs/core/components/ui/progress/progress.html +132 -0
  125. package/docs/core/components/ui/progress/progress.md +109 -0
  126. package/docs/core/components/ui/table/table.html +333 -0
  127. package/docs/core/components/ui/table/table.md +267 -0
  128. package/docs/core/components/ui/theme/theme.html +116 -0
  129. package/docs/core/components/ui/theme/theme.md +97 -0
  130. package/docs/core/components/ui/toast/toast.html +185 -0
  131. package/docs/core/components/ui/toast/toast.md +147 -0
  132. package/docs/core/components/ui/tooltip/tooltip.html +112 -0
  133. package/docs/core/components/ui/tooltip/tooltip.md +89 -0
  134. package/docs/custom-elements.json +16559 -0
  135. package/docs/docs/decorators/ancestor-attribute.html +71 -0
  136. package/docs/docs/decorators/ancestor-attribute.md +59 -0
  137. package/docs/docs/decorators/auto-subscribe.html +61 -0
  138. package/docs/docs/decorators/auto-subscribe.md +40 -0
  139. package/docs/docs/decorators/bind.html +87 -0
  140. package/docs/docs/decorators/bind.md +76 -0
  141. package/docs/docs/decorators/get.html +166 -0
  142. package/docs/docs/decorators/get.md +160 -0
  143. package/docs/docs/decorators/handle.html +139 -0
  144. package/docs/docs/decorators/handle.md +119 -0
  145. package/docs/docs/decorators/on-assign.html +72 -0
  146. package/docs/docs/decorators/on-assign.md +63 -0
  147. package/docs/docs/decorators/patch.html +76 -0
  148. package/docs/docs/decorators/patch.md +44 -0
  149. package/docs/docs/decorators/post.html +150 -0
  150. package/docs/docs/decorators/post.md +134 -0
  151. package/docs/docs/decorators/publish.html +74 -0
  152. package/docs/docs/decorators/publish.md +56 -0
  153. package/docs/docs/decorators/put.html +83 -0
  154. package/docs/docs/decorators/put.md +51 -0
  155. package/docs/docs/decorators/subscribe.html +91 -0
  156. package/docs/docs/decorators/subscribe.md +87 -0
  157. package/docs/docs/decorators/wait-for-ancestors.html +82 -0
  158. package/docs/docs/decorators/wait-for-ancestors.md +76 -0
  159. package/docs/docs/directives/sub.html +79 -0
  160. package/docs/docs/directives/sub.md +75 -0
  161. package/docs/docs/directives/t.html +91 -0
  162. package/docs/docs/directives/t.md +73 -0
  163. package/docs/docs/getting-started/ai-agents.html +130 -0
  164. package/docs/docs/getting-started/ai-agents.md +50 -0
  165. package/docs/docs/getting-started/components.html +27 -0
  166. package/docs/docs/getting-started/create-a-component.html +108 -0
  167. package/{src/docs/_getting-started → docs/docs/getting-started}/create-a-component.md +3 -6
  168. package/docs/docs/getting-started/dataFlow.html +174 -0
  169. package/{src/docs/_core-concept → docs/docs/getting-started}/dataFlow.md +18 -19
  170. package/docs/docs/getting-started/installation.html +69 -0
  171. package/docs/docs/getting-started/installation.md +36 -0
  172. package/docs/docs/getting-started/my-first-component.html +180 -0
  173. package/{src/docs/_getting-started → docs/docs/getting-started}/my-first-component.md +5 -14
  174. package/docs/docs/getting-started/start.html +47 -0
  175. package/{src/docs/_getting-started → docs/docs/getting-started}/start.md +1 -13
  176. package/docs/docs/getting-started/theming.html +334 -0
  177. package/docs/docs/index.html +99 -0
  178. package/docs/docs/misc/api-configuration.html +149 -0
  179. package/{src/docs/_misc → docs/docs/misc}/api-configuration.md +10 -12
  180. package/docs/docs/misc/dataProviderKey.html +136 -0
  181. package/{src/docs/_misc → docs/docs/misc}/dataProviderKey.md +4 -4
  182. package/docs/docs/misc/docs-mock-api.html +155 -0
  183. package/{src/docs/_misc → docs/docs/misc}/docs-mock-api.md +12 -13
  184. package/docs/docs/misc/dynamic-path.html +181 -0
  185. package/{src/docs/_misc → docs/docs/misc}/dynamic-path.md +8 -8
  186. package/docs/docs/misc/endpoint.html +51 -0
  187. package/{src/docs/_misc → docs/docs/misc}/endpoint.md +8 -8
  188. package/docs/docs/misc/html-integration.html +45 -0
  189. package/{src/docs/_misc → docs/docs/misc}/html-integration.md +4 -5
  190. package/docs/docs-mock-api-sw.js +58 -223
  191. package/docs/docs-mock-api-sw.js.map +4 -4
  192. package/docs/hubs/decorators.html +438 -0
  193. package/docs/hubs/form-components.html +404 -0
  194. package/docs/hubs/remote-data.html +367 -0
  195. package/docs/img/archive/concorde-001-2cv.webp +0 -0
  196. package/docs/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
  197. package/docs/img/archive/concorde-red-arrows-2002.webm +0 -0
  198. package/docs/img/archive/credits.json +28 -0
  199. package/docs/img/concorde/plane_01.jpg +0 -0
  200. package/docs/img/concorde/plane_02.jpg +0 -0
  201. package/docs/img/concorde/plane_03.jpg +0 -0
  202. package/docs/img/concorde/plane_04.jpg +0 -0
  203. package/docs/img/concorde/plane_05.jpg +0 -0
  204. package/docs/img/concorde/plane_06.jpg +0 -0
  205. package/docs/img/concorde/plane_07.jpg +0 -0
  206. package/docs/img/concorde/plane_08.jpg +0 -0
  207. package/docs/img/concorde/plane_09.jpg +0 -0
  208. package/docs/img/concorde/plane_10.jpg +0 -0
  209. package/docs/img/concorde/plane_11.jpg +0 -0
  210. package/docs/img/concorde/plane_12.jpg +0 -0
  211. package/docs/img/concorde/plane_13.jpg +0 -0
  212. package/docs/img/og-concorde.jpg +0 -0
  213. package/docs/index.html +184 -68
  214. package/docs/index.md +22 -0
  215. package/docs/llms-full.txt +5779 -0
  216. package/docs/llms.txt +108 -0
  217. package/docs/privacy.html +122 -0
  218. package/docs/privacy.md +32 -0
  219. package/docs/robots.txt +11 -10
  220. package/docs/sitemap.xml +243 -0
  221. package/docs/src/core/components/functional/date/date.md +150 -0
  222. package/docs/src/core/components/functional/fetch/fetch.md +108 -0
  223. package/docs/src/core/components/functional/if/if.md +34 -0
  224. package/docs/src/core/components/functional/jsonata/jsonata.md +61 -0
  225. package/docs/src/core/components/functional/list/list.md +125 -0
  226. package/docs/src/core/components/functional/mix/mix.md +46 -0
  227. package/docs/src/core/components/functional/queue/queue.md +51 -0
  228. package/docs/src/core/components/functional/router/router.md +93 -0
  229. package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +511 -0
  230. package/docs/src/core/components/functional/sdui/component-catalog.json +3103 -0
  231. package/docs/src/core/components/functional/sdui/default-library.json +108 -0
  232. package/docs/src/core/components/functional/sdui/example.json +32 -0
  233. package/docs/src/core/components/functional/sdui/sdui-extension-points.md +94 -0
  234. package/docs/src/core/components/functional/sdui/sdui.md +307 -0
  235. package/docs/src/core/components/functional/states/states.md +112 -0
  236. package/docs/src/core/components/functional/submit/submit.md +106 -0
  237. package/docs/src/core/components/functional/subscriber/subscriber.md +91 -0
  238. package/docs/src/core/components/functional/translation/translation.md +38 -0
  239. package/docs/src/core/components/functional/value/value.md +47 -0
  240. package/docs/src/core/components/ui/alert/alert.md +186 -0
  241. package/docs/src/core/components/ui/alert-messages/alert-messages.md +85 -0
  242. package/docs/src/core/components/ui/badge/badge.md +181 -0
  243. package/docs/src/core/components/ui/button/button.md +216 -0
  244. package/docs/src/core/components/ui/captcha/captcha.md +56 -0
  245. package/docs/src/core/components/ui/card/card.md +215 -0
  246. package/docs/src/core/components/ui/divider/divider.md +126 -0
  247. package/docs/src/core/components/ui/form/checkbox/checkbox.md +125 -0
  248. package/docs/src/core/components/ui/form/fieldset/fieldset.md +161 -0
  249. package/docs/src/core/components/ui/form/form-actions/form-actions.md +98 -0
  250. package/docs/src/core/components/ui/form/form-layout/form-layout.md +109 -0
  251. package/docs/src/core/components/ui/form/input/input.md +142 -0
  252. package/docs/src/core/components/ui/form/radio/radio.md +78 -0
  253. package/docs/src/core/components/ui/form/select/select.md +86 -0
  254. package/docs/src/core/components/ui/form/switch/switch.md +80 -0
  255. package/docs/src/core/components/ui/form/textarea/textarea.md +82 -0
  256. package/docs/src/core/components/ui/group/group.md +77 -0
  257. package/docs/src/core/components/ui/icon/icon.md +214 -0
  258. package/docs/src/core/components/ui/icon/icons.json +1 -0
  259. package/docs/src/core/components/ui/image/image.md +167 -0
  260. package/docs/src/core/components/ui/link/link.md +81 -0
  261. package/docs/src/core/components/ui/loader/loader.md +87 -0
  262. package/docs/src/core/components/ui/menu/menu.md +370 -0
  263. package/docs/src/core/components/ui/modal/modal.md +211 -0
  264. package/docs/src/core/components/ui/pop/pop.md +216 -0
  265. package/docs/src/core/components/ui/progress/progress.md +109 -0
  266. package/docs/src/core/components/ui/table/table.md +267 -0
  267. package/docs/src/core/components/ui/theme/theme.md +97 -0
  268. package/docs/src/core/components/ui/toast/toast.md +147 -0
  269. package/docs/src/core/components/ui/tooltip/tooltip.md +89 -0
  270. package/docs/src/docs/decorators/ancestor-attribute.md +59 -0
  271. package/docs/src/docs/decorators/auto-subscribe.md +40 -0
  272. package/docs/src/docs/decorators/bind.md +76 -0
  273. package/docs/src/docs/decorators/get.md +160 -0
  274. package/docs/src/docs/decorators/handle.md +119 -0
  275. package/docs/src/docs/decorators/on-assign.md +63 -0
  276. package/docs/src/docs/decorators/patch.md +44 -0
  277. package/docs/src/docs/decorators/post.md +134 -0
  278. package/docs/src/docs/decorators/publish.md +56 -0
  279. package/docs/src/docs/decorators/put.md +51 -0
  280. package/docs/src/docs/decorators/subscribe.md +87 -0
  281. package/docs/src/docs/decorators/wait-for-ancestors.md +76 -0
  282. package/docs/src/docs/directives/sub.md +75 -0
  283. package/docs/src/docs/directives/t.md +73 -0
  284. package/docs/src/docs/getting-started/ai-agents.md +50 -0
  285. package/docs/src/docs/getting-started/components.md +5 -0
  286. package/docs/src/docs/getting-started/create-a-component.md +136 -0
  287. package/docs/src/docs/getting-started/dataFlow.md +87 -0
  288. package/docs/src/docs/getting-started/installation.md +36 -0
  289. package/docs/src/docs/getting-started/my-first-component.md +227 -0
  290. package/docs/src/docs/getting-started/start.md +35 -0
  291. package/docs/src/docs/getting-started/theming.md +253 -0
  292. package/docs/src/docs/misc/api-configuration.md +79 -0
  293. package/docs/src/docs/misc/dataProviderKey.md +168 -0
  294. package/docs/src/docs/misc/docs-mock-api.md +62 -0
  295. package/docs/src/docs/misc/dynamic-path.md +71 -0
  296. package/docs/src/docs/misc/endpoint.md +45 -0
  297. package/docs/src/docs/misc/html-integration.md +14 -0
  298. package/docs/src/docs/search/docs-search.json +10332 -0
  299. package/docs/src/tag-list.json +1 -0
  300. package/docs/src/tsconfig-model.json +23 -0
  301. package/docs/src/tsconfig.json +1359 -0
  302. package/index.html +157 -5
  303. package/package.json +8 -4
  304. package/public/docs-mock-api-sw.js +58 -223
  305. package/public/docs-mock-api-sw.js.map +4 -4
  306. package/public/img/concorde/plane_01.jpg +0 -0
  307. package/public/img/concorde/plane_02.jpg +0 -0
  308. package/public/img/concorde/plane_03.jpg +0 -0
  309. package/public/img/concorde/plane_04.jpg +0 -0
  310. package/public/img/concorde/plane_05.jpg +0 -0
  311. package/public/img/concorde/plane_06.jpg +0 -0
  312. package/public/img/concorde/plane_07.jpg +0 -0
  313. package/public/img/concorde/plane_08.jpg +0 -0
  314. package/public/img/concorde/plane_09.jpg +0 -0
  315. package/public/img/concorde/plane_10.jpg +0 -0
  316. package/public/img/concorde/plane_11.jpg +0 -0
  317. package/public/img/concorde/plane_12.jpg +0 -0
  318. package/public/img/concorde/plane_13.jpg +0 -0
  319. package/public/img/og-concorde.jpg +0 -0
  320. package/public/robots.txt +11 -10
  321. package/scripts/ai-init.mjs +104 -379
  322. package/scripts/ai-init.test.mjs +81 -239
  323. package/scripts/docs-markdown-vite-plugin.ts +43 -0
  324. package/scripts/docs-public-url.mjs +56 -0
  325. package/scripts/docs.htaccess +82 -0
  326. package/scripts/generate-cem.mjs +244 -0
  327. package/scripts/generate-cem.test.mjs +122 -0
  328. package/scripts/generate-crawl-docs.mjs +233 -118
  329. package/scripts/generate-crawl-docs.test.mjs +124 -0
  330. package/scripts/generate-sdui-catalog.mjs +11 -10
  331. package/scripts/post-build-docs.js +37 -50
  332. package/scripts/pre-publish.mjs +2 -1
  333. package/scripts/site-pages.mjs +212 -0
  334. package/scripts/site-pages.test.mjs +116 -0
  335. package/site-pages/about.md +22 -0
  336. package/site-pages/privacy.md +32 -0
  337. package/src/core/components/functional/date/date.md +91 -231
  338. package/src/core/components/functional/fetch/fetch.md +66 -83
  339. package/src/core/components/functional/if/if.md +28 -3
  340. package/src/core/components/functional/jsonata/jsonata.md +42 -37
  341. package/src/core/components/functional/list/list.md +103 -43
  342. package/src/core/components/functional/mix/mix.md +31 -26
  343. package/src/core/components/functional/queue/queue.demo.ts +10 -7
  344. package/src/core/components/functional/queue/queue.md +40 -61
  345. package/src/core/components/functional/router/router.demo.ts +16 -16
  346. package/src/core/components/functional/router/router.md +64 -65
  347. package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  348. package/src/core/components/functional/sdui/component-catalog.json +1 -1
  349. package/src/core/components/functional/sdui/example.json +19 -86
  350. package/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
  351. package/src/core/components/functional/sdui/sdui.md +187 -358
  352. package/src/core/components/functional/states/states.demo.ts +21 -22
  353. package/src/core/components/functional/states/states.md +86 -61
  354. package/src/core/components/functional/states/states.ts +1 -1
  355. package/src/core/components/functional/submit/submit.md +64 -72
  356. package/src/core/components/functional/translation/translation.md +38 -0
  357. package/src/core/components/functional/value/value.md +34 -22
  358. package/src/core/components/ui/alert/alert.md +48 -58
  359. package/src/core/components/ui/badge/badge.md +27 -34
  360. package/src/core/components/ui/button/button.md +139 -106
  361. package/src/core/components/ui/captcha/captcha.md +17 -32
  362. package/src/core/components/ui/card/card.md +6 -6
  363. package/src/core/components/ui/divider/divider.md +8 -11
  364. package/src/core/components/ui/form/checkbox/checkbox.md +90 -42
  365. package/src/core/components/ui/form/fieldset/fieldset.md +31 -75
  366. package/src/core/components/ui/form/form-actions/form-actions.md +14 -16
  367. package/src/core/components/ui/form/form-layout/form-layout.md +19 -29
  368. package/src/core/components/ui/form/input/input.md +95 -95
  369. package/src/core/components/ui/form/radio/radio.md +55 -34
  370. package/src/core/components/ui/form/select/select.md +60 -45
  371. package/src/core/components/ui/form/switch/switch.md +57 -34
  372. package/src/core/components/ui/form/textarea/textarea.md +55 -38
  373. package/src/core/components/ui/group/group.md +35 -33
  374. package/src/core/components/ui/icon/icon.md +4 -4
  375. package/src/core/components/ui/image/image.md +41 -107
  376. package/src/core/components/ui/link/link.md +6 -6
  377. package/src/core/components/ui/loader/loader.md +30 -55
  378. package/src/core/components/ui/menu/menu.md +27 -27
  379. package/src/core/components/ui/modal/modal.md +72 -96
  380. package/src/core/components/ui/pop/pop.md +80 -158
  381. package/src/core/components/ui/progress/progress.md +2 -2
  382. package/src/core/components/ui/table/table.md +91 -255
  383. package/src/core/components/ui/theme/theme.md +11 -36
  384. package/src/core/components/ui/toast/toast.md +48 -117
  385. package/src/core/components/ui/tooltip/tooltip.md +27 -62
  386. package/src/core/decorators/subscriber/bind.ts +9 -14
  387. package/src/core/utils/LocationHandler.spec.ts +80 -0
  388. package/src/core/utils/LocationHandler.ts +5 -9
  389. package/src/docs/components/docs-demo-sources.ts +55 -140
  390. package/src/docs/components/docs-lit-demo.ts +1 -3
  391. package/src/docs/components/docs-source-link.ts +0 -82
  392. package/src/docs/decorators/ancestor-attribute.md +59 -0
  393. package/src/docs/decorators/auto-subscribe.md +40 -0
  394. package/src/docs/decorators/bind.md +76 -0
  395. package/src/docs/decorators/get.md +160 -0
  396. package/src/docs/decorators/handle.md +119 -0
  397. package/src/docs/decorators/on-assign.md +63 -0
  398. package/src/docs/decorators/patch.md +44 -0
  399. package/src/docs/decorators/post.md +134 -0
  400. package/src/docs/decorators/publish.md +56 -0
  401. package/src/docs/decorators/put.md +51 -0
  402. package/src/docs/decorators/subscribe.md +87 -0
  403. package/src/docs/decorators/wait-for-ancestors.md +76 -0
  404. package/src/docs/directives/sub.md +75 -0
  405. package/src/docs/directives/t.md +73 -0
  406. package/src/docs/docs-location.spec.ts +56 -0
  407. package/src/docs/docs-location.ts +133 -32
  408. package/src/docs/docs.ts +1 -2
  409. package/src/docs/example/decorators-demo-bind-demos.ts +83 -135
  410. package/src/docs/example/decorators-demo-geo.ts +30 -19
  411. package/src/docs/example/decorators-demo-post.ts +88 -186
  412. package/src/docs/example/decorators-demo-subscribe-publish-get-demos.ts +165 -268
  413. package/src/docs/example/decorators-demo.ts +85 -98
  414. package/src/docs/example/docs-api-config-demos.ts +19 -20
  415. package/src/docs/example/docs-flight-demos.ts +147 -0
  416. package/src/docs/example/docs-jsonata-demos.ts +52 -52
  417. package/src/docs/example/docs-list-demos.ts +43 -123
  418. package/src/docs/example/docs-provider-keys.ts +21 -28
  419. package/src/docs/example/docs-queue-demos.ts +37 -77
  420. package/src/docs/example/docs-router-demos.ts +20 -25
  421. package/src/docs/example/docs-submit-demos.ts +48 -48
  422. package/src/docs/example/docs-toggle-demos.ts +4 -3
  423. package/src/docs/getting-started/ai-agents.md +50 -0
  424. package/src/docs/getting-started/components.md +5 -0
  425. package/src/docs/getting-started/create-a-component.md +136 -0
  426. package/src/docs/getting-started/dataFlow.md +87 -0
  427. package/src/docs/getting-started/installation.md +36 -0
  428. package/src/docs/getting-started/my-first-component.md +227 -0
  429. package/src/docs/getting-started/start.md +35 -0
  430. package/src/docs/getting-started/theming.md +253 -0
  431. package/src/docs/header/header.ts +11 -6
  432. package/src/docs/home/catalog.ts +1 -1
  433. package/src/docs/home/home.ts +20 -11
  434. package/src/docs/layout.ts +12 -13
  435. package/src/docs/misc/api-configuration.md +79 -0
  436. package/src/docs/misc/dataProviderKey.md +168 -0
  437. package/src/docs/misc/docs-mock-api.md +62 -0
  438. package/src/docs/misc/dynamic-path.md +71 -0
  439. package/src/docs/misc/endpoint.md +45 -0
  440. package/src/docs/misc/html-integration.md +14 -0
  441. package/src/docs/mock-api/api-config-mock.ts +5 -0
  442. package/src/docs/mock-api/fixtures.ts +0 -278
  443. package/src/docs/mock-api/flights.ts +89 -0
  444. package/src/docs/mock-api/router.ts +3 -4
  445. package/src/docs/mock-api/urls.ts +1 -2
  446. package/src/docs/navigation/navigation.ts +82 -103
  447. package/src/docs/navigation/toc.ts +7 -4
  448. package/src/docs/search/docs-search.json +2804 -5024
  449. package/src/docs/search/markdown-renderer.ts +31 -8
  450. package/src/docs/search/page.ts +9 -6
  451. package/src/docs/search/search.ts +154 -122
  452. package/src/docs/tailwind/css/docs/content.css +4 -5
  453. package/src/tsconfig.json +11 -5
  454. package/src/tsconfig.tsbuildinfo +1 -1
  455. package/vite.config.mts +11 -2
  456. package/.agents/skills/concorde-component-docs/SKILL.md +0 -194
  457. package/ai/AGENTS.md +0 -56
  458. package/ai/cursor/rules/concorde-menu.mdc +0 -15
  459. package/ai/cursor/rules/concorde-scope.mdc +0 -14
  460. package/ai/cursor/rules/concorde-theme.mdc +0 -13
  461. package/ai/cursor/rules/concorde.mdc +0 -66
  462. package/ai/jetbrains/rules/concorde.md +0 -53
  463. package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
  464. package/ai/skills/concorde-imports/SKILL.md +0 -78
  465. package/ai/skills/concorde-menu/SKILL.md +0 -74
  466. package/ai/skills/concorde-scope/SKILL.md +0 -70
  467. package/ai/skills/concorde-theme/SKILL.md +0 -57
  468. package/docs/assets/index-CD4WyL6o.css +0 -1
  469. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -29
  470. package/src/docs/_core-concept/overview.md +0 -57
  471. package/src/docs/_core-concept/subscriber.md +0 -75
  472. package/src/docs/_decorators/ancestor-attribute.md +0 -128
  473. package/src/docs/_decorators/auto-subscribe.md +0 -202
  474. package/src/docs/_decorators/bind.md +0 -167
  475. package/src/docs/_decorators/get.md +0 -162
  476. package/src/docs/_decorators/handle.md +0 -175
  477. package/src/docs/_decorators/on-assign.md +0 -390
  478. package/src/docs/_decorators/patch.md +0 -70
  479. package/src/docs/_decorators/post.md +0 -146
  480. package/src/docs/_decorators/publish.md +0 -55
  481. package/src/docs/_decorators/put.md +0 -70
  482. package/src/docs/_decorators/subscribe.md +0 -100
  483. package/src/docs/_decorators/wait-for-ancestors.md +0 -163
  484. package/src/docs/_directives/sub.md +0 -91
  485. package/src/docs/_getting-started/ai-agents.md +0 -76
  486. package/src/docs/_getting-started/concorde-manual-install.md +0 -133
  487. package/src/docs/_getting-started/concorde-outside.md +0 -33
  488. package/src/docs/_getting-started/my-first-subscriber.md +0 -120
  489. package/src/docs/_getting-started/pubsub.md +0 -37
  490. package/src/docs/_misc/formelement-subscriber-removal.md +0 -115
  491. package/src/docs/example/docs-input-autocomplete-demos.ts +0 -110
  492. package/src/docs/example/docs-joke-demos.ts +0 -297
  493. /package/{src/docs/_getting-started → docs/docs/getting-started}/components.md +0 -0
  494. /package/{src/docs/_getting-started → docs/docs/getting-started}/theming.md +0 -0
@@ -0,0 +1,404 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en" data-doc-url="https://concorde.supersoniks.org/hubs/form-components.html" data-doc-id="hubs/form-components">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Concorde form components — Concorde by Supersoniks</title>
7
+ <meta name="description" content="Hub for form UI: sonic-input, sonic-select, sonic-checkbox, sonic-submit, formDataProvider, FormElement.">
8
+ <meta name="keywords" content="form, FormElement, formDataProvider, sonic-input, sonic-select, sonic-checkbox, sonic-submit">
9
+ <meta name="concorde-doc-id" content="hubs/form-components">
10
+ <link rel="canonical" href="https://concorde.supersoniks.org/hubs/form-components.html">
11
+ </head>
12
+ <body>
13
+ <header>
14
+ <p><a href="/docs/index.html">Concorde documentation</a></p>
15
+ </header>
16
+ <main>
17
+ <article>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde documentation — Concorde form components</strong>. Hub for form UI: sonic-input, sonic-select, sonic-checkbox, sonic-submit, formDataProvider, FormElement. <span>Doc ID: <code>hubs/form-components</code>. Keywords: form, FormElement, formDataProvider, sonic-input, sonic-select, sonic-checkbox, sonic-submit. URL: <a href="https://concorde.supersoniks.org/hubs/form-components.html">https://concorde.supersoniks.org/hubs/form-components.html</a>.</span></p>
19
+ <section id="core-components-ui-form-checkbox-checkbox" data-doc-id="core/components/ui/form/checkbox/checkbox">
20
+ <h2><a href="/core/components/ui/form/checkbox">Checkbox</a></h2>
21
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/checkbox/checkbox</code> · <a href="/core/components/ui/form/checkbox">full page</a></p>
22
+ <p>sonic-checkbox is a styled checkbox that writes its value into form data. Give it a name and a formDataProvider (on the field or an ancestor); checkboxes sharing a name build an array of the checked v</p>
23
+ <pre class="doc-excerpt">Checkbox
24
+
25
+ sonic-checkbox is a styled checkbox that writes its value into form data. Give it a name and a formDataProvider (on the field or an ancestor); checkboxes sharing a name build an array of the checked values. Label goes in the default slot or label, helper text in the description slot.
26
+
27
+ Basic example
28
+
29
+ Notify me of gate changes
30
+ One message per change, no spam.
31
+
32
+ Size
33
+
34
+ With no size, the checkbox follows md (1rem).
35
+
36
+ 2xs
37
+ xs
38
+ sm
39
+ Default
40
+ lg
41
+ xl
42
+ 2xl
43
+
44
+ Checked and disabled
45
+
46
+ checked sets the initial state. disabled blocks interaction and dims the control.
47
+
48
+ Checked
49
+ Disabled
50
+ Disabled and checked
51
+ I accept the terms
52
+
53
+ Form binding
54
+
55
+ Checkboxes with the same name under one formDataProvider store an array of the checked values. Initial state is read from that data, so a value already present checks the matching box. See Data flow.
56
+
57
+ Extra baggage
58
+ Meal
59
+ Lounge access
60
+ Selected:
61
+
62
+ Single value
63
+
64
+ unique stores a single value instead of an array: checking one box unchecks the others with the same name, and the checked box can be unchecked again (value null). radio does the same but cann</pre>
65
+ </section>
66
+ <section id="core-components-ui-form-fieldset-fieldset" data-doc-id="core/components/ui/form/fieldset/fieldset">
67
+ <h2><a href="/core/components/ui/form/fieldset">Fieldset</a></h2>
68
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/fieldset/fieldset</code> · <a href="/core/components/ui/form/fieldset">full page</a></p>
69
+ <p>sonic-fieldset groups related form controls in a bordered container rendered as a native &lt;fieldset&gt;. Put fields in the default slot and title the group with a slotted sonic-legend or with the label an</p>
70
+ <pre class="doc-excerpt">Fieldset
71
+
72
+ sonic-fieldset groups related form controls in a bordered container rendered as a native . Put fields in the default slot and title the group with a slotted sonic-legend or with the label and description shorthand. Pair the body with sonic-form-layout for responsive columns.
73
+
74
+ Basic example
75
+
76
+ Variant
77
+
78
+ With no variant, the fieldset is default (bordered). ghost and shadow hide the border; shadow adds --sc-shadow-lg.
79
+
80
+ Tight
81
+
82
+ tight removes horizontal padding, side borders and rounding, for a flat strip inside a parent.
83
+
84
+ Legend
85
+
86
+ sonic-legend takes label and description, or custom markup in its default slot with sonic-legend-description for the secondary line. iconName adds a leading sonic-icon. label and description are rendered as HTML: pass trusted content only.
87
+
88
+ Custom title in the default slot
89
+ Description via sonic-legend-description
90
+
91
+ Shorthand legend
92
+
93
+ When label is set on sonic-fieldset, it renders the sonic-legend itself and forwards description · iconName · iconLibrary · iconPrefix. Do not also slot a sonic-legend, or the group gets two titles.
94
+
95
+ Legend actions
96
+
97
+ slot=&quot;suffix&quot; on sonic-legend aligns menus or icon buttons to the end of the title row.
98
+
99
+ </pre>
100
+ </section>
101
+ <section id="core-components-ui-form-form-actions-form-actions" data-doc-id="core/components/ui/form/form-actions/form-actions">
102
+ <h2><a href="/core/components/ui/form/form-actions">Form actions</a></h2>
103
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/form-actions/form-actions</code> · <a href="/core/components/ui/form/form-actions">full page</a></p>
104
+ <p>sonic-form-actions lays out form footer controls (submit, cancel) in a wrapping flex row with a 0.3rem gap. Place it inside sonic-form-layout, where it spans the full width, or at the end of any block</p>
105
+ <pre class="doc-excerpt">Form actions
106
+
107
+ sonic-form-actions lays out form footer controls (submit, cancel) in a wrapping flex row with a 0.3rem gap. Place it inside sonic-form-layout, where it spans the full width, or at the end of any block. Use justify and direction to arrange the controls.
108
+
109
+ Basic example
110
+
111
+ With no attributes, actions align to the start of the row.
112
+
113
+ Check in
114
+ Cancel
115
+
116
+ Justify
117
+
118
+ justify is the CSS justify-content of the row (default flex-start). Use flex-end for dialog-style footers or center for toolbars.
119
+
120
+ Submit
121
+ Cancel
122
+
123
+ Direction
124
+
125
+ direction is the CSS flex-direction (default row). row-reverse swaps the visual order but keeps the DOM and focus order.
126
+
127
+ Submit
128
+ Cancel
129
+
130
+ Mixed controls
131
+
132
+ Any content can be slotted, such as a vertical sonic-divider. The default alignItems (center) keeps items of different heights aligned.
133
+
134
+ Previous step
135
+
136
+ Next step
137
+
138
+ API reference
139
+
140
+ | Attribute | Values | Description |
141
+ |----------|---------|-------------|
142
+ | direction | row (default) · column · row-reverse · column-reverse | CSS flex-direction of the row |
143
+ | justify | CSS justify-content value (default flex-start) </pre>
144
+ </section>
145
+ <section id="core-components-ui-form-form-layout-form-layout" data-doc-id="core/components/ui/form/form-layout/form-layout">
146
+ <h2><a href="/core/components/ui/form/form-layout">Form layout</a></h2>
147
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/form-layout/form-layout</code> · <a href="/core/components/ui/form/form-layout">full page</a></p>
148
+ <p>sonic-form-layout arranges slotted form controls in a responsive grid. Short fields (sonic-input · sonic-select) sit two per row when the host is wider than 440px; every other child spans the full wid</p>
149
+ <pre class="doc-excerpt">Form layout
150
+
151
+ sonic-form-layout arranges slotted form controls in a responsive grid. Short fields (sonic-input · sonic-select) sit two per row when the host is wider than 440px; every other child spans the full width. It has no attributes: wrap the body of a form or sonic-fieldset with it.
152
+
153
+ Basic example
154
+
155
+ — Select —
156
+ Prefer not to say
157
+ Male
158
+ Female
159
+
160
+ Add priority boarding
161
+ Subscribe to newsletter
162
+
163
+ I accept the
164
+ terms and conditions
165
+
166
+ Confirm passenger
167
+
168
+ Responsive columns
169
+
170
+ The column count depends on the host width, not the viewport: two columns above 440px, one below. When the layout holds exactly one short field, it stays single-column so the field does not sit in half an empty row.
171
+
172
+ Narrow host
173
+
174
+ Wide host
175
+
176
+ Full-width children
177
+
178
+ Any child that is not a short field spans the full row: sonic-textarea · sonic-checkbox · sonic-switch · sonic-divider · sonic-form-actions and plain elements. Slotted dividers lose their vertical margin to match the grid gap, and sonic-submit uses display: contents so its button joins the grid directly.
179
+
180
+ Send
181
+
182
+ Custom column wrapper
183
+
184
+ Add the clas</pre>
185
+ </section>
186
+ <section id="core-components-ui-form-input-input" data-doc-id="core/components/ui/form/input/input">
187
+ <h2><a href="/core/components/ui/form/input">Input</a></h2>
188
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/input/input</code> · <a href="/core/components/ui/form/input">full page</a></p>
189
+ <p>sonic-input wraps a native &lt;input&gt; with a label, a description, prefix and suffix slots and Concorde sizes. Native attributes (type, placeholder, pattern, min, max, …) are passed through. Bind the val</p>
190
+ <pre class="doc-excerpt">Input
191
+
192
+ sonic-input wraps a native with a label, a description, prefix and suffix slots and Concorde sizes. Native attributes (type, placeholder, pattern, min, max, …) are passed through. Bind the value to a store with formDataProvider and name, set on the field or on an ancestor.
193
+
194
+ Basic example
195
+
196
+ Type
197
+
198
+ With no type, the input is text. Text-like types (email, password, date, number, color, search, …) are supported; radio, checkbox and range have dedicated components. password adds a visibility toggle.
199
+
200
+ Size and status
201
+
202
+ With no size, the input uses the base scale. status colors the field; it defaults to default.
203
+
204
+ Validation
205
+
206
+ required, pattern, minlength and the native type rules are checked by the browser. Feedback styles apply once the field is touched (after blur).
207
+
208
+ Prefix and suffix
209
+
210
+ Slotted content sits outside the field by default. Set inlineContent to draw it inside; clicking it then focuses the input unless disableInlineContentFocus is set.
211
+
212
+ 4 max
213
+
214
+ Form data
215
+
216
+ Fields sharing the same formDataProvider and name stay in sync. The attribute is looked up on ancestors, so set it once on a wrapper.
217
+
218
+ sameValueAs sets pattern to the value of another field in the same store, fo</pre>
219
+ </section>
220
+ <section id="core-components-ui-form-radio-radio" data-doc-id="core/components/ui/form/radio/radio">
221
+ <h2><a href="/core/components/ui/form/radio">Radio</a></h2>
222
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/radio/radio</code> · <a href="/core/components/ui/form/radio">full page</a></p>
223
+ <p>sonic-radio is a round Checkbox in radio mode: radios sharing a name under one formDataProvider store a single value, and a checked radio cannot be unchecked by a click. Label goes in the default slot</p>
224
+ <pre class="doc-excerpt">Radio
225
+
226
+ sonic-radio is a round Checkbox in radio mode: radios sharing a name under one formDataProvider store a single value, and a checked radio cannot be unchecked by a click. Label goes in the default slot or label, helper text in the description slot.
227
+
228
+ Basic example
229
+
230
+ Window
231
+ Aisle
232
+ Seat:
233
+
234
+ Size
235
+
236
+ With no size, the radio follows md (1rem).
237
+
238
+ 2xs
239
+ xs
240
+ sm
241
+ Default
242
+ lg
243
+ xl
244
+ 2xl
245
+
246
+ Checked and disabled
247
+
248
+ checked sets the initial state. disabled blocks interaction and dims the control.
249
+
250
+ Checked
251
+ Disabled
252
+ Disabled and checked
253
+ I accept the terms
254
+
255
+ Filtering a list
256
+
257
+ The radio group writes one status value to the store used as dataFilterProvider by a sonic-queue. See Checkbox for the multi-value version.
258
+
259
+ API reference
260
+
261
+ | Attribute | Values | Description |
262
+ |----------|---------|-------------|
263
+ | name | string | Key in the form data (dot notation supported) |
264
+ | value | string | Value stored when checked |
265
+ | formDataProvider | string | Form data id; inherited from the closest ancestor when omitted |
266
+ | checked | boolean | Initial checked state |
267
+ | unsetOnDisconnect | boolean | Removes the value from the data wh</pre>
268
+ </section>
269
+ <section id="core-components-ui-form-select-select" data-doc-id="core/components/ui/form/select/select">
270
+ <h2><a href="/core/components/ui/form/select">Select</a></h2>
271
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/select/select</code> · <a href="/core/components/ui/form/select">full page</a></p>
272
+ <p>sonic-select wraps a native &lt;select&gt; with a label, a description, prefix and suffix slots and Concorde sizes. Options come from child &lt;option&gt; tags or from the options attribute (JSON). Bind the value</p>
273
+ <pre class="doc-excerpt">Select
274
+
275
+ sonic-select wraps a native with a label, a description, prefix and suffix slots and Concorde sizes. Options come from child tags or from the options attribute (JSON). Bind the value to a store with formDataProvider and name, set on the field or on an ancestor.
276
+
277
+ Basic example
278
+
279
+ No selection
280
+ Economy
281
+ Premium
282
+ Business
283
+ First
284
+
285
+ Options
286
+
287
+ options takes an array of objects; valueKey (default value) and wordingKey (default wording) name the keys to read. An option with selected sets the initial value; with no value and nothing selected, the first option is used.
288
+
289
+ Size and status
290
+
291
+ With no size, the select uses the base scale. status colors the field; it defaults to default.
292
+
293
+ 2xs
294
+ xs
295
+ sm
296
+ default
297
+ lg
298
+ xl
299
+ 2xl
300
+ success
301
+ error
302
+ warning
303
+ info
304
+ primary
305
+ disabled
306
+
307
+ Filtering a list
308
+
309
+ name=&quot;direction&quot; writes to the store used as dataFilterProvider by a sonic-queue, which sends it as ?direction= to the mock API: switch between departures and arrivals.
310
+
311
+ API reference
312
+
313
+ | Attribute | Values | Description |
314
+ |----------|---------|-------------|
315
+ | name | string | Key in th</pre>
316
+ </section>
317
+ <section id="core-components-ui-form-switch-switch" data-doc-id="core/components/ui/form/switch/switch">
318
+ <h2><a href="/core/components/ui/form/switch">Switch</a></h2>
319
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/switch/switch</code> · <a href="/core/components/ui/form/switch">full page</a></p>
320
+ <p>sonic-switch is a toggle-styled Checkbox in unique mode: when on, it stores its value under name in the formDataProvider data; when off, it stores null. Switches sharing a name behave as one choice, s</p>
321
+ <pre class="doc-excerpt">Switch
322
+
323
+ sonic-switch is a toggle-styled Checkbox in unique mode: when on, it stores its value under name in the formDataProvider data; when off, it stores null. Switches sharing a name behave as one choice, so give independent switches distinct names. Label goes in the default slot or label, helper text in the description slot.
324
+
325
+ Basic example
326
+
327
+ Notifications
328
+ Get an alert when your gate changes.
329
+
330
+ Value:
331
+
332
+ Size
333
+
334
+ With no size, the switch follows md (1rem).
335
+
336
+ 2xs
337
+ xs
338
+ sm
339
+ Default
340
+ lg
341
+ xl
342
+ 2xl
343
+
344
+ Checked and disabled
345
+
346
+ checked sets the initial state. disabled blocks interaction and dims the control.
347
+
348
+ Checked
349
+ Disabled
350
+ Disabled and checked
351
+ I accept the terms
352
+
353
+ Filtering a list
354
+
355
+ On, the switch writes status=delayed to the store used as dataFilterProvider by a sonic-queue; off, it writes null and the filter is dropped.
356
+
357
+ API reference
358
+
359
+ | Attribute | Values | Description |
360
+ |----------|---------|-------------|
361
+ | name | string | Key in the form data (dot notation supported) |
362
+ | value | string | Value stored when on |
363
+ | formDataProvider | string | Form data id; inherited from the closest ancestor when omitte</pre>
364
+ </section>
365
+ <section id="core-components-ui-form-textarea-textarea" data-doc-id="core/components/ui/form/textarea/textarea">
366
+ <h2><a href="/core/components/ui/form/textarea">Textarea</a></h2>
367
+ <p><strong>Doc ID:</strong> <code>core/components/ui/form/textarea/textarea</code> · <a href="/core/components/ui/form/textarea">full page</a></p>
368
+ <p>sonic-textarea wraps a native &lt;textarea&gt; with a label, a description and Concorde sizes. Native attributes (rows, cols, maxlength, wrap, …) are passed through. Bind the value to a store with formDataP</p>
369
+ <pre class="doc-excerpt">Textarea
370
+
371
+ sonic-textarea wraps a native with a label, a description and Concorde sizes. Native attributes (rows, cols, maxlength, wrap, …) are passed through. Bind the value to a store with formDataProvider and name, set on the field or on an ancestor.
372
+
373
+ Basic example
374
+
375
+ Rows and resize
376
+
377
+ rows sets the visible height. With no resize, the user can resize vertically only.
378
+
379
+ Size and status
380
+
381
+ With no size, the textarea uses md. status colors the field; it defaults to default.
382
+
383
+ Validation
384
+
385
+ required, minlength and maxlength are checked by the browser. Feedback styles apply once the field is touched (after blur).
386
+
387
+ API reference
388
+
389
+ | Attribute | Values | Description |
390
+ |----------|---------|-------------|
391
+ | name | string | Key in the form store (dot notation allowed) |
392
+ | value | string | Initial value |
393
+ | formDataProvider | string | Store id; inherited from the closest ancestor |
394
+ | label | string (HTML) | Label; or use the label slot |
395
+ | description | string (HTML) | Help text under the field; or use the description slot |
396
+ | placeholder | string | Native placeholder |
397
+ | size | 2xs … 2xl (default md) | Typography and padding |
398
+ | status | default · success · error · warning · info | Field color |
399
+ </pre>
400
+ </section>
401
+ </article>
402
+ </main>
403
+ </body>
404
+ </html>