ngwr 8.0.0 → 9.0.0

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 (431) hide show
  1. package/README.md +75 -28
  2. package/action-sheet/styles/_index.scss +93 -0
  3. package/alert/styles/_index.scss +10 -10
  4. package/anchor/styles/_index.scss +3 -3
  5. package/back-top/styles/_index.scss +1 -1
  6. package/badge/styles/_tag.scss +3 -3
  7. package/bar-chart/styles/_index.scss +4 -4
  8. package/border-glow/styles/_index.scss +3 -3
  9. package/breadcrumbs/styles/_index.scss +3 -3
  10. package/burger/styles/_index.scss +1 -1
  11. package/button/styles/_index.scss +4 -4
  12. package/calendar/styles/_index.scss +4 -4
  13. package/calendar-heatmap/styles/_index.scss +3 -3
  14. package/card/styles/_index.scss +5 -5
  15. package/carousel/styles/_index.scss +5 -5
  16. package/cascader/styles/_index.scss +15 -15
  17. package/checkbox/styles/_index.scss +20 -5
  18. package/collapse/styles/_index.scss +6 -6
  19. package/color-picker/styles/_index.scss +15 -9
  20. package/command-palette/styles/_index.scss +19 -16
  21. package/compare/styles/_index.scss +3 -3
  22. package/context-menu/styles/_index.scss +16 -6
  23. package/counter/styles/_index.scss +12 -1
  24. package/date-picker/styles/_index.scss +8 -8
  25. package/descriptions/styles/_index.scss +9 -9
  26. package/dialog/styles/_index.scss +7 -6
  27. package/divider/styles/_index.scss +2 -2
  28. package/donut-chart/styles/_index.scss +3 -3
  29. package/drag-drop/styles/_index.scss +11 -6
  30. package/drawer/styles/_index.scss +15 -6
  31. package/dropdown/styles/_index.scss +5 -5
  32. package/empty/styles/_index.scss +4 -4
  33. package/fesm2022/ngwr-action-sheet.mjs +81 -0
  34. package/fesm2022/ngwr-action-sheet.mjs.map +1 -0
  35. package/fesm2022/ngwr-affix.mjs +3 -3
  36. package/fesm2022/ngwr-alert.mjs +4 -4
  37. package/fesm2022/ngwr-alert.mjs.map +1 -1
  38. package/fesm2022/ngwr-anchor.mjs +4 -4
  39. package/fesm2022/ngwr-anchor.mjs.map +1 -1
  40. package/fesm2022/ngwr-aurora.mjs +5 -4
  41. package/fesm2022/ngwr-aurora.mjs.map +1 -1
  42. package/fesm2022/ngwr-avatar.mjs +4 -4
  43. package/fesm2022/ngwr-avatar.mjs.map +1 -1
  44. package/fesm2022/ngwr-back-top.mjs +4 -4
  45. package/fesm2022/ngwr-back-top.mjs.map +1 -1
  46. package/fesm2022/ngwr-badge.mjs +8 -8
  47. package/fesm2022/ngwr-badge.mjs.map +1 -1
  48. package/fesm2022/ngwr-bar-chart.mjs +4 -4
  49. package/fesm2022/ngwr-bar-chart.mjs.map +1 -1
  50. package/fesm2022/ngwr-blur-text.mjs +3 -3
  51. package/fesm2022/ngwr-border-glow.mjs +4 -4
  52. package/fesm2022/ngwr-border-glow.mjs.map +1 -1
  53. package/fesm2022/ngwr-breadcrumbs.mjs +8 -8
  54. package/fesm2022/ngwr-breadcrumbs.mjs.map +1 -1
  55. package/fesm2022/ngwr-burger.mjs +4 -4
  56. package/fesm2022/ngwr-burger.mjs.map +1 -1
  57. package/fesm2022/ngwr-button.mjs +8 -8
  58. package/fesm2022/ngwr-button.mjs.map +1 -1
  59. package/fesm2022/ngwr-calendar-heatmap.mjs +4 -4
  60. package/fesm2022/ngwr-calendar-heatmap.mjs.map +1 -1
  61. package/fesm2022/ngwr-calendar.mjs +4 -4
  62. package/fesm2022/ngwr-calendar.mjs.map +1 -1
  63. package/fesm2022/ngwr-card.mjs +11 -11
  64. package/fesm2022/ngwr-card.mjs.map +1 -1
  65. package/fesm2022/ngwr-carousel.mjs +7 -7
  66. package/fesm2022/ngwr-carousel.mjs.map +1 -1
  67. package/fesm2022/ngwr-cascader.mjs +52 -60
  68. package/fesm2022/ngwr-cascader.mjs.map +1 -1
  69. package/fesm2022/ngwr-checkbox.mjs +74 -106
  70. package/fesm2022/ngwr-checkbox.mjs.map +1 -1
  71. package/fesm2022/ngwr-circular-text.mjs +5 -4
  72. package/fesm2022/ngwr-circular-text.mjs.map +1 -1
  73. package/fesm2022/ngwr-click-spark.mjs +5 -4
  74. package/fesm2022/ngwr-click-spark.mjs.map +1 -1
  75. package/fesm2022/ngwr-clipboard.mjs +4 -4
  76. package/fesm2022/ngwr-clipboard.mjs.map +1 -1
  77. package/fesm2022/ngwr-collapse.mjs +12 -12
  78. package/fesm2022/ngwr-collapse.mjs.map +1 -1
  79. package/fesm2022/ngwr-color-picker.mjs +58 -66
  80. package/fesm2022/ngwr-color-picker.mjs.map +1 -1
  81. package/fesm2022/ngwr-command-palette.mjs +4 -4
  82. package/fesm2022/ngwr-command-palette.mjs.map +1 -1
  83. package/fesm2022/ngwr-compare.mjs +4 -4
  84. package/fesm2022/ngwr-compare.mjs.map +1 -1
  85. package/fesm2022/ngwr-confetti.mjs +3 -3
  86. package/fesm2022/ngwr-context-menu.mjs +86 -15
  87. package/fesm2022/ngwr-context-menu.mjs.map +1 -1
  88. package/fesm2022/ngwr-cookie.mjs +19 -6
  89. package/fesm2022/ngwr-cookie.mjs.map +1 -1
  90. package/fesm2022/ngwr-counter.mjs +26 -12
  91. package/fesm2022/ngwr-counter.mjs.map +1 -1
  92. package/fesm2022/ngwr-date-adapter-fns.mjs +3 -3
  93. package/fesm2022/ngwr-date-adapter-luxon.mjs +3 -3
  94. package/fesm2022/ngwr-date-adapter.mjs +10 -5
  95. package/fesm2022/ngwr-date-adapter.mjs.map +1 -1
  96. package/fesm2022/ngwr-date-picker.mjs +128 -123
  97. package/fesm2022/ngwr-date-picker.mjs.map +1 -1
  98. package/fesm2022/ngwr-decrypt-text.mjs +3 -3
  99. package/fesm2022/ngwr-density.mjs +7 -7
  100. package/fesm2022/ngwr-density.mjs.map +1 -1
  101. package/fesm2022/ngwr-descriptions.mjs +7 -7
  102. package/fesm2022/ngwr-descriptions.mjs.map +1 -1
  103. package/fesm2022/ngwr-dialog.mjs +16 -16
  104. package/fesm2022/ngwr-dialog.mjs.map +1 -1
  105. package/fesm2022/ngwr-directives.mjs +21 -15
  106. package/fesm2022/ngwr-directives.mjs.map +1 -1
  107. package/fesm2022/ngwr-divider.mjs +4 -4
  108. package/fesm2022/ngwr-divider.mjs.map +1 -1
  109. package/fesm2022/ngwr-donut-chart.mjs +4 -4
  110. package/fesm2022/ngwr-donut-chart.mjs.map +1 -1
  111. package/fesm2022/ngwr-drag-drop.mjs +10 -9
  112. package/fesm2022/ngwr-drag-drop.mjs.map +1 -1
  113. package/fesm2022/ngwr-drawer.mjs +19 -18
  114. package/fesm2022/ngwr-drawer.mjs.map +1 -1
  115. package/fesm2022/ngwr-dropdown.mjs +13 -12
  116. package/fesm2022/ngwr-dropdown.mjs.map +1 -1
  117. package/fesm2022/ngwr-empty.mjs +4 -4
  118. package/fesm2022/ngwr-empty.mjs.map +1 -1
  119. package/fesm2022/ngwr-falling-text.mjs +5 -4
  120. package/fesm2022/ngwr-falling-text.mjs.map +1 -1
  121. package/fesm2022/ngwr-file-upload.mjs +58 -60
  122. package/fesm2022/ngwr-file-upload.mjs.map +1 -1
  123. package/fesm2022/ngwr-form.mjs +11 -11
  124. package/fesm2022/ngwr-form.mjs.map +1 -1
  125. package/fesm2022/ngwr-fuzzy-text.mjs +5 -4
  126. package/fesm2022/ngwr-fuzzy-text.mjs.map +1 -1
  127. package/fesm2022/ngwr-gauge.mjs +4 -4
  128. package/fesm2022/ngwr-gauge.mjs.map +1 -1
  129. package/fesm2022/ngwr-glitch-text.mjs +4 -4
  130. package/fesm2022/ngwr-glitch-text.mjs.map +1 -1
  131. package/fesm2022/ngwr-gradient-text.mjs +4 -4
  132. package/fesm2022/ngwr-gradient-text.mjs.map +1 -1
  133. package/fesm2022/ngwr-hotkey.mjs +7 -7
  134. package/fesm2022/ngwr-hotkey.mjs.map +1 -1
  135. package/fesm2022/ngwr-i18n.mjs +10 -10
  136. package/fesm2022/ngwr-i18n.mjs.map +1 -1
  137. package/fesm2022/ngwr-icon-adapters-lucide.mjs +6 -7
  138. package/fesm2022/ngwr-icon-adapters-lucide.mjs.map +1 -1
  139. package/fesm2022/ngwr-icon.mjs +4 -4
  140. package/fesm2022/ngwr-icon.mjs.map +1 -1
  141. package/fesm2022/ngwr-image-cropper.mjs +6 -5
  142. package/fesm2022/ngwr-image-cropper.mjs.map +1 -1
  143. package/fesm2022/ngwr-input-number.mjs +56 -73
  144. package/fesm2022/ngwr-input-number.mjs.map +1 -1
  145. package/fesm2022/ngwr-input-otp.mjs +46 -52
  146. package/fesm2022/ngwr-input-otp.mjs.map +1 -1
  147. package/fesm2022/ngwr-input.mjs +17 -17
  148. package/fesm2022/ngwr-input.mjs.map +1 -1
  149. package/fesm2022/ngwr-keyboard.mjs +4 -4
  150. package/fesm2022/ngwr-keyboard.mjs.map +1 -1
  151. package/fesm2022/ngwr-knob.mjs +47 -58
  152. package/fesm2022/ngwr-knob.mjs.map +1 -1
  153. package/fesm2022/ngwr-layout.mjs +16 -16
  154. package/fesm2022/ngwr-layout.mjs.map +1 -1
  155. package/fesm2022/ngwr-lightbox.mjs +7 -6
  156. package/fesm2022/ngwr-lightbox.mjs.map +1 -1
  157. package/fesm2022/ngwr-line-chart.mjs +4 -4
  158. package/fesm2022/ngwr-line-chart.mjs.map +1 -1
  159. package/fesm2022/ngwr-list.mjs +8 -8
  160. package/fesm2022/ngwr-list.mjs.map +1 -1
  161. package/fesm2022/ngwr-loading-bar.mjs +7 -7
  162. package/fesm2022/ngwr-loading-bar.mjs.map +1 -1
  163. package/fesm2022/ngwr-marquee.mjs +6 -5
  164. package/fesm2022/ngwr-marquee.mjs.map +1 -1
  165. package/fesm2022/ngwr-media.mjs +4 -4
  166. package/fesm2022/ngwr-media.mjs.map +1 -1
  167. package/fesm2022/ngwr-mention.mjs +15 -9
  168. package/fesm2022/ngwr-mention.mjs.map +1 -1
  169. package/fesm2022/ngwr-meta.mjs +7 -7
  170. package/fesm2022/ngwr-meta.mjs.map +1 -1
  171. package/fesm2022/ngwr-meter-group.mjs +4 -4
  172. package/fesm2022/ngwr-meter-group.mjs.map +1 -1
  173. package/fesm2022/ngwr-overlay.mjs +9 -4
  174. package/fesm2022/ngwr-overlay.mjs.map +1 -1
  175. package/fesm2022/ngwr-page-header.mjs +4 -4
  176. package/fesm2022/ngwr-page-header.mjs.map +1 -1
  177. package/fesm2022/ngwr-pagination.mjs +4 -4
  178. package/fesm2022/ngwr-pagination.mjs.map +1 -1
  179. package/fesm2022/ngwr-pipes.mjs +21 -21
  180. package/fesm2022/ngwr-platform.mjs +169 -5
  181. package/fesm2022/ngwr-platform.mjs.map +1 -1
  182. package/fesm2022/ngwr-popconfirm.mjs +7 -7
  183. package/fesm2022/ngwr-popconfirm.mjs.map +1 -1
  184. package/fesm2022/ngwr-popover.mjs +7 -7
  185. package/fesm2022/ngwr-popover.mjs.map +1 -1
  186. package/fesm2022/ngwr-progress.mjs +4 -4
  187. package/fesm2022/ngwr-progress.mjs.map +1 -1
  188. package/fesm2022/ngwr-pull-to-refresh.mjs +172 -0
  189. package/fesm2022/ngwr-pull-to-refresh.mjs.map +1 -0
  190. package/fesm2022/ngwr-qr.mjs +5 -5
  191. package/fesm2022/ngwr-qr.mjs.map +1 -1
  192. package/fesm2022/ngwr-radio.mjs +27 -52
  193. package/fesm2022/ngwr-radio.mjs.map +1 -1
  194. package/fesm2022/ngwr-rating.mjs +35 -48
  195. package/fesm2022/ngwr-rating.mjs.map +1 -1
  196. package/fesm2022/ngwr-result.mjs +13 -13
  197. package/fesm2022/ngwr-result.mjs.map +1 -1
  198. package/fesm2022/ngwr-rotating-text.mjs +15 -4
  199. package/fesm2022/ngwr-rotating-text.mjs.map +1 -1
  200. package/fesm2022/ngwr-scroll.mjs +4 -4
  201. package/fesm2022/ngwr-scroll.mjs.map +1 -1
  202. package/fesm2022/ngwr-segmented.mjs +3 -3
  203. package/fesm2022/ngwr-segmented.mjs.map +1 -1
  204. package/fesm2022/ngwr-select.mjs +289 -85
  205. package/fesm2022/ngwr-select.mjs.map +1 -1
  206. package/fesm2022/ngwr-shiny-text.mjs +7 -7
  207. package/fesm2022/ngwr-shiny-text.mjs.map +1 -1
  208. package/fesm2022/ngwr-sidebar.mjs +4 -4
  209. package/fesm2022/ngwr-sidebar.mjs.map +1 -1
  210. package/fesm2022/ngwr-skeleton.mjs +4 -4
  211. package/fesm2022/ngwr-skeleton.mjs.map +1 -1
  212. package/fesm2022/ngwr-slider.mjs +79 -73
  213. package/fesm2022/ngwr-slider.mjs.map +1 -1
  214. package/fesm2022/ngwr-sparkline.mjs +4 -4
  215. package/fesm2022/ngwr-sparkline.mjs.map +1 -1
  216. package/fesm2022/ngwr-speed-dial.mjs +13 -5
  217. package/fesm2022/ngwr-speed-dial.mjs.map +1 -1
  218. package/fesm2022/ngwr-spinner.mjs +4 -4
  219. package/fesm2022/ngwr-spinner.mjs.map +1 -1
  220. package/fesm2022/ngwr-splash-cursor.mjs +4 -4
  221. package/fesm2022/ngwr-splash-cursor.mjs.map +1 -1
  222. package/fesm2022/ngwr-split-text.mjs +3 -3
  223. package/fesm2022/ngwr-splitter.mjs +4 -4
  224. package/fesm2022/ngwr-splitter.mjs.map +1 -1
  225. package/fesm2022/ngwr-spotlight-card.mjs +7 -7
  226. package/fesm2022/ngwr-spotlight-card.mjs.map +1 -1
  227. package/fesm2022/ngwr-squircle.mjs +7 -7
  228. package/fesm2022/ngwr-squircle.mjs.map +1 -1
  229. package/fesm2022/ngwr-star-border.mjs +4 -4
  230. package/fesm2022/ngwr-star-border.mjs.map +1 -1
  231. package/fesm2022/ngwr-statistic.mjs +65 -10
  232. package/fesm2022/ngwr-statistic.mjs.map +1 -1
  233. package/fesm2022/ngwr-stepper.mjs +8 -8
  234. package/fesm2022/ngwr-stepper.mjs.map +1 -1
  235. package/fesm2022/ngwr-storage.mjs +4 -4
  236. package/fesm2022/ngwr-storage.mjs.map +1 -1
  237. package/fesm2022/ngwr-switch.mjs +16 -48
  238. package/fesm2022/ngwr-switch.mjs.map +1 -1
  239. package/fesm2022/ngwr-table.mjs +824 -20
  240. package/fesm2022/ngwr-table.mjs.map +1 -1
  241. package/fesm2022/ngwr-tabs.mjs +9 -8
  242. package/fesm2022/ngwr-tabs.mjs.map +1 -1
  243. package/fesm2022/ngwr-textarea.mjs +18 -50
  244. package/fesm2022/ngwr-textarea.mjs.map +1 -1
  245. package/fesm2022/ngwr-theme.mjs +20 -5
  246. package/fesm2022/ngwr-theme.mjs.map +1 -1
  247. package/fesm2022/ngwr-tilt-card.mjs +27 -11
  248. package/fesm2022/ngwr-tilt-card.mjs.map +1 -1
  249. package/fesm2022/ngwr-timeline.mjs +7 -7
  250. package/fesm2022/ngwr-timeline.mjs.map +1 -1
  251. package/fesm2022/ngwr-toast.mjs +10 -10
  252. package/fesm2022/ngwr-toast.mjs.map +1 -1
  253. package/fesm2022/ngwr-toolbar.mjs +4 -4
  254. package/fesm2022/ngwr-toolbar.mjs.map +1 -1
  255. package/fesm2022/ngwr-tree.mjs +280 -84
  256. package/fesm2022/ngwr-tree.mjs.map +1 -1
  257. package/fesm2022/ngwr-typewriter.mjs +10 -5
  258. package/fesm2022/ngwr-typewriter.mjs.map +1 -1
  259. package/fesm2022/ngwr-typography.mjs +4 -4
  260. package/fesm2022/ngwr-typography.mjs.map +1 -1
  261. package/fesm2022/ngwr-validators.mjs +1 -1
  262. package/fesm2022/ngwr-validators.mjs.map +1 -1
  263. package/fesm2022/ngwr-version.mjs +1 -1
  264. package/fesm2022/ngwr-version.mjs.map +1 -1
  265. package/fesm2022/ngwr-virtual-scroll.mjs +9 -7
  266. package/fesm2022/ngwr-virtual-scroll.mjs.map +1 -1
  267. package/fesm2022/ngwr-waves.mjs +6 -5
  268. package/fesm2022/ngwr-waves.mjs.map +1 -1
  269. package/fesm2022/ngwr-window.mjs +16 -15
  270. package/fesm2022/ngwr-window.mjs.map +1 -1
  271. package/file-upload/styles/_index.scss +11 -11
  272. package/form/styles/_index.scss +4 -4
  273. package/gauge/styles/_index.scss +2 -2
  274. package/glitch-text/styles/_index.scss +1 -1
  275. package/gradient-text/styles/_index.scss +1 -1
  276. package/image-cropper/styles/_index.scss +5 -4
  277. package/input/styles/_index.scss +9 -9
  278. package/input-number/styles/_index.scss +1 -1
  279. package/input-otp/styles/_index.scss +5 -5
  280. package/keyboard/styles/_index.scss +5 -5
  281. package/knob/styles/_index.scss +6 -2
  282. package/layout/styles/_index.scss +12 -12
  283. package/lightbox/styles/_index.scss +10 -8
  284. package/line-chart/styles/_index.scss +5 -5
  285. package/list/styles/_index.scss +3 -3
  286. package/llms-full.txt +31 -5
  287. package/llms.txt +48 -32
  288. package/marquee/styles/_index.scss +1 -1
  289. package/mention/styles/_index.scss +4 -4
  290. package/meter-group/styles/_index.scss +4 -4
  291. package/overlay/styles/_index.scss +8 -0
  292. package/package.json +21 -9
  293. package/page-header/styles/_index.scss +4 -4
  294. package/pagination/styles/_index.scss +3 -3
  295. package/popconfirm/styles/_index.scss +3 -3
  296. package/popover/styles/_index.scss +5 -5
  297. package/progress/styles/_index.scss +1 -1
  298. package/pull-to-refresh/styles/_index.scss +38 -0
  299. package/radio/styles/_index.scss +4 -4
  300. package/rating/styles/_index.scss +1 -1
  301. package/result/styles/_index.scss +3 -3
  302. package/schematics/migrations/v9/index.js +71 -0
  303. package/schematics/migrations.json +5 -0
  304. package/schematics/ng-add/schema.json +1 -1
  305. package/schematics/use/symbol-map.json +13 -0
  306. package/segmented/styles/_index.scss +4 -4
  307. package/select/styles/_index.scss +53 -18
  308. package/shiny-text/styles/_index.scss +4 -4
  309. package/sidebar/styles/_index.scss +12 -12
  310. package/slider/styles/_index.scss +5 -5
  311. package/speed-dial/styles/_index.scss +22 -6
  312. package/splash-cursor/styles/_index.scss +1 -0
  313. package/splitter/styles/_index.scss +7 -4
  314. package/spotlight-card/styles/_index.scss +7 -7
  315. package/star-border/styles/_index.scss +3 -3
  316. package/statistic/styles/_index.scss +51 -4
  317. package/stepper/styles/_index.scss +6 -6
  318. package/styles/_typography.scss +4 -1
  319. package/styles.scss +2 -0
  320. package/switch/styles/_index.scss +4 -4
  321. package/table/styles/_index.scss +447 -17
  322. package/tabs/styles/_index.scss +3 -3
  323. package/textarea/styles/_index.scss +7 -7
  324. package/theme/styles/_colors.scss +27 -3
  325. package/tilt-card/styles/_index.scss +4 -4
  326. package/timeline/styles/_index.scss +7 -6
  327. package/toast/styles/_index.scss +11 -11
  328. package/toolbar/styles/_index.scss +4 -4
  329. package/tree/styles/_index.scss +45 -15
  330. package/types/ngwr-action-sheet.d.ts +75 -0
  331. package/types/ngwr-alert.d.ts +1 -1
  332. package/types/ngwr-anchor.d.ts +1 -1
  333. package/types/ngwr-avatar.d.ts +1 -1
  334. package/types/ngwr-back-top.d.ts +1 -1
  335. package/types/ngwr-badge.d.ts +4 -4
  336. package/types/ngwr-bar-chart.d.ts +1 -1
  337. package/types/ngwr-breadcrumbs.d.ts +1 -1
  338. package/types/ngwr-burger.d.ts +1 -1
  339. package/types/ngwr-button.d.ts +3 -3
  340. package/types/ngwr-calendar-heatmap.d.ts +1 -1
  341. package/types/ngwr-calendar.d.ts +1 -1
  342. package/types/ngwr-card.d.ts +1 -1
  343. package/types/ngwr-carousel.d.ts +1 -1
  344. package/types/ngwr-cascader.d.ts +27 -16
  345. package/types/ngwr-checkbox.d.ts +63 -43
  346. package/types/ngwr-clipboard.d.ts +1 -1
  347. package/types/ngwr-collapse.d.ts +3 -3
  348. package/types/ngwr-color-picker.d.ts +24 -19
  349. package/types/ngwr-command-palette.d.ts +1 -1
  350. package/types/ngwr-compare.d.ts +1 -1
  351. package/types/ngwr-context-menu.d.ts +25 -1
  352. package/types/ngwr-cookie.d.ts +7 -1
  353. package/types/ngwr-counter.d.ts +9 -2
  354. package/types/ngwr-date-picker.d.ts +36 -23
  355. package/types/ngwr-density.d.ts +1 -1
  356. package/types/ngwr-descriptions.d.ts +1 -1
  357. package/types/ngwr-dialog.d.ts +1 -1
  358. package/types/ngwr-directives.d.ts +1 -0
  359. package/types/ngwr-divider.d.ts +2 -2
  360. package/types/ngwr-donut-chart.d.ts +1 -1
  361. package/types/ngwr-drag-drop.d.ts +1 -1
  362. package/types/ngwr-drawer.d.ts +1 -1
  363. package/types/ngwr-dropdown.d.ts +1 -1
  364. package/types/ngwr-empty.d.ts +1 -1
  365. package/types/ngwr-file-upload.d.ts +28 -17
  366. package/types/ngwr-form.d.ts +2 -2
  367. package/types/ngwr-gauge.d.ts +1 -1
  368. package/types/ngwr-hotkey.d.ts +1 -1
  369. package/types/ngwr-i18n.d.ts +1 -1
  370. package/types/ngwr-icon-adapters-lucide.d.ts +5 -3
  371. package/types/ngwr-icon.d.ts +1 -1
  372. package/types/ngwr-image-cropper.d.ts +1 -1
  373. package/types/ngwr-input-number.d.ts +25 -19
  374. package/types/ngwr-input-otp.d.ts +23 -17
  375. package/types/ngwr-input.d.ts +2 -2
  376. package/types/ngwr-keyboard.d.ts +1 -1
  377. package/types/ngwr-knob.d.ts +24 -19
  378. package/types/ngwr-layout.d.ts +1 -1
  379. package/types/ngwr-lightbox.d.ts +1 -1
  380. package/types/ngwr-line-chart.d.ts +1 -1
  381. package/types/ngwr-list.d.ts +1 -1
  382. package/types/ngwr-loading-bar.d.ts +1 -1
  383. package/types/ngwr-marquee.d.ts +1 -1
  384. package/types/ngwr-media.d.ts +1 -1
  385. package/types/ngwr-mention.d.ts +1 -1
  386. package/types/ngwr-meta.d.ts +1 -1
  387. package/types/ngwr-meter-group.d.ts +1 -1
  388. package/types/ngwr-page-header.d.ts +1 -1
  389. package/types/ngwr-pagination.d.ts +1 -1
  390. package/types/ngwr-platform.d.ts +93 -2
  391. package/types/ngwr-popconfirm.d.ts +3 -3
  392. package/types/ngwr-progress.d.ts +2 -2
  393. package/types/ngwr-pull-to-refresh.d.ts +69 -0
  394. package/types/ngwr-qr.d.ts +1 -1
  395. package/types/ngwr-radio.d.ts +25 -22
  396. package/types/ngwr-rating.d.ts +28 -20
  397. package/types/ngwr-result.d.ts +1 -1
  398. package/types/ngwr-rotating-text.d.ts +1 -0
  399. package/types/ngwr-scroll.d.ts +1 -1
  400. package/types/ngwr-segmented.d.ts +1 -1
  401. package/types/ngwr-select.d.ts +93 -26
  402. package/types/ngwr-sidebar.d.ts +1 -1
  403. package/types/ngwr-skeleton.d.ts +2 -2
  404. package/types/ngwr-slider.d.ts +35 -21
  405. package/types/ngwr-sparkline.d.ts +1 -1
  406. package/types/ngwr-speed-dial.d.ts +8 -2
  407. package/types/ngwr-spinner.d.ts +1 -1
  408. package/types/ngwr-splitter.d.ts +1 -1
  409. package/types/ngwr-squircle.d.ts +1 -1
  410. package/types/ngwr-statistic.d.ts +40 -5
  411. package/types/ngwr-stepper.d.ts +2 -2
  412. package/types/ngwr-storage.d.ts +1 -1
  413. package/types/ngwr-switch.d.ts +20 -16
  414. package/types/ngwr-table.d.ts +417 -6
  415. package/types/ngwr-tabs.d.ts +1 -1
  416. package/types/ngwr-textarea.d.ts +21 -18
  417. package/types/ngwr-theme.d.ts +7 -2
  418. package/types/ngwr-tilt-card.d.ts +3 -0
  419. package/types/ngwr-timeline.d.ts +1 -1
  420. package/types/ngwr-toast.d.ts +1 -1
  421. package/types/ngwr-toolbar.d.ts +1 -1
  422. package/types/ngwr-tree.d.ts +100 -19
  423. package/types/ngwr-typography.d.ts +1 -1
  424. package/types/ngwr-validators.d.ts +1 -1
  425. package/types/ngwr-version.d.ts +1 -1
  426. package/types/ngwr-virtual-scroll.d.ts +1 -1
  427. package/types/ngwr-window.d.ts +1 -1
  428. package/typography/styles/_index.scss +11 -11
  429. package/virtual-scroll/styles/_index.scss +1 -1
  430. package/waves/styles/_index.scss +1 -1
  431. package/window/styles/_index.scss +18 -18
