@watermarkinsights/ripple 5.28.1 → 5.29.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/dist/cjs/{app-globals-0b8313f1.js → app-globals-4965a440.js} +1 -1
  2. package/dist/cjs/{chartFunctions-51660576.js → chartFunctions-608adb05.js} +1 -1
  3. package/dist/cjs/{functions-2041a1d8.js → functions-b188d5b3.js} +0 -32
  4. package/dist/cjs/{intl-02a445a1.js → intl-01531391.js} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/priv-calendar.cjs.entry.js +4 -4
  7. package/dist/cjs/priv-chart-popover-old.cjs.entry.js +1 -1
  8. package/dist/cjs/priv-chart-popover_2.cjs.entry.js +1 -1
  9. package/dist/cjs/priv-navigator-button.cjs.entry.js +1 -1
  10. package/dist/cjs/priv-navigator-item.cjs.entry.js +1 -1
  11. package/dist/cjs/priv-option-list.cjs.entry.js +3 -3
  12. package/dist/cjs/ripple.cjs.js +2 -2
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +5 -5
  14. package/dist/cjs/wm-button.cjs.entry.js +2 -2
  15. package/dist/cjs/wm-chart-bar.cjs.entry.js +3 -3
  16. package/dist/cjs/wm-chart-column.cjs.entry.js +3 -3
  17. package/dist/cjs/wm-chart.cjs.entry.js +3 -3
  18. package/dist/cjs/wm-date-range.cjs.entry.js +153 -115
  19. package/dist/cjs/wm-datepicker.cjs.entry.js +128 -91
  20. package/dist/cjs/wm-file-list.cjs.entry.js +1 -1
  21. package/dist/cjs/wm-file.cjs.entry.js +2 -2
  22. package/dist/cjs/wm-flyout.cjs.entry.js +3 -3
  23. package/dist/cjs/wm-input.cjs.entry.js +3 -3
  24. package/dist/cjs/wm-line-chart.cjs.entry.js +3 -3
  25. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +6 -6
  26. package/dist/cjs/wm-modal_3.cjs.entry.js +6 -6
  27. package/dist/cjs/wm-navigation_3.cjs.entry.js +6 -6
  28. package/dist/cjs/wm-navigator.cjs.entry.js +1 -1
  29. package/dist/cjs/wm-nested-select.cjs.entry.js +5 -5
  30. package/dist/cjs/wm-optgroup.cjs.entry.js +2 -2
  31. package/dist/cjs/wm-option_2.cjs.entry.js +7 -7
  32. package/dist/cjs/wm-pagination.cjs.entry.js +3 -3
  33. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +2 -2
  34. package/dist/cjs/wm-search.cjs.entry.js +5 -5
  35. package/dist/cjs/wm-snackbar.cjs.entry.js +4 -4
  36. package/dist/cjs/wm-tab-item_3.cjs.entry.js +7 -7
  37. package/dist/cjs/wm-tag-input.cjs.entry.js +4 -4
  38. package/dist/cjs/wm-tag-option.cjs.entry.js +1 -1
  39. package/dist/cjs/wm-textarea.cjs.entry.js +3 -3
  40. package/dist/cjs/wm-timepicker.cjs.entry.js +3 -3
  41. package/dist/cjs/wm-toggletip.cjs.entry.js +4 -4
  42. package/dist/cjs/wm-uploader.cjs.entry.js +4 -4
  43. package/dist/collection/components/datepickers/datepicker.css +4 -0
  44. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +38 -21
  45. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +2 -2
  46. package/dist/collection/components/datepickers/wm-date-range.js +157 -140
  47. package/dist/collection/components/datepickers/wm-datepicker.js +132 -115
  48. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +1 -1
  49. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +3 -3
  50. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +1 -1
  51. package/dist/collection/components/selects/wm-option/wm-option.js +1 -1
  52. package/dist/collection/components/selects/wm-select/wm-select.js +4 -4
  53. package/dist/collection/components/wm-action-menu/wm-action-menu.js +3 -3
  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 +1 -1
  57. package/dist/collection/components/wm-flyout/wm-flyout.js +1 -1
  58. package/dist/collection/components/wm-input/wm-input.js +1 -1
  59. package/dist/collection/components/wm-menuitem/wm-menuitem.js +1 -1
  60. package/dist/collection/components/wm-modal/wm-modal-footer.js +1 -1
  61. package/dist/collection/components/wm-modal/wm-modal-header.js +1 -1
  62. package/dist/collection/components/wm-modal/wm-modal.js +2 -2
  63. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +1 -1
  64. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +1 -1
  65. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +2 -2
  66. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +1 -1
  67. package/dist/collection/components/wm-navigation/wm-navigation-item.js +1 -1
  68. package/dist/collection/components/wm-navigation/wm-navigation.js +2 -2
  69. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +1 -1
  70. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +1 -1
  71. package/dist/collection/components/wm-pagination/wm-pagination.js +1 -1
  72. package/dist/collection/components/wm-search/wm-search.css +2 -0
  73. package/dist/collection/components/wm-search/wm-search.js +2 -2
  74. package/dist/collection/components/wm-snackbar/wm-snackbar.js +2 -2
  75. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +2 -2
  76. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +3 -3
  77. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +1 -1
  78. package/dist/collection/components/wm-tag-input/wm-tag-input.js +2 -2
  79. package/dist/collection/components/wm-textarea/wm-textarea.js +1 -1
  80. package/dist/collection/components/wm-timepicker/wm-timepicker.js +2 -2
  81. package/dist/collection/components/wm-toggletip/wm-toggletip.js +3 -3
  82. package/dist/collection/components/wm-uploader/wm-uploader.js +2 -2
  83. package/dist/collection/global/functions.js +0 -30
  84. package/dist/esm/{app-globals-b5a717cb.js → app-globals-eba3c8fb.js} +1 -1
  85. package/dist/esm/{chartFunctions-ba9dc8bc.js → chartFunctions-4bc77b76.js} +1 -1
  86. package/dist/esm/{functions-2c952c7e.js → functions-de887809.js} +1 -31
  87. package/dist/esm/{intl-28a56253.js → intl-56b47a7b.js} +1 -1
  88. package/dist/esm/loader.js +2 -2
  89. package/dist/esm/priv-calendar.entry.js +4 -4
  90. package/dist/esm/priv-chart-popover-old.entry.js +1 -1
  91. package/dist/esm/priv-chart-popover_2.entry.js +1 -1
  92. package/dist/esm/priv-navigator-button.entry.js +1 -1
  93. package/dist/esm/priv-navigator-item.entry.js +1 -1
  94. package/dist/esm/priv-option-list.entry.js +3 -3
  95. package/dist/esm/ripple.js +2 -2
  96. package/dist/esm/wm-action-menu_2.entry.js +5 -5
  97. package/dist/esm/wm-button.entry.js +2 -2
  98. package/dist/esm/wm-chart-bar.entry.js +3 -3
  99. package/dist/esm/wm-chart-column.entry.js +3 -3
  100. package/dist/esm/wm-chart.entry.js +3 -3
  101. package/dist/esm/wm-date-range.entry.js +153 -115
  102. package/dist/esm/wm-datepicker.entry.js +128 -91
  103. package/dist/esm/wm-file-list.entry.js +1 -1
  104. package/dist/esm/wm-file.entry.js +2 -2
  105. package/dist/esm/wm-flyout.entry.js +3 -3
  106. package/dist/esm/wm-input.entry.js +3 -3
  107. package/dist/esm/wm-line-chart.entry.js +3 -3
  108. package/dist/esm/wm-modal-pss_3.entry.js +6 -6
  109. package/dist/esm/wm-modal_3.entry.js +6 -6
  110. package/dist/esm/wm-navigation_3.entry.js +6 -6
  111. package/dist/esm/wm-navigator.entry.js +1 -1
  112. package/dist/esm/wm-nested-select.entry.js +5 -5
  113. package/dist/esm/wm-optgroup.entry.js +2 -2
  114. package/dist/esm/wm-option_2.entry.js +7 -7
  115. package/dist/esm/wm-pagination.entry.js +3 -3
  116. package/dist/esm/wm-progress-indicator_3.entry.js +2 -2
  117. package/dist/esm/wm-search.entry.js +5 -5
  118. package/dist/esm/wm-snackbar.entry.js +4 -4
  119. package/dist/esm/wm-tab-item_3.entry.js +7 -7
  120. package/dist/esm/wm-tag-input.entry.js +4 -4
  121. package/dist/esm/wm-tag-option.entry.js +1 -1
  122. package/dist/esm/wm-textarea.entry.js +3 -3
  123. package/dist/esm/wm-timepicker.entry.js +3 -3
  124. package/dist/esm/wm-toggletip.entry.js +4 -4
  125. package/dist/esm/wm-uploader.entry.js +4 -4
  126. package/dist/esm-es5/app-globals-eba3c8fb.js +1 -0
  127. package/dist/esm-es5/{chartFunctions-ba9dc8bc.js → chartFunctions-4bc77b76.js} +1 -1
  128. package/dist/esm-es5/{functions-2c952c7e.js → functions-de887809.js} +1 -1
  129. package/dist/esm-es5/{intl-28a56253.js → intl-56b47a7b.js} +1 -1
  130. package/dist/esm-es5/loader.js +1 -1
  131. package/dist/esm-es5/priv-calendar.entry.js +1 -1
  132. package/dist/esm-es5/priv-chart-popover-old.entry.js +1 -1
  133. package/dist/esm-es5/priv-chart-popover_2.entry.js +1 -1
  134. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  135. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  136. package/dist/esm-es5/priv-option-list.entry.js +1 -1
  137. package/dist/esm-es5/ripple.js +1 -1
  138. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  139. package/dist/esm-es5/wm-button.entry.js +1 -1
  140. package/dist/esm-es5/wm-chart-bar.entry.js +1 -1
  141. package/dist/esm-es5/wm-chart-column.entry.js +1 -1
  142. package/dist/esm-es5/wm-chart.entry.js +1 -1
  143. package/dist/esm-es5/wm-date-range.entry.js +1 -1
  144. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  145. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  146. package/dist/esm-es5/wm-file.entry.js +1 -1
  147. package/dist/esm-es5/wm-flyout.entry.js +1 -1
  148. package/dist/esm-es5/wm-input.entry.js +1 -1
  149. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  150. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -1
  151. package/dist/esm-es5/wm-modal_3.entry.js +1 -1
  152. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  153. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  154. package/dist/esm-es5/wm-nested-select.entry.js +1 -1
  155. package/dist/esm-es5/wm-optgroup.entry.js +1 -1
  156. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  157. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  158. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  159. package/dist/esm-es5/wm-search.entry.js +1 -1
  160. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  161. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  162. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  163. package/dist/esm-es5/wm-tag-option.entry.js +1 -1
  164. package/dist/esm-es5/wm-textarea.entry.js +1 -1
  165. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  166. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  167. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  168. package/dist/ripple/{p-4b1f77ac.entry.js → p-03a6850a.entry.js} +1 -1
  169. package/dist/ripple/{p-1827c07b.system.entry.js → p-0c3162d5.system.entry.js} +1 -1
  170. package/dist/ripple/{p-39c777f2.system.entry.js → p-0ec71f08.system.entry.js} +1 -1
  171. package/dist/ripple/{p-b47869f8.system.entry.js → p-1032c0db.system.entry.js} +1 -1
  172. package/dist/ripple/{p-aee33406.system.entry.js → p-13152ac1.system.entry.js} +1 -1
  173. package/dist/ripple/p-1318ae67.entry.js +1 -0
  174. package/dist/ripple/{p-6ec064ab.system.entry.js → p-137bf0c0.system.entry.js} +1 -1
  175. package/dist/ripple/{p-9a121a9f.entry.js → p-13bb6faf.entry.js} +1 -1
  176. package/dist/ripple/{p-a0f67c24.entry.js → p-16ff8110.entry.js} +1 -1
  177. package/dist/ripple/{p-1cf4994d.system.entry.js → p-1825d519.system.entry.js} +1 -1
  178. package/dist/ripple/{p-587c8c0b.entry.js → p-18417851.entry.js} +1 -1
  179. package/dist/ripple/p-1c655f6b.entry.js +1 -0
  180. package/dist/ripple/{p-3b335c30.system.entry.js → p-1ce77857.system.entry.js} +1 -1
  181. package/dist/ripple/{p-d8500a20.entry.js → p-1d76061a.entry.js} +1 -1
  182. package/dist/ripple/{p-6689ae84.system.entry.js → p-22b57f73.system.entry.js} +1 -1
  183. package/dist/ripple/{p-d4136c40.system.entry.js → p-24dfbf1d.system.entry.js} +1 -1
  184. package/dist/ripple/{p-2524203b.system.entry.js → p-28996d67.system.entry.js} +1 -1
  185. package/dist/ripple/{p-2e87a994.system.entry.js → p-30118d12.system.entry.js} +1 -1
  186. package/dist/ripple/{p-357b24b6.entry.js → p-32f3581a.entry.js} +1 -1
  187. package/dist/ripple/p-334d8711.system.js +1 -0
  188. package/dist/ripple/{p-640d450d.js → p-3c8c5933.js} +1 -1
  189. package/dist/ripple/{p-76646853.system.entry.js → p-436bf381.system.entry.js} +1 -1
  190. package/dist/ripple/{p-3fde7b17.system.entry.js → p-43843597.system.entry.js} +1 -1
  191. package/dist/ripple/{p-81eafe68.entry.js → p-48b596ae.entry.js} +1 -1
  192. package/dist/ripple/{p-c3710308.system.js → p-4bab5360.system.js} +1 -1
  193. package/dist/ripple/{p-bbaa0295.entry.js → p-4ff0db4d.entry.js} +1 -1
  194. package/dist/ripple/{p-c071456c.system.entry.js → p-57f1bafd.system.entry.js} +1 -1
  195. package/dist/ripple/{p-01055d26.entry.js → p-5b0e9165.entry.js} +1 -1
  196. package/dist/ripple/p-600b72ad.system.js +1 -0
  197. package/dist/ripple/{p-1a78f028.system.entry.js → p-6266fcbf.system.entry.js} +1 -1
  198. package/dist/ripple/{p-13730e2a.system.entry.js → p-646e22d3.system.entry.js} +1 -1
  199. package/dist/ripple/{p-7c5c3ec3.system.entry.js → p-6d2af8d9.system.entry.js} +1 -1
  200. package/dist/ripple/{p-ff2bf89a.system.entry.js → p-6d46f775.system.entry.js} +1 -1
  201. package/dist/ripple/{p-ca839c73.entry.js → p-6de0efee.entry.js} +1 -1
  202. package/dist/ripple/{p-2054d617.entry.js → p-7833db63.entry.js} +1 -1
  203. package/dist/ripple/p-7b7c32af.entry.js +1 -0
  204. package/dist/ripple/{p-ba6c13c7.entry.js → p-817aa29c.entry.js} +1 -1
  205. package/dist/ripple/{p-63c804c2.entry.js → p-82c9bd47.entry.js} +1 -1
  206. package/dist/ripple/{p-5bf97600.entry.js → p-8480138d.entry.js} +1 -1
  207. package/dist/ripple/{p-23750a8d.entry.js → p-85ef702d.entry.js} +1 -1
  208. package/dist/ripple/{p-e559b093.system.entry.js → p-86bcd942.system.entry.js} +1 -1
  209. package/dist/ripple/{p-f52ff657.entry.js → p-8799bce9.entry.js} +1 -1
  210. package/dist/ripple/{p-037e3c7a.entry.js → p-8dcc8c0c.entry.js} +1 -1
  211. package/dist/ripple/{p-8647ef67.entry.js → p-8fa572a8.entry.js} +1 -1
  212. package/dist/ripple/{p-18761ad7.js → p-904545cc.js} +1 -1
  213. package/dist/ripple/{p-57b566af.system.entry.js → p-90cb5d27.system.entry.js} +1 -1
  214. package/dist/ripple/p-9202ef69.system.entry.js +1 -0
  215. package/dist/ripple/{p-26b5b04e.system.entry.js → p-9f971522.system.entry.js} +1 -1
  216. package/dist/ripple/p-a235bc17.js +1 -0
  217. package/dist/ripple/{p-7851b16f.system.entry.js → p-a5dc49c1.system.entry.js} +1 -1
  218. package/dist/ripple/{p-fc9b09ba.system.entry.js → p-a73fb160.system.entry.js} +1 -1
  219. package/dist/ripple/{p-dcff6224.system.entry.js → p-a9580e7a.system.entry.js} +1 -1
  220. package/dist/ripple/p-b04a6351.entry.js +1 -0
  221. package/dist/ripple/{p-2fdaacf5.entry.js → p-b09998e1.entry.js} +1 -1
  222. package/dist/ripple/{p-c90dea3b.system.entry.js → p-b3a86ec4.system.entry.js} +1 -1
  223. package/dist/ripple/p-b501f06c.entry.js +1 -0
  224. package/dist/ripple/{p-1d528e60.entry.js → p-b957033b.entry.js} +1 -1
  225. package/dist/ripple/{p-f2f896b2.system.entry.js → p-ca3abcc0.system.entry.js} +1 -1
  226. package/dist/ripple/{p-a8b2b639.system.entry.js → p-cc455a6c.system.entry.js} +1 -1
  227. package/dist/ripple/{p-952f0628.entry.js → p-cdf9c0e9.entry.js} +1 -1
  228. package/dist/ripple/{p-81674b46.js → p-d4ae193e.js} +1 -1
  229. package/dist/ripple/{p-3a481357.system.js → p-d4d769a7.system.js} +1 -1
  230. package/dist/ripple/{p-eff5e623.system.entry.js → p-d6a9000f.system.entry.js} +1 -1
  231. package/dist/ripple/{p-6cdb2b26.entry.js → p-d6cd9f79.entry.js} +1 -1
  232. package/dist/ripple/{p-bfd74710.entry.js → p-d9e4335e.entry.js} +1 -1
  233. package/dist/ripple/{p-ef4e30c2.entry.js → p-dadf3ed3.entry.js} +1 -1
  234. package/dist/ripple/p-dc3684b5.entry.js +1 -0
  235. package/dist/ripple/{p-ae3aa9a6.entry.js → p-dca94e24.entry.js} +1 -1
  236. package/dist/ripple/{p-30ffd48a.system.entry.js → p-dcd6acc5.system.entry.js} +1 -1
  237. package/dist/ripple/{p-a0841eee.entry.js → p-dd81e308.entry.js} +1 -1
  238. package/dist/ripple/{p-e1ff0d63.system.entry.js → p-e11d9b06.system.entry.js} +1 -1
  239. package/dist/ripple/{p-7dc387b5.system.entry.js → p-e36e71dc.system.entry.js} +1 -1
  240. package/dist/ripple/{p-8634b2e1.entry.js → p-e6a81600.entry.js} +1 -1
  241. package/dist/ripple/{p-3b93eed7.system.entry.js → p-ef7d84da.system.entry.js} +1 -1
  242. package/dist/ripple/{p-118888bb.entry.js → p-f1de3153.entry.js} +1 -1
  243. package/dist/ripple/p-f3e84476.system.entry.js +1 -0
  244. package/dist/ripple/{p-3cd9160c.system.entry.js → p-f4d27fea.system.entry.js} +1 -1
  245. package/dist/ripple/p-fb062f04.system.js +1 -0
  246. package/dist/ripple/{p-1c08e803.system.entry.js → p-fcf4bd61.system.entry.js} +1 -1
  247. package/dist/ripple/{p-5af87cce.entry.js → p-fd02c124.entry.js} +1 -1
  248. package/dist/ripple/{p-097c7a49.entry.js → p-ffa20853.entry.js} +1 -1
  249. package/dist/ripple/ripple.esm.js +1 -1
  250. package/dist/ripple/ripple.js +1 -1
  251. package/dist/types/components/datepickers/wm-date-range.d.ts +13 -13
  252. package/dist/types/components/datepickers/wm-datepicker.d.ts +13 -12
  253. package/dist/types/global/functions.d.ts +0 -1
  254. package/package.json +2 -2
  255. package/dist/esm-es5/app-globals-b5a717cb.js +0 -1
  256. package/dist/ripple/p-001b65cb.system.js +0 -1
  257. package/dist/ripple/p-06ccdc10.entry.js +0 -1
  258. package/dist/ripple/p-0d882420.system.js +0 -1
  259. package/dist/ripple/p-0f86a48a.entry.js +0 -1
  260. package/dist/ripple/p-282564c9.entry.js +0 -1
  261. package/dist/ripple/p-5e285786.entry.js +0 -1
  262. package/dist/ripple/p-61d8d940.system.entry.js +0 -1
  263. package/dist/ripple/p-637bcbd6.system.js +0 -1
  264. package/dist/ripple/p-6b725bc9.entry.js +0 -1
  265. package/dist/ripple/p-8cf004ef.entry.js +0 -1
  266. package/dist/ripple/p-99baa733.system.entry.js +0 -1
  267. package/dist/ripple/p-9bd3eb06.js +0 -1
