voyager-ionic-core 7.7.2 → 7.7.3

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 (306) hide show
  1. package/components/helpers.js +2 -2
  2. package/components/ion-select.js +3 -3
  3. package/components/label.js +2 -2
  4. package/components/overlays.js +66 -20
  5. package/dist/cjs/{animation-fdab9de5.js → animation-c2840aea.js} +1 -1
  6. package/dist/cjs/{form-controller-7b90d7b7.js → form-controller-c83330c0.js} +1 -1
  7. package/dist/cjs/{framework-delegate-a3e6d060.js → framework-delegate-e0e13baa.js} +1 -1
  8. package/dist/cjs/{helpers-2e1028fa.js → helpers-da4c0ed1.js} +2 -2
  9. package/dist/cjs/{index-a43f7a0f.js → index-4c96691f.js} +2 -2
  10. package/dist/cjs/{index-10da82ce.js → index-62290fec.js} +1 -1
  11. package/dist/cjs/{index-c3580a90.js → index-9bfcb6e8.js} +3 -3
  12. package/dist/cjs/{index-53d162b2.js → index-bef98850.js} +1 -1
  13. package/dist/cjs/index.cjs.js +8 -8
  14. package/dist/cjs/{input-shims-6f804705.js → input-shims-a9a85bb9.js} +2 -2
  15. package/dist/cjs/{input.utils-d693d18a.js → input.utils-d7dca90f.js} +1 -1
  16. package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
  17. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  18. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  19. package/dist/cjs/ion-app_8.cjs.entry.js +8 -8
  20. package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
  21. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
  22. package/dist/cjs/ion-button_2.cjs.entry.js +1 -1
  23. package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
  24. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  25. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  26. package/dist/cjs/ion-datetime_3.cjs.entry.js +4 -4
  27. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  28. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  29. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
  30. package/dist/cjs/ion-input.cjs.entry.js +4 -4
  31. package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
  32. package/dist/cjs/ion-item_8.cjs.entry.js +3 -3
  33. package/dist/cjs/ion-loading.cjs.entry.js +4 -4
  34. package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
  35. package/dist/cjs/ion-modal.cjs.entry.js +6 -6
  36. package/dist/cjs/ion-nav_2.cjs.entry.js +4 -4
  37. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +1 -1
  38. package/dist/cjs/ion-picker-internal.cjs.entry.js +1 -1
  39. package/dist/cjs/ion-popover.cjs.entry.js +5 -5
  40. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  41. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  42. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  43. package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
  44. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  45. package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-searchbar.cjs.entry.js +1 -1
  47. package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
  48. package/dist/cjs/ion-select_3.cjs.entry.js +7 -7
  49. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
  50. package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
  51. package/dist/cjs/ion-textarea.cjs.entry.js +4 -4
  52. package/dist/cjs/ion-toast.cjs.entry.js +4 -4
  53. package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
  54. package/dist/cjs/{ios.transition-c3b11cc3.js → ios.transition-96679580.js} +3 -3
  55. package/dist/cjs/{md.transition-82a8c649.js → md.transition-d6c98822.js} +3 -3
  56. package/dist/cjs/{notch-controller-db0127c4.js → notch-controller-bfbcbb7a.js} +1 -1
  57. package/dist/cjs/{overlays-fb7ca451.js → overlays-db5d96f3.js} +67 -21
  58. package/dist/cjs/{status-tap-692f6d32.js → status-tap-7ad5f0fb.js} +2 -2
  59. package/dist/cjs/{swipe-back-7a848bb8.js → swipe-back-dcd0d4a9.js} +1 -1
  60. package/dist/collection/components/label/label.ios.css +0 -4
  61. package/dist/collection/components/label/label.md.css +0 -4
  62. package/dist/collection/components/label/test/item/item.e2e.js +24 -0
  63. package/dist/collection/components/select/select.js +3 -3
  64. package/dist/collection/utils/helpers.js +1 -1
  65. package/dist/collection/utils/overlays.js +66 -20
  66. package/dist/collection/utils/test/overlays/overlays.e2e.js +89 -0
  67. package/dist/docs.json +1 -1
  68. package/dist/esm/{animation-60dbdd13.js → animation-6a0c5338.js} +1 -1
  69. package/dist/esm/{form-controller-014aa89f.js → form-controller-21dd62b1.js} +1 -1
  70. package/dist/esm/{framework-delegate-fed7fe7c.js → framework-delegate-ed4ba327.js} +1 -1
  71. package/dist/esm/{helpers-c0b9ca37.js → helpers-be245865.js} +2 -2
  72. package/dist/esm/{index-d64f34ea.js → index-020f5464.js} +1 -1
  73. package/dist/esm/{index-0b4beb69.js → index-348ed70a.js} +3 -3
  74. package/dist/esm/{index-47b2066d.js → index-e1b622e3.js} +2 -2
  75. package/dist/esm/{index-eb12ef92.js → index-f3946ac1.js} +1 -1
  76. package/dist/esm/index.js +8 -8
  77. package/dist/esm/{input-shims-b90ca55f.js → input-shims-5329bbe8.js} +2 -2
  78. package/dist/esm/{input.utils-6e9b0046.js → input.utils-a445f677.js} +1 -1
  79. package/dist/esm/ion-accordion_2.entry.js +1 -1
  80. package/dist/esm/ion-action-sheet.entry.js +4 -4
  81. package/dist/esm/ion-alert.entry.js +4 -4
  82. package/dist/esm/ion-app_8.entry.js +8 -8
  83. package/dist/esm/ion-back-button.entry.js +1 -1
  84. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  85. package/dist/esm/ion-button_2.entry.js +1 -1
  86. package/dist/esm/ion-card_5.entry.js +1 -1
  87. package/dist/esm/ion-checkbox.entry.js +2 -2
  88. package/dist/esm/ion-datetime-button.entry.js +1 -1
  89. package/dist/esm/ion-datetime_3.entry.js +4 -4
  90. package/dist/esm/ion-fab_3.entry.js +1 -1
  91. package/dist/esm/ion-img.entry.js +1 -1
  92. package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
  93. package/dist/esm/ion-input.entry.js +4 -4
  94. package/dist/esm/ion-item-option_3.entry.js +2 -2
  95. package/dist/esm/ion-item_8.entry.js +3 -3
  96. package/dist/esm/ion-loading.entry.js +4 -4
  97. package/dist/esm/ion-menu_3.entry.js +5 -5
  98. package/dist/esm/ion-modal.entry.js +6 -6
  99. package/dist/esm/ion-nav_2.entry.js +4 -4
  100. package/dist/esm/ion-picker-column-internal.entry.js +1 -1
  101. package/dist/esm/ion-picker-internal.entry.js +1 -1
  102. package/dist/esm/ion-popover.entry.js +5 -5
  103. package/dist/esm/ion-progress-bar.entry.js +1 -1
  104. package/dist/esm/ion-radio_2.entry.js +2 -2
  105. package/dist/esm/ion-range.entry.js +3 -3
  106. package/dist/esm/ion-refresher_2.entry.js +3 -3
  107. package/dist/esm/ion-reorder_2.entry.js +2 -2
  108. package/dist/esm/ion-route_4.entry.js +1 -1
  109. package/dist/esm/ion-searchbar.entry.js +1 -1
  110. package/dist/esm/ion-segment_2.entry.js +1 -1
  111. package/dist/esm/ion-select_3.entry.js +7 -7
  112. package/dist/esm/ion-tab-bar_2.entry.js +1 -1
  113. package/dist/esm/ion-tab_2.entry.js +2 -2
  114. package/dist/esm/ion-textarea.entry.js +4 -4
  115. package/dist/esm/ion-toast.entry.js +4 -4
  116. package/dist/esm/ion-toggle.entry.js +2 -2
  117. package/dist/esm/{ios.transition-b76c7020.js → ios.transition-7459f819.js} +3 -3
  118. package/dist/esm/{md.transition-564937a7.js → md.transition-b8224313.js} +3 -3
  119. package/dist/esm/{notch-controller-15d281a4.js → notch-controller-6bd3e0f9.js} +1 -1
  120. package/dist/esm/{overlays-04a9a43f.js → overlays-19b26885.js} +67 -21
  121. package/dist/esm/{status-tap-5a95077d.js → status-tap-b41ece3c.js} +2 -2
  122. package/dist/esm/{swipe-back-fa0ec5cd.js → swipe-back-c6d0e5d9.js} +1 -1
  123. package/dist/esm-es5/{animation-60dbdd13.js → animation-6a0c5338.js} +1 -1
  124. package/dist/esm-es5/{form-controller-014aa89f.js → form-controller-21dd62b1.js} +1 -1
  125. package/dist/esm-es5/{framework-delegate-fed7fe7c.js → framework-delegate-ed4ba327.js} +1 -1
  126. package/dist/esm-es5/helpers-be245865.js +4 -0
  127. package/dist/esm-es5/index-020f5464.js +4 -0
  128. package/dist/esm-es5/{index-0b4beb69.js → index-348ed70a.js} +1 -1
  129. package/dist/esm-es5/{index-47b2066d.js → index-e1b622e3.js} +1 -1
  130. package/dist/esm-es5/{index-eb12ef92.js → index-f3946ac1.js} +1 -1
  131. package/dist/esm-es5/index.js +1 -1
  132. package/dist/esm-es5/{input-shims-b90ca55f.js → input-shims-5329bbe8.js} +1 -1
  133. package/dist/esm-es5/{input.utils-6e9b0046.js → input.utils-a445f677.js} +1 -1
  134. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  135. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  136. package/dist/esm-es5/ion-alert.entry.js +1 -1
  137. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  138. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  139. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  140. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  141. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  142. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  143. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  144. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  145. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  146. package/dist/esm-es5/ion-img.entry.js +1 -1
  147. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  148. package/dist/esm-es5/ion-input.entry.js +1 -1
  149. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  150. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  151. package/dist/esm-es5/ion-loading.entry.js +1 -1
  152. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  153. package/dist/esm-es5/ion-modal.entry.js +1 -1
  154. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  155. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  156. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  157. package/dist/esm-es5/ion-popover.entry.js +1 -1
  158. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  159. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  160. package/dist/esm-es5/ion-range.entry.js +1 -1
  161. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  162. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  163. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  164. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  165. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  166. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  167. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  168. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  169. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  170. package/dist/esm-es5/ion-toast.entry.js +1 -1
  171. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  172. package/dist/esm-es5/{ios.transition-b76c7020.js → ios.transition-7459f819.js} +1 -1
  173. package/dist/esm-es5/md.transition-b8224313.js +4 -0
  174. package/dist/esm-es5/{notch-controller-15d281a4.js → notch-controller-6bd3e0f9.js} +1 -1
  175. package/dist/esm-es5/overlays-19b26885.js +4 -0
  176. package/dist/esm-es5/{status-tap-5a95077d.js → status-tap-b41ece3c.js} +1 -1
  177. package/dist/esm-es5/{swipe-back-fa0ec5cd.js → swipe-back-c6d0e5d9.js} +1 -1
  178. package/dist/ionic/index.esm.js +1 -1
  179. package/dist/ionic/ionic.esm.js +1 -1
  180. package/dist/ionic/{p-bd4787eb.entry.js → p-021f9d72.entry.js} +1 -1
  181. package/dist/ionic/{p-f53d074d.system.entry.js → p-02542247.system.entry.js} +1 -1
  182. package/dist/ionic/p-02ad4bbe.js +4 -0
  183. package/dist/ionic/{p-30cd5e7b.js → p-05253db9.js} +1 -1
  184. package/dist/ionic/{p-64db1331.entry.js → p-079da3df.entry.js} +1 -1
  185. package/dist/ionic/p-0b34d3a7.system.js +1 -1
  186. package/dist/ionic/{p-396083cc.entry.js → p-12527c4b.entry.js} +1 -1
  187. package/dist/ionic/{p-2e14c533.system.js → p-125f8cdd.system.js} +1 -1
  188. package/dist/ionic/{p-b253ad7f.js → p-12a8643e.js} +1 -1
  189. package/dist/ionic/{p-c39cc96d.system.entry.js → p-15a40a0b.system.entry.js} +1 -1
  190. package/dist/ionic/p-1846513c.js +4 -0
  191. package/dist/ionic/{p-afd6d696.system.entry.js → p-18918a24.system.entry.js} +1 -1
  192. package/dist/ionic/{p-027f3674.entry.js → p-1a680496.entry.js} +1 -1
  193. package/dist/ionic/{p-b8c685a7.system.js → p-1bc9b5f5.system.js} +1 -1
  194. package/dist/ionic/{p-b0ff8075.entry.js → p-2178329b.entry.js} +1 -1
  195. package/dist/ionic/p-257046d2.system.js +4 -0
  196. package/dist/ionic/{p-5b40d967.entry.js → p-262024fd.entry.js} +1 -1
  197. package/dist/ionic/{p-5928fac9.system.entry.js → p-2765a571.system.entry.js} +1 -1
  198. package/dist/ionic/{p-f0194418.system.entry.js → p-288649db.system.entry.js} +1 -1
  199. package/dist/ionic/{p-94be3ad7.js → p-2c118b1e.js} +1 -1
  200. package/dist/ionic/{p-275705e5.entry.js → p-2c4bfe1c.entry.js} +1 -1
  201. package/dist/ionic/{p-74deb358.system.js → p-2c86025e.system.js} +1 -1
  202. package/dist/ionic/{p-1131946f.system.entry.js → p-2ea71956.system.entry.js} +1 -1
  203. package/dist/ionic/{p-05d560ec.entry.js → p-2fd3c3dd.entry.js} +1 -1
  204. package/dist/ionic/p-36be3332.js +4 -0
  205. package/dist/ionic/{p-3471a7c0.system.entry.js → p-437f4d02.system.entry.js} +1 -1
  206. package/dist/ionic/{p-c858f685.js → p-46bcc2f5.js} +1 -1
  207. package/dist/ionic/{p-508a4c87.entry.js → p-4788693d.entry.js} +1 -1
  208. package/dist/ionic/{p-cd9a7017.system.entry.js → p-479f5926.system.entry.js} +1 -1
  209. package/dist/ionic/{p-2e1f014a.system.entry.js → p-482ea916.system.entry.js} +1 -1
  210. package/dist/ionic/{p-edcada2b.system.entry.js → p-49f481cc.system.entry.js} +1 -1
  211. package/dist/ionic/{p-8794fa00.system.entry.js → p-4b8a620f.system.entry.js} +1 -1
  212. package/dist/ionic/{p-2327064c.entry.js → p-521b3971.entry.js} +1 -1
  213. package/dist/ionic/{p-31c495c2.js → p-56ee6d9a.js} +1 -1
  214. package/dist/ionic/{p-a022b684.system.entry.js → p-5de920f4.system.entry.js} +1 -1
  215. package/dist/ionic/{p-6871553b.system.js → p-62b7320a.system.js} +1 -1
  216. package/dist/ionic/{p-64856c3c.system.entry.js → p-644d03d7.system.entry.js} +1 -1
  217. package/dist/ionic/p-6812d37d.js +4 -0
  218. package/dist/ionic/{p-61ba2137.system.js → p-6afef6c1.system.js} +1 -1
  219. package/dist/ionic/{p-3e9ad72a.system.entry.js → p-6b6ca3f5.system.entry.js} +1 -1
  220. package/dist/ionic/p-6c45c617.js +4 -0
  221. package/dist/ionic/{p-eb07b88f.entry.js → p-6e23d039.entry.js} +1 -1
  222. package/dist/ionic/{p-18beebdf.system.entry.js → p-6f59cdbc.system.entry.js} +1 -1
  223. package/dist/ionic/{p-0457213c.entry.js → p-70fbf4e2.entry.js} +1 -1
  224. package/dist/ionic/{p-fb9f8495.system.entry.js → p-741a0f0d.system.entry.js} +1 -1
  225. package/dist/ionic/{p-601e17b4.entry.js → p-7670acd8.entry.js} +1 -1
  226. package/dist/ionic/{p-e04b9647.system.entry.js → p-76b8bcb8.system.entry.js} +1 -1
  227. package/dist/ionic/{p-a3f572a7.js → p-779aede8.js} +1 -1
  228. package/dist/ionic/{p-3d961d93.entry.js → p-7a615a5a.entry.js} +1 -1
  229. package/dist/ionic/{p-d39ab63d.entry.js → p-7e16220b.entry.js} +1 -1
  230. package/dist/ionic/{p-7b1ed642.system.entry.js → p-7e838f43.system.entry.js} +1 -1
  231. package/dist/ionic/{p-bf05cbc7.entry.js → p-7f30ad48.entry.js} +1 -1
  232. package/dist/ionic/{p-42a9f663.system.entry.js → p-80aed9fb.system.entry.js} +1 -1
  233. package/dist/ionic/{p-5c580e89.entry.js → p-822730c4.entry.js} +1 -1
  234. package/dist/ionic/{p-c11bab7e.entry.js → p-84b85535.entry.js} +1 -1
  235. package/dist/ionic/{p-667e3e2d.entry.js → p-85f66c3c.entry.js} +1 -1
  236. package/dist/ionic/{p-6486e393.system.entry.js → p-860e2539.system.entry.js} +1 -1
  237. package/dist/ionic/{p-a6e465f5.entry.js → p-8cc34120.entry.js} +1 -1
  238. package/dist/ionic/{p-c747f89b.system.entry.js → p-91f4e611.system.entry.js} +1 -1
  239. package/dist/ionic/{p-9393a49f.js → p-942a9358.js} +1 -1
  240. package/dist/ionic/{p-f460c7ae.entry.js → p-96084f36.entry.js} +1 -1
  241. package/dist/ionic/{p-5f169eba.entry.js → p-973b4db3.entry.js} +1 -1
  242. package/dist/ionic/{p-3c6f02cf.system.js → p-97ca0cb9.system.js} +1 -1
  243. package/dist/ionic/{p-5c6a04bd.entry.js → p-98aa0553.entry.js} +1 -1
  244. package/dist/ionic/{p-ea25b4c8.system.entry.js → p-9998cb62.system.entry.js} +1 -1
  245. package/dist/ionic/{p-aaaa615c.system.entry.js → p-9de75bac.system.entry.js} +1 -1
  246. package/dist/ionic/{p-502780e4.entry.js → p-a02ea777.entry.js} +1 -1
  247. package/dist/ionic/{p-c2289cd1.js → p-a1036ce7.js} +1 -1
  248. package/dist/ionic/{p-7ce40e7b.entry.js → p-a1222c24.entry.js} +1 -1
  249. package/dist/ionic/{p-e81bf09e.system.entry.js → p-a4aa6dd2.system.entry.js} +1 -1
  250. package/dist/ionic/{p-49543c9c.system.js → p-a667dd1f.system.js} +1 -1
  251. package/dist/ionic/{p-123b4809.js → p-a6c0a380.js} +1 -1
  252. package/dist/ionic/{p-4fda5c35.entry.js → p-a8459bfb.entry.js} +1 -1
  253. package/dist/ionic/{p-b2595011.system.entry.js → p-ae2b3a7a.system.entry.js} +1 -1
  254. package/dist/ionic/{p-0e23c289.system.entry.js → p-ae828bd9.system.entry.js} +1 -1
  255. package/dist/ionic/{p-cde3ac34.system.entry.js → p-b0aa3806.system.entry.js} +1 -1
  256. package/dist/ionic/{p-a0b28c69.system.entry.js → p-b27bba38.system.entry.js} +1 -1
  257. package/dist/ionic/p-b4d2f43c.system.js +4 -0
  258. package/dist/ionic/{p-91cb3f9a.entry.js → p-b58686e0.entry.js} +1 -1
  259. package/dist/ionic/{p-43a5edee.entry.js → p-b727af6a.entry.js} +1 -1
  260. package/dist/ionic/{p-cb9e71e0.entry.js → p-ba0fbecc.entry.js} +1 -1
  261. package/dist/ionic/{p-3481d54e.system.entry.js → p-baf8eeac.system.entry.js} +1 -1
  262. package/dist/ionic/{p-9cd7ba27.system.js → p-bcd9cad8.system.js} +1 -1
  263. package/dist/ionic/{p-37c33319.system.js → p-bd313b73.system.js} +1 -1
  264. package/dist/ionic/{p-ae35294f.system.entry.js → p-c1a871ff.system.entry.js} +1 -1
  265. package/dist/ionic/{p-db30f71b.entry.js → p-c1c7309e.entry.js} +1 -1
  266. package/dist/ionic/{p-1924f2e0.system.entry.js → p-c7288e78.system.entry.js} +2 -2
  267. package/dist/ionic/{p-f840d817.entry.js → p-cb3065b8.entry.js} +1 -1
  268. package/dist/ionic/{p-23c73017.entry.js → p-cb9812f7.entry.js} +1 -1
  269. package/dist/ionic/{p-d4cadd34.system.js → p-cbcffe6e.system.js} +1 -1
  270. package/dist/ionic/{p-7173ba59.system.entry.js → p-ce1c0a0e.system.entry.js} +1 -1
  271. package/dist/ionic/p-cfb4d7e0.js +4 -0
  272. package/dist/ionic/{p-5e23bea8.system.entry.js → p-d143fefa.system.entry.js} +1 -1
  273. package/dist/ionic/{p-95d5a097.entry.js → p-d425b1de.entry.js} +1 -1
  274. package/dist/ionic/{p-c1797ec5.system.entry.js → p-d6c6541b.system.entry.js} +1 -1
  275. package/dist/ionic/{p-dcb5711d.entry.js → p-dff97cfa.entry.js} +1 -1
  276. package/dist/ionic/{p-c308f773.entry.js → p-e1c52dc6.entry.js} +1 -1
  277. package/dist/ionic/{p-f8c96502.system.entry.js → p-e4e74b5f.system.entry.js} +1 -1
  278. package/dist/ionic/{p-68ba8e77.system.entry.js → p-e626800f.system.entry.js} +1 -1
  279. package/dist/ionic/{p-64761c90.entry.js → p-e94c1402.entry.js} +1 -1
  280. package/dist/ionic/{p-30d77a91.system.js → p-ebc1ca90.system.js} +1 -1
  281. package/dist/ionic/{p-70e34286.system.entry.js → p-ebc86ce9.system.entry.js} +1 -1
  282. package/dist/ionic/{p-a8a56449.entry.js → p-ed4760ef.entry.js} +1 -1
  283. package/dist/ionic/{p-9ec7208d.system.js → p-f02c41af.system.js} +1 -1
  284. package/dist/ionic/{p-ba97a133.system.entry.js → p-f0e54781.system.entry.js} +1 -1
  285. package/dist/ionic/{p-3a7de59c.entry.js → p-fa8d3b01.entry.js} +1 -1
  286. package/dist/ionic/p-fbd01db3.system.js +4 -0
  287. package/dist/ionic/{p-e2bb92ed.system.js → p-fe320051.system.js} +1 -1
  288. package/dist/types/utils/helpers.d.ts +1 -1
  289. package/dist/types/utils/overlays.d.ts +5 -0
  290. package/hydrate/index.js +70 -24
  291. package/package.json +1 -1
  292. package/dist/esm-es5/helpers-c0b9ca37.js +0 -4
  293. package/dist/esm-es5/index-d64f34ea.js +0 -4
  294. package/dist/esm-es5/md.transition-564937a7.js +0 -4
  295. package/dist/esm-es5/overlays-04a9a43f.js +0 -4
  296. package/dist/ionic/p-21ca1f1c.js +0 -4
  297. package/dist/ionic/p-49aba878.js +0 -4
  298. package/dist/ionic/p-4f777b5e.js +0 -4
  299. package/dist/ionic/p-5c2ae448.js +0 -4
  300. package/dist/ionic/p-a5951821.system.js +0 -4
  301. package/dist/ionic/p-c80c7e90.system.js +0 -4
  302. package/dist/ionic/p-dbcba5a2.js +0 -4
  303. package/dist/ionic/p-e9f9388e.system.js +0 -4
  304. package/dist/ionic/p-fd2aa50c.js +0 -4
  305. /package/dist/ionic/{p-b5839dc2.js → p-1b3ffb2f.js} +0 -0
  306. /package/dist/ionic/{p-fd8ced99.system.js → p-5fc8d5ef.system.js} +0 -0