@@ -7,7 +7,7 @@
7
7
  width: 100%;
8
8
  min-width: 0;
9
9
  font-family: var(--wr-font-family-base);
10
- color: var(--wr-color-dark);
10
+ color: var(--wr-color-on-surface);
11
11
 
12
12
  &--vertical {
13
13
  flex-direction: column;
@@ -36,7 +36,7 @@
36
36
  margin-top: 0.125rem;
37
37
  border-radius: 50%;
38
38
  background: var(--wr-color-primary);
39
- box-shadow: 0 0 0 2px var(--wr-color-white);
39
+ box-shadow: 0 0 0 2px var(--wr-color-surface);
40
40
  z-index: 1;
41
41
  }
42
42
 
@@ -53,6 +53,7 @@
53
53
  }
54
54
 
55
55
  &--medium &__dot {
56
+ // The `color="medium"` INTENT, not the muted-text role — keep the literal.
56
57
  background: var(--wr-color-medium);
57
58
  }
58
59
 
@@ -64,7 +65,7 @@
64
65
  &__time {
65
66
  font-size: var(--wr-text-xs);
66
67
  line-height: 1rem;
67
- color: var(--wr-color-medium);
68
+ color: var(--wr-color-on-surface-muted);
68
69
  font-weight: var(--wr-font-weight-medium);
69
70
  margin-bottom: 0.125rem;
70
71
  }
