@ionic/core 8.8.5 → 8.8.6-dev.11777490150.1970e4f2

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 (1096) 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-gallery.d.ts +11 -0
  33. package/components/ion-gallery.js +4 -0
  34. package/components/ion-grid.js +1 -1
  35. package/components/ion-header.js +1 -1
  36. package/components/ion-icon.js +1 -1
  37. package/components/ion-img.js +1 -1
  38. package/components/ion-infinite-scroll-content.js +1 -1
  39. package/components/ion-infinite-scroll.js +1 -1
  40. package/components/ion-input-otp.js +1 -1
  41. package/components/ion-input-password-toggle.js +1 -1
  42. package/components/ion-input.js +1 -1
  43. package/components/ion-item-divider.js +1 -1
  44. package/components/ion-item-group.js +1 -1
  45. package/components/ion-item-option.js +1 -1
  46. package/components/ion-item-options.js +1 -1
  47. package/components/ion-item-sliding.js +1 -1
  48. package/components/ion-item.js +1 -1
  49. package/components/ion-label.js +1 -1
  50. package/components/ion-list-header.js +1 -1
  51. package/components/ion-list.js +1 -1
  52. package/components/ion-loading.js +1 -1
  53. package/components/ion-menu-button.js +1 -1
  54. package/components/ion-menu-toggle.js +1 -1
  55. package/components/ion-menu.js +1 -1
  56. package/components/ion-modal.js +1 -1
  57. package/components/ion-nav-link.js +1 -1
  58. package/components/ion-nav.js +1 -1
  59. package/components/ion-note.js +1 -1
  60. package/components/ion-picker-column-option.js +1 -1
  61. package/components/ion-picker-column.js +1 -1
  62. package/components/ion-picker-legacy-column.js +1 -1
  63. package/components/ion-picker-legacy.js +1 -1
  64. package/components/ion-picker.js +1 -1
  65. package/components/ion-popover.js +1 -1
  66. package/components/ion-progress-bar.js +1 -1
  67. package/components/ion-radio-group.js +1 -1
  68. package/components/ion-radio.js +1 -1
  69. package/components/ion-range.js +1 -1
  70. package/components/ion-refresher-content.js +1 -1
  71. package/components/ion-refresher.js +1 -1
  72. package/components/ion-reorder-group.js +1 -1
  73. package/components/ion-reorder.js +1 -1
  74. package/components/ion-ripple-effect.js +1 -1
  75. package/components/ion-route-redirect.js +1 -1
  76. package/components/ion-route.js +1 -1
  77. package/components/ion-router-link.js +1 -1
  78. package/components/ion-router-outlet.js +1 -1
  79. package/components/ion-router.js +1 -1
  80. package/components/ion-row.js +1 -1
  81. package/components/ion-searchbar.js +1 -1
  82. package/components/ion-segment-button.js +1 -1
  83. package/components/ion-segment-content.js +1 -1
  84. package/components/ion-segment-view.js +1 -1
  85. package/components/ion-segment.js +1 -1
  86. package/components/ion-select-modal.js +1 -1
  87. package/components/ion-select-option.js +1 -1
  88. package/components/ion-select-popover.js +1 -1
  89. package/components/ion-select.js +1 -1
  90. package/components/ion-skeleton-text.js +1 -1
  91. package/components/ion-spinner.js +1 -1
  92. package/components/ion-split-pane.js +1 -1
  93. package/components/ion-tab-bar.js +1 -1
  94. package/components/ion-tab-button.js +1 -1
  95. package/components/ion-tab.js +1 -1
  96. package/components/ion-tabs.js +1 -1
  97. package/components/ion-text.js +1 -1
  98. package/components/ion-textarea.js +1 -1
  99. package/components/ion-thumbnail.js +1 -1
  100. package/components/ion-title.js +1 -1
  101. package/components/ion-toast.js +1 -1
  102. package/components/ion-toggle.js +1 -1
  103. package/components/ion-toolbar.js +1 -1
  104. package/components/p-0sa2JgYA.js +4 -0
  105. package/components/p-3Ni1Z654.js +4 -0
  106. package/{dist/ionic/p-D13Eaw-8.js → components/p-9gxM3tAr.js} +1 -1
  107. package/components/p-B2rpt1JV.js +4 -0
  108. package/components/{p-ak_d-z48.js → p-B636tzQ7.js} +1 -1
  109. package/components/p-B6zr9RZN.js +4 -0
  110. package/components/p-B71c6yUH.js +4 -0
  111. package/components/p-B8Oa6a_k.js +4 -0
  112. package/components/p-BCDEEm9n.js +4 -0
  113. package/components/p-BCFZKMI6.js +4 -0
  114. package/components/p-BDndEqui.js +4 -0
  115. package/components/p-BDqjX7Z_.js +4 -0
  116. package/components/p-BErKjY03.js +4 -0
  117. package/components/p-BFCM_1oE.js +4 -0
  118. package/components/p-BFbsici0.js +4 -0
  119. package/components/p-BLCuPAtN.js +4 -0
  120. package/components/{p-cyNmxje6.js → p-BLysWQA1.js} +1 -1
  121. package/components/p-BO4aickU.js +4 -0
  122. package/components/p-BRWWcnBq.js +4 -0
  123. package/components/p-BXcCGjEc.js +4 -0
  124. package/components/p-BYSs-jZz.js +4 -0
  125. package/components/p-BaPtaYEC.js +4 -0
  126. package/components/p-BbQGmZyu.js +4 -0
  127. package/components/p-BcbmT6b3.js +4 -0
  128. package/components/p-BeVlsaLA.js +4 -0
  129. package/components/p-BjW8SOqw.js +4 -0
  130. package/components/p-Bp__mr16.js +4 -0
  131. package/components/p-BqDiJgC_.js +4 -0
  132. package/components/p-BqImG3uk.js +4 -0
  133. package/components/p-BwKpO3Is.js +4 -0
  134. package/components/p-C00Y_WJv.js +4 -0
  135. package/components/p-C0U8YqYW.js +4 -0
  136. package/components/p-C8ktKu9j.js +4 -0
  137. package/components/p-CIoAIKEr.js +4 -0
  138. package/components/p-CKfNwyAb.js +4 -0
  139. package/components/p-CN-WzkJE.js +4 -0
  140. package/components/p-CVBkx7m1.js +4 -0
  141. package/components/p-Cb9imMZh.js +4 -0
  142. package/components/p-Cf9-xP7P.js +4 -0
  143. package/components/{p-Cwv-vmkN.js → p-CjSx8W-k.js} +1 -1
  144. package/components/p-Cmql_g3_.js +4 -0
  145. package/components/p-CoFqDNc5.js +4 -0
  146. package/components/p-CtiqM786.js +4 -0
  147. package/components/p-D1t981Ih.js +4 -0
  148. package/components/p-DAv9P_LE.js +4 -0
  149. package/components/p-DDw-NYxz.js +4 -0
  150. package/components/p-DH_9VCbD.js +4 -0
  151. package/components/p-DTtRWhIZ.js +4 -0
  152. package/components/p-DVcs-2q3.js +4 -0
  153. package/components/p-DXUyXgVL.js +4 -0
  154. package/components/p-DaJxRxSQ.js +4 -0
  155. package/components/p-Dhi5xtNS.js +4 -0
  156. package/components/p-Di5rHO3q.js +4 -0
  157. package/components/p-IMXp2Inn.js +4 -0
  158. package/components/p-TR4ubkPu.js +4 -0
  159. package/components/p-XegQjlzJ.js +4 -0
  160. package/components/p-fIOYmaqA.js +4 -0
  161. package/components/p-lIOqnNXn.js +4 -0
  162. package/{dist/ionic/p-BvFYtOdE.js → components/p-oF-CwZ0b.js} +1 -1
  163. package/components/p-sK-FK9CT.js +4 -0
  164. package/components/p-t98_NeNv.js +4 -0
  165. package/components/p-vCpF32Z7.js +4 -0
  166. package/components/p-vXpMhGrs.js +4 -0
  167. package/components/p-wCDzv5Q8.js +4 -0
  168. package/components/{p-YLXPWgVj.js → p-zWP0sUV_.js} +1 -1
  169. package/css/core.css +1 -1
  170. package/css/core.css.map +1 -1
  171. package/css/display.css +1 -1
  172. package/css/display.css.map +1 -1
  173. package/css/flex-utils.css +1 -1
  174. package/css/flex-utils.css.map +1 -1
  175. package/css/float-elements.css.map +1 -1
  176. package/css/global.bundle.css.map +1 -1
  177. package/css/ionic/bundle.ionic.css +1 -0
  178. package/css/ionic/bundle.ionic.css.map +1 -0
  179. package/css/ionic/core.ionic.css +1 -0
  180. package/css/ionic/core.ionic.css.map +1 -0
  181. package/css/ionic/global.bundle.ionic.css +1 -0
  182. package/css/ionic/global.bundle.ionic.css.map +1 -0
  183. package/css/ionic/ionic-swiper.ionic.css +1 -0
  184. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  185. package/css/ionic/link.ionic.css +1 -0
  186. package/css/ionic/link.ionic.css.map +1 -0
  187. package/css/ionic/structure.ionic.css +1 -0
  188. package/css/ionic/structure.ionic.css.map +1 -0
  189. package/css/ionic/typography.ionic.css +1 -0
  190. package/css/ionic/typography.ionic.css.map +1 -0
  191. package/css/ionic/utils.bundle.ionic.css +1 -0
  192. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  193. package/css/ionic-swiper.css +1 -1
  194. package/css/ionic-swiper.css.map +1 -1
  195. package/css/ionic.bundle.css +1 -1
  196. package/css/ionic.bundle.css.map +1 -1
  197. package/css/normalize.css.map +1 -1
  198. package/css/padding.css.map +1 -1
  199. package/css/palettes/dark.always.css.map +1 -1
  200. package/css/palettes/dark.class.css.map +1 -1
  201. package/css/palettes/dark.system.css.map +1 -1
  202. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  203. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  204. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  205. package/css/palettes/high-contrast.always.css.map +1 -1
  206. package/css/palettes/high-contrast.class.css.map +1 -1
  207. package/css/palettes/high-contrast.system.css.map +1 -1
  208. package/css/structure.css.map +1 -1
  209. package/css/text-alignment.css.map +1 -1
  210. package/css/text-transformation.css.map +1 -1
  211. package/css/typography.css.map +1 -1
  212. package/css/utils.bundle.css +1 -1
  213. package/css/utils.bundle.css.map +1 -1
  214. package/dist/cjs/{animation-Dg4yiuR2.js → animation-DknMeJ3x.js} +3 -3
  215. package/dist/cjs/{app-globals-CLI8xCmk.js → app-globals-DtAeky3x.js} +1 -1
  216. package/dist/cjs/{button-active-FscMI17-.js → button-active-JoIWyYri.js} +2 -2
  217. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BnRBm_ys.js} +3 -3
  218. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  219. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  220. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  221. package/dist/cjs/config-DWdFbSNK.js +35 -0
  222. package/dist/cjs/{data-BYlBjkMU.js → data-DuOuKG7I.js} +6 -6
  223. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  224. package/dist/cjs/{framework-delegate-CRgp8o_p.js → framework-delegate-Dx9FrqAC.js} +4 -2
  225. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-D3Ay9mmg.js} +1 -1
  226. package/dist/cjs/{helpers-CxTYJdbT.js → helpers-DJYxKN5U.js} +57 -4
  227. package/dist/cjs/{config-BukYi_pW.js → index-BJlwOs11.js} +1 -31
  228. package/dist/cjs/{index-MbaBbWXk.js → index-BJrpF9T3.js} +2 -2
  229. package/dist/cjs/{index-CFUwM5x_.js → index-Cer2Qy4I.js} +15 -15
  230. package/dist/cjs/{index-DqmRDbxg.js → index-CgAbCW6L.js} +2 -0
  231. package/dist/cjs/{index-CqT-2gKy.js → index-CzcLEdQ5.js} +41 -4
  232. package/dist/cjs/{index-YcSftOMz.js → index-DMJjUhXH.js} +9 -8
  233. package/dist/cjs/{index-C845Ti6K.js → index-D_mPAIqF.js} +4 -4
  234. package/dist/cjs/index.cjs.js +16 -16
  235. package/dist/cjs/{input-shims-Dl5cnc_e.js → input-shims-Dn33gFln.js} +18 -17
  236. package/dist/cjs/{input.utils-DmeJ8dmo.js → input.utils-DnVnhWEF.js} +5 -5
  237. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -29
  238. package/dist/cjs/ion-action-sheet.cjs.entry.js +41 -22
  239. package/dist/cjs/ion-alert.cjs.entry.js +62 -41
  240. package/dist/cjs/ion-app_8.cjs.entry.js +292 -157
  241. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -13
  242. package/dist/cjs/ion-back-button.cjs.entry.js +31 -22
  243. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -7
  244. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -18
  245. package/dist/cjs/ion-button_2.cjs.entry.js +59 -22
  246. package/dist/cjs/ion-card_5.cjs.entry.js +55 -33
  247. package/dist/cjs/ion-checkbox.cjs.entry.js +34 -16
  248. package/dist/cjs/ion-chip.cjs.entry.js +50 -9
  249. package/dist/cjs/ion-col_3.cjs.entry.js +56 -57
  250. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -9
  251. package/dist/cjs/ion-datetime_3.cjs.entry.js +116 -41
  252. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  253. package/dist/cjs/ion-fab_3.cjs.entry.js +44 -28
  254. package/dist/cjs/ion-gallery.cjs.entry.js +330 -0
  255. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  256. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +93 -17
  257. package/dist/cjs/ion-input-otp.cjs.entry.js +74 -9
  258. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +53 -15
  259. package/dist/cjs/ion-input.cjs.entry.js +124 -34
  260. package/dist/cjs/ion-item-option_3.cjs.entry.js +186 -21
  261. package/dist/cjs/ion-item_8.cjs.entry.js +116 -49
  262. package/dist/cjs/ion-loading.cjs.entry.js +22 -19
  263. package/dist/cjs/ion-menu_3.cjs.entry.js +47 -29
  264. package/dist/cjs/ion-modal.cjs.entry.js +262 -138
  265. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -11
  266. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -8
  267. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  268. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  269. package/dist/cjs/ion-popover.cjs.entry.js +21 -19
  270. package/dist/cjs/ion-progress-bar.cjs.entry.js +27 -9
  271. package/dist/cjs/ion-radio_2.cjs.entry.js +35 -17
  272. package/dist/cjs/ion-range.cjs.entry.js +20 -13
  273. package/dist/cjs/ion-refresher_2.cjs.entry.js +42 -23
  274. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -14
  275. package/dist/cjs/ion-ripple-effect.cjs.entry.js +15 -7
  276. package/dist/cjs/ion-route_4.cjs.entry.js +10 -9
  277. package/dist/cjs/ion-searchbar.cjs.entry.js +137 -24
  278. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  279. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  280. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -16
  281. package/dist/cjs/ion-select-modal.cjs.entry.js +97 -40
  282. package/dist/cjs/ion-select_3.cjs.entry.js +453 -84
  283. package/dist/cjs/ion-spinner.cjs.entry.js +30 -8
  284. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -9
  285. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +147 -23
  286. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  287. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  288. package/dist/cjs/ion-textarea.cjs.entry.js +137 -23
  289. package/dist/cjs/ion-toast.cjs.entry.js +70 -46
  290. package/dist/cjs/ion-toggle.cjs.entry.js +82 -25
  291. package/dist/cjs/ionic-global-CSEbHD_F.js +519 -0
  292. package/dist/cjs/ionic.cjs.js +4 -4
  293. package/dist/cjs/{ios.transition-trBiC95R.js → ios.transition-UCjoxA3D.js} +7 -5
  294. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Bhav6x-R.js} +4 -3
  295. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Dsczf-iT.js} +1 -1
  296. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-tqGDP9SU.js} +11 -9
  297. package/dist/cjs/list-a-7GSA6K.js +8 -0
  298. package/dist/cjs/loader.cjs.js +4 -4
  299. package/dist/cjs/{md.transition-CUQECuvD.js → md.transition-CNwlchQn.js} +6 -5
  300. package/dist/cjs/{notch-controller-sD-lTpdc.js → notch-controller-CgtkBzy0.js} +4 -4
  301. package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-Hci_7vw_.js} +110 -16
  302. package/dist/cjs/select-option-render-C7klBX2H.js +81 -0
  303. package/dist/cjs/{status-tap-CCJk5VgT.js → status-tap-CTY2dMsZ.js} +4 -3
  304. package/dist/cjs/{swipe-back-BGhTQ1CU.js → swipe-back-jJFi5KCB.js} +3 -2
  305. package/dist/cjs/{theme-CeDs6Hcv.js → theme-IlOsGAz7.js} +25 -1
  306. package/dist/cjs/validity-QmuwEptc.js +51 -0
  307. package/dist/cjs/x-BTF99yFH.js +8 -0
  308. package/dist/collection/collection-manifest.json +7 -0
  309. package/dist/collection/components/accordion/accordion.ionic.css +201 -0
  310. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  311. package/dist/collection/components/accordion/accordion.js +41 -27
  312. package/dist/collection/components/accordion/accordion.md.css +67 -59
  313. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  314. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  315. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  316. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  317. package/dist/collection/components/action-sheet/action-sheet.ionic.css +834 -0
  318. package/dist/collection/components/action-sheet/action-sheet.ios.css +102 -6
  319. package/dist/collection/components/action-sheet/action-sheet.js +32 -13
  320. package/dist/collection/components/action-sheet/action-sheet.md.css +101 -5
  321. package/dist/collection/components/alert/alert.ionic.css +1165 -0
  322. package/dist/collection/components/alert/alert.ios.css +102 -1
  323. package/dist/collection/components/alert/alert.js +51 -30
  324. package/dist/collection/components/alert/alert.md.css +102 -1
  325. package/dist/collection/components/app/app.js +15 -83
  326. package/dist/collection/components/avatar/avatar.ionic.css +391 -0
  327. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  328. package/dist/collection/components/avatar/avatar.js +120 -4
  329. package/dist/collection/components/avatar/avatar.md.css +51 -0
  330. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  331. package/dist/collection/components/back-button/back-button.js +27 -19
  332. package/dist/collection/components/back-button/back-button.md.css +60 -48
  333. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  334. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  335. package/dist/collection/components/backdrop/backdrop.js +12 -6
  336. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  337. package/dist/collection/components/badge/badge.ionic.css +275 -0
  338. package/dist/collection/components/badge/badge.ios.css +139 -12
  339. package/dist/collection/components/badge/badge.js +145 -9
  340. package/dist/collection/components/badge/badge.md.css +123 -12
  341. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  342. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  343. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  344. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  345. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  346. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  347. package/dist/collection/components/button/button.ionic.css +646 -0
  348. package/dist/collection/components/button/button.ios.css +154 -46
  349. package/dist/collection/components/button/button.js +63 -27
  350. package/dist/collection/components/button/button.md.css +150 -50
  351. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  352. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  353. package/dist/collection/components/buttons/buttons.js +15 -9
  354. package/dist/collection/components/buttons/buttons.md.css +55 -3
  355. package/dist/collection/components/card/card.ionic.css +144 -0
  356. package/dist/collection/components/card/card.ios.css +65 -14
  357. package/dist/collection/components/card/card.js +41 -10
  358. package/dist/collection/components/card/card.md.css +65 -14
  359. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  360. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  361. package/dist/collection/components/card-content/card-content.js +12 -10
  362. package/dist/collection/components/card-content/card-content.md.css +20 -35
  363. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  364. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  365. package/dist/collection/components/card-header/card-header.js +13 -10
  366. package/dist/collection/components/card-header/card-header.md.css +27 -15
  367. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  368. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  369. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  370. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  371. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  372. package/dist/collection/components/card-title/card-title.js +11 -8
  373. package/dist/collection/components/card-title/card-title.md.css +73 -0
  374. package/dist/collection/components/checkbox/checkbox.ionic.css +539 -0
  375. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  376. package/dist/collection/components/checkbox/checkbox.js +70 -14
  377. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  378. package/dist/collection/components/chip/chip.ionic.css +217 -0
  379. package/dist/collection/components/chip/chip.ios.css +67 -14
  380. package/dist/collection/components/chip/chip.js +108 -8
  381. package/dist/collection/components/chip/chip.md.css +67 -14
  382. package/dist/collection/components/col/col.css +192 -4
  383. package/dist/collection/components/col/col.js +211 -61
  384. package/dist/collection/components/content/content.css +8 -2
  385. package/dist/collection/components/content/content.js +16 -11
  386. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  387. package/dist/collection/components/datetime/datetime.ios.css +302 -106
  388. package/dist/collection/components/datetime/datetime.js +98 -20
  389. package/dist/collection/components/datetime/datetime.md.css +293 -96
  390. package/dist/collection/components/datetime/utils/data.js +5 -5
  391. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  392. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  393. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  394. package/dist/collection/components/divider/divider.ionic.css +148 -0
  395. package/dist/collection/components/divider/divider.ios.css +87 -0
  396. package/dist/collection/components/divider/divider.js +94 -0
  397. package/dist/collection/components/divider/divider.md.css +87 -0
  398. package/dist/collection/components/fab/fab.css +25 -1
  399. package/dist/collection/components/fab/fab.js +9 -5
  400. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  401. package/dist/collection/components/fab-button/fab-button.js +36 -21
  402. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  403. package/dist/collection/components/fab-list/fab-list.css +12 -0
  404. package/dist/collection/components/fab-list/fab-list.js +9 -5
  405. package/dist/collection/components/footer/footer.ios.css +14 -2
  406. package/dist/collection/components/footer/footer.js +21 -16
  407. package/dist/collection/components/footer/footer.md.css +12 -0
  408. package/dist/collection/components/gallery/gallery-interface.js +1 -0
  409. package/dist/collection/components/gallery/gallery.css +38 -0
  410. package/dist/collection/components/gallery/gallery.js +421 -0
  411. package/dist/collection/components/gallery/test/utils.js +100 -0
  412. package/dist/collection/components/grid/grid.css +12 -0
  413. package/dist/collection/components/grid/grid.js +9 -5
  414. package/dist/collection/components/header/header.ionic.css +97 -0
  415. package/dist/collection/components/header/header.ios.css +25 -10
  416. package/dist/collection/components/header/header.js +50 -19
  417. package/dist/collection/components/header/header.md.css +23 -8
  418. package/dist/collection/components/header/header.utils.js +5 -5
  419. package/dist/collection/components/img/img.js +8 -2
  420. package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
  421. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  422. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  423. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  424. package/dist/collection/components/input/input.ionic.css +889 -0
  425. package/dist/collection/components/input/input.ios.css +223 -135
  426. package/dist/collection/components/input/input.js +148 -37
  427. package/dist/collection/components/input/input.md.css +193 -207
  428. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  429. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  430. package/dist/collection/components/input-otp/input-otp.js +73 -6
  431. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  432. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  433. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  434. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  435. package/dist/collection/components/item/item.ionic.css +508 -0
  436. package/dist/collection/components/item/item.ios.css +109 -69
  437. package/dist/collection/components/item/item.js +51 -20
  438. package/dist/collection/components/item/item.md.css +120 -68
  439. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  440. package/dist/collection/components/item-divider/item-divider.js +11 -8
  441. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  442. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  443. package/dist/collection/components/item-group/item-group.js +13 -7
  444. package/dist/collection/components/item-group/item-group.md.css +12 -0
  445. package/dist/collection/components/item-option/item-option.ionic.css +278 -0
  446. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  447. package/dist/collection/components/item-option/item-option.js +73 -9
  448. package/dist/collection/components/item-option/item-option.md.css +136 -29
  449. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  450. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  451. package/dist/collection/components/item-options/item-options.js +13 -7
  452. package/dist/collection/components/item-options/item-options.md.css +77 -34
  453. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  454. package/dist/collection/components/item-sliding/item-sliding.js +144 -4
  455. package/dist/collection/components/label/label.ios.css +18 -0
  456. package/dist/collection/components/label/label.js +11 -8
  457. package/dist/collection/components/label/label.md.css +18 -0
  458. package/dist/collection/components/list/list.ionic.css +212 -0
  459. package/dist/collection/components/list/list.ios.css +54 -14
  460. package/dist/collection/components/list/list.js +48 -9
  461. package/dist/collection/components/list/list.md.css +56 -16
  462. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  463. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  464. package/dist/collection/components/list-header/list-header.js +11 -8
  465. package/dist/collection/components/list-header/list-header.md.css +82 -38
  466. package/dist/collection/components/loading/loading.ios.css +13 -1
  467. package/dist/collection/components/loading/loading.js +14 -11
  468. package/dist/collection/components/loading/loading.md.css +13 -1
  469. package/dist/collection/components/menu/menu.ios.css +15 -3
  470. package/dist/collection/components/menu/menu.js +12 -7
  471. package/dist/collection/components/menu/menu.md.css +15 -3
  472. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  473. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  474. package/dist/collection/components/menu-button/menu-button.js +26 -10
  475. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  476. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  477. package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
  478. package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
  479. package/dist/collection/components/modal/animations/sheet.js +8 -2
  480. package/dist/collection/components/modal/gestures/sheet.js +76 -10
  481. package/dist/collection/components/modal/modal.ionic.css +247 -0
  482. package/dist/collection/components/modal/modal.ios.css +178 -70
  483. package/dist/collection/components/modal/modal.js +50 -12
  484. package/dist/collection/components/modal/modal.md.css +178 -70
  485. package/dist/collection/components/nav/nav.css +7 -1
  486. package/dist/collection/components/nav/nav.js +11 -5
  487. package/dist/collection/components/nav-link/nav-link.js +5 -1
  488. package/dist/collection/components/note/note.ios.css +12 -0
  489. package/dist/collection/components/note/note.js +11 -8
  490. package/dist/collection/components/note/note.md.css +12 -0
  491. package/dist/collection/components/picker/picker.ios.css +15 -3
  492. package/dist/collection/components/picker/picker.js +8 -5
  493. package/dist/collection/components/picker/picker.md.css +15 -3
  494. package/dist/collection/components/picker-column/picker-column.css +9 -2
  495. package/dist/collection/components/picker-column/picker-column.js +8 -7
  496. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  497. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  498. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  499. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  500. package/dist/collection/components/picker-legacy/picker.js +7 -6
  501. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  502. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  503. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  504. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  505. package/dist/collection/components/popover/popover.ionic.css +290 -0
  506. package/dist/collection/components/popover/popover.ios.css +29 -1
  507. package/dist/collection/components/popover/popover.js +18 -15
  508. package/dist/collection/components/popover/popover.md.css +29 -1
  509. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  510. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  511. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  512. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  513. package/dist/collection/components/radio/radio.ionic.css +422 -0
  514. package/dist/collection/components/radio/radio.ios.css +134 -91
  515. package/dist/collection/components/radio/radio.js +14 -9
  516. package/dist/collection/components/radio/radio.md.css +134 -91
  517. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  518. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  519. package/dist/collection/components/radio-group/radio-group.js +48 -7
  520. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  521. package/dist/collection/components/range/range.ionic.css +567 -0
  522. package/dist/collection/components/range/range.ios.css +128 -85
  523. package/dist/collection/components/range/range.js +16 -10
  524. package/dist/collection/components/range/range.md.css +128 -85
  525. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  526. package/dist/collection/components/refresher/refresher.js +11 -8
  527. package/dist/collection/components/refresher/refresher.md.css +15 -2
  528. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  529. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  530. package/dist/collection/components/reorder/reorder.js +33 -6
  531. package/dist/collection/components/reorder/reorder.md.css +6 -0
  532. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  533. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  534. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  535. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  536. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  537. package/dist/collection/components/route/route.js +4 -0
  538. package/dist/collection/components/router/router.js +4 -0
  539. package/dist/collection/components/router-link/router-link.css +8 -2
  540. package/dist/collection/components/router-link/router-link.js +9 -5
  541. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  542. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  543. package/dist/collection/components/row/row.css +16 -0
  544. package/dist/collection/components/row/row.js +9 -2
  545. package/dist/collection/components/searchbar/searchbar.ionic.css +626 -0
  546. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  547. package/dist/collection/components/searchbar/searchbar.js +180 -33
  548. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  549. package/dist/collection/components/segment/segment.ionic.css +115 -0
  550. package/dist/collection/components/segment/segment.ios.css +45 -2
  551. package/dist/collection/components/segment/segment.js +11 -8
  552. package/dist/collection/components/segment/segment.md.css +45 -2
  553. package/dist/collection/components/segment-button/segment-button.ionic.css +353 -0
  554. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  555. package/dist/collection/components/segment-button/segment-button.js +11 -8
  556. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  557. package/dist/collection/components/segment-content/segment-content.js +1 -1
  558. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  559. package/dist/collection/components/segment-view/segment-view.js +6 -4
  560. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  561. package/dist/collection/components/select/select.ionic.css +810 -0
  562. package/dist/collection/components/select/select.ios.css +348 -176
  563. package/dist/collection/components/select/select.js +434 -66
  564. package/dist/collection/components/select/select.md.css +364 -178
  565. package/dist/collection/components/select-modal/select-modal.ionic.css +154 -0
  566. package/dist/collection/components/select-modal/select-modal.ios.css +95 -0
  567. package/dist/collection/components/select-modal/select-modal.js +109 -32
  568. package/dist/collection/components/select-modal/select-modal.md.css +83 -0
  569. package/dist/collection/components/select-option/select-option.js +32 -2
  570. package/dist/collection/components/select-popover/select-popover.ionic.css +499 -0
  571. package/dist/collection/components/select-popover/select-popover.ios.css +100 -0
  572. package/dist/collection/components/select-popover/select-popover.js +72 -31
  573. package/dist/collection/components/select-popover/select-popover.md.css +100 -0
  574. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  575. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  576. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  577. package/dist/collection/components/spinner/spinner.js +47 -6
  578. package/dist/collection/components/spinner/spinner.native.css +199 -0
  579. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  580. package/dist/collection/components/split-pane/split-pane.js +15 -8
  581. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  582. package/dist/collection/components/tab/tab.js +6 -2
  583. package/dist/collection/components/tab-bar/tab-bar.ionic.css +227 -0
  584. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  585. package/dist/collection/components/tab-bar/tab-bar.js +171 -13
  586. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  587. package/dist/collection/components/tab-button/tab-button.ionic.css +348 -0
  588. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  589. package/dist/collection/components/tab-button/tab-button.js +54 -9
  590. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  591. package/dist/collection/components/tabs/tabs.css +7 -1
  592. package/dist/collection/components/tabs/tabs.js +4 -1
  593. package/dist/collection/components/text/text.css +6 -0
  594. package/dist/collection/components/text/text.js +7 -6
  595. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  596. package/dist/collection/components/textarea/textarea.ios.css +298 -158
  597. package/dist/collection/components/textarea/textarea.js +162 -24
  598. package/dist/collection/components/textarea/textarea.md.css +312 -159
  599. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  600. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  601. package/dist/collection/components/title/title.ionic.css +127 -0
  602. package/dist/collection/components/title/title.ios.css +32 -4
  603. package/dist/collection/components/title/title.js +13 -7
  604. package/dist/collection/components/title/title.md.css +32 -4
  605. package/dist/collection/components/toast/animations/utils.js +1 -1
  606. package/dist/collection/components/toast/toast.ionic.css +394 -0
  607. package/dist/collection/components/toast/toast.ios.css +84 -45
  608. package/dist/collection/components/toast/toast.js +76 -13
  609. package/dist/collection/components/toast/toast.md.css +84 -45
  610. package/dist/collection/components/toggle/toggle.ionic.css +508 -0
  611. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  612. package/dist/collection/components/toggle/toggle.js +73 -18
  613. package/dist/collection/components/toggle/toggle.md.css +244 -131
  614. package/dist/collection/components/toolbar/test/image.svg +1 -0
  615. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  616. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  617. package/dist/collection/components/toolbar/toolbar.js +218 -13
  618. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  619. package/dist/collection/global/ionic-global.js +241 -13
  620. package/dist/collection/utils/focus-trap.js +13 -2
  621. package/dist/collection/utils/focus-visible.js +22 -0
  622. package/dist/collection/utils/forms/validity.js +31 -0
  623. package/dist/collection/utils/framework-delegate.js +3 -1
  624. package/dist/collection/utils/hardware-back-button.js +15 -0
  625. package/dist/collection/utils/helpers.js +57 -3
  626. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  627. package/dist/collection/utils/media.js +1 -0
  628. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  629. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  630. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  631. package/dist/collection/utils/overlays.js +91 -6
  632. package/dist/collection/utils/select-option-render.js +76 -0
  633. package/dist/collection/utils/test/playwright/drag-element.js +3 -4
  634. package/dist/collection/utils/test/playwright/generator.js +48 -23
  635. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  636. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  637. package/dist/collection/utils/theme.js +25 -1
  638. package/dist/collection/utils/transition/ios.transition.js +1 -0
  639. package/dist/docs.json +8781 -283
  640. package/dist/esm/{animation-CnGMT4ji.js → animation-Cqe2x-Pt.js} +2 -2
  641. package/dist/esm/{app-globals-DhZjtldk.js → app-globals-Dk1rB3aE.js} +1 -1
  642. package/dist/esm/{button-active-BBx21brx.js → button-active-g6ZnZzDZ.js} +2 -2
  643. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-C4lYa1nV.js} +1 -1
  644. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  645. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  646. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  647. package/dist/esm/config-BwKpO3Is.js +31 -0
  648. package/dist/esm/{data-B9iGR5YO.js → data-BNKYavC3.js} +6 -6
  649. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  650. package/dist/esm/{framework-delegate-CyxE1S_P.js → framework-delegate-CjVwn_KZ.js} +4 -2
  651. package/dist/esm/{haptic-DzAMWJuk.js → haptic-_88k1V5U.js} +1 -1
  652. package/dist/esm/{helpers-Tl8jw6S2.js → helpers-Do7zwvM1.js} +58 -5
  653. package/dist/esm/{index-hW6eNZ3o.js → index-BmkLokUL.js} +2 -2
  654. package/dist/esm/{index-BtUdxPjv.js → index-C5t9-ciC.js} +4 -3
  655. package/dist/esm/{index-B-hkiOUh.js → index-CGthURny.js} +4 -4
  656. package/dist/esm/{index-DV3sJJW8.js → index-D2tu5BUg.js} +2 -1
  657. package/dist/esm/{config-TO1rZH52.js → index-D4ugF_sT.js} +2 -29
  658. package/dist/esm/{index-IGIE5vDm.js → index-Omi_TcwW.js} +41 -4
  659. package/dist/esm/{index-B2KwgBLx.js → index-hpH08p5s.js} +11 -11
  660. package/dist/esm/index.js +14 -14
  661. package/dist/esm/{input-shims-AaDhOpKN.js → input-shims-vDjCsx95.js} +7 -6
  662. package/dist/esm/{input.utils-Bxa_DQ7-.js → input.utils-B9Q5xHp6.js} +3 -3
  663. package/dist/esm/ion-accordion_2.entry.js +61 -29
  664. package/dist/esm/ion-action-sheet.entry.js +41 -22
  665. package/dist/esm/ion-alert.entry.js +61 -40
  666. package/dist/esm/ion-app_8.entry.js +292 -157
  667. package/dist/esm/ion-avatar_3.entry.js +125 -13
  668. package/dist/esm/ion-back-button.entry.js +31 -22
  669. package/dist/esm/ion-backdrop.entry.js +10 -7
  670. package/dist/esm/ion-breadcrumb_2.entry.js +54 -18
  671. package/dist/esm/ion-button_2.entry.js +59 -22
  672. package/dist/esm/ion-card_5.entry.js +55 -33
  673. package/dist/esm/ion-checkbox.entry.js +34 -16
  674. package/dist/esm/ion-chip.entry.js +50 -9
  675. package/dist/esm/ion-col_3.entry.js +56 -57
  676. package/dist/esm/ion-datetime-button.entry.js +13 -9
  677. package/dist/esm/ion-datetime_3.entry.js +116 -41
  678. package/dist/esm/ion-divider.entry.js +49 -0
  679. package/dist/esm/ion-fab_3.entry.js +44 -28
  680. package/dist/esm/ion-gallery.entry.js +328 -0
  681. package/dist/esm/ion-img.entry.js +8 -4
  682. package/dist/esm/ion-infinite-scroll_2.entry.js +92 -16
  683. package/dist/esm/ion-input-otp.entry.js +74 -9
  684. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  685. package/dist/esm/ion-input.entry.js +124 -34
  686. package/dist/esm/ion-item-option_3.entry.js +186 -21
  687. package/dist/esm/ion-item_8.entry.js +116 -49
  688. package/dist/esm/ion-loading.entry.js +21 -18
  689. package/dist/esm/ion-menu_3.entry.js +47 -29
  690. package/dist/esm/ion-modal.entry.js +215 -91
  691. package/dist/esm/ion-nav_2.entry.js +14 -11
  692. package/dist/esm/ion-picker-column-option.entry.js +12 -8
  693. package/dist/esm/ion-picker-column.entry.js +13 -13
  694. package/dist/esm/ion-picker.entry.js +10 -6
  695. package/dist/esm/ion-popover.entry.js +21 -19
  696. package/dist/esm/ion-progress-bar.entry.js +27 -9
  697. package/dist/esm/ion-radio_2.entry.js +35 -17
  698. package/dist/esm/ion-range.entry.js +20 -13
  699. package/dist/esm/ion-refresher_2.entry.js +40 -21
  700. package/dist/esm/ion-reorder_2.entry.js +38 -14
  701. package/dist/esm/ion-ripple-effect.entry.js +15 -7
  702. package/dist/esm/ion-route_4.entry.js +10 -9
  703. package/dist/esm/ion-searchbar.entry.js +137 -24
  704. package/dist/esm/ion-segment-content.entry.js +2 -2
  705. package/dist/esm/ion-segment-view.entry.js +6 -3
  706. package/dist/esm/ion-segment_2.entry.js +23 -16
  707. package/dist/esm/ion-select-modal.entry.js +97 -40
  708. package/dist/esm/ion-select_3.entry.js +453 -84
  709. package/dist/esm/ion-spinner.entry.js +30 -8
  710. package/dist/esm/ion-split-pane.entry.js +13 -9
  711. package/dist/esm/ion-tab-bar_2.entry.js +147 -23
  712. package/dist/esm/ion-tab_2.entry.js +8 -7
  713. package/dist/esm/ion-text.entry.js +7 -7
  714. package/dist/esm/ion-textarea.entry.js +137 -23
  715. package/dist/esm/ion-toast.entry.js +45 -21
  716. package/dist/esm/ion-toggle.entry.js +82 -25
  717. package/dist/esm/ionic-global-CAZb-5i-.js +508 -0
  718. package/dist/esm/ionic.js +5 -5
  719. package/dist/esm/{ios.transition--aMF-pDH.js → ios.transition-CzSncKQg.js} +7 -5
  720. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cpw6xVLJ.js} +1 -1
  721. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DJpS2IGK.js} +4 -3
  722. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-CAc33ylR.js} +5 -3
  723. package/dist/esm/list-Dhi5xtNS.js +6 -0
  724. package/dist/esm/loader.js +5 -5
  725. package/dist/esm/{md.transition-BEVbfm8j.js → md.transition-DIsWqYBZ.js} +6 -5
  726. package/dist/esm/{notch-controller-DAcvKU57.js → notch-controller-DiBq57w8.js} +2 -2
  727. package/dist/esm/{overlays-F8GHPo-e.js → overlays-rwDDzEs4.js} +107 -13
  728. package/dist/esm/select-option-render-B2qc5ZP7.js +79 -0
  729. package/dist/esm/{status-tap-BfJqFSLF.js → status-tap-fYFdZg6z.js} +4 -3
  730. package/dist/esm/{swipe-back-BZBFwTQV.js → swipe-back-BzGqTrrq.js} +3 -2
  731. package/dist/esm/{theme-DiVJyqlX.js → theme-DaJxRxSQ.js} +25 -1
  732. package/dist/esm/validity-BjW8SOqw.js +48 -0
  733. package/dist/esm/x-BDqjX7Z_.js +6 -0
  734. package/dist/html.html-data.json +2551 -117
  735. package/dist/ionic/index.esm.js +1 -1
  736. package/dist/ionic/ionic.esm.js +1 -1
  737. package/dist/ionic/p-00c0bd38.entry.js +4 -0
  738. package/dist/ionic/p-05a30032.entry.js +4 -0
  739. package/dist/ionic/p-07d3388f.entry.js +4 -0
  740. package/dist/ionic/p-11nqcMM3.js +4 -0
  741. package/dist/ionic/p-139d02eb.entry.js +4 -0
  742. package/dist/ionic/p-15e3e8f5.entry.js +4 -0
  743. package/dist/ionic/p-1709b0aa.entry.js +4 -0
  744. package/dist/ionic/p-1c2c1869.entry.js +4 -0
  745. package/dist/ionic/p-1c4de46b.entry.js +4 -0
  746. package/dist/ionic/p-1e1c8d61.entry.js +4 -0
  747. package/dist/ionic/p-2311e660.entry.js +4 -0
  748. package/dist/ionic/p-2aa7567e.entry.js +4 -0
  749. package/dist/ionic/p-2ad79c23.entry.js +4 -0
  750. package/dist/ionic/p-2f0073af.entry.js +4 -0
  751. package/dist/ionic/p-37ccbee4.entry.js +4 -0
  752. package/dist/ionic/p-3aba19e2.entry.js +4 -0
  753. package/dist/ionic/p-3f79f594.entry.js +4 -0
  754. package/dist/ionic/p-4079cee3.entry.js +4 -0
  755. package/dist/ionic/p-45825c2c.entry.js +4 -0
  756. package/dist/ionic/p-48026d15.entry.js +4 -0
  757. package/dist/ionic/p-488992b6.entry.js +4 -0
  758. package/dist/ionic/p-4a0260e6.entry.js +4 -0
  759. package/dist/ionic/p-50b61fab.entry.js +4 -0
  760. package/dist/ionic/p-50cd2d57.entry.js +4 -0
  761. package/dist/ionic/p-5274f999.entry.js +4 -0
  762. package/dist/ionic/p-586d4270.entry.js +4 -0
  763. package/dist/ionic/p-68c21b2a.entry.js +4 -0
  764. package/dist/ionic/p-6fbead83.entry.js +4 -0
  765. package/dist/ionic/p-7194f6fa.entry.js +4 -0
  766. package/dist/ionic/p-71b6014c.entry.js +4 -0
  767. package/dist/ionic/p-72491468.entry.js +4 -0
  768. package/dist/ionic/p-7d267dc6.entry.js +4 -0
  769. package/dist/ionic/p-7d5057c4.entry.js +4 -0
  770. package/dist/ionic/p-83c693c4.entry.js +4 -0
  771. package/dist/ionic/p-8537b2fb.entry.js +4 -0
  772. package/dist/ionic/p-8f127a9c.entry.js +4 -0
  773. package/dist/ionic/p-8uDL7fql.js +4 -0
  774. package/dist/ionic/p-9d789053.entry.js +4 -0
  775. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  776. package/dist/ionic/p-BYSs-jZz.js +4 -0
  777. package/dist/ionic/p-BjW8SOqw.js +4 -0
  778. package/{components/p-9VcRUwdB.js → dist/ionic/p-BsfuYVMP.js} +1 -1
  779. package/dist/ionic/p-BwKpO3Is.js +4 -0
  780. package/dist/ionic/p-Bx0bt2Ar.js +4 -0
  781. package/dist/ionic/p-C2mpVKI1.js +4 -0
  782. package/dist/ionic/p-C4uUM9DM.js +4 -0
  783. package/dist/ionic/p-C5zxLmJ_.js +4 -0
  784. package/{components/p-BS1TtEiJ.js → dist/ionic/p-C8IHbcuP.js} +1 -1
  785. package/dist/ionic/p-CBV-BGvD.js +4 -0
  786. package/dist/ionic/p-CDn0uNJA.js +4 -0
  787. package/dist/ionic/p-CFjI63GE.js +4 -0
  788. package/dist/ionic/p-CHE1xWbg.js +4 -0
  789. package/dist/ionic/p-CIk5QtPm.js +4 -0
  790. package/dist/ionic/p-CQKe4n56.js +4 -0
  791. package/dist/ionic/p-CVp2D--1.js +4 -0
  792. package/dist/ionic/p-CWJdc8f_.js +4 -0
  793. package/dist/ionic/p-CXqdKf1K.js +4 -0
  794. package/dist/ionic/p-Cb-0O4h8.js +4 -0
  795. package/dist/ionic/{p-CKvCXMs9.js → p-CbkICFBN.js} +1 -1
  796. package/dist/ionic/p-D1t981Ih.js +4 -0
  797. package/dist/ionic/p-D2tu5BUg.js +4 -0
  798. package/dist/ionic/{p-B8xlpH8p.js → p-DKWXAwlR.js} +1 -1
  799. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  800. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  801. package/dist/ionic/p-DoyDJ2X5.js +4 -0
  802. package/dist/ionic/p-FvDKM4Ax.js +4 -0
  803. package/dist/ionic/p-Omi_TcwW.js +5 -0
  804. package/{components/p-D13Eaw-8.js → dist/ionic/p-SJmaFQ0H.js} +1 -1
  805. package/dist/ionic/p-SOASChNu.js +4 -0
  806. package/dist/ionic/{p-DjriolRs.js → p-ZqkJDyhe.js} +1 -1
  807. package/dist/ionic/p-a9fb086b.entry.js +4 -0
  808. package/dist/ionic/p-acdc21a6.entry.js +4 -0
  809. package/dist/ionic/p-ae667493.entry.js +4 -0
  810. package/dist/ionic/p-b2fe6c1c.entry.js +4 -0
  811. package/dist/ionic/p-b3c9f19c.entry.js +4 -0
  812. package/dist/ionic/p-b653f4c2.entry.js +4 -0
  813. package/dist/ionic/p-bd71a4a7.entry.js +4 -0
  814. package/dist/ionic/p-bdfd1761.entry.js +4 -0
  815. package/dist/ionic/p-bf972309.entry.js +4 -0
  816. package/dist/ionic/p-c10fa162.entry.js +4 -0
  817. package/dist/ionic/p-d4ed5710.entry.js +4 -0
  818. package/dist/ionic/p-d6299c37.entry.js +4 -0
  819. package/dist/ionic/p-d976e777.entry.js +4 -0
  820. package/dist/ionic/p-e18d3fdb.entry.js +4 -0
  821. package/dist/ionic/p-e3abffbe.entry.js +4 -0
  822. package/dist/ionic/p-f02ba305.entry.js +4 -0
  823. package/dist/ionic/p-f85942f8.entry.js +4 -0
  824. package/dist/ionic/p-fIOYmaqA.js +4 -0
  825. package/dist/ionic/p-fad05840.entry.js +4 -0
  826. package/dist/ionic/p-qETiT38a.js +4 -0
  827. package/dist/ionic/p-vXpMhGrs.js +4 -0
  828. package/dist/types/components/accordion/accordion.d.ts +6 -3
  829. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  830. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  831. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  832. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  833. package/dist/types/components/alert/alert.d.ts +3 -2
  834. package/dist/types/components/app/app.d.ts +4 -5
  835. package/dist/types/components/avatar/avatar.d.ts +32 -0
  836. package/dist/types/components/back-button/back-button.d.ts +2 -1
  837. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  838. package/dist/types/components/badge/badge.d.ts +34 -1
  839. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  840. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  841. package/dist/types/components/button/button.d.ts +23 -8
  842. package/dist/types/components/buttons/buttons.d.ts +5 -1
  843. package/dist/types/components/card/card.d.ts +8 -1
  844. package/dist/types/components/card-content/card-content.d.ts +2 -1
  845. package/dist/types/components/card-header/card-header.d.ts +3 -2
  846. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  847. package/dist/types/components/card-title/card-title.d.ts +2 -1
  848. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  849. package/dist/types/components/chip/chip.d.ts +26 -1
  850. package/dist/types/components/col/col.d.ts +52 -5
  851. package/dist/types/components/content/content.d.ts +3 -0
  852. package/dist/types/components/datetime/datetime.d.ts +26 -1
  853. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  854. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  855. package/dist/types/components/divider/divider.d.ts +20 -0
  856. package/dist/types/components/fab/fab.d.ts +4 -0
  857. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  858. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  859. package/dist/types/components/footer/footer.d.ts +4 -3
  860. package/dist/types/components/gallery/gallery-interface.d.ts +9 -0
  861. package/dist/types/components/gallery/gallery.d.ts +125 -0
  862. package/dist/types/components/gallery/test/utils.d.ts +2 -0
  863. package/dist/types/components/grid/grid.d.ts +4 -0
  864. package/dist/types/components/header/header.d.ts +9 -3
  865. package/dist/types/components/header/header.utils.d.ts +3 -3
  866. package/dist/types/components/img/img.d.ts +3 -0
  867. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  868. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  869. package/dist/types/components/input/input.d.ts +31 -5
  870. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  871. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  872. package/dist/types/components/item/item.d.ts +11 -4
  873. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  874. package/dist/types/components/item-group/item-group.d.ts +4 -0
  875. package/dist/types/components/item-option/item-option.d.ts +18 -1
  876. package/dist/types/components/item-options/item-options.d.ts +4 -0
  877. package/dist/types/components/item-sliding/item-sliding.d.ts +32 -1
  878. package/dist/types/components/label/label.d.ts +2 -1
  879. package/dist/types/components/list/list.d.ts +15 -1
  880. package/dist/types/components/list-header/list-header.d.ts +2 -1
  881. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  882. package/dist/types/components/loading/loading.d.ts +3 -2
  883. package/dist/types/components/menu/menu.d.ts +3 -0
  884. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  885. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  886. package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
  887. package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
  888. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  889. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  890. package/dist/types/components/modal/modal.d.ts +11 -1
  891. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  892. package/dist/types/components/nav/nav.d.ts +5 -1
  893. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  894. package/dist/types/components/note/note.d.ts +2 -1
  895. package/dist/types/components/picker/picker.d.ts +2 -1
  896. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  897. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  898. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  899. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  900. package/dist/types/components/popover/popover.d.ts +6 -5
  901. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  902. package/dist/types/components/radio/radio.d.ts +2 -1
  903. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  904. package/dist/types/components/range/range.d.ts +2 -1
  905. package/dist/types/components/refresher/refresher.d.ts +2 -1
  906. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  907. package/dist/types/components/reorder/reorder.d.ts +9 -0
  908. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  909. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  910. package/dist/types/components/route/route.d.ts +4 -0
  911. package/dist/types/components/router/router.d.ts +4 -0
  912. package/dist/types/components/router-link/router-link.d.ts +4 -0
  913. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  914. package/dist/types/components/row/row.d.ts +4 -0
  915. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  916. package/dist/types/components/segment/segment.d.ts +2 -1
  917. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  918. package/dist/types/components/select/select-interface.d.ts +23 -0
  919. package/dist/types/components/select/select.d.ts +66 -13
  920. package/dist/types/components/select-modal/select-modal.d.ts +8 -0
  921. package/dist/types/components/select-option/select-option.d.ts +12 -0
  922. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  923. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  924. package/dist/types/components/spinner/spinner.d.ts +15 -0
  925. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  926. package/dist/types/components/tab/tab.d.ts +4 -0
  927. package/dist/types/components/tab-bar/tab-bar.d.ts +37 -2
  928. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  929. package/dist/types/components/tabs/tabs.d.ts +3 -0
  930. package/dist/types/components/text/text.d.ts +2 -1
  931. package/dist/types/components/textarea/textarea.d.ts +53 -4
  932. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  933. package/dist/types/components/title/title.d.ts +4 -0
  934. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  935. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  936. package/dist/types/components/toast/toast.d.ts +19 -2
  937. package/dist/types/components/toggle/toggle.d.ts +15 -1
  938. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  939. package/dist/types/components.d.ts +1793 -206
  940. package/dist/types/global/ionic-global.d.ts +28 -2
  941. package/dist/types/interface.d.ts +3 -0
  942. package/dist/types/utils/config.d.ts +106 -2
  943. package/dist/types/utils/focus-trap.d.ts +1 -1
  944. package/dist/types/utils/focus-visible.d.ts +13 -0
  945. package/dist/types/utils/forms/validity.d.ts +7 -0
  946. package/dist/types/utils/helpers.d.ts +11 -0
  947. package/dist/types/utils/overlays-interface.d.ts +31 -1
  948. package/dist/types/utils/overlays.d.ts +1 -1
  949. package/dist/types/utils/select-option-render.d.ts +22 -0
  950. package/dist/types/utils/test/playwright/drag-element.d.ts +1 -1
  951. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  952. package/dist/types/utils/theme.d.ts +9 -0
  953. package/hydrate/index.js +4682 -1301
  954. package/hydrate/index.mjs +4682 -1301
  955. package/package.json +8 -4
  956. package/components/p-1KVKSLu5.js +0 -4
  957. package/components/p-B6FQ0cKR.js +0 -4
  958. package/components/p-B6HaBl3o.js +0 -4
  959. package/components/p-B8b1Ukl9.js +0 -4
  960. package/components/p-BGHGpkPX.js +0 -4
  961. package/components/p-BJoMtgfR.js +0 -4
  962. package/components/p-BNAG-aVv.js +0 -4
  963. package/components/p-BR3tZJmu.js +0 -4
  964. package/components/p-BSB38Tek.js +0 -4
  965. package/components/p-BTeL5HCK.js +0 -4
  966. package/components/p-BUbsoBOV.js +0 -4
  967. package/components/p-BYDc3hSE.js +0 -4
  968. package/components/p-BagjAGC0.js +0 -4
  969. package/components/p-BegtE7nr.js +0 -4
  970. package/components/p-BgwEQWW6.js +0 -4
  971. package/components/p-BlNv564p.js +0 -4
  972. package/components/p-BmVRXR1y.js +0 -4
  973. package/components/p-BxwWvu-b.js +0 -4
  974. package/components/p-C4jPsTQa.js +0 -4
  975. package/components/p-C59ryAuS.js +0 -4
  976. package/components/p-CBzELu-H.js +0 -4
  977. package/components/p-CDfQnFrd.js +0 -4
  978. package/components/p-CH0NYjKq.js +0 -4
  979. package/components/p-CIGNaXM1.js +0 -4
  980. package/components/p-CO7fmmxt.js +0 -4
  981. package/components/p-CU1SSH8_.js +0 -4
  982. package/components/p-CgfaEEem.js +0 -4
  983. package/components/p-CgqKJg96.js +0 -4
  984. package/components/p-CneGxKsZ.js +0 -4
  985. package/components/p-CoA-aqGF.js +0 -4
  986. package/components/p-Cq8cQ0NL.js +0 -4
  987. package/components/p-Csw8xuz4.js +0 -4
  988. package/components/p-CtWGkNnJ.js +0 -4
  989. package/components/p-Cy5XSfIk.js +0 -4
  990. package/components/p-Cyxa_4PV.js +0 -4
  991. package/components/p-Cz5nLPGT.js +0 -4
  992. package/components/p-D-cP12ZN.js +0 -4
  993. package/components/p-D6NJwNJN.js +0 -4
  994. package/components/p-D6Ynv7Xh.js +0 -4
  995. package/components/p-DHsZWn1l.js +0 -4
  996. package/components/p-DJMZehmW.js +0 -4
  997. package/components/p-DJztqcrH.js +0 -4
  998. package/components/p-DUqnmRFi.js +0 -4
  999. package/components/p-DYdpXONG.js +0 -4
  1000. package/components/p-DgbT0exM.js +0 -4
  1001. package/components/p-DiVJyqlX.js +0 -4
  1002. package/components/p-DvOO1fxp.js +0 -4
  1003. package/components/p-FBcnjE5W.js +0 -4
  1004. package/components/p-SBseW5KJ.js +0 -4
  1005. package/components/p-ZjP4CjeZ.js +0 -4
  1006. package/components/p-fpbh6w3f.js +0 -4
  1007. package/components/p-kvaDs24J.js +0 -4
  1008. package/components/p-vEbVo2hO.js +0 -4
  1009. package/dist/cjs/hardware-back-button-C4rMJ5uI.js +0 -121
  1010. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1011. package/dist/cjs/ionic-global-Bc3kJi1Z.js +0 -151
  1012. package/dist/cjs/validity-BpS37YFM.js +0 -19
  1013. package/dist/esm/hardware-back-button-CTe4XmL7.js +0 -115
  1014. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1015. package/dist/esm/ionic-global-DfbeLwcV.js +0 -146
  1016. package/dist/esm/validity-DJztqcrH.js +0 -17
  1017. package/dist/ionic/p-031b76f7.entry.js +0 -4
  1018. package/dist/ionic/p-045a6a42.entry.js +0 -4
  1019. package/dist/ionic/p-07506134.entry.js +0 -4
  1020. package/dist/ionic/p-078037da.entry.js +0 -4
  1021. package/dist/ionic/p-084c25b2.entry.js +0 -4
  1022. package/dist/ionic/p-0d8b5c38.entry.js +0 -4
  1023. package/dist/ionic/p-16813ce7.entry.js +0 -4
  1024. package/dist/ionic/p-1b02923f.entry.js +0 -4
  1025. package/dist/ionic/p-1b169fb6.entry.js +0 -4
  1026. package/dist/ionic/p-23ec35e4.entry.js +0 -4
  1027. package/dist/ionic/p-23fac490.entry.js +0 -4
  1028. package/dist/ionic/p-28a9e720.entry.js +0 -4
  1029. package/dist/ionic/p-294f4bb5.entry.js +0 -4
  1030. package/dist/ionic/p-2a68388b.entry.js +0 -4
  1031. package/dist/ionic/p-2f5a8140.entry.js +0 -4
  1032. package/dist/ionic/p-2fd110aa.entry.js +0 -4
  1033. package/dist/ionic/p-301c43f8.entry.js +0 -4
  1034. package/dist/ionic/p-370a60ee.entry.js +0 -4
  1035. package/dist/ionic/p-4c67ce4c.entry.js +0 -4
  1036. package/dist/ionic/p-51c11c47.entry.js +0 -4
  1037. package/dist/ionic/p-53f750a5.entry.js +0 -4
  1038. package/dist/ionic/p-6af16209.entry.js +0 -4
  1039. package/dist/ionic/p-6b701daa.entry.js +0 -4
  1040. package/dist/ionic/p-6b97f2a3.entry.js +0 -4
  1041. package/dist/ionic/p-7620be24.entry.js +0 -4
  1042. package/dist/ionic/p-771b27a5.entry.js +0 -4
  1043. package/dist/ionic/p-7ca71c83.entry.js +0 -4
  1044. package/dist/ionic/p-80cac7a2.entry.js +0 -4
  1045. package/dist/ionic/p-87125490.entry.js +0 -4
  1046. package/dist/ionic/p-8fda6a62.entry.js +0 -4
  1047. package/dist/ionic/p-9833cf63.entry.js +0 -4
  1048. package/dist/ionic/p-9cbc6f1f.entry.js +0 -4
  1049. package/dist/ionic/p-9cdbabbb.entry.js +0 -4
  1050. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1051. package/dist/ionic/p-BAt5H1ac.js +0 -4
  1052. package/dist/ionic/p-BW_TRJm8.js +0 -4
  1053. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1054. package/dist/ionic/p-Bum7H1fw.js +0 -4
  1055. package/dist/ionic/p-BxIcPWoV.js +0 -4
  1056. package/dist/ionic/p-C0JvVFMv.js +0 -4
  1057. package/dist/ionic/p-CGmVTdWh.js +0 -4
  1058. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1059. package/dist/ionic/p-CYbRmDdy.js +0 -4
  1060. package/dist/ionic/p-CYvM5g3q.js +0 -4
  1061. package/dist/ionic/p-CmFz1Mjc.js +0 -4
  1062. package/dist/ionic/p-CtA-yJYy.js +0 -4
  1063. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1064. package/dist/ionic/p-D8HJQ1qq.js +0 -4
  1065. package/dist/ionic/p-DB_iPQC-.js +0 -4
  1066. package/dist/ionic/p-DJztqcrH.js +0 -4
  1067. package/dist/ionic/p-DLbbmF9h.js +0 -4
  1068. package/dist/ionic/p-DTPR1Wpn.js +0 -4
  1069. package/dist/ionic/p-DV3sJJW8.js +0 -4
  1070. package/dist/ionic/p-DiVJyqlX.js +0 -4
  1071. package/dist/ionic/p-DtVZDHlS.js +0 -4
  1072. package/dist/ionic/p-IGIE5vDm.js +0 -5
  1073. package/dist/ionic/p-NFFyoJ4Q.js +0 -4
  1074. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1075. package/dist/ionic/p-a805674e.entry.js +0 -4
  1076. package/dist/ionic/p-a84f2d21.entry.js +0 -4
  1077. package/dist/ionic/p-aa812c4b.entry.js +0 -4
  1078. package/dist/ionic/p-b325a113.entry.js +0 -4
  1079. package/dist/ionic/p-b5ea8cdd.entry.js +0 -4
  1080. package/dist/ionic/p-b6e0ff03.entry.js +0 -4
  1081. package/dist/ionic/p-bcaa827e.entry.js +0 -4
  1082. package/dist/ionic/p-c3cce9d8.entry.js +0 -4
  1083. package/dist/ionic/p-ca31010f.entry.js +0 -4
  1084. package/dist/ionic/p-d4e8b473.entry.js +0 -4
  1085. package/dist/ionic/p-e0287f41.entry.js +0 -4
  1086. package/dist/ionic/p-e663bc5a.entry.js +0 -4
  1087. package/dist/ionic/p-e6cedcd7.entry.js +0 -4
  1088. package/dist/ionic/p-e863ffe8.entry.js +0 -4
  1089. package/dist/ionic/p-f2deaceb.entry.js +0 -4
  1090. package/dist/ionic/p-f5dfb9a3.entry.js +0 -4
  1091. package/dist/ionic/p-f69a5f71.entry.js +0 -4
  1092. package/dist/ionic/p-f8186550.entry.js +0 -4
  1093. package/dist/ionic/p-fdbc90d4.entry.js +0 -4
  1094. package/dist/ionic/p-gbVXD275.js +0 -4
  1095. package/dist/ionic/p-hNN3VvaC.js +0 -4
  1096. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -16,6 +16,7 @@ import { BreadcrumbCollapsedClickEventDetail } from "./components/breadcrumb/bre
