@watermarkinsights/ripple 3.16.0 → 3.17.0-2

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 (267) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/{chartFunctions-45d38ae4.js → chartFunctions-0c02a801.js} +425 -421
  3. package/dist/cjs/{functions-23309c38.js → functions-cb39693a.js} +483 -483
  4. package/dist/cjs/{global-5260837d.js → global-4e97582e.js} +62 -62
  5. package/dist/cjs/{http-service-9e8c4dd5.js → http-service-494d81de.js} +49 -49
  6. package/dist/cjs/{interfaces-30a74c1f.js → interfaces-a3338581.js} +29 -29
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/cjs/priv-chart-popover.cjs.entry.js +86 -86
  9. package/dist/cjs/priv-datepicker.cjs.entry.js +657 -657
  10. package/dist/cjs/priv-navigator-button.cjs.entry.js +18 -18
  11. package/dist/cjs/priv-navigator-item.cjs.entry.js +23 -23
  12. package/dist/cjs/ripple.cjs.js +2 -2
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +329 -329
  14. package/dist/cjs/wm-button.cjs.entry.js +248 -248
  15. package/dist/cjs/wm-chart-slice.cjs.entry.js +13 -13
  16. package/dist/cjs/wm-chart.cjs.entry.js +111 -111
  17. package/dist/cjs/wm-datepicker.cjs.entry.js +265 -265
  18. package/dist/cjs/wm-input.cjs.entry.js +134 -134
  19. package/dist/cjs/wm-modal-footer.cjs.entry.js +33 -33
  20. package/dist/cjs/wm-modal-header.cjs.entry.js +36 -36
  21. package/dist/cjs/wm-modal.cjs.entry.js +163 -163
  22. package/dist/cjs/wm-navigation_3.cjs.entry.js +227 -227
  23. package/dist/cjs/wm-navigator.cjs.entry.js +268 -268
  24. package/dist/cjs/wm-network-uploader.cjs.entry.js +455 -455
  25. package/dist/cjs/wm-option_2.cjs.entry.js +720 -720
  26. package/dist/cjs/wm-pagination.cjs.entry.js +167 -167
  27. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +139 -131
  28. package/dist/cjs/wm-search.cjs.entry.js +232 -232
  29. package/dist/cjs/wm-snackbar.cjs.entry.js +170 -170
  30. package/dist/cjs/wm-tab-item_3.cjs.entry.js +296 -296
  31. package/dist/cjs/wm-tag-input-row.cjs.entry.js +10 -10
  32. package/dist/cjs/wm-tag-input.cjs.entry.js +884 -884
  33. package/dist/cjs/wm-timepicker.cjs.entry.js +383 -383
  34. package/dist/cjs/wm-toggletip.cjs.entry.js +124 -124
  35. package/dist/cjs/wm-uploader.cjs.entry.js +556 -556
  36. package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
  37. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +258 -258
  38. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +115 -115
  39. package/dist/collection/components/charts/wm-chart/wm-chart.css +81 -84
  40. package/dist/collection/components/charts/wm-chart/wm-chart.js +328 -328
  41. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +81 -84
  42. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +194 -195
  43. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +86 -0
  44. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +117 -88
  45. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +111 -111
  46. package/dist/collection/components/wm-action-menu/wm-action-menu.js +442 -442
  47. package/dist/collection/components/wm-button/wm-button.js +545 -545
  48. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +1024 -1024
  49. package/dist/collection/components/wm-datepicker/wm-datepicker.js +471 -471
  50. package/dist/collection/components/wm-input/wm-input.js +423 -423
  51. package/dist/collection/components/wm-menuitem/wm-menuitem.js +444 -444
  52. package/dist/collection/components/wm-modal/wm-modal-footer.js +136 -136
  53. package/dist/collection/components/wm-modal/wm-modal-header.js +87 -87
  54. package/dist/collection/components/wm-modal/wm-modal.js +461 -461
  55. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +162 -162
  56. package/dist/collection/components/wm-navigation/wm-navigation-item.js +121 -121
  57. package/dist/collection/components/wm-navigation/wm-navigation.js +218 -218
  58. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +97 -97
  59. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +114 -114
  60. package/dist/collection/components/wm-navigator/wm-navigator.js +468 -468
  61. package/dist/collection/components/wm-option/wm-option.js +428 -428
  62. package/dist/collection/components/wm-pagination/wm-pagination.js +368 -368
  63. package/dist/collection/components/wm-search/wm-search.js +480 -480
  64. package/dist/collection/components/wm-select/wm-select.js +1001 -1001
  65. package/dist/collection/components/wm-snackbar/wm-snackbar.js +297 -297
  66. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +216 -216
  67. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +330 -330
  68. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +104 -104
  69. package/dist/collection/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.js +115 -115
  70. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1201 -1201
  71. package/dist/collection/components/wm-timepicker/wm-timepicker.js +583 -583
  72. package/dist/collection/components/wm-toggletip/wm-toggletip.js +241 -241
  73. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js +788 -788
  74. package/dist/collection/components/wm-uploader/wm-uploader.js +1000 -1000
  75. package/dist/collection/components/wm-wrapper/wm-wrapper.js +27 -27
  76. package/dist/collection/dev/scripts.js +20 -20
  77. package/dist/collection/global/__mocks__/functions.js +6 -6
  78. package/dist/collection/global/chartFunctions.js +426 -423
  79. package/dist/collection/global/functions.js +486 -486
  80. package/dist/collection/global/global.js +69 -69
  81. package/dist/collection/global/interfaces.js +49 -49
  82. package/dist/collection/global/services/__mocks__/http-service.js +130 -130
  83. package/dist/collection/global/services/http-service.js +50 -50
  84. package/dist/collection/lang/lang.js +5 -5
  85. package/dist/collection/lang/missing.js +43 -43
  86. package/dist/collection/lang/piglatin.js +93 -93
  87. package/dist/esm/{chartFunctions-4433cafc.js → chartFunctions-fe9af0f8.js} +425 -422
  88. package/dist/esm/{functions-14df5b8c.js → functions-478ab920.js} +483 -483
  89. package/dist/esm/{global-0087a2ea.js → global-32a33c56.js} +62 -62
  90. package/dist/esm/{http-service-5d037e16.js → http-service-3dc3b3e7.js} +49 -49
  91. package/dist/esm/{interfaces-61c6305b.js → interfaces-2b97fab2.js} +29 -29
  92. package/dist/esm/loader.js +2 -2
  93. package/dist/esm/polyfills/core-js.js +0 -0
  94. package/dist/esm/polyfills/dom.js +0 -0
  95. package/dist/esm/polyfills/es5-html-element.js +0 -0
  96. package/dist/esm/polyfills/index.js +0 -0
  97. package/dist/esm/polyfills/system.js +0 -0
  98. package/dist/esm/priv-chart-popover.entry.js +86 -86
  99. package/dist/esm/priv-datepicker.entry.js +657 -657
  100. package/dist/esm/priv-navigator-button.entry.js +18 -18
  101. package/dist/esm/priv-navigator-item.entry.js +23 -23
  102. package/dist/esm/ripple.js +2 -2
  103. package/dist/esm/wm-action-menu_2.entry.js +329 -329
  104. package/dist/esm/wm-button.entry.js +248 -248
  105. package/dist/esm/wm-chart-slice.entry.js +13 -13
  106. package/dist/esm/wm-chart.entry.js +111 -111
  107. package/dist/esm/wm-datepicker.entry.js +265 -265
  108. package/dist/esm/wm-input.entry.js +134 -134
  109. package/dist/esm/wm-modal-footer.entry.js +33 -33
  110. package/dist/esm/wm-modal-header.entry.js +36 -36
  111. package/dist/esm/wm-modal.entry.js +163 -163
  112. package/dist/esm/wm-navigation_3.entry.js +227 -227
  113. package/dist/esm/wm-navigator.entry.js +268 -268
  114. package/dist/esm/wm-network-uploader.entry.js +455 -455
  115. package/dist/esm/wm-option_2.entry.js +720 -720
  116. package/dist/esm/wm-pagination.entry.js +167 -167
  117. package/dist/esm/wm-progress-indicator_3.entry.js +139 -131
  118. package/dist/esm/wm-search.entry.js +232 -232
  119. package/dist/esm/wm-snackbar.entry.js +170 -170
  120. package/dist/esm/wm-tab-item_3.entry.js +296 -296
  121. package/dist/esm/wm-tag-input-row.entry.js +10 -10
  122. package/dist/esm/wm-tag-input.entry.js +884 -884
  123. package/dist/esm/wm-timepicker.entry.js +383 -383
  124. package/dist/esm/wm-toggletip.entry.js +124 -124
  125. package/dist/esm/wm-uploader.entry.js +556 -556
  126. package/dist/esm/wm-wrapper.entry.js +12 -12
  127. package/dist/esm-es5/{chartFunctions-4433cafc.js → chartFunctions-fe9af0f8.js} +1 -1
  128. package/dist/esm-es5/{functions-14df5b8c.js → functions-478ab920.js} +0 -0
  129. package/dist/esm-es5/global-32a33c56.js +1 -0
  130. package/dist/esm-es5/{http-service-5d037e16.js → http-service-3dc3b3e7.js} +0 -0
  131. package/dist/esm-es5/{interfaces-61c6305b.js → interfaces-2b97fab2.js} +0 -0
  132. package/dist/esm-es5/loader.js +1 -1
  133. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  134. package/dist/esm-es5/priv-datepicker.entry.js +1 -1
  135. package/dist/esm-es5/ripple.js +1 -1
  136. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  137. package/dist/esm-es5/wm-button.entry.js +1 -1
  138. package/dist/esm-es5/wm-chart.entry.js +1 -1
  139. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  140. package/dist/esm-es5/wm-input.entry.js +1 -1
  141. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  142. package/dist/esm-es5/wm-modal.entry.js +1 -1
  143. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  144. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  145. package/dist/esm-es5/wm-network-uploader.entry.js +1 -1
  146. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  147. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  148. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  149. package/dist/esm-es5/wm-search.entry.js +1 -1
  150. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  151. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  152. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  153. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  154. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  155. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  156. package/dist/ripple/{p-dfe38d43.system.entry.js → p-054ccfa1.system.entry.js} +1 -1
  157. package/dist/ripple/{p-ff011bf3.entry.js → p-09b2c614.entry.js} +1 -1
  158. package/dist/ripple/{p-d063e3e9.entry.js → p-0dd172c2.entry.js} +1 -1
  159. package/dist/ripple/{p-df2bd836.entry.js → p-10d6335d.entry.js} +1 -1
  160. package/dist/ripple/{p-923527d9.system.entry.js → p-1762bc51.system.entry.js} +1 -1
  161. package/dist/ripple/{p-d530a06f.system.entry.js → p-1a1a6d89.system.entry.js} +1 -1
  162. package/dist/ripple/{p-8707f00a.system.entry.js → p-29792d81.system.entry.js} +1 -1
  163. package/dist/ripple/{p-d24ecc0c.js → p-2b929b10.js} +1 -1
  164. package/dist/ripple/{p-aa0e1f8b.system.entry.js → p-2e6988e6.system.entry.js} +1 -1
  165. package/dist/ripple/{p-811380de.entry.js → p-34d6d1d2.entry.js} +1 -1
  166. package/dist/ripple/{p-85ea8ece.entry.js → p-3597b28b.entry.js} +1 -1
  167. package/dist/ripple/{p-1d61c7bd.system.entry.js → p-3efd31ef.system.entry.js} +1 -1
  168. package/dist/ripple/{p-6f7f1331.system.entry.js → p-3fbf3278.system.entry.js} +1 -1
  169. package/dist/ripple/{p-6b4bc7ed.system.entry.js → p-430183de.system.entry.js} +1 -1
  170. package/dist/ripple/{p-888bec42.js → p-43f1298b.js} +0 -0
  171. package/dist/ripple/{p-b545a4a1.entry.js → p-44da2057.entry.js} +1 -1
  172. package/dist/ripple/p-4a1498f7.system.js +1 -0
  173. package/dist/ripple/p-4f1bf7f5.entry.js +1 -0
  174. package/dist/ripple/{p-32c15757.entry.js → p-5bea2c87.entry.js} +1 -1
  175. package/dist/ripple/{p-0ec5e02c.system.js → p-63190f58.system.js} +0 -0
  176. package/dist/ripple/{p-959aa7ae.system.entry.js → p-695fba1d.system.entry.js} +1 -1
  177. package/dist/ripple/p-791c6577.js +1 -0
  178. package/dist/ripple/{p-2a18f87c.entry.js → p-7a654f2c.entry.js} +1 -1
  179. package/dist/ripple/p-7ce57c62.system.js +1 -0
  180. package/dist/ripple/p-7f621f1c.system.entry.js +1 -0
  181. package/dist/ripple/{p-e3114f71.entry.js → p-87edffcc.entry.js} +1 -1
  182. package/dist/ripple/p-8ee1416a.entry.js +1 -0
  183. package/dist/ripple/{p-47639d21.entry.js → p-9a603f75.entry.js} +1 -1
  184. package/dist/ripple/{p-313b6073.system.js → p-9d02957d.system.js} +0 -0
  185. package/dist/ripple/{p-6c5006d1.entry.js → p-a2663226.entry.js} +1 -1
  186. package/dist/ripple/{p-54fb8d84.entry.js → p-a60407e7.entry.js} +1 -1
  187. package/dist/ripple/{p-05d01f10.system.entry.js → p-b6eb9ed6.system.entry.js} +1 -1
  188. package/dist/ripple/p-bf4bbba3.system.js +1 -0
  189. package/dist/ripple/{p-475e8f32.entry.js → p-c56dc658.entry.js} +1 -1
  190. package/dist/ripple/{p-e62f5770.entry.js → p-c741ddb3.entry.js} +1 -1
  191. package/dist/ripple/{p-9e294a2a.system.entry.js → p-cb22eef3.system.entry.js} +1 -1
  192. package/dist/ripple/{p-fa36e7b3.js → p-cd73566d.js} +0 -0
  193. package/dist/ripple/{p-f48bf28e.system.entry.js → p-d25523dd.system.entry.js} +1 -1
  194. package/dist/ripple/{p-2f9a6860.system.entry.js → p-d872e221.system.entry.js} +1 -1
  195. package/dist/ripple/{p-4325dabd.entry.js → p-d8a12a04.entry.js} +1 -1
  196. package/dist/ripple/{p-31af715e.system.entry.js → p-d9978c48.system.entry.js} +1 -1
  197. package/dist/ripple/p-daec9ed7.system.entry.js +1 -0
  198. package/dist/ripple/{p-ebe7b4fb.entry.js → p-dc7b53bd.entry.js} +1 -1
  199. package/dist/ripple/{p-7d9920ea.system.entry.js → p-df895edb.system.entry.js} +1 -1
  200. package/dist/ripple/{p-5095fe0c.system.entry.js → p-e5a472c8.system.entry.js} +1 -1
  201. package/dist/ripple/{p-671b7adf.entry.js → p-e9b0eccc.entry.js} +1 -1
  202. package/dist/ripple/{p-2d285e1c.system.entry.js → p-ee3b6b4c.system.entry.js} +1 -1
  203. package/dist/ripple/{p-0e3e046c.system.entry.js → p-eea875ce.system.entry.js} +1 -1
  204. package/dist/ripple/{p-5b3a44fe.system.entry.js → p-f0b67d2f.system.entry.js} +1 -1
  205. package/dist/ripple/{p-08b7ec08.system.js → p-f5df5903.system.js} +0 -0
  206. package/dist/ripple/{p-cfea1f6e.entry.js → p-f62d01f9.entry.js} +1 -1
  207. package/dist/ripple/{p-0d0286c5.entry.js → p-f640448f.entry.js} +1 -1
  208. package/dist/ripple/{p-23c428dd.entry.js → p-fbd67b12.entry.js} +1 -1
  209. package/dist/ripple/{p-1a909e18.system.entry.js → p-fccab03d.system.entry.js} +1 -1
  210. package/dist/ripple/{p-a6d6eae7.js → p-fd8070fb.js} +0 -0
  211. package/dist/ripple/ripple.esm.js +1 -1
  212. package/dist/ripple/ripple.js +1 -1
  213. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +27 -27
  214. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +11 -11
  215. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +36 -36
  216. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +27 -27
  217. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +19 -17
  218. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +10 -10
  219. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +47 -47
  220. package/dist/types/components/wm-button/wm-button.d.ts +49 -49
  221. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +80 -80
  222. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +41 -41
  223. package/dist/types/components/wm-input/wm-input.d.ts +46 -46
  224. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +34 -34
  225. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +14 -14
  226. package/dist/types/components/wm-modal/wm-modal-header.d.ts +11 -11
  227. package/dist/types/components/wm-modal/wm-modal.d.ts +41 -41
  228. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +21 -21
  229. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +13 -13
  230. package/dist/types/components/wm-navigation/wm-navigation.d.ts +28 -28
  231. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +10 -10
  232. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +13 -13
  233. package/dist/types/components/wm-navigator/wm-navigator.d.ts +61 -61
  234. package/dist/types/components/wm-option/wm-option.d.ts +35 -35
  235. package/dist/types/components/wm-pagination/wm-pagination.d.ts +32 -32
  236. package/dist/types/components/wm-search/wm-search.d.ts +86 -86
  237. package/dist/types/components/wm-select/wm-select.d.ts +94 -94
  238. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +35 -35
  239. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +38 -38
  240. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +53 -53
  241. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +20 -20
  242. package/dist/types/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.d.ts +11 -11
  243. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +126 -126
  244. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +61 -61
  245. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +27 -27
  246. package/dist/types/components/wm-uploader/wm-network-uploader/wm-network-uploader.d.ts +85 -85
  247. package/dist/types/components/wm-uploader/wm-uploader.d.ts +117 -117
  248. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +7 -7
  249. package/dist/types/components.d.ts +29 -27
  250. package/dist/types/global/__mocks__/functions.d.ts +6 -6
  251. package/dist/types/global/chartFunctions.d.ts +30 -29
  252. package/dist/types/global/functions.d.ts +46 -46
  253. package/dist/types/global/global.d.ts +1 -1
  254. package/dist/types/global/interfaces.d.ts +48 -44
  255. package/dist/types/global/services/__mocks__/http-service.d.ts +6 -6
  256. package/dist/types/global/services/http-service.d.ts +4 -4
  257. package/dist/types/lang/lang.d.ts +5 -5
  258. package/package.json +47 -47
  259. package/dist/esm-es5/global-0087a2ea.js +0 -1
  260. package/dist/ripple/p-09dca516.system.js +0 -1
  261. package/dist/ripple/p-20ad8577.entry.js +0 -1
  262. package/dist/ripple/p-276c88b5.system.entry.js +0 -1
  263. package/dist/ripple/p-4033dc2d.system.entry.js +0 -1
  264. package/dist/ripple/p-437c9944.system.js +0 -1
  265. package/dist/ripple/p-479b5d27.js +0 -1
  266. package/dist/ripple/p-71ac86cb.entry.js +0 -1
  267. package/dist/ripple/p-bbaec20d.system.js +0 -1
