@supersoniks/concorde 5.1.2 → 5.1.3-immutable.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. package/.agents/skills/concorde-docs/SKILL.md +1 -1
  2. package/.claude/skills +1 -0
  3. package/.github/workflows/ci.yml +21 -0
  4. package/.github-export-ignore +30 -0
  5. package/CONTRIBUTING.md +59 -0
  6. package/DEV.md +54 -0
  7. package/LICENSE +21 -0
  8. package/OPEN_SOURCE_CHECKPOINT.md +133 -0
  9. package/README.md +1 -1
  10. package/ai/README.md +29 -41
  11. package/ai/skills/concorde/SKILL.md +54 -324
  12. package/ai/skills/concorde/rules/composition.md +32 -0
  13. package/ai/skills/concorde/rules/data.md +47 -0
  14. package/ai/skills/concorde/rules/http.md +25 -0
  15. package/ai/skills/concorde/rules/lists-forms.md +35 -0
  16. package/ai/skills/concorde/rules/styling.md +46 -0
  17. package/ai/skills/concorde/rules/troubleshooting.md +45 -0
  18. package/build-infos.json +1 -1
  19. package/concorde-core.bundle.js +177 -177
  20. package/concorde-core.es.js +4993 -4833
  21. package/custom-elements-manifest.public.config.mjs +8 -0
  22. package/{.tmp-cem/custom-elements.json → custom-elements.json} +11722 -8868
  23. package/dist/concorde-core.bundle.js +177 -177
  24. package/dist/concorde-core.es.js +4993 -4833
  25. package/dist/docs-mock-api-sw.js +58 -223
  26. package/dist/docs-mock-api-sw.js.map +4 -4
  27. package/dist/img/og-concorde.jpg +0 -0
  28. package/dist/robots.txt +11 -10
  29. package/docs/assets/index-CD4WyL6o.css +1 -0
  30. package/docs/assets/index-D_alEsng.js +12122 -0
  31. package/docs/crawl/core/components/functional/date/date.html +190 -0
  32. package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
  33. package/docs/crawl/core/components/functional/if/if.html +27 -0
  34. package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
  35. package/docs/crawl/core/components/functional/list/list.html +70 -0
  36. package/docs/crawl/core/components/functional/mix/mix.html +45 -0
  37. package/docs/crawl/core/components/functional/queue/queue.html +96 -0
  38. package/docs/crawl/core/components/functional/router/router.html +106 -0
  39. package/docs/{core → crawl/core}/components/functional/sdui/sdui-extension-points.html +8 -9
  40. package/docs/crawl/core/components/functional/sdui/sdui.html +368 -0
  41. package/docs/crawl/core/components/functional/states/states.html +66 -0
  42. package/docs/crawl/core/components/functional/submit/submit.html +160 -0
  43. package/docs/{core → crawl/core}/components/functional/subscriber/subscriber.html +5 -6
  44. package/docs/crawl/core/components/functional/value/value.html +51 -0
  45. package/docs/{core → crawl/core}/components/ui/alert/alert.html +63 -53
  46. package/docs/{core → crawl/core}/components/ui/alert-messages/alert-messages.html +5 -6
  47. package/docs/{core → crawl/core}/components/ui/badge/badge.html +33 -33
  48. package/docs/crawl/core/components/ui/button/button.html +150 -0
  49. package/docs/crawl/core/components/ui/captcha/captcha.html +112 -0
  50. package/docs/{core → crawl/core}/components/ui/card/card.html +11 -12
  51. package/docs/{core → crawl/core}/components/ui/divider/divider.html +14 -14
  52. package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
  53. package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +266 -0
  54. package/docs/{core → crawl/core}/components/ui/form/form-actions/form-actions.html +23 -23
  55. package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +121 -0
  56. package/docs/crawl/core/components/ui/form/input/input.html +109 -0
  57. package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
  58. package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
  59. package/docs/crawl/core/components/ui/form/select/select.html +73 -0
  60. package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
  61. package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
  62. package/docs/crawl/core/components/ui/group/group.html +104 -0
  63. package/docs/{core → crawl/core}/components/ui/icon/icon.html +9 -10
  64. package/docs/crawl/core/components/ui/image/image.html +298 -0
  65. package/docs/{core → crawl/core}/components/ui/link/link.html +11 -12
  66. package/docs/crawl/core/components/ui/loader/loader.html +124 -0
  67. package/docs/{core → crawl/core}/components/ui/menu/menu.html +33 -34
  68. package/docs/crawl/core/components/ui/modal/modal.html +342 -0
  69. package/docs/crawl/core/components/ui/pop/pop.html +296 -0
  70. package/docs/{core → crawl/core}/components/ui/progress/progress.html +7 -8
  71. package/docs/crawl/core/components/ui/table/table.html +545 -0
  72. package/docs/crawl/core/components/ui/theme/theme.html +131 -0
  73. package/docs/crawl/core/components/ui/toast/toast.html +233 -0
  74. package/docs/crawl/core/components/ui/tooltip/tooltip.html +140 -0
  75. package/docs/{docs/getting-started → crawl/docs/_core-concept}/dataFlow.html +29 -26
  76. package/docs/crawl/docs/_core-concept/overview.html +66 -0
  77. package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
  78. package/docs/crawl/docs/_decorators/ancestor-attribute.html +117 -0
  79. package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
  80. package/docs/crawl/docs/_decorators/bind.html +141 -0
  81. package/docs/crawl/docs/_decorators/get.html +149 -0
  82. package/docs/crawl/docs/_decorators/handle.html +165 -0
  83. package/docs/crawl/docs/_decorators/on-assign.html +355 -0
  84. package/docs/crawl/docs/_decorators/patch.html +78 -0
  85. package/docs/crawl/docs/_decorators/post.html +139 -0
  86. package/docs/crawl/docs/_decorators/publish.html +61 -0
  87. package/docs/crawl/docs/_decorators/put.html +78 -0
  88. package/docs/crawl/docs/_decorators/subscribe.html +109 -0
  89. package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
  90. package/docs/crawl/docs/_directives/sub.html +93 -0
  91. package/docs/{docs/getting-started → crawl/docs/_getting-started}/ai-agents.html +11 -12
  92. package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
  93. package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
  94. package/docs/{docs/getting-started → crawl/docs/_getting-started}/create-a-component.html +14 -11
  95. package/docs/{docs/getting-started → crawl/docs/_getting-started}/my-first-component.html +22 -13
  96. package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
  97. package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
  98. package/docs/crawl/docs/_getting-started/start.html +76 -0
  99. package/docs/{docs/getting-started → crawl/docs/_getting-started}/theming.html +9 -10
  100. package/docs/{docs/misc → crawl/docs/_misc}/api-configuration.html +18 -18
  101. package/docs/{docs/misc → crawl/docs/_misc}/dataProviderKey.html +11 -12
  102. package/docs/{docs/misc → crawl/docs/_misc}/docs-mock-api.html +28 -25
  103. package/docs/{docs/misc → crawl/docs/_misc}/dynamic-path.html +15 -16
  104. package/docs/{docs/misc → crawl/docs/_misc}/endpoint.html +15 -16
  105. package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
  106. package/docs/{docs/misc → crawl/docs/_misc}/html-integration.html +15 -12
  107. package/docs/crawl/hubs/decorators.html +547 -0
  108. package/docs/crawl/hubs/form-components.html +381 -0
  109. package/docs/crawl/hubs/remote-data.html +452 -0
  110. package/docs/crawl/index.html +103 -0
  111. package/docs/docs-mock-api-sw.js +223 -58
  112. package/docs/docs-mock-api-sw.js.map +4 -4
  113. package/docs/index.html +68 -95
  114. package/docs/llms-full.txt +3610 -2231
  115. package/docs/llms.txt +86 -94
  116. package/docs/robots.txt +10 -11
  117. package/docs/sitemap.xml +84 -78
  118. package/docs/src/core/components/functional/date/date.md +231 -91
  119. package/docs/src/core/components/functional/fetch/fetch.md +83 -66
  120. package/docs/src/core/components/functional/if/if.md +3 -28
  121. package/docs/src/core/components/functional/jsonata/jsonata.md +37 -42
  122. package/docs/src/core/components/functional/list/list.md +43 -99
  123. package/docs/src/core/components/functional/mix/mix.md +26 -31
  124. package/docs/src/core/components/functional/queue/queue.md +61 -40
  125. package/docs/src/core/components/functional/router/router.md +65 -64
  126. package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  127. package/docs/src/core/components/functional/sdui/component-catalog.json +1 -1
  128. package/docs/src/core/components/functional/sdui/example.json +86 -19
  129. package/docs/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
  130. package/docs/src/core/components/functional/sdui/sdui.md +358 -187
  131. package/docs/src/core/components/functional/states/states.md +61 -86
  132. package/docs/src/core/components/functional/submit/submit.md +72 -64
  133. package/docs/src/core/components/functional/value/value.md +22 -34
  134. package/docs/src/core/components/ui/alert/alert.md +58 -48
  135. package/docs/src/core/components/ui/badge/badge.md +34 -27
  136. package/docs/src/core/components/ui/button/button.md +106 -139
  137. package/docs/src/core/components/ui/captcha/captcha.md +32 -17
  138. package/docs/src/core/components/ui/card/card.md +6 -6
  139. package/docs/src/core/components/ui/divider/divider.md +11 -8
  140. package/docs/src/core/components/ui/form/checkbox/checkbox.md +42 -90
  141. package/docs/src/core/components/ui/form/fieldset/fieldset.md +75 -31
  142. package/docs/src/core/components/ui/form/form-actions/form-actions.md +16 -14
  143. package/docs/src/core/components/ui/form/form-layout/form-layout.md +29 -19
  144. package/docs/src/core/components/ui/form/input/input.md +95 -95
  145. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +29 -0
  146. package/docs/src/core/components/ui/form/radio/radio.md +34 -55
  147. package/docs/src/core/components/ui/form/select/select.md +45 -60
  148. package/docs/src/core/components/ui/form/switch/switch.md +34 -57
  149. package/docs/src/core/components/ui/form/textarea/textarea.md +38 -55
  150. package/docs/src/core/components/ui/group/group.md +33 -35
  151. package/docs/src/core/components/ui/icon/icon.md +4 -4
  152. package/docs/src/core/components/ui/image/image.md +107 -41
  153. package/docs/src/core/components/ui/link/link.md +6 -6
  154. package/docs/src/core/components/ui/loader/loader.md +55 -30
  155. package/docs/src/core/components/ui/menu/menu.md +27 -27
  156. package/docs/src/core/components/ui/modal/modal.md +96 -72
  157. package/docs/src/core/components/ui/pop/pop.md +158 -80
  158. package/docs/src/core/components/ui/progress/progress.md +2 -2
  159. package/docs/src/core/components/ui/table/table.md +255 -91
  160. package/docs/src/core/components/ui/theme/theme.md +36 -11
  161. package/docs/src/core/components/ui/toast/toast.md +117 -48
  162. package/docs/src/core/components/ui/tooltip/tooltip.md +62 -27
  163. package/docs/{docs/getting-started → src/docs/_core-concept}/dataFlow.md +18 -17
  164. package/docs/src/docs/_core-concept/overview.md +57 -0
  165. package/docs/src/docs/_core-concept/subscriber.md +75 -0
  166. package/docs/src/docs/_decorators/ancestor-attribute.md +128 -0
  167. package/docs/src/docs/_decorators/auto-subscribe.md +202 -0
  168. package/docs/src/docs/_decorators/bind.md +167 -0
  169. package/docs/src/docs/_decorators/get.md +162 -0
  170. package/docs/src/docs/_decorators/handle.md +175 -0
  171. package/docs/src/docs/_decorators/on-assign.md +390 -0
  172. package/docs/src/docs/_decorators/patch.md +70 -0
  173. package/docs/src/docs/_decorators/post.md +146 -0
  174. package/docs/src/docs/_decorators/publish.md +55 -0
  175. package/docs/src/docs/_decorators/put.md +70 -0
  176. package/docs/src/docs/_decorators/subscribe.md +100 -0
  177. package/docs/src/docs/_decorators/wait-for-ancestors.md +163 -0
  178. package/docs/src/docs/_directives/sub.md +91 -0
  179. package/docs/src/docs/{getting-started → _getting-started}/ai-agents.md +3 -3
  180. package/docs/src/docs/_getting-started/concorde-manual-install.md +133 -0
  181. package/docs/src/docs/_getting-started/concorde-outside.md +33 -0
  182. package/docs/{docs/getting-started → src/docs/_getting-started}/create-a-component.md +6 -3
  183. package/docs/src/docs/{getting-started → _getting-started}/my-first-component.md +14 -5
  184. package/docs/src/docs/_getting-started/my-first-subscriber.md +120 -0
  185. package/docs/src/docs/_getting-started/pubsub.md +37 -0
  186. package/docs/src/docs/{getting-started → _getting-started}/start.md +13 -1
  187. package/docs/src/docs/{getting-started → _getting-started}/theming.md +2 -2
  188. package/docs/src/docs/{misc → _misc}/api-configuration.md +12 -10
  189. package/docs/src/docs/{misc → _misc}/dataProviderKey.md +4 -4
  190. package/docs/{docs/misc → src/docs/_misc}/docs-mock-api.md +13 -12
  191. package/docs/{docs/misc → src/docs/_misc}/dynamic-path.md +8 -8
  192. package/docs/{docs/misc → src/docs/_misc}/endpoint.md +8 -8
  193. package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
  194. package/docs/{docs/misc → src/docs/_misc}/html-integration.md +5 -4
  195. package/docs/src/docs/search/docs-search.json +4375 -2420
  196. package/docs/src/tsconfig.declarations.json +22 -0
  197. package/docs/src/tsconfig.emit.json +23 -0
  198. package/docs/src/tsconfig.json +2 -23
  199. package/gitlab/job_github_mirror.sh +39 -0
  200. package/index.html +89 -0
  201. package/package.json +22 -4
  202. package/public/img/og-concorde.jpg +0 -0
  203. package/scripts/ai-init.mjs +104 -379
  204. package/scripts/ai-init.test.mjs +81 -239
  205. package/scripts/docs-markdown-vite-plugin.ts +11 -5
  206. package/scripts/docs-public-url.mjs +6 -0
  207. package/scripts/docs.htaccess +7 -0
  208. package/scripts/generate-cem.mjs +244 -0
  209. package/scripts/generate-cem.test.mjs +122 -0
  210. package/scripts/generate-crawl-docs.mjs +29 -5
  211. package/scripts/generate-sdui-catalog.mjs +11 -10
  212. package/scripts/github-export.mjs +150 -0
  213. package/scripts/post-build-docs.js +3 -0
  214. package/scripts/post-build.mjs +0 -0
  215. package/scripts/pre-publish.mjs +2 -1
  216. package/scripts/site-pages.mjs +212 -0
  217. package/scripts/site-pages.test.mjs +116 -0
  218. package/site-pages/about.md +22 -0
  219. package/site-pages/privacy.md +32 -0
  220. package/src/core/components/functional/date/date.md +1 -1
  221. package/src/core/components/functional/example/example.ts +3 -1
  222. package/src/core/components/functional/if/if.ts +0 -0
  223. package/src/core/components/functional/list/list.demo.ts +0 -0
  224. package/src/core/components/functional/list/list.md +6 -2
  225. package/src/core/components/functional/list/list.ts +17 -4
  226. package/src/core/components/functional/mix/mix.md +0 -0
  227. package/src/core/components/functional/router/router.demo.ts +0 -0
  228. package/src/core/components/functional/router/router.ts +0 -0
  229. package/src/core/components/functional/sdui/SDUIDescriptorTransformer.ts +0 -0
  230. package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  231. package/src/core/components/functional/sdui/component-catalog.json +2 -2
  232. package/src/core/components/functional/sdui/example.json +0 -0
  233. package/src/core/components/functional/sdui/sdui-immutable.spec.ts +74 -0
  234. package/src/core/components/functional/sdui/sdui.ts +33 -8
  235. package/src/core/components/functional/sdui/types.ts +0 -0
  236. package/src/core/components/functional/states/states.ts +0 -0
  237. package/src/core/components/functional/submit/submit.spec.ts +60 -0
  238. package/src/core/components/functional/submit/submit.ts +6 -3
  239. package/src/core/components/functional/subscriber/subscriber.ts +0 -0
  240. package/src/core/components/functional/value/value.md +0 -0
  241. package/src/core/components/functional/value/value.ts +0 -0
  242. package/src/core/components/ui/_css/size.ts +0 -0
  243. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  244. package/src/core/components/ui/card/card.md +1 -1
  245. package/src/core/components/ui/form/input/input.md +19 -1
  246. package/src/core/components/ui/form/input/input.ts +8 -2
  247. package/src/core/components/ui/form/radio/radio.md +14 -0
  248. package/src/core/components/ui/image/image.md +17 -17
  249. package/src/core/components/ui/modal/modal.md +2 -2
  250. package/src/core/decorators/subscriber/bind.ts +9 -14
  251. package/src/core/decorators/subscriber/subscribe.ts +15 -9
  252. package/src/core/decorators/subscriber/subscribe.type-test.ts +14 -5
  253. package/src/core/mixins/Subscriber.ts +0 -0
  254. package/src/core/utils/DataBindObserver.ts +0 -0
  255. package/src/core/utils/Objects.ts +0 -0
  256. package/src/core/utils/PublisherProxy.ts +166 -125
  257. package/src/core/utils/deepReadonly.spec.ts +66 -0
  258. package/src/core/utils/deepReadonly.ts +71 -0
  259. package/src/core/utils/immutableValue.spec.ts +54 -0
  260. package/src/core/utils/immutableValue.ts +102 -0
  261. package/src/core/utils/nestedDotForm.spec.ts +88 -0
  262. package/src/core/utils/publisherImmutable.spec.ts +76 -0
  263. package/src/core/utils/route.ts +0 -0
  264. package/src/core/utils/strictGet.spec.ts +61 -0
  265. package/src/core/utils/strictGet.ts +102 -0
  266. package/src/css.d.ts +19 -0
  267. package/src/docs/components/docs-demo-sources.ts +3 -3
  268. package/src/docs/decorators/bind.md +23 -24
  269. package/src/docs/docs-location.spec.ts +10 -0
  270. package/src/docs/docs-location.ts +10 -0
  271. package/src/docs/example/decorators-demo-bind-demos.ts +11 -28
  272. package/src/docs/example/docs-toggle-demos.ts +1 -1
  273. package/src/docs/example/users.ts +0 -0
  274. package/src/docs/getting-started/ai-agents.md +29 -55
  275. package/src/docs/getting-started/dataFlow.md +2 -2
  276. package/src/docs/home/home.ts +3 -1
  277. package/src/docs/misc/publisher-get-immutability-docs-crawl.json +902 -0
  278. package/src/docs/misc/publisher-get-immutability-docs-recheck.json +13 -0
  279. package/src/docs/misc/publisher-get-immutability-study.md +229 -0
  280. package/src/docs/navigation/navigation.ts +5 -1
  281. package/src/docs/search/docs-search.json +358 -58
  282. package/src/docs/search/markdown-renderer.ts +6 -1
  283. package/src/docs/tailwind/css/docs/content.css +4 -5
  284. package/src/tsconfig.declarations.json +22 -0
  285. package/src/tsconfig.emit.json +23 -0
  286. package/src/tsconfig.json +53 -5
  287. package/src/tsconfig.tsbuildinfo +1 -1
  288. package/.taste-skill/after/desktop-fold.jpg +0 -0
  289. package/.taste-skill/after/desktop-page-01.jpg +0 -0
  290. package/.taste-skill/after/desktop-page-02.jpg +0 -0
  291. package/.taste-skill/after/desktop-page-03.jpg +0 -0
  292. package/.taste-skill/after/mobile-fold.jpg +0 -0
  293. package/.taste-skill/after/mobile-page-01.jpg +0 -0
  294. package/.taste-skill/after/report.json +0 -4103
  295. package/.taste-skill/after/tablet-fold.jpg +0 -0
  296. package/.taste-skill/after/tablet-page-01.jpg +0 -0
  297. package/.taste-skill/after/tablet-page-02.jpg +0 -0
  298. package/.taste-skill/before/desktop-fold.jpg +0 -0
  299. package/.taste-skill/before/desktop-page-01.jpg +0 -0
  300. package/.taste-skill/before/desktop-page-02.jpg +0 -0
  301. package/.taste-skill/before/mobile-fold.jpg +0 -0
  302. package/.taste-skill/before/mobile-page-01.jpg +0 -0
  303. package/.taste-skill/before/report.json +0 -2556
  304. package/.taste-skill/before/tablet-fold.jpg +0 -0
  305. package/.taste-skill/before/tablet-page-01.jpg +0 -0
  306. package/.taste-skill/direction.json +0 -510
  307. package/.taste-skill/notes.md +0 -84
  308. package/.taste-skill/prod/desktop-fold.jpg +0 -0
  309. package/.taste-skill/prod/desktop-page-01.jpg +0 -0
  310. package/.taste-skill/prod/desktop-page-02.jpg +0 -0
  311. package/.taste-skill/prod/desktop-page-03.jpg +0 -0
  312. package/.taste-skill/prod/mobile-fold.jpg +0 -0
  313. package/.taste-skill/prod/mobile-page-01.jpg +0 -0
  314. package/.taste-skill/prod/mobile-page-02.jpg +0 -0
  315. package/.taste-skill/prod/report.json +0 -1973
  316. package/.taste-skill/prod/tablet-fold.jpg +0 -0
  317. package/.taste-skill/prod/tablet-page-01.jpg +0 -0
  318. package/.taste-skill/prod/tablet-page-02.jpg +0 -0
  319. package/AUDIT.md +0 -228
  320. package/PLAN-AMELIORATION.md +0 -220
  321. package/PLAN-DOCS-AGENTS.md +0 -80
  322. package/ai/AGENTS.md +0 -56
  323. package/ai/cursor/rules/concorde-menu.mdc +0 -15
  324. package/ai/cursor/rules/concorde-scope.mdc +0 -14
  325. package/ai/cursor/rules/concorde-theme.mdc +0 -13
  326. package/ai/cursor/rules/concorde.mdc +0 -66
  327. package/ai/jetbrains/rules/concorde.md +0 -53
  328. package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
  329. package/ai/skills/concorde-imports/SKILL.md +0 -78
  330. package/ai/skills/concorde-menu/SKILL.md +0 -74
  331. package/ai/skills/concorde-scope/SKILL.md +0 -70
  332. package/ai/skills/concorde-theme/SKILL.md +0 -57
  333. package/docs/.htaccess +0 -75
  334. package/docs/404.html +0 -15
  335. package/docs/404.md +0 -5
  336. package/docs/assets/index-BgG6FFPt.js +0 -11765
  337. package/docs/assets/index-x89XINSG.css +0 -1
  338. package/docs/core/components/functional/date/date.html +0 -211
  339. package/docs/core/components/functional/date/date.md +0 -150
  340. package/docs/core/components/functional/fetch/fetch.html +0 -180
  341. package/docs/core/components/functional/fetch/fetch.md +0 -108
  342. package/docs/core/components/functional/if/if.html +0 -65
  343. package/docs/core/components/functional/if/if.md +0 -34
  344. package/docs/core/components/functional/jsonata/jsonata.html +0 -110
  345. package/docs/core/components/functional/jsonata/jsonata.md +0 -61
  346. package/docs/core/components/functional/list/list.html +0 -198
  347. package/docs/core/components/functional/list/list.md +0 -121
  348. package/docs/core/components/functional/mix/mix.html +0 -78
  349. package/docs/core/components/functional/mix/mix.md +0 -46
  350. package/docs/core/components/functional/queue/queue.html +0 -155
  351. package/docs/core/components/functional/queue/queue.md +0 -51
  352. package/docs/core/components/functional/router/router.html +0 -154
  353. package/docs/core/components/functional/router/router.md +0 -93
  354. package/docs/core/components/functional/sdui/sdui-extension-points.md +0 -94
  355. package/docs/core/components/functional/sdui/sdui.html +0 -397
  356. package/docs/core/components/functional/sdui/sdui.md +0 -307
  357. package/docs/core/components/functional/states/states.html +0 -141
  358. package/docs/core/components/functional/states/states.md +0 -112
  359. package/docs/core/components/functional/submit/submit.html +0 -178
  360. package/docs/core/components/functional/submit/submit.md +0 -106
  361. package/docs/core/components/functional/subscriber/subscriber.md +0 -91
  362. package/docs/core/components/functional/translation/translation.html +0 -60
  363. package/docs/core/components/functional/translation/translation.md +0 -38
  364. package/docs/core/components/functional/value/value.html +0 -81
  365. package/docs/core/components/functional/value/value.md +0 -47
  366. package/docs/core/components/ui/alert/alert.md +0 -186
  367. package/docs/core/components/ui/alert-messages/alert-messages.md +0 -85
  368. package/docs/core/components/ui/badge/badge.md +0 -181
  369. package/docs/core/components/ui/button/button.html +0 -309
  370. package/docs/core/components/ui/button/button.md +0 -216
  371. package/docs/core/components/ui/captcha/captcha.html +0 -80
  372. package/docs/core/components/ui/captcha/captcha.md +0 -56
  373. package/docs/core/components/ui/card/card.md +0 -215
  374. package/docs/core/components/ui/divider/divider.md +0 -126
  375. package/docs/core/components/ui/form/checkbox/checkbox.html +0 -200
  376. package/docs/core/components/ui/form/checkbox/checkbox.md +0 -125
  377. package/docs/core/components/ui/form/fieldset/fieldset.html +0 -238
  378. package/docs/core/components/ui/form/fieldset/fieldset.md +0 -161
  379. package/docs/core/components/ui/form/form-actions/form-actions.md +0 -98
  380. package/docs/core/components/ui/form/form-layout/form-layout.html +0 -115
  381. package/docs/core/components/ui/form/form-layout/form-layout.md +0 -109
  382. package/docs/core/components/ui/form/input/input.html +0 -235
  383. package/docs/core/components/ui/form/input/input.md +0 -142
  384. package/docs/core/components/ui/form/radio/radio.html +0 -144
  385. package/docs/core/components/ui/form/radio/radio.md +0 -78
  386. package/docs/core/components/ui/form/select/select.html +0 -178
  387. package/docs/core/components/ui/form/select/select.md +0 -86
  388. package/docs/core/components/ui/form/switch/switch.html +0 -146
  389. package/docs/core/components/ui/form/switch/switch.md +0 -80
  390. package/docs/core/components/ui/form/textarea/textarea.html +0 -162
  391. package/docs/core/components/ui/form/textarea/textarea.md +0 -82
  392. package/docs/core/components/ui/group/group.html +0 -113
  393. package/docs/core/components/ui/group/group.md +0 -77
  394. package/docs/core/components/ui/icon/icon.md +0 -214
  395. package/docs/core/components/ui/image/image.html +0 -194
  396. package/docs/core/components/ui/image/image.md +0 -167
  397. package/docs/core/components/ui/link/link.md +0 -81
  398. package/docs/core/components/ui/loader/loader.html +0 -114
  399. package/docs/core/components/ui/loader/loader.md +0 -87
  400. package/docs/core/components/ui/menu/menu.md +0 -370
  401. package/docs/core/components/ui/modal/modal.html +0 -324
  402. package/docs/core/components/ui/modal/modal.md +0 -211
  403. package/docs/core/components/ui/pop/pop.html +0 -250
  404. package/docs/core/components/ui/pop/pop.md +0 -216
  405. package/docs/core/components/ui/progress/progress.md +0 -109
  406. package/docs/core/components/ui/table/table.html +0 -333
  407. package/docs/core/components/ui/table/table.md +0 -267
  408. package/docs/core/components/ui/theme/theme.html +0 -116
  409. package/docs/core/components/ui/theme/theme.md +0 -97
  410. package/docs/core/components/ui/toast/toast.html +0 -185
  411. package/docs/core/components/ui/toast/toast.md +0 -147
  412. package/docs/core/components/ui/tooltip/tooltip.html +0 -112
  413. package/docs/core/components/ui/tooltip/tooltip.md +0 -89
  414. package/docs/docs/decorators/ancestor-attribute.html +0 -71
  415. package/docs/docs/decorators/ancestor-attribute.md +0 -59
  416. package/docs/docs/decorators/auto-subscribe.html +0 -61
  417. package/docs/docs/decorators/auto-subscribe.md +0 -40
  418. package/docs/docs/decorators/bind.html +0 -86
  419. package/docs/docs/decorators/bind.md +0 -77
  420. package/docs/docs/decorators/get.html +0 -166
  421. package/docs/docs/decorators/get.md +0 -160
  422. package/docs/docs/decorators/handle.html +0 -139
  423. package/docs/docs/decorators/handle.md +0 -119
  424. package/docs/docs/decorators/on-assign.html +0 -72
  425. package/docs/docs/decorators/on-assign.md +0 -63
  426. package/docs/docs/decorators/patch.html +0 -76
  427. package/docs/docs/decorators/patch.md +0 -44
  428. package/docs/docs/decorators/post.html +0 -150
  429. package/docs/docs/decorators/post.md +0 -134
  430. package/docs/docs/decorators/publish.html +0 -74
  431. package/docs/docs/decorators/publish.md +0 -56
  432. package/docs/docs/decorators/put.html +0 -83
  433. package/docs/docs/decorators/put.md +0 -51
  434. package/docs/docs/decorators/subscribe.html +0 -91
  435. package/docs/docs/decorators/subscribe.md +0 -87
  436. package/docs/docs/decorators/wait-for-ancestors.html +0 -82
  437. package/docs/docs/decorators/wait-for-ancestors.md +0 -76
  438. package/docs/docs/directives/sub.html +0 -79
  439. package/docs/docs/directives/sub.md +0 -75
  440. package/docs/docs/directives/t.html +0 -91
  441. package/docs/docs/directives/t.md +0 -73
  442. package/docs/docs/getting-started/ai-agents.md +0 -76
  443. package/docs/docs/getting-started/components.html +0 -27
  444. package/docs/docs/getting-started/components.md +0 -5
  445. package/docs/docs/getting-started/installation.html +0 -69
  446. package/docs/docs/getting-started/installation.md +0 -36
  447. package/docs/docs/getting-started/my-first-component.md +0 -227
  448. package/docs/docs/getting-started/start.html +0 -47
  449. package/docs/docs/getting-started/start.md +0 -35
  450. package/docs/docs/getting-started/theming.md +0 -253
  451. package/docs/docs/index.html +0 -99
  452. package/docs/docs/misc/api-configuration.md +0 -79
  453. package/docs/docs/misc/dataProviderKey.md +0 -168
  454. package/docs/hubs/decorators.html +0 -443
  455. package/docs/hubs/form-components.html +0 -404
  456. package/docs/hubs/remote-data.html +0 -371
  457. package/docs/img/archive/concorde-001-2cv.webp +0 -0
  458. package/docs/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
  459. package/docs/img/archive/concorde-red-arrows-2002.webm +0 -0
  460. package/docs/img/archive/credits.json +0 -28
  461. package/docs/index.md +0 -22
  462. package/docs/src/core/components/functional/translation/translation.md +0 -38
  463. package/docs/src/docs/decorators/ancestor-attribute.md +0 -59
  464. package/docs/src/docs/decorators/auto-subscribe.md +0 -40
  465. package/docs/src/docs/decorators/bind.md +0 -77
  466. package/docs/src/docs/decorators/get.md +0 -160
  467. package/docs/src/docs/decorators/handle.md +0 -119
  468. package/docs/src/docs/decorators/on-assign.md +0 -63
  469. package/docs/src/docs/decorators/patch.md +0 -44
  470. package/docs/src/docs/decorators/post.md +0 -134
  471. package/docs/src/docs/decorators/publish.md +0 -56
  472. package/docs/src/docs/decorators/put.md +0 -51
  473. package/docs/src/docs/decorators/subscribe.md +0 -87
  474. package/docs/src/docs/decorators/wait-for-ancestors.md +0 -76
  475. package/docs/src/docs/directives/sub.md +0 -75
  476. package/docs/src/docs/directives/t.md +0 -73
  477. package/docs/src/docs/getting-started/components.md +0 -5
  478. package/docs/src/docs/getting-started/create-a-component.md +0 -136
  479. package/docs/src/docs/getting-started/dataFlow.md +0 -87
  480. package/docs/src/docs/getting-started/installation.md +0 -36
  481. package/docs/src/docs/misc/docs-mock-api.md +0 -62
  482. package/docs/src/docs/misc/dynamic-path.md +0 -71
  483. package/docs/src/docs/misc/endpoint.md +0 -45
  484. package/docs/src/docs/misc/html-integration.md +0 -14
  485. /package/{docs → dist}/img/concorde/plane_01.jpg +0 -0
  486. /package/{docs → dist}/img/concorde/plane_02.jpg +0 -0
  487. /package/{docs → dist}/img/concorde/plane_03.jpg +0 -0
  488. /package/{docs → dist}/img/concorde/plane_04.jpg +0 -0
  489. /package/{docs → dist}/img/concorde/plane_05.jpg +0 -0
  490. /package/{docs → dist}/img/concorde/plane_06.jpg +0 -0
  491. /package/{docs → dist}/img/concorde/plane_07.jpg +0 -0
  492. /package/{docs → dist}/img/concorde/plane_08.jpg +0 -0
  493. /package/{docs → dist}/img/concorde/plane_09.jpg +0 -0
  494. /package/{docs → dist}/img/concorde/plane_10.jpg +0 -0
  495. /package/{docs → dist}/img/concorde/plane_11.jpg +0 -0
  496. /package/{docs → dist}/img/concorde/plane_12.jpg +0 -0
  497. /package/{docs → dist}/img/concorde/plane_13.jpg +0 -0
