@ionic/core 8.8.0 → 8.8.1-dev.11772789669.186f42ce

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 (1056) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-divider.d.ts +11 -0
  27. package/components/ion-divider.js +4 -0
  28. package/components/ion-fab-button.js +1 -1
  29. package/components/ion-fab-list.js +1 -1
  30. package/components/ion-fab.js +1 -1
  31. package/components/ion-footer.js +1 -1
  32. package/components/ion-grid.js +1 -1
  33. package/components/ion-header.js +1 -1
  34. package/components/ion-icon.js +1 -1
  35. package/components/ion-img.js +1 -1
  36. package/components/ion-infinite-scroll-content.js +1 -1
  37. package/components/ion-infinite-scroll.js +1 -1
  38. package/components/ion-input-otp.js +1 -1
  39. package/components/ion-input-password-toggle.js +1 -1
  40. package/components/ion-input.js +1 -1
  41. package/components/ion-item-divider.js +1 -1
  42. package/components/ion-item-group.js +1 -1
  43. package/components/ion-item-option.js +1 -1
  44. package/components/ion-item-options.js +1 -1
  45. package/components/ion-item-sliding.js +1 -1
  46. package/components/ion-item.js +1 -1
  47. package/components/ion-label.js +1 -1
  48. package/components/ion-list-header.js +1 -1
  49. package/components/ion-list.js +1 -1
  50. package/components/ion-loading.js +1 -1
  51. package/components/ion-menu-button.js +1 -1
  52. package/components/ion-menu-toggle.js +1 -1
  53. package/components/ion-menu.js +1 -1
  54. package/components/ion-modal.js +1 -1
  55. package/components/ion-nav-link.js +1 -1
  56. package/components/ion-nav.js +1 -1
  57. package/components/ion-note.js +1 -1
  58. package/components/ion-picker-column-option.js +1 -1
  59. package/components/ion-picker-column.js +1 -1
  60. package/components/ion-picker-legacy-column.js +1 -1
  61. package/components/ion-picker-legacy.js +1 -1
  62. package/components/ion-picker.js +1 -1
  63. package/components/ion-popover.js +1 -1
  64. package/components/ion-progress-bar.js +1 -1
  65. package/components/ion-radio-group.js +1 -1
  66. package/components/ion-radio.js +1 -1
  67. package/components/ion-range.js +1 -1
  68. package/components/ion-refresher-content.js +1 -1
  69. package/components/ion-refresher.js +1 -1
  70. package/components/ion-reorder-group.js +1 -1
  71. package/components/ion-reorder.js +1 -1
  72. package/components/ion-ripple-effect.js +1 -1
  73. package/components/ion-route-redirect.js +1 -1
  74. package/components/ion-route.js +1 -1
  75. package/components/ion-router-link.js +1 -1
  76. package/components/ion-router-outlet.js +1 -1
  77. package/components/ion-router.js +1 -1
  78. package/components/ion-row.js +1 -1
  79. package/components/ion-searchbar.js +1 -1
  80. package/components/ion-segment-button.js +1 -1
  81. package/components/ion-segment-content.js +1 -1
  82. package/components/ion-segment-view.js +1 -1
  83. package/components/ion-segment.js +1 -1
  84. package/components/ion-select-modal.js +1 -1
  85. package/components/ion-select-option.js +1 -1
  86. package/components/ion-select-popover.js +1 -1
  87. package/components/ion-select.js +1 -1
  88. package/components/ion-skeleton-text.js +1 -1
  89. package/components/ion-spinner.js +1 -1
  90. package/components/ion-split-pane.js +1 -1
  91. package/components/ion-tab-bar.js +1 -1
  92. package/components/ion-tab-button.js +1 -1
  93. package/components/ion-tab.js +1 -1
  94. package/components/ion-tabs.js +1 -1
  95. package/components/ion-text.js +1 -1
  96. package/components/ion-textarea.js +1 -1
  97. package/components/ion-thumbnail.js +1 -1
  98. package/components/ion-title.js +1 -1
  99. package/components/ion-toast.js +1 -1
  100. package/components/ion-toggle.js +1 -1
  101. package/components/ion-toolbar.js +1 -1
  102. package/components/p-0sa2JgYA.js +4 -0
  103. package/components/{p-CO7fmmxt.js → p-0tC5Bj8z.js} +1 -1
  104. package/components/p-3Ni1Z654.js +4 -0
  105. package/{dist/ionic/p-D13Eaw-8.js → components/p-9gxM3tAr.js} +1 -1
  106. package/components/{p-ak_d-z48.js → p-B636tzQ7.js} +1 -1
  107. package/components/p-B9KfSYId.js +4 -0
  108. package/components/p-BCDEEm9n.js +4 -0
  109. package/components/p-BDndEqui.js +4 -0
  110. package/components/p-BDqjX7Z_.js +4 -0
  111. package/components/p-BFCM_1oE.js +4 -0
  112. package/components/p-BGHaEUgp.js +4 -0
  113. package/components/p-BJYj9VAc.js +4 -0
  114. package/components/{p-cyNmxje6.js → p-BLysWQA1.js} +1 -1
  115. package/components/p-BO4aickU.js +4 -0
  116. package/components/p-BU8N7ZrK.js +4 -0
  117. package/components/p-BYSs-jZz.js +4 -0
  118. package/components/p-BZlYhGMX.js +4 -0
  119. package/components/p-B_vA3PG1.js +4 -0
  120. package/components/p-BcbmT6b3.js +4 -0
  121. package/components/p-BeVlsaLA.js +4 -0
  122. package/components/p-BfHB6wX_.js +4 -0
  123. package/components/p-BhfW3d9j.js +4 -0
  124. package/components/p-BjW8SOqw.js +4 -0
  125. package/components/p-BjpP55jo.js +4 -0
  126. package/components/p-BoJ0XqUu.js +4 -0
  127. package/components/p-BqDiJgC_.js +4 -0
  128. package/components/p-BtAlyZ0b.js +4 -0
  129. package/components/p-C00Y_WJv.js +4 -0
  130. package/components/{p-BUbsoBOV.js → p-CHgKFg32.js} +1 -1
  131. package/components/p-CKfNwyAb.js +4 -0
  132. package/components/p-CVBkx7m1.js +4 -0
  133. package/components/p-CXKpZ6rE.js +4 -0
  134. package/components/p-Cb9imMZh.js +4 -0
  135. package/components/p-CeYwuysM.js +4 -0
  136. package/components/p-Cf9-xP7P.js +4 -0
  137. package/components/p-Ch9P0ikq.js +4 -0
  138. package/components/{p-Cwv-vmkN.js → p-CjSx8W-k.js} +1 -1
  139. package/components/p-CzEq6AzT.js +4 -0
  140. package/components/p-D1t981Ih.js +4 -0
  141. package/components/p-D5lMX0xt.js +4 -0
  142. package/components/p-DDw-NYxz.js +4 -0
  143. package/components/p-DThm54If.js +4 -0
  144. package/components/p-DVcs-2q3.js +4 -0
  145. package/components/p-DaJxRxSQ.js +4 -0
  146. package/components/p-DbvVb0N8.js +4 -0
  147. package/components/p-Dhi5xtNS.js +4 -0
  148. package/components/p-DrhTPUzN.js +4 -0
  149. package/components/p-DyB4lpk0.js +4 -0
  150. package/components/p-FOPj3TT0.js +4 -0
  151. package/components/p-FZu7yr5I.js +4 -0
  152. package/components/p-GytrfCp8.js +4 -0
  153. package/components/p-UzXrYTAJ.js +4 -0
  154. package/components/p-XegQjlzJ.js +4 -0
  155. package/components/p-ZeIAjDcZ.js +4 -0
  156. package/components/p-fIOYmaqA.js +4 -0
  157. package/components/p-lIOqnNXn.js +4 -0
  158. package/{dist/ionic/p-BvFYtOdE.js → components/p-oF-CwZ0b.js} +1 -1
  159. package/components/p-sK-FK9CT.js +4 -0
  160. package/components/p-t98_NeNv.js +4 -0
  161. package/components/p-vCpF32Z7.js +4 -0
  162. package/components/p-vXpMhGrs.js +4 -0
  163. package/components/p-wCDzv5Q8.js +4 -0
  164. package/components/{p-YLXPWgVj.js → p-zWP0sUV_.js} +1 -1
  165. package/css/core.css +1 -1
  166. package/css/core.css.map +1 -1
  167. package/css/display.css +1 -1
  168. package/css/display.css.map +1 -1
  169. package/css/flex-utils.css +1 -1
  170. package/css/flex-utils.css.map +1 -1
  171. package/css/float-elements.css.map +1 -1
  172. package/css/global.bundle.css.map +1 -1
  173. package/css/ionic/bundle.ionic.css +1 -0
  174. package/css/ionic/bundle.ionic.css.map +1 -0
  175. package/css/ionic/core.ionic.css +1 -0
  176. package/css/ionic/core.ionic.css.map +1 -0
  177. package/css/ionic/global.bundle.ionic.css +1 -0
  178. package/css/ionic/global.bundle.ionic.css.map +1 -0
  179. package/css/ionic/ionic-swiper.ionic.css +1 -0
  180. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  181. package/css/ionic/link.ionic.css +1 -0
  182. package/css/ionic/link.ionic.css.map +1 -0
  183. package/css/ionic/structure.ionic.css +1 -0
  184. package/css/ionic/structure.ionic.css.map +1 -0
  185. package/css/ionic/typography.ionic.css +1 -0
  186. package/css/ionic/typography.ionic.css.map +1 -0
  187. package/css/ionic/utils.bundle.ionic.css +1 -0
  188. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  189. package/css/ionic-swiper.css +1 -1
  190. package/css/ionic-swiper.css.map +1 -1
  191. package/css/ionic.bundle.css +1 -1
  192. package/css/ionic.bundle.css.map +1 -1
  193. package/css/normalize.css.map +1 -1
  194. package/css/padding.css.map +1 -1
  195. package/css/palettes/dark.always.css.map +1 -1
  196. package/css/palettes/dark.class.css.map +1 -1
  197. package/css/palettes/dark.system.css.map +1 -1
  198. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  199. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  200. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  201. package/css/palettes/high-contrast.always.css.map +1 -1
  202. package/css/palettes/high-contrast.class.css.map +1 -1
  203. package/css/palettes/high-contrast.system.css.map +1 -1
  204. package/css/structure.css.map +1 -1
  205. package/css/text-alignment.css.map +1 -1
  206. package/css/text-transformation.css.map +1 -1
  207. package/css/typography.css.map +1 -1
  208. package/css/utils.bundle.css +1 -1
  209. package/css/utils.bundle.css.map +1 -1
  210. package/dist/cjs/{animation-Dg4yiuR2.js → animation-DknMeJ3x.js} +3 -3
  211. package/dist/cjs/{app-globals-CLI8xCmk.js → app-globals-DtAeky3x.js} +1 -1
  212. package/dist/cjs/{button-active-FscMI17-.js → button-active-JoIWyYri.js} +2 -2
  213. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BnRBm_ys.js} +3 -3
  214. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  215. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  216. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  217. package/dist/cjs/{config-BukYi_pW.js → config-B0utyWaD.js} +1 -1
  218. package/dist/cjs/{data-BYlBjkMU.js → data-DuOuKG7I.js} +6 -6
  219. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  220. package/dist/cjs/{framework-delegate-CRgp8o_p.js → framework-delegate-Dx9FrqAC.js} +4 -2
  221. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-D3Ay9mmg.js} +1 -1
  222. package/dist/cjs/{helpers-CxTYJdbT.js → helpers-DJYxKN5U.js} +57 -4
  223. package/dist/cjs/{index-MbaBbWXk.js → index-BJrpF9T3.js} +2 -2
  224. package/dist/cjs/{index-CFUwM5x_.js → index-Cer2Qy4I.js} +15 -15
  225. package/dist/cjs/{index-CqT-2gKy.js → index-CzcLEdQ5.js} +41 -4
  226. package/dist/cjs/{index-YcSftOMz.js → index-DMJjUhXH.js} +9 -8
  227. package/dist/cjs/{index-C845Ti6K.js → index-D_mPAIqF.js} +4 -4
  228. package/dist/cjs/index.cjs.js +13 -14
  229. package/dist/cjs/{input-shims-Dl5cnc_e.js → input-shims-Dn33gFln.js} +18 -17
  230. package/dist/cjs/{input.utils-DmeJ8dmo.js → input.utils-DnVnhWEF.js} +5 -5
  231. package/dist/cjs/ion-accordion_2.cjs.entry.js +56 -27
  232. package/dist/cjs/ion-action-sheet.cjs.entry.js +25 -22
  233. package/dist/cjs/ion-alert.cjs.entry.js +25 -23
  234. package/dist/cjs/ion-app_8.cjs.entry.js +251 -157
  235. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -13
  236. package/dist/cjs/ion-back-button.cjs.entry.js +30 -21
  237. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -7
  238. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +53 -17
  239. package/dist/cjs/ion-button_2.cjs.entry.js +59 -22
  240. package/dist/cjs/ion-card_5.cjs.entry.js +55 -33
  241. package/dist/cjs/ion-checkbox.cjs.entry.js +34 -16
  242. package/dist/cjs/ion-chip.cjs.entry.js +50 -9
  243. package/dist/cjs/ion-col_3.cjs.entry.js +54 -57
  244. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -9
  245. package/dist/cjs/ion-datetime_3.cjs.entry.js +115 -40
  246. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  247. package/dist/cjs/ion-fab_3.cjs.entry.js +43 -27
  248. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  249. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +91 -16
  250. package/dist/cjs/ion-input-otp.cjs.entry.js +74 -9
  251. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +52 -14
  252. package/dist/cjs/ion-input.cjs.entry.js +123 -33
  253. package/dist/cjs/ion-item-option_3.cjs.entry.js +50 -21
  254. package/dist/cjs/ion-item_8.cjs.entry.js +115 -48
  255. package/dist/cjs/ion-loading.cjs.entry.js +20 -18
  256. package/dist/cjs/ion-menu_3.cjs.entry.js +46 -28
  257. package/dist/cjs/ion-modal.cjs.entry.js +105 -78
  258. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -11
  259. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -8
  260. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  261. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  262. package/dist/cjs/ion-popover.cjs.entry.js +20 -18
  263. package/dist/cjs/ion-progress-bar.cjs.entry.js +27 -9
  264. package/dist/cjs/ion-radio_2.cjs.entry.js +35 -17
  265. package/dist/cjs/ion-range.cjs.entry.js +16 -12
  266. package/dist/cjs/ion-refresher_2.cjs.entry.js +38 -20
  267. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  268. package/dist/cjs/ion-ripple-effect.cjs.entry.js +15 -7
  269. package/dist/cjs/ion-route_4.cjs.entry.js +10 -9
  270. package/dist/cjs/ion-searchbar.cjs.entry.js +136 -23
  271. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  272. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  273. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -16
  274. package/dist/cjs/ion-select-modal.cjs.entry.js +17 -11
  275. package/dist/cjs/ion-select_3.cjs.entry.js +132 -41
  276. package/dist/cjs/ion-spinner.cjs.entry.js +30 -8
  277. package/dist/cjs/ion-split-pane.cjs.entry.js +12 -9
  278. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +77 -23
  279. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  280. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  281. package/dist/cjs/ion-textarea.cjs.entry.js +137 -23
  282. package/dist/cjs/ion-toast.cjs.entry.js +68 -45
  283. package/dist/cjs/ion-toggle.cjs.entry.js +81 -24
  284. package/dist/cjs/ionic-global-CSEbHD_F.js +519 -0
  285. package/dist/cjs/ionic.cjs.js +4 -4
  286. package/dist/cjs/{ios.transition-trBiC95R.js → ios.transition-UCjoxA3D.js} +7 -5
  287. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Bhav6x-R.js} +4 -3
  288. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Dsczf-iT.js} +1 -1
  289. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-tqGDP9SU.js} +11 -9
  290. package/dist/cjs/list-a-7GSA6K.js +8 -0
  291. package/dist/cjs/loader.cjs.js +4 -4
  292. package/dist/cjs/{md.transition-CUQECuvD.js → md.transition-CNwlchQn.js} +6 -5
  293. package/dist/cjs/{notch-controller-sD-lTpdc.js → notch-controller-CgtkBzy0.js} +4 -4
  294. package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-Dhoy6v_5.js} +102 -12
  295. package/dist/cjs/{status-tap-CCJk5VgT.js → status-tap-CTY2dMsZ.js} +4 -3
  296. package/dist/cjs/{swipe-back-BGhTQ1CU.js → swipe-back-jJFi5KCB.js} +3 -2
  297. package/dist/cjs/{theme-CeDs6Hcv.js → theme-IlOsGAz7.js} +25 -1
  298. package/dist/cjs/validity-QmuwEptc.js +51 -0
  299. package/dist/cjs/x-BTF99yFH.js +8 -0
  300. package/dist/collection/collection-manifest.json +1 -0
  301. package/dist/collection/components/accordion/accordion.ionic.css +196 -0
  302. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  303. package/dist/collection/components/accordion/accordion.js +36 -26
  304. package/dist/collection/components/accordion/accordion.md.css +67 -59
  305. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  306. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  307. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  308. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  309. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  310. package/dist/collection/components/action-sheet/action-sheet.js +17 -13
  311. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  312. package/dist/collection/components/alert/alert.ios.css +19 -1
  313. package/dist/collection/components/alert/alert.js +16 -13
  314. package/dist/collection/components/alert/alert.md.css +19 -1
  315. package/dist/collection/components/app/app.js +15 -83
  316. package/dist/collection/components/avatar/avatar.ionic.css +391 -0
  317. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  318. package/dist/collection/components/avatar/avatar.js +120 -4
  319. package/dist/collection/components/avatar/avatar.md.css +51 -0
  320. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  321. package/dist/collection/components/back-button/back-button.js +27 -19
  322. package/dist/collection/components/back-button/back-button.md.css +60 -48
  323. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  324. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  325. package/dist/collection/components/backdrop/backdrop.js +12 -6
  326. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  327. package/dist/collection/components/badge/badge.ionic.css +275 -0
  328. package/dist/collection/components/badge/badge.ios.css +139 -12
  329. package/dist/collection/components/badge/badge.js +145 -9
  330. package/dist/collection/components/badge/badge.md.css +123 -12
  331. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  332. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  333. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  334. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  335. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  336. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  337. package/dist/collection/components/button/button.ionic.css +646 -0
  338. package/dist/collection/components/button/button.ios.css +154 -46
  339. package/dist/collection/components/button/button.js +63 -27
  340. package/dist/collection/components/button/button.md.css +150 -50
  341. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  342. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  343. package/dist/collection/components/buttons/buttons.js +15 -9
  344. package/dist/collection/components/buttons/buttons.md.css +55 -3
  345. package/dist/collection/components/card/card.ionic.css +144 -0
  346. package/dist/collection/components/card/card.ios.css +65 -14
  347. package/dist/collection/components/card/card.js +41 -10
  348. package/dist/collection/components/card/card.md.css +65 -14
  349. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  350. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  351. package/dist/collection/components/card-content/card-content.js +12 -10
  352. package/dist/collection/components/card-content/card-content.md.css +20 -35
  353. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  354. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  355. package/dist/collection/components/card-header/card-header.js +13 -10
  356. package/dist/collection/components/card-header/card-header.md.css +27 -15
  357. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  358. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  359. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  360. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  361. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  362. package/dist/collection/components/card-title/card-title.js +11 -8
  363. package/dist/collection/components/card-title/card-title.md.css +73 -0
  364. package/dist/collection/components/checkbox/checkbox.ionic.css +539 -0
  365. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  366. package/dist/collection/components/checkbox/checkbox.js +70 -14
  367. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  368. package/dist/collection/components/chip/chip.ionic.css +217 -0
  369. package/dist/collection/components/chip/chip.ios.css +67 -14
  370. package/dist/collection/components/chip/chip.js +108 -8
  371. package/dist/collection/components/chip/chip.md.css +67 -14
  372. package/dist/collection/components/col/col.css +192 -4
  373. package/dist/collection/components/col/col.js +210 -61
  374. package/dist/collection/components/content/content.css +8 -2
  375. package/dist/collection/components/content/content.js +16 -11
  376. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  377. package/dist/collection/components/datetime/datetime.ios.css +302 -106
  378. package/dist/collection/components/datetime/datetime.js +98 -20
  379. package/dist/collection/components/datetime/datetime.md.css +293 -96
  380. package/dist/collection/components/datetime/utils/data.js +5 -5
  381. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  382. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  383. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  384. package/dist/collection/components/divider/divider.ionic.css +148 -0
  385. package/dist/collection/components/divider/divider.ios.css +87 -0
  386. package/dist/collection/components/divider/divider.js +94 -0
  387. package/dist/collection/components/divider/divider.md.css +87 -0
  388. package/dist/collection/components/fab/fab.css +25 -1
  389. package/dist/collection/components/fab/fab.js +9 -5
  390. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  391. package/dist/collection/components/fab-button/fab-button.js +36 -21
  392. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  393. package/dist/collection/components/fab-list/fab-list.css +12 -0
  394. package/dist/collection/components/fab-list/fab-list.js +9 -5
  395. package/dist/collection/components/footer/footer.ios.css +14 -2
  396. package/dist/collection/components/footer/footer.js +21 -16
  397. package/dist/collection/components/footer/footer.md.css +12 -0
  398. package/dist/collection/components/grid/grid.css +12 -0
  399. package/dist/collection/components/grid/grid.js +9 -5
  400. package/dist/collection/components/header/header.ionic.css +97 -0
  401. package/dist/collection/components/header/header.ios.css +25 -10
  402. package/dist/collection/components/header/header.js +50 -19
  403. package/dist/collection/components/header/header.md.css +23 -8
  404. package/dist/collection/components/header/header.utils.js +5 -5
  405. package/dist/collection/components/img/img.js +8 -2
  406. package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
  407. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  408. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  409. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  410. package/dist/collection/components/input/input.ionic.css +889 -0
  411. package/dist/collection/components/input/input.ios.css +223 -135
  412. package/dist/collection/components/input/input.js +148 -37
  413. package/dist/collection/components/input/input.md.css +193 -207
  414. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  415. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  416. package/dist/collection/components/input-otp/input-otp.js +73 -6
  417. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  418. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  419. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  420. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  421. package/dist/collection/components/item/item.ionic.css +508 -0
  422. package/dist/collection/components/item/item.ios.css +109 -69
  423. package/dist/collection/components/item/item.js +51 -20
  424. package/dist/collection/components/item/item.md.css +120 -68
  425. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  426. package/dist/collection/components/item-divider/item-divider.js +11 -8
  427. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  428. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  429. package/dist/collection/components/item-group/item-group.js +13 -7
  430. package/dist/collection/components/item-group/item-group.md.css +12 -0
  431. package/dist/collection/components/item-option/item-option.ionic.css +278 -0
  432. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  433. package/dist/collection/components/item-option/item-option.js +73 -9
  434. package/dist/collection/components/item-option/item-option.md.css +136 -29
  435. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  436. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  437. package/dist/collection/components/item-options/item-options.js +13 -7
  438. package/dist/collection/components/item-options/item-options.md.css +77 -34
  439. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  440. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  441. package/dist/collection/components/label/label.ios.css +18 -0
  442. package/dist/collection/components/label/label.js +11 -8
  443. package/dist/collection/components/label/label.md.css +18 -0
  444. package/dist/collection/components/list/list.ionic.css +212 -0
  445. package/dist/collection/components/list/list.ios.css +54 -14
  446. package/dist/collection/components/list/list.js +48 -9
  447. package/dist/collection/components/list/list.md.css +56 -16
  448. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  449. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  450. package/dist/collection/components/list-header/list-header.js +11 -8
  451. package/dist/collection/components/list-header/list-header.md.css +82 -38
  452. package/dist/collection/components/loading/loading.ios.css +13 -1
  453. package/dist/collection/components/loading/loading.js +14 -11
  454. package/dist/collection/components/loading/loading.md.css +13 -1
  455. package/dist/collection/components/menu/menu.ios.css +15 -3
  456. package/dist/collection/components/menu/menu.js +12 -7
  457. package/dist/collection/components/menu/menu.md.css +15 -3
  458. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  459. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  460. package/dist/collection/components/menu-button/menu-button.js +26 -10
  461. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  462. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  463. package/dist/collection/components/modal/animations/sheet.js +8 -2
  464. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  465. package/dist/collection/components/modal/modal.ionic.css +247 -0
  466. package/dist/collection/components/modal/modal.ios.css +178 -70
  467. package/dist/collection/components/modal/modal.js +48 -11
  468. package/dist/collection/components/modal/modal.md.css +178 -70
  469. package/dist/collection/components/nav/nav.css +7 -1
  470. package/dist/collection/components/nav/nav.js +11 -5
  471. package/dist/collection/components/nav-link/nav-link.js +5 -1
  472. package/dist/collection/components/note/note.ios.css +12 -0
  473. package/dist/collection/components/note/note.js +11 -8
  474. package/dist/collection/components/note/note.md.css +12 -0
  475. package/dist/collection/components/picker/picker.ios.css +15 -3
  476. package/dist/collection/components/picker/picker.js +8 -5
  477. package/dist/collection/components/picker/picker.md.css +15 -3
  478. package/dist/collection/components/picker-column/picker-column.css +9 -2
  479. package/dist/collection/components/picker-column/picker-column.js +8 -7
  480. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  481. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  482. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  483. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  484. package/dist/collection/components/picker-legacy/picker.js +7 -6
  485. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  486. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  487. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  488. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  489. package/dist/collection/components/popover/popover.ios.css +13 -1
  490. package/dist/collection/components/popover/popover.js +17 -14
  491. package/dist/collection/components/popover/popover.md.css +13 -1
  492. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  493. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  494. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  495. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  496. package/dist/collection/components/radio/radio.ionic.css +422 -0
  497. package/dist/collection/components/radio/radio.ios.css +134 -91
  498. package/dist/collection/components/radio/radio.js +14 -9
  499. package/dist/collection/components/radio/radio.md.css +134 -91
  500. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  501. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  502. package/dist/collection/components/radio-group/radio-group.js +48 -7
  503. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  504. package/dist/collection/components/range/range.ionic.css +563 -0
  505. package/dist/collection/components/range/range.ios.css +128 -85
  506. package/dist/collection/components/range/range.js +12 -9
  507. package/dist/collection/components/range/range.md.css +128 -85
  508. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  509. package/dist/collection/components/refresher/refresher.js +11 -8
  510. package/dist/collection/components/refresher/refresher.md.css +15 -2
  511. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  512. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  513. package/dist/collection/components/reorder/reorder.js +33 -6
  514. package/dist/collection/components/reorder/reorder.md.css +6 -0
  515. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  516. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  517. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  518. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  519. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  520. package/dist/collection/components/route/route.js +4 -0
  521. package/dist/collection/components/router/router.js +4 -0
  522. package/dist/collection/components/router-link/router-link.css +8 -2
  523. package/dist/collection/components/router-link/router-link.js +9 -5
  524. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  525. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  526. package/dist/collection/components/row/row.css +16 -0
  527. package/dist/collection/components/row/row.js +9 -2
  528. package/dist/collection/components/searchbar/searchbar.ionic.css +626 -0
  529. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  530. package/dist/collection/components/searchbar/searchbar.js +180 -33
  531. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  532. package/dist/collection/components/segment/segment.ionic.css +115 -0
  533. package/dist/collection/components/segment/segment.ios.css +45 -2
  534. package/dist/collection/components/segment/segment.js +11 -8
  535. package/dist/collection/components/segment/segment.md.css +45 -2
  536. package/dist/collection/components/segment-button/segment-button.ionic.css +353 -0
  537. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  538. package/dist/collection/components/segment-button/segment-button.js +11 -8
  539. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  540. package/dist/collection/components/segment-content/segment-content.js +1 -1
  541. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  542. package/dist/collection/components/segment-view/segment-view.js +6 -4
  543. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  544. package/dist/collection/components/select/select.ionic.css +777 -0
  545. package/dist/collection/components/select/select.ios.css +315 -176
  546. package/dist/collection/components/select/select.js +156 -53
  547. package/dist/collection/components/select/select.md.css +331 -178
  548. package/dist/collection/components/select-modal/select-modal.ionic.css +130 -0
  549. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  550. package/dist/collection/components/select-modal/select-modal.js +11 -4
  551. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  552. package/dist/collection/components/select-option/select-option.js +9 -2
  553. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  554. package/dist/collection/components/select-popover/select-popover.js +12 -4
  555. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  556. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  557. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  558. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +77 -10
  559. package/dist/collection/components/spinner/spinner.js +47 -6
  560. package/dist/collection/components/spinner/spinner.native.css +198 -0
  561. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  562. package/dist/collection/components/split-pane/split-pane.js +14 -8
  563. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  564. package/dist/collection/components/tab/tab.js +6 -2
  565. package/dist/collection/components/tab-bar/tab-bar.ionic.css +201 -0
  566. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  567. package/dist/collection/components/tab-bar/tab-bar.js +78 -11
  568. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  569. package/dist/collection/components/tab-button/tab-button.ionic.css +348 -0
  570. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  571. package/dist/collection/components/tab-button/tab-button.js +54 -9
  572. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  573. package/dist/collection/components/tabs/tabs.css +7 -1
  574. package/dist/collection/components/tabs/tabs.js +4 -1
  575. package/dist/collection/components/text/text.css +6 -0
  576. package/dist/collection/components/text/text.js +7 -6
  577. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  578. package/dist/collection/components/textarea/textarea.ios.css +298 -158
  579. package/dist/collection/components/textarea/textarea.js +162 -24
  580. package/dist/collection/components/textarea/textarea.md.css +312 -159
  581. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  582. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  583. package/dist/collection/components/title/title.ionic.css +127 -0
  584. package/dist/collection/components/title/title.ios.css +32 -4
  585. package/dist/collection/components/title/title.js +13 -7
  586. package/dist/collection/components/title/title.md.css +32 -4
  587. package/dist/collection/components/toast/animations/utils.js +1 -1
  588. package/dist/collection/components/toast/toast.ionic.css +394 -0
  589. package/dist/collection/components/toast/toast.ios.css +84 -45
  590. package/dist/collection/components/toast/toast.js +80 -15
  591. package/dist/collection/components/toast/toast.md.css +84 -45
  592. package/dist/collection/components/toggle/toggle.ionic.css +508 -0
  593. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  594. package/dist/collection/components/toggle/toggle.js +73 -18
  595. package/dist/collection/components/toggle/toggle.md.css +244 -131
  596. package/dist/collection/components/toolbar/test/image.svg +1 -0
  597. package/dist/collection/components/toolbar/toolbar.ionic.css +241 -0
  598. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  599. package/dist/collection/components/toolbar/toolbar.js +157 -13
  600. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  601. package/dist/collection/global/ionic-global.js +241 -13
  602. package/dist/collection/utils/focus-trap.js +13 -2
  603. package/dist/collection/utils/focus-visible.js +22 -0
  604. package/dist/collection/utils/forms/validity.js +31 -0
  605. package/dist/collection/utils/framework-delegate.js +3 -1
  606. package/dist/collection/utils/hardware-back-button.js +15 -0
  607. package/dist/collection/utils/helpers.js +57 -3
  608. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  609. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  610. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  611. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  612. package/dist/collection/utils/overlays.js +82 -1
  613. package/dist/collection/utils/test/playwright/generator.js +48 -23
  614. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  615. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  616. package/dist/collection/utils/theme.js +25 -1
  617. package/dist/collection/utils/transition/ios.transition.js +1 -0
  618. package/dist/docs.json +8287 -286
  619. package/dist/esm/{animation-CnGMT4ji.js → animation-Cqe2x-Pt.js} +2 -2
  620. package/dist/esm/{app-globals-DhZjtldk.js → app-globals-Dk1rB3aE.js} +1 -1
  621. package/dist/esm/{button-active-BBx21brx.js → button-active-g6ZnZzDZ.js} +2 -2
  622. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-C4lYa1nV.js} +1 -1
  623. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  624. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  625. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  626. package/dist/esm/{config-TO1rZH52.js → config-BvDxfLa-.js} +1 -1
  627. package/dist/esm/{data-B9iGR5YO.js → data-BNKYavC3.js} +6 -6
  628. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  629. package/dist/esm/{framework-delegate-CyxE1S_P.js → framework-delegate-CjVwn_KZ.js} +4 -2
  630. package/dist/esm/{haptic-DzAMWJuk.js → haptic-_88k1V5U.js} +1 -1
  631. package/dist/esm/{helpers-Tl8jw6S2.js → helpers-Do7zwvM1.js} +58 -5
  632. package/dist/esm/{index-hW6eNZ3o.js → index-BmkLokUL.js} +2 -2
  633. package/dist/esm/{index-BtUdxPjv.js → index-C5t9-ciC.js} +4 -3
  634. package/dist/esm/{index-B-hkiOUh.js → index-CGthURny.js} +4 -4
  635. package/dist/esm/{index-DV3sJJW8.js → index-COG0_eom.js} +1 -1
  636. package/dist/esm/{index-IGIE5vDm.js → index-Omi_TcwW.js} +41 -4
  637. package/dist/esm/{index-B2KwgBLx.js → index-hpH08p5s.js} +11 -11
  638. package/dist/esm/index.js +13 -14
  639. package/dist/esm/{input-shims-AaDhOpKN.js → input-shims-vDjCsx95.js} +7 -6
  640. package/dist/esm/{input.utils-Bxa_DQ7-.js → input.utils-B9Q5xHp6.js} +3 -3
  641. package/dist/esm/ion-accordion_2.entry.js +57 -28
  642. package/dist/esm/ion-action-sheet.entry.js +25 -22
  643. package/dist/esm/ion-alert.entry.js +25 -23
  644. package/dist/esm/ion-app_8.entry.js +251 -157
  645. package/dist/esm/ion-avatar_3.entry.js +125 -13
  646. package/dist/esm/ion-back-button.entry.js +31 -22
  647. package/dist/esm/ion-backdrop.entry.js +10 -7
  648. package/dist/esm/ion-breadcrumb_2.entry.js +54 -18
  649. package/dist/esm/ion-button_2.entry.js +59 -22
  650. package/dist/esm/ion-card_5.entry.js +55 -33
  651. package/dist/esm/ion-checkbox.entry.js +34 -16
  652. package/dist/esm/ion-chip.entry.js +50 -9
  653. package/dist/esm/ion-col_3.entry.js +54 -57
  654. package/dist/esm/ion-datetime-button.entry.js +13 -9
  655. package/dist/esm/ion-datetime_3.entry.js +116 -41
  656. package/dist/esm/ion-divider.entry.js +49 -0
  657. package/dist/esm/ion-fab_3.entry.js +44 -28
  658. package/dist/esm/ion-img.entry.js +8 -4
  659. package/dist/esm/ion-infinite-scroll_2.entry.js +91 -16
  660. package/dist/esm/ion-input-otp.entry.js +74 -9
  661. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  662. package/dist/esm/ion-input.entry.js +124 -34
  663. package/dist/esm/ion-item-option_3.entry.js +50 -21
  664. package/dist/esm/ion-item_8.entry.js +116 -49
  665. package/dist/esm/ion-loading.entry.js +20 -18
  666. package/dist/esm/ion-menu_3.entry.js +47 -29
  667. package/dist/esm/ion-modal.entry.js +58 -31
  668. package/dist/esm/ion-nav_2.entry.js +14 -11
  669. package/dist/esm/ion-picker-column-option.entry.js +12 -8
  670. package/dist/esm/ion-picker-column.entry.js +13 -13
  671. package/dist/esm/ion-picker.entry.js +10 -6
  672. package/dist/esm/ion-popover.entry.js +20 -18
  673. package/dist/esm/ion-progress-bar.entry.js +27 -9
  674. package/dist/esm/ion-radio_2.entry.js +35 -17
  675. package/dist/esm/ion-range.entry.js +16 -12
  676. package/dist/esm/ion-refresher_2.entry.js +39 -21
  677. package/dist/esm/ion-reorder_2.entry.js +38 -14
  678. package/dist/esm/ion-ripple-effect.entry.js +15 -7
  679. package/dist/esm/ion-route_4.entry.js +10 -9
  680. package/dist/esm/ion-searchbar.entry.js +137 -24
  681. package/dist/esm/ion-segment-content.entry.js +2 -2
  682. package/dist/esm/ion-segment-view.entry.js +6 -3
  683. package/dist/esm/ion-segment_2.entry.js +23 -16
  684. package/dist/esm/ion-select-modal.entry.js +17 -11
  685. package/dist/esm/ion-select_3.entry.js +133 -42
  686. package/dist/esm/ion-spinner.entry.js +30 -8
  687. package/dist/esm/ion-split-pane.entry.js +12 -9
  688. package/dist/esm/ion-tab-bar_2.entry.js +77 -23
  689. package/dist/esm/ion-tab_2.entry.js +8 -7
  690. package/dist/esm/ion-text.entry.js +7 -7
  691. package/dist/esm/ion-textarea.entry.js +137 -23
  692. package/dist/esm/ion-toast.entry.js +43 -20
  693. package/dist/esm/ion-toggle.entry.js +82 -25
  694. package/dist/esm/ionic-global-CAZb-5i-.js +508 -0
  695. package/dist/esm/ionic.js +5 -5
  696. package/dist/esm/{ios.transition--aMF-pDH.js → ios.transition-CzSncKQg.js} +7 -5
  697. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cpw6xVLJ.js} +1 -1
  698. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DJpS2IGK.js} +4 -3
  699. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-CAc33ylR.js} +5 -3
  700. package/dist/esm/list-Dhi5xtNS.js +6 -0
  701. package/dist/esm/loader.js +5 -5
  702. package/dist/esm/{md.transition-BEVbfm8j.js → md.transition-DIsWqYBZ.js} +6 -5
  703. package/dist/esm/{notch-controller-DAcvKU57.js → notch-controller-DiBq57w8.js} +2 -2
  704. package/dist/esm/{overlays-F8GHPo-e.js → overlays-CvFHfO3y.js} +99 -9
  705. package/dist/esm/{status-tap-BfJqFSLF.js → status-tap-fYFdZg6z.js} +4 -3
  706. package/dist/esm/{swipe-back-BZBFwTQV.js → swipe-back-BzGqTrrq.js} +3 -2
  707. package/dist/esm/{theme-DiVJyqlX.js → theme-DaJxRxSQ.js} +25 -1
  708. package/dist/esm/validity-BjW8SOqw.js +48 -0
  709. package/dist/esm/x-BDqjX7Z_.js +6 -0
  710. package/dist/html.html-data.json +2444 -111
  711. package/dist/ionic/index.esm.js +1 -1
  712. package/dist/ionic/ionic.esm.js +1 -1
  713. package/dist/ionic/p-01f414fd.entry.js +4 -0
  714. package/dist/ionic/p-06604d4c.entry.js +4 -0
  715. package/dist/ionic/p-0ffb149b.entry.js +4 -0
  716. package/dist/ionic/p-11nqcMM3.js +4 -0
  717. package/dist/ionic/p-2aa44c65.entry.js +4 -0
  718. package/dist/ionic/p-2effd05d.entry.js +4 -0
  719. package/dist/ionic/p-304f8b0f.entry.js +4 -0
  720. package/dist/ionic/p-3750f7e9.entry.js +4 -0
  721. package/dist/ionic/p-3b5a4899.entry.js +4 -0
  722. package/dist/ionic/p-4091ad21.entry.js +4 -0
  723. package/dist/ionic/p-4371e3c7.entry.js +4 -0
  724. package/dist/ionic/p-45825c2c.entry.js +4 -0
  725. package/dist/ionic/p-4b0f5ffd.entry.js +4 -0
  726. package/dist/ionic/p-4d2da966.entry.js +4 -0
  727. package/dist/ionic/p-4e46439d.entry.js +4 -0
  728. package/dist/ionic/p-4e837210.entry.js +4 -0
  729. package/dist/ionic/p-50d90690.entry.js +4 -0
  730. package/dist/ionic/p-6076f6f2.entry.js +4 -0
  731. package/dist/ionic/p-64341e32.entry.js +4 -0
  732. package/dist/ionic/p-645f0150.entry.js +4 -0
  733. package/dist/ionic/p-6767ac7d.entry.js +4 -0
  734. package/dist/ionic/p-68c21b2a.entry.js +4 -0
  735. package/dist/ionic/p-6973550d.entry.js +4 -0
  736. package/dist/ionic/p-6be2b2d3.entry.js +4 -0
  737. package/dist/ionic/p-6bffc700.entry.js +4 -0
  738. package/dist/ionic/p-6c8c37c2.entry.js +4 -0
  739. package/dist/ionic/p-7194f6fa.entry.js +4 -0
  740. package/dist/ionic/p-76d0e7ef.entry.js +4 -0
  741. package/dist/ionic/p-77326934.entry.js +4 -0
  742. package/dist/ionic/p-7d267dc6.entry.js +4 -0
  743. package/dist/ionic/p-8ddbe854.entry.js +4 -0
  744. package/dist/ionic/p-8e42d109.entry.js +4 -0
  745. package/dist/ionic/p-8fc3b5de.entry.js +4 -0
  746. package/dist/ionic/p-8uDL7fql.js +4 -0
  747. package/dist/ionic/p-98c34fd7.entry.js +4 -0
  748. package/dist/ionic/p-9a8e7fed.entry.js +4 -0
  749. package/dist/ionic/p-9b9b1450.entry.js +4 -0
  750. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  751. package/dist/ionic/p-BYSs-jZz.js +4 -0
  752. package/dist/ionic/p-BYtS2rae.js +4 -0
  753. package/dist/ionic/p-BjW8SOqw.js +4 -0
  754. package/{components/p-9VcRUwdB.js → dist/ionic/p-BsfuYVMP.js} +1 -1
  755. package/dist/ionic/p-Bx0bt2Ar.js +4 -0
  756. package/dist/ionic/p-C2mpVKI1.js +4 -0
  757. package/dist/ionic/p-C5zxLmJ_.js +4 -0
  758. package/{components/p-BS1TtEiJ.js → dist/ionic/p-C8IHbcuP.js} +1 -1
  759. package/dist/ionic/p-CBV-BGvD.js +4 -0
  760. package/dist/ionic/p-CDn0uNJA.js +4 -0
  761. package/dist/ionic/p-CHE1xWbg.js +4 -0
  762. package/dist/ionic/p-CIk5QtPm.js +4 -0
  763. package/dist/ionic/{p-DV3sJJW8.js → p-COG0_eom.js} +1 -1
  764. package/dist/ionic/p-CQKe4n56.js +4 -0
  765. package/dist/ionic/p-CVp2D--1.js +4 -0
  766. package/dist/ionic/p-CXqdKf1K.js +4 -0
  767. package/dist/ionic/p-Cb-0O4h8.js +4 -0
  768. package/dist/ionic/{p-CKvCXMs9.js → p-CbkICFBN.js} +1 -1
  769. package/dist/ionic/p-D1t981Ih.js +4 -0
  770. package/dist/ionic/{p-B8xlpH8p.js → p-DKWXAwlR.js} +1 -1
  771. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  772. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  773. package/dist/ionic/p-DoyDJ2X5.js +4 -0
  774. package/dist/ionic/p-FvDKM4Ax.js +4 -0
  775. package/dist/ionic/p-Omi_TcwW.js +5 -0
  776. package/{components/p-D13Eaw-8.js → dist/ionic/p-SJmaFQ0H.js} +1 -1
  777. package/dist/ionic/p-SOASChNu.js +4 -0
  778. package/dist/ionic/{p-DjriolRs.js → p-ZqkJDyhe.js} +1 -1
  779. package/dist/ionic/p-a2ec75bd.entry.js +4 -0
  780. package/dist/ionic/p-a53a3ecc.entry.js +4 -0
  781. package/dist/ionic/p-ab9ac9ec.entry.js +4 -0
  782. package/dist/ionic/p-b00bbeb7.entry.js +4 -0
  783. package/dist/ionic/p-bfaeed73.entry.js +4 -0
  784. package/dist/ionic/p-c136fa43.entry.js +4 -0
  785. package/dist/ionic/p-c3a0ac16.entry.js +4 -0
  786. package/dist/ionic/p-c68eeb96.entry.js +4 -0
  787. package/dist/ionic/p-c7eb80bc.entry.js +4 -0
  788. package/dist/ionic/p-d2c90234.entry.js +4 -0
  789. package/dist/ionic/p-dc5f29f1.entry.js +4 -0
  790. package/dist/ionic/p-dfceef95.entry.js +4 -0
  791. package/dist/ionic/p-e9f0f775.entry.js +4 -0
  792. package/dist/ionic/p-edb0b0c8.entry.js +4 -0
  793. package/dist/ionic/p-ef0c281a.entry.js +4 -0
  794. package/dist/ionic/p-eff62903.entry.js +4 -0
  795. package/dist/ionic/p-f278f795.entry.js +4 -0
  796. package/dist/ionic/p-f8f90040.entry.js +4 -0
  797. package/dist/ionic/p-fIOYmaqA.js +4 -0
  798. package/dist/ionic/p-qETiT38a.js +4 -0
  799. package/dist/ionic/{p-gbVXD275.js → p-qYp06FUk.js} +1 -1
  800. package/dist/ionic/p-vXpMhGrs.js +4 -0
  801. package/dist/types/components/accordion/accordion.d.ts +5 -3
  802. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  803. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  804. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  805. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  806. package/dist/types/components/alert/alert.d.ts +3 -2
  807. package/dist/types/components/app/app.d.ts +4 -5
  808. package/dist/types/components/avatar/avatar.d.ts +32 -0
  809. package/dist/types/components/back-button/back-button.d.ts +2 -1
  810. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  811. package/dist/types/components/badge/badge.d.ts +34 -1
  812. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  813. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  814. package/dist/types/components/button/button.d.ts +23 -8
  815. package/dist/types/components/buttons/buttons.d.ts +5 -1
  816. package/dist/types/components/card/card.d.ts +8 -1
  817. package/dist/types/components/card-content/card-content.d.ts +2 -1
  818. package/dist/types/components/card-header/card-header.d.ts +3 -2
  819. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  820. package/dist/types/components/card-title/card-title.d.ts +2 -1
  821. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  822. package/dist/types/components/chip/chip.d.ts +26 -1
  823. package/dist/types/components/col/col.d.ts +52 -5
  824. package/dist/types/components/content/content.d.ts +3 -0
  825. package/dist/types/components/datetime/datetime.d.ts +26 -1
  826. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  827. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  828. package/dist/types/components/divider/divider.d.ts +20 -0
  829. package/dist/types/components/fab/fab.d.ts +4 -0
  830. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  831. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  832. package/dist/types/components/footer/footer.d.ts +4 -3
  833. package/dist/types/components/grid/grid.d.ts +4 -0
  834. package/dist/types/components/header/header.d.ts +9 -3
  835. package/dist/types/components/header/header.utils.d.ts +3 -3
  836. package/dist/types/components/img/img.d.ts +3 -0
  837. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  838. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  839. package/dist/types/components/input/input.d.ts +31 -5
  840. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  841. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  842. package/dist/types/components/item/item.d.ts +11 -4
  843. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  844. package/dist/types/components/item-group/item-group.d.ts +4 -0
  845. package/dist/types/components/item-option/item-option.d.ts +18 -1
  846. package/dist/types/components/item-options/item-options.d.ts +4 -0
  847. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  848. package/dist/types/components/label/label.d.ts +2 -1
  849. package/dist/types/components/list/list.d.ts +15 -1
  850. package/dist/types/components/list-header/list-header.d.ts +2 -1
  851. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  852. package/dist/types/components/loading/loading.d.ts +3 -2
  853. package/dist/types/components/menu/menu.d.ts +3 -0
  854. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  855. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  856. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  857. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  858. package/dist/types/components/modal/modal.d.ts +11 -1
  859. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  860. package/dist/types/components/nav/nav.d.ts +5 -1
  861. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  862. package/dist/types/components/note/note.d.ts +2 -1
  863. package/dist/types/components/picker/picker.d.ts +2 -1
  864. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  865. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  866. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  867. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  868. package/dist/types/components/popover/popover.d.ts +6 -5
  869. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  870. package/dist/types/components/radio/radio.d.ts +2 -1
  871. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  872. package/dist/types/components/range/range.d.ts +2 -1
  873. package/dist/types/components/refresher/refresher.d.ts +2 -1
  874. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  875. package/dist/types/components/reorder/reorder.d.ts +9 -0
  876. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  877. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  878. package/dist/types/components/route/route.d.ts +4 -0
  879. package/dist/types/components/router/router.d.ts +4 -0
  880. package/dist/types/components/router-link/router-link.d.ts +4 -0
  881. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  882. package/dist/types/components/row/row.d.ts +4 -0
  883. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  884. package/dist/types/components/segment/segment.d.ts +2 -1
  885. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  886. package/dist/types/components/select/select.d.ts +41 -13
  887. package/dist/types/components/select-modal/select-modal.d.ts +1 -0
  888. package/dist/types/components/select-option/select-option.d.ts +4 -0
  889. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  890. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  891. package/dist/types/components/spinner/spinner.d.ts +15 -0
  892. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  893. package/dist/types/components/tab/tab.d.ts +4 -0
  894. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  895. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  896. package/dist/types/components/tabs/tabs.d.ts +3 -0
  897. package/dist/types/components/text/text.d.ts +2 -1
  898. package/dist/types/components/textarea/textarea.d.ts +53 -4
  899. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  900. package/dist/types/components/title/title.d.ts +4 -0
  901. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  902. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  903. package/dist/types/components/toast/toast.d.ts +24 -5
  904. package/dist/types/components/toggle/toggle.d.ts +15 -1
  905. package/dist/types/components/toolbar/toolbar.d.ts +20 -3
  906. package/dist/types/components.d.ts +1676 -206
  907. package/dist/types/global/ionic-global.d.ts +28 -2
  908. package/dist/types/interface.d.ts +3 -0
  909. package/dist/types/utils/config.d.ts +106 -2
  910. package/dist/types/utils/focus-trap.d.ts +1 -1
  911. package/dist/types/utils/focus-visible.d.ts +13 -0
  912. package/dist/types/utils/forms/validity.d.ts +7 -0
  913. package/dist/types/utils/helpers.d.ts +11 -0
  914. package/dist/types/utils/overlays-interface.d.ts +31 -1
  915. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  916. package/dist/types/utils/theme.d.ts +9 -0
  917. package/hydrate/index.js +3245 -995
  918. package/hydrate/index.mjs +3245 -995
  919. package/package.json +8 -4
  920. package/components/p-1KVKSLu5.js +0 -4
  921. package/components/p-ApmKVjaE.js +0 -4
  922. package/components/p-B6FQ0cKR.js +0 -4
  923. package/components/p-B6HaBl3o.js +0 -4
  924. package/components/p-B8b1Ukl9.js +0 -4
  925. package/components/p-BFxT89Wl.js +0 -4
  926. package/components/p-BJoMtgfR.js +0 -4
  927. package/components/p-BNAG-aVv.js +0 -4
  928. package/components/p-BR3tZJmu.js +0 -4
  929. package/components/p-BSB38Tek.js +0 -4
  930. package/components/p-BTeL5HCK.js +0 -4
  931. package/components/p-BVnB3eEn.js +0 -4
  932. package/components/p-BYDc3hSE.js +0 -4
  933. package/components/p-BagjAGC0.js +0 -4
  934. package/components/p-BegtE7nr.js +0 -4
  935. package/components/p-BgwEQWW6.js +0 -4
  936. package/components/p-Bk2zuNWT.js +0 -4
  937. package/components/p-BmVRXR1y.js +0 -4
  938. package/components/p-Bum_LjMh.js +0 -4
  939. package/components/p-BxwWvu-b.js +0 -4
  940. package/components/p-C4jPsTQa.js +0 -4
  941. package/components/p-C59ryAuS.js +0 -4
  942. package/components/p-C7AoMl7c.js +0 -4
  943. package/components/p-CBzELu-H.js +0 -4
  944. package/components/p-CDfQnFrd.js +0 -4
  945. package/components/p-CH0NYjKq.js +0 -4
  946. package/components/p-CIGNaXM1.js +0 -4
  947. package/components/p-CU1SSH8_.js +0 -4
  948. package/components/p-CVF7ukTk.js +0 -4
  949. package/components/p-CgfaEEem.js +0 -4
  950. package/components/p-CgqKJg96.js +0 -4
  951. package/components/p-CneGxKsZ.js +0 -4
  952. package/components/p-CoA-aqGF.js +0 -4
  953. package/components/p-Cq8cQ0NL.js +0 -4
  954. package/components/p-Csw8xuz4.js +0 -4
  955. package/components/p-CtWGkNnJ.js +0 -4
  956. package/components/p-Cy5XSfIk.js +0 -4
  957. package/components/p-Cyxa_4PV.js +0 -4
  958. package/components/p-Cz5nLPGT.js +0 -4
  959. package/components/p-D6NJwNJN.js +0 -4
  960. package/components/p-D6Ynv7Xh.js +0 -4
  961. package/components/p-DHsZWn1l.js +0 -4
  962. package/components/p-DJMZehmW.js +0 -4
  963. package/components/p-DJztqcrH.js +0 -4
  964. package/components/p-DYdpXONG.js +0 -4
  965. package/components/p-DgbT0exM.js +0 -4
  966. package/components/p-DiVJyqlX.js +0 -4
  967. package/components/p-ZjP4CjeZ.js +0 -4
  968. package/components/p-fpbh6w3f.js +0 -4
  969. package/components/p-kvaDs24J.js +0 -4
  970. package/components/p-vEbVo2hO.js +0 -4
  971. package/dist/cjs/hardware-back-button-C4rMJ5uI.js +0 -121
  972. package/dist/cjs/index-DkNv4J_i.js +0 -10
  973. package/dist/cjs/ionic-global-Bc3kJi1Z.js +0 -151
  974. package/dist/cjs/validity-BpS37YFM.js +0 -19
  975. package/dist/esm/hardware-back-button-CTe4XmL7.js +0 -115
  976. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  977. package/dist/esm/ionic-global-DfbeLwcV.js +0 -146
  978. package/dist/esm/validity-DJztqcrH.js +0 -17
  979. package/dist/ionic/p-031b76f7.entry.js +0 -4
  980. package/dist/ionic/p-045a6a42.entry.js +0 -4
  981. package/dist/ionic/p-07506134.entry.js +0 -4
  982. package/dist/ionic/p-084c25b2.entry.js +0 -4
  983. package/dist/ionic/p-0d8b5c38.entry.js +0 -4
  984. package/dist/ionic/p-16813ce7.entry.js +0 -4
  985. package/dist/ionic/p-16b65553.entry.js +0 -4
  986. package/dist/ionic/p-1b02923f.entry.js +0 -4
  987. package/dist/ionic/p-1b169fb6.entry.js +0 -4
  988. package/dist/ionic/p-23fac490.entry.js +0 -4
  989. package/dist/ionic/p-294f4bb5.entry.js +0 -4
  990. package/dist/ionic/p-2a68388b.entry.js +0 -4
  991. package/dist/ionic/p-2f5a8140.entry.js +0 -4
  992. package/dist/ionic/p-301c43f8.entry.js +0 -4
  993. package/dist/ionic/p-370a60ee.entry.js +0 -4
  994. package/dist/ionic/p-3e143d1d.entry.js +0 -4
  995. package/dist/ionic/p-4819b469.entry.js +0 -4
  996. package/dist/ionic/p-4dd5e8e0.entry.js +0 -4
  997. package/dist/ionic/p-51c11c47.entry.js +0 -4
  998. package/dist/ionic/p-53f750a5.entry.js +0 -4
  999. package/dist/ionic/p-6af16209.entry.js +0 -4
  1000. package/dist/ionic/p-6b701daa.entry.js +0 -4
  1001. package/dist/ionic/p-6b97f2a3.entry.js +0 -4
  1002. package/dist/ionic/p-71e322f7.entry.js +0 -4
  1003. package/dist/ionic/p-7620be24.entry.js +0 -4
  1004. package/dist/ionic/p-771b27a5.entry.js +0 -4
  1005. package/dist/ionic/p-7ca71c83.entry.js +0 -4
  1006. package/dist/ionic/p-80cac7a2.entry.js +0 -4
  1007. package/dist/ionic/p-96a2e768.entry.js +0 -4
  1008. package/dist/ionic/p-9833cf63.entry.js +0 -4
  1009. package/dist/ionic/p-9cbc6f1f.entry.js +0 -4
  1010. package/dist/ionic/p-9cdbabbb.entry.js +0 -4
  1011. package/dist/ionic/p-9eac4eb1.entry.js +0 -4
  1012. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1013. package/dist/ionic/p-9fae83d8.entry.js +0 -4
  1014. package/dist/ionic/p-BAt5H1ac.js +0 -4
  1015. package/dist/ionic/p-BW_TRJm8.js +0 -4
  1016. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1017. package/dist/ionic/p-Bum7H1fw.js +0 -4
  1018. package/dist/ionic/p-BxIcPWoV.js +0 -4
  1019. package/dist/ionic/p-C0JvVFMv.js +0 -4
  1020. package/dist/ionic/p-CGmVTdWh.js +0 -4
  1021. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1022. package/dist/ionic/p-CYbRmDdy.js +0 -4
  1023. package/dist/ionic/p-CYvM5g3q.js +0 -4
  1024. package/dist/ionic/p-CmFz1Mjc.js +0 -4
  1025. package/dist/ionic/p-CtA-yJYy.js +0 -4
  1026. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1027. package/dist/ionic/p-D8HJQ1qq.js +0 -4
  1028. package/dist/ionic/p-DB_iPQC-.js +0 -4
  1029. package/dist/ionic/p-DJztqcrH.js +0 -4
  1030. package/dist/ionic/p-DLbbmF9h.js +0 -4
  1031. package/dist/ionic/p-DTPR1Wpn.js +0 -4
  1032. package/dist/ionic/p-DiVJyqlX.js +0 -4
  1033. package/dist/ionic/p-DtVZDHlS.js +0 -4
  1034. package/dist/ionic/p-IGIE5vDm.js +0 -5
  1035. package/dist/ionic/p-NFFyoJ4Q.js +0 -4
  1036. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1037. package/dist/ionic/p-a805674e.entry.js +0 -4
  1038. package/dist/ionic/p-a84f2d21.entry.js +0 -4
  1039. package/dist/ionic/p-aa47f46e.entry.js +0 -4
  1040. package/dist/ionic/p-b325a113.entry.js +0 -4
  1041. package/dist/ionic/p-b440381f.entry.js +0 -4
  1042. package/dist/ionic/p-b6e0ff03.entry.js +0 -4
  1043. package/dist/ionic/p-bcaa827e.entry.js +0 -4
  1044. package/dist/ionic/p-c3cce9d8.entry.js +0 -4
  1045. package/dist/ionic/p-ca31010f.entry.js +0 -4
  1046. package/dist/ionic/p-d4e8b473.entry.js +0 -4
  1047. package/dist/ionic/p-e663bc5a.entry.js +0 -4
  1048. package/dist/ionic/p-e6c5f060.entry.js +0 -4
  1049. package/dist/ionic/p-e6cedcd7.entry.js +0 -4
  1050. package/dist/ionic/p-e863ffe8.entry.js +0 -4
  1051. package/dist/ionic/p-f2deaceb.entry.js +0 -4
  1052. package/dist/ionic/p-f5dfb9a3.entry.js +0 -4
  1053. package/dist/ionic/p-f8186550.entry.js +0 -4
  1054. package/dist/ionic/p-fdbc90d4.entry.js +0 -4
  1055. package/dist/ionic/p-hNN3VvaC.js +0 -4
  1056. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -89,7 +89,7 @@ export namespace Components {
89
89
  */
90
90
  "disabled": boolean;
91
91
  /**
92
- * The mode determines which platform styles to use.
92
+ * The mode determines the platform behaviors of the component.
93
93
  */
94
94
  "mode"?: "ios" | "md";
95
95
  /**
@@ -97,11 +97,14 @@ export namespace Components {
97
97
  * @default false
98
98
  */
99
99
  "readonly": boolean;
100
+ /**
101
+ * The theme determines the visual appearance of the component.
102
+ */
103
+ "theme"?: "ios" | "md" | "ionic";
100
104
  /**
101
105
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
102
- * @default chevronDown
103
106
  */
104
- "toggleIcon": string;
107
+ "toggleIcon"?: string;
105
108
  /**
106
109
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
107
110
  * @default 'end'
@@ -131,7 +134,7 @@ export namespace Components {
131
134
  "expand": 'compact' | 'inset';
132
135
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
133
136
  /**
134
- * The mode determines which platform styles to use.
137
+ * The mode determines the platform behaviors of the component.
135
138
  */
136
139
  "mode"?: "ios" | "md";
137
140
  /**
@@ -147,6 +150,14 @@ export namespace Components {
147
150
  * This method is used to ensure that the value of ion-accordion-group is being set in a valid way. This method should only be called in response to a user generated action.
148
151
  */
149
152
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
153
+ /**
154
+ * Set to `"soft"` for an accordion group with slightly rounded corners, `"round"` for an accordion group with fully rounded corners, or `"rectangular"` for an accordion group without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes. Only applies when `expand` is set to `"inset"`.
155
+ */
156
+ "shape"?: 'soft' | 'round' | 'rectangular';
157
+ /**
158
+ * The theme determines the visual appearance of the component.
159
+ */
160
+ "theme"?: "ios" | "md" | "ionic";
150
161
  /**
151
162
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
152
163
  */
@@ -210,7 +221,7 @@ export namespace Components {
210
221
  */
211
222
  "leaveAnimation"?: AnimationBuilder;
212
223
  /**
213
- * The mode determines which platform styles to use.
224
+ * The mode determines the platform behaviors of the component.
214
225
  */
215
226
  "mode"?: "ios" | "md";
216
227
  /**
@@ -231,7 +242,11 @@ export namespace Components {
231
242
  */
232
243
  "subHeader"?: string;
233
244
  /**
234
- * If `true`, the action sheet will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
245
+ * The theme determines the visual appearance of the component.
246
+ */
247
+ "theme"?: "ios" | "md" | "ionic";
248
+ /**
249
+ * If `true`, the action sheet will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
235
250
  * @default false
236
251
  */
237
252
  "translucent": boolean;
@@ -307,7 +322,7 @@ export namespace Components {
307
322
  */
308
323
  "message"?: string | IonicSafeString;
309
324
  /**
310
- * The mode determines which platform styles to use.
325
+ * The mode determines the platform behaviors of the component.
311
326
  */
312
327
  "mode"?: "ios" | "md";
313
328
  /**
@@ -328,7 +343,11 @@ export namespace Components {
328
343
  */
329
344
  "subHeader"?: string;
330
345
  /**
331
- * If `true`, the alert will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
346
+ * The theme determines the visual appearance of the component.
347
+ */
348
+ "theme"?: "ios" | "md" | "ionic";
349
+ /**
350
+ * If `true`, the alert will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
332
351
  * @default false
333
352
  */
334
353
  "translucent": boolean;
@@ -338,13 +357,42 @@ export namespace Components {
338
357
  "trigger": string | undefined;
339
358
  }
340
359
  interface IonApp {
360
+ /**
361
+ * The mode determines the platform behaviors of the component.
362
+ */
363
+ "mode"?: "ios" | "md";
341
364
  /**
342
365
  * Used to set focus on an element that uses `ion-focusable`. Do not use this if focusing the element as a result of a keyboard event as the focus utility should handle this for us. This method should be used when we want to programmatically focus an element as a result of another user action. (Ex: We focus the first element inside of a popover when the user presents it, but the popover is not always presented as a result of keyboard action.)
343
366
  * @param elements An array of HTML elements to set focus on.
344
367
  */
345
368
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
369
+ /**
370
+ * The theme determines the visual appearance of the component.
371
+ */
372
+ "theme"?: "ios" | "md" | "ionic";
346
373
  }
347
374
  interface IonAvatar {
375
+ /**
376
+ * If `true`, the user cannot interact with the avatar.
377
+ * @default false
378
+ */
379
+ "disabled": boolean;
380
+ /**
381
+ * The mode determines the platform behaviors of the component.
382
+ */
383
+ "mode"?: "ios" | "md";
384
+ /**
385
+ * Set to `"soft"` for an avatar with slightly rounded corners, `"round"` for an avatar with fully rounded corners, or `"rectangular"` for an avatar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
386
+ */
387
+ "shape"?: 'soft' | 'round' | 'rectangular';
388
+ /**
389
+ * Set to `"xxsmall"` for the smallest size. Set to `"xsmall"` for a very small size. Set to `"small"` for a compact size. Set to `"medium"` for the default height and width. Set to `"large"` for a larger size. Set to `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
390
+ */
391
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
392
+ /**
393
+ * The theme determines the visual appearance of the component.
394
+ */
395
+ "theme"?: "ios" | "md" | "ionic";
348
396
  }
349
397
  interface IonBackButton {
350
398
  /**
@@ -365,7 +413,7 @@ export namespace Components {
365
413
  */
366
414
  "icon"?: string | null;
367
415
  /**
368
- * The mode determines which platform styles to use.
416
+ * The mode determines the platform behaviors of the component.
369
417
  */
370
418
  "mode"?: "ios" | "md";
371
419
  /**
@@ -376,6 +424,10 @@ export namespace Components {
376
424
  * The text to display in the back button.
377
425
  */
378
426
  "text"?: string | null;
427
+ /**
428
+ * The theme determines the visual appearance of the component.
429
+ */
430
+ "theme"?: "ios" | "md" | "ionic";
379
431
  /**
380
432
  * The type of the button.
381
433
  * @default 'button'
@@ -383,6 +435,10 @@ export namespace Components {
383
435
  "type": 'submit' | 'reset' | 'button';
384
436
  }
385
437
  interface IonBackdrop {
438
+ /**
439
+ * The mode determines the platform behaviors of the component.
440
+ */
441
+ "mode"?: "ios" | "md";
386
442
  /**
387
443
  * If `true`, the backdrop will stop propagation on tap.
388
444
  * @default true
@@ -393,6 +449,10 @@ export namespace Components {
393
449
  * @default true
394
450
  */
395
451
  "tappable": boolean;
452
+ /**
453
+ * The theme determines the visual appearance of the component.
454
+ */
455
+ "theme"?: "ios" | "md" | "ionic";
396
456
  /**
397
457
  * If `true`, the backdrop will be visible.
398
458
  * @default true
@@ -405,9 +465,29 @@ export namespace Components {
405
465
  */
406
466
  "color"?: Color;
407
467
  /**
408
- * The mode determines which platform styles to use.
468
+ * Set to `"bold"` for a badge with vibrant, bold colors or to `"subtle"` for a badge with muted, subtle colors. Only applies to the `ionic` theme.
469
+ */
470
+ "hue"?: 'bold' | 'subtle';
471
+ /**
472
+ * The mode determines the platform behaviors of the component.
409
473
  */
410
474
  "mode"?: "ios" | "md";
475
+ /**
476
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
477
+ */
478
+ "shape"?: 'soft' | 'round | rectangular';
479
+ /**
480
+ * Set to `"small"` for a small badge. Set to `"medium"` for a medium badge. Set to `"large"` for a large badge, when it is empty (no text or icon). Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
481
+ */
482
+ "size"?: 'small' | 'medium' | 'large';
483
+ /**
484
+ * The theme determines the visual appearance of the component.
485
+ */
486
+ "theme"?: "ios" | "md" | "ionic";
487
+ /**
488
+ * Set to `"top"` to position the badge on top right absolute position of the parent element. Set to `"bottom"` to position the badge on bottom right absolute position of the parent element.
489
+ */
490
+ "vertical"?: 'top' | 'bottom';
411
491
  }
412
492
  interface IonBreadcrumb {
413
493
  /**
@@ -438,7 +518,7 @@ export namespace Components {
438
518
  "href": string | undefined;
439
519
  "last": boolean;
440
520
  /**
441
- * The mode determines which platform styles to use.
521
+ * The mode determines the platform behaviors of the component.
442
522
  */
443
523
  "mode"?: "ios" | "md";
444
524
  /**
@@ -463,6 +543,10 @@ export namespace Components {
463
543
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
464
544
  */
465
545
  "target": string | undefined;
546
+ /**
547
+ * The theme determines the visual appearance of the component.
548
+ */
549
+ "theme"?: "ios" | "md" | "ionic";
466
550
  }
467
551
  interface IonBreadcrumbs {
468
552
  /**
@@ -484,9 +568,13 @@ export namespace Components {
484
568
  */
485
569
  "maxItems"?: number;
486
570
  /**
487
- * The mode determines which platform styles to use.
571
+ * The mode determines the platform behaviors of the component.
488
572
  */
489
573
  "mode"?: "ios" | "md";
574
+ /**
575
+ * The theme determines the visual appearance of the component.
576
+ */
577
+ "theme"?: "ios" | "md" | "ionic";
490
578
  }
491
579
  interface IonButton {
492
580
  /**
@@ -512,7 +600,7 @@ export namespace Components {
512
600
  */
513
601
  "expand"?: 'full' | 'block';
514
602
  /**
515
- * Set to `"clear"` for a transparent button that resembles a flat button, to `"outline"` for a transparent button with a border, or to `"solid"` for a button with a filled background. The default fill is `"solid"` except inside of a toolbar, where the default is `"clear"`.
603
+ * Set to `"clear"` for a transparent button that resembles a flat button, to `"outline"` for a transparent button with a border, or to `"solid"` for a button with a filled background. The default fill is `"solid"` except when inside of a buttons or datetime component, where the default fill is `"clear"`.
516
604
  */
517
605
  "fill"?: 'clear' | 'outline' | 'solid' | 'default';
518
606
  /**
@@ -524,7 +612,7 @@ export namespace Components {
524
612
  */
525
613
  "href": string | undefined;
526
614
  /**
527
- * The mode determines which platform styles to use.
615
+ * The mode determines the platform behaviors of the component.
528
616
  */
529
617
  "mode"?: "ios" | "md";
530
618
  /**
@@ -541,13 +629,13 @@ export namespace Components {
541
629
  */
542
630
  "routerDirection": RouterDirection;
543
631
  /**
544
- * Set to `"round"` for a button with more rounded corners.
632
+ * Set to `"soft"` for a button with slightly rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular"` for a button without rounded corners. Defaults to `"soft"` for the `"ios"` theme and `"round"` for all other themes.
545
633
  */
546
- "shape"?: 'round';
634
+ "shape"?: 'soft' | 'round' | 'rectangular';
547
635
  /**
548
- * Set to `"small"` for a button with less height and padding, to `"default"` for a button with the default height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
636
+ * Set to `"small"` for a button with less height and padding, to `"medium"` for a button with the medium height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
549
637
  */
550
- "size"?: 'small' | 'default' | 'large';
638
+ "size"?: 'small' | 'default' | 'medium' | 'large';
551
639
  /**
552
640
  * If `true`, activates a button with a heavier font weight.
553
641
  * @default false
@@ -557,6 +645,10 @@ export namespace Components {
557
645
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
558
646
  */
559
647
  "target": string | undefined;
648
+ /**
649
+ * The theme determines the visual appearance of the component.
650
+ */
651
+ "theme"?: "ios" | "md" | "ionic";
560
652
  /**
561
653
  * The type of the button.
562
654
  * @default 'button'
@@ -565,10 +657,18 @@ export namespace Components {
565
657
  }
566
658
  interface IonButtons {
567
659
  /**
568
- * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in `ios` mode with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
660
+ * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in the `ios` theme with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
569
661
  * @default false
570
662
  */
571
663
  "collapse": boolean;
664
+ /**
665
+ * The mode determines the platform behaviors of the component.
666
+ */
667
+ "mode"?: "ios" | "md";
668
+ /**
669
+ * The theme determines the visual appearance of the component.
670
+ */
671
+ "theme"?: "ios" | "md" | "ionic";
572
672
  }
573
673
  interface IonCard {
574
674
  /**
@@ -594,7 +694,7 @@ export namespace Components {
594
694
  */
595
695
  "href": string | undefined;
596
696
  /**
597
- * The mode determines which platform styles to use.
697
+ * The mode determines the platform behaviors of the component.
598
698
  */
599
699
  "mode"?: "ios" | "md";
600
700
  /**
@@ -610,10 +710,19 @@ export namespace Components {
610
710
  * @default 'forward'
611
711
  */
612
712
  "routerDirection": RouterDirection;
713
+ /**
714
+ * Set to `"soft"` for a card with slightly rounded corners, `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners. Defaults to `"round"`.
715
+ * @default 'round'
716
+ */
717
+ "shape"?: 'soft' | 'round' | 'rectangular';
613
718
  /**
614
719
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
615
720
  */
616
721
  "target": string | undefined;
722
+ /**
723
+ * The theme determines the visual appearance of the component.
724
+ */
725
+ "theme"?: "ios" | "md" | "ionic";
617
726
  /**
618
727
  * The type of the button. Only used when an `onclick` or `button` property is present.
619
728
  * @default 'button'
@@ -622,9 +731,13 @@ export namespace Components {
622
731
  }
623
732
  interface IonCardContent {
624
733
  /**
625
- * The mode determines which platform styles to use.
734
+ * The mode determines the platform behaviors of the component.
626
735
  */
627
736
  "mode"?: "ios" | "md";
737
+ /**
738
+ * The theme determines the visual appearance of the component.
739
+ */
740
+ "theme"?: "ios" | "md" | "ionic";
628
741
  }
629
742
  interface IonCardHeader {
630
743
  /**
@@ -632,11 +745,15 @@ export namespace Components {
632
745
  */
633
746
  "color"?: Color;
634
747
  /**
635
- * The mode determines which platform styles to use.
748
+ * The mode determines the platform behaviors of the component.
636
749
  */
637
750
  "mode"?: "ios" | "md";
638
751
  /**
639
- * If `true`, the card header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
752
+ * The theme determines the visual appearance of the component.
753
+ */
754
+ "theme"?: "ios" | "md" | "ionic";
755
+ /**
756
+ * If `true`, the card header will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
640
757
  * @default false
641
758
  */
642
759
  "translucent": boolean;
@@ -647,9 +764,13 @@ export namespace Components {
647
764
  */
648
765
  "color"?: Color;
649
766
  /**
650
- * The mode determines which platform styles to use.
767
+ * The mode determines the platform behaviors of the component.
651
768
  */
652
769
  "mode"?: "ios" | "md";
770
+ /**
771
+ * The theme determines the visual appearance of the component.
772
+ */
773
+ "theme"?: "ios" | "md" | "ionic";
653
774
  }
654
775
  interface IonCardTitle {
655
776
  /**
@@ -657,9 +778,13 @@ export namespace Components {
657
778
  */
658
779
  "color"?: Color;
659
780
  /**
660
- * The mode determines which platform styles to use.
781
+ * The mode determines the platform behaviors of the component.
661
782
  */
662
783
  "mode"?: "ios" | "md";
784
+ /**
785
+ * The theme determines the visual appearance of the component.
786
+ */
787
+ "theme"?: "ios" | "md" | "ionic";
663
788
  }
664
789
  interface IonCheckbox {
665
790
  /**
@@ -703,7 +828,7 @@ export namespace Components {
703
828
  */
704
829
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
705
830
  /**
706
- * The mode determines which platform styles to use.
831
+ * The mode determines the platform behaviors of the component.
707
832
  */
708
833
  "mode"?: "ios" | "md";
709
834
  /**
@@ -717,6 +842,19 @@ export namespace Components {
717
842
  */
718
843
  "required": boolean;
719
844
  "setFocus": () => Promise<void>;
845
+ /**
846
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
847
+ * @default 'soft'
848
+ */
849
+ "shape"?: 'soft' | 'rectangular';
850
+ /**
851
+ * Set to `"small"` for a checkbox with less height and padding.
852
+ */
853
+ "size"?: 'small';
854
+ /**
855
+ * The theme determines the visual appearance of the component.
856
+ */
857
+ "theme"?: "ios" | "md" | "ionic";
720
858
  /**
721
859
  * The value of the checkbox does not mean if it's checked or not, use the `checked` property for that. The value of a checkbox is analogous to the value of an `<input type="checkbox">`, it's only used when the checkbox participates in a native `<form>`.
722
860
  * @default 'on'
@@ -734,7 +872,12 @@ export namespace Components {
734
872
  */
735
873
  "disabled": boolean;
736
874
  /**
737
- * The mode determines which platform styles to use.
875
+ * Set to `"bold"` for a chip with vibrant, bold colors or to `"subtle"` for a chip with muted, subtle colors. Only applies to the `ionic` theme.
876
+ * @default 'subtle'
877
+ */
878
+ "hue"?: 'bold' | 'subtle';
879
+ /**
880
+ * The mode determines the platform behaviors of the component.
738
881
  */
739
882
  "mode"?: "ios" | "md";
740
883
  /**
@@ -742,8 +885,24 @@ export namespace Components {
742
885
  * @default false
743
886
  */
744
887
  "outline": boolean;
888
+ /**
889
+ * Set to `"soft"` for a chip with slightly rounded corners, `"round"` for a chip with fully rounded corners, or `"rectangular"` for a chip without rounded corners. Defaults to `"round"` for the `"ionic"` theme and `"soft"` for all other themes.
890
+ */
891
+ "shape"?: 'soft' | 'round' | 'rectangular';
892
+ /**
893
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
894
+ */
895
+ "size"?: 'small' | 'large';
896
+ /**
897
+ * The theme determines the visual appearance of the component.
898
+ */
899
+ "theme"?: "ios" | "md" | "ionic";
745
900
  }
746
901
  interface IonCol {
902
+ /**
903
+ * The mode determines the platform behaviors of the component.
904
+ */
905
+ "mode"?: "ios" | "md";
747
906
  /**
748
907
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
749
908
  */
@@ -768,52 +927,88 @@ export namespace Components {
768
927
  * The amount to offset the column for xs screens, in terms of how many columns it should shift to the end of the total available.
769
928
  */
770
929
  "offsetXs"?: string;
930
+ /**
931
+ * The order of the column, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
932
+ */
933
+ "order"?: string;
934
+ /**
935
+ * The order of the column for lg screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
936
+ */
937
+ "orderLg"?: string;
938
+ /**
939
+ * The order of the column for md screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
940
+ */
941
+ "orderMd"?: string;
942
+ /**
943
+ * The order of the column for sm screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
944
+ */
945
+ "orderSm"?: string;
946
+ /**
947
+ * The order of the column for xl screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
948
+ */
949
+ "orderXl"?: string;
950
+ /**
951
+ * The order of the column for xs screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
952
+ */
953
+ "orderXs"?: string;
771
954
  /**
772
955
  * The amount to pull the column, in terms of how many columns it should shift to the start of the total available.
956
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
773
957
  */
774
958
  "pull"?: string;
775
959
  /**
776
960
  * The amount to pull the column for lg screens, in terms of how many columns it should shift to the start of the total available.
961
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
777
962
  */
778
963
  "pullLg"?: string;
779
964
  /**
780
965
  * The amount to pull the column for md screens, in terms of how many columns it should shift to the start of the total available.
966
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
781
967
  */
782
968
  "pullMd"?: string;
783
969
  /**
784
970
  * The amount to pull the column for sm screens, in terms of how many columns it should shift to the start of the total available.
971
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
785
972
  */
786
973
  "pullSm"?: string;
787
974
  /**
788
975
  * The amount to pull the column for xl screens, in terms of how many columns it should shift to the start of the total available.
976
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
789
977
  */
790
978
  "pullXl"?: string;
791
979
  /**
792
980
  * The amount to pull the column for xs screens, in terms of how many columns it should shift to the start of the total available.
981
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
793
982
  */
794
983
  "pullXs"?: string;
795
984
  /**
796
985
  * The amount to push the column, in terms of how many columns it should shift to the end of the total available.
986
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
797
987
  */
798
988
  "push"?: string;
799
989
  /**
800
990
  * The amount to push the column for lg screens, in terms of how many columns it should shift to the end of the total available.
991
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
801
992
  */
802
993
  "pushLg"?: string;
803
994
  /**
804
995
  * The amount to push the column for md screens, in terms of how many columns it should shift to the end of the total available.
996
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
805
997
  */
806
998
  "pushMd"?: string;
807
999
  /**
808
1000
  * The amount to push the column for sm screens, in terms of how many columns it should shift to the end of the total available.
1001
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
809
1002
  */
810
1003
  "pushSm"?: string;
811
1004
  /**
812
1005
  * The amount to push the column for xl screens, in terms of how many columns it should shift to the end of the total available.
1006
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
813
1007
  */
814
1008
  "pushXl"?: string;
815
1009
  /**
816
1010
  * The amount to push the column for xs screens, in terms of how many columns it should shift to the end of the total available.
1011
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
817
1012
  */
818
1013
  "pushXs"?: string;
819
1014
  /**
@@ -840,6 +1035,10 @@ export namespace Components {
840
1035
  * The size of the column for xs screens, in terms of how many columns it should take up out of the total available. If `"auto"` is passed, the column will be the size of its content.
841
1036
  */
842
1037
  "sizeXs"?: string;
1038
+ /**
1039
+ * The theme determines the visual appearance of the component.
1040
+ */
1041
+ "theme"?: "ios" | "md" | "ionic";
843
1042
  }
844
1043
  interface IonContent {
845
1044
  /**
@@ -868,6 +1067,10 @@ export namespace Components {
868
1067
  * Get the element where the actual scrolling takes place. This element can be used to subscribe to `scroll` events or manually modify `scrollTop`. However, it's recommended to use the API provided by `ion-content`: i.e. Using `ionScroll`, `ionScrollStart`, `ionScrollEnd` for scrolling events and `scrollToPoint()` to scroll the content into a certain point.
869
1068
  */
870
1069
  "getScrollElement": () => Promise<HTMLElement>;
1070
+ /**
1071
+ * The mode determines the platform behaviors of the component.
1072
+ */
1073
+ "mode"?: "ios" | "md";
871
1074
  /**
872
1075
  * Recalculate content dimensions. Called by overlays (e.g., popover) when sibling elements like headers or footers have finished rendering and their heights are available, ensuring accurate offset-top calculations.
873
1076
  */
@@ -911,6 +1114,10 @@ export namespace Components {
911
1114
  * @default true
912
1115
  */
913
1116
  "scrollY": boolean;
1117
+ /**
1118
+ * The theme determines the visual appearance of the component.
1119
+ */
1120
+ "theme"?: "ios" | "md" | "ionic";
914
1121
  }
915
1122
  interface IonDatetime {
916
1123
  /**
@@ -995,7 +1202,7 @@ export namespace Components {
995
1202
  */
996
1203
  "minuteValues"?: number[] | number | string;
997
1204
  /**
998
- * The mode determines which platform styles to use.
1205
+ * The mode determines the platform behaviors of the component.
999
1206
  */
1000
1207
  "mode"?: "ios" | "md";
1001
1208
  /**
@@ -1062,6 +1269,10 @@ export namespace Components {
1062
1269
  * @default 'fixed'
1063
1270
  */
1064
1271
  "size": 'cover' | 'fixed';
1272
+ /**
1273
+ * The theme determines the visual appearance of the component.
1274
+ */
1275
+ "theme"?: "ios" | "md" | "ionic";
1065
1276
  /**
1066
1277
  * A callback used to format the header text that shows how many dates are selected. Only used if there are 0 or more than 1 selected (i.e. unused for exactly 1). By default, the header text is set to "numberOfDates days". See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
1067
1278
  */
@@ -1091,9 +1302,25 @@ export namespace Components {
1091
1302
  */
1092
1303
  "disabled": boolean;
1093
1304
  /**
1094
- * The mode determines which platform styles to use.
1305
+ * The mode determines the platform behaviors of the component.
1095
1306
  */
1096
1307
  "mode"?: "ios" | "md";
1308
+ /**
1309
+ * The theme determines the visual appearance of the component.
1310
+ */
1311
+ "theme"?: "ios" | "md" | "ionic";
1312
+ }
1313
+ interface IonDivider {
1314
+ /**
1315
+ * If `true`, the divider will have horizontal margins By default, it's `false`
1316
+ * @default false
1317
+ */
1318
+ "inset": boolean;
1319
+ /**
1320
+ * Set to `"xxsmall"` for the smallest spacing. Set to "xsmall" for very small spacing. Set to `"small"` for small spacing. Set to "medium" for medium spacing. Set to "large" for large spacing. Set to `"xlarge"` for the largest spacing. Defaults to `"medium"`.
1321
+ * @default 'medium'
1322
+ */
1323
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
1097
1324
  }
1098
1325
  interface IonFab {
1099
1326
  /**
@@ -1114,6 +1341,14 @@ export namespace Components {
1114
1341
  * Where to align the fab horizontally in the viewport.
1115
1342
  */
1116
1343
  "horizontal"?: 'start' | 'end' | 'center';
1344
+ /**
1345
+ * The mode determines the platform behaviors of the component.
1346
+ */
1347
+ "mode"?: "ios" | "md";
1348
+ /**
1349
+ * The theme determines the visual appearance of the component.
1350
+ */
1351
+ "theme"?: "ios" | "md" | "ionic";
1117
1352
  /**
1118
1353
  * Opens/Closes the FAB list container.
1119
1354
  */
@@ -1131,9 +1366,8 @@ export namespace Components {
1131
1366
  "activated": boolean;
1132
1367
  /**
1133
1368
  * The icon name to use for the close icon. This will appear when the fab button is pressed. Only applies if it is the main button inside of a fab containing a fab list.
1134
- * @default close
1135
1369
  */
1136
- "closeIcon": string;
1370
+ "closeIcon"?: string;
1137
1371
  /**
1138
1372
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`. For more information on colors, see [theming](/docs/theming/basics).
1139
1373
  */
@@ -1152,7 +1386,7 @@ export namespace Components {
1152
1386
  */
1153
1387
  "href": string | undefined;
1154
1388
  /**
1155
- * The mode determines which platform styles to use.
1389
+ * The mode determines the platform behaviors of the component.
1156
1390
  */
1157
1391
  "mode"?: "ios" | "md";
1158
1392
  /**
@@ -1182,7 +1416,11 @@ export namespace Components {
1182
1416
  */
1183
1417
  "target": string | undefined;
1184
1418
  /**
1185
- * If `true`, the fab button will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1419
+ * The theme determines the visual appearance of the component.
1420
+ */
1421
+ "theme"?: "ios" | "md" | "ionic";
1422
+ /**
1423
+ * If `true`, the fab button will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1186
1424
  * @default false
1187
1425
  */
1188
1426
  "translucent": boolean;
@@ -1198,23 +1436,35 @@ export namespace Components {
1198
1436
  * @default false
1199
1437
  */
1200
1438
  "activated": boolean;
1439
+ /**
1440
+ * The mode determines the platform behaviors of the component.
1441
+ */
1442
+ "mode"?: "ios" | "md";
1201
1443
  /**
1202
1444
  * The side the fab list will show on relative to the main fab button.
1203
1445
  * @default 'bottom'
1204
1446
  */
1205
1447
  "side": 'start' | 'end' | 'top' | 'bottom';
1448
+ /**
1449
+ * The theme determines the visual appearance of the component.
1450
+ */
1451
+ "theme"?: "ios" | "md" | "ionic";
1206
1452
  }
1207
1453
  interface IonFooter {
1208
1454
  /**
1209
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1455
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1210
1456
  */
1211
1457
  "collapse"?: 'fade';
1212
1458
  /**
1213
- * The mode determines which platform styles to use.
1459
+ * The mode determines the platform behaviors of the component.
1214
1460
  */
1215
1461
  "mode"?: "ios" | "md";
1216
1462
  /**
1217
- * If `true`, the footer will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
1463
+ * The theme determines the visual appearance of the component.
1464
+ */
1465
+ "theme"?: "ios" | "md" | "ionic";
1466
+ /**
1467
+ * If `true`, the footer will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
1218
1468
  * @default false
1219
1469
  */
1220
1470
  "translucent": boolean;
@@ -1225,18 +1475,35 @@ export namespace Components {
1225
1475
  * @default false
1226
1476
  */
1227
1477
  "fixed": boolean;
1478
+ /**
1479
+ * The mode determines the platform behaviors of the component.
1480
+ */
1481
+ "mode"?: "ios" | "md";
1482
+ /**
1483
+ * The theme determines the visual appearance of the component.
1484
+ */
1485
+ "theme"?: "ios" | "md" | "ionic";
1228
1486
  }
1229
1487
  interface IonHeader {
1230
1488
  /**
1231
- * Describes the scroll effect that will be applied to the header. Only applies in iOS mode. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
1489
+ * Describes the scroll effect that will be applied to the header. Only applies when the theme is `"ios"`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
1232
1490
  */
1233
1491
  "collapse"?: 'condense' | 'fade';
1234
1492
  /**
1235
- * The mode determines which platform styles to use.
1493
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1494
+ * @default false
1495
+ */
1496
+ "divider": boolean;
1497
+ /**
1498
+ * The mode determines the platform behaviors of the component.
1236
1499
  */
1237
1500
  "mode"?: "ios" | "md";
1238
1501
  /**
1239
- * If `true`, the header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
1502
+ * The theme determines the visual appearance of the component.
1503
+ */
1504
+ "theme"?: "ios" | "md" | "ionic";
1505
+ /**
1506
+ * If `true`, the header will be translucent. Only applies when the theme is `"ios"` or `"ionic"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
1240
1507
  * @default false
1241
1508
  */
1242
1509
  "translucent": boolean;
@@ -1246,10 +1513,18 @@ export namespace Components {
1246
1513
  * This attribute defines the alternative text describing the image. Users will see this text displayed if the image URL is wrong, the image is not in one of the supported formats, or if the image is not yet downloaded.
1247
1514
  */
1248
1515
  "alt"?: string;
1516
+ /**
1517
+ * The mode determines the platform behaviors of the component.
1518
+ */
1519
+ "mode"?: "ios" | "md";
1249
1520
  /**
1250
1521
  * The image URL. This attribute is mandatory for the `<img>` element.
1251
1522
  */
1252
1523
  "src"?: string;
1524
+ /**
1525
+ * The theme determines the visual appearance of the component.
1526
+ */
1527
+ "theme"?: "ios" | "md" | "ionic";
1253
1528
  }
1254
1529
  interface IonInfiniteScroll {
1255
1530
  /**
@@ -1261,11 +1536,24 @@ export namespace Components {
1261
1536
  * @default false
1262
1537
  */
1263
1538
  "disabled": boolean;
1539
+ /**
1540
+ * The mode determines the platform behaviors of the component.
1541
+ */
1542
+ "mode"?: "ios" | "md";
1264
1543
  /**
1265
1544
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1266
1545
  * @default 'bottom'
1267
1546
  */
1268
1547
  "position": 'top' | 'bottom';
1548
+ /**
1549
+ * If `true`, the infinite scroll will preserve the scroll position when the content is re-rendered. This is useful when the content is re-rendered with new keys, and the scroll position should be preserved.
1550
+ * @default false
1551
+ */
1552
+ "preserveRerenderScrollPosition": boolean;
1553
+ /**
1554
+ * The theme determines the visual appearance of the component.
1555
+ */
1556
+ "theme"?: "ios" | "md" | "ionic";
1269
1557
  /**
1270
1558
  * The threshold distance from the bottom of the content to call the `infinite` output event when scrolled. The threshold value can be either a percent, or in pixels. For example, use the value of `10%` for the `infinite` output event to get called when the user has scrolled 10% from the bottom of the page. Use the value `100px` when the scroll is within 100 pixels from the bottom of the page.
1271
1559
  * @default '15%'
@@ -1281,6 +1569,14 @@ export namespace Components {
1281
1569
  * Optional text to display while loading. `loadingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) This property accepts custom HTML as a string. Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
1282
1570
  */
1283
1571
  "loadingText"?: string | IonicSafeString;
1572
+ /**
1573
+ * The mode determines the platform behaviors of the component.
1574
+ */
1575
+ "mode"?: "ios" | "md";
1576
+ /**
1577
+ * The theme determines the visual appearance of the component.
1578
+ */
1579
+ "theme"?: "ios" | "md" | "ionic";
1284
1580
  }
1285
1581
  interface IonInput {
1286
1582
  /**
@@ -1347,7 +1643,7 @@ export namespace Components {
1347
1643
  */
1348
1644
  "errorText"?: string;
1349
1645
  /**
1350
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
1646
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available when the theme is `"md"`.
1351
1647
  */
1352
1648
  "fill"?: 'outline' | 'solid';
1353
1649
  /**
@@ -1367,10 +1663,9 @@ export namespace Components {
1367
1663
  */
1368
1664
  "label"?: string;
1369
1665
  /**
1370
- * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
1371
- * @default 'start'
1666
+ * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). Defaults to "stacked" for the ionic theme, or "start" for all other themes. In the ionic theme, only the values "stacked" and "floating" are supported.
1372
1667
  */
1373
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1668
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1374
1669
  /**
1375
1670
  * The maximum value, which must not be less than its minimum (min attribute) value.
1376
1671
  */
@@ -1388,7 +1683,7 @@ export namespace Components {
1388
1683
  */
1389
1684
  "minlength"?: number;
1390
1685
  /**
1391
- * The mode determines which platform styles to use.
1686
+ * The mode determines the platform behaviors of the component.
1392
1687
  */
1393
1688
  "mode"?: "ios" | "md";
1394
1689
  /**
@@ -1423,9 +1718,14 @@ export namespace Components {
1423
1718
  */
1424
1719
  "setFocus": () => Promise<void>;
1425
1720
  /**
1426
- * The shape of the input. If "round" it will have an increased border radius.
1721
+ * Set to `"soft"` for an input with slightly rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular"` for an input without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes. Only applies when the fill is set to `"solid"` or `"outline"`.
1722
+ */
1723
+ "shape"?: 'soft' | 'round' | 'rectangular';
1724
+ /**
1725
+ * The size of the input. If "large", it will have an increased height. By default the size is medium. This property only applies to the `"ionic"` theme.
1726
+ * @default 'medium'
1427
1727
  */
1428
- "shape"?: 'round';
1728
+ "size"?: 'medium' | 'large' | 'xlarge';
1429
1729
  /**
1430
1730
  * If `true`, the element will have its spelling and grammar checked.
1431
1731
  * @default false
@@ -1435,6 +1735,10 @@ export namespace Components {
1435
1735
  * Works with the min and max attributes to limit the increments at which a value can be set. Possible values are: `"any"` or a positive floating point number.
1436
1736
  */
1437
1737
  "step"?: string;
1738
+ /**
1739
+ * The theme determines the visual appearance of the component.
1740
+ */
1741
+ "theme"?: "ios" | "md" | "ionic";
1438
1742
  /**
1439
1743
  * The type of control to display. The default type is text.
1440
1744
  * @default 'text'
@@ -1475,6 +1779,10 @@ export namespace Components {
1475
1779
  * @default 4
1476
1780
  */
1477
1781
  "length": number;
1782
+ /**
1783
+ * The mode determines the platform behaviors of the component.
1784
+ */
1785
+ "mode"?: "ios" | "md";
1478
1786
  /**
1479
1787
  * A regex pattern string for allowed characters. Defaults based on type. For numbers (`type="number"`): `"[\p{N}]"` For text (`type="text"`): `"[\p{L}\p{N}]"`
1480
1788
  */
@@ -1503,6 +1811,10 @@ export namespace Components {
1503
1811
  * @default 'medium'
1504
1812
  */
1505
1813
  "size": 'small' | 'medium' | 'large';
1814
+ /**
1815
+ * The theme determines the visual appearance of the component.
1816
+ */
1817
+ "theme"?: "ios" | "md" | "ionic";
1506
1818
  /**
1507
1819
  * The type of input allowed in the input boxes.
1508
1820
  * @default 'number'
@@ -1547,14 +1859,13 @@ export namespace Components {
1547
1859
  */
1548
1860
  "color"?: Color;
1549
1861
  /**
1550
- * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `mode` is `ios` and an `href` or `button` property is present.
1862
+ * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `theme` is `"ios"` and an `href` or `button` property is present.
1551
1863
  */
1552
1864
  "detail"?: boolean;
1553
1865
  /**
1554
1866
  * The icon to use when `detail` is set to `true`.
1555
- * @default chevronForward
1556
1867
  */
1557
- "detailIcon": string;
1868
+ "detailIcon"?: string;
1558
1869
  /**
1559
1870
  * If `true`, the user cannot interact with the item.
1560
1871
  * @default false
@@ -1573,7 +1884,7 @@ export namespace Components {
1573
1884
  */
1574
1885
  "lines"?: 'full' | 'inset' | 'none';
1575
1886
  /**
1576
- * The mode determines which platform styles to use.
1887
+ * The mode determines the platform behaviors of the component.
1577
1888
  */
1578
1889
  "mode"?: "ios" | "md";
1579
1890
  /**
@@ -1593,6 +1904,10 @@ export namespace Components {
1593
1904
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1594
1905
  */
1595
1906
  "target": string | undefined;
1907
+ /**
1908
+ * The theme determines the visual appearance of the component.
1909
+ */
1910
+ "theme"?: "ios" | "md" | "ionic";
1596
1911
  /**
1597
1912
  * The type of the button. Only used when an `onclick` or `button` property is present.
1598
1913
  * @default 'button'
@@ -1605,7 +1920,7 @@ export namespace Components {
1605
1920
  */
1606
1921
  "color"?: Color;
1607
1922
  /**
1608
- * The mode determines which platform styles to use.
1923
+ * The mode determines the platform behaviors of the component.
1609
1924
  */
1610
1925
  "mode"?: "ios" | "md";
1611
1926
  /**
@@ -1613,8 +1928,20 @@ export namespace Components {
1613
1928
  * @default false
1614
1929
  */
1615
1930
  "sticky": boolean;
1931
+ /**
1932
+ * The theme determines the visual appearance of the component.
1933
+ */
1934
+ "theme"?: "ios" | "md" | "ionic";
1616
1935
  }
1617
1936
  interface IonItemGroup {
1937
+ /**
1938
+ * The mode determines the platform behaviors of the component.
1939
+ */
1940
+ "mode"?: "ios" | "md";
1941
+ /**
1942
+ * The theme determines the visual appearance of the component.
1943
+ */
1944
+ "theme"?: "ios" | "md" | "ionic";
1618
1945
  }
1619
1946
  interface IonItemOption {
1620
1947
  /**
@@ -1640,17 +1967,30 @@ export namespace Components {
1640
1967
  */
1641
1968
  "href": string | undefined;
1642
1969
  /**
1643
- * The mode determines which platform styles to use.
1970
+ * Set to `"bold"` for an option with vibrant, bold colors or to `"subtle"` for an option with muted, subtle colors. Only applies to the `ionic` theme.
1971
+ * @default 'subtle'
1972
+ */
1973
+ "hue"?: 'bold' | 'subtle';
1974
+ /**
1975
+ * The mode determines the platform behaviors of the component.
1644
1976
  */
1645
1977
  "mode"?: "ios" | "md";
1646
1978
  /**
1647
1979
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
1648
1980
  */
1649
1981
  "rel": string | undefined;
1982
+ /**
1983
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
1984
+ */
1985
+ "shape"?: 'soft' | 'round' | 'rectangular';
1650
1986
  /**
1651
1987
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1652
1988
  */
1653
1989
  "target": string | undefined;
1990
+ /**
1991
+ * The theme determines the visual appearance of the component.
1992
+ */
1993
+ "theme"?: "ios" | "md" | "ionic";
1654
1994
  /**
1655
1995
  * The type of the button.
1656
1996
  * @default 'button'
@@ -1659,11 +1999,19 @@ export namespace Components {
1659
1999
  }
1660
2000
  interface IonItemOptions {
1661
2001
  "fireSwipeEvent": () => Promise<void>;
2002
+ /**
2003
+ * The mode determines the platform behaviors of the component.
2004
+ */
2005
+ "mode"?: "ios" | "md";
1662
2006
  /**
1663
2007
  * The side the option button should be on. Possible values: `"start"` and `"end"`. If you have multiple `ion-item-options`, a side must be provided for each.
1664
2008
  * @default 'end'
1665
2009
  */
1666
2010
  "side": Side;
2011
+ /**
2012
+ * The theme determines the visual appearance of the component.
2013
+ */
2014
+ "theme"?: "ios" | "md" | "ionic";
1667
2015
  }
1668
2016
  interface IonItemSliding {
1669
2017
  /**
@@ -1687,11 +2035,19 @@ export namespace Components {
1687
2035
  * Get the ratio of the open amount of the item compared to the width of the options. If the number returned is positive, then the options on the right side are open. If the number returned is negative, then the options on the left side are open. If the absolute value of the number is greater than 1, the item is open more than the width of the options.
1688
2036
  */
1689
2037
  "getSlidingRatio": () => Promise<number>;
2038
+ /**
2039
+ * The mode determines the platform behaviors of the component.
2040
+ */
2041
+ "mode"?: "ios" | "md";
1690
2042
  /**
1691
2043
  * Open the sliding item.
1692
2044
  * @param side The side of the options to open. If a side is not provided, it will open the first set of options it finds within the item.
1693
2045
  */
1694
2046
  "open": (side: Side | undefined) => Promise<void>;
2047
+ /**
2048
+ * The theme determines the visual appearance of the component.
2049
+ */
2050
+ "theme"?: "ios" | "md" | "ionic";
1695
2051
  }
1696
2052
  interface IonLabel {
1697
2053
  /**
@@ -1699,13 +2055,17 @@ export namespace Components {
1699
2055
  */
1700
2056
  "color"?: Color;
1701
2057
  /**
1702
- * The mode determines which platform styles to use.
2058
+ * The mode determines the platform behaviors of the component.
1703
2059
  */
1704
2060
  "mode"?: "ios" | "md";
1705
2061
  /**
1706
2062
  * The position determines where and how the label behaves inside an item.
1707
2063
  */
1708
2064
  "position"?: 'fixed' | 'stacked' | 'floating';
2065
+ /**
2066
+ * The theme determines the visual appearance of the component.
2067
+ */
2068
+ "theme"?: "ios" | "md" | "ionic";
1709
2069
  }
1710
2070
  interface IonList {
1711
2071
  /**
@@ -1722,9 +2082,17 @@ export namespace Components {
1722
2082
  */
1723
2083
  "lines"?: 'full' | 'inset' | 'none';
1724
2084
  /**
1725
- * The mode determines which platform styles to use.
2085
+ * The mode determines the platform behaviors of the component.
1726
2086
  */
1727
2087
  "mode"?: "ios" | "md";
2088
+ /**
2089
+ * Set to `"soft"` for slightly rounded corners, `"round"` for fully rounded corners, or `"rectangular"` for no rounded corners. Defaults to `"round"` for the `ionic` theme when inset is `true` defaults to `"rectangular"` for the `ionic` theme when inset is `false`, undefined for all other themes.
2090
+ */
2091
+ "shape"?: 'soft' | 'round' | 'rectangular';
2092
+ /**
2093
+ * The theme determines the visual appearance of the component.
2094
+ */
2095
+ "theme"?: "ios" | "md" | "ionic";
1728
2096
  }
1729
2097
  interface IonListHeader {
1730
2098
  /**
@@ -1736,9 +2104,13 @@ export namespace Components {
1736
2104
  */
1737
2105
  "lines"?: 'full' | 'inset' | 'none';
1738
2106
  /**
1739
- * The mode determines which platform styles to use.
2107
+ * The mode determines the platform behaviors of the component.
1740
2108
  */
1741
2109
  "mode"?: "ios" | "md";
2110
+ /**
2111
+ * The theme determines the visual appearance of the component.
2112
+ */
2113
+ "theme"?: "ios" | "md" | "ionic";
1742
2114
  }
1743
2115
  interface IonLoading {
1744
2116
  /**
@@ -1798,7 +2170,7 @@ export namespace Components {
1798
2170
  */
1799
2171
  "message"?: string | IonicSafeString;
1800
2172
  /**
1801
- * The mode determines which platform styles to use.
2173
+ * The mode determines the platform behaviors of the component.
1802
2174
  */
1803
2175
  "mode"?: "ios" | "md";
1804
2176
  /**
@@ -1824,7 +2196,11 @@ export namespace Components {
1824
2196
  */
1825
2197
  "spinner"?: SpinnerTypes | null;
1826
2198
  /**
1827
- * If `true`, the loading indicator will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
2199
+ * The theme determines the visual appearance of the component.
2200
+ */
2201
+ "theme"?: "ios" | "md" | "ionic";
2202
+ /**
2203
+ * If `true`, the loading indicator will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1828
2204
  * @default false
1829
2205
  */
1830
2206
  "translucent": boolean;
@@ -1866,6 +2242,10 @@ export namespace Components {
1866
2242
  * An id for the menu.
1867
2243
  */
1868
2244
  "menuId"?: string;
2245
+ /**
2246
+ * The mode determines the platform behaviors of the component.
2247
+ */
2248
+ "mode"?: "ios" | "md";
1869
2249
  /**
1870
2250
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1871
2251
  * @param animated If `true`, the menu will animate when opening. If `false`, the menu will open instantly without animation. Defaults to `true`.
@@ -1888,6 +2268,10 @@ export namespace Components {
1888
2268
  * @default true
1889
2269
  */
1890
2270
  "swipeGesture": boolean;
2271
+ /**
2272
+ * The theme determines the visual appearance of the component.
2273
+ */
2274
+ "theme"?: "ios" | "md" | "ionic";
1891
2275
  /**
1892
2276
  * Toggles the menu. If the menu is already open, it will try to close, otherwise it will try to open it. If the operation can't be completed successfully, it returns `false`.
1893
2277
  * @param animated If `true`, the menu will animate when opening/closing. If `false`, the menu will open/close instantly without animation. Defaults to `true`.
@@ -1918,9 +2302,13 @@ export namespace Components {
1918
2302
  */
1919
2303
  "menu"?: string;
1920
2304
  /**
1921
- * The mode determines which platform styles to use.
2305
+ * The mode determines the platform behaviors of the component.
1922
2306
  */
1923
2307
  "mode"?: "ios" | "md";
2308
+ /**
2309
+ * The theme determines the visual appearance of the component.
2310
+ */
2311
+ "theme"?: "ios" | "md" | "ionic";
1924
2312
  /**
1925
2313
  * The type of the button.
1926
2314
  * @default 'button'
@@ -1937,6 +2325,14 @@ export namespace Components {
1937
2325
  * Optional property that maps to a Menu's `menuId` prop. Can also be `start` or `end` for the menu side. This is used to find the correct menu to toggle. If this property is not used, `ion-menu-toggle` will toggle the first menu that is active.
1938
2326
  */
1939
2327
  "menu"?: string;
2328
+ /**
2329
+ * The mode determines the platform behaviors of the component.
2330
+ */
2331
+ "mode"?: "ios" | "md";
2332
+ /**
2333
+ * The theme determines the visual appearance of the component.
2334
+ */
2335
+ "theme"?: "ios" | "md" | "ionic";
1940
2336
  }
1941
2337
  interface IonModal {
1942
2338
  /**
@@ -2041,7 +2437,7 @@ export namespace Components {
2041
2437
  */
2042
2438
  "leaveAnimation"?: AnimationBuilder;
2043
2439
  /**
2044
- * The mode determines which platform styles to use.
2440
+ * The mode determines the platform behaviors of the component.
2045
2441
  */
2046
2442
  "mode"?: "ios" | "md";
2047
2443
  /**
@@ -2066,11 +2462,19 @@ export namespace Components {
2066
2462
  * @param breakpoint The breakpoint value to move the sheet modal to. Must be a value defined in your `breakpoints` array.
2067
2463
  */
2068
2464
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2465
+ /**
2466
+ * Set to `"soft"` for a modal with slightly rounded corners, `"round"` for a modal with fully rounded corners, or `"rectangular"` for a modal without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
2467
+ */
2468
+ "shape"?: 'soft' | 'round' | 'rectangular';
2069
2469
  /**
2070
2470
  * If `true`, a backdrop will be displayed behind the modal. This property controls whether or not the backdrop darkens the screen when the modal is presented. It does not control whether or not the backdrop is active or present in the DOM.
2071
2471
  * @default true
2072
2472
  */
2073
2473
  "showBackdrop": boolean;
2474
+ /**
2475
+ * The theme determines the visual appearance of the component.
2476
+ */
2477
+ "theme"?: "ios" | "md" | "ionic";
2074
2478
  /**
2075
2479
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
2076
2480
  */
@@ -2083,7 +2487,7 @@ export namespace Components {
2083
2487
  */
2084
2488
  "animated": boolean;
2085
2489
  /**
2086
- * By default `ion-nav` animates transition between pages based in the mode (ios or material design). However, this property allows to create custom transition using `AnimationBuilder` functions.
2490
+ * By default `ion-nav` animates transition between pages based on the mode ("ios" or "md"). However, this property allows to create custom transition using `AnimationBuilder` functions.
2087
2491
  */
2088
2492
  "animation"?: AnimationBuilder;
2089
2493
  /**
@@ -2131,6 +2535,10 @@ export namespace Components {
2131
2535
  * @param done The transition complete function.
2132
2536
  */
2133
2537
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2538
+ /**
2539
+ * The mode determines the platform behaviors of the component.
2540
+ */
2541
+ "mode"?: "ios" | "md";
2134
2542
  /**
2135
2543
  * Pop a component off of the navigation stack. Navigates back from the current component.
2136
2544
  * @param opts The navigation options.
@@ -2202,6 +2610,10 @@ export namespace Components {
2202
2610
  * If the nav component should allow for swipe-to-go-back.
2203
2611
  */
2204
2612
  "swipeGesture"?: boolean;
2613
+ /**
2614
+ * The theme determines the visual appearance of the component.
2615
+ */
2616
+ "theme"?: "ios" | "md" | "ionic";
2205
2617
  }
2206
2618
  interface IonNavLink {
2207
2619
  /**
@@ -2212,6 +2624,10 @@ export namespace Components {
2212
2624
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
2213
2625
  */
2214
2626
  "componentProps"?: ComponentProps;
2627
+ /**
2628
+ * The mode determines the platform behaviors of the component.
2629
+ */
2630
+ "mode"?: "ios" | "md";
2215
2631
  /**
2216
2632
  * The transition animation when navigating to another page.
2217
2633
  */
@@ -2221,6 +2637,10 @@ export namespace Components {
2221
2637
  * @default 'forward'
2222
2638
  */
2223
2639
  "routerDirection": RouterDirection;
2640
+ /**
2641
+ * The theme determines the visual appearance of the component.
2642
+ */
2643
+ "theme"?: "ios" | "md" | "ionic";
2224
2644
  }
2225
2645
  interface IonNote {
2226
2646
  /**
@@ -2228,16 +2648,24 @@ export namespace Components {
2228
2648
  */
2229
2649
  "color"?: Color;
2230
2650
  /**
2231
- * The mode determines which platform styles to use.
2651
+ * The mode determines the platform behaviors of the component.
2232
2652
  */
2233
2653
  "mode"?: "ios" | "md";
2654
+ /**
2655
+ * The theme determines the visual appearance of the component.
2656
+ */
2657
+ "theme"?: "ios" | "md" | "ionic";
2234
2658
  }
2235
2659
  interface IonPicker {
2236
2660
  "exitInputMode": () => Promise<void>;
2237
2661
  /**
2238
- * The mode determines which platform styles to use.
2662
+ * The mode determines the platform behaviors of the component.
2239
2663
  */
2240
2664
  "mode"?: "ios" | "md";
2665
+ /**
2666
+ * The theme determines the visual appearance of the component.
2667
+ */
2668
+ "theme"?: "ios" | "md" | "ionic";
2241
2669
  }
2242
2670
  interface IonPickerColumn {
2243
2671
  /**
@@ -2251,7 +2679,7 @@ export namespace Components {
2251
2679
  */
2252
2680
  "disabled": boolean;
2253
2681
  /**
2254
- * The mode determines which platform styles to use.
2682
+ * The mode determines the platform behaviors of the component.
2255
2683
  */
2256
2684
  "mode"?: "ios" | "md";
2257
2685
  /**
@@ -2268,6 +2696,10 @@ export namespace Components {
2268
2696
  * Sets the value prop and fires the ionChange event. This is used when we need to fire ionChange from user-generated events that cannot be caught with normal input/change event listeners.
2269
2697
  */
2270
2698
  "setValue": (value: PickerColumnValue) => Promise<void>;
2699
+ /**
2700
+ * The theme determines the visual appearance of the component.
2701
+ */
2702
+ "theme"?: "ios" | "md" | "ionic";
2271
2703
  /**
2272
2704
  * The selected option in the picker.
2273
2705
  */
@@ -2284,6 +2716,14 @@ export namespace Components {
2284
2716
  * @default false
2285
2717
  */
2286
2718
  "disabled": boolean;
2719
+ /**
2720
+ * The mode determines the platform behaviors of the component.
2721
+ */
2722
+ "mode"?: "ios" | "md";
2723
+ /**
2724
+ * The theme determines the visual appearance of the component.
2725
+ */
2726
+ "theme"?: "ios" | "md" | "ionic";
2287
2727
  /**
2288
2728
  * The text value of the option.
2289
2729
  */
@@ -2358,7 +2798,7 @@ export namespace Components {
2358
2798
  */
2359
2799
  "leaveAnimation"?: AnimationBuilder;
2360
2800
  /**
2361
- * The mode determines which platform styles to use.
2801
+ * The mode determines the platform behaviors of the component.
2362
2802
  */
2363
2803
  "mode"?: "ios" | "md";
2364
2804
  /**
@@ -2379,6 +2819,10 @@ export namespace Components {
2379
2819
  * @default true
2380
2820
  */
2381
2821
  "showBackdrop": boolean;
2822
+ /**
2823
+ * The theme determines the visual appearance of the component.
2824
+ */
2825
+ "theme"?: "ios" | "md" | "ionic";
2382
2826
  /**
2383
2827
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2384
2828
  */
@@ -2392,7 +2836,7 @@ export namespace Components {
2392
2836
  }
2393
2837
  interface IonPopover {
2394
2838
  /**
2395
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2839
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2396
2840
  */
2397
2841
  "alignment"?: PositionAlign;
2398
2842
  /**
@@ -2401,7 +2845,7 @@ export namespace Components {
2401
2845
  */
2402
2846
  "animated": boolean;
2403
2847
  /**
2404
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2848
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2405
2849
  * @default true
2406
2850
  */
2407
2851
  "arrow": boolean;
@@ -2481,7 +2925,7 @@ export namespace Components {
2481
2925
  */
2482
2926
  "leaveAnimation"?: AnimationBuilder;
2483
2927
  /**
2484
- * The mode determines which platform styles to use.
2928
+ * The mode determines the platform behaviors of the component.
2485
2929
  */
2486
2930
  "mode"?: "ios" | "md";
2487
2931
  /**
@@ -2523,7 +2967,11 @@ export namespace Components {
2523
2967
  */
2524
2968
  "size": PopoverSize;
2525
2969
  /**
2526
- * If `true`, the popover will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
2970
+ * The theme determines the visual appearance of the component.
2971
+ */
2972
+ "theme"?: "ios" | "md" | "ionic";
2973
+ /**
2974
+ * If `true`, the popover will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
2527
2975
  * @default false
2528
2976
  */
2529
2977
  "translucent": boolean;
@@ -2548,7 +2996,7 @@ export namespace Components {
2548
2996
  */
2549
2997
  "color"?: Color;
2550
2998
  /**
2551
- * The mode determines which platform styles to use.
2999
+ * The mode determines the platform behaviors of the component.
2552
3000
  */
2553
3001
  "mode"?: "ios" | "md";
2554
3002
  /**
@@ -2556,6 +3004,14 @@ export namespace Components {
2556
3004
  * @default false
2557
3005
  */
2558
3006
  "reversed": boolean;
3007
+ /**
3008
+ * Set to `"round"` for a progress bar with rounded corners, or `"rectangular"` for a progress bar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
3009
+ */
3010
+ "shape"?: 'round' | 'rectangular';
3011
+ /**
3012
+ * The theme determines the visual appearance of the component.
3013
+ */
3014
+ "theme"?: "ios" | "md" | "ionic";
2559
3015
  /**
2560
3016
  * The state of the progress bar, based on if the time the process takes is known or not. Default options are: `"determinate"` (no animation), `"indeterminate"` (animate from left to right).
2561
3017
  * @default 'determinate'
@@ -2591,7 +3047,7 @@ export namespace Components {
2591
3047
  */
2592
3048
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2593
3049
  /**
2594
- * The mode determines which platform styles to use.
3050
+ * The mode determines the platform behaviors of the component.
2595
3051
  */
2596
3052
  "mode"?: "ios" | "md";
2597
3053
  /**
@@ -2601,6 +3057,10 @@ export namespace Components {
2601
3057
  "name": string;
2602
3058
  "setButtonTabindex": (value: number) => Promise<void>;
2603
3059
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
3060
+ /**
3061
+ * The theme determines the visual appearance of the component.
3062
+ */
3063
+ "theme"?: "ios" | "md" | "ionic";
2604
3064
  /**
2605
3065
  * the value of the radio.
2606
3066
  */
@@ -2624,12 +3084,21 @@ export namespace Components {
2624
3084
  * The helper text to display at the top of the radio group.
2625
3085
  */
2626
3086
  "helperText"?: string;
3087
+ /**
3088
+ * The mode determines the platform behaviors of the component.
3089
+ */
3090
+ "mode"?: "ios" | "md";
2627
3091
  /**
2628
3092
  * The name of the control, which is submitted with the form data.
2629
3093
  * @default this.inputId
2630
3094
  */
2631
3095
  "name": string;
2632
3096
  "setFocus": () => Promise<void>;
3097
+ /**
3098
+ * The theme determines the visual appearance of the component.
3099
+ */
3100
+ "theme"?: "ios" | "md" | "ionic";
3101
+ "updateRadiosTabindex": () => Promise<void>;
2633
3102
  /**
2634
3103
  * the value of the radio group.
2635
3104
  */
@@ -2678,7 +3147,7 @@ export namespace Components {
2678
3147
  */
2679
3148
  "min": number;
2680
3149
  /**
2681
- * The mode determines which platform styles to use.
3150
+ * The mode determines the platform behaviors of the component.
2682
3151
  */
2683
3152
  "mode"?: "ios" | "md";
2684
3153
  /**
@@ -2706,6 +3175,10 @@ export namespace Components {
2706
3175
  * @default 1
2707
3176
  */
2708
3177
  "step": number;
3178
+ /**
3179
+ * The theme determines the visual appearance of the component.
3180
+ */
3181
+ "theme"?: "ios" | "md" | "ionic";
2709
3182
  /**
2710
3183
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2711
3184
  * @default true
@@ -2741,7 +3214,7 @@ export namespace Components {
2741
3214
  */
2742
3215
  "getProgress": () => Promise<number>;
2743
3216
  /**
2744
- * The mode determines which platform styles to use.
3217
+ * The mode determines the platform behaviors of the component.
2745
3218
  */
2746
3219
  "mode"?: "ios" | "md";
2747
3220
  /**
@@ -2764,8 +3237,16 @@ export namespace Components {
2764
3237
  * @default '280ms'
2765
3238
  */
2766
3239
  "snapbackDuration": string;
3240
+ /**
3241
+ * The theme determines the visual appearance of the component.
3242
+ */
3243
+ "theme"?: "ios" | "md" | "ionic";
2767
3244
  }
2768
3245
  interface IonRefresherContent {
3246
+ /**
3247
+ * The mode determines the platform behaviors of the component.
3248
+ */
3249
+ "mode"?: "ios" | "md";
2769
3250
  /**
2770
3251
  * A static icon or a spinner to display when you begin to pull down. A spinner name can be provided to gradually show tick marks when pulling down on iOS devices.
2771
3252
  */
@@ -2782,8 +3263,20 @@ export namespace Components {
2782
3263
  * The text you want to display when performing a refresh. `refreshingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
2783
3264
  */
2784
3265
  "refreshingText"?: string | IonicSafeString;
3266
+ /**
3267
+ * The theme determines the visual appearance of the component.
3268
+ */
3269
+ "theme"?: "ios" | "md" | "ionic";
2785
3270
  }
2786
3271
  interface IonReorder {
3272
+ /**
3273
+ * The mode determines the platform behaviors of the component.
3274
+ */
3275
+ "mode"?: "ios" | "md";
3276
+ /**
3277
+ * The theme determines the visual appearance of the component.
3278
+ */
3279
+ "theme"?: "ios" | "md" | "ionic";
2787
3280
  }
2788
3281
  interface IonReorderGroup {
2789
3282
  /**
@@ -2796,6 +3289,14 @@ export namespace Components {
2796
3289
  * @default true
2797
3290
  */
2798
3291
  "disabled": boolean;
3292
+ /**
3293
+ * The mode determines the platform behaviors of the component.
3294
+ */
3295
+ "mode"?: "ios" | "md";
3296
+ /**
3297
+ * The theme determines the visual appearance of the component.
3298
+ */
3299
+ "theme"?: "ios" | "md" | "ionic";
2799
3300
  }
2800
3301
  interface IonRippleEffect {
2801
3302
  /**
@@ -2804,6 +3305,14 @@ export namespace Components {
2804
3305
  * @param y The vertical coordinate of where the ripple should start.
2805
3306
  */
2806
3307
  "addRipple": (x: number, y: number) => Promise<() => void>;
3308
+ /**
3309
+ * The mode determines the platform behaviors of the component.
3310
+ */
3311
+ "mode"?: "ios" | "md";
3312
+ /**
3313
+ * The theme determines the visual appearance of the component.
3314
+ */
3315
+ "theme"?: "ios" | "md" | "ionic";
2807
3316
  /**
2808
3317
  * Sets the type of ripple-effect: - `bounded`: the ripple effect expands from the user's click position - `unbounded`: the ripple effect expands from the center of the button and overflows the container. NOTE: Surfaces for bounded ripples should have the overflow property set to hidden, while surfaces for unbounded ripples should have it set to visible.
2809
3318
  * @default 'bounded'
@@ -2827,6 +3336,14 @@ export namespace Components {
2827
3336
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2828
3337
  */
2829
3338
  "componentProps"?: { [key: string]: any };
3339
+ /**
3340
+ * The mode determines the platform behaviors of the component.
3341
+ */
3342
+ "mode"?: "ios" | "md";
3343
+ /**
3344
+ * The theme determines the visual appearance of the component.
3345
+ */
3346
+ "theme"?: "ios" | "md" | "ionic";
2830
3347
  /**
2831
3348
  * Relative path that needs to match in order for this route to apply. Accepts paths similar to expressjs so that you can define parameters in the url /foo/:bar where bar would be available in incoming props.
2832
3349
  * @default ''
@@ -2849,6 +3366,10 @@ export namespace Components {
2849
3366
  */
2850
3367
  "back": () => Promise<void>;
2851
3368
  "canTransition": () => Promise<string | boolean>;
3369
+ /**
3370
+ * The mode determines the platform behaviors of the component.
3371
+ */
3372
+ "mode"?: "ios" | "md";
2852
3373
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2853
3374
  "printDebug": () => Promise<void>;
2854
3375
  /**
@@ -2863,6 +3384,10 @@ export namespace Components {
2863
3384
  * @default '/'
2864
3385
  */
2865
3386
  "root": string;
3387
+ /**
3388
+ * The theme determines the visual appearance of the component.
3389
+ */
3390
+ "theme"?: "ios" | "md" | "ionic";
2866
3391
  /**
2867
3392
  * The router can work in two "modes": - With hash: `/index.html#/path/to/page` - Without hash: `/path/to/page` Using one or another might depend in the requirements of your app and/or where it's deployed. Usually "hash-less" navigation works better for SEO and it's more user friendly too, but it might requires additional server-side configuration in order to properly work. On the other side hash-navigation is much easier to deploy, it even works over the file protocol. By default, this property is `true`, change to `false` to allow hash-less URLs.
2868
3393
  * @default true
@@ -2878,6 +3403,10 @@ export namespace Components {
2878
3403
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2879
3404
  */
2880
3405
  "href": string | undefined;
3406
+ /**
3407
+ * The mode determines the platform behaviors of the component.
3408
+ */
3409
+ "mode"?: "ios" | "md";
2881
3410
  /**
2882
3411
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
2883
3412
  */
@@ -2895,6 +3424,10 @@ export namespace Components {
2895
3424
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2896
3425
  */
2897
3426
  "target": string | undefined;
3427
+ /**
3428
+ * The theme determines the visual appearance of the component.
3429
+ */
3430
+ "theme"?: "ios" | "md" | "ionic";
2898
3431
  }
2899
3432
  interface IonRouterOutlet {
2900
3433
  /**
@@ -2910,14 +3443,26 @@ export namespace Components {
2910
3443
  "delegate"?: FrameworkDelegate;
2911
3444
  "getRouteId": () => Promise<RouteID | undefined>;
2912
3445
  /**
2913
- * The mode determines which platform styles to use.
3446
+ * The mode determines the platform behaviors of the component.
2914
3447
  * @default getIonMode(this)
2915
3448
  */
2916
3449
  "mode": "ios" | "md";
2917
3450
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2918
3451
  "swipeHandler"?: SwipeGestureHandler;
3452
+ /**
3453
+ * The theme determines the visual appearance of the component.
3454
+ */
3455
+ "theme"?: "ios" | "md" | "ionic";
2919
3456
  }
2920
3457
  interface IonRow {
3458
+ /**
3459
+ * The mode determines the platform behaviors of the component.
3460
+ */
3461
+ "mode"?: "ios" | "md";
3462
+ /**
3463
+ * The theme determines the visual appearance of the component.
3464
+ */
3465
+ "theme"?: "ios" | "md" | "ionic";
2921
3466
  }
2922
3467
  interface IonSearchbar {
2923
3468
  /**
@@ -2941,17 +3486,16 @@ export namespace Components {
2941
3486
  */
2942
3487
  "autocorrect": 'on' | 'off';
2943
3488
  /**
2944
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
2945
- * @default config.get('backButtonIcon', arrowBackSharp) as string
3489
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2946
3490
  */
2947
- "cancelButtonIcon": string;
3491
+ "cancelButtonIcon"?: string;
2948
3492
  /**
2949
- * Set the cancel button text. Only applies to `ios` mode.
3493
+ * Set the cancel button text. Only available when the theme is `"ios"`.
2950
3494
  * @default 'Cancel'
2951
3495
  */
2952
3496
  "cancelButtonText": string;
2953
3497
  /**
2954
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3498
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2955
3499
  */
2956
3500
  "clearIcon"?: string;
2957
3501
  /**
@@ -2988,7 +3532,7 @@ export namespace Components {
2988
3532
  */
2989
3533
  "minlength"?: number;
2990
3534
  /**
2991
- * The mode determines which platform styles to use.
3535
+ * The mode determines the platform behaviors of the component.
2992
3536
  */
2993
3537
  "mode"?: "ios" | "md";
2994
3538
  /**
@@ -3002,13 +3546,17 @@ export namespace Components {
3002
3546
  */
3003
3547
  "placeholder": string;
3004
3548
  /**
3005
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3549
+ * The icon to use as the search icon. Defaults to `"search-outline"` in the `"ios"` theme and `"search-sharp"` in the `"md"` and `"ionic"` themes. If `false`, no search icon will be displayed.
3006
3550
  */
3007
- "searchIcon"?: string;
3551
+ "searchIcon"?: string | boolean;
3008
3552
  /**
3009
3553
  * Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global `input.focus()`. Developers who wish to focus an input when a page enters should call `setFocus()` in the `ionViewDidEnter()` lifecycle method. Developers who wish to focus an input when an overlay is presented should call `setFocus` after `didPresent` has resolved. See [managing focus](/docs/developing/managing-focus) for more information.
3010
3554
  */
3011
3555
  "setFocus": () => Promise<void>;
3556
+ /**
3557
+ * Set to `"soft"` for a searchbar with slightly rounded corners, `"round"` for a searchbar with fully rounded corners, or `"rectangular"` for a searchbar without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes.
3558
+ */
3559
+ "shape"?: 'soft' | 'round' | 'rectangular';
3012
3560
  /**
3013
3561
  * Sets the behavior for the cancel button. Defaults to `"never"`. Setting to `"focus"` shows the cancel button on focus. Setting to `"never"` hides the cancel button. Setting to `"always"` shows the cancel button regardless of focus state.
3014
3562
  * @default 'never'
@@ -3019,11 +3567,19 @@ export namespace Components {
3019
3567
  * @default 'always'
3020
3568
  */
3021
3569
  "showClearButton": 'never' | 'focus' | 'always';
3570
+ /**
3571
+ * Set to `"large"` for a searchbar with an increase in height, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and `undefined` for all other themes.
3572
+ */
3573
+ "size"?: 'small' | 'medium' | 'large';
3022
3574
  /**
3023
3575
  * If `true`, enable spellcheck on the input.
3024
3576
  * @default false
3025
3577
  */
3026
3578
  "spellcheck": boolean;
3579
+ /**
3580
+ * The theme determines the visual appearance of the component.
3581
+ */
3582
+ "theme"?: "ios" | "md" | "ionic";
3027
3583
  /**
3028
3584
  * Set the type of the input.
3029
3585
  * @default 'search'
@@ -3046,7 +3602,7 @@ export namespace Components {
3046
3602
  */
3047
3603
  "disabled": boolean;
3048
3604
  /**
3049
- * The mode determines which platform styles to use.
3605
+ * The mode determines the platform behaviors of the component.
3050
3606
  */
3051
3607
  "mode"?: "ios" | "md";
3052
3608
  /**
@@ -3064,6 +3620,10 @@ export namespace Components {
3064
3620
  * @default true
3065
3621
  */
3066
3622
  "swipeGesture": boolean;
3623
+ /**
3624
+ * The theme determines the visual appearance of the component.
3625
+ */
3626
+ "theme"?: "ios" | "md" | "ionic";
3067
3627
  /**
3068
3628
  * the value of the segment.
3069
3629
  */
@@ -3085,10 +3645,14 @@ export namespace Components {
3085
3645
  */
3086
3646
  "layout"?: SegmentButtonLayout;
3087
3647
  /**
3088
- * The mode determines which platform styles to use.
3648
+ * The mode determines the platform behaviors of the component.
3089
3649
  */
3090
3650
  "mode"?: "ios" | "md";
3091
3651
  "setFocus": () => Promise<void>;
3652
+ /**
3653
+ * The theme determines the visual appearance of the component.
3654
+ */
3655
+ "theme"?: "ios" | "md" | "ionic";
3092
3656
  /**
3093
3657
  * The type of the button.
3094
3658
  * @default 'button'
@@ -3143,11 +3707,11 @@ export namespace Components {
3143
3707
  */
3144
3708
  "errorText"?: string;
3145
3709
  /**
3146
- * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `md` mode will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
3710
+ * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `"md"` theme will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
3147
3711
  */
3148
3712
  "expandedIcon"?: string;
3149
3713
  /**
3150
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
3714
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in the `"md"` theme.
3151
3715
  */
3152
3716
  "fill"?: 'outline' | 'solid';
3153
3717
  /**
@@ -3178,7 +3742,7 @@ export namespace Components {
3178
3742
  */
3179
3743
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
3180
3744
  /**
3181
- * The mode determines which platform styles to use.
3745
+ * The mode determines the platform behaviors of the component.
3182
3746
  */
3183
3747
  "mode"?: "ios" | "md";
3184
3748
  /**
@@ -3215,11 +3779,19 @@ export namespace Components {
3215
3779
  */
3216
3780
  "selectedText"?: string | null;
3217
3781
  /**
3218
- * The shape of the select. If "round" it will have an increased border radius.
3782
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
3219
3783
  */
3220
- "shape"?: 'round';
3784
+ "shape"?: 'soft' | 'round' | 'rectangular';
3221
3785
  /**
3222
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3786
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
3787
+ */
3788
+ "size"?: 'small' | 'medium' | 'large';
3789
+ /**
3790
+ * The theme determines the visual appearance of the component.
3791
+ */
3792
+ "theme"?: "ios" | "md" | "ionic";
3793
+ /**
3794
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
3223
3795
  */
3224
3796
  "toggleIcon"?: string;
3225
3797
  /**
@@ -3246,6 +3818,14 @@ export namespace Components {
3246
3818
  * @default false
3247
3819
  */
3248
3820
  "disabled": boolean;
3821
+ /**
3822
+ * The mode determines the platform behaviors of the component.
3823
+ */
3824
+ "mode"?: "ios" | "md";
3825
+ /**
3826
+ * The theme determines the visual appearance of the component.
3827
+ */
3828
+ "theme"?: "ios" | "md" | "ionic";
3249
3829
  /**
3250
3830
  * The text value of the option.
3251
3831
  */
@@ -3260,6 +3840,10 @@ export namespace Components {
3260
3840
  * The text content of the popover body
3261
3841
  */
3262
3842
  "message"?: string;
3843
+ /**
3844
+ * The mode determines the platform behaviors of the component.
3845
+ */
3846
+ "mode"?: "ios" | "md";
3263
3847
  /**
3264
3848
  * If true, the select accepts multiple values
3265
3849
  */
@@ -3273,6 +3857,10 @@ export namespace Components {
3273
3857
  * The subheader text of the popover
3274
3858
  */
3275
3859
  "subHeader"?: string;
3860
+ /**
3861
+ * The theme determines the visual appearance of the component.
3862
+ */
3863
+ "theme"?: "ios" | "md" | "ionic";
3276
3864
  }
3277
3865
  interface IonSkeletonText {
3278
3866
  /**
@@ -3280,6 +3868,14 @@ export namespace Components {
3280
3868
  * @default false
3281
3869
  */
3282
3870
  "animated": boolean;
3871
+ /**
3872
+ * The mode determines the platform behaviors of the component.
3873
+ */
3874
+ "mode"?: "ios" | "md";
3875
+ /**
3876
+ * The theme determines the visual appearance of the component.
3877
+ */
3878
+ "theme"?: "ios" | "md" | "ionic";
3283
3879
  }
3284
3880
  interface IonSpinner {
3285
3881
  /**
@@ -3290,6 +3886,10 @@ export namespace Components {
3290
3886
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
3291
3887
  */
3292
3888
  "duration"?: number;
3889
+ /**
3890
+ * The mode determines the platform behaviors of the component.
3891
+ */
3892
+ "mode"?: "ios" | "md";
3293
3893
  /**
3294
3894
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
3295
3895
  */
@@ -3299,6 +3899,14 @@ export namespace Components {
3299
3899
  * @default false
3300
3900
  */
3301
3901
  "paused": boolean;
3902
+ /**
3903
+ * Set to `"xsmall"` for the smallest size. Set to `"small"` for a smaller size. Set to `"medium"` for a medium size. Set to `"large"` for a large size. Set to `"xlarge"` for the largest size. Defaults to `"xsmall"` for the `ionic` theme, undefined for all other themes.
3904
+ */
3905
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3906
+ /**
3907
+ * The theme determines the visual appearance of the component.
3908
+ */
3909
+ "theme"?: "ios" | "md" | "ionic";
3302
3910
  }
3303
3911
  interface IonSplitPane {
3304
3912
  /**
@@ -3311,6 +3919,14 @@ export namespace Components {
3311
3919
  */
3312
3920
  "disabled": boolean;
3313
3921
  "isVisible": () => Promise<boolean>;
3922
+ /**
3923
+ * The mode determines the platform behaviors of the component.
3924
+ */
3925
+ "mode"?: "ios" | "md";
3926
+ /**
3927
+ * The theme determines the visual appearance of the component.
3928
+ */
3929
+ "theme"?: "ios" | "md" | "ionic";
3314
3930
  /**
3315
3931
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
3316
3932
  * @default QUERY['lg']
@@ -3327,6 +3943,10 @@ export namespace Components {
3327
3943
  */
3328
3944
  "component"?: ComponentRef;
3329
3945
  "delegate"?: FrameworkDelegate;
3946
+ /**
3947
+ * The mode determines the platform behaviors of the component.
3948
+ */
3949
+ "mode"?: "ios" | "md";
3330
3950
  /**
3331
3951
  * Set the active component for the tab
3332
3952
  */
@@ -3335,6 +3955,10 @@ export namespace Components {
3335
3955
  * A tab id must be provided for each `ion-tab`. It's used internally to reference the selected tab or by the router to switch between them.
3336
3956
  */
3337
3957
  "tab": string;
3958
+ /**
3959
+ * The theme determines the visual appearance of the component.
3960
+ */
3961
+ "theme"?: "ios" | "md" | "ionic";
3338
3962
  }
3339
3963
  interface IonTabBar {
3340
3964
  /**
@@ -3342,15 +3966,28 @@ export namespace Components {
3342
3966
  */
3343
3967
  "color"?: Color;
3344
3968
  /**
3345
- * The mode determines which platform styles to use.
3969
+ * Set to `"compact"` to display a width based on the items inside the tab bar. This value will only work for the `ionic` theme. Set to `"full"` to display a full width tab bar. Defaults to `"full"`.
3970
+ * @default 'full'
3971
+ */
3972
+ "expand": 'compact' | 'full';
3973
+ /**
3974
+ * The mode determines the platform behaviors of the component.
3346
3975
  */
3347
3976
  "mode"?: "ios" | "md";
3348
3977
  /**
3349
3978
  * The selected tab component
3350
3979
  */
3351
- "selectedTab"?: string;
3980
+ "selectedTab"?: string;
3981
+ /**
3982
+ * Set to `"soft"` for a tab bar with slightly rounded corners, `"round"` for a tab bar with fully rounded corners, or `"rectangular"` for a tab bar without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
3983
+ */
3984
+ "shape"?: 'soft' | 'round' | 'rectangular';
3985
+ /**
3986
+ * The theme determines the visual appearance of the component.
3987
+ */
3988
+ "theme"?: "ios" | "md" | "ionic";
3352
3989
  /**
3353
- * If `true`, the tab bar will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
3990
+ * If `true`, the tab bar will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
3354
3991
  * @default false
3355
3992
  */
3356
3993
  "translucent": boolean;
@@ -3374,7 +4011,7 @@ export namespace Components {
3374
4011
  */
3375
4012
  "layout"?: TabButtonLayout;
3376
4013
  /**
3377
- * The mode determines which platform styles to use.
4014
+ * The mode determines the platform behaviors of the component.
3378
4015
  */
3379
4016
  "mode"?: "ios" | "md";
3380
4017
  /**
@@ -3386,6 +4023,10 @@ export namespace Components {
3386
4023
  * @default false
3387
4024
  */
3388
4025
  "selected": boolean;
4026
+ /**
4027
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
4028
+ */
4029
+ "shape"?: 'soft' | 'round' | 'rectangular';
3389
4030
  /**
3390
4031
  * A tab id must be provided for each `ion-tab`. It's used internally to reference the selected tab or by the router to switch between them.
3391
4032
  */
@@ -3394,6 +4035,10 @@ export namespace Components {
3394
4035
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
3395
4036
  */
3396
4037
  "target": string | undefined;
4038
+ /**
4039
+ * The theme determines the visual appearance of the component.
4040
+ */
4041
+ "theme"?: "ios" | "md" | "ionic";
3397
4042
  }
3398
4043
  interface IonTabs {
3399
4044
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -3406,12 +4051,20 @@ export namespace Components {
3406
4051
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3407
4052
  */
3408
4053
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
4054
+ /**
4055
+ * The mode determines the platform behaviors of the component.
4056
+ */
4057
+ "mode"?: "ios" | "md";
3409
4058
  /**
3410
4059
  * Select a tab by the value of its `tab` property or an element reference. This method is only available for vanilla JavaScript projects. The Angular, React, and Vue implementations of tabs are coupled to each framework's router.
3411
4060
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3412
4061
  */
3413
4062
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3414
4063
  "setRouteId": (id: string) => Promise<RouteWrite>;
4064
+ /**
4065
+ * The theme determines the visual appearance of the component.
4066
+ */
4067
+ "theme"?: "ios" | "md" | "ionic";
3415
4068
  /**
3416
4069
  * @default false
3417
4070
  */
@@ -3423,9 +4076,13 @@ export namespace Components {
3423
4076
  */
3424
4077
  "color"?: Color;
3425
4078
  /**
3426
- * The mode determines which platform styles to use.
4079
+ * The mode determines the platform behaviors of the component.
3427
4080
  */
3428
4081
  "mode"?: "ios" | "md";
4082
+ /**
4083
+ * The theme determines the visual appearance of the component.
4084
+ */
4085
+ "theme"?: "ios" | "md" | "ionic";
3429
4086
  }
3430
4087
  interface IonTextarea {
3431
4088
  /**
@@ -3483,7 +4140,7 @@ export namespace Components {
3483
4140
  */
3484
4141
  "errorText"?: string;
3485
4142
  /**
3486
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
4143
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available when the theme is `"md"`.
3487
4144
  */
3488
4145
  "fill"?: 'outline' | 'solid';
3489
4146
  /**
@@ -3516,7 +4173,7 @@ export namespace Components {
3516
4173
  */
3517
4174
  "minlength"?: number;
3518
4175
  /**
3519
- * The mode determines which platform styles to use.
4176
+ * The mode determines the platform behaviors of the component.
3520
4177
  */
3521
4178
  "mode"?: "ios" | "md";
3522
4179
  /**
@@ -3547,14 +4204,23 @@ export namespace Components {
3547
4204
  */
3548
4205
  "setFocus": () => Promise<void>;
3549
4206
  /**
3550
- * The shape of the textarea. If "round" it will have an increased border radius.
4207
+ * Set to `"soft"` for a textarea with slightly rounded corners, `"round"` for a textarea with fully rounded corners, or `"rectangular"` for a textarea without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
4208
+ */
4209
+ "shape"?: 'soft' | 'round' | 'rectangular';
4210
+ /**
4211
+ * The size of the textarea. If "large" it will increase the height of the textarea, while "small" and "medium" provide progressively smaller heights. The default size is "medium". This property only applies to the `"ionic"` theme.
4212
+ * @default 'medium'
3551
4213
  */
3552
- "shape"?: 'round';
4214
+ "size"?: 'small' | 'medium' | 'large';
3553
4215
  /**
3554
4216
  * If `true`, the element will have its spelling and grammar checked.
3555
4217
  * @default false
3556
4218
  */
3557
4219
  "spellcheck": boolean;
4220
+ /**
4221
+ * The theme determines the visual appearance of the component.
4222
+ */
4223
+ "theme"?: "ios" | "md" | "ionic";
3558
4224
  /**
3559
4225
  * The value of the textarea.
3560
4226
  * @default ''
@@ -3566,16 +4232,32 @@ export namespace Components {
3566
4232
  "wrap"?: 'hard' | 'soft' | 'off';
3567
4233
  }
3568
4234
  interface IonThumbnail {
4235
+ /**
4236
+ * The mode determines the platform behaviors of the component.
4237
+ */
4238
+ "mode"?: "ios" | "md";
4239
+ /**
4240
+ * The theme determines the visual appearance of the component.
4241
+ */
4242
+ "theme"?: "ios" | "md" | "ionic";
3569
4243
  }
3570
4244
  interface IonTitle {
3571
4245
  /**
3572
4246
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`. For more information on colors, see [theming](/docs/theming/basics).
3573
4247
  */
3574
4248
  "color"?: Color;
4249
+ /**
4250
+ * The mode determines the platform behaviors of the component.
4251
+ */
4252
+ "mode"?: "ios" | "md";
3575
4253
  /**
3576
4254
  * The size of the toolbar title.
3577
4255
  */
3578
4256
  "size"?: 'large' | 'small';
4257
+ /**
4258
+ * The theme determines the visual appearance of the component.
4259
+ */
4260
+ "theme"?: "ios" | "md" | "ionic";
3579
4261
  }
3580
4262
  interface IonToast {
3581
4263
  /**
@@ -3623,6 +4305,11 @@ export namespace Components {
3623
4305
  * Additional attributes to pass to the toast.
3624
4306
  */
3625
4307
  "htmlAttributes"?: { [key: string]: any };
4308
+ /**
4309
+ * Set to `"bold"` for a toast with vibrant, bold colors or to `"subtle"` for a toast with muted, subtle colors. Only applies to the `ionic` theme.
4310
+ * @default 'subtle'
4311
+ */
4312
+ "hue"?: 'bold' | 'subtle';
3626
4313
  /**
3627
4314
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
3628
4315
  */
@@ -3651,7 +4338,7 @@ export namespace Components {
3651
4338
  */
3652
4339
  "message"?: string | IonicSafeString;
3653
4340
  /**
3654
- * The mode determines which platform styles to use.
4341
+ * The mode determines the platform behaviors of the component.
3655
4342
  */
3656
4343
  "mode"?: "ios" | "md";
3657
4344
  /**
@@ -3676,12 +4363,20 @@ export namespace Components {
3676
4363
  * Present the toast overlay after it has been created.
3677
4364
  */
3678
4365
  "present": () => Promise<void>;
4366
+ /**
4367
+ * Set to `"soft"` for a toast with slightly rounded corners, `"round"` for a toast with fully rounded corners, or `"rectangular"` for a toast without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
4368
+ */
4369
+ "shape"?: 'soft' | 'round' | 'rectangular';
3679
4370
  /**
3680
4371
  * If set to 'vertical', the Toast can be dismissed with a swipe gesture. The swipe direction is determined by the value of the `position` property: `top`: The Toast can be swiped up to dismiss. `bottom`: The Toast can be swiped down to dismiss. `middle`: The Toast can be swiped up or down to dismiss.
3681
4372
  */
3682
4373
  "swipeGesture"?: ToastSwipeGestureDirection;
3683
4374
  /**
3684
- * If `true`, the toast will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
4375
+ * The theme determines the visual appearance of the component.
4376
+ */
4377
+ "theme"?: "ios" | "md" | "ionic";
4378
+ /**
4379
+ * If `true`, the toast will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
3685
4380
  * @default false
3686
4381
  */
3687
4382
  "translucent": boolean;
@@ -3732,7 +4427,7 @@ export namespace Components {
3732
4427
  */
3733
4428
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3734
4429
  /**
3735
- * The mode determines which platform styles to use.
4430
+ * The mode determines the platform behaviors of the component.
3736
4431
  */
3737
4432
  "mode"?: "ios" | "md";
3738
4433
  /**
@@ -3745,6 +4440,10 @@ export namespace Components {
3745
4440
  * @default false
3746
4441
  */
3747
4442
  "required": boolean;
4443
+ /**
4444
+ * The theme determines the visual appearance of the component.
4445
+ */
4446
+ "theme"?: "ios" | "md" | "ionic";
3748
4447
  /**
3749
4448
  * The value of the toggle does not mean if it's checked or not, use the `checked` property for that. The value of a toggle is analogous to the value of a `<input type="checkbox">`, it's only used when the toggle participates in a native `<form>`.
3750
4449
  * @default 'on'
@@ -3757,9 +4456,13 @@ export namespace Components {
3757
4456
  */
3758
4457
  "color"?: Color;
3759
4458
  /**
3760
- * The mode determines which platform styles to use.
4459
+ * The mode determines the platform behaviors of the component.
3761
4460
  */
3762
4461
  "mode"?: "ios" | "md";
4462
+ /**
4463
+ * The theme determines the visual appearance of the component.
4464
+ */
4465
+ "theme"?: "ios" | "md" | "ionic";
3763
4466
  }
3764
4467
  }
3765
4468
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4241,6 +4944,12 @@ declare global {
4241
4944
  prototype: HTMLIonDatetimeButtonElement;
4242
4945
  new (): HTMLIonDatetimeButtonElement;
4243
4946
  };
4947
+ interface HTMLIonDividerElement extends Components.IonDivider, HTMLStencilElement {
4948
+ }
4949
+ var HTMLIonDividerElement: {
4950
+ prototype: HTMLIonDividerElement;
4951
+ new (): HTMLIonDividerElement;
4952
+ };
4244
4953
  interface HTMLIonFabElement extends Components.IonFab, HTMLStencilElement {
4245
4954
  }
4246
4955
  var HTMLIonFabElement: {
@@ -5229,6 +5938,7 @@ declare global {
5229
5938
  "ion-content": HTMLIonContentElement;
5230
5939
  "ion-datetime": HTMLIonDatetimeElement;
5231
5940
  "ion-datetime-button": HTMLIonDatetimeButtonElement;
5941
+ "ion-divider": HTMLIonDividerElement;
5232
5942
  "ion-fab": HTMLIonFabElement;
5233
5943
  "ion-fab-button": HTMLIonFabButtonElement;
5234
5944
  "ion-fab-list": HTMLIonFabListElement;
@@ -5314,7 +6024,7 @@ declare namespace LocalJSX {
5314
6024
  */
5315
6025
  "disabled"?: boolean;
5316
6026
  /**
5317
- * The mode determines which platform styles to use.
6027
+ * The mode determines the platform behaviors of the component.
5318
6028
  */
5319
6029
  "mode"?: "ios" | "md";
5320
6030
  /**
@@ -5322,9 +6032,12 @@ declare namespace LocalJSX {
5322
6032
  * @default false
5323
6033
  */
5324
6034
  "readonly"?: boolean;
6035
+ /**
6036
+ * The theme determines the visual appearance of the component.
6037
+ */
6038
+ "theme"?: "ios" | "md" | "ionic";
5325
6039
  /**
5326
6040
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
5327
- * @default chevronDown
5328
6041
  */
5329
6042
  "toggleIcon"?: string;
5330
6043
  /**
@@ -5355,7 +6068,7 @@ declare namespace LocalJSX {
5355
6068
  */
5356
6069
  "expand"?: 'compact' | 'inset';
5357
6070
  /**
5358
- * The mode determines which platform styles to use.
6071
+ * The mode determines the platform behaviors of the component.
5359
6072
  */
5360
6073
  "mode"?: "ios" | "md";
5361
6074
  /**
@@ -5371,6 +6084,14 @@ declare namespace LocalJSX {
5371
6084
  * @default false
5372
6085
  */
5373
6086
  "readonly"?: boolean;
6087
+ /**
6088
+ * Set to `"soft"` for an accordion group with slightly rounded corners, `"round"` for an accordion group with fully rounded corners, or `"rectangular"` for an accordion group without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes. Only applies when `expand` is set to `"inset"`.
6089
+ */
6090
+ "shape"?: 'soft' | 'round' | 'rectangular';
6091
+ /**
6092
+ * The theme determines the visual appearance of the component.
6093
+ */
6094
+ "theme"?: "ios" | "md" | "ionic";
5374
6095
  /**
5375
6096
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
5376
6097
  */
@@ -5423,7 +6144,7 @@ declare namespace LocalJSX {
5423
6144
  */
5424
6145
  "leaveAnimation"?: AnimationBuilder;
5425
6146
  /**
5426
- * The mode determines which platform styles to use.
6147
+ * The mode determines the platform behaviors of the component.
5427
6148
  */
5428
6149
  "mode"?: "ios" | "md";
5429
6150
  /**
@@ -5463,7 +6184,11 @@ declare namespace LocalJSX {
5463
6184
  */
5464
6185
  "subHeader"?: string;
5465
6186
  /**
5466
- * If `true`, the action sheet will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
6187
+ * The theme determines the visual appearance of the component.
6188
+ */
6189
+ "theme"?: "ios" | "md" | "ionic";
6190
+ /**
6191
+ * If `true`, the action sheet will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
5467
6192
  * @default false
5468
6193
  */
5469
6194
  "translucent"?: boolean;
@@ -5528,7 +6253,7 @@ declare namespace LocalJSX {
5528
6253
  */
5529
6254
  "message"?: string | IonicSafeString;
5530
6255
  /**
5531
- * The mode determines which platform styles to use.
6256
+ * The mode determines the platform behaviors of the component.
5532
6257
  */
5533
6258
  "mode"?: "ios" | "md";
5534
6259
  /**
@@ -5568,7 +6293,11 @@ declare namespace LocalJSX {
5568
6293
  */
5569
6294
  "subHeader"?: string;
5570
6295
  /**
5571
- * If `true`, the alert will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
6296
+ * The theme determines the visual appearance of the component.
6297
+ */
6298
+ "theme"?: "ios" | "md" | "ionic";
6299
+ /**
6300
+ * If `true`, the alert will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
5572
6301
  * @default false
5573
6302
  */
5574
6303
  "translucent"?: boolean;
@@ -5578,8 +6307,37 @@ declare namespace LocalJSX {
5578
6307
  "trigger"?: string | undefined;
5579
6308
  }
5580
6309
  interface IonApp {
6310
+ /**
6311
+ * The mode determines the platform behaviors of the component.
6312
+ */
6313
+ "mode"?: "ios" | "md";
6314
+ /**
6315
+ * The theme determines the visual appearance of the component.
6316
+ */
6317
+ "theme"?: "ios" | "md" | "ionic";
5581
6318
  }
5582
6319
  interface IonAvatar {
6320
+ /**
6321
+ * If `true`, the user cannot interact with the avatar.
6322
+ * @default false
6323
+ */
6324
+ "disabled"?: boolean;
6325
+ /**
6326
+ * The mode determines the platform behaviors of the component.
6327
+ */
6328
+ "mode"?: "ios" | "md";
6329
+ /**
6330
+ * Set to `"soft"` for an avatar with slightly rounded corners, `"round"` for an avatar with fully rounded corners, or `"rectangular"` for an avatar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
6331
+ */
6332
+ "shape"?: 'soft' | 'round' | 'rectangular';
6333
+ /**
6334
+ * Set to `"xxsmall"` for the smallest size. Set to `"xsmall"` for a very small size. Set to `"small"` for a compact size. Set to `"medium"` for the default height and width. Set to `"large"` for a larger size. Set to `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
6335
+ */
6336
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
6337
+ /**
6338
+ * The theme determines the visual appearance of the component.
6339
+ */
6340
+ "theme"?: "ios" | "md" | "ionic";
5583
6341
  }
5584
6342
  interface IonBackButton {
5585
6343
  /**
@@ -5600,7 +6358,7 @@ declare namespace LocalJSX {
5600
6358
  */
5601
6359
  "icon"?: string | null;
5602
6360
  /**
5603
- * The mode determines which platform styles to use.
6361
+ * The mode determines the platform behaviors of the component.
5604
6362
  */
5605
6363
  "mode"?: "ios" | "md";
5606
6364
  /**
@@ -5611,6 +6369,10 @@ declare namespace LocalJSX {
5611
6369
  * The text to display in the back button.
5612
6370
  */
5613
6371
  "text"?: string | null;
6372
+ /**
6373
+ * The theme determines the visual appearance of the component.
6374
+ */
6375
+ "theme"?: "ios" | "md" | "ionic";
5614
6376
  /**
5615
6377
  * The type of the button.
5616
6378
  * @default 'button'
@@ -5618,6 +6380,10 @@ declare namespace LocalJSX {
5618
6380
  "type"?: 'submit' | 'reset' | 'button';
5619
6381
  }
5620
6382
  interface IonBackdrop {
6383
+ /**
6384
+ * The mode determines the platform behaviors of the component.
6385
+ */
6386
+ "mode"?: "ios" | "md";
5621
6387
  /**
5622
6388
  * Emitted when the backdrop is tapped.
5623
6389
  */
@@ -5632,6 +6398,10 @@ declare namespace LocalJSX {
5632
6398
  * @default true
5633
6399
  */
5634
6400
  "tappable"?: boolean;
6401
+ /**
6402
+ * The theme determines the visual appearance of the component.
6403
+ */
6404
+ "theme"?: "ios" | "md" | "ionic";
5635
6405
  /**
5636
6406
  * If `true`, the backdrop will be visible.
5637
6407
  * @default true
@@ -5644,9 +6414,29 @@ declare namespace LocalJSX {
5644
6414
  */
5645
6415
  "color"?: Color;
5646
6416
  /**
5647
- * The mode determines which platform styles to use.
6417
+ * Set to `"bold"` for a badge with vibrant, bold colors or to `"subtle"` for a badge with muted, subtle colors. Only applies to the `ionic` theme.
6418
+ */
6419
+ "hue"?: 'bold' | 'subtle';
6420
+ /**
6421
+ * The mode determines the platform behaviors of the component.
5648
6422
  */
5649
6423
  "mode"?: "ios" | "md";
6424
+ /**
6425
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
6426
+ */
6427
+ "shape"?: 'soft' | 'round | rectangular';
6428
+ /**
6429
+ * Set to `"small"` for a small badge. Set to `"medium"` for a medium badge. Set to `"large"` for a large badge, when it is empty (no text or icon). Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
6430
+ */
6431
+ "size"?: 'small' | 'medium' | 'large';
6432
+ /**
6433
+ * The theme determines the visual appearance of the component.
6434
+ */
6435
+ "theme"?: "ios" | "md" | "ionic";
6436
+ /**
6437
+ * Set to `"top"` to position the badge on top right absolute position of the parent element. Set to `"bottom"` to position the badge on bottom right absolute position of the parent element.
6438
+ */
6439
+ "vertical"?: 'top' | 'bottom';
5650
6440
  }
5651
6441
  interface IonBreadcrumb {
5652
6442
  /**
@@ -5672,7 +6462,7 @@ declare namespace LocalJSX {
5672
6462
  */
5673
6463
  "href"?: string | undefined;
5674
6464
  /**
5675
- * The mode determines which platform styles to use.
6465
+ * The mode determines the platform behaviors of the component.
5676
6466
  */
5677
6467
  "mode"?: "ios" | "md";
5678
6468
  /**
@@ -5704,6 +6494,10 @@ declare namespace LocalJSX {
5704
6494
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5705
6495
  */
5706
6496
  "target"?: string | undefined;
6497
+ /**
6498
+ * The theme determines the visual appearance of the component.
6499
+ */
6500
+ "theme"?: "ios" | "md" | "ionic";
5707
6501
  }
5708
6502
  interface IonBreadcrumbs {
5709
6503
  /**
@@ -5725,13 +6519,17 @@ declare namespace LocalJSX {
5725
6519
  */
5726
6520
  "maxItems"?: number;
5727
6521
  /**
5728
- * The mode determines which platform styles to use.
6522
+ * The mode determines the platform behaviors of the component.
5729
6523
  */
5730
6524
  "mode"?: "ios" | "md";
5731
6525
  /**
5732
6526
  * Emitted when the collapsed indicator is clicked on.
5733
6527
  */
5734
6528
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
6529
+ /**
6530
+ * The theme determines the visual appearance of the component.
6531
+ */
6532
+ "theme"?: "ios" | "md" | "ionic";
5735
6533
  }
5736
6534
  interface IonButton {
5737
6535
  /**
@@ -5757,7 +6555,7 @@ declare namespace LocalJSX {
5757
6555
  */
5758
6556
  "expand"?: 'full' | 'block';
5759
6557
  /**
5760
- * Set to `"clear"` for a transparent button that resembles a flat button, to `"outline"` for a transparent button with a border, or to `"solid"` for a button with a filled background. The default fill is `"solid"` except inside of a toolbar, where the default is `"clear"`.
6558
+ * Set to `"clear"` for a transparent button that resembles a flat button, to `"outline"` for a transparent button with a border, or to `"solid"` for a button with a filled background. The default fill is `"solid"` except when inside of a buttons or datetime component, where the default fill is `"clear"`.
5761
6559
  */
5762
6560
  "fill"?: 'clear' | 'outline' | 'solid' | 'default';
5763
6561
  /**
@@ -5769,7 +6567,7 @@ declare namespace LocalJSX {
5769
6567
  */
5770
6568
  "href"?: string | undefined;
5771
6569
  /**
5772
- * The mode determines which platform styles to use.
6570
+ * The mode determines the platform behaviors of the component.
5773
6571
  */
5774
6572
  "mode"?: "ios" | "md";
5775
6573
  /**
@@ -5794,13 +6592,13 @@ declare namespace LocalJSX {
5794
6592
  */
5795
6593
  "routerDirection"?: RouterDirection;
5796
6594
  /**
5797
- * Set to `"round"` for a button with more rounded corners.
6595
+ * Set to `"soft"` for a button with slightly rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular"` for a button without rounded corners. Defaults to `"soft"` for the `"ios"` theme and `"round"` for all other themes.
5798
6596
  */
5799
- "shape"?: 'round';
6597
+ "shape"?: 'soft' | 'round' | 'rectangular';
5800
6598
  /**
5801
- * Set to `"small"` for a button with less height and padding, to `"default"` for a button with the default height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
6599
+ * Set to `"small"` for a button with less height and padding, to `"medium"` for a button with the medium height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
5802
6600
  */
5803
- "size"?: 'small' | 'default' | 'large';
6601
+ "size"?: 'small' | 'default' | 'medium' | 'large';
5804
6602
  /**
5805
6603
  * If `true`, activates a button with a heavier font weight.
5806
6604
  * @default false
@@ -5810,6 +6608,10 @@ declare namespace LocalJSX {
5810
6608
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5811
6609
  */
5812
6610
  "target"?: string | undefined;
6611
+ /**
6612
+ * The theme determines the visual appearance of the component.
6613
+ */
6614
+ "theme"?: "ios" | "md" | "ionic";
5813
6615
  /**
5814
6616
  * The type of the button.
5815
6617
  * @default 'button'
@@ -5818,10 +6620,18 @@ declare namespace LocalJSX {
5818
6620
  }
5819
6621
  interface IonButtons {
5820
6622
  /**
5821
- * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in `ios` mode with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
6623
+ * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in the `ios` theme with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
5822
6624
  * @default false
5823
6625
  */
5824
6626
  "collapse"?: boolean;
6627
+ /**
6628
+ * The mode determines the platform behaviors of the component.
6629
+ */
6630
+ "mode"?: "ios" | "md";
6631
+ /**
6632
+ * The theme determines the visual appearance of the component.
6633
+ */
6634
+ "theme"?: "ios" | "md" | "ionic";
5825
6635
  }
5826
6636
  interface IonCard {
5827
6637
  /**
@@ -5847,7 +6657,7 @@ declare namespace LocalJSX {
5847
6657
  */
5848
6658
  "href"?: string | undefined;
5849
6659
  /**
5850
- * The mode determines which platform styles to use.
6660
+ * The mode determines the platform behaviors of the component.
5851
6661
  */
5852
6662
  "mode"?: "ios" | "md";
5853
6663
  /**
@@ -5863,10 +6673,19 @@ declare namespace LocalJSX {
5863
6673
  * @default 'forward'
5864
6674
  */
5865
6675
  "routerDirection"?: RouterDirection;
6676
+ /**
6677
+ * Set to `"soft"` for a card with slightly rounded corners, `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners. Defaults to `"round"`.
6678
+ * @default 'round'
6679
+ */
6680
+ "shape"?: 'soft' | 'round' | 'rectangular';
5866
6681
  /**
5867
6682
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5868
6683
  */
5869
6684
  "target"?: string | undefined;
6685
+ /**
6686
+ * The theme determines the visual appearance of the component.
6687
+ */
6688
+ "theme"?: "ios" | "md" | "ionic";
5870
6689
  /**
5871
6690
  * The type of the button. Only used when an `onclick` or `button` property is present.
5872
6691
  * @default 'button'
@@ -5875,9 +6694,13 @@ declare namespace LocalJSX {
5875
6694
  }
5876
6695
  interface IonCardContent {
5877
6696
  /**
5878
- * The mode determines which platform styles to use.
6697
+ * The mode determines the platform behaviors of the component.
5879
6698
  */
5880
6699
  "mode"?: "ios" | "md";
6700
+ /**
6701
+ * The theme determines the visual appearance of the component.
6702
+ */
6703
+ "theme"?: "ios" | "md" | "ionic";
5881
6704
  }
5882
6705
  interface IonCardHeader {
5883
6706
  /**
@@ -5885,11 +6708,15 @@ declare namespace LocalJSX {
5885
6708
  */
5886
6709
  "color"?: Color;
5887
6710
  /**
5888
- * The mode determines which platform styles to use.
6711
+ * The mode determines the platform behaviors of the component.
5889
6712
  */
5890
6713
  "mode"?: "ios" | "md";
5891
6714
  /**
5892
- * If `true`, the card header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
6715
+ * The theme determines the visual appearance of the component.
6716
+ */
6717
+ "theme"?: "ios" | "md" | "ionic";
6718
+ /**
6719
+ * If `true`, the card header will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
5893
6720
  * @default false
5894
6721
  */
5895
6722
  "translucent"?: boolean;
@@ -5900,9 +6727,13 @@ declare namespace LocalJSX {
5900
6727
  */
5901
6728
  "color"?: Color;
5902
6729
  /**
5903
- * The mode determines which platform styles to use.
6730
+ * The mode determines the platform behaviors of the component.
5904
6731
  */
5905
6732
  "mode"?: "ios" | "md";
6733
+ /**
6734
+ * The theme determines the visual appearance of the component.
6735
+ */
6736
+ "theme"?: "ios" | "md" | "ionic";
5906
6737
  }
5907
6738
  interface IonCardTitle {
5908
6739
  /**
@@ -5910,9 +6741,13 @@ declare namespace LocalJSX {
5910
6741
  */
5911
6742
  "color"?: Color;
5912
6743
  /**
5913
- * The mode determines which platform styles to use.
6744
+ * The mode determines the platform behaviors of the component.
5914
6745
  */
5915
6746
  "mode"?: "ios" | "md";
6747
+ /**
6748
+ * The theme determines the visual appearance of the component.
6749
+ */
6750
+ "theme"?: "ios" | "md" | "ionic";
5916
6751
  }
5917
6752
  interface IonCheckbox {
5918
6753
  /**
@@ -5956,7 +6791,7 @@ declare namespace LocalJSX {
5956
6791
  */
5957
6792
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5958
6793
  /**
5959
- * The mode determines which platform styles to use.
6794
+ * The mode determines the platform behaviors of the component.
5960
6795
  */
5961
6796
  "mode"?: "ios" | "md";
5962
6797
  /**
@@ -5969,7 +6804,7 @@ declare namespace LocalJSX {
5969
6804
  */
5970
6805
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5971
6806
  /**
5972
- * Emitted when the checked property has changed as a result of a user action such as a click. This event will not emit when programmatically setting the `checked` property.
6807
+ * Emitted when the checked property has changed as a result of a user action such as a click. This event will not emit when programmatically setting the `checked` property.
5973
6808
  */
5974
6809
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5975
6810
  /**
@@ -5981,6 +6816,19 @@ declare namespace LocalJSX {
5981
6816
  * @default false
5982
6817
  */
5983
6818
  "required"?: boolean;
6819
+ /**
6820
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6821
+ * @default 'soft'
6822
+ */
6823
+ "shape"?: 'soft' | 'rectangular';
6824
+ /**
6825
+ * Set to `"small"` for a checkbox with less height and padding.
6826
+ */
6827
+ "size"?: 'small';
6828
+ /**
6829
+ * The theme determines the visual appearance of the component.
6830
+ */
6831
+ "theme"?: "ios" | "md" | "ionic";
5984
6832
  /**
5985
6833
  * The value of the checkbox does not mean if it's checked or not, use the `checked` property for that. The value of a checkbox is analogous to the value of an `<input type="checkbox">`, it's only used when the checkbox participates in a native `<form>`.
5986
6834
  * @default 'on'
@@ -5998,7 +6846,12 @@ declare namespace LocalJSX {
5998
6846
  */
5999
6847
  "disabled"?: boolean;
6000
6848
  /**
6001
- * The mode determines which platform styles to use.
6849
+ * Set to `"bold"` for a chip with vibrant, bold colors or to `"subtle"` for a chip with muted, subtle colors. Only applies to the `ionic` theme.
6850
+ * @default 'subtle'
6851
+ */
6852
+ "hue"?: 'bold' | 'subtle';
6853
+ /**
6854
+ * The mode determines the platform behaviors of the component.
6002
6855
  */
6003
6856
  "mode"?: "ios" | "md";
6004
6857
  /**
@@ -6006,8 +6859,24 @@ declare namespace LocalJSX {
6006
6859
  * @default false
6007
6860
  */
6008
6861
  "outline"?: boolean;
6862
+ /**
6863
+ * Set to `"soft"` for a chip with slightly rounded corners, `"round"` for a chip with fully rounded corners, or `"rectangular"` for a chip without rounded corners. Defaults to `"round"` for the `"ionic"` theme and `"soft"` for all other themes.
6864
+ */
6865
+ "shape"?: 'soft' | 'round' | 'rectangular';
6866
+ /**
6867
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6868
+ */
6869
+ "size"?: 'small' | 'large';
6870
+ /**
6871
+ * The theme determines the visual appearance of the component.
6872
+ */
6873
+ "theme"?: "ios" | "md" | "ionic";
6009
6874
  }
6010
6875
  interface IonCol {
6876
+ /**
6877
+ * The mode determines the platform behaviors of the component.
6878
+ */
6879
+ "mode"?: "ios" | "md";
6011
6880
  /**
6012
6881
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
6013
6882
  */
@@ -6032,52 +6901,88 @@ declare namespace LocalJSX {
6032
6901
  * The amount to offset the column for xs screens, in terms of how many columns it should shift to the end of the total available.
6033
6902
  */
6034
6903
  "offsetXs"?: string;
6904
+ /**
6905
+ * The order of the column, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6906
+ */
6907
+ "order"?: string;
6908
+ /**
6909
+ * The order of the column for lg screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6910
+ */
6911
+ "orderLg"?: string;
6912
+ /**
6913
+ * The order of the column for md screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6914
+ */
6915
+ "orderMd"?: string;
6916
+ /**
6917
+ * The order of the column for sm screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6918
+ */
6919
+ "orderSm"?: string;
6920
+ /**
6921
+ * The order of the column for xl screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6922
+ */
6923
+ "orderXl"?: string;
6924
+ /**
6925
+ * The order of the column for xs screens, in terms of where the column should position itself in the columns renderer. If no value is passed, the column order implicit value will be the order in the html structure.
6926
+ */
6927
+ "orderXs"?: string;
6035
6928
  /**
6036
6929
  * The amount to pull the column, in terms of how many columns it should shift to the start of the total available.
6930
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6037
6931
  */
6038
6932
  "pull"?: string;
6039
6933
  /**
6040
6934
  * The amount to pull the column for lg screens, in terms of how many columns it should shift to the start of the total available.
6935
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6041
6936
  */
6042
6937
  "pullLg"?: string;
6043
6938
  /**
6044
6939
  * The amount to pull the column for md screens, in terms of how many columns it should shift to the start of the total available.
6940
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6045
6941
  */
6046
6942
  "pullMd"?: string;
6047
6943
  /**
6048
6944
  * The amount to pull the column for sm screens, in terms of how many columns it should shift to the start of the total available.
6945
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6049
6946
  */
6050
6947
  "pullSm"?: string;
6051
6948
  /**
6052
6949
  * The amount to pull the column for xl screens, in terms of how many columns it should shift to the start of the total available.
6950
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6053
6951
  */
6054
6952
  "pullXl"?: string;
6055
6953
  /**
6056
6954
  * The amount to pull the column for xs screens, in terms of how many columns it should shift to the start of the total available.
6955
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6057
6956
  */
6058
6957
  "pullXs"?: string;
6059
6958
  /**
6060
6959
  * The amount to push the column, in terms of how many columns it should shift to the end of the total available.
6960
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6061
6961
  */
6062
6962
  "push"?: string;
6063
6963
  /**
6064
6964
  * The amount to push the column for lg screens, in terms of how many columns it should shift to the end of the total available.
6965
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6065
6966
  */
6066
6967
  "pushLg"?: string;
6067
6968
  /**
6068
6969
  * The amount to push the column for md screens, in terms of how many columns it should shift to the end of the total available.
6970
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6069
6971
  */
6070
6972
  "pushMd"?: string;
6071
6973
  /**
6072
6974
  * The amount to push the column for sm screens, in terms of how many columns it should shift to the end of the total available.
6975
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6073
6976
  */
6074
6977
  "pushSm"?: string;
6075
6978
  /**
6076
6979
  * The amount to push the column for xl screens, in terms of how many columns it should shift to the end of the total available.
6980
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6077
6981
  */
6078
6982
  "pushXl"?: string;
6079
6983
  /**
6080
6984
  * The amount to push the column for xs screens, in terms of how many columns it should shift to the end of the total available.
6985
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6081
6986
  */
6082
6987
  "pushXs"?: string;
6083
6988
  /**
@@ -6104,6 +7009,10 @@ declare namespace LocalJSX {
6104
7009
  * The size of the column for xs screens, in terms of how many columns it should take up out of the total available. If `"auto"` is passed, the column will be the size of its content.
6105
7010
  */
6106
7011
  "sizeXs"?: string;
7012
+ /**
7013
+ * The theme determines the visual appearance of the component.
7014
+ */
7015
+ "theme"?: "ios" | "md" | "ionic";
6107
7016
  }
6108
7017
  interface IonContent {
6109
7018
  /**
@@ -6124,6 +7033,10 @@ declare namespace LocalJSX {
6124
7033
  * @default false
6125
7034
  */
6126
7035
  "fullscreen"?: boolean;
7036
+ /**
7037
+ * The mode determines the platform behaviors of the component.
7038
+ */
7039
+ "mode"?: "ios" | "md";
6127
7040
  /**
6128
7041
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
6129
7042
  */
@@ -6151,6 +7064,10 @@ declare namespace LocalJSX {
6151
7064
  * @default true
6152
7065
  */
6153
7066
  "scrollY"?: boolean;
7067
+ /**
7068
+ * The theme determines the visual appearance of the component.
7069
+ */
7070
+ "theme"?: "ios" | "md" | "ionic";
6154
7071
  }
6155
7072
  interface IonDatetime {
6156
7073
  /**
@@ -6225,7 +7142,7 @@ declare namespace LocalJSX {
6225
7142
  */
6226
7143
  "minuteValues"?: number[] | number | string;
6227
7144
  /**
6228
- * The mode determines which platform styles to use.
7145
+ * The mode determines the platform behaviors of the component.
6229
7146
  */
6230
7147
  "mode"?: "ios" | "md";
6231
7148
  /**
@@ -6303,6 +7220,10 @@ declare namespace LocalJSX {
6303
7220
  * @default 'fixed'
6304
7221
  */
6305
7222
  "size"?: 'cover' | 'fixed';
7223
+ /**
7224
+ * The theme determines the visual appearance of the component.
7225
+ */
7226
+ "theme"?: "ios" | "md" | "ionic";
6306
7227
  /**
6307
7228
  * A callback used to format the header text that shows how many dates are selected. Only used if there are 0 or more than 1 selected (i.e. unused for exactly 1). By default, the header text is set to "numberOfDates days". See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
6308
7229
  */
@@ -6332,9 +7253,25 @@ declare namespace LocalJSX {
6332
7253
  */
6333
7254
  "disabled"?: boolean;
6334
7255
  /**
6335
- * The mode determines which platform styles to use.
7256
+ * The mode determines the platform behaviors of the component.
6336
7257
  */
6337
7258
  "mode"?: "ios" | "md";
7259
+ /**
7260
+ * The theme determines the visual appearance of the component.
7261
+ */
7262
+ "theme"?: "ios" | "md" | "ionic";
7263
+ }
7264
+ interface IonDivider {
7265
+ /**
7266
+ * If `true`, the divider will have horizontal margins By default, it's `false`
7267
+ * @default false
7268
+ */
7269
+ "inset"?: boolean;
7270
+ /**
7271
+ * Set to `"xxsmall"` for the smallest spacing. Set to "xsmall" for very small spacing. Set to `"small"` for small spacing. Set to "medium" for medium spacing. Set to "large" for large spacing. Set to `"xlarge"` for the largest spacing. Defaults to `"medium"`.
7272
+ * @default 'medium'
7273
+ */
7274
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
6338
7275
  }
6339
7276
  interface IonFab {
6340
7277
  /**
@@ -6351,6 +7288,14 @@ declare namespace LocalJSX {
6351
7288
  * Where to align the fab horizontally in the viewport.
6352
7289
  */
6353
7290
  "horizontal"?: 'start' | 'end' | 'center';
7291
+ /**
7292
+ * The mode determines the platform behaviors of the component.
7293
+ */
7294
+ "mode"?: "ios" | "md";
7295
+ /**
7296
+ * The theme determines the visual appearance of the component.
7297
+ */
7298
+ "theme"?: "ios" | "md" | "ionic";
6354
7299
  /**
6355
7300
  * Where to align the fab vertically in the viewport.
6356
7301
  */
@@ -6364,7 +7309,6 @@ declare namespace LocalJSX {
6364
7309
  "activated"?: boolean;
6365
7310
  /**
6366
7311
  * The icon name to use for the close icon. This will appear when the fab button is pressed. Only applies if it is the main button inside of a fab containing a fab list.
6367
- * @default close
6368
7312
  */
6369
7313
  "closeIcon"?: string;
6370
7314
  /**
@@ -6385,7 +7329,7 @@ declare namespace LocalJSX {
6385
7329
  */
6386
7330
  "href"?: string | undefined;
6387
7331
  /**
6388
- * The mode determines which platform styles to use.
7332
+ * The mode determines the platform behaviors of the component.
6389
7333
  */
6390
7334
  "mode"?: "ios" | "md";
6391
7335
  /**
@@ -6423,7 +7367,11 @@ declare namespace LocalJSX {
6423
7367
  */
6424
7368
  "target"?: string | undefined;
6425
7369
  /**
6426
- * If `true`, the fab button will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
7370
+ * The theme determines the visual appearance of the component.
7371
+ */
7372
+ "theme"?: "ios" | "md" | "ionic";
7373
+ /**
7374
+ * If `true`, the fab button will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
6427
7375
  * @default false
6428
7376
  */
6429
7377
  "translucent"?: boolean;
@@ -6439,23 +7387,35 @@ declare namespace LocalJSX {
6439
7387
  * @default false
6440
7388
  */
6441
7389
  "activated"?: boolean;
7390
+ /**
7391
+ * The mode determines the platform behaviors of the component.
7392
+ */
7393
+ "mode"?: "ios" | "md";
6442
7394
  /**
6443
7395
  * The side the fab list will show on relative to the main fab button.
6444
7396
  * @default 'bottom'
6445
7397
  */
6446
7398
  "side"?: 'start' | 'end' | 'top' | 'bottom';
7399
+ /**
7400
+ * The theme determines the visual appearance of the component.
7401
+ */
7402
+ "theme"?: "ios" | "md" | "ionic";
6447
7403
  }
6448
7404
  interface IonFooter {
6449
7405
  /**
6450
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
7406
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
6451
7407
  */
6452
7408
  "collapse"?: 'fade';
6453
7409
  /**
6454
- * The mode determines which platform styles to use.
7410
+ * The mode determines the platform behaviors of the component.
6455
7411
  */
6456
7412
  "mode"?: "ios" | "md";
6457
7413
  /**
6458
- * If `true`, the footer will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
7414
+ * The theme determines the visual appearance of the component.
7415
+ */
7416
+ "theme"?: "ios" | "md" | "ionic";
7417
+ /**
7418
+ * If `true`, the footer will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
6459
7419
  * @default false
6460
7420
  */
6461
7421
  "translucent"?: boolean;
@@ -6466,18 +7426,35 @@ declare namespace LocalJSX {
6466
7426
  * @default false
6467
7427
  */
6468
7428
  "fixed"?: boolean;
7429
+ /**
7430
+ * The mode determines the platform behaviors of the component.
7431
+ */
7432
+ "mode"?: "ios" | "md";
7433
+ /**
7434
+ * The theme determines the visual appearance of the component.
7435
+ */
7436
+ "theme"?: "ios" | "md" | "ionic";
6469
7437
  }
6470
7438
  interface IonHeader {
6471
7439
  /**
6472
- * Describes the scroll effect that will be applied to the header. Only applies in iOS mode. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
7440
+ * Describes the scroll effect that will be applied to the header. Only applies when the theme is `"ios"`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
6473
7441
  */
6474
7442
  "collapse"?: 'condense' | 'fade';
6475
7443
  /**
6476
- * The mode determines which platform styles to use.
7444
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
7445
+ * @default false
7446
+ */
7447
+ "divider"?: boolean;
7448
+ /**
7449
+ * The mode determines the platform behaviors of the component.
6477
7450
  */
6478
7451
  "mode"?: "ios" | "md";
6479
7452
  /**
6480
- * If `true`, the header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
7453
+ * The theme determines the visual appearance of the component.
7454
+ */
7455
+ "theme"?: "ios" | "md" | "ionic";
7456
+ /**
7457
+ * If `true`, the header will be translucent. Only applies when the theme is `"ios"` or `"ionic"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
6481
7458
  * @default false
6482
7459
  */
6483
7460
  "translucent"?: boolean;
@@ -6487,6 +7464,10 @@ declare namespace LocalJSX {
6487
7464
  * This attribute defines the alternative text describing the image. Users will see this text displayed if the image URL is wrong, the image is not in one of the supported formats, or if the image is not yet downloaded.
6488
7465
  */
6489
7466
  "alt"?: string;
7467
+ /**
7468
+ * The mode determines the platform behaviors of the component.
7469
+ */
7470
+ "mode"?: "ios" | "md";
6490
7471
  /**
6491
7472
  * Emitted when the img fails to load
6492
7473
  */
@@ -6503,6 +7484,10 @@ declare namespace LocalJSX {
6503
7484
  * The image URL. This attribute is mandatory for the `<img>` element.
6504
7485
  */
6505
7486
  "src"?: string;
7487
+ /**
7488
+ * The theme determines the visual appearance of the component.
7489
+ */
7490
+ "theme"?: "ios" | "md" | "ionic";
6506
7491
  }
6507
7492
  interface IonInfiniteScroll {
6508
7493
  /**
@@ -6510,6 +7495,10 @@ declare namespace LocalJSX {
6510
7495
  * @default false
6511
7496
  */
6512
7497
  "disabled"?: boolean;
7498
+ /**
7499
+ * The mode determines the platform behaviors of the component.
7500
+ */
7501
+ "mode"?: "ios" | "md";
6513
7502
  /**
6514
7503
  * Emitted when the scroll reaches the threshold distance. From within your infinite handler, you must call the infinite scroll's `complete()` method when your async operation has completed.
6515
7504
  */
@@ -6519,6 +7508,15 @@ declare namespace LocalJSX {
6519
7508
  * @default 'bottom'
6520
7509
  */
6521
7510
  "position"?: 'top' | 'bottom';
7511
+ /**
7512
+ * If `true`, the infinite scroll will preserve the scroll position when the content is re-rendered. This is useful when the content is re-rendered with new keys, and the scroll position should be preserved.
7513
+ * @default false
7514
+ */
7515
+ "preserveRerenderScrollPosition"?: boolean;
7516
+ /**
7517
+ * The theme determines the visual appearance of the component.
7518
+ */
7519
+ "theme"?: "ios" | "md" | "ionic";
6522
7520
  /**
6523
7521
  * The threshold distance from the bottom of the content to call the `infinite` output event when scrolled. The threshold value can be either a percent, or in pixels. For example, use the value of `10%` for the `infinite` output event to get called when the user has scrolled 10% from the bottom of the page. Use the value `100px` when the scroll is within 100 pixels from the bottom of the page.
6524
7522
  * @default '15%'
@@ -6534,6 +7532,14 @@ declare namespace LocalJSX {
6534
7532
  * Optional text to display while loading. `loadingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) This property accepts custom HTML as a string. Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
6535
7533
  */
6536
7534
  "loadingText"?: string | IonicSafeString;
7535
+ /**
7536
+ * The mode determines the platform behaviors of the component.
7537
+ */
7538
+ "mode"?: "ios" | "md";
7539
+ /**
7540
+ * The theme determines the visual appearance of the component.
7541
+ */
7542
+ "theme"?: "ios" | "md" | "ionic";
6537
7543
  }
6538
7544
  interface IonInput {
6539
7545
  /**
@@ -6600,7 +7606,7 @@ declare namespace LocalJSX {
6600
7606
  */
6601
7607
  "errorText"?: string;
6602
7608
  /**
6603
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
7609
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available when the theme is `"md"`.
6604
7610
  */
6605
7611
  "fill"?: 'outline' | 'solid';
6606
7612
  /**
@@ -6616,8 +7622,7 @@ declare namespace LocalJSX {
6616
7622
  */
6617
7623
  "label"?: string;
6618
7624
  /**
6619
- * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
6620
- * @default 'start'
7625
+ * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). Defaults to "stacked" for the ionic theme, or "start" for all other themes. In the ionic theme, only the values "stacked" and "floating" are supported.
6621
7626
  */
6622
7627
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6623
7628
  /**
@@ -6637,7 +7642,7 @@ declare namespace LocalJSX {
6637
7642
  */
6638
7643
  "minlength"?: number;
6639
7644
  /**
6640
- * The mode determines which platform styles to use.
7645
+ * The mode determines the platform behaviors of the component.
6641
7646
  */
6642
7647
  "mode"?: "ios" | "md";
6643
7648
  /**
@@ -6684,9 +7689,14 @@ declare namespace LocalJSX {
6684
7689
  */
6685
7690
  "required"?: boolean;
6686
7691
  /**
6687
- * The shape of the input. If "round" it will have an increased border radius.
7692
+ * Set to `"soft"` for an input with slightly rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular"` for an input without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes. Only applies when the fill is set to `"solid"` or `"outline"`.
7693
+ */
7694
+ "shape"?: 'soft' | 'round' | 'rectangular';
7695
+ /**
7696
+ * The size of the input. If "large", it will have an increased height. By default the size is medium. This property only applies to the `"ionic"` theme.
7697
+ * @default 'medium'
6688
7698
  */
6689
- "shape"?: 'round';
7699
+ "size"?: 'medium' | 'large' | 'xlarge';
6690
7700
  /**
6691
7701
  * If `true`, the element will have its spelling and grammar checked.
6692
7702
  * @default false
@@ -6696,6 +7706,10 @@ declare namespace LocalJSX {
6696
7706
  * Works with the min and max attributes to limit the increments at which a value can be set. Possible values are: `"any"` or a positive floating point number.
6697
7707
  */
6698
7708
  "step"?: string;
7709
+ /**
7710
+ * The theme determines the visual appearance of the component.
7711
+ */
7712
+ "theme"?: "ios" | "md" | "ionic";
6699
7713
  /**
6700
7714
  * The type of control to display. The default type is text.
6701
7715
  * @default 'text'
@@ -6727,6 +7741,10 @@ declare namespace LocalJSX {
6727
7741
  * @default 'outline'
6728
7742
  */
6729
7743
  "fill"?: 'outline' | 'solid';
7744
+ /**
7745
+ * The `id` of a `<form>` element to associate this element with.
7746
+ */
7747
+ "form"?: string;
6730
7748
  /**
6731
7749
  * A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`. For numbers (type="number"): "numeric" For text (type="text"): "text"
6732
7750
  */
@@ -6736,6 +7754,14 @@ declare namespace LocalJSX {
6736
7754
  * @default 4
6737
7755
  */
6738
7756
  "length"?: number;
7757
+ /**
7758
+ * The mode determines the platform behaviors of the component.
7759
+ */
7760
+ "mode"?: "ios" | "md";
7761
+ /**
7762
+ * The name of the element, used when submitting an HTML form.
7763
+ */
7764
+ "name"?: string;
6739
7765
  /**
6740
7766
  * Emitted when the input group loses focus.
6741
7767
  */
@@ -6779,6 +7805,10 @@ declare namespace LocalJSX {
6779
7805
  * @default 'medium'
6780
7806
  */
6781
7807
  "size"?: 'small' | 'medium' | 'large';
7808
+ /**
7809
+ * The theme determines the visual appearance of the component.
7810
+ */
7811
+ "theme"?: "ios" | "md" | "ionic";
6782
7812
  /**
6783
7813
  * The type of input allowed in the input boxes.
6784
7814
  * @default 'number'
@@ -6819,12 +7849,11 @@ declare namespace LocalJSX {
6819
7849
  */
6820
7850
  "color"?: Color;
6821
7851
  /**
6822
- * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `mode` is `ios` and an `href` or `button` property is present.
7852
+ * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `theme` is `"ios"` and an `href` or `button` property is present.
6823
7853
  */
6824
7854
  "detail"?: boolean;
6825
7855
  /**
6826
7856
  * The icon to use when `detail` is set to `true`.
6827
- * @default chevronForward
6828
7857
  */
6829
7858
  "detailIcon"?: string;
6830
7859
  /**
@@ -6845,7 +7874,7 @@ declare namespace LocalJSX {
6845
7874
  */
6846
7875
  "lines"?: 'full' | 'inset' | 'none';
6847
7876
  /**
6848
- * The mode determines which platform styles to use.
7877
+ * The mode determines the platform behaviors of the component.
6849
7878
  */
6850
7879
  "mode"?: "ios" | "md";
6851
7880
  /**
@@ -6865,6 +7894,10 @@ declare namespace LocalJSX {
6865
7894
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6866
7895
  */
6867
7896
  "target"?: string | undefined;
7897
+ /**
7898
+ * The theme determines the visual appearance of the component.
7899
+ */
7900
+ "theme"?: "ios" | "md" | "ionic";
6868
7901
  /**
6869
7902
  * The type of the button. Only used when an `onclick` or `button` property is present.
6870
7903
  * @default 'button'
@@ -6877,7 +7910,7 @@ declare namespace LocalJSX {
6877
7910
  */
6878
7911
  "color"?: Color;
6879
7912
  /**
6880
- * The mode determines which platform styles to use.
7913
+ * The mode determines the platform behaviors of the component.
6881
7914
  */
6882
7915
  "mode"?: "ios" | "md";
6883
7916
  /**
@@ -6885,8 +7918,20 @@ declare namespace LocalJSX {
6885
7918
  * @default false
6886
7919
  */
6887
7920
  "sticky"?: boolean;
7921
+ /**
7922
+ * The theme determines the visual appearance of the component.
7923
+ */
7924
+ "theme"?: "ios" | "md" | "ionic";
6888
7925
  }
6889
7926
  interface IonItemGroup {
7927
+ /**
7928
+ * The mode determines the platform behaviors of the component.
7929
+ */
7930
+ "mode"?: "ios" | "md";
7931
+ /**
7932
+ * The theme determines the visual appearance of the component.
7933
+ */
7934
+ "theme"?: "ios" | "md" | "ionic";
6890
7935
  }
6891
7936
  interface IonItemOption {
6892
7937
  /**
@@ -6912,17 +7957,30 @@ declare namespace LocalJSX {
6912
7957
  */
6913
7958
  "href"?: string | undefined;
6914
7959
  /**
6915
- * The mode determines which platform styles to use.
7960
+ * Set to `"bold"` for an option with vibrant, bold colors or to `"subtle"` for an option with muted, subtle colors. Only applies to the `ionic` theme.
7961
+ * @default 'subtle'
7962
+ */
7963
+ "hue"?: 'bold' | 'subtle';
7964
+ /**
7965
+ * The mode determines the platform behaviors of the component.
6916
7966
  */
6917
7967
  "mode"?: "ios" | "md";
6918
7968
  /**
6919
7969
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
6920
7970
  */
6921
7971
  "rel"?: string | undefined;
7972
+ /**
7973
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
7974
+ */
7975
+ "shape"?: 'soft' | 'round' | 'rectangular';
6922
7976
  /**
6923
7977
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6924
7978
  */
6925
7979
  "target"?: string | undefined;
7980
+ /**
7981
+ * The theme determines the visual appearance of the component.
7982
+ */
7983
+ "theme"?: "ios" | "md" | "ionic";
6926
7984
  /**
6927
7985
  * The type of the button.
6928
7986
  * @default 'button'
@@ -6930,6 +7988,10 @@ declare namespace LocalJSX {
6930
7988
  "type"?: 'submit' | 'reset' | 'button';
6931
7989
  }
6932
7990
  interface IonItemOptions {
7991
+ /**
7992
+ * The mode determines the platform behaviors of the component.
7993
+ */
7994
+ "mode"?: "ios" | "md";
6933
7995
  /**
6934
7996
  * Emitted when the item has been fully swiped.
6935
7997
  */
@@ -6939,6 +8001,10 @@ declare namespace LocalJSX {
6939
8001
  * @default 'end'
6940
8002
  */
6941
8003
  "side"?: Side;
8004
+ /**
8005
+ * The theme determines the visual appearance of the component.
8006
+ */
8007
+ "theme"?: "ios" | "md" | "ionic";
6942
8008
  }
6943
8009
  interface IonItemSliding {
6944
8010
  /**
@@ -6946,10 +8012,18 @@ declare namespace LocalJSX {
6946
8012
  * @default false
6947
8013
  */
6948
8014
  "disabled"?: boolean;
8015
+ /**
8016
+ * The mode determines the platform behaviors of the component.
8017
+ */
8018
+ "mode"?: "ios" | "md";
6949
8019
  /**
6950
8020
  * Emitted when the sliding position changes.
6951
8021
  */
6952
8022
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
8023
+ /**
8024
+ * The theme determines the visual appearance of the component.
8025
+ */
8026
+ "theme"?: "ios" | "md" | "ionic";
6953
8027
  }
6954
8028
  interface IonLabel {
6955
8029
  /**
@@ -6957,13 +8031,17 @@ declare namespace LocalJSX {
6957
8031
  */
6958
8032
  "color"?: Color;
6959
8033
  /**
6960
- * The mode determines which platform styles to use.
8034
+ * The mode determines the platform behaviors of the component.
6961
8035
  */
6962
8036
  "mode"?: "ios" | "md";
6963
8037
  /**
6964
8038
  * The position determines where and how the label behaves inside an item.
6965
8039
  */
6966
8040
  "position"?: 'fixed' | 'stacked' | 'floating';
8041
+ /**
8042
+ * The theme determines the visual appearance of the component.
8043
+ */
8044
+ "theme"?: "ios" | "md" | "ionic";
6967
8045
  }
6968
8046
  interface IonList {
6969
8047
  /**
@@ -6976,9 +8054,17 @@ declare namespace LocalJSX {
6976
8054
  */
6977
8055
  "lines"?: 'full' | 'inset' | 'none';
6978
8056
  /**
6979
- * The mode determines which platform styles to use.
8057
+ * The mode determines the platform behaviors of the component.
6980
8058
  */
6981
8059
  "mode"?: "ios" | "md";
8060
+ /**
8061
+ * Set to `"soft"` for slightly rounded corners, `"round"` for fully rounded corners, or `"rectangular"` for no rounded corners. Defaults to `"round"` for the `ionic` theme when inset is `true` defaults to `"rectangular"` for the `ionic` theme when inset is `false`, undefined for all other themes.
8062
+ */
8063
+ "shape"?: 'soft' | 'round' | 'rectangular';
8064
+ /**
8065
+ * The theme determines the visual appearance of the component.
8066
+ */
8067
+ "theme"?: "ios" | "md" | "ionic";
6982
8068
  }
6983
8069
  interface IonListHeader {
6984
8070
  /**
@@ -6990,9 +8076,13 @@ declare namespace LocalJSX {
6990
8076
  */
6991
8077
  "lines"?: 'full' | 'inset' | 'none';
6992
8078
  /**
6993
- * The mode determines which platform styles to use.
8079
+ * The mode determines the platform behaviors of the component.
6994
8080
  */
6995
8081
  "mode"?: "ios" | "md";
8082
+ /**
8083
+ * The theme determines the visual appearance of the component.
8084
+ */
8085
+ "theme"?: "ios" | "md" | "ionic";
6996
8086
  }
6997
8087
  interface IonLoading {
6998
8088
  /**
@@ -7041,7 +8131,7 @@ declare namespace LocalJSX {
7041
8131
  */
7042
8132
  "message"?: string | IonicSafeString;
7043
8133
  /**
7044
- * The mode determines which platform styles to use.
8134
+ * The mode determines the platform behaviors of the component.
7045
8135
  */
7046
8136
  "mode"?: "ios" | "md";
7047
8137
  /**
@@ -7086,7 +8176,11 @@ declare namespace LocalJSX {
7086
8176
  */
7087
8177
  "spinner"?: SpinnerTypes | null;
7088
8178
  /**
7089
- * If `true`, the loading indicator will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
8179
+ * The theme determines the visual appearance of the component.
8180
+ */
8181
+ "theme"?: "ios" | "md" | "ionic";
8182
+ /**
8183
+ * If `true`, the loading indicator will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
7090
8184
  * @default false
7091
8185
  */
7092
8186
  "translucent"?: boolean;
@@ -7114,6 +8208,10 @@ declare namespace LocalJSX {
7114
8208
  * An id for the menu.
7115
8209
  */
7116
8210
  "menuId"?: string;
8211
+ /**
8212
+ * The mode determines the platform behaviors of the component.
8213
+ */
8214
+ "mode"?: "ios" | "md";
7117
8215
  /**
7118
8216
  * Emitted when the menu is closed.
7119
8217
  */
@@ -7140,6 +8238,10 @@ declare namespace LocalJSX {
7140
8238
  * @default true
7141
8239
  */
7142
8240
  "swipeGesture"?: boolean;
8241
+ /**
8242
+ * The theme determines the visual appearance of the component.
8243
+ */
8244
+ "theme"?: "ios" | "md" | "ionic";
7143
8245
  /**
7144
8246
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
7145
8247
  */
@@ -7165,9 +8267,13 @@ declare namespace LocalJSX {
7165
8267
  */
7166
8268
  "menu"?: string;
7167
8269
  /**
7168
- * The mode determines which platform styles to use.
8270
+ * The mode determines the platform behaviors of the component.
7169
8271
  */
7170
8272
  "mode"?: "ios" | "md";
8273
+ /**
8274
+ * The theme determines the visual appearance of the component.
8275
+ */
8276
+ "theme"?: "ios" | "md" | "ionic";
7171
8277
  /**
7172
8278
  * The type of the button.
7173
8279
  * @default 'button'
@@ -7184,6 +8290,14 @@ declare namespace LocalJSX {
7184
8290
  * Optional property that maps to a Menu's `menuId` prop. Can also be `start` or `end` for the menu side. This is used to find the correct menu to toggle. If this property is not used, `ion-menu-toggle` will toggle the first menu that is active.
7185
8291
  */
7186
8292
  "menu"?: string;
8293
+ /**
8294
+ * The mode determines the platform behaviors of the component.
8295
+ */
8296
+ "mode"?: "ios" | "md";
8297
+ /**
8298
+ * The theme determines the visual appearance of the component.
8299
+ */
8300
+ "theme"?: "ios" | "md" | "ionic";
7187
8301
  }
7188
8302
  interface IonModal {
7189
8303
  /**
@@ -7261,7 +8375,7 @@ declare namespace LocalJSX {
7261
8375
  */
7262
8376
  "leaveAnimation"?: AnimationBuilder;
7263
8377
  /**
7264
- * The mode determines which platform styles to use.
8378
+ * The mode determines the platform behaviors of the component.
7265
8379
  */
7266
8380
  "mode"?: "ios" | "md";
7267
8381
  /**
@@ -7316,11 +8430,19 @@ declare namespace LocalJSX {
7316
8430
  * The element that presented the modal. This is used for card presentation effects and for stacking multiple modals on top of each other. Only applies in iOS mode.
7317
8431
  */
7318
8432
  "presentingElement"?: HTMLElement;
8433
+ /**
8434
+ * Set to `"soft"` for a modal with slightly rounded corners, `"round"` for a modal with fully rounded corners, or `"rectangular"` for a modal without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
8435
+ */
8436
+ "shape"?: 'soft' | 'round' | 'rectangular';
7319
8437
  /**
7320
8438
  * If `true`, a backdrop will be displayed behind the modal. This property controls whether or not the backdrop darkens the screen when the modal is presented. It does not control whether or not the backdrop is active or present in the DOM.
7321
8439
  * @default true
7322
8440
  */
7323
8441
  "showBackdrop"?: boolean;
8442
+ /**
8443
+ * The theme determines the visual appearance of the component.
8444
+ */
8445
+ "theme"?: "ios" | "md" | "ionic";
7324
8446
  /**
7325
8447
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
7326
8448
  */
@@ -7333,9 +8455,13 @@ declare namespace LocalJSX {
7333
8455
  */
7334
8456
  "animated"?: boolean;
7335
8457
  /**
7336
- * By default `ion-nav` animates transition between pages based in the mode (ios or material design). However, this property allows to create custom transition using `AnimationBuilder` functions.
8458
+ * By default `ion-nav` animates transition between pages based on the mode ("ios" or "md"). However, this property allows to create custom transition using `AnimationBuilder` functions.
7337
8459
  */
7338
8460
  "animation"?: AnimationBuilder;
8461
+ /**
8462
+ * The mode determines the platform behaviors of the component.
8463
+ */
8464
+ "mode"?: "ios" | "md";
7339
8465
  /**
7340
8466
  * Event fired when the nav has changed components
7341
8467
  */
@@ -7356,6 +8482,10 @@ declare namespace LocalJSX {
7356
8482
  * If the nav component should allow for swipe-to-go-back.
7357
8483
  */
7358
8484
  "swipeGesture"?: boolean;
8485
+ /**
8486
+ * The theme determines the visual appearance of the component.
8487
+ */
8488
+ "theme"?: "ios" | "md" | "ionic";
7359
8489
  }
7360
8490
  interface IonNavLink {
7361
8491
  /**
@@ -7366,6 +8496,10 @@ declare namespace LocalJSX {
7366
8496
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
7367
8497
  */
7368
8498
  "componentProps"?: ComponentProps;
8499
+ /**
8500
+ * The mode determines the platform behaviors of the component.
8501
+ */
8502
+ "mode"?: "ios" | "md";
7369
8503
  /**
7370
8504
  * The transition animation when navigating to another page.
7371
8505
  */
@@ -7375,6 +8509,10 @@ declare namespace LocalJSX {
7375
8509
  * @default 'forward'
7376
8510
  */
7377
8511
  "routerDirection"?: RouterDirection;
8512
+ /**
8513
+ * The theme determines the visual appearance of the component.
8514
+ */
8515
+ "theme"?: "ios" | "md" | "ionic";
7378
8516
  }
7379
8517
  interface IonNote {
7380
8518
  /**
@@ -7382,15 +8520,23 @@ declare namespace LocalJSX {
7382
8520
  */
7383
8521
  "color"?: Color;
7384
8522
  /**
7385
- * The mode determines which platform styles to use.
8523
+ * The mode determines the platform behaviors of the component.
7386
8524
  */
7387
8525
  "mode"?: "ios" | "md";
8526
+ /**
8527
+ * The theme determines the visual appearance of the component.
8528
+ */
8529
+ "theme"?: "ios" | "md" | "ionic";
7388
8530
  }
7389
8531
  interface IonPicker {
7390
8532
  /**
7391
- * The mode determines which platform styles to use.
8533
+ * The mode determines the platform behaviors of the component.
7392
8534
  */
7393
8535
  "mode"?: "ios" | "md";
8536
+ /**
8537
+ * The theme determines the visual appearance of the component.
8538
+ */
8539
+ "theme"?: "ios" | "md" | "ionic";
7394
8540
  }
7395
8541
  interface IonPickerColumn {
7396
8542
  /**
@@ -7404,13 +8550,17 @@ declare namespace LocalJSX {
7404
8550
  */
7405
8551
  "disabled"?: boolean;
7406
8552
  /**
7407
- * The mode determines which platform styles to use.
8553
+ * The mode determines the platform behaviors of the component.
7408
8554
  */
7409
8555
  "mode"?: "ios" | "md";
7410
8556
  /**
7411
8557
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7412
8558
  */
7413
8559
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
8560
+ /**
8561
+ * The theme determines the visual appearance of the component.
8562
+ */
8563
+ "theme"?: "ios" | "md" | "ionic";
7414
8564
  /**
7415
8565
  * The selected option in the picker.
7416
8566
  */
@@ -7427,6 +8577,14 @@ declare namespace LocalJSX {
7427
8577
  * @default false
7428
8578
  */
7429
8579
  "disabled"?: boolean;
8580
+ /**
8581
+ * The mode determines the platform behaviors of the component.
8582
+ */
8583
+ "mode"?: "ios" | "md";
8584
+ /**
8585
+ * The theme determines the visual appearance of the component.
8586
+ */
8587
+ "theme"?: "ios" | "md" | "ionic";
7430
8588
  /**
7431
8589
  * The text value of the option.
7432
8590
  */
@@ -7485,7 +8643,7 @@ declare namespace LocalJSX {
7485
8643
  */
7486
8644
  "leaveAnimation"?: AnimationBuilder;
7487
8645
  /**
7488
- * The mode determines which platform styles to use.
8646
+ * The mode determines the platform behaviors of the component.
7489
8647
  */
7490
8648
  "mode"?: "ios" | "md";
7491
8649
  /**
@@ -7525,6 +8683,10 @@ declare namespace LocalJSX {
7525
8683
  * @default true
7526
8684
  */
7527
8685
  "showBackdrop"?: boolean;
8686
+ /**
8687
+ * The theme determines the visual appearance of the component.
8688
+ */
8689
+ "theme"?: "ios" | "md" | "ionic";
7528
8690
  /**
7529
8691
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
7530
8692
  */
@@ -7538,7 +8700,7 @@ declare namespace LocalJSX {
7538
8700
  }
7539
8701
  interface IonPopover {
7540
8702
  /**
7541
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
8703
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
7542
8704
  */
7543
8705
  "alignment"?: PositionAlign;
7544
8706
  /**
@@ -7547,7 +8709,7 @@ declare namespace LocalJSX {
7547
8709
  */
7548
8710
  "animated"?: boolean;
7549
8711
  /**
7550
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
8712
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
7551
8713
  * @default true
7552
8714
  */
7553
8715
  "arrow"?: boolean;
@@ -7606,7 +8768,7 @@ declare namespace LocalJSX {
7606
8768
  */
7607
8769
  "leaveAnimation"?: AnimationBuilder;
7608
8770
  /**
7609
- * The mode determines which platform styles to use.
8771
+ * The mode determines the platform behaviors of the component.
7610
8772
  */
7611
8773
  "mode"?: "ios" | "md";
7612
8774
  /**
@@ -7662,7 +8824,11 @@ declare namespace LocalJSX {
7662
8824
  */
7663
8825
  "size"?: PopoverSize;
7664
8826
  /**
7665
- * If `true`, the popover will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
8827
+ * The theme determines the visual appearance of the component.
8828
+ */
8829
+ "theme"?: "ios" | "md" | "ionic";
8830
+ /**
8831
+ * If `true`, the popover will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
7666
8832
  * @default false
7667
8833
  */
7668
8834
  "translucent"?: boolean;
@@ -7687,7 +8853,7 @@ declare namespace LocalJSX {
7687
8853
  */
7688
8854
  "color"?: Color;
7689
8855
  /**
7690
- * The mode determines which platform styles to use.
8856
+ * The mode determines the platform behaviors of the component.
7691
8857
  */
7692
8858
  "mode"?: "ios" | "md";
7693
8859
  /**
@@ -7695,6 +8861,14 @@ declare namespace LocalJSX {
7695
8861
  * @default false
7696
8862
  */
7697
8863
  "reversed"?: boolean;
8864
+ /**
8865
+ * Set to `"round"` for a progress bar with rounded corners, or `"rectangular"` for a progress bar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
8866
+ */
8867
+ "shape"?: 'round' | 'rectangular';
8868
+ /**
8869
+ * The theme determines the visual appearance of the component.
8870
+ */
8871
+ "theme"?: "ios" | "md" | "ionic";
7698
8872
  /**
7699
8873
  * The state of the progress bar, based on if the time the process takes is known or not. Default options are: `"determinate"` (no animation), `"indeterminate"` (animate from left to right).
7700
8874
  * @default 'determinate'
@@ -7730,7 +8904,7 @@ declare namespace LocalJSX {
7730
8904
  */
7731
8905
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7732
8906
  /**
7733
- * The mode determines which platform styles to use.
8907
+ * The mode determines the platform behaviors of the component.
7734
8908
  */
7735
8909
  "mode"?: "ios" | "md";
7736
8910
  /**
@@ -7746,6 +8920,10 @@ declare namespace LocalJSX {
7746
8920
  * Emitted when the radio button has focus.
7747
8921
  */
7748
8922
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
8923
+ /**
8924
+ * The theme determines the visual appearance of the component.
8925
+ */
8926
+ "theme"?: "ios" | "md" | "ionic";
7749
8927
  /**
7750
8928
  * the value of the radio.
7751
8929
  */
@@ -7769,6 +8947,10 @@ declare namespace LocalJSX {
7769
8947
  * The helper text to display at the top of the radio group.
7770
8948
  */
7771
8949
  "helperText"?: string;
8950
+ /**
8951
+ * The mode determines the platform behaviors of the component.
8952
+ */
8953
+ "mode"?: "ios" | "md";
7772
8954
  /**
7773
8955
  * The name of the control, which is submitted with the form data.
7774
8956
  * @default this.inputId
@@ -7778,6 +8960,10 @@ declare namespace LocalJSX {
7778
8960
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7779
8961
  */
7780
8962
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
8963
+ /**
8964
+ * The theme determines the visual appearance of the component.
8965
+ */
8966
+ "theme"?: "ios" | "md" | "ionic";
7781
8967
  /**
7782
8968
  * the value of the radio group.
7783
8969
  */
@@ -7826,7 +9012,7 @@ declare namespace LocalJSX {
7826
9012
  */
7827
9013
  "min"?: number;
7828
9014
  /**
7829
- * The mode determines which platform styles to use.
9015
+ * The mode determines the platform behaviors of the component.
7830
9016
  */
7831
9017
  "mode"?: "ios" | "md";
7832
9018
  /**
@@ -7878,6 +9064,10 @@ declare namespace LocalJSX {
7878
9064
  * @default 1
7879
9065
  */
7880
9066
  "step"?: number;
9067
+ /**
9068
+ * The theme determines the visual appearance of the component.
9069
+ */
9070
+ "theme"?: "ios" | "md" | "ionic";
7881
9071
  /**
7882
9072
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7883
9073
  * @default true
@@ -7901,7 +9091,7 @@ declare namespace LocalJSX {
7901
9091
  */
7902
9092
  "disabled"?: boolean;
7903
9093
  /**
7904
- * The mode determines which platform styles to use.
9094
+ * The mode determines the platform behaviors of the component.
7905
9095
  */
7906
9096
  "mode"?: "ios" | "md";
7907
9097
  /**
@@ -7945,8 +9135,16 @@ declare namespace LocalJSX {
7945
9135
  * @default '280ms'
7946
9136
  */
7947
9137
  "snapbackDuration"?: string;
9138
+ /**
9139
+ * The theme determines the visual appearance of the component.
9140
+ */
9141
+ "theme"?: "ios" | "md" | "ionic";
7948
9142
  }
7949
9143
  interface IonRefresherContent {
9144
+ /**
9145
+ * The mode determines the platform behaviors of the component.
9146
+ */
9147
+ "mode"?: "ios" | "md";
7950
9148
  /**
7951
9149
  * A static icon or a spinner to display when you begin to pull down. A spinner name can be provided to gradually show tick marks when pulling down on iOS devices.
7952
9150
  */
@@ -7963,8 +9161,20 @@ declare namespace LocalJSX {
7963
9161
  * The text you want to display when performing a refresh. `refreshingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
7964
9162
  */
7965
9163
  "refreshingText"?: string | IonicSafeString;
9164
+ /**
9165
+ * The theme determines the visual appearance of the component.
9166
+ */
9167
+ "theme"?: "ios" | "md" | "ionic";
7966
9168
  }
7967
9169
  interface IonReorder {
9170
+ /**
9171
+ * The mode determines the platform behaviors of the component.
9172
+ */
9173
+ "mode"?: "ios" | "md";
9174
+ /**
9175
+ * The theme determines the visual appearance of the component.
9176
+ */
9177
+ "theme"?: "ios" | "md" | "ionic";
7968
9178
  }
7969
9179
  interface IonReorderGroup {
7970
9180
  /**
@@ -7972,6 +9182,10 @@ declare namespace LocalJSX {
7972
9182
  * @default true
7973
9183
  */
7974
9184
  "disabled"?: boolean;
9185
+ /**
9186
+ * The mode determines the platform behaviors of the component.
9187
+ */
9188
+ "mode"?: "ios" | "md";
7975
9189
  /**
7976
9190
  * Event that needs to be listened to in order to complete the reorder action.
7977
9191
  * @deprecated Use `ionReorderEnd` instead. If you are accessing `event.detail.from` or `event.detail.to` and relying on them being different you should now add checks as they are always emitted in `ionReorderEnd`, even when they are the same.
@@ -7989,8 +9203,20 @@ declare namespace LocalJSX {
7989
9203
  * Event that is emitted when the reorder gesture starts.
7990
9204
  */
7991
9205
  "onIonReorderStart"?: (event: IonReorderGroupCustomEvent<void>) => void;
9206
+ /**
9207
+ * The theme determines the visual appearance of the component.
9208
+ */
9209
+ "theme"?: "ios" | "md" | "ionic";
7992
9210
  }
7993
9211
  interface IonRippleEffect {
9212
+ /**
9213
+ * The mode determines the platform behaviors of the component.
9214
+ */
9215
+ "mode"?: "ios" | "md";
9216
+ /**
9217
+ * The theme determines the visual appearance of the component.
9218
+ */
9219
+ "theme"?: "ios" | "md" | "ionic";
7994
9220
  /**
7995
9221
  * Sets the type of ripple-effect: - `bounded`: the ripple effect expands from the user's click position - `unbounded`: the ripple effect expands from the center of the button and overflows the container. NOTE: Surfaces for bounded ripples should have the overflow property set to hidden, while surfaces for unbounded ripples should have it set to visible.
7996
9222
  * @default 'bounded'
@@ -8014,10 +9240,18 @@ declare namespace LocalJSX {
8014
9240
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
8015
9241
  */
8016
9242
  "componentProps"?: { [key: string]: any };
9243
+ /**
9244
+ * The mode determines the platform behaviors of the component.
9245
+ */
9246
+ "mode"?: "ios" | "md";
8017
9247
  /**
8018
9248
  * Used internally by `ion-router` to know when this route did change.
8019
9249
  */
8020
9250
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
9251
+ /**
9252
+ * The theme determines the visual appearance of the component.
9253
+ */
9254
+ "theme"?: "ios" | "md" | "ionic";
8021
9255
  /**
8022
9256
  * Relative path that needs to match in order for this route to apply. Accepts paths similar to expressjs so that you can define parameters in the url /foo/:bar where bar would be available in incoming props.
8023
9257
  * @default ''
@@ -8039,6 +9273,10 @@ declare namespace LocalJSX {
8039
9273
  "to": string | undefined | null;
8040
9274
  }
8041
9275
  interface IonRouter {
9276
+ /**
9277
+ * The mode determines the platform behaviors of the component.
9278
+ */
9279
+ "mode"?: "ios" | "md";
8042
9280
  /**
8043
9281
  * Emitted when the route had changed
8044
9282
  */
@@ -8052,6 +9290,10 @@ declare namespace LocalJSX {
8052
9290
  * @default '/'
8053
9291
  */
8054
9292
  "root"?: string;
9293
+ /**
9294
+ * The theme determines the visual appearance of the component.
9295
+ */
9296
+ "theme"?: "ios" | "md" | "ionic";
8055
9297
  /**
8056
9298
  * The router can work in two "modes": - With hash: `/index.html#/path/to/page` - Without hash: `/path/to/page` Using one or another might depend in the requirements of your app and/or where it's deployed. Usually "hash-less" navigation works better for SEO and it's more user friendly too, but it might requires additional server-side configuration in order to properly work. On the other side hash-navigation is much easier to deploy, it even works over the file protocol. By default, this property is `true`, change to `false` to allow hash-less URLs.
8057
9299
  * @default true
@@ -8067,6 +9309,10 @@ declare namespace LocalJSX {
8067
9309
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
8068
9310
  */
8069
9311
  "href"?: string | undefined;
9312
+ /**
9313
+ * The mode determines the platform behaviors of the component.
9314
+ */
9315
+ "mode"?: "ios" | "md";
8070
9316
  /**
8071
9317
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
8072
9318
  */
@@ -8084,6 +9330,10 @@ declare namespace LocalJSX {
8084
9330
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8085
9331
  */
8086
9332
  "target"?: string | undefined;
9333
+ /**
9334
+ * The theme determines the visual appearance of the component.
9335
+ */
9336
+ "theme"?: "ios" | "md" | "ionic";
8087
9337
  }
8088
9338
  interface IonRouterOutlet {
8089
9339
  /**
@@ -8096,12 +9346,24 @@ declare namespace LocalJSX {
8096
9346
  */
8097
9347
  "animation"?: AnimationBuilder;
8098
9348
  /**
8099
- * The mode determines which platform styles to use.
9349
+ * The mode determines the platform behaviors of the component.
8100
9350
  * @default getIonMode(this)
8101
9351
  */
8102
9352
  "mode"?: "ios" | "md";
9353
+ /**
9354
+ * The theme determines the visual appearance of the component.
9355
+ */
9356
+ "theme"?: "ios" | "md" | "ionic";
8103
9357
  }
8104
9358
  interface IonRow {
9359
+ /**
9360
+ * The mode determines the platform behaviors of the component.
9361
+ */
9362
+ "mode"?: "ios" | "md";
9363
+ /**
9364
+ * The theme determines the visual appearance of the component.
9365
+ */
9366
+ "theme"?: "ios" | "md" | "ionic";
8105
9367
  }
8106
9368
  interface IonSearchbar {
8107
9369
  /**
@@ -8125,17 +9387,16 @@ declare namespace LocalJSX {
8125
9387
  */
8126
9388
  "autocorrect"?: 'on' | 'off';
8127
9389
  /**
8128
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8129
- * @default config.get('backButtonIcon', arrowBackSharp) as string
9390
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
8130
9391
  */
8131
9392
  "cancelButtonIcon"?: string;
8132
9393
  /**
8133
- * Set the cancel button text. Only applies to `ios` mode.
9394
+ * Set the cancel button text. Only available when the theme is `"ios"`.
8134
9395
  * @default 'Cancel'
8135
9396
  */
8136
9397
  "cancelButtonText"?: string;
8137
9398
  /**
8138
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
9399
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
8139
9400
  */
8140
9401
  "clearIcon"?: string;
8141
9402
  /**
@@ -8168,7 +9429,7 @@ declare namespace LocalJSX {
8168
9429
  */
8169
9430
  "minlength"?: number;
8170
9431
  /**
8171
- * The mode determines which platform styles to use.
9432
+ * The mode determines the platform behaviors of the component.
8172
9433
  */
8173
9434
  "mode"?: "ios" | "md";
8174
9435
  /**
@@ -8206,9 +9467,13 @@ declare namespace LocalJSX {
8206
9467
  */
8207
9468
  "placeholder"?: string;
8208
9469
  /**
8209
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
9470
+ * The icon to use as the search icon. Defaults to `"search-outline"` in the `"ios"` theme and `"search-sharp"` in the `"md"` and `"ionic"` themes. If `false`, no search icon will be displayed.
9471
+ */
9472
+ "searchIcon"?: string | boolean;
9473
+ /**
9474
+ * Set to `"soft"` for a searchbar with slightly rounded corners, `"round"` for a searchbar with fully rounded corners, or `"rectangular"` for a searchbar without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes.
8210
9475
  */
8211
- "searchIcon"?: string;
9476
+ "shape"?: 'soft' | 'round' | 'rectangular';
8212
9477
  /**
8213
9478
  * Sets the behavior for the cancel button. Defaults to `"never"`. Setting to `"focus"` shows the cancel button on focus. Setting to `"never"` hides the cancel button. Setting to `"always"` shows the cancel button regardless of focus state.
8214
9479
  * @default 'never'
@@ -8219,11 +9484,19 @@ declare namespace LocalJSX {
8219
9484
  * @default 'always'
8220
9485
  */
8221
9486
  "showClearButton"?: 'never' | 'focus' | 'always';
9487
+ /**
9488
+ * Set to `"large"` for a searchbar with an increase in height, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and `undefined` for all other themes.
9489
+ */
9490
+ "size"?: 'small' | 'medium' | 'large';
8222
9491
  /**
8223
9492
  * If `true`, enable spellcheck on the input.
8224
9493
  * @default false
8225
9494
  */
8226
9495
  "spellcheck"?: boolean;
9496
+ /**
9497
+ * The theme determines the visual appearance of the component.
9498
+ */
9499
+ "theme"?: "ios" | "md" | "ionic";
8227
9500
  /**
8228
9501
  * Set the type of the input.
8229
9502
  * @default 'search'
@@ -8246,7 +9519,7 @@ declare namespace LocalJSX {
8246
9519
  */
8247
9520
  "disabled"?: boolean;
8248
9521
  /**
8249
- * The mode determines which platform styles to use.
9522
+ * The mode determines the platform behaviors of the component.
8250
9523
  */
8251
9524
  "mode"?: "ios" | "md";
8252
9525
  /**
@@ -8268,6 +9541,10 @@ declare namespace LocalJSX {
8268
9541
  * @default true
8269
9542
  */
8270
9543
  "swipeGesture"?: boolean;
9544
+ /**
9545
+ * The theme determines the visual appearance of the component.
9546
+ */
9547
+ "theme"?: "ios" | "md" | "ionic";
8271
9548
  /**
8272
9549
  * the value of the segment.
8273
9550
  */
@@ -8289,9 +9566,13 @@ declare namespace LocalJSX {
8289
9566
  */
8290
9567
  "layout"?: SegmentButtonLayout;
8291
9568
  /**
8292
- * The mode determines which platform styles to use.
9569
+ * The mode determines the platform behaviors of the component.
8293
9570
  */
8294
9571
  "mode"?: "ios" | "md";
9572
+ /**
9573
+ * The theme determines the visual appearance of the component.
9574
+ */
9575
+ "theme"?: "ios" | "md" | "ionic";
8295
9576
  /**
8296
9577
  * The type of the button.
8297
9578
  * @default 'button'
@@ -8345,11 +9626,11 @@ declare namespace LocalJSX {
8345
9626
  */
8346
9627
  "errorText"?: string;
8347
9628
  /**
8348
- * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `md` mode will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
9629
+ * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `"md"` theme will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
8349
9630
  */
8350
9631
  "expandedIcon"?: string;
8351
9632
  /**
8352
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
9633
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in the `"md"` theme.
8353
9634
  */
8354
9635
  "fill"?: 'outline' | 'solid';
8355
9636
  /**
@@ -8380,7 +9661,7 @@ declare namespace LocalJSX {
8380
9661
  */
8381
9662
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
8382
9663
  /**
8383
- * The mode determines which platform styles to use.
9664
+ * The mode determines the platform behaviors of the component.
8384
9665
  */
8385
9666
  "mode"?: "ios" | "md";
8386
9667
  /**
@@ -8432,11 +9713,19 @@ declare namespace LocalJSX {
8432
9713
  */
8433
9714
  "selectedText"?: string | null;
8434
9715
  /**
8435
- * The shape of the select. If "round" it will have an increased border radius.
9716
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
9717
+ */
9718
+ "shape"?: 'soft' | 'round' | 'rectangular';
9719
+ /**
9720
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
9721
+ */
9722
+ "size"?: 'small' | 'medium' | 'large';
9723
+ /**
9724
+ * The theme determines the visual appearance of the component.
8436
9725
  */
8437
- "shape"?: 'round';
9726
+ "theme"?: "ios" | "md" | "ionic";
8438
9727
  /**
8439
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
9728
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
8440
9729
  */
8441
9730
  "toggleIcon"?: string;
8442
9731
  /**
@@ -8463,6 +9752,14 @@ declare namespace LocalJSX {
8463
9752
  * @default false
8464
9753
  */
8465
9754
  "disabled"?: boolean;
9755
+ /**
9756
+ * The mode determines the platform behaviors of the component.
9757
+ */
9758
+ "mode"?: "ios" | "md";
9759
+ /**
9760
+ * The theme determines the visual appearance of the component.
9761
+ */
9762
+ "theme"?: "ios" | "md" | "ionic";
8466
9763
  /**
8467
9764
  * The text value of the option.
8468
9765
  */
@@ -8477,6 +9774,10 @@ declare namespace LocalJSX {
8477
9774
  * The text content of the popover body
8478
9775
  */
8479
9776
  "message"?: string;
9777
+ /**
9778
+ * The mode determines the platform behaviors of the component.
9779
+ */
9780
+ "mode"?: "ios" | "md";
8480
9781
  /**
8481
9782
  * If true, the select accepts multiple values
8482
9783
  */
@@ -8490,6 +9791,10 @@ declare namespace LocalJSX {
8490
9791
  * The subheader text of the popover
8491
9792
  */
8492
9793
  "subHeader"?: string;
9794
+ /**
9795
+ * The theme determines the visual appearance of the component.
9796
+ */
9797
+ "theme"?: "ios" | "md" | "ionic";
8493
9798
  }
8494
9799
  interface IonSkeletonText {
8495
9800
  /**
@@ -8497,6 +9802,14 @@ declare namespace LocalJSX {
8497
9802
  * @default false
8498
9803
  */
8499
9804
  "animated"?: boolean;
9805
+ /**
9806
+ * The mode determines the platform behaviors of the component.
9807
+ */
9808
+ "mode"?: "ios" | "md";
9809
+ /**
9810
+ * The theme determines the visual appearance of the component.
9811
+ */
9812
+ "theme"?: "ios" | "md" | "ionic";
8500
9813
  }
8501
9814
  interface IonSpinner {
8502
9815
  /**
@@ -8507,6 +9820,10 @@ declare namespace LocalJSX {
8507
9820
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
8508
9821
  */
8509
9822
  "duration"?: number;
9823
+ /**
9824
+ * The mode determines the platform behaviors of the component.
9825
+ */
9826
+ "mode"?: "ios" | "md";
8510
9827
  /**
8511
9828
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
8512
9829
  */
@@ -8516,6 +9833,14 @@ declare namespace LocalJSX {
8516
9833
  * @default false
8517
9834
  */
8518
9835
  "paused"?: boolean;
9836
+ /**
9837
+ * Set to `"xsmall"` for the smallest size. Set to `"small"` for a smaller size. Set to `"medium"` for a medium size. Set to `"large"` for a large size. Set to `"xlarge"` for the largest size. Defaults to `"xsmall"` for the `ionic` theme, undefined for all other themes.
9838
+ */
9839
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
9840
+ /**
9841
+ * The theme determines the visual appearance of the component.
9842
+ */
9843
+ "theme"?: "ios" | "md" | "ionic";
8519
9844
  }
8520
9845
  interface IonSplitPane {
8521
9846
  /**
@@ -8527,10 +9852,18 @@ declare namespace LocalJSX {
8527
9852
  * @default false
8528
9853
  */
8529
9854
  "disabled"?: boolean;
9855
+ /**
9856
+ * The mode determines the platform behaviors of the component.
9857
+ */
9858
+ "mode"?: "ios" | "md";
8530
9859
  /**
8531
9860
  * Expression to be called when the split-pane visibility has changed
8532
9861
  */
8533
9862
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
9863
+ /**
9864
+ * The theme determines the visual appearance of the component.
9865
+ */
9866
+ "theme"?: "ios" | "md" | "ionic";
8534
9867
  /**
8535
9868
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
8536
9869
  * @default QUERY['lg']
@@ -8542,10 +9875,18 @@ declare namespace LocalJSX {
8542
9875
  * The component to display inside of the tab.
8543
9876
  */
8544
9877
  "component"?: ComponentRef;
9878
+ /**
9879
+ * The mode determines the platform behaviors of the component.
9880
+ */
9881
+ "mode"?: "ios" | "md";
8545
9882
  /**
8546
9883
  * A tab id must be provided for each `ion-tab`. It's used internally to reference the selected tab or by the router to switch between them.
8547
9884
  */
8548
9885
  "tab": string;
9886
+ /**
9887
+ * The theme determines the visual appearance of the component.
9888
+ */
9889
+ "theme"?: "ios" | "md" | "ionic";
8549
9890
  }
8550
9891
  interface IonTabBar {
8551
9892
  /**
@@ -8553,7 +9894,12 @@ declare namespace LocalJSX {
8553
9894
  */
8554
9895
  "color"?: Color;
8555
9896
  /**
8556
- * The mode determines which platform styles to use.
9897
+ * Set to `"compact"` to display a width based on the items inside the tab bar. This value will only work for the `ionic` theme. Set to `"full"` to display a full width tab bar. Defaults to `"full"`.
9898
+ * @default 'full'
9899
+ */
9900
+ "expand"?: 'compact' | 'full';
9901
+ /**
9902
+ * The mode determines the platform behaviors of the component.
8557
9903
  */
8558
9904
  "mode"?: "ios" | "md";
8559
9905
  /**
@@ -8561,7 +9907,15 @@ declare namespace LocalJSX {
8561
9907
  */
8562
9908
  "selectedTab"?: string;
8563
9909
  /**
8564
- * If `true`, the tab bar will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
9910
+ * Set to `"soft"` for a tab bar with slightly rounded corners, `"round"` for a tab bar with fully rounded corners, or `"rectangular"` for a tab bar without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
9911
+ */
9912
+ "shape"?: 'soft' | 'round' | 'rectangular';
9913
+ /**
9914
+ * The theme determines the visual appearance of the component.
9915
+ */
9916
+ "theme"?: "ios" | "md" | "ionic";
9917
+ /**
9918
+ * If `true`, the tab bar will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
8565
9919
  * @default false
8566
9920
  */
8567
9921
  "translucent"?: boolean;
@@ -8585,7 +9939,7 @@ declare namespace LocalJSX {
8585
9939
  */
8586
9940
  "layout"?: TabButtonLayout;
8587
9941
  /**
8588
- * The mode determines which platform styles to use.
9942
+ * The mode determines the platform behaviors of the component.
8589
9943
  */
8590
9944
  "mode"?: "ios" | "md";
8591
9945
  /**
@@ -8597,6 +9951,10 @@ declare namespace LocalJSX {
8597
9951
  * @default false
8598
9952
  */
8599
9953
  "selected"?: boolean;
9954
+ /**
9955
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
9956
+ */
9957
+ "shape"?: 'soft' | 'round' | 'rectangular';
8600
9958
  /**
8601
9959
  * A tab id must be provided for each `ion-tab`. It's used internally to reference the selected tab or by the router to switch between them.
8602
9960
  */
@@ -8605,8 +9963,16 @@ declare namespace LocalJSX {
8605
9963
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8606
9964
  */
8607
9965
  "target"?: string | undefined;
9966
+ /**
9967
+ * The theme determines the visual appearance of the component.
9968
+ */
9969
+ "theme"?: "ios" | "md" | "ionic";
8608
9970
  }
8609
9971
  interface IonTabs {
9972
+ /**
9973
+ * The mode determines the platform behaviors of the component.
9974
+ */
9975
+ "mode"?: "ios" | "md";
8610
9976
  /**
8611
9977
  * Emitted when the navigation has finished transitioning to a new component.
8612
9978
  */
@@ -8615,6 +9981,10 @@ declare namespace LocalJSX {
8615
9981
  * Emitted when the navigation is about to transition to a new component.
8616
9982
  */
8617
9983
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
9984
+ /**
9985
+ * The theme determines the visual appearance of the component.
9986
+ */
9987
+ "theme"?: "ios" | "md" | "ionic";
8618
9988
  }
8619
9989
  interface IonText {
8620
9990
  /**
@@ -8622,9 +9992,13 @@ declare namespace LocalJSX {
8622
9992
  */
8623
9993
  "color"?: Color;
8624
9994
  /**
8625
- * The mode determines which platform styles to use.
9995
+ * The mode determines the platform behaviors of the component.
8626
9996
  */
8627
9997
  "mode"?: "ios" | "md";
9998
+ /**
9999
+ * The theme determines the visual appearance of the component.
10000
+ */
10001
+ "theme"?: "ios" | "md" | "ionic";
8628
10002
  }
8629
10003
  interface IonTextarea {
8630
10004
  /**
@@ -8682,9 +10056,13 @@ declare namespace LocalJSX {
8682
10056
  */
8683
10057
  "errorText"?: string;
8684
10058
  /**
8685
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
10059
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available when the theme is `"md"`.
8686
10060
  */
8687
10061
  "fill"?: 'outline' | 'solid';
10062
+ /**
10063
+ * The `id` of a `<form>` element to associate this element with.
10064
+ */
10065
+ "form"?: string;
8688
10066
  /**
8689
10067
  * Text that is placed under the textarea and displayed when no error is detected.
8690
10068
  */
@@ -8711,7 +10089,7 @@ declare namespace LocalJSX {
8711
10089
  */
8712
10090
  "minlength"?: number;
8713
10091
  /**
8714
- * The mode determines which platform styles to use.
10092
+ * The mode determines the platform behaviors of the component.
8715
10093
  */
8716
10094
  "mode"?: "ios" | "md";
8717
10095
  /**
@@ -8754,14 +10132,23 @@ declare namespace LocalJSX {
8754
10132
  */
8755
10133
  "rows"?: number;
8756
10134
  /**
8757
- * The shape of the textarea. If "round" it will have an increased border radius.
10135
+ * Set to `"soft"` for a textarea with slightly rounded corners, `"round"` for a textarea with fully rounded corners, or `"rectangular"` for a textarea without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
8758
10136
  */
8759
- "shape"?: 'round';
10137
+ "shape"?: 'soft' | 'round' | 'rectangular';
10138
+ /**
10139
+ * The size of the textarea. If "large" it will increase the height of the textarea, while "small" and "medium" provide progressively smaller heights. The default size is "medium". This property only applies to the `"ionic"` theme.
10140
+ * @default 'medium'
10141
+ */
10142
+ "size"?: 'small' | 'medium' | 'large';
8760
10143
  /**
8761
10144
  * If `true`, the element will have its spelling and grammar checked.
8762
10145
  * @default false
8763
10146
  */
8764
10147
  "spellcheck"?: boolean;
10148
+ /**
10149
+ * The theme determines the visual appearance of the component.
10150
+ */
10151
+ "theme"?: "ios" | "md" | "ionic";
8765
10152
  /**
8766
10153
  * The value of the textarea.
8767
10154
  * @default ''
@@ -8773,16 +10160,32 @@ declare namespace LocalJSX {
8773
10160
  "wrap"?: 'hard' | 'soft' | 'off';
8774
10161
  }
8775
10162
  interface IonThumbnail {
10163
+ /**
10164
+ * The mode determines the platform behaviors of the component.
10165
+ */
10166
+ "mode"?: "ios" | "md";
10167
+ /**
10168
+ * The theme determines the visual appearance of the component.
10169
+ */
10170
+ "theme"?: "ios" | "md" | "ionic";
8776
10171
  }
8777
10172
  interface IonTitle {
8778
10173
  /**
8779
10174
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`. For more information on colors, see [theming](/docs/theming/basics).
8780
10175
  */
8781
10176
  "color"?: Color;
10177
+ /**
10178
+ * The mode determines the platform behaviors of the component.
10179
+ */
10180
+ "mode"?: "ios" | "md";
8782
10181
  /**
8783
10182
  * The size of the toolbar title.
8784
10183
  */
8785
10184
  "size"?: 'large' | 'small';
10185
+ /**
10186
+ * The theme determines the visual appearance of the component.
10187
+ */
10188
+ "theme"?: "ios" | "md" | "ionic";
8786
10189
  }
8787
10190
  interface IonToast {
8788
10191
  /**
@@ -8819,6 +10222,11 @@ declare namespace LocalJSX {
8819
10222
  * Additional attributes to pass to the toast.
8820
10223
  */
8821
10224
  "htmlAttributes"?: { [key: string]: any };
10225
+ /**
10226
+ * Set to `"bold"` for a toast with vibrant, bold colors or to `"subtle"` for a toast with muted, subtle colors. Only applies to the `ionic` theme.
10227
+ * @default 'subtle'
10228
+ */
10229
+ "hue"?: 'bold' | 'subtle';
8822
10230
  /**
8823
10231
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
8824
10232
  */
@@ -8847,7 +10255,7 @@ declare namespace LocalJSX {
8847
10255
  */
8848
10256
  "message"?: string | IonicSafeString;
8849
10257
  /**
8850
- * The mode determines which platform styles to use.
10258
+ * The mode determines the platform behaviors of the component.
8851
10259
  */
8852
10260
  "mode"?: "ios" | "md";
8853
10261
  /**
@@ -8891,12 +10299,20 @@ declare namespace LocalJSX {
8891
10299
  * The element to anchor the toast's position to. Can be set as a direct reference or the ID of the element. With `position="bottom"`, the toast will sit above the chosen element. With `position="top"`, the toast will sit below the chosen element. With `position="middle"`, the value of `positionAnchor` is ignored.
8892
10300
  */
8893
10301
  "positionAnchor"?: HTMLElement | string;
10302
+ /**
10303
+ * Set to `"soft"` for a toast with slightly rounded corners, `"round"` for a toast with fully rounded corners, or `"rectangular"` for a toast without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
10304
+ */
10305
+ "shape"?: 'soft' | 'round' | 'rectangular';
8894
10306
  /**
8895
10307
  * If set to 'vertical', the Toast can be dismissed with a swipe gesture. The swipe direction is determined by the value of the `position` property: `top`: The Toast can be swiped up to dismiss. `bottom`: The Toast can be swiped down to dismiss. `middle`: The Toast can be swiped up or down to dismiss.
8896
10308
  */
8897
10309
  "swipeGesture"?: ToastSwipeGestureDirection;
8898
10310
  /**
8899
- * If `true`, the toast will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
10311
+ * The theme determines the visual appearance of the component.
10312
+ */
10313
+ "theme"?: "ios" | "md" | "ionic";
10314
+ /**
10315
+ * If `true`, the toast will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
8900
10316
  * @default false
8901
10317
  */
8902
10318
  "translucent"?: boolean;
@@ -8947,7 +10363,7 @@ declare namespace LocalJSX {
8947
10363
  */
8948
10364
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8949
10365
  /**
8950
- * The mode determines which platform styles to use.
10366
+ * The mode determines the platform behaviors of the component.
8951
10367
  */
8952
10368
  "mode"?: "ios" | "md";
8953
10369
  /**
@@ -8972,6 +10388,10 @@ declare namespace LocalJSX {
8972
10388
  * @default false
8973
10389
  */
8974
10390
  "required"?: boolean;
10391
+ /**
10392
+ * The theme determines the visual appearance of the component.
10393
+ */
10394
+ "theme"?: "ios" | "md" | "ionic";
8975
10395
  /**
8976
10396
  * The value of the toggle does not mean if it's checked or not, use the `checked` property for that. The value of a toggle is analogous to the value of a `<input type="checkbox">`, it's only used when the toggle participates in a native `<form>`.
8977
10397
  * @default 'on'
@@ -8984,9 +10404,13 @@ declare namespace LocalJSX {
8984
10404
  */
8985
10405
  "color"?: Color;
8986
10406
  /**
8987
- * The mode determines which platform styles to use.
10407
+ * The mode determines the platform behaviors of the component.
8988
10408
  */
8989
10409
  "mode"?: "ios" | "md";
10410
+ /**
10411
+ * The theme determines the visual appearance of the component.
10412
+ */
10413
+ "theme"?: "ios" | "md" | "ionic";
8990
10414
  }
8991
10415
 
8992
10416
  interface IonAccordionAttributes {
@@ -9003,6 +10427,7 @@ declare namespace LocalJSX {
9003
10427
  "disabled": boolean;
9004
10428
  "readonly": boolean;
9005
10429
  "expand": 'compact' | 'inset';
10430
+ "shape": 'soft' | 'round' | 'rectangular';
9006
10431
  }
9007
10432
  interface IonActionSheetAttributes {
9008
10433
  "keyboardClose": boolean;
@@ -9027,6 +10452,11 @@ declare namespace LocalJSX {
9027
10452
  "isOpen": boolean;
9028
10453
  "trigger": string | undefined;
9029
10454
  }
10455
+ interface IonAvatarAttributes {
10456
+ "size": 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
10457
+ "shape": 'soft' | 'round' | 'rectangular';
10458
+ "disabled": boolean;
10459
+ }
9030
10460
  interface IonBackButtonAttributes {
9031
10461
  "color": Color;
9032
10462
  "defaultHref": string;
@@ -9042,6 +10472,10 @@ declare namespace LocalJSX {
9042
10472
  }
9043
10473
  interface IonBadgeAttributes {
9044
10474
  "color": Color;
10475
+ "hue": 'bold' | 'subtle';
10476
+ "shape": 'soft' | 'round | rectangular';
10477
+ "size": 'small' | 'medium' | 'large';
10478
+ "vertical": 'top' | 'bottom';
9045
10479
  }
9046
10480
  interface IonBreadcrumbAttributes {
9047
10481
  "color": Color;
@@ -9070,8 +10504,8 @@ declare namespace LocalJSX {
9070
10504
  "download": string | undefined;
9071
10505
  "href": string | undefined;
9072
10506
  "rel": string | undefined;
9073
- "shape": 'round';
9074
- "size": 'small' | 'default' | 'large';
10507
+ "shape": 'soft' | 'round' | 'rectangular';
10508
+ "size": 'small' | 'default' | 'medium' | 'large';
9075
10509
  "strong": boolean;
9076
10510
  "target": string | undefined;
9077
10511
  "type": 'submit' | 'reset' | 'button';
@@ -9089,6 +10523,7 @@ declare namespace LocalJSX {
9089
10523
  "href": string | undefined;
9090
10524
  "rel": string | undefined;
9091
10525
  "routerDirection": RouterDirection;
10526
+ "shape": 'soft' | 'round' | 'rectangular';
9092
10527
  "target": string | undefined;
9093
10528
  }
9094
10529
  interface IonCardHeaderAttributes {
@@ -9114,11 +10549,16 @@ declare namespace LocalJSX {
9114
10549
  "justify": 'start' | 'end' | 'space-between';
9115
10550
  "alignment": 'start' | 'center';
9116
10551
  "required": boolean;
10552
+ "shape": 'soft' | 'rectangular';
10553
+ "size": 'small';
9117
10554
  }
9118
10555
  interface IonChipAttributes {
9119
10556
  "color": Color;
9120
10557
  "outline": boolean;
9121
10558
  "disabled": boolean;
10559
+ "hue": 'bold' | 'subtle';
10560
+ "shape": 'soft' | 'round' | 'rectangular';
10561
+ "size": 'small' | 'large';
9122
10562
  }
9123
10563
  interface IonColAttributes {
9124
10564
  "offset": string;
@@ -9127,6 +10567,12 @@ declare namespace LocalJSX {
9127
10567
  "offsetMd": string;
9128
10568
  "offsetLg": string;
9129
10569
  "offsetXl": string;
10570
+ "order": string;
10571
+ "orderXs": string;
10572
+ "orderSm": string;
10573
+ "orderMd": string;
10574
+ "orderLg": string;
10575
+ "orderXl": string;
9130
10576
  "pull": string;
9131
10577
  "pullXs": string;
9132
10578
  "pullSm": string;
@@ -9189,6 +10635,10 @@ declare namespace LocalJSX {
9189
10635
  "disabled": boolean;
9190
10636
  "datetime": string;
9191
10637
  }
10638
+ interface IonDividerAttributes {
10639
+ "spacing": 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
10640
+ "inset": boolean;
10641
+ }
9192
10642
  interface IonFabAttributes {
9193
10643
  "horizontal": 'start' | 'end' | 'center';
9194
10644
  "vertical": 'top' | 'bottom' | 'center';
@@ -9223,6 +10673,7 @@ declare namespace LocalJSX {
9223
10673
  }
9224
10674
  interface IonHeaderAttributes {
9225
10675
  "collapse": 'condense' | 'fade';
10676
+ "divider": boolean;
9226
10677
  "translucent": boolean;
9227
10678
  }
9228
10679
  interface IonImgAttributes {
@@ -9233,6 +10684,7 @@ declare namespace LocalJSX {
9233
10684
  "threshold": string;
9234
10685
  "disabled": boolean;
9235
10686
  "position": 'top' | 'bottom';
10687
+ "preserveRerenderScrollPosition": boolean;
9236
10688
  }
9237
10689
  interface IonInfiniteScrollContentAttributes {
9238
10690
  "loadingSpinner": SpinnerTypes | null;
@@ -9267,9 +10719,10 @@ declare namespace LocalJSX {
9267
10719
  "placeholder": string;
9268
10720
  "readonly": boolean;
9269
10721
  "required": boolean;
9270
- "shape": 'round';
10722
+ "shape": 'soft' | 'round' | 'rectangular';
9271
10723
  "spellcheck": boolean;
9272
10724
  "step": string;
10725
+ "size": 'medium' | 'large' | 'xlarge';
9273
10726
  "type": TextFieldTypes;
9274
10727
  "value": string;
9275
10728
  }
@@ -9317,9 +10770,11 @@ declare namespace LocalJSX {
9317
10770
  "download": string | undefined;
9318
10771
  "expandable": boolean;
9319
10772
  "href": string | undefined;
10773
+ "hue": 'bold' | 'subtle';
9320
10774
  "rel": string | undefined;
9321
10775
  "target": string | undefined;
9322
10776
  "type": 'submit' | 'reset' | 'button';
10777
+ "shape": 'soft' | 'round' | 'rectangular';
9323
10778
  }
9324
10779
  interface IonItemOptionsAttributes {
9325
10780
  "side": Side;
@@ -9334,6 +10789,7 @@ declare namespace LocalJSX {
9334
10789
  interface IonListAttributes {
9335
10790
  "lines": 'full' | 'inset' | 'none';
9336
10791
  "inset": boolean;
10792
+ "shape": 'soft' | 'round' | 'rectangular';
9337
10793
  }
9338
10794
  interface IonListHeaderAttributes {
9339
10795
  "color": Color;
@@ -9387,6 +10843,7 @@ declare namespace LocalJSX {
9387
10843
  "keepContentsMounted": boolean;
9388
10844
  "focusTrap": boolean;
9389
10845
  "canDismiss": boolean | ((data?: any, role?: string) => Promise<boolean>);
10846
+ "shape": 'soft' | 'round' | 'rectangular';
9390
10847
  }
9391
10848
  interface IonNavAttributes {
9392
10849
  "swipeGesture": boolean;
@@ -9446,6 +10903,7 @@ declare namespace LocalJSX {
9446
10903
  "value": number;
9447
10904
  "buffer": number;
9448
10905
  "color": Color;
10906
+ "shape": 'round' | 'rectangular';
9449
10907
  }
9450
10908
  interface IonRadioAttributes {
9451
10909
  "color": Color;
@@ -9547,6 +11005,8 @@ declare namespace LocalJSX {
9547
11005
  "spellcheck": boolean;
9548
11006
  "type": 'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url';
9549
11007
  "value": string | null;
11008
+ "shape": 'soft' | 'round' | 'rectangular';
11009
+ "size": 'small' | 'medium' | 'large';
9550
11010
  }
9551
11011
  interface IonSegmentAttributes {
9552
11012
  "color": Color;
@@ -9587,9 +11047,10 @@ declare namespace LocalJSX {
9587
11047
  "selectedText": string | null;
9588
11048
  "toggleIcon": string;
9589
11049
  "expandedIcon": string;
9590
- "shape": 'round';
9591
- "value": string;
9592
11050
  "required": boolean;
11051
+ "shape": 'soft' | 'round' | 'rectangular';
11052
+ "size": 'small' | 'medium' | 'large';
11053
+ "value": string;
9593
11054
  }
9594
11055
  interface IonSelectModalAttributes {
9595
11056
  "header": string;
@@ -9614,6 +11075,7 @@ declare namespace LocalJSX {
9614
11075
  "duration": number;
9615
11076
  "name": SpinnerTypes;
9616
11077
  "paused": boolean;
11078
+ "size": 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
9617
11079
  }
9618
11080
  interface IonSplitPaneAttributes {
9619
11081
  "contentId": string;
@@ -9628,6 +11090,8 @@ declare namespace LocalJSX {
9628
11090
  "color": Color;
9629
11091
  "selectedTab": string;
9630
11092
  "translucent": boolean;
11093
+ "expand": 'compact' | 'full';
11094
+ "shape": 'soft' | 'round' | 'rectangular';
9631
11095
  }
9632
11096
  interface IonTabButtonAttributes {
9633
11097
  "disabled": boolean;
@@ -9636,6 +11100,7 @@ declare namespace LocalJSX {
9636
11100
  "rel": string | undefined;
9637
11101
  "layout": TabButtonLayout;
9638
11102
  "selected": boolean;
11103
+ "shape": 'soft' | 'round' | 'rectangular';
9639
11104
  "tab": string;
9640
11105
  "target": string | undefined;
9641
11106
  }
@@ -9672,7 +11137,8 @@ declare namespace LocalJSX {
9672
11137
  "helperText": string;
9673
11138
  "label": string;
9674
11139
  "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
9675
- "shape": 'round';
11140
+ "shape": 'soft' | 'round' | 'rectangular';
11141
+ "size": 'small' | 'medium' | 'large';
9676
11142
  }
9677
11143
  interface IonTitleAttributes {
9678
11144
  "color": Color;
@@ -9683,11 +11149,13 @@ declare namespace LocalJSX {
9683
11149
  "cssClass": string | string[];
9684
11150
  "duration": number;
9685
11151
  "header": string;
11152
+ "hue": 'bold' | 'subtle';
9686
11153
  "layout": ToastLayout;
9687
11154
  "message": string | IonicSafeString;
9688
11155
  "keyboardClose": boolean;
9689
11156
  "position": ToastPosition;
9690
11157
  "positionAnchor": HTMLElement | string;
11158
+ "shape": 'soft' | 'round' | 'rectangular';
9691
11159
  "translucent": boolean;
9692
11160
  "animated": boolean;
9693
11161
  "icon": string;
@@ -9719,7 +11187,7 @@ declare namespace LocalJSX {
9719
11187
  "ion-action-sheet": Omit<IonActionSheet, keyof IonActionSheetAttributes> & { [K in keyof IonActionSheet & keyof IonActionSheetAttributes]?: IonActionSheet[K] } & { [K in keyof IonActionSheet & keyof IonActionSheetAttributes as `attr:${K}`]?: IonActionSheetAttributes[K] } & { [K in keyof IonActionSheet & keyof IonActionSheetAttributes as `prop:${K}`]?: IonActionSheet[K] };
9720
11188
  "ion-alert": Omit<IonAlert, keyof IonAlertAttributes> & { [K in keyof IonAlert & keyof IonAlertAttributes]?: IonAlert[K] } & { [K in keyof IonAlert & keyof IonAlertAttributes as `attr:${K}`]?: IonAlertAttributes[K] } & { [K in keyof IonAlert & keyof IonAlertAttributes as `prop:${K}`]?: IonAlert[K] };
9721
11189
  "ion-app": IonApp;
9722
- "ion-avatar": IonAvatar;
11190
+ "ion-avatar": Omit<IonAvatar, keyof IonAvatarAttributes> & { [K in keyof IonAvatar & keyof IonAvatarAttributes]?: IonAvatar[K] } & { [K in keyof IonAvatar & keyof IonAvatarAttributes as `attr:${K}`]?: IonAvatarAttributes[K] } & { [K in keyof IonAvatar & keyof IonAvatarAttributes as `prop:${K}`]?: IonAvatar[K] };
9723
11191
  "ion-back-button": Omit<IonBackButton, keyof IonBackButtonAttributes> & { [K in keyof IonBackButton & keyof IonBackButtonAttributes]?: IonBackButton[K] } & { [K in keyof IonBackButton & keyof IonBackButtonAttributes as `attr:${K}`]?: IonBackButtonAttributes[K] } & { [K in keyof IonBackButton & keyof IonBackButtonAttributes as `prop:${K}`]?: IonBackButton[K] };
9724
11192
  "ion-backdrop": Omit<IonBackdrop, keyof IonBackdropAttributes> & { [K in keyof IonBackdrop & keyof IonBackdropAttributes]?: IonBackdrop[K] } & { [K in keyof IonBackdrop & keyof IonBackdropAttributes as `attr:${K}`]?: IonBackdropAttributes[K] } & { [K in keyof IonBackdrop & keyof IonBackdropAttributes as `prop:${K}`]?: IonBackdrop[K] };
9725
11193
  "ion-badge": Omit<IonBadge, keyof IonBadgeAttributes> & { [K in keyof IonBadge & keyof IonBadgeAttributes]?: IonBadge[K] } & { [K in keyof IonBadge & keyof IonBadgeAttributes as `attr:${K}`]?: IonBadgeAttributes[K] } & { [K in keyof IonBadge & keyof IonBadgeAttributes as `prop:${K}`]?: IonBadge[K] };
@@ -9738,6 +11206,7 @@ declare namespace LocalJSX {
9738
11206
  "ion-content": Omit<IonContent, keyof IonContentAttributes> & { [K in keyof IonContent & keyof IonContentAttributes]?: IonContent[K] } & { [K in keyof IonContent & keyof IonContentAttributes as `attr:${K}`]?: IonContentAttributes[K] } & { [K in keyof IonContent & keyof IonContentAttributes as `prop:${K}`]?: IonContent[K] };
9739
11207
  "ion-datetime": Omit<IonDatetime, keyof IonDatetimeAttributes> & { [K in keyof IonDatetime & keyof IonDatetimeAttributes]?: IonDatetime[K] } & { [K in keyof IonDatetime & keyof IonDatetimeAttributes as `attr:${K}`]?: IonDatetimeAttributes[K] } & { [K in keyof IonDatetime & keyof IonDatetimeAttributes as `prop:${K}`]?: IonDatetime[K] };
9740
11208
  "ion-datetime-button": Omit<IonDatetimeButton, keyof IonDatetimeButtonAttributes> & { [K in keyof IonDatetimeButton & keyof IonDatetimeButtonAttributes]?: IonDatetimeButton[K] } & { [K in keyof IonDatetimeButton & keyof IonDatetimeButtonAttributes as `attr:${K}`]?: IonDatetimeButtonAttributes[K] } & { [K in keyof IonDatetimeButton & keyof IonDatetimeButtonAttributes as `prop:${K}`]?: IonDatetimeButton[K] };
11209
+ "ion-divider": Omit<IonDivider, keyof IonDividerAttributes> & { [K in keyof IonDivider & keyof IonDividerAttributes]?: IonDivider[K] } & { [K in keyof IonDivider & keyof IonDividerAttributes as `attr:${K}`]?: IonDividerAttributes[K] } & { [K in keyof IonDivider & keyof IonDividerAttributes as `prop:${K}`]?: IonDivider[K] };
9741
11210
  "ion-fab": Omit<IonFab, keyof IonFabAttributes> & { [K in keyof IonFab & keyof IonFabAttributes]?: IonFab[K] } & { [K in keyof IonFab & keyof IonFabAttributes as `attr:${K}`]?: IonFabAttributes[K] } & { [K in keyof IonFab & keyof IonFabAttributes as `prop:${K}`]?: IonFab[K] };
9742
11211
  "ion-fab-button": Omit<IonFabButton, keyof IonFabButtonAttributes> & { [K in keyof IonFabButton & keyof IonFabButtonAttributes]?: IonFabButton[K] } & { [K in keyof IonFabButton & keyof IonFabButtonAttributes as `attr:${K}`]?: IonFabButtonAttributes[K] } & { [K in keyof IonFabButton & keyof IonFabButtonAttributes as `prop:${K}`]?: IonFabButton[K] };
9743
11212
  "ion-fab-list": Omit<IonFabList, keyof IonFabListAttributes> & { [K in keyof IonFabList & keyof IonFabListAttributes]?: IonFabList[K] } & { [K in keyof IonFabList & keyof IonFabListAttributes as `attr:${K}`]?: IonFabListAttributes[K] } & { [K in keyof IonFabList & keyof IonFabListAttributes as `prop:${K}`]?: IonFabList[K] };
@@ -9841,6 +11310,7 @@ declare module "@stencil/core" {
9841
11310
  "ion-content": LocalJSX.IntrinsicElements["ion-content"] & JSXBase.HTMLAttributes<HTMLIonContentElement>;
9842
11311
  "ion-datetime": LocalJSX.IntrinsicElements["ion-datetime"] & JSXBase.HTMLAttributes<HTMLIonDatetimeElement>;
9843
11312
  "ion-datetime-button": LocalJSX.IntrinsicElements["ion-datetime-button"] & JSXBase.HTMLAttributes<HTMLIonDatetimeButtonElement>;
11313
+ "ion-divider": LocalJSX.IntrinsicElements["ion-divider"] & JSXBase.HTMLAttributes<HTMLIonDividerElement>;
9844
11314
  "ion-fab": LocalJSX.IntrinsicElements["ion-fab"] & JSXBase.HTMLAttributes<HTMLIonFabElement>;
9845
11315
  "ion-fab-button": LocalJSX.IntrinsicElements["ion-fab-button"] & JSXBase.HTMLAttributes<HTMLIonFabButtonElement>;
9846
11316
  "ion-fab-list": LocalJSX.IntrinsicElements["ion-fab-list"] & JSXBase.HTMLAttributes<HTMLIonFabListElement>;