ngwr 11.1.0 → 12.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 (481) hide show
  1. package/README.md +7 -7
  2. package/burger/styles/_index.scss +1 -1
  3. package/button/styles/_index.scss +2 -2
  4. package/calendar/styles/_index.scss +32 -12
  5. package/calendar-heatmap/styles/_index.scss +20 -0
  6. package/carousel/styles/_index.scss +23 -1
  7. package/cascader/styles/_index.scss +15 -3
  8. package/checkbox/styles/_index.scss +2 -2
  9. package/circular-text/styles/_index.scss +11 -0
  10. package/collapse/styles/_index.scss +2 -2
  11. package/color-picker/styles/_index.scss +3 -3
  12. package/command-palette/styles/_index.scss +12 -0
  13. package/compare/styles/_index.scss +18 -2
  14. package/context-menu/styles/_index.scss +21 -2
  15. package/date-picker/styles/_index.scss +5 -5
  16. package/descriptions/styles/_index.scss +1 -1
  17. package/drag-drop/styles/_index.scss +28 -1
  18. package/drawer/styles/_index.scss +37 -0
  19. package/dropdown/styles/_index.scss +2 -2
  20. package/event-calendar/styles/_index.scss +67 -10
  21. package/fesm2022/ngwr-action-sheet-testing.mjs +313 -0
  22. package/fesm2022/ngwr-action-sheet-testing.mjs.map +1 -0
  23. package/fesm2022/ngwr-action-sheet.mjs +3 -3
  24. package/fesm2022/ngwr-affix.mjs +3 -3
  25. package/fesm2022/ngwr-alert.mjs +3 -3
  26. package/fesm2022/ngwr-anchor.mjs +3 -3
  27. package/fesm2022/ngwr-aurora.mjs +3 -3
  28. package/fesm2022/ngwr-avatar.mjs +3 -3
  29. package/fesm2022/ngwr-back-top.mjs +3 -3
  30. package/fesm2022/ngwr-badge.mjs +6 -6
  31. package/fesm2022/ngwr-bar-chart-testing.mjs +107 -0
  32. package/fesm2022/ngwr-bar-chart-testing.mjs.map +1 -0
  33. package/fesm2022/ngwr-bar-chart.mjs +3 -3
  34. package/fesm2022/ngwr-blur-text-testing.mjs +203 -0
  35. package/fesm2022/ngwr-blur-text-testing.mjs.map +1 -0
  36. package/fesm2022/ngwr-blur-text.mjs +18 -4
  37. package/fesm2022/ngwr-blur-text.mjs.map +1 -1
  38. package/fesm2022/ngwr-border-glow-testing.mjs +325 -0
  39. package/fesm2022/ngwr-border-glow-testing.mjs.map +1 -0
  40. package/fesm2022/ngwr-border-glow.mjs +4 -4
  41. package/fesm2022/ngwr-border-glow.mjs.map +1 -1
  42. package/fesm2022/ngwr-breadcrumbs.mjs +29 -17
  43. package/fesm2022/ngwr-breadcrumbs.mjs.map +1 -1
  44. package/fesm2022/ngwr-burger.mjs +3 -3
  45. package/fesm2022/ngwr-button.mjs +6 -6
  46. package/fesm2022/ngwr-calendar-heatmap-testing.mjs +95 -0
  47. package/fesm2022/ngwr-calendar-heatmap-testing.mjs.map +1 -0
  48. package/fesm2022/ngwr-calendar-heatmap.mjs +17 -5
  49. package/fesm2022/ngwr-calendar-heatmap.mjs.map +1 -1
  50. package/fesm2022/ngwr-calendar-testing.mjs +368 -0
  51. package/fesm2022/ngwr-calendar-testing.mjs.map +1 -0
  52. package/fesm2022/ngwr-calendar.mjs +228 -10
  53. package/fesm2022/ngwr-calendar.mjs.map +1 -1
  54. package/fesm2022/ngwr-card.mjs +10 -10
  55. package/fesm2022/ngwr-card.mjs.map +1 -1
  56. package/fesm2022/ngwr-carousel.mjs +124 -24
  57. package/fesm2022/ngwr-carousel.mjs.map +1 -1
  58. package/fesm2022/ngwr-cascader.mjs +60 -5
  59. package/fesm2022/ngwr-cascader.mjs.map +1 -1
  60. package/fesm2022/ngwr-checkbox.mjs +14 -6
  61. package/fesm2022/ngwr-checkbox.mjs.map +1 -1
  62. package/fesm2022/ngwr-circular-text-testing.mjs +230 -0
  63. package/fesm2022/ngwr-circular-text-testing.mjs.map +1 -0
  64. package/fesm2022/ngwr-circular-text.mjs +4 -4
  65. package/fesm2022/ngwr-circular-text.mjs.map +1 -1
  66. package/fesm2022/ngwr-click-spark.mjs +27 -7
  67. package/fesm2022/ngwr-click-spark.mjs.map +1 -1
  68. package/fesm2022/ngwr-clipboard.mjs +3 -3
  69. package/fesm2022/ngwr-collapse.mjs +9 -9
  70. package/fesm2022/ngwr-color-picker-testing.mjs +452 -0
  71. package/fesm2022/ngwr-color-picker-testing.mjs.map +1 -0
  72. package/fesm2022/ngwr-color-picker.mjs +126 -10
  73. package/fesm2022/ngwr-color-picker.mjs.map +1 -1
  74. package/fesm2022/ngwr-command-palette.mjs +14 -5
  75. package/fesm2022/ngwr-command-palette.mjs.map +1 -1
  76. package/fesm2022/ngwr-compare.mjs +3 -3
  77. package/fesm2022/ngwr-confetti.mjs +31 -6
  78. package/fesm2022/ngwr-confetti.mjs.map +1 -1
  79. package/fesm2022/ngwr-config.mjs +9 -0
  80. package/fesm2022/ngwr-config.mjs.map +1 -1
  81. package/fesm2022/ngwr-context-menu-testing.mjs +30 -11
  82. package/fesm2022/ngwr-context-menu-testing.mjs.map +1 -1
  83. package/fesm2022/ngwr-context-menu.mjs +358 -48
  84. package/fesm2022/ngwr-context-menu.mjs.map +1 -1
  85. package/fesm2022/ngwr-cookie.mjs +3 -3
  86. package/fesm2022/ngwr-counter.mjs +25 -9
  87. package/fesm2022/ngwr-counter.mjs.map +1 -1
  88. package/fesm2022/{ngwr-date-adapter-fns.mjs → ngwr-date-adapters-fns.mjs} +37 -10
  89. package/fesm2022/ngwr-date-adapters-fns.mjs.map +1 -0
  90. package/fesm2022/{ngwr-date-adapter-luxon.mjs → ngwr-date-adapters-luxon.mjs} +5 -5
  91. package/fesm2022/ngwr-date-adapters-luxon.mjs.map +1 -0
  92. package/fesm2022/ngwr-date-picker-testing.mjs +21 -85
  93. package/fesm2022/ngwr-date-picker-testing.mjs.map +1 -1
  94. package/fesm2022/ngwr-date-picker.mjs +119 -37
  95. package/fesm2022/ngwr-date-picker.mjs.map +1 -1
  96. package/fesm2022/{ngwr-date-adapter.mjs → ngwr-date.mjs} +36 -10
  97. package/fesm2022/ngwr-date.mjs.map +1 -0
  98. package/fesm2022/ngwr-decrypt-text-testing.mjs +261 -0
  99. package/fesm2022/ngwr-decrypt-text-testing.mjs.map +1 -0
  100. package/fesm2022/ngwr-decrypt-text.mjs +9 -4
  101. package/fesm2022/ngwr-decrypt-text.mjs.map +1 -1
  102. package/fesm2022/ngwr-density.mjs +6 -6
  103. package/fesm2022/ngwr-descriptions.mjs +6 -6
  104. package/fesm2022/ngwr-dialog.mjs +73 -18
  105. package/fesm2022/ngwr-dialog.mjs.map +1 -1
  106. package/fesm2022/ngwr-directives.mjs +12 -12
  107. package/fesm2022/ngwr-divider.mjs +52 -5
  108. package/fesm2022/ngwr-divider.mjs.map +1 -1
  109. package/fesm2022/ngwr-donut-chart-testing.mjs +97 -0
  110. package/fesm2022/ngwr-donut-chart-testing.mjs.map +1 -0
  111. package/fesm2022/ngwr-donut-chart.mjs +7 -7
  112. package/fesm2022/ngwr-donut-chart.mjs.map +1 -1
  113. package/fesm2022/ngwr-drag-drop.mjs +160 -11
  114. package/fesm2022/ngwr-drag-drop.mjs.map +1 -1
  115. package/fesm2022/ngwr-drawer.mjs +156 -64
  116. package/fesm2022/ngwr-drawer.mjs.map +1 -1
  117. package/fesm2022/ngwr-dropdown.mjs +58 -12
  118. package/fesm2022/ngwr-dropdown.mjs.map +1 -1
  119. package/fesm2022/ngwr-empty.mjs +3 -3
  120. package/fesm2022/ngwr-event-calendar-testing.mjs +446 -0
  121. package/fesm2022/ngwr-event-calendar-testing.mjs.map +1 -0
  122. package/fesm2022/ngwr-event-calendar.mjs +66 -28
  123. package/fesm2022/ngwr-event-calendar.mjs.map +1 -1
  124. package/fesm2022/ngwr-falling-text-testing.mjs +220 -0
  125. package/fesm2022/ngwr-falling-text-testing.mjs.map +1 -0
  126. package/fesm2022/ngwr-falling-text.mjs +75 -46
  127. package/fesm2022/ngwr-falling-text.mjs.map +1 -1
  128. package/fesm2022/ngwr-file-upload.mjs +3 -3
  129. package/fesm2022/ngwr-form.mjs +32 -15
  130. package/fesm2022/ngwr-form.mjs.map +1 -1
  131. package/fesm2022/ngwr-fuzzy-text-testing.mjs +134 -0
  132. package/fesm2022/ngwr-fuzzy-text-testing.mjs.map +1 -0
  133. package/fesm2022/ngwr-fuzzy-text.mjs +21 -11
  134. package/fesm2022/ngwr-fuzzy-text.mjs.map +1 -1
  135. package/fesm2022/ngwr-gauge-testing.mjs +86 -0
  136. package/fesm2022/ngwr-gauge-testing.mjs.map +1 -0
  137. package/fesm2022/ngwr-gauge.mjs +3 -3
  138. package/fesm2022/ngwr-glitch-text-testing.mjs +215 -0
  139. package/fesm2022/ngwr-glitch-text-testing.mjs.map +1 -0
  140. package/fesm2022/ngwr-glitch-text.mjs +7 -7
  141. package/fesm2022/ngwr-glitch-text.mjs.map +1 -1
  142. package/fesm2022/ngwr-gradient-text-testing.mjs +258 -0
  143. package/fesm2022/ngwr-gradient-text-testing.mjs.map +1 -0
  144. package/fesm2022/ngwr-gradient-text.mjs +4 -4
  145. package/fesm2022/ngwr-gradient-text.mjs.map +1 -1
  146. package/fesm2022/ngwr-hotkey.mjs +24 -9
  147. package/fesm2022/ngwr-hotkey.mjs.map +1 -1
  148. package/fesm2022/ngwr-i18n-en.mjs +87 -1
  149. package/fesm2022/ngwr-i18n-en.mjs.map +1 -1
  150. package/fesm2022/ngwr-i18n-ru.mjs +69 -1
  151. package/fesm2022/ngwr-i18n-ru.mjs.map +1 -1
  152. package/fesm2022/ngwr-i18n.mjs +26 -15
  153. package/fesm2022/ngwr-i18n.mjs.map +1 -1
  154. package/fesm2022/ngwr-icon.mjs +6 -6
  155. package/fesm2022/ngwr-image-cropper-testing.mjs +200 -0
  156. package/fesm2022/ngwr-image-cropper-testing.mjs.map +1 -0
  157. package/fesm2022/ngwr-image-cropper.mjs +156 -11
  158. package/fesm2022/ngwr-image-cropper.mjs.map +1 -1
  159. package/fesm2022/ngwr-input-number-testing.mjs +15 -10
  160. package/fesm2022/ngwr-input-number-testing.mjs.map +1 -1
  161. package/fesm2022/ngwr-input-number.mjs +89 -15
  162. package/fesm2022/ngwr-input-number.mjs.map +1 -1
  163. package/fesm2022/ngwr-input-otp-testing.mjs +12 -6
  164. package/fesm2022/ngwr-input-otp-testing.mjs.map +1 -1
  165. package/fesm2022/ngwr-input-otp.mjs +24 -5
  166. package/fesm2022/ngwr-input-otp.mjs.map +1 -1
  167. package/fesm2022/ngwr-input.mjs +15 -15
  168. package/fesm2022/ngwr-keyboard.mjs +3 -3
  169. package/fesm2022/ngwr-knob-testing.mjs +220 -0
  170. package/fesm2022/ngwr-knob-testing.mjs.map +1 -0
  171. package/fesm2022/ngwr-knob.mjs +3 -3
  172. package/fesm2022/ngwr-layout.mjs +15 -15
  173. package/fesm2022/ngwr-lightbox-testing.mjs +223 -0
  174. package/fesm2022/ngwr-lightbox-testing.mjs.map +1 -0
  175. package/fesm2022/ngwr-lightbox.mjs +11 -4
  176. package/fesm2022/ngwr-lightbox.mjs.map +1 -1
  177. package/fesm2022/ngwr-line-chart-testing.mjs +119 -0
  178. package/fesm2022/ngwr-line-chart-testing.mjs.map +1 -0
  179. package/fesm2022/ngwr-line-chart.mjs +73 -26
  180. package/fesm2022/ngwr-line-chart.mjs.map +1 -1
  181. package/fesm2022/ngwr-list.mjs +7 -7
  182. package/fesm2022/ngwr-list.mjs.map +1 -1
  183. package/fesm2022/ngwr-loading-bar.mjs +7 -7
  184. package/fesm2022/ngwr-loading-bar.mjs.map +1 -1
  185. package/fesm2022/ngwr-markdown.mjs +66 -8
  186. package/fesm2022/ngwr-markdown.mjs.map +1 -1
  187. package/fesm2022/ngwr-marquee-testing.mjs +336 -0
  188. package/fesm2022/ngwr-marquee-testing.mjs.map +1 -0
  189. package/fesm2022/ngwr-marquee.mjs +4 -4
  190. package/fesm2022/ngwr-marquee.mjs.map +1 -1
  191. package/fesm2022/ngwr-media.mjs +3 -3
  192. package/fesm2022/ngwr-mention.mjs +108 -13
  193. package/fesm2022/ngwr-mention.mjs.map +1 -1
  194. package/fesm2022/ngwr-meta.mjs +6 -6
  195. package/fesm2022/ngwr-meter-group-testing.mjs +100 -0
  196. package/fesm2022/ngwr-meter-group-testing.mjs.map +1 -0
  197. package/fesm2022/ngwr-meter-group.mjs +3 -3
  198. package/fesm2022/ngwr-overlay.mjs +34 -7
  199. package/fesm2022/ngwr-overlay.mjs.map +1 -1
  200. package/fesm2022/ngwr-page-header.mjs +3 -3
  201. package/fesm2022/ngwr-pagination-testing.mjs +6 -6
  202. package/fesm2022/ngwr-pagination-testing.mjs.map +1 -1
  203. package/fesm2022/ngwr-pagination.mjs +17 -13
  204. package/fesm2022/ngwr-pagination.mjs.map +1 -1
  205. package/fesm2022/ngwr-pipes.mjs +39 -26
  206. package/fesm2022/ngwr-pipes.mjs.map +1 -1
  207. package/fesm2022/ngwr-platform.mjs +9 -9
  208. package/fesm2022/ngwr-popconfirm.mjs +6 -6
  209. package/fesm2022/ngwr-popover-testing.mjs +7 -2
  210. package/fesm2022/ngwr-popover-testing.mjs.map +1 -1
  211. package/fesm2022/ngwr-popover.mjs +169 -33
  212. package/fesm2022/ngwr-popover.mjs.map +1 -1
  213. package/fesm2022/ngwr-progress.mjs +3 -3
  214. package/fesm2022/ngwr-pull-to-refresh.mjs +3 -3
  215. package/fesm2022/ngwr-qr.mjs +42 -5
  216. package/fesm2022/ngwr-qr.mjs.map +1 -1
  217. package/fesm2022/ngwr-radio.mjs +6 -6
  218. package/fesm2022/ngwr-rating.mjs +3 -3
  219. package/fesm2022/ngwr-result.mjs +21 -30
  220. package/fesm2022/ngwr-result.mjs.map +1 -1
  221. package/fesm2022/ngwr-rotating-text-testing.mjs +220 -0
  222. package/fesm2022/ngwr-rotating-text-testing.mjs.map +1 -0
  223. package/fesm2022/ngwr-rotating-text.mjs +4 -4
  224. package/fesm2022/ngwr-rotating-text.mjs.map +1 -1
  225. package/fesm2022/ngwr-scroll.mjs +3 -3
  226. package/fesm2022/ngwr-segmented-testing.mjs +14 -1
  227. package/fesm2022/ngwr-segmented-testing.mjs.map +1 -1
  228. package/fesm2022/ngwr-segmented.mjs +29 -6
  229. package/fesm2022/ngwr-segmented.mjs.map +1 -1
  230. package/fesm2022/ngwr-select.mjs +227 -43
  231. package/fesm2022/ngwr-select.mjs.map +1 -1
  232. package/fesm2022/ngwr-shiny-text-testing.mjs +237 -0
  233. package/fesm2022/ngwr-shiny-text-testing.mjs.map +1 -0
  234. package/fesm2022/ngwr-shiny-text.mjs +11 -9
  235. package/fesm2022/ngwr-shiny-text.mjs.map +1 -1
  236. package/fesm2022/ngwr-sidebar.mjs +31 -16
  237. package/fesm2022/ngwr-sidebar.mjs.map +1 -1
  238. package/fesm2022/ngwr-skeleton.mjs +3 -3
  239. package/fesm2022/ngwr-slider.mjs +143 -14
  240. package/fesm2022/ngwr-slider.mjs.map +1 -1
  241. package/fesm2022/ngwr-sparkline-testing.mjs +76 -0
  242. package/fesm2022/ngwr-sparkline-testing.mjs.map +1 -0
  243. package/fesm2022/ngwr-sparkline.mjs +3 -3
  244. package/fesm2022/ngwr-speed-dial-testing.mjs +281 -0
  245. package/fesm2022/ngwr-speed-dial-testing.mjs.map +1 -0
  246. package/fesm2022/ngwr-speed-dial.mjs +27 -12
  247. package/fesm2022/ngwr-speed-dial.mjs.map +1 -1
  248. package/fesm2022/ngwr-spinner.mjs +3 -3
  249. package/fesm2022/ngwr-splash-cursor-testing.mjs +89 -0
  250. package/fesm2022/ngwr-splash-cursor-testing.mjs.map +1 -0
  251. package/fesm2022/ngwr-splash-cursor.mjs +3 -3
  252. package/fesm2022/ngwr-split-text-testing.mjs +224 -0
  253. package/fesm2022/ngwr-split-text-testing.mjs.map +1 -0
  254. package/fesm2022/ngwr-split-text.mjs +31 -5
  255. package/fesm2022/ngwr-split-text.mjs.map +1 -1
  256. package/fesm2022/ngwr-splitter-testing.mjs +245 -0
  257. package/fesm2022/ngwr-splitter-testing.mjs.map +1 -0
  258. package/fesm2022/ngwr-splitter.mjs +3 -3
  259. package/fesm2022/ngwr-spotlight-card-testing.mjs +368 -0
  260. package/fesm2022/ngwr-spotlight-card-testing.mjs.map +1 -0
  261. package/fesm2022/ngwr-spotlight-card.mjs +7 -7
  262. package/fesm2022/ngwr-spotlight-card.mjs.map +1 -1
  263. package/fesm2022/ngwr-squircle.mjs +6 -6
  264. package/fesm2022/ngwr-star-border-testing.mjs +172 -0
  265. package/fesm2022/ngwr-star-border-testing.mjs.map +1 -0
  266. package/fesm2022/ngwr-star-border.mjs +4 -4
  267. package/fesm2022/ngwr-star-border.mjs.map +1 -1
  268. package/fesm2022/ngwr-statistic.mjs +9 -9
  269. package/fesm2022/ngwr-stepper-testing.mjs +8 -8
  270. package/fesm2022/ngwr-stepper-testing.mjs.map +1 -1
  271. package/fesm2022/ngwr-stepper.mjs +33 -8
  272. package/fesm2022/ngwr-stepper.mjs.map +1 -1
  273. package/fesm2022/ngwr-storage.mjs +17 -5
  274. package/fesm2022/ngwr-storage.mjs.map +1 -1
  275. package/fesm2022/ngwr-switch.mjs +3 -3
  276. package/fesm2022/ngwr-table.mjs +110 -40
  277. package/fesm2022/ngwr-table.mjs.map +1 -1
  278. package/fesm2022/ngwr-tabs-testing.mjs +11 -10
  279. package/fesm2022/ngwr-tabs-testing.mjs.map +1 -1
  280. package/fesm2022/ngwr-tabs.mjs +51 -11
  281. package/fesm2022/ngwr-tabs.mjs.map +1 -1
  282. package/fesm2022/ngwr-textarea.mjs +3 -3
  283. package/fesm2022/ngwr-theme.mjs +181 -4
  284. package/fesm2022/ngwr-theme.mjs.map +1 -1
  285. package/fesm2022/ngwr-tilt-card-testing.mjs +190 -0
  286. package/fesm2022/ngwr-tilt-card-testing.mjs.map +1 -0
  287. package/fesm2022/ngwr-tilt-card.mjs +26 -8
  288. package/fesm2022/ngwr-tilt-card.mjs.map +1 -1
  289. package/fesm2022/ngwr-timeline.mjs +6 -6
  290. package/fesm2022/ngwr-toast.mjs +44 -15
  291. package/fesm2022/ngwr-toast.mjs.map +1 -1
  292. package/fesm2022/ngwr-toolbar.mjs +3 -3
  293. package/fesm2022/ngwr-tour-testing.mjs +173 -0
  294. package/fesm2022/ngwr-tour-testing.mjs.map +1 -0
  295. package/fesm2022/ngwr-tour.mjs +34 -10
  296. package/fesm2022/ngwr-tour.mjs.map +1 -1
  297. package/fesm2022/ngwr-transfer.mjs +3 -3
  298. package/fesm2022/ngwr-tree.mjs +36 -11
  299. package/fesm2022/ngwr-tree.mjs.map +1 -1
  300. package/fesm2022/ngwr-typewriter-testing.mjs +242 -0
  301. package/fesm2022/ngwr-typewriter-testing.mjs.map +1 -0
  302. package/fesm2022/ngwr-typewriter.mjs +13 -5
  303. package/fesm2022/ngwr-typewriter.mjs.map +1 -1
  304. package/fesm2022/ngwr-typography.mjs +3 -3
  305. package/fesm2022/ngwr-utils.mjs +5 -2
  306. package/fesm2022/ngwr-utils.mjs.map +1 -1
  307. package/fesm2022/ngwr-version.mjs +1 -1
  308. package/fesm2022/ngwr-version.mjs.map +1 -1
  309. package/fesm2022/ngwr-virtual-scroll.mjs +4 -4
  310. package/fesm2022/ngwr-virtual-scroll.mjs.map +1 -1
  311. package/fesm2022/ngwr-waves-testing.mjs +128 -0
  312. package/fesm2022/ngwr-waves-testing.mjs.map +1 -0
  313. package/fesm2022/ngwr-waves.mjs +4 -4
  314. package/fesm2022/ngwr-waves.mjs.map +1 -1
  315. package/fesm2022/ngwr-window-testing.mjs +361 -0
  316. package/fesm2022/ngwr-window-testing.mjs.map +1 -0
  317. package/fesm2022/ngwr-window.mjs +175 -31
  318. package/fesm2022/ngwr-window.mjs.map +1 -1
  319. package/file-upload/styles/_index.scss +2 -2
  320. package/glitch-text/styles/_index.scss +27 -12
  321. package/i18n/en.json +71 -7
  322. package/i18n/ru.json +71 -7
  323. package/image-cropper/styles/_index.scss +19 -0
  324. package/input/styles/_index.scss +2 -2
  325. package/input-number/styles/_index.scss +2 -2
  326. package/input-otp/styles/_index.scss +9 -2
  327. package/knob/styles/_index.scss +1 -1
  328. package/lightbox/styles/_index.scss +16 -2
  329. package/line-chart/styles/_index.scss +28 -14
  330. package/list/styles/_index.scss +1 -1
  331. package/llms-full.txt +161 -19
  332. package/llms.txt +45 -10
  333. package/markdown/styles/_index.scss +3 -3
  334. package/mcp/api.js +6 -4
  335. package/mcp/catalog.js +40 -3
  336. package/mcp/providers.js +42 -0
  337. package/mcp/tools.js +22 -30
  338. package/meter-group/styles/_index.scss +1 -1
  339. package/overlay/styles/_index.scss +33 -1
  340. package/package.json +161 -12
  341. package/pagination/styles/_index.scss +23 -1
  342. package/popover/styles/_index.scss +16 -7
  343. package/progress/styles/_index.scss +1 -1
  344. package/radio/styles/_index.scss +2 -2
  345. package/rating/styles/_index.scss +1 -1
  346. package/schematics/collection.json +1 -1
  347. package/schematics/migrations/v12/index.js +65 -0
  348. package/schematics/migrations/v7/index.js +12 -1
  349. package/schematics/migrations/v8/index.js +10 -1
  350. package/schematics/migrations.json +5 -0
  351. package/schematics/ng-add/index.js +8 -3
  352. package/schematics/provider/index.js +80 -13
  353. package/schematics/use/index.js +9 -129
  354. package/schematics/use/rule.js +206 -0
  355. package/schematics/use/symbol-map.json +4 -4
  356. package/segmented/styles/_index.scss +14 -3
  357. package/select/styles/_index.scss +14 -2
  358. package/sidebar/styles/_index.scss +12 -10
  359. package/skills/ngwr/SKILL.md +117 -0
  360. package/skills/ngwr/references/catalog.md +212 -0
  361. package/skills/ngwr/references/setup.md +78 -0
  362. package/slider/styles/_index.scss +1 -1
  363. package/speed-dial/styles/_index.scss +1 -1
  364. package/stepper/styles/_index.scss +12 -3
  365. package/switch/styles/_index.scss +2 -2
  366. package/table/styles/_index.scss +61 -12
  367. package/tabs/styles/_index.scss +1 -1
  368. package/textarea/styles/_index.scss +1 -1
  369. package/theme/styles/_colors.scss +142 -56
  370. package/theme/styles/_dark.scss +46 -3
  371. package/theme/styles/_focus.scss +28 -5
  372. package/theme/styles/_mixins.scss +1 -1
  373. package/theme/styles/_variables.scss +67 -0
  374. package/transfer/styles/_index.scss +26 -3
  375. package/tree/styles/_index.scss +29 -6
  376. package/types/ngwr-action-sheet-testing.d.ts +260 -0
  377. package/types/ngwr-bar-chart-testing.d.ts +85 -0
  378. package/types/ngwr-blur-text-testing.d.ts +180 -0
  379. package/types/ngwr-blur-text.d.ts +20 -4
  380. package/types/ngwr-border-glow-testing.d.ts +219 -0
  381. package/types/ngwr-breadcrumbs.d.ts +17 -10
  382. package/types/ngwr-calendar-heatmap-testing.d.ts +79 -0
  383. package/types/ngwr-calendar-testing.d.ts +277 -0
  384. package/types/ngwr-calendar.d.ts +76 -0
  385. package/types/ngwr-carousel.d.ts +85 -6
  386. package/types/ngwr-cascader.d.ts +17 -0
  387. package/types/ngwr-checkbox.d.ts +13 -0
  388. package/types/ngwr-circular-text-testing.d.ts +196 -0
  389. package/types/ngwr-click-spark.d.ts +4 -0
  390. package/types/ngwr-color-picker-testing.d.ts +299 -0
  391. package/types/ngwr-color-picker.d.ts +34 -2
  392. package/types/ngwr-confetti.d.ts +8 -0
  393. package/types/ngwr-config.d.ts +10 -1
  394. package/types/ngwr-context-menu-testing.d.ts +24 -11
  395. package/types/ngwr-context-menu.d.ts +71 -1
  396. package/types/ngwr-counter.d.ts +1 -0
  397. package/types/{ngwr-date-adapter-fns.d.ts → ngwr-date-adapters-fns.d.ts} +33 -6
  398. package/types/{ngwr-date-adapter-luxon.d.ts → ngwr-date-adapters-luxon.d.ts} +1 -1
  399. package/types/ngwr-date-picker-testing.d.ts +17 -72
  400. package/types/ngwr-date-picker.d.ts +8 -4
  401. package/types/{ngwr-date-adapter.d.ts → ngwr-date.d.ts} +24 -5
  402. package/types/ngwr-decrypt-text-testing.d.ts +222 -0
  403. package/types/ngwr-dialog.d.ts +38 -1
  404. package/types/ngwr-divider.d.ts +25 -0
  405. package/types/ngwr-donut-chart-testing.d.ts +83 -0
  406. package/types/ngwr-donut-chart.d.ts +3 -3
  407. package/types/ngwr-drag-drop.d.ts +56 -2
  408. package/types/ngwr-drawer.d.ts +68 -5
  409. package/types/ngwr-dropdown.d.ts +9 -0
  410. package/types/ngwr-event-calendar-testing.d.ts +301 -0
  411. package/types/ngwr-event-calendar.d.ts +17 -8
  412. package/types/ngwr-falling-text-testing.d.ts +188 -0
  413. package/types/ngwr-falling-text.d.ts +1 -1
  414. package/types/ngwr-form.d.ts +12 -2
  415. package/types/ngwr-fuzzy-text-testing.d.ts +130 -0
  416. package/types/ngwr-gauge-testing.d.ts +71 -0
  417. package/types/ngwr-glitch-text-testing.d.ts +201 -0
  418. package/types/ngwr-gradient-text-testing.d.ts +186 -0
  419. package/types/ngwr-i18n.d.ts +13 -4
  420. package/types/ngwr-image-cropper-testing.d.ts +173 -0
  421. package/types/ngwr-image-cropper.d.ts +71 -5
  422. package/types/ngwr-input-number-testing.d.ts +15 -10
  423. package/types/ngwr-input-number.d.ts +44 -5
  424. package/types/ngwr-input-otp-testing.d.ts +12 -6
  425. package/types/ngwr-input-otp.d.ts +15 -1
  426. package/types/ngwr-knob-testing.d.ts +150 -0
  427. package/types/ngwr-lightbox-testing.d.ts +154 -0
  428. package/types/ngwr-lightbox.d.ts +6 -0
  429. package/types/ngwr-line-chart-testing.d.ts +93 -0
  430. package/types/ngwr-line-chart.d.ts +20 -3
  431. package/types/ngwr-markdown.d.ts +11 -0
  432. package/types/ngwr-marquee-testing.d.ts +280 -0
  433. package/types/ngwr-mention.d.ts +32 -0
  434. package/types/ngwr-meter-group-testing.d.ts +77 -0
  435. package/types/ngwr-overlay.d.ts +20 -1
  436. package/types/ngwr-pagination-testing.d.ts +4 -4
  437. package/types/ngwr-pipes.d.ts +1 -1
  438. package/types/ngwr-popover-testing.d.ts +7 -2
  439. package/types/ngwr-popover.d.ts +1 -0
  440. package/types/ngwr-result.d.ts +6 -0
  441. package/types/ngwr-rotating-text-testing.d.ts +191 -0
  442. package/types/ngwr-segmented-testing.d.ts +9 -0
  443. package/types/ngwr-segmented.d.ts +21 -1
  444. package/types/ngwr-select.d.ts +100 -6
  445. package/types/ngwr-shiny-text-testing.d.ts +165 -0
  446. package/types/ngwr-shiny-text.d.ts +4 -2
  447. package/types/ngwr-sidebar.d.ts +14 -5
  448. package/types/ngwr-slider.d.ts +84 -1
  449. package/types/ngwr-sparkline-testing.d.ts +69 -0
  450. package/types/ngwr-speed-dial-testing.d.ts +199 -0
  451. package/types/ngwr-speed-dial.d.ts +22 -3
  452. package/types/ngwr-splash-cursor-testing.d.ts +95 -0
  453. package/types/ngwr-split-text-testing.d.ts +209 -0
  454. package/types/ngwr-split-text.d.ts +21 -0
  455. package/types/ngwr-splitter-testing.d.ts +174 -0
  456. package/types/ngwr-spotlight-card-testing.d.ts +303 -0
  457. package/types/ngwr-star-border-testing.d.ts +135 -0
  458. package/types/ngwr-stepper-testing.d.ts +5 -5
  459. package/types/ngwr-stepper.d.ts +8 -0
  460. package/types/ngwr-storage.d.ts +1 -0
  461. package/types/ngwr-table.d.ts +114 -12
  462. package/types/ngwr-tabs-testing.d.ts +11 -10
  463. package/types/ngwr-tabs.d.ts +2 -0
  464. package/types/ngwr-theme.d.ts +82 -1
  465. package/types/ngwr-tilt-card-testing.d.ts +158 -0
  466. package/types/ngwr-tilt-card.d.ts +2 -0
  467. package/types/ngwr-toast.d.ts +14 -5
  468. package/types/ngwr-tour-testing.d.ts +143 -0
  469. package/types/ngwr-tour.d.ts +22 -4
  470. package/types/ngwr-tree.d.ts +12 -4
  471. package/types/ngwr-typewriter-testing.d.ts +211 -0
  472. package/types/ngwr-utils.d.ts +5 -2
  473. package/types/ngwr-version.d.ts +1 -1
  474. package/types/ngwr-waves-testing.d.ts +121 -0
  475. package/types/ngwr-window-testing.d.ts +263 -0
  476. package/types/ngwr-window.d.ts +66 -21
  477. package/typography/styles/_index.scss +1 -1
  478. package/window/styles/_index.scss +116 -42
  479. package/fesm2022/ngwr-date-adapter-fns.mjs.map +0 -1
  480. package/fesm2022/ngwr-date-adapter-luxon.mjs.map +0 -1
  481. package/fesm2022/ngwr-date-adapter.mjs.map +0 -1
