@ionic/core 8.5.2-dev.11742514102.1b51674d → 8.5.2-dev.11742574407.1a7233c2

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 (1192) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +15 -10
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +10 -6
  5. package/components/button.js +41 -11
  6. package/components/buttons.js +11 -7
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +30 -12
  12. package/components/config2.js +79 -0
  13. package/components/content.js +14 -12
  14. package/components/data.js +6 -6
  15. package/components/focus-visible.js +23 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +24 -15
  18. package/components/helpers.js +54 -3
  19. package/components/index2.js +2 -2
  20. package/components/index4.js +8 -9
  21. package/components/index5.js +27 -3
  22. package/components/index6.js +110 -24
  23. package/components/index7.js +163 -27
  24. package/components/input-shims.js +2 -2
  25. package/components/input.utils.js +1 -2
  26. package/components/ion-accordion-group.js +25 -6
  27. package/components/ion-accordion.js +36 -17
  28. package/components/ion-app.js +14 -77
  29. package/components/ion-avatar.js +54 -5
  30. package/components/ion-back-button.js +29 -19
  31. package/components/ion-badge.js +47 -8
  32. package/components/ion-breadcrumb.js +45 -11
  33. package/components/ion-breadcrumbs.js +9 -5
  34. package/components/ion-card-content.js +11 -7
  35. package/components/ion-card-header.js +9 -5
  36. package/components/ion-card-subtitle.js +9 -5
  37. package/components/ion-card-title.js +9 -5
  38. package/components/ion-card.js +17 -9
  39. package/components/ion-chip.js +45 -8
  40. package/components/ion-col.js +5 -5
  41. package/components/ion-datetime-button.js +9 -6
  42. package/components/ion-datetime.js +99 -21
  43. package/components/ion-fab-button.js +33 -10
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -12
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +13 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-password-toggle.js +53 -14
  52. package/components/ion-input.js +118 -20
  53. package/components/ion-item-divider.js +9 -5
  54. package/components/ion-item-group.js +9 -5
  55. package/components/ion-item-option.js +28 -8
  56. package/components/ion-item-options.js +9 -5
  57. package/components/ion-item-sliding.js +5 -5
  58. package/components/ion-loading.js +13 -8
  59. package/components/ion-menu-button.js +28 -10
  60. package/components/ion-menu-toggle.js +5 -5
  61. package/components/ion-menu.js +12 -8
  62. package/components/ion-nav-link.js +1 -1
  63. package/components/ion-nav.js +8 -6
  64. package/components/ion-note.js +9 -5
  65. package/components/ion-picker-legacy.js +7 -8
  66. package/components/ion-progress-bar.js +28 -7
  67. package/components/ion-range.js +13 -10
  68. package/components/ion-refresher-content.js +28 -9
  69. package/components/ion-refresher.js +11 -7
  70. package/components/ion-reorder-group.js +5 -5
  71. package/components/ion-reorder.js +31 -5
  72. package/components/ion-router-link.js +6 -6
  73. package/components/ion-router-outlet.js +4 -3
  74. package/components/ion-row.js +5 -2
  75. package/components/ion-searchbar.js +141 -18
  76. package/components/ion-segment-button.js +60 -25
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +6 -2
  79. package/components/ion-segment.js +11 -7
  80. package/components/ion-select-option.js +5 -2
  81. package/components/ion-select.js +120 -33
  82. package/components/ion-skeleton-text.js +6 -5
  83. package/components/ion-split-pane.js +12 -8
  84. package/components/ion-tab-bar.js +31 -8
  85. package/components/ion-tab-button.js +28 -7
  86. package/components/ion-tab.js +2 -2
  87. package/components/ion-tabs.js +2 -2
  88. package/components/ion-text.js +5 -5
  89. package/components/ion-textarea.js +48 -11
  90. package/components/ion-thumbnail.js +5 -2
  91. package/components/ion-toast.js +30 -11
  92. package/components/ion-toggle.js +77 -18
  93. package/components/ionic-global.js +378 -82
  94. package/components/ios.transition.js +1 -0
  95. package/components/item.js +41 -11
  96. package/components/keyboard-controller.js +4 -2
  97. package/components/label.js +9 -5
  98. package/components/list-header.js +9 -5
  99. package/components/list.js +29 -6
  100. package/components/list2.js +6 -0
  101. package/components/modal.js +51 -21
  102. package/components/notch-controller.js +1 -1
  103. package/components/overlays.js +4 -5
  104. package/components/picker-column-option.js +9 -5
  105. package/components/picker-column.js +7 -8
  106. package/components/picker-column2.js +4 -4
  107. package/components/picker.js +8 -4
  108. package/components/popover.js +11 -8
  109. package/components/radio-group.js +5 -3
  110. package/components/radio.js +12 -8
  111. package/components/ripple-effect.js +18 -8
  112. package/components/select-modal.js +3 -3
  113. package/components/select-popover.js +9 -2
  114. package/components/spinner.js +36 -9
  115. package/components/status-tap.js +1 -1
  116. package/components/title.js +11 -7
  117. package/components/toolbar.js +11 -7
  118. package/components/x.js +6 -0
  119. package/css/core.css +1 -1
  120. package/css/core.css.map +1 -1
  121. package/css/display.css +1 -1
  122. package/css/display.css.map +1 -1
  123. package/css/flex-utils.css +1 -1
  124. package/css/flex-utils.css.map +1 -1
  125. package/css/float-elements.css.map +1 -1
  126. package/css/global.bundle.css.map +1 -1
  127. package/css/ionic/bundle.ionic.css +1 -0
  128. package/css/ionic/bundle.ionic.css.map +1 -0
  129. package/css/ionic/core.ionic.css +1 -0
  130. package/css/ionic/core.ionic.css.map +1 -0
  131. package/css/ionic/global.bundle.ionic.css +1 -0
  132. package/css/ionic/global.bundle.ionic.css.map +1 -0
  133. package/css/ionic/ionic-swiper.ionic.css +1 -0
  134. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  135. package/css/ionic/link.ionic.css +1 -0
  136. package/css/ionic/link.ionic.css.map +1 -0
  137. package/css/ionic/structure.ionic.css +1 -0
  138. package/css/ionic/structure.ionic.css.map +1 -0
  139. package/css/ionic/typography.ionic.css +1 -0
  140. package/css/ionic/typography.ionic.css.map +1 -0
  141. package/css/ionic/utils.bundle.ionic.css +1 -0
  142. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  143. package/css/ionic-swiper.css +1 -1
  144. package/css/ionic-swiper.css.map +1 -1
  145. package/css/ionic.bundle.css +1 -1
  146. package/css/ionic.bundle.css.map +1 -1
  147. package/css/normalize.css.map +1 -1
  148. package/css/padding.css.map +1 -1
  149. package/css/palettes/dark.always.css.map +1 -1
  150. package/css/palettes/dark.class.css.map +1 -1
  151. package/css/palettes/dark.system.css.map +1 -1
  152. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  153. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  154. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  155. package/css/palettes/high-contrast.always.css.map +1 -1
  156. package/css/palettes/high-contrast.class.css.map +1 -1
  157. package/css/palettes/high-contrast.system.css.map +1 -1
  158. package/css/structure.css.map +1 -1
  159. package/css/text-alignment.css.map +1 -1
  160. package/css/text-transformation.css.map +1 -1
  161. package/css/typography.css.map +1 -1
  162. package/css/utils.bundle.css +1 -1
  163. package/css/utils.bundle.css.map +1 -1
  164. package/dist/cjs/{animation-b4fdf128.js → animation-124b7017.js} +2 -2
  165. package/dist/cjs/{app-globals-dd592863.js → app-globals-04316582.js} +1 -1
  166. package/dist/cjs/{button-active-43e2b419.js → button-active-6c0ef0f0.js} +1 -1
  167. package/dist/cjs/{capacitor-c04564bf.js → capacitor-ec2a454d.js} +3 -3
  168. package/dist/cjs/caret-down-3c215cff.js +8 -0
  169. package/dist/cjs/caret-left-2bb66970.js +8 -0
  170. package/dist/cjs/caret-right-88e03970.js +8 -0
  171. package/dist/cjs/config-aff4ff52.js +84 -0
  172. package/dist/cjs/{data-27cc2c9c.js → data-ae8423e6.js} +8 -8
  173. package/dist/{esm/focus-visible-dd40d69f.js → cjs/focus-visible-fe3acfb5.js} +27 -1
  174. package/dist/cjs/{framework-delegate-50a86d56.js → framework-delegate-4de32fdc.js} +4 -2
  175. package/dist/cjs/{haptic-f6b37aa3.js → haptic-f262299e.js} +1 -1
  176. package/dist/cjs/{helpers-3a248559.js → helpers-4211d834.js} +54 -2
  177. package/dist/cjs/{index-e630fd95.js → index-042a8f38.js} +12 -12
  178. package/dist/cjs/{index-e36bd277.js → index-3d31ef2d.js} +10 -7
  179. package/dist/cjs/{index-4b70187a.js → index-943c0438.js} +14 -15
  180. package/dist/cjs/{index-509ca0d3.js → index-f835dc22.js} +3 -3
  181. package/dist/cjs/index.cjs.js +11 -12
  182. package/dist/cjs/{input-shims-22a9973f.js → input-shims-c93f3c7f.js} +18 -18
  183. package/dist/cjs/{input.utils-e82b8ed0.js → input.utils-00741e7b.js} +4 -5
  184. package/dist/cjs/ion-accordion_2.cjs.entry.js +62 -24
  185. package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -18
  186. package/dist/cjs/ion-alert.cjs.entry.js +26 -23
  187. package/dist/cjs/ion-app_8.cjs.entry.js +113 -152
  188. package/dist/cjs/ion-avatar_3.cjs.entry.js +97 -11
  189. package/dist/cjs/ion-back-button.cjs.entry.js +32 -21
  190. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -6
  191. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -15
  192. package/dist/cjs/ion-button_2.cjs.entry.js +47 -15
  193. package/dist/cjs/ion-card_5.cjs.entry.js +53 -28
  194. package/dist/cjs/ion-checkbox.cjs.entry.js +31 -13
  195. package/dist/cjs/ion-chip.cjs.entry.js +43 -7
  196. package/dist/cjs/ion-col_3.cjs.entry.js +14 -10
  197. package/dist/cjs/ion-datetime-button.cjs.entry.js +17 -12
  198. package/dist/cjs/ion-datetime_3.cjs.entry.js +191 -115
  199. package/dist/cjs/ion-fab_3.cjs.entry.js +43 -19
  200. package/dist/cjs/ion-img.cjs.entry.js +8 -3
  201. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +22 -17
  202. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  203. package/dist/cjs/ion-input.cjs.entry.js +119 -23
  204. package/dist/cjs/ion-item-option_3.cjs.entry.js +41 -17
  205. package/dist/cjs/ion-item_8.cjs.entry.js +114 -41
  206. package/dist/cjs/ion-loading.cjs.entry.js +21 -18
  207. package/dist/cjs/ion-menu_3.cjs.entry.js +49 -29
  208. package/dist/cjs/ion-modal.cjs.entry.js +99 -70
  209. package/dist/cjs/ion-nav_2.cjs.entry.js +16 -13
  210. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -6
  211. package/dist/cjs/ion-picker-column.cjs.entry.js +13 -12
  212. package/dist/cjs/ion-picker.cjs.entry.js +11 -5
  213. package/dist/cjs/ion-popover.cjs.entry.js +21 -18
  214. package/dist/cjs/ion-progress-bar.cjs.entry.js +29 -8
  215. package/dist/cjs/ion-radio_2.cjs.entry.js +19 -11
  216. package/dist/cjs/ion-range.cjs.entry.js +21 -16
  217. package/dist/cjs/ion-refresher_2.cjs.entry.js +45 -23
  218. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -13
  219. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -7
  220. package/dist/cjs/ion-route_4.cjs.entry.js +9 -7
  221. package/dist/cjs/ion-searchbar.cjs.entry.js +139 -17
  222. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  223. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -2
  224. package/dist/cjs/ion-segment_2.cjs.entry.js +72 -31
  225. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -10
  226. package/dist/cjs/ion-select_3.cjs.entry.js +134 -40
  227. package/dist/cjs/ion-spinner.cjs.entry.js +35 -9
  228. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -8
  229. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +61 -20
  230. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -6
  231. package/dist/cjs/ion-text.cjs.entry.js +6 -5
  232. package/dist/cjs/ion-textarea.cjs.entry.js +52 -16
  233. package/dist/cjs/ion-toast.cjs.entry.js +60 -42
  234. package/dist/cjs/ion-toggle.cjs.entry.js +81 -22
  235. package/dist/cjs/ionic-global-5c446a5e.js +531 -0
  236. package/dist/cjs/ionic.cjs.js +4 -3
  237. package/dist/cjs/{ios.transition-ae7afca9.js → ios.transition-cdf1959e.js} +7 -6
  238. package/dist/cjs/{keyboard-0272231f.js → keyboard-924ba9a2.js} +1 -1
  239. package/dist/cjs/{keyboard-af1bb365.js → keyboard-9cd4a473.js} +5 -3
  240. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-dc7a55c4.js} +11 -9
  241. package/dist/cjs/list-2930c629.js +8 -0
  242. package/dist/cjs/loader.cjs.js +4 -3
  243. package/dist/cjs/{md.transition-26003e25.js → md.transition-6a00a3e7.js} +6 -6
  244. package/dist/cjs/{notch-controller-ae03a497.js → notch-controller-14681d65.js} +4 -4
  245. package/dist/cjs/{overlays-a0c6b23f.js → overlays-288b775b.js} +19 -20
  246. package/dist/cjs/{status-tap-03023755.js → status-tap-a41ad873.js} +5 -4
  247. package/dist/cjs/{swipe-back-cd0d9f77.js → swipe-back-cf9385d3.js} +3 -1
  248. package/dist/cjs/x-81a8f51c.js +8 -0
  249. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  250. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  251. package/dist/collection/components/accordion/accordion.js +37 -21
  252. package/dist/collection/components/accordion/accordion.md.css +67 -59
  253. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  254. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  255. package/dist/collection/components/accordion-group/accordion-group.js +43 -8
  256. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  257. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  258. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  259. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  260. package/dist/collection/components/alert/alert.ios.css +19 -1
  261. package/dist/collection/components/alert/alert.js +15 -12
  262. package/dist/collection/components/alert/alert.md.css +19 -1
  263. package/dist/collection/components/app/app.js +22 -80
  264. package/dist/collection/components/avatar/avatar.ionic.css +285 -0
  265. package/dist/collection/components/avatar/avatar.ios.css +13 -0
  266. package/dist/collection/components/avatar/avatar.js +92 -4
  267. package/dist/collection/components/avatar/avatar.md.css +21 -0
  268. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  269. package/dist/collection/components/back-button/back-button.js +27 -19
  270. package/dist/collection/components/back-button/back-button.md.css +60 -48
  271. package/dist/collection/components/backdrop/backdrop.ionic.css +150 -0
  272. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  273. package/dist/collection/components/backdrop/backdrop.js +12 -6
  274. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  275. package/dist/collection/components/badge/badge.ionic.css +313 -0
  276. package/dist/collection/components/badge/badge.ios.css +128 -4
  277. package/dist/collection/components/badge/badge.js +94 -8
  278. package/dist/collection/components/badge/badge.md.css +128 -4
  279. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  280. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  281. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  282. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  283. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  284. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  285. package/dist/collection/components/button/button.ionic.css +609 -0
  286. package/dist/collection/components/button/button.ios.css +131 -37
  287. package/dist/collection/components/button/button.js +46 -16
  288. package/dist/collection/components/button/button.md.css +122 -41
  289. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  290. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  291. package/dist/collection/components/buttons/buttons.js +14 -8
  292. package/dist/collection/components/buttons/buttons.md.css +55 -3
  293. package/dist/collection/components/card/card.ionic.css +137 -0
  294. package/dist/collection/components/card/card.ios.css +65 -14
  295. package/dist/collection/components/card/card.js +34 -10
  296. package/dist/collection/components/card/card.md.css +65 -14
  297. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  298. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  299. package/dist/collection/components/card-content/card-content.js +11 -8
  300. package/dist/collection/components/card-content/card-content.md.css +16 -1
  301. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  302. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  303. package/dist/collection/components/card-header/card-header.js +12 -9
  304. package/dist/collection/components/card-header/card-header.md.css +27 -15
  305. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  306. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  307. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  308. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  309. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  310. package/dist/collection/components/card-title/card-title.js +11 -8
  311. package/dist/collection/components/card-title/card-title.md.css +73 -0
  312. package/dist/collection/components/checkbox/checkbox.ionic.css +402 -0
  313. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  314. package/dist/collection/components/checkbox/checkbox.js +64 -14
  315. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  316. package/dist/collection/components/chip/chip.ionic.css +160 -0
  317. package/dist/collection/components/chip/chip.ios.css +20 -1
  318. package/dist/collection/components/chip/chip.js +77 -8
  319. package/dist/collection/components/chip/chip.md.css +20 -1
  320. package/dist/collection/components/col/col.css +12 -0
  321. package/dist/collection/components/col/col.js +9 -5
  322. package/dist/collection/components/content/content.css +8 -2
  323. package/dist/collection/components/content/content.js +16 -11
  324. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  325. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  326. package/dist/collection/components/datetime/datetime.js +98 -20
  327. package/dist/collection/components/datetime/datetime.md.css +237 -86
  328. package/dist/collection/components/datetime/utils/data.js +5 -5
  329. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  330. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  331. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  332. package/dist/collection/components/fab/fab.css +25 -1
  333. package/dist/collection/components/fab/fab.js +9 -5
  334. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  335. package/dist/collection/components/fab-button/fab-button.js +36 -15
  336. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  337. package/dist/collection/components/fab-list/fab-list.css +12 -0
  338. package/dist/collection/components/fab-list/fab-list.js +9 -5
  339. package/dist/collection/components/footer/footer.ios.css +14 -2
  340. package/dist/collection/components/footer/footer.js +20 -15
  341. package/dist/collection/components/footer/footer.md.css +12 -0
  342. package/dist/collection/components/grid/grid.css +12 -0
  343. package/dist/collection/components/grid/grid.js +9 -5
  344. package/dist/collection/components/header/header.ionic.css +86 -0
  345. package/dist/collection/components/header/header.ios.css +25 -10
  346. package/dist/collection/components/header/header.js +42 -17
  347. package/dist/collection/components/header/header.md.css +23 -8
  348. package/dist/collection/components/img/img.js +8 -2
  349. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  350. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  351. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  352. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  353. package/dist/collection/components/input/input.ionic.css +1078 -0
  354. package/dist/collection/components/input/input.ios.css +21 -2
  355. package/dist/collection/components/input/input.js +144 -30
  356. package/dist/collection/components/input/input.md.css +43 -4
  357. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  358. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  359. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  360. package/dist/collection/components/item/item.ionic.css +497 -0
  361. package/dist/collection/components/item/item.ios.css +109 -69
  362. package/dist/collection/components/item/item.js +44 -16
  363. package/dist/collection/components/item/item.md.css +120 -68
  364. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  365. package/dist/collection/components/item-divider/item-divider.js +11 -8
  366. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  367. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  368. package/dist/collection/components/item-group/item-group.js +13 -7
  369. package/dist/collection/components/item-group/item-group.md.css +12 -0
  370. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  371. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  372. package/dist/collection/components/item-option/item-option.js +43 -8
  373. package/dist/collection/components/item-option/item-option.md.css +14 -2
  374. package/dist/collection/components/item-options/item-options.ionic.css +259 -0
  375. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  376. package/dist/collection/components/item-options/item-options.js +13 -7
  377. package/dist/collection/components/item-options/item-options.md.css +18 -0
  378. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  379. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  380. package/dist/collection/components/label/label.ios.css +18 -0
  381. package/dist/collection/components/label/label.js +11 -8
  382. package/dist/collection/components/label/label.md.css +18 -0
  383. package/dist/collection/components/list/list.ionic.css +192 -0
  384. package/dist/collection/components/list/list.ios.css +18 -0
  385. package/dist/collection/components/list/list.js +47 -9
  386. package/dist/collection/components/list/list.md.css +20 -2
  387. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  388. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  389. package/dist/collection/components/list-header/list-header.js +11 -8
  390. package/dist/collection/components/list-header/list-header.md.css +18 -0
  391. package/dist/collection/components/loading/loading.ios.css +13 -1
  392. package/dist/collection/components/loading/loading.js +13 -10
  393. package/dist/collection/components/loading/loading.md.css +13 -1
  394. package/dist/collection/components/menu/menu.ios.css +15 -3
  395. package/dist/collection/components/menu/menu.js +12 -7
  396. package/dist/collection/components/menu/menu.md.css +15 -3
  397. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  398. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  399. package/dist/collection/components/menu-button/menu-button.js +26 -10
  400. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  401. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  402. package/dist/collection/components/modal/animations/sheet.js +8 -2
  403. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  404. package/dist/collection/components/modal/modal.ionic.css +245 -0
  405. package/dist/collection/components/modal/modal.ios.css +106 -63
  406. package/dist/collection/components/modal/modal.js +47 -11
  407. package/dist/collection/components/modal/modal.md.css +106 -63
  408. package/dist/collection/components/nav/nav.css +7 -1
  409. package/dist/collection/components/nav/nav.js +11 -5
  410. package/dist/collection/components/nav-link/nav-link.js +5 -1
  411. package/dist/collection/components/note/note.ios.css +12 -0
  412. package/dist/collection/components/note/note.js +11 -8
  413. package/dist/collection/components/note/note.md.css +12 -0
  414. package/dist/collection/components/picker/picker.ios.css +15 -3
  415. package/dist/collection/components/picker/picker.js +8 -5
  416. package/dist/collection/components/picker/picker.md.css +15 -3
  417. package/dist/collection/components/picker-column/picker-column.css +9 -2
  418. package/dist/collection/components/picker-column/picker-column.js +8 -7
  419. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  420. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  421. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  422. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  423. package/dist/collection/components/picker-legacy/picker.js +7 -6
  424. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  425. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  426. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  427. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  428. package/dist/collection/components/popover/popover.ios.css +13 -1
  429. package/dist/collection/components/popover/popover.js +15 -12
  430. package/dist/collection/components/popover/popover.md.css +13 -1
  431. package/dist/collection/components/progress-bar/progress-bar.ionic.css +333 -0
  432. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  433. package/dist/collection/components/progress-bar/progress-bar.js +42 -7
  434. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  435. package/dist/collection/components/radio/radio.ionic.css +424 -0
  436. package/dist/collection/components/radio/radio.ios.css +134 -91
  437. package/dist/collection/components/radio/radio.js +12 -9
  438. package/dist/collection/components/radio/radio.md.css +134 -91
  439. package/dist/collection/components/radio-group/radio-group.ios.css +18 -0
  440. package/dist/collection/components/radio-group/radio-group.js +9 -3
  441. package/dist/collection/components/radio-group/radio-group.md.css +18 -0
  442. package/dist/collection/components/range/range.ionic.css +555 -0
  443. package/dist/collection/components/range/range.ios.css +128 -85
  444. package/dist/collection/components/range/range.js +12 -9
  445. package/dist/collection/components/range/range.md.css +128 -85
  446. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  447. package/dist/collection/components/refresher/refresher.js +11 -8
  448. package/dist/collection/components/refresher/refresher.md.css +15 -2
  449. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  450. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  451. package/dist/collection/components/reorder/reorder.js +33 -6
  452. package/dist/collection/components/reorder/reorder.md.css +6 -0
  453. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  454. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  455. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  456. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  457. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  458. package/dist/collection/components/route/route.js +4 -0
  459. package/dist/collection/components/router/router.js +4 -0
  460. package/dist/collection/components/router-link/router-link.css +8 -2
  461. package/dist/collection/components/router-link/router-link.js +9 -5
  462. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  463. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  464. package/dist/collection/components/row/row.css +12 -0
  465. package/dist/collection/components/row/row.js +9 -2
  466. package/dist/collection/components/searchbar/searchbar.ionic.css +628 -0
  467. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  468. package/dist/collection/components/searchbar/searchbar.js +179 -29
  469. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  470. package/dist/collection/components/segment/segment.ionic.css +117 -0
  471. package/dist/collection/components/segment/segment.ios.css +45 -2
  472. package/dist/collection/components/segment/segment.js +11 -8
  473. package/dist/collection/components/segment/segment.md.css +45 -2
  474. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  475. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  476. package/dist/collection/components/segment-button/segment-button.js +60 -26
  477. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  478. package/dist/collection/components/segment-content/segment-content.js +1 -1
  479. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  480. package/dist/collection/components/segment-view/segment-view.js +6 -4
  481. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  482. package/dist/collection/components/select/select.ionic.css +824 -0
  483. package/dist/collection/components/select/select.ios.css +248 -121
  484. package/dist/collection/components/select/select.js +157 -55
  485. package/dist/collection/components/select/select.md.css +264 -123
  486. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  487. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  488. package/dist/collection/components/select-modal/select-modal.js +3 -3
  489. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  490. package/dist/collection/components/select-option/select-option.js +9 -2
  491. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  492. package/dist/collection/components/select-popover/select-popover.js +12 -4
  493. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  494. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  495. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  496. package/dist/collection/components/spinner/spinner.common.css +199 -0
  497. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  498. package/dist/collection/components/spinner/spinner.js +46 -6
  499. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  500. package/dist/collection/components/split-pane/split-pane.js +14 -8
  501. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  502. package/dist/collection/components/tab/tab.js +6 -2
  503. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  504. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  505. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  506. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  507. package/dist/collection/components/tab-button/tab-button.ionic.css +282 -0
  508. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  509. package/dist/collection/components/tab-button/tab-button.js +43 -8
  510. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  511. package/dist/collection/components/tabs/tabs.css +7 -1
  512. package/dist/collection/components/tabs/tabs.js +4 -1
  513. package/dist/collection/components/text/text.css +6 -0
  514. package/dist/collection/components/text/text.js +7 -6
  515. package/dist/collection/components/textarea/textarea.ionic.css +860 -0
  516. package/dist/collection/components/textarea/textarea.ios.css +201 -94
  517. package/dist/collection/components/textarea/textarea.js +69 -16
  518. package/dist/collection/components/textarea/textarea.md.css +214 -95
  519. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  520. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  521. package/dist/collection/components/title/title.ionic.css +145 -0
  522. package/dist/collection/components/title/title.ios.css +32 -4
  523. package/dist/collection/components/title/title.js +13 -7
  524. package/dist/collection/components/title/title.md.css +32 -4
  525. package/dist/collection/components/toast/animations/utils.js +1 -1
  526. package/dist/collection/components/toast/toast.ionic.css +377 -0
  527. package/dist/collection/components/toast/toast.ios.css +74 -35
  528. package/dist/collection/components/toast/toast.js +45 -10
  529. package/dist/collection/components/toast/toast.md.css +74 -35
  530. package/dist/collection/components/toggle/toggle.ionic.css +516 -0
  531. package/dist/collection/components/toggle/toggle.ios.css +228 -121
  532. package/dist/collection/components/toggle/toggle.js +73 -18
  533. package/dist/collection/components/toggle/toggle.md.css +225 -121
  534. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  535. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  536. package/dist/collection/components/toolbar/toolbar.js +13 -10
  537. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  538. package/dist/collection/global/ionic-global.js +229 -13
  539. package/dist/collection/utils/focus-visible.js +22 -0
  540. package/dist/collection/utils/framework-delegate.js +3 -1
  541. package/dist/collection/utils/helpers.js +42 -2
  542. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  543. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  544. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  545. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  546. package/dist/collection/utils/overlays.js +2 -1
  547. package/dist/collection/utils/test/playwright/generator.js +48 -23
  548. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  549. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  550. package/dist/collection/utils/transition/ios.transition.js +1 -0
  551. package/dist/docs.json +7246 -331
  552. package/dist/esm/{animation-eab5a4ca.js → animation-12d440f3.js} +1 -1
  553. package/dist/esm/{app-globals-7b6cbf1a.js → app-globals-2497eeed.js} +1 -1
  554. package/dist/esm/{button-active-90f1dbc4.js → button-active-8f33f086.js} +2 -2
  555. package/dist/esm/{capacitor-59395cbd.js → capacitor-39edcb1f.js} +1 -1
  556. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  557. package/dist/esm/caret-left-33424bb0.js +6 -0
  558. package/dist/esm/caret-right-68d856ad.js +6 -0
  559. package/dist/esm/config-84eb9670.js +79 -0
  560. package/dist/esm/{data-174ad5e0.js → data-591c1b05.js} +6 -6
  561. package/dist/{cjs/focus-visible-7a0ce04f.js → esm/focus-visible-6827442c.js} +23 -3
  562. package/dist/esm/{framework-delegate-2eea1763.js → framework-delegate-9ad3e427.js} +4 -2
  563. package/dist/esm/{haptic-ac164e4c.js → haptic-946542b8.js} +1 -1
  564. package/dist/esm/{helpers-78efeec3.js → helpers-ea1f7324.js} +54 -3
  565. package/dist/esm/{index-f9f5d018.js → index-036caa00.js} +10 -11
  566. package/{components/index9.js → dist/esm/index-0c65e393.js} +5 -2
  567. package/dist/esm/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  568. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  569. package/dist/esm/{index-ecb55b8d.js → index-eb1203fa.js} +6 -6
  570. package/dist/esm/{index-e919e353.js → index-f36a3fa4.js} +2 -2
  571. package/dist/esm/index.js +12 -13
  572. package/dist/esm/{input-shims-7dc1f6dc.js → input-shims-96f8d7c2.js} +8 -8
  573. package/dist/esm/{input.utils-28bf4ef0.js → input.utils-22a20c3a.js} +2 -3
  574. package/dist/esm/ion-accordion_2.entry.js +62 -24
  575. package/dist/esm/ion-action-sheet.entry.js +23 -19
  576. package/dist/esm/ion-alert.entry.js +24 -21
  577. package/dist/esm/ion-app_8.entry.js +101 -140
  578. package/dist/esm/ion-avatar_3.entry.js +98 -12
  579. package/dist/esm/ion-back-button.entry.js +32 -21
  580. package/dist/esm/ion-backdrop.entry.js +12 -7
  581. package/dist/esm/ion-breadcrumb_2.entry.js +56 -17
  582. package/dist/esm/ion-button_2.entry.js +45 -13
  583. package/dist/esm/ion-card_5.entry.js +54 -29
  584. package/dist/esm/ion-checkbox.entry.js +32 -14
  585. package/dist/esm/ion-chip.entry.js +44 -8
  586. package/dist/esm/ion-col_3.entry.js +15 -11
  587. package/dist/esm/ion-datetime-button.entry.js +14 -9
  588. package/dist/esm/ion-datetime_3.entry.js +117 -41
  589. package/dist/esm/ion-fab_3.entry.js +45 -21
  590. package/dist/esm/ion-img.entry.js +9 -4
  591. package/dist/esm/ion-infinite-scroll_2.entry.js +20 -15
  592. package/dist/esm/ion-input-password-toggle.entry.js +54 -15
  593. package/dist/esm/ion-input.entry.js +121 -25
  594. package/dist/esm/ion-item-option_3.entry.js +42 -18
  595. package/dist/esm/ion-item_8.entry.js +115 -42
  596. package/dist/esm/ion-loading.entry.js +19 -16
  597. package/dist/esm/ion-menu_3.entry.js +49 -29
  598. package/dist/esm/ion-modal.entry.js +60 -31
  599. package/dist/esm/ion-nav_2.entry.js +15 -12
  600. package/dist/esm/ion-picker-column-option.entry.js +13 -7
  601. package/dist/esm/ion-picker-column.entry.js +13 -12
  602. package/dist/esm/ion-picker.entry.js +12 -6
  603. package/dist/esm/ion-popover.entry.js +19 -16
  604. package/dist/esm/ion-progress-bar.entry.js +29 -8
  605. package/dist/esm/ion-radio_2.entry.js +20 -12
  606. package/dist/esm/ion-range.entry.js +17 -12
  607. package/dist/esm/ion-refresher_2.entry.js +43 -21
  608. package/dist/esm/ion-reorder_2.entry.js +40 -15
  609. package/dist/esm/ion-ripple-effect.entry.js +19 -8
  610. package/dist/esm/ion-route_4.entry.js +10 -8
  611. package/dist/esm/ion-searchbar.entry.js +141 -19
  612. package/dist/esm/ion-segment-content.entry.js +2 -2
  613. package/dist/esm/ion-segment-view.entry.js +7 -3
  614. package/dist/esm/ion-segment_2.entry.js +73 -32
  615. package/dist/esm/ion-select-modal.entry.js +10 -11
  616. package/dist/esm/ion-select_3.entry.js +136 -42
  617. package/dist/esm/ion-spinner.entry.js +34 -8
  618. package/dist/esm/ion-split-pane.entry.js +14 -9
  619. package/dist/esm/ion-tab-bar_2.entry.js +61 -20
  620. package/dist/esm/ion-tab_2.entry.js +9 -7
  621. package/dist/esm/ion-text.entry.js +7 -6
  622. package/dist/esm/ion-textarea.entry.js +53 -17
  623. package/dist/esm/ion-toast.entry.js +35 -17
  624. package/dist/esm/ion-toggle.entry.js +82 -23
  625. package/dist/esm/ionic-global-b30d2cc2.js +517 -0
  626. package/dist/esm/ionic.js +6 -5
  627. package/dist/esm/{ios.transition-7fe5dbea.js → ios.transition-cbbf0bd1.js} +8 -7
  628. package/dist/esm/{keyboard-52278bd7.js → keyboard-0af19ead.js} +5 -3
  629. package/dist/esm/{keyboard-73175e24.js → keyboard-ceb6990d.js} +1 -1
  630. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-7e2da6b9.js} +5 -3
  631. package/dist/esm/list-6524700c.js +6 -0
  632. package/dist/esm/loader.js +6 -5
  633. package/dist/esm/{md.transition-8dc58b46.js → md.transition-21c93656.js} +7 -7
  634. package/dist/esm/{notch-controller-00d92e89.js → notch-controller-cd983e05.js} +2 -2
  635. package/dist/esm/{overlays-1bc809ec.js → overlays-d60b1d1e.js} +6 -7
  636. package/dist/esm/{status-tap-f6d08e9e.js → status-tap-bf78b74d.js} +6 -5
  637. package/dist/esm/{swipe-back-07df2095.js → swipe-back-fff82194.js} +3 -1
  638. package/dist/esm/x-a64bcd9f.js +6 -0
  639. package/dist/esm-es5/animation-12d440f3.js +4 -0
  640. package/dist/esm-es5/app-globals-2497eeed.js +4 -0
  641. package/dist/esm-es5/{button-active-90f1dbc4.js → button-active-8f33f086.js} +1 -1
  642. package/dist/esm-es5/capacitor-39edcb1f.js +4 -0
  643. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  644. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  645. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  646. package/dist/esm-es5/config-84eb9670.js +4 -0
  647. package/dist/esm-es5/data-591c1b05.js +4 -0
  648. package/dist/esm-es5/focus-visible-6827442c.js +4 -0
  649. package/dist/esm-es5/framework-delegate-9ad3e427.js +4 -0
  650. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-946542b8.js} +1 -1
  651. package/dist/esm-es5/helpers-ea1f7324.js +4 -0
  652. package/dist/esm-es5/index-036caa00.js +4 -0
  653. package/dist/esm-es5/index-0c65e393.js +4 -0
  654. package/dist/esm-es5/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  655. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  656. package/dist/esm-es5/index-eb1203fa.js +4 -0
  657. package/dist/esm-es5/index-f36a3fa4.js +4 -0
  658. package/dist/esm-es5/index.js +1 -1
  659. package/dist/esm-es5/input-shims-96f8d7c2.js +4 -0
  660. package/dist/esm-es5/input.utils-22a20c3a.js +4 -0
  661. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  662. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  663. package/dist/esm-es5/ion-alert.entry.js +1 -1
  664. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  665. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  666. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  667. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  668. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  669. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  670. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  671. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  672. package/dist/esm-es5/ion-chip.entry.js +1 -1
  673. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  674. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  675. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  676. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  677. package/dist/esm-es5/ion-img.entry.js +1 -1
  678. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  679. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  680. package/dist/esm-es5/ion-input.entry.js +1 -1
  681. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  682. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  683. package/dist/esm-es5/ion-loading.entry.js +1 -1
  684. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  685. package/dist/esm-es5/ion-modal.entry.js +1 -1
  686. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  687. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  688. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  689. package/dist/esm-es5/ion-picker.entry.js +1 -1
  690. package/dist/esm-es5/ion-popover.entry.js +1 -1
  691. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  692. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  693. package/dist/esm-es5/ion-range.entry.js +1 -1
  694. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  695. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  696. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  697. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  698. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  699. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  700. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  701. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  702. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  703. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  704. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  705. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  706. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  707. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  708. package/dist/esm-es5/ion-text.entry.js +1 -1
  709. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  710. package/dist/esm-es5/ion-toast.entry.js +1 -1
  711. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  712. package/dist/esm-es5/ionic-global-b30d2cc2.js +4 -0
  713. package/dist/esm-es5/ionic.js +1 -1
  714. package/dist/esm-es5/ios.transition-cbbf0bd1.js +4 -0
  715. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-0af19ead.js} +1 -1
  716. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-ceb6990d.js} +1 -1
  717. package/dist/esm-es5/keyboard-controller-7e2da6b9.js +4 -0
  718. package/dist/esm-es5/list-6524700c.js +4 -0
  719. package/dist/esm-es5/loader.js +1 -1
  720. package/dist/esm-es5/md.transition-21c93656.js +4 -0
  721. package/dist/esm-es5/notch-controller-cd983e05.js +4 -0
  722. package/dist/esm-es5/overlays-d60b1d1e.js +4 -0
  723. package/dist/esm-es5/status-tap-bf78b74d.js +4 -0
  724. package/dist/esm-es5/swipe-back-fff82194.js +4 -0
  725. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  726. package/dist/html.html-data.json +2400 -208
  727. package/dist/ionic/index.esm.js +1 -1
  728. package/dist/ionic/ionic.esm.js +1 -1
  729. package/dist/ionic/ionic.js +1 -1
  730. package/dist/ionic/p-01717254.entry.js +4 -0
  731. package/dist/ionic/p-0175d2ed.system.js +4 -0
  732. package/dist/ionic/p-01d80901.system.js +4 -0
  733. package/dist/ionic/p-020ce0a5.entry.js +4 -0
  734. package/dist/ionic/p-04ca2bc3.system.js +4 -0
  735. package/dist/ionic/p-051208d8.system.js +4 -0
  736. package/dist/ionic/p-0571060e.system.js +4 -0
  737. package/dist/ionic/p-05a95ec2.system.entry.js +4 -0
  738. package/dist/ionic/p-065bfce7.entry.js +4 -0
  739. package/dist/ionic/p-06a7a822.system.entry.js +4 -0
  740. package/dist/ionic/p-06ec4706.js +4 -0
  741. package/dist/ionic/p-07239f26.entry.js +4 -0
  742. package/dist/ionic/p-08779b2f.entry.js +4 -0
  743. package/dist/ionic/p-0ddb545c.system.entry.js +4 -0
  744. package/dist/ionic/p-0ea8053e.system.entry.js +4 -0
  745. package/dist/ionic/p-0eaae446.js +4 -0
  746. package/dist/ionic/p-107ddb23.entry.js +4 -0
  747. package/dist/ionic/p-110a551b.system.entry.js +4 -0
  748. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  749. package/dist/ionic/p-11ac6c97.entry.js +4 -0
  750. package/dist/ionic/p-148ed064.entry.js +4 -0
  751. package/dist/ionic/p-1613cd36.system.entry.js +4 -0
  752. package/dist/ionic/p-1bb9592a.entry.js +4 -0
  753. package/dist/ionic/p-1fb3f167.system.entry.js +4 -0
  754. package/dist/ionic/p-1fd5c378.system.js +4 -0
  755. package/dist/ionic/p-20ec20dc.system.js +4 -0
  756. package/dist/ionic/p-21bfb906.entry.js +4 -0
  757. package/dist/ionic/p-22b9f494.system.entry.js +4 -0
  758. package/dist/ionic/p-22d26239.entry.js +4 -0
  759. package/dist/ionic/p-243adf8c.js +4 -0
  760. package/dist/ionic/p-25462b1c.entry.js +4 -0
  761. package/dist/ionic/p-266448a7.system.entry.js +4 -0
  762. package/dist/ionic/p-289d78ed.entry.js +4 -0
  763. package/dist/ionic/p-29b8f112.js +4 -0
  764. package/dist/ionic/p-2a1b5646.system.js +4 -0
  765. package/dist/ionic/p-2a309c9b.system.entry.js +4 -0
  766. package/dist/ionic/p-2addc8ab.system.entry.js +4 -0
  767. package/dist/ionic/p-2b2ad756.entry.js +4 -0
  768. package/dist/ionic/{p-a93873de.system.js → p-2b8078c3.system.js} +1 -1
  769. package/dist/ionic/{p-89b61afc.js → p-2c0735b6.js} +1 -1
  770. package/dist/ionic/{p-f7ce606e.js → p-2cbcecdb.js} +1 -1
  771. package/dist/ionic/p-2cede1ff.system.entry.js +4 -0
  772. package/dist/ionic/{p-22bc235f.js → p-2d30c885.js} +1 -1
  773. package/dist/ionic/p-2f0fa144.system.entry.js +4 -0
  774. package/dist/ionic/p-2f14ca13.js +4 -0
  775. package/dist/ionic/p-30199da6.system.entry.js +4 -0
  776. package/dist/ionic/p-31956865.system.entry.js +4 -0
  777. package/dist/ionic/{p-f23124c4.system.js → p-34fa2a61.system.js} +2 -2
  778. package/dist/ionic/p-353475f7.system.entry.js +4 -0
  779. package/dist/ionic/p-36b11a30.system.entry.js +4 -0
  780. package/dist/ionic/p-387a27f2.entry.js +4 -0
  781. package/dist/ionic/p-394a86da.entry.js +4 -0
  782. package/dist/ionic/p-396bdcf7.js +4 -0
  783. package/dist/ionic/p-3b4dcba2.system.entry.js +4 -0
  784. package/dist/ionic/p-3b7155e5.system.entry.js +4 -0
  785. package/dist/ionic/p-3e9058ad.js +4 -0
  786. package/dist/ionic/p-3f3d894a.entry.js +4 -0
  787. package/dist/ionic/p-40e83885.system.entry.js +4 -0
  788. package/dist/ionic/p-40ea7c52.js +4 -0
  789. package/dist/ionic/p-41feda15.entry.js +4 -0
  790. package/dist/ionic/p-429dd2b5.system.js +4 -0
  791. package/dist/ionic/{p-a4866e3e.system.js → p-42e12526.system.js} +1 -1
  792. package/dist/ionic/p-443152fd.js +4 -0
  793. package/dist/ionic/p-4459a66e.system.js +4 -0
  794. package/dist/ionic/p-50f80a09.system.entry.js +4 -0
  795. package/dist/ionic/p-534b5031.js +4 -0
  796. package/dist/ionic/{p-66a5d6a8.js → p-578d5013.js} +1 -1
  797. package/dist/ionic/p-583f0c5f.js +4 -0
  798. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  799. package/dist/ionic/p-5b57d327.system.js +4 -0
  800. package/dist/ionic/p-5c9aab48.system.entry.js +4 -0
  801. package/dist/ionic/p-5dce701d.js +4 -0
  802. package/dist/ionic/{p-9146695e.system.js → p-5df8d52a.system.js} +1 -1
  803. package/dist/ionic/p-607c9c33.js +4 -0
  804. package/dist/ionic/p-622f15e2.system.entry.js +4 -0
  805. package/dist/ionic/p-6358892b.system.entry.js +4 -0
  806. package/dist/ionic/p-64771457.system.entry.js +4 -0
  807. package/dist/ionic/p-653e4810.entry.js +4 -0
  808. package/dist/ionic/p-6761a590.js +4 -0
  809. package/dist/ionic/p-6a0dd6bc.js +4 -0
  810. package/dist/ionic/p-6c003283.entry.js +4 -0
  811. package/dist/ionic/p-6e352a33.entry.js +4 -0
  812. package/dist/ionic/p-6e5a3112.system.entry.js +4 -0
  813. package/dist/ionic/{p-b06ac4a5.system.js → p-6eb15fc1.system.js} +1 -1
  814. package/dist/ionic/p-6f7d76d1.entry.js +4 -0
  815. package/dist/ionic/p-7071d7ca.js +4 -0
  816. package/dist/ionic/p-70d36cb8.system.js +4 -0
  817. package/dist/ionic/p-717baf25.entry.js +4 -0
  818. package/dist/ionic/p-71a5fe4f.system.entry.js +4 -0
  819. package/dist/ionic/p-76151fa4.entry.js +4 -0
  820. package/dist/ionic/p-787d9af9.js +4 -0
  821. package/dist/ionic/p-78fbb151.system.js +4 -0
  822. package/dist/ionic/p-7bdb9d37.system.entry.js +4 -0
  823. package/dist/ionic/p-7dbbb35d.entry.js +4 -0
  824. package/dist/ionic/p-7eafc9ce.system.entry.js +4 -0
  825. package/dist/ionic/p-80263807.system.js +4 -0
  826. package/dist/ionic/p-8055cb44.entry.js +4 -0
  827. package/dist/ionic/p-83787941.entry.js +4 -0
  828. package/dist/ionic/p-83d7c238.system.entry.js +4 -0
  829. package/dist/ionic/p-86a390a7.js +4 -0
  830. package/dist/ionic/p-8870fcbd.entry.js +4 -0
  831. package/dist/ionic/p-88f73181.entry.js +4 -0
  832. package/dist/ionic/p-8cba58fa.system.entry.js +4 -0
  833. package/dist/ionic/p-8cfd2546.entry.js +4 -0
  834. package/dist/ionic/p-8d19796f.system.entry.js +4 -0
  835. package/dist/ionic/p-8e2770ec.system.entry.js +4 -0
  836. package/dist/ionic/p-8f24bcef.entry.js +4 -0
  837. package/dist/ionic/p-8f3bd9ab.system.js +4 -0
  838. package/dist/ionic/p-8f506e8b.system.entry.js +4 -0
  839. package/dist/ionic/p-90ac5fdf.entry.js +4 -0
  840. package/dist/ionic/p-90ec152d.system.js +4 -0
  841. package/dist/ionic/p-9252b838.entry.js +4 -0
  842. package/dist/ionic/p-95109138.system.entry.js +4 -0
  843. package/dist/ionic/p-97ce7496.system.entry.js +4 -0
  844. package/dist/ionic/p-981b8086.entry.js +4 -0
  845. package/dist/ionic/p-9b177519.js +4 -0
  846. package/dist/ionic/p-9dab7e7c.js +4 -0
  847. package/dist/ionic/p-9ed53b73.system.entry.js +4 -0
  848. package/dist/ionic/p-9ed7fcdb.system.entry.js +4 -0
  849. package/dist/ionic/p-a0528005.system.entry.js +4 -0
  850. package/dist/ionic/p-a23bf697.entry.js +4 -0
  851. package/dist/ionic/p-a2834d5f.entry.js +4 -0
  852. package/dist/ionic/p-a3ad8084.system.js +4 -0
  853. package/dist/ionic/p-a4c11918.system.entry.js +4 -0
  854. package/dist/ionic/p-a4c64c42.entry.js +4 -0
  855. package/dist/ionic/p-a84c1142.entry.js +4 -0
  856. package/dist/ionic/{p-c7e16491.js → p-a92ad86c.js} +1 -1
  857. package/dist/ionic/p-a9af4103.js +4 -0
  858. package/dist/ionic/{p-9e45532a.system.js → p-b3b40a2f.system.js} +1 -1
  859. package/dist/ionic/p-b7cd5c72.entry.js +4 -0
  860. package/dist/ionic/p-b909ffd9.entry.js +4 -0
  861. package/dist/ionic/p-be1800d4.js +4 -0
  862. package/dist/ionic/{p-a6625de8.system.js → p-c0abf8f8.system.js} +1 -1
  863. package/dist/ionic/p-c248c88d.system.js +4 -0
  864. package/dist/ionic/p-c27342bf.system.entry.js +4 -0
  865. package/dist/ionic/p-c3ed361f.entry.js +4 -0
  866. package/dist/ionic/p-c47cb709.js +4 -0
  867. package/dist/ionic/p-cd95f723.entry.js +4 -0
  868. package/dist/ionic/{p-978bdf4c.system.js → p-d197eaeb.system.js} +1 -1
  869. package/dist/ionic/{p-f11a9436.system.js → p-d2536fe8.system.js} +1 -1
  870. package/dist/ionic/p-d2e6afa9.system.js +4 -0
  871. package/dist/ionic/p-d4a21287.js +4 -0
  872. package/dist/ionic/p-d4b468fb.system.entry.js +4 -0
  873. package/dist/ionic/p-d8630eee.entry.js +4 -0
  874. package/dist/ionic/p-d89aa717.system.entry.js +4 -0
  875. package/dist/ionic/p-d8e6b7d8.system.entry.js +4 -0
  876. package/dist/ionic/p-d953595d.entry.js +4 -0
  877. package/dist/ionic/p-dc98aaa3.system.entry.js +4 -0
  878. package/dist/ionic/p-dd7a3323.entry.js +4 -0
  879. package/dist/ionic/{p-27281edd.js → p-de9f68cb.js} +1 -1
  880. package/dist/ionic/p-deb05ec4.js +4 -0
  881. package/dist/ionic/{p-1bf5ec17.system.js → p-e028d393.system.js} +1 -1
  882. package/dist/ionic/p-e1c355d8.entry.js +4 -0
  883. package/dist/ionic/p-e2013908.entry.js +4 -0
  884. package/dist/ionic/p-e203a11e.entry.js +4 -0
  885. package/dist/ionic/p-e3a82b9b.system.entry.js +4 -0
  886. package/dist/ionic/p-e3b70846.system.js +4 -0
  887. package/dist/ionic/p-e3cb0381.entry.js +4 -0
  888. package/dist/ionic/p-e5ae7793.entry.js +4 -0
  889. package/dist/ionic/p-ea102c25.system.entry.js +4 -0
  890. package/dist/ionic/p-eb15cdb8.entry.js +4 -0
  891. package/dist/ionic/p-edf7cdf0.system.entry.js +4 -0
  892. package/dist/ionic/p-ef7f7ba9.js +4 -0
  893. package/dist/ionic/p-effec462.system.js +4 -0
  894. package/dist/ionic/{p-8985cdb6.system.js → p-f3fed3f9.system.js} +1 -1
  895. package/dist/ionic/p-fcedca77.system.js +4 -0
  896. package/dist/ionic/p-fdcaa201.system.js +4 -0
  897. package/dist/ionic/p-fe47b81f.system.entry.js +4 -0
  898. package/dist/ionic/p-ff030e07.system.entry.js +4 -0
  899. package/dist/ionic/p-ffa0b5e9.system.entry.js +4 -0
  900. package/dist/types/components/accordion/accordion.d.ts +5 -3
  901. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  902. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  903. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  904. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  905. package/dist/types/components/alert/alert.d.ts +3 -2
  906. package/dist/types/components/app/app.d.ts +6 -2
  907. package/dist/types/components/avatar/avatar.d.ts +28 -0
  908. package/dist/types/components/back-button/back-button.d.ts +2 -1
  909. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  910. package/dist/types/components/badge/badge.d.ts +28 -1
  911. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  912. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  913. package/dist/types/components/button/button.d.ts +15 -4
  914. package/dist/types/components/buttons/buttons.d.ts +5 -1
  915. package/dist/types/components/card/card.d.ts +8 -1
  916. package/dist/types/components/card-content/card-content.d.ts +2 -1
  917. package/dist/types/components/card-header/card-header.d.ts +3 -2
  918. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  919. package/dist/types/components/card-title/card-title.d.ts +2 -1
  920. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  921. package/dist/types/components/chip/chip.d.ts +19 -1
  922. package/dist/types/components/col/col.d.ts +4 -0
  923. package/dist/types/components/content/content.d.ts +3 -0
  924. package/dist/types/components/datetime/datetime.d.ts +26 -1
  925. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  926. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  927. package/dist/types/components/fab/fab.d.ts +4 -0
  928. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  929. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  930. package/dist/types/components/footer/footer.d.ts +4 -3
  931. package/dist/types/components/grid/grid.d.ts +4 -0
  932. package/dist/types/components/header/header.d.ts +9 -3
  933. package/dist/types/components/img/img.d.ts +3 -0
  934. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  935. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  936. package/dist/types/components/input/input.d.ts +31 -5
  937. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  938. package/dist/types/components/item/item.d.ts +11 -4
  939. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  940. package/dist/types/components/item-group/item-group.d.ts +4 -0
  941. package/dist/types/components/item-option/item-option.d.ts +11 -1
  942. package/dist/types/components/item-options/item-options.d.ts +4 -0
  943. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  944. package/dist/types/components/label/label.d.ts +2 -1
  945. package/dist/types/components/list/list.d.ts +15 -1
  946. package/dist/types/components/list-header/list-header.d.ts +2 -1
  947. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  948. package/dist/types/components/loading/loading.d.ts +3 -2
  949. package/dist/types/components/menu/menu.d.ts +3 -0
  950. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  951. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  952. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  953. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  954. package/dist/types/components/modal/modal.d.ts +11 -1
  955. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  956. package/dist/types/components/nav/nav.d.ts +5 -1
  957. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  958. package/dist/types/components/note/note.d.ts +2 -1
  959. package/dist/types/components/picker/picker.d.ts +2 -1
  960. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  961. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  962. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  963. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  964. package/dist/types/components/popover/popover.d.ts +6 -5
  965. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  966. package/dist/types/components/radio/radio.d.ts +2 -1
  967. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  968. package/dist/types/components/range/range.d.ts +2 -1
  969. package/dist/types/components/refresher/refresher.d.ts +2 -1
  970. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  971. package/dist/types/components/reorder/reorder.d.ts +9 -0
  972. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  973. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  974. package/dist/types/components/route/route.d.ts +4 -0
  975. package/dist/types/components/router/router.d.ts +4 -0
  976. package/dist/types/components/router-link/router-link.d.ts +4 -0
  977. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  978. package/dist/types/components/row/row.d.ts +4 -0
  979. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  980. package/dist/types/components/segment/segment.d.ts +2 -1
  981. package/dist/types/components/segment-button/segment-button.d.ts +4 -2
  982. package/dist/types/components/select/select.d.ts +41 -13
  983. package/dist/types/components/select-option/select-option.d.ts +4 -0
  984. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  985. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  986. package/dist/types/components/spinner/spinner.d.ts +15 -0
  987. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  988. package/dist/types/components/tab/tab.d.ts +4 -0
  989. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  990. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  991. package/dist/types/components/tabs/tabs.d.ts +3 -0
  992. package/dist/types/components/text/text.d.ts +2 -1
  993. package/dist/types/components/textarea/textarea.d.ts +17 -4
  994. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  995. package/dist/types/components/title/title.d.ts +4 -0
  996. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  997. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  998. package/dist/types/components/toast/toast.d.ts +12 -2
  999. package/dist/types/components/toggle/toggle.d.ts +15 -1
  1000. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1001. package/dist/types/components.d.ts +1420 -187
  1002. package/dist/types/global/ionic-global.d.ts +27 -2
  1003. package/dist/types/interface.d.ts +3 -0
  1004. package/dist/types/utils/config.d.ts +106 -2
  1005. package/dist/types/utils/focus-visible.d.ts +13 -0
  1006. package/dist/types/utils/helpers.d.ts +11 -0
  1007. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1008. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1009. package/hydrate/index.js +2552 -900
  1010. package/hydrate/index.mjs +2552 -900
  1011. package/package.json +9 -4
  1012. package/components/hardware-back-button.js +0 -115
  1013. package/components/index8.js +0 -128
  1014. package/dist/cjs/hardware-back-button-5a99001f.js +0 -122
  1015. package/dist/cjs/index-48b2a28e.js +0 -46
  1016. package/dist/cjs/index-c8d52405.js +0 -10
  1017. package/dist/cjs/ionic-global-acb665ad.js +0 -227
  1018. package/dist/esm/hardware-back-button-864101a3.js +0 -116
  1019. package/dist/esm/index-40894f4b.js +0 -167
  1020. package/dist/esm/index-738d7504.js +0 -42
  1021. package/dist/esm/index-a5d50daf.js +0 -7
  1022. package/dist/esm/ionic-global-ca86cf32.js +0 -221
  1023. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1024. package/dist/esm-es5/app-globals-7b6cbf1a.js +0 -4
  1025. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1026. package/dist/esm-es5/data-174ad5e0.js +0 -4
  1027. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1028. package/dist/esm-es5/framework-delegate-2eea1763.js +0 -4
  1029. package/dist/esm-es5/hardware-back-button-864101a3.js +0 -4
  1030. package/dist/esm-es5/helpers-78efeec3.js +0 -4
  1031. package/dist/esm-es5/index-40894f4b.js +0 -4
  1032. package/dist/esm-es5/index-738d7504.js +0 -4
  1033. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1034. package/dist/esm-es5/index-e919e353.js +0 -4
  1035. package/dist/esm-es5/index-ecb55b8d.js +0 -4
  1036. package/dist/esm-es5/index-f9f5d018.js +0 -4
  1037. package/dist/esm-es5/input-shims-7dc1f6dc.js +0 -4
  1038. package/dist/esm-es5/input.utils-28bf4ef0.js +0 -4
  1039. package/dist/esm-es5/ionic-global-ca86cf32.js +0 -4
  1040. package/dist/esm-es5/ios.transition-7fe5dbea.js +0 -4
  1041. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1042. package/dist/esm-es5/md.transition-8dc58b46.js +0 -4
  1043. package/dist/esm-es5/notch-controller-00d92e89.js +0 -4
  1044. package/dist/esm-es5/overlays-1bc809ec.js +0 -4
  1045. package/dist/esm-es5/status-tap-f6d08e9e.js +0 -4
  1046. package/dist/esm-es5/swipe-back-07df2095.js +0 -4
  1047. package/dist/ionic/p-027a48f1.entry.js +0 -4
  1048. package/dist/ionic/p-056b4c2a.system.entry.js +0 -4
  1049. package/dist/ionic/p-058b7f35.js +0 -4
  1050. package/dist/ionic/p-05b65d7a.entry.js +0 -4
  1051. package/dist/ionic/p-0904eb08.entry.js +0 -4
  1052. package/dist/ionic/p-0a456b7f.entry.js +0 -4
  1053. package/dist/ionic/p-0adb6909.system.entry.js +0 -4
  1054. package/dist/ionic/p-0bedc891.system.entry.js +0 -4
  1055. package/dist/ionic/p-0d1be7c9.system.entry.js +0 -4
  1056. package/dist/ionic/p-0ec5b7cf.system.js +0 -4
  1057. package/dist/ionic/p-15bb1dde.system.js +0 -4
  1058. package/dist/ionic/p-16130556.entry.js +0 -4
  1059. package/dist/ionic/p-16491015.entry.js +0 -4
  1060. package/dist/ionic/p-180b4f9a.entry.js +0 -4
  1061. package/dist/ionic/p-18f9b6d5.entry.js +0 -4
  1062. package/dist/ionic/p-19c32a76.entry.js +0 -4
  1063. package/dist/ionic/p-1c1d781d.system.entry.js +0 -4
  1064. package/dist/ionic/p-1c8b3ac9.entry.js +0 -4
  1065. package/dist/ionic/p-1d2844a5.system.entry.js +0 -4
  1066. package/dist/ionic/p-1de5dfcd.system.entry.js +0 -4
  1067. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1068. package/dist/ionic/p-1e4371bd.js +0 -4
  1069. package/dist/ionic/p-21891ead.js +0 -4
  1070. package/dist/ionic/p-28c81576.entry.js +0 -4
  1071. package/dist/ionic/p-29a5b4e4.entry.js +0 -4
  1072. package/dist/ionic/p-29da3dcd.entry.js +0 -4
  1073. package/dist/ionic/p-2a2c6bf4.system.entry.js +0 -4
  1074. package/dist/ionic/p-2b7827c7.js +0 -4
  1075. package/dist/ionic/p-317c1c08.entry.js +0 -4
  1076. package/dist/ionic/p-33518a04.entry.js +0 -4
  1077. package/dist/ionic/p-35b469f6.system.entry.js +0 -4
  1078. package/dist/ionic/p-35f14792.entry.js +0 -4
  1079. package/dist/ionic/p-383a6058.entry.js +0 -4
  1080. package/dist/ionic/p-3855fef7.system.js +0 -4
  1081. package/dist/ionic/p-38eaf9cf.system.entry.js +0 -4
  1082. package/dist/ionic/p-3dad3534.system.js +0 -4
  1083. package/dist/ionic/p-3f4327f7.js +0 -4
  1084. package/dist/ionic/p-40388335.system.js +0 -4
  1085. package/dist/ionic/p-41e70fa2.entry.js +0 -4
  1086. package/dist/ionic/p-44fde7d5.system.entry.js +0 -4
  1087. package/dist/ionic/p-44ff75ea.js +0 -4
  1088. package/dist/ionic/p-455cd7cc.system.js +0 -4
  1089. package/dist/ionic/p-4630688e.system.entry.js +0 -4
  1090. package/dist/ionic/p-48ded460.entry.js +0 -4
  1091. package/dist/ionic/p-49d53551.system.entry.js +0 -4
  1092. package/dist/ionic/p-4b07c60a.system.js +0 -4
  1093. package/dist/ionic/p-4eeca839.system.entry.js +0 -4
  1094. package/dist/ionic/p-50e0ce13.entry.js +0 -4
  1095. package/dist/ionic/p-5578033e.system.entry.js +0 -4
  1096. package/dist/ionic/p-579c78d2.system.entry.js +0 -4
  1097. package/dist/ionic/p-597ff9af.js +0 -4
  1098. package/dist/ionic/p-5b420123.entry.js +0 -4
  1099. package/dist/ionic/p-5b97abc9.entry.js +0 -4
  1100. package/dist/ionic/p-5fb1321f.entry.js +0 -4
  1101. package/dist/ionic/p-5fe5dc2c.system.entry.js +0 -4
  1102. package/dist/ionic/p-607aa181.entry.js +0 -4
  1103. package/dist/ionic/p-61373098.js +0 -4
  1104. package/dist/ionic/p-6155027f.system.entry.js +0 -4
  1105. package/dist/ionic/p-61e794fb.entry.js +0 -4
  1106. package/dist/ionic/p-624ecf03.js +0 -4
  1107. package/dist/ionic/p-63d1da62.system.entry.js +0 -4
  1108. package/dist/ionic/p-64d8ac48.js +0 -4
  1109. package/dist/ionic/p-657ada6a.entry.js +0 -4
  1110. package/dist/ionic/p-65943bec.system.entry.js +0 -4
  1111. package/dist/ionic/p-65e732b9.entry.js +0 -4
  1112. package/dist/ionic/p-6c044a1d.system.js +0 -4
  1113. package/dist/ionic/p-705fda69.system.js +0 -4
  1114. package/dist/ionic/p-70abb1f2.system.entry.js +0 -4
  1115. package/dist/ionic/p-747f9517.entry.js +0 -4
  1116. package/dist/ionic/p-7514f2f5.entry.js +0 -4
  1117. package/dist/ionic/p-756e4559.js +0 -4
  1118. package/dist/ionic/p-772d1657.system.js +0 -4
  1119. package/dist/ionic/p-77aa5fef.system.entry.js +0 -4
  1120. package/dist/ionic/p-792919fd.system.js +0 -4
  1121. package/dist/ionic/p-7b30edcc.js +0 -4
  1122. package/dist/ionic/p-7b886108.system.entry.js +0 -4
  1123. package/dist/ionic/p-7cc33a9a.system.js +0 -4
  1124. package/dist/ionic/p-7e3b5638.system.entry.js +0 -4
  1125. package/dist/ionic/p-824fe96b.system.entry.js +0 -4
  1126. package/dist/ionic/p-87b0d2c9.entry.js +0 -4
  1127. package/dist/ionic/p-8b1c1fd7.entry.js +0 -4
  1128. package/dist/ionic/p-8b22be32.system.entry.js +0 -4
  1129. package/dist/ionic/p-8d98e2bb.entry.js +0 -4
  1130. package/dist/ionic/p-8f94769b.entry.js +0 -4
  1131. package/dist/ionic/p-912131e9.system.entry.js +0 -4
  1132. package/dist/ionic/p-959cf042.system.entry.js +0 -4
  1133. package/dist/ionic/p-9870728f.js +0 -4
  1134. package/dist/ionic/p-9af7f110.js +0 -4
  1135. package/dist/ionic/p-9b069739.entry.js +0 -4
  1136. package/dist/ionic/p-a26d7667.system.entry.js +0 -4
  1137. package/dist/ionic/p-a3c931ad.system.js +0 -4
  1138. package/dist/ionic/p-a520973b.entry.js +0 -4
  1139. package/dist/ionic/p-a768ae50.entry.js +0 -4
  1140. package/dist/ionic/p-a9198501.system.entry.js +0 -4
  1141. package/dist/ionic/p-ab7337e1.entry.js +0 -4
  1142. package/dist/ionic/p-abe101da.system.js +0 -4
  1143. package/dist/ionic/p-ac09b6e9.system.entry.js +0 -4
  1144. package/dist/ionic/p-ac58d726.system.entry.js +0 -4
  1145. package/dist/ionic/p-b1673667.entry.js +0 -4
  1146. package/dist/ionic/p-b1f9fbe8.system.entry.js +0 -4
  1147. package/dist/ionic/p-b2ee0628.system.entry.js +0 -4
  1148. package/dist/ionic/p-b87a9f1d.entry.js +0 -4
  1149. package/dist/ionic/p-b8a461f5.system.entry.js +0 -4
  1150. package/dist/ionic/p-b9fa7882.js +0 -4
  1151. package/dist/ionic/p-bf64af90.system.js +0 -4
  1152. package/dist/ionic/p-c005cc37.entry.js +0 -4
  1153. package/dist/ionic/p-c27c57ea.system.entry.js +0 -4
  1154. package/dist/ionic/p-c3f9d9fe.js +0 -4
  1155. package/dist/ionic/p-c468af8a.system.js +0 -4
  1156. package/dist/ionic/p-c53c414d.system.entry.js +0 -4
  1157. package/dist/ionic/p-c609b315.system.entry.js +0 -4
  1158. package/dist/ionic/p-c61cc894.js +0 -4
  1159. package/dist/ionic/p-c63d8dc1.js +0 -4
  1160. package/dist/ionic/p-c70cf874.system.entry.js +0 -4
  1161. package/dist/ionic/p-cbebc567.entry.js +0 -4
  1162. package/dist/ionic/p-ccb740ea.entry.js +0 -4
  1163. package/dist/ionic/p-cec54707.system.entry.js +0 -4
  1164. package/dist/ionic/p-d40f2b7a.js +0 -4
  1165. package/dist/ionic/p-d47265c8.js +0 -4
  1166. package/dist/ionic/p-d70a9e6d.system.js +0 -4
  1167. package/dist/ionic/p-d882f1e2.system.entry.js +0 -4
  1168. package/dist/ionic/p-d8b81d20.entry.js +0 -4
  1169. package/dist/ionic/p-db3b409e.system.entry.js +0 -4
  1170. package/dist/ionic/p-dcfb7283.entry.js +0 -4
  1171. package/dist/ionic/p-df54ab6b.system.entry.js +0 -4
  1172. package/dist/ionic/p-e0d0bc88.system.entry.js +0 -4
  1173. package/dist/ionic/p-e29c5aab.system.entry.js +0 -4
  1174. package/dist/ionic/p-e2ce5f8b.entry.js +0 -4
  1175. package/dist/ionic/p-e3e4eed7.entry.js +0 -4
  1176. package/dist/ionic/p-e4683bfd.system.entry.js +0 -4
  1177. package/dist/ionic/p-e4d2c281.entry.js +0 -4
  1178. package/dist/ionic/p-e6cdfa96.system.entry.js +0 -4
  1179. package/dist/ionic/p-e6e0331b.entry.js +0 -4
  1180. package/dist/ionic/p-e89451e8.system.entry.js +0 -4
  1181. package/dist/ionic/p-e958e381.system.entry.js +0 -4
  1182. package/dist/ionic/p-ece78e7b.js +0 -4
  1183. package/dist/ionic/p-ee86cfff.system.js +0 -4
  1184. package/dist/ionic/p-ef4292b9.js +0 -4
  1185. package/dist/ionic/p-f201b53a.system.js +0 -4
  1186. package/dist/ionic/p-f6bb9be7.system.entry.js +0 -4
  1187. package/dist/ionic/p-f834322a.entry.js +0 -4
  1188. package/dist/ionic/p-f896194a.system.entry.js +0 -4
  1189. package/dist/ionic/p-fa70eaab.entry.js +0 -4
  1190. package/dist/ionic/p-ff6be116.entry.js +0 -4
  1191. package/dist/ionic/p-ffa3ba3c.js +0 -4
  1192. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -86,17 +86,21 @@ export namespace Components {
86
86
  */
87
87
  "disabled": boolean;
88
88
  /**
89
- * The mode determines which platform styles to use.
89
+ * The mode determines the platform behaviors of the component.
90
90
  */
91
91
  "mode"?: "ios" | "md";
92
92
  /**
93
93
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
94
94
  */
95
95
  "readonly": boolean;
96
+ /**
97
+ * The theme determines the visual appearance of the component.
98
+ */
99
+ "theme"?: "ios" | "md" | "ionic";
96
100
  /**
97
101
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
98
102
  */
99
- "toggleIcon": string;
103
+ "toggleIcon"?: string;
100
104
  /**
101
105
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
102
106
  */
@@ -121,7 +125,7 @@ export namespace Components {
121
125
  "expand": 'compact' | 'inset';
122
126
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
123
127
  /**
124
- * The mode determines which platform styles to use.
128
+ * The mode determines the platform behaviors of the component.
125
129
  */
126
130
  "mode"?: "ios" | "md";
127
131
  /**
@@ -136,6 +140,14 @@ export namespace Components {
136
140
  * 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.
137
141
  */
138
142
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
143
+ /**
144
+ * 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"`.
145
+ */
146
+ "shape"?: 'soft' | 'round' | 'rectangular';
147
+ /**
148
+ * The theme determines the visual appearance of the component.
149
+ */
150
+ "theme"?: "ios" | "md" | "ionic";
139
151
  /**
140
152
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
141
153
  */
@@ -191,7 +203,7 @@ export namespace Components {
191
203
  */
192
204
  "leaveAnimation"?: AnimationBuilder;
193
205
  /**
194
- * The mode determines which platform styles to use.
206
+ * The mode determines the platform behaviors of the component.
195
207
  */
196
208
  "mode"?: "ios" | "md";
197
209
  /**
@@ -212,7 +224,11 @@ export namespace Components {
212
224
  */
213
225
  "subHeader"?: string;
214
226
  /**
215
- * 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).
227
+ * The theme determines the visual appearance of the component.
228
+ */
229
+ "theme"?: "ios" | "md" | "ionic";
230
+ /**
231
+ * 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).
216
232
  */
217
233
  "translucent": boolean;
218
234
  /**
@@ -278,7 +294,7 @@ export namespace Components {
278
294
  */
279
295
  "message"?: string | IonicSafeString;
280
296
  /**
281
- * The mode determines which platform styles to use.
297
+ * The mode determines the platform behaviors of the component.
282
298
  */
283
299
  "mode"?: "ios" | "md";
284
300
  /**
@@ -299,7 +315,11 @@ export namespace Components {
299
315
  */
300
316
  "subHeader"?: string;
301
317
  /**
302
- * 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).
318
+ * The theme determines the visual appearance of the component.
319
+ */
320
+ "theme"?: "ios" | "md" | "ionic";
321
+ /**
322
+ * 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).
303
323
  */
304
324
  "translucent": boolean;
305
325
  /**
@@ -308,12 +328,37 @@ export namespace Components {
308
328
  "trigger": string | undefined;
309
329
  }
310
330
  interface IonApp {
331
+ /**
332
+ * The mode determines the platform behaviors of the component.
333
+ */
334
+ "mode"?: "ios" | "md";
311
335
  /**
312
336
  * 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.)
337
+ * @param elements - The elements to set focus on.
313
338
  */
314
339
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
340
+ /**
341
+ * The theme determines the visual appearance of the component.
342
+ */
343
+ "theme"?: "ios" | "md" | "ionic";
315
344
  }
316
345
  interface IonAvatar {
346
+ /**
347
+ * The mode determines the platform behaviors of the component.
348
+ */
349
+ "mode"?: "ios" | "md";
350
+ /**
351
+ * 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.
352
+ */
353
+ "shape"?: 'soft' | 'round' | 'rectangular';
354
+ /**
355
+ * 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.
356
+ */
357
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
358
+ /**
359
+ * The theme determines the visual appearance of the component.
360
+ */
361
+ "theme"?: "ios" | "md" | "ionic";
317
362
  }
318
363
  interface IonBackButton {
319
364
  /**
@@ -333,7 +378,7 @@ export namespace Components {
333
378
  */
334
379
  "icon"?: string | null;
335
380
  /**
336
- * The mode determines which platform styles to use.
381
+ * The mode determines the platform behaviors of the component.
337
382
  */
338
383
  "mode"?: "ios" | "md";
339
384
  /**
@@ -344,12 +389,20 @@ export namespace Components {
344
389
  * The text to display in the back button.
345
390
  */
346
391
  "text"?: string | null;
392
+ /**
393
+ * The theme determines the visual appearance of the component.
394
+ */
395
+ "theme"?: "ios" | "md" | "ionic";
347
396
  /**
348
397
  * The type of the button.
349
398
  */
350
399
  "type": 'submit' | 'reset' | 'button';
351
400
  }
352
401
  interface IonBackdrop {
402
+ /**
403
+ * The mode determines the platform behaviors of the component.
404
+ */
405
+ "mode"?: "ios" | "md";
353
406
  /**
354
407
  * If `true`, the backdrop will stop propagation on tap.
355
408
  */
@@ -358,6 +411,10 @@ export namespace Components {
358
411
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
359
412
  */
360
413
  "tappable": boolean;
414
+ /**
415
+ * The theme determines the visual appearance of the component.
416
+ */
417
+ "theme"?: "ios" | "md" | "ionic";
361
418
  /**
362
419
  * If `true`, the backdrop will be visible.
363
420
  */
@@ -369,9 +426,25 @@ export namespace Components {
369
426
  */
370
427
  "color"?: Color;
371
428
  /**
372
- * The mode determines which platform styles to use.
429
+ * The mode determines the platform behaviors of the component.
373
430
  */
374
431
  "mode"?: "ios" | "md";
432
+ /**
433
+ * 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.
434
+ */
435
+ "shape"?: 'soft' | 'round | rectangular';
436
+ /**
437
+ * Set to `"xxsmall"` for the smallest badge. Set to "xsmall" for a very small badge. Set to `"small"` for a small badge. Set to "medium" for a medium badge. Set to "large" for a large badge. Set to `"xlarge"` for the largest badge. Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
438
+ */
439
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
440
+ /**
441
+ * The theme determines the visual appearance of the component.
442
+ */
443
+ "theme"?: "ios" | "md" | "ionic";
444
+ /**
445
+ * 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.
446
+ */
447
+ "vertical"?: 'top' | 'bottom';
375
448
  }
376
449
  interface IonBreadcrumb {
377
450
  /**
@@ -397,7 +470,7 @@ export namespace Components {
397
470
  "href": string | undefined;
398
471
  "last": boolean;
399
472
  /**
400
- * The mode determines which platform styles to use.
473
+ * The mode determines the platform behaviors of the component.
401
474
  */
402
475
  "mode"?: "ios" | "md";
403
476
  /**
@@ -421,6 +494,10 @@ export namespace Components {
421
494
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
422
495
  */
423
496
  "target": string | undefined;
497
+ /**
498
+ * The theme determines the visual appearance of the component.
499
+ */
500
+ "theme"?: "ios" | "md" | "ionic";
424
501
  }
425
502
  interface IonBreadcrumbs {
426
503
  /**
@@ -440,9 +517,13 @@ export namespace Components {
440
517
  */
441
518
  "maxItems"?: number;
442
519
  /**
443
- * The mode determines which platform styles to use.
520
+ * The mode determines the platform behaviors of the component.
444
521
  */
445
522
  "mode"?: "ios" | "md";
523
+ /**
524
+ * The theme determines the visual appearance of the component.
525
+ */
526
+ "theme"?: "ios" | "md" | "ionic";
446
527
  }
447
528
  interface IonButton {
448
529
  /**
@@ -478,7 +559,7 @@ export namespace Components {
478
559
  */
479
560
  "href": string | undefined;
480
561
  /**
481
- * The mode determines which platform styles to use.
562
+ * The mode determines the platform behaviors of the component.
482
563
  */
483
564
  "mode"?: "ios" | "md";
484
565
  /**
@@ -494,13 +575,13 @@ export namespace Components {
494
575
  */
495
576
  "routerDirection": RouterDirection;
496
577
  /**
497
- * Set to `"round"` for a button with more rounded corners.
578
+ * 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.
498
579
  */
499
- "shape"?: 'round';
580
+ "shape"?: 'soft' | 'round' | 'rectangular';
500
581
  /**
501
582
  * 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.
502
583
  */
503
- "size"?: 'small' | 'default' | 'large';
584
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
504
585
  /**
505
586
  * If `true`, activates a button with a heavier font weight.
506
587
  */
@@ -509,6 +590,10 @@ export namespace Components {
509
590
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
510
591
  */
511
592
  "target": string | undefined;
593
+ /**
594
+ * The theme determines the visual appearance of the component.
595
+ */
596
+ "theme"?: "ios" | "md" | "ionic";
512
597
  /**
513
598
  * The type of the button.
514
599
  */
@@ -516,9 +601,17 @@ export namespace Components {
516
601
  }
517
602
  interface IonButtons {
518
603
  /**
519
- * 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)
604
+ * 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)
520
605
  */
521
606
  "collapse": boolean;
607
+ /**
608
+ * The mode determines the platform behaviors of the component.
609
+ */
610
+ "mode"?: "ios" | "md";
611
+ /**
612
+ * The theme determines the visual appearance of the component.
613
+ */
614
+ "theme"?: "ios" | "md" | "ionic";
522
615
  }
523
616
  interface IonCard {
524
617
  /**
@@ -542,7 +635,7 @@ export namespace Components {
542
635
  */
543
636
  "href": string | undefined;
544
637
  /**
545
- * The mode determines which platform styles to use.
638
+ * The mode determines the platform behaviors of the component.
546
639
  */
547
640
  "mode"?: "ios" | "md";
548
641
  /**
@@ -557,10 +650,18 @@ export namespace Components {
557
650
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
558
651
  */
559
652
  "routerDirection": RouterDirection;
653
+ /**
654
+ * 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"`.
655
+ */
656
+ "shape"?: 'soft' | 'round' | 'rectangular';
560
657
  /**
561
658
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
562
659
  */
563
660
  "target": string | undefined;
661
+ /**
662
+ * The theme determines the visual appearance of the component.
663
+ */
664
+ "theme"?: "ios" | "md" | "ionic";
564
665
  /**
565
666
  * The type of the button. Only used when an `onclick` or `button` property is present.
566
667
  */
@@ -568,9 +669,13 @@ export namespace Components {
568
669
  }
569
670
  interface IonCardContent {
570
671
  /**
571
- * The mode determines which platform styles to use.
672
+ * The mode determines the platform behaviors of the component.
572
673
  */
573
674
  "mode"?: "ios" | "md";
675
+ /**
676
+ * The theme determines the visual appearance of the component.
677
+ */
678
+ "theme"?: "ios" | "md" | "ionic";
574
679
  }
575
680
  interface IonCardHeader {
576
681
  /**
@@ -578,11 +683,15 @@ export namespace Components {
578
683
  */
579
684
  "color"?: Color;
580
685
  /**
581
- * The mode determines which platform styles to use.
686
+ * The mode determines the platform behaviors of the component.
582
687
  */
583
688
  "mode"?: "ios" | "md";
584
689
  /**
585
- * 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).
690
+ * The theme determines the visual appearance of the component.
691
+ */
692
+ "theme"?: "ios" | "md" | "ionic";
693
+ /**
694
+ * 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).
586
695
  */
587
696
  "translucent": boolean;
588
697
  }
@@ -592,9 +701,13 @@ export namespace Components {
592
701
  */
593
702
  "color"?: Color;
594
703
  /**
595
- * The mode determines which platform styles to use.
704
+ * The mode determines the platform behaviors of the component.
596
705
  */
597
706
  "mode"?: "ios" | "md";
707
+ /**
708
+ * The theme determines the visual appearance of the component.
709
+ */
710
+ "theme"?: "ios" | "md" | "ionic";
598
711
  }
599
712
  interface IonCardTitle {
600
713
  /**
@@ -602,9 +715,13 @@ export namespace Components {
602
715
  */
603
716
  "color"?: Color;
604
717
  /**
605
- * The mode determines which platform styles to use.
718
+ * The mode determines the platform behaviors of the component.
606
719
  */
607
720
  "mode"?: "ios" | "md";
721
+ /**
722
+ * The theme determines the visual appearance of the component.
723
+ */
724
+ "theme"?: "ios" | "md" | "ionic";
608
725
  }
609
726
  interface IonCheckbox {
610
727
  /**
@@ -644,7 +761,7 @@ export namespace Components {
644
761
  */
645
762
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
646
763
  /**
647
- * The mode determines which platform styles to use.
764
+ * The mode determines the platform behaviors of the component.
648
765
  */
649
766
  "mode"?: "ios" | "md";
650
767
  /**
@@ -656,6 +773,18 @@ export namespace Components {
656
773
  */
657
774
  "required": boolean;
658
775
  "setFocus": () => Promise<void>;
776
+ /**
777
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
778
+ */
779
+ "shape"?: 'soft' | 'rectangular';
780
+ /**
781
+ * Set to `"small"` for a checkbox with less height and padding.
782
+ */
783
+ "size"?: 'small';
784
+ /**
785
+ * The theme determines the visual appearance of the component.
786
+ */
787
+ "theme"?: "ios" | "md" | "ionic";
659
788
  /**
660
789
  * 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>`.
661
790
  */
@@ -671,15 +800,31 @@ export namespace Components {
671
800
  */
672
801
  "disabled": boolean;
673
802
  /**
674
- * The mode determines which platform styles to use.
803
+ * The mode determines the platform behaviors of the component.
675
804
  */
676
805
  "mode"?: "ios" | "md";
677
806
  /**
678
807
  * Display an outline style button.
679
808
  */
680
809
  "outline": boolean;
810
+ /**
811
+ * 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.
812
+ */
813
+ "shape"?: 'soft' | 'round' | 'rectangular';
814
+ /**
815
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
816
+ */
817
+ "size"?: 'small' | 'large';
818
+ /**
819
+ * The theme determines the visual appearance of the component.
820
+ */
821
+ "theme"?: "ios" | "md" | "ionic";
681
822
  }
682
823
  interface IonCol {
824
+ /**
825
+ * The mode determines the platform behaviors of the component.
826
+ */
827
+ "mode"?: "ios" | "md";
683
828
  /**
684
829
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
685
830
  */
@@ -776,6 +921,10 @@ export namespace Components {
776
921
  * 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.
777
922
  */
778
923
  "sizeXs"?: string;
924
+ /**
925
+ * The theme determines the visual appearance of the component.
926
+ */
927
+ "theme"?: "ios" | "md" | "ionic";
779
928
  }
780
929
  interface IonContent {
781
930
  /**
@@ -802,6 +951,10 @@ export namespace Components {
802
951
  * 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.
803
952
  */
804
953
  "getScrollElement": () => Promise<HTMLElement>;
954
+ /**
955
+ * The mode determines the platform behaviors of the component.
956
+ */
957
+ "mode"?: "ios" | "md";
805
958
  /**
806
959
  * Scroll by a specified X/Y distance in the component.
807
960
  * @param x The amount to scroll by on the horizontal axis.
@@ -838,6 +991,10 @@ export namespace Components {
838
991
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
839
992
  */
840
993
  "scrollY": boolean;
994
+ /**
995
+ * The theme determines the visual appearance of the component.
996
+ */
997
+ "theme"?: "ios" | "md" | "ionic";
841
998
  }
842
999
  interface IonDatetime {
843
1000
  /**
@@ -913,7 +1070,7 @@ export namespace Components {
913
1070
  */
914
1071
  "minuteValues"?: number[] | number | string;
915
1072
  /**
916
- * The mode determines which platform styles to use.
1073
+ * The mode determines the platform behaviors of the component.
917
1074
  */
918
1075
  "mode"?: "ios" | "md";
919
1076
  /**
@@ -964,6 +1121,10 @@ export namespace Components {
964
1121
  * If `cover`, the `ion-datetime` will expand to cover the full width of its container. If `fixed`, the `ion-datetime` will have a fixed width.
965
1122
  */
966
1123
  "size": 'cover' | 'fixed';
1124
+ /**
1125
+ * The theme determines the visual appearance of the component.
1126
+ */
1127
+ "theme"?: "ios" | "md" | "ionic";
967
1128
  /**
968
1129
  * 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.
969
1130
  */
@@ -991,9 +1152,13 @@ export namespace Components {
991
1152
  */
992
1153
  "disabled": boolean;
993
1154
  /**
994
- * The mode determines which platform styles to use.
1155
+ * The mode determines the platform behaviors of the component.
995
1156
  */
996
1157
  "mode"?: "ios" | "md";
1158
+ /**
1159
+ * The theme determines the visual appearance of the component.
1160
+ */
1161
+ "theme"?: "ios" | "md" | "ionic";
997
1162
  }
998
1163
  interface IonFab {
999
1164
  /**
@@ -1012,6 +1177,14 @@ export namespace Components {
1012
1177
  * Where to align the fab horizontally in the viewport.
1013
1178
  */
1014
1179
  "horizontal"?: 'start' | 'end' | 'center';
1180
+ /**
1181
+ * The mode determines the platform behaviors of the component.
1182
+ */
1183
+ "mode"?: "ios" | "md";
1184
+ /**
1185
+ * The theme determines the visual appearance of the component.
1186
+ */
1187
+ "theme"?: "ios" | "md" | "ionic";
1015
1188
  /**
1016
1189
  * Opens/Closes the FAB list container.
1017
1190
  */
@@ -1029,7 +1202,7 @@ export namespace Components {
1029
1202
  /**
1030
1203
  * 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.
1031
1204
  */
1032
- "closeIcon": string;
1205
+ "closeIcon"?: string;
1033
1206
  /**
1034
1207
  * 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).
1035
1208
  */
@@ -1047,7 +1220,7 @@ export namespace Components {
1047
1220
  */
1048
1221
  "href": string | undefined;
1049
1222
  /**
1050
- * The mode determines which platform styles to use.
1223
+ * The mode determines the platform behaviors of the component.
1051
1224
  */
1052
1225
  "mode"?: "ios" | "md";
1053
1226
  /**
@@ -1075,7 +1248,11 @@ export namespace Components {
1075
1248
  */
1076
1249
  "target": string | undefined;
1077
1250
  /**
1078
- * 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).
1251
+ * The theme determines the visual appearance of the component.
1252
+ */
1253
+ "theme"?: "ios" | "md" | "ionic";
1254
+ /**
1255
+ * 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).
1079
1256
  */
1080
1257
  "translucent": boolean;
1081
1258
  /**
@@ -1088,22 +1265,34 @@ export namespace Components {
1088
1265
  * If `true`, the fab list will show all fab buttons in the list.
1089
1266
  */
1090
1267
  "activated": boolean;
1268
+ /**
1269
+ * The mode determines the platform behaviors of the component.
1270
+ */
1271
+ "mode"?: "ios" | "md";
1091
1272
  /**
1092
1273
  * The side the fab list will show on relative to the main fab button.
1093
1274
  */
1094
1275
  "side": 'start' | 'end' | 'top' | 'bottom';
1276
+ /**
1277
+ * The theme determines the visual appearance of the component.
1278
+ */
1279
+ "theme"?: "ios" | "md" | "ionic";
1095
1280
  }
1096
1281
  interface IonFooter {
1097
1282
  /**
1098
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1283
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1099
1284
  */
1100
1285
  "collapse"?: 'fade';
1101
1286
  /**
1102
- * The mode determines which platform styles to use.
1287
+ * The mode determines the platform behaviors of the component.
1103
1288
  */
1104
1289
  "mode"?: "ios" | "md";
1105
1290
  /**
1106
- * 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.
1291
+ * The theme determines the visual appearance of the component.
1292
+ */
1293
+ "theme"?: "ios" | "md" | "ionic";
1294
+ /**
1295
+ * 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.
1107
1296
  */
1108
1297
  "translucent": boolean;
1109
1298
  }
@@ -1112,18 +1301,34 @@ export namespace Components {
1112
1301
  * If `true`, the grid will have a fixed width based on the screen size.
1113
1302
  */
1114
1303
  "fixed": boolean;
1304
+ /**
1305
+ * The mode determines the platform behaviors of the component.
1306
+ */
1307
+ "mode"?: "ios" | "md";
1308
+ /**
1309
+ * The theme determines the visual appearance of the component.
1310
+ */
1311
+ "theme"?: "ios" | "md" | "ionic";
1115
1312
  }
1116
1313
  interface IonHeader {
1117
1314
  /**
1118
- * 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)
1315
+ * 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)
1119
1316
  */
1120
1317
  "collapse"?: 'condense' | 'fade';
1121
1318
  /**
1122
- * The mode determines which platform styles to use.
1319
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1320
+ */
1321
+ "divider": boolean;
1322
+ /**
1323
+ * The mode determines the platform behaviors of the component.
1123
1324
  */
1124
1325
  "mode"?: "ios" | "md";
1125
1326
  /**
1126
- * 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.
1327
+ * The theme determines the visual appearance of the component.
1328
+ */
1329
+ "theme"?: "ios" | "md" | "ionic";
1330
+ /**
1331
+ * If `true`, the 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). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
1127
1332
  */
1128
1333
  "translucent": boolean;
1129
1334
  }
@@ -1132,10 +1337,18 @@ export namespace Components {
1132
1337
  * 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.
1133
1338
  */
1134
1339
  "alt"?: string;
1340
+ /**
1341
+ * The mode determines the platform behaviors of the component.
1342
+ */
1343
+ "mode"?: "ios" | "md";
1135
1344
  /**
1136
1345
  * The image URL. This attribute is mandatory for the `<img>` element.
1137
1346
  */
1138
1347
  "src"?: string;
1348
+ /**
1349
+ * The theme determines the visual appearance of the component.
1350
+ */
1351
+ "theme"?: "ios" | "md" | "ionic";
1139
1352
  }
1140
1353
  interface IonInfiniteScroll {
1141
1354
  /**
@@ -1146,10 +1359,18 @@ export namespace Components {
1146
1359
  * If `true`, the infinite scroll will be hidden and scroll event listeners will be removed. Set this to true to disable the infinite scroll from actively trying to receive new data while scrolling. This is useful when it is known that there is no more data that can be added, and the infinite scroll is no longer needed.
1147
1360
  */
1148
1361
  "disabled": boolean;
1362
+ /**
1363
+ * The mode determines the platform behaviors of the component.
1364
+ */
1365
+ "mode"?: "ios" | "md";
1149
1366
  /**
1150
1367
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1151
1368
  */
1152
1369
  "position": 'top' | 'bottom';
1370
+ /**
1371
+ * The theme determines the visual appearance of the component.
1372
+ */
1373
+ "theme"?: "ios" | "md" | "ionic";
1153
1374
  /**
1154
1375
  * 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.
1155
1376
  */
@@ -1164,6 +1385,14 @@ export namespace Components {
1164
1385
  * 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.
1165
1386
  */
1166
1387
  "loadingText"?: string | IonicSafeString;
1388
+ /**
1389
+ * The mode determines the platform behaviors of the component.
1390
+ */
1391
+ "mode"?: "ios" | "md";
1392
+ /**
1393
+ * The theme determines the visual appearance of the component.
1394
+ */
1395
+ "theme"?: "ios" | "md" | "ionic";
1167
1396
  }
1168
1397
  interface IonInput {
1169
1398
  /**
@@ -1223,7 +1452,7 @@ export namespace Components {
1223
1452
  */
1224
1453
  "errorText"?: string;
1225
1454
  /**
1226
- * 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.
1455
+ * 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"`.
1227
1456
  */
1228
1457
  "fill"?: 'outline' | 'solid';
1229
1458
  /**
@@ -1243,9 +1472,9 @@ export namespace Components {
1243
1472
  */
1244
1473
  "label"?: string;
1245
1474
  /**
1246
- * 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 ("...").
1475
+ * 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.
1247
1476
  */
1248
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1477
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1249
1478
  /**
1250
1479
  * The maximum value, which must not be less than its minimum (min attribute) value.
1251
1480
  */
@@ -1263,7 +1492,7 @@ export namespace Components {
1263
1492
  */
1264
1493
  "minlength"?: number;
1265
1494
  /**
1266
- * The mode determines which platform styles to use.
1495
+ * The mode determines the platform behaviors of the component.
1267
1496
  */
1268
1497
  "mode"?: "ios" | "md";
1269
1498
  /**
@@ -1295,9 +1524,13 @@ export namespace Components {
1295
1524
  */
1296
1525
  "setFocus": () => Promise<void>;
1297
1526
  /**
1298
- * The shape of the input. If "round" it will have an increased border radius.
1527
+ * 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"`.
1528
+ */
1529
+ "shape"?: 'soft' | 'round' | 'rectangular';
1530
+ /**
1531
+ * 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.
1299
1532
  */
1300
- "shape"?: 'round';
1533
+ "size"?: 'medium' | 'large' | 'xlarge';
1301
1534
  /**
1302
1535
  * If `true`, the element will have its spelling and grammar checked.
1303
1536
  */
@@ -1306,6 +1539,10 @@ export namespace Components {
1306
1539
  * 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.
1307
1540
  */
1308
1541
  "step"?: string;
1542
+ /**
1543
+ * The theme determines the visual appearance of the component.
1544
+ */
1545
+ "theme"?: "ios" | "md" | "ionic";
1309
1546
  /**
1310
1547
  * The type of control to display. The default type is text.
1311
1548
  */
@@ -1344,13 +1581,13 @@ export namespace Components {
1344
1581
  */
1345
1582
  "color"?: Color;
1346
1583
  /**
1347
- * 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.
1584
+ * 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.
1348
1585
  */
1349
1586
  "detail"?: boolean;
1350
1587
  /**
1351
1588
  * The icon to use when `detail` is set to `true`.
1352
1589
  */
1353
- "detailIcon": string;
1590
+ "detailIcon"?: string;
1354
1591
  /**
1355
1592
  * If `true`, the user cannot interact with the item.
1356
1593
  */
@@ -1368,7 +1605,7 @@ export namespace Components {
1368
1605
  */
1369
1606
  "lines"?: 'full' | 'inset' | 'none';
1370
1607
  /**
1371
- * The mode determines which platform styles to use.
1608
+ * The mode determines the platform behaviors of the component.
1372
1609
  */
1373
1610
  "mode"?: "ios" | "md";
1374
1611
  /**
@@ -1387,6 +1624,10 @@ export namespace Components {
1387
1624
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1388
1625
  */
1389
1626
  "target": string | undefined;
1627
+ /**
1628
+ * The theme determines the visual appearance of the component.
1629
+ */
1630
+ "theme"?: "ios" | "md" | "ionic";
1390
1631
  /**
1391
1632
  * The type of the button. Only used when an `onclick` or `button` property is present.
1392
1633
  */
@@ -1398,15 +1639,27 @@ export namespace Components {
1398
1639
  */
1399
1640
  "color"?: Color;
1400
1641
  /**
1401
- * The mode determines which platform styles to use.
1642
+ * The mode determines the platform behaviors of the component.
1402
1643
  */
1403
1644
  "mode"?: "ios" | "md";
1404
1645
  /**
1405
1646
  * When it's set to `true`, the item-divider will stay visible when it reaches the top of the viewport until the next `ion-item-divider` replaces it. This feature relies in `position:sticky`: https://caniuse.com/#feat=css-sticky
1406
1647
  */
1407
1648
  "sticky": boolean;
1649
+ /**
1650
+ * The theme determines the visual appearance of the component.
1651
+ */
1652
+ "theme"?: "ios" | "md" | "ionic";
1408
1653
  }
1409
1654
  interface IonItemGroup {
1655
+ /**
1656
+ * The mode determines the platform behaviors of the component.
1657
+ */
1658
+ "mode"?: "ios" | "md";
1659
+ /**
1660
+ * The theme determines the visual appearance of the component.
1661
+ */
1662
+ "theme"?: "ios" | "md" | "ionic";
1410
1663
  }
1411
1664
  interface IonItemOption {
1412
1665
  /**
@@ -1430,17 +1683,25 @@ export namespace Components {
1430
1683
  */
1431
1684
  "href": string | undefined;
1432
1685
  /**
1433
- * The mode determines which platform styles to use.
1686
+ * The mode determines the platform behaviors of the component.
1434
1687
  */
1435
1688
  "mode"?: "ios" | "md";
1436
1689
  /**
1437
1690
  * 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).
1438
1691
  */
1439
1692
  "rel": string | undefined;
1693
+ /**
1694
+ * 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.
1695
+ */
1696
+ "shape"?: 'soft' | 'round' | 'rectangular';
1440
1697
  /**
1441
1698
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1442
1699
  */
1443
1700
  "target": string | undefined;
1701
+ /**
1702
+ * The theme determines the visual appearance of the component.
1703
+ */
1704
+ "theme"?: "ios" | "md" | "ionic";
1444
1705
  /**
1445
1706
  * The type of the button.
1446
1707
  */
@@ -1448,10 +1709,18 @@ export namespace Components {
1448
1709
  }
1449
1710
  interface IonItemOptions {
1450
1711
  "fireSwipeEvent": () => Promise<void>;
1712
+ /**
1713
+ * The mode determines the platform behaviors of the component.
1714
+ */
1715
+ "mode"?: "ios" | "md";
1451
1716
  /**
1452
1717
  * 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.
1453
1718
  */
1454
1719
  "side": Side;
1720
+ /**
1721
+ * The theme determines the visual appearance of the component.
1722
+ */
1723
+ "theme"?: "ios" | "md" | "ionic";
1455
1724
  }
1456
1725
  interface IonItemSliding {
1457
1726
  /**
@@ -1474,11 +1743,19 @@ export namespace Components {
1474
1743
  * 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.
1475
1744
  */
1476
1745
  "getSlidingRatio": () => Promise<number>;
1746
+ /**
1747
+ * The mode determines the platform behaviors of the component.
1748
+ */
1749
+ "mode"?: "ios" | "md";
1477
1750
  /**
1478
1751
  * Open the sliding item.
1479
1752
  * @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.
1480
1753
  */
1481
1754
  "open": (side: Side | undefined) => Promise<void>;
1755
+ /**
1756
+ * The theme determines the visual appearance of the component.
1757
+ */
1758
+ "theme"?: "ios" | "md" | "ionic";
1482
1759
  }
1483
1760
  interface IonLabel {
1484
1761
  /**
@@ -1486,13 +1763,17 @@ export namespace Components {
1486
1763
  */
1487
1764
  "color"?: Color;
1488
1765
  /**
1489
- * The mode determines which platform styles to use.
1766
+ * The mode determines the platform behaviors of the component.
1490
1767
  */
1491
1768
  "mode"?: "ios" | "md";
1492
1769
  /**
1493
1770
  * The position determines where and how the label behaves inside an item.
1494
1771
  */
1495
1772
  "position"?: 'fixed' | 'stacked' | 'floating';
1773
+ /**
1774
+ * The theme determines the visual appearance of the component.
1775
+ */
1776
+ "theme"?: "ios" | "md" | "ionic";
1496
1777
  }
1497
1778
  interface IonList {
1498
1779
  /**
@@ -1508,9 +1789,17 @@ export namespace Components {
1508
1789
  */
1509
1790
  "lines"?: 'full' | 'inset' | 'none';
1510
1791
  /**
1511
- * The mode determines which platform styles to use.
1792
+ * The mode determines the platform behaviors of the component.
1512
1793
  */
1513
1794
  "mode"?: "ios" | "md";
1795
+ /**
1796
+ * 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.
1797
+ */
1798
+ "shape"?: 'soft' | 'round' | 'rectangular';
1799
+ /**
1800
+ * The theme determines the visual appearance of the component.
1801
+ */
1802
+ "theme"?: "ios" | "md" | "ionic";
1514
1803
  }
1515
1804
  interface IonListHeader {
1516
1805
  /**
@@ -1522,9 +1811,13 @@ export namespace Components {
1522
1811
  */
1523
1812
  "lines"?: 'full' | 'inset' | 'none';
1524
1813
  /**
1525
- * The mode determines which platform styles to use.
1814
+ * The mode determines the platform behaviors of the component.
1526
1815
  */
1527
1816
  "mode"?: "ios" | "md";
1817
+ /**
1818
+ * The theme determines the visual appearance of the component.
1819
+ */
1820
+ "theme"?: "ios" | "md" | "ionic";
1528
1821
  }
1529
1822
  interface IonLoading {
1530
1823
  /**
@@ -1576,7 +1869,7 @@ export namespace Components {
1576
1869
  */
1577
1870
  "message"?: string | IonicSafeString;
1578
1871
  /**
1579
- * The mode determines which platform styles to use.
1872
+ * The mode determines the platform behaviors of the component.
1580
1873
  */
1581
1874
  "mode"?: "ios" | "md";
1582
1875
  /**
@@ -1601,7 +1894,11 @@ export namespace Components {
1601
1894
  */
1602
1895
  "spinner"?: SpinnerTypes | null;
1603
1896
  /**
1604
- * 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).
1897
+ * The theme determines the visual appearance of the component.
1898
+ */
1899
+ "theme"?: "ios" | "md" | "ionic";
1900
+ /**
1901
+ * 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).
1605
1902
  */
1606
1903
  "translucent": boolean;
1607
1904
  /**
@@ -1638,6 +1935,10 @@ export namespace Components {
1638
1935
  * An id for the menu.
1639
1936
  */
1640
1937
  "menuId"?: string;
1938
+ /**
1939
+ * The mode determines the platform behaviors of the component.
1940
+ */
1941
+ "mode"?: "ios" | "md";
1641
1942
  /**
1642
1943
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1643
1944
  */
@@ -1654,6 +1955,10 @@ export namespace Components {
1654
1955
  * If `true`, swiping the menu is enabled.
1655
1956
  */
1656
1957
  "swipeGesture": boolean;
1958
+ /**
1959
+ * The theme determines the visual appearance of the component.
1960
+ */
1961
+ "theme"?: "ios" | "md" | "ionic";
1657
1962
  /**
1658
1963
  * 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`.
1659
1964
  */
@@ -1681,9 +1986,13 @@ export namespace Components {
1681
1986
  */
1682
1987
  "menu"?: string;
1683
1988
  /**
1684
- * The mode determines which platform styles to use.
1989
+ * The mode determines the platform behaviors of the component.
1685
1990
  */
1686
1991
  "mode"?: "ios" | "md";
1992
+ /**
1993
+ * The theme determines the visual appearance of the component.
1994
+ */
1995
+ "theme"?: "ios" | "md" | "ionic";
1687
1996
  /**
1688
1997
  * The type of the button.
1689
1998
  */
@@ -1698,6 +2007,14 @@ export namespace Components {
1698
2007
  * 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.
1699
2008
  */
1700
2009
  "menu"?: string;
2010
+ /**
2011
+ * The mode determines the platform behaviors of the component.
2012
+ */
2013
+ "mode"?: "ios" | "md";
2014
+ /**
2015
+ * The theme determines the visual appearance of the component.
2016
+ */
2017
+ "theme"?: "ios" | "md" | "ionic";
1701
2018
  }
1702
2019
  interface IonModal {
1703
2020
  /**
@@ -1789,7 +2106,7 @@ export namespace Components {
1789
2106
  */
1790
2107
  "leaveAnimation"?: AnimationBuilder;
1791
2108
  /**
1792
- * The mode determines which platform styles to use.
2109
+ * The mode determines the platform behaviors of the component.
1793
2110
  */
1794
2111
  "mode"?: "ios" | "md";
1795
2112
  /**
@@ -1813,10 +2130,18 @@ export namespace Components {
1813
2130
  * Move a sheet style modal to a specific breakpoint. The breakpoint value must be a value defined in your `breakpoints` array.
1814
2131
  */
1815
2132
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2133
+ /**
2134
+ * 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.
2135
+ */
2136
+ "shape"?: 'soft' | 'round' | 'rectangular';
1816
2137
  /**
1817
2138
  * 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.
1818
2139
  */
1819
2140
  "showBackdrop": boolean;
2141
+ /**
2142
+ * The theme determines the visual appearance of the component.
2143
+ */
2144
+ "theme"?: "ios" | "md" | "ionic";
1820
2145
  /**
1821
2146
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1822
2147
  */
@@ -1828,7 +2153,7 @@ export namespace Components {
1828
2153
  */
1829
2154
  "animated": boolean;
1830
2155
  /**
1831
- * 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.
2156
+ * 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.
1832
2157
  */
1833
2158
  "animation"?: AnimationBuilder;
1834
2159
  /**
@@ -1876,6 +2201,10 @@ export namespace Components {
1876
2201
  * @param done The transition complete function.
1877
2202
  */
1878
2203
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2204
+ /**
2205
+ * The mode determines the platform behaviors of the component.
2206
+ */
2207
+ "mode"?: "ios" | "md";
1879
2208
  /**
1880
2209
  * Pop a component off of the navigation stack. Navigates back from the current component.
1881
2210
  * @param opts The navigation options.
@@ -1947,6 +2276,10 @@ export namespace Components {
1947
2276
  * If the nav component should allow for swipe-to-go-back.
1948
2277
  */
1949
2278
  "swipeGesture"?: boolean;
2279
+ /**
2280
+ * The theme determines the visual appearance of the component.
2281
+ */
2282
+ "theme"?: "ios" | "md" | "ionic";
1950
2283
  }
1951
2284
  interface IonNavLink {
1952
2285
  /**
@@ -1957,6 +2290,10 @@ export namespace Components {
1957
2290
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1958
2291
  */
1959
2292
  "componentProps"?: ComponentProps;
2293
+ /**
2294
+ * The mode determines the platform behaviors of the component.
2295
+ */
2296
+ "mode"?: "ios" | "md";
1960
2297
  /**
1961
2298
  * The transition animation when navigating to another page.
1962
2299
  */
@@ -1965,6 +2302,10 @@ export namespace Components {
1965
2302
  * The transition direction when navigating to another page.
1966
2303
  */
1967
2304
  "routerDirection": RouterDirection;
2305
+ /**
2306
+ * The theme determines the visual appearance of the component.
2307
+ */
2308
+ "theme"?: "ios" | "md" | "ionic";
1968
2309
  }
1969
2310
  interface IonNote {
1970
2311
  /**
@@ -1972,16 +2313,24 @@ export namespace Components {
1972
2313
  */
1973
2314
  "color"?: Color;
1974
2315
  /**
1975
- * The mode determines which platform styles to use.
2316
+ * The mode determines the platform behaviors of the component.
1976
2317
  */
1977
2318
  "mode"?: "ios" | "md";
2319
+ /**
2320
+ * The theme determines the visual appearance of the component.
2321
+ */
2322
+ "theme"?: "ios" | "md" | "ionic";
1978
2323
  }
1979
2324
  interface IonPicker {
1980
2325
  "exitInputMode": () => Promise<void>;
1981
2326
  /**
1982
- * The mode determines which platform styles to use.
2327
+ * The mode determines the platform behaviors of the component.
1983
2328
  */
1984
2329
  "mode"?: "ios" | "md";
2330
+ /**
2331
+ * The theme determines the visual appearance of the component.
2332
+ */
2333
+ "theme"?: "ios" | "md" | "ionic";
1985
2334
  }
1986
2335
  interface IonPickerColumn {
1987
2336
  /**
@@ -1993,7 +2342,7 @@ export namespace Components {
1993
2342
  */
1994
2343
  "disabled": boolean;
1995
2344
  /**
1996
- * The mode determines which platform styles to use.
2345
+ * The mode determines the platform behaviors of the component.
1997
2346
  */
1998
2347
  "mode"?: "ios" | "md";
1999
2348
  /**
@@ -2009,6 +2358,10 @@ export namespace Components {
2009
2358
  * 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.
2010
2359
  */
2011
2360
  "setValue": (value: PickerColumnValue) => Promise<void>;
2361
+ /**
2362
+ * The theme determines the visual appearance of the component.
2363
+ */
2364
+ "theme"?: "ios" | "md" | "ionic";
2012
2365
  /**
2013
2366
  * The selected option in the picker.
2014
2367
  */
@@ -2023,6 +2376,14 @@ export namespace Components {
2023
2376
  * If `true`, the user cannot interact with the picker column option.
2024
2377
  */
2025
2378
  "disabled": boolean;
2379
+ /**
2380
+ * The mode determines the platform behaviors of the component.
2381
+ */
2382
+ "mode"?: "ios" | "md";
2383
+ /**
2384
+ * The theme determines the visual appearance of the component.
2385
+ */
2386
+ "theme"?: "ios" | "md" | "ionic";
2026
2387
  /**
2027
2388
  * The text value of the option.
2028
2389
  */
@@ -2087,7 +2448,7 @@ export namespace Components {
2087
2448
  */
2088
2449
  "leaveAnimation"?: AnimationBuilder;
2089
2450
  /**
2090
- * The mode determines which platform styles to use.
2451
+ * The mode determines the platform behaviors of the component.
2091
2452
  */
2092
2453
  "mode"?: "ios" | "md";
2093
2454
  /**
@@ -2107,6 +2468,10 @@ export namespace Components {
2107
2468
  * If `true`, a backdrop will be displayed behind the picker.
2108
2469
  */
2109
2470
  "showBackdrop": boolean;
2471
+ /**
2472
+ * The theme determines the visual appearance of the component.
2473
+ */
2474
+ "theme"?: "ios" | "md" | "ionic";
2110
2475
  /**
2111
2476
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2112
2477
  */
@@ -2120,7 +2485,7 @@ export namespace Components {
2120
2485
  }
2121
2486
  interface IonPopover {
2122
2487
  /**
2123
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2488
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2124
2489
  */
2125
2490
  "alignment"?: PositionAlign;
2126
2491
  /**
@@ -2128,7 +2493,7 @@ export namespace Components {
2128
2493
  */
2129
2494
  "animated": boolean;
2130
2495
  /**
2131
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2496
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2132
2497
  */
2133
2498
  "arrow": boolean;
2134
2499
  /**
@@ -2195,7 +2560,7 @@ export namespace Components {
2195
2560
  */
2196
2561
  "leaveAnimation"?: AnimationBuilder;
2197
2562
  /**
2198
- * The mode determines which platform styles to use.
2563
+ * The mode determines the platform behaviors of the component.
2199
2564
  */
2200
2565
  "mode"?: "ios" | "md";
2201
2566
  /**
@@ -2232,7 +2597,11 @@ export namespace Components {
2232
2597
  */
2233
2598
  "size": PopoverSize;
2234
2599
  /**
2235
- * 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).
2600
+ * The theme determines the visual appearance of the component.
2601
+ */
2602
+ "theme"?: "ios" | "md" | "ionic";
2603
+ /**
2604
+ * 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).
2236
2605
  */
2237
2606
  "translucent": boolean;
2238
2607
  /**
@@ -2254,13 +2623,21 @@ export namespace Components {
2254
2623
  */
2255
2624
  "color"?: Color;
2256
2625
  /**
2257
- * The mode determines which platform styles to use.
2626
+ * The mode determines the platform behaviors of the component.
2258
2627
  */
2259
2628
  "mode"?: "ios" | "md";
2260
2629
  /**
2261
2630
  * If true, reverse the progress bar direction.
2262
2631
  */
2263
2632
  "reversed": boolean;
2633
+ /**
2634
+ * 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.
2635
+ */
2636
+ "shape"?: 'round' | 'rectangular';
2637
+ /**
2638
+ * The theme determines the visual appearance of the component.
2639
+ */
2640
+ "theme"?: "ios" | "md" | "ionic";
2264
2641
  /**
2265
2642
  * 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).
2266
2643
  */
@@ -2292,7 +2669,7 @@ export namespace Components {
2292
2669
  */
2293
2670
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2294
2671
  /**
2295
- * The mode determines which platform styles to use.
2672
+ * The mode determines the platform behaviors of the component.
2296
2673
  */
2297
2674
  "mode"?: "ios" | "md";
2298
2675
  /**
@@ -2301,6 +2678,10 @@ export namespace Components {
2301
2678
  "name": string;
2302
2679
  "setButtonTabindex": (value: number) => Promise<void>;
2303
2680
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
2681
+ /**
2682
+ * The theme determines the visual appearance of the component.
2683
+ */
2684
+ "theme"?: "ios" | "md" | "ionic";
2304
2685
  /**
2305
2686
  * the value of the radio.
2306
2687
  */
@@ -2324,10 +2705,18 @@ export namespace Components {
2324
2705
  */
2325
2706
  "helperText"?: string;
2326
2707
  /**
2327
- * The name of the control, which is submitted with the form data.
2708
+ * The mode determines the platform behaviors of the component.
2328
2709
  */
2329
- "name": string;
2710
+ "mode"?: "ios" | "md";
2711
+ /**
2712
+ * The name of the control, which is submitted with the form data.
2713
+ */
2714
+ "name": string;
2330
2715
  "setFocus": () => Promise<void>;
2716
+ /**
2717
+ * The theme determines the visual appearance of the component.
2718
+ */
2719
+ "theme"?: "ios" | "md" | "ionic";
2331
2720
  /**
2332
2721
  * the value of the radio group.
2333
2722
  */
@@ -2371,7 +2760,7 @@ export namespace Components {
2371
2760
  */
2372
2761
  "min": number;
2373
2762
  /**
2374
- * The mode determines which platform styles to use.
2763
+ * The mode determines the platform behaviors of the component.
2375
2764
  */
2376
2765
  "mode"?: "ios" | "md";
2377
2766
  /**
@@ -2394,6 +2783,10 @@ export namespace Components {
2394
2783
  * Specifies the value granularity.
2395
2784
  */
2396
2785
  "step": number;
2786
+ /**
2787
+ * The theme determines the visual appearance of the component.
2788
+ */
2789
+ "theme"?: "ios" | "md" | "ionic";
2397
2790
  /**
2398
2791
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2399
2792
  */
@@ -2425,7 +2818,7 @@ export namespace Components {
2425
2818
  */
2426
2819
  "getProgress": () => Promise<number>;
2427
2820
  /**
2428
- * The mode determines which platform styles to use.
2821
+ * The mode determines the platform behaviors of the component.
2429
2822
  */
2430
2823
  "mode"?: "ios" | "md";
2431
2824
  /**
@@ -2444,8 +2837,16 @@ export namespace Components {
2444
2837
  * Time it takes the refresher to snap back to the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2445
2838
  */
2446
2839
  "snapbackDuration": string;
2840
+ /**
2841
+ * The theme determines the visual appearance of the component.
2842
+ */
2843
+ "theme"?: "ios" | "md" | "ionic";
2447
2844
  }
2448
2845
  interface IonRefresherContent {
2846
+ /**
2847
+ * The mode determines the platform behaviors of the component.
2848
+ */
2849
+ "mode"?: "ios" | "md";
2449
2850
  /**
2450
2851
  * 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.
2451
2852
  */
@@ -2462,8 +2863,20 @@ export namespace Components {
2462
2863
  * 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.
2463
2864
  */
2464
2865
  "refreshingText"?: string | IonicSafeString;
2866
+ /**
2867
+ * The theme determines the visual appearance of the component.
2868
+ */
2869
+ "theme"?: "ios" | "md" | "ionic";
2465
2870
  }
2466
2871
  interface IonReorder {
2872
+ /**
2873
+ * The mode determines the platform behaviors of the component.
2874
+ */
2875
+ "mode"?: "ios" | "md";
2876
+ /**
2877
+ * The theme determines the visual appearance of the component.
2878
+ */
2879
+ "theme"?: "ios" | "md" | "ionic";
2467
2880
  }
2468
2881
  interface IonReorderGroup {
2469
2882
  /**
@@ -2475,6 +2888,14 @@ export namespace Components {
2475
2888
  * If `true`, the reorder will be hidden.
2476
2889
  */
2477
2890
  "disabled": boolean;
2891
+ /**
2892
+ * The mode determines the platform behaviors of the component.
2893
+ */
2894
+ "mode"?: "ios" | "md";
2895
+ /**
2896
+ * The theme determines the visual appearance of the component.
2897
+ */
2898
+ "theme"?: "ios" | "md" | "ionic";
2478
2899
  }
2479
2900
  interface IonRippleEffect {
2480
2901
  /**
@@ -2483,6 +2904,14 @@ export namespace Components {
2483
2904
  * @param y The vertical coordinate of where the ripple should start.
2484
2905
  */
2485
2906
  "addRipple": (x: number, y: number) => Promise<() => void>;
2907
+ /**
2908
+ * The mode determines the platform behaviors of the component.
2909
+ */
2910
+ "mode"?: "ios" | "md";
2911
+ /**
2912
+ * The theme determines the visual appearance of the component.
2913
+ */
2914
+ "theme"?: "ios" | "md" | "ionic";
2486
2915
  /**
2487
2916
  * 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.
2488
2917
  */
@@ -2505,6 +2934,14 @@ export namespace Components {
2505
2934
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2506
2935
  */
2507
2936
  "componentProps"?: { [key: string]: any };
2937
+ /**
2938
+ * The mode determines the platform behaviors of the component.
2939
+ */
2940
+ "mode"?: "ios" | "md";
2941
+ /**
2942
+ * The theme determines the visual appearance of the component.
2943
+ */
2944
+ "theme"?: "ios" | "md" | "ionic";
2508
2945
  /**
2509
2946
  * 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.
2510
2947
  */
@@ -2526,6 +2963,10 @@ export namespace Components {
2526
2963
  */
2527
2964
  "back": () => Promise<void>;
2528
2965
  "canTransition": () => Promise<string | boolean>;
2966
+ /**
2967
+ * The mode determines the platform behaviors of the component.
2968
+ */
2969
+ "mode"?: "ios" | "md";
2529
2970
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2530
2971
  "printDebug": () => Promise<void>;
2531
2972
  /**
@@ -2538,6 +2979,10 @@ export namespace Components {
2538
2979
  * The root path to use when matching URLs. By default, this is set to "/", but you can specify an alternate prefix for all URL paths.
2539
2980
  */
2540
2981
  "root": string;
2982
+ /**
2983
+ * The theme determines the visual appearance of the component.
2984
+ */
2985
+ "theme"?: "ios" | "md" | "ionic";
2541
2986
  /**
2542
2987
  * 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.
2543
2988
  */
@@ -2552,6 +2997,10 @@ export namespace Components {
2552
2997
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2553
2998
  */
2554
2999
  "href": string | undefined;
3000
+ /**
3001
+ * The mode determines the platform behaviors of the component.
3002
+ */
3003
+ "mode"?: "ios" | "md";
2555
3004
  /**
2556
3005
  * 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).
2557
3006
  */
@@ -2568,6 +3017,10 @@ export namespace Components {
2568
3017
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2569
3018
  */
2570
3019
  "target": string | undefined;
3020
+ /**
3021
+ * The theme determines the visual appearance of the component.
3022
+ */
3023
+ "theme"?: "ios" | "md" | "ionic";
2571
3024
  }
2572
3025
  interface IonRouterOutlet {
2573
3026
  /**
@@ -2582,13 +3035,25 @@ export namespace Components {
2582
3035
  "delegate"?: FrameworkDelegate;
2583
3036
  "getRouteId": () => Promise<RouteID | undefined>;
2584
3037
  /**
2585
- * The mode determines which platform styles to use.
3038
+ * The mode determines the platform behaviors of the component.
2586
3039
  */
2587
3040
  "mode": "ios" | "md";
2588
3041
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2589
3042
  "swipeHandler"?: SwipeGestureHandler;
3043
+ /**
3044
+ * The theme determines the visual appearance of the component.
3045
+ */
3046
+ "theme"?: "ios" | "md" | "ionic";
2590
3047
  }
2591
3048
  interface IonRow {
3049
+ /**
3050
+ * The mode determines the platform behaviors of the component.
3051
+ */
3052
+ "mode"?: "ios" | "md";
3053
+ /**
3054
+ * The theme determines the visual appearance of the component.
3055
+ */
3056
+ "theme"?: "ios" | "md" | "ionic";
2592
3057
  }
2593
3058
  interface IonSearchbar {
2594
3059
  /**
@@ -2608,15 +3073,15 @@ export namespace Components {
2608
3073
  */
2609
3074
  "autocorrect": 'on' | 'off';
2610
3075
  /**
2611
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3076
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2612
3077
  */
2613
- "cancelButtonIcon": string;
3078
+ "cancelButtonIcon"?: string;
2614
3079
  /**
2615
- * Set the the cancel button text. Only applies to `ios` mode.
3080
+ * Set the cancel button text. Only available when the theme is `"ios"`.
2616
3081
  */
2617
3082
  "cancelButtonText": string;
2618
3083
  /**
2619
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3084
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2620
3085
  */
2621
3086
  "clearIcon"?: string;
2622
3087
  /**
@@ -2652,7 +3117,7 @@ export namespace Components {
2652
3117
  */
2653
3118
  "minlength"?: number;
2654
3119
  /**
2655
- * The mode determines which platform styles to use.
3120
+ * The mode determines the platform behaviors of the component.
2656
3121
  */
2657
3122
  "mode"?: "ios" | "md";
2658
3123
  /**
@@ -2664,13 +3129,17 @@ export namespace Components {
2664
3129
  */
2665
3130
  "placeholder": string;
2666
3131
  /**
2667
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3132
+ * 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.
2668
3133
  */
2669
- "searchIcon"?: string;
3134
+ "searchIcon"?: string | boolean;
2670
3135
  /**
2671
3136
  * 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.
2672
3137
  */
2673
3138
  "setFocus": () => Promise<void>;
3139
+ /**
3140
+ * 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.
3141
+ */
3142
+ "shape"?: 'soft' | 'round' | 'rectangular';
2674
3143
  /**
2675
3144
  * 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.
2676
3145
  */
@@ -2679,10 +3148,18 @@ export namespace Components {
2679
3148
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
2680
3149
  */
2681
3150
  "showClearButton": 'never' | 'focus' | 'always';
3151
+ /**
3152
+ * 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.
3153
+ */
3154
+ "size"?: 'small' | 'medium' | 'large';
2682
3155
  /**
2683
3156
  * If `true`, enable spellcheck on the input.
2684
3157
  */
2685
3158
  "spellcheck": boolean;
3159
+ /**
3160
+ * The theme determines the visual appearance of the component.
3161
+ */
3162
+ "theme"?: "ios" | "md" | "ionic";
2686
3163
  /**
2687
3164
  * Set the type of the input.
2688
3165
  */
@@ -2702,7 +3179,7 @@ export namespace Components {
2702
3179
  */
2703
3180
  "disabled": boolean;
2704
3181
  /**
2705
- * The mode determines which platform styles to use.
3182
+ * The mode determines the platform behaviors of the component.
2706
3183
  */
2707
3184
  "mode"?: "ios" | "md";
2708
3185
  /**
@@ -2717,6 +3194,10 @@ export namespace Components {
2717
3194
  * If `true`, users will be able to swipe between segment buttons to activate them.
2718
3195
  */
2719
3196
  "swipeGesture": boolean;
3197
+ /**
3198
+ * The theme determines the visual appearance of the component.
3199
+ */
3200
+ "theme"?: "ios" | "md" | "ionic";
2720
3201
  /**
2721
3202
  * the value of the segment.
2722
3203
  */
@@ -2736,10 +3217,14 @@ export namespace Components {
2736
3217
  */
2737
3218
  "layout"?: SegmentButtonLayout;
2738
3219
  /**
2739
- * The mode determines which platform styles to use.
3220
+ * The mode determines the platform behaviors of the component.
2740
3221
  */
2741
3222
  "mode"?: "ios" | "md";
2742
3223
  "setFocus": () => Promise<void>;
3224
+ /**
3225
+ * The theme determines the visual appearance of the component.
3226
+ */
3227
+ "theme"?: "ios" | "md" | "ionic";
2743
3228
  /**
2744
3229
  * The type of the button.
2745
3230
  */
@@ -2784,11 +3269,11 @@ export namespace Components {
2784
3269
  */
2785
3270
  "errorText"?: string;
2786
3271
  /**
2787
- * 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.
3272
+ * 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.
2788
3273
  */
2789
3274
  "expandedIcon"?: string;
2790
3275
  /**
2791
- * 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.
3276
+ * 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.
2792
3277
  */
2793
3278
  "fill"?: 'outline' | 'solid';
2794
3279
  /**
@@ -2816,7 +3301,7 @@ export namespace Components {
2816
3301
  */
2817
3302
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2818
3303
  /**
2819
- * The mode determines which platform styles to use.
3304
+ * The mode determines the platform behaviors of the component.
2820
3305
  */
2821
3306
  "mode"?: "ios" | "md";
2822
3307
  /**
@@ -2849,11 +3334,19 @@ export namespace Components {
2849
3334
  */
2850
3335
  "selectedText"?: string | null;
2851
3336
  /**
2852
- * The shape of the select. If "round" it will have an increased border radius.
3337
+ * 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.
3338
+ */
3339
+ "shape"?: 'soft' | 'round' | 'rectangular';
3340
+ /**
3341
+ * 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.
3342
+ */
3343
+ "size"?: 'small' | 'medium' | 'large';
3344
+ /**
3345
+ * The theme determines the visual appearance of the component.
2853
3346
  */
2854
- "shape"?: 'round';
3347
+ "theme"?: "ios" | "md" | "ionic";
2855
3348
  /**
2856
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3349
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2857
3350
  */
2858
3351
  "toggleIcon"?: string;
2859
3352
  /**
@@ -2871,6 +3364,14 @@ export namespace Components {
2871
3364
  * 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.
2872
3365
  */
2873
3366
  "disabled": boolean;
3367
+ /**
3368
+ * The mode determines the platform behaviors of the component.
3369
+ */
3370
+ "mode"?: "ios" | "md";
3371
+ /**
3372
+ * The theme determines the visual appearance of the component.
3373
+ */
3374
+ "theme"?: "ios" | "md" | "ionic";
2874
3375
  /**
2875
3376
  * The text value of the option.
2876
3377
  */
@@ -2885,6 +3386,10 @@ export namespace Components {
2885
3386
  * The text content of the popover body
2886
3387
  */
2887
3388
  "message"?: string;
3389
+ /**
3390
+ * The mode determines the platform behaviors of the component.
3391
+ */
3392
+ "mode"?: "ios" | "md";
2888
3393
  /**
2889
3394
  * If true, the select accepts multiple values
2890
3395
  */
@@ -2897,12 +3402,24 @@ export namespace Components {
2897
3402
  * The subheader text of the popover
2898
3403
  */
2899
3404
  "subHeader"?: string;
3405
+ /**
3406
+ * The theme determines the visual appearance of the component.
3407
+ */
3408
+ "theme"?: "ios" | "md" | "ionic";
2900
3409
  }
2901
3410
  interface IonSkeletonText {
2902
3411
  /**
2903
3412
  * If `true`, the skeleton text will animate.
2904
3413
  */
2905
3414
  "animated": boolean;
3415
+ /**
3416
+ * The mode determines the platform behaviors of the component.
3417
+ */
3418
+ "mode"?: "ios" | "md";
3419
+ /**
3420
+ * The theme determines the visual appearance of the component.
3421
+ */
3422
+ "theme"?: "ios" | "md" | "ionic";
2906
3423
  }
2907
3424
  interface IonSpinner {
2908
3425
  /**
@@ -2913,6 +3430,10 @@ export namespace Components {
2913
3430
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2914
3431
  */
2915
3432
  "duration"?: number;
3433
+ /**
3434
+ * The mode determines the platform behaviors of the component.
3435
+ */
3436
+ "mode"?: "ios" | "md";
2916
3437
  /**
2917
3438
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2918
3439
  */
@@ -2921,6 +3442,14 @@ export namespace Components {
2921
3442
  * If `true`, the spinner's animation will be paused.
2922
3443
  */
2923
3444
  "paused": boolean;
3445
+ /**
3446
+ * 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.
3447
+ */
3448
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3449
+ /**
3450
+ * The theme determines the visual appearance of the component.
3451
+ */
3452
+ "theme"?: "ios" | "md" | "ionic";
2924
3453
  }
2925
3454
  interface IonSplitPane {
2926
3455
  /**
@@ -2932,6 +3461,14 @@ export namespace Components {
2932
3461
  */
2933
3462
  "disabled": boolean;
2934
3463
  "isVisible": () => Promise<boolean>;
3464
+ /**
3465
+ * The mode determines the platform behaviors of the component.
3466
+ */
3467
+ "mode"?: "ios" | "md";
3468
+ /**
3469
+ * The theme determines the visual appearance of the component.
3470
+ */
3471
+ "theme"?: "ios" | "md" | "ionic";
2935
3472
  /**
2936
3473
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
2937
3474
  */
@@ -2944,6 +3481,10 @@ export namespace Components {
2944
3481
  */
2945
3482
  "component"?: ComponentRef;
2946
3483
  "delegate"?: FrameworkDelegate;
3484
+ /**
3485
+ * The mode determines the platform behaviors of the component.
3486
+ */
3487
+ "mode"?: "ios" | "md";
2947
3488
  /**
2948
3489
  * Set the active component for the tab
2949
3490
  */
@@ -2952,6 +3493,10 @@ export namespace Components {
2952
3493
  * 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.
2953
3494
  */
2954
3495
  "tab": string;
3496
+ /**
3497
+ * The theme determines the visual appearance of the component.
3498
+ */
3499
+ "theme"?: "ios" | "md" | "ionic";
2955
3500
  }
2956
3501
  interface IonTabBar {
2957
3502
  /**
@@ -2959,7 +3504,11 @@ export namespace Components {
2959
3504
  */
2960
3505
  "color"?: Color;
2961
3506
  /**
2962
- * The mode determines which platform styles to use.
3507
+ * 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"`.
3508
+ */
3509
+ "expand": 'compact' | 'full';
3510
+ /**
3511
+ * The mode determines the platform behaviors of the component.
2963
3512
  */
2964
3513
  "mode"?: "ios" | "md";
2965
3514
  /**
@@ -2967,7 +3516,15 @@ export namespace Components {
2967
3516
  */
2968
3517
  "selectedTab"?: string;
2969
3518
  /**
2970
- * 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).
3519
+ * 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.
3520
+ */
3521
+ "shape"?: 'soft' | 'round' | 'rectangular';
3522
+ /**
3523
+ * The theme determines the visual appearance of the component.
3524
+ */
3525
+ "theme"?: "ios" | "md" | "ionic";
3526
+ /**
3527
+ * 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).
2971
3528
  */
2972
3529
  "translucent": boolean;
2973
3530
  }
@@ -2989,7 +3546,7 @@ export namespace Components {
2989
3546
  */
2990
3547
  "layout"?: TabButtonLayout;
2991
3548
  /**
2992
- * The mode determines which platform styles to use.
3549
+ * The mode determines the platform behaviors of the component.
2993
3550
  */
2994
3551
  "mode"?: "ios" | "md";
2995
3552
  /**
@@ -3000,6 +3557,10 @@ export namespace Components {
3000
3557
  * The selected tab component
3001
3558
  */
3002
3559
  "selected": boolean;
3560
+ /**
3561
+ * 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.
3562
+ */
3563
+ "shape"?: 'soft' | 'round' | 'rectangular';
3003
3564
  /**
3004
3565
  * 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.
3005
3566
  */
@@ -3008,6 +3569,10 @@ export namespace Components {
3008
3569
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
3009
3570
  */
3010
3571
  "target": string | undefined;
3572
+ /**
3573
+ * The theme determines the visual appearance of the component.
3574
+ */
3575
+ "theme"?: "ios" | "md" | "ionic";
3011
3576
  }
3012
3577
  interface IonTabs {
3013
3578
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -3020,12 +3585,20 @@ export namespace Components {
3020
3585
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3021
3586
  */
3022
3587
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3588
+ /**
3589
+ * The mode determines the platform behaviors of the component.
3590
+ */
3591
+ "mode"?: "ios" | "md";
3023
3592
  /**
3024
3593
  * 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.
3025
3594
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3026
3595
  */
3027
3596
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3028
3597
  "setRouteId": (id: string) => Promise<RouteWrite>;
3598
+ /**
3599
+ * The theme determines the visual appearance of the component.
3600
+ */
3601
+ "theme"?: "ios" | "md" | "ionic";
3029
3602
  "useRouter": boolean;
3030
3603
  }
3031
3604
  interface IonText {
@@ -3034,9 +3607,13 @@ export namespace Components {
3034
3607
  */
3035
3608
  "color"?: Color;
3036
3609
  /**
3037
- * The mode determines which platform styles to use.
3610
+ * The mode determines the platform behaviors of the component.
3038
3611
  */
3039
3612
  "mode"?: "ios" | "md";
3613
+ /**
3614
+ * The theme determines the visual appearance of the component.
3615
+ */
3616
+ "theme"?: "ios" | "md" | "ionic";
3040
3617
  }
3041
3618
  interface IonTextarea {
3042
3619
  /**
@@ -3088,7 +3665,7 @@ export namespace Components {
3088
3665
  */
3089
3666
  "errorText"?: string;
3090
3667
  /**
3091
- * 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.
3668
+ * 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"`.
3092
3669
  */
3093
3670
  "fill"?: 'outline' | 'solid';
3094
3671
  /**
@@ -3120,7 +3697,7 @@ export namespace Components {
3120
3697
  */
3121
3698
  "minlength"?: number;
3122
3699
  /**
3123
- * The mode determines which platform styles to use.
3700
+ * The mode determines the platform behaviors of the component.
3124
3701
  */
3125
3702
  "mode"?: "ios" | "md";
3126
3703
  /**
@@ -3148,13 +3725,21 @@ export namespace Components {
3148
3725
  */
3149
3726
  "setFocus": () => Promise<void>;
3150
3727
  /**
3151
- * The shape of the textarea. If "round" it will have an increased border radius.
3728
+ * 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.
3152
3729
  */
3153
- "shape"?: 'round';
3730
+ "shape"?: 'soft' | 'round' | 'rectangular';
3731
+ /**
3732
+ * 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.
3733
+ */
3734
+ "size"?: 'small' | 'medium' | 'large';
3154
3735
  /**
3155
3736
  * If `true`, the element will have its spelling and grammar checked.
3156
3737
  */
3157
3738
  "spellcheck": boolean;
3739
+ /**
3740
+ * The theme determines the visual appearance of the component.
3741
+ */
3742
+ "theme"?: "ios" | "md" | "ionic";
3158
3743
  /**
3159
3744
  * The value of the textarea.
3160
3745
  */
@@ -3165,16 +3750,32 @@ export namespace Components {
3165
3750
  "wrap"?: 'hard' | 'soft' | 'off';
3166
3751
  }
3167
3752
  interface IonThumbnail {
3753
+ /**
3754
+ * The mode determines the platform behaviors of the component.
3755
+ */
3756
+ "mode"?: "ios" | "md";
3757
+ /**
3758
+ * The theme determines the visual appearance of the component.
3759
+ */
3760
+ "theme"?: "ios" | "md" | "ionic";
3168
3761
  }
3169
3762
  interface IonTitle {
3170
3763
  /**
3171
3764
  * 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).
3172
3765
  */
3173
3766
  "color"?: Color;
3767
+ /**
3768
+ * The mode determines the platform behaviors of the component.
3769
+ */
3770
+ "mode"?: "ios" | "md";
3174
3771
  /**
3175
3772
  * The size of the toolbar title.
3176
3773
  */
3177
3774
  "size"?: 'large' | 'small';
3775
+ /**
3776
+ * The theme determines the visual appearance of the component.
3777
+ */
3778
+ "theme"?: "ios" | "md" | "ionic";
3178
3779
  }
3179
3780
  interface IonToast {
3180
3781
  /**
@@ -3242,7 +3843,7 @@ export namespace Components {
3242
3843
  */
3243
3844
  "message"?: string | IonicSafeString;
3244
3845
  /**
3245
- * The mode determines which platform styles to use.
3846
+ * The mode determines the platform behaviors of the component.
3246
3847
  */
3247
3848
  "mode"?: "ios" | "md";
3248
3849
  /**
@@ -3266,12 +3867,20 @@ export namespace Components {
3266
3867
  * Present the toast overlay after it has been created.
3267
3868
  */
3268
3869
  "present": () => Promise<void>;
3870
+ /**
3871
+ * 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.
3872
+ */
3873
+ "shape"?: 'soft' | 'round' | 'rectangular';
3269
3874
  /**
3270
3875
  * 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.
3271
3876
  */
3272
3877
  "swipeGesture"?: ToastSwipeGestureDirection;
3273
3878
  /**
3274
- * 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).
3879
+ * The theme determines the visual appearance of the component.
3880
+ */
3881
+ "theme"?: "ios" | "md" | "ionic";
3882
+ /**
3883
+ * 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).
3275
3884
  */
3276
3885
  "translucent": boolean;
3277
3886
  /**
@@ -3317,7 +3926,7 @@ export namespace Components {
3317
3926
  */
3318
3927
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3319
3928
  /**
3320
- * The mode determines which platform styles to use.
3929
+ * The mode determines the platform behaviors of the component.
3321
3930
  */
3322
3931
  "mode"?: "ios" | "md";
3323
3932
  /**
@@ -3328,6 +3937,10 @@ export namespace Components {
3328
3937
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
3329
3938
  */
3330
3939
  "required": boolean;
3940
+ /**
3941
+ * The theme determines the visual appearance of the component.
3942
+ */
3943
+ "theme"?: "ios" | "md" | "ionic";
3331
3944
  /**
3332
3945
  * 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>`.
3333
3946
  */
@@ -3339,9 +3952,13 @@ export namespace Components {
3339
3952
  */
3340
3953
  "color"?: Color;
3341
3954
  /**
3342
- * The mode determines which platform styles to use.
3955
+ * The mode determines the platform behaviors of the component.
3343
3956
  */
3344
3957
  "mode"?: "ios" | "md";
3958
+ /**
3959
+ * The theme determines the visual appearance of the component.
3960
+ */
3961
+ "theme"?: "ios" | "md" | "ionic";
3345
3962
  }
3346
3963
  }
3347
3964
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4859,13 +5476,17 @@ declare namespace LocalJSX {
4859
5476
  */
4860
5477
  "disabled"?: boolean;
4861
5478
  /**
4862
- * The mode determines which platform styles to use.
5479
+ * The mode determines the platform behaviors of the component.
4863
5480
  */
4864
5481
  "mode"?: "ios" | "md";
4865
5482
  /**
4866
5483
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4867
5484
  */
4868
5485
  "readonly"?: boolean;
5486
+ /**
5487
+ * The theme determines the visual appearance of the component.
5488
+ */
5489
+ "theme"?: "ios" | "md" | "ionic";
4869
5490
  /**
4870
5491
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4871
5492
  */
@@ -4893,7 +5514,7 @@ declare namespace LocalJSX {
4893
5514
  */
4894
5515
  "expand"?: 'compact' | 'inset';
4895
5516
  /**
4896
- * The mode determines which platform styles to use.
5517
+ * The mode determines the platform behaviors of the component.
4897
5518
  */
4898
5519
  "mode"?: "ios" | "md";
4899
5520
  /**
@@ -4908,6 +5529,14 @@ declare namespace LocalJSX {
4908
5529
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4909
5530
  */
4910
5531
  "readonly"?: boolean;
5532
+ /**
5533
+ * 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"`.
5534
+ */
5535
+ "shape"?: 'soft' | 'round' | 'rectangular';
5536
+ /**
5537
+ * The theme determines the visual appearance of the component.
5538
+ */
5539
+ "theme"?: "ios" | "md" | "ionic";
4911
5540
  /**
4912
5541
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4913
5542
  */
@@ -4955,7 +5584,7 @@ declare namespace LocalJSX {
4955
5584
  */
4956
5585
  "leaveAnimation"?: AnimationBuilder;
4957
5586
  /**
4958
- * The mode determines which platform styles to use.
5587
+ * The mode determines the platform behaviors of the component.
4959
5588
  */
4960
5589
  "mode"?: "ios" | "md";
4961
5590
  /**
@@ -4995,7 +5624,11 @@ declare namespace LocalJSX {
4995
5624
  */
4996
5625
  "subHeader"?: string;
4997
5626
  /**
4998
- * 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).
5627
+ * The theme determines the visual appearance of the component.
5628
+ */
5629
+ "theme"?: "ios" | "md" | "ionic";
5630
+ /**
5631
+ * 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).
4999
5632
  */
5000
5633
  "translucent"?: boolean;
5001
5634
  /**
@@ -5053,7 +5686,7 @@ declare namespace LocalJSX {
5053
5686
  */
5054
5687
  "message"?: string | IonicSafeString;
5055
5688
  /**
5056
- * The mode determines which platform styles to use.
5689
+ * The mode determines the platform behaviors of the component.
5057
5690
  */
5058
5691
  "mode"?: "ios" | "md";
5059
5692
  /**
@@ -5093,7 +5726,11 @@ declare namespace LocalJSX {
5093
5726
  */
5094
5727
  "subHeader"?: string;
5095
5728
  /**
5096
- * 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).
5729
+ * The theme determines the visual appearance of the component.
5730
+ */
5731
+ "theme"?: "ios" | "md" | "ionic";
5732
+ /**
5733
+ * 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).
5097
5734
  */
5098
5735
  "translucent"?: boolean;
5099
5736
  /**
@@ -5102,8 +5739,32 @@ declare namespace LocalJSX {
5102
5739
  "trigger"?: string | undefined;
5103
5740
  }
5104
5741
  interface IonApp {
5742
+ /**
5743
+ * The mode determines the platform behaviors of the component.
5744
+ */
5745
+ "mode"?: "ios" | "md";
5746
+ /**
5747
+ * The theme determines the visual appearance of the component.
5748
+ */
5749
+ "theme"?: "ios" | "md" | "ionic";
5105
5750
  }
5106
5751
  interface IonAvatar {
5752
+ /**
5753
+ * The mode determines the platform behaviors of the component.
5754
+ */
5755
+ "mode"?: "ios" | "md";
5756
+ /**
5757
+ * 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.
5758
+ */
5759
+ "shape"?: 'soft' | 'round' | 'rectangular';
5760
+ /**
5761
+ * 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.
5762
+ */
5763
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5764
+ /**
5765
+ * The theme determines the visual appearance of the component.
5766
+ */
5767
+ "theme"?: "ios" | "md" | "ionic";
5107
5768
  }
5108
5769
  interface IonBackButton {
5109
5770
  /**
@@ -5123,7 +5784,7 @@ declare namespace LocalJSX {
5123
5784
  */
5124
5785
  "icon"?: string | null;
5125
5786
  /**
5126
- * The mode determines which platform styles to use.
5787
+ * The mode determines the platform behaviors of the component.
5127
5788
  */
5128
5789
  "mode"?: "ios" | "md";
5129
5790
  /**
@@ -5134,12 +5795,20 @@ declare namespace LocalJSX {
5134
5795
  * The text to display in the back button.
5135
5796
  */
5136
5797
  "text"?: string | null;
5798
+ /**
5799
+ * The theme determines the visual appearance of the component.
5800
+ */
5801
+ "theme"?: "ios" | "md" | "ionic";
5137
5802
  /**
5138
5803
  * The type of the button.
5139
5804
  */
5140
5805
  "type"?: 'submit' | 'reset' | 'button';
5141
5806
  }
5142
5807
  interface IonBackdrop {
5808
+ /**
5809
+ * The mode determines the platform behaviors of the component.
5810
+ */
5811
+ "mode"?: "ios" | "md";
5143
5812
  /**
5144
5813
  * Emitted when the backdrop is tapped.
5145
5814
  */
@@ -5152,6 +5821,10 @@ declare namespace LocalJSX {
5152
5821
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5153
5822
  */
5154
5823
  "tappable"?: boolean;
5824
+ /**
5825
+ * The theme determines the visual appearance of the component.
5826
+ */
5827
+ "theme"?: "ios" | "md" | "ionic";
5155
5828
  /**
5156
5829
  * If `true`, the backdrop will be visible.
5157
5830
  */
@@ -5163,9 +5836,25 @@ declare namespace LocalJSX {
5163
5836
  */
5164
5837
  "color"?: Color;
5165
5838
  /**
5166
- * The mode determines which platform styles to use.
5839
+ * The mode determines the platform behaviors of the component.
5167
5840
  */
5168
5841
  "mode"?: "ios" | "md";
5842
+ /**
5843
+ * 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.
5844
+ */
5845
+ "shape"?: 'soft' | 'round | rectangular';
5846
+ /**
5847
+ * Set to `"xxsmall"` for the smallest badge. Set to "xsmall" for a very small badge. Set to `"small"` for a small badge. Set to "medium" for a medium badge. Set to "large" for a large badge. Set to `"xlarge"` for the largest badge. Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
5848
+ */
5849
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5850
+ /**
5851
+ * The theme determines the visual appearance of the component.
5852
+ */
5853
+ "theme"?: "ios" | "md" | "ionic";
5854
+ /**
5855
+ * 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.
5856
+ */
5857
+ "vertical"?: 'top' | 'bottom';
5169
5858
  }
5170
5859
  interface IonBreadcrumb {
5171
5860
  /**
@@ -5189,7 +5878,7 @@ declare namespace LocalJSX {
5189
5878
  */
5190
5879
  "href"?: string | undefined;
5191
5880
  /**
5192
- * The mode determines which platform styles to use.
5881
+ * The mode determines the platform behaviors of the component.
5193
5882
  */
5194
5883
  "mode"?: "ios" | "md";
5195
5884
  /**
@@ -5220,6 +5909,10 @@ declare namespace LocalJSX {
5220
5909
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5221
5910
  */
5222
5911
  "target"?: string | undefined;
5912
+ /**
5913
+ * The theme determines the visual appearance of the component.
5914
+ */
5915
+ "theme"?: "ios" | "md" | "ionic";
5223
5916
  }
5224
5917
  interface IonBreadcrumbs {
5225
5918
  /**
@@ -5239,13 +5932,17 @@ declare namespace LocalJSX {
5239
5932
  */
5240
5933
  "maxItems"?: number;
5241
5934
  /**
5242
- * The mode determines which platform styles to use.
5935
+ * The mode determines the platform behaviors of the component.
5243
5936
  */
5244
5937
  "mode"?: "ios" | "md";
5245
5938
  /**
5246
5939
  * Emitted when the collapsed indicator is clicked on.
5247
5940
  */
5248
5941
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5942
+ /**
5943
+ * The theme determines the visual appearance of the component.
5944
+ */
5945
+ "theme"?: "ios" | "md" | "ionic";
5249
5946
  }
5250
5947
  interface IonButton {
5251
5948
  /**
@@ -5281,7 +5978,7 @@ declare namespace LocalJSX {
5281
5978
  */
5282
5979
  "href"?: string | undefined;
5283
5980
  /**
5284
- * The mode determines which platform styles to use.
5981
+ * The mode determines the platform behaviors of the component.
5285
5982
  */
5286
5983
  "mode"?: "ios" | "md";
5287
5984
  /**
@@ -5305,13 +6002,13 @@ declare namespace LocalJSX {
5305
6002
  */
5306
6003
  "routerDirection"?: RouterDirection;
5307
6004
  /**
5308
- * Set to `"round"` for a button with more rounded corners.
6005
+ * 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.
5309
6006
  */
5310
- "shape"?: 'round';
6007
+ "shape"?: 'soft' | 'round' | 'rectangular';
5311
6008
  /**
5312
6009
  * 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.
5313
6010
  */
5314
- "size"?: 'small' | 'default' | 'large';
6011
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5315
6012
  /**
5316
6013
  * If `true`, activates a button with a heavier font weight.
5317
6014
  */
@@ -5320,6 +6017,10 @@ declare namespace LocalJSX {
5320
6017
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5321
6018
  */
5322
6019
  "target"?: string | undefined;
6020
+ /**
6021
+ * The theme determines the visual appearance of the component.
6022
+ */
6023
+ "theme"?: "ios" | "md" | "ionic";
5323
6024
  /**
5324
6025
  * The type of the button.
5325
6026
  */
@@ -5327,9 +6028,17 @@ declare namespace LocalJSX {
5327
6028
  }
5328
6029
  interface IonButtons {
5329
6030
  /**
5330
- * 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)
6031
+ * 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)
5331
6032
  */
5332
6033
  "collapse"?: boolean;
6034
+ /**
6035
+ * The mode determines the platform behaviors of the component.
6036
+ */
6037
+ "mode"?: "ios" | "md";
6038
+ /**
6039
+ * The theme determines the visual appearance of the component.
6040
+ */
6041
+ "theme"?: "ios" | "md" | "ionic";
5333
6042
  }
5334
6043
  interface IonCard {
5335
6044
  /**
@@ -5353,7 +6062,7 @@ declare namespace LocalJSX {
5353
6062
  */
5354
6063
  "href"?: string | undefined;
5355
6064
  /**
5356
- * The mode determines which platform styles to use.
6065
+ * The mode determines the platform behaviors of the component.
5357
6066
  */
5358
6067
  "mode"?: "ios" | "md";
5359
6068
  /**
@@ -5368,10 +6077,18 @@ declare namespace LocalJSX {
5368
6077
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5369
6078
  */
5370
6079
  "routerDirection"?: RouterDirection;
6080
+ /**
6081
+ * 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"`.
6082
+ */
6083
+ "shape"?: 'soft' | 'round' | 'rectangular';
5371
6084
  /**
5372
6085
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5373
6086
  */
5374
6087
  "target"?: string | undefined;
6088
+ /**
6089
+ * The theme determines the visual appearance of the component.
6090
+ */
6091
+ "theme"?: "ios" | "md" | "ionic";
5375
6092
  /**
5376
6093
  * The type of the button. Only used when an `onclick` or `button` property is present.
5377
6094
  */
@@ -5379,9 +6096,13 @@ declare namespace LocalJSX {
5379
6096
  }
5380
6097
  interface IonCardContent {
5381
6098
  /**
5382
- * The mode determines which platform styles to use.
6099
+ * The mode determines the platform behaviors of the component.
5383
6100
  */
5384
6101
  "mode"?: "ios" | "md";
6102
+ /**
6103
+ * The theme determines the visual appearance of the component.
6104
+ */
6105
+ "theme"?: "ios" | "md" | "ionic";
5385
6106
  }
5386
6107
  interface IonCardHeader {
5387
6108
  /**
@@ -5389,11 +6110,15 @@ declare namespace LocalJSX {
5389
6110
  */
5390
6111
  "color"?: Color;
5391
6112
  /**
5392
- * The mode determines which platform styles to use.
6113
+ * The mode determines the platform behaviors of the component.
5393
6114
  */
5394
6115
  "mode"?: "ios" | "md";
5395
6116
  /**
5396
- * 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).
6117
+ * The theme determines the visual appearance of the component.
6118
+ */
6119
+ "theme"?: "ios" | "md" | "ionic";
6120
+ /**
6121
+ * 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).
5397
6122
  */
5398
6123
  "translucent"?: boolean;
5399
6124
  }
@@ -5403,9 +6128,13 @@ declare namespace LocalJSX {
5403
6128
  */
5404
6129
  "color"?: Color;
5405
6130
  /**
5406
- * The mode determines which platform styles to use.
6131
+ * The mode determines the platform behaviors of the component.
5407
6132
  */
5408
6133
  "mode"?: "ios" | "md";
6134
+ /**
6135
+ * The theme determines the visual appearance of the component.
6136
+ */
6137
+ "theme"?: "ios" | "md" | "ionic";
5409
6138
  }
5410
6139
  interface IonCardTitle {
5411
6140
  /**
@@ -5413,9 +6142,13 @@ declare namespace LocalJSX {
5413
6142
  */
5414
6143
  "color"?: Color;
5415
6144
  /**
5416
- * The mode determines which platform styles to use.
6145
+ * The mode determines the platform behaviors of the component.
5417
6146
  */
5418
6147
  "mode"?: "ios" | "md";
6148
+ /**
6149
+ * The theme determines the visual appearance of the component.
6150
+ */
6151
+ "theme"?: "ios" | "md" | "ionic";
5419
6152
  }
5420
6153
  interface IonCheckbox {
5421
6154
  /**
@@ -5455,7 +6188,7 @@ declare namespace LocalJSX {
5455
6188
  */
5456
6189
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5457
6190
  /**
5458
- * The mode determines which platform styles to use.
6191
+ * The mode determines the platform behaviors of the component.
5459
6192
  */
5460
6193
  "mode"?: "ios" | "md";
5461
6194
  /**
@@ -5467,7 +6200,7 @@ declare namespace LocalJSX {
5467
6200
  */
5468
6201
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5469
6202
  /**
5470
- * 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.
6203
+ * 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.
5471
6204
  */
5472
6205
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5473
6206
  /**
@@ -5478,6 +6211,18 @@ declare namespace LocalJSX {
5478
6211
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
5479
6212
  */
5480
6213
  "required"?: boolean;
6214
+ /**
6215
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6216
+ */
6217
+ "shape"?: 'soft' | 'rectangular';
6218
+ /**
6219
+ * Set to `"small"` for a checkbox with less height and padding.
6220
+ */
6221
+ "size"?: 'small';
6222
+ /**
6223
+ * The theme determines the visual appearance of the component.
6224
+ */
6225
+ "theme"?: "ios" | "md" | "ionic";
5481
6226
  /**
5482
6227
  * 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>`.
5483
6228
  */
@@ -5493,15 +6238,31 @@ declare namespace LocalJSX {
5493
6238
  */
5494
6239
  "disabled"?: boolean;
5495
6240
  /**
5496
- * The mode determines which platform styles to use.
6241
+ * The mode determines the platform behaviors of the component.
5497
6242
  */
5498
6243
  "mode"?: "ios" | "md";
5499
6244
  /**
5500
6245
  * Display an outline style button.
5501
6246
  */
5502
6247
  "outline"?: boolean;
6248
+ /**
6249
+ * 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.
6250
+ */
6251
+ "shape"?: 'soft' | 'round' | 'rectangular';
6252
+ /**
6253
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6254
+ */
6255
+ "size"?: 'small' | 'large';
6256
+ /**
6257
+ * The theme determines the visual appearance of the component.
6258
+ */
6259
+ "theme"?: "ios" | "md" | "ionic";
5503
6260
  }
5504
6261
  interface IonCol {
6262
+ /**
6263
+ * The mode determines the platform behaviors of the component.
6264
+ */
6265
+ "mode"?: "ios" | "md";
5505
6266
  /**
5506
6267
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5507
6268
  */
@@ -5598,6 +6359,10 @@ declare namespace LocalJSX {
5598
6359
  * 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.
5599
6360
  */
5600
6361
  "sizeXs"?: string;
6362
+ /**
6363
+ * The theme determines the visual appearance of the component.
6364
+ */
6365
+ "theme"?: "ios" | "md" | "ionic";
5601
6366
  }
5602
6367
  interface IonContent {
5603
6368
  /**
@@ -5616,6 +6381,10 @@ declare namespace LocalJSX {
5616
6381
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5617
6382
  */
5618
6383
  "fullscreen"?: boolean;
6384
+ /**
6385
+ * The mode determines the platform behaviors of the component.
6386
+ */
6387
+ "mode"?: "ios" | "md";
5619
6388
  /**
5620
6389
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5621
6390
  */
@@ -5640,6 +6409,10 @@ declare namespace LocalJSX {
5640
6409
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5641
6410
  */
5642
6411
  "scrollY"?: boolean;
6412
+ /**
6413
+ * The theme determines the visual appearance of the component.
6414
+ */
6415
+ "theme"?: "ios" | "md" | "ionic";
5643
6416
  }
5644
6417
  interface IonDatetime {
5645
6418
  /**
@@ -5707,7 +6480,7 @@ declare namespace LocalJSX {
5707
6480
  */
5708
6481
  "minuteValues"?: number[] | number | string;
5709
6482
  /**
5710
- * The mode determines which platform styles to use.
6483
+ * The mode determines the platform behaviors of the component.
5711
6484
  */
5712
6485
  "mode"?: "ios" | "md";
5713
6486
  /**
@@ -5771,7 +6544,11 @@ declare namespace LocalJSX {
5771
6544
  */
5772
6545
  "size"?: 'cover' | 'fixed';
5773
6546
  /**
5774
- * 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.
6547
+ * The theme determines the visual appearance of the component.
6548
+ */
6549
+ "theme"?: "ios" | "md" | "ionic";
6550
+ /**
6551
+ * 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.
5775
6552
  */
5776
6553
  "titleSelectedDatesFormatter"?: TitleSelectedDatesFormatter;
5777
6554
  /**
@@ -5797,9 +6574,13 @@ declare namespace LocalJSX {
5797
6574
  */
5798
6575
  "disabled"?: boolean;
5799
6576
  /**
5800
- * The mode determines which platform styles to use.
6577
+ * The mode determines the platform behaviors of the component.
5801
6578
  */
5802
6579
  "mode"?: "ios" | "md";
6580
+ /**
6581
+ * The theme determines the visual appearance of the component.
6582
+ */
6583
+ "theme"?: "ios" | "md" | "ionic";
5803
6584
  }
5804
6585
  interface IonFab {
5805
6586
  /**
@@ -5814,6 +6595,14 @@ declare namespace LocalJSX {
5814
6595
  * Where to align the fab horizontally in the viewport.
5815
6596
  */
5816
6597
  "horizontal"?: 'start' | 'end' | 'center';
6598
+ /**
6599
+ * The mode determines the platform behaviors of the component.
6600
+ */
6601
+ "mode"?: "ios" | "md";
6602
+ /**
6603
+ * The theme determines the visual appearance of the component.
6604
+ */
6605
+ "theme"?: "ios" | "md" | "ionic";
5817
6606
  /**
5818
6607
  * Where to align the fab vertically in the viewport.
5819
6608
  */
@@ -5845,7 +6634,7 @@ declare namespace LocalJSX {
5845
6634
  */
5846
6635
  "href"?: string | undefined;
5847
6636
  /**
5848
- * The mode determines which platform styles to use.
6637
+ * The mode determines the platform behaviors of the component.
5849
6638
  */
5850
6639
  "mode"?: "ios" | "md";
5851
6640
  /**
@@ -5881,7 +6670,11 @@ declare namespace LocalJSX {
5881
6670
  */
5882
6671
  "target"?: string | undefined;
5883
6672
  /**
5884
- * 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).
6673
+ * The theme determines the visual appearance of the component.
6674
+ */
6675
+ "theme"?: "ios" | "md" | "ionic";
6676
+ /**
6677
+ * 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).
5885
6678
  */
5886
6679
  "translucent"?: boolean;
5887
6680
  /**
@@ -5894,22 +6687,34 @@ declare namespace LocalJSX {
5894
6687
  * If `true`, the fab list will show all fab buttons in the list.
5895
6688
  */
5896
6689
  "activated"?: boolean;
6690
+ /**
6691
+ * The mode determines the platform behaviors of the component.
6692
+ */
6693
+ "mode"?: "ios" | "md";
5897
6694
  /**
5898
6695
  * The side the fab list will show on relative to the main fab button.
5899
6696
  */
5900
6697
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6698
+ /**
6699
+ * The theme determines the visual appearance of the component.
6700
+ */
6701
+ "theme"?: "ios" | "md" | "ionic";
5901
6702
  }
5902
6703
  interface IonFooter {
5903
6704
  /**
5904
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6705
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5905
6706
  */
5906
6707
  "collapse"?: 'fade';
5907
6708
  /**
5908
- * The mode determines which platform styles to use.
6709
+ * The mode determines the platform behaviors of the component.
5909
6710
  */
5910
6711
  "mode"?: "ios" | "md";
5911
6712
  /**
5912
- * 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.
6713
+ * The theme determines the visual appearance of the component.
6714
+ */
6715
+ "theme"?: "ios" | "md" | "ionic";
6716
+ /**
6717
+ * 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.
5913
6718
  */
5914
6719
  "translucent"?: boolean;
5915
6720
  }
@@ -5918,18 +6723,34 @@ declare namespace LocalJSX {
5918
6723
  * If `true`, the grid will have a fixed width based on the screen size.
5919
6724
  */
5920
6725
  "fixed"?: boolean;
6726
+ /**
6727
+ * The mode determines the platform behaviors of the component.
6728
+ */
6729
+ "mode"?: "ios" | "md";
6730
+ /**
6731
+ * The theme determines the visual appearance of the component.
6732
+ */
6733
+ "theme"?: "ios" | "md" | "ionic";
5921
6734
  }
5922
6735
  interface IonHeader {
5923
6736
  /**
5924
- * 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)
6737
+ * 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)
5925
6738
  */
5926
6739
  "collapse"?: 'condense' | 'fade';
5927
6740
  /**
5928
- * The mode determines which platform styles to use.
6741
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6742
+ */
6743
+ "divider"?: boolean;
6744
+ /**
6745
+ * The mode determines the platform behaviors of the component.
5929
6746
  */
5930
6747
  "mode"?: "ios" | "md";
5931
6748
  /**
5932
- * 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.
6749
+ * The theme determines the visual appearance of the component.
6750
+ */
6751
+ "theme"?: "ios" | "md" | "ionic";
6752
+ /**
6753
+ * If `true`, the 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). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
5933
6754
  */
5934
6755
  "translucent"?: boolean;
5935
6756
  }
@@ -5938,6 +6759,10 @@ declare namespace LocalJSX {
5938
6759
  * 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.
5939
6760
  */
5940
6761
  "alt"?: string;
6762
+ /**
6763
+ * The mode determines the platform behaviors of the component.
6764
+ */
6765
+ "mode"?: "ios" | "md";
5941
6766
  /**
5942
6767
  * Emitted when the img fails to load
5943
6768
  */
@@ -5954,12 +6779,20 @@ declare namespace LocalJSX {
5954
6779
  * The image URL. This attribute is mandatory for the `<img>` element.
5955
6780
  */
5956
6781
  "src"?: string;
6782
+ /**
6783
+ * The theme determines the visual appearance of the component.
6784
+ */
6785
+ "theme"?: "ios" | "md" | "ionic";
5957
6786
  }
5958
6787
  interface IonInfiniteScroll {
5959
6788
  /**
5960
6789
  * If `true`, the infinite scroll will be hidden and scroll event listeners will be removed. Set this to true to disable the infinite scroll from actively trying to receive new data while scrolling. This is useful when it is known that there is no more data that can be added, and the infinite scroll is no longer needed.
5961
6790
  */
5962
6791
  "disabled"?: boolean;
6792
+ /**
6793
+ * The mode determines the platform behaviors of the component.
6794
+ */
6795
+ "mode"?: "ios" | "md";
5963
6796
  /**
5964
6797
  * 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.
5965
6798
  */
@@ -5968,6 +6801,10 @@ declare namespace LocalJSX {
5968
6801
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5969
6802
  */
5970
6803
  "position"?: 'top' | 'bottom';
6804
+ /**
6805
+ * The theme determines the visual appearance of the component.
6806
+ */
6807
+ "theme"?: "ios" | "md" | "ionic";
5971
6808
  /**
5972
6809
  * 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.
5973
6810
  */
@@ -5982,6 +6819,14 @@ declare namespace LocalJSX {
5982
6819
  * 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.
5983
6820
  */
5984
6821
  "loadingText"?: string | IonicSafeString;
6822
+ /**
6823
+ * The mode determines the platform behaviors of the component.
6824
+ */
6825
+ "mode"?: "ios" | "md";
6826
+ /**
6827
+ * The theme determines the visual appearance of the component.
6828
+ */
6829
+ "theme"?: "ios" | "md" | "ionic";
5985
6830
  }
5986
6831
  interface IonInput {
5987
6832
  /**
@@ -6041,7 +6886,7 @@ declare namespace LocalJSX {
6041
6886
  */
6042
6887
  "errorText"?: string;
6043
6888
  /**
6044
- * 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.
6889
+ * 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"`.
6045
6890
  */
6046
6891
  "fill"?: 'outline' | 'solid';
6047
6892
  /**
@@ -6057,7 +6902,7 @@ declare namespace LocalJSX {
6057
6902
  */
6058
6903
  "label"?: string;
6059
6904
  /**
6060
- * 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 ("...").
6905
+ * 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.
6061
6906
  */
6062
6907
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6063
6908
  /**
@@ -6077,7 +6922,7 @@ declare namespace LocalJSX {
6077
6922
  */
6078
6923
  "minlength"?: number;
6079
6924
  /**
6080
- * The mode determines which platform styles to use.
6925
+ * The mode determines the platform behaviors of the component.
6081
6926
  */
6082
6927
  "mode"?: "ios" | "md";
6083
6928
  /**
@@ -6121,9 +6966,13 @@ declare namespace LocalJSX {
6121
6966
  */
6122
6967
  "required"?: boolean;
6123
6968
  /**
6124
- * The shape of the input. If "round" it will have an increased border radius.
6969
+ * 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"`.
6125
6970
  */
6126
- "shape"?: 'round';
6971
+ "shape"?: 'soft' | 'round' | 'rectangular';
6972
+ /**
6973
+ * 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.
6974
+ */
6975
+ "size"?: 'medium' | 'large' | 'xlarge';
6127
6976
  /**
6128
6977
  * If `true`, the element will have its spelling and grammar checked.
6129
6978
  */
@@ -6132,6 +6981,10 @@ declare namespace LocalJSX {
6132
6981
  * 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.
6133
6982
  */
6134
6983
  "step"?: string;
6984
+ /**
6985
+ * The theme determines the visual appearance of the component.
6986
+ */
6987
+ "theme"?: "ios" | "md" | "ionic";
6135
6988
  /**
6136
6989
  * The type of control to display. The default type is text.
6137
6990
  */
@@ -6169,7 +7022,7 @@ declare namespace LocalJSX {
6169
7022
  */
6170
7023
  "color"?: Color;
6171
7024
  /**
6172
- * 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.
7025
+ * 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.
6173
7026
  */
6174
7027
  "detail"?: boolean;
6175
7028
  /**
@@ -6193,7 +7046,7 @@ declare namespace LocalJSX {
6193
7046
  */
6194
7047
  "lines"?: 'full' | 'inset' | 'none';
6195
7048
  /**
6196
- * The mode determines which platform styles to use.
7049
+ * The mode determines the platform behaviors of the component.
6197
7050
  */
6198
7051
  "mode"?: "ios" | "md";
6199
7052
  /**
@@ -6212,6 +7065,10 @@ declare namespace LocalJSX {
6212
7065
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6213
7066
  */
6214
7067
  "target"?: string | undefined;
7068
+ /**
7069
+ * The theme determines the visual appearance of the component.
7070
+ */
7071
+ "theme"?: "ios" | "md" | "ionic";
6215
7072
  /**
6216
7073
  * The type of the button. Only used when an `onclick` or `button` property is present.
6217
7074
  */
@@ -6223,15 +7080,27 @@ declare namespace LocalJSX {
6223
7080
  */
6224
7081
  "color"?: Color;
6225
7082
  /**
6226
- * The mode determines which platform styles to use.
7083
+ * The mode determines the platform behaviors of the component.
6227
7084
  */
6228
7085
  "mode"?: "ios" | "md";
6229
7086
  /**
6230
7087
  * When it's set to `true`, the item-divider will stay visible when it reaches the top of the viewport until the next `ion-item-divider` replaces it. This feature relies in `position:sticky`: https://caniuse.com/#feat=css-sticky
6231
7088
  */
6232
7089
  "sticky"?: boolean;
7090
+ /**
7091
+ * The theme determines the visual appearance of the component.
7092
+ */
7093
+ "theme"?: "ios" | "md" | "ionic";
6233
7094
  }
6234
7095
  interface IonItemGroup {
7096
+ /**
7097
+ * The mode determines the platform behaviors of the component.
7098
+ */
7099
+ "mode"?: "ios" | "md";
7100
+ /**
7101
+ * The theme determines the visual appearance of the component.
7102
+ */
7103
+ "theme"?: "ios" | "md" | "ionic";
6235
7104
  }
6236
7105
  interface IonItemOption {
6237
7106
  /**
@@ -6255,23 +7124,35 @@ declare namespace LocalJSX {
6255
7124
  */
6256
7125
  "href"?: string | undefined;
6257
7126
  /**
6258
- * The mode determines which platform styles to use.
7127
+ * The mode determines the platform behaviors of the component.
6259
7128
  */
6260
7129
  "mode"?: "ios" | "md";
6261
7130
  /**
6262
7131
  * 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).
6263
7132
  */
6264
7133
  "rel"?: string | undefined;
7134
+ /**
7135
+ * 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.
7136
+ */
7137
+ "shape"?: 'soft' | 'round' | 'rectangular';
6265
7138
  /**
6266
7139
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6267
7140
  */
6268
7141
  "target"?: string | undefined;
7142
+ /**
7143
+ * The theme determines the visual appearance of the component.
7144
+ */
7145
+ "theme"?: "ios" | "md" | "ionic";
6269
7146
  /**
6270
7147
  * The type of the button.
6271
7148
  */
6272
7149
  "type"?: 'submit' | 'reset' | 'button';
6273
7150
  }
6274
7151
  interface IonItemOptions {
7152
+ /**
7153
+ * The mode determines the platform behaviors of the component.
7154
+ */
7155
+ "mode"?: "ios" | "md";
6275
7156
  /**
6276
7157
  * Emitted when the item has been fully swiped.
6277
7158
  */
@@ -6280,16 +7161,28 @@ declare namespace LocalJSX {
6280
7161
  * 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.
6281
7162
  */
6282
7163
  "side"?: Side;
7164
+ /**
7165
+ * The theme determines the visual appearance of the component.
7166
+ */
7167
+ "theme"?: "ios" | "md" | "ionic";
6283
7168
  }
6284
7169
  interface IonItemSliding {
6285
7170
  /**
6286
7171
  * If `true`, the user cannot interact with the sliding item.
6287
7172
  */
6288
7173
  "disabled"?: boolean;
7174
+ /**
7175
+ * The mode determines the platform behaviors of the component.
7176
+ */
7177
+ "mode"?: "ios" | "md";
6289
7178
  /**
6290
7179
  * Emitted when the sliding position changes.
6291
7180
  */
6292
7181
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7182
+ /**
7183
+ * The theme determines the visual appearance of the component.
7184
+ */
7185
+ "theme"?: "ios" | "md" | "ionic";
6293
7186
  }
6294
7187
  interface IonLabel {
6295
7188
  /**
@@ -6297,13 +7190,17 @@ declare namespace LocalJSX {
6297
7190
  */
6298
7191
  "color"?: Color;
6299
7192
  /**
6300
- * The mode determines which platform styles to use.
7193
+ * The mode determines the platform behaviors of the component.
6301
7194
  */
6302
7195
  "mode"?: "ios" | "md";
6303
7196
  /**
6304
7197
  * The position determines where and how the label behaves inside an item.
6305
7198
  */
6306
7199
  "position"?: 'fixed' | 'stacked' | 'floating';
7200
+ /**
7201
+ * The theme determines the visual appearance of the component.
7202
+ */
7203
+ "theme"?: "ios" | "md" | "ionic";
6307
7204
  }
6308
7205
  interface IonList {
6309
7206
  /**
@@ -6315,9 +7212,17 @@ declare namespace LocalJSX {
6315
7212
  */
6316
7213
  "lines"?: 'full' | 'inset' | 'none';
6317
7214
  /**
6318
- * The mode determines which platform styles to use.
7215
+ * The mode determines the platform behaviors of the component.
6319
7216
  */
6320
7217
  "mode"?: "ios" | "md";
7218
+ /**
7219
+ * 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.
7220
+ */
7221
+ "shape"?: 'soft' | 'round' | 'rectangular';
7222
+ /**
7223
+ * The theme determines the visual appearance of the component.
7224
+ */
7225
+ "theme"?: "ios" | "md" | "ionic";
6321
7226
  }
6322
7227
  interface IonListHeader {
6323
7228
  /**
@@ -6329,9 +7234,13 @@ declare namespace LocalJSX {
6329
7234
  */
6330
7235
  "lines"?: 'full' | 'inset' | 'none';
6331
7236
  /**
6332
- * The mode determines which platform styles to use.
7237
+ * The mode determines the platform behaviors of the component.
6333
7238
  */
6334
7239
  "mode"?: "ios" | "md";
7240
+ /**
7241
+ * The theme determines the visual appearance of the component.
7242
+ */
7243
+ "theme"?: "ios" | "md" | "ionic";
6335
7244
  }
6336
7245
  interface IonLoading {
6337
7246
  /**
@@ -6375,7 +7284,7 @@ declare namespace LocalJSX {
6375
7284
  */
6376
7285
  "message"?: string | IonicSafeString;
6377
7286
  /**
6378
- * The mode determines which platform styles to use.
7287
+ * The mode determines the platform behaviors of the component.
6379
7288
  */
6380
7289
  "mode"?: "ios" | "md";
6381
7290
  /**
@@ -6419,7 +7328,11 @@ declare namespace LocalJSX {
6419
7328
  */
6420
7329
  "spinner"?: SpinnerTypes | null;
6421
7330
  /**
6422
- * 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).
7331
+ * The theme determines the visual appearance of the component.
7332
+ */
7333
+ "theme"?: "ios" | "md" | "ionic";
7334
+ /**
7335
+ * 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).
6423
7336
  */
6424
7337
  "translucent"?: boolean;
6425
7338
  /**
@@ -6444,6 +7357,10 @@ declare namespace LocalJSX {
6444
7357
  * An id for the menu.
6445
7358
  */
6446
7359
  "menuId"?: string;
7360
+ /**
7361
+ * The mode determines the platform behaviors of the component.
7362
+ */
7363
+ "mode"?: "ios" | "md";
6447
7364
  /**
6448
7365
  * Emitted when the menu is closed.
6449
7366
  */
@@ -6468,6 +7385,10 @@ declare namespace LocalJSX {
6468
7385
  * If `true`, swiping the menu is enabled.
6469
7386
  */
6470
7387
  "swipeGesture"?: boolean;
7388
+ /**
7389
+ * The theme determines the visual appearance of the component.
7390
+ */
7391
+ "theme"?: "ios" | "md" | "ionic";
6471
7392
  /**
6472
7393
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6473
7394
  */
@@ -6491,9 +7412,13 @@ declare namespace LocalJSX {
6491
7412
  */
6492
7413
  "menu"?: string;
6493
7414
  /**
6494
- * The mode determines which platform styles to use.
7415
+ * The mode determines the platform behaviors of the component.
6495
7416
  */
6496
7417
  "mode"?: "ios" | "md";
7418
+ /**
7419
+ * The theme determines the visual appearance of the component.
7420
+ */
7421
+ "theme"?: "ios" | "md" | "ionic";
6497
7422
  /**
6498
7423
  * The type of the button.
6499
7424
  */
@@ -6508,6 +7433,14 @@ declare namespace LocalJSX {
6508
7433
  * 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.
6509
7434
  */
6510
7435
  "menu"?: string;
7436
+ /**
7437
+ * The mode determines the platform behaviors of the component.
7438
+ */
7439
+ "mode"?: "ios" | "md";
7440
+ /**
7441
+ * The theme determines the visual appearance of the component.
7442
+ */
7443
+ "theme"?: "ios" | "md" | "ionic";
6511
7444
  }
6512
7445
  interface IonModal {
6513
7446
  /**
@@ -6575,7 +7508,7 @@ declare namespace LocalJSX {
6575
7508
  */
6576
7509
  "leaveAnimation"?: AnimationBuilder;
6577
7510
  /**
6578
- * The mode determines which platform styles to use.
7511
+ * The mode determines the platform behaviors of the component.
6579
7512
  */
6580
7513
  "mode"?: "ios" | "md";
6581
7514
  /**
@@ -6618,10 +7551,18 @@ declare namespace LocalJSX {
6618
7551
  * 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.
6619
7552
  */
6620
7553
  "presentingElement"?: HTMLElement;
7554
+ /**
7555
+ * 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.
7556
+ */
7557
+ "shape"?: 'soft' | 'round' | 'rectangular';
6621
7558
  /**
6622
7559
  * 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.
6623
7560
  */
6624
7561
  "showBackdrop"?: boolean;
7562
+ /**
7563
+ * The theme determines the visual appearance of the component.
7564
+ */
7565
+ "theme"?: "ios" | "md" | "ionic";
6625
7566
  /**
6626
7567
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6627
7568
  */
@@ -6633,9 +7574,13 @@ declare namespace LocalJSX {
6633
7574
  */
6634
7575
  "animated"?: boolean;
6635
7576
  /**
6636
- * 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.
7577
+ * 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.
6637
7578
  */
6638
7579
  "animation"?: AnimationBuilder;
7580
+ /**
7581
+ * The mode determines the platform behaviors of the component.
7582
+ */
7583
+ "mode"?: "ios" | "md";
6639
7584
  /**
6640
7585
  * Event fired when the nav has changed components
6641
7586
  */
@@ -6656,6 +7601,10 @@ declare namespace LocalJSX {
6656
7601
  * If the nav component should allow for swipe-to-go-back.
6657
7602
  */
6658
7603
  "swipeGesture"?: boolean;
7604
+ /**
7605
+ * The theme determines the visual appearance of the component.
7606
+ */
7607
+ "theme"?: "ios" | "md" | "ionic";
6659
7608
  }
6660
7609
  interface IonNavLink {
6661
7610
  /**
@@ -6666,6 +7615,10 @@ declare namespace LocalJSX {
6666
7615
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6667
7616
  */
6668
7617
  "componentProps"?: ComponentProps;
7618
+ /**
7619
+ * The mode determines the platform behaviors of the component.
7620
+ */
7621
+ "mode"?: "ios" | "md";
6669
7622
  /**
6670
7623
  * The transition animation when navigating to another page.
6671
7624
  */
@@ -6674,6 +7627,10 @@ declare namespace LocalJSX {
6674
7627
  * The transition direction when navigating to another page.
6675
7628
  */
6676
7629
  "routerDirection"?: RouterDirection;
7630
+ /**
7631
+ * The theme determines the visual appearance of the component.
7632
+ */
7633
+ "theme"?: "ios" | "md" | "ionic";
6677
7634
  }
6678
7635
  interface IonNote {
6679
7636
  /**
@@ -6681,15 +7638,23 @@ declare namespace LocalJSX {
6681
7638
  */
6682
7639
  "color"?: Color;
6683
7640
  /**
6684
- * The mode determines which platform styles to use.
7641
+ * The mode determines the platform behaviors of the component.
6685
7642
  */
6686
7643
  "mode"?: "ios" | "md";
7644
+ /**
7645
+ * The theme determines the visual appearance of the component.
7646
+ */
7647
+ "theme"?: "ios" | "md" | "ionic";
6687
7648
  }
6688
7649
  interface IonPicker {
6689
7650
  /**
6690
- * The mode determines which platform styles to use.
7651
+ * The mode determines the platform behaviors of the component.
6691
7652
  */
6692
7653
  "mode"?: "ios" | "md";
7654
+ /**
7655
+ * The theme determines the visual appearance of the component.
7656
+ */
7657
+ "theme"?: "ios" | "md" | "ionic";
6693
7658
  }
6694
7659
  interface IonPickerColumn {
6695
7660
  /**
@@ -6701,13 +7666,17 @@ declare namespace LocalJSX {
6701
7666
  */
6702
7667
  "disabled"?: boolean;
6703
7668
  /**
6704
- * The mode determines which platform styles to use.
7669
+ * The mode determines the platform behaviors of the component.
6705
7670
  */
6706
7671
  "mode"?: "ios" | "md";
6707
7672
  /**
6708
7673
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6709
7674
  */
6710
7675
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7676
+ /**
7677
+ * The theme determines the visual appearance of the component.
7678
+ */
7679
+ "theme"?: "ios" | "md" | "ionic";
6711
7680
  /**
6712
7681
  * The selected option in the picker.
6713
7682
  */
@@ -6722,6 +7691,14 @@ declare namespace LocalJSX {
6722
7691
  * If `true`, the user cannot interact with the picker column option.
6723
7692
  */
6724
7693
  "disabled"?: boolean;
7694
+ /**
7695
+ * The mode determines the platform behaviors of the component.
7696
+ */
7697
+ "mode"?: "ios" | "md";
7698
+ /**
7699
+ * The theme determines the visual appearance of the component.
7700
+ */
7701
+ "theme"?: "ios" | "md" | "ionic";
6725
7702
  /**
6726
7703
  * The text value of the option.
6727
7704
  */
@@ -6773,7 +7750,7 @@ declare namespace LocalJSX {
6773
7750
  */
6774
7751
  "leaveAnimation"?: AnimationBuilder;
6775
7752
  /**
6776
- * The mode determines which platform styles to use.
7753
+ * The mode determines the platform behaviors of the component.
6777
7754
  */
6778
7755
  "mode"?: "ios" | "md";
6779
7756
  /**
@@ -6812,6 +7789,10 @@ declare namespace LocalJSX {
6812
7789
  * If `true`, a backdrop will be displayed behind the picker.
6813
7790
  */
6814
7791
  "showBackdrop"?: boolean;
7792
+ /**
7793
+ * The theme determines the visual appearance of the component.
7794
+ */
7795
+ "theme"?: "ios" | "md" | "ionic";
6815
7796
  /**
6816
7797
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6817
7798
  */
@@ -6825,7 +7806,7 @@ declare namespace LocalJSX {
6825
7806
  }
6826
7807
  interface IonPopover {
6827
7808
  /**
6828
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7809
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6829
7810
  */
6830
7811
  "alignment"?: PositionAlign;
6831
7812
  /**
@@ -6833,7 +7814,7 @@ declare namespace LocalJSX {
6833
7814
  */
6834
7815
  "animated"?: boolean;
6835
7816
  /**
6836
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7817
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6837
7818
  */
6838
7819
  "arrow"?: boolean;
6839
7820
  /**
@@ -6885,7 +7866,7 @@ declare namespace LocalJSX {
6885
7866
  */
6886
7867
  "leaveAnimation"?: AnimationBuilder;
6887
7868
  /**
6888
- * The mode determines which platform styles to use.
7869
+ * The mode determines the platform behaviors of the component.
6889
7870
  */
6890
7871
  "mode"?: "ios" | "md";
6891
7872
  /**
@@ -6937,7 +7918,11 @@ declare namespace LocalJSX {
6937
7918
  */
6938
7919
  "size"?: PopoverSize;
6939
7920
  /**
6940
- * 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).
7921
+ * The theme determines the visual appearance of the component.
7922
+ */
7923
+ "theme"?: "ios" | "md" | "ionic";
7924
+ /**
7925
+ * 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).
6941
7926
  */
6942
7927
  "translucent"?: boolean;
6943
7928
  /**
@@ -6959,13 +7944,21 @@ declare namespace LocalJSX {
6959
7944
  */
6960
7945
  "color"?: Color;
6961
7946
  /**
6962
- * The mode determines which platform styles to use.
7947
+ * The mode determines the platform behaviors of the component.
6963
7948
  */
6964
7949
  "mode"?: "ios" | "md";
6965
7950
  /**
6966
7951
  * If true, reverse the progress bar direction.
6967
7952
  */
6968
7953
  "reversed"?: boolean;
7954
+ /**
7955
+ * 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.
7956
+ */
7957
+ "shape"?: 'round' | 'rectangular';
7958
+ /**
7959
+ * The theme determines the visual appearance of the component.
7960
+ */
7961
+ "theme"?: "ios" | "md" | "ionic";
6969
7962
  /**
6970
7963
  * 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).
6971
7964
  */
@@ -6997,7 +7990,7 @@ declare namespace LocalJSX {
6997
7990
  */
6998
7991
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6999
7992
  /**
7000
- * The mode determines which platform styles to use.
7993
+ * The mode determines the platform behaviors of the component.
7001
7994
  */
7002
7995
  "mode"?: "ios" | "md";
7003
7996
  /**
@@ -7012,6 +8005,10 @@ declare namespace LocalJSX {
7012
8005
  * Emitted when the radio button has focus.
7013
8006
  */
7014
8007
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
8008
+ /**
8009
+ * The theme determines the visual appearance of the component.
8010
+ */
8011
+ "theme"?: "ios" | "md" | "ionic";
7015
8012
  /**
7016
8013
  * the value of the radio.
7017
8014
  */
@@ -7034,6 +8031,10 @@ declare namespace LocalJSX {
7034
8031
  * The helper text to display at the top of the radio group.
7035
8032
  */
7036
8033
  "helperText"?: string;
8034
+ /**
8035
+ * The mode determines the platform behaviors of the component.
8036
+ */
8037
+ "mode"?: "ios" | "md";
7037
8038
  /**
7038
8039
  * The name of the control, which is submitted with the form data.
7039
8040
  */
@@ -7042,6 +8043,10 @@ declare namespace LocalJSX {
7042
8043
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7043
8044
  */
7044
8045
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
8046
+ /**
8047
+ * The theme determines the visual appearance of the component.
8048
+ */
8049
+ "theme"?: "ios" | "md" | "ionic";
7045
8050
  /**
7046
8051
  * the value of the radio group.
7047
8052
  */
@@ -7085,7 +8090,7 @@ declare namespace LocalJSX {
7085
8090
  */
7086
8091
  "min"?: number;
7087
8092
  /**
7088
- * The mode determines which platform styles to use.
8093
+ * The mode determines the platform behaviors of the component.
7089
8094
  */
7090
8095
  "mode"?: "ios" | "md";
7091
8096
  /**
@@ -7132,6 +8137,10 @@ declare namespace LocalJSX {
7132
8137
  * Specifies the value granularity.
7133
8138
  */
7134
8139
  "step"?: number;
8140
+ /**
8141
+ * The theme determines the visual appearance of the component.
8142
+ */
8143
+ "theme"?: "ios" | "md" | "ionic";
7135
8144
  /**
7136
8145
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7137
8146
  */
@@ -7151,7 +8160,7 @@ declare namespace LocalJSX {
7151
8160
  */
7152
8161
  "disabled"?: boolean;
7153
8162
  /**
7154
- * The mode determines which platform styles to use.
8163
+ * The mode determines the platform behaviors of the component.
7155
8164
  */
7156
8165
  "mode"?: "ios" | "md";
7157
8166
  /**
@@ -7182,8 +8191,16 @@ declare namespace LocalJSX {
7182
8191
  * Time it takes the refresher to snap back to the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7183
8192
  */
7184
8193
  "snapbackDuration"?: string;
8194
+ /**
8195
+ * The theme determines the visual appearance of the component.
8196
+ */
8197
+ "theme"?: "ios" | "md" | "ionic";
7185
8198
  }
7186
8199
  interface IonRefresherContent {
8200
+ /**
8201
+ * The mode determines the platform behaviors of the component.
8202
+ */
8203
+ "mode"?: "ios" | "md";
7187
8204
  /**
7188
8205
  * 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.
7189
8206
  */
@@ -7200,20 +8217,48 @@ declare namespace LocalJSX {
7200
8217
  * 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.
7201
8218
  */
7202
8219
  "refreshingText"?: string | IonicSafeString;
8220
+ /**
8221
+ * The theme determines the visual appearance of the component.
8222
+ */
8223
+ "theme"?: "ios" | "md" | "ionic";
7203
8224
  }
7204
8225
  interface IonReorder {
8226
+ /**
8227
+ * The mode determines the platform behaviors of the component.
8228
+ */
8229
+ "mode"?: "ios" | "md";
8230
+ /**
8231
+ * The theme determines the visual appearance of the component.
8232
+ */
8233
+ "theme"?: "ios" | "md" | "ionic";
7205
8234
  }
7206
8235
  interface IonReorderGroup {
7207
8236
  /**
7208
8237
  * If `true`, the reorder will be hidden.
7209
8238
  */
7210
8239
  "disabled"?: boolean;
8240
+ /**
8241
+ * The mode determines the platform behaviors of the component.
8242
+ */
8243
+ "mode"?: "ios" | "md";
7211
8244
  /**
7212
8245
  * Event that needs to be listened to in order to complete the reorder action. Once the event has been emitted, the `complete()` method then needs to be called in order to finalize the reorder action.
7213
8246
  */
7214
8247
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8248
+ /**
8249
+ * The theme determines the visual appearance of the component.
8250
+ */
8251
+ "theme"?: "ios" | "md" | "ionic";
7215
8252
  }
7216
8253
  interface IonRippleEffect {
8254
+ /**
8255
+ * The mode determines the platform behaviors of the component.
8256
+ */
8257
+ "mode"?: "ios" | "md";
8258
+ /**
8259
+ * The theme determines the visual appearance of the component.
8260
+ */
8261
+ "theme"?: "ios" | "md" | "ionic";
7217
8262
  /**
7218
8263
  * 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.
7219
8264
  */
@@ -7236,10 +8281,18 @@ declare namespace LocalJSX {
7236
8281
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7237
8282
  */
7238
8283
  "componentProps"?: { [key: string]: any };
8284
+ /**
8285
+ * The mode determines the platform behaviors of the component.
8286
+ */
8287
+ "mode"?: "ios" | "md";
7239
8288
  /**
7240
8289
  * Used internally by `ion-router` to know when this route did change.
7241
8290
  */
7242
8291
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8292
+ /**
8293
+ * The theme determines the visual appearance of the component.
8294
+ */
8295
+ "theme"?: "ios" | "md" | "ionic";
7243
8296
  /**
7244
8297
  * 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.
7245
8298
  */
@@ -7260,6 +8313,10 @@ declare namespace LocalJSX {
7260
8313
  "to": string | undefined | null;
7261
8314
  }
7262
8315
  interface IonRouter {
8316
+ /**
8317
+ * The mode determines the platform behaviors of the component.
8318
+ */
8319
+ "mode"?: "ios" | "md";
7263
8320
  /**
7264
8321
  * Emitted when the route had changed
7265
8322
  */
@@ -7272,6 +8329,10 @@ declare namespace LocalJSX {
7272
8329
  * The root path to use when matching URLs. By default, this is set to "/", but you can specify an alternate prefix for all URL paths.
7273
8330
  */
7274
8331
  "root"?: string;
8332
+ /**
8333
+ * The theme determines the visual appearance of the component.
8334
+ */
8335
+ "theme"?: "ios" | "md" | "ionic";
7275
8336
  /**
7276
8337
  * 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.
7277
8338
  */
@@ -7286,6 +8347,10 @@ declare namespace LocalJSX {
7286
8347
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7287
8348
  */
7288
8349
  "href"?: string | undefined;
8350
+ /**
8351
+ * The mode determines the platform behaviors of the component.
8352
+ */
8353
+ "mode"?: "ios" | "md";
7289
8354
  /**
7290
8355
  * 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).
7291
8356
  */
@@ -7302,6 +8367,10 @@ declare namespace LocalJSX {
7302
8367
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7303
8368
  */
7304
8369
  "target"?: string | undefined;
8370
+ /**
8371
+ * The theme determines the visual appearance of the component.
8372
+ */
8373
+ "theme"?: "ios" | "md" | "ionic";
7305
8374
  }
7306
8375
  interface IonRouterOutlet {
7307
8376
  /**
@@ -7313,11 +8382,23 @@ declare namespace LocalJSX {
7313
8382
  */
7314
8383
  "animation"?: AnimationBuilder;
7315
8384
  /**
7316
- * The mode determines which platform styles to use.
8385
+ * The mode determines the platform behaviors of the component.
7317
8386
  */
7318
8387
  "mode"?: "ios" | "md";
8388
+ /**
8389
+ * The theme determines the visual appearance of the component.
8390
+ */
8391
+ "theme"?: "ios" | "md" | "ionic";
7319
8392
  }
7320
8393
  interface IonRow {
8394
+ /**
8395
+ * The mode determines the platform behaviors of the component.
8396
+ */
8397
+ "mode"?: "ios" | "md";
8398
+ /**
8399
+ * The theme determines the visual appearance of the component.
8400
+ */
8401
+ "theme"?: "ios" | "md" | "ionic";
7321
8402
  }
7322
8403
  interface IonSearchbar {
7323
8404
  /**
@@ -7337,15 +8418,15 @@ declare namespace LocalJSX {
7337
8418
  */
7338
8419
  "autocorrect"?: 'on' | 'off';
7339
8420
  /**
7340
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8421
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7341
8422
  */
7342
8423
  "cancelButtonIcon"?: string;
7343
8424
  /**
7344
- * Set the the cancel button text. Only applies to `ios` mode.
8425
+ * Set the cancel button text. Only available when the theme is `"ios"`.
7345
8426
  */
7346
8427
  "cancelButtonText"?: string;
7347
8428
  /**
7348
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8429
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7349
8430
  */
7350
8431
  "clearIcon"?: string;
7351
8432
  /**
@@ -7377,7 +8458,7 @@ declare namespace LocalJSX {
7377
8458
  */
7378
8459
  "minlength"?: number;
7379
8460
  /**
7380
- * The mode determines which platform styles to use.
8461
+ * The mode determines the platform behaviors of the component.
7381
8462
  */
7382
8463
  "mode"?: "ios" | "md";
7383
8464
  /**
@@ -7413,9 +8494,13 @@ declare namespace LocalJSX {
7413
8494
  */
7414
8495
  "placeholder"?: string;
7415
8496
  /**
7416
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8497
+ * 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.
8498
+ */
8499
+ "searchIcon"?: string | boolean;
8500
+ /**
8501
+ * 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.
7417
8502
  */
7418
- "searchIcon"?: string;
8503
+ "shape"?: 'soft' | 'round' | 'rectangular';
7419
8504
  /**
7420
8505
  * 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.
7421
8506
  */
@@ -7424,10 +8509,18 @@ declare namespace LocalJSX {
7424
8509
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
7425
8510
  */
7426
8511
  "showClearButton"?: 'never' | 'focus' | 'always';
8512
+ /**
8513
+ * 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.
8514
+ */
8515
+ "size"?: 'small' | 'medium' | 'large';
7427
8516
  /**
7428
8517
  * If `true`, enable spellcheck on the input.
7429
8518
  */
7430
8519
  "spellcheck"?: boolean;
8520
+ /**
8521
+ * The theme determines the visual appearance of the component.
8522
+ */
8523
+ "theme"?: "ios" | "md" | "ionic";
7431
8524
  /**
7432
8525
  * Set the type of the input.
7433
8526
  */
@@ -7447,7 +8540,7 @@ declare namespace LocalJSX {
7447
8540
  */
7448
8541
  "disabled"?: boolean;
7449
8542
  /**
7450
- * The mode determines which platform styles to use.
8543
+ * The mode determines the platform behaviors of the component.
7451
8544
  */
7452
8545
  "mode"?: "ios" | "md";
7453
8546
  /**
@@ -7466,6 +8559,10 @@ declare namespace LocalJSX {
7466
8559
  * If `true`, users will be able to swipe between segment buttons to activate them.
7467
8560
  */
7468
8561
  "swipeGesture"?: boolean;
8562
+ /**
8563
+ * The theme determines the visual appearance of the component.
8564
+ */
8565
+ "theme"?: "ios" | "md" | "ionic";
7469
8566
  /**
7470
8567
  * the value of the segment.
7471
8568
  */
@@ -7485,9 +8582,13 @@ declare namespace LocalJSX {
7485
8582
  */
7486
8583
  "layout"?: SegmentButtonLayout;
7487
8584
  /**
7488
- * The mode determines which platform styles to use.
8585
+ * The mode determines the platform behaviors of the component.
7489
8586
  */
7490
8587
  "mode"?: "ios" | "md";
8588
+ /**
8589
+ * The theme determines the visual appearance of the component.
8590
+ */
8591
+ "theme"?: "ios" | "md" | "ionic";
7491
8592
  /**
7492
8593
  * The type of the button.
7493
8594
  */
@@ -7531,11 +8632,11 @@ declare namespace LocalJSX {
7531
8632
  */
7532
8633
  "errorText"?: string;
7533
8634
  /**
7534
- * 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.
8635
+ * 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.
7535
8636
  */
7536
8637
  "expandedIcon"?: string;
7537
8638
  /**
7538
- * 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.
8639
+ * 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.
7539
8640
  */
7540
8641
  "fill"?: 'outline' | 'solid';
7541
8642
  /**
@@ -7563,7 +8664,7 @@ declare namespace LocalJSX {
7563
8664
  */
7564
8665
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7565
8666
  /**
7566
- * The mode determines which platform styles to use.
8667
+ * The mode determines the platform behaviors of the component.
7567
8668
  */
7568
8669
  "mode"?: "ios" | "md";
7569
8670
  /**
@@ -7611,11 +8712,19 @@ declare namespace LocalJSX {
7611
8712
  */
7612
8713
  "selectedText"?: string | null;
7613
8714
  /**
7614
- * The shape of the select. If "round" it will have an increased border radius.
8715
+ * 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.
8716
+ */
8717
+ "shape"?: 'soft' | 'round' | 'rectangular';
8718
+ /**
8719
+ * 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.
8720
+ */
8721
+ "size"?: 'small' | 'medium' | 'large';
8722
+ /**
8723
+ * The theme determines the visual appearance of the component.
7615
8724
  */
7616
- "shape"?: 'round';
8725
+ "theme"?: "ios" | "md" | "ionic";
7617
8726
  /**
7618
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8727
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7619
8728
  */
7620
8729
  "toggleIcon"?: string;
7621
8730
  /**
@@ -7633,6 +8742,14 @@ declare namespace LocalJSX {
7633
8742
  * 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.
7634
8743
  */
7635
8744
  "disabled"?: boolean;
8745
+ /**
8746
+ * The mode determines the platform behaviors of the component.
8747
+ */
8748
+ "mode"?: "ios" | "md";
8749
+ /**
8750
+ * The theme determines the visual appearance of the component.
8751
+ */
8752
+ "theme"?: "ios" | "md" | "ionic";
7636
8753
  /**
7637
8754
  * The text value of the option.
7638
8755
  */
@@ -7647,6 +8764,10 @@ declare namespace LocalJSX {
7647
8764
  * The text content of the popover body
7648
8765
  */
7649
8766
  "message"?: string;
8767
+ /**
8768
+ * The mode determines the platform behaviors of the component.
8769
+ */
8770
+ "mode"?: "ios" | "md";
7650
8771
  /**
7651
8772
  * If true, the select accepts multiple values
7652
8773
  */
@@ -7659,12 +8780,24 @@ declare namespace LocalJSX {
7659
8780
  * The subheader text of the popover
7660
8781
  */
7661
8782
  "subHeader"?: string;
8783
+ /**
8784
+ * The theme determines the visual appearance of the component.
8785
+ */
8786
+ "theme"?: "ios" | "md" | "ionic";
7662
8787
  }
7663
8788
  interface IonSkeletonText {
7664
8789
  /**
7665
8790
  * If `true`, the skeleton text will animate.
7666
8791
  */
7667
8792
  "animated"?: boolean;
8793
+ /**
8794
+ * The mode determines the platform behaviors of the component.
8795
+ */
8796
+ "mode"?: "ios" | "md";
8797
+ /**
8798
+ * The theme determines the visual appearance of the component.
8799
+ */
8800
+ "theme"?: "ios" | "md" | "ionic";
7668
8801
  }
7669
8802
  interface IonSpinner {
7670
8803
  /**
@@ -7675,6 +8808,10 @@ declare namespace LocalJSX {
7675
8808
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7676
8809
  */
7677
8810
  "duration"?: number;
8811
+ /**
8812
+ * The mode determines the platform behaviors of the component.
8813
+ */
8814
+ "mode"?: "ios" | "md";
7678
8815
  /**
7679
8816
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7680
8817
  */
@@ -7683,6 +8820,14 @@ declare namespace LocalJSX {
7683
8820
  * If `true`, the spinner's animation will be paused.
7684
8821
  */
7685
8822
  "paused"?: boolean;
8823
+ /**
8824
+ * 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.
8825
+ */
8826
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8827
+ /**
8828
+ * The theme determines the visual appearance of the component.
8829
+ */
8830
+ "theme"?: "ios" | "md" | "ionic";
7686
8831
  }
7687
8832
  interface IonSplitPane {
7688
8833
  /**
@@ -7693,10 +8838,18 @@ declare namespace LocalJSX {
7693
8838
  * If `true`, the split pane will be hidden.
7694
8839
  */
7695
8840
  "disabled"?: boolean;
8841
+ /**
8842
+ * The mode determines the platform behaviors of the component.
8843
+ */
8844
+ "mode"?: "ios" | "md";
7696
8845
  /**
7697
8846
  * Expression to be called when the split-pane visibility has changed
7698
8847
  */
7699
8848
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8849
+ /**
8850
+ * The theme determines the visual appearance of the component.
8851
+ */
8852
+ "theme"?: "ios" | "md" | "ionic";
7700
8853
  /**
7701
8854
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
7702
8855
  */
@@ -7707,10 +8860,18 @@ declare namespace LocalJSX {
7707
8860
  * The component to display inside of the tab.
7708
8861
  */
7709
8862
  "component"?: ComponentRef;
8863
+ /**
8864
+ * The mode determines the platform behaviors of the component.
8865
+ */
8866
+ "mode"?: "ios" | "md";
7710
8867
  /**
7711
8868
  * 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.
7712
8869
  */
7713
8870
  "tab": string;
8871
+ /**
8872
+ * The theme determines the visual appearance of the component.
8873
+ */
8874
+ "theme"?: "ios" | "md" | "ionic";
7714
8875
  }
7715
8876
  interface IonTabBar {
7716
8877
  /**
@@ -7718,7 +8879,11 @@ declare namespace LocalJSX {
7718
8879
  */
7719
8880
  "color"?: Color;
7720
8881
  /**
7721
- * The mode determines which platform styles to use.
8882
+ * 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"`.
8883
+ */
8884
+ "expand"?: 'compact' | 'full';
8885
+ /**
8886
+ * The mode determines the platform behaviors of the component.
7722
8887
  */
7723
8888
  "mode"?: "ios" | "md";
7724
8889
  /**
@@ -7726,7 +8891,15 @@ declare namespace LocalJSX {
7726
8891
  */
7727
8892
  "selectedTab"?: string;
7728
8893
  /**
7729
- * 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).
8894
+ * 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.
8895
+ */
8896
+ "shape"?: 'soft' | 'round' | 'rectangular';
8897
+ /**
8898
+ * The theme determines the visual appearance of the component.
8899
+ */
8900
+ "theme"?: "ios" | "md" | "ionic";
8901
+ /**
8902
+ * 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).
7730
8903
  */
7731
8904
  "translucent"?: boolean;
7732
8905
  }
@@ -7748,7 +8921,7 @@ declare namespace LocalJSX {
7748
8921
  */
7749
8922
  "layout"?: TabButtonLayout;
7750
8923
  /**
7751
- * The mode determines which platform styles to use.
8924
+ * The mode determines the platform behaviors of the component.
7752
8925
  */
7753
8926
  "mode"?: "ios" | "md";
7754
8927
  /**
@@ -7759,6 +8932,10 @@ declare namespace LocalJSX {
7759
8932
  * The selected tab component
7760
8933
  */
7761
8934
  "selected"?: boolean;
8935
+ /**
8936
+ * 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.
8937
+ */
8938
+ "shape"?: 'soft' | 'round' | 'rectangular';
7762
8939
  /**
7763
8940
  * 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.
7764
8941
  */
@@ -7767,8 +8944,16 @@ declare namespace LocalJSX {
7767
8944
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7768
8945
  */
7769
8946
  "target"?: string | undefined;
8947
+ /**
8948
+ * The theme determines the visual appearance of the component.
8949
+ */
8950
+ "theme"?: "ios" | "md" | "ionic";
7770
8951
  }
7771
8952
  interface IonTabs {
8953
+ /**
8954
+ * The mode determines the platform behaviors of the component.
8955
+ */
8956
+ "mode"?: "ios" | "md";
7772
8957
  /**
7773
8958
  * Emitted when the navigation has finished transitioning to a new component.
7774
8959
  */
@@ -7777,6 +8962,10 @@ declare namespace LocalJSX {
7777
8962
  * Emitted when the navigation is about to transition to a new component.
7778
8963
  */
7779
8964
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8965
+ /**
8966
+ * The theme determines the visual appearance of the component.
8967
+ */
8968
+ "theme"?: "ios" | "md" | "ionic";
7780
8969
  }
7781
8970
  interface IonText {
7782
8971
  /**
@@ -7784,9 +8973,13 @@ declare namespace LocalJSX {
7784
8973
  */
7785
8974
  "color"?: Color;
7786
8975
  /**
7787
- * The mode determines which platform styles to use.
8976
+ * The mode determines the platform behaviors of the component.
7788
8977
  */
7789
8978
  "mode"?: "ios" | "md";
8979
+ /**
8980
+ * The theme determines the visual appearance of the component.
8981
+ */
8982
+ "theme"?: "ios" | "md" | "ionic";
7790
8983
  }
7791
8984
  interface IonTextarea {
7792
8985
  /**
@@ -7838,7 +9031,7 @@ declare namespace LocalJSX {
7838
9031
  */
7839
9032
  "errorText"?: string;
7840
9033
  /**
7841
- * 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.
9034
+ * 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"`.
7842
9035
  */
7843
9036
  "fill"?: 'outline' | 'solid';
7844
9037
  /**
@@ -7866,7 +9059,7 @@ declare namespace LocalJSX {
7866
9059
  */
7867
9060
  "minlength"?: number;
7868
9061
  /**
7869
- * The mode determines which platform styles to use.
9062
+ * The mode determines the platform behaviors of the component.
7870
9063
  */
7871
9064
  "mode"?: "ios" | "md";
7872
9065
  /**
@@ -7906,13 +9099,21 @@ declare namespace LocalJSX {
7906
9099
  */
7907
9100
  "rows"?: number;
7908
9101
  /**
7909
- * The shape of the textarea. If "round" it will have an increased border radius.
9102
+ * 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.
7910
9103
  */
7911
- "shape"?: 'round';
9104
+ "shape"?: 'soft' | 'round' | 'rectangular';
9105
+ /**
9106
+ * 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.
9107
+ */
9108
+ "size"?: 'small' | 'medium' | 'large';
7912
9109
  /**
7913
9110
  * If `true`, the element will have its spelling and grammar checked.
7914
9111
  */
7915
9112
  "spellcheck"?: boolean;
9113
+ /**
9114
+ * The theme determines the visual appearance of the component.
9115
+ */
9116
+ "theme"?: "ios" | "md" | "ionic";
7916
9117
  /**
7917
9118
  * The value of the textarea.
7918
9119
  */
@@ -7923,16 +9124,32 @@ declare namespace LocalJSX {
7923
9124
  "wrap"?: 'hard' | 'soft' | 'off';
7924
9125
  }
7925
9126
  interface IonThumbnail {
9127
+ /**
9128
+ * The mode determines the platform behaviors of the component.
9129
+ */
9130
+ "mode"?: "ios" | "md";
9131
+ /**
9132
+ * The theme determines the visual appearance of the component.
9133
+ */
9134
+ "theme"?: "ios" | "md" | "ionic";
7926
9135
  }
7927
9136
  interface IonTitle {
7928
9137
  /**
7929
9138
  * 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).
7930
9139
  */
7931
9140
  "color"?: Color;
9141
+ /**
9142
+ * The mode determines the platform behaviors of the component.
9143
+ */
9144
+ "mode"?: "ios" | "md";
7932
9145
  /**
7933
9146
  * The size of the toolbar title.
7934
9147
  */
7935
9148
  "size"?: 'large' | 'small';
9149
+ /**
9150
+ * The theme determines the visual appearance of the component.
9151
+ */
9152
+ "theme"?: "ios" | "md" | "ionic";
7936
9153
  }
7937
9154
  interface IonToast {
7938
9155
  /**
@@ -7992,7 +9209,7 @@ declare namespace LocalJSX {
7992
9209
  */
7993
9210
  "message"?: string | IonicSafeString;
7994
9211
  /**
7995
- * The mode determines which platform styles to use.
9212
+ * The mode determines the platform behaviors of the component.
7996
9213
  */
7997
9214
  "mode"?: "ios" | "md";
7998
9215
  /**
@@ -8035,12 +9252,20 @@ declare namespace LocalJSX {
8035
9252
  * 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.
8036
9253
  */
8037
9254
  "positionAnchor"?: HTMLElement | string;
9255
+ /**
9256
+ * 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.
9257
+ */
9258
+ "shape"?: 'soft' | 'round' | 'rectangular';
8038
9259
  /**
8039
9260
  * 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.
8040
9261
  */
8041
9262
  "swipeGesture"?: ToastSwipeGestureDirection;
8042
9263
  /**
8043
- * 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).
9264
+ * The theme determines the visual appearance of the component.
9265
+ */
9266
+ "theme"?: "ios" | "md" | "ionic";
9267
+ /**
9268
+ * 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).
8044
9269
  */
8045
9270
  "translucent"?: boolean;
8046
9271
  /**
@@ -8086,7 +9311,7 @@ declare namespace LocalJSX {
8086
9311
  */
8087
9312
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8088
9313
  /**
8089
- * The mode determines which platform styles to use.
9314
+ * The mode determines the platform behaviors of the component.
8090
9315
  */
8091
9316
  "mode"?: "ios" | "md";
8092
9317
  /**
@@ -8109,6 +9334,10 @@ declare namespace LocalJSX {
8109
9334
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
8110
9335
  */
8111
9336
  "required"?: boolean;
9337
+ /**
9338
+ * The theme determines the visual appearance of the component.
9339
+ */
9340
+ "theme"?: "ios" | "md" | "ionic";
8112
9341
  /**
8113
9342
  * 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>`.
8114
9343
  */
@@ -8120,9 +9349,13 @@ declare namespace LocalJSX {
8120
9349
  */
8121
9350
  "color"?: Color;
8122
9351
  /**
8123
- * The mode determines which platform styles to use.
9352
+ * The mode determines the platform behaviors of the component.
8124
9353
  */
8125
9354
  "mode"?: "ios" | "md";
9355
+ /**
9356
+ * The theme determines the visual appearance of the component.
9357
+ */
9358
+ "theme"?: "ios" | "md" | "ionic";
8126
9359
  }
8127
9360
  interface IntrinsicElements {
8128
9361
  "ion-accordion": IonAccordion;