@ionic/core 8.4.0 → 8.4.1-dev.11730761110.1b046f37

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 (1175) 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 +29 -12
  12. package/components/config2.js +79 -0
  13. package/components/content.js +14 -12
  14. package/components/data.js +4 -4
  15. package/components/focus-visible.js +8 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +24 -15
  18. package/components/helpers.js +4 -1
  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 +114 -20
  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 +9 -77
  29. package/components/ion-avatar.js +52 -3
  30. package/components/ion-back-button.js +29 -19
  31. package/components/ion-badge.js +44 -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 +96 -20
  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 +11 -6
  67. package/components/ion-range.js +11 -8
  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 +93 -16
  76. package/components/ion-segment-button.js +11 -7
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +2 -2
  79. package/components/ion-segment.js +11 -7
  80. package/components/ion-select-option.js +5 -2
  81. package/components/ion-select.js +79 -30
  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 +12 -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 +38 -11
  90. package/components/ion-thumbnail.js +5 -2
  91. package/components/ion-toast.js +30 -12
  92. package/components/ion-toggle.js +77 -18
  93. package/components/ionic-global.js +374 -84
  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 +1 -1
  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.map +1 -1
  122. package/css/flex-utils.css.map +1 -1
  123. package/css/float-elements.css.map +1 -1
  124. package/css/global.bundle.css.map +1 -1
  125. package/css/ionic/bundle.ionic.css +1 -0
  126. package/css/ionic/bundle.ionic.css.map +1 -0
  127. package/css/ionic/core.ionic.css +1 -0
  128. package/css/ionic/core.ionic.css.map +1 -0
  129. package/css/ionic/global.bundle.ionic.css +1 -0
  130. package/css/ionic/global.bundle.ionic.css.map +1 -0
  131. package/css/ionic/ionic-swiper.ionic.css +1 -0
  132. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  133. package/css/ionic/link.ionic.css +1 -0
  134. package/css/ionic/link.ionic.css.map +1 -0
  135. package/css/ionic/structure.ionic.css +1 -0
  136. package/css/ionic/structure.ionic.css.map +1 -0
  137. package/css/ionic/typography.ionic.css +1 -0
  138. package/css/ionic/typography.ionic.css.map +1 -0
  139. package/css/ionic/utils.bundle.ionic.css +1 -0
  140. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  141. package/css/ionic-swiper.css +1 -1
  142. package/css/ionic-swiper.css.map +1 -1
  143. package/css/ionic.bundle.css +1 -1
  144. package/css/ionic.bundle.css.map +1 -1
  145. package/css/normalize.css.map +1 -1
  146. package/css/padding.css.map +1 -1
  147. package/css/palettes/dark.always.css.map +1 -1
  148. package/css/palettes/dark.class.css.map +1 -1
  149. package/css/palettes/dark.system.css.map +1 -1
  150. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  151. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  152. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  153. package/css/palettes/high-contrast.always.css.map +1 -1
  154. package/css/palettes/high-contrast.class.css.map +1 -1
  155. package/css/palettes/high-contrast.system.css.map +1 -1
  156. package/css/structure.css.map +1 -1
  157. package/css/text-alignment.css.map +1 -1
  158. package/css/text-transformation.css.map +1 -1
  159. package/css/typography.css.map +1 -1
  160. package/css/utils.bundle.css.map +1 -1
  161. package/dist/cjs/{animation-b4fdf128.js → animation-58015a44.js} +2 -2
  162. package/dist/cjs/{app-globals-21afee77.js → app-globals-d64148d3.js} +1 -1
  163. package/dist/cjs/{button-active-3f2f60b4.js → button-active-ec1fd1d8.js} +1 -1
  164. package/dist/cjs/{capacitor-c04564bf.js → capacitor-454dd071.js} +3 -3
  165. package/dist/cjs/caret-down-3c215cff.js +8 -0
  166. package/dist/cjs/caret-left-2bb66970.js +8 -0
  167. package/dist/cjs/caret-right-88e03970.js +8 -0
  168. package/dist/cjs/config-aff4ff52.js +84 -0
  169. package/dist/cjs/{data-21dc0f81.js → data-b726dbee.js} +6 -6
  170. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  171. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-32f1a0e4.js} +4 -2
  172. package/dist/cjs/{haptic-f6b37aa3.js → haptic-7c25be74.js} +1 -1
  173. package/dist/cjs/{helpers-afaa9001.js → helpers-4e2936d2.js} +4 -1
  174. package/dist/cjs/{index-8e789962.js → index-03fbee1d.js} +14 -15
  175. package/dist/cjs/{index-9509ecad.js → index-0e0c6196.js} +9 -7
  176. package/dist/cjs/{index-5b6a7459.js → index-604c36ae.js} +3 -3
  177. package/dist/cjs/{index-f05acd21.js → index-8f975cf4.js} +12 -12
  178. package/dist/cjs/index.cjs.js +10 -12
  179. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-4b4d2251.js} +18 -17
  180. package/dist/cjs/{input.utils-611cde0b.js → input.utils-fb1debe4.js} +4 -5
  181. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -24
  182. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
  183. package/dist/cjs/ion-alert.cjs.entry.js +25 -23
  184. package/dist/cjs/ion-app_8.cjs.entry.js +108 -152
  185. package/dist/cjs/ion-avatar_3.cjs.entry.js +93 -9
  186. package/dist/cjs/ion-back-button.cjs.entry.js +31 -21
  187. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -6
  188. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +53 -15
  189. package/dist/cjs/ion-button_2.cjs.entry.js +46 -15
  190. package/dist/cjs/ion-card_5.cjs.entry.js +52 -28
  191. package/dist/cjs/ion-checkbox.cjs.entry.js +29 -13
  192. package/dist/cjs/ion-chip.cjs.entry.js +43 -7
  193. package/dist/cjs/ion-col_3.cjs.entry.js +14 -10
  194. package/dist/cjs/ion-datetime-button.cjs.entry.js +16 -12
  195. package/dist/cjs/ion-datetime_3.cjs.entry.js +189 -115
  196. package/dist/cjs/ion-fab_3.cjs.entry.js +42 -19
  197. package/dist/cjs/ion-img.cjs.entry.js +7 -3
  198. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +21 -17
  199. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  200. package/dist/cjs/ion-input.cjs.entry.js +118 -23
  201. package/dist/cjs/ion-item-option_3.cjs.entry.js +40 -17
  202. package/dist/cjs/ion-item_8.cjs.entry.js +113 -41
  203. package/dist/cjs/ion-loading.cjs.entry.js +20 -18
  204. package/dist/cjs/ion-menu_3.cjs.entry.js +48 -29
  205. package/dist/cjs/ion-modal.cjs.entry.js +95 -67
  206. package/dist/cjs/ion-nav_2.cjs.entry.js +15 -13
  207. package/dist/cjs/ion-picker-column-option.cjs.entry.js +11 -6
  208. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  209. package/dist/cjs/ion-picker.cjs.entry.js +10 -5
  210. package/dist/cjs/ion-popover.cjs.entry.js +20 -18
  211. package/dist/cjs/ion-progress-bar.cjs.entry.js +13 -8
  212. package/dist/cjs/ion-radio_2.cjs.entry.js +18 -11
  213. package/dist/cjs/ion-range.cjs.entry.js +18 -14
  214. package/dist/cjs/ion-refresher_2.cjs.entry.js +44 -23
  215. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  216. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -7
  217. package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
  218. package/dist/cjs/ion-searchbar.cjs.entry.js +94 -17
  219. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  220. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  221. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -14
  222. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -8
  223. package/dist/cjs/ion-select_3.cjs.entry.js +94 -38
  224. package/dist/cjs/ion-spinner.cjs.entry.js +35 -9
  225. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -8
  226. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +45 -20
  227. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -6
  228. package/dist/cjs/ion-text.cjs.entry.js +6 -5
  229. package/dist/cjs/ion-textarea.cjs.entry.js +41 -16
  230. package/dist/cjs/ion-toast.cjs.entry.js +59 -43
  231. package/dist/cjs/ion-toggle.cjs.entry.js +80 -22
  232. package/dist/cjs/ionic-global-14af9c21.js +535 -0
  233. package/dist/cjs/ionic.cjs.js +4 -3
  234. package/dist/cjs/{ios.transition-cf40433b.js → ios.transition-2bb0f7d5.js} +6 -6
  235. package/dist/cjs/{keyboard-af1bb365.js → keyboard-0a5d46dd.js} +5 -3
  236. package/dist/cjs/{keyboard-0272231f.js → keyboard-53c12a15.js} +1 -1
  237. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-102bad3e.js} +11 -9
  238. package/dist/cjs/list-2930c629.js +8 -0
  239. package/dist/cjs/loader.cjs.js +4 -3
  240. package/dist/cjs/{md.transition-ededf99f.js → md.transition-cf600117.js} +5 -6
  241. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-ea70e230.js} +4 -4
  242. package/dist/cjs/{overlays-ba0f6986.js → overlays-a698a408.js} +19 -20
  243. package/dist/cjs/{status-tap-37681226.js → status-tap-aa97d209.js} +4 -3
  244. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-27975274.js} +2 -1
  245. package/dist/cjs/x-81a8f51c.js +8 -0
  246. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  247. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  248. package/dist/collection/components/accordion/accordion.js +37 -21
  249. package/dist/collection/components/accordion/accordion.md.css +67 -59
  250. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  251. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  252. package/dist/collection/components/accordion-group/accordion-group.js +43 -8
  253. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  254. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  255. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  256. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  257. package/dist/collection/components/alert/alert.ios.css +19 -1
  258. package/dist/collection/components/alert/alert.js +15 -12
  259. package/dist/collection/components/alert/alert.md.css +19 -1
  260. package/dist/collection/components/app/app.js +12 -78
  261. package/dist/collection/components/avatar/avatar.ionic.css +269 -0
  262. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  263. package/dist/collection/components/avatar/avatar.js +92 -4
  264. package/dist/collection/components/avatar/avatar.md.css +12 -0
  265. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  266. package/dist/collection/components/back-button/back-button.js +27 -19
  267. package/dist/collection/components/back-button/back-button.md.css +60 -48
  268. package/dist/collection/components/backdrop/backdrop.ionic.css +151 -0
  269. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  270. package/dist/collection/components/backdrop/backdrop.js +12 -6
  271. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  272. package/dist/collection/components/badge/badge.ionic.css +249 -0
  273. package/dist/collection/components/badge/badge.ios.css +106 -3
  274. package/dist/collection/components/badge/badge.js +75 -8
  275. package/dist/collection/components/badge/badge.md.css +106 -3
  276. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  277. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  278. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  279. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  280. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  281. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  282. package/dist/collection/components/button/button.ionic.css +589 -0
  283. package/dist/collection/components/button/button.ios.css +129 -36
  284. package/dist/collection/components/button/button.js +46 -16
  285. package/dist/collection/components/button/button.md.css +120 -40
  286. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  287. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  288. package/dist/collection/components/buttons/buttons.js +14 -8
  289. package/dist/collection/components/buttons/buttons.md.css +55 -3
  290. package/dist/collection/components/card/card.ionic.css +137 -0
  291. package/dist/collection/components/card/card.ios.css +65 -14
  292. package/dist/collection/components/card/card.js +34 -10
  293. package/dist/collection/components/card/card.md.css +65 -14
  294. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  295. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  296. package/dist/collection/components/card-content/card-content.js +11 -8
  297. package/dist/collection/components/card-content/card-content.md.css +16 -1
  298. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  299. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  300. package/dist/collection/components/card-header/card-header.js +12 -9
  301. package/dist/collection/components/card-header/card-header.md.css +27 -15
  302. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  303. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  304. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  305. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  306. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  307. package/dist/collection/components/card-title/card-title.js +11 -8
  308. package/dist/collection/components/card-title/card-title.md.css +73 -0
  309. package/dist/collection/components/checkbox/checkbox.ionic.css +402 -0
  310. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  311. package/dist/collection/components/checkbox/checkbox.js +63 -14
  312. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  313. package/dist/collection/components/chip/chip.ionic.css +160 -0
  314. package/dist/collection/components/chip/chip.ios.css +20 -1
  315. package/dist/collection/components/chip/chip.js +77 -8
  316. package/dist/collection/components/chip/chip.md.css +20 -1
  317. package/dist/collection/components/col/col.css +12 -0
  318. package/dist/collection/components/col/col.js +9 -5
  319. package/dist/collection/components/content/content.css +8 -2
  320. package/dist/collection/components/content/content.js +16 -11
  321. package/dist/collection/components/datetime/datetime.ionic.css +668 -0
  322. package/dist/collection/components/datetime/datetime.ios.css +232 -73
  323. package/dist/collection/components/datetime/datetime.js +95 -19
  324. package/dist/collection/components/datetime/datetime.md.css +232 -73
  325. package/dist/collection/components/datetime/utils/data.js +3 -3
  326. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  327. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  328. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  329. package/dist/collection/components/fab/fab.css +25 -1
  330. package/dist/collection/components/fab/fab.js +9 -5
  331. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  332. package/dist/collection/components/fab-button/fab-button.js +36 -15
  333. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  334. package/dist/collection/components/fab-list/fab-list.css +12 -0
  335. package/dist/collection/components/fab-list/fab-list.js +9 -5
  336. package/dist/collection/components/footer/footer.ios.css +14 -2
  337. package/dist/collection/components/footer/footer.js +20 -15
  338. package/dist/collection/components/footer/footer.md.css +12 -0
  339. package/dist/collection/components/grid/grid.css +12 -0
  340. package/dist/collection/components/grid/grid.js +9 -5
  341. package/dist/collection/components/header/header.ionic.css +86 -0
  342. package/dist/collection/components/header/header.ios.css +25 -10
  343. package/dist/collection/components/header/header.js +42 -17
  344. package/dist/collection/components/header/header.md.css +23 -8
  345. package/dist/collection/components/img/img.js +8 -2
  346. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  347. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  348. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  349. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  350. package/dist/collection/components/input/input.ionic.css +1096 -0
  351. package/dist/collection/components/input/input.ios.css +21 -2
  352. package/dist/collection/components/input/input.js +144 -30
  353. package/dist/collection/components/input/input.md.css +43 -4
  354. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  355. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  356. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  357. package/dist/collection/components/item/item.ionic.css +501 -0
  358. package/dist/collection/components/item/item.ios.css +109 -69
  359. package/dist/collection/components/item/item.js +44 -16
  360. package/dist/collection/components/item/item.md.css +120 -68
  361. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  362. package/dist/collection/components/item-divider/item-divider.js +11 -8
  363. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  364. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  365. package/dist/collection/components/item-group/item-group.js +13 -7
  366. package/dist/collection/components/item-group/item-group.md.css +12 -0
  367. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  368. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  369. package/dist/collection/components/item-option/item-option.js +43 -8
  370. package/dist/collection/components/item-option/item-option.md.css +14 -2
  371. package/dist/collection/components/item-options/item-options.ionic.css +258 -0
  372. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  373. package/dist/collection/components/item-options/item-options.js +13 -7
  374. package/dist/collection/components/item-options/item-options.md.css +18 -0
  375. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  376. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  377. package/dist/collection/components/label/label.ios.css +18 -0
  378. package/dist/collection/components/label/label.js +11 -8
  379. package/dist/collection/components/label/label.md.css +18 -0
  380. package/dist/collection/components/list/list.ionic.css +193 -0
  381. package/dist/collection/components/list/list.ios.css +18 -0
  382. package/dist/collection/components/list/list.js +47 -9
  383. package/dist/collection/components/list/list.md.css +20 -2
  384. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  385. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  386. package/dist/collection/components/list-header/list-header.js +11 -8
  387. package/dist/collection/components/list-header/list-header.md.css +18 -0
  388. package/dist/collection/components/loading/loading.ios.css +13 -1
  389. package/dist/collection/components/loading/loading.js +13 -10
  390. package/dist/collection/components/loading/loading.md.css +13 -1
  391. package/dist/collection/components/menu/menu.ios.css +15 -3
  392. package/dist/collection/components/menu/menu.js +12 -7
  393. package/dist/collection/components/menu/menu.md.css +15 -3
  394. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  395. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  396. package/dist/collection/components/menu-button/menu-button.js +26 -10
  397. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  398. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  399. package/dist/collection/components/modal/animations/sheet.js +8 -2
  400. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  401. package/dist/collection/components/modal/modal.ionic.css +239 -0
  402. package/dist/collection/components/modal/modal.ios.css +106 -63
  403. package/dist/collection/components/modal/modal.js +47 -11
  404. package/dist/collection/components/modal/modal.md.css +106 -63
  405. package/dist/collection/components/nav/nav.css +7 -1
  406. package/dist/collection/components/nav/nav.js +11 -5
  407. package/dist/collection/components/nav-link/nav-link.js +5 -1
  408. package/dist/collection/components/note/note.ios.css +12 -0
  409. package/dist/collection/components/note/note.js +11 -8
  410. package/dist/collection/components/note/note.md.css +12 -0
  411. package/dist/collection/components/picker/picker.ios.css +15 -3
  412. package/dist/collection/components/picker/picker.js +8 -5
  413. package/dist/collection/components/picker/picker.md.css +15 -3
  414. package/dist/collection/components/picker-column/picker-column.css +9 -2
  415. package/dist/collection/components/picker-column/picker-column.js +8 -7
  416. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  417. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  418. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  419. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  420. package/dist/collection/components/picker-legacy/picker.js +7 -6
  421. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  422. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  423. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  424. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  425. package/dist/collection/components/popover/popover.ios.css +13 -1
  426. package/dist/collection/components/popover/popover.js +15 -12
  427. package/dist/collection/components/popover/popover.md.css +13 -1
  428. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  429. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  430. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  431. package/dist/collection/components/radio/radio.ionic.css +418 -0
  432. package/dist/collection/components/radio/radio.ios.css +134 -91
  433. package/dist/collection/components/radio/radio.js +12 -9
  434. package/dist/collection/components/radio/radio.md.css +134 -91
  435. package/dist/collection/components/radio-group/radio-group.js +9 -3
  436. package/dist/collection/components/range/range.ios.css +12 -0
  437. package/dist/collection/components/range/range.js +12 -9
  438. package/dist/collection/components/range/range.md.css +12 -0
  439. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  440. package/dist/collection/components/refresher/refresher.js +11 -8
  441. package/dist/collection/components/refresher/refresher.md.css +15 -2
  442. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  443. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  444. package/dist/collection/components/reorder/reorder.js +33 -6
  445. package/dist/collection/components/reorder/reorder.md.css +6 -0
  446. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  447. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  448. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  449. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  450. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  451. package/dist/collection/components/route/route.js +4 -0
  452. package/dist/collection/components/router/router.js +4 -0
  453. package/dist/collection/components/router-link/router-link.css +8 -2
  454. package/dist/collection/components/router-link/router-link.js +9 -5
  455. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  456. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  457. package/dist/collection/components/row/row.css +12 -0
  458. package/dist/collection/components/row/row.js +9 -2
  459. package/dist/collection/components/searchbar/searchbar.ionic.css +345 -0
  460. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  461. package/dist/collection/components/searchbar/searchbar.js +97 -25
  462. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  463. package/dist/collection/components/segment/segment.ionic.css +117 -0
  464. package/dist/collection/components/segment/segment.ios.css +45 -2
  465. package/dist/collection/components/segment/segment.js +11 -8
  466. package/dist/collection/components/segment/segment.md.css +45 -2
  467. package/dist/collection/components/segment-button/segment-button.ionic.css +350 -0
  468. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  469. package/dist/collection/components/segment-button/segment-button.js +11 -8
  470. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  471. package/dist/collection/components/segment-content/segment-content.js +1 -1
  472. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  473. package/dist/collection/components/segment-view/segment-view.js +2 -2
  474. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  475. package/dist/collection/components/select/select.ios.css +22 -3
  476. package/dist/collection/components/select/select.js +81 -33
  477. package/dist/collection/components/select/select.md.css +38 -5
  478. package/dist/collection/components/select-modal/select-modal.js +1 -1
  479. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  480. package/dist/collection/components/select-option/select-option.js +9 -2
  481. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  482. package/dist/collection/components/select-popover/select-popover.js +12 -4
  483. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  484. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  485. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  486. package/dist/collection/components/spinner/spinner.common.css +199 -0
  487. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  488. package/dist/collection/components/spinner/spinner.js +46 -6
  489. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  490. package/dist/collection/components/split-pane/split-pane.js +14 -8
  491. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  492. package/dist/collection/components/tab/tab.js +6 -2
  493. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  494. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  495. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  496. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  497. package/dist/collection/components/tab-button/tab-button.ionic.css +271 -0
  498. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  499. package/dist/collection/components/tab-button/tab-button.js +11 -8
  500. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  501. package/dist/collection/components/tabs/tabs.css +7 -1
  502. package/dist/collection/components/tabs/tabs.js +4 -1
  503. package/dist/collection/components/text/text.css +6 -0
  504. package/dist/collection/components/text/text.js +7 -6
  505. package/dist/collection/components/textarea/textarea.ionic.css +804 -0
  506. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  507. package/dist/collection/components/textarea/textarea.js +59 -16
  508. package/dist/collection/components/textarea/textarea.md.css +214 -97
  509. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  510. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  511. package/dist/collection/components/title/title.ionic.css +145 -0
  512. package/dist/collection/components/title/title.ios.css +32 -4
  513. package/dist/collection/components/title/title.js +13 -7
  514. package/dist/collection/components/title/title.md.css +32 -4
  515. package/dist/collection/components/toast/animations/utils.js +1 -1
  516. package/dist/collection/components/toast/toast.ionic.css +358 -0
  517. package/dist/collection/components/toast/toast.ios.css +74 -35
  518. package/dist/collection/components/toast/toast.js +45 -11
  519. package/dist/collection/components/toast/toast.md.css +74 -35
  520. package/dist/collection/components/toggle/toggle.ionic.css +419 -0
  521. package/dist/collection/components/toggle/toggle.ios.css +166 -120
  522. package/dist/collection/components/toggle/toggle.js +73 -18
  523. package/dist/collection/components/toggle/toggle.md.css +163 -120
  524. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  525. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  526. package/dist/collection/components/toolbar/toolbar.js +13 -10
  527. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  528. package/dist/collection/global/ionic-global.js +229 -13
  529. package/dist/collection/utils/focus-visible.js +7 -0
  530. package/dist/collection/utils/framework-delegate.js +3 -1
  531. package/dist/collection/utils/helpers.js +3 -1
  532. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  533. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  534. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  535. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  536. package/dist/collection/utils/overlays.js +2 -1
  537. package/dist/collection/utils/test/playwright/generator.js +48 -23
  538. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  539. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  540. package/dist/collection/utils/transition/ios.transition.js +1 -0
  541. package/dist/docs.json +7030 -321
  542. package/dist/esm/{animation-eab5a4ca.js → animation-f1a88600.js} +1 -1
  543. package/dist/esm/{app-globals-5dbb61a5.js → app-globals-eceadabb.js} +1 -1
  544. package/dist/esm/{button-active-f6503382.js → button-active-321f0dba.js} +2 -2
  545. package/dist/esm/{capacitor-59395cbd.js → capacitor-6b0341c8.js} +1 -1
  546. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  547. package/dist/esm/caret-left-33424bb0.js +6 -0
  548. package/dist/esm/caret-right-68d856ad.js +6 -0
  549. package/dist/esm/config-84eb9670.js +79 -0
  550. package/dist/esm/{data-ae11fd43.js → data-a753c96a.js} +4 -4
  551. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  552. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-3e4a8c9f.js} +4 -2
  553. package/dist/esm/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  554. package/dist/esm/{helpers-da915de8.js → helpers-f08d15bd.js} +4 -1
  555. package/dist/esm/{index-24b48b06.js → index-31109e63.js} +10 -11
  556. package/dist/esm/{index-3ad7f18b.js → index-59f81cb8.js} +6 -6
  557. package/{components/index9.js → dist/esm/index-62b4a18b.js} +4 -2
  558. package/dist/esm/{index-28849c61.js → index-723c0e5d.js} +1 -1
  559. package/dist/esm/{index-5cc724f3.js → index-7bd160c2.js} +2 -2
  560. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  561. package/dist/esm/index.js +11 -13
  562. package/dist/esm/{input-shims-0314bbe5.js → input-shims-6be83e59.js} +7 -6
  563. package/dist/esm/{input.utils-09c71bc7.js → input.utils-67459bae.js} +2 -3
  564. package/dist/esm/ion-accordion_2.entry.js +61 -24
  565. package/dist/esm/ion-action-sheet.entry.js +22 -19
  566. package/dist/esm/ion-alert.entry.js +23 -21
  567. package/dist/esm/ion-app_8.entry.js +96 -140
  568. package/dist/esm/ion-avatar_3.entry.js +94 -10
  569. package/dist/esm/ion-back-button.entry.js +31 -21
  570. package/dist/esm/ion-backdrop.entry.js +12 -7
  571. package/dist/esm/ion-breadcrumb_2.entry.js +55 -17
  572. package/dist/esm/ion-button_2.entry.js +44 -13
  573. package/dist/esm/ion-card_5.entry.js +53 -29
  574. package/dist/esm/ion-checkbox.entry.js +30 -14
  575. package/dist/esm/ion-chip.entry.js +44 -8
  576. package/dist/esm/ion-col_3.entry.js +15 -11
  577. package/dist/esm/ion-datetime-button.entry.js +13 -9
  578. package/dist/esm/ion-datetime_3.entry.js +114 -40
  579. package/dist/esm/ion-fab_3.entry.js +44 -21
  580. package/dist/esm/ion-img.entry.js +8 -4
  581. package/dist/esm/ion-infinite-scroll_2.entry.js +19 -15
  582. package/dist/esm/ion-input-password-toggle.entry.js +54 -15
  583. package/dist/esm/ion-input.entry.js +120 -25
  584. package/dist/esm/ion-item-option_3.entry.js +41 -18
  585. package/dist/esm/ion-item_8.entry.js +114 -42
  586. package/dist/esm/ion-loading.entry.js +18 -16
  587. package/dist/esm/ion-menu_3.entry.js +48 -29
  588. package/dist/esm/ion-modal.entry.js +59 -31
  589. package/dist/esm/ion-nav_2.entry.js +14 -12
  590. package/dist/esm/ion-picker-column-option.entry.js +12 -7
  591. package/dist/esm/ion-picker-column.entry.js +12 -12
  592. package/dist/esm/ion-picker.entry.js +11 -6
  593. package/dist/esm/ion-popover.entry.js +18 -16
  594. package/dist/esm/ion-progress-bar.entry.js +13 -8
  595. package/dist/esm/ion-radio_2.entry.js +19 -12
  596. package/dist/esm/ion-range.entry.js +14 -10
  597. package/dist/esm/ion-refresher_2.entry.js +42 -21
  598. package/dist/esm/ion-reorder_2.entry.js +39 -15
  599. package/dist/esm/ion-ripple-effect.entry.js +19 -8
  600. package/dist/esm/ion-route_4.entry.js +9 -8
  601. package/dist/esm/ion-searchbar.entry.js +95 -18
  602. package/dist/esm/ion-segment-content.entry.js +2 -2
  603. package/dist/esm/ion-segment-view.entry.js +3 -3
  604. package/dist/esm/ion-segment_2.entry.js +24 -15
  605. package/dist/esm/ion-select-modal.entry.js +7 -9
  606. package/dist/esm/ion-select_3.entry.js +96 -40
  607. package/dist/esm/ion-spinner.entry.js +34 -8
  608. package/dist/esm/ion-split-pane.entry.js +14 -9
  609. package/dist/esm/ion-tab-bar_2.entry.js +45 -20
  610. package/dist/esm/ion-tab_2.entry.js +8 -7
  611. package/dist/esm/ion-text.entry.js +7 -6
  612. package/dist/esm/ion-textarea.entry.js +42 -17
  613. package/dist/esm/ion-toast.entry.js +34 -18
  614. package/dist/esm/ion-toggle.entry.js +81 -23
  615. package/dist/esm/ionic-global-3c97a4aa.js +521 -0
  616. package/dist/esm/ionic.js +6 -5
  617. package/dist/esm/{ios.transition-4ee1a3af.js → ios.transition-06b78ea0.js} +7 -7
  618. package/dist/esm/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +5 -3
  619. package/dist/esm/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  620. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-aff395fd.js} +5 -3
  621. package/dist/esm/list-6524700c.js +6 -0
  622. package/dist/esm/loader.js +6 -5
  623. package/dist/esm/{md.transition-5106a0d2.js → md.transition-e5712bda.js} +6 -7
  624. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-c0bd22ff.js} +2 -2
  625. package/dist/esm/{overlays-ae10d43d.js → overlays-ce6f6b23.js} +6 -7
  626. package/dist/esm/{status-tap-f472b09f.js → status-tap-edf9f395.js} +5 -4
  627. package/dist/esm/{swipe-back-e5394307.js → swipe-back-17c42610.js} +2 -1
  628. package/dist/esm/x-a64bcd9f.js +6 -0
  629. package/dist/esm-es5/animation-f1a88600.js +4 -0
  630. package/dist/esm-es5/app-globals-eceadabb.js +4 -0
  631. package/dist/esm-es5/{button-active-f6503382.js → button-active-321f0dba.js} +1 -1
  632. package/dist/esm-es5/capacitor-6b0341c8.js +4 -0
  633. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  634. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  635. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  636. package/dist/esm-es5/config-84eb9670.js +4 -0
  637. package/dist/esm-es5/data-a753c96a.js +4 -0
  638. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  639. package/dist/esm-es5/framework-delegate-3e4a8c9f.js +4 -0
  640. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  641. package/dist/esm-es5/helpers-f08d15bd.js +4 -0
  642. package/dist/esm-es5/index-31109e63.js +4 -0
  643. package/dist/esm-es5/index-59f81cb8.js +4 -0
  644. package/dist/esm-es5/{index-79b30591.js → index-62b4a18b.js} +1 -1
  645. package/dist/esm-es5/{index-28849c61.js → index-723c0e5d.js} +1 -1
  646. package/dist/esm-es5/index-7bd160c2.js +4 -0
  647. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  648. package/dist/esm-es5/index.js +1 -1
  649. package/dist/esm-es5/input-shims-6be83e59.js +4 -0
  650. package/dist/esm-es5/input.utils-67459bae.js +4 -0
  651. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  652. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  653. package/dist/esm-es5/ion-alert.entry.js +1 -1
  654. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  655. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  656. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  657. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  658. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  659. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  660. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  661. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  662. package/dist/esm-es5/ion-chip.entry.js +1 -1
  663. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  664. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  665. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  666. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  667. package/dist/esm-es5/ion-img.entry.js +1 -1
  668. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  669. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  670. package/dist/esm-es5/ion-input.entry.js +1 -1
  671. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  672. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  673. package/dist/esm-es5/ion-loading.entry.js +1 -1
  674. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  675. package/dist/esm-es5/ion-modal.entry.js +1 -1
  676. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  677. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  678. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  679. package/dist/esm-es5/ion-picker.entry.js +1 -1
  680. package/dist/esm-es5/ion-popover.entry.js +1 -1
  681. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  682. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  683. package/dist/esm-es5/ion-range.entry.js +1 -1
  684. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  685. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  686. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  687. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  688. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  689. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  690. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  691. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  692. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  693. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  694. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  695. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  696. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  697. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  698. package/dist/esm-es5/ion-text.entry.js +1 -1
  699. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  700. package/dist/esm-es5/ion-toast.entry.js +1 -1
  701. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  702. package/dist/esm-es5/ionic-global-3c97a4aa.js +4 -0
  703. package/dist/esm-es5/ionic.js +1 -1
  704. package/dist/esm-es5/ios.transition-06b78ea0.js +4 -0
  705. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +1 -1
  706. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  707. package/dist/esm-es5/keyboard-controller-aff395fd.js +4 -0
  708. package/dist/esm-es5/list-6524700c.js +4 -0
  709. package/dist/esm-es5/loader.js +1 -1
  710. package/dist/esm-es5/md.transition-e5712bda.js +4 -0
  711. package/dist/esm-es5/notch-controller-c0bd22ff.js +4 -0
  712. package/dist/esm-es5/overlays-ce6f6b23.js +4 -0
  713. package/dist/esm-es5/status-tap-edf9f395.js +4 -0
  714. package/dist/esm-es5/swipe-back-17c42610.js +4 -0
  715. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  716. package/dist/html.html-data.json +2306 -204
  717. package/dist/ionic/index.esm.js +1 -1
  718. package/dist/ionic/ionic.esm.js +1 -1
  719. package/dist/ionic/ionic.js +1 -1
  720. package/dist/ionic/p-01d80901.system.js +4 -0
  721. package/dist/ionic/p-02db6423.entry.js +4 -0
  722. package/dist/ionic/p-038a6294.js +4 -0
  723. package/dist/ionic/p-043483dc.entry.js +4 -0
  724. package/dist/ionic/p-055ae36e.system.entry.js +4 -0
  725. package/dist/ionic/p-06ca2619.system.entry.js +4 -0
  726. package/dist/ionic/p-06ec4706.js +4 -0
  727. package/dist/ionic/p-08b2ba53.system.entry.js +4 -0
  728. package/dist/ionic/p-08f4a45d.system.entry.js +4 -0
  729. package/dist/ionic/p-096e5f6d.system.entry.js +4 -0
  730. package/dist/ionic/p-09c6b5e4.js +4 -0
  731. package/dist/ionic/p-0a0ce78f.system.entry.js +4 -0
  732. package/dist/ionic/{p-25180df3.system.js → p-0fa218e9.system.js} +1 -1
  733. package/dist/ionic/{p-424eb140.system.entry.js → p-10961893.system.entry.js} +1 -1
  734. package/dist/ionic/p-112120d7.system.js +4 -0
  735. package/dist/ionic/{p-c7e16491.js → p-11266916.js} +1 -1
  736. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  737. package/dist/ionic/{p-34b11c24.js → p-12d6df53.js} +1 -1
  738. package/dist/ionic/p-156d17cd.js +4 -0
  739. package/dist/ionic/p-161ecf50.system.entry.js +4 -0
  740. package/dist/ionic/{p-b06ac4a5.system.js → p-18f86177.system.js} +1 -1
  741. package/dist/ionic/p-1a64d63d.system.entry.js +4 -0
  742. package/dist/ionic/p-1da82a87.system.entry.js +4 -0
  743. package/dist/ionic/p-1e4fd112.entry.js +4 -0
  744. package/dist/ionic/p-1efa63f2.js +4 -0
  745. package/dist/ionic/p-1fba8e90.system.entry.js +4 -0
  746. package/dist/ionic/p-211b0fba.system.entry.js +4 -0
  747. package/dist/ionic/p-23b31425.entry.js +4 -0
  748. package/dist/ionic/p-243adf8c.js +4 -0
  749. package/dist/ionic/p-24f15ce4.system.entry.js +4 -0
  750. package/dist/ionic/p-2978f27e.entry.js +4 -0
  751. package/dist/ionic/p-2ef115ec.system.entry.js +4 -0
  752. package/dist/ionic/p-31fa1052.system.entry.js +4 -0
  753. package/dist/ionic/p-33dc4514.js +4 -0
  754. package/dist/ionic/p-346c67b0.js +4 -0
  755. package/dist/ionic/p-35362c9f.entry.js +4 -0
  756. package/dist/ionic/p-3608e72b.entry.js +4 -0
  757. package/dist/ionic/p-3b520400.system.entry.js +4 -0
  758. package/dist/ionic/p-3c4c73f9.system.entry.js +4 -0
  759. package/dist/ionic/p-3ce95a91.entry.js +4 -0
  760. package/dist/ionic/p-3d61263b.system.entry.js +4 -0
  761. package/dist/ionic/{p-9ea607bd.system.js → p-3e91ea3a.system.js} +2 -2
  762. package/dist/ionic/p-3f1e20d1.system.entry.js +4 -0
  763. package/dist/ionic/p-3fc0ba02.system.entry.js +4 -0
  764. package/dist/ionic/p-4130574e.entry.js +4 -0
  765. package/dist/ionic/{p-3c8e5c23.system.js → p-41c19986.system.js} +1 -1
  766. package/dist/ionic/p-41f06734.entry.js +4 -0
  767. package/dist/ionic/p-4219582c.system.js +4 -0
  768. package/dist/ionic/p-429dd2b5.system.js +4 -0
  769. package/dist/ionic/p-430d860e.entry.js +4 -0
  770. package/dist/ionic/p-43df37ca.entry.js +4 -0
  771. package/dist/ionic/p-4459a66e.system.js +4 -0
  772. package/dist/ionic/{p-f687573e.system.js → p-44ad86d7.system.js} +1 -1
  773. package/dist/ionic/p-458a2899.entry.js +4 -0
  774. package/dist/ionic/{p-8985cdb6.system.js → p-4626fb32.system.js} +1 -1
  775. package/dist/ionic/p-46787abb.system.js +4 -0
  776. package/dist/ionic/p-4683bb1b.entry.js +4 -0
  777. package/dist/ionic/p-47fd935c.system.js +4 -0
  778. package/dist/ionic/p-4a89c1ec.system.js +4 -0
  779. package/dist/ionic/p-4ac4f52a.system.entry.js +4 -0
  780. package/dist/ionic/p-4b4e4592.system.entry.js +4 -0
  781. package/dist/ionic/{p-89b61afc.js → p-4c275462.js} +1 -1
  782. package/dist/ionic/p-4c9e1b2c.js +4 -0
  783. package/dist/ionic/p-4edc0fda.system.entry.js +4 -0
  784. package/dist/ionic/p-4f127a09.system.entry.js +4 -0
  785. package/dist/ionic/p-51371e21.system.js +4 -0
  786. package/dist/ionic/p-530c591a.entry.js +4 -0
  787. package/dist/ionic/p-5474c7c4.entry.js +4 -0
  788. package/dist/ionic/p-55546d77.system.entry.js +4 -0
  789. package/dist/ionic/p-556778bd.system.js +4 -0
  790. package/dist/ionic/p-56be80f7.entry.js +4 -0
  791. package/dist/ionic/p-578a8bdf.entry.js +4 -0
  792. package/dist/ionic/p-57de8d54.system.entry.js +4 -0
  793. package/dist/ionic/{p-f9a53abb.system.js → p-58aa8a36.system.js} +1 -1
  794. package/dist/ionic/p-58c64779.system.entry.js +4 -0
  795. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  796. package/dist/ionic/p-5a6b3c0d.entry.js +4 -0
  797. package/dist/ionic/p-5a6d245d.system.entry.js +4 -0
  798. package/dist/ionic/p-5b57d327.system.js +4 -0
  799. package/dist/ionic/p-5ce35a03.js +4 -0
  800. package/dist/ionic/p-5e9730c2.entry.js +4 -0
  801. package/dist/ionic/p-607c9c33.js +4 -0
  802. package/dist/ionic/{p-9146695e.system.js → p-62887754.system.js} +1 -1
  803. package/dist/ionic/p-63fde7fe.entry.js +4 -0
  804. package/dist/ionic/p-67b6e18d.entry.js +4 -0
  805. package/dist/ionic/p-699c1e19.entry.js +4 -0
  806. package/dist/ionic/p-6a0dd6bc.js +4 -0
  807. package/dist/ionic/p-6bc2795b.entry.js +4 -0
  808. package/dist/ionic/p-6bd1c0ee.system.entry.js +4 -0
  809. package/dist/ionic/p-6caa76ec.js +4 -0
  810. package/dist/ionic/p-6f941957.entry.js +4 -0
  811. package/dist/ionic/p-7071d7ca.js +4 -0
  812. package/dist/ionic/p-72cbf799.system.entry.js +4 -0
  813. package/dist/ionic/p-74a20601.system.entry.js +4 -0
  814. package/dist/ionic/p-74d76684.js +4 -0
  815. package/dist/ionic/p-7557a7de.system.entry.js +4 -0
  816. package/dist/ionic/p-7607d8ba.system.entry.js +4 -0
  817. package/dist/ionic/p-78ed8923.js +4 -0
  818. package/dist/ionic/p-7a858bae.system.js +4 -0
  819. package/dist/ionic/p-81e632cb.entry.js +4 -0
  820. package/dist/ionic/p-82cb4235.js +4 -0
  821. package/dist/ionic/{p-d836d43e.js → p-83948e48.js} +1 -1
  822. package/dist/ionic/p-8463212e.js +4 -0
  823. package/dist/ionic/p-84667060.entry.js +4 -0
  824. package/dist/ionic/p-857ba8d4.entry.js +4 -0
  825. package/dist/ionic/p-86d98446.system.entry.js +4 -0
  826. package/dist/ionic/{p-58d5df0c.system.entry.js → p-86e9a917.system.entry.js} +1 -1
  827. package/dist/ionic/p-87049797.js +4 -0
  828. package/dist/ionic/p-88290bd9.system.entry.js +4 -0
  829. package/dist/ionic/p-8956f9a8.system.entry.js +4 -0
  830. package/dist/ionic/p-8b0f0a87.entry.js +4 -0
  831. package/dist/ionic/p-8db246c2.system.js +4 -0
  832. package/dist/ionic/p-8dbfae64.entry.js +4 -0
  833. package/dist/ionic/p-903c544a.js +4 -0
  834. package/dist/ionic/p-916bc9ed.system.entry.js +4 -0
  835. package/dist/ionic/p-92646426.js +4 -0
  836. package/dist/ionic/{p-27281edd.js → p-93e47936.js} +1 -1
  837. package/dist/ionic/{p-a93873de.system.js → p-94816e7a.system.js} +1 -1
  838. package/dist/ionic/p-986855d6.js +4 -0
  839. package/dist/ionic/p-9abb7d9b.entry.js +4 -0
  840. package/dist/ionic/p-9ac1a506.system.js +4 -0
  841. package/dist/ionic/p-a1cdc742.js +4 -0
  842. package/dist/ionic/p-a2814291.system.js +4 -0
  843. package/dist/ionic/p-a42eccfb.entry.js +4 -0
  844. package/dist/ionic/{p-d743e981.js → p-a510e9c0.js} +1 -1
  845. package/dist/ionic/p-a5a9206f.entry.js +4 -0
  846. package/dist/ionic/p-a616b6e4.entry.js +4 -0
  847. package/dist/ionic/p-a9af4103.js +4 -0
  848. package/dist/ionic/{p-d60342e3.js → p-aaccbb95.js} +1 -1
  849. package/dist/ionic/{p-73dc4950.entry.js → p-ab21d58c.entry.js} +1 -1
  850. package/dist/ionic/p-ac1c2b6a.js +4 -0
  851. package/dist/ionic/p-ae55c4c7.system.entry.js +4 -0
  852. package/dist/ionic/p-b18c52cd.entry.js +4 -0
  853. package/dist/ionic/p-b2df786a.system.entry.js +4 -0
  854. package/dist/ionic/p-b517144d.system.entry.js +4 -0
  855. package/dist/ionic/p-b5dc9a32.system.entry.js +4 -0
  856. package/dist/ionic/p-b79f3ded.entry.js +4 -0
  857. package/dist/ionic/p-bbcec459.system.js +4 -0
  858. package/dist/ionic/p-be87ec25.entry.js +4 -0
  859. package/dist/ionic/p-c248c88d.system.js +4 -0
  860. package/dist/ionic/p-c373eebd.system.js +4 -0
  861. package/dist/ionic/p-ccce3322.system.entry.js +4 -0
  862. package/dist/ionic/p-ce2e8a94.system.entry.js +4 -0
  863. package/dist/ionic/p-ce46d44a.entry.js +4 -0
  864. package/dist/ionic/p-cea92c46.system.js +4 -0
  865. package/dist/ionic/p-d7894208.entry.js +4 -0
  866. package/dist/ionic/p-da96f15f.entry.js +4 -0
  867. package/dist/ionic/{p-19ea7bff.system.js → p-dbd39afd.system.js} +1 -1
  868. package/dist/ionic/p-ddbf4ca9.entry.js +4 -0
  869. package/dist/ionic/p-df09db21.entry.js +4 -0
  870. package/dist/ionic/p-e3b70846.system.js +4 -0
  871. package/dist/ionic/p-e9eb25ba.system.entry.js +4 -0
  872. package/dist/ionic/p-ea0b8c64.system.entry.js +4 -0
  873. package/dist/ionic/p-ea3ca474.system.js +4 -0
  874. package/dist/ionic/p-ebe94d15.entry.js +4 -0
  875. package/dist/ionic/p-eda736d7.entry.js +4 -0
  876. package/dist/ionic/p-eecb1b04.entry.js +4 -0
  877. package/dist/ionic/p-eee899d5.system.entry.js +4 -0
  878. package/dist/ionic/p-f09c06e8.entry.js +4 -0
  879. package/dist/ionic/p-f116fb3f.system.js +4 -0
  880. package/dist/ionic/{p-372ae7f4.system.js → p-f193945e.system.js} +1 -1
  881. package/dist/ionic/p-f1e11e93.entry.js +4 -0
  882. package/dist/ionic/p-f28ac1ad.entry.js +4 -0
  883. package/dist/ionic/p-f44934a7.system.entry.js +4 -0
  884. package/dist/ionic/p-f44c9c6e.system.entry.js +4 -0
  885. package/dist/ionic/p-f61375b7.system.entry.js +4 -0
  886. package/dist/ionic/p-f8123284.entry.js +4 -0
  887. package/dist/ionic/p-f83d18c1.entry.js +4 -0
  888. package/dist/ionic/{p-5da94421.system.js → p-f8c63ac0.system.js} +2 -2
  889. package/dist/ionic/p-fc8359aa.system.entry.js +4 -0
  890. package/dist/types/components/accordion/accordion.d.ts +5 -3
  891. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  892. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  893. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  894. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  895. package/dist/types/components/alert/alert.d.ts +3 -2
  896. package/dist/types/components/app/app.d.ts +4 -2
  897. package/dist/types/components/avatar/avatar.d.ts +28 -0
  898. package/dist/types/components/back-button/back-button.d.ts +2 -1
  899. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  900. package/dist/types/components/badge/badge.d.ts +23 -1
  901. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  902. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  903. package/dist/types/components/button/button.d.ts +15 -4
  904. package/dist/types/components/buttons/buttons.d.ts +5 -1
  905. package/dist/types/components/card/card.d.ts +8 -1
  906. package/dist/types/components/card-content/card-content.d.ts +2 -1
  907. package/dist/types/components/card-header/card-header.d.ts +3 -2
  908. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  909. package/dist/types/components/card-title/card-title.d.ts +2 -1
  910. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  911. package/dist/types/components/chip/chip.d.ts +19 -1
  912. package/dist/types/components/col/col.d.ts +4 -0
  913. package/dist/types/components/content/content.d.ts +3 -0
  914. package/dist/types/components/datetime/datetime.d.ts +26 -1
  915. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  916. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  917. package/dist/types/components/fab/fab.d.ts +4 -0
  918. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  919. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  920. package/dist/types/components/footer/footer.d.ts +4 -3
  921. package/dist/types/components/grid/grid.d.ts +4 -0
  922. package/dist/types/components/header/header.d.ts +9 -3
  923. package/dist/types/components/img/img.d.ts +3 -0
  924. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  925. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  926. package/dist/types/components/input/input.d.ts +31 -5
  927. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  928. package/dist/types/components/item/item.d.ts +11 -4
  929. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  930. package/dist/types/components/item-group/item-group.d.ts +4 -0
  931. package/dist/types/components/item-option/item-option.d.ts +11 -1
  932. package/dist/types/components/item-options/item-options.d.ts +4 -0
  933. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  934. package/dist/types/components/label/label.d.ts +2 -1
  935. package/dist/types/components/list/list.d.ts +15 -1
  936. package/dist/types/components/list-header/list-header.d.ts +2 -1
  937. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  938. package/dist/types/components/loading/loading.d.ts +3 -2
  939. package/dist/types/components/menu/menu.d.ts +3 -0
  940. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  941. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  942. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  943. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  944. package/dist/types/components/modal/modal.d.ts +11 -1
  945. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  946. package/dist/types/components/nav/nav.d.ts +5 -1
  947. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  948. package/dist/types/components/note/note.d.ts +2 -1
  949. package/dist/types/components/picker/picker.d.ts +2 -1
  950. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  951. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  952. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  953. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  954. package/dist/types/components/popover/popover.d.ts +6 -5
  955. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  956. package/dist/types/components/radio/radio.d.ts +2 -1
  957. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  958. package/dist/types/components/range/range.d.ts +2 -1
  959. package/dist/types/components/refresher/refresher.d.ts +2 -1
  960. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  961. package/dist/types/components/reorder/reorder.d.ts +9 -0
  962. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  963. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  964. package/dist/types/components/route/route.d.ts +4 -0
  965. package/dist/types/components/router/router.d.ts +4 -0
  966. package/dist/types/components/router-link/router-link.d.ts +4 -0
  967. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  968. package/dist/types/components/row/row.d.ts +4 -0
  969. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  970. package/dist/types/components/segment/segment.d.ts +2 -1
  971. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  972. package/dist/types/components/select/select.d.ts +20 -5
  973. package/dist/types/components/select-option/select-option.d.ts +4 -0
  974. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  975. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  976. package/dist/types/components/spinner/spinner.d.ts +15 -0
  977. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  978. package/dist/types/components/tab/tab.d.ts +4 -0
  979. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  980. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  981. package/dist/types/components/tabs/tabs.d.ts +3 -0
  982. package/dist/types/components/text/text.d.ts +2 -1
  983. package/dist/types/components/textarea/textarea.d.ts +16 -4
  984. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  985. package/dist/types/components/title/title.d.ts +4 -0
  986. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  987. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  988. package/dist/types/components/toast/toast.d.ts +12 -2
  989. package/dist/types/components/toggle/toggle.d.ts +15 -1
  990. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  991. package/dist/types/components.d.ts +1363 -179
  992. package/dist/types/global/ionic-global.d.ts +27 -2
  993. package/dist/types/interface.d.ts +3 -0
  994. package/dist/types/utils/config.d.ts +106 -2
  995. package/dist/types/utils/focus-visible.d.ts +1 -0
  996. package/dist/types/utils/overlays-interface.d.ts +31 -1
  997. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  998. package/hydrate/index.js +2273 -856
  999. package/hydrate/index.mjs +2273 -856
  1000. package/package.json +9 -4
  1001. package/components/hardware-back-button.js +0 -115
  1002. package/components/index8.js +0 -128
  1003. package/dist/cjs/hardware-back-button-9e8a2c4f.js +0 -122
  1004. package/dist/cjs/index-5915f9b3.js +0 -38
  1005. package/dist/cjs/index-c8d52405.js +0 -10
  1006. package/dist/cjs/ionic-global-d9a8bb5b.js +0 -237
  1007. package/dist/esm/hardware-back-button-06ef3c3e.js +0 -116
  1008. package/dist/esm/index-79b30591.js +0 -167
  1009. package/dist/esm/index-9b0d46f4.js +0 -34
  1010. package/dist/esm/index-a5d50daf.js +0 -7
  1011. package/dist/esm/ionic-global-c81d82ab.js +0 -231
  1012. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1013. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  1014. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1015. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1016. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1017. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  1018. package/dist/esm-es5/hardware-back-button-06ef3c3e.js +0 -4
  1019. package/dist/esm-es5/helpers-da915de8.js +0 -4
  1020. package/dist/esm-es5/index-24b48b06.js +0 -4
  1021. package/dist/esm-es5/index-3ad7f18b.js +0 -4
  1022. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1023. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1024. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1025. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1026. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1027. package/dist/esm-es5/ionic-global-c81d82ab.js +0 -4
  1028. package/dist/esm-es5/ios.transition-4ee1a3af.js +0 -4
  1029. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1030. package/dist/esm-es5/md.transition-5106a0d2.js +0 -4
  1031. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  1032. package/dist/esm-es5/overlays-ae10d43d.js +0 -4
  1033. package/dist/esm-es5/status-tap-f472b09f.js +0 -4
  1034. package/dist/esm-es5/swipe-back-e5394307.js +0 -4
  1035. package/dist/ionic/p-01186920.system.entry.js +0 -4
  1036. package/dist/ionic/p-0161caf9.system.entry.js +0 -4
  1037. package/dist/ionic/p-0303d0f8.js +0 -4
  1038. package/dist/ionic/p-0437ace4.system.entry.js +0 -4
  1039. package/dist/ionic/p-04fc24ee.system.js +0 -4
  1040. package/dist/ionic/p-0574e87e.js +0 -4
  1041. package/dist/ionic/p-06e58c4e.js +0 -4
  1042. package/dist/ionic/p-06fee233.js +0 -4
  1043. package/dist/ionic/p-081a4ce4.entry.js +0 -4
  1044. package/dist/ionic/p-09cf2394.entry.js +0 -4
  1045. package/dist/ionic/p-0c06e09b.system.js +0 -4
  1046. package/dist/ionic/p-14be4015.entry.js +0 -4
  1047. package/dist/ionic/p-15e76dd1.entry.js +0 -4
  1048. package/dist/ionic/p-16188af7.entry.js +0 -4
  1049. package/dist/ionic/p-16799667.system.entry.js +0 -4
  1050. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  1051. package/dist/ionic/p-17474161.system.js +0 -4
  1052. package/dist/ionic/p-19ec4f42.entry.js +0 -4
  1053. package/dist/ionic/p-1b7605a7.system.entry.js +0 -4
  1054. package/dist/ionic/p-1c1b8e1f.entry.js +0 -4
  1055. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1056. package/dist/ionic/p-1e010627.system.entry.js +0 -4
  1057. package/dist/ionic/p-1e41f2aa.system.entry.js +0 -4
  1058. package/dist/ionic/p-1e4371bd.js +0 -4
  1059. package/dist/ionic/p-1e67b266.system.entry.js +0 -4
  1060. package/dist/ionic/p-1ebd1e27.system.entry.js +0 -4
  1061. package/dist/ionic/p-2172893e.system.entry.js +0 -4
  1062. package/dist/ionic/p-21e5e7e4.js +0 -4
  1063. package/dist/ionic/p-2507278c.system.entry.js +0 -4
  1064. package/dist/ionic/p-2690b1de.js +0 -4
  1065. package/dist/ionic/p-2799c6d3.system.entry.js +0 -4
  1066. package/dist/ionic/p-2abae1cc.system.entry.js +0 -4
  1067. package/dist/ionic/p-2b7827c7.js +0 -4
  1068. package/dist/ionic/p-2b838f86.system.entry.js +0 -4
  1069. package/dist/ionic/p-2e46590d.system.entry.js +0 -4
  1070. package/dist/ionic/p-2fc0dafe.entry.js +0 -4
  1071. package/dist/ionic/p-322c5fb4.system.js +0 -4
  1072. package/dist/ionic/p-33a8a71b.entry.js +0 -4
  1073. package/dist/ionic/p-37cb43bd.system.entry.js +0 -4
  1074. package/dist/ionic/p-3ad285e3.system.js +0 -4
  1075. package/dist/ionic/p-3cc276f4.js +0 -4
  1076. package/dist/ionic/p-4439fc2a.entry.js +0 -4
  1077. package/dist/ionic/p-45693d7e.entry.js +0 -4
  1078. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  1079. package/dist/ionic/p-4a274c89.entry.js +0 -4
  1080. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  1081. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  1082. package/dist/ionic/p-52d7a191.entry.js +0 -4
  1083. package/dist/ionic/p-5393e8bb.system.entry.js +0 -4
  1084. package/dist/ionic/p-567de071.system.entry.js +0 -4
  1085. package/dist/ionic/p-5823babc.system.entry.js +0 -4
  1086. package/dist/ionic/p-5972efea.system.entry.js +0 -4
  1087. package/dist/ionic/p-5ab1b709.entry.js +0 -4
  1088. package/dist/ionic/p-5b5c1505.system.entry.js +0 -4
  1089. package/dist/ionic/p-5b932840.entry.js +0 -4
  1090. package/dist/ionic/p-5bd39e5e.system.entry.js +0 -4
  1091. package/dist/ionic/p-5c831f49.js +0 -4
  1092. package/dist/ionic/p-5fce0c0b.system.entry.js +0 -4
  1093. package/dist/ionic/p-62af944c.entry.js +0 -4
  1094. package/dist/ionic/p-63b0abde.system.entry.js +0 -4
  1095. package/dist/ionic/p-66640ff7.system.entry.js +0 -4
  1096. package/dist/ionic/p-6734db42.system.entry.js +0 -4
  1097. package/dist/ionic/p-69066a53.js +0 -4
  1098. package/dist/ionic/p-69666e8a.system.entry.js +0 -4
  1099. package/dist/ionic/p-6d32975a.entry.js +0 -4
  1100. package/dist/ionic/p-72812e99.js +0 -4
  1101. package/dist/ionic/p-72bc8a1c.js +0 -4
  1102. package/dist/ionic/p-7458862e.system.entry.js +0 -4
  1103. package/dist/ionic/p-792919fd.system.js +0 -4
  1104. package/dist/ionic/p-797eeea8.system.entry.js +0 -4
  1105. package/dist/ionic/p-7b30edcc.js +0 -4
  1106. package/dist/ionic/p-7b9a2b23.entry.js +0 -4
  1107. package/dist/ionic/p-7ed1657c.system.entry.js +0 -4
  1108. package/dist/ionic/p-857ca696.system.entry.js +0 -4
  1109. package/dist/ionic/p-8635f5e6.system.js +0 -4
  1110. package/dist/ionic/p-88e63c7d.js +0 -4
  1111. package/dist/ionic/p-8f05ba3b.system.js +0 -4
  1112. package/dist/ionic/p-908d6080.entry.js +0 -4
  1113. package/dist/ionic/p-937a7e21.entry.js +0 -4
  1114. package/dist/ionic/p-95775830.entry.js +0 -4
  1115. package/dist/ionic/p-96cc4814.js +0 -4
  1116. package/dist/ionic/p-98231c01.system.entry.js +0 -4
  1117. package/dist/ionic/p-985a7e17.system.entry.js +0 -4
  1118. package/dist/ionic/p-98ff6b32.entry.js +0 -4
  1119. package/dist/ionic/p-9910f786.entry.js +0 -4
  1120. package/dist/ionic/p-9df2c6fb.entry.js +0 -4
  1121. package/dist/ionic/p-9ee1e8a6.entry.js +0 -4
  1122. package/dist/ionic/p-9f3008d4.system.js +0 -4
  1123. package/dist/ionic/p-9fa07aec.entry.js +0 -4
  1124. package/dist/ionic/p-a1051806.entry.js +0 -4
  1125. package/dist/ionic/p-a15ddedb.system.js +0 -4
  1126. package/dist/ionic/p-a1b9a163.entry.js +0 -4
  1127. package/dist/ionic/p-a34b4d94.entry.js +0 -4
  1128. package/dist/ionic/p-a4565eb5.system.js +0 -4
  1129. package/dist/ionic/p-a49378bb.system.entry.js +0 -4
  1130. package/dist/ionic/p-a61cba41.entry.js +0 -4
  1131. package/dist/ionic/p-a69b9fc5.system.js +0 -4
  1132. package/dist/ionic/p-abe101da.system.js +0 -4
  1133. package/dist/ionic/p-adbc4bdf.entry.js +0 -4
  1134. package/dist/ionic/p-afecb188.entry.js +0 -4
  1135. package/dist/ionic/p-b335ffed.system.entry.js +0 -4
  1136. package/dist/ionic/p-b51e4004.js +0 -4
  1137. package/dist/ionic/p-b82d4cab.js +0 -4
  1138. package/dist/ionic/p-b9d7015f.entry.js +0 -4
  1139. package/dist/ionic/p-bb0db172.entry.js +0 -4
  1140. package/dist/ionic/p-bc36ad98.system.entry.js +0 -4
  1141. package/dist/ionic/p-bdad26e3.entry.js +0 -4
  1142. package/dist/ionic/p-c29f8157.system.entry.js +0 -4
  1143. package/dist/ionic/p-c2b74d92.system.entry.js +0 -4
  1144. package/dist/ionic/p-c41ac815.entry.js +0 -4
  1145. package/dist/ionic/p-c468af8a.system.js +0 -4
  1146. package/dist/ionic/p-c61cc894.js +0 -4
  1147. package/dist/ionic/p-c9f3a539.entry.js +0 -4
  1148. package/dist/ionic/p-ca065903.system.entry.js +0 -4
  1149. package/dist/ionic/p-cac0e0b3.system.entry.js +0 -4
  1150. package/dist/ionic/p-d18ab582.system.entry.js +0 -4
  1151. package/dist/ionic/p-d47265c8.js +0 -4
  1152. package/dist/ionic/p-d6841eac.js +0 -4
  1153. package/dist/ionic/p-d7aa6b00.entry.js +0 -4
  1154. package/dist/ionic/p-d7e982e7.system.entry.js +0 -4
  1155. package/dist/ionic/p-da074ff7.entry.js +0 -4
  1156. package/dist/ionic/p-db0c8e7d.entry.js +0 -4
  1157. package/dist/ionic/p-de930745.entry.js +0 -4
  1158. package/dist/ionic/p-dfb78785.system.js +0 -4
  1159. package/dist/ionic/p-e2252ad6.entry.js +0 -4
  1160. package/dist/ionic/p-e4ee80be.system.entry.js +0 -4
  1161. package/dist/ionic/p-e563a35c.entry.js +0 -4
  1162. package/dist/ionic/p-e7ed4a7f.system.js +0 -4
  1163. package/dist/ionic/p-e9a173ed.entry.js +0 -4
  1164. package/dist/ionic/p-eba29931.entry.js +0 -4
  1165. package/dist/ionic/p-ebf042e0.system.entry.js +0 -4
  1166. package/dist/ionic/p-ecceeb90.js +0 -4
  1167. package/dist/ionic/p-ed75fcfb.system.entry.js +0 -4
  1168. package/dist/ionic/p-ee7ba749.entry.js +0 -4
  1169. package/dist/ionic/p-efaffe74.entry.js +0 -4
  1170. package/dist/ionic/p-f10b70a1.entry.js +0 -4
  1171. package/dist/ionic/p-f1acf541.system.entry.js +0 -4
  1172. package/dist/ionic/p-f3102647.system.entry.js +0 -4
  1173. package/dist/ionic/p-fca6ef5f.system.entry.js +0 -4
  1174. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1175. /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,36 @@ 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.)
