@kerfjs/ui 5.0.0-beta.103 → 5.0.0-beta.105

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 (759) hide show
  1. package/README.md +163 -116
  2. package/ai/application-ui-profile.defaults.json +125 -4
  3. package/ai/compile-time-contracts-v1.json +11 -11
  4. package/ai/component-catalog.json +2606 -627
  5. package/ai/component-composition-rules.json +11 -10
  6. package/ai/component-composition.json +1689 -300
  7. package/ai/components/README.md +66 -48
  8. package/ai/components/application-tabs.md +4 -4
  9. package/ai/components/badge.md +1 -0
  10. package/ai/components/button.md +91 -0
  11. package/ai/components/checkbox.md +89 -0
  12. package/ai/components/choice-chips.md +9 -3
  13. package/ai/components/color-field.md +92 -0
  14. package/ai/components/color-picker.md +90 -0
  15. package/ai/components/color-swatches.md +82 -0
  16. package/ai/components/combobox.md +6 -4
  17. package/ai/components/content-item.md +5 -2
  18. package/ai/components/disclosure.md +83 -0
  19. package/ai/components/file-picker.md +1 -0
  20. package/ai/components/foundation.md +1 -1
  21. package/ai/components/list-action-row.md +3 -3
  22. package/ai/components/list-detail-dialog.md +90 -0
  23. package/ai/components/list.md +2 -0
  24. package/ai/components/lucide-icon.md +2 -0
  25. package/ai/components/{composer.md → message-composer.md} +17 -16
  26. package/ai/components/pane.md +3 -1
  27. package/ai/components/popup-menu.md +12 -9
  28. package/ai/components/progress-bar.md +82 -0
  29. package/ai/components/progress-ring.md +80 -0
  30. package/ai/components/radio-group.md +88 -0
  31. package/ai/components/recipe-list-detail-dialog.md +5 -5
  32. package/ai/components/search-field.md +108 -0
  33. package/ai/components/select.md +15 -13
  34. package/ai/components/slider.md +84 -0
  35. package/ai/components/surface-scaffold.md +16 -13
  36. package/ai/components/switch.md +81 -0
  37. package/ai/components/tab-bar.md +6 -6
  38. package/ai/components/tab-navigator.md +2 -2
  39. package/ai/components/tabs.md +7 -7
  40. package/ai/components/tag-field.md +86 -0
  41. package/ai/components/text-field.md +98 -0
  42. package/ai/components/text.md +1 -0
  43. package/ai/components/toast.md +85 -0
  44. package/ai/components/toolbar-control-group.md +3 -3
  45. package/ai/components/tooltip.md +81 -0
  46. package/ai/components/wa-accordion-item.md +11 -5
  47. package/ai/components/wa-accordion.md +11 -5
  48. package/ai/components/wa-animated-image.md +2 -1
  49. package/ai/components/wa-animation.md +1 -0
  50. package/ai/components/wa-avatar.md +1 -0
  51. package/ai/components/wa-badge.md +10 -3
  52. package/ai/components/wa-breadcrumb-item.md +1 -0
  53. package/ai/components/wa-breadcrumb.md +1 -0
  54. package/ai/components/wa-button-group.md +6 -4
  55. package/ai/components/wa-button.md +7 -5
  56. package/ai/components/wa-callout.md +7 -5
  57. package/ai/components/wa-card.md +12 -4
  58. package/ai/components/wa-carousel-item.md +1 -0
  59. package/ai/components/wa-carousel.md +1 -0
  60. package/ai/components/wa-checkbox-group.md +11 -4
  61. package/ai/components/wa-checkbox.md +10 -4
  62. package/ai/components/wa-color-picker.md +13 -5
  63. package/ai/components/wa-comparison.md +2 -1
  64. package/ai/components/wa-copy-button.md +1 -0
  65. package/ai/components/wa-details.md +11 -5
  66. package/ai/components/wa-dialog.md +10 -4
  67. package/ai/components/wa-divider.md +1 -0
  68. package/ai/components/wa-drawer.md +12 -5
  69. package/ai/components/wa-dropdown-item.md +8 -6
  70. package/ai/components/wa-dropdown.md +8 -6
  71. package/ai/components/wa-format-bytes.md +1 -0
  72. package/ai/components/wa-format-date.md +1 -0
  73. package/ai/components/wa-format-number.md +1 -0
  74. package/ai/components/wa-icon.md +2 -1
  75. package/ai/components/wa-include.md +6 -4
  76. package/ai/components/wa-input.md +9 -6
  77. package/ai/components/wa-intersection-observer.md +1 -0
  78. package/ai/components/wa-known-date.md +1 -0
  79. package/ai/components/wa-markdown.md +1 -0
  80. package/ai/components/wa-mutation-observer.md +1 -0
  81. package/ai/components/wa-number-input.md +1 -0
  82. package/ai/components/wa-option.md +7 -5
  83. package/ai/components/wa-otp-input.md +1 -0
  84. package/ai/components/wa-page.md +13 -4
  85. package/ai/components/wa-pagination.md +1 -0
  86. package/ai/components/wa-popover.md +11 -5
  87. package/ai/components/wa-popup.md +11 -4
  88. package/ai/components/wa-progress-bar.md +11 -4
  89. package/ai/components/wa-progress-ring.md +11 -4
  90. package/ai/components/wa-qr-code.md +1 -0
  91. package/ai/components/wa-radio-group.md +12 -4
  92. package/ai/components/wa-radio.md +10 -4
  93. package/ai/components/wa-random-content.md +1 -0
  94. package/ai/components/wa-rating.md +1 -0
  95. package/ai/components/wa-relative-time.md +1 -0
  96. package/ai/components/wa-resize-observer.md +1 -0
  97. package/ai/components/wa-scroller.md +12 -4
  98. package/ai/components/wa-select.md +7 -5
  99. package/ai/components/wa-skeleton.md +10 -3
  100. package/ai/components/wa-slider.md +11 -5
  101. package/ai/components/wa-spinner.md +7 -5
  102. package/ai/components/wa-split-panel.md +7 -5
  103. package/ai/components/wa-step.md +56 -0
  104. package/ai/components/wa-stepper.md +56 -0
  105. package/ai/components/wa-switch.md +10 -3
  106. package/ai/components/wa-tab-group.md +8 -6
  107. package/ai/components/wa-tab-panel.md +7 -5
  108. package/ai/components/wa-tab.md +8 -6
  109. package/ai/components/wa-tag-input.md +62 -0
  110. package/ai/components/wa-tag.md +9 -6
  111. package/ai/components/wa-textarea.md +10 -3
  112. package/ai/components/wa-time-input.md +1 -0
  113. package/ai/components/wa-toast-item.md +9 -7
  114. package/ai/components/wa-toast.md +9 -7
  115. package/ai/components/wa-tooltip.md +11 -5
  116. package/ai/components/wa-tree-item.md +2 -1
  117. package/ai/components/wa-tree.md +2 -1
  118. package/ai/components/wa-zoomable-frame.md +2 -1
  119. package/ai/components/workbench-dialog.md +90 -0
  120. package/ai/public-api-signatures-v1.md +1577 -245
  121. package/ai/skill.md +83 -50
  122. package/ai/webawesome-jsx-signatures-v1.md +4 -1
  123. package/dist/badge.d.ts +9 -1
  124. package/dist/badge.js +1 -1
  125. package/dist/browser/button.js +5 -0
  126. package/dist/browser/catalog.js +3 -2
  127. package/dist/browser/{icon-button.js → checkbox.js} +2 -2
  128. package/dist/browser/color-field.js +4 -0
  129. package/dist/browser/color-picker.js +5 -0
  130. package/dist/browser/color-swatches.js +3 -0
  131. package/dist/browser/disclosure.js +5 -0
  132. package/dist/browser/list-action-row.js +1 -0
  133. package/dist/browser/list-detail-dialog.js +14 -0
  134. package/dist/browser/message-composer.js +5 -0
  135. package/dist/browser/popup-menu.js +1 -0
  136. package/dist/browser/progress-bar.js +3 -0
  137. package/dist/browser/progress-ring.js +3 -0
  138. package/dist/browser/radio-group.js +3 -0
  139. package/dist/browser/search-field.js +4 -0
  140. package/dist/browser/slider.js +3 -0
  141. package/dist/browser/surface-scaffold.js +1 -0
  142. package/dist/browser/switch.js +3 -0
  143. package/dist/browser/tab-bar-item.js +4 -0
  144. package/dist/browser/tag-field.js +5 -0
  145. package/dist/browser/text-field.js +4 -0
  146. package/dist/browser/workbench-dialog.js +15 -0
  147. package/dist/button.d.ts +108 -0
  148. package/dist/button.js +7 -0
  149. package/dist/button.js.map +1 -0
  150. package/dist/catalog-resources.d.ts +1 -1
  151. package/dist/catalog.d.ts +3 -3
  152. package/dist/catalog.js +57 -27
  153. package/dist/catalog.js.map +1 -1
  154. package/dist/checkbox.d.ts +45 -0
  155. package/dist/checkbox.js +6 -0
  156. package/dist/checkbox.js.map +1 -0
  157. package/dist/choice-chips.d.ts +49 -15
  158. package/dist/choice-chips.js +1 -1
  159. package/dist/chunk-23PPPNH6.js +93 -0
  160. package/dist/chunk-23PPPNH6.js.map +1 -0
  161. package/dist/{chunk-FNZQOUZ5.js → chunk-2FW7D4IG.js} +2 -2
  162. package/dist/{chunk-FNZQOUZ5.js.map → chunk-2FW7D4IG.js.map} +1 -1
  163. package/dist/{chunk-ZYU5WRC3.js → chunk-3GLYIIFR.js} +2 -2
  164. package/dist/{chunk-ZYU5WRC3.js.map → chunk-3GLYIIFR.js.map} +1 -1
  165. package/dist/{chunk-5NQF35VO.js → chunk-4RECPEHI.js} +2 -2
  166. package/dist/{chunk-5NQF35VO.js.map → chunk-4RECPEHI.js.map} +1 -1
  167. package/dist/{chunk-7IUEBNCO.js → chunk-5USKCWGL.js} +8 -3
  168. package/dist/chunk-5USKCWGL.js.map +1 -0
  169. package/dist/chunk-6VVIW7VB.js +69 -0
  170. package/dist/chunk-6VVIW7VB.js.map +1 -0
  171. package/dist/{chunk-LL45C7BB.js → chunk-7K6U6FCN.js} +1 -1
  172. package/dist/chunk-7K6U6FCN.js.map +1 -0
  173. package/dist/{chunk-HQZYKJ56.js → chunk-7W3GKMN4.js} +110 -74
  174. package/dist/chunk-7W3GKMN4.js.map +1 -0
  175. package/dist/chunk-ACUKTVS3.js +371 -0
  176. package/dist/chunk-ACUKTVS3.js.map +1 -0
  177. package/dist/{chunk-YQ2AC4E2.js → chunk-AMIHGFLP.js} +2 -2
  178. package/dist/{chunk-YQ2AC4E2.js.map → chunk-AMIHGFLP.js.map} +1 -1
  179. package/dist/chunk-ATGAJVZ6.js +268 -0
  180. package/dist/chunk-ATGAJVZ6.js.map +1 -0
  181. package/dist/chunk-AYPGXR2E.js +20 -0
  182. package/dist/chunk-AYPGXR2E.js.map +1 -0
  183. package/dist/{chunk-ETCWQLJV.js → chunk-BKUMG2KB.js} +38 -28
  184. package/dist/chunk-BKUMG2KB.js.map +1 -0
  185. package/dist/chunk-C26Q6P4Q.js +76 -0
  186. package/dist/chunk-C26Q6P4Q.js.map +1 -0
  187. package/dist/chunk-C3RLKKFQ.js +452 -0
  188. package/dist/chunk-C3RLKKFQ.js.map +1 -0
  189. package/dist/{chunk-IM3GKYOG.js → chunk-CIAUILRR.js} +52 -32
  190. package/dist/chunk-CIAUILRR.js.map +1 -0
  191. package/dist/chunk-CNM6ZWP2.js +38 -0
  192. package/dist/chunk-CNM6ZWP2.js.map +1 -0
  193. package/dist/{chunk-LPHU44S3.js → chunk-CTQUDCY5.js} +3 -1
  194. package/dist/chunk-CTQUDCY5.js.map +1 -0
  195. package/dist/{chunk-MXNIVEVL.js → chunk-D4MXSAMI.js} +5 -3
  196. package/dist/chunk-D4MXSAMI.js.map +1 -0
  197. package/dist/{chunk-YBWQR2OK.js → chunk-DDSCVEO5.js} +10 -9
  198. package/dist/chunk-DDSCVEO5.js.map +1 -0
  199. package/dist/{chunk-SIW64V65.js → chunk-DF2YKGIX.js} +3 -3
  200. package/dist/{chunk-SIW64V65.js.map → chunk-DF2YKGIX.js.map} +1 -1
  201. package/dist/{chunk-3SKAEPPZ.js → chunk-ECFCAKWE.js} +4 -4
  202. package/dist/{chunk-3SKAEPPZ.js.map → chunk-ECFCAKWE.js.map} +1 -1
  203. package/dist/chunk-EKBMUXFV.js +298 -0
  204. package/dist/chunk-EKBMUXFV.js.map +1 -0
  205. package/dist/{chunk-IXLUZHGT.js → chunk-FG6U7KQQ.js} +5 -5
  206. package/dist/{chunk-IXLUZHGT.js.map → chunk-FG6U7KQQ.js.map} +1 -1
  207. package/dist/chunk-FKKJHGN5.js +147 -0
  208. package/dist/chunk-FKKJHGN5.js.map +1 -0
  209. package/dist/{chunk-FDZNYD4C.js → chunk-GCAK23PU.js} +34 -3
  210. package/dist/chunk-GCAK23PU.js.map +1 -0
  211. package/dist/chunk-GXSX6Q6O.js +42 -0
  212. package/dist/chunk-GXSX6Q6O.js.map +1 -0
  213. package/dist/{chunk-LOSRXZAH.js → chunk-HJXVVFBT.js} +14 -6
  214. package/dist/chunk-HJXVVFBT.js.map +1 -0
  215. package/dist/{chunk-M5KZ26VV.js → chunk-HQZG3OFL.js} +11 -1
  216. package/dist/chunk-HQZG3OFL.js.map +1 -0
  217. package/dist/{chunk-ELCMSQNJ.js → chunk-HTERKONR.js} +8 -8
  218. package/dist/chunk-HTERKONR.js.map +1 -0
  219. package/dist/chunk-HYORKKYP.js +8 -0
  220. package/dist/chunk-HYORKKYP.js.map +1 -0
  221. package/dist/chunk-IO27YTL3.js +73 -0
  222. package/dist/chunk-IO27YTL3.js.map +1 -0
  223. package/dist/chunk-ITUQC4FW.js +163 -0
  224. package/dist/chunk-ITUQC4FW.js.map +1 -0
  225. package/dist/chunk-K57NINLH.js +137 -0
  226. package/dist/chunk-K57NINLH.js.map +1 -0
  227. package/dist/chunk-KC6WUSNS.js +34 -0
  228. package/dist/chunk-KC6WUSNS.js.map +1 -0
  229. package/dist/{chunk-W4IK7AWD.js → chunk-KDQZ3E5C.js} +3 -1
  230. package/dist/chunk-KDQZ3E5C.js.map +1 -0
  231. package/dist/{chunk-2MSPNRWJ.js → chunk-KK3S5OTW.js} +27 -11
  232. package/dist/chunk-KK3S5OTW.js.map +1 -0
  233. package/dist/chunk-LTBVP6VN.js +59 -0
  234. package/dist/chunk-LTBVP6VN.js.map +1 -0
  235. package/dist/chunk-OHPYT2BH.js +82 -0
  236. package/dist/chunk-OHPYT2BH.js.map +1 -0
  237. package/dist/{chunk-HZPHCSCS.js → chunk-OY2MXIBB.js} +8 -2
  238. package/dist/chunk-OY2MXIBB.js.map +1 -0
  239. package/dist/chunk-PE2KPZDW.js +85 -0
  240. package/dist/chunk-PE2KPZDW.js.map +1 -0
  241. package/dist/{chunk-QTSMHH5J.js → chunk-QPTJ5DOO.js} +5 -3
  242. package/dist/chunk-QPTJ5DOO.js.map +1 -0
  243. package/dist/{chunk-JOR5LGYE.js → chunk-RFLW4FPL.js} +1 -1
  244. package/dist/chunk-RFLW4FPL.js.map +1 -0
  245. package/dist/{chunk-U6QYTMDB.js → chunk-RMWNO6BA.js} +6 -2
  246. package/dist/chunk-RMWNO6BA.js.map +1 -0
  247. package/dist/{chunk-TDMHA7C3.js → chunk-SQ2Q3OQI.js} +112 -63
  248. package/dist/chunk-SQ2Q3OQI.js.map +1 -0
  249. package/dist/{chunk-K4AT3V3J.js → chunk-T74YB76U.js} +13 -11
  250. package/dist/chunk-T74YB76U.js.map +1 -0
  251. package/dist/{chunk-BYFTHA4I.js → chunk-TAHR457X.js} +53 -6
  252. package/dist/chunk-TAHR457X.js.map +1 -0
  253. package/dist/{chunk-3VXDSIBJ.js → chunk-TKNVL53O.js} +2 -2
  254. package/dist/{chunk-3VXDSIBJ.js.map → chunk-TKNVL53O.js.map} +1 -1
  255. package/dist/chunk-TNJLNLVE.js +115 -0
  256. package/dist/chunk-TNJLNLVE.js.map +1 -0
  257. package/dist/chunk-TUID42UE.js +15 -0
  258. package/dist/chunk-TUID42UE.js.map +1 -0
  259. package/dist/{chunk-PKL6QJKK.js → chunk-UMNHJSIO.js} +93 -80
  260. package/dist/chunk-UMNHJSIO.js.map +1 -0
  261. package/dist/chunk-UTCAOOXU.js +116 -0
  262. package/dist/chunk-UTCAOOXU.js.map +1 -0
  263. package/dist/{chunk-MF6ZUUJZ.js → chunk-VEME3D7K.js} +38 -40
  264. package/dist/chunk-VEME3D7K.js.map +1 -0
  265. package/dist/{chunk-HLDRH23D.js → chunk-WJKHLOP5.js} +2 -2
  266. package/dist/{chunk-HLDRH23D.js.map → chunk-WJKHLOP5.js.map} +1 -1
  267. package/dist/chunk-WU57BYYM.js +115 -0
  268. package/dist/chunk-WU57BYYM.js.map +1 -0
  269. package/dist/{chunk-TGLUDQP2.js → chunk-ZCDRLN3B.js} +11 -11
  270. package/dist/chunk-ZCDRLN3B.js.map +1 -0
  271. package/dist/chunk-ZX2QQJXD.js +249 -0
  272. package/dist/chunk-ZX2QQJXD.js.map +1 -0
  273. package/dist/{chunk-6E2H2E5A.js → chunk-ZXZAECHZ.js} +6 -6
  274. package/dist/{chunk-6E2H2E5A.js.map → chunk-ZXZAECHZ.js.map} +1 -1
  275. package/dist/collapsible-panel.js +3 -3
  276. package/dist/color-field.d.ts +51 -0
  277. package/dist/color-field.js +92 -0
  278. package/dist/color-field.js.map +1 -0
  279. package/dist/color-picker.d.ts +88 -0
  280. package/dist/color-picker.js +8 -0
  281. package/dist/color-picker.js.map +1 -0
  282. package/dist/color-swatches.d.ts +56 -0
  283. package/dist/color-swatches.js +4 -0
  284. package/dist/color-swatches.js.map +1 -0
  285. package/dist/combobox.js +1 -1
  286. package/dist/content-item.d.ts +13 -1
  287. package/dist/content-item.js +1 -1
  288. package/dist/disclosure-arrow.js +1 -1
  289. package/dist/disclosure.d.ts +57 -0
  290. package/dist/disclosure.js +51 -0
  291. package/dist/disclosure.js.map +1 -0
  292. package/dist/file-picker.d.ts +7 -0
  293. package/dist/file-picker.js +1 -1
  294. package/dist/help-tags-register.d.ts +8 -8
  295. package/dist/help-tags-register.js +3 -2
  296. package/dist/help-tags-register.js.map +1 -1
  297. package/dist/index.d.ts +16 -9
  298. package/dist/index.js +58 -46
  299. package/dist/list-action-row.js +4 -1
  300. package/dist/list-detail-dialog.d.ts +117 -0
  301. package/dist/list-detail-dialog.js +165 -0
  302. package/dist/list-detail-dialog.js.map +1 -0
  303. package/dist/list-header.js +1 -1
  304. package/dist/list-item.js +1 -1
  305. package/dist/list.d.ts +17 -2
  306. package/dist/list.js +1 -1
  307. package/dist/lucide-icon.d.ts +9 -1
  308. package/dist/lucide-icon.js +1 -1
  309. package/dist/{composer.d.ts → message-composer.d.ts} +20 -12
  310. package/dist/message-composer.js +6 -0
  311. package/dist/message-composer.js.map +1 -0
  312. package/dist/nav-stack.js +1 -1
  313. package/dist/pane.d.ts +36 -3
  314. package/dist/pane.js +1 -1
  315. package/dist/popup-menu-register.d.ts +6 -5
  316. package/dist/popup-menu-register.js +3 -326
  317. package/dist/popup-menu-register.js.map +1 -1
  318. package/dist/popup-menu.d.ts +41 -23
  319. package/dist/popup-menu.js +5 -1
  320. package/dist/progress-bar.d.ts +52 -0
  321. package/dist/progress-bar.js +68 -0
  322. package/dist/progress-bar.js.map +1 -0
  323. package/dist/progress-ring.d.ts +44 -0
  324. package/dist/progress-ring.js +73 -0
  325. package/dist/progress-ring.js.map +1 -0
  326. package/dist/radio-group.d.ts +62 -0
  327. package/dist/radio-group.js +4 -0
  328. package/dist/radio-group.js.map +1 -0
  329. package/dist/row.js +1 -1
  330. package/dist/{token-search-model-aYR0YAei.d.ts → search-field-CrGTN5sa.d.ts} +67 -43
  331. package/dist/search-field-model.d.ts +3 -0
  332. package/dist/search-field-model.js +3 -0
  333. package/dist/search-field-model.js.map +1 -0
  334. package/dist/search-field.d.ts +3 -0
  335. package/dist/search-field.js +5 -0
  336. package/dist/search-field.js.map +1 -0
  337. package/dist/select-register.d.ts +6 -3
  338. package/dist/select-register.js +383 -241
  339. package/dist/select-register.js.map +1 -1
  340. package/dist/select.d.ts +30 -6
  341. package/dist/select.js +3 -1
  342. package/dist/selection.d.ts +54 -0
  343. package/dist/selection.js +3 -0
  344. package/dist/selection.js.map +1 -0
  345. package/dist/slider.d.ts +74 -0
  346. package/dist/slider.js +103 -0
  347. package/dist/slider.js.map +1 -0
  348. package/dist/split-button.js +1 -1
  349. package/dist/split-view.d.ts +5 -2
  350. package/dist/split-view.js +18 -159
  351. package/dist/split-view.js.map +1 -1
  352. package/dist/state-banner.js +1 -1
  353. package/dist/styles/badge.css +18 -6
  354. package/dist/styles/button.css +230 -0
  355. package/dist/styles/catalog/components/catalog-example.css +13 -4
  356. package/dist/styles/checkbox.css +121 -0
  357. package/dist/styles/choice-chips.css +58 -7
  358. package/dist/styles/color-field.css +125 -0
  359. package/dist/styles/color-picker.css +331 -0
  360. package/dist/styles/color-swatches.css +122 -0
  361. package/dist/styles/combobox.css +7 -5
  362. package/dist/styles/components/actions/button/button.css +230 -0
  363. package/dist/styles/components/actions/popup-menu/popup-menu.css +326 -198
  364. package/dist/styles/components/actions/toolbar/toolbar.css +25 -3
  365. package/dist/styles/components/actions/toolbar-control-group/toolbar-control-group.css +67 -104
  366. package/dist/styles/components/actions/toolbar-text/toolbar-text.css +5 -18
  367. package/dist/styles/components/collections/list/list.css +37 -0
  368. package/dist/styles/components/feedback/badge/badge.css +18 -6
  369. package/dist/styles/components/feedback/progress-bar/progress-bar.css +168 -0
  370. package/dist/styles/components/feedback/progress-ring/progress-ring.css +91 -0
  371. package/dist/styles/components/feedback/state-banner/state-banner.css +18 -3
  372. package/dist/styles/components/forms/checkbox/checkbox.css +121 -0
  373. package/dist/styles/components/forms/choice-chips/choice-chips.css +58 -7
  374. package/dist/styles/components/forms/color-field/color-field.css +125 -0
  375. package/dist/styles/components/forms/color-picker/color-picker.css +331 -0
  376. package/dist/styles/components/forms/color-swatches/color-swatches.css +122 -0
  377. package/dist/styles/components/forms/combobox/combobox.css +7 -5
  378. package/dist/styles/components/forms/{composer/composer.css → message-composer/message-composer.css} +17 -33
  379. package/dist/styles/components/forms/radio-group/radio-group.css +156 -0
  380. package/dist/styles/{token-search-field.css → components/forms/search-field/search-field.css} +111 -102
  381. package/dist/styles/components/forms/select/select.css +370 -249
  382. package/dist/styles/components/forms/slider/slider.css +241 -0
  383. package/dist/styles/components/forms/switch/switch.css +132 -0
  384. package/dist/styles/components/forms/tag-field/tag-field.css +8 -0
  385. package/dist/styles/components/forms/text-field/text-field.css +193 -0
  386. package/dist/styles/components/layout/pane/pane.css +254 -0
  387. package/dist/styles/components/layout/resizable-region/resizable-region.css +3 -2
  388. package/dist/styles/components/layout/row/row.css +11 -0
  389. package/dist/styles/components/layout/split-view/split-view.css +25 -0
  390. package/dist/styles/components/layout/workbench/workbench.css +12 -4
  391. package/dist/styles/components/navigation/disclosure-arrow/disclosure-arrow.css +20 -0
  392. package/dist/styles/components/navigation/tab-bar/tab-bar.css +7 -7
  393. package/dist/styles/components/navigation/{app-tab/app-tab.css → tab-bar-item/tab-bar-item.css} +95 -90
  394. package/dist/styles/components/surfaces/disclosure/disclosure.css +98 -0
  395. package/dist/styles/components/surfaces/surface-scaffold/surface-scaffold.css +263 -116
  396. package/dist/styles/components/typography/text/text.css +14 -12
  397. package/dist/styles/disclosure-arrow.css +20 -0
  398. package/dist/styles/disclosure.css +98 -0
  399. package/dist/styles/foundation.css +6 -4
  400. package/dist/styles/list-detail-dialog.css +11 -0
  401. package/dist/styles/list.css +37 -0
  402. package/dist/styles/{composer.css → message-composer.css} +17 -33
  403. package/dist/styles/overlay-toast.css +149 -0
  404. package/dist/styles/overlay-tooltip.css +55 -0
  405. package/dist/styles/pane.css +254 -0
  406. package/dist/styles/popup-menu.css +326 -198
  407. package/dist/styles/progress-bar.css +168 -0
  408. package/dist/styles/progress-ring.css +91 -0
  409. package/dist/styles/radio-group.css +156 -0
  410. package/dist/styles/resizable-region.css +3 -2
  411. package/dist/styles/row.css +11 -0
  412. package/dist/styles/{components/forms/token-search-field/token-search-field.css → search-field.css} +111 -102
  413. package/dist/styles/select.css +370 -249
  414. package/dist/styles/slider.css +241 -0
  415. package/dist/styles/split-view.css +25 -0
  416. package/dist/styles/state-banner.css +18 -3
  417. package/dist/styles/styles.css +16 -5
  418. package/dist/styles/surface-scaffold.css +263 -116
  419. package/dist/styles/switch.css +132 -0
  420. package/dist/styles/{app-tab.css → tab-bar-item.css} +95 -90
  421. package/dist/styles/tab-bar.css +7 -7
  422. package/dist/styles/tag-field.css +8 -0
  423. package/dist/styles/text-field.css +193 -0
  424. package/dist/styles/text.css +14 -12
  425. package/dist/styles/toolbar-control-group.css +67 -104
  426. package/dist/styles/toolbar-text.css +5 -18
  427. package/dist/styles/toolbar.css +25 -3
  428. package/dist/styles/webawesome.css +9 -0
  429. package/dist/styles/workbench-dialog.css +10 -0
  430. package/dist/styles/workbench.css +12 -4
  431. package/dist/surface-scaffold-register.d.ts +7 -5
  432. package/dist/surface-scaffold-register.js +2 -246
  433. package/dist/surface-scaffold-register.js.map +1 -1
  434. package/dist/surface-scaffold.d.ts +70 -7
  435. package/dist/surface-scaffold.js +5 -1
  436. package/dist/switch.d.ts +38 -0
  437. package/dist/switch.js +4 -0
  438. package/dist/switch.js.map +1 -0
  439. package/dist/{app-tab.d.ts → tab-bar-item.d.ts} +11 -11
  440. package/dist/tab-bar-item.js +6 -0
  441. package/dist/tab-bar-item.js.map +1 -0
  442. package/dist/tab-bar.d.ts +3 -3
  443. package/dist/tab-bar.js +1 -1
  444. package/dist/tab-navigator.js +1 -1
  445. package/dist/tag-field.d.ts +52 -0
  446. package/dist/tag-field.js +6 -0
  447. package/dist/tag-field.js.map +1 -0
  448. package/dist/text-field.d.ts +83 -0
  449. package/dist/text-field.js +6 -0
  450. package/dist/text-field.js.map +1 -0
  451. package/dist/text.d.ts +6 -1
  452. package/dist/text.js +1 -1
  453. package/dist/{types-CVgIwSdq.d.ts → types-DmHWkSd6.d.ts} +19 -1
  454. package/dist/webawesome.d.ts +3 -0
  455. package/dist/wire-catalog.d.ts +8 -2
  456. package/dist/wire-catalog.js +16 -4
  457. package/dist/wire-catalog.js.map +1 -1
  458. package/dist/wire-checkboxes.d.ts +10 -0
  459. package/dist/wire-checkboxes.js +3 -0
  460. package/dist/{wire-composers.js.map → wire-checkboxes.js.map} +1 -1
  461. package/dist/wire-choice-chips.d.ts +17 -0
  462. package/dist/wire-choice-chips.js +4 -0
  463. package/dist/{wire-token-search-fields.js.map → wire-choice-chips.js.map} +1 -1
  464. package/dist/wire-color-fields.d.ts +33 -0
  465. package/dist/wire-color-fields.js +82 -0
  466. package/dist/wire-color-fields.js.map +1 -0
  467. package/dist/wire-color-pickers.d.ts +34 -0
  468. package/dist/wire-color-pickers.js +9 -0
  469. package/dist/wire-color-pickers.js.map +1 -0
  470. package/dist/wire-comboboxes.js +2 -1
  471. package/dist/wire-content-items.d.ts +5 -1
  472. package/dist/wire-content-items.js +84 -15
  473. package/dist/wire-content-items.js.map +1 -1
  474. package/dist/wire-file-pickers.d.ts +3 -2
  475. package/dist/wire-file-pickers.js +1 -1
  476. package/dist/{wire-composers.d.ts → wire-message-composers.d.ts} +5 -4
  477. package/dist/wire-message-composers.js +3 -0
  478. package/dist/wire-message-composers.js.map +1 -0
  479. package/dist/wire-overlay-sheets.js +1 -1
  480. package/dist/wire-pane-chrome.d.ts +21 -0
  481. package/dist/wire-pane-chrome.js +67 -0
  482. package/dist/wire-pane-chrome.js.map +1 -0
  483. package/dist/{wire-token-search-fields.d.ts → wire-search-fields.d.ts} +25 -25
  484. package/dist/wire-search-fields.js +6 -0
  485. package/dist/wire-search-fields.js.map +1 -0
  486. package/dist/wire-sliders.d.ts +12 -0
  487. package/dist/wire-sliders.js +31 -0
  488. package/dist/wire-sliders.js.map +1 -0
  489. package/dist/wire-tab-bars.js +1 -1
  490. package/dist/wire-tag-fields.d.ts +41 -0
  491. package/dist/wire-tag-fields.js +258 -0
  492. package/dist/wire-tag-fields.js.map +1 -0
  493. package/dist/wire-text-fields.d.ts +12 -0
  494. package/dist/wire-text-fields.js +3 -0
  495. package/dist/wire-text-fields.js.map +1 -0
  496. package/dist/workbench-dialog.d.ts +97 -0
  497. package/dist/workbench-dialog.js +124 -0
  498. package/dist/workbench-dialog.js.map +1 -0
  499. package/dist/workbench.d.ts +5 -0
  500. package/dist/workbench.js +1 -1
  501. package/docs/accessibility.md +181 -97
  502. package/docs/anchored-surface.md +8 -7
  503. package/docs/app-layouts.md +28 -0
  504. package/docs/catalog.md +14 -5
  505. package/docs/color-field.md +65 -0
  506. package/docs/color-picker.md +71 -0
  507. package/docs/color-swatches.md +46 -0
  508. package/docs/component-contract.md +31 -32
  509. package/docs/component-selection.md +232 -165
  510. package/docs/design/templates/button/emphasis-dark.svg +1 -0
  511. package/docs/design/templates/button/emphasis.svg +1 -0
  512. package/docs/design/templates/button/icons-dark.svg +1 -0
  513. package/docs/design/templates/button/icons.svg +1 -0
  514. package/docs/design/templates/button/pill-dark.svg +1 -0
  515. package/docs/design/templates/button/pill.svg +1 -0
  516. package/docs/design/templates/button/states-dark.svg +1 -0
  517. package/docs/design/templates/button/states.svg +1 -0
  518. package/docs/design/templates/button/toggles-dark.svg +1 -0
  519. package/docs/design/templates/button/toggles.svg +1 -0
  520. package/docs/design/templates/button/tones-dark.svg +1 -0
  521. package/docs/design/templates/button/tones.svg +1 -0
  522. package/docs/design/templates/button-dark.svg +1 -0
  523. package/docs/design/templates/button.svg +1 -0
  524. package/docs/design/templates/checkbox/compact-dark.svg +1 -0
  525. package/docs/design/templates/checkbox/compact.svg +1 -0
  526. package/docs/design/templates/checkbox/error-dark.svg +1 -0
  527. package/docs/design/templates/checkbox/error.svg +1 -0
  528. package/docs/design/templates/checkbox/mixed-dark.svg +1 -0
  529. package/docs/design/templates/checkbox/mixed.svg +1 -0
  530. package/docs/design/templates/checkbox/states-dark.svg +1 -0
  531. package/docs/design/templates/checkbox/states.svg +1 -0
  532. package/docs/design/templates/checkbox-dark.svg +1 -0
  533. package/docs/design/templates/checkbox.svg +1 -0
  534. package/docs/design/templates/choice-chips/color-palette-dark.svg +1 -1
  535. package/docs/design/templates/choice-chips/color-palette.svg +1 -1
  536. package/docs/design/templates/choice-chips/compact-icons-dark.svg +1 -1
  537. package/docs/design/templates/choice-chips/compact-icons.svg +1 -1
  538. package/docs/design/templates/choice-chips/multiple-dark.svg +1 -1
  539. package/docs/design/templates/choice-chips/multiple.svg +1 -1
  540. package/docs/design/templates/choice-chips-dark.svg +1 -1
  541. package/docs/design/templates/choice-chips.svg +1 -1
  542. package/docs/design/templates/color-field/compact-dark.svg +1 -0
  543. package/docs/design/templates/color-field/compact.svg +1 -0
  544. package/docs/design/templates/color-field/error-dark.svg +1 -0
  545. package/docs/design/templates/color-field/error.svg +1 -0
  546. package/docs/design/templates/color-field/hint-dark.svg +1 -0
  547. package/docs/design/templates/color-field/hint.svg +1 -0
  548. package/docs/design/templates/color-field-dark.svg +1 -0
  549. package/docs/design/templates/color-field.svg +1 -0
  550. package/docs/design/templates/color-picker/gray-dark.svg +1 -0
  551. package/docs/design/templates/color-picker/gray.svg +1 -0
  552. package/docs/design/templates/color-picker/rgb-dark.svg +1 -0
  553. package/docs/design/templates/color-picker/rgb.svg +1 -0
  554. package/docs/design/templates/color-picker-dark.svg +1 -0
  555. package/docs/design/templates/color-picker.svg +1 -0
  556. package/docs/design/templates/color-swatches/palette-dark.svg +1 -0
  557. package/docs/design/templates/color-swatches/palette.svg +1 -0
  558. package/docs/design/templates/color-swatches-dark.svg +1 -0
  559. package/docs/design/templates/color-swatches.svg +1 -0
  560. package/docs/design/templates/disclosure/framed-sunken-dark.svg +1 -0
  561. package/docs/design/templates/disclosure/framed-sunken.svg +1 -0
  562. package/docs/design/templates/disclosure/plain-dark.svg +1 -0
  563. package/docs/design/templates/disclosure/plain.svg +1 -0
  564. package/docs/design/templates/disclosure-dark.svg +1 -0
  565. package/docs/design/templates/disclosure.svg +1 -0
  566. package/docs/design/templates/list-header/size-l-dark.svg +1 -1
  567. package/docs/design/templates/list-header/size-l.svg +1 -1
  568. package/docs/design/templates/list-header/size-m-dark.svg +1 -1
  569. package/docs/design/templates/list-header/size-m.svg +1 -1
  570. package/docs/design/templates/list-header/size-xl-dark.svg +1 -1
  571. package/docs/design/templates/list-header/size-xl.svg +1 -1
  572. package/docs/design/templates/list-header-dark.svg +1 -1
  573. package/docs/design/templates/list-header.svg +1 -1
  574. package/docs/design/templates/message-composer/chat-dark.svg +1 -0
  575. package/docs/design/templates/message-composer/chat.svg +1 -0
  576. package/docs/design/templates/{composer → message-composer}/prompt-dark.svg +1 -1
  577. package/docs/design/templates/{composer → message-composer}/prompt.svg +1 -1
  578. package/docs/design/templates/message-composer-dark.svg +1 -0
  579. package/docs/design/templates/message-composer.svg +1 -0
  580. package/docs/design/templates/progress-bar/determinate-dark.svg +1 -0
  581. package/docs/design/templates/progress-bar/determinate.svg +1 -0
  582. package/docs/design/templates/progress-bar/tones-dark.svg +1 -0
  583. package/docs/design/templates/progress-bar/tones.svg +1 -0
  584. package/docs/design/templates/progress-bar-dark.svg +1 -0
  585. package/docs/design/templates/progress-bar.svg +1 -0
  586. package/docs/design/templates/progress-ring/sizes-dark.svg +1 -0
  587. package/docs/design/templates/progress-ring/sizes.svg +1 -0
  588. package/docs/design/templates/progress-ring/tones-dark.svg +1 -0
  589. package/docs/design/templates/progress-ring/tones.svg +1 -0
  590. package/docs/design/templates/progress-ring-dark.svg +1 -0
  591. package/docs/design/templates/progress-ring.svg +1 -0
  592. package/docs/design/templates/radio-group/horizontal-dark.svg +1 -0
  593. package/docs/design/templates/radio-group/horizontal.svg +1 -0
  594. package/docs/design/templates/radio-group/vertical-dark.svg +1 -0
  595. package/docs/design/templates/radio-group/vertical.svg +1 -0
  596. package/docs/design/templates/radio-group-dark.svg +1 -0
  597. package/docs/design/templates/radio-group.svg +1 -0
  598. package/docs/design/templates/segmented-control/equal-dark.svg +1 -1
  599. package/docs/design/templates/segmented-control/equal.svg +1 -1
  600. package/docs/design/templates/segmented-control/pill-small-dark.svg +1 -1
  601. package/docs/design/templates/segmented-control/pill-small.svg +1 -1
  602. package/docs/design/templates/segmented-control-dark.svg +1 -1
  603. package/docs/design/templates/segmented-control.svg +1 -1
  604. package/docs/design/templates/select/compact-dark.svg +1 -0
  605. package/docs/design/templates/select/compact.svg +1 -0
  606. package/docs/design/templates/select/form-dark.svg +1 -0
  607. package/docs/design/templates/select/form.svg +1 -0
  608. package/docs/design/templates/select/icons-dark.svg +1 -0
  609. package/docs/design/templates/select/icons.svg +1 -0
  610. package/docs/design/templates/select-dark.svg +1 -0
  611. package/docs/design/templates/select.svg +1 -0
  612. package/docs/design/templates/slider/compact-dark.svg +1 -0
  613. package/docs/design/templates/slider/compact.svg +1 -0
  614. package/docs/design/templates/slider/readout-dark.svg +1 -0
  615. package/docs/design/templates/slider/readout.svg +1 -0
  616. package/docs/design/templates/slider/ticks-dark.svg +1 -0
  617. package/docs/design/templates/slider/ticks.svg +1 -0
  618. package/docs/design/templates/slider-dark.svg +1 -0
  619. package/docs/design/templates/slider.svg +1 -0
  620. package/docs/design/templates/switch/compact-dark.svg +1 -0
  621. package/docs/design/templates/switch/compact.svg +1 -0
  622. package/docs/design/templates/switch/states-dark.svg +1 -0
  623. package/docs/design/templates/switch/states.svg +1 -0
  624. package/docs/design/templates/switch-dark.svg +1 -0
  625. package/docs/design/templates/switch.svg +1 -0
  626. package/docs/design/templates/tag-field/error-dark.svg +1 -0
  627. package/docs/design/templates/tag-field/error.svg +1 -0
  628. package/docs/design/templates/tag-field/tags-dark.svg +1 -0
  629. package/docs/design/templates/tag-field/tags.svg +1 -0
  630. package/docs/design/templates/tag-field-dark.svg +1 -0
  631. package/docs/design/templates/tag-field.svg +1 -0
  632. package/docs/design/templates/text-field/compact-dark.svg +1 -0
  633. package/docs/design/templates/text-field/compact.svg +1 -0
  634. package/docs/design/templates/text-field/error-dark.svg +1 -0
  635. package/docs/design/templates/text-field/error.svg +1 -0
  636. package/docs/design/templates/text-field/labeled-dark.svg +1 -0
  637. package/docs/design/templates/text-field/labeled.svg +1 -0
  638. package/docs/design/templates/text-field/multiline-dark.svg +1 -0
  639. package/docs/design/templates/text-field/multiline.svg +1 -0
  640. package/docs/design/templates/text-field/search-dark.svg +1 -0
  641. package/docs/design/templates/text-field/search.svg +1 -0
  642. package/docs/design/templates/text-field-dark.svg +1 -0
  643. package/docs/design/templates/text-field.svg +1 -0
  644. package/docs/design/templates/toolbar/title-and-actions-dark.svg +1 -1
  645. package/docs/design/templates/toolbar/title-and-actions.svg +1 -1
  646. package/docs/design/templates/toolbar/width-visibility-320-dark.svg +1 -1
  647. package/docs/design/templates/toolbar/width-visibility-320.svg +1 -1
  648. package/docs/design/templates/toolbar/width-visibility-600-dark.svg +1 -1
  649. package/docs/design/templates/toolbar/width-visibility-600.svg +1 -1
  650. package/docs/design/templates/toolbar-dark.svg +1 -1
  651. package/docs/design/templates/toolbar.svg +1 -1
  652. package/docs/design/templates/value-table/details-dark.svg +1 -1
  653. package/docs/design/templates/value-table/details.svg +1 -1
  654. package/docs/design/templates/value-table-dark.svg +1 -1
  655. package/docs/design/templates/value-table.svg +1 -1
  656. package/docs/design/templates.md +19 -6
  657. package/docs/design-philosophy.md +6 -6
  658. package/docs/disclosure.md +63 -0
  659. package/docs/examples/component-catalog-extension.json +2 -2
  660. package/docs/layout.md +16 -7
  661. package/docs/list-detail-dialog.md +96 -0
  662. package/docs/manual-test-plan.md +1 -1
  663. package/docs/{composer.md → message-composer.md} +41 -28
  664. package/docs/overlay-toast.md +62 -0
  665. package/docs/overlay-tooltip.md +53 -0
  666. package/docs/progress.md +62 -0
  667. package/docs/recipes.md +15 -21
  668. package/docs/slider.md +64 -0
  669. package/docs/surface-scaffold.md +155 -88
  670. package/docs/tag-field.md +66 -0
  671. package/docs/type-contracts.md +8 -8
  672. package/docs/ui-analyzer.md +1 -1
  673. package/docs/ui-doctor.md +11 -6
  674. package/docs/ux-demo.md +6 -6
  675. package/docs/webawesome-migration.md +80 -0
  676. package/docs/webawesome-theme.md +57 -35
  677. package/docs/workbench-dialog.md +85 -0
  678. package/docs/workbench.md +10 -6
  679. package/docs/writing.md +10 -8
  680. package/doctor/copy-capitalization-checks.mjs +18 -9
  681. package/llms.txt +131 -57
  682. package/package.json +156 -39
  683. package/ux-demo/recipes/composer-form.tsx +18 -19
  684. package/ux-demo/recipes/list-detail-dialog.tsx +55 -162
  685. package/ux-demo/recipes/mount-recipe.ts +7 -6
  686. package/ux-demo/recipes/types.ts +1 -0
  687. package/ai/components/icon-button.md +0 -82
  688. package/ai/components/icon-toggle-button.md +0 -80
  689. package/ai/components/token-search-field.md +0 -107
  690. package/dist/app-tab.js +0 -6
  691. package/dist/app-tab.js.map +0 -1
  692. package/dist/browser/app-tab.js +0 -4
  693. package/dist/browser/composer.js +0 -4
  694. package/dist/browser/icon-toggle-button.js +0 -4
  695. package/dist/browser/token-search-field.js +0 -4
  696. package/dist/chunk-2MSPNRWJ.js.map +0 -1
  697. package/dist/chunk-7IUEBNCO.js.map +0 -1
  698. package/dist/chunk-AV7CPAPT.js +0 -82
  699. package/dist/chunk-AV7CPAPT.js.map +0 -1
  700. package/dist/chunk-BYFTHA4I.js.map +0 -1
  701. package/dist/chunk-CA7LNX3J.js +0 -44
  702. package/dist/chunk-CA7LNX3J.js.map +0 -1
  703. package/dist/chunk-ELCMSQNJ.js.map +0 -1
  704. package/dist/chunk-ETCWQLJV.js.map +0 -1
  705. package/dist/chunk-FDZNYD4C.js.map +0 -1
  706. package/dist/chunk-FR76ZJQC.js +0 -90
  707. package/dist/chunk-FR76ZJQC.js.map +0 -1
  708. package/dist/chunk-HQZYKJ56.js.map +0 -1
  709. package/dist/chunk-HZPHCSCS.js.map +0 -1
  710. package/dist/chunk-IM3GKYOG.js.map +0 -1
  711. package/dist/chunk-JOR5LGYE.js.map +0 -1
  712. package/dist/chunk-K4AT3V3J.js.map +0 -1
  713. package/dist/chunk-LL45C7BB.js.map +0 -1
  714. package/dist/chunk-LOSRXZAH.js.map +0 -1
  715. package/dist/chunk-LPHU44S3.js.map +0 -1
  716. package/dist/chunk-M5KZ26VV.js.map +0 -1
  717. package/dist/chunk-MF6ZUUJZ.js.map +0 -1
  718. package/dist/chunk-MXNIVEVL.js.map +0 -1
  719. package/dist/chunk-NS762OVM.js +0 -222
  720. package/dist/chunk-NS762OVM.js.map +0 -1
  721. package/dist/chunk-PKL6QJKK.js.map +0 -1
  722. package/dist/chunk-QTSMHH5J.js.map +0 -1
  723. package/dist/chunk-TDMHA7C3.js.map +0 -1
  724. package/dist/chunk-TGLUDQP2.js.map +0 -1
  725. package/dist/chunk-U6QYTMDB.js.map +0 -1
  726. package/dist/chunk-VFYO3UGZ.js +0 -45
  727. package/dist/chunk-VFYO3UGZ.js.map +0 -1
  728. package/dist/chunk-W4IK7AWD.js.map +0 -1
  729. package/dist/chunk-YBWQR2OK.js.map +0 -1
  730. package/dist/composer.js +0 -5
  731. package/dist/composer.js.map +0 -1
  732. package/dist/icon-button.d.ts +0 -46
  733. package/dist/icon-button.js +0 -6
  734. package/dist/icon-button.js.map +0 -1
  735. package/dist/icon-toggle-button.d.ts +0 -42
  736. package/dist/icon-toggle-button.js +0 -6
  737. package/dist/icon-toggle-button.js.map +0 -1
  738. package/dist/styles/components/actions/icon-button/icon-button.css +0 -22
  739. package/dist/styles/components/actions/icon-toggle-button/icon-toggle-button.css +0 -83
  740. package/dist/styles/icon-button.css +0 -22
  741. package/dist/styles/icon-toggle-button.css +0 -83
  742. package/dist/token-search-field.d.ts +0 -3
  743. package/dist/token-search-field.js +0 -5
  744. package/dist/token-search-field.js.map +0 -1
  745. package/dist/token-search-model.d.ts +0 -3
  746. package/dist/token-search-model.js +0 -3
  747. package/dist/token-search-model.js.map +0 -1
  748. package/dist/wire-composers.js +0 -3
  749. package/dist/wire-token-search-fields.js +0 -6
  750. package/docs/design/templates/composer/chat-dark.svg +0 -1
  751. package/docs/design/templates/composer/chat.svg +0 -1
  752. package/docs/design/templates/composer-dark.svg +0 -1
  753. package/docs/design/templates/composer.svg +0 -1
  754. /package/docs/design/templates/{token-search-field → search-field}/empty-dark.svg +0 -0
  755. /package/docs/design/templates/{token-search-field → search-field}/empty.svg +0 -0
  756. /package/docs/design/templates/{token-search-field → search-field}/tokens-dark.svg +0 -0
  757. /package/docs/design/templates/{token-search-field → search-field}/tokens.svg +0 -0
  758. /package/docs/design/templates/{token-search-field-dark.svg → search-field-dark.svg} +0 -0
  759. /package/docs/design/templates/{token-search-field.svg → search-field.svg} +0 -0
