@ionic/core 8.8.19-dev.11787007863.1976a30e → 8.8.19-dev.11787083540.1511caf2

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 (806) 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-legacy-column.d.ts +11 -0
  59. package/components/ion-picker-legacy-column.js +4 -0
  60. package/components/ion-picker-legacy.d.ts +11 -0
  61. package/components/ion-picker-legacy.js +4 -0
  62. package/components/ion-picker.js +1 -1
  63. package/components/ion-popover.js +1 -1
  64. package/components/ion-progress-bar.js +1 -1
  65. package/components/ion-radio-group.js +1 -1
  66. package/components/ion-radio.js +1 -1
  67. package/components/ion-range.js +1 -1
  68. package/components/ion-refresher-content.js +1 -1
  69. package/components/ion-refresher.js +1 -1
  70. package/components/ion-reorder-group.js +1 -1
  71. package/components/ion-reorder.js +1 -1
  72. package/components/ion-ripple-effect.js +1 -1
  73. package/components/ion-route-redirect.js +1 -1
  74. package/components/ion-route.js +1 -1
  75. package/components/ion-router-link.js +1 -1
  76. package/components/ion-router-outlet.js +1 -1
  77. package/components/ion-router.js +1 -1
  78. package/components/ion-row.js +1 -1
  79. package/components/ion-searchbar.js +1 -1
  80. package/components/ion-segment-button.js +1 -1
  81. package/components/ion-segment-content.js +1 -1
  82. package/components/ion-segment-view.js +1 -1
  83. package/components/ion-segment.js +1 -1
  84. package/components/ion-select-modal.js +1 -1
  85. package/components/ion-select-option.js +1 -1
  86. package/components/ion-select-popover.js +1 -1
  87. package/components/ion-select.js +1 -1
  88. package/components/ion-skeleton-text.js +1 -1
  89. package/components/ion-spinner.js +1 -1
  90. package/components/ion-split-pane.js +1 -1
  91. package/components/ion-tab-bar.js +1 -1
  92. package/components/ion-tab-button.js +1 -1
  93. package/components/ion-tab.js +1 -1
  94. package/components/ion-tabs.js +1 -1
  95. package/components/ion-text.js +1 -1
  96. package/components/ion-textarea.js +1 -1
  97. package/components/ion-thumbnail.js +1 -1
  98. package/components/ion-title.js +1 -1
  99. package/components/ion-toast.js +1 -1
  100. package/components/ion-toggle.js +1 -1
  101. package/components/ion-toolbar.js +1 -1
  102. package/components/{p-DV85C0e0.js → p--JUspHvy.js} +1 -1
  103. package/components/p-0LM2oPMC.js +4 -0
  104. package/components/{p-_0JhwClE.js → p-6J0vc7Z8.js} +1 -1
  105. package/components/p-9GFIh9p1.js +4 -0
  106. package/components/p-B21528L5.js +4 -0
  107. package/components/p-B2nSfLHH.js +4 -0
  108. package/components/p-B3qf4bEn.js +4 -0
  109. package/components/p-B9jFTlwE.js +4 -0
  110. package/components/p-BDd9Zrb9.js +4 -0
  111. package/components/p-BLmJ0zRm.js +4 -0
  112. package/components/p-BMYNBJgf.js +4 -0
  113. package/components/p-BRYd8D-I.js +4 -0
  114. package/components/p-BSEgsdFI.js +4 -0
  115. package/components/p-BTEOs1at.js +4 -0
  116. package/components/p-BTJrYwxN.js +4 -0
  117. package/components/p-BV-zKay-.js +4 -0
  118. package/components/p-BYRVyMu9.js +4 -0
  119. package/components/{p-DwpKZ6rl.js → p-BkKAANMJ.js} +1 -1
  120. package/components/p-Bmq8qlkW.js +4 -0
  121. package/components/p-BuxQcfHK.js +4 -0
  122. package/components/p-Bz0dSlXZ.js +4 -0
  123. package/components/p-C7II1iDj.js +4 -0
  124. package/components/p-CHqRYvYm.js +4 -0
  125. package/components/p-CSZf8_j0.js +4 -0
  126. package/components/p-CTdRooFV.js +4 -0
  127. package/components/p-Cf2jSDS8.js +4 -0
  128. package/components/p-Cfx4M1Bn.js +4 -0
  129. package/components/p-CgkrslTX.js +4 -0
  130. package/components/p-CiCzYG2V.js +4 -0
  131. package/{dist/ionic/p-BkfAWuv6.js → components/p-Ck0lEczL.js} +1 -1
  132. package/components/p-CmR5uXej.js +4 -0
  133. package/components/p-CniZht3v.js +4 -0
  134. package/components/p-CsaojgEs.js +4 -0
  135. package/components/p-CtWGkNnJ.js +4 -0
  136. package/components/p-D13Eaw-8.js +4 -0
  137. package/components/p-D4FYu-4R.js +4 -0
  138. package/components/p-D6Ynv7Xh.js +4 -0
  139. package/components/p-DARjq3GM.js +4 -0
  140. package/components/p-DEZ2myA3.js +4 -0
  141. package/components/p-DOFCbuQR.js +4 -0
  142. package/components/p-DVe41iHI.js +4 -0
  143. package/components/p-DX5m9g56.js +4 -0
  144. package/components/p-DboHi2CL.js +4 -0
  145. package/components/p-DiVJyqlX.js +4 -0
  146. package/components/p-DmzFY5IC.js +4 -0
  147. package/components/{p-ryyf_ItD.js → p-DqLB8yFQ.js} +1 -1
  148. package/components/p-DqZAXv2t.js +4 -0
  149. package/components/p-Dv8w0kqz.js +4 -0
  150. package/components/p-Dw7GNDKq.js +4 -0
  151. package/components/p-Dww01PNs.js +4 -0
  152. package/components/p-Gy276IJk.js +4 -0
  153. package/components/p-ZzLXTvyt.js +4 -0
  154. package/components/p-cyNmxje6.js +4 -0
  155. package/components/p-j5IxBIan.js +4 -0
  156. package/components/p-k_E4tX5Z.js +4 -0
  157. package/components/p-lVAbdiAu.js +4 -0
  158. package/components/p-o8OKV5aD.js +4 -0
  159. package/components/{p-30_sZS2V.js → p-qMmFisyx.js} +1 -1
  160. package/components/p-rCa2eL0j.js +4 -0
  161. package/dist/cjs/{animation-C0mOHzej.js → animation-Ch16T-Nb.js} +4 -4
  162. package/dist/cjs/{app-globals-BREG4twP.js → app-globals-Dd89e0MR.js} +1 -1
  163. package/dist/cjs/{button-active-BKj1rdFx.js → button-active-AWp_ygDP.js} +3 -3
  164. package/dist/cjs/config-D6C-KlA9.js +201 -0
  165. package/dist/cjs/dir-DD0jPVH3.js +31 -0
  166. package/dist/cjs/{format-pp0Du3K-.js → format-BUFWn4Bn.js} +30 -40
  167. package/dist/cjs/{framework-delegate-NTLQ5YzV.js → framework-delegate-CEzl4MEA.js} +7 -5
  168. package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-dtqlP_q4.js} +8 -15
  169. package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-ClPPQ_PS.js} +3 -2
  170. package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-CXmUnTJC.js} +4 -4
  171. package/dist/cjs/{helpers-CaLhEmTE.js → helpers-DdZyl6WL.js} +15 -11
  172. package/dist/cjs/{index-P1nQxrpZ.js → index-BJ2-LydH.js} +7 -36
  173. package/dist/cjs/{index-uvry__L4.js → index-BfaXsATC.js} +14 -31
  174. package/dist/cjs/{index-D48vawBq.js → index-CD92bI7B.js} +2 -2
  175. package/dist/cjs/{index-Ck9advCT.js → index-CukZnH1U.js} +5 -5
  176. package/dist/cjs/{index-D2X6b92x.js → index-DOiZqxWZ.js} +7 -6
  177. package/dist/cjs/{index-wOmugbdg.js → index-DqmRDbxg.js} +1 -1
  178. package/dist/cjs/{index-BlshL9ib.js → index-MWAIyVLl.js} +3 -2
  179. package/dist/cjs/index.cjs.js +19 -18
  180. package/dist/cjs/{input-shims-DvHAFqiP.js → input-shims-CPKgrIe3.js} +12 -9
  181. package/dist/cjs/input.utils-DQaUGGed.js +150 -0
  182. package/dist/cjs/ion-accordion_2.cjs.entry.js +341 -368
  183. package/dist/cjs/ion-action-sheet.cjs.entry.js +77 -187
  184. package/dist/cjs/ion-alert.cjs.entry.js +112 -273
  185. package/dist/cjs/ion-app_8.cjs.entry.js +190 -307
  186. package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -10
  187. package/dist/cjs/ion-back-button.cjs.entry.js +24 -47
  188. package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
  189. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +122 -199
  190. package/dist/cjs/ion-button_2.cjs.entry.js +67 -138
  191. package/dist/cjs/ion-card_5.cjs.entry.js +31 -82
  192. package/dist/cjs/ion-checkbox.cjs.entry.js +102 -152
  193. package/dist/cjs/ion-chip.cjs.entry.js +11 -17
  194. package/dist/cjs/ion-col_3.cjs.entry.js +10 -134
  195. package/dist/cjs/ion-datetime-button.cjs.entry.js +242 -253
  196. package/dist/cjs/ion-datetime_3.cjs.entry.js +3167 -0
  197. package/dist/cjs/ion-fab_3.cjs.entry.js +82 -139
  198. package/dist/cjs/ion-img.cjs.entry.js +13 -34
  199. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +73 -100
  200. package/dist/cjs/ion-input-otp.cjs.entry.js +372 -435
  201. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +22 -36
  202. package/dist/cjs/ion-input.cjs.entry.js +212 -343
  203. package/dist/cjs/ion-item-option_3.cjs.entry.js +55 -94
  204. package/dist/cjs/ion-item_8.cjs.entry.js +93 -191
  205. package/dist/cjs/ion-loading.cjs.entry.js +61 -146
  206. package/dist/cjs/ion-menu_3.cjs.entry.js +109 -170
  207. package/dist/cjs/ion-modal.cjs.entry.js +262 -455
  208. package/dist/cjs/ion-nav_2.cjs.entry.js +159 -101
  209. package/dist/cjs/ion-picker-column-option.cjs.entry.js +34 -37
  210. package/dist/cjs/ion-picker-column.cjs.entry.js +406 -417
  211. package/dist/cjs/ion-picker.cjs.entry.js +393 -401
  212. package/dist/cjs/ion-popover.cjs.entry.js +206 -319
  213. package/dist/cjs/ion-progress-bar.cjs.entry.js +26 -31
  214. package/dist/cjs/ion-radio_2.cjs.entry.js +135 -207
  215. package/dist/cjs/ion-range.cjs.entry.js +237 -302
  216. package/dist/cjs/ion-refresher_2.cjs.entry.js +94 -165
  217. package/dist/cjs/ion-reorder_2.cjs.entry.js +24 -53
  218. package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -14
  219. package/dist/cjs/ion-route_4.cjs.entry.js +72 -175
  220. package/dist/cjs/ion-searchbar.cjs.entry.js +200 -291
  221. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  222. package/dist/cjs/ion-segment-view.cjs.entry.js +17 -28
  223. package/dist/cjs/ion-segment_2.cjs.entry.js +126 -169
  224. package/dist/cjs/ion-select-modal.cjs.entry.js +49 -104
  225. package/dist/cjs/ion-select_3.cjs.entry.js +260 -787
  226. package/dist/cjs/ion-spinner.cjs.entry.js +10 -24
  227. package/dist/cjs/ion-split-pane.cjs.entry.js +16 -29
  228. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +42 -100
  229. package/dist/cjs/ion-tab_2.cjs.entry.js +28 -53
  230. package/dist/cjs/ion-text.cjs.entry.js +5 -11
  231. package/dist/cjs/ion-textarea.cjs.entry.js +189 -296
  232. package/dist/cjs/ion-toast.cjs.entry.js +118 -236
  233. package/dist/cjs/ion-toggle.cjs.entry.js +122 -175
  234. package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-BerQGEpE.js} +8 -13
  235. package/dist/cjs/ionic.cjs.js +4 -4
  236. package/dist/cjs/{ios.transition-KvuRAe2W.js → ios.transition-CTiTDh3m.js} +18 -13
  237. package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-jOJZE_I0.js} +1 -1
  238. package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-UuAS4D_9.js} +2 -2
  239. package/dist/cjs/{keyboard-controller-PtZoN2GS.js → keyboard-controller-GXBiBRKS.js} +6 -6
  240. package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-hHzlEQpk.js} +2 -2
  241. package/dist/cjs/loader.cjs.js +4 -4
  242. package/dist/cjs/{md.transition-Bjl5Ozph.js → md.transition-BpiTAaqF.js} +9 -7
  243. package/dist/cjs/notch-controller-aiy8aQb-.js +155 -0
  244. package/dist/cjs/{overlays-IlP4H2Gn.js → overlays-CQ_c1fko.js} +33 -48
  245. package/dist/cjs/{status-tap-BR_ujYHg.js → status-tap-7FzRlXNr.js} +4 -3
  246. package/dist/cjs/{swipe-back-DzQKEl5g.js → swipe-back-DwTZiAc9.js} +5 -5
  247. package/dist/cjs/{theme-Bw0rpaNN.js → theme-CeDs6Hcv.js} +1 -6
  248. package/dist/collection/collection-manifest.json +10 -6
  249. package/dist/collection/components/accordion/accordion.js +312 -315
  250. package/dist/collection/components/accordion-group/accordion-group.js +25 -48
  251. package/dist/collection/components/action-sheet/action-sheet.ios.css +2 -228
  252. package/dist/collection/components/action-sheet/action-sheet.js +64 -173
  253. package/dist/collection/components/action-sheet/action-sheet.md.css +2 -174
  254. package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
  255. package/dist/collection/components/alert/alert.ios.css +10 -279
  256. package/dist/collection/components/alert/alert.js +97 -257
  257. package/dist/collection/components/alert/alert.md.css +20 -268
  258. package/dist/collection/components/app/app.js +0 -3
  259. package/dist/collection/components/back-button/back-button.js +19 -42
  260. package/dist/collection/components/backdrop/backdrop.js +14 -16
  261. package/dist/collection/components/badge/badge.js +0 -6
  262. package/dist/collection/components/breadcrumb/breadcrumb.js +30 -91
  263. package/dist/collection/components/breadcrumbs/breadcrumbs.js +88 -103
  264. package/dist/collection/components/button/button.js +61 -132
  265. package/dist/collection/components/buttons/buttons.js +15 -13
  266. package/dist/collection/components/card/card.js +21 -54
  267. package/dist/collection/components/card-header/card-header.js +8 -12
  268. package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
  269. package/dist/collection/components/card-title/card-title.js +0 -6
  270. package/dist/collection/components/checkbox/checkbox.js +97 -147
  271. package/dist/collection/components/chip/chip.js +10 -14
  272. package/dist/collection/components/col/col.js +3 -127
  273. package/dist/collection/components/content/content.js +64 -93
  274. package/dist/collection/components/datetime/datetime.ios.css +2 -42
  275. package/dist/collection/components/datetime/datetime.js +816 -1051
  276. package/dist/collection/components/datetime/datetime.md.css +1 -42
  277. package/dist/collection/components/datetime/utils/data.js +14 -13
  278. package/dist/collection/components/datetime/utils/format.js +11 -21
  279. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  280. package/dist/collection/components/datetime/utils/parse.js +10 -10
  281. package/dist/collection/components/datetime/utils/state.js +2 -8
  282. package/dist/collection/components/datetime/utils/validate.js +5 -4
  283. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -5
  284. package/dist/collection/components/datetime-button/datetime-button.js +237 -247
  285. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -5
  286. package/dist/collection/components/fab/fab.js +13 -20
  287. package/dist/collection/components/fab-button/fab-button.js +55 -104
  288. package/dist/collection/components/fab-list/fab-list.js +11 -10
  289. package/dist/collection/components/footer/footer.js +44 -50
  290. package/dist/collection/components/grid/grid.js +6 -4
  291. package/dist/collection/components/header/header.js +25 -35
  292. package/dist/collection/components/img/img.js +10 -34
  293. package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
  294. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
  295. package/dist/collection/components/input/input.ios.css +26 -57
  296. package/dist/collection/components/input/input.js +206 -336
  297. package/dist/collection/components/input/input.md.css +43 -79
  298. package/dist/collection/components/input-otp/input-otp.js +368 -430
  299. package/dist/collection/components/input-password-toggle/input-password-toggle.js +19 -32
  300. package/dist/collection/components/item/item.js +53 -99
  301. package/dist/collection/components/item-divider/item-divider.js +12 -17
  302. package/dist/collection/components/item-group/item-group.js +1 -1
  303. package/dist/collection/components/item-option/item-option.js +22 -50
  304. package/dist/collection/components/item-options/item-options.js +8 -11
  305. package/dist/collection/components/item-sliding/item-sliding.js +21 -27
  306. package/dist/collection/components/label/label.js +6 -26
  307. package/dist/collection/components/list/list.js +8 -11
  308. package/dist/collection/components/list-header/list-header.js +2 -12
  309. package/dist/collection/components/loading/loading.js +51 -135
  310. package/dist/collection/components/menu/menu.js +63 -105
  311. package/dist/collection/components/menu-button/menu-button.js +21 -30
  312. package/dist/collection/components/menu-toggle/menu-toggle.js +15 -22
  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 +10 -22
  316. package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -15
  317. package/dist/collection/components/modal/modal.js +228 -398
  318. package/dist/collection/components/modal/safe-area-utils.js +7 -6
  319. package/dist/collection/components/modal/test/fixtures.js +0 -3
  320. package/dist/collection/components/nav/nav.js +247 -69
  321. package/dist/collection/components/nav/view-controller.js +1 -7
  322. package/dist/collection/components/nav-link/nav-link.js +10 -21
  323. package/dist/collection/components/note/note.js +2 -8
  324. package/dist/collection/components/picker/picker.js +390 -398
  325. package/dist/collection/components/picker-column/picker-column.css +0 -3
  326. package/dist/collection/components/picker-column/picker-column.js +404 -414
  327. package/dist/collection/components/picker-column-option/picker-column-option.js +31 -33
  328. package/dist/collection/components/picker-column-option/picker-column-option.md.css +1 -6
  329. package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
  330. package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
  331. package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
  332. package/dist/collection/components/picker-legacy/picker.ios.css +300 -0
  333. package/dist/collection/components/picker-legacy/picker.js +890 -0
  334. package/dist/collection/components/picker-legacy/picker.md.css +287 -0
  335. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +231 -0
  336. package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
  337. package/dist/collection/components/picker-legacy-column/picker-column.md.css +222 -0
  338. package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
  339. package/dist/collection/components/popover/animations/ios.enter.js +2 -1
  340. package/dist/collection/components/popover/animations/md.enter.js +2 -1
  341. package/dist/collection/components/popover/popover.ios.css +0 -15
  342. package/dist/collection/components/popover/popover.js +185 -302
  343. package/dist/collection/components/popover/popover.md.css +0 -15
  344. package/dist/collection/components/popover/test/fixture.js +0 -1
  345. package/dist/collection/components/popover/utils.js +6 -4
  346. package/dist/collection/components/progress-bar/progress-bar.js +23 -27
  347. package/dist/collection/components/radio/radio.js +66 -102
  348. package/dist/collection/components/radio-group/radio-group.js +66 -101
  349. package/dist/collection/components/radio-group/test/fixtures.js +0 -2
  350. package/dist/collection/components/range/range.js +232 -296
  351. package/dist/collection/components/refresher/refresher.js +78 -110
  352. package/dist/collection/components/refresher-content/refresher-content.js +4 -41
  353. package/dist/collection/components/reorder/reorder.js +1 -2
  354. package/dist/collection/components/reorder-group/reorder-group.js +15 -44
  355. package/dist/collection/components/ripple-effect/ripple-effect.js +13 -12
  356. package/dist/collection/components/route/route.js +10 -39
  357. package/dist/collection/components/route-redirect/route-redirect.js +0 -31
  358. package/dist/collection/components/router/router.js +33 -37
  359. package/dist/collection/components/router/utils/dom.js +7 -25
  360. package/dist/collection/components/router/utils/matching.js +9 -7
  361. package/dist/collection/components/router/utils/parser.js +1 -1
  362. package/dist/collection/components/router/utils/path.js +1 -0
  363. package/dist/collection/components/router-link/router-link.js +12 -37
  364. package/dist/collection/components/router-outlet/router-outlet.js +21 -82
  365. package/dist/collection/components/row/row.js +1 -1
  366. package/dist/collection/components/searchbar/searchbar.js +199 -289
  367. package/dist/collection/components/segment/segment.js +85 -120
  368. package/dist/collection/components/segment-button/segment-button.js +37 -43
  369. package/dist/collection/components/segment-content/segment-content.js +1 -1
  370. package/dist/collection/components/segment-view/segment-view.js +16 -26
  371. package/dist/collection/components/select/select.ios.css +69 -96
  372. package/dist/collection/components/select/select.js +213 -629
  373. package/dist/collection/components/select/select.md.css +85 -118
  374. package/dist/collection/components/select-modal/select-modal.ios.css +0 -218
  375. package/dist/collection/components/select-modal/select-modal.js +38 -92
  376. package/dist/collection/components/select-modal/select-modal.md.css +0 -164
  377. package/dist/collection/components/select-modal/test/fixtures.js +1 -8
  378. package/dist/collection/components/select-option/select-option.js +9 -110
  379. package/dist/collection/components/select-popover/select-popover.ios.css +0 -218
  380. package/dist/collection/components/select-popover/select-popover.js +36 -103
  381. package/dist/collection/components/select-popover/select-popover.md.css +0 -164
  382. package/dist/collection/components/select-popover/test/fixtures.js +1 -8
  383. package/dist/collection/components/skeleton-text/skeleton-text.js +8 -12
  384. package/dist/collection/components/spinner/spinner.js +9 -21
  385. package/dist/collection/components/split-pane/split-pane.js +15 -27
  386. package/dist/collection/components/tab/tab.js +6 -17
  387. package/dist/collection/components/tab-bar/tab-bar.js +14 -32
  388. package/dist/collection/components/tab-button/tab-button.js +23 -62
  389. package/dist/collection/components/tabs/tabs.js +20 -33
  390. package/dist/collection/components/text/text.js +2 -8
  391. package/dist/collection/components/textarea/textarea.ios.css +62 -94
  392. package/dist/collection/components/textarea/textarea.js +181 -287
  393. package/dist/collection/components/textarea/textarea.md.css +77 -103
  394. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  395. package/dist/collection/components/title/title.js +2 -18
  396. package/dist/collection/components/toast/toast.js +106 -223
  397. package/dist/collection/components/toggle/toggle.js +115 -167
  398. package/dist/collection/components/toolbar/toolbar.js +7 -15
  399. package/dist/collection/global/config.js +6 -4
  400. package/dist/collection/global/ionic-global.js +2 -8
  401. package/dist/collection/index.js +1 -1
  402. package/dist/collection/utils/animation/animation.js +3 -3
  403. package/dist/collection/utils/config.js +4 -5
  404. package/dist/collection/utils/focus-controller/index.js +1 -1
  405. package/dist/collection/utils/focus-trap.js +3 -3
  406. package/dist/collection/utils/forms/index.js +0 -1
  407. package/dist/collection/utils/framework-delegate.js +6 -4
  408. package/dist/collection/utils/gesture/gesture-controller.js +8 -15
  409. package/dist/collection/utils/gesture/index.js +2 -10
  410. package/dist/collection/utils/gesture/listener.js +4 -27
  411. package/dist/collection/utils/hardware-back-button.js +3 -3
  412. package/dist/collection/utils/helpers.js +14 -10
  413. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +5 -4
  414. package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -1
  415. package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
  416. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  417. package/dist/collection/utils/logging/index.js +4 -23
  418. package/dist/collection/utils/menu-controller/index.js +2 -1
  419. package/dist/collection/utils/native/haptic.js +3 -2
  420. package/dist/collection/utils/native/keyboard.js +2 -2
  421. package/dist/collection/utils/native/status-bar.js +1 -1
  422. package/dist/collection/utils/overlays.js +23 -38
  423. package/dist/collection/utils/platform.js +5 -4
  424. package/dist/collection/utils/rtl/dir.js +18 -7
  425. package/dist/collection/utils/sanitization/index.js +20 -276
  426. package/dist/collection/utils/slot-mutation-controller.js +2 -1
  427. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  428. package/dist/collection/utils/test/playwright/drag-element.js +3 -2
  429. package/dist/collection/utils/test/playwright/generator.js +4 -3
  430. package/dist/collection/utils/test/playwright/page/event-spy.js +12 -11
  431. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -4
  432. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  433. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +3 -2
  434. package/dist/collection/utils/test/press-keys.js +17 -10
  435. package/dist/collection/utils/theme.js +1 -6
  436. package/dist/collection/utils/transition/ios.transition.js +13 -9
  437. package/dist/collection/utils/transition/md.transition.js +4 -3
  438. package/dist/docs.json +1256 -556
  439. package/dist/esm/{animation-CGFdmGk9.js → animation-DLJpuoEz.js} +4 -4
  440. package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-D0C5S4hU.js} +1 -1
  441. package/dist/esm/{button-active--80YqSHA.js → button-active-CXXy0FIE.js} +3 -3
  442. package/dist/esm/config-DQCONYYp.js +195 -0
  443. package/dist/esm/dir-o8OKV5aD.js +29 -0
  444. package/dist/esm/{format-Dcwga61t.js → format-CAmvpAez.js} +31 -41
  445. package/dist/esm/{framework-delegate--ajhSeKH.js → framework-delegate-B9yvYzqV.js} +7 -5
  446. package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-BTEOs1at.js} +8 -15
  447. package/dist/esm/{haptic-Cq4UAeka.js → haptic-DzAMWJuk.js} +3 -2
  448. package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-B93Gru0Y.js} +4 -4
  449. package/dist/esm/{helpers-DexiPLIC.js → helpers-DkCLSLI9.js} +15 -11
  450. package/dist/esm/{index-_Za5VB9w.js → index-B_8X7INq.js} +2 -2
  451. package/dist/esm/{index-DppOcPFQ.js → index-Bck1OwMs.js} +7 -36
  452. package/dist/esm/{index-BvabGprD.js → index-DV3sJJW8.js} +2 -2
  453. package/dist/esm/{index-CumkqGQF.js → index-DdeElWma.js} +7 -6
  454. package/dist/esm/{index-8s8kZKJ7.js → index-Dsz7OTeL.js} +5 -5
  455. package/dist/esm/{index-BCgUwrV0.js → index-DwNKJodj.js} +3 -2
  456. package/dist/esm/{index-ChhhtsGZ.js → index-tcQvqkiX.js} +15 -32
  457. package/dist/esm/index.js +16 -16
  458. package/dist/esm/{input-shims-BB0AKb_k.js → input-shims-d-hDv86G.js} +12 -9
  459. package/dist/esm/input.utils-Cd23Gdd1.js +147 -0
  460. package/dist/esm/ion-accordion_2.entry.js +341 -368
  461. package/dist/esm/ion-action-sheet.entry.js +77 -187
  462. package/dist/esm/ion-alert.entry.js +111 -272
  463. package/dist/esm/ion-app_8.entry.js +190 -307
  464. package/dist/esm/ion-avatar_3.entry.js +4 -10
  465. package/dist/esm/ion-back-button.entry.js +24 -47
  466. package/dist/esm/ion-backdrop.entry.js +14 -18
  467. package/dist/esm/ion-breadcrumb_2.entry.js +122 -199
  468. package/dist/esm/ion-button_2.entry.js +67 -138
  469. package/dist/esm/ion-card_5.entry.js +31 -82
  470. package/dist/esm/ion-checkbox.entry.js +102 -152
  471. package/dist/esm/ion-chip.entry.js +11 -17
  472. package/dist/esm/ion-col_3.entry.js +10 -134
  473. package/dist/esm/ion-datetime-button.entry.js +242 -253
  474. package/dist/esm/ion-datetime_3.entry.js +3163 -0
  475. package/dist/esm/ion-fab_3.entry.js +82 -139
  476. package/dist/esm/ion-img.entry.js +13 -34
  477. package/dist/esm/ion-infinite-scroll_2.entry.js +72 -99
  478. package/dist/esm/ion-input-otp.entry.js +372 -435
  479. package/dist/esm/ion-input-password-toggle.entry.js +22 -36
  480. package/dist/esm/ion-input.entry.js +210 -341
  481. package/dist/esm/ion-item-option_3.entry.js +55 -94
  482. package/dist/esm/ion-item_8.entry.js +93 -191
  483. package/dist/esm/ion-loading.entry.js +60 -145
  484. package/dist/esm/ion-menu_3.entry.js +109 -170
  485. package/dist/esm/ion-modal.entry.js +262 -455
  486. package/dist/esm/ion-nav_2.entry.js +159 -101
  487. package/dist/esm/ion-picker-column-option.entry.js +34 -37
  488. package/dist/esm/ion-picker-column.entry.js +406 -417
  489. package/dist/esm/ion-picker.entry.js +393 -401
  490. package/dist/esm/ion-popover.entry.js +206 -319
  491. package/dist/esm/ion-progress-bar.entry.js +26 -31
  492. package/dist/esm/ion-radio_2.entry.js +135 -207
  493. package/dist/esm/ion-range.entry.js +237 -302
  494. package/dist/esm/ion-refresher_2.entry.js +92 -163
  495. package/dist/esm/ion-reorder_2.entry.js +24 -53
  496. package/dist/esm/ion-ripple-effect.entry.js +14 -14
  497. package/dist/esm/ion-route_4.entry.js +72 -175
  498. package/dist/esm/ion-searchbar.entry.js +200 -291
  499. package/dist/esm/ion-segment-content.entry.js +2 -2
  500. package/dist/esm/ion-segment-view.entry.js +17 -28
  501. package/dist/esm/ion-segment_2.entry.js +126 -169
  502. package/dist/esm/ion-select-modal.entry.js +49 -104
  503. package/dist/esm/ion-select_3.entry.js +260 -787
  504. package/dist/esm/ion-spinner.entry.js +10 -24
  505. package/dist/esm/ion-split-pane.entry.js +16 -29
  506. package/dist/esm/ion-tab-bar_2.entry.js +42 -100
  507. package/dist/esm/ion-tab_2.entry.js +28 -53
  508. package/dist/esm/ion-text.entry.js +5 -11
  509. package/dist/esm/ion-textarea.entry.js +188 -295
  510. package/dist/esm/ion-toast.entry.js +117 -235
  511. package/dist/esm/ion-toggle.entry.js +122 -175
  512. package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-Cp_eT4sZ.js} +8 -13
  513. package/dist/esm/ionic.js +5 -5
  514. package/dist/esm/{ios.transition-BdhybwLl.js → ios.transition-CxNhMt4a.js} +18 -13
  515. package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-DlNuqNJm.js} +1 -1
  516. package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-CUw4ekVy.js} +2 -2
  517. package/dist/esm/{keyboard-controller-DEwoa1ev.js → keyboard-controller-BaaVITYt.js} +6 -6
  518. package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-ywgs5efA.js} +2 -2
  519. package/dist/esm/loader.js +5 -5
  520. package/dist/esm/{md.transition-B5lqKGCs.js → md.transition-IE4mC3kp.js} +9 -7
  521. package/dist/esm/notch-controller-Doqis1td.js +153 -0
  522. package/dist/esm/{overlays-CjWwtvf1.js → overlays-COCl_nm9.js} +33 -48
  523. package/dist/esm/{status-tap-DpLhkDWs.js → status-tap-HhO5eQI9.js} +4 -3
  524. package/dist/esm/{swipe-back-cz4-lyG3.js → swipe-back-DK6afpuO.js} +5 -5
  525. package/dist/esm/{theme-byZM6qHV.js → theme-DiVJyqlX.js} +1 -6
  526. package/dist/html.html-data.json +80 -52
  527. package/dist/ionic/index.esm.js +1 -1
  528. package/dist/ionic/ionic.esm.js +1 -1
  529. package/dist/ionic/p-01f81ea5.entry.js +4 -0
  530. package/dist/ionic/p-0283ea73.entry.js +4 -0
  531. package/dist/ionic/p-02ecae65.entry.js +4 -0
  532. package/dist/ionic/p-0672f677.entry.js +4 -0
  533. package/dist/ionic/p-0c06fe60.entry.js +4 -0
  534. package/dist/ionic/p-0fa9c382.entry.js +4 -0
  535. package/dist/ionic/p-1af4d74c.entry.js +4 -0
  536. package/dist/ionic/p-1d7ef0d2.entry.js +4 -0
  537. package/dist/ionic/p-26f05d3a.entry.js +4 -0
  538. package/dist/ionic/p-27d30585.entry.js +4 -0
  539. package/dist/ionic/p-2bb2cb18.entry.js +4 -0
  540. package/dist/ionic/p-31e7bd05.entry.js +4 -0
  541. package/dist/ionic/p-32f53010.entry.js +4 -0
  542. package/dist/ionic/p-35eb8b5c.entry.js +4 -0
  543. package/dist/ionic/p-37e720da.entry.js +4 -0
  544. package/dist/ionic/p-3efa137b.entry.js +4 -0
  545. package/dist/ionic/p-432bd72c.entry.js +4 -0
  546. package/dist/ionic/p-47214c72.entry.js +4 -0
  547. package/dist/ionic/p-4e172429.entry.js +4 -0
  548. package/dist/ionic/p-5c3da84e.entry.js +4 -0
  549. package/dist/ionic/p-5d1da0a2.entry.js +4 -0
  550. package/dist/ionic/p-5d8082fe.entry.js +4 -0
  551. package/dist/ionic/p-613d3c43.entry.js +4 -0
  552. package/dist/ionic/p-616e4d4f.entry.js +4 -0
  553. package/dist/ionic/p-65d611b2.entry.js +4 -0
  554. package/dist/ionic/p-67806e3f.entry.js +4 -0
  555. package/dist/ionic/p-68307fbf.entry.js +4 -0
  556. package/dist/ionic/p-68cbb2fc.entry.js +4 -0
  557. package/dist/ionic/p-737ae9eb.entry.js +4 -0
  558. package/dist/ionic/p-7b0d6248.entry.js +4 -0
  559. package/dist/ionic/p-7e71e470.entry.js +4 -0
  560. package/dist/ionic/p-84d5ce05.entry.js +4 -0
  561. package/dist/ionic/p-85d49987.entry.js +4 -0
  562. package/dist/ionic/p-8945088b.entry.js +4 -0
  563. package/dist/ionic/p-8b155568.entry.js +4 -0
  564. package/dist/ionic/p-90267c4b.entry.js +4 -0
  565. package/dist/ionic/p-92ad8a67.entry.js +4 -0
  566. package/dist/ionic/p-9a97d4e0.entry.js +4 -0
  567. package/dist/ionic/p-9e4b0894.entry.js +4 -0
  568. package/dist/ionic/p-9eeaBrnk.js +4 -0
  569. package/dist/ionic/p-B2kaj8sx.js +4 -0
  570. package/dist/ionic/p-B4y7nxsg.js +4 -0
  571. package/dist/ionic/p-B8t9Ro6f.js +4 -0
  572. package/dist/ionic/p-BEOxsxBw.js +4 -0
  573. package/dist/ionic/p-BJ2NxSHp.js +4 -0
  574. package/dist/ionic/p-BLiL8g0v.js +4 -0
  575. package/dist/ionic/p-BTEOs1at.js +4 -0
  576. package/dist/ionic/p-BUFIpxKM.js +4 -0
  577. package/dist/ionic/p-BYRVyMu9.js +4 -0
  578. package/dist/ionic/p-C0eMdTCW.js +4 -0
  579. package/dist/ionic/p-CKvCXMs9.js +4 -0
  580. package/dist/ionic/p-CPTv7G9B.js +4 -0
  581. package/dist/ionic/{p-CQ_4TirR.js → p-Cd4H8ft-.js} +1 -1
  582. package/dist/ionic/{p-I3In7hMC.js → p-ClM02LPk.js} +1 -1
  583. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  584. package/dist/ionic/p-CxMyXUtt.js +4 -0
  585. package/dist/ionic/p-D13Eaw-8.js +4 -0
  586. package/dist/ionic/p-DCoy2elM.js +4 -0
  587. package/dist/ionic/{p-BvabGprD.js → p-DV3sJJW8.js} +1 -1
  588. package/dist/ionic/p-DZaO33Mw.js +4 -0
  589. package/dist/ionic/p-DiVJyqlX.js +4 -0
  590. package/dist/ionic/p-DipZFfzN.js +4 -0
  591. package/dist/ionic/p-DqN5EA2O.js +4 -0
  592. package/dist/ionic/p-Dr9fTCb1.js +4 -0
  593. package/dist/ionic/p-DzWaWHGc.js +4 -0
  594. package/dist/ionic/p-EkpneKVM.js +4 -0
  595. package/dist/ionic/p-Nqf6uvGh.js +4 -0
  596. package/dist/ionic/p-SNAkTDfm.js +4 -0
  597. package/dist/ionic/p-ab00b0d8.entry.js +4 -0
  598. package/dist/ionic/p-c2175309.entry.js +4 -0
  599. package/dist/ionic/p-c4b69d9b.entry.js +4 -0
  600. package/dist/ionic/p-c4d8641b.entry.js +4 -0
  601. package/dist/ionic/{p-40424a88.entry.js → p-c6e49f3f.entry.js} +1 -1
  602. package/dist/ionic/p-ce637936.entry.js +4 -0
  603. package/dist/ionic/{p-08443c08.entry.js → p-da85e958.entry.js} +1 -1
  604. package/dist/ionic/p-dfa8d673.entry.js +4 -0
  605. package/dist/ionic/p-e139357c.entry.js +4 -0
  606. package/dist/ionic/p-f37ca594.entry.js +4 -0
  607. package/dist/ionic/p-f8dd336e.entry.js +4 -0
  608. package/dist/ionic/p-f9de757b.entry.js +4 -0
  609. package/dist/ionic/p-fe11cf51.entry.js +4 -0
  610. package/dist/ionic/p-mjKAFv89.js +4 -0
  611. package/dist/ionic/p-o8OKV5aD.js +4 -0
  612. package/dist/ionic/p-tcQvqkiX.js +5 -0
  613. package/dist/types/components/img/img.d.ts +0 -2
  614. package/dist/types/components/input/input.d.ts +6 -12
  615. package/dist/types/components/modal/modal-interface.d.ts +0 -9
  616. package/dist/types/components/modal/modal.d.ts +4 -11
  617. package/dist/types/components/nav/nav-interface.d.ts +1 -0
  618. package/dist/types/components/nav/nav.d.ts +22 -2
  619. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
  620. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
  621. package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
  622. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  623. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  624. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
  625. package/dist/types/components/route/route.d.ts +1 -1
  626. package/dist/types/components/router-outlet/router-outlet.d.ts +0 -7
  627. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  628. package/dist/types/components/select/select-interface.d.ts +0 -31
  629. package/dist/types/components/select/select.d.ts +6 -30
  630. package/dist/types/components/select-option/select-option.d.ts +1 -42
  631. package/dist/types/components/textarea/textarea.d.ts +5 -12
  632. package/dist/types/components.d.ts +311 -74
  633. package/dist/types/index.d.ts +1 -1
  634. package/dist/types/interface.d.ts +1 -0
  635. package/dist/types/utils/config.d.ts +8 -1
  636. package/dist/types/utils/forms/index.d.ts +0 -1
  637. package/dist/types/utils/helpers.d.ts +8 -5
  638. package/dist/types/utils/logging/index.d.ts +1 -2
  639. package/dist/types/utils/overlays.d.ts +9 -11
  640. package/dist/types/utils/rtl/dir.d.ts +10 -4
  641. package/dist/types/utils/sanitization/index.d.ts +2 -58
  642. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  643. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  644. package/hydrate/index.js +7265 -10630
  645. package/hydrate/index.mjs +7265 -10630
  646. package/package.json +12 -55
  647. package/components/p--m5cCjbK.js +0 -4
  648. package/components/p-8FN7p701.js +0 -4
  649. package/components/p-B-FxiyeI.js +0 -4
  650. package/components/p-B4uHHhPK.js +0 -4
  651. package/components/p-BMPN55of.js +0 -4
  652. package/components/p-BMS4t-kJ.js +0 -4
  653. package/components/p-BOvLNVKq.js +0 -4
  654. package/components/p-BSQPZ79H.js +0 -4
  655. package/components/p-BWBigMsI.js +0 -4
  656. package/components/p-BZ4-QTes.js +0 -4
  657. package/components/p-BhamHSw3.js +0 -4
  658. package/components/p-BjluhQMI.js +0 -4
  659. package/components/p-BlsIikdZ.js +0 -4
  660. package/components/p-Blug1Vxu.js +0 -4
  661. package/components/p-BpG8kBfD.js +0 -4
  662. package/components/p-BqPNzJf6.js +0 -4
  663. package/components/p-C5KYjZWD.js +0 -4
  664. package/components/p-C91npEel.js +0 -4
  665. package/components/p-C9BGR5fy.js +0 -4
  666. package/components/p-CD4fmpem.js +0 -4
  667. package/components/p-CEW4RXZO.js +0 -4
  668. package/components/p-CKhiNOEg.js +0 -4
  669. package/components/p-CO2zzh3W.js +0 -4
  670. package/components/p-CVb3x_r3.js +0 -4
  671. package/components/p-CWLrHG8Y.js +0 -4
  672. package/components/p-CbhUdtjf.js +0 -4
  673. package/components/p-CejmQs3h.js +0 -4
  674. package/components/p-CfnNZz_d.js +0 -4
  675. package/components/p-CmKf4pgI.js +0 -4
  676. package/components/p-Cs5f-uOS.js +0 -4
  677. package/components/p-D7-vHX0A.js +0 -4
  678. package/components/p-DKrhJJV0.js +0 -4
  679. package/components/p-DRfgH82D.js +0 -4
  680. package/components/p-DSzSbVP2.js +0 -4
  681. package/components/p-DVKS-ovH.js +0 -4
  682. package/components/p-DWCzVL3Y.js +0 -4
  683. package/components/p-Dd8ajo9a.js +0 -4
  684. package/components/p-DdnhY_oj.js +0 -4
  685. package/components/p-DgZOZQjJ.js +0 -4
  686. package/components/p-Dmd2xqCe.js +0 -4
  687. package/components/p-G0TxqHfe.js +0 -4
  688. package/components/p-GG5GhznE.js +0 -4
  689. package/components/p-J-p0EtHR.js +0 -4
  690. package/components/p-LXu5-6Ti.js +0 -4
  691. package/components/p-TXPDHL13.js +0 -4
  692. package/components/p-UQSiXX2Z.js +0 -4
  693. package/components/p-UuPYCOZE.js +0 -4
  694. package/components/p-WeeS7GvC.js +0 -4
  695. package/components/p-_IKFD3ID.js +0 -4
  696. package/components/p-byZM6qHV.js +0 -4
  697. package/components/p-hh7qIC-X.js +0 -4
  698. package/components/p-idq4JFo2.js +0 -4
  699. package/components/p-qT1szVjw.js +0 -4
  700. package/components/p-wzAhIh03.js +0 -4
  701. package/components/p-ypuYdSDB.js +0 -4
  702. package/components/p-yuj4Nkm_.js +0 -4
  703. package/dist/cjs/config-CjUbvdPW.js +0 -36
  704. package/dist/cjs/dir-Brx7VkvP.js +0 -20
  705. package/dist/cjs/index-B7zJsYWS.js +0 -429
  706. package/dist/cjs/input.utils-BZdMWVrt.js +0 -35
  707. package/dist/cjs/ion-datetime.cjs.entry.js +0 -2770
  708. package/dist/cjs/overlay-control-label-D2sdL2O8.js +0 -50
  709. package/dist/cjs/select-option-render-pULCGldr.js +0 -123
  710. package/dist/cjs/slot-mutation-controller-CgTGFqlW.js +0 -397
  711. package/dist/collection/utils/forms/start-container-controller.js +0 -132
  712. package/dist/collection/utils/overlay-control-label.js +0 -45
  713. package/dist/collection/utils/select-option-render.js +0 -118
  714. package/dist/esm/config-DWCzVL3Y.js +0 -32
  715. package/dist/esm/dir-B-FxiyeI.js +0 -18
  716. package/dist/esm/index-CKM1DdGm.js +0 -424
  717. package/dist/esm/input.utils-B1ValN_N.js +0 -33
  718. package/dist/esm/ion-datetime.entry.js +0 -2768
  719. package/dist/esm/overlay-control-label-BSQPZ79H.js +0 -47
  720. package/dist/esm/select-option-render-C4m76VGH.js +0 -121
  721. package/dist/esm/slot-mutation-controller-u741eD3Z.js +0 -393
  722. package/dist/ionic/p-06533d51.entry.js +0 -4
  723. package/dist/ionic/p-0FNc80PN.js +0 -4
  724. package/dist/ionic/p-141f5b47.entry.js +0 -4
  725. package/dist/ionic/p-14a5e8f5.entry.js +0 -4
  726. package/dist/ionic/p-19269e04.entry.js +0 -4
  727. package/dist/ionic/p-19abbc33.entry.js +0 -4
  728. package/dist/ionic/p-1edf0573.entry.js +0 -4
  729. package/dist/ionic/p-4204184c.entry.js +0 -4
  730. package/dist/ionic/p-4bc3ecdb.entry.js +0 -4
  731. package/dist/ionic/p-4eOQC00Z.js +0 -4
  732. package/dist/ionic/p-4eed9ca1.entry.js +0 -4
  733. package/dist/ionic/p-53bac1c9.entry.js +0 -4
  734. package/dist/ionic/p-5506caeb.entry.js +0 -4
  735. package/dist/ionic/p-5521dc1f.entry.js +0 -4
  736. package/dist/ionic/p-5993a77f.entry.js +0 -4
  737. package/dist/ionic/p-5c3626de.entry.js +0 -4
  738. package/dist/ionic/p-5d3b411c.entry.js +0 -4
  739. package/dist/ionic/p-60576951.entry.js +0 -4
  740. package/dist/ionic/p-7116e558.entry.js +0 -4
  741. package/dist/ionic/p-711a8319.entry.js +0 -4
  742. package/dist/ionic/p-71419a55.entry.js +0 -4
  743. package/dist/ionic/p-79325ffe.entry.js +0 -4
  744. package/dist/ionic/p-7bb3e957.entry.js +0 -4
  745. package/dist/ionic/p-82525fb0.entry.js +0 -4
  746. package/dist/ionic/p-84a38904.entry.js +0 -4
  747. package/dist/ionic/p-865fa114.entry.js +0 -4
  748. package/dist/ionic/p-8e1d9e3a.entry.js +0 -4
  749. package/dist/ionic/p-8f204f1e.entry.js +0 -4
  750. package/dist/ionic/p-9055e897.entry.js +0 -4
  751. package/dist/ionic/p-9658e083.entry.js +0 -4
  752. package/dist/ionic/p-988baee1.entry.js +0 -4
  753. package/dist/ionic/p-9nmHvEvw.js +0 -4
  754. package/dist/ionic/p-B-FxiyeI.js +0 -4
  755. package/dist/ionic/p-BB0LlG4y.js +0 -4
  756. package/dist/ionic/p-BMPN55of.js +0 -4
  757. package/dist/ionic/p-BQ8oNV0v.js +0 -4
  758. package/dist/ionic/p-BSQPZ79H.js +0 -4
  759. package/dist/ionic/p-BhamHSw3.js +0 -4
  760. package/dist/ionic/p-BjvtSsVI.js +0 -4
  761. package/dist/ionic/p-BwIp10KV.js +0 -4
  762. package/dist/ionic/p-C-94tAim.js +0 -4
  763. package/dist/ionic/p-C6eME8Ey.js +0 -4
  764. package/dist/ionic/p-CKUuSnDR.js +0 -4
  765. package/dist/ionic/p-CMRtMbJc.js +0 -4
  766. package/dist/ionic/p-CPcPmkGv.js +0 -4
  767. package/dist/ionic/p-CaRuIadB.js +0 -4
  768. package/dist/ionic/p-Cdjxf_yg.js +0 -4
  769. package/dist/ionic/p-ChhhtsGZ.js +0 -5
  770. package/dist/ionic/p-CmKf4pgI.js +0 -4
  771. package/dist/ionic/p-D5t_-oMk.js +0 -4
  772. package/dist/ionic/p-D94b61er.js +0 -4
  773. package/dist/ionic/p-DAztxQR0.js +0 -4
  774. package/dist/ionic/p-DCI3rXQo.js +0 -4
  775. package/dist/ionic/p-DDhtUaaA.js +0 -4
  776. package/dist/ionic/p-DWCzVL3Y.js +0 -4
  777. package/dist/ionic/p-DkUB-ROc.js +0 -4
  778. package/dist/ionic/p-Dn0mqQ_R.js +0 -4
  779. package/dist/ionic/p-T71k3C35.js +0 -4
  780. package/dist/ionic/p-TXPDHL13.js +0 -4
  781. package/dist/ionic/p-a71232d6.entry.js +0 -4
  782. package/dist/ionic/p-a73d8742.entry.js +0 -4
  783. package/dist/ionic/p-a8421d18.entry.js +0 -4
  784. package/dist/ionic/p-a8c2c343.entry.js +0 -4
  785. package/dist/ionic/p-acf0a6af.entry.js +0 -4
  786. package/dist/ionic/p-ad98e3ff.entry.js +0 -4
  787. package/dist/ionic/p-af5166f5.entry.js +0 -4
  788. package/dist/ionic/p-bc2bad5f.entry.js +0 -4
  789. package/dist/ionic/p-be08d500.entry.js +0 -4
  790. package/dist/ionic/p-be9a4f51.entry.js +0 -4
  791. package/dist/ionic/p-byZM6qHV.js +0 -4
  792. package/dist/ionic/p-ccc5044d.entry.js +0 -4
  793. package/dist/ionic/p-ce32912b.entry.js +0 -4
  794. package/dist/ionic/p-ded69ceb.entry.js +0 -4
  795. package/dist/ionic/p-e0c6e31e.entry.js +0 -4
  796. package/dist/ionic/p-e1e5b507.entry.js +0 -4
  797. package/dist/ionic/p-e8c3e08a.entry.js +0 -4
  798. package/dist/ionic/p-ed5d540d.entry.js +0 -4
  799. package/dist/ionic/p-f046aa37.entry.js +0 -4
  800. package/dist/ionic/p-f2802440.entry.js +0 -4
  801. package/dist/ionic/p-f402f5a4.entry.js +0 -4
  802. package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
  803. package/dist/types/utils/forms/start-container-controller.d.ts +0 -34
  804. package/dist/types/utils/overlay-control-label.d.ts +0 -32
  805. package/dist/types/utils/select-option-render.d.ts +0 -53
  806. /package/components/{p-LpMHEu3v.js → p-CO7fmmxt.js} +0 -0
