@watermarkinsights/ripple 4.2.0-0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. package/dist/cjs/chartFunctions-2c3e010e.js +600 -0
  2. package/dist/cjs/{functions-4208c444.js → functions-91da05e9.js} +362 -362
  3. package/dist/cjs/{global-38728020.js → global-b85941b0.js} +29 -24
  4. package/dist/cjs/{index-f8ef86de.js → index-fae02cd7.js} +150 -436
  5. package/dist/cjs/interfaces-245d7bff.js +38 -0
  6. package/dist/cjs/intl-fa3bb4ae.js +179 -0
  7. package/dist/cjs/loader.cjs.js +13 -4
  8. package/dist/cjs/priv-chart-popover.cjs.entry.js +85 -85
  9. package/dist/cjs/priv-datepicker.cjs.entry.js +637 -637
  10. package/dist/cjs/priv-navigator-button.cjs.entry.js +18 -18
  11. package/dist/cjs/priv-navigator-item.cjs.entry.js +21 -21
  12. package/dist/cjs/ripple.cjs.js +7 -4
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +314 -314
  14. package/dist/cjs/wm-button.cjs.entry.js +174 -174
  15. package/dist/cjs/wm-chart-slice.cjs.entry.js +17 -17
  16. package/dist/cjs/wm-chart.cjs.entry.js +164 -164
  17. package/dist/cjs/wm-datepicker.cjs.entry.js +160 -160
  18. package/dist/cjs/wm-file-list.cjs.entry.js +10 -10
  19. package/dist/cjs/wm-file.cjs.entry.js +178 -178
  20. package/dist/cjs/wm-input.cjs.entry.js +102 -102
  21. package/dist/cjs/wm-line-chart.cjs.entry.js +448 -448
  22. package/dist/cjs/wm-modal-footer.cjs.entry.js +27 -27
  23. package/dist/cjs/wm-modal-header.cjs.entry.js +21 -21
  24. package/dist/cjs/wm-modal.cjs.entry.js +92 -92
  25. package/dist/cjs/wm-navigation_3.cjs.entry.js +180 -180
  26. package/dist/cjs/wm-navigator.cjs.entry.js +251 -251
  27. package/dist/cjs/wm-option_2.cjs.entry.js +712 -712
  28. package/dist/cjs/wm-pagination.cjs.entry.js +169 -169
  29. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +151 -151
  30. package/dist/cjs/wm-search.cjs.entry.js +192 -192
  31. package/dist/cjs/wm-snackbar.cjs.entry.js +114 -114
  32. package/dist/cjs/wm-tab-item_3.cjs.entry.js +247 -247
  33. package/dist/cjs/wm-tag-input.cjs.entry.js +849 -849
  34. package/dist/cjs/wm-tag-option.cjs.entry.js +33 -33
  35. package/dist/cjs/wm-timepicker.cjs.entry.js +270 -270
  36. package/dist/cjs/wm-toggletip.cjs.entry.js +100 -100
  37. package/dist/cjs/wm-uploader.cjs.entry.js +198 -198
  38. package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
  39. package/dist/collection/collection-manifest.json +41 -41
  40. package/dist/collection/components/charts/chartFunctions.js +456 -456
  41. package/dist/collection/components/charts/chartFunctions.spec.js +13 -13
  42. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.e2e.js +73 -73
  43. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +254 -257
  44. package/dist/collection/components/charts/screenshots.e2e.js +30 -30
  45. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +121 -121
  46. package/dist/collection/components/charts/wm-chart/wm-chart.e2e.js +160 -160
  47. package/dist/collection/components/charts/wm-chart/wm-chart.js +381 -382
  48. package/dist/collection/components/charts/wm-chart/wm-chart.spec.js +26 -26
  49. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +2 -1
  50. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.e2e.js +138 -138
  51. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +717 -717
  52. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.spec.js +106 -106
  53. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +202 -202
  54. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.e2e.js +54 -54
  55. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +136 -136
  56. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.spec.js +31 -31
  57. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +119 -119
  58. package/dist/collection/components/wm-action-menu/wm-action-menu.e2e.js +187 -187
  59. package/dist/collection/components/wm-action-menu/wm-action-menu.js +435 -435
  60. package/dist/collection/components/wm-action-menu/wm-action-menu.spec.js +35 -35
  61. package/dist/collection/components/wm-button/wm-button.e2e.js +58 -58
  62. package/dist/collection/components/wm-button/wm-button.js +452 -454
  63. package/dist/collection/components/wm-button/wm-button.spec.js +63 -63
  64. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +939 -943
  65. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.spec.js +71 -71
  66. package/dist/collection/components/wm-datepicker/wm-datepicker.css +2 -1
  67. package/dist/collection/components/wm-datepicker/wm-datepicker.e2e.js +359 -359
  68. package/dist/collection/components/wm-datepicker/wm-datepicker.js +413 -415
  69. package/dist/collection/components/wm-datepicker/wm-datepicker.spec.js +13 -13
  70. package/dist/collection/components/wm-file/wm-file.js +380 -380
  71. package/dist/collection/components/wm-file/wm-file.spec.js +107 -107
  72. package/dist/collection/components/wm-file-list/wm-file-list.js +42 -42
  73. package/dist/collection/components/wm-file-list/wm-file-list.spec.js +47 -47
  74. package/dist/collection/components/wm-input/wm-input.e2e.js +26 -26
  75. package/dist/collection/components/wm-input/wm-input.js +453 -453
  76. package/dist/collection/components/wm-input/wm-input.spec.js +168 -168
  77. package/dist/collection/components/wm-menuitem/wm-menuitem.e2e.js +18 -18
  78. package/dist/collection/components/wm-menuitem/wm-menuitem.js +436 -446
  79. package/dist/collection/components/wm-menuitem/wm-menuitem.spec.js +46 -46
  80. package/dist/collection/components/wm-modal/wm-modal-footer.js +130 -130
  81. package/dist/collection/components/wm-modal/wm-modal-footer.spec.js +8 -8
  82. package/dist/collection/components/wm-modal/wm-modal-header.js +68 -68
  83. package/dist/collection/components/wm-modal/wm-modal-header.spec.js +5 -5
  84. package/dist/collection/components/wm-modal/wm-modal.css +1 -0
  85. package/dist/collection/components/wm-modal/wm-modal.e2e.js +65 -65
  86. package/dist/collection/components/wm-modal/wm-modal.js +296 -299
  87. package/dist/collection/components/wm-modal/wm-modal.spec.js +22 -22
  88. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +1 -0
  89. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +112 -112
  90. package/dist/collection/components/wm-navigation/wm-navigation-item.js +125 -125
  91. package/dist/collection/components/wm-navigation/wm-navigation.css +3 -1
  92. package/dist/collection/components/wm-navigation/wm-navigation.e2e.js +86 -86
  93. package/dist/collection/components/wm-navigation/wm-navigation.js +209 -209
  94. package/dist/collection/components/wm-navigation/wm-navigation.spec.js +79 -79
  95. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.e2e.js +30 -30
  96. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +103 -103
  97. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +118 -119
  98. package/dist/collection/components/wm-navigator/wm-navigator.e2e.js +180 -180
  99. package/dist/collection/components/wm-navigator/wm-navigator.js +454 -454
  100. package/dist/collection/components/wm-navigator/wm-navigator.spec.js +153 -153
  101. package/dist/collection/components/wm-option/wm-option.css +1 -1
  102. package/dist/collection/components/wm-option/wm-option.e2e.js +19 -19
  103. package/dist/collection/components/wm-option/wm-option.js +463 -474
  104. package/dist/collection/components/wm-option/wm-option.spec.js +39 -39
  105. package/dist/collection/components/wm-pagination/wm-pagination.e2e.js +301 -301
  106. package/dist/collection/components/wm-pagination/wm-pagination.js +327 -327
  107. package/dist/collection/components/wm-search/wm-search.e2e.js +69 -69
  108. package/dist/collection/components/wm-search/wm-search.js +414 -415
  109. package/dist/collection/components/wm-search/wm-search.spec.js +64 -64
  110. package/dist/collection/components/wm-select/wm-select.css +1 -0
  111. package/dist/collection/components/wm-select/wm-select.e2e.js +443 -443
  112. package/dist/collection/components/wm-select/wm-select.js +966 -967
  113. package/dist/collection/components/wm-select/wm-select.spec.js +250 -250
  114. package/dist/collection/components/wm-snackbar/wm-snackbar.e2e.js +114 -114
  115. package/dist/collection/components/wm-snackbar/wm-snackbar.js +207 -209
  116. package/dist/collection/components/wm-snackbar/wm-snackbar.spec.js +4 -4
  117. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +188 -190
  118. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +261 -261
  119. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +104 -104
  120. package/dist/collection/components/wm-tabs/wm-tabs.e2e.js +79 -79
  121. package/dist/collection/components/wm-tabs/wm-tabs.spec.js +6 -6
  122. package/dist/collection/components/wm-tag-input/wm-tag-input.css +4 -2
  123. package/dist/collection/components/wm-tag-input/wm-tag-input.e2e.js +168 -168
  124. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1159 -1159
  125. package/dist/collection/components/wm-tag-input/wm-tag-input.spec.js +147 -147
  126. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +234 -236
  127. package/dist/collection/components/wm-timepicker/wm-timepicker.css +2 -1
  128. package/dist/collection/components/wm-timepicker/wm-timepicker.e2e.js +147 -147
  129. package/dist/collection/components/wm-timepicker/wm-timepicker.js +527 -531
  130. package/dist/collection/components/wm-timepicker/wm-timepicker.spec.js +151 -151
  131. package/dist/collection/components/wm-toggletip/wm-toggletip.css +1 -1
  132. package/dist/collection/components/wm-toggletip/wm-toggletip.e2e.js +61 -61
  133. package/dist/collection/components/wm-toggletip/wm-toggletip.js +208 -209
  134. package/dist/collection/components/wm-toggletip/wm-toggletip.spec.js +16 -16
  135. package/dist/collection/components/wm-uploader/wm-uploader.e2e.js +56 -56
  136. package/dist/collection/components/wm-uploader/wm-uploader.js +422 -423
  137. package/dist/collection/components/wm-uploader/wm-uploader.spec.js +149 -149
  138. package/dist/collection/components/wm-wrapper/wm-wrapper.js +26 -26
  139. package/dist/collection/global/__mocks__/functions.js +1 -1
  140. package/dist/collection/global/functions.js +510 -510
  141. package/dist/collection/global/functions.spec.js +123 -123
  142. package/dist/collection/global/global.js +16 -16
  143. package/dist/collection/global/interfaces.js +39 -39
  144. package/dist/collection/global/intl.js +162 -162
  145. package/dist/collection/global/services/__mocks__/http-service.js +112 -112
  146. package/dist/collection/global/services/http-service.js +41 -41
  147. package/dist/collection/global/themes/default.js +9 -4
  148. package/dist/collection/global/themes/neutral.js +4 -4
  149. package/dist/collection/lang/lang.spec.js +13 -13
  150. package/dist/esm/chartFunctions-36634c04.js +584 -0
  151. package/dist/esm/{functions-d0e70094.js → functions-5afd09f4.js} +362 -362
  152. package/dist/esm/{global-462b022e.js → global-91088105.js} +29 -24
  153. package/dist/esm/{index-f164fbca.js → index-7e11ea42.js} +150 -436
  154. package/dist/esm/interfaces-89cad2fc.js +35 -0
  155. package/dist/esm/intl-e2da750a.js +174 -0
  156. package/dist/esm/loader.js +14 -5
  157. package/dist/esm/polyfills/css-shim.js +1 -0
  158. package/dist/esm/priv-chart-popover.entry.js +85 -85
  159. package/dist/esm/priv-datepicker.entry.js +637 -637
  160. package/dist/esm/priv-navigator-button.entry.js +18 -18
  161. package/dist/esm/priv-navigator-item.entry.js +21 -21
  162. package/dist/esm/ripple.js +8 -5
  163. package/dist/esm/wm-action-menu_2.entry.js +314 -314
  164. package/dist/esm/wm-button.entry.js +174 -174
  165. package/dist/esm/wm-chart-slice.entry.js +17 -17
  166. package/dist/esm/wm-chart.entry.js +164 -164
  167. package/dist/esm/wm-datepicker.entry.js +160 -160
  168. package/dist/esm/wm-file-list.entry.js +10 -10
  169. package/dist/esm/wm-file.entry.js +178 -178
  170. package/dist/esm/wm-input.entry.js +102 -102
  171. package/dist/esm/wm-line-chart.entry.js +448 -448
  172. package/dist/esm/wm-modal-footer.entry.js +27 -27
  173. package/dist/esm/wm-modal-header.entry.js +21 -21
  174. package/dist/esm/wm-modal.entry.js +92 -92
  175. package/dist/esm/wm-navigation_3.entry.js +180 -180
  176. package/dist/esm/wm-navigator.entry.js +251 -251
  177. package/dist/esm/wm-option_2.entry.js +712 -712
  178. package/dist/esm/wm-pagination.entry.js +169 -169
  179. package/dist/esm/wm-progress-indicator_3.entry.js +151 -151
  180. package/dist/esm/wm-search.entry.js +192 -192
  181. package/dist/esm/wm-snackbar.entry.js +114 -114
  182. package/dist/esm/wm-tab-item_3.entry.js +247 -247
  183. package/dist/esm/wm-tag-input.entry.js +849 -849
  184. package/dist/esm/wm-tag-option.entry.js +33 -33
  185. package/dist/esm/wm-timepicker.entry.js +270 -270
  186. package/dist/esm/wm-toggletip.entry.js +100 -100
  187. package/dist/esm/wm-uploader.entry.js +198 -198
  188. package/dist/esm/wm-wrapper.entry.js +12 -12
  189. package/dist/esm-es5/chartFunctions-36634c04.js +1 -0
  190. package/dist/esm-es5/functions-5afd09f4.js +1 -0
  191. package/dist/esm-es5/global-91088105.js +1 -0
  192. package/dist/esm-es5/index-7e11ea42.js +2 -0
  193. package/dist/esm-es5/{intl-05c9e0c9.js → intl-e2da750a.js} +1 -1
  194. package/dist/esm-es5/loader.js +1 -1
  195. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  196. package/dist/esm-es5/priv-datepicker.entry.js +1 -1
  197. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  198. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  199. package/dist/esm-es5/ripple.js +1 -1
  200. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  201. package/dist/esm-es5/wm-button.entry.js +1 -1
  202. package/dist/esm-es5/wm-chart-slice.entry.js +1 -1
  203. package/dist/esm-es5/wm-chart.entry.js +1 -1
  204. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  205. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  206. package/dist/esm-es5/wm-file.entry.js +1 -1
  207. package/dist/esm-es5/wm-input.entry.js +1 -1
  208. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  209. package/dist/esm-es5/wm-modal-footer.entry.js +1 -1
  210. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  211. package/dist/esm-es5/wm-modal.entry.js +1 -1
  212. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  213. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  214. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  215. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  216. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  217. package/dist/esm-es5/wm-search.entry.js +1 -1
  218. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  219. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  220. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  221. package/dist/esm-es5/wm-tag-option.entry.js +1 -1
  222. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  223. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  224. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  225. package/dist/esm-es5/wm-wrapper.entry.js +1 -1
  226. package/dist/loader/index.d.ts +1 -1
  227. package/dist/ripple/p-00acacbe.system.entry.js +1 -0
  228. package/dist/ripple/{p-3446852f.system.entry.js → p-0631be01.system.entry.js} +1 -1
  229. package/dist/ripple/{p-ad6dc751.entry.js → p-0aecac86.entry.js} +1 -1
  230. package/dist/ripple/{p-c717d895.entry.js → p-0d9f70ab.entry.js} +1 -1
  231. package/dist/ripple/{p-b253d2fc.entry.js → p-0f1ff645.entry.js} +1 -1
  232. package/dist/ripple/{p-63f75d43.entry.js → p-1205fdc1.entry.js} +1 -1
  233. package/dist/ripple/{p-27f47edc.entry.js → p-1283e85d.entry.js} +1 -1
  234. package/dist/ripple/{p-43e2a49a.entry.js → p-13594c2e.entry.js} +1 -1
  235. package/dist/ripple/{p-5a921e55.entry.js → p-13af8346.entry.js} +1 -1
  236. package/dist/ripple/{p-ceced3d9.system.entry.js → p-15497721.system.entry.js} +1 -1
  237. package/dist/ripple/p-16363e1c.system.entry.js +1 -0
  238. package/dist/ripple/{p-3a070f35.entry.js → p-19773c40.entry.js} +1 -1
  239. package/dist/ripple/{p-b4d862e1.system.entry.js → p-1cde16a7.system.entry.js} +1 -1
  240. package/dist/ripple/{p-f711c914.entry.js → p-20f5c695.entry.js} +1 -1
  241. package/dist/ripple/{p-13ca30d8.js → p-24b08e1f.js} +1 -1
  242. package/dist/ripple/{p-2c834d27.system.entry.js → p-2a95b63f.system.entry.js} +1 -1
  243. package/dist/ripple/{p-c96a5c94.system.entry.js → p-2e773564.system.entry.js} +1 -1
  244. package/dist/ripple/p-30bf24f8.system.js +2 -0
  245. package/dist/ripple/p-3248c0fa.system.entry.js +1 -0
  246. package/dist/ripple/{p-473ff44e.system.entry.js → p-32b1126c.system.entry.js} +1 -1
  247. package/dist/ripple/{p-aadf8c59.entry.js → p-36049d2f.entry.js} +1 -1
  248. package/dist/ripple/p-3aca2871.js +1 -0
  249. package/dist/ripple/{p-633cd89a.system.entry.js → p-3becce62.system.entry.js} +1 -1
  250. package/dist/ripple/{p-58174f4e.entry.js → p-3c80bf67.entry.js} +1 -1
  251. package/dist/ripple/p-40fcae38.system.js +1 -0
  252. package/dist/ripple/p-47c20b05.entry.js +1 -0
  253. package/dist/ripple/p-4825101c.system.js +1 -0
  254. package/dist/ripple/p-56d64283.system.entry.js +1 -0
  255. package/dist/ripple/p-5e85967a.system.js +1 -0
  256. package/dist/ripple/{p-067d7922.system.entry.js → p-622a7791.system.entry.js} +1 -1
  257. package/dist/ripple/{p-aba5a00e.system.entry.js → p-676c1089.system.entry.js} +1 -1
  258. package/dist/ripple/{p-153701f9.entry.js → p-6abb903c.entry.js} +1 -1
  259. package/dist/ripple/{p-9e25bfd5.entry.js → p-7529706d.entry.js} +1 -1
  260. package/dist/ripple/{p-de349bee.entry.js → p-7962f562.entry.js} +1 -1
  261. package/dist/ripple/{p-8d4734ad.entry.js → p-80aef387.entry.js} +1 -1
  262. package/dist/ripple/{p-8cace32f.entry.js → p-84a7e757.entry.js} +1 -1
  263. package/dist/ripple/{p-9fecbc8a.system.js → p-85f744ed.system.js} +1 -1
  264. package/dist/ripple/{p-05d4e49b.js → p-863e737a.js} +1 -1
  265. package/dist/ripple/{p-7e56da2e.system.entry.js → p-8ea68cb3.system.entry.js} +1 -1
  266. package/dist/ripple/{p-1402cfa2.system.js → p-8f3f903f.system.js} +1 -1
  267. package/dist/ripple/{p-c249063c.entry.js → p-8f8c3705.entry.js} +1 -1
  268. package/dist/ripple/{p-67d48c33.system.entry.js → p-90ea7e3a.system.entry.js} +1 -1
  269. package/dist/ripple/{p-a82a8931.entry.js → p-9288659b.entry.js} +1 -1
  270. package/dist/ripple/{p-f7aa5a73.entry.js → p-935513f8.entry.js} +1 -1
  271. package/dist/ripple/{p-8b83de0a.entry.js → p-a0bf5eef.entry.js} +1 -1
  272. package/dist/ripple/{p-06776596.system.entry.js → p-a1e95b05.system.entry.js} +1 -1
  273. package/dist/ripple/{p-25446670.entry.js → p-a52c5a1c.entry.js} +1 -1
  274. package/dist/ripple/p-a5b23781.system.entry.js +1 -0
  275. package/dist/ripple/p-a6be3cca.system.entry.js +1 -0
  276. package/dist/ripple/p-a9c096b5.entry.js +1 -0
  277. package/dist/ripple/p-aafa111a.system.js +1 -0
  278. package/dist/ripple/{p-1d8b0039.entry.js → p-ad37cdfd.entry.js} +1 -1
  279. package/dist/ripple/{p-350fe5da.entry.js → p-ae674a54.entry.js} +1 -1
  280. package/dist/ripple/{p-e24ddae1.entry.js → p-b3c73bc9.entry.js} +1 -1
  281. package/dist/ripple/{p-e8b58666.system.entry.js → p-b3e08b14.system.entry.js} +1 -1
  282. package/dist/ripple/p-b5bedd63.js +2 -0
  283. package/dist/ripple/{p-a69c37e0.entry.js → p-b71a83e3.entry.js} +1 -1
  284. package/dist/ripple/p-bd537299.system.entry.js +1 -0
  285. package/dist/ripple/{p-42ebfcfa.entry.js → p-c41603e6.entry.js} +1 -1
  286. package/dist/ripple/{p-5a4d9897.system.entry.js → p-c5e8f8a5.system.entry.js} +1 -1
  287. package/dist/ripple/{p-7a8816d9.system.entry.js → p-c76bbedf.system.entry.js} +1 -1
  288. package/dist/ripple/{p-3af72848.js → p-c7b5ac39.js} +1 -1
  289. package/dist/ripple/{p-361cc8fc.system.entry.js → p-cbd8a60b.system.entry.js} +1 -1
  290. package/dist/ripple/{p-3583d113.system.entry.js → p-d04ba5f8.system.entry.js} +1 -1
  291. package/dist/ripple/{p-1fa2a756.system.entry.js → p-d0f1b8c4.system.entry.js} +1 -1
  292. package/dist/ripple/{p-bdd4f919.system.entry.js → p-d496bc44.system.entry.js} +1 -1
  293. package/dist/ripple/{p-7e8daaac.entry.js → p-deb4f5a2.entry.js} +1 -1
  294. package/dist/ripple/{p-91ad0233.system.entry.js → p-e3f0b57f.system.entry.js} +1 -1
  295. package/dist/ripple/{p-f1a92576.system.entry.js → p-e4919f95.system.entry.js} +1 -1
  296. package/dist/ripple/{p-49118468.entry.js → p-ed942b42.entry.js} +1 -1
  297. package/dist/ripple/{p-0ecbf569.system.entry.js → p-f30839a1.system.entry.js} +1 -1
  298. package/dist/ripple/{p-d3f9d028.system.entry.js → p-ff14e4ec.system.entry.js} +1 -1
  299. package/dist/ripple/ripple.esm.js +1 -1
  300. package/dist/ripple/ripple.js +20 -16
  301. package/dist/types/components/charts/chartFunctions.d.ts +13 -13
  302. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +24 -24
  303. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +8 -8
  304. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +39 -39
  305. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +73 -73
  306. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +26 -26
  307. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +17 -17
  308. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +7 -7
  309. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +43 -43
  310. package/dist/types/components/wm-button/wm-button.d.ts +40 -40
  311. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +76 -76
  312. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +31 -31
  313. package/dist/types/components/wm-file/wm-file.d.ts +40 -40
  314. package/dist/types/components/wm-file-list/wm-file-list.d.ts +3 -3
  315. package/dist/types/components/wm-input/wm-input.d.ts +46 -46
  316. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +31 -31
  317. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +11 -11
  318. package/dist/types/components/wm-modal/wm-modal-header.d.ts +7 -7
  319. package/dist/types/components/wm-modal/wm-modal.d.ts +24 -24
  320. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +13 -13
  321. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +10 -10
  322. package/dist/types/components/wm-navigation/wm-navigation.d.ts +23 -23
  323. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +7 -7
  324. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +10 -10
  325. package/dist/types/components/wm-navigator/wm-navigator.d.ts +57 -57
  326. package/dist/types/components/wm-option/wm-option.d.ts +36 -36
  327. package/dist/types/components/wm-pagination/wm-pagination.d.ts +27 -27
  328. package/dist/types/components/wm-search/wm-search.d.ts +73 -73
  329. package/dist/types/components/wm-select/wm-select.d.ts +99 -99
  330. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +24 -24
  331. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +30 -30
  332. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +41 -41
  333. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +16 -16
  334. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +48 -48
  335. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +20 -20
  336. package/dist/types/components/wm-uploader/wm-uploader.d.ts +47 -47
  337. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +4 -4
  338. package/dist/types/components.d.ts +0 -382
  339. package/dist/types/global/__mocks__/functions.d.ts +1 -1
  340. package/dist/types/global/functions.d.ts +4 -4
  341. package/dist/types/global/interfaces.d.ts +49 -49
  342. package/dist/types/global/intl.d.ts +31 -31
  343. package/dist/types/global/services/__mocks__/http-service.d.ts +1 -1
  344. package/dist/types/stencil-public-runtime.d.ts +5 -46
  345. package/package.json +1 -1
  346. package/dist/cjs/chartFunctions-cecf8134.js +0 -600
  347. package/dist/cjs/interfaces-ad9e80a6.js +0 -38
  348. package/dist/cjs/intl-3fafc6d1.js +0 -179
  349. package/dist/esm/chartFunctions-23173fce.js +0 -584
  350. package/dist/esm/interfaces-9b75fb61.js +0 -35
  351. package/dist/esm/intl-05c9e0c9.js +0 -174
  352. package/dist/esm-es5/chartFunctions-23173fce.js +0 -1
  353. package/dist/esm-es5/functions-d0e70094.js +0 -1
  354. package/dist/esm-es5/global-462b022e.js +0 -1
  355. package/dist/esm-es5/index-f164fbca.js +0 -2
  356. package/dist/ripple/p-09d62ddd.entry.js +0 -1
  357. package/dist/ripple/p-0fe97e85.system.js +0 -2
  358. package/dist/ripple/p-1453ea51.system.entry.js +0 -1
  359. package/dist/ripple/p-1cc91907.system.js +0 -1
  360. package/dist/ripple/p-26602428.system.js +0 -1
  361. package/dist/ripple/p-30b17818.system.entry.js +0 -1
  362. package/dist/ripple/p-3deccefa.system.js +0 -1
  363. package/dist/ripple/p-4de51706.js +0 -2
  364. package/dist/ripple/p-8133ee44.system.entry.js +0 -1
  365. package/dist/ripple/p-88406560.system.entry.js +0 -1
  366. package/dist/ripple/p-8f76a838.system.entry.js +0 -1
  367. package/dist/ripple/p-a99b05de.system.entry.js +0 -1
  368. package/dist/ripple/p-b56e0d1e.entry.js +0 -1
  369. package/dist/ripple/p-c18b398c.system.js +0 -1
  370. package/dist/ripple/p-cb674aad.js +0 -1
  371. package/dist/ripple/p-e66bbd87.system.entry.js +0 -1
  372. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +0 -117
  373. package/dist/types/components/wm-tag-input/wm-tag-option/wm-tag-option.d.ts +0 -18
  374. /package/dist/esm-es5/{interfaces-9b75fb61.js → interfaces-89cad2fc.js} +0 -0
  375. /package/dist/ripple/{p-196eb2f3.js → p-c0c111fd.js} +0 -0
