@ionic/core 8.3.1-dev.11726241210.1ab7a0ab → 8.3.1-dev.11727899155.103c4afc

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 (571) hide show
  1. package/components/animation.js +1 -1
  2. package/components/button.js +1 -2
  3. package/components/capacitor.js +1 -1
  4. package/components/data.js +1 -1
  5. package/components/focus-visible.js +8 -1
  6. package/components/framework-delegate.js +1 -1
  7. package/components/helpers.js +1 -1
  8. package/components/index2.js +1 -2
  9. package/components/index4.js +1 -4
  10. package/components/index5.js +27 -3
  11. package/components/index6.js +114 -20
  12. package/components/index7.js +163 -27
  13. package/components/input-shims.js +2 -2
  14. package/components/input.utils.js +1 -2
  15. package/components/ion-accordion-group.js +1 -2
  16. package/components/ion-accordion.js +1 -1
  17. package/components/ion-app.js +6 -75
  18. package/components/ion-back-button.js +1 -1
  19. package/components/ion-breadcrumb.js +1 -1
  20. package/components/ion-content.js +1 -1
  21. package/components/ion-datetime-button.js +1 -2
  22. package/components/ion-datetime.js +2 -3
  23. package/components/ion-fab-button.js +1 -1
  24. package/components/ion-footer.js +4 -4
  25. package/components/ion-header.js +5 -5
  26. package/components/ion-infinite-scroll.js +1 -1
  27. package/components/ion-input-password-toggle.js +2 -3
  28. package/components/ion-input.js +1 -1
  29. package/components/ion-item-sliding.js +1 -1
  30. package/components/ion-menu-button.js +1 -1
  31. package/components/ion-menu.js +1 -2
  32. package/components/ion-modal.js +2 -4
  33. package/components/ion-nav.js +1 -2
  34. package/components/ion-picker-legacy.js +1 -2
  35. package/components/ion-range.js +2 -3
  36. package/components/ion-refresher-content.js +1 -1
  37. package/components/ion-refresher.js +1 -1
  38. package/components/ion-reorder-group.js +1 -1
  39. package/components/ion-reorder.js +1 -1
  40. package/components/ion-searchbar.js +1 -1
  41. package/components/ion-select.js +1 -1
  42. package/components/ion-toast.js +1 -3
  43. package/components/ion-toggle.js +1 -1
  44. package/components/ionic-global.js +219 -2
  45. package/components/item.js +1 -1
  46. package/components/keyboard-controller.js +2 -2
  47. package/components/notch-controller.js +1 -1
  48. package/components/overlays.js +2 -5
  49. package/components/picker-column.js +1 -2
  50. package/components/popover.js +1 -2
  51. package/components/status-tap.js +1 -1
  52. package/dist/cjs/{animation-b4fdf128.js → animation-1b5076f1.js} +2 -2
  53. package/dist/cjs/{app-globals-2cfd442b.js → app-globals-7adfb8dd.js} +1 -1
  54. package/dist/cjs/{button-active-1a40c735.js → button-active-0f66de25.js} +1 -1
  55. package/dist/cjs/{capacitor-c04564bf.js → capacitor-618d05d6.js} +3 -3
  56. package/dist/cjs/{data-21dc0f81.js → data-5d4f17b4.js} +3 -3
  57. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  58. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-d1e05576.js} +2 -2
  59. package/dist/cjs/{haptic-f6b37aa3.js → haptic-2bdd48c1.js} +1 -1
  60. package/dist/cjs/{helpers-afaa9001.js → helpers-acd6c477.js} +1 -1
  61. package/dist/cjs/{index-5b6a7459.js → index-3eb98cb9.js} +3 -3
  62. package/dist/cjs/{index-9bdd4f2a.js → index-686a2ab7.js} +8 -9
  63. package/dist/cjs/{index-9509ecad.js → index-c17dd541.js} +8 -7
  64. package/dist/cjs/{index-c170694d.js → index-d683cd69.js} +7 -10
  65. package/dist/cjs/index.cjs.js +9 -12
  66. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-f41730e2.js} +17 -17
  67. package/dist/cjs/{input.utils-611cde0b.js → input.utils-1215e537.js} +4 -5
  68. package/dist/cjs/ion-accordion_2.cjs.entry.js +3 -4
  69. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -11
  70. package/dist/cjs/ion-alert.cjs.entry.js +8 -11
  71. package/dist/cjs/ion-app_8.cjs.entry.js +31 -101
  72. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  73. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  74. package/dist/cjs/ion-backdrop.cjs.entry.js +1 -1
  75. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-button_2.cjs.entry.js +5 -6
  77. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  78. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  79. package/dist/cjs/ion-chip.cjs.entry.js +1 -1
  80. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  81. package/dist/cjs/ion-datetime-button.cjs.entry.js +7 -8
  82. package/dist/cjs/ion-datetime_3.cjs.entry.js +96 -99
  83. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  85. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -4
  86. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +6 -7
  87. package/dist/cjs/ion-input.cjs.entry.js +4 -6
  88. package/dist/cjs/ion-item-option_3.cjs.entry.js +3 -4
  89. package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
  90. package/dist/cjs/ion-loading.cjs.entry.js +5 -8
  91. package/dist/cjs/ion-menu_3.cjs.entry.js +7 -10
  92. package/dist/cjs/ion-modal.cjs.entry.js +49 -52
  93. package/dist/cjs/ion-nav_2.cjs.entry.js +5 -6
  94. package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
  95. package/dist/cjs/ion-picker-column.cjs.entry.js +5 -6
  96. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  97. package/dist/cjs/ion-popover.cjs.entry.js +9 -12
  98. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  99. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  100. package/dist/cjs/ion-range.cjs.entry.js +8 -9
  101. package/dist/cjs/ion-refresher_2.cjs.entry.js +6 -8
  102. package/dist/cjs/ion-reorder_2.cjs.entry.js +5 -7
  103. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  104. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  105. package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
  106. package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
  107. package/dist/cjs/ion-select_3.cjs.entry.js +5 -8
  108. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  109. package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
  110. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +5 -6
  111. package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
  112. package/dist/cjs/ion-text.cjs.entry.js +1 -1
  113. package/dist/cjs/ion-textarea.cjs.entry.js +4 -6
  114. package/dist/cjs/ion-toast.cjs.entry.js +31 -34
  115. package/dist/cjs/ion-toggle.cjs.entry.js +4 -5
  116. package/dist/cjs/ionic-global-7b45fd73.js +462 -0
  117. package/dist/cjs/ionic.cjs.js +2 -2
  118. package/dist/cjs/{ios.transition-ac67e283.js → ios.transition-1ee349d9.js} +4 -6
  119. package/dist/cjs/{keyboard-af1bb365.js → keyboard-49920cbd.js} +4 -3
  120. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-5b01bcd9.js} +9 -9
  121. package/dist/cjs/{keyboard-0272231f.js → keyboard-d77ef081.js} +1 -1
  122. package/dist/cjs/loader.cjs.js +2 -2
  123. package/dist/cjs/{md.transition-8ceb4e1a.js → md.transition-719e7e1c.js} +4 -6
  124. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-a8eaed3b.js} +4 -4
  125. package/dist/cjs/{overlays-4451d3fc.js → overlays-14f167fc.js} +12 -15
  126. package/dist/cjs/{status-tap-e52a48f8.js → status-tap-e7029c0d.js} +3 -3
  127. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-13234294.js} +1 -1
  128. package/dist/collection/components/app/app.js +5 -75
  129. package/dist/collection/components/content/content.js +1 -1
  130. package/dist/collection/components/footer/footer.js +3 -3
  131. package/dist/collection/components/header/header.js +4 -4
  132. package/dist/collection/components/input/input.js +1 -1
  133. package/dist/collection/components/searchbar/searchbar.js +1 -1
  134. package/dist/collection/global/ionic-global.js +70 -1
  135. package/dist/collection/utils/focus-visible.js +7 -0
  136. package/dist/collection/utils/framework-delegate.js +1 -1
  137. package/dist/collection/utils/helpers.js +1 -1
  138. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -1
  139. package/dist/collection/utils/overlays.js +1 -1
  140. package/dist/docs.json +107 -107
  141. package/dist/esm/{animation-eab5a4ca.js → animation-4833cc82.js} +1 -1
  142. package/dist/esm/{app-globals-b9f6e516.js → app-globals-120fc59a.js} +1 -1
  143. package/dist/esm/{button-active-13c37337.js → button-active-99997f21.js} +1 -1
  144. package/dist/esm/{capacitor-59395cbd.js → capacitor-90256979.js} +1 -1
  145. package/dist/esm/{data-ae11fd43.js → data-ef61a6bc.js} +1 -1
  146. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  147. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-3b8e3146.js} +2 -2
  148. package/dist/esm/{haptic-ac164e4c.js → haptic-2a877838.js} +1 -1
  149. package/dist/esm/{helpers-da915de8.js → helpers-b96cdeb7.js} +1 -1
  150. package/dist/esm/{index-97b0ab3f.js → index-462343ab.js} +3 -6
  151. package/{components/index9.js → dist/esm/index-4b965271.js} +3 -2
  152. package/dist/esm/{index-5cc724f3.js → index-57058cbb.js} +2 -2
  153. package/dist/esm/{index-8579e7fd.js → index-ea559016.js} +4 -5
  154. package/dist/esm/index.js +9 -12
  155. package/dist/esm/{input-shims-0314bbe5.js → input-shims-3803b8f3.js} +6 -6
  156. package/dist/esm/{input.utils-09c71bc7.js → input.utils-40cda890.js} +2 -3
  157. package/dist/esm/ion-accordion_2.entry.js +2 -3
  158. package/dist/esm/ion-action-sheet.entry.js +8 -11
  159. package/dist/esm/ion-alert.entry.js +8 -11
  160. package/dist/esm/ion-app_8.entry.js +21 -91
  161. package/dist/esm/ion-avatar_3.entry.js +1 -1
  162. package/dist/esm/ion-back-button.entry.js +2 -2
  163. package/dist/esm/ion-backdrop.entry.js +1 -1
  164. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  165. package/dist/esm/ion-button_2.entry.js +2 -3
  166. package/dist/esm/ion-card_5.entry.js +2 -2
  167. package/dist/esm/ion-checkbox.entry.js +2 -2
  168. package/dist/esm/ion-chip.entry.js +1 -1
  169. package/dist/esm/ion-col_3.entry.js +1 -1
  170. package/dist/esm/ion-datetime-button.entry.js +3 -4
  171. package/dist/esm/ion-datetime_3.entry.js +9 -12
  172. package/dist/esm/ion-fab_3.entry.js +2 -2
  173. package/dist/esm/ion-img.entry.js +2 -2
  174. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -4
  175. package/dist/esm/ion-input-password-toggle.entry.js +1 -2
  176. package/dist/esm/ion-input.entry.js +4 -6
  177. package/dist/esm/ion-item-option_3.entry.js +3 -4
  178. package/dist/esm/ion-item_8.entry.js +2 -2
  179. package/dist/esm/ion-loading.entry.js +5 -8
  180. package/dist/esm/ion-menu_3.entry.js +6 -9
  181. package/dist/esm/ion-modal.entry.js +10 -13
  182. package/dist/esm/ion-nav_2.entry.js +5 -6
  183. package/dist/esm/ion-picker-column-option.entry.js +2 -2
  184. package/dist/esm/ion-picker-column.entry.js +4 -5
  185. package/dist/esm/ion-picker.entry.js +1 -1
  186. package/dist/esm/ion-popover.entry.js +6 -9
  187. package/dist/esm/ion-progress-bar.entry.js +2 -2
  188. package/dist/esm/ion-radio_2.entry.js +2 -2
  189. package/dist/esm/ion-range.entry.js +3 -4
  190. package/dist/esm/ion-refresher_2.entry.js +6 -8
  191. package/dist/esm/ion-reorder_2.entry.js +5 -7
  192. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  193. package/dist/esm/ion-route_4.entry.js +2 -2
  194. package/dist/esm/ion-searchbar.entry.js +2 -2
  195. package/dist/esm/ion-segment_2.entry.js +2 -2
  196. package/dist/esm/ion-select_3.entry.js +5 -8
  197. package/dist/esm/ion-spinner.entry.js +1 -1
  198. package/dist/esm/ion-split-pane.entry.js +1 -1
  199. package/dist/esm/ion-tab-bar_2.entry.js +5 -6
  200. package/dist/esm/ion-tab_2.entry.js +2 -2
  201. package/dist/esm/ion-text.entry.js +1 -1
  202. package/dist/esm/ion-textarea.entry.js +4 -6
  203. package/dist/esm/ion-toast.entry.js +5 -8
  204. package/dist/esm/ion-toggle.entry.js +4 -5
  205. package/dist/esm/ionic-global-03ec9636.js +448 -0
  206. package/dist/esm/ionic.js +2 -2
  207. package/dist/esm/{ios.transition-beb96e76.js → ios.transition-974d0663.js} +4 -6
  208. package/dist/esm/{keyboard-73175e24.js → keyboard-2f90c451.js} +1 -1
  209. package/dist/esm/{keyboard-52278bd7.js → keyboard-4a5eec96.js} +4 -3
  210. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-bf0b9670.js} +3 -3
  211. package/dist/esm/loader.js +2 -2
  212. package/dist/esm/{md.transition-d5aa5703.js → md.transition-a592d042.js} +4 -6
  213. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-8d28ece6.js} +2 -2
  214. package/dist/esm/{overlays-2ea57630.js → overlays-7d2c4725.js} +4 -7
  215. package/dist/esm/{status-tap-a264a37f.js → status-tap-eee70591.js} +3 -3
  216. package/dist/esm/{swipe-back-e5394307.js → swipe-back-1c5e6095.js} +1 -1
  217. package/dist/esm-es5/animation-4833cc82.js +4 -0
  218. package/dist/esm-es5/app-globals-120fc59a.js +4 -0
  219. package/dist/esm-es5/{button-active-13c37337.js → button-active-99997f21.js} +1 -1
  220. package/dist/esm-es5/capacitor-90256979.js +4 -0
  221. package/dist/esm-es5/data-ef61a6bc.js +4 -0
  222. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  223. package/dist/esm-es5/{framework-delegate-63d1a679.js → framework-delegate-3b8e3146.js} +1 -1
  224. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-2a877838.js} +1 -1
  225. package/dist/esm-es5/{helpers-da915de8.js → helpers-b96cdeb7.js} +1 -1
  226. package/dist/esm-es5/index-462343ab.js +4 -0
  227. package/dist/esm-es5/index-4b965271.js +4 -0
  228. package/dist/esm-es5/index-57058cbb.js +4 -0
  229. package/dist/esm-es5/index-ea559016.js +4 -0
  230. package/dist/esm-es5/index.js +1 -1
  231. package/dist/esm-es5/input-shims-3803b8f3.js +4 -0
  232. package/dist/esm-es5/input.utils-40cda890.js +4 -0
  233. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  234. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  235. package/dist/esm-es5/ion-alert.entry.js +1 -1
  236. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  237. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  238. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  239. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  240. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  241. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  242. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  243. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  244. package/dist/esm-es5/ion-chip.entry.js +1 -1
  245. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  246. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  247. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  248. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  249. package/dist/esm-es5/ion-img.entry.js +1 -1
  250. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  251. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  252. package/dist/esm-es5/ion-input.entry.js +1 -1
  253. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  254. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  255. package/dist/esm-es5/ion-loading.entry.js +1 -1
  256. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  257. package/dist/esm-es5/ion-modal.entry.js +1 -1
  258. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  259. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  260. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  261. package/dist/esm-es5/ion-picker.entry.js +1 -1
  262. package/dist/esm-es5/ion-popover.entry.js +1 -1
  263. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  264. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  265. package/dist/esm-es5/ion-range.entry.js +1 -1
  266. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  267. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  268. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  269. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  270. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  271. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  272. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  273. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  274. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  275. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  276. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  277. package/dist/esm-es5/ion-text.entry.js +1 -1
  278. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  279. package/dist/esm-es5/ion-toast.entry.js +1 -1
  280. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  281. package/dist/esm-es5/ionic-global-03ec9636.js +4 -0
  282. package/dist/esm-es5/ionic.js +1 -1
  283. package/dist/esm-es5/ios.transition-974d0663.js +4 -0
  284. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-2f90c451.js} +1 -1
  285. package/dist/esm-es5/keyboard-4a5eec96.js +4 -0
  286. package/dist/esm-es5/keyboard-controller-bf0b9670.js +4 -0
  287. package/dist/esm-es5/loader.js +1 -1
  288. package/dist/esm-es5/md.transition-a592d042.js +4 -0
  289. package/dist/esm-es5/notch-controller-8d28ece6.js +4 -0
  290. package/dist/esm-es5/overlays-7d2c4725.js +4 -0
  291. package/dist/esm-es5/status-tap-eee70591.js +4 -0
  292. package/dist/esm-es5/{swipe-back-e5394307.js → swipe-back-1c5e6095.js} +1 -1
  293. package/dist/html.html-data.json +102 -102
  294. package/dist/ionic/index.esm.js +1 -1
  295. package/dist/ionic/ionic.esm.js +1 -1
  296. package/dist/ionic/ionic.js +1 -1
  297. package/dist/ionic/p-0323014f.entry.js +4 -0
  298. package/dist/ionic/{p-89611183.system.js → p-0363123b.system.js} +1 -1
  299. package/dist/ionic/{p-fca0933c.system.entry.js → p-092161ab.system.entry.js} +1 -1
  300. package/dist/ionic/{p-e00617fb.entry.js → p-09854f4b.entry.js} +1 -1
  301. package/dist/ionic/p-0b886ca7.entry.js +4 -0
  302. package/dist/ionic/p-0e48d764.entry.js +4 -0
  303. package/dist/ionic/p-10bc5191.system.entry.js +4 -0
  304. package/dist/ionic/p-10f5df89.system.entry.js +4 -0
  305. package/dist/ionic/{p-3d9ecf70.entry.js → p-128849bc.entry.js} +1 -1
  306. package/dist/ionic/{p-b0fbe12b.entry.js → p-134b5dad.entry.js} +1 -1
  307. package/dist/ionic/{p-89d17c48.system.entry.js → p-1883a8fa.system.entry.js} +1 -1
  308. package/dist/ionic/{p-dc65c03b.js → p-19b78761.js} +1 -1
  309. package/dist/ionic/{p-19ea7bff.system.js → p-1d57f288.system.js} +1 -1
  310. package/dist/ionic/p-1d5a1bf5.entry.js +4 -0
  311. package/dist/ionic/p-1d6f8fab.system.js +4 -0
  312. package/dist/ionic/p-1dcb0d05.entry.js +4 -0
  313. package/dist/ionic/p-1e89c2ed.js +4 -0
  314. package/dist/ionic/{p-fd70cb80.system.entry.js → p-1e98f497.system.entry.js} +1 -1
  315. package/dist/ionic/p-29085dc1.system.js +4 -0
  316. package/dist/ionic/{p-b51e4004.js → p-2f5f9e37.js} +1 -1
  317. package/dist/ionic/{p-f4d568f8.entry.js → p-33e29f21.entry.js} +1 -1
  318. package/dist/ionic/p-34726df4.system.entry.js +4 -0
  319. package/dist/ionic/p-3616a3e7.system.entry.js +4 -0
  320. package/dist/ionic/p-364105d1.system.entry.js +4 -0
  321. package/dist/ionic/{p-4440f5b4.entry.js → p-36474df6.entry.js} +1 -1
  322. package/dist/ionic/{p-491deb33.entry.js → p-368133aa.entry.js} +1 -1
  323. package/dist/ionic/p-3996cc2f.js +4 -0
  324. package/dist/ionic/p-3aa92b96.system.entry.js +4 -0
  325. package/dist/ionic/{p-cf6bad6d.entry.js → p-3dbf1af2.entry.js} +1 -1
  326. package/dist/ionic/{p-8b3ff142.entry.js → p-3ec5731b.entry.js} +1 -1
  327. package/dist/ionic/{p-83f7a890.system.entry.js → p-3fb02efa.system.entry.js} +1 -1
  328. package/dist/ionic/p-414b9a61.entry.js +4 -0
  329. package/dist/ionic/p-41dd8be3.entry.js +4 -0
  330. package/dist/ionic/p-421796ce.js +4 -0
  331. package/dist/ionic/{p-a93873de.system.js → p-43f1441e.system.js} +1 -1
  332. package/dist/ionic/{p-e02807c4.entry.js → p-4407067a.entry.js} +1 -1
  333. package/dist/ionic/p-46787abb.system.js +4 -0
  334. package/dist/ionic/p-48096596.entry.js +4 -0
  335. package/dist/ionic/p-4c4de719.entry.js +4 -0
  336. package/dist/ionic/{p-3ad285e3.system.js → p-4e970f1c.system.js} +1 -1
  337. package/dist/ionic/p-4efa1a1d.system.entry.js +4 -0
  338. package/dist/ionic/{p-aa5358cb.system.entry.js → p-511c01d3.system.entry.js} +1 -1
  339. package/dist/ionic/p-51d13493.entry.js +4 -0
  340. package/dist/ionic/p-55dbf33b.entry.js +4 -0
  341. package/dist/ionic/p-5605b84f.js +4 -0
  342. package/dist/ionic/p-566c88f6.system.js +4 -0
  343. package/dist/ionic/{p-21904499.entry.js → p-5786ea53.entry.js} +1 -1
  344. package/dist/ionic/p-5821285e.system.entry.js +4 -0
  345. package/dist/ionic/{p-6d857105.system.entry.js → p-58d23d7a.system.entry.js} +1 -1
  346. package/dist/ionic/p-5abd61c9.js +4 -0
  347. package/dist/ionic/p-5ada7868.system.js +4 -0
  348. package/dist/ionic/p-5ce35a03.js +4 -0
  349. package/dist/ionic/p-5d672083.system.entry.js +4 -0
  350. package/dist/ionic/p-62bd2e43.system.entry.js +4 -0
  351. package/dist/ionic/p-6455b864.system.entry.js +4 -0
  352. package/dist/ionic/p-651766ac.entry.js +4 -0
  353. package/dist/ionic/{p-b06ac4a5.system.js → p-6596229d.system.js} +1 -1
  354. package/dist/ionic/{p-289d16f5.system.js → p-67c8dcfd.system.js} +1 -1
  355. package/dist/ionic/p-6ae88498.js +4 -0
  356. package/dist/ionic/p-6cf3857f.system.entry.js +4 -0
  357. package/dist/ionic/p-6d8c0944.system.js +4 -0
  358. package/dist/ionic/p-6e2918f3.system.entry.js +4 -0
  359. package/dist/ionic/p-707236b4.system.entry.js +4 -0
  360. package/dist/ionic/{p-98203dbd.system.entry.js → p-718726b0.system.entry.js} +1 -1
  361. package/dist/ionic/p-73f6766e.system.entry.js +4 -0
  362. package/dist/ionic/p-7539a724.system.entry.js +4 -0
  363. package/dist/ionic/{p-0065a3d0.system.entry.js → p-759b8d9a.system.entry.js} +1 -1
  364. package/dist/ionic/{p-f687573e.system.js → p-7767ca8a.system.js} +1 -1
  365. package/dist/ionic/p-7774e10d.entry.js +4 -0
  366. package/dist/ionic/p-77aab69d.js +4 -0
  367. package/dist/ionic/p-78c10d41.entry.js +4 -0
  368. package/dist/ionic/p-7931413d.entry.js +4 -0
  369. package/dist/ionic/{p-9146695e.system.js → p-7e56e6cc.system.js} +1 -1
  370. package/dist/ionic/p-7ffef389.system.entry.js +4 -0
  371. package/dist/ionic/{p-7de39857.system.entry.js → p-80487596.system.entry.js} +1 -1
  372. package/dist/ionic/{p-8985cdb6.system.js → p-80fa15f7.system.js} +1 -1
  373. package/dist/ionic/p-8133332f.entry.js +4 -0
  374. package/dist/ionic/p-83c633c8.js +4 -0
  375. package/dist/ionic/{p-8cab6a5c.system.entry.js → p-84b1b6f7.system.entry.js} +1 -1
  376. package/dist/ionic/p-84d72d1d.entry.js +4 -0
  377. package/dist/ionic/p-86391425.js +4 -0
  378. package/dist/ionic/{p-4a963829.system.entry.js → p-8655c143.system.entry.js} +1 -1
  379. package/dist/ionic/p-86a12c6d.js +4 -0
  380. package/dist/ionic/{p-89b61afc.js → p-86fabcac.js} +1 -1
  381. package/dist/ionic/p-870c2d06.system.entry.js +4 -0
  382. package/dist/ionic/p-8857f3ce.js +4 -0
  383. package/dist/ionic/{p-27281edd.js → p-89d820c6.js} +1 -1
  384. package/dist/ionic/{p-3ba261ac.entry.js → p-8bf061c5.entry.js} +1 -1
  385. package/dist/ionic/{p-b6fbbe81.system.entry.js → p-8dd188b5.system.entry.js} +1 -1
  386. package/dist/ionic/{p-dfb78785.system.js → p-8f6462ed.system.js} +1 -1
  387. package/dist/ionic/p-90671ced.system.js +4 -0
  388. package/dist/ionic/p-92341215.system.js +4 -0
  389. package/dist/ionic/{p-3cc276f4.js → p-97e18d86.js} +1 -1
  390. package/dist/ionic/p-9a2dfb2a.system.entry.js +4 -0
  391. package/dist/ionic/p-9eb18e77.system.js +4 -0
  392. package/dist/ionic/{p-c6181d52.system.js → p-a09d82d3.system.js} +1 -1
  393. package/dist/ionic/p-a4cb22d4.entry.js +4 -0
  394. package/dist/ionic/p-a69ae8cf.js +4 -0
  395. package/dist/ionic/p-a798933c.system.js +4 -0
  396. package/dist/ionic/{p-7f375f5a.entry.js → p-a845b317.entry.js} +1 -1
  397. package/dist/ionic/p-a8ab986c.entry.js +4 -0
  398. package/dist/ionic/{p-4fbf3556.system.entry.js → p-a97c0ad2.system.entry.js} +1 -1
  399. package/dist/ionic/{p-23e0cd37.entry.js → p-ac3cefed.entry.js} +1 -1
  400. package/dist/ionic/{p-2b37f5bd.entry.js → p-ae371c25.entry.js} +1 -1
  401. package/dist/ionic/p-b6839dbe.entry.js +4 -0
  402. package/dist/ionic/p-b7bef03d.system.js +4 -0
  403. package/dist/ionic/{p-acaa514f.system.entry.js → p-b7e1017a.system.entry.js} +1 -1
  404. package/dist/ionic/{p-1e1b3d99.system.entry.js → p-b8ed1419.system.entry.js} +1 -1
  405. package/dist/ionic/p-ba3a434f.system.entry.js +4 -0
  406. package/dist/ionic/p-bd9cd14e.system.js +4 -0
  407. package/dist/ionic/p-be5cf9f9.system.entry.js +4 -0
  408. package/dist/ionic/{p-c7e16491.js → p-be81d4c0.js} +1 -1
  409. package/dist/ionic/p-c160c3e1.system.entry.js +4 -0
  410. package/dist/ionic/p-c2c4da88.entry.js +4 -0
  411. package/dist/ionic/{p-97f6c01c.system.entry.js → p-c7137d57.system.entry.js} +1 -1
  412. package/dist/ionic/p-c7914648.entry.js +4 -0
  413. package/dist/ionic/{p-eecf3a84.entry.js → p-c7e23c59.entry.js} +1 -1
  414. package/dist/ionic/p-ca48f040.js +4 -0
  415. package/dist/ionic/{p-86deab17.system.entry.js → p-cc984799.system.entry.js} +1 -1
  416. package/dist/ionic/{p-2690b1de.js → p-cf0e9e1e.js} +1 -1
  417. package/dist/ionic/{p-34b11c24.js → p-d16139c2.js} +1 -1
  418. package/dist/ionic/{p-d60342e3.js → p-d24f5d16.js} +1 -1
  419. package/dist/ionic/p-d9a384b9.entry.js +4 -0
  420. package/dist/ionic/p-ddda4235.system.js +4 -0
  421. package/dist/ionic/p-e5be3dfb.js +4 -0
  422. package/dist/ionic/p-e9fc0e09.system.entry.js +4 -0
  423. package/dist/ionic/{p-1f772e46.entry.js → p-eb660bf2.entry.js} +1 -1
  424. package/dist/ionic/{p-76256933.system.entry.js → p-ebcb711f.system.entry.js} +1 -1
  425. package/dist/ionic/{p-444c76ee.system.entry.js → p-ec46d513.system.entry.js} +1 -1
  426. package/dist/ionic/{p-8635f5e6.system.js → p-ec680233.system.js} +1 -1
  427. package/dist/ionic/{p-8884ee37.system.entry.js → p-ec85f7f5.system.entry.js} +1 -1
  428. package/dist/ionic/{p-9ea607bd.system.js → p-ed6d9792.system.js} +2 -2
  429. package/dist/ionic/{p-d4a694c5.system.entry.js → p-edd8f5f9.system.entry.js} +1 -1
  430. package/dist/ionic/p-ee9841a3.js +4 -0
  431. package/dist/ionic/{p-62bb4a33.system.entry.js → p-ef0b1f01.system.entry.js} +1 -1
  432. package/dist/ionic/{p-cc35239f.entry.js → p-f0e78055.entry.js} +1 -1
  433. package/dist/ionic/p-f0fe3aa8.system.js +4 -0
  434. package/dist/ionic/p-f1cc6c18.system.entry.js +4 -0
  435. package/dist/ionic/{p-505121c4.entry.js → p-f32b396b.entry.js} +1 -1
  436. package/dist/ionic/{p-1b57577b.entry.js → p-f4519e12.entry.js} +1 -1
  437. package/dist/ionic/{p-d7cde2c6.entry.js → p-f48ea493.entry.js} +1 -1
  438. package/dist/ionic/{p-4384e5de.system.entry.js → p-f4e225e1.system.entry.js} +1 -1
  439. package/dist/ionic/{p-96503a77.entry.js → p-f9286a3b.entry.js} +1 -1
  440. package/dist/ionic/p-fa23b5f4.entry.js +4 -0
  441. package/dist/ionic/p-fb229af3.entry.js +4 -0
  442. package/dist/ionic/p-fe4b96e6.entry.js +4 -0
  443. package/dist/ionic/p-fe66d1a5.entry.js +4 -0
  444. package/dist/ionic/p-ffd50854.system.entry.js +4 -0
  445. package/dist/types/components/app/app.d.ts +0 -2
  446. package/dist/types/global/ionic-global.d.ts +2 -0
  447. package/dist/types/utils/focus-visible.d.ts +1 -0
  448. package/hydrate/index.js +142 -138
  449. package/hydrate/index.mjs +142 -138
  450. package/package.json +1 -1
  451. package/components/hardware-back-button.js +0 -115
  452. package/components/index8.js +0 -128
  453. package/dist/cjs/hardware-back-button-1f867b1e.js +0 -122
  454. package/dist/cjs/index-5915f9b3.js +0 -38
  455. package/dist/cjs/index-c8d52405.js +0 -10
  456. package/dist/cjs/ionic-global-86430f67.js +0 -237
  457. package/dist/esm/hardware-back-button-8e2c1354.js +0 -116
  458. package/dist/esm/index-79b30591.js +0 -167
  459. package/dist/esm/index-9b0d46f4.js +0 -34
  460. package/dist/esm/index-a5d50daf.js +0 -7
  461. package/dist/esm/ionic-global-8f9440ec.js +0 -231
  462. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  463. package/dist/esm-es5/app-globals-b9f6e516.js +0 -4
  464. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  465. package/dist/esm-es5/data-ae11fd43.js +0 -4
  466. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  467. package/dist/esm-es5/hardware-back-button-8e2c1354.js +0 -4
  468. package/dist/esm-es5/index-5cc724f3.js +0 -4
  469. package/dist/esm-es5/index-79b30591.js +0 -4
  470. package/dist/esm-es5/index-8579e7fd.js +0 -4
  471. package/dist/esm-es5/index-97b0ab3f.js +0 -4
  472. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  473. package/dist/esm-es5/index-a5d50daf.js +0 -4
  474. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  475. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  476. package/dist/esm-es5/ionic-global-8f9440ec.js +0 -4
  477. package/dist/esm-es5/ios.transition-beb96e76.js +0 -4
  478. package/dist/esm-es5/keyboard-52278bd7.js +0 -4
  479. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  480. package/dist/esm-es5/md.transition-d5aa5703.js +0 -4
  481. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  482. package/dist/esm-es5/overlays-2ea57630.js +0 -4
  483. package/dist/esm-es5/status-tap-a264a37f.js +0 -4
  484. package/dist/ionic/p-06e58c4e.js +0 -4
  485. package/dist/ionic/p-06fbb310.entry.js +0 -4
  486. package/dist/ionic/p-06fee233.js +0 -4
  487. package/dist/ionic/p-08cfccad.js +0 -4
  488. package/dist/ionic/p-0c06e09b.system.js +0 -4
  489. package/dist/ionic/p-11810112.system.entry.js +0 -4
  490. package/dist/ionic/p-1277436d.system.entry.js +0 -4
  491. package/dist/ionic/p-14c81a66.system.js +0 -4
  492. package/dist/ionic/p-15ef22b3.system.entry.js +0 -4
  493. package/dist/ionic/p-16917251.entry.js +0 -4
  494. package/dist/ionic/p-184f2f63.system.entry.js +0 -4
  495. package/dist/ionic/p-1cacb881.system.entry.js +0 -4
  496. package/dist/ionic/p-1d3ea8c1.entry.js +0 -4
  497. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  498. package/dist/ionic/p-1dfe9aa7.entry.js +0 -4
  499. package/dist/ionic/p-1e4371bd.js +0 -4
  500. package/dist/ionic/p-2056f176.js +0 -4
  501. package/dist/ionic/p-2afb9310.entry.js +0 -4
  502. package/dist/ionic/p-2b7827c7.js +0 -4
  503. package/dist/ionic/p-2d93a7e5.system.js +0 -4
  504. package/dist/ionic/p-2de64a3f.system.entry.js +0 -4
  505. package/dist/ionic/p-303f64cd.entry.js +0 -4
  506. package/dist/ionic/p-330d7e08.entry.js +0 -4
  507. package/dist/ionic/p-34a6b5a7.entry.js +0 -4
  508. package/dist/ionic/p-382345db.system.entry.js +0 -4
  509. package/dist/ionic/p-46121609.entry.js +0 -4
  510. package/dist/ionic/p-49ffacc0.system.entry.js +0 -4
  511. package/dist/ionic/p-4ad3a2de.entry.js +0 -4
  512. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  513. package/dist/ionic/p-4e6aa78c.entry.js +0 -4
  514. package/dist/ionic/p-4fa22b8c.entry.js +0 -4
  515. package/dist/ionic/p-50c38a28.system.entry.js +0 -4
  516. package/dist/ionic/p-52fce436.entry.js +0 -4
  517. package/dist/ionic/p-5749f245.system.entry.js +0 -4
  518. package/dist/ionic/p-586fa05c.system.js +0 -4
  519. package/dist/ionic/p-5ae3649f.system.entry.js +0 -4
  520. package/dist/ionic/p-669c0566.system.js +0 -4
  521. package/dist/ionic/p-66aa91c8.js +0 -4
  522. package/dist/ionic/p-6be871f6.system.entry.js +0 -4
  523. package/dist/ionic/p-6e444bfa.entry.js +0 -4
  524. package/dist/ionic/p-6e4ff107.system.entry.js +0 -4
  525. package/dist/ionic/p-7123a4b9.system.js +0 -4
  526. package/dist/ionic/p-72812e99.js +0 -4
  527. package/dist/ionic/p-72bc8a1c.js +0 -4
  528. package/dist/ionic/p-792919fd.system.js +0 -4
  529. package/dist/ionic/p-7b30edcc.js +0 -4
  530. package/dist/ionic/p-82ad7191.entry.js +0 -4
  531. package/dist/ionic/p-8302d21c.system.entry.js +0 -4
  532. package/dist/ionic/p-840cdfe8.entry.js +0 -4
  533. package/dist/ionic/p-86895ed7.system.js +0 -4
  534. package/dist/ionic/p-8c1f6a17.entry.js +0 -4
  535. package/dist/ionic/p-8d460677.entry.js +0 -4
  536. package/dist/ionic/p-8ed4381f.js +0 -4
  537. package/dist/ionic/p-96cc4814.js +0 -4
  538. package/dist/ionic/p-985f06f3.entry.js +0 -4
  539. package/dist/ionic/p-98a7aade.js +0 -4
  540. package/dist/ionic/p-9a64afc9.entry.js +0 -4
  541. package/dist/ionic/p-9a957058.system.entry.js +0 -4
  542. package/dist/ionic/p-9beb3fad.js +0 -4
  543. package/dist/ionic/p-9cd1f569.system.js +0 -4
  544. package/dist/ionic/p-a15ddedb.system.js +0 -4
  545. package/dist/ionic/p-ab44e74e.entry.js +0 -4
  546. package/dist/ionic/p-abe101da.system.js +0 -4
  547. package/dist/ionic/p-b032d7ad.system.entry.js +0 -4
  548. package/dist/ionic/p-b0d099be.js +0 -4
  549. package/dist/ionic/p-b0fea0ab.system.entry.js +0 -4
  550. package/dist/ionic/p-b6f09d60.system.entry.js +0 -4
  551. package/dist/ionic/p-bb013b6c.system.entry.js +0 -4
  552. package/dist/ionic/p-be11fb42.system.js +0 -4
  553. package/dist/ionic/p-be32a527.entry.js +0 -4
  554. package/dist/ionic/p-c468af8a.system.js +0 -4
  555. package/dist/ionic/p-c61cc894.js +0 -4
  556. package/dist/ionic/p-c655f9cc.js +0 -4
  557. package/dist/ionic/p-c7b3353c.entry.js +0 -4
  558. package/dist/ionic/p-ccfe13f3.entry.js +0 -4
  559. package/dist/ionic/p-cdb1dc2f.system.entry.js +0 -4
  560. package/dist/ionic/p-d232cc6e.system.entry.js +0 -4
  561. package/dist/ionic/p-d47265c8.js +0 -4
  562. package/dist/ionic/p-d690dc50.system.entry.js +0 -4
  563. package/dist/ionic/p-d6b5bfa3.entry.js +0 -4
  564. package/dist/ionic/p-d81e5138.entry.js +0 -4
  565. package/dist/ionic/p-da5af268.system.entry.js +0 -4
  566. package/dist/ionic/p-e8cd5bde.js +0 -4
  567. package/dist/ionic/p-ebe1326c.system.js +0 -4
  568. package/dist/ionic/p-ed76b287.entry.js +0 -4
  569. package/dist/ionic/p-f8fbf20f.system.entry.js +0 -4
  570. package/dist/ionic/p-ff417d5d.system.entry.js +0 -4
  571. package/dist/ionic/p-ff4b7e40.system.js +0 -4