@@ -10,23 +10,13 @@ import { getIonMode } from "../../global/ionic-global";
10
10
  * @part inner - The inner wrapper element that arranges the list header content.
11
11
  */
12
12
  export class ListHeader {
13
- /**
14
- * The color to use from your application's color palette.
15
- * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
16
- * For more information on colors, see [theming](/docs/theming/basics).
17
- */
18
- color;
19
- /**
20
- * How the bottom border should be displayed on the list header.
21
- */
22
- lines;
23
13
  render() {
24
14
  const { lines } = this;
25
15
  const mode = getIonMode(this);
26
- return (h(Host, { key: '92ab17533e169b1a1c990285449e0546aac98021', class: createColorClasses(this.color, {
16
+ return (h(Host, { key: 'f5fcd3e6b9f1ba52381fd0d14c0d50517da50f9f', class: createColorClasses(this.color, {
27
17
  [mode]: true,
28
18
  [`list-header-lines-${lines}`]: lines !== undefined,
29
- }) }, h("div", { key: '26639255577380a8e70b61f753aa9ed57590694f', class: "list-header-inner", part: "inner" }, h("slot", { key: 'f69055e7a7a47ae8dcbbe289e18b6630f0792714' }))));
19
+ }) }, h("div", { key: '99d09b1d2438ad981d20ff965c8945635c2161a3', class: "list-header-inner", part: "inner" }, h("slot", { key: 'efa7ab08935cfa378734cda0612b49ba5b7b6d36' }))));
30
20
  }
31
21
  static get is() { return "ion-list-header"; }
32
22
  static get encapsulation() { return "shadow"; }
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
5
5
  import { ENABLE_HTML_CONTENT_DEFAULT } from "../../utils/config";
6
6
  import { raf } from "../../utils/helpers";
7
7
  import { createLockController } from "../../utils/lock-controller";
8
- import { BACKDROP, cleanupRootFocusTrapAccessibility, createDelegateController, createTriggerController, dismiss, eventMethod, prepareOverlay, present, setOverlayId, } from "../../utils/overlays";
8
+ import { BACKDROP, dismiss, eventMethod, prepareOverlay, present, createDelegateController, createTriggerController, setOverlayId, } from "../../utils/overlays";
9
9
  import { sanitizeDOMString } from "../../utils/sanitization/index";
10
10
  import { getClassMap } from "../../utils/theme";
11
11
  import { config } from "../../global/config";
@@ -19,84 +19,52 @@ import { mdLeaveAnimation } from "./animations/md.leave";
19
19
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
20
20
  */
21
21
  export class Loading {
22
- delegateController = createDelegateController(this);
23
- lockController = createLockController();
24
- triggerController = createTriggerController();
25
- customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
26
- durationTimeout;
27
- presented = false;
28
- lastFocus;
29
- el;
30
- /** @internal */
31
- overlayIndex;
32
- /** @internal */
33
- delegate;
34
- /** @internal */
35
- hasController = false;
36
- /**
37
- * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
38
- */
39
- keyboardClose = true;
40
- /**
41
- * Animation to use when the loading indicator is presented.
42
- */
43
- enterAnimation;
44
- /**
45
- * Animation to use when the loading indicator is dismissed.
46
- */
47
- leaveAnimation;
48
- /**
49
- * Optional text content to display in the loading indicator.
50
- *
51
- * This property accepts custom HTML as a string.
52
- * Content is parsed as plaintext by default.
53
- * `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config
54
- * before custom HTML can be used.
55
- */
56
- message;
57
- /**
58
- * Additional classes to apply for custom CSS. If multiple classes are
59
- * provided they should be separated by spaces.
60
- */
61
- cssClass;
62
- /**
63
- * Number of milliseconds to wait before dismissing the loading indicator.
64
- */
65
- duration = 0;
66
- /**
67
- * If `true`, the loading indicator will be dismissed when the backdrop is clicked.
68
- */
69
- backdropDismiss = false;
70
- /**
71
- * If `true`, a backdrop will be displayed behind the loading indicator.
72
- */
73
- showBackdrop = true;
74
- /**
75
- * The name of the spinner to display.
76
- */
77
- spinner;
78
- /**
79
- * If `true`, the loading indicator will be translucent.
80
- * Only applies when the mode is `"ios"` and the device supports
81
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
82
- */
83
- translucent = false;
84
- /**
85
- * If `true`, the loading indicator will animate.
86
- */
87
- animated = true;
88
- /**
89
- * Additional attributes to pass to the loader.
90
- */
91
- htmlAttributes;
92
- /**
93
- * If `true`, the loading indicator will open. If `false`, the loading indicator will close.
94
- * Use this if you need finer grained control over presentation, otherwise
95
- * just use the loadingController or the `trigger` property.
96
- * Note: `isOpen` will not automatically be set back to `false` when
97
- * the loading indicator dismisses. You will need to do that in your code.
98
- */
99
- isOpen = false;
22
+ constructor() {
23
+ this.delegateController = createDelegateController(this);
24
+ this.lockController = createLockController();
25
+ this.triggerController = createTriggerController();
26
+ this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
27
+ this.presented = false;
28
+ /** @internal */
29
+ this.hasController = false;
30
+ /**
31
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
32
+ */
33
+ this.keyboardClose = true;
34
+ /**
35
+ * Number of milliseconds to wait before dismissing the loading indicator.
36
+ */
37
+ this.duration = 0;
38
+ /**
39
+ * If `true`, the loading indicator will be dismissed when the backdrop is clicked.
40
+ */
41
+ this.backdropDismiss = false;
42
+ /**
43
+ * If `true`, a backdrop will be displayed behind the loading indicator.
44
+ */
45
+ this.showBackdrop = true;
46
+ /**
47
+ * If `true`, the loading indicator will be translucent.
48
+ * Only applies when the mode is `"ios"` and the device supports
49
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
50
+ */
51
+ this.translucent = false;
52
+ /**
53
+ * If `true`, the loading indicator will animate.
54
+ */
55
+ this.animated = true;
56
+ /**
57
+ * If `true`, the loading indicator will open. If `false`, the loading indicator will close.
58
+ * Use this if you need finer grained control over presentation, otherwise
59
+ * just use the loadingController or the `trigger` property.
60
+ * Note: `isOpen` will not automatically be set back to `false` when
61
+ * the loading indicator dismisses. You will need to do that in your code.
62
+ */
63
+ this.isOpen = false;
64
+ this.onBackdropTap = () => {
65
+ this.dismiss(undefined, BACKDROP);
66
+ };
67
+ }
100
68
  onIsOpenChange(newValue, oldValue) {
101
69
  if (newValue === true && oldValue === false) {
102
70
  this.present();
@@ -105,63 +73,23 @@ export class Loading {
105
73
  this.dismiss();
106
74
  }
107
75
  }
108
- /**
109
- * An ID corresponding to the trigger element that
110
- * causes the loading indicator to open when clicked.
111
- */
112
- trigger;
113
76
  triggerChanged() {
114
77
  const { trigger, el, triggerController } = this;
115
78
  if (trigger) {
116
79
  triggerController.addClickListener(el, trigger);
117
80
  }
118
81
  }
119
- /**
120
- * Emitted after the loading has presented.
121
- */
122
- didPresent;
123
- /**
124
- * Emitted before the loading has presented.
125
- */
126
- willPresent;
127
- /**
128
- * Emitted before the loading has dismissed.
129
- */
130
- willDismiss;
131
- /**
132
- * Emitted after the loading has dismissed.
133
- */
134
- didDismiss;
135
- /**
136
- * Emitted after the loading indicator has presented.
137
- * Shorthand for ionLoadingWillDismiss.
138
- */
139
- didPresentShorthand;
140
- /**
141
- * Emitted before the loading indicator has presented.
142
- * Shorthand for ionLoadingWillPresent.
143
- */
144
- willPresentShorthand;
145
- /**
146
- * Emitted before the loading indicator has dismissed.
147
- * Shorthand for ionLoadingWillDismiss.
148
- */
149
- willDismissShorthand;
150
- /**
151
- * Emitted after the loading indicator has dismissed.
152
- * Shorthand for ionLoadingDidDismiss.
153
- */
154
- didDismissShorthand;
155
82
  connectedCallback() {
156
83
  prepareOverlay(this.el);
157
84
  this.triggerChanged();
158
85
  }
159
86
  componentWillLoad() {
87
+ var _a;
160
88
  if (this.spinner === undefined) {
161
89
  const mode = getIonMode(this);
162
90
  this.spinner = config.get('loadingSpinner', config.get('spinner', mode === 'ios' ? 'lines' : 'crescent'));
163
91
  }
164
- if (!this.htmlAttributes?.id) {
92
+ if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
165
93
  setOverlayId(this.el);
166
94
  }
167
95
  }
@@ -186,10 +114,6 @@ export class Loading {
186
114
  }
187
115
  disconnectedCallback() {
188
116
  this.triggerController.removeClickListener();
189
- // Clean up aria-hidden if removed without dismiss() being called
190
- if (this.presented) {
191
- cleanupRootFocusTrapAccessibility();
192
- }
193
117
  }
194
118
  /**
195
119
  * Present the loading overlay after it has been created.
@@ -239,9 +163,6 @@ export class Loading {
239
163
  onWillDismiss() {
240
164
  return eventMethod(this.el, 'ionLoadingWillDismiss');
241
165
  }
242
- onBackdropTap = () => {
243
- this.dismiss(undefined, BACKDROP);
244
- };
245
166
  renderLoadingMessage(msgId) {
246
167
  const { customHTMLEnabled, message } = this;
247
168
  if (customHTMLEnabled) {
@@ -258,14 +179,9 @@ export class Loading {
258
179
  * Otherwise, don't set aria-labelledby.
259
180
  */
260
181
  const ariaLabelledBy = message !== undefined ? msgId : null;
261
- return (h(Host, { key: '2d14122ff3081de73631a7fdd4affdd5c73b8618', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1", ...htmlAttributes, style: {
182
+ return (h(Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
262
183
  zIndex: `${40000 + this.overlayIndex}`,
263
- }, onIonBackdropTap: this.onBackdropTap, class: {
264
- ...getClassMap(this.cssClass),
265
- [mode]: true,
266
- 'overlay-hidden': true,
267
- 'loading-translucent': this.translucent,
268
- } }, h("ion-backdrop", { key: 'b7d5bb0d670a20c159d7f67327bf3b1489449188', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '085ce92bd2004d323ab47eb472b83826e48dc619', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '4ecd5bfc0bbd3da434d32f0f319f867a44c5e1f1', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: '5a4498e1421e09d01c0ee4312eae5272e95c3127', class: "loading-spinner" }, h("ion-spinner", { key: '1b3bc7d45d775195657ead3535f65e6b79f37e84', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'bc7c5467b9f1c6ab957f79934e97acc713bdec37', tabindex: "0", "aria-hidden": "true" })));
184
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, h("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
269
185
  }
270
186
  static get is() { return "ion-loading"; }
271
187
  static get encapsulation() { return "scoped"; }
@@ -23,69 +23,63 @@ const mdEasingReverse = 'cubic-bezier(0.4, 0, 0.6, 1)';
23
23
  * @part backdrop - The backdrop that appears over the main content when the menu is open.
24
24
  */
25
25
  export class Menu {
26
- animation;
27
- lastOnEnd = 0;
28
- gesture;
29
- blocker = GESTURE_CONTROLLER.createBlocker({ disableScroll: true });
30
- didLoad = false;
31
- /**
32
- * Flag used to determine if an open/close
33
- * operation was cancelled. For example, if
34
- * an app calls "menu.open" then disables the menu
35
- * part way through the animation, then this would
36
- * be considered a cancelled operation.
37
- */
38
- operationCancelled = false;
39
- isAnimating = false;
40
- width;
41
- _isOpen = false;
42
- backdropEl;
43
- menuInnerEl;
44
- contentEl;
45
- lastFocus;
46
- inheritedAttributes = {};
47
- handleFocus = (ev) => {
26
+ constructor() {
27
+ this.lastOnEnd = 0;
28
+ this.blocker = GESTURE_CONTROLLER.createBlocker({ disableScroll: true });
29
+ this.didLoad = false;
48
30
  /**
49
- * Overlays have their own focus trapping listener
50
- * so we do not want the two listeners to conflict
51
- * with each other. If the top-most overlay that is
52
- * open does not contain this ion-menu, then ion-menu's
53
- * focus trapping should not run.
31
+ * Flag used to determine if an open/close
32
+ * operation was cancelled. For example, if
33
+ * an app calls "menu.open" then disables the menu
34
+ * part way through the animation, then this would
35
+ * be considered a cancelled operation.
54
36
  */
55
- const lastOverlay = getPresentedOverlay(document);
56
- if (lastOverlay && !lastOverlay.contains(this.el)) {
57
- return;
58
- }
59
- this.trapKeyboardFocus(ev, document);
60
- };
61
- el;
62
- /**
63
- * If true, then the menu should be
64
- * visible within a split pane.
65
- * If false, then the menu is hidden.
66
- * However, the menu-button/menu-toggle
67
- * components can be used to open the
68
- * menu.
69
- */
70
- isPaneVisible = false;
71
- isEndSide = false;
72
- /**
73
- * The `id` of the main content. When using
74
- * a router this is typically `ion-router-outlet`.
75
- * When not using a router, this is typically
76
- * your main view's `ion-content`. This is not the
77
- * id of the `ion-content` inside of your `ion-menu`.
78
- */
79
- contentId;
80
- /**
81
- * An id for the menu.
82
- */
83
- menuId;
84
- /**
85
- * The display type of the menu.
86
- * Available options: `"overlay"`, `"reveal"`, `"push"`.
87
- */
88
- type;
37
+ this.operationCancelled = false;
38
+ this.isAnimating = false;
39
+ this._isOpen = false;
40
+ this.inheritedAttributes = {};
41
+ this.handleFocus = (ev) => {
42
+ /**
43
+ * Overlays have their own focus trapping listener
44
+ * so we do not want the two listeners to conflict
45
+ * with each other. If the top-most overlay that is
46
+ * open does not contain this ion-menu, then ion-menu's
47
+ * focus trapping should not run.
48
+ */
49
+ const lastOverlay = getPresentedOverlay(document);
50
+ if (lastOverlay && !lastOverlay.contains(this.el)) {
51
+ return;
52
+ }
53
+ this.trapKeyboardFocus(ev, document);
54
+ };
55
+ /**
56
+ * If true, then the menu should be
57
+ * visible within a split pane.
58
+ * If false, then the menu is hidden.
59
+ * However, the menu-button/menu-toggle
60
+ * components can be used to open the
61
+ * menu.
62
+ */
63
+ this.isPaneVisible = false;
64
+ this.isEndSide = false;
65
+ /**
66
+ * If `true`, the menu is disabled.
67
+ */
68
+ this.disabled = false;
69
+ /**
70
+ * Which side of the view the menu should be placed.
71
+ */
72
+ this.side = 'start';
73
+ /**
74
+ * If `true`, swiping the menu is enabled.
75
+ */
76
+ this.swipeGesture = true;
77
+ /**
78
+ * The edge threshold for dragging the menu open.
79
+ * If a drag/swipe happens over this value, the menu is not triggered.
80
+ */
81
+ this.maxEdgeStart = 50;
82
+ }
89
83
  typeChanged(type, oldType) {
90
84
  const contentEl = this.contentEl;
91
85
  if (contentEl) {
@@ -101,10 +95,6 @@ export class Menu {
101
95
  }
102
96
  this.animation = undefined;
103
97
  }
104
- /**
105
- * If `true`, the menu is disabled.
106
- */
107
- disabled = false;
108
98
  disabledChanged() {
109
99
  this.updateState();
110
100
  this.ionMenuChange.emit({
@@ -112,51 +102,17 @@ export class Menu {
112
102
  open: this._isOpen,
113
103
  });
114
104
  }
115
- /**
116
- * Which side of the view the menu should be placed.
117
- */
118
- side = 'start';
119
105
  sideChanged() {
120
- this.isEndSide = isEnd(this.side);
106
+ this.isEndSide = isEnd(this.side, this.el);
121
107
  /**
122
108
  * Menu direction animation is calculated based on the document direction.
123
109
  * If the document direction changes, we need to create a new animation.
124
110
  */
125
111
  this.animation = undefined;
126
112
  }
127
- /**
128
- * If `true`, swiping the menu is enabled.
129
- */
130
- swipeGesture = true;
131
113
  swipeGestureChanged() {
132
114
  this.updateState();
133
115
  }
134
- /**
135
- * The edge threshold for dragging the menu open.
136
- * If a drag/swipe happens over this value, the menu is not triggered.
137
- */
138
- maxEdgeStart = 50;
139
- /**
140
- * Emitted when the menu is about to be opened.
141
- */
142
- ionWillOpen;
143
- /**
144
- * Emitted when the menu is about to be closed.
145
- */
146
- ionWillClose;
147
- /**
148
- * Emitted when the menu is open.
149
- */
150
- ionDidOpen;
151
- /**
152
- * Emitted when the menu is closed.
153
- */
154
- ionDidClose;
155
- /**
156
- * Emitted when the menu state is changed.
157
- * @internal
158
- */
159
- ionMenuChange;
160
116
  async connectedCallback() {
161
117
  // TODO: connectedCallback is fired in CE build
162
118
  // before WC is defined. This needs to be fixed in Stencil.
@@ -337,8 +293,9 @@ export class Menu {
337
293
  * @param role The role of the element that is closing the menu.
338
294
  */
339
295
  setOpen(shouldOpen, animated = true, role) {
296
+ var _a;
340
297
  // Blur the active element to prevent it from being kept focused inside an element that will be set with aria-hidden="true"
341
- document.activeElement?.blur();
298
+ (_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.blur();
342
299
  return menuController._setOpen(this, shouldOpen, animated, role);
343
300
  }
344
301
  trapKeyboardFocus(ev, doc) {
@@ -405,7 +362,7 @@ export class Menu {
405
362
  * Menu direction animation is calculated based on the document direction.
406
363
  * If the document direction changes, we need to create a new animation.
407
364
  */
408
- const isEndSide = isEnd(this.side);
365
+ const isEndSide = isEnd(this.side, this.el);
409
366
  if (width === this.width && this.animation !== undefined && isEndSide === this.isEndSide) {
410
367
  return;
411
368
  }
@@ -598,6 +555,7 @@ export class Menu {
598
555
  }
599
556
  }
600
557
  afterAnimation(isOpen, role) {
558
+ var _a;
601
559
  // keep opening/closing the menu disabled for a touch more yet
602
560
  // only add listeners/css if it's enabled and isOpen
603
561
  // and only remove listeners/css if it's not open
@@ -625,7 +583,7 @@ export class Menu {
625
583
  * it isn't already focused. Use the host element instead of the
626
584
  * first descendant to avoid the scroll position jumping around.
627
585
  */
628
- const focusedMenu = document.activeElement?.closest('ion-menu');
586
+ const focusedMenu = (_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.closest('ion-menu');
629
587
  if (focusedMenu !== this.el) {
630
588
  this.el.focus();
631
589
  }
@@ -700,14 +658,14 @@ export class Menu {
700
658
  * the ionBackButton listener in the menu controller
701
659
  * will handle closing the menu when Escape is pressed.
702
660
  */
703
- return (h(Host, { key: 'ca4856cbc46001fc95a47591031c00a100555dcf', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
661
+ return (h(Host, { key: 'e97587ece74feec95a3526bf4823538feb3b9ffc', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
704
662
  [mode]: true,
705
663
  [`menu-type-${type}`]: true,
706
664
  'menu-enabled': !disabled,
707
665
  [`menu-side-${side}`]: true,
708
666
  'menu-pane-visible': isPaneVisible,
709
667
  'split-pane-side': hostContext('ion-split-pane', el),
710
- } }, h("div", { key: '155564ac239dba04b0b41ad194598a23c8d72d3f', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: 'b960042d1e86fd6220f1d862033e79e2dbbe7bcb' })), h("ion-backdrop", { key: '28589933d545b14d063c62fbe61116132d808adf', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
668
+ } }, h("div", { key: '0a8694d1772558f18b38332b3936d0f21fd35ce7', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: '51fe03c098ed8a7f8ecdb12a1649424b4adfa59a' })), h("ion-backdrop", { key: 'cd53a4d9ffef157bd95c652be76c92961f0ff480', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
711
669
  }
712
670
  static get is() { return "ion-menu"; }
713
671
  static get encapsulation() { return "shadow"; }
@@ -16,31 +16,25 @@ import { updateVisibility } from "../menu-toggle/menu-toggle-util";
16
16
  * @part icon - The menu button icon (uses ion-icon).
17
17
  */
18
18
  export class MenuButton {
19
- inheritedAttributes = {};
20
- el;
21
- visible = false;
22
- /**
23
- * The color to use from your application's color palette.
24
- * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
25
- * For more information on colors, see [theming](/docs/theming/basics).
26
- */
27
- color;
28
- /**
29
- * If `true`, the user cannot interact with the menu button.
30
- */
31
- disabled = false;
32
- /**
33
- * Optional property that maps to a Menu's `menuId` prop. Can also be `start` or `end` for the menu side. This is used to find the correct menu to toggle
34
- */
35
- menu;
36
- /**
37
- * Automatically hides the menu button when the corresponding menu is not active
38
- */
39
- autoHide = true;
40
- /**
41
- * The type of the button.
42
- */
43
- type = 'button';
19
+ constructor() {
20
+ this.inheritedAttributes = {};
21
+ this.visible = false;
22
+ /**
23
+ * If `true`, the user cannot interact with the menu button.
24
+ */
25
+ this.disabled = false;
26
+ /**
27
+ * Automatically hides the menu button when the corresponding menu is not active
28
+ */
29
+ this.autoHide = true;
30
+ /**
31
+ * The type of the button.
32
+ */
33
+ this.type = 'button';
34
+ this.onClick = async () => {
35
+ return menuController.toggle(this.menu);
36
+ };
37
+ }
44
38
  componentWillLoad() {
45
39
  this.inheritedAttributes = inheritAriaAttributes(this.el);
46
40
  }
@@ -50,9 +44,6 @@ export class MenuButton {
50
44
  async visibilityChanged() {
51
45
  this.visible = await updateVisibility(this.menu);
52
46
  }
53
- onClick = async () => {
54
- return menuController.toggle(this.menu);
55
- };
56
47
  render() {
57
48
  const { color, disabled, inheritedAttributes } = this;
58
49
  const mode = getIonMode(this);
@@ -62,7 +53,7 @@ export class MenuButton {
62
53
  type: this.type,
63
54
  };
64
55
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
65
- return (h(Host, { key: 'b8869377822b082c6c4d3f16135b50b733eabf65', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
56
+ return (h(Host, { key: 'dcade732e366f0687d92cb9ce4065b78b0b41d24', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
66
57
  [mode]: true,
67
58
  button: true, // ion-buttons target .button
68
59
  'menu-button-hidden': hidden,
@@ -71,7 +62,7 @@ export class MenuButton {
71
62
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
72
63
  'ion-activatable': true,
73
64
  'ion-focusable': true,
74
- }) }, h("button", { key: '48fc0a7011414b60dd7d5136f247e937ae4bb8c8', ...attrs, disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }, h("span", { key: '8c712f28c5afd345e403a9afc525931112852708', class: "button-inner" }, h("slot", { key: 'dd872325e42baf435188478c8d1cfc416075089d' }, h("ion-icon", { key: 'a4f02bdb715b07792c17e12c7837873d70171f88', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '564e2a8a804e14d1135502f7b17d8b7b9862e81b', type: "unbounded" }))));
65
+ }) }, h("button", Object.assign({ key: '7c4a449e239679376f38471d95fd602f9caec5f6' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: '8bb5bf453280a66109198c970b678ad800c7a8cf', class: "button-inner" }, h("slot", { key: '7f78b1e7a0695f2bd600d13ca81f50dd8b965726' }, h("ion-icon", { key: '9f67f5bb06b1f03a6e5df9ecbe23ebf69fb40756', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '10be7145c614144e94c3cc0b92dc5ee4e1587fe6', type: "unbounded" }))));
75
66
  }
76
67
  static get is() { return "ion-menu-button"; }
77
68
  static get encapsulation() { return "shadow"; }
@@ -9,39 +9,32 @@ import { updateVisibility } from "./menu-toggle-util";
9
9
  * @slot - Content is placed inside the toggle to act as the click target.
10
10
  */
11
11
  export class MenuToggle {
12
- visible = false;
13
- /**
14
- * Optional property that maps to a Menu's `menuId` prop.
15
- * Can also be `start` or `end` for the menu side.
16
- * This is used to find the correct menu to toggle.
17
- *
18
- * If this property is not used, `ion-menu-toggle` will toggle the
19
- * first menu that is active.
20
- */
21
- menu;
22
- /**
23
- * Automatically hides the content when the corresponding menu is not active.
24
- *
25
- * By default, it's `true`. Change it to `false` in order to
26
- * keep `ion-menu-toggle` always visible regardless the state of the menu.
27
- */
28
- autoHide = true;
12
+ constructor() {
13
+ this.visible = false;
14
+ /**
15
+ * Automatically hides the content when the corresponding menu is not active.
16
+ *
17
+ * By default, it's `true`. Change it to `false` in order to
18
+ * keep `ion-menu-toggle` always visible regardless the state of the menu.
19
+ */
20
+ this.autoHide = true;
21
+ this.onClick = () => {
22
+ return menuController.toggle(this.menu);
23
+ };
24
+ }
29
25
  connectedCallback() {
30
26
  this.visibilityChanged();
31
27
  }
32
28
  async visibilityChanged() {
33
29
  this.visible = await updateVisibility(this.menu);
34
30
  }
35
- onClick = () => {
36
- return menuController.toggle(this.menu);
37
- };
38
31
  render() {
39
32
  const mode = getIonMode(this);
40
33
  const hidden = this.autoHide && !this.visible;
41
- return (h(Host, { key: '76d21ea6493b8161860c941e3754fef1e20395cc', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
34
+ return (h(Host, { key: '55135952f3a42cb5d21916dfb7b169d894b381e3', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
42
35
  [mode]: true,
43
36
  'menu-toggle-hidden': hidden,
44
- } }, h("slot", { key: '9383610fd3105e1928a38788eb596e313e2b07f8' })));
37
+ } }, h("slot", { key: 'e8ecb59a6ec075b07e2a1b8fcdf7df3dd9975a03' })));
45
38
  }
46
39
  static get is() { return "ion-menu-toggle"; }
47
40
  static get encapsulation() { return "shadow"; }