@watermarkinsights/ripple 0.0.1 → 0.1.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 (460) hide show
  1. package/dist/cjs/app-globals-3db2fdd3.js +103 -0
  2. package/dist/cjs/chartFunctions-0d47b1f4.js +906 -0
  3. package/dist/cjs/functions-761cb9f2.js +10694 -0
  4. package/dist/cjs/index-bb947bd5.js +1843 -0
  5. package/dist/cjs/index.cjs.js +2 -0
  6. package/dist/cjs/interfaces-33cd6161.js +82 -0
  7. package/dist/cjs/intl-9e9388a7.js +291 -0
  8. package/dist/cjs/loader.cjs.js +15 -0
  9. package/dist/cjs/priv-calendar.cjs.entry.js +580 -0
  10. package/dist/cjs/priv-chart-popover-old.cjs.entry.js +146 -0
  11. package/dist/cjs/priv-chart-popover_2.cjs.entry.js +204 -0
  12. package/dist/cjs/priv-navigator-button.cjs.entry.js +29 -0
  13. package/dist/cjs/priv-navigator-item.cjs.entry.js +35 -0
  14. package/dist/cjs/priv-option-list.cjs.entry.js +391 -0
  15. package/dist/cjs/ripple.cjs.js +25 -0
  16. package/dist/cjs/wm-action-menu_2.cjs.entry.js +525 -0
  17. package/dist/cjs/wm-button.cjs.entry.js +280 -0
  18. package/dist/cjs/wm-chart-bar.cjs.entry.js +444 -0
  19. package/dist/cjs/wm-chart-column.cjs.entry.js +629 -0
  20. package/dist/cjs/wm-chart-slice.cjs.entry.js +27 -0
  21. package/dist/cjs/wm-chart-stack.cjs.entry.js +447 -0
  22. package/dist/cjs/wm-chart.cjs.entry.js +163 -0
  23. package/dist/cjs/wm-date-range.cjs.entry.js +591 -0
  24. package/dist/cjs/wm-datepicker.cjs.entry.js +399 -0
  25. package/dist/{ripple/wm-tab-panel.entry.js → cjs/wm-file-list.cjs.entry.js} +15 -24
  26. package/dist/cjs/wm-file.cjs.entry.js +210 -0
  27. package/dist/cjs/wm-flyout.cjs.entry.js +178 -0
  28. package/dist/{ripple/wm-modal.entry.js → cjs/wm-input.cjs.entry.js} +108 -110
  29. package/dist/cjs/wm-line-chart.cjs.entry.js +541 -0
  30. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +220 -0
  31. package/dist/cjs/wm-modal_3.cjs.entry.js +238 -0
  32. package/dist/cjs/wm-navigation_3.cjs.entry.js +188 -0
  33. package/dist/cjs/wm-navigator.cjs.entry.js +334 -0
  34. package/dist/cjs/wm-nested-select.cjs.entry.js +322 -0
  35. package/dist/{ripple/wm-textarea.entry.js → cjs/wm-optgroup.cjs.entry.js} +62 -57
  36. package/dist/cjs/wm-option_2.cjs.entry.js +536 -0
  37. package/dist/{ripple/wm-navigation.entry.js → cjs/wm-pagination.cjs.entry.js} +204 -91
  38. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +204 -0
  39. package/dist/{ripple/wm-flyout.entry.js → cjs/wm-search.cjs.entry.js} +168 -139
  40. package/dist/{ripple/wm-datepicker.entry.js → cjs/wm-snackbar.cjs.entry.js} +152 -223
  41. package/dist/cjs/wm-tab-item_3.cjs.entry.js +357 -0
  42. package/dist/cjs/wm-tag-input.cjs.entry.js +985 -0
  43. package/dist/cjs/wm-tag-option.cjs.entry.js +51 -0
  44. package/dist/{ripple/wm-modal-pss.entry.js → cjs/wm-textarea.cjs.entry.js} +70 -111
  45. package/dist/{ripple/wm-progress-indicator.entry.js → cjs/wm-timepicker.cjs.entry.js} +296 -78
  46. package/dist/cjs/wm-toggletip.cjs.entry.js +252 -0
  47. package/dist/cjs/wm-uploader.cjs.entry.js +341 -0
  48. package/dist/cjs/wm-wrapper.cjs.entry.js +21 -0
  49. package/dist/collection/collection-manifest.json +207 -0
  50. package/dist/collection/components/charts/chartFunctions.js +831 -0
  51. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +995 -0
  52. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +345 -0
  53. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.css +990 -0
  54. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.js +268 -0
  55. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +177 -0
  56. package/dist/collection/components/charts/wm-chart/wm-chart.css +1326 -0
  57. package/dist/collection/components/charts/wm-chart/wm-chart.js +549 -0
  58. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.css +1236 -0
  59. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.js +725 -0
  60. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.css +1335 -0
  61. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.js +914 -0
  62. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.css +1006 -0
  63. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.js +310 -0
  64. package/dist/collection/components/charts/wm-chart-stack/wm-chart-stack.css +1466 -0
  65. package/dist/collection/components/charts/wm-chart-stack/wm-chart-stack.js +709 -0
  66. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +1208 -0
  67. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +999 -0
  68. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +1326 -0
  69. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +320 -0
  70. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +967 -0
  71. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +232 -0
  72. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +167 -0
  73. package/dist/collection/components/datepickers/datepicker.css +1147 -0
  74. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +1415 -0
  75. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +857 -0
  76. package/dist/collection/components/datepickers/wm-date-range.js +1158 -0
  77. package/dist/collection/components/datepickers/wm-datepicker.js +875 -0
  78. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +999 -0
  79. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +784 -0
  80. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1259 -0
  81. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +805 -0
  82. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +909 -0
  83. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +363 -0
  84. package/dist/collection/components/selects/wm-option/wm-option.css +1033 -0
  85. package/dist/collection/components/selects/wm-option/wm-option.js +665 -0
  86. package/dist/collection/components/selects/wm-select/wm-select.css +1174 -0
  87. package/dist/collection/components/selects/wm-select/wm-select.js +878 -0
  88. package/dist/collection/components/wm-action-menu/wm-action-menu.css +1690 -0
  89. package/dist/collection/components/wm-action-menu/wm-action-menu.js +932 -0
  90. package/dist/collection/components/wm-button/wm-button.css +1630 -0
  91. package/dist/collection/components/wm-button/wm-button.js +794 -0
  92. package/dist/collection/components/wm-file/wm-file.css +1086 -0
  93. package/dist/collection/components/wm-file/wm-file.js +536 -0
  94. package/dist/collection/components/wm-file-list/wm-file-list.css +899 -0
  95. package/dist/collection/components/wm-file-list/wm-file-list.js +118 -0
  96. package/dist/collection/components/wm-flyout/wm-flyout.css +1091 -0
  97. package/dist/collection/components/wm-flyout/wm-flyout.js +651 -0
  98. package/dist/collection/components/wm-input/wm-input.css +1095 -0
  99. package/dist/collection/components/wm-input/wm-input.js +653 -0
  100. package/dist/collection/components/wm-menuitem/wm-menuitem.css +982 -0
  101. package/dist/collection/components/wm-menuitem/wm-menuitem.js +515 -0
  102. package/dist/collection/components/wm-modal/wm-modal-footer.css +927 -0
  103. package/dist/collection/components/wm-modal/wm-modal-footer.js +199 -0
  104. package/dist/collection/components/wm-modal/wm-modal-header.css +926 -0
  105. package/dist/collection/components/wm-modal/wm-modal-header.js +110 -0
  106. package/dist/collection/components/wm-modal/wm-modal.css +983 -0
  107. package/dist/collection/components/wm-modal/wm-modal.js +534 -0
  108. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +931 -0
  109. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +142 -0
  110. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +925 -0
  111. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +86 -0
  112. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +1007 -0
  113. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +369 -0
  114. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +926 -0
  115. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +153 -0
  116. package/dist/collection/components/wm-navigation/wm-navigation-item.css +935 -0
  117. package/dist/collection/components/wm-navigation/wm-navigation-item.js +140 -0
  118. package/dist/collection/components/wm-navigation/wm-navigation.css +977 -0
  119. package/dist/collection/components/wm-navigation/wm-navigation.js +246 -0
  120. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +929 -0
  121. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +90 -0
  122. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +918 -0
  123. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +128 -0
  124. package/dist/collection/components/wm-navigator/wm-navigator.css +990 -0
  125. package/dist/collection/components/wm-navigator/wm-navigator.js +597 -0
  126. package/dist/collection/components/wm-pagination/wm-pagination.css +1044 -0
  127. package/dist/collection/components/wm-pagination/wm-pagination.js +487 -0
  128. package/dist/collection/components/wm-search/wm-search.css +983 -0
  129. package/dist/collection/components/wm-search/wm-search.js +604 -0
  130. package/dist/collection/components/wm-snackbar/wm-snackbar.css +1150 -0
  131. package/dist/collection/components/wm-snackbar/wm-snackbar.js +363 -0
  132. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +958 -0
  133. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +233 -0
  134. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +966 -0
  135. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +461 -0
  136. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +906 -0
  137. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +132 -0
  138. package/dist/collection/components/wm-tag-input/wm-tag-input.css +1423 -0
  139. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1511 -0
  140. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +328 -0
  141. package/dist/collection/components/wm-textarea/wm-textarea.css +1065 -0
  142. package/dist/collection/components/wm-textarea/wm-textarea.js +423 -0
  143. package/dist/collection/components/wm-timepicker/wm-timepicker.css +1174 -0
  144. package/dist/collection/components/wm-timepicker/wm-timepicker.js +728 -0
  145. package/dist/collection/components/wm-toggletip/wm-toggletip.css +1296 -0
  146. package/dist/collection/components/wm-toggletip/wm-toggletip.js +455 -0
  147. package/dist/collection/components/wm-uploader/wm-uploader.css +1987 -0
  148. package/dist/collection/components/wm-uploader/wm-uploader.js +760 -0
  149. package/dist/collection/components/wm-wrapper/wm-wrapper.js +31 -0
  150. package/dist/collection/dev/action-menu.js +18 -0
  151. package/dist/collection/dev/button.js +12 -0
  152. package/dist/collection/dev/chart-bar.js +430 -0
  153. package/dist/collection/dev/chart-column.js +459 -0
  154. package/dist/collection/dev/chart-small.js +56 -0
  155. package/dist/collection/dev/chart-stack.js +205 -0
  156. package/dist/collection/dev/chart.js +18 -0
  157. package/dist/collection/dev/date-range.js +14 -0
  158. package/dist/collection/dev/datepicker.js +46 -0
  159. package/dist/collection/dev/file-list.js +16 -0
  160. package/dist/collection/dev/file.js +0 -0
  161. package/dist/collection/dev/flyout.js +194 -0
  162. package/dist/collection/dev/input.js +6 -0
  163. package/dist/collection/dev/line-chart.js +45 -0
  164. package/dist/collection/dev/modal.js +48 -0
  165. package/dist/collection/dev/navigation.js +13 -0
  166. package/dist/collection/dev/navigator.js +34 -0
  167. package/dist/collection/dev/nested-select.js +36 -0
  168. package/dist/collection/dev/pagination.js +7 -0
  169. package/dist/collection/dev/progress-monitor.js +0 -0
  170. package/dist/collection/dev/pss-modal.js +8 -0
  171. package/dist/collection/dev/scripts.js +49 -0
  172. package/dist/collection/dev/search.js +72 -0
  173. package/dist/collection/dev/select.js +57 -0
  174. package/dist/collection/dev/snackbar.js +68 -0
  175. package/dist/collection/dev/tabs.js +44 -0
  176. package/dist/collection/dev/tag-input.js +32 -0
  177. package/dist/collection/dev/textarea.js +28 -0
  178. package/dist/collection/dev/timepicker.js +32 -0
  179. package/dist/collection/dev/toggletip.js +9 -0
  180. package/dist/collection/dev/uploader.js +139 -0
  181. package/dist/collection/global/__mocks__/functions.js +6 -0
  182. package/dist/collection/global/functions.js +907 -0
  183. package/dist/{ripple/app-globals-B7cOtGhY.js → collection/global/global.js} +16 -87
  184. package/dist/collection/global/interfaces.js +94 -0
  185. package/dist/collection/global/intl.js +281 -0
  186. package/dist/collection/global/services/__mocks__/http-service.js +130 -0
  187. package/dist/collection/global/services/http-service.js +50 -0
  188. package/dist/collection/lang/lang.js +5 -0
  189. package/dist/collection/lang/missing.js +43 -0
  190. package/dist/collection/lang/piglatin.js +101 -0
  191. package/dist/docs/docs.d.ts +435 -0
  192. package/dist/docs/docs.json +14178 -0
  193. package/dist/docs/props-reference.json +2079 -0
  194. package/dist/docs/skill/index.md +33 -0
  195. package/dist/docs/skill/wm-action-menu.md +116 -0
  196. package/dist/docs/skill/wm-button.md +121 -0
  197. package/dist/docs/skill/wm-chart-bar.md +156 -0
  198. package/dist/docs/skill/wm-chart-column.md +122 -0
  199. package/dist/docs/skill/wm-chart-legend.md +91 -0
  200. package/dist/docs/skill/wm-chart-slice.md +101 -0
  201. package/dist/docs/skill/wm-chart-stack.md +147 -0
  202. package/dist/docs/skill/wm-chart.md +139 -0
  203. package/dist/docs/skill/wm-date-range.md +176 -0
  204. package/dist/docs/skill/wm-datepicker.md +153 -0
  205. package/dist/docs/skill/wm-file-list.md +105 -0
  206. package/dist/docs/skill/wm-file.md +91 -0
  207. package/dist/docs/skill/wm-flyout.md +209 -0
  208. package/dist/docs/skill/wm-input.md +134 -0
  209. package/dist/docs/skill/wm-line-chart.md +135 -0
  210. package/dist/docs/skill/wm-menuitem.md +64 -0
  211. package/dist/docs/skill/wm-modal-footer.md +81 -0
  212. package/dist/docs/skill/wm-modal-header.md +71 -0
  213. package/dist/docs/skill/wm-modal.md +172 -0
  214. package/dist/docs/skill/wm-navigation-hamburger.md +61 -0
  215. package/dist/docs/skill/wm-navigation-item.md +78 -0
  216. package/dist/docs/skill/wm-navigation.md +82 -0
  217. package/dist/docs/skill/wm-navigator.md +106 -0
  218. package/dist/docs/skill/wm-nested-select.md +160 -0
  219. package/dist/docs/skill/wm-optgroup.md +72 -0
  220. package/dist/docs/skill/wm-option.md +67 -0
  221. package/dist/docs/skill/wm-pagination.md +114 -0
  222. package/dist/docs/skill/wm-progress-indicator.md +75 -0
  223. package/dist/docs/skill/wm-progress-monitor.md +120 -0
  224. package/dist/docs/skill/wm-progress-slice.md +67 -0
  225. package/dist/docs/skill/wm-search.md +180 -0
  226. package/dist/docs/skill/wm-select.md +169 -0
  227. package/dist/docs/skill/wm-snackbar.md +130 -0
  228. package/dist/docs/skill/wm-tab-item.md +45 -0
  229. package/dist/docs/skill/wm-tab-list.md +139 -0
  230. package/dist/docs/skill/wm-tab-panel.md +39 -0
  231. package/dist/docs/skill/wm-tag-input.md +187 -0
  232. package/dist/docs/skill/wm-tag-option.md +60 -0
  233. package/dist/docs/skill/wm-textarea.md +102 -0
  234. package/dist/docs/skill/wm-timepicker.md +156 -0
  235. package/dist/docs/skill/wm-toggletip.md +98 -0
  236. package/dist/docs/skill/wm-uploader.md +154 -0
  237. package/dist/docs/skill/wm-wrapper.md +5 -0
  238. package/dist/esm/app-globals-a1092590.js +101 -0
  239. package/dist/{ripple/chartFunctions-CmeM8Tyx.js → esm/chartFunctions-58637dc9.js} +159 -3
  240. package/dist/{ripple/functions-DVLl0rH_.js → esm/functions-65f1594c.js} +374 -7830
  241. package/dist/esm/index-3425d80d.js +1813 -0
  242. package/dist/esm/index.js +1 -0
  243. package/dist/esm/interfaces-8778346d.js +77 -0
  244. package/dist/{ripple/intl-7p27BJSM.js → esm/intl-d518f362.js} +11 -4
  245. package/dist/esm/loader.js +11 -0
  246. package/dist/{ripple → esm}/priv-calendar.entry.js +143 -133
  247. package/dist/esm/priv-chart-popover-old.entry.js +142 -0
  248. package/dist/esm/priv-chart-popover_2.entry.js +199 -0
  249. package/dist/{ripple → esm}/priv-navigator-button.entry.js +5 -4
  250. package/dist/{ripple → esm}/priv-navigator-item.entry.js +5 -4
  251. package/dist/{ripple → esm}/priv-option-list.entry.js +18 -16
  252. package/dist/esm/ripple.js +20 -0
  253. package/dist/esm/wm-action-menu_2.entry.js +520 -0
  254. package/dist/{ripple/wm-modal-header.entry.js → esm/wm-button.entry.js} +264 -24
  255. package/dist/esm/wm-chart-bar.entry.js +440 -0
  256. package/dist/esm/wm-chart-column.entry.js +625 -0
  257. package/dist/{ripple → esm}/wm-chart-slice.entry.js +6 -1
  258. package/dist/esm/wm-chart-stack.entry.js +443 -0
  259. package/dist/esm/wm-chart.entry.js +159 -0
  260. package/dist/{ripple → esm}/wm-date-range.entry.js +224 -114
  261. package/dist/esm/wm-datepicker.entry.js +395 -0
  262. package/dist/{ripple → esm}/wm-file-list.entry.js +5 -4
  263. package/dist/{ripple → esm}/wm-file.entry.js +48 -24
  264. package/dist/esm/wm-flyout.entry.js +174 -0
  265. package/dist/{ripple → esm}/wm-input.entry.js +23 -7
  266. package/dist/{ripple → esm}/wm-line-chart.entry.js +182 -94
  267. package/dist/esm/wm-modal-pss_3.entry.js +214 -0
  268. package/dist/esm/wm-modal_3.entry.js +232 -0
  269. package/dist/esm/wm-navigation_3.entry.js +182 -0
  270. package/dist/{ripple → esm}/wm-navigator.entry.js +26 -64
  271. package/dist/{ripple → esm}/wm-nested-select.entry.js +35 -25
  272. package/dist/{ripple → esm}/wm-optgroup.entry.js +17 -5
  273. package/dist/esm/wm-option_2.entry.js +531 -0
  274. package/dist/{ripple → esm}/wm-pagination.entry.js +16 -14
  275. package/dist/esm/wm-progress-indicator_3.entry.js +198 -0
  276. package/dist/{ripple → esm}/wm-search.entry.js +15 -31
  277. package/dist/{ripple → esm}/wm-snackbar.entry.js +32 -45
  278. package/dist/esm/wm-tab-item_3.entry.js +351 -0
  279. package/dist/{ripple → esm}/wm-tag-input.entry.js +169 -65
  280. package/dist/{ripple → esm}/wm-tag-option.entry.js +14 -2
  281. package/dist/{ripple/wm-menuitem.entry.js → esm/wm-textarea.entry.js} +65 -100
  282. package/dist/{ripple → esm}/wm-timepicker.entry.js +33 -12
  283. package/dist/{ripple → esm}/wm-toggletip.entry.js +105 -33
  284. package/dist/esm/wm-uploader.entry.js +337 -0
  285. package/dist/{ripple → esm}/wm-wrapper.entry.js +1 -1
  286. package/dist/index.cjs.js +1 -0
  287. package/dist/index.js +1 -0
  288. package/dist/loader/cdn.js +1 -0
  289. package/dist/loader/index.cjs.js +1 -0
  290. package/dist/loader/index.d.ts +24 -0
  291. package/dist/loader/index.es2017.js +1 -0
  292. package/dist/loader/index.js +2 -0
  293. package/dist/loader/package.json +11 -0
  294. package/dist/ripple/index.esm.js +0 -1
  295. package/dist/ripple/p-0d364411.entry.js +1 -0
  296. package/dist/ripple/p-156c4d1d.entry.js +1 -0
  297. package/dist/ripple/{wm-modal-footer.entry.js → p-26d8c356.entry.js} +1 -44
  298. package/dist/ripple/p-2b23ce49.entry.js +1 -0
  299. package/dist/ripple/p-2b7cc2c1.entry.js +1 -0
  300. package/dist/ripple/p-34bde06a.entry.js +1 -0
  301. package/dist/ripple/p-35db9386.entry.js +1 -0
  302. package/dist/ripple/p-38a987ac.entry.js +1 -0
  303. package/dist/ripple/p-38b05894.entry.js +1 -0
  304. package/dist/ripple/p-38dee4ab.entry.js +1 -0
  305. package/dist/ripple/p-3a19d019.entry.js +1 -0
  306. package/dist/ripple/p-451d4de2.js +1 -0
  307. package/dist/ripple/p-507f2cf4.entry.js +1 -0
  308. package/dist/ripple/p-59f74ead.entry.js +1 -0
  309. package/dist/ripple/p-5c2fc42a.entry.js +1 -0
  310. package/dist/ripple/p-680d7606.entry.js +1 -0
  311. package/dist/ripple/p-683264db.js +1 -0
  312. package/dist/ripple/p-6db681c8.entry.js +1 -0
  313. package/dist/ripple/p-6e3c2bbc.js +1 -0
  314. package/dist/ripple/p-6f1cabab.entry.js +1 -0
  315. package/dist/ripple/p-72d135ee.entry.js +1 -0
  316. package/dist/ripple/p-7799953c.entry.js +1 -0
  317. package/dist/ripple/p-83c3db60.js +2 -0
  318. package/dist/ripple/{wm-progress-monitor.entry.js → p-83cdad78.entry.js} +1 -71
  319. package/dist/ripple/p-87ef0cfa.entry.js +1 -0
  320. package/dist/ripple/p-88e44511.entry.js +1 -0
  321. package/dist/ripple/p-8f8e4eb8.entry.js +1 -0
  322. package/dist/ripple/p-936adffb.entry.js +1 -0
  323. package/dist/ripple/p-9755192c.entry.js +1 -0
  324. package/dist/ripple/p-9c5c591b.js +1 -0
  325. package/dist/ripple/p-9ea38d96.entry.js +1 -0
  326. package/dist/ripple/p-be3e4e7c.entry.js +1 -0
  327. package/dist/ripple/p-c9c7df12.entry.js +1 -0
  328. package/dist/ripple/p-d7a1be0b.entry.js +1 -0
  329. package/dist/ripple/p-dab86523.entry.js +1 -0
  330. package/dist/ripple/{wm-tab-list.entry.js → p-e4aa6e27.entry.js} +1 -175
  331. package/dist/ripple/p-ebe9f38c.js +1 -0
  332. package/dist/ripple/p-ed053612.entry.js +1 -0
  333. package/dist/ripple/p-f43f621b.entry.js +1 -0
  334. package/dist/ripple/p-f48d30d6.entry.js +1 -0
  335. package/dist/ripple/{wm-action-menu.entry.js → p-f6aad57c.entry.js} +1 -201
  336. package/dist/ripple/p-f6e1beb5.entry.js +1 -0
  337. package/dist/ripple/p-fc843bb8.entry.js +1 -0
  338. package/dist/ripple/{priv-chart-popover.entry.js → p-fd997764.entry.js} +1 -134
  339. package/dist/ripple/p-fffb46ad.entry.js +1 -0
  340. package/dist/ripple/ripple.esm.js +1 -48
  341. package/dist/types/components/charts/chartFunctions.d.ts +15 -2
  342. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +25 -11
  343. package/dist/types/components/charts/priv-chart-popover-old/priv-chart-popover-old.d.ts +31 -0
  344. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +52 -0
  345. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +113 -1
  346. package/dist/types/components/charts/wm-chart-bar/wm-chart-bar.d.ts +195 -0
  347. package/dist/types/components/charts/wm-chart-column/wm-chart-column.d.ts +184 -0
  348. package/dist/types/components/charts/wm-chart-legend/wm-chart-legend.d.ts +110 -0
  349. package/dist/types/components/charts/wm-chart-stack/wm-chart-stack.d.ts +194 -0
  350. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +156 -11
  351. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +53 -1
  352. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +85 -0
  353. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +44 -0
  354. package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +19 -3
  355. package/dist/types/components/datepickers/wm-date-range.d.ts +205 -14
  356. package/dist/types/components/datepickers/wm-datepicker.d.ts +189 -11
  357. package/dist/types/components/selects/priv-option-list/priv-option-list.d.ts +6 -0
  358. package/dist/types/components/selects/wm-nested-select/wm-nested-select.d.ts +165 -1
  359. package/dist/types/components/selects/wm-optgroup/wm-optgroup.d.ts +87 -0
  360. package/dist/types/components/selects/wm-option/wm-option.d.ts +117 -0
  361. package/dist/types/components/selects/wm-select/wm-select.d.ts +193 -12
  362. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +207 -2
  363. package/dist/types/components/wm-button/wm-button.d.ts +191 -0
  364. package/dist/types/components/wm-file/wm-file.d.ts +110 -1
  365. package/dist/types/components/wm-file-list/wm-file-list.d.ts +72 -0
  366. package/dist/types/components/wm-flyout/wm-flyout.d.ts +205 -0
  367. package/dist/types/components/wm-input/wm-input.d.ts +161 -1
  368. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +79 -0
  369. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +54 -0
  370. package/dist/types/components/wm-modal/wm-modal-header.d.ts +30 -0
  371. package/dist/types/components/wm-modal/wm-modal.d.ts +160 -0
  372. package/dist/types/components/wm-modal-pss/wm-modal-pss-footer.d.ts +4 -0
  373. package/dist/types/components/wm-modal-pss/wm-modal-pss-header.d.ts +4 -0
  374. package/dist/types/components/wm-modal-pss/wm-modal-pss.d.ts +6 -0
  375. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +34 -0
  376. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +41 -0
  377. package/dist/types/components/wm-navigation/wm-navigation.d.ts +57 -0
  378. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +4 -0
  379. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +4 -0
  380. package/dist/types/components/wm-navigator/wm-navigator.d.ts +93 -4
  381. package/dist/types/components/wm-pagination/wm-pagination.d.ts +100 -1
  382. package/dist/types/components/wm-search/wm-search.d.ts +158 -6
  383. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +103 -1
  384. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +55 -3
  385. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +119 -20
  386. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +35 -2
  387. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +199 -5
  388. package/dist/types/components/wm-tag-input/wm-tag-option/wm-tag-option.d.ts +68 -0
  389. package/dist/types/components/wm-textarea/wm-textarea.d.ts +99 -0
  390. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +147 -0
  391. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +88 -2
  392. package/dist/types/components/wm-uploader/wm-uploader.d.ts +145 -3
  393. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +3 -0
  394. package/dist/types/components.d.ts +11523 -95
  395. package/dist/types/global/functions.d.ts +7 -2
  396. package/dist/types/global/interfaces.d.ts +92 -2
  397. package/dist/types/global/intl.d.ts +3 -0
  398. package/dist/types/stencil-public-runtime.d.ts +0 -28
  399. package/package.json +4 -33
  400. package/dist/components/index.d.ts +0 -33
  401. package/dist/components/priv-calendar.d.ts +0 -11
  402. package/dist/components/priv-chart-popover.d.ts +0 -11
  403. package/dist/components/priv-navigator-button.d.ts +0 -11
  404. package/dist/components/priv-navigator-item.d.ts +0 -11
  405. package/dist/components/priv-option-list.d.ts +0 -11
  406. package/dist/components/wm-action-menu.d.ts +0 -11
  407. package/dist/components/wm-button.d.ts +0 -11
  408. package/dist/components/wm-chart-slice.d.ts +0 -11
  409. package/dist/components/wm-chart.d.ts +0 -11
  410. package/dist/components/wm-date-range.d.ts +0 -11
  411. package/dist/components/wm-datepicker.d.ts +0 -11
  412. package/dist/components/wm-file-list.d.ts +0 -11
  413. package/dist/components/wm-file.d.ts +0 -11
  414. package/dist/components/wm-flyout.d.ts +0 -11
  415. package/dist/components/wm-input.d.ts +0 -11
  416. package/dist/components/wm-line-chart.d.ts +0 -11
  417. package/dist/components/wm-menuitem.d.ts +0 -11
  418. package/dist/components/wm-modal-footer.d.ts +0 -11
  419. package/dist/components/wm-modal-header.d.ts +0 -11
  420. package/dist/components/wm-modal-pss-footer.d.ts +0 -11
  421. package/dist/components/wm-modal-pss-header.d.ts +0 -11
  422. package/dist/components/wm-modal-pss.d.ts +0 -11
  423. package/dist/components/wm-modal.d.ts +0 -11
  424. package/dist/components/wm-navigation-hamburger.d.ts +0 -11
  425. package/dist/components/wm-navigation-item.d.ts +0 -11
  426. package/dist/components/wm-navigation.d.ts +0 -11
  427. package/dist/components/wm-navigator.d.ts +0 -11
  428. package/dist/components/wm-nested-select.d.ts +0 -11
  429. package/dist/components/wm-optgroup.d.ts +0 -11
  430. package/dist/components/wm-option.d.ts +0 -11
  431. package/dist/components/wm-pagination.d.ts +0 -11
  432. package/dist/components/wm-progress-indicator.d.ts +0 -11
  433. package/dist/components/wm-progress-monitor.d.ts +0 -11
  434. package/dist/components/wm-progress-slice.d.ts +0 -11
  435. package/dist/components/wm-search.d.ts +0 -11
  436. package/dist/components/wm-select.d.ts +0 -11
  437. package/dist/components/wm-snackbar.d.ts +0 -11
  438. package/dist/components/wm-tab-item.d.ts +0 -11
  439. package/dist/components/wm-tab-list.d.ts +0 -11
  440. package/dist/components/wm-tab-panel.d.ts +0 -11
  441. package/dist/components/wm-tag-input.d.ts +0 -11
  442. package/dist/components/wm-tag-option.d.ts +0 -11
  443. package/dist/components/wm-textarea.d.ts +0 -11
  444. package/dist/components/wm-timepicker.d.ts +0 -11
  445. package/dist/components/wm-toggletip.d.ts +0 -11
  446. package/dist/components/wm-uploader.d.ts +0 -11
  447. package/dist/components/wm-wrapper.d.ts +0 -11
  448. package/dist/ripple/index-CU5QNCKv.js +0 -4167
  449. package/dist/ripple/interfaces-CrANcZM9.js +0 -53
  450. package/dist/ripple/wm-button.entry.js +0 -197
  451. package/dist/ripple/wm-chart.entry.js +0 -157
  452. package/dist/ripple/wm-modal-pss-footer.entry.js +0 -40
  453. package/dist/ripple/wm-modal-pss-header.entry.js +0 -39
  454. package/dist/ripple/wm-navigation-hamburger.entry.js +0 -48
  455. package/dist/ripple/wm-navigation-item.entry.js +0 -18
  456. package/dist/ripple/wm-option.entry.js +0 -171
  457. package/dist/ripple/wm-progress-slice.entry.js +0 -13
  458. package/dist/ripple/wm-select.entry.js +0 -249
  459. package/dist/ripple/wm-tab-item.entry.js +0 -63
  460. package/dist/ripple/wm-uploader.entry.js +0 -313