@@ -1,11 +1,16 @@
1
1
  import { h, Host, Fragment, } from "@stencil/core";
2
- import { intl, dateFind, toBool, handleDisabledAttribute, getContextMeasurements, findParentWithHiddenOverflow, dateToISO, shouldOpenUp, calendar_months, } from "../../global/functions";
2
+ import { intl, dateFind, toBool, handleDisabledAttribute, dateToISO, calendar_months, findAllScrollableParents, } from "../../global/functions";
3
3
  export class DateRange {
4
4
  constructor() {
5
- this.openUp = false;
6
5
  this.calWidth = 681; // 673 + 8px of room
7
- this.popupClicked = false;
8
- this.toggleButtonClicked = false;
6
+ this.hasAnchor = CSS.supports("top", "anchor(bottom)");
7
+ this.popupMinHeight = 337; // priv-calendar.scss line 98
8
+ this.checkCanOpen = () => {
9
+ if (!this.anchorEl)
10
+ return;
11
+ const fit = this.measureFit();
12
+ this.canOpen = fit.vertical !== "none" && fit.horizontal !== "none";
13
+ };
9
14
  this.formats = { "mm/dd/yyyy": "US", "dd/mm/yyyy": "INT", "yyyy/mm/dd": "ISO" };
10
15
  this.dateFormat = "mm/dd/yyyy";
11
16
  this.disabled = false;
@@ -18,8 +23,35 @@ export class DateRange {
18
23
  this.requiredField = false;
19
24
  this.valueStart = "";
20
25
  this.valueEnd = "";
21
- this.availSpace = 0;
22
26
  this.isExpanded = false;
27
+ this.openUp = false;
28
+ this.openRight = false;
29
+ this.isHidden = false;
30
+ this.canOpen = true;
31
+ }
32
+ measureFit() {
33
+ const rect = this.anchorEl.getBoundingClientRect();
34
+ const vw = document.documentElement.clientWidth;
35
+ const vh = document.documentElement.clientHeight;
36
+ if (!vw || !vh) {
37
+ return { vertical: "below", horizontal: "left" };
38
+ }
39
+ const spaceBelow = vh - rect.bottom;
40
+ const spaceAbove = rect.top;
41
+ const fitsBelow = spaceBelow >= this.popupMinHeight;
42
+ const fitsAbove = spaceAbove >= this.popupMinHeight;
43
+ const canScroll = findAllScrollableParents(this.el).length > 0;
44
+ const fitsLeftAligned = rect.left + this.calWidth <= vw;
45
+ const fitsRightAligned = rect.right - this.calWidth >= 0;
46
+ const vertical = fitsBelow
47
+ ? "below"
48
+ : fitsAbove
49
+ ? "above"
50
+ : canScroll
51
+ ? "below-scroll"
52
+ : "none";
53
+ const horizontal = fitsLeftAligned ? "left" : fitsRightAligned ? "right" : "none";
54
+ return { vertical, horizontal };
23
55
  }
24
56
  get _disabled() {
25
57
  // string "false" needs to be treated as bool False because react wrappers convert bool to string.
@@ -105,81 +137,113 @@ export class DateRange {
105
137
  setTimeout(() => this.announce(this.errorMessage), 100);
106
138
  }
107
139
  }
108
- togglePopup() {
109
- this.isExpanded ? this.closePopup() : this.openPopup();
110
- this.toggleButtonClicked = true;
111
- }
112
- closePopup(returnFocus = false) {
113
- // reset
114
- // clearing these in case the user closes without finishing the process
115
- this.date1 = undefined;
116
- this.date2 = undefined;
117
- this.startCalEl.startDate = undefined;
118
- this.startCalEl.endDate = undefined;
119
- this.startCalEl.hoverDate = undefined;
120
- this.endCalEl.startDate = undefined;
121
- this.endCalEl.endDate = undefined;
122
- this.endCalEl.hoverDate = undefined;
123
- this.isExpanded = false;
124
- this.startCalEl.view = "day";
125
- this.endCalEl.view = "day";
126
- this.popupEl.classList.remove("open");
127
- window.setTimeout(() => {
128
- //not using display none in order to get measurements of the popup while hidden
129
- this.popupEl.style.visibility = "hidden";
130
- }, 250);
131
- //Reset values so that menu reopens to day view with selected date in focus
132
- if (returnFocus) {
133
- this.toggleEl.focus();
140
+ positionDropdown() {
141
+ // polyfill for browsers without anchor() support (older Firefox)
142
+ const rect = this.anchorEl.getBoundingClientRect();
143
+ const spaceAbove = rect.top;
144
+ const spaceBelow = document.documentElement.clientHeight - rect.bottom;
145
+ const popupHeight = this.popupEl.clientHeight;
146
+ const popupWidth = this.popupEl.clientWidth || this.calWidth;
147
+ const viewportWidth = document.documentElement.clientWidth;
148
+ this.el.style.removeProperty("--popup-translate-y");
149
+ this.el.style.removeProperty("--popup-max-height");
150
+ this.el.style.removeProperty("--popup-left");
151
+ // HORIZONTAL: prefer left-anchored to toggle; fall back to right-anchored.
152
+ // canOpen guarantees at least one side fits, so no centered fallback.
153
+ if (popupWidth <= viewportWidth - rect.left) {
154
+ this.el.style.setProperty("--popup-left", rect.left + "px");
134
155
  }
135
- }
136
- openPopup() {
137
- // display stuff
138
- this.openUp = shouldOpenUp(this.el, this.popupEl.clientHeight, this.labelEl.clientHeight);
139
- const { spaceLeft, spaceRight } = getContextMeasurements(this.el);
140
- if (spaceRight >= this.calWidth - this.el.clientWidth) {
141
- this.popupEl.style.left = "0";
142
- this.popupEl.style.right = "auto";
156
+ else {
157
+ this.el.style.setProperty("--popup-left", rect.right - popupWidth + "px");
143
158
  }
144
- else if (spaceLeft >= this.calWidth - this.el.clientWidth) {
145
- this.popupEl.style.right = "0";
146
- this.popupEl.style.left = "auto";
159
+ // VERTICAL
160
+ const gap = 2;
161
+ if (popupHeight + gap <= spaceBelow) {
162
+ this.el.style.setProperty("--popup-translate-y", rect.bottom + gap + "px");
163
+ }
164
+ else if (popupHeight + gap <= spaceAbove) {
165
+ this.el.style.setProperty("--popup-translate-y", rect.top - popupHeight - gap + "px");
166
+ }
167
+ else if (spaceBelow >= spaceAbove) {
168
+ this.el.style.setProperty("--popup-translate-y", rect.bottom + gap + "px");
169
+ this.el.style.setProperty("--popup-max-height", spaceBelow - gap + "px");
147
170
  }
148
171
  else {
149
- const offset = (this.availSpace - this.calWidth) / 2 - spaceLeft;
150
- this.popupEl.style.left = `${offset}px`;
151
- this.popupEl.style.right = "auto";
152
- }
153
- this.popupEl.style.visibility = "visible";
154
- window.requestAnimationFrame(() => {
155
- this.popupEl.classList.add("open");
156
- });
157
- this.isExpanded = true;
158
- // state stuff
159
- this.startCalEl.focusDate = this.focusDates[0];
160
- this.endCalEl.focusDate = this.focusDates[1];
161
- this.startCalEl.focusCell();
162
- if (this.valueStart) {
163
- const startISO = this.toISO(this.valueStart);
164
- if (this._isValidISO(startISO)) {
165
- this.startCalEl.startDate = startISO;
172
+ this.el.style.setProperty("--popup-translate-y", "0px");
173
+ this.el.style.setProperty("--popup-max-height", spaceAbove - gap + "px");
174
+ }
175
+ this.isHidden = false;
176
+ }
177
+ handleToggle(ev) {
178
+ if (ev.newState === "open") {
179
+ if (!this.hasAnchor) {
180
+ this.positionDropdown();
166
181
  }
167
- if (this.valueEnd) {
168
- const endISO = this.toISO(this.valueEnd);
169
- if (this._isValidISO(endISO)) {
170
- if (this.isSameMonth(startISO, endISO)) {
171
- this.startCalEl.endDate = endISO;
182
+ requestAnimationFrame(() => {
183
+ if (this.hasAnchor) {
184
+ const fit = this.measureFit();
185
+ this.openUp = fit.vertical === "above";
186
+ this.openRight = fit.horizontal === "right";
187
+ if (fit.vertical === "below-scroll") {
188
+ // scroll needs to reveal the popup — pop it out of top-layer fixed
189
+ // positioning so the ancestor scroll container governs visibility.
190
+ this.popupEl.style.position = "absolute";
191
+ }
192
+ }
193
+ this.isExpanded = true;
194
+ // state stuff
195
+ this.startCalEl.focusDate = this.focusDates[0];
196
+ this.endCalEl.focusDate = this.focusDates[1];
197
+ this.startCalEl.focusCell();
198
+ if (this.valueStart) {
199
+ const startISO = this.toISO(this.valueStart);
200
+ if (this._isValidISO(startISO)) {
201
+ this.startCalEl.startDate = startISO;
172
202
  }
173
- else {
174
- this.endCalEl.endDate = endISO;
203
+ if (this.valueEnd) {
204
+ const endISO = this.toISO(this.valueEnd);
205
+ if (this._isValidISO(endISO)) {
206
+ if (this.isSameMonth(startISO, endISO)) {
207
+ this.startCalEl.endDate = endISO;
208
+ }
209
+ else {
210
+ this.endCalEl.endDate = endISO;
211
+ }
212
+ }
175
213
  }
176
214
  }
215
+ window.setTimeout(() => {
216
+ this.startCalEl.scrollIntoView({ behavior: "smooth", block: "nearest" });
217
+ }, 250);
218
+ });
219
+ }
220
+ else {
221
+ this.popupEl.style.position = "";
222
+ // reset
223
+ // clearing these in case the user closes without finishing the process
224
+ this.date1 = undefined;
225
+ this.date2 = undefined;
226
+ this.startCalEl.startDate = undefined;
227
+ this.startCalEl.endDate = undefined;
228
+ this.startCalEl.hoverDate = undefined;
229
+ this.endCalEl.startDate = undefined;
230
+ this.endCalEl.endDate = undefined;
231
+ this.endCalEl.hoverDate = undefined;
232
+ this.startCalEl.view = "day";
233
+ this.endCalEl.view = "day";
234
+ this.isExpanded = false;
235
+ if (!this.hasAnchor) {
236
+ this.isHidden = true;
177
237
  }
178
238
  }
179
- window.setTimeout(() => {
180
- // ensure focused element is visible if popup opens below the fold
181
- this.startCalEl.scrollIntoView({ behavior: "smooth", block: "nearest" });
182
- }, 250);
239
+ }
240
+ closePopup(returnFocus = false) {
241
+ this.popupEl.hidePopover();
242
+ if (returnFocus) {
243
+ window.setTimeout(() => {
244
+ this.toggleEl.focus();
245
+ }, 50);
246
+ }
183
247
  }
184
248
  handleFocus() {
185
249
  this.wrapperEl.classList.add("focus");
@@ -201,28 +265,6 @@ export class DateRange {
201
265
  // keep component's value in sync with input's value
202
266
  this.valueEnd = ev.target.value;
203
267
  }
204
- handleKey(ev) {
205
- switch (ev.key) {
206
- case "Escape":
207
- ev.preventDefault();
208
- ev.stopPropagation(); // prevents closing of parent modal
209
- this.closePopup(true);
210
- break;
211
- }
212
- }
213
- blurHandler() {
214
- if (!this.popupClicked && !this.toggleButtonClicked && this.isExpanded) {
215
- this.closePopup();
216
- }
217
- this.popupClicked = false;
218
- this.toggleButtonClicked = false;
219
- }
220
- // for cases where the user clicks or uses a shortcut to leave the document
221
- handleBlurOnWindow() {
222
- if (this.isExpanded) {
223
- this.closePopup();
224
- }
225
- }
226
268
  handleDateFocus(ev) {
227
269
  const cal = ev.target;
228
270
  const newFocusVal = cal.focusDate;
@@ -414,53 +456,49 @@ export class DateRange {
414
456
  return day > 0 && day <= monthLength[month - 1];
415
457
  }
416
458
  }
417
- setAvailSpace() {
418
- this.availSpace = (this.hiddenOverflowParent || document.body).clientWidth;
419
- }
420
459
  componentWillLoad() {
421
460
  if (this.labelStart === "" || this.labelEnd === "") {
422
461
  console.error("For accessibility reasons you must specify labels for the date range inputs.");
423
462
  }
424
463
  handleDisabledAttribute(this.el, this._disabled);
425
- this.hiddenOverflowParent = findParentWithHiddenOverflow(this.el);
426
- if (this.hiddenOverflowParent) {
427
- const resizeObserver = new ResizeObserver(() => {
428
- this.availSpace = this.hiddenOverflowParent.clientWidth;
429
- });
430
- resizeObserver.observe(this.hiddenOverflowParent);
464
+ if (!this.hasAnchor) {
465
+ this.isHidden = true;
431
466
  }
432
- this.setAvailSpace();
467
+ }
468
+ componentDidLoad() {
469
+ this.checkCanOpen();
470
+ window.addEventListener("resize", this.checkCanOpen);
471
+ }
472
+ disconnectedCallback() {
473
+ window.removeEventListener("resize", this.checkCanOpen);
433
474
  }
434
475
  announce(message) {
435
- // \u00A0 is a non-breaking space character, which causes the message to be read as a new one
476
+ //   is a non-breaking space character, which causes the message to be read as a new one
436
477
  if (this.liveRegionEl.textContent === message) {
437
- message += "\u00A0";
478
+ message += " ";
438
479
  }
439
480
  this.liveRegionEl.textContent = message;
440
481
  }
441
- renderCalendars() {
442
- if (this.calWidth <= this.availSpace) {
443
- return (h(Fragment, null, h("div", { class: `popup-wrapper ${this.startCalEl && this.startCalEl.view}-view ${this.openUp ? "expand-upwards" : ""}`, id: "popup-wrapper", ref: (el) => (this.popupEl = el), onClick: () => (this.popupClicked = true), style: { display: "flex" } }, h("div", { class: "trapfocus", tabIndex: this.isExpanded ? 0 : undefined, onFocus: () => this.endCalEl.focusLastFocusable() }), h("priv-calendar", { ref: (el) => (this.startCalEl = el), onClick: () => (this.popupClicked = true), onDateFocus: (ev) => this.handleDateFocus(ev) }), h("priv-calendar", { ref: (el) => (this.endCalEl = el), onClick: () => (this.popupClicked = true), onDateFocus: (ev) => this.handleDateFocus(ev) }), h("div", { class: "trapfocus", tabIndex: this.isExpanded ? 0 : undefined, onFocus: () => this.startCalEl.focusFirstFocusable() }))));
444
- }
445
- }
446
482
  render() {
447
- return (h(Host, { key: '95f4255b9be9bd130c05f4e241b380d4a4cb9b44', "aria-busy": "false" }, h("div", { key: '9ed1bc4d380d455707c98606270e5a0f4a670e5d', ref: (d) => (this.wrapperEl = d), class: "wrapper" }, h("div", { key: 'dd09c0a37c2a407eb778b5980c80d52dd20eec44', class: `range-wrapper ${this.calWidth <= this.availSpace ? "cal" : ""}` }, h("div", { key: 'eef3eaf5c5fae38e6a0c21b98c7843c9a903ccb4', class: "label-wrapper", id: "start-label-wrapper" }, h("label", { key: '16d95b47d81fe1697dddb3238873ba02fc798663', ref: (e) => (this.labelEl = e), id: "startlabel", htmlFor: "start-date-input", class: "label", title: `${this.labelStart} (${this.dateFormat})` }, this.labelStart, this.requiredField && (h("span", { key: 'd4aae726f63159c834fc7c0c17f0db8b10aef7cb', "aria-hidden": "true", class: "required" }, "*")))), h("div", { key: '0dc110a5841021f3203bc27d717296b55b422767', class: "label-wrapper", id: "end-label-wrapper" }, h("label", { key: '277cb7bfe05c035f532997367b38c1ff8caeb84b', id: "endlabel", htmlFor: "end-date-input", class: "label", title: `${this.labelEnd} (${this.dateFormat})` }, this.labelEnd, this.requiredField && (h("span", { key: '065afd4b9eef9ad45033e1dcf23edb6604ba6546', "aria-hidden": "true", class: "required" }, "*")))), h("input", { key: '29b472c873710bb49a81c4099100beda79e4b7dd', disabled: this._disabled, type: "text", id: "start-date-input", class: `date-input input ${this.invalidStart ? "invalid" : ""}`, name: "start-date", placeholder: this.dateFormat, value: this.valueStart, onFocus: () => this.handleFocus(), onInput: (ev) => this.handleStartInput(ev), onBlur: () => this.handleStartInputBlur(), ref: (input) => (this.startInputEl = input), "aria-describedby": "error", "aria-label": this.labelStart, "aria-required": this.requiredField ? "true" : null }), h("div", { key: '9a5dae1752b601d3d65853396120e45f0180b0f0', id: "hyphen" }, "\u00A0-\u00A0"), h("input", { key: '94a2426dd44cd42d84adeab1f4b742f7c697c66b', disabled: this._disabled, type: "text", id: "end-date-input", class: `date-input input ${this.invalidEnd ? "invalid" : ""}`, name: "end-date", placeholder: this.dateFormat, value: this.valueEnd, onFocus: () => this.handleFocus(), onInput: (ev) => this.handleEndInput(ev), onBlur: () => this.handleEndInputBlur(), ref: (input) => (this.endInputEl = input), "aria-describedby": "error", "aria-label": this.labelEnd, "aria-required": this.requiredField ? "true" : null }), h("div", { key: '816312155ba2e47c2d8dd55cf4ef17fc0f2ee748', class: "toggle-wrapper", id: "toggle-wrapper" }, this.calWidth <= this.availSpace && (h("button", { key: '392405ee15ec1e90e81e0d4605830affb75191c0', disabled: this.disabled, onClick: this.togglePopup.bind(this), "aria-describedby": "start-date-input end-date-input", "aria-label": intl.formatMessage({
483
+ return (h(Host, { key: 'aecfac8c414b8d1bbbd838533528340849a0ac5d', "aria-busy": "false" }, h("div", { key: 'c3af3f58c12588b89e5b9603c9f87321be2334f0', ref: (d) => (this.wrapperEl = d), class: "wrapper" }, h("div", { key: '27f3233e888e5b739e7cc472f63580c587c4349d', class: "range-wrapper cal", ref: (el) => (this.anchorEl = el) }, h("div", { key: 'd164c3a6823329f865d6090434664215f236e070', class: "label-wrapper", id: "start-label-wrapper" }, h("label", { key: '5cf5e618b8f8c5a81deee238a521c63c658fbd4f', id: "startlabel", htmlFor: "start-date-input", class: "label", title: `${this.labelStart} (${this.dateFormat})` }, this.labelStart, this.requiredField && (h("span", { key: 'a3732e60026edd602621eaa4705fa868a30f901f', "aria-hidden": "true", class: "required" }, "*")))), h("div", { key: '820b21ca6bace322433123dd13027b34e13fd0e5', class: "label-wrapper", id: "end-label-wrapper" }, h("label", { key: '6e14406ddf6598acdca64cd38b60d9c5dabf97d6', id: "endlabel", htmlFor: "end-date-input", class: "label", title: `${this.labelEnd} (${this.dateFormat})` }, this.labelEnd, this.requiredField && (h("span", { key: '0abc28f57716418c05ab9075102d051650b91473', "aria-hidden": "true", class: "required" }, "*")))), h("input", { key: '06fde2b651ba335a2668154b6e53361b754d4c4c', disabled: this._disabled, type: "text", id: "start-date-input", class: `date-input input ${this.invalidStart ? "invalid" : ""}`, name: "start-date", placeholder: this.dateFormat, value: this.valueStart, onFocus: () => this.handleFocus(), onInput: (ev) => this.handleStartInput(ev), onBlur: () => this.handleStartInputBlur(), ref: (input) => (this.startInputEl = input), "aria-describedby": "error", "aria-label": this.labelStart, "aria-required": this.requiredField ? "true" : null }), h("div", { key: '2206facb04c01fd5e7fdcc2e3611b5cc10a2c15b', id: "hyphen" }, "\u00A0-\u00A0"), h("input", { key: '4384554613369f69128fde753ee17c2d2838580a', disabled: this._disabled, type: "text", id: "end-date-input", class: `date-input input ${this.invalidEnd ? "invalid" : ""}`, name: "end-date", placeholder: this.dateFormat, value: this.valueEnd, onFocus: () => this.handleFocus(), onInput: (ev) => this.handleEndInput(ev), onBlur: () => this.handleEndInputBlur(), ref: (input) => (this.endInputEl = input), "aria-describedby": "error", "aria-label": this.labelEnd, "aria-required": this.requiredField ? "true" : null }), h("div", { key: 'a60f8847a43bc7700d704a1625a6b02a03c2f1a3', class: "toggle-wrapper", id: "toggle-wrapper" }, this.canOpen && (h("button", { key: '1d61e36d2520d152b6d254ca7ec3338cd72f9193', disabled: this.disabled, "aria-describedby": "start-date-input end-date-input", "aria-label": intl.formatMessage({
448
484
  id: "date.selectRange",
449
485
  defaultMessage: "Select range",
450
486
  description: "Button text for screen readers.",
451
- }), ref: (el) => (this.toggleEl = el), "aria-expanded": `${this.isExpanded}`, class: "toggle", id: "toggle" }, h("span", { key: 'fef84bbd99f603855cef63ab364fad7b6a2d48f3', class: "svg-icon svg-date" }), h("span", { key: 'b89e01d5e45719882c94cca69181223d648c3773', class: "calendar", title: intl.formatMessage({
487
+ }), ref: (el) => (this.toggleEl = el), "aria-expanded": `${this.isExpanded}`, class: "toggle", id: "toggle", popoverTarget: "popup-wrapper", popoverTargetAction: "toggle" }, h("span", { key: '29482eddeb4b338d2a7fd8bc7a21a4327bf21795', class: "svg-icon svg-date" }), h("span", { key: '46a95d82191d34e338dc13795498bf495d5ee93f', class: "calendar", title: intl.formatMessage({
452
488
  id: "date.calendarView",
453
489
  defaultMessage: "Calendar View",
454
490
  description: "Calendar button",
455
- }) })))), this.renderCalendars()), h("div", { key: '12eea03f3f2b0716964e75c41d6792f88a5725a9' }, h("div", { key: 'bdc2b309fe429d246051b4ad0ec15b1aff688937', id: "live-region", "aria-live": "polite", "aria-relevant": "text", class: "sr-only" }), h("div", { key: '82fc51da8d50568d9905bbab6bce1b5a6f197568', id: "month-title", class: "sr-only" }, intl.formatMessage({
491
+ }) })))), h(Fragment, { key: '4db30c60962943752b387904130539ac5e945e3a' }, h("div", { key: '7f22b44e86c5fd32a1bd3c44c76a3701cbd0f3bc', class: `popup-wrapper popup-range ${this.startCalEl && this.startCalEl.view}-view ${this.isExpanded ? "is-open" : ""} ${this.isHidden ? "hidden" : ""} ${this.openUp ? "open-up" : ""} ${this.openRight ? "open-right" : ""}`, id: "popup-wrapper", ref: (el) => (this.popupEl = el), popover: "auto",
492
+ // @ts-ignore -- onToggle is a valid ToggleEvent listener for popover elements
493
+ onToggle: (ev) => this.handleToggle(ev) }, h("div", { key: 'f09baf0ab4a88545d9adc67a323b2d649f2e139b', class: "trapfocus", tabIndex: this.isExpanded ? 0 : undefined, onFocus: () => this.endCalEl.focusLastFocusable() }), h("priv-calendar", { key: '6c7cf777bfd87a4af0b5faed4ea4f5addf375297', ref: (el) => (this.startCalEl = el), onDateFocus: (ev) => this.handleDateFocus(ev) }), h("priv-calendar", { key: '7026c2d673ab5bb0d31894d776e5e83fed9f9f8a', ref: (el) => (this.endCalEl = el), onDateFocus: (ev) => this.handleDateFocus(ev) }), h("div", { key: '30061d1dc94168d46d36ff8a095633ff88f88f00', class: "trapfocus", tabIndex: this.isExpanded ? 0 : undefined, onFocus: () => this.startCalEl.focusFirstFocusable() })))), h("div", { key: 'd6f98c38fc291451fd5061f181f9e6c850b09e63' }, h("div", { key: '3a17ce8f89771290a5297462b6b7cd0c45779351', id: "live-region", "aria-live": "polite", "aria-relevant": "text", class: "sr-only" }), h("div", { key: '29b7c8496de61e8fe43a1b922457fa0469510dcf', id: "month-title", class: "sr-only" }, intl.formatMessage({
456
494
  id: "date.selectMonth",
457
495
  defaultMessage: "Activate to select a month.",
458
496
  description: "Calendar button",
459
- })), h("div", { key: '922cd42837fc05f39912bfa9d96d98306f4c90e1', id: "year-title", class: "sr-only" }, intl.formatMessage({
497
+ })), h("div", { key: '744c3c9cc424739e307d27f6f28b662869ed1df0', id: "year-title", class: "sr-only" }, intl.formatMessage({
460
498
  id: "date.selectYear",
461
499
  defaultMessage: "Activate to select a year.",
462
500
  description: "Calendar button",
463
- }))), h("div", { key: '3e887578975e3a744a0199f49eaa2ae88682b5b2', id: "error", class: "error" }, this.errorMessage), h("div", { key: '7b1e43bb5666392e721ea401fffb897b31544f91', ref: (el) => (this.liveRegionEl = el), class: "sr-only", "aria-live": "polite", "aria-atomic": "true" }))));
501
+ }))), h("div", { key: '07a43c7736f6cc20dc9f081e5c5a47e5818da661', id: "error", class: "error" }, this.errorMessage), h("div", { key: '1b25c022a67d1e3e7f7eff7088d544aa6e9f31ea', ref: (el) => (this.liveRegionEl = el), class: "sr-only", "aria-live": "polite", "aria-atomic": "true" }))));
464
502
  }
465
503
  static get is() { return "wm-date-range"; }
466
504
  static get encapsulation() { return "shadow"; }
@@ -677,8 +715,11 @@ export class DateRange {
677
715
  }
678
716
  static get states() {
679
717
  return {
680
- "availSpace": {},
681
- "isExpanded": {}
718
+ "isExpanded": {},
719
+ "openUp": {},
720
+ "openRight": {},
721
+ "isHidden": {},
722
+ "canOpen": {}
682
723
  };
683
724
  }
684
725
  static get events() {
@@ -801,24 +842,6 @@ export class DateRange {
801
842
  }
802
843
  static get listeners() {
803
844
  return [{
804
- "name": "keydown",
805
- "method": "handleKey",
806
- "target": undefined,
807
- "capture": false,
808
- "passive": false
809
- }, {
810
- "name": "click",
811
- "method": "blurHandler",
812
- "target": "document",
813
- "capture": false,
814
- "passive": false
815
- }, {
816
- "name": "blur",
817
- "method": "handleBlurOnWindow",
818
- "target": "window",
819
- "capture": false,
820
- "passive": false
821
- }, {
822
845
  "name": "popupBlurred",
823
846
  "method": "handlePopupBlurred",
824
847
  "target": undefined,
@@ -842,12 +865,6 @@ export class DateRange {
842
865
  "target": undefined,
843
866
  "capture": false,
844
867
  "passive": false
845
- }, {
846
- "name": "resize",
847
- "method": "setAvailSpace",
848
- "target": "window",
849
- "capture": false,
850
- "passive": true
851
868
  }];
852
869
  }
853
870
  }