@@ -29,7 +29,7 @@ Provide complete toolbar action geometry through configuration, including semant
29
29
 
30
30
  - [SegmentedControl](./segmented-control.md) (nearest)
31
31
  - [Button Group](./wa-button-group.md) (prefer-over)
32
- - [IconToggleButton](./icon-toggle-button.md) (nearest) — Outside a Toolbar, a standalone icon-only toggle is an IconToggleButton.
32
+ - [Button](./button.md) (nearest) — Outside a Toolbar, a standalone icon-only toggle is an icon-only Button with pressed.
33
33
 
34
34
  ## Imports
35
35
 
@@ -101,7 +101,7 @@ Margin: none · border: self · padding: self (layout role: structure). `self` m
101
101
 
102
102
  - Name the group when its relationship is not evident from context.
103
103
  - A disabled native button (disabled, or aria-disabled="true" when it must stay focusable) dims to half opacity with the not-allowed cursor and no hover surface; a disabled raw wa-button paints no hover surface either. Do not add disabled styling yourself.
104
- - Name an icon-only button or link with aria-label, not title. Once any help-tag installer is imported (select/register, popup-menu/register, or help-tags/register), it shows an aria-hidden Web Awesome help tag repeating that name after a 500ms hover and at once on keyboard focus, hidden on a press and on Escape, and never joins aria-labelledby. A native title keeps the browser tooltip and gets no second tag.
104
+ - Name an icon-only button or link with aria-label, not title. Once any help-tag installer is imported (select/register, popup-menu/register, or help-tags/register), it shows an aria-hidden help tag repeating that name after a 500ms hover and at once on keyboard focus, hidden on a press and on Escape, and never joins aria-labelledby. A native title keeps the browser tooltip and gets no second tag.
105
105
  - In an overlay Pane header (headerPresentation="overlay"), overlay NavStack chrome (chromePresentation="overlay") or bottom toolbar (bottomToolbarPresentation="overlay"), or a DialogSurface floating header's header-actions (headerPresentation="floating"), a default-tone group (not dark-toned, not an avatar scrim) takes --kui-color-text for its controls, so they keep WCAG AA over content passing beneath the translucent chrome material.
