@ionic/core 8.8.17 → 8.8.18-dev.11786108988.1fd94742

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 (782) 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-0tt0PTAe.js +4 -0
  99. package/components/p-3dKnMgX5.js +4 -0
  100. package/components/p-6e_5igwn.js +4 -0
  101. package/components/{p--JUspHvy.js → p-AqD_wmvU.js} +1 -1
  102. package/components/p-B-FxiyeI.js +4 -0
  103. package/components/p-B4COLbAV.js +4 -0
  104. package/components/p-B9zzUBwR.js +4 -0
  105. package/components/p-BFU7kgcj.js +4 -0
  106. package/components/p-BMPN55of.js +4 -0
  107. package/components/p-BPbRjpb2.js +4 -0
  108. package/components/p-BSQPZ79H.js +4 -0
  109. package/{dist/ionic/p-KjNvRoEp.js → components/p-BXQ7upSC.js} +1 -1
  110. package/components/p-BhamHSw3.js +4 -0
  111. package/components/p-BrXE0XUu.js +4 -0
  112. package/components/p-Bv7Rqz3Z.js +4 -0
  113. package/components/p-Bw7MMRH7.js +4 -0
  114. package/components/p-C-X5vb8f.js +4 -0
  115. package/components/p-C117Majq.js +4 -0
  116. package/components/{p-ChIZKXUu.js → p-C6JOi8wS.js} +1 -1
  117. package/components/p-CCVPk59A.js +4 -0
  118. package/components/p-CEW4RXZO.js +4 -0
  119. package/components/p-CKMc290p.js +4 -0
  120. package/components/{p-BkKAANMJ.js → p-CO5nI-BZ.js} +1 -1
  121. package/components/p-COQ_7Wwc.js +4 -0
  122. package/components/p-CQbh6Be_.js +4 -0
  123. package/components/p-CQtcj8t7.js +4 -0
  124. package/components/p-Cap9bvqr.js +4 -0
  125. package/components/p-CdP7ze2J.js +4 -0
  126. package/components/p-CfyJ_Ogc.js +4 -0
  127. package/components/p-ChWC4-vA.js +4 -0
  128. package/components/p-CmKf4pgI.js +4 -0
  129. package/components/p-CqYSqB9_.js +4 -0
  130. package/{dist/ionic/p-DC3RagnA.js → components/p-Cwsd9bue.js} +1 -1
  131. package/components/{p-D3xo7hqU.js → p-D0pL_HuH.js} +1 -1
  132. package/components/p-D0xd6h3Q.js +4 -0
  133. package/components/p-D28LaDuR.js +4 -0
  134. package/components/p-D7-vHX0A.js +4 -0
  135. package/components/p-D9KqizZs.js +4 -0
  136. package/components/p-DIZE3CVV.js +4 -0
  137. package/components/p-DL8rd5jo.js +4 -0
  138. package/components/p-DRcApg6F.js +4 -0
  139. package/components/p-DTTnwMiS.js +4 -0
  140. package/components/p-DWCzVL3Y.js +4 -0
  141. package/components/p-DYmrV1HT.js +4 -0
  142. package/components/{p-DqLB8yFQ.js → p-Dcu-SAJG.js} +1 -1
  143. package/components/p-DnINLmwC.js +4 -0
  144. package/components/{p-DRugphUN.js → p-DsNz6_gM.js} +1 -1
  145. package/components/p-DtiuiOTk.js +4 -0
  146. package/components/p-DunYzubP.js +4 -0
  147. package/components/p-DwcSJ9u1.js +4 -0
  148. package/components/p-QCPSB1bo.js +4 -0
  149. package/components/p-RvtofbHn.js +4 -0
  150. package/components/p-TXPDHL13.js +4 -0
  151. package/components/p-WOFp6fXj.js +4 -0
  152. package/components/p-byZM6qHV.js +4 -0
  153. package/components/{p-C_hpsif8.js → p-ltNYIRmI.js} +1 -1
  154. package/components/p-miSGCTAU.js +4 -0
  155. package/components/p-mpdX3emm.js +4 -0
  156. package/components/p-nvqVLrWC.js +4 -0
  157. package/components/p-qiWM96Sz.js +4 -0
  158. package/components/p-vlF0Bcfd.js +4 -0
  159. package/dist/cjs/{animation-BJq0kcy2.js → animation-D5WDBRvT.js} +4 -4
  160. package/dist/cjs/{app-globals-BlqrqKTN.js → app-globals-C2s3Cbal.js} +1 -1
  161. package/dist/cjs/{button-active-0mPOKmV2.js → button-active-CXI2TseG.js} +3 -3
  162. package/dist/cjs/config-CjUbvdPW.js +36 -0
  163. package/dist/cjs/{dir-Cn0z1rJH.js → dir-Brx7VkvP.js} +1 -1
  164. package/dist/cjs/{format-PxvGiOik.js → format-ZfKtcdit.js} +40 -30
  165. package/dist/cjs/{framework-delegate-BtICZDHr.js → framework-delegate-Bdvk3JQO.js} +5 -7
  166. package/dist/cjs/{gesture-controller-dtqlP_q4.js → gesture-controller-BDUH7687.js} +15 -8
  167. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-Ch-X4gRx.js} +2 -3
  168. package/dist/cjs/{hardware-back-button-iUuF_76h.js → hardware-back-button-zr8zeYaH.js} +4 -4
  169. package/dist/cjs/{helpers-Cv23MFHM.js → helpers-DURh1XdY.js} +3 -3
  170. package/dist/cjs/{index-aC4x3Fk3.js → index-B7sCu6vN.js} +6 -7
  171. package/dist/cjs/{index-CIrkNXqJ.js → index-BnhnwL1o.js} +2 -2
  172. package/dist/cjs/{index-D81eLYUM.js → index-Btdix80K.js} +2 -2
  173. package/dist/cjs/{index-Ct7gcRif.js → index-CAThePqm.js} +4 -6
  174. package/dist/cjs/index-DhSx3VvD.js +429 -0
  175. package/dist/cjs/{index-BERfRao3.js → index-DsoHs7Ly.js} +5 -5
  176. package/dist/cjs/{index-CAvQ7Tka.js → index-P1nQxrpZ.js} +10 -4
  177. package/dist/cjs/{index-DqmRDbxg.js → index-wOmugbdg.js} +1 -1
  178. package/dist/cjs/index.cjs.js +18 -18
  179. package/dist/cjs/{input-shims-CFLg7uzj.js → input-shims-CPbWb84M.js} +9 -11
  180. package/dist/cjs/{input.utils-DetjmtH2.js → input.utils-CkASW3mE.js} +3 -4
  181. package/dist/cjs/ion-accordion_2.cjs.entry.js +368 -340
  182. package/dist/cjs/ion-action-sheet.cjs.entry.js +187 -76
  183. package/dist/cjs/ion-alert.cjs.entry.js +273 -111
  184. package/dist/cjs/ion-app_8.cjs.entry.js +306 -190
  185. package/dist/cjs/ion-avatar_3.cjs.entry.js +10 -4
  186. package/dist/cjs/ion-back-button.cjs.entry.js +47 -23
  187. package/dist/cjs/ion-backdrop.cjs.entry.js +18 -14
  188. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +199 -121
  189. package/dist/cjs/ion-button_2.cjs.entry.js +138 -66
  190. package/dist/cjs/ion-card_5.cjs.entry.js +82 -30
  191. package/dist/cjs/ion-checkbox.cjs.entry.js +152 -101
  192. package/dist/cjs/ion-chip.cjs.entry.js +17 -11
  193. package/dist/cjs/ion-col_3.cjs.entry.js +134 -10
  194. package/dist/cjs/ion-datetime-button.cjs.entry.js +253 -241
  195. package/dist/cjs/ion-datetime.cjs.entry.js +2767 -0
  196. package/dist/cjs/ion-fab_3.cjs.entry.js +139 -81
  197. package/dist/cjs/ion-img.cjs.entry.js +34 -12
  198. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +100 -72
  199. package/dist/cjs/ion-input-otp.cjs.entry.js +433 -370
  200. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +33 -19
  201. package/dist/cjs/ion-input.cjs.entry.js +314 -168
  202. package/dist/cjs/ion-item-option_3.cjs.entry.js +91 -51
  203. package/dist/cjs/ion-item_8.cjs.entry.js +181 -82
  204. package/dist/cjs/ion-loading.cjs.entry.js +146 -60
  205. package/dist/cjs/ion-menu_3.cjs.entry.js +163 -101
  206. package/dist/cjs/ion-modal.cjs.entry.js +418 -251
  207. package/dist/cjs/ion-nav_2.cjs.entry.js +100 -157
  208. package/dist/cjs/ion-picker-column-option.cjs.entry.js +37 -33
  209. package/dist/cjs/ion-picker-column.cjs.entry.js +417 -405
  210. package/dist/cjs/ion-picker.cjs.entry.js +401 -392
  211. package/dist/cjs/ion-popover.cjs.entry.js +319 -205
  212. package/dist/cjs/ion-progress-bar.cjs.entry.js +31 -25
  213. package/dist/cjs/ion-radio_2.cjs.entry.js +206 -133
  214. package/dist/cjs/ion-range.cjs.entry.js +302 -237
  215. package/dist/cjs/ion-refresher_2.cjs.entry.js +165 -93
  216. package/dist/cjs/ion-reorder_2.cjs.entry.js +53 -23
  217. package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -14
  218. package/dist/cjs/ion-route_4.cjs.entry.js +175 -71
  219. package/dist/cjs/ion-searchbar.cjs.entry.js +291 -200
  220. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  221. package/dist/cjs/ion-segment-view.cjs.entry.js +28 -17
  222. package/dist/cjs/ion-segment_2.cjs.entry.js +169 -126
  223. package/dist/cjs/ion-select-modal.cjs.entry.js +104 -48
  224. package/dist/cjs/ion-select_3.cjs.entry.js +759 -214
  225. package/dist/cjs/ion-spinner.cjs.entry.js +24 -10
  226. package/dist/cjs/ion-split-pane.cjs.entry.js +29 -16
  227. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +100 -41
  228. package/dist/cjs/ion-tab_2.cjs.entry.js +53 -27
  229. package/dist/cjs/ion-text.cjs.entry.js +11 -5
  230. package/dist/cjs/ion-textarea.cjs.entry.js +263 -144
  231. package/dist/cjs/ion-toast.cjs.entry.js +236 -117
  232. package/dist/cjs/ion-toggle.cjs.entry.js +175 -122
  233. package/dist/cjs/{ionic-global-B-cA6LkY.js → ionic-global-dMut1Czp.js} +13 -8
  234. package/dist/cjs/ionic.cjs.js +4 -4
  235. package/dist/cjs/{ios.transition-BOSWOaiK.js → ios.transition-CeaFa0y2.js} +13 -17
  236. package/dist/cjs/{item-multiple-inputs-D-gyg57c.js → item-multiple-inputs-HQO5Iy9I.js} +1 -1
  237. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Cix5TVkD.js} +2 -2
  238. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-cHxZlTyz.js} +2 -2
  239. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-PtZoN2GS.js} +6 -6
  240. package/dist/cjs/loader.cjs.js +4 -4
  241. package/dist/cjs/{md.transition-B8-wBZqt.js → md.transition-D4Q5jny7.js} +7 -8
  242. package/dist/cjs/{notch-controller-18PzRGXd.js → notch-controller-fMfidI-7.js} +1 -1
  243. package/dist/cjs/overlay-control-label-D2sdL2O8.js +50 -0
  244. package/dist/cjs/{overlays-DdtIYQUH.js → overlays-C2qrqpHm.js} +48 -33
  245. package/dist/cjs/select-option-render-Dh16lTnA.js +123 -0
  246. package/dist/cjs/{status-tap-BXX8H8_Y.js → status-tap-CgjQ-6jq.js} +3 -3
  247. package/dist/cjs/{swipe-back-C0GCB18x.js → swipe-back-CmfRYdWQ.js} +5 -5
  248. package/dist/cjs/{theme-CeDs6Hcv.js → theme-Bw0rpaNN.js} +6 -1
  249. package/dist/collection/collection-manifest.json +6 -10
  250. package/dist/collection/components/accordion/accordion.js +315 -312
  251. package/dist/collection/components/accordion-group/accordion-group.js +48 -25
  252. package/dist/collection/components/action-sheet/action-sheet.ios.css +228 -2
  253. package/dist/collection/components/action-sheet/action-sheet.js +173 -64
  254. package/dist/collection/components/action-sheet/action-sheet.md.css +174 -2
  255. package/dist/collection/components/action-sheet/test/basic/fixture.js +3 -0
  256. package/dist/collection/components/alert/alert.ios.css +279 -10
  257. package/dist/collection/components/alert/alert.js +257 -97
  258. package/dist/collection/components/alert/alert.md.css +268 -20
  259. package/dist/collection/components/app/app.js +3 -0
  260. package/dist/collection/components/back-button/back-button.js +42 -19
  261. package/dist/collection/components/backdrop/backdrop.js +16 -14
  262. package/dist/collection/components/badge/badge.js +6 -0
  263. package/dist/collection/components/breadcrumb/breadcrumb.js +91 -30
  264. package/dist/collection/components/breadcrumbs/breadcrumbs.js +103 -88
  265. package/dist/collection/components/button/button.js +132 -61
  266. package/dist/collection/components/buttons/buttons.js +13 -15
  267. package/dist/collection/components/card/card.js +54 -21
  268. package/dist/collection/components/card-header/card-header.js +12 -8
  269. package/dist/collection/components/card-subtitle/card-subtitle.js +6 -0
  270. package/dist/collection/components/card-title/card-title.js +6 -0
  271. package/dist/collection/components/checkbox/checkbox.js +147 -97
  272. package/dist/collection/components/chip/chip.js +14 -10
  273. package/dist/collection/components/col/col.js +127 -3
  274. package/dist/collection/components/content/content.js +92 -64
  275. package/dist/collection/components/datetime/datetime.ios.css +42 -2
  276. package/dist/collection/components/datetime/datetime.js +1038 -803
  277. package/dist/collection/components/datetime/datetime.md.css +42 -1
  278. package/dist/collection/components/datetime/utils/data.js +13 -14
  279. package/dist/collection/components/datetime/utils/format.js +21 -11
  280. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  281. package/dist/collection/components/datetime/utils/parse.js +10 -10
  282. package/dist/collection/components/datetime/utils/state.js +8 -2
  283. package/dist/collection/components/datetime/utils/validate.js +4 -5
  284. package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -0
  285. package/dist/collection/components/datetime-button/datetime-button.js +247 -237
  286. package/dist/collection/components/datetime-button/datetime-button.md.css +5 -0
  287. package/dist/collection/components/fab/fab.js +20 -13
  288. package/dist/collection/components/fab-button/fab-button.js +104 -55
  289. package/dist/collection/components/fab-list/fab-list.js +10 -11
  290. package/dist/collection/components/footer/footer.js +50 -44
  291. package/dist/collection/components/grid/grid.js +4 -6
  292. package/dist/collection/components/header/header.js +35 -25
  293. package/dist/collection/components/img/img.js +34 -10
  294. package/dist/collection/components/infinite-scroll/infinite-scroll.js +73 -66
  295. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +20 -3
  296. package/dist/collection/components/input/input.ios.css +1 -2
  297. package/dist/collection/components/input/input.js +309 -164
  298. package/dist/collection/components/input/input.md.css +1 -2
  299. package/dist/collection/components/input-otp/input-otp.js +428 -366
  300. package/dist/collection/components/input-password-toggle/input-password-toggle.js +29 -16
  301. package/dist/collection/components/item/item.js +99 -53
  302. package/dist/collection/components/item-divider/item-divider.js +15 -10
  303. package/dist/collection/components/item-option/item-option.js +49 -21
  304. package/dist/collection/components/item-options/item-options.js +10 -7
  305. package/dist/collection/components/item-sliding/item-sliding.js +26 -20
  306. package/dist/collection/components/label/label.js +24 -4
  307. package/dist/collection/components/list/list.js +10 -7
  308. package/dist/collection/components/list-header/list-header.js +10 -0
  309. package/dist/collection/components/loading/loading.js +135 -51
  310. package/dist/collection/components/menu/menu.js +101 -59
  311. package/dist/collection/components/menu-button/menu-button.js +29 -20
  312. package/dist/collection/components/menu-toggle/menu-toggle.js +20 -13
  313. package/dist/collection/components/modal/animations/ios.enter.js +1 -1
  314. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  315. package/dist/collection/components/modal/gestures/sheet.js +6 -7
  316. package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -2
  317. package/dist/collection/components/modal/modal.js +393 -224
  318. package/dist/collection/components/modal/safe-area-utils.js +4 -5
  319. package/dist/collection/components/modal/test/fixtures.js +3 -0
  320. package/dist/collection/components/nav/nav.js +69 -247
  321. package/dist/collection/components/nav/view-controller.js +7 -1
  322. package/dist/collection/components/nav-link/nav-link.js +20 -9
  323. package/dist/collection/components/note/note.js +6 -0
  324. package/dist/collection/components/picker/picker.js +398 -390
  325. package/dist/collection/components/picker-column/picker-column.css +3 -0
  326. package/dist/collection/components/picker-column/picker-column.js +414 -404
  327. package/dist/collection/components/picker-column-option/picker-column-option.js +33 -31
  328. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -1
  329. package/dist/collection/components/popover/animations/ios.enter.js +1 -2
  330. package/dist/collection/components/popover/animations/md.enter.js +1 -2
  331. package/dist/collection/components/popover/popover.ios.css +15 -0
  332. package/dist/collection/components/popover/popover.js +302 -185
  333. package/dist/collection/components/popover/popover.md.css +15 -0
  334. package/dist/collection/components/popover/test/fixture.js +1 -0
  335. package/dist/collection/components/popover/utils.js +4 -6
  336. package/dist/collection/components/progress-bar/progress-bar.js +27 -23
  337. package/dist/collection/components/radio/radio.js +102 -66
  338. package/dist/collection/components/radio-group/radio-group.js +100 -65
  339. package/dist/collection/components/radio-group/test/fixtures.js +2 -0
  340. package/dist/collection/components/range/range.js +296 -232
  341. package/dist/collection/components/refresher/refresher.js +110 -78
  342. package/dist/collection/components/refresher-content/refresher-content.js +41 -4
  343. package/dist/collection/components/reorder/reorder.js +2 -1
  344. package/dist/collection/components/reorder-group/reorder-group.js +44 -15
  345. package/dist/collection/components/ripple-effect/ripple-effect.js +12 -13
  346. package/dist/collection/components/route/route.js +39 -10
  347. package/dist/collection/components/route-redirect/route-redirect.js +31 -0
  348. package/dist/collection/components/router/router.js +37 -33
  349. package/dist/collection/components/router/utils/dom.js +25 -7
  350. package/dist/collection/components/router/utils/matching.js +7 -9
  351. package/dist/collection/components/router/utils/parser.js +1 -1
  352. package/dist/collection/components/router/utils/path.js +0 -1
  353. package/dist/collection/components/router-link/router-link.js +37 -12
  354. package/dist/collection/components/router-outlet/router-outlet.js +82 -21
  355. package/dist/collection/components/row/row.js +1 -1
  356. package/dist/collection/components/searchbar/searchbar.js +289 -199
  357. package/dist/collection/components/segment/segment.js +120 -85
  358. package/dist/collection/components/segment-button/segment-button.js +43 -37
  359. package/dist/collection/components/segment-content/segment-content.js +1 -1
  360. package/dist/collection/components/segment-view/segment-view.js +26 -16
  361. package/dist/collection/components/select/select.ios.css +33 -0
  362. package/dist/collection/components/select/select.js +597 -166
  363. package/dist/collection/components/select/select.md.css +33 -0
  364. package/dist/collection/components/select-modal/select-modal.ios.css +218 -0
  365. package/dist/collection/components/select-modal/select-modal.js +92 -38
  366. package/dist/collection/components/select-modal/select-modal.md.css +164 -0
  367. package/dist/collection/components/select-modal/test/fixtures.js +8 -1
  368. package/dist/collection/components/select-option/select-option.js +110 -9
  369. package/dist/collection/components/select-popover/select-popover.ios.css +218 -0
  370. package/dist/collection/components/select-popover/select-popover.js +103 -36
  371. package/dist/collection/components/select-popover/select-popover.md.css +164 -0
  372. package/dist/collection/components/select-popover/test/fixtures.js +8 -1
  373. package/dist/collection/components/skeleton-text/skeleton-text.js +12 -8
  374. package/dist/collection/components/spinner/spinner.js +21 -9
  375. package/dist/collection/components/split-pane/split-pane.js +27 -15
  376. package/dist/collection/components/tab/tab.js +17 -6
  377. package/dist/collection/components/tab-bar/tab-bar.js +32 -14
  378. package/dist/collection/components/tab-button/tab-button.js +62 -23
  379. package/dist/collection/components/tabs/tabs.js +33 -20
  380. package/dist/collection/components/text/text.js +8 -2
  381. package/dist/collection/components/textarea/textarea.js +257 -139
  382. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  383. package/dist/collection/components/title/title.js +18 -2
  384. package/dist/collection/components/toast/toast.js +223 -106
  385. package/dist/collection/components/toggle/toggle.js +167 -115
  386. package/dist/collection/components/toolbar/toolbar.js +15 -7
  387. package/dist/collection/global/config.js +4 -6
  388. package/dist/collection/global/ionic-global.js +8 -2
  389. package/dist/collection/index.js +1 -1
  390. package/dist/collection/utils/animation/animation.js +3 -3
  391. package/dist/collection/utils/config.js +5 -4
  392. package/dist/collection/utils/focus-controller/index.js +1 -1
  393. package/dist/collection/utils/focus-trap.js +3 -3
  394. package/dist/collection/utils/framework-delegate.js +4 -6
  395. package/dist/collection/utils/gesture/gesture-controller.js +15 -8
  396. package/dist/collection/utils/gesture/index.js +10 -2
  397. package/dist/collection/utils/gesture/listener.js +1 -1
  398. package/dist/collection/utils/hardware-back-button.js +3 -3
  399. package/dist/collection/utils/helpers.js +2 -2
  400. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +4 -5
  401. package/dist/collection/utils/input-shims/hacks/scroll-data.js +1 -2
  402. package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
  403. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  404. package/dist/collection/utils/menu-controller/index.js +1 -2
  405. package/dist/collection/utils/native/haptic.js +2 -3
  406. package/dist/collection/utils/native/keyboard.js +2 -2
  407. package/dist/collection/utils/native/status-bar.js +1 -1
  408. package/dist/collection/utils/overlay-control-label.js +45 -0
  409. package/dist/collection/utils/overlays.js +38 -23
  410. package/dist/collection/utils/platform.js +4 -5
  411. package/dist/collection/utils/rtl/dir.js +1 -1
  412. package/dist/collection/utils/sanitization/index.js +276 -20
  413. package/dist/collection/utils/select-option-render.js +118 -0
  414. package/dist/collection/utils/slot-mutation-controller.js +1 -2
  415. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  416. package/dist/collection/utils/test/playwright/drag-element.js +2 -3
  417. package/dist/collection/utils/test/playwright/generator.js +3 -4
  418. package/dist/collection/utils/test/playwright/page/event-spy.js +11 -12
  419. package/dist/collection/utils/test/playwright/page/utils/goto.js +4 -5
  420. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  421. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +2 -3
  422. package/dist/collection/utils/test/press-keys.js +10 -17
  423. package/dist/collection/utils/theme.js +6 -1
  424. package/dist/collection/utils/transition/ios.transition.js +9 -13
  425. package/dist/collection/utils/transition/md.transition.js +3 -4
  426. package/dist/docs.json +556 -1272
  427. package/dist/esm/{animation-DLJpuoEz.js → animation-CVK55yMY.js} +4 -4
  428. package/dist/esm/{app-globals-D0C5S4hU.js → app-globals-Bk1_t4sH.js} +1 -1
  429. package/dist/esm/{button-active-BSpTQmS9.js → button-active-CdCqmeT0.js} +3 -3
  430. package/dist/esm/config-DWCzVL3Y.js +32 -0
  431. package/dist/esm/{dir-C53feagD.js → dir-B-FxiyeI.js} +1 -1
  432. package/dist/esm/{format-CAmvpAez.js → format-sMi4BZ_l.js} +41 -31
  433. package/dist/esm/{framework-delegate-FnPGymXL.js → framework-delegate-BfAlKlW5.js} +5 -7
  434. package/dist/esm/{gesture-controller-BTEOs1at.js → gesture-controller-TXPDHL13.js} +15 -8
  435. package/dist/esm/{haptic-DzAMWJuk.js → haptic-Cq4UAeka.js} +2 -3
  436. package/dist/esm/{hardware-back-button-B93Gru0Y.js → hardware-back-button-DcHMMB9j.js} +4 -4
  437. package/dist/esm/{helpers-HEqiOzXb.js → helpers-BPcITY5s.js} +3 -3
  438. package/dist/esm/{index-BRHzoo00.js → index-B9GsUd2c.js} +2 -2
  439. package/dist/esm/{index-DV3sJJW8.js → index-BvabGprD.js} +2 -2
  440. package/dist/esm/{index-tcQvqkiX.js → index-D1CQtpUN.js} +5 -7
  441. package/dist/esm/index-DDa8edAS.js +424 -0
  442. package/dist/esm/{index-MEDq2S8l.js → index-DcUt1pPn.js} +2 -2
  443. package/dist/esm/{index-CfgBF1SE.js → index-DppOcPFQ.js} +10 -4
  444. package/dist/esm/{index-B_dQk_WE.js → index-DqVqy_Cy.js} +5 -5
  445. package/dist/esm/{index-Q6UPU0Ay.js → index-ks-BjikL.js} +6 -7
  446. package/dist/esm/index.js +16 -15
  447. package/dist/esm/{input-shims-D10mwcw1.js → input-shims-C1dCKVMO.js} +9 -11
  448. package/dist/esm/{input.utils-Y6NgW8bw.js → input.utils-Dd5xwlP6.js} +3 -4
  449. package/dist/esm/ion-accordion_2.entry.js +368 -340
  450. package/dist/esm/ion-action-sheet.entry.js +187 -76
  451. package/dist/esm/ion-alert.entry.js +272 -110
  452. package/dist/esm/ion-app_8.entry.js +306 -190
  453. package/dist/esm/ion-avatar_3.entry.js +10 -4
  454. package/dist/esm/ion-back-button.entry.js +47 -23
  455. package/dist/esm/ion-backdrop.entry.js +18 -14
  456. package/dist/esm/ion-breadcrumb_2.entry.js +199 -121
  457. package/dist/esm/ion-button_2.entry.js +138 -66
  458. package/dist/esm/ion-card_5.entry.js +82 -30
  459. package/dist/esm/ion-checkbox.entry.js +152 -101
  460. package/dist/esm/ion-chip.entry.js +17 -11
  461. package/dist/esm/ion-col_3.entry.js +134 -10
  462. package/dist/esm/ion-datetime-button.entry.js +253 -241
  463. package/dist/esm/ion-datetime.entry.js +2765 -0
  464. package/dist/esm/ion-fab_3.entry.js +139 -81
  465. package/dist/esm/ion-img.entry.js +34 -12
  466. package/dist/esm/ion-infinite-scroll_2.entry.js +99 -71
  467. package/dist/esm/ion-input-otp.entry.js +433 -370
  468. package/dist/esm/ion-input-password-toggle.entry.js +33 -19
  469. package/dist/esm/ion-input.entry.js +314 -168
  470. package/dist/esm/ion-item-option_3.entry.js +91 -51
  471. package/dist/esm/ion-item_8.entry.js +181 -82
  472. package/dist/esm/ion-loading.entry.js +145 -59
  473. package/dist/esm/ion-menu_3.entry.js +163 -101
  474. package/dist/esm/ion-modal.entry.js +418 -251
  475. package/dist/esm/ion-nav_2.entry.js +100 -157
  476. package/dist/esm/ion-picker-column-option.entry.js +37 -33
  477. package/dist/esm/ion-picker-column.entry.js +417 -405
  478. package/dist/esm/ion-picker.entry.js +401 -392
  479. package/dist/esm/ion-popover.entry.js +319 -205
  480. package/dist/esm/ion-progress-bar.entry.js +31 -25
  481. package/dist/esm/ion-radio_2.entry.js +206 -133
  482. package/dist/esm/ion-range.entry.js +302 -237
  483. package/dist/esm/ion-refresher_2.entry.js +163 -91
  484. package/dist/esm/ion-reorder_2.entry.js +53 -23
  485. package/dist/esm/ion-ripple-effect.entry.js +14 -14
  486. package/dist/esm/ion-route_4.entry.js +175 -71
  487. package/dist/esm/ion-searchbar.entry.js +291 -200
  488. package/dist/esm/ion-segment-content.entry.js +2 -2
  489. package/dist/esm/ion-segment-view.entry.js +28 -17
  490. package/dist/esm/ion-segment_2.entry.js +169 -126
  491. package/dist/esm/ion-select-modal.entry.js +104 -48
  492. package/dist/esm/ion-select_3.entry.js +760 -215
  493. package/dist/esm/ion-spinner.entry.js +24 -10
  494. package/dist/esm/ion-split-pane.entry.js +29 -16
  495. package/dist/esm/ion-tab-bar_2.entry.js +100 -41
  496. package/dist/esm/ion-tab_2.entry.js +53 -27
  497. package/dist/esm/ion-text.entry.js +11 -5
  498. package/dist/esm/ion-textarea.entry.js +263 -144
  499. package/dist/esm/ion-toast.entry.js +235 -116
  500. package/dist/esm/ion-toggle.entry.js +175 -122
  501. package/dist/esm/{ionic-global-Cp_eT4sZ.js → ionic-global-5bZ91kOL.js} +13 -8
  502. package/dist/esm/ionic.js +5 -5
  503. package/dist/esm/{ios.transition-ClFrsIrS.js → ios.transition-OcwIGkv9.js} +13 -17
  504. package/dist/esm/{item-multiple-inputs-DlNuqNJm.js → item-multiple-inputs-ifd3ZrqY.js} +1 -1
  505. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-Cj8mLJeq.js} +2 -2
  506. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-DAF8GNJ9.js} +2 -2
  507. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-DEwoa1ev.js} +6 -6
  508. package/dist/esm/loader.js +5 -5
  509. package/dist/esm/{md.transition-D0msQmzI.js → md.transition-BetdF0bc.js} +7 -8
  510. package/dist/esm/{notch-controller-DKDjU_O7.js → notch-controller-DBSn-Uat.js} +1 -1
  511. package/dist/esm/overlay-control-label-BSQPZ79H.js +47 -0
  512. package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-DUzb9CQf.js} +48 -33
  513. package/dist/esm/select-option-render-DsW8svRr.js +121 -0
  514. package/dist/esm/{status-tap-Kan2W7sh.js → status-tap-C-wNhea0.js} +3 -3
  515. package/dist/esm/{swipe-back-DQ1q5MgD.js → swipe-back-D6YSgAn7.js} +5 -5
  516. package/dist/esm/{theme-DiVJyqlX.js → theme-byZM6qHV.js} +6 -1
  517. package/dist/html.html-data.json +52 -80
  518. package/dist/ionic/index.esm.js +1 -1
  519. package/dist/ionic/ionic.esm.js +1 -1
  520. package/dist/ionic/p-01eaee58.entry.js +4 -0
  521. package/dist/ionic/p-0c567140.entry.js +4 -0
  522. package/dist/ionic/p-105bb794.entry.js +4 -0
  523. package/dist/ionic/p-10d55bb6.entry.js +4 -0
  524. package/dist/ionic/p-173a87d8.entry.js +4 -0
  525. package/dist/ionic/p-178da672.entry.js +4 -0
  526. package/dist/ionic/p-1ead2857.entry.js +4 -0
  527. package/dist/ionic/p-224e2464.entry.js +4 -0
  528. package/dist/ionic/p-2268e718.entry.js +4 -0
  529. package/dist/ionic/p-2b5283f3.entry.js +4 -0
  530. package/dist/ionic/p-2b6decac.entry.js +4 -0
  531. package/dist/ionic/p-2da5d9c6.entry.js +4 -0
  532. package/dist/ionic/p-31890acd.entry.js +4 -0
  533. package/dist/ionic/p-34ef7425.entry.js +4 -0
  534. package/dist/ionic/p-34f7c1d8.entry.js +4 -0
  535. package/dist/ionic/p-3b1e6fa4.entry.js +4 -0
  536. package/dist/ionic/p-42fefd2c.entry.js +4 -0
  537. package/dist/ionic/p-440cd489.entry.js +4 -0
  538. package/dist/ionic/{p-aaeedb6b.entry.js → p-460da491.entry.js} +1 -1
  539. package/dist/ionic/p-53f680e8.entry.js +4 -0
  540. package/dist/ionic/p-57ba508f.entry.js +4 -0
  541. package/dist/ionic/p-599e5a75.entry.js +4 -0
  542. package/dist/ionic/p-5f670a9e.entry.js +4 -0
  543. package/dist/ionic/p-63502088.entry.js +4 -0
  544. package/dist/ionic/p-6e6bf45d.entry.js +4 -0
  545. package/dist/ionic/p-6f0b6a48.entry.js +4 -0
  546. package/dist/ionic/p-7438c462.entry.js +4 -0
  547. package/dist/ionic/p-747716e7.entry.js +4 -0
  548. package/dist/ionic/p-7759fcaf.entry.js +4 -0
  549. package/dist/ionic/p-7a8338e2.entry.js +4 -0
  550. package/dist/ionic/p-80f9f1dc.entry.js +4 -0
  551. package/dist/ionic/p-83ff4dcb.entry.js +4 -0
  552. package/dist/ionic/p-86f03895.entry.js +4 -0
  553. package/dist/ionic/p-87b8d70e.entry.js +4 -0
  554. package/dist/ionic/p-888236bf.entry.js +4 -0
  555. package/dist/ionic/p-8a92ca23.entry.js +4 -0
  556. package/dist/ionic/p-8c9af4ad.entry.js +4 -0
  557. package/dist/ionic/p-9669f546.entry.js +4 -0
  558. package/dist/ionic/p-9bcd8b74.entry.js +4 -0
  559. package/dist/ionic/p-B-FxiyeI.js +4 -0
  560. package/dist/ionic/p-B2trYd8K.js +4 -0
  561. package/dist/ionic/p-BMPN55of.js +4 -0
  562. package/dist/ionic/{p-DIuEbVLu.js → p-BNKr91bi.js} +1 -1
  563. package/dist/ionic/p-BSQPZ79H.js +4 -0
  564. package/dist/ionic/p-BSzG1VcX.js +4 -0
  565. package/dist/ionic/p-BVgBHS96.js +4 -0
  566. package/dist/ionic/p-BX2IOAqC.js +4 -0
  567. package/dist/ionic/p-BhamHSw3.js +4 -0
  568. package/dist/ionic/p-BufXJ_A8.js +4 -0
  569. package/dist/ionic/{p-DV3sJJW8.js → p-BvabGprD.js} +1 -1
  570. package/dist/ionic/p-C73UOs4m.js +4 -0
  571. package/{components/p-B-JJgYSG.js → dist/ionic/p-CHpEzg-o.js} +1 -1
  572. package/dist/ionic/p-CUSwMljM.js +4 -0
  573. package/dist/ionic/p-CeOSrSdu.js +4 -0
  574. package/dist/ionic/p-CfkB7_FV.js +4 -0
  575. package/dist/ionic/p-CmKf4pgI.js +4 -0
  576. package/dist/ionic/p-CnM-CMw7.js +4 -0
  577. package/dist/ionic/p-D1CQtpUN.js +5 -0
  578. package/dist/ionic/p-D5t_-oMk.js +4 -0
  579. package/dist/ionic/p-DVYb1IVZ.js +4 -0
  580. package/dist/ionic/p-DWCzVL3Y.js +4 -0
  581. package/dist/ionic/p-DfJ-SVJf.js +4 -0
  582. package/dist/ionic/p-DmXrLsoD.js +4 -0
  583. package/dist/ionic/p-DtLHAMFW.js +4 -0
  584. package/dist/ionic/p-Dtlob2JL.js +4 -0
  585. package/dist/ionic/p-F7ipfyOA.js +4 -0
  586. package/dist/ionic/{p-DoJvtrbw.js → p-I9ETXg5W.js} +1 -1
  587. package/dist/ionic/{p-Wk5HzclC.js → p-IaXd5VMv.js} +1 -1
  588. package/dist/ionic/p-T71k3C35.js +4 -0
  589. package/dist/ionic/p-TXPDHL13.js +4 -0
  590. package/dist/ionic/p-aL0G45tD.js +4 -0
  591. package/dist/ionic/p-acbb97c3.entry.js +4 -0
  592. package/dist/ionic/p-aeb85531.entry.js +4 -0
  593. package/dist/ionic/p-b157f80d.entry.js +4 -0
  594. package/dist/ionic/p-b158de5d.entry.js +4 -0
  595. package/dist/ionic/{p-c6e49f3f.entry.js → p-b40c9715.entry.js} +1 -1
  596. package/dist/ionic/p-b852101e.entry.js +4 -0
  597. package/dist/ionic/p-byZM6qHV.js +4 -0
  598. package/dist/ionic/p-c0d81bee.entry.js +4 -0
  599. package/dist/ionic/p-c8a327fb.entry.js +4 -0
  600. package/dist/ionic/p-d42ae99f.entry.js +4 -0
  601. package/dist/ionic/p-d47ff529.entry.js +4 -0
  602. package/dist/ionic/p-eHi73fGE.js +4 -0
  603. package/dist/ionic/p-eeabce92.entry.js +4 -0
  604. package/dist/ionic/p-efc66d77.entry.js +4 -0
  605. package/dist/ionic/p-f6d203dc.entry.js +4 -0
  606. package/dist/ionic/p-u2a770LZ.js +4 -0
  607. package/dist/types/components/img/img.d.ts +2 -0
  608. package/dist/types/components/input/input.d.ts +1 -1
  609. package/dist/types/components/modal/modal.d.ts +11 -4
  610. package/dist/types/components/nav/nav-interface.d.ts +0 -1
  611. package/dist/types/components/nav/nav.d.ts +2 -22
  612. package/dist/types/components/route/route.d.ts +1 -1
  613. package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
  614. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  615. package/dist/types/components/select/select-interface.d.ts +31 -0
  616. package/dist/types/components/select/select.d.ts +18 -0
  617. package/dist/types/components/select-option/select-option.d.ts +42 -1
  618. package/dist/types/components.d.ts +74 -311
  619. package/dist/types/index.d.ts +1 -1
  620. package/dist/types/interface.d.ts +0 -1
  621. package/dist/types/utils/config.d.ts +0 -8
  622. package/dist/types/utils/overlay-control-label.d.ts +32 -0
  623. package/dist/types/utils/overlays.d.ts +11 -9
  624. package/dist/types/utils/sanitization/index.d.ts +58 -2
  625. package/dist/types/utils/select-option-render.d.ts +53 -0
  626. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  627. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  628. package/hydrate/index.js +10278 -7052
  629. package/hydrate/index.mjs +10278 -7052
  630. package/package.json +54 -11
  631. package/components/ion-picker-legacy-column.d.ts +0 -11
  632. package/components/ion-picker-legacy-column.js +0 -4
  633. package/components/ion-picker-legacy.d.ts +0 -11
  634. package/components/ion-picker-legacy.js +0 -4
  635. package/components/p-A3O24YmY.js +0 -4
  636. package/components/p-ABkNVeU9.js +0 -4
  637. package/components/p-B9jFTlwE.js +0 -4
  638. package/components/p-BLmJ0zRm.js +0 -4
  639. package/components/p-BMI53wYL.js +0 -4
  640. package/components/p-BSEgsdFI.js +0 -4
  641. package/components/p-BTEOs1at.js +0 -4
  642. package/components/p-BlIAuGv2.js +0 -4
  643. package/components/p-Bnsn6KaP.js +0 -4
  644. package/components/p-BsBCoGa-.js +0 -4
  645. package/components/p-Bz0dSlXZ.js +0 -4
  646. package/components/p-C53feagD.js +0 -4
  647. package/components/p-CHqRYvYm.js +0 -4
  648. package/components/p-CQGnMY3n.js +0 -4
  649. package/components/p-CSZf8_j0.js +0 -4
  650. package/components/p-C_xFdyXe.js +0 -4
  651. package/components/p-Cf2jSDS8.js +0 -4
  652. package/components/p-Cfx4M1Bn.js +0 -4
  653. package/components/p-CkMSOsFF.js +0 -4
  654. package/components/p-Cl0B-RWe.js +0 -4
  655. package/components/p-CmR5uXej.js +0 -4
  656. package/components/p-CsNJ1ULL.js +0 -4
  657. package/components/p-CtWGkNnJ.js +0 -4
  658. package/components/p-CzCbeKys.js +0 -4
  659. package/components/p-D-aHdMxW.js +0 -4
  660. package/components/p-D0d8qTwj.js +0 -4
  661. package/components/p-D13Eaw-8.js +0 -4
  662. package/components/p-D6Ynv7Xh.js +0 -4
  663. package/components/p-DCnGU1fF.js +0 -4
  664. package/components/p-DGvrK8dD.js +0 -4
  665. package/components/p-DHTSTb52.js +0 -4
  666. package/components/p-DJZp0KTQ.js +0 -4
  667. package/components/p-DOFCbuQR.js +0 -4
  668. package/components/p-DV5mPYQS.js +0 -4
  669. package/components/p-DWkAgceV.js +0 -4
  670. package/components/p-DiVJyqlX.js +0 -4
  671. package/components/p-DqZAXv2t.js +0 -4
  672. package/components/p-KEFO0w3i.js +0 -4
  673. package/components/p-Osve4qkc.js +0 -4
  674. package/components/p-SLS1rDZM.js +0 -4
  675. package/components/p-VWbRkLT7.js +0 -4
  676. package/components/p-aJ6PBUvj.js +0 -4
  677. package/components/p-cyNmxje6.js +0 -4
  678. package/components/p-gAg0kXZp.js +0 -4
  679. package/components/p-j5IxBIan.js +0 -4
  680. package/components/p-k_E4tX5Z.js +0 -4
  681. package/components/p-oD4kcBRX.js +0 -4
  682. package/components/p-rCa2eL0j.js +0 -4
  683. package/components/p-scxfI1Dd.js +0 -4
  684. package/components/p-sijaAIYG.js +0 -4
  685. package/components/p-yzCsOZE2.js +0 -4
  686. package/dist/cjs/config-xninhj0J.js +0 -201
  687. package/dist/cjs/ion-datetime_3.cjs.entry.js +0 -3164
  688. package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
  689. package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
  690. package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
  691. package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
  692. package/dist/collection/components/picker-legacy/picker.js +0 -890
  693. package/dist/collection/components/picker-legacy/picker.md.css +0 -287
  694. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
  695. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
  696. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
  697. package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
  698. package/dist/esm/config-DQCONYYp.js +0 -195
  699. package/dist/esm/ion-datetime_3.entry.js +0 -3160
  700. package/dist/ionic/p-01f81ea5.entry.js +0 -4
  701. package/dist/ionic/p-06c232a4.entry.js +0 -4
  702. package/dist/ionic/p-0dc33652.entry.js +0 -4
  703. package/dist/ionic/p-0fa9c382.entry.js +0 -4
  704. package/dist/ionic/p-10e833ef.entry.js +0 -4
  705. package/dist/ionic/p-20b1a044.entry.js +0 -4
  706. package/dist/ionic/p-21eb76d5.entry.js +0 -4
  707. package/dist/ionic/p-27d30585.entry.js +0 -4
  708. package/dist/ionic/p-2a05aa64.entry.js +0 -4
  709. package/dist/ionic/p-2b204c59.entry.js +0 -4
  710. package/dist/ionic/p-2bb2cb18.entry.js +0 -4
  711. package/dist/ionic/p-2fa58e80.entry.js +0 -4
  712. package/dist/ionic/p-3353c229.entry.js +0 -4
  713. package/dist/ionic/p-34586ead.entry.js +0 -4
  714. package/dist/ionic/p-37e720da.entry.js +0 -4
  715. package/dist/ionic/p-390ca786.entry.js +0 -4
  716. package/dist/ionic/p-3ae5f277.entry.js +0 -4
  717. package/dist/ionic/p-4654ae1c.entry.js +0 -4
  718. package/dist/ionic/p-4745f534.entry.js +0 -4
  719. package/dist/ionic/p-4858af1f.entry.js +0 -4
  720. package/dist/ionic/p-485fda23.entry.js +0 -4
  721. package/dist/ionic/p-4ac4f3d6.entry.js +0 -4
  722. package/dist/ionic/p-4baa5b82.entry.js +0 -4
  723. package/dist/ionic/p-4e92a11f.entry.js +0 -4
  724. package/dist/ionic/p-5018dfc8.entry.js +0 -4
  725. package/dist/ionic/p-50e1194a.entry.js +0 -4
  726. package/dist/ionic/p-5d1da0a2.entry.js +0 -4
  727. package/dist/ionic/p-5eb8e86d.entry.js +0 -4
  728. package/dist/ionic/p-65ebdf1b.entry.js +0 -4
  729. package/dist/ionic/p-75dc25ba.entry.js +0 -4
  730. package/dist/ionic/p-7c319341.entry.js +0 -4
  731. package/dist/ionic/p-829367ed.entry.js +0 -4
  732. package/dist/ionic/p-84d5ce05.entry.js +0 -4
  733. package/dist/ionic/p-874b4bd8.entry.js +0 -4
  734. package/dist/ionic/p-8eb8ee76.entry.js +0 -4
  735. package/dist/ionic/p-8fce95d5.entry.js +0 -4
  736. package/dist/ionic/p-9eeaBrnk.js +0 -4
  737. package/dist/ionic/p-9f1103ce.entry.js +0 -4
  738. package/dist/ionic/p-9f9db3a2.entry.js +0 -4
  739. package/dist/ionic/p-BGqMS-oh.js +0 -4
  740. package/dist/ionic/p-BTEOs1at.js +0 -4
  741. package/dist/ionic/p-BUFIpxKM.js +0 -4
  742. package/dist/ionic/p-C0eMdTCW.js +0 -4
  743. package/dist/ionic/p-C53feagD.js +0 -4
  744. package/dist/ionic/p-CFlfIb2g.js +0 -4
  745. package/dist/ionic/p-CKvCXMs9.js +0 -4
  746. package/dist/ionic/p-Cl0B-RWe.js +0 -4
  747. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  748. package/dist/ionic/p-Cx3IXROA.js +0 -4
  749. package/dist/ionic/p-D-3ycHmd.js +0 -4
  750. package/dist/ionic/p-D13Eaw-8.js +0 -4
  751. package/dist/ionic/p-D4uTWt4-.js +0 -4
  752. package/dist/ionic/p-DSG2s2Eb.js +0 -4
  753. package/dist/ionic/p-Dfbt-q2k.js +0 -4
  754. package/dist/ionic/p-DiVJyqlX.js +0 -4
  755. package/dist/ionic/p-DqN5EA2O.js +0 -4
  756. package/dist/ionic/p-DzWaWHGc.js +0 -4
  757. package/dist/ionic/p-Nqf6uvGh.js +0 -4
  758. package/dist/ionic/p-SNAkTDfm.js +0 -4
  759. package/dist/ionic/p-VAemlbDS.js +0 -4
  760. package/dist/ionic/p-a3bdcae6.entry.js +0 -4
  761. package/dist/ionic/p-ad306193.entry.js +0 -4
  762. package/dist/ionic/p-b6a7397c.entry.js +0 -4
  763. package/dist/ionic/p-c0fb8edd.entry.js +0 -4
  764. package/dist/ionic/p-c38b648e.entry.js +0 -4
  765. package/dist/ionic/p-c4d8641b.entry.js +0 -4
  766. package/dist/ionic/p-ca2ab74d.entry.js +0 -4
  767. package/dist/ionic/p-d889ff6d.entry.js +0 -4
  768. package/dist/ionic/p-dfa8d673.entry.js +0 -4
  769. package/dist/ionic/p-e0be05c5.entry.js +0 -4
  770. package/dist/ionic/p-ef4c3bee.entry.js +0 -4
  771. package/dist/ionic/p-f386f6ae.entry.js +0 -4
  772. package/dist/ionic/p-mjKAFv89.js +0 -4
  773. package/dist/ionic/p-tcQvqkiX.js +0 -5
  774. package/dist/ionic/p-viFHDgRs.js +0 -4
  775. package/dist/ionic/p-xWb6fgfq.js +0 -4
  776. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
  777. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
  778. package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
  779. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  780. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  781. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
  782. /package/components/{p-CO7fmmxt.js → p-LpMHEu3v.js} +0 -0