@@ -6,8 +6,8 @@
6
6
  const index = require('./index-c8d52405.js');
7
7
  const hardwareBackButton = require('./hardware-back-button-2696acaf.js');
8
8
  const ionicGlobal = require('./ionic-global-59a10130.js');
9
- const frameworkDelegate = require('./framework-delegate-a3e6d060.js');
10
- const helpers = require('./helpers-2e1028fa.js');
9
+ const frameworkDelegate = require('./framework-delegate-e0e13baa.js');
10
+ const helpers = require('./helpers-da4c0ed1.js');
11
11
  const index$1 = require('./index-5915f9b3.js');
12
12
 
13
13
  let lastOverlayIndex = 0;
@@ -100,32 +100,48 @@ const createOverlay = (tagName, opts) => {
100
100
  * valid usage for the disabled property on ion-button.
101
101
  */
102
102
  const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
103
+ const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
104
+ /**
105
+ * Focuses the first descendant in an overlay
106
+ * that can receive focus. If none exists,
107
+ * the entire overlay will be focused.
108
+ */
103
109
  const focusFirstDescendant = (ref, overlay) => {
104
- let firstInput = ref.querySelector(focusableQueryString);
105
- const shadowRoot = firstInput === null || firstInput === void 0 ? void 0 : firstInput.shadowRoot;
106
- if (shadowRoot) {
107
- // If there are no inner focusable elements, just focus the host element.
108
- firstInput = shadowRoot.querySelector(focusableQueryString) || firstInput;
109
- }
110
- if (firstInput) {
111
- helpers.focusElement(firstInput);
112
- }
113
- else {
114
- // Focus overlay instead of letting focus escape
115
- overlay.focus();
116
- }
110
+ const firstInput = ref.querySelector(focusableQueryString);
111
+ focusElementInOverlay(firstInput, overlay);
117
112
  };
118
- const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
113
+ /**
114
+ * Focuses the last descendant in an overlay
115
+ * that can receive focus. If none exists,
116
+ * the entire overlay will be focused.
117
+ */
119
118
  const focusLastDescendant = (ref, overlay) => {
120
119
  const inputs = Array.from(ref.querySelectorAll(focusableQueryString));
121
- let lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
122
- const shadowRoot = lastInput === null || lastInput === void 0 ? void 0 : lastInput.shadowRoot;
120
+ const lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
121
+ focusElementInOverlay(lastInput, overlay);
122
+ };
123
+ /**
124
+ * Focuses a particular element in an overlay. If the element
125
+ * doesn't have anything focusable associated with it then
126
+ * the overlay itself will be focused.
127
+ * This should be used instead of the focus() method
128
+ * on most elements because the focusable element
129
+ * may not be the host element.
130
+ *
131
+ * For example, if an ion-button should be focused
132
+ * then we should actually focus the native <button>
133
+ * element inside of ion-button's shadow root, not
134
+ * the host element itself.
135
+ */
136
+ const focusElementInOverlay = (hostToFocus, overlay) => {
137
+ let elementToFocus = hostToFocus;
138
+ const shadowRoot = hostToFocus === null || hostToFocus === void 0 ? void 0 : hostToFocus.shadowRoot;
123
139
  if (shadowRoot) {
124
140
  // If there are no inner focusable elements, just focus the host element.
125
- lastInput = shadowRoot.querySelector(focusableQueryString) || lastInput;
141
+ elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
126
142
  }
127
- if (lastInput) {
128
- lastInput.focus();
143
+ if (elementToFocus) {
144
+ helpers.focusVisibleElement(elementToFocus);
129
145
  }
130
146
  else {
131
147
  // Focus overlay instead of letting focus escape
@@ -176,6 +192,21 @@ const trapKeyboardFocus = (ev, doc) => {
176
192
  */
177
193
  if (lastOverlay === target) {
178
194
  lastOverlay.lastFocus = undefined;
195
+ /**
196
+ * Toasts can be presented from an overlay.
197
+ * However, focus should still be returned to
198
+ * the overlay when clicking a toast. Normally,
199
+ * focus would be returned to the last focusable
200
+ * descendant in the overlay which may not always be
201
+ * the button that the toast was presented from. In this case,
202
+ * the focus may be returned to an unexpected element.
203
+ * To account for this, we make sure to return focus to the
204
+ * last focused element in the overlay if focus is
205
+ * moved to the toast.
206
+ */
207
+ }
208
+ else if (target.tagName === 'ION-TOAST') {
209
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
179
210
  /**
180
211
  * Otherwise, we must be focusing an element
181
212
  * inside of the overlay. The two possible options
@@ -247,6 +278,21 @@ const trapKeyboardFocus = (ev, doc) => {
247
278
  */
248
279
  if (lastOverlay.contains(target)) {
249
280
  lastOverlay.lastFocus = target;
281
+ /**
282
+ * Toasts can be presented from an overlay.
283
+ * However, focus should still be returned to
284
+ * the overlay when clicking a toast. Normally,
285
+ * focus would be returned to the last focusable
286
+ * descendant in the overlay which may not always be
287
+ * the button that the toast was presented from. In this case,
288
+ * the focus may be returned to an unexpected element.
289
+ * To account for this, we make sure to return focus to the
290
+ * last focused element in the overlay if focus is
291
+ * moved to the toast.
292
+ */
293
+ }
294
+ else if (target.tagName === 'ION-TOAST') {
295
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
250
296
  }
251
297
  else {
252
298
  /**
@@ -4,8 +4,8 @@
4
4
  'use strict';
5
5
 
6
6
  const index = require('./index-0ffe376d.js');
7
- const index$1 = require('./index-53d162b2.js');
8
- const helpers = require('./helpers-2e1028fa.js');
7
+ const index$1 = require('./index-bef98850.js');
8
+ const helpers = require('./helpers-da4c0ed1.js');
9
9
  require('./index-5915f9b3.js');
10
10
 
11
11
  const startStatusTap = () => {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const helpers = require('./helpers-2e1028fa.js');
6
+ const helpers = require('./helpers-da4c0ed1.js');
7
7
  const dir = require('./dir-94c21456.js');
8
8
  const index = require('./index-d1b59ffa.js');
9
9
  require('./gesture-controller-c40c045a.js');
@@ -71,10 +71,6 @@
71
71
  overflow: hidden;
72
72
  }
73
73
 
74
- :host-context(.item:not(.item-input):not(.item-legacy)) {
75
- flex-grow: 1;
76
- }
77
-
78
74
  :host(.ion-color) {
79
75
  color: var(--ion-color-base);
80
76
  }
@@ -71,10 +71,6 @@
71
71
  overflow: hidden;
72
72
  }
73
73
 
74
- :host-context(.item:not(.item-input):not(.item-legacy)) {
75
- flex-grow: 1;
76
- }
77
-
78
74
  :host(.ion-color) {
79
75
  color: var(--ion-color-base);
80
76
  }
@@ -0,0 +1,24 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { expect } from "@playwright/test";
5
+ import { configs, test } from "../../../../utils/test/playwright/index";
6
+ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
7
+ test.describe(title('label: in item'), () => {
8
+ test('should render correctly in an item', async ({ page }) => {
9
+ test.info().annotations.push({
10
+ type: 'issue',
11
+ description: 'https://github.com/ionic-team/ionic-framework/issues/29033',
12
+ });
13
+ await page.setContent(`
14
+ <ion-item>
15
+ <ion-label slot="start">Start</ion-label>
16
+ <ion-label>Default</ion-label>
17
+ <ion-label slot="end">End</ion-label>
18
+ </ion-item>
19
+ `, config);
20
+ const item = page.locator('ion-item');
21
+ await expect(item).toHaveScreenshot(screenshot(`label-item`));
22
+ });
23
+ });
24
+ });
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { Host, h, forceUpdate } from "@stencil/core";
5
5
  import { compareOptions, createLegacyFormController, createNotchController, isOptionSelected } from "../../utils/forms/index";
6
- import { findItemLabel, focusElement, getAriaLabel, renderHiddenInput, inheritAttributes } from "../../utils/helpers";
6
+ import { findItemLabel, focusVisibleElement, getAriaLabel, renderHiddenInput, inheritAttributes } from "../../utils/helpers";
7
7
  import { printIonWarning } from "../../utils/logging/index";
8
8
  import { actionSheetController, alertController, popoverController } from "../../utils/overlays";
9
9
  import { isRTL } from "../../utils/rtl/index";
@@ -158,7 +158,7 @@ export class Select {
158
158
  if (indexOfSelected > -1) {
159
159
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
160
160
  if (selectedItem) {
161
- focusElement(selectedItem);
161
+ focusVisibleElement(selectedItem);
162
162
  /**
163
163
  * Browsers such as Firefox do not
164
164
  * correctly delegate focus when manually
@@ -182,7 +182,7 @@ export class Select {
182
182
  */
183
183
  const firstEnabledOption = overlay.querySelector('ion-radio:not(.radio-disabled), ion-checkbox:not(.checkbox-disabled)');
184
184
  if (firstEnabledOption) {
185
- focusElement(firstEnabledOption.closest('ion-item'));
185
+ focusVisibleElement(firstEnabledOption.closest('ion-item'));
186
186
  /**
187
187
  * Focus the option for the same reason as we do above.
188
188
  */
@@ -237,7 +237,7 @@ export const findItemLabel = (componentEl) => {
237
237
  }
238
238
  return null;
239
239
  };
240
- export const focusElement = (el) => {
240
+ export const focusVisibleElement = (el) => {
241
241
  el.focus();
242
242
  /**
243
243
  * When programmatically focusing an element,
@@ -7,7 +7,7 @@ import { config } from "../global/config";
7
7
  import { getIonMode } from "../global/ionic-global";
8
8
  import { CoreDelegate } from "./framework-delegate";
9
9
  import { OVERLAY_BACK_BUTTON_PRIORITY } from "./hardware-back-button";
10
- import { addEventListener, componentOnReady, focusElement, getElementRoot, removeEventListener } from "./helpers";
10
+ import { addEventListener, componentOnReady, focusVisibleElement, getElementRoot, removeEventListener, } from "./helpers";
11
11
  import { printIonWarning } from "./logging";
12
12
  let lastOverlayIndex = 0;
13
13
  let lastId = 0;
@@ -99,32 +99,48 @@ export const createOverlay = (tagName, opts) => {
99
99
  * valid usage for the disabled property on ion-button.
100
100
  */
101
101
  const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
102
+ const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
103
+ /**
104
+ * Focuses the first descendant in an overlay
105
+ * that can receive focus. If none exists,
106
+ * the entire overlay will be focused.
107
+ */
102
108
  export const focusFirstDescendant = (ref, overlay) => {
103
- let firstInput = ref.querySelector(focusableQueryString);
104
- const shadowRoot = firstInput === null || firstInput === void 0 ? void 0 : firstInput.shadowRoot;
105
- if (shadowRoot) {
106
- // If there are no inner focusable elements, just focus the host element.
107
- firstInput = shadowRoot.querySelector(focusableQueryString) || firstInput;
108
- }
109
- if (firstInput) {
110
- focusElement(firstInput);
111
- }
112
- else {
113
- // Focus overlay instead of letting focus escape
114
- overlay.focus();
115
- }
109
+ const firstInput = ref.querySelector(focusableQueryString);
110
+ focusElementInOverlay(firstInput, overlay);
116
111
  };
117
- const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
112
+ /**
113
+ * Focuses the last descendant in an overlay
114
+ * that can receive focus. If none exists,
115
+ * the entire overlay will be focused.
116
+ */
118
117
  const focusLastDescendant = (ref, overlay) => {
119
118
  const inputs = Array.from(ref.querySelectorAll(focusableQueryString));
120
- let lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
121
- const shadowRoot = lastInput === null || lastInput === void 0 ? void 0 : lastInput.shadowRoot;
119
+ const lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
120
+ focusElementInOverlay(lastInput, overlay);
121
+ };
122
+ /**
123
+ * Focuses a particular element in an overlay. If the element
124
+ * doesn't have anything focusable associated with it then
125
+ * the overlay itself will be focused.
126
+ * This should be used instead of the focus() method
127
+ * on most elements because the focusable element
128
+ * may not be the host element.
129
+ *
130
+ * For example, if an ion-button should be focused
131
+ * then we should actually focus the native <button>
132
+ * element inside of ion-button's shadow root, not
133
+ * the host element itself.
134
+ */
135
+ const focusElementInOverlay = (hostToFocus, overlay) => {
136
+ let elementToFocus = hostToFocus;
137
+ const shadowRoot = hostToFocus === null || hostToFocus === void 0 ? void 0 : hostToFocus.shadowRoot;
122
138
  if (shadowRoot) {
123
139
  // If there are no inner focusable elements, just focus the host element.
124
- lastInput = shadowRoot.querySelector(focusableQueryString) || lastInput;
140
+ elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
125
141
  }
126
- if (lastInput) {
127
- lastInput.focus();
142
+ if (elementToFocus) {
143
+ focusVisibleElement(elementToFocus);
128
144
  }
129
145
  else {
130
146
  // Focus overlay instead of letting focus escape
@@ -175,6 +191,21 @@ const trapKeyboardFocus = (ev, doc) => {
175
191
  */
176
192
  if (lastOverlay === target) {
177
193
  lastOverlay.lastFocus = undefined;
194
+ /**
195
+ * Toasts can be presented from an overlay.
196
+ * However, focus should still be returned to
197
+ * the overlay when clicking a toast. Normally,
198
+ * focus would be returned to the last focusable
199
+ * descendant in the overlay which may not always be
200
+ * the button that the toast was presented from. In this case,
201
+ * the focus may be returned to an unexpected element.
202
+ * To account for this, we make sure to return focus to the
203
+ * last focused element in the overlay if focus is
204
+ * moved to the toast.
205
+ */
206
+ }
207
+ else if (target.tagName === 'ION-TOAST') {
208
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
178
209
  /**
179
210
  * Otherwise, we must be focusing an element
180
211
  * inside of the overlay. The two possible options
@@ -246,6 +277,21 @@ const trapKeyboardFocus = (ev, doc) => {
246
277
  */
247
278
  if (lastOverlay.contains(target)) {
248
279
  lastOverlay.lastFocus = target;
280
+ /**
281
+ * Toasts can be presented from an overlay.
282
+ * However, focus should still be returned to
283
+ * the overlay when clicking a toast. Normally,
284
+ * focus would be returned to the last focusable
285
+ * descendant in the overlay which may not always be
286
+ * the button that the toast was presented from. In this case,
287
+ * the focus may be returned to an unexpected element.
288
+ * To account for this, we make sure to return focus to the
289
+ * last focused element in the overlay if focus is
290
+ * moved to the toast.
291
+ */
292
+ }
293
+ else if (target.tagName === 'ION-TOAST') {
294
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
249
295
  }
250
296
  else {
251
297
  /**
@@ -175,6 +175,95 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
175
175
  await modalInputOne.click();
176
176
  await expect(modalInputOne).toBeFocused();
177
177
  });
178
+ test('focusing toast from a shadow overlay should return focus to the last focused element', async ({ page }) => {
179
+ test.info().annotations.push({
180
+ type: 'issue',
181
+ description: 'https://github.com/ionic-team/ionic-framework/issues/28261',
182
+ });
183
+ /**
184
+ * Triggers for an overlay are typically buttons. However in this case,
185
+ * buttons are not considered keyboard focusable by WebKit. Inputs are,
186
+ * so we use an input here so we can still test on WebKit.
187
+ */
188
+ await page.setContent(`
189
+ <ion-modal>
190
+ <ion-content>
191
+ <input id="show-toast">Button A</input>
192
+ <button>Button B</button>
193
+ <ion-toast trigger="show-toast"></ion-toast>
194
+ </ion-content>
195
+ </ion-modal>
196
+
197
+ <script>
198
+ const toast = document.querySelector('ion-toast');
199
+ toast.buttons = ['Ok'];
200
+ </script>
201
+ `, config);
202
+ const modal = page.locator('ion-modal');
203
+ const showToastTrigger = page.locator('#show-toast');
204
+ const toast = page.locator('ion-toast');
205
+ const toastButton = toast.locator('button');
206
+ const ionToastDidPresent = await page.spyOnEvent('ionToastDidPresent');
207
+ // Show overlay
208
+ await modal.evaluate((el) => el.present());
209
+ // Click trigger to open toast
210
+ await showToastTrigger.click();
211
+ // Wait for toast to be presented
212
+ await ionToastDidPresent.next();
213
+ // Verify trigger in overlay is focused
214
+ await expect(showToastTrigger).toBeFocused();
215
+ // Click a button in the toast and therefore attempt to move focus
216
+ await toastButton.click();
217
+ // Verify trigger in overlay is still focused
218
+ await expect(showToastTrigger).toBeFocused();
219
+ });
220
+ test('focusing toast from a scoped overlay should return focus to the last focused element', async ({ page, skip, }) => {
221
+ test.info().annotations.push({
222
+ type: 'issue',
223
+ description: 'https://github.com/ionic-team/ionic-framework/issues/28261',
224
+ });
225
+ skip.browser('webkit', 'WebKit does not consider buttons to be focusable');
226
+ await page.setContent(`
227
+ <ion-action-sheet></ion-action-sheet>
228
+ <ion-toast></ion-toast>
229
+
230
+ <script>
231
+ const actionSheet = document.querySelector('ion-action-sheet');
232
+ actionSheet.buttons = [
233
+ 'Other Button',
234
+ {
235
+ text: 'Button',
236
+ id: 'show-toast',
237
+ handler: () => {
238
+ document.querySelector('ion-toast').present();
239
+ return false;
240
+ }
241
+ }
242
+ ];
243
+
244
+ const toast = document.querySelector('ion-toast');
245
+ toast.buttons = ['Ok'];
246
+ </script>
247
+ `, config);
248
+ const actionSheet = page.locator('ion-action-sheet');
249
+ const showToastButton = page.locator('#show-toast');
250
+ const toast = page.locator('ion-toast');
251
+ const toastButton = toast.locator('button');
252
+ const ionToastDidPresent = await page.spyOnEvent('ionToastDidPresent');
253
+ // Show overlay
254
+ await actionSheet.evaluate((el) => el.present());
255
+ // Click button to open toast
256
+ await showToastButton.click();
257
+ // Wait for toast to be presented
258
+ await ionToastDidPresent.next();
259
+ // Verify button in overlay is focused
260
+ await expect(showToastButton).toBeFocused();
261
+ // Click a button in the toast and therefore attempt to move focus
262
+ await toastButton.click();
263
+ await page.pause();
264
+ // Verify button in overlay is still focused
265
+ await expect(showToastButton).toBeFocused();
266
+ });
178
267
  test('should not return focus to another element if focus already manually returned', async ({ page, skip, }, testInfo) => {
179
268
  skip.browser('webkit', 'WebKit does not consider buttons to be focusable, so this test always passes since the input is the only focusable element.');
180
269
  testInfo.annotations.push({
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2024-02-15T03:07:15",
2
+ "timestamp": "2024-02-24T20:38:59",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.12.2",
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as win } from './index-a5d50daf.js';
5
- import { r as raf } from './helpers-c0b9ca37.js';
5
+ import { r as raf } from './helpers-be245865.js';
6
6
 
7
7
  let animationPrefix;
8
8
  /**
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { h as findItemLabel } from './helpers-c0b9ca37.js';
4
+ import { h as findItemLabel } from './helpers-be245865.js';
5
5
 
6
6
  /**
7
7
  * Creates a controller that tracks whether a form control is using the legacy or modern syntax. This should be removed when the legacy form control syntax is removed.
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as componentOnReady } from './helpers-c0b9ca37.js';
4
+ import { c as componentOnReady } from './helpers-be245865.js';
5
5
 
6
6
  // TODO(FW-2832): types
7
7
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -237,7 +237,7 @@ const findItemLabel = (componentEl) => {
237
237
  }
238
238
  return null;
239
239
  };
240
- const focusElement = (el) => {
240
+ const focusVisibleElement = (el) => {
241
241
  el.focus();
242
242
  /**
243
243
  * When programmatically focusing an element,
@@ -415,4 +415,4 @@ const shallowEqualStringMap = (map1, map2) => {
415
415
  return true;
416
416
  };
417
417
 
418
- export { addEventListener as a, removeEventListener as b, componentOnReady as c, renderHiddenInput as d, getAriaLabel as e, focusElement as f, getElementRoot as g, findItemLabel as h, inheritAriaAttributes as i, debounceEvent as j, inheritAttributes as k, clamp as l, hasLazyBuild as m, hasShadowDom as n, assert as o, isEndSide as p, debounce as q, raf as r, shallowEqualStringMap as s, transitionEndAsync as t, now as u, pointerCoord as v };
418
+ export { addEventListener as a, removeEventListener as b, componentOnReady as c, renderHiddenInput as d, getAriaLabel as e, focusVisibleElement as f, getElementRoot as g, findItemLabel as h, inheritAriaAttributes as i, debounceEvent as j, inheritAttributes as k, clamp as l, hasLazyBuild as m, hasShadowDom as n, assert as o, isEndSide as p, debounce as q, raf as r, shallowEqualStringMap as s, transitionEndAsync as t, now as u, pointerCoord as v };
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { d as doc } from './index-a5d50daf.js';
5
- import { u as now, v as pointerCoord } from './helpers-c0b9ca37.js';
5
+ import { u as now, v as pointerCoord } from './helpers-be245865.js';
6
6
 
7
7
  const startTapClick = (config) => {
8
8
  if (doc === undefined) {
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as writeTask, B as Build } from './index-4c30cddd.js';
5
- import { r as raf } from './helpers-c0b9ca37.js';
5
+ import { r as raf } from './helpers-be245865.js';
6
6
 
7
7
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
8
8
  const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
@@ -10,8 +10,8 @@ const LIFECYCLE_WILL_LEAVE = 'ionViewWillLeave';
10
10
  const LIFECYCLE_DID_LEAVE = 'ionViewDidLeave';
11
11
  const LIFECYCLE_WILL_UNLOAD = 'ionViewWillUnload';
12
12
 
13
- const iosTransitionAnimation = () => import('./ios.transition-b76c7020.js');
14
- const mdTransitionAnimation = () => import('./md.transition-564937a7.js');
13
+ const iosTransitionAnimation = () => import('./ios.transition-7459f819.js');
14
+ const mdTransitionAnimation = () => import('./md.transition-b8224313.js');
15
15
  // TODO(FW-2832): types
16
16
  const transition = (opts) => {
17
17
  return new Promise((resolve, reject) => {
@@ -4,9 +4,9 @@
4
4
  import { d as doc } from './index-a5d50daf.js';
5
5
  import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-b410a047.js';
6
6
  import { p as printIonWarning } from './index-9b0d46f4.js';
7
- import { c as componentOnReady } from './helpers-c0b9ca37.js';
7
+ import { c as componentOnReady } from './helpers-be245865.js';
8
8
  import { b as getIonMode } from './ionic-global-ad9a1810.js';
9
- import { c as createAnimation } from './animation-60dbdd13.js';
9
+ import { c as createAnimation } from './animation-6a0c5338.js';
10
10
 
11
11
  /**
12
12
  * baseAnimation
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as componentOnReady } from './helpers-c0b9ca37.js';
4
+ import { c as componentOnReady } from './helpers-be245865.js';
5
5
  import { b as printRequiredElementError } from './index-9b0d46f4.js';
6
6
 
7
7
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
package/dist/esm/index.js CHANGED
@@ -1,24 +1,24 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- export { c as createAnimation } from './animation-60dbdd13.js';
5
- export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-0b4beb69.js';
6
- export { iosTransitionAnimation } from './ios.transition-b76c7020.js';
7
- export { mdTransitionAnimation } from './md.transition-564937a7.js';
4
+ export { c as createAnimation } from './animation-6a0c5338.js';
5
+ export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-348ed70a.js';
6
+ export { iosTransitionAnimation } from './ios.transition-7459f819.js';
7
+ export { mdTransitionAnimation } from './md.transition-b8224313.js';
8
8
  export { g as getTimeGivenProgression } from './cubic-bezier-fe2083dc.js';
9
9
  export { createGesture } from './index-2cf77112.js';
10
10
  export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-ad9a1810.js';
11
- export { c as componentOnReady } from './helpers-c0b9ca37.js';
11
+ export { c as componentOnReady } from './helpers-be245865.js';
12
12
  export { I as IonicSafeString, g as getMode, s as setupConfig } from './config-49c88215.js';
13
13
  export { o as openURL } from './theme-01f3f29c.js';
14
- export { m as menuController } from './index-47b2066d.js';
15
- export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-04a9a43f.js';
14
+ export { m as menuController } from './index-e1b622e3.js';
15
+ export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-19b26885.js';
16
16
  import './index-a5d50daf.js';
17
17
  import './index-4c30cddd.js';
18
18
  import './gesture-controller-1bf57181.js';
19
19
  import './hardware-back-button-b410a047.js';
20
20
  import './index-9b0d46f4.js';
21
- import './framework-delegate-fed7fe7c.js';
21
+ import './framework-delegate-ed4ba327.js';
22
22
 
23
23
  const IonicSlides = (opts) => {
24
24
  const { swiper, extendParams } = opts;
@@ -2,8 +2,8 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as win, d as doc } from './index-a5d50daf.js';
5
- import { g as getScrollElement, c as scrollByPoint, f as findClosestIonContent } from './index-eb12ef92.js';
6
- import { a as addEventListener, b as removeEventListener, r as raf, c as componentOnReady } from './helpers-c0b9ca37.js';
5
+ import { g as getScrollElement, c as scrollByPoint, f as findClosestIonContent } from './index-f3946ac1.js';
6
+ import { a as addEventListener, b as removeEventListener, r as raf, c as componentOnReady } from './helpers-be245865.js';
7
7
  import { a as KeyboardResize, K as Keyboard } from './keyboard-73175e24.js';
8
8
  import './index-9b0d46f4.js';
9
9
  import './capacitor-59395cbd.js';
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as win } from './index-a5d50daf.js';
5
- import { r as raf } from './helpers-c0b9ca37.js';
5
+ import { r as raf } from './helpers-be245865.js';
6
6
  import { a as printIonError } from './index-9b0d46f4.js';
7
7
 
8
8
  /**
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, h, H as Host, f as getElement, d as createEvent } from './index-4c30cddd.js';
5
- import { r as raf, t as transitionEndAsync, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers-c0b9ca37.js';
5
+ import { r as raf, t as transitionEndAsync, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers-be245865.js';
6
6
  import { l as chevronDown } from './index-f7dc70ba.js';
7
7
  import { c as config, b as getIonMode } from './ionic-global-ad9a1810.js';
8
8
  import { p as printIonWarning } from './index-9b0d46f4.js';