@@ -79,7 +80,7 @@
79
80
  margin-top: 0.25rem;
80
81
  font-size: var(--wr-text-sm);
81
82
  line-height: var(--wr-leading-relaxed);
82
- color: var(--wr-color-dark);
83
+ color: var(--wr-color-on-surface);
83
84
  }
84
85
 
85
86
  // Vertical: connector line between dots.
@@ -91,7 +92,7 @@
91
92
  top: 1rem;
92
93
  bottom: -1.25rem;
93
94
  width: 1.5px;
94
- background: var(--wr-color-light);
95
+ background: var(--wr-color-outline);
95
96
  }
96
97
 
97
98
  &:last-child::before {
@@ -121,7 +122,7 @@
121
122
  left: 50%;
122
123
  width: calc(100% + 2rem);
123
124
  height: 1.5px;
124
- background: var(--wr-color-light);
125
+ background: var(--wr-color-outline);
125
126
  z-index: 0;
126
127
  }
127
128
 
@@ -125,11 +125,11 @@ $toast-colors: (
125
125
  }
126
126
 
127
127
  .wr-toast {
128
- --wr-toast-bg: var(--wr-color-white);
129
- --wr-toast-border: var(--wr-color-light);
128
+ --wr-toast-bg: var(--wr-color-surface);
129
+ --wr-toast-border: var(--wr-color-outline);
130
130
  --wr-toast-accent: var(--wr-color-primary);
131
- --wr-toast-title: var(--wr-color-dark);
132
- --wr-toast-message: var(--wr-color-medium);
131
+ --wr-toast-title: var(--wr-color-on-surface);
132
+ --wr-toast-message: var(--wr-color-on-surface-muted);
133
133
 
134
134
  position: relative;
135
135
  display: flex;
@@ -180,7 +180,7 @@ $toast-colors: (
180
180
  background: transparent;
181
181
  border: 0;
182
182
  padding: 0.125rem;
183
- color: var(--wr-color-medium);
183
+ color: var(--wr-color-on-surface-muted);
184
184
  cursor: pointer;
185
185
  border-radius: var(--wr-border-radius-sm);
186
186
  transition:
@@ -190,7 +190,7 @@ $toast-colors: (
190
190
  --wr-icon-size: 0.875rem;
191
191
 
192
192
  &:hover {
193
- color: var(--wr-color-dark);
193
+ color: var(--wr-color-on-surface);
194
194
  background: var(--wr-color-hover);
195
195
  }
196
196
  }
@@ -245,11 +245,11 @@ $toast-colors: (
245
245
  align-self: stretch;
246
246
  pointer-events: auto;
247
247
  appearance: none;
248
- background: var(--wr-color-white);
249
- border: 1px solid var(--wr-color-light);
248
+ background: var(--wr-color-surface);
249
+ border: 1px solid var(--wr-color-outline);
250
250
  @include theme.smooth-br(var(--wr-border-radius-base));
251
251
  padding: 0.375rem 0.75rem;
252
- color: var(--wr-color-medium);
252
+ color: var(--wr-color-on-surface-muted);
253
253
  font-family: var(--wr-font-family-base);
254
254
  font-size: var(--wr-text-xs);
255
255
  font-weight: 500;
@@ -263,8 +263,8 @@ $toast-colors: (
263
263
  border-color var(--wr-transition-base);
264
264
 
265
265
  &:hover {
266
- color: var(--wr-color-dark);
267
- border-color: var(--wr-color-medium);
266
+ color: var(--wr-color-on-surface);
267
+ border-color: var(--wr-color-on-surface-muted);
268
268
  }
269
269
  }
270
270
 
@@ -13,12 +13,12 @@
13
13
  min-width: 0;
14
14
  min-height: 3rem;
15
15
  padding: 0.5rem 0.875rem;
16
- background: var(--wr-color-white);
17
- border: 1px solid var(--wr-color-light);
16
+ background: var(--wr-color-surface);
17
+ border: 1px solid var(--wr-color-outline);
18
18
  @include theme.smooth-br(var(--wr-border-radius-base));
19
19
  box-shadow: var(--wr-shadow-xs);
20
20
  font-family: var(--wr-font-family-base);
21
- color: var(--wr-color-dark);
21
+ color: var(--wr-color-on-surface);
22
22
 
23
23
  // Opt-in (`responsive`): query the toolbar's own width so the zones stack
24
24
  // when it's too narrow for a row. Already full-width, so containment is safe.
@@ -69,7 +69,7 @@
69
69
  transform: translateY(-50%);
70
70
  height: 1.25rem;
71
71
  width: 1px;
72
- background: var(--wr-color-light);
72
+ background: var(--wr-color-outline);
73
73
  }
74
74
  }
75
75
  }