@@ -2,336 +2,336 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-f8ef86de.js');
6
- const functions = require('./functions-4208c444.js');
7
- const interfaces = require('./interfaces-ad9e80a6.js');
5
+ const index = require('./index-fae02cd7.js');
6
+ const functions = require('./functions-91da05e9.js');
7
+ const interfaces = require('./interfaces-245d7bff.js');
8
8
 
9
9
  const wmActionMenuCss = ":host{--wmcolor-actionmenu-background:var(--wmcolor-background);--wmcolor-actionmenu-text:var(--wmcolor-interactive);position:relative;display:inline-block;width:-moz-fit-content;width:-webkit-fit-content;width:fit-content;color:var(--wmcolor-actionmenu-text);font-family:inherit}:host .sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;margin:-1px !important}:host(:focus){outline:none}wm-action-menu:focus{outline:none}.dropdown{position:absolute;padding:0;margin:0.25rem 0;border-radius:3px 3px 3px 3px;min-width:11.4375rem;-ms-transform:scale(1, 0);-webkit-transform:scale(1, 0);-moz-transform:scale(1, 0);transform:scale(1, 0);-ms-transition:transform 0.25s ease;-webkit-transition:transform 0.25s ease;-moz-transition:transform 0.25s ease;-webkit-transition:-webkit-transform 0.25s ease;transition:-webkit-transform 0.25s ease;transition:transform 0.25s ease;transition:transform 0.25s ease, -webkit-transform 0.25s ease;-ms-transform-origin:center top;-webkit-transform-origin:center top;-moz-transform-origin:center top;transform-origin:center top;visibility:hidden;-webkit-box-shadow:0 3px 14px 3px rgba(5, 3, 3, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 3px 14px 3px rgba(5, 3, 3, 0.12), 0 4px 15px 0 rgba(0, 0, 0, 0.2);background:var(--wmcolor-actionmenu-background);z-index:10;text-align:left;white-space:nowrap}.dropdown:focus{outline:none}.dropdown.open{-ms-transform:scale(1, 1);-webkit-transform:scale(1, 1);-moz-transform:scale(1, 1);transform:scale(1, 1);visibility:visible}.dropdown.open-up{bottom:2.5rem;top:auto;-ms-transform-origin:center bottom;-webkit-transform-origin:center bottom;-moz-transform-origin:center bottom;transform-origin:center bottom}.dropdown.right{left:0}.dropdown.left{right:0}";