106
106
  - A dark-toned group's hover paints a 14% surface wash over its loud fill, on one control of a group or across a lone control's whole group, so the on-loud icon keeps at least 3:1 over a light page and well above it in dark.
107
107
 
@@ -121,6 +121,6 @@ Everything else is internal: `kerf-ui-analyze` reports private or unknown `.kui-
121
121
 
122
122
  ## Related
123
123
 
124
- - Components: [LucideIcon](./lucide-icon.md), [SegmentedControl](./segmented-control.md), [Button Group](./wa-button-group.md), [IconToggleButton](./icon-toggle-button.md).
124
+ - Components: [LucideIcon](./lucide-icon.md), [SegmentedControl](./segmented-control.md), [Button Group](./wa-button-group.md), [Button](./button.md).
125
125
  - Docs: [`docs/component-selection.md`](../../docs/component-selection.md), [`docs/component-selection.md#problem-to-component-matrix`](../../docs/component-selection.md#problem-to-component-matrix).
126
126
  - UX catalog route: `?component=toolbar-control-group`.
@@ -0,0 +1,81 @@
1
+ # Tooltip
2
+
3
+ <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
+
5
+ `@kerfjs/ui:tooltip` · Kerf UI · CSS composition · Feedback
6
+
7
+ Styling for kerfjs/overlay's tooltip(): the help tag's look (loud neutral fill, on-loud 14px text, 3px radius) for a hover and focus tooltip on any element, wrapping at 40 characters, with entrance and exit motion.
8
+
9
+ ## When to use
10
+
11
+ Explain a control or value on hover and keyboard focus with a styled tooltip, without hand-written tooltip CSS.
12
+
13
+ - A control or value needs a short explanation on hover and keyboard focus (a longer action description, a chart point, a truncated label): import @kerfjs/ui/overlay-tooltip.css once and call tooltip(anchor, content) from kerfjs/overlay with exitClass 'kui-tooltip-exit' and exitDuration 100.
14
+ - The explanation has structure (a bold line over a detail): pass a render function; its content inherits the tooltip's colors.
15
+
16
+ **Not when:**
17
+
18
+ - Do not add a tooltip to an icon-only control in a ToolbarControlGroup, an icon-only Button, Select, or PopupMenu; @kerfjs/ui/help-tags-register already shows its help tag.
19
+ - Do not put interactive content or the only copy of important information in a tooltip; use an AnchoredSurface or visible text.
20
+ - Do not hand-write tooltip CSS or use wa-tooltip.
21
+
22
+ **Alternatives:**
23
+
24
+ - [AnchoredSurface](./anchored-surface.md) (nearest) — Use an AnchoredSurface for interactive or persistent help that the person opens.
25
+
26
+ ## Imports
27
+
28
+ - CSS: import `@kerfjs/ui/overlay-tooltip.css` once.
29
+ - Declared side effects: css.
30
+
31
+ ## Props
32
+
33
+ No props: this entry has no JavaScript API.
34
+
35
+ **Variants (configure, do not restyle):**
36
+
37
+ - plain text tooltip, wrapped at 40 characters
38
+ - structured content from a render function
39
+ - any placement tooltip() supports (top by default)
40
+ - native: true top-layer hosting
41
+
42
+ ## Composition
43
+
44
+ - Parents: any.
45
+ - Contexts: `application-ui`.
46
+ - Children: unrestricted.
47
+
48
+ ## State and wiring
49
+
50
+ **The app owns:** which elements get a tooltip and its content; placement, delay, and native top-layer hosting; the disposer that removes a tooltip's listeners.
51
+
52
+ No wiring helper.
53
+
54
+ ## Geometry
55
+
56
+ Margin: self · border: self · padding: self (layout role: feedback). `self` means the component already owns it — do not add wrapper padding, margin, or borders around it.
57
+
58
+ - tooltip() positions the wrapper beside its anchor; the stylesheet caps its width at 40 characters within the viewport.
59
+
60
+ ## Accessibility
61
+
62
+ - tooltip() shows on hover and on keyboard focus, gives the wrapper role tooltip, and hides on leave or blur; keep the anchor's accessible name complete without it.
63
+ - The loud neutral fill with on-loud text meets WCAG AA; forced colors draw CanvasText on Canvas, and the entrance is skipped under prefers-reduced-motion or the static-effects switch.
64
+
65
+ ## Styling boundary
66
+
67
+ The component owns its own styles. Configure it through its props and variants; do not override its internals.
68
+
69
+ Public class hooks (select for layout placement only, never to change the component's look): `kerf-tooltip`, `kui-tooltip-exit`.
70
+
71
+ Classes an application may place on its own elements: `kerf-tooltip`, `kui-tooltip-exit`.
72
+
73
+ Public tokens it reads: `--kui-overlay-tooltip-z-index`. Set a token only where its public contract allows; prefer a prop.
74
+
75
+ Everything else is internal: `kerf-ui-analyze` reports private or unknown `.kui-*` selectors (`KUI-L001`, `KUI-L010`), unknown or private tokens (`KUI-L002`, `KUI-L012`), and any application rule that restyles the component, forced dimensions included (`KUI-L019`).
76
+
77
+ ## Related
78
+
79
+ - Components: [AnchoredSurface](./anchored-surface.md).
80
+ - Docs: [`docs/overlay-tooltip.md`](../../docs/overlay-tooltip.md), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
81
+ - UX catalog route: `?component=tooltip`.
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-accordion-item` · Web Awesome · component · Layout · recommendation: supported
5
+ `@kerfjs/ui:wa-accordion-item` · Web Awesome · component · Layout · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Experimental labeled disclosure section used by an accordion.
9
+ Ecosystem accordion item; use a Kerf Disclosure in a named group.
10
+
11
+ - Experimental labeled disclosure section used by an accordion.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Disclosure (@kerfjs/ui/disclosure), a native details element, and give Disclosures the same name for an accordion.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Disclosure](./disclosure.md) (prefer-kerf) — Use Disclosure for show-and-hide content; Disclosures sharing a name form an accordion.
14
20
 
15
21
  ## Imports
16
22
 
@@ -50,6 +56,6 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
50
56
 
51
57
  ## Related
52
58
 
53
- - Components: [Icon](./wa-icon.md).
54
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
59
+ - Components: [Icon](./wa-icon.md), [Disclosure](./disclosure.md).
60
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
55
61
  - UX catalog route: `?component=wa-accordion-item`.
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-accordion` · Web Awesome · component · Layout · recommendation: supported
5
+ `@kerfjs/ui:wa-accordion` · Web Awesome · component · Layout · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Coordinates one or more collapsible content sections.
9
+ Ecosystem accordion; use Kerf Disclosures sharing a name.
10
+
11
+ - Coordinates one or more collapsible content sections.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Disclosure (@kerfjs/ui/disclosure), a native details element, and give Disclosures the same name for an accordion.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Disclosure](./disclosure.md) (prefer-kerf) — Use Disclosure for show-and-hide content; Disclosures sharing a name form an accordion.
14
20
 
