@ionic/core 8.6.0 → 8.6.1-dev.11749483665.140e610d

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 (1082) hide show
  1. package/components/action-sheet.js +13 -9
  2. package/components/alert.js +14 -11
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +9 -6
  5. package/components/button.js +41 -10
  6. package/components/buttons.js +11 -8
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +31 -12
  12. package/components/content.js +14 -12
  13. package/components/data.js +5 -5
  14. package/components/focus-visible.js +23 -1
  15. package/components/framework-delegate.js +3 -1
  16. package/components/header.js +28 -16
  17. package/components/helpers.js +42 -3
  18. package/components/index5.js +8 -8
  19. package/components/index6.js +3 -3
  20. package/components/index7.js +111 -150
  21. package/components/index8.js +150 -111
  22. package/components/input-shims.js +2 -2
  23. package/components/input.utils.js +1 -1
  24. package/components/ion-accordion-group.js +23 -5
  25. package/components/ion-accordion.js +32 -21
  26. package/components/ion-app.js +14 -77
  27. package/components/ion-avatar.js +58 -5
  28. package/components/ion-back-button.js +27 -19
  29. package/components/ion-badge.js +73 -9
  30. package/components/ion-breadcrumb.js +43 -10
  31. package/components/ion-breadcrumbs.js +8 -5
  32. package/components/ion-card-content.js +10 -7
  33. package/components/ion-card-header.js +9 -6
  34. package/components/ion-card-subtitle.js +8 -5
  35. package/components/ion-card-title.js +8 -5
  36. package/components/ion-card.js +21 -9
  37. package/components/ion-chip.js +53 -8
  38. package/components/ion-col.js +5 -5
  39. package/components/ion-datetime-button.js +8 -5
  40. package/components/ion-datetime.js +98 -21
  41. package/components/ion-divider.d.ts +11 -0
  42. package/components/ion-divider.js +70 -0
  43. package/components/ion-fab-button.js +31 -15
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -13
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +11 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-otp.js +4 -4
  52. package/components/ion-input-password-toggle.js +51 -13
  53. package/components/ion-input.js +120 -28
  54. package/components/ion-item-divider.js +8 -5
  55. package/components/ion-item-group.js +8 -5
  56. package/components/ion-item-option.js +36 -9
  57. package/components/ion-item-options.js +10 -7
  58. package/components/ion-item-sliding.js +5 -5
  59. package/components/ion-loading.js +12 -9
  60. package/components/ion-menu-button.js +26 -10
  61. package/components/ion-menu-toggle.js +5 -5
  62. package/components/ion-menu.js +10 -8
  63. package/components/ion-nav-link.js +1 -1
  64. package/components/ion-nav.js +7 -5
  65. package/components/ion-note.js +8 -5
  66. package/components/ion-picker-legacy.js +7 -7
  67. package/components/ion-progress-bar.js +25 -7
  68. package/components/ion-range.js +12 -9
  69. package/components/ion-refresher-content.js +23 -8
  70. package/components/ion-refresher.js +10 -7
  71. package/components/ion-reorder-group.js +5 -5
  72. package/components/ion-reorder.js +30 -5
  73. package/components/ion-router-link.js +6 -6
  74. package/components/ion-router-outlet.js +4 -4
  75. package/components/ion-row.js +5 -2
  76. package/components/ion-searchbar.js +137 -23
  77. package/components/ion-segment-button.js +10 -7
  78. package/components/ion-segment-content.js +1 -1
  79. package/components/ion-segment-view.js +5 -2
  80. package/components/ion-segment.js +10 -7
  81. package/components/ion-select-option.js +5 -2
  82. package/components/ion-select.js +117 -33
  83. package/components/ion-skeleton-text.js +5 -5
  84. package/components/ion-split-pane.js +11 -8
  85. package/components/ion-tab-bar.js +39 -9
  86. package/components/ion-tab-button.js +25 -7
  87. package/components/ion-tab.js +2 -2
  88. package/components/ion-tabs.js +2 -2
  89. package/components/ion-text.js +5 -5
  90. package/components/ion-textarea.js +52 -11
  91. package/components/ion-thumbnail.js +5 -2
  92. package/components/ion-toast.js +37 -12
  93. package/components/ion-toggle.js +74 -17
  94. package/components/ionic-global.js +349 -15
  95. package/components/ios.transition.js +1 -0
  96. package/components/item.js +39 -14
  97. package/components/keyboard-controller.js +4 -2
  98. package/components/label.js +8 -5
  99. package/components/list-header.js +10 -7
  100. package/components/list.js +27 -6
  101. package/components/list2.js +6 -0
  102. package/components/modal.js +48 -20
  103. package/components/notch-controller.js +1 -1
  104. package/components/overlays.js +3 -4
  105. package/components/picker-column-option.js +8 -5
  106. package/components/picker-column.js +7 -8
  107. package/components/picker-column2.js +4 -4
  108. package/components/picker.js +7 -4
  109. package/components/popover.js +12 -9
  110. package/components/radio-group.js +10 -5
  111. package/components/radio.js +11 -8
  112. package/components/ripple-effect.js +15 -7
  113. package/components/select-modal.js +4 -4
  114. package/components/select-popover.js +8 -2
  115. package/components/spinner.js +31 -8
  116. package/components/status-tap.js +1 -1
  117. package/components/title.js +10 -7
  118. package/components/toolbar.js +137 -9
  119. package/components/x.js +6 -0
  120. package/css/core.css +1 -1
  121. package/css/core.css.map +1 -1
  122. package/css/display.css +1 -1
  123. package/css/display.css.map +1 -1
  124. package/css/flex-utils.css +1 -1
  125. package/css/flex-utils.css.map +1 -1
  126. package/css/float-elements.css.map +1 -1
  127. package/css/global.bundle.css.map +1 -1
  128. package/css/ionic/bundle.ionic.css +1 -0
  129. package/css/ionic/bundle.ionic.css.map +1 -0
  130. package/css/ionic/core.ionic.css +1 -0
  131. package/css/ionic/core.ionic.css.map +1 -0
  132. package/css/ionic/global.bundle.ionic.css +1 -0
  133. package/css/ionic/global.bundle.ionic.css.map +1 -0
  134. package/css/ionic/ionic-swiper.ionic.css +1 -0
  135. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  136. package/css/ionic/link.ionic.css +1 -0
  137. package/css/ionic/link.ionic.css.map +1 -0
  138. package/css/ionic/structure.ionic.css +1 -0
  139. package/css/ionic/structure.ionic.css.map +1 -0
  140. package/css/ionic/typography.ionic.css +1 -0
  141. package/css/ionic/typography.ionic.css.map +1 -0
  142. package/css/ionic/utils.bundle.ionic.css +1 -0
  143. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  144. package/css/ionic-swiper.css +1 -1
  145. package/css/ionic-swiper.css.map +1 -1
  146. package/css/ionic.bundle.css +1 -1
  147. package/css/ionic.bundle.css.map +1 -1
  148. package/css/normalize.css.map +1 -1
  149. package/css/padding.css.map +1 -1
  150. package/css/palettes/dark.always.css.map +1 -1
  151. package/css/palettes/dark.class.css.map +1 -1
  152. package/css/palettes/dark.system.css.map +1 -1
  153. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  154. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  155. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  156. package/css/palettes/high-contrast.always.css.map +1 -1
  157. package/css/palettes/high-contrast.class.css.map +1 -1
  158. package/css/palettes/high-contrast.system.css.map +1 -1
  159. package/css/structure.css.map +1 -1
  160. package/css/text-alignment.css.map +1 -1
  161. package/css/text-transformation.css.map +1 -1
  162. package/css/typography.css.map +1 -1
  163. package/css/utils.bundle.css +1 -1
  164. package/css/utils.bundle.css.map +1 -1
  165. package/dist/cjs/{animation-0T7gKwOt.js → animation-Bcz4qmJk.js} +2 -3
  166. package/dist/cjs/{button-active-C-4ud7Ht.js → button-active-1nO6qpCH.js} +2 -2
  167. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CzFst28-.js} +1 -1
  168. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  169. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  170. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  171. package/dist/cjs/{config-U7OAuj53.js → config-DGKt4XfG.js} +1 -1
  172. package/dist/cjs/{data-DRqa6oM4.js → data-B3i-krcw.js} +6 -6
  173. package/dist/{esm/focus-visible-BmVRXR1y.js → cjs/focus-visible-BIj-I3-C.js} +27 -1
  174. package/dist/cjs/{framework-delegate-C7sIJyT5.js → framework-delegate-DfEY5uyC.js} +4 -2
  175. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-DbqPcCc9.js} +1 -1
  176. package/dist/cjs/{helpers-BITAzJfi.js → helpers-DmAvmm2T.js} +42 -3
  177. package/dist/cjs/{index-CVa6JE57.js → index-CaZ3uzAD.js} +2 -2
  178. package/dist/cjs/{index-DODXXb_r.js → index-CmckMMX1.js} +352 -12
  179. package/dist/cjs/{index-CPbAsnJK.js → index-DPBLiXfW.js} +2 -2
  180. package/dist/cjs/{index-CxfLS2mX.js → index-DcPe_YcG.js} +12 -12
  181. package/dist/cjs/{index-y0QaNtCi.js → index-DxVhwe3d.js} +4 -4
  182. package/dist/cjs/{index-BDBT0u4l.js → index-YEjC0pvJ.js} +3 -3
  183. package/dist/cjs/index.cjs.js +11 -12
  184. package/dist/cjs/{input-shims-D1Mfgd4s.js → input-shims-BwdlNkON.js} +6 -6
  185. package/dist/cjs/{input.utils-DSoBEyUu.js → input.utils-CfjyQhpu.js} +3 -4
  186. package/dist/cjs/ion-accordion_2.cjs.entry.js +56 -27
  187. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
  188. package/dist/cjs/ion-alert.cjs.entry.js +23 -21
  189. package/dist/cjs/ion-app_8.cjs.entry.js +229 -144
  190. package/dist/cjs/ion-avatar_3.cjs.entry.js +123 -11
  191. package/dist/cjs/ion-back-button.cjs.entry.js +29 -20
  192. package/dist/cjs/ion-backdrop.cjs.entry.js +9 -6
  193. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +52 -16
  194. package/dist/cjs/ion-button_2.cjs.entry.js +43 -11
  195. package/dist/cjs/ion-card_5.cjs.entry.js +53 -29
  196. package/dist/cjs/ion-checkbox.cjs.entry.js +31 -13
  197. package/dist/cjs/ion-chip.cjs.entry.js +48 -7
  198. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  199. package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -7
  200. package/dist/cjs/ion-datetime_3.cjs.entry.js +114 -39
  201. package/dist/cjs/ion-divider.cjs.entry.js +50 -0
  202. package/dist/cjs/ion-fab_3.cjs.entry.js +42 -26
  203. package/dist/cjs/ion-img.cjs.entry.js +7 -3
  204. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +18 -14
  205. package/dist/cjs/ion-input-otp.cjs.entry.js +6 -5
  206. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +51 -13
  207. package/dist/cjs/ion-input.cjs.entry.js +121 -31
  208. package/dist/cjs/ion-item-option_3.cjs.entry.js +48 -19
  209. package/dist/cjs/ion-item_8.cjs.entry.js +106 -46
  210. package/dist/cjs/ion-loading.cjs.entry.js +18 -16
  211. package/dist/cjs/ion-menu_3.cjs.entry.js +45 -27
  212. package/dist/cjs/ion-modal.cjs.entry.js +80 -53
  213. package/dist/cjs/ion-nav_2.cjs.entry.js +13 -10
  214. package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -6
  215. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  216. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  217. package/dist/cjs/ion-popover.cjs.entry.js +18 -16
  218. package/dist/cjs/ion-progress-bar.cjs.entry.js +25 -7
  219. package/dist/cjs/ion-radio_2.cjs.entry.js +22 -13
  220. package/dist/cjs/ion-range.cjs.entry.js +14 -10
  221. package/dist/cjs/ion-refresher_2.cjs.entry.js +38 -20
  222. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  223. package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -6
  224. package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
  225. package/dist/cjs/ion-searchbar.cjs.entry.js +135 -22
  226. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  227. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  228. package/dist/cjs/ion-segment_2.cjs.entry.js +21 -14
  229. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -9
  230. package/dist/cjs/ion-select_3.cjs.entry.js +130 -39
  231. package/dist/cjs/ion-spinner.cjs.entry.js +28 -6
  232. package/dist/cjs/ion-split-pane.cjs.entry.js +11 -8
  233. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +65 -20
  234. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  235. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  236. package/dist/cjs/ion-textarea.cjs.entry.js +55 -15
  237. package/dist/cjs/ion-toast.cjs.entry.js +65 -42
  238. package/dist/cjs/ion-toggle.cjs.entry.js +79 -22
  239. package/dist/cjs/ionic.cjs.js +2 -2
  240. package/dist/cjs/{ios.transition-baEy2tr4.js → ios.transition-BMRClUxZ.js} +6 -5
  241. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Chl5cusY.js} +1 -1
  242. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-yLvXRMuh.js} +4 -3
  243. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-nXDIskl9.js} +3 -3
  244. package/dist/cjs/list-a-7GSA6K.js +8 -0
  245. package/dist/cjs/loader.cjs.js +2 -2
  246. package/dist/cjs/{md.transition-Bvc-JrM5.js → md.transition-D2ZL4jgW.js} +5 -5
  247. package/dist/cjs/{notch-controller-BAbqGXRi.js → notch-controller-S50JyZJs.js} +2 -2
  248. package/dist/cjs/{overlays-DRDumz2b.js → overlays-DbrifhWu.js} +13 -14
  249. package/dist/cjs/{status-tap-Db3WeCkO.js → status-tap-DMaRrHIS.js} +4 -3
  250. package/dist/cjs/{swipe-back-D_VN6H9r.js → swipe-back-CEVlQT7C.js} +3 -2
  251. package/dist/cjs/x-BTF99yFH.js +8 -0
  252. package/dist/collection/collection-manifest.json +1 -0
  253. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  254. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  255. package/dist/collection/components/accordion/accordion.js +36 -26
  256. package/dist/collection/components/accordion/accordion.md.css +67 -59
  257. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  258. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  259. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  260. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  261. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  262. package/dist/collection/components/action-sheet/action-sheet.js +15 -11
  263. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  264. package/dist/collection/components/alert/alert.ios.css +19 -1
  265. package/dist/collection/components/alert/alert.js +16 -13
  266. package/dist/collection/components/alert/alert.md.css +19 -1
  267. package/dist/collection/components/app/app.js +22 -80
  268. package/dist/collection/components/avatar/avatar.ionic.css +365 -0
  269. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  270. package/dist/collection/components/avatar/avatar.js +120 -4
  271. package/dist/collection/components/avatar/avatar.md.css +51 -0
  272. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  273. package/dist/collection/components/back-button/back-button.js +27 -19
  274. package/dist/collection/components/back-button/back-button.md.css +60 -48
  275. package/dist/collection/components/backdrop/backdrop.ionic.css +111 -0
  276. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  277. package/dist/collection/components/backdrop/backdrop.js +12 -6
  278. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  279. package/dist/collection/components/badge/badge.ionic.css +277 -0
  280. package/dist/collection/components/badge/badge.ios.css +139 -12
  281. package/dist/collection/components/badge/badge.js +145 -9
  282. package/dist/collection/components/badge/badge.md.css +123 -12
  283. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  284. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  285. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  286. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  287. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  288. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  289. package/dist/collection/components/button/button.ionic.css +622 -0
  290. package/dist/collection/components/button/button.ios.css +135 -46
  291. package/dist/collection/components/button/button.js +48 -17
  292. package/dist/collection/components/button/button.md.css +126 -50
  293. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  294. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  295. package/dist/collection/components/buttons/buttons.js +15 -9
  296. package/dist/collection/components/buttons/buttons.md.css +55 -3
  297. package/dist/collection/components/card/card.ionic.css +146 -0
  298. package/dist/collection/components/card/card.ios.css +65 -14
  299. package/dist/collection/components/card/card.js +41 -10
  300. package/dist/collection/components/card/card.md.css +65 -14
  301. package/dist/collection/components/card-content/card-content.ionic.css +94 -0
  302. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  303. package/dist/collection/components/card-content/card-content.js +11 -8
  304. package/dist/collection/components/card-content/card-content.md.css +16 -1
  305. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  306. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  307. package/dist/collection/components/card-header/card-header.js +13 -10
  308. package/dist/collection/components/card-header/card-header.md.css +27 -15
  309. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  310. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  311. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  312. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  313. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  314. package/dist/collection/components/card-title/card-title.js +11 -8
  315. package/dist/collection/components/card-title/card-title.md.css +73 -0
  316. package/dist/collection/components/checkbox/checkbox.ionic.css +527 -0
  317. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  318. package/dist/collection/components/checkbox/checkbox.js +70 -14
  319. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  320. package/dist/collection/components/chip/chip.ionic.css +230 -0
  321. package/dist/collection/components/chip/chip.ios.css +67 -14
  322. package/dist/collection/components/chip/chip.js +108 -8
  323. package/dist/collection/components/chip/chip.md.css +67 -14
  324. package/dist/collection/components/col/col.css +12 -0
  325. package/dist/collection/components/col/col.js +9 -5
  326. package/dist/collection/components/content/content.css +8 -2
  327. package/dist/collection/components/content/content.js +16 -11
  328. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  329. package/dist/collection/components/datetime/datetime.ios.css +242 -86
  330. package/dist/collection/components/datetime/datetime.js +98 -20
  331. package/dist/collection/components/datetime/datetime.md.css +242 -86
  332. package/dist/collection/components/datetime/utils/data.js +5 -5
  333. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  334. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  335. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  336. package/dist/collection/components/divider/divider.ionic.css +150 -0
  337. package/dist/collection/components/divider/divider.ios.css +87 -0
  338. package/dist/collection/components/divider/divider.js +94 -0
  339. package/dist/collection/components/divider/divider.md.css +87 -0
  340. package/dist/collection/components/fab/fab.css +25 -1
  341. package/dist/collection/components/fab/fab.js +9 -5
  342. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  343. package/dist/collection/components/fab-button/fab-button.js +36 -21
  344. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  345. package/dist/collection/components/fab-list/fab-list.css +12 -0
  346. package/dist/collection/components/fab-list/fab-list.js +9 -5
  347. package/dist/collection/components/footer/footer.ios.css +14 -2
  348. package/dist/collection/components/footer/footer.js +21 -16
  349. package/dist/collection/components/footer/footer.md.css +12 -0
  350. package/dist/collection/components/grid/grid.css +12 -0
  351. package/dist/collection/components/grid/grid.js +9 -5
  352. package/dist/collection/components/header/header.ionic.css +86 -0
  353. package/dist/collection/components/header/header.ios.css +25 -10
  354. package/dist/collection/components/header/header.js +49 -18
  355. package/dist/collection/components/header/header.md.css +23 -8
  356. package/dist/collection/components/img/img.js +8 -2
  357. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  358. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  359. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  360. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  361. package/dist/collection/components/input/input.ionic.css +883 -0
  362. package/dist/collection/components/input/input.ios.css +223 -140
  363. package/dist/collection/components/input/input.js +149 -38
  364. package/dist/collection/components/input/input.md.css +193 -212
  365. package/dist/collection/components/input-otp/input-otp.ios.css +12 -0
  366. package/dist/collection/components/input-otp/input-otp.js +3 -3
  367. package/dist/collection/components/input-otp/input-otp.md.css +12 -0
  368. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +80 -0
  369. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  370. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  371. package/dist/collection/components/item/item.ionic.css +502 -0
  372. package/dist/collection/components/item/item.ios.css +109 -69
  373. package/dist/collection/components/item/item.js +43 -19
  374. package/dist/collection/components/item/item.md.css +120 -68
  375. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  376. package/dist/collection/components/item-divider/item-divider.js +11 -8
  377. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  378. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  379. package/dist/collection/components/item-group/item-group.js +13 -7
  380. package/dist/collection/components/item-group/item-group.md.css +12 -0
  381. package/dist/collection/components/item-option/item-option.ionic.css +280 -0
  382. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  383. package/dist/collection/components/item-option/item-option.js +73 -9
  384. package/dist/collection/components/item-option/item-option.md.css +136 -29
  385. package/dist/collection/components/item-options/item-options.ionic.css +223 -0
  386. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  387. package/dist/collection/components/item-options/item-options.js +13 -7
  388. package/dist/collection/components/item-options/item-options.md.css +77 -34
  389. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  390. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  391. package/dist/collection/components/label/label.ios.css +18 -0
  392. package/dist/collection/components/label/label.js +11 -8
  393. package/dist/collection/components/label/label.md.css +18 -0
  394. package/dist/collection/components/list/list.ionic.css +214 -0
  395. package/dist/collection/components/list/list.ios.css +54 -14
  396. package/dist/collection/components/list/list.js +48 -9
  397. package/dist/collection/components/list/list.md.css +56 -16
  398. package/dist/collection/components/list-header/list-header.ionic.css +192 -0
  399. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  400. package/dist/collection/components/list-header/list-header.js +11 -8
  401. package/dist/collection/components/list-header/list-header.md.css +82 -38
  402. package/dist/collection/components/loading/loading.ios.css +13 -1
  403. package/dist/collection/components/loading/loading.js +14 -11
  404. package/dist/collection/components/loading/loading.md.css +13 -1
  405. package/dist/collection/components/menu/menu.ios.css +15 -3
  406. package/dist/collection/components/menu/menu.js +12 -7
  407. package/dist/collection/components/menu/menu.md.css +15 -3
  408. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  409. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  410. package/dist/collection/components/menu-button/menu-button.js +26 -10
  411. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  412. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  413. package/dist/collection/components/modal/animations/sheet.js +8 -2
  414. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  415. package/dist/collection/components/modal/modal.ionic.css +243 -0
  416. package/dist/collection/components/modal/modal.ios.css +174 -70
  417. package/dist/collection/components/modal/modal.js +48 -11
  418. package/dist/collection/components/modal/modal.md.css +174 -70
  419. package/dist/collection/components/nav/nav.css +7 -1
  420. package/dist/collection/components/nav/nav.js +11 -5
  421. package/dist/collection/components/nav-link/nav-link.js +5 -1
  422. package/dist/collection/components/note/note.ios.css +12 -0
  423. package/dist/collection/components/note/note.js +11 -8
  424. package/dist/collection/components/note/note.md.css +12 -0
  425. package/dist/collection/components/picker/picker.ios.css +15 -3
  426. package/dist/collection/components/picker/picker.js +8 -5
  427. package/dist/collection/components/picker/picker.md.css +15 -3
  428. package/dist/collection/components/picker-column/picker-column.css +9 -2
  429. package/dist/collection/components/picker-column/picker-column.js +8 -7
  430. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  431. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  432. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  433. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  434. package/dist/collection/components/picker-legacy/picker.js +7 -6
  435. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  436. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  437. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  438. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  439. package/dist/collection/components/popover/popover.ios.css +13 -1
  440. package/dist/collection/components/popover/popover.js +17 -14
  441. package/dist/collection/components/popover/popover.md.css +13 -1
  442. package/dist/collection/components/progress-bar/progress-bar.ionic.css +289 -0
  443. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  444. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  445. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  446. package/dist/collection/components/radio/radio.ionic.css +424 -0
  447. package/dist/collection/components/radio/radio.ios.css +134 -91
  448. package/dist/collection/components/radio/radio.js +12 -9
  449. package/dist/collection/components/radio/radio.md.css +134 -91
  450. package/dist/collection/components/radio-group/radio-group.ionic.css +127 -0
  451. package/dist/collection/components/radio-group/radio-group.ios.css +42 -18
  452. package/dist/collection/components/radio-group/radio-group.js +13 -5
  453. package/dist/collection/components/radio-group/radio-group.md.css +42 -18
  454. package/dist/collection/components/range/range.ionic.css +555 -0
  455. package/dist/collection/components/range/range.ios.css +128 -85
  456. package/dist/collection/components/range/range.js +12 -9
  457. package/dist/collection/components/range/range.md.css +128 -85
  458. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  459. package/dist/collection/components/refresher/refresher.js +11 -8
  460. package/dist/collection/components/refresher/refresher.md.css +15 -2
  461. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  462. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  463. package/dist/collection/components/reorder/reorder.js +33 -6
  464. package/dist/collection/components/reorder/reorder.md.css +6 -0
  465. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  466. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  467. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  468. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +217 -0
  469. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  470. package/dist/collection/components/route/route.js +4 -0
  471. package/dist/collection/components/router/router.js +4 -0
  472. package/dist/collection/components/router-link/router-link.css +8 -2
  473. package/dist/collection/components/router-link/router-link.js +9 -5
  474. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  475. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  476. package/dist/collection/components/row/row.css +12 -0
  477. package/dist/collection/components/row/row.js +9 -2
  478. package/dist/collection/components/searchbar/searchbar.ionic.css +628 -0
  479. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  480. package/dist/collection/components/searchbar/searchbar.js +181 -34
  481. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  482. package/dist/collection/components/segment/segment.ionic.css +117 -0
  483. package/dist/collection/components/segment/segment.ios.css +45 -2
  484. package/dist/collection/components/segment/segment.js +11 -8
  485. package/dist/collection/components/segment/segment.md.css +45 -2
  486. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  487. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  488. package/dist/collection/components/segment-button/segment-button.js +11 -8
  489. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  490. package/dist/collection/components/segment-content/segment-content.js +1 -1
  491. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  492. package/dist/collection/components/segment-view/segment-view.js +6 -4
  493. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  494. package/dist/collection/components/select/select.ionic.css +765 -0
  495. package/dist/collection/components/select/select.ios.css +315 -176
  496. package/dist/collection/components/select/select.js +157 -54
  497. package/dist/collection/components/select/select.md.css +331 -178
  498. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  499. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  500. package/dist/collection/components/select-modal/select-modal.js +3 -3
  501. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  502. package/dist/collection/components/select-option/select-option.js +9 -2
  503. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  504. package/dist/collection/components/select-popover/select-popover.js +12 -4
  505. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  506. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  507. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  508. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +79 -10
  509. package/dist/collection/components/spinner/spinner.js +47 -6
  510. package/dist/collection/components/spinner/spinner.native.css +198 -0
  511. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  512. package/dist/collection/components/split-pane/split-pane.js +14 -8
  513. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  514. package/dist/collection/components/tab/tab.js +6 -2
  515. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  516. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  517. package/dist/collection/components/tab-bar/tab-bar.js +78 -11
  518. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  519. package/dist/collection/components/tab-button/tab-button.ionic.css +338 -0
  520. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  521. package/dist/collection/components/tab-button/tab-button.js +44 -8
  522. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  523. package/dist/collection/components/tabs/tabs.css +7 -1
  524. package/dist/collection/components/tabs/tabs.js +4 -1
  525. package/dist/collection/components/text/text.css +6 -0
  526. package/dist/collection/components/text/text.js +7 -6
  527. package/dist/collection/components/textarea/textarea.ionic.css +830 -0
  528. package/dist/collection/components/textarea/textarea.ios.css +275 -139
  529. package/dist/collection/components/textarea/textarea.js +76 -16
  530. package/dist/collection/components/textarea/textarea.md.css +288 -140
  531. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  532. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  533. package/dist/collection/components/title/title.ionic.css +129 -0
  534. package/dist/collection/components/title/title.ios.css +32 -4
  535. package/dist/collection/components/title/title.js +13 -7
  536. package/dist/collection/components/title/title.md.css +32 -4
  537. package/dist/collection/components/toast/animations/utils.js +1 -1
  538. package/dist/collection/components/toast/toast.ionic.css +396 -0
  539. package/dist/collection/components/toast/toast.ios.css +84 -45
  540. package/dist/collection/components/toast/toast.js +75 -12
  541. package/dist/collection/components/toast/toast.md.css +84 -45
  542. package/dist/collection/components/toggle/toggle.ionic.css +509 -0
  543. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  544. package/dist/collection/components/toggle/toggle.js +73 -18
  545. package/dist/collection/components/toggle/toggle.md.css +244 -131
  546. package/dist/collection/components/toolbar/toolbar.ionic.css +238 -0
  547. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  548. package/dist/collection/components/toolbar/toolbar.js +141 -13
  549. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  550. package/dist/collection/global/ionic-global.js +228 -13
  551. package/dist/collection/utils/focus-visible.js +22 -0
  552. package/dist/collection/utils/framework-delegate.js +3 -1
  553. package/dist/collection/utils/helpers.js +42 -2
  554. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  555. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  556. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  557. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  558. package/dist/collection/utils/overlays.js +2 -1
  559. package/dist/collection/utils/test/playwright/generator.js +48 -23
  560. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  561. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  562. package/dist/collection/utils/transition/ios.transition.js +1 -0
  563. package/dist/docs.json +7739 -362
  564. package/dist/esm/{animation-BWcUKtbn.js → animation-Cgfm6Out.js} +1 -2
  565. package/dist/esm/{button-active-Bxcnevju.js → button-active-DvzVF2u_.js} +2 -2
  566. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-Dvc8Ydvg.js} +1 -1
  567. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  568. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  569. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  570. package/dist/esm/{config-AaTyISnm.js → config-DwiPHIF5.js} +1 -1
  571. package/dist/esm/{data-GIsHsYIB.js → data-HHZs0eLV.js} +6 -6
  572. package/dist/{cjs/focus-visible-CCvKiLh3.js → esm/focus-visible-vXpMhGrs.js} +23 -3
  573. package/dist/esm/{framework-delegate-DxcnWic_.js → framework-delegate-B4Rily6A.js} +4 -2
  574. package/dist/esm/{haptic-DzAMWJuk.js → haptic-ZZTn7IWt.js} +1 -1
  575. package/dist/esm/{helpers-1O4D2b7y.js → helpers-D_90HVv6.js} +42 -3
  576. package/dist/esm/{index-B_U9CtaY.js → index-BBrR3goV.js} +347 -13
  577. package/dist/esm/{index-DfBA5ztX.js → index-BoSPzYKk.js} +4 -4
  578. package/dist/esm/{index-BlJTBdxG.js → index-ByqmqxGO.js} +2 -2
  579. package/dist/esm/{index-BLV6ykCk.js → index-CFd-a2gp.js} +3 -3
  580. package/dist/esm/{index-D8sncTHY.js → index-D4D_NUAr.js} +10 -10
  581. package/dist/esm/{index-CWbP1eJz.js → index-k4x4i7EL.js} +3 -3
  582. package/dist/esm/index.js +11 -12
  583. package/dist/esm/{input-shims-C3lNp93k.js → input-shims-DEtEJcaS.js} +6 -6
  584. package/dist/esm/{input.utils-zWijNCrx.js → input.utils-DNE0LB5g.js} +2 -3
  585. package/dist/esm/ion-accordion_2.entry.js +56 -27
  586. package/dist/esm/ion-action-sheet.entry.js +21 -18
  587. package/dist/esm/ion-alert.entry.js +23 -21
  588. package/dist/esm/ion-app_8.entry.js +229 -144
  589. package/dist/esm/ion-avatar_3.entry.js +124 -12
  590. package/dist/esm/ion-back-button.entry.js +29 -20
  591. package/dist/esm/ion-backdrop.entry.js +9 -6
  592. package/dist/esm/ion-breadcrumb_2.entry.js +52 -16
  593. package/dist/esm/ion-button_2.entry.js +43 -11
  594. package/dist/esm/ion-card_5.entry.js +53 -29
  595. package/dist/esm/ion-checkbox.entry.js +31 -13
  596. package/dist/esm/ion-chip.entry.js +48 -7
  597. package/dist/esm/ion-col_3.entry.js +13 -10
  598. package/dist/esm/ion-datetime-button.entry.js +11 -7
  599. package/dist/esm/ion-datetime_3.entry.js +114 -39
  600. package/dist/esm/ion-divider.entry.js +48 -0
  601. package/dist/esm/ion-fab_3.entry.js +42 -26
  602. package/dist/esm/ion-img.entry.js +7 -3
  603. package/dist/esm/ion-infinite-scroll_2.entry.js +18 -14
  604. package/dist/esm/ion-input-otp.entry.js +6 -5
  605. package/dist/esm/ion-input-password-toggle.entry.js +51 -13
  606. package/dist/esm/ion-input.entry.js +121 -31
  607. package/dist/esm/ion-item-option_3.entry.js +48 -19
  608. package/dist/esm/ion-item_8.entry.js +106 -46
  609. package/dist/esm/ion-loading.entry.js +18 -16
  610. package/dist/esm/ion-menu_3.entry.js +45 -27
  611. package/dist/esm/ion-modal.entry.js +56 -29
  612. package/dist/esm/ion-nav_2.entry.js +13 -10
  613. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  614. package/dist/esm/ion-picker-column.entry.js +11 -11
  615. package/dist/esm/ion-picker.entry.js +10 -6
  616. package/dist/esm/ion-popover.entry.js +18 -16
  617. package/dist/esm/ion-progress-bar.entry.js +25 -7
  618. package/dist/esm/ion-radio_2.entry.js +22 -13
  619. package/dist/esm/ion-range.entry.js +14 -10
  620. package/dist/esm/ion-refresher_2.entry.js +38 -20
  621. package/dist/esm/ion-reorder_2.entry.js +37 -13
  622. package/dist/esm/ion-ripple-effect.entry.js +14 -6
  623. package/dist/esm/ion-route_4.entry.js +8 -7
  624. package/dist/esm/ion-searchbar.entry.js +136 -23
  625. package/dist/esm/ion-segment-content.entry.js +2 -2
  626. package/dist/esm/ion-segment-view.entry.js +6 -3
  627. package/dist/esm/ion-segment_2.entry.js +21 -14
  628. package/dist/esm/ion-select-modal.entry.js +8 -9
  629. package/dist/esm/ion-select_3.entry.js +130 -39
  630. package/dist/esm/ion-spinner.entry.js +28 -6
  631. package/dist/esm/ion-split-pane.entry.js +11 -8
  632. package/dist/esm/ion-tab-bar_2.entry.js +65 -20
  633. package/dist/esm/ion-tab_2.entry.js +8 -7
  634. package/dist/esm/ion-text.entry.js +5 -5
  635. package/dist/esm/ion-textarea.entry.js +55 -15
  636. package/dist/esm/ion-toast.entry.js +41 -18
  637. package/dist/esm/ion-toggle.entry.js +79 -22
  638. package/dist/esm/ionic.js +3 -3
  639. package/dist/esm/{ios.transition-BmXtMRXZ.js → ios.transition-C_-UP8wE.js} +6 -5
  640. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-BsZp3qPH.js} +3 -3
  641. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cvigb3Rv.js} +1 -1
  642. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-lts2Pswq.js} +4 -3
  643. package/dist/esm/list-Dhi5xtNS.js +6 -0
  644. package/dist/esm/loader.js +3 -3
  645. package/dist/esm/{md.transition-CLI683c7.js → md.transition-BDWkLsNw.js} +5 -5
  646. package/dist/esm/{notch-controller-C5LPspO8.js → notch-controller-ClKrf2l9.js} +2 -2
  647. package/dist/esm/{overlays-8Y2rA-ps.js → overlays-DDeOq6un.js} +5 -6
  648. package/dist/esm/{status-tap-7t9T91bG.js → status-tap-DLatL9pG.js} +4 -3
  649. package/dist/esm/{swipe-back-VdaUzLWy.js → swipe-back-YYylMb0l.js} +3 -2
  650. package/dist/esm/x-BDqjX7Z_.js +6 -0
  651. package/dist/html.html-data.json +2508 -230
  652. package/dist/ionic/index.esm.js +1 -1
  653. package/dist/ionic/ionic.esm.js +1 -1
  654. package/dist/ionic/p-034b2ca2.entry.js +4 -0
  655. package/dist/ionic/p-08dfb85e.entry.js +4 -0
  656. package/dist/ionic/p-08e18904.entry.js +4 -0
  657. package/dist/ionic/p-0eab9ecf.entry.js +4 -0
  658. package/dist/ionic/p-11734cc5.entry.js +4 -0
  659. package/dist/ionic/p-1984e701.entry.js +4 -0
  660. package/dist/ionic/p-19959eec.entry.js +4 -0
  661. package/dist/ionic/p-1f976fad.entry.js +4 -0
  662. package/dist/ionic/p-1fd06a55.entry.js +4 -0
  663. package/dist/ionic/p-208954ca.entry.js +4 -0
  664. package/dist/ionic/p-232ba539.entry.js +4 -0
  665. package/dist/ionic/p-30c2256c.entry.js +4 -0
  666. package/dist/ionic/p-32f9c041.entry.js +4 -0
  667. package/dist/ionic/p-331b28f8.entry.js +4 -0
  668. package/dist/ionic/p-3c361403.entry.js +4 -0
  669. package/dist/ionic/p-4903685c.entry.js +4 -0
  670. package/dist/ionic/p-4d7ac4db.entry.js +4 -0
  671. package/dist/ionic/p-5ae4d6a0.entry.js +4 -0
  672. package/dist/ionic/p-6d2dc9d7.entry.js +4 -0
  673. package/dist/ionic/p-6e6ce506.entry.js +4 -0
  674. package/dist/ionic/p-6ea34add.entry.js +4 -0
  675. package/dist/ionic/p-6f17f8ed.entry.js +4 -0
  676. package/dist/ionic/p-7049bf1c.entry.js +4 -0
  677. package/dist/ionic/p-7ace7638.entry.js +4 -0
  678. package/dist/ionic/p-7f1e83a4.entry.js +4 -0
  679. package/dist/ionic/p-82796bb0.entry.js +4 -0
  680. package/dist/ionic/p-931716a5.entry.js +4 -0
  681. package/dist/ionic/p-9cb0fd91.entry.js +4 -0
  682. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  683. package/dist/ionic/p-BJ-EYogw.js +4 -0
  684. package/dist/ionic/p-BK3Vo2GA.js +4 -0
  685. package/dist/ionic/p-BKDxK6_S.js +4 -0
  686. package/dist/ionic/p-BMPzyWDm.js +4 -0
  687. package/dist/ionic/p-BTqHM5hg.js +4 -0
  688. package/dist/ionic/p-BYSs-jZz.js +4 -0
  689. package/dist/ionic/p-BZR5I9yn.js +4 -0
  690. package/dist/ionic/p-BZSKvxFv.js +4 -0
  691. package/dist/ionic/p-BaAcx1TO.js +4 -0
  692. package/dist/ionic/p-BeJdFlAB.js +4 -0
  693. package/dist/ionic/{p-D13Eaw-8.js → p-Bi_aZreq.js} +1 -1
  694. package/dist/ionic/p-BpUl-Ubc.js +4 -0
  695. package/dist/ionic/{p-CKvCXMs9.js → p-BuAY53fC.js} +1 -1
  696. package/dist/ionic/{p-BLV6ykCk.js → p-CFd-a2gp.js} +1 -1
  697. package/dist/ionic/p-CnPZjTVf.js +4 -0
  698. package/dist/ionic/{p-7qk7mxdr.js → p-D-g7JYuH.js} +1 -1
  699. package/dist/ionic/p-D1t981Ih.js +4 -0
  700. package/dist/ionic/p-D6quDhlh.js +4 -0
  701. package/dist/ionic/{p-CPgXVSua.js → p-DIZM2shZ.js} +1 -1
  702. package/dist/ionic/p-DJD59Sq4.js +4 -0
  703. package/dist/ionic/p-DZmL55Qn.js +4 -0
  704. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  705. package/dist/ionic/p-DjxV6ul_.js +4 -0
  706. package/dist/ionic/p-DkXsr7m2.js +4 -0
  707. package/dist/ionic/p-Dpa-63kX.js +4 -0
  708. package/dist/ionic/p-HOJ_eq4V.js +5 -0
  709. package/dist/ionic/p-MBiM0IFp.js +4 -0
  710. package/dist/ionic/p-a036ba35.entry.js +4 -0
  711. package/dist/ionic/p-a1af546a.entry.js +4 -0
  712. package/dist/ionic/p-a7acdba0.entry.js +4 -0
  713. package/dist/ionic/p-aa8d1f1d.entry.js +4 -0
  714. package/dist/ionic/p-ae3dad82.entry.js +4 -0
  715. package/dist/ionic/{p-a9ac80bd.entry.js → p-b2fe9962.entry.js} +1 -1
  716. package/dist/ionic/p-b493f149.entry.js +4 -0
  717. package/dist/ionic/p-b767c96a.entry.js +4 -0
  718. package/dist/ionic/p-b9b3ba1e.entry.js +4 -0
  719. package/dist/ionic/p-bb85830d.entry.js +4 -0
  720. package/dist/ionic/p-c565e353.entry.js +4 -0
  721. package/dist/ionic/p-ccf3b065.entry.js +4 -0
  722. package/dist/ionic/p-cedb36aa.entry.js +4 -0
  723. package/dist/ionic/p-d5b34bac.entry.js +4 -0
  724. package/dist/ionic/p-da78db37.entry.js +4 -0
  725. package/dist/ionic/p-db6e0330.entry.js +4 -0
  726. package/dist/ionic/p-dd5e8e7a.entry.js +4 -0
  727. package/dist/ionic/p-e4ed2971.entry.js +4 -0
  728. package/dist/ionic/p-e56f0f4b.entry.js +4 -0
  729. package/dist/ionic/p-e5897321.entry.js +4 -0
  730. package/dist/ionic/p-e89e89eb.entry.js +4 -0
  731. package/dist/ionic/{p-ei_RiGrl.js → p-eZzo_1L1.js} +1 -1
  732. package/dist/ionic/p-ed214a9c.entry.js +4 -0
  733. package/dist/ionic/p-eebf0420.entry.js +4 -0
  734. package/dist/ionic/p-f6a66956.entry.js +4 -0
  735. package/dist/ionic/p-fIOYmaqA.js +4 -0
  736. package/dist/ionic/p-fc8e47a4.entry.js +4 -0
  737. package/dist/ionic/p-vXpMhGrs.js +4 -0
  738. package/dist/ionic/svg/accessibility-outline.svg +1 -1
  739. package/dist/ionic/svg/accessibility-sharp.svg +1 -1
  740. package/dist/ionic/svg/accessibility.svg +1 -1
  741. package/dist/ionic/svg/arrow-down-left-box-outline.svg +1 -0
  742. package/dist/ionic/svg/arrow-down-left-box-sharp.svg +1 -0
  743. package/dist/ionic/svg/arrow-down-left-box.svg +1 -0
  744. package/dist/ionic/svg/arrow-down-right-box-outline.svg +1 -0
  745. package/dist/ionic/svg/arrow-down-right-box-sharp.svg +1 -0
  746. package/dist/ionic/svg/arrow-down-right-box.svg +1 -0
  747. package/dist/ionic/svg/arrow-up-left-box-outline.svg +1 -0
  748. package/dist/ionic/svg/arrow-up-left-box-sharp.svg +1 -0
  749. package/dist/ionic/svg/arrow-up-left-box.svg +1 -0
  750. package/dist/ionic/svg/arrow-up-right-box-outline.svg +1 -0
  751. package/dist/ionic/svg/arrow-up-right-box-sharp.svg +1 -0
  752. package/dist/ionic/svg/arrow-up-right-box.svg +1 -0
  753. package/dist/ionic/svg/bag-add-outline.svg +1 -1
  754. package/dist/ionic/svg/bag-add-sharp.svg +1 -1
  755. package/dist/ionic/svg/bag-add.svg +1 -1
  756. package/dist/ionic/svg/bag-check-outline.svg +1 -1
  757. package/dist/ionic/svg/bag-check-sharp.svg +1 -1
  758. package/dist/ionic/svg/bag-check.svg +1 -1
  759. package/dist/ionic/svg/bag-handle-outline.svg +1 -1
  760. package/dist/ionic/svg/bag-handle-sharp.svg +1 -1
  761. package/dist/ionic/svg/bag-handle.svg +1 -1
  762. package/dist/ionic/svg/bag-outline.svg +1 -1
  763. package/dist/ionic/svg/bag-remove-outline.svg +1 -1
  764. package/dist/ionic/svg/bag-remove-sharp.svg +1 -1
  765. package/dist/ionic/svg/bag-remove.svg +1 -1
  766. package/dist/ionic/svg/bag-sharp.svg +1 -1
  767. package/dist/ionic/svg/bag.svg +1 -1
  768. package/dist/ionic/svg/balloon-outline.svg +1 -1
  769. package/dist/ionic/svg/balloon-sharp.svg +1 -1
  770. package/dist/ionic/svg/balloon.svg +1 -1
  771. package/dist/ionic/svg/ban-outline.svg +1 -1
  772. package/dist/ionic/svg/ban-sharp.svg +1 -1
  773. package/dist/ionic/svg/ban.svg +1 -1
  774. package/dist/ionic/svg/binoculars-outline.svg +1 -0
  775. package/dist/ionic/svg/binoculars-sharp.svg +1 -0
  776. package/dist/ionic/svg/binoculars.svg +1 -0
  777. package/dist/ionic/svg/body-outline.svg +1 -1
  778. package/dist/ionic/svg/bowling-ball-outline.svg +1 -1
  779. package/dist/ionic/svg/bowling-ball-sharp.svg +1 -1
  780. package/dist/ionic/svg/bowling-ball.svg +1 -1
  781. package/dist/ionic/svg/calendar-clear-outline.svg +1 -1
  782. package/dist/ionic/svg/calendar-clear-sharp.svg +1 -1
  783. package/dist/ionic/svg/calendar-clear.svg +1 -1
  784. package/dist/ionic/svg/calendar-number-outline.svg +1 -1
  785. package/dist/ionic/svg/calendar-number-sharp.svg +1 -1
  786. package/dist/ionic/svg/calendar-number.svg +1 -1
  787. package/dist/ionic/svg/calendar-outline.svg +1 -1
  788. package/dist/ionic/svg/calendar-sharp.svg +1 -1
  789. package/dist/ionic/svg/calendar.svg +1 -1
  790. package/dist/ionic/svg/chevron-collapse-outline.svg +1 -1
  791. package/dist/ionic/svg/chevron-collapse-sharp.svg +1 -1
  792. package/dist/ionic/svg/chevron-collapse.svg +1 -1
  793. package/dist/ionic/svg/chevron-expand-outline.svg +1 -1
  794. package/dist/ionic/svg/chevron-expand-sharp.svg +1 -1
  795. package/dist/ionic/svg/chevron-expand.svg +1 -1
  796. package/dist/ionic/svg/color-wand-outline.svg +1 -1
  797. package/dist/ionic/svg/color-wand.svg +1 -1
  798. package/dist/ionic/svg/diamond-outline.svg +1 -1
  799. package/dist/ionic/svg/diamond-sharp.svg +1 -1
  800. package/dist/ionic/svg/diamond.svg +1 -1
  801. package/dist/ionic/svg/dice-outline.svg +1 -1
  802. package/dist/ionic/svg/dice-sharp.svg +1 -1
  803. package/dist/ionic/svg/dice.svg +1 -1
  804. package/dist/ionic/svg/document-lock-outline.svg +1 -1
  805. package/dist/ionic/svg/document-lock-sharp.svg +1 -1
  806. package/dist/ionic/svg/document-lock.svg +1 -1
  807. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -1
  808. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -1
  809. package/dist/ionic/svg/extension-puzzle.svg +1 -1
  810. package/dist/ionic/svg/filter-circle-outline.svg +1 -1
  811. package/dist/ionic/svg/filter-circle-sharp.svg +1 -1
  812. package/dist/ionic/svg/filter-circle.svg +1 -1
  813. package/dist/ionic/svg/fish-outline.svg +1 -1
  814. package/dist/ionic/svg/fish-sharp.svg +1 -1
  815. package/dist/ionic/svg/fish.svg +1 -1
  816. package/dist/ionic/svg/footsteps-outline.svg +1 -1
  817. package/dist/ionic/svg/footsteps-sharp.svg +1 -1
  818. package/dist/ionic/svg/footsteps.svg +1 -1
  819. package/dist/ionic/svg/id-card-outline.svg +1 -1
  820. package/dist/ionic/svg/id-card-sharp.svg +1 -1
  821. package/dist/ionic/svg/id-card.svg +1 -1
  822. package/dist/ionic/svg/invert-mode-outline.svg +1 -1
  823. package/dist/ionic/svg/invert-mode-sharp.svg +1 -1
  824. package/dist/ionic/svg/invert-mode.svg +1 -1
  825. package/dist/ionic/svg/logo-alipay.svg +1 -1
  826. package/dist/ionic/svg/logo-android.svg +1 -1
  827. package/dist/ionic/svg/logo-appflow.svg +1 -0
  828. package/dist/ionic/svg/logo-apple-ar.svg +1 -1
  829. package/dist/ionic/svg/logo-behance.svg +1 -1
  830. package/dist/ionic/svg/logo-bitbucket.svg +1 -1
  831. package/dist/ionic/svg/logo-deviantart.svg +1 -1
  832. package/dist/ionic/svg/logo-discord.svg +1 -1
  833. package/dist/ionic/svg/logo-docker.svg +1 -1
  834. package/dist/ionic/svg/logo-edge.svg +1 -1
  835. package/dist/ionic/svg/logo-facebook.svg +1 -1
  836. package/dist/ionic/svg/logo-figma.svg +1 -1
  837. package/dist/ionic/svg/logo-firebase.svg +1 -1
  838. package/dist/ionic/svg/logo-gitlab.svg +1 -1
  839. package/dist/ionic/svg/logo-ionic.svg +1 -1
  840. package/dist/ionic/svg/logo-mastodon.svg +1 -1
  841. package/dist/ionic/svg/logo-medium.svg +1 -1
  842. package/dist/ionic/svg/logo-microsoft.svg +1 -1
  843. package/dist/ionic/svg/logo-npm.svg +1 -1
  844. package/dist/ionic/svg/logo-paypal.svg +1 -1
  845. package/dist/ionic/svg/logo-soundcloud.svg +1 -1
  846. package/dist/ionic/svg/logo-tableau.svg +1 -1
  847. package/dist/ionic/svg/logo-tiktok.svg +1 -1
  848. package/dist/ionic/svg/logo-trapeze.svg +1 -0
  849. package/dist/ionic/svg/logo-venmo.svg +1 -1
  850. package/dist/ionic/svg/logo-vercel.svg +1 -1
  851. package/dist/ionic/svg/logo-wechat.svg +1 -1
  852. package/dist/ionic/svg/logo-x.svg +1 -0
  853. package/dist/ionic/svg/logo-yahoo.svg +1 -1
  854. package/dist/ionic/svg/prism-outline.svg +1 -1
  855. package/dist/ionic/svg/prism-sharp.svg +1 -1
  856. package/dist/ionic/svg/prism.svg +1 -1
  857. package/dist/ionic/svg/scale-outline.svg +1 -1
  858. package/dist/ionic/svg/scale-sharp.svg +1 -1
  859. package/dist/ionic/svg/scale.svg +1 -1
  860. package/dist/ionic/svg/server-outline.svg +1 -1
  861. package/dist/ionic/svg/server-sharp.svg +1 -1
  862. package/dist/ionic/svg/server.svg +1 -1
  863. package/dist/ionic/svg/shield-half-outline.svg +1 -1
  864. package/dist/ionic/svg/shield-half-sharp.svg +1 -1
  865. package/dist/ionic/svg/shield-half.svg +1 -1
  866. package/dist/ionic/svg/sparkles-outline.svg +1 -1
  867. package/dist/ionic/svg/sparkles-sharp.svg +1 -1
  868. package/dist/ionic/svg/sparkles.svg +1 -1
  869. package/dist/ionic/svg/storefront-outline.svg +1 -1
  870. package/dist/ionic/svg/storefront-sharp.svg +1 -1
  871. package/dist/ionic/svg/storefront.svg +1 -1
  872. package/dist/ionic/svg/telescope-outline.svg +1 -1
  873. package/dist/ionic/svg/telescope-sharp.svg +1 -1
  874. package/dist/ionic/svg/telescope.svg +1 -1
  875. package/dist/ionic/svg/ticket-outline.svg +1 -1
  876. package/dist/ionic/svg/ticket-sharp.svg +1 -1
  877. package/dist/ionic/svg/ticket.svg +1 -1
  878. package/dist/ionic/svg/today-outline.svg +1 -1
  879. package/dist/ionic/svg/today-sharp.svg +1 -1
  880. package/dist/ionic/svg/today.svg +1 -1
  881. package/dist/ionic/svg/unlink-outline.svg +1 -1
  882. package/dist/ionic/svg/unlink-sharp.svg +1 -1
  883. package/dist/ionic/svg/unlink.svg +1 -1
  884. package/dist/ionic/svg/videocam-off-outline.svg +1 -1
  885. package/dist/ionic/svg/videocam-off-sharp.svg +1 -1
  886. package/dist/ionic/svg/videocam-off.svg +1 -1
  887. package/dist/ionic/svg/wifi-outline.svg +1 -1
  888. package/dist/ionic/svg/wifi-sharp.svg +1 -1
  889. package/dist/ionic/svg/wifi.svg +1 -1
  890. package/dist/types/components/accordion/accordion.d.ts +5 -3
  891. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  892. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  893. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  894. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  895. package/dist/types/components/alert/alert.d.ts +3 -2
  896. package/dist/types/components/app/app.d.ts +6 -2
  897. package/dist/types/components/avatar/avatar.d.ts +32 -0
  898. package/dist/types/components/back-button/back-button.d.ts +2 -1
  899. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  900. package/dist/types/components/badge/badge.d.ts +34 -1
  901. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  902. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  903. package/dist/types/components/button/button.d.ts +19 -6
  904. package/dist/types/components/buttons/buttons.d.ts +5 -1
  905. package/dist/types/components/card/card.d.ts +8 -1
  906. package/dist/types/components/card-content/card-content.d.ts +2 -1
  907. package/dist/types/components/card-header/card-header.d.ts +3 -2
  908. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  909. package/dist/types/components/card-title/card-title.d.ts +2 -1
  910. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  911. package/dist/types/components/chip/chip.d.ts +26 -1
  912. package/dist/types/components/col/col.d.ts +4 -0
  913. package/dist/types/components/content/content.d.ts +3 -0
  914. package/dist/types/components/datetime/datetime.d.ts +26 -1
  915. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  916. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  917. package/dist/types/components/divider/divider.d.ts +20 -0
  918. package/dist/types/components/fab/fab.d.ts +4 -0
  919. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  920. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  921. package/dist/types/components/footer/footer.d.ts +4 -3
  922. package/dist/types/components/grid/grid.d.ts +4 -0
  923. package/dist/types/components/header/header.d.ts +9 -3
  924. package/dist/types/components/img/img.d.ts +3 -0
  925. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  926. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  927. package/dist/types/components/input/input.d.ts +31 -5
  928. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  929. package/dist/types/components/item/item.d.ts +11 -4
  930. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  931. package/dist/types/components/item-group/item-group.d.ts +4 -0
  932. package/dist/types/components/item-option/item-option.d.ts +18 -1
  933. package/dist/types/components/item-options/item-options.d.ts +4 -0
  934. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  935. package/dist/types/components/label/label.d.ts +2 -1
  936. package/dist/types/components/list/list.d.ts +15 -1
  937. package/dist/types/components/list-header/list-header.d.ts +2 -1
  938. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  939. package/dist/types/components/loading/loading.d.ts +3 -2
  940. package/dist/types/components/menu/menu.d.ts +3 -0
  941. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  942. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  943. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  944. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  945. package/dist/types/components/modal/modal.d.ts +11 -1
  946. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  947. package/dist/types/components/nav/nav.d.ts +5 -1
  948. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  949. package/dist/types/components/note/note.d.ts +2 -1
  950. package/dist/types/components/picker/picker.d.ts +2 -1
  951. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  952. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  953. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  954. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  955. package/dist/types/components/popover/popover.d.ts +6 -5
  956. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  957. package/dist/types/components/radio/radio.d.ts +2 -1
  958. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  959. package/dist/types/components/range/range.d.ts +2 -1
  960. package/dist/types/components/refresher/refresher.d.ts +2 -1
  961. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  962. package/dist/types/components/reorder/reorder.d.ts +9 -0
  963. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  964. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  965. package/dist/types/components/route/route.d.ts +4 -0
  966. package/dist/types/components/router/router.d.ts +4 -0
  967. package/dist/types/components/router-link/router-link.d.ts +4 -0
  968. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  969. package/dist/types/components/row/row.d.ts +4 -0
  970. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  971. package/dist/types/components/segment/segment.d.ts +2 -1
  972. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  973. package/dist/types/components/select/select.d.ts +41 -13
  974. package/dist/types/components/select-option/select-option.d.ts +4 -0
  975. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  976. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  977. package/dist/types/components/spinner/spinner.d.ts +15 -0
  978. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  979. package/dist/types/components/tab/tab.d.ts +4 -0
  980. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  981. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  982. package/dist/types/components/tabs/tabs.d.ts +3 -0
  983. package/dist/types/components/text/text.d.ts +2 -1
  984. package/dist/types/components/textarea/textarea.d.ts +17 -4
  985. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  986. package/dist/types/components/title/title.d.ts +4 -0
  987. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  988. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  989. package/dist/types/components/toast/toast.d.ts +19 -2
  990. package/dist/types/components/toggle/toggle.d.ts +15 -1
  991. package/dist/types/components/toolbar/toolbar.d.ts +20 -3
  992. package/dist/types/components.d.ts +1512 -196
  993. package/dist/types/global/ionic-global.d.ts +27 -2
  994. package/dist/types/interface.d.ts +3 -0
  995. package/dist/types/utils/config.d.ts +106 -2
  996. package/dist/types/utils/focus-visible.d.ts +13 -0
  997. package/dist/types/utils/helpers.d.ts +11 -0
  998. package/dist/types/utils/overlays-interface.d.ts +31 -1
  999. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1000. package/hydrate/index.js +2714 -902
  1001. package/hydrate/index.mjs +2714 -902
  1002. package/package.json +9 -4
  1003. package/components/hardware-back-button.js +0 -115
  1004. package/components/index9.js +0 -7
  1005. package/dist/cjs/hardware-back-button-D90qZxju.js +0 -121
  1006. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1007. package/dist/esm/hardware-back-button-DcH0BbDp.js +0 -115
  1008. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1009. package/dist/ionic/p-0fc6fc38.entry.js +0 -4
  1010. package/dist/ionic/p-14ae45e4.entry.js +0 -4
  1011. package/dist/ionic/p-15da9760.entry.js +0 -4
  1012. package/dist/ionic/p-1739f5f2.entry.js +0 -4
  1013. package/dist/ionic/p-18f1813b.entry.js +0 -4
  1014. package/dist/ionic/p-2020aa51.entry.js +0 -4
  1015. package/dist/ionic/p-2c6c6991.entry.js +0 -4
  1016. package/dist/ionic/p-2cfd6b61.entry.js +0 -4
  1017. package/dist/ionic/p-2da6a16b.entry.js +0 -4
  1018. package/dist/ionic/p-3a4feac2.entry.js +0 -4
  1019. package/dist/ionic/p-473877b6.entry.js +0 -4
  1020. package/dist/ionic/p-4b7d1f35.entry.js +0 -4
  1021. package/dist/ionic/p-4d61f20b.entry.js +0 -4
  1022. package/dist/ionic/p-4ddc10ef.entry.js +0 -4
  1023. package/dist/ionic/p-56712fd4.entry.js +0 -4
  1024. package/dist/ionic/p-66510682.entry.js +0 -4
  1025. package/dist/ionic/p-6b666996.entry.js +0 -4
  1026. package/dist/ionic/p-7149db7e.entry.js +0 -4
  1027. package/dist/ionic/p-73d7ad90.entry.js +0 -4
  1028. package/dist/ionic/p-76b697a3.entry.js +0 -4
  1029. package/dist/ionic/p-8957540a.entry.js +0 -4
  1030. package/dist/ionic/p-8a8ef46b.entry.js +0 -4
  1031. package/dist/ionic/p-8c674371.entry.js +0 -4
  1032. package/dist/ionic/p-8f2f76e0.entry.js +0 -4
  1033. package/dist/ionic/p-90f87086.entry.js +0 -4
  1034. package/dist/ionic/p-91bde659.entry.js +0 -4
  1035. package/dist/ionic/p-96389029.entry.js +0 -4
  1036. package/dist/ionic/p-97667b9c.entry.js +0 -4
  1037. package/dist/ionic/p-9b46b31b.entry.js +0 -4
  1038. package/dist/ionic/p-9e699d4a.entry.js +0 -4
  1039. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1040. package/dist/ionic/p-B1MNHTYX.js +0 -4
  1041. package/dist/ionic/p-B3XSxWNQ.js +0 -4
  1042. package/dist/ionic/p-BROiNJRB.js +0 -4
  1043. package/dist/ionic/p-B_U9CtaY.js +0 -5
  1044. package/dist/ionic/p-BhLqfMrf.js +0 -4
  1045. package/dist/ionic/p-BmQduG8c.js +0 -4
  1046. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1047. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1048. package/dist/ionic/p-CL-KfWxq.js +0 -4
  1049. package/dist/ionic/p-CRiGyYOA.js +0 -4
  1050. package/dist/ionic/p-CbI9XwwW.js +0 -4
  1051. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1052. package/dist/ionic/p-D-7TeYC4.js +0 -4
  1053. package/dist/ionic/p-DCfS5Jk_.js +0 -4
  1054. package/dist/ionic/p-DgdWETCP.js +0 -4
  1055. package/dist/ionic/p-Do-uqmtX.js +0 -4
  1056. package/dist/ionic/p-DzH0J0yi.js +0 -4
  1057. package/dist/ionic/p-QwEXyOze.js +0 -4
  1058. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1059. package/dist/ionic/p-a6282370.entry.js +0 -4
  1060. package/dist/ionic/p-a9f99c74.entry.js +0 -4
  1061. package/dist/ionic/p-aIxOGKys.js +0 -4
  1062. package/dist/ionic/p-aa8956c2.entry.js +0 -4
  1063. package/dist/ionic/p-b37dbc31.entry.js +0 -4
  1064. package/dist/ionic/p-b9f79efc.entry.js +0 -4
  1065. package/dist/ionic/p-bNmY-WfR.js +0 -4
  1066. package/dist/ionic/p-bc01c127.entry.js +0 -4
  1067. package/dist/ionic/p-bec79123.entry.js +0 -4
  1068. package/dist/ionic/p-c0335397.entry.js +0 -4
  1069. package/dist/ionic/p-c4912ca5.entry.js +0 -4
  1070. package/dist/ionic/p-c884d7e3.entry.js +0 -4
  1071. package/dist/ionic/p-cb787a4b.entry.js +0 -4
  1072. package/dist/ionic/p-cd12ed1c.entry.js +0 -4
  1073. package/dist/ionic/p-cf632ee2.entry.js +0 -4
  1074. package/dist/ionic/p-d47b85ea.entry.js +0 -4
  1075. package/dist/ionic/p-d8ed5df0.entry.js +0 -4
  1076. package/dist/ionic/p-e1260ed5.entry.js +0 -4
  1077. package/dist/ionic/p-e30ff968.entry.js +0 -4
  1078. package/dist/ionic/p-ead42a37.entry.js +0 -4
  1079. package/dist/ionic/p-f83db8cd.entry.js +0 -4
  1080. package/dist/ionic/p-fbc5481b.entry.js +0 -4
  1081. package/dist/ionic/p-fcc7437b.entry.js +0 -4
  1082. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DODXXb_r.js');