10
10
 
11
11
  const ActionMenu = class {
12
- constructor(hostRef) {
13
- index.registerInstance(this, hostRef);
14
- this.wmActionMenuLoaded = index.createEvent(this, "wmActionMenuLoaded", 7);
15
- this.menuLoaded = index.createEvent(this, "menuLoaded", 7);
16
- this.openUp = false;
17
- this.keysSoFar = "";
18
- this.searchIndex = 0;
19
- this.debouncedClearKeysSoFar = functions.debounce(() => {
20
- this.keysSoFar = "";
21
- }, 500);
22
- this.isExpanded = false;
23
- this.tooltipPosition = undefined;
24
- this.actionMenuType = "icon";
25
- this.buttonText = undefined;
26
- this.disabled = false;
27
- this.tooltip = undefined;
28
- this.labelForIdenticalButtons = undefined;
29
- this.darkMode = undefined;
30
- }
31
- get horizontalPosition() {
32
- return !!this.el && !!this.itemsEl && functions.shouldShiftRight(this.el, this.itemsEl.clientWidth) ? "right" : "left";
33
- }
34
- get childItems() {
35
- return Array.from(this.el.querySelectorAll("wm-menuitem"));
36
- }
37
- get internalButtonType() {
38
- return this.actionMenuType === "icon" || this.actionMenuType === "text"
39
- ? this.actionMenuType + "only"
40
- : this.actionMenuType;
41
- }
42
- handleClickedItem() {
43
- this.close();
44
- }
45
- handleKeyUp(ev) {
46
- this.moveUp(ev.target);
47
- }
48
- handleKeyDown(ev) {
49
- this.moveDown(ev.detail);
50
- }
51
- handleHomeKey() {
52
- this.focusFirstItem();
53
- }
54
- handleEndKey() {
55
- this.focusLastItem();
56
- }
57
- handleTabKey() {
58
- if (this.isExpanded) {
59
- this.close();
60
- }
61
- }
62
- handleEscKey() {
63
- this.close();
64
- this.wmButtonEl.focus();
65
- }
66
- handleKey(ev) {
67
- switch (ev.key) {
68
- case "ArrowDown":
69
- if (!this.isExpanded) {
70
- ev.preventDefault();
71
- this.open();
72
- window.requestAnimationFrame(() => this.focusFirstItem());
73
- }
74
- break;
75
- case "ArrowUp":
76
- if (!this.isExpanded) {
77
- ev.preventDefault();
78
- this.open();
79
- window.requestAnimationFrame(() => this.focusLastItem());
80
- }
81
- break;
82
- }
83
- }
84
- handleMenuitemBlur(ev) {
85
- const toElOrChild = ev.detail.relatedTarget === this.el || this.el.contains(ev.detail.relatedTarget);
86
- // if the Menuitem is blurred to something other than the component, emit a blur event with the appropriate relatedTarget
87
- // keeps our component's blur events accurate, and closes when focusing browser address bar
88
- if (!toElOrChild) {
89
- const event = new CustomEvent("blur");
90
- // @ts-ignore
91
- event.relatedTarget = ev.detail.relatedTarget;
92
- this.el.dispatchEvent(event);
93
- }
94
- }
95
- handleButtonBlur(ev) {
96
- const toElOrChild = ev.relatedTarget === this.el || this.el.contains(ev.relatedTarget);
97
- if (toElOrChild) {
98
- // do not emit a blur event when opening the dropdown and focusing the Menuitems
99
- ev.stopPropagation();
100
- }
101
- }
102
- componentWillLoad() {
103
- this.uid = this.el.id ? this.el.id : functions.generateId();
104
- }
105
- componentDidLoad() {
106
- if (this.actionMenuType !== "icon" && !this.buttonText) {
107
- console.error("wm-action-menu should have a valid button-text property when action-menu-type is set to 'text' or 'selector'");
108
- }
109
- if (this.actionMenuType === "icon" && !this.tooltip) {
110
- console.error("wm-action-menu should have a valid tooltip when action-menu-type is set to 'icon'");
12
+ constructor(hostRef) {
13
+ index.registerInstance(this, hostRef);
14
+ this.wmActionMenuLoaded = index.createEvent(this, "wmActionMenuLoaded", 7);
15
+ this.menuLoaded = index.createEvent(this, "menuLoaded", 7);
16
+ this.openUp = false;
17
+ this.keysSoFar = "";
18
+ this.searchIndex = 0;
19
+ this.debouncedClearKeysSoFar = functions.debounce(() => {
20
+ this.keysSoFar = "";
21
+ }, 500);
22
+ this.isExpanded = false;
23
+ this.tooltipPosition = undefined;
24
+ this.actionMenuType = "icon";
25
+ this.buttonText = undefined;
26
+ this.disabled = false;
27
+ this.tooltip = undefined;
28
+ this.labelForIdenticalButtons = undefined;
29
+ this.darkMode = undefined;
30
+ }
31
+ get horizontalPosition() {
32
+ return !!this.el && !!this.itemsEl && functions.shouldShiftRight(this.el, this.itemsEl.clientWidth) ? "right" : "left";
33
+ }
34
+ get childItems() {
35
+ return Array.from(this.el.querySelectorAll("wm-menuitem"));
36
+ }
37
+ get internalButtonType() {
38
+ return this.actionMenuType === "icon" || this.actionMenuType === "text"
39
+ ? this.actionMenuType + "only"
40
+ : this.actionMenuType;
41
+ }
42
+ handleClickedItem() {
43
+ this.close();
44
+ }
45
+ handleKeyUp(ev) {
46
+ this.moveUp(ev.target);
47
+ }
48
+ handleKeyDown(ev) {
49
+ this.moveDown(ev.detail);
50
+ }
51
+ handleHomeKey() {
52
+ this.focusFirstItem();
53
+ }
54
+ handleEndKey() {
55
+ this.focusLastItem();
56
+ }
57
+ handleTabKey() {
58
+ if (this.isExpanded) {
59
+ this.close();
60
+ }
61
+ }
62
+ handleEscKey() {
63
+ this.close();
64
+ this.wmButtonEl.focus();
65
+ }
66
+ handleKey(ev) {
67
+ switch (ev.key) {
68
+ case "ArrowDown":
69
+ if (!this.isExpanded) {
70
+ ev.preventDefault();
71
+ this.open();
72
+ window.requestAnimationFrame(() => this.focusFirstItem());
111
73
  }
112
- this.wmActionMenuLoaded.emit();
113
- this.menuLoaded.emit(); // deprecated
114
- }
115
- moveUp(el) {
116
- const index = this.childItems.indexOf(el);
117
- if (index === 0) {
118
- this.focusLastItem();
119
- }
120
- else {
121
- this.focusItem(this.childItems[index - 1]);
122
- }
123
- }
124
- moveDown(el) {
125
- const index = this.childItems.indexOf(el);
126
- if (index === this.childItems.length - 1) {
127
- this.focusFirstItem();
74
+ break;
75
+ case "ArrowUp":
76
+ if (!this.isExpanded) {
77
+ ev.preventDefault();
78
+ this.open();
79
+ window.requestAnimationFrame(() => this.focusLastItem());
128
80
  }
129
- else {
130
- this.focusItem(this.childItems[index + 1]);
131
- }
132
- }
133
- open() {
134
- if (!this.disabled) {
135
- this.openUp = functions.shouldOpenUp(this.el, this.itemsEl.clientHeight);
136
- // action menu usually is on the right side of the screen,
137
- // so dropdown opens to the left (is anchored on the right corner)
138
- // if there is not enough space on the left and enough on the right though,
139
- // it will open on the right side
140
- this.isExpanded = true;
141
- this.itemsEl.classList.remove("hidden");
142
- window.requestAnimationFrame(() => this.focusFirstItem());
143
- }
144
- }
145
- close(returnFocus = true) {
146
- this.isExpanded = false;
147
- this.childItems.forEach((i) => (i.focused = false));
148
- window.setTimeout(() => {
149
- this.itemsEl.classList.add("hidden");
150
- }, 150);
151
- window.setTimeout(() => {
152
- // if dev omits to assign focus after an action is triggered,
153
- // the component brings the focus back on the button
154
- // Focus will only be lost (and go to the body) once the menuitem
155
- // is not visible anymore, so we need to wait for the transition to
156
- // finish and the hidden class to be applied.
157
- // also checking if focus stayed on the menuitem
158
- if (returnFocus &&
159
- (document.activeElement.tagName === "BODY" || document.activeElement.tagName === "WM-MENUITEM")) {
160
- this.wmButtonEl.focus();
161
- }
162
- }, 250);
163
- }
164
- focusItem(item) {
165
- this.childItems.map((i) => (i.focused = i === item));
166
- item.focus && item.focus();
167
- }
168
- focusFirstItem() {
169
- this.focusItem(this.childItems[0]);
170
- }
171
- focusLastItem() {
172
- this.focusItem(this.childItems[this.childItems.length - 1]);
173
- }
174
- findAndFocusItem(ev) {
175
- if (!this.keysSoFar && ev.detail == " ") {
176
- // if the first key entered is space, treat as a click. Otherwise include in
177
- ev.target.click();
178
- }
179
- else {
180
- const character = ev.detail.toLowerCase();
181
- this.focusFirstItem();
182
- if (!this.keysSoFar) {
183
- this.childItems.forEach((item, idx) => {
184
- if (item === document.activeElement) {
185
- this.searchIndex = idx;
186
- }
187
- });
188
- }
189
- this.keysSoFar += character;
190
- let nextMatch = this.findMatchInRange(this.childItems, this.searchIndex + 1, this.childItems.length);
191
- if (!nextMatch) {
192
- nextMatch = this.findMatchInRange(this.childItems, 0, this.searchIndex);
193
- }
194
- if (nextMatch) {
195
- this.focusItem(nextMatch);
196
- }
197
- this.debouncedClearKeysSoFar();
198
- }
199
- }
200
- findMatchInRange(list, startIndex, endIndex) {
201
- // Find the first item starting with the keysSoFar substring, searching in
202
- // the specified range of items
203
- for (var n = startIndex; n < endIndex; n++) {
204
- var label = list[n].textContent;
205
- if (label && label.toLowerCase().indexOf(this.keysSoFar) === 0) {
206
- return list[n];
207
- }
208
- }
209
- return null;
210
- }
211
- render() {
212
- return (index.h(index.Host, { onBlur: () => this.close(false) }, index.h("div", { class: functions.getTextDir() }, index.h("wm-button", { "button-type": this.internalButtonType, tooltip: this.tooltip, "custom-background": this.darkMode ? "dark" : undefined, "label-for-identical-buttons": this.labelForIdenticalButtons, icon: this.actionMenuType === "icon" ? "f1d9" : "", iconSize: this.actionMenuType === "icon" ? "24px" : undefined, id: `menubtn-${this.uid}`, onClick: () => (this.isExpanded ? this.close() : this.open()), onBlur: (ev) => this.handleButtonBlur(ev), disabled: this.disabled, ref: (el) => (this.wmButtonEl = el), "tooltip-position": this.tooltipPosition || this.horizontalPosition, "aria-haspopup": "true", "aria-expanded": this.isExpanded ? "true" : "false", "aria-controls": `menu-${this.uid}` }, this.buttonText), index.h("div", { class: `dropdown ${this.openUp ? "open-up" : ""} ${this.horizontalPosition} ${this.isExpanded ? "open" : ""} hidden`, id: `menu-${this.uid}`, tabindex: -1, role: "menu", ref: (el) => (this.itemsEl = el) }, index.h("slot", null)))));
213
- }
214
- static get delegatesFocus() { return true; }
215
- get el() { return index.getElement(this); }
81
+ break;
82
+ }
83
+ }
84
+ handleMenuitemBlur(ev) {
85
+ const toElOrChild = ev.detail.relatedTarget === this.el || this.el.contains(ev.detail.relatedTarget);
86
+ // if the Menuitem is blurred to something other than the component, emit a blur event with the appropriate relatedTarget
87
+ // keeps our component's blur events accurate, and closes when focusing browser address bar
88
+ if (!toElOrChild) {
89
+ const event = new CustomEvent("blur");
90
+ // @ts-ignore
91
+ event.relatedTarget = ev.detail.relatedTarget;
92
+ this.el.dispatchEvent(event);
93
+ }
94
+ }
95
+ handleButtonBlur(ev) {
96
+ const toElOrChild = ev.relatedTarget === this.el || this.el.contains(ev.relatedTarget);
97
+ if (toElOrChild) {
98
+ // do not emit a blur event when opening the dropdown and focusing the Menuitems
99
+ ev.stopPropagation();
100
+ }
101
+ }
102
+ componentWillLoad() {
103
+ this.uid = this.el.id ? this.el.id : functions.generateId();
104
+ }
105
+ componentDidLoad() {
106
+ if (this.actionMenuType !== "icon" && !this.buttonText) {
107
+ console.error("wm-action-menu should have a valid button-text property when action-menu-type is set to 'text' or 'selector'");
108
+ }
109
+ if (this.actionMenuType === "icon" && !this.tooltip) {
110
+ console.error("wm-action-menu should have a valid tooltip when action-menu-type is set to 'icon'");
111
+ }
112
+ this.wmActionMenuLoaded.emit();
113
+ this.menuLoaded.emit(); // deprecated
114
+ }
115
+ moveUp(el) {
116
+ const index = this.childItems.indexOf(el);
117
+ if (index === 0) {
118
+ this.focusLastItem();
119
+ }
120
+ else {
121
+ this.focusItem(this.childItems[index - 1]);
122
+ }
123
+ }
124
+ moveDown(el) {
125
+ const index = this.childItems.indexOf(el);
126
+ if (index === this.childItems.length - 1) {
127
+ this.focusFirstItem();
128
+ }
129
+ else {
130
+ this.focusItem(this.childItems[index + 1]);
131
+ }
132
+ }
133
+ open() {
134
+ if (!this.disabled) {
135
+ this.openUp = functions.shouldOpenUp(this.el, this.itemsEl.clientHeight);
136
+ // action menu usually is on the right side of the screen,
137
+ // so dropdown opens to the left (is anchored on the right corner)
138
+ // if there is not enough space on the left and enough on the right though,
139
+ // it will open on the right side
140
+ this.isExpanded = true;
141
+ this.itemsEl.classList.remove("hidden");
142
+ window.requestAnimationFrame(() => this.focusFirstItem());
143
+ }
144
+ }
145
+ close(returnFocus = true) {
146
+ this.isExpanded = false;
147
+ this.childItems.forEach((i) => (i.focused = false));
148
+ window.setTimeout(() => {
149
+ this.itemsEl.classList.add("hidden");
150
+ }, 150);
151
+ window.setTimeout(() => {
152
+ // if dev omits to assign focus after an action is triggered,
153
+ // the component brings the focus back on the button
154
+ // Focus will only be lost (and go to the body) once the menuitem
155
+ // is not visible anymore, so we need to wait for the transition to
156
+ // finish and the hidden class to be applied.
157
+ // also checking if focus stayed on the menuitem
158
+ if (returnFocus &&
159
+ (document.activeElement.tagName === "BODY" || document.activeElement.tagName === "WM-MENUITEM")) {
160
+ this.wmButtonEl.focus();
161
+ }
162
+ }, 250);
163
+ }
164
+ focusItem(item) {
165
+ this.childItems.map((i) => (i.focused = i === item));
166
+ item.focus && item.focus();
167
+ }
168
+ focusFirstItem() {
169
+ this.focusItem(this.childItems[0]);
170
+ }
171
+ focusLastItem() {
172
+ this.focusItem(this.childItems[this.childItems.length - 1]);
173
+ }
174
+ findAndFocusItem(ev) {
175
+ if (!this.keysSoFar && ev.detail == " ") {
176
+ // if the first key entered is space, treat as a click. Otherwise include in
177
+ ev.target.click();
178
+ }
179
+ else {
180
+ const character = ev.detail.toLowerCase();
181
+ this.focusFirstItem();
182
+ if (!this.keysSoFar) {
183
+ this.childItems.forEach((item, idx) => {
184
+ if (item === document.activeElement) {
185
+ this.searchIndex = idx;
186
+ }
187
+ });
188
+ }
189
+ this.keysSoFar += character;
190
+ let nextMatch = this.findMatchInRange(this.childItems, this.searchIndex + 1, this.childItems.length);
191
+ if (!nextMatch) {
192
+ nextMatch = this.findMatchInRange(this.childItems, 0, this.searchIndex);
193
+ }
194
+ if (nextMatch) {
195
+ this.focusItem(nextMatch);
196
+ }
197
+ this.debouncedClearKeysSoFar();
198
+ }
199
+ }
200
+ findMatchInRange(list, startIndex, endIndex) {
201
+ // Find the first item starting with the keysSoFar substring, searching in
202
+ // the specified range of items
203
+ for (var n = startIndex; n < endIndex; n++) {
204
+ var label = list[n].textContent;
205
+ if (label && label.toLowerCase().indexOf(this.keysSoFar) === 0) {
206
+ return list[n];
207
+ }
208
+ }
209
+ return null;
210
+ }
211
+ render() {
212
+ return (index.h(index.Host, { onBlur: () => this.close(false) }, index.h("div", { class: functions.getTextDir() }, index.h("wm-button", { "button-type": this.internalButtonType, tooltip: this.tooltip, "custom-background": this.darkMode ? "dark" : undefined, "label-for-identical-buttons": this.labelForIdenticalButtons, icon: this.actionMenuType === "icon" ? "f1d9" : "", iconSize: this.actionMenuType === "icon" ? "24px" : undefined, id: `menubtn-${this.uid}`, onClick: () => (this.isExpanded ? this.close() : this.open()), onBlur: (ev) => this.handleButtonBlur(ev), disabled: this.disabled, ref: (el) => (this.wmButtonEl = el), "tooltip-position": this.tooltipPosition || this.horizontalPosition, "aria-haspopup": "true", "aria-expanded": this.isExpanded ? "true" : "false", "aria-controls": `menu-${this.uid}` }, this.buttonText), index.h("div", { class: `dropdown ${this.openUp ? "open-up" : ""} ${this.horizontalPosition} ${this.isExpanded ? "open" : ""} hidden`, id: `menu-${this.uid}`, tabindex: -1, role: "menu", ref: (el) => (this.itemsEl = el) }, index.h("slot", null)))));
213
+ }
214
+ static get delegatesFocus() { return true; }
215
+ get el() { return index.getElement(this); }
216
216
  };
217
217
  ActionMenu.style = wmActionMenuCss;
218
218
 
219
219
  const wmMenuitemCss = ":host{--wmcolor-actionmenu-item-background-hover:var(--wmcolor-option-background-hover);--wmcolor-actionmenu-item-background:var(--wmcolor-option-background);--wmcolor-actionmenu-item-border:var(--wmcolor-option-border);--wmcolor-actionmenu-item-text-description:var(--wmcolor-option-text);--wmcolor-actionmenu-item-text-disabled:var(--wmcolor-option-text-disabled);--wmcolor-actionmenu-item-text:var(--wmcolor-interactive);contain:content;font-family:inherit}:host .wrapper{display:block;min-width:8.75rem;cursor:pointer;padding:1.25rem;border-radius:0px 0px 0px 0px;background:var(--wmcolor-actionmenu-item-background);font-family:inherit;font-weight:500;list-style:none;border-bottom:2px solid var(--wmcolor-actionmenu-item-border);color:var(--wmcolor-actionmenu-item-text);font-weight:700}:host .wrapper:focus,:host .wrapper.focus{outline:none;background:var(--wmcolor-actionmenu-item-background-hover)}:host .wrapper:hover{background:var(--wmcolor-actionmenu-item-background-hover);outline:none}:host .wrapper .description{color:var(--wmcolor-actionmenu-item-text-description);font-size:0.875rem;padding-top:0.5rem;white-space:normal;font-weight:400}:host .wrapper[aria-disabled=true]{font-style:italic;color:var(--wmcolor-actionmenu-text-disabled)}:host .wrapper:not(:last-child){border-bottom:2px solid var(--wmcolor-actionmenu-item-border)}:host ::slotted{font-family:inherit}:host .mdi{display:inline-block;font:normal normal normal 24px/1 \"Material Design Icons\";font-size:inherit;text-rendering:auto;line-height:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;margin-right:0.625rem;pointer-events:none;font-size:1.12rem}:host(:focus){outline:none;background:var(--wmcolor-actionmenu-item-background-hover)}:host([aria-disabled=true]){pointer-events:none}";
220
220
 
221
221
  const Menuitem = class {
222
- constructor(hostRef) {
223
- index.registerInstance(this, hostRef);
224
- this.wmMenuitemClicked = index.createEvent(this, "wmMenuitemClicked", 7);
225
- this.wmKeyUpPressed = index.createEvent(this, "wmKeyUpPressed", 7);
226
- this.wmKeyDownPressed = index.createEvent(this, "wmKeyDownPressed", 7);
227
- this.wmEscKeyPressed = index.createEvent(this, "wmEscKeyPressed", 7);
228
- this.wmHomeKeyPressed = index.createEvent(this, "wmHomeKeyPressed", 7);
229
- this.wmEndKeyPressed = index.createEvent(this, "wmEndKeyPressed", 7);
230
- this.wmPageDownItems = index.createEvent(this, "wmPageDownItems", 7);
231
- this.wmPageUpItems = index.createEvent(this, "wmPageUpItems", 7);
232
- this.wmTabKeyPressed = index.createEvent(this, "wmTabKeyPressed", 7);
233
- this.wmLetterPressed = index.createEvent(this, "wmLetterPressed", 7);
234
- this.wmMenuitemBlurred = index.createEvent(this, "wmMenuitemBlurred", 7);
235
- this.descriptionCharLimit = 100;
236
- this.disabled = false;
237
- this.focused = false;
238
- this.icon = undefined;
239
- this.description = undefined;
240
- this.isKeying = false;
241
- }
242
- toggleKeyingOn() {
243
- this.isKeying = true;
244
- }
245
- toggleKeyingOff() {
246
- this.isKeying = false;
247
- }
248
- handleKeydown(ev) {
249
- const modifierKeyUsed = ev.altKey || ev.ctrlKey || ev.metaKey;
250
- const isSingleCharacter = /^.$/.test(ev.key);
251
- const isCharacterEntry = isSingleCharacter && !modifierKeyUsed;
252
- switch (ev.key) {
253
- case "ArrowUp":
254
- ev.preventDefault();
255
- this.wmKeyUpPressed.emit(this.el);
256
- break;
257
- case "ArrowDown":
258
- ev.preventDefault();
259
- this.wmKeyDownPressed.emit(this.el);
260
- break;
261
- case "Enter":
262
- ev.preventDefault();
263
- if (!this.disabled) {
264
- this.el.click();
265
- }
266
- break;
267
- case "Escape":
268
- ev.preventDefault();
269
- ev.stopPropagation(); // prevents closing of parent modal
270
- this.wmEscKeyPressed.emit();
271
- break;
272
- case "Home":
273
- ev.preventDefault();
274
- this.wmHomeKeyPressed.emit();
275
- break;
276
- case "End":
277
- ev.preventDefault();
278
- this.wmEndKeyPressed.emit();
279
- break;
280
- case "Tab":
281
- this.wmTabKeyPressed.emit();
282
- break;
283
- default:
284
- if (isCharacterEntry) {
285
- ev.preventDefault();
286
- this.wmLetterPressed.emit(ev.key);
287
- }
288
- }
289
- }
290
- handleClick() {
222
+ constructor(hostRef) {
223
+ index.registerInstance(this, hostRef);
224
+ this.wmMenuitemClicked = index.createEvent(this, "wmMenuitemClicked", 7);
225
+ this.wmKeyUpPressed = index.createEvent(this, "wmKeyUpPressed", 7);
226
+ this.wmKeyDownPressed = index.createEvent(this, "wmKeyDownPressed", 7);
227
+ this.wmEscKeyPressed = index.createEvent(this, "wmEscKeyPressed", 7);
228
+ this.wmHomeKeyPressed = index.createEvent(this, "wmHomeKeyPressed", 7);
229
+ this.wmEndKeyPressed = index.createEvent(this, "wmEndKeyPressed", 7);
230
+ this.wmPageDownItems = index.createEvent(this, "wmPageDownItems", 7);
231
+ this.wmPageUpItems = index.createEvent(this, "wmPageUpItems", 7);
232
+ this.wmTabKeyPressed = index.createEvent(this, "wmTabKeyPressed", 7);
233
+ this.wmLetterPressed = index.createEvent(this, "wmLetterPressed", 7);
234
+ this.wmMenuitemBlurred = index.createEvent(this, "wmMenuitemBlurred", 7);
235
+ this.descriptionCharLimit = 100;
236
+ this.disabled = false;
237
+ this.focused = false;
238
+ this.icon = undefined;
239
+ this.description = undefined;
240
+ this.isKeying = false;
241
+ }
242
+ toggleKeyingOn() {
243
+ this.isKeying = true;
244
+ }
245
+ toggleKeyingOff() {
246
+ this.isKeying = false;
247
+ }
248
+ handleKeydown(ev) {
249
+ const modifierKeyUsed = ev.altKey || ev.ctrlKey || ev.metaKey;
250
+ const isSingleCharacter = /^.$/.test(ev.key);
251
+ const isCharacterEntry = isSingleCharacter && !modifierKeyUsed;
252
+ switch (ev.key) {
253
+ case "ArrowUp":
254
+ ev.preventDefault();
255
+ this.wmKeyUpPressed.emit(this.el);
256
+ break;
257
+ case "ArrowDown":
258
+ ev.preventDefault();
259
+ this.wmKeyDownPressed.emit(this.el);
260
+ break;
261
+ case "Enter":
262
+ ev.preventDefault();
291
263
  if (!this.disabled) {
292
- this.wmMenuitemClicked.emit();
293
- }
294
- }
295
- handleBlur(ev) {
296
- this.wmMenuitemBlurred.emit({ relatedTarget: ev.relatedTarget });
297
- }
298
- setOnClick() {
299
- if (this.disabled && this.el.onclick) {
300
- this.onClickFunc = this.el.onclick;
301
- this.el.onclick = null;
264
+ this.el.click();
302
265
  }
303
- else if (!this.disabled && this.onClickFunc) {
304
- this.el.onclick = this.onClickFunc;
266
+ break;
267
+ case "Escape":
268
+ ev.preventDefault();
269
+ ev.stopPropagation(); // prevents closing of parent modal
270
+ this.wmEscKeyPressed.emit();
271
+ break;
272
+ case "Home":
273
+ ev.preventDefault();
274
+ this.wmHomeKeyPressed.emit();
275
+ break;
276
+ case "End":
277
+ ev.preventDefault();
278
+ this.wmEndKeyPressed.emit();
279
+ break;
280
+ case "Tab":
281
+ this.wmTabKeyPressed.emit();
282
+ break;
283
+ default:
284
+ if (isCharacterEntry) {
285
+ ev.preventDefault();
286
+ this.wmLetterPressed.emit(ev.key);
305
287
  }
306
288
  }
307
- componentWillLoad() {
308
- if (this.icon) {
309
- // in case a name was passed instead of a code, convert it to code (for backwards compatibility)
310
- this.icon = interfaces.getIconCodeFromName(this.icon);
311
- }
312
- if (this.description) {
313
- if (this.description.length > this.descriptionCharLimit) {
314
- console.error(`wm-menuitem description is above the character limit of ${this.descriptionCharLimit}`);
315
- }
316
- if (this.icon) {
317
- console.error("wm-menuitems with descriptions do not support the use of icons");
318
- }
319
- }
320
- this.setOnClick();
321
- }
322
- componentDidLoad() {
323
- if (this.icon) {
324
- this.iconEl.classList.add("mdi");
325
- this.iconEl.innerHTML = `&#x${this.icon};`;
326
- }
327
- }
328
- render() {
329
- return (index.h(index.Host, { tabindex: -1, role: "menuitem", "aria-disabled": this.disabled ? "true" : null }, index.h("div", { class: `wrapper ${this.focused && this.isKeying ? "focus" : ""}`, "aria-disabled": this.disabled ? "true" : null }, index.h("span", { ref: (el) => (this.iconEl = el) }), this.el.textContent, this.description ? index.h("div", { class: "description" }, this.description) : "")));
330
- }
331
- get el() { return index.getElement(this); }
332
- static get watchers() { return {
333
- "disabled": ["setOnClick"]
334
- }; }
289
+ }
290
+ handleClick() {
291
+ if (!this.disabled) {
292
+ this.wmMenuitemClicked.emit();
293
+ }
294
+ }
295
+ handleBlur(ev) {
296
+ this.wmMenuitemBlurred.emit({ relatedTarget: ev.relatedTarget });
297
+ }
298
+ setOnClick() {
299
+ if (this.disabled && this.el.onclick) {
300
+ this.onClickFunc = this.el.onclick;
301
+ this.el.onclick = null;
302
+ }
303
+ else if (!this.disabled && this.onClickFunc) {
304
+ this.el.onclick = this.onClickFunc;
305
+ }
306
+ }
307
+ componentWillLoad() {
308
+ if (this.icon) {
309
+ // in case a name was passed instead of a code, convert it to code (for backwards compatibility)
310
+ this.icon = interfaces.getIconCodeFromName(this.icon);
311
+ }
312
+ if (this.description) {
313
+ if (this.description.length > this.descriptionCharLimit) {
314
+ console.error(`wm-menuitem description is above the character limit of ${this.descriptionCharLimit}`);
315
+ }
316
+ if (this.icon) {
317
+ console.error("wm-menuitems with descriptions do not support the use of icons");
318
+ }
319
+ }
320
+ this.setOnClick();
321
+ }
322
+ componentDidLoad() {
323
+ if (this.icon) {
324
+ this.iconEl.classList.add("mdi");
325
+ this.iconEl.innerHTML = `&#x${this.icon};`;
326
+ }
327
+ }
328
+ render() {
329
+ return (index.h(index.Host, { tabindex: -1, role: "menuitem", "aria-disabled": this.disabled ? "true" : null }, index.h("div", { class: `wrapper ${this.focused && this.isKeying ? "focus" : ""}`, "aria-disabled": this.disabled ? "true" : null }, index.h("span", { ref: (el) => (this.iconEl = el) }), this.el.textContent, this.description ? index.h("div", { class: "description" }, this.description) : "")));
330
+ }
331
+ get el() { return index.getElement(this); }
332
+ static get watchers() { return {
333
+ "disabled": ["setOnClick"]
334
+ }; }
335
335
  };
336
336
  Menuitem.style = wmMenuitemCss;
337
337