15
21
  ## Imports
16
22
 
@@ -60,6 +66,6 @@ Public tokens it reads: `--kui-wa-surface-margin`, `--kui-wa-surface-inset`, `--
60
66
 
61
67
  ## Related
62
68
 
63
- - Components: [Accordion Item](./wa-accordion-item.md).
64
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
69
+ - Components: [Accordion Item](./wa-accordion-item.md), [Disclosure](./disclosure.md).
70
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
65
71
  - UX catalog route: `?component=wa-accordion`.
@@ -11,6 +11,7 @@ Specialized animated media; use only for a concrete product requirement.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -51,5 +52,5 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
51
52
  ## Related
52
53
 
53
54
  - Components: [Icon](./wa-icon.md).
54
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-overlap-policy`](../../docs/component-selection.md#web-awesome-overlap-policy).
55
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
55
56
  - UX catalog route: `?component=wa-animated-image`.
@@ -11,6 +11,7 @@ Declarative Web Animations API wrapper with preset effects.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -11,6 +11,7 @@ Person or entity image with initials fallback.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-badge` · Web Awesome · component · Feedback · recommendation: supported
5
+ `@kerfjs/ui:wa-badge` · Web Awesome · component · Feedback · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Compact status or count label with semantic variants.
9
+ Ecosystem badge; use Kerf Badge.
10
+
11
+ - Compact status or count label with semantic variants.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Badge for compact status, count, or category metadata.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Badge](./badge.md) (prefer-kerf) — Use Badge for compact status, count, or category metadata.
14
20
 
15
21
  ## Imports
16
22
 
@@ -51,5 +57,6 @@ Public tokens it reads: `--kui-wa-badge-accent-foreground`, `--kui-wa-badge-fill
51
57
 
52
58
  ## Related
53
59
 
60
+ - Components: [Badge](./badge.md).
54
61
  - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
55
62
  - UX catalog route: `?component=wa-badge`.
@@ -11,6 +11,7 @@ One link or current-location item in a breadcrumb.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -11,6 +11,7 @@ Ordered navigation trail for the current location.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -2,15 +2,17 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-button-group` · Web Awesome · component · Actions · recommendation: conditional
5
+ `@kerfjs/ui:wa-button-group` · Web Awesome · component · Actions · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Exceptional grouped actions; prefer Kerf SegmentedControl for exclusive choices.
9
+ Ecosystem button group; use Kerf ToolbarControlGroup, SplitButton, or SegmentedControl.
10
+
11
+ - Exceptional grouped actions; prefer Kerf SegmentedControl for exclusive choices.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use ToolbarControlGroup or SplitButton for grouped actions and SegmentedControl for one-of-many choices.
14
16
 
15
17
  **Alternatives:**
16
18
 
@@ -56,5 +58,5 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
56
58
  ## Related
57
59
 
58
60
  - Components: [Button](./wa-button.md), [SegmentedControl](./segmented-control.md), [SplitButton](./split-button.md).
59
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-overlap-policy`](../../docs/component-selection.md#web-awesome-overlap-policy).
61
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
60
62
  - UX catalog route: `?component=wa-button-group`.
@@ -2,19 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-button` · Web Awesome · component · Actions · recommendation: supported
5
+ `@kerfjs/ui:wa-button` · Web Awesome · component · Actions · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Action control with semantic variants, appearances, loading, and icon support.
9
+ Ecosystem action button; use Kerf Button.
10
+
11
+ - Action control with semantic variants, appearances, loading, and icon support.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Button for a text, text-and-icon, or icon-only action.
14
16
 
15
17
  **Alternatives:**
16
18
 
17
- - [IconButton](./icon-button.md) (prefer-kerf) — For an icon-only button with a LucideIcon, use IconButton for Web Awesome's square icon-button geometry.
19
+ - [Button](./button.md) (prefer-kerf) — Use Button for a text, text-and-icon, or icon-only action.
18
20
 
19
21
  ## Imports
20
22
 
@@ -54,6 +56,6 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
54
56
 
55
57
  ## Related
56
58
 
57
- - Components: [Icon](./wa-icon.md), [Spinner](./wa-spinner.md), [IconButton](./icon-button.md).
59
+ - Components: [Icon](./wa-icon.md), [Spinner](./wa-spinner.md), [Button](./button.md).
58
60
  - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
59
61
  - UX catalog route: `?component=wa-button`.
@@ -2,19 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-callout` · Web Awesome · component · Feedback · recommendation: supported
5
+ `@kerfjs/ui:wa-callout` · Web Awesome · component · Feedback · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Prominent contextual message with semantic variants.
9
+ Ecosystem callout; use Kerf StateBanner.
10
+
11
+ - Prominent contextual message with semantic variants.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use StateBanner for a persistent inline status, alert, or emphasized message.
14
16
 
15
17
  **Alternatives:**
16
18
 
17
- - [StateBanner](./state-banner.md) (prefer-kerf)
19
+ - [StateBanner](./state-banner.md) (prefer-kerf) — Use StateBanner for a persistent inline status, alert, or emphasized message.
18
20
 
19
21
  ## Imports
20
22
 
@@ -54,5 +56,5 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
54
56
  ## Related
55
57
 
56
58
  - Components: [StateBanner](./state-banner.md).
57
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-overlap-policy`](../../docs/component-selection.md#web-awesome-overlap-policy).
59
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
58
60
  - UX catalog route: `?component=wa-callout`.
@@ -2,15 +2,22 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-card` · Web Awesome · component · Layout · recommendation: supported
5
+ `@kerfjs/ui:wa-card` · Web Awesome · component · Layout · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Groups related content and optional header, media, and footer slots.
9
+ Ecosystem card; use Kerf ContentItem or SunkenPanel.
10
+
11
+ - Groups related content and optional header, media, and footer slots.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use ContentItem (appearance="surface" for a raised card) to contain related content, or SunkenPanel for a lowered region.
16
+
17
+ **Alternatives:**
18
+
19
+ - [ContentItem](./content-item.md) (prefer-kerf) — Use ContentItem, with appearance="surface" for a raised card, to contain related content.
20
+ - [SunkenPanel](./sunken-panel.md) (prefer-kerf) — Use SunkenPanel for a lowered region holding a content stack.
14
21
 
15
22
  ## Imports
16
23
 
@@ -55,5 +62,6 @@ Public tokens it reads: `--kui-wa-surface-margin`, `--kui-wa-surface-inset`, `--
55
62
 
56
63
  ## Related
57
64
 
58
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
65
+ - Components: [ContentItem](./content-item.md), [SunkenPanel](./sunken-panel.md).
66
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
59
67
  - UX catalog route: `?component=wa-card`.
@@ -11,6 +11,7 @@ One content slide inside a carousel.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -11,6 +11,7 @@ Navigable horizontal or vertical collection of slides.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -2,15 +2,22 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-checkbox-group` · Web Awesome · component · Forms · recommendation: supported
5
+ `@kerfjs/ui:wa-checkbox-group` · Web Awesome · component · Forms · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Labels and validates a related set of checkboxes.
9
+ Ecosystem checkbox group; use Kerf Checkbox rows or ChoiceChips.
10
+
11
+ - Labels and validates a related set of checkboxes.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Checkbox rows in a List, or ChoiceChips multiple for wrapping pills.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Checkbox](./checkbox.md) (prefer-kerf) — Use Checkbox rows in a List, or ChoiceChips multiple for wrapping pills.
20
+ - [ChoiceChips](./choice-chips.md) (prefer-kerf) — Use Checkbox rows in a List, or ChoiceChips multiple for wrapping pills.
14
21
 