313
337
  */
314
338
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
339
+ /**
340
+ * The theme determines the visual appearance of the component.
341
+ */
342
+ "theme"?: "ios" | "md" | "ionic";
315
343
  }
316
344
  interface IonAvatar {
345
+ /**
346
+ * The mode determines the platform behaviors of the component.
347
+ */
348
+ "mode"?: "ios" | "md";
349
+ /**
350
+ * 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.
351
+ */
352
+ "shape"?: 'soft' | 'round' | 'rectangular';
353
+ /**
354
+ * 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.
355
+ */
356
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
357
+ /**
358
+ * The theme determines the visual appearance of the component.
359
+ */
360
+ "theme"?: "ios" | "md" | "ionic";
317
361
  }
318
362
  interface IonBackButton {
319
363
  /**
@@ -333,7 +377,7 @@ export namespace Components {
333
377
  */
334
378
  "icon"?: string | null;
335
379
  /**
336
- * The mode determines which platform styles to use.
380
+ * The mode determines the platform behaviors of the component.
337
381
  */
338
382
  "mode"?: "ios" | "md";
339
383
  /**
@@ -344,12 +388,20 @@ export namespace Components {
344
388
  * The text to display in the back button.
345
389
  */
346
390
  "text"?: string | null;
391
+ /**
392
+ * The theme determines the visual appearance of the component.
393
+ */
394
+ "theme"?: "ios" | "md" | "ionic";
347
395
  /**
348
396
  * The type of the button.
349
397
  */
350
398
  "type": 'submit' | 'reset' | 'button';
351
399
  }