@@ -1,333 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en" data-doc-url="https://concorde.supersoniks.org/core/components/ui/table" data-doc-id="core/components/ui/table/table">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Table — Concorde by Supersoniks</title>
7
- <meta name="description" content="sonic-table lays out tabular data with sonic-tr · sonic-th · sonic-td children, optionally grouped in sonic-thead · sonic-tbody · sonic-tfoot. It scrolls horizontally when columns overflow; set minWid">
8
- <meta name="keywords" content="Concorde, supersoniks, core/components/ui/table/table, table, Table, UI component, sonic-table, web component, sonic-tr, sonic-th, sonic-td, sonic-thead, sonic-tbody, sonic-tfoot, minWidth, sonic-list, bordered">
9
- <meta name="concorde-doc-id" content="core/components/ui/table/table">
10
- <link rel="canonical" href="https://concorde.supersoniks.org/core/components/ui/table">
11
- <link rel="alternate" type="text/markdown" href="https://concorde.supersoniks.org/core/components/ui/table.md">
12
- </head>
13
- <body>
14
- <header>
15
- <p><a href="/docs/index.html">Concorde documentation</a> · <a href="https://concorde.supersoniks.org/core/components/ui/table">same URL (interactive)</a> · <a href="/llms.txt">llms.txt</a></p>
16
- </header>
17
- <main>
18
- <article>
19
- <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Table</strong>. sonic-table lays out tabular data with sonic-tr · sonic-th · sonic-td children, optionally grouped in sonic-thead · sonic-tbody · sonic-tfoot. It scrolls horizontally when columns overflow; set minWid <span>Doc ID: <code>core/components/ui/table/table</code>. Keywords: Concorde, supersoniks, core/components/ui/table/table, table, Table, UI component, sonic-table, web component, sonic-tr, sonic-th, sonic-td, sonic-thead, sonic-tbody, sonic-tfoot, minWidth, sonic-list, bordered. URL: <a href="https://concorde.supersoniks.org/core/components/ui/table">https://concorde.supersoniks.org/core/components/ui/table</a>.</span></p>
20
- <h1 id="table">Table</h1>
21
- <p><strong><code>sonic-table</code></strong> lays out tabular data with <strong><code>sonic-tr</code></strong> · <strong><code>sonic-th</code></strong> · <strong><code>sonic-td</code></strong> children, optionally grouped in <strong><code>sonic-thead</code></strong> · <strong><code>sonic-tbody</code></strong> · <strong><code>sonic-tfoot</code></strong>. It scrolls horizontally when columns overflow; set <strong><code>minWidth</code></strong> on wide cells to keep them readable. Render fetched rows with <strong><code>sonic-list</code></strong>.</p>
22
- <h2 id="basic-example">Basic example</h2>
23
- <p><strong><code>bordered</code></strong> adds an outer frame and row dividers. <strong><code>sonic-tbody</code></strong> stripes and highlights its rows on hover.</p>
24
- <pre><code>&lt;sonic-table bordered&gt;
25
- &lt;sonic-thead&gt;
26
- &lt;sonic-tr&gt;
27
- &lt;sonic-th&gt;Flight&lt;/sonic-th&gt;
28
- &lt;sonic-th&gt;Destination&lt;/sonic-th&gt;
29
- &lt;sonic-th&gt;Status&lt;/sonic-th&gt;
30
- &lt;/sonic-tr&gt;
31
- &lt;/sonic-thead&gt;
32
- &lt;sonic-tbody&gt;
33
- &lt;sonic-tr&gt;
34
- &lt;sonic-td&gt;CN 001&lt;/sonic-td&gt;
35
- &lt;sonic-td&gt;New York JFK&lt;/sonic-td&gt;
36
- &lt;sonic-td&gt;Boarding&lt;/sonic-td&gt;
37
- &lt;/sonic-tr&gt;
38
- &lt;sonic-tr&gt;
39
- &lt;sonic-td&gt;CN 014&lt;/sonic-td&gt;
40
- &lt;sonic-td&gt;London LHR&lt;/sonic-td&gt;
41
- &lt;sonic-td&gt;On time&lt;/sonic-td&gt;
42
- &lt;/sonic-tr&gt;
43
- &lt;sonic-tr&gt;
44
- &lt;sonic-td&gt;CN 102&lt;/sonic-td&gt;
45
- &lt;sonic-td&gt;Rio de Janeiro GIG&lt;/sonic-td&gt;
46
- &lt;sonic-td&gt;Delayed&lt;/sonic-td&gt;
47
- &lt;/sonic-tr&gt;
48
- &lt;/sonic-tbody&gt;
49
- &lt;/sonic-table&gt;
50
- </code></pre>
51
- <h2 id="list-fetch-and-max-height">List, fetch and max height</h2>
52
- <p>Put a <strong><code>sonic-list</code></strong> with <code>displayContents</code> inside <strong><code>sonic-tbody</code></strong> and render one <strong><code>sonic-tr</code></strong> per item; the list sets <code>even</code> · <code>odd</code> · <code>last</code> on each row. <strong><code>maxHeight</code></strong> caps the scroll container so the body scrolls vertically.</p>
53
- <pre><code>&lt;sonic-table maxHeight=&quot;10rem&quot;&gt;
54
- &lt;sonic-thead&gt;
55
- &lt;sonic-tr&gt;
56
- &lt;sonic-th&gt;Time&lt;/sonic-th&gt;
57
- &lt;sonic-th&gt;Flight&lt;/sonic-th&gt;
58
- &lt;sonic-th&gt;Destination&lt;/sonic-th&gt;
59
- &lt;sonic-th&gt;Gate&lt;/sonic-th&gt;
60
- &lt;/sonic-tr&gt;
61
- &lt;/sonic-thead&gt;
62
- &lt;sonic-tbody&gt;
63
- &lt;sonic-list fetch serviceURL=&quot;/docs-mock-api&quot; dataProvider=&quot;flights&quot; key=&quot;flights&quot; displayContents&gt;
64
- &lt;template&gt;
65
- &lt;sonic-tr&gt;
66
- &lt;sonic-td data-bind ::inner-html=&quot;$time&quot;&gt;&lt;/sonic-td&gt;
67
- &lt;sonic-td data-bind ::inner-html=&quot;$code&quot;&gt;&lt;/sonic-td&gt;
68
- &lt;sonic-td minWidth=&quot;10rem&quot; data-bind ::inner-html=&quot;$city &lt;b&gt;$airport&lt;/b&gt;&quot;&gt;&lt;/sonic-td&gt;
69
- &lt;sonic-td data-bind ::inner-html=&quot;$gate&quot;&gt;&lt;/sonic-td&gt;
70
- &lt;/sonic-tr&gt;
71
- </code></pre>
72
- <h2 id="size">Size</h2>
73
- <p>With no <strong><code>size</code></strong>, the table uses <code>md</code>.</p>
74
- <pre><code>&lt;div class=&quot;grid grid-cols-4 gap-3&quot;&gt;
75
- &lt;sonic-table size=&quot;2xs&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;2xs&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
76
- &lt;sonic-table size=&quot;xs&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;xs&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
77
- &lt;sonic-table size=&quot;sm&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;sm&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
78
- &lt;sonic-table size=&quot;md&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;md&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
79
- &lt;sonic-table size=&quot;lg&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;lg&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
80
- &lt;sonic-table size=&quot;xl&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;xl&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
81
- &lt;sonic-table size=&quot;2xl&quot; bordered&gt;&lt;sonic-tr&gt;&lt;sonic-td&gt;2xl&lt;/sonic-td&gt;&lt;/sonic-tr&gt;&lt;/sonic-table&gt;
82
- &lt;/div&gt;
83
- </code></pre>
84
- <h2 id="type">Type</h2>
85
- <p><strong><code>type</code></strong> on <strong><code>sonic-tr</code></strong> · <strong><code>sonic-th</code></strong> · <strong><code>sonic-td</code></strong> sets a semantic text color.</p>
86
- <pre><code>&lt;sonic-table bordered&gt;
87
- &lt;sonic-tr&gt;
88
- &lt;sonic-th type=&quot;info&quot;&gt;Set on&lt;/sonic-th&gt;
89
- &lt;sonic-th type=&quot;info&quot;&gt;sonic-th&lt;/sonic-th&gt;
90
- &lt;/sonic-tr&gt;
91
- &lt;sonic-tr&gt;
92
- &lt;sonic-td type=&quot;danger&quot;&gt;Set on&lt;/sonic-td&gt;
93
- &lt;sonic-td type=&quot;danger&quot;&gt;sonic-td&lt;/sonic-td&gt;
94
- &lt;/sonic-tr&gt;
95
- &lt;sonic-tr type=&quot;success&quot;&gt;
96
- &lt;sonic-td&gt;Set on&lt;/sonic-td&gt;
97
- &lt;sonic-td&gt;sonic-tr&lt;/sonic-td&gt;
98
- &lt;/sonic-tr&gt;
99
- &lt;/sonic-table&gt;
100
- </code></pre>
101
- <h2 id="colspan-and-rowspan">Colspan and rowspan</h2>
102
- <pre><code>&lt;sonic-table bordered&gt;
103
- &lt;sonic-tbody&gt;
104
- &lt;sonic-tr&gt;
105
- &lt;sonic-td colspan=&quot;2&quot; class=&quot;bg-info text-neutral-0&quot;&gt;colspan: 2&lt;/sonic-td&gt;
106
- &lt;sonic-td&gt;cell&lt;/sonic-td&gt;
107
- &lt;/sonic-tr&gt;
108
- &lt;sonic-tr&gt;
109
- &lt;sonic-td&gt;cell&lt;/sonic-td&gt;
110
- &lt;sonic-td&gt;cell&lt;/sonic-td&gt;
111
- &lt;sonic-td rowspan=&quot;2&quot; class=&quot;bg-success text-neutral-0&quot;&gt;rowspan: 2&lt;/sonic-td&gt;
112
- &lt;/sonic-tr&gt;
113
- &lt;sonic-tr&gt;
114
- &lt;sonic-td&gt;cell&lt;/sonic-td&gt;
115
- &lt;sonic-td&gt;cell&lt;/sonic-td&gt;
116
- &lt;/sonic-tr&gt;
117
- &lt;/sonic-tbody&gt;
118
- &lt;/sonic-table&gt;
119
- </code></pre>
120
- <h2 id="alignment-and-width">Alignment and width</h2>
121
- <p><strong><code>align</code></strong> sets horizontal alignment. <strong><code>width</code></strong> · <strong><code>minWidth</code></strong> · <strong><code>maxWidth</code></strong> set the cell dimensions. <strong><code>vAlign</code></strong> exists on <strong><code>sonic-td</code></strong> only.</p>
122
- <pre><code>&lt;sonic-table bordered&gt;
123
- &lt;sonic-thead&gt;
124
- &lt;sonic-tr&gt;
125
- &lt;sonic-th width=&quot;8rem&quot;&gt;align&lt;/sonic-th&gt;
126
- &lt;sonic-th maxWidth=&quot;8rem&quot;&gt;maxWidth 8rem&lt;/sonic-th&gt;
127
- &lt;sonic-th&gt;vAlign&lt;/sonic-th&gt;
128
- &lt;/sonic-tr&gt;
129
- &lt;/sonic-thead&gt;
130
- &lt;sonic-tbody&gt;
131
- &lt;sonic-tr&gt;
132
- &lt;sonic-td align=&quot;left&quot;&gt;left&lt;/sonic-td&gt;
133
- &lt;sonic-td maxWidth=&quot;8rem&quot;&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit.&lt;/sonic-td&gt;
134
- &lt;sonic-td vAlign=&quot;top&quot;&gt;top&lt;/sonic-td&gt;
135
- &lt;/sonic-tr&gt;
136
- &lt;sonic-tr&gt;
137
- &lt;sonic-td align=&quot;center&quot;&gt;center&lt;/sonic-td&gt;
138
- &lt;sonic-td maxWidth=&quot;8rem&quot;&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit.&lt;/sonic-td&gt;
139
- &lt;sonic-td vAlign=&quot;middle&quot;&gt;middle&lt;/sonic-td&gt;
140
- &lt;/sonic-tr&gt;
141
- &lt;sonic-tr&gt;
142
- &lt;sonic-td align=&quot;right&quot;&gt;right&lt;/sonic-td&gt;
143
- &lt;sonic-td maxWidth=&quot;8rem&quot;&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit.&lt;/sonic-td&gt;
144
- &lt;sonic-td vAlign=&quot;bottom&quot;&gt;bottom&lt;/sonic-td&gt;
145
- &lt;/sonic-tr&gt;
146
- &lt;/sonic-tbody&gt;
147
- &lt;/sonic-table&gt;
148
- </code></pre>
149
- <h2 id="sticky-header-and-caption">Sticky header and caption</h2>
150
- <p><strong><code>sonic-th</code></strong> cells stick to the top of the scroll container. To stick the header to the page instead, set <strong><code>noCustomScroll</code></strong> (which removes the scroll container) and position <strong><code>sonic-thead</code></strong> yourself. <strong><code>sonic-caption</code></strong> adds a caption.</p>
151
- <pre><code>&lt;sonic-table bordered noCustomScroll&gt;
152
- &lt;sonic-thead class=&quot;sticky top-16&quot;&gt;
153
- &lt;sonic-tr&gt;
154
- &lt;sonic-th minWidth=&quot;12rem&quot;&gt;Product&lt;/sonic-th&gt;
155
- &lt;sonic-th align=&quot;center&quot;&gt;Quantity&lt;/sonic-th&gt;
156
- &lt;sonic-th align=&quot;right&quot;&gt;Price&lt;/sonic-th&gt;
157
- &lt;sonic-th&gt;&lt;/sonic-th&gt;
158
- &lt;/sonic-tr&gt;
159
- &lt;/sonic-thead&gt;
160
- &lt;sonic-tbody&gt;
161
- &lt;sonic-tr&gt;
162
- &lt;sonic-td&gt;Desk lamp&lt;/sonic-td&gt;
163
- &lt;sonic-td align=&quot;center&quot;&gt;2&lt;/sonic-td&gt;
164
- &lt;sonic-td align=&quot;right&quot;&gt;40 €&lt;/sonic-td&gt;
165
- &lt;sonic-td align=&quot;right&quot;&gt;
166
- &lt;sonic-button shape=&quot;circle&quot; variant=&quot;outline&quot; size=&quot;sm&quot; aria-label=&quot;Edit&quot;&gt;
167
- &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;edit-pencil&quot; size=&quot;lg&quot;&gt;&lt;/sonic-icon&gt;
168
- &lt;/sonic-button&gt;
169
- &lt;/sonic-td&gt;
170
- &lt;/sonic-tr&gt;
171
- &lt;sonic-tr type=&quot;warning&quot;&gt;
172
- &lt;sonic-td&gt;Notebook&lt;/sonic-td&gt;
173
- &lt;sonic-td align=&quot;center&quot;&gt;0&lt;/sonic-td&gt;
174
- &lt;sonic-td align=&quot;right&quot;&gt;8 €&lt;/sonic-td&gt;
175
- &lt;sonic-td align=&quot;right&quot;&gt;
176
- &lt;sonic-button shape=&quot;circle&quot; variant=&quot;outline&quot; size=&quot;sm&quot; aria-label=&quot;Edit&quot;&gt;
177
- &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;edit-pencil&quot; size=&quot;lg&quot;&gt;&lt;/sonic-icon&gt;
178
- &lt;/sonic-button&gt;
179
- &lt;/sonic-td&gt;
180
- &lt;/sonic-tr&gt;
181
- &lt;sonic-tr&gt;
182
- &lt;sonic-td&gt;Headphones&lt;/sonic-td&gt;
183
- &lt;sonic-td align=&quot;center&quot;&gt;1&lt;/sonic-td&gt;
184
- &lt;sonic-td align=&quot;right&quot; type=&quot;danger&quot;&gt;120 €&lt;/sonic-td&gt;
185
- &lt;sonic-td align=&quot;right&quot;&gt;
186
- &lt;sonic-button shape=&quot;circle&quot; variant=&quot;outline&quot; size=&quot;sm&quot; aria-label=&quot;Edit&quot;&gt;
187
- &lt;sonic-icon library=&quot;iconoir&quot; name=&quot;edit-pencil&quot; size=&quot;lg&quot;&gt;&lt;/sonic-icon&gt;
188
- &lt;/sonic-button&gt;
189
- &lt;/sonic-td&gt;
190
- &lt;/sonic-tr&gt;
191
- &lt;/sonic-tbody&gt;
192
- &lt;sonic-caption&gt;Cart contents&lt;/sonic-caption&gt;
193
- &lt;/sonic-table&gt;
194
- </code></pre>
195
- <h2 id="api-reference">API reference</h2>
196
- <h3 id="sonic-table"><code>sonic-table</code></h3>
197
- <table>
198
- <thead>
199
- <tr>
200
- <th>Attribute</th>
201
- <th>Values</th>
202
- <th>Description</th>
203
- </tr>
204
- </thead>
205
- <tbody><tr>
206
- <td><code>size</code></td>
207
- <td><code>2xs</code> … <code>2xl</code> · <code>inherit</code> (default <code>md</code>)</td>
208
- <td>Font size</td>
209
- </tr>
210
- <tr>
211
- <td><code>bordered</code></td>
212
- <td>boolean</td>
213
- <td>Outer border and row dividers</td>
214
- </tr>
215
- <tr>
216
- <td><code>maxHeight</code></td>
217
- <td>CSS length</td>
218
- <td>Max height of the scroll container</td>
219
- </tr>
220
- <tr>
221
- <td><code>noCustomScroll</code></td>
222
- <td>boolean</td>
223
- <td>Remove the scroll container and its custom scrollbar</td>
224
- </tr>
225
- </tbody></table>
226
- <table>
227
- <thead>
228
- <tr>
229
- <th>Slot</th>
230
- <th>Description</th>
231
- </tr>
232
- </thead>
233
- <tbody><tr>
234
- <td><em>(default)</em></td>
235
- <td>Sections, rows and caption</td>
236
- </tr>
237
- </tbody></table>
238
- <h3 id="sonic-thead--sonic-tbody--sonic-tfoot--sonic-caption"><code>sonic-thead</code> · <code>sonic-tbody</code> · <code>sonic-tfoot</code> · <code>sonic-caption</code></h3>
239
- <p>No attributes. Default slot only. <code>sonic-tbody</code> stripes and highlights its rows.</p>
240
- <h3 id="sonic-tr"><code>sonic-tr</code></h3>
241
- <table>
242
- <thead>
243
- <tr>
244
- <th>Attribute</th>
245
- <th>Values</th>
246
- <th>Description</th>
247
- </tr>
248
- </thead>
249
- <tbody><tr>
250
- <td><code>type</code></td>
251
- <td><code>default</code> · <code>primary</code> · <code>info</code> · <code>success</code> · <code>warning</code> · <code>danger</code> · <code>neutral</code></td>
252
- <td>Text color</td>
253
- </tr>
254
- <tr>
255
- <td><code>even</code> · <code>odd</code></td>
256
- <td>boolean</td>
257
- <td>Striping background; set by <code>sonic-list</code></td>
258
- </tr>
259
- <tr>
260
- <td><code>last</code></td>
261
- <td>boolean</td>
262
- <td>No bottom border; set by <code>sonic-list</code></td>
263
- </tr>
264
- </tbody></table>
265
- <table>
266
- <thead>
267
- <tr>
268
- <th>Slot</th>
269
- <th>Description</th>
270
- </tr>
271
- </thead>
272
- <tbody><tr>
273
- <td><em>(default)</em></td>
274
- <td><code>sonic-th</code> or <code>sonic-td</code> cells</td>
275
- </tr>
276
- </tbody></table>
277
- <h3 id="sonic-th--sonic-td"><code>sonic-th</code> · <code>sonic-td</code></h3>
278
- <table>
279
- <thead>
280
- <tr>
281
- <th>Attribute</th>
282
- <th>Values</th>
283
- <th>Description</th>
284
- </tr>
285
- </thead>
286
- <tbody><tr>
287
- <td><code>type</code></td>
288
- <td>same as <code>sonic-tr</code></td>
289
- <td>Text color</td>
290
- </tr>
291
- <tr>
292
- <td><code>align</code></td>
293
- <td><code>left</code> · <code>center</code> · <code>right</code></td>
294
- <td>Horizontal alignment</td>
295
- </tr>
296
- <tr>
297
- <td><code>vAlign</code></td>
298
- <td>CSS <code>vertical-align</code></td>
299
- <td>Vertical alignment (<code>sonic-td</code> only)</td>
300
- </tr>
301
- <tr>
302
- <td><code>colSpan</code> · <code>rowSpan</code></td>
303
- <td>number</td>
304
- <td>Column and row span</td>
305
- </tr>
306
- <tr>
307
- <td><code>width</code> · <code>minWidth</code> · <code>maxWidth</code></td>
308
- <td>CSS length</td>
309
- <td>Cell dimensions</td>
310
- </tr>
311
- <tr>
312
- <td><code>noBorder</code></td>
313
- <td>boolean</td>
314
- <td>No bottom border (<code>sonic-th</code> only)</td>
315
- </tr>
316
- </tbody></table>
317
- <table>
318
- <thead>
319
- <tr>
320
- <th>Slot</th>
321
- <th>Description</th>
322
- </tr>
323
- </thead>
324
- <tbody><tr>
325
- <td><em>(default)</em></td>
326
- <td>Cell content</td>
327
- </tr>
328
- </tbody></table>
329
-
330
- </article>
331
- </main>
332
- </body>
333
- </html>
@@ -1,267 +0,0 @@
1
- # Table
2
-
3
- **`sonic-table`** lays out tabular data with **`sonic-tr`** · **`sonic-th`** · **`sonic-td`** children, optionally grouped in **`sonic-thead`** · **`sonic-tbody`** · **`sonic-tfoot`**. It scrolls horizontally when columns overflow; set **`minWidth`** on wide cells to keep them readable. Render fetched rows with **`sonic-list`**.
4
-
5
- ## Basic example
6
-
7
- **`bordered`** adds an outer frame and row dividers. **`sonic-tbody`** stripes and highlights its rows on hover.
8
-
9
- <sonic-code>
10
- <template>
11
- <sonic-table bordered>
12
- <sonic-thead>
13
- <sonic-tr>
14
- <sonic-th>Flight</sonic-th>
15
- <sonic-th>Destination</sonic-th>
16
- <sonic-th>Status</sonic-th>
17
- </sonic-tr>
18
- </sonic-thead>
19
- <sonic-tbody>
20
- <sonic-tr>
21
- <sonic-td>CN 001</sonic-td>
22
- <sonic-td>New York JFK</sonic-td>
23
- <sonic-td>Boarding</sonic-td>
24
- </sonic-tr>
25
- <sonic-tr>
26
- <sonic-td>CN 014</sonic-td>
27
- <sonic-td>London LHR</sonic-td>
28
- <sonic-td>On time</sonic-td>
29
- </sonic-tr>
30
- <sonic-tr>
31
- <sonic-td>CN 102</sonic-td>
32
- <sonic-td>Rio de Janeiro GIG</sonic-td>
33
- <sonic-td>Delayed</sonic-td>
34
- </sonic-tr>
35
- </sonic-tbody>
36
- </sonic-table>
37
- </template>
38
- </sonic-code>
39
-
40
- ## List, fetch and max height
41
-
42
- Put a **`sonic-list`** with `displayContents` inside **`sonic-tbody`** and render one **`sonic-tr`** per item; the list sets `even` · `odd` · `last` on each row. **`maxHeight`** caps the scroll container so the body scrolls vertically.
43
-
44
- <sonic-code>
45
- <template>
46
- <sonic-table maxHeight="10rem">
47
- <sonic-thead>
48
- <sonic-tr>
49
- <sonic-th>Time</sonic-th>
50
- <sonic-th>Flight</sonic-th>
51
- <sonic-th>Destination</sonic-th>
52
- <sonic-th>Gate</sonic-th>
53
- </sonic-tr>
54
- </sonic-thead>
55
- <sonic-tbody>
56
- <sonic-list fetch serviceURL="/docs-mock-api" dataProvider="flights" key="flights" displayContents>
57
- <template>
58
- <sonic-tr>
59
- <sonic-td data-bind ::inner-html="$time"></sonic-td>
60
- <sonic-td data-bind ::inner-html="$code"></sonic-td>
61
- <sonic-td minWidth="10rem" data-bind ::inner-html="$city <b>$airport</b>"></sonic-td>
62
- <sonic-td data-bind ::inner-html="$gate"></sonic-td>
63
- </sonic-tr>
64
- </template>
65
- </sonic-list>
66
- </sonic-tbody>
67
- </sonic-table>
68
- </template>
69
- </sonic-code>
70
-
71
- ## Size
72
-
73
- With no **`size`**, the table uses `md`.
74
-
75
- <sonic-code>
76
- <template>
77
- <div class="grid grid-cols-4 gap-3">
78
- <sonic-table size="2xs" bordered><sonic-tr><sonic-td>2xs</sonic-td></sonic-tr></sonic-table>
79
- <sonic-table size="xs" bordered><sonic-tr><sonic-td>xs</sonic-td></sonic-tr></sonic-table>
80
- <sonic-table size="sm" bordered><sonic-tr><sonic-td>sm</sonic-td></sonic-tr></sonic-table>
81
- <sonic-table size="md" bordered><sonic-tr><sonic-td>md</sonic-td></sonic-tr></sonic-table>
82
- <sonic-table size="lg" bordered><sonic-tr><sonic-td>lg</sonic-td></sonic-tr></sonic-table>
83
- <sonic-table size="xl" bordered><sonic-tr><sonic-td>xl</sonic-td></sonic-tr></sonic-table>
84
- <sonic-table size="2xl" bordered><sonic-tr><sonic-td>2xl</sonic-td></sonic-tr></sonic-table>
85
- </div>
86
- </template>
87
- </sonic-code>
88
-
89
- ## Type
90
-
91
- **`type`** on **`sonic-tr`** · **`sonic-th`** · **`sonic-td`** sets a semantic text color.
92
-
93
- <sonic-code>
94
- <template>
95
- <sonic-table bordered>
96
- <sonic-tr>
97
- <sonic-th type="info">Set on</sonic-th>
98
- <sonic-th type="info">sonic-th</sonic-th>
99
- </sonic-tr>
100
- <sonic-tr>
101
- <sonic-td type="danger">Set on</sonic-td>
102
- <sonic-td type="danger">sonic-td</sonic-td>
103
- </sonic-tr>
104
- <sonic-tr type="success">
105
- <sonic-td>Set on</sonic-td>
106
- <sonic-td>sonic-tr</sonic-td>
107
- </sonic-tr>
108
- </sonic-table>
109
- </template>
110
- </sonic-code>
111
-
112
- ## Colspan and rowspan
113
-
114
- <sonic-code>
115
- <template>
116
- <sonic-table bordered>
117
- <sonic-tbody>
118
- <sonic-tr>
119
- <sonic-td colspan="2" class="bg-info text-neutral-0">colspan: 2</sonic-td>
120
- <sonic-td>cell</sonic-td>
121
- </sonic-tr>
122
- <sonic-tr>
123
- <sonic-td>cell</sonic-td>
124
- <sonic-td>cell</sonic-td>
125
- <sonic-td rowspan="2" class="bg-success text-neutral-0">rowspan: 2</sonic-td>
126
- </sonic-tr>
127
- <sonic-tr>
128
- <sonic-td>cell</sonic-td>
129
- <sonic-td>cell</sonic-td>
130
- </sonic-tr>
131
- </sonic-tbody>
132
- </sonic-table>
133
- </template>
134
- </sonic-code>
135
-
136
- ## Alignment and width
137
-
138
- **`align`** sets horizontal alignment. **`width`** · **`minWidth`** · **`maxWidth`** set the cell dimensions. **`vAlign`** exists on **`sonic-td`** only.
139
-
140
- <sonic-code>
141
- <template>
142
- <sonic-table bordered>
143
- <sonic-thead>
144
- <sonic-tr>
145
- <sonic-th width="8rem">align</sonic-th>
146
- <sonic-th maxWidth="8rem">maxWidth 8rem</sonic-th>
147
- <sonic-th>vAlign</sonic-th>
148
- </sonic-tr>
149
- </sonic-thead>
150
- <sonic-tbody>
151
- <sonic-tr>
152
- <sonic-td align="left">left</sonic-td>
153
- <sonic-td maxWidth="8rem">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</sonic-td>
154
- <sonic-td vAlign="top">top</sonic-td>
155
- </sonic-tr>
156
- <sonic-tr>
157
- <sonic-td align="center">center</sonic-td>
158
- <sonic-td maxWidth="8rem">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</sonic-td>
159
- <sonic-td vAlign="middle">middle</sonic-td>
160
- </sonic-tr>
161
- <sonic-tr>
162
- <sonic-td align="right">right</sonic-td>
163
- <sonic-td maxWidth="8rem">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</sonic-td>
164
- <sonic-td vAlign="bottom">bottom</sonic-td>
165
- </sonic-tr>
166
- </sonic-tbody>
167
- </sonic-table>
168
- </template>
169
- </sonic-code>
170
-
171
- ## Sticky header and caption
172
-
173
- **`sonic-th`** cells stick to the top of the scroll container. To stick the header to the page instead, set **`noCustomScroll`** (which removes the scroll container) and position **`sonic-thead`** yourself. **`sonic-caption`** adds a caption.
174
-
175
- <sonic-code>
176
- <template>
177
- <sonic-table bordered noCustomScroll>
178
- <sonic-thead class="sticky top-16">
179
- <sonic-tr>
180
- <sonic-th minWidth="12rem">Product</sonic-th>
181
- <sonic-th align="center">Quantity</sonic-th>
182
- <sonic-th align="right">Price</sonic-th>
183
- <sonic-th></sonic-th>
184
- </sonic-tr>
185
- </sonic-thead>
186
- <sonic-tbody>
187
- <sonic-tr>
188
- <sonic-td>Desk lamp</sonic-td>
189
- <sonic-td align="center">2</sonic-td>
190
- <sonic-td align="right">40 €</sonic-td>
191
- <sonic-td align="right">
192
- <sonic-button shape="circle" variant="outline" size="sm" aria-label="Edit">
193
- <sonic-icon library="iconoir" name="edit-pencil" size="lg"></sonic-icon>
194
- </sonic-button>
195
- </sonic-td>
196
- </sonic-tr>
197
- <sonic-tr type="warning">
198
- <sonic-td>Notebook</sonic-td>
199
- <sonic-td align="center">0</sonic-td>
200
- <sonic-td align="right">8 €</sonic-td>
201
- <sonic-td align="right">
202
- <sonic-button shape="circle" variant="outline" size="sm" aria-label="Edit">
203
- <sonic-icon library="iconoir" name="edit-pencil" size="lg"></sonic-icon>
204
- </sonic-button>
205
- </sonic-td>
206
- </sonic-tr>
207
- <sonic-tr>
208
- <sonic-td>Headphones</sonic-td>
209
- <sonic-td align="center">1</sonic-td>
210
- <sonic-td align="right" type="danger">120 €</sonic-td>
211
- <sonic-td align="right">
212
- <sonic-button shape="circle" variant="outline" size="sm" aria-label="Edit">
213
- <sonic-icon library="iconoir" name="edit-pencil" size="lg"></sonic-icon>
214
- </sonic-button>
215
- </sonic-td>
216
- </sonic-tr>
217
- </sonic-tbody>
218
- <sonic-caption>Cart contents</sonic-caption>
219
- </sonic-table>
220
- </template>
221
- </sonic-code>
222
-
223
- ## API reference
224
-
225
- ### `sonic-table`
226
-
227
- | Attribute | Values | Description |
228
- |----------|---------|-------------|
229
- | `size` | `2xs` … `2xl` · `inherit` (default `md`) | Font size |
230
- | `bordered` | boolean | Outer border and row dividers |
231
- | `maxHeight` | CSS length | Max height of the scroll container |
232
- | `noCustomScroll` | boolean | Remove the scroll container and its custom scrollbar |
233
-
234
- | Slot | Description |
235
- |------|-------------|
236
- | *(default)* | Sections, rows and caption |
237
-
238
- ### `sonic-thead` · `sonic-tbody` · `sonic-tfoot` · `sonic-caption`
239
-
240
- No attributes. Default slot only. `sonic-tbody` stripes and highlights its rows.
241
-
242
- ### `sonic-tr`
243
-
244
- | Attribute | Values | Description |
245
- |----------|---------|-------------|
246
- | `type` | `default` · `primary` · `info` · `success` · `warning` · `danger` · `neutral` | Text color |
247
- | `even` · `odd` | boolean | Striping background; set by `sonic-list` |
248
- | `last` | boolean | No bottom border; set by `sonic-list` |
249
-
250
- | Slot | Description |
251
- |------|-------------|
252
- | *(default)* | `sonic-th` or `sonic-td` cells |
253
-
254
- ### `sonic-th` · `sonic-td`
255
-
256
- | Attribute | Values | Description |
257
- |----------|---------|-------------|
258
- | `type` | same as `sonic-tr` | Text color |
259
- | `align` | `left` · `center` · `right` | Horizontal alignment |
260
- | `vAlign` | CSS `vertical-align` | Vertical alignment (`sonic-td` only) |
261
- | `colSpan` · `rowSpan` | number | Column and row span |
262
- | `width` · `minWidth` · `maxWidth` | CSS length | Cell dimensions |
263
- | `noBorder` | boolean | No bottom border (`sonic-th` only) |
264
-
265
- | Slot | Description |
266
- |------|-------------|
267
- | *(default)* | Cell content |