@watermarkinsights/ripple 5.12.0 → 5.14.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 (482) hide show
  1. package/LICENSE +21 -0
  2. package/dist/{esm/chartFunctions-9099c7e9.js → components/chartFunctions.js} +4 -4
  3. package/dist/components/functions.js +17465 -0
  4. package/dist/components/index.d.ts +33 -0
  5. package/dist/{collection/global/global.js → components/index.js} +52 -2
  6. package/dist/{collection/global → components}/interfaces.js +6 -4
  7. package/dist/{esm/intl-a6f16883.js → components/intl.js} +1 -1
  8. package/dist/components/priv-calendar.d.ts +11 -0
  9. package/dist/components/priv-calendar.js +6 -0
  10. package/dist/{esm/priv-calendar.entry.js → components/priv-calendar2.js} +40 -17
  11. package/dist/components/priv-chart-popover.d.ts +11 -0
  12. package/dist/components/priv-chart-popover.js +6 -0
  13. package/dist/{esm/priv-chart-popover.entry.js → components/priv-chart-popover2.js} +32 -13
  14. package/dist/components/priv-navigator-button.d.ts +11 -0
  15. package/dist/components/priv-navigator-button.js +6 -0
  16. package/dist/{esm/priv-navigator-button.entry.js → components/priv-navigator-button2.js} +27 -9
  17. package/dist/components/priv-navigator-item.d.ts +11 -0
  18. package/dist/components/priv-navigator-item.js +6 -0
  19. package/dist/{esm/priv-navigator-item.entry.js → components/priv-navigator-item2.js} +28 -9
  20. package/dist/components/priv-option-list.d.ts +11 -0
  21. package/dist/components/priv-option-list.js +6 -0
  22. package/dist/{esm/priv-option-list.entry.js → components/priv-option-list2.js} +54 -21
  23. package/dist/components/wm-action-menu.d.ts +11 -0
  24. package/dist/components/wm-action-menu.js +6 -0
  25. package/dist/{cjs/wm-pagination.cjs.entry.js → components/wm-action-menu2.js} +216 -212
  26. package/dist/components/wm-button.d.ts +11 -0
  27. package/dist/components/wm-button.js +6 -0
  28. package/dist/{esm/wm-button.entry.js → components/wm-button2.js} +49 -20
  29. package/dist/components/wm-chart-slice.d.ts +11 -0
  30. package/dist/components/wm-chart-slice.js +41 -0
  31. package/dist/components/wm-chart.d.ts +11 -0
  32. package/dist/{esm/wm-chart.entry.js → components/wm-chart.js} +61 -22
  33. package/dist/components/wm-date-range.d.ts +11 -0
  34. package/dist/{esm/wm-date-range.entry.js → components/wm-date-range.js} +66 -23
  35. package/dist/components/wm-datepicker.d.ts +11 -0
  36. package/dist/{esm/wm-datepicker.entry.js → components/wm-datepicker.js} +58 -20
  37. package/dist/components/wm-file-list.d.ts +11 -0
  38. package/dist/{cjs/wm-file-list.cjs.entry.js → components/wm-file-list.js} +29 -13
  39. package/dist/components/wm-file.d.ts +11 -0
  40. package/dist/{esm/wm-file.entry.js → components/wm-file.js} +59 -20
  41. package/dist/components/wm-input.d.ts +11 -0
  42. package/dist/{esm/wm-input.entry.js → components/wm-input.js} +54 -22
  43. package/dist/components/wm-line-chart.d.ts +11 -0
  44. package/dist/{esm/wm-line-chart.entry.js → components/wm-line-chart.js} +80 -39
  45. package/dist/components/wm-menuitem.d.ts +11 -0
  46. package/dist/components/wm-menuitem.js +6 -0
  47. package/dist/{cjs/wm-optgroup.cjs.entry.js → components/wm-menuitem2.js} +130 -57
  48. package/dist/components/wm-modal-footer.d.ts +11 -0
  49. package/dist/components/wm-modal-footer.js +73 -0
  50. package/dist/components/wm-modal-header.d.ts +11 -0
  51. package/dist/components/wm-modal-header.js +61 -0
  52. package/dist/components/wm-modal-pss-footer.d.ts +11 -0
  53. package/dist/{cjs/priv-chart-popover.cjs.entry.js → components/wm-modal-pss-footer.js} +58 -128
  54. package/dist/components/wm-modal-pss-header.d.ts +11 -0
  55. package/dist/components/wm-modal-pss-header.js +64 -0
  56. package/dist/components/wm-modal-pss.d.ts +11 -0
  57. package/dist/{cjs/wm-textarea.cjs.entry.js → components/wm-modal-pss.js} +141 -66
  58. package/dist/components/wm-modal.d.ts +11 -0
  59. package/dist/{cjs/wm-input.cjs.entry.js → components/wm-modal.js} +140 -103
  60. package/dist/components/wm-navigation-hamburger.d.ts +11 -0
  61. package/dist/{ripple/p-f9cade98.entry.js → components/wm-navigation-hamburger.js} +70 -1
  62. package/dist/components/wm-navigation-item.d.ts +11 -0
  63. package/dist/components/wm-navigation-item.js +40 -0
  64. package/dist/components/wm-navigation.d.ts +11 -0
  65. package/dist/{ripple/p-1a71d867.system.entry.js → components/wm-navigation.js} +144 -1
  66. package/dist/components/wm-navigator.d.ts +11 -0
  67. package/dist/{esm/wm-navigator.entry.js → components/wm-navigator.js} +106 -18
  68. package/dist/components/wm-nested-select.d.ts +11 -0
  69. package/dist/{esm/wm-nested-select.entry.js → components/wm-nested-select.js} +56 -23
  70. package/dist/components/wm-optgroup.d.ts +11 -0
  71. package/dist/{esm/wm-optgroup.entry.js → components/wm-optgroup.js} +49 -11
  72. package/dist/components/wm-option.d.ts +11 -0
  73. package/dist/components/wm-option.js +6 -0
  74. package/dist/{cjs/wm-search.cjs.entry.js → components/wm-option2.js} +168 -165
  75. package/dist/components/wm-pagination.d.ts +11 -0
  76. package/dist/{esm/wm-pagination.entry.js → components/wm-pagination.js} +45 -17
  77. package/dist/components/wm-progress-indicator.d.ts +11 -0
  78. package/dist/{esm/wm-progress-indicator_3.entry.js → components/wm-progress-indicator.js} +52 -104
  79. package/dist/components/wm-progress-monitor.d.ts +11 -0
  80. package/dist/components/wm-progress-monitor.js +93 -0
  81. package/dist/components/wm-progress-slice.d.ts +11 -0
  82. package/dist/components/wm-progress-slice.js +37 -0
  83. package/dist/components/wm-search.d.ts +11 -0
  84. package/dist/{esm/wm-search.entry.js → components/wm-search.js} +76 -15
  85. package/dist/components/wm-select.d.ts +11 -0
  86. package/dist/components/wm-select.js +6 -0
  87. package/dist/components/wm-select2.js +294 -0
  88. package/dist/components/wm-snackbar.d.ts +11 -0
  89. package/dist/{esm/wm-snackbar.entry.js → components/wm-snackbar.js} +41 -16
  90. package/dist/components/wm-tab-item.d.ts +11 -0
  91. package/dist/components/wm-tab-item.js +85 -0
  92. package/dist/components/wm-tab-list.d.ts +11 -0
  93. package/dist/{cjs/wm-uploader.cjs.entry.js → components/wm-tab-list.js} +174 -281
  94. package/dist/components/wm-tab-panel.d.ts +11 -0
  95. package/dist/{esm/wm-file-list.entry.js → components/wm-tab-panel.js} +46 -12
  96. package/dist/components/wm-tag-input.d.ts +11 -0
  97. package/dist/{esm/wm-tag-input.entry.js → components/wm-tag-input.js} +64 -32
  98. package/dist/components/wm-tag-option.d.ts +11 -0
  99. package/dist/components/wm-tag-option.js +63 -0
  100. package/dist/components/wm-textarea.d.ts +11 -0
  101. package/dist/{esm/wm-textarea.entry.js → components/wm-textarea.js} +47 -17
  102. package/dist/components/wm-timepicker.d.ts +11 -0
  103. package/dist/{esm/wm-timepicker.entry.js → components/wm-timepicker.js} +51 -20
  104. package/dist/components/wm-toggletip.d.ts +11 -0
  105. package/dist/{esm/wm-toggletip.entry.js → components/wm-toggletip.js} +38 -16
  106. package/dist/components/wm-uploader.d.ts +11 -0
  107. package/dist/{esm/wm-uploader.entry.js → components/wm-uploader.js} +52 -24
  108. package/dist/components/wm-wrapper.d.ts +11 -0
  109. package/dist/components/wm-wrapper.js +34 -0
  110. package/dist/types/stencil-public-runtime.d.ts +31 -10
  111. package/package.json +4 -8
  112. package/dist/cjs/chartFunctions-a1981e06.js +0 -732
  113. package/dist/cjs/functions-4b187487.js +0 -9679
  114. package/dist/cjs/global-4e034486.js +0 -85
  115. package/dist/cjs/index-e86c28b6.js +0 -2649
  116. package/dist/cjs/index.cjs.js +0 -2
  117. package/dist/cjs/interfaces-85d78ae9.js +0 -37
  118. package/dist/cjs/intl-7fd0760e.js +0 -283
  119. package/dist/cjs/loader.cjs.js +0 -14
  120. package/dist/cjs/priv-calendar.cjs.entry.js +0 -573
  121. package/dist/cjs/priv-navigator-button.cjs.entry.js +0 -28
  122. package/dist/cjs/priv-navigator-item.cjs.entry.js +0 -34
  123. package/dist/cjs/priv-option-list.cjs.entry.js +0 -392
  124. package/dist/cjs/ripple.cjs.js +0 -24
  125. package/dist/cjs/wm-action-menu_2.cjs.entry.js +0 -333
  126. package/dist/cjs/wm-button.cjs.entry.js +0 -206
  127. package/dist/cjs/wm-chart-slice.cjs.entry.js +0 -27
  128. package/dist/cjs/wm-chart.cjs.entry.js +0 -162
  129. package/dist/cjs/wm-date-range.cjs.entry.js +0 -483
  130. package/dist/cjs/wm-datepicker.cjs.entry.js +0 -253
  131. package/dist/cjs/wm-file.cjs.entry.js +0 -193
  132. package/dist/cjs/wm-line-chart.cjs.entry.js +0 -460
  133. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +0 -214
  134. package/dist/cjs/wm-modal_3.cjs.entry.js +0 -212
  135. package/dist/cjs/wm-navigation_3.cjs.entry.js +0 -185
  136. package/dist/cjs/wm-navigator.cjs.entry.js +0 -326
  137. package/dist/cjs/wm-nested-select.cjs.entry.js +0 -314
  138. package/dist/cjs/wm-option_2.cjs.entry.js +0 -425
  139. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +0 -202
  140. package/dist/cjs/wm-snackbar.cjs.entry.js +0 -181
  141. package/dist/cjs/wm-tab-item_3.cjs.entry.js +0 -260
  142. package/dist/cjs/wm-tag-input.cjs.entry.js +0 -891
  143. package/dist/cjs/wm-tag-option.cjs.entry.js +0 -43
  144. package/dist/cjs/wm-timepicker.cjs.entry.js +0 -306
  145. package/dist/cjs/wm-toggletip.cjs.entry.js +0 -182
  146. package/dist/cjs/wm-wrapper.cjs.entry.js +0 -21
  147. package/dist/collection/collection-manifest.json +0 -191
  148. package/dist/collection/components/charts/chartFunctions.js +0 -665
  149. package/dist/collection/components/charts/chartFunctions.spec.js +0 -16
  150. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +0 -908
  151. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.e2e.js +0 -81
  152. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +0 -257
  153. package/dist/collection/components/charts/screenshots.e2e.js +0 -96
  154. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +0 -125
  155. package/dist/collection/components/charts/wm-chart/wm-chart.css +0 -1274
  156. package/dist/collection/components/charts/wm-chart/wm-chart.e2e.js +0 -213
  157. package/dist/collection/components/charts/wm-chart/wm-chart.js +0 -422
  158. package/dist/collection/components/charts/wm-chart/wm-chart.spec.js +0 -37
  159. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +0 -1067
  160. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.e2e.js +0 -176
  161. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +0 -723
  162. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.spec.js +0 -163
  163. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +0 -1274
  164. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +0 -264
  165. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +0 -909
  166. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.e2e.js +0 -69
  167. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +0 -151
  168. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.spec.js +0 -79
  169. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +0 -121
  170. package/dist/collection/components/datepickers/datepicker.css +0 -1043
  171. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +0 -1279
  172. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +0 -840
  173. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.spec.js +0 -89
  174. package/dist/collection/components/datepickers/wm-date-range.e2e.js +0 -443
  175. package/dist/collection/components/datepickers/wm-date-range.js +0 -845
  176. package/dist/collection/components/datepickers/wm-date-range.spec.js +0 -22
  177. package/dist/collection/components/datepickers/wm-datepicker.e2e.js +0 -382
  178. package/dist/collection/components/datepickers/wm-datepicker.js +0 -520
  179. package/dist/collection/components/datepickers/wm-datepicker.spec.js +0 -21
  180. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +0 -918
  181. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +0 -778
  182. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +0 -1181
  183. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +0 -620
  184. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +0 -830
  185. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +0 -258
  186. package/dist/collection/components/selects/wm-option/wm-option.css +0 -931
  187. package/dist/collection/components/selects/wm-option/wm-option.e2e.js +0 -22
  188. package/dist/collection/components/selects/wm-option/wm-option.js +0 -530
  189. package/dist/collection/components/selects/wm-option/wm-option.spec.js +0 -63
  190. package/dist/collection/components/selects/wm-select/wm-select.css +0 -1104
  191. package/dist/collection/components/selects/wm-select/wm-select.e2e.js +0 -521
  192. package/dist/collection/components/selects/wm-select/wm-select.js +0 -584
  193. package/dist/collection/components/selects/wm-select/wm-select.spec.js +0 -271
  194. package/dist/collection/components/wm-action-menu/wm-action-menu.css +0 -891
  195. package/dist/collection/components/wm-action-menu/wm-action-menu.e2e.js +0 -200
  196. package/dist/collection/components/wm-action-menu/wm-action-menu.js +0 -435
  197. package/dist/collection/components/wm-action-menu/wm-action-menu.spec.js +0 -48
  198. package/dist/collection/components/wm-button/wm-button.css +0 -1261
  199. package/dist/collection/components/wm-button/wm-button.e2e.js +0 -55
  200. package/dist/collection/components/wm-button/wm-button.js +0 -489
  201. package/dist/collection/components/wm-button/wm-button.spec.js +0 -74
  202. package/dist/collection/components/wm-file/wm-file.css +0 -927
  203. package/dist/collection/components/wm-file/wm-file.js +0 -412
  204. package/dist/collection/components/wm-file/wm-file.spec.js +0 -194
  205. package/dist/collection/components/wm-file-list/wm-file-list.css +0 -820
  206. package/dist/collection/components/wm-file-list/wm-file-list.js +0 -45
  207. package/dist/collection/components/wm-file-list/wm-file-list.spec.js +0 -69
  208. package/dist/collection/components/wm-input/wm-input.css +0 -992
  209. package/dist/collection/components/wm-input/wm-input.e2e.js +0 -32
  210. package/dist/collection/components/wm-input/wm-input.js +0 -471
  211. package/dist/collection/components/wm-input/wm-input.spec.js +0 -173
  212. package/dist/collection/components/wm-menuitem/wm-menuitem.css +0 -891
  213. package/dist/collection/components/wm-menuitem/wm-menuitem.e2e.js +0 -23
  214. package/dist/collection/components/wm-menuitem/wm-menuitem.js +0 -419
  215. package/dist/collection/components/wm-menuitem/wm-menuitem.spec.js +0 -54
  216. package/dist/collection/components/wm-modal/wm-modal-footer.css +0 -845
  217. package/dist/collection/components/wm-modal/wm-modal-footer.js +0 -141
  218. package/dist/collection/components/wm-modal/wm-modal-footer.spec.js +0 -11
  219. package/dist/collection/components/wm-modal/wm-modal-header.css +0 -844
  220. package/dist/collection/components/wm-modal/wm-modal-header.js +0 -78
  221. package/dist/collection/components/wm-modal/wm-modal-header.spec.js +0 -8
  222. package/dist/collection/components/wm-modal/wm-modal.css +0 -891
  223. package/dist/collection/components/wm-modal/wm-modal.e2e.js +0 -104
  224. package/dist/collection/components/wm-modal/wm-modal.js +0 -350
  225. package/dist/collection/components/wm-modal/wm-modal.spec.js +0 -30
  226. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +0 -852
  227. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +0 -138
  228. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +0 -846
  229. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +0 -82
  230. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +0 -927
  231. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +0 -362
  232. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +0 -847
  233. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +0 -119
  234. package/dist/collection/components/wm-navigation/wm-navigation-item.css +0 -856
  235. package/dist/collection/components/wm-navigation/wm-navigation-item.js +0 -98
  236. package/dist/collection/components/wm-navigation/wm-navigation.css +0 -898
  237. package/dist/collection/components/wm-navigation/wm-navigation.e2e.js +0 -102
  238. package/dist/collection/components/wm-navigation/wm-navigation.js +0 -190
  239. package/dist/collection/components/wm-navigation/wm-navigation.spec.js +0 -91
  240. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +0 -849
  241. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.e2e.js +0 -50
  242. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +0 -86
  243. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +0 -830
  244. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +0 -124
  245. package/dist/collection/components/wm-navigator/wm-navigator.css +0 -903
  246. package/dist/collection/components/wm-navigator/wm-navigator.e2e.js +0 -209
  247. package/dist/collection/components/wm-navigator/wm-navigator.js +0 -496
  248. package/dist/collection/components/wm-navigator/wm-navigator.spec.js +0 -177
  249. package/dist/collection/components/wm-pagination/wm-pagination.css +0 -971
  250. package/dist/collection/components/wm-pagination/wm-pagination.e2e.js +0 -312
  251. package/dist/collection/components/wm-pagination/wm-pagination.js +0 -363
  252. package/dist/collection/components/wm-search/wm-search.css +0 -895
  253. package/dist/collection/components/wm-search/wm-search.e2e.js +0 -76
  254. package/dist/collection/components/wm-search/wm-search.js +0 -426
  255. package/dist/collection/components/wm-search/wm-search.spec.js +0 -71
  256. package/dist/collection/components/wm-snackbar/wm-snackbar.css +0 -1077
  257. package/dist/collection/components/wm-snackbar/wm-snackbar.e2e.js +0 -112
  258. package/dist/collection/components/wm-snackbar/wm-snackbar.js +0 -269
  259. package/dist/collection/components/wm-snackbar/wm-snackbar.spec.js +0 -9
  260. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +0 -868
  261. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +0 -175
  262. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +0 -840
  263. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +0 -273
  264. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +0 -825
  265. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +0 -87
  266. package/dist/collection/components/wm-tabs/wm-tabs.e2e.js +0 -91
  267. package/dist/collection/components/wm-tabs/wm-tabs.spec.js +0 -12
  268. package/dist/collection/components/wm-tag-input/wm-tag-input.css +0 -1275
  269. package/dist/collection/components/wm-tag-input/wm-tag-input.e2e.js +0 -204
  270. package/dist/collection/components/wm-tag-input/wm-tag-input.js +0 -1227
  271. package/dist/collection/components/wm-tag-input/wm-tag-input.spec.js +0 -195
  272. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +0 -243
  273. package/dist/collection/components/wm-textarea/wm-textarea.css +0 -979
  274. package/dist/collection/components/wm-textarea/wm-textarea.e2e.js +0 -41
  275. package/dist/collection/components/wm-textarea/wm-textarea.js +0 -313
  276. package/dist/collection/components/wm-textarea/wm-textarea.spec.js +0 -79
  277. package/dist/collection/components/wm-timepicker/wm-timepicker.css +0 -1093
  278. package/dist/collection/components/wm-timepicker/wm-timepicker.e2e.js +0 -163
  279. package/dist/collection/components/wm-timepicker/wm-timepicker.js +0 -544
  280. package/dist/collection/components/wm-timepicker/wm-timepicker.spec.js +0 -147
  281. package/dist/collection/components/wm-toggletip/wm-toggletip.css +0 -1152
  282. package/dist/collection/components/wm-toggletip/wm-toggletip.e2e.js +0 -69
  283. package/dist/collection/components/wm-toggletip/wm-toggletip.js +0 -289
  284. package/dist/collection/components/wm-toggletip/wm-toggletip.spec.js +0 -21
  285. package/dist/collection/components/wm-uploader/wm-uploader.css +0 -1563
  286. package/dist/collection/components/wm-uploader/wm-uploader.e2e.js +0 -70
  287. package/dist/collection/components/wm-uploader/wm-uploader.js +0 -603
  288. package/dist/collection/components/wm-uploader/wm-uploader.spec.js +0 -234
  289. package/dist/collection/components/wm-wrapper/wm-wrapper.js +0 -28
  290. package/dist/collection/dev/button.js +0 -0
  291. package/dist/collection/dev/chart-small.js +0 -56
  292. package/dist/collection/dev/chart.js +0 -18
  293. package/dist/collection/dev/date-range.js +0 -6
  294. package/dist/collection/dev/datepicker.js +0 -46
  295. package/dist/collection/dev/file-list.js +0 -16
  296. package/dist/collection/dev/file.js +0 -0
  297. package/dist/collection/dev/input.js +0 -6
  298. package/dist/collection/dev/line-chart.js +0 -0
  299. package/dist/collection/dev/modal.js +0 -48
  300. package/dist/collection/dev/navigation.js +0 -13
  301. package/dist/collection/dev/navigator.js +0 -34
  302. package/dist/collection/dev/nested-select.js +0 -36
  303. package/dist/collection/dev/pagination.js +0 -7
  304. package/dist/collection/dev/progress-monitor.js +0 -0
  305. package/dist/collection/dev/pss-modal.js +0 -8
  306. package/dist/collection/dev/scripts.js +0 -49
  307. package/dist/collection/dev/search.js +0 -72
  308. package/dist/collection/dev/select.js +0 -57
  309. package/dist/collection/dev/snackbar.js +0 -54
  310. package/dist/collection/dev/tabs.js +0 -44
  311. package/dist/collection/dev/tag-input.js +0 -32
  312. package/dist/collection/dev/textarea.js +0 -28
  313. package/dist/collection/dev/timepicker.js +0 -32
  314. package/dist/collection/dev/toggletip.js +0 -9
  315. package/dist/collection/dev/uploader.js +0 -139
  316. package/dist/collection/global/__mocks__/functions.js +0 -6
  317. package/dist/collection/global/functions.js +0 -825
  318. package/dist/collection/global/functions.spec.js +0 -126
  319. package/dist/collection/global/intl.js +0 -274
  320. package/dist/collection/global/services/__mocks__/http-service.js +0 -130
  321. package/dist/collection/global/services/http-service.js +0 -50
  322. package/dist/collection/lang/lang.js +0 -5
  323. package/dist/collection/lang/lang.spec.js +0 -20
  324. package/dist/collection/lang/missing.js +0 -43
  325. package/dist/collection/lang/piglatin.js +0 -101
  326. package/dist/esm/functions-00e1916b.js +0 -9639
  327. package/dist/esm/global-c76064cb.js +0 -83
  328. package/dist/esm/index-558b5a82.js +0 -2618
  329. package/dist/esm/index.js +0 -1
  330. package/dist/esm/interfaces-cc5b177f.js +0 -34
  331. package/dist/esm/loader.js +0 -10
  332. package/dist/esm/polyfills/core-js.js +0 -11
  333. package/dist/esm/polyfills/dom.js +0 -79
  334. package/dist/esm/polyfills/es5-html-element.js +0 -1
  335. package/dist/esm/polyfills/index.js +0 -34
  336. package/dist/esm/polyfills/system.js +0 -6
  337. package/dist/esm/ripple.js +0 -19
  338. package/dist/esm/wm-action-menu_2.entry.js +0 -328
  339. package/dist/esm/wm-chart-slice.entry.js +0 -23
  340. package/dist/esm/wm-modal-pss_3.entry.js +0 -208
  341. package/dist/esm/wm-modal_3.entry.js +0 -206
  342. package/dist/esm/wm-navigation_3.entry.js +0 -179
  343. package/dist/esm/wm-option_2.entry.js +0 -420
  344. package/dist/esm/wm-tab-item_3.entry.js +0 -254
  345. package/dist/esm/wm-tag-option.entry.js +0 -39
  346. package/dist/esm/wm-wrapper.entry.js +0 -17
  347. package/dist/esm-es5/chartFunctions-9099c7e9.js +0 -1
  348. package/dist/esm-es5/functions-00e1916b.js +0 -1
  349. package/dist/esm-es5/global-c76064cb.js +0 -1
  350. package/dist/esm-es5/index-558b5a82.js +0 -1
  351. package/dist/esm-es5/index.js +0 -0
  352. package/dist/esm-es5/interfaces-cc5b177f.js +0 -1
  353. package/dist/esm-es5/intl-a6f16883.js +0 -1
  354. package/dist/esm-es5/loader.js +0 -1
  355. package/dist/esm-es5/priv-calendar.entry.js +0 -1
  356. package/dist/esm-es5/priv-chart-popover.entry.js +0 -1
  357. package/dist/esm-es5/priv-navigator-button.entry.js +0 -1
  358. package/dist/esm-es5/priv-navigator-item.entry.js +0 -1
  359. package/dist/esm-es5/priv-option-list.entry.js +0 -1
  360. package/dist/esm-es5/ripple.js +0 -1
  361. package/dist/esm-es5/wm-action-menu_2.entry.js +0 -1
  362. package/dist/esm-es5/wm-button.entry.js +0 -1
  363. package/dist/esm-es5/wm-chart-slice.entry.js +0 -1
  364. package/dist/esm-es5/wm-chart.entry.js +0 -1
  365. package/dist/esm-es5/wm-date-range.entry.js +0 -1
  366. package/dist/esm-es5/wm-datepicker.entry.js +0 -1
  367. package/dist/esm-es5/wm-file-list.entry.js +0 -1
  368. package/dist/esm-es5/wm-file.entry.js +0 -1
  369. package/dist/esm-es5/wm-input.entry.js +0 -1
  370. package/dist/esm-es5/wm-line-chart.entry.js +0 -1
  371. package/dist/esm-es5/wm-modal-pss_3.entry.js +0 -1
  372. package/dist/esm-es5/wm-modal_3.entry.js +0 -1
  373. package/dist/esm-es5/wm-navigation_3.entry.js +0 -1
  374. package/dist/esm-es5/wm-navigator.entry.js +0 -1
  375. package/dist/esm-es5/wm-nested-select.entry.js +0 -1
  376. package/dist/esm-es5/wm-optgroup.entry.js +0 -1
  377. package/dist/esm-es5/wm-option_2.entry.js +0 -1
  378. package/dist/esm-es5/wm-pagination.entry.js +0 -1
  379. package/dist/esm-es5/wm-progress-indicator_3.entry.js +0 -1
  380. package/dist/esm-es5/wm-search.entry.js +0 -1
  381. package/dist/esm-es5/wm-snackbar.entry.js +0 -1
  382. package/dist/esm-es5/wm-tab-item_3.entry.js +0 -1
  383. package/dist/esm-es5/wm-tag-input.entry.js +0 -1
  384. package/dist/esm-es5/wm-tag-option.entry.js +0 -1
  385. package/dist/esm-es5/wm-textarea.entry.js +0 -1
  386. package/dist/esm-es5/wm-timepicker.entry.js +0 -1
  387. package/dist/esm-es5/wm-toggletip.entry.js +0 -1
  388. package/dist/esm-es5/wm-uploader.entry.js +0 -1
  389. package/dist/esm-es5/wm-wrapper.entry.js +0 -1
  390. package/dist/index.cjs.js +0 -1
  391. package/dist/index.js +0 -1
  392. package/dist/loader/cdn.js +0 -3
  393. package/dist/loader/index.cjs.js +0 -3
  394. package/dist/loader/index.d.ts +0 -21
  395. package/dist/loader/index.es2017.js +0 -3
  396. package/dist/loader/index.js +0 -4
  397. package/dist/loader/package.json +0 -11
  398. package/dist/ripple/index.esm.js +0 -0
  399. package/dist/ripple/p-05ae54d7.entry.js +0 -1
  400. package/dist/ripple/p-0d89d63c.system.entry.js +0 -1
  401. package/dist/ripple/p-118c47eb.system.entry.js +0 -1
  402. package/dist/ripple/p-1a4b6b02.system.entry.js +0 -1
  403. package/dist/ripple/p-1a4b7504.system.entry.js +0 -1
  404. package/dist/ripple/p-1a951dfb.entry.js +0 -1
  405. package/dist/ripple/p-1c8f550f.system.entry.js +0 -1
  406. package/dist/ripple/p-1f751b87.js +0 -1
  407. package/dist/ripple/p-1fac5bf9.js +0 -1
  408. package/dist/ripple/p-20a8f732.system.entry.js +0 -1
  409. package/dist/ripple/p-249b56fb.entry.js +0 -1
  410. package/dist/ripple/p-249d13a1.system.entry.js +0 -1
  411. package/dist/ripple/p-26906899.entry.js +0 -1
  412. package/dist/ripple/p-2732bddd.js +0 -1
  413. package/dist/ripple/p-28119645.system.entry.js +0 -1
  414. package/dist/ripple/p-2f37f3ee.system.js +0 -1
  415. package/dist/ripple/p-32bf3f5b.system.entry.js +0 -1
  416. package/dist/ripple/p-335c03d3.system.entry.js +0 -1
  417. package/dist/ripple/p-363b534b.entry.js +0 -1
  418. package/dist/ripple/p-393e4636.js +0 -1
  419. package/dist/ripple/p-39f79d71.system.entry.js +0 -1
  420. package/dist/ripple/p-3a231f4b.system.entry.js +0 -1
  421. package/dist/ripple/p-3d4bb85f.entry.js +0 -1
  422. package/dist/ripple/p-4228de00.entry.js +0 -1
  423. package/dist/ripple/p-42fa7a77.system.js +0 -1
  424. package/dist/ripple/p-48e09589.entry.js +0 -1
  425. package/dist/ripple/p-4f8fe1d1.system.js +0 -1
  426. package/dist/ripple/p-50ea2036.system.js +0 -1
  427. package/dist/ripple/p-522ecb7d.system.entry.js +0 -1
  428. package/dist/ripple/p-54d6f0f9.entry.js +0 -1
  429. package/dist/ripple/p-568c595f.js +0 -2
  430. package/dist/ripple/p-56aeee6e.system.entry.js +0 -1
  431. package/dist/ripple/p-5e6a4f70.system.js +0 -1
  432. package/dist/ripple/p-5f082360.system.entry.js +0 -1
  433. package/dist/ripple/p-5f5fe905.js +0 -1
  434. package/dist/ripple/p-617c2c75.entry.js +0 -1
  435. package/dist/ripple/p-6524c53e.system.entry.js +0 -1
  436. package/dist/ripple/p-65d26233.system.entry.js +0 -1
  437. package/dist/ripple/p-6834a6d3.entry.js +0 -1
  438. package/dist/ripple/p-68e04222.entry.js +0 -1
  439. package/dist/ripple/p-68fddfaa.system.entry.js +0 -1
  440. package/dist/ripple/p-694903e6.system.entry.js +0 -1
  441. package/dist/ripple/p-73ca2f26.system.js +0 -1
  442. package/dist/ripple/p-7b6a65f8.system.entry.js +0 -1
  443. package/dist/ripple/p-7b7e1eb5.system.entry.js +0 -1
  444. package/dist/ripple/p-88ebddd7.entry.js +0 -1
  445. package/dist/ripple/p-8c1d27a7.entry.js +0 -1
  446. package/dist/ripple/p-8e9c24f3.entry.js +0 -1
  447. package/dist/ripple/p-8f836507.system.entry.js +0 -1
  448. package/dist/ripple/p-94495341.entry.js +0 -1
  449. package/dist/ripple/p-958331bf.entry.js +0 -1
  450. package/dist/ripple/p-9872623b.entry.js +0 -1
  451. package/dist/ripple/p-9ab3c088.system.entry.js +0 -1
  452. package/dist/ripple/p-9aedd599.entry.js +0 -1
  453. package/dist/ripple/p-9b848151.entry.js +0 -1
  454. package/dist/ripple/p-a04ef164.system.entry.js +0 -1
  455. package/dist/ripple/p-a78bb423.system.entry.js +0 -1
  456. package/dist/ripple/p-a880d9a0.system.entry.js +0 -1
  457. package/dist/ripple/p-ab8d78cc.system.js +0 -2
  458. package/dist/ripple/p-adc254e6.entry.js +0 -1
  459. package/dist/ripple/p-b165d61a.entry.js +0 -1
  460. package/dist/ripple/p-b39377c7.entry.js +0 -1
  461. package/dist/ripple/p-b9bca547.entry.js +0 -1
  462. package/dist/ripple/p-bae2c236.entry.js +0 -1
  463. package/dist/ripple/p-c53f3704.system.entry.js +0 -1
  464. package/dist/ripple/p-c56ff16f.entry.js +0 -1
  465. package/dist/ripple/p-c8cf09a2.system.entry.js +0 -1
  466. package/dist/ripple/p-cbdceb6e.entry.js +0 -1
  467. package/dist/ripple/p-cc813406.system.js +0 -1
  468. package/dist/ripple/p-d20a0f0c.system.entry.js +0 -1
  469. package/dist/ripple/p-d6111226.entry.js +0 -1
  470. package/dist/ripple/p-da68c87c.entry.js +0 -1
  471. package/dist/ripple/p-ddef82fa.system.entry.js +0 -1
  472. package/dist/ripple/p-dee6d5a3.entry.js +0 -1
  473. package/dist/ripple/p-e55d5371.entry.js +0 -1
  474. package/dist/ripple/p-e8c22f01.system.entry.js +0 -1
  475. package/dist/ripple/p-f555831b.entry.js +0 -1
  476. package/dist/ripple/p-f5c40e9e.system.entry.js +0 -1
  477. package/dist/ripple/p-fa09191b.system.entry.js +0 -1
  478. package/dist/ripple/p-fdfca58b.entry.js +0 -1
  479. package/dist/ripple/ripple.css +0 -1
  480. package/dist/ripple/ripple.esm.js +0 -1
  481. package/dist/ripple/ripple.js +0 -127
  482. /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
- }