@@ -6,7 +6,7 @@
6
6
  display: block;
7
7
  font-family: var(--wr-font-family-base);
8
8
  font-size: var(--wr-text-sm);
9
- color: var(--wr-color-dark);
9
+ color: var(--wr-color-on-surface);
10
10
 
11
11
  &__list {
12
12
  list-style: none;
@@ -47,6 +47,29 @@
47
47
  cursor: not-allowed;
48
48
  opacity: 0.55;
49
49
  }
50
+
51
+ // Active-descendant cursor when virtualized — focus lives on the list
52
+ // container, so the "current" row is shown by tint rather than a focus ring.
53
+ &--active {
54
+ background: var(--wr-color-hover);
55
+ }
56
+ }
57
+
58
+ // Virtualized list: the container owns scrolling + keyboard focus.
59
+ &__list--virtual {
60
+ overflow-y: auto;
61
+ outline: 0;
62
+
63
+ &:focus-visible {
64
+ @include theme.focus-ring;
65
+ }
66
+ }
67
+
68
+ // Height-only reserved rows contribute nothing but scroll extent.
69
+ &__spacer {
70
+ list-style: none;
71
+ margin: 0;
72
+ padding: 0;
50
73
  }
51
74
 
52
75
  &__toggle {
@@ -59,7 +82,7 @@
59
82
  display: inline-flex;
60
83
  align-items: center;
61
84
  justify-content: center;
62
- color: var(--wr-color-medium);
85
+ color: var(--wr-color-on-surface-muted);
63
86
  cursor: pointer;
64
87
  border-radius: var(--wr-border-radius-sm);
65
88
  transition: transform var(--wr-transition-base);
@@ -96,9 +119,9 @@
96
119
  //
97
120
 
98
121
  &--combobox {
99
- --wr-tree-trigger-color: var(--wr-color-dark);
100
- --wr-tree-trigger-bg: var(--wr-color-white);
101
- --wr-tree-trigger-border: var(--wr-color-light);
122
+ --wr-tree-trigger-color: var(--wr-color-on-surface);
123
+ --wr-tree-trigger-bg: var(--wr-color-surface);
124
+ --wr-tree-trigger-border: var(--wr-color-outline);
102
125
  // Combobox trigger on the md control contract (30px, radius 6) so it lines
103
126
  // up with select / input / button when used as a tree-select.
104
127
  --wr-tree-trigger-radius: var(--wr-control-radius-md);
@@ -112,8 +135,8 @@
112
135
  vertical-align: middle;
113
136
 
114
137
  &.wr-tree--disabled {
115
- --wr-tree-trigger-color: var(--wr-color-medium);
116
- --wr-tree-trigger-bg: rgba(var(--wr-color-light-rgb), 0.35);
138
+ --wr-tree-trigger-color: var(--wr-color-on-surface-muted);
139
+ --wr-tree-trigger-bg: rgba(var(--wr-color-outline-rgb), 0.35);
117
140
  }
118
141
  }
119
142
 
@@ -168,7 +191,7 @@
168
191
  &__chevron {
169
192
  --wr-icon-size: 1rem;
170
193
  flex: 0 0 auto;
171
- color: var(--wr-color-medium);
194
+ color: var(--wr-color-on-surface-muted);
172
195
  transition: transform var(--wr-transition-base);
173
196
  }
174
197
 
@@ -184,15 +207,15 @@
184
207
  width: 1.125rem;
185
208
  height: 1.125rem;
186
209
  border-radius: 999px;
187
- color: var(--wr-color-medium);
210
+ color: var(--wr-color-on-surface-muted);
188
211
  cursor: pointer;
189
212
  transition:
190
213
  background 0.12s ease,
191
214
  color 0.12s ease;
192
215
 
193
216
  &:hover {
194
- background: rgba(var(--wr-color-dark-rgb), 0.06);
195
- color: var(--wr-color-dark);
217
+ background: rgba(var(--wr-color-on-surface-rgb), 0.06);
218
+ color: var(--wr-color-on-surface);
196
219
  }
197
220
  }