15
22
  ## Imports
16
23
 
@@ -50,6 +57,6 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
50
57
 
51
58
  ## Related
52
59
 
53
- - Components: [Checkbox](./wa-checkbox.md).
60
+ - Components: [Checkbox](./wa-checkbox.md), [Checkbox](./checkbox.md), [ChoiceChips](./choice-chips.md).
54
61
  - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
55
62
  - UX catalog route: `?component=wa-checkbox-group`.
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-checkbox` · Web Awesome · component · Forms · recommendation: supported
5
+ `@kerfjs/ui:wa-checkbox` · Web Awesome · component · Forms · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Binary form control with checked, indeterminate, and disabled states.
9
+ Ecosystem checkbox; use Kerf Checkbox.
10
+
11
+ - Binary form control with checked, indeterminate, and disabled states.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Checkbox for a submitted option.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Checkbox](./checkbox.md) (prefer-kerf) — Use Checkbox for a submitted option.
14
20
 
15
21
  ## Imports
16
22
 
@@ -50,6 +56,6 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
50
56
 
51
57
  ## Related
52
58
 
53
- - Components: [Icon](./wa-icon.md).
59
+ - Components: [Icon](./wa-icon.md), [Checkbox](./checkbox.md).
54
60
  - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
55
61
  - UX catalog route: `?component=wa-checkbox`.
@@ -2,15 +2,23 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-color-picker` · Web Awesome · component · Forms · recommendation: supported
5
+ `@kerfjs/ui:wa-color-picker` · Web Awesome · component · Forms · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Color input with swatches, formats, opacity, and eyedropper support.
9
+ Ecosystem color picker; use the Kerf ColorField or ColorPicker.
10
+
11
+ - Only inside an application that has already adopted the optional Web Awesome integration.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use ColorField (@kerfjs/ui/color-field) for a field that opens a picker, ColorPicker (@kerfjs/ui/color-picker) inline, or ColorSwatches for a fixed palette.
16
+
17
+ **Alternatives:**
18
+
19
+ - [ColorField](./color-field.md) (prefer-kerf) — Use ColorField for a color in a form or inspector.
20
+ - [ColorPicker](./color-picker.md) (prefer-kerf) — Use an inline ColorPicker when the color is the view's main task.
21
+ - [ColorSwatches](./color-swatches.md) (prefer-kerf) — Use ColorSwatches for a fixed palette.
14
22
 