package/hydrate/index.js CHANGED
@@ -2614,7 +2614,7 @@ const focusVisibleElement = (el) => {
2614
2614
  * which will let us explicitly set the elements to focus.
2615
2615
  */
2616
2616
  if (el.classList.contains('ion-focusable')) {
2617
- const app = el.closest('ion-app');
2617
+ const app = el.closest('ion-app, .ion-app');
2618
2618
  if (app) {
2619
2619
  app.setFocus([el]);
2620
2620
  }
@@ -2776,6 +2776,55 @@ class Config {
2776
2776
  }
2777
2777
  const config = /*@__PURE__*/ new Config();
2778
2778
 
2779
+ const win$1 = typeof window !== 'undefined' ? window : undefined;
2780
+ const doc = typeof document !== 'undefined' ? document : undefined;
2781
+
2782
+ /**
2783
+ * CloseWatcher is a newer API that lets
2784
+ * use detect the hardware back button event
2785
+ * in a web browser: https://caniuse.com/?search=closewatcher
2786
+ * However, not every browser supports it yet.
2787
+ *
2788
+ * This needs to be a function so that we can
2789
+ * check the config once it has been set.
2790
+ * Otherwise, this code would be evaluated the
2791
+ * moment this file is evaluated which could be
2792
+ * before the config is set.
2793
+ */
2794
+ const shouldUseCloseWatcher = () => config.get('experimentalCloseWatcher', false) && win$1 !== undefined && 'CloseWatcher' in win$1;
2795
+ const OVERLAY_BACK_BUTTON_PRIORITY = 100;
2796
+ const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
2797
+
2798
+ /**
2799
+ * Logs a warning to the console with an Ionic prefix
2800
+ * to indicate the library that is warning the developer.
2801
+ *
2802
+ * @param message - The string message to be logged to the console.
2803
+ */
2804
+ const printIonWarning = (message, ...params) => {
2805
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
2806
+ };
2807
+ /*
2808
+ * Logs an error to the console with an Ionic prefix
2809
+ * to indicate the library that is warning the developer.
2810
+ *
2811
+ * @param message - The string message to be logged to the console.
2812
+ * @param params - Additional arguments to supply to the console.error.
2813
+ */
2814
+ const printIonError = (message, ...params) => {
2815
+ return console.error(`[Ionic Error]: ${message}`, ...params);
2816
+ };
2817
+ /**
2818
+ * Prints an error informing developers that an implementation requires an element to be used
2819
+ * within a specific selector.
2820
+ *
2821
+ * @param el The web component element this is requiring the element.
2822
+ * @param targetSelectors The selector or selectors that were not found.
2823
+ */
2824
+ const printRequiredElementError = (el, ...targetSelectors) => {
2825
+ return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
2826
+ };
2827
+
2779
2828
  const getPlatforms = (win) => setupPlatforms(win);
2780
2829
  const isPlatform = (winOrPlatform, platform) => {
2781
2830
  if (typeof winOrPlatform === 'string') {
@@ -3216,36 +3265,6 @@ class Accordion {
3216
3265
  }
3217
3266
  let accordionIds = 0;
3218
3267
 
3219
- /**
3220
- * Logs a warning to the console with an Ionic prefix
3221
- * to indicate the library that is warning the developer.
3222
- *
3223
- * @param message - The string message to be logged to the console.
3224
- */
3225
- const printIonWarning = (message, ...params) => {
3226
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3227
- };
3228
- /*
3229
- * Logs an error to the console with an Ionic prefix
3230
- * to indicate the library that is warning the developer.
3231
- *
3232
- * @param message - The string message to be logged to the console.
3233
- * @param params - Additional arguments to supply to the console.error.
3234
- */
3235
- const printIonError = (message, ...params) => {
3236
- return console.error(`[Ionic Error]: ${message}`, ...params);
3237
- };
3238
- /**
3239
- * Prints an error informing developers that an implementation requires an element to be used
3240
- * within a specific selector.
3241
- *
3242
- * @param el The web component element this is requiring the element.
3243
- * @param targetSelectors The selector or selectors that were not found.
3244
- */
3245
- const printRequiredElementError = (el, ...targetSelectors) => {
3246
- return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
3247
- };
3248
-
3249
3268
  const accordionGroupIosCss = ":host{display:block}:host(.accordion-group-expand-inset){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:16px;margin-bottom:16px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){border-bottom:none}";
3250
3269
  var IonAccordionGroupIosStyle0 = accordionGroupIosCss;
3251
3270
 
@@ -3484,9 +3503,6 @@ class AccordionGroup {
3484
3503
  }; }
3485
3504
  }
3486
3505
 
3487
- const win$1 = typeof window !== 'undefined' ? window : undefined;
3488
- const doc = typeof document !== 'undefined' ? document : undefined;
3489
-
3490
3506
  const getCapacitor = () => {
3491
3507
  if (win$1 !== undefined) {
3492
3508
  return win$1.Capacitor;
@@ -4461,22 +4477,6 @@ const focusElementInContext = (hostToFocus, fallbackElement) => {
4461
4477
  }
4462
4478
  };
4463
4479
 
4464
- /**
4465
- * CloseWatcher is a newer API that lets
4466
- * use detect the hardware back button event
4467
- * in a web browser: https://caniuse.com/?search=closewatcher
4468
- * However, not every browser supports it yet.
4469
- *
4470
- * This needs to be a function so that we can
4471
- * check the config once it has been set.
4472
- * Otherwise, this code would be evaluated the
4473
- * moment this file is evaluated which could be
4474
- * before the config is set.
4475
- */
4476
- const shouldUseCloseWatcher = () => config.get('experimentalCloseWatcher', false) && win$1 !== undefined && 'CloseWatcher' in win$1;
4477
- const OVERLAY_BACK_BUTTON_PRIORITY = 100;
4478
- const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
4479
-
4480
4480
  // TODO(FW-2832): types
4481
4481
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
4482
4482
  var _a;
@@ -4576,7 +4576,7 @@ const CoreDelegate = () => {
4576
4576
  * Get the root of the app and
4577
4577
  * add the overlay there.
4578
4578
  */
4579
- const app = document.querySelector('ion-app') || document.body;
4579
+ const app = document.querySelector('ion-app, .ion-app') || document.body;
4580
4580
  /**
4581
4581
  * Create a placeholder comment so that
4582
4582
  * we can return this component to where
@@ -5172,7 +5172,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
5172
5172
  return true;
5173
5173
  };
5174
5174
  const getAppRoot = (doc) => {
5175
- return doc.querySelector('ion-app') || doc.body;
5175
+ return doc.querySelector('ion-app, .ion-app') || doc.body;
5176
5176
  };
5177
5177
  const overlayAnimation = async (overlay, animationBuilder, baseEl, opts) => {
5178
5178
  // Make overlay visible in case it's hidden
@@ -7301,6 +7301,84 @@ const buttonClass$2 = (button) => {
7301
7301
  return Object.assign({ 'alert-button': true, 'ion-focusable': true, 'ion-activatable': true, [`alert-button-role-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
7302
7302
  };
7303
7303
 
7304
+ const ION_FOCUSED = 'ion-focused';
7305
+ const ION_FOCUSABLE = 'ion-focusable';
7306
+ const FOCUS_KEYS = [
7307
+ 'Tab',
7308
+ 'ArrowDown',
7309
+ 'Space',
7310
+ 'Escape',
7311
+ ' ',
7312
+ 'Shift',
7313
+ 'Enter',
7314
+ 'ArrowLeft',
7315
+ 'ArrowRight',
7316
+ 'ArrowUp',
7317
+ 'Home',
7318
+ 'End',
7319
+ ];
7320
+ let focusVisibleUtility = null;
7321
+ const getOrInitFocusVisibleUtility = () => {
7322
+ if (!focusVisibleUtility) {
7323
+ focusVisibleUtility = startFocusVisible();
7324
+ }
7325
+ return focusVisibleUtility;
7326
+ };
7327
+ const startFocusVisible = (rootEl) => {
7328
+ let currentFocus = [];
7329
+ let keyboardMode = true;
7330
+ const ref = rootEl ? rootEl.shadowRoot : document;
7331
+ const root = rootEl ? rootEl : document.body;
7332
+ const setFocus = (elements) => {
7333
+ currentFocus.forEach((el) => el.classList.remove(ION_FOCUSED));
7334
+ elements.forEach((el) => el.classList.add(ION_FOCUSED));
7335
+ currentFocus = elements;
7336
+ };
7337
+ const pointerDown = () => {
7338
+ keyboardMode = false;
7339
+ setFocus([]);
7340
+ };
7341
+ const onKeydown = (ev) => {
7342
+ keyboardMode = FOCUS_KEYS.includes(ev.key);
7343
+ if (!keyboardMode) {
7344
+ setFocus([]);
7345
+ }
7346
+ };
7347
+ const onFocusin = (ev) => {
7348
+ if (keyboardMode && ev.composedPath !== undefined) {
7349
+ const toFocus = ev.composedPath().filter((el) => {
7350
+ // TODO(FW-2832): type
7351
+ if (el.classList) {
7352
+ return el.classList.contains(ION_FOCUSABLE);
7353
+ }
7354
+ return false;
7355
+ });
7356
+ setFocus(toFocus);
7357
+ }
7358
+ };
7359
+ const onFocusout = () => {
7360
+ if (ref.activeElement === root) {
7361
+ setFocus([]);
7362
+ }
7363
+ };
7364
+ ref.addEventListener('keydown', onKeydown);
7365
+ ref.addEventListener('focusin', onFocusin);
7366
+ ref.addEventListener('focusout', onFocusout);
7367
+ ref.addEventListener('touchstart', pointerDown, { passive: true });
7368
+ ref.addEventListener('mousedown', pointerDown);
7369
+ const destroy = () => {
7370
+ ref.removeEventListener('keydown', onKeydown);
7371
+ ref.removeEventListener('focusin', onFocusin);
7372
+ ref.removeEventListener('focusout', onFocusout);
7373
+ ref.removeEventListener('touchstart', pointerDown);
7374
+ ref.removeEventListener('mousedown', pointerDown);
7375
+ };
7376
+ return {
7377
+ destroy,
7378
+ setFocus,
7379
+ };
7380
+ };
7381
+
7304
7382
  const appCss = "html.plt-mobile ion-app{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.plt-mobile ion-app [contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}ion-app.force-statusbar-padding{--ion-safe-area-top:20px}";
7305
7383
  var IonAppStyle0 = appCss;
7306
7384
 
@@ -7308,8 +7386,6 @@ class App {
7308
7386
  constructor(hostRef) {
7309
7387
  registerInstance(this, hostRef);
7310
7388
  }
7311
- componentDidLoad() {
7312
- }
7313
7389
  /**
7314
7390
  * @internal
7315
7391
  * Used to set focus on an element that uses `ion-focusable`.
@@ -7321,13 +7397,12 @@ class App {
7321
7397
  * presented as a result of keyboard action.)
7322
7398
  */
7323
7399
  async setFocus(elements) {
7324
- if (this.focusVisible) {
7325
- this.focusVisible.setFocus(elements);
7326
- }
7400
+ const focusVisible = getOrInitFocusVisibleUtility();
7401
+ focusVisible.setFocus(elements);
7327
7402
  }
7328
7403
  render() {
7329
7404
  const mode = getIonMode$1(this);
7330
- return (hAsync(Host, { key: 'a562850f242d9d45573e35efdd4bd178254677ef', class: {
7405
+ return (hAsync(Host, { key: '4773923a95e44577ff634c0ae6f1a56f41b54088', class: {
7331
7406
  [mode]: true,
7332
7407
  'ion-page': true,
7333
7408
  'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
@@ -9099,7 +9174,7 @@ const getPageElement = (el) => {
9099
9174
  * between the popover and the edges of the screen. But if the popover contains
9100
9175
  * its own page element, we should use that instead.
9101
9176
  */
9102
- const page = el.closest('ion-app, ion-page, .ion-page, page-inner, .popover-content');
9177
+ const page = el.closest('ion-app, .ion-app, ion-page, .ion-page, page-inner, .popover-content');
9103
9178
  if (page) {
9104
9179
  return page;
9105
9180
  }
@@ -9133,77 +9208,6 @@ const updateScrollDetail = (detail, el, timestamp, shouldStart) => {
9133
9208
  }
9134
9209
  };
9135
9210
 
9136
- const ION_FOCUSED = 'ion-focused';
9137
- const ION_FOCUSABLE = 'ion-focusable';
9138
- const FOCUS_KEYS = [
9139
- 'Tab',
9140
- 'ArrowDown',
9141
- 'Space',
9142
- 'Escape',
9143
- ' ',
9144
- 'Shift',
9145
- 'Enter',
9146
- 'ArrowLeft',
9147
- 'ArrowRight',
9148
- 'ArrowUp',
9149
- 'Home',
9150
- 'End',
9151
- ];
9152
- const startFocusVisible = (rootEl) => {
9153
- let currentFocus = [];
9154
- let keyboardMode = true;
9155
- const ref = rootEl ? rootEl.shadowRoot : document;
9156
- const root = rootEl ? rootEl : document.body;
9157
- const setFocus = (elements) => {
9158
- currentFocus.forEach((el) => el.classList.remove(ION_FOCUSED));
9159
- elements.forEach((el) => el.classList.add(ION_FOCUSED));
9160
- currentFocus = elements;
9161
- };
9162
- const pointerDown = () => {
9163
- keyboardMode = false;
9164
- setFocus([]);
9165
- };
9166
- const onKeydown = (ev) => {
9167
- keyboardMode = FOCUS_KEYS.includes(ev.key);
9168
- if (!keyboardMode) {
9169
- setFocus([]);
9170
- }
9171
- };
9172
- const onFocusin = (ev) => {
9173
- if (keyboardMode && ev.composedPath !== undefined) {
9174
- const toFocus = ev.composedPath().filter((el) => {
9175
- // TODO(FW-2832): type
9176
- if (el.classList) {
9177
- return el.classList.contains(ION_FOCUSABLE);
9178
- }
9179
- return false;
9180
- });
9181
- setFocus(toFocus);
9182
- }
9183
- };
9184
- const onFocusout = () => {
9185
- if (ref.activeElement === root) {
9186
- setFocus([]);
9187
- }
9188
- };
9189
- ref.addEventListener('keydown', onKeydown);
9190
- ref.addEventListener('focusin', onFocusin);
9191
- ref.addEventListener('focusout', onFocusout);
9192
- ref.addEventListener('touchstart', pointerDown, { passive: true });
9193
- ref.addEventListener('mousedown', pointerDown);
9194
- const destroy = () => {
9195
- ref.removeEventListener('keydown', onKeydown);
9196
- ref.removeEventListener('focusin', onFocusin);
9197
- ref.removeEventListener('focusout', onFocusout);
9198
- ref.removeEventListener('touchstart', pointerDown);
9199
- ref.removeEventListener('mousedown', pointerDown);
9200
- };
9201
- return {
9202
- destroy,
9203
- setFocus,
9204
- };
9205
- };
9206
-
9207
9211
  /**
9208
9212
  * Returns true if the selected day is equal to the reference day
9209
9213
  */
@@ -13434,7 +13438,7 @@ const getResizeContainer = (resizeMode) => {
13434
13438
  * on that. In the event `ion-app` is not available then
13435
13439
  * we can fall back to `body`.
13436
13440
  */
13437
- const ionApp = doc.querySelector('ion-app');
13441
+ const ionApp = doc.querySelector('ion-app, .ion-app');
13438
13442
  return ionApp !== null && ionApp !== void 0 ? ionApp : doc.body;
13439
13443
  };
13440
13444
  /**
@@ -13621,7 +13625,7 @@ class Footer {
13621
13625
  const hasFade = collapse === 'fade';
13622
13626
  this.destroyCollapsibleFooter();
13623
13627
  if (hasFade) {
13624
- const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
13628
+ const pageEl = this.el.closest('ion-app,.ion-app,ion-page,.ion-page,page-inner');
13625
13629
  const contentEl = pageEl ? findIonContent(pageEl) : null;
13626
13630
  if (!contentEl) {
13627
13631
  printIonContentErrorMsg(this.el);
@@ -13680,7 +13684,7 @@ class Footer {
13680
13684
  const mode = getIonMode$1(this);
13681
13685
  const tabs = this.el.closest('ion-tabs');
13682
13686
  const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
13683
- return (hAsync(Host, { key: '5da19dc38ba73e1ddfd1bef3ebd485105d77c751', role: "contentinfo", class: {
13687
+ return (hAsync(Host, { key: '1ccb49da6f7c9f1f883904ae4b931fac5f341216', role: "contentinfo", class: {
13684
13688
  [mode]: true,
13685
13689
  // Used internally for styling
13686
13690
  [`footer-${mode}`]: true,
@@ -13688,7 +13692,7 @@ class Footer {
13688
13692
  [`footer-translucent-${mode}`]: translucent,
13689
13693
  ['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
13690
13694
  [`footer-collapse-${collapse}`]: collapse !== undefined,
13691
- } }, mode === 'ios' && translucent && hAsync("div", { key: 'fafad08090a33d8c4e8a5b63d61929dcb89aab47', class: "footer-background" }), hAsync("slot", { key: 'e0a443d346afa55e4317c0bc1263fdbe3c619559' })));
13695
+ } }, mode === 'ios' && translucent && hAsync("div", { key: 'a910070df4e5faee7b135d10364510c612cd2587', class: "footer-background" }), hAsync("slot", { key: '1507567059072ecf7243d6a304079c52eb58455f' })));
13692
13696
  }
13693
13697
  get el() { return getElement(this); }
13694
13698
  static get style() { return {
@@ -13962,7 +13966,7 @@ class Header {
13962
13966
  const hasFade = collapse === 'fade';
13963
13967
  this.destroyCollapsibleHeader();
13964
13968
  if (hasCondense) {
13965
- const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
13969
+ const pageEl = this.el.closest('ion-app,.ion-app,ion-page,.ion-page,page-inner');
13966
13970
  const contentEl = pageEl ? findIonContent(pageEl) : null;
13967
13971
  // Cloned elements are always needed in iOS transition
13968
13972
  writeTask(() => {
@@ -13973,7 +13977,7 @@ class Header {
13973
13977
  await this.setupCondenseHeader(contentEl, pageEl);
13974
13978
  }
13975
13979
  else if (hasFade) {
13976
- const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
13980
+ const pageEl = this.el.closest('ion-app,.ion-app,ion-page,.ion-page,page-inner');
13977
13981
  const contentEl = pageEl ? findIonContent(pageEl) : null;
13978
13982
  if (!contentEl) {
13979
13983
  printIonContentErrorMsg(this.el);
@@ -14053,14 +14057,14 @@ class Header {
14053
14057
  const collapse = this.collapse || 'none';
14054
14058
  // banner role must be at top level, so remove role if inside a menu
14055
14059
  const roleType = hostContext('ion-menu', this.el) ? 'none' : 'banner';
14056
- return (hAsync(Host, Object.assign({ key: 'c687314ef290793a9d633ad20cfc5eeb47621e31', role: roleType, class: {
14060
+ return (hAsync(Host, Object.assign({ key: '6a248ea9b21b1122084069ba99477cdde3322158', role: roleType, class: {
14057
14061
  [mode]: true,
14058
14062
  // Used internally for styling
14059
14063
  [`header-${mode}`]: true,
14060
14064
  [`header-translucent`]: this.translucent,
14061
14065
  [`header-collapse-${collapse}`]: true,
14062
14066
  [`header-translucent-${mode}`]: this.translucent,
14063
- } }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: 'b429996046082405a91e7c23f95516db0b736f12', class: "header-background" }), hAsync("slot", { key: 'e17a8965f8d3a33c1bfcb056c153d8242e5229fa' })));
14067
+ } }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: 'c3e8bc6dfacd2df1a2611a660dcabc3b876dd3f9', class: "header-background" }), hAsync("slot", { key: '6f4829f92a05b97ae7d6e1ac2141934ee6041c4a' })));
14064
14068
  }
14065
14069
  get el() { return getElement(this); }
14066
14070
  static get style() { return {