198
221
 
@@ -252,8 +275,8 @@
252
275
  }
253
276
 
254
277
  &__chip--more {
255
- background: rgba(var(--wr-color-dark-rgb), 0.08);
256
- color: rgba(var(--wr-color-dark-rgb), 0.7);
278
+ background: rgba(var(--wr-color-on-surface-rgb), 0.08);
279
+ color: rgba(var(--wr-color-on-surface-rgb), 0.7);
257
280
  }
258
281
  }
259
282
 
@@ -262,13 +285,20 @@
262
285
  }
263
286
 
264
287
  .wr-tree-panel {
265
- background: var(--wr-color-white);
266
- border: 1px solid var(--wr-color-light);
288
+ background: var(--wr-color-surface);
289
+ border: 1px solid var(--wr-color-outline);
267
290
  border-radius: var(--wr-border-radius-base);
268
291
  box-shadow: var(--wr-shadow-overlay);
269
292
  padding: 0.375rem;
270
293
  max-height: var(--wr-tree-panel-max-height, 18rem);
271
294
  overflow-y: auto;
295
+
296
+ // The virtualized list owns its own scrolling (max-height on the <ul>), so the
297
+ // panel must not add a second scroll container / height cap.
298
+ &--virtual {
299
+ max-height: none;
300
+ overflow: visible;
301
+ }
272
302
  }