@@ -3,20 +3,20 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-Ct7gcRif.js');
7
- var hardwareBackButton = require('./hardware-back-button-iUuF_76h.js');
8
- var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
9
- var helpers = require('./helpers-Cv23MFHM.js');
10
- var dir = require('./dir-Cn0z1rJH.js');
11
- var theme = require('./theme-CeDs6Hcv.js');
12
- var index$1 = require('./index-CIrkNXqJ.js');
13
- var keyboardController = require('./keyboard-controller-GXBiBRKS.js');
6
+ var index = require('./index-CAThePqm.js');
7
+ var hardwareBackButton = require('./hardware-back-button-zr8zeYaH.js');
8
+ var ionicGlobal = require('./ionic-global-dMut1Czp.js');
9
+ var helpers = require('./helpers-DURh1XdY.js');
10
+ var dir = require('./dir-Brx7VkvP.js');
11
+ var theme = require('./theme-Bw0rpaNN.js');
12
+ var index$1 = require('./index-BnhnwL1o.js');
13
+ var keyboardController = require('./keyboard-controller-PtZoN2GS.js');
14
14
  var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
15
- var frameworkDelegate = require('./framework-delegate-BtICZDHr.js');
15
+ var frameworkDelegate = require('./framework-delegate-Bdvk3JQO.js');
16
16
  var lockController = require('./lock-controller-aDB9wrEf.js');
