@watermarkinsights/ripple 4.3.0 → 4.4.0-0

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