15
23
  ## Imports
16
24
 
@@ -50,6 +58,6 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
50
58
 
51
59
  ## Related
52
60
 
53
- - Components: [Button](./wa-button.md), [Button Group](./wa-button-group.md), [Input](./wa-input.md), [Popup](./wa-popup.md).
54
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
61
+ - Components: [Button](./wa-button.md), [Button Group](./wa-button-group.md), [Input](./wa-input.md), [Popup](./wa-popup.md), [ColorField](./color-field.md), [ColorPicker](./color-picker.md), [ColorSwatches](./color-swatches.md).
62
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
55
63
  - UX catalog route: `?component=wa-color-picker`.
@@ -11,6 +11,7 @@ Specialized before-and-after media; use only when specifically required.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -51,5 +52,5 @@ Theme it only through `@kerfjs/ui/webawesome.css` and cataloged tokens. Do not r
51
52
  ## Related
52
53
 
53
54
  - Components: [Icon](./wa-icon.md).
54
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-overlap-policy`](../../docs/component-selection.md#web-awesome-overlap-policy).
55
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
55
56
  - UX catalog route: `?component=wa-comparison`.
@@ -11,6 +11,7 @@ Copies a supplied value and announces success or failure.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17
 
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-details` · Web Awesome · component · Layout · recommendation: supported
5
+ `@kerfjs/ui:wa-details` · Web Awesome · component · Layout · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Single disclosure panel for secondary information.
9
+ Ecosystem disclosure; use the Kerf Disclosure.
10
+
11
+ - Single disclosure panel for secondary information.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use Disclosure (@kerfjs/ui/disclosure), a native details element, and give Disclosures the same name for an accordion.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Disclosure](./disclosure.md) (prefer-kerf) — Use Disclosure for show-and-hide content; Disclosures sharing a name form an accordion.
14
20
 
