@ionic/core 8.3.1-dev.11726258029.1014159b → 8.3.1-dev.11727904181.1070a434

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 (631) hide show
  1. package/components/alert.js +2 -1
  2. package/components/animation.js +1 -1
  3. package/components/button.js +1 -2
  4. package/components/capacitor.js +1 -1
  5. package/components/config2.js +79 -0
  6. package/components/data.js +1 -1
  7. package/components/focus-visible.js +8 -1
  8. package/components/framework-delegate.js +3 -1
  9. package/components/helpers.js +1 -1
  10. package/components/index2.js +2 -2
  11. package/components/index4.js +1 -4
  12. package/components/index5.js +27 -3
  13. package/components/index6.js +114 -20
  14. package/components/index7.js +163 -27
  15. package/components/input-shims.js +2 -2
  16. package/components/input.utils.js +1 -2
  17. package/components/ion-accordion-group.js +1 -2
  18. package/components/ion-accordion.js +3 -2
  19. package/components/ion-app.js +7 -75
  20. package/components/ion-back-button.js +3 -2
  21. package/components/ion-breadcrumb.js +1 -1
  22. package/components/ion-content.js +1 -1
  23. package/components/ion-datetime-button.js +1 -2
  24. package/components/ion-datetime.js +2 -3
  25. package/components/ion-fab-button.js +1 -1
  26. package/components/ion-footer.js +4 -4
  27. package/components/ion-header.js +5 -5
  28. package/components/ion-infinite-scroll-content.js +2 -1
  29. package/components/ion-infinite-scroll.js +1 -1
  30. package/components/ion-input-password-toggle.js +2 -3
  31. package/components/ion-input.js +1 -1
  32. package/components/ion-item-sliding.js +1 -1
  33. package/components/ion-loading.js +2 -1
  34. package/components/ion-menu-button.js +3 -2
  35. package/components/ion-menu.js +2 -2
  36. package/components/ion-modal.js +3 -4
  37. package/components/ion-nav.js +2 -2
  38. package/components/ion-picker-legacy.js +1 -2
  39. package/components/ion-progress-bar.js +2 -1
  40. package/components/ion-range.js +2 -3
  41. package/components/ion-refresher-content.js +3 -2
  42. package/components/ion-refresher.js +1 -1
  43. package/components/ion-reorder-group.js +1 -1
  44. package/components/ion-reorder.js +1 -1
  45. package/components/ion-router-outlet.js +2 -1
  46. package/components/ion-searchbar.js +3 -2
  47. package/components/ion-select.js +1 -1
  48. package/components/ion-skeleton-text.js +2 -1
  49. package/components/ion-tab-button.js +2 -1
  50. package/components/ion-toast.js +2 -3
  51. package/components/ion-toggle.js +3 -2
  52. package/components/ionic-global.js +215 -72
  53. package/components/item.js +1 -1
  54. package/components/keyboard-controller.js +2 -2
  55. package/components/notch-controller.js +1 -1
  56. package/components/overlays.js +3 -5
  57. package/components/picker-column.js +1 -2
  58. package/components/popover.js +1 -2
  59. package/components/spinner.js +2 -1
  60. package/components/status-tap.js +1 -1
  61. package/dist/cjs/{animation-b4fdf128.js → animation-79f60b24.js} +2 -2
  62. package/dist/cjs/{app-globals-9d795e44.js → app-globals-da858d53.js} +1 -1
  63. package/dist/cjs/{button-active-4115dc12.js → button-active-d92fdc20.js} +2 -2
  64. package/dist/cjs/{capacitor-c04564bf.js → capacitor-6d32aa8f.js} +3 -3
  65. package/dist/cjs/config-aff4ff52.js +84 -0
  66. package/dist/cjs/{data-21dc0f81.js → data-5e41413c.js} +3 -3
  67. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  68. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-dd8c8308.js} +4 -2
  69. package/dist/cjs/{haptic-f6b37aa3.js → haptic-48302ce8.js} +1 -1
  70. package/dist/cjs/{helpers-afaa9001.js → helpers-acd6c477.js} +1 -1
  71. package/dist/cjs/{index-248835d7.js → index-36089f7c.js} +7 -10
  72. package/dist/cjs/{index-5b6a7459.js → index-4c1435d8.js} +3 -3
  73. package/dist/cjs/{index-42dd5e74.js → index-b9e25ecd.js} +2 -8
  74. package/dist/cjs/{index-9509ecad.js → index-c66a0972.js} +9 -7
  75. package/dist/cjs/{index-44dacdce.js → index-e391e4f0.js} +12 -12
  76. package/dist/cjs/index.cjs.js +11 -13
  77. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-6e96b5d0.js} +18 -17
  78. package/dist/cjs/{input.utils-611cde0b.js → input.utils-3f4f0242.js} +4 -5
  79. package/dist/cjs/ion-accordion_2.cjs.entry.js +6 -6
  80. package/dist/cjs/ion-action-sheet.cjs.entry.js +10 -12
  81. package/dist/cjs/ion-alert.cjs.entry.js +13 -15
  82. package/dist/cjs/ion-app_8.cjs.entry.js +36 -105
  83. package/dist/cjs/ion-avatar_3.cjs.entry.js +3 -2
  84. package/dist/cjs/ion-back-button.cjs.entry.js +8 -7
  85. package/dist/cjs/ion-backdrop.cjs.entry.js +3 -2
  86. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +4 -3
  87. package/dist/cjs/ion-button_2.cjs.entry.js +7 -7
  88. package/dist/cjs/ion-card_5.cjs.entry.js +4 -3
  89. package/dist/cjs/ion-checkbox.cjs.entry.js +4 -3
  90. package/dist/cjs/ion-chip.cjs.entry.js +3 -2
  91. package/dist/cjs/ion-col_3.cjs.entry.js +3 -2
  92. package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -9
  93. package/dist/cjs/ion-datetime_3.cjs.entry.js +97 -99
  94. package/dist/cjs/ion-fab_3.cjs.entry.js +4 -3
  95. package/dist/cjs/ion-img.cjs.entry.js +4 -3
  96. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +9 -9
  97. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +8 -8
  98. package/dist/cjs/ion-input.cjs.entry.js +6 -7
  99. package/dist/cjs/ion-item-option_3.cjs.entry.js +5 -5
  100. package/dist/cjs/ion-item_8.cjs.entry.js +5 -4
  101. package/dist/cjs/ion-loading.cjs.entry.js +11 -13
  102. package/dist/cjs/ion-menu_3.cjs.entry.js +12 -14
  103. package/dist/cjs/ion-modal.cjs.entry.js +52 -54
  104. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -10
  105. package/dist/cjs/ion-picker-column-option.cjs.entry.js +4 -3
  106. package/dist/cjs/ion-picker-column.cjs.entry.js +7 -7
  107. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  108. package/dist/cjs/ion-popover.cjs.entry.js +11 -13
  109. package/dist/cjs/ion-progress-bar.cjs.entry.js +5 -4
  110. package/dist/cjs/ion-radio_2.cjs.entry.js +4 -3
  111. package/dist/cjs/ion-range.cjs.entry.js +10 -10
  112. package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -15
  113. package/dist/cjs/ion-reorder_2.cjs.entry.js +7 -8
  114. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -2
  115. package/dist/cjs/ion-route_4.cjs.entry.js +4 -3
  116. package/dist/cjs/ion-searchbar.cjs.entry.js +6 -5
  117. package/dist/cjs/ion-segment_2.cjs.entry.js +4 -3
  118. package/dist/cjs/ion-select_3.cjs.entry.js +7 -9
  119. package/dist/cjs/ion-spinner.cjs.entry.js +5 -4
  120. package/dist/cjs/ion-split-pane.cjs.entry.js +3 -2
  121. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +8 -8
  122. package/dist/cjs/ion-tab_2.cjs.entry.js +4 -3
  123. package/dist/cjs/ion-text.cjs.entry.js +3 -2
  124. package/dist/cjs/ion-textarea.cjs.entry.js +6 -7
  125. package/dist/cjs/ion-toast.cjs.entry.js +35 -37
  126. package/dist/cjs/ion-toggle.cjs.entry.js +7 -7
  127. package/dist/cjs/ionic-global-e4b78f51.js +387 -0
  128. package/dist/cjs/ionic.cjs.js +5 -4
  129. package/dist/cjs/{ios.transition-c28ff3cc.js → ios.transition-ecdbe79a.js} +6 -7
  130. package/dist/cjs/{keyboard-af1bb365.js → keyboard-5494d9e7.js} +5 -3
  131. package/dist/cjs/{keyboard-0272231f.js → keyboard-9c8c3373.js} +1 -1
  132. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-3534c452.js} +9 -9
  133. package/dist/cjs/loader.cjs.js +4 -3
  134. package/dist/cjs/{md.transition-01295b30.js → md.transition-a2dbb62b.js} +6 -7
  135. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-b0da1dbc.js} +4 -4
  136. package/dist/cjs/{overlays-76ac42e7.js → overlays-2847add7.js} +17 -19
  137. package/dist/cjs/{status-tap-75c3a35d.js → status-tap-8d61febd.js} +5 -4
  138. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-13234294.js} +1 -1
  139. package/dist/collection/collection-manifest.json +2 -2
  140. package/dist/collection/components/app/app.js +5 -75
  141. package/dist/collection/components/content/content.js +1 -1
  142. package/dist/collection/components/footer/footer.js +3 -3
  143. package/dist/collection/components/header/header.js +4 -4
  144. package/dist/collection/components/input/input.js +1 -1
  145. package/dist/collection/components/searchbar/searchbar.js +1 -1
  146. package/dist/collection/global/ionic-global.js +70 -1
  147. package/dist/collection/utils/focus-visible.js +7 -0
  148. package/dist/collection/utils/framework-delegate.js +3 -1
  149. package/dist/collection/utils/helpers.js +1 -1
  150. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -1
  151. package/dist/collection/utils/overlays.js +1 -1
  152. package/dist/docs.json +109 -109
  153. package/dist/esm/{animation-eab5a4ca.js → animation-d5c468e5.js} +1 -1
  154. package/dist/esm/{app-globals-cef8aa6d.js → app-globals-b335b996.js} +1 -1
  155. package/dist/esm/{button-active-6700b8ee.js → button-active-f09c355a.js} +2 -2
  156. package/dist/esm/{capacitor-59395cbd.js → capacitor-1c6a7fef.js} +1 -1
  157. package/dist/esm/config-84eb9670.js +79 -0
  158. package/dist/esm/{data-ae11fd43.js → data-19c43db4.js} +1 -1
  159. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  160. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-99a12a5b.js} +4 -2
  161. package/dist/esm/{haptic-ac164e4c.js → haptic-b7d0305a.js} +1 -1
  162. package/dist/esm/{helpers-da915de8.js → helpers-b96cdeb7.js} +1 -1
  163. package/dist/esm/{index-deb1a83e.js → index-36b10f9a.js} +3 -6
  164. package/dist/esm/{index-42907296.js → index-39f85469.js} +6 -6
  165. package/dist/esm/{index-3ed04e6d.js → index-4e02bb5d.js} +2 -8
  166. package/{components/index9.js → dist/esm/index-83a2d51b.js} +4 -2
  167. package/dist/esm/{index-5cc724f3.js → index-c2e9334e.js} +2 -2
  168. package/dist/esm/index.js +11 -13
  169. package/dist/esm/{input-shims-0314bbe5.js → input-shims-876f0204.js} +7 -6
  170. package/dist/esm/{input.utils-09c71bc7.js → input.utils-26068718.js} +2 -3
  171. package/dist/esm/ion-accordion_2.entry.js +4 -4
  172. package/dist/esm/ion-action-sheet.entry.js +10 -12
  173. package/dist/esm/ion-alert.entry.js +10 -12
  174. package/dist/esm/ion-app_8.entry.js +23 -92
  175. package/dist/esm/ion-avatar_3.entry.js +3 -2
  176. package/dist/esm/ion-back-button.entry.js +4 -3
  177. package/dist/esm/ion-backdrop.entry.js +3 -2
  178. package/dist/esm/ion-breadcrumb_2.entry.js +4 -3
  179. package/dist/esm/ion-button_2.entry.js +4 -4
  180. package/dist/esm/ion-card_5.entry.js +4 -3
  181. package/dist/esm/ion-checkbox.entry.js +4 -3
  182. package/dist/esm/ion-chip.entry.js +3 -2
  183. package/dist/esm/ion-col_3.entry.js +3 -2
  184. package/dist/esm/ion-datetime-button.entry.js +5 -5
  185. package/dist/esm/ion-datetime_3.entry.js +11 -13
  186. package/dist/esm/ion-fab_3.entry.js +4 -3
  187. package/dist/esm/ion-img.entry.js +4 -3
  188. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  189. package/dist/esm/ion-input-password-toggle.entry.js +3 -3
  190. package/dist/esm/ion-input.entry.js +6 -7
  191. package/dist/esm/ion-item-option_3.entry.js +5 -5
  192. package/dist/esm/ion-item_8.entry.js +4 -3
  193. package/dist/esm/ion-loading.entry.js +7 -9
  194. package/dist/esm/ion-menu_3.entry.js +8 -10
  195. package/dist/esm/ion-modal.entry.js +12 -14
  196. package/dist/esm/ion-nav_2.entry.js +7 -7
  197. package/dist/esm/ion-picker-column-option.entry.js +4 -3
  198. package/dist/esm/ion-picker-column.entry.js +6 -6
  199. package/dist/esm/ion-picker.entry.js +2 -2
  200. package/dist/esm/ion-popover.entry.js +8 -10
  201. package/dist/esm/ion-progress-bar.entry.js +4 -3
  202. package/dist/esm/ion-radio_2.entry.js +4 -3
  203. package/dist/esm/ion-range.entry.js +5 -5
  204. package/dist/esm/ion-refresher_2.entry.js +8 -9
  205. package/dist/esm/ion-reorder_2.entry.js +7 -8
  206. package/dist/esm/ion-ripple-effect.entry.js +3 -2
  207. package/dist/esm/ion-route_4.entry.js +4 -3
  208. package/dist/esm/ion-searchbar.entry.js +4 -3
  209. package/dist/esm/ion-segment_2.entry.js +4 -3
  210. package/dist/esm/ion-select_3.entry.js +7 -9
  211. package/dist/esm/ion-spinner.entry.js +3 -2
  212. package/dist/esm/ion-split-pane.entry.js +3 -2
  213. package/dist/esm/ion-tab-bar_2.entry.js +7 -7
  214. package/dist/esm/ion-tab_2.entry.js +4 -3
  215. package/dist/esm/ion-text.entry.js +3 -2
  216. package/dist/esm/ion-textarea.entry.js +6 -7
  217. package/dist/esm/ion-toast.entry.js +7 -9
  218. package/dist/esm/ion-toggle.entry.js +6 -6
  219. package/dist/esm/ionic-global-1b15603f.js +374 -0
  220. package/dist/esm/ionic.js +6 -5
  221. package/dist/esm/{ios.transition-903646a5.js → ios.transition-18317bbc.js} +6 -7
  222. package/dist/esm/{keyboard-73175e24.js → keyboard-8fb7a65a.js} +1 -1
  223. package/dist/esm/{keyboard-52278bd7.js → keyboard-bdec136d.js} +5 -3
  224. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-12d10050.js} +3 -3
  225. package/dist/esm/loader.js +5 -4
  226. package/dist/esm/{md.transition-92c7f8a6.js → md.transition-8661f3c2.js} +6 -7
  227. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-39833b21.js} +2 -2
  228. package/dist/esm/{overlays-d1a2f8a8.js → overlays-5d12569d.js} +5 -7
  229. package/dist/esm/{status-tap-97e323a9.js → status-tap-e6919a78.js} +5 -4
  230. package/dist/esm/{swipe-back-e5394307.js → swipe-back-1c5e6095.js} +1 -1
  231. package/dist/esm-es5/animation-d5c468e5.js +4 -0
  232. package/dist/esm-es5/app-globals-b335b996.js +4 -0
  233. package/dist/esm-es5/{button-active-6700b8ee.js → button-active-f09c355a.js} +1 -1
  234. package/dist/esm-es5/capacitor-1c6a7fef.js +4 -0
  235. package/dist/esm-es5/config-84eb9670.js +4 -0
  236. package/dist/esm-es5/data-19c43db4.js +4 -0
  237. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  238. package/dist/esm-es5/framework-delegate-99a12a5b.js +4 -0
  239. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-b7d0305a.js} +1 -1
  240. package/dist/esm-es5/{helpers-da915de8.js → helpers-b96cdeb7.js} +1 -1
  241. package/dist/esm-es5/index-36b10f9a.js +4 -0
  242. package/dist/esm-es5/index-39f85469.js +4 -0
  243. package/dist/esm-es5/index-4e02bb5d.js +5 -0
  244. package/dist/esm-es5/{index-79b30591.js → index-83a2d51b.js} +1 -1
  245. package/dist/esm-es5/index-c2e9334e.js +4 -0
  246. package/dist/esm-es5/index.js +1 -1
  247. package/dist/esm-es5/input-shims-876f0204.js +4 -0
  248. package/dist/esm-es5/input.utils-26068718.js +4 -0
  249. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  250. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  251. package/dist/esm-es5/ion-alert.entry.js +1 -1
  252. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  253. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  254. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  255. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  256. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  257. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  258. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  259. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  260. package/dist/esm-es5/ion-chip.entry.js +1 -1
  261. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  262. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  263. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  264. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  265. package/dist/esm-es5/ion-img.entry.js +1 -1
  266. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  267. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  268. package/dist/esm-es5/ion-input.entry.js +1 -1
  269. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  270. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  271. package/dist/esm-es5/ion-loading.entry.js +1 -1
  272. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  273. package/dist/esm-es5/ion-modal.entry.js +1 -1
  274. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  275. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  276. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  277. package/dist/esm-es5/ion-picker.entry.js +1 -1
  278. package/dist/esm-es5/ion-popover.entry.js +1 -1
  279. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  280. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  281. package/dist/esm-es5/ion-range.entry.js +1 -1
  282. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  283. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  284. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  285. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  286. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  287. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  288. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  289. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  290. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  291. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  292. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  293. package/dist/esm-es5/ion-text.entry.js +1 -1
  294. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  295. package/dist/esm-es5/ion-toast.entry.js +1 -1
  296. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  297. package/dist/esm-es5/ionic-global-1b15603f.js +4 -0
  298. package/dist/esm-es5/ionic.js +1 -1
  299. package/dist/esm-es5/ios.transition-18317bbc.js +4 -0
  300. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-8fb7a65a.js} +1 -1
  301. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-bdec136d.js} +1 -1
  302. package/dist/esm-es5/keyboard-controller-12d10050.js +4 -0
  303. package/dist/esm-es5/loader.js +1 -1
  304. package/dist/esm-es5/md.transition-8661f3c2.js +4 -0
  305. package/dist/esm-es5/notch-controller-39833b21.js +4 -0
  306. package/dist/esm-es5/overlays-5d12569d.js +4 -0
  307. package/dist/esm-es5/status-tap-e6919a78.js +4 -0
  308. package/dist/esm-es5/{swipe-back-e5394307.js → swipe-back-1c5e6095.js} +1 -1
  309. package/dist/html.html-data.json +102 -102
  310. package/dist/ionic/index.esm.js +1 -1
  311. package/dist/ionic/ionic.esm.js +1 -1
  312. package/dist/ionic/ionic.js +1 -1
  313. package/dist/ionic/{p-99859f95.entry.js → p-09854f4b.entry.js} +1 -1
  314. package/dist/ionic/{p-4029255b.system.entry.js → p-0a89309d.system.entry.js} +1 -1
  315. package/dist/ionic/p-0b5267e0.entry.js +4 -0
  316. package/dist/ionic/{p-34b11c24.js → p-0b5401b5.js} +1 -1
  317. package/dist/ionic/p-0cdf3f2d.entry.js +4 -0
  318. package/dist/ionic/{p-abc5c0a4.system.entry.js → p-0fe43136.system.entry.js} +1 -1
  319. package/dist/ionic/p-11350afc.system.entry.js +4 -0
  320. package/dist/ionic/p-13a18cd1.entry.js +4 -0
  321. package/dist/ionic/{p-e8cc3bad.js → p-177c643a.js} +1 -1
  322. package/dist/ionic/p-17c019eb.system.js +4 -0
  323. package/dist/ionic/p-17cd5ba5.system.entry.js +4 -0
  324. package/dist/ionic/p-184ba459.system.entry.js +4 -0
  325. package/dist/ionic/p-1ec593ec.system.js +4 -0
  326. package/dist/ionic/p-1ff45220.system.js +4 -0
  327. package/dist/ionic/{p-c7e16491.js → p-20709fa2.js} +1 -1
  328. package/dist/ionic/p-22508aa1.system.entry.js +4 -0
  329. package/dist/ionic/p-22f10183.entry.js +4 -0
  330. package/dist/ionic/p-2388c346.entry.js +4 -0
  331. package/dist/ionic/p-23f5b42c.js +4 -0
  332. package/dist/ionic/p-2904da21.system.entry.js +4 -0
  333. package/dist/ionic/p-2a76429e.entry.js +4 -0
  334. package/dist/ionic/{p-192e07b1.system.entry.js → p-2d4c3128.system.entry.js} +1 -1
  335. package/dist/ionic/{p-b51e4004.js → p-2f5f9e37.js} +1 -1
  336. package/dist/ionic/p-33cc976b.system.js +4 -0
  337. package/dist/ionic/{p-5d5d5073.entry.js → p-341bd749.entry.js} +1 -1
  338. package/dist/ionic/p-344c665e.system.js +4 -0
  339. package/dist/ionic/p-37c86134.entry.js +4 -0
  340. package/dist/ionic/p-38244569.js +4 -0
  341. package/dist/ionic/p-3c1bc308.system.entry.js +4 -0
  342. package/dist/ionic/p-3d7c07b2.system.entry.js +4 -0
  343. package/dist/ionic/p-4188687b.js +4 -0
  344. package/dist/ionic/p-4459a66e.system.js +4 -0
  345. package/dist/ionic/p-450d0781.system.entry.js +4 -0
  346. package/dist/ionic/p-46787abb.system.js +4 -0
  347. package/dist/ionic/p-4713a52c.system.entry.js +4 -0
  348. package/dist/ionic/{p-f687573e.system.js → p-4791ab9e.system.js} +1 -1
  349. package/dist/ionic/p-47ce4a4b.entry.js +4 -0
  350. package/dist/ionic/p-487a3ae7.system.js +5 -0
  351. package/dist/ionic/p-49fb3aaf.js +4 -0
  352. package/dist/ionic/p-4b4bcb80.system.js +4 -0
  353. package/dist/ionic/p-4b528ed3.js +5 -0
  354. package/dist/ionic/p-4c1581a8.entry.js +4 -0
  355. package/dist/ionic/p-4c9b78f8.system.js +4 -0
  356. package/dist/ionic/p-4d85f5ea.js +4 -0
  357. package/dist/ionic/{p-3ad285e3.system.js → p-4e970f1c.system.js} +1 -1
  358. package/dist/ionic/p-4fce1c54.entry.js +4 -0
  359. package/dist/ionic/p-4feedef0.entry.js +4 -0
  360. package/dist/ionic/p-51f29267.system.entry.js +4 -0
  361. package/dist/ionic/p-5266cfc8.system.js +4 -0
  362. package/dist/ionic/{p-27281edd.js → p-528e2d72.js} +1 -1
  363. package/dist/ionic/p-5348700b.entry.js +4 -0
  364. package/dist/ionic/p-536c3136.entry.js +4 -0
  365. package/dist/ionic/p-541f00c3.system.entry.js +4 -0
  366. package/dist/ionic/p-54cb772e.system.entry.js +4 -0
  367. package/dist/ionic/p-55dc854e.entry.js +4 -0
  368. package/dist/ionic/{p-14616c10.system.entry.js → p-56947de2.system.entry.js} +2 -2
  369. package/dist/ionic/p-574f568b.entry.js +4 -0
  370. package/dist/ionic/p-5bc27ad2.system.entry.js +4 -0
  371. package/dist/ionic/p-5ce35a03.js +4 -0
  372. package/dist/ionic/p-5e61ae2f.entry.js +4 -0
  373. package/dist/ionic/{p-2e5ee828.system.entry.js → p-64eb70c2.system.entry.js} +1 -1
  374. package/dist/ionic/p-656b9e5a.system.entry.js +4 -0
  375. package/dist/ionic/p-672431ae.entry.js +4 -0
  376. package/dist/ionic/p-6874be0f.js +4 -0
  377. package/dist/ionic/p-689d58a0.entry.js +4 -0
  378. package/dist/ionic/p-69746792.js +4 -0
  379. package/dist/ionic/p-6bf1b7c4.entry.js +4 -0
  380. package/dist/ionic/p-7071d7ca.js +4 -0
  381. package/dist/ionic/p-7163c868.system.entry.js +4 -0
  382. package/dist/ionic/p-721f704b.system.entry.js +4 -0
  383. package/dist/ionic/p-74da1bee.entry.js +4 -0
  384. package/dist/ionic/{p-30482ed4.system.js → p-7585d52f.system.js} +1 -1
  385. package/dist/ionic/p-76978bf3.system.entry.js +4 -0
  386. package/dist/ionic/{p-a93873de.system.js → p-76f6c195.system.js} +1 -1
  387. package/dist/ionic/p-7723bb75.system.entry.js +4 -0
  388. package/dist/ionic/p-77aab69d.js +4 -0
  389. package/dist/ionic/p-78d1ee98.system.entry.js +4 -0
  390. package/dist/ionic/p-7a8b6f72.entry.js +4 -0
  391. package/dist/ionic/p-7ab96568.entry.js +4 -0
  392. package/dist/ionic/{p-89b61afc.js → p-81fd74b8.js} +1 -1
  393. package/dist/ionic/p-878d8bbf.system.entry.js +4 -0
  394. package/dist/ionic/p-87a7b9ee.entry.js +4 -0
  395. package/dist/ionic/p-88a5925d.system.entry.js +4 -0
  396. package/dist/ionic/p-897fba2c.system.js +4 -0
  397. package/dist/ionic/{p-3447e604.system.entry.js → p-8d0a3bf5.system.entry.js} +1 -1
  398. package/dist/ionic/p-8f84ac87.system.entry.js +4 -0
  399. package/dist/ionic/p-901f2d60.system.entry.js +4 -0
  400. package/dist/ionic/p-92341215.system.js +4 -0
  401. package/dist/ionic/{p-1ca23ae9.system.entry.js → p-9538ca4d.system.entry.js} +2 -2
  402. package/dist/ionic/{p-d60342e3.js → p-95612c80.js} +1 -1
  403. package/dist/ionic/p-96ac6d73.system.js +4 -0
  404. package/dist/ionic/p-9a4236ab.entry.js +4 -0
  405. package/dist/ionic/p-9a8d7f70.entry.js +4 -0
  406. package/dist/ionic/p-9c1f23e6.system.entry.js +4 -0
  407. package/dist/ionic/p-9ce54ee5.entry.js +4 -0
  408. package/dist/ionic/p-9e4c3c31.system.entry.js +4 -0
  409. package/dist/ionic/p-9eb6c3e7.js +4 -0
  410. package/dist/ionic/p-9f05ff02.system.entry.js +4 -0
  411. package/dist/ionic/p-9f5e0684.system.js +4 -0
  412. package/dist/ionic/p-a013baec.entry.js +4 -0
  413. package/dist/ionic/p-a1d2be12.entry.js +4 -0
  414. package/dist/ionic/p-a44b565f.js +4 -0
  415. package/dist/ionic/p-a44dbc72.js +4 -0
  416. package/dist/ionic/p-a4f9181a.entry.js +4 -0
  417. package/dist/ionic/p-a5b8c4f3.entry.js +4 -0
  418. package/dist/ionic/p-a8a2a8a9.js +4 -0
  419. package/dist/ionic/p-a8cb7d8a.system.entry.js +4 -0
  420. package/dist/ionic/p-aaccafc3.entry.js +4 -0
  421. package/dist/ionic/p-aba574e0.system.entry.js +4 -0
  422. package/dist/ionic/p-ad074a8f.system.entry.js +4 -0
  423. package/dist/ionic/p-b321e219.system.entry.js +4 -0
  424. package/dist/ionic/{p-f36c9945.system.entry.js → p-b32203b0.system.entry.js} +2 -2
  425. package/dist/ionic/{p-9146695e.system.js → p-b3833aff.system.js} +1 -1
  426. package/dist/ionic/p-b3e99367.entry.js +4 -0
  427. package/dist/ionic/p-b6905606.entry.js +4 -0
  428. package/dist/ionic/p-b824f2ea.system.entry.js +4 -0
  429. package/dist/ionic/{p-06e58c4e.js → p-b82e4cfd.js} +1 -1
  430. package/dist/ionic/{p-c8e78b70.system.entry.js → p-b9665bf2.system.entry.js} +1 -1
  431. package/dist/ionic/p-b9f902b7.entry.js +4 -0
  432. package/dist/ionic/p-b9fc56ce.entry.js +4 -0
  433. package/dist/ionic/p-bc59161e.entry.js +4 -0
  434. package/dist/ionic/p-c0122ce8.entry.js +4 -0
  435. package/dist/ionic/p-c5cebd06.entry.js +4 -0
  436. package/dist/ionic/p-c6753166.system.js +4 -0
  437. package/dist/ionic/p-c9e87960.entry.js +4 -0
  438. package/dist/ionic/p-cd5487d5.entry.js +4 -0
  439. package/dist/ionic/p-d023db0e.system.js +4 -0
  440. package/dist/ionic/{p-b06ac4a5.system.js → p-d17dc9b4.system.js} +1 -1
  441. package/dist/ionic/{p-42f9a951.system.entry.js → p-d26214cb.system.entry.js} +1 -1
  442. package/dist/ionic/p-d635a135.system.entry.js +4 -0
  443. package/dist/ionic/p-d88bc366.entry.js +4 -0
  444. package/dist/ionic/p-d8a8873e.system.entry.js +4 -0
  445. package/dist/ionic/p-d9484ea5.entry.js +4 -0
  446. package/dist/ionic/p-da21e199.system.entry.js +4 -0
  447. package/dist/ionic/p-da8a14d0.entry.js +4 -0
  448. package/dist/ionic/p-dbf3a161.js +4 -0
  449. package/dist/ionic/{p-19ea7bff.system.js → p-dc971e94.system.js} +1 -1
  450. package/dist/ionic/p-ddeea474.system.entry.js +4 -0
  451. package/dist/ionic/p-dfc198fc.system.entry.js +4 -0
  452. package/dist/ionic/p-e285f90c.js +4 -0
  453. package/dist/ionic/p-e2f8cbe8.entry.js +4 -0
  454. package/dist/ionic/p-e48ecc9d.system.js +4 -0
  455. package/dist/ionic/p-e72b1a16.js +4 -0
  456. package/dist/ionic/p-e7deea0b.system.entry.js +4 -0
  457. package/dist/ionic/{p-91d713b7.system.entry.js → p-ec46d513.system.entry.js} +1 -1
  458. package/dist/ionic/p-ef67ccf4.system.js +4 -0
  459. package/dist/ionic/p-f2b51129.entry.js +4 -0
  460. package/dist/ionic/p-f3f7f713.js +4 -0
  461. package/dist/ionic/{p-0f9c24fe.system.js → p-f53e472e.system.js} +1 -1
  462. package/dist/ionic/{p-1d524f20.system.js → p-f9d31dea.system.js} +1 -1
  463. package/dist/ionic/{p-8985cdb6.system.js → p-fcfdf30d.system.js} +1 -1
  464. package/dist/ionic/p-ffee07a5.entry.js +4 -0
  465. package/dist/types/components/app/app.d.ts +0 -2
  466. package/dist/types/global/ionic-global.d.ts +2 -0
  467. package/dist/types/stencil-public-runtime.d.ts +0 -4
  468. package/dist/types/utils/config.d.ts +1 -0
  469. package/dist/types/utils/focus-visible.d.ts +1 -0
  470. package/hydrate/index.d.ts +0 -6
  471. package/hydrate/index.js +385 -514
  472. package/hydrate/index.mjs +385 -514
  473. package/package.json +2 -2
  474. package/components/hardware-back-button.js +0 -115
  475. package/components/index8.js +0 -128
  476. package/dist/cjs/hardware-back-button-35a9ebdb.js +0 -122
  477. package/dist/cjs/index-5915f9b3.js +0 -38
  478. package/dist/cjs/index-c8d52405.js +0 -10
  479. package/dist/cjs/ionic-global-2fc6b860.js +0 -237
  480. package/dist/esm/hardware-back-button-3dd2cf5a.js +0 -116
  481. package/dist/esm/index-79b30591.js +0 -167
  482. package/dist/esm/index-9b0d46f4.js +0 -34
  483. package/dist/esm/index-a5d50daf.js +0 -7
  484. package/dist/esm/ionic-global-aba82484.js +0 -231
  485. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  486. package/dist/esm-es5/app-globals-cef8aa6d.js +0 -4
  487. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  488. package/dist/esm-es5/data-ae11fd43.js +0 -4
  489. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  490. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  491. package/dist/esm-es5/hardware-back-button-3dd2cf5a.js +0 -4
  492. package/dist/esm-es5/index-3ed04e6d.js +0 -5
  493. package/dist/esm-es5/index-42907296.js +0 -4
  494. package/dist/esm-es5/index-5cc724f3.js +0 -4
  495. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  496. package/dist/esm-es5/index-a5d50daf.js +0 -4
  497. package/dist/esm-es5/index-deb1a83e.js +0 -4
  498. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  499. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  500. package/dist/esm-es5/ionic-global-aba82484.js +0 -4
  501. package/dist/esm-es5/ios.transition-903646a5.js +0 -4
  502. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  503. package/dist/esm-es5/md.transition-92c7f8a6.js +0 -4
  504. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  505. package/dist/esm-es5/overlays-d1a2f8a8.js +0 -4
  506. package/dist/esm-es5/status-tap-97e323a9.js +0 -4
  507. package/dist/ionic/p-0047371d.system.entry.js +0 -4
  508. package/dist/ionic/p-019fe44c.system.entry.js +0 -4
  509. package/dist/ionic/p-05399319.entry.js +0 -4
  510. package/dist/ionic/p-067db520.system.entry.js +0 -4
  511. package/dist/ionic/p-06fee233.js +0 -4
  512. package/dist/ionic/p-0956b807.system.entry.js +0 -4
  513. package/dist/ionic/p-0b2cb317.system.entry.js +0 -4
  514. package/dist/ionic/p-0b61b67e.system.js +0 -4
  515. package/dist/ionic/p-0bfdb16f.system.js +0 -4
  516. package/dist/ionic/p-0c06e09b.system.js +0 -4
  517. package/dist/ionic/p-0dc1d769.entry.js +0 -4
  518. package/dist/ionic/p-1350a9c2.entry.js +0 -4
  519. package/dist/ionic/p-149da974.system.js +0 -4
  520. package/dist/ionic/p-16b7cfc2.entry.js +0 -4
  521. package/dist/ionic/p-1955f63a.entry.js +0 -4
  522. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  523. package/dist/ionic/p-1e4371bd.js +0 -4
  524. package/dist/ionic/p-2067d815.system.entry.js +0 -4
  525. package/dist/ionic/p-2583e966.js +0 -4
  526. package/dist/ionic/p-263a3f91.system.js +0 -4
  527. package/dist/ionic/p-2690b1de.js +0 -4
  528. package/dist/ionic/p-2b2a48ed.entry.js +0 -4
  529. package/dist/ionic/p-2b7827c7.js +0 -4
  530. package/dist/ionic/p-2b87a770.entry.js +0 -4
  531. package/dist/ionic/p-2e2c1a93.system.entry.js +0 -4
  532. package/dist/ionic/p-2e6cf7f2.js +0 -4
  533. package/dist/ionic/p-2f244b7c.system.entry.js +0 -4
  534. package/dist/ionic/p-33fb4e9d.entry.js +0 -4
  535. package/dist/ionic/p-3b2c0ca4.entry.js +0 -4
  536. package/dist/ionic/p-3c8001c7.system.entry.js +0 -4
  537. package/dist/ionic/p-3cc276f4.js +0 -4
  538. package/dist/ionic/p-3e4a7bd8.system.entry.js +0 -4
  539. package/dist/ionic/p-40277321.system.entry.js +0 -4
  540. package/dist/ionic/p-4205a4d9.entry.js +0 -4
  541. package/dist/ionic/p-428db536.entry.js +0 -4
  542. package/dist/ionic/p-44d98be5.system.entry.js +0 -4
  543. package/dist/ionic/p-46bac798.entry.js +0 -4
  544. package/dist/ionic/p-488bc4e4.system.entry.js +0 -4
  545. package/dist/ionic/p-49c26aa9.entry.js +0 -4
  546. package/dist/ionic/p-4ad055dc.system.entry.js +0 -4
  547. package/dist/ionic/p-4b1364c9.entry.js +0 -4
  548. package/dist/ionic/p-4bd23b81.entry.js +0 -4
  549. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  550. package/dist/ionic/p-4d81423b.entry.js +0 -4
  551. package/dist/ionic/p-4e7b0cee.entry.js +0 -4
  552. package/dist/ionic/p-4fe468c2.entry.js +0 -4
  553. package/dist/ionic/p-51ae8a06.system.entry.js +0 -4
  554. package/dist/ionic/p-51d30486.entry.js +0 -4
  555. package/dist/ionic/p-52c20808.entry.js +0 -4
  556. package/dist/ionic/p-56435093.js +0 -4
  557. package/dist/ionic/p-57f94155.system.entry.js +0 -4
  558. package/dist/ionic/p-59a394ad.system.js +0 -5
  559. package/dist/ionic/p-59cda258.system.entry.js +0 -4
  560. package/dist/ionic/p-5d43e642.entry.js +0 -4
  561. package/dist/ionic/p-5d6c0bf8.system.js +0 -4
  562. package/dist/ionic/p-5d7ea80a.system.entry.js +0 -4
  563. package/dist/ionic/p-5e94453a.entry.js +0 -4
  564. package/dist/ionic/p-5e97855d.system.entry.js +0 -4
  565. package/dist/ionic/p-5ef51d63.entry.js +0 -4
  566. package/dist/ionic/p-600a4ea0.js +0 -4
  567. package/dist/ionic/p-62b04b4c.entry.js +0 -4
  568. package/dist/ionic/p-663fe7c8.system.entry.js +0 -4
  569. package/dist/ionic/p-68da7fc8.system.js +0 -4
  570. package/dist/ionic/p-6bbad9e4.system.entry.js +0 -4
  571. package/dist/ionic/p-6ca2a6af.entry.js +0 -4
  572. package/dist/ionic/p-6f465cce.js +0 -4
  573. package/dist/ionic/p-70325536.entry.js +0 -4
  574. package/dist/ionic/p-714841be.system.js +0 -4
  575. package/dist/ionic/p-72812e99.js +0 -4
  576. package/dist/ionic/p-72bc8a1c.js +0 -4
  577. package/dist/ionic/p-7414228b.js +0 -5
  578. package/dist/ionic/p-76bb8eb2.entry.js +0 -4
  579. package/dist/ionic/p-792919fd.system.js +0 -4
  580. package/dist/ionic/p-7b30edcc.js +0 -4
  581. package/dist/ionic/p-7e07fb64.entry.js +0 -4
  582. package/dist/ionic/p-7e497250.system.entry.js +0 -4
  583. package/dist/ionic/p-8635f5e6.system.js +0 -4
  584. package/dist/ionic/p-89bd4ed2.entry.js +0 -4
  585. package/dist/ionic/p-933e9e71.entry.js +0 -4
  586. package/dist/ionic/p-96cc4814.js +0 -4
  587. package/dist/ionic/p-9ea607bd.system.js +0 -4
  588. package/dist/ionic/p-9f8740b2.entry.js +0 -4
  589. package/dist/ionic/p-a15ddedb.system.js +0 -4
  590. package/dist/ionic/p-a8775bf9.entry.js +0 -4
  591. package/dist/ionic/p-abe101da.system.js +0 -4
  592. package/dist/ionic/p-aed9cc5b.entry.js +0 -4
  593. package/dist/ionic/p-aee3f804.system.entry.js +0 -4
  594. package/dist/ionic/p-b2a2c6cf.system.entry.js +0 -4
  595. package/dist/ionic/p-b69c1e65.system.entry.js +0 -4
  596. package/dist/ionic/p-b719790b.js +0 -4
  597. package/dist/ionic/p-b7836cec.entry.js +0 -4
  598. package/dist/ionic/p-b8157bb5.system.entry.js +0 -4
  599. package/dist/ionic/p-bae531fb.system.entry.js +0 -4
  600. package/dist/ionic/p-bd9fd891.system.entry.js +0 -4
  601. package/dist/ionic/p-c342dbdf.system.entry.js +0 -4
  602. package/dist/ionic/p-c468af8a.system.js +0 -4
  603. package/dist/ionic/p-c57d792e.entry.js +0 -4
  604. package/dist/ionic/p-c61cc894.js +0 -4
  605. package/dist/ionic/p-c76e43a2.system.entry.js +0 -4
  606. package/dist/ionic/p-cb9da2a3.entry.js +0 -4
  607. package/dist/ionic/p-cc3e2b52.entry.js +0 -4
  608. package/dist/ionic/p-ce58e8e0.entry.js +0 -4
  609. package/dist/ionic/p-d073ba84.entry.js +0 -4
  610. package/dist/ionic/p-d0f8d0aa.entry.js +0 -4
  611. package/dist/ionic/p-d47265c8.js +0 -4
  612. package/dist/ionic/p-d65d9c9c.system.entry.js +0 -4
  613. package/dist/ionic/p-d6e463ee.system.entry.js +0 -4
  614. package/dist/ionic/p-d75bce6a.system.js +0 -4
  615. package/dist/ionic/p-d8ace0cb.entry.js +0 -4
  616. package/dist/ionic/p-d8dcfbf3.system.entry.js +0 -4
  617. package/dist/ionic/p-da5e7dbe.system.entry.js +0 -4
  618. package/dist/ionic/p-dc672c3a.entry.js +0 -4
  619. package/dist/ionic/p-dfb78785.system.js +0 -4
  620. package/dist/ionic/p-e351e0e3.entry.js +0 -4
  621. package/dist/ionic/p-e6e98f68.system.entry.js +0 -4
  622. package/dist/ionic/p-e9119176.entry.js +0 -4
  623. package/dist/ionic/p-ed3f6648.system.entry.js +0 -4
  624. package/dist/ionic/p-eec4b4ce.entry.js +0 -4
  625. package/dist/ionic/p-f08654ea.system.js +0 -4
  626. package/dist/ionic/p-f22b3a75.js +0 -4
  627. package/dist/ionic/p-f367478b.js +0 -4
  628. package/dist/ionic/p-fc9b4e5a.entry.js +0 -4
  629. package/dist/ionic/p-fdfa74cc.system.entry.js +0 -4
  630. package/dist/ionic/p-fec56d82.js +0 -4
  631. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -0,0 +1,387 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ 'use strict';
