@watermarkinsights/ripple 5.13.0 → 5.13.1-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 (435) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/app-globals-12979223.js +92 -0
  3. package/dist/cjs/chartFunctions-5a8c4095.js +742 -0
  4. package/dist/cjs/functions-0774d303.js +10479 -0
  5. package/dist/cjs/index-788526f5.js +1863 -0
  6. package/dist/cjs/index.cjs.js +2 -0
  7. package/dist/cjs/interfaces-85d78ae9.js +37 -0
  8. package/dist/cjs/intl-4a204fe7.js +283 -0
  9. package/dist/cjs/loader.cjs.js +15 -0
  10. package/dist/cjs/priv-calendar.cjs.entry.js +574 -0
  11. package/dist/{ripple/wm-optgroup.entry.js → cjs/priv-chart-popover.cjs.entry.js} +120 -48
  12. package/dist/{ripple/wm-modal-footer.entry.js → cjs/priv-navigator-button.cjs.entry.js} +20 -35
  13. package/dist/{ripple/wm-navigator.entry.js → cjs/priv-navigator-item.cjs.entry.js} +24 -357
  14. package/dist/{ripple/wm-search.entry.js → cjs/priv-option-list.cjs.entry.js} +365 -180
  15. package/dist/cjs/ripple.cjs.js +25 -0
  16. package/dist/cjs/wm-action-menu_2.cjs.entry.js +335 -0
  17. package/dist/cjs/wm-button.cjs.entry.js +207 -0
  18. package/dist/cjs/wm-chart-slice.cjs.entry.js +27 -0
  19. package/dist/cjs/wm-chart.cjs.entry.js +163 -0
  20. package/dist/cjs/wm-date-range.cjs.entry.js +484 -0
  21. package/dist/cjs/wm-datepicker.cjs.entry.js +254 -0
  22. package/dist/cjs/wm-file-list.cjs.entry.js +23 -0
  23. package/dist/cjs/wm-file.cjs.entry.js +194 -0
  24. package/dist/cjs/wm-flyout.cjs.entry.js +180 -0
  25. package/dist/cjs/wm-input.cjs.entry.js +125 -0
  26. package/dist/cjs/wm-line-chart.cjs.entry.js +461 -0
  27. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +217 -0
  28. package/dist/cjs/wm-modal_3.cjs.entry.js +217 -0
  29. package/dist/cjs/wm-navigation_3.cjs.entry.js +188 -0
  30. package/dist/cjs/wm-navigator.cjs.entry.js +327 -0
  31. package/dist/cjs/wm-nested-select.cjs.entry.js +315 -0
  32. package/dist/cjs/wm-optgroup.cjs.entry.js +74 -0
  33. package/dist/cjs/wm-option_2.cjs.entry.js +427 -0
  34. package/dist/cjs/wm-pagination.cjs.entry.js +228 -0
  35. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +204 -0
  36. package/dist/cjs/wm-search.cjs.entry.js +194 -0
  37. package/dist/cjs/wm-snackbar.cjs.entry.js +189 -0
  38. package/dist/cjs/wm-tab-item_3.cjs.entry.js +263 -0
  39. package/dist/cjs/wm-tag-input.cjs.entry.js +892 -0
  40. package/dist/cjs/wm-tag-option.cjs.entry.js +43 -0
  41. package/dist/cjs/wm-textarea.cjs.entry.js +88 -0
  42. package/dist/cjs/wm-timepicker.cjs.entry.js +307 -0
  43. package/dist/cjs/wm-toggletip.cjs.entry.js +183 -0
  44. package/dist/cjs/wm-uploader.cjs.entry.js +325 -0
  45. package/dist/cjs/wm-wrapper.cjs.entry.js +21 -0
  46. package/dist/collection/collection-manifest.json +197 -0
  47. package/dist/collection/components/charts/chartFunctions.js +675 -0
  48. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +1044 -0
  49. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +257 -0
  50. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +125 -0
  51. package/dist/collection/components/charts/wm-chart/wm-chart.css +1497 -0
  52. package/dist/collection/components/charts/wm-chart/wm-chart.js +422 -0
  53. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +1202 -0
  54. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +723 -0
  55. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +1497 -0
  56. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +264 -0
  57. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +1060 -0
  58. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +151 -0
  59. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +121 -0
  60. package/dist/collection/components/datepickers/datepicker.css +1179 -0
  61. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +1414 -0
  62. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +840 -0
  63. package/dist/collection/components/datepickers/wm-date-range.js +849 -0
  64. package/dist/collection/components/datepickers/wm-datepicker.js +524 -0
  65. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +1053 -0
  66. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +780 -0
  67. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1316 -0
  68. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +620 -0
  69. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +965 -0
  70. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +258 -0
  71. package/dist/collection/components/selects/wm-option/wm-option.css +1066 -0
  72. package/dist/collection/components/selects/wm-option/wm-option.js +530 -0
  73. package/dist/collection/components/selects/wm-select/wm-select.css +1239 -0
  74. package/dist/collection/components/selects/wm-select/wm-select.js +584 -0
  75. package/dist/collection/components/wm-action-menu/wm-action-menu.css +1026 -0
  76. package/dist/collection/components/wm-action-menu/wm-action-menu.js +435 -0
  77. package/dist/collection/components/wm-button/wm-button.css +1571 -0
  78. package/dist/collection/components/wm-button/wm-button.js +489 -0
  79. package/dist/collection/components/wm-file/wm-file.css +1062 -0
  80. package/dist/collection/components/wm-file/wm-file.js +412 -0
  81. package/dist/collection/components/wm-file-list/wm-file-list.css +955 -0
  82. package/dist/collection/components/wm-file-list/wm-file-list.js +45 -0
  83. package/dist/collection/components/wm-flyout/wm-flyout.css +1149 -0
  84. package/dist/collection/components/wm-flyout/wm-flyout.js +448 -0
  85. package/dist/collection/components/wm-input/wm-input.css +1139 -0
  86. package/dist/collection/components/wm-input/wm-input.js +471 -0
  87. package/dist/collection/components/wm-menuitem/wm-menuitem.css +1026 -0
  88. package/dist/collection/components/wm-menuitem/wm-menuitem.js +419 -0
  89. package/dist/collection/components/wm-modal/wm-modal-footer.css +980 -0
  90. package/dist/collection/components/wm-modal/wm-modal-footer.js +142 -0
  91. package/dist/collection/components/wm-modal/wm-modal-header.css +979 -0
  92. package/dist/collection/components/wm-modal/wm-modal-header.js +79 -0
  93. package/dist/collection/components/wm-modal/wm-modal.css +1027 -0
  94. package/dist/collection/components/wm-modal/wm-modal.js +350 -0
  95. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +987 -0
  96. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +138 -0
  97. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +981 -0
  98. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +82 -0
  99. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +1063 -0
  100. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +362 -0
  101. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +982 -0
  102. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +119 -0
  103. package/dist/collection/components/wm-navigation/wm-navigation-item.css +991 -0
  104. package/dist/collection/components/wm-navigation/wm-navigation-item.js +98 -0
  105. package/dist/collection/components/wm-navigation/wm-navigation.css +1033 -0
  106. package/dist/collection/components/wm-navigation/wm-navigation.js +190 -0
  107. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +985 -0
  108. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +86 -0
  109. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +965 -0
  110. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +124 -0
  111. package/dist/collection/components/wm-navigator/wm-navigator.css +1038 -0
  112. package/dist/collection/components/wm-navigator/wm-navigator.js +496 -0
  113. package/dist/collection/components/wm-pagination/wm-pagination.css +1106 -0
  114. package/dist/collection/components/wm-pagination/wm-pagination.js +363 -0
  115. package/dist/collection/components/wm-search/wm-search.css +1031 -0
  116. package/dist/collection/components/wm-search/wm-search.js +427 -0
  117. package/dist/collection/components/wm-snackbar/wm-snackbar.css +1213 -0
  118. package/dist/collection/components/wm-snackbar/wm-snackbar.js +276 -0
  119. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +1004 -0
  120. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +175 -0
  121. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +976 -0
  122. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +273 -0
  123. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +960 -0
  124. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +87 -0
  125. package/dist/collection/components/wm-tag-input/wm-tag-input.css +1411 -0
  126. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1227 -0
  127. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +243 -0
  128. package/dist/collection/components/wm-textarea/wm-textarea.css +1115 -0
  129. package/dist/collection/components/wm-textarea/wm-textarea.js +313 -0
  130. package/dist/collection/components/wm-timepicker/wm-timepicker.css +1229 -0
  131. package/dist/collection/components/wm-timepicker/wm-timepicker.js +547 -0
  132. package/dist/collection/components/wm-toggletip/wm-toggletip.css +1287 -0
  133. package/dist/collection/components/wm-toggletip/wm-toggletip.js +289 -0
  134. package/dist/collection/components/wm-uploader/wm-uploader.css +1873 -0
  135. package/dist/collection/components/wm-uploader/wm-uploader.js +603 -0
  136. package/dist/collection/components/wm-wrapper/wm-wrapper.js +28 -0
  137. package/dist/collection/dev/action-menu.js +0 -0
  138. package/dist/collection/dev/button.js +0 -0
  139. package/dist/collection/dev/chart-small.js +56 -0
  140. package/dist/collection/dev/chart.js +18 -0
  141. package/dist/collection/dev/date-range.js +6 -0
  142. package/dist/collection/dev/datepicker.js +46 -0
  143. package/dist/collection/dev/file-list.js +16 -0
  144. package/dist/collection/dev/file.js +0 -0
  145. package/dist/collection/dev/flyout.js +194 -0
  146. package/dist/collection/dev/input.js +6 -0
  147. package/dist/collection/dev/line-chart.js +0 -0
  148. package/dist/collection/dev/modal.js +48 -0
  149. package/dist/collection/dev/navigation.js +13 -0
  150. package/dist/collection/dev/navigator.js +34 -0
  151. package/dist/collection/dev/nested-select.js +36 -0
  152. package/dist/collection/dev/pagination.js +7 -0
  153. package/dist/collection/dev/progress-monitor.js +0 -0
  154. package/dist/collection/dev/pss-modal.js +8 -0
  155. package/dist/collection/dev/scripts.js +49 -0
  156. package/dist/collection/dev/search.js +72 -0
  157. package/dist/collection/dev/select.js +57 -0
  158. package/dist/collection/dev/snackbar.js +60 -0
  159. package/dist/collection/dev/tabs.js +44 -0
  160. package/dist/collection/dev/tag-input.js +32 -0
  161. package/dist/collection/dev/textarea.js +28 -0
  162. package/dist/collection/dev/timepicker.js +32 -0
  163. package/dist/collection/dev/toggletip.js +9 -0
  164. package/dist/collection/dev/uploader.js +139 -0
  165. package/dist/collection/global/__mocks__/functions.js +6 -0
  166. package/dist/collection/global/functions.js +841 -0
  167. package/dist/{ripple/app-globals-B7cOtGhY.js → collection/global/global.js} +2 -84
  168. package/dist/{ripple/interfaces-CrANcZM9.js → collection/global/interfaces.js} +4 -6
  169. package/dist/collection/global/intl.js +274 -0
  170. package/dist/collection/global/services/__mocks__/http-service.js +130 -0
  171. package/dist/collection/global/services/http-service.js +50 -0
  172. package/dist/collection/lang/lang.js +5 -0
  173. package/dist/collection/lang/missing.js +43 -0
  174. package/dist/collection/lang/piglatin.js +101 -0
  175. package/dist/esm/app-globals-8110c96f.js +90 -0
  176. package/dist/{ripple/chartFunctions-CmeM8Tyx.js → esm/chartFunctions-4095a787.js} +3 -3
  177. package/dist/{ripple/functions-DVLl0rH_.js → esm/functions-682e95b4.js} +390 -8060
  178. package/dist/esm/index-130e07bb.js +1832 -0
  179. package/dist/esm/index.js +1 -0
  180. package/dist/esm/interfaces-cc5b177f.js +34 -0
  181. package/dist/{ripple/intl-7p27BJSM.js → esm/intl-e0444831.js} +1 -1
  182. package/dist/esm/loader.js +11 -0
  183. package/dist/esm/polyfills/core-js.js +11 -0
  184. package/dist/esm/polyfills/dom.js +79 -0
  185. package/dist/esm/polyfills/es5-html-element.js +1 -0
  186. package/dist/esm/polyfills/index.js +34 -0
  187. package/dist/esm/polyfills/system.js +6 -0
  188. package/dist/esm/priv-calendar.entry.js +570 -0
  189. package/dist/{ripple/wm-menuitem.entry.js → esm/priv-chart-popover.entry.js} +109 -98
  190. package/dist/{ripple/wm-modal-header.entry.js → esm/priv-navigator-button.entry.js} +14 -25
  191. package/dist/{ripple/wm-toggletip.entry.js → esm/priv-navigator-item.entry.js} +19 -164
  192. package/dist/{ripple/wm-option.entry.js → esm/priv-option-list.entry.js} +347 -129
  193. package/dist/esm/ripple.js +20 -0
  194. package/dist/esm/wm-action-menu_2.entry.js +330 -0
  195. package/dist/esm/wm-button.entry.js +203 -0
  196. package/dist/{ripple → esm}/wm-chart-slice.entry.js +6 -1
  197. package/dist/esm/wm-chart.entry.js +159 -0
  198. package/dist/esm/wm-date-range.entry.js +480 -0
  199. package/dist/esm/wm-datepicker.entry.js +250 -0
  200. package/dist/esm/wm-file-list.entry.js +19 -0
  201. package/dist/{ripple/wm-chart.entry.js → esm/wm-file.entry.js} +169 -136
  202. package/dist/esm/wm-flyout.entry.js +176 -0
  203. package/dist/esm/wm-input.entry.js +121 -0
  204. package/dist/esm/wm-line-chart.entry.js +457 -0
  205. package/dist/esm/wm-modal-pss_3.entry.js +211 -0
  206. package/dist/esm/wm-modal_3.entry.js +211 -0
  207. package/dist/esm/wm-navigation_3.entry.js +182 -0
  208. package/dist/esm/wm-navigator.entry.js +323 -0
  209. package/dist/{ripple/wm-select.entry.js → esm/wm-nested-select.entry.js} +199 -137
  210. package/dist/esm/wm-optgroup.entry.js +70 -0
  211. package/dist/esm/wm-option_2.entry.js +422 -0
  212. package/dist/esm/wm-pagination.entry.js +224 -0
  213. package/dist/esm/wm-progress-indicator_3.entry.js +198 -0
  214. package/dist/esm/wm-search.entry.js +190 -0
  215. package/dist/esm/wm-snackbar.entry.js +185 -0
  216. package/dist/esm/wm-tab-item_3.entry.js +257 -0
  217. package/dist/esm/wm-tag-input.entry.js +888 -0
  218. package/dist/{ripple → esm}/wm-tag-option.entry.js +6 -2
  219. package/dist/esm/wm-textarea.entry.js +84 -0
  220. package/dist/esm/wm-timepicker.entry.js +303 -0
  221. package/dist/esm/wm-toggletip.entry.js +179 -0
  222. package/dist/esm/wm-uploader.entry.js +321 -0
  223. package/dist/{ripple → esm}/wm-wrapper.entry.js +1 -1
  224. package/dist/esm-es5/app-globals-8110c96f.js +1 -0
  225. package/dist/esm-es5/chartFunctions-4095a787.js +1 -0
  226. package/dist/esm-es5/functions-682e95b4.js +1 -0
  227. package/dist/esm-es5/index-130e07bb.js +1 -0
  228. package/dist/esm-es5/index.js +0 -0
  229. package/dist/esm-es5/interfaces-cc5b177f.js +1 -0
  230. package/dist/esm-es5/intl-e0444831.js +1 -0
  231. package/dist/esm-es5/loader.js +1 -0
  232. package/dist/esm-es5/priv-calendar.entry.js +1 -0
  233. package/dist/esm-es5/priv-chart-popover.entry.js +1 -0
  234. package/dist/esm-es5/priv-navigator-button.entry.js +1 -0
  235. package/dist/{ripple/wm-progress-monitor.entry.js → esm-es5/priv-navigator-item.entry.js} +1 -71
  236. package/dist/esm-es5/priv-option-list.entry.js +1 -0
  237. package/dist/esm-es5/ripple.js +1 -0
  238. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -0
  239. package/dist/esm-es5/wm-button.entry.js +1 -0
  240. package/dist/esm-es5/wm-chart-slice.entry.js +1 -0
  241. package/dist/esm-es5/wm-chart.entry.js +1 -0
  242. package/dist/esm-es5/wm-date-range.entry.js +1 -0
  243. package/dist/{ripple/wm-uploader.entry.js → esm-es5/wm-datepicker.entry.js} +1 -313
  244. package/dist/{ripple/wm-tab-item.entry.js → esm-es5/wm-file-list.entry.js} +1 -63
  245. package/dist/esm-es5/wm-file.entry.js +1 -0
  246. package/dist/{ripple/wm-input.entry.js → esm-es5/wm-flyout.entry.js} +1 -111
  247. package/dist/esm-es5/wm-input.entry.js +1 -0
  248. package/dist/esm-es5/wm-line-chart.entry.js +1 -0
  249. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -0
  250. package/dist/esm-es5/wm-modal_3.entry.js +1 -0
  251. package/dist/esm-es5/wm-navigation_3.entry.js +1 -0
  252. package/dist/esm-es5/wm-navigator.entry.js +1 -0
  253. package/dist/esm-es5/wm-nested-select.entry.js +1 -0
  254. package/dist/esm-es5/wm-optgroup.entry.js +1 -0
  255. package/dist/esm-es5/wm-option_2.entry.js +1 -0
  256. package/dist/esm-es5/wm-pagination.entry.js +1 -0
  257. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -0
  258. package/dist/esm-es5/wm-search.entry.js +1 -0
  259. package/dist/esm-es5/wm-snackbar.entry.js +1 -0
  260. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -0
  261. package/dist/esm-es5/wm-tag-input.entry.js +1 -0
  262. package/dist/esm-es5/wm-tag-option.entry.js +1 -0
  263. package/dist/esm-es5/wm-textarea.entry.js +1 -0
  264. package/dist/esm-es5/wm-timepicker.entry.js +1 -0
  265. package/dist/esm-es5/wm-toggletip.entry.js +1 -0
  266. package/dist/esm-es5/wm-uploader.entry.js +1 -0
  267. package/dist/esm-es5/wm-wrapper.entry.js +1 -0
  268. package/dist/index.cjs.js +1 -0
  269. package/dist/index.js +1 -0
  270. package/dist/loader/cdn.js +2 -0
  271. package/dist/loader/index.cjs.js +2 -0
  272. package/dist/loader/index.d.ts +24 -0
  273. package/dist/loader/index.es2017.js +2 -0
  274. package/dist/loader/index.js +3 -0
  275. package/dist/loader/package.json +11 -0
  276. package/dist/ripple/index.esm.js +0 -1
  277. package/dist/ripple/p-00baa278.entry.js +1 -0
  278. package/dist/ripple/{wm-flyout.entry.js → p-015af452.system.entry.js} +1 -167
  279. package/dist/ripple/p-039a53d7.entry.js +1 -0
  280. package/dist/ripple/p-043901ab.system.entry.js +1 -0
  281. package/dist/ripple/p-0528bf4d.entry.js +1 -0
  282. package/dist/ripple/p-0d4c017e.system.entry.js +1 -0
  283. package/dist/ripple/p-11aef4e8.entry.js +1 -0
  284. package/dist/ripple/p-13b1d775.entry.js +1 -0
  285. package/dist/ripple/p-14b3b062.system.entry.js +1 -0
  286. package/dist/ripple/p-15712a55.entry.js +1 -0
  287. package/dist/ripple/p-187c694f.js +1 -0
  288. package/dist/ripple/{wm-navigation-item.entry.js → p-18d6408f.system.entry.js} +1 -18
  289. package/dist/ripple/p-199fd014.system.entry.js +1 -0
  290. package/dist/ripple/p-1d43bc57.system.entry.js +1 -0
  291. package/dist/ripple/p-2732bddd.js +1 -0
  292. package/dist/ripple/p-29d32ee5.system.js +1 -0
  293. package/dist/ripple/p-31da9108.system.entry.js +1 -0
  294. package/dist/ripple/p-371c36f5.entry.js +1 -0
  295. package/dist/ripple/p-37301ba0.system.js +1 -0
  296. package/dist/ripple/p-42fa7a77.system.js +1 -0
  297. package/dist/ripple/p-43a28379.entry.js +1 -0
  298. package/dist/ripple/p-44577815.entry.js +1 -0
  299. package/dist/ripple/p-45f831ef.entry.js +1 -0
  300. package/dist/ripple/p-50ea2036.system.js +1 -0
  301. package/dist/ripple/p-55f880af.entry.js +1 -0
  302. package/dist/ripple/p-5642cfb5.system.entry.js +1 -0
  303. package/dist/ripple/p-5a564d92.system.entry.js +1 -0
  304. package/dist/ripple/p-5f09e972.entry.js +1 -0
  305. package/dist/ripple/p-61f8a6d4.system.entry.js +1 -0
  306. package/dist/ripple/p-6439b435.system.entry.js +1 -0
  307. package/dist/ripple/p-6747a274.system.js +1 -0
  308. package/dist/ripple/p-704bacb9.system.entry.js +1 -0
  309. package/dist/ripple/p-72b88618.system.entry.js +1 -0
  310. package/dist/ripple/p-733c7bd5.system.js +1 -0
  311. package/dist/ripple/p-7360ce37.entry.js +1 -0
  312. package/dist/ripple/p-7a08da5c.system.js +1 -0
  313. package/dist/ripple/{priv-option-list.entry.js → p-7a6f535f.system.entry.js} +1 -385
  314. package/dist/ripple/p-7c9bf5f6.system.entry.js +1 -0
  315. package/dist/ripple/p-8194ee04.entry.js +1 -0
  316. package/dist/ripple/p-823d7b4e.system.entry.js +1 -0
  317. package/dist/ripple/p-8303bd1e.entry.js +1 -0
  318. package/dist/ripple/{wm-modal-pss-header.entry.js → p-849384be.system.entry.js} +1 -39
  319. package/dist/ripple/p-8cd5206a.entry.js +1 -0
  320. package/dist/ripple/p-8dde12bd.entry.js +1 -0
  321. package/dist/ripple/p-91a8e524.system.entry.js +1 -0
  322. package/dist/ripple/p-927df284.system.entry.js +1 -0
  323. package/dist/ripple/p-932922ed.system.entry.js +1 -0
  324. package/dist/ripple/p-95d5618f.js +1 -0
  325. package/dist/ripple/p-9859635f.entry.js +1 -0
  326. package/dist/ripple/{wm-modal.entry.js → p-9d8c5fb4.system.entry.js} +1 -133
  327. package/dist/ripple/p-9e7e5948.system.entry.js +1 -0
  328. package/dist/ripple/p-a02cdb4f.js +1 -0
  329. package/dist/ripple/p-a399fb79.entry.js +1 -0
  330. package/dist/ripple/p-a4c26c21.entry.js +1 -0
  331. package/dist/ripple/{wm-modal-pss-footer.entry.js → p-a685a5fa.entry.js} +1 -40
  332. package/dist/ripple/p-a70f8d7a.entry.js +1 -0
  333. package/dist/ripple/p-ac241e42.system.entry.js +1 -0
  334. package/dist/ripple/p-afa213ca.entry.js +1 -0
  335. package/dist/ripple/p-b1e4f8d0.entry.js +1 -0
  336. package/dist/ripple/p-b4a9a118.entry.js +1 -0
  337. package/dist/ripple/p-b73936b2.system.entry.js +1 -0
  338. package/dist/ripple/p-bb00a18f.js +1 -0
  339. package/dist/ripple/p-bbb37d6e.entry.js +1 -0
  340. package/dist/ripple/{wm-file.entry.js → p-c3ab1c4b.system.entry.js} +1 -182
  341. package/dist/ripple/p-cd0cc88d.entry.js +1 -0
  342. package/dist/ripple/{wm-nested-select.entry.js → p-cd5c59ef.system.entry.js} +1 -308
  343. package/dist/ripple/p-cef8a45b.system.js +2 -0
  344. package/dist/ripple/p-cf77cdd0.system.entry.js +1 -0
  345. package/dist/ripple/p-d1950a60.entry.js +1 -0
  346. package/dist/ripple/p-d4ac08de.system.entry.js +1 -0
  347. package/dist/ripple/p-d8f0c9b4.system.entry.js +1 -0
  348. package/dist/ripple/p-d9da0502.js +2 -0
  349. package/dist/ripple/p-dbd8a6c4.system.entry.js +1 -0
  350. package/dist/ripple/p-dc600a24.entry.js +1 -0
  351. package/dist/ripple/p-dc82b6d2.entry.js +1 -0
  352. package/dist/ripple/p-e12e6b00.system.entry.js +1 -0
  353. package/dist/ripple/p-e7ee2171.system.entry.js +1 -0
  354. package/dist/ripple/p-e8f5c8cd.entry.js +1 -0
  355. package/dist/ripple/{priv-navigator-item.entry.js → p-e9c4ed97.entry.js} +1 -30
  356. package/dist/ripple/p-ec4c1020.system.entry.js +1 -0
  357. package/dist/ripple/p-ee01e771.entry.js +1 -0
  358. package/dist/ripple/p-f2c40a23.system.entry.js +1 -0
  359. package/dist/ripple/p-f65448ac.entry.js +1 -0
  360. package/dist/ripple/p-feaa4c19.entry.js +1 -0
  361. package/dist/ripple/ripple.esm.js +1 -48
  362. package/dist/ripple/ripple.js +127 -0
  363. package/dist/types/stencil-public-runtime.d.ts +0 -28
  364. package/package.json +12 -32
  365. package/LICENSE +0 -21
  366. package/dist/components/index.d.ts +0 -33
  367. package/dist/components/priv-calendar.d.ts +0 -11
  368. package/dist/components/priv-chart-popover.d.ts +0 -11
  369. package/dist/components/priv-navigator-button.d.ts +0 -11
  370. package/dist/components/priv-navigator-item.d.ts +0 -11
  371. package/dist/components/priv-option-list.d.ts +0 -11
  372. package/dist/components/wm-action-menu.d.ts +0 -11
  373. package/dist/components/wm-button.d.ts +0 -11
  374. package/dist/components/wm-chart-slice.d.ts +0 -11
  375. package/dist/components/wm-chart.d.ts +0 -11
  376. package/dist/components/wm-date-range.d.ts +0 -11
  377. package/dist/components/wm-datepicker.d.ts +0 -11
  378. package/dist/components/wm-file-list.d.ts +0 -11
  379. package/dist/components/wm-file.d.ts +0 -11
  380. package/dist/components/wm-flyout.d.ts +0 -11
  381. package/dist/components/wm-input.d.ts +0 -11
  382. package/dist/components/wm-line-chart.d.ts +0 -11
  383. package/dist/components/wm-menuitem.d.ts +0 -11
  384. package/dist/components/wm-modal-footer.d.ts +0 -11
  385. package/dist/components/wm-modal-header.d.ts +0 -11
  386. package/dist/components/wm-modal-pss-footer.d.ts +0 -11
  387. package/dist/components/wm-modal-pss-header.d.ts +0 -11
  388. package/dist/components/wm-modal-pss.d.ts +0 -11
  389. package/dist/components/wm-modal.d.ts +0 -11
  390. package/dist/components/wm-navigation-hamburger.d.ts +0 -11
  391. package/dist/components/wm-navigation-item.d.ts +0 -11
  392. package/dist/components/wm-navigation.d.ts +0 -11
  393. package/dist/components/wm-navigator.d.ts +0 -11
  394. package/dist/components/wm-nested-select.d.ts +0 -11
  395. package/dist/components/wm-optgroup.d.ts +0 -11
  396. package/dist/components/wm-option.d.ts +0 -11
  397. package/dist/components/wm-pagination.d.ts +0 -11
  398. package/dist/components/wm-progress-indicator.d.ts +0 -11
  399. package/dist/components/wm-progress-monitor.d.ts +0 -11
  400. package/dist/components/wm-progress-slice.d.ts +0 -11
  401. package/dist/components/wm-search.d.ts +0 -11
  402. package/dist/components/wm-select.d.ts +0 -11
  403. package/dist/components/wm-snackbar.d.ts +0 -11
  404. package/dist/components/wm-tab-item.d.ts +0 -11
  405. package/dist/components/wm-tab-list.d.ts +0 -11
  406. package/dist/components/wm-tab-panel.d.ts +0 -11
  407. package/dist/components/wm-tag-input.d.ts +0 -11
  408. package/dist/components/wm-tag-option.d.ts +0 -11
  409. package/dist/components/wm-textarea.d.ts +0 -11
  410. package/dist/components/wm-timepicker.d.ts +0 -11
  411. package/dist/components/wm-toggletip.d.ts +0 -11
  412. package/dist/components/wm-uploader.d.ts +0 -11
  413. package/dist/components/wm-wrapper.d.ts +0 -11
  414. package/dist/ripple/index-CU5QNCKv.js +0 -4167
  415. package/dist/ripple/priv-calendar.entry.js +0 -566
  416. package/dist/ripple/priv-chart-popover.entry.js +0 -134
  417. package/dist/ripple/priv-navigator-button.entry.js +0 -24
  418. package/dist/ripple/wm-action-menu.entry.js +0 -201
  419. package/dist/ripple/wm-button.entry.js +0 -197
  420. package/dist/ripple/wm-date-range.entry.js +0 -477
  421. package/dist/ripple/wm-datepicker.entry.js +0 -247
  422. package/dist/ripple/wm-file-list.entry.js +0 -18
  423. package/dist/ripple/wm-line-chart.entry.js +0 -449
  424. package/dist/ripple/wm-modal-pss.entry.js +0 -135
  425. package/dist/ripple/wm-navigation-hamburger.entry.js +0 -48
  426. package/dist/ripple/wm-navigation.entry.js +0 -116
  427. package/dist/ripple/wm-pagination.entry.js +0 -223
  428. package/dist/ripple/wm-progress-indicator.entry.js +0 -107
  429. package/dist/ripple/wm-progress-slice.entry.js +0 -13
  430. package/dist/ripple/wm-snackbar.entry.js +0 -185
  431. package/dist/ripple/wm-tab-list.entry.js +0 -175
  432. package/dist/ripple/wm-tab-panel.entry.js +0 -32
  433. package/dist/ripple/wm-tag-input.entry.js +0 -877
  434. package/dist/ripple/wm-textarea.entry.js +0 -79
  435. package/dist/ripple/wm-timepicker.entry.js +0 -300