352
400
  interface IonBackdrop {
401
+ /**
402
+ * The mode determines the platform behaviors of the component.
403
+ */
404
+ "mode"?: "ios" | "md";
353
405
  /**
354
406
  * If `true`, the backdrop will stop propagation on tap.
355
407
  */
@@ -358,6 +410,10 @@ export namespace Components {
358
410
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
359
411
  */
360
412
  "tappable": boolean;
413
+ /**
414
+ * The theme determines the visual appearance of the component.
415
+ */
416
+ "theme"?: "ios" | "md" | "ionic";
361
417
  /**
362
418
  * If `true`, the backdrop will be visible.
363
419
  */
@@ -369,9 +425,21 @@ export namespace Components {
369
425
  */
370
426
  "color"?: Color;
371
427
  /**
372
- * The mode determines which platform styles to use.
428
+ * The mode determines the platform behaviors of the component.
373
429
  */
374
430
  "mode"?: "ios" | "md";
431
+ /**
432
+ * 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.
433
+ */
434
+ "shape"?: 'soft' | 'round | rectangular';
435
+ /**
436
+ * 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.
437
+ */
438
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
439
+ /**
440
+ * The theme determines the visual appearance of the component.
441
+ */
442
+ "theme"?: "ios" | "md" | "ionic";
375
443
  }
376
444
  interface IonBreadcrumb {
377
445
  /**
@@ -397,7 +465,7 @@ export namespace Components {
397
465
  "href": string | undefined;
398
466
  "last": boolean;
399
467
  /**
400
- * The mode determines which platform styles to use.
468
+ * The mode determines the platform behaviors of the component.
401
469
  */
402
470
  "mode"?: "ios" | "md";
403
471
  /**
@@ -421,6 +489,10 @@ export namespace Components {
421
489
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
422
490
  */
423
491
  "target": string | undefined;
492
+ /**
493
+ * The theme determines the visual appearance of the component.
494
+ */
495
+ "theme"?: "ios" | "md" | "ionic";
424
496
  }
425
497
  interface IonBreadcrumbs {
426
498
  /**
@@ -440,9 +512,13 @@ export namespace Components {
440
512
  */
441
513
  "maxItems"?: number;
442
514
  /**
443
- * The mode determines which platform styles to use.
515
+ * The mode determines the platform behaviors of the component.
444
516
  */
445
517
  "mode"?: "ios" | "md";
518
+ /**
519
+ * The theme determines the visual appearance of the component.
520
+ */
521
+ "theme"?: "ios" | "md" | "ionic";
446
522
  }
447
523
  interface IonButton {
448
524
  /**
@@ -478,7 +554,7 @@ export namespace Components {
478
554
  */
479
555
  "href": string | undefined;
480
556
  /**
481
- * The mode determines which platform styles to use.
557
+ * The mode determines the platform behaviors of the component.
482
558
  */
483
559
  "mode"?: "ios" | "md";
484
560
  /**
@@ -494,13 +570,13 @@ export namespace Components {
494
570
  */
495
571
  "routerDirection": RouterDirection;
496
572
  /**
497
- * Set to `"round"` for a button with more rounded corners.
573
+ * 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
574
  */
499
- "shape"?: 'round';
575
+ "shape"?: 'soft' | 'round' | 'rectangular';
500
576
  /**
501
577
  * 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
578
  */
503
- "size"?: 'small' | 'default' | 'large';
579
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
504
580
  /**
505
581
  * If `true`, activates a button with a heavier font weight.
506
582
  */
@@ -509,6 +585,10 @@ export namespace Components {
509
585
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
510
586
  */
511
587
  "target": string | undefined;
588
+ /**
589
+ * The theme determines the visual appearance of the component.
590
+ */
591
+ "theme"?: "ios" | "md" | "ionic";
512
592
  /**
513
593
  * The type of the button.
514
594
  */
@@ -516,9 +596,17 @@ export namespace Components {
516
596
  }
517
597
  interface IonButtons {
518
598
  /**
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)
599
+ * 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
600
  */
521
601
  "collapse": boolean;
602
+ /**
603
+ * The mode determines the platform behaviors of the component.
604
+ */
605
+ "mode"?: "ios" | "md";
606
+ /**
607
+ * The theme determines the visual appearance of the component.
608
+ */
609
+ "theme"?: "ios" | "md" | "ionic";
522
610
  }
523
611
  interface IonCard {
524
612
  /**
@@ -542,7 +630,7 @@ export namespace Components {
542
630
  */
543
631
  "href": string | undefined;
544
632
  /**
545
- * The mode determines which platform styles to use.
633
+ * The mode determines the platform behaviors of the component.
546
634
  */
547
635
  "mode"?: "ios" | "md";
548
636
  /**
@@ -557,10 +645,18 @@ export namespace Components {
557
645
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
558
646
  */
559
647
  "routerDirection": RouterDirection;
648
+ /**
649
+ * 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"`.
650
+ */
651
+ "shape"?: 'soft' | 'round' | 'rectangular';
560
652
  /**
561
653
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
562
654
  */
563
655
  "target": string | undefined;
656
+ /**
657
+ * The theme determines the visual appearance of the component.
658
+ */
659
+ "theme"?: "ios" | "md" | "ionic";
564
660
  /**
565
661
  * The type of the button. Only used when an `onclick` or `button` property is present.
566
662
  */
@@ -568,9 +664,13 @@ export namespace Components {
568
664
  }
569
665
  interface IonCardContent {
570
666
  /**
571
- * The mode determines which platform styles to use.
667
+ * The mode determines the platform behaviors of the component.
572
668
  */
573
669
  "mode"?: "ios" | "md";
670
+ /**
671
+ * The theme determines the visual appearance of the component.
672
+ */
673
+ "theme"?: "ios" | "md" | "ionic";
574
674
  }
575
675
  interface IonCardHeader {
576
676
  /**
@@ -578,11 +678,15 @@ export namespace Components {
578
678
  */
579
679
  "color"?: Color;
580
680
  /**
581
- * The mode determines which platform styles to use.
681
+ * The mode determines the platform behaviors of the component.
582
682
  */
583
683
  "mode"?: "ios" | "md";
584
684
  /**
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).
685
+ * The theme determines the visual appearance of the component.
686
+ */
687
+ "theme"?: "ios" | "md" | "ionic";
688
+ /**
689
+ * 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
690
  */
587
691
  "translucent": boolean;
588
692
  }
@@ -592,9 +696,13 @@ export namespace Components {
592
696
  */
593
697
  "color"?: Color;
594
698
  /**
595
- * The mode determines which platform styles to use.
699
+ * The mode determines the platform behaviors of the component.
596
700
  */
597
701
  "mode"?: "ios" | "md";
702
+ /**
703
+ * The theme determines the visual appearance of the component.
704
+ */
705
+ "theme"?: "ios" | "md" | "ionic";
598
706
  }
599
707
  interface IonCardTitle {
600
708
  /**
@@ -602,9 +710,13 @@ export namespace Components {
602
710
  */
603
711
  "color"?: Color;
604
712
  /**
605
- * The mode determines which platform styles to use.
713
+ * The mode determines the platform behaviors of the component.
606
714
  */
607
715
  "mode"?: "ios" | "md";
716
+ /**
717
+ * The theme determines the visual appearance of the component.
718
+ */
719
+ "theme"?: "ios" | "md" | "ionic";
608
720
  }
609
721
  interface IonCheckbox {
610
722
  /**
@@ -636,7 +748,7 @@ export namespace Components {
636
748
  */
637
749
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
638
750
  /**
639
- * The mode determines which platform styles to use.
751
+ * The mode determines the platform behaviors of the component.
640
752
  */
641
753
  "mode"?: "ios" | "md";
642
754
  /**
@@ -644,6 +756,18 @@ export namespace Components {
644
756
  */
645
757
  "name": string;
646
758
  "setFocus": () => Promise<void>;
759
+ /**
760
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
761
+ */
762
+ "shape"?: 'soft' | 'rectangular';
763
+ /**
764
+ * Set to `"small"` for a checkbox with less height and padding.
765
+ */
766
+ "size"?: 'small';
767
+ /**
768
+ * The theme determines the visual appearance of the component.
769
+ */
770
+ "theme"?: "ios" | "md" | "ionic";
647
771
  /**
648
772
  * 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>`.
649
773
  */
@@ -659,15 +783,31 @@ export namespace Components {
659
783
  */
660
784
  "disabled": boolean;
661
785
  /**
662
- * The mode determines which platform styles to use.
786
+ * The mode determines the platform behaviors of the component.
663
787
  */
664
788
  "mode"?: "ios" | "md";
665
789
  /**
666
790
  * Display an outline style button.
667
791
  */
668
792
  "outline": boolean;
793
+ /**
794
+ * 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.
795
+ */
796
+ "shape"?: 'soft' | 'round' | 'rectangular';
797
+ /**
798
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
799
+ */
800
+ "size"?: 'small' | 'large';
801
+ /**
802
+ * The theme determines the visual appearance of the component.
803
+ */
804
+ "theme"?: "ios" | "md" | "ionic";
669
805
  }
670
806
  interface IonCol {
807
+ /**
808
+ * The mode determines the platform behaviors of the component.
809
+ */
810
+ "mode"?: "ios" | "md";
671
811
  /**
672
812
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
673
813
  */
@@ -764,6 +904,10 @@ export namespace Components {
764
904
  * 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.
765
905
  */
766
906
  "sizeXs"?: string;
907
+ /**
908
+ * The theme determines the visual appearance of the component.
909
+ */
910
+ "theme"?: "ios" | "md" | "ionic";
767
911
  }
768
912
  interface IonContent {
769
913
  /**
@@ -790,6 +934,10 @@ export namespace Components {
790
934
  * 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.
791
935
  */
792
936
  "getScrollElement": () => Promise<HTMLElement>;
937
+ /**
938
+ * The mode determines the platform behaviors of the component.
939
+ */
940
+ "mode"?: "ios" | "md";
793
941
  /**
794
942
  * Scroll by a specified X/Y distance in the component.
795
943
  * @param x The amount to scroll by on the horizontal axis.
@@ -826,6 +974,10 @@ export namespace Components {
826
974
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
827
975
  */
828
976
  "scrollY": boolean;
977
+ /**
978
+ * The theme determines the visual appearance of the component.
979
+ */
980
+ "theme"?: "ios" | "md" | "ionic";
829
981
  }
830
982
  interface IonDatetime {
831
983
  /**
@@ -901,7 +1053,7 @@ export namespace Components {
901
1053
  */
902
1054
  "minuteValues"?: number[] | number | string;
903
1055
  /**
904
- * The mode determines which platform styles to use.
1056
+ * The mode determines the platform behaviors of the component.
905
1057
  */
906
1058
  "mode"?: "ios" | "md";
907
1059
  /**
@@ -952,6 +1104,10 @@ export namespace Components {
952
1104
  * 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.
953
1105
  */
954
1106
  "size": 'cover' | 'fixed';
1107
+ /**
1108
+ * The theme determines the visual appearance of the component.
1109
+ */
1110
+ "theme"?: "ios" | "md" | "ionic";
955
1111
  /**
956
1112
  * 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.
957
1113
  */
@@ -979,9 +1135,13 @@ export namespace Components {
979
1135
  */
980
1136
  "disabled": boolean;
981
1137
  /**
982
- * The mode determines which platform styles to use.
1138
+ * The mode determines the platform behaviors of the component.
983
1139
  */
984
1140
  "mode"?: "ios" | "md";
1141
+ /**
1142
+ * The theme determines the visual appearance of the component.
1143
+ */
1144
+ "theme"?: "ios" | "md" | "ionic";
985
1145
  }
986
1146
  interface IonFab {
987
1147
  /**
@@ -1000,6 +1160,14 @@ export namespace Components {
1000
1160
  * Where to align the fab horizontally in the viewport.
1001
1161
  */
1002
1162
  "horizontal"?: 'start' | 'end' | 'center';
1163
+ /**
1164
+ * The mode determines the platform behaviors of the component.
1165
+ */
1166
+ "mode"?: "ios" | "md";
1167
+ /**
1168
+ * The theme determines the visual appearance of the component.
1169
+ */
1170
+ "theme"?: "ios" | "md" | "ionic";
1003
1171
  /**
1004
1172
  * Opens/Closes the FAB list container.
1005
1173
  */
@@ -1017,7 +1185,7 @@ export namespace Components {
1017
1185
  /**
1018
1186
  * 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.
1019
1187
  */
1020
- "closeIcon": string;
1188
+ "closeIcon"?: string;
1021
1189
  /**
1022
1190
  * 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).
1023
1191
  */
@@ -1035,7 +1203,7 @@ export namespace Components {
1035
1203
  */
1036
1204
  "href": string | undefined;
1037
1205
  /**
1038
- * The mode determines which platform styles to use.
1206
+ * The mode determines the platform behaviors of the component.
1039
1207
  */
1040
1208
  "mode"?: "ios" | "md";
1041
1209
  /**
@@ -1063,7 +1231,11 @@ export namespace Components {
1063
1231
  */
1064
1232
  "target": string | undefined;
1065
1233
  /**
1066
- * 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).
1234
+ * The theme determines the visual appearance of the component.
1235
+ */
1236
+ "theme"?: "ios" | "md" | "ionic";
1237
+ /**
1238
+ * 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).
1067
1239
  */
1068
1240
  "translucent": boolean;
1069
1241
  /**
@@ -1076,22 +1248,34 @@ export namespace Components {
1076
1248
  * If `true`, the fab list will show all fab buttons in the list.
1077
1249
  */
1078
1250
  "activated": boolean;
1251
+ /**
1252
+ * The mode determines the platform behaviors of the component.
1253
+ */
1254
+ "mode"?: "ios" | "md";
1079
1255
  /**
1080
1256
  * The side the fab list will show on relative to the main fab button.
1081
1257
  */
1082
1258
  "side": 'start' | 'end' | 'top' | 'bottom';
1259
+ /**
1260
+ * The theme determines the visual appearance of the component.
1261
+ */
1262
+ "theme"?: "ios" | "md" | "ionic";
1083
1263
  }
1084
1264
  interface IonFooter {
1085
1265
  /**
1086
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1266
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1087
1267
  */
1088
1268
  "collapse"?: 'fade';
1089
1269
  /**
1090
- * The mode determines which platform styles to use.
1270
+ * The mode determines the platform behaviors of the component.
1091
1271
  */
1092
1272
  "mode"?: "ios" | "md";
1093
1273
  /**
1094
- * 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.
1274
+ * The theme determines the visual appearance of the component.
1275
+ */
1276
+ "theme"?: "ios" | "md" | "ionic";
1277
+ /**
1278
+ * 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.
1095
1279
  */
1096
1280
  "translucent": boolean;
1097
1281
  }
@@ -1100,18 +1284,34 @@ export namespace Components {
1100
1284
  * If `true`, the grid will have a fixed width based on the screen size.
1101
1285
  */
1102
1286
  "fixed": boolean;
1287
+ /**
1288
+ * The mode determines the platform behaviors of the component.
1289
+ */
1290
+ "mode"?: "ios" | "md";
1291
+ /**
1292
+ * The theme determines the visual appearance of the component.
1293
+ */
1294
+ "theme"?: "ios" | "md" | "ionic";
1103
1295
  }
1104
1296
  interface IonHeader {
1105
1297
  /**
1106
- * 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)
1298
+ * 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)
1107
1299
  */
1108
1300
  "collapse"?: 'condense' | 'fade';
1109
1301
  /**
1110
- * The mode determines which platform styles to use.
1302
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1303
+ */
1304
+ "divider": boolean;
1305
+ /**
1306
+ * The mode determines the platform behaviors of the component.
1111
1307
  */
1112
1308
  "mode"?: "ios" | "md";
1113
1309
  /**
1114
- * 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.
1310
+ * The theme determines the visual appearance of the component.
1311
+ */
1312
+ "theme"?: "ios" | "md" | "ionic";
1313
+ /**
1314
+ * 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.
1115
1315
  */
1116
1316
  "translucent": boolean;
1117
1317
  }
@@ -1120,10 +1320,18 @@ export namespace Components {
1120
1320
  * 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.
1121
1321
  */
1122
1322
  "alt"?: string;
1323
+ /**
1324
+ * The mode determines the platform behaviors of the component.
1325
+ */
1326
+ "mode"?: "ios" | "md";
1123
1327
  /**
1124
1328
  * The image URL. This attribute is mandatory for the `<img>` element.
1125
1329
  */
1126
1330
  "src"?: string;
1331
+ /**
1332
+ * The theme determines the visual appearance of the component.
1333
+ */
1334
+ "theme"?: "ios" | "md" | "ionic";
1127
1335
  }
1128
1336
  interface IonInfiniteScroll {
1129
1337
  /**
@@ -1134,10 +1342,18 @@ export namespace Components {
1134
1342
  * 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.
1135
1343
  */
1136
1344
  "disabled": boolean;
1345
+ /**
1346
+ * The mode determines the platform behaviors of the component.
1347
+ */
1348
+ "mode"?: "ios" | "md";
1137
1349
  /**
1138
1350
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1139
1351
  */
1140
1352
  "position": 'top' | 'bottom';
1353
+ /**
1354
+ * The theme determines the visual appearance of the component.
1355
+ */
1356
+ "theme"?: "ios" | "md" | "ionic";
1141
1357
  /**
1142
1358
  * 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.
1143
1359
  */
@@ -1152,6 +1368,14 @@ export namespace Components {
1152
1368
  * 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.
1153
1369
  */
1154
1370
  "loadingText"?: string | IonicSafeString;
1371
+ /**
1372
+ * The mode determines the platform behaviors of the component.
1373
+ */
1374
+ "mode"?: "ios" | "md";
1375
+ /**
1376
+ * The theme determines the visual appearance of the component.
1377
+ */
1378
+ "theme"?: "ios" | "md" | "ionic";
1155
1379
  }
1156
1380
  interface IonInput {
1157
1381
  /**
@@ -1211,7 +1435,7 @@ export namespace Components {
1211
1435
  */
1212
1436
  "errorText"?: string;
1213
1437
  /**
1214
- * 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.
1438
+ * 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"`.
1215
1439
  */
1216
1440
  "fill"?: 'outline' | 'solid';
1217
1441
  /**
@@ -1231,9 +1455,9 @@ export namespace Components {
1231
1455
  */
1232
1456
  "label"?: string;
1233
1457
  /**
1234
- * 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 ("...").
1458
+ * 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.
1235
1459
  */
1236
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1460
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1237
1461
  /**
1238
1462
  * The maximum value, which must not be less than its minimum (min attribute) value.
1239
1463
  */
@@ -1251,7 +1475,7 @@ export namespace Components {
1251
1475
  */
1252
1476
  "minlength"?: number;
1253
1477
  /**
1254
- * The mode determines which platform styles to use.
1478
+ * The mode determines the platform behaviors of the component.
1255
1479
  */
1256
1480
  "mode"?: "ios" | "md";
1257
1481
  /**
@@ -1283,9 +1507,13 @@ export namespace Components {
1283
1507
  */
1284
1508
  "setFocus": () => Promise<void>;
1285
1509
  /**
1286
- * The shape of the input. If "round" it will have an increased border radius.
1510
+ * 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"`.
1287
1511
  */
1288
- "shape"?: 'round';
1512
+ "shape"?: 'soft' | 'round' | 'rectangular';
1513
+ /**
1514
+ * 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.
1515
+ */
1516
+ "size"?: 'medium' | 'large' | 'xlarge';
1289
1517
  /**
1290
1518
  * If `true`, the element will have its spelling and grammar checked.
1291
1519
  */
@@ -1294,6 +1522,10 @@ export namespace Components {
1294
1522
  * 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.
1295
1523
  */
1296
1524
  "step"?: string;
1525
+ /**
1526
+ * The theme determines the visual appearance of the component.
1527
+ */
1528
+ "theme"?: "ios" | "md" | "ionic";
1297
1529
  /**
1298
1530
  * The type of control to display. The default type is text.
1299
1531
  */
@@ -1332,13 +1564,13 @@ export namespace Components {
1332
1564
  */
1333
1565
  "color"?: Color;
1334
1566
  /**
1335
- * 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.
1567
+ * 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.
1336
1568
  */
1337
1569
  "detail"?: boolean;
1338
1570
  /**
1339
1571
  * The icon to use when `detail` is set to `true`.
1340
1572
  */
1341
- "detailIcon": string;
1573
+ "detailIcon"?: string;
1342
1574
  /**
1343
1575
  * If `true`, the user cannot interact with the item.
1344
1576
  */
@@ -1356,7 +1588,7 @@ export namespace Components {
1356
1588
  */
1357
1589
  "lines"?: 'full' | 'inset' | 'none';
1358
1590
  /**
1359
- * The mode determines which platform styles to use.
1591
+ * The mode determines the platform behaviors of the component.
1360
1592
  */
1361
1593
  "mode"?: "ios" | "md";
1362
1594
  /**
@@ -1375,6 +1607,10 @@ export namespace Components {
1375
1607
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1376
1608
  */
1377
1609
  "target": string | undefined;
1610
+ /**
1611
+ * The theme determines the visual appearance of the component.
1612
+ */
1613
+ "theme"?: "ios" | "md" | "ionic";
1378
1614
  /**
1379
1615
  * The type of the button. Only used when an `onclick` or `button` property is present.
1380
1616
  */
@@ -1386,15 +1622,27 @@ export namespace Components {
1386
1622
  */
1387
1623
  "color"?: Color;
1388
1624
  /**
1389
- * The mode determines which platform styles to use.
1625
+ * The mode determines the platform behaviors of the component.
1390
1626
  */
1391
1627
  "mode"?: "ios" | "md";
1392
1628
  /**
1393
1629
  * 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
1394
1630
  */
1395
1631
  "sticky": boolean;
1632
+ /**
1633
+ * The theme determines the visual appearance of the component.
1634
+ */
1635
+ "theme"?: "ios" | "md" | "ionic";
1396
1636
  }
1397
1637
  interface IonItemGroup {
1638
+ /**
1639
+ * The mode determines the platform behaviors of the component.
1640
+ */
1641
+ "mode"?: "ios" | "md";
1642
+ /**
1643
+ * The theme determines the visual appearance of the component.
1644
+ */
1645
+ "theme"?: "ios" | "md" | "ionic";
1398
1646
  }
1399
1647
  interface IonItemOption {
1400
1648
  /**
@@ -1418,17 +1666,25 @@ export namespace Components {
1418
1666
  */
1419
1667
  "href": string | undefined;
1420
1668
  /**
1421
- * The mode determines which platform styles to use.
1669
+ * The mode determines the platform behaviors of the component.
1422
1670
  */
1423
1671
  "mode"?: "ios" | "md";
1424
1672
  /**
1425
1673
  * 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).
1426
1674
  */
1427
1675
  "rel": string | undefined;
1676
+ /**
1677
+ * 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.
1678
+ */
1679
+ "shape"?: 'soft' | 'round' | 'rectangular';
1428
1680
  /**
1429
1681
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1430
1682
  */
1431
1683
  "target": string | undefined;
1684
+ /**
1685
+ * The theme determines the visual appearance of the component.
1686
+ */
1687
+ "theme"?: "ios" | "md" | "ionic";
1432
1688
  /**
1433
1689
  * The type of the button.
1434
1690
  */
@@ -1436,10 +1692,18 @@ export namespace Components {
1436
1692
  }
1437
1693
  interface IonItemOptions {
1438
1694
  "fireSwipeEvent": () => Promise<void>;
1695
+ /**
1696
+ * The mode determines the platform behaviors of the component.
1697
+ */
1698
+ "mode"?: "ios" | "md";
1439
1699
  /**
1440
1700
  * 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.
1441
1701
  */
1442
1702
  "side": Side;
1703
+ /**
1704
+ * The theme determines the visual appearance of the component.
1705
+ */
1706
+ "theme"?: "ios" | "md" | "ionic";
1443
1707
  }
1444
1708
  interface IonItemSliding {
1445
1709
  /**
@@ -1462,11 +1726,19 @@ export namespace Components {
1462
1726
  * 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.
1463
1727
  */
1464
1728
  "getSlidingRatio": () => Promise<number>;
1729
+ /**
1730
+ * The mode determines the platform behaviors of the component.
1731
+ */
1732
+ "mode"?: "ios" | "md";
1465
1733
  /**
1466
1734
  * Open the sliding item.
1467
1735
  * @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.
1468
1736
  */
1469
1737
  "open": (side: Side | undefined) => Promise<void>;
1738
+ /**
1739
+ * The theme determines the visual appearance of the component.
1740
+ */
1741
+ "theme"?: "ios" | "md" | "ionic";
1470
1742
  }
1471
1743
  interface IonLabel {
1472
1744
  /**
@@ -1474,13 +1746,17 @@ export namespace Components {
1474
1746
  */
1475
1747
  "color"?: Color;
1476
1748
  /**
1477
- * The mode determines which platform styles to use.
1749
+ * The mode determines the platform behaviors of the component.
1478
1750
  */
1479
1751
  "mode"?: "ios" | "md";
1480
1752
  /**
1481
1753
  * The position determines where and how the label behaves inside an item.
1482
1754
  */
1483
1755
  "position"?: 'fixed' | 'stacked' | 'floating';
1756
+ /**
1757
+ * The theme determines the visual appearance of the component.
1758
+ */
1759
+ "theme"?: "ios" | "md" | "ionic";
1484
1760
  }
1485
1761
  interface IonList {
1486
1762
  /**
@@ -1496,9 +1772,17 @@ export namespace Components {
1496
1772
  */
1497
1773
  "lines"?: 'full' | 'inset' | 'none';
1498
1774
  /**
1499
- * The mode determines which platform styles to use.
1775
+ * The mode determines the platform behaviors of the component.
1500
1776
  */
1501
1777
  "mode"?: "ios" | "md";
1778
+ /**
1779
+ * 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.
1780
+ */
1781
+ "shape"?: 'soft' | 'round' | 'rectangular';
1782
+ /**
1783
+ * The theme determines the visual appearance of the component.
1784
+ */
1785
+ "theme"?: "ios" | "md" | "ionic";
1502
1786
  }
1503
1787
  interface IonListHeader {
1504
1788
  /**
@@ -1510,9 +1794,13 @@ export namespace Components {
1510
1794
  */
1511
1795
  "lines"?: 'full' | 'inset' | 'none';
1512
1796
  /**
1513
- * The mode determines which platform styles to use.
1797
+ * The mode determines the platform behaviors of the component.
1514
1798
  */
1515
1799
  "mode"?: "ios" | "md";
1800
+ /**
1801
+ * The theme determines the visual appearance of the component.
1802
+ */
1803
+ "theme"?: "ios" | "md" | "ionic";
1516
1804
  }
1517
1805
  interface IonLoading {
1518
1806
  /**
@@ -1564,7 +1852,7 @@ export namespace Components {
1564
1852
  */
1565
1853
  "message"?: string | IonicSafeString;
1566
1854
  /**
1567
- * The mode determines which platform styles to use.
1855
+ * The mode determines the platform behaviors of the component.
1568
1856
  */
1569
1857
  "mode"?: "ios" | "md";
1570
1858
  /**
@@ -1589,7 +1877,11 @@ export namespace Components {
1589
1877
  */
1590
1878
  "spinner"?: SpinnerTypes | null;
1591
1879
  /**
1592
- * 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).
1880
+ * The theme determines the visual appearance of the component.
1881
+ */
1882
+ "theme"?: "ios" | "md" | "ionic";
1883
+ /**
1884
+ * 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).
1593
1885
  */
1594
1886
  "translucent": boolean;
1595
1887
  /**
@@ -1626,6 +1918,10 @@ export namespace Components {
1626
1918
  * An id for the menu.
1627
1919
  */
1628
1920
  "menuId"?: string;
1921
+ /**
1922
+ * The mode determines the platform behaviors of the component.
1923
+ */
1924
+ "mode"?: "ios" | "md";
1629
1925
  /**
1630
1926
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1631
1927
  */
@@ -1642,6 +1938,10 @@ export namespace Components {
1642
1938
  * If `true`, swiping the menu is enabled.
1643
1939
  */
1644
1940
  "swipeGesture": boolean;
1941
+ /**
1942
+ * The theme determines the visual appearance of the component.
1943
+ */
1944
+ "theme"?: "ios" | "md" | "ionic";
1645
1945
  /**
1646
1946
  * 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`.
1647
1947
  */
@@ -1669,9 +1969,13 @@ export namespace Components {
1669
1969
  */
1670
1970
  "menu"?: string;
1671
1971
  /**
1672
- * The mode determines which platform styles to use.
1972
+ * The mode determines the platform behaviors of the component.
1673
1973
  */
1674
1974
  "mode"?: "ios" | "md";
1975
+ /**
1976
+ * The theme determines the visual appearance of the component.
1977
+ */
1978
+ "theme"?: "ios" | "md" | "ionic";
1675
1979
  /**
1676
1980
  * The type of the button.
1677
1981
  */
@@ -1686,6 +1990,14 @@ export namespace Components {
1686
1990
  * 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.
1687
1991
  */
1688
1992
  "menu"?: string;
1993
+ /**
1994
+ * The mode determines the platform behaviors of the component.
1995
+ */
1996
+ "mode"?: "ios" | "md";
1997
+ /**
1998
+ * The theme determines the visual appearance of the component.
1999
+ */
2000
+ "theme"?: "ios" | "md" | "ionic";
1689
2001
  }
1690
2002
  interface IonModal {
1691
2003
  /**
@@ -1773,7 +2085,7 @@ export namespace Components {
1773
2085
  */
1774
2086
  "leaveAnimation"?: AnimationBuilder;
1775
2087
  /**
1776
- * The mode determines which platform styles to use.
2088
+ * The mode determines the platform behaviors of the component.
1777
2089
  */
1778
2090
  "mode"?: "ios" | "md";
1779
2091
  /**
@@ -1797,10 +2109,18 @@ export namespace Components {
1797
2109
  * Move a sheet style modal to a specific breakpoint. The breakpoint value must be a value defined in your `breakpoints` array.
1798
2110
  */
1799
2111
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2112
+ /**
2113
+ * 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.
2114
+ */
2115
+ "shape"?: 'soft' | 'round' | 'rectangular';
1800
2116
  /**
1801
2117
  * 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.
1802
2118
  */
1803
2119
  "showBackdrop": boolean;
2120
+ /**
2121
+ * The theme determines the visual appearance of the component.
2122
+ */
2123
+ "theme"?: "ios" | "md" | "ionic";
1804
2124
  /**
1805
2125
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1806
2126
  */
@@ -1812,7 +2132,7 @@ export namespace Components {
1812
2132
  */
1813
2133
  "animated": boolean;
1814
2134
  /**
1815
- * 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.
2135
+ * 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.
1816
2136
  */
1817
2137
  "animation"?: AnimationBuilder;
1818
2138
  /**
@@ -1860,6 +2180,10 @@ export namespace Components {
1860
2180
  * @param done The transition complete function.
1861
2181
  */
1862
2182
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2183
+ /**
2184
+ * The mode determines the platform behaviors of the component.
2185
+ */
2186
+ "mode"?: "ios" | "md";
1863
2187
  /**
1864
2188
  * Pop a component off of the navigation stack. Navigates back from the current component.
1865
2189
  * @param opts The navigation options.
@@ -1931,6 +2255,10 @@ export namespace Components {
1931
2255
  * If the nav component should allow for swipe-to-go-back.
1932
2256
  */
1933
2257
  "swipeGesture"?: boolean;
2258
+ /**
2259
+ * The theme determines the visual appearance of the component.
2260
+ */
2261
+ "theme"?: "ios" | "md" | "ionic";
1934
2262
  }
1935
2263
  interface IonNavLink {
1936
2264
  /**
@@ -1941,6 +2269,10 @@ export namespace Components {
1941
2269
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1942
2270
  */
1943
2271
  "componentProps"?: ComponentProps;
2272
+ /**
2273
+ * The mode determines the platform behaviors of the component.
2274
+ */
2275
+ "mode"?: "ios" | "md";
1944
2276
  /**
1945
2277
  * The transition animation when navigating to another page.
1946
2278
  */
@@ -1949,6 +2281,10 @@ export namespace Components {
1949
2281
  * The transition direction when navigating to another page.
1950
2282
  */
1951
2283
  "routerDirection": RouterDirection;
2284
+ /**
2285
+ * The theme determines the visual appearance of the component.
2286
+ */
2287
+ "theme"?: "ios" | "md" | "ionic";
1952
2288
  }
1953
2289
  interface IonNote {
1954
2290
  /**
@@ -1956,16 +2292,24 @@ export namespace Components {
1956
2292
  */
1957
2293
  "color"?: Color;
1958
2294
  /**
1959
- * The mode determines which platform styles to use.
2295
+ * The mode determines the platform behaviors of the component.
1960
2296
  */
1961
2297
  "mode"?: "ios" | "md";
2298
+ /**
2299
+ * The theme determines the visual appearance of the component.
2300
+ */
2301
+ "theme"?: "ios" | "md" | "ionic";
1962
2302
  }
1963
2303
  interface IonPicker {
1964
2304
  "exitInputMode": () => Promise<void>;
1965
2305
  /**
1966
- * The mode determines which platform styles to use.
2306
+ * The mode determines the platform behaviors of the component.
1967
2307
  */
1968
2308
  "mode"?: "ios" | "md";
2309
+ /**
2310
+ * The theme determines the visual appearance of the component.
2311
+ */
2312
+ "theme"?: "ios" | "md" | "ionic";
1969
2313
  }
1970
2314
  interface IonPickerColumn {
1971
2315
  /**
@@ -1977,7 +2321,7 @@ export namespace Components {
1977
2321
  */
1978
2322
  "disabled": boolean;
1979
2323
  /**
1980
- * The mode determines which platform styles to use.
2324
+ * The mode determines the platform behaviors of the component.
1981
2325
  */
1982
2326
  "mode"?: "ios" | "md";
1983
2327
  /**
@@ -1993,6 +2337,10 @@ export namespace Components {
1993
2337
  * 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.
1994
2338
  */
1995
2339
  "setValue": (value: PickerColumnValue) => Promise<void>;
2340
+ /**
2341
+ * The theme determines the visual appearance of the component.
2342
+ */
2343
+ "theme"?: "ios" | "md" | "ionic";
1996
2344
  /**
1997
2345
  * The selected option in the picker.
1998
2346
  */
@@ -2007,6 +2355,14 @@ export namespace Components {
2007
2355
  * If `true`, the user cannot interact with the picker column option.
2008
2356
  */
2009
2357
  "disabled": boolean;
2358
+ /**
2359
+ * The mode determines the platform behaviors of the component.
2360
+ */
2361
+ "mode"?: "ios" | "md";
2362
+ /**
2363
+ * The theme determines the visual appearance of the component.
2364
+ */
2365
+ "theme"?: "ios" | "md" | "ionic";
2010
2366
  /**
2011
2367
  * The text value of the option.
2012
2368
  */
@@ -2071,7 +2427,7 @@ export namespace Components {
2071
2427
  */
2072
2428
  "leaveAnimation"?: AnimationBuilder;
2073
2429
  /**
2074
- * The mode determines which platform styles to use.
2430
+ * The mode determines the platform behaviors of the component.
2075
2431
  */
2076
2432
  "mode"?: "ios" | "md";
2077
2433
  /**
@@ -2091,6 +2447,10 @@ export namespace Components {
2091
2447
  * If `true`, a backdrop will be displayed behind the picker.
2092
2448
  */
2093
2449
  "showBackdrop": boolean;
2450
+ /**
2451
+ * The theme determines the visual appearance of the component.
2452
+ */
2453
+ "theme"?: "ios" | "md" | "ionic";
2094
2454
  /**
2095
2455
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2096
2456
  */
@@ -2104,7 +2464,7 @@ export namespace Components {
2104
2464
  }
2105
2465
  interface IonPopover {
2106
2466
  /**
2107
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2467
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2108
2468
  */
2109
2469
  "alignment"?: PositionAlign;
2110
2470
  /**
@@ -2112,7 +2472,7 @@ export namespace Components {
2112
2472
  */
2113
2473
  "animated": boolean;
2114
2474
  /**
2115
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2475
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2116
2476
  */
2117
2477
  "arrow": boolean;
2118
2478
  /**
@@ -2179,7 +2539,7 @@ export namespace Components {
2179
2539
  */
2180
2540
  "leaveAnimation"?: AnimationBuilder;
2181
2541
  /**
2182
- * The mode determines which platform styles to use.
2542
+ * The mode determines the platform behaviors of the component.
2183
2543
  */
2184
2544
  "mode"?: "ios" | "md";
2185
2545
  /**
@@ -2216,7 +2576,11 @@ export namespace Components {
2216
2576
  */
2217
2577
  "size": PopoverSize;
2218
2578
  /**
2219
- * 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).
2579
+ * The theme determines the visual appearance of the component.
2580
+ */
2581
+ "theme"?: "ios" | "md" | "ionic";
2582
+ /**
2583
+ * 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).
2220
2584
  */
2221
2585
  "translucent": boolean;
2222
2586
  /**
@@ -2238,13 +2602,17 @@ export namespace Components {
2238
2602
  */
2239
2603
  "color"?: Color;
2240
2604
  /**
2241
- * The mode determines which platform styles to use.
2605
+ * The mode determines the platform behaviors of the component.
2242
2606
  */
2243
2607
  "mode"?: "ios" | "md";
2244
2608
  /**
2245
2609
  * If true, reverse the progress bar direction.
2246
2610
  */
2247
2611
  "reversed": boolean;
2612
+ /**
2613
+ * The theme determines the visual appearance of the component.
2614
+ */
2615
+ "theme"?: "ios" | "md" | "ionic";
2248
2616
  /**
2249
2617
  * 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).
2250
2618
  */
@@ -2276,7 +2644,7 @@ export namespace Components {
2276
2644
  */
2277
2645
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2278
2646
  /**
2279
- * The mode determines which platform styles to use.
2647
+ * The mode determines the platform behaviors of the component.
2280
2648
  */
2281
2649
  "mode"?: "ios" | "md";
2282
2650
  /**
@@ -2285,6 +2653,10 @@ export namespace Components {
2285
2653
  "name": string;
2286
2654
  "setButtonTabindex": (value: number) => Promise<void>;
2287
2655
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
2656
+ /**
2657
+ * The theme determines the visual appearance of the component.
2658
+ */
2659
+ "theme"?: "ios" | "md" | "ionic";
2288
2660
  /**
2289
2661
  * the value of the radio.
2290
2662
  */
@@ -2299,12 +2671,20 @@ export namespace Components {
2299
2671
  * This property allows developers to specify a custom function or property name for comparing objects when determining the selected option in the ion-radio-group. When not specified, the default behavior will use strict equality (===) for comparison.
2300
2672
  */
2301
2673
  "compareWith"?: string | RadioGroupCompareFn | null;
2674
+ /**
2675
+ * The mode determines the platform behaviors of the component.
2676
+ */
2677
+ "mode"?: "ios" | "md";
2302
2678
  /**
2303
2679
  * The name of the control, which is submitted with the form data.
2304
2680
  */
2305
2681
  "name": string;
2306
2682
  /**
2307
- * the value of the radio group.
2683
+ * The theme determines the visual appearance of the component.
2684
+ */
2685
+ "theme"?: "ios" | "md" | "ionic";
2686
+ /**
2687
+ * the value of the radio group.
2308
2688
  */
2309
2689
  "value"?: any | null;
2310
2690
  }
@@ -2346,7 +2726,7 @@ export namespace Components {
2346
2726
  */
2347
2727
  "min": number;
2348
2728
  /**
2349
- * The mode determines which platform styles to use.
2729
+ * The mode determines the platform behaviors of the component.
2350
2730
  */
2351
2731
  "mode"?: "ios" | "md";
2352
2732
  /**
@@ -2369,6 +2749,10 @@ export namespace Components {
2369
2749
  * Specifies the value granularity.
2370
2750
  */
2371
2751
  "step": number;
2752
+ /**
2753
+ * The theme determines the visual appearance of the component.
2754
+ */
2755
+ "theme"?: "ios" | "md" | "ionic";
2372
2756
  /**
2373
2757
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2374
2758
  */
@@ -2400,7 +2784,7 @@ export namespace Components {
2400
2784
  */
2401
2785
  "getProgress": () => Promise<number>;
2402
2786
  /**
2403
- * The mode determines which platform styles to use.
2787
+ * The mode determines the platform behaviors of the component.
2404
2788
  */
2405
2789
  "mode"?: "ios" | "md";
2406
2790
  /**
@@ -2419,8 +2803,16 @@ export namespace Components {
2419
2803
  * 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.
2420
2804
  */
2421
2805
  "snapbackDuration": string;
2806
+ /**
2807
+ * The theme determines the visual appearance of the component.
2808
+ */
2809
+ "theme"?: "ios" | "md" | "ionic";
2422
2810
  }
2423
2811
  interface IonRefresherContent {
2812
+ /**
2813
+ * The mode determines the platform behaviors of the component.
2814
+ */
2815
+ "mode"?: "ios" | "md";
2424
2816
  /**
2425
2817
  * 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.
2426
2818
  */
@@ -2437,8 +2829,20 @@ export namespace Components {
2437
2829
  * 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.
2438
2830
  */
2439
2831
  "refreshingText"?: string | IonicSafeString;
2832
+ /**
2833
+ * The theme determines the visual appearance of the component.
2834
+ */
2835
+ "theme"?: "ios" | "md" | "ionic";
2440
2836
  }
2441
2837
  interface IonReorder {
2838
+ /**
2839
+ * The mode determines the platform behaviors of the component.
2840
+ */
2841
+ "mode"?: "ios" | "md";
2842
+ /**
2843
+ * The theme determines the visual appearance of the component.
2844
+ */
2845
+ "theme"?: "ios" | "md" | "ionic";
2442
2846
  }
2443
2847
  interface IonReorderGroup {
2444
2848
  /**
@@ -2450,6 +2854,14 @@ export namespace Components {
2450
2854
  * If `true`, the reorder will be hidden.
2451
2855
  */
2452
2856
  "disabled": boolean;
2857
+ /**
2858
+ * The mode determines the platform behaviors of the component.
2859
+ */
2860
+ "mode"?: "ios" | "md";
2861
+ /**
2862
+ * The theme determines the visual appearance of the component.
2863
+ */
2864
+ "theme"?: "ios" | "md" | "ionic";
2453
2865
  }
2454
2866
  interface IonRippleEffect {
2455
2867
  /**
@@ -2458,6 +2870,14 @@ export namespace Components {
2458
2870
  * @param y The vertical coordinate of where the ripple should start.
2459
2871
  */
2460
2872
  "addRipple": (x: number, y: number) => Promise<() => void>;
2873
+ /**
2874
+ * The mode determines the platform behaviors of the component.
2875
+ */
2876
+ "mode"?: "ios" | "md";
2877
+ /**
2878
+ * The theme determines the visual appearance of the component.
2879
+ */
2880
+ "theme"?: "ios" | "md" | "ionic";
2461
2881
  /**
2462
2882
  * 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.
2463
2883
  */
@@ -2480,6 +2900,14 @@ export namespace Components {
2480
2900
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2481
2901
  */
2482
2902
  "componentProps"?: { [key: string]: any };
2903
+ /**
2904
+ * The mode determines the platform behaviors of the component.
2905
+ */
2906
+ "mode"?: "ios" | "md";
2907
+ /**
2908
+ * The theme determines the visual appearance of the component.
2909
+ */
2910
+ "theme"?: "ios" | "md" | "ionic";
2483
2911
  /**
2484
2912
  * 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.
2485
2913
  */
@@ -2501,6 +2929,10 @@ export namespace Components {
2501
2929
  */
2502
2930
  "back": () => Promise<void>;
2503
2931
  "canTransition": () => Promise<string | boolean>;
2932
+ /**
2933
+ * The mode determines the platform behaviors of the component.
2934
+ */
2935
+ "mode"?: "ios" | "md";
2504
2936
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2505
2937
  "printDebug": () => Promise<void>;
2506
2938
  /**
@@ -2513,6 +2945,10 @@ export namespace Components {
2513
2945
  * 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.
2514
2946
  */
2515
2947
  "root": string;
2948
+ /**
2949
+ * The theme determines the visual appearance of the component.
2950
+ */
2951
+ "theme"?: "ios" | "md" | "ionic";
2516
2952
  /**
2517
2953
  * 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.
2518
2954
  */
@@ -2527,6 +2963,10 @@ export namespace Components {
2527
2963
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2528
2964
  */
2529
2965
  "href": string | undefined;
2966
+ /**
2967
+ * The mode determines the platform behaviors of the component.
2968
+ */
2969
+ "mode"?: "ios" | "md";
2530
2970
  /**
2531
2971
  * 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).
2532
2972
  */
@@ -2543,6 +2983,10 @@ export namespace Components {
2543
2983
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2544
2984
  */
2545
2985
  "target": string | undefined;
2986
+ /**
2987
+ * The theme determines the visual appearance of the component.
2988
+ */
2989
+ "theme"?: "ios" | "md" | "ionic";
2546
2990
  }
2547
2991
  interface IonRouterOutlet {
2548
2992
  /**
@@ -2557,13 +3001,25 @@ export namespace Components {
2557
3001
  "delegate"?: FrameworkDelegate;
2558
3002
  "getRouteId": () => Promise<RouteID | undefined>;
2559
3003
  /**
2560
- * The mode determines which platform styles to use.
3004
+ * The mode determines the platform behaviors of the component.
2561
3005
  */
2562
3006
  "mode": "ios" | "md";
2563
3007
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2564
3008
  "swipeHandler"?: SwipeGestureHandler;
3009
+ /**
3010
+ * The theme determines the visual appearance of the component.
3011
+ */
3012
+ "theme"?: "ios" | "md" | "ionic";
2565
3013
  }
2566
3014
  interface IonRow {
3015
+ /**
3016
+ * The mode determines the platform behaviors of the component.
3017
+ */
3018
+ "mode"?: "ios" | "md";
3019
+ /**
3020
+ * The theme determines the visual appearance of the component.
3021
+ */
3022
+ "theme"?: "ios" | "md" | "ionic";
2567
3023
  }
2568
3024
  interface IonSearchbar {
2569
3025
  /**
@@ -2583,15 +3039,15 @@ export namespace Components {
2583
3039
  */
2584
3040
  "autocorrect": 'on' | 'off';
2585
3041
  /**
2586
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3042
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2587
3043
  */
2588
- "cancelButtonIcon": string;
3044
+ "cancelButtonIcon"?: string;
2589
3045
  /**
2590
- * Set the the cancel button text. Only applies to `ios` mode.
3046
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
2591
3047
  */
2592
3048
  "cancelButtonText": string;
2593
3049
  /**
2594
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3050
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2595
3051
  */
2596
3052
  "clearIcon"?: string;
2597
3053
  /**
@@ -2627,7 +3083,7 @@ export namespace Components {
2627
3083
  */
2628
3084
  "minlength"?: number;
2629
3085
  /**
2630
- * The mode determines which platform styles to use.
3086
+ * The mode determines the platform behaviors of the component.
2631
3087
  */
2632
3088
  "mode"?: "ios" | "md";
2633
3089
  /**
@@ -2639,7 +3095,7 @@ export namespace Components {
2639
3095
  */
2640
3096
  "placeholder": string;
2641
3097
  /**
2642
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3098
+ * 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.
2643
3099
  */
2644
3100
  "searchIcon"?: string;
2645
3101
  /**
@@ -2658,6 +3114,10 @@ export namespace Components {
2658
3114
  * If `true`, enable spellcheck on the input.
2659
3115
  */
2660
3116
  "spellcheck": boolean;
3117
+ /**
3118
+ * The theme determines the visual appearance of the component.
3119
+ */
3120
+ "theme"?: "ios" | "md" | "ionic";
2661
3121
  /**
2662
3122
  * Set the type of the input.
2663
3123
  */
@@ -2677,7 +3137,7 @@ export namespace Components {
2677
3137
  */
2678
3138
  "disabled": boolean;
2679
3139
  /**
2680
- * The mode determines which platform styles to use.
3140
+ * The mode determines the platform behaviors of the component.
2681
3141
  */
2682
3142
  "mode"?: "ios" | "md";
2683
3143
  /**
@@ -2692,6 +3152,10 @@ export namespace Components {
2692
3152
  * If `true`, users will be able to swipe between segment buttons to activate them.
2693
3153
  */
2694
3154
  "swipeGesture": boolean;
3155
+ /**
3156
+ * The theme determines the visual appearance of the component.
3157
+ */
3158
+ "theme"?: "ios" | "md" | "ionic";
2695
3159
  /**
2696
3160
  * the value of the segment.
2697
3161
  */
@@ -2711,10 +3175,14 @@ export namespace Components {
2711
3175
  */
2712
3176
  "layout"?: SegmentButtonLayout;
2713
3177
  /**
2714
- * The mode determines which platform styles to use.
3178
+ * The mode determines the platform behaviors of the component.
2715
3179
  */
2716
3180
  "mode"?: "ios" | "md";
2717
3181
  "setFocus": () => Promise<void>;
3182
+ /**
3183
+ * The theme determines the visual appearance of the component.
3184
+ */
3185
+ "theme"?: "ios" | "md" | "ionic";
2718
3186
  /**
2719
3187
  * The type of the button.
2720
3188
  */
@@ -2755,11 +3223,11 @@ export namespace Components {
2755
3223
  */
2756
3224
  "disabled": boolean;
2757
3225
  /**
2758
- * 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.
3226
+ * 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.
2759
3227
  */
2760
3228
  "expandedIcon"?: string;
2761
3229
  /**
2762
- * 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.
3230
+ * 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.
2763
3231
  */
2764
3232
  "fill"?: 'outline' | 'solid';
2765
3233
  /**
@@ -2783,7 +3251,7 @@ export namespace Components {
2783
3251
  */
2784
3252
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2785
3253
  /**
2786
- * The mode determines which platform styles to use.
3254
+ * The mode determines the platform behaviors of the component.
2787
3255
  */
2788
3256
  "mode"?: "ios" | "md";
2789
3257
  /**
@@ -2816,7 +3284,11 @@ export namespace Components {
2816
3284
  */
2817
3285
  "shape"?: 'round';
2818
3286
  /**
2819
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3287
+ * The theme determines the visual appearance of the component.
3288
+ */
3289
+ "theme"?: "ios" | "md" | "ionic";
3290
+ /**
3291
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2820
3292
  */
2821
3293
  "toggleIcon"?: string;
2822
3294
  /**
@@ -2834,6 +3306,14 @@ export namespace Components {
2834
3306
  * 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.
2835
3307
  */
2836
3308
  "disabled": boolean;
3309
+ /**
3310
+ * The mode determines the platform behaviors of the component.
3311
+ */
3312
+ "mode"?: "ios" | "md";
3313
+ /**
3314
+ * The theme determines the visual appearance of the component.
3315
+ */
3316
+ "theme"?: "ios" | "md" | "ionic";
2837
3317
  /**
2838
3318
  * The text value of the option.
2839
3319
  */
@@ -2848,6 +3328,10 @@ export namespace Components {
2848
3328
  * The text content of the popover body
2849
3329
  */
2850
3330
  "message"?: string;
3331
+ /**
3332
+ * The mode determines the platform behaviors of the component.
3333
+ */
3334
+ "mode"?: "ios" | "md";
2851
3335
  /**
2852
3336
  * If true, the select accepts multiple values
2853
3337
  */
@@ -2860,12 +3344,24 @@ export namespace Components {
2860
3344
  * The subheader text of the popover
2861
3345
  */
2862
3346
  "subHeader"?: string;
3347
+ /**
3348
+ * The theme determines the visual appearance of the component.
3349
+ */
3350
+ "theme"?: "ios" | "md" | "ionic";
2863
3351
  }
2864
3352
  interface IonSkeletonText {
2865
3353
  /**
2866
3354
  * If `true`, the skeleton text will animate.
2867
3355
  */
2868
3356
  "animated": boolean;
3357
+ /**
3358
+ * The mode determines the platform behaviors of the component.
3359
+ */
3360
+ "mode"?: "ios" | "md";
3361
+ /**
3362
+ * The theme determines the visual appearance of the component.
3363
+ */
3364
+ "theme"?: "ios" | "md" | "ionic";
2869
3365
  }
2870
3366
  interface IonSpinner {
2871
3367
  /**
@@ -2876,6 +3372,10 @@ export namespace Components {
2876
3372
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2877
3373
  */
2878
3374
  "duration"?: number;
3375
+ /**
3376
+ * The mode determines the platform behaviors of the component.
3377
+ */
3378
+ "mode"?: "ios" | "md";
2879
3379
  /**
2880
3380
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2881
3381
  */
@@ -2884,6 +3384,14 @@ export namespace Components {
2884
3384
  * If `true`, the spinner's animation will be paused.
2885
3385
  */
2886
3386
  "paused": boolean;
3387
+ /**
3388
+ * 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.
3389
+ */
3390
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3391
+ /**
3392
+ * The theme determines the visual appearance of the component.
3393
+ */
3394
+ "theme"?: "ios" | "md" | "ionic";
2887
3395
  }
2888
3396
  interface IonSplitPane {
2889
3397
  /**
@@ -2895,6 +3403,14 @@ export namespace Components {
2895
3403
  */
2896
3404
  "disabled": boolean;
2897
3405
  "isVisible": () => Promise<boolean>;
3406
+ /**
3407
+ * The mode determines the platform behaviors of the component.
3408
+ */
3409
+ "mode"?: "ios" | "md";
3410
+ /**
3411
+ * The theme determines the visual appearance of the component.
3412
+ */
3413
+ "theme"?: "ios" | "md" | "ionic";
2898
3414
  /**
2899
3415
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
2900
3416
  */
@@ -2907,6 +3423,10 @@ export namespace Components {
2907
3423
  */
2908
3424
  "component"?: ComponentRef;
2909
3425
  "delegate"?: FrameworkDelegate;
3426
+ /**
3427
+ * The mode determines the platform behaviors of the component.
3428
+ */
3429
+ "mode"?: "ios" | "md";
2910
3430
  /**
2911
3431
  * Set the active component for the tab
2912
3432
  */
@@ -2915,6 +3435,10 @@ export namespace Components {
2915
3435
  * 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.
2916
3436
  */
2917
3437
  "tab": string;
3438
+ /**
3439
+ * The theme determines the visual appearance of the component.
3440
+ */
3441
+ "theme"?: "ios" | "md" | "ionic";
2918
3442
  }
2919
3443
  interface IonTabBar {
2920
3444
  /**
@@ -2922,7 +3446,11 @@ export namespace Components {
2922
3446
  */
2923
3447
  "color"?: Color;
2924
3448
  /**
2925
- * The mode determines which platform styles to use.
3449
+ * 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"`.
3450
+ */
3451
+ "expand": 'compact' | 'full';
3452
+ /**
3453
+ * The mode determines the platform behaviors of the component.
2926
3454
  */
2927
3455
  "mode"?: "ios" | "md";
2928
3456
  /**
@@ -2930,7 +3458,15 @@ export namespace Components {
2930
3458
  */
2931
3459
  "selectedTab"?: string;
2932
3460
  /**
2933
- * 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).
3461
+ * 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.
3462
+ */
3463
+ "shape"?: 'soft' | 'round' | 'rectangular';
3464
+ /**
3465
+ * The theme determines the visual appearance of the component.
3466
+ */
3467
+ "theme"?: "ios" | "md" | "ionic";
3468
+ /**
3469
+ * 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).
2934
3470
  */
2935
3471
  "translucent": boolean;
2936
3472
  }
@@ -2952,7 +3488,7 @@ export namespace Components {
2952
3488
  */
2953
3489
  "layout"?: TabButtonLayout;
2954
3490
  /**
2955
- * The mode determines which platform styles to use.
3491
+ * The mode determines the platform behaviors of the component.
2956
3492
  */
2957
3493
  "mode"?: "ios" | "md";
2958
3494
  /**
@@ -2971,6 +3507,10 @@ export namespace Components {
2971
3507
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2972
3508
  */
2973
3509
  "target": string | undefined;
3510
+ /**
3511
+ * The theme determines the visual appearance of the component.
3512
+ */
3513
+ "theme"?: "ios" | "md" | "ionic";
2974
3514
  }
2975
3515
  interface IonTabs {
2976
3516
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2983,12 +3523,20 @@ export namespace Components {
2983
3523
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2984
3524
  */
2985
3525
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3526
+ /**
3527
+ * The mode determines the platform behaviors of the component.
3528
+ */
3529
+ "mode"?: "ios" | "md";
2986
3530
  /**
2987
3531
  * 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.
2988
3532
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2989
3533
  */
2990
3534
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2991
3535
  "setRouteId": (id: string) => Promise<RouteWrite>;
3536
+ /**
3537
+ * The theme determines the visual appearance of the component.
3538
+ */
3539
+ "theme"?: "ios" | "md" | "ionic";
2992
3540
  "useRouter": boolean;
2993
3541
  }
2994
3542
  interface IonText {
@@ -2997,9 +3545,13 @@ export namespace Components {
2997
3545
  */
2998
3546
  "color"?: Color;
2999
3547
  /**
3000
- * The mode determines which platform styles to use.
3548
+ * The mode determines the platform behaviors of the component.
3001
3549
  */
3002
3550
  "mode"?: "ios" | "md";
3551
+ /**
3552
+ * The theme determines the visual appearance of the component.
3553
+ */
3554
+ "theme"?: "ios" | "md" | "ionic";
3003
3555
  }
3004
3556
  interface IonTextarea {
3005
3557
  /**
@@ -3051,7 +3603,7 @@ export namespace Components {
3051
3603
  */
3052
3604
  "errorText"?: string;
3053
3605
  /**
3054
- * 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.
3606
+ * 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"`.
3055
3607
  */
3056
3608
  "fill"?: 'outline' | 'solid';
3057
3609
  /**
@@ -3083,7 +3635,7 @@ export namespace Components {
3083
3635
  */
3084
3636
  "minlength"?: number;
3085
3637
  /**
3086
- * The mode determines which platform styles to use.
3638
+ * The mode determines the platform behaviors of the component.
3087
3639
  */
3088
3640
  "mode"?: "ios" | "md";
3089
3641
  /**
@@ -3111,13 +3663,21 @@ export namespace Components {
3111
3663
  */
3112
3664
  "setFocus": () => Promise<void>;
3113
3665
  /**
3114
- * The shape of the textarea. If "round" it will have an increased border radius.
3666
+ * 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.
3115
3667
  */
3116
- "shape"?: 'round';
3668
+ "shape"?: 'soft' | 'round' | 'rectangular';
3669
+ /**
3670
+ * 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.
3671
+ */
3672
+ "size"?: 'small' | 'medium' | 'large';
3117
3673
  /**
3118
3674
  * If `true`, the element will have its spelling and grammar checked.
3119
3675
  */
3120
3676
  "spellcheck": boolean;
3677
+ /**
3678
+ * The theme determines the visual appearance of the component.
3679
+ */
3680
+ "theme"?: "ios" | "md" | "ionic";
3121
3681
  /**
3122
3682
  * The value of the textarea.
3123
3683
  */
@@ -3128,16 +3688,32 @@ export namespace Components {
3128
3688
  "wrap"?: 'hard' | 'soft' | 'off';
3129
3689
  }
3130
3690
  interface IonThumbnail {
3691
+ /**
3692
+ * The mode determines the platform behaviors of the component.
3693
+ */
3694
+ "mode"?: "ios" | "md";
3695
+ /**
3696
+ * The theme determines the visual appearance of the component.
3697
+ */
3698
+ "theme"?: "ios" | "md" | "ionic";
3131
3699
  }
3132
3700
  interface IonTitle {
3133
3701
  /**
3134
3702
  * 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).
3135
3703
  */
3136
3704
  "color"?: Color;
3705
+ /**
3706
+ * The mode determines the platform behaviors of the component.
3707
+ */
3708
+ "mode"?: "ios" | "md";
3137
3709
  /**
3138
3710
  * The size of the toolbar title.
3139
3711
  */
3140
3712
  "size"?: 'large' | 'small';
3713
+ /**
3714
+ * The theme determines the visual appearance of the component.
3715
+ */
3716
+ "theme"?: "ios" | "md" | "ionic";
3141
3717
  }
3142
3718
  interface IonToast {
3143
3719
  /**
@@ -3205,7 +3781,7 @@ export namespace Components {
3205
3781
  */
3206
3782
  "message"?: string | IonicSafeString;
3207
3783
  /**
3208
- * The mode determines which platform styles to use.
3784
+ * The mode determines the platform behaviors of the component.
3209
3785
  */
3210
3786
  "mode"?: "ios" | "md";
3211
3787
  /**
@@ -3229,12 +3805,20 @@ export namespace Components {
3229
3805
  * Present the toast overlay after it has been created.
3230
3806
  */
3231
3807
  "present": () => Promise<void>;
3808
+ /**
3809
+ * 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.
3810
+ */
3811
+ "shape"?: 'soft' | 'round' | 'rectangular';
3232
3812
  /**
3233
3813
  * 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.
3234
3814
  */
3235
3815
  "swipeGesture"?: ToastSwipeGestureDirection;
3236
3816
  /**
3237
- * 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).
3817
+ * The theme determines the visual appearance of the component.
3818
+ */
3819
+ "theme"?: "ios" | "md" | "ionic";
3820
+ /**
3821
+ * 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).
3238
3822
  */
3239
3823
  "translucent": boolean;
3240
3824
  /**
@@ -3272,13 +3856,17 @@ export namespace Components {
3272
3856
  */
3273
3857
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3274
3858
  /**
3275
- * The mode determines which platform styles to use.
3859
+ * The mode determines the platform behaviors of the component.
3276
3860
  */
3277
3861
  "mode"?: "ios" | "md";
3278
3862
  /**
3279
3863
  * The name of the control, which is submitted with the form data.
3280
3864
  */
3281
3865
  "name": string;
3866
+ /**
3867
+ * The theme determines the visual appearance of the component.
3868
+ */
3869
+ "theme"?: "ios" | "md" | "ionic";
3282
3870
  /**
3283
3871
  * 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>`.
3284
3872
  */
@@ -3290,9 +3878,13 @@ export namespace Components {
3290
3878
  */
3291
3879
  "color"?: Color;
3292
3880
  /**
3293
- * The mode determines which platform styles to use.
3881
+ * The mode determines the platform behaviors of the component.
3294
3882
  */
3295
3883
  "mode"?: "ios" | "md";
3884
+ /**
3885
+ * The theme determines the visual appearance of the component.
3886
+ */
3887
+ "theme"?: "ios" | "md" | "ionic";
3296
3888
  }
3297
3889
  }
3298
3890
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4810,13 +5402,17 @@ declare namespace LocalJSX {
4810
5402
  */
4811
5403
  "disabled"?: boolean;
4812
5404
  /**
4813
- * The mode determines which platform styles to use.
5405
+ * The mode determines the platform behaviors of the component.
4814
5406
  */
4815
5407
  "mode"?: "ios" | "md";
4816
5408
  /**
4817
5409
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4818
5410
  */
4819
5411
  "readonly"?: boolean;
5412
+ /**
5413
+ * The theme determines the visual appearance of the component.
5414
+ */
5415
+ "theme"?: "ios" | "md" | "ionic";
4820
5416
  /**
4821
5417
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4822
5418
  */
@@ -4844,7 +5440,7 @@ declare namespace LocalJSX {
4844
5440
  */
4845
5441
  "expand"?: 'compact' | 'inset';
4846
5442
  /**
4847
- * The mode determines which platform styles to use.
5443
+ * The mode determines the platform behaviors of the component.
4848
5444
  */
4849
5445
  "mode"?: "ios" | "md";
4850
5446
  /**
@@ -4859,6 +5455,14 @@ declare namespace LocalJSX {
4859
5455
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4860
5456
  */
4861
5457
  "readonly"?: boolean;
5458
+ /**
5459
+ * 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"`.
5460
+ */
5461
+ "shape"?: 'soft' | 'round' | 'rectangular';
5462
+ /**
5463
+ * The theme determines the visual appearance of the component.
5464
+ */
5465
+ "theme"?: "ios" | "md" | "ionic";
4862
5466
  /**
4863
5467
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4864
5468
  */
@@ -4906,7 +5510,7 @@ declare namespace LocalJSX {
4906
5510
  */
4907
5511
  "leaveAnimation"?: AnimationBuilder;
4908
5512
  /**
4909
- * The mode determines which platform styles to use.
5513
+ * The mode determines the platform behaviors of the component.
4910
5514
  */
4911
5515
  "mode"?: "ios" | "md";
4912
5516
  /**
@@ -4946,7 +5550,11 @@ declare namespace LocalJSX {
4946
5550
  */
4947
5551
  "subHeader"?: string;
4948
5552
  /**
4949
- * 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).
5553
+ * The theme determines the visual appearance of the component.
5554
+ */
5555
+ "theme"?: "ios" | "md" | "ionic";
5556
+ /**
5557
+ * 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).
4950
5558
  */
4951
5559
  "translucent"?: boolean;
4952
5560
  /**
@@ -5004,7 +5612,7 @@ declare namespace LocalJSX {
5004
5612
  */
5005
5613
  "message"?: string | IonicSafeString;
5006
5614
  /**
5007
- * The mode determines which platform styles to use.
5615
+ * The mode determines the platform behaviors of the component.
5008
5616
  */
5009
5617
  "mode"?: "ios" | "md";
5010
5618
  /**
@@ -5044,7 +5652,11 @@ declare namespace LocalJSX {
5044
5652
  */
5045
5653
  "subHeader"?: string;
5046
5654
  /**
5047
- * 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).
5655
+ * The theme determines the visual appearance of the component.
5656
+ */
5657
+ "theme"?: "ios" | "md" | "ionic";
5658
+ /**
5659
+ * 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).
5048
5660
  */
5049
5661
  "translucent"?: boolean;
5050
5662
  /**
@@ -5053,8 +5665,32 @@ declare namespace LocalJSX {
5053
5665
  "trigger"?: string | undefined;
5054
5666
  }
5055
5667
  interface IonApp {
5668
+ /**
5669
+ * The mode determines the platform behaviors of the component.
5670
+ */
5671
+ "mode"?: "ios" | "md";
5672
+ /**
5673
+ * The theme determines the visual appearance of the component.
5674
+ */
5675
+ "theme"?: "ios" | "md" | "ionic";
5056
5676
  }
5057
5677
  interface IonAvatar {
5678
+ /**
5679
+ * The mode determines the platform behaviors of the component.
5680
+ */
5681
+ "mode"?: "ios" | "md";
5682
+ /**
5683
+ * 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.
5684
+ */
5685
+ "shape"?: 'soft' | 'round' | 'rectangular';
5686
+ /**
5687
+ * 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.
5688
+ */
5689
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5690
+ /**
5691
+ * The theme determines the visual appearance of the component.
5692
+ */
5693
+ "theme"?: "ios" | "md" | "ionic";
5058
5694
  }
5059
5695
  interface IonBackButton {
5060
5696
  /**
@@ -5074,7 +5710,7 @@ declare namespace LocalJSX {
5074
5710
  */
5075
5711
  "icon"?: string | null;
5076
5712
  /**
5077
- * The mode determines which platform styles to use.
5713
+ * The mode determines the platform behaviors of the component.
5078
5714
  */
5079
5715
  "mode"?: "ios" | "md";
5080
5716
  /**
@@ -5085,12 +5721,20 @@ declare namespace LocalJSX {
5085
5721
  * The text to display in the back button.
5086
5722
  */
5087
5723
  "text"?: string | null;
5724
+ /**
5725
+ * The theme determines the visual appearance of the component.
5726
+ */
5727
+ "theme"?: "ios" | "md" | "ionic";
5088
5728
  /**
5089
5729
  * The type of the button.
5090
5730
  */
5091
5731
  "type"?: 'submit' | 'reset' | 'button';
5092
5732
  }
5093
5733
  interface IonBackdrop {
5734
+ /**
5735
+ * The mode determines the platform behaviors of the component.
5736
+ */
5737
+ "mode"?: "ios" | "md";
5094
5738
  /**
5095
5739
  * Emitted when the backdrop is tapped.
5096
5740
  */
@@ -5103,6 +5747,10 @@ declare namespace LocalJSX {
5103
5747
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5104
5748
  */
5105
5749
  "tappable"?: boolean;
5750
+ /**
5751
+ * The theme determines the visual appearance of the component.
5752
+ */
5753
+ "theme"?: "ios" | "md" | "ionic";
5106
5754
  /**
5107
5755
  * If `true`, the backdrop will be visible.
5108
5756
  */
@@ -5114,9 +5762,21 @@ declare namespace LocalJSX {
5114
5762
  */
5115
5763
  "color"?: Color;
5116
5764
  /**
5117
- * The mode determines which platform styles to use.
5765
+ * The mode determines the platform behaviors of the component.
5118
5766
  */
5119
5767
  "mode"?: "ios" | "md";
5768
+ /**
5769
+ * 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.
5770
+ */
5771
+ "shape"?: 'soft' | 'round | rectangular';
5772
+ /**
5773
+ * 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.
5774
+ */
5775
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5776
+ /**
5777
+ * The theme determines the visual appearance of the component.
5778
+ */
5779
+ "theme"?: "ios" | "md" | "ionic";
5120
5780
  }
5121
5781
  interface IonBreadcrumb {
5122
5782
  /**
@@ -5140,7 +5800,7 @@ declare namespace LocalJSX {
5140
5800
  */
5141
5801
  "href"?: string | undefined;
5142
5802
  /**
5143
- * The mode determines which platform styles to use.
5803
+ * The mode determines the platform behaviors of the component.
5144
5804
  */
5145
5805
  "mode"?: "ios" | "md";
5146
5806
  /**
@@ -5171,6 +5831,10 @@ declare namespace LocalJSX {
5171
5831
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5172
5832
  */
5173
5833
  "target"?: string | undefined;
5834
+ /**
5835
+ * The theme determines the visual appearance of the component.
5836
+ */
5837
+ "theme"?: "ios" | "md" | "ionic";
5174
5838
  }
5175
5839
  interface IonBreadcrumbs {
5176
5840
  /**
@@ -5190,13 +5854,17 @@ declare namespace LocalJSX {
5190
5854
  */
5191
5855
  "maxItems"?: number;
5192
5856
  /**
5193
- * The mode determines which platform styles to use.
5857
+ * The mode determines the platform behaviors of the component.
5194
5858
  */
5195
5859
  "mode"?: "ios" | "md";
5196
5860
  /**
5197
5861
  * Emitted when the collapsed indicator is clicked on.
5198
5862
  */
5199
5863
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5864
+ /**
5865
+ * The theme determines the visual appearance of the component.
5866
+ */
5867
+ "theme"?: "ios" | "md" | "ionic";
5200
5868
  }
5201
5869
  interface IonButton {
5202
5870
  /**
@@ -5232,7 +5900,7 @@ declare namespace LocalJSX {
5232
5900
  */
5233
5901
  "href"?: string | undefined;
5234
5902
  /**
5235
- * The mode determines which platform styles to use.
5903
+ * The mode determines the platform behaviors of the component.
5236
5904
  */
5237
5905
  "mode"?: "ios" | "md";
5238
5906
  /**
@@ -5256,13 +5924,13 @@ declare namespace LocalJSX {
5256
5924
  */
5257
5925
  "routerDirection"?: RouterDirection;
5258
5926
  /**
5259
- * Set to `"round"` for a button with more rounded corners.
5927
+ * 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.
5260
5928
  */
5261
- "shape"?: 'round';
5929
+ "shape"?: 'soft' | 'round' | 'rectangular';
5262
5930
  /**
5263
5931
  * 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.
5264
5932
  */
5265
- "size"?: 'small' | 'default' | 'large';
5933
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5266
5934
  /**
5267
5935
  * If `true`, activates a button with a heavier font weight.
5268
5936
  */
@@ -5271,6 +5939,10 @@ declare namespace LocalJSX {
5271
5939
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5272
5940
  */
5273
5941
  "target"?: string | undefined;
5942
+ /**
5943
+ * The theme determines the visual appearance of the component.
5944
+ */
5945
+ "theme"?: "ios" | "md" | "ionic";
5274
5946
  /**
5275
5947
  * The type of the button.
5276
5948
  */
@@ -5278,9 +5950,17 @@ declare namespace LocalJSX {
5278
5950
  }
5279
5951
  interface IonButtons {
5280
5952
  /**
5281
- * 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)
5953
+ * 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)
5282
5954
  */
5283
5955
  "collapse"?: boolean;
5956
+ /**
5957
+ * The mode determines the platform behaviors of the component.
5958
+ */
5959
+ "mode"?: "ios" | "md";
5960
+ /**
5961
+ * The theme determines the visual appearance of the component.
5962
+ */
5963
+ "theme"?: "ios" | "md" | "ionic";
5284
5964
  }
5285
5965
  interface IonCard {
5286
5966
  /**
@@ -5304,7 +5984,7 @@ declare namespace LocalJSX {
5304
5984
  */
5305
5985
  "href"?: string | undefined;
5306
5986
  /**
5307
- * The mode determines which platform styles to use.
5987
+ * The mode determines the platform behaviors of the component.
5308
5988
  */
5309
5989
  "mode"?: "ios" | "md";
5310
5990
  /**
@@ -5319,10 +5999,18 @@ declare namespace LocalJSX {
5319
5999
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5320
6000
  */
5321
6001
  "routerDirection"?: RouterDirection;
6002
+ /**
6003
+ * 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"`.
6004
+ */
6005
+ "shape"?: 'soft' | 'round' | 'rectangular';
5322
6006
  /**
5323
6007
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5324
6008
  */
5325
6009
  "target"?: string | undefined;
6010
+ /**
6011
+ * The theme determines the visual appearance of the component.
6012
+ */
6013
+ "theme"?: "ios" | "md" | "ionic";
5326
6014
  /**
5327
6015
  * The type of the button. Only used when an `onclick` or `button` property is present.
5328
6016
  */
@@ -5330,9 +6018,13 @@ declare namespace LocalJSX {
5330
6018
  }
5331
6019
  interface IonCardContent {
5332
6020
  /**
5333
- * The mode determines which platform styles to use.
6021
+ * The mode determines the platform behaviors of the component.
5334
6022
  */
5335
6023
  "mode"?: "ios" | "md";
6024
+ /**
6025
+ * The theme determines the visual appearance of the component.
6026
+ */
6027
+ "theme"?: "ios" | "md" | "ionic";
5336
6028
  }
5337
6029
  interface IonCardHeader {
5338
6030
  /**
@@ -5340,11 +6032,15 @@ declare namespace LocalJSX {
5340
6032
  */
5341
6033
  "color"?: Color;
5342
6034
  /**
5343
- * The mode determines which platform styles to use.
6035
+ * The mode determines the platform behaviors of the component.
5344
6036
  */
5345
6037
  "mode"?: "ios" | "md";
5346
6038
  /**
5347
- * 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).
6039
+ * The theme determines the visual appearance of the component.
6040
+ */
6041
+ "theme"?: "ios" | "md" | "ionic";
6042
+ /**
6043
+ * 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).
5348
6044
  */
5349
6045
  "translucent"?: boolean;
5350
6046
  }
@@ -5354,9 +6050,13 @@ declare namespace LocalJSX {
5354
6050
  */
5355
6051
  "color"?: Color;
5356
6052
  /**
5357
- * The mode determines which platform styles to use.
6053
+ * The mode determines the platform behaviors of the component.
5358
6054
  */
5359
6055
  "mode"?: "ios" | "md";
6056
+ /**
6057
+ * The theme determines the visual appearance of the component.
6058
+ */
6059
+ "theme"?: "ios" | "md" | "ionic";
5360
6060
  }
5361
6061
  interface IonCardTitle {
5362
6062
  /**
@@ -5364,9 +6064,13 @@ declare namespace LocalJSX {
5364
6064
  */
5365
6065
  "color"?: Color;
5366
6066
  /**
5367
- * The mode determines which platform styles to use.
6067
+ * The mode determines the platform behaviors of the component.
5368
6068
  */
5369
6069
  "mode"?: "ios" | "md";
6070
+ /**
6071
+ * The theme determines the visual appearance of the component.
6072
+ */
6073
+ "theme"?: "ios" | "md" | "ionic";
5370
6074
  }
5371
6075
  interface IonCheckbox {
5372
6076
  /**
@@ -5398,7 +6102,7 @@ declare namespace LocalJSX {
5398
6102
  */
5399
6103
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5400
6104
  /**
5401
- * The mode determines which platform styles to use.
6105
+ * The mode determines the platform behaviors of the component.
5402
6106
  */
5403
6107
  "mode"?: "ios" | "md";
5404
6108
  /**
@@ -5410,13 +6114,25 @@ declare namespace LocalJSX {
5410
6114
  */
5411
6115
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5412
6116
  /**
5413
- * 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.
6117
+ * 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.
5414
6118
  */
5415
6119
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5416
6120
  /**
5417
6121
  * Emitted when the checkbox has focus.
5418
6122
  */
5419
6123
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
6124
+ /**
6125
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6126
+ */
6127
+ "shape"?: 'soft' | 'rectangular';
6128
+ /**
6129
+ * Set to `"small"` for a checkbox with less height and padding.
6130
+ */
6131
+ "size"?: 'small';
6132
+ /**
6133
+ * The theme determines the visual appearance of the component.
6134
+ */
6135
+ "theme"?: "ios" | "md" | "ionic";
5420
6136
  /**
5421
6137
  * 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>`.
5422
6138
  */
@@ -5432,15 +6148,31 @@ declare namespace LocalJSX {
5432
6148
  */
5433
6149
  "disabled"?: boolean;
5434
6150
  /**
5435
- * The mode determines which platform styles to use.
6151
+ * The mode determines the platform behaviors of the component.
5436
6152
  */
5437
6153
  "mode"?: "ios" | "md";
5438
6154
  /**
5439
6155
  * Display an outline style button.
5440
6156
  */
5441
6157
  "outline"?: boolean;
6158
+ /**
6159
+ * 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.
6160
+ */
6161
+ "shape"?: 'soft' | 'round' | 'rectangular';
6162
+ /**
6163
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6164
+ */
6165
+ "size"?: 'small' | 'large';
6166
+ /**
6167
+ * The theme determines the visual appearance of the component.
6168
+ */
6169
+ "theme"?: "ios" | "md" | "ionic";
5442
6170
  }
5443
6171
  interface IonCol {
6172
+ /**
6173
+ * The mode determines the platform behaviors of the component.
6174
+ */
6175
+ "mode"?: "ios" | "md";
5444
6176
  /**
5445
6177
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5446
6178
  */
@@ -5537,6 +6269,10 @@ declare namespace LocalJSX {
5537
6269
  * 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.
5538
6270
  */
5539
6271
  "sizeXs"?: string;
6272
+ /**
6273
+ * The theme determines the visual appearance of the component.
6274
+ */
6275
+ "theme"?: "ios" | "md" | "ionic";
5540
6276
  }
5541
6277
  interface IonContent {
5542
6278
  /**
@@ -5555,6 +6291,10 @@ declare namespace LocalJSX {
5555
6291
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5556
6292
  */
5557
6293
  "fullscreen"?: boolean;
6294
+ /**
6295
+ * The mode determines the platform behaviors of the component.
6296
+ */
6297
+ "mode"?: "ios" | "md";
5558
6298
  /**
5559
6299
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5560
6300
  */
@@ -5579,6 +6319,10 @@ declare namespace LocalJSX {
5579
6319
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5580
6320
  */
5581
6321
  "scrollY"?: boolean;
6322
+ /**
6323
+ * The theme determines the visual appearance of the component.
6324
+ */
6325
+ "theme"?: "ios" | "md" | "ionic";
5582
6326
  }
5583
6327
  interface IonDatetime {
5584
6328
  /**
@@ -5646,7 +6390,7 @@ declare namespace LocalJSX {
5646
6390
  */
5647
6391
  "minuteValues"?: number[] | number | string;
5648
6392
  /**
5649
- * The mode determines which platform styles to use.
6393
+ * The mode determines the platform behaviors of the component.
5650
6394
  */
5651
6395
  "mode"?: "ios" | "md";
5652
6396
  /**
@@ -5709,6 +6453,10 @@ declare namespace LocalJSX {
5709
6453
  * 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.
5710
6454
  */
5711
6455
  "size"?: 'cover' | 'fixed';
6456
+ /**
6457
+ * The theme determines the visual appearance of the component.
6458
+ */
6459
+ "theme"?: "ios" | "md" | "ionic";
5712
6460
  /**
5713
6461
  * 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.
5714
6462
  */
@@ -5736,9 +6484,13 @@ declare namespace LocalJSX {
5736
6484
  */
5737
6485
  "disabled"?: boolean;
5738
6486
  /**
5739
- * The mode determines which platform styles to use.
6487
+ * The mode determines the platform behaviors of the component.
5740
6488
  */
5741
6489
  "mode"?: "ios" | "md";
6490
+ /**
6491
+ * The theme determines the visual appearance of the component.
6492
+ */
6493
+ "theme"?: "ios" | "md" | "ionic";
5742
6494
  }
5743
6495
  interface IonFab {
5744
6496
  /**
@@ -5753,6 +6505,14 @@ declare namespace LocalJSX {
5753
6505
  * Where to align the fab horizontally in the viewport.
5754
6506
  */
5755
6507
  "horizontal"?: 'start' | 'end' | 'center';
6508
+ /**
6509
+ * The mode determines the platform behaviors of the component.
6510
+ */
6511
+ "mode"?: "ios" | "md";
6512
+ /**
6513
+ * The theme determines the visual appearance of the component.
6514
+ */
6515
+ "theme"?: "ios" | "md" | "ionic";
5756
6516
  /**
5757
6517
  * Where to align the fab vertically in the viewport.
5758
6518
  */
@@ -5784,7 +6544,7 @@ declare namespace LocalJSX {
5784
6544
  */
5785
6545
  "href"?: string | undefined;
5786
6546
  /**
5787
- * The mode determines which platform styles to use.
6547
+ * The mode determines the platform behaviors of the component.
5788
6548
  */
5789
6549
  "mode"?: "ios" | "md";
5790
6550
  /**
@@ -5820,7 +6580,11 @@ declare namespace LocalJSX {
5820
6580
  */
5821
6581
  "target"?: string | undefined;
5822
6582
  /**
5823
- * 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).
6583
+ * The theme determines the visual appearance of the component.
6584
+ */
6585
+ "theme"?: "ios" | "md" | "ionic";
6586
+ /**
6587
+ * 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).
5824
6588
  */
5825
6589
  "translucent"?: boolean;
5826
6590
  /**
@@ -5833,22 +6597,34 @@ declare namespace LocalJSX {
5833
6597
  * If `true`, the fab list will show all fab buttons in the list.
5834
6598
  */
5835
6599
  "activated"?: boolean;
6600
+ /**
6601
+ * The mode determines the platform behaviors of the component.
6602
+ */
6603
+ "mode"?: "ios" | "md";
5836
6604
  /**
5837
6605
  * The side the fab list will show on relative to the main fab button.
5838
6606
  */
5839
6607
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6608
+ /**
6609
+ * The theme determines the visual appearance of the component.
6610
+ */
6611
+ "theme"?: "ios" | "md" | "ionic";
5840
6612
  }
5841
6613
  interface IonFooter {
5842
6614
  /**
5843
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6615
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5844
6616
  */
5845
6617
  "collapse"?: 'fade';
5846
6618
  /**
5847
- * The mode determines which platform styles to use.
6619
+ * The mode determines the platform behaviors of the component.
5848
6620
  */
5849
6621
  "mode"?: "ios" | "md";
5850
6622
  /**
5851
- * 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.
6623
+ * The theme determines the visual appearance of the component.
6624
+ */
6625
+ "theme"?: "ios" | "md" | "ionic";
6626
+ /**
6627
+ * 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.
5852
6628
  */
5853
6629
  "translucent"?: boolean;
5854
6630
  }
@@ -5857,18 +6633,34 @@ declare namespace LocalJSX {
5857
6633
  * If `true`, the grid will have a fixed width based on the screen size.
5858
6634
  */
5859
6635
  "fixed"?: boolean;
6636
+ /**
6637
+ * The mode determines the platform behaviors of the component.
6638
+ */
6639
+ "mode"?: "ios" | "md";
6640
+ /**
6641
+ * The theme determines the visual appearance of the component.
6642
+ */
6643
+ "theme"?: "ios" | "md" | "ionic";
5860
6644
  }
5861
6645
  interface IonHeader {
5862
6646
  /**
5863
- * 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)
6647
+ * 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)
5864
6648
  */
5865
6649
  "collapse"?: 'condense' | 'fade';
5866
6650
  /**
5867
- * The mode determines which platform styles to use.
6651
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6652
+ */
6653
+ "divider"?: boolean;
6654
+ /**
6655
+ * The mode determines the platform behaviors of the component.
5868
6656
  */
5869
6657
  "mode"?: "ios" | "md";
5870
6658
  /**
5871
- * 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.
6659
+ * The theme determines the visual appearance of the component.
6660
+ */
6661
+ "theme"?: "ios" | "md" | "ionic";
6662
+ /**
6663
+ * 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.
5872
6664
  */
5873
6665
  "translucent"?: boolean;
5874
6666
  }
@@ -5877,6 +6669,10 @@ declare namespace LocalJSX {
5877
6669
  * 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.
5878
6670
  */
5879
6671
  "alt"?: string;
6672
+ /**
6673
+ * The mode determines the platform behaviors of the component.
6674
+ */
6675
+ "mode"?: "ios" | "md";
5880
6676
  /**
5881
6677
  * Emitted when the img fails to load
5882
6678
  */
@@ -5893,12 +6689,20 @@ declare namespace LocalJSX {
5893
6689
  * The image URL. This attribute is mandatory for the `<img>` element.
5894
6690
  */
5895
6691
  "src"?: string;
6692
+ /**
6693
+ * The theme determines the visual appearance of the component.
6694
+ */
6695
+ "theme"?: "ios" | "md" | "ionic";
5896
6696
  }
5897
6697
  interface IonInfiniteScroll {
5898
6698
  /**
5899
6699
  * 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.
5900
6700
  */
5901
6701
  "disabled"?: boolean;
6702
+ /**
6703
+ * The mode determines the platform behaviors of the component.
6704
+ */
6705
+ "mode"?: "ios" | "md";
5902
6706
  /**
5903
6707
  * 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.
5904
6708
  */
@@ -5907,6 +6711,10 @@ declare namespace LocalJSX {
5907
6711
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5908
6712
  */
5909
6713
  "position"?: 'top' | 'bottom';
6714
+ /**
6715
+ * The theme determines the visual appearance of the component.
6716
+ */
6717
+ "theme"?: "ios" | "md" | "ionic";
5910
6718
  /**
5911
6719
  * 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.
5912
6720
  */
@@ -5921,6 +6729,14 @@ declare namespace LocalJSX {
5921
6729
  * 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.
5922
6730
  */
5923
6731
  "loadingText"?: string | IonicSafeString;
6732
+ /**
6733
+ * The mode determines the platform behaviors of the component.
6734
+ */
6735
+ "mode"?: "ios" | "md";
6736
+ /**
6737
+ * The theme determines the visual appearance of the component.
6738
+ */
6739
+ "theme"?: "ios" | "md" | "ionic";
5924
6740
  }
5925
6741
  interface IonInput {
5926
6742
  /**
@@ -5980,7 +6796,7 @@ declare namespace LocalJSX {
5980
6796
  */
5981
6797
  "errorText"?: string;
5982
6798
  /**
5983
- * 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.
6799
+ * 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"`.
5984
6800
  */
5985
6801
  "fill"?: 'outline' | 'solid';
5986
6802
  /**
@@ -5996,7 +6812,7 @@ declare namespace LocalJSX {
5996
6812
  */
5997
6813
  "label"?: string;
5998
6814
  /**
5999
- * 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 ("...").
6815
+ * 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.
6000
6816
  */
6001
6817
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6002
6818
  /**
@@ -6016,7 +6832,7 @@ declare namespace LocalJSX {
6016
6832
  */
6017
6833
  "minlength"?: number;
6018
6834
  /**
6019
- * The mode determines which platform styles to use.
6835
+ * The mode determines the platform behaviors of the component.
6020
6836
  */
6021
6837
  "mode"?: "ios" | "md";
6022
6838
  /**
@@ -6060,9 +6876,13 @@ declare namespace LocalJSX {
6060
6876
  */
6061
6877
  "required"?: boolean;
6062
6878
  /**
6063
- * The shape of the input. If "round" it will have an increased border radius.
6879
+ * 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"`.
6064
6880
  */
6065
- "shape"?: 'round';
6881
+ "shape"?: 'soft' | 'round' | 'rectangular';
6882
+ /**
6883
+ * 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.
6884
+ */
6885
+ "size"?: 'medium' | 'large' | 'xlarge';
6066
6886
  /**
6067
6887
  * If `true`, the element will have its spelling and grammar checked.
6068
6888
  */
@@ -6071,6 +6891,10 @@ declare namespace LocalJSX {
6071
6891
  * 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.
6072
6892
  */
6073
6893
  "step"?: string;
6894
+ /**
6895
+ * The theme determines the visual appearance of the component.
6896
+ */
6897
+ "theme"?: "ios" | "md" | "ionic";
6074
6898
  /**
6075
6899
  * The type of control to display. The default type is text.
6076
6900
  */
@@ -6108,7 +6932,7 @@ declare namespace LocalJSX {
6108
6932
  */
6109
6933
  "color"?: Color;
6110
6934
  /**
6111
- * 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.
6935
+ * 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.
6112
6936
  */
6113
6937
  "detail"?: boolean;
6114
6938
  /**
@@ -6132,7 +6956,7 @@ declare namespace LocalJSX {
6132
6956
  */
6133
6957
  "lines"?: 'full' | 'inset' | 'none';
6134
6958
  /**
6135
- * The mode determines which platform styles to use.
6959
+ * The mode determines the platform behaviors of the component.
6136
6960
  */
6137
6961
  "mode"?: "ios" | "md";
6138
6962
  /**
@@ -6151,6 +6975,10 @@ declare namespace LocalJSX {
6151
6975
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6152
6976
  */
6153
6977
  "target"?: string | undefined;
6978
+ /**
6979
+ * The theme determines the visual appearance of the component.
6980
+ */
6981
+ "theme"?: "ios" | "md" | "ionic";
6154
6982
  /**
6155
6983
  * The type of the button. Only used when an `onclick` or `button` property is present.
6156
6984
  */
@@ -6162,15 +6990,27 @@ declare namespace LocalJSX {
6162
6990
  */
6163
6991
  "color"?: Color;
6164
6992
  /**
6165
- * The mode determines which platform styles to use.
6993
+ * The mode determines the platform behaviors of the component.
6166
6994
  */
6167
6995
  "mode"?: "ios" | "md";
6168
6996
  /**
6169
6997
  * 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
6170
6998
  */
6171
6999
  "sticky"?: boolean;
7000
+ /**
7001
+ * The theme determines the visual appearance of the component.
7002
+ */
7003
+ "theme"?: "ios" | "md" | "ionic";
6172
7004
  }
6173
7005
  interface IonItemGroup {
7006
+ /**
7007
+ * The mode determines the platform behaviors of the component.
7008
+ */
7009
+ "mode"?: "ios" | "md";
7010
+ /**
7011
+ * The theme determines the visual appearance of the component.
7012
+ */
7013
+ "theme"?: "ios" | "md" | "ionic";
6174
7014
  }
6175
7015
  interface IonItemOption {
6176
7016
  /**
@@ -6194,23 +7034,35 @@ declare namespace LocalJSX {
6194
7034
  */
6195
7035
  "href"?: string | undefined;
6196
7036
  /**
6197
- * The mode determines which platform styles to use.
7037
+ * The mode determines the platform behaviors of the component.
6198
7038
  */
6199
7039
  "mode"?: "ios" | "md";
6200
7040
  /**
6201
7041
  * 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).
6202
7042
  */
6203
7043
  "rel"?: string | undefined;
7044
+ /**
7045
+ * 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.
7046
+ */
7047
+ "shape"?: 'soft' | 'round' | 'rectangular';
6204
7048
  /**
6205
7049
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6206
7050
  */
6207
7051
  "target"?: string | undefined;
7052
+ /**
7053
+ * The theme determines the visual appearance of the component.
7054
+ */
7055
+ "theme"?: "ios" | "md" | "ionic";
6208
7056
  /**
6209
7057
  * The type of the button.
6210
7058
  */
6211
7059
  "type"?: 'submit' | 'reset' | 'button';
6212
7060
  }
6213
7061
  interface IonItemOptions {
7062
+ /**
7063
+ * The mode determines the platform behaviors of the component.
7064
+ */
7065
+ "mode"?: "ios" | "md";
6214
7066
  /**
6215
7067
  * Emitted when the item has been fully swiped.
6216
7068
  */
@@ -6219,16 +7071,28 @@ declare namespace LocalJSX {
6219
7071
  * 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.
6220
7072
  */
6221
7073
  "side"?: Side;
7074
+ /**
7075
+ * The theme determines the visual appearance of the component.
7076
+ */
7077
+ "theme"?: "ios" | "md" | "ionic";
6222
7078
  }
6223
7079
  interface IonItemSliding {
6224
7080
  /**
6225
7081
  * If `true`, the user cannot interact with the sliding item.
6226
7082
  */
6227
7083
  "disabled"?: boolean;
7084
+ /**
7085
+ * The mode determines the platform behaviors of the component.
7086
+ */
7087
+ "mode"?: "ios" | "md";
6228
7088
  /**
6229
7089
  * Emitted when the sliding position changes.
6230
7090
  */
6231
7091
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7092
+ /**
7093
+ * The theme determines the visual appearance of the component.
7094
+ */
7095
+ "theme"?: "ios" | "md" | "ionic";
6232
7096
  }
6233
7097
  interface IonLabel {
6234
7098
  /**
@@ -6236,13 +7100,17 @@ declare namespace LocalJSX {
6236
7100
  */
6237
7101
  "color"?: Color;
6238
7102
  /**
6239
- * The mode determines which platform styles to use.
7103
+ * The mode determines the platform behaviors of the component.
6240
7104
  */
6241
7105
  "mode"?: "ios" | "md";
6242
7106
  /**
6243
7107
  * The position determines where and how the label behaves inside an item.
6244
7108
  */
6245
7109
  "position"?: 'fixed' | 'stacked' | 'floating';
7110
+ /**
7111
+ * The theme determines the visual appearance of the component.
7112
+ */
7113
+ "theme"?: "ios" | "md" | "ionic";
6246
7114
  }
6247
7115
  interface IonList {
6248
7116
  /**
@@ -6254,9 +7122,17 @@ declare namespace LocalJSX {
6254
7122
  */
6255
7123
  "lines"?: 'full' | 'inset' | 'none';
6256
7124
  /**
6257
- * The mode determines which platform styles to use.
7125
+ * The mode determines the platform behaviors of the component.
6258
7126
  */
6259
7127
  "mode"?: "ios" | "md";
7128
+ /**
7129
+ * 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.
7130
+ */
7131
+ "shape"?: 'soft' | 'round' | 'rectangular';
7132
+ /**
7133
+ * The theme determines the visual appearance of the component.
7134
+ */
7135
+ "theme"?: "ios" | "md" | "ionic";
6260
7136
  }
6261
7137
  interface IonListHeader {
6262
7138
  /**
@@ -6268,9 +7144,13 @@ declare namespace LocalJSX {
6268
7144
  */
6269
7145
  "lines"?: 'full' | 'inset' | 'none';
6270
7146
  /**
6271
- * The mode determines which platform styles to use.
7147
+ * The mode determines the platform behaviors of the component.
6272
7148
  */
6273
7149
  "mode"?: "ios" | "md";
7150
+ /**
7151
+ * The theme determines the visual appearance of the component.
7152
+ */
7153
+ "theme"?: "ios" | "md" | "ionic";
6274
7154
  }
6275
7155
  interface IonLoading {
6276
7156
  /**
@@ -6314,7 +7194,7 @@ declare namespace LocalJSX {
6314
7194
  */
6315
7195
  "message"?: string | IonicSafeString;
6316
7196
  /**
6317
- * The mode determines which platform styles to use.
7197
+ * The mode determines the platform behaviors of the component.
6318
7198
  */
6319
7199
  "mode"?: "ios" | "md";
6320
7200
  /**
@@ -6358,7 +7238,11 @@ declare namespace LocalJSX {
6358
7238
  */
6359
7239
  "spinner"?: SpinnerTypes | null;
6360
7240
  /**
6361
- * 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).
7241
+ * The theme determines the visual appearance of the component.
7242
+ */
7243
+ "theme"?: "ios" | "md" | "ionic";
7244
+ /**
7245
+ * 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).
6362
7246
  */
6363
7247
  "translucent"?: boolean;
6364
7248
  /**
@@ -6383,6 +7267,10 @@ declare namespace LocalJSX {
6383
7267
  * An id for the menu.
6384
7268
  */
6385
7269
  "menuId"?: string;
7270
+ /**
7271
+ * The mode determines the platform behaviors of the component.
7272
+ */
7273
+ "mode"?: "ios" | "md";
6386
7274
  /**
6387
7275
  * Emitted when the menu is closed.
6388
7276
  */
@@ -6407,6 +7295,10 @@ declare namespace LocalJSX {
6407
7295
  * If `true`, swiping the menu is enabled.
6408
7296
  */
6409
7297
  "swipeGesture"?: boolean;
7298
+ /**
7299
+ * The theme determines the visual appearance of the component.
7300
+ */
7301
+ "theme"?: "ios" | "md" | "ionic";
6410
7302
  /**
6411
7303
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6412
7304
  */
@@ -6430,9 +7322,13 @@ declare namespace LocalJSX {
6430
7322
  */
6431
7323
  "menu"?: string;
6432
7324
  /**
6433
- * The mode determines which platform styles to use.
7325
+ * The mode determines the platform behaviors of the component.
6434
7326
  */
6435
7327
  "mode"?: "ios" | "md";
7328
+ /**
7329
+ * The theme determines the visual appearance of the component.
7330
+ */
7331
+ "theme"?: "ios" | "md" | "ionic";
6436
7332
  /**
6437
7333
  * The type of the button.
6438
7334
  */
@@ -6447,6 +7343,14 @@ declare namespace LocalJSX {
6447
7343
  * 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.
6448
7344
  */
6449
7345
  "menu"?: string;
7346
+ /**
7347
+ * The mode determines the platform behaviors of the component.
7348
+ */
7349
+ "mode"?: "ios" | "md";
7350
+ /**
7351
+ * The theme determines the visual appearance of the component.
7352
+ */
7353
+ "theme"?: "ios" | "md" | "ionic";
6450
7354
  }
6451
7355
  interface IonModal {
6452
7356
  /**
@@ -6510,7 +7414,7 @@ declare namespace LocalJSX {
6510
7414
  */
6511
7415
  "leaveAnimation"?: AnimationBuilder;
6512
7416
  /**
6513
- * The mode determines which platform styles to use.
7417
+ * The mode determines the platform behaviors of the component.
6514
7418
  */
6515
7419
  "mode"?: "ios" | "md";
6516
7420
  /**
@@ -6553,10 +7457,18 @@ declare namespace LocalJSX {
6553
7457
  * 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.
6554
7458
  */
6555
7459
  "presentingElement"?: HTMLElement;
7460
+ /**
7461
+ * 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.
7462
+ */
7463
+ "shape"?: 'soft' | 'round' | 'rectangular';
6556
7464
  /**
6557
7465
  * 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.
6558
7466
  */
6559
7467
  "showBackdrop"?: boolean;
7468
+ /**
7469
+ * The theme determines the visual appearance of the component.
7470
+ */
7471
+ "theme"?: "ios" | "md" | "ionic";
6560
7472
  /**
6561
7473
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6562
7474
  */
@@ -6568,9 +7480,13 @@ declare namespace LocalJSX {
6568
7480
  */
6569
7481
  "animated"?: boolean;
6570
7482
  /**
6571
- * 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.
7483
+ * 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.
6572
7484
  */
6573
7485
  "animation"?: AnimationBuilder;
7486
+ /**
7487
+ * The mode determines the platform behaviors of the component.
7488
+ */
7489
+ "mode"?: "ios" | "md";
6574
7490
  /**
6575
7491
  * Event fired when the nav has changed components
6576
7492
  */
@@ -6591,6 +7507,10 @@ declare namespace LocalJSX {
6591
7507
  * If the nav component should allow for swipe-to-go-back.
6592
7508
  */
6593
7509
  "swipeGesture"?: boolean;
7510
+ /**
7511
+ * The theme determines the visual appearance of the component.
7512
+ */
7513
+ "theme"?: "ios" | "md" | "ionic";
6594
7514
  }
6595
7515
  interface IonNavLink {
6596
7516
  /**
@@ -6601,6 +7521,10 @@ declare namespace LocalJSX {
6601
7521
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6602
7522
  */
6603
7523
  "componentProps"?: ComponentProps;
7524
+ /**
7525
+ * The mode determines the platform behaviors of the component.
7526
+ */
7527
+ "mode"?: "ios" | "md";
6604
7528
  /**
6605
7529
  * The transition animation when navigating to another page.
6606
7530
  */
@@ -6609,6 +7533,10 @@ declare namespace LocalJSX {
6609
7533
  * The transition direction when navigating to another page.
6610
7534
  */
6611
7535
  "routerDirection"?: RouterDirection;
7536
+ /**
7537
+ * The theme determines the visual appearance of the component.
7538
+ */
7539
+ "theme"?: "ios" | "md" | "ionic";
6612
7540
  }
6613
7541
  interface IonNote {
6614
7542
  /**
@@ -6616,15 +7544,23 @@ declare namespace LocalJSX {
6616
7544
  */
6617
7545
  "color"?: Color;
6618
7546
  /**
6619
- * The mode determines which platform styles to use.
7547
+ * The mode determines the platform behaviors of the component.
6620
7548
  */
6621
7549
  "mode"?: "ios" | "md";
7550
+ /**
7551
+ * The theme determines the visual appearance of the component.
7552
+ */
7553
+ "theme"?: "ios" | "md" | "ionic";
6622
7554
  }
6623
7555
  interface IonPicker {
6624
7556
  /**
6625
- * The mode determines which platform styles to use.
7557
+ * The mode determines the platform behaviors of the component.
6626
7558
  */
6627
7559
  "mode"?: "ios" | "md";
7560
+ /**
7561
+ * The theme determines the visual appearance of the component.
7562
+ */
7563
+ "theme"?: "ios" | "md" | "ionic";
6628
7564
  }
6629
7565
  interface IonPickerColumn {
6630
7566
  /**
@@ -6636,13 +7572,17 @@ declare namespace LocalJSX {
6636
7572
  */
6637
7573
  "disabled"?: boolean;
6638
7574
  /**
6639
- * The mode determines which platform styles to use.
7575
+ * The mode determines the platform behaviors of the component.
6640
7576
  */
6641
7577
  "mode"?: "ios" | "md";
6642
7578
  /**
6643
7579
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6644
7580
  */
6645
7581
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7582
+ /**
7583
+ * The theme determines the visual appearance of the component.
7584
+ */
7585
+ "theme"?: "ios" | "md" | "ionic";
6646
7586
  /**
6647
7587
  * The selected option in the picker.
6648
7588
  */
@@ -6657,6 +7597,14 @@ declare namespace LocalJSX {
6657
7597
  * If `true`, the user cannot interact with the picker column option.
6658
7598
  */
6659
7599
  "disabled"?: boolean;
7600
+ /**
7601
+ * The mode determines the platform behaviors of the component.
7602
+ */
7603
+ "mode"?: "ios" | "md";
7604
+ /**
7605
+ * The theme determines the visual appearance of the component.
7606
+ */
7607
+ "theme"?: "ios" | "md" | "ionic";
6660
7608
  /**
6661
7609
  * The text value of the option.
6662
7610
  */
@@ -6708,7 +7656,7 @@ declare namespace LocalJSX {
6708
7656
  */
6709
7657
  "leaveAnimation"?: AnimationBuilder;
6710
7658
  /**
6711
- * The mode determines which platform styles to use.
7659
+ * The mode determines the platform behaviors of the component.
6712
7660
  */
6713
7661
  "mode"?: "ios" | "md";
6714
7662
  /**
@@ -6747,6 +7695,10 @@ declare namespace LocalJSX {
6747
7695
  * If `true`, a backdrop will be displayed behind the picker.
6748
7696
  */
6749
7697
  "showBackdrop"?: boolean;
7698
+ /**
7699
+ * The theme determines the visual appearance of the component.
7700
+ */
7701
+ "theme"?: "ios" | "md" | "ionic";
6750
7702
  /**
6751
7703
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6752
7704
  */
@@ -6760,7 +7712,7 @@ declare namespace LocalJSX {
6760
7712
  }
6761
7713
  interface IonPopover {
6762
7714
  /**
6763
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7715
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6764
7716
  */
6765
7717
  "alignment"?: PositionAlign;
6766
7718
  /**
@@ -6768,7 +7720,7 @@ declare namespace LocalJSX {
6768
7720
  */
6769
7721
  "animated"?: boolean;
6770
7722
  /**
6771
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7723
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6772
7724
  */
6773
7725
  "arrow"?: boolean;
6774
7726
  /**
@@ -6820,7 +7772,7 @@ declare namespace LocalJSX {
6820
7772
  */
6821
7773
  "leaveAnimation"?: AnimationBuilder;
6822
7774
  /**
6823
- * The mode determines which platform styles to use.
7775
+ * The mode determines the platform behaviors of the component.
6824
7776
  */
6825
7777
  "mode"?: "ios" | "md";
6826
7778
  /**
@@ -6872,7 +7824,11 @@ declare namespace LocalJSX {
6872
7824
  */
6873
7825
  "size"?: PopoverSize;
6874
7826
  /**
6875
- * 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).
7827
+ * The theme determines the visual appearance of the component.
7828
+ */
7829
+ "theme"?: "ios" | "md" | "ionic";
7830
+ /**
7831
+ * 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).
6876
7832
  */
6877
7833
  "translucent"?: boolean;
6878
7834
  /**
@@ -6894,13 +7850,17 @@ declare namespace LocalJSX {
6894
7850
  */
6895
7851
  "color"?: Color;
6896
7852
  /**
6897
- * The mode determines which platform styles to use.
7853
+ * The mode determines the platform behaviors of the component.
6898
7854
  */
6899
7855
  "mode"?: "ios" | "md";
6900
7856
  /**
6901
7857
  * If true, reverse the progress bar direction.
6902
7858
  */
6903
7859
  "reversed"?: boolean;
7860
+ /**
7861
+ * The theme determines the visual appearance of the component.
7862
+ */
7863
+ "theme"?: "ios" | "md" | "ionic";
6904
7864
  /**
6905
7865
  * 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).
6906
7866
  */
@@ -6932,7 +7892,7 @@ declare namespace LocalJSX {
6932
7892
  */
6933
7893
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6934
7894
  /**
6935
- * The mode determines which platform styles to use.
7895
+ * The mode determines the platform behaviors of the component.
6936
7896
  */
6937
7897
  "mode"?: "ios" | "md";
6938
7898
  /**
@@ -6947,6 +7907,10 @@ declare namespace LocalJSX {
6947
7907
  * Emitted when the radio button has focus.
6948
7908
  */
6949
7909
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7910
+ /**
7911
+ * The theme determines the visual appearance of the component.
7912
+ */
7913
+ "theme"?: "ios" | "md" | "ionic";
6950
7914
  /**
6951
7915
  * the value of the radio.
6952
7916
  */
@@ -6961,6 +7925,10 @@ declare namespace LocalJSX {
6961
7925
  * This property allows developers to specify a custom function or property name for comparing objects when determining the selected option in the ion-radio-group. When not specified, the default behavior will use strict equality (===) for comparison.
6962
7926
  */
6963
7927
  "compareWith"?: string | RadioGroupCompareFn | null;
7928
+ /**
7929
+ * The mode determines the platform behaviors of the component.
7930
+ */
7931
+ "mode"?: "ios" | "md";
6964
7932
  /**
6965
7933
  * The name of the control, which is submitted with the form data.
6966
7934
  */
@@ -6969,6 +7937,10 @@ declare namespace LocalJSX {
6969
7937
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6970
7938
  */
6971
7939
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7940
+ /**
7941
+ * The theme determines the visual appearance of the component.
7942
+ */
7943
+ "theme"?: "ios" | "md" | "ionic";
6972
7944
  /**
6973
7945
  * the value of the radio group.
6974
7946
  */
@@ -7012,7 +7984,7 @@ declare namespace LocalJSX {
7012
7984
  */
7013
7985
  "min"?: number;
7014
7986
  /**
7015
- * The mode determines which platform styles to use.
7987
+ * The mode determines the platform behaviors of the component.
7016
7988
  */
7017
7989
  "mode"?: "ios" | "md";
7018
7990
  /**
@@ -7059,6 +8031,10 @@ declare namespace LocalJSX {
7059
8031
  * Specifies the value granularity.
7060
8032
  */
7061
8033
  "step"?: number;
8034
+ /**
8035
+ * The theme determines the visual appearance of the component.
8036
+ */
8037
+ "theme"?: "ios" | "md" | "ionic";
7062
8038
  /**
7063
8039
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7064
8040
  */
@@ -7078,7 +8054,7 @@ declare namespace LocalJSX {
7078
8054
  */
7079
8055
  "disabled"?: boolean;
7080
8056
  /**
7081
- * The mode determines which platform styles to use.
8057
+ * The mode determines the platform behaviors of the component.
7082
8058
  */
7083
8059
  "mode"?: "ios" | "md";
7084
8060
  /**
@@ -7109,8 +8085,16 @@ declare namespace LocalJSX {
7109
8085
  * 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.
7110
8086
  */
7111
8087
  "snapbackDuration"?: string;
8088
+ /**
8089
+ * The theme determines the visual appearance of the component.
8090
+ */
8091
+ "theme"?: "ios" | "md" | "ionic";
7112
8092
  }
7113
8093
  interface IonRefresherContent {
8094
+ /**
8095
+ * The mode determines the platform behaviors of the component.
8096
+ */
8097
+ "mode"?: "ios" | "md";
7114
8098
  /**
7115
8099
  * 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.
7116
8100
  */
@@ -7127,20 +8111,48 @@ declare namespace LocalJSX {
7127
8111
  * 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.
7128
8112
  */
7129
8113
  "refreshingText"?: string | IonicSafeString;
8114
+ /**
8115
+ * The theme determines the visual appearance of the component.
8116
+ */
8117
+ "theme"?: "ios" | "md" | "ionic";
7130
8118
  }
7131
8119
  interface IonReorder {
8120
+ /**
8121
+ * The mode determines the platform behaviors of the component.
8122
+ */
8123
+ "mode"?: "ios" | "md";
8124
+ /**
8125
+ * The theme determines the visual appearance of the component.
8126
+ */
8127
+ "theme"?: "ios" | "md" | "ionic";
7132
8128
  }
7133
8129
  interface IonReorderGroup {
7134
8130
  /**
7135
8131
  * If `true`, the reorder will be hidden.
7136
8132
  */
7137
8133
  "disabled"?: boolean;
8134
+ /**
8135
+ * The mode determines the platform behaviors of the component.
8136
+ */
8137
+ "mode"?: "ios" | "md";
7138
8138
  /**
7139
8139
  * 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.
7140
8140
  */
7141
8141
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8142
+ /**
8143
+ * The theme determines the visual appearance of the component.
8144
+ */
8145
+ "theme"?: "ios" | "md" | "ionic";
7142
8146
  }
7143
8147
  interface IonRippleEffect {
8148
+ /**
8149
+ * The mode determines the platform behaviors of the component.
8150
+ */
8151
+ "mode"?: "ios" | "md";
8152
+ /**
8153
+ * The theme determines the visual appearance of the component.
8154
+ */
8155
+ "theme"?: "ios" | "md" | "ionic";
7144
8156
  /**
7145
8157
  * 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.
7146
8158
  */
@@ -7163,10 +8175,18 @@ declare namespace LocalJSX {
7163
8175
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7164
8176
  */
7165
8177
  "componentProps"?: { [key: string]: any };
8178
+ /**
8179
+ * The mode determines the platform behaviors of the component.
8180
+ */
8181
+ "mode"?: "ios" | "md";
7166
8182
  /**
7167
8183
  * Used internally by `ion-router` to know when this route did change.
7168
8184
  */
7169
8185
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8186
+ /**
8187
+ * The theme determines the visual appearance of the component.
8188
+ */
8189
+ "theme"?: "ios" | "md" | "ionic";
7170
8190
  /**
7171
8191
  * 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.
7172
8192
  */
@@ -7187,6 +8207,10 @@ declare namespace LocalJSX {
7187
8207
  "to": string | undefined | null;
7188
8208
  }
7189
8209
  interface IonRouter {
8210
+ /**
8211
+ * The mode determines the platform behaviors of the component.
8212
+ */
8213
+ "mode"?: "ios" | "md";
7190
8214
  /**
7191
8215
  * Emitted when the route had changed
7192
8216
  */
@@ -7199,6 +8223,10 @@ declare namespace LocalJSX {
7199
8223
  * 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.
7200
8224
  */
7201
8225
  "root"?: string;
8226
+ /**
8227
+ * The theme determines the visual appearance of the component.
8228
+ */
8229
+ "theme"?: "ios" | "md" | "ionic";
7202
8230
  /**
7203
8231
  * 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.
7204
8232
  */
@@ -7213,6 +8241,10 @@ declare namespace LocalJSX {
7213
8241
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7214
8242
  */
7215
8243
  "href"?: string | undefined;
8244
+ /**
8245
+ * The mode determines the platform behaviors of the component.
8246
+ */
8247
+ "mode"?: "ios" | "md";
7216
8248
  /**
7217
8249
  * 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).
7218
8250
  */
@@ -7229,6 +8261,10 @@ declare namespace LocalJSX {
7229
8261
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7230
8262
  */
7231
8263
  "target"?: string | undefined;
8264
+ /**
8265
+ * The theme determines the visual appearance of the component.
8266
+ */
8267
+ "theme"?: "ios" | "md" | "ionic";
7232
8268
  }
7233
8269
  interface IonRouterOutlet {
7234
8270
  /**
@@ -7240,11 +8276,23 @@ declare namespace LocalJSX {
7240
8276
  */
7241
8277
  "animation"?: AnimationBuilder;
7242
8278
  /**
7243
- * The mode determines which platform styles to use.
8279
+ * The mode determines the platform behaviors of the component.
7244
8280
  */
7245
8281
  "mode"?: "ios" | "md";
8282
+ /**
8283
+ * The theme determines the visual appearance of the component.
8284
+ */
8285
+ "theme"?: "ios" | "md" | "ionic";
7246
8286
  }
7247
8287
  interface IonRow {
8288
+ /**
8289
+ * The mode determines the platform behaviors of the component.
8290
+ */
8291
+ "mode"?: "ios" | "md";
8292
+ /**
8293
+ * The theme determines the visual appearance of the component.
8294
+ */
8295
+ "theme"?: "ios" | "md" | "ionic";
7248
8296
  }
7249
8297
  interface IonSearchbar {
7250
8298
  /**
@@ -7264,15 +8312,15 @@ declare namespace LocalJSX {
7264
8312
  */
7265
8313
  "autocorrect"?: 'on' | 'off';
7266
8314
  /**
7267
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8315
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7268
8316
  */
7269
8317
  "cancelButtonIcon"?: string;
7270
8318
  /**
7271
- * Set the the cancel button text. Only applies to `ios` mode.
8319
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7272
8320
  */
7273
8321
  "cancelButtonText"?: string;
7274
8322
  /**
7275
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8323
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7276
8324
  */
7277
8325
  "clearIcon"?: string;
7278
8326
  /**
@@ -7304,7 +8352,7 @@ declare namespace LocalJSX {
7304
8352
  */
7305
8353
  "minlength"?: number;
7306
8354
  /**
7307
- * The mode determines which platform styles to use.
8355
+ * The mode determines the platform behaviors of the component.
7308
8356
  */
7309
8357
  "mode"?: "ios" | "md";
7310
8358
  /**
@@ -7340,7 +8388,7 @@ declare namespace LocalJSX {
7340
8388
  */
7341
8389
  "placeholder"?: string;
7342
8390
  /**
7343
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8391
+ * 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.
7344
8392
  */
7345
8393
  "searchIcon"?: string;
7346
8394
  /**
@@ -7355,6 +8403,10 @@ declare namespace LocalJSX {
7355
8403
  * If `true`, enable spellcheck on the input.
7356
8404
  */
7357
8405
  "spellcheck"?: boolean;
8406
+ /**
8407
+ * The theme determines the visual appearance of the component.
8408
+ */
8409
+ "theme"?: "ios" | "md" | "ionic";
7358
8410
  /**
7359
8411
  * Set the type of the input.
7360
8412
  */
@@ -7374,7 +8426,7 @@ declare namespace LocalJSX {
7374
8426
  */
7375
8427
  "disabled"?: boolean;
7376
8428
  /**
7377
- * The mode determines which platform styles to use.
8429
+ * The mode determines the platform behaviors of the component.
7378
8430
  */
7379
8431
  "mode"?: "ios" | "md";
7380
8432
  /**
@@ -7393,6 +8445,10 @@ declare namespace LocalJSX {
7393
8445
  * If `true`, users will be able to swipe between segment buttons to activate them.
7394
8446
  */
7395
8447
  "swipeGesture"?: boolean;
8448
+ /**
8449
+ * The theme determines the visual appearance of the component.
8450
+ */
8451
+ "theme"?: "ios" | "md" | "ionic";
7396
8452
  /**
7397
8453
  * the value of the segment.
7398
8454
  */
@@ -7412,9 +8468,13 @@ declare namespace LocalJSX {
7412
8468
  */
7413
8469
  "layout"?: SegmentButtonLayout;
7414
8470
  /**
7415
- * The mode determines which platform styles to use.
8471
+ * The mode determines the platform behaviors of the component.
7416
8472
  */
7417
8473
  "mode"?: "ios" | "md";
8474
+ /**
8475
+ * The theme determines the visual appearance of the component.
8476
+ */
8477
+ "theme"?: "ios" | "md" | "ionic";
7418
8478
  /**
7419
8479
  * The type of the button.
7420
8480
  */
@@ -7454,11 +8514,11 @@ declare namespace LocalJSX {
7454
8514
  */
7455
8515
  "disabled"?: boolean;
7456
8516
  /**
7457
- * 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.
8517
+ * 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.
7458
8518
  */
7459
8519
  "expandedIcon"?: string;
7460
8520
  /**
7461
- * 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.
8521
+ * 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.
7462
8522
  */
7463
8523
  "fill"?: 'outline' | 'solid';
7464
8524
  /**
@@ -7482,7 +8542,7 @@ declare namespace LocalJSX {
7482
8542
  */
7483
8543
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7484
8544
  /**
7485
- * The mode determines which platform styles to use.
8545
+ * The mode determines the platform behaviors of the component.
7486
8546
  */
7487
8547
  "mode"?: "ios" | "md";
7488
8548
  /**
@@ -7530,7 +8590,11 @@ declare namespace LocalJSX {
7530
8590
  */
7531
8591
  "shape"?: 'round';
7532
8592
  /**
7533
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8593
+ * The theme determines the visual appearance of the component.
8594
+ */
8595
+ "theme"?: "ios" | "md" | "ionic";
8596
+ /**
8597
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7534
8598
  */
7535
8599
  "toggleIcon"?: string;
7536
8600
  /**
@@ -7548,6 +8612,14 @@ declare namespace LocalJSX {
7548
8612
  * 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.
7549
8613
  */
7550
8614
  "disabled"?: boolean;
8615
+ /**
8616
+ * The mode determines the platform behaviors of the component.
8617
+ */
8618
+ "mode"?: "ios" | "md";
8619
+ /**
8620
+ * The theme determines the visual appearance of the component.
8621
+ */
8622
+ "theme"?: "ios" | "md" | "ionic";
7551
8623
  /**
7552
8624
  * The text value of the option.
7553
8625
  */
@@ -7562,6 +8634,10 @@ declare namespace LocalJSX {
7562
8634
  * The text content of the popover body
7563
8635
  */
7564
8636
  "message"?: string;
8637
+ /**
8638
+ * The mode determines the platform behaviors of the component.
8639
+ */
8640
+ "mode"?: "ios" | "md";
7565
8641
  /**
7566
8642
  * If true, the select accepts multiple values
7567
8643
  */
@@ -7574,12 +8650,24 @@ declare namespace LocalJSX {
7574
8650
  * The subheader text of the popover
7575
8651
  */
7576
8652
  "subHeader"?: string;
8653
+ /**
8654
+ * The theme determines the visual appearance of the component.
8655
+ */
8656
+ "theme"?: "ios" | "md" | "ionic";
7577
8657
  }
7578
8658
  interface IonSkeletonText {
7579
8659
  /**
7580
8660
  * If `true`, the skeleton text will animate.
7581
8661
  */
7582
8662
  "animated"?: boolean;
8663
+ /**
8664
+ * The mode determines the platform behaviors of the component.
8665
+ */
8666
+ "mode"?: "ios" | "md";
8667
+ /**
8668
+ * The theme determines the visual appearance of the component.
8669
+ */
8670
+ "theme"?: "ios" | "md" | "ionic";
7583
8671
  }
7584
8672
  interface IonSpinner {
7585
8673
  /**
@@ -7590,6 +8678,10 @@ declare namespace LocalJSX {
7590
8678
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7591
8679
  */
7592
8680
  "duration"?: number;
8681
+ /**
8682
+ * The mode determines the platform behaviors of the component.
8683
+ */
8684
+ "mode"?: "ios" | "md";
7593
8685
  /**
7594
8686
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7595
8687
  */
@@ -7598,6 +8690,14 @@ declare namespace LocalJSX {
7598
8690
  * If `true`, the spinner's animation will be paused.
7599
8691
  */
7600
8692
  "paused"?: boolean;
8693
+ /**
8694
+ * 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.
8695
+ */
8696
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8697
+ /**
8698
+ * The theme determines the visual appearance of the component.
8699
+ */
8700
+ "theme"?: "ios" | "md" | "ionic";
7601
8701
  }
7602
8702
  interface IonSplitPane {
7603
8703
  /**
@@ -7608,10 +8708,18 @@ declare namespace LocalJSX {
7608
8708
  * If `true`, the split pane will be hidden.
7609
8709
  */
7610
8710
  "disabled"?: boolean;
8711
+ /**
8712
+ * The mode determines the platform behaviors of the component.
8713
+ */
8714
+ "mode"?: "ios" | "md";
7611
8715
  /**
7612
8716
  * Expression to be called when the split-pane visibility has changed
7613
8717
  */
7614
8718
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8719
+ /**
8720
+ * The theme determines the visual appearance of the component.
8721
+ */
8722
+ "theme"?: "ios" | "md" | "ionic";
7615
8723
  /**
7616
8724
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
7617
8725
  */
@@ -7622,10 +8730,18 @@ declare namespace LocalJSX {
7622
8730
  * The component to display inside of the tab.
7623
8731
  */
7624
8732
  "component"?: ComponentRef;
8733
+ /**
8734
+ * The mode determines the platform behaviors of the component.
8735
+ */
8736
+ "mode"?: "ios" | "md";
7625
8737
  /**
7626
8738
  * 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.
7627
8739
  */
7628
8740
  "tab": string;
8741
+ /**
8742
+ * The theme determines the visual appearance of the component.
8743
+ */
8744
+ "theme"?: "ios" | "md" | "ionic";
7629
8745
  }
7630
8746
  interface IonTabBar {
7631
8747
  /**
@@ -7633,7 +8749,11 @@ declare namespace LocalJSX {
7633
8749
  */
7634
8750
  "color"?: Color;
7635
8751
  /**
7636
- * The mode determines which platform styles to use.
8752
+ * 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"`.
8753
+ */
8754
+ "expand"?: 'compact' | 'full';
8755
+ /**
8756
+ * The mode determines the platform behaviors of the component.
7637
8757
  */
7638
8758
  "mode"?: "ios" | "md";
7639
8759
  /**
@@ -7641,7 +8761,15 @@ declare namespace LocalJSX {
7641
8761
  */
7642
8762
  "selectedTab"?: string;
7643
8763
  /**
7644
- * 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).
8764
+ * 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.
8765
+ */
8766
+ "shape"?: 'soft' | 'round' | 'rectangular';
8767
+ /**
8768
+ * The theme determines the visual appearance of the component.
8769
+ */
8770
+ "theme"?: "ios" | "md" | "ionic";
8771
+ /**
8772
+ * 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).
7645
8773
  */
7646
8774
  "translucent"?: boolean;
7647
8775
  }
@@ -7663,7 +8791,7 @@ declare namespace LocalJSX {
7663
8791
  */
7664
8792
  "layout"?: TabButtonLayout;
7665
8793
  /**
7666
- * The mode determines which platform styles to use.
8794
+ * The mode determines the platform behaviors of the component.
7667
8795
  */
7668
8796
  "mode"?: "ios" | "md";
7669
8797
  /**
@@ -7682,8 +8810,16 @@ declare namespace LocalJSX {
7682
8810
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7683
8811
  */
7684
8812
  "target"?: string | undefined;
8813
+ /**
8814
+ * The theme determines the visual appearance of the component.
8815
+ */
8816
+ "theme"?: "ios" | "md" | "ionic";
7685
8817
  }
7686
8818
  interface IonTabs {
8819
+ /**
8820
+ * The mode determines the platform behaviors of the component.
8821
+ */
8822
+ "mode"?: "ios" | "md";
7687
8823
  /**
7688
8824
  * Emitted when the navigation has finished transitioning to a new component.
7689
8825
  */
@@ -7692,6 +8828,10 @@ declare namespace LocalJSX {
7692
8828
  * Emitted when the navigation is about to transition to a new component.
7693
8829
  */
7694
8830
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8831
+ /**
8832
+ * The theme determines the visual appearance of the component.
8833
+ */
8834
+ "theme"?: "ios" | "md" | "ionic";
7695
8835
  }
7696
8836
  interface IonText {
7697
8837
  /**
@@ -7699,9 +8839,13 @@ declare namespace LocalJSX {
7699
8839
  */
7700
8840
  "color"?: Color;
7701
8841
  /**
7702
- * The mode determines which platform styles to use.
8842
+ * The mode determines the platform behaviors of the component.
7703
8843
  */
7704
8844
  "mode"?: "ios" | "md";
8845
+ /**
8846
+ * The theme determines the visual appearance of the component.
8847
+ */
8848
+ "theme"?: "ios" | "md" | "ionic";
7705
8849
  }
7706
8850
  interface IonTextarea {
7707
8851
  /**
@@ -7753,7 +8897,7 @@ declare namespace LocalJSX {
7753
8897
  */
7754
8898
  "errorText"?: string;
7755
8899
  /**
7756
- * 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.
8900
+ * 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"`.
7757
8901
  */
7758
8902
  "fill"?: 'outline' | 'solid';
7759
8903
  /**
@@ -7781,7 +8925,7 @@ declare namespace LocalJSX {
7781
8925
  */
7782
8926
  "minlength"?: number;
7783
8927
  /**
7784
- * The mode determines which platform styles to use.
8928
+ * The mode determines the platform behaviors of the component.
7785
8929
  */
7786
8930
  "mode"?: "ios" | "md";
7787
8931
  /**
@@ -7821,13 +8965,21 @@ declare namespace LocalJSX {
7821
8965
  */
7822
8966
  "rows"?: number;
7823
8967
  /**
7824
- * The shape of the textarea. If "round" it will have an increased border radius.
8968
+ * 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.
7825
8969
  */
7826
- "shape"?: 'round';
8970
+ "shape"?: 'soft' | 'round' | 'rectangular';
8971
+ /**
8972
+ * 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.
8973
+ */
8974
+ "size"?: 'small' | 'medium' | 'large';
7827
8975
  /**
7828
8976
  * If `true`, the element will have its spelling and grammar checked.
7829
8977
  */
7830
8978
  "spellcheck"?: boolean;
8979
+ /**
8980
+ * The theme determines the visual appearance of the component.
8981
+ */
8982
+ "theme"?: "ios" | "md" | "ionic";
7831
8983
  /**
7832
8984
  * The value of the textarea.
7833
8985
  */
@@ -7838,16 +8990,32 @@ declare namespace LocalJSX {
7838
8990
  "wrap"?: 'hard' | 'soft' | 'off';
7839
8991
  }
7840
8992
  interface IonThumbnail {
8993
+ /**
8994
+ * The mode determines the platform behaviors of the component.
8995
+ */
8996
+ "mode"?: "ios" | "md";
8997
+ /**
8998
+ * The theme determines the visual appearance of the component.
8999
+ */
9000
+ "theme"?: "ios" | "md" | "ionic";
7841
9001
  }
7842
9002
  interface IonTitle {
7843
9003
  /**
7844
9004
  * 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).
7845
9005
  */
7846
9006
  "color"?: Color;
9007
+ /**
9008
+ * The mode determines the platform behaviors of the component.
9009
+ */
9010
+ "mode"?: "ios" | "md";
7847
9011
  /**
7848
9012
  * The size of the toolbar title.
7849
9013
  */
7850
9014
  "size"?: 'large' | 'small';
9015
+ /**
9016
+ * The theme determines the visual appearance of the component.
9017
+ */
9018
+ "theme"?: "ios" | "md" | "ionic";
7851
9019
  }
7852
9020
  interface IonToast {
7853
9021
  /**
@@ -7907,7 +9075,7 @@ declare namespace LocalJSX {
7907
9075
  */
7908
9076
  "message"?: string | IonicSafeString;
7909
9077
  /**
7910
- * The mode determines which platform styles to use.
9078
+ * The mode determines the platform behaviors of the component.
7911
9079
  */
7912
9080
  "mode"?: "ios" | "md";
7913
9081
  /**
@@ -7950,12 +9118,20 @@ declare namespace LocalJSX {
7950
9118
  * 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.
7951
9119
  */
7952
9120
  "positionAnchor"?: HTMLElement | string;
9121
+ /**
9122
+ * 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.
9123
+ */
9124
+ "shape"?: 'soft' | 'round' | 'rectangular';
7953
9125
  /**
7954
9126
  * 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.
7955
9127
  */
7956
9128
  "swipeGesture"?: ToastSwipeGestureDirection;
7957
9129
  /**
7958
- * 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).
9130
+ * The theme determines the visual appearance of the component.
9131
+ */
9132
+ "theme"?: "ios" | "md" | "ionic";
9133
+ /**
9134
+ * 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).
7959
9135
  */
7960
9136
  "translucent"?: boolean;
7961
9137
  /**
@@ -7993,7 +9169,7 @@ declare namespace LocalJSX {
7993
9169
  */
7994
9170
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7995
9171
  /**
7996
- * The mode determines which platform styles to use.
9172
+ * The mode determines the platform behaviors of the component.
7997
9173
  */
7998
9174
  "mode"?: "ios" | "md";
7999
9175
  /**
@@ -8012,6 +9188,10 @@ declare namespace LocalJSX {
8012
9188
  * Emitted when the toggle has focus.
8013
9189
  */
8014
9190
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
9191
+ /**
9192
+ * The theme determines the visual appearance of the component.
9193
+ */
9194
+ "theme"?: "ios" | "md" | "ionic";
8015
9195
  /**
8016
9196
  * 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>`.
8017
9197
  */
@@ -8023,9 +9203,13 @@ declare namespace LocalJSX {
8023
9203
  */
8024
9204
  "color"?: Color;
8025
9205
  /**
8026
- * The mode determines which platform styles to use.
9206
+ * The mode determines the platform behaviors of the component.
8027
9207
  */
8028
9208
  "mode"?: "ios" | "md";
9209
+ /**
9210
+ * The theme determines the visual appearance of the component.
9211
+ */
9212
+ "theme"?: "ios" | "md" | "ionic";
8029
9213
  }
8030
9214
  interface IntrinsicElements {
8031
9215
  "ion-accordion": IonAccordion;