@@ -0,0 +1,187 @@
1
+ ### Tag Input
2
+ - **Element:** `<wm-tag-input>`
3
+
4
+ **Purpose:** Input for selecting or creating a list of tags. Two variants: `'dropdown'` (options in a
5
+ filterable list, supports creating new tags) and `'table'` (options in a filterable
6
+ multi-column table). Options are defined as wm-tag-option children. Selected options appear
7
+ as removable tags above the search field.
8
+
9
+ **When to use:**
10
+
11
+ - **Selecting multiple values from a large, searchable list** -- use Tag Input when the option set is too long to scan in a flat multi-select dropdown but users know roughly what they are looking for; best for selecting a few options from a large searchable list.
12
+ - **Allowing users to create new values on the fly** -- when valid values are not fully predefined and users may need to introduce new entries (e.g., new skill labels, keywords, or categories), use the dropdown variant with add-new="true".
13
+ - **Selecting from options that have multiple attributes** -- when each option carries more context than a single label (e.g., a person's name, email, and role), use the table variant to display each option as a multi-column row.
14
+ - **Enforcing a cap on how many values can be selected** -- when the field has a meaningful limit (e.g., "select up to 5 reviewers"), use max-tags to surface a running count and a limit-reached message.
15
+
16
+ **Do not use for:**
17
+
18
+ - **Small, fully known option sets** -- if the list is short and bounded with no need for search or free entry, use wm-select with multiple instead; Tag Input's search and creation overhead adds complexity without benefit.
19
+ - **Single-value fields** -- if only one value can be selected, Tag Input's tag-area model and two-tab-stop structure are unnecessary; use wm-select or wm-input for single-value cases.
20
+
21
+ **Variants / types:**
22
+
23
+ - `tag-input-type="dropdown"` -- users search for and select from a flat list; supports add-new to allow creation of new values
24
+ - `tag-input-type="table"` -- users select from a multi-column option list; requires col-headers and options use col1-col4 props on wm-tag-option
25
+
26
+ **Usage notes:**
27
+
28
+ - `label` is required and must always be provided.
29
+ - `col-headers` is required for the `table` variant; `label-position="left"` is not
30
+ supported in the `table` variant.
31
+ - `max-tags` displays a counter but does not prevent selection beyond the limit -- enforce
32
+ the limit in your `wmTagOptionSelected` or `wmTagInputTagAdded` handler.
33
+ - The `add-new` feature (dropdown only) detects and announces duplicate entries.
34
+ - In React, `wmTagOptionSelected` and `wmTagOptionDeselected` bubble from `wm-tag-option`
35
+ to `wm-tag-input` for the dropdown variant (listen on `WmTagInput`). For the table
36
+ variant, put the handlers directly on each `WmTagOption` instead. In both cases, you
37
+ must set `event.target.selected = true/false` imperatively -- the component does not do
38
+ this automatically.
39
+ - For the `add-new` dropdown variant, create and append a new `wm-tag-option` element with
40
+ `selected = true` in the `wmTagInputTagAdded` handler -- the component does not create
41
+ the option element automatically.
42
+
43
+ **Props:**
44
+ - `add-new` -- Dropdown variant only. When true, the user can type a new value and add it
45
+ as a tag by pressing Enter or comma. _(default: `true`)_
46
+ - `character-limit` -- Dropdown variant only. Maximum character limit enforced on the search field. _(default: `50`)_
47
+ - `col-headers` -- Table variant only. Comma-separated list of column header labels. The number
48
+ of headers determines the number of columns. _(required; conditionally required: Required when `tag-input-type="table"`.)_
49
+ - `col-widths` -- Table variant only. Comma-separated column widths. Blank values fill
50
+ remaining space.
51
+ - `col-wrap` -- Table variant only. Comma-separated text-wrapping rules per column -- `'wrap'`
52
+ or `'trunc'` (truncate with tooltip).
53
+ - `error-message` -- Puts the component in an error state and displays this message below the
54
+ field.
55
+ - `help-text` -- Overrides the default instructional help text shown at the top of the
56
+ dropdown (dropdown variant) or below the input when `max-tags` is set (table variant).
57
+ - `info` -- Hint text displayed below the component.
58
+ - `label` -- Accessible name for the search input and dropdown/table. Required even when
59
+ `label-position="none"`. _(required)_
60
+ - `label-position` -- Controls label placement. `'none'` hides the label visually but keeps it
61
+ accessible. `'left'` is not supported in the `table` variant. _(type: `"left" | "none" | "top"`; default: `"top"`)_
62
+ - `max-tags` -- Maximum number of tags allowed. Displays a "Tags added: x/y" counter but
63
+ does not prevent selection beyond the limit -- enforce the limit in your
64
+ `wmTagOptionSelected` or `wmTagInputTagAdded` handler.
65
+ - `placeholder` -- Placeholder text in the search field. Defaults to a generated string based
66
+ on `add-new` and available options.
67
+ - `required-field` -- Displays a required-field asterisk next to the label. _(default: `false`)_
68
+ - `tag-input-type` -- Selects the component variant. `'dropdown'` shows a filterable list;
69
+ `'table'` shows a filterable multi-column table. _(type: `"dropdown" | "table"`; default: `"dropdown"`)_
70
+
71
+ **Slots:**
72
+ - _(default)_ -- One or more wm-tag-option children.
73
+
74
+ **Events:**
75
+ - `wmTagInputTagAdded` -- Fires when the user adds a new tag by typing and pressing Enter or comma
76
+ (dropdown variant, `add-new` enabled). The event detail is the text string of the new
77
+ tag. Not fired when selecting an existing wm-tag-option -- listen to `wmTagOptionSelected`
78
+ on the wm-tag-option for that. Detail: `string -- the text of the newly created tag.`
79
+
80
+ **Accessibility:**
81
+
82
+ - `label` is the accessible name for the search input and dropdown/table; required even
83
+ when `label-position="none"`.
84
+ - An `aria-live` region announces tag additions, removals, result counts, and errors.
85
+ - Two tab stops: the tag area (when tags are present) and the search field.
86
+ - **Keyboard:**
87
+ **Tag area (when tags are present):**
88
+ - **Arrow Left / Arrow Right**: Cycle focus between selected tags.
89
+ - **Backspace / Delete**: Remove the focused tag.
90
+ **Search field:**
91
+ - **Arrow Down / Arrow Up**: Open the dropdown or navigate within it.
92
+ - **Enter**: Add a new tag from typed value (dropdown, `add-new` enabled) or select the
93
+ focused option.
94
+ - **Comma**: Add a new tag immediately (dropdown, `add-new` enabled).
95
+ - **Escape**: Close the dropdown.
96
+ - **Backspace** (empty field): Move focus to the last selected tag.
97
+
98
+ **Related components:**
99
+
100
+ - `<wm-select>` with multiple -- if the option set is small, fully known, and does not benefit from search or free entry, use multi-select Select; Tag Input's extra capabilities add complexity not warranted for simple bounded lists.
101
+ - `<wm-search>` -- if the goal is to filter visible page content as the user types rather than commit selected values to a form, use Search; Tag Input accumulates stored values, not a real-time content filter.
102
+ - `<wm-input>` -- if the user is entering a single free-form string rather than selecting or creating multiple discrete values, use Input; Tag Input is only appropriate when the field holds a collection.
103
+
104
+ **Code example:**
105
+
106
+ _Dropdown with add-new_
107
+
108
+ ```html
109
+ <wm-tag-input label="Skills" add-new="true">
110
+ <wm-tag-option>JavaScript</wm-tag-option>
111
+ <wm-tag-option>TypeScript</wm-tag-option>
112
+ <wm-tag-option>React</wm-tag-option>
113
+ </wm-tag-input>
114
+ ```
115
+
116
+ _Dropdown with add-new_
117
+
118
+ ```react
119
+ // wmTagOptionSelected/Deselected bubble to WmTagInput for the dropdown variant.
120
+ // You must set event.target.selected imperatively in each handler.
121
+ // wmTagInputTagAdded fires when a new tag is created; event.detail is the tag string.
122
+ // You must create and append a wm-tag-option DOM element with selected=true.
123
+ const handleOptionSelected = (event) => {
124
+ event.target.selected = true;
125
+ setTags((prev) => [...prev, event.target.textContent.trim()]);
126
+ };
127
+ const handleOptionDeselected = (event) => {
128
+ const isUserAdded = event.target.getAttribute('user-added');
129
+ isUserAdded ? event.target.remove() : (event.target.selected = false);
130
+ setTags((prev) => prev.filter((t) => t !== event.target.textContent.trim()));
131
+ };
132
+ const handleTagAdded = (event) => {
133
+ const taginput = event.currentTarget;
134
+ const newTagName = event.detail;
135
+ const existingNames = Array.from(taginput.querySelectorAll('wm-tag-option'))
136
+ .map((o) => o.textContent.toLowerCase().trim());
137
+ if (!existingNames.includes(newTagName.toLowerCase().trim())) {
138
+ const newOption = document.createElement('wm-tag-option');
139
+ newOption.textContent = newTagName;
140
+ newOption.id = 'tag' + Math.random().toString(36).substr(2, 6);
141
+ newOption.selected = true;
142
+ newOption.setAttribute('user-added', 'true');
143
+ taginput.appendChild(newOption);
144
+ setTags((prev) => [...prev, newTagName]);
145
+ }
146
+ };
147
+
148
+ <WmTagInput label="Skills" addNew={true}
149
+ onWmTagOptionSelected={handleOptionSelected}
150
+ onWmTagOptionDeselected={handleOptionDeselected}
151
+ onWmTagInputTagAdded={handleTagAdded}>
152
+ <WmTagOption>JavaScript</WmTagOption>
153
+ <WmTagOption>TypeScript</WmTagOption>
154
+ <WmTagOption>React</WmTagOption>
155
+ </WmTagInput>
156
+ ```
157
+
158
+ _Table variant_
159
+
160
+ ```html
161
+ <wm-tag-input label="Assign people" tag-input-type="table" col-headers="Name,Department">
162
+ <wm-tag-option col1="Smith, John" col2="Engineering"></wm-tag-option>
163
+ <wm-tag-option col1="Doe, Jane" col2="Design"></wm-tag-option>
164
+ </wm-tag-input>
165
+ ```
166
+
167
+ _Table variant_
168
+
169
+ ```react
170
+ // For the table variant, put handlers on each WmTagOption rather than on WmTagInput.
171
+ // event.target.col1 is the first column value, used as the tag label.
172
+ const makeHandlers = (col1Value) => ({
173
+ onWmTagOptionSelected: (event) => {
174
+ event.target.selected = true;
175
+ setSelected((prev) => [...prev, col1Value]);
176
+ },
177
+ onWmTagOptionDeselected: (event) => {
178
+ event.target.selected = false;
179
+ setSelected((prev) => prev.filter((p) => p !== col1Value));
180
+ },
181
+ });
182
+
183
+ <WmTagInput label="Assign people" tagInputType="table" colHeaders="Name,Department">
184
+ <WmTagOption col1="Smith, John" col2="Engineering" {...makeHandlers('Smith, John')} />
185
+ <WmTagOption col1="Doe, Jane" col2="Design" {...makeHandlers('Doe, Jane')} />
186
+ </WmTagInput>
187
+ ```
@@ -0,0 +1,60 @@
1
+ ### Tag Option
2
+ - **Element:** `<wm-tag-option>`
3
+
4
+ **Purpose:** Option element for wm-tag-input. Represents a selectable tag in the dropdown list or
5
+ table. Always used as a direct child of wm-tag-input. For the dropdown variant, slotted
6
+ text content is the tag label; for the table variant, use `col1`-`col4` props.
7
+
8
+ **Usage notes:**
9
+
10
+ - Pre-select an option on load by setting `selected`; lock it from removal by setting
11
+ `locked`.
12
+ - Listen to `wmTagOptionSelected` and `wmTagOptionDeselected` to react to selection
13
+ changes.
14
+
15
+ **Props:**
16
+ - `col1` -- First column value for the `table` variant. Also used as the tag label when
17
+ this option is selected.
18
+ - `col2` -- Second column value for the `table` variant.
19
+ - `col3` -- Third column value for the `table` variant.
20
+ - `col4` -- Fourth column value for the `table` variant.
21
+ - `locked` -- When true, the option is permanently selected and cannot be removed by the
22
+ user. _(default: `false`)_
23
+ - `selected` -- Whether this option is currently selected (appears as a tag). Setting this
24
+ on load pre-selects the option. _(default: `false`)_
25
+
26
+ **Events:**
27
+ - `wmTagOptionDeselected` -- Fires when this option's tag is removed.
28
+ - `wmTagOptionSelected` -- Fires when this option is selected as a tag.
29
+
30
+ **Methods:**
31
+ - `emitDeselectedEvent() => Promise<void>` -- Programmatically deselects this option, removing it as a tag.
32
+ - **Returns:** A promise that resolves once the event has been emitted.
33
+ - `emitSelectedEvent() => Promise<void>` -- Programmatically selects this option, adding it as a tag.
34
+ - **Returns:** A promise that resolves once the event has been emitted.
35
+
36
+ **Code example:**
37
+
38
+ _Dropdown option_
39
+
40
+ ```html
41
+ <wm-tag-option>JavaScript</wm-tag-option>
42
+ ```
43
+
44
+ _Dropdown option_
45
+
46
+ ```react
47
+ <WmTagOption onWmTagOptionSelected={handleSelect}>JavaScript</WmTagOption>
48
+ ```
49
+
50
+ _Pre-selected option_
51
+
52
+ ```html
53
+ <wm-tag-option selected>TypeScript</wm-tag-option>
54
+ ```
55
+
56
+ _Table option (col1-col4)_
57
+
58
+ ```react
59
+ <WmTagOption col1="Smith, John" col2="Engineering" />
60
+ ```
@@ -0,0 +1,102 @@
1
+ ### Textarea
2
+ - **Element:** `<wm-textarea>`
3
+
4
+ **Purpose:** Multi-line plain-text editing control with a drag handle for vertical resizing. Shares
5
+ most functionality with wm-input. Use instead of native `<textarea>` in all Watermark UI.
6
+
7
+ **When to use:**
8
+
9
+ - **Collecting a narrative, description, or open-ended response** -- when a user needs to write more than a short phrase (a program description, assessment rationale, comment, or notes field), use Textarea to give them a multi-line editing surface.
10
+ - **Accepting long-form text with a character cap** -- when the field has a meaningful maximum length (e.g., a mission statement capped at 500 characters), use character-limit to display a running count and turn it red at the limit, while still allowing free editing.
11
+ - **Setting an initial height appropriate to the expected content volume** -- when the typical response will be longer or shorter than the default three lines, use input-height to size the field to match user expectations.
12
+ - **Displaying supplementary guidance below the field** -- when the field benefits from a brief instruction that stays visible while the user types, use the info property to show it persistently below the input area.
13
+
14
+ **Do not use for:**
15
+
16
+ - **Short, single-line values** -- if the expected value is a name, identifier, number, or any other brief string, use wm-input instead; Textarea signals to users that a longer response is expected and wastes vertical space for short values.
17
+
18
+ **Variants / types:**
19
+
20
+ _None documented_
21
+
22
+ **Usage notes:**
23
+
24
+ - In HTML, set the initial value via text content: `<wm-textarea>initial value</wm-textarea>`.
25
+ In React, use the `value` prop for controlled usage.
26
+ - `wmTextareaValueChanged` fires on blur only when the value has changed; use the native
27
+ `input` event for per-keystroke updates.
28
+ - `event.detail.value` is the current string value.
29
+
30
+ **Props:**
31
+ - `character-limit` -- Maximum number of characters allowed. Displays a live counter below the
32
+ field. Does not prevent typing beyond the limit (to allow pasting and editing) but the
33
+ counter turns red when exceeded. Disabled when unset.
34
+ - `disabled` -- Disables the component, preventing all interaction. _(default: `false`)_
35
+ - `error-message` -- Puts the component in an error state and displays this message below the
36
+ textarea.
37
+ - `info` -- Hint text displayed below the textarea. Read by screen readers on focus via
38
+ `aria-describedby`.
39
+ - `input-height` -- CSS height value for the initial height of the textarea. The user can resize
40
+ it with the drag handle. _(default: `""`)_
41
+ - `input-width` -- CSS width value for the textarea element itself, independent of the overall
42
+ component width. Useful when the label or error message should extend wider than the
43
+ field. _(default: `""`)_
44
+ - `label` -- Accessible label for the textarea. Required even when
45
+ `label-position="none"`. _(required)_
46
+ - `label-position` -- Controls label placement. `'none'` hides the label visually but keeps it
47
+ accessible. _(type: `"left" | "none" | "top"`; default: `"top"`)_
48
+ - `placeholder` -- Placeholder text shown inside the empty textarea. _(default: `""`)_
49
+ - `required-field` -- Displays a required-field asterisk next to the label. _(default: `false`)_
50
+ - `value` -- The current value typed by the user. Line breaks are represented as `\n`.
51
+ To set an initial value, use the element's text content instead:
52
+ `<wm-textarea>initial value</wm-textarea>`. _(default: `""`)_
53
+
54
+ **Events:**
55
+ - `wmTextareaValueChanged` -- Fires on blur when the value has changed since load or the last blur. Use
56
+ the native `input` event for per-keystroke updates. Detail: `{{ value: string }} value -- the current textarea value at the time of blur.`
57
+
58
+ **Accessibility:**
59
+
60
+ - `label` sets the accessible label for the textarea; required even when
61
+ `label-position="none"`.
62
+ - When `character-limit` is set, a counter below the field turns red when exceeded; the
63
+ count is announced via `aria-live` when within 5 characters of the limit or exceeded.
64
+ - Error messages are announced via an `aria-live` region.
65
+ - `info` text is associated via `aria-describedby` and read by screen readers on focus.
66
+
67
+ **Related components:**
68
+
69
+ - `<wm-input>` -- if the expected value fits on a single line, use Input; Textarea is only warranted when multi-line content is genuinely expected. The two share nearly identical props, events, and accessibility behavior, the choice is almost entirely single-line vs. multi-line.
70
+
71
+ **Code example:**
72
+
73
+ _Basic textarea_
74
+
75
+ ```html
76
+ <wm-textarea label="Notes" placeholder="Enter notes here..."></wm-textarea>
77
+ ```
78
+
79
+ _Basic textarea_
80
+
81
+ ```react
82
+ // value + onWmTextareaValueChanged is the standard controlled pattern.
83
+ const [notes, setNotes] = useState("");
84
+
85
+ <WmTextarea
86
+ label="Notes"
87
+ placeholder="Enter notes here..."
88
+ value={notes}
89
+ onWmTextareaValueChanged={(e) => setNotes(e.detail.value)} />
90
+ ```
91
+
92
+ _With character limit_
93
+
94
+ ```html
95
+ <wm-textarea label="Summary" character-limit="500"></wm-textarea>
96
+ ```
97
+
98
+ _With character limit_
99
+
100
+ ```react
101
+ <WmTextarea label="Summary" characterLimit={500} />
102
+ ```
@@ -0,0 +1,156 @@
1
+ ### Timepicker
2
+ - **Element:** `<wm-timepicker>`
3
+
4
+ **Purpose:** 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
+ **When to use:**
9
+
10
+ - **Collecting a specific time of day in a form** -- Timepicker is the standard input, offering both typed entry for precision and a dropdown for browsing.
11
+ - **Pre-focusing the dropdown on a relevant time** -- when a default or suggested time exists (e.g., the start of a business day), use the preselected property in 24hr format to open the dropdown already positioned at that time.
12
+ - **Pairing with Datepicker for a full date-and-time value** -- when a form requires both a date and a time of day, pair Timepicker with wm-datepicker to collect each value with its purpose-built input; Timepicker handles the time portion only.
13
+
14
+ **Do not use for:**
15
+
16
+ - **Collecting a date with no time component** -- if the value is a date only, use wm-datepicker alone; adding Timepicker implies a time dimension that may not exist in the data.
17
+ - **Plain text entry for a time value** -- a plain wm-input offers no time validation, no format guidance, no dropdown for browsing, and no reformatTime or isValidTime utilities; whenever a time of day is being collected, Timepicker is always the correct component.
18
+
19
+ **Variants / types:**
20
+
21
+ _None documented_
22
+
23
+ **Usage notes:**
24
+
25
+ - The dropdown displays 15-minute intervals (00:00-23:45) in 12-hour format; typed input
26
+ is accepted in both 12-hour and 24-hour formats.
27
+ - `wmTimepickerTimeSelected` emits `{ time: string }` in 24-hour `hh:mm` format. Always
28
+ call `reformatTime("12", ...)` on the result and write it back to `value` so the input
29
+ displays the formatted string.
30
+ - Use `reformatTime` and `isValidTime` via an imperative ref -- they are async component
31
+ methods, not props.
32
+ - When writing a curried event-handler factory, the outer function must NOT be async;
33
+ only the inner handler should be async, otherwise the factory returns a Promise instead
34
+ of a function.
35
+
36
+ **Props:**
37
+ - `disabled` -- Disables the timepicker, preventing all interaction. _(default: `false`)_
38
+ - `error-message` -- Puts the component in an error state and displays this message below the
39
+ input.
40
+ - `label` -- Accessible label for the input. Required even when `label-position="none"`. _(required; default: `""`)_
41
+ - `label-position` -- Controls label placement. `'none'` hides the label visually but keeps it
42
+ accessible. _(type: `"left" | "none" | "top"`; default: `"top"`)_
43
+ - `preselected` -- The time the dropdown scrolls to and focuses when opened, in 24-hour format
44
+ (e.g. `'14:30'`). Falls back to parsing `value`; defaults to `'09:00'` if unparseable.
45
+ - `required-field` -- Displays a required-field asterisk next to the label. _(default: `false`)_
46
+ - `value` -- The time displayed in the input field. Updated as the user types. Can also
47
+ be set programmatically by the application. _(default: `""`)_
48
+
49
+ **Events:**
50
+ - `wmTimepickerInputBlurred` -- Fires when the input field loses focus.
51
+ - `wmTimepickerTimeSelected` -- Fires when the user selects a time from the dropdown list. Detail: `{{ time: string }} time -- the selected time in 24-hour `hh:mm` format.`
52
+
53
+ **Methods:**
54
+ - `isValidTime(input: string) => Promise<boolean>` -- Validates a time string against both 12-hour and 24-hour formats.
55
+ - `input` -- The time string to validate.
56
+ - **Returns:** `true` if the string is a valid time, `false` otherwise.
57
+ - `reformatTime(format: "12" | "24", time: TimeFormat12 | TimeFormat24) => Promise<string>` -- Converts a time string between 12-hour and 24-hour formats.
58
+ - `format` -- The target format: `"12"` for 12-hour (e.g. `"02:30 PM"`), `"24"` for
59
+ 24-hour (e.g. `"14:30"`).
60
+ - `time` -- The time string to convert. Accepts both 12-hour and 24-hour input.
61
+ - **Returns:** The reformatted time string.
62
+
63
+ **Accessibility:**
64
+
65
+ - `label` sets the accessible name on the input; required even when `label-position="none"`.
66
+ - Error messages are announced via an `aria-live` region.
67
+ - **Keyboard:**
68
+ **Input field:**
69
+ - **Arrow Down / Arrow Up**: Open the dropdown focused on the nearest time interval.
70
+ **Dropdown button:**
71
+ - **Enter / Space**: Open the dropdown.
72
+ **Dropdown list:**
73
+ - **Arrow Down / Arrow Up**: Move focus to the next/previous option; wraps at both ends.
74
+ - **Home / End**: Move focus to the first/last option.
75
+ - **Enter / Space**: Select the focused time and close the dropdown.
76
+ - **Tab**: Close the dropdown and advance focus (without selecting).
77
+ - **Escape**: Close the dropdown without selecting.
78
+
79
+ **Related components:**
80
+
81
+ - `<wm-datepicker>` -- if the value is a date rather than a time, use Datepicker; when both are needed, the two should be paired as separate inputs rather than combined into one.
82
+ - `<wm-input>` -- a plain Input has no time-specific behavior; whenever the value being collected is a time of day, Timepicker is always the right choice over a generic text field.
83
+ - `<wm-select>` -- if the user is choosing from a small, fixed list of named time slots or periods (e.g., "Morning", "Afternoon", "Evening") rather than a precise time of day, Select may be more appropriate; Timepicker is for collecting an actual clock time.
84
+
85
+ **Code example:**
86
+
87
+ _Basic timepicker_
88
+
89
+ ```html
90
+ <wm-timepicker label="Start time"></wm-timepicker>
91
+ ```
92
+
93
+ _Basic timepicker_
94
+
95
+ ```react
96
+ // wmTimepickerTimeSelected emits { time } in 24hr format.
97
+ // Call reformatTime and write back to value so the input displays the result.
98
+ // handleInputBlur validates free-form typed input on blur using isValidTime.
99
+ // NOTE: the outer factory function must NOT be async -- only the inner handler should be.
100
+ const startRef = useRef(null);
101
+ const [startValue, setStartValue] = useState("");
102
+ const [startError, setStartError] = useState("");
103
+
104
+ const handleTimeSelected = (ref, setValue, setError) => async (e) => {
105
+ const time12 = await ref.current.reformatTime("12", e.detail.time);
106
+ setError("");
107
+ setValue(time12);
108
+ };
109
+
110
+ const handleInputBlur = (ref, value, setValue, setError) => async () => {
111
+ if (!value) return;
112
+ const valid = await ref.current.isValidTime(value);
113
+ if (valid) {
114
+ const time12 = await ref.current.reformatTime("12", value);
115
+ setError("");
116
+ setValue(time12);
117
+ } else {
118
+ setError("Please enter a valid time.");
119
+ }
120
+ };
121
+
122
+ <WmTimepicker
123
+ ref={startRef}
124
+ label="Start time"
125
+ value={startValue}
126
+ errorMessage={startError}
127
+ onWmTimepickerTimeSelected={handleTimeSelected(startRef, setStartValue, setStartError)}
128
+ onWmTimepickerInputBlurred={handleInputBlur(startRef, startValue, setStartValue, setStartError)}
129
+ />
130
+ ```
131
+
132
+ _With pre-selected time_
133
+
134
+ ```html
135
+ <wm-timepicker label="Meeting time" preselected="14:30" value="2:30 PM"></wm-timepicker>
136
+ ```
137
+
138
+ _With pre-selected time_
139
+
140
+ ```react
141
+ // preselected (24hr) controls where the dropdown focuses on open.
142
+ // value sets the initial display string in the input.
143
+ const meetingRef = useRef(null);
144
+ const [meetingValue, setMeetingValue] = useState("2:30 PM");
145
+ const [meetingError, setMeetingError] = useState("");
146
+
147
+ <WmTimepicker
148
+ ref={meetingRef}
149
+ label="Meeting time"
150
+ preselected="14:30"
151
+ value={meetingValue}
152
+ errorMessage={meetingError}
153
+ onWmTimepickerTimeSelected={handleTimeSelected(meetingRef, setMeetingValue, setMeetingError)}
154
+ onWmTimepickerInputBlurred={handleInputBlur(meetingRef, meetingValue, setMeetingValue, setMeetingError)}
155
+ />
156
+ ```
@@ -0,0 +1,98 @@
1
+ ### Toggletip
2
+ - **Element:** `<wm-toggletip>`
3
+
4
+ **Purpose:** Toggletip button that shows a small informational panel when clicked. Two visual types:
5
+ `'info'` renders an info icon button; `'ai'` renders an animated AI sparkle icon. The
6
+ panel content is provided via the `tooltip` prop and is announced to screen readers via
7
+ an `aria-live` region.
8
+
9
+ **When to use:**
10
+
11
+ - Use a Toggletip to surface a brief supplementary explanation on demand without cluttering the interface.
12
+ - **Explaining a concept or term inline** -- when a page contains terminology, metrics, or calculated values that users may not recognize, a Toggletip lets curious users get the definition without requiring everyone to read it by default.
13
+ - **Providing AI-related contextual information** -- when content or a control is AI-generated or AI-assisted, use toggletip-type="ai" to visually signal the AI context and explain what it means or how it was produced.
14
+ - **Adding help content to a standalone control** -- when the Toggletip is placed away from tight inline content (e.g., a section header or card), use target-size="large" to meet touch target size requirements and make it easier to tap on mobile.
15
+
16
+ **Do not use for:**
17
+
18
+ - **Describing what a button does when clicked** -- a tooltip on hover/focus describes button behavior; a Toggletip on click provides contextual information about content or a control. Using a Toggletip to describe button behavior is the wrong pattern.
19
+ - **Lengthy or rich content** -- if the explanation requires formatting, links, multiple paragraphs, or interactive content, it belongs in a Flyout or another container, not a Toggletip.
20
+ - **System messages, errors, or alerts** -- Toggletip is strictly a user-initiated help tool and should never be used to surface notifications that users might miss if they do not click the icon.
21
+
22
+ **Variants / types:**
23
+
24
+ - `toggletip-type="info"` -- standard information icon; use for general contextual help
25
+ - `toggletip-type="ai"` -- AI-branded icon; use when the explanation relates to AI-generated or AI-assisted content
26
+ - `target-size="small"` -- compact touch target for inline or dense contexts
27
+ - `target-size="large"` -- larger touch target for standalone placements or mobile contexts
28
+
29
+ **Usage notes:**
30
+
31
+ - Both `label` and `tooltip` are required; the component logs a console error on load if
32
+ either is missing.
33
+ - `tooltip-position` is the preferred opening direction; the component auto-corrects it if
34
+ the panel would overflow the viewport.
35
+
36
+ **Props:**
37
+ - `label` -- Accessible label for the trigger button. Also shown as a hover/focus tooltip
38
+ while the panel is closed. Required for screen reader users. _(required)_
39
+ - `target-size` -- Size of the trigger button icon. `'large'` satisfies WCAG 2.5.8 touch
40
+ target requirements. _(type: `"large" | "small"`; default: `"small"`)_
41
+ - `toggletip-type` -- Visual style of the trigger icon. `'info'` shows an info icon; `'ai'` shows
42
+ an animated sparkle icon. _(type: `"ai" | "info"`; default: `"info"`)_
43
+ - `tooltip` -- Content displayed inside the toggletip panel when opened. Also announced
44
+ via an `aria-live` region when the panel opens. _(required)_
45
+ - `tooltip-position` -- Preferred opening direction for the panel. Auto-corrected if the panel would
46
+ overflow the viewport. _(type: `"bottom" | "bottom-left" | "bottom-right" | "left" | "right" | "top" | "top-left" | "top-right"`; default: `"bottom-right"`)_
47
+
48
+ **Accessibility:**
49
+
50
+ - `label` sets the `aria-label` on the trigger button -- required even though the button
51
+ has a visual icon.
52
+ - The panel content is announced via `role="status"` / `aria-live="polite"` when opened.
53
+ - A hover/focus tooltip shows `"More information"` (info type) or `"Powered by AI"` (ai
54
+ type) while the panel is closed.
55
+ - **Keyboard:**
56
+ - **Enter / Space**: Opens or toggles the toggletip panel.
57
+ - **Escape**: Closes the panel without propagating (will not close a parent modal).
58
+ - **Tab**: Closes the panel and advances focus to the next element.
59
+
60
+ **Related components:**
61
+
62
+ _None_
63
+
64
+ **Code example:**
65
+
66
+ _Info toggletip_
67
+
68
+ ```html
69
+ <wm-toggletip
70
+ label="More about this field"
71
+ tooltip="This field accepts ISO 8601 dates.">
72
+ </wm-toggletip>
73
+ ```
74
+
75
+ _Info toggletip_
76
+
77
+ ```react
78
+ <WmToggletip label="More about this field" tooltip="This field accepts ISO 8601 dates." />
79
+ ```
80
+
81
+ _AI toggletip_
82
+
83
+ ```html
84
+ <wm-toggletip
85
+ toggletip-type="ai"
86
+ label="AI-generated content"
87
+ tooltip="This summary was generated by AI and may contain errors.">
88
+ </wm-toggletip>
89
+ ```
90
+
91
+ _AI toggletip_
92
+
93
+ ```react
94
+ <WmToggletip
95
+ toggletipType="ai"
96
+ label="AI-generated content"
97
+ tooltip="This summary was generated by AI and may contain errors." />
98
+ ```