@@ -0,0 +1,840 @@
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.calType = "single";
7
+ this.calName = "";
8
+ this.calInstructions = intl.formatMessage({
9
+ id: "date.instructions",
10
+ 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.",
11
+ });
12
+ this._focus = {
13
+ year: {
14
+ asString: () => dateFind.year.asString(this.focusDate),
15
+ asInt: () => dateFind.year.asInt(this.focusDate),
16
+ set: (y) => {
17
+ const m = this._focus.month.asInt();
18
+ const d = this._focus.day.asInt();
19
+ this.focusDate = makeISO(y, m, d);
20
+ },
21
+ increase: (n) => {
22
+ const newDate = dateFind.year.increase(this.focusDate, n);
23
+ this.focusDate = newDate;
24
+ },
25
+ decrease: (n) => {
26
+ const newDate = dateFind.year.decrease(this.focusDate, n);
27
+ this.focusDate = newDate;
28
+ },
29
+ },
30
+ month: {
31
+ asString: () => dateFind.month.asString(this.focusDate),
32
+ asInt: () => dateFind.month.asInt(this.focusDate),
33
+ set: (m) => {
34
+ const y = this._focus.year.asInt();
35
+ const d = this._focus.day.asInt();
36
+ this.focusDate = makeISO(y, m, d);
37
+ },
38
+ increase: (n) => {
39
+ const newDate = dateFind.month.increase(this.focusDate, n);
40
+ this.focusDate = newDate;
41
+ },
42
+ decrease: (n) => {
43
+ const newDate = dateFind.month.decrease(this.focusDate, n);
44
+ this.focusDate = newDate;
45
+ },
46
+ },
47
+ day: {
48
+ asString: () => dateFind.day.asString(this.focusDate),
49
+ asInt: () => dateFind.day.asInt(this.focusDate),
50
+ set: (d) => {
51
+ const y = this._focus.year.asInt();
52
+ const m = this._focus.month.asInt();
53
+ d = d === -1 ? getMonthLength(m, y) : d;
54
+ this.focusDate = makeISO(y, m, d);
55
+ },
56
+ increase: (n) => {
57
+ const newDate = dateFind.day.increase(this.focusDate, n);
58
+ this.focusDate = newDate;
59
+ },
60
+ decrease: (n) => {
61
+ const newDate = dateFind.day.decrease(this.focusDate, n);
62
+ this.focusDate = newDate;
63
+ },
64
+ },
65
+ };
66
+ this.monthButtonFocus = {
67
+ set: (i) => {
68
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
69
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
70
+ selButton.classList.remove("selected");
71
+ selButton.tabIndex = -1;
72
+ buttons[i - 1].classList.add("selected");
73
+ buttons[i - 1].tabIndex = 0;
74
+ buttons[i - 1].focus();
75
+ },
76
+ increase: (i) => {
77
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
78
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
79
+ const oldIndex = buttons.indexOf(selButton);
80
+ const newIndex = (oldIndex + i) % 12;
81
+ if (newIndex < oldIndex) {
82
+ this._focus.year.increase(1);
83
+ }
84
+ selButton.classList.remove("focused");
85
+ selButton.tabIndex = -1;
86
+ buttons[newIndex].classList.add("focused");
87
+ buttons[newIndex].tabIndex = 0;
88
+ buttons[newIndex].focus();
89
+ },
90
+ decrease: (i) => {
91
+ const buttons = Array.from(this.el.querySelectorAll(".month"));
92
+ const selButton = buttons.filter((b) => b.classList.contains("focused"))[0];
93
+ const oldIndex = buttons.indexOf(selButton);
94
+ // ensure no neg values for modulo
95
+ let newIndex = oldIndex + 24;
96
+ newIndex = (newIndex - i) % 12;
97
+ if (newIndex > oldIndex) {
98
+ this._focus.year.decrease(1);
99
+ }
100
+ selButton.classList.remove("focused");
101
+ selButton.tabIndex = -1;
102
+ buttons[newIndex].classList.add("focused");
103
+ buttons[newIndex].tabIndex = 0;
104
+ buttons[newIndex].focus();
105
+ },
106
+ };
107
+ this.renderCalendarDate = (date, index, eitherStart, eitherEnd) => {
108
+ if (date === "placeholder") {
109
+ return h("div", { role: "gridcell" });
110
+ }
111
+ const monthOfDate = dateFind.month.asInt(date);
112
+ const dayOfDate = dateFind.day.asInt(date);
113
+ const yearOfDate = dateFind.year.asInt(date);
114
+ const isStartDate = eitherStart && eitherStart === date;
115
+ let selected = isStartDate ? "true" : "false";
116
+ const classesArr = ["date-cell"];
117
+ const isFocused = date === this.focusDate;
118
+ const isToday = date === this.today;
119
+ if (isToday)
120
+ classesArr.push("today");
121
+ if (this.calType === "range") {
122
+ const isEndDate = eitherStart && eitherEnd && eitherEnd === date && eitherStart < eitherEnd;
123
+ selected = isEndDate ? "true" : selected;
124
+ const isFirstOfMonth = dayOfDate === 1;
125
+ const isLastOfMonth = dayOfDate === getMonthLength(monthOfDate, yearOfDate);
126
+ const isInRange = this.isInRange(date);
127
+ const isInRangePreview = this.isInRangePreview(date);
128
+ const isPreviewStartOrEnd = !eitherEnd && eitherStart && this.hoverDate && date === this.hoverDate;
129
+ const isPreviewStart = isPreviewStartOrEnd && this.hoverDate < eitherStart;
130
+ const isPreviewEnd = isPreviewStartOrEnd && this.hoverDate > eitherStart;
131
+ if (isFirstOfMonth)
132
+ classesArr.push("first-of-month");
133
+ if (isLastOfMonth)
134
+ classesArr.push("last-of-month");
135
+ if (isStartDate) {
136
+ if (isInRangePreview && !isEndDate && this.hoverDate && this.hoverDate < eitherStart) {
137
+ // invert the arrow direction if user mouses over a prior date
138
+ classesArr.push("range-end");
139
+ }
140
+ else {
141
+ classesArr.push("range-start");
142
+ }
143
+ }
144
+ if (isEndDate)
145
+ classesArr.push("range-end");
146
+ if (isInRange)
147
+ classesArr.push("in-range");
148
+ if (isInRangePreview)
149
+ classesArr.push("in-range preview");
150
+ if (isPreviewStart)
151
+ classesArr.push("preview-start");
152
+ if (isPreviewEnd)
153
+ classesArr.push("preview-end");
154
+ }
155
+ const classes = classesArr.join(" ");
156
+ return (h("div", { role: "gridcell", id: `cell-${date}`, class: classes, "aria-selected": selected, "aria-label": `${isToday
157
+ ? `${intl.formatMessage({
158
+ id: "date.today",
159
+ defaultMessage: "today",
160
+ description: "calendar button",
161
+ })}, `
162
+ : ""}${weekdays[index]}, ${calendar_months[monthOfDate - 1]} ${dayOfDate}, ${yearOfDate}`, onClick: (ev) => {
163
+ this.handleDateClick(ev.target);
164
+ }, 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));
165
+ };
166
+ this.disabled = false;
167
+ this.view = "day";
168
+ this.focusDate = this.today;
169
+ this.startDate = undefined;
170
+ this.endDate = undefined;
171
+ this.hoverDate = undefined;
172
+ }
173
+ setCalName() {
174
+ const cals = this.el.parentElement.querySelectorAll("priv-calendar");
175
+ let calname;
176
+ // if the parent el only contains one calendar
177
+ if (cals.length === 1) {
178
+ calname = intl.formatMessage({
179
+ id: "date.calName",
180
+ defaultMessage: "Calendar. ",
181
+ });
182
+ // if this calendar is the first of the two
183
+ }
184
+ else if (cals[0] === this.el) {
185
+ calname = intl.formatMessage({
186
+ id: "date.firstCalName",
187
+ defaultMessage: "First calendar. ",
188
+ });
189
+ }
190
+ else {
191
+ calname = intl.formatMessage({
192
+ id: "date.secondCalName",
193
+ defaultMessage: "Second calendar. ",
194
+ });
195
+ }
196
+ this.calName = calname;
197
+ }
198
+ setCalType() {
199
+ const cals = this.el.parentElement.querySelectorAll("priv-calendar");
200
+ // if the parent el only contains one calendar
201
+ this.calType = cals.length === 1 ? "single" : "range";
202
+ }
203
+ componentWillLoad() {
204
+ this.setCalName();
205
+ this.setCalType();
206
+ }
207
+ handleFocusDate(newVal, oldVal) {
208
+ if (this.view === "day") {
209
+ const oldCell = this.getCell(oldVal);
210
+ if (oldCell)
211
+ oldCell.tabIndex = -1;
212
+ const newCell = this.getCell(newVal);
213
+ if (newCell)
214
+ newCell.tabIndex = 0;
215
+ }
216
+ else {
217
+ const oldMonthEl = this.el.querySelector(`#month-${dateFind.month.asInt(oldVal)}`);
218
+ if (oldMonthEl)
219
+ oldMonthEl.tabIndex = -1;
220
+ const newMonthEl = this.el.querySelector(`#month-${dateFind.month.asInt(newVal)}`);
221
+ if (newMonthEl)
222
+ newMonthEl.tabIndex = 0;
223
+ //monthToFocus.focus();
224
+ }
225
+ this.dateFocus.emit();
226
+ }
227
+ get otherCalEl() {
228
+ const bothCals = this.el.parentElement.querySelectorAll("priv-calendar");
229
+ let val;
230
+ if (bothCals.length === 2) {
231
+ val = bothCals[0] === this.el ? bothCals[1] : bothCals[0];
232
+ }
233
+ // returns undefined for wm-datepicker
234
+ // or possibly on first load if everything hasn't loaded yet
235
+ return val;
236
+ }
237
+ get headerButtonEls() {
238
+ return Array.from(this.el.querySelectorAll(".header-btn"));
239
+ }
240
+ handleKey(ev) {
241
+ switch (ev.key) {
242
+ case " ":
243
+ case "Enter":
244
+ ev.preventDefault();
245
+ //Clunky exception for blur validation. Remove when blur reworked.
246
+ !ev.target.id.includes("popup-title") && ev.target.click();
247
+ break;
248
+ case "PageUp":
249
+ ev.preventDefault();
250
+ if (this.view === "day") {
251
+ this._focus.month.decrease(1);
252
+ this.focusCell();
253
+ }
254
+ else {
255
+ this._focus.year.decrease(1);
256
+ }
257
+ break;
258
+ case "PageDown":
259
+ ev.preventDefault();
260
+ if (this.view === "day") {
261
+ this._focus.month.increase(1);
262
+ this.focusCell();
263
+ }
264
+ else {
265
+ this._focus.year.increase(1);
266
+ }
267
+ break;
268
+ case "Home":
269
+ ev.preventDefault();
270
+ if (this.view === "day") {
271
+ this._focus.day.set(1);
272
+ this.focusCell();
273
+ }
274
+ else {
275
+ this.monthButtonFocus.set(1);
276
+ }
277
+ break;
278
+ case "End":
279
+ ev.preventDefault();
280
+ if (this.view === "day") {
281
+ this._focus.day.set(-1);
282
+ this.focusCell();
283
+ }
284
+ else {
285
+ this.monthButtonFocus.set(12);
286
+ }
287
+ break;
288
+ case "ArrowLeft":
289
+ ev.preventDefault();
290
+ if (this.view === "day") {
291
+ this._focus.day.decrease(1);
292
+ // if the month changes as a result of this navigation, calendar must render the correct month before the proper cell can be focused
293
+ this.focusCell();
294
+ }
295
+ else {
296
+ this.monthButtonFocus.decrease(1);
297
+ }
298
+ break;
299
+ case "ArrowRight":
300
+ ev.preventDefault();
301
+ if (this.view === "day") {
302
+ this._focus.day.increase(1);
303
+ this.focusCell();
304
+ }
305
+ else {
306
+ this.monthButtonFocus.increase(1);
307
+ }
308
+ break;
309
+ case "ArrowUp":
310
+ ev.preventDefault();
311
+ if (this.view === "day") {
312
+ this._focus.day.decrease(7);
313
+ this.focusCell();
314
+ }
315
+ else {
316
+ this.monthButtonFocus.decrease(3);
317
+ }
318
+ break;
319
+ case "ArrowDown":
320
+ ev.preventDefault();
321
+ if (this.view === "day") {
322
+ //If the down arrow is pressed from the month button or the arrow buttons, focus should shift to the current cell in focus
323
+ if (!(document.activeElement.shadowRoot || document).activeElement.classList.contains("date-cell")) {
324
+ this.focusCell();
325
+ break;
326
+ }
327
+ this._focus.day.increase(7);
328
+ this.focusCell();
329
+ }
330
+ else {
331
+ //If the down arrow is pressed from the arrow buttons or the title box, focus should shift to the current month in focus
332
+ const activeEl = (document.activeElement.shadowRoot || document).activeElement;
333
+ if (activeEl.classList.contains("header-btn")) {
334
+ this.focusCell();
335
+ break;
336
+ }
337
+ this.monthButtonFocus.increase(3);
338
+ }
339
+ break;
340
+ }
341
+ }
342
+ handleDateClick(el) {
343
+ const detail = { cal: this.el, cell: el };
344
+ this.cellTriggered.emit(detail);
345
+ // change of input value will trigger the function updating selectedDate
346
+ }
347
+ removeZeroes(date) {
348
+ return +date < 10 ? +date.slice(1) : +date;
349
+ }
350
+ dateToISO(date) {
351
+ const dateArr = [
352
+ date.getUTCFullYear().toString().padStart(4, "0"),
353
+ (date.getUTCMonth() + 1).toString().padStart(2, "0"),
354
+ date.getUTCDate().toString().padStart(2, "0"),
355
+ ];
356
+ return dateArr.join("-");
357
+ }
358
+ isInRange(date) {
359
+ if (this.otherCalEl) {
360
+ const eitherStart = this.startDate || this.otherCalEl.startDate;
361
+ const eitherEnd = this.endDate || this.otherCalEl.endDate;
362
+ if (eitherStart && eitherEnd) {
363
+ // if both dates exist the range is shown
364
+ return eitherStart <= date && date <= eitherEnd;
365
+ }
366
+ }
367
+ return false;
368
+ }
369
+ isInRangePreview(date) {
370
+ if (this.otherCalEl) {
371
+ const eitherStart = this.startDate || this.otherCalEl.startDate;
372
+ const eitherEnd = this.endDate || this.otherCalEl.endDate;
373
+ // no preview if there's an existing range
374
+ if (eitherStart && eitherEnd)
375
+ return false;
376
+ if (eitherStart && this.hoverDate) {
377
+ // if only startDate exists, the hovered date functions as the other end of the range
378
+ if (this.hoverDate > eitherStart) {
379
+ return eitherStart <= date && date <= this.hoverDate;
380
+ }
381
+ else if (this.hoverDate < eitherStart) {
382
+ // user is mousing over a date prior to the start date
383
+ // start date considered as end of range
384
+ return this.hoverDate <= date && date <= eitherStart;
385
+ } // if neither < or > then it's the same date and should return false
386
+ }
387
+ else if (eitherEnd && this.hoverDate) {
388
+ // if only endDate exists, the hovered date functions as the other end of the range
389
+ if (this.hoverDate < eitherEnd) {
390
+ return this.hoverDate <= date && date <= eitherEnd;
391
+ }
392
+ else if (this.hoverDate > eitherEnd) {
393
+ // user is mousing over a date later than the end date
394
+ // end date considered as beggining of range
395
+ return eitherEnd <= date && date <= this.hoverDate;
396
+ }
397
+ }
398
+ }
399
+ return false;
400
+ }
401
+ // 1 => Sunday, 7 => Saturday
402
+ getMonthFirstDay(month, year) {
403
+ return +new Date(year, month - 1, 1, 12, 0, 0).getDay() + 1;
404
+ }
405
+ getCalendarDates(date) {
406
+ const month = dateFind.month.asInt(date);
407
+ const year = dateFind.year.asInt(date);
408
+ // Get number of days in the month and the month's first day
409
+ const monthDays = getMonthLength(month, year);
410
+ // Builds dates to be displayed from current month.
411
+ const dates = [...new Array(monthDays).fill(undefined)].map((_, index) => {
412
+ const day = index + 1;
413
+ return makeISO(year, month, day);
414
+ });
415
+ // Get number of empty cells from previous and next months
416
+ // These ensure a total of 42 days (6 weeks) displayed on the calendar
417
+ const monthFirstDay = this.getMonthFirstDay(month, year);
418
+ const numBefore = monthFirstDay - 1;
419
+ const cellsBefore = numBefore > 0 ? new Array(numBefore).fill("placeholder") : [];
420
+ let numAfter = 42 - (numBefore + monthDays);
421
+ numAfter = numAfter > 6 ? numAfter - 7 : numAfter;
422
+ const cellsAfter = numAfter > 0 ? new Array(numAfter).fill("placeholder") : [];
423
+ return [...cellsBefore, ...dates, ...cellsAfter];
424
+ }
425
+ getCell(date) {
426
+ return this.el.querySelector(`#cell-${date}`);
427
+ }
428
+ async focusFirstFocusable() {
429
+ this.prevBtnEl.focus();
430
+ }
431
+ async focusLastFocusable() {
432
+ this.focusCell();
433
+ }
434
+ async focusCell() {
435
+ requestAnimationFrame(() => {
436
+ // 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.
437
+ const maxDays = getMonthLength(this._focus.month.asInt(), this._focus.year.asInt());
438
+ const dayToFocus = this._focus.day.asInt();
439
+ if (dayToFocus > maxDays) {
440
+ this._focus.day.set(maxDays);
441
+ }
442
+ if (this.view == "day") {
443
+ const cellToFocus = this.getCell(this.focusDate);
444
+ if (cellToFocus) {
445
+ cellToFocus.tabIndex = 0;
446
+ cellToFocus.focus();
447
+ }
448
+ this.cellHovered.emit(this.focusDate);
449
+ }
450
+ else {
451
+ const monthToFocus = this.el.querySelector(`#month-${this._focus.month.asInt()}`);
452
+ if (monthToFocus) {
453
+ monthToFocus.tabIndex = 0;
454
+ monthToFocus.focus();
455
+ }
456
+ }
457
+ });
458
+ }
459
+ toggleBusyAttribute(state) {
460
+ this.el.querySelector("#wm-container").setAttribute("aria-busy", state);
461
+ }
462
+ renderMonth(month, index) {
463
+ 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: () => {
464
+ this._focus.month.set(index + 1);
465
+ this.view = "day";
466
+ this.focusCell();
467
+ } }, month));
468
+ }
469
+ renderDayView() {
470
+ const dates = this.getCalendarDates(this.focusDate);
471
+ // the start and end date, set in either of the calendars
472
+ const eitherStart = this.startDate || (this.otherCalEl && this.otherCalEl.startDate);
473
+ const eitherEnd = this.endDate || (this.otherCalEl && this.otherCalEl.endDate);
474
+ return (h("div", { class: "popup day-view" }, h("div", { class: "calendar-header" }, h("button", { onClick: () => {
475
+ this._focus.month.decrease(1);
476
+ }, class: "header-btn arw-btn", ref: (el) => (this.prevBtnEl = el), "aria-label": intl.formatMessage({
477
+ id: "date.selectPreviousMonth",
478
+ defaultMessage: "Select previous month",
479
+ description: "Calendar button",
480
+ }) }, h("span", { class: "svg-icon svg-previous" })), h("div", { id: "popup-title-month", class: "header-btn title-box", tabindex: "0", role: "button", onKeyDown: (ev) => {
481
+ if (ev.key === "Enter" || ev.key === " ") {
482
+ ev.preventDefault();
483
+ this.view = "month";
484
+ }
485
+ }, onClick: () => (this.view = "month"), "aria-label": `${intl.formatMessage({
486
+ id: "date.currentMonth",
487
+ defaultMessage: "current month",
488
+ description: "Calendar button",
489
+ })}: ${calendar_months[this._focus.month.asInt() - 1]}
490
+ ${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("span", { class: "svg-icon svg-expand-more" })), h("button", { onClick: () => {
491
+ this._focus.month.increase(1);
492
+ }, "aria-label": intl.formatMessage({
493
+ id: "date.selectNextMonth",
494
+ defaultMessage: "Select next month",
495
+ description: "Calendar button",
496
+ }), class: "header-btn arw-btn" }, h("span", { class: "svg-icon svg-next" }))), 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({
497
+ id: "date.su",
498
+ defaultMessage: "Su",
499
+ description: "Abbreviated day of the week",
500
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
501
+ id: "date.mo",
502
+ defaultMessage: "Mo",
503
+ description: "Abbreviated day of the week",
504
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
505
+ id: "date.tu",
506
+ defaultMessage: "Tu",
507
+ description: "Abbreviated day of the week",
508
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
509
+ id: "date.we",
510
+ defaultMessage: "We",
511
+ description: "Abbreviated day of the week",
512
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
513
+ id: "date.th",
514
+ defaultMessage: "Th",
515
+ description: "Abbreviated day of the week",
516
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
517
+ id: "date.fr",
518
+ defaultMessage: "Fr",
519
+ description: "Abbreviated day of the week",
520
+ }))), h("div", { role: "columnheader", class: "header-cell" }, h("span", null, intl.formatMessage({
521
+ id: "date.sa",
522
+ defaultMessage: "Sa",
523
+ description: "Abbreviated day of the week",
524
+ }))))), 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)))) : ("")))));
525
+ }
526
+ renderMonthView() {
527
+ return (h("div", { class: "month-view" }, h("div", { class: "calendar-header" }, h("button", { onClick: () => {
528
+ this._focus.year.decrease(1);
529
+ }, "aria-label": intl.formatMessage({
530
+ id: "date.selectPreviousYear",
531
+ defaultMessage: "Select previous year",
532
+ description: "Calendar button",
533
+ }), class: "header-btn arw-btn", ref: (el) => (this.prevBtnEl = el) }, h("span", { class: "svg-icon svg-previous" })), h("div", { id: "popup-title-year", tabindex: "0", class: "header-btn title-box year", role: "button", onClick: () => (this.view = "day"), onKeyDown: (ev) => {
534
+ if (ev.key === "Enter" || ev.key === " ") {
535
+ ev.preventDefault();
536
+ this.view = "day";
537
+ }
538
+ }, "aria-labelledby": "year-title" }, h("span", { class: "title" }, this._focus.year.asString()), h("span", { class: "svg-icon svg-expand-less" })), h("button", { onClick: () => {
539
+ this._focus.year.increase(1);
540
+ }, "aria-label": intl.formatMessage({
541
+ id: "date.selectNextYear",
542
+ defaultMessage: "Select next year",
543
+ description: "Calendar button",
544
+ }), class: "header-btn arw-btn" }, h("span", { class: "svg-icon svg-next" }))), 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))))));
545
+ }
546
+ render() {
547
+ return (h(Host, { key: '500ef2d223ffe8e8b5ff8303b45f26b7538adb06', onMouseOut: (ev) => {
548
+ // @ts-ignore
549
+ if (!this.el.parentElement.contains(ev.toElement))
550
+ this.outOfCal.emit();
551
+ }, role: "application", "aria-describedby": "application" }, this.view === "day" ? this.renderDayView() : this.renderMonthView(), h("div", { key: 'd91690922cc11ad991937dd87cd618d175bca76f', id: "application", class: "sr-only" }, this.calName, this.calInstructions)));
552
+ }
553
+ static get is() { return "priv-calendar"; }
554
+ static get originalStyleUrls() {
555
+ return {
556
+ "$": ["priv-calendar.scss"]
557
+ };
558
+ }
559
+ static get styleUrls() {
560
+ return {
561
+ "$": ["priv-calendar.css"]
562
+ };
563
+ }
564
+ static get properties() {
565
+ return {
566
+ "disabled": {
567
+ "type": "boolean",
568
+ "mutable": false,
569
+ "complexType": {
570
+ "original": "boolean",
571
+ "resolved": "boolean",
572
+ "references": {}
573
+ },
574
+ "required": false,
575
+ "optional": false,
576
+ "docs": {
577
+ "tags": [],
578
+ "text": ""
579
+ },
580
+ "attribute": "disabled",
581
+ "reflect": false,
582
+ "defaultValue": "false"
583
+ },
584
+ "view": {
585
+ "type": "string",
586
+ "mutable": true,
587
+ "complexType": {
588
+ "original": "string",
589
+ "resolved": "string",
590
+ "references": {}
591
+ },
592
+ "required": false,
593
+ "optional": false,
594
+ "docs": {
595
+ "tags": [],
596
+ "text": ""
597
+ },
598
+ "attribute": "view",
599
+ "reflect": false,
600
+ "defaultValue": "\"day\""
601
+ },
602
+ "focusDate": {
603
+ "type": "string",
604
+ "mutable": true,
605
+ "complexType": {
606
+ "original": "string",
607
+ "resolved": "string",
608
+ "references": {}
609
+ },
610
+ "required": false,
611
+ "optional": false,
612
+ "docs": {
613
+ "tags": [],
614
+ "text": ""
615
+ },
616
+ "attribute": "focus-date",
617
+ "reflect": false,
618
+ "defaultValue": "this.today"
619
+ },
620
+ "startDate": {
621
+ "type": "string",
622
+ "mutable": false,
623
+ "complexType": {
624
+ "original": "string",
625
+ "resolved": "string | undefined",
626
+ "references": {}
627
+ },
628
+ "required": false,
629
+ "optional": true,
630
+ "docs": {
631
+ "tags": [],
632
+ "text": ""
633
+ },
634
+ "attribute": "start-date",
635
+ "reflect": false
636
+ },
637
+ "endDate": {
638
+ "type": "string",
639
+ "mutable": false,
640
+ "complexType": {
641
+ "original": "string",
642
+ "resolved": "string | undefined",
643
+ "references": {}
644
+ },
645
+ "required": false,
646
+ "optional": true,
647
+ "docs": {
648
+ "tags": [],
649
+ "text": ""
650
+ },
651
+ "attribute": "end-date",
652
+ "reflect": false
653
+ },
654
+ "hoverDate": {
655
+ "type": "string",
656
+ "mutable": false,
657
+ "complexType": {
658
+ "original": "string",
659
+ "resolved": "string | undefined",
660
+ "references": {}
661
+ },
662
+ "required": false,
663
+ "optional": true,
664
+ "docs": {
665
+ "tags": [],
666
+ "text": ""
667
+ },
668
+ "attribute": "hover-date",
669
+ "reflect": false
670
+ }
671
+ };
672
+ }
673
+ static get events() {
674
+ return [{
675
+ "method": "cellTriggered",
676
+ "name": "cellTriggered",
677
+ "bubbles": true,
678
+ "cancelable": true,
679
+ "composed": true,
680
+ "docs": {
681
+ "tags": [],
682
+ "text": ""
683
+ },
684
+ "complexType": {
685
+ "original": "{ cal: HTMLPrivCalendarElement; cell: HTMLElement }",
686
+ "resolved": "{ cal: HTMLPrivCalendarElement; cell: HTMLElement; }",
687
+ "references": {
688
+ "HTMLPrivCalendarElement": {
689
+ "location": "global",
690
+ "id": "global::HTMLPrivCalendarElement"
691
+ },
692
+ "HTMLElement": {
693
+ "location": "global",
694
+ "id": "global::HTMLElement"
695
+ }
696
+ }
697
+ }
698
+ }, {
699
+ "method": "cellHovered",
700
+ "name": "cellHovered",
701
+ "bubbles": true,
702
+ "cancelable": true,
703
+ "composed": true,
704
+ "docs": {
705
+ "tags": [],
706
+ "text": ""
707
+ },
708
+ "complexType": {
709
+ "original": "string",
710
+ "resolved": "string",
711
+ "references": {}
712
+ }
713
+ }, {
714
+ "method": "outOfCal",
715
+ "name": "outOfCal",
716
+ "bubbles": true,
717
+ "cancelable": true,
718
+ "composed": true,
719
+ "docs": {
720
+ "tags": [],
721
+ "text": ""
722
+ },
723
+ "complexType": {
724
+ "original": "string",
725
+ "resolved": "string",
726
+ "references": {}
727
+ }
728
+ }, {
729
+ "method": "popupBlurred",
730
+ "name": "popupBlurred",
731
+ "bubbles": true,
732
+ "cancelable": true,
733
+ "composed": true,
734
+ "docs": {
735
+ "tags": [],
736
+ "text": ""
737
+ },
738
+ "complexType": {
739
+ "original": "{ relatedTarget: EventTarget | null }",
740
+ "resolved": "{ relatedTarget: EventTarget | null; }",
741
+ "references": {
742
+ "EventTarget": {
743
+ "location": "global",
744
+ "id": "global::EventTarget"
745
+ }
746
+ }
747
+ }
748
+ }, {
749
+ "method": "dateFocus",
750
+ "name": "dateFocus",
751
+ "bubbles": true,
752
+ "cancelable": true,
753
+ "composed": true,
754
+ "docs": {
755
+ "tags": [],
756
+ "text": ""
757
+ },
758
+ "complexType": {
759
+ "original": "any",
760
+ "resolved": "any",
761
+ "references": {}
762
+ }
763
+ }];
764
+ }
765
+ static get methods() {
766
+ return {
767
+ "focusFirstFocusable": {
768
+ "complexType": {
769
+ "signature": "() => Promise<void>",
770
+ "parameters": [],
771
+ "references": {
772
+ "Promise": {
773
+ "location": "global",
774
+ "id": "global::Promise"
775
+ }
776
+ },
777
+ "return": "Promise<void>"
778
+ },
779
+ "docs": {
780
+ "text": "",
781
+ "tags": []
782
+ }
783
+ },
784
+ "focusLastFocusable": {
785
+ "complexType": {
786
+ "signature": "() => Promise<void>",
787
+ "parameters": [],
788
+ "references": {
789
+ "Promise": {
790
+ "location": "global",
791
+ "id": "global::Promise"
792
+ }
793
+ },
794
+ "return": "Promise<void>"
795
+ },
796
+ "docs": {
797
+ "text": "",
798
+ "tags": []
799
+ }
800
+ },
801
+ "focusCell": {
802
+ "complexType": {
803
+ "signature": "() => Promise<void>",
804
+ "parameters": [],
805
+ "references": {
806
+ "Promise": {
807
+ "location": "global",
808
+ "id": "global::Promise"
809
+ },
810
+ "HTMLTableCellElement": {
811
+ "location": "global",
812
+ "id": "global::HTMLTableCellElement"
813
+ }
814
+ },
815
+ "return": "Promise<void>"
816
+ },
817
+ "docs": {
818
+ "text": "",
819
+ "tags": []
820
+ }
821
+ }
822
+ };
823
+ }
824
+ static get elementRef() { return "el"; }
825
+ static get watchers() {
826
+ return [{
827
+ "propName": "focusDate",
828
+ "methodName": "handleFocusDate"
829
+ }];
830
+ }
831
+ static get listeners() {
832
+ return [{
833
+ "name": "keydown",
834
+ "method": "handleKey",
835
+ "target": undefined,
836
+ "capture": false,
837
+ "passive": false
838
+ }];
839
+ }
840
+ }