@watermarkinsights/ripple 5.12.0 → 5.13.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -1
  3. package/dist/{esm/chartFunctions-9099c7e9.js → components/chartFunctions.js} +4 -4
  4. package/dist/components/functions.js +17465 -0
  5. package/dist/components/index.d.ts +33 -0
  6. package/dist/{collection/global/global.js → components/index.js} +52 -2
  7. package/dist/{collection/global → components}/interfaces.js +6 -4
  8. package/dist/{esm/intl-a6f16883.js → components/intl.js} +1 -1
  9. package/dist/components/priv-calendar.d.ts +11 -0
  10. package/dist/components/priv-calendar.js +6 -0
  11. package/dist/{esm/priv-calendar.entry.js → components/priv-calendar2.js} +40 -17
  12. package/dist/components/priv-chart-popover.d.ts +11 -0
  13. package/dist/components/priv-chart-popover.js +6 -0
  14. package/dist/{esm/priv-chart-popover.entry.js → components/priv-chart-popover2.js} +32 -13
  15. package/dist/components/priv-navigator-button.d.ts +11 -0
  16. package/dist/components/priv-navigator-button.js +6 -0
  17. package/dist/{esm/priv-navigator-button.entry.js → components/priv-navigator-button2.js} +27 -9
  18. package/dist/components/priv-navigator-item.d.ts +11 -0
  19. package/dist/components/priv-navigator-item.js +6 -0
  20. package/dist/{esm/priv-navigator-item.entry.js → components/priv-navigator-item2.js} +28 -9
  21. package/dist/components/priv-option-list.d.ts +11 -0
  22. package/dist/components/priv-option-list.js +6 -0
  23. package/dist/{esm/priv-option-list.entry.js → components/priv-option-list2.js} +54 -21
  24. package/dist/components/wm-action-menu.d.ts +11 -0
  25. package/dist/components/wm-action-menu.js +6 -0
  26. package/dist/{cjs/wm-pagination.cjs.entry.js → components/wm-action-menu2.js} +216 -212
  27. package/dist/components/wm-button.d.ts +11 -0
  28. package/dist/components/wm-button.js +6 -0
  29. package/dist/{esm/wm-button.entry.js → components/wm-button2.js} +49 -20
  30. package/dist/components/wm-chart-slice.d.ts +11 -0
  31. package/dist/components/wm-chart-slice.js +41 -0
  32. package/dist/components/wm-chart.d.ts +11 -0
  33. package/dist/{esm/wm-chart.entry.js → components/wm-chart.js} +61 -22
  34. package/dist/components/wm-date-range.d.ts +11 -0
  35. package/dist/{esm/wm-date-range.entry.js → components/wm-date-range.js} +66 -23
  36. package/dist/components/wm-datepicker.d.ts +11 -0
  37. package/dist/{esm/wm-datepicker.entry.js → components/wm-datepicker.js} +58 -20
  38. package/dist/components/wm-file-list.d.ts +11 -0
  39. package/dist/{cjs/wm-file-list.cjs.entry.js → components/wm-file-list.js} +29 -13
  40. package/dist/components/wm-file.d.ts +11 -0
  41. package/dist/{esm/wm-file.entry.js → components/wm-file.js} +59 -20
  42. package/dist/components/wm-input.d.ts +11 -0
  43. package/dist/{esm/wm-input.entry.js → components/wm-input.js} +54 -22
  44. package/dist/components/wm-line-chart.d.ts +11 -0
  45. package/dist/{esm/wm-line-chart.entry.js → components/wm-line-chart.js} +80 -39
  46. package/dist/components/wm-menuitem.d.ts +11 -0
  47. package/dist/components/wm-menuitem.js +6 -0
  48. package/dist/{cjs/wm-optgroup.cjs.entry.js → components/wm-menuitem2.js} +130 -57
  49. package/dist/components/wm-modal-footer.d.ts +11 -0
  50. package/dist/components/wm-modal-footer.js +73 -0
  51. package/dist/components/wm-modal-header.d.ts +11 -0
  52. package/dist/components/wm-modal-header.js +61 -0
  53. package/dist/components/wm-modal-pss-footer.d.ts +11 -0
  54. package/dist/{cjs/priv-chart-popover.cjs.entry.js → components/wm-modal-pss-footer.js} +58 -128
  55. package/dist/components/wm-modal-pss-header.d.ts +11 -0
  56. package/dist/components/wm-modal-pss-header.js +64 -0
  57. package/dist/components/wm-modal-pss.d.ts +11 -0
  58. package/dist/{cjs/wm-textarea.cjs.entry.js → components/wm-modal-pss.js} +141 -66
  59. package/dist/components/wm-modal.d.ts +11 -0
  60. package/dist/{cjs/wm-input.cjs.entry.js → components/wm-modal.js} +140 -103
  61. package/dist/components/wm-navigation-hamburger.d.ts +11 -0
  62. package/dist/{ripple/p-f9cade98.entry.js → components/wm-navigation-hamburger.js} +70 -1
  63. package/dist/components/wm-navigation-item.d.ts +11 -0
  64. package/dist/components/wm-navigation-item.js +40 -0
  65. package/dist/components/wm-navigation.d.ts +11 -0
  66. package/dist/{ripple/p-1a71d867.system.entry.js → components/wm-navigation.js} +144 -1
  67. package/dist/components/wm-navigator.d.ts +11 -0
  68. package/dist/{esm/wm-navigator.entry.js → components/wm-navigator.js} +106 -18
  69. package/dist/components/wm-nested-select.d.ts +11 -0
  70. package/dist/{esm/wm-nested-select.entry.js → components/wm-nested-select.js} +56 -23
  71. package/dist/components/wm-optgroup.d.ts +11 -0
  72. package/dist/{esm/wm-optgroup.entry.js → components/wm-optgroup.js} +49 -11
  73. package/dist/components/wm-option.d.ts +11 -0
  74. package/dist/components/wm-option.js +6 -0
  75. package/dist/{cjs/wm-search.cjs.entry.js → components/wm-option2.js} +168 -165
  76. package/dist/components/wm-pagination.d.ts +11 -0
  77. package/dist/{esm/wm-pagination.entry.js → components/wm-pagination.js} +45 -17
  78. package/dist/components/wm-progress-indicator.d.ts +11 -0
  79. package/dist/{esm/wm-progress-indicator_3.entry.js → components/wm-progress-indicator.js} +52 -104
  80. package/dist/components/wm-progress-monitor.d.ts +11 -0
  81. package/dist/components/wm-progress-monitor.js +93 -0
  82. package/dist/components/wm-progress-slice.d.ts +11 -0
  83. package/dist/components/wm-progress-slice.js +37 -0
  84. package/dist/components/wm-search.d.ts +11 -0
  85. package/dist/{esm/wm-search.entry.js → components/wm-search.js} +76 -15
  86. package/dist/components/wm-select.d.ts +11 -0
  87. package/dist/components/wm-select.js +6 -0
  88. package/dist/components/wm-select2.js +294 -0
  89. package/dist/components/wm-snackbar.d.ts +11 -0
  90. package/dist/{esm/wm-snackbar.entry.js → components/wm-snackbar.js} +41 -16
  91. package/dist/components/wm-tab-item.d.ts +11 -0
  92. package/dist/components/wm-tab-item.js +85 -0
  93. package/dist/components/wm-tab-list.d.ts +11 -0
  94. package/dist/{cjs/wm-uploader.cjs.entry.js → components/wm-tab-list.js} +174 -281
  95. package/dist/components/wm-tab-panel.d.ts +11 -0
  96. package/dist/{esm/wm-file-list.entry.js → components/wm-tab-panel.js} +46 -12
  97. package/dist/components/wm-tag-input.d.ts +11 -0
  98. package/dist/{esm/wm-tag-input.entry.js → components/wm-tag-input.js} +64 -32
  99. package/dist/components/wm-tag-option.d.ts +11 -0
  100. package/dist/components/wm-tag-option.js +63 -0
  101. package/dist/components/wm-textarea.d.ts +11 -0
  102. package/dist/{esm/wm-textarea.entry.js → components/wm-textarea.js} +47 -17
  103. package/dist/components/wm-timepicker.d.ts +11 -0
  104. package/dist/{esm/wm-timepicker.entry.js → components/wm-timepicker.js} +51 -20
  105. package/dist/components/wm-toggletip.d.ts +11 -0
  106. package/dist/{esm/wm-toggletip.entry.js → components/wm-toggletip.js} +38 -16
  107. package/dist/components/wm-uploader.d.ts +11 -0
  108. package/dist/{esm/wm-uploader.entry.js → components/wm-uploader.js} +52 -24
  109. package/dist/components/wm-wrapper.d.ts +11 -0
  110. package/dist/components/wm-wrapper.js +34 -0
  111. package/dist/types/stencil-public-runtime.d.ts +31 -10
  112. package/package.json +4 -8
  113. package/dist/cjs/chartFunctions-a1981e06.js +0 -732
  114. package/dist/cjs/functions-4b187487.js +0 -9679
  115. package/dist/cjs/global-4e034486.js +0 -85
  116. package/dist/cjs/index-e86c28b6.js +0 -2649
  117. package/dist/cjs/index.cjs.js +0 -2
  118. package/dist/cjs/interfaces-85d78ae9.js +0 -37
  119. package/dist/cjs/intl-7fd0760e.js +0 -283
  120. package/dist/cjs/loader.cjs.js +0 -14
  121. package/dist/cjs/priv-calendar.cjs.entry.js +0 -573
  122. package/dist/cjs/priv-navigator-button.cjs.entry.js +0 -28
  123. package/dist/cjs/priv-navigator-item.cjs.entry.js +0 -34
  124. package/dist/cjs/priv-option-list.cjs.entry.js +0 -392
  125. package/dist/cjs/ripple.cjs.js +0 -24
  126. package/dist/cjs/wm-action-menu_2.cjs.entry.js +0 -333
  127. package/dist/cjs/wm-button.cjs.entry.js +0 -206
  128. package/dist/cjs/wm-chart-slice.cjs.entry.js +0 -27
  129. package/dist/cjs/wm-chart.cjs.entry.js +0 -162
  130. package/dist/cjs/wm-date-range.cjs.entry.js +0 -483
  131. package/dist/cjs/wm-datepicker.cjs.entry.js +0 -253
  132. package/dist/cjs/wm-file.cjs.entry.js +0 -193
  133. package/dist/cjs/wm-line-chart.cjs.entry.js +0 -460
  134. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +0 -214
  135. package/dist/cjs/wm-modal_3.cjs.entry.js +0 -212
  136. package/dist/cjs/wm-navigation_3.cjs.entry.js +0 -185
  137. package/dist/cjs/wm-navigator.cjs.entry.js +0 -326
  138. package/dist/cjs/wm-nested-select.cjs.entry.js +0 -314
  139. package/dist/cjs/wm-option_2.cjs.entry.js +0 -425
  140. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +0 -202
  141. package/dist/cjs/wm-snackbar.cjs.entry.js +0 -181
  142. package/dist/cjs/wm-tab-item_3.cjs.entry.js +0 -260
  143. package/dist/cjs/wm-tag-input.cjs.entry.js +0 -891
  144. package/dist/cjs/wm-tag-option.cjs.entry.js +0 -43
  145. package/dist/cjs/wm-timepicker.cjs.entry.js +0 -306
  146. package/dist/cjs/wm-toggletip.cjs.entry.js +0 -182
  147. package/dist/cjs/wm-wrapper.cjs.entry.js +0 -21
  148. package/dist/collection/collection-manifest.json +0 -191
  149. package/dist/collection/components/charts/chartFunctions.js +0 -665
  150. package/dist/collection/components/charts/chartFunctions.spec.js +0 -16
  151. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +0 -908
  152. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.e2e.js +0 -81
  153. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +0 -257
  154. package/dist/collection/components/charts/screenshots.e2e.js +0 -96
  155. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +0 -125
  156. package/dist/collection/components/charts/wm-chart/wm-chart.css +0 -1274
  157. package/dist/collection/components/charts/wm-chart/wm-chart.e2e.js +0 -213
  158. package/dist/collection/components/charts/wm-chart/wm-chart.js +0 -422
  159. package/dist/collection/components/charts/wm-chart/wm-chart.spec.js +0 -37
  160. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +0 -1067
  161. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.e2e.js +0 -176
  162. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +0 -723
  163. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.spec.js +0 -163
  164. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +0 -1274
  165. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +0 -264
  166. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +0 -909
  167. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.e2e.js +0 -69
  168. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +0 -151
  169. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.spec.js +0 -79
  170. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +0 -121
  171. package/dist/collection/components/datepickers/datepicker.css +0 -1043
  172. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +0 -1279
  173. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +0 -840
  174. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.spec.js +0 -89
  175. package/dist/collection/components/datepickers/wm-date-range.e2e.js +0 -443
  176. package/dist/collection/components/datepickers/wm-date-range.js +0 -845
  177. package/dist/collection/components/datepickers/wm-date-range.spec.js +0 -22
  178. package/dist/collection/components/datepickers/wm-datepicker.e2e.js +0 -382
  179. package/dist/collection/components/datepickers/wm-datepicker.js +0 -520
  180. package/dist/collection/components/datepickers/wm-datepicker.spec.js +0 -21
  181. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +0 -918
  182. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +0 -778
  183. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +0 -1181
  184. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +0 -620
  185. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +0 -830
  186. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +0 -258
  187. package/dist/collection/components/selects/wm-option/wm-option.css +0 -931
  188. package/dist/collection/components/selects/wm-option/wm-option.e2e.js +0 -22
  189. package/dist/collection/components/selects/wm-option/wm-option.js +0 -530
  190. package/dist/collection/components/selects/wm-option/wm-option.spec.js +0 -63
  191. package/dist/collection/components/selects/wm-select/wm-select.css +0 -1104
  192. package/dist/collection/components/selects/wm-select/wm-select.e2e.js +0 -521
  193. package/dist/collection/components/selects/wm-select/wm-select.js +0 -584
  194. package/dist/collection/components/selects/wm-select/wm-select.spec.js +0 -271
  195. package/dist/collection/components/wm-action-menu/wm-action-menu.css +0 -891
  196. package/dist/collection/components/wm-action-menu/wm-action-menu.e2e.js +0 -200
  197. package/dist/collection/components/wm-action-menu/wm-action-menu.js +0 -435
  198. package/dist/collection/components/wm-action-menu/wm-action-menu.spec.js +0 -48
  199. package/dist/collection/components/wm-button/wm-button.css +0 -1261
  200. package/dist/collection/components/wm-button/wm-button.e2e.js +0 -55
  201. package/dist/collection/components/wm-button/wm-button.js +0 -489
  202. package/dist/collection/components/wm-button/wm-button.spec.js +0 -74
  203. package/dist/collection/components/wm-file/wm-file.css +0 -927
  204. package/dist/collection/components/wm-file/wm-file.js +0 -412
  205. package/dist/collection/components/wm-file/wm-file.spec.js +0 -194
  206. package/dist/collection/components/wm-file-list/wm-file-list.css +0 -820
  207. package/dist/collection/components/wm-file-list/wm-file-list.js +0 -45
  208. package/dist/collection/components/wm-file-list/wm-file-list.spec.js +0 -69
  209. package/dist/collection/components/wm-input/wm-input.css +0 -992
  210. package/dist/collection/components/wm-input/wm-input.e2e.js +0 -32
  211. package/dist/collection/components/wm-input/wm-input.js +0 -471
  212. package/dist/collection/components/wm-input/wm-input.spec.js +0 -173
  213. package/dist/collection/components/wm-menuitem/wm-menuitem.css +0 -891
  214. package/dist/collection/components/wm-menuitem/wm-menuitem.e2e.js +0 -23
  215. package/dist/collection/components/wm-menuitem/wm-menuitem.js +0 -419
  216. package/dist/collection/components/wm-menuitem/wm-menuitem.spec.js +0 -54
  217. package/dist/collection/components/wm-modal/wm-modal-footer.css +0 -845
  218. package/dist/collection/components/wm-modal/wm-modal-footer.js +0 -141
  219. package/dist/collection/components/wm-modal/wm-modal-footer.spec.js +0 -11
  220. package/dist/collection/components/wm-modal/wm-modal-header.css +0 -844
  221. package/dist/collection/components/wm-modal/wm-modal-header.js +0 -78
  222. package/dist/collection/components/wm-modal/wm-modal-header.spec.js +0 -8
  223. package/dist/collection/components/wm-modal/wm-modal.css +0 -891
  224. package/dist/collection/components/wm-modal/wm-modal.e2e.js +0 -104
  225. package/dist/collection/components/wm-modal/wm-modal.js +0 -350
  226. package/dist/collection/components/wm-modal/wm-modal.spec.js +0 -30
  227. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +0 -852
  228. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +0 -138
  229. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +0 -846
  230. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +0 -82
  231. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +0 -927
  232. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +0 -362
  233. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +0 -847
  234. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +0 -119
  235. package/dist/collection/components/wm-navigation/wm-navigation-item.css +0 -856
  236. package/dist/collection/components/wm-navigation/wm-navigation-item.js +0 -98
  237. package/dist/collection/components/wm-navigation/wm-navigation.css +0 -898
  238. package/dist/collection/components/wm-navigation/wm-navigation.e2e.js +0 -102
  239. package/dist/collection/components/wm-navigation/wm-navigation.js +0 -190
  240. package/dist/collection/components/wm-navigation/wm-navigation.spec.js +0 -91
  241. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +0 -849
  242. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.e2e.js +0 -50
  243. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +0 -86
  244. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +0 -830
  245. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +0 -124
  246. package/dist/collection/components/wm-navigator/wm-navigator.css +0 -903
  247. package/dist/collection/components/wm-navigator/wm-navigator.e2e.js +0 -209
  248. package/dist/collection/components/wm-navigator/wm-navigator.js +0 -496
  249. package/dist/collection/components/wm-navigator/wm-navigator.spec.js +0 -177
  250. package/dist/collection/components/wm-pagination/wm-pagination.css +0 -971
  251. package/dist/collection/components/wm-pagination/wm-pagination.e2e.js +0 -312
  252. package/dist/collection/components/wm-pagination/wm-pagination.js +0 -363
  253. package/dist/collection/components/wm-search/wm-search.css +0 -895
  254. package/dist/collection/components/wm-search/wm-search.e2e.js +0 -76
  255. package/dist/collection/components/wm-search/wm-search.js +0 -426
  256. package/dist/collection/components/wm-search/wm-search.spec.js +0 -71
  257. package/dist/collection/components/wm-snackbar/wm-snackbar.css +0 -1077
  258. package/dist/collection/components/wm-snackbar/wm-snackbar.e2e.js +0 -112
  259. package/dist/collection/components/wm-snackbar/wm-snackbar.js +0 -269
  260. package/dist/collection/components/wm-snackbar/wm-snackbar.spec.js +0 -9
  261. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +0 -868
  262. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +0 -175
  263. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +0 -840
  264. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +0 -273
  265. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +0 -825
  266. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +0 -87
  267. package/dist/collection/components/wm-tabs/wm-tabs.e2e.js +0 -91
  268. package/dist/collection/components/wm-tabs/wm-tabs.spec.js +0 -12
  269. package/dist/collection/components/wm-tag-input/wm-tag-input.css +0 -1275
  270. package/dist/collection/components/wm-tag-input/wm-tag-input.e2e.js +0 -204
  271. package/dist/collection/components/wm-tag-input/wm-tag-input.js +0 -1227
  272. package/dist/collection/components/wm-tag-input/wm-tag-input.spec.js +0 -195
  273. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +0 -243
  274. package/dist/collection/components/wm-textarea/wm-textarea.css +0 -979
  275. package/dist/collection/components/wm-textarea/wm-textarea.e2e.js +0 -41
  276. package/dist/collection/components/wm-textarea/wm-textarea.js +0 -313
  277. package/dist/collection/components/wm-textarea/wm-textarea.spec.js +0 -79
  278. package/dist/collection/components/wm-timepicker/wm-timepicker.css +0 -1093
  279. package/dist/collection/components/wm-timepicker/wm-timepicker.e2e.js +0 -163
  280. package/dist/collection/components/wm-timepicker/wm-timepicker.js +0 -544
  281. package/dist/collection/components/wm-timepicker/wm-timepicker.spec.js +0 -147
  282. package/dist/collection/components/wm-toggletip/wm-toggletip.css +0 -1152
  283. package/dist/collection/components/wm-toggletip/wm-toggletip.e2e.js +0 -69
  284. package/dist/collection/components/wm-toggletip/wm-toggletip.js +0 -289
  285. package/dist/collection/components/wm-toggletip/wm-toggletip.spec.js +0 -21
  286. package/dist/collection/components/wm-uploader/wm-uploader.css +0 -1563
  287. package/dist/collection/components/wm-uploader/wm-uploader.e2e.js +0 -70
  288. package/dist/collection/components/wm-uploader/wm-uploader.js +0 -603
  289. package/dist/collection/components/wm-uploader/wm-uploader.spec.js +0 -234
  290. package/dist/collection/components/wm-wrapper/wm-wrapper.js +0 -28
  291. package/dist/collection/dev/button.js +0 -0
  292. package/dist/collection/dev/chart-small.js +0 -56
  293. package/dist/collection/dev/chart.js +0 -18
  294. package/dist/collection/dev/date-range.js +0 -6
  295. package/dist/collection/dev/datepicker.js +0 -46
  296. package/dist/collection/dev/file-list.js +0 -16
  297. package/dist/collection/dev/file.js +0 -0
  298. package/dist/collection/dev/input.js +0 -6
  299. package/dist/collection/dev/line-chart.js +0 -0
  300. package/dist/collection/dev/modal.js +0 -48
  301. package/dist/collection/dev/navigation.js +0 -13
  302. package/dist/collection/dev/navigator.js +0 -34
  303. package/dist/collection/dev/nested-select.js +0 -36
  304. package/dist/collection/dev/pagination.js +0 -7
  305. package/dist/collection/dev/progress-monitor.js +0 -0
  306. package/dist/collection/dev/pss-modal.js +0 -8
  307. package/dist/collection/dev/scripts.js +0 -49
  308. package/dist/collection/dev/search.js +0 -72
  309. package/dist/collection/dev/select.js +0 -57
  310. package/dist/collection/dev/snackbar.js +0 -54
  311. package/dist/collection/dev/tabs.js +0 -44
  312. package/dist/collection/dev/tag-input.js +0 -32
  313. package/dist/collection/dev/textarea.js +0 -28
  314. package/dist/collection/dev/timepicker.js +0 -32
  315. package/dist/collection/dev/toggletip.js +0 -9
  316. package/dist/collection/dev/uploader.js +0 -139
  317. package/dist/collection/global/__mocks__/functions.js +0 -6
  318. package/dist/collection/global/functions.js +0 -825
  319. package/dist/collection/global/functions.spec.js +0 -126
  320. package/dist/collection/global/intl.js +0 -274
  321. package/dist/collection/global/services/__mocks__/http-service.js +0 -130
  322. package/dist/collection/global/services/http-service.js +0 -50
  323. package/dist/collection/lang/lang.js +0 -5
  324. package/dist/collection/lang/lang.spec.js +0 -20
  325. package/dist/collection/lang/missing.js +0 -43
  326. package/dist/collection/lang/piglatin.js +0 -101
  327. package/dist/esm/functions-00e1916b.js +0 -9639
  328. package/dist/esm/global-c76064cb.js +0 -83
  329. package/dist/esm/index-558b5a82.js +0 -2618
  330. package/dist/esm/index.js +0 -1
  331. package/dist/esm/interfaces-cc5b177f.js +0 -34
  332. package/dist/esm/loader.js +0 -10
  333. package/dist/esm/polyfills/core-js.js +0 -11
  334. package/dist/esm/polyfills/dom.js +0 -79
  335. package/dist/esm/polyfills/es5-html-element.js +0 -1
  336. package/dist/esm/polyfills/index.js +0 -34
  337. package/dist/esm/polyfills/system.js +0 -6
  338. package/dist/esm/ripple.js +0 -19
  339. package/dist/esm/wm-action-menu_2.entry.js +0 -328
  340. package/dist/esm/wm-chart-slice.entry.js +0 -23
  341. package/dist/esm/wm-modal-pss_3.entry.js +0 -208
  342. package/dist/esm/wm-modal_3.entry.js +0 -206
  343. package/dist/esm/wm-navigation_3.entry.js +0 -179
  344. package/dist/esm/wm-option_2.entry.js +0 -420
  345. package/dist/esm/wm-tab-item_3.entry.js +0 -254
  346. package/dist/esm/wm-tag-option.entry.js +0 -39
  347. package/dist/esm/wm-wrapper.entry.js +0 -17
  348. package/dist/esm-es5/chartFunctions-9099c7e9.js +0 -1
  349. package/dist/esm-es5/functions-00e1916b.js +0 -1
  350. package/dist/esm-es5/global-c76064cb.js +0 -1
  351. package/dist/esm-es5/index-558b5a82.js +0 -1
  352. package/dist/esm-es5/index.js +0 -0
  353. package/dist/esm-es5/interfaces-cc5b177f.js +0 -1
  354. package/dist/esm-es5/intl-a6f16883.js +0 -1
  355. package/dist/esm-es5/loader.js +0 -1
  356. package/dist/esm-es5/priv-calendar.entry.js +0 -1
  357. package/dist/esm-es5/priv-chart-popover.entry.js +0 -1
  358. package/dist/esm-es5/priv-navigator-button.entry.js +0 -1
  359. package/dist/esm-es5/priv-navigator-item.entry.js +0 -1
  360. package/dist/esm-es5/priv-option-list.entry.js +0 -1
  361. package/dist/esm-es5/ripple.js +0 -1
  362. package/dist/esm-es5/wm-action-menu_2.entry.js +0 -1
  363. package/dist/esm-es5/wm-button.entry.js +0 -1
  364. package/dist/esm-es5/wm-chart-slice.entry.js +0 -1
  365. package/dist/esm-es5/wm-chart.entry.js +0 -1
  366. package/dist/esm-es5/wm-date-range.entry.js +0 -1
  367. package/dist/esm-es5/wm-datepicker.entry.js +0 -1
  368. package/dist/esm-es5/wm-file-list.entry.js +0 -1
  369. package/dist/esm-es5/wm-file.entry.js +0 -1
  370. package/dist/esm-es5/wm-input.entry.js +0 -1
  371. package/dist/esm-es5/wm-line-chart.entry.js +0 -1
  372. package/dist/esm-es5/wm-modal-pss_3.entry.js +0 -1
  373. package/dist/esm-es5/wm-modal_3.entry.js +0 -1
  374. package/dist/esm-es5/wm-navigation_3.entry.js +0 -1
  375. package/dist/esm-es5/wm-navigator.entry.js +0 -1
  376. package/dist/esm-es5/wm-nested-select.entry.js +0 -1
  377. package/dist/esm-es5/wm-optgroup.entry.js +0 -1
  378. package/dist/esm-es5/wm-option_2.entry.js +0 -1
  379. package/dist/esm-es5/wm-pagination.entry.js +0 -1
  380. package/dist/esm-es5/wm-progress-indicator_3.entry.js +0 -1
  381. package/dist/esm-es5/wm-search.entry.js +0 -1
  382. package/dist/esm-es5/wm-snackbar.entry.js +0 -1
  383. package/dist/esm-es5/wm-tab-item_3.entry.js +0 -1
  384. package/dist/esm-es5/wm-tag-input.entry.js +0 -1
  385. package/dist/esm-es5/wm-tag-option.entry.js +0 -1
  386. package/dist/esm-es5/wm-textarea.entry.js +0 -1
  387. package/dist/esm-es5/wm-timepicker.entry.js +0 -1
  388. package/dist/esm-es5/wm-toggletip.entry.js +0 -1
  389. package/dist/esm-es5/wm-uploader.entry.js +0 -1
  390. package/dist/esm-es5/wm-wrapper.entry.js +0 -1
  391. package/dist/index.cjs.js +0 -1
  392. package/dist/index.js +0 -1
  393. package/dist/loader/cdn.js +0 -3
  394. package/dist/loader/index.cjs.js +0 -3
  395. package/dist/loader/index.d.ts +0 -21
  396. package/dist/loader/index.es2017.js +0 -3
  397. package/dist/loader/index.js +0 -4
  398. package/dist/loader/package.json +0 -11
  399. package/dist/ripple/index.esm.js +0 -0
  400. package/dist/ripple/p-05ae54d7.entry.js +0 -1
  401. package/dist/ripple/p-0d89d63c.system.entry.js +0 -1
  402. package/dist/ripple/p-118c47eb.system.entry.js +0 -1
  403. package/dist/ripple/p-1a4b6b02.system.entry.js +0 -1
  404. package/dist/ripple/p-1a4b7504.system.entry.js +0 -1
  405. package/dist/ripple/p-1a951dfb.entry.js +0 -1
  406. package/dist/ripple/p-1c8f550f.system.entry.js +0 -1
  407. package/dist/ripple/p-1f751b87.js +0 -1
  408. package/dist/ripple/p-1fac5bf9.js +0 -1
  409. package/dist/ripple/p-20a8f732.system.entry.js +0 -1
  410. package/dist/ripple/p-249b56fb.entry.js +0 -1
  411. package/dist/ripple/p-249d13a1.system.entry.js +0 -1
  412. package/dist/ripple/p-26906899.entry.js +0 -1
  413. package/dist/ripple/p-2732bddd.js +0 -1
  414. package/dist/ripple/p-28119645.system.entry.js +0 -1
  415. package/dist/ripple/p-2f37f3ee.system.js +0 -1
  416. package/dist/ripple/p-32bf3f5b.system.entry.js +0 -1
  417. package/dist/ripple/p-335c03d3.system.entry.js +0 -1
  418. package/dist/ripple/p-363b534b.entry.js +0 -1
  419. package/dist/ripple/p-393e4636.js +0 -1
  420. package/dist/ripple/p-39f79d71.system.entry.js +0 -1
  421. package/dist/ripple/p-3a231f4b.system.entry.js +0 -1
  422. package/dist/ripple/p-3d4bb85f.entry.js +0 -1
  423. package/dist/ripple/p-4228de00.entry.js +0 -1
  424. package/dist/ripple/p-42fa7a77.system.js +0 -1
  425. package/dist/ripple/p-48e09589.entry.js +0 -1
  426. package/dist/ripple/p-4f8fe1d1.system.js +0 -1
  427. package/dist/ripple/p-50ea2036.system.js +0 -1
  428. package/dist/ripple/p-522ecb7d.system.entry.js +0 -1
  429. package/dist/ripple/p-54d6f0f9.entry.js +0 -1
  430. package/dist/ripple/p-568c595f.js +0 -2
  431. package/dist/ripple/p-56aeee6e.system.entry.js +0 -1
  432. package/dist/ripple/p-5e6a4f70.system.js +0 -1
  433. package/dist/ripple/p-5f082360.system.entry.js +0 -1
  434. package/dist/ripple/p-5f5fe905.js +0 -1
  435. package/dist/ripple/p-617c2c75.entry.js +0 -1
  436. package/dist/ripple/p-6524c53e.system.entry.js +0 -1
  437. package/dist/ripple/p-65d26233.system.entry.js +0 -1
  438. package/dist/ripple/p-6834a6d3.entry.js +0 -1
  439. package/dist/ripple/p-68e04222.entry.js +0 -1
  440. package/dist/ripple/p-68fddfaa.system.entry.js +0 -1
  441. package/dist/ripple/p-694903e6.system.entry.js +0 -1
  442. package/dist/ripple/p-73ca2f26.system.js +0 -1
  443. package/dist/ripple/p-7b6a65f8.system.entry.js +0 -1
  444. package/dist/ripple/p-7b7e1eb5.system.entry.js +0 -1
  445. package/dist/ripple/p-88ebddd7.entry.js +0 -1
  446. package/dist/ripple/p-8c1d27a7.entry.js +0 -1
  447. package/dist/ripple/p-8e9c24f3.entry.js +0 -1
  448. package/dist/ripple/p-8f836507.system.entry.js +0 -1
  449. package/dist/ripple/p-94495341.entry.js +0 -1
  450. package/dist/ripple/p-958331bf.entry.js +0 -1
  451. package/dist/ripple/p-9872623b.entry.js +0 -1
  452. package/dist/ripple/p-9ab3c088.system.entry.js +0 -1
  453. package/dist/ripple/p-9aedd599.entry.js +0 -1
  454. package/dist/ripple/p-9b848151.entry.js +0 -1
  455. package/dist/ripple/p-a04ef164.system.entry.js +0 -1
  456. package/dist/ripple/p-a78bb423.system.entry.js +0 -1
  457. package/dist/ripple/p-a880d9a0.system.entry.js +0 -1
  458. package/dist/ripple/p-ab8d78cc.system.js +0 -2
  459. package/dist/ripple/p-adc254e6.entry.js +0 -1
  460. package/dist/ripple/p-b165d61a.entry.js +0 -1
  461. package/dist/ripple/p-b39377c7.entry.js +0 -1
  462. package/dist/ripple/p-b9bca547.entry.js +0 -1
  463. package/dist/ripple/p-bae2c236.entry.js +0 -1
  464. package/dist/ripple/p-c53f3704.system.entry.js +0 -1
  465. package/dist/ripple/p-c56ff16f.entry.js +0 -1
  466. package/dist/ripple/p-c8cf09a2.system.entry.js +0 -1
  467. package/dist/ripple/p-cbdceb6e.entry.js +0 -1
  468. package/dist/ripple/p-cc813406.system.js +0 -1
  469. package/dist/ripple/p-d20a0f0c.system.entry.js +0 -1
  470. package/dist/ripple/p-d6111226.entry.js +0 -1
  471. package/dist/ripple/p-da68c87c.entry.js +0 -1
  472. package/dist/ripple/p-ddef82fa.system.entry.js +0 -1
  473. package/dist/ripple/p-dee6d5a3.entry.js +0 -1
  474. package/dist/ripple/p-e55d5371.entry.js +0 -1
  475. package/dist/ripple/p-e8c22f01.system.entry.js +0 -1
  476. package/dist/ripple/p-f555831b.entry.js +0 -1
  477. package/dist/ripple/p-f5c40e9e.system.entry.js +0 -1
  478. package/dist/ripple/p-fa09191b.system.entry.js +0 -1
  479. package/dist/ripple/p-fdfca58b.entry.js +0 -1
  480. package/dist/ripple/ripple.css +0 -1
  481. package/dist/ripple/ripple.esm.js +0 -1
  482. package/dist/ripple/ripple.js +0 -127
  483. /package/dist/{collection/dev/action-menu.js → types/test-setup.d.ts} +0 -0