5
+
6
+ const index = require('./index-b9e25ecd.js');
7
+ const config = require('./config-aff4ff52.js');
8
+
9
+ const win = typeof window !== 'undefined' ? window : undefined;
10
+ const doc = typeof document !== 'undefined' ? document : undefined;
11
+
12
+ /**
13
+ * CloseWatcher is a newer API that lets
14
+ * use detect the hardware back button event
15
+ * in a web browser: https://caniuse.com/?search=closewatcher
16
+ * However, not every browser supports it yet.
17
+ *
18
+ * This needs to be a function so that we can
19
+ * check the config once it has been set.
20
+ * Otherwise, this code would be evaluated the
21
+ * moment this file is evaluated which could be
22
+ * before the config is set.
23
+ */
24
+ const shouldUseCloseWatcher = () => config.config.get('experimentalCloseWatcher', false) && win !== undefined && 'CloseWatcher' in win;
25
+ /**
26
+ * When hardwareBackButton: false in config,
27
+ * we need to make sure we also block the default
28
+ * webview behavior. If we don't then it will be
29
+ * possible for users to navigate backward while
30
+ * an overlay is still open. Additionally, it will
31
+ * give the appearance that the hardwareBackButton
32
+ * config is not working as the page transition
33
+ * will still happen.
34
+ */
35
+ const blockHardwareBackButton = () => {
36
+ document.addEventListener('backbutton', () => { }); // eslint-disable-line
37
+ };
38
+ const startHardwareBackButton = () => {
39
+ const doc = document;
40
+ let busy = false;
41
+ const backButtonCallback = () => {
42
+ if (busy) {
43
+ return;
44
+ }
45
+ let index = 0;
46
+ let handlers = [];
47
+ const ev = new CustomEvent('ionBackButton', {
48
+ bubbles: false,
49
+ detail: {
50
+ register(priority, handler) {
51
+ handlers.push({ priority, handler, id: index++ });
52
+ },
53
+ },
54
+ });
55
+ doc.dispatchEvent(ev);
56
+ const executeAction = async (handlerRegister) => {
57
+ try {
58
+ if (handlerRegister === null || handlerRegister === void 0 ? void 0 : handlerRegister.handler) {
59
+ const result = handlerRegister.handler(processHandlers);
60
+ if (result != null) {
61
+ await result;
62
+ }
63
+ }
64
+ }
65
+ catch (e) {
66
+ console.error(e);
67
+ }
68
+ };
69
+ const processHandlers = () => {
70
+ if (handlers.length > 0) {
71
+ let selectedHandler = {
72
+ priority: Number.MIN_SAFE_INTEGER,
73
+ handler: () => undefined,
74
+ id: -1,
75
+ };
76
+ handlers.forEach((handler) => {
77
+ if (handler.priority >= selectedHandler.priority) {
78
+ selectedHandler = handler;
79
+ }
80
+ });
81
+ busy = true;
82
+ handlers = handlers.filter((handler) => handler.id !== selectedHandler.id);
83
+ executeAction(selectedHandler).then(() => (busy = false));
84
+ }
85
+ };
86
+ processHandlers();
87
+ };
88
+ /**
89
+ * If the CloseWatcher is defined then
90
+ * we don't want to also listen for the native
91
+ * backbutton event otherwise we may get duplicate
92
+ * events firing.
93
+ */
94
+ if (shouldUseCloseWatcher()) {
95
+ let watcher;
96
+ const configureWatcher = () => {
97
+ watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
98
+ watcher = new win.CloseWatcher();
99
+ /**
100
+ * Once a close request happens
101
+ * the watcher gets destroyed.
102
+ * As a result, we need to re-configure
103
+ * the watcher so we can respond to other
104
+ * close requests.
105
+ */
106
+ watcher.onclose = () => {
107
+ backButtonCallback();
108
+ configureWatcher();
109
+ };
110
+ };
111
+ configureWatcher();
112
+ }
113
+ else {
114
+ doc.addEventListener('backbutton', backButtonCallback);
115
+ }
116
+ };
117
+ const OVERLAY_BACK_BUTTON_PRIORITY = 100;
118
+ const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
119
+
120
+ const hardwareBackButton = /*#__PURE__*/Object.freeze({
121
+ __proto__: null,
122
+ shouldUseCloseWatcher: shouldUseCloseWatcher,
123
+ blockHardwareBackButton: blockHardwareBackButton,
124
+ startHardwareBackButton: startHardwareBackButton,
125
+ OVERLAY_BACK_BUTTON_PRIORITY: OVERLAY_BACK_BUTTON_PRIORITY,
126
+ MENU_BACK_BUTTON_PRIORITY: MENU_BACK_BUTTON_PRIORITY
127
+ });
128
+
129
+ /**
130
+ * Logs a warning to the console with an Ionic prefix
131
+ * to indicate the library that is warning the developer.
132
+ *
133
+ * @param message - The string message to be logged to the console.
134
+ */
135
+ const printIonWarning = (message, ...params) => {
136
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
137
+ };
138
+ /*
139
+ * Logs an error to the console with an Ionic prefix
140
+ * to indicate the library that is warning the developer.
141
+ *
142
+ * @param message - The string message to be logged to the console.
143
+ * @param params - Additional arguments to supply to the console.error.
144
+ */
145
+ const printIonError = (message, ...params) => {
146
+ return console.error(`[Ionic Error]: ${message}`, ...params);
147
+ };
148
+ /**
149
+ * Prints an error informing developers that an implementation requires an element to be used
150
+ * within a specific selector.
151
+ *
152
+ * @param el The web component element this is requiring the element.
153
+ * @param targetSelectors The selector or selectors that were not found.
154
+ */
155
+ const printRequiredElementError = (el, ...targetSelectors) => {
156
+ return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
157
+ };
158
+
159
+ const getPlatforms = (win) => setupPlatforms(win);
160
+ const isPlatform = (winOrPlatform, platform) => {
161
+ if (typeof winOrPlatform === 'string') {
162
+ platform = winOrPlatform;
163
+ winOrPlatform = undefined;
164
+ }
165
+ return getPlatforms(winOrPlatform).includes(platform);
166
+ };
167
+ const setupPlatforms = (win = window) => {
168
+ if (typeof win === 'undefined') {
169
+ return [];
170
+ }
171
+ win.Ionic = win.Ionic || {};
172
+ let platforms = win.Ionic.platforms;
173
+ if (platforms == null) {
174
+ platforms = win.Ionic.platforms = detectPlatforms(win);
175
+ platforms.forEach((p) => win.document.documentElement.classList.add(`plt-${p}`));
176
+ }
177
+ return platforms;
178
+ };
179
+ const detectPlatforms = (win) => {
180
+ const customPlatformMethods = config.config.get('platform');
181
+ return Object.keys(PLATFORMS_MAP).filter((p) => {
182
+ const customMethod = customPlatformMethods === null || customPlatformMethods === void 0 ? void 0 : customPlatformMethods[p];
183
+ return typeof customMethod === 'function' ? customMethod(win) : PLATFORMS_MAP[p](win);
184
+ });
185
+ };
186
+ const isMobileWeb = (win) => isMobile(win) && !isHybrid(win);
187
+ const isIpad = (win) => {
188
+ // iOS 12 and below
189
+ if (testUserAgent(win, /iPad/i)) {
190
+ return true;
191
+ }
192
+ // iOS 13+
193
+ if (testUserAgent(win, /Macintosh/i) && isMobile(win)) {
194
+ return true;
195
+ }
196
+ return false;
197
+ };
198
+ const isIphone = (win) => testUserAgent(win, /iPhone/i);
199
+ const isIOS = (win) => testUserAgent(win, /iPhone|iPod/i) || isIpad(win);
200
+ const isAndroid = (win) => testUserAgent(win, /android|sink/i);
201
+ const isAndroidTablet = (win) => {
202
+ return isAndroid(win) && !testUserAgent(win, /mobile/i);
203
+ };
204
+ const isPhablet = (win) => {
205
+ const width = win.innerWidth;
206
+ const height = win.innerHeight;
207
+ const smallest = Math.min(width, height);
208
+ const largest = Math.max(width, height);
209
+ return smallest > 390 && smallest < 520 && largest > 620 && largest < 800;
210
+ };
211
+ const isTablet = (win) => {
212
+ const width = win.innerWidth;
213
+ const height = win.innerHeight;
214
+ const smallest = Math.min(width, height);
215
+ const largest = Math.max(width, height);
216
+ return isIpad(win) || isAndroidTablet(win) || (smallest > 460 && smallest < 820 && largest > 780 && largest < 1400);
217
+ };
218
+ const isMobile = (win) => matchMedia(win, '(any-pointer:coarse)');
219
+ const isDesktop = (win) => !isMobile(win);
220
+ const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
221
+ const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
222
+ const isCapacitorNative = (win) => {
223
+ const capacitor = win['Capacitor'];
224
+ return !!(capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative);
225
+ };
226
+ const isElectron = (win) => testUserAgent(win, /electron/i);
227
+ const isPWA = (win) => { var _a; return !!(((_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, '(display-mode: standalone)').matches) || win.navigator.standalone); };
228
+ const testUserAgent = (win, expr) => expr.test(win.navigator.userAgent);
229
+ const matchMedia = (win, query) => { var _a; return (_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, query).matches; };
230
+ const PLATFORMS_MAP = {
231
+ ipad: isIpad,
232
+ iphone: isIphone,
233
+ ios: isIOS,
234
+ android: isAndroid,
235
+ phablet: isPhablet,
236
+ tablet: isTablet,
237
+ cordova: isCordova,
238
+ capacitor: isCapacitorNative,
239
+ electron: isElectron,
240
+ pwa: isPWA,
241
+ mobile: isMobile,
242
+ mobileweb: isMobileWeb,
243
+ desktop: isDesktop,
244
+ hybrid: isHybrid,
245
+ };
246
+
247
+ // TODO(FW-2832): types
248
+ let defaultMode;
249
+ const getIonMode = (ref) => {
250
+ return (ref && index.getMode(ref)) || defaultMode;
251
+ };
252
+ const rIC = (callback) => {
253
+ if ('requestIdleCallback' in window) {
254
+ window.requestIdleCallback(callback);
255
+ }
256
+ else {
257
+ setTimeout(callback, 32);
258
+ }
259
+ };
260
+ const needInputShims = () => {
261
+ /**
262
+ * iOS always needs input shims
263
+ */
264
+ const needsShimsIOS = isPlatform(window, 'ios') && isPlatform(window, 'mobile');
265
+ if (needsShimsIOS) {
266
+ return true;
267
+ }
268
+ /**
269
+ * Android only needs input shims when running
270
+ * in the browser and only if the browser is using the
271
+ * new Chrome 108+ resize behavior: https://developer.chrome.com/blog/viewport-resize-behavior/
272
+ */
273
+ const isAndroidMobileWeb = isPlatform(window, 'android') && isPlatform(window, 'mobileweb');
274
+ if (isAndroidMobileWeb) {
275
+ return true;
276
+ }
277
+ return false;
278
+ };
279
+ const initialize = (userConfig = {}) => {
280
+ if (typeof window === 'undefined') {
281
+ return;
282
+ }
283
+ const doc = window.document;
284
+ const win = window;
285
+ const Ionic = (win.Ionic = win.Ionic || {});
286
+ const platformHelpers = {};
287
+ if (userConfig._ael) {
288
+ platformHelpers.ael = userConfig._ael;
289
+ }
290
+ if (userConfig._rel) {
291
+ platformHelpers.rel = userConfig._rel;
292
+ }
293
+ if (userConfig._ce) {
294
+ platformHelpers.ce = userConfig._ce;
295
+ }
296
+ index.setPlatformHelpers(platformHelpers);
297
+ // create the Ionic.config from raw config object (if it exists)
298
+ // and convert Ionic.config into a ConfigApi that has a get() fn
299
+ const configObj = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, config.configFromSession(win)), { persistConfig: false }), Ionic.config), config.configFromURL(win)), userConfig);
300
+ config.config.reset(configObj);
301
+ if (config.config.getBoolean('persistConfig')) {
302
+ config.saveConfig(win, configObj);
303
+ }
304
+ // Setup platforms
305
+ setupPlatforms(win);
306
+ // first see if the mode was set as an attribute on <html>
307
+ // which could have been set by the user, or by pre-rendering
308
+ // otherwise get the mode via config settings, and fallback to md
309
+ Ionic.config = config.config;
310
+ Ionic.mode = defaultMode = config.config.get('mode', doc.documentElement.getAttribute('mode') || (isPlatform(win, 'ios') ? 'ios' : 'md'));
311
+ config.config.set('mode', defaultMode);
312
+ doc.documentElement.setAttribute('mode', defaultMode);
313
+ doc.documentElement.classList.add(defaultMode);
314
+ if (config.config.getBoolean('_testing')) {
315
+ config.config.set('animated', false);
316
+ }
317
+ const isIonicElement = (elm) => { var _a; return (_a = elm.tagName) === null || _a === void 0 ? void 0 : _a.startsWith('ION-'); };
318
+ const isAllowedIonicModeValue = (elmMode) => ['ios', 'md'].includes(elmMode);
319
+ index.setMode((elm) => {
320
+ while (elm) {
321
+ const elmMode = elm.mode || elm.getAttribute('mode');
322
+ if (elmMode) {
323
+ if (isAllowedIonicModeValue(elmMode)) {
324
+ return elmMode;
325
+ }
326
+ else if (isIonicElement(elm)) {
327
+ console.warn('Invalid ionic mode: "' + elmMode + '", expected: "ios" or "md"');
328
+ }
329
+ }
330
+ elm = elm.parentElement;
331
+ }
332
+ return defaultMode;
333
+ });
334
+ // `IonApp` code
335
+ // ----------------------------------------------
336
+ {
337
+ rIC(async () => {
338
+ const isHybrid = isPlatform(window, 'hybrid');
339
+ if (!config.config.getBoolean('_testing')) {
340
+ Promise.resolve().then(function () { return require('./index-c66a0972.js'); }).then((module) => module.startTapClick(config.config));
341
+ }
342
+ if (config.config.getBoolean('statusTap', isHybrid)) {
343
+ Promise.resolve().then(function () { return require('./status-tap-8d61febd.js'); }).then((module) => module.startStatusTap());
344
+ }
345
+ if (config.config.getBoolean('inputShims', needInputShims())) {
346
+ /**
347
+ * needInputShims() ensures that only iOS and Android
348
+ * platforms proceed into this block.
349
+ */
350
+ const platform = isPlatform(window, 'ios') ? 'ios' : 'android';
351
+ Promise.resolve().then(function () { return require('./input-shims-6e96b5d0.js'); }).then((module) => module.startInputShims(config.config, platform));
352
+ }
353
+ const hardwareBackButtonModule = await Promise.resolve().then(function () { return hardwareBackButton; });
354
+ const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
355
+ if (config.config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
356
+ hardwareBackButtonModule.startHardwareBackButton();
357
+ }
358
+ else {
359
+ /**
360
+ * If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
361
+ * then the close watcher will not be used.
362
+ */
363
+ if (shouldUseCloseWatcher()) {
364
+ printIonWarning('experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
365
+ }
366
+ hardwareBackButtonModule.blockHardwareBackButton();
367
+ }
368
+ if (typeof window !== 'undefined') {
369
+ Promise.resolve().then(function () { return require('./keyboard-5494d9e7.js'); }).then((module) => module.startKeyboardAssist(window));
370
+ }
371
+ Promise.resolve().then(function () { return require('./focus-visible-9aa87fa3.js'); }).then((module) => module.getOrInitFocusVisibleUtility());
372
+ });
373
+ }
374
+ };
375
+
376
+ exports.MENU_BACK_BUTTON_PRIORITY = MENU_BACK_BUTTON_PRIORITY;
377
+ exports.OVERLAY_BACK_BUTTON_PRIORITY = OVERLAY_BACK_BUTTON_PRIORITY;
378
+ exports.doc = doc;
379
+ exports.getIonMode = getIonMode;
380
+ exports.getPlatforms = getPlatforms;
381
+ exports.initialize = initialize;
382
+ exports.isPlatform = isPlatform;
383
+ exports.printIonError = printIonError;
384
+ exports.printIonWarning = printIonWarning;
385
+ exports.printRequiredElementError = printRequiredElementError;
386
+ exports.shouldUseCloseWatcher = shouldUseCloseWatcher;
387
+ exports.win = win;
@@ -5,12 +5,13 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-42dd5e74.js');
9
- const appGlobals = require('./app-globals-9d795e44.js');
10
- require('./ionic-global-2fc6b860.js');
8
+ const index = require('./index-b9e25ecd.js');
9
+ const appGlobals = require('./app-globals-da858d53.js');
10
+ require('./ionic-global-e4b78f51.js');
11
+ require('./config-aff4ff52.js');
11
12
 
