voyager-ionic-core 9.0.6 → 9.0.7

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 (458) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/{p-D0jSx7rE.js → p--cshUOAU.js} +1 -1
  99. package/components/{p-DSmHJ2DH.js → p-7KepMw9O.js} +1 -1
  100. package/components/p-B-5Z9djt.js +4 -0
  101. package/components/p-B02CcbPD.js +4 -0
  102. package/components/{p-DlUdjUlf.js → p-B4IBdPVJ.js} +1 -1
  103. package/components/{p-BLjEwM6v.js → p-BMHdI-wb.js} +1 -1
  104. package/components/{p-CAQG0btC.js → p-BODcC-C0.js} +1 -1
  105. package/components/{p-Canp1qah.js → p-Ba9_OzSY.js} +1 -1
  106. package/components/{p-CHHkdXfP.js → p-BqyLLYLm.js} +1 -1
  107. package/components/{p-C_NQIzjP.js → p-C1AxSUnp.js} +1 -1
  108. package/{dist/ionic/p-PkaVMJga.js → components/p-C7r5Gja6.js} +1 -1
  109. package/components/{p-y7Nhe3de.js → p-CKiqp4Vl.js} +1 -1
  110. package/components/{p-CvzE7FFp.js → p-C_gnmBt2.js} +1 -1
  111. package/components/{p-C9ioHZq-.js → p-CdrNHfZl.js} +1 -1
  112. package/components/{p-Dlr7b3_2.js → p-ChkSQqfP.js} +1 -1
  113. package/components/{p-LH1I_Zhd.js → p-ChsJlFCQ.js} +1 -1
  114. package/components/{p-DGUed0uX.js → p-CjPRDxby.js} +1 -1
  115. package/components/p-CohRJRIu.js +4 -0
  116. package/components/{p-BrOSQhkA.js → p-CqvARtmt.js} +1 -1
  117. package/components/p-Ct2aBEue.js +4 -0
  118. package/components/{p-BexLz2XV.js → p-CtiO6_sC.js} +1 -1
  119. package/components/{p-6sKRBFnK.js → p-CvyvLbPe.js} +1 -1
  120. package/components/{p-C7rB-0-1.js → p-CwEis84J.js} +1 -1
  121. package/components/p-CxEV3Vwy.js +4 -0
  122. package/components/p-Cyajikho.js +4 -0
  123. package/components/{p-PPagT42x.js → p-D64Tyi-z.js} +1 -1
  124. package/components/{p-CXy2v7GI.js → p-DBtFJlTi.js} +1 -1
  125. package/components/p-DD92Fw3n.js +4 -0
  126. package/components/{p-DM2jMsSO.js → p-DDI6VLW9.js} +1 -1
  127. package/components/{p-DWGgvN5e.js → p-DHo45oj7.js} +1 -1
  128. package/components/{p-BSJriPuC.js → p-DMPsc_0r.js} +1 -1
  129. package/{dist/ionic/p-Bv-6401R.js → components/p-Dbi3KqKm.js} +1 -1
  130. package/components/{p-BinR4_P7.js → p-DhfJAkyd.js} +1 -1
  131. package/components/{p-CiXOsJF2.js → p-DnGlmM4u.js} +1 -1
  132. package/components/{p-CTUMJM0R.js → p-Drpw2dyl.js} +1 -1
  133. package/components/{p-BKxLivx4.js → p-Dvyv9SMk.js} +1 -1
  134. package/components/{p-T2dnrBya.js → p-GpqwNbxf.js} +1 -1
  135. package/components/{p-BEiYs-sz.js → p-HthJZjZ6.js} +1 -1
  136. package/components/p-IQN1T5zw.js +4 -0
  137. package/components/{p-B_tZQKpS.js → p-KbMCbGRA.js} +1 -1
  138. package/components/p-ODGeXc3M.js +4 -0
  139. package/components/p-R4UxBukQ.js +4 -0
  140. package/components/{p-fFx6WCTj.js → p-TLtgwTFF.js} +1 -1
  141. package/components/p-Uk13YgEc.js +4 -0
  142. package/components/{p-B8HBLiYi.js → p-V1THdfzs.js} +1 -1
  143. package/components/{p-D4NOsSCE.js → p-YNnH1_Hs.js} +1 -1
  144. package/components/{p-RJT5zTbD.js → p-ZrYBjOcc.js} +1 -1
  145. package/components/{p-eJpG4UbM.js → p-_y7kwBO8.js} +1 -1
  146. package/components/{p-CiFFeRH9.js → p-hLu-eIbb.js} +1 -1
  147. package/components/{p-CQjNc-Pz.js → p-jsVMT15X.js} +1 -1
  148. package/components/{p-CzykzqAO.js → p-r59A3wQk.js} +1 -1
  149. package/components/{p-DPyjiKOq.js → p-yGD6MBgf.js} +1 -1
  150. package/css/core.css.map +1 -1
  151. package/css/display.css.map +1 -1
  152. package/css/flex-utils.css.map +1 -1
  153. package/css/float-elements.css +1 -1
  154. package/css/float-elements.css.map +1 -1
  155. package/css/global.bundle.css.map +1 -1
  156. package/css/ionic.bundle.css +1 -1
  157. package/css/ionic.bundle.css.map +1 -1
  158. package/css/padding.css.map +1 -1
  159. package/css/structure.css.map +1 -1
  160. package/css/text-alignment.css.map +1 -1
  161. package/css/text-transformation.css.map +1 -1
  162. package/css/typography.css.map +1 -1
  163. package/css/utils.bundle.css +1 -1
  164. package/css/utils.bundle.css.map +1 -1
  165. package/dist/cjs/{animation-BFKyYY11.js → animation-DcgLg_PI.js} +2 -2
  166. package/dist/cjs/{app-globals-BLTzqkrC.js → app-globals-BoFCZq0K.js} +1 -1
  167. package/dist/cjs/{attribute-controller-CXIeB0Mn.js → attribute-controller-BjTE2TOf.js} +1 -1
  168. package/dist/cjs/{button-active-CEQaiV9N.js → button-active-FdsfRDY_.js} +2 -2
  169. package/dist/cjs/{capacitor-BMzmHhwe.js → capacitor-C6Pp4Z7A.js} +1 -1
  170. package/dist/cjs/{format-CdRlDqPs.js → format-CVjpvAl1.js} +1 -1
  171. package/dist/cjs/{framework-delegate-DTLbqaaO.js → framework-delegate-JbKIVMzR.js} +1 -1
  172. package/dist/cjs/{haptic-CJVUv_GB.js → haptic--4QteuuM.js} +1 -1
  173. package/dist/cjs/{helpers-Crluoxqu.js → helpers-Cqr69qxA.js} +1 -1
  174. package/dist/cjs/{index-BSD7toMO.js → index-B4ONUQRp.js} +1 -1
  175. package/dist/cjs/{index-BKpybYNI.js → index-BQpSekmz.js} +2 -2
  176. package/dist/cjs/{index-CElfU-dK.js → index-BhWiDK25.js} +6 -5
  177. package/dist/cjs/{index-SAR1xwtW.js → index-BiQyIvoc.js} +40 -27
  178. package/dist/cjs/{index-BAM4223M.js → index-CNaZ6SYM.js} +2 -2
  179. package/dist/cjs/{index-CgXTRA_-.js → index-DUiuw_fH.js} +4 -4
  180. package/dist/cjs/index.cjs.js +11 -11
  181. package/dist/cjs/{input-shims-CHghGZe-.js → input-shims-2AsXPZ5m.js} +5 -5
  182. package/dist/cjs/{input.utils-BBZr0wjw.js → input.utils-Becpo0ax.js} +1 -1
  183. package/dist/cjs/ion-accordion_2.cjs.entry.js +3 -3
  184. package/dist/cjs/ion-action-sheet.cjs.entry.js +11 -11
  185. package/dist/cjs/ion-alert.cjs.entry.js +11 -11
  186. package/dist/cjs/ion-app_8.cjs.entry.js +16 -16
  187. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  188. package/dist/cjs/ion-back-button.cjs.entry.js +3 -3
  189. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  190. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -3
  191. package/dist/cjs/ion-button_2.cjs.entry.js +4 -4
  192. package/dist/cjs/ion-card_5.cjs.entry.js +4 -4
  193. package/dist/cjs/ion-checkbox.cjs.entry.js +4 -4
  194. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  195. package/dist/cjs/ion-col_3.cjs.entry.js +2 -2
  196. package/dist/cjs/ion-datetime-button.cjs.entry.js +4 -4
  197. package/dist/cjs/ion-datetime.cjs.entry.js +6 -6
  198. package/dist/cjs/ion-fab_3.cjs.entry.js +3 -3
  199. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  200. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +5 -5
  201. package/dist/cjs/ion-input-otp.cjs.entry.js +33 -8
  202. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
  203. package/dist/cjs/ion-input.cjs.entry.js +5 -5
  204. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  205. package/dist/cjs/ion-item_8.cjs.entry.js +4 -4
  206. package/dist/cjs/ion-loading.cjs.entry.js +7 -7
  207. package/dist/cjs/ion-menu_3.cjs.entry.js +10 -9
  208. package/dist/cjs/ion-modal.cjs.entry.js +11 -11
  209. package/dist/cjs/ion-nav_2.cjs.entry.js +6 -6
  210. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -3
  211. package/dist/cjs/ion-picker-column.cjs.entry.js +5 -5
  212. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  213. package/dist/cjs/ion-popover.cjs.entry.js +7 -7
  214. package/dist/cjs/ion-progress-bar.cjs.entry.js +3 -3
  215. package/dist/cjs/ion-radio_2.cjs.entry.js +4 -4
  216. package/dist/cjs/ion-range.cjs.entry.js +4 -4
  217. package/dist/cjs/ion-refresher_2.cjs.entry.js +8 -8
  218. package/dist/cjs/ion-reorder_2.cjs.entry.js +6 -6
  219. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -2
  220. package/dist/cjs/ion-route_4.cjs.entry.js +4 -4
  221. package/dist/cjs/ion-searchbar.cjs.entry.js +3 -3
  222. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  223. package/dist/cjs/ion-segment-view.cjs.entry.js +1 -1
  224. package/dist/cjs/ion-segment_2.cjs.entry.js +3 -3
  225. package/dist/cjs/ion-select-modal.cjs.entry.js +7 -7
  226. package/dist/cjs/ion-select_3.cjs.entry.js +8 -8
  227. package/dist/cjs/ion-spinner.cjs.entry.js +2 -2
  228. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  229. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +6 -6
  230. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  231. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  232. package/dist/cjs/ion-textarea.cjs.entry.js +5 -5
  233. package/dist/cjs/ion-toast.cjs.entry.js +7 -7
  234. package/dist/cjs/ion-toggle.cjs.entry.js +6 -6
  235. package/dist/cjs/{ionic-global-C1h8Yi_K.js → ionic-global-48ceLiJ6.js} +1 -1
  236. package/dist/cjs/ionic.cjs.js +5 -5
  237. package/dist/cjs/{ios.transition-YFSxiyP_.js → ios.transition-D85_rHf5.js} +4 -4
  238. package/dist/cjs/{item-multiple-inputs-h2PyAFzG.js → item-multiple-inputs-C-hz7xrh.js} +1 -1
  239. package/dist/cjs/{keyboard-C-C7xMKk.js → keyboard-BlHp4a_c.js} +1 -1
  240. package/dist/cjs/{keyboard-Cv-LNReK.js → keyboard-c2_I35b-.js} +4 -4
  241. package/dist/cjs/{keyboard-controller-CLcFxSnb.js → keyboard-controller-DHS0BgXp.js} +2 -2
  242. package/dist/cjs/loader.cjs.js +4 -4
  243. package/dist/cjs/{md.transition-Cm8yg0UK.js → md.transition-Ce9X1WXr.js} +4 -4
  244. package/dist/cjs/{overlays-C68wNDWY.js → overlays-CLld3axA.js} +79 -20
  245. package/dist/cjs/{select-option-render-C-Yh9yZG.js → select-option-render-CzyhrkOu.js} +2 -2
  246. package/dist/cjs/{slot-mutation-controller-zixZ5LyH.js → slot-mutation-controller-ClDxh3EK.js} +1 -1
  247. package/dist/cjs/{status-tap-C3frTJ4c.js → status-tap-CDA0Y3Ad.js} +3 -3
  248. package/dist/cjs/{swipe-back-ChrfFzIe.js → swipe-back-Dy8pxJCF.js} +2 -2
  249. package/dist/collection/collection-manifest.json +1 -1
  250. package/dist/collection/components/input-otp/input-otp.js +29 -3
  251. package/dist/collection/components/menu/menu.js +4 -3
  252. package/dist/collection/utils/hardware-back-button.js +41 -12
  253. package/dist/collection/utils/menu-controller/index.js +2 -1
  254. package/dist/collection/utils/overlays.js +30 -4
  255. package/dist/docs.json +2 -2
  256. package/dist/esm/{animation-CFd8Olt3.js → animation-DmtJpz89.js} +2 -2
  257. package/dist/esm/{app-globals-7GHLBkwd.js → app-globals-CNfpAPW6.js} +1 -1
  258. package/dist/esm/{attribute-controller-Cn665x42.js → attribute-controller-DPMIcbef.js} +1 -1
  259. package/dist/esm/{button-active-DMuYeDQN.js → button-active-DVk40Sjl.js} +2 -2
  260. package/dist/esm/{capacitor-CoEgIpR9.js → capacitor-CHJaJ9aX.js} +1 -1
  261. package/dist/esm/{format-C9zPmwKU.js → format-Ck1cw5z7.js} +1 -1
  262. package/dist/esm/{framework-delegate-DeT5pmPB.js → framework-delegate-CDjM1vRH.js} +1 -1
  263. package/dist/esm/{haptic-Dxm7ZmT5.js → haptic-WXfMCob9.js} +1 -1
  264. package/dist/esm/{helpers-B54ynME_.js → helpers-BJqKF1pr.js} +1 -1
  265. package/dist/esm/{index-B8iieOdw.js → index-BBASprVu.js} +4 -4
  266. package/dist/esm/{index-D9OR05yj.js → index-BpRUsN_W.js} +40 -27
  267. package/dist/esm/{index-D4ZMZz_3.js → index-CK8uF0iB.js} +1 -1
  268. package/dist/esm/{index-D_xZtbw6.js → index-Clv8QC5L.js} +2 -2
  269. package/dist/esm/{index-B9jhwvmO.js → index-DIouXecD.js} +6 -5
  270. package/dist/esm/{index--21qeSt0.js → index-TkLga3ma.js} +2 -2
  271. package/dist/esm/index.js +11 -11
  272. package/dist/esm/{input-shims-MCrhq67U.js → input-shims-C1iYF5JK.js} +5 -5
  273. package/dist/esm/{input.utils-B-IIWrwT.js → input.utils-DZY_K8Po.js} +1 -1
  274. package/dist/esm/ion-accordion_2.entry.js +3 -3
  275. package/dist/esm/ion-action-sheet.entry.js +11 -11
  276. package/dist/esm/ion-alert.entry.js +11 -11
  277. package/dist/esm/ion-app_8.entry.js +16 -16
  278. package/dist/esm/ion-avatar_3.entry.js +2 -2
  279. package/dist/esm/ion-back-button.entry.js +3 -3
  280. package/dist/esm/ion-backdrop.entry.js +2 -2
  281. package/dist/esm/ion-breadcrumb_2.entry.js +3 -3
  282. package/dist/esm/ion-button_2.entry.js +4 -4
  283. package/dist/esm/ion-card_5.entry.js +4 -4
  284. package/dist/esm/ion-checkbox.entry.js +4 -4
  285. package/dist/esm/ion-chip.entry.js +2 -2
  286. package/dist/esm/ion-col_3.entry.js +2 -2
  287. package/dist/esm/ion-datetime-button.entry.js +4 -4
  288. package/dist/esm/ion-datetime.entry.js +6 -6
  289. package/dist/esm/ion-fab_3.entry.js +3 -3
  290. package/dist/esm/ion-img.entry.js +3 -3
  291. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  292. package/dist/esm/ion-input-otp.entry.js +33 -8
  293. package/dist/esm/ion-input-password-toggle.entry.js +2 -2
  294. package/dist/esm/ion-input.entry.js +5 -5
  295. package/dist/esm/ion-item-option_3.entry.js +4 -4
  296. package/dist/esm/ion-item_8.entry.js +4 -4
  297. package/dist/esm/ion-loading.entry.js +7 -7
  298. package/dist/esm/ion-menu_3.entry.js +10 -9
  299. package/dist/esm/ion-modal.entry.js +11 -11
  300. package/dist/esm/ion-nav_2.entry.js +6 -6
  301. package/dist/esm/ion-picker-column-option.entry.js +3 -3
  302. package/dist/esm/ion-picker-column.entry.js +5 -5
  303. package/dist/esm/ion-picker.entry.js +2 -2
  304. package/dist/esm/ion-popover.entry.js +7 -7
  305. package/dist/esm/ion-progress-bar.entry.js +3 -3
  306. package/dist/esm/ion-radio_2.entry.js +4 -4
  307. package/dist/esm/ion-range.entry.js +4 -4
  308. package/dist/esm/ion-refresher_2.entry.js +8 -8
  309. package/dist/esm/ion-reorder_2.entry.js +6 -6
  310. package/dist/esm/ion-ripple-effect.entry.js +2 -2
  311. package/dist/esm/ion-route_4.entry.js +4 -4
  312. package/dist/esm/ion-searchbar.entry.js +3 -3
  313. package/dist/esm/ion-segment-content.entry.js +1 -1
  314. package/dist/esm/ion-segment-view.entry.js +1 -1
  315. package/dist/esm/ion-segment_2.entry.js +3 -3
  316. package/dist/esm/ion-select-modal.entry.js +7 -7
  317. package/dist/esm/ion-select_3.entry.js +8 -8
  318. package/dist/esm/ion-spinner.entry.js +2 -2
  319. package/dist/esm/ion-split-pane.entry.js +2 -2
  320. package/dist/esm/ion-tab-bar_2.entry.js +6 -6
  321. package/dist/esm/ion-tab_2.entry.js +3 -3
  322. package/dist/esm/ion-text.entry.js +2 -2
  323. package/dist/esm/ion-textarea.entry.js +5 -5
  324. package/dist/esm/ion-toast.entry.js +7 -7
  325. package/dist/esm/ion-toggle.entry.js +6 -6
  326. package/dist/esm/{ionic-global-B-G43ddm.js → ionic-global-Cep6oYzK.js} +1 -1
  327. package/dist/esm/ionic.js +6 -6
  328. package/dist/esm/{ios.transition-CRfGj4Mo.js → ios.transition-B8netzsb.js} +4 -4
  329. package/dist/esm/{item-multiple-inputs-BSD9wGHO.js → item-multiple-inputs-Bd2LO7qK.js} +1 -1
  330. package/dist/esm/{keyboard-DDw62P0D.js → keyboard-B4Y-Gph8.js} +4 -4
  331. package/dist/esm/{keyboard-ly3M0GO7.js → keyboard-Cmqp5iZD.js} +1 -1
  332. package/dist/esm/{keyboard-controller-Dzjet5wD.js → keyboard-controller-B2NoF7bV.js} +2 -2
  333. package/dist/esm/loader.js +5 -5
  334. package/dist/esm/{md.transition-wqThNy_C.js → md.transition-DNCSSiXk.js} +4 -4
  335. package/dist/esm/{overlays-BQnV0HAU.js → overlays-DmDY-El7.js} +78 -21
  336. package/dist/esm/{select-option-render-CGxPejmz.js → select-option-render-BSDT9oSA.js} +2 -2
  337. package/dist/esm/{slot-mutation-controller-C3s4-_YN.js → slot-mutation-controller-hAS2uJ7c.js} +1 -1
  338. package/dist/esm/{status-tap-DRx9wSD_.js → status-tap-VGRBYwiC.js} +3 -3
  339. package/dist/esm/{swipe-back-CXmdi75W.js → swipe-back-tCNYR9ZM.js} +2 -2
  340. package/dist/ionic/index.esm.js +1 -1
  341. package/dist/ionic/ionic.esm.js +1 -1
  342. package/dist/ionic/{p-378341d1.entry.js → p-00cd107d.entry.js} +1 -1
  343. package/dist/ionic/{p-e7414c33.entry.js → p-01b7e3f2.entry.js} +1 -1
  344. package/dist/ionic/{p-f99cf5aa.entry.js → p-0a789930.entry.js} +1 -1
  345. package/dist/ionic/{p-624f2fa8.entry.js → p-0b09c60e.entry.js} +1 -1
  346. package/dist/ionic/{p-150f350e.entry.js → p-0c32c626.entry.js} +1 -1
  347. package/dist/ionic/{p-30dcf43b.entry.js → p-0f97175e.entry.js} +1 -1
  348. package/dist/ionic/{p-e1969fd1.entry.js → p-107a81a6.entry.js} +1 -1
  349. package/dist/ionic/{p-b710b4b8.entry.js → p-230f510c.entry.js} +1 -1
  350. package/dist/ionic/{p-7441ed2b.entry.js → p-27d96a9b.entry.js} +1 -1
  351. package/dist/ionic/{p-c2a23101.entry.js → p-28251c5c.entry.js} +1 -1
  352. package/dist/ionic/{p-93cd738b.entry.js → p-362dcd86.entry.js} +1 -1
  353. package/dist/ionic/{p-42b2a992.entry.js → p-4bd80334.entry.js} +1 -1
  354. package/dist/ionic/{p-1213b719.entry.js → p-4d785062.entry.js} +1 -1
  355. package/dist/ionic/{p-3c4b0ba7.entry.js → p-4e4e5919.entry.js} +1 -1
  356. package/dist/ionic/{p-4dbb2f4f.entry.js → p-4ed3c460.entry.js} +1 -1
  357. package/dist/ionic/{p-6865f0e1.entry.js → p-4f25b926.entry.js} +1 -1
  358. package/dist/ionic/{p-1110da0d.entry.js → p-539d6c8e.entry.js} +1 -1
  359. package/dist/ionic/{p-9dd9788c.entry.js → p-5bb24bce.entry.js} +1 -1
  360. package/dist/ionic/{p-f19e50f8.entry.js → p-60780b88.entry.js} +1 -1
  361. package/dist/ionic/{p-fee863dc.entry.js → p-62c87f3d.entry.js} +1 -1
  362. package/dist/ionic/{p-49a16200.entry.js → p-6317d620.entry.js} +1 -1
  363. package/dist/ionic/{p-58f914ee.entry.js → p-64ac3864.entry.js} +1 -1
  364. package/dist/ionic/{p-37f46670.entry.js → p-6c7b5930.entry.js} +1 -1
  365. package/dist/ionic/{p-e338693a.entry.js → p-77252596.entry.js} +1 -1
  366. package/dist/ionic/p-7ce9c6f8.entry.js +4 -0
  367. package/dist/ionic/{p-0517aec4.entry.js → p-7db20410.entry.js} +1 -1
  368. package/dist/ionic/{p-834afcf7.entry.js → p-7e9c2a97.entry.js} +1 -1
  369. package/dist/ionic/p-7l6ENjIV.js +4 -0
  370. package/dist/ionic/{p-daaecea3.entry.js → p-82abf431.entry.js} +1 -1
  371. package/dist/ionic/{p-e4c3f17f.entry.js → p-8b79061e.entry.js} +1 -1
  372. package/dist/ionic/{p-b9659d21.entry.js → p-8c85e250.entry.js} +1 -1
  373. package/dist/ionic/{p-e137f724.entry.js → p-8d651adb.entry.js} +1 -1
  374. package/dist/ionic/{p-eb762f80.entry.js → p-8db08782.entry.js} +1 -1
  375. package/dist/ionic/{p-76309bab.entry.js → p-91f3cd8b.entry.js} +1 -1
  376. package/dist/ionic/{p-2e6e933d.entry.js → p-930c3538.entry.js} +1 -1
  377. package/dist/ionic/{p-083b1119.entry.js → p-9ffccbf1.entry.js} +1 -1
  378. package/dist/ionic/{p-DffXRKHu.js → p-B0jcOZOE.js} +1 -1
  379. package/dist/ionic/{p-tXpzvta8.js → p-B8IuTu_r.js} +1 -1
  380. package/dist/ionic/p-BNXIurCt.js +4 -0
  381. package/dist/ionic/{p-BUB5OrpU.js → p-BO10QT9r.js} +1 -1
  382. package/dist/ionic/p-BOLqP2-V.js +4 -0
  383. package/dist/ionic/{p-DxvRP6ld.js → p-BY4FwwBp.js} +1 -1
  384. package/dist/ionic/p-BdHBcCZF.js +4 -0
  385. package/dist/ionic/p-BexAj0yw.js +4 -0
  386. package/dist/ionic/{p-kKvGoaEe.js → p-Bnc1L7Rk.js} +1 -1
  387. package/dist/ionic/p-BpRUsN_W.js +6 -0
  388. package/dist/ionic/p-Bppj2PE0.js +4 -0
  389. package/dist/ionic/p-BuLlVedw.js +4 -0
  390. package/dist/ionic/{p-CsWrz1c2.js → p-Bx5x5GJV.js} +1 -1
  391. package/dist/ionic/p-C1WYZOZj.js +4 -0
  392. package/dist/ionic/p-C2LaBx3E.js +4 -0
  393. package/dist/ionic/{p-DNxEB9-T.js → p-CXs4J83x.js} +1 -1
  394. package/dist/ionic/{p-B4xjg_Qu.js → p-Co7eql8D.js} +1 -1
  395. package/dist/ionic/p-D13gXhdC.js +4 -0
  396. package/dist/ionic/{p-BtHAx8im.js → p-D926OmIX.js} +1 -1
  397. package/dist/ionic/{p-BCgqWm-V.js → p-DPNVo1nr.js} +1 -1
  398. package/{components/p-CVVUo4J1.js → dist/ionic/p-DQXtveHv.js} +1 -1
  399. package/dist/ionic/p-DXXGkPA8.js +4 -0
  400. package/dist/ionic/{p-CCik51Nv.js → p-DfvWlTdB.js} +1 -1
  401. package/dist/ionic/p-DriE1ZAo.js +4 -0
  402. package/dist/ionic/{p-BhMQahM6.js → p-DxftXYZp.js} +1 -1
  403. package/dist/ionic/{p-CrAPHbJ3.js → p-SEecsUh7.js} +1 -1
  404. package/dist/ionic/{p-5c19330c.entry.js → p-a4389f13.entry.js} +1 -1
  405. package/dist/ionic/p-af11d3c6.entry.js +4 -0
  406. package/dist/ionic/{p-f9057f70.entry.js → p-af56702e.entry.js} +1 -1
  407. package/dist/ionic/{p-5b9666be.entry.js → p-b3aadfe8.entry.js} +1 -1
  408. package/dist/ionic/p-b5bcbbc1.entry.js +4 -0
  409. package/dist/ionic/{p-3a5faaa8.entry.js → p-b9ed3a52.entry.js} +1 -1
  410. package/dist/ionic/{p-61b304c8.entry.js → p-bfdbe24b.entry.js} +1 -1
  411. package/dist/ionic/{p-b0a3dd1a.entry.js → p-c250b6b0.entry.js} +1 -1
  412. package/dist/ionic/{p-20d1ac29.entry.js → p-c293f854.entry.js} +1 -1
  413. package/dist/ionic/{p-336ea4b8.entry.js → p-c81ec0e8.entry.js} +1 -1
  414. package/dist/ionic/p-c83dbc12.entry.js +4 -0
  415. package/dist/ionic/{p-0ab133d6.entry.js → p-d0e374f8.entry.js} +1 -1
  416. package/dist/ionic/{p-24b0a961.entry.js → p-d72accc4.entry.js} +1 -1
  417. package/dist/ionic/{p-636349e2.entry.js → p-d9a3dfd1.entry.js} +1 -1
  418. package/dist/ionic/p-e1haAYzm.js +4 -0
  419. package/dist/ionic/{p-e05073f6.entry.js → p-e7ab4def.entry.js} +1 -1
  420. package/dist/ionic/{p-9b78fedf.entry.js → p-eb989dc9.entry.js} +1 -1
  421. package/dist/ionic/{p-b1164028.entry.js → p-ec259ac5.entry.js} +1 -1
  422. package/dist/ionic/{p-B4ELlbJE.js → p-nCAPr1Ah.js} +1 -1
  423. package/dist/types/components/input-otp/input-otp.d.ts +7 -0
  424. package/dist/types/utils/config.d.ts +4 -1
  425. package/dist/types/utils/hardware-back-button.d.ts +11 -0
  426. package/dist/types/utils/overlays.d.ts +5 -2
  427. package/hydrate/index.js +444 -195
  428. package/hydrate/index.mjs +444 -195
  429. package/package.json +1 -1
  430. package/components/p-BKeulLTJ.js +0 -4
  431. package/components/p-BNnmwjuy.js +0 -4
  432. package/components/p-BUVGbkSc.js +0 -4
  433. package/components/p-BriaEJK8.js +0 -4
  434. package/components/p-BsLM9eQu.js +0 -4
  435. package/components/p-Bu6O-veK.js +0 -4
  436. package/components/p-CJgshb3W.js +0 -4
  437. package/components/p-CcQQ8oRo.js +0 -4
  438. package/components/p-Ctw69DyZ.js +0 -4
  439. package/components/p-F1rV0pyK.js +0 -4
  440. package/components/p-WMQuK_Tj.js +0 -4
  441. package/components/p-q2WJ5Igc.js +0 -4
  442. package/dist/ionic/p-52dc3309.entry.js +0 -4
  443. package/dist/ionic/p-83448626.entry.js +0 -4
  444. package/dist/ionic/p-B4wzg4z4.js +0 -4
  445. package/dist/ionic/p-BChRVdVv.js +0 -4
  446. package/dist/ionic/p-BVEsh7-M.js +0 -4
  447. package/dist/ionic/p-Ba6ZV-qU.js +0 -4
  448. package/dist/ionic/p-CTmJSZcs.js +0 -4
  449. package/dist/ionic/p-CVwXN07G.js +0 -4
  450. package/dist/ionic/p-CgQdInM0.js +0 -4
  451. package/dist/ionic/p-D5akOqD0.js +0 -4
  452. package/dist/ionic/p-D9OR05yj.js +0 -6
  453. package/dist/ionic/p-DHf9V6zI.js +0 -4
  454. package/dist/ionic/p-DZUqAr_6.js +0 -4
  455. package/dist/ionic/p-Dzew6Qv7.js +0 -4
  456. package/dist/ionic/p-ba7bd621.entry.js +0 -4
  457. package/dist/ionic/p-edcb63e5.entry.js +0 -4
  458. package/dist/ionic/p-vPo3vRFc.js +0 -4
