@watermarkinsights/ripple 5.2.0 → 5.3.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/dist/{esm/global-cb4fb91c.js → cjs/app-globals-7025eb63.js} +10 -1
  2. package/dist/cjs/{chartFunctions-2195a9d2.js → chartFunctions-9075d687.js} +3 -3
  3. package/dist/cjs/{functions-48a748f0.js → functions-b73604c3.js} +297 -7
  4. package/dist/cjs/index-3c3d6c9f.js +1810 -0
  5. package/dist/cjs/{interfaces-ad9e80a6.js → interfaces-85d78ae9.js} +3 -4
  6. package/dist/cjs/{intl-29d2cc42.js → intl-b20d5420.js} +1 -1
  7. package/dist/cjs/loader.cjs.js +5 -4
  8. package/dist/cjs/priv-calendar.cjs.entry.js +554 -0
  9. package/dist/cjs/priv-chart-popover.cjs.entry.js +6 -5
  10. package/dist/cjs/priv-navigator-button.cjs.entry.js +4 -3
  11. package/dist/cjs/priv-navigator-item.cjs.entry.js +4 -3
  12. package/dist/cjs/ripple.cjs.js +13 -12
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +9 -7
  14. package/dist/cjs/wm-button.cjs.entry.js +6 -5
  15. package/dist/cjs/wm-chart-slice.cjs.entry.js +1 -1
  16. package/dist/cjs/wm-chart.cjs.entry.js +7 -6
  17. package/dist/cjs/wm-date-range.cjs.entry.js +446 -0
  18. package/dist/cjs/wm-datepicker.cjs.entry.js +90 -20
  19. package/dist/cjs/wm-file-list.cjs.entry.js +5 -4
  20. package/dist/cjs/wm-file.cjs.entry.js +5 -4
  21. package/dist/cjs/wm-input.cjs.entry.js +6 -5
  22. package/dist/cjs/wm-line-chart.cjs.entry.js +15 -14
  23. package/dist/cjs/wm-modal-footer.cjs.entry.js +4 -3
  24. package/dist/cjs/wm-modal-header.cjs.entry.js +6 -5
  25. package/dist/cjs/wm-modal.cjs.entry.js +6 -5
  26. package/dist/cjs/wm-navigation_3.cjs.entry.js +13 -10
  27. package/dist/cjs/wm-navigator.cjs.entry.js +5 -4
  28. package/dist/cjs/wm-option_2.cjs.entry.js +10 -8
  29. package/dist/cjs/wm-pagination.cjs.entry.js +5 -4
  30. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +9 -7
  31. package/dist/cjs/wm-search.cjs.entry.js +7 -6
  32. package/dist/cjs/wm-snackbar.cjs.entry.js +7 -6
  33. package/dist/cjs/wm-tab-item_3.cjs.entry.js +11 -8
  34. package/dist/cjs/wm-tag-input.cjs.entry.js +8 -7
  35. package/dist/cjs/wm-tag-option.cjs.entry.js +2 -2
  36. package/dist/cjs/wm-textarea.cjs.entry.js +6 -5
  37. package/dist/cjs/wm-timepicker.cjs.entry.js +6 -5
  38. package/dist/cjs/wm-toggletip.cjs.entry.js +6 -5
  39. package/dist/cjs/wm-uploader.cjs.entry.js +7 -6
  40. package/dist/cjs/wm-wrapper.cjs.entry.js +1 -1
  41. package/dist/collection/collection-manifest.json +5 -4
  42. package/dist/collection/components/charts/chartFunctions.js +1 -1
  43. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +2 -2
  44. package/dist/collection/components/charts/wm-chart/wm-chart.js +1 -1
  45. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +9 -9
  46. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +1 -1
  47. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +1 -1
  48. package/dist/collection/components/{wm-datepicker/wm-datepicker.css → datepickers/datepicker.css} +40 -28
  49. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +479 -0
  50. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +816 -0
  51. package/dist/collection/components/datepickers/wm-date-range.js +804 -0
  52. package/dist/collection/components/{wm-datepicker → datepickers}/wm-datepicker.js +114 -29
  53. package/dist/collection/components/wm-action-menu/wm-action-menu.js +1 -1
  54. package/dist/collection/components/wm-button/wm-button.js +1 -1
  55. package/dist/collection/components/wm-file/wm-file.js +1 -1
  56. package/dist/collection/components/wm-file-list/wm-file-list.js +5 -5
  57. package/dist/collection/components/wm-input/wm-input.js +1 -1
  58. package/dist/collection/components/wm-menuitem/wm-menuitem.js +1 -1
  59. package/dist/collection/components/wm-modal/wm-modal-footer.js +1 -1
  60. package/dist/collection/components/wm-modal/wm-modal-header.js +1 -1
  61. package/dist/collection/components/wm-modal/wm-modal.js +2 -2
  62. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +1 -1
  63. package/dist/collection/components/wm-navigation/wm-navigation-item.js +1 -1
  64. package/dist/collection/components/wm-navigation/wm-navigation.js +2 -2
  65. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +1 -1
  66. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +1 -1
  67. package/dist/collection/components/wm-option/wm-option.js +1 -1
  68. package/dist/collection/components/wm-pagination/wm-pagination.js +1 -1
  69. package/dist/collection/components/wm-search/wm-search.js +5 -4
  70. package/dist/collection/components/wm-select/wm-select.js +2 -2
  71. package/dist/collection/components/wm-snackbar/wm-snackbar.js +2 -2
  72. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +1 -1
  73. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +1 -1
  74. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +1 -1
  75. package/dist/collection/components/wm-tag-input/wm-tag-input.js +3 -3
  76. package/dist/collection/components/wm-textarea/wm-textarea.js +1 -1
  77. package/dist/collection/components/wm-timepicker/wm-timepicker.js +11 -8
  78. package/dist/collection/components/wm-toggletip/wm-toggletip.js +2 -2
  79. package/dist/collection/components/wm-uploader/wm-uploader.js +2 -2
  80. package/dist/collection/dev/action-menu.js +0 -0
  81. package/dist/collection/dev/button.js +0 -0
  82. package/dist/collection/dev/chart-small.js +56 -0
  83. package/dist/collection/dev/chart.js +37 -0
  84. package/dist/collection/dev/date-range.js +6 -0
  85. package/dist/collection/dev/datepicker.js +46 -0
  86. package/dist/collection/dev/file-list.js +16 -0
  87. package/dist/collection/dev/file.js +0 -0
  88. package/dist/collection/dev/input.js +6 -0
  89. package/dist/collection/dev/line-chart.js +0 -0
  90. package/dist/collection/dev/modal.js +75 -0
  91. package/dist/collection/dev/navigation.js +13 -0
  92. package/dist/collection/dev/navigator.js +34 -0
  93. package/dist/collection/dev/pagination.js +7 -0
  94. package/dist/collection/dev/progress-monitor.js +0 -0
  95. package/dist/collection/dev/scripts.js +31 -748
  96. package/dist/collection/dev/search.js +72 -0
  97. package/dist/collection/dev/select.js +57 -0
  98. package/dist/collection/dev/snackbar.js +38 -0
  99. package/dist/collection/dev/tabs.js +44 -0
  100. package/dist/collection/dev/tag-input.js +32 -0
  101. package/dist/collection/dev/textarea.js +28 -0
  102. package/dist/collection/dev/timepicker.js +32 -0
  103. package/dist/collection/dev/toggletip.js +0 -0
  104. package/dist/collection/dev/uploader.js +139 -0
  105. package/dist/collection/global/functions.js +187 -0
  106. package/dist/collection/global/interfaces.js +3 -4
  107. package/dist/{cjs/global-d5e26274.js → esm/app-globals-0c592c57.js} +7 -2
  108. package/dist/esm/{chartFunctions-d2d8f1b2.js → chartFunctions-730742b7.js} +3 -3
  109. package/dist/esm/{functions-58918a32.js → functions-eda88c5f.js} +292 -8
  110. package/dist/esm/index-0ed3ed7d.js +1780 -0
  111. package/dist/esm/{interfaces-9b75fb61.js → interfaces-cc5b177f.js} +3 -4
  112. package/dist/esm/{intl-f9d79dff.js → intl-de8432e2.js} +1 -1
  113. package/dist/esm/loader.js +6 -5
  114. package/dist/esm/polyfills/core-js.js +0 -0
  115. package/dist/esm/polyfills/dom.js +0 -0
  116. package/dist/esm/polyfills/es5-html-element.js +0 -0
  117. package/dist/esm/polyfills/index.js +0 -0
  118. package/dist/esm/polyfills/system.js +0 -0
  119. package/dist/esm/priv-calendar.entry.js +550 -0
  120. package/dist/esm/priv-chart-popover.entry.js +6 -5
  121. package/dist/esm/priv-navigator-button.entry.js +4 -3
  122. package/dist/esm/priv-navigator-item.entry.js +4 -3
  123. package/dist/esm/ripple.js +14 -13
  124. package/dist/esm/wm-action-menu_2.entry.js +9 -7
  125. package/dist/esm/wm-button.entry.js +6 -5
  126. package/dist/esm/wm-chart-slice.entry.js +1 -1
  127. package/dist/esm/wm-chart.entry.js +7 -6
  128. package/dist/esm/wm-date-range.entry.js +442 -0
  129. package/dist/esm/wm-datepicker.entry.js +90 -20
  130. package/dist/esm/wm-file-list.entry.js +5 -4
  131. package/dist/esm/wm-file.entry.js +5 -4
  132. package/dist/esm/wm-input.entry.js +6 -5
  133. package/dist/esm/wm-line-chart.entry.js +15 -14
  134. package/dist/esm/wm-modal-footer.entry.js +4 -3
  135. package/dist/esm/wm-modal-header.entry.js +6 -5
  136. package/dist/esm/wm-modal.entry.js +6 -5
  137. package/dist/esm/wm-navigation_3.entry.js +13 -10
  138. package/dist/esm/wm-navigator.entry.js +5 -4
  139. package/dist/esm/wm-option_2.entry.js +10 -8
  140. package/dist/esm/wm-pagination.entry.js +5 -4
  141. package/dist/esm/wm-progress-indicator_3.entry.js +9 -7
  142. package/dist/esm/wm-search.entry.js +7 -6
  143. package/dist/esm/wm-snackbar.entry.js +7 -6
  144. package/dist/esm/wm-tab-item_3.entry.js +11 -8
  145. package/dist/esm/wm-tag-input.entry.js +8 -7
  146. package/dist/esm/wm-tag-option.entry.js +2 -2
  147. package/dist/esm/wm-textarea.entry.js +6 -5
  148. package/dist/esm/wm-timepicker.entry.js +6 -5
  149. package/dist/esm/wm-toggletip.entry.js +6 -5
  150. package/dist/esm/wm-uploader.entry.js +7 -6
  151. package/dist/esm/wm-wrapper.entry.js +1 -1
  152. package/dist/esm-es5/app-globals-0c592c57.js +1 -0
  153. package/dist/esm-es5/{chartFunctions-d2d8f1b2.js → chartFunctions-730742b7.js} +1 -1
  154. package/dist/esm-es5/functions-eda88c5f.js +1 -0
  155. package/dist/esm-es5/index-0ed3ed7d.js +1 -0
  156. package/dist/esm-es5/{intl-f9d79dff.js → intl-de8432e2.js} +1 -1
  157. package/dist/esm-es5/loader.js +1 -1
  158. package/dist/esm-es5/priv-calendar.entry.js +1 -0
  159. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  160. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  161. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  162. package/dist/esm-es5/ripple.js +1 -1
  163. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  164. package/dist/esm-es5/wm-button.entry.js +1 -1
  165. package/dist/esm-es5/wm-chart-slice.entry.js +1 -1
  166. package/dist/esm-es5/wm-chart.entry.js +1 -1
  167. package/dist/esm-es5/wm-date-range.entry.js +1 -0
  168. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  169. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  170. package/dist/esm-es5/wm-file.entry.js +1 -1
  171. package/dist/esm-es5/wm-input.entry.js +1 -1
  172. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  173. package/dist/esm-es5/wm-modal-footer.entry.js +1 -1
  174. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  175. package/dist/esm-es5/wm-modal.entry.js +1 -1
  176. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  177. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  178. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  179. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  180. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  181. package/dist/esm-es5/wm-search.entry.js +1 -1
  182. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  183. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  184. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  185. package/dist/esm-es5/wm-tag-option.entry.js +1 -1
  186. package/dist/esm-es5/wm-textarea.entry.js +1 -1
  187. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  188. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  189. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  190. package/dist/esm-es5/wm-wrapper.entry.js +1 -1
  191. package/dist/loader/cdn.js +1 -2
  192. package/dist/loader/index.cjs.js +1 -2
  193. package/dist/loader/index.d.ts +3 -0
  194. package/dist/loader/index.es2017.js +1 -2
  195. package/dist/loader/index.js +1 -2
  196. package/dist/ripple/p-0096e233.system.entry.js +1 -0
  197. package/dist/ripple/p-0ad27de3.system.entry.js +1 -0
  198. package/dist/ripple/p-0ccf9f96.entry.js +1 -0
  199. package/dist/ripple/{p-65420b71.entry.js → p-0e1523db.entry.js} +1 -1
  200. package/dist/ripple/{p-406f1e79.system.entry.js → p-0f117524.system.entry.js} +1 -1
  201. package/dist/ripple/p-0f7a85f4.entry.js +1 -0
  202. package/dist/ripple/p-13760c2c.entry.js +1 -0
  203. package/dist/ripple/p-14bab3fa.system.entry.js +1 -0
  204. package/dist/ripple/{p-add75652.system.entry.js → p-181068af.system.entry.js} +1 -1
  205. package/dist/ripple/p-1e536698.js +1 -0
  206. package/dist/ripple/{p-f9689d7a.entry.js → p-245f0080.entry.js} +1 -1
  207. package/dist/ripple/p-2c18b6d1.system.entry.js +1 -0
  208. package/dist/ripple/{p-fa3d10db.js → p-3036a712.js} +1 -1
  209. package/dist/ripple/p-340b18ea.entry.js +1 -0
  210. package/dist/ripple/p-37c39a40.system.entry.js +1 -0
  211. package/dist/ripple/{p-011a4acc.system.entry.js → p-39f4fca0.system.entry.js} +1 -1
  212. package/dist/ripple/p-3f5e94e3.system.js +1 -0
  213. package/dist/ripple/{p-a99b05de.system.entry.js → p-47d993b9.system.entry.js} +1 -1
  214. package/dist/ripple/p-48beea19.system.js +1 -0
  215. package/dist/ripple/{p-3a070f35.entry.js → p-4aae5688.entry.js} +1 -1
  216. package/dist/ripple/p-4ea963f3.system.entry.js +1 -0
  217. package/dist/ripple/p-501d3115.entry.js +1 -0
  218. package/dist/ripple/p-527581c5.entry.js +1 -0
  219. package/dist/ripple/p-563b5820.entry.js +1 -0
  220. package/dist/ripple/p-57695dba.js +2 -0
  221. package/dist/ripple/{p-6a9f7651.entry.js → p-5ab8174c.entry.js} +1 -1
  222. package/dist/ripple/p-5c6c325e.system.entry.js +1 -0
  223. package/dist/ripple/p-5f4c8d63.system.entry.js +1 -0
  224. package/dist/ripple/p-68e3e7c0.entry.js +1 -0
  225. package/dist/ripple/p-68fec757.system.entry.js +1 -0
  226. package/dist/ripple/p-6982bc34.entry.js +1 -0
  227. package/dist/ripple/p-6a793c40.system.entry.js +1 -0
  228. package/dist/ripple/p-6c31f0ad.system.entry.js +1 -0
  229. package/dist/ripple/p-6daf1bd3.system.entry.js +1 -0
  230. package/dist/ripple/p-6e406e8b.entry.js +1 -0
  231. package/dist/ripple/p-77210f26.entry.js +1 -0
  232. package/dist/ripple/p-7a844f5d.system.js +2 -0
  233. package/dist/ripple/{p-a03df46c.entry.js → p-7b5ac088.entry.js} +1 -1
  234. package/dist/ripple/p-7d5aaa73.system.entry.js +1 -0
  235. package/dist/ripple/p-80c92919.system.entry.js +1 -0
  236. package/dist/ripple/p-81fd2ed5.system.entry.js +1 -0
  237. package/dist/ripple/p-84d294d1.system.js +1 -0
  238. package/dist/ripple/p-85178a0d.entry.js +1 -0
  239. package/dist/ripple/p-8768ba4d.system.entry.js +1 -0
  240. package/dist/ripple/p-8af21b69.entry.js +1 -0
  241. package/dist/ripple/{p-eda4d59c.js → p-96cc3c63.js} +1 -1
  242. package/dist/ripple/{p-abe3242c.entry.js → p-98e77431.entry.js} +1 -1
  243. package/dist/ripple/p-a30eef53.entry.js +1 -0
  244. package/dist/ripple/{p-0ba8d3b6.system.entry.js → p-a36f5e7d.system.entry.js} +1 -1
  245. package/dist/ripple/p-ad6c979f.entry.js +1 -0
  246. package/dist/ripple/p-af8c1cfa.entry.js +1 -0
  247. package/dist/ripple/p-b19be746.entry.js +1 -0
  248. package/dist/ripple/p-b483ec14.entry.js +1 -0
  249. package/dist/ripple/p-b4a34241.entry.js +1 -0
  250. package/dist/ripple/{p-c9943d2e.system.entry.js → p-b6dcc6d8.system.entry.js} +1 -1
  251. package/dist/ripple/p-be28a95e.system.entry.js +1 -0
  252. package/dist/ripple/p-c6d970a4.entry.js +1 -0
  253. package/dist/ripple/{p-0d15e3f0.system.js → p-ce028b38.system.js} +1 -1
  254. package/dist/ripple/p-dba63006.system.entry.js +1 -0
  255. package/dist/ripple/p-dbb37269.system.entry.js +1 -0
  256. package/dist/ripple/{p-aecd5a1a.system.js → p-e0929c38.system.js} +1 -1
  257. package/dist/ripple/p-e19f8c43.js +1 -0
  258. package/dist/ripple/{p-02b625f6.system.entry.js → p-e3a15de3.system.entry.js} +1 -1
  259. package/dist/ripple/p-e3d66797.entry.js +1 -0
  260. package/dist/ripple/p-e64276f2.entry.js +1 -0
  261. package/dist/ripple/p-e9978b2f.entry.js +1 -0
  262. package/dist/ripple/p-ecbd3ea9.system.entry.js +1 -0
  263. package/dist/ripple/p-ecd26b33.system.entry.js +1 -0
  264. package/dist/ripple/p-ee49cb03.entry.js +1 -0
  265. package/dist/ripple/p-f0fbb86b.system.entry.js +1 -0
  266. package/dist/ripple/{p-7e56da2e.system.entry.js → p-f170963b.system.entry.js} +1 -1
  267. package/dist/ripple/{p-29509665.system.entry.js → p-f4f3bf9f.system.entry.js} +1 -1
  268. package/dist/ripple/{p-3e9fcb47.entry.js → p-f95bc54b.entry.js} +1 -1
  269. package/dist/ripple/{p-4fc6019b.system.entry.js → p-fd34619f.system.entry.js} +1 -1
  270. package/dist/ripple/{p-25446670.entry.js → p-ff095cec.entry.js} +1 -1
  271. package/dist/ripple/ripple.esm.js +1 -1
  272. package/dist/ripple/ripple.js +1 -1
  273. package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +72 -0
  274. package/dist/types/components/datepickers/wm-date-range.d.ts +68 -0
  275. package/dist/types/components/{wm-datepicker → datepickers}/wm-datepicker.d.ts +16 -2
  276. package/dist/types/components/wm-file-list/wm-file-list.d.ts +1 -1
  277. package/dist/types/components.d.ts +111 -57
  278. package/dist/types/global/functions.d.ts +25 -0
  279. package/dist/types/global/interfaces.d.ts +14 -0
  280. package/dist/types/stencil-public-runtime.d.ts +3 -10
  281. package/package.json +1 -1
  282. package/dist/cjs/index-f8ef86de.js +0 -2578
  283. package/dist/cjs/priv-datepicker.cjs.entry.js +0 -654
  284. package/dist/collection/components/charts/chartFunctions.spec.js +0 -16
  285. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.e2e.js +0 -81
  286. package/dist/collection/components/charts/screenshots.e2e.js +0 -96
  287. package/dist/collection/components/charts/wm-chart/wm-chart.e2e.js +0 -213
  288. package/dist/collection/components/charts/wm-chart/wm-chart.spec.js +0 -37
  289. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.e2e.js +0 -176
  290. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.spec.js +0 -163
  291. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.e2e.js +0 -69
  292. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.spec.js +0 -79
  293. package/dist/collection/components/wm-action-menu/wm-action-menu.e2e.js +0 -200
  294. package/dist/collection/components/wm-action-menu/wm-action-menu.spec.js +0 -48
  295. package/dist/collection/components/wm-button/wm-button.e2e.js +0 -55
  296. package/dist/collection/components/wm-button/wm-button.spec.js +0 -74
  297. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.css +0 -323
  298. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +0 -942
  299. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.spec.js +0 -76
  300. package/dist/collection/components/wm-datepicker/wm-datepicker.e2e.js +0 -382
  301. package/dist/collection/components/wm-datepicker/wm-datepicker.spec.js +0 -21
  302. package/dist/collection/components/wm-file/wm-file.spec.js +0 -194
  303. package/dist/collection/components/wm-file-list/wm-file-list.spec.js +0 -69
  304. package/dist/collection/components/wm-input/wm-input.e2e.js +0 -32
  305. package/dist/collection/components/wm-input/wm-input.spec.js +0 -173
  306. package/dist/collection/components/wm-menuitem/wm-menuitem.e2e.js +0 -23
  307. package/dist/collection/components/wm-menuitem/wm-menuitem.spec.js +0 -54
  308. package/dist/collection/components/wm-modal/wm-modal-footer.spec.js +0 -11
  309. package/dist/collection/components/wm-modal/wm-modal-header.spec.js +0 -8
  310. package/dist/collection/components/wm-modal/wm-modal.e2e.js +0 -104
  311. package/dist/collection/components/wm-modal/wm-modal.spec.js +0 -30
  312. package/dist/collection/components/wm-navigation/wm-navigation.e2e.js +0 -102
  313. package/dist/collection/components/wm-navigation/wm-navigation.spec.js +0 -91
  314. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.e2e.js +0 -50
  315. package/dist/collection/components/wm-navigator/wm-navigator.e2e.js +0 -209
  316. package/dist/collection/components/wm-navigator/wm-navigator.spec.js +0 -177
  317. package/dist/collection/components/wm-option/wm-option.e2e.js +0 -22
  318. package/dist/collection/components/wm-option/wm-option.spec.js +0 -63
  319. package/dist/collection/components/wm-pagination/wm-pagination.e2e.js +0 -312
  320. package/dist/collection/components/wm-search/wm-search.e2e.js +0 -76
  321. package/dist/collection/components/wm-search/wm-search.spec.js +0 -71
  322. package/dist/collection/components/wm-select/wm-select.e2e.js +0 -521
  323. package/dist/collection/components/wm-select/wm-select.spec.js +0 -271
  324. package/dist/collection/components/wm-snackbar/wm-snackbar.e2e.js +0 -112
  325. package/dist/collection/components/wm-snackbar/wm-snackbar.spec.js +0 -9
  326. package/dist/collection/components/wm-tabs/wm-tabs.e2e.js +0 -91
  327. package/dist/collection/components/wm-tabs/wm-tabs.spec.js +0 -12
  328. package/dist/collection/components/wm-tag-input/wm-tag-input.e2e.js +0 -204
  329. package/dist/collection/components/wm-tag-input/wm-tag-input.spec.js +0 -195
  330. package/dist/collection/components/wm-textarea/wm-textarea.e2e.js +0 -41
  331. package/dist/collection/components/wm-textarea/wm-textarea.spec.js +0 -79
  332. package/dist/collection/components/wm-timepicker/wm-timepicker.e2e.js +0 -163
  333. package/dist/collection/components/wm-timepicker/wm-timepicker.spec.js +0 -147
  334. package/dist/collection/components/wm-toggletip/wm-toggletip.e2e.js +0 -69
  335. package/dist/collection/components/wm-toggletip/wm-toggletip.spec.js +0 -21
  336. package/dist/collection/components/wm-uploader/wm-uploader.e2e.js +0 -70
  337. package/dist/collection/components/wm-uploader/wm-uploader.spec.js +0 -234
  338. package/dist/collection/global/functions.spec.js +0 -126
  339. package/dist/collection/lang/lang.spec.js +0 -20
  340. package/dist/esm/index-f164fbca.js +0 -2548
  341. package/dist/esm/priv-datepicker.entry.js +0 -650
  342. package/dist/esm-es5/functions-58918a32.js +0 -1
  343. package/dist/esm-es5/global-cb4fb91c.js +0 -1
  344. package/dist/esm-es5/index-f164fbca.js +0 -1
  345. package/dist/esm-es5/priv-datepicker.entry.js +0 -1
  346. package/dist/ripple/p-0fe97e85.system.js +0 -2
  347. package/dist/ripple/p-105f479a.system.entry.js +0 -1
  348. package/dist/ripple/p-1453ea51.system.entry.js +0 -1
  349. package/dist/ripple/p-194bdaa4.system.entry.js +0 -1
  350. package/dist/ripple/p-30a9ba6e.entry.js +0 -1
  351. package/dist/ripple/p-31f97455.system.entry.js +0 -1
  352. package/dist/ripple/p-39dc88f3.system.entry.js +0 -1
  353. package/dist/ripple/p-3dfc4242.entry.js +0 -1
  354. package/dist/ripple/p-4428c4f0.entry.js +0 -1
  355. package/dist/ripple/p-45126063.system.entry.js +0 -1
  356. package/dist/ripple/p-4bc27adf.entry.js +0 -1
  357. package/dist/ripple/p-4de51706.js +0 -2
  358. package/dist/ripple/p-4fb3748d.js +0 -1
  359. package/dist/ripple/p-5a4f76e1.entry.js +0 -1
  360. package/dist/ripple/p-5ca67373.entry.js +0 -1
  361. package/dist/ripple/p-5ceb9894.entry.js +0 -1
  362. package/dist/ripple/p-5f89831f.system.entry.js +0 -1
  363. package/dist/ripple/p-63d5db34.entry.js +0 -1
  364. package/dist/ripple/p-63fabfed.entry.js +0 -1
  365. package/dist/ripple/p-75592b7a.entry.js +0 -1
  366. package/dist/ripple/p-7e8daaac.entry.js +0 -1
  367. package/dist/ripple/p-7ea95937.entry.js +0 -1
  368. package/dist/ripple/p-7f1efb21.entry.js +0 -1
  369. package/dist/ripple/p-82d5ea8d.system.entry.js +0 -1
  370. package/dist/ripple/p-82f7eca7.entry.js +0 -1
  371. package/dist/ripple/p-88406560.system.entry.js +0 -1
  372. package/dist/ripple/p-895bfa1f.system.js +0 -1
  373. package/dist/ripple/p-8d840770.system.js +0 -1
  374. package/dist/ripple/p-8e1fd831.entry.js +0 -1
  375. package/dist/ripple/p-95e3ee3d.js +0 -1
  376. package/dist/ripple/p-994dc497.system.entry.js +0 -1
  377. package/dist/ripple/p-9dff37db.system.entry.js +0 -1
  378. package/dist/ripple/p-a71bc14f.entry.js +0 -1
  379. package/dist/ripple/p-b0579a2a.system.entry.js +0 -1
  380. package/dist/ripple/p-b1a4f626.system.entry.js +0 -1
  381. package/dist/ripple/p-b3dfb34a.entry.js +0 -1
  382. package/dist/ripple/p-b4cb2b12.entry.js +0 -1
  383. package/dist/ripple/p-c717d895.entry.js +0 -1
  384. package/dist/ripple/p-cd5fdcb1.entry.js +0 -1
  385. package/dist/ripple/p-cd659e3e.system.entry.js +0 -1
  386. package/dist/ripple/p-d02bc2f2.system.entry.js +0 -1
  387. package/dist/ripple/p-d87de822.system.entry.js +0 -1
  388. package/dist/ripple/p-da9937f5.system.js +0 -1
  389. package/dist/ripple/p-dd479c47.entry.js +0 -1
  390. package/dist/ripple/p-df78942e.entry.js +0 -1
  391. package/dist/ripple/p-e1b60b9e.system.entry.js +0 -1
  392. package/dist/ripple/p-e5de7cae.system.entry.js +0 -1
  393. package/dist/ripple/p-eb9cb021.system.entry.js +0 -1
  394. package/dist/ripple/p-ef3e35fa.entry.js +0 -1
  395. package/dist/ripple/p-f2556f03.system.entry.js +0 -1
  396. package/dist/ripple/p-f7ac9698.system.entry.js +0 -1
  397. /package/dist/esm-es5/{interfaces-9b75fb61.js → interfaces-cc5b177f.js} +0 -0
  398. /package/dist/ripple/{p-196eb2f3.js → p-2732bddd.js} +0 -0
  399. /package/dist/ripple/{p-1402cfa2.system.js → p-42fa7a77.system.js} +0 -0