@@ -1,368 +1,368 @@
1
- import { h, Component, Prop, Watch, Event, Element, Listen, State } from "@stencil/core";
2
- import { debounce } from "../../global/functions";
3
- export class Pagination {
4
- constructor() {
5
- this.currentPage = 1;
6
- this.totalItems = undefined;
7
- this.itemsPerPage = undefined;
8
- this.value = 1;
9
- this.isLargeViewport = window.innerWidth > 600;
10
- this.isTabbing = false;
11
- this.srAnnouncement = "";
12
- this.totalPages = 0;
13
- this.debouncedResize = debounce(() => {
14
- this.isLargeViewport = window.innerWidth > 600;
15
- }, 250);
16
- this.getMiddlePageNums = () => {
17
- let coreBtns;
18
- // if pg is 1, 2 or 3
19
- if (this.currentPage < 4) {
20
- coreBtns = [2, 3, 4];
21
- }
22
- else if (this.currentPage > this.totalPages - 3) {
23
- coreBtns = [this.totalPages - 3, this.totalPages - 2, this.totalPages - 1];
24
- }
25
- else {
26
- coreBtns = [this.currentPage - 1, this.currentPage, this.currentPage + 1];
27
- }
28
- return coreBtns;
29
- };
30
- }
31
- toggleTabbingOn() {
32
- this.isTabbing = true;
33
- }
34
- toggleTabbingOff() {
35
- this.isTabbing = false;
36
- }
37
- maintainFocusOnNumberChange(el) {
38
- window.requestAnimationFrame(() => {
39
- switch (el) {
40
- case "previous":
41
- 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.
42
- break;
43
- case "next":
44
- this.currentPage === this.totalPages &&
45
- 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.
46
- break;
47
- case "prev-arrow":
48
- 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.
49
- break;
50
- case "next-arrow":
51
- 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.
52
- break;
53
- case "page":
54
- this.el.shadowRoot.querySelector(`button#wm-${this.currentPage}`).focus();
55
- default:
56
- return;
57
- }
58
- });
59
- }
60
- handleResize() {
61
- this.debouncedResize();
62
- }
63
- calculateTotalPages() {
64
- this.totalPages = Math.ceil(this.totalItems / this.itemsPerPage);
65
- }
66
- componentWillLoad() {
67
- if (!this.totalItems || !this.itemsPerPage || !this.currentPage) {
68
- throw new Error("Please check the required attributes");
69
- }
70
- this.calculateTotalPages();
71
- if (document.body.classList.contains("wmcl-user-is-tabbing")) {
72
- this.toggleTabbingOn();
73
- }
74
- }
75
- updatePageDisplayed(pageNum) {
76
- this.value = pageNum;
77
- this.wmPaginationPageClicked.emit();
78
- this.pageClicked.emit(); // deprecated
79
- this.srAnnouncement = `Current page, ${this.currentPage}. ${this.getCurrentPagesInView()}`;
80
- }
81
- displayShortPagination() {
82
- let pages = [];
83
- for (let i = 1; i <= this.totalPages; i++) {
84
- pages.push(this.displayPageNumber(i));
85
- }
86
- return pages;
87
- }
88
- displayLongPagination() {
89
- let view = [
90
- this.displayPageNumber(1),
91
- this.currentPage > 3 && this.displayEllipsis(),
92
- ...this.getMiddlePageNums().map((page) => this.displayPageNumber(page)),
93
- this.currentPage + 2 < this.totalPages && this.displayEllipsis(),
94
- this.displayPageNumber(this.totalPages),
95
- ];
96
- return view;
97
- }
98
- displayPageNumber(pageNum) {
99
- return (h("button", { id: `wm-${pageNum}`, class: "paginationbtn", onClick: () => {
100
- this.currentPage = pageNum;
101
- this.updatePageDisplayed(pageNum);
102
- this.maintainFocusOnNumberChange("page");
103
- }, value: pageNum, "aria-label": this.currentPage !== pageNum ? `Go to page ${pageNum}` : "", "aria-current": this.currentPage === pageNum ? "page" : undefined }, pageNum));
104
- }
105
- displayEllipsis() {
106
- return h("span", { class: "ellipsis" }, "...");
107
- }
108
- // displayPageView = () => {
109
- // // let end = this.itemsPerPage! * this.currentPage;
110
- // // const begin = end - this.itemsPerPage! + 1;
111
- // // if (end > this.totalItems!) {
112
- // // end = this.totalItems!;
113
- // // }
114
- // return <div class="pageview">{this.getCurrentView()}</div>;
115
- // };
116
- getCurrentPagesInView() {
117
- let end = this.itemsPerPage * this.currentPage;
118
- const begin = end - this.itemsPerPage + 1;
119
- if (end > this.totalItems) {
120
- end = this.totalItems;
121
- }
122
- return "Viewing " + (begin === end ? `${begin}` : `${begin}–${end} of ${this.totalItems}`);
123
- }
124
- renderLarge() {
125
- return (h("div", { class: "largescreen" },
126
- h("div", { class: "pageview" }, this.getCurrentPagesInView()),
127
- h("div", { class: `pagebtncontainer ${this.isTabbing ? "user-is-tabbing" : ""}` },
128
- h("button", { id: "previous", class: "paginationbtn previousbtn", onClick: () => {
129
- this.currentPage = this.currentPage - 1;
130
- this.updatePageDisplayed(this.currentPage);
131
- this.maintainFocusOnNumberChange("previous");
132
- }, disabled: this.currentPage === 1, "aria-label": "Go to previous page", "aria-controls": "status" }, "Previous"),
133
- this.totalPages < 6 ? this.displayShortPagination() : this.displayLongPagination(),
134
- h("button", { id: "next", class: "paginationbtn nextbtn", onClick: () => {
135
- this.currentPage = this.currentPage + 1;
136
- this.updatePageDisplayed(this.currentPage);
137
- this.maintainFocusOnNumberChange("next");
138
- }, disabled: this.currentPage === this.totalPages, "aria-label": "Go to next page", "aria-controls": "status" }, "Next"))));
139
- }
140
- renderSmall() {
141
- return (h("div", { class: "smallscreen" },
142
- h("div", { class: `pagebtncontainer ${this.isTabbing ? "user-is-tabbing" : ""}` },
143
- h("button", { id: `wm-1-arw`, class: "paginationbtn", onClick: () => {
144
- this.currentPage = 1;
145
- this.updatePageDisplayed(1);
146
- this.maintainFocusOnNumberChange("prev-arrow");
147
- }, value: 1, "aria-current": this.currentPage === 1 ? "page" : undefined, "aria-label": `Go to page 1`, "aria-controls": "status", disabled: this.currentPage === 1 },
148
- h("svg", { width: "16", height: "12", xmlns: "http://www.w3.org/2000/svg" },
149
- 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" }))),
150
- h("button", { id: "previous-arw", class: "paginationbtn previousbtn", onClick: () => {
151
- this.currentPage -= 1;
152
- this.updatePageDisplayed(this.currentPage);
153
- this.maintainFocusOnNumberChange("prev-arrow");
154
- }, disabled: this.currentPage === 1, "aria-label": "Go to previous page" },
155
- h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" },
156
- h("path", { d: "M7.41 10.59L2.83 6l4.58-4.59L6 0 0 6l6 6z" }))),
157
- "Page ",
158
- this.currentPage,
159
- " of ",
160
- this.totalPages,
161
- h("button", { id: "next-arw", class: "paginationbtn nextbtn", onClick: () => {
162
- this.currentPage += 1;
163
- this.updatePageDisplayed(this.currentPage);
164
- this.maintainFocusOnNumberChange("next-arrow");
165
- }, disabled: this.currentPage === this.totalPages, "aria-label": "Go to next page" },
166
- h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" },
167
- h("path", { d: "M.59 10.59L5.17 6 .59 1.41 2 0l6 6-6 6z" }))),
168
- h("button", { id: `wm-${this.totalPages}-arw`, class: "paginationbtn", onClick: () => {
169
- this.currentPage = this.totalPages;
170
- this.updatePageDisplayed(this.totalPages);
171
- this.maintainFocusOnNumberChange("next-arrow");
172
- }, value: this.totalPages, "aria-current": this.currentPage === this.totalPages ? "page" : undefined, "aria-label": `Go to last page, page ${this.totalPages}`, "aria-controls": "status", disabled: this.currentPage === this.totalPages },
173
- h("svg", { width: "17", height: "12", xmlns: "http://www.w3.org/2000/svg" },
174
- 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" }))))));
175
- }
176
- render() {
177
- return (
178
- // do not render the component if there's only one page
179
- this.totalItems > this.itemsPerPage && (h("nav", { "aria-label": `Pagination Navigation. ${this.getCurrentPagesInView()}. Current page, ${this.currentPage}.` },
180
- this.isLargeViewport ? this.renderLarge() : this.renderSmall(),
181
- h("div", { id: "status", class: "sr-only", "aria-live": "polite", "aria-relevant": "text", "aria-atomic": "true" }, this.srAnnouncement))));
182
- }
183
- static get is() { return "wm-pagination"; }
184
- static get encapsulation() { return "shadow"; }
185
- static get originalStyleUrls() { return {
186
- "$": ["wm-pagination.scss"]
187
- }; }
188
- static get styleUrls() { return {
189
- "$": ["wm-pagination.css"]
190
- }; }
191
- static get properties() { return {
192
- "currentPage": {
193
- "type": "number",
194
- "mutable": false,
195
- "complexType": {
196
- "original": "number",
197
- "resolved": "number",
198
- "references": {}
199
- },
200
- "required": false,
201
- "optional": false,
202
- "docs": {
203
- "tags": [],
204
- "text": ""
205
- },
206
- "attribute": "current-page",
207
- "reflect": false,
208
- "defaultValue": "1"
209
- },
210
- "totalItems": {
211
- "type": "number",
212
- "mutable": false,
213
- "complexType": {
214
- "original": "number",
215
- "resolved": "number | undefined",
216
- "references": {}
217
- },
218
- "required": false,
219
- "optional": true,
220
- "docs": {
221
- "tags": [],
222
- "text": ""
223
- },
224
- "attribute": "total-items",
225
- "reflect": false,
226
- "defaultValue": "undefined"
227
- },
228
- "itemsPerPage": {
229
- "type": "number",
230
- "mutable": false,
231
- "complexType": {
232
- "original": "number",
233
- "resolved": "number | undefined",
234
- "references": {}
235
- },
236
- "required": false,
237
- "optional": true,
238
- "docs": {
239
- "tags": [],
240
- "text": ""
241
- },
242
- "attribute": "items-per-page",
243
- "reflect": false,
244
- "defaultValue": "undefined"
245
- },
246
- "value": {
247
- "type": "number",
248
- "mutable": false,
249
- "complexType": {
250
- "original": "number",
251
- "resolved": "number",
252
- "references": {}
253
- },
254
- "required": false,
255
- "optional": false,
256
- "docs": {
257
- "tags": [],
258
- "text": ""
259
- },
260
- "attribute": "value",
261
- "reflect": false,
262
- "defaultValue": "1"
263
- },
264
- "isLargeViewport": {
265
- "type": "boolean",
266
- "mutable": false,
267
- "complexType": {
268
- "original": "boolean",
269
- "resolved": "boolean",
270
- "references": {}
271
- },
272
- "required": false,
273
- "optional": false,
274
- "docs": {
275
- "tags": [],
276
- "text": ""
277
- },
278
- "attribute": "is-large-viewport",
279
- "reflect": false,
280
- "defaultValue": "window.innerWidth > 600"
281
- }
282
- }; }
283
- static get states() { return {
284
- "isTabbing": {},
285
- "srAnnouncement": {}
286
- }; }
287
- static get events() { return [{
288
- "method": "wmPaginationPageClicked",
289
- "name": "wmPaginationPageClicked",
290
- "bubbles": true,
291
- "cancelable": true,
292
- "composed": true,
293
- "docs": {
294
- "tags": [],
295
- "text": ""
296
- },
297
- "complexType": {
298
- "original": "String",
299
- "resolved": "String",
300
- "references": {
301
- "String": {
302
- "location": "global"
303
- }
304
- }
305
- }
306
- }, {
307
- "method": "pageClicked",
308
- "name": "pageClicked",
309
- "bubbles": true,
310
- "cancelable": true,
311
- "composed": true,
312
- "docs": {
313
- "tags": [],
314
- "text": ""
315
- },
316
- "complexType": {
317
- "original": "String",
318
- "resolved": "String",
319
- "references": {
320
- "String": {
321
- "location": "global"
322
- }
323
- }
324
- }
325
- }, {
326
- "method": "focusCurrentPage",
327
- "name": "focusCurrentPage",
328
- "bubbles": true,
329
- "cancelable": true,
330
- "composed": true,
331
- "docs": {
332
- "tags": [],
333
- "text": ""
334
- },
335
- "complexType": {
336
- "original": "any",
337
- "resolved": "any",
338
- "references": {}
339
- }
340
- }]; }
341
- static get elementRef() { return "el"; }
342
- static get watchers() { return [{
343
- "propName": "totalItems",
344
- "methodName": "calculateTotalPages"
345
- }, {
346
- "propName": "itemsPerPage",
347
- "methodName": "calculateTotalPages"
348
- }]; }
349
- static get listeners() { return [{
350
- "name": "wmUserIsTabbing",
351
- "method": "toggleTabbingOn",
352
- "target": "window",
353
- "capture": false,
354
- "passive": false
355
- }, {
356
- "name": "wmUserIsNotTabbing",
357
- "method": "toggleTabbingOff",
358
- "target": "window",
359
- "capture": false,
360
- "passive": false
361
- }, {
362
- "name": "resize",
363
- "method": "handleResize",
364
- "target": "window",
365
- "capture": false,
366
- "passive": true
367
- }]; }
368
- }
1
+ import { h, Component, Prop, Watch, Event, Element, Listen, State } from "@stencil/core";
2
+ import { debounce } from "../../global/functions";
3
+ export class Pagination {
4
+ constructor() {
5
+ this.currentPage = 1;
6
+ this.totalItems = undefined;
7
+ this.itemsPerPage = undefined;
8
+ this.value = 1;
9
+ this.isLargeViewport = window.innerWidth > 600;
10
+ this.isTabbing = false;
11
+ this.srAnnouncement = "";
12
+ this.totalPages = 0;
13
+ this.debouncedResize = debounce(() => {
14
+ this.isLargeViewport = window.innerWidth > 600;
15
+ }, 250);
16
+ this.getMiddlePageNums = () => {
17
+ let coreBtns;
18
+ // if pg is 1, 2 or 3
19
+ if (this.currentPage < 4) {
20
+ coreBtns = [2, 3, 4];
21
+ }
22
+ else if (this.currentPage > this.totalPages - 3) {
23
+ coreBtns = [this.totalPages - 3, this.totalPages - 2, this.totalPages - 1];
24
+ }
25
+ else {
26
+ coreBtns = [this.currentPage - 1, this.currentPage, this.currentPage + 1];
27
+ }
28
+ return coreBtns;
29
+ };
30
+ }
31
+ toggleTabbingOn() {
32
+ this.isTabbing = true;
33
+ }
34
+ toggleTabbingOff() {
35
+ this.isTabbing = false;
36
+ }
37
+ maintainFocusOnNumberChange(el) {
38
+ window.requestAnimationFrame(() => {
39
+ switch (el) {
40
+ case "previous":
41
+ 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.
42
+ break;
43
+ case "next":
44
+ this.currentPage === this.totalPages &&
45
+ 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.
46
+ break;
47
+ case "prev-arrow":
48
+ 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.
49
+ break;
50
+ case "next-arrow":
51
+ 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.
52
+ break;
53
+ case "page":
54
+ this.el.shadowRoot.querySelector(`button#wm-${this.currentPage}`).focus();
55
+ default:
56
+ return;
57
+ }
58
+ });
59
+ }
60
+ handleResize() {
61
+ this.debouncedResize();
62
+ }
63
+ calculateTotalPages() {
64
+ this.totalPages = Math.ceil(this.totalItems / this.itemsPerPage);
65
+ }
66
+ componentWillLoad() {
67
+ if (!this.totalItems || !this.itemsPerPage || !this.currentPage) {
68
+ throw new Error("Please check the required attributes");
69
+ }
70
+ this.calculateTotalPages();
71
+ if (document.body.classList.contains("wmcl-user-is-tabbing")) {
72
+ this.toggleTabbingOn();
73
+ }
74
+ }
75
+ updatePageDisplayed(pageNum) {
76
+ this.value = pageNum;
77
+ this.wmPaginationPageClicked.emit();
78
+ this.pageClicked.emit(); // deprecated
79
+ this.srAnnouncement = `Current page, ${this.currentPage}. ${this.getCurrentPagesInView()}`;
80
+ }
81
+ displayShortPagination() {
82
+ let pages = [];
83
+ for (let i = 1; i <= this.totalPages; i++) {
84
+ pages.push(this.displayPageNumber(i));
85
+ }
86
+ return pages;
87
+ }
88
+ displayLongPagination() {
89
+ let view = [
90
+ this.displayPageNumber(1),
91
+ this.currentPage > 3 && this.displayEllipsis(),
92
+ ...this.getMiddlePageNums().map((page) => this.displayPageNumber(page)),
93
+ this.currentPage + 2 < this.totalPages && this.displayEllipsis(),
94
+ this.displayPageNumber(this.totalPages),
95
+ ];
96
+ return view;
97
+ }
98
+ displayPageNumber(pageNum) {
99
+ return (h("button", { id: `wm-${pageNum}`, class: "paginationbtn", onClick: () => {
100
+ this.currentPage = pageNum;
101
+ this.updatePageDisplayed(pageNum);
102
+ this.maintainFocusOnNumberChange("page");
103
+ }, value: pageNum, "aria-label": this.currentPage !== pageNum ? `Go to page ${pageNum}` : "", "aria-current": this.currentPage === pageNum ? "page" : undefined }, pageNum));
104
+ }
105
+ displayEllipsis() {
106
+ return h("span", { class: "ellipsis" }, "...");
107
+ }
108
+ // displayPageView = () => {
109
+ // // let end = this.itemsPerPage! * this.currentPage;
110
+ // // const begin = end - this.itemsPerPage! + 1;
111
+ // // if (end > this.totalItems!) {
112
+ // // end = this.totalItems!;
113
+ // // }
114
+ // return <div class="pageview">{this.getCurrentView()}</div>;
115
+ // };
116
+ getCurrentPagesInView() {
117
+ let end = this.itemsPerPage * this.currentPage;
118
+ const begin = end - this.itemsPerPage + 1;
119
+ if (end > this.totalItems) {
120
+ end = this.totalItems;
121
+ }
122
+ return "Viewing " + (begin === end ? `${begin}` : `${begin}–${end} of ${this.totalItems}`);
123
+ }
124
+ renderLarge() {
125
+ return (h("div", { class: "largescreen" },
126
+ h("div", { class: "pageview" }, this.getCurrentPagesInView()),
127
+ h("div", { class: `pagebtncontainer ${this.isTabbing ? "user-is-tabbing" : ""}` },
128
+ h("button", { id: "previous", class: "paginationbtn previousbtn", onClick: () => {
129
+ this.currentPage = this.currentPage - 1;
130
+ this.updatePageDisplayed(this.currentPage);
131
+ this.maintainFocusOnNumberChange("previous");
132
+ }, disabled: this.currentPage === 1, "aria-label": "Go to previous page", "aria-controls": "status" }, "Previous"),
133
+ this.totalPages < 6 ? this.displayShortPagination() : this.displayLongPagination(),
134
+ h("button", { id: "next", class: "paginationbtn nextbtn", onClick: () => {
135
+ this.currentPage = this.currentPage + 1;
136
+ this.updatePageDisplayed(this.currentPage);
137
+ this.maintainFocusOnNumberChange("next");
138
+ }, disabled: this.currentPage === this.totalPages, "aria-label": "Go to next page", "aria-controls": "status" }, "Next"))));
139
+ }
140
+ renderSmall() {
141
+ return (h("div", { class: "smallscreen" },
142
+ h("div", { class: `pagebtncontainer ${this.isTabbing ? "user-is-tabbing" : ""}` },
143
+ h("button", { id: `wm-1-arw`, class: "paginationbtn", onClick: () => {
144
+ this.currentPage = 1;
145
+ this.updatePageDisplayed(1);
146
+ this.maintainFocusOnNumberChange("prev-arrow");
147
+ }, value: 1, "aria-current": this.currentPage === 1 ? "page" : undefined, "aria-label": `Go to page 1`, "aria-controls": "status", disabled: this.currentPage === 1 },
148
+ h("svg", { width: "16", height: "12", xmlns: "http://www.w3.org/2000/svg" },
149
+ 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" }))),
150
+ h("button", { id: "previous-arw", class: "paginationbtn previousbtn", onClick: () => {
151
+ this.currentPage -= 1;
152
+ this.updatePageDisplayed(this.currentPage);
153
+ this.maintainFocusOnNumberChange("prev-arrow");
154
+ }, disabled: this.currentPage === 1, "aria-label": "Go to previous page" },
155
+ h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" },
156
+ h("path", { d: "M7.41 10.59L2.83 6l4.58-4.59L6 0 0 6l6 6z" }))),
157
+ "Page ",
158
+ this.currentPage,
159
+ " of ",
160
+ this.totalPages,
161
+ h("button", { id: "next-arw", class: "paginationbtn nextbtn", onClick: () => {
162
+ this.currentPage += 1;
163
+ this.updatePageDisplayed(this.currentPage);
164
+ this.maintainFocusOnNumberChange("next-arrow");
165
+ }, disabled: this.currentPage === this.totalPages, "aria-label": "Go to next page" },
166
+ h("svg", { width: "8", height: "12", xmlns: "http://www.w3.org/2000/svg" },
167
+ h("path", { d: "M.59 10.59L5.17 6 .59 1.41 2 0l6 6-6 6z" }))),
168
+ h("button", { id: `wm-${this.totalPages}-arw`, class: "paginationbtn", onClick: () => {
169
+ this.currentPage = this.totalPages;
170
+ this.updatePageDisplayed(this.totalPages);
171
+ this.maintainFocusOnNumberChange("next-arrow");
172
+ }, value: this.totalPages, "aria-current": this.currentPage === this.totalPages ? "page" : undefined, "aria-label": `Go to last page, page ${this.totalPages}`, "aria-controls": "status", disabled: this.currentPage === this.totalPages },
173
+ h("svg", { width: "17", height: "12", xmlns: "http://www.w3.org/2000/svg" },
174
+ 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" }))))));
175
+ }
176
+ render() {
177
+ return (
178
+ // do not render the component if there's only one page
179
+ this.totalItems > this.itemsPerPage && (h("nav", { "aria-label": `Pagination Navigation. ${this.getCurrentPagesInView()}. Current page, ${this.currentPage}.` },
180
+ this.isLargeViewport ? this.renderLarge() : this.renderSmall(),
181
+ h("div", { id: "status", class: "sr-only", "aria-live": "polite", "aria-relevant": "text", "aria-atomic": "true" }, this.srAnnouncement))));
182
+ }
183
+ static get is() { return "wm-pagination"; }
184
+ static get encapsulation() { return "shadow"; }
185
+ static get originalStyleUrls() { return {
186
+ "$": ["wm-pagination.scss"]
187
+ }; }
188
+ static get styleUrls() { return {
189
+ "$": ["wm-pagination.css"]
190
+ }; }
191
+ static get properties() { return {
192
+ "currentPage": {
193
+ "type": "number",
194
+ "mutable": false,
195
+ "complexType": {
196
+ "original": "number",
197
+ "resolved": "number",
198
+ "references": {}
199
+ },
200
+ "required": false,
201
+ "optional": false,
202
+ "docs": {
203
+ "tags": [],
204
+ "text": ""
205
+ },
206
+ "attribute": "current-page",
207
+ "reflect": false,
208
+ "defaultValue": "1"
209
+ },
210
+ "totalItems": {
211
+ "type": "number",
212
+ "mutable": false,
213
+ "complexType": {
214
+ "original": "number",
215
+ "resolved": "number | undefined",
216
+ "references": {}
217
+ },
218
+ "required": false,
219
+ "optional": true,
220
+ "docs": {
221
+ "tags": [],
222
+ "text": ""
223
+ },
224
+ "attribute": "total-items",
225
+ "reflect": false,
226
+ "defaultValue": "undefined"
227
+ },
228
+ "itemsPerPage": {
229
+ "type": "number",
230
+ "mutable": false,
231
+ "complexType": {
232
+ "original": "number",
233
+ "resolved": "number | undefined",
234
+ "references": {}
235
+ },
236
+ "required": false,
237
+ "optional": true,
238
+ "docs": {
239
+ "tags": [],
240
+ "text": ""
241
+ },
242
+ "attribute": "items-per-page",
243
+ "reflect": false,
244
+ "defaultValue": "undefined"
245
+ },
246
+ "value": {
247
+ "type": "number",
248
+ "mutable": false,
249
+ "complexType": {
250
+ "original": "number",
251
+ "resolved": "number",
252
+ "references": {}
253
+ },
254
+ "required": false,
255
+ "optional": false,
256
+ "docs": {
257
+ "tags": [],
258
+ "text": ""
259
+ },
260
+ "attribute": "value",
261
+ "reflect": false,
262
+ "defaultValue": "1"
263
+ },
264
+ "isLargeViewport": {
265
+ "type": "boolean",
266
+ "mutable": false,
267
+ "complexType": {
268
+ "original": "boolean",
269
+ "resolved": "boolean",
270
+ "references": {}
271
+ },
272
+ "required": false,
273
+ "optional": false,
274
+ "docs": {
275
+ "tags": [],
276
+ "text": ""
277
+ },
278
+ "attribute": "is-large-viewport",
279
+ "reflect": false,
280
+ "defaultValue": "window.innerWidth > 600"
281
+ }
282
+ }; }
283
+ static get states() { return {
284
+ "isTabbing": {},
285
+ "srAnnouncement": {}
286
+ }; }
287
+ static get events() { return [{
288
+ "method": "wmPaginationPageClicked",
289
+ "name": "wmPaginationPageClicked",
290
+ "bubbles": true,
291
+ "cancelable": true,
292
+ "composed": true,
293
+ "docs": {
294
+ "tags": [],
295
+ "text": ""
296
+ },
297
+ "complexType": {
298
+ "original": "String",
299
+ "resolved": "String",
300
+ "references": {
301
+ "String": {
302
+ "location": "global"
303
+ }
304
+ }
305
+ }
306
+ }, {
307
+ "method": "pageClicked",
308
+ "name": "pageClicked",
309
+ "bubbles": true,
310
+ "cancelable": true,
311
+ "composed": true,
312
+ "docs": {
313
+ "tags": [],
314
+ "text": ""
315
+ },
316
+ "complexType": {
317
+ "original": "String",
318
+ "resolved": "String",
319
+ "references": {
320
+ "String": {
321
+ "location": "global"
322
+ }
323
+ }
324
+ }
325
+ }, {
326
+ "method": "focusCurrentPage",
327
+ "name": "focusCurrentPage",
328
+ "bubbles": true,
329
+ "cancelable": true,
330
+ "composed": true,
331
+ "docs": {
332
+ "tags": [],
333
+ "text": ""
334
+ },
335
+ "complexType": {
336
+ "original": "any",
337
+ "resolved": "any",
338
+ "references": {}
339
+ }
340
+ }]; }
341
+ static get elementRef() { return "el"; }
342
+ static get watchers() { return [{
343
+ "propName": "totalItems",
344
+ "methodName": "calculateTotalPages"
345
+ }, {
346
+ "propName": "itemsPerPage",
347
+ "methodName": "calculateTotalPages"
348
+ }]; }
349
+ static get listeners() { return [{
350
+ "name": "wmUserIsTabbing",
351
+ "method": "toggleTabbingOn",
352
+ "target": "window",
353
+ "capture": false,
354
+ "passive": false
355
+ }, {
356
+ "name": "wmUserIsNotTabbing",
357
+ "method": "toggleTabbingOff",
358
+ "target": "window",
359
+ "capture": false,
360
+ "passive": false
361
+ }, {
362
+ "name": "resize",
363
+ "method": "handleResize",
364
+ "target": "window",
365
+ "capture": false,
366
+ "passive": true
367
+ }]; }
368
+ }