6
+ var index = require('./index-CmckMMX1.js');
7
7
 
8
8
  /**
9
9
  * Returns true if the selected day is equal to the reference day
@@ -1149,20 +1149,20 @@ const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
1149
1149
  // h24 hour system uses 1-24. Midnight starts at 24:00.
1150
1150
  const hour24 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0];
1151
1151
  /**
1152
- * Given a locale and a mode,
1152
+ * Given a locale and a theme,
1153
1153
  * return an array with formatted days
1154
- * of the week. iOS should display days
1155
- * such as "Mon" or "Tue".
1154
+ * of the week. iOS and Ionic themes should
1155
+ * display days such as "Mon" or "Tue".
1156
1156
  * MD should display days such as "M"
1157
1157
  * or "T".
1158
1158
  */
1159
- const getDaysOfWeek = (locale, mode, firstDayOfWeek = 0) => {
1159
+ const getDaysOfWeek = (locale, theme, firstDayOfWeek = 0) => {
1160
1160
  /**
1161
1161
  * Nov 1st, 2020 starts on a Sunday.
1162
1162
  * ion-datetime assumes weeks start on Sunday,
1163
1163
  * but is configurable via `firstDayOfWeek`.
1164
1164
  */
1165
- const weekdayFormat = mode === 'ios' ? 'short' : 'narrow';
1165
+ const weekdayFormat = theme === 'md' ? 'narrow' : 'short';
1166
1166
  const intl = new Intl.DateTimeFormat(locale, { weekday: weekdayFormat });
1167
1167
  const startDate = new Date('11/01/2020');
1168
1168
  const daysOfWeek = [];
@@ -1,6 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ 'use strict';
5
+
4
6
  const ION_FOCUSED = 'ion-focused';
5
7
  const ION_FOCUSABLE = 'ion-focusable';
6
8
  const FOCUS_KEYS = [
@@ -17,6 +19,28 @@ const FOCUS_KEYS = [
17
19
  'Home',
18
20
  'End',
19
21
  ];
22
+ let focusVisibleUtility = null;
23
+ const getOrInitFocusVisibleUtility = () => {
24
+ if (!focusVisibleUtility) {
25
+ focusVisibleUtility = startFocusVisible();
26
+ }
27
+ return focusVisibleUtility;
28
+ };
29
+ /**
30
+ * Used to set focus on an element that uses `ion-focusable`.
31
+ * Do not use this if focusing the element as a result of a keyboard
32
+ * event as the focus utility should handle this for us. This method
33
+ * should be used when we want to programmatically focus an element as
34
+ * a result of another user action. (Ex: We focus the first element
35
+ * inside of a popover when the user presents it, but the popover is not always
36
+ * presented as a result of keyboard action.)
37
+ *
38
+ * @param elements - The elements to set focus on.
39
+ */
40
+ const focusElements = (elements) => {
41
+ const focusVisible = getOrInitFocusVisibleUtility();
42
+ focusVisible.setFocus(elements);
43
+ };
20
44
  const startFocusVisible = (rootEl) => {
21
45
  let currentFocus = [];
22
46
  let keyboardMode = true;
@@ -72,4 +96,6 @@ const startFocusVisible = (rootEl) => {
72
96
  };
73
97
  };
74
98
 
75
- export { startFocusVisible };
99
+ exports.focusElements = focusElements;
100
+ exports.getOrInitFocusVisibleUtility = getOrInitFocusVisibleUtility;
101
+ exports.startFocusVisible = startFocusVisible;
@@ -3,7 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var helpers = require('./helpers-BITAzJfi.js');
6
+ var index = require('./index-CmckMMX1.js');
7
+ var helpers = require('./helpers-DmAvmm2T.js');
7
8
 
8
9
  // TODO(FW-2832): types
9
10
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -104,7 +105,8 @@ const CoreDelegate = () => {
104
105
  * Get the root of the app and
105
106
  * add the overlay there.
106
107
  */
107
- const app = document.querySelector('ion-app') || document.body;
108
+ const appRootSelector = index.config.get('appRootSelector', 'ion-app');
109
+ const app = document.querySelector(appRootSelector) || document.body;
108
110
  /**
109
111
  * Create a placeholder comment so that
110
112
  * we can return this component to where
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var capacitor = require('./capacitor-DmA66EwP.js');
6
+ var capacitor = require('./capacitor-CzFst28-.js');
7
7
 
8
8
  exports.ImpactStyle = void 0;
9
9
  (function (ImpactStyle) {
@@ -3,7 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DODXXb_r.js');
6
+ var focusVisible = require('./focus-visible-BIj-I3-C.js');
7
+ var index = require('./index-CmckMMX1.js');
7
8
 
8
9
  const transitionEndAsync = (el, expectedDuration = 0) => {
9
10
  return new Promise((resolve) => {
@@ -203,6 +204,17 @@ const raf = (h) => {
203
204
  const hasShadowDom = (el) => {
204
205
  return !!el.shadowRoot && !!el.attachShadow;
205
206
  };
207
+ /**
208
+ * Focuses a given element while ensuring proper focus management
209
+ * within the Ionic framework. If the element is marked as `ion-focusable`,
210
+ * this function will delegate focus handling to `ion-app` or manually
211
+ * apply focus when a custom app root is used.
212
+ *
213
+ * This function helps maintain accessibility and expected focus behavior
214
+ * in both standard and custom root environments.
215
+ *
216
+ * @param el - The element to focus.
217
+ */
206
218
  const focusVisibleElement = (el) => {
207
219
  el.focus();
208
220
  /**
@@ -214,9 +226,36 @@ const focusVisibleElement = (el) => {
214
226
  * which will let us explicitly set the elements to focus.
215
227
  */
216
228
  if (el.classList.contains('ion-focusable')) {
217
- const app = el.closest('ion-app');
229
+ const appRootSelector = index.config.get('appRootSelector', 'ion-app');
230
+ const app = el.closest(appRootSelector);
218
231
  if (app) {
219
- app.setFocus([el]);
232
+ if (appRootSelector === 'ion-app') {
233
+ /**
234
+ * If the app root is the default, then it will be
235
+ * in charge of setting focus. This is because the
236
+ * focus-visible utility is attached to the app root
237
+ * and will handle setting focus on the correct element.
238
+ */
239
+ app.setFocus([el]);
240
+ }
241
+ else {
242
+ /**
243
+ * When using a custom app root selector, the focus-visible
244
+ * utility is not available to manage focus automatically.
245
+ * If we set focus immediately, the element may not be fully
246
+ * rendered or interactive, especially if it was just added
247
+ * to the DOM. Using requestAnimationFrame ensures that focus
248
+ * is applied on the next frame, allowing the DOM to settle
249
+ * before changing focus.
250
+ */
251
+ requestAnimationFrame(() => {
252
+ /**
253
+ * The focus-visible utility is used to set focus on an
254
+ * element that uses `ion-focusable`.
255
+ */
256
+ focusVisible.focusElements([el]);
257
+ });
258
+ }
220
259
  }
221
260
  }
222
261
  };
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var helpers = require('./helpers-BITAzJfi.js');
7
- var index = require('./index-DODXXb_r.js');
6
+ var helpers = require('./helpers-DmAvmm2T.js');
7
+ var index = require('./index-CmckMMX1.js');
8
8
 
9
9
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
10
10
  const ION_CONTENT_ELEMENT_SELECTOR = 'ion-content';
@@ -123,6 +123,126 @@ const printRequiredElementError = (el, ...targetSelectors) => {
123
123
  return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
124
124
  };
125
125
 
126
+ const win$1 = typeof window !== 'undefined' ? window : undefined;
127
+ const doc = typeof document !== 'undefined' ? document : undefined;
128
+
129
+ /**
130
+ * CloseWatcher is a newer API that lets
131
+ * use detect the hardware back button event
132
+ * in a web browser: https://caniuse.com/?search=closewatcher
133
+ * However, not every browser supports it yet.
134
+ *
135
+ * This needs to be a function so that we can
136
+ * check the config once it has been set.
137
+ * Otherwise, this code would be evaluated the
138
+ * moment this file is evaluated which could be
139
+ * before the config is set.
140
+ */
141
+ const shouldUseCloseWatcher = () => config.get('experimentalCloseWatcher', false) && win$1 !== undefined && 'CloseWatcher' in win$1;
142
+ /**
143
+ * When hardwareBackButton: false in config,
144
+ * we need to make sure we also block the default
145
+ * webview behavior. If we don't then it will be
146
+ * possible for users to navigate backward while
147
+ * an overlay is still open. Additionally, it will
148
+ * give the appearance that the hardwareBackButton
149
+ * config is not working as the page transition
150
+ * will still happen.
151
+ */
152
+ const blockHardwareBackButton = () => {
153
+ document.addEventListener('backbutton', () => { }); // eslint-disable-line
154
+ };
155
+ const startHardwareBackButton = () => {
156
+ const doc = document;
157
+ let busy = false;
158
+ const backButtonCallback = () => {
159
+ if (busy) {
160
+ return;
161
+ }
162
+ let index = 0;
163
+ let handlers = [];
164
+ const ev = new CustomEvent('ionBackButton', {
165
+ bubbles: false,
166
+ detail: {
167
+ register(priority, handler) {
168
+ handlers.push({ priority, handler, id: index++ });
169
+ },
170
+ },
171
+ });
172
+ doc.dispatchEvent(ev);
173
+ const executeAction = async (handlerRegister) => {
174
+ try {
175
+ if (handlerRegister === null || handlerRegister === void 0 ? void 0 : handlerRegister.handler) {
176
+ const result = handlerRegister.handler(processHandlers);
177
+ if (result != null) {
178
+ await result;
179
+ }
180
+ }
181
+ }
182
+ catch (e) {
183
+ printIonError('[ion-app] - Exception in startHardwareBackButton:', e);
184
+ }
185
+ };
186
+ const processHandlers = () => {
187
+ if (handlers.length > 0) {
188
+ let selectedHandler = {
189
+ priority: Number.MIN_SAFE_INTEGER,
190
+ handler: () => undefined,
191
+ id: -1,
192
+ };
193
+ handlers.forEach((handler) => {
194
+ if (handler.priority >= selectedHandler.priority) {
195
+ selectedHandler = handler;
196
+ }
197
+ });
198
+ busy = true;
199
+ handlers = handlers.filter((handler) => handler.id !== selectedHandler.id);
200
+ executeAction(selectedHandler).then(() => (busy = false));
201
+ }
202
+ };
203
+ processHandlers();
204
+ };
205
+ /**
206
+ * If the CloseWatcher is defined then
207
+ * we don't want to also listen for the native
208
+ * backbutton event otherwise we may get duplicate
209
+ * events firing.
210
+ */
211
+ if (shouldUseCloseWatcher()) {
212
+ let watcher;
213
+ const configureWatcher = () => {
214
+ watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
215
+ watcher = new win$1.CloseWatcher();
216
+ /**
217
+ * Once a close request happens
218
+ * the watcher gets destroyed.
219
+ * As a result, we need to re-configure
220
+ * the watcher so we can respond to other
221
+ * close requests.
222
+ */
223
+ watcher.onclose = () => {
224
+ backButtonCallback();
225
+ configureWatcher();
226
+ };
227
+ };
228
+ configureWatcher();
229
+ }
230
+ else {
231
+ doc.addEventListener('backbutton', backButtonCallback);
232
+ }
233
+ };
234
+ const OVERLAY_BACK_BUTTON_PRIORITY = 100;
235
+ const MENU_BACK_BUTTON_PRIORITY = 99; // 1 less than overlay priority since menu is displayed behind overlays
236
+
237
+ var hardwareBackButton = /*#__PURE__*/Object.freeze({
238
+ __proto__: null,
239
+ MENU_BACK_BUTTON_PRIORITY: MENU_BACK_BUTTON_PRIORITY,
240
+ OVERLAY_BACK_BUTTON_PRIORITY: OVERLAY_BACK_BUTTON_PRIORITY,
241
+ blockHardwareBackButton: blockHardwareBackButton,
242
+ shouldUseCloseWatcher: shouldUseCloseWatcher,
243
+ startHardwareBackButton: startHardwareBackButton
244
+ });
245
+
126
246
  const getPlatforms = (win) => setupPlatforms(win);
127
247
  const isPlatform = (winOrPlatform, platform) => {
128
248
  if (typeof winOrPlatform === 'string') {
@@ -212,10 +332,143 @@ const PLATFORMS_MAP = {
212
332
  hybrid: isHybrid,
213
333
  };
214
334
 
215
- // TODO(FW-2832): types
216
335
  let defaultMode;
217
- const getIonMode = (ref) => {
218
- return (ref && getMode(ref)) || defaultMode;
336
+ let defaultTheme = 'md';
337
+ /**
338
+ * Prints a warning message to the developer to inform them of
339
+ * an invalid configuration of mode and theme.
340
+ * @param mode The invalid mode configuration.
341
+ * @param theme The invalid theme configuration.
342
+ */
343
+ const printInvalidModeWarning = (mode, theme, ref) => {
344
+ printIonWarning(`Invalid mode and theme combination provided: mode: ${mode}, theme: ${theme}. Fallback mode ${getDefaultModeForTheme(theme)} will be used.`, ref);
345
+ };
346
+ /**
347
+ * Validates if a mode is accepted for a theme configuration.
348
+ * @param mode The mode to validate.
349
+ * @param theme The theme the mode is being used with.
350
+ * @returns `true` if the mode is valid for the theme, `false` if invalid.
351
+ */
352
+ const isModeValidForTheme = (mode, theme) => {
353
+ if (mode === 'md') {
354
+ return theme === 'md' || theme === 'ionic';
355
+ }
356
+ else if (mode === 'ios') {
357
+ return theme === 'ios' || theme === 'ionic';
358
+ }
359
+ return false;
360
+ };
361
+ /**
362
+ * Returns the default mode for a specified theme.
363
+ * @param theme The theme to return a default mode for.
364
+ * @returns The default mode, either `ios` or `md`.
365
+ */
366
+ const getDefaultModeForTheme = (theme) => {
367
+ if (theme === 'ios') {
368
+ return 'ios';
369
+ }
370
+ return 'md';
371
+ };
372
+ /**
373
+ * Returns the default theme for a specified mode.
374
+ * @param mode The mode to return a default theme for.
375
+ * @returns The default theme.
376
+ */
377
+ const getDefaultThemeForMode = (mode) => {
378
+ if (mode === 'ios') {
379
+ return 'ios';
380
+ }
381
+ return 'md';
382
+ };
383
+ const isModeSupported = (elmMode) => ['ios', 'md'].includes(elmMode);
384
+ const isThemeSupported = (theme) => ['ios', 'md', 'ionic'].includes(theme);
385
+ const isIonicElement = (elm) => { var _a; return (_a = elm.tagName) === null || _a === void 0 ? void 0 : _a.startsWith('ION-'); };
386
+ /**
387
+ * Returns the mode value of the element reference or the closest
388
+ * parent with a valid mode.
389
+ * @param ref The element reference to look up the mode for.
390
+ * @param theme Optionally can provide the theme to avoid an additional look-up.
391
+ * @returns The mode value for the element reference.
392
+ */
393
+ const getIonMode = (ref, theme = getIonTheme(ref)) => {
394
+ var _a;
395
+ if ((ref === null || ref === void 0 ? void 0 : ref.mode) && isModeValidForTheme(ref === null || ref === void 0 ? void 0 : ref.mode, theme)) {
396
+ /**
397
+ * If the reference already has a mode configuration,
398
+ * use it instead of performing a look-up.
399
+ */
400
+ return ref.mode;
401
+ }
402
+ else {
403
+ const el = getElement(ref);
404
+ const mode = ((_a = el.closest('[mode]')) === null || _a === void 0 ? void 0 : _a.getAttribute('mode')) || defaultMode;
405
+ if (isModeValidForTheme(mode, theme)) {
406
+ /**
407
+ * The mode configuration is supported for the configured theme.
408
+ */
409
+ return mode;
410
+ }
411
+ else {
412
+ printInvalidModeWarning(mode, theme, ref);
413
+ }
414
+ }
415
+ return getDefaultModeForTheme(theme);
416
+ };
417
+ /**
418
+ * Returns the theme value of the element reference or the closest
419
+ * parent with a valid theme.
420
+ *
421
+ * @param ref The element reference to look up the theme for.
422
+ * @returns The theme value for the element reference, defaults to
423
+ * the default theme if it cannot be determined.
424
+ */
425
+ const getIonTheme = (ref) => {
426
+ var _a, _b;
427
+ const theme = ref && getMode(ref);
428
+ if (theme) {
429
+ return theme;
430
+ }
431
+ /**
432
+ * If the theme cannot be detected, then fallback to using
433
+ * the `mode` attribute to determine the style sheets to use.
434
+ */
435
+ const el = getElement(ref);
436
+ const mode = (_a = ref === null || ref === void 0 ? void 0 : ref.mode) !== null && _a !== void 0 ? _a : (_b = el.closest('[mode]')) === null || _b === void 0 ? void 0 : _b.getAttribute('mode');
437
+ if (mode) {
438
+ return getDefaultThemeForMode(mode);
439
+ }
440
+ /**
441
+ * If a mode is not detected, then fallback to using the
442
+ * default theme.
443
+ */
444
+ return defaultTheme;
445
+ };
446
+ const rIC = (callback) => {
447
+ if ('requestIdleCallback' in window) {
448
+ window.requestIdleCallback(callback);
449
+ }
450
+ else {
451
+ setTimeout(callback, 32);
452
+ }
453
+ };
454
+ const needInputShims = () => {
455
+ /**
456
+ * iOS always needs input shims
457
+ */
458
+ const needsShimsIOS = isPlatform(window, 'ios') && isPlatform(window, 'mobile');
459
+ if (needsShimsIOS) {
460
+ return true;
461
+ }
462
+ /**
463
+ * Android only needs input shims when running
464
+ * in the browser and only if the browser is using the
465
+ * new Chrome 108+ resize behavior: https://developer.chrome.com/blog/viewport-resize-behavior/
466
+ */
467
+ const isAndroidMobileWeb = isPlatform(window, 'android') && isPlatform(window, 'mobileweb');
468
+ if (isAndroidMobileWeb) {
469
+ return true;
470
+ }
471
+ return false;
219
472
  };
220
473
  const initialize = (userConfig = {}) => {
221
474
  if (typeof window === 'undefined') {
@@ -233,34 +486,115 @@ const initialize = (userConfig = {}) => {
233
486
  }
234
487
  // Setup platforms
235
488
  setupPlatforms(win);
236
- // first see if the mode was set as an attribute on <html>
237
- // which could have been set by the user, or by pre-rendering
238
- // otherwise get the mode via config settings, and fallback to md
239
489
  Ionic.config = config;
490
+ /**
491
+ * Check if the mode was set as an attribute on <html>
492
+ * which could have been set by the user, or by pre-rendering
493
+ * otherwise get the mode via config settings, and fallback to md.
494
+ */
240
495
  Ionic.mode = defaultMode = config.get('mode', doc.documentElement.getAttribute('mode') || (isPlatform(win, 'ios') ? 'ios' : 'md'));
496
+ /**
497
+ * Check if the theme was set as an attribute on <html>
498
+ * which could have been set by the user, or by pre-rendering
499
+ * otherwise get the theme via config settings, and fallback to md.
500
+ */
501
+ Ionic.theme = defaultTheme = config.get('theme', doc.documentElement.getAttribute('theme') || getDefaultThemeForMode(defaultMode));
502
+ if (!isModeValidForTheme(defaultMode, defaultTheme)) {
503
+ printInvalidModeWarning(defaultMode, defaultTheme, configObj);
504
+ defaultMode = getDefaultModeForTheme(defaultTheme);
505
+ }
241
506
  config.set('mode', defaultMode);
242
507
  doc.documentElement.setAttribute('mode', defaultMode);
243
508
  doc.documentElement.classList.add(defaultMode);
509
+ config.set('theme', defaultTheme);
510
+ doc.documentElement.setAttribute('theme', defaultTheme);
511
+ doc.documentElement.classList.add(defaultTheme);
244
512
  if (config.getBoolean('_testing')) {
245
513
  config.set('animated', false);
246
514
  }
247
- const isIonicElement = (elm) => { var _a; return (_a = elm.tagName) === null || _a === void 0 ? void 0 : _a.startsWith('ION-'); };
248
- const isAllowedIonicModeValue = (elmMode) => ['ios', 'md'].includes(elmMode);
249
515
  setMode((elm) => {
516
+ /**
517
+ * Iterate over all the element nodes, to both validate and
518
+ * set the "mode" that is used for determining the styles to
519
+ * apply to the element.
520
+ *
521
+ * setMode refers to Stencil's internal metadata for "mode",
522
+ * which is used to set the correct styleUrl for the component.
523
+ *
524
+ * If the "theme" attribute or property is set, then use it
525
+ * to determine the style sheets to use.
526
+ *
527
+ * If the "mode" attribute or property is set, then use it
528
+ * to determine the style sheets to use. This is fallback
529
+ * behavior for applications that are not setting the "theme".
530
+ */
250
531
  while (elm) {
251
- const elmMode = elm.mode || elm.getAttribute('mode');
532
+ const theme = elm.getAttribute('theme');
533
+ if (theme) {
534
+ if (isThemeSupported(theme)) {
535
+ return theme;
536
+ }
537
+ else if (isIonicElement(elm)) {
538
+ printIonWarning(`Invalid theme: "${theme}". Supported themes include: "ios" or "md".`);
539
+ }
540
+ }
541
+ /**
542
+ * If a theme is not detected, then fallback to using the
543
+ * `mode` attribute to determine the style sheets to use.
544
+ */
545
+ const elmMode = elm.getAttribute('mode');
252
546
  if (elmMode) {
253
- if (isAllowedIonicModeValue(elmMode)) {
547
+ if (isModeSupported(elmMode)) {
254
548
  return elmMode;
255
549
  }
256
550
  else if (isIonicElement(elm)) {
257
- printIonWarning('Invalid ionic mode: "' + elmMode + '", expected: "ios" or "md"');
551
+ printIonWarning(`Invalid mode: "${elmMode}". Ionic modes can be only "ios" or "md"`);
258
552
  }
259
553
  }
260
554
  elm = elm.parentElement;
261
555
  }
262
- return defaultMode;
556
+ return defaultTheme;
263
557
  });
558
+ // `IonApp` code
559
+ // ----------------------------------------------
560
+ {
561
+ rIC(async () => {
562
+ const isHybrid = isPlatform(window, 'hybrid');
563
+ if (!config.getBoolean('_testing')) {
564
+ Promise.resolve().then(function () { return require('./index-YEjC0pvJ.js'); }).then((module) => module.startTapClick(config));
565
+ }
566
+ if (config.getBoolean('statusTap', isHybrid)) {
567
+ Promise.resolve().then(function () { return require('./status-tap-DMaRrHIS.js'); }).then((module) => module.startStatusTap());
568
+ }
569
+ if (config.getBoolean('inputShims', needInputShims())) {
570
+ /**
571
+ * needInputShims() ensures that only iOS and Android
572
+ * platforms proceed into this block.
573
+ */
574
+ const platform = isPlatform(window, 'ios') ? 'ios' : 'android';
575
+ Promise.resolve().then(function () { return require('./input-shims-BwdlNkON.js'); }).then((module) => module.startInputShims(config, platform));
576
+ }
577
+ const hardwareBackButtonModule = await Promise.resolve().then(function () { return hardwareBackButton; });
578
+ const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
579
+ if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
580
+ hardwareBackButtonModule.startHardwareBackButton();
581
+ }
582
+ else {
583
+ /**
584
+ * If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
585
+ * then the close watcher will not be used.
586
+ */
587
+ if (shouldUseCloseWatcher()) {
588
+ printIonWarning('[ion-app] - experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
589
+ }
590
+ hardwareBackButtonModule.blockHardwareBackButton();
591
+ }
592
+ if (typeof window !== 'undefined') {
593
+ Promise.resolve().then(function () { return require('./keyboard-nXDIskl9.js'); }).then((module) => module.startKeyboardAssist(window));
594
+ }
595
+ Promise.resolve().then(function () { return require('./focus-visible-BIj-I3-C.js'); }).then((module) => module.getOrInitFocusVisibleUtility());
596
+ });
597
+ }
264
598
  };
265
599
 
266
600
  const globalScripts = initialize;
@@ -3301,13 +3635,17 @@ exports.Build = Build;
3301
3635
  exports.Fragment = Fragment;
3302
3636
  exports.H = H;
3303
3637
  exports.Host = Host;
3638
+ exports.MENU_BACK_BUTTON_PRIORITY = MENU_BACK_BUTTON_PRIORITY;
3639
+ exports.OVERLAY_BACK_BUTTON_PRIORITY = OVERLAY_BACK_BUTTON_PRIORITY;
3304
3640
  exports.bootstrapLazy = bootstrapLazy;
3305
3641
  exports.config = config;
3306
3642
  exports.createEvent = createEvent;
3643
+ exports.doc = doc;
3307
3644
  exports.forceUpdate = forceUpdate;
3308
3645
  exports.getAssetPath = getAssetPath;
3309
3646
  exports.getElement = getElement;
3310
3647
  exports.getIonMode = getIonMode;
3648
+ exports.getIonTheme = getIonTheme;
3311
3649
  exports.getPlatforms = getPlatforms;
3312
3650
  exports.globalScripts = globalScripts;
3313
3651
  exports.h = h;
@@ -3320,4 +3658,6 @@ exports.promiseResolve = promiseResolve;
3320
3658
  exports.readTask = readTask;
3321
3659
  exports.registerInstance = registerInstance;
3322
3660
  exports.setNonce = setNonce;
3661
+ exports.shouldUseCloseWatcher = shouldUseCloseWatcher;
3662
+ exports.win = win$1;
3323
3663
  exports.writeTask = writeTask;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- /* Ionicons v7.2.2, ES Modules */
6
+ /* Ionicons v7.4.0, ES Modules */
7
7
 
8
8
  const arrowBackSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='square' stroke-miterlimit='10' stroke-width='48' d='M244 400L100 256l144-144M120 256h292' class='ionicon-fill-none'/></svg>";
9
9
  const arrowDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M112 268l144 144 144-144M256 392V100' class='ionicon-fill-none'/></svg>";
@@ -13,7 +13,7 @@ const caretUpSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000
13
13
  const checkmarkOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' d='M416 128L192 384l-96-96' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
14
14
  const chevronBack = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M328 112L184 256l144 144' class='ionicon-fill-none'/></svg>";
15
15
  const chevronDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M112 184l144 144 144-144' class='ionicon-fill-none'/></svg>";
16
- const chevronExpand = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M136 208l120-104 120 104M136 304l120 104 120-104' stroke-width='48' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none'/></svg>";
16
+ const chevronExpand = "data:image/svg+xml;utf8,<svg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg' class='ionicon'><path d='M136 208l120-104 120 104M136 304l120 104 120-104' stroke-width='48' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none'/></svg>";
17
17
  const chevronForward = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M184 112l144 144-144 144' class='ionicon-fill-none'/></svg>";
18
18
  const chevronForwardOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M184 112l144 144-144 144' class='ionicon-fill-none'/></svg>";
19
19
  const close = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M289.94 256l95-95A24 24 0 00351 127l-95 95-95-95a24 24 0 00-34 34l95 95-95 95a24 24 0 1034 34l95-95 95 95a24 24 0 0034-34z'/></svg>";