@watermarkinsights/ripple 0.0.1 → 0.1.0-alpha.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 (496) hide show
  1. package/dist/cjs/app-globals-f836e216.js +103 -0
  2. package/dist/cjs/chartFunctions-608adb05.js +908 -0
  3. package/dist/{ripple/functions-DVLl0rH_.js → cjs/functions-b188d5b3.js} +403 -7835
  4. package/dist/cjs/index-786066a1.js +1880 -0
  5. package/dist/cjs/index.cjs.js +2 -0
  6. package/dist/cjs/interfaces-8419be91.js +59 -0
  7. package/dist/cjs/intl-01531391.js +283 -0
  8. package/dist/cjs/loader.cjs.js +15 -0
  9. package/dist/cjs/priv-calendar.cjs.entry.js +608 -0
  10. package/dist/cjs/priv-chart-popover-old.cjs.entry.js +146 -0
  11. package/dist/cjs/priv-chart-popover_2.cjs.entry.js +194 -0
  12. package/dist/{ripple/wm-modal-footer.entry.js → cjs/priv-navigator-button.cjs.entry.js} +20 -35
  13. package/dist/{ripple/wm-navigator.entry.js → cjs/priv-navigator-item.cjs.entry.js} +24 -357
  14. package/dist/{ripple/wm-search.entry.js → cjs/priv-option-list.cjs.entry.js} +363 -180
  15. package/dist/cjs/ripple.cjs.js +25 -0
  16. package/dist/cjs/wm-action-menu_2.cjs.entry.js +487 -0
  17. package/dist/cjs/wm-button.cjs.entry.js +273 -0
  18. package/dist/cjs/wm-chart-bar.cjs.entry.js +441 -0
  19. package/dist/cjs/wm-chart-column.cjs.entry.js +544 -0
  20. package/dist/cjs/wm-chart-slice.cjs.entry.js +27 -0
  21. package/dist/cjs/wm-chart.cjs.entry.js +163 -0
  22. package/dist/cjs/wm-date-range.cjs.entry.js +526 -0
  23. package/dist/cjs/wm-datepicker.cjs.entry.js +323 -0
  24. package/dist/cjs/wm-file-list.cjs.entry.js +23 -0
  25. package/dist/cjs/wm-file.cjs.entry.js +210 -0
  26. package/dist/cjs/wm-flyout.cjs.entry.js +181 -0
  27. package/dist/cjs/wm-input.cjs.entry.js +131 -0
  28. package/dist/cjs/wm-line-chart.cjs.entry.js +541 -0
  29. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +220 -0
  30. package/dist/cjs/wm-modal_3.cjs.entry.js +223 -0
  31. package/dist/cjs/wm-navigation_3.cjs.entry.js +188 -0
  32. package/dist/cjs/wm-navigator.cjs.entry.js +334 -0
  33. package/dist/cjs/wm-nested-select.cjs.entry.js +320 -0
  34. package/dist/cjs/wm-optgroup.cjs.entry.js +74 -0
  35. package/dist/cjs/wm-option_2.cjs.entry.js +535 -0
  36. package/dist/cjs/wm-pagination.cjs.entry.js +229 -0
  37. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +204 -0
  38. package/dist/cjs/wm-search.cjs.entry.js +196 -0
  39. package/dist/cjs/wm-snackbar.cjs.entry.js +176 -0
  40. package/dist/cjs/wm-tab-item_3.cjs.entry.js +357 -0
  41. package/dist/cjs/wm-tag-input.cjs.entry.js +953 -0
  42. package/dist/cjs/wm-tag-option.cjs.entry.js +43 -0
  43. package/dist/cjs/wm-textarea.cjs.entry.js +94 -0
  44. package/dist/cjs/wm-timepicker.cjs.entry.js +313 -0
  45. package/dist/cjs/wm-toggletip.cjs.entry.js +252 -0
  46. package/dist/cjs/wm-uploader.cjs.entry.js +341 -0
  47. package/dist/cjs/wm-wrapper.cjs.entry.js +21 -0
  48. package/dist/collection/collection-manifest.json +201 -0
  49. package/dist/collection/components/charts/chartFunctions.js +833 -0
  50. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +995 -0
  51. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +340 -0
  52. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.css +990 -0
  53. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.js +263 -0
  54. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +125 -0
  55. package/dist/collection/components/charts/wm-chart/wm-chart.css +1326 -0
  56. package/dist/collection/components/charts/wm-chart/wm-chart.js +422 -0
  57. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.css +1116 -0
  58. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.js +579 -0
  59. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.css +1169 -0
  60. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.js +688 -0
  61. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.css +932 -0
  62. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.js +194 -0
  63. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +1208 -0
  64. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +862 -0
  65. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +1326 -0
  66. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +264 -0
  67. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +967 -0
  68. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +151 -0
  69. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +121 -0
  70. package/dist/collection/components/datepickers/datepicker.css +1137 -0
  71. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +1403 -0
  72. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +881 -0
  73. package/dist/collection/components/datepickers/wm-date-range.js +870 -0
  74. package/dist/collection/components/datepickers/wm-datepicker.js +579 -0
  75. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +999 -0
  76. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +778 -0
  77. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1259 -0
  78. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +626 -0
  79. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +909 -0
  80. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +258 -0
  81. package/dist/collection/components/selects/wm-option/wm-option.css +1033 -0
  82. package/dist/collection/components/selects/wm-option/wm-option.js +530 -0
  83. package/dist/collection/components/selects/wm-select/wm-select.css +1187 -0
  84. package/dist/collection/components/selects/wm-select/wm-select.js +705 -0
  85. package/dist/collection/components/wm-action-menu/wm-action-menu.css +1686 -0
  86. package/dist/collection/components/wm-action-menu/wm-action-menu.js +610 -0
  87. package/dist/collection/components/wm-button/wm-button.css +1627 -0
  88. package/dist/collection/components/wm-button/wm-button.js +555 -0
  89. package/dist/collection/components/wm-file/wm-file.css +1086 -0
  90. package/dist/collection/components/wm-file/wm-file.js +428 -0
  91. package/dist/collection/components/wm-file-list/wm-file-list.css +899 -0
  92. package/dist/collection/components/wm-file-list/wm-file-list.js +45 -0
  93. package/dist/collection/components/wm-flyout/wm-flyout.css +1117 -0
  94. package/dist/collection/components/wm-flyout/wm-flyout.js +449 -0
  95. package/dist/collection/components/wm-input/wm-input.css +1089 -0
  96. package/dist/collection/components/wm-input/wm-input.js +477 -0
  97. package/dist/collection/components/wm-menuitem/wm-menuitem.css +982 -0
  98. package/dist/collection/components/wm-menuitem/wm-menuitem.js +416 -0
  99. package/dist/collection/components/wm-modal/wm-modal-footer.css +927 -0
  100. package/dist/collection/components/wm-modal/wm-modal-footer.js +142 -0
  101. package/dist/collection/components/wm-modal/wm-modal-header.css +926 -0
  102. package/dist/collection/components/wm-modal/wm-modal-header.js +79 -0
  103. package/dist/collection/components/wm-modal/wm-modal.css +983 -0
  104. package/dist/collection/components/wm-modal/wm-modal.js +356 -0
  105. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +931 -0
  106. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +138 -0
  107. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +925 -0
  108. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +82 -0
  109. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +1007 -0
  110. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +365 -0
  111. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +926 -0
  112. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +119 -0
  113. package/dist/collection/components/wm-navigation/wm-navigation-item.css +935 -0
  114. package/dist/collection/components/wm-navigation/wm-navigation-item.js +98 -0
  115. package/dist/collection/components/wm-navigation/wm-navigation.css +977 -0
  116. package/dist/collection/components/wm-navigation/wm-navigation.js +190 -0
  117. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +929 -0
  118. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +86 -0
  119. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +918 -0
  120. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +124 -0
  121. package/dist/collection/components/wm-navigator/wm-navigator.css +990 -0
  122. package/dist/collection/components/wm-navigator/wm-navigator.js +503 -0
  123. package/dist/collection/components/wm-pagination/wm-pagination.css +1044 -0
  124. package/dist/collection/components/wm-pagination/wm-pagination.js +382 -0
  125. package/dist/collection/components/wm-search/wm-search.css +977 -0
  126. package/dist/collection/components/wm-search/wm-search.js +429 -0
  127. package/dist/collection/components/wm-snackbar/wm-snackbar.css +1150 -0
  128. package/dist/collection/components/wm-snackbar/wm-snackbar.js +263 -0
  129. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +958 -0
  130. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +166 -0
  131. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +966 -0
  132. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +357 -0
  133. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +906 -0
  134. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +87 -0
  135. package/dist/collection/components/wm-tag-input/wm-tag-input.css +1420 -0
  136. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1288 -0
  137. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +243 -0
  138. package/dist/collection/components/wm-textarea/wm-textarea.css +1065 -0
  139. package/dist/collection/components/wm-textarea/wm-textarea.js +319 -0
  140. package/dist/collection/components/wm-timepicker/wm-timepicker.css +1164 -0
  141. package/dist/collection/components/wm-timepicker/wm-timepicker.js +553 -0
  142. package/dist/collection/components/wm-toggletip/wm-toggletip.css +1296 -0
  143. package/dist/collection/components/wm-toggletip/wm-toggletip.js +376 -0
  144. package/dist/collection/components/wm-uploader/wm-uploader.css +1984 -0
  145. package/dist/collection/components/wm-uploader/wm-uploader.js +619 -0
  146. package/dist/collection/components/wm-wrapper/wm-wrapper.js +28 -0
  147. package/dist/collection/dev/action-menu.js +18 -0
  148. package/dist/collection/dev/button.js +0 -0
  149. package/dist/collection/dev/chart-bar.js +423 -0
  150. package/dist/collection/dev/chart-column.js +437 -0
  151. package/dist/collection/dev/chart-small.js +56 -0
  152. package/dist/collection/dev/chart.js +18 -0
  153. package/dist/collection/dev/date-range.js +6 -0
  154. package/dist/collection/dev/datepicker.js +46 -0
  155. package/dist/collection/dev/file-list.js +16 -0
  156. package/dist/collection/dev/file.js +0 -0
  157. package/dist/collection/dev/flyout.js +194 -0
  158. package/dist/collection/dev/input.js +6 -0
  159. package/dist/collection/dev/line-chart.js +45 -0
  160. package/dist/collection/dev/modal.js +48 -0
  161. package/dist/collection/dev/navigation.js +13 -0
  162. package/dist/collection/dev/navigator.js +34 -0
  163. package/dist/collection/dev/nested-select.js +36 -0
  164. package/dist/collection/dev/pagination.js +7 -0
  165. package/dist/collection/dev/progress-monitor.js +0 -0
  166. package/dist/collection/dev/pss-modal.js +8 -0
  167. package/dist/collection/dev/scripts.js +49 -0
  168. package/dist/collection/dev/search.js +72 -0
  169. package/dist/collection/dev/select.js +57 -0
  170. package/dist/collection/dev/snackbar.js +68 -0
  171. package/dist/collection/dev/tabs.js +44 -0
  172. package/dist/collection/dev/tag-input.js +32 -0
  173. package/dist/collection/dev/textarea.js +28 -0
  174. package/dist/collection/dev/timepicker.js +32 -0
  175. package/dist/collection/dev/toggletip.js +9 -0
  176. package/dist/collection/dev/uploader.js +139 -0
  177. package/dist/collection/global/__mocks__/functions.js +6 -0
  178. package/dist/collection/global/functions.js +902 -0
  179. package/dist/{ripple/app-globals-B7cOtGhY.js → collection/global/global.js} +16 -87
  180. package/dist/{ripple/interfaces-CrANcZM9.js → collection/global/interfaces.js} +25 -6
  181. package/dist/collection/global/intl.js +274 -0
  182. package/dist/collection/global/services/__mocks__/http-service.js +130 -0
  183. package/dist/collection/global/services/http-service.js +50 -0
  184. package/dist/collection/lang/lang.js +5 -0
  185. package/dist/collection/lang/missing.js +43 -0
  186. package/dist/collection/lang/piglatin.js +101 -0
  187. package/dist/esm/app-globals-d0ca31a6.js +101 -0
  188. package/dist/{ripple/chartFunctions-CmeM8Tyx.js → esm/chartFunctions-4bc77b76.js} +161 -3
  189. package/dist/esm/functions-de887809.js +10635 -0
  190. package/dist/esm/index-ef50bc01.js +1849 -0
  191. package/dist/esm/index.js +1 -0
  192. package/dist/esm/interfaces-7e50d034.js +55 -0
  193. package/dist/{ripple/intl-7p27BJSM.js → esm/intl-56b47a7b.js} +3 -3
  194. package/dist/esm/loader.js +11 -0
  195. package/dist/esm/polyfills/core-js.js +11 -0
  196. package/dist/esm/polyfills/dom.js +79 -0
  197. package/dist/esm/polyfills/es5-html-element.js +1 -0
  198. package/dist/esm/polyfills/index.js +34 -0
  199. package/dist/esm/polyfills/system.js +6 -0
  200. package/dist/esm/priv-calendar.entry.js +604 -0
  201. package/dist/esm/priv-chart-popover-old.entry.js +142 -0
  202. package/dist/esm/priv-chart-popover_2.entry.js +189 -0
  203. package/dist/{ripple/wm-modal-header.entry.js → esm/priv-navigator-button.entry.js} +14 -25
  204. package/dist/{ripple/wm-toggletip.entry.js → esm/priv-navigator-item.entry.js} +19 -164
  205. package/dist/{ripple/wm-option.entry.js → esm/priv-option-list.entry.js} +345 -129
  206. package/dist/esm/ripple.js +20 -0
  207. package/dist/esm/wm-action-menu_2.entry.js +482 -0
  208. package/dist/esm/wm-button.entry.js +269 -0
  209. package/dist/esm/wm-chart-bar.entry.js +437 -0
  210. package/dist/esm/wm-chart-column.entry.js +540 -0
  211. package/dist/{ripple → esm}/wm-chart-slice.entry.js +6 -1
  212. package/dist/esm/wm-chart.entry.js +159 -0
  213. package/dist/esm/wm-date-range.entry.js +522 -0
  214. package/dist/esm/wm-datepicker.entry.js +319 -0
  215. package/dist/esm/wm-file-list.entry.js +19 -0
  216. package/dist/esm/wm-file.entry.js +206 -0
  217. package/dist/esm/wm-flyout.entry.js +177 -0
  218. package/dist/esm/wm-input.entry.js +127 -0
  219. package/dist/esm/wm-line-chart.entry.js +537 -0
  220. package/dist/esm/wm-modal-pss_3.entry.js +214 -0
  221. package/dist/esm/wm-modal_3.entry.js +217 -0
  222. package/dist/esm/wm-navigation_3.entry.js +182 -0
  223. package/dist/esm/wm-navigator.entry.js +330 -0
  224. package/dist/{ripple/wm-flyout.entry.js → esm/wm-nested-select.entry.js} +281 -132
  225. package/dist/esm/wm-optgroup.entry.js +70 -0
  226. package/dist/esm/wm-option_2.entry.js +530 -0
  227. package/dist/esm/wm-pagination.entry.js +225 -0
  228. package/dist/esm/wm-progress-indicator_3.entry.js +198 -0
  229. package/dist/esm/wm-search.entry.js +192 -0
  230. package/dist/esm/wm-snackbar.entry.js +172 -0
  231. package/dist/esm/wm-tab-item_3.entry.js +351 -0
  232. package/dist/esm/wm-tag-input.entry.js +949 -0
  233. package/dist/{ripple → esm}/wm-tag-option.entry.js +6 -2
  234. package/dist/esm/wm-textarea.entry.js +90 -0
  235. package/dist/esm/wm-timepicker.entry.js +309 -0
  236. package/dist/esm/wm-toggletip.entry.js +248 -0
  237. package/dist/esm/wm-uploader.entry.js +337 -0
  238. package/dist/{ripple → esm}/wm-wrapper.entry.js +1 -1
  239. package/dist/esm-es5/app-globals-d0ca31a6.js +1 -0
  240. package/dist/esm-es5/chartFunctions-4bc77b76.js +1 -0
  241. package/dist/esm-es5/functions-de887809.js +1 -0
  242. package/dist/esm-es5/index-ef50bc01.js +1 -0
  243. package/dist/esm-es5/index.js +0 -0
  244. package/dist/esm-es5/interfaces-7e50d034.js +1 -0
  245. package/dist/esm-es5/intl-56b47a7b.js +1 -0
  246. package/dist/esm-es5/loader.js +1 -0
  247. package/dist/esm-es5/priv-calendar.entry.js +1 -0
  248. package/dist/esm-es5/priv-chart-popover-old.entry.js +1 -0
  249. package/dist/esm-es5/priv-chart-popover_2.entry.js +1 -0
  250. package/dist/esm-es5/priv-navigator-button.entry.js +1 -0
  251. package/dist/esm-es5/priv-navigator-item.entry.js +1 -0
  252. package/dist/esm-es5/priv-option-list.entry.js +1 -0
  253. package/dist/esm-es5/ripple.js +1 -0
  254. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -0
  255. package/dist/esm-es5/wm-button.entry.js +1 -0
  256. package/dist/esm-es5/wm-chart-bar.entry.js +1 -0
  257. package/dist/esm-es5/wm-chart-column.entry.js +1 -0
  258. package/dist/esm-es5/wm-chart-slice.entry.js +1 -0
  259. package/dist/esm-es5/wm-chart.entry.js +1 -0
  260. package/dist/esm-es5/wm-date-range.entry.js +1 -0
  261. package/dist/esm-es5/wm-datepicker.entry.js +1 -0
  262. package/dist/{ripple/wm-tab-item.entry.js → esm-es5/wm-file-list.entry.js} +1 -63
  263. package/dist/esm-es5/wm-file.entry.js +1 -0
  264. package/dist/esm-es5/wm-flyout.entry.js +1 -0
  265. package/dist/esm-es5/wm-input.entry.js +1 -0
  266. package/dist/esm-es5/wm-line-chart.entry.js +1 -0
  267. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -0
  268. package/dist/esm-es5/wm-modal_3.entry.js +1 -0
  269. package/dist/esm-es5/wm-navigation_3.entry.js +1 -0
  270. package/dist/esm-es5/wm-navigator.entry.js +1 -0
  271. package/dist/esm-es5/wm-nested-select.entry.js +1 -0
  272. package/dist/{ripple/wm-chart.entry.js → esm-es5/wm-optgroup.entry.js} +1 -157
  273. package/dist/esm-es5/wm-option_2.entry.js +1 -0
  274. package/dist/esm-es5/wm-pagination.entry.js +1 -0
  275. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -0
  276. package/dist/esm-es5/wm-search.entry.js +1 -0
  277. package/dist/esm-es5/wm-snackbar.entry.js +1 -0
  278. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -0
  279. package/dist/esm-es5/wm-tag-input.entry.js +1 -0
  280. package/dist/esm-es5/wm-tag-option.entry.js +1 -0
  281. package/dist/esm-es5/wm-textarea.entry.js +1 -0
  282. package/dist/esm-es5/wm-timepicker.entry.js +1 -0
  283. package/dist/esm-es5/wm-toggletip.entry.js +1 -0
  284. package/dist/esm-es5/wm-uploader.entry.js +1 -0
  285. package/dist/esm-es5/wm-wrapper.entry.js +1 -0
  286. package/dist/index.cjs.js +1 -0
  287. package/dist/index.js +1 -0
  288. package/dist/loader/cdn.js +2 -0
  289. package/dist/loader/index.cjs.js +2 -0
  290. package/dist/loader/index.d.ts +24 -0
  291. package/dist/loader/index.es2017.js +2 -0
  292. package/dist/loader/index.js +3 -0
  293. package/dist/loader/package.json +11 -0
  294. package/dist/ripple/index.esm.js +0 -1
  295. package/dist/ripple/p-03a6850a.entry.js +1 -0
  296. package/dist/ripple/{wm-select.entry.js → p-0c3162d5.system.entry.js} +1 -249
  297. package/dist/ripple/{wm-file.entry.js → p-0ec71f08.system.entry.js} +1 -182
  298. package/dist/ripple/p-1032c0db.system.entry.js +1 -0
  299. package/dist/ripple/p-117c3d78.system.js +2 -0
  300. package/dist/ripple/p-12024d3b.system.entry.js +1 -0
  301. package/dist/ripple/p-13152ac1.system.entry.js +1 -0
  302. package/dist/ripple/p-1318ae67.entry.js +1 -0
  303. package/dist/ripple/p-137bf0c0.system.entry.js +1 -0
  304. package/dist/ripple/{priv-navigator-item.entry.js → p-13bb6faf.entry.js} +1 -30
  305. package/dist/ripple/p-16ff8110.entry.js +1 -0
  306. package/dist/ripple/{wm-navigation-item.entry.js → p-1825d519.system.entry.js} +1 -18
  307. package/dist/ripple/p-18417851.entry.js +1 -0
  308. package/dist/ripple/p-1c655f6b.entry.js +1 -0
  309. package/dist/ripple/p-1ce77857.system.entry.js +1 -0
  310. package/dist/ripple/p-1d76061a.entry.js +1 -0
  311. package/dist/ripple/p-22b57f73.system.entry.js +1 -0
  312. package/dist/ripple/p-24dfbf1d.system.entry.js +1 -0
  313. package/dist/ripple/p-28996d67.system.entry.js +1 -0
  314. package/dist/ripple/p-30118d12.system.entry.js +1 -0
  315. package/dist/ripple/p-32f3581a.entry.js +1 -0
  316. package/dist/ripple/p-334d8711.system.js +1 -0
  317. package/dist/ripple/p-3c8c5933.js +1 -0
  318. package/dist/ripple/{wm-uploader.entry.js → p-436bf381.system.entry.js} +1 -313
  319. package/dist/ripple/p-43843597.system.entry.js +1 -0
  320. package/dist/ripple/p-45999149.system.js +1 -0
  321. package/dist/ripple/p-48b596ae.entry.js +1 -0
  322. package/dist/ripple/p-4bab5360.system.js +1 -0
  323. package/dist/ripple/{wm-progress-monitor.entry.js → p-4ff0db4d.entry.js} +1 -71
  324. package/dist/ripple/p-50ea2036.system.js +1 -0
  325. package/dist/ripple/p-57f1bafd.system.entry.js +1 -0
  326. package/dist/ripple/p-5b0e9165.entry.js +1 -0
  327. package/dist/ripple/p-6266fcbf.system.entry.js +1 -0
  328. package/dist/ripple/p-646e22d3.system.entry.js +1 -0
  329. package/dist/ripple/p-6950e8ed.system.js +1 -0
  330. package/dist/ripple/p-6c6da5db.entry.js +1 -0
  331. package/dist/ripple/p-6d2af8d9.system.entry.js +1 -0
  332. package/dist/ripple/p-6d46f775.system.entry.js +1 -0
  333. package/dist/ripple/p-6de0efee.entry.js +1 -0
  334. package/dist/ripple/p-7833db63.entry.js +1 -0
  335. package/dist/ripple/p-7b7c32af.entry.js +1 -0
  336. package/dist/ripple/p-817aa29c.entry.js +1 -0
  337. package/dist/ripple/p-82c9bd47.entry.js +1 -0
  338. package/dist/ripple/p-8480138d.entry.js +1 -0
  339. package/dist/ripple/p-85ef702d.entry.js +1 -0
  340. package/dist/ripple/{priv-calendar.entry.js → p-86bcd942.system.entry.js} +1 -566
  341. package/dist/ripple/p-8799bce9.entry.js +1 -0
  342. package/dist/ripple/p-8ac14bb1.system.js +1 -0
  343. package/dist/ripple/p-8dcc8c0c.entry.js +1 -0
  344. package/dist/ripple/p-8fa572a8.entry.js +1 -0
  345. package/dist/ripple/p-904545cc.js +1 -0
  346. package/dist/ripple/p-90cb5d27.system.entry.js +1 -0
  347. package/dist/ripple/{wm-datepicker.entry.js → p-9202ef69.system.entry.js} +1 -247
  348. package/dist/ripple/p-9f971522.system.entry.js +1 -0
  349. package/dist/ripple/p-a5dc49c1.system.entry.js +1 -0
  350. package/dist/ripple/p-a73fb160.system.entry.js +1 -0
  351. package/dist/ripple/p-a9580e7a.system.entry.js +1 -0
  352. package/dist/ripple/p-b04a6351.entry.js +1 -0
  353. package/dist/ripple/p-b09998e1.entry.js +1 -0
  354. package/dist/ripple/{priv-option-list.entry.js → p-b3a86ec4.system.entry.js} +1 -385
  355. package/dist/ripple/p-b501f06c.entry.js +1 -0
  356. package/dist/ripple/p-b957033b.entry.js +1 -0
  357. package/dist/ripple/p-c2258438.entry.js +1 -0
  358. package/dist/ripple/p-ca3abcc0.system.entry.js +1 -0
  359. package/dist/ripple/p-cc455a6c.system.entry.js +1 -0
  360. package/dist/ripple/p-cda66d45.js +1 -0
  361. package/dist/ripple/p-cde2ca4d.system.entry.js +1 -0
  362. package/dist/ripple/p-cdf9c0e9.entry.js +1 -0
  363. package/dist/ripple/p-d0858afa.js +2 -0
  364. package/dist/ripple/p-d37f8f66.js +1 -0
  365. package/dist/ripple/p-d4ae193e.js +1 -0
  366. package/dist/ripple/p-d4d769a7.system.js +1 -0
  367. package/dist/ripple/p-d6a9000f.system.entry.js +1 -0
  368. package/dist/ripple/{wm-navigation-hamburger.entry.js → p-d6cd9f79.entry.js} +1 -48
  369. package/dist/ripple/p-d9e4335e.entry.js +1 -0
  370. package/dist/ripple/p-dadf3ed3.entry.js +1 -0
  371. package/dist/ripple/p-dc3684b5.entry.js +1 -0
  372. package/dist/ripple/p-dca94e24.entry.js +1 -0
  373. package/dist/ripple/p-dcd6acc5.system.entry.js +1 -0
  374. package/dist/ripple/p-dd81e308.entry.js +1 -0
  375. package/dist/ripple/p-e11d9b06.system.entry.js +1 -0
  376. package/dist/ripple/{wm-nested-select.entry.js → p-e36e71dc.system.entry.js} +1 -308
  377. package/dist/ripple/p-e6a81600.entry.js +1 -0
  378. package/dist/ripple/p-ef7d84da.system.entry.js +1 -0
  379. package/dist/ripple/p-f1de3153.entry.js +1 -0
  380. package/dist/ripple/p-f3e84476.system.entry.js +1 -0
  381. package/dist/ripple/{wm-snackbar.entry.js → p-f4d27fea.system.entry.js} +1 -185
  382. package/dist/ripple/p-fcf4bd61.system.entry.js +1 -0
  383. package/dist/ripple/p-fd02c124.entry.js +1 -0
  384. package/dist/ripple/p-ffa20853.entry.js +1 -0
  385. package/dist/ripple/ripple.esm.js +1 -48
  386. package/dist/ripple/ripple.js +127 -0
  387. package/dist/types/components/charts/chartFunctions.d.ts +15 -2
  388. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +20 -11
  389. package/dist/types/components/charts/priv-chart-popover-old/priv-chart-popover-old.d.ts +26 -0
  390. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +1 -1
  391. package/dist/types/components/charts/wm-chart-bar/wm-chart-bar.d.ts +62 -0
  392. package/dist/types/components/charts/wm-chart-column/wm-chart-column.d.ts +73 -0
  393. package/dist/types/components/charts/wm-chart-legend/wm-chart-legend.d.ts +26 -0
  394. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +21 -11
  395. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +1 -1
  396. package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +13 -1
  397. package/dist/types/components/datepickers/wm-date-range.d.ts +13 -13
  398. package/dist/types/components/datepickers/wm-datepicker.d.ts +14 -9
  399. package/dist/types/components/selects/wm-nested-select/wm-nested-select.d.ts +2 -1
  400. package/dist/types/components/selects/wm-select/wm-select.d.ts +23 -12
  401. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +16 -2
  402. package/dist/types/components/wm-button/wm-button.d.ts +5 -0
  403. package/dist/types/components/wm-file/wm-file.d.ts +4 -1
  404. package/dist/types/components/wm-flyout/wm-flyout.d.ts +1 -0
  405. package/dist/types/components/wm-input/wm-input.d.ts +2 -1
  406. package/dist/types/components/wm-modal/wm-modal.d.ts +1 -0
  407. package/dist/types/components/wm-modal-pss/wm-modal-pss.d.ts +2 -0
  408. package/dist/types/components/wm-navigation/wm-navigation.d.ts +1 -0
  409. package/dist/types/components/wm-navigator/wm-navigator.d.ts +1 -1
  410. package/dist/types/components/wm-pagination/wm-pagination.d.ts +2 -1
  411. package/dist/types/components/wm-search/wm-search.d.ts +1 -1
  412. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +0 -1
  413. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +3 -1
  414. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +15 -22
  415. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +5 -1
  416. package/dist/types/components/wm-textarea/wm-textarea.d.ts +1 -0
  417. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +1 -0
  418. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +14 -2
  419. package/dist/types/components/wm-uploader/wm-uploader.d.ts +4 -3
  420. package/dist/types/components.d.ts +181 -33
  421. package/dist/types/global/functions.d.ts +6 -2
  422. package/dist/types/global/interfaces.d.ts +59 -2
  423. package/dist/types/stencil-public-runtime.d.ts +0 -28
  424. package/package.json +6 -31
  425. package/dist/components/index.d.ts +0 -33
  426. package/dist/components/priv-calendar.d.ts +0 -11
  427. package/dist/components/priv-chart-popover.d.ts +0 -11
  428. package/dist/components/priv-navigator-button.d.ts +0 -11
  429. package/dist/components/priv-navigator-item.d.ts +0 -11
  430. package/dist/components/priv-option-list.d.ts +0 -11
  431. package/dist/components/wm-action-menu.d.ts +0 -11
  432. package/dist/components/wm-button.d.ts +0 -11
  433. package/dist/components/wm-chart-slice.d.ts +0 -11
  434. package/dist/components/wm-chart.d.ts +0 -11
  435. package/dist/components/wm-date-range.d.ts +0 -11
  436. package/dist/components/wm-datepicker.d.ts +0 -11
  437. package/dist/components/wm-file-list.d.ts +0 -11
  438. package/dist/components/wm-file.d.ts +0 -11
  439. package/dist/components/wm-flyout.d.ts +0 -11
  440. package/dist/components/wm-input.d.ts +0 -11
  441. package/dist/components/wm-line-chart.d.ts +0 -11
  442. package/dist/components/wm-menuitem.d.ts +0 -11
  443. package/dist/components/wm-modal-footer.d.ts +0 -11
  444. package/dist/components/wm-modal-header.d.ts +0 -11
  445. package/dist/components/wm-modal-pss-footer.d.ts +0 -11
  446. package/dist/components/wm-modal-pss-header.d.ts +0 -11
  447. package/dist/components/wm-modal-pss.d.ts +0 -11
  448. package/dist/components/wm-modal.d.ts +0 -11
  449. package/dist/components/wm-navigation-hamburger.d.ts +0 -11
  450. package/dist/components/wm-navigation-item.d.ts +0 -11
  451. package/dist/components/wm-navigation.d.ts +0 -11
  452. package/dist/components/wm-navigator.d.ts +0 -11
  453. package/dist/components/wm-nested-select.d.ts +0 -11
  454. package/dist/components/wm-optgroup.d.ts +0 -11
  455. package/dist/components/wm-option.d.ts +0 -11
  456. package/dist/components/wm-pagination.d.ts +0 -11
  457. package/dist/components/wm-progress-indicator.d.ts +0 -11
  458. package/dist/components/wm-progress-monitor.d.ts +0 -11
  459. package/dist/components/wm-progress-slice.d.ts +0 -11
  460. package/dist/components/wm-search.d.ts +0 -11
  461. package/dist/components/wm-select.d.ts +0 -11
  462. package/dist/components/wm-snackbar.d.ts +0 -11
  463. package/dist/components/wm-tab-item.d.ts +0 -11
  464. package/dist/components/wm-tab-list.d.ts +0 -11
  465. package/dist/components/wm-tab-panel.d.ts +0 -11
  466. package/dist/components/wm-tag-input.d.ts +0 -11
  467. package/dist/components/wm-tag-option.d.ts +0 -11
  468. package/dist/components/wm-textarea.d.ts +0 -11
  469. package/dist/components/wm-timepicker.d.ts +0 -11
  470. package/dist/components/wm-toggletip.d.ts +0 -11
  471. package/dist/components/wm-uploader.d.ts +0 -11
  472. package/dist/components/wm-wrapper.d.ts +0 -11
  473. package/dist/ripple/index-CU5QNCKv.js +0 -4167
  474. package/dist/ripple/priv-chart-popover.entry.js +0 -134
  475. package/dist/ripple/priv-navigator-button.entry.js +0 -24
  476. package/dist/ripple/wm-action-menu.entry.js +0 -201
  477. package/dist/ripple/wm-button.entry.js +0 -197
  478. package/dist/ripple/wm-date-range.entry.js +0 -477
  479. package/dist/ripple/wm-file-list.entry.js +0 -18
  480. package/dist/ripple/wm-input.entry.js +0 -111
  481. package/dist/ripple/wm-line-chart.entry.js +0 -449
  482. package/dist/ripple/wm-menuitem.entry.js +0 -125
  483. package/dist/ripple/wm-modal-pss-footer.entry.js +0 -40
  484. package/dist/ripple/wm-modal-pss-header.entry.js +0 -39
  485. package/dist/ripple/wm-modal-pss.entry.js +0 -135
  486. package/dist/ripple/wm-modal.entry.js +0 -133
  487. package/dist/ripple/wm-navigation.entry.js +0 -116
  488. package/dist/ripple/wm-optgroup.entry.js +0 -68
  489. package/dist/ripple/wm-pagination.entry.js +0 -223
  490. package/dist/ripple/wm-progress-indicator.entry.js +0 -107
  491. package/dist/ripple/wm-progress-slice.entry.js +0 -13
  492. package/dist/ripple/wm-tab-list.entry.js +0 -175
  493. package/dist/ripple/wm-tab-panel.entry.js +0 -32
  494. package/dist/ripple/wm-tag-input.entry.js +0 -877
  495. package/dist/ripple/wm-textarea.entry.js +0 -79
  496. package/dist/ripple/wm-timepicker.entry.js +0 -300