12
13
  /*
13
- Stencil Client Patch Browser v4.21.0-dev.1726257631.b82b008 | MIT Licensed | https://stenciljs.com
14
+ Stencil Client Patch Browser v4.21.0 | MIT Licensed | https://stenciljs.com
14
15
  */
15
16
  var patchBrowser = () => {
16
17
  {
@@ -3,13 +3,12 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const animation = require('./animation-b4fdf128.js');
7
- const index = require('./index-44dacdce.js');
8
- require('./index-c8d52405.js');
9
- require('./ionic-global-2fc6b860.js');
10
- require('./index-42dd5e74.js');
11
- require('./index-5915f9b3.js');
12
- require('./helpers-afaa9001.js');
6
+ const animation = require('./animation-79f60b24.js');
7
+ const index = require('./index-e391e4f0.js');
8
+ require('./ionic-global-e4b78f51.js');
9
+ require('./index-b9e25ecd.js');
10
+ require('./config-aff4ff52.js');
11
+ require('./helpers-acd6c477.js');
13
12
 
14
13
  const DURATION = 540;
15
14
  // TODO(FW-2832): types
@@ -3,9 +3,11 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const keyboard = require('./keyboard-0272231f.js');
7
- require('./capacitor-c04564bf.js');
8
- require('./index-c8d52405.js');
6
+ const keyboard = require('./keyboard-9c8c3373.js');
7
+ require('./capacitor-6d32aa8f.js');
8
+ require('./ionic-global-e4b78f51.js');
9
+ require('./index-b9e25ecd.js');
10
+ require('./config-aff4ff52.js');
9
11
 
10
12
  const KEYBOARD_DID_OPEN = 'ionKeyboardDidShow';
11
13
  const KEYBOARD_DID_CLOSE = 'ionKeyboardDidHide';
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const capacitor = require('./capacitor-c04564bf.js');
6
+ const capacitor = require('./capacitor-6d32aa8f.js');
7
7
 
8
8
  var ExceptionCode;
9
9
  (function (ExceptionCode) {
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-c8d52405.js');
7
- const keyboard = require('./keyboard-0272231f.js');
6
+ const ionicGlobal = require('./ionic-global-e4b78f51.js');
7
+ const keyboard = require('./keyboard-9c8c3373.js');
8
8
 
9
9
  /**
10
10
  * The element that resizes when the keyboard opens
@@ -19,7 +19,7 @@ const getResizeContainer = (resizeMode) => {
19
19
  * If the webview does not resize then there
20
20
  * is no container to resize.
21
21
  */
22
- if (index.doc === undefined || resizeMode === keyboard.KeyboardResize.None || resizeMode === undefined) {
22
+ if (ionicGlobal.doc === undefined || resizeMode === keyboard.KeyboardResize.None || resizeMode === undefined) {
23
23
  return null;
24
24
  }
25
25
  /**
@@ -28,8 +28,8 @@ const getResizeContainer = (resizeMode) => {
28
28
  * on that. In the event `ion-app` is not available then
29
29
  * we can fall back to `body`.
30
30
  */
31
- const ionApp = index.doc.querySelector('ion-app');
32
- return ionApp !== null && ionApp !== void 0 ? ionApp : index.doc.body;
31
+ const ionApp = ionicGlobal.doc.querySelector('ion-app, .ion-app');
32
+ return ionApp !== null && ionApp !== void 0 ? ionApp : ionicGlobal.doc.body;
33
33
  };
34
34
  /**
35
35
  * Get the height of ion-app or body.
@@ -77,8 +77,8 @@ const createKeyboardController = async (keyboardChangeCallback) => {
77
77
  keyboardVisible = false;
78
78
  fireChangeCallback(keyboardVisible, resizeMode);
79
79
  };
80
- index.win === null || index.win === void 0 ? void 0 : index.win.addEventListener('keyboardWillShow', keyboardWillShowHandler);
81
- index.win === null || index.win === void 0 ? void 0 : index.win.addEventListener('keyboardWillHide', keyboardWillHideHandler);
80
+ ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.addEventListener('keyboardWillShow', keyboardWillShowHandler);
81
+ ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.addEventListener('keyboardWillHide', keyboardWillHideHandler);
82
82
  };
83
83
  const fireChangeCallback = (state, resizeMode) => {
84
84
  if (keyboardChangeCallback) {
@@ -155,8 +155,8 @@ const createKeyboardController = async (keyboardChangeCallback) => {
155
155
  });
156
156
  };
157
157
  const destroy = () => {
158
- index.win === null || index.win === void 0 ? void 0 : index.win.removeEventListener('keyboardWillShow', keyboardWillShowHandler);
159
- index.win === null || index.win === void 0 ? void 0 : index.win.removeEventListener('keyboardWillHide', keyboardWillHideHandler);
158
+ ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.removeEventListener('keyboardWillShow', keyboardWillShowHandler);
159
+ ionicGlobal.win === null || ionicGlobal.win === void 0 ? void 0 : ionicGlobal.win.removeEventListener('keyboardWillHide', keyboardWillHideHandler);
160
160
  keyboardWillShowHandler = keyboardWillHideHandler = undefined;
161
161
  };
162
162
  const isKeyboardVisible = () => keyboardVisible;
@@ -5,9 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-42dd5e74.js');
9
- const appGlobals = require('./app-globals-9d795e44.js');
10
- require('./ionic-global-2fc6b860.js');
8
+ const index = require('./index-b9e25ecd.js');
9
+ const appGlobals = require('./app-globals-da858d53.js');
10
+ require('./ionic-global-e4b78f51.js');
11
+ require('./config-aff4ff52.js');
11
12
 
12
13
  const defineCustomElements = async (win, options) => {
13
14
  if (typeof window === 'undefined') return undefined;
@@ -3,13 +3,12 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const animation = require('./animation-b4fdf128.js');
7
- const index = require('./index-44dacdce.js');
8
- require('./index-c8d52405.js');
9
- require('./ionic-global-2fc6b860.js');
10
- require('./index-42dd5e74.js');
11
- require('./index-5915f9b3.js');
12
- require('./helpers-afaa9001.js');
6
+ const animation = require('./animation-79f60b24.js');
7
+ const index = require('./index-e391e4f0.js');
8
+ require('./ionic-global-e4b78f51.js');
9
+ require('./index-b9e25ecd.js');
10
+ require('./config-aff4ff52.js');
11
+ require('./helpers-acd6c477.js');
13
12
 
14
13
  const mdTransitionAnimation = (_, opts) => {
15
14
  var _a, _b, _c;
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-c8d52405.js');
7
- const helpers = require('./helpers-afaa9001.js');
6
+ const ionicGlobal = require('./ionic-global-e4b78f51.js');
7
+ const helpers = require('./helpers-acd6c477.js');
8
8
 
9
9
  /**
10
10
  * A utility to calculate the size of an outline notch
@@ -95,8 +95,8 @@ const createNotchController = (el, getNotchSpacerEl, getLabelSlot) => {
95
95
  */
96
96
  width === 0 &&
97
97
  notchSpacerEl.offsetParent === null &&
98
- index.win !== undefined &&
99
- 'IntersectionObserver' in index.win) {
98
+ ionicGlobal.win !== undefined &&
99
+ 'IntersectionObserver' in ionicGlobal.win) {
100
100
  /**
101
101
  * If there is an IO already attached
102
102
  * then that will update the notch