17
- var index$2 = require('./index-BERfRao3.js');
17
+ var index$2 = require('./index-DsoHs7Ly.js');
18
18
  require('./index-DkNv4J_i.js');
19
- require('./keyboard-UuAS4D_9.js');
19
+ require('./keyboard-cHxZlTyz.js');
20
20
  require('./capacitor-DmA66EwP.js');
21
21
 
22
22
  const appCss = () => `html.plt-mobile ion-app{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.plt-mobile ion-app [contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}ion-app.force-statusbar-padding{--ion-safe-area-top:20px}`;
@@ -25,15 +25,18 @@ const App = class {
25
25
  constructor(hostRef) {
26
26
  index.registerInstance(this, hostRef);
27
27
  }
28
+ focusVisible;
29
+ loadTimeout;
30
+ get el() { return index.getElement(this); }
28
31
  componentDidLoad() {
29
32
  {
30
33
  this.rIC(async () => {
31
34
  const isHybrid = ionicGlobal.isPlatform(window, 'hybrid');
32
35
  if (!index.config.getBoolean('_testing')) {
33
- Promise.resolve().then(function () { return require('./index-D81eLYUM.js'); }).then((module) => module.startTapClick(index.config));
36
+ Promise.resolve().then(function () { return require('./index-Btdix80K.js'); }).then((module) => module.startTapClick(index.config));
34
37
  }
35
38
  if (index.config.getBoolean('statusTap', isHybrid)) {
36
- Promise.resolve().then(function () { return require('./status-tap-BXX8H8_Y.js'); }).then((module) => module.startStatusTap());
39
+ Promise.resolve().then(function () { return require('./status-tap-CgjQ-6jq.js'); }).then((module) => module.startStatusTap());
37
40
  }
38
41
  if (index.config.getBoolean('inputShims', needInputShims())) {
39
42
  /**
@@ -41,9 +44,9 @@ const App = class {
41
44
  * platforms proceed into this block.
42
45
  */
43
46
  const platform = ionicGlobal.isPlatform(window, 'ios') ? 'ios' : 'android';
44
- Promise.resolve().then(function () { return require('./input-shims-CFLg7uzj.js'); }).then((module) => module.startInputShims(index.config, platform));
47
+ Promise.resolve().then(function () { return require('./input-shims-CPbWb84M.js'); }).then((module) => module.startInputShims(index.config, platform));
45
48
  }
46
- const hardwareBackButtonModule = await Promise.resolve().then(function () { return require('./hardware-back-button-iUuF_76h.js'); });
49
+ const hardwareBackButtonModule = await Promise.resolve().then(function () { return require('./hardware-back-button-zr8zeYaH.js'); });
47
50
  const supportsHardwareBackButtonEvents = isHybrid || hardwareBackButton.shouldUseCloseWatcher();
48
51
  if (index.config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
49
52
  hardwareBackButtonModule.startHardwareBackButton();
@@ -59,7 +62,7 @@ const App = class {
59
62
  hardwareBackButtonModule.blockHardwareBackButton();
60
63
  }
61
64
  if (typeof window !== 'undefined') {
62
- Promise.resolve().then(function () { return require('./keyboard-hHzlEQpk.js'); }).then((module) => module.startKeyboardAssist(window));
65
+ Promise.resolve().then(function () { return require('./keyboard-Cix5TVkD.js'); }).then((module) => module.startKeyboardAssist(window));
63
66
  }
64
67
  Promise.resolve().then(function () { return require('./focus-visible-CCvKiLh3.js'); }).then((module) => (this.focusVisible = module.startFocusVisible()));
65
68
  });
@@ -102,7 +105,6 @@ const App = class {
102
105
  'force-statusbar-padding': index.config.getBoolean('_forceStatusbarPadding'),
103
106
  } }));
104
107
  }