@@ -1,312 +0,0 @@
1
- import { newE2EPage } from "@stencil/core/testing";
2
- describe("wm-pagination", () => {
3
- let page, el;
4
- beforeEach(async () => {
5
- page = await newE2EPage();
6
- await page.setContent("<wm-pagination total-items='43' items-per-page='10' current-page='1'></wm-pagination>");
7
- el = await page.find("wm-pagination");
8
- await page.evaluate(async () => {
9
- await document.addEventListener("wmPaginationPageClicked", function (ev) {
10
- let pagin = document.querySelector("wm-pagination");
11
- pagin.currentPage = +ev.target.value;
12
- });
13
- });
14
- });
15
- // HANDLES ONE PAGE (FALLBACK IF DEV'S CONDITIONAL RENDERING FAILS)
16
- it("does not render pagination", async () => {
17
- el.setAttribute("current-page", "1");
18
- el.setAttribute("total-items", "5");
19
- el.setAttribute("items-per-page", "10");
20
- await page.waitForChanges();
21
- const current = await page.find("wm-pagination >>> nav");
22
- expect(current).toBe(null);
23
- });
24
- //HANDLES SHORT PAGINATION (FIVE PAGES OR LESS )
25
- it("indicates the current page correctly", async () => {
26
- el.setAttribute("current-page", "5");
27
- el.setAttribute("total-items", "47");
28
- el.setAttribute("items-per-page", "10");
29
- await page.waitForChanges();
30
- let current = await page.find("wm-pagination >>> [aria-current='page']");
31
- let val = await current.getProperty("value");
32
- expect(val).toEqual("5");
33
- });
34
- it("displays the correct number of buttons", async () => {
35
- el.setAttribute("current-page", "2");
36
- el.setAttribute("total-items", "47");
37
- el.setAttribute("items-per-page", "10");
38
- await page.waitForChanges();
39
- //There should be prev, five page numbers and next
40
- let buttons = await page.findAll("wm-pagination >>> button");
41
- expect(buttons.length).toBe(7);
42
- el.setAttribute("current-page", "2");
43
- el.setAttribute("total-items", "11");
44
- el.setAttribute("items-per-page", "10");
45
- await page.waitForChanges();
46
- //There should now be prev, two page numbers, and next
47
- buttons = await page.findAll("wm-pagination >>> button");
48
- expect(buttons.length).toBe(4);
49
- });
50
- it("disables previous and next", async () => {
51
- el.setAttribute("current-page", "5");
52
- el.setAttribute("total-items", "47");
53
- el.setAttribute("items-per-page", "10");
54
- await page.waitForChanges();
55
- let buttons = await page.findAll("wm-pagination >>> button");
56
- let prev = await buttons[0];
57
- let next = await buttons[6];
58
- expect(prev).not.toHaveAttribute("disabled");
59
- expect(next).toHaveAttribute("disabled");
60
- el.setAttribute("current-page", "1");
61
- await page.waitForChanges();
62
- buttons = await page.findAll("wm-pagination >>> button");
63
- prev = await buttons[0];
64
- next = await buttons[6];
65
- expect(next).not.toHaveAttribute("disabled");
66
- expect(prev).toHaveAttribute("disabled");
67
- });
68
- //Add tests for keyboard navigation to simulate events that update the current page
69
- // HANDLES LONG PAGINATION (SIX OR MORE PAGES)
70
- it("indicates the current page correctly", async () => {
71
- el.setAttribute("current-page", "6");
72
- el.setAttribute("total-items", "147");
73
- el.setAttribute("items-per-page", "10");
74
- await page.waitForChanges();
75
- let current = await page.find("wm-pagination >>> [aria-current='page']");
76
- let val = await current.getProperty("value");
77
- expect(val).toEqual("6");
78
- });
79
- it("displays five page number buttons regardless of the current page", async () => {
80
- el.setAttribute("current-page", "3");
81
- el.setAttribute("total-items", "147");
82
- el.setAttribute("items-per-page", "10");
83
- await page.waitForChanges();
84
- let buttons = await page.findAll("wm-pagination >>> button");
85
- //five page number buttons, plus the two prev/next buttons that always render
86
- expect(buttons.length).toBe(7);
87
- el.setAttribute("current-page", "15");
88
- el.setAttribute("total-items", "147");
89
- el.setAttribute("items-per-page", "10");
90
- await page.waitForChanges();
91
- buttons = await page.findAll("wm-pagination >>> button");
92
- //five page number buttons, plus the two prev/next buttons that always render
93
- expect(buttons.length).toBe(7);
94
- el.setAttribute("current-page", "7");
95
- el.setAttribute("total-items", "147");
96
- el.setAttribute("items-per-page", "10");
97
- await page.waitForChanges();
98
- buttons = await page.findAll("wm-pagination >>> button");
99
- //five page number buttons, plus the two prev/next buttons that always render
100
- expect(buttons.length).toBe(7);
101
- });
102
- it("displays only the right hand ellipsis when current page is within the first four pages", async () => {
103
- el.setAttribute("current-page", "3");
104
- el.setAttribute("total-items", "147");
105
- el.setAttribute("items-per-page", "10");
106
- await page.waitForChanges();
107
- const displayedElements = await page.find("wm-pagination >>> div.pagebtncontainer");
108
- //Check that page number, not left hand ellipsis, is displayed
109
- expect(displayedElements.childNodes[2].innerHTML).toBe("2");
110
- //Check that ellipsis is displayed in the right spot
111
- expect(displayedElements.childNodes[5].innerHTML).toBe("...");
112
- });
113
- it("displays only the left hand ellipsis only when current page is within the last four pages", async () => {
114
- el.setAttribute("current-page", "13");
115
- el.setAttribute("total-items", "147");
116
- el.setAttribute("items-per-page", "10");
117
- await page.waitForChanges();
118
- const displayedElements = await page.find("wm-pagination >>> div.pagebtncontainer");
119
- //Check that page number, not right hand ellipsis, is displayed
120
- expect(displayedElements.childNodes[5].innerHTML).toBe("14");
121
- //Check that ellipsis is displayed in the right spot
122
- expect(displayedElements.childNodes[2].innerHTML).toBe("...");
123
- });
124
- it("displays both sets of ellipsis when the total page count is greater than 6 and the current page is not within the first four or the last four pages", async () => {
125
- el.setAttribute("current-page", "8");
126
- el.setAttribute("total-items", "147");
127
- el.setAttribute("items-per-page", "10");
128
- await page.waitForChanges();
129
- const displayedElements = await page.find("wm-pagination >>> div.pagebtncontainer");
130
- //left ellipsis
131
- expect(displayedElements.childNodes[2].innerHTML).toBe("...");
132
- //right ellipsis
133
- expect(displayedElements.childNodes[6].innerHTML).toBe("...");
134
- });
135
- it("fires an event when a button is triggered", async () => {
136
- el.setAttribute("current-page", "3");
137
- el.setAttribute("total-items", "147");
138
- el.setAttribute("items-per-page", "10");
139
- await page.waitForChanges();
140
- await page.keyboard.press("Tab"); // Previous btn
141
- await page.waitForChanges();
142
- await page.keyboard.press("Enter");
143
- await page.waitForChanges();
144
- let current = await page.find("wm-pagination >>> [aria-current='page']");
145
- expect(current.id).toBe("wm-2");
146
- });
147
- // A11Y
148
- // UX requirements, cf. https://watermarkinsights.atlassian.net/wiki/spaces/WDS/pages/51938484/Pagination
149
- it("allows user to tab through the clickable pagination elements", async () => {
150
- el.setAttribute("current-page", "5");
151
- el.setAttribute("total-items", "97");
152
- el.setAttribute("items-per-page", "10");
153
- await page.waitForChanges();
154
- // User should be able to tab through the clickable pagination elements. Navigating below to page 5
155
- await page.keyboard.press("Tab");
156
- await page.waitForChanges();
157
- await page.keyboard.press("Tab");
158
- await page.waitForChanges();
159
- await page.keyboard.press("Tab");
160
- await page.waitForChanges();
161
- await page.keyboard.press("Tab");
162
- await page.waitForChanges();
163
- let activeElId = await page.evaluate(async () => {
164
- let el = await document.activeElement.shadowRoot.activeElement;
165
- return el.id;
166
- });
167
- expect(activeElId).toBe("wm-5");
168
- //Navigating below to next button
169
- await page.keyboard.press("Tab");
170
- await page.waitForChanges();
171
- await page.keyboard.press("Tab");
172
- await page.waitForChanges();
173
- await page.keyboard.press("Tab");
174
- await page.waitForChanges();
175
- activeElId = await page.evaluate(async () => {
176
- let el = await document.activeElement.shadowRoot.activeElement;
177
- return el.id;
178
- });
179
- expect(activeElId).toBe("next");
180
- });
181
- it("updates the current page when enter is pressed on a page button and keeps focus on the selected page", async () => {
182
- el.setAttribute("current-page", "5");
183
- el.setAttribute("total-items", "97");
184
- el.setAttribute("items-per-page", "10");
185
- await page.waitForChanges();
186
- //Navigate to page 6 and click on it
187
- await page.keyboard.press("Tab");
188
- await page.waitForChanges();
189
- await page.keyboard.press("Tab");
190
- await page.waitForChanges();
191
- await page.keyboard.press("Tab");
192
- await page.waitForChanges();
193
- await page.keyboard.press("Tab");
194
- await page.waitForChanges();
195
- await page.keyboard.press("Tab");
196
- await page.waitForChanges();
197
- await page.keyboard.press("Enter");
198
- await page.waitForChanges();
199
- //Current page should update to page 6
200
- let current = await page.find("wm-pagination >>> [aria-current='page']");
201
- let val = await current.getProperty("value");
202
- expect(val).toEqual("6");
203
- //Focus should remain on 6 even though button arrangement changes
204
- let activeElId = await page.evaluate(async () => {
205
- let el = await document.activeElement.shadowRoot.activeElement;
206
- return el.id;
207
- });
208
- expect(activeElId).toBe("wm-6");
209
- });
210
- it("decrements the current page when enter is pressed on the previous button, keeps focus on the previous button until it becomes disabled, and moves focus first page once it is disabled", async () => {
211
- el.setAttribute("current-page", "3");
212
- el.setAttribute("total-items", "97");
213
- el.setAttribute("items-per-page", "10");
214
- await page.waitForChanges();
215
- //Navigate to previous button
216
- await page.keyboard.press("Tab");
217
- await page.waitForChanges();
218
- await page.keyboard.press("Enter");
219
- await page.waitForChanges();
220
- //Current page should decrease by 1
221
- let current = await page.find("wm-pagination >>> [aria-current='page']");
222
- let val = await current.getProperty("value");
223
- expect(val).toEqual("2");
224
- //Focus should remain on previous button
225
- let activeElId = await page.evaluate(async () => {
226
- let el = await document.activeElement.shadowRoot.activeElement;
227
- return el.id;
228
- });
229
- expect(activeElId).toBe("previous");
230
- //Press previous again, reaching first page and disabling previous button
231
- await page.keyboard.press("Enter");
232
- await page.waitForChanges();
233
- current = await page.find("wm-pagination >>> [aria-current='page']");
234
- val = await current.getProperty("value");
235
- expect(val).toEqual("1");
236
- //Focus is shifted to first page button rather than flying out to body
237
- activeElId = await page.evaluate(async () => {
238
- let el = await document.activeElement.shadowRoot.activeElement;
239
- return el.id;
240
- });
241
- expect(activeElId).toBe("wm-1");
242
- });
243
- it("increments the current page when enter is pressed on the next button, keeps focus on the next button until it becomes disabled, and moves focus back to last page once it is disabled", async () => {
244
- el.setAttribute("current-page", "8");
245
- el.setAttribute("total-items", "97");
246
- el.setAttribute("items-per-page", "10");
247
- await page.waitForChanges();
248
- //Navigate to the next button and press enter
249
- await page.keyboard.press("Tab");
250
- await page.waitForChanges();
251
- await page.keyboard.press("Tab");
252
- await page.waitForChanges();
253
- await page.keyboard.press("Tab");
254
- await page.waitForChanges();
255
- await page.keyboard.press("Tab");
256
- await page.waitForChanges();
257
- await page.keyboard.press("Tab");
258
- await page.waitForChanges();
259
- await page.keyboard.press("Tab");
260
- await page.waitForChanges();
261
- await page.keyboard.press("Tab");
262
- await page.waitForChanges();
263
- await page.keyboard.press("Enter");
264
- await page.waitForChanges();
265
- //Current page should increase by 1
266
- let current = await page.find("wm-pagination >>> [aria-current='page']");
267
- let val = await current.getProperty("value");
268
- expect(val).toEqual("9");
269
- //Focus should remain on the next button
270
- let activeElId = await page.evaluate(async () => {
271
- let el = await document.activeElement.shadowRoot.activeElement;
272
- return el.id;
273
- });
274
- expect(activeElId).toBe("next");
275
- //Press next again
276
- await page.keyboard.press("Enter");
277
- await page.waitForChanges();
278
- //Last page is reached, and next button becomes disabled
279
- current = await page.find("wm-pagination >>> [aria-current='page']");
280
- val = await current.getProperty("value");
281
- expect(val).toEqual("10");
282
- //Rather than the focus shifting to the body once it is disabled, focus is brought to last page button
283
- activeElId = await page.evaluate(async () => {
284
- let el = await document.activeElement.shadowRoot.activeElement;
285
- return el.id;
286
- });
287
- expect(activeElId).toBe("wm-10");
288
- });
289
- it("sets labels dynamically so that screenreaders properly announce the navigable pagination elements", async () => {
290
- el.setAttribute("current-page", "3");
291
- el.setAttribute("total-items", "47");
292
- el.setAttribute("items-per-page", "10");
293
- await page.waitForChanges();
294
- let buttons = await page.findAll("wm-pagination >>> button");
295
- let notCurrentPage = buttons[2];
296
- expect(notCurrentPage).toEqualAttribute("aria-label", "Go to page 2");
297
- let currentPage = buttons[3];
298
- expect(currentPage).toEqualAttribute("aria-label", "");
299
- //Change current page number
300
- await page.keyboard.press("Tab");
301
- await page.waitForChanges();
302
- await page.keyboard.press("Enter");
303
- await page.waitForChanges();
304
- buttons = await page.findAll("wm-pagination >>> button");
305
- //Button 3 no longer as label indicating it's the current page
306
- notCurrentPage = buttons[3];
307
- expect(notCurrentPage).toEqualAttribute("aria-label", "Go to page 3");
308
- //Button 2 now has current page label
309
- currentPage = buttons[2];
310
- expect(currentPage).toEqualAttribute("aria-label", "");
311
- });
312
- });
@@ -1,363 +0,0 @@
1
- import { h } from "@stencil/core";
2
- import { debounce, intl } from "../../global/functions";
3
- import { globalMessages } from "../../global/intl";
4
- export class Pagination {
5
- constructor() {
6
- this.totalPages = 0;
7
- this.navigationLabel = intl.formatMessage({
8
- id: "pagination.navLabel",
9
- defaultMessage: "Pagination navigation.",
10
- description: "Label for a navigation HTML element within a pagination UI element",
11
- });
12
- this.nextPageButtonLabel = intl.formatMessage({
13
- id: "pagination.nextPageButtonLabel",
14
- defaultMessage: "Go to next page",
15
- description: "Page refers to a paginated list of items",
16
- });
17
- this.previousPageButtonLabel = intl.formatMessage({
18
- id: "pagination.previousPageButtonLabel",
19
- defaultMessage: "Go to previous page",
20
- description: "Page refers to a paginated list of items",
21
- });
22
- this.debouncedResize = debounce(() => (this.isLargeSize = this.el.clientWidth > 500), 100);
23
- this.getMiddlePageNums = () => {
24
- let coreBtns;
25
- // if pg is 1, 2 or 3
26
- if (this.currentPage < 4) {
27
- coreBtns = [2, 3, 4];
28
- }
29
- else if (this.currentPage > this.totalPages - 3) {
30
- coreBtns = [this.totalPages - 3, this.totalPages - 2, this.totalPages - 1];
31
- }
32
- else {
33
- coreBtns = [this.currentPage - 1, this.currentPage, this.currentPage + 1];
34
- }
35
- return coreBtns;
36
- };
37
- this.currentPage = 1;
38
- this.totalItems = undefined;
39
- this.itemsPerPage = undefined;
40
- this.value = 1;
41
- this.isLargeSize = window.innerWidth > 600;
42
- this.srAnnouncement = "";
43
- }
44
- pageButtonLabel(pageNum) {
45
- return intl.formatMessage({
46
- id: "pagination.pageButtonLabel",
47
- defaultMessage: `Go to page {pageNum}`,
48
- description: "Page refers to a paginated list of items",
49
- }, {
50
- pageNum: pageNum,
51
- });
52
- }
53
- lastPageButtonLabel(totalPages) {
54
- return intl.formatMessage({
55
- id: "pagination.lastPageButtonLabel",
56
- defaultMessage: `Go to last page, page {totalPages}`,
57
- description: "Page refers to a paginated list of items",
58
- }, {
59
- totalPages: totalPages,
60
- });
61
- }
62
- currentPageAnnouncement(currentPage) {
63
- return intl.formatMessage({
64
- id: "pagination.currentPageAnnouncement",
65
- defaultMessage: "Current page, {currentPage}.",
66
- description: "Page refers to a paginated list of items",
67
- }, {
68
- currentPage: currentPage,
69
- });
70
- }
71
- maintainFocusOnNumberChange(el) {
72
- window.requestAnimationFrame(() => {
73
- switch (el) {
74
- case "previous":
75
- this.currentPage === 1 && this.el.shadowRoot.querySelector(`button#wm-1`).focus(); //Only shift focus from previous button to page 1 if page 1 is reached, which disables previous button. Otherwise, maintain focus on previous button.
76
- break;
77
- case "next":
78
- this.currentPage === this.totalPages &&
79
- this.el.shadowRoot.querySelector(`button#wm-${this.totalPages}`).focus(); //Only shift focus from next button if last page is reached, disabling next button. Otherwise, maintain focus on next button.
80
- break;
81
- case "prev-arrow":
82
- this.currentPage === 1 && this.el.shadowRoot.querySelector("#next-arw").focus(); //Only shift focus if page 1 is reached, disabling previous buttons. Otherwise, maintain focus on previous buttons.
83
- break;
84
- case "next-arrow":
85
- this.currentPage === this.totalPages && this.el.shadowRoot.querySelector("#previous-arw").focus(); //Only shift focus if last page is reached, disabling next buttons. Otherwise, maintain focus on next buttons.
86
- break;
87
- case "page":
88
- this.el.shadowRoot.querySelector(`button#wm-${this.currentPage}`).focus();
89
- default:
90
- return;
91
- }
92
- });
93
- }
94
- calculateTotalPages() {
95
- this.totalPages = Math.ceil(this.totalItems / this.itemsPerPage);
96
- }
97
- componentWillLoad() {
98
- if (!this.totalItems || !this.itemsPerPage || !this.currentPage) {
99
- throw new Error("Please check the required attributes");
100
- }
101
- this.calculateTotalPages();
102
- this.el.focus = () => {
103
- // in addition to delegatesFocus, we need to highjack the focus method to send focus to the appropriate element based on the components's state
104
- if (this.isLargeSize) {
105
- this.el.shadowRoot.getElementById(`wm-${this.currentPage}`).focus();
106
- }
107
- else {
108
- this.currentPage === 1
109
- ? this.el.shadowRoot.getElementById("next-arw").focus()
110
- : this.el.shadowRoot.getElementById("wm-1-arw").focus();
111
- }
112
- };
113
- const resizeObserver = new ResizeObserver(() => this.debouncedResize());
114
- resizeObserver.observe(this.el);
115
- }
116
- updatePageDisplayed(pageNum) {
117
- this.value = pageNum;
118
- this.wmPaginationPageClicked.emit();
119
- this.srAnnouncement = `${this.currentPageAnnouncement(this.currentPage)} ${this.getCurrentPagesInView()}`;
120
- }
121
- displayShortPagination() {
122
- let pages = [];
123
- for (let i = 1; i <= this.totalPages; i++) {
124
- pages.push(this.displayPageNumber(i));
125
- }
126
- return pages;
127
- }
128
- displayLongPagination() {
129
- let view = [
130
- this.displayPageNumber(1),
131
- this.currentPage > 3 && this.displayEllipsis(),
132
- ...this.getMiddlePageNums().map((page) => this.displayPageNumber(page)),
133
- this.currentPage + 2 < this.totalPages && this.displayEllipsis(),
134
- this.displayPageNumber(this.totalPages),
135
- ];
136
- return view;
137
- }
138
- displayPageNumber(pageNum) {
139
- return (h("button", { id: `wm-${pageNum}`, class: "paginationbtn", onClick: () => {
140
- this.currentPage = pageNum;
141
- this.updatePageDisplayed(pageNum);
142
- this.maintainFocusOnNumberChange("page");
143
- }, value: pageNum, "aria-label": this.currentPage !== pageNum ? this.pageButtonLabel(pageNum) : "", "aria-current": this.currentPage === pageNum ? "page" : undefined }, pageNum));
144
- }
145
- displayEllipsis() {
146
- return h("span", { class: "ellipsis" }, "...");
147
- }
148
- // displayPageView = () => {
149
- // // let end = this.itemsPerPage! * this.currentPage;
150
- // // const begin = end - this.itemsPerPage! + 1;
151
- // // if (end > this.totalItems!) {
152
- // // end = this.totalItems!;
153
- // // }
154
- // return <div class="pageview">{this.getCurrentView()}</div>;
155
- // };
156
- getCurrentPagesInView() {
157
- let end = this.itemsPerPage * this.currentPage;
158
- const begin = end - this.itemsPerPage + 1;
159
- if (end > this.totalItems) {
160
- end = this.totalItems;
161
- }
162
- return intl.formatMessage({
163
- id: "pagination.pagesInView",
164
- defaultMessage: "Viewing {atEnd, select, true {{itemStart}} other {{itemStart}-{itemEnd} of {totalItems}}}",
165
- description: "Text indicating the range of items displayed in a list, and the total amount of items the list contains",
166
- }, {
167
- atEnd: begin === end,
168
- itemStart: begin,
169
- itemEnd: end,
170
- totalItems: this.totalItems,
171
- });
172
- }
173
- renderLarge() {
174
- return (h("div", { class: "largescreen" }, h("div", { class: "pageview" }, this.getCurrentPagesInView()), h("div", { class: "pagebtncontainer" }, h("button", { id: "previous", class: "paginationbtn previousbtn", onClick: () => {
175
- this.currentPage = this.currentPage - 1;
176
- this.updatePageDisplayed(this.currentPage);
177
- this.maintainFocusOnNumberChange("previous");
178
- }, disabled: this.currentPage === 1, "aria-label": this.previousPageButtonLabel, "aria-controls": "status" }, globalMessages.previous), this.totalPages < 6 ? this.displayShortPagination() : this.displayLongPagination(), h("button", { id: "next", class: "paginationbtn nextbtn", onClick: () => {
179
- this.currentPage = this.currentPage + 1;
180
- this.updatePageDisplayed(this.currentPage);
181
- this.maintainFocusOnNumberChange("next");
182
- }, disabled: this.currentPage === this.totalPages, "aria-label": this.nextPageButtonLabel, "aria-controls": "status" }, globalMessages.next))));
183
- }
184
- renderSmall() {
185
- return (h("div", { class: "smallscreen" }, h("div", { class: "pagebtncontainer" }, h("button", { id: "wm-1-arw", class: "paginationbtn", onClick: () => {
186
- this.currentPage = 1;
187
- this.updatePageDisplayed(1);
188
- this.maintainFocusOnNumberChange("prev-arrow");
189
- }, value: 1, "aria-current": this.currentPage === 1 ? "page" : undefined, "aria-label": this.pageButtonLabel(1), "aria-controls": "status", disabled: this.currentPage === 1 }, h("svg", { width: "16", height: "12", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M7.41 10.59L2.83 6l4.58-4.59L6 0 0 6l6 6zM15.41 10.59L10.83 6l4.58-4.59L14 0 8 6l6 6z" }))), h("button", { id: "previous-arw", class: "paginationbtn previousbtn", onClick: () => {
190
- this.currentPage -= 1;
191
- this.updatePageDisplayed(this.currentPage);
192
- this.maintainFocusOnNumberChange("prev-arrow");
193
- }, disabled: this.currentPage === 1, "aria-label": this.previousPageButtonLabel }, h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M7.41 10.59L2.83 6l4.58-4.59L6 0 0 6l6 6z" }))), "Page ", this.currentPage, " of ", this.totalPages, h("button", { id: "next-arw", class: "paginationbtn nextbtn", onClick: () => {
194
- this.currentPage += 1;
195
- this.updatePageDisplayed(this.currentPage);
196
- this.maintainFocusOnNumberChange("next-arrow");
197
- }, disabled: this.currentPage === this.totalPages, "aria-label": this.nextPageButtonLabel }, h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M.59 10.59L5.17 6 .59 1.41 2 0l6 6-6 6z" }))), h("button", { id: `wm-${this.totalPages}-arw`, class: "paginationbtn", onClick: () => {
198
- this.currentPage = this.totalPages;
199
- this.updatePageDisplayed(this.totalPages);
200
- this.maintainFocusOnNumberChange("next-arrow");
201
- }, value: this.totalPages, "aria-current": this.currentPage === this.totalPages ? "page" : undefined, "aria-label": this.lastPageButtonLabel(this.totalPages), "aria-controls": "status", disabled: this.currentPage === this.totalPages }, h("svg", { width: "17", height: "12", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M.59 10.59L5.17 6 .59 1.41 2 0l6 6-6 6zM9.59 10.59L14.17 6 9.59 1.41 11 0l6 6-6 6z" }))))));
202
- }
203
- render() {
204
- return (
205
- // do not render the component if there's only one page
206
- this.totalItems > this.itemsPerPage && (h("nav", { "aria-label": `${this.navigationLabel} ${this.getCurrentPagesInView()}. ${this.currentPageAnnouncement(this.currentPage)}` }, this.isLargeSize ? this.renderLarge() : this.renderSmall(), h("div", { id: "status", class: "sr-only", "aria-live": "polite", "aria-relevant": "text", "aria-atomic": "true" }, this.srAnnouncement))));
207
- }
208
- static get is() { return "wm-pagination"; }
209
- static get encapsulation() { return "shadow"; }
210
- static get delegatesFocus() { return true; }
211
- static get originalStyleUrls() {
212
- return {
213
- "$": ["wm-pagination.scss"]
214
- };
215
- }
216
- static get styleUrls() {
217
- return {
218
- "$": ["wm-pagination.css"]
219
- };
220
- }
221
- static get properties() {
222
- return {
223
- "currentPage": {
224
- "type": "number",
225
- "mutable": false,
226
- "complexType": {
227
- "original": "number",
228
- "resolved": "number",
229
- "references": {}
230
- },
231
- "required": false,
232
- "optional": false,
233
- "docs": {
234
- "tags": [],
235
- "text": ""
236
- },
237
- "attribute": "current-page",
238
- "reflect": false,
239
- "defaultValue": "1"
240
- },
241
- "totalItems": {
242
- "type": "number",
243
- "mutable": false,
244
- "complexType": {
245
- "original": "number",
246
- "resolved": "number | undefined",
247
- "references": {}
248
- },
249
- "required": false,
250
- "optional": true,
251
- "docs": {
252
- "tags": [],
253
- "text": ""
254
- },
255
- "attribute": "total-items",
256
- "reflect": false,
257
- "defaultValue": "undefined"
258
- },
259
- "itemsPerPage": {
260
- "type": "number",
261
- "mutable": false,
262
- "complexType": {
263
- "original": "number",
264
- "resolved": "number | undefined",
265
- "references": {}
266
- },
267
- "required": false,
268
- "optional": true,
269
- "docs": {
270
- "tags": [],
271
- "text": ""
272
- },
273
- "attribute": "items-per-page",
274
- "reflect": false,
275
- "defaultValue": "undefined"
276
- },
277
- "value": {
278
- "type": "number",
279
- "mutable": false,
280
- "complexType": {
281
- "original": "number",
282
- "resolved": "number",
283
- "references": {}
284
- },
285
- "required": false,
286
- "optional": false,
287
- "docs": {
288
- "tags": [],
289
- "text": ""
290
- },
291
- "attribute": "value",
292
- "reflect": false,
293
- "defaultValue": "1"
294
- },
295
- "isLargeSize": {
296
- "type": "boolean",
297
- "mutable": false,
298
- "complexType": {
299
- "original": "boolean",
300
- "resolved": "boolean",
301
- "references": {}
302
- },
303
- "required": false,
304
- "optional": false,
305
- "docs": {
306
- "tags": [],
307
- "text": ""
308
- },
309
- "attribute": "is-large-size",
310
- "reflect": false,
311
- "defaultValue": "window.innerWidth > 600"
312
- }
313
- };
314
- }
315
- static get states() {
316
- return {
317
- "srAnnouncement": {}
318
- };
319
- }
320
- static get events() {
321
- return [{
322
- "method": "wmPaginationPageClicked",
323
- "name": "wmPaginationPageClicked",
324
- "bubbles": true,
325
- "cancelable": true,
326
- "composed": true,
327
- "docs": {
328
- "tags": [],
329
- "text": ""
330
- },
331
- "complexType": {
332
- "original": "string",
333
- "resolved": "string",
334
- "references": {}
335
- }
336
- }, {
337
- "method": "focusCurrentPage",
338
- "name": "focusCurrentPage",
339
- "bubbles": true,
340
- "cancelable": true,
341
- "composed": true,
342
- "docs": {
343
- "tags": [],
344
- "text": ""
345
- },
346
- "complexType": {
347
- "original": "any",
348
- "resolved": "any",
349
- "references": {}
350
- }
351
- }];
352
- }
353
- static get elementRef() { return "el"; }
354
- static get watchers() {
355
- return [{
356
- "propName": "totalItems",
357
- "methodName": "calculateTotalPages"
358
- }, {
359
- "propName": "itemsPerPage",
360
- "methodName": "calculateTotalPages"
361
- }];
362
- }
363
- }