@@ -0,0 +1,705 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { forceUpdate } from "@stencil/core";
3
+ import { getTextDir, toBool, handleDisabledAttribute, showTooltip, hideTooltip, debounce, findAllScrollableParents, } from "../../../global/functions";
4
+ import { globalMessages, selectMessages } from "../../../global/intl";
5
+ export class Select {
6
+ constructor() {
7
+ this.scrollableParents = [];
8
+ this.returnFocus = false;
9
+ this.hasAnchor = CSS.supports("top", "anchor(bottom)"); // for FF polyfill
10
+ this.displayedOptions = [];
11
+ this.debouncedReposition = debounce(() => {
12
+ this.dropdownPosition();
13
+ }, 100);
14
+ this.disabled = false;
15
+ this.maxHeight = "200px";
16
+ this.label = undefined;
17
+ this.labelPosition = "top";
18
+ this.requiredField = false;
19
+ this.errorMessage = undefined;
20
+ this.multiple = false;
21
+ this.search = false;
22
+ this.selectAll = false;
23
+ this.placeholder = selectMessages.multiPlaceholder;
24
+ this.searchPlaceholder = selectMessages.searchPlaceholder;
25
+ this.allSelectedMessage = selectMessages.allSelected;
26
+ this.info = undefined;
27
+ this.isExpanded = false;
28
+ this.isHidden = false;
29
+ this.openUp = false;
30
+ this.announcement = "";
31
+ }
32
+ get childOptions() {
33
+ return Array.from(this.el.querySelectorAll("wm-option"));
34
+ }
35
+ get isDisabled() {
36
+ // string "false" needs to be treated as bool False because react wrappers convert bool to string.
37
+ return toBool(this.disabled);
38
+ }
39
+ get displayText() {
40
+ return this.displayedOptions.map((x) => x.textContent).join(", ");
41
+ }
42
+ get selectedOptions() {
43
+ return Array.from(this.el.querySelectorAll("wm-option")).filter((x) => x.selected);
44
+ }
45
+ get allSelected() {
46
+ return this.childOptions.every((option) => option.selected);
47
+ }
48
+ //////////////////////////////////////
49
+ handleOptionSelection() {
50
+ if (!this.multiple) {
51
+ this.returnFocus = true;
52
+ this.dropdownEl.hidePopover();
53
+ }
54
+ }
55
+ handleChildEnter() {
56
+ // only occurs for multiselects. handle the click, then close
57
+ this.returnFocus = true;
58
+ this.dropdownEl.hidePopover();
59
+ }
60
+ closeDropdownOnEscape() {
61
+ this.returnFocus = true;
62
+ this.dropdownEl.hidePopover();
63
+ }
64
+ handleToggle(ev) {
65
+ ev.newState === "open" ? this.onOpen() : this.onClose();
66
+ }
67
+ dropdownPosition() {
68
+ // polyfill for opening up or down + positioning according to screen
69
+ // (must recalculate on scroll, resize)
70
+ // Using transform for better performance - only affects composite layer, no layout recalculation
71
+ const buttonElRect = this.buttonEl.getBoundingClientRect();
72
+ const spaceAbove = buttonElRect.top;
73
+ const spaceBelow = document.documentElement.clientHeight - buttonElRect.bottom;
74
+ const dropdownHeight = this.dropdownEl.clientHeight;
75
+ // Clear any previously set positioning properties
76
+ this.el.style.removeProperty("--dropdown-translate-y");
77
+ this.el.style.removeProperty("--dropdown-max-height");
78
+ this.el.style.removeProperty("--dropdown-left");
79
+ // Set horizontal position and width to match button
80
+ this.el.style.setProperty("--dropdown-left", buttonElRect.left + "px");
81
+ this.el.style.setProperty("--button-width", buttonElRect.width + "px");
82
+ if (dropdownHeight <= spaceBelow) {
83
+ // Case 1: Enough space below - position dropdown below the button
84
+ this.el.style.setProperty("--dropdown-translate-y", buttonElRect.bottom + "px");
85
+ }
86
+ else if (dropdownHeight <= spaceAbove) {
87
+ // Case 2: Not enough space below, but enough above - position dropdown above the button
88
+ this.el.style.setProperty("--dropdown-translate-y", buttonElRect.top - dropdownHeight + "px");
89
+ }
90
+ else {
91
+ // Case 3: Not enough space in either direction - use the larger available space and constrain height
92
+ if (spaceBelow >= spaceAbove) {
93
+ // Use space below and constrain dropdown height
94
+ this.el.style.setProperty("--dropdown-translate-y", buttonElRect.bottom + "px");
95
+ this.el.style.setProperty("--dropdown-max-height", spaceBelow + "px");
96
+ }
97
+ else {
98
+ // Use space above and constrain dropdown height
99
+ this.el.style.setProperty("--dropdown-translate-y", "0px");
100
+ this.el.style.setProperty("--dropdown-max-height", spaceAbove + "px");
101
+ }
102
+ }
103
+ this.isHidden = false;
104
+ }
105
+ onOpen() {
106
+ if (!this.isExpanded && !this.isDisabled) {
107
+ // polyfill for browsers without anchor() support (FF)
108
+ if (!this.hasAnchor) {
109
+ this.dropdownPosition();
110
+ }
111
+ requestAnimationFrame(() => {
112
+ const anchorRect = this.buttonEl.getBoundingClientRect();
113
+ const hasSpaceBelow = this.dropdownEl.offsetHeight <= document.documentElement.clientHeight - anchorRect.bottom;
114
+ const hasSpaceAbove = this.dropdownEl.offsetHeight <= anchorRect.top;
115
+ this.openUp = !hasSpaceBelow && hasSpaceAbove;
116
+ if (!hasSpaceBelow && !hasSpaceAbove) {
117
+ // dropdown will open downwards but doesn't have enough space
118
+ // it needs to be absolutely positioned + html has to have overflow-y auto
119
+ // (the default, but could have been overriden)
120
+ // in order to ensure the options can be scrolled to
121
+ // (would already be possible if the page has content below. this is in case select was at bottom of page)
122
+ this.initialHtmlOverflowY = document.documentElement.style.overflowY;
123
+ document.documentElement.style.overflowY = "auto";
124
+ this.dropdownEl.style.position = "absolute";
125
+ }
126
+ this.isExpanded = true;
127
+ });
128
+ setTimeout(() => {
129
+ // focusing doesn't work when within requestAnimationFrame
130
+ this.optionListEl.handleInitialFocus(this.elToFocus);
131
+ this.elToFocus = undefined;
132
+ }, 50);
133
+ }
134
+ }
135
+ onClose() {
136
+ if (this.isExpanded) {
137
+ this.optionListEl.unfocusAll();
138
+ // see onOpen
139
+ document.documentElement.style.overflowY = this.initialHtmlOverflowY || "";
140
+ this.dropdownEl.style.position = "fixed";
141
+ window.setTimeout(() => {
142
+ if (!this.hasAnchor) {
143
+ this.isHidden = true;
144
+ }
145
+ if (this.optionListEl.multiple) {
146
+ this.optionListEl.updateOptionVisibility();
147
+ }
148
+ // clear search field, reset filtered / bolded state of wm-options
149
+ if (this.search) {
150
+ this.optionListEl.clearSearch();
151
+ }
152
+ this.isExpanded = false;
153
+ }, 150);
154
+ if (this.returnFocus) {
155
+ requestAnimationFrame(() => {
156
+ this.buttonEl.focus();
157
+ this.returnFocus = false;
158
+ });
159
+ }
160
+ }
161
+ }
162
+ handleKey(ev) {
163
+ switch (ev.key) {
164
+ case "Tab":
165
+ // if tabbing backwards, close and return focus to button. Otherwise, close but do not redirect focus.
166
+ if (this.isExpanded && ev.shiftKey) {
167
+ this.returnFocus = true;
168
+ }
169
+ this.dropdownEl.hidePopover();
170
+ break;
171
+ case "ArrowDown":
172
+ if (this.isExpanded === false) {
173
+ ev.preventDefault();
174
+ this.elToFocus = "next";
175
+ this.dropdownEl.showPopover();
176
+ }
177
+ break;
178
+ case "ArrowUp":
179
+ if (this.isExpanded === false) {
180
+ ev.preventDefault();
181
+ this.elToFocus = "previous";
182
+ this.dropdownEl.showPopover();
183
+ }
184
+ break;
185
+ }
186
+ }
187
+ handleResize() {
188
+ if (!this.hasAnchor && this.isExpanded) {
189
+ this.isHidden = true;
190
+ this.debouncedReposition();
191
+ }
192
+ }
193
+ handleScroll() {
194
+ if (this.isExpanded) {
195
+ this.isHidden = true;
196
+ this.debouncedReposition();
197
+ }
198
+ }
199
+ componentWillLoad() {
200
+ if (!this.hasAnchor) {
201
+ // Start hidden to prevent flash on first load
202
+ this.isHidden = true;
203
+ }
204
+ if (!this.label) {
205
+ console.error("For accessibility purposes, this component requires a label (even if `label-position` is set to `none`).");
206
+ }
207
+ if (!this.multiple && this.selectedOptions.length === 0) {
208
+ console.error("wm-select should have one initial option selected");
209
+ }
210
+ handleDisabledAttribute(this.el, this.isDisabled);
211
+ const mutationObserver = new MutationObserver((mutationRecordList) => mutationRecordList.forEach((_mutationRecord) => this.handleChildChange()));
212
+ mutationObserver.observe(this.el, {
213
+ childList: true,
214
+ attributes: true,
215
+ subtree: true,
216
+ attributeFilter: ["selected"],
217
+ });
218
+ }
219
+ handleChildChange() {
220
+ forceUpdate(this.el);
221
+ if (this.multiple) {
222
+ // update state of clone options
223
+ this.optionListEl.handleChildChange();
224
+ }
225
+ }
226
+ componentDidLoad() {
227
+ this.wmSelectDidLoad.emit();
228
+ if (!this.hasAnchor) {
229
+ this.scrollableParents = findAllScrollableParents(this.el);
230
+ // Add scroll listeners to all scrollable parents
231
+ this.scrollableParents.forEach((parent) => {
232
+ if (parent === document.documentElement) {
233
+ // For document element, listen to window scroll event
234
+ window.addEventListener("scroll", () => this.handleScroll());
235
+ }
236
+ else {
237
+ // For regular elements, listen to their scroll event
238
+ parent.addEventListener("scroll", () => this.handleScroll());
239
+ }
240
+ });
241
+ }
242
+ }
243
+ announceError() {
244
+ if (this.errorMessage) {
245
+ setTimeout(() => this.announce(this.errorMessage), 100);
246
+ }
247
+ }
248
+ handleDisabledChange() {
249
+ handleDisabledAttribute(this.el, this.isDisabled);
250
+ }
251
+ handleComponentBlur(ev) {
252
+ // Do not close or emit custom blur event when blurring to an element inside (wm-option)
253
+ if (!this.el.contains(ev.relatedTarget)) {
254
+ this.wmSelectBlurred.emit();
255
+ }
256
+ }
257
+ handleLabelMouseEnter(ev) {
258
+ const labelEl = ev.target;
259
+ if (labelEl.scrollWidth > labelEl.clientWidth) {
260
+ showTooltip("right", ev.target, this.label);
261
+ }
262
+ }
263
+ announce(message) {
264
+ // \u00A0 is a non-breaking space character, which causes the message to be read as a new one
265
+ if (this.liveRegionEl.textContent === message) {
266
+ message += "\u00A0";
267
+ }
268
+ this.announcement = message;
269
+ }
270
+ handleOverflow() {
271
+ if (!this.buttonEl) {
272
+ forceUpdate(this.el);
273
+ }
274
+ else {
275
+ // handle overflow + counter for multiselect
276
+ // this is a fixed measurement accounting for the max width of a 3 character overflow counter
277
+ const overflowCounterWidth = 38;
278
+ const computedStyle = window.getComputedStyle(this.buttonEl);
279
+ // there seems to be no quick way to get an elements width without padding, except for subtracting padding manually
280
+ const paddingLeft = parseInt(computedStyle.getPropertyValue("padding-left").slice(0, -2));
281
+ const paddingRight = parseInt(computedStyle.getPropertyValue("padding-right").slice(0, -2));
282
+ const availableSpace = this.buttonEl.clientWidth - paddingLeft - paddingRight - overflowCounterWidth;
283
+ this.overflowCount = 0;
284
+ this.measurementAreaEl.textContent = this.displayText;
285
+ let optionsTotalWidth = this.measurementAreaEl.clientWidth;
286
+ while (optionsTotalWidth > availableSpace && this.displayedOptions.length > 1) {
287
+ this.overflowCount++;
288
+ this.displayedOptions.pop();
289
+ this.measurementAreaEl.textContent = this.displayText;
290
+ optionsTotalWidth = this.measurementAreaEl.clientWidth;
291
+ }
292
+ }
293
+ }
294
+ setButtonText() {
295
+ if (!this.multiple) {
296
+ const selEl = this.childOptions.filter((x) => x.selected)[0];
297
+ return selEl ? selEl.textContent : "";
298
+ }
299
+ this.displayedOptions = this.childOptions.filter((x) => x.selected);
300
+ const noDisplayedOptions = this.displayedOptions.length < 1;
301
+ if (noDisplayedOptions) {
302
+ this.overflowCount = 0;
303
+ return this.placeholder;
304
+ }
305
+ this.handleOverflow();
306
+ if (this.allSelected) {
307
+ // Consolidated label when every option is selected; do not show the +N overflow badge.
308
+ // On first render, handleOverflow may not have measured yet; we still show this message.
309
+ this.overflowCount = 0;
310
+ this.buttonText = this.allSelectedMessage;
311
+ }
312
+ else {
313
+ // otherwise, if handleOverflow was able to calculate, it set the count and the display text
314
+ // if it wasn't able to calculate, the text of all the selected options will be displayed and may truncate (acceptable as fallback)
315
+ this.buttonText = this.displayText;
316
+ }
317
+ return this.buttonText; // multiselect value
318
+ }
319
+ renderOverflowCount() {
320
+ if (this.overflowCount > 0) {
321
+ return (h("span", null, h("span", { class: "overflow-counter" }, "+", this.overflowCount)));
322
+ }
323
+ }
324
+ render() {
325
+ const showSubinfo = !this.multiple && this.selectedOptions.length > 0 && this.selectedOptions[0].subinfo;
326
+ return (h(Host, { key: '0c15e3c853e8061fd3482900a5c9e79099e18072', onBlur: (ev) => this.handleComponentBlur(ev) }, h("div", { key: '86953fd45cb2e305629b0e688e97ed16038406e8', class: `wrapper ${getTextDir()} label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, h("div", { key: '5758544de948ec407faea3909f45b9065e2ef857', class: "label-wrapper" }, h("label", { key: '4f32e8a8996f2926519151fe0d8256f8af620ba1', class: "label", id: "label", htmlFor: "selectbtn", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label),
327
+ // we can't use aria-required because the listbox is in a sub-component and it is not announced
328
+ this.labelPosition !== "none" && this.requiredField && (h("span", { key: 'a72a5517f26e297549dcd0ac057ce7b19e1acfbd', class: "required" }, h("span", { key: '60bd893e2a2ed1031167bfe835cfb310133cd56e', class: "sr-only" }, globalMessages.requiredField), h("span", { key: 'bff8c8faee5517d83844c2dd22528dbc59ea3b42', "aria-hidden": "true" }, "*")))), h("div", { key: 'a9f9d86a709a21d312ecf0f008af1f29bfacf23c', class: "button-wrapper" }, h("button", { key: '6bae8ba99a52af84870a5861132e625de8f341f1', id: "selectbtn", disabled: this.isDisabled, "aria-labelledby": "label selectbtn", "aria-describedby": "info error", popoverTarget: "dropdown", popoverTargetAction: "toggle", class: "displayedoption", ref: (el) => (this.buttonEl = el) }, h("span", { key: '65ed5b61f0d0f1e7df3efcb7eb05e69a788d985f', class: `overflowcontrol ${showSubinfo ? "hassubinfo" : ""}` }, h("span", { key: '6eb71f7cb727bb9ef93a4780a61fcae3a4c5dc87', class: "button-text" }, this.setButtonText()), showSubinfo && h("span", { key: '7d71e73f4a5609c32c7b0bbd32a7c618f67204c6', class: "subinfo" }, this.selectedOptions[0].subinfo)), h("div", { key: '946a6a2445eca2ecddaf0703672074f0f7aab906', class: `expand-icon svg-icon ${this.isExpanded ? "svg-expand-less" : "svg-expand-more"}` }), this.renderOverflowCount(), h("div", { key: '359b34e29578c693cd11377208ad4c14f8da3699', ref: (el) => (this.measurementAreaEl = el), class: "measurement-area", "aria-hidden": "true" })), h("div", { key: '8570e7a0eda0afc398d312de70fd7ab5edabfa0b',
329
+ // is-open is for the CSS transition in modern browsers
330
+ // hidden is to wait for position calculations in Firefox
331
+ class: `dropdown ${this.isExpanded ? "is-open" : ""} ${this.isHidden ? "hidden" : ""} ${this.openUp ? "upward" : ""}`, id: "dropdown", popover: "auto", ref: (el) => (this.dropdownEl = el),
332
+ // @ts-ignore -- don't tell typescript but we're in the future
333
+ onToggle: (ev) => this.handleToggle(ev) }, h("priv-option-list", { key: '365d65d779b224a382c8910990d8fc5a8b9782fc', ref: (el) => (this.optionListEl = el), multiple: this.multiple, search: this.search, selectAll: this.selectAll, maxHeight: this.maxHeight, searchPlaceholder: this.searchPlaceholder, onOptionListCloseRequested: () => {
334
+ this.dropdownEl.hidePopover();
335
+ }, onOptionListAllSelected: () => {
336
+ this.returnFocus = true;
337
+ this.wmSelectAllSelected.emit();
338
+ }, onOptionListAllDeselected: () => {
339
+ this.returnFocus = true;
340
+ this.wmSelectAllDeselected.emit();
341
+ } }, h("slot", { key: '14e69ec589802c881b15056f26a316604231b953' }))), this.info && (h("div", { key: '874ecb2e44f633f9270d2ec2a75c8fcbd8c502c6', class: "info" }, this.info)), h("div", { key: 'c0092eabe951be48b32cfc552acff972ba2e1a85', id: "error", class: this.errorMessage ? "error-message" : "" }, this.errorMessage), h("div", { key: '4f0d41664246dbbb7dec502058814198d0b8195f', id: "announcement", "aria-live": "polite", "aria-atomic": "true", class: "sr-only", ref: (el) => (this.liveRegionEl = el) }, this.announcement)))));
342
+ }
343
+ static get is() { return "wm-select"; }
344
+ static get encapsulation() { return "shadow"; }
345
+ static get delegatesFocus() { return true; }
346
+ static get originalStyleUrls() {
347
+ return {
348
+ "$": ["wm-select.scss"]
349
+ };
350
+ }
351
+ static get styleUrls() {
352
+ return {
353
+ "$": ["wm-select.css"]
354
+ };
355
+ }
356
+ static get properties() {
357
+ return {
358
+ "disabled": {
359
+ "type": "boolean",
360
+ "mutable": false,
361
+ "complexType": {
362
+ "original": "boolean",
363
+ "resolved": "boolean",
364
+ "references": {}
365
+ },
366
+ "required": false,
367
+ "optional": false,
368
+ "docs": {
369
+ "tags": [],
370
+ "text": ""
371
+ },
372
+ "attribute": "disabled",
373
+ "reflect": true,
374
+ "defaultValue": "false"
375
+ },
376
+ "maxHeight": {
377
+ "type": "string",
378
+ "mutable": false,
379
+ "complexType": {
380
+ "original": "string",
381
+ "resolved": "string",
382
+ "references": {}
383
+ },
384
+ "required": false,
385
+ "optional": false,
386
+ "docs": {
387
+ "tags": [],
388
+ "text": ""
389
+ },
390
+ "attribute": "max-height",
391
+ "reflect": false,
392
+ "defaultValue": "\"200px\""
393
+ },
394
+ "label": {
395
+ "type": "string",
396
+ "mutable": true,
397
+ "complexType": {
398
+ "original": "string",
399
+ "resolved": "string | undefined",
400
+ "references": {}
401
+ },
402
+ "required": false,
403
+ "optional": true,
404
+ "docs": {
405
+ "tags": [],
406
+ "text": ""
407
+ },
408
+ "attribute": "label",
409
+ "reflect": false
410
+ },
411
+ "labelPosition": {
412
+ "type": "string",
413
+ "mutable": false,
414
+ "complexType": {
415
+ "original": "\"top\" | \"left\" | \"none\"",
416
+ "resolved": "\"left\" | \"none\" | \"top\"",
417
+ "references": {}
418
+ },
419
+ "required": false,
420
+ "optional": false,
421
+ "docs": {
422
+ "tags": [],
423
+ "text": ""
424
+ },
425
+ "attribute": "label-position",
426
+ "reflect": false,
427
+ "defaultValue": "\"top\""
428
+ },
429
+ "requiredField": {
430
+ "type": "boolean",
431
+ "mutable": false,
432
+ "complexType": {
433
+ "original": "boolean",
434
+ "resolved": "boolean",
435
+ "references": {}
436
+ },
437
+ "required": false,
438
+ "optional": false,
439
+ "docs": {
440
+ "tags": [],
441
+ "text": ""
442
+ },
443
+ "attribute": "required-field",
444
+ "reflect": false,
445
+ "defaultValue": "false"
446
+ },
447
+ "errorMessage": {
448
+ "type": "string",
449
+ "mutable": true,
450
+ "complexType": {
451
+ "original": "string",
452
+ "resolved": "string | undefined",
453
+ "references": {}
454
+ },
455
+ "required": false,
456
+ "optional": true,
457
+ "docs": {
458
+ "tags": [],
459
+ "text": ""
460
+ },
461
+ "attribute": "error-message",
462
+ "reflect": false
463
+ },
464
+ "multiple": {
465
+ "type": "boolean",
466
+ "mutable": false,
467
+ "complexType": {
468
+ "original": "boolean",
469
+ "resolved": "boolean",
470
+ "references": {}
471
+ },
472
+ "required": false,
473
+ "optional": false,
474
+ "docs": {
475
+ "tags": [],
476
+ "text": ""
477
+ },
478
+ "attribute": "multiple",
479
+ "reflect": false,
480
+ "defaultValue": "false"
481
+ },
482
+ "search": {
483
+ "type": "boolean",
484
+ "mutable": false,
485
+ "complexType": {
486
+ "original": "boolean",
487
+ "resolved": "boolean",
488
+ "references": {}
489
+ },
490
+ "required": false,
491
+ "optional": false,
492
+ "docs": {
493
+ "tags": [],
494
+ "text": ""
495
+ },
496
+ "attribute": "search",
497
+ "reflect": false,
498
+ "defaultValue": "false"
499
+ },
500
+ "selectAll": {
501
+ "type": "boolean",
502
+ "mutable": false,
503
+ "complexType": {
504
+ "original": "boolean",
505
+ "resolved": "boolean",
506
+ "references": {}
507
+ },
508
+ "required": false,
509
+ "optional": false,
510
+ "docs": {
511
+ "tags": [],
512
+ "text": ""
513
+ },
514
+ "attribute": "select-all",
515
+ "reflect": false,
516
+ "defaultValue": "false"
517
+ },
518
+ "placeholder": {
519
+ "type": "string",
520
+ "mutable": false,
521
+ "complexType": {
522
+ "original": "string",
523
+ "resolved": "string",
524
+ "references": {}
525
+ },
526
+ "required": false,
527
+ "optional": false,
528
+ "docs": {
529
+ "tags": [],
530
+ "text": ""
531
+ },
532
+ "attribute": "placeholder",
533
+ "reflect": false,
534
+ "defaultValue": "selectMessages.multiPlaceholder"
535
+ },
536
+ "searchPlaceholder": {
537
+ "type": "string",
538
+ "mutable": false,
539
+ "complexType": {
540
+ "original": "string",
541
+ "resolved": "string",
542
+ "references": {}
543
+ },
544
+ "required": false,
545
+ "optional": false,
546
+ "docs": {
547
+ "tags": [],
548
+ "text": ""
549
+ },
550
+ "attribute": "search-placeholder",
551
+ "reflect": false,
552
+ "defaultValue": "selectMessages.searchPlaceholder"
553
+ },
554
+ "allSelectedMessage": {
555
+ "type": "string",
556
+ "mutable": false,
557
+ "complexType": {
558
+ "original": "string",
559
+ "resolved": "string",
560
+ "references": {}
561
+ },
562
+ "required": false,
563
+ "optional": false,
564
+ "docs": {
565
+ "tags": [],
566
+ "text": ""
567
+ },
568
+ "attribute": "all-selected-message",
569
+ "reflect": false,
570
+ "defaultValue": "selectMessages.allSelected"
571
+ },
572
+ "info": {
573
+ "type": "string",
574
+ "mutable": false,
575
+ "complexType": {
576
+ "original": "string",
577
+ "resolved": "string | undefined",
578
+ "references": {}
579
+ },
580
+ "required": false,
581
+ "optional": true,
582
+ "docs": {
583
+ "tags": [],
584
+ "text": ""
585
+ },
586
+ "attribute": "info",
587
+ "reflect": false
588
+ }
589
+ };
590
+ }
591
+ static get states() {
592
+ return {
593
+ "isExpanded": {},
594
+ "isHidden": {},
595
+ "openUp": {},
596
+ "announcement": {}
597
+ };
598
+ }
599
+ static get events() {
600
+ return [{
601
+ "method": "wmSelectDidLoad",
602
+ "name": "wmSelectDidLoad",
603
+ "bubbles": true,
604
+ "cancelable": true,
605
+ "composed": true,
606
+ "docs": {
607
+ "tags": [],
608
+ "text": ""
609
+ },
610
+ "complexType": {
611
+ "original": "void",
612
+ "resolved": "void",
613
+ "references": {}
614
+ }
615
+ }, {
616
+ "method": "wmSelectBlurred",
617
+ "name": "wmSelectBlurred",
618
+ "bubbles": true,
619
+ "cancelable": true,
620
+ "composed": true,
621
+ "docs": {
622
+ "tags": [],
623
+ "text": ""
624
+ },
625
+ "complexType": {
626
+ "original": "void",
627
+ "resolved": "void",
628
+ "references": {}
629
+ }
630
+ }, {
631
+ "method": "wmSelectAllSelected",
632
+ "name": "wmSelectAllSelected",
633
+ "bubbles": true,
634
+ "cancelable": true,
635
+ "composed": true,
636
+ "docs": {
637
+ "tags": [],
638
+ "text": ""
639
+ },
640
+ "complexType": {
641
+ "original": "any",
642
+ "resolved": "any",
643
+ "references": {}
644
+ }
645
+ }, {
646
+ "method": "wmSelectAllDeselected",
647
+ "name": "wmSelectAllDeselected",
648
+ "bubbles": true,
649
+ "cancelable": true,
650
+ "composed": true,
651
+ "docs": {
652
+ "tags": [],
653
+ "text": ""
654
+ },
655
+ "complexType": {
656
+ "original": "any",
657
+ "resolved": "any",
658
+ "references": {}
659
+ }
660
+ }];
661
+ }
662
+ static get elementRef() { return "el"; }
663
+ static get watchers() {
664
+ return [{
665
+ "propName": "errorMessage",
666
+ "methodName": "announceError"
667
+ }, {
668
+ "propName": "disabled",
669
+ "methodName": "handleDisabledChange"
670
+ }];
671
+ }
672
+ static get listeners() {
673
+ return [{
674
+ "name": "wmOptionSelected",
675
+ "method": "handleOptionSelection",
676
+ "target": undefined,
677
+ "capture": false,
678
+ "passive": false
679
+ }, {
680
+ "name": "wmEnterKeyPressed",
681
+ "method": "handleChildEnter",
682
+ "target": undefined,
683
+ "capture": false,
684
+ "passive": false
685
+ }, {
686
+ "name": "wmEscKeyPressed",
687
+ "method": "closeDropdownOnEscape",
688
+ "target": undefined,
689
+ "capture": false,
690
+ "passive": false
691
+ }, {
692
+ "name": "keydown",
693
+ "method": "handleKey",
694
+ "target": undefined,
695
+ "capture": false,
696
+ "passive": false
697
+ }, {
698
+ "name": "resize",
699
+ "method": "handleResize",
700
+ "target": "window",
701
+ "capture": false,
702
+ "passive": true
703
+ }];
704
+ }
705
+ }