15
21
  ## Imports
16
22
 
@@ -56,6 +62,6 @@ Public tokens it reads: `--kui-wa-surface-margin`, `--kui-wa-surface-inset`, `--
56
62
 
57
63
  ## Related
58
64
 
59
- - Components: [Icon](./wa-icon.md).
60
- - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
65
+ - Components: [Icon](./wa-icon.md), [Disclosure](./disclosure.md).
66
+ - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage), [`docs/component-selection.md#web-awesome-integration`](../../docs/component-selection.md#web-awesome-integration).
61
67
  - UX catalog route: `?component=wa-details`.
@@ -2,15 +2,21 @@
2
2
 
3
3
  <!-- Generated by scripts/sync-component-docs.mjs from ai/component-catalog.json and ai/component-composition.json. Do not edit; run `npm run catalog:sync`. -->
4
4
 
5
- `@kerfjs/ui:wa-dialog` · Web Awesome · component · Layout · recommendation: supported
5
+ `@kerfjs/ui:wa-dialog` · Web Awesome · component · Layout · recommendation: avoid
6
6
 
7
7
  ## When to use
8
8
 
9
- Modal surface for focused tasks and confirmations.
9
+ Ecosystem dialog; use Kerf DialogSurface with openDialog and closeDialog.
10
+
11
+ - Modal surface for focused tasks and confirmations.
10
12
 