105
- get el() { return index.getElement(this); }
106
108
  };
107
109
  const needInputShims = () => {
108
110
  /**
@@ -132,20 +134,20 @@ const buttonsMdCss = () => `.sc-ion-buttons-md-h{display:-ms-flexbox;display:fle
132
134
  const Buttons = class {
133
135
  constructor(hostRef) {
134
136
  index.registerInstance(this, hostRef);
135
- /**
136
- * If true, buttons will disappear when its
137
- * parent toolbar has fully collapsed if the toolbar
138
- * is not the first toolbar. If the toolbar is the
139
- * first toolbar, the buttons will be hidden and will
140
- * only be shown once all toolbars have fully collapsed.
141
- *
142
- * Only applies in `ios` mode with `collapse` set to
143
- * `true` on `ion-header`.
144
- *
145
- * Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
146
- */
147
- this.collapse = false;
148
137
  }
138
+ /**
139
+ * If true, buttons will disappear when its
140
+ * parent toolbar has fully collapsed if the toolbar
141
+ * is not the first toolbar. If the toolbar is the
142
+ * first toolbar, the buttons will be hidden and will
143
+ * only be shown once all toolbars have fully collapsed.
144
+ *
145
+ * Only applies in `ios` mode with `collapse` set to
146
+ * `true` on `ion-header`.
147
+ *
148
+ * Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
149
+ */
150
+ collapse = false;
149
151
  render() {
150
152
  const mode = ionicGlobal.getIonMode(this);
151
153
  return (index.h(index.Host, { key: '58c1fc5eb867d0731c63549b1ccb3ec3bbbe6e1b', class: {
@@ -167,65 +169,96 @@ const Content = class {
167
169
  this.ionScrollStart = index.createEvent(this, "ionScrollStart", 7);
168
170
  this.ionScroll = index.createEvent(this, "ionScroll", 7);
169
171
  this.ionScrollEnd = index.createEvent(this, "ionScrollEnd", 7);
170
- this.watchDog = null;
171
- this.isScrolling = false;
172
- this.lastScroll = 0;
173
- this.queued = false;
174
- this.cTop = -1;
175
- this.cBottom = -1;
176
- this.isMainContent = true;
177
- this.resizeTimeout = null;
178
- this.inheritedAttributes = {};
179
- this.tabsElement = null;
180
- // Detail is used in a hot loop in the scroll event, by allocating it here
181
- // V8 will be able to inline any read/write to it since it's a monomorphic class.
182
- // https://mrale.ph/blog/2015/01/11/whats-up-with-monomorphism.html
183
- this.detail = {
184
- scrollTop: 0,
185
- scrollLeft: 0,
186
- type: 'scroll',
187
- event: undefined,
188
- startX: 0,
189
- startY: 0,
190
- startTime: 0,
191
- currentX: 0,
192
- currentY: 0,
193
- velocityX: 0,
194
- velocityY: 0,
195
- deltaX: 0,
196
- deltaY: 0,
197
- currentTime: 0,
198
- data: undefined,
199
- isScrolling: true,
200
- };
201
- /**
202
- * If `true`, the content will scroll behind the headers
203
- * and footers. This effect can easily be seen by setting the toolbar
204
- * to transparent.
205
- */
206
- this.fullscreen = false;
207
- /**
208
- * Controls where the fixed content is placed relative to the main content
209
- * in the DOM. This can be used to control the order in which fixed elements
210
- * receive keyboard focus.
211
- * For example, if a FAB in the fixed slot should receive keyboard focus before
212
- * the main page content, set this property to `'before'`.
213
- */
214
- this.fixedSlotPlacement = 'after';
215
- /**
216
- * If you want to enable the content scrolling in the X axis, set this property to `true`.
217
- */
218
- this.scrollX = false;
219
- /**
220
- * If you want to disable the content scrolling in the Y axis, set this property to `false`.
221
- */
222
- this.scrollY = true;
223
- /**
224
- * Because of performance reasons, ionScroll events are disabled by default, in order to enable them
225
- * and start listening from (ionScroll), set this property to `true`.
226
- */
227
- this.scrollEvents = false;
228
172
  }
173
+ watchDog = null;
174
+ isScrolling = false;
175
+ lastScroll = 0;
176
+ queued = false;
177
+ cTop = -1;
178
+ cBottom = -1;
179
+ scrollEl;
180
+ backgroundContentEl;
181
+ isMainContent = true;
182
+ resizeTimeout = null;
183
+ inheritedAttributes = {};
184
+ tabsElement = null;
185
+ tabsLoadCallback;
186
+ // Detail is used in a hot loop in the scroll event, by allocating it here
187
+ // V8 will be able to inline any read/write to it since it's a monomorphic class.
188
+ // https://mrale.ph/blog/2015/01/11/whats-up-with-monomorphism.html
189
+ detail = {
190
+ scrollTop: 0,
191
+ scrollLeft: 0,
192
+ type: 'scroll',
193
+ event: undefined,
194
+ startX: 0,
195
+ startY: 0,
196
+ startTime: 0,
197
+ currentX: 0,
198
+ currentY: 0,
199
+ velocityX: 0,
200
+ velocityY: 0,
201
+ deltaX: 0,
202
+ deltaY: 0,
203
+ currentTime: 0,
204
+ data: undefined,
205
+ isScrolling: true,
206
+ };
207
+ get el() { return index.getElement(this); }
208
+ /**
209
+ * The color to use from your application's color palette.
210
+ * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
211
+ * For more information on colors, see [theming](/docs/theming/basics).
212
+ */
213
+ color;
214
+ /**
215
+ * If `true`, the content will scroll behind the headers
216
+ * and footers. This effect can easily be seen by setting the toolbar
217
+ * to transparent.
218
+ */
219
+ fullscreen = false;
220
+ /**
221
+ * Controls where the fixed content is placed relative to the main content
222
+ * in the DOM. This can be used to control the order in which fixed elements
223
+ * receive keyboard focus.
224
+ * For example, if a FAB in the fixed slot should receive keyboard focus before
225
+ * the main page content, set this property to `'before'`.
226
+ */
227
+ fixedSlotPlacement = 'after';
228
+ /**
229
+ * If `true` and the content does not cause an overflow scroll, the scroll interaction will cause a bounce.
230
+ * If the content exceeds the bounds of ionContent, nothing will change.
231
+ * Note, this does not disable the system bounce on iOS. That is an OS level setting.
232
+ */
233
+ forceOverscroll;
234
+ /**
235
+ * If you want to enable the content scrolling in the X axis, set this property to `true`.
236
+ */
237
+ scrollX = false;
238
+ /**
239
+ * If you want to disable the content scrolling in the Y axis, set this property to `false`.
240
+ */
241
+ scrollY = true;
242
+ /**
243
+ * Because of performance reasons, ionScroll events are disabled by default, in order to enable them
244
+ * and start listening from (ionScroll), set this property to `true`.
245
+ */
246
+ scrollEvents = false;
247
+ /**
248
+ * Emitted when the scroll has started. This event is disabled by default.
249
+ * Set `scrollEvents` to `true` to enable.
250
+ */
251
+ ionScrollStart;
252
+ /**
253
+ * Emitted while scrolling. This event is disabled by default.
254
+ * Set `scrollEvents` to `true` to enable.
255
+ */
256
+ ionScroll;
257
+ /**
258
+ * Emitted when the scroll has ended. This event is disabled by default.
259
+ * Set `scrollEvents` to `true` to enable.
260
+ */
261
+ ionScrollEnd;
229
262
  componentWillLoad() {
230
263
  this.inheritedAttributes = helpers.inheritAriaAttributes(this.el);
231
264
  }
@@ -524,7 +557,7 @@ const Content = class {
524
557
  const forceOverscroll = this.shouldForceOverscroll();
525
558
  const transitionShadow = mode === 'ios';
526
559
  this.resize();
527
- return (index.h(index.Host, Object.assign({ key: '8c1bc4a4df8698d3884741eb38512dc059210c50', role: isMainContent ? 'main' : undefined, class: theme.createColorClasses(this.color, {
560
+ return (index.h(index.Host, { key: '8c1bc4a4df8698d3884741eb38512dc059210c50', role: isMainContent ? 'main' : undefined, class: theme.createColorClasses(this.color, {
528
561
  [mode]: true,
529
562
  'content-fullscreen': this.fullscreen,
530
563
  'content-sizing': theme.hostContext('ion-popover', this.el),
@@ -533,22 +566,20 @@ const Content = class {
533
566
  }), style: {
534
567
  '--offset-top': `${this.cTop}px`,
535
568
  '--offset-bottom': `${this.cBottom}px`,
536
- } }, inheritedAttributes), index.h("div", { key: '5e7412549b51ef7543d9378ecab9aac6bc461588', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? index.h("slot", { name: "fixed" }) : null, index.h("div", { key: '33f6fbf7e1e027c7cbd2dda95b487f18dc648cef', class: {
569
+ }, ...inheritedAttributes }, index.h("div", { key: '5e7412549b51ef7543d9378ecab9aac6bc461588', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? index.h("slot", { name: "fixed" }) : null, index.h("div", { key: '33f6fbf7e1e027c7cbd2dda95b487f18dc648cef', class: {
537
570
  'inner-scroll': true,
538
571
  'scroll-x': scrollX,
539
572
  'scroll-y': scrollY,
540
573
  overscroll: (scrollX || scrollY) && forceOverscroll,
541
574
  }, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, index.h("slot", { key: '00c8fe7b9e73533c702273c9457d274195d54e98' })), transitionShadow ? (index.h("div", { class: "transition-effect" }, index.h("div", { class: "transition-cover" }), index.h("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? index.h("slot", { name: "fixed" }) : null));
542
575
  }
543
- get el() { return index.getElement(this); }
544
576
  };
545
577
  const getParentElement = (el) => {
546
- var _a;
547
578
  if (el.parentElement) {
548
579
  // normal element with a parent element
549
580
  return el.parentElement;
550
581
  }
551
- if ((_a = el.parentNode) === null || _a === void 0 ? void 0 : _a.host) {
582
+ if (el.parentNode?.host) {
552
583
  // shadow dom's document fragment
553
584
  return el.parentNode.host;
554
585
  }
@@ -635,48 +666,27 @@ const footerMdCss = () => `ion-footer{display:block;position:relative;-ms-flex-o
635
666
  const Footer = class {
636
667
  constructor(hostRef) {
637
668
  index.registerInstance(this, hostRef);
638
- this.keyboardCtrl = null;
639
- this.keyboardCtrlPromise = null;
640
- this.keyboardVisible = false;
641
- /**
642
- * If `true`, the footer will be translucent.
643
- * Only applies when the mode is `"ios"` and the device supports
644
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
645
- *
646
- * Note: In order to scroll content behind the footer, the `fullscreen`
647
- * attribute needs to be set on the content.
648
- */
649
- this.translucent = false;
650
- this.checkCollapsibleFooter = () => {
651
- const mode = ionicGlobal.getIonMode(this);
652
- if (mode !== 'ios') {
653
- return;
654
- }
655
- const { collapse } = this;
656
- const hasFade = collapse === 'fade';
657
- this.destroyCollapsibleFooter();
658
- if (hasFade) {
659
- const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
660
- const contentEl = pageEl ? index$1.findIonContent(pageEl) : null;
661
- if (!contentEl) {
662
- index$1.printIonContentErrorMsg(this.el);
663
- return;
664
- }
665
- this.setupFadeFooter(contentEl);
666
- }
667
- };
668
- this.setupFadeFooter = async (contentEl) => {
669
- const scrollEl = (this.scrollEl = await index$1.getScrollElement(contentEl));
670
- /**
671
- * Handle fading of toolbars on scroll
672
- */
673
- this.contentScrollCallback = () => {
674
- handleFooterFade(scrollEl, this.el);
675
- };
676
- scrollEl.addEventListener('scroll', this.contentScrollCallback);
677
- handleFooterFade(scrollEl, this.el);
678
- };
679
669
  }
670
+ scrollEl;
671
+ contentScrollCallback;
672
+ keyboardCtrl = null;
673
+ keyboardCtrlPromise = null;
674
+ keyboardVisible = false;
675
+ get el() { return index.getElement(this); }
676
+ /**
677
+ * Describes the scroll effect that will be applied to the footer.
678
+ * Only applies in iOS mode.
679
+ */
680
+ collapse;
681
+ /**
682
+ * If `true`, the footer will be translucent.
683
+ * Only applies when the mode is `"ios"` and the device supports
684
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
685
+ *
686
+ * Note: In order to scroll content behind the footer, the `fullscreen`
687
+ * attribute needs to be set on the content.
688
+ */
689
+ translucent = false;
680
690
  componentDidLoad() {
681
691
  this.checkCollapsibleFooter();
682
692
  }
@@ -720,6 +730,35 @@ const Footer = class {
720
730
  this.keyboardCtrl = null;
721
731
  }
722
732
  }
733
+ checkCollapsibleFooter = () => {
734
+ const mode = ionicGlobal.getIonMode(this);
735
+ if (mode !== 'ios') {
736
+ return;
737
+ }
738
+ const { collapse } = this;
739
+ const hasFade = collapse === 'fade';
740
+ this.destroyCollapsibleFooter();
741
+ if (hasFade) {
742
+ const pageEl = this.el.closest('ion-app,ion-page,.ion-page,page-inner');
743
+ const contentEl = pageEl ? index$1.findIonContent(pageEl) : null;
744
+ if (!contentEl) {
745
+ index$1.printIonContentErrorMsg(this.el);
746
+ return;
747
+ }
748
+ this.setupFadeFooter(contentEl);
749
+ }
750
+ };
751
+ setupFadeFooter = async (contentEl) => {
752
+ const scrollEl = (this.scrollEl = await index$1.getScrollElement(contentEl));
753
+ /**
754
+ * Handle fading of toolbars on scroll
755
+ */
756
+ this.contentScrollCallback = () => {
757
+ handleFooterFade(scrollEl, this.el);
758
+ };
759
+ scrollEl.addEventListener('scroll', this.contentScrollCallback);
760
+ handleFooterFade(scrollEl, this.el);
761
+ };
723
762
  destroyCollapsibleFooter() {
724
763
  if (this.scrollEl && this.contentScrollCallback) {
725
764
  this.scrollEl.removeEventListener('scroll', this.contentScrollCallback);
@@ -730,7 +769,7 @@ const Footer = class {
730
769
  const { translucent, collapse } = this;
731
770
  const mode = ionicGlobal.getIonMode(this);
732
771
  const tabs = this.el.closest('ion-tabs');
733
- const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
772
+ const tabBar = tabs?.querySelector(':scope > ion-tab-bar');
734
773
  return (index.h(index.Host, { key: '71939c4bbaef5062532a99ee2e33574102a9abad', role: "contentinfo", class: {
735
774
  [mode]: true,
736
775
  // Used internally for styling
@@ -741,7 +780,6 @@ const Footer = class {
741
780
  [`footer-collapse-${collapse}`]: collapse !== undefined,
742
781
  } }, mode === 'ios' && translucent && index.h("div", { key: '2fa14f61661c47c661cecd696176728d6eafa74f', class: "footer-background" }), index.h("slot", { key: '8e63696e7c528d5c38201e546bf08135290d0945' })));
743
782
  }
744
- get el() { return index.getElement(this); }
745
783
  };
746
784
  Footer.style = {
747
785
  ios: footerIosCss(),
@@ -987,28 +1025,29 @@ const headerMdCss = () => `ion-header{display:block;position:relative;-ms-flex-o
987
1025
  const Header = class {
988
1026
  constructor(hostRef) {
989
1027
  index.registerInstance(this, hostRef);
990
- this.inheritedAttributes = {};
991
- /**
992
- * If `true`, the header will be translucent.
993
- * Only applies when the mode is `"ios"` and the device supports
994
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
995
- *
996
- * Note: In order to scroll content behind the header, the `fullscreen`
997
- * attribute needs to be set on the content.
998
- */
999
- this.translucent = false;
1000
- this.setupFadeHeader = async (contentEl, condenseHeader) => {
1001
- const scrollEl = (this.scrollEl = await index$1.getScrollElement(contentEl));
1002
- /**
1003
- * Handle fading of toolbars on scroll
1004
- */
1005
- this.contentScrollCallback = () => {
1006
- handleHeaderFade(this.scrollEl, this.el, condenseHeader);
1007
- };
1008
- scrollEl.addEventListener('scroll', this.contentScrollCallback);
1009
- handleHeaderFade(this.scrollEl, this.el, condenseHeader);
1010
- };
1011
1028
  }
1029
+ scrollEl;
1030
+ contentScrollCallback;
1031
+ intersectionObserver;
1032
+ collapsibleMainHeader;
1033
+ inheritedAttributes = {};
1034
+ get el() { return index.getElement(this); }
1035
+ /**
1036
+ * Describes the scroll effect that will be applied to the header.
1037
+ * Only applies in iOS mode.
1038
+ *
1039
+ * Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
1040
+ */
1041
+ collapse;
1042
+ /**
1043
+ * If `true`, the header will be translucent.
1044
+ * Only applies when the mode is `"ios"` and the device supports
1045
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1046
+ *
1047
+ * Note: In order to scroll content behind the header, the `fullscreen`
1048
+ * attribute needs to be set on the content.
1049
+ */
1050
+ translucent = false;
1012
1051
  componentWillLoad() {
1013
1052
  this.inheritedAttributes = helpers.inheritAriaAttributes(this.el);
1014
1053
  }
@@ -1052,6 +1091,17 @@ const Header = class {
1052
1091
  await this.setupFadeHeader(contentEl, condenseHeader);
1053
1092
  }
1054
1093
  }
1094
+ setupFadeHeader = async (contentEl, condenseHeader) => {
1095
+ const scrollEl = (this.scrollEl = await index$1.getScrollElement(contentEl));
1096
+ /**
1097
+ * Handle fading of toolbars on scroll
1098
+ */
1099
+ this.contentScrollCallback = () => {
1100
+ handleHeaderFade(this.scrollEl, this.el, condenseHeader);
1101
+ };
1102
+ scrollEl.addEventListener('scroll', this.contentScrollCallback);
1103
+ handleHeaderFade(this.scrollEl, this.el, condenseHeader);
1104
+ };
1055
1105
  destroyCollapsibleHeader() {
1056
1106
  if (this.intersectionObserver) {
1057
1107
  this.intersectionObserver.disconnect();
@@ -1123,16 +1173,15 @@ const Header = class {
1123
1173
  const isCondensed = collapse === 'condense';
1124
1174
  // banner role must be at top level, so remove role if inside a menu
1125
1175
  const roleType = getRoleType(theme.hostContext('ion-menu', this.el), isCondensed, mode);
1126
- return (index.h(index.Host, Object.assign({ key: '863c4568cd7b8c0ec55109f193bbbaed68a1346e', role: roleType, class: {
1176
+ return (index.h(index.Host, { key: '863c4568cd7b8c0ec55109f193bbbaed68a1346e', role: roleType, class: {
1127
1177
  [mode]: true,
1128
1178
  // Used internally for styling
1129
1179
  [`header-${mode}`]: true,
1130
1180
  [`header-translucent`]: this.translucent,
1131
1181
  [`header-collapse-${collapse}`]: true,
1132
1182
  [`header-translucent-${mode}`]: this.translucent,
1133
- } }, inheritedAttributes), mode === 'ios' && translucent && index.h("div", { key: '25c3bdce328b0b35607d154c8b8374679313d881', class: "header-background" }), index.h("slot", { key: 'b44fab0a9be7920b9650da26117c783e751e1702' })));
1183
+ }, ...inheritedAttributes }, mode === 'ios' && translucent && index.h("div", { key: '25c3bdce328b0b35607d154c8b8374679313d881', class: "header-background" }), index.h("slot", { key: 'b44fab0a9be7920b9650da26117c783e751e1702' })));
1134
1184
  }
1135
- get el() { return index.getElement(this); }
1136
1185
  };
1137
1186
  Header.style = {
1138
1187
  ios: headerIosCss(),
@@ -1147,22 +1196,47 @@ const RouterOutlet = class {
1147
1196
  this.ionNavWillLoad = index.createEvent(this, "ionNavWillLoad", 7);
1148
1197
  this.ionNavWillChange = index.createEvent(this, "ionNavWillChange", 3);
1149
1198
  this.ionNavDidChange = index.createEvent(this, "ionNavDidChange", 3);
1150
- this.lockController = lockController.createLockController();
1151
- this.gestureOrAnimationInProgress = false;
1152
- /**
1153
- * The mode determines which platform styles to use.
1154
- */
1155
- this.mode = ionicGlobal.getIonMode(this);
1156
- /**
1157
- * If `true`, the router-outlet should animate the transition of components.
1158
- */
1159
- this.animated = true;
1160
1199
  }
1200
+ lockController = lockController.createLockController();
1201
+ activeEl;
1202
+ // TODO(FW-2832): types
1203
+ activeComponent;
1204
+ activeParams;
1205
+ gesture;
1206
+ ani;
1207
+ gestureOrAnimationInProgress = false;
1208
+ get el() { return index.getElement(this); }
1209
+ /**
1210
+ * The mode determines which platform styles to use.
1211
+ */
1212
+ mode = ionicGlobal.getIonMode(this);
1213
+ /** @internal */
1214
+ delegate;
1215
+ /**
1216
+ * If `true`, the router-outlet should animate the transition of components.
1217
+ */
1218
+ animated = true;
1219
+ /** This property allows to create custom transition using AnimationBuilder functions. */
1220
+ animation;
1221
+ /**
1222
+ * If `true`, the router-outlet should allow navigation via swipe-to-go-back gesture.
1223
+ * Defaults to `true` for `"ios"` mode and `false` for `"md"` mode.
1224
+ */
1225
+ swipeGesture;
1226
+ swipeGestureChanged() {
1227
+ this.updateGestureEnabled();
1228
+ }
1229
+ /** @internal */
1230
+ swipeHandler;
1161
1231
  swipeHandlerChanged() {
1162
- if (this.gesture) {
1163
- this.gesture.enable(this.swipeHandler !== undefined);
1164
- }
1232
+ this.updateGestureEnabled();
1165
1233
  }
1234
+ /** @internal */
1235
+ ionNavWillLoad;
1236
+ /** @internal */
1237
+ ionNavWillChange;
1238
+ /** @internal */
1239
+ ionNavDidChange;
1166
1240
  async connectedCallback() {
1167
1241
  const onStart = () => {
1168
1242
  this.gestureOrAnimationInProgress = true;
@@ -1170,7 +1244,7 @@ const RouterOutlet = class {
1170
1244
  this.swipeHandler.onStart();
1171
1245
  }
1172
1246
  };
1173
- this.gesture = (await Promise.resolve().then(function () { return require('./swipe-back-C0GCB18x.js'); })).createSwipeBackGesture(this.el, () => !this.gestureOrAnimationInProgress && !!this.swipeHandler && this.swipeHandler.canStart(), () => onStart(), (step) => { var _a; return (_a = this.ani) === null || _a === void 0 ? void 0 : _a.progressStep(step); }, (shouldComplete, step, dur) => {
1247
+ this.gesture = (await Promise.resolve().then(function () { return require('./swipe-back-CmfRYdWQ.js'); })).createSwipeBackGesture(this.el, () => !this.gestureOrAnimationInProgress && !!this.swipeHandler && this.swipeHandler.canStart(), () => onStart(), (step) => this.ani?.progressStep(step), (shouldComplete, step, dur) => {
1174
1248
  if (this.ani) {
1175
1249
  this.ani.onFinish(() => {
1176
1250
  this.gestureOrAnimationInProgress = false;
@@ -1201,11 +1275,21 @@ const RouterOutlet = class {
1201
1275
  this.gestureOrAnimationInProgress = false;
1202
1276
  }
1203
1277
  });
1204
- this.swipeHandlerChanged();
1278
+ if (this.swipeGesture === undefined) {
1279
+ this.swipeGesture = index.config.getBoolean('swipeBackEnabled', this.mode === 'ios');
1280
+ }
1281
+ else {
1282
+ this.updateGestureEnabled();
1283
+ }
1205
1284
  }
1206
1285
  componentWillLoad() {
1207
1286
  this.ionNavWillLoad.emit();
1208
1287
  }
1288
+ updateGestureEnabled() {
1289
+ if (this.gesture) {
1290
+ this.gesture.enable(this.swipeHandler !== undefined && this.swipeGesture === true);
1291
+ }
1292
+ }
1209
1293
  disconnectedCallback() {
1210
1294
  if (this.gesture) {
1211
1295
  this.gesture.destroy();
@@ -1272,16 +1356,19 @@ const RouterOutlet = class {
1272
1356
  const { el, mode } = this;
1273
1357
  const animated = this.animated && index.config.getBoolean('animated', true);
1274
1358
  const animationBuilder = opts.animationBuilder || this.animation || index.config.get('navAnimation');
1275
- await index$2.transition(Object.assign(Object.assign({ mode,
1359
+ await index$2.transition({
1360
+ mode,
1276
1361
  animated,
1277
1362
  enteringEl,
1278
- leavingEl, baseEl: el,
1363
+ leavingEl,
1364
+ baseEl: el,
1279
1365
  /**
1280
1366
  * We need to wait for all Stencil components
1281
1367
  * to be ready only when using the lazy
1282
1368
  * loaded bundle.
1283
1369
  */
1284
- deepWait: helpers.hasLazyBuild(el), progressCallback: opts.progressAnimation
1370
+ deepWait: helpers.hasLazyBuild(el),
1371
+ progressCallback: opts.progressAnimation
1285
1372
  ? (ani) => {
1286
1373
  /**
1287
1374
  * Because this progress callback is called asynchronously
@@ -1310,16 +1397,21 @@ const RouterOutlet = class {
1310
1397
  this.ani = ani;
1311
1398
  }
1312
1399
  }
1313
- : undefined }, opts), { animationBuilder }));
1400
+ : undefined,
1401
+ ...opts,
1402
+ animationBuilder,
1403
+ });
1314
1404
  // emit nav changed event
1315
1405
  this.ionNavDidChange.emit();
1316
1406
  return true;
1317
1407
  }
1318
1408
  render() {
1319
- return index.h("slot", { key: '386c41745b61daba161cf75063da97fe29ba36cb' });
1409
+ return index.h("slot", { key: 'ce09e6fbba7b0a2276cdde5245bb37c9a162c1c7' });
1320
1410
  }
1321
- get el() { return index.getElement(this); }
1322
1411
  static get watchers() { return {
1412
+ "swipeGesture": [{
1413
+ "swipeGestureChanged": 0
1414
+ }],
1323
1415
  "swipeHandler": [{
1324
1416
  "swipeHandlerChanged": 0
1325
1417
  }]
@@ -1336,6 +1428,22 @@ const ToolbarTitle = class {
1336
1428
  index.registerInstance(this, hostRef);
1337
1429
  this.ionStyle = index.createEvent(this, "ionStyle", 7);
1338
1430
  }
1431
+ get el() { return index.getElement(this); }
1432
+ /**
1433
+ * The color to use from your application's color palette.
1434
+ * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
1435
+ * For more information on colors, see [theming](/docs/theming/basics).
1436
+ */
1437
+ color;
1438
+ /**
1439
+ * The size of the toolbar title.
1440
+ */
1441
+ size;
1442
+ /**
1443
+ * Emitted when the styles change.
1444
+ * @internal
1445
+ */
1446
+ ionStyle;
1339
1447
  sizeChanged() {
1340
1448
  this.emitStyle();
1341
1449
  }
@@ -1354,13 +1462,12 @@ const ToolbarTitle = class {
1354
1462
  render() {
1355
1463
  const mode = ionicGlobal.getIonMode(this);
1356
1464
  const size = this.getSize();
1357
- return (index.h(index.Host, { key: '44e63f8439df64c470692904427b417e19406476', class: theme.createColorClasses(this.color, {
1465
+ return (index.h(index.Host, { key: 'd9317e8e66cb6112717f5a9c252658777efbd873', class: theme.createColorClasses(this.color, {
1358
1466
  [mode]: true,
1359
1467
  [`title-${size}`]: true,
1360
1468
  'title-rtl': document.dir === 'rtl',
1361
- }) }, index.h("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, index.h("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
1469
+ }) }, index.h("div", { key: 'a4d011d6d409bf006d8efe33667002edb109820a', class: "toolbar-title" }, index.h("slot", { key: '4ca3303b957a0e5387f1e9058e5adb4c6275afcc' }))));
1362
1470
  }
1363
- get el() { return index.getElement(this); }
1364
1471
  static get watchers() { return {
1365
1472
  "size": [{
1366
1473
  "sizeChanged": 0
@@ -1379,8 +1486,15 @@ const toolbarMdCss = () => `:host{--border-width:0;--border-style:solid;--opacit
1379
1486
  const Toolbar = class {
1380
1487
  constructor(hostRef) {
1381
1488
  index.registerInstance(this, hostRef);
1382
- this.childrenStyles = new Map();
1383
1489
  }
1490
+ childrenStyles = new Map();
1491
+ get el() { return index.getElement(this); }
1492
+ /**
1493
+ * The color to use from your application's color palette.
1494
+ * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
1495
+ * For more information on colors, see [theming](/docs/theming/basics).
1496
+ */
1497
+ color;
1384
1498
  componentWillLoad() {
1385
1499
  const buttons = Array.from(this.el.querySelectorAll('ion-buttons'));
1386
1500
  const firstButtons = buttons.find((button) => {
@@ -1425,12 +1539,14 @@ const Toolbar = class {
1425
1539
  this.childrenStyles.forEach((value) => {
1426
1540
  Object.assign(childStyles, value);
1427
1541
  });
1428
- return (index.h(index.Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), theme.createColorClasses(this.color, {
1429
- [mode]: true,
1430
- 'in-toolbar': theme.hostContext('ion-toolbar', this.el),
1431
- })) }, index.h("div", { key: '67f5bba9c4f527c3f35bfe1313a2b85741f9b246', class: "toolbar-background", part: "background" }), index.h("div", { key: '085e8c68f056e5b0deb9d1606431fbeb45dae8e5', class: "toolbar-container", part: "container" }, index.h("slot", { key: '15227c79c3baf883fd8c43fdb7e1313453933c79', name: "start" }), index.h("slot", { key: '0b8a7f7e685aa31c80d9bc03446ccc3a9d07e0e8', name: "secondary" }), index.h("div", { key: '57e4628c1fa89df79dd80456259db961bb691404', class: "toolbar-content", part: "content" }, index.h("slot", { key: '82c2f6e1acf8d96db259bd8baf295881801edbd5' })), index.h("slot", { key: 'b2d4afb15214199f206c0a5e08b581e4c9c2f58a', name: "primary" }), index.h("slot", { key: 'bfb909a0c472f8834046c2ea23bef2f562167ad3', name: "end" }))));
1542
+ return (index.h(index.Host, { key: '40bad6fa7e94262438da4bbe037dcf8a5fa2df22', class: {
1543
+ ...childStyles,
1544
+ ...theme.createColorClasses(this.color, {
1545
+ [mode]: true,
1546
+ 'in-toolbar': theme.hostContext('ion-toolbar', this.el),
1547
+ }),
1548
+ } }, index.h("div", { key: 'df44c9f0fe3958116ab860b0dad79c53b89f6c59', class: "toolbar-background", part: "background" }), index.h("div", { key: '2169ffa576875b8d5624211cc0b4bf86191562bc', class: "toolbar-container", part: "container" }, index.h("slot", { key: 'c8910dcf1ce98ab427fd89c3396a67c2a75bdd07', name: "start" }), index.h("slot", { key: '05da24d5ef96b9eebd83b534ce02c1f7bcd06680', name: "secondary" }), index.h("div", { key: '090fea1541e7e2b6ad74a6ded4eadffdb471ccce', class: "toolbar-content", part: "content" }, index.h("slot", { key: '507e143f92f6fa59ff23d94026411fa2c74f2f8e' })), index.h("slot", { key: 'f79fdee472e657e26a910cb89d7551943e40e440', name: "primary" }), index.h("slot", { key: 'dd40fe9ed490cf4346c642e195fdb524dc6cc4f5', name: "end" }))));
1432
1549
  }
1433
- get el() { return index.getElement(this); }
1434
1550
  };
1435
1551
  Toolbar.style = {
1436
1552
  ios: toolbarIosCss(),