@@ -6,6 +6,11 @@
6
6
  // Glitch text (reactbits port). Two pseudo-element clones of the text
7
7
  // are offset by ±5px and tinted with `text-shadow` (red / cyan).
8
8
  // A clip-path keyframe slices random horizontal bands of each clone.
9
+ //
10
+ // The clones hang off `__clones`, never off the host. `content: attr(data-text)`
11
+ // is exposed to the accessibility tree, so pseudos on the host made the string
12
+ // announce three times; `__clones` carries `aria-hidden` and takes both of them
13
+ // out of the tree at once.
9
14
 
10
15
  .wr-glitch-text {
11
16
  --wr-glitch-text-before-duration: 2s;
@@ -20,8 +25,18 @@
20
25
  font-weight: 900;
21
26
  color: var(--wr-color-on-surface, #0f172a);
22
27
 
23
- &::before,
24
- &::after {
28
+ // The decorative layer. Stretched over the label so the clones land exactly
29
+ // where they did when they hung off the host. No `pointer-events: none`: the
30
+ // clones overhang the host by 10px on each side, and the hover-only variant
31
+ // is gated on `:hover`, so a layer the pointer passes through would leave the
32
+ // effect flickering off along those two strips.
33
+ &__clones {
34
+ position: absolute;
35
+ inset: 0;
36
+ }
37
+
38
+ &__clones::before,
39
+ &__clones::after {
25
40
  content: attr(data-text);
26
41
  position: absolute;
27
42
  top: 0;
@@ -31,29 +46,29 @@
31
46
  clip-path: inset(0 0 0 0);
32
47
  }
33
48
 
34
- // Always-on variant — pseudos animate continuously.
35
- &:not(&--hover-only)::before {
49
+ // Always-on variant — clones animate continuously.
50
+ &:not(&--hover-only) &__clones::before {
36
51
  // rtl-ok: aberration offset paired with the physical x-offset in `--wr-glitch-text-before-shadow` (`5px 0`)
37
52
  left: -10px;
38
53
  text-shadow: var(--wr-glitch-text-before-shadow);
39
54
  animation: wr-glitch-text-tear var(--wr-glitch-text-before-duration) infinite linear alternate-reverse;
40
55
  }
41
- &:not(&--hover-only)::after {
56
+ &:not(&--hover-only) &__clones::after {
42
57
  // rtl-ok: aberration offset paired with the physical x-offset in `--wr-glitch-text-after-shadow` (`-5px 0`)
43
58
  left: 10px;
44
59
  text-shadow: var(--wr-glitch-text-after-shadow);
45
60
  animation: wr-glitch-text-tear var(--wr-glitch-text-after-duration) infinite linear alternate-reverse;
46
61
  }
47
62
 
48
- // Hover-only variant — pseudos hidden by default, animate on :hover.
49
- &--hover-only::before,
50
- &--hover-only::after {
63
+ // Hover-only variant — clones hidden by default, animate on :hover.
64
+ &--hover-only &__clones::before,
65
+ &--hover-only &__clones::after {
51
66
  content: '';
52
67
  opacity: 0;
53
68
  animation: none;
54
69
  }
55
70
 
56
- &--hover-only:hover::before {
71
+ &--hover-only:hover &__clones::before {
57
72
  content: attr(data-text);
58
73
  opacity: 1;
59
74
  // rtl-ok: same decorative offset as the always-on variant, paired with a physical `text-shadow` x-offset
@@ -61,7 +76,7 @@
61
76
  text-shadow: var(--wr-glitch-text-before-shadow);
62
77
  animation: wr-glitch-text-tear var(--wr-glitch-text-before-duration) infinite linear alternate-reverse;
63
78
  }
64
- &--hover-only:hover::after {
79
+ &--hover-only:hover &__clones::after {
65
80
  content: attr(data-text);
66
81
  opacity: 1;
67
82
  // rtl-ok: same decorative offset as the always-on variant, paired with a physical `text-shadow` x-offset
@@ -75,8 +90,8 @@
75
90
  // reads as broken double-vision text, so plain text is the right fallback.
76
91
  // `!important` outweighs the higher-specificity `:hover` re-enable rules.
77
92
  @media (prefers-reduced-motion: reduce) {
78
- .wr-glitch-text::before,
79
- .wr-glitch-text::after {
93
+ .wr-glitch-text__clones::before,
94
+ .wr-glitch-text__clones::after {
80
95
  content: '' !important;
81
96
  opacity: 0 !important;
82
97
  animation: none !important;
package/i18n/en.json CHANGED
@@ -42,7 +42,9 @@
42
42
  "toggleRow": "Toggle child rows",
43
43
  "selectGroup": "Select group",
44
44
  "toggleGroup": "Toggle group",
45
- "noMatches": "No matches"
45
+ "noMatches": "No matches",
46
+ "search": "Search",
47
+ "reset": "Reset"
46
48
  },
47
49
  "eventCalendar": {
48
50
  "today": "Today",
@@ -66,6 +68,9 @@
66
68
  "splitter": {
67
69
  "divider": "Resize panes"
68
70
  },
71
+ "stepper": {
72
+ "optional": "optional"
73
+ },
69
74
  "transfer": {
70
75
  "source": "Available",
71
76
  "target": "Selected",
@@ -76,6 +81,9 @@
76
81
  "toSource": "Move to available",
77
82
  "count": "{{checked}} / {{total}}"
78
83
  },
84
+ "form": {
85
+ "optional": "optional"
86
+ },
79
87
  "validation": {
80
88
  "required": "This field is required.",
81
89
  "requiredTrue": "This field must be checked.",
@@ -85,7 +93,7 @@
85
93
  "min": "Enter {{min}} or more.",
86
94
  "max": "Enter {{max}} or less.",
87
95
  "pattern": "This value is not in the expected format.",
88
- "noWhitespace": "This field cannot be blank.",
96
+ "noWhitespace": "This value cannot contain spaces.",
89
97
  "hexColor": "Enter a hex colour, e.g. #1a2b3c.",
90
98
  "url": "Enter a valid URL.",
91
99
  "cardNumber": "Enter a valid card number.",
@@ -104,7 +112,8 @@
104
112
  "clearSelection": "Clear selection",
105
113
  "removeItem": "Remove {{label}}",
106
114
  "noResults": "No results",
107
- "loading": "Loading…"
115
+ "loading": "Loading…",
116
+ "more": "+{{count}} more"
108
117
  },
109
118
  "tree": {
110
119
  "expand": "Expand",
@@ -135,6 +144,7 @@
135
144
  "cancel": "Cancel"
136
145
  },
137
146
  "toast": {
147
+ "region": "Notifications",
138
148
  "close": "Close",
139
149
  "copy": "Copy",
140
150
  "copied": "Copied",
@@ -148,6 +158,11 @@
148
158
  "increment": "Increment",
149
159
  "decrement": "Decrement"
150
160
  },
161
+ "inputOtp": {
162
+ "label": "Verification code",
163
+ "digit": "Digit {{index}}",
164
+ "character": "Character {{index}}"
165
+ },
151
166
  "anchor": {
152
167
  "label": "Table of contents"
153
168
  },
@@ -157,6 +172,9 @@
157
172
  "backTop": {
158
173
  "label": "Back to top"
159
174
  },
175
+ "breadcrumbs": {
176
+ "label": "Breadcrumbs"
177
+ },
160
178
  "burger": {
161
179
  "label": "Toggle menu"
162
180
  },
@@ -164,7 +182,26 @@
164
182
  "prevMonth": "Previous month",
165
183
  "nextMonth": "Next month",
166
184
  "prevYear": "Previous year",
167
- "nextYear": "Next year"
185
+ "nextYear": "Next year",
186
+ "prevYears": "Previous 12 years",
187
+ "nextYears": "Next 12 years"
188
+ },
189
+ "imageCropper": {
190
+ "empty": "No image",
191
+ "window": "Crop region",
192
+ "keyHelp": "Arrow keys move the crop. Hold Alt with an arrow key to resize it, and Shift for larger steps. The crop is announced as left, top, width and height in image pixels."
193
+ },
194
+ "sortableList": {
195
+ "keyHelp": "Press Space to pick this item up, then use the arrow keys to move it. Press Space again to drop it, or Escape to put it back.",
196
+ "grabbed": "Grabbed. {{index}} of {{total}}.",
197
+ "moved": "{{index}} of {{total}}.",
198
+ "dropped": "Dropped. {{index}} of {{total}}.",
199
+ "cancelled": "Move cancelled."
200
+ },
201
+ "colorPicker": {
202
+ "area": "Saturation and brightness, {{saturation}}% and {{brightness}}%",
203
+ "hue": "Hue",
204
+ "alpha": "Opacity"
168
205
  },
169
206
  "calendarHeatmap": {
170
207
  "label": "Calendar heatmap"
@@ -183,7 +220,9 @@
183
220
  "goToSlide": "Go to slide {{index}}",
184
221
  "prev": "Previous slide",
185
222
  "next": "Next slide",
186
- "pagination": "Carousel pagination"
223
+ "pagination": "Carousel pagination",
224
+ "roledescription": "carousel",
225
+ "slideRoledescription": "slide"
187
226
  },
188
227
  "actionSheet": {
189
228
  "label": "Actions"
@@ -200,7 +239,15 @@
200
239
  "close": "Close preview"
201
240
  },
202
241
  "window": {
203
- "close": "Close"
242
+ "close": "Close",
243
+ "minimize": "Minimize",
244
+ "maximize": "Maximize",
245
+ "restore": "Restore",
246
+ "restoreDown": "Restore down",
247
+ "restoreWindow": "Restore {{title}}",
248
+ "closeWindow": "Close window",
249
+ "untitled": "Untitled",
250
+ "taskbar": "Minimized windows"
204
251
  },
205
252
  "dialog": {
206
253
  "close": "Close dialog"
@@ -239,7 +286,19 @@
239
286
  "rangeStart": "Range start",
240
287
  "rangeEnd": "Range end",
241
288
  "startTime": "Start time",
242
- "endTime": "End time"
289
+ "endTime": "End time",
290
+ "hours": "Hours",
291
+ "minutes": "Minutes",
292
+ "seconds": "Seconds",
293
+ "incrementHours": "Increment hours",
294
+ "decrementHours": "Decrement hours",
295
+ "incrementMinutes": "Increment minutes",
296
+ "decrementMinutes": "Decrement minutes",
297
+ "incrementSeconds": "Increment seconds",
298
+ "decrementSeconds": "Decrement seconds",
299
+ "toggleAmPm": "Toggle AM / PM",
300
+ "am": "AM",
301
+ "pm": "PM"
243
302
  },
244
303
  "sidebar": {
245
304
  "label": "Sidebar"
@@ -262,6 +321,11 @@
262
321
  "knob": {
263
322
  "label": "Value"
264
323
  },
324
+ "slider": {
325
+ "label": "Value",
326
+ "lower": "Lower value",
327
+ "upper": "Upper value"
328
+ },
265
329
  "speedDial": {
266
330
  "label": "Actions"
267
331
  },
package/i18n/ru.json CHANGED
@@ -42,7 +42,9 @@
42
42
  "toggleRow": "Показать вложенные строки",
43
43
  "selectGroup": "Выбрать группу",
44
44
  "toggleGroup": "Свернуть группу",
45
- "noMatches": "Ничего не найдено"
45
+ "noMatches": "Ничего не найдено",
46
+ "search": "Поиск",
47
+ "reset": "Сбросить"
46
48
  },
47
49
  "eventCalendar": {
48
50
  "today": "Сегодня",
@@ -66,6 +68,9 @@
66
68
  "splitter": {
67
69
  "divider": "Изменить размер областей"
68
70
  },
71
+ "stepper": {
72
+ "optional": "необязательно"
73
+ },
69
74
  "transfer": {
70
75
  "source": "Доступно",
71
76
  "target": "Выбрано",
@@ -76,6 +81,9 @@
76
81
  "toSource": "Вернуть в доступные",
77
82
  "count": "{{checked}} / {{total}}"
78
83
  },
84
+ "form": {
85
+ "optional": "необязательно"
86
+ },
79
87
  "validation": {
80
88
  "required": "Обязательное поле.",
81
89
  "requiredTrue": "Нужно поставить отметку.",
@@ -85,7 +93,7 @@
85
93
  "min": "Не меньше {{min}}.",
86
94
  "max": "Не больше {{max}}.",
87
95
  "pattern": "Значение не соответствует формату.",
88
- "noWhitespace": "Поле не может состоять из пробелов.",
96
+ "noWhitespace": "Значение не может содержать пробелы.",
89
97
  "hexColor": "Введите цвет в формате #1a2b3c.",
90
98
  "url": "Введите корректный адрес.",
91
99
  "cardNumber": "Введите корректный номер карты.",
@@ -104,7 +112,8 @@
104
112
  "clearSelection": "Очистить выбор",
105
113
  "removeItem": "Удалить {{label}}",
106
114
  "noResults": "Ничего не найдено",
107
- "loading": "Загрузка…"
115
+ "loading": "Загрузка…",
116
+ "more": "ещё {{count}}"
108
117
  },
109
118
  "tree": {
110
119
  "expand": "Развернуть",
@@ -135,6 +144,7 @@
135
144
  "cancel": "Отмена"
136
145
  },
137
146
  "toast": {
147
+ "region": "Уведомления",
138
148
  "close": "Закрыть",
139
149
  "copy": "Копировать",
140
150
  "copied": "Скопировано",
@@ -148,6 +158,11 @@
148
158
  "increment": "Увеличить",
149
159
  "decrement": "Уменьшить"
150
160
  },
161
+ "inputOtp": {
162
+ "label": "Код подтверждения",
163
+ "digit": "Цифра {{index}}",
164
+ "character": "Символ {{index}}"
165
+ },
151
166
  "anchor": {
152
167
  "label": "Содержание"
153
168
  },
@@ -157,6 +172,9 @@
157
172
  "backTop": {
158
173
  "label": "Наверх"
159
174
  },
175
+ "breadcrumbs": {
176
+ "label": "Хлебные крошки"
177
+ },
160
178
  "burger": {
161
179
  "label": "Переключить меню"
162
180
  },
@@ -164,7 +182,26 @@
164
182
  "prevMonth": "Предыдущий месяц",
165
183
  "nextMonth": "Следующий месяц",
166
184
  "prevYear": "Предыдущий год",
167
- "nextYear": "Следующий год"
185
+ "nextYear": "Следующий год",
186
+ "prevYears": "Предыдущие 12 лет",
187
+ "nextYears": "Следующие 12 лет"
188
+ },
189
+ "imageCropper": {
190
+ "empty": "Нет изображения",
191
+ "window": "Область обрезки",
192
+ "keyHelp": "Стрелки перемещают область обрезки. Alt со стрелкой изменяет её размер, Shift увеличивает шаг. Область объявляется как отступ слева, отступ сверху, ширина и высота в пикселях изображения."
193
+ },
194
+ "sortableList": {
195
+ "keyHelp": "Нажмите пробел, чтобы взять элемент, затем перемещайте его стрелками. Пробел ещё раз — отпустить, Escape — вернуть на место.",
196
+ "grabbed": "Взят. {{index}} из {{total}}.",
197
+ "moved": "{{index}} из {{total}}.",
198
+ "dropped": "Отпущен. {{index}} из {{total}}.",
199
+ "cancelled": "Перемещение отменено."
200
+ },
201
+ "colorPicker": {
202
+ "area": "Насыщенность и яркость, {{saturation}}% и {{brightness}}%",
203
+ "hue": "Оттенок",
204
+ "alpha": "Непрозрачность"
168
205
  },
169
206
  "calendarHeatmap": {
170
207
  "label": "Календарная тепловая карта"
@@ -183,7 +220,9 @@
183
220
  "goToSlide": "Перейти к слайду {{index}}",
184
221
  "prev": "Предыдущий слайд",
185
222
  "next": "Следующий слайд",
186
- "pagination": "Пагинация карусели"
223
+ "pagination": "Пагинация карусели",
224
+ "roledescription": "карусель",
225
+ "slideRoledescription": "слайд"
187
226
  },
188
227
  "actionSheet": {
189
228
  "label": "Действия"
@@ -200,7 +239,15 @@
200
239
  "close": "Закрыть превью"
201
240
  },
202
241
  "window": {
203
- "close": "Закрыть"
242
+ "close": "Закрыть",
243
+ "minimize": "Свернуть",
244
+ "maximize": "Развернуть",
245
+ "restore": "Восстановить",
246
+ "restoreDown": "Восстановить размер",
247
+ "restoreWindow": "Восстановить {{title}}",
248
+ "closeWindow": "Закрыть окно",
249
+ "untitled": "Без названия",
250
+ "taskbar": "Свёрнутые окна"
204
251
  },
205
252
  "dialog": {
206
253
  "close": "Закрыть диалог"
@@ -239,7 +286,19 @@
239
286
  "rangeStart": "Начало периода",
240
287
  "rangeEnd": "Конец периода",
241
288
  "startTime": "Время начала",
242
- "endTime": "Время окончания"
289
+ "endTime": "Время окончания",
290
+ "hours": "Часы",
291
+ "minutes": "Минуты",
292
+ "seconds": "Секунды",
293
+ "incrementHours": "Увеличить часы",
294
+ "decrementHours": "Уменьшить часы",
295
+ "incrementMinutes": "Увеличить минуты",
296
+ "decrementMinutes": "Уменьшить минуты",
297
+ "incrementSeconds": "Увеличить секунды",
298
+ "decrementSeconds": "Уменьшить секунды",
299
+ "toggleAmPm": "Переключить ДП / ПП",
300
+ "am": "ДП",
301
+ "pm": "ПП"
243
302
  },
244
303
  "sidebar": {
245
304
  "label": "Боковая панель"
@@ -262,6 +321,11 @@
262
321
  "knob": {
263
322
  "label": "Значение"
264
323
  },
324
+ "slider": {
325
+ "label": "Значение",
326
+ "lower": "Нижнее значение",
327
+ "upper": "Верхнее значение"
328
+ },
265
329
  "speedDial": {
266
330
  "label": "Действия"
267
331
  },
@@ -36,6 +36,25 @@
36
36
  border: 1px solid var(--wr-color-surface);
37
37
  cursor: move;
38
38
  box-shadow: 0 0 0 1px rgba(var(--wr-color-primary-rgb), 0.6);
39
+
40
+ &:focus-visible {
41
+ @include theme.focus-ring;
42
+ }
43
+ }
44
+
45
+ // The help text and the live region. Both exist for a screen reader only: the
46
+ // crop rectangle and its handles are the sighted affordance for the same two
47
+ // things.
48
+ &__sr-only {
49
+ position: absolute;
50
+ width: 1px;
51
+ height: 1px;
52
+ padding: 0;
53
+ margin: -1px;
54
+ overflow: hidden;
55
+ clip: rect(0, 0, 0, 0);
56
+ white-space: nowrap;
57
+ border: 0;
39
58
  }
40
59
 
41
60
  &__handle {
@@ -50,7 +50,7 @@
50
50
  &:disabled,
51
51
  &[readonly] {
52
52
  --wr-input-color: var(--wr-color-on-surface-muted);
53
- --wr-input-bg: rgba(var(--wr-color-outline-rgb), 0.35);
53
+ --wr-input-bg: var(--wr-color-fill);
54
54
  }
55
55
 
56
56
  &:disabled {
@@ -195,7 +195,7 @@
195
195
 
196
196
  &:disabled {
197
197
  cursor: not-allowed;
198
- opacity: 0.6;
198
+ opacity: var(--wr-disabled-opacity);
199
199
  }
200
200
  }
201
201
  }
@@ -77,11 +77,11 @@
77
77
 
78
78
  &:disabled {
79
79
  cursor: not-allowed;
80
- opacity: 0.4;
80
+ opacity: var(--wr-disabled-opacity);
81
81
  }
82
82
  }
83
83
 
84
84
  &--disabled {
85
- opacity: 0.7;
85
+ opacity: var(--wr-disabled-opacity);
86
86
  }
87
87
  }
@@ -13,6 +13,13 @@
13
13
  display: inline-flex;
14
14
  align-items: center;
15
15
  gap: var(--wr-input-otp-gap);
16
+ // A long code has to wrap, because the alternative is off the screen: the
17
+ // cells are a fixed `--wr-input-otp-size` and never shrink, so eight of them
18
+ // at the default size measure 8 × 40 + 7 × 8 = 376px and a 375px phone got a
19
+ // horizontal scrollbar on the whole page. Wrapping rather than shrinking on
20
+ // purpose — a cell narrower than 40px is already under the 44px touch target,
21
+ // and squeezing it to fit trades a visible defect for an unreachable one.
22
+ flex-wrap: wrap;
16
23
  font-family: var(--wr-font-family-base);
17
24
 
18
25
  &__cell {
@@ -44,7 +51,7 @@
44
51
  }
45
52
 
46
53
  &:disabled {
47
- background: rgba(var(--wr-color-outline-rgb), 0.5);
54
+ background: var(--wr-color-fill-strong);
48
55
  color: var(--wr-color-on-surface-muted);
49
56
  cursor: not-allowed;
50
57
  }
@@ -66,6 +73,6 @@
66
73
  }
67
74
 
68
75
  &--disabled {
69
- opacity: 0.7;
76
+ opacity: var(--wr-disabled-opacity);
70
77
  }
71
78
  }
@@ -60,6 +60,6 @@
60
60
 
61
61
  &--disabled &__surface {
62
62
  cursor: not-allowed;
63
- opacity: 0.65;
63
+ opacity: var(--wr-disabled-opacity);
64
64
  }
65
65
  }
@@ -47,9 +47,12 @@
47
47
  background: transparent;
48
48
  cursor: zoom-in;
49
49
 
50
+ // Not cancelled — MOVED. The ring is drawn on the host by
51
+ // `&:has(&__trigger:focus-visible)` below (see the comment there); this
52
+ // only keeps the UA's own ring from leaking a few clipped corner pixels
53
+ // through in a second colour.
50
54
  &:focus-visible {
51
- outline: 2px solid var(--wr-color-primary);
52
- outline-offset: 2px;
55
+ outline: none;
53
56
  }
54
57
  }
55
58
 
@@ -71,6 +74,17 @@
71
74
  &--loading &__thumb {
72
75
  opacity: 0;
73
76
  }
77
+
78
+ // The trigger is `width: 100%; height: 100%`, so it is exactly coterminous
79
+ // with the host — and the host clips (`overflow: hidden` above, for the
80
+ // rounded corners), so a ring drawn on the button falls entirely outside the
81
+ // clip and nothing survives. Insetting the offset does not rescue it either:
82
+ // `&__thumb` is `position: relative; z-index: 2` and paints over the button's
83
+ // own outline. An element's outline is not clipped by its OWN `overflow`, so
84
+ // the ring goes on the host instead.
85
+ &:has(&__trigger:focus-visible) {
86
+ @include theme.focus-ring;
87
+ }
74
88
  }
75
89
 
76
90
  @keyframes wr-lightbox-shimmer {
@@ -74,26 +74,40 @@
74
74
  }
75
75
 
76
76
  &__x-labels {
77
- display: flex;
78
- gap: 0.25rem;
77
+ position: relative;
79
78
  margin-top: 0.25rem;
80
- // These two mirror `padding.left` / `padding.right` in line-chart.ts, which are
81
- // SVG viewBox coordinates (`[attr.x1]="padding.left"`). SVG geometry is absolute
82
- // and does not flip with `direction`, so the label strip has to stay on the same
83
- // physical axis as the axis it labels.
84
- // rtl-ok: physical SVG gutter — must track the y-axis the TS draws at x=36
85
- padding-left: 36px;
86
- // rtl-ok: the other half of that same physical SVG gutter pair
87
- padding-right: 16px;
79
+ font-size: var(--wr-text-xs);
80
+ // The labels are absolutely positioned onto their points, so the strip has no
81
+ // content of its own to give it a height. Without this it collapses and the
82
+ // labels overlap whatever the page puts under the chart.
83
+ height: 1.25em;
84
+ // A `translateX` percentage means the LABEL's own width, so the room left beside it
85
+ // has to arrive in another unit — `cqw` is this strip's. Every label is out of flow,
86
+ // so the strip contributes no intrinsic width either way and the containment this
87
+ // turns on costs the layout nothing.
88
+ container-type: inline-size;
88
89
  }
89
90
 
90
91
  &__x-label {
91
- flex: 1 1 0;
92
- text-align: center;
93
- font-size: var(--wr-text-xs);
94
- color: var(--wr-color-on-surface-muted);
92
+ position: absolute;
93
+ // rtl-ok: the SVG's own x, and SVG coordinates do not flip with `direction`
94
+ left: calc(var(--wr-line-chart-x, 50) * 1%);
95
+ // Centred on the point it names, but never past either end of the strip: the shift
96
+ // is the smaller of half the label and the room actually left on that side, so a
97
+ // label that fits sits exactly on its dot and only the outermost ones move inwards.
98
+ // Physical for the same reason `left` is. Together with the width bound below, a
99
+ // label stays inside its own slot: measured in Chromium at 600px, twelve month names
100
+ // went from four overlapping pairs and 13px hanging outside the chart to neither.
101
+ // jsdom has no layout, so no spec can hold that — the spec pins the two numbers the
102
+ // template hands this rule instead.
103
+ transform: translateX(
104
+ clamp(calc(var(--wr-line-chart-x, 50) * -1cqw), -50%, calc((100 - var(--wr-line-chart-x, 50)) * 1cqw - 100%))
105
+ );
106
+ max-width: calc(var(--wr-line-chart-x-max, 100) * 1%);
95
107
  overflow: hidden;
96
108
  text-overflow: ellipsis;
109
+ font-size: inherit;
110
+ color: var(--wr-color-on-surface-muted);
97
111
  white-space: nowrap;
98
112
  }
99
113
  }
@@ -71,7 +71,7 @@
71
71
  }
72
72
 
73
73
  &--disabled {
74
- opacity: 0.55;
74
+ opacity: var(--wr-disabled-opacity);
75
75
  pointer-events: none;
76
76
  cursor: not-allowed;
77
77
  }