16
16
  import { CheckboxChangeEventDetail } from "./components/checkbox/checkbox-interface";
17
17
  import { ScrollBaseDetail, ScrollDetail } from "./components/content/content-interface";
18
18
  import { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
19
+ import { GalleryColumns } from "./components/gallery/gallery-interface";
19
20
  import { SpinnerTypes } from "./components/spinner/spinner-configs";
20
21
  import { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
21
22
  import { InputOtpChangeEventDetail, InputOtpCompleteEventDetail, InputOtpInputEventDetail } from "./components/input-otp/input-otp-interface";
@@ -54,6 +55,7 @@ export { BreadcrumbCollapsedClickEventDetail } from "./components/breadcrumb/bre
54
55
  export { CheckboxChangeEventDetail } from "./components/checkbox/checkbox-interface";
55
56
  export { ScrollBaseDetail, ScrollDetail } from "./components/content/content-interface";
56
57
  export { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
58
+ export { GalleryColumns } from "./components/gallery/gallery-interface";
57
59
  export { SpinnerTypes } from "./components/spinner/spinner-configs";
58
60
  export { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
59
61
  export { InputOtpChangeEventDetail, InputOtpCompleteEventDetail, InputOtpInputEventDetail } from "./components/input-otp/input-otp-interface";
@@ -89,7 +91,7 @@ export namespace Components {
89
91
  */
90
92
  "disabled": boolean;
91
93
  /**
92
- * The mode determines which platform styles to use.
94
+ * The mode determines the platform behaviors of the component.
93
95
  */
94
96
  "mode"?: "ios" | "md";
95
97
  /**
@@ -97,11 +99,14 @@ export namespace Components {
97
99
  * @default false
98
100
  */
99
101
  "readonly": boolean;
102
+ /**
103
+ * The theme determines the visual appearance of the component.
104
+ */
105
+ "theme"?: "ios" | "md" | "ionic";
100
106
  /**
101
107
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
102
- * @default chevronDown
103
108
  */
104
- "toggleIcon": string;
109
+ "toggleIcon"?: string;
105
110
  /**
106
111
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
107
112
  * @default 'end'
@@ -131,7 +136,7 @@ export namespace Components {
131
136
  "expand": 'compact' | 'inset';
132
137
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
133
138
  /**
134
- * The mode determines which platform styles to use.
139
+ * The mode determines the platform behaviors of the component.
135
140
  */
136
141
  "mode"?: "ios" | "md";
137
142
  /**
@@ -147,6 +152,14 @@ export namespace Components {
147
152
  * 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
153
  */
149
154
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
155
+ /**
156
+ * 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"`.
157
+ */
158
+ "shape"?: 'soft' | 'round' | 'rectangular';
159
+ /**
160
+ * The theme determines the visual appearance of the component.
161
+ */
162
+ "theme"?: "ios" | "md" | "ionic";
150
163
  /**
151
164
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
152
165
  */
@@ -210,7 +223,7 @@ export namespace Components {
210
223
  */
211
224
  "leaveAnimation"?: AnimationBuilder;
212
225
  /**
213
- * The mode determines which platform styles to use.
226
+ * The mode determines the platform behaviors of the component.
214
227
  */
215
228
  "mode"?: "ios" | "md";
216
229
  /**
@@ -231,7 +244,11 @@ export namespace Components {
231
244
  */
232
245
  "subHeader"?: string;
233
246
  /**
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).
247
+ * The theme determines the visual appearance of the component.
248
+ */
249
+ "theme"?: "ios" | "md" | "ionic";
250
+ /**
251
+ * 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
252
  * @default false
236
253
  */
237
254
  "translucent": boolean;
@@ -307,7 +324,7 @@ export namespace Components {
307
324
  */
308
325
  "message"?: string | IonicSafeString;
309
326
  /**
310
- * The mode determines which platform styles to use.
327
+ * The mode determines the platform behaviors of the component.
311
328
  */
312
329
  "mode"?: "ios" | "md";
313
330
  /**
@@ -328,7 +345,11 @@ export namespace Components {
328
345
  */
329
346
  "subHeader"?: string;
330
347
  /**
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).
348
+ * The theme determines the visual appearance of the component.
349
+ */
350
+ "theme"?: "ios" | "md" | "ionic";
351
+ /**
352
+ * 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
353
  * @default false
333
354
  */
334
355
  "translucent": boolean;
@@ -338,13 +359,42 @@ export namespace Components {
338
359
  "trigger": string | undefined;
339
360
  }
340
361
  interface IonApp {
362
+ /**
363
+ * The mode determines the platform behaviors of the component.
364
+ */
365
+ "mode"?: "ios" | "md";
341
366
  /**
342
367
  * 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
368
  * @param elements An array of HTML elements to set focus on.
344
369
  */
345
370
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
371
+ /**
372
+ * The theme determines the visual appearance of the component.
373
+ */
374
+ "theme"?: "ios" | "md" | "ionic";
346
375
  }
347
376
  interface IonAvatar {
377
+ /**
378
+ * If `true`, the user cannot interact with the avatar.
379
+ * @default false
380
+ */
381
+ "disabled": boolean;
382
+ /**
383
+ * The mode determines the platform behaviors of the component.
384
+ */
385
+ "mode"?: "ios" | "md";
386
+ /**
387
+ * 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.
388
+ */
389
+ "shape"?: 'soft' | 'round' | 'rectangular';
390
+ /**
391
+ * 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.
392
+ */
393
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
394
+ /**
395
+ * The theme determines the visual appearance of the component.
396
+ */
397
+ "theme"?: "ios" | "md" | "ionic";
348
398
  }
349
399
  interface IonBackButton {
350
400
  /**
@@ -365,7 +415,7 @@ export namespace Components {
365
415
  */
366
416
  "icon"?: string | null;
367
417
  /**
368
- * The mode determines which platform styles to use.
418
+ * The mode determines the platform behaviors of the component.
369
419
  */
370
420
  "mode"?: "ios" | "md";
371
421
  /**
@@ -376,6 +426,10 @@ export namespace Components {
376
426
  * The text to display in the back button.
377
427
  */
378
428
  "text"?: string | null;
429
+ /**
430
+ * The theme determines the visual appearance of the component.
431
+ */
432
+ "theme"?: "ios" | "md" | "ionic";
379
433
  /**
380
434
  * The type of the button.
381
435
  * @default 'button'
@@ -383,6 +437,10 @@ export namespace Components {
383
437
  "type": 'submit' | 'reset' | 'button';
384
438
  }
385
439
  interface IonBackdrop {
440
+ /**
441
+ * The mode determines the platform behaviors of the component.
442
+ */
443
+ "mode"?: "ios" | "md";
386
444
  /**
387
445
  * If `true`, the backdrop will stop propagation on tap.
388
446
  * @default true
@@ -393,6 +451,10 @@ export namespace Components {
393
451
  * @default true
394
452
  */
395
453
  "tappable": boolean;
454
+ /**
455
+ * The theme determines the visual appearance of the component.
456
+ */
457
+ "theme"?: "ios" | "md" | "ionic";
396
458
  /**
397
459
  * If `true`, the backdrop will be visible.
398
460
  * @default true
@@ -405,9 +467,29 @@ export namespace Components {
405
467
  */
406
468
  "color"?: Color;
407
469
  /**
408
- * The mode determines which platform styles to use.
470
+ * 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.
471
+ */
472
+ "hue"?: 'bold' | 'subtle';
473
+ /**
474
+ * The mode determines the platform behaviors of the component.
409
475
  */
410
476
  "mode"?: "ios" | "md";
477
+ /**
478
+ * 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.
479
+ */
480
+ "shape"?: 'soft' | 'round | rectangular';
481
+ /**
482
+ * 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.
483
+ */
484
+ "size"?: 'small' | 'medium' | 'large';
485
+ /**
486
+ * The theme determines the visual appearance of the component.
487
+ */
488
+ "theme"?: "ios" | "md" | "ionic";
489
+ /**
490
+ * 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.
491
+ */
492
+ "vertical"?: 'top' | 'bottom';
411
493
  }
412
494
  interface IonBreadcrumb {
413
495
  /**
@@ -438,7 +520,7 @@ export namespace Components {
438
520
  "href": string | undefined;
439
521
  "last": boolean;
440
522
  /**
441
- * The mode determines which platform styles to use.
523
+ * The mode determines the platform behaviors of the component.
442
524
  */
443
525
  "mode"?: "ios" | "md";
444
526
  /**
@@ -463,6 +545,10 @@ export namespace Components {
463
545
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
464
546
  */
465
547
  "target": string | undefined;
548
+ /**
549
+ * The theme determines the visual appearance of the component.
550
+ */
551
+ "theme"?: "ios" | "md" | "ionic";
466
552
  }
467
553
  interface IonBreadcrumbs {
468
554
  /**
@@ -484,9 +570,13 @@ export namespace Components {
484
570
  */
485
571
  "maxItems"?: number;
486
572
  /**
487
- * The mode determines which platform styles to use.
573
+ * The mode determines the platform behaviors of the component.
488
574
  */
489
575
  "mode"?: "ios" | "md";
576
+ /**
577
+ * The theme determines the visual appearance of the component.
578
+ */
579
+ "theme"?: "ios" | "md" | "ionic";
490
580
  }
491
581
  interface IonButton {
492
582
  /**
@@ -512,7 +602,7 @@ export namespace Components {
512
602
  */
513
603
  "expand"?: 'full' | 'block';
514
604
  /**
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"`.
605
+ * 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
606
  */
517
607
  "fill"?: 'clear' | 'outline' | 'solid' | 'default';
518
608
  /**
@@ -524,7 +614,7 @@ export namespace Components {
524
614
  */
525
615
  "href": string | undefined;
526
616
  /**
527
- * The mode determines which platform styles to use.
617
+ * The mode determines the platform behaviors of the component.
528
618
  */
529
619
  "mode"?: "ios" | "md";
530
620
  /**
@@ -541,13 +631,13 @@ export namespace Components {
541
631
  */
542
632
  "routerDirection": RouterDirection;
543
633
  /**
544
- * Set to `"round"` for a button with more rounded corners.
634
+ * 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
635
  */
546
- "shape"?: 'round';
636
+ "shape"?: 'soft' | 'round' | 'rectangular';
547
637
  /**
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.
638
+ * 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
639
  */
550
- "size"?: 'small' | 'default' | 'large';
640
+ "size"?: 'small' | 'default' | 'medium' | 'large';
551
641
  /**
552
642
  * If `true`, activates a button with a heavier font weight.
553
643
  * @default false
@@ -557,6 +647,10 @@ export namespace Components {
557
647
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
558
648
  */
559
649
  "target": string | undefined;
650
+ /**
651
+ * The theme determines the visual appearance of the component.
652
+ */
653
+ "theme"?: "ios" | "md" | "ionic";
560
654
  /**
561
655
  * The type of the button.
562
656
  * @default 'button'
@@ -565,10 +659,18 @@ export namespace Components {
565
659
  }
566
660
  interface IonButtons {
567
661
  /**
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)
662
+ * 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
663
  * @default false
570
664
  */
571
665
  "collapse": boolean;
666
+ /**
667
+ * The mode determines the platform behaviors of the component.
668
+ */
669
+ "mode"?: "ios" | "md";
670
+ /**
671
+ * The theme determines the visual appearance of the component.
672
+ */
673
+ "theme"?: "ios" | "md" | "ionic";
572
674
  }
573
675
  interface IonCard {
574
676
  /**
@@ -594,7 +696,7 @@ export namespace Components {
594
696
  */
595
697
  "href": string | undefined;
596
698
  /**
597
- * The mode determines which platform styles to use.
699
+ * The mode determines the platform behaviors of the component.
598
700
  */
599
701
  "mode"?: "ios" | "md";
600
702
  /**
@@ -610,10 +712,19 @@ export namespace Components {
610
712
  * @default 'forward'
611
713
  */
612
714
  "routerDirection": RouterDirection;
715
+ /**
716
+ * 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"`.
717
+ * @default 'round'
718
+ */
719
+ "shape"?: 'soft' | 'round' | 'rectangular';
613
720
  /**
614
721
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
615
722
  */
616
723
  "target": string | undefined;
724
+ /**
725
+ * The theme determines the visual appearance of the component.
726
+ */
727
+ "theme"?: "ios" | "md" | "ionic";
617
728
  /**
618
729
  * The type of the button. Only used when an `onclick` or `button` property is present.
619
730
  * @default 'button'
@@ -622,9 +733,13 @@ export namespace Components {
622
733
  }
623
734
  interface IonCardContent {
624
735
  /**
625
- * The mode determines which platform styles to use.
736
+ * The mode determines the platform behaviors of the component.
626
737
  */
627
738
  "mode"?: "ios" | "md";
739
+ /**
740
+ * The theme determines the visual appearance of the component.
741
+ */
742
+ "theme"?: "ios" | "md" | "ionic";
628
743
  }
629
744
  interface IonCardHeader {
630
745
  /**
@@ -632,11 +747,15 @@ export namespace Components {
632
747
  */
633
748
  "color"?: Color;
634
749
  /**
635
- * The mode determines which platform styles to use.
750
+ * The mode determines the platform behaviors of the component.
636
751
  */
637
752
  "mode"?: "ios" | "md";
638
753
  /**
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).
754
+ * The theme determines the visual appearance of the component.
755
+ */
756
+ "theme"?: "ios" | "md" | "ionic";
757
+ /**
758
+ * 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
759
  * @default false
641
760
  */
642
761
  "translucent": boolean;
@@ -647,9 +766,13 @@ export namespace Components {
647
766
  */
648
767
  "color"?: Color;
649
768
  /**
650
- * The mode determines which platform styles to use.
769
+ * The mode determines the platform behaviors of the component.
651
770
  */
652
771
  "mode"?: "ios" | "md";
772
+ /**
773
+ * The theme determines the visual appearance of the component.
774
+ */
775
+ "theme"?: "ios" | "md" | "ionic";
653
776
  }
654
777
  interface IonCardTitle {
655
778
  /**
@@ -657,9 +780,13 @@ export namespace Components {
657
780
  */
658
781
  "color"?: Color;
659
782
  /**
660
- * The mode determines which platform styles to use.
783
+ * The mode determines the platform behaviors of the component.
661
784
  */
662
785
  "mode"?: "ios" | "md";
786
+ /**
787
+ * The theme determines the visual appearance of the component.
788
+ */
789
+ "theme"?: "ios" | "md" | "ionic";
663
790
  }
664
791
  interface IonCheckbox {
665
792
  /**
@@ -703,7 +830,7 @@ export namespace Components {
703
830
  */
704
831
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
705
832
  /**
706
- * The mode determines which platform styles to use.
833
+ * The mode determines the platform behaviors of the component.
707
834
  */
708
835
  "mode"?: "ios" | "md";
709
836
  /**
@@ -717,6 +844,19 @@ export namespace Components {
717
844
  */
718
845
  "required": boolean;
719
846
  "setFocus": () => Promise<void>;
847
+ /**
848
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
849
+ * @default 'soft'
850
+ */
851
+ "shape"?: 'soft' | 'rectangular';
852
+ /**
853
+ * Set to `"small"` for a checkbox with less height and padding.
854
+ */
855
+ "size"?: 'small';
856
+ /**
857
+ * The theme determines the visual appearance of the component.
858
+ */
859
+ "theme"?: "ios" | "md" | "ionic";
720
860
  /**
721
861
  * 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
862
  * @default 'on'
@@ -734,7 +874,12 @@ export namespace Components {
734
874
  */
735
875
  "disabled": boolean;
736
876
  /**
737
- * The mode determines which platform styles to use.
877
+ * 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.
878
+ * @default 'subtle'
879
+ */
880
+ "hue"?: 'bold' | 'subtle';
881
+ /**
882
+ * The mode determines the platform behaviors of the component.
738
883
  */
739
884
  "mode"?: "ios" | "md";
740
885
  /**
@@ -742,8 +887,24 @@ export namespace Components {
742
887
  * @default false
743
888
  */
744
889
  "outline": boolean;
890
+ /**
891
+ * 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.
892
+ */
893
+ "shape"?: 'soft' | 'round' | 'rectangular';
894
+ /**
895
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
896
+ */
897
+ "size"?: 'small' | 'large';
898
+ /**
899
+ * The theme determines the visual appearance of the component.
900
+ */
901
+ "theme"?: "ios" | "md" | "ionic";
745
902
  }
746
903
  interface IonCol {
904
+ /**
905
+ * The mode determines the platform behaviors of the component.
906
+ */
907
+ "mode"?: "ios" | "md";
747
908
  /**
748
909
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
749
910
  */
@@ -768,52 +929,88 @@ export namespace Components {
768
929
  * 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
930
  */
770
931
  "offsetXs"?: string;
932
+ /**
933
+ * 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.
934
+ */
935
+ "order"?: string;
936
+ /**
937
+ * 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.
938
+ */
939
+ "orderLg"?: string;
940
+ /**
941
+ * 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.
942
+ */
943
+ "orderMd"?: string;
944
+ /**
945
+ * 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.
946
+ */
947
+ "orderSm"?: string;
948
+ /**
949
+ * 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.
950
+ */
951
+ "orderXl"?: string;
952
+ /**
953
+ * 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.
954
+ */
955
+ "orderXs"?: string;
771
956
  /**
772
957
  * The amount to pull the column, in terms of how many columns it should shift to the start of the total available.
958
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
773
959
  */
774
960
  "pull"?: string;
775
961
  /**
776
962
  * 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.
963
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
777
964
  */
778
965
  "pullLg"?: string;
779
966
  /**
780
967
  * 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.
968
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
781
969
  */
782
970
  "pullMd"?: string;
783
971
  /**
784
972
  * 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.
973
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
785
974
  */
786
975
  "pullSm"?: string;
787
976
  /**
788
977
  * 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.
978
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
789
979
  */
790
980
  "pullXl"?: string;
791
981
  /**
792
982
  * 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.
983
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
793
984
  */
794
985
  "pullXs"?: string;
795
986
  /**
796
987
  * The amount to push the column, in terms of how many columns it should shift to the end of the total available.
988
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
797
989
  */
798
990
  "push"?: string;
799
991
  /**
800
992
  * 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.
993
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
801
994
  */
802
995
  "pushLg"?: string;
803
996
  /**
804
997
  * 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.
998
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
805
999
  */
806
1000
  "pushMd"?: string;
807
1001
  /**
808
1002
  * 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.
1003
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
809
1004
  */
810
1005
  "pushSm"?: string;
811
1006
  /**
812
1007
  * 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.
1008
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
813
1009
  */
814
1010
  "pushXl"?: string;
815
1011
  /**
816
1012
  * 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.
1013
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
817
1014
  */
818
1015
  "pushXs"?: string;
819
1016
  /**
@@ -840,6 +1037,10 @@ export namespace Components {
840
1037
  * 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
1038
  */
842
1039
  "sizeXs"?: string;
1040
+ /**
1041
+ * The theme determines the visual appearance of the component.
1042
+ */
1043
+ "theme"?: "ios" | "md" | "ionic";
843
1044
  }
844
1045
  interface IonContent {
845
1046
  /**
@@ -868,6 +1069,10 @@ export namespace Components {
868
1069
  * 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
1070
  */
870
1071
  "getScrollElement": () => Promise<HTMLElement>;
1072
+ /**
1073
+ * The mode determines the platform behaviors of the component.
1074
+ */
1075
+ "mode"?: "ios" | "md";
871
1076
  /**
872
1077
  * 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
1078
  */
@@ -911,6 +1116,10 @@ export namespace Components {
911
1116
  * @default true
912
1117
  */
913
1118
  "scrollY": boolean;
1119
+ /**
1120
+ * The theme determines the visual appearance of the component.
1121
+ */
1122
+ "theme"?: "ios" | "md" | "ionic";
914
1123
  }
915
1124
  interface IonDatetime {
916
1125
  /**
@@ -995,7 +1204,7 @@ export namespace Components {
995
1204
  */
996
1205
  "minuteValues"?: number[] | number | string;
997
1206
  /**
998
- * The mode determines which platform styles to use.
1207
+ * The mode determines the platform behaviors of the component.
999
1208
  */
1000
1209
  "mode"?: "ios" | "md";
1001
1210
  /**
@@ -1062,6 +1271,10 @@ export namespace Components {
1062
1271
  * @default 'fixed'
1063
1272
  */
1064
1273
  "size": 'cover' | 'fixed';
1274
+ /**
1275
+ * The theme determines the visual appearance of the component.
1276
+ */
1277
+ "theme"?: "ios" | "md" | "ionic";
1065
1278
  /**
1066
1279
  * 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
1280
  */
@@ -1091,9 +1304,25 @@ export namespace Components {
1091
1304
  */
1092
1305
  "disabled": boolean;
1093
1306
  /**
1094
- * The mode determines which platform styles to use.
1307
+ * The mode determines the platform behaviors of the component.
1095
1308
  */
1096
1309
  "mode"?: "ios" | "md";
1310
+ /**
1311
+ * The theme determines the visual appearance of the component.
1312
+ */
1313
+ "theme"?: "ios" | "md" | "ionic";
1314
+ }
1315
+ interface IonDivider {
1316
+ /**
1317
+ * If `true`, the divider will have horizontal margins By default, it's `false`
1318
+ * @default false
1319
+ */
1320
+ "inset": boolean;
1321
+ /**
1322
+ * 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"`.
1323
+ * @default 'medium'
1324
+ */
1325
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
1097
1326
  }
1098
1327
  interface IonFab {
1099
1328
  /**
@@ -1114,6 +1343,14 @@ export namespace Components {
1114
1343
  * Where to align the fab horizontally in the viewport.
1115
1344
  */
1116
1345
  "horizontal"?: 'start' | 'end' | 'center';
1346
+ /**
1347
+ * The mode determines the platform behaviors of the component.
1348
+ */
1349
+ "mode"?: "ios" | "md";
1350
+ /**
1351
+ * The theme determines the visual appearance of the component.
1352
+ */
1353
+ "theme"?: "ios" | "md" | "ionic";
1117
1354
  /**
1118
1355
  * Opens/Closes the FAB list container.
1119
1356
  */
@@ -1131,9 +1368,8 @@ export namespace Components {
1131
1368
  "activated": boolean;
1132
1369
  /**
1133
1370
  * 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
1371
  */
1136
- "closeIcon": string;
1372
+ "closeIcon"?: string;
1137
1373
  /**
1138
1374
  * 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
1375
  */
@@ -1152,7 +1388,7 @@ export namespace Components {
1152
1388
  */
1153
1389
  "href": string | undefined;
1154
1390
  /**
1155
- * The mode determines which platform styles to use.
1391
+ * The mode determines the platform behaviors of the component.
1156
1392
  */
1157
1393
  "mode"?: "ios" | "md";
1158
1394
  /**
@@ -1182,7 +1418,11 @@ export namespace Components {
1182
1418
  */
1183
1419
  "target": string | undefined;
1184
1420
  /**
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).
1421
+ * The theme determines the visual appearance of the component.
1422
+ */
1423
+ "theme"?: "ios" | "md" | "ionic";
1424
+ /**
1425
+ * 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
1426
  * @default false
1187
1427
  */
1188
1428
  "translucent": boolean;
@@ -1198,45 +1438,99 @@ export namespace Components {
1198
1438
  * @default false
1199
1439
  */
1200
1440
  "activated": boolean;
1441
+ /**
1442
+ * The mode determines the platform behaviors of the component.
1443
+ */
1444
+ "mode"?: "ios" | "md";
1201
1445
  /**
1202
1446
  * The side the fab list will show on relative to the main fab button.
1203
1447
  * @default 'bottom'
1204
1448
  */
1205
1449
  "side": 'start' | 'end' | 'top' | 'bottom';
1450
+ /**
1451
+ * The theme determines the visual appearance of the component.
1452
+ */
1453
+ "theme"?: "ios" | "md" | "ionic";
1206
1454
  }
1207
1455
  interface IonFooter {
1208
1456
  /**
1209
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1457
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1210
1458
  */
1211
1459
  "collapse"?: 'fade';
1212
1460
  /**
1213
- * The mode determines which platform styles to use.
1461
+ * The mode determines the platform behaviors of the component.
1214
1462
  */
1215
1463
  "mode"?: "ios" | "md";
1216
1464
  /**
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.
1465
+ * The theme determines the visual appearance of the component.
1466
+ */
1467
+ "theme"?: "ios" | "md" | "ionic";
1468
+ /**
1469
+ * 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
1470
  * @default false
1219
1471
  */
1220
1472
  "translucent": boolean;
1221
1473
  }
1474
+ interface IonGallery {
1475
+ /**
1476
+ * The number of columns to display. Can be set as a number or an object of breakpoint values (e.g. `{ xs: 2, sm: 3, md: 4 }`).
1477
+ * @default DEFAULT_COLUMNS
1478
+ */
1479
+ "columns": GalleryColumns;
1480
+ /**
1481
+ * The visual layout of the gallery. When `uniform`, rows take up the height of the tallest item and are spaced evenly across the gallery. Additionally, items will have an aspect ratio of 1/1, forcing them to be square unless a height is explicitly set. When `masonry`, items will be positioned under each other with only the specified gap between them.
1482
+ * @default 'uniform'
1483
+ */
1484
+ "layout": 'uniform' | 'masonry';
1485
+ /**
1486
+ * The mode determines the platform behaviors of the component.
1487
+ */
1488
+ "mode"?: "ios" | "md";
1489
+ /**
1490
+ * The order in which items are positioned. Only applies when layout is `masonry`. When `sequential`, items are positioned in the order they are placed in the DOM. When `best-fit`, items are positioned under the column with the most available space.
1491
+ * @default 'sequential'
1492
+ */
1493
+ "order": 'sequential' | 'best-fit';
1494
+ /**
1495
+ * The theme determines the visual appearance of the component.
1496
+ */
1497
+ "theme"?: "ios" | "md" | "ionic";
1498
+ }
1222
1499
  interface IonGrid {
1223
1500
  /**
1224
1501
  * If `true`, the grid will have a fixed width based on the screen size.
1225
1502
  * @default false
1226
1503
  */
1227
1504
  "fixed": boolean;
1505
+ /**
1506
+ * The mode determines the platform behaviors of the component.
1507
+ */
1508
+ "mode"?: "ios" | "md";
1509
+ /**
1510
+ * The theme determines the visual appearance of the component.
1511
+ */
1512
+ "theme"?: "ios" | "md" | "ionic";
1228
1513
  }
1229
1514
  interface IonHeader {
1230
1515
  /**
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)
1516
+ * 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
1517
  */
1233
1518
  "collapse"?: 'condense' | 'fade';
1234
1519
  /**
1235
- * The mode determines which platform styles to use.
1520
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1521
+ * @default false
1522
+ */
1523
+ "divider": boolean;
1524
+ /**
1525
+ * The mode determines the platform behaviors of the component.
1236
1526
  */
1237
1527
  "mode"?: "ios" | "md";
1238
1528
  /**
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.
1529
+ * The theme determines the visual appearance of the component.
1530
+ */
1531
+ "theme"?: "ios" | "md" | "ionic";
1532
+ /**
1533
+ * 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
1534
  * @default false
1241
1535
  */
1242
1536
  "translucent": boolean;
@@ -1246,10 +1540,18 @@ export namespace Components {
1246
1540
  * 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
1541
  */
1248
1542
  "alt"?: string;
1543
+ /**
1544
+ * The mode determines the platform behaviors of the component.
1545
+ */
1546
+ "mode"?: "ios" | "md";
1249
1547
  /**
1250
1548
  * The image URL. This attribute is mandatory for the `<img>` element.
1251
1549
  */
1252
1550
  "src"?: string;
1551
+ /**
1552
+ * The theme determines the visual appearance of the component.
1553
+ */
1554
+ "theme"?: "ios" | "md" | "ionic";
1253
1555
  }
1254
1556
  interface IonInfiniteScroll {
1255
1557
  /**
@@ -1261,11 +1563,24 @@ export namespace Components {
1261
1563
  * @default false
1262
1564
  */
1263
1565
  "disabled": boolean;
1566
+ /**
1567
+ * The mode determines the platform behaviors of the component.
1568
+ */
1569
+ "mode"?: "ios" | "md";
1264
1570
  /**
1265
1571
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1266
1572
  * @default 'bottom'
1267
1573
  */
1268
1574
  "position": 'top' | 'bottom';
1575
+ /**
1576
+ * 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.
1577
+ * @default false
1578
+ */
1579
+ "preserveRerenderScrollPosition": boolean;
1580
+ /**
1581
+ * The theme determines the visual appearance of the component.
1582
+ */
1583
+ "theme"?: "ios" | "md" | "ionic";
1269
1584
  /**
1270
1585
  * 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
1586
  * @default '15%'
@@ -1281,6 +1596,14 @@ export namespace Components {
1281
1596
  * 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
1597
  */
1283
1598
  "loadingText"?: string | IonicSafeString;
1599
+ /**
1600
+ * The mode determines the platform behaviors of the component.
1601
+ */
1602
+ "mode"?: "ios" | "md";
1603
+ /**
1604
+ * The theme determines the visual appearance of the component.
1605
+ */
1606
+ "theme"?: "ios" | "md" | "ionic";
1284
1607
  }
1285
1608
  interface IonInput {
1286
1609
  /**
@@ -1347,7 +1670,7 @@ export namespace Components {
1347
1670
  */
1348
1671
  "errorText"?: string;
1349
1672
  /**
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.
1673
+ * 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
1674
  */
1352
1675
  "fill"?: 'outline' | 'solid';
1353
1676
  /**
@@ -1367,10 +1690,9 @@ export namespace Components {
1367
1690
  */
1368
1691
  "label"?: string;
1369
1692
  /**
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'
1693
+ * 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
1694
  */
1373
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1695
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1374
1696
  /**
1375
1697
  * The maximum value, which must not be less than its minimum (min attribute) value.
1376
1698
  */
@@ -1388,7 +1710,7 @@ export namespace Components {
1388
1710
  */
1389
1711
  "minlength"?: number;
1390
1712
  /**
1391
- * The mode determines which platform styles to use.
1713
+ * The mode determines the platform behaviors of the component.
1392
1714
  */
1393
1715
  "mode"?: "ios" | "md";
1394
1716
  /**
@@ -1423,9 +1745,14 @@ export namespace Components {
1423
1745
  */
1424
1746
  "setFocus": () => Promise<void>;
1425
1747
  /**
1426
- * The shape of the input. If "round" it will have an increased border radius.
1748
+ * 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"`.
1427
1749
  */
1428
- "shape"?: 'round';
1750
+ "shape"?: 'soft' | 'round' | 'rectangular';
1751
+ /**
1752
+ * 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.
1753
+ * @default 'medium'
1754
+ */
1755
+ "size"?: 'medium' | 'large' | 'xlarge';
1429
1756
  /**
1430
1757
  * If `true`, the element will have its spelling and grammar checked.
1431
1758
  * @default false
@@ -1435,6 +1762,10 @@ export namespace Components {
1435
1762
  * 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
1763
  */
1437
1764
  "step"?: string;
1765
+ /**
1766
+ * The theme determines the visual appearance of the component.
1767
+ */
1768
+ "theme"?: "ios" | "md" | "ionic";
1438
1769
  /**
1439
1770
  * The type of control to display. The default type is text.
1440
1771
  * @default 'text'
@@ -1475,6 +1806,10 @@ export namespace Components {
1475
1806
  * @default 4
1476
1807
  */
1477
1808
  "length": number;
1809
+ /**
1810
+ * The mode determines the platform behaviors of the component.
1811
+ */
1812
+ "mode"?: "ios" | "md";
1478
1813
  /**
1479
1814
  * 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
1815
  */
@@ -1503,6 +1838,10 @@ export namespace Components {
1503
1838
  * @default 'medium'
1504
1839
  */
1505
1840
  "size": 'small' | 'medium' | 'large';
1841
+ /**
1842
+ * The theme determines the visual appearance of the component.
1843
+ */
1844
+ "theme"?: "ios" | "md" | "ionic";
1506
1845
  /**
1507
1846
  * The type of input allowed in the input boxes.
1508
1847
  * @default 'number'
@@ -1547,14 +1886,13 @@ export namespace Components {
1547
1886
  */
1548
1887
  "color"?: Color;
1549
1888
  /**
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.
1889
+ * 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
1890
  */
1552
1891
  "detail"?: boolean;
1553
1892
  /**
1554
1893
  * The icon to use when `detail` is set to `true`.
1555
- * @default chevronForward
1556
1894
  */
1557
- "detailIcon": string;
1895
+ "detailIcon"?: string;
1558
1896
  /**
1559
1897
  * If `true`, the user cannot interact with the item.
1560
1898
  * @default false
@@ -1573,7 +1911,7 @@ export namespace Components {
1573
1911
  */
1574
1912
  "lines"?: 'full' | 'inset' | 'none';
1575
1913
  /**
1576
- * The mode determines which platform styles to use.
1914
+ * The mode determines the platform behaviors of the component.
1577
1915
  */
1578
1916
  "mode"?: "ios" | "md";
1579
1917
  /**
@@ -1593,6 +1931,10 @@ export namespace Components {
1593
1931
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1594
1932
  */
1595
1933
  "target": string | undefined;
1934
+ /**
1935
+ * The theme determines the visual appearance of the component.
1936
+ */
1937
+ "theme"?: "ios" | "md" | "ionic";
1596
1938
  /**
1597
1939
  * The type of the button. Only used when an `onclick` or `button` property is present.
1598
1940
  * @default 'button'
@@ -1605,7 +1947,7 @@ export namespace Components {
1605
1947
  */
1606
1948
  "color"?: Color;
1607
1949
  /**
1608
- * The mode determines which platform styles to use.
1950
+ * The mode determines the platform behaviors of the component.
1609
1951
  */
1610
1952
  "mode"?: "ios" | "md";
1611
1953
  /**
@@ -1613,8 +1955,20 @@ export namespace Components {
1613
1955
  * @default false
1614
1956
  */
1615
1957
  "sticky": boolean;
1958
+ /**
1959
+ * The theme determines the visual appearance of the component.
1960
+ */
1961
+ "theme"?: "ios" | "md" | "ionic";
1616
1962
  }
1617
1963
  interface IonItemGroup {
1964
+ /**
1965
+ * The mode determines the platform behaviors of the component.
1966
+ */
1967
+ "mode"?: "ios" | "md";
1968
+ /**
1969
+ * The theme determines the visual appearance of the component.
1970
+ */
1971
+ "theme"?: "ios" | "md" | "ionic";
1618
1972
  }
1619
1973
  interface IonItemOption {
1620
1974
  /**
@@ -1640,17 +1994,30 @@ export namespace Components {
1640
1994
  */
1641
1995
  "href": string | undefined;
1642
1996
  /**
1643
- * The mode determines which platform styles to use.
1997
+ * 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.
1998
+ * @default 'subtle'
1999
+ */
2000
+ "hue"?: 'bold' | 'subtle';
2001
+ /**
2002
+ * The mode determines the platform behaviors of the component.
1644
2003
  */
1645
2004
  "mode"?: "ios" | "md";
1646
2005
  /**
1647
2006
  * 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
2007
  */
1649
2008
  "rel": string | undefined;
2009
+ /**
2010
+ * 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.
2011
+ */
2012
+ "shape"?: 'soft' | 'round' | 'rectangular';
1650
2013
  /**
1651
2014
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1652
2015
  */
1653
2016
  "target": string | undefined;
2017
+ /**
2018
+ * The theme determines the visual appearance of the component.
2019
+ */
2020
+ "theme"?: "ios" | "md" | "ionic";
1654
2021
  /**
1655
2022
  * The type of the button.
1656
2023
  * @default 'button'
@@ -1659,11 +2026,19 @@ export namespace Components {
1659
2026
  }
1660
2027
  interface IonItemOptions {
1661
2028
  "fireSwipeEvent": () => Promise<void>;
2029
+ /**
2030
+ * The mode determines the platform behaviors of the component.
2031
+ */
2032
+ "mode"?: "ios" | "md";
1662
2033
  /**
1663
2034
  * 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
2035
  * @default 'end'
1665
2036
  */
1666
2037
  "side": Side;
2038
+ /**
2039
+ * The theme determines the visual appearance of the component.
2040
+ */
2041
+ "theme"?: "ios" | "md" | "ionic";
1667
2042
  }
1668
2043
  interface IonItemSliding {
1669
2044
  /**
@@ -1687,11 +2062,19 @@ export namespace Components {
1687
2062
  * 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
2063
  */
1689
2064
  "getSlidingRatio": () => Promise<number>;
2065
+ /**
2066
+ * The mode determines the platform behaviors of the component.
2067
+ */
2068
+ "mode"?: "ios" | "md";
1690
2069
  /**
1691
2070
  * Open the sliding item.
1692
2071
  * @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
2072
  */
1694
2073
  "open": (side: Side | undefined) => Promise<void>;
2074
+ /**
2075
+ * The theme determines the visual appearance of the component.
2076
+ */
2077
+ "theme"?: "ios" | "md" | "ionic";
1695
2078
  }
1696
2079
  interface IonLabel {
1697
2080
  /**
@@ -1699,13 +2082,17 @@ export namespace Components {
1699
2082
  */
1700
2083
  "color"?: Color;
1701
2084
  /**
1702
- * The mode determines which platform styles to use.
2085
+ * The mode determines the platform behaviors of the component.
1703
2086
  */
1704
2087
  "mode"?: "ios" | "md";
1705
2088
  /**
1706
2089
  * The position determines where and how the label behaves inside an item.
1707
2090
  */
1708
2091
  "position"?: 'fixed' | 'stacked' | 'floating';
2092
+ /**
2093
+ * The theme determines the visual appearance of the component.
2094
+ */
2095
+ "theme"?: "ios" | "md" | "ionic";
1709
2096
  }
1710
2097
  interface IonList {
1711
2098
  /**
@@ -1722,9 +2109,17 @@ export namespace Components {
1722
2109
  */
1723
2110
  "lines"?: 'full' | 'inset' | 'none';
1724
2111
  /**
1725
- * The mode determines which platform styles to use.
2112
+ * The mode determines the platform behaviors of the component.
1726
2113
  */
1727
2114
  "mode"?: "ios" | "md";
2115
+ /**
2116
+ * 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.
2117
+ */
2118
+ "shape"?: 'soft' | 'round' | 'rectangular';
2119
+ /**
2120
+ * The theme determines the visual appearance of the component.
2121
+ */
2122
+ "theme"?: "ios" | "md" | "ionic";
1728
2123
  }
1729
2124
  interface IonListHeader {
1730
2125
  /**
@@ -1736,9 +2131,13 @@ export namespace Components {
1736
2131
  */
1737
2132
  "lines"?: 'full' | 'inset' | 'none';
1738
2133
  /**
1739
- * The mode determines which platform styles to use.
2134
+ * The mode determines the platform behaviors of the component.
1740
2135
  */
1741
2136
  "mode"?: "ios" | "md";
2137
+ /**
2138
+ * The theme determines the visual appearance of the component.
2139
+ */
2140
+ "theme"?: "ios" | "md" | "ionic";
1742
2141
  }
1743
2142
  interface IonLoading {
1744
2143
  /**
@@ -1798,7 +2197,7 @@ export namespace Components {
1798
2197
  */
1799
2198
  "message"?: string | IonicSafeString;
1800
2199
  /**
1801
- * The mode determines which platform styles to use.
2200
+ * The mode determines the platform behaviors of the component.
1802
2201
  */
1803
2202
  "mode"?: "ios" | "md";
1804
2203
  /**
@@ -1824,7 +2223,11 @@ export namespace Components {
1824
2223
  */
1825
2224
  "spinner"?: SpinnerTypes | null;
1826
2225
  /**
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).
2226
+ * The theme determines the visual appearance of the component.
2227
+ */
2228
+ "theme"?: "ios" | "md" | "ionic";
2229
+ /**
2230
+ * 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
2231
  * @default false
1829
2232
  */
1830
2233
  "translucent": boolean;
@@ -1866,6 +2269,10 @@ export namespace Components {
1866
2269
  * An id for the menu.
1867
2270
  */
1868
2271
  "menuId"?: string;
2272
+ /**
2273
+ * The mode determines the platform behaviors of the component.
2274
+ */
2275
+ "mode"?: "ios" | "md";
1869
2276
  /**
1870
2277
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1871
2278
  * @param animated If `true`, the menu will animate when opening. If `false`, the menu will open instantly without animation. Defaults to `true`.
@@ -1888,6 +2295,10 @@ export namespace Components {
1888
2295
  * @default true
1889
2296
  */
1890
2297
  "swipeGesture": boolean;
2298
+ /**
2299
+ * The theme determines the visual appearance of the component.
2300
+ */
2301
+ "theme"?: "ios" | "md" | "ionic";
1891
2302
  /**
1892
2303
  * 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
2304
  * @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 +2329,13 @@ export namespace Components {
1918
2329
  */
1919
2330
  "menu"?: string;
1920
2331
  /**
1921
- * The mode determines which platform styles to use.
2332
+ * The mode determines the platform behaviors of the component.
1922
2333
  */
1923
2334
  "mode"?: "ios" | "md";
2335
+ /**
2336
+ * The theme determines the visual appearance of the component.
2337
+ */
2338
+ "theme"?: "ios" | "md" | "ionic";
1924
2339
  /**
1925
2340
  * The type of the button.
1926
2341
  * @default 'button'
@@ -1937,6 +2352,14 @@ export namespace Components {
1937
2352
  * 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
2353
  */
1939
2354
  "menu"?: string;
2355
+ /**
2356
+ * The mode determines the platform behaviors of the component.
2357
+ */
2358
+ "mode"?: "ios" | "md";
2359
+ /**
2360
+ * The theme determines the visual appearance of the component.
2361
+ */
2362
+ "theme"?: "ios" | "md" | "ionic";
1940
2363
  }
1941
2364
  interface IonModal {
1942
2365
  /**
@@ -2041,7 +2464,7 @@ export namespace Components {
2041
2464
  */
2042
2465
  "leaveAnimation"?: AnimationBuilder;
2043
2466
  /**
2044
- * The mode determines which platform styles to use.
2467
+ * The mode determines the platform behaviors of the component.
2045
2468
  */
2046
2469
  "mode"?: "ios" | "md";
2047
2470
  /**
@@ -2066,11 +2489,19 @@ export namespace Components {
2066
2489
  * @param breakpoint The breakpoint value to move the sheet modal to. Must be a value defined in your `breakpoints` array.
2067
2490
  */
2068
2491
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2492
+ /**
2493
+ * 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.
2494
+ */
2495
+ "shape"?: 'soft' | 'round' | 'rectangular';
2069
2496
  /**
2070
2497
  * 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
2498
  * @default true
2072
2499
  */
2073
2500
  "showBackdrop": boolean;
2501
+ /**
2502
+ * The theme determines the visual appearance of the component.
2503
+ */
2504
+ "theme"?: "ios" | "md" | "ionic";
2074
2505
  /**
2075
2506
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
2076
2507
  */
@@ -2083,7 +2514,7 @@ export namespace Components {
2083
2514
  */
2084
2515
  "animated": boolean;
2085
2516
  /**
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.
2517
+ * 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
2518
  */
2088
2519
  "animation"?: AnimationBuilder;
2089
2520
  /**
@@ -2131,6 +2562,10 @@ export namespace Components {
2131
2562
  * @param done The transition complete function.
2132
2563
  */
2133
2564
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2565
+ /**
2566
+ * The mode determines the platform behaviors of the component.
2567
+ */
2568
+ "mode"?: "ios" | "md";
2134
2569
  /**
2135
2570
  * Pop a component off of the navigation stack. Navigates back from the current component.
2136
2571
  * @param opts The navigation options.
@@ -2202,6 +2637,10 @@ export namespace Components {
2202
2637
  * If the nav component should allow for swipe-to-go-back.
2203
2638
  */
2204
2639
  "swipeGesture"?: boolean;
2640
+ /**
2641
+ * The theme determines the visual appearance of the component.
2642
+ */
2643
+ "theme"?: "ios" | "md" | "ionic";
2205
2644
  }
2206
2645
  interface IonNavLink {
2207
2646
  /**
@@ -2212,6 +2651,10 @@ export namespace Components {
2212
2651
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
2213
2652
  */
2214
2653
  "componentProps"?: ComponentProps;
2654
+ /**
2655
+ * The mode determines the platform behaviors of the component.
2656
+ */
2657
+ "mode"?: "ios" | "md";
2215
2658
  /**
2216
2659
  * The transition animation when navigating to another page.
2217
2660
  */
@@ -2221,6 +2664,10 @@ export namespace Components {
2221
2664
  * @default 'forward'
2222
2665
  */
2223
2666
  "routerDirection": RouterDirection;
2667
+ /**
2668
+ * The theme determines the visual appearance of the component.
2669
+ */
2670
+ "theme"?: "ios" | "md" | "ionic";
2224
2671
  }
2225
2672
  interface IonNote {
2226
2673
  /**
@@ -2228,16 +2675,24 @@ export namespace Components {
2228
2675
  */
2229
2676
  "color"?: Color;
2230
2677
  /**
2231
- * The mode determines which platform styles to use.
2678
+ * The mode determines the platform behaviors of the component.
2232
2679
  */
2233
2680
  "mode"?: "ios" | "md";
2681
+ /**
2682
+ * The theme determines the visual appearance of the component.
2683
+ */
2684
+ "theme"?: "ios" | "md" | "ionic";
2234
2685
  }
2235
2686
  interface IonPicker {
2236
2687
  "exitInputMode": () => Promise<void>;
2237
2688
  /**
2238
- * The mode determines which platform styles to use.
2689
+ * The mode determines the platform behaviors of the component.
2239
2690
  */
2240
2691
  "mode"?: "ios" | "md";
2692
+ /**
2693
+ * The theme determines the visual appearance of the component.
2694
+ */
2695
+ "theme"?: "ios" | "md" | "ionic";
2241
2696
  }
2242
2697
  interface IonPickerColumn {
2243
2698
  /**
@@ -2251,7 +2706,7 @@ export namespace Components {
2251
2706
  */
2252
2707
  "disabled": boolean;
2253
2708
  /**
2254
- * The mode determines which platform styles to use.
2709
+ * The mode determines the platform behaviors of the component.
2255
2710
  */
2256
2711
  "mode"?: "ios" | "md";
2257
2712
  /**
@@ -2268,6 +2723,10 @@ export namespace Components {
2268
2723
  * 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
2724
  */
2270
2725
  "setValue": (value: PickerColumnValue) => Promise<void>;
2726
+ /**
2727
+ * The theme determines the visual appearance of the component.
2728
+ */
2729
+ "theme"?: "ios" | "md" | "ionic";
2271
2730
  /**
2272
2731
  * The selected option in the picker.
2273
2732
  */
@@ -2284,6 +2743,14 @@ export namespace Components {
2284
2743
  * @default false
2285
2744
  */
2286
2745
  "disabled": boolean;
2746
+ /**
2747
+ * The mode determines the platform behaviors of the component.
2748
+ */
2749
+ "mode"?: "ios" | "md";
2750
+ /**
2751
+ * The theme determines the visual appearance of the component.
2752
+ */
2753
+ "theme"?: "ios" | "md" | "ionic";
2287
2754
  /**
2288
2755
  * The text value of the option.
2289
2756
  */
@@ -2358,7 +2825,7 @@ export namespace Components {
2358
2825
  */
2359
2826
  "leaveAnimation"?: AnimationBuilder;
2360
2827
  /**
2361
- * The mode determines which platform styles to use.
2828
+ * The mode determines the platform behaviors of the component.
2362
2829
  */
2363
2830
  "mode"?: "ios" | "md";
2364
2831
  /**
@@ -2379,6 +2846,10 @@ export namespace Components {
2379
2846
  * @default true
2380
2847
  */
2381
2848
  "showBackdrop": boolean;
2849
+ /**
2850
+ * The theme determines the visual appearance of the component.
2851
+ */
2852
+ "theme"?: "ios" | "md" | "ionic";
2382
2853
  /**
2383
2854
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2384
2855
  */
@@ -2392,7 +2863,7 @@ export namespace Components {
2392
2863
  }
2393
2864
  interface IonPopover {
2394
2865
  /**
2395
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2866
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2396
2867
  */
2397
2868
  "alignment"?: PositionAlign;
2398
2869
  /**
@@ -2401,7 +2872,7 @@ export namespace Components {
2401
2872
  */
2402
2873
  "animated": boolean;
2403
2874
  /**
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.
2875
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2405
2876
  * @default true
2406
2877
  */
2407
2878
  "arrow": boolean;
@@ -2481,7 +2952,7 @@ export namespace Components {
2481
2952
  */
2482
2953
  "leaveAnimation"?: AnimationBuilder;
2483
2954
  /**
2484
- * The mode determines which platform styles to use.
2955
+ * The mode determines the platform behaviors of the component.
2485
2956
  */
2486
2957
  "mode"?: "ios" | "md";
2487
2958
  /**
@@ -2523,7 +2994,11 @@ export namespace Components {
2523
2994
  */
2524
2995
  "size": PopoverSize;
2525
2996
  /**
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).
2997
+ * The theme determines the visual appearance of the component.
2998
+ */
2999
+ "theme"?: "ios" | "md" | "ionic";
3000
+ /**
3001
+ * 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
3002
  * @default false
2528
3003
  */
2529
3004
  "translucent": boolean;
@@ -2548,7 +3023,7 @@ export namespace Components {
2548
3023
  */
2549
3024
  "color"?: Color;
2550
3025
  /**
2551
- * The mode determines which platform styles to use.
3026
+ * The mode determines the platform behaviors of the component.
2552
3027
  */
2553
3028
  "mode"?: "ios" | "md";
2554
3029
  /**
@@ -2556,6 +3031,14 @@ export namespace Components {
2556
3031
  * @default false
2557
3032
  */
2558
3033
  "reversed": boolean;
3034
+ /**
3035
+ * 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.
3036
+ */
3037
+ "shape"?: 'round' | 'rectangular';
3038
+ /**
3039
+ * The theme determines the visual appearance of the component.
3040
+ */
3041
+ "theme"?: "ios" | "md" | "ionic";
2559
3042
  /**
2560
3043
  * 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
3044
  * @default 'determinate'
@@ -2591,7 +3074,7 @@ export namespace Components {
2591
3074
  */
2592
3075
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2593
3076
  /**
2594
- * The mode determines which platform styles to use.
3077
+ * The mode determines the platform behaviors of the component.
2595
3078
  */
2596
3079
  "mode"?: "ios" | "md";
2597
3080
  /**
@@ -2601,6 +3084,10 @@ export namespace Components {
2601
3084
  "name": string;
2602
3085
  "setButtonTabindex": (value: number) => Promise<void>;
2603
3086
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
3087
+ /**
3088
+ * The theme determines the visual appearance of the component.
3089
+ */
3090
+ "theme"?: "ios" | "md" | "ionic";
2604
3091
  /**
2605
3092
  * the value of the radio.
2606
3093
  */
@@ -2624,12 +3111,21 @@ export namespace Components {
2624
3111
  * The helper text to display at the top of the radio group.
2625
3112
  */
2626
3113
  "helperText"?: string;
3114
+ /**
3115
+ * The mode determines the platform behaviors of the component.
3116
+ */
3117
+ "mode"?: "ios" | "md";
2627
3118
  /**
2628
3119
  * The name of the control, which is submitted with the form data.
2629
3120
  * @default this.inputId
2630
3121
  */
2631
3122
  "name": string;
2632
3123
  "setFocus": () => Promise<void>;
3124
+ /**
3125
+ * The theme determines the visual appearance of the component.
3126
+ */
3127
+ "theme"?: "ios" | "md" | "ionic";
3128
+ "updateRadiosTabindex": () => Promise<void>;
2633
3129
  /**
2634
3130
  * the value of the radio group.
2635
3131
  */
@@ -2678,7 +3174,7 @@ export namespace Components {
2678
3174
  */
2679
3175
  "min": number;
2680
3176
  /**
2681
- * The mode determines which platform styles to use.
3177
+ * The mode determines the platform behaviors of the component.
2682
3178
  */
2683
3179
  "mode"?: "ios" | "md";
2684
3180
  /**
@@ -2706,6 +3202,10 @@ export namespace Components {
2706
3202
  * @default 1
2707
3203
  */
2708
3204
  "step": number;
3205
+ /**
3206
+ * The theme determines the visual appearance of the component.
3207
+ */
3208
+ "theme"?: "ios" | "md" | "ionic";
2709
3209
  /**
2710
3210
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2711
3211
  * @default true
@@ -2741,7 +3241,7 @@ export namespace Components {
2741
3241
  */
2742
3242
  "getProgress": () => Promise<number>;
2743
3243
  /**
2744
- * The mode determines which platform styles to use.
3244
+ * The mode determines the platform behaviors of the component.
2745
3245
  */
2746
3246
  "mode"?: "ios" | "md";
2747
3247
  /**
@@ -2764,8 +3264,16 @@ export namespace Components {
2764
3264
  * @default '280ms'
2765
3265
  */
2766
3266
  "snapbackDuration": string;
3267
+ /**
3268
+ * The theme determines the visual appearance of the component.
3269
+ */
3270
+ "theme"?: "ios" | "md" | "ionic";
2767
3271
  }
2768
3272
  interface IonRefresherContent {
3273
+ /**
3274
+ * The mode determines the platform behaviors of the component.
3275
+ */
3276
+ "mode"?: "ios" | "md";
2769
3277
  /**
2770
3278
  * 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
3279
  */
@@ -2782,8 +3290,20 @@ export namespace Components {
2782
3290
  * 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
3291
  */
2784
3292
  "refreshingText"?: string | IonicSafeString;
3293
+ /**
3294
+ * The theme determines the visual appearance of the component.
3295
+ */
3296
+ "theme"?: "ios" | "md" | "ionic";
2785
3297
  }
2786
3298
  interface IonReorder {
3299
+ /**
3300
+ * The mode determines the platform behaviors of the component.
3301
+ */
3302
+ "mode"?: "ios" | "md";
3303
+ /**
3304
+ * The theme determines the visual appearance of the component.
3305
+ */
3306
+ "theme"?: "ios" | "md" | "ionic";
2787
3307
  }
2788
3308
  interface IonReorderGroup {
2789
3309
  /**
@@ -2796,6 +3316,14 @@ export namespace Components {
2796
3316
  * @default true
2797
3317
  */
2798
3318
  "disabled": boolean;
3319
+ /**
3320
+ * The mode determines the platform behaviors of the component.
3321
+ */
3322
+ "mode"?: "ios" | "md";
3323
+ /**
3324
+ * The theme determines the visual appearance of the component.
3325
+ */
3326
+ "theme"?: "ios" | "md" | "ionic";
2799
3327
  }
2800
3328
  interface IonRippleEffect {
2801
3329
  /**
@@ -2804,6 +3332,14 @@ export namespace Components {
2804
3332
  * @param y The vertical coordinate of where the ripple should start.
2805
3333
  */
2806
3334
  "addRipple": (x: number, y: number) => Promise<() => void>;
3335
+ /**
3336
+ * The mode determines the platform behaviors of the component.
3337
+ */
3338
+ "mode"?: "ios" | "md";
3339
+ /**
3340
+ * The theme determines the visual appearance of the component.
3341
+ */
3342
+ "theme"?: "ios" | "md" | "ionic";
2807
3343
  /**
2808
3344
  * 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
3345
  * @default 'bounded'
@@ -2827,6 +3363,14 @@ export namespace Components {
2827
3363
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2828
3364
  */
2829
3365
  "componentProps"?: { [key: string]: any };
3366
+ /**
3367
+ * The mode determines the platform behaviors of the component.
3368
+ */
3369
+ "mode"?: "ios" | "md";
3370
+ /**
3371
+ * The theme determines the visual appearance of the component.
3372
+ */
3373
+ "theme"?: "ios" | "md" | "ionic";
2830
3374
  /**
2831
3375
  * 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
3376
  * @default ''
@@ -2849,6 +3393,10 @@ export namespace Components {
2849
3393
  */
2850
3394
  "back": () => Promise<void>;
2851
3395
  "canTransition": () => Promise<string | boolean>;
3396
+ /**
3397
+ * The mode determines the platform behaviors of the component.
3398
+ */
3399
+ "mode"?: "ios" | "md";
2852
3400
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2853
3401
  "printDebug": () => Promise<void>;
2854
3402
  /**
@@ -2863,6 +3411,10 @@ export namespace Components {
2863
3411
  * @default '/'
2864
3412
  */
2865
3413
  "root": string;
3414
+ /**
3415
+ * The theme determines the visual appearance of the component.
3416
+ */
3417
+ "theme"?: "ios" | "md" | "ionic";
2866
3418
  /**
2867
3419
  * 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
3420
  * @default true
@@ -2878,6 +3430,10 @@ export namespace Components {
2878
3430
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2879
3431
  */
2880
3432
  "href": string | undefined;
3433
+ /**
3434
+ * The mode determines the platform behaviors of the component.
3435
+ */
3436
+ "mode"?: "ios" | "md";
2881
3437
  /**
2882
3438
  * 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
3439
  */
@@ -2895,6 +3451,10 @@ export namespace Components {
2895
3451
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2896
3452
  */
2897
3453
  "target": string | undefined;
3454
+ /**
3455
+ * The theme determines the visual appearance of the component.
3456
+ */
3457
+ "theme"?: "ios" | "md" | "ionic";
2898
3458
  }
2899
3459
  interface IonRouterOutlet {
2900
3460
  /**
@@ -2910,14 +3470,26 @@ export namespace Components {
2910
3470
  "delegate"?: FrameworkDelegate;
2911
3471
  "getRouteId": () => Promise<RouteID | undefined>;
2912
3472
  /**
2913
- * The mode determines which platform styles to use.
3473
+ * The mode determines the platform behaviors of the component.
2914
3474
  * @default getIonMode(this)
2915
3475
  */
2916
3476
  "mode": "ios" | "md";
2917
3477
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2918
3478
  "swipeHandler"?: SwipeGestureHandler;
3479
+ /**
3480
+ * The theme determines the visual appearance of the component.
3481
+ */
3482
+ "theme"?: "ios" | "md" | "ionic";
2919
3483
  }
2920
3484
  interface IonRow {
3485
+ /**
3486
+ * The mode determines the platform behaviors of the component.
3487
+ */
3488
+ "mode"?: "ios" | "md";
3489
+ /**
3490
+ * The theme determines the visual appearance of the component.
3491
+ */
3492
+ "theme"?: "ios" | "md" | "ionic";
2921
3493
  }
2922
3494
  interface IonSearchbar {
2923
3495
  /**
@@ -2941,17 +3513,16 @@ export namespace Components {
2941
3513
  */
2942
3514
  "autocorrect": 'on' | 'off';
2943
3515
  /**
2944
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
2945
- * @default config.get('backButtonIcon', arrowBackSharp) as string
3516
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2946
3517
  */
2947
- "cancelButtonIcon": string;
3518
+ "cancelButtonIcon"?: string;
2948
3519
  /**
2949
- * Set the cancel button text. Only applies to `ios` mode.
3520
+ * Set the cancel button text. Only available when the theme is `"ios"`.
2950
3521
  * @default 'Cancel'
2951
3522
  */
2952
3523
  "cancelButtonText": string;
2953
3524
  /**
2954
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3525
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2955
3526
  */
2956
3527
  "clearIcon"?: string;
2957
3528
  /**
@@ -2988,7 +3559,7 @@ export namespace Components {
2988
3559
  */
2989
3560
  "minlength"?: number;
2990
3561
  /**
2991
- * The mode determines which platform styles to use.
3562
+ * The mode determines the platform behaviors of the component.
2992
3563
  */
2993
3564
  "mode"?: "ios" | "md";
2994
3565
  /**
@@ -3002,13 +3573,17 @@ export namespace Components {
3002
3573
  */
3003
3574
  "placeholder": string;
3004
3575
  /**
3005
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3576
+ * 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
3577
  */
3007
- "searchIcon"?: string;
3578
+ "searchIcon"?: string | boolean;
3008
3579
  /**
3009
3580
  * 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
3581
  */
3011
3582
  "setFocus": () => Promise<void>;
3583
+ /**
3584
+ * 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.
3585
+ */
3586
+ "shape"?: 'soft' | 'round' | 'rectangular';
3012
3587
  /**
3013
3588
  * 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
3589
  * @default 'never'
@@ -3019,11 +3594,19 @@ export namespace Components {
3019
3594
  * @default 'always'
3020
3595
  */
3021
3596
  "showClearButton": 'never' | 'focus' | 'always';
3597
+ /**
3598
+ * 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.
3599
+ */
3600
+ "size"?: 'small' | 'medium' | 'large';
3022
3601
  /**
3023
3602
  * If `true`, enable spellcheck on the input.
3024
3603
  * @default false
3025
3604
  */
3026
3605
  "spellcheck": boolean;
3606
+ /**
3607
+ * The theme determines the visual appearance of the component.
3608
+ */
3609
+ "theme"?: "ios" | "md" | "ionic";
3027
3610
  /**
3028
3611
  * Set the type of the input.
3029
3612
  * @default 'search'
@@ -3046,7 +3629,7 @@ export namespace Components {
3046
3629
  */
3047
3630
  "disabled": boolean;
3048
3631
  /**
3049
- * The mode determines which platform styles to use.
3632
+ * The mode determines the platform behaviors of the component.
3050
3633
  */
3051
3634
  "mode"?: "ios" | "md";
3052
3635
  /**
@@ -3064,6 +3647,10 @@ export namespace Components {
3064
3647
  * @default true
3065
3648
  */
3066
3649
  "swipeGesture": boolean;
3650
+ /**
3651
+ * The theme determines the visual appearance of the component.
3652
+ */
3653
+ "theme"?: "ios" | "md" | "ionic";
3067
3654
  /**
3068
3655
  * the value of the segment.
3069
3656
  */
@@ -3085,10 +3672,14 @@ export namespace Components {
3085
3672
  */
3086
3673
  "layout"?: SegmentButtonLayout;
3087
3674
  /**
3088
- * The mode determines which platform styles to use.
3675
+ * The mode determines the platform behaviors of the component.
3089
3676
  */
3090
3677
  "mode"?: "ios" | "md";
3091
3678
  "setFocus": () => Promise<void>;
3679
+ /**
3680
+ * The theme determines the visual appearance of the component.
3681
+ */
3682
+ "theme"?: "ios" | "md" | "ionic";
3092
3683
  /**
3093
3684
  * The type of the button.
3094
3685
  * @default 'button'
@@ -3120,6 +3711,11 @@ export namespace Components {
3120
3711
  "swipeGesture": boolean;
3121
3712
  }
3122
3713
  interface IonSelect {
3714
+ /**
3715
+ * If `true`, the cancel button will display an icon instead of the `cancelText`. Only applies when `interface` is set to `"modal"`. Has no effect on `"action-sheet"`, `"alert"`, or `"popover"` interfaces. When `cancelIcon` is `true`, the `cancelText` property is ignored for display but is used as the accessible label for the icon button.
3716
+ * @default false
3717
+ */
3718
+ "cancelIcon": boolean;
3123
3719
  /**
3124
3720
  * The text to display on the cancel button.
3125
3721
  * @default 'Cancel'
@@ -3143,11 +3739,11 @@ export namespace Components {
3143
3739
  */
3144
3740
  "errorText"?: string;
3145
3741
  /**
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.
3742
+ * 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
3743
  */
3148
3744
  "expandedIcon"?: string;
3149
3745
  /**
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.
3746
+ * 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
3747
  */
3152
3748
  "fill"?: 'outline' | 'solid';
3153
3749
  /**
@@ -3178,7 +3774,7 @@ export namespace Components {
3178
3774
  */
3179
3775
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
3180
3776
  /**
3181
- * The mode determines which platform styles to use.
3777
+ * The mode determines the platform behaviors of the component.
3182
3778
  */
3183
3779
  "mode"?: "ios" | "md";
3184
3780
  /**
@@ -3215,11 +3811,19 @@ export namespace Components {
3215
3811
  */
3216
3812
  "selectedText"?: string | null;
3217
3813
  /**
3218
- * The shape of the select. If "round" it will have an increased border radius.
3814
+ * 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
3815
  */
3220
- "shape"?: 'round';
3816
+ "shape"?: 'soft' | 'round' | 'rectangular';
3221
3817
  /**
3222
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3818
+ * 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.
3819
+ */
3820
+ "size"?: 'small' | 'medium' | 'large';
3821
+ /**
3822
+ * The theme determines the visual appearance of the component.
3823
+ */
3824
+ "theme"?: "ios" | "md" | "ionic";
3825
+ /**
3826
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
3223
3827
  */
3224
3828
  "toggleIcon"?: string;
3225
3829
  /**
@@ -3228,6 +3832,11 @@ export namespace Components {
3228
3832
  "value"?: any | null;
3229
3833
  }
3230
3834
  interface IonSelectModal {
3835
+ /**
3836
+ * If `true`, the cancel button will display a close icon instead of the `cancelText`. When `cancelIcon` is `true`, `cancelText` is not displayed visually but is still used as the accessible label (`aria-label`) for the button.
3837
+ * @default false
3838
+ */
3839
+ "cancelIcon": boolean;
3231
3840
  /**
3232
3841
  * The text to display on the cancel button.
3233
3842
  * @default 'Close'
@@ -3241,11 +3850,23 @@ export namespace Components {
3241
3850
  "options": SelectModalOption[];
3242
3851
  }
3243
3852
  interface IonSelectOption {
3853
+ /**
3854
+ * Text that is placed underneath the option text to provide additional details about the option.
3855
+ */
3856
+ "description"?: string;
3244
3857
  /**
3245
3858
  * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
3246
3859
  * @default false
3247
3860
  */
3248
3861
  "disabled": boolean;
3862
+ /**
3863
+ * The mode determines the platform behaviors of the component.
3864
+ */
3865
+ "mode"?: "ios" | "md";
3866
+ /**
3867
+ * The theme determines the visual appearance of the component.
3868
+ */
3869
+ "theme"?: "ios" | "md" | "ionic";
3249
3870
  /**
3250
3871
  * The text value of the option.
3251
3872
  */
@@ -3260,6 +3881,10 @@ export namespace Components {
3260
3881
  * The text content of the popover body
3261
3882
  */
3262
3883
  "message"?: string;
3884
+ /**
3885
+ * The mode determines the platform behaviors of the component.
3886
+ */
3887
+ "mode"?: "ios" | "md";
3263
3888
  /**
3264
3889
  * If true, the select accepts multiple values
3265
3890
  */
@@ -3273,6 +3898,10 @@ export namespace Components {
3273
3898
  * The subheader text of the popover
3274
3899
  */
3275
3900
  "subHeader"?: string;
3901
+ /**
3902
+ * The theme determines the visual appearance of the component.
3903
+ */
3904
+ "theme"?: "ios" | "md" | "ionic";
3276
3905
  }
3277
3906
  interface IonSkeletonText {
3278
3907
  /**
@@ -3280,6 +3909,14 @@ export namespace Components {
3280
3909
  * @default false
3281
3910
  */
3282
3911
  "animated": boolean;
3912
+ /**
3913
+ * The mode determines the platform behaviors of the component.
3914
+ */
3915
+ "mode"?: "ios" | "md";
3916
+ /**
3917
+ * The theme determines the visual appearance of the component.
3918
+ */
3919
+ "theme"?: "ios" | "md" | "ionic";
3283
3920
  }
3284
3921
  interface IonSpinner {
3285
3922
  /**
@@ -3290,6 +3927,10 @@ export namespace Components {
3290
3927
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
3291
3928
  */
3292
3929
  "duration"?: number;
3930
+ /**
3931
+ * The mode determines the platform behaviors of the component.
3932
+ */
3933
+ "mode"?: "ios" | "md";
3293
3934
  /**
3294
3935
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
3295
3936
  */
@@ -3299,6 +3940,14 @@ export namespace Components {
3299
3940
  * @default false
3300
3941
  */
3301
3942
  "paused": boolean;
3943
+ /**
3944
+ * 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.
3945
+ */
3946
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3947
+ /**
3948
+ * The theme determines the visual appearance of the component.
3949
+ */
3950
+ "theme"?: "ios" | "md" | "ionic";
3302
3951
  }
3303
3952
  interface IonSplitPane {
3304
3953
  /**
@@ -3311,6 +3960,14 @@ export namespace Components {
3311
3960
  */
3312
3961
  "disabled": boolean;
3313
3962
  "isVisible": () => Promise<boolean>;
3963
+ /**
3964
+ * The mode determines the platform behaviors of the component.
3965
+ */
3966
+ "mode"?: "ios" | "md";
3967
+ /**
3968
+ * The theme determines the visual appearance of the component.
3969
+ */
3970
+ "theme"?: "ios" | "md" | "ionic";
3314
3971
  /**
3315
3972
  * 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
3973
  * @default QUERY['lg']
@@ -3327,6 +3984,10 @@ export namespace Components {
3327
3984
  */
3328
3985
  "component"?: ComponentRef;
3329
3986
  "delegate"?: FrameworkDelegate;
3987
+ /**
3988
+ * The mode determines the platform behaviors of the component.
3989
+ */
3990
+ "mode"?: "ios" | "md";
3330
3991
  /**
3331
3992
  * Set the active component for the tab
3332
3993
  */
@@ -3335,6 +3996,10 @@ export namespace Components {
3335
3996
  * 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
3997
  */
3337
3998
  "tab": string;
3999
+ /**
4000
+ * The theme determines the visual appearance of the component.
4001
+ */
4002
+ "theme"?: "ios" | "md" | "ionic";
3338
4003
  }
3339
4004
  interface IonTabBar {
3340
4005
  /**
@@ -3342,7 +4007,17 @@ export namespace Components {
3342
4007
  */
3343
4008
  "color"?: Color;
3344
4009
  /**
3345
- * The mode determines which platform styles to use.
4010
+ * 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"`.
4011
+ * @default 'full'
4012
+ */
4013
+ "expand": 'compact' | 'full';
4014
+ /**
4015
+ * If `true`, the tab bar will be hidden when the user scrolls down and shown when the user scrolls up. Only applies when the theme is `"ionic"` and `expand` is `"compact"`.
4016
+ * @default false
4017
+ */
4018
+ "hideOnScroll": boolean;
4019
+ /**
4020
+ * The mode determines the platform behaviors of the component.
3346
4021
  */
3347
4022
  "mode"?: "ios" | "md";
3348
4023
  /**
@@ -3350,7 +4025,15 @@ export namespace Components {
3350
4025
  */
3351
4026
  "selectedTab"?: string;
3352
4027
  /**
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).
4028
+ * 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.
4029
+ */
4030
+ "shape"?: 'soft' | 'round' | 'rectangular';
4031
+ /**
4032
+ * The theme determines the visual appearance of the component.
4033
+ */
4034
+ "theme"?: "ios" | "md" | "ionic";
4035
+ /**
4036
+ * 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
4037
  * @default false
3355
4038
  */
3356
4039
  "translucent": boolean;
@@ -3374,7 +4057,7 @@ export namespace Components {
3374
4057
  */
3375
4058
  "layout"?: TabButtonLayout;
3376
4059
  /**
3377
- * The mode determines which platform styles to use.
4060
+ * The mode determines the platform behaviors of the component.
3378
4061
  */
3379
4062
  "mode"?: "ios" | "md";
3380
4063
  /**
@@ -3386,6 +4069,10 @@ export namespace Components {
3386
4069
  * @default false
3387
4070
  */
3388
4071
  "selected": boolean;
4072
+ /**
4073
+ * 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.
4074
+ */
4075
+ "shape"?: 'soft' | 'round' | 'rectangular';
3389
4076
  /**
3390
4077
  * 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
4078
  */
@@ -3394,6 +4081,10 @@ export namespace Components {
3394
4081
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
3395
4082
  */
3396
4083
  "target": string | undefined;
4084
+ /**
4085
+ * The theme determines the visual appearance of the component.
4086
+ */
4087
+ "theme"?: "ios" | "md" | "ionic";
3397
4088
  }
3398
4089
  interface IonTabs {
3399
4090
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -3406,12 +4097,20 @@ export namespace Components {
3406
4097
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3407
4098
  */
3408
4099
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
4100
+ /**
4101
+ * The mode determines the platform behaviors of the component.
4102
+ */
4103
+ "mode"?: "ios" | "md";
3409
4104
  /**
3410
4105
  * 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
4106
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3412
4107
  */
3413
4108
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3414
4109
  "setRouteId": (id: string) => Promise<RouteWrite>;
4110
+ /**
4111
+ * The theme determines the visual appearance of the component.
4112
+ */
4113
+ "theme"?: "ios" | "md" | "ionic";
3415
4114
  /**
3416
4115
  * @default false
3417
4116
  */
@@ -3423,9 +4122,13 @@ export namespace Components {
3423
4122
  */
3424
4123
  "color"?: Color;
3425
4124
  /**
3426
- * The mode determines which platform styles to use.
4125
+ * The mode determines the platform behaviors of the component.
3427
4126
  */
3428
4127
  "mode"?: "ios" | "md";
4128
+ /**
4129
+ * The theme determines the visual appearance of the component.
4130
+ */
4131
+ "theme"?: "ios" | "md" | "ionic";
3429
4132
  }
3430
4133
  interface IonTextarea {
3431
4134
  /**
@@ -3483,7 +4186,7 @@ export namespace Components {
3483
4186
  */
3484
4187
  "errorText"?: string;
3485
4188
  /**
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.
4189
+ * 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
4190
  */
3488
4191
  "fill"?: 'outline' | 'solid';
3489
4192
  /**
@@ -3516,7 +4219,7 @@ export namespace Components {
3516
4219
  */
3517
4220
  "minlength"?: number;
3518
4221
  /**
3519
- * The mode determines which platform styles to use.
4222
+ * The mode determines the platform behaviors of the component.
3520
4223
  */
3521
4224
  "mode"?: "ios" | "md";
3522
4225
  /**
@@ -3547,14 +4250,23 @@ export namespace Components {
3547
4250
  */
3548
4251
  "setFocus": () => Promise<void>;
3549
4252
  /**
3550
- * The shape of the textarea. If "round" it will have an increased border radius.
4253
+ * 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.
3551
4254
  */
3552
- "shape"?: 'round';
4255
+ "shape"?: 'soft' | 'round' | 'rectangular';
4256
+ /**
4257
+ * 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.
4258
+ * @default 'medium'
4259
+ */
4260
+ "size"?: 'small' | 'medium' | 'large';
3553
4261
  /**
3554
4262
  * If `true`, the element will have its spelling and grammar checked.
3555
4263
  * @default false
3556
4264
  */
3557
4265
  "spellcheck": boolean;
4266
+ /**
4267
+ * The theme determines the visual appearance of the component.
4268
+ */
4269
+ "theme"?: "ios" | "md" | "ionic";
3558
4270
  /**
3559
4271
  * The value of the textarea.
3560
4272
  * @default ''
@@ -3566,16 +4278,32 @@ export namespace Components {
3566
4278
  "wrap"?: 'hard' | 'soft' | 'off';
3567
4279
  }
3568
4280
  interface IonThumbnail {
4281
+ /**
4282
+ * The mode determines the platform behaviors of the component.
4283
+ */
4284
+ "mode"?: "ios" | "md";
4285
+ /**
4286
+ * The theme determines the visual appearance of the component.
4287
+ */
4288
+ "theme"?: "ios" | "md" | "ionic";
3569
4289
  }
3570
4290
  interface IonTitle {
3571
4291
  /**
3572
4292
  * 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
4293
  */
3574
4294
  "color"?: Color;
4295
+ /**
4296
+ * The mode determines the platform behaviors of the component.
4297
+ */
4298
+ "mode"?: "ios" | "md";
3575
4299
  /**
3576
4300
  * The size of the toolbar title.
3577
4301
  */
3578
- "size"?: 'large' | 'small';
4302
+ "size"?: 'large' | 'small';
4303
+ /**
4304
+ * The theme determines the visual appearance of the component.
4305
+ */
4306
+ "theme"?: "ios" | "md" | "ionic";
3579
4307
  }
3580
4308
  interface IonToast {
3581
4309
  /**
@@ -3623,6 +4351,11 @@ export namespace Components {
3623
4351
  * Additional attributes to pass to the toast.
3624
4352
  */
3625
4353
  "htmlAttributes"?: { [key: string]: any };
4354
+ /**
4355
+ * 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.
4356
+ * @default 'subtle'
4357
+ */
4358
+ "hue"?: 'bold' | 'subtle';
3626
4359
  /**
3627
4360
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
3628
4361
  */
@@ -3651,7 +4384,7 @@ export namespace Components {
3651
4384
  */
3652
4385
  "message"?: string | IonicSafeString;
3653
4386
  /**
3654
- * The mode determines which platform styles to use.
4387
+ * The mode determines the platform behaviors of the component.
3655
4388
  */
3656
4389
  "mode"?: "ios" | "md";
3657
4390
  /**
@@ -3676,12 +4409,20 @@ export namespace Components {
3676
4409
  * Present the toast overlay after it has been created.
3677
4410
  */
3678
4411
  "present": () => Promise<void>;
4412
+ /**
4413
+ * 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.
4414
+ */
4415
+ "shape"?: 'soft' | 'round' | 'rectangular';
3679
4416
  /**
3680
4417
  * 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
4418
  */
3682
4419
  "swipeGesture"?: ToastSwipeGestureDirection;
3683
4420
  /**
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).
4421
+ * The theme determines the visual appearance of the component.
4422
+ */
4423
+ "theme"?: "ios" | "md" | "ionic";
4424
+ /**
4425
+ * 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
4426
  * @default false
3686
4427
  */
3687
4428
  "translucent": boolean;
@@ -3732,7 +4473,7 @@ export namespace Components {
3732
4473
  */
3733
4474
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3734
4475
  /**
3735
- * The mode determines which platform styles to use.
4476
+ * The mode determines the platform behaviors of the component.
3736
4477
  */
3737
4478
  "mode"?: "ios" | "md";
3738
4479
  /**
@@ -3745,6 +4486,10 @@ export namespace Components {
3745
4486
  * @default false
3746
4487
  */
3747
4488
  "required": boolean;
4489
+ /**
4490
+ * The theme determines the visual appearance of the component.
4491
+ */
4492
+ "theme"?: "ios" | "md" | "ionic";
3748
4493
  /**
3749
4494
  * 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
4495
  * @default 'on'
@@ -3757,9 +4502,17 @@ export namespace Components {
3757
4502
  */
3758
4503
  "color"?: Color;
3759
4504
  /**
3760
- * The mode determines which platform styles to use.
4505
+ * The mode determines the platform behaviors of the component.
3761
4506
  */
3762
4507
  "mode"?: "ios" | "md";
4508
+ /**
4509
+ * The theme determines the visual appearance of the component.
4510
+ */
4511
+ "theme"?: "ios" | "md" | "ionic";
4512
+ /**
4513
+ * Where to place the title relative to the other toolbar content. `"start"`: The title will appear to the left of the toolbar content in LTR and to the right in RTL. `"center"`: The title will appear in the center of the toolbar. `"end"`: The title will appear to the right of the toolbar content in LTR and to the left in RTL. Only applies in the `ionic` theme.
4514
+ */
4515
+ "titlePlacement"?: 'start' | 'center' | 'end';
3763
4516
  }
3764
4517
  }
3765
4518
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4241,6 +4994,12 @@ declare global {
4241
4994
  prototype: HTMLIonDatetimeButtonElement;
4242
4995
  new (): HTMLIonDatetimeButtonElement;
4243
4996
  };
4997
+ interface HTMLIonDividerElement extends Components.IonDivider, HTMLStencilElement {
4998
+ }
4999
+ var HTMLIonDividerElement: {
5000
+ prototype: HTMLIonDividerElement;
5001
+ new (): HTMLIonDividerElement;
5002
+ };
4244
5003
  interface HTMLIonFabElement extends Components.IonFab, HTMLStencilElement {
4245
5004
  }
4246
5005
  var HTMLIonFabElement: {
@@ -4277,6 +5036,12 @@ declare global {
4277
5036
  prototype: HTMLIonFooterElement;
4278
5037
  new (): HTMLIonFooterElement;
4279
5038
  };
5039
+ interface HTMLIonGalleryElement extends Components.IonGallery, HTMLStencilElement {
5040
+ }
5041
+ var HTMLIonGalleryElement: {
5042
+ prototype: HTMLIonGalleryElement;
5043
+ new (): HTMLIonGalleryElement;
5044
+ };
4280
5045
  interface HTMLIonGridElement extends Components.IonGrid, HTMLStencilElement {
4281
5046
  }
4282
5047
  var HTMLIonGridElement: {
@@ -5229,10 +5994,12 @@ declare global {
5229
5994
  "ion-content": HTMLIonContentElement;
5230
5995
  "ion-datetime": HTMLIonDatetimeElement;
5231
5996
  "ion-datetime-button": HTMLIonDatetimeButtonElement;
5997
+ "ion-divider": HTMLIonDividerElement;
5232
5998
  "ion-fab": HTMLIonFabElement;
5233
5999
  "ion-fab-button": HTMLIonFabButtonElement;
5234
6000
  "ion-fab-list": HTMLIonFabListElement;
5235
6001
  "ion-footer": HTMLIonFooterElement;
6002
+ "ion-gallery": HTMLIonGalleryElement;
5236
6003
  "ion-grid": HTMLIonGridElement;
5237
6004
  "ion-header": HTMLIonHeaderElement;
5238
6005
  "ion-img": HTMLIonImgElement;
@@ -5314,7 +6081,7 @@ declare namespace LocalJSX {
5314
6081
  */
5315
6082
  "disabled"?: boolean;
5316
6083
  /**
5317
- * The mode determines which platform styles to use.
6084
+ * The mode determines the platform behaviors of the component.
5318
6085
  */
5319
6086
  "mode"?: "ios" | "md";
5320
6087
  /**
@@ -5322,9 +6089,12 @@ declare namespace LocalJSX {
5322
6089
  * @default false
5323
6090
  */
5324
6091
  "readonly"?: boolean;
6092
+ /**
6093
+ * The theme determines the visual appearance of the component.
6094
+ */
6095
+ "theme"?: "ios" | "md" | "ionic";
5325
6096
  /**
5326
6097
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
5327
- * @default chevronDown
5328
6098
  */
5329
6099
  "toggleIcon"?: string;
5330
6100
  /**
@@ -5355,7 +6125,7 @@ declare namespace LocalJSX {
5355
6125
  */
5356
6126
  "expand"?: 'compact' | 'inset';
5357
6127
  /**
5358
- * The mode determines which platform styles to use.
6128
+ * The mode determines the platform behaviors of the component.
5359
6129
  */
5360
6130
  "mode"?: "ios" | "md";
5361
6131
  /**
@@ -5371,6 +6141,14 @@ declare namespace LocalJSX {
5371
6141
  * @default false
5372
6142
  */
5373
6143
  "readonly"?: boolean;
6144
+ /**
6145
+ * 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"`.
6146
+ */
6147
+ "shape"?: 'soft' | 'round' | 'rectangular';
6148
+ /**
6149
+ * The theme determines the visual appearance of the component.
6150
+ */
6151
+ "theme"?: "ios" | "md" | "ionic";
5374
6152
  /**
5375
6153
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
5376
6154
  */
@@ -5423,7 +6201,7 @@ declare namespace LocalJSX {
5423
6201
  */
5424
6202
  "leaveAnimation"?: AnimationBuilder;
5425
6203
  /**
5426
- * The mode determines which platform styles to use.
6204
+ * The mode determines the platform behaviors of the component.
5427
6205
  */
5428
6206
  "mode"?: "ios" | "md";
5429
6207
  /**
@@ -5463,7 +6241,11 @@ declare namespace LocalJSX {
5463
6241
  */
5464
6242
  "subHeader"?: string;
5465
6243
  /**
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).
6244
+ * The theme determines the visual appearance of the component.
6245
+ */
6246
+ "theme"?: "ios" | "md" | "ionic";
6247
+ /**
6248
+ * 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
6249
  * @default false
5468
6250
  */
5469
6251
  "translucent"?: boolean;
@@ -5528,7 +6310,7 @@ declare namespace LocalJSX {
5528
6310
  */
5529
6311
  "message"?: string | IonicSafeString;
5530
6312
  /**
5531
- * The mode determines which platform styles to use.
6313
+ * The mode determines the platform behaviors of the component.
5532
6314
  */
5533
6315
  "mode"?: "ios" | "md";
5534
6316
  /**
@@ -5568,7 +6350,11 @@ declare namespace LocalJSX {
5568
6350
  */
5569
6351
  "subHeader"?: string;
5570
6352
  /**
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).
6353
+ * The theme determines the visual appearance of the component.
6354
+ */
6355
+ "theme"?: "ios" | "md" | "ionic";
6356
+ /**
6357
+ * 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
6358
  * @default false
5573
6359
  */
5574
6360
  "translucent"?: boolean;
@@ -5578,8 +6364,37 @@ declare namespace LocalJSX {
5578
6364
  "trigger"?: string | undefined;
5579
6365
  }
5580
6366
  interface IonApp {
6367
+ /**
6368
+ * The mode determines the platform behaviors of the component.
6369
+ */
6370
+ "mode"?: "ios" | "md";
6371
+ /**
6372
+ * The theme determines the visual appearance of the component.
6373
+ */
6374
+ "theme"?: "ios" | "md" | "ionic";
5581
6375
  }
5582
6376
  interface IonAvatar {
6377
+ /**
6378
+ * If `true`, the user cannot interact with the avatar.
6379
+ * @default false
6380
+ */
6381
+ "disabled"?: boolean;
6382
+ /**
6383
+ * The mode determines the platform behaviors of the component.
6384
+ */
6385
+ "mode"?: "ios" | "md";
6386
+ /**
6387
+ * 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.
6388
+ */
6389
+ "shape"?: 'soft' | 'round' | 'rectangular';
6390
+ /**
6391
+ * 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.
6392
+ */
6393
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
6394
+ /**
6395
+ * The theme determines the visual appearance of the component.
6396
+ */
6397
+ "theme"?: "ios" | "md" | "ionic";
5583
6398
  }
5584
6399
  interface IonBackButton {
5585
6400
  /**
@@ -5600,7 +6415,7 @@ declare namespace LocalJSX {
5600
6415
  */
5601
6416
  "icon"?: string | null;
5602
6417
  /**
5603
- * The mode determines which platform styles to use.
6418
+ * The mode determines the platform behaviors of the component.
5604
6419
  */
5605
6420
  "mode"?: "ios" | "md";
5606
6421
  /**
@@ -5611,6 +6426,10 @@ declare namespace LocalJSX {
5611
6426
  * The text to display in the back button.
5612
6427
  */
5613
6428
  "text"?: string | null;
6429
+ /**
6430
+ * The theme determines the visual appearance of the component.
6431
+ */
6432
+ "theme"?: "ios" | "md" | "ionic";
5614
6433
  /**
5615
6434
  * The type of the button.
5616
6435
  * @default 'button'
@@ -5618,6 +6437,10 @@ declare namespace LocalJSX {
5618
6437
  "type"?: 'submit' | 'reset' | 'button';
5619
6438
  }
5620
6439
  interface IonBackdrop {
6440
+ /**
6441
+ * The mode determines the platform behaviors of the component.
6442
+ */
6443
+ "mode"?: "ios" | "md";
5621
6444
  /**
5622
6445
  * Emitted when the backdrop is tapped.
5623
6446
  */
@@ -5632,6 +6455,10 @@ declare namespace LocalJSX {
5632
6455
  * @default true
5633
6456
  */
5634
6457
  "tappable"?: boolean;
6458
+ /**
6459
+ * The theme determines the visual appearance of the component.
6460
+ */
6461
+ "theme"?: "ios" | "md" | "ionic";
5635
6462
  /**
5636
6463
  * If `true`, the backdrop will be visible.
5637
6464
  * @default true
@@ -5644,9 +6471,29 @@ declare namespace LocalJSX {
5644
6471
  */
5645
6472
  "color"?: Color;
5646
6473
  /**
5647
- * The mode determines which platform styles to use.
6474
+ * 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.
6475
+ */
6476
+ "hue"?: 'bold' | 'subtle';
6477
+ /**
6478
+ * The mode determines the platform behaviors of the component.
5648
6479
  */
5649
6480
  "mode"?: "ios" | "md";
6481
+ /**
6482
+ * 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.
6483
+ */
6484
+ "shape"?: 'soft' | 'round | rectangular';
6485
+ /**
6486
+ * 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.
6487
+ */
6488
+ "size"?: 'small' | 'medium' | 'large';
6489
+ /**
6490
+ * The theme determines the visual appearance of the component.
6491
+ */
6492
+ "theme"?: "ios" | "md" | "ionic";
6493
+ /**
6494
+ * 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.
6495
+ */
6496
+ "vertical"?: 'top' | 'bottom';
5650
6497
  }
5651
6498
  interface IonBreadcrumb {
5652
6499
  /**
@@ -5672,7 +6519,7 @@ declare namespace LocalJSX {
5672
6519
  */
5673
6520
  "href"?: string | undefined;
5674
6521
  /**
5675
- * The mode determines which platform styles to use.
6522
+ * The mode determines the platform behaviors of the component.
5676
6523
  */
5677
6524
  "mode"?: "ios" | "md";
5678
6525
  /**
@@ -5704,6 +6551,10 @@ declare namespace LocalJSX {
5704
6551
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5705
6552
  */
5706
6553
  "target"?: string | undefined;
6554
+ /**
6555
+ * The theme determines the visual appearance of the component.
6556
+ */
6557
+ "theme"?: "ios" | "md" | "ionic";
5707
6558
  }
5708
6559
  interface IonBreadcrumbs {
5709
6560
  /**
@@ -5725,13 +6576,17 @@ declare namespace LocalJSX {
5725
6576
  */
5726
6577
  "maxItems"?: number;
5727
6578
  /**
5728
- * The mode determines which platform styles to use.
6579
+ * The mode determines the platform behaviors of the component.
5729
6580
  */
5730
6581
  "mode"?: "ios" | "md";
5731
6582
  /**
5732
6583
  * Emitted when the collapsed indicator is clicked on.
5733
6584
  */
5734
6585
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
6586
+ /**
6587
+ * The theme determines the visual appearance of the component.
6588
+ */
6589
+ "theme"?: "ios" | "md" | "ionic";
5735
6590
  }
5736
6591
  interface IonButton {
5737
6592
  /**
@@ -5757,7 +6612,7 @@ declare namespace LocalJSX {
5757
6612
  */
5758
6613
  "expand"?: 'full' | 'block';
5759
6614
  /**
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"`.
6615
+ * 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
6616
  */
5762
6617
  "fill"?: 'clear' | 'outline' | 'solid' | 'default';
5763
6618
  /**
@@ -5769,7 +6624,7 @@ declare namespace LocalJSX {
5769
6624
  */
5770
6625
  "href"?: string | undefined;
5771
6626
  /**
5772
- * The mode determines which platform styles to use.
6627
+ * The mode determines the platform behaviors of the component.
5773
6628
  */
5774
6629
  "mode"?: "ios" | "md";
5775
6630
  /**
@@ -5794,13 +6649,13 @@ declare namespace LocalJSX {
5794
6649
  */
5795
6650
  "routerDirection"?: RouterDirection;
5796
6651
  /**
5797
- * Set to `"round"` for a button with more rounded corners.
6652
+ * 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
6653
  */
5799
- "shape"?: 'round';
6654
+ "shape"?: 'soft' | 'round' | 'rectangular';
5800
6655
  /**
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.
6656
+ * 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
6657
  */
5803
- "size"?: 'small' | 'default' | 'large';
6658
+ "size"?: 'small' | 'default' | 'medium' | 'large';
5804
6659
  /**
5805
6660
  * If `true`, activates a button with a heavier font weight.
5806
6661
  * @default false
@@ -5810,6 +6665,10 @@ declare namespace LocalJSX {
5810
6665
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5811
6666
  */
5812
6667
  "target"?: string | undefined;
6668
+ /**
6669
+ * The theme determines the visual appearance of the component.
6670
+ */
6671
+ "theme"?: "ios" | "md" | "ionic";
5813
6672
  /**
5814
6673
  * The type of the button.
5815
6674
  * @default 'button'
@@ -5818,10 +6677,18 @@ declare namespace LocalJSX {
5818
6677
  }
5819
6678
  interface IonButtons {
5820
6679
  /**
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)
6680
+ * 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
6681
  * @default false
5823
6682
  */
5824
6683
  "collapse"?: boolean;
6684
+ /**
6685
+ * The mode determines the platform behaviors of the component.
6686
+ */
6687
+ "mode"?: "ios" | "md";
6688
+ /**
6689
+ * The theme determines the visual appearance of the component.
6690
+ */
6691
+ "theme"?: "ios" | "md" | "ionic";
5825
6692
  }
5826
6693
  interface IonCard {
5827
6694
  /**
@@ -5847,7 +6714,7 @@ declare namespace LocalJSX {
5847
6714
  */
5848
6715
  "href"?: string | undefined;
5849
6716
  /**
5850
- * The mode determines which platform styles to use.
6717
+ * The mode determines the platform behaviors of the component.
5851
6718
  */
5852
6719
  "mode"?: "ios" | "md";
5853
6720
  /**
@@ -5863,10 +6730,19 @@ declare namespace LocalJSX {
5863
6730
  * @default 'forward'
5864
6731
  */
5865
6732
  "routerDirection"?: RouterDirection;
6733
+ /**
6734
+ * 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"`.
6735
+ * @default 'round'
6736
+ */
6737
+ "shape"?: 'soft' | 'round' | 'rectangular';
5866
6738
  /**
5867
6739
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5868
6740
  */
5869
6741
  "target"?: string | undefined;
6742
+ /**
6743
+ * The theme determines the visual appearance of the component.
6744
+ */
6745
+ "theme"?: "ios" | "md" | "ionic";
5870
6746
  /**
5871
6747
  * The type of the button. Only used when an `onclick` or `button` property is present.
5872
6748
  * @default 'button'
@@ -5875,9 +6751,13 @@ declare namespace LocalJSX {
5875
6751
  }
5876
6752
  interface IonCardContent {
5877
6753
  /**
5878
- * The mode determines which platform styles to use.
6754
+ * The mode determines the platform behaviors of the component.
5879
6755
  */
5880
6756
  "mode"?: "ios" | "md";
6757
+ /**
6758
+ * The theme determines the visual appearance of the component.
6759
+ */
6760
+ "theme"?: "ios" | "md" | "ionic";
5881
6761
  }
5882
6762
  interface IonCardHeader {
5883
6763
  /**
@@ -5885,11 +6765,15 @@ declare namespace LocalJSX {
5885
6765
  */
5886
6766
  "color"?: Color;
5887
6767
  /**
5888
- * The mode determines which platform styles to use.
6768
+ * The mode determines the platform behaviors of the component.
5889
6769
  */
5890
6770
  "mode"?: "ios" | "md";
5891
6771
  /**
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).
6772
+ * The theme determines the visual appearance of the component.
6773
+ */
6774
+ "theme"?: "ios" | "md" | "ionic";
6775
+ /**
6776
+ * 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
6777
  * @default false
5894
6778
  */
5895
6779
  "translucent"?: boolean;
@@ -5900,9 +6784,13 @@ declare namespace LocalJSX {
5900
6784
  */
5901
6785
  "color"?: Color;
5902
6786
  /**
5903
- * The mode determines which platform styles to use.
6787
+ * The mode determines the platform behaviors of the component.
5904
6788
  */
5905
6789
  "mode"?: "ios" | "md";
6790
+ /**
6791
+ * The theme determines the visual appearance of the component.
6792
+ */
6793
+ "theme"?: "ios" | "md" | "ionic";
5906
6794
  }
5907
6795
  interface IonCardTitle {
5908
6796
  /**
@@ -5910,9 +6798,13 @@ declare namespace LocalJSX {
5910
6798
  */
5911
6799
  "color"?: Color;
5912
6800
  /**
5913
- * The mode determines which platform styles to use.
6801
+ * The mode determines the platform behaviors of the component.
5914
6802
  */
5915
6803
  "mode"?: "ios" | "md";
6804
+ /**
6805
+ * The theme determines the visual appearance of the component.
6806
+ */
6807
+ "theme"?: "ios" | "md" | "ionic";
5916
6808
  }
5917
6809
  interface IonCheckbox {
5918
6810
  /**
@@ -5956,7 +6848,7 @@ declare namespace LocalJSX {
5956
6848
  */
5957
6849
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5958
6850
  /**
5959
- * The mode determines which platform styles to use.
6851
+ * The mode determines the platform behaviors of the component.
5960
6852
  */
5961
6853
  "mode"?: "ios" | "md";
5962
6854
  /**
@@ -5969,7 +6861,7 @@ declare namespace LocalJSX {
5969
6861
  */
5970
6862
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5971
6863
  /**
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.
6864
+ * 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
6865
  */
5974
6866
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5975
6867
  /**
@@ -5981,6 +6873,19 @@ declare namespace LocalJSX {
5981
6873
  * @default false
5982
6874
  */
5983
6875
  "required"?: boolean;
6876
+ /**
6877
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6878
+ * @default 'soft'
6879
+ */
6880
+ "shape"?: 'soft' | 'rectangular';
6881
+ /**
6882
+ * Set to `"small"` for a checkbox with less height and padding.
6883
+ */
6884
+ "size"?: 'small';
6885
+ /**
6886
+ * The theme determines the visual appearance of the component.
6887
+ */
6888
+ "theme"?: "ios" | "md" | "ionic";
5984
6889
  /**
5985
6890
  * 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
6891
  * @default 'on'
@@ -5998,7 +6903,12 @@ declare namespace LocalJSX {
5998
6903
  */
5999
6904
  "disabled"?: boolean;
6000
6905
  /**
6001
- * The mode determines which platform styles to use.
6906
+ * 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.
6907
+ * @default 'subtle'
6908
+ */
6909
+ "hue"?: 'bold' | 'subtle';
6910
+ /**
6911
+ * The mode determines the platform behaviors of the component.
6002
6912
  */
6003
6913
  "mode"?: "ios" | "md";
6004
6914
  /**
@@ -6006,8 +6916,24 @@ declare namespace LocalJSX {
6006
6916
  * @default false
6007
6917
  */
6008
6918
  "outline"?: boolean;
6919
+ /**
6920
+ * 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.
6921
+ */
6922
+ "shape"?: 'soft' | 'round' | 'rectangular';
6923
+ /**
6924
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6925
+ */
6926
+ "size"?: 'small' | 'large';
6927
+ /**
6928
+ * The theme determines the visual appearance of the component.
6929
+ */
6930
+ "theme"?: "ios" | "md" | "ionic";
6009
6931
  }
6010
6932
  interface IonCol {
6933
+ /**
6934
+ * The mode determines the platform behaviors of the component.
6935
+ */
6936
+ "mode"?: "ios" | "md";
6011
6937
  /**
6012
6938
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
6013
6939
  */
@@ -6032,52 +6958,88 @@ declare namespace LocalJSX {
6032
6958
  * 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
6959
  */
6034
6960
  "offsetXs"?: string;
6961
+ /**
6962
+ * 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.
6963
+ */
6964
+ "order"?: string;
6965
+ /**
6966
+ * 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.
6967
+ */
6968
+ "orderLg"?: string;
6969
+ /**
6970
+ * 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.
6971
+ */
6972
+ "orderMd"?: string;
6973
+ /**
6974
+ * 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.
6975
+ */
6976
+ "orderSm"?: string;
6977
+ /**
6978
+ * 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.
6979
+ */
6980
+ "orderXl"?: string;
6981
+ /**
6982
+ * 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.
6983
+ */
6984
+ "orderXs"?: string;
6035
6985
  /**
6036
6986
  * The amount to pull the column, in terms of how many columns it should shift to the start of the total available.
6987
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6037
6988
  */
6038
6989
  "pull"?: string;
6039
6990
  /**
6040
6991
  * 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.
6992
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6041
6993
  */
6042
6994
  "pullLg"?: string;
6043
6995
  /**
6044
6996
  * 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.
6997
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6045
6998
  */
6046
6999
  "pullMd"?: string;
6047
7000
  /**
6048
7001
  * 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.
7002
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6049
7003
  */
6050
7004
  "pullSm"?: string;
6051
7005
  /**
6052
7006
  * 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.
7007
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6053
7008
  */
6054
7009
  "pullXl"?: string;
6055
7010
  /**
6056
7011
  * 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.
7012
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6057
7013
  */
6058
7014
  "pullXs"?: string;
6059
7015
  /**
6060
7016
  * The amount to push the column, in terms of how many columns it should shift to the end of the total available.
7017
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6061
7018
  */
6062
7019
  "push"?: string;
6063
7020
  /**
6064
7021
  * 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.
7022
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6065
7023
  */
6066
7024
  "pushLg"?: string;
6067
7025
  /**
6068
7026
  * 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.
7027
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6069
7028
  */
6070
7029
  "pushMd"?: string;
6071
7030
  /**
6072
7031
  * 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.
7032
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6073
7033
  */
6074
7034
  "pushSm"?: string;
6075
7035
  /**
6076
7036
  * 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.
7037
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6077
7038
  */
6078
7039
  "pushXl"?: string;
6079
7040
  /**
6080
7041
  * 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.
7042
+ * @deprecated Use the combination of `size` and `order` properties to achieve the same effect.
6081
7043
  */
6082
7044
  "pushXs"?: string;
6083
7045
  /**
@@ -6104,6 +7066,10 @@ declare namespace LocalJSX {
6104
7066
  * 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
7067
  */
6106
7068
  "sizeXs"?: string;
7069
+ /**
7070
+ * The theme determines the visual appearance of the component.
7071
+ */
7072
+ "theme"?: "ios" | "md" | "ionic";
6107
7073
  }
6108
7074
  interface IonContent {
6109
7075
  /**
@@ -6124,6 +7090,10 @@ declare namespace LocalJSX {
6124
7090
  * @default false
6125
7091
  */
6126
7092
  "fullscreen"?: boolean;
7093
+ /**
7094
+ * The mode determines the platform behaviors of the component.
7095
+ */
7096
+ "mode"?: "ios" | "md";
6127
7097
  /**
6128
7098
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
6129
7099
  */
@@ -6151,6 +7121,10 @@ declare namespace LocalJSX {
6151
7121
  * @default true
6152
7122
  */
6153
7123
  "scrollY"?: boolean;
7124
+ /**
7125
+ * The theme determines the visual appearance of the component.
7126
+ */
7127
+ "theme"?: "ios" | "md" | "ionic";
6154
7128
  }
6155
7129
  interface IonDatetime {
6156
7130
  /**
@@ -6225,7 +7199,7 @@ declare namespace LocalJSX {
6225
7199
  */
6226
7200
  "minuteValues"?: number[] | number | string;
6227
7201
  /**
6228
- * The mode determines which platform styles to use.
7202
+ * The mode determines the platform behaviors of the component.
6229
7203
  */
6230
7204
  "mode"?: "ios" | "md";
6231
7205
  /**
@@ -6303,6 +7277,10 @@ declare namespace LocalJSX {
6303
7277
  * @default 'fixed'
6304
7278
  */
6305
7279
  "size"?: 'cover' | 'fixed';
7280
+ /**
7281
+ * The theme determines the visual appearance of the component.
7282
+ */
7283
+ "theme"?: "ios" | "md" | "ionic";
6306
7284
  /**
6307
7285
  * 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
7286
  */
@@ -6332,9 +7310,25 @@ declare namespace LocalJSX {
6332
7310
  */
6333
7311
  "disabled"?: boolean;
6334
7312
  /**
6335
- * The mode determines which platform styles to use.
7313
+ * The mode determines the platform behaviors of the component.
6336
7314
  */
6337
7315
  "mode"?: "ios" | "md";
7316
+ /**
7317
+ * The theme determines the visual appearance of the component.
7318
+ */
7319
+ "theme"?: "ios" | "md" | "ionic";
7320
+ }
7321
+ interface IonDivider {
7322
+ /**
7323
+ * If `true`, the divider will have horizontal margins By default, it's `false`
7324
+ * @default false
7325
+ */
7326
+ "inset"?: boolean;
7327
+ /**
7328
+ * 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"`.
7329
+ * @default 'medium'
7330
+ */
7331
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
6338
7332
  }
6339
7333
  interface IonFab {
6340
7334
  /**
@@ -6351,6 +7345,14 @@ declare namespace LocalJSX {
6351
7345
  * Where to align the fab horizontally in the viewport.
6352
7346
  */
6353
7347
  "horizontal"?: 'start' | 'end' | 'center';
7348
+ /**
7349
+ * The mode determines the platform behaviors of the component.
7350
+ */
7351
+ "mode"?: "ios" | "md";
7352
+ /**
7353
+ * The theme determines the visual appearance of the component.
7354
+ */
7355
+ "theme"?: "ios" | "md" | "ionic";
6354
7356
  /**
6355
7357
  * Where to align the fab vertically in the viewport.
6356
7358
  */
@@ -6364,7 +7366,6 @@ declare namespace LocalJSX {
6364
7366
  "activated"?: boolean;
6365
7367
  /**
6366
7368
  * 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
7369
  */
6369
7370
  "closeIcon"?: string;
6370
7371
  /**
@@ -6385,7 +7386,7 @@ declare namespace LocalJSX {
6385
7386
  */
6386
7387
  "href"?: string | undefined;
6387
7388
  /**
6388
- * The mode determines which platform styles to use.
7389
+ * The mode determines the platform behaviors of the component.
6389
7390
  */
6390
7391
  "mode"?: "ios" | "md";
6391
7392
  /**
@@ -6423,7 +7424,11 @@ declare namespace LocalJSX {
6423
7424
  */
6424
7425
  "target"?: string | undefined;
6425
7426
  /**
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).
7427
+ * The theme determines the visual appearance of the component.
7428
+ */
7429
+ "theme"?: "ios" | "md" | "ionic";
7430
+ /**
7431
+ * 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
7432
  * @default false
6428
7433
  */
6429
7434
  "translucent"?: boolean;
@@ -6439,45 +7444,99 @@ declare namespace LocalJSX {
6439
7444
  * @default false
6440
7445
  */
6441
7446
  "activated"?: boolean;
7447
+ /**
7448
+ * The mode determines the platform behaviors of the component.
7449
+ */
7450
+ "mode"?: "ios" | "md";
6442
7451
  /**
6443
7452
  * The side the fab list will show on relative to the main fab button.
6444
7453
  * @default 'bottom'
6445
7454
  */
6446
7455
  "side"?: 'start' | 'end' | 'top' | 'bottom';
7456
+ /**
7457
+ * The theme determines the visual appearance of the component.
7458
+ */
7459
+ "theme"?: "ios" | "md" | "ionic";
6447
7460
  }
6448
7461
  interface IonFooter {
6449
7462
  /**
6450
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
7463
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
6451
7464
  */
6452
7465
  "collapse"?: 'fade';
6453
7466
  /**
6454
- * The mode determines which platform styles to use.
7467
+ * The mode determines the platform behaviors of the component.
6455
7468
  */
6456
7469
  "mode"?: "ios" | "md";
6457
7470
  /**
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.
7471
+ * The theme determines the visual appearance of the component.
7472
+ */
7473
+ "theme"?: "ios" | "md" | "ionic";
7474
+ /**
7475
+ * 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
7476
  * @default false
6460
7477
  */
6461
7478
  "translucent"?: boolean;
6462
7479
  }
7480
+ interface IonGallery {
7481
+ /**
7482
+ * The number of columns to display. Can be set as a number or an object of breakpoint values (e.g. `{ xs: 2, sm: 3, md: 4 }`).
7483
+ * @default DEFAULT_COLUMNS
7484
+ */
7485
+ "columns"?: GalleryColumns;
7486
+ /**
7487
+ * The visual layout of the gallery. When `uniform`, rows take up the height of the tallest item and are spaced evenly across the gallery. Additionally, items will have an aspect ratio of 1/1, forcing them to be square unless a height is explicitly set. When `masonry`, items will be positioned under each other with only the specified gap between them.
7488
+ * @default 'uniform'
7489
+ */
7490
+ "layout"?: 'uniform' | 'masonry';
7491
+ /**
7492
+ * The mode determines the platform behaviors of the component.
7493
+ */
7494
+ "mode"?: "ios" | "md";
7495
+ /**
7496
+ * The order in which items are positioned. Only applies when layout is `masonry`. When `sequential`, items are positioned in the order they are placed in the DOM. When `best-fit`, items are positioned under the column with the most available space.
7497
+ * @default 'sequential'
7498
+ */
7499
+ "order"?: 'sequential' | 'best-fit';
7500
+ /**
7501
+ * The theme determines the visual appearance of the component.
7502
+ */
7503
+ "theme"?: "ios" | "md" | "ionic";
7504
+ }
6463
7505
  interface IonGrid {
6464
7506
  /**
6465
7507
  * If `true`, the grid will have a fixed width based on the screen size.
6466
7508
  * @default false
6467
7509
  */
6468
7510
  "fixed"?: boolean;
7511
+ /**
7512
+ * The mode determines the platform behaviors of the component.
7513
+ */
7514
+ "mode"?: "ios" | "md";
7515
+ /**
7516
+ * The theme determines the visual appearance of the component.
7517
+ */
7518
+ "theme"?: "ios" | "md" | "ionic";
6469
7519
  }
6470
7520
  interface IonHeader {
6471
7521
  /**
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)
7522
+ * 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
7523
  */
6474
7524
  "collapse"?: 'condense' | 'fade';
6475
7525
  /**
6476
- * The mode determines which platform styles to use.
7526
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
7527
+ * @default false
7528
+ */
7529
+ "divider"?: boolean;
7530
+ /**
7531
+ * The mode determines the platform behaviors of the component.
6477
7532
  */
6478
7533
  "mode"?: "ios" | "md";
6479
7534
  /**
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.
7535
+ * The theme determines the visual appearance of the component.
7536
+ */
7537
+ "theme"?: "ios" | "md" | "ionic";
7538
+ /**
7539
+ * 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
7540
  * @default false
6482
7541
  */
6483
7542
  "translucent"?: boolean;
@@ -6487,6 +7546,10 @@ declare namespace LocalJSX {
6487
7546
  * 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
7547
  */
6489
7548
  "alt"?: string;
7549
+ /**
7550
+ * The mode determines the platform behaviors of the component.
7551
+ */
7552
+ "mode"?: "ios" | "md";
6490
7553
  /**
6491
7554
  * Emitted when the img fails to load
6492
7555
  */
@@ -6503,6 +7566,10 @@ declare namespace LocalJSX {
6503
7566
  * The image URL. This attribute is mandatory for the `<img>` element.
6504
7567
  */
6505
7568
  "src"?: string;
7569
+ /**
7570
+ * The theme determines the visual appearance of the component.
7571
+ */
7572
+ "theme"?: "ios" | "md" | "ionic";
6506
7573
  }
6507
7574
  interface IonInfiniteScroll {
6508
7575
  /**
@@ -6510,6 +7577,10 @@ declare namespace LocalJSX {
6510
7577
  * @default false
6511
7578
  */
6512
7579
  "disabled"?: boolean;
7580
+ /**
7581
+ * The mode determines the platform behaviors of the component.
7582
+ */
7583
+ "mode"?: "ios" | "md";
6513
7584
  /**
6514
7585
  * 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
7586
  */
@@ -6519,6 +7590,15 @@ declare namespace LocalJSX {
6519
7590
  * @default 'bottom'
6520
7591
  */
6521
7592
  "position"?: 'top' | 'bottom';
7593
+ /**
7594
+ * 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.
7595
+ * @default false
7596
+ */
7597
+ "preserveRerenderScrollPosition"?: boolean;
7598
+ /**
7599
+ * The theme determines the visual appearance of the component.
7600
+ */
7601
+ "theme"?: "ios" | "md" | "ionic";
6522
7602
  /**
6523
7603
  * 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
7604
  * @default '15%'
@@ -6534,6 +7614,14 @@ declare namespace LocalJSX {
6534
7614
  * 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
7615
  */
6536
7616
  "loadingText"?: string | IonicSafeString;
7617
+ /**
7618
+ * The mode determines the platform behaviors of the component.
7619
+ */
7620
+ "mode"?: "ios" | "md";
7621
+ /**
7622
+ * The theme determines the visual appearance of the component.
7623
+ */
7624
+ "theme"?: "ios" | "md" | "ionic";
6537
7625
  }
6538
7626
  interface IonInput {
6539
7627
  /**
@@ -6600,7 +7688,7 @@ declare namespace LocalJSX {
6600
7688
  */
6601
7689
  "errorText"?: string;
6602
7690
  /**
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.
7691
+ * 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
7692
  */
6605
7693
  "fill"?: 'outline' | 'solid';
6606
7694
  /**
@@ -6616,8 +7704,7 @@ declare namespace LocalJSX {
6616
7704
  */
6617
7705
  "label"?: string;
6618
7706
  /**
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'
7707
+ * 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
7708
  */
6622
7709
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6623
7710
  /**
@@ -6637,7 +7724,7 @@ declare namespace LocalJSX {
6637
7724
  */
6638
7725
  "minlength"?: number;
6639
7726
  /**
6640
- * The mode determines which platform styles to use.
7727
+ * The mode determines the platform behaviors of the component.
6641
7728
  */
6642
7729
  "mode"?: "ios" | "md";
6643
7730
  /**
@@ -6684,9 +7771,14 @@ declare namespace LocalJSX {
6684
7771
  */
6685
7772
  "required"?: boolean;
6686
7773
  /**
6687
- * The shape of the input. If "round" it will have an increased border radius.
7774
+ * 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"`.
6688
7775
  */
6689
- "shape"?: 'round';
7776
+ "shape"?: 'soft' | 'round' | 'rectangular';
7777
+ /**
7778
+ * 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.
7779
+ * @default 'medium'
7780
+ */
7781
+ "size"?: 'medium' | 'large' | 'xlarge';
6690
7782
  /**
6691
7783
  * If `true`, the element will have its spelling and grammar checked.
6692
7784
  * @default false
@@ -6696,6 +7788,10 @@ declare namespace LocalJSX {
6696
7788
  * 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
7789
  */
6698
7790
  "step"?: string;
7791
+ /**
7792
+ * The theme determines the visual appearance of the component.
7793
+ */
7794
+ "theme"?: "ios" | "md" | "ionic";
6699
7795
  /**
6700
7796
  * The type of control to display. The default type is text.
6701
7797
  * @default 'text'
@@ -6727,6 +7823,10 @@ declare namespace LocalJSX {
6727
7823
  * @default 'outline'
6728
7824
  */
6729
7825
  "fill"?: 'outline' | 'solid';
7826
+ /**
7827
+ * The `id` of a `<form>` element to associate this element with.
7828
+ */
7829
+ "form"?: string;
6730
7830
  /**
6731
7831
  * 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
7832
  */
@@ -6736,6 +7836,14 @@ declare namespace LocalJSX {
6736
7836
  * @default 4
6737
7837
  */
6738
7838
  "length"?: number;
7839
+ /**
7840
+ * The mode determines the platform behaviors of the component.
7841
+ */
7842
+ "mode"?: "ios" | "md";
7843
+ /**
7844
+ * The name of the element, used when submitting an HTML form.
7845
+ */
7846
+ "name"?: string;
6739
7847
  /**
6740
7848
  * Emitted when the input group loses focus.
6741
7849
  */
@@ -6779,6 +7887,10 @@ declare namespace LocalJSX {
6779
7887
  * @default 'medium'
6780
7888
  */
6781
7889
  "size"?: 'small' | 'medium' | 'large';
7890
+ /**
7891
+ * The theme determines the visual appearance of the component.
7892
+ */
7893
+ "theme"?: "ios" | "md" | "ionic";
6782
7894
  /**
6783
7895
  * The type of input allowed in the input boxes.
6784
7896
  * @default 'number'
@@ -6819,12 +7931,11 @@ declare namespace LocalJSX {
6819
7931
  */
6820
7932
  "color"?: Color;
6821
7933
  /**
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.
7934
+ * 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
7935
  */
6824
7936
  "detail"?: boolean;
6825
7937
  /**
6826
7938
  * The icon to use when `detail` is set to `true`.
6827
- * @default chevronForward
6828
7939
  */
6829
7940
  "detailIcon"?: string;
6830
7941
  /**
@@ -6845,7 +7956,7 @@ declare namespace LocalJSX {
6845
7956
  */
6846
7957
  "lines"?: 'full' | 'inset' | 'none';
6847
7958
  /**
6848
- * The mode determines which platform styles to use.
7959
+ * The mode determines the platform behaviors of the component.
6849
7960
  */
6850
7961
  "mode"?: "ios" | "md";
6851
7962
  /**
@@ -6865,6 +7976,10 @@ declare namespace LocalJSX {
6865
7976
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6866
7977
  */
6867
7978
  "target"?: string | undefined;
7979
+ /**
7980
+ * The theme determines the visual appearance of the component.
7981
+ */
7982
+ "theme"?: "ios" | "md" | "ionic";
6868
7983
  /**
6869
7984
  * The type of the button. Only used when an `onclick` or `button` property is present.
6870
7985
  * @default 'button'
@@ -6877,7 +7992,7 @@ declare namespace LocalJSX {
6877
7992
  */
6878
7993
  "color"?: Color;
6879
7994
  /**
6880
- * The mode determines which platform styles to use.
7995
+ * The mode determines the platform behaviors of the component.
6881
7996
  */
6882
7997
  "mode"?: "ios" | "md";
6883
7998
  /**
@@ -6885,8 +8000,20 @@ declare namespace LocalJSX {
6885
8000
  * @default false
6886
8001
  */
6887
8002
  "sticky"?: boolean;
8003
+ /**
8004
+ * The theme determines the visual appearance of the component.
8005
+ */
8006
+ "theme"?: "ios" | "md" | "ionic";
6888
8007
  }
6889
8008
  interface IonItemGroup {
8009
+ /**
8010
+ * The mode determines the platform behaviors of the component.
8011
+ */
8012
+ "mode"?: "ios" | "md";
8013
+ /**
8014
+ * The theme determines the visual appearance of the component.
8015
+ */
8016
+ "theme"?: "ios" | "md" | "ionic";
6890
8017
  }
6891
8018
  interface IonItemOption {
6892
8019
  /**
@@ -6912,17 +8039,30 @@ declare namespace LocalJSX {
6912
8039
  */
6913
8040
  "href"?: string | undefined;
6914
8041
  /**
6915
- * The mode determines which platform styles to use.
8042
+ * 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.
8043
+ * @default 'subtle'
8044
+ */
8045
+ "hue"?: 'bold' | 'subtle';
8046
+ /**
8047
+ * The mode determines the platform behaviors of the component.
6916
8048
  */
6917
8049
  "mode"?: "ios" | "md";
6918
8050
  /**
6919
8051
  * 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
8052
  */
6921
8053
  "rel"?: string | undefined;
8054
+ /**
8055
+ * 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.
8056
+ */
8057
+ "shape"?: 'soft' | 'round' | 'rectangular';
6922
8058
  /**
6923
8059
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6924
8060
  */
6925
8061
  "target"?: string | undefined;
8062
+ /**
8063
+ * The theme determines the visual appearance of the component.
8064
+ */
8065
+ "theme"?: "ios" | "md" | "ionic";
6926
8066
  /**
6927
8067
  * The type of the button.
6928
8068
  * @default 'button'
@@ -6930,6 +8070,10 @@ declare namespace LocalJSX {
6930
8070
  "type"?: 'submit' | 'reset' | 'button';
6931
8071
  }
6932
8072
  interface IonItemOptions {
8073
+ /**
8074
+ * The mode determines the platform behaviors of the component.
8075
+ */
8076
+ "mode"?: "ios" | "md";
6933
8077
  /**
6934
8078
  * Emitted when the item has been fully swiped.
6935
8079
  */
@@ -6939,6 +8083,10 @@ declare namespace LocalJSX {
6939
8083
  * @default 'end'
6940
8084
  */
6941
8085
  "side"?: Side;
8086
+ /**
8087
+ * The theme determines the visual appearance of the component.
8088
+ */
8089
+ "theme"?: "ios" | "md" | "ionic";
6942
8090
  }
6943
8091
  interface IonItemSliding {
6944
8092
  /**
@@ -6946,10 +8094,18 @@ declare namespace LocalJSX {
6946
8094
  * @default false
6947
8095
  */
6948
8096
  "disabled"?: boolean;
8097
+ /**
8098
+ * The mode determines the platform behaviors of the component.
8099
+ */
8100
+ "mode"?: "ios" | "md";
6949
8101
  /**
6950
8102
  * Emitted when the sliding position changes.
6951
8103
  */
6952
8104
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
8105
+ /**
8106
+ * The theme determines the visual appearance of the component.
8107
+ */
8108
+ "theme"?: "ios" | "md" | "ionic";
6953
8109
  }
6954
8110
  interface IonLabel {
6955
8111
  /**
@@ -6957,13 +8113,17 @@ declare namespace LocalJSX {
6957
8113
  */
6958
8114
  "color"?: Color;
6959
8115
  /**
6960
- * The mode determines which platform styles to use.
8116
+ * The mode determines the platform behaviors of the component.
6961
8117
  */
6962
8118
  "mode"?: "ios" | "md";
6963
8119
  /**
6964
8120
  * The position determines where and how the label behaves inside an item.
6965
8121
  */
6966
8122
  "position"?: 'fixed' | 'stacked' | 'floating';
8123
+ /**
8124
+ * The theme determines the visual appearance of the component.
8125
+ */
8126
+ "theme"?: "ios" | "md" | "ionic";
6967
8127
  }
6968
8128
  interface IonList {
6969
8129
  /**
@@ -6976,9 +8136,17 @@ declare namespace LocalJSX {
6976
8136
  */
6977
8137
  "lines"?: 'full' | 'inset' | 'none';
6978
8138
  /**
6979
- * The mode determines which platform styles to use.
8139
+ * The mode determines the platform behaviors of the component.
6980
8140
  */
6981
8141
  "mode"?: "ios" | "md";
8142
+ /**
8143
+ * 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.
8144
+ */
8145
+ "shape"?: 'soft' | 'round' | 'rectangular';
8146
+ /**
8147
+ * The theme determines the visual appearance of the component.
8148
+ */
8149
+ "theme"?: "ios" | "md" | "ionic";
6982
8150
  }
6983
8151
  interface IonListHeader {
6984
8152
  /**
@@ -6990,9 +8158,13 @@ declare namespace LocalJSX {
6990
8158
  */
6991
8159
  "lines"?: 'full' | 'inset' | 'none';
6992
8160
  /**
6993
- * The mode determines which platform styles to use.
8161
+ * The mode determines the platform behaviors of the component.
6994
8162
  */
6995
8163
  "mode"?: "ios" | "md";
8164
+ /**
8165
+ * The theme determines the visual appearance of the component.
8166
+ */
8167
+ "theme"?: "ios" | "md" | "ionic";
6996
8168
  }
6997
8169
  interface IonLoading {
6998
8170
  /**
@@ -7041,7 +8213,7 @@ declare namespace LocalJSX {
7041
8213
  */
7042
8214
  "message"?: string | IonicSafeString;
7043
8215
  /**
7044
- * The mode determines which platform styles to use.
8216
+ * The mode determines the platform behaviors of the component.
7045
8217
  */
7046
8218
  "mode"?: "ios" | "md";
7047
8219
  /**
@@ -7086,7 +8258,11 @@ declare namespace LocalJSX {
7086
8258
  */
7087
8259
  "spinner"?: SpinnerTypes | null;
7088
8260
  /**
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).
8261
+ * The theme determines the visual appearance of the component.
8262
+ */
8263
+ "theme"?: "ios" | "md" | "ionic";
8264
+ /**
8265
+ * 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
8266
  * @default false
7091
8267
  */
7092
8268
  "translucent"?: boolean;
@@ -7114,6 +8290,10 @@ declare namespace LocalJSX {
7114
8290
  * An id for the menu.
7115
8291
  */
7116
8292
  "menuId"?: string;
8293
+ /**
8294
+ * The mode determines the platform behaviors of the component.
8295
+ */
8296
+ "mode"?: "ios" | "md";
7117
8297
  /**
7118
8298
  * Emitted when the menu is closed.
7119
8299
  */
@@ -7140,6 +8320,10 @@ declare namespace LocalJSX {
7140
8320
  * @default true
7141
8321
  */
7142
8322
  "swipeGesture"?: boolean;
8323
+ /**
8324
+ * The theme determines the visual appearance of the component.
8325
+ */
8326
+ "theme"?: "ios" | "md" | "ionic";
7143
8327
  /**
7144
8328
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
7145
8329
  */
@@ -7165,9 +8349,13 @@ declare namespace LocalJSX {
7165
8349
  */
7166
8350
  "menu"?: string;
7167
8351
  /**
7168
- * The mode determines which platform styles to use.
8352
+ * The mode determines the platform behaviors of the component.
7169
8353
  */
7170
8354
  "mode"?: "ios" | "md";
8355
+ /**
8356
+ * The theme determines the visual appearance of the component.
8357
+ */
8358
+ "theme"?: "ios" | "md" | "ionic";
7171
8359
  /**
7172
8360
  * The type of the button.
7173
8361
  * @default 'button'
@@ -7184,6 +8372,14 @@ declare namespace LocalJSX {
7184
8372
  * 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
8373
  */
7186
8374
  "menu"?: string;
8375
+ /**
8376
+ * The mode determines the platform behaviors of the component.
8377
+ */
8378
+ "mode"?: "ios" | "md";
8379
+ /**
8380
+ * The theme determines the visual appearance of the component.
8381
+ */
8382
+ "theme"?: "ios" | "md" | "ionic";
7187
8383
  }
7188
8384
  interface IonModal {
7189
8385
  /**
@@ -7261,7 +8457,7 @@ declare namespace LocalJSX {
7261
8457
  */
7262
8458
  "leaveAnimation"?: AnimationBuilder;
7263
8459
  /**
7264
- * The mode determines which platform styles to use.
8460
+ * The mode determines the platform behaviors of the component.
7265
8461
  */
7266
8462
  "mode"?: "ios" | "md";
7267
8463
  /**
@@ -7316,11 +8512,19 @@ declare namespace LocalJSX {
7316
8512
  * 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
8513
  */
7318
8514
  "presentingElement"?: HTMLElement;
8515
+ /**
8516
+ * 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.
8517
+ */
8518
+ "shape"?: 'soft' | 'round' | 'rectangular';
7319
8519
  /**
7320
8520
  * 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
8521
  * @default true
7322
8522
  */
7323
8523
  "showBackdrop"?: boolean;
8524
+ /**
8525
+ * The theme determines the visual appearance of the component.
8526
+ */
8527
+ "theme"?: "ios" | "md" | "ionic";
7324
8528
  /**
7325
8529
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
7326
8530
  */
@@ -7333,9 +8537,13 @@ declare namespace LocalJSX {
7333
8537
  */
7334
8538
  "animated"?: boolean;
7335
8539
  /**
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.
8540
+ * 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
8541
  */
7338
8542
  "animation"?: AnimationBuilder;
8543
+ /**
8544
+ * The mode determines the platform behaviors of the component.
8545
+ */
8546
+ "mode"?: "ios" | "md";
7339
8547
  /**
7340
8548
  * Event fired when the nav has changed components
7341
8549
  */
@@ -7356,6 +8564,10 @@ declare namespace LocalJSX {
7356
8564
  * If the nav component should allow for swipe-to-go-back.
7357
8565
  */
7358
8566
  "swipeGesture"?: boolean;
8567
+ /**
8568
+ * The theme determines the visual appearance of the component.
8569
+ */
8570
+ "theme"?: "ios" | "md" | "ionic";
7359
8571
  }
7360
8572
  interface IonNavLink {
7361
8573
  /**
@@ -7366,6 +8578,10 @@ declare namespace LocalJSX {
7366
8578
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
7367
8579
  */
7368
8580
  "componentProps"?: ComponentProps;
8581
+ /**
8582
+ * The mode determines the platform behaviors of the component.
8583
+ */
8584
+ "mode"?: "ios" | "md";
7369
8585
  /**
7370
8586
  * The transition animation when navigating to another page.
7371
8587
  */
@@ -7375,6 +8591,10 @@ declare namespace LocalJSX {
7375
8591
  * @default 'forward'
7376
8592
  */
7377
8593
  "routerDirection"?: RouterDirection;
8594
+ /**
8595
+ * The theme determines the visual appearance of the component.
8596
+ */
8597
+ "theme"?: "ios" | "md" | "ionic";
7378
8598
  }
7379
8599
  interface IonNote {
7380
8600
  /**
@@ -7382,15 +8602,23 @@ declare namespace LocalJSX {
7382
8602
  */
7383
8603
  "color"?: Color;
7384
8604
  /**
7385
- * The mode determines which platform styles to use.
8605
+ * The mode determines the platform behaviors of the component.
7386
8606
  */
7387
8607
  "mode"?: "ios" | "md";
8608
+ /**
8609
+ * The theme determines the visual appearance of the component.
8610
+ */
8611
+ "theme"?: "ios" | "md" | "ionic";
7388
8612
  }
7389
8613
  interface IonPicker {
7390
8614
  /**
7391
- * The mode determines which platform styles to use.
8615
+ * The mode determines the platform behaviors of the component.
7392
8616
  */
7393
8617
  "mode"?: "ios" | "md";
8618
+ /**
8619
+ * The theme determines the visual appearance of the component.
8620
+ */
8621
+ "theme"?: "ios" | "md" | "ionic";
7394
8622
  }
7395
8623
  interface IonPickerColumn {
7396
8624
  /**
@@ -7404,13 +8632,17 @@ declare namespace LocalJSX {
7404
8632
  */
7405
8633
  "disabled"?: boolean;
7406
8634
  /**
7407
- * The mode determines which platform styles to use.
8635
+ * The mode determines the platform behaviors of the component.
7408
8636
  */
7409
8637
  "mode"?: "ios" | "md";
7410
8638
  /**
7411
8639
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7412
8640
  */
7413
8641
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
8642
+ /**
8643
+ * The theme determines the visual appearance of the component.
8644
+ */
8645
+ "theme"?: "ios" | "md" | "ionic";
7414
8646
  /**
7415
8647
  * The selected option in the picker.
7416
8648
  */
@@ -7427,6 +8659,14 @@ declare namespace LocalJSX {
7427
8659
  * @default false
7428
8660
  */
7429
8661
  "disabled"?: boolean;
8662
+ /**
8663
+ * The mode determines the platform behaviors of the component.
8664
+ */
8665
+ "mode"?: "ios" | "md";
8666
+ /**
8667
+ * The theme determines the visual appearance of the component.
8668
+ */
8669
+ "theme"?: "ios" | "md" | "ionic";
7430
8670
  /**
7431
8671
  * The text value of the option.
7432
8672
  */
@@ -7485,7 +8725,7 @@ declare namespace LocalJSX {
7485
8725
  */
7486
8726
  "leaveAnimation"?: AnimationBuilder;
7487
8727
  /**
7488
- * The mode determines which platform styles to use.
8728
+ * The mode determines the platform behaviors of the component.
7489
8729
  */
7490
8730
  "mode"?: "ios" | "md";
7491
8731
  /**
@@ -7525,6 +8765,10 @@ declare namespace LocalJSX {
7525
8765
  * @default true
7526
8766
  */
7527
8767
  "showBackdrop"?: boolean;
8768
+ /**
8769
+ * The theme determines the visual appearance of the component.
8770
+ */
8771
+ "theme"?: "ios" | "md" | "ionic";
7528
8772
  /**
7529
8773
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
7530
8774
  */
@@ -7538,7 +8782,7 @@ declare namespace LocalJSX {
7538
8782
  }
7539
8783
  interface IonPopover {
7540
8784
  /**
7541
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
8785
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
7542
8786
  */
7543
8787
  "alignment"?: PositionAlign;
7544
8788
  /**
@@ -7547,7 +8791,7 @@ declare namespace LocalJSX {
7547
8791
  */
7548
8792
  "animated"?: boolean;
7549
8793
  /**
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.
8794
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
7551
8795
  * @default true
7552
8796
  */
7553
8797
  "arrow"?: boolean;
@@ -7606,7 +8850,7 @@ declare namespace LocalJSX {
7606
8850
  */
7607
8851
  "leaveAnimation"?: AnimationBuilder;
7608
8852
  /**
7609
- * The mode determines which platform styles to use.
8853
+ * The mode determines the platform behaviors of the component.
7610
8854
  */
7611
8855
  "mode"?: "ios" | "md";
7612
8856
  /**
@@ -7662,7 +8906,11 @@ declare namespace LocalJSX {
7662
8906
  */
7663
8907
  "size"?: PopoverSize;
7664
8908
  /**
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).
8909
+ * The theme determines the visual appearance of the component.
8910
+ */
8911
+ "theme"?: "ios" | "md" | "ionic";
8912
+ /**
8913
+ * 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
8914
  * @default false
7667
8915
  */
7668
8916
  "translucent"?: boolean;
@@ -7687,7 +8935,7 @@ declare namespace LocalJSX {
7687
8935
  */
7688
8936
  "color"?: Color;
7689
8937
  /**
7690
- * The mode determines which platform styles to use.
8938
+ * The mode determines the platform behaviors of the component.
7691
8939
  */
7692
8940
  "mode"?: "ios" | "md";
7693
8941
  /**
@@ -7695,6 +8943,14 @@ declare namespace LocalJSX {
7695
8943
  * @default false
7696
8944
  */
7697
8945
  "reversed"?: boolean;
8946
+ /**
8947
+ * 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.
8948
+ */
8949
+ "shape"?: 'round' | 'rectangular';
8950
+ /**
8951
+ * The theme determines the visual appearance of the component.
8952
+ */
8953
+ "theme"?: "ios" | "md" | "ionic";
7698
8954
  /**
7699
8955
  * 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
8956
  * @default 'determinate'
@@ -7730,7 +8986,7 @@ declare namespace LocalJSX {
7730
8986
  */
7731
8987
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7732
8988
  /**
7733
- * The mode determines which platform styles to use.
8989
+ * The mode determines the platform behaviors of the component.
7734
8990
  */
7735
8991
  "mode"?: "ios" | "md";
7736
8992
  /**
@@ -7746,6 +9002,10 @@ declare namespace LocalJSX {
7746
9002
  * Emitted when the radio button has focus.
7747
9003
  */
7748
9004
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
9005
+ /**
9006
+ * The theme determines the visual appearance of the component.
9007
+ */
9008
+ "theme"?: "ios" | "md" | "ionic";
7749
9009
  /**
7750
9010
  * the value of the radio.
7751
9011
  */
@@ -7769,6 +9029,10 @@ declare namespace LocalJSX {
7769
9029
  * The helper text to display at the top of the radio group.
7770
9030
  */
7771
9031
  "helperText"?: string;
9032
+ /**
9033
+ * The mode determines the platform behaviors of the component.
9034
+ */
9035
+ "mode"?: "ios" | "md";
7772
9036
  /**
7773
9037
  * The name of the control, which is submitted with the form data.
7774
9038
  * @default this.inputId
@@ -7778,6 +9042,10 @@ declare namespace LocalJSX {
7778
9042
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7779
9043
  */
7780
9044
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
9045
+ /**
9046
+ * The theme determines the visual appearance of the component.
9047
+ */
9048
+ "theme"?: "ios" | "md" | "ionic";
7781
9049
  /**
7782
9050
  * the value of the radio group.
7783
9051
  */
@@ -7826,7 +9094,7 @@ declare namespace LocalJSX {
7826
9094
  */
7827
9095
  "min"?: number;
7828
9096
  /**
7829
- * The mode determines which platform styles to use.
9097
+ * The mode determines the platform behaviors of the component.
7830
9098
  */
7831
9099
  "mode"?: "ios" | "md";
7832
9100
  /**
@@ -7878,6 +9146,10 @@ declare namespace LocalJSX {
7878
9146
  * @default 1
7879
9147
  */
7880
9148
  "step"?: number;
9149
+ /**
9150
+ * The theme determines the visual appearance of the component.
9151
+ */
9152
+ "theme"?: "ios" | "md" | "ionic";
7881
9153
  /**
7882
9154
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7883
9155
  * @default true
@@ -7901,7 +9173,7 @@ declare namespace LocalJSX {
7901
9173
  */
7902
9174
  "disabled"?: boolean;
7903
9175
  /**
7904
- * The mode determines which platform styles to use.
9176
+ * The mode determines the platform behaviors of the component.
7905
9177
  */
7906
9178
  "mode"?: "ios" | "md";
7907
9179
  /**
@@ -7945,8 +9217,16 @@ declare namespace LocalJSX {
7945
9217
  * @default '280ms'
7946
9218
  */
7947
9219
  "snapbackDuration"?: string;
9220
+ /**
9221
+ * The theme determines the visual appearance of the component.
9222
+ */
9223
+ "theme"?: "ios" | "md" | "ionic";
7948
9224
  }
7949
9225
  interface IonRefresherContent {
9226
+ /**
9227
+ * The mode determines the platform behaviors of the component.
9228
+ */
9229
+ "mode"?: "ios" | "md";
7950
9230
  /**
7951
9231
  * 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
9232
  */
@@ -7963,8 +9243,20 @@ declare namespace LocalJSX {
7963
9243
  * 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
9244
  */
7965
9245
  "refreshingText"?: string | IonicSafeString;
9246
+ /**
9247
+ * The theme determines the visual appearance of the component.
9248
+ */
9249
+ "theme"?: "ios" | "md" | "ionic";
7966
9250
  }
7967
9251
  interface IonReorder {
9252
+ /**
9253
+ * The mode determines the platform behaviors of the component.
9254
+ */
9255
+ "mode"?: "ios" | "md";
9256
+ /**
9257
+ * The theme determines the visual appearance of the component.
9258
+ */
9259
+ "theme"?: "ios" | "md" | "ionic";
7968
9260
  }
7969
9261
  interface IonReorderGroup {
7970
9262
  /**
@@ -7972,6 +9264,10 @@ declare namespace LocalJSX {
7972
9264
  * @default true
7973
9265
  */
7974
9266
  "disabled"?: boolean;
9267
+ /**
9268
+ * The mode determines the platform behaviors of the component.
9269
+ */
9270
+ "mode"?: "ios" | "md";
7975
9271
  /**
7976
9272
  * Event that needs to be listened to in order to complete the reorder action.
7977
9273
  * @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 +9285,20 @@ declare namespace LocalJSX {
7989
9285
  * Event that is emitted when the reorder gesture starts.
7990
9286
  */
7991
9287
  "onIonReorderStart"?: (event: IonReorderGroupCustomEvent<void>) => void;
9288
+ /**
9289
+ * The theme determines the visual appearance of the component.
9290
+ */
9291
+ "theme"?: "ios" | "md" | "ionic";
7992
9292
  }
7993
9293
  interface IonRippleEffect {
9294
+ /**
9295
+ * The mode determines the platform behaviors of the component.
9296
+ */
9297
+ "mode"?: "ios" | "md";
9298
+ /**
9299
+ * The theme determines the visual appearance of the component.
9300
+ */
9301
+ "theme"?: "ios" | "md" | "ionic";
7994
9302
  /**
7995
9303
  * 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
9304
  * @default 'bounded'
@@ -8014,10 +9322,18 @@ declare namespace LocalJSX {
8014
9322
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
8015
9323
  */
8016
9324
  "componentProps"?: { [key: string]: any };
9325
+ /**
9326
+ * The mode determines the platform behaviors of the component.
9327
+ */
9328
+ "mode"?: "ios" | "md";
8017
9329
  /**
8018
9330
  * Used internally by `ion-router` to know when this route did change.
8019
9331
  */
8020
9332
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
9333
+ /**
9334
+ * The theme determines the visual appearance of the component.
9335
+ */
9336
+ "theme"?: "ios" | "md" | "ionic";
8021
9337
  /**
8022
9338
  * 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
9339
  * @default ''
@@ -8039,6 +9355,10 @@ declare namespace LocalJSX {
8039
9355
  "to": string | undefined | null;
8040
9356
  }
8041
9357
  interface IonRouter {
9358
+ /**
9359
+ * The mode determines the platform behaviors of the component.
9360
+ */
9361
+ "mode"?: "ios" | "md";
8042
9362
  /**
8043
9363
  * Emitted when the route had changed
8044
9364
  */
@@ -8052,6 +9372,10 @@ declare namespace LocalJSX {
8052
9372
  * @default '/'
8053
9373
  */
8054
9374
  "root"?: string;
9375
+ /**
9376
+ * The theme determines the visual appearance of the component.
9377
+ */
9378
+ "theme"?: "ios" | "md" | "ionic";
8055
9379
  /**
8056
9380
  * 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
9381
  * @default true
@@ -8067,6 +9391,10 @@ declare namespace LocalJSX {
8067
9391
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
8068
9392
  */
8069
9393
  "href"?: string | undefined;
9394
+ /**
9395
+ * The mode determines the platform behaviors of the component.
9396
+ */
9397
+ "mode"?: "ios" | "md";
8070
9398
  /**
8071
9399
  * 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
9400
  */
@@ -8084,6 +9412,10 @@ declare namespace LocalJSX {
8084
9412
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8085
9413
  */
8086
9414
  "target"?: string | undefined;
9415
+ /**
9416
+ * The theme determines the visual appearance of the component.
9417
+ */
9418
+ "theme"?: "ios" | "md" | "ionic";
8087
9419
  }
8088
9420
  interface IonRouterOutlet {
8089
9421
  /**
@@ -8096,12 +9428,24 @@ declare namespace LocalJSX {
8096
9428
  */
8097
9429
  "animation"?: AnimationBuilder;
8098
9430
  /**
8099
- * The mode determines which platform styles to use.
9431
+ * The mode determines the platform behaviors of the component.
8100
9432
  * @default getIonMode(this)
8101
9433
  */
8102
9434
  "mode"?: "ios" | "md";
9435
+ /**
9436
+ * The theme determines the visual appearance of the component.
9437
+ */
9438
+ "theme"?: "ios" | "md" | "ionic";
8103
9439
  }
8104
9440
  interface IonRow {
9441
+ /**
9442
+ * The mode determines the platform behaviors of the component.
9443
+ */
9444
+ "mode"?: "ios" | "md";
9445
+ /**
9446
+ * The theme determines the visual appearance of the component.
9447
+ */
9448
+ "theme"?: "ios" | "md" | "ionic";
8105
9449
  }
8106
9450
  interface IonSearchbar {
8107
9451
  /**
@@ -8125,17 +9469,16 @@ declare namespace LocalJSX {
8125
9469
  */
8126
9470
  "autocorrect"?: 'on' | 'off';
8127
9471
  /**
8128
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8129
- * @default config.get('backButtonIcon', arrowBackSharp) as string
9472
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
8130
9473
  */
8131
9474
  "cancelButtonIcon"?: string;
8132
9475
  /**
8133
- * Set the cancel button text. Only applies to `ios` mode.
9476
+ * Set the cancel button text. Only available when the theme is `"ios"`.
8134
9477
  * @default 'Cancel'
8135
9478
  */
8136
9479
  "cancelButtonText"?: string;
8137
9480
  /**
8138
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
9481
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
8139
9482
  */
8140
9483
  "clearIcon"?: string;
8141
9484
  /**
@@ -8168,7 +9511,7 @@ declare namespace LocalJSX {
8168
9511
  */
8169
9512
  "minlength"?: number;
8170
9513
  /**
8171
- * The mode determines which platform styles to use.
9514
+ * The mode determines the platform behaviors of the component.
8172
9515
  */
8173
9516
  "mode"?: "ios" | "md";
8174
9517
  /**
@@ -8206,9 +9549,13 @@ declare namespace LocalJSX {
8206
9549
  */
8207
9550
  "placeholder"?: string;
8208
9551
  /**
8209
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
9552
+ * 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.
8210
9553
  */
8211
- "searchIcon"?: string;
9554
+ "searchIcon"?: string | boolean;
9555
+ /**
9556
+ * 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.
9557
+ */
9558
+ "shape"?: 'soft' | 'round' | 'rectangular';
8212
9559
  /**
8213
9560
  * 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
9561
  * @default 'never'
@@ -8219,11 +9566,19 @@ declare namespace LocalJSX {
8219
9566
  * @default 'always'
8220
9567
  */
8221
9568
  "showClearButton"?: 'never' | 'focus' | 'always';
9569
+ /**
9570
+ * 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.
9571
+ */
9572
+ "size"?: 'small' | 'medium' | 'large';
8222
9573
  /**
8223
9574
  * If `true`, enable spellcheck on the input.
8224
9575
  * @default false
8225
9576
  */
8226
9577
  "spellcheck"?: boolean;
9578
+ /**
9579
+ * The theme determines the visual appearance of the component.
9580
+ */
9581
+ "theme"?: "ios" | "md" | "ionic";
8227
9582
  /**
8228
9583
  * Set the type of the input.
8229
9584
  * @default 'search'
@@ -8246,7 +9601,7 @@ declare namespace LocalJSX {
8246
9601
  */
8247
9602
  "disabled"?: boolean;
8248
9603
  /**
8249
- * The mode determines which platform styles to use.
9604
+ * The mode determines the platform behaviors of the component.
8250
9605
  */
8251
9606
  "mode"?: "ios" | "md";
8252
9607
  /**
@@ -8268,6 +9623,10 @@ declare namespace LocalJSX {
8268
9623
  * @default true
8269
9624
  */
8270
9625
  "swipeGesture"?: boolean;
9626
+ /**
9627
+ * The theme determines the visual appearance of the component.
9628
+ */
9629
+ "theme"?: "ios" | "md" | "ionic";
8271
9630
  /**
8272
9631
  * the value of the segment.
8273
9632
  */
@@ -8289,9 +9648,13 @@ declare namespace LocalJSX {
8289
9648
  */
8290
9649
  "layout"?: SegmentButtonLayout;
8291
9650
  /**
8292
- * The mode determines which platform styles to use.
9651
+ * The mode determines the platform behaviors of the component.
8293
9652
  */
8294
9653
  "mode"?: "ios" | "md";
9654
+ /**
9655
+ * The theme determines the visual appearance of the component.
9656
+ */
9657
+ "theme"?: "ios" | "md" | "ionic";
8295
9658
  /**
8296
9659
  * The type of the button.
8297
9660
  * @default 'button'
@@ -8322,6 +9685,11 @@ declare namespace LocalJSX {
8322
9685
  "swipeGesture"?: boolean;
8323
9686
  }
8324
9687
  interface IonSelect {
9688
+ /**
9689
+ * If `true`, the cancel button will display an icon instead of the `cancelText`. Only applies when `interface` is set to `"modal"`. Has no effect on `"action-sheet"`, `"alert"`, or `"popover"` interfaces. When `cancelIcon` is `true`, the `cancelText` property is ignored for display but is used as the accessible label for the icon button.
9690
+ * @default false
9691
+ */
9692
+ "cancelIcon"?: boolean;
8325
9693
  /**
8326
9694
  * The text to display on the cancel button.
8327
9695
  * @default 'Cancel'
@@ -8345,11 +9713,11 @@ declare namespace LocalJSX {
8345
9713
  */
8346
9714
  "errorText"?: string;
8347
9715
  /**
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.
9716
+ * 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
9717
  */
8350
9718
  "expandedIcon"?: string;
8351
9719
  /**
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.
9720
+ * 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
9721
  */
8354
9722
  "fill"?: 'outline' | 'solid';
8355
9723
  /**
@@ -8380,7 +9748,7 @@ declare namespace LocalJSX {
8380
9748
  */
8381
9749
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
8382
9750
  /**
8383
- * The mode determines which platform styles to use.
9751
+ * The mode determines the platform behaviors of the component.
8384
9752
  */
8385
9753
  "mode"?: "ios" | "md";
8386
9754
  /**
@@ -8432,11 +9800,19 @@ declare namespace LocalJSX {
8432
9800
  */
8433
9801
  "selectedText"?: string | null;
8434
9802
  /**
8435
- * The shape of the select. If "round" it will have an increased border radius.
9803
+ * 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.
9804
+ */
9805
+ "shape"?: 'soft' | 'round' | 'rectangular';
9806
+ /**
9807
+ * 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.
9808
+ */
9809
+ "size"?: 'small' | 'medium' | 'large';
9810
+ /**
9811
+ * The theme determines the visual appearance of the component.
8436
9812
  */
8437
- "shape"?: 'round';
9813
+ "theme"?: "ios" | "md" | "ionic";
8438
9814
  /**
8439
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
9815
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
8440
9816
  */
8441
9817
  "toggleIcon"?: string;
8442
9818
  /**
@@ -8445,6 +9821,11 @@ declare namespace LocalJSX {
8445
9821
  "value"?: any | null;
8446
9822
  }
8447
9823
  interface IonSelectModal {
9824
+ /**
9825
+ * If `true`, the cancel button will display a close icon instead of the `cancelText`. When `cancelIcon` is `true`, `cancelText` is not displayed visually but is still used as the accessible label (`aria-label`) for the button.
9826
+ * @default false
9827
+ */
9828
+ "cancelIcon"?: boolean;
8448
9829
  /**
8449
9830
  * The text to display on the cancel button.
8450
9831
  * @default 'Close'
@@ -8458,11 +9839,23 @@ declare namespace LocalJSX {
8458
9839
  "options"?: SelectModalOption[];
8459
9840
  }
8460
9841
  interface IonSelectOption {
9842
+ /**
9843
+ * Text that is placed underneath the option text to provide additional details about the option.
9844
+ */
9845
+ "description"?: string;
8461
9846
  /**
8462
9847
  * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
8463
9848
  * @default false
8464
9849
  */
8465
9850
  "disabled"?: boolean;
9851
+ /**
9852
+ * The mode determines the platform behaviors of the component.
9853
+ */
9854
+ "mode"?: "ios" | "md";
9855
+ /**
9856
+ * The theme determines the visual appearance of the component.
9857
+ */
9858
+ "theme"?: "ios" | "md" | "ionic";
8466
9859
  /**
8467
9860
  * The text value of the option.
8468
9861
  */
@@ -8477,6 +9870,10 @@ declare namespace LocalJSX {
8477
9870
  * The text content of the popover body
8478
9871
  */
8479
9872
  "message"?: string;
9873
+ /**
9874
+ * The mode determines the platform behaviors of the component.
9875
+ */
9876
+ "mode"?: "ios" | "md";
8480
9877
  /**
8481
9878
  * If true, the select accepts multiple values
8482
9879
  */
@@ -8490,6 +9887,10 @@ declare namespace LocalJSX {
8490
9887
  * The subheader text of the popover
8491
9888
  */
8492
9889
  "subHeader"?: string;
9890
+ /**
9891
+ * The theme determines the visual appearance of the component.
9892
+ */
9893
+ "theme"?: "ios" | "md" | "ionic";
8493
9894
  }
8494
9895
  interface IonSkeletonText {
8495
9896
  /**
@@ -8497,6 +9898,14 @@ declare namespace LocalJSX {
8497
9898
  * @default false
8498
9899
  */
8499
9900
  "animated"?: boolean;
9901
+ /**
9902
+ * The mode determines the platform behaviors of the component.
9903
+ */
9904
+ "mode"?: "ios" | "md";
9905
+ /**
9906
+ * The theme determines the visual appearance of the component.
9907
+ */
9908
+ "theme"?: "ios" | "md" | "ionic";
8500
9909
  }
8501
9910
  interface IonSpinner {
8502
9911
  /**
@@ -8507,6 +9916,10 @@ declare namespace LocalJSX {
8507
9916
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
8508
9917
  */
8509
9918
  "duration"?: number;
9919
+ /**
9920
+ * The mode determines the platform behaviors of the component.
9921
+ */
9922
+ "mode"?: "ios" | "md";
8510
9923
  /**
8511
9924
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
8512
9925
  */
@@ -8516,6 +9929,14 @@ declare namespace LocalJSX {
8516
9929
  * @default false
8517
9930
  */
8518
9931
  "paused"?: boolean;
9932
+ /**
9933
+ * 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.
9934
+ */
9935
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
9936
+ /**
9937
+ * The theme determines the visual appearance of the component.
9938
+ */
9939
+ "theme"?: "ios" | "md" | "ionic";
8519
9940
  }
8520
9941
  interface IonSplitPane {
8521
9942
  /**
@@ -8527,10 +9948,18 @@ declare namespace LocalJSX {
8527
9948
  * @default false
8528
9949
  */
8529
9950
  "disabled"?: boolean;
9951
+ /**
9952
+ * The mode determines the platform behaviors of the component.
9953
+ */
9954
+ "mode"?: "ios" | "md";
8530
9955
  /**
8531
9956
  * Expression to be called when the split-pane visibility has changed
8532
9957
  */
8533
9958
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
9959
+ /**
9960
+ * The theme determines the visual appearance of the component.
9961
+ */
9962
+ "theme"?: "ios" | "md" | "ionic";
8534
9963
  /**
8535
9964
  * 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
9965
  * @default QUERY['lg']
@@ -8542,10 +9971,18 @@ declare namespace LocalJSX {
8542
9971
  * The component to display inside of the tab.
8543
9972
  */
8544
9973
  "component"?: ComponentRef;
9974
+ /**
9975
+ * The mode determines the platform behaviors of the component.
9976
+ */
9977
+ "mode"?: "ios" | "md";
8545
9978
  /**
8546
9979
  * 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
9980
  */
8548
9981
  "tab": string;
9982
+ /**
9983
+ * The theme determines the visual appearance of the component.
9984
+ */
9985
+ "theme"?: "ios" | "md" | "ionic";
8549
9986
  }
8550
9987
  interface IonTabBar {
8551
9988
  /**
@@ -8553,7 +9990,17 @@ declare namespace LocalJSX {
8553
9990
  */
8554
9991
  "color"?: Color;
8555
9992
  /**
8556
- * The mode determines which platform styles to use.
9993
+ * 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"`.
9994
+ * @default 'full'
9995
+ */
9996
+ "expand"?: 'compact' | 'full';
9997
+ /**
9998
+ * If `true`, the tab bar will be hidden when the user scrolls down and shown when the user scrolls up. Only applies when the theme is `"ionic"` and `expand` is `"compact"`.
9999
+ * @default false
10000
+ */
10001
+ "hideOnScroll"?: boolean;
10002
+ /**
10003
+ * The mode determines the platform behaviors of the component.
8557
10004
  */
8558
10005
  "mode"?: "ios" | "md";
8559
10006
  /**
@@ -8561,7 +10008,15 @@ declare namespace LocalJSX {
8561
10008
  */
8562
10009
  "selectedTab"?: string;
8563
10010
  /**
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).
10011
+ * 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.
10012
+ */
10013
+ "shape"?: 'soft' | 'round' | 'rectangular';
10014
+ /**
10015
+ * The theme determines the visual appearance of the component.
10016
+ */
10017
+ "theme"?: "ios" | "md" | "ionic";
10018
+ /**
10019
+ * 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
10020
  * @default false
8566
10021
  */
8567
10022
  "translucent"?: boolean;
@@ -8585,7 +10040,7 @@ declare namespace LocalJSX {
8585
10040
  */
8586
10041
  "layout"?: TabButtonLayout;
8587
10042
  /**
8588
- * The mode determines which platform styles to use.
10043
+ * The mode determines the platform behaviors of the component.
8589
10044
  */
8590
10045
  "mode"?: "ios" | "md";
8591
10046
  /**
@@ -8597,6 +10052,10 @@ declare namespace LocalJSX {
8597
10052
  * @default false
8598
10053
  */
8599
10054
  "selected"?: boolean;
10055
+ /**
10056
+ * 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.
10057
+ */
10058
+ "shape"?: 'soft' | 'round' | 'rectangular';
8600
10059
  /**
8601
10060
  * 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
10061
  */
@@ -8605,8 +10064,16 @@ declare namespace LocalJSX {
8605
10064
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8606
10065
  */
8607
10066
  "target"?: string | undefined;
10067
+ /**
10068
+ * The theme determines the visual appearance of the component.
10069
+ */
10070
+ "theme"?: "ios" | "md" | "ionic";
8608
10071
  }
8609
10072
  interface IonTabs {
10073
+ /**
10074
+ * The mode determines the platform behaviors of the component.
10075
+ */
10076
+ "mode"?: "ios" | "md";
8610
10077
  /**
8611
10078
  * Emitted when the navigation has finished transitioning to a new component.
8612
10079
  */
@@ -8615,6 +10082,10 @@ declare namespace LocalJSX {
8615
10082
  * Emitted when the navigation is about to transition to a new component.
8616
10083
  */
8617
10084
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
10085
+ /**
10086
+ * The theme determines the visual appearance of the component.
10087
+ */
10088
+ "theme"?: "ios" | "md" | "ionic";
8618
10089
  }
8619
10090
  interface IonText {
8620
10091
  /**
@@ -8622,9 +10093,13 @@ declare namespace LocalJSX {
8622
10093
  */
8623
10094
  "color"?: Color;
8624
10095
  /**
8625
- * The mode determines which platform styles to use.
10096
+ * The mode determines the platform behaviors of the component.
8626
10097
  */
8627
10098
  "mode"?: "ios" | "md";
10099
+ /**
10100
+ * The theme determines the visual appearance of the component.
10101
+ */
10102
+ "theme"?: "ios" | "md" | "ionic";
8628
10103
  }
8629
10104
  interface IonTextarea {
8630
10105
  /**
@@ -8682,9 +10157,13 @@ declare namespace LocalJSX {
8682
10157
  */
8683
10158
  "errorText"?: string;
8684
10159
  /**
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.
10160
+ * 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
10161
  */
8687
10162
  "fill"?: 'outline' | 'solid';
10163
+ /**
10164
+ * The `id` of a `<form>` element to associate this element with.
10165
+ */
10166
+ "form"?: string;
8688
10167
  /**
8689
10168
  * Text that is placed under the textarea and displayed when no error is detected.
8690
10169
  */
@@ -8711,7 +10190,7 @@ declare namespace LocalJSX {
8711
10190
  */
8712
10191
  "minlength"?: number;
8713
10192
  /**
8714
- * The mode determines which platform styles to use.
10193
+ * The mode determines the platform behaviors of the component.
8715
10194
  */
8716
10195
  "mode"?: "ios" | "md";
8717
10196
  /**
@@ -8754,14 +10233,23 @@ declare namespace LocalJSX {
8754
10233
  */
8755
10234
  "rows"?: number;
8756
10235
  /**
8757
- * The shape of the textarea. If "round" it will have an increased border radius.
10236
+ * 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.
10237
+ */
10238
+ "shape"?: 'soft' | 'round' | 'rectangular';
10239
+ /**
10240
+ * 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.
10241
+ * @default 'medium'
8758
10242
  */
8759
- "shape"?: 'round';
10243
+ "size"?: 'small' | 'medium' | 'large';
8760
10244
  /**
8761
10245
  * If `true`, the element will have its spelling and grammar checked.
8762
10246
  * @default false
8763
10247
  */
8764
10248
  "spellcheck"?: boolean;
10249
+ /**
10250
+ * The theme determines the visual appearance of the component.
10251
+ */
10252
+ "theme"?: "ios" | "md" | "ionic";
8765
10253
  /**
8766
10254
  * The value of the textarea.
8767
10255
  * @default ''
@@ -8773,16 +10261,32 @@ declare namespace LocalJSX {
8773
10261
  "wrap"?: 'hard' | 'soft' | 'off';
8774
10262
  }
8775
10263
  interface IonThumbnail {
10264
+ /**
10265
+ * The mode determines the platform behaviors of the component.
10266
+ */
10267
+ "mode"?: "ios" | "md";
10268
+ /**
10269
+ * The theme determines the visual appearance of the component.
10270
+ */
10271
+ "theme"?: "ios" | "md" | "ionic";
8776
10272
  }
8777
10273
  interface IonTitle {
8778
10274
  /**
8779
10275
  * 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
10276
  */
8781
10277
  "color"?: Color;
10278
+ /**
10279
+ * The mode determines the platform behaviors of the component.
10280
+ */
10281
+ "mode"?: "ios" | "md";
8782
10282
  /**
8783
10283
  * The size of the toolbar title.
8784
10284
  */
8785
10285
  "size"?: 'large' | 'small';
10286
+ /**
10287
+ * The theme determines the visual appearance of the component.
10288
+ */
10289
+ "theme"?: "ios" | "md" | "ionic";
8786
10290
  }
8787
10291
  interface IonToast {
8788
10292
  /**
@@ -8819,6 +10323,11 @@ declare namespace LocalJSX {
8819
10323
  * Additional attributes to pass to the toast.
8820
10324
  */
8821
10325
  "htmlAttributes"?: { [key: string]: any };
10326
+ /**
10327
+ * 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.
10328
+ * @default 'subtle'
10329
+ */
10330
+ "hue"?: 'bold' | 'subtle';
8822
10331
  /**
8823
10332
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
8824
10333
  */
@@ -8847,7 +10356,7 @@ declare namespace LocalJSX {
8847
10356
  */
8848
10357
  "message"?: string | IonicSafeString;
8849
10358
  /**
8850
- * The mode determines which platform styles to use.
10359
+ * The mode determines the platform behaviors of the component.
8851
10360
  */
8852
10361
  "mode"?: "ios" | "md";
8853
10362
  /**
@@ -8891,12 +10400,20 @@ declare namespace LocalJSX {
8891
10400
  * 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
10401
  */
8893
10402
  "positionAnchor"?: HTMLElement | string;
10403
+ /**
10404
+ * 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.
10405
+ */
10406
+ "shape"?: 'soft' | 'round' | 'rectangular';
8894
10407
  /**
8895
10408
  * 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
10409
  */
8897
10410
  "swipeGesture"?: ToastSwipeGestureDirection;
8898
10411
  /**
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).
10412
+ * The theme determines the visual appearance of the component.
10413
+ */
10414
+ "theme"?: "ios" | "md" | "ionic";
10415
+ /**
10416
+ * 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
10417
  * @default false
8901
10418
  */
8902
10419
  "translucent"?: boolean;
@@ -8947,7 +10464,7 @@ declare namespace LocalJSX {
8947
10464
  */
8948
10465
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8949
10466
  /**
8950
- * The mode determines which platform styles to use.
10467
+ * The mode determines the platform behaviors of the component.
8951
10468
  */
8952
10469
  "mode"?: "ios" | "md";
8953
10470
  /**
@@ -8972,6 +10489,10 @@ declare namespace LocalJSX {
8972
10489
  * @default false
8973
10490
  */
8974
10491
  "required"?: boolean;
10492
+ /**
10493
+ * The theme determines the visual appearance of the component.
10494
+ */
10495
+ "theme"?: "ios" | "md" | "ionic";
8975
10496
  /**
8976
10497
  * 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
10498
  * @default 'on'
@@ -8984,9 +10505,17 @@ declare namespace LocalJSX {
8984
10505
  */
8985
10506
  "color"?: Color;
8986
10507
  /**
8987
- * The mode determines which platform styles to use.
10508
+ * The mode determines the platform behaviors of the component.
8988
10509
  */
8989
10510
  "mode"?: "ios" | "md";
10511
+ /**
10512
+ * The theme determines the visual appearance of the component.
10513
+ */
10514
+ "theme"?: "ios" | "md" | "ionic";
10515
+ /**
10516
+ * Where to place the title relative to the other toolbar content. `"start"`: The title will appear to the left of the toolbar content in LTR and to the right in RTL. `"center"`: The title will appear in the center of the toolbar. `"end"`: The title will appear to the right of the toolbar content in LTR and to the left in RTL. Only applies in the `ionic` theme.
10517
+ */
10518
+ "titlePlacement"?: 'start' | 'center' | 'end';
8990
10519
  }
8991
10520
 
8992
10521
  interface IonAccordionAttributes {
@@ -9003,6 +10532,7 @@ declare namespace LocalJSX {
9003
10532
  "disabled": boolean;
9004
10533
  "readonly": boolean;
9005
10534
  "expand": 'compact' | 'inset';
10535
+ "shape": 'soft' | 'round' | 'rectangular';
9006
10536
  }
9007
10537
  interface IonActionSheetAttributes {
9008
10538
  "keyboardClose": boolean;
@@ -9027,6 +10557,11 @@ declare namespace LocalJSX {
9027
10557
  "isOpen": boolean;
9028
10558
  "trigger": string | undefined;
9029
10559
  }
10560
+ interface IonAvatarAttributes {
10561
+ "size": 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
10562
+ "shape": 'soft' | 'round' | 'rectangular';
10563
+ "disabled": boolean;
10564
+ }
9030
10565
  interface IonBackButtonAttributes {
9031
10566
  "color": Color;
9032
10567
  "defaultHref": string;
@@ -9042,6 +10577,10 @@ declare namespace LocalJSX {
9042
10577
  }
9043
10578
  interface IonBadgeAttributes {
9044
10579
  "color": Color;
10580
+ "hue": 'bold' | 'subtle';
10581
+ "shape": 'soft' | 'round | rectangular';
10582
+ "size": 'small' | 'medium' | 'large';
10583
+ "vertical": 'top' | 'bottom';
9045
10584
  }
9046
10585
  interface IonBreadcrumbAttributes {
9047
10586
  "color": Color;
@@ -9070,8 +10609,8 @@ declare namespace LocalJSX {
9070
10609
  "download": string | undefined;
9071
10610
  "href": string | undefined;
9072
10611
  "rel": string | undefined;
9073
- "shape": 'round';
9074
- "size": 'small' | 'default' | 'large';
10612
+ "shape": 'soft' | 'round' | 'rectangular';
10613
+ "size": 'small' | 'default' | 'medium' | 'large';
9075
10614
  "strong": boolean;
9076
10615
  "target": string | undefined;
9077
10616
  "type": 'submit' | 'reset' | 'button';
@@ -9089,6 +10628,7 @@ declare namespace LocalJSX {
9089
10628
  "href": string | undefined;
9090
10629
  "rel": string | undefined;
9091
10630
  "routerDirection": RouterDirection;
10631
+ "shape": 'soft' | 'round' | 'rectangular';
9092
10632
  "target": string | undefined;
9093
10633
  }
9094
10634
  interface IonCardHeaderAttributes {
@@ -9114,11 +10654,16 @@ declare namespace LocalJSX {
9114
10654
  "justify": 'start' | 'end' | 'space-between';
9115
10655
  "alignment": 'start' | 'center';
9116
10656
  "required": boolean;
10657
+ "shape": 'soft' | 'rectangular';
10658
+ "size": 'small';
9117
10659
  }
9118
10660
  interface IonChipAttributes {
9119
10661
  "color": Color;
9120
10662
  "outline": boolean;
9121
10663
  "disabled": boolean;
10664
+ "hue": 'bold' | 'subtle';
10665
+ "shape": 'soft' | 'round' | 'rectangular';
10666
+ "size": 'small' | 'large';
9122
10667
  }
9123
10668
  interface IonColAttributes {
9124
10669
  "offset": string;
@@ -9127,6 +10672,12 @@ declare namespace LocalJSX {
9127
10672
  "offsetMd": string;
9128
10673
  "offsetLg": string;
9129
10674
  "offsetXl": string;
10675
+ "order": string;
10676
+ "orderXs": string;
10677
+ "orderSm": string;
10678
+ "orderMd": string;
10679
+ "orderLg": string;
10680
+ "orderXl": string;
9130
10681
  "pull": string;
9131
10682
  "pullXs": string;
9132
10683
  "pullSm": string;
@@ -9189,6 +10740,10 @@ declare namespace LocalJSX {
9189
10740
  "disabled": boolean;
9190
10741
  "datetime": string;
9191
10742
  }
10743
+ interface IonDividerAttributes {
10744
+ "spacing": 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
10745
+ "inset": boolean;
10746
+ }
9192
10747
  interface IonFabAttributes {
9193
10748
  "horizontal": 'start' | 'end' | 'center';
9194
10749
  "vertical": 'top' | 'bottom' | 'center';
@@ -9218,11 +10773,17 @@ declare namespace LocalJSX {
9218
10773
  "collapse": 'fade';
9219
10774
  "translucent": boolean;
9220
10775
  }
10776
+ interface IonGalleryAttributes {
10777
+ "layout": 'uniform' | 'masonry';
10778
+ "order": 'sequential' | 'best-fit';
10779
+ "columns": string;
10780
+ }
9221
10781
  interface IonGridAttributes {
9222
10782
  "fixed": boolean;
9223
10783
  }
9224
10784
  interface IonHeaderAttributes {
9225
10785
  "collapse": 'condense' | 'fade';
10786
+ "divider": boolean;
9226
10787
  "translucent": boolean;
9227
10788
  }
9228
10789
  interface IonImgAttributes {
@@ -9233,6 +10794,7 @@ declare namespace LocalJSX {
9233
10794
  "threshold": string;
9234
10795
  "disabled": boolean;
9235
10796
  "position": 'top' | 'bottom';
10797
+ "preserveRerenderScrollPosition": boolean;
9236
10798
  }
9237
10799
  interface IonInfiniteScrollContentAttributes {
9238
10800
  "loadingSpinner": SpinnerTypes | null;
@@ -9267,9 +10829,10 @@ declare namespace LocalJSX {
9267
10829
  "placeholder": string;
9268
10830
  "readonly": boolean;
9269
10831
  "required": boolean;
9270
- "shape": 'round';
10832
+ "shape": 'soft' | 'round' | 'rectangular';
9271
10833
  "spellcheck": boolean;
9272
10834
  "step": string;
10835
+ "size": 'medium' | 'large' | 'xlarge';
9273
10836
  "type": TextFieldTypes;
9274
10837
  "value": string;
9275
10838
  }
@@ -9317,9 +10880,11 @@ declare namespace LocalJSX {
9317
10880
  "download": string | undefined;
9318
10881
  "expandable": boolean;
9319
10882
  "href": string | undefined;
10883
+ "hue": 'bold' | 'subtle';
9320
10884
  "rel": string | undefined;
9321
10885
  "target": string | undefined;
9322
10886
  "type": 'submit' | 'reset' | 'button';
10887
+ "shape": 'soft' | 'round' | 'rectangular';
9323
10888
  }
9324
10889
  interface IonItemOptionsAttributes {
9325
10890
  "side": Side;
@@ -9334,6 +10899,7 @@ declare namespace LocalJSX {
9334
10899
  interface IonListAttributes {
9335
10900
  "lines": 'full' | 'inset' | 'none';
9336
10901
  "inset": boolean;
10902
+ "shape": 'soft' | 'round' | 'rectangular';
9337
10903
  }
9338
10904
  interface IonListHeaderAttributes {
9339
10905
  "color": Color;
@@ -9387,6 +10953,7 @@ declare namespace LocalJSX {
9387
10953
  "keepContentsMounted": boolean;
9388
10954
  "focusTrap": boolean;
9389
10955
  "canDismiss": boolean | ((data?: any, role?: string) => Promise<boolean>);
10956
+ "shape": 'soft' | 'round' | 'rectangular';
9390
10957
  }
9391
10958
  interface IonNavAttributes {
9392
10959
  "swipeGesture": boolean;
@@ -9446,6 +11013,7 @@ declare namespace LocalJSX {
9446
11013
  "value": number;
9447
11014
  "buffer": number;
9448
11015
  "color": Color;
11016
+ "shape": 'round' | 'rectangular';
9449
11017
  }
9450
11018
  interface IonRadioAttributes {
9451
11019
  "color": Color;
@@ -9547,6 +11115,8 @@ declare namespace LocalJSX {
9547
11115
  "spellcheck": boolean;
9548
11116
  "type": 'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url';
9549
11117
  "value": string | null;
11118
+ "shape": 'soft' | 'round' | 'rectangular';
11119
+ "size": 'small' | 'medium' | 'large';
9550
11120
  }
9551
11121
  interface IonSegmentAttributes {
9552
11122
  "color": Color;
@@ -9569,6 +11139,7 @@ declare namespace LocalJSX {
9569
11139
  }
9570
11140
  interface IonSelectAttributes {
9571
11141
  "cancelText": string;
11142
+ "cancelIcon": boolean;
9572
11143
  "color": Color;
9573
11144
  "compareWith": string | SelectCompareFn | null;
9574
11145
  "disabled": boolean;
@@ -9587,18 +11158,21 @@ declare namespace LocalJSX {
9587
11158
  "selectedText": string | null;
9588
11159
  "toggleIcon": string;
9589
11160
  "expandedIcon": string;
9590
- "shape": 'round';
9591
- "value": string;
9592
11161
  "required": boolean;
11162
+ "shape": 'soft' | 'round' | 'rectangular';
11163
+ "size": 'small' | 'medium' | 'large';
11164
+ "value": string;
9593
11165
  }
9594
11166
  interface IonSelectModalAttributes {
9595
11167
  "header": string;
9596
11168
  "cancelText": string;
11169
+ "cancelIcon": boolean;
9597
11170
  "multiple": boolean;
9598
11171
  }
9599
11172
  interface IonSelectOptionAttributes {
9600
11173
  "disabled": boolean;
9601
11174
  "value": string;
11175
+ "description": string;
9602
11176
  }
9603
11177
  interface IonSelectPopoverAttributes {
9604
11178
  "header": string;
@@ -9614,6 +11188,7 @@ declare namespace LocalJSX {
9614
11188
  "duration": number;
9615
11189
  "name": SpinnerTypes;
9616
11190
  "paused": boolean;
11191
+ "size": 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
9617
11192
  }
9618
11193
  interface IonSplitPaneAttributes {
9619
11194
  "contentId": string;
@@ -9627,7 +11202,10 @@ declare namespace LocalJSX {
9627
11202
  interface IonTabBarAttributes {
9628
11203
  "color": Color;
9629
11204
  "selectedTab": string;
11205
+ "hideOnScroll": boolean;
9630
11206
  "translucent": boolean;
11207
+ "expand": 'compact' | 'full';
11208
+ "shape": 'soft' | 'round' | 'rectangular';
9631
11209
  }
9632
11210
  interface IonTabButtonAttributes {
9633
11211
  "disabled": boolean;
@@ -9636,6 +11214,7 @@ declare namespace LocalJSX {
9636
11214
  "rel": string | undefined;
9637
11215
  "layout": TabButtonLayout;
9638
11216
  "selected": boolean;
11217
+ "shape": 'soft' | 'round' | 'rectangular';
9639
11218
  "tab": string;
9640
11219
  "target": string | undefined;
9641
11220
  }
@@ -9672,7 +11251,8 @@ declare namespace LocalJSX {
9672
11251
  "helperText": string;
9673
11252
  "label": string;
9674
11253
  "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
9675
- "shape": 'round';
11254
+ "shape": 'soft' | 'round' | 'rectangular';
11255
+ "size": 'small' | 'medium' | 'large';
9676
11256
  }
9677
11257
  interface IonTitleAttributes {
9678
11258
  "color": Color;
@@ -9683,11 +11263,13 @@ declare namespace LocalJSX {
9683
11263
  "cssClass": string | string[];
9684
11264
  "duration": number;
9685
11265
  "header": string;
11266
+ "hue": 'bold' | 'subtle';
9686
11267
  "layout": ToastLayout;
9687
11268
  "message": string | IonicSafeString;
9688
11269
  "keyboardClose": boolean;
9689
11270
  "position": ToastPosition;
9690
11271
  "positionAnchor": HTMLElement | string;
11272
+ "shape": 'soft' | 'round' | 'rectangular';
9691
11273
  "translucent": boolean;
9692
11274
  "animated": boolean;
9693
11275
  "icon": string;
@@ -9711,6 +11293,7 @@ declare namespace LocalJSX {
9711
11293
  }
9712
11294
  interface IonToolbarAttributes {
9713
11295
  "color": Color;
11296
+ "titlePlacement": 'start' | 'center' | 'end';
9714
11297
  }
9715
11298
 
9716
11299
  interface IntrinsicElements {
@@ -9719,7 +11302,7 @@ declare namespace LocalJSX {
9719
11302
  "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
11303
  "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
11304
  "ion-app": IonApp;
9722
- "ion-avatar": IonAvatar;
11305
+ "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
11306
  "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
11307
  "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
11308
  "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,10 +11321,12 @@ declare namespace LocalJSX {
9738
11321
  "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
11322
  "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
11323
  "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] };
11324
+ "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
11325
  "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
11326
  "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
11327
  "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] };
9744
11328
  "ion-footer": Omit<IonFooter, keyof IonFooterAttributes> & { [K in keyof IonFooter & keyof IonFooterAttributes]?: IonFooter[K] } & { [K in keyof IonFooter & keyof IonFooterAttributes as `attr:${K}`]?: IonFooterAttributes[K] } & { [K in keyof IonFooter & keyof IonFooterAttributes as `prop:${K}`]?: IonFooter[K] };
11329
+ "ion-gallery": Omit<IonGallery, keyof IonGalleryAttributes> & { [K in keyof IonGallery & keyof IonGalleryAttributes]?: IonGallery[K] } & { [K in keyof IonGallery & keyof IonGalleryAttributes as `attr:${K}`]?: IonGalleryAttributes[K] } & { [K in keyof IonGallery & keyof IonGalleryAttributes as `prop:${K}`]?: IonGallery[K] };
9745
11330
  "ion-grid": Omit<IonGrid, keyof IonGridAttributes> & { [K in keyof IonGrid & keyof IonGridAttributes]?: IonGrid[K] } & { [K in keyof IonGrid & keyof IonGridAttributes as `attr:${K}`]?: IonGridAttributes[K] } & { [K in keyof IonGrid & keyof IonGridAttributes as `prop:${K}`]?: IonGrid[K] };
9746
11331
  "ion-header": Omit<IonHeader, keyof IonHeaderAttributes> & { [K in keyof IonHeader & keyof IonHeaderAttributes]?: IonHeader[K] } & { [K in keyof IonHeader & keyof IonHeaderAttributes as `attr:${K}`]?: IonHeaderAttributes[K] } & { [K in keyof IonHeader & keyof IonHeaderAttributes as `prop:${K}`]?: IonHeader[K] };
9747
11332
  "ion-img": Omit<IonImg, keyof IonImgAttributes> & { [K in keyof IonImg & keyof IonImgAttributes]?: IonImg[K] } & { [K in keyof IonImg & keyof IonImgAttributes as `attr:${K}`]?: IonImgAttributes[K] } & { [K in keyof IonImg & keyof IonImgAttributes as `prop:${K}`]?: IonImg[K] };
@@ -9841,10 +11426,12 @@ declare module "@stencil/core" {
9841
11426
  "ion-content": LocalJSX.IntrinsicElements["ion-content"] & JSXBase.HTMLAttributes<HTMLIonContentElement>;
9842
11427
  "ion-datetime": LocalJSX.IntrinsicElements["ion-datetime"] & JSXBase.HTMLAttributes<HTMLIonDatetimeElement>;
9843
11428
  "ion-datetime-button": LocalJSX.IntrinsicElements["ion-datetime-button"] & JSXBase.HTMLAttributes<HTMLIonDatetimeButtonElement>;
11429
+ "ion-divider": LocalJSX.IntrinsicElements["ion-divider"] & JSXBase.HTMLAttributes<HTMLIonDividerElement>;
9844
11430
  "ion-fab": LocalJSX.IntrinsicElements["ion-fab"] & JSXBase.HTMLAttributes<HTMLIonFabElement>;
9845
11431
  "ion-fab-button": LocalJSX.IntrinsicElements["ion-fab-button"] & JSXBase.HTMLAttributes<HTMLIonFabButtonElement>;
9846
11432
  "ion-fab-list": LocalJSX.IntrinsicElements["ion-fab-list"] & JSXBase.HTMLAttributes<HTMLIonFabListElement>;
9847
11433
  "ion-footer": LocalJSX.IntrinsicElements["ion-footer"] & JSXBase.HTMLAttributes<HTMLIonFooterElement>;
11434
+ "ion-gallery": LocalJSX.IntrinsicElements["ion-gallery"] & JSXBase.HTMLAttributes<HTMLIonGalleryElement>;
9848
11435
  "ion-grid": LocalJSX.IntrinsicElements["ion-grid"] & JSXBase.HTMLAttributes<HTMLIonGridElement>;
9849
11436
  "ion-header": LocalJSX.IntrinsicElements["ion-header"] & JSXBase.HTMLAttributes<HTMLIonHeaderElement>;
9850
11437
  "ion-img": LocalJSX.IntrinsicElements["ion-img"] & JSXBase.HTMLAttributes<HTMLIonImgElement>;