@@ -0,0 +1,816 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { intl, dateFind, getMonthLength, makeISO, calendar_months, weekdays } from "../../../global/functions";
3
+ export class PrivCalendar {
4
+ constructor() {
5
+ this.today = this.dateToISO(new Date());
6
+ this._focus = {
7
+ year: {
8
+ asString: () => dateFind.year.asString(this.focusDate),
9
+ asInt: () => dateFind.year.asInt(this.focusDate),
10
+ set: (y) => {
11
+ const m = this._focus.month.asInt();
12
+ const d = this._focus.day.asInt();
13
+ this.focusDate = makeISO(y, m, d);
14
+ },
15
+ increase: (n) => {
16
+ const newDate = dateFind.year.increase(this.focusDate, n);
17
+ this.focusDate = newDate;
18
+ },
19
+ decrease: (n) => {
20
+ const newDate = dateFind.year.decrease(this.focusDate, n);
21
+ this.focusDate = newDate;
22
+ },
23
+ },
24
+ month: {
25
+ asString: () => dateFind.month.asString(this.focusDate),
26
+ asInt: () => dateFind.month.asInt(this.focusDate),
27
+ set: (m) => {
28
+ const y = this._focus.year.asInt();
29
+ const d = this._focus.day.asInt();
30
+ this.focusDate = makeISO(y, m, d);
31
+ },
32
+ increase: (n) => {
33
+ const newDate = dateFind.month.increase(this.focusDate, n);
34
+ this.focusDate = newDate;
35
+ },
36
+ decrease: (n) => {
37
+ const newDate = dateFind.month.decrease(this.focusDate, n);
38
+ this.focusDate = newDate;
39
+ },
40
+ },
41
+ day: {
42
+ asString: () => dateFind.day.asString(this.focusDate),
43
+ asInt: () => dateFind.day.asInt(this.focusDate),
44
+ set: (d) => {
45
+ const y = this._focus.year.asInt();
46
+ const m = this._focus.month.asInt();
47
+ d = d === -1 ? getMonthLength(m, y) : d;
48
+ this.focusDate = makeISO(y, m, d);
49
+ },
50
+ increase: (n) => {
51
+ const newDate = dateFind.day.increase(this.focusDate, n);
52
+ this.focusDate = newDate;
53
+ },
54
+ decrease: (n) => {
55
+ const newDate = dateFind.day.decrease(this.focusDate, n);
56
+ this.focusDate = newDate;
57
+ },
58
+ },
59
+ };
60
+ this.monthButtonFocus = {
61
+ set: (i) => {
62
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
63
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
64
+ selButton.classList.remove("selected");
65
+ selButton.tabIndex = -1;
66
+ buttons[i - 1].classList.add("selected");
67
+ buttons[i - 1].tabIndex = 0;
68
+ buttons[i - 1].focus();
69
+ },
70
+ increase: (i) => {
71
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
72
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
73
+ const oldIndex = buttons.indexOf(selButton);
74
+ const newIndex = (oldIndex + i) % 12;
75
+ if (newIndex < oldIndex) {
76
+ this._focus.year.increase(1);
77
+ }
78
+ selButton.classList.remove("focused");
79
+ selButton.tabIndex = -1;
80
+ buttons[newIndex].classList.add("focused");
81
+ buttons[newIndex].tabIndex = 0;
82
+ buttons[newIndex].focus();
83
+ },
84
+ decrease: (i) => {
85
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
86
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
87
+ const oldIndex = buttons.indexOf(selButton);
88
+ // ensure no neg values for modulo
89
+ let newIndex = oldIndex + 24;
90
+ newIndex = (newIndex - i) % 12;
91
+ if (newIndex > oldIndex) {
92
+ this._focus.year.decrease(1);
93
+ }
94
+ selButton.classList.remove("focused");
95
+ selButton.tabIndex = -1;
96
+ buttons[newIndex].classList.add("focused");
97
+ buttons[newIndex].tabIndex = 0;
98
+ buttons[newIndex].focus();
99
+ },
100
+ };
101
+ this.renderCalendarDate = (date, index, eitherStart, eitherEnd) => {
102
+ if (date === "placeholder") {
103
+ return h("div", { role: "gridcell" });
104
+ }
105
+ const monthOfDate = dateFind.month.asInt(date);
106
+ const dayOfDate = dateFind.day.asInt(date);
107
+ const yearOfDate = dateFind.year.asInt(date);
108
+ const isToday = date === this.today;
109
+ const isStartDate = this.startDate && this.startDate === date;
110
+ const isEndDate = eitherStart && this.endDate && this.endDate === date && eitherStart < this.endDate;
111
+ const isFirstOfMonth = dayOfDate === 1;
112
+ const isLastOfMonth = dayOfDate === getMonthLength(monthOfDate, yearOfDate);
113
+ const isInRange = this.isInRange(date);
114
+ const isInRangePreview = this.isInRangePreview(date);
115
+ const isPreviewStartOrEnd = !eitherEnd && eitherStart && this.hoverDate && date === this.hoverDate;
116
+ const isPreviewStart = isPreviewStartOrEnd && this.hoverDate < eitherStart;
117
+ const isPreviewEnd = isPreviewStartOrEnd && this.hoverDate > eitherStart;
118
+ const isFocused = date === this.focusDate;
119
+ const classesArr = ["date-cell"];
120
+ if (isToday)
121
+ classesArr.push("today");
122
+ if (isFirstOfMonth)
123
+ classesArr.push("first-of-month");
124
+ if (isLastOfMonth)
125
+ classesArr.push("last-of-month");
126
+ if (isStartDate) {
127
+ if (isInRangePreview && !isEndDate && this.hoverDate && this.hoverDate < this.startDate) {
128
+ // invert the arrow direction if user mouses over a prior date
129
+ classesArr.push("range-end");
130
+ }
131
+ else {
132
+ classesArr.push("range-start");
133
+ }
134
+ }
135
+ if (isEndDate)
136
+ classesArr.push("range-end");
137
+ if (isInRange)
138
+ classesArr.push("in-range");
139
+ if (isInRangePreview)
140
+ classesArr.push("in-range preview");
141
+ if (isPreviewStart)
142
+ classesArr.push("preview-start");
143
+ if (isPreviewEnd)
144
+ classesArr.push("preview-end");
145
+ const classes = classesArr.join(" ");
146
+ return (h("div", { role: "gridcell", id: `cell-${date}`, class: classes, "aria-selected": isStartDate || isEndDate ? "true" : "false", "aria-label": `${isToday
147
+ ? `${intl.formatMessage({
148
+ id: "date.today",
149
+ defaultMessage: "today",
150
+ description: "calendar button",
151
+ })}, `
152
+ : ""}${weekdays[index]}, ${calendar_months[monthOfDate - 1]} ${dayOfDate}, ${yearOfDate}`, onClick: (ev) => {
153
+ this.handleDateClick(ev.target);
154
+ }, onMouseOver: () => this.cellHovered.emit(date), "data-month": dateFind.month.asString(date), "data-year": dateFind.year.asString(date), onBlur: (ev) => ev.stopPropagation(), tabIndex: isFocused ? 0 : -1 }, dayOfDate));
155
+ };
156
+ this.disabled = false;
157
+ this.view = "day";
158
+ this.focusDate = this.today;
159
+ this.startDate = undefined;
160
+ this.endDate = undefined;
161
+ this.hoverDate = undefined;
162
+ }
163
+ get calName() {
164
+ const bothCals = this.el.parentElement.querySelectorAll("priv-calendar");
165
+ let calname;
166
+ // if the parent el only contains one calendar
167
+ if (bothCals.length === 1) {
168
+ calname = intl.formatMessage({
169
+ id: "date.calName",
170
+ defaultMessage: "Calendar. ",
171
+ });
172
+ // if this calendar is the first of the two
173
+ }
174
+ else if (bothCals[0] === this.el) {
175
+ calname = intl.formatMessage({
176
+ id: "date.firstCalName",
177
+ defaultMessage: "First calendar. ",
178
+ });
179
+ }
180
+ else {
181
+ calname = intl.formatMessage({
182
+ id: "date.secondCalName",
183
+ defaultMessage: "Second calendar. ",
184
+ });
185
+ }
186
+ return calname;
187
+ }
188
+ handleFocusDate(newVal, oldVal) {
189
+ if (this.view === "day") {
190
+ const oldCell = this.getCell(oldVal);
191
+ if (oldCell)
192
+ oldCell.tabIndex = -1;
193
+ const newCell = this.getCell(newVal);
194
+ if (newCell)
195
+ newCell.tabIndex = 0;
196
+ }
197
+ else {
198
+ const oldMonthEl = this.el.querySelector(`#month-${dateFind.month.asInt(oldVal)}`);
199
+ if (oldMonthEl)
200
+ oldMonthEl.tabIndex = -1;
201
+ const newMonthEl = this.el.querySelector(`#month-${dateFind.month.asInt(newVal)}`);
202
+ if (newMonthEl)
203
+ newMonthEl.tabIndex = 0;
204
+ //monthToFocus.focus();
205
+ }
206
+ this.dateFocus.emit();
207
+ }
208
+ get otherCalEl() {
209
+ const bothCals = this.el.parentElement.querySelectorAll("priv-calendar");
210
+ let val;
211
+ if (bothCals.length === 2) {
212
+ val = bothCals[0] === this.el ? bothCals[1] : bothCals[0];
213
+ }
214
+ // returns undefined for wm-datepicker
215
+ // or possibly on first load if everything hasn't loaded yet
216
+ return val;
217
+ }
218
+ get headerButtonEls() {
219
+ return Array.from(this.el.querySelectorAll(".header-btn"));
220
+ }
221
+ handleKey(ev) {
222
+ switch (ev.key) {
223
+ case " ":
224
+ case "Enter":
225
+ ev.preventDefault();
226
+ //Clunky exception for blur validation. Remove when blur reworked.
227
+ !ev.target.id.includes("popup-title") && ev.target.click();
228
+ break;
229
+ case "PageUp":
230
+ ev.preventDefault();
231
+ if (this.view === "day") {
232
+ this._focus.month.decrease(1);
233
+ this.focusCell();
234
+ }
235
+ else {
236
+ this._focus.year.decrease(1);
237
+ }
238
+ break;
239
+ case "PageDown":
240
+ ev.preventDefault();
241
+ if (this.view === "day") {
242
+ this._focus.month.increase(1);
243
+ this.focusCell();
244
+ }
245
+ else {
246
+ this._focus.year.increase(1);
247
+ }
248
+ break;
249
+ case "Home":
250
+ ev.preventDefault();
251
+ if (this.view === "day") {
252
+ this._focus.day.set(1);
253
+ this.focusCell();
254
+ }
255
+ else {
256
+ this.monthButtonFocus.set(1);
257
+ }
258
+ break;
259
+ case "End":
260
+ ev.preventDefault();
261
+ if (this.view === "day") {
262
+ this._focus.day.set(-1);
263
+ this.focusCell();
264
+ }
265
+ else {
266
+ this.monthButtonFocus.set(12);
267
+ }
268
+ break;
269
+ case "ArrowLeft":
270
+ ev.preventDefault();
271
+ if (this.view === "day") {
272
+ this._focus.day.decrease(1);
273
+ // if the month changes as a result of this navigation, calendar must render the correct month before the proper cell can be focused
274
+ this.focusCell();
275
+ }
276
+ else {
277
+ this.monthButtonFocus.decrease(1);
278
+ }
279
+ break;
280
+ case "ArrowRight":
281
+ ev.preventDefault();
282
+ if (this.view === "day") {
283
+ this._focus.day.increase(1);
284
+ this.focusCell();
285
+ }
286
+ else {
287
+ this.monthButtonFocus.increase(1);
288
+ }
289
+ break;
290
+ case "ArrowUp":
291
+ ev.preventDefault();
292
+ if (this.view === "day") {
293
+ this._focus.day.decrease(7);
294
+ this.focusCell();
295
+ }
296
+ else {
297
+ this.monthButtonFocus.decrease(3);
298
+ }
299
+ break;
300
+ case "ArrowDown":
301
+ ev.preventDefault();
302
+ if (this.view === "day") {
303
+ //If the down arrow is pressed from the month button or the arrow buttons, focus should shift to the current cell in focus
304
+ if (!(document.activeElement.shadowRoot || document).activeElement.classList.contains("date-cell")) {
305
+ this.focusCell();
306
+ break;
307
+ }
308
+ this._focus.day.increase(7);
309
+ this.focusCell();
310
+ }
311
+ else {
312
+ //If the down arrow is pressed from the arrow buttons or the title box, focus should shift to the current month in focus
313
+ const activeEl = (document.activeElement.shadowRoot || document).activeElement;
314
+ if (activeEl.classList.contains("header-btn")) {
315
+ const monthId = `#month-${this._focus.month.asInt()}`;
316
+ const monthToFocus = this.el.querySelector(monthId);
317
+ monthToFocus.tabIndex = 0;
318
+ monthToFocus.focus();
319
+ break;
320
+ }
321
+ this.monthButtonFocus.increase(3);
322
+ }
323
+ break;
324
+ }
325
+ }
326
+ handleDateClick(el) {
327
+ const detail = { cal: this.el, cell: el };
328
+ this.cellTriggered.emit(detail);
329
+ // change of input value will trigger the function updating selectedDate
330
+ }
331
+ removeZeroes(date) {
332
+ return +date < 10 ? +date.slice(1) : +date;
333
+ }
334
+ dateToISO(date) {
335
+ const dateArr = [
336
+ date.getUTCFullYear().toString().padStart(4, "0"),
337
+ (date.getUTCMonth() + 1).toString().padStart(2, "0"),
338
+ date.getUTCDate().toString().padStart(2, "0"),
339
+ ];
340
+ return dateArr.join("-");
341
+ }
342
+ isInRange(date) {
343
+ if (this.otherCalEl) {
344
+ const _startDate = this.startDate || this.otherCalEl.startDate;
345
+ const _endDate = this.endDate || this.otherCalEl.endDate;
346
+ if (_startDate && _endDate) {
347
+ // if both dates exist the range is shown
348
+ return _startDate <= date && date <= _endDate;
349
+ }
350
+ }
351
+ return false;
352
+ }
353
+ isInRangePreview(date) {
354
+ if (this.otherCalEl) {
355
+ const _startDate = this.startDate || this.otherCalEl.startDate;
356
+ const _endDate = this.endDate || this.otherCalEl.endDate;
357
+ // no preview if there's an existing range
358
+ if (_startDate && _endDate)
359
+ return false;
360
+ if (_startDate && this.hoverDate) {
361
+ // if only startDate exists, the hovered date functions as the other end of the range
362
+ if (_startDate < this.hoverDate) {
363
+ return _startDate <= date && date <= this.hoverDate;
364
+ }
365
+ else {
366
+ // user is mousing over a date prior to the start date
367
+ // start date considered as end of range
368
+ return this.hoverDate <= date && date <= _startDate;
369
+ }
370
+ }
371
+ else if (_endDate && this.hoverDate) {
372
+ // if only endDate exists, the hovered date functions as the other end of the range
373
+ if (this.hoverDate < _endDate) {
374
+ return this.hoverDate <= date && date <= _endDate;
375
+ }
376
+ else {
377
+ // user is mousing over a date later than the end date
378
+ // end date considered as beggining of range
379
+ return _endDate <= date && date <= this.hoverDate;
380
+ }
381
+ }
382
+ }
383
+ return false;
384
+ }
385
+ // 1 => Sunday, 7 => Saturday
386
+ getMonthFirstDay(month, year) {
387
+ return +new Date(year, month - 1, 1, 12, 0, 0).getDay() + 1;
388
+ }
389
+ getCalendarDates(date) {
390
+ const month = dateFind.month.asInt(date);
391
+ const year = dateFind.year.asInt(date);
392
+ // Get number of days in the month and the month's first day
393
+ const monthDays = getMonthLength(month, year);
394
+ // Builds dates to be displayed from current month.
395
+ const dates = [...new Array(monthDays).fill(undefined)].map((_, index) => {
396
+ const day = index + 1;
397
+ return makeISO(year, month, day);
398
+ });
399
+ // Get number of empty cells from previous and next months
400
+ // These ensure a total of 42 days (6 weeks) displayed on the calendar
401
+ const monthFirstDay = this.getMonthFirstDay(month, year);
402
+ const numBefore = monthFirstDay - 1;
403
+ const cellsBefore = numBefore > 0 ? new Array(numBefore).fill("placeholder") : [];
404
+ let numAfter = 42 - (numBefore + monthDays);
405
+ numAfter = numAfter > 6 ? numAfter - 7 : numAfter;
406
+ const cellsAfter = numAfter > 0 ? new Array(numAfter).fill("placeholder") : [];
407
+ return [...cellsBefore, ...dates, ...cellsAfter];
408
+ }
409
+ getCell(date) {
410
+ return this.el.querySelector(`#cell-${date}`);
411
+ }
412
+ async focusFirstFocusable() {
413
+ this.prevBtnEl.focus();
414
+ }
415
+ async focusLastFocusable() {
416
+ this.focusCell();
417
+ }
418
+ async focusCell() {
419
+ requestAnimationFrame(() => {
420
+ // Prevent an error from happening when the day in focus does not exist in a new month selected, e.g., May 31 is in focus, then the user selects "November". It will return focus in the date view to the last day of the month so that focus doesn't fly out of the popup.
421
+ const maxDays = getMonthLength(this._focus.month.asInt(), this._focus.year.asInt());
422
+ const dayToFocus = this._focus.day.asInt();
423
+ if (dayToFocus > maxDays) {
424
+ this._focus.day.set(maxDays);
425
+ }
426
+ const cellToFocus = this.getCell(this.focusDate);
427
+ if (cellToFocus) {
428
+ cellToFocus.tabIndex = 0;
429
+ cellToFocus.focus();
430
+ }
431
+ if (this.view == "day") {
432
+ this.cellHovered.emit(this.focusDate);
433
+ }
434
+ });
435
+ }
436
+ toggleBusyAttribute(state) {
437
+ this.el.querySelector("#wm-container").setAttribute("aria-busy", state);
438
+ }
439
+ renderMonth(month, index) {
440
+ return (h("button", { id: `month-${index + 1}`, class: `month ${this._focus.month.asInt() === index + 1 ? "selected focused" : ""}`, role: "gridcell", tabindex: index + 1 === this._focus.month.asInt() ? 0 : -1, onBlur: (ev) => ev.stopPropagation(), onClick: () => {
441
+ this._focus.month.set(index + 1);
442
+ this.view = "day";
443
+ this.focusCell();
444
+ } }, month));
445
+ }
446
+ renderDayView() {
447
+ const dates = this.getCalendarDates(this.focusDate);
448
+ // the start and end date, set in either of the calendars
449
+ const eitherStart = this.startDate || (this.otherCalEl && this.otherCalEl.startDate);
450
+ const eitherEnd = this.endDate || (this.otherCalEl && this.otherCalEl.endDate);
451
+ return (h("div", { class: "popup day-view" }, h("div", { class: "calendar-header" }, h("button", { onClick: () => {
452
+ this._focus.month.decrease(1);
453
+ }, class: "header-btn arw-btn", ref: (el) => (this.prevBtnEl = el), "aria-label": intl.formatMessage({
454
+ id: "date.selectPreviousMonth",
455
+ defaultMessage: "Select previous month",
456
+ description: "Calendar button",
457
+ }) }, h("span", { class: "mdi" }, "\uF141")), h("div", { id: "popup-title-month", class: "header-btn title-box", tabindex: "0", role: "button", onKeyDown: (ev) => {
458
+ if (ev.key === "Enter" || ev.key === " ") {
459
+ ev.preventDefault();
460
+ this.view = "month";
461
+ }
462
+ }, onClick: () => (this.view = "month"), "aria-label": `${intl.formatMessage({
463
+ id: "date.currentMonth",
464
+ defaultMessage: "current month",
465
+ description: "Calendar button",
466
+ })}: ${calendar_months[this._focus.month.asInt() - 1]}
467
+ ${this._focus.year.asString()}.`, "aria-describedby": "month-title" }, h("span", { class: "title", "aria-hidden": "true" }, calendar_months[this._focus.month.asInt() - 1], " ", this._focus.year.asString())), h("button", { onClick: () => {
468
+ this._focus.month.increase(1);
469
+ }, "aria-label": intl.formatMessage({
470
+ id: "date.selectNextMonth",
471
+ defaultMessage: "Select next month",
472
+ description: "Calendar button",
473
+ }), class: "header-btn arw-btn" }, h("span", { class: "mdi" }, "\uF142"))), h("div", { "aria-labelledby": "popup-title-month", role: "grid", class: "date-grid" }, h("div", { role: "rowgroup", class: "date-header" }, h("div", { role: "row", class: "header-row" }, h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
474
+ id: "date.su",
475
+ defaultMessage: "Su",
476
+ description: "Abbreviated day of the week",
477
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
478
+ id: "date.mo",
479
+ defaultMessage: "Mo",
480
+ description: "Abbreviated day of the week",
481
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
482
+ id: "date.tu",
483
+ defaultMessage: "Tu",
484
+ description: "Abbreviated day of the week",
485
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
486
+ id: "date.we",
487
+ defaultMessage: "We",
488
+ description: "Abbreviated day of the week",
489
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
490
+ id: "date.th",
491
+ defaultMessage: "Th",
492
+ description: "Abbreviated day of the week",
493
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
494
+ id: "date.fr",
495
+ defaultMessage: "Fr",
496
+ description: "Abbreviated day of the week",
497
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
498
+ id: "date.sa",
499
+ defaultMessage: "Sa",
500
+ description: "Abbreviated day of the week",
501
+ }))))), h("div", { role: "rowgroup" }, h("div", { role: "row", class: "date-row" }, dates.slice(0, 7).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd))), h("div", { role: "row" }, dates.slice(7, 14).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd))), h("div", { role: "row" }, dates.slice(14, 21).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd))), h("div", { role: "row" }, dates.slice(21, 28).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd))), h("div", { role: "row" }, dates.slice(28, 35).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd))), dates.length > 35 ? (h("div", { role: "row" }, dates.slice(35).map((date, i) => this.renderCalendarDate(date, i, eitherStart, eitherEnd)))) : ("")))));
502
+ }
503
+ renderMonthView() {
504
+ return (h("div", { class: "month-view" }, h("div", { class: "calendar-header" }, h("button", { onClick: () => {
505
+ this._focus.year.decrease(1);
506
+ }, "aria-label": intl.formatMessage({
507
+ id: "date.selectPreviousYear",
508
+ defaultMessage: "Select previous year",
509
+ description: "Calendar button",
510
+ }), class: "header-btn arw-btn", ref: (el) => (this.prevBtnEl = el) }, h("span", { class: "mdi" }, "\uF141")), h("div", { id: "popup-title-year", tabindex: "0", class: "header-btn title-box year", role: "button", onClick: () => (this.view = "day"), onKeyDown: (ev) => {
511
+ if (ev.key === "Enter" || ev.key === " ") {
512
+ ev.preventDefault();
513
+ this.view = "day";
514
+ }
515
+ }, "aria-labelledby": "year-title" }, h("span", { class: "title" }, this._focus.year.asString())), h("button", { onClick: () => {
516
+ this._focus.year.increase(1);
517
+ }, "aria-label": intl.formatMessage({
518
+ id: "date.selectNextYear",
519
+ defaultMessage: "Select next year",
520
+ description: "Calendar button",
521
+ }), class: "header-btn arw-btn" }, h("span", { class: "mdi" }, "\uF142"))), h("div", { "aria-labelledby": "popup-title-year", role: "grid", class: "months" }, h("div", { role: "row", class: "month-row" }, calendar_months.slice(0, 3).map((month, index) => this.renderMonth(month, index))), h("div", { role: "row", class: "month-row" }, calendar_months.slice(3, 6).map((month, index) => this.renderMonth(month, index + 3))), h("div", { role: "row", class: "month-row" }, calendar_months.slice(6, 9).map((month, index) => this.renderMonth(month, index + 6))), h("div", { role: "row", class: "month-row" }, calendar_months.slice(9).map((month, index) => this.renderMonth(month, index + 9))))));
522
+ }
523
+ render() {
524
+ return (h(Host, { key: 'ed62667213d12f7b9848b4bdb53f02d1ba6496c7', onMouseOut: (ev) => {
525
+ // @ts-ignore
526
+ if (!this.el.parentElement.contains(ev.toElement))
527
+ this.outOfCal.emit();
528
+ }, role: "application", "aria-describedby": "application" }, this.view === "day" ? this.renderDayView() : this.renderMonthView(), h("div", { key: '62bf522fa94ea5fa28949f31d1c874c1aafdb955', id: "application", class: "sr-only" }, this.calName, intl.formatMessage({
529
+ id: "date.instructions",
530
+ defaultMessage: "Use arrows to select a date in the table. Tab left or right to buttons for selecting previous month, next month, or the month selection table.",
531
+ }))));
532
+ }
533
+ static get is() { return "priv-calendar"; }
534
+ static get originalStyleUrls() {
535
+ return {
536
+ "$": ["priv-calendar.scss"]
537
+ };
538
+ }
539
+ static get styleUrls() {
540
+ return {
541
+ "$": ["priv-calendar.css"]
542
+ };
543
+ }
544
+ static get properties() {
545
+ return {
546
+ "disabled": {
547
+ "type": "boolean",
548
+ "mutable": false,
549
+ "complexType": {
550
+ "original": "boolean",
551
+ "resolved": "boolean",
552
+ "references": {}
553
+ },
554
+ "required": false,
555
+ "optional": false,
556
+ "docs": {
557
+ "tags": [],
558
+ "text": ""
559
+ },
560
+ "attribute": "disabled",
561
+ "reflect": false,
562
+ "defaultValue": "false"
563
+ },
564
+ "view": {
565
+ "type": "string",
566
+ "mutable": true,
567
+ "complexType": {
568
+ "original": "string",
569
+ "resolved": "string",
570
+ "references": {}
571
+ },
572
+ "required": false,
573
+ "optional": false,
574
+ "docs": {
575
+ "tags": [],
576
+ "text": ""
577
+ },
578
+ "attribute": "view",
579
+ "reflect": false,
580
+ "defaultValue": "\"day\""
581
+ },
582
+ "focusDate": {
583
+ "type": "string",
584
+ "mutable": true,
585
+ "complexType": {
586
+ "original": "string",
587
+ "resolved": "string",
588
+ "references": {}
589
+ },
590
+ "required": false,
591
+ "optional": false,
592
+ "docs": {
593
+ "tags": [],
594
+ "text": ""
595
+ },
596
+ "attribute": "focus-date",
597
+ "reflect": false,
598
+ "defaultValue": "this.today"
599
+ },
600
+ "startDate": {
601
+ "type": "string",
602
+ "mutable": false,
603
+ "complexType": {
604
+ "original": "string",
605
+ "resolved": "string | undefined",
606
+ "references": {}
607
+ },
608
+ "required": false,
609
+ "optional": true,
610
+ "docs": {
611
+ "tags": [],
612
+ "text": ""
613
+ },
614
+ "attribute": "start-date",
615
+ "reflect": false
616
+ },
617
+ "endDate": {
618
+ "type": "string",
619
+ "mutable": false,
620
+ "complexType": {
621
+ "original": "string",
622
+ "resolved": "string | undefined",
623
+ "references": {}
624
+ },
625
+ "required": false,
626
+ "optional": true,
627
+ "docs": {
628
+ "tags": [],
629
+ "text": ""
630
+ },
631
+ "attribute": "end-date",
632
+ "reflect": false
633
+ },
634
+ "hoverDate": {
635
+ "type": "string",
636
+ "mutable": false,
637
+ "complexType": {
638
+ "original": "string",
639
+ "resolved": "string | undefined",
640
+ "references": {}
641
+ },
642
+ "required": false,
643
+ "optional": true,
644
+ "docs": {
645
+ "tags": [],
646
+ "text": ""
647
+ },
648
+ "attribute": "hover-date",
649
+ "reflect": false
650
+ }
651
+ };
652
+ }
653
+ static get events() {
654
+ return [{
655
+ "method": "cellTriggered",
656
+ "name": "cellTriggered",
657
+ "bubbles": true,
658
+ "cancelable": true,
659
+ "composed": true,
660
+ "docs": {
661
+ "tags": [],
662
+ "text": ""
663
+ },
664
+ "complexType": {
665
+ "original": "{ cal: HTMLPrivCalendarElement; cell: HTMLElement }",
666
+ "resolved": "{ cal: HTMLPrivCalendarElement; cell: HTMLElement; }",
667
+ "references": {
668
+ "HTMLPrivCalendarElement": {
669
+ "location": "global",
670
+ "id": "global::HTMLPrivCalendarElement"
671
+ },
672
+ "HTMLElement": {
673
+ "location": "global",
674
+ "id": "global::HTMLElement"
675
+ }
676
+ }
677
+ }
678
+ }, {
679
+ "method": "cellHovered",
680
+ "name": "cellHovered",
681
+ "bubbles": true,
682
+ "cancelable": true,
683
+ "composed": true,
684
+ "docs": {
685
+ "tags": [],
686
+ "text": ""
687
+ },
688
+ "complexType": {
689
+ "original": "string",
690
+ "resolved": "string",
691
+ "references": {}
692
+ }
693
+ }, {
694
+ "method": "outOfCal",
695
+ "name": "outOfCal",
696
+ "bubbles": true,
697
+ "cancelable": true,
698
+ "composed": true,
699
+ "docs": {
700
+ "tags": [],
701
+ "text": ""
702
+ },
703
+ "complexType": {
704
+ "original": "string",
705
+ "resolved": "string",
706
+ "references": {}
707
+ }
708
+ }, {
709
+ "method": "popupBlurred",
710
+ "name": "popupBlurred",
711
+ "bubbles": true,
712
+ "cancelable": true,
713
+ "composed": true,
714
+ "docs": {
715
+ "tags": [],
716
+ "text": ""
717
+ },
718
+ "complexType": {
719
+ "original": "{ relatedTarget: EventTarget | null }",
720
+ "resolved": "{ relatedTarget: EventTarget | null; }",
721
+ "references": {
722
+ "EventTarget": {
723
+ "location": "global",
724
+ "id": "global::EventTarget"
725
+ }
726
+ }
727
+ }
728
+ }, {
729
+ "method": "dateFocus",
730
+ "name": "dateFocus",
731
+ "bubbles": true,
732
+ "cancelable": true,
733
+ "composed": true,
734
+ "docs": {
735
+ "tags": [],
736
+ "text": ""
737
+ },
738
+ "complexType": {
739
+ "original": "any",
740
+ "resolved": "any",
741
+ "references": {}
742
+ }
743
+ }];
744
+ }
745
+ static get methods() {
746
+ return {
747
+ "focusFirstFocusable": {
748
+ "complexType": {
749
+ "signature": "() => Promise<void>",
750
+ "parameters": [],
751
+ "references": {
752
+ "Promise": {
753
+ "location": "global",
754
+ "id": "global::Promise"
755
+ }
756
+ },
757
+ "return": "Promise<void>"
758
+ },
759
+ "docs": {
760
+ "text": "",
761
+ "tags": []
762
+ }
763
+ },
764
+ "focusLastFocusable": {
765
+ "complexType": {
766
+ "signature": "() => Promise<void>",
767
+ "parameters": [],
768
+ "references": {
769
+ "Promise": {
770
+ "location": "global",
771
+ "id": "global::Promise"
772
+ }
773
+ },
774
+ "return": "Promise<void>"
775
+ },
776
+ "docs": {
777
+ "text": "",
778
+ "tags": []
779
+ }
780
+ },
781
+ "focusCell": {
782
+ "complexType": {
783
+ "signature": "() => Promise<void>",
784
+ "parameters": [],
785
+ "references": {
786
+ "Promise": {
787
+ "location": "global",
788
+ "id": "global::Promise"
789
+ }
790
+ },
791
+ "return": "Promise<void>"
792
+ },
793
+ "docs": {
794
+ "text": "",
795
+ "tags": []
796
+ }
797
+ }
798
+ };
799
+ }
800
+ static get elementRef() { return "el"; }
801
+ static get watchers() {
802
+ return [{
803
+ "propName": "focusDate",
804
+ "methodName": "handleFocusDate"
805
+ }];
806
+ }
807
+ static get listeners() {
808
+ return [{
809
+ "name": "keydown",
810
+ "method": "handleKey",
811
+ "target": undefined,
812
+ "capture": false,
813
+ "passive": false
814
+ }];
815
+ }
816
+ }