11
13
  **Not when:**
12
14
 
13
- - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
15
+ - Do not use it in Kerf UI; use DialogSurface with openDialog and closeDialog, or a kerfjs/overlay dialog.
16
+
17
+ **Alternatives:**
18
+
19
+ - [Surface Scaffolds](./surface-scaffold.md) (prefer-kerf) — Use DialogSurface with openDialog and closeDialog, or a kerfjs/overlay dialog.
14
20
 
15
21
  ## Imports
16
22
 
@@ -54,6 +60,6 @@ Classes an application may place on its own elements: `hide-actions`.
54
60
 
55
61
  ## Related
56
62
 
57
- - Components: [Button](./wa-button.md).
63
+ - Components: [Button](./wa-button.md), [Surface Scaffolds](./surface-scaffold.md).
58
64
  - Docs: [`docs/webawesome-theme.md#coverage`](../../docs/webawesome-theme.md#coverage).
59
65
  - UX catalog route: `?component=wa-dialog`.
@@ -11,6 +11,7 @@ Visual separator for related groups of content.
11
11
  **Not when:**
12
12
 
13
13
  - Do not choose it from catalog presence alone; confirm that its semantic and interaction contract matches the product need.
14
+ - Use it only in an application that has adopted the optional Web Awesome integration (registration imports plus @kerfjs/ui/webawesome.css); a Kerf-only application uses a Kerf component or a native element instead.
14
15
 
15
16
  ## Imports
16
17