273
303
 
274
304
  // Touch pointers: taller rows (~44px) and a larger expand/collapse toggle so
@@ -0,0 +1,75 @@
1
+ import * as _angular_core from '@angular/core';
2
+
3
+ /**
4
+ * @license
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE
8
+ */
9
+ /** One row in a {@link WrActionSheet}. */
10
+ interface WrActionSheetAction {
11
+ /** Row label. */
12
+ label: string;
13
+ /** Caller-defined payload, echoed back in the `action` output. */
14
+ value?: unknown;
15
+ /** Optional leading icon — a `wr-icon` name. */
16
+ icon?: string;
17
+ /**
18
+ * Visual role. `destructive` paints the row in the danger colour; `cancel`
19
+ * moves it to a separate group pinned at the bottom (iOS style).
20
+ * @default 'default'
21
+ */
22
+ role?: 'default' | 'destructive' | 'cancel';
23
+ /** Disable the row. */
24
+ disabled?: boolean;
25
+ }
26
+
27
+ /**
28
+ * iOS-style action sheet — a bottom sheet offering a short list of choices.
29
+ * A thin preset over {@link WrDrawer} (bottom position, rounded, grab handle,
30
+ * safe-area padding), driven by data rather than projected content.
31
+ *
32
+ * Pass `actions`; picking one emits `action` and closes the sheet. Rows with
33
+ * `role: 'destructive'` are painted in the danger colour, and `role: 'cancel'`
34
+ * rows drop to a separate group at the bottom. Dismissing via the backdrop,
35
+ * `Escape`, or a swipe-down closes without emitting. Picking fires a light
36
+ * {@link WrHaptics} tick.
37
+ *
38
+ * @example
39
+ * ```html
40
+ * <wr-action-sheet
41
+ * [(open)]="sheetOpen"
42
+ * title="Photo"
43
+ * [actions]="[
44
+ * { label: 'Take Photo', icon: 'camera', value: 'camera' },
45
+ * { label: 'Choose from Library', icon: 'image', value: 'library' },
46
+ * { label: 'Delete', role: 'destructive', value: 'delete' },
47
+ * { label: 'Cancel', role: 'cancel' },
48
+ * ]"
49
+ * (action)="onPick($event)"
50
+ * />
51
+ * ```
52
+ *
53
+ * @see https://ngwr.dev/reference/components/action-sheet
54
+ */
55
+ declare class WrActionSheet {
56
+ private readonly haptics;
57
+ /** Whether the sheet is open. Two-way. @default false */
58
+ readonly open: _angular_core.ModelSignal<boolean>;
59
+ /** The rows to offer. */
60
+ readonly actions: _angular_core.InputSignal<readonly WrActionSheetAction[]>;
61
+ /** Optional bold heading above the rows. */
62
+ readonly title: _angular_core.InputSignal<string>;
63
+ /** Optional muted sub-heading under the title. */
64
+ readonly message: _angular_core.InputSignal<string>;
65
+ /** Fires with the chosen row (never fires on a dismiss). */
66
+ readonly action: _angular_core.OutputEmitterRef<WrActionSheetAction>;
67
+ protected readonly mainActions: _angular_core.Signal<WrActionSheetAction[]>;
68
+ protected readonly cancelActions: _angular_core.Signal<WrActionSheetAction[]>;
69
+ protected select(item: WrActionSheetAction): void;
70
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<WrActionSheet, never>;
71
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<WrActionSheet, "wr-action-sheet", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "action": "action"; }, never, never, true, never>;
72
+ }
73
+
74
+ export { WrActionSheet };
75
+ export type { WrActionSheetAction };
@@ -20,7 +20,7 @@ type WrAlertType = 'info' | 'success' | 'warning' | 'danger' | 'neutral' | 'offl
20
20
  * <wr-alert title="Failed" type="danger" closeable (closed)="onClose()" />
