@watermarkinsights/ripple 5.30.0 → 5.31.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/dist/cjs/app-globals-df7ca137.js +103 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/priv-calendar.cjs.entry.js +27 -27
  4. package/dist/cjs/priv-chart-popover-old.cjs.entry.js +2 -2
  5. package/dist/cjs/priv-chart-popover_2.cjs.entry.js +3 -3
  6. package/dist/cjs/priv-navigator-button.cjs.entry.js +1 -1
  7. package/dist/cjs/priv-navigator-item.cjs.entry.js +1 -1
  8. package/dist/cjs/priv-option-list.cjs.entry.js +1 -1
  9. package/dist/cjs/ripple.cjs.js +1 -1
  10. package/dist/cjs/wm-action-menu_2.cjs.entry.js +5 -4
  11. package/dist/cjs/wm-button.cjs.entry.js +1 -1
  12. package/dist/cjs/wm-chart-bar.cjs.entry.js +1 -1
  13. package/dist/cjs/wm-chart-column.cjs.entry.js +1 -1
  14. package/dist/cjs/wm-chart.cjs.entry.js +1 -1
  15. package/dist/cjs/wm-date-range.cjs.entry.js +25 -9
  16. package/dist/cjs/wm-datepicker.cjs.entry.js +37 -11
  17. package/dist/cjs/wm-file-list.cjs.entry.js +1 -1
  18. package/dist/cjs/wm-file.cjs.entry.js +1 -1
  19. package/dist/cjs/wm-flyout.cjs.entry.js +6 -1
  20. package/dist/cjs/wm-input.cjs.entry.js +1 -1
  21. package/dist/cjs/wm-line-chart.cjs.entry.js +1 -1
  22. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +4 -4
  23. package/dist/cjs/wm-modal_3.cjs.entry.js +19 -4
  24. package/dist/cjs/wm-navigation_3.cjs.entry.js +4 -4
  25. package/dist/cjs/wm-navigator.cjs.entry.js +1 -1
  26. package/dist/cjs/wm-nested-select.cjs.entry.js +3 -3
  27. package/dist/cjs/wm-optgroup.cjs.entry.js +11 -1
  28. package/dist/cjs/wm-option_2.cjs.entry.js +5 -5
  29. package/dist/cjs/wm-pagination.cjs.entry.js +1 -1
  30. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +2 -2
  31. package/dist/cjs/wm-search.cjs.entry.js +2 -2
  32. package/dist/cjs/wm-snackbar.cjs.entry.js +2 -2
  33. package/dist/cjs/wm-tab-item_3.cjs.entry.js +6 -6
  34. package/dist/cjs/wm-tag-input.cjs.entry.js +2 -2
  35. package/dist/cjs/wm-tag-option.cjs.entry.js +8 -0
  36. package/dist/cjs/wm-textarea.cjs.entry.js +1 -1
  37. package/dist/cjs/wm-timepicker.cjs.entry.js +14 -2
  38. package/dist/cjs/wm-toggletip.cjs.entry.js +3 -3
  39. package/dist/cjs/wm-uploader.cjs.entry.js +2 -2
  40. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +7 -2
  41. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.js +7 -2
  42. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +58 -6
  43. package/dist/collection/components/charts/wm-chart/wm-chart.js +139 -13
  44. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.js +134 -7
  45. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.js +102 -8
  46. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.js +90 -8
  47. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +153 -17
  48. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +63 -7
  49. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +85 -5
  50. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +52 -6
  51. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +47 -47
  52. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +33 -29
  53. package/dist/collection/components/datepickers/wm-date-range.js +246 -29
  54. package/dist/collection/components/datepickers/wm-datepicker.js +254 -30
  55. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +7 -1
  56. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +193 -17
  57. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +116 -11
  58. package/dist/collection/components/selects/wm-option/wm-option.js +153 -18
  59. package/dist/collection/components/selects/wm-select/wm-select.js +187 -21
  60. package/dist/collection/components/wm-action-menu/wm-action-menu.js +148 -12
  61. package/dist/collection/components/wm-button/wm-button.js +212 -18
  62. package/dist/collection/components/wm-file/wm-file.js +108 -14
  63. package/dist/collection/components/wm-file-list/wm-file-list.js +74 -2
  64. package/dist/collection/components/wm-flyout/wm-flyout.js +215 -16
  65. package/dist/collection/components/wm-input/wm-input.js +195 -20
  66. package/dist/collection/components/wm-menuitem/wm-menuitem.js +62 -5
  67. package/dist/collection/components/wm-modal/wm-modal-footer.js +63 -6
  68. package/dist/collection/components/wm-modal/wm-modal-header.js +34 -3
  69. package/dist/collection/components/wm-modal/wm-modal.js +181 -14
  70. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +5 -1
  71. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +5 -1
  72. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +6 -2
  73. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +37 -3
  74. package/dist/collection/components/wm-navigation/wm-navigation-item.js +47 -5
  75. package/dist/collection/components/wm-navigation/wm-navigation.js +54 -4
  76. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +5 -1
  77. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +5 -1
  78. package/dist/collection/components/wm-navigator/wm-navigator.js +102 -9
  79. package/dist/collection/components/wm-pagination/wm-pagination.js +106 -9
  80. package/dist/collection/components/wm-search/wm-search.js +182 -16
  81. package/dist/collection/components/wm-snackbar/wm-snackbar.js +96 -5
  82. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +66 -10
  83. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +96 -5
  84. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +42 -6
  85. package/dist/collection/components/wm-tag-input/wm-tag-input.js +205 -17
  86. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +97 -12
  87. package/dist/collection/components/wm-textarea/wm-textarea.js +116 -13
  88. package/dist/collection/components/wm-timepicker/wm-timepicker.js +190 -16
  89. package/dist/collection/components/wm-toggletip/wm-toggletip.js +87 -8
  90. package/dist/collection/components/wm-uploader/wm-uploader.js +142 -14
  91. package/dist/collection/components/wm-wrapper/wm-wrapper.js +3 -0
  92. package/dist/collection/global/services/__mocks__/http-service.js +1 -1
  93. package/dist/docs/docs.d.ts +435 -0
  94. package/dist/docs/docs.json +13915 -0
  95. package/dist/docs/props-reference.json +2028 -0
  96. package/dist/docs/skill/index.md +32 -0
  97. package/dist/docs/skill/wm-action-menu.md +93 -0
  98. package/dist/docs/skill/wm-button.md +103 -0
  99. package/dist/docs/skill/wm-chart-bar.md +129 -0
  100. package/dist/docs/skill/wm-chart-column.md +96 -0
  101. package/dist/docs/skill/wm-chart-legend.md +67 -0
  102. package/dist/docs/skill/wm-chart-slice.md +55 -0
  103. package/dist/docs/skill/wm-chart.md +92 -0
  104. package/dist/docs/skill/wm-date-range.md +153 -0
  105. package/dist/docs/skill/wm-datepicker.md +134 -0
  106. package/dist/docs/skill/wm-file-list.md +97 -0
  107. package/dist/docs/skill/wm-file.md +78 -0
  108. package/dist/docs/skill/wm-flyout.md +174 -0
  109. package/dist/docs/skill/wm-input.md +126 -0
  110. package/dist/docs/skill/wm-line-chart.md +108 -0
  111. package/dist/docs/skill/wm-menuitem.md +72 -0
  112. package/dist/docs/skill/wm-modal-footer.md +73 -0
  113. package/dist/docs/skill/wm-modal-header.md +65 -0
  114. package/dist/docs/skill/wm-modal.md +137 -0
  115. package/dist/docs/skill/wm-navigation-hamburger.md +56 -0
  116. package/dist/docs/skill/wm-navigation-item.md +69 -0
  117. package/dist/docs/skill/wm-navigation.md +66 -0
  118. package/dist/docs/skill/wm-navigator.md +91 -0
  119. package/dist/docs/skill/wm-nested-select.md +149 -0
  120. package/dist/docs/skill/wm-optgroup.md +71 -0
  121. package/dist/docs/skill/wm-option.md +68 -0
  122. package/dist/docs/skill/wm-pagination.md +95 -0
  123. package/dist/docs/skill/wm-progress-indicator.md +49 -0
  124. package/dist/docs/skill/wm-progress-monitor.md +93 -0
  125. package/dist/docs/skill/wm-progress-slice.md +41 -0
  126. package/dist/docs/skill/wm-search.md +157 -0
  127. package/dist/docs/skill/wm-select.md +148 -0
  128. package/dist/docs/skill/wm-snackbar.md +101 -0
  129. package/dist/docs/skill/wm-tab-item.md +35 -0
  130. package/dist/docs/skill/wm-tab-list.md +112 -0
  131. package/dist/docs/skill/wm-tab-panel.md +33 -0
  132. package/dist/docs/skill/wm-tag-input.md +165 -0
  133. package/dist/docs/skill/wm-tag-option.md +59 -0
  134. package/dist/docs/skill/wm-textarea.md +94 -0
  135. package/dist/docs/skill/wm-timepicker.md +139 -0
  136. package/dist/docs/skill/wm-toggletip.md +92 -0
  137. package/dist/docs/skill/wm-uploader.md +129 -0
  138. package/dist/docs/skill/wm-wrapper.md +6 -0
  139. package/dist/docs/wm-action-menu.md +111 -0
  140. package/dist/docs/wm-button.md +137 -0
  141. package/dist/docs/wm-chart-bar.md +23 -0
  142. package/dist/docs/wm-chart-column.md +26 -0
  143. package/dist/docs/wm-chart-legend.md +31 -0
  144. package/dist/docs/wm-chart-slice.md +14 -0
  145. package/dist/docs/wm-chart.md +30 -0
  146. package/dist/docs/wm-date-range.md +215 -0
  147. package/dist/docs/wm-datepicker.md +210 -0
  148. package/dist/docs/wm-file-list.md +95 -0
  149. package/dist/docs/wm-file.md +34 -0
  150. package/dist/docs/wm-flyout.md +123 -0
  151. package/dist/docs/wm-input.md +120 -0
  152. package/dist/docs/wm-line-chart.md +32 -0
  153. package/dist/docs/wm-menuitem.md +38 -0
  154. package/dist/docs/wm-modal-footer.md +106 -0
  155. package/dist/docs/wm-modal-header.md +100 -0
  156. package/dist/docs/wm-modal.md +127 -0
  157. package/dist/docs/wm-navigation-hamburger.md +91 -0
  158. package/dist/docs/wm-navigation-item.md +98 -0
  159. package/dist/docs/wm-navigation.md +101 -0
  160. package/dist/docs/wm-navigator.md +99 -0
  161. package/dist/docs/wm-nested-select.md +107 -0
  162. package/dist/docs/wm-optgroup.md +28 -0
  163. package/dist/docs/wm-option.md +24 -0
  164. package/dist/docs/wm-pagination.md +94 -0
  165. package/dist/docs/wm-progress-indicator.md +23 -0
  166. package/dist/docs/wm-progress-monitor.md +27 -0
  167. package/dist/docs/wm-progress-slice.md +16 -0
  168. package/dist/docs/wm-search.md +119 -0
  169. package/dist/docs/wm-select.md +120 -0
  170. package/dist/docs/wm-snackbar.md +87 -0
  171. package/dist/docs/wm-tab-item.md +23 -0
  172. package/dist/docs/wm-tab-list.md +98 -0
  173. package/dist/docs/wm-tab-panel.md +18 -0
  174. package/dist/docs/wm-tag-input.md +123 -0
  175. package/dist/docs/wm-tag-option.md +33 -0
  176. package/dist/docs/wm-textarea.md +101 -0
  177. package/dist/docs/wm-timepicker.md +122 -0
  178. package/dist/docs/wm-toggletip.md +86 -0
  179. package/dist/docs/wm-uploader.md +114 -0
  180. package/dist/docs/wm-wrapper.md +7 -0
  181. package/dist/esm/app-globals-466ed44b.js +101 -0
  182. package/dist/esm/loader.js +1 -1
  183. package/dist/esm/priv-calendar.entry.js +27 -27
  184. package/dist/esm/priv-chart-popover-old.entry.js +2 -2
  185. package/dist/esm/priv-chart-popover_2.entry.js +3 -3
  186. package/dist/esm/priv-navigator-button.entry.js +1 -1
  187. package/dist/esm/priv-navigator-item.entry.js +1 -1
  188. package/dist/esm/priv-option-list.entry.js +1 -1
  189. package/dist/esm/ripple.js +1 -1
  190. package/dist/esm/wm-action-menu_2.entry.js +5 -4
  191. package/dist/esm/wm-button.entry.js +1 -1
  192. package/dist/esm/wm-chart-bar.entry.js +1 -1
  193. package/dist/esm/wm-chart-column.entry.js +1 -1
  194. package/dist/esm/wm-chart.entry.js +1 -1
  195. package/dist/esm/wm-date-range.entry.js +25 -9
  196. package/dist/esm/wm-datepicker.entry.js +37 -11
  197. package/dist/esm/wm-file-list.entry.js +1 -1
  198. package/dist/esm/wm-file.entry.js +1 -1
  199. package/dist/esm/wm-flyout.entry.js +6 -1
  200. package/dist/esm/wm-input.entry.js +1 -1
  201. package/dist/esm/wm-line-chart.entry.js +1 -1
  202. package/dist/esm/wm-modal-pss_3.entry.js +4 -4
  203. package/dist/esm/wm-modal_3.entry.js +19 -4
  204. package/dist/esm/wm-navigation_3.entry.js +4 -4
  205. package/dist/esm/wm-navigator.entry.js +1 -1
  206. package/dist/esm/wm-nested-select.entry.js +3 -3
  207. package/dist/esm/wm-optgroup.entry.js +11 -1
  208. package/dist/esm/wm-option_2.entry.js +5 -5
  209. package/dist/esm/wm-pagination.entry.js +1 -1
  210. package/dist/esm/wm-progress-indicator_3.entry.js +2 -2
  211. package/dist/esm/wm-search.entry.js +2 -2
  212. package/dist/esm/wm-snackbar.entry.js +2 -2
  213. package/dist/esm/wm-tab-item_3.entry.js +6 -6
  214. package/dist/esm/wm-tag-input.entry.js +2 -2
  215. package/dist/esm/wm-tag-option.entry.js +8 -0
  216. package/dist/esm/wm-textarea.entry.js +1 -1
  217. package/dist/esm/wm-timepicker.entry.js +14 -2
  218. package/dist/esm/wm-toggletip.entry.js +3 -3
  219. package/dist/esm/wm-uploader.entry.js +2 -2
  220. package/dist/esm-es5/app-globals-466ed44b.js +1 -0
  221. package/dist/esm-es5/loader.js +1 -1
  222. package/dist/esm-es5/priv-calendar.entry.js +1 -1
  223. package/dist/esm-es5/priv-chart-popover-old.entry.js +1 -1
  224. package/dist/esm-es5/priv-chart-popover_2.entry.js +1 -1
  225. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  226. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  227. package/dist/esm-es5/priv-option-list.entry.js +1 -1
  228. package/dist/esm-es5/ripple.js +1 -1
  229. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  230. package/dist/esm-es5/wm-button.entry.js +1 -1
  231. package/dist/esm-es5/wm-chart-bar.entry.js +1 -1
  232. package/dist/esm-es5/wm-chart-column.entry.js +1 -1
  233. package/dist/esm-es5/wm-chart.entry.js +1 -1
  234. package/dist/esm-es5/wm-date-range.entry.js +1 -1
  235. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  236. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  237. package/dist/esm-es5/wm-file.entry.js +1 -1
  238. package/dist/esm-es5/wm-flyout.entry.js +1 -1
  239. package/dist/esm-es5/wm-input.entry.js +1 -1
  240. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  241. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -1
  242. package/dist/esm-es5/wm-modal_3.entry.js +1 -1
  243. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  244. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  245. package/dist/esm-es5/wm-nested-select.entry.js +1 -1
  246. package/dist/esm-es5/wm-optgroup.entry.js +1 -1
  247. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  248. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  249. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  250. package/dist/esm-es5/wm-search.entry.js +1 -1
  251. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  252. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  253. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  254. package/dist/esm-es5/wm-textarea.entry.js +1 -1
  255. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  256. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  257. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  258. package/dist/ripple/{p-1fc894ac.system.entry.js → p-012bd307.system.entry.js} +1 -1
  259. package/dist/ripple/p-03f352dc.entry.js +1 -0
  260. package/dist/ripple/{p-4f53544d.entry.js → p-03ff4f41.entry.js} +1 -1
  261. package/dist/ripple/{p-2a03f658.entry.js → p-045aa27f.entry.js} +1 -1
  262. package/dist/ripple/{p-709d1765.entry.js → p-057ffccb.entry.js} +1 -1
  263. package/dist/ripple/p-06c3dc14.system.entry.js +1 -0
  264. package/dist/ripple/{p-ff6fd274.system.entry.js → p-09a80f59.system.entry.js} +1 -1
  265. package/dist/ripple/{p-3bd8537c.entry.js → p-09fb0a09.entry.js} +1 -1
  266. package/dist/ripple/p-0a05d3a3.js +1 -0
  267. package/dist/ripple/{p-3f69041f.entry.js → p-0ab9bac7.entry.js} +1 -1
  268. package/dist/ripple/{p-332a3e3d.system.entry.js → p-1059cdb9.system.entry.js} +1 -1
  269. package/dist/ripple/{p-dbdae848.system.entry.js → p-106a9459.system.entry.js} +1 -1
  270. package/dist/ripple/{p-e1a6ee77.entry.js → p-16381033.entry.js} +1 -1
  271. package/dist/ripple/{p-b11abb0d.system.entry.js → p-181109f0.system.entry.js} +1 -1
  272. package/dist/ripple/{p-bb9f54cf.system.entry.js → p-1855c3b1.system.entry.js} +1 -1
  273. package/dist/ripple/{p-4533241f.entry.js → p-1c25838e.entry.js} +1 -1
  274. package/dist/ripple/{p-fb6aee09.entry.js → p-1f67b172.entry.js} +1 -1
  275. package/dist/ripple/{p-a3dd5204.system.entry.js → p-22703bcd.system.entry.js} +1 -1
  276. package/dist/ripple/{p-a6aef87d.system.entry.js → p-237388c5.system.entry.js} +1 -1
  277. package/dist/ripple/p-237f5977.system.entry.js +1 -0
  278. package/dist/ripple/p-25d6cc45.system.js +1 -0
  279. package/dist/ripple/{p-09d5381c.entry.js → p-299d2d8b.entry.js} +1 -1
  280. package/dist/ripple/{p-e78f9572.system.entry.js → p-2c1d219f.system.entry.js} +1 -1
  281. package/dist/ripple/{p-84e04896.entry.js → p-2dbf9636.entry.js} +1 -1
  282. package/dist/ripple/{p-05dae6a0.entry.js → p-2dc1071a.entry.js} +1 -1
  283. package/dist/ripple/{p-39bac42a.entry.js → p-3216e2e7.entry.js} +1 -1
  284. package/dist/ripple/p-3252c04b.system.entry.js +1 -0
  285. package/dist/ripple/{p-7ca0bb68.system.entry.js → p-32bac954.system.entry.js} +1 -1
  286. package/dist/ripple/p-33eeaa18.entry.js +1 -0
  287. package/dist/ripple/p-3441da90.entry.js +1 -0
  288. package/dist/ripple/p-3502fd33.system.entry.js +1 -0
  289. package/dist/ripple/{p-f51404f5.entry.js → p-351000b9.entry.js} +1 -1
  290. package/dist/ripple/{p-bf3eef42.entry.js → p-3c0062c5.entry.js} +1 -1
  291. package/dist/ripple/{p-c1abc58e.entry.js → p-3d3836ad.entry.js} +1 -1
  292. package/dist/ripple/p-3e8bfc68.system.entry.js +1 -0
  293. package/dist/ripple/p-3f403a64.system.entry.js +1 -0
  294. package/dist/ripple/{p-b974a535.system.entry.js → p-43e8d384.system.entry.js} +1 -1
  295. package/dist/ripple/p-49dc64ba.entry.js +1 -0
  296. package/dist/ripple/{p-9d345fc7.system.entry.js → p-4a942d74.system.entry.js} +1 -1
  297. package/dist/ripple/p-4cc09fa3.system.entry.js +1 -0
  298. package/dist/ripple/p-5177d4fa.entry.js +1 -0
  299. package/dist/ripple/p-51fff3a7.system.entry.js +1 -0
  300. package/dist/ripple/p-54ba0eae.entry.js +1 -0
  301. package/dist/ripple/{p-c04d0eeb.system.entry.js → p-5609bde2.system.entry.js} +1 -1
  302. package/dist/ripple/{p-86148143.system.entry.js → p-56e1a71d.system.entry.js} +1 -1
  303. package/dist/ripple/{p-f94af31c.entry.js → p-578b5443.entry.js} +1 -1
  304. package/dist/ripple/p-57901fc3.entry.js +1 -0
  305. package/dist/ripple/{p-463be5be.entry.js → p-57a0cb5f.entry.js} +1 -1
  306. package/dist/ripple/{p-0db033c3.system.entry.js → p-59b3f92b.system.entry.js} +1 -1
  307. package/dist/ripple/p-5a533e7c.entry.js +1 -0
  308. package/dist/ripple/{p-5f092b39.system.entry.js → p-61a0ba92.system.entry.js} +1 -1
  309. package/dist/ripple/{p-6de83c6f.entry.js → p-623b89e0.entry.js} +1 -1
  310. package/dist/ripple/{p-6479b06b.entry.js → p-668c0758.entry.js} +1 -1
  311. package/dist/ripple/p-6a6e98c7.entry.js +1 -0
  312. package/dist/ripple/{p-b654743f.system.entry.js → p-6c46dd9a.system.entry.js} +1 -1
  313. package/dist/ripple/{p-4e7ae2c5.system.entry.js → p-6ea254d2.system.entry.js} +1 -1
  314. package/dist/ripple/p-6f875608.system.entry.js +1 -0
  315. package/dist/ripple/{p-d05b7cd3.entry.js → p-71a38bd2.entry.js} +1 -1
  316. package/dist/ripple/{p-dab54a9d.entry.js → p-73a2389d.entry.js} +1 -1
  317. package/dist/ripple/p-759d87de.entry.js +1 -0
  318. package/dist/ripple/{p-227b0af9.entry.js → p-75c5ec39.entry.js} +1 -1
  319. package/dist/ripple/{p-ee729037.system.entry.js → p-7bc3b4ee.system.entry.js} +1 -1
  320. package/dist/ripple/p-7c7988a3.entry.js +1 -0
  321. package/dist/ripple/p-81735196.entry.js +1 -0
  322. package/dist/ripple/{p-a0aba3e0.system.entry.js → p-8376699e.system.entry.js} +1 -1
  323. package/dist/ripple/{p-503330c1.system.entry.js → p-865208b7.system.entry.js} +1 -1
  324. package/dist/ripple/{p-28b8a12e.system.entry.js → p-8715d758.system.entry.js} +1 -1
  325. package/dist/ripple/p-8bfb7664.entry.js +1 -0
  326. package/dist/ripple/{p-680f5703.entry.js → p-8deb22bc.entry.js} +1 -1
  327. package/dist/ripple/p-8e32e9de.system.entry.js +1 -0
  328. package/dist/ripple/{p-bdb10d37.entry.js → p-92e3bf68.entry.js} +1 -1
  329. package/dist/ripple/{p-0feaaae9.system.entry.js → p-942b323c.system.entry.js} +1 -1
  330. package/dist/ripple/{p-5173359e.entry.js → p-94fd1dcc.entry.js} +1 -1
  331. package/dist/ripple/p-991455a2.system.entry.js +1 -0
  332. package/dist/ripple/p-99a112c8.system.entry.js +1 -0
  333. package/dist/ripple/p-9a8d91d6.entry.js +1 -0
  334. package/dist/ripple/{p-e0c0e8b0.system.entry.js → p-9afb642d.system.entry.js} +1 -1
  335. package/dist/ripple/p-9c850273.system.js +1 -0
  336. package/dist/ripple/p-a3f9e257.entry.js +1 -0
  337. package/dist/ripple/p-a5b07241.entry.js +1 -0
  338. package/dist/ripple/{p-d55bd2b9.entry.js → p-a7a6cf55.system.entry.js} +1 -1
  339. package/dist/ripple/{p-6f2d3297.system.entry.js → p-a917ea86.system.entry.js} +1 -1
  340. package/dist/ripple/p-ab5664cd.entry.js +1 -0
  341. package/dist/ripple/{p-cc028323.entry.js → p-acb04e6e.entry.js} +1 -1
  342. package/dist/ripple/p-b2624d8f.system.entry.js +1 -0
  343. package/dist/ripple/p-b5b37960.entry.js +1 -0
  344. package/dist/ripple/p-b713b6de.system.entry.js +1 -0
  345. package/dist/ripple/p-b75e9e5f.entry.js +1 -0
  346. package/dist/ripple/{p-b1924539.system.entry.js → p-b7969fd7.system.entry.js} +1 -1
  347. package/dist/ripple/{p-a7e637a5.system.entry.js → p-b9596bfc.system.entry.js} +1 -1
  348. package/dist/ripple/p-b9d3d967.system.entry.js +1 -0
  349. package/dist/ripple/{p-aafced54.system.entry.js → p-bd365c44.system.entry.js} +1 -1
  350. package/dist/ripple/p-bd9ab5ae.system.entry.js +1 -0
  351. package/dist/ripple/p-c0028f4d.system.entry.js +1 -0
  352. package/dist/ripple/p-c7d3ee52.entry.js +1 -0
  353. package/dist/ripple/p-c8e4e95b.entry.js +1 -0
  354. package/dist/ripple/p-c996ade8.entry.js +1 -0
  355. package/dist/ripple/p-ca8378b0.entry.js +1 -0
  356. package/dist/ripple/{p-bd37dd6f.entry.js → p-cc2176ad.entry.js} +1 -1
  357. package/dist/ripple/p-cd496e63.entry.js +1 -0
  358. package/dist/ripple/p-d0653c32.entry.js +1 -0
  359. package/dist/ripple/{p-9a5d11cb.entry.js → p-d11e5029.entry.js} +1 -1
  360. package/dist/ripple/p-d3d0b626.entry.js +1 -0
  361. package/dist/ripple/p-d4899263.entry.js +1 -0
  362. package/dist/ripple/p-dc82f194.entry.js +1 -0
  363. package/dist/ripple/{p-a6ef995c.system.entry.js → p-ddfb976f.system.entry.js} +1 -1
  364. package/dist/ripple/{p-ee26ba53.entry.js → p-e1899945.entry.js} +1 -1
  365. package/dist/ripple/p-e26b9711.system.entry.js +1 -0
  366. package/dist/ripple/{p-10aea5ee.system.entry.js → p-e31f597a.system.entry.js} +1 -1
  367. package/dist/ripple/p-e35de3cd.system.entry.js +1 -0
  368. package/dist/ripple/p-e3effa1a.system.entry.js +1 -0
  369. package/dist/ripple/p-e674e6a7.system.entry.js +1 -0
  370. package/dist/ripple/{p-8e6e868a.entry.js → p-e7ffd796.entry.js} +1 -1
  371. package/dist/ripple/p-e800717d.entry.js +1 -0
  372. package/dist/ripple/p-eab35bea.entry.js +1 -0
  373. package/dist/ripple/{p-df9d5b14.system.entry.js → p-ebdf16fa.system.entry.js} +1 -1
  374. package/dist/ripple/p-ed9fc1c1.system.entry.js +1 -0
  375. package/dist/ripple/p-eda49f0e.entry.js +1 -0
  376. package/dist/ripple/p-ee33fd7f.system.entry.js +1 -0
  377. package/dist/ripple/p-ee5f43fe.system.entry.js +1 -0
  378. package/dist/ripple/{p-928b3e5e.entry.js → p-f0ee3616.entry.js} +1 -1
  379. package/dist/ripple/{p-02c8bf15.system.entry.js → p-f1215c25.system.entry.js} +1 -1
  380. package/dist/ripple/p-f148ae9d.system.entry.js +1 -0
  381. package/dist/ripple/p-f307aabe.entry.js +1 -0
  382. package/dist/ripple/p-f4f6c904.system.entry.js +1 -0
  383. package/dist/ripple/p-f58833ae.system.entry.js +1 -0
  384. package/dist/ripple/p-f7fc6350.system.js +1 -1
  385. package/dist/ripple/p-f881cdc8.system.entry.js +1 -0
  386. package/dist/ripple/{p-444feb7d.system.entry.js → p-fbb37b4b.system.entry.js} +1 -1
  387. package/dist/ripple/{p-40e8071c.system.entry.js → p-fc905b2f.system.entry.js} +1 -1
  388. package/dist/ripple/ripple.esm.js +1 -1
  389. package/dist/ripple/ripple.js +1 -1
  390. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +5 -0
  391. package/dist/types/components/charts/priv-chart-popover-old/priv-chart-popover-old.d.ts +5 -0
  392. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +52 -0
  393. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +111 -0
  394. package/dist/types/components/charts/wm-chart-bar/wm-chart-bar.d.ts +131 -0
  395. package/dist/types/components/charts/wm-chart-column/wm-chart-column.d.ts +100 -0
  396. package/dist/types/components/charts/wm-chart-legend/wm-chart-legend.d.ts +77 -0
  397. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +134 -0
  398. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +52 -0
  399. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +84 -0
  400. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +44 -0
  401. package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +6 -2
  402. package/dist/types/components/datepickers/wm-date-range.d.ts +186 -0
  403. package/dist/types/components/datepickers/wm-datepicker.d.ts +170 -2
  404. package/dist/types/components/selects/priv-option-list/priv-option-list.d.ts +6 -0
  405. package/dist/types/components/selects/wm-nested-select/wm-nested-select.d.ts +162 -0
  406. package/dist/types/components/selects/wm-optgroup/wm-optgroup.d.ts +87 -0
  407. package/dist/types/components/selects/wm-option/wm-option.d.ts +117 -0
  408. package/dist/types/components/selects/wm-select/wm-select.d.ts +164 -0
  409. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +122 -0
  410. package/dist/types/components/wm-button/wm-button.d.ts +170 -2
  411. package/dist/types/components/wm-file/wm-file.d.ts +92 -0
  412. package/dist/types/components/wm-file-list/wm-file-list.d.ts +71 -0
  413. package/dist/types/components/wm-flyout/wm-flyout.d.ts +193 -0
  414. package/dist/types/components/wm-input/wm-input.d.ts +158 -0
  415. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +58 -0
  416. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +54 -0
  417. package/dist/types/components/wm-modal/wm-modal-header.d.ts +30 -0
  418. package/dist/types/components/wm-modal/wm-modal.d.ts +148 -0
  419. package/dist/types/components/wm-modal-pss/wm-modal-pss-footer.d.ts +4 -0
  420. package/dist/types/components/wm-modal-pss/wm-modal-pss-header.d.ts +4 -0
  421. package/dist/types/components/wm-modal-pss/wm-modal-pss.d.ts +4 -0
  422. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +34 -0
  423. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +41 -0
  424. package/dist/types/components/wm-navigation/wm-navigation.d.ts +50 -0
  425. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +4 -0
  426. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +4 -0
  427. package/dist/types/components/wm-navigator/wm-navigator.d.ts +91 -3
  428. package/dist/types/components/wm-pagination/wm-pagination.d.ts +90 -0
  429. package/dist/types/components/wm-search/wm-search.d.ts +148 -5
  430. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +94 -0
  431. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +43 -2
  432. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +93 -0
  433. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +28 -2
  434. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +185 -0
  435. package/dist/types/components/wm-tag-input/wm-tag-option/wm-tag-option.d.ts +68 -0
  436. package/dist/types/components/wm-textarea/wm-textarea.d.ts +97 -0
  437. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +145 -0
  438. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +74 -0
  439. package/dist/types/components/wm-uploader/wm-uploader.d.ts +128 -0
  440. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +3 -0
  441. package/dist/types/components.d.ts +10513 -57
  442. package/package.json +2 -2
  443. package/dist/ripple/p-065b0134.entry.js +0 -1
  444. package/dist/ripple/p-210773eb.entry.js +0 -1