@@ -30,6 +30,23 @@ export const shouldUseCloseWatcher = () => config.get('experimentalCloseWatcher'
30
30
  export const blockHardwareBackButton = () => {
31
31
  document.addEventListener('backbutton', () => { });
32
32
  };
33
+ const closeWatcherConditions = [];
34
+ let syncCloseWatcher;
35
+ /**
36
+ * Registers a check for whether the back button
37
+ * has something to close. The CloseWatcher is only
38
+ * active while one of these checks passes.
39
+ */
40
+ export const addCloseWatcherCondition = (condition) => {
41
+ closeWatcherConditions.push(condition);
42
+ };
43
+ /**
44
+ * Call this whenever something the back button
45
+ * can close opens or closes.
46
+ */
47
+ export const updateCloseWatcher = () => {
48
+ syncCloseWatcher?.();
49
+ };
33
50
  export const startHardwareBackButton = () => {
34
51
  const doc = document;
35
52
  let busy = false;
@@ -81,32 +98,44 @@ export const startHardwareBackButton = () => {
81
98
  processHandlers();
82
99
  };
83
100
  /**
84
- * If the CloseWatcher is defined then
85
- * we don't want to also listen for the native
86
- * backbutton event otherwise we may get duplicate
87
- * events firing.
101
+ * Android WebView never sends the hardware back
102
+ * button to a CloseWatcher, so hybrid apps still
103
+ * need this. Browsers never fire backbutton.
88
104
  */
105
+ doc.addEventListener('backbutton', backButtonCallback);
89
106
  if (shouldUseCloseWatcher()) {
90
107
  let watcher;
91
- const configureWatcher = () => {
92
- watcher?.destroy();
108
+ /**
109
+ * An active CloseWatcher stops the back button from
110
+ * navigating, so only keep one while there's something to close.
111
+ */
112
+ syncCloseWatcher = () => {
113
+ const canClose = closeWatcherConditions.some((condition) => condition());
114
+ if (!canClose) {
115
+ watcher?.destroy();
116
+ watcher = undefined;
117
+ return;
118
+ }
119
+ if (watcher !== undefined) {
120
+ return;
121
+ }
93
122
  watcher = new win.CloseWatcher();
94
123
  /**
95
124
  * Once a close request happens
96
125
  * the watcher gets destroyed.
97
126
  * As a result, we need to re-configure
98
127
  * the watcher so we can respond to other
99
- * close requests.
128
+ * close requests, including after one that
129
+ * closed nothing, like a modal whose canDismiss
130
+ * returned false.
100
131
  */
101
132
  watcher.onclose = () => {
133
+ watcher = undefined;
102
134
  backButtonCallback();
103
- configureWatcher();
135
+ syncCloseWatcher?.();
104
136
  };
105
137
  };
106
- configureWatcher();
107
- }
108
- else {
109
- doc.addEventListener('backbutton', backButtonCallback);
138
+ syncCloseWatcher();
110
139
  }
111
140
  };
112
141
  export const OVERLAY_BACK_BUTTON_PRIORITY = 100;
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { doc } from "../browser/index";
5
- import { MENU_BACK_BUTTON_PRIORITY } from "../hardware-back-button";
5
+ import { MENU_BACK_BUTTON_PRIORITY, addCloseWatcherCondition } from "../hardware-back-button";
6
6
  import { printIonWarning } from "../logging/index";
7
7
  import { componentOnReady } from "../helpers";
8
8
  import { menuOverlayAnimation } from "./animations/overlay";
@@ -184,6 +184,7 @@ const createMenuController = () => {
184
184
  registerAnimation('reveal', menuRevealAnimation);
185
185
  registerAnimation('push', menuPushAnimation);
186
186
  registerAnimation('overlay', menuOverlayAnimation);
187
+ addCloseWatcherCondition(() => _getOpenSync() !== undefined);
187
188
  doc?.addEventListener('ionBackButton', (ev) => {
188
189
  const openMenu = _getOpenSync();
189
190
  if (openMenu) {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { doc } from "./browser/index";
5
5
  import { focusFirstDescendant, focusLastDescendant, focusableQueryString } from "./focus-trap";
6
- import { shouldUseCloseWatcher } from "./hardware-back-button";
6
+ import { addCloseWatcherCondition, shouldUseCloseWatcher, updateCloseWatcher } from "./hardware-back-button";
7
7
  import { printIonError, printIonWarning } from "./logging/index";
8
8
  import { config } from "../global/config";
9
9
  import { getIonMode } from "../global/ionic-global";
@@ -13,6 +13,11 @@ import { OVERLAY_BACK_BUTTON_PRIORITY } from "./hardware-back-button";
13
13
  import { addEventListener, componentOnReady, focusVisibleElement, getElementRoot, removeEventListener, } from "./helpers";
14
14
  let lastOverlayIndex = 0;
15
15
  let lastId = 0;
16
+ /**
17
+ * Every overlay except toast, which doesn't trap
18
+ * focus or close on back.
19
+ */
20
+ const NON_TOAST_OVERLAYS = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover';
16
21
  export const activeAnimations = new WeakMap();
17
22
  /**
18
23
  * Determines if the overlay's backdrop is always blocking (no background interaction).
@@ -139,7 +144,7 @@ const focusElementInOverlay = (hostToFocus, overlay) => {
139
144
  * Should NOT include: Toast
140
145
  */
141
146
  const trapKeyboardFocus = (ev, doc) => {
142
- const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-popover');
147
+ const lastOverlay = getPresentedOverlay(doc, NON_TOAST_OVERLAYS);
143
148
  const target = ev.target;
144
149
  /**
145
150
  * If no active overlay, ignore this event.
@@ -322,6 +327,11 @@ const connectListeners = (doc) => {
322
327
  doc.addEventListener('focus', (ev) => {
323
328
  trapKeyboardFocus(ev, doc);
324
329
  }, true);
330
+ /**
331
+ * Whether the overlay actually dismisses is checked at press time,
332
+ * since `backdropDismiss` can change while it's open.
333
+ */
334
+ addCloseWatcherCondition(() => getPresentedOverlay(doc, NON_TOAST_OVERLAYS) !== undefined);
325
335
  // handle back-button click
326
336
  doc.addEventListener('ionBackButton', (ev) => {
327
337
  const lastOverlay = getPresentedOverlay(doc);
@@ -445,7 +455,8 @@ export const setRootAriaHidden = (hidden = false) => {
445
455
  * Cleans up root `aria-hidden` and `backdrop-no-scroll` when
446
456
  * an overlay is removed from the DOM without going through
447
457
  * the `dismiss()` flow (e.g., when a framework unmounts the
448
- * overlay during a route change).
458
+ * overlay during a route change). Also releases the
459
+ * CloseWatcher if nothing is left to close.
449
460
  *
450
461
  * Should be called from an overlay's `disconnectedCallback`
451
462
  * when the overlay was still presented at the time of removal.
@@ -454,6 +465,7 @@ export const cleanupRootFocusTrapAccessibility = () => {
454
465
  if (typeof document === 'undefined') {
455
466
  return;
456
467
  }
468
+ updateCloseWatcher();
457
469
  const remainingOverlays = getPresentedOverlays(document);
458
470
  const hasRemainingLocking = remainingOverlays.some((o) => locksAppRoot(o));
459
471
  if (!hasRemainingLocking) {
@@ -475,7 +487,9 @@ const applyRootLock = (el) => {
475
487
  };
476
488
  /**
477
489
  * Re-applies the root lock that `cleanupRootFocusTrapAccessibility()` released.
478
- * Call from `connectedCallback` when the overlay is still presented.
490
+ * Call from `connectedCallback` when the overlay is still presented. Also
491
+ * re-arms the CloseWatcher, which every overlay needs, so that happens
492
+ * before the `locksAppRoot` check.
479
493
  *
480
494
  * A synchronous move keeps the overlay connected, so the lock survives. A
481
495
  * detach with a re-insert in a later task releases it, which is the shape a
@@ -485,6 +499,7 @@ export const restoreRootFocusTrapAccessibility = (overlayEl) => {
485
499
  if (typeof document === 'undefined') {
486
500
  return;
487
501
  }
502
+ updateCloseWatcher();
488
503
  const el = overlayEl;
489
504
  if (!locksAppRoot(el)) {
490
505
  return;
@@ -698,6 +713,11 @@ export const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLe
698
713
  printIonError(`[${overlay.el.tagName.toLowerCase()}] - `, err);
699
714
  }
700
715
  overlay.el.remove();
716
+ /**
717
+ * Release the back button if nothing
718
+ * else is left to close.
719
+ */
720
+ updateCloseWatcher();
701
721
  return true;
702
722
  };
703
723
  const getAppRoot = (doc) => {
@@ -706,6 +726,12 @@ const getAppRoot = (doc) => {
706
726
  const overlayAnimation = async (overlay, animationBuilder, baseEl, opts) => {
707
727
  // Make overlay visible in case it's hidden
708
728
  baseEl.classList.remove('overlay-hidden');
729
+ /**
730
+ * Removing `overlay-hidden` makes the overlay count
731
+ * as presented, so back can dismiss it while it
732
+ * animates in.
733
+ */
734
+ updateCloseWatcher();
709
735
  const aniRoot = overlay.el;
710
736
  const animation = animationBuilder(aniRoot, opts);
711
737
  if (!overlay.animated || !config.getBoolean('animated', true)) {
package/dist/docs.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
- "timestamp": "2026-10-03T19:32:19",
2
+ "timestamp": "2026-10-09T04:07:06",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
- "version": "4.45.1",
5
+ "version": "4.45.2",
6
6
  "typescriptVersion": "5.8.3"
7
7
  },
8
8
  "components": [
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as printIonError } from './index-D9OR05yj.js';
5
- import { w as win } from './helpers-B54ynME_.js';
4
+ import { c as printIonError } from './index-BpRUsN_W.js';
5
+ import { w as win } from './helpers-BJqKF1pr.js';
6
6
 
7
7
  let animationPrefix;
8
8
  const getAnimationPrefix = (el) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { i as initialize } from './ionic-global-B-G43ddm.js';
4
+ import { i as initialize } from './ionic-global-Cep6oYzK.js';
5
5
 
6
6
  const appGlobalScript = initialize || (() => {});
7
7
  const globalScripts = appGlobalScript;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { b as inheritAttributes, w as win, q as ariaAttributes } from './helpers-B54ynME_.js';
4
+ import { b as inheritAttributes, w as win, q as ariaAttributes } from './helpers-BJqKF1pr.js';
5
5
 
6
6
  /**
7
7
  * Copies a set of attributes off the host element so they can be applied to an element
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as writeTask } from './index-D9OR05yj.js';
5
- import { h as hapticSelectionEnd, a as hapticSelectionChanged, b as hapticSelectionStart } from './haptic-Dxm7ZmT5.js';
4
+ import { w as writeTask } from './index-BpRUsN_W.js';
5
+ import { h as hapticSelectionEnd, a as hapticSelectionChanged, b as hapticSelectionStart } from './haptic-WXfMCob9.js';
6
6
  import { createGesture } from './index-BmLuEdV7.js';
7
7
 
8
8
  const createButtonActiveGesture = (el, isButton) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as win } from './helpers-B54ynME_.js';
4
+ import { w as win } from './helpers-BJqKF1pr.js';
5
5
 
6
6
  const getCapacitor = () => {
7
7
  if (win !== undefined) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { a as printIonWarning } from './index-D9OR05yj.js';
4
+ import { a as printIonWarning } from './index-BpRUsN_W.js';
5
5
 
6
6
  /**
7
7
  * Returns true if the selected day is equal to the reference day
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as componentOnReady } from './helpers-B54ynME_.js';
4
+ import { c as componentOnReady } from './helpers-BJqKF1pr.js';
5
5
 
6
6
  // TODO(FW-2832): types
7
7
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { g as getCapacitor } from './capacitor-CoEgIpR9.js';
4
+ import { g as getCapacitor } from './capacitor-CHJaJ9aX.js';
5
5
 
6
6
  var ImpactStyle;
7
7
  (function (ImpactStyle) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as printIonError } from './index-D9OR05yj.js';
4
+ import { c as printIonError } from './index-BpRUsN_W.js';
5
5
  import { i as isRTL } from './dir-Dojwmvde.js';
6
6
 
7
7
  const win = typeof window !== 'undefined' ? window : undefined;
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { i as config, a as printIonWarning, w as writeTask, B as Build } from './index-D9OR05yj.js';
5
- import { r as raf } from './helpers-B54ynME_.js';
4
+ import { i as config, a as printIonWarning, w as writeTask, B as Build } from './index-BpRUsN_W.js';
5
+ import { r as raf } from './helpers-BJqKF1pr.js';
6
6
 
7
7
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
8
8
  const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
@@ -118,8 +118,8 @@ const createFocusController = () => {
118
118
  };
119
119
  const LAST_FOCUS = 'ion-last-focus';
120
120
 
121
- const iosTransitionAnimation = () => import('./ios.transition-CRfGj4Mo.js');
122
- const mdTransitionAnimation = () => import('./md.transition-wqThNy_C.js');
121
+ const iosTransitionAnimation = () => import('./ios.transition-B8netzsb.js');
122
+ const mdTransitionAnimation = () => import('./md.transition-DNCSSiXk.js');
123
123
  const focusController = createFocusController();
124
124
  // TODO(FW-2832): types
125
125
  /**
@@ -145,7 +145,7 @@ const printRequiredElementError = (el, ...targetSelectors) => {
145
145
  };
146
146
 
147
147
  /*
148
- Stencil Client Platform v4.45.1 | MIT Licensed | https://stenciljs.com
148
+ Stencil Client Platform v4.45.2 | MIT Licensed | https://stenciljs.com
149
149
  */
150
150
 
151
151
  var Build = {
@@ -585,7 +585,7 @@ var queueDomReads = [];
585
585
  var queueDomWrites = [];
586
586
  var scheduleFlush = () => {
587
587
  var _a;
588
- return ((_a = win.document) == null ? void 0 : _a.hidden) ? nextTick(flush) : plt.raf(flush);
588
+ return ((_a = win.document) == null ? void 0 : _a.hidden) ? setTimeout(flush, 16) : plt.raf(flush);
589
589
  };
590
590
  var queueTask = (queue, write) => (cb) => {
591
591
  queue.push(cb);
@@ -2099,7 +2099,12 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRen
2099
2099
  newClasses = [...new Set(newClasses)].filter((c) => c);
2100
2100
  classList.add(...newClasses);
2101
2101
  } else {
2102
- classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
2102
+ let removedClasses = oldClasses.filter((c) => c && !newClasses.includes(c));
2103
+ if (initialRender && !(flags & 4 /* isHost */)) {
2104
+ const ownClasses = getOwnHostClasses(elm);
2105
+ removedClasses = removedClasses.filter((c) => !ownClasses.includes(c));
2106
+ }
2107
+ classList.remove(...removedClasses);
2103
2108
  classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
2104
2109
  }
2105
2110
  } else if (memberName === "style") {
@@ -2224,6 +2229,18 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRen
2224
2229
  var ENUMERATED_ATTRIBUTES = /* @__PURE__ */ new Set(["draggable", "contenteditable", "spellcheck"]);
2225
2230
  var isEnumeratedAttribute = (attrName) => ENUMERATED_ATTRIBUTES.has(attrName) || attrName.startsWith("aria-");
2226
2231
  var parseClassListRegex = /\s/;
2232
+ var getOwnHostClasses = (elm) => {
2233
+ var _a, _b, _c;
2234
+ const hostRef = getHostRef(elm);
2235
+ if (!hostRef || !(hostRef.$flags$ & 2 /* hasRendered */)) {
2236
+ return [];
2237
+ }
2238
+ const ownClasses = parseClassList((_b = (_a = hostRef.$vnode$) == null ? void 0 : _a.$attrs$) == null ? void 0 : _b.class);
2239
+ {
2240
+ ownClasses.push((_c = BUILD.hydratedSelectorName) != null ? _c : "hydrated");
2241
+ }
2242
+ return ownClasses;
2243
+ };
2227
2244
  var parseClassList = (value) => {
2228
2245
  if (typeof value === "object" && value && "baseVal" in value) {
2229
2246
  value = value.baseVal;
@@ -3117,6 +3134,19 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
3117
3134
 
3118
3135
  // src/runtime/proxy-component.ts
3119
3136
  var reflectedAttrValue = (propValue) => propValue == null || propValue === false ? null : propValue === true ? "" : String(propValue);
3137
+ var replayPendingSetterValues = (hostRef, cmpMeta) => {
3138
+ var _a;
3139
+ const instance = hostRef.$lazyInstance$;
3140
+ if (!instance) return;
3141
+ for (const [memberName, [memberFlags]] of Object.entries((_a = cmpMeta.$members$) != null ? _a : {})) {
3142
+ if (memberFlags & 4096 /* Setter */ && hostRef.$instanceValues$.has(memberName)) {
3143
+ const pendingValue = hostRef.$instanceValues$.get(memberName);
3144
+ if (instance[memberName] !== pendingValue) {
3145
+ instance[memberName] = pendingValue;
3146
+ }
3147
+ }
3148
+ }
3149
+ };
3120
3150
  var proxyComponent = (Cstr, cmpMeta, flags) => {
3121
3151
  var _a, _b;
3122
3152
  const prototype = Cstr.prototype;
@@ -3146,9 +3176,8 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
3146
3176
  return getValue(this, memberName);
3147
3177
  }
3148
3178
  const ref = getHostRef(this);
3149
- const instance = ref ? ref.$lazyInstance$ : prototype;
3150
- if (!instance) return;
3151
- return instance[memberName];
3179
+ if (!ref) return prototype[memberName];
3180
+ return ref.$lazyInstance$ ? ref.$lazyInstance$[memberName] : getValue(this, memberName);
3152
3181
  }
3153
3182
  },
3154
3183
  configurable: true,
@@ -3178,36 +3207,20 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
3178
3207
  {
3179
3208
  if ((flags & 1 /* isElementConstructor */) === 0 || (cmpMeta.$members$[memberName][0] & 4096 /* Setter */) === 0) {
3180
3209
  setValue(this, memberName, newValue, cmpMeta);
3181
- if (flags & 1 /* isElementConstructor */ && !ref.$lazyInstance$) {
3182
- ref.$fetchedCbList$.push(() => {
3183
- if (cmpMeta.$members$[memberName][0] & 4096 /* Setter */ && ref.$lazyInstance$[memberName] !== ref.$instanceValues$.get(memberName)) {
3184
- ref.$lazyInstance$[memberName] = newValue;
3185
- }
3186
- });
3187
- }
3188
3210
  return;
3189
3211
  }
3190
3212
  const parsedValue = parsePropertyValue(
3191
3213
  newValue,
3192
3214
  memberFlags);
3193
- const setterSetVal = (val) => {
3215
+ if (ref.$lazyInstance$) {
3194
3216
  const currentValue = ref.$lazyInstance$[memberName];
3195
3217
  if (!ref.$instanceValues$.get(memberName) && currentValue) {
3196
3218
  ref.$instanceValues$.set(memberName, currentValue);
3197
3219
  }
3198
- ref.$lazyInstance$[memberName] = val;
3220
+ ref.$lazyInstance$[memberName] = parsedValue;
3199
3221
  setValue(this, memberName, ref.$lazyInstance$[memberName], cmpMeta);
3200
- };
3201
- if (ref.$lazyInstance$) {
3202
- setterSetVal(parsedValue);
3203
3222
  } else {
3204
3223
  ref.$instanceValues$.set(memberName, parsedValue);
3205
- ref.$fetchedCbList$.push(() => {
3206
- const pendingValue = ref.$instanceValues$.get(memberName);
3207
- if (ref.$lazyInstance$[memberName] !== pendingValue) {
3208
- setterSetVal(pendingValue);
3209
- }
3210
- });
3211
3224
  }
3212
3225
  }
3213
3226
  }
@@ -3263,11 +3276,10 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
3263
3276
  }
3264
3277
  const isSpuriousBooleanRemoval = isBooleanTarget && newValue === null && this[propName] === void 0;
3265
3278
  if (isBooleanTarget) {
3266
- newValue = newValue === null || newValue === "false" ? false : true;
3279
+ newValue = newValue === null || newValue === "false" && true ? false : true;
3267
3280
  }
3268
- const currentValue = propMemberFlags & 4096 /* Setter */ ? hostRef.$instanceValues$.get(propName) : this[propName];
3269
3281
  const propDesc = Object.getOwnPropertyDescriptor(prototype, propName);
3270
- if (!isSpuriousBooleanRemoval && newValue != currentValue && (!propDesc.get || !!propDesc.set)) {
3282
+ if (!isSpuriousBooleanRemoval && newValue != this[propName] && (!propDesc.get || !!propDesc.set)) {
3271
3283
  this[propName] = newValue;
3272
3284
  }
3273
3285
  });
@@ -3337,6 +3349,7 @@ var initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
3337
3349
  }
3338
3350
  {
3339
3351
  hostRef.$flags$ &= -9 /* isConstructingInstance */;
3352
+ replayPendingSetterValues(hostRef, cmpMeta);
3340
3353
  }
3341
3354
  {
3342
3355
  hostRef.$flags$ |= 128 /* isWatchReady */;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { a as printIonWarning, c as printIonError } from './index-D9OR05yj.js';
4
+ import { a as printIonWarning, c as printIonError } from './index-BpRUsN_W.js';
5
5
 
6
6
  /**
7
7
  * Sanitize an untrusted HTML string.
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { n as doc, x as pointerCoord } from './helpers-B54ynME_.js';
5
- import './index-D9OR05yj.js';
4
+ import { n as doc, x as pointerCoord } from './helpers-BJqKF1pr.js';
5
+ import './index-BpRUsN_W.js';
6
6
  import './dir-Dojwmvde.js';
7
7
 
8
8
  const startTapClick = (config) => {
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { n as doc, c as componentOnReady } from './helpers-B54ynME_.js';
5
- import { M as MENU_BACK_BUTTON_PRIORITY } from './overlays-BQnV0HAU.js';
6
- import { a as printIonWarning } from './index-D9OR05yj.js';
7
- import { b as getIonMode } from './ionic-global-B-G43ddm.js';
8
- import { c as createAnimation } from './animation-CFd8Olt3.js';
4
+ import { n as doc, c as componentOnReady } from './helpers-BJqKF1pr.js';
5
+ import { M as MENU_BACK_BUTTON_PRIORITY, q as addCloseWatcherCondition } from './overlays-DmDY-El7.js';
6
+ import { a as printIonWarning } from './index-BpRUsN_W.js';
7
+ import { b as getIonMode } from './ionic-global-Cep6oYzK.js';
8
+ import { c as createAnimation } from './animation-DmtJpz89.js';
9
9
 
10
10
  /**
11
11
  * baseAnimation
@@ -271,6 +271,7 @@ const createMenuController = () => {
271
271
  registerAnimation('reveal', menuRevealAnimation);
272
272
  registerAnimation('push', menuPushAnimation);
273
273
  registerAnimation('overlay', menuOverlayAnimation);
274
+ addCloseWatcherCondition(() => _getOpenSync() !== undefined);
274
275
  doc?.addEventListener('ionBackButton', (ev) => {
275
276
  const openMenu = _getOpenSync();
276
277
  if (openMenu) {
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as componentOnReady } from './helpers-B54ynME_.js';
5
- import { t as printRequiredElementError } from './index-D9OR05yj.js';
4
+ import { c as componentOnReady } from './helpers-BJqKF1pr.js';
5
+ import { t as printRequiredElementError } from './index-BpRUsN_W.js';
6
6
 
7
7
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
8
8
  const ION_CONTENT_ELEMENT_SELECTOR = 'ion-content';
package/dist/esm/index.js CHANGED
@@ -1,23 +1,23 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- export { c as createAnimation } from './animation-CFd8Olt3.js';
5
- export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-B8iieOdw.js';
6
- export { iosTransitionAnimation } from './ios.transition-CRfGj4Mo.js';
7
- export { mdTransitionAnimation } from './md.transition-wqThNy_C.js';
4
+ export { c as createAnimation } from './animation-DmtJpz89.js';
5
+ export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-BBASprVu.js';
6
+ export { iosTransitionAnimation } from './ios.transition-B8netzsb.js';
7
+ export { mdTransitionAnimation } from './md.transition-DNCSSiXk.js';
8
8
  export { g as getTimeGivenProgression } from './cubic-bezier-hHmYLOfE.js';
9
9
  export { createGesture } from './index-BmLuEdV7.js';
10
- export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-B-G43ddm.js';
11
- export { c as componentOnReady } from './helpers-B54ynME_.js';
12
- export { L as LogLevel, c as printIonError, a as printIonWarning } from './index-D9OR05yj.js';
13
- export { I as IonicSafeString } from './index-D4ZMZz_3.js';
10
+ export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-Cep6oYzK.js';
11
+ export { c as componentOnReady } from './helpers-BJqKF1pr.js';
12
+ export { L as LogLevel, c as printIonError, a as printIonWarning } from './index-BpRUsN_W.js';
13
+ export { I as IonicSafeString } from './index-CK8uF0iB.js';
14
14
  export { g as getMode, s as setupConfig } from './config-DWCzVL3Y.js';
15
15
  export { o as openURL } from './theme-byZM6qHV.js';
16
- export { m as menuController } from './index-B9jhwvmO.js';
17
- export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as popoverController, t as toastController } from './overlays-BQnV0HAU.js';
16
+ export { m as menuController } from './index-DIouXecD.js';
17
+ export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as popoverController, t as toastController } from './overlays-DmDY-El7.js';
18
18
  import './gesture-controller-B_gJaBk0.js';
19
19
  import './dir-Dojwmvde.js';
20
- import './framework-delegate-DeT5pmPB.js';
20
+ import './framework-delegate-CDjM1vRH.js';
21
21
 
22
22
  const IonicSlides = (opts) => {
23
23
  const { swiper, extendParams } = opts;
@@ -1,12 +1,12 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { f as addEventListener, m as removeEventListener, w as win, n as doc, c as componentOnReady } from './helpers-B54ynME_.js';
5
- import { g as getScrollElement, h as scrollByPoint, a as findClosestIonContent } from './index--21qeSt0.js';
6
- import { a as KeyboardResize, K as Keyboard } from './keyboard-ly3M0GO7.js';
7
- import './index-D9OR05yj.js';
4
+ import { f as addEventListener, m as removeEventListener, w as win, n as doc, c as componentOnReady } from './helpers-BJqKF1pr.js';
5
+ import { g as getScrollElement, h as scrollByPoint, a as findClosestIonContent } from './index-TkLga3ma.js';
6
+ import { a as KeyboardResize, K as Keyboard } from './keyboard-Cmqp5iZD.js';
7
+ import './index-BpRUsN_W.js';
8
8
  import './dir-Dojwmvde.js';
9
- import './capacitor-CoEgIpR9.js';
9
+ import './capacitor-CHJaJ9aX.js';
10
10
 
11
11
  const cloneMap = new WeakMap();
12
12
  const relocateInput = (componentEl, inputEl, shouldRelocate, inputRelativeY = 0, disabledClonedInput = false) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { c as printIonError } from './index-D9OR05yj.js';
4
+ import { c as printIonError } from './index-BpRUsN_W.js';
5
5
 
6
6
  const getCounterText = (value, maxLength, counterFormatter) => {
7
7
  const valueLength = value == null ? 0 : value.toString().length;
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { r as registerInstance, i as config, h, f as Host, g as getElement, d as createEvent, a as printIonWarning } from './index-D9OR05yj.js';
5
- import { g as getElementRoot, r as raf, f as addEventListener, m as removeEventListener, t as transitionEndAsync } from './helpers-B54ynME_.js';
4
+ import { r as registerInstance, i as config, h, f as Host, g as getElement, d as createEvent, a as printIonWarning } from './index-BpRUsN_W.js';
5
+ import { g as getElementRoot, r as raf, f as addEventListener, m as removeEventListener, t as transitionEndAsync } from './helpers-BJqKF1pr.js';
6
6
  import { b as chevronDown } from './index-BvabGprD.js';
7
- import { b as getIonMode } from './ionic-global-B-G43ddm.js';
7
+ import { b as getIonMode } from './ionic-global-Cep6oYzK.js';
8
8
  import './dir-Dojwmvde.js';
9
9
 
10
10
  const accordionIosCss = () => `:host{display:block;position:relative;width:100%;background-color:var(--ion-background-color, #ffffff);overflow:hidden;z-index:0}:host(.accordion-expanding) ::slotted(ion-item[slot=header]),:host(.accordion-expanded) ::slotted(ion-item[slot=header]){--border-width:0px}:host(.accordion-animated){-webkit-transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:all 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}:host(.accordion-animated) #content{-webkit-transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);transition:max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1)}#content{overflow:hidden;will-change:max-height}:host(.accordion-collapsing) #content{max-height:0 !important}:host(.accordion-collapsed) #content{display:none}:host(.accordion-expanding) #content{max-height:0}:host(.accordion-expanding) #content-wrapper{overflow:auto}:host(.accordion-disabled) #header,:host(.accordion-readonly) #header,:host(.accordion-disabled) #content,:host(.accordion-readonly) #content{pointer-events:none}:host(.accordion-disabled) #header,:host(.accordion-disabled) #content{opacity:0.4}@media (prefers-reduced-motion: reduce){:host,#content{-webkit-transition:none !important;transition:none !important}}:host(.accordion-next) ::slotted(ion-item[slot=header]){--border-width:0.55px 0px 0.55px 0px}`;