21
21
  * ```
22
22
  *
23
- * @see https://ngwr.dev/components/alert
23
+ * @see https://ngwr.dev/reference/components/alert
24
24
  */
25
25
  declare class WrAlert {
26
26
  /**
@@ -28,7 +28,7 @@ interface WrAnchorLink {
28
28
  * />
29
29
  * ```
30
30
  *
31
- * @see https://ngwr.dev/components/anchor
31
+ * @see https://ngwr.dev/reference/components/anchor
32
32
  */
33
33
  declare class WrAnchor {
34
34
  readonly links: _angular_core.InputSignal<readonly WrAnchorLink[]>;
@@ -48,7 +48,7 @@ type WrAvatarSize = number | `${number}` | `${number}px` | `${number}rem`;
48
48
  * <wr-avatar url="/me.png" alt="Roman" [size]="48" />
49
49
  * ```
50
50
  *
51
- * @see https://ngwr.dev/components/avatar
51
+ * @see https://ngwr.dev/reference/components/avatar
52
52
  */
53
53
  declare class WrAvatar {
54
54
  /**
@@ -13,7 +13,7 @@ import * as _angular_core from '@angular/core';
13
13
  * </wr-back-top>
14
14
  * ```
15
15
  *
16
- * @see https://ngwr.dev/components/back-top
16
+ * @see https://ngwr.dev/reference/components/back-top
17
17
  */
18
18
  declare class WrBackTop {
19
19
  /** Show the button once `window.scrollY` exceeds this many pixels. @default 400 */
@@ -51,7 +51,7 @@ type WrTagIconPosition = 'start' | 'end';
51
51
  * <wr-badge color="primary" shape="pill">New</wr-badge>
52
52
  * ```
53
53
  *
54
- * @see https://ngwr.dev/components/badge
54
+ * @see https://ngwr.dev/reference/components/badge
55
55
  */
56
56
  declare class WrBadge {
57
57
  /**
@@ -59,7 +59,7 @@ declare class WrBadge {
59
59
  *
60
60
  * @default 'primary'
61
61
  */
62
- readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "light" | "medium" | "dark">;
62
+ readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "medium" | "dark">;
63
63
  /**
64
64
  * Size variant.
65
65
  *
@@ -97,7 +97,7 @@ declare class WrBadge {
97
97
  * <wr-tag color="warning" loading>Saving</wr-tag>
98
98
  * ```
99
99
  *
100
- * @see https://ngwr.dev/components/badge
100
+ * @see https://ngwr.dev/reference/components/badge
101
101
  */
102
102
  declare class WrTag {
103
103
  /**
@@ -105,7 +105,7 @@ declare class WrTag {
105
105
  *
106
106
  * @default 'primary'
107
107
  */
108
- readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "light" | "medium" | "dark">;
108
+ readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "medium" | "dark">;
109
109
  /**
110
110
  * Icon name shown alongside the content. The icon is replaced by a
111
111
  * spinner when `loading` is true.
@@ -20,7 +20,7 @@ interface WrBarChartDatum {
20
20
  * ]" />
21
21
  * ```
22
22
  *
23
- * @see https://ngwr.dev/components/bar-chart
23
+ * @see https://ngwr.dev/reference/components/bar-chart
24
24
  */
25
25
  declare class WrBarChart {
26
26
  readonly data: _angular_core.InputSignal<readonly WrBarChartDatum[]>;
@@ -18,7 +18,7 @@ import * as _angular_core from '@angular/core';
18
18
  * <wr-breadcrumbs separator="›">…</wr-breadcrumbs>
19
19
  * ```
20
20
  *
21
- * @see https://ngwr.dev/components/breadcrumbs
21
+ * @see https://ngwr.dev/reference/components/breadcrumbs
22
22
  */
23
23
  declare class WrBreadcrumbs {
24
24
  /** Separator glyph between items. Any short string. @default '/' */
@@ -15,7 +15,7 @@ import * as _angular_core from '@angular/core';
15
15
  * <wr-drawer [(open)]="menuOpen" position="right">…</wr-drawer>
16
16
  * ```
17
17
  *
18
- * @see https://ngwr.dev/components/burger
18
+ * @see https://ngwr.dev/reference/components/burger
19
19
  */
20
20
  declare class WrBurger {
21
21
  /** Two-way bindable open state. Drives the hamburger ↔ close morph. @default false */
@@ -65,11 +65,11 @@ type WrButtonIconPosition = 'start' | 'end';
65
65
  * every child — child `[shape]` inputs are ignored so the group reads as
66
66
  * one coherent control.
67
67
  *
68
- * @see https://ngwr.dev/components/button
68
+ * @see https://ngwr.dev/reference/components/button
69
69
  */
70
70
  declare class WrButton {
71
71
  /** Color variant. Omit for the neutral default style. @default null */
72
- readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "light" | "medium" | "dark" | null>;
72
+ readonly color: _angular_core.InputSignal<"primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "medium" | "dark" | null>;
73
73
  /** Size variant. @default 'md' */
74
74
  readonly size: _angular_core.InputSignal<WrButtonSize>;
75
75
  /**
@@ -156,7 +156,7 @@ interface WrButtonGroupContext {
156
156
  * </wr-btn-group>
157
157
  * ```
158
158
  *
159
- * @see https://ngwr.dev/components/button-group
159
+ * @see https://ngwr.dev/reference/components/button-group
160
160
  */
161
161
  declare class WrButtonGroup implements WrButtonGroupContext {
162
162
  /**
@@ -23,7 +23,7 @@ interface Cell {
23
23
  * <wr-calendar-heatmap [data]="data" [endDate]="today" [weeks]="26" color="#10b981" />
24
24
  * ```
25
25
  *
26
- * @see https://ngwr.dev/components/calendar-heatmap
26
+ * @see https://ngwr.dev/reference/components/calendar-heatmap
27
27
  */
28
28
  declare class WrCalendarHeatmap {
29
29
  readonly data: _angular_core.InputSignal<readonly WrHeatmapDatum[]>;
@@ -41,7 +41,7 @@ type WrCalendarRange = readonly [Date | null, Date | null];
41
41
  * <wr-calendar mode="range" [(range)]="[start, end]" />
42
42
  * ```
43
43
  *
44
- * @see https://ngwr.dev/components/calendar
44
+ * @see https://ngwr.dev/reference/components/calendar
45
45
  */
46
46
  declare class WrCalendar {
47
47
  /** Selection mode. @default 'single' */
@@ -21,7 +21,7 @@ import * as i0 from '@angular/core';
21
21
  * </wr-card>
22
22
  * ```
23
23
  *
24
- * @see https://ngwr.dev/components/card
24
+ * @see https://ngwr.dev/reference/components/card
25
25
  */
26
26
  declare class WrCard {
27
27
  /** Render a 1px border around the surface. @default true */
@@ -22,7 +22,7 @@ declare class WrCarouselSlide {
22
22
  * </wr-carousel>
23
23
  * ```
24
24
  *
25
- * @see https://ngwr.dev/components/carousel
25
+ * @see https://ngwr.dev/reference/components/carousel
26
26
  */
27
27
  declare class WrCarousel {
28
28
  /** Active slide index. Two-way bindable. @default 0 */
@@ -1,6 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { TemplateRef } from '@angular/core';
3
- import { ControlValueAccessor } from '@angular/forms';
3
+ import { FormValueControl } from '@angular/forms/signals';
4
4
 
5
5
  /** One node in the cascader tree. */
6
6
  interface WrCascaderOption<T = string> {
@@ -20,12 +20,18 @@ interface WrCascaderOption<T = string> {
20
20
  * advance to the next column. Selecting a leaf (no children) commits
21
21
  * the full path.
22
22
  *
23
- * Implements `ControlValueAccessor` — value is the path through the
24
- * tree as a `readonly T[]`.
23
+ * A signal-forms native control: it implements `FormValueControl<unknown>`,
24
+ * so `[formField]` binds straight to its `value` model — no
25
+ * `ControlValueAccessor` in between. `[(value)]` works standalone. The value
26
+ * is the path through the tree (an array from root to leaf).
25
27
  *
26
28
  * @example
27
29
  * ```html
28
- * <wr-cascader [options]="locations" [(ngModel)]="path" placeholder="Pick a location" />
30
+ * <!-- signal forms -->
31
+ * <wr-cascader [options]="locations" [formField]="form.path" placeholder="Pick a location" />
32
+ *
33
+ * <!-- standalone two-way binding -->
34
+ * <wr-cascader [options]="locations" [(value)]="path" placeholder="Pick a location" />
29
35
  * ```
30
36
  *
31
37
  * ```ts
@@ -41,15 +47,20 @@ interface WrCascaderOption<T = string> {
41
47
  * ];
42
48
  * ```
43
49
  *
44
- * @see https://ngwr.dev/components/cascader
50
+ * @see https://ngwr.dev/reference/components/cascader
45
51
  */
46
52
  type WrCascaderSize = 'sm' | 'md' | 'lg';
47
- declare class WrCascader<T = string> implements ControlValueAccessor {
53
+ declare class WrCascader<T = string> implements FormValueControl<unknown> {
48
54
  /** Root-level options. Each may have `children` for deeper levels. */
49
55
  readonly options: _angular_core.InputSignal<readonly WrCascaderOption<T>[]>;
50
56
  /** Placeholder shown when no path is selected. @default '' */
51
57
  readonly placeholder: _angular_core.InputSignal<string>;
52
- /** Disable the cascader. */
58
+ /**
59
+ * Disable the cascader. Bound automatically from the field's disabled state
60
+ * when used with `[formField]`.
61
+ *
62
+ * @default false
63
+ */
53
64
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, any>;
54
65
  /** Control size — shares the `--wr-control-*` contract. @default 'md' */
55
66
  readonly size: _angular_core.InputSignal<WrCascaderSize>;
@@ -62,6 +73,13 @@ declare class WrCascader<T = string> implements ControlValueAccessor {
62
73
  readonly changeOnSelect: _angular_core.InputSignalWithTransform<boolean, any>;
63
74
  /** Separator between labels in the trigger display. @default '/' */
64
75
  readonly separator: _angular_core.InputSignal<string>;
76
+ /**
77
+ * Committed selection path (full array from root to leaf). Bound by
78
+ * `[formField]`, or two-way via `[(value)]`.
79
+ */
80
+ readonly value: _angular_core.ModelSignal<unknown>;
81
+ /** Emitted on blur / commit so a bound field can mark itself touched. */
82
+ readonly touch: _angular_core.OutputEmitterRef<void>;
65
83
  /** Committed selection path (full T[] from root to leaf). @internal */
66
84
  protected readonly path: _angular_core.WritableSignal<readonly T[]>;
67
85
  /** Currently-expanded column path — drives which columns the panel shows. @internal */
@@ -69,8 +87,6 @@ declare class WrCascader<T = string> implements ControlValueAccessor {
69
87
  protected readonly open: _angular_core.WritableSignal<boolean>;
70
88
  /** Panel id used by the trigger's `aria-controls`. */
71
89
  protected readonly panelId: string;
72
- private readonly disabledFromCva;
73
- protected readonly isDisabled: _angular_core.Signal<boolean>;
74
90
  /**
75
91
  * Columns visible in the panel. Each column shows the children of the
76
92
  * preceding activePath entry. Column 0 = root options. The last
@@ -89,21 +105,16 @@ declare class WrCascader<T = string> implements ControlValueAccessor {
89
105
  private readonly scrollStrategies;
90
106
  private readonly destroyRef;
91
107
  private overlayRef;
92
- private onChange;
93
- protected onTouched: () => void;
94
108
  constructor();
95
109
  protected onTriggerClick(): void;
96
110
  protected onOptionClick(colIndex: number, opt: WrCascaderOption<T>, event: Event): void;
97
111
  protected clearSelection(event: Event): void;
98
112
  protected isActiveAt(colIndex: number, value: T): boolean;
99
- writeValue(value: unknown): void;
100
- registerOnChange(fn: (value: readonly T[]) => void): void;
101
- registerOnTouched(fn: () => void): void;
102
- setDisabledState(isDisabled: boolean): void;
113
+ private pathsEqual;
103
114
  private openOverlay;
104
115
  private closeOverlay;
105
116
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<WrCascader<any>, never>;
106
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<WrCascader<any>, "wr-cascader", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "changeOnSelect": { "alias": "changeOnSelect"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
117
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<WrCascader<any>, "wr-cascader", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "changeOnSelect": { "alias": "changeOnSelect"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touch": "touch"; }, never, never, true, never>;
107
118
  }
108
119
 
109
120
  export { WrCascader };