@@ -1,6 +1,46 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { handleDisabledAttribute, toBool, showTooltip, hideTooltip } from "../../global/functions";
3
3
  import { globalMessages } from "../../global/intl";
4
+ /**
5
+ * Multi-line plain-text editing control with a drag handle for vertical resizing. Shares
6
+ * most functionality with wm-input. Use instead of native `<textarea>` in all Watermark UI.
7
+ *
8
+ * @accessibility
9
+ * - `label` sets the accessible label for the textarea; required even when
10
+ * `label-position="none"`.
11
+ * - When `character-limit` is set, a counter below the field turns red when exceeded; the
12
+ * count is announced via `aria-live` when within 5 characters of the limit or exceeded.
13
+ * - Error messages are announced via an `aria-live` region.
14
+ * - `info` text is associated via `aria-describedby` and read by screen readers on focus.
15
+ *
16
+ * @usageNotes
17
+ * - In HTML, set the initial value via text content: `<wm-textarea>initial value</wm-textarea>`.
18
+ * In React, use the `value` prop for controlled usage.
19
+ * - `wmTextareaValueChanged` fires on blur only when the value has changed; use the native
20
+ * `input` event for per-keystroke updates.
21
+ * - `event.detail.value` is the current string value.
22
+ *
23
+ * @example {html} Basic textarea
24
+ * <wm-textarea label="Notes" placeholder="Enter notes here..."></wm-textarea>
25
+ *
26
+ * @example {react} Basic textarea
27
+ * // value + onWmTextareaValueChanged is the standard controlled pattern.
28
+ * const [notes, setNotes] = useState("");
29
+ *
30
+ * <WmTextarea
31
+ * label="Notes"
32
+ * placeholder="Enter notes here..."
33
+ * value={notes}
34
+ * onWmTextareaValueChanged={(e) => setNotes(e.detail.value)} />
35
+ *
36
+ * @example {html} With character limit
37
+ * <wm-textarea label="Summary" character-limit="500"></wm-textarea>
38
+ *
39
+ * @example {react} With character limit
40
+ * <WmTextarea label="Summary" characterLimit={500} />
41
+ *
42
+ * @category Form Inputs
43
+ */
4
44
  export class Textarea {
5
45
  constructor() {
6
46
  this.previousValue = "";
@@ -71,7 +111,7 @@ export class Textarea {
71
111
  this.announcement = message;
72
112
  }
73
113
  render() {
74
- return (h("div", { key: '35c5048f918ab18bc0adc8223f2321e363bd12d6', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, h("div", { key: '856cc26989cc86d19274101b0a24827951dfe12a', class: "label-wrapper" }, h("label", { key: '28475801b5c51f4f92efa43a57b68baeb524b64b', htmlFor: "inputfield", class: "label", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label, this.characterLimit && (h("span", { key: '90595c60a3cd63093fc2d8c342a1c496dfdb3f1e', class: "sr-only" }, " ", globalMessages.getCharacterLimit(this.characterLimit)))), this.labelPosition !== "none" && this.requiredField && (h("span", { key: '1399946787ff019b38a5133cfffa48cab48f2acd', class: "required", "aria-hidden": "true" }, "*"))), h("div", { key: '041cdc66b73a247dc0024a025955db41a84c8cef', class: "inner-wrapper" }, h("div", { key: 'b072be6d0a5637eaff95a11210e045931e28aead', class: `inputfield-wrapper ${this.errorMessage ? "invalid" : ""}`, style: this.inputWidth ? { width: this.inputWidth } : {} }, h("textarea", { key: '51a70fd2d2814f66e8d2767b98a78bba9f1c201f', id: "inputfield", disabled: this.isDisabled, "aria-describedby": "info error", onInput: (ev) => this.handleInput(ev), onBlur: () => this.handleBlur(), placeholder: this.placeholder, autocomplete: "off", "aria-required": this.requiredField ? "true" : null, value: this.value, rows: 3, style: { height: this.inputHeight } }), this.characterLimit && typeof this.characterLimit === "number" ? (h("div", { class: `character-count ${this.value.length > this.characterLimit ? "exceeded" : ""}` }, this.charCount, "/", this.characterLimit)) : ("")), this.info && (h("div", { key: '10e8dffe7fa9ca8a0f2ee1eae1cb64c269ffd525', id: "info", class: "info" }, this.info)), h("div", { key: '8f5a778b2f9d29650b74815b976b98b9eaff2cee', id: "error", class: "error-message" }, this.errorMessage), h("div", { key: 'a1eb19abf2ac8e09bab23e66a52c3b6a0fa7d456', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
114
+ return (h("div", { key: 'db8960893db7400b6e9df53fc98ac16f4522ba46', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, h("div", { key: 'b4681419e3354e19725cdd9e9ecf3dea565792eb', class: "label-wrapper" }, h("label", { key: '4e10dd8ad84eda66e3a8b3b204557b4b6fad21c9', htmlFor: "inputfield", class: "label", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label, this.characterLimit && (h("span", { key: '6ae24fb92cac6fdb98f5f526e439d4d2af9a9e14', class: "sr-only" }, " ", globalMessages.getCharacterLimit(this.characterLimit)))), this.labelPosition !== "none" && this.requiredField && (h("span", { key: 'aafea7d9fa8474c482b92075e8ff81524b34226d', class: "required", "aria-hidden": "true" }, "*"))), h("div", { key: '62802fb4c7688337126de11803a011209890eee0', class: "inner-wrapper" }, h("div", { key: '62c2dfd068a69a05c958cf60c24ad86ade453a3e', class: `inputfield-wrapper ${this.errorMessage ? "invalid" : ""}`, style: this.inputWidth ? { width: this.inputWidth } : {} }, h("textarea", { key: '8a6f1ad2fdd8019b4371d4b94fbf11287960442d', id: "inputfield", disabled: this.isDisabled, "aria-describedby": "info error", onInput: (ev) => this.handleInput(ev), onBlur: () => this.handleBlur(), placeholder: this.placeholder, autocomplete: "off", "aria-required": this.requiredField ? "true" : null, value: this.value, rows: 3, style: { height: this.inputHeight } }), this.characterLimit && typeof this.characterLimit === "number" ? (h("div", { class: `character-count ${this.value.length > this.characterLimit ? "exceeded" : ""}` }, this.charCount, "/", this.characterLimit)) : ("")), this.info && (h("div", { key: '4f8e50fbbda24c6a687bf1a558f162183e969cb9', id: "info", class: "info" }, this.info)), h("div", { key: 'cd1b582734f4104ddb65268ab72e628b0bbf4448', id: "error", class: "error-message" }, this.errorMessage), h("div", { key: '9532c1db53dc29bd69a43b63ffda5ac44741b10b', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
75
115
  }
76
116
  static get is() { return "wm-textarea"; }
77
117
  static get encapsulation() { return "shadow"; }
@@ -98,7 +138,13 @@ export class Textarea {
98
138
  "required": true,
99
139
  "optional": false,
100
140
  "docs": {
101
- "tags": [],
141
+ "tags": [{
142
+ "name": "description",
143
+ "text": "Accessible label for the textarea. Required even when\n`label-position=\"none\"`."
144
+ }, {
145
+ "name": "required",
146
+ "text": undefined
147
+ }],
102
148
  "text": ""
103
149
  },
104
150
  "attribute": "label",
@@ -115,7 +161,13 @@ export class Textarea {
115
161
  "required": false,
116
162
  "optional": false,
117
163
  "docs": {
118
- "tags": [],
164
+ "tags": [{
165
+ "name": "description",
166
+ "text": "Controls label placement. `'none'` hides the label visually but keeps it\naccessible."
167
+ }, {
168
+ "name": "default",
169
+ "text": "\"top\""
170
+ }],
119
171
  "text": ""
120
172
  },
121
173
  "attribute": "label-position",
@@ -133,7 +185,13 @@ export class Textarea {
133
185
  "required": false,
134
186
  "optional": false,
135
187
  "docs": {
136
- "tags": [],
188
+ "tags": [{
189
+ "name": "description",
190
+ "text": "The current value typed by the user. Line breaks are represented as `\\n`.\nTo set an initial value, use the element's text content instead:\n`<wm-textarea>initial value</wm-textarea>`."
191
+ }, {
192
+ "name": "default",
193
+ "text": "\"\""
194
+ }],
137
195
  "text": ""
138
196
  },
139
197
  "attribute": "value",
@@ -151,7 +209,13 @@ export class Textarea {
151
209
  "required": false,
152
210
  "optional": false,
153
211
  "docs": {
154
- "tags": [],
212
+ "tags": [{
213
+ "name": "description",
214
+ "text": "Disables the component, preventing all interaction."
215
+ }, {
216
+ "name": "default",
217
+ "text": "false"
218
+ }],
155
219
  "text": ""
156
220
  },
157
221
  "attribute": "disabled",
@@ -169,7 +233,10 @@ export class Textarea {
169
233
  "required": false,
170
234
  "optional": true,
171
235
  "docs": {
172
- "tags": [],
236
+ "tags": [{
237
+ "name": "description",
238
+ "text": "Hint text displayed below the textarea. Read by screen readers on focus via\n`aria-describedby`."
239
+ }],
173
240
  "text": ""
174
241
  },
175
242
  "attribute": "info",
@@ -186,7 +253,13 @@ export class Textarea {
186
253
  "required": false,
187
254
  "optional": false,
188
255
  "docs": {
189
- "tags": [],
256
+ "tags": [{
257
+ "name": "description",
258
+ "text": "Placeholder text shown inside the empty textarea."
259
+ }, {
260
+ "name": "default",
261
+ "text": "\"\""
262
+ }],
190
263
  "text": ""
191
264
  },
192
265
  "attribute": "placeholder",
@@ -204,7 +277,13 @@ export class Textarea {
204
277
  "required": false,
205
278
  "optional": false,
206
279
  "docs": {
207
- "tags": [],
280
+ "tags": [{
281
+ "name": "description",
282
+ "text": "Displays a required-field asterisk next to the label."
283
+ }, {
284
+ "name": "default",
285
+ "text": "false"
286
+ }],
208
287
  "text": ""
209
288
  },
210
289
  "attribute": "required-field",
@@ -222,7 +301,10 @@ export class Textarea {
222
301
  "required": false,
223
302
  "optional": true,
224
303
  "docs": {
225
- "tags": [],
304
+ "tags": [{
305
+ "name": "description",
306
+ "text": "Puts the component in an error state and displays this message below the\ntextarea."
307
+ }],
226
308
  "text": ""
227
309
  },
228
310
  "attribute": "error-message",
@@ -239,7 +321,10 @@ export class Textarea {
239
321
  "required": false,
240
322
  "optional": true,
241
323
  "docs": {
242
- "tags": [],
324
+ "tags": [{
325
+ "name": "description",
326
+ "text": "Maximum number of characters allowed. Displays a live counter below the\nfield. Does not prevent typing beyond the limit (to allow pasting and editing) but the\ncounter turns red when exceeded. Disabled when unset."
327
+ }],
243
328
  "text": ""
244
329
  },
245
330
  "attribute": "character-limit",
@@ -256,7 +341,13 @@ export class Textarea {
256
341
  "required": false,
257
342
  "optional": false,
258
343
  "docs": {
259
- "tags": [],
344
+ "tags": [{
345
+ "name": "description",
346
+ "text": "CSS width value for the textarea element itself, independent of the overall\ncomponent width. Useful when the label or error message should extend wider than the\nfield."
347
+ }, {
348
+ "name": "default",
349
+ "text": "\"\""
350
+ }],
260
351
  "text": ""
261
352
  },
262
353
  "attribute": "input-width",
@@ -274,7 +365,13 @@ export class Textarea {
274
365
  "required": false,
275
366
  "optional": false,
276
367
  "docs": {
277
- "tags": [],
368
+ "tags": [{
369
+ "name": "description",
370
+ "text": "CSS height value for the initial height of the textarea. The user can resize\nit with the drag handle."
371
+ }, {
372
+ "name": "default",
373
+ "text": "\"\" (approximately 3 lines)"
374
+ }],
278
375
  "text": ""
279
376
  },
280
377
  "attribute": "input-height",
@@ -296,7 +393,13 @@ export class Textarea {
296
393
  "cancelable": true,
297
394
  "composed": true,
298
395
  "docs": {
299
- "tags": [],
396
+ "tags": [{
397
+ "name": "description",
398
+ "text": "Fires on blur when the value has changed since load or the last blur. Use\nthe native `input` event for per-keystroke updates."
399
+ }, {
400
+ "name": "eventDetails",
401
+ "text": "{{ value: string }} value \u2014 the current textarea value at the time of blur."
402
+ }],
300
403
  "text": ""
301
404
  },
302
405
  "complexType": {
@@ -1,5 +1,101 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  import { intl, shouldOpenUp, toBool, handleDisabledAttribute, showTooltip, hideTooltip } from "../../global/functions";
3
+ /**
4
+ * Time input that lets users type a time or pick one from a dropdown list of 15-minute
5
+ * intervals. Supports 12-hour and 24-hour display and provides `reformatTime` and
6
+ * `isValidTime` utility methods. Use instead of native `<input type="time">`.
7
+ *
8
+ * @keyboardInteraction
9
+ * **Input field:**
10
+ * - **Arrow Down / Arrow Up**: Open the dropdown focused on the nearest time interval.
11
+ *
12
+ * **Dropdown button:**
13
+ * - **Enter / Space**: Open the dropdown.
14
+ *
15
+ * **Dropdown list:**
16
+ * - **Arrow Down / Arrow Up**: Move focus to the next/previous option; wraps at both ends.
17
+ * - **Home / End**: Move focus to the first/last option.
18
+ * - **Enter / Space**: Select the focused time and close the dropdown.
19
+ * - **Tab**: Close the dropdown and advance focus (without selecting).
20
+ * - **Escape**: Close the dropdown without selecting.
21
+ *
22
+ * @accessibility
23
+ * - `label` sets the accessible name on the input; required even when `label-position="none"`.
24
+ * - Error messages are announced via an `aria-live` region.
25
+ *
26
+ * @usageNotes
27
+ * - The dropdown displays 15-minute intervals (00:00–23:45) in 12-hour format; typed input
28
+ * is accepted in both 12-hour and 24-hour formats.
29
+ * - `wmTimepickerTimeSelected` emits `{ time: string }` in 24-hour `hh:mm` format. Always
30
+ * call `reformatTime("12", ...)` on the result and write it back to `value` so the input
31
+ * displays the formatted string.
32
+ * - Use `reformatTime` and `isValidTime` via an imperative ref — they are async component
33
+ * methods, not props.
34
+ * - When writing a curried event-handler factory, the outer function must NOT be async;
35
+ * only the inner handler should be async, otherwise the factory returns a Promise instead
36
+ * of a function.
37
+ *
38
+ * @example {html} Basic timepicker
39
+ * <wm-timepicker label="Start time"></wm-timepicker>
40
+ *
41
+ * @example {react} Basic timepicker
42
+ * // wmTimepickerTimeSelected emits { time } in 24hr format.
43
+ * // Call reformatTime and write back to value so the input displays the result.
44
+ * // handleInputBlur validates free-form typed input on blur using isValidTime.
45
+ * // NOTE: the outer factory function must NOT be async — only the inner handler should be.
46
+ * const startRef = useRef(null);
47
+ * const [startValue, setStartValue] = useState("");
48
+ * const [startError, setStartError] = useState("");
49
+ *
50
+ * const handleTimeSelected = (ref, setValue, setError) => async (e) => {
51
+ * const time12 = await ref.current.reformatTime("12", e.detail.time);
52
+ * setError("");
53
+ * setValue(time12);
54
+ * };
55
+ *
56
+ * const handleInputBlur = (ref, value, setValue, setError) => async () => {
57
+ * if (!value) return;
58
+ * const valid = await ref.current.isValidTime(value);
59
+ * if (valid) {
60
+ * const time12 = await ref.current.reformatTime("12", value);
61
+ * setError("");
62
+ * setValue(time12);
63
+ * } else {
64
+ * setError("Please enter a valid time.");
65
+ * }
66
+ * };
67
+ *
68
+ * <WmTimepicker
69
+ * ref={startRef}
70
+ * label="Start time"
71
+ * value={startValue}
72
+ * errorMessage={startError}
73
+ * onWmTimepickerTimeSelected={handleTimeSelected(startRef, setStartValue, setStartError)}
74
+ * onWmTimepickerInputBlurred={handleInputBlur(startRef, startValue, setStartValue, setStartError)}
75
+ * />
76
+ *
77
+ * @example {html} With pre-selected time
78
+ * <wm-timepicker label="Meeting time" preselected="14:30" value="2:30 PM"></wm-timepicker>
79
+ *
80
+ * @example {react} With pre-selected time
81
+ * // preselected (24hr) controls where the dropdown focuses on open.
82
+ * // value sets the initial display string in the input.
83
+ * const meetingRef = useRef(null);
84
+ * const [meetingValue, setMeetingValue] = useState("2:30 PM");
85
+ * const [meetingError, setMeetingError] = useState("");
86
+ *
87
+ * <WmTimepicker
88
+ * ref={meetingRef}
89
+ * label="Meeting time"
90
+ * preselected="14:30"
91
+ * value={meetingValue}
92
+ * errorMessage={meetingError}
93
+ * onWmTimepickerTimeSelected={handleTimeSelected(meetingRef, setMeetingValue, setMeetingError)}
94
+ * onWmTimepickerInputBlurred={handleInputBlur(meetingRef, meetingValue, setMeetingValue, setMeetingError)}
95
+ * />
96
+ *
97
+ * @category Form Inputs
98
+ */
3
99
  export class Timepicker {
4
100
  constructor() {
5
101
  this.twelveHrValid = /^(0?[0-9]|1[0-2])\s*:?\s*([0-5][0-9])?\s?(a|p|am|pm)?$/i;
@@ -31,12 +127,24 @@ export class Timepicker {
31
127
  // string "false" needs to be treated as bool False because react wrappers convert bool to string.
32
128
  return toBool(this.disabled);
33
129
  }
130
+ /**
131
+ * @description Validates a time string against both 12-hour and 24-hour formats.
132
+ * @param input The time string to validate.
133
+ * @returns `true` if the string is a valid time, `false` otherwise.
134
+ */
34
135
  async isValidTime(input) {
35
136
  return this.isValidTimeInternal(input);
36
137
  }
37
138
  isValidTimeInternal(input) {
38
139
  return this.twelveHrValid.test(input) || this.twentyFourHrValid.test(input);
39
140
  }
141
+ /**
142
+ * @description Converts a time string between 12-hour and 24-hour formats.
143
+ * @param format The target format: `"12"` for 12-hour (e.g. `"02:30 PM"`), `"24"` for
144
+ * 24-hour (e.g. `"14:30"`).
145
+ * @param time The time string to convert. Accepts both 12-hour and 24-hour input.
146
+ * @returns The reformatted time string.
147
+ */
40
148
  async reformatTime(format, time) {
41
149
  return this.reformatTimeInternal(format, time);
42
150
  }
@@ -281,13 +389,13 @@ export class Timepicker {
281
389
  return this.times.map((time, index) => (h("li", { id: `option${index + 1}`, "data-time": time, role: "option", onClick: () => this.handleOptionClick(time) }, this.reformatTimeInternal("12", time))));
282
390
  }
283
391
  render() {
284
- return (h(Host, { key: '41725899f3e7e7a125aa0e1d5134840af5c08312', onBlur: () => this.close(false) }, h("div", { key: 'dd62c1ed75e942c4dfb0a4672922cc9e36ffcfa0', class: `wrapper label-${this.labelPosition} ${!!this.errorMessage ? "invalid" : ""}`, ref: (t) => (this.tpWrapper = t) }, h("div", { key: '8bb7976c75147040b386a64670883146b5cea3c6', class: "label-wrapper" }, this.labelPosition !== "none" && (h("label", { key: '16f4c69d31ba9378aa4ed143f80928f90ed0cdba', id: "label", class: "label", htmlFor: "time-input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label)), this.labelPosition !== "none" && this.requiredField && (h("div", { key: 'c8b660189ca66ad9b3babc6c8db9df6dd399e247', "aria-hidden": "true", class: "required" }, "*"))), h("div", { key: 'f661fd356437e5436114223cc29a52eb3118a2a7' }, h("div", { key: 'bebf84a5162d0627df72859ea959b61ef70b00f1', class: "inner-wrapper" }, h("input", { key: '9688fcfe498c440294507e1c0ff2932f57077251', id: "time-input", "aria-label": this.label, "aria-describedby": "error", ref: (el) => (this.inputEl = el), onBlur: () => this.handleInputBlur(), onInput: () => (this.value = this.inputEl.value), disabled: this.isDisabled, "aria-required": this.requiredField ? "true" : null, placeholder: this.timeFormat, autocomplete: "off", value: this.value, onFocus: () => this.tpWrapper.classList.add("focus") }), h("button", { key: 'd6368dac8c9623bb1d6fa4d9620c2ee4f3bd9f95', id: "btn", ref: (el) => (this.buttonEl = el), disabled: this.isDisabled, "aria-controls": "list", "aria-expanded": this.isExpanded ? "true" : "false", "aria-label": this.buttonAriaLabel, "aria-describedby": "time-input", onClick: () => (this.isExpanded ? this.close() : this.open()),
392
+ return (h(Host, { key: '1831afe766153cef35d069831724265be8648796', onBlur: () => this.close(false) }, h("div", { key: '20aba83b2b72108b4b5e958896b33ff6ea948daa', class: `wrapper label-${this.labelPosition} ${!!this.errorMessage ? "invalid" : ""}`, ref: (t) => (this.tpWrapper = t) }, h("div", { key: '890f7200653f77315cb9a16414a229bb0217eb69', class: "label-wrapper" }, this.labelPosition !== "none" && (h("label", { key: '866856e67edf3ab87d82ce38ac5df95a2ca2c3b2', id: "label", class: "label", htmlFor: "time-input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label)), this.labelPosition !== "none" && this.requiredField && (h("div", { key: '7eb6c6987c41a6816db95238d82c3de9a987f975', "aria-hidden": "true", class: "required" }, "*"))), h("div", { key: '3b779c734e9be5f59535d48b9b4c90b508a61a6a' }, h("div", { key: '07e1c25e4c09d0be324ab21c73419710e27475e0', class: "inner-wrapper" }, h("input", { key: '0443feb1b7a9c02fdb3230d420f7dc398f5f5aab', id: "time-input", "aria-label": this.label, "aria-describedby": "error", ref: (el) => (this.inputEl = el), onBlur: () => this.handleInputBlur(), onInput: () => (this.value = this.inputEl.value), disabled: this.isDisabled, "aria-required": this.requiredField ? "true" : null, placeholder: this.timeFormat, autocomplete: "off", value: this.value, onFocus: () => this.tpWrapper.classList.add("focus") }), h("button", { key: 'f34364aa09c04761d53ecb74a6bfca976e19e1a5', id: "btn", ref: (el) => (this.buttonEl = el), disabled: this.isDisabled, "aria-controls": "list", "aria-expanded": this.isExpanded ? "true" : "false", "aria-label": this.buttonAriaLabel, "aria-describedby": "time-input", onClick: () => (this.isExpanded ? this.close() : this.open()),
285
393
  // This addresses an issue in Safari, where clicking buttons does not focus them
286
394
  // if the button does not receive focus when clicked, Timepicker incorrectly emits a blur event
287
395
  onMouseDown: (ev) => {
288
396
  ev.preventDefault();
289
397
  this.buttonEl.focus();
290
- } }, h("span", { key: '8ddfb5aa572f502289371b6beb019ef3175c7320', class: "svg-icon svg-time" })), h("ul", { key: 'ff8533f5da516e128f3dc94dd00f0c4389f1d081', class: `options ${this.isExpanded ? "open" : ""} ${this.openUp ? "upwards" : ""}`, id: "list", role: "listbox", "aria-labelledby": "label", "aria-describedby": this.isExpanded ? "collapsed" : null, tabindex: -1, ref: (el) => (this.optionsEl = el) }, this.renderOptions())), h("div", { key: '11fd0c06d8e314c1e49994ae7c26c87dbc7a5256', id: "error", class: "error" }, this.errorMessage)), h("div", { key: 'd3064458d445c31f95dedfd6bd43d42dcfa9b0f7', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }))));
398
+ } }, h("span", { key: '68eae4f78064e5aad61db87234db57ff1e4ad6d1', class: "svg-icon svg-time" })), h("ul", { key: '3addacc9ac7614159e4875832b9540a295fbab23', class: `options ${this.isExpanded ? "open" : ""} ${this.openUp ? "upwards" : ""}`, id: "list", role: "listbox", "aria-labelledby": "label", "aria-describedby": this.isExpanded ? "collapsed" : null, tabindex: -1, ref: (el) => (this.optionsEl = el) }, this.renderOptions())), h("div", { key: '90044d1948a90a9d97d936f3c0097480eec53e2b', id: "error", class: "error" }, this.errorMessage)), h("div", { key: '436ed4ccb47cca85c3655adaf8f34fe3eaa7243a', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }))));
291
399
  }
292
400
  static get is() { return "wm-timepicker"; }
293
401
  static get encapsulation() { return "shadow"; }
@@ -315,7 +423,13 @@ export class Timepicker {
315
423
  "required": false,
316
424
  "optional": false,
317
425
  "docs": {
318
- "tags": [],
426
+ "tags": [{
427
+ "name": "description",
428
+ "text": "Disables the timepicker, preventing all interaction."
429
+ }, {
430
+ "name": "default",
431
+ "text": "false"
432
+ }],
319
433
  "text": ""
320
434
  },
321
435
  "attribute": "disabled",
@@ -333,7 +447,13 @@ export class Timepicker {
333
447
  "required": false,
334
448
  "optional": false,
335
449
  "docs": {
336
- "tags": [],
450
+ "tags": [{
451
+ "name": "description",
452
+ "text": "The time displayed in the input field. Updated as the user types. Can also\nbe set programmatically by the application."
453
+ }, {
454
+ "name": "default",
455
+ "text": "\"\""
456
+ }],
337
457
  "text": ""
338
458
  },
339
459
  "attribute": "value",
@@ -351,7 +471,10 @@ export class Timepicker {
351
471
  "required": false,
352
472
  "optional": true,
353
473
  "docs": {
354
- "tags": [],
474
+ "tags": [{
475
+ "name": "description",
476
+ "text": "Puts the component in an error state and displays this message below the\ninput."
477
+ }],
355
478
  "text": ""
356
479
  },
357
480
  "attribute": "error-message",
@@ -368,7 +491,13 @@ export class Timepicker {
368
491
  "required": false,
369
492
  "optional": false,
370
493
  "docs": {
371
- "tags": [],
494
+ "tags": [{
495
+ "name": "description",
496
+ "text": "Accessible label for the input. Required even when `label-position=\"none\"`."
497
+ }, {
498
+ "name": "required",
499
+ "text": undefined
500
+ }],
372
501
  "text": ""
373
502
  },
374
503
  "attribute": "label",
@@ -386,7 +515,13 @@ export class Timepicker {
386
515
  "required": false,
387
516
  "optional": false,
388
517
  "docs": {
389
- "tags": [],
518
+ "tags": [{
519
+ "name": "description",
520
+ "text": "Controls label placement. `'none'` hides the label visually but keeps it\naccessible."
521
+ }, {
522
+ "name": "default",
523
+ "text": "\"top\""
524
+ }],
390
525
  "text": ""
391
526
  },
392
527
  "attribute": "label-position",
@@ -404,7 +539,13 @@ export class Timepicker {
404
539
  "required": false,
405
540
  "optional": false,
406
541
  "docs": {
407
- "tags": [],
542
+ "tags": [{
543
+ "name": "description",
544
+ "text": "Displays a required-field asterisk next to the label."
545
+ }, {
546
+ "name": "default",
547
+ "text": "false"
548
+ }],
408
549
  "text": ""
409
550
  },
410
551
  "attribute": "required-field",
@@ -422,7 +563,10 @@ export class Timepicker {
422
563
  "required": false,
423
564
  "optional": true,
424
565
  "docs": {
425
- "tags": [],
566
+ "tags": [{
567
+ "name": "description",
568
+ "text": "The time the dropdown scrolls to and focuses when opened, in 24-hour format\n(e.g. `'14:30'`). Falls back to parsing `value`; defaults to `'09:00'` if unparseable."
569
+ }],
426
570
  "text": ""
427
571
  },
428
572
  "attribute": "preselected",
@@ -443,7 +587,10 @@ export class Timepicker {
443
587
  "cancelable": true,
444
588
  "composed": true,
445
589
  "docs": {
446
- "tags": [],
590
+ "tags": [{
591
+ "name": "description",
592
+ "text": "Fires when the input field loses focus."
593
+ }],
447
594
  "text": ""
448
595
  },
449
596
  "complexType": {
@@ -458,7 +605,13 @@ export class Timepicker {
458
605
  "cancelable": true,
459
606
  "composed": true,
460
607
  "docs": {
461
- "tags": [],
608
+ "tags": [{
609
+ "name": "description",
610
+ "text": "Fires when the user selects a time from the dropdown list."
611
+ }, {
612
+ "name": "eventDetails",
613
+ "text": "{{ time: string }} time \u2014 the selected time in 24-hour `hh:mm` format."
614
+ }],
462
615
  "text": ""
463
616
  },
464
617
  "complexType": {
@@ -476,7 +629,7 @@ export class Timepicker {
476
629
  "parameters": [{
477
630
  "name": "input",
478
631
  "type": "string",
479
- "docs": ""
632
+ "docs": "The time string to validate."
480
633
  }],
481
634
  "references": {
482
635
  "Promise": {
@@ -488,7 +641,16 @@ export class Timepicker {
488
641
  },
489
642
  "docs": {
490
643
  "text": "",
491
- "tags": []
644
+ "tags": [{
645
+ "name": "description",
646
+ "text": "Validates a time string against both 12-hour and 24-hour formats."
647
+ }, {
648
+ "name": "param",
649
+ "text": "input The time string to validate."
650
+ }, {
651
+ "name": "returns",
652
+ "text": "`true` if the string is a valid time, `false` otherwise."
653
+ }]
492
654
  }
493
655
  },
494
656
  "reformatTime": {
@@ -497,11 +659,11 @@ export class Timepicker {
497
659
  "parameters": [{
498
660
  "name": "format",
499
661
  "type": "\"12\" | \"24\"",
500
- "docs": ""
662
+ "docs": "The target format: `\"12\"` for 12-hour (e.g. `\"02:30 PM\"`), `\"24\"` for\n24-hour (e.g. `\"14:30\"`)."
501
663
  }, {
502
664
  "name": "time",
503
665
  "type": "string",
504
- "docs": ""
666
+ "docs": "The time string to convert. Accepts both 12-hour and 24-hour input."
505
667
  }],
506
668
  "references": {
507
669
  "Promise": {
@@ -523,7 +685,19 @@ export class Timepicker {
523
685
  },
524
686
  "docs": {
525
687
  "text": "",
526
- "tags": []
688
+ "tags": [{
689
+ "name": "description",
690
+ "text": "Converts a time string between 12-hour and 24-hour formats."
691
+ }, {
692
+ "name": "param",
693
+ "text": "format The target format: `\"12\"` for 12-hour (e.g. `\"02:30 PM\"`), `\"24\"` for\n24-hour (e.g. `\"14:30\"`)."
694
+ }, {
695
+ "name": "param",
696
+ "text": "time The time string to convert. Accepts both 12-hour and 24-hour input."
697
+ }, {
698
+ "name": "returns",
699
+ "text": "The reformatted time string."
700
+ }]
527
701
  }
528
702
  }
529
703
  };