@ionic/core 8.4.1-dev.11732305980.19d90e1c → 8.4.1-dev.11732561669.1ff93af7

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 (1183) 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 +26 -36
  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 +99 -21
  43. package/components/ion-fab-button.js +33 -10
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -12
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +13 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-password-toggle.js +53 -14
  52. package/components/ion-input.js +118 -20
  53. package/components/ion-item-divider.js +9 -5
  54. package/components/ion-item-group.js +9 -5
  55. package/components/ion-item-option.js +28 -8
  56. package/components/ion-item-options.js +9 -5
  57. package/components/ion-item-sliding.js +5 -5
  58. package/components/ion-loading.js +13 -8
  59. package/components/ion-menu-button.js +28 -10
  60. package/components/ion-menu-toggle.js +5 -5
  61. package/components/ion-menu.js +12 -35
  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 +13 -10
  68. package/components/ion-refresher-content.js +28 -9
  69. package/components/ion-refresher.js +11 -7
  70. package/components/ion-reorder-group.js +5 -5
  71. package/components/ion-reorder.js +31 -5
  72. package/components/ion-router-link.js +6 -6
  73. package/components/ion-router-outlet.js +4 -3
  74. package/components/ion-row.js +5 -2
  75. package/components/ion-searchbar.js +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 +6 -2
  79. package/components/ion-segment.js +11 -7
  80. package/components/ion-select-option.js +5 -2
  81. package/components/ion-select.js +118 -31
  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 +15 -31
  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 +6 -10
  110. package/components/radio.js +12 -8
  111. package/components/ripple-effect.js +18 -8
  112. package/components/select-modal.js +3 -3
  113. package/components/select-popover.js +9 -2
  114. package/components/spinner.js +36 -9
  115. package/components/status-tap.js +1 -1
  116. package/components/title.js +11 -7
  117. package/components/toolbar.js +11 -7
  118. package/components/x.js +6 -0
  119. package/css/core.css +1 -1
  120. package/css/core.css.map +1 -1
  121. package/css/display.css.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 +110 -173
  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 +191 -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 -56
  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 -16
  213. package/dist/cjs/ion-range.cjs.entry.js +20 -16
  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 +6 -2
  221. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -14
  222. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -10
  223. package/dist/cjs/ion-select_3.cjs.entry.js +132 -39
  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-aa669eb8.js → overlays-a698a408.js} +30 -46
  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 +673 -0
  322. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  323. package/dist/collection/components/datetime/datetime.js +98 -20
  324. package/dist/collection/components/datetime/datetime.md.css +237 -86
  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/header/header.utils.js +2 -21
  346. package/dist/collection/components/img/img.js +8 -2
  347. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  348. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  349. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  350. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  351. package/dist/collection/components/input/input.ionic.css +1096 -0
  352. package/dist/collection/components/input/input.ios.css +21 -2
  353. package/dist/collection/components/input/input.js +144 -30
  354. package/dist/collection/components/input/input.md.css +43 -4
  355. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  356. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  357. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  358. package/dist/collection/components/item/item.ionic.css +497 -0
  359. package/dist/collection/components/item/item.ios.css +109 -69
  360. package/dist/collection/components/item/item.js +44 -16
  361. package/dist/collection/components/item/item.md.css +120 -68
  362. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  363. package/dist/collection/components/item-divider/item-divider.js +11 -8
  364. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  365. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  366. package/dist/collection/components/item-group/item-group.js +13 -7
  367. package/dist/collection/components/item-group/item-group.md.css +12 -0
  368. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  369. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  370. package/dist/collection/components/item-option/item-option.js +43 -8
  371. package/dist/collection/components/item-option/item-option.md.css +14 -2
  372. package/dist/collection/components/item-options/item-options.ionic.css +258 -0
  373. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  374. package/dist/collection/components/item-options/item-options.js +13 -7
  375. package/dist/collection/components/item-options/item-options.md.css +18 -0
  376. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  377. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  378. package/dist/collection/components/label/label.ios.css +18 -0
  379. package/dist/collection/components/label/label.js +11 -8
  380. package/dist/collection/components/label/label.md.css +18 -0
  381. package/dist/collection/components/list/list.ionic.css +193 -0
  382. package/dist/collection/components/list/list.ios.css +18 -0
  383. package/dist/collection/components/list/list.js +47 -9
  384. package/dist/collection/components/list/list.md.css +20 -2
  385. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  386. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  387. package/dist/collection/components/list-header/list-header.js +11 -8
  388. package/dist/collection/components/list-header/list-header.md.css +18 -0
  389. package/dist/collection/components/loading/loading.ios.css +13 -1
  390. package/dist/collection/components/loading/loading.js +13 -10
  391. package/dist/collection/components/loading/loading.md.css +13 -1
  392. package/dist/collection/components/menu/menu.ios.css +15 -3
  393. package/dist/collection/components/menu/menu.js +12 -35
  394. package/dist/collection/components/menu/menu.md.css +15 -3
  395. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  396. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  397. package/dist/collection/components/menu-button/menu-button.js +26 -10
  398. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  399. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  400. package/dist/collection/components/modal/animations/sheet.js +8 -2
  401. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  402. package/dist/collection/components/modal/modal.ionic.css +239 -0
  403. package/dist/collection/components/modal/modal.ios.css +106 -63
  404. package/dist/collection/components/modal/modal.js +47 -11
  405. package/dist/collection/components/modal/modal.md.css +106 -63
  406. package/dist/collection/components/nav/nav.css +7 -1
  407. package/dist/collection/components/nav/nav.js +11 -5
  408. package/dist/collection/components/nav-link/nav-link.js +5 -1
  409. package/dist/collection/components/note/note.ios.css +12 -0
  410. package/dist/collection/components/note/note.js +11 -8
  411. package/dist/collection/components/note/note.md.css +12 -0
  412. package/dist/collection/components/picker/picker.ios.css +15 -3
  413. package/dist/collection/components/picker/picker.js +8 -5
  414. package/dist/collection/components/picker/picker.md.css +15 -3
  415. package/dist/collection/components/picker-column/picker-column.css +9 -2
  416. package/dist/collection/components/picker-column/picker-column.js +8 -7
  417. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  418. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  419. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  420. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  421. package/dist/collection/components/picker-legacy/picker.js +7 -6
  422. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  423. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  424. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  425. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  426. package/dist/collection/components/popover/popover.ios.css +13 -1
  427. package/dist/collection/components/popover/popover.js +15 -12
  428. package/dist/collection/components/popover/popover.md.css +13 -1
  429. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  430. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  431. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  432. package/dist/collection/components/radio/radio.ionic.css +424 -0
  433. package/dist/collection/components/radio/radio.ios.css +134 -91
  434. package/dist/collection/components/radio/radio.js +12 -9
  435. package/dist/collection/components/radio/radio.md.css +134 -91
  436. package/dist/collection/components/radio-group/radio-group.js +9 -32
  437. package/dist/collection/components/range/range.ionic.css +550 -0
  438. package/dist/collection/components/range/range.ios.css +128 -85
  439. package/dist/collection/components/range/range.js +12 -9
  440. package/dist/collection/components/range/range.md.css +128 -85
  441. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  442. package/dist/collection/components/refresher/refresher.js +11 -8
  443. package/dist/collection/components/refresher/refresher.md.css +15 -2
  444. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  445. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  446. package/dist/collection/components/reorder/reorder.js +33 -6
  447. package/dist/collection/components/reorder/reorder.md.css +6 -0
  448. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  449. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  450. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  451. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  452. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  453. package/dist/collection/components/route/route.js +4 -0
  454. package/dist/collection/components/router/router.js +4 -0
  455. package/dist/collection/components/router-link/router-link.css +8 -2
  456. package/dist/collection/components/router-link/router-link.js +9 -5
  457. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  458. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  459. package/dist/collection/components/row/row.css +12 -0
  460. package/dist/collection/components/row/row.js +9 -2
  461. package/dist/collection/components/searchbar/searchbar.ionic.css +345 -0
  462. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  463. package/dist/collection/components/searchbar/searchbar.js +97 -25
  464. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  465. package/dist/collection/components/segment/segment.ionic.css +117 -0
  466. package/dist/collection/components/segment/segment.ios.css +45 -2
  467. package/dist/collection/components/segment/segment.js +11 -8
  468. package/dist/collection/components/segment/segment.md.css +45 -2
  469. package/dist/collection/components/segment-button/segment-button.ionic.css +350 -0
  470. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  471. package/dist/collection/components/segment-button/segment-button.js +11 -8
  472. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  473. package/dist/collection/components/segment-content/segment-content.js +1 -1
  474. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  475. package/dist/collection/components/segment-view/segment-view.js +6 -4
  476. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  477. package/dist/collection/components/select/select.ionic.css +707 -0
  478. package/dist/collection/components/select/select.ios.css +168 -102
  479. package/dist/collection/components/select/select.js +139 -37
  480. package/dist/collection/components/select/select.md.css +164 -206
  481. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  482. package/dist/collection/components/select-modal/select-modal.js +3 -3
  483. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  484. package/dist/collection/components/select-option/select-option.js +9 -2
  485. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  486. package/dist/collection/components/select-popover/select-popover.js +12 -4
  487. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  488. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  489. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  490. package/dist/collection/components/spinner/spinner.common.css +199 -0
  491. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  492. package/dist/collection/components/spinner/spinner.js +46 -6
  493. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  494. package/dist/collection/components/split-pane/split-pane.js +14 -8
  495. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  496. package/dist/collection/components/tab/tab.js +6 -2
  497. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  498. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  499. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  500. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  501. package/dist/collection/components/tab-button/tab-button.ionic.css +271 -0
  502. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  503. package/dist/collection/components/tab-button/tab-button.js +11 -8
  504. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  505. package/dist/collection/components/tabs/tabs.css +7 -1
  506. package/dist/collection/components/tabs/tabs.js +4 -1
  507. package/dist/collection/components/text/text.css +6 -0
  508. package/dist/collection/components/text/text.js +7 -6
  509. package/dist/collection/components/textarea/textarea.ionic.css +804 -0
  510. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  511. package/dist/collection/components/textarea/textarea.js +59 -16
  512. package/dist/collection/components/textarea/textarea.md.css +214 -97
  513. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  514. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  515. package/dist/collection/components/title/title.ionic.css +145 -0
  516. package/dist/collection/components/title/title.ios.css +32 -4
  517. package/dist/collection/components/title/title.js +13 -7
  518. package/dist/collection/components/title/title.md.css +32 -4
  519. package/dist/collection/components/toast/animations/utils.js +1 -1
  520. package/dist/collection/components/toast/toast.ionic.css +358 -0
  521. package/dist/collection/components/toast/toast.ios.css +75 -36
  522. package/dist/collection/components/toast/toast.js +45 -11
  523. package/dist/collection/components/toast/toast.md.css +75 -36
  524. package/dist/collection/components/toggle/toggle.ionic.css +419 -0
  525. package/dist/collection/components/toggle/toggle.ios.css +166 -120
  526. package/dist/collection/components/toggle/toggle.js +73 -18
  527. package/dist/collection/components/toggle/toggle.md.css +163 -120
  528. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  529. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  530. package/dist/collection/components/toolbar/toolbar.js +13 -10
  531. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  532. package/dist/collection/global/ionic-global.js +229 -13
  533. package/dist/collection/utils/focus-trap.js +2 -8
  534. package/dist/collection/utils/focus-visible.js +7 -0
  535. package/dist/collection/utils/framework-delegate.js +3 -1
  536. package/dist/collection/utils/helpers.js +3 -1
  537. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  538. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  539. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  540. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  541. package/dist/collection/utils/overlays.js +11 -20
  542. package/dist/collection/utils/test/playwright/generator.js +48 -23
  543. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  544. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  545. package/dist/collection/utils/transition/ios.transition.js +1 -0
  546. package/dist/docs.json +7075 -325
  547. package/dist/esm/{animation-eab5a4ca.js → animation-f1a88600.js} +1 -1
  548. package/dist/esm/{app-globals-5dbb61a5.js → app-globals-eceadabb.js} +1 -1
  549. package/dist/esm/{button-active-f6503382.js → button-active-321f0dba.js} +2 -2
  550. package/dist/esm/{capacitor-59395cbd.js → capacitor-6b0341c8.js} +1 -1
  551. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  552. package/dist/esm/caret-left-33424bb0.js +6 -0
  553. package/dist/esm/caret-right-68d856ad.js +6 -0
  554. package/dist/esm/config-84eb9670.js +79 -0
  555. package/dist/esm/{data-ae11fd43.js → data-a753c96a.js} +4 -4
  556. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  557. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-3e4a8c9f.js} +4 -2
  558. package/dist/esm/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  559. package/dist/esm/{helpers-da915de8.js → helpers-f08d15bd.js} +4 -1
  560. package/dist/esm/{index-24b48b06.js → index-31109e63.js} +10 -11
  561. package/dist/esm/{index-3ad7f18b.js → index-59f81cb8.js} +6 -6
  562. package/{components/index9.js → dist/esm/index-62b4a18b.js} +4 -2
  563. package/dist/esm/{index-28849c61.js → index-723c0e5d.js} +1 -1
  564. package/dist/esm/{index-5cc724f3.js → index-7bd160c2.js} +2 -2
  565. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  566. package/dist/esm/index.js +11 -13
  567. package/dist/esm/{input-shims-0314bbe5.js → input-shims-6be83e59.js} +7 -6
  568. package/dist/esm/{input.utils-09c71bc7.js → input.utils-67459bae.js} +2 -3
  569. package/dist/esm/ion-accordion_2.entry.js +61 -24
  570. package/dist/esm/ion-action-sheet.entry.js +22 -19
  571. package/dist/esm/ion-alert.entry.js +23 -21
  572. package/dist/esm/ion-app_8.entry.js +98 -161
  573. package/dist/esm/ion-avatar_3.entry.js +94 -10
  574. package/dist/esm/ion-back-button.entry.js +31 -21
  575. package/dist/esm/ion-backdrop.entry.js +12 -7
  576. package/dist/esm/ion-breadcrumb_2.entry.js +55 -17
  577. package/dist/esm/ion-button_2.entry.js +44 -13
  578. package/dist/esm/ion-card_5.entry.js +53 -29
  579. package/dist/esm/ion-checkbox.entry.js +30 -14
  580. package/dist/esm/ion-chip.entry.js +44 -8
  581. package/dist/esm/ion-col_3.entry.js +15 -11
  582. package/dist/esm/ion-datetime-button.entry.js +13 -9
  583. package/dist/esm/ion-datetime_3.entry.js +117 -41
  584. package/dist/esm/ion-fab_3.entry.js +44 -21
  585. package/dist/esm/ion-img.entry.js +8 -4
  586. package/dist/esm/ion-infinite-scroll_2.entry.js +19 -15
  587. package/dist/esm/ion-input-password-toggle.entry.js +54 -15
  588. package/dist/esm/ion-input.entry.js +120 -25
  589. package/dist/esm/ion-item-option_3.entry.js +41 -18
  590. package/dist/esm/ion-item_8.entry.js +114 -42
  591. package/dist/esm/ion-loading.entry.js +18 -16
  592. package/dist/esm/ion-menu_3.entry.js +48 -56
  593. package/dist/esm/ion-modal.entry.js +59 -31
  594. package/dist/esm/ion-nav_2.entry.js +14 -12
  595. package/dist/esm/ion-picker-column-option.entry.js +12 -7
  596. package/dist/esm/ion-picker-column.entry.js +12 -12
  597. package/dist/esm/ion-picker.entry.js +11 -6
  598. package/dist/esm/ion-popover.entry.js +18 -16
  599. package/dist/esm/ion-progress-bar.entry.js +13 -8
  600. package/dist/esm/ion-radio_2.entry.js +19 -17
  601. package/dist/esm/ion-range.entry.js +16 -12
  602. package/dist/esm/ion-refresher_2.entry.js +42 -21
  603. package/dist/esm/ion-reorder_2.entry.js +39 -15
  604. package/dist/esm/ion-ripple-effect.entry.js +19 -8
  605. package/dist/esm/ion-route_4.entry.js +9 -8
  606. package/dist/esm/ion-searchbar.entry.js +95 -18
  607. package/dist/esm/ion-segment-content.entry.js +2 -2
  608. package/dist/esm/ion-segment-view.entry.js +7 -3
  609. package/dist/esm/ion-segment_2.entry.js +24 -15
  610. package/dist/esm/ion-select-modal.entry.js +9 -11
  611. package/dist/esm/ion-select_3.entry.js +134 -41
  612. package/dist/esm/ion-spinner.entry.js +34 -8
  613. package/dist/esm/ion-split-pane.entry.js +14 -9
  614. package/dist/esm/ion-tab-bar_2.entry.js +45 -20
  615. package/dist/esm/ion-tab_2.entry.js +8 -7
  616. package/dist/esm/ion-text.entry.js +7 -6
  617. package/dist/esm/ion-textarea.entry.js +42 -17
  618. package/dist/esm/ion-toast.entry.js +34 -18
  619. package/dist/esm/ion-toggle.entry.js +81 -23
  620. package/dist/esm/ionic-global-3c97a4aa.js +521 -0
  621. package/dist/esm/ionic.js +6 -5
  622. package/dist/esm/{ios.transition-4ee1a3af.js → ios.transition-06b78ea0.js} +7 -7
  623. package/dist/esm/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +5 -3
  624. package/dist/esm/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  625. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-aff395fd.js} +5 -3
  626. package/dist/esm/list-6524700c.js +6 -0
  627. package/dist/esm/loader.js +6 -5
  628. package/dist/esm/{md.transition-5106a0d2.js → md.transition-e5712bda.js} +6 -7
  629. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-c0bd22ff.js} +2 -2
  630. package/dist/esm/{overlays-e7b9d6d9.js → overlays-ce6f6b23.js} +17 -33
  631. package/dist/esm/{status-tap-f472b09f.js → status-tap-edf9f395.js} +5 -4
  632. package/dist/esm/{swipe-back-e5394307.js → swipe-back-17c42610.js} +2 -1
  633. package/dist/esm/x-a64bcd9f.js +6 -0
  634. package/dist/esm-es5/animation-f1a88600.js +4 -0
  635. package/dist/esm-es5/app-globals-eceadabb.js +4 -0
  636. package/dist/esm-es5/{button-active-f6503382.js → button-active-321f0dba.js} +1 -1
  637. package/dist/esm-es5/capacitor-6b0341c8.js +4 -0
  638. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  639. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  640. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  641. package/dist/esm-es5/config-84eb9670.js +4 -0
  642. package/dist/esm-es5/data-a753c96a.js +4 -0
  643. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  644. package/dist/esm-es5/framework-delegate-3e4a8c9f.js +4 -0
  645. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  646. package/dist/esm-es5/helpers-f08d15bd.js +4 -0
  647. package/dist/esm-es5/index-31109e63.js +4 -0
  648. package/dist/esm-es5/index-59f81cb8.js +4 -0
  649. package/dist/esm-es5/{index-79b30591.js → index-62b4a18b.js} +1 -1
  650. package/dist/esm-es5/{index-28849c61.js → index-723c0e5d.js} +1 -1
  651. package/dist/esm-es5/index-7bd160c2.js +4 -0
  652. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  653. package/dist/esm-es5/index.js +1 -1
  654. package/dist/esm-es5/input-shims-6be83e59.js +4 -0
  655. package/dist/esm-es5/input.utils-67459bae.js +4 -0
  656. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  657. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  658. package/dist/esm-es5/ion-alert.entry.js +1 -1
  659. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  660. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  661. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  662. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  663. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  664. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  665. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  666. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  667. package/dist/esm-es5/ion-chip.entry.js +1 -1
  668. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  669. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  670. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  671. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  672. package/dist/esm-es5/ion-img.entry.js +1 -1
  673. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  674. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  675. package/dist/esm-es5/ion-input.entry.js +1 -1
  676. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  677. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  678. package/dist/esm-es5/ion-loading.entry.js +1 -1
  679. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  680. package/dist/esm-es5/ion-modal.entry.js +1 -1
  681. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  682. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  683. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  684. package/dist/esm-es5/ion-picker.entry.js +1 -1
  685. package/dist/esm-es5/ion-popover.entry.js +1 -1
  686. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  687. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  688. package/dist/esm-es5/ion-range.entry.js +1 -1
  689. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  690. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  691. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  692. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  693. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  694. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  695. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  696. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  697. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  698. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  699. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  700. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  701. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  702. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  703. package/dist/esm-es5/ion-text.entry.js +1 -1
  704. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  705. package/dist/esm-es5/ion-toast.entry.js +1 -1
  706. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  707. package/dist/esm-es5/ionic-global-3c97a4aa.js +4 -0
  708. package/dist/esm-es5/ionic.js +1 -1
  709. package/dist/esm-es5/ios.transition-06b78ea0.js +4 -0
  710. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +1 -1
  711. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  712. package/dist/esm-es5/keyboard-controller-aff395fd.js +4 -0
  713. package/dist/esm-es5/list-6524700c.js +4 -0
  714. package/dist/esm-es5/loader.js +1 -1
  715. package/dist/esm-es5/md.transition-e5712bda.js +4 -0
  716. package/dist/esm-es5/notch-controller-c0bd22ff.js +4 -0
  717. package/dist/esm-es5/overlays-ce6f6b23.js +4 -0
  718. package/dist/esm-es5/status-tap-edf9f395.js +4 -0
  719. package/dist/esm-es5/swipe-back-17c42610.js +4 -0
  720. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  721. package/dist/html.html-data.json +2321 -198
  722. package/dist/ionic/index.esm.js +1 -1
  723. package/dist/ionic/ionic.esm.js +1 -1
  724. package/dist/ionic/ionic.js +1 -1
  725. package/dist/ionic/p-01d80901.system.js +4 -0
  726. package/dist/ionic/p-038a6294.js +4 -0
  727. package/dist/ionic/p-06ec4706.js +4 -0
  728. package/dist/ionic/p-08f4a45d.system.entry.js +4 -0
  729. package/dist/ionic/p-09125f4f.entry.js +4 -0
  730. package/dist/ionic/p-096e5f6d.system.entry.js +4 -0
  731. package/dist/ionic/p-09c6b5e4.js +4 -0
  732. package/dist/ionic/p-0a0ce78f.system.entry.js +4 -0
  733. package/dist/ionic/p-0e80425f.system.entry.js +4 -0
  734. package/dist/ionic/{p-25180df3.system.js → p-0fa218e9.system.js} +1 -1
  735. package/dist/ionic/p-112120d7.system.js +4 -0
  736. package/dist/ionic/{p-c7e16491.js → p-11266916.js} +1 -1
  737. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  738. package/dist/ionic/{p-34b11c24.js → p-12d6df53.js} +1 -1
  739. package/dist/ionic/p-156d17cd.js +4 -0
  740. package/dist/ionic/p-161ecf50.system.entry.js +4 -0
  741. package/dist/ionic/p-18892506.entry.js +4 -0
  742. package/dist/ionic/{p-b06ac4a5.system.js → p-18f86177.system.js} +1 -1
  743. package/dist/ionic/p-1da82a87.system.entry.js +4 -0
  744. package/dist/ionic/p-1e4fd112.entry.js +4 -0
  745. package/dist/ionic/p-1efa63f2.js +4 -0
  746. package/dist/ionic/p-23b31425.entry.js +4 -0
  747. package/dist/ionic/p-243adf8c.js +4 -0
  748. package/dist/ionic/p-24f15ce4.system.entry.js +4 -0
  749. package/dist/ionic/p-25413edd.entry.js +4 -0
  750. package/dist/ionic/p-27258d5a.entry.js +4 -0
  751. package/dist/ionic/p-29ca4da2.entry.js +4 -0
  752. package/dist/ionic/p-2ef115ec.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-3608e72b.entry.js +4 -0
  756. package/dist/ionic/p-398b00a5.system.entry.js +4 -0
  757. package/dist/ionic/p-3a7f86e2.system.entry.js +4 -0
  758. package/dist/ionic/p-3b520400.system.entry.js +4 -0
  759. package/dist/ionic/p-3c4c73f9.system.entry.js +4 -0
  760. package/dist/ionic/p-3ce95a91.entry.js +4 -0
  761. package/dist/ionic/p-3d61263b.system.entry.js +4 -0
  762. package/dist/ionic/{p-9ea607bd.system.js → p-3e91ea3a.system.js} +2 -2
  763. package/dist/ionic/p-4130574e.entry.js +4 -0
  764. package/dist/ionic/{p-3c8e5c23.system.js → p-41c19986.system.js} +1 -1
  765. package/dist/ionic/p-41f06734.entry.js +4 -0
  766. package/dist/ionic/p-4219582c.system.js +4 -0
  767. package/dist/ionic/p-429dd2b5.system.js +4 -0
  768. package/dist/ionic/p-43df37ca.entry.js +4 -0
  769. package/dist/ionic/p-4459a66e.system.js +4 -0
  770. package/dist/ionic/{p-f687573e.system.js → p-44ad86d7.system.js} +1 -1
  771. package/dist/ionic/{p-8985cdb6.system.js → p-4626fb32.system.js} +1 -1
  772. package/dist/ionic/p-465ffde2.entry.js +4 -0
  773. package/dist/ionic/p-46787abb.system.js +4 -0
  774. package/dist/ionic/p-47fd935c.system.js +4 -0
  775. package/dist/ionic/p-4a89c1ec.system.js +4 -0
  776. package/dist/ionic/p-4ac4f52a.system.entry.js +4 -0
  777. package/dist/ionic/p-4b4e4592.system.entry.js +4 -0
  778. package/dist/ionic/{p-89b61afc.js → p-4c275462.js} +1 -1
  779. package/dist/ionic/p-4c9e1b2c.js +4 -0
  780. package/dist/ionic/p-4f127a09.system.entry.js +4 -0
  781. package/dist/ionic/p-51371e21.system.js +4 -0
  782. package/dist/ionic/p-530c591a.entry.js +4 -0
  783. package/dist/ionic/p-53dfa2e3.entry.js +4 -0
  784. package/dist/ionic/p-5474c7c4.entry.js +4 -0
  785. package/dist/ionic/p-55546d77.system.entry.js +4 -0
  786. package/dist/ionic/p-556778bd.system.js +4 -0
  787. package/dist/ionic/p-5684893b.system.entry.js +4 -0
  788. package/dist/ionic/p-57de8d54.system.entry.js +4 -0
  789. package/dist/ionic/{p-f9a53abb.system.js → p-58aa8a36.system.js} +1 -1
  790. package/dist/ionic/p-58c64779.system.entry.js +4 -0
  791. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  792. package/dist/ionic/p-5a1979e0.system.entry.js +4 -0
  793. package/dist/ionic/p-5a6b3c0d.entry.js +4 -0
  794. package/dist/ionic/p-5a6d245d.system.entry.js +4 -0
  795. package/dist/ionic/p-5b57d327.system.js +4 -0
  796. package/dist/ionic/p-5ce35a03.js +4 -0
  797. package/dist/ionic/p-607c9c33.js +4 -0
  798. package/dist/ionic/{p-9146695e.system.js → p-62887754.system.js} +1 -1
  799. package/dist/ionic/p-63fde7fe.entry.js +4 -0
  800. package/dist/ionic/p-67b6e18d.entry.js +4 -0
  801. package/dist/ionic/p-67f3ed57.entry.js +4 -0
  802. package/dist/ionic/p-6a0dd6bc.js +4 -0
  803. package/dist/ionic/p-6bc2795b.entry.js +4 -0
  804. package/dist/ionic/p-6bd1c0ee.system.entry.js +4 -0
  805. package/dist/ionic/p-6caa76ec.js +4 -0
  806. package/dist/ionic/p-7071d7ca.js +4 -0
  807. package/dist/ionic/p-72cbf799.system.entry.js +4 -0
  808. package/dist/ionic/p-74d76684.js +4 -0
  809. package/dist/ionic/p-7607d8ba.system.entry.js +4 -0
  810. package/dist/ionic/p-787c1bd0.system.entry.js +4 -0
  811. package/dist/ionic/p-78ed8923.js +4 -0
  812. package/dist/ionic/p-7a858bae.system.js +4 -0
  813. package/dist/ionic/p-815f649a.system.entry.js +4 -0
  814. package/dist/ionic/p-81e632cb.entry.js +4 -0
  815. package/dist/ionic/p-82cb4235.js +4 -0
  816. package/dist/ionic/{p-d836d43e.js → p-83948e48.js} +1 -1
  817. package/dist/ionic/p-8463212e.js +4 -0
  818. package/dist/ionic/p-84667060.entry.js +4 -0
  819. package/dist/ionic/p-857ba8d4.entry.js +4 -0
  820. package/dist/ionic/p-86d98446.system.entry.js +4 -0
  821. package/dist/ionic/{p-58d5df0c.system.entry.js → p-86e9a917.system.entry.js} +1 -1
  822. package/dist/ionic/p-87049797.js +4 -0
  823. package/dist/ionic/p-8956f9a8.system.entry.js +4 -0
  824. package/dist/ionic/p-8b0f0a87.entry.js +4 -0
  825. package/dist/ionic/p-8db246c2.system.js +4 -0
  826. package/dist/ionic/p-8dbfae64.entry.js +4 -0
  827. package/dist/ionic/p-903c544a.js +4 -0
  828. package/dist/ionic/p-916bc9ed.system.entry.js +4 -0
  829. package/dist/ionic/p-92646426.js +4 -0
  830. package/dist/ionic/{p-27281edd.js → p-93e47936.js} +1 -1
  831. package/dist/ionic/{p-a93873de.system.js → p-94816e7a.system.js} +1 -1
  832. package/dist/ionic/p-954d0d7c.system.entry.js +4 -0
  833. package/dist/ionic/p-986855d6.js +4 -0
  834. package/dist/ionic/p-9abb7d9b.entry.js +4 -0
  835. package/dist/ionic/p-9ac1a506.system.js +4 -0
  836. package/dist/ionic/p-a1cdc742.js +4 -0
  837. package/dist/ionic/p-a2814291.system.js +4 -0
  838. package/dist/ionic/{p-d743e981.js → p-a510e9c0.js} +1 -1
  839. package/dist/ionic/p-a5a9206f.entry.js +4 -0
  840. package/dist/ionic/p-a616b6e4.entry.js +4 -0
  841. package/dist/ionic/p-a685da08.system.entry.js +4 -0
  842. package/dist/ionic/p-a7acb257.system.entry.js +4 -0
  843. package/dist/ionic/p-a81bc291.entry.js +4 -0
  844. package/dist/ionic/p-a98061d0.entry.js +4 -0
  845. package/dist/ionic/p-a9af4103.js +4 -0
  846. package/dist/ionic/{p-d60342e3.js → p-aaccbb95.js} +1 -1
  847. package/dist/ionic/p-ac1c2b6a.js +4 -0
  848. package/dist/ionic/p-adc0276b.entry.js +4 -0
  849. package/dist/ionic/p-ae55c4c7.system.entry.js +4 -0
  850. package/dist/ionic/p-b18c52cd.entry.js +4 -0
  851. package/dist/ionic/p-b2df786a.system.entry.js +4 -0
  852. package/dist/ionic/p-b517144d.system.entry.js +4 -0
  853. package/dist/ionic/p-b5dc9a32.system.entry.js +4 -0
  854. package/dist/ionic/p-b79f3ded.entry.js +4 -0
  855. package/dist/ionic/p-bbcec459.system.js +4 -0
  856. package/dist/ionic/p-be87ec25.entry.js +4 -0
  857. package/dist/ionic/p-c248c88d.system.js +4 -0
  858. package/dist/ionic/p-c373eebd.system.js +4 -0
  859. package/dist/ionic/p-c3ae4bcf.entry.js +4 -0
  860. package/dist/ionic/p-c5226e15.system.entry.js +4 -0
  861. package/dist/ionic/p-cad8a848.entry.js +4 -0
  862. package/dist/ionic/p-ccce3322.system.entry.js +4 -0
  863. package/dist/ionic/p-cdff6a80.system.entry.js +4 -0
  864. package/dist/ionic/p-cea92c46.system.js +4 -0
  865. package/dist/ionic/p-cf3dad24.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-df9c6620.system.entry.js +4 -0
  871. package/dist/ionic/p-e18f9479.system.entry.js +4 -0
  872. package/dist/ionic/p-e3b70846.system.js +4 -0
  873. package/dist/ionic/p-e7909e1d.entry.js +4 -0
  874. package/dist/ionic/p-e894ab16.system.entry.js +4 -0
  875. package/dist/ionic/p-e9eb25ba.system.entry.js +4 -0
  876. package/dist/ionic/p-ea3ca474.system.js +4 -0
  877. package/dist/ionic/p-ea98a10a.system.entry.js +4 -0
  878. package/dist/ionic/p-eb4ba253.entry.js +4 -0
  879. package/dist/ionic/p-ebe94d15.entry.js +4 -0
  880. package/dist/ionic/p-eda736d7.entry.js +4 -0
  881. package/dist/ionic/p-ee17be82.entry.js +4 -0
  882. package/dist/ionic/p-eecb1b04.entry.js +4 -0
  883. package/dist/ionic/p-eee899d5.system.entry.js +4 -0
  884. package/dist/ionic/p-ef60ee95.entry.js +4 -0
  885. package/dist/ionic/p-f116fb3f.system.js +4 -0
  886. package/dist/ionic/{p-372ae7f4.system.js → p-f193945e.system.js} +1 -1
  887. package/dist/ionic/p-f1e11e93.entry.js +4 -0
  888. package/dist/ionic/p-f25ad420.system.entry.js +4 -0
  889. package/dist/ionic/p-f28ac1ad.entry.js +4 -0
  890. package/dist/ionic/p-f44934a7.system.entry.js +4 -0
  891. package/dist/ionic/p-f44c9c6e.system.entry.js +4 -0
  892. package/dist/ionic/p-f8123284.entry.js +4 -0
  893. package/dist/ionic/{p-5da94421.system.js → p-f8c63ac0.system.js} +2 -2
  894. package/dist/ionic/p-fff78cd2.system.entry.js +4 -0
  895. package/dist/types/components/accordion/accordion.d.ts +5 -3
  896. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  897. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  898. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  899. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  900. package/dist/types/components/alert/alert.d.ts +3 -2
  901. package/dist/types/components/app/app.d.ts +4 -2
  902. package/dist/types/components/avatar/avatar.d.ts +28 -0
  903. package/dist/types/components/back-button/back-button.d.ts +2 -1
  904. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  905. package/dist/types/components/badge/badge.d.ts +23 -1
  906. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  907. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  908. package/dist/types/components/button/button.d.ts +15 -4
  909. package/dist/types/components/buttons/buttons.d.ts +5 -1
  910. package/dist/types/components/card/card.d.ts +8 -1
  911. package/dist/types/components/card-content/card-content.d.ts +2 -1
  912. package/dist/types/components/card-header/card-header.d.ts +3 -2
  913. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  914. package/dist/types/components/card-title/card-title.d.ts +2 -1
  915. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  916. package/dist/types/components/chip/chip.d.ts +19 -1
  917. package/dist/types/components/col/col.d.ts +4 -0
  918. package/dist/types/components/content/content.d.ts +3 -0
  919. package/dist/types/components/datetime/datetime.d.ts +26 -1
  920. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  921. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  922. package/dist/types/components/fab/fab.d.ts +4 -0
  923. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  924. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  925. package/dist/types/components/footer/footer.d.ts +4 -3
  926. package/dist/types/components/grid/grid.d.ts +4 -0
  927. package/dist/types/components/header/header.d.ts +9 -3
  928. package/dist/types/components/img/img.d.ts +3 -0
  929. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  930. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  931. package/dist/types/components/input/input.d.ts +31 -5
  932. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  933. package/dist/types/components/item/item.d.ts +11 -4
  934. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  935. package/dist/types/components/item-group/item-group.d.ts +4 -0
  936. package/dist/types/components/item-option/item-option.d.ts +11 -1
  937. package/dist/types/components/item-options/item-options.d.ts +4 -0
  938. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  939. package/dist/types/components/label/label.d.ts +2 -1
  940. package/dist/types/components/list/list.d.ts +15 -1
  941. package/dist/types/components/list-header/list-header.d.ts +2 -1
  942. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  943. package/dist/types/components/loading/loading.d.ts +3 -2
  944. package/dist/types/components/menu/menu.d.ts +3 -0
  945. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  946. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  947. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  948. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  949. package/dist/types/components/modal/modal.d.ts +11 -1
  950. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  951. package/dist/types/components/nav/nav.d.ts +5 -1
  952. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  953. package/dist/types/components/note/note.d.ts +2 -1
  954. package/dist/types/components/picker/picker.d.ts +2 -1
  955. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  956. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  957. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  958. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  959. package/dist/types/components/popover/popover.d.ts +6 -5
  960. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  961. package/dist/types/components/radio/radio.d.ts +2 -1
  962. package/dist/types/components/radio-group/radio-group.d.ts +4 -2
  963. package/dist/types/components/range/range.d.ts +2 -1
  964. package/dist/types/components/refresher/refresher.d.ts +2 -1
  965. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  966. package/dist/types/components/reorder/reorder.d.ts +9 -0
  967. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  968. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  969. package/dist/types/components/route/route.d.ts +4 -0
  970. package/dist/types/components/router/router.d.ts +4 -0
  971. package/dist/types/components/router-link/router-link.d.ts +4 -0
  972. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  973. package/dist/types/components/row/row.d.ts +4 -0
  974. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  975. package/dist/types/components/segment/segment.d.ts +2 -1
  976. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  977. package/dist/types/components/select/select.d.ts +35 -7
  978. package/dist/types/components/select-option/select-option.d.ts +4 -0
  979. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  980. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  981. package/dist/types/components/spinner/spinner.d.ts +15 -0
  982. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  983. package/dist/types/components/tab/tab.d.ts +4 -0
  984. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  985. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  986. package/dist/types/components/tabs/tabs.d.ts +3 -0
  987. package/dist/types/components/text/text.d.ts +2 -1
  988. package/dist/types/components/textarea/textarea.d.ts +16 -4
  989. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  990. package/dist/types/components/title/title.d.ts +4 -0
  991. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  992. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  993. package/dist/types/components/toast/toast.d.ts +12 -2
  994. package/dist/types/components/toggle/toggle.d.ts +15 -1
  995. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  996. package/dist/types/components.d.ts +1374 -183
  997. package/dist/types/global/ionic-global.d.ts +27 -2
  998. package/dist/types/interface.d.ts +3 -0
  999. package/dist/types/utils/config.d.ts +106 -2
  1000. package/dist/types/utils/focus-trap.d.ts +1 -1
  1001. package/dist/types/utils/focus-visible.d.ts +1 -0
  1002. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1003. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1004. package/hydrate/index.js +2397 -1003
  1005. package/hydrate/index.mjs +2397 -1003
  1006. package/package.json +9 -4
  1007. package/components/hardware-back-button.js +0 -115
  1008. package/components/index8.js +0 -128
  1009. package/dist/cjs/hardware-back-button-9e8a2c4f.js +0 -122
  1010. package/dist/cjs/index-5915f9b3.js +0 -38
  1011. package/dist/cjs/index-c8d52405.js +0 -10
  1012. package/dist/cjs/ionic-global-d9a8bb5b.js +0 -237
  1013. package/dist/esm/hardware-back-button-06ef3c3e.js +0 -116
  1014. package/dist/esm/index-79b30591.js +0 -167
  1015. package/dist/esm/index-9b0d46f4.js +0 -34
  1016. package/dist/esm/index-a5d50daf.js +0 -7
  1017. package/dist/esm/ionic-global-c81d82ab.js +0 -231
  1018. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1019. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  1020. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1021. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1022. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1023. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  1024. package/dist/esm-es5/hardware-back-button-06ef3c3e.js +0 -4
  1025. package/dist/esm-es5/helpers-da915de8.js +0 -4
  1026. package/dist/esm-es5/index-24b48b06.js +0 -4
  1027. package/dist/esm-es5/index-3ad7f18b.js +0 -4
  1028. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1029. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1030. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1031. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1032. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1033. package/dist/esm-es5/ionic-global-c81d82ab.js +0 -4
  1034. package/dist/esm-es5/ios.transition-4ee1a3af.js +0 -4
  1035. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1036. package/dist/esm-es5/md.transition-5106a0d2.js +0 -4
  1037. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  1038. package/dist/esm-es5/overlays-e7b9d6d9.js +0 -4
  1039. package/dist/esm-es5/status-tap-f472b09f.js +0 -4
  1040. package/dist/esm-es5/swipe-back-e5394307.js +0 -4
  1041. package/dist/ionic/p-01186920.system.entry.js +0 -4
  1042. package/dist/ionic/p-0303d0f8.js +0 -4
  1043. package/dist/ionic/p-0574e87e.js +0 -4
  1044. package/dist/ionic/p-06e58c4e.js +0 -4
  1045. package/dist/ionic/p-06fee233.js +0 -4
  1046. package/dist/ionic/p-081a4ce4.entry.js +0 -4
  1047. package/dist/ionic/p-0aa833fb.system.js +0 -4
  1048. package/dist/ionic/p-0c06e09b.system.js +0 -4
  1049. package/dist/ionic/p-1046866e.system.entry.js +0 -4
  1050. package/dist/ionic/p-12a722b8.system.entry.js +0 -4
  1051. package/dist/ionic/p-14be4015.entry.js +0 -4
  1052. package/dist/ionic/p-14e159ea.system.entry.js +0 -4
  1053. package/dist/ionic/p-15e76dd1.entry.js +0 -4
  1054. package/dist/ionic/p-16188af7.entry.js +0 -4
  1055. package/dist/ionic/p-16799667.system.entry.js +0 -4
  1056. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  1057. package/dist/ionic/p-17474161.system.js +0 -4
  1058. package/dist/ionic/p-19a5be0a.entry.js +0 -4
  1059. package/dist/ionic/p-19ec4f42.entry.js +0 -4
  1060. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1061. package/dist/ionic/p-1e010627.system.entry.js +0 -4
  1062. package/dist/ionic/p-1e4371bd.js +0 -4
  1063. package/dist/ionic/p-1e67b266.system.entry.js +0 -4
  1064. package/dist/ionic/p-1fe02220.system.entry.js +0 -4
  1065. package/dist/ionic/p-2172893e.system.entry.js +0 -4
  1066. package/dist/ionic/p-21e5e7e4.js +0 -4
  1067. package/dist/ionic/p-2507278c.system.entry.js +0 -4
  1068. package/dist/ionic/p-2690b1de.js +0 -4
  1069. package/dist/ionic/p-2799c6d3.system.entry.js +0 -4
  1070. package/dist/ionic/p-2abae1cc.system.entry.js +0 -4
  1071. package/dist/ionic/p-2b7827c7.js +0 -4
  1072. package/dist/ionic/p-2b838f86.system.entry.js +0 -4
  1073. package/dist/ionic/p-2b9b78c7.entry.js +0 -4
  1074. package/dist/ionic/p-2bd0ae94.system.entry.js +0 -4
  1075. package/dist/ionic/p-2e46590d.system.entry.js +0 -4
  1076. package/dist/ionic/p-2fc0dafe.entry.js +0 -4
  1077. package/dist/ionic/p-322c5fb4.system.js +0 -4
  1078. package/dist/ionic/p-33a8a71b.entry.js +0 -4
  1079. package/dist/ionic/p-37cb43bd.system.entry.js +0 -4
  1080. package/dist/ionic/p-3ad285e3.system.js +0 -4
  1081. package/dist/ionic/p-3cc276f4.js +0 -4
  1082. package/dist/ionic/p-424eb140.system.entry.js +0 -4
  1083. package/dist/ionic/p-4439fc2a.entry.js +0 -4
  1084. package/dist/ionic/p-45693d7e.entry.js +0 -4
  1085. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  1086. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  1087. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  1088. package/dist/ionic/p-508d024a.entry.js +0 -4
  1089. package/dist/ionic/p-52d7a191.entry.js +0 -4
  1090. package/dist/ionic/p-567de071.system.entry.js +0 -4
  1091. package/dist/ionic/p-5823babc.system.entry.js +0 -4
  1092. package/dist/ionic/p-5ab1b709.entry.js +0 -4
  1093. package/dist/ionic/p-5b932840.entry.js +0 -4
  1094. package/dist/ionic/p-5fce0c0b.system.entry.js +0 -4
  1095. package/dist/ionic/p-626fd66d.system.entry.js +0 -4
  1096. package/dist/ionic/p-62af944c.entry.js +0 -4
  1097. package/dist/ionic/p-63b0abde.system.entry.js +0 -4
  1098. package/dist/ionic/p-6499df44.system.entry.js +0 -4
  1099. package/dist/ionic/p-66640ff7.system.entry.js +0 -4
  1100. package/dist/ionic/p-69066a53.js +0 -4
  1101. package/dist/ionic/p-69666e8a.system.entry.js +0 -4
  1102. package/dist/ionic/p-6b280620.entry.js +0 -4
  1103. package/dist/ionic/p-6d32975a.entry.js +0 -4
  1104. package/dist/ionic/p-6d6cedc5.entry.js +0 -4
  1105. package/dist/ionic/p-72812e99.js +0 -4
  1106. package/dist/ionic/p-72bc8a1c.js +0 -4
  1107. package/dist/ionic/p-73dc4950.entry.js +0 -4
  1108. package/dist/ionic/p-7458862e.system.entry.js +0 -4
  1109. package/dist/ionic/p-792919fd.system.js +0 -4
  1110. package/dist/ionic/p-797eeea8.system.entry.js +0 -4
  1111. package/dist/ionic/p-7b30edcc.js +0 -4
  1112. package/dist/ionic/p-7b9a2b23.entry.js +0 -4
  1113. package/dist/ionic/p-7ddc46c3.system.entry.js +0 -4
  1114. package/dist/ionic/p-7ed1657c.system.entry.js +0 -4
  1115. package/dist/ionic/p-8635f5e6.system.js +0 -4
  1116. package/dist/ionic/p-88e63c7d.js +0 -4
  1117. package/dist/ionic/p-8b8be2fd.entry.js +0 -4
  1118. package/dist/ionic/p-908d6080.entry.js +0 -4
  1119. package/dist/ionic/p-937a7e21.entry.js +0 -4
  1120. package/dist/ionic/p-942b5e13.entry.js +0 -4
  1121. package/dist/ionic/p-95775830.entry.js +0 -4
  1122. package/dist/ionic/p-96cc4814.js +0 -4
  1123. package/dist/ionic/p-982315a6.entry.js +0 -4
  1124. package/dist/ionic/p-98231c01.system.entry.js +0 -4
  1125. package/dist/ionic/p-985a7e17.system.entry.js +0 -4
  1126. package/dist/ionic/p-98ff6b32.entry.js +0 -4
  1127. package/dist/ionic/p-9df2c6fb.entry.js +0 -4
  1128. package/dist/ionic/p-9e33104d.entry.js +0 -4
  1129. package/dist/ionic/p-9ee1e8a6.entry.js +0 -4
  1130. package/dist/ionic/p-9f3008d4.system.js +0 -4
  1131. package/dist/ionic/p-9fa07aec.entry.js +0 -4
  1132. package/dist/ionic/p-a15ddedb.system.js +0 -4
  1133. package/dist/ionic/p-a43467d8.entry.js +0 -4
  1134. package/dist/ionic/p-a4565eb5.system.js +0 -4
  1135. package/dist/ionic/p-a49378bb.system.entry.js +0 -4
  1136. package/dist/ionic/p-a61cba41.entry.js +0 -4
  1137. package/dist/ionic/p-a69b9fc5.system.js +0 -4
  1138. package/dist/ionic/p-abe101da.system.js +0 -4
  1139. package/dist/ionic/p-adbc4bdf.entry.js +0 -4
  1140. package/dist/ionic/p-afecb188.entry.js +0 -4
  1141. package/dist/ionic/p-b2272f51.system.entry.js +0 -4
  1142. package/dist/ionic/p-b335ffed.system.entry.js +0 -4
  1143. package/dist/ionic/p-b51e4004.js +0 -4
  1144. package/dist/ionic/p-b79ba17c.entry.js +0 -4
  1145. package/dist/ionic/p-b82d4cab.js +0 -4
  1146. package/dist/ionic/p-b9d7015f.entry.js +0 -4
  1147. package/dist/ionic/p-bb0db172.entry.js +0 -4
  1148. package/dist/ionic/p-bc36ad98.system.entry.js +0 -4
  1149. package/dist/ionic/p-bdad26e3.entry.js +0 -4
  1150. package/dist/ionic/p-c29f8157.system.entry.js +0 -4
  1151. package/dist/ionic/p-c2b74d92.system.entry.js +0 -4
  1152. package/dist/ionic/p-c41ac815.entry.js +0 -4
  1153. package/dist/ionic/p-c449820c.system.js +0 -4
  1154. package/dist/ionic/p-c468af8a.system.js +0 -4
  1155. package/dist/ionic/p-c61cc894.js +0 -4
  1156. package/dist/ionic/p-c9f3a539.entry.js +0 -4
  1157. package/dist/ionic/p-ca065903.system.entry.js +0 -4
  1158. package/dist/ionic/p-cac0e0b3.system.entry.js +0 -4
  1159. package/dist/ionic/p-d18ab582.system.entry.js +0 -4
  1160. package/dist/ionic/p-d47265c8.js +0 -4
  1161. package/dist/ionic/p-d6841eac.js +0 -4
  1162. package/dist/ionic/p-d7aa6b00.entry.js +0 -4
  1163. package/dist/ionic/p-da074ff7.entry.js +0 -4
  1164. package/dist/ionic/p-ddaa748a.system.entry.js +0 -4
  1165. package/dist/ionic/p-de930745.entry.js +0 -4
  1166. package/dist/ionic/p-dfb78785.system.js +0 -4
  1167. package/dist/ionic/p-e4ee80be.system.entry.js +0 -4
  1168. package/dist/ionic/p-e4f69534.system.entry.js +0 -4
  1169. package/dist/ionic/p-e563a35c.entry.js +0 -4
  1170. package/dist/ionic/p-e6635685.js +0 -4
  1171. package/dist/ionic/p-e7ed4a7f.system.js +0 -4
  1172. package/dist/ionic/p-e85d901b.system.entry.js +0 -4
  1173. package/dist/ionic/p-eba29931.entry.js +0 -4
  1174. package/dist/ionic/p-ebf042e0.system.entry.js +0 -4
  1175. package/dist/ionic/p-ecceeb90.js +0 -4
  1176. package/dist/ionic/p-ed75fcfb.system.entry.js +0 -4
  1177. package/dist/ionic/p-efaffe74.entry.js +0 -4
  1178. package/dist/ionic/p-f1acf541.system.entry.js +0 -4
  1179. package/dist/ionic/p-f3102647.system.entry.js +0 -4
  1180. package/dist/ionic/p-fca6ef5f.system.entry.js +0 -4
  1181. package/dist/ionic/p-fec61c32.entry.js +0 -4
  1182. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1183. /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"`.
1511
+ */
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.
1287
1515
  */
1288
- "shape"?: 'round';
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,11 +2671,18 @@ 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
- "setFocus": () => Promise<void>;
2682
+ /**
2683
+ * The theme determines the visual appearance of the component.
2684
+ */
2685
+ "theme"?: "ios" | "md" | "ionic";
2307
2686
  /**
2308
2687
  * the value of the radio group.
2309
2688
  */
@@ -2347,7 +2726,7 @@ export namespace Components {
2347
2726
  */
2348
2727
  "min": number;
2349
2728
  /**
2350
- * The mode determines which platform styles to use.
2729
+ * The mode determines the platform behaviors of the component.
2351
2730
  */
2352
2731
  "mode"?: "ios" | "md";
2353
2732
  /**
@@ -2370,6 +2749,10 @@ export namespace Components {
2370
2749
  * Specifies the value granularity.
2371
2750
  */
2372
2751
  "step": number;
2752
+ /**
2753
+ * The theme determines the visual appearance of the component.
2754
+ */
2755
+ "theme"?: "ios" | "md" | "ionic";
2373
2756
  /**
2374
2757
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2375
2758
  */
@@ -2401,7 +2784,7 @@ export namespace Components {
2401
2784
  */
2402
2785
  "getProgress": () => Promise<number>;
2403
2786
  /**
2404
- * The mode determines which platform styles to use.
2787
+ * The mode determines the platform behaviors of the component.
2405
2788
  */
2406
2789
  "mode"?: "ios" | "md";
2407
2790
  /**
@@ -2420,8 +2803,16 @@ export namespace Components {
2420
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.
2421
2804
  */
2422
2805
  "snapbackDuration": string;
2806
+ /**
2807
+ * The theme determines the visual appearance of the component.
2808
+ */
2809
+ "theme"?: "ios" | "md" | "ionic";
2423
2810
  }
2424
2811
  interface IonRefresherContent {
2812
+ /**
2813
+ * The mode determines the platform behaviors of the component.
2814
+ */
2815
+ "mode"?: "ios" | "md";
2425
2816
  /**
2426
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.
2427
2818
  */
@@ -2438,8 +2829,20 @@ export namespace Components {
2438
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.
2439
2830
  */
2440
2831
  "refreshingText"?: string | IonicSafeString;
2832
+ /**
2833
+ * The theme determines the visual appearance of the component.
2834
+ */
2835
+ "theme"?: "ios" | "md" | "ionic";
2441
2836
  }
2442
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";
2443
2846
  }
2444
2847
  interface IonReorderGroup {
2445
2848
  /**
@@ -2451,6 +2854,14 @@ export namespace Components {
2451
2854
  * If `true`, the reorder will be hidden.
2452
2855
  */
2453
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";
2454
2865
  }
2455
2866
  interface IonRippleEffect {
2456
2867
  /**
@@ -2459,6 +2870,14 @@ export namespace Components {
2459
2870
  * @param y The vertical coordinate of where the ripple should start.
2460
2871
  */
2461
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";
2462
2881
  /**
2463
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.
2464
2883
  */
@@ -2481,6 +2900,14 @@ export namespace Components {
2481
2900
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2482
2901
  */
2483
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";
2484
2911
  /**
2485
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.
2486
2913
  */
@@ -2502,6 +2929,10 @@ export namespace Components {
2502
2929
  */
2503
2930
  "back": () => Promise<void>;
2504
2931
  "canTransition": () => Promise<string | boolean>;
2932
+ /**
2933
+ * The mode determines the platform behaviors of the component.
2934
+ */
2935
+ "mode"?: "ios" | "md";
2505
2936
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2506
2937
  "printDebug": () => Promise<void>;
2507
2938
  /**
@@ -2514,6 +2945,10 @@ export namespace Components {
2514
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.
2515
2946
  */
2516
2947
  "root": string;
2948
+ /**
2949
+ * The theme determines the visual appearance of the component.
2950
+ */
2951
+ "theme"?: "ios" | "md" | "ionic";
2517
2952
  /**
2518
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.
2519
2954
  */
@@ -2528,6 +2963,10 @@ export namespace Components {
2528
2963
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2529
2964
  */
2530
2965
  "href": string | undefined;
2966
+ /**
2967
+ * The mode determines the platform behaviors of the component.
2968
+ */
2969
+ "mode"?: "ios" | "md";
2531
2970
  /**
2532
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).
2533
2972
  */
@@ -2544,6 +2983,10 @@ export namespace Components {
2544
2983
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2545
2984
  */
2546
2985
  "target": string | undefined;
2986
+ /**
2987
+ * The theme determines the visual appearance of the component.
2988
+ */
2989
+ "theme"?: "ios" | "md" | "ionic";
2547
2990
  }
2548
2991
  interface IonRouterOutlet {
2549
2992
  /**
@@ -2558,13 +3001,25 @@ export namespace Components {
2558
3001
  "delegate"?: FrameworkDelegate;
2559
3002
  "getRouteId": () => Promise<RouteID | undefined>;
2560
3003
  /**
2561
- * The mode determines which platform styles to use.
3004
+ * The mode determines the platform behaviors of the component.
2562
3005
  */
2563
3006
  "mode": "ios" | "md";
2564
3007
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2565
3008
  "swipeHandler"?: SwipeGestureHandler;
3009
+ /**
3010
+ * The theme determines the visual appearance of the component.
3011
+ */
3012
+ "theme"?: "ios" | "md" | "ionic";
2566
3013
  }
2567
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";
2568
3023
  }
2569
3024
  interface IonSearchbar {
2570
3025
  /**
@@ -2584,15 +3039,15 @@ export namespace Components {
2584
3039
  */
2585
3040
  "autocorrect": 'on' | 'off';
2586
3041
  /**
2587
- * 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"`.
2588
3043
  */
2589
- "cancelButtonIcon": string;
3044
+ "cancelButtonIcon"?: string;
2590
3045
  /**
2591
- * 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"`.
2592
3047
  */
2593
3048
  "cancelButtonText": string;
2594
3049
  /**
2595
- * 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.
2596
3051
  */
2597
3052
  "clearIcon"?: string;
2598
3053
  /**
@@ -2628,7 +3083,7 @@ export namespace Components {
2628
3083
  */
2629
3084
  "minlength"?: number;
2630
3085
  /**
2631
- * The mode determines which platform styles to use.
3086
+ * The mode determines the platform behaviors of the component.
2632
3087
  */
2633
3088
  "mode"?: "ios" | "md";
2634
3089
  /**
@@ -2640,7 +3095,7 @@ export namespace Components {
2640
3095
  */
2641
3096
  "placeholder": string;
2642
3097
  /**
2643
- * 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.
2644
3099
  */
2645
3100
  "searchIcon"?: string;
2646
3101
  /**
@@ -2659,6 +3114,10 @@ export namespace Components {
2659
3114
  * If `true`, enable spellcheck on the input.
2660
3115
  */
2661
3116
  "spellcheck": boolean;
3117
+ /**
3118
+ * The theme determines the visual appearance of the component.
3119
+ */
3120
+ "theme"?: "ios" | "md" | "ionic";
2662
3121
  /**
2663
3122
  * Set the type of the input.
2664
3123
  */
@@ -2678,7 +3137,7 @@ export namespace Components {
2678
3137
  */
2679
3138
  "disabled": boolean;
2680
3139
  /**
2681
- * The mode determines which platform styles to use.
3140
+ * The mode determines the platform behaviors of the component.
2682
3141
  */
2683
3142
  "mode"?: "ios" | "md";
2684
3143
  /**
@@ -2693,6 +3152,10 @@ export namespace Components {
2693
3152
  * If `true`, users will be able to swipe between segment buttons to activate them.
2694
3153
  */
2695
3154
  "swipeGesture": boolean;
3155
+ /**
3156
+ * The theme determines the visual appearance of the component.
3157
+ */
3158
+ "theme"?: "ios" | "md" | "ionic";
2696
3159
  /**
2697
3160
  * the value of the segment.
2698
3161
  */
@@ -2712,10 +3175,14 @@ export namespace Components {
2712
3175
  */
2713
3176
  "layout"?: SegmentButtonLayout;
2714
3177
  /**
2715
- * The mode determines which platform styles to use.
3178
+ * The mode determines the platform behaviors of the component.
2716
3179
  */
2717
3180
  "mode"?: "ios" | "md";
2718
3181
  "setFocus": () => Promise<void>;
3182
+ /**
3183
+ * The theme determines the visual appearance of the component.
3184
+ */
3185
+ "theme"?: "ios" | "md" | "ionic";
2719
3186
  /**
2720
3187
  * The type of the button.
2721
3188
  */
@@ -2756,11 +3223,11 @@ export namespace Components {
2756
3223
  */
2757
3224
  "disabled": boolean;
2758
3225
  /**
2759
- * 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.
2760
3227
  */
2761
3228
  "expandedIcon"?: string;
2762
3229
  /**
2763
- * 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.
2764
3231
  */
2765
3232
  "fill"?: 'outline' | 'solid';
2766
3233
  /**
@@ -2784,7 +3251,7 @@ export namespace Components {
2784
3251
  */
2785
3252
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2786
3253
  /**
2787
- * The mode determines which platform styles to use.
3254
+ * The mode determines the platform behaviors of the component.
2788
3255
  */
2789
3256
  "mode"?: "ios" | "md";
2790
3257
  /**
@@ -2813,11 +3280,19 @@ export namespace Components {
2813
3280
  */
2814
3281
  "selectedText"?: string | null;
2815
3282
  /**
2816
- * The shape of the select. If "round" it will have an increased border radius.
3283
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
3284
+ */
3285
+ "shape"?: 'soft' | 'round' | 'rectangular';
3286
+ /**
3287
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
3288
+ */
3289
+ "size"?: 'small' | 'medium' | 'large';
3290
+ /**
3291
+ * The theme determines the visual appearance of the component.
2817
3292
  */
2818
- "shape"?: 'round';
3293
+ "theme"?: "ios" | "md" | "ionic";
2819
3294
  /**
2820
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3295
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2821
3296
  */
2822
3297
  "toggleIcon"?: string;
2823
3298
  /**
@@ -2835,6 +3310,14 @@ export namespace Components {
2835
3310
  * 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.
2836
3311
  */
2837
3312
  "disabled": boolean;
3313
+ /**
3314
+ * The mode determines the platform behaviors of the component.
3315
+ */
3316
+ "mode"?: "ios" | "md";
3317
+ /**
3318
+ * The theme determines the visual appearance of the component.
3319
+ */
3320
+ "theme"?: "ios" | "md" | "ionic";
2838
3321
  /**
2839
3322
  * The text value of the option.
2840
3323
  */
@@ -2849,6 +3332,10 @@ export namespace Components {
2849
3332
  * The text content of the popover body
2850
3333
  */
2851
3334
  "message"?: string;
3335
+ /**
3336
+ * The mode determines the platform behaviors of the component.
3337
+ */
3338
+ "mode"?: "ios" | "md";
2852
3339
  /**
2853
3340
  * If true, the select accepts multiple values
2854
3341
  */
@@ -2861,12 +3348,24 @@ export namespace Components {
2861
3348
  * The subheader text of the popover
2862
3349
  */
2863
3350
  "subHeader"?: string;
3351
+ /**
3352
+ * The theme determines the visual appearance of the component.
3353
+ */
3354
+ "theme"?: "ios" | "md" | "ionic";
2864
3355
  }
2865
3356
  interface IonSkeletonText {
2866
3357
  /**
2867
3358
  * If `true`, the skeleton text will animate.
2868
3359
  */
2869
3360
  "animated": boolean;
3361
+ /**
3362
+ * The mode determines the platform behaviors of the component.
3363
+ */
3364
+ "mode"?: "ios" | "md";
3365
+ /**
3366
+ * The theme determines the visual appearance of the component.
3367
+ */
3368
+ "theme"?: "ios" | "md" | "ionic";
2870
3369
  }
2871
3370
  interface IonSpinner {
2872
3371
  /**
@@ -2877,6 +3376,10 @@ export namespace Components {
2877
3376
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2878
3377
  */
2879
3378
  "duration"?: number;
3379
+ /**
3380
+ * The mode determines the platform behaviors of the component.
3381
+ */
3382
+ "mode"?: "ios" | "md";
2880
3383
  /**
2881
3384
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2882
3385
  */
@@ -2885,6 +3388,14 @@ export namespace Components {
2885
3388
  * If `true`, the spinner's animation will be paused.
2886
3389
  */
2887
3390
  "paused": boolean;
3391
+ /**
3392
+ * 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.
3393
+ */
3394
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3395
+ /**
3396
+ * The theme determines the visual appearance of the component.
3397
+ */
3398
+ "theme"?: "ios" | "md" | "ionic";
2888
3399
  }
2889
3400
  interface IonSplitPane {
2890
3401
  /**
@@ -2896,6 +3407,14 @@ export namespace Components {
2896
3407
  */
2897
3408
  "disabled": boolean;
2898
3409
  "isVisible": () => Promise<boolean>;
3410
+ /**
3411
+ * The mode determines the platform behaviors of the component.
3412
+ */
3413
+ "mode"?: "ios" | "md";
3414
+ /**
3415
+ * The theme determines the visual appearance of the component.
3416
+ */
3417
+ "theme"?: "ios" | "md" | "ionic";
2899
3418
  /**
2900
3419
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
2901
3420
  */
@@ -2908,6 +3427,10 @@ export namespace Components {
2908
3427
  */
2909
3428
  "component"?: ComponentRef;
2910
3429
  "delegate"?: FrameworkDelegate;
3430
+ /**
3431
+ * The mode determines the platform behaviors of the component.
3432
+ */
3433
+ "mode"?: "ios" | "md";
2911
3434
  /**
2912
3435
  * Set the active component for the tab
2913
3436
  */
@@ -2916,6 +3439,10 @@ export namespace Components {
2916
3439
  * 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.
2917
3440
  */
2918
3441
  "tab": string;
3442
+ /**
3443
+ * The theme determines the visual appearance of the component.
3444
+ */
3445
+ "theme"?: "ios" | "md" | "ionic";
2919
3446
  }
2920
3447
  interface IonTabBar {
2921
3448
  /**
@@ -2923,7 +3450,11 @@ export namespace Components {
2923
3450
  */
2924
3451
  "color"?: Color;
2925
3452
  /**
2926
- * The mode determines which platform styles to use.
3453
+ * 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"`.
3454
+ */
3455
+ "expand": 'compact' | 'full';
3456
+ /**
3457
+ * The mode determines the platform behaviors of the component.
2927
3458
  */
2928
3459
  "mode"?: "ios" | "md";
2929
3460
  /**
@@ -2931,7 +3462,15 @@ export namespace Components {
2931
3462
  */
2932
3463
  "selectedTab"?: string;
2933
3464
  /**
2934
- * 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).
3465
+ * 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.
3466
+ */
3467
+ "shape"?: 'soft' | 'round' | 'rectangular';
3468
+ /**
3469
+ * The theme determines the visual appearance of the component.
3470
+ */
3471
+ "theme"?: "ios" | "md" | "ionic";
3472
+ /**
3473
+ * 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).
2935
3474
  */
2936
3475
  "translucent": boolean;
2937
3476
  }
@@ -2953,7 +3492,7 @@ export namespace Components {
2953
3492
  */
2954
3493
  "layout"?: TabButtonLayout;
2955
3494
  /**
2956
- * The mode determines which platform styles to use.
3495
+ * The mode determines the platform behaviors of the component.
2957
3496
  */
2958
3497
  "mode"?: "ios" | "md";
2959
3498
  /**
@@ -2972,6 +3511,10 @@ export namespace Components {
2972
3511
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2973
3512
  */
2974
3513
  "target": string | undefined;
3514
+ /**
3515
+ * The theme determines the visual appearance of the component.
3516
+ */
3517
+ "theme"?: "ios" | "md" | "ionic";
2975
3518
  }
2976
3519
  interface IonTabs {
2977
3520
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2984,12 +3527,20 @@ export namespace Components {
2984
3527
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2985
3528
  */
2986
3529
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3530
+ /**
3531
+ * The mode determines the platform behaviors of the component.
3532
+ */
3533
+ "mode"?: "ios" | "md";
2987
3534
  /**
2988
3535
  * 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.
2989
3536
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2990
3537
  */
2991
3538
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2992
3539
  "setRouteId": (id: string) => Promise<RouteWrite>;
3540
+ /**
3541
+ * The theme determines the visual appearance of the component.
3542
+ */
3543
+ "theme"?: "ios" | "md" | "ionic";
2993
3544
  "useRouter": boolean;
2994
3545
  }
2995
3546
  interface IonText {
@@ -2998,9 +3549,13 @@ export namespace Components {
2998
3549
  */
2999
3550
  "color"?: Color;
3000
3551
  /**
3001
- * The mode determines which platform styles to use.
3552
+ * The mode determines the platform behaviors of the component.
3002
3553
  */
3003
3554
  "mode"?: "ios" | "md";
3555
+ /**
3556
+ * The theme determines the visual appearance of the component.
3557
+ */
3558
+ "theme"?: "ios" | "md" | "ionic";
3004
3559
  }
3005
3560
  interface IonTextarea {
3006
3561
  /**
@@ -3052,7 +3607,7 @@ export namespace Components {
3052
3607
  */
3053
3608
  "errorText"?: string;
3054
3609
  /**
3055
- * 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.
3610
+ * 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"`.
3056
3611
  */
3057
3612
  "fill"?: 'outline' | 'solid';
3058
3613
  /**
@@ -3084,7 +3639,7 @@ export namespace Components {
3084
3639
  */
3085
3640
  "minlength"?: number;
3086
3641
  /**
3087
- * The mode determines which platform styles to use.
3642
+ * The mode determines the platform behaviors of the component.
3088
3643
  */
3089
3644
  "mode"?: "ios" | "md";
3090
3645
  /**
@@ -3112,13 +3667,21 @@ export namespace Components {
3112
3667
  */
3113
3668
  "setFocus": () => Promise<void>;
3114
3669
  /**
3115
- * The shape of the textarea. If "round" it will have an increased border radius.
3670
+ * 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.
3671
+ */
3672
+ "shape"?: 'soft' | 'round' | 'rectangular';
3673
+ /**
3674
+ * 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.
3116
3675
  */
3117
- "shape"?: 'round';
3676
+ "size"?: 'small' | 'medium' | 'large';
3118
3677
  /**
3119
3678
  * If `true`, the element will have its spelling and grammar checked.
3120
3679
  */
3121
3680
  "spellcheck": boolean;
3681
+ /**
3682
+ * The theme determines the visual appearance of the component.
3683
+ */
3684
+ "theme"?: "ios" | "md" | "ionic";
3122
3685
  /**
3123
3686
  * The value of the textarea.
3124
3687
  */
@@ -3129,16 +3692,32 @@ export namespace Components {
3129
3692
  "wrap"?: 'hard' | 'soft' | 'off';
3130
3693
  }
3131
3694
  interface IonThumbnail {
3695
+ /**
3696
+ * The mode determines the platform behaviors of the component.
3697
+ */
3698
+ "mode"?: "ios" | "md";
3699
+ /**
3700
+ * The theme determines the visual appearance of the component.
3701
+ */
3702
+ "theme"?: "ios" | "md" | "ionic";
3132
3703
  }
3133
3704
  interface IonTitle {
3134
3705
  /**
3135
3706
  * 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).
3136
3707
  */
3137
3708
  "color"?: Color;
3709
+ /**
3710
+ * The mode determines the platform behaviors of the component.
3711
+ */
3712
+ "mode"?: "ios" | "md";
3138
3713
  /**
3139
3714
  * The size of the toolbar title.
3140
3715
  */
3141
3716
  "size"?: 'large' | 'small';
3717
+ /**
3718
+ * The theme determines the visual appearance of the component.
3719
+ */
3720
+ "theme"?: "ios" | "md" | "ionic";
3142
3721
  }
3143
3722
  interface IonToast {
3144
3723
  /**
@@ -3206,7 +3785,7 @@ export namespace Components {
3206
3785
  */
3207
3786
  "message"?: string | IonicSafeString;
3208
3787
  /**
3209
- * The mode determines which platform styles to use.
3788
+ * The mode determines the platform behaviors of the component.
3210
3789
  */
3211
3790
  "mode"?: "ios" | "md";
3212
3791
  /**
@@ -3230,12 +3809,20 @@ export namespace Components {
3230
3809
  * Present the toast overlay after it has been created.
3231
3810
  */
3232
3811
  "present": () => Promise<void>;
3812
+ /**
3813
+ * 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.
3814
+ */
3815
+ "shape"?: 'soft' | 'round' | 'rectangular';
3233
3816
  /**
3234
3817
  * 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.
3235
3818
  */
3236
3819
  "swipeGesture"?: ToastSwipeGestureDirection;
3237
3820
  /**
3238
- * 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).
3821
+ * The theme determines the visual appearance of the component.
3822
+ */
3823
+ "theme"?: "ios" | "md" | "ionic";
3824
+ /**
3825
+ * 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).
3239
3826
  */
3240
3827
  "translucent": boolean;
3241
3828
  /**
@@ -3273,13 +3860,17 @@ export namespace Components {
3273
3860
  */
3274
3861
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3275
3862
  /**
3276
- * The mode determines which platform styles to use.
3863
+ * The mode determines the platform behaviors of the component.
3277
3864
  */
3278
3865
  "mode"?: "ios" | "md";
3279
3866
  /**
3280
3867
  * The name of the control, which is submitted with the form data.
3281
3868
  */
3282
3869
  "name": string;
3870
+ /**
3871
+ * The theme determines the visual appearance of the component.
3872
+ */
3873
+ "theme"?: "ios" | "md" | "ionic";
3283
3874
  /**
3284
3875
  * 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>`.
3285
3876
  */
@@ -3291,9 +3882,13 @@ export namespace Components {
3291
3882
  */
3292
3883
  "color"?: Color;
3293
3884
  /**
3294
- * The mode determines which platform styles to use.
3885
+ * The mode determines the platform behaviors of the component.
3295
3886
  */
3296
3887
  "mode"?: "ios" | "md";
3888
+ /**
3889
+ * The theme determines the visual appearance of the component.
3890
+ */
3891
+ "theme"?: "ios" | "md" | "ionic";
3297
3892
  }
3298
3893
  }
3299
3894
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4811,13 +5406,17 @@ declare namespace LocalJSX {
4811
5406
  */
4812
5407
  "disabled"?: boolean;
4813
5408
  /**
4814
- * The mode determines which platform styles to use.
5409
+ * The mode determines the platform behaviors of the component.
4815
5410
  */
4816
5411
  "mode"?: "ios" | "md";
4817
5412
  /**
4818
5413
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4819
5414
  */
4820
5415
  "readonly"?: boolean;
5416
+ /**
5417
+ * The theme determines the visual appearance of the component.
5418
+ */
5419
+ "theme"?: "ios" | "md" | "ionic";
4821
5420
  /**
4822
5421
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4823
5422
  */
@@ -4845,7 +5444,7 @@ declare namespace LocalJSX {
4845
5444
  */
4846
5445
  "expand"?: 'compact' | 'inset';
4847
5446
  /**
4848
- * The mode determines which platform styles to use.
5447
+ * The mode determines the platform behaviors of the component.
4849
5448
  */
4850
5449
  "mode"?: "ios" | "md";
4851
5450
  /**
@@ -4860,6 +5459,14 @@ declare namespace LocalJSX {
4860
5459
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4861
5460
  */
4862
5461
  "readonly"?: boolean;
5462
+ /**
5463
+ * 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"`.
5464
+ */
5465
+ "shape"?: 'soft' | 'round' | 'rectangular';
5466
+ /**
5467
+ * The theme determines the visual appearance of the component.
5468
+ */
5469
+ "theme"?: "ios" | "md" | "ionic";
4863
5470
  /**
4864
5471
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4865
5472
  */
@@ -4907,7 +5514,7 @@ declare namespace LocalJSX {
4907
5514
  */
4908
5515
  "leaveAnimation"?: AnimationBuilder;
4909
5516
  /**
4910
- * The mode determines which platform styles to use.
5517
+ * The mode determines the platform behaviors of the component.
4911
5518
  */
4912
5519
  "mode"?: "ios" | "md";
4913
5520
  /**
@@ -4947,7 +5554,11 @@ declare namespace LocalJSX {
4947
5554
  */
4948
5555
  "subHeader"?: string;
4949
5556
  /**
4950
- * 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).
5557
+ * The theme determines the visual appearance of the component.
5558
+ */
5559
+ "theme"?: "ios" | "md" | "ionic";
5560
+ /**
5561
+ * 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).
4951
5562
  */
4952
5563
  "translucent"?: boolean;
4953
5564
  /**
@@ -5005,7 +5616,7 @@ declare namespace LocalJSX {
5005
5616
  */
5006
5617
  "message"?: string | IonicSafeString;
5007
5618
  /**
5008
- * The mode determines which platform styles to use.
5619
+ * The mode determines the platform behaviors of the component.
5009
5620
  */
5010
5621
  "mode"?: "ios" | "md";
5011
5622
  /**
@@ -5045,7 +5656,11 @@ declare namespace LocalJSX {
5045
5656
  */
5046
5657
  "subHeader"?: string;
5047
5658
  /**
5048
- * 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).
5659
+ * The theme determines the visual appearance of the component.
5660
+ */
5661
+ "theme"?: "ios" | "md" | "ionic";
5662
+ /**
5663
+ * 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).
5049
5664
  */
5050
5665
  "translucent"?: boolean;
5051
5666
  /**
@@ -5054,8 +5669,32 @@ declare namespace LocalJSX {
5054
5669
  "trigger"?: string | undefined;
5055
5670
  }
5056
5671
  interface IonApp {
5672
+ /**
5673
+ * The mode determines the platform behaviors of the component.
5674
+ */
5675
+ "mode"?: "ios" | "md";
5676
+ /**
5677
+ * The theme determines the visual appearance of the component.
5678
+ */
5679
+ "theme"?: "ios" | "md" | "ionic";
5057
5680
  }
5058
5681
  interface IonAvatar {
5682
+ /**
5683
+ * The mode determines the platform behaviors of the component.
5684
+ */
5685
+ "mode"?: "ios" | "md";
5686
+ /**
5687
+ * 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.
5688
+ */
5689
+ "shape"?: 'soft' | 'round' | 'rectangular';
5690
+ /**
5691
+ * 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.
5692
+ */
5693
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5694
+ /**
5695
+ * The theme determines the visual appearance of the component.
5696
+ */
5697
+ "theme"?: "ios" | "md" | "ionic";
5059
5698
  }
5060
5699
  interface IonBackButton {
5061
5700
  /**
@@ -5075,7 +5714,7 @@ declare namespace LocalJSX {
5075
5714
  */
5076
5715
  "icon"?: string | null;
5077
5716
  /**
5078
- * The mode determines which platform styles to use.
5717
+ * The mode determines the platform behaviors of the component.
5079
5718
  */
5080
5719
  "mode"?: "ios" | "md";
5081
5720
  /**
@@ -5086,12 +5725,20 @@ declare namespace LocalJSX {
5086
5725
  * The text to display in the back button.
5087
5726
  */
5088
5727
  "text"?: string | null;
5728
+ /**
5729
+ * The theme determines the visual appearance of the component.
5730
+ */
5731
+ "theme"?: "ios" | "md" | "ionic";
5089
5732
  /**
5090
5733
  * The type of the button.
5091
5734
  */
5092
5735
  "type"?: 'submit' | 'reset' | 'button';
5093
5736
  }
5094
5737
  interface IonBackdrop {
5738
+ /**
5739
+ * The mode determines the platform behaviors of the component.
5740
+ */
5741
+ "mode"?: "ios" | "md";
5095
5742
  /**
5096
5743
  * Emitted when the backdrop is tapped.
5097
5744
  */
@@ -5104,6 +5751,10 @@ declare namespace LocalJSX {
5104
5751
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5105
5752
  */
5106
5753
  "tappable"?: boolean;
5754
+ /**
5755
+ * The theme determines the visual appearance of the component.
5756
+ */
5757
+ "theme"?: "ios" | "md" | "ionic";
5107
5758
  /**
5108
5759
  * If `true`, the backdrop will be visible.
5109
5760
  */
@@ -5115,9 +5766,21 @@ declare namespace LocalJSX {
5115
5766
  */
5116
5767
  "color"?: Color;
5117
5768
  /**
5118
- * The mode determines which platform styles to use.
5769
+ * The mode determines the platform behaviors of the component.
5119
5770
  */
5120
5771
  "mode"?: "ios" | "md";
5772
+ /**
5773
+ * 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.
5774
+ */
5775
+ "shape"?: 'soft' | 'round | rectangular';
5776
+ /**
5777
+ * 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.
5778
+ */
5779
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5780
+ /**
5781
+ * The theme determines the visual appearance of the component.
5782
+ */
5783
+ "theme"?: "ios" | "md" | "ionic";
5121
5784
  }
5122
5785
  interface IonBreadcrumb {
5123
5786
  /**
@@ -5141,7 +5804,7 @@ declare namespace LocalJSX {
5141
5804
  */
5142
5805
  "href"?: string | undefined;
5143
5806
  /**
5144
- * The mode determines which platform styles to use.
5807
+ * The mode determines the platform behaviors of the component.
5145
5808
  */
5146
5809
  "mode"?: "ios" | "md";
5147
5810
  /**
@@ -5172,6 +5835,10 @@ declare namespace LocalJSX {
5172
5835
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5173
5836
  */
5174
5837
  "target"?: string | undefined;
5838
+ /**
5839
+ * The theme determines the visual appearance of the component.
5840
+ */
5841
+ "theme"?: "ios" | "md" | "ionic";
5175
5842
  }
5176
5843
  interface IonBreadcrumbs {
5177
5844
  /**
@@ -5191,13 +5858,17 @@ declare namespace LocalJSX {
5191
5858
  */
5192
5859
  "maxItems"?: number;
5193
5860
  /**
5194
- * The mode determines which platform styles to use.
5861
+ * The mode determines the platform behaviors of the component.
5195
5862
  */
5196
5863
  "mode"?: "ios" | "md";
5197
5864
  /**
5198
5865
  * Emitted when the collapsed indicator is clicked on.
5199
5866
  */
5200
5867
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5868
+ /**
5869
+ * The theme determines the visual appearance of the component.
5870
+ */
5871
+ "theme"?: "ios" | "md" | "ionic";
5201
5872
  }
5202
5873
  interface IonButton {
5203
5874
  /**
@@ -5233,7 +5904,7 @@ declare namespace LocalJSX {
5233
5904
  */
5234
5905
  "href"?: string | undefined;
5235
5906
  /**
5236
- * The mode determines which platform styles to use.
5907
+ * The mode determines the platform behaviors of the component.
5237
5908
  */
5238
5909
  "mode"?: "ios" | "md";
5239
5910
  /**
@@ -5257,13 +5928,13 @@ declare namespace LocalJSX {
5257
5928
  */
5258
5929
  "routerDirection"?: RouterDirection;
5259
5930
  /**
5260
- * Set to `"round"` for a button with more rounded corners.
5931
+ * 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.
5261
5932
  */
5262
- "shape"?: 'round';
5933
+ "shape"?: 'soft' | 'round' | 'rectangular';
5263
5934
  /**
5264
5935
  * 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.
5265
5936
  */
5266
- "size"?: 'small' | 'default' | 'large';
5937
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5267
5938
  /**
5268
5939
  * If `true`, activates a button with a heavier font weight.
5269
5940
  */
@@ -5272,6 +5943,10 @@ declare namespace LocalJSX {
5272
5943
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5273
5944
  */
5274
5945
  "target"?: string | undefined;
5946
+ /**
5947
+ * The theme determines the visual appearance of the component.
5948
+ */
5949
+ "theme"?: "ios" | "md" | "ionic";
5275
5950
  /**
5276
5951
  * The type of the button.
5277
5952
  */
@@ -5279,9 +5954,17 @@ declare namespace LocalJSX {
5279
5954
  }
5280
5955
  interface IonButtons {
5281
5956
  /**
5282
- * 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)
5957
+ * 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)
5283
5958
  */
5284
5959
  "collapse"?: boolean;
5960
+ /**
5961
+ * The mode determines the platform behaviors of the component.
5962
+ */
5963
+ "mode"?: "ios" | "md";
5964
+ /**
5965
+ * The theme determines the visual appearance of the component.
5966
+ */
5967
+ "theme"?: "ios" | "md" | "ionic";
5285
5968
  }
5286
5969
  interface IonCard {
5287
5970
  /**
@@ -5305,7 +5988,7 @@ declare namespace LocalJSX {
5305
5988
  */
5306
5989
  "href"?: string | undefined;
5307
5990
  /**
5308
- * The mode determines which platform styles to use.
5991
+ * The mode determines the platform behaviors of the component.
5309
5992
  */
5310
5993
  "mode"?: "ios" | "md";
5311
5994
  /**
@@ -5320,10 +6003,18 @@ declare namespace LocalJSX {
5320
6003
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5321
6004
  */
5322
6005
  "routerDirection"?: RouterDirection;
6006
+ /**
6007
+ * 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"`.
6008
+ */
6009
+ "shape"?: 'soft' | 'round' | 'rectangular';
5323
6010
  /**
5324
6011
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5325
6012
  */
5326
6013
  "target"?: string | undefined;
6014
+ /**
6015
+ * The theme determines the visual appearance of the component.
6016
+ */
6017
+ "theme"?: "ios" | "md" | "ionic";
5327
6018
  /**
5328
6019
  * The type of the button. Only used when an `onclick` or `button` property is present.
5329
6020
  */
@@ -5331,9 +6022,13 @@ declare namespace LocalJSX {
5331
6022
  }
5332
6023
  interface IonCardContent {
5333
6024
  /**
5334
- * The mode determines which platform styles to use.
6025
+ * The mode determines the platform behaviors of the component.
5335
6026
  */
5336
6027
  "mode"?: "ios" | "md";
6028
+ /**
6029
+ * The theme determines the visual appearance of the component.
6030
+ */
6031
+ "theme"?: "ios" | "md" | "ionic";
5337
6032
  }
5338
6033
  interface IonCardHeader {
5339
6034
  /**
@@ -5341,11 +6036,15 @@ declare namespace LocalJSX {
5341
6036
  */
5342
6037
  "color"?: Color;
5343
6038
  /**
5344
- * The mode determines which platform styles to use.
6039
+ * The mode determines the platform behaviors of the component.
5345
6040
  */
5346
6041
  "mode"?: "ios" | "md";
5347
6042
  /**
5348
- * 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).
6043
+ * The theme determines the visual appearance of the component.
6044
+ */
6045
+ "theme"?: "ios" | "md" | "ionic";
6046
+ /**
6047
+ * 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).
5349
6048
  */
5350
6049
  "translucent"?: boolean;
5351
6050
  }
@@ -5355,9 +6054,13 @@ declare namespace LocalJSX {
5355
6054
  */
5356
6055
  "color"?: Color;
5357
6056
  /**
5358
- * The mode determines which platform styles to use.
6057
+ * The mode determines the platform behaviors of the component.
5359
6058
  */
5360
6059
  "mode"?: "ios" | "md";
6060
+ /**
6061
+ * The theme determines the visual appearance of the component.
6062
+ */
6063
+ "theme"?: "ios" | "md" | "ionic";
5361
6064
  }
5362
6065
  interface IonCardTitle {
5363
6066
  /**
@@ -5365,9 +6068,13 @@ declare namespace LocalJSX {
5365
6068
  */
5366
6069
  "color"?: Color;
5367
6070
  /**
5368
- * The mode determines which platform styles to use.
6071
+ * The mode determines the platform behaviors of the component.
5369
6072
  */
5370
6073
  "mode"?: "ios" | "md";
6074
+ /**
6075
+ * The theme determines the visual appearance of the component.
6076
+ */
6077
+ "theme"?: "ios" | "md" | "ionic";
5371
6078
  }
5372
6079
  interface IonCheckbox {
5373
6080
  /**
@@ -5399,7 +6106,7 @@ declare namespace LocalJSX {
5399
6106
  */
5400
6107
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5401
6108
  /**
5402
- * The mode determines which platform styles to use.
6109
+ * The mode determines the platform behaviors of the component.
5403
6110
  */
5404
6111
  "mode"?: "ios" | "md";
5405
6112
  /**
@@ -5411,13 +6118,25 @@ declare namespace LocalJSX {
5411
6118
  */
5412
6119
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5413
6120
  /**
5414
- * 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.
6121
+ * 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.
5415
6122
  */
5416
6123
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5417
6124
  /**
5418
6125
  * Emitted when the checkbox has focus.
5419
6126
  */
5420
6127
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
6128
+ /**
6129
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6130
+ */
6131
+ "shape"?: 'soft' | 'rectangular';
6132
+ /**
6133
+ * Set to `"small"` for a checkbox with less height and padding.
6134
+ */
6135
+ "size"?: 'small';
6136
+ /**
6137
+ * The theme determines the visual appearance of the component.
6138
+ */
6139
+ "theme"?: "ios" | "md" | "ionic";
5421
6140
  /**
5422
6141
  * 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>`.
5423
6142
  */
@@ -5433,15 +6152,31 @@ declare namespace LocalJSX {
5433
6152
  */
5434
6153
  "disabled"?: boolean;
5435
6154
  /**
5436
- * The mode determines which platform styles to use.
6155
+ * The mode determines the platform behaviors of the component.
5437
6156
  */
5438
6157
  "mode"?: "ios" | "md";
5439
6158
  /**
5440
6159
  * Display an outline style button.
5441
6160
  */
5442
6161
  "outline"?: boolean;
6162
+ /**
6163
+ * 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.
6164
+ */
6165
+ "shape"?: 'soft' | 'round' | 'rectangular';
6166
+ /**
6167
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6168
+ */
6169
+ "size"?: 'small' | 'large';
6170
+ /**
6171
+ * The theme determines the visual appearance of the component.
6172
+ */
6173
+ "theme"?: "ios" | "md" | "ionic";
5443
6174
  }
5444
6175
  interface IonCol {
6176
+ /**
6177
+ * The mode determines the platform behaviors of the component.
6178
+ */
6179
+ "mode"?: "ios" | "md";
5445
6180
  /**
5446
6181
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5447
6182
  */
@@ -5538,6 +6273,10 @@ declare namespace LocalJSX {
5538
6273
  * 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.
5539
6274
  */
5540
6275
  "sizeXs"?: string;
6276
+ /**
6277
+ * The theme determines the visual appearance of the component.
6278
+ */
6279
+ "theme"?: "ios" | "md" | "ionic";
5541
6280
  }
5542
6281
  interface IonContent {
5543
6282
  /**
@@ -5556,6 +6295,10 @@ declare namespace LocalJSX {
5556
6295
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5557
6296
  */
5558
6297
  "fullscreen"?: boolean;
6298
+ /**
6299
+ * The mode determines the platform behaviors of the component.
6300
+ */
6301
+ "mode"?: "ios" | "md";
5559
6302
  /**
5560
6303
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5561
6304
  */
@@ -5580,6 +6323,10 @@ declare namespace LocalJSX {
5580
6323
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5581
6324
  */
5582
6325
  "scrollY"?: boolean;
6326
+ /**
6327
+ * The theme determines the visual appearance of the component.
6328
+ */
6329
+ "theme"?: "ios" | "md" | "ionic";
5583
6330
  }
5584
6331
  interface IonDatetime {
5585
6332
  /**
@@ -5647,7 +6394,7 @@ declare namespace LocalJSX {
5647
6394
  */
5648
6395
  "minuteValues"?: number[] | number | string;
5649
6396
  /**
5650
- * The mode determines which platform styles to use.
6397
+ * The mode determines the platform behaviors of the component.
5651
6398
  */
5652
6399
  "mode"?: "ios" | "md";
5653
6400
  /**
@@ -5710,6 +6457,10 @@ declare namespace LocalJSX {
5710
6457
  * 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.
5711
6458
  */
5712
6459
  "size"?: 'cover' | 'fixed';
6460
+ /**
6461
+ * The theme determines the visual appearance of the component.
6462
+ */
6463
+ "theme"?: "ios" | "md" | "ionic";
5713
6464
  /**
5714
6465
  * 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.
5715
6466
  */
@@ -5737,9 +6488,13 @@ declare namespace LocalJSX {
5737
6488
  */
5738
6489
  "disabled"?: boolean;
5739
6490
  /**
5740
- * The mode determines which platform styles to use.
6491
+ * The mode determines the platform behaviors of the component.
5741
6492
  */
5742
6493
  "mode"?: "ios" | "md";
6494
+ /**
6495
+ * The theme determines the visual appearance of the component.
6496
+ */
6497
+ "theme"?: "ios" | "md" | "ionic";
5743
6498
  }
5744
6499
  interface IonFab {
5745
6500
  /**
@@ -5754,6 +6509,14 @@ declare namespace LocalJSX {
5754
6509
  * Where to align the fab horizontally in the viewport.
5755
6510
  */
5756
6511
  "horizontal"?: 'start' | 'end' | 'center';
6512
+ /**
6513
+ * The mode determines the platform behaviors of the component.
6514
+ */
6515
+ "mode"?: "ios" | "md";
6516
+ /**
6517
+ * The theme determines the visual appearance of the component.
6518
+ */
6519
+ "theme"?: "ios" | "md" | "ionic";
5757
6520
  /**
5758
6521
  * Where to align the fab vertically in the viewport.
5759
6522
  */
@@ -5785,7 +6548,7 @@ declare namespace LocalJSX {
5785
6548
  */
5786
6549
  "href"?: string | undefined;
5787
6550
  /**
5788
- * The mode determines which platform styles to use.
6551
+ * The mode determines the platform behaviors of the component.
5789
6552
  */
5790
6553
  "mode"?: "ios" | "md";
5791
6554
  /**
@@ -5821,7 +6584,11 @@ declare namespace LocalJSX {
5821
6584
  */
5822
6585
  "target"?: string | undefined;
5823
6586
  /**
5824
- * 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).
6587
+ * The theme determines the visual appearance of the component.
6588
+ */
6589
+ "theme"?: "ios" | "md" | "ionic";
6590
+ /**
6591
+ * 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).
5825
6592
  */
5826
6593
  "translucent"?: boolean;
5827
6594
  /**
@@ -5834,22 +6601,34 @@ declare namespace LocalJSX {
5834
6601
  * If `true`, the fab list will show all fab buttons in the list.
5835
6602
  */
5836
6603
  "activated"?: boolean;
6604
+ /**
6605
+ * The mode determines the platform behaviors of the component.
6606
+ */
6607
+ "mode"?: "ios" | "md";
5837
6608
  /**
5838
6609
  * The side the fab list will show on relative to the main fab button.
5839
6610
  */
5840
6611
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6612
+ /**
6613
+ * The theme determines the visual appearance of the component.
6614
+ */
6615
+ "theme"?: "ios" | "md" | "ionic";
5841
6616
  }
5842
6617
  interface IonFooter {
5843
6618
  /**
5844
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6619
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5845
6620
  */
5846
6621
  "collapse"?: 'fade';
5847
6622
  /**
5848
- * The mode determines which platform styles to use.
6623
+ * The mode determines the platform behaviors of the component.
5849
6624
  */
5850
6625
  "mode"?: "ios" | "md";
5851
6626
  /**
5852
- * 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.
6627
+ * The theme determines the visual appearance of the component.
6628
+ */
6629
+ "theme"?: "ios" | "md" | "ionic";
6630
+ /**
6631
+ * 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.
5853
6632
  */
5854
6633
  "translucent"?: boolean;
5855
6634
  }
@@ -5858,18 +6637,34 @@ declare namespace LocalJSX {
5858
6637
  * If `true`, the grid will have a fixed width based on the screen size.
5859
6638
  */
5860
6639
  "fixed"?: boolean;
6640
+ /**
6641
+ * The mode determines the platform behaviors of the component.
6642
+ */
6643
+ "mode"?: "ios" | "md";
6644
+ /**
6645
+ * The theme determines the visual appearance of the component.
6646
+ */
6647
+ "theme"?: "ios" | "md" | "ionic";
5861
6648
  }
5862
6649
  interface IonHeader {
5863
6650
  /**
5864
- * 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)
6651
+ * 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)
5865
6652
  */
5866
6653
  "collapse"?: 'condense' | 'fade';
5867
6654
  /**
5868
- * The mode determines which platform styles to use.
6655
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6656
+ */
6657
+ "divider"?: boolean;
6658
+ /**
6659
+ * The mode determines the platform behaviors of the component.
5869
6660
  */
5870
6661
  "mode"?: "ios" | "md";
5871
6662
  /**
5872
- * 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.
6663
+ * The theme determines the visual appearance of the component.
6664
+ */
6665
+ "theme"?: "ios" | "md" | "ionic";
6666
+ /**
6667
+ * 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.
5873
6668
  */
5874
6669
  "translucent"?: boolean;
5875
6670
  }
@@ -5878,6 +6673,10 @@ declare namespace LocalJSX {
5878
6673
  * 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.
5879
6674
  */
5880
6675
  "alt"?: string;
6676
+ /**
6677
+ * The mode determines the platform behaviors of the component.
6678
+ */
6679
+ "mode"?: "ios" | "md";
5881
6680
  /**
5882
6681
  * Emitted when the img fails to load
5883
6682
  */
@@ -5894,12 +6693,20 @@ declare namespace LocalJSX {
5894
6693
  * The image URL. This attribute is mandatory for the `<img>` element.
5895
6694
  */
5896
6695
  "src"?: string;
6696
+ /**
6697
+ * The theme determines the visual appearance of the component.
6698
+ */
6699
+ "theme"?: "ios" | "md" | "ionic";
5897
6700
  }
5898
6701
  interface IonInfiniteScroll {
5899
6702
  /**
5900
6703
  * 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.
5901
6704
  */
5902
6705
  "disabled"?: boolean;
6706
+ /**
6707
+ * The mode determines the platform behaviors of the component.
6708
+ */
6709
+ "mode"?: "ios" | "md";
5903
6710
  /**
5904
6711
  * 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.
5905
6712
  */
@@ -5908,6 +6715,10 @@ declare namespace LocalJSX {
5908
6715
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5909
6716
  */
5910
6717
  "position"?: 'top' | 'bottom';
6718
+ /**
6719
+ * The theme determines the visual appearance of the component.
6720
+ */
6721
+ "theme"?: "ios" | "md" | "ionic";
5911
6722
  /**
5912
6723
  * 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.
5913
6724
  */
@@ -5922,6 +6733,14 @@ declare namespace LocalJSX {
5922
6733
  * 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.
5923
6734
  */
5924
6735
  "loadingText"?: string | IonicSafeString;
6736
+ /**
6737
+ * The mode determines the platform behaviors of the component.
6738
+ */
6739
+ "mode"?: "ios" | "md";
6740
+ /**
6741
+ * The theme determines the visual appearance of the component.
6742
+ */
6743
+ "theme"?: "ios" | "md" | "ionic";
5925
6744
  }
5926
6745
  interface IonInput {
5927
6746
  /**
@@ -5981,7 +6800,7 @@ declare namespace LocalJSX {
5981
6800
  */
5982
6801
  "errorText"?: string;
5983
6802
  /**
5984
- * 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.
6803
+ * 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"`.
5985
6804
  */
5986
6805
  "fill"?: 'outline' | 'solid';
5987
6806
  /**
@@ -5997,7 +6816,7 @@ declare namespace LocalJSX {
5997
6816
  */
5998
6817
  "label"?: string;
5999
6818
  /**
6000
- * 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 ("...").
6819
+ * 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.
6001
6820
  */
6002
6821
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6003
6822
  /**
@@ -6017,7 +6836,7 @@ declare namespace LocalJSX {
6017
6836
  */
6018
6837
  "minlength"?: number;
6019
6838
  /**
6020
- * The mode determines which platform styles to use.
6839
+ * The mode determines the platform behaviors of the component.
6021
6840
  */
6022
6841
  "mode"?: "ios" | "md";
6023
6842
  /**
@@ -6061,9 +6880,13 @@ declare namespace LocalJSX {
6061
6880
  */
6062
6881
  "required"?: boolean;
6063
6882
  /**
6064
- * The shape of the input. If "round" it will have an increased border radius.
6883
+ * 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"`.
6065
6884
  */
6066
- "shape"?: 'round';
6885
+ "shape"?: 'soft' | 'round' | 'rectangular';
6886
+ /**
6887
+ * 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.
6888
+ */
6889
+ "size"?: 'medium' | 'large' | 'xlarge';
6067
6890
  /**
6068
6891
  * If `true`, the element will have its spelling and grammar checked.
6069
6892
  */
@@ -6072,6 +6895,10 @@ declare namespace LocalJSX {
6072
6895
  * 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.
6073
6896
  */
6074
6897
  "step"?: string;
6898
+ /**
6899
+ * The theme determines the visual appearance of the component.
6900
+ */
6901
+ "theme"?: "ios" | "md" | "ionic";
6075
6902
  /**
6076
6903
  * The type of control to display. The default type is text.
6077
6904
  */
@@ -6109,7 +6936,7 @@ declare namespace LocalJSX {
6109
6936
  */
6110
6937
  "color"?: Color;
6111
6938
  /**
6112
- * 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.
6939
+ * 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.
6113
6940
  */
6114
6941
  "detail"?: boolean;
6115
6942
  /**
@@ -6133,7 +6960,7 @@ declare namespace LocalJSX {
6133
6960
  */
6134
6961
  "lines"?: 'full' | 'inset' | 'none';
6135
6962
  /**
6136
- * The mode determines which platform styles to use.
6963
+ * The mode determines the platform behaviors of the component.
6137
6964
  */
6138
6965
  "mode"?: "ios" | "md";
6139
6966
  /**
@@ -6152,6 +6979,10 @@ declare namespace LocalJSX {
6152
6979
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6153
6980
  */
6154
6981
  "target"?: string | undefined;
6982
+ /**
6983
+ * The theme determines the visual appearance of the component.
6984
+ */
6985
+ "theme"?: "ios" | "md" | "ionic";
6155
6986
  /**
6156
6987
  * The type of the button. Only used when an `onclick` or `button` property is present.
6157
6988
  */
@@ -6163,15 +6994,27 @@ declare namespace LocalJSX {
6163
6994
  */
6164
6995
  "color"?: Color;
6165
6996
  /**
6166
- * The mode determines which platform styles to use.
6997
+ * The mode determines the platform behaviors of the component.
6167
6998
  */
6168
6999
  "mode"?: "ios" | "md";
6169
7000
  /**
6170
7001
  * 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
6171
7002
  */
6172
7003
  "sticky"?: boolean;
7004
+ /**
7005
+ * The theme determines the visual appearance of the component.
7006
+ */
7007
+ "theme"?: "ios" | "md" | "ionic";
6173
7008
  }
6174
7009
  interface IonItemGroup {
7010
+ /**
7011
+ * The mode determines the platform behaviors of the component.
7012
+ */
7013
+ "mode"?: "ios" | "md";
7014
+ /**
7015
+ * The theme determines the visual appearance of the component.
7016
+ */
7017
+ "theme"?: "ios" | "md" | "ionic";
6175
7018
  }
6176
7019
  interface IonItemOption {
6177
7020
  /**
@@ -6195,23 +7038,35 @@ declare namespace LocalJSX {
6195
7038
  */
6196
7039
  "href"?: string | undefined;
6197
7040
  /**
6198
- * The mode determines which platform styles to use.
7041
+ * The mode determines the platform behaviors of the component.
6199
7042
  */
6200
7043
  "mode"?: "ios" | "md";
6201
7044
  /**
6202
7045
  * 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).
6203
7046
  */
6204
7047
  "rel"?: string | undefined;
7048
+ /**
7049
+ * 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.
7050
+ */
7051
+ "shape"?: 'soft' | 'round' | 'rectangular';
6205
7052
  /**
6206
7053
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6207
7054
  */
6208
7055
  "target"?: string | undefined;
7056
+ /**
7057
+ * The theme determines the visual appearance of the component.
7058
+ */
7059
+ "theme"?: "ios" | "md" | "ionic";
6209
7060
  /**
6210
7061
  * The type of the button.
6211
7062
  */
6212
7063
  "type"?: 'submit' | 'reset' | 'button';
6213
7064
  }
6214
7065
  interface IonItemOptions {
7066
+ /**
7067
+ * The mode determines the platform behaviors of the component.
7068
+ */
7069
+ "mode"?: "ios" | "md";
6215
7070
  /**
6216
7071
  * Emitted when the item has been fully swiped.
6217
7072
  */
@@ -6220,16 +7075,28 @@ declare namespace LocalJSX {
6220
7075
  * 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.
6221
7076
  */
6222
7077
  "side"?: Side;
7078
+ /**
7079
+ * The theme determines the visual appearance of the component.
7080
+ */
7081
+ "theme"?: "ios" | "md" | "ionic";
6223
7082
  }
6224
7083
  interface IonItemSliding {
6225
7084
  /**
6226
7085
  * If `true`, the user cannot interact with the sliding item.
6227
7086
  */
6228
7087
  "disabled"?: boolean;
7088
+ /**
7089
+ * The mode determines the platform behaviors of the component.
7090
+ */
7091
+ "mode"?: "ios" | "md";
6229
7092
  /**
6230
7093
  * Emitted when the sliding position changes.
6231
7094
  */
6232
7095
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7096
+ /**
7097
+ * The theme determines the visual appearance of the component.
7098
+ */
7099
+ "theme"?: "ios" | "md" | "ionic";
6233
7100
  }
6234
7101
  interface IonLabel {
6235
7102
  /**
@@ -6237,13 +7104,17 @@ declare namespace LocalJSX {
6237
7104
  */
6238
7105
  "color"?: Color;
6239
7106
  /**
6240
- * The mode determines which platform styles to use.
7107
+ * The mode determines the platform behaviors of the component.
6241
7108
  */
6242
7109
  "mode"?: "ios" | "md";
6243
7110
  /**
6244
7111
  * The position determines where and how the label behaves inside an item.
6245
7112
  */
6246
7113
  "position"?: 'fixed' | 'stacked' | 'floating';
7114
+ /**
7115
+ * The theme determines the visual appearance of the component.
7116
+ */
7117
+ "theme"?: "ios" | "md" | "ionic";
6247
7118
  }
6248
7119
  interface IonList {
6249
7120
  /**
@@ -6255,9 +7126,17 @@ declare namespace LocalJSX {
6255
7126
  */
6256
7127
  "lines"?: 'full' | 'inset' | 'none';
6257
7128
  /**
6258
- * The mode determines which platform styles to use.
7129
+ * The mode determines the platform behaviors of the component.
6259
7130
  */
6260
7131
  "mode"?: "ios" | "md";
7132
+ /**
7133
+ * 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.
7134
+ */
7135
+ "shape"?: 'soft' | 'round' | 'rectangular';
7136
+ /**
7137
+ * The theme determines the visual appearance of the component.
7138
+ */
7139
+ "theme"?: "ios" | "md" | "ionic";
6261
7140
  }
6262
7141
  interface IonListHeader {
6263
7142
  /**
@@ -6269,9 +7148,13 @@ declare namespace LocalJSX {
6269
7148
  */
6270
7149
  "lines"?: 'full' | 'inset' | 'none';
6271
7150
  /**
6272
- * The mode determines which platform styles to use.
7151
+ * The mode determines the platform behaviors of the component.
6273
7152
  */
6274
7153
  "mode"?: "ios" | "md";
7154
+ /**
7155
+ * The theme determines the visual appearance of the component.
7156
+ */
7157
+ "theme"?: "ios" | "md" | "ionic";
6275
7158
  }
6276
7159
  interface IonLoading {
6277
7160
  /**
@@ -6315,7 +7198,7 @@ declare namespace LocalJSX {
6315
7198
  */
6316
7199
  "message"?: string | IonicSafeString;
6317
7200
  /**
6318
- * The mode determines which platform styles to use.
7201
+ * The mode determines the platform behaviors of the component.
6319
7202
  */
6320
7203
  "mode"?: "ios" | "md";
6321
7204
  /**
@@ -6359,7 +7242,11 @@ declare namespace LocalJSX {
6359
7242
  */
6360
7243
  "spinner"?: SpinnerTypes | null;
6361
7244
  /**
6362
- * 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).
7245
+ * The theme determines the visual appearance of the component.
7246
+ */
7247
+ "theme"?: "ios" | "md" | "ionic";
7248
+ /**
7249
+ * 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).
6363
7250
  */
6364
7251
  "translucent"?: boolean;
6365
7252
  /**
@@ -6384,6 +7271,10 @@ declare namespace LocalJSX {
6384
7271
  * An id for the menu.
6385
7272
  */
6386
7273
  "menuId"?: string;
7274
+ /**
7275
+ * The mode determines the platform behaviors of the component.
7276
+ */
7277
+ "mode"?: "ios" | "md";
6387
7278
  /**
6388
7279
  * Emitted when the menu is closed.
6389
7280
  */
@@ -6408,6 +7299,10 @@ declare namespace LocalJSX {
6408
7299
  * If `true`, swiping the menu is enabled.
6409
7300
  */
6410
7301
  "swipeGesture"?: boolean;
7302
+ /**
7303
+ * The theme determines the visual appearance of the component.
7304
+ */
7305
+ "theme"?: "ios" | "md" | "ionic";
6411
7306
  /**
6412
7307
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6413
7308
  */
@@ -6431,9 +7326,13 @@ declare namespace LocalJSX {
6431
7326
  */
6432
7327
  "menu"?: string;
6433
7328
  /**
6434
- * The mode determines which platform styles to use.
7329
+ * The mode determines the platform behaviors of the component.
6435
7330
  */
6436
7331
  "mode"?: "ios" | "md";
7332
+ /**
7333
+ * The theme determines the visual appearance of the component.
7334
+ */
7335
+ "theme"?: "ios" | "md" | "ionic";
6437
7336
  /**
6438
7337
  * The type of the button.
6439
7338
  */
@@ -6448,6 +7347,14 @@ declare namespace LocalJSX {
6448
7347
  * 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.
6449
7348
  */
6450
7349
  "menu"?: string;
7350
+ /**
7351
+ * The mode determines the platform behaviors of the component.
7352
+ */
7353
+ "mode"?: "ios" | "md";
7354
+ /**
7355
+ * The theme determines the visual appearance of the component.
7356
+ */
7357
+ "theme"?: "ios" | "md" | "ionic";
6451
7358
  }
6452
7359
  interface IonModal {
6453
7360
  /**
@@ -6511,7 +7418,7 @@ declare namespace LocalJSX {
6511
7418
  */
6512
7419
  "leaveAnimation"?: AnimationBuilder;
6513
7420
  /**
6514
- * The mode determines which platform styles to use.
7421
+ * The mode determines the platform behaviors of the component.
6515
7422
  */
6516
7423
  "mode"?: "ios" | "md";
6517
7424
  /**
@@ -6554,10 +7461,18 @@ declare namespace LocalJSX {
6554
7461
  * 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.
6555
7462
  */
6556
7463
  "presentingElement"?: HTMLElement;
7464
+ /**
7465
+ * 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.
7466
+ */
7467
+ "shape"?: 'soft' | 'round' | 'rectangular';
6557
7468
  /**
6558
7469
  * 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.
6559
7470
  */
6560
7471
  "showBackdrop"?: boolean;
7472
+ /**
7473
+ * The theme determines the visual appearance of the component.
7474
+ */
7475
+ "theme"?: "ios" | "md" | "ionic";
6561
7476
  /**
6562
7477
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6563
7478
  */
@@ -6569,9 +7484,13 @@ declare namespace LocalJSX {
6569
7484
  */
6570
7485
  "animated"?: boolean;
6571
7486
  /**
6572
- * 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.
7487
+ * 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.
6573
7488
  */
6574
7489
  "animation"?: AnimationBuilder;
7490
+ /**
7491
+ * The mode determines the platform behaviors of the component.
7492
+ */
7493
+ "mode"?: "ios" | "md";
6575
7494
  /**
6576
7495
  * Event fired when the nav has changed components
6577
7496
  */
@@ -6592,6 +7511,10 @@ declare namespace LocalJSX {
6592
7511
  * If the nav component should allow for swipe-to-go-back.
6593
7512
  */
6594
7513
  "swipeGesture"?: boolean;
7514
+ /**
7515
+ * The theme determines the visual appearance of the component.
7516
+ */
7517
+ "theme"?: "ios" | "md" | "ionic";
6595
7518
  }
6596
7519
  interface IonNavLink {
6597
7520
  /**
@@ -6602,6 +7525,10 @@ declare namespace LocalJSX {
6602
7525
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6603
7526
  */
6604
7527
  "componentProps"?: ComponentProps;
7528
+ /**
7529
+ * The mode determines the platform behaviors of the component.
7530
+ */
7531
+ "mode"?: "ios" | "md";
6605
7532
  /**
6606
7533
  * The transition animation when navigating to another page.
6607
7534
  */
@@ -6610,6 +7537,10 @@ declare namespace LocalJSX {
6610
7537
  * The transition direction when navigating to another page.
6611
7538
  */
6612
7539
  "routerDirection"?: RouterDirection;
7540
+ /**
7541
+ * The theme determines the visual appearance of the component.
7542
+ */
7543
+ "theme"?: "ios" | "md" | "ionic";
6613
7544
  }
6614
7545
  interface IonNote {
6615
7546
  /**
@@ -6617,15 +7548,23 @@ declare namespace LocalJSX {
6617
7548
  */
6618
7549
  "color"?: Color;
6619
7550
  /**
6620
- * The mode determines which platform styles to use.
7551
+ * The mode determines the platform behaviors of the component.
6621
7552
  */
6622
7553
  "mode"?: "ios" | "md";
7554
+ /**
7555
+ * The theme determines the visual appearance of the component.
7556
+ */
7557
+ "theme"?: "ios" | "md" | "ionic";
6623
7558
  }
6624
7559
  interface IonPicker {
6625
7560
  /**
6626
- * The mode determines which platform styles to use.
7561
+ * The mode determines the platform behaviors of the component.
6627
7562
  */
6628
7563
  "mode"?: "ios" | "md";
7564
+ /**
7565
+ * The theme determines the visual appearance of the component.
7566
+ */
7567
+ "theme"?: "ios" | "md" | "ionic";
6629
7568
  }
6630
7569
  interface IonPickerColumn {
6631
7570
  /**
@@ -6637,13 +7576,17 @@ declare namespace LocalJSX {
6637
7576
  */
6638
7577
  "disabled"?: boolean;
6639
7578
  /**
6640
- * The mode determines which platform styles to use.
7579
+ * The mode determines the platform behaviors of the component.
6641
7580
  */
6642
7581
  "mode"?: "ios" | "md";
6643
7582
  /**
6644
7583
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6645
7584
  */
6646
7585
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7586
+ /**
7587
+ * The theme determines the visual appearance of the component.
7588
+ */
7589
+ "theme"?: "ios" | "md" | "ionic";
6647
7590
  /**
6648
7591
  * The selected option in the picker.
6649
7592
  */
@@ -6658,6 +7601,14 @@ declare namespace LocalJSX {
6658
7601
  * If `true`, the user cannot interact with the picker column option.
6659
7602
  */
6660
7603
  "disabled"?: boolean;
7604
+ /**
7605
+ * The mode determines the platform behaviors of the component.
7606
+ */
7607
+ "mode"?: "ios" | "md";
7608
+ /**
7609
+ * The theme determines the visual appearance of the component.
7610
+ */
7611
+ "theme"?: "ios" | "md" | "ionic";
6661
7612
  /**
6662
7613
  * The text value of the option.
6663
7614
  */
@@ -6709,7 +7660,7 @@ declare namespace LocalJSX {
6709
7660
  */
6710
7661
  "leaveAnimation"?: AnimationBuilder;
6711
7662
  /**
6712
- * The mode determines which platform styles to use.
7663
+ * The mode determines the platform behaviors of the component.
6713
7664
  */
6714
7665
  "mode"?: "ios" | "md";
6715
7666
  /**
@@ -6748,6 +7699,10 @@ declare namespace LocalJSX {
6748
7699
  * If `true`, a backdrop will be displayed behind the picker.
6749
7700
  */
6750
7701
  "showBackdrop"?: boolean;
7702
+ /**
7703
+ * The theme determines the visual appearance of the component.
7704
+ */
7705
+ "theme"?: "ios" | "md" | "ionic";
6751
7706
  /**
6752
7707
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6753
7708
  */
@@ -6761,7 +7716,7 @@ declare namespace LocalJSX {
6761
7716
  }
6762
7717
  interface IonPopover {
6763
7718
  /**
6764
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7719
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6765
7720
  */
6766
7721
  "alignment"?: PositionAlign;
6767
7722
  /**
@@ -6769,7 +7724,7 @@ declare namespace LocalJSX {
6769
7724
  */
6770
7725
  "animated"?: boolean;
6771
7726
  /**
6772
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7727
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6773
7728
  */
6774
7729
  "arrow"?: boolean;
6775
7730
  /**
@@ -6821,7 +7776,7 @@ declare namespace LocalJSX {
6821
7776
  */
6822
7777
  "leaveAnimation"?: AnimationBuilder;
6823
7778
  /**
6824
- * The mode determines which platform styles to use.
7779
+ * The mode determines the platform behaviors of the component.
6825
7780
  */
6826
7781
  "mode"?: "ios" | "md";
6827
7782
  /**
@@ -6873,7 +7828,11 @@ declare namespace LocalJSX {
6873
7828
  */
6874
7829
  "size"?: PopoverSize;
6875
7830
  /**
6876
- * 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).
7831
+ * The theme determines the visual appearance of the component.
7832
+ */
7833
+ "theme"?: "ios" | "md" | "ionic";
7834
+ /**
7835
+ * 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).
6877
7836
  */
6878
7837
  "translucent"?: boolean;
6879
7838
  /**
@@ -6895,13 +7854,17 @@ declare namespace LocalJSX {
6895
7854
  */
6896
7855
  "color"?: Color;
6897
7856
  /**
6898
- * The mode determines which platform styles to use.
7857
+ * The mode determines the platform behaviors of the component.
6899
7858
  */
6900
7859
  "mode"?: "ios" | "md";
6901
7860
  /**
6902
7861
  * If true, reverse the progress bar direction.
6903
7862
  */
6904
7863
  "reversed"?: boolean;
7864
+ /**
7865
+ * The theme determines the visual appearance of the component.
7866
+ */
7867
+ "theme"?: "ios" | "md" | "ionic";
6905
7868
  /**
6906
7869
  * 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).
6907
7870
  */
@@ -6933,7 +7896,7 @@ declare namespace LocalJSX {
6933
7896
  */
6934
7897
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6935
7898
  /**
6936
- * The mode determines which platform styles to use.
7899
+ * The mode determines the platform behaviors of the component.
6937
7900
  */
6938
7901
  "mode"?: "ios" | "md";
6939
7902
  /**
@@ -6948,6 +7911,10 @@ declare namespace LocalJSX {
6948
7911
  * Emitted when the radio button has focus.
6949
7912
  */
6950
7913
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7914
+ /**
7915
+ * The theme determines the visual appearance of the component.
7916
+ */
7917
+ "theme"?: "ios" | "md" | "ionic";
6951
7918
  /**
6952
7919
  * the value of the radio.
6953
7920
  */
@@ -6962,6 +7929,10 @@ declare namespace LocalJSX {
6962
7929
  * 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.
6963
7930
  */
6964
7931
  "compareWith"?: string | RadioGroupCompareFn | null;
7932
+ /**
7933
+ * The mode determines the platform behaviors of the component.
7934
+ */
7935
+ "mode"?: "ios" | "md";
6965
7936
  /**
6966
7937
  * The name of the control, which is submitted with the form data.
6967
7938
  */
@@ -6970,6 +7941,10 @@ declare namespace LocalJSX {
6970
7941
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6971
7942
  */
6972
7943
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7944
+ /**
7945
+ * The theme determines the visual appearance of the component.
7946
+ */
7947
+ "theme"?: "ios" | "md" | "ionic";
6973
7948
  /**
6974
7949
  * the value of the radio group.
6975
7950
  */
@@ -7013,7 +7988,7 @@ declare namespace LocalJSX {
7013
7988
  */
7014
7989
  "min"?: number;
7015
7990
  /**
7016
- * The mode determines which platform styles to use.
7991
+ * The mode determines the platform behaviors of the component.
7017
7992
  */
7018
7993
  "mode"?: "ios" | "md";
7019
7994
  /**
@@ -7060,6 +8035,10 @@ declare namespace LocalJSX {
7060
8035
  * Specifies the value granularity.
7061
8036
  */
7062
8037
  "step"?: number;
8038
+ /**
8039
+ * The theme determines the visual appearance of the component.
8040
+ */
8041
+ "theme"?: "ios" | "md" | "ionic";
7063
8042
  /**
7064
8043
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7065
8044
  */
@@ -7079,7 +8058,7 @@ declare namespace LocalJSX {
7079
8058
  */
7080
8059
  "disabled"?: boolean;
7081
8060
  /**
7082
- * The mode determines which platform styles to use.
8061
+ * The mode determines the platform behaviors of the component.
7083
8062
  */
7084
8063
  "mode"?: "ios" | "md";
7085
8064
  /**
@@ -7110,8 +8089,16 @@ declare namespace LocalJSX {
7110
8089
  * 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.
7111
8090
  */
7112
8091
  "snapbackDuration"?: string;
8092
+ /**
8093
+ * The theme determines the visual appearance of the component.
8094
+ */
8095
+ "theme"?: "ios" | "md" | "ionic";
7113
8096
  }
7114
8097
  interface IonRefresherContent {
8098
+ /**
8099
+ * The mode determines the platform behaviors of the component.
8100
+ */
8101
+ "mode"?: "ios" | "md";
7115
8102
  /**
7116
8103
  * 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.
7117
8104
  */
@@ -7128,20 +8115,48 @@ declare namespace LocalJSX {
7128
8115
  * 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.
7129
8116
  */
7130
8117
  "refreshingText"?: string | IonicSafeString;
8118
+ /**
8119
+ * The theme determines the visual appearance of the component.
8120
+ */
8121
+ "theme"?: "ios" | "md" | "ionic";
7131
8122
  }
7132
8123
  interface IonReorder {
8124
+ /**
8125
+ * The mode determines the platform behaviors of the component.
8126
+ */
8127
+ "mode"?: "ios" | "md";
8128
+ /**
8129
+ * The theme determines the visual appearance of the component.
8130
+ */
8131
+ "theme"?: "ios" | "md" | "ionic";
7133
8132
  }
7134
8133
  interface IonReorderGroup {
7135
8134
  /**
7136
8135
  * If `true`, the reorder will be hidden.
7137
8136
  */
7138
8137
  "disabled"?: boolean;
8138
+ /**
8139
+ * The mode determines the platform behaviors of the component.
8140
+ */
8141
+ "mode"?: "ios" | "md";
7139
8142
  /**
7140
8143
  * 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.
7141
8144
  */
7142
8145
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8146
+ /**
8147
+ * The theme determines the visual appearance of the component.
8148
+ */
8149
+ "theme"?: "ios" | "md" | "ionic";
7143
8150
  }
7144
8151
  interface IonRippleEffect {
8152
+ /**
8153
+ * The mode determines the platform behaviors of the component.
8154
+ */
8155
+ "mode"?: "ios" | "md";
8156
+ /**
8157
+ * The theme determines the visual appearance of the component.
8158
+ */
8159
+ "theme"?: "ios" | "md" | "ionic";
7145
8160
  /**
7146
8161
  * 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.
7147
8162
  */
@@ -7164,10 +8179,18 @@ declare namespace LocalJSX {
7164
8179
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7165
8180
  */
7166
8181
  "componentProps"?: { [key: string]: any };
8182
+ /**
8183
+ * The mode determines the platform behaviors of the component.
8184
+ */
8185
+ "mode"?: "ios" | "md";
7167
8186
  /**
7168
8187
  * Used internally by `ion-router` to know when this route did change.
7169
8188
  */
7170
8189
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8190
+ /**
8191
+ * The theme determines the visual appearance of the component.
8192
+ */
8193
+ "theme"?: "ios" | "md" | "ionic";
7171
8194
  /**
7172
8195
  * 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.
7173
8196
  */
@@ -7188,6 +8211,10 @@ declare namespace LocalJSX {
7188
8211
  "to": string | undefined | null;
7189
8212
  }
7190
8213
  interface IonRouter {
8214
+ /**
8215
+ * The mode determines the platform behaviors of the component.
8216
+ */
8217
+ "mode"?: "ios" | "md";
7191
8218
  /**
7192
8219
  * Emitted when the route had changed
7193
8220
  */
@@ -7200,6 +8227,10 @@ declare namespace LocalJSX {
7200
8227
  * 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.
7201
8228
  */
7202
8229
  "root"?: string;
8230
+ /**
8231
+ * The theme determines the visual appearance of the component.
8232
+ */
8233
+ "theme"?: "ios" | "md" | "ionic";
7203
8234
  /**
7204
8235
  * 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.
7205
8236
  */
@@ -7214,6 +8245,10 @@ declare namespace LocalJSX {
7214
8245
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7215
8246
  */
7216
8247
  "href"?: string | undefined;
8248
+ /**
8249
+ * The mode determines the platform behaviors of the component.
8250
+ */
8251
+ "mode"?: "ios" | "md";
7217
8252
  /**
7218
8253
  * 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).
7219
8254
  */
@@ -7230,6 +8265,10 @@ declare namespace LocalJSX {
7230
8265
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7231
8266
  */
7232
8267
  "target"?: string | undefined;
8268
+ /**
8269
+ * The theme determines the visual appearance of the component.
8270
+ */
8271
+ "theme"?: "ios" | "md" | "ionic";
7233
8272
  }
7234
8273
  interface IonRouterOutlet {
7235
8274
  /**
@@ -7241,11 +8280,23 @@ declare namespace LocalJSX {
7241
8280
  */
7242
8281
  "animation"?: AnimationBuilder;
7243
8282
  /**
7244
- * The mode determines which platform styles to use.
8283
+ * The mode determines the platform behaviors of the component.
7245
8284
  */
7246
8285
  "mode"?: "ios" | "md";
8286
+ /**
8287
+ * The theme determines the visual appearance of the component.
8288
+ */
8289
+ "theme"?: "ios" | "md" | "ionic";
7247
8290
  }
7248
8291
  interface IonRow {
8292
+ /**
8293
+ * The mode determines the platform behaviors of the component.
8294
+ */
8295
+ "mode"?: "ios" | "md";
8296
+ /**
8297
+ * The theme determines the visual appearance of the component.
8298
+ */
8299
+ "theme"?: "ios" | "md" | "ionic";
7249
8300
  }
7250
8301
  interface IonSearchbar {
7251
8302
  /**
@@ -7265,15 +8316,15 @@ declare namespace LocalJSX {
7265
8316
  */
7266
8317
  "autocorrect"?: 'on' | 'off';
7267
8318
  /**
7268
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8319
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7269
8320
  */
7270
8321
  "cancelButtonIcon"?: string;
7271
8322
  /**
7272
- * Set the the cancel button text. Only applies to `ios` mode.
8323
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7273
8324
  */
7274
8325
  "cancelButtonText"?: string;
7275
8326
  /**
7276
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8327
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7277
8328
  */
7278
8329
  "clearIcon"?: string;
7279
8330
  /**
@@ -7305,7 +8356,7 @@ declare namespace LocalJSX {
7305
8356
  */
7306
8357
  "minlength"?: number;
7307
8358
  /**
7308
- * The mode determines which platform styles to use.
8359
+ * The mode determines the platform behaviors of the component.
7309
8360
  */
7310
8361
  "mode"?: "ios" | "md";
7311
8362
  /**
@@ -7341,7 +8392,7 @@ declare namespace LocalJSX {
7341
8392
  */
7342
8393
  "placeholder"?: string;
7343
8394
  /**
7344
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8395
+ * 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.
7345
8396
  */
7346
8397
  "searchIcon"?: string;
7347
8398
  /**
@@ -7356,6 +8407,10 @@ declare namespace LocalJSX {
7356
8407
  * If `true`, enable spellcheck on the input.
7357
8408
  */
7358
8409
  "spellcheck"?: boolean;
8410
+ /**
8411
+ * The theme determines the visual appearance of the component.
8412
+ */
8413
+ "theme"?: "ios" | "md" | "ionic";
7359
8414
  /**
7360
8415
  * Set the type of the input.
7361
8416
  */
@@ -7375,7 +8430,7 @@ declare namespace LocalJSX {
7375
8430
  */
7376
8431
  "disabled"?: boolean;
7377
8432
  /**
7378
- * The mode determines which platform styles to use.
8433
+ * The mode determines the platform behaviors of the component.
7379
8434
  */
7380
8435
  "mode"?: "ios" | "md";
7381
8436
  /**
@@ -7394,6 +8449,10 @@ declare namespace LocalJSX {
7394
8449
  * If `true`, users will be able to swipe between segment buttons to activate them.
7395
8450
  */
7396
8451
  "swipeGesture"?: boolean;
8452
+ /**
8453
+ * The theme determines the visual appearance of the component.
8454
+ */
8455
+ "theme"?: "ios" | "md" | "ionic";
7397
8456
  /**
7398
8457
  * the value of the segment.
7399
8458
  */
@@ -7413,9 +8472,13 @@ declare namespace LocalJSX {
7413
8472
  */
7414
8473
  "layout"?: SegmentButtonLayout;
7415
8474
  /**
7416
- * The mode determines which platform styles to use.
8475
+ * The mode determines the platform behaviors of the component.
7417
8476
  */
7418
8477
  "mode"?: "ios" | "md";
8478
+ /**
8479
+ * The theme determines the visual appearance of the component.
8480
+ */
8481
+ "theme"?: "ios" | "md" | "ionic";
7419
8482
  /**
7420
8483
  * The type of the button.
7421
8484
  */
@@ -7455,11 +8518,11 @@ declare namespace LocalJSX {
7455
8518
  */
7456
8519
  "disabled"?: boolean;
7457
8520
  /**
7458
- * 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.
8521
+ * 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.
7459
8522
  */
7460
8523
  "expandedIcon"?: string;
7461
8524
  /**
7462
- * 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.
8525
+ * 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.
7463
8526
  */
7464
8527
  "fill"?: 'outline' | 'solid';
7465
8528
  /**
@@ -7483,7 +8546,7 @@ declare namespace LocalJSX {
7483
8546
  */
7484
8547
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7485
8548
  /**
7486
- * The mode determines which platform styles to use.
8549
+ * The mode determines the platform behaviors of the component.
7487
8550
  */
7488
8551
  "mode"?: "ios" | "md";
7489
8552
  /**
@@ -7527,11 +8590,19 @@ declare namespace LocalJSX {
7527
8590
  */
7528
8591
  "selectedText"?: string | null;
7529
8592
  /**
7530
- * The shape of the select. If "round" it will have an increased border radius.
8593
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
8594
+ */
8595
+ "shape"?: 'soft' | 'round' | 'rectangular';
8596
+ /**
8597
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
8598
+ */
8599
+ "size"?: 'small' | 'medium' | 'large';
8600
+ /**
8601
+ * The theme determines the visual appearance of the component.
7531
8602
  */
7532
- "shape"?: 'round';
8603
+ "theme"?: "ios" | "md" | "ionic";
7533
8604
  /**
7534
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8605
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7535
8606
  */
7536
8607
  "toggleIcon"?: string;
7537
8608
  /**
@@ -7549,6 +8620,14 @@ declare namespace LocalJSX {
7549
8620
  * 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.
7550
8621
  */
7551
8622
  "disabled"?: boolean;
8623
+ /**
8624
+ * The mode determines the platform behaviors of the component.
8625
+ */
8626
+ "mode"?: "ios" | "md";
8627
+ /**
8628
+ * The theme determines the visual appearance of the component.
8629
+ */
8630
+ "theme"?: "ios" | "md" | "ionic";
7552
8631
  /**
7553
8632
  * The text value of the option.
7554
8633
  */
@@ -7563,6 +8642,10 @@ declare namespace LocalJSX {
7563
8642
  * The text content of the popover body
7564
8643
  */
7565
8644
  "message"?: string;
8645
+ /**
8646
+ * The mode determines the platform behaviors of the component.
8647
+ */
8648
+ "mode"?: "ios" | "md";
7566
8649
  /**
7567
8650
  * If true, the select accepts multiple values
7568
8651
  */
@@ -7575,12 +8658,24 @@ declare namespace LocalJSX {
7575
8658
  * The subheader text of the popover
7576
8659
  */
7577
8660
  "subHeader"?: string;
8661
+ /**
8662
+ * The theme determines the visual appearance of the component.
8663
+ */
8664
+ "theme"?: "ios" | "md" | "ionic";
7578
8665
  }
7579
8666
  interface IonSkeletonText {
7580
8667
  /**
7581
8668
  * If `true`, the skeleton text will animate.
7582
8669
  */
7583
8670
  "animated"?: boolean;
8671
+ /**
8672
+ * The mode determines the platform behaviors of the component.
8673
+ */
8674
+ "mode"?: "ios" | "md";
8675
+ /**
8676
+ * The theme determines the visual appearance of the component.
8677
+ */
8678
+ "theme"?: "ios" | "md" | "ionic";
7584
8679
  }
7585
8680
  interface IonSpinner {
7586
8681
  /**
@@ -7591,6 +8686,10 @@ declare namespace LocalJSX {
7591
8686
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7592
8687
  */
7593
8688
  "duration"?: number;
8689
+ /**
8690
+ * The mode determines the platform behaviors of the component.
8691
+ */
8692
+ "mode"?: "ios" | "md";
7594
8693
  /**
7595
8694
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7596
8695
  */
@@ -7599,6 +8698,14 @@ declare namespace LocalJSX {
7599
8698
  * If `true`, the spinner's animation will be paused.
7600
8699
  */
7601
8700
  "paused"?: boolean;
8701
+ /**
8702
+ * 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.
8703
+ */
8704
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8705
+ /**
8706
+ * The theme determines the visual appearance of the component.
8707
+ */
8708
+ "theme"?: "ios" | "md" | "ionic";
7602
8709
  }
7603
8710
  interface IonSplitPane {
7604
8711
  /**
@@ -7609,10 +8716,18 @@ declare namespace LocalJSX {
7609
8716
  * If `true`, the split pane will be hidden.
7610
8717
  */
7611
8718
  "disabled"?: boolean;
8719
+ /**
8720
+ * The mode determines the platform behaviors of the component.
8721
+ */
8722
+ "mode"?: "ios" | "md";
7612
8723
  /**
7613
8724
  * Expression to be called when the split-pane visibility has changed
7614
8725
  */
7615
8726
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8727
+ /**
8728
+ * The theme determines the visual appearance of the component.
8729
+ */
8730
+ "theme"?: "ios" | "md" | "ionic";
7616
8731
  /**
7617
8732
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
7618
8733
  */
@@ -7623,10 +8738,18 @@ declare namespace LocalJSX {
7623
8738
  * The component to display inside of the tab.
7624
8739
  */
7625
8740
  "component"?: ComponentRef;
8741
+ /**
8742
+ * The mode determines the platform behaviors of the component.
8743
+ */
8744
+ "mode"?: "ios" | "md";
7626
8745
  /**
7627
8746
  * 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.
7628
8747
  */
7629
8748
  "tab": string;
8749
+ /**
8750
+ * The theme determines the visual appearance of the component.
8751
+ */
8752
+ "theme"?: "ios" | "md" | "ionic";
7630
8753
  }
7631
8754
  interface IonTabBar {
7632
8755
  /**
@@ -7634,7 +8757,11 @@ declare namespace LocalJSX {
7634
8757
  */
7635
8758
  "color"?: Color;
7636
8759
  /**
7637
- * The mode determines which platform styles to use.
8760
+ * 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"`.
8761
+ */
8762
+ "expand"?: 'compact' | 'full';
8763
+ /**
8764
+ * The mode determines the platform behaviors of the component.
7638
8765
  */
7639
8766
  "mode"?: "ios" | "md";
7640
8767
  /**
@@ -7642,7 +8769,15 @@ declare namespace LocalJSX {
7642
8769
  */
7643
8770
  "selectedTab"?: string;
7644
8771
  /**
7645
- * 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).
8772
+ * 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.
8773
+ */
8774
+ "shape"?: 'soft' | 'round' | 'rectangular';
8775
+ /**
8776
+ * The theme determines the visual appearance of the component.
8777
+ */
8778
+ "theme"?: "ios" | "md" | "ionic";
8779
+ /**
8780
+ * 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).
7646
8781
  */
7647
8782
  "translucent"?: boolean;
7648
8783
  }
@@ -7664,7 +8799,7 @@ declare namespace LocalJSX {
7664
8799
  */
7665
8800
  "layout"?: TabButtonLayout;
7666
8801
  /**
7667
- * The mode determines which platform styles to use.
8802
+ * The mode determines the platform behaviors of the component.
7668
8803
  */
7669
8804
  "mode"?: "ios" | "md";
7670
8805
  /**
@@ -7683,8 +8818,16 @@ declare namespace LocalJSX {
7683
8818
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7684
8819
  */
7685
8820
  "target"?: string | undefined;
8821
+ /**
8822
+ * The theme determines the visual appearance of the component.
8823
+ */
8824
+ "theme"?: "ios" | "md" | "ionic";
7686
8825
  }
7687
8826
  interface IonTabs {
8827
+ /**
8828
+ * The mode determines the platform behaviors of the component.
8829
+ */
8830
+ "mode"?: "ios" | "md";
7688
8831
  /**
7689
8832
  * Emitted when the navigation has finished transitioning to a new component.
7690
8833
  */
@@ -7693,6 +8836,10 @@ declare namespace LocalJSX {
7693
8836
  * Emitted when the navigation is about to transition to a new component.
7694
8837
  */
7695
8838
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8839
+ /**
8840
+ * The theme determines the visual appearance of the component.
8841
+ */
8842
+ "theme"?: "ios" | "md" | "ionic";
7696
8843
  }
7697
8844
  interface IonText {
7698
8845
  /**
@@ -7700,9 +8847,13 @@ declare namespace LocalJSX {
7700
8847
  */
7701
8848
  "color"?: Color;
7702
8849
  /**
7703
- * The mode determines which platform styles to use.
8850
+ * The mode determines the platform behaviors of the component.
7704
8851
  */
7705
8852
  "mode"?: "ios" | "md";
8853
+ /**
8854
+ * The theme determines the visual appearance of the component.
8855
+ */
8856
+ "theme"?: "ios" | "md" | "ionic";
7706
8857
  }
7707
8858
  interface IonTextarea {
7708
8859
  /**
@@ -7754,7 +8905,7 @@ declare namespace LocalJSX {
7754
8905
  */
7755
8906
  "errorText"?: string;
7756
8907
  /**
7757
- * 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.
8908
+ * 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"`.
7758
8909
  */
7759
8910
  "fill"?: 'outline' | 'solid';
7760
8911
  /**
@@ -7782,7 +8933,7 @@ declare namespace LocalJSX {
7782
8933
  */
7783
8934
  "minlength"?: number;
7784
8935
  /**
7785
- * The mode determines which platform styles to use.
8936
+ * The mode determines the platform behaviors of the component.
7786
8937
  */
7787
8938
  "mode"?: "ios" | "md";
7788
8939
  /**
@@ -7822,13 +8973,21 @@ declare namespace LocalJSX {
7822
8973
  */
7823
8974
  "rows"?: number;
7824
8975
  /**
7825
- * The shape of the textarea. If "round" it will have an increased border radius.
8976
+ * 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.
7826
8977
  */
7827
- "shape"?: 'round';
8978
+ "shape"?: 'soft' | 'round' | 'rectangular';
8979
+ /**
8980
+ * 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.
8981
+ */
8982
+ "size"?: 'small' | 'medium' | 'large';
7828
8983
  /**
7829
8984
  * If `true`, the element will have its spelling and grammar checked.
7830
8985
  */
7831
8986
  "spellcheck"?: boolean;
8987
+ /**
8988
+ * The theme determines the visual appearance of the component.
8989
+ */
8990
+ "theme"?: "ios" | "md" | "ionic";
7832
8991
  /**
7833
8992
  * The value of the textarea.
7834
8993
  */
@@ -7839,16 +8998,32 @@ declare namespace LocalJSX {
7839
8998
  "wrap"?: 'hard' | 'soft' | 'off';
7840
8999
  }
7841
9000
  interface IonThumbnail {
9001
+ /**
9002
+ * The mode determines the platform behaviors of the component.
9003
+ */
9004
+ "mode"?: "ios" | "md";
9005
+ /**
9006
+ * The theme determines the visual appearance of the component.
9007
+ */
9008
+ "theme"?: "ios" | "md" | "ionic";
7842
9009
  }
7843
9010
  interface IonTitle {
7844
9011
  /**
7845
9012
  * 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).
7846
9013
  */
7847
9014
  "color"?: Color;
9015
+ /**
9016
+ * The mode determines the platform behaviors of the component.
9017
+ */
9018
+ "mode"?: "ios" | "md";
7848
9019
  /**
7849
9020
  * The size of the toolbar title.
7850
9021
  */
7851
9022
  "size"?: 'large' | 'small';
9023
+ /**
9024
+ * The theme determines the visual appearance of the component.
9025
+ */
9026
+ "theme"?: "ios" | "md" | "ionic";
7852
9027
  }
7853
9028
  interface IonToast {
7854
9029
  /**
@@ -7908,7 +9083,7 @@ declare namespace LocalJSX {
7908
9083
  */
7909
9084
  "message"?: string | IonicSafeString;
7910
9085
  /**
7911
- * The mode determines which platform styles to use.
9086
+ * The mode determines the platform behaviors of the component.
7912
9087
  */
7913
9088
  "mode"?: "ios" | "md";
7914
9089
  /**
@@ -7951,12 +9126,20 @@ declare namespace LocalJSX {
7951
9126
  * 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.
7952
9127
  */
7953
9128
  "positionAnchor"?: HTMLElement | string;
9129
+ /**
9130
+ * 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.
9131
+ */
9132
+ "shape"?: 'soft' | 'round' | 'rectangular';
7954
9133
  /**
7955
9134
  * 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.
7956
9135
  */
7957
9136
  "swipeGesture"?: ToastSwipeGestureDirection;
7958
9137
  /**
7959
- * 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).
9138
+ * The theme determines the visual appearance of the component.
9139
+ */
9140
+ "theme"?: "ios" | "md" | "ionic";
9141
+ /**
9142
+ * 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).
7960
9143
  */
7961
9144
  "translucent"?: boolean;
7962
9145
  /**
@@ -7994,7 +9177,7 @@ declare namespace LocalJSX {
7994
9177
  */
7995
9178
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7996
9179
  /**
7997
- * The mode determines which platform styles to use.
9180
+ * The mode determines the platform behaviors of the component.
7998
9181
  */
7999
9182
  "mode"?: "ios" | "md";
8000
9183
  /**
@@ -8013,6 +9196,10 @@ declare namespace LocalJSX {
8013
9196
  * Emitted when the toggle has focus.
8014
9197
  */
8015
9198
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
9199
+ /**
9200
+ * The theme determines the visual appearance of the component.
9201
+ */
9202
+ "theme"?: "ios" | "md" | "ionic";
8016
9203
  /**
8017
9204
  * 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>`.
8018
9205
  */
@@ -8024,9 +9211,13 @@ declare namespace LocalJSX {
8024
9211
  */
8025
9212
  "color"?: Color;
8026
9213
  /**
8027
- * The mode determines which platform styles to use.
9214
+ * The mode determines the platform behaviors of the component.
8028
9215
  */
8029
9216
  "mode"?: "ios" | "md";
9217
+ /**
9218
+ * The theme determines the visual appearance of the component.
9219
+ */
9220
+ "theme"?: "ios" | "md" | "ionic";
8030
9221
  }
8031
9222
  interface IntrinsicElements {
8032
9223
  "ion-accordion": IonAccordion;