@ionic/core 8.4.2-dev.11733430169.13c62f98 → 8.4.2-dev.11734347773.16e58dbd

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 (1182) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +15 -10
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +10 -6
  5. package/components/button.js +41 -11
  6. package/components/buttons.js +11 -7
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +30 -12
  12. package/components/config2.js +79 -0
  13. package/components/content.js +14 -12
  14. package/components/data.js +4 -4
  15. package/components/focus-visible.js +8 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +24 -15
  18. package/components/helpers.js +4 -1
  19. package/components/index2.js +2 -2
  20. package/components/index4.js +8 -9
  21. package/components/index5.js +27 -3
  22. package/components/index6.js +114 -20
  23. package/components/index7.js +163 -27
  24. package/components/input-shims.js +2 -2
  25. package/components/input.utils.js +1 -2
  26. package/components/ion-accordion-group.js +25 -6
  27. package/components/ion-accordion.js +36 -17
  28. package/components/ion-app.js +9 -77
  29. package/components/ion-avatar.js +52 -3
  30. package/components/ion-back-button.js +29 -19
  31. package/components/ion-badge.js +44 -8
  32. package/components/ion-breadcrumb.js +45 -11
  33. package/components/ion-breadcrumbs.js +9 -5
  34. package/components/ion-card-content.js +11 -7
  35. package/components/ion-card-header.js +9 -5
  36. package/components/ion-card-subtitle.js +9 -5
  37. package/components/ion-card-title.js +9 -5
  38. package/components/ion-card.js +17 -9
  39. package/components/ion-chip.js +45 -8
  40. package/components/ion-col.js +5 -5
  41. package/components/ion-datetime-button.js +9 -6
  42. package/components/ion-datetime.js +99 -21
  43. package/components/ion-fab-button.js +33 -10
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -12
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +13 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-password-toggle.js +53 -14
  52. package/components/ion-input.js +118 -20
  53. package/components/ion-item-divider.js +9 -5
  54. package/components/ion-item-group.js +9 -5
  55. package/components/ion-item-option.js +28 -8
  56. package/components/ion-item-options.js +9 -5
  57. package/components/ion-item-sliding.js +5 -5
  58. package/components/ion-loading.js +13 -8
  59. package/components/ion-menu-button.js +28 -10
  60. package/components/ion-menu-toggle.js +5 -5
  61. package/components/ion-menu.js +12 -8
  62. package/components/ion-nav-link.js +1 -1
  63. package/components/ion-nav.js +8 -6
  64. package/components/ion-note.js +9 -5
  65. package/components/ion-picker-legacy.js +7 -8
  66. package/components/ion-progress-bar.js +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 +28 -7
  86. package/components/ion-tab.js +2 -2
  87. package/components/ion-tabs.js +2 -2
  88. package/components/ion-text.js +5 -5
  89. package/components/ion-textarea.js +38 -11
  90. package/components/ion-thumbnail.js +5 -2
  91. package/components/ion-toast.js +30 -11
  92. package/components/ion-toggle.js +77 -18
  93. package/components/ionic-global.js +374 -84
  94. package/components/ios.transition.js +1 -0
  95. package/components/item.js +41 -11
  96. package/components/keyboard-controller.js +4 -2
  97. package/components/label.js +9 -5
  98. package/components/list-header.js +9 -5
  99. package/components/list.js +29 -6
  100. package/components/list2.js +6 -0
  101. package/components/modal.js +51 -21
  102. package/components/notch-controller.js +1 -1
  103. package/components/overlays.js +4 -5
  104. package/components/picker-column-option.js +9 -5
  105. package/components/picker-column.js +7 -9
  106. package/components/picker-column2.js +4 -4
  107. package/components/picker.js +8 -4
  108. package/components/popover.js +11 -8
  109. package/components/radio-group.js +5 -3
  110. package/components/radio.js +12 -8
  111. package/components/ripple-effect.js +18 -8
  112. package/components/select-modal.js +3 -3
  113. package/components/select-popover.js +9 -2
  114. package/components/spinner.js +36 -9
  115. package/components/status-tap.js +1 -1
  116. package/components/title.js +11 -7
  117. package/components/toolbar.js +11 -7
  118. package/components/x.js +6 -0
  119. package/css/core.css +1 -1
  120. package/css/core.css.map +1 -1
  121. package/css/display.css +1 -1
  122. package/css/display.css.map +1 -1
  123. package/css/flex-utils.css.map +1 -1
  124. package/css/float-elements.css.map +1 -1
  125. package/css/global.bundle.css.map +1 -1
  126. package/css/ionic/bundle.ionic.css +1 -0
  127. package/css/ionic/bundle.ionic.css.map +1 -0
  128. package/css/ionic/core.ionic.css +1 -0
  129. package/css/ionic/core.ionic.css.map +1 -0
  130. package/css/ionic/global.bundle.ionic.css +1 -0
  131. package/css/ionic/global.bundle.ionic.css.map +1 -0
  132. package/css/ionic/ionic-swiper.ionic.css +1 -0
  133. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  134. package/css/ionic/link.ionic.css +1 -0
  135. package/css/ionic/link.ionic.css.map +1 -0
  136. package/css/ionic/structure.ionic.css +1 -0
  137. package/css/ionic/structure.ionic.css.map +1 -0
  138. package/css/ionic/typography.ionic.css +1 -0
  139. package/css/ionic/typography.ionic.css.map +1 -0
  140. package/css/ionic/utils.bundle.ionic.css +1 -0
  141. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  142. package/css/ionic-swiper.css +1 -1
  143. package/css/ionic-swiper.css.map +1 -1
  144. package/css/ionic.bundle.css +1 -1
  145. package/css/ionic.bundle.css.map +1 -1
  146. package/css/normalize.css.map +1 -1
  147. package/css/padding.css.map +1 -1
  148. package/css/palettes/dark.always.css.map +1 -1
  149. package/css/palettes/dark.class.css.map +1 -1
  150. package/css/palettes/dark.system.css.map +1 -1
  151. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  152. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  153. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  154. package/css/palettes/high-contrast.always.css.map +1 -1
  155. package/css/palettes/high-contrast.class.css.map +1 -1
  156. package/css/palettes/high-contrast.system.css.map +1 -1
  157. package/css/structure.css.map +1 -1
  158. package/css/text-alignment.css.map +1 -1
  159. package/css/text-transformation.css.map +1 -1
  160. package/css/typography.css.map +1 -1
  161. package/css/utils.bundle.css +1 -1
  162. package/css/utils.bundle.css.map +1 -1
  163. package/dist/cjs/{animation-b4fdf128.js → animation-58015a44.js} +2 -2
  164. package/dist/cjs/{app-globals-21afee77.js → app-globals-d64148d3.js} +1 -1
  165. package/dist/cjs/{button-active-3f2f60b4.js → button-active-ec1fd1d8.js} +1 -1
  166. package/dist/cjs/{capacitor-c04564bf.js → capacitor-454dd071.js} +3 -3
  167. package/dist/cjs/caret-down-3c215cff.js +8 -0
  168. package/dist/cjs/caret-left-2bb66970.js +8 -0
  169. package/dist/cjs/caret-right-88e03970.js +8 -0
  170. package/dist/cjs/config-aff4ff52.js +84 -0
  171. package/dist/cjs/{data-21dc0f81.js → data-b726dbee.js} +6 -6
  172. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  173. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-32f1a0e4.js} +4 -2
  174. package/dist/cjs/{haptic-f6b37aa3.js → haptic-7c25be74.js} +1 -1
  175. package/dist/cjs/{helpers-afaa9001.js → helpers-4e2936d2.js} +4 -1
  176. package/dist/cjs/{index-8e789962.js → index-03fbee1d.js} +14 -15
  177. package/dist/cjs/{index-9509ecad.js → index-0e0c6196.js} +9 -7
  178. package/dist/cjs/{index-5b6a7459.js → index-604c36ae.js} +3 -3
  179. package/dist/cjs/{index-f05acd21.js → index-8f975cf4.js} +12 -12
  180. package/dist/cjs/index.cjs.js +10 -12
  181. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-4b4d2251.js} +18 -17
  182. package/dist/cjs/{input.utils-611cde0b.js → input.utils-fb1debe4.js} +4 -5
  183. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -24
  184. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
  185. package/dist/cjs/ion-alert.cjs.entry.js +25 -23
  186. package/dist/cjs/ion-app_8.cjs.entry.js +108 -152
  187. package/dist/cjs/ion-avatar_3.cjs.entry.js +93 -9
  188. package/dist/cjs/ion-back-button.cjs.entry.js +31 -21
  189. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -6
  190. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +53 -15
  191. package/dist/cjs/ion-button_2.cjs.entry.js +46 -15
  192. package/dist/cjs/ion-card_5.cjs.entry.js +52 -28
  193. package/dist/cjs/ion-checkbox.cjs.entry.js +30 -13
  194. package/dist/cjs/ion-chip.cjs.entry.js +43 -7
  195. package/dist/cjs/ion-col_3.cjs.entry.js +14 -10
  196. package/dist/cjs/ion-datetime-button.cjs.entry.js +16 -12
  197. package/dist/cjs/ion-datetime_3.cjs.entry.js +191 -115
  198. package/dist/cjs/ion-fab_3.cjs.entry.js +42 -19
  199. package/dist/cjs/ion-img.cjs.entry.js +7 -3
  200. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +21 -17
  201. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  202. package/dist/cjs/ion-input.cjs.entry.js +118 -23
  203. package/dist/cjs/ion-item-option_3.cjs.entry.js +40 -17
  204. package/dist/cjs/ion-item_8.cjs.entry.js +113 -41
  205. package/dist/cjs/ion-loading.cjs.entry.js +20 -18
  206. package/dist/cjs/ion-menu_3.cjs.entry.js +48 -29
  207. package/dist/cjs/ion-modal.cjs.entry.js +95 -67
  208. package/dist/cjs/ion-nav_2.cjs.entry.js +15 -13
  209. package/dist/cjs/ion-picker-column-option.cjs.entry.js +11 -6
  210. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -13
  211. package/dist/cjs/ion-picker.cjs.entry.js +10 -5
  212. package/dist/cjs/ion-popover.cjs.entry.js +20 -18
  213. package/dist/cjs/ion-progress-bar.cjs.entry.js +13 -8
  214. package/dist/cjs/ion-radio_2.cjs.entry.js +18 -11
  215. package/dist/cjs/ion-range.cjs.entry.js +20 -16
  216. package/dist/cjs/ion-refresher_2.cjs.entry.js +44 -23
  217. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  218. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -7
  219. package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
  220. package/dist/cjs/ion-searchbar.cjs.entry.js +94 -17
  221. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  222. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -2
  223. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -14
  224. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -10
  225. package/dist/cjs/ion-select_3.cjs.entry.js +132 -39
  226. package/dist/cjs/ion-spinner.cjs.entry.js +35 -9
  227. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -8
  228. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +60 -20
  229. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -6
  230. package/dist/cjs/ion-text.cjs.entry.js +6 -5
  231. package/dist/cjs/ion-textarea.cjs.entry.js +41 -16
  232. package/dist/cjs/ion-toast.cjs.entry.js +59 -42
  233. package/dist/cjs/ion-toggle.cjs.entry.js +80 -22
  234. package/dist/cjs/ionic-global-14af9c21.js +535 -0
  235. package/dist/cjs/ionic.cjs.js +4 -3
  236. package/dist/cjs/{ios.transition-cf40433b.js → ios.transition-2bb0f7d5.js} +6 -6
  237. package/dist/cjs/{keyboard-af1bb365.js → keyboard-0a5d46dd.js} +5 -3
  238. package/dist/cjs/{keyboard-0272231f.js → keyboard-53c12a15.js} +1 -1
  239. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-102bad3e.js} +11 -9
  240. package/dist/cjs/list-2930c629.js +8 -0
  241. package/dist/cjs/loader.cjs.js +4 -3
  242. package/dist/cjs/{md.transition-ededf99f.js → md.transition-cf600117.js} +5 -6
  243. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-ea70e230.js} +4 -4
  244. package/dist/cjs/{overlays-aa669eb8.js → overlays-542a90b3.js} +19 -20
  245. package/dist/cjs/{status-tap-37681226.js → status-tap-aa97d209.js} +4 -3
  246. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-27975274.js} +2 -1
  247. package/dist/cjs/x-81a8f51c.js +8 -0
  248. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  249. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  250. package/dist/collection/components/accordion/accordion.js +37 -21
  251. package/dist/collection/components/accordion/accordion.md.css +67 -59
  252. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  253. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  254. package/dist/collection/components/accordion-group/accordion-group.js +43 -8
  255. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  256. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  257. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  258. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  259. package/dist/collection/components/alert/alert.ios.css +19 -1
  260. package/dist/collection/components/alert/alert.js +15 -12
  261. package/dist/collection/components/alert/alert.md.css +19 -1
  262. package/dist/collection/components/app/app.js +12 -78
  263. package/dist/collection/components/avatar/avatar.ionic.css +268 -0
  264. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  265. package/dist/collection/components/avatar/avatar.js +92 -4
  266. package/dist/collection/components/avatar/avatar.md.css +12 -0
  267. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  268. package/dist/collection/components/back-button/back-button.js +27 -19
  269. package/dist/collection/components/back-button/back-button.md.css +60 -48
  270. package/dist/collection/components/backdrop/backdrop.ionic.css +151 -0
  271. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  272. package/dist/collection/components/backdrop/backdrop.js +12 -6
  273. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  274. package/dist/collection/components/badge/badge.ionic.css +249 -0
  275. package/dist/collection/components/badge/badge.ios.css +106 -3
  276. package/dist/collection/components/badge/badge.js +75 -8
  277. package/dist/collection/components/badge/badge.md.css +106 -3
  278. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  279. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  280. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  281. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  282. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  283. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  284. package/dist/collection/components/button/button.ionic.css +589 -0
  285. package/dist/collection/components/button/button.ios.css +129 -36
  286. package/dist/collection/components/button/button.js +46 -16
  287. package/dist/collection/components/button/button.md.css +120 -40
  288. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  289. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  290. package/dist/collection/components/buttons/buttons.js +14 -8
  291. package/dist/collection/components/buttons/buttons.md.css +55 -3
  292. package/dist/collection/components/card/card.ionic.css +137 -0
  293. package/dist/collection/components/card/card.ios.css +65 -14
  294. package/dist/collection/components/card/card.js +34 -10
  295. package/dist/collection/components/card/card.md.css +65 -14
  296. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  297. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  298. package/dist/collection/components/card-content/card-content.js +11 -8
  299. package/dist/collection/components/card-content/card-content.md.css +16 -1
  300. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  301. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  302. package/dist/collection/components/card-header/card-header.js +12 -9
  303. package/dist/collection/components/card-header/card-header.md.css +27 -15
  304. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  305. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  306. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  307. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  308. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  309. package/dist/collection/components/card-title/card-title.js +11 -8
  310. package/dist/collection/components/card-title/card-title.md.css +73 -0
  311. package/dist/collection/components/checkbox/checkbox.ionic.css +402 -0
  312. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  313. package/dist/collection/components/checkbox/checkbox.js +64 -14
  314. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  315. package/dist/collection/components/chip/chip.ionic.css +160 -0
  316. package/dist/collection/components/chip/chip.ios.css +20 -1
  317. package/dist/collection/components/chip/chip.js +77 -8
  318. package/dist/collection/components/chip/chip.md.css +20 -1
  319. package/dist/collection/components/col/col.css +12 -0
  320. package/dist/collection/components/col/col.js +9 -5
  321. package/dist/collection/components/content/content.css +8 -2
  322. package/dist/collection/components/content/content.js +16 -11
  323. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  324. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  325. package/dist/collection/components/datetime/datetime.js +98 -20
  326. package/dist/collection/components/datetime/datetime.md.css +237 -86
  327. package/dist/collection/components/datetime/utils/data.js +3 -3
  328. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  329. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  330. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  331. package/dist/collection/components/fab/fab.css +25 -1
  332. package/dist/collection/components/fab/fab.js +9 -5
  333. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  334. package/dist/collection/components/fab-button/fab-button.js +36 -15
  335. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  336. package/dist/collection/components/fab-list/fab-list.css +12 -0
  337. package/dist/collection/components/fab-list/fab-list.js +9 -5
  338. package/dist/collection/components/footer/footer.ios.css +14 -2
  339. package/dist/collection/components/footer/footer.js +20 -15
  340. package/dist/collection/components/footer/footer.md.css +12 -0
  341. package/dist/collection/components/grid/grid.css +12 -0
  342. package/dist/collection/components/grid/grid.js +9 -5
  343. package/dist/collection/components/header/header.ionic.css +86 -0
  344. package/dist/collection/components/header/header.ios.css +25 -10
  345. package/dist/collection/components/header/header.js +42 -17
  346. package/dist/collection/components/header/header.md.css +23 -8
  347. package/dist/collection/components/img/img.js +8 -2
  348. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  349. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  350. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  351. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  352. package/dist/collection/components/input/input.ionic.css +1096 -0
  353. package/dist/collection/components/input/input.ios.css +21 -2
  354. package/dist/collection/components/input/input.js +144 -30
  355. package/dist/collection/components/input/input.md.css +43 -4
  356. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  357. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  358. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  359. package/dist/collection/components/item/item.ionic.css +497 -0
  360. package/dist/collection/components/item/item.ios.css +109 -69
  361. package/dist/collection/components/item/item.js +44 -16
  362. package/dist/collection/components/item/item.md.css +120 -68
  363. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  364. package/dist/collection/components/item-divider/item-divider.js +11 -8
  365. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  366. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  367. package/dist/collection/components/item-group/item-group.js +13 -7
  368. package/dist/collection/components/item-group/item-group.md.css +12 -0
  369. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  370. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  371. package/dist/collection/components/item-option/item-option.js +43 -8
  372. package/dist/collection/components/item-option/item-option.md.css +14 -2
  373. package/dist/collection/components/item-options/item-options.ionic.css +259 -0
  374. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  375. package/dist/collection/components/item-options/item-options.js +13 -7
  376. package/dist/collection/components/item-options/item-options.md.css +18 -0
  377. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  378. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  379. package/dist/collection/components/label/label.ios.css +18 -0
  380. package/dist/collection/components/label/label.js +11 -8
  381. package/dist/collection/components/label/label.md.css +18 -0
  382. package/dist/collection/components/list/list.ionic.css +192 -0
  383. package/dist/collection/components/list/list.ios.css +18 -0
  384. package/dist/collection/components/list/list.js +47 -9
  385. package/dist/collection/components/list/list.md.css +20 -2
  386. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  387. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  388. package/dist/collection/components/list-header/list-header.js +11 -8
  389. package/dist/collection/components/list-header/list-header.md.css +18 -0
  390. package/dist/collection/components/loading/loading.ios.css +13 -1
  391. package/dist/collection/components/loading/loading.js +13 -10
  392. package/dist/collection/components/loading/loading.md.css +13 -1
  393. package/dist/collection/components/menu/menu.ios.css +15 -3
  394. package/dist/collection/components/menu/menu.js +12 -7
  395. package/dist/collection/components/menu/menu.md.css +15 -3
  396. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  397. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  398. package/dist/collection/components/menu-button/menu-button.js +26 -10
  399. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  400. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  401. package/dist/collection/components/modal/animations/sheet.js +8 -2
  402. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  403. package/dist/collection/components/modal/modal.ionic.css +239 -0
  404. package/dist/collection/components/modal/modal.ios.css +106 -63
  405. package/dist/collection/components/modal/modal.js +47 -11
  406. package/dist/collection/components/modal/modal.md.css +106 -63
  407. package/dist/collection/components/nav/nav.css +7 -1
  408. package/dist/collection/components/nav/nav.js +11 -5
  409. package/dist/collection/components/nav-link/nav-link.js +5 -1
  410. package/dist/collection/components/note/note.ios.css +12 -0
  411. package/dist/collection/components/note/note.js +11 -8
  412. package/dist/collection/components/note/note.md.css +12 -0
  413. package/dist/collection/components/picker/picker.ios.css +15 -3
  414. package/dist/collection/components/picker/picker.js +8 -5
  415. package/dist/collection/components/picker/picker.md.css +15 -3
  416. package/dist/collection/components/picker-column/picker-column.css +9 -2
  417. package/dist/collection/components/picker-column/picker-column.js +8 -8
  418. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  419. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  420. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  421. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  422. package/dist/collection/components/picker-legacy/picker.js +7 -6
  423. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  424. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  425. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  426. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  427. package/dist/collection/components/popover/popover.ios.css +13 -1
  428. package/dist/collection/components/popover/popover.js +15 -12
  429. package/dist/collection/components/popover/popover.md.css +13 -1
  430. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  431. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  432. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  433. package/dist/collection/components/radio/radio.ionic.css +424 -0
  434. package/dist/collection/components/radio/radio.ios.css +134 -91
  435. package/dist/collection/components/radio/radio.js +12 -9
  436. package/dist/collection/components/radio/radio.md.css +134 -91
  437. package/dist/collection/components/radio-group/radio-group.js +9 -3
  438. package/dist/collection/components/range/range.ionic.css +555 -0
  439. package/dist/collection/components/range/range.ios.css +128 -85
  440. package/dist/collection/components/range/range.js +12 -9
  441. package/dist/collection/components/range/range.md.css +128 -85
  442. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  443. package/dist/collection/components/refresher/refresher.js +11 -8
  444. package/dist/collection/components/refresher/refresher.md.css +15 -2
  445. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  446. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  447. package/dist/collection/components/reorder/reorder.js +33 -6
  448. package/dist/collection/components/reorder/reorder.md.css +6 -0
  449. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  450. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  451. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  452. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  453. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  454. package/dist/collection/components/route/route.js +4 -0
  455. package/dist/collection/components/router/router.js +4 -0
  456. package/dist/collection/components/router-link/router-link.css +8 -2
  457. package/dist/collection/components/router-link/router-link.js +9 -5
  458. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  459. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  460. package/dist/collection/components/row/row.css +12 -0
  461. package/dist/collection/components/row/row.js +9 -2
  462. package/dist/collection/components/searchbar/searchbar.ionic.css +345 -0
  463. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  464. package/dist/collection/components/searchbar/searchbar.js +97 -25
  465. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  466. package/dist/collection/components/segment/segment.ionic.css +117 -0
  467. package/dist/collection/components/segment/segment.ios.css +45 -2
  468. package/dist/collection/components/segment/segment.js +11 -8
  469. package/dist/collection/components/segment/segment.md.css +45 -2
  470. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  471. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  472. package/dist/collection/components/segment-button/segment-button.js +11 -8
  473. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  474. package/dist/collection/components/segment-content/segment-content.js +1 -1
  475. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  476. package/dist/collection/components/segment-view/segment-view.js +6 -4
  477. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  478. package/dist/collection/components/select/select.ionic.css +711 -0
  479. package/dist/collection/components/select/select.ios.css +168 -102
  480. package/dist/collection/components/select/select.js +139 -37
  481. package/dist/collection/components/select/select.md.css +164 -206
  482. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  483. package/dist/collection/components/select-modal/select-modal.js +3 -3
  484. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  485. package/dist/collection/components/select-option/select-option.js +9 -2
  486. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  487. package/dist/collection/components/select-popover/select-popover.js +12 -4
  488. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  489. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  490. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  491. package/dist/collection/components/spinner/spinner.common.css +199 -0
  492. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  493. package/dist/collection/components/spinner/spinner.js +46 -6
  494. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  495. package/dist/collection/components/split-pane/split-pane.js +14 -8
  496. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  497. package/dist/collection/components/tab/tab.js +6 -2
  498. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  499. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  500. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  501. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  502. package/dist/collection/components/tab-button/tab-button.ionic.css +282 -0
  503. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  504. package/dist/collection/components/tab-button/tab-button.js +43 -8
  505. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  506. package/dist/collection/components/tabs/tabs.css +7 -1
  507. package/dist/collection/components/tabs/tabs.js +4 -1
  508. package/dist/collection/components/text/text.css +6 -0
  509. package/dist/collection/components/text/text.js +7 -6
  510. package/dist/collection/components/textarea/textarea.ionic.css +834 -0
  511. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  512. package/dist/collection/components/textarea/textarea.js +59 -16
  513. package/dist/collection/components/textarea/textarea.md.css +214 -97
  514. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  515. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  516. package/dist/collection/components/title/title.ionic.css +145 -0
  517. package/dist/collection/components/title/title.ios.css +32 -4
  518. package/dist/collection/components/title/title.js +13 -7
  519. package/dist/collection/components/title/title.md.css +32 -4
  520. package/dist/collection/components/toast/animations/utils.js +1 -1
  521. package/dist/collection/components/toast/toast.ionic.css +377 -0
  522. package/dist/collection/components/toast/toast.ios.css +74 -35
  523. package/dist/collection/components/toast/toast.js +45 -10
  524. package/dist/collection/components/toast/toast.md.css +74 -35
  525. package/dist/collection/components/toggle/toggle.ionic.css +419 -0
  526. package/dist/collection/components/toggle/toggle.ios.css +166 -120
  527. package/dist/collection/components/toggle/toggle.js +73 -18
  528. package/dist/collection/components/toggle/toggle.md.css +163 -120
  529. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  530. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  531. package/dist/collection/components/toolbar/toolbar.js +13 -10
  532. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  533. package/dist/collection/global/ionic-global.js +229 -13
  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 +2 -1
  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 +7108 -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 +96 -140
  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 +31 -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 -29
  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 -13
  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 -12
  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 +60 -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 -17
  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-66cb5522.js} +6 -7
  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-66cb5522.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 +2347 -209
  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-06f2f110.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-0ae8c3eb.entry.js +4 -0
  734. package/dist/ionic/{p-25180df3.system.js → p-0fa218e9.system.js} +1 -1
  735. package/dist/ionic/p-101ccd60.system.entry.js +4 -0
  736. package/dist/ionic/p-112120d7.system.js +4 -0
  737. package/dist/ionic/{p-c7e16491.js → p-11266916.js} +1 -1
  738. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  739. package/dist/ionic/p-12337305.system.entry.js +4 -0
  740. package/dist/ionic/{p-34b11c24.js → p-12d6df53.js} +1 -1
  741. package/dist/ionic/p-156d17cd.js +4 -0
  742. package/dist/ionic/p-18892506.entry.js +4 -0
  743. package/dist/ionic/{p-b06ac4a5.system.js → p-18f86177.system.js} +1 -1
  744. package/dist/ionic/p-1abd1c99.entry.js +4 -0
  745. package/dist/ionic/p-1cf1141c.system.entry.js +4 -0
  746. package/dist/ionic/p-1dd2b0af.entry.js +4 -0
  747. package/dist/ionic/p-1eeb9796.entry.js +4 -0
  748. package/dist/ionic/p-1efa63f2.js +4 -0
  749. package/dist/ionic/p-23b31425.entry.js +4 -0
  750. package/dist/ionic/p-243adf8c.js +4 -0
  751. package/dist/ionic/p-24f15ce4.system.entry.js +4 -0
  752. package/dist/ionic/p-25cc2477.entry.js +4 -0
  753. package/dist/ionic/p-27258d5a.entry.js +4 -0
  754. package/dist/ionic/p-29ca4da2.entry.js +4 -0
  755. package/dist/ionic/p-2e35a770.system.js +4 -0
  756. package/dist/ionic/p-2ef115ec.system.entry.js +4 -0
  757. package/dist/ionic/p-2fe21cb8.system.entry.js +4 -0
  758. package/dist/ionic/p-3238b3db.entry.js +4 -0
  759. package/dist/ionic/p-330e703e.entry.js +4 -0
  760. package/dist/ionic/p-33dc4514.js +4 -0
  761. package/dist/ionic/p-346c67b0.js +4 -0
  762. package/dist/ionic/p-3583dd40.system.entry.js +4 -0
  763. package/dist/ionic/p-3608e72b.entry.js +4 -0
  764. package/dist/ionic/p-398b00a5.system.entry.js +4 -0
  765. package/dist/ionic/p-3c4c73f9.system.entry.js +4 -0
  766. package/dist/ionic/p-3ce95a91.entry.js +4 -0
  767. package/dist/ionic/p-3d61263b.system.entry.js +4 -0
  768. package/dist/ionic/p-3d7eb7bf.system.entry.js +4 -0
  769. package/dist/ionic/{p-9ea607bd.system.js → p-3e91ea3a.system.js} +2 -2
  770. package/dist/ionic/{p-3c8e5c23.system.js → p-41c19986.system.js} +1 -1
  771. package/dist/ionic/p-41f06734.entry.js +4 -0
  772. package/dist/ionic/p-4219582c.system.js +4 -0
  773. package/dist/ionic/p-429dd2b5.system.js +4 -0
  774. package/dist/ionic/p-4385e3fb.system.entry.js +4 -0
  775. package/dist/ionic/p-4459a66e.system.js +4 -0
  776. package/dist/ionic/{p-f687573e.system.js → p-44ad86d7.system.js} +1 -1
  777. package/dist/ionic/{p-8985cdb6.system.js → p-4626fb32.system.js} +1 -1
  778. package/dist/ionic/p-46787abb.system.js +4 -0
  779. package/dist/ionic/p-47fd935c.system.js +4 -0
  780. package/dist/ionic/p-4a39ba11.entry.js +4 -0
  781. package/dist/ionic/p-4a6d4288.entry.js +4 -0
  782. package/dist/ionic/p-4a869870.entry.js +4 -0
  783. package/dist/ionic/p-4ac4f52a.system.entry.js +4 -0
  784. package/dist/ionic/p-4b4e4592.system.entry.js +4 -0
  785. package/dist/ionic/p-4bbfa162.system.entry.js +4 -0
  786. package/dist/ionic/{p-89b61afc.js → p-4c275462.js} +1 -1
  787. package/dist/ionic/p-4c9e1b2c.js +4 -0
  788. package/dist/ionic/p-51371e21.system.js +4 -0
  789. package/dist/ionic/p-530c591a.entry.js +4 -0
  790. package/dist/ionic/p-55546d77.system.entry.js +4 -0
  791. package/dist/ionic/p-556778bd.system.js +4 -0
  792. package/dist/ionic/p-5684893b.system.entry.js +4 -0
  793. package/dist/ionic/p-57de8d54.system.entry.js +4 -0
  794. package/dist/ionic/{p-f9a53abb.system.js → p-58aa8a36.system.js} +1 -1
  795. package/dist/ionic/p-58c64779.system.entry.js +4 -0
  796. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  797. package/dist/ionic/p-5a6b3c0d.entry.js +4 -0
  798. package/dist/ionic/p-5a6d245d.system.entry.js +4 -0
  799. package/dist/ionic/p-5b57d327.system.js +4 -0
  800. package/dist/ionic/p-5ce35a03.js +4 -0
  801. package/dist/ionic/p-5eb8561f.system.entry.js +4 -0
  802. package/dist/ionic/p-607c9c33.js +4 -0
  803. package/dist/ionic/p-60d21ee9.system.entry.js +4 -0
  804. package/dist/ionic/{p-9146695e.system.js → p-62887754.system.js} +1 -1
  805. package/dist/ionic/p-63fde7fe.entry.js +4 -0
  806. package/dist/ionic/p-6433742e.system.entry.js +4 -0
  807. package/dist/ionic/p-67b6e18d.entry.js +4 -0
  808. package/dist/ionic/p-6a0dd6bc.js +4 -0
  809. package/dist/ionic/p-6bc2795b.entry.js +4 -0
  810. package/dist/ionic/p-6bd1c0ee.system.entry.js +4 -0
  811. package/dist/ionic/p-6caa76ec.js +4 -0
  812. package/dist/ionic/p-6cbca6c5.system.entry.js +4 -0
  813. package/dist/ionic/p-6dc32e8b.entry.js +4 -0
  814. package/dist/ionic/p-6e53290f.system.entry.js +4 -0
  815. package/dist/ionic/p-7071d7ca.js +4 -0
  816. package/dist/ionic/p-70e5bb40.entry.js +4 -0
  817. package/dist/ionic/p-72cbf799.system.entry.js +4 -0
  818. package/dist/ionic/p-74d76684.js +4 -0
  819. package/dist/ionic/p-7607d8ba.system.entry.js +4 -0
  820. package/dist/ionic/p-78ed8923.js +4 -0
  821. package/dist/ionic/p-7a858bae.system.js +4 -0
  822. package/dist/ionic/p-7d36cf9f.system.entry.js +4 -0
  823. package/dist/ionic/p-80917a19.system.entry.js +4 -0
  824. package/dist/ionic/p-815f649a.system.entry.js +4 -0
  825. package/dist/ionic/p-81b72701.entry.js +4 -0
  826. package/dist/ionic/p-822e47a9.system.js +4 -0
  827. package/dist/ionic/p-82cb4235.js +4 -0
  828. package/dist/ionic/{p-d836d43e.js → p-83948e48.js} +1 -1
  829. package/dist/ionic/p-8463212e.js +4 -0
  830. package/dist/ionic/p-84667060.entry.js +4 -0
  831. package/dist/ionic/p-857ba8d4.entry.js +4 -0
  832. package/dist/ionic/p-86d98446.system.entry.js +4 -0
  833. package/dist/ionic/{p-1e10ad5d.system.entry.js → p-86e9a917.system.entry.js} +1 -1
  834. package/dist/ionic/p-871f4046.entry.js +4 -0
  835. package/dist/ionic/p-8956f9a8.system.entry.js +4 -0
  836. package/dist/ionic/p-8b0f0a87.entry.js +4 -0
  837. package/dist/ionic/p-8dbfae64.entry.js +4 -0
  838. package/dist/ionic/p-903c544a.js +4 -0
  839. package/dist/ionic/p-916bc9ed.system.entry.js +4 -0
  840. package/dist/ionic/p-92646426.js +4 -0
  841. package/dist/ionic/{p-27281edd.js → p-93e47936.js} +1 -1
  842. package/dist/ionic/{p-a93873de.system.js → p-94816e7a.system.js} +1 -1
  843. package/dist/ionic/p-94fc2104.system.entry.js +4 -0
  844. package/dist/ionic/p-986855d6.js +4 -0
  845. package/dist/ionic/p-9abb7d9b.entry.js +4 -0
  846. package/dist/ionic/p-9ac1a506.system.js +4 -0
  847. package/dist/ionic/p-a1cdc742.js +4 -0
  848. package/dist/ionic/p-a2814291.system.js +4 -0
  849. package/dist/ionic/{p-d743e981.js → p-a510e9c0.js} +1 -1
  850. package/dist/ionic/p-a538ab98.js +4 -0
  851. package/dist/ionic/p-a5a9206f.entry.js +4 -0
  852. package/dist/ionic/p-a685da08.system.entry.js +4 -0
  853. package/dist/ionic/p-a98061d0.entry.js +4 -0
  854. package/dist/ionic/p-a9af4103.js +4 -0
  855. package/dist/ionic/{p-d60342e3.js → p-aaccbb95.js} +1 -1
  856. package/dist/ionic/p-ac1c2b6a.js +4 -0
  857. package/dist/ionic/p-b18c52cd.entry.js +4 -0
  858. package/dist/ionic/p-b517144d.system.entry.js +4 -0
  859. package/dist/ionic/p-b5dc9a32.system.entry.js +4 -0
  860. package/dist/ionic/p-b79f3ded.entry.js +4 -0
  861. package/dist/ionic/p-b80582fe.system.entry.js +4 -0
  862. package/dist/ionic/p-b8b89651.system.entry.js +4 -0
  863. package/dist/ionic/p-bbcec459.system.js +4 -0
  864. package/dist/ionic/p-bcdd3eaf.entry.js +4 -0
  865. package/dist/ionic/p-be87ec25.entry.js +4 -0
  866. package/dist/ionic/p-bf68cda6.entry.js +4 -0
  867. package/dist/ionic/p-c248c88d.system.js +4 -0
  868. package/dist/ionic/p-c373eebd.system.js +4 -0
  869. package/dist/ionic/p-c9d5da01.entry.js +4 -0
  870. package/dist/ionic/p-cdff6a80.system.entry.js +4 -0
  871. package/dist/ionic/p-cea92c46.system.js +4 -0
  872. package/dist/ionic/p-d4862803.entry.js +4 -0
  873. package/dist/ionic/p-d9edb291.entry.js +4 -0
  874. package/dist/ionic/{p-19ea7bff.system.js → p-dbd39afd.system.js} +1 -1
  875. package/dist/ionic/p-dc286a59.entry.js +4 -0
  876. package/dist/ionic/p-df09db21.entry.js +4 -0
  877. package/dist/ionic/p-e3b70846.system.js +4 -0
  878. package/dist/ionic/p-ea3ca474.system.js +4 -0
  879. package/dist/ionic/p-eb4ba253.entry.js +4 -0
  880. package/dist/ionic/p-ebd641e4.system.entry.js +4 -0
  881. package/dist/ionic/p-ebe94d15.entry.js +4 -0
  882. package/dist/ionic/p-eda736d7.entry.js +4 -0
  883. package/dist/ionic/p-ee17be82.entry.js +4 -0
  884. package/dist/ionic/p-eee899d5.system.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-f44c9c6e.system.entry.js +4 -0
  890. package/dist/ionic/p-f5be97b8.entry.js +4 -0
  891. package/dist/ionic/p-f8123284.entry.js +4 -0
  892. package/dist/ionic/{p-5da94421.system.js → p-f8c63ac0.system.js} +2 -2
  893. package/dist/ionic/p-f99cf3f7.system.entry.js +4 -0
  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 -0
  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 +11 -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 +1384 -184
  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-visible.d.ts +1 -0
  1001. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1002. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1003. package/hydrate/index.js +2359 -881
  1004. package/hydrate/index.mjs +2359 -881
  1005. package/package.json +10 -5
  1006. package/components/hardware-back-button.js +0 -115
  1007. package/components/index8.js +0 -128
  1008. package/dist/cjs/hardware-back-button-9e8a2c4f.js +0 -122
  1009. package/dist/cjs/index-5915f9b3.js +0 -38
  1010. package/dist/cjs/index-c8d52405.js +0 -10
  1011. package/dist/cjs/ionic-global-d9a8bb5b.js +0 -237
  1012. package/dist/esm/hardware-back-button-06ef3c3e.js +0 -116
  1013. package/dist/esm/index-79b30591.js +0 -167
  1014. package/dist/esm/index-9b0d46f4.js +0 -34
  1015. package/dist/esm/index-a5d50daf.js +0 -7
  1016. package/dist/esm/ionic-global-c81d82ab.js +0 -231
  1017. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1018. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  1019. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1020. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1021. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1022. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  1023. package/dist/esm-es5/hardware-back-button-06ef3c3e.js +0 -4
  1024. package/dist/esm-es5/helpers-da915de8.js +0 -4
  1025. package/dist/esm-es5/index-24b48b06.js +0 -4
  1026. package/dist/esm-es5/index-3ad7f18b.js +0 -4
  1027. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1028. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1029. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1030. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1031. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1032. package/dist/esm-es5/ionic-global-c81d82ab.js +0 -4
  1033. package/dist/esm-es5/ios.transition-4ee1a3af.js +0 -4
  1034. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1035. package/dist/esm-es5/md.transition-5106a0d2.js +0 -4
  1036. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  1037. package/dist/esm-es5/overlays-e7b9d6d9.js +0 -4
  1038. package/dist/esm-es5/status-tap-f472b09f.js +0 -4
  1039. package/dist/esm-es5/swipe-back-e5394307.js +0 -4
  1040. package/dist/ionic/p-01186920.system.entry.js +0 -4
  1041. package/dist/ionic/p-0303d0f8.js +0 -4
  1042. package/dist/ionic/p-0574e87e.js +0 -4
  1043. package/dist/ionic/p-06e58c4e.js +0 -4
  1044. package/dist/ionic/p-06fee233.js +0 -4
  1045. package/dist/ionic/p-081a4ce4.entry.js +0 -4
  1046. package/dist/ionic/p-0aa833fb.system.js +0 -4
  1047. package/dist/ionic/p-0c06e09b.system.js +0 -4
  1048. package/dist/ionic/p-1046866e.system.entry.js +0 -4
  1049. package/dist/ionic/p-12a722b8.system.entry.js +0 -4
  1050. package/dist/ionic/p-14be4015.entry.js +0 -4
  1051. package/dist/ionic/p-14e159ea.system.entry.js +0 -4
  1052. package/dist/ionic/p-15e76dd1.entry.js +0 -4
  1053. package/dist/ionic/p-16188af7.entry.js +0 -4
  1054. package/dist/ionic/p-16799667.system.entry.js +0 -4
  1055. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  1056. package/dist/ionic/p-17474161.system.js +0 -4
  1057. package/dist/ionic/p-19a5be0a.entry.js +0 -4
  1058. package/dist/ionic/p-19ec4f42.entry.js +0 -4
  1059. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1060. package/dist/ionic/p-1e010627.system.entry.js +0 -4
  1061. package/dist/ionic/p-1e4371bd.js +0 -4
  1062. package/dist/ionic/p-1e67b266.system.entry.js +0 -4
  1063. package/dist/ionic/p-1fe02220.system.entry.js +0 -4
  1064. package/dist/ionic/p-2172893e.system.entry.js +0 -4
  1065. package/dist/ionic/p-21e5e7e4.js +0 -4
  1066. package/dist/ionic/p-2507278c.system.entry.js +0 -4
  1067. package/dist/ionic/p-2690b1de.js +0 -4
  1068. package/dist/ionic/p-2799c6d3.system.entry.js +0 -4
  1069. package/dist/ionic/p-2abae1cc.system.entry.js +0 -4
  1070. package/dist/ionic/p-2b7827c7.js +0 -4
  1071. package/dist/ionic/p-2b838f86.system.entry.js +0 -4
  1072. package/dist/ionic/p-2b9b78c7.entry.js +0 -4
  1073. package/dist/ionic/p-2bd0ae94.system.entry.js +0 -4
  1074. package/dist/ionic/p-2e46590d.system.entry.js +0 -4
  1075. package/dist/ionic/p-2fc0dafe.entry.js +0 -4
  1076. package/dist/ionic/p-322c5fb4.system.js +0 -4
  1077. package/dist/ionic/p-33a8a71b.entry.js +0 -4
  1078. package/dist/ionic/p-37cb43bd.system.entry.js +0 -4
  1079. package/dist/ionic/p-3ad285e3.system.js +0 -4
  1080. package/dist/ionic/p-3cc276f4.js +0 -4
  1081. package/dist/ionic/p-424eb140.system.entry.js +0 -4
  1082. package/dist/ionic/p-4439fc2a.entry.js +0 -4
  1083. package/dist/ionic/p-45693d7e.entry.js +0 -4
  1084. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  1085. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  1086. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  1087. package/dist/ionic/p-508d024a.entry.js +0 -4
  1088. package/dist/ionic/p-52d7a191.entry.js +0 -4
  1089. package/dist/ionic/p-567de071.system.entry.js +0 -4
  1090. package/dist/ionic/p-5823babc.system.entry.js +0 -4
  1091. package/dist/ionic/p-5ab1b709.entry.js +0 -4
  1092. package/dist/ionic/p-5b932840.entry.js +0 -4
  1093. package/dist/ionic/p-5fce0c0b.system.entry.js +0 -4
  1094. package/dist/ionic/p-626fd66d.system.entry.js +0 -4
  1095. package/dist/ionic/p-62af944c.entry.js +0 -4
  1096. package/dist/ionic/p-63b0abde.system.entry.js +0 -4
  1097. package/dist/ionic/p-6499df44.system.entry.js +0 -4
  1098. package/dist/ionic/p-66640ff7.system.entry.js +0 -4
  1099. package/dist/ionic/p-69066a53.js +0 -4
  1100. package/dist/ionic/p-69666e8a.system.entry.js +0 -4
  1101. package/dist/ionic/p-6b280620.entry.js +0 -4
  1102. package/dist/ionic/p-6d32975a.entry.js +0 -4
  1103. package/dist/ionic/p-6d6cedc5.entry.js +0 -4
  1104. package/dist/ionic/p-72812e99.js +0 -4
  1105. package/dist/ionic/p-72bc8a1c.js +0 -4
  1106. package/dist/ionic/p-73dc4950.entry.js +0 -4
  1107. package/dist/ionic/p-7458862e.system.entry.js +0 -4
  1108. package/dist/ionic/p-792919fd.system.js +0 -4
  1109. package/dist/ionic/p-797eeea8.system.entry.js +0 -4
  1110. package/dist/ionic/p-7b30edcc.js +0 -4
  1111. package/dist/ionic/p-7b9a2b23.entry.js +0 -4
  1112. package/dist/ionic/p-7ddc46c3.system.entry.js +0 -4
  1113. package/dist/ionic/p-7ed1657c.system.entry.js +0 -4
  1114. package/dist/ionic/p-8635f5e6.system.js +0 -4
  1115. package/dist/ionic/p-88e63c7d.js +0 -4
  1116. package/dist/ionic/p-89859dfa.entry.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-c449820c.system.js +0 -4
  1153. package/dist/ionic/p-c468af8a.system.js +0 -4
  1154. package/dist/ionic/p-c61cc894.js +0 -4
  1155. package/dist/ionic/p-c9f3a539.entry.js +0 -4
  1156. package/dist/ionic/p-ca065903.system.entry.js +0 -4
  1157. package/dist/ionic/p-cac0e0b3.system.entry.js +0 -4
  1158. package/dist/ionic/p-d18ab582.system.entry.js +0 -4
  1159. package/dist/ionic/p-d47265c8.js +0 -4
  1160. package/dist/ionic/p-d6841eac.js +0 -4
  1161. package/dist/ionic/p-d7aa6b00.entry.js +0 -4
  1162. package/dist/ionic/p-da074ff7.entry.js +0 -4
  1163. package/dist/ionic/p-ddaa748a.system.entry.js +0 -4
  1164. package/dist/ionic/p-de930745.entry.js +0 -4
  1165. package/dist/ionic/p-dfb78785.system.js +0 -4
  1166. package/dist/ionic/p-e4ee80be.system.entry.js +0 -4
  1167. package/dist/ionic/p-e4f69534.system.entry.js +0 -4
  1168. package/dist/ionic/p-e563a35c.entry.js +0 -4
  1169. package/dist/ionic/p-e6635685.js +0 -4
  1170. package/dist/ionic/p-e7ed4a7f.system.js +0 -4
  1171. package/dist/ionic/p-e85d901b.system.entry.js +0 -4
  1172. package/dist/ionic/p-eba29931.entry.js +0 -4
  1173. package/dist/ionic/p-ebf042e0.system.entry.js +0 -4
  1174. package/dist/ionic/p-ecceeb90.js +0 -4
  1175. package/dist/ionic/p-ed75fcfb.system.entry.js +0 -4
  1176. package/dist/ionic/p-efaffe74.entry.js +0 -4
  1177. package/dist/ionic/p-f1acf541.system.entry.js +0 -4
  1178. package/dist/ionic/p-f3102647.system.entry.js +0 -4
  1179. package/dist/ionic/p-fca6ef5f.system.entry.js +0 -4
  1180. package/dist/ionic/p-fec61c32.entry.js +0 -4
  1181. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1182. /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,19 @@ export namespace Components {
2299
2671
  * This property allows developers to specify a custom function or property name for comparing objects when determining the selected option in the ion-radio-group. When not specified, the default behavior will use strict equality (===) for comparison.
2300
2672
  */
2301
2673
  "compareWith"?: string | RadioGroupCompareFn | null;
2674
+ /**
2675
+ * The mode determines the platform behaviors of the component.
2676
+ */
2677
+ "mode"?: "ios" | "md";
2302
2678
  /**
2303
2679
  * The name of the control, which is submitted with the form data.
2304
2680
  */
2305
2681
  "name": string;
2306
2682
  "setFocus": () => Promise<void>;
2683
+ /**
2684
+ * The theme determines the visual appearance of the component.
2685
+ */
2686
+ "theme"?: "ios" | "md" | "ionic";
2307
2687
  /**
2308
2688
  * the value of the radio group.
2309
2689
  */
@@ -2347,7 +2727,7 @@ export namespace Components {
2347
2727
  */
2348
2728
  "min": number;
2349
2729
  /**
2350
- * The mode determines which platform styles to use.
2730
+ * The mode determines the platform behaviors of the component.
2351
2731
  */
2352
2732
  "mode"?: "ios" | "md";
2353
2733
  /**
@@ -2370,6 +2750,10 @@ export namespace Components {
2370
2750
  * Specifies the value granularity.
2371
2751
  */
2372
2752
  "step": number;
2753
+ /**
2754
+ * The theme determines the visual appearance of the component.
2755
+ */
2756
+ "theme"?: "ios" | "md" | "ionic";
2373
2757
  /**
2374
2758
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2375
2759
  */
@@ -2401,7 +2785,7 @@ export namespace Components {
2401
2785
  */
2402
2786
  "getProgress": () => Promise<number>;
2403
2787
  /**
2404
- * The mode determines which platform styles to use.
2788
+ * The mode determines the platform behaviors of the component.
2405
2789
  */
2406
2790
  "mode"?: "ios" | "md";
2407
2791
  /**
@@ -2420,8 +2804,16 @@ export namespace Components {
2420
2804
  * 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
2805
  */
2422
2806
  "snapbackDuration": string;
2807
+ /**
2808
+ * The theme determines the visual appearance of the component.
2809
+ */
2810
+ "theme"?: "ios" | "md" | "ionic";
2423
2811
  }
2424
2812
  interface IonRefresherContent {
2813
+ /**
2814
+ * The mode determines the platform behaviors of the component.
2815
+ */
2816
+ "mode"?: "ios" | "md";
2425
2817
  /**
2426
2818
  * 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
2819
  */
@@ -2438,8 +2830,20 @@ export namespace Components {
2438
2830
  * 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
2831
  */
2440
2832
  "refreshingText"?: string | IonicSafeString;
2833
+ /**
2834
+ * The theme determines the visual appearance of the component.
2835
+ */
2836
+ "theme"?: "ios" | "md" | "ionic";
2441
2837
  }
2442
2838
  interface IonReorder {
2839
+ /**
2840
+ * The mode determines the platform behaviors of the component.
2841
+ */
2842
+ "mode"?: "ios" | "md";
2843
+ /**
2844
+ * The theme determines the visual appearance of the component.
2845
+ */
2846
+ "theme"?: "ios" | "md" | "ionic";
2443
2847
  }
2444
2848
  interface IonReorderGroup {
2445
2849
  /**
@@ -2451,6 +2855,14 @@ export namespace Components {
2451
2855
  * If `true`, the reorder will be hidden.
2452
2856
  */
2453
2857
  "disabled": boolean;
2858
+ /**
2859
+ * The mode determines the platform behaviors of the component.
2860
+ */
2861
+ "mode"?: "ios" | "md";
2862
+ /**
2863
+ * The theme determines the visual appearance of the component.
2864
+ */
2865
+ "theme"?: "ios" | "md" | "ionic";
2454
2866
  }
2455
2867
  interface IonRippleEffect {
2456
2868
  /**
@@ -2459,6 +2871,14 @@ export namespace Components {
2459
2871
  * @param y The vertical coordinate of where the ripple should start.
2460
2872
  */
2461
2873
  "addRipple": (x: number, y: number) => Promise<() => void>;
2874
+ /**
2875
+ * The mode determines the platform behaviors of the component.
2876
+ */
2877
+ "mode"?: "ios" | "md";
2878
+ /**
2879
+ * The theme determines the visual appearance of the component.
2880
+ */
2881
+ "theme"?: "ios" | "md" | "ionic";
2462
2882
  /**
2463
2883
  * 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
2884
  */
@@ -2481,6 +2901,14 @@ export namespace Components {
2481
2901
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2482
2902
  */
2483
2903
  "componentProps"?: { [key: string]: any };
2904
+ /**
2905
+ * The mode determines the platform behaviors of the component.
2906
+ */
2907
+ "mode"?: "ios" | "md";
2908
+ /**
2909
+ * The theme determines the visual appearance of the component.
2910
+ */
2911
+ "theme"?: "ios" | "md" | "ionic";
2484
2912
  /**
2485
2913
  * 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
2914
  */
@@ -2502,6 +2930,10 @@ export namespace Components {
2502
2930
  */
2503
2931
  "back": () => Promise<void>;
2504
2932
  "canTransition": () => Promise<string | boolean>;
2933
+ /**
2934
+ * The mode determines the platform behaviors of the component.
2935
+ */
2936
+ "mode"?: "ios" | "md";
2505
2937
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2506
2938
  "printDebug": () => Promise<void>;
2507
2939
  /**
@@ -2514,6 +2946,10 @@ export namespace Components {
2514
2946
  * 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
2947
  */
2516
2948
  "root": string;
2949
+ /**
2950
+ * The theme determines the visual appearance of the component.
2951
+ */
2952
+ "theme"?: "ios" | "md" | "ionic";
2517
2953
  /**
2518
2954
  * 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
2955
  */
@@ -2528,6 +2964,10 @@ export namespace Components {
2528
2964
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2529
2965
  */
2530
2966
  "href": string | undefined;
2967
+ /**
2968
+ * The mode determines the platform behaviors of the component.
2969
+ */
2970
+ "mode"?: "ios" | "md";
2531
2971
  /**
2532
2972
  * 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
2973
  */
@@ -2544,6 +2984,10 @@ export namespace Components {
2544
2984
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2545
2985
  */
2546
2986
  "target": string | undefined;
2987
+ /**
2988
+ * The theme determines the visual appearance of the component.
2989
+ */
2990
+ "theme"?: "ios" | "md" | "ionic";
2547
2991
  }
2548
2992
  interface IonRouterOutlet {
2549
2993
  /**
@@ -2558,13 +3002,25 @@ export namespace Components {
2558
3002
  "delegate"?: FrameworkDelegate;
2559
3003
  "getRouteId": () => Promise<RouteID | undefined>;
2560
3004
  /**
2561
- * The mode determines which platform styles to use.
3005
+ * The mode determines the platform behaviors of the component.
2562
3006
  */
2563
3007
  "mode": "ios" | "md";
2564
3008
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2565
3009
  "swipeHandler"?: SwipeGestureHandler;
3010
+ /**
3011
+ * The theme determines the visual appearance of the component.
3012
+ */
3013
+ "theme"?: "ios" | "md" | "ionic";
2566
3014
  }
2567
3015
  interface IonRow {
3016
+ /**
3017
+ * The mode determines the platform behaviors of the component.
3018
+ */
3019
+ "mode"?: "ios" | "md";
3020
+ /**
3021
+ * The theme determines the visual appearance of the component.
3022
+ */
3023
+ "theme"?: "ios" | "md" | "ionic";
2568
3024
  }
2569
3025
  interface IonSearchbar {
2570
3026
  /**
@@ -2584,15 +3040,15 @@ export namespace Components {
2584
3040
  */
2585
3041
  "autocorrect": 'on' | 'off';
2586
3042
  /**
2587
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3043
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2588
3044
  */
2589
- "cancelButtonIcon": string;
3045
+ "cancelButtonIcon"?: string;
2590
3046
  /**
2591
- * Set the the cancel button text. Only applies to `ios` mode.
3047
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
2592
3048
  */
2593
3049
  "cancelButtonText": string;
2594
3050
  /**
2595
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3051
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2596
3052
  */
2597
3053
  "clearIcon"?: string;
2598
3054
  /**
@@ -2628,7 +3084,7 @@ export namespace Components {
2628
3084
  */
2629
3085
  "minlength"?: number;
2630
3086
  /**
2631
- * The mode determines which platform styles to use.
3087
+ * The mode determines the platform behaviors of the component.
2632
3088
  */
2633
3089
  "mode"?: "ios" | "md";
2634
3090
  /**
@@ -2640,7 +3096,7 @@ export namespace Components {
2640
3096
  */
2641
3097
  "placeholder": string;
2642
3098
  /**
2643
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3099
+ * 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
3100
  */
2645
3101
  "searchIcon"?: string;
2646
3102
  /**
@@ -2659,6 +3115,10 @@ export namespace Components {
2659
3115
  * If `true`, enable spellcheck on the input.
2660
3116
  */
2661
3117
  "spellcheck": boolean;
3118
+ /**
3119
+ * The theme determines the visual appearance of the component.
3120
+ */
3121
+ "theme"?: "ios" | "md" | "ionic";
2662
3122
  /**
2663
3123
  * Set the type of the input.
2664
3124
  */
@@ -2678,7 +3138,7 @@ export namespace Components {
2678
3138
  */
2679
3139
  "disabled": boolean;
2680
3140
  /**
2681
- * The mode determines which platform styles to use.
3141
+ * The mode determines the platform behaviors of the component.
2682
3142
  */
2683
3143
  "mode"?: "ios" | "md";
2684
3144
  /**
@@ -2693,6 +3153,10 @@ export namespace Components {
2693
3153
  * If `true`, users will be able to swipe between segment buttons to activate them.
2694
3154
  */
2695
3155
  "swipeGesture": boolean;
3156
+ /**
3157
+ * The theme determines the visual appearance of the component.
3158
+ */
3159
+ "theme"?: "ios" | "md" | "ionic";
2696
3160
  /**
2697
3161
  * the value of the segment.
2698
3162
  */
@@ -2712,10 +3176,14 @@ export namespace Components {
2712
3176
  */
2713
3177
  "layout"?: SegmentButtonLayout;
2714
3178
  /**
2715
- * The mode determines which platform styles to use.
3179
+ * The mode determines the platform behaviors of the component.
2716
3180
  */
2717
3181
  "mode"?: "ios" | "md";
2718
3182
  "setFocus": () => Promise<void>;
3183
+ /**
3184
+ * The theme determines the visual appearance of the component.
3185
+ */
3186
+ "theme"?: "ios" | "md" | "ionic";
2719
3187
  /**
2720
3188
  * The type of the button.
2721
3189
  */
@@ -2756,11 +3224,11 @@ export namespace Components {
2756
3224
  */
2757
3225
  "disabled": boolean;
2758
3226
  /**
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.
3227
+ * 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
3228
  */
2761
3229
  "expandedIcon"?: string;
2762
3230
  /**
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.
3231
+ * 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
3232
  */
2765
3233
  "fill"?: 'outline' | 'solid';
2766
3234
  /**
@@ -2784,7 +3252,7 @@ export namespace Components {
2784
3252
  */
2785
3253
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2786
3254
  /**
2787
- * The mode determines which platform styles to use.
3255
+ * The mode determines the platform behaviors of the component.
2788
3256
  */
2789
3257
  "mode"?: "ios" | "md";
2790
3258
  /**
@@ -2813,11 +3281,19 @@ export namespace Components {
2813
3281
  */
2814
3282
  "selectedText"?: string | null;
2815
3283
  /**
2816
- * The shape of the select. If "round" it will have an increased border radius.
3284
+ * 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.
3285
+ */
3286
+ "shape"?: 'soft' | 'round' | 'rectangular';
3287
+ /**
3288
+ * 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.
3289
+ */
3290
+ "size"?: 'small' | 'medium' | 'large';
3291
+ /**
3292
+ * The theme determines the visual appearance of the component.
2817
3293
  */
2818
- "shape"?: 'round';
3294
+ "theme"?: "ios" | "md" | "ionic";
2819
3295
  /**
2820
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3296
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2821
3297
  */
2822
3298
  "toggleIcon"?: string;
2823
3299
  /**
@@ -2835,6 +3311,14 @@ export namespace Components {
2835
3311
  * 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
3312
  */
2837
3313
  "disabled": boolean;
3314
+ /**
3315
+ * The mode determines the platform behaviors of the component.
3316
+ */
3317
+ "mode"?: "ios" | "md";
3318
+ /**
3319
+ * The theme determines the visual appearance of the component.
3320
+ */
3321
+ "theme"?: "ios" | "md" | "ionic";
2838
3322
  /**
2839
3323
  * The text value of the option.
2840
3324
  */
@@ -2849,6 +3333,10 @@ export namespace Components {
2849
3333
  * The text content of the popover body
2850
3334
  */
2851
3335
  "message"?: string;
3336
+ /**
3337
+ * The mode determines the platform behaviors of the component.
3338
+ */
3339
+ "mode"?: "ios" | "md";
2852
3340
  /**
2853
3341
  * If true, the select accepts multiple values
2854
3342
  */
@@ -2861,12 +3349,24 @@ export namespace Components {
2861
3349
  * The subheader text of the popover
2862
3350
  */
2863
3351
  "subHeader"?: string;
3352
+ /**
3353
+ * The theme determines the visual appearance of the component.
3354
+ */
3355
+ "theme"?: "ios" | "md" | "ionic";
2864
3356
  }
2865
3357
  interface IonSkeletonText {
2866
3358
  /**
2867
3359
  * If `true`, the skeleton text will animate.
2868
3360
  */
2869
3361
  "animated": boolean;
3362
+ /**
3363
+ * The mode determines the platform behaviors of the component.
3364
+ */
3365
+ "mode"?: "ios" | "md";
3366
+ /**
3367
+ * The theme determines the visual appearance of the component.
3368
+ */
3369
+ "theme"?: "ios" | "md" | "ionic";
2870
3370
  }
2871
3371
  interface IonSpinner {
2872
3372
  /**
@@ -2877,6 +3377,10 @@ export namespace Components {
2877
3377
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2878
3378
  */
2879
3379
  "duration"?: number;
3380
+ /**
3381
+ * The mode determines the platform behaviors of the component.
3382
+ */
3383
+ "mode"?: "ios" | "md";
2880
3384
  /**
2881
3385
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2882
3386
  */
@@ -2885,6 +3389,14 @@ export namespace Components {
2885
3389
  * If `true`, the spinner's animation will be paused.
2886
3390
  */
2887
3391
  "paused": boolean;
3392
+ /**
3393
+ * 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.
3394
+ */
3395
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3396
+ /**
3397
+ * The theme determines the visual appearance of the component.
3398
+ */
3399
+ "theme"?: "ios" | "md" | "ionic";
2888
3400
  }
2889
3401
  interface IonSplitPane {
2890
3402
  /**
@@ -2896,6 +3408,14 @@ export namespace Components {
2896
3408
  */
2897
3409
  "disabled": boolean;
2898
3410
  "isVisible": () => Promise<boolean>;
3411
+ /**
3412
+ * The mode determines the platform behaviors of the component.
3413
+ */
3414
+ "mode"?: "ios" | "md";
3415
+ /**
3416
+ * The theme determines the visual appearance of the component.
3417
+ */
3418
+ "theme"?: "ios" | "md" | "ionic";
2899
3419
  /**
2900
3420
  * 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
3421
  */
@@ -2908,6 +3428,10 @@ export namespace Components {
2908
3428
  */
2909
3429
  "component"?: ComponentRef;
2910
3430
  "delegate"?: FrameworkDelegate;
3431
+ /**
3432
+ * The mode determines the platform behaviors of the component.
3433
+ */
3434
+ "mode"?: "ios" | "md";
2911
3435
  /**
2912
3436
  * Set the active component for the tab
2913
3437
  */
@@ -2916,6 +3440,10 @@ export namespace Components {
2916
3440
  * 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
3441
  */
2918
3442
  "tab": string;
3443
+ /**
3444
+ * The theme determines the visual appearance of the component.
3445
+ */
3446
+ "theme"?: "ios" | "md" | "ionic";
2919
3447
  }
2920
3448
  interface IonTabBar {
2921
3449
  /**
@@ -2923,7 +3451,11 @@ export namespace Components {
2923
3451
  */
2924
3452
  "color"?: Color;
2925
3453
  /**
2926
- * The mode determines which platform styles to use.
3454
+ * 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"`.
3455
+ */
3456
+ "expand": 'compact' | 'full';
3457
+ /**
3458
+ * The mode determines the platform behaviors of the component.
2927
3459
  */
2928
3460
  "mode"?: "ios" | "md";
2929
3461
  /**
@@ -2931,7 +3463,15 @@ export namespace Components {
2931
3463
  */
2932
3464
  "selectedTab"?: string;
2933
3465
  /**
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).
3466
+ * 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.
3467
+ */
3468
+ "shape"?: 'soft' | 'round' | 'rectangular';
3469
+ /**
3470
+ * The theme determines the visual appearance of the component.
3471
+ */
3472
+ "theme"?: "ios" | "md" | "ionic";
3473
+ /**
3474
+ * 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
3475
  */
2936
3476
  "translucent": boolean;
2937
3477
  }
@@ -2953,7 +3493,7 @@ export namespace Components {
2953
3493
  */
2954
3494
  "layout"?: TabButtonLayout;
2955
3495
  /**
2956
- * The mode determines which platform styles to use.
3496
+ * The mode determines the platform behaviors of the component.
2957
3497
  */
2958
3498
  "mode"?: "ios" | "md";
2959
3499
  /**
@@ -2964,6 +3504,10 @@ export namespace Components {
2964
3504
  * The selected tab component
2965
3505
  */
2966
3506
  "selected": boolean;
3507
+ /**
3508
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
3509
+ */
3510
+ "shape"?: 'soft' | 'round' | 'rectangular';
2967
3511
  /**
2968
3512
  * 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.
2969
3513
  */
@@ -2972,6 +3516,10 @@ export namespace Components {
2972
3516
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2973
3517
  */
2974
3518
  "target": string | undefined;
3519
+ /**
3520
+ * The theme determines the visual appearance of the component.
3521
+ */
3522
+ "theme"?: "ios" | "md" | "ionic";
2975
3523
  }
2976
3524
  interface IonTabs {
2977
3525
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2984,12 +3532,20 @@ export namespace Components {
2984
3532
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2985
3533
  */
2986
3534
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3535
+ /**
3536
+ * The mode determines the platform behaviors of the component.
3537
+ */
3538
+ "mode"?: "ios" | "md";
2987
3539
  /**
2988
3540
  * 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
3541
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2990
3542
  */
2991
3543
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2992
3544
  "setRouteId": (id: string) => Promise<RouteWrite>;
3545
+ /**
3546
+ * The theme determines the visual appearance of the component.
3547
+ */
3548
+ "theme"?: "ios" | "md" | "ionic";
2993
3549
  "useRouter": boolean;
2994
3550
  }
2995
3551
  interface IonText {
@@ -2998,9 +3554,13 @@ export namespace Components {
2998
3554
  */
2999
3555
  "color"?: Color;
3000
3556
  /**
3001
- * The mode determines which platform styles to use.
3557
+ * The mode determines the platform behaviors of the component.
3002
3558
  */
3003
3559
  "mode"?: "ios" | "md";
3560
+ /**
3561
+ * The theme determines the visual appearance of the component.
3562
+ */
3563
+ "theme"?: "ios" | "md" | "ionic";
3004
3564
  }
3005
3565
  interface IonTextarea {
3006
3566
  /**
@@ -3052,7 +3612,7 @@ export namespace Components {
3052
3612
  */
3053
3613
  "errorText"?: string;
3054
3614
  /**
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.
3615
+ * 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
3616
  */
3057
3617
  "fill"?: 'outline' | 'solid';
3058
3618
  /**
@@ -3084,7 +3644,7 @@ export namespace Components {
3084
3644
  */
3085
3645
  "minlength"?: number;
3086
3646
  /**
3087
- * The mode determines which platform styles to use.
3647
+ * The mode determines the platform behaviors of the component.
3088
3648
  */
3089
3649
  "mode"?: "ios" | "md";
3090
3650
  /**
@@ -3112,13 +3672,21 @@ export namespace Components {
3112
3672
  */
3113
3673
  "setFocus": () => Promise<void>;
3114
3674
  /**
3115
- * The shape of the textarea. If "round" it will have an increased border radius.
3675
+ * 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.
3116
3676
  */
3117
- "shape"?: 'round';
3677
+ "shape"?: 'soft' | 'round' | 'rectangular';
3678
+ /**
3679
+ * 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.
3680
+ */
3681
+ "size"?: 'small' | 'medium' | 'large';
3118
3682
  /**
3119
3683
  * If `true`, the element will have its spelling and grammar checked.
3120
3684
  */
3121
3685
  "spellcheck": boolean;
3686
+ /**
3687
+ * The theme determines the visual appearance of the component.
3688
+ */
3689
+ "theme"?: "ios" | "md" | "ionic";
3122
3690
  /**
3123
3691
  * The value of the textarea.
3124
3692
  */
@@ -3129,16 +3697,32 @@ export namespace Components {
3129
3697
  "wrap"?: 'hard' | 'soft' | 'off';
3130
3698
  }
3131
3699
  interface IonThumbnail {
3700
+ /**
3701
+ * The mode determines the platform behaviors of the component.
3702
+ */
3703
+ "mode"?: "ios" | "md";
3704
+ /**
3705
+ * The theme determines the visual appearance of the component.
3706
+ */
3707
+ "theme"?: "ios" | "md" | "ionic";
3132
3708
  }
3133
3709
  interface IonTitle {
3134
3710
  /**
3135
3711
  * 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
3712
  */
3137
3713
  "color"?: Color;
3714
+ /**
3715
+ * The mode determines the platform behaviors of the component.
3716
+ */
3717
+ "mode"?: "ios" | "md";
3138
3718
  /**
3139
3719
  * The size of the toolbar title.
3140
3720
  */
3141
3721
  "size"?: 'large' | 'small';
3722
+ /**
3723
+ * The theme determines the visual appearance of the component.
3724
+ */
3725
+ "theme"?: "ios" | "md" | "ionic";
3142
3726
  }
3143
3727
  interface IonToast {
3144
3728
  /**
@@ -3206,7 +3790,7 @@ export namespace Components {
3206
3790
  */
3207
3791
  "message"?: string | IonicSafeString;
3208
3792
  /**
3209
- * The mode determines which platform styles to use.
3793
+ * The mode determines the platform behaviors of the component.
3210
3794
  */
3211
3795
  "mode"?: "ios" | "md";
3212
3796
  /**
@@ -3230,12 +3814,20 @@ export namespace Components {
3230
3814
  * Present the toast overlay after it has been created.
3231
3815
  */
3232
3816
  "present": () => Promise<void>;
3817
+ /**
3818
+ * 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.
3819
+ */
3820
+ "shape"?: 'soft' | 'round' | 'rectangular';
3233
3821
  /**
3234
3822
  * 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
3823
  */
3236
3824
  "swipeGesture"?: ToastSwipeGestureDirection;
3237
3825
  /**
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).
3826
+ * The theme determines the visual appearance of the component.
3827
+ */
3828
+ "theme"?: "ios" | "md" | "ionic";
3829
+ /**
3830
+ * 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
3831
  */
3240
3832
  "translucent": boolean;
3241
3833
  /**
@@ -3273,13 +3865,17 @@ export namespace Components {
3273
3865
  */
3274
3866
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3275
3867
  /**
3276
- * The mode determines which platform styles to use.
3868
+ * The mode determines the platform behaviors of the component.
3277
3869
  */
3278
3870
  "mode"?: "ios" | "md";
3279
3871
  /**
3280
3872
  * The name of the control, which is submitted with the form data.
3281
3873
  */
3282
3874
  "name": string;
3875
+ /**
3876
+ * The theme determines the visual appearance of the component.
3877
+ */
3878
+ "theme"?: "ios" | "md" | "ionic";
3283
3879
  /**
3284
3880
  * 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
3881
  */
@@ -3291,9 +3887,13 @@ export namespace Components {
3291
3887
  */
3292
3888
  "color"?: Color;
3293
3889
  /**
3294
- * The mode determines which platform styles to use.
3890
+ * The mode determines the platform behaviors of the component.
3295
3891
  */
3296
3892
  "mode"?: "ios" | "md";
3893
+ /**
3894
+ * The theme determines the visual appearance of the component.
3895
+ */
3896
+ "theme"?: "ios" | "md" | "ionic";
3297
3897
  }
3298
3898
  }
3299
3899
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4811,13 +5411,17 @@ declare namespace LocalJSX {
4811
5411
  */
4812
5412
  "disabled"?: boolean;
4813
5413
  /**
4814
- * The mode determines which platform styles to use.
5414
+ * The mode determines the platform behaviors of the component.
4815
5415
  */
4816
5416
  "mode"?: "ios" | "md";
4817
5417
  /**
4818
5418
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4819
5419
  */
4820
5420
  "readonly"?: boolean;
5421
+ /**
5422
+ * The theme determines the visual appearance of the component.
5423
+ */
5424
+ "theme"?: "ios" | "md" | "ionic";
4821
5425
  /**
4822
5426
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4823
5427
  */
@@ -4845,7 +5449,7 @@ declare namespace LocalJSX {
4845
5449
  */
4846
5450
  "expand"?: 'compact' | 'inset';
4847
5451
  /**
4848
- * The mode determines which platform styles to use.
5452
+ * The mode determines the platform behaviors of the component.
4849
5453
  */
4850
5454
  "mode"?: "ios" | "md";
4851
5455
  /**
@@ -4860,6 +5464,14 @@ declare namespace LocalJSX {
4860
5464
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4861
5465
  */
4862
5466
  "readonly"?: boolean;
5467
+ /**
5468
+ * 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"`.
5469
+ */
5470
+ "shape"?: 'soft' | 'round' | 'rectangular';
5471
+ /**
5472
+ * The theme determines the visual appearance of the component.
5473
+ */
5474
+ "theme"?: "ios" | "md" | "ionic";
4863
5475
  /**
4864
5476
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4865
5477
  */
@@ -4907,7 +5519,7 @@ declare namespace LocalJSX {
4907
5519
  */
4908
5520
  "leaveAnimation"?: AnimationBuilder;
4909
5521
  /**
4910
- * The mode determines which platform styles to use.
5522
+ * The mode determines the platform behaviors of the component.
4911
5523
  */
4912
5524
  "mode"?: "ios" | "md";
4913
5525
  /**
@@ -4947,7 +5559,11 @@ declare namespace LocalJSX {
4947
5559
  */
4948
5560
  "subHeader"?: string;
4949
5561
  /**
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).
5562
+ * The theme determines the visual appearance of the component.
5563
+ */
5564
+ "theme"?: "ios" | "md" | "ionic";
5565
+ /**
5566
+ * 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
5567
  */
4952
5568
  "translucent"?: boolean;
4953
5569
  /**
@@ -5005,7 +5621,7 @@ declare namespace LocalJSX {
5005
5621
  */
5006
5622
  "message"?: string | IonicSafeString;
5007
5623
  /**
5008
- * The mode determines which platform styles to use.
5624
+ * The mode determines the platform behaviors of the component.
5009
5625
  */
5010
5626
  "mode"?: "ios" | "md";
5011
5627
  /**
@@ -5045,7 +5661,11 @@ declare namespace LocalJSX {
5045
5661
  */
5046
5662
  "subHeader"?: string;
5047
5663
  /**
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).
5664
+ * The theme determines the visual appearance of the component.
5665
+ */
5666
+ "theme"?: "ios" | "md" | "ionic";
5667
+ /**
5668
+ * 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
5669
  */
5050
5670
  "translucent"?: boolean;
5051
5671
  /**
@@ -5054,8 +5674,32 @@ declare namespace LocalJSX {
5054
5674
  "trigger"?: string | undefined;
5055
5675
  }
5056
5676
  interface IonApp {
5677
+ /**
5678
+ * The mode determines the platform behaviors of the component.
5679
+ */
5680
+ "mode"?: "ios" | "md";
5681
+ /**
5682
+ * The theme determines the visual appearance of the component.
5683
+ */
5684
+ "theme"?: "ios" | "md" | "ionic";
5057
5685
  }
5058
5686
  interface IonAvatar {
5687
+ /**
5688
+ * The mode determines the platform behaviors of the component.
5689
+ */
5690
+ "mode"?: "ios" | "md";
5691
+ /**
5692
+ * 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.
5693
+ */
5694
+ "shape"?: 'soft' | 'round' | 'rectangular';
5695
+ /**
5696
+ * 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.
5697
+ */
5698
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5699
+ /**
5700
+ * The theme determines the visual appearance of the component.
5701
+ */
5702
+ "theme"?: "ios" | "md" | "ionic";
5059
5703
  }
5060
5704
  interface IonBackButton {
5061
5705
  /**
@@ -5075,7 +5719,7 @@ declare namespace LocalJSX {
5075
5719
  */
5076
5720
  "icon"?: string | null;
5077
5721
  /**
5078
- * The mode determines which platform styles to use.
5722
+ * The mode determines the platform behaviors of the component.
5079
5723
  */
5080
5724
  "mode"?: "ios" | "md";
5081
5725
  /**
@@ -5086,12 +5730,20 @@ declare namespace LocalJSX {
5086
5730
  * The text to display in the back button.
5087
5731
  */
5088
5732
  "text"?: string | null;
5733
+ /**
5734
+ * The theme determines the visual appearance of the component.
5735
+ */
5736
+ "theme"?: "ios" | "md" | "ionic";
5089
5737
  /**
5090
5738
  * The type of the button.
5091
5739
  */
5092
5740
  "type"?: 'submit' | 'reset' | 'button';
5093
5741
  }
5094
5742
  interface IonBackdrop {
5743
+ /**
5744
+ * The mode determines the platform behaviors of the component.
5745
+ */
5746
+ "mode"?: "ios" | "md";
5095
5747
  /**
5096
5748
  * Emitted when the backdrop is tapped.
5097
5749
  */
@@ -5104,6 +5756,10 @@ declare namespace LocalJSX {
5104
5756
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5105
5757
  */
5106
5758
  "tappable"?: boolean;
5759
+ /**
5760
+ * The theme determines the visual appearance of the component.
5761
+ */
5762
+ "theme"?: "ios" | "md" | "ionic";
5107
5763
  /**
5108
5764
  * If `true`, the backdrop will be visible.
5109
5765
  */
@@ -5115,9 +5771,21 @@ declare namespace LocalJSX {
5115
5771
  */
5116
5772
  "color"?: Color;
5117
5773
  /**
5118
- * The mode determines which platform styles to use.
5774
+ * The mode determines the platform behaviors of the component.
5119
5775
  */
5120
5776
  "mode"?: "ios" | "md";
5777
+ /**
5778
+ * 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.
5779
+ */
5780
+ "shape"?: 'soft' | 'round | rectangular';
5781
+ /**
5782
+ * 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.
5783
+ */
5784
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5785
+ /**
5786
+ * The theme determines the visual appearance of the component.
5787
+ */
5788
+ "theme"?: "ios" | "md" | "ionic";
5121
5789
  }
5122
5790
  interface IonBreadcrumb {
5123
5791
  /**
@@ -5141,7 +5809,7 @@ declare namespace LocalJSX {
5141
5809
  */
5142
5810
  "href"?: string | undefined;
5143
5811
  /**
5144
- * The mode determines which platform styles to use.
5812
+ * The mode determines the platform behaviors of the component.
5145
5813
  */
5146
5814
  "mode"?: "ios" | "md";
5147
5815
  /**
@@ -5172,6 +5840,10 @@ declare namespace LocalJSX {
5172
5840
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5173
5841
  */
5174
5842
  "target"?: string | undefined;
5843
+ /**
5844
+ * The theme determines the visual appearance of the component.
5845
+ */
5846
+ "theme"?: "ios" | "md" | "ionic";
5175
5847
  }
5176
5848
  interface IonBreadcrumbs {
5177
5849
  /**
@@ -5191,13 +5863,17 @@ declare namespace LocalJSX {
5191
5863
  */
5192
5864
  "maxItems"?: number;
5193
5865
  /**
5194
- * The mode determines which platform styles to use.
5866
+ * The mode determines the platform behaviors of the component.
5195
5867
  */
5196
5868
  "mode"?: "ios" | "md";
5197
5869
  /**
5198
5870
  * Emitted when the collapsed indicator is clicked on.
5199
5871
  */
5200
5872
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5873
+ /**
5874
+ * The theme determines the visual appearance of the component.
5875
+ */
5876
+ "theme"?: "ios" | "md" | "ionic";
5201
5877
  }
5202
5878
  interface IonButton {
5203
5879
  /**
@@ -5233,7 +5909,7 @@ declare namespace LocalJSX {
5233
5909
  */
5234
5910
  "href"?: string | undefined;
5235
5911
  /**
5236
- * The mode determines which platform styles to use.
5912
+ * The mode determines the platform behaviors of the component.
5237
5913
  */
5238
5914
  "mode"?: "ios" | "md";
5239
5915
  /**
@@ -5257,13 +5933,13 @@ declare namespace LocalJSX {
5257
5933
  */
5258
5934
  "routerDirection"?: RouterDirection;
5259
5935
  /**
5260
- * Set to `"round"` for a button with more rounded corners.
5936
+ * 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
5937
  */
5262
- "shape"?: 'round';
5938
+ "shape"?: 'soft' | 'round' | 'rectangular';
5263
5939
  /**
5264
5940
  * 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
5941
  */
5266
- "size"?: 'small' | 'default' | 'large';
5942
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5267
5943
  /**
5268
5944
  * If `true`, activates a button with a heavier font weight.
5269
5945
  */
@@ -5272,6 +5948,10 @@ declare namespace LocalJSX {
5272
5948
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5273
5949
  */
5274
5950
  "target"?: string | undefined;
5951
+ /**
5952
+ * The theme determines the visual appearance of the component.
5953
+ */
5954
+ "theme"?: "ios" | "md" | "ionic";
5275
5955
  /**
5276
5956
  * The type of the button.
5277
5957
  */
@@ -5279,9 +5959,17 @@ declare namespace LocalJSX {
5279
5959
  }
5280
5960
  interface IonButtons {
5281
5961
  /**
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)
5962
+ * 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
5963
  */
5284
5964
  "collapse"?: boolean;
5965
+ /**
5966
+ * The mode determines the platform behaviors of the component.
5967
+ */
5968
+ "mode"?: "ios" | "md";
5969
+ /**
5970
+ * The theme determines the visual appearance of the component.
5971
+ */
5972
+ "theme"?: "ios" | "md" | "ionic";
5285
5973
  }
5286
5974
  interface IonCard {
5287
5975
  /**
@@ -5305,7 +5993,7 @@ declare namespace LocalJSX {
5305
5993
  */
5306
5994
  "href"?: string | undefined;
5307
5995
  /**
5308
- * The mode determines which platform styles to use.
5996
+ * The mode determines the platform behaviors of the component.
5309
5997
  */
5310
5998
  "mode"?: "ios" | "md";
5311
5999
  /**
@@ -5320,10 +6008,18 @@ declare namespace LocalJSX {
5320
6008
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5321
6009
  */
5322
6010
  "routerDirection"?: RouterDirection;
6011
+ /**
6012
+ * 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"`.
6013
+ */
6014
+ "shape"?: 'soft' | 'round' | 'rectangular';
5323
6015
  /**
5324
6016
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5325
6017
  */
5326
6018
  "target"?: string | undefined;
6019
+ /**
6020
+ * The theme determines the visual appearance of the component.
6021
+ */
6022
+ "theme"?: "ios" | "md" | "ionic";
5327
6023
  /**
5328
6024
  * The type of the button. Only used when an `onclick` or `button` property is present.
5329
6025
  */
@@ -5331,9 +6027,13 @@ declare namespace LocalJSX {
5331
6027
  }
5332
6028
  interface IonCardContent {
5333
6029
  /**
5334
- * The mode determines which platform styles to use.
6030
+ * The mode determines the platform behaviors of the component.
5335
6031
  */
5336
6032
  "mode"?: "ios" | "md";
6033
+ /**
6034
+ * The theme determines the visual appearance of the component.
6035
+ */
6036
+ "theme"?: "ios" | "md" | "ionic";
5337
6037
  }
5338
6038
  interface IonCardHeader {
5339
6039
  /**
@@ -5341,11 +6041,15 @@ declare namespace LocalJSX {
5341
6041
  */
5342
6042
  "color"?: Color;
5343
6043
  /**
5344
- * The mode determines which platform styles to use.
6044
+ * The mode determines the platform behaviors of the component.
5345
6045
  */
5346
6046
  "mode"?: "ios" | "md";
5347
6047
  /**
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).
6048
+ * The theme determines the visual appearance of the component.
6049
+ */
6050
+ "theme"?: "ios" | "md" | "ionic";
6051
+ /**
6052
+ * 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
6053
  */
5350
6054
  "translucent"?: boolean;
5351
6055
  }
@@ -5355,9 +6059,13 @@ declare namespace LocalJSX {
5355
6059
  */
5356
6060
  "color"?: Color;
5357
6061
  /**
5358
- * The mode determines which platform styles to use.
6062
+ * The mode determines the platform behaviors of the component.
5359
6063
  */
5360
6064
  "mode"?: "ios" | "md";
6065
+ /**
6066
+ * The theme determines the visual appearance of the component.
6067
+ */
6068
+ "theme"?: "ios" | "md" | "ionic";
5361
6069
  }
5362
6070
  interface IonCardTitle {
5363
6071
  /**
@@ -5365,9 +6073,13 @@ declare namespace LocalJSX {
5365
6073
  */
5366
6074
  "color"?: Color;
5367
6075
  /**
5368
- * The mode determines which platform styles to use.
6076
+ * The mode determines the platform behaviors of the component.
5369
6077
  */
5370
6078
  "mode"?: "ios" | "md";
6079
+ /**
6080
+ * The theme determines the visual appearance of the component.
6081
+ */
6082
+ "theme"?: "ios" | "md" | "ionic";
5371
6083
  }
5372
6084
  interface IonCheckbox {
5373
6085
  /**
@@ -5399,7 +6111,7 @@ declare namespace LocalJSX {
5399
6111
  */
5400
6112
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5401
6113
  /**
5402
- * The mode determines which platform styles to use.
6114
+ * The mode determines the platform behaviors of the component.
5403
6115
  */
5404
6116
  "mode"?: "ios" | "md";
5405
6117
  /**
@@ -5411,13 +6123,25 @@ declare namespace LocalJSX {
5411
6123
  */
5412
6124
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5413
6125
  /**
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.
6126
+ * 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
6127
  */
5416
6128
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5417
6129
  /**
5418
6130
  * Emitted when the checkbox has focus.
5419
6131
  */
5420
6132
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
6133
+ /**
6134
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6135
+ */
6136
+ "shape"?: 'soft' | 'rectangular';
6137
+ /**
6138
+ * Set to `"small"` for a checkbox with less height and padding.
6139
+ */
6140
+ "size"?: 'small';
6141
+ /**
6142
+ * The theme determines the visual appearance of the component.
6143
+ */
6144
+ "theme"?: "ios" | "md" | "ionic";
5421
6145
  /**
5422
6146
  * 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
6147
  */
@@ -5433,15 +6157,31 @@ declare namespace LocalJSX {
5433
6157
  */
5434
6158
  "disabled"?: boolean;
5435
6159
  /**
5436
- * The mode determines which platform styles to use.
6160
+ * The mode determines the platform behaviors of the component.
5437
6161
  */
5438
6162
  "mode"?: "ios" | "md";
5439
6163
  /**
5440
6164
  * Display an outline style button.
5441
6165
  */
5442
6166
  "outline"?: boolean;
6167
+ /**
6168
+ * 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.
6169
+ */
6170
+ "shape"?: 'soft' | 'round' | 'rectangular';
6171
+ /**
6172
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6173
+ */
6174
+ "size"?: 'small' | 'large';
6175
+ /**
6176
+ * The theme determines the visual appearance of the component.
6177
+ */
6178
+ "theme"?: "ios" | "md" | "ionic";
5443
6179
  }
5444
6180
  interface IonCol {
6181
+ /**
6182
+ * The mode determines the platform behaviors of the component.
6183
+ */
6184
+ "mode"?: "ios" | "md";
5445
6185
  /**
5446
6186
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5447
6187
  */
@@ -5538,6 +6278,10 @@ declare namespace LocalJSX {
5538
6278
  * 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
6279
  */
5540
6280
  "sizeXs"?: string;
6281
+ /**
6282
+ * The theme determines the visual appearance of the component.
6283
+ */
6284
+ "theme"?: "ios" | "md" | "ionic";
5541
6285
  }
5542
6286
  interface IonContent {
5543
6287
  /**
@@ -5556,6 +6300,10 @@ declare namespace LocalJSX {
5556
6300
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5557
6301
  */
5558
6302
  "fullscreen"?: boolean;
6303
+ /**
6304
+ * The mode determines the platform behaviors of the component.
6305
+ */
6306
+ "mode"?: "ios" | "md";
5559
6307
  /**
5560
6308
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5561
6309
  */
@@ -5580,6 +6328,10 @@ declare namespace LocalJSX {
5580
6328
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5581
6329
  */
5582
6330
  "scrollY"?: boolean;
6331
+ /**
6332
+ * The theme determines the visual appearance of the component.
6333
+ */
6334
+ "theme"?: "ios" | "md" | "ionic";
5583
6335
  }
5584
6336
  interface IonDatetime {
5585
6337
  /**
@@ -5647,7 +6399,7 @@ declare namespace LocalJSX {
5647
6399
  */
5648
6400
  "minuteValues"?: number[] | number | string;
5649
6401
  /**
5650
- * The mode determines which platform styles to use.
6402
+ * The mode determines the platform behaviors of the component.
5651
6403
  */
5652
6404
  "mode"?: "ios" | "md";
5653
6405
  /**
@@ -5710,6 +6462,10 @@ declare namespace LocalJSX {
5710
6462
  * 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
6463
  */
5712
6464
  "size"?: 'cover' | 'fixed';
6465
+ /**
6466
+ * The theme determines the visual appearance of the component.
6467
+ */
6468
+ "theme"?: "ios" | "md" | "ionic";
5713
6469
  /**
5714
6470
  * 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
6471
  */
@@ -5737,9 +6493,13 @@ declare namespace LocalJSX {
5737
6493
  */
5738
6494
  "disabled"?: boolean;
5739
6495
  /**
5740
- * The mode determines which platform styles to use.
6496
+ * The mode determines the platform behaviors of the component.
5741
6497
  */
5742
6498
  "mode"?: "ios" | "md";
6499
+ /**
6500
+ * The theme determines the visual appearance of the component.
6501
+ */
6502
+ "theme"?: "ios" | "md" | "ionic";
5743
6503
  }
5744
6504
  interface IonFab {
5745
6505
  /**
@@ -5754,6 +6514,14 @@ declare namespace LocalJSX {
5754
6514
  * Where to align the fab horizontally in the viewport.
5755
6515
  */
5756
6516
  "horizontal"?: 'start' | 'end' | 'center';
6517
+ /**
6518
+ * The mode determines the platform behaviors of the component.
6519
+ */
6520
+ "mode"?: "ios" | "md";
6521
+ /**
6522
+ * The theme determines the visual appearance of the component.
6523
+ */
6524
+ "theme"?: "ios" | "md" | "ionic";
5757
6525
  /**
5758
6526
  * Where to align the fab vertically in the viewport.
5759
6527
  */
@@ -5785,7 +6553,7 @@ declare namespace LocalJSX {
5785
6553
  */
5786
6554
  "href"?: string | undefined;
5787
6555
  /**
5788
- * The mode determines which platform styles to use.
6556
+ * The mode determines the platform behaviors of the component.
5789
6557
  */
5790
6558
  "mode"?: "ios" | "md";
5791
6559
  /**
@@ -5821,7 +6589,11 @@ declare namespace LocalJSX {
5821
6589
  */
5822
6590
  "target"?: string | undefined;
5823
6591
  /**
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).
6592
+ * The theme determines the visual appearance of the component.
6593
+ */
6594
+ "theme"?: "ios" | "md" | "ionic";
6595
+ /**
6596
+ * 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
6597
  */
5826
6598
  "translucent"?: boolean;
5827
6599
  /**
@@ -5835,21 +6607,33 @@ declare namespace LocalJSX {
5835
6607
  */
5836
6608
  "activated"?: boolean;
5837
6609
  /**
5838
- * The side the fab list will show on relative to the main fab button.
6610
+ * The mode determines the platform behaviors of the component.
5839
6611
  */
5840
- "side"?: 'start' | 'end' | 'top' | 'bottom';
6612
+ "mode"?: "ios" | "md";
6613
+ /**
6614
+ * The side the fab list will show on relative to the main fab button.
6615
+ */
6616
+ "side"?: 'start' | 'end' | 'top' | 'bottom';
6617
+ /**
6618
+ * The theme determines the visual appearance of the component.
6619
+ */
6620
+ "theme"?: "ios" | "md" | "ionic";
5841
6621
  }
5842
6622
  interface IonFooter {
5843
6623
  /**
5844
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6624
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5845
6625
  */
5846
6626
  "collapse"?: 'fade';
5847
6627
  /**
5848
- * The mode determines which platform styles to use.
6628
+ * The mode determines the platform behaviors of the component.
5849
6629
  */
5850
6630
  "mode"?: "ios" | "md";
5851
6631
  /**
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.
6632
+ * The theme determines the visual appearance of the component.
6633
+ */
6634
+ "theme"?: "ios" | "md" | "ionic";
6635
+ /**
6636
+ * 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
6637
  */
5854
6638
  "translucent"?: boolean;
5855
6639
  }
@@ -5858,18 +6642,34 @@ declare namespace LocalJSX {
5858
6642
  * If `true`, the grid will have a fixed width based on the screen size.
5859
6643
  */
5860
6644
  "fixed"?: boolean;
6645
+ /**
6646
+ * The mode determines the platform behaviors of the component.
6647
+ */
6648
+ "mode"?: "ios" | "md";
6649
+ /**
6650
+ * The theme determines the visual appearance of the component.
6651
+ */
6652
+ "theme"?: "ios" | "md" | "ionic";
5861
6653
  }
5862
6654
  interface IonHeader {
5863
6655
  /**
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)
6656
+ * 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
6657
  */
5866
6658
  "collapse"?: 'condense' | 'fade';
5867
6659
  /**
5868
- * The mode determines which platform styles to use.
6660
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6661
+ */
6662
+ "divider"?: boolean;
6663
+ /**
6664
+ * The mode determines the platform behaviors of the component.
5869
6665
  */
5870
6666
  "mode"?: "ios" | "md";
5871
6667
  /**
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.
6668
+ * The theme determines the visual appearance of the component.
6669
+ */
6670
+ "theme"?: "ios" | "md" | "ionic";
6671
+ /**
6672
+ * 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
6673
  */
5874
6674
  "translucent"?: boolean;
5875
6675
  }
@@ -5878,6 +6678,10 @@ declare namespace LocalJSX {
5878
6678
  * 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
6679
  */
5880
6680
  "alt"?: string;
6681
+ /**
6682
+ * The mode determines the platform behaviors of the component.
6683
+ */
6684
+ "mode"?: "ios" | "md";
5881
6685
  /**
5882
6686
  * Emitted when the img fails to load
5883
6687
  */
@@ -5894,12 +6698,20 @@ declare namespace LocalJSX {
5894
6698
  * The image URL. This attribute is mandatory for the `<img>` element.
5895
6699
  */
5896
6700
  "src"?: string;
6701
+ /**
6702
+ * The theme determines the visual appearance of the component.
6703
+ */
6704
+ "theme"?: "ios" | "md" | "ionic";
5897
6705
  }
5898
6706
  interface IonInfiniteScroll {
5899
6707
  /**
5900
6708
  * 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
6709
  */
5902
6710
  "disabled"?: boolean;
6711
+ /**
6712
+ * The mode determines the platform behaviors of the component.
6713
+ */
6714
+ "mode"?: "ios" | "md";
5903
6715
  /**
5904
6716
  * 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
6717
  */
@@ -5908,6 +6720,10 @@ declare namespace LocalJSX {
5908
6720
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5909
6721
  */
5910
6722
  "position"?: 'top' | 'bottom';
6723
+ /**
6724
+ * The theme determines the visual appearance of the component.
6725
+ */
6726
+ "theme"?: "ios" | "md" | "ionic";
5911
6727
  /**
5912
6728
  * 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
6729
  */
@@ -5922,6 +6738,14 @@ declare namespace LocalJSX {
5922
6738
  * 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
6739
  */
5924
6740
  "loadingText"?: string | IonicSafeString;
6741
+ /**
6742
+ * The mode determines the platform behaviors of the component.
6743
+ */
6744
+ "mode"?: "ios" | "md";
6745
+ /**
6746
+ * The theme determines the visual appearance of the component.
6747
+ */
6748
+ "theme"?: "ios" | "md" | "ionic";
5925
6749
  }
5926
6750
  interface IonInput {
5927
6751
  /**
@@ -5981,7 +6805,7 @@ declare namespace LocalJSX {
5981
6805
  */
5982
6806
  "errorText"?: string;
5983
6807
  /**
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.
6808
+ * 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
6809
  */
5986
6810
  "fill"?: 'outline' | 'solid';
5987
6811
  /**
@@ -5997,7 +6821,7 @@ declare namespace LocalJSX {
5997
6821
  */
5998
6822
  "label"?: string;
5999
6823
  /**
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 ("...").
6824
+ * 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
6825
  */
6002
6826
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6003
6827
  /**
@@ -6017,7 +6841,7 @@ declare namespace LocalJSX {
6017
6841
  */
6018
6842
  "minlength"?: number;
6019
6843
  /**
6020
- * The mode determines which platform styles to use.
6844
+ * The mode determines the platform behaviors of the component.
6021
6845
  */
6022
6846
  "mode"?: "ios" | "md";
6023
6847
  /**
@@ -6061,9 +6885,13 @@ declare namespace LocalJSX {
6061
6885
  */
6062
6886
  "required"?: boolean;
6063
6887
  /**
6064
- * The shape of the input. If "round" it will have an increased border radius.
6888
+ * 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"`.
6889
+ */
6890
+ "shape"?: 'soft' | 'round' | 'rectangular';
6891
+ /**
6892
+ * 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.
6065
6893
  */
6066
- "shape"?: 'round';
6894
+ "size"?: 'medium' | 'large' | 'xlarge';
6067
6895
  /**
6068
6896
  * If `true`, the element will have its spelling and grammar checked.
6069
6897
  */
@@ -6072,6 +6900,10 @@ declare namespace LocalJSX {
6072
6900
  * 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
6901
  */
6074
6902
  "step"?: string;
6903
+ /**
6904
+ * The theme determines the visual appearance of the component.
6905
+ */
6906
+ "theme"?: "ios" | "md" | "ionic";
6075
6907
  /**
6076
6908
  * The type of control to display. The default type is text.
6077
6909
  */
@@ -6109,7 +6941,7 @@ declare namespace LocalJSX {
6109
6941
  */
6110
6942
  "color"?: Color;
6111
6943
  /**
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.
6944
+ * 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
6945
  */
6114
6946
  "detail"?: boolean;
6115
6947
  /**
@@ -6133,7 +6965,7 @@ declare namespace LocalJSX {
6133
6965
  */
6134
6966
  "lines"?: 'full' | 'inset' | 'none';
6135
6967
  /**
6136
- * The mode determines which platform styles to use.
6968
+ * The mode determines the platform behaviors of the component.
6137
6969
  */
6138
6970
  "mode"?: "ios" | "md";
6139
6971
  /**
@@ -6152,6 +6984,10 @@ declare namespace LocalJSX {
6152
6984
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6153
6985
  */
6154
6986
  "target"?: string | undefined;
6987
+ /**
6988
+ * The theme determines the visual appearance of the component.
6989
+ */
6990
+ "theme"?: "ios" | "md" | "ionic";
6155
6991
  /**
6156
6992
  * The type of the button. Only used when an `onclick` or `button` property is present.
6157
6993
  */
@@ -6163,15 +6999,27 @@ declare namespace LocalJSX {
6163
6999
  */
6164
7000
  "color"?: Color;
6165
7001
  /**
6166
- * The mode determines which platform styles to use.
7002
+ * The mode determines the platform behaviors of the component.
6167
7003
  */
6168
7004
  "mode"?: "ios" | "md";
6169
7005
  /**
6170
7006
  * 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
7007
  */
6172
7008
  "sticky"?: boolean;
7009
+ /**
7010
+ * The theme determines the visual appearance of the component.
7011
+ */
7012
+ "theme"?: "ios" | "md" | "ionic";
6173
7013
  }
6174
7014
  interface IonItemGroup {
7015
+ /**
7016
+ * The mode determines the platform behaviors of the component.
7017
+ */
7018
+ "mode"?: "ios" | "md";
7019
+ /**
7020
+ * The theme determines the visual appearance of the component.
7021
+ */
7022
+ "theme"?: "ios" | "md" | "ionic";
6175
7023
  }
6176
7024
  interface IonItemOption {
6177
7025
  /**
@@ -6195,23 +7043,35 @@ declare namespace LocalJSX {
6195
7043
  */
6196
7044
  "href"?: string | undefined;
6197
7045
  /**
6198
- * The mode determines which platform styles to use.
7046
+ * The mode determines the platform behaviors of the component.
6199
7047
  */
6200
7048
  "mode"?: "ios" | "md";
6201
7049
  /**
6202
7050
  * 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
7051
  */
6204
7052
  "rel"?: string | undefined;
7053
+ /**
7054
+ * 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.
7055
+ */
7056
+ "shape"?: 'soft' | 'round' | 'rectangular';
6205
7057
  /**
6206
7058
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6207
7059
  */
6208
7060
  "target"?: string | undefined;
7061
+ /**
7062
+ * The theme determines the visual appearance of the component.
7063
+ */
7064
+ "theme"?: "ios" | "md" | "ionic";
6209
7065
  /**
6210
7066
  * The type of the button.
6211
7067
  */
6212
7068
  "type"?: 'submit' | 'reset' | 'button';
6213
7069
  }
6214
7070
  interface IonItemOptions {
7071
+ /**
7072
+ * The mode determines the platform behaviors of the component.
7073
+ */
7074
+ "mode"?: "ios" | "md";
6215
7075
  /**
6216
7076
  * Emitted when the item has been fully swiped.
6217
7077
  */
@@ -6220,16 +7080,28 @@ declare namespace LocalJSX {
6220
7080
  * 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
7081
  */
6222
7082
  "side"?: Side;
7083
+ /**
7084
+ * The theme determines the visual appearance of the component.
7085
+ */
7086
+ "theme"?: "ios" | "md" | "ionic";
6223
7087
  }
6224
7088
  interface IonItemSliding {
6225
7089
  /**
6226
7090
  * If `true`, the user cannot interact with the sliding item.
6227
7091
  */
6228
7092
  "disabled"?: boolean;
7093
+ /**
7094
+ * The mode determines the platform behaviors of the component.
7095
+ */
7096
+ "mode"?: "ios" | "md";
6229
7097
  /**
6230
7098
  * Emitted when the sliding position changes.
6231
7099
  */
6232
7100
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7101
+ /**
7102
+ * The theme determines the visual appearance of the component.
7103
+ */
7104
+ "theme"?: "ios" | "md" | "ionic";
6233
7105
  }
6234
7106
  interface IonLabel {
6235
7107
  /**
@@ -6237,13 +7109,17 @@ declare namespace LocalJSX {
6237
7109
  */
6238
7110
  "color"?: Color;
6239
7111
  /**
6240
- * The mode determines which platform styles to use.
7112
+ * The mode determines the platform behaviors of the component.
6241
7113
  */
6242
7114
  "mode"?: "ios" | "md";
6243
7115
  /**
6244
7116
  * The position determines where and how the label behaves inside an item.
6245
7117
  */
6246
7118
  "position"?: 'fixed' | 'stacked' | 'floating';
7119
+ /**
7120
+ * The theme determines the visual appearance of the component.
7121
+ */
7122
+ "theme"?: "ios" | "md" | "ionic";
6247
7123
  }
6248
7124
  interface IonList {
6249
7125
  /**
@@ -6255,9 +7131,17 @@ declare namespace LocalJSX {
6255
7131
  */
6256
7132
  "lines"?: 'full' | 'inset' | 'none';
6257
7133
  /**
6258
- * The mode determines which platform styles to use.
7134
+ * The mode determines the platform behaviors of the component.
6259
7135
  */
6260
7136
  "mode"?: "ios" | "md";
7137
+ /**
7138
+ * 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.
7139
+ */
7140
+ "shape"?: 'soft' | 'round' | 'rectangular';
7141
+ /**
7142
+ * The theme determines the visual appearance of the component.
7143
+ */
7144
+ "theme"?: "ios" | "md" | "ionic";
6261
7145
  }
6262
7146
  interface IonListHeader {
6263
7147
  /**
@@ -6269,9 +7153,13 @@ declare namespace LocalJSX {
6269
7153
  */
6270
7154
  "lines"?: 'full' | 'inset' | 'none';
6271
7155
  /**
6272
- * The mode determines which platform styles to use.
7156
+ * The mode determines the platform behaviors of the component.
6273
7157
  */
6274
7158
  "mode"?: "ios" | "md";
7159
+ /**
7160
+ * The theme determines the visual appearance of the component.
7161
+ */
7162
+ "theme"?: "ios" | "md" | "ionic";
6275
7163
  }
6276
7164
  interface IonLoading {
6277
7165
  /**
@@ -6315,7 +7203,7 @@ declare namespace LocalJSX {
6315
7203
  */
6316
7204
  "message"?: string | IonicSafeString;
6317
7205
  /**
6318
- * The mode determines which platform styles to use.
7206
+ * The mode determines the platform behaviors of the component.
6319
7207
  */
6320
7208
  "mode"?: "ios" | "md";
6321
7209
  /**
@@ -6359,7 +7247,11 @@ declare namespace LocalJSX {
6359
7247
  */
6360
7248
  "spinner"?: SpinnerTypes | null;
6361
7249
  /**
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).
7250
+ * The theme determines the visual appearance of the component.
7251
+ */
7252
+ "theme"?: "ios" | "md" | "ionic";
7253
+ /**
7254
+ * 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
7255
  */
6364
7256
  "translucent"?: boolean;
6365
7257
  /**
@@ -6384,6 +7276,10 @@ declare namespace LocalJSX {
6384
7276
  * An id for the menu.
6385
7277
  */
6386
7278
  "menuId"?: string;
7279
+ /**
7280
+ * The mode determines the platform behaviors of the component.
7281
+ */
7282
+ "mode"?: "ios" | "md";
6387
7283
  /**
6388
7284
  * Emitted when the menu is closed.
6389
7285
  */
@@ -6408,6 +7304,10 @@ declare namespace LocalJSX {
6408
7304
  * If `true`, swiping the menu is enabled.
6409
7305
  */
6410
7306
  "swipeGesture"?: boolean;
7307
+ /**
7308
+ * The theme determines the visual appearance of the component.
7309
+ */
7310
+ "theme"?: "ios" | "md" | "ionic";
6411
7311
  /**
6412
7312
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6413
7313
  */
@@ -6431,9 +7331,13 @@ declare namespace LocalJSX {
6431
7331
  */
6432
7332
  "menu"?: string;
6433
7333
  /**
6434
- * The mode determines which platform styles to use.
7334
+ * The mode determines the platform behaviors of the component.
6435
7335
  */
6436
7336
  "mode"?: "ios" | "md";
7337
+ /**
7338
+ * The theme determines the visual appearance of the component.
7339
+ */
7340
+ "theme"?: "ios" | "md" | "ionic";
6437
7341
  /**
6438
7342
  * The type of the button.
6439
7343
  */
@@ -6448,6 +7352,14 @@ declare namespace LocalJSX {
6448
7352
  * 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
7353
  */
6450
7354
  "menu"?: string;
7355
+ /**
7356
+ * The mode determines the platform behaviors of the component.
7357
+ */
7358
+ "mode"?: "ios" | "md";
7359
+ /**
7360
+ * The theme determines the visual appearance of the component.
7361
+ */
7362
+ "theme"?: "ios" | "md" | "ionic";
6451
7363
  }
6452
7364
  interface IonModal {
6453
7365
  /**
@@ -6511,7 +7423,7 @@ declare namespace LocalJSX {
6511
7423
  */
6512
7424
  "leaveAnimation"?: AnimationBuilder;
6513
7425
  /**
6514
- * The mode determines which platform styles to use.
7426
+ * The mode determines the platform behaviors of the component.
6515
7427
  */
6516
7428
  "mode"?: "ios" | "md";
6517
7429
  /**
@@ -6554,10 +7466,18 @@ declare namespace LocalJSX {
6554
7466
  * 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
7467
  */
6556
7468
  "presentingElement"?: HTMLElement;
7469
+ /**
7470
+ * 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.
7471
+ */
7472
+ "shape"?: 'soft' | 'round' | 'rectangular';
6557
7473
  /**
6558
7474
  * 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
7475
  */
6560
7476
  "showBackdrop"?: boolean;
7477
+ /**
7478
+ * The theme determines the visual appearance of the component.
7479
+ */
7480
+ "theme"?: "ios" | "md" | "ionic";
6561
7481
  /**
6562
7482
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6563
7483
  */
@@ -6569,9 +7489,13 @@ declare namespace LocalJSX {
6569
7489
  */
6570
7490
  "animated"?: boolean;
6571
7491
  /**
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.
7492
+ * 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
7493
  */
6574
7494
  "animation"?: AnimationBuilder;
7495
+ /**
7496
+ * The mode determines the platform behaviors of the component.
7497
+ */
7498
+ "mode"?: "ios" | "md";
6575
7499
  /**
6576
7500
  * Event fired when the nav has changed components
6577
7501
  */
@@ -6592,6 +7516,10 @@ declare namespace LocalJSX {
6592
7516
  * If the nav component should allow for swipe-to-go-back.
6593
7517
  */
6594
7518
  "swipeGesture"?: boolean;
7519
+ /**
7520
+ * The theme determines the visual appearance of the component.
7521
+ */
7522
+ "theme"?: "ios" | "md" | "ionic";
6595
7523
  }
6596
7524
  interface IonNavLink {
6597
7525
  /**
@@ -6602,6 +7530,10 @@ declare namespace LocalJSX {
6602
7530
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6603
7531
  */
6604
7532
  "componentProps"?: ComponentProps;
7533
+ /**
7534
+ * The mode determines the platform behaviors of the component.
7535
+ */
7536
+ "mode"?: "ios" | "md";
6605
7537
  /**
6606
7538
  * The transition animation when navigating to another page.
6607
7539
  */
@@ -6610,6 +7542,10 @@ declare namespace LocalJSX {
6610
7542
  * The transition direction when navigating to another page.
6611
7543
  */
6612
7544
  "routerDirection"?: RouterDirection;
7545
+ /**
7546
+ * The theme determines the visual appearance of the component.
7547
+ */
7548
+ "theme"?: "ios" | "md" | "ionic";
6613
7549
  }
6614
7550
  interface IonNote {
6615
7551
  /**
@@ -6617,15 +7553,23 @@ declare namespace LocalJSX {
6617
7553
  */
6618
7554
  "color"?: Color;
6619
7555
  /**
6620
- * The mode determines which platform styles to use.
7556
+ * The mode determines the platform behaviors of the component.
6621
7557
  */
6622
7558
  "mode"?: "ios" | "md";
7559
+ /**
7560
+ * The theme determines the visual appearance of the component.
7561
+ */
7562
+ "theme"?: "ios" | "md" | "ionic";
6623
7563
  }
6624
7564
  interface IonPicker {
6625
7565
  /**
6626
- * The mode determines which platform styles to use.
7566
+ * The mode determines the platform behaviors of the component.
6627
7567
  */
6628
7568
  "mode"?: "ios" | "md";
7569
+ /**
7570
+ * The theme determines the visual appearance of the component.
7571
+ */
7572
+ "theme"?: "ios" | "md" | "ionic";
6629
7573
  }
6630
7574
  interface IonPickerColumn {
6631
7575
  /**
@@ -6637,13 +7581,17 @@ declare namespace LocalJSX {
6637
7581
  */
6638
7582
  "disabled"?: boolean;
6639
7583
  /**
6640
- * The mode determines which platform styles to use.
7584
+ * The mode determines the platform behaviors of the component.
6641
7585
  */
6642
7586
  "mode"?: "ios" | "md";
6643
7587
  /**
6644
7588
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6645
7589
  */
6646
7590
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7591
+ /**
7592
+ * The theme determines the visual appearance of the component.
7593
+ */
7594
+ "theme"?: "ios" | "md" | "ionic";
6647
7595
  /**
6648
7596
  * The selected option in the picker.
6649
7597
  */
@@ -6658,6 +7606,14 @@ declare namespace LocalJSX {
6658
7606
  * If `true`, the user cannot interact with the picker column option.
6659
7607
  */
6660
7608
  "disabled"?: boolean;
7609
+ /**
7610
+ * The mode determines the platform behaviors of the component.
7611
+ */
7612
+ "mode"?: "ios" | "md";
7613
+ /**
7614
+ * The theme determines the visual appearance of the component.
7615
+ */
7616
+ "theme"?: "ios" | "md" | "ionic";
6661
7617
  /**
6662
7618
  * The text value of the option.
6663
7619
  */
@@ -6709,7 +7665,7 @@ declare namespace LocalJSX {
6709
7665
  */
6710
7666
  "leaveAnimation"?: AnimationBuilder;
6711
7667
  /**
6712
- * The mode determines which platform styles to use.
7668
+ * The mode determines the platform behaviors of the component.
6713
7669
  */
6714
7670
  "mode"?: "ios" | "md";
6715
7671
  /**
@@ -6748,6 +7704,10 @@ declare namespace LocalJSX {
6748
7704
  * If `true`, a backdrop will be displayed behind the picker.
6749
7705
  */
6750
7706
  "showBackdrop"?: boolean;
7707
+ /**
7708
+ * The theme determines the visual appearance of the component.
7709
+ */
7710
+ "theme"?: "ios" | "md" | "ionic";
6751
7711
  /**
6752
7712
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6753
7713
  */
@@ -6761,7 +7721,7 @@ declare namespace LocalJSX {
6761
7721
  }
6762
7722
  interface IonPopover {
6763
7723
  /**
6764
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7724
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6765
7725
  */
6766
7726
  "alignment"?: PositionAlign;
6767
7727
  /**
@@ -6769,7 +7729,7 @@ declare namespace LocalJSX {
6769
7729
  */
6770
7730
  "animated"?: boolean;
6771
7731
  /**
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.
7732
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6773
7733
  */
6774
7734
  "arrow"?: boolean;
6775
7735
  /**
@@ -6821,7 +7781,7 @@ declare namespace LocalJSX {
6821
7781
  */
6822
7782
  "leaveAnimation"?: AnimationBuilder;
6823
7783
  /**
6824
- * The mode determines which platform styles to use.
7784
+ * The mode determines the platform behaviors of the component.
6825
7785
  */
6826
7786
  "mode"?: "ios" | "md";
6827
7787
  /**
@@ -6873,7 +7833,11 @@ declare namespace LocalJSX {
6873
7833
  */
6874
7834
  "size"?: PopoverSize;
6875
7835
  /**
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).
7836
+ * The theme determines the visual appearance of the component.
7837
+ */
7838
+ "theme"?: "ios" | "md" | "ionic";
7839
+ /**
7840
+ * 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
7841
  */
6878
7842
  "translucent"?: boolean;
6879
7843
  /**
@@ -6895,13 +7859,17 @@ declare namespace LocalJSX {
6895
7859
  */
6896
7860
  "color"?: Color;
6897
7861
  /**
6898
- * The mode determines which platform styles to use.
7862
+ * The mode determines the platform behaviors of the component.
6899
7863
  */
6900
7864
  "mode"?: "ios" | "md";
6901
7865
  /**
6902
7866
  * If true, reverse the progress bar direction.
6903
7867
  */
6904
7868
  "reversed"?: boolean;
7869
+ /**
7870
+ * The theme determines the visual appearance of the component.
7871
+ */
7872
+ "theme"?: "ios" | "md" | "ionic";
6905
7873
  /**
6906
7874
  * 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
7875
  */
@@ -6933,7 +7901,7 @@ declare namespace LocalJSX {
6933
7901
  */
6934
7902
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6935
7903
  /**
6936
- * The mode determines which platform styles to use.
7904
+ * The mode determines the platform behaviors of the component.
6937
7905
  */
6938
7906
  "mode"?: "ios" | "md";
6939
7907
  /**
@@ -6948,6 +7916,10 @@ declare namespace LocalJSX {
6948
7916
  * Emitted when the radio button has focus.
6949
7917
  */
6950
7918
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7919
+ /**
7920
+ * The theme determines the visual appearance of the component.
7921
+ */
7922
+ "theme"?: "ios" | "md" | "ionic";
6951
7923
  /**
6952
7924
  * the value of the radio.
6953
7925
  */
@@ -6962,6 +7934,10 @@ declare namespace LocalJSX {
6962
7934
  * 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
7935
  */
6964
7936
  "compareWith"?: string | RadioGroupCompareFn | null;
7937
+ /**
7938
+ * The mode determines the platform behaviors of the component.
7939
+ */
7940
+ "mode"?: "ios" | "md";
6965
7941
  /**
6966
7942
  * The name of the control, which is submitted with the form data.
6967
7943
  */
@@ -6970,6 +7946,10 @@ declare namespace LocalJSX {
6970
7946
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6971
7947
  */
6972
7948
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7949
+ /**
7950
+ * The theme determines the visual appearance of the component.
7951
+ */
7952
+ "theme"?: "ios" | "md" | "ionic";
6973
7953
  /**
6974
7954
  * the value of the radio group.
6975
7955
  */
@@ -7013,7 +7993,7 @@ declare namespace LocalJSX {
7013
7993
  */
7014
7994
  "min"?: number;
7015
7995
  /**
7016
- * The mode determines which platform styles to use.
7996
+ * The mode determines the platform behaviors of the component.
7017
7997
  */
7018
7998
  "mode"?: "ios" | "md";
7019
7999
  /**
@@ -7060,6 +8040,10 @@ declare namespace LocalJSX {
7060
8040
  * Specifies the value granularity.
7061
8041
  */
7062
8042
  "step"?: number;
8043
+ /**
8044
+ * The theme determines the visual appearance of the component.
8045
+ */
8046
+ "theme"?: "ios" | "md" | "ionic";
7063
8047
  /**
7064
8048
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7065
8049
  */
@@ -7079,7 +8063,7 @@ declare namespace LocalJSX {
7079
8063
  */
7080
8064
  "disabled"?: boolean;
7081
8065
  /**
7082
- * The mode determines which platform styles to use.
8066
+ * The mode determines the platform behaviors of the component.
7083
8067
  */
7084
8068
  "mode"?: "ios" | "md";
7085
8069
  /**
@@ -7110,8 +8094,16 @@ declare namespace LocalJSX {
7110
8094
  * 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
8095
  */
7112
8096
  "snapbackDuration"?: string;
8097
+ /**
8098
+ * The theme determines the visual appearance of the component.
8099
+ */
8100
+ "theme"?: "ios" | "md" | "ionic";
7113
8101
  }
7114
8102
  interface IonRefresherContent {
8103
+ /**
8104
+ * The mode determines the platform behaviors of the component.
8105
+ */
8106
+ "mode"?: "ios" | "md";
7115
8107
  /**
7116
8108
  * 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
8109
  */
@@ -7128,20 +8120,48 @@ declare namespace LocalJSX {
7128
8120
  * 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
8121
  */
7130
8122
  "refreshingText"?: string | IonicSafeString;
8123
+ /**
8124
+ * The theme determines the visual appearance of the component.
8125
+ */
8126
+ "theme"?: "ios" | "md" | "ionic";
7131
8127
  }
7132
8128
  interface IonReorder {
8129
+ /**
8130
+ * The mode determines the platform behaviors of the component.
8131
+ */
8132
+ "mode"?: "ios" | "md";
8133
+ /**
8134
+ * The theme determines the visual appearance of the component.
8135
+ */
8136
+ "theme"?: "ios" | "md" | "ionic";
7133
8137
  }
7134
8138
  interface IonReorderGroup {
7135
8139
  /**
7136
8140
  * If `true`, the reorder will be hidden.
7137
8141
  */
7138
8142
  "disabled"?: boolean;
8143
+ /**
8144
+ * The mode determines the platform behaviors of the component.
8145
+ */
8146
+ "mode"?: "ios" | "md";
7139
8147
  /**
7140
8148
  * 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
8149
  */
7142
8150
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8151
+ /**
8152
+ * The theme determines the visual appearance of the component.
8153
+ */
8154
+ "theme"?: "ios" | "md" | "ionic";
7143
8155
  }
7144
8156
  interface IonRippleEffect {
8157
+ /**
8158
+ * The mode determines the platform behaviors of the component.
8159
+ */
8160
+ "mode"?: "ios" | "md";
8161
+ /**
8162
+ * The theme determines the visual appearance of the component.
8163
+ */
8164
+ "theme"?: "ios" | "md" | "ionic";
7145
8165
  /**
7146
8166
  * 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
8167
  */
@@ -7164,10 +8184,18 @@ declare namespace LocalJSX {
7164
8184
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7165
8185
  */
7166
8186
  "componentProps"?: { [key: string]: any };
8187
+ /**
8188
+ * The mode determines the platform behaviors of the component.
8189
+ */
8190
+ "mode"?: "ios" | "md";
7167
8191
  /**
7168
8192
  * Used internally by `ion-router` to know when this route did change.
7169
8193
  */
7170
8194
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8195
+ /**
8196
+ * The theme determines the visual appearance of the component.
8197
+ */
8198
+ "theme"?: "ios" | "md" | "ionic";
7171
8199
  /**
7172
8200
  * 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
8201
  */
@@ -7188,6 +8216,10 @@ declare namespace LocalJSX {
7188
8216
  "to": string | undefined | null;
7189
8217
  }
7190
8218
  interface IonRouter {
8219
+ /**
8220
+ * The mode determines the platform behaviors of the component.
8221
+ */
8222
+ "mode"?: "ios" | "md";
7191
8223
  /**
7192
8224
  * Emitted when the route had changed
7193
8225
  */
@@ -7200,6 +8232,10 @@ declare namespace LocalJSX {
7200
8232
  * 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
8233
  */
7202
8234
  "root"?: string;
8235
+ /**
8236
+ * The theme determines the visual appearance of the component.
8237
+ */
8238
+ "theme"?: "ios" | "md" | "ionic";
7203
8239
  /**
7204
8240
  * 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
8241
  */
@@ -7214,6 +8250,10 @@ declare namespace LocalJSX {
7214
8250
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7215
8251
  */
7216
8252
  "href"?: string | undefined;
8253
+ /**
8254
+ * The mode determines the platform behaviors of the component.
8255
+ */
8256
+ "mode"?: "ios" | "md";
7217
8257
  /**
7218
8258
  * 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
8259
  */
@@ -7230,6 +8270,10 @@ declare namespace LocalJSX {
7230
8270
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7231
8271
  */
7232
8272
  "target"?: string | undefined;
8273
+ /**
8274
+ * The theme determines the visual appearance of the component.
8275
+ */
8276
+ "theme"?: "ios" | "md" | "ionic";
7233
8277
  }
7234
8278
  interface IonRouterOutlet {
7235
8279
  /**
@@ -7241,11 +8285,23 @@ declare namespace LocalJSX {
7241
8285
  */
7242
8286
  "animation"?: AnimationBuilder;
7243
8287
  /**
7244
- * The mode determines which platform styles to use.
8288
+ * The mode determines the platform behaviors of the component.
7245
8289
  */
7246
8290
  "mode"?: "ios" | "md";
8291
+ /**
8292
+ * The theme determines the visual appearance of the component.
8293
+ */
8294
+ "theme"?: "ios" | "md" | "ionic";
7247
8295
  }
7248
8296
  interface IonRow {
8297
+ /**
8298
+ * The mode determines the platform behaviors of the component.
8299
+ */
8300
+ "mode"?: "ios" | "md";
8301
+ /**
8302
+ * The theme determines the visual appearance of the component.
8303
+ */
8304
+ "theme"?: "ios" | "md" | "ionic";
7249
8305
  }
7250
8306
  interface IonSearchbar {
7251
8307
  /**
@@ -7265,15 +8321,15 @@ declare namespace LocalJSX {
7265
8321
  */
7266
8322
  "autocorrect"?: 'on' | 'off';
7267
8323
  /**
7268
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8324
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7269
8325
  */
7270
8326
  "cancelButtonIcon"?: string;
7271
8327
  /**
7272
- * Set the the cancel button text. Only applies to `ios` mode.
8328
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7273
8329
  */
7274
8330
  "cancelButtonText"?: string;
7275
8331
  /**
7276
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8332
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7277
8333
  */
7278
8334
  "clearIcon"?: string;
7279
8335
  /**
@@ -7305,7 +8361,7 @@ declare namespace LocalJSX {
7305
8361
  */
7306
8362
  "minlength"?: number;
7307
8363
  /**
7308
- * The mode determines which platform styles to use.
8364
+ * The mode determines the platform behaviors of the component.
7309
8365
  */
7310
8366
  "mode"?: "ios" | "md";
7311
8367
  /**
@@ -7341,7 +8397,7 @@ declare namespace LocalJSX {
7341
8397
  */
7342
8398
  "placeholder"?: string;
7343
8399
  /**
7344
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8400
+ * 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
8401
  */
7346
8402
  "searchIcon"?: string;
7347
8403
  /**
@@ -7356,6 +8412,10 @@ declare namespace LocalJSX {
7356
8412
  * If `true`, enable spellcheck on the input.
7357
8413
  */
7358
8414
  "spellcheck"?: boolean;
8415
+ /**
8416
+ * The theme determines the visual appearance of the component.
8417
+ */
8418
+ "theme"?: "ios" | "md" | "ionic";
7359
8419
  /**
7360
8420
  * Set the type of the input.
7361
8421
  */
@@ -7375,7 +8435,7 @@ declare namespace LocalJSX {
7375
8435
  */
7376
8436
  "disabled"?: boolean;
7377
8437
  /**
7378
- * The mode determines which platform styles to use.
8438
+ * The mode determines the platform behaviors of the component.
7379
8439
  */
7380
8440
  "mode"?: "ios" | "md";
7381
8441
  /**
@@ -7394,6 +8454,10 @@ declare namespace LocalJSX {
7394
8454
  * If `true`, users will be able to swipe between segment buttons to activate them.
7395
8455
  */
7396
8456
  "swipeGesture"?: boolean;
8457
+ /**
8458
+ * The theme determines the visual appearance of the component.
8459
+ */
8460
+ "theme"?: "ios" | "md" | "ionic";
7397
8461
  /**
7398
8462
  * the value of the segment.
7399
8463
  */
@@ -7413,9 +8477,13 @@ declare namespace LocalJSX {
7413
8477
  */
7414
8478
  "layout"?: SegmentButtonLayout;
7415
8479
  /**
7416
- * The mode determines which platform styles to use.
8480
+ * The mode determines the platform behaviors of the component.
7417
8481
  */
7418
8482
  "mode"?: "ios" | "md";
8483
+ /**
8484
+ * The theme determines the visual appearance of the component.
8485
+ */
8486
+ "theme"?: "ios" | "md" | "ionic";
7419
8487
  /**
7420
8488
  * The type of the button.
7421
8489
  */
@@ -7455,11 +8523,11 @@ declare namespace LocalJSX {
7455
8523
  */
7456
8524
  "disabled"?: boolean;
7457
8525
  /**
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.
8526
+ * 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
8527
  */
7460
8528
  "expandedIcon"?: string;
7461
8529
  /**
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.
8530
+ * 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
8531
  */
7464
8532
  "fill"?: 'outline' | 'solid';
7465
8533
  /**
@@ -7483,7 +8551,7 @@ declare namespace LocalJSX {
7483
8551
  */
7484
8552
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7485
8553
  /**
7486
- * The mode determines which platform styles to use.
8554
+ * The mode determines the platform behaviors of the component.
7487
8555
  */
7488
8556
  "mode"?: "ios" | "md";
7489
8557
  /**
@@ -7527,11 +8595,19 @@ declare namespace LocalJSX {
7527
8595
  */
7528
8596
  "selectedText"?: string | null;
7529
8597
  /**
7530
- * The shape of the select. If "round" it will have an increased border radius.
8598
+ * 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.
8599
+ */
8600
+ "shape"?: 'soft' | 'round' | 'rectangular';
8601
+ /**
8602
+ * 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.
8603
+ */
8604
+ "size"?: 'small' | 'medium' | 'large';
8605
+ /**
8606
+ * The theme determines the visual appearance of the component.
7531
8607
  */
7532
- "shape"?: 'round';
8608
+ "theme"?: "ios" | "md" | "ionic";
7533
8609
  /**
7534
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8610
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7535
8611
  */
7536
8612
  "toggleIcon"?: string;
7537
8613
  /**
@@ -7549,6 +8625,14 @@ declare namespace LocalJSX {
7549
8625
  * 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
8626
  */
7551
8627
  "disabled"?: boolean;
8628
+ /**
8629
+ * The mode determines the platform behaviors of the component.
8630
+ */
8631
+ "mode"?: "ios" | "md";
8632
+ /**
8633
+ * The theme determines the visual appearance of the component.
8634
+ */
8635
+ "theme"?: "ios" | "md" | "ionic";
7552
8636
  /**
7553
8637
  * The text value of the option.
7554
8638
  */
@@ -7563,6 +8647,10 @@ declare namespace LocalJSX {
7563
8647
  * The text content of the popover body
7564
8648
  */
7565
8649
  "message"?: string;
8650
+ /**
8651
+ * The mode determines the platform behaviors of the component.
8652
+ */
8653
+ "mode"?: "ios" | "md";
7566
8654
  /**
7567
8655
  * If true, the select accepts multiple values
7568
8656
  */
@@ -7575,12 +8663,24 @@ declare namespace LocalJSX {
7575
8663
  * The subheader text of the popover
7576
8664
  */
7577
8665
  "subHeader"?: string;
8666
+ /**
8667
+ * The theme determines the visual appearance of the component.
8668
+ */
8669
+ "theme"?: "ios" | "md" | "ionic";
7578
8670
  }
7579
8671
  interface IonSkeletonText {
7580
8672
  /**
7581
8673
  * If `true`, the skeleton text will animate.
7582
8674
  */
7583
8675
  "animated"?: boolean;
8676
+ /**
8677
+ * The mode determines the platform behaviors of the component.
8678
+ */
8679
+ "mode"?: "ios" | "md";
8680
+ /**
8681
+ * The theme determines the visual appearance of the component.
8682
+ */
8683
+ "theme"?: "ios" | "md" | "ionic";
7584
8684
  }
7585
8685
  interface IonSpinner {
7586
8686
  /**
@@ -7591,6 +8691,10 @@ declare namespace LocalJSX {
7591
8691
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7592
8692
  */
7593
8693
  "duration"?: number;
8694
+ /**
8695
+ * The mode determines the platform behaviors of the component.
8696
+ */
8697
+ "mode"?: "ios" | "md";
7594
8698
  /**
7595
8699
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7596
8700
  */
@@ -7599,6 +8703,14 @@ declare namespace LocalJSX {
7599
8703
  * If `true`, the spinner's animation will be paused.
7600
8704
  */
7601
8705
  "paused"?: boolean;
8706
+ /**
8707
+ * 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.
8708
+ */
8709
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8710
+ /**
8711
+ * The theme determines the visual appearance of the component.
8712
+ */
8713
+ "theme"?: "ios" | "md" | "ionic";
7602
8714
  }
7603
8715
  interface IonSplitPane {
7604
8716
  /**
@@ -7609,10 +8721,18 @@ declare namespace LocalJSX {
7609
8721
  * If `true`, the split pane will be hidden.
7610
8722
  */
7611
8723
  "disabled"?: boolean;
8724
+ /**
8725
+ * The mode determines the platform behaviors of the component.
8726
+ */
8727
+ "mode"?: "ios" | "md";
7612
8728
  /**
7613
8729
  * Expression to be called when the split-pane visibility has changed
7614
8730
  */
7615
8731
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8732
+ /**
8733
+ * The theme determines the visual appearance of the component.
8734
+ */
8735
+ "theme"?: "ios" | "md" | "ionic";
7616
8736
  /**
7617
8737
  * 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
8738
  */
@@ -7623,10 +8743,18 @@ declare namespace LocalJSX {
7623
8743
  * The component to display inside of the tab.
7624
8744
  */
7625
8745
  "component"?: ComponentRef;
8746
+ /**
8747
+ * The mode determines the platform behaviors of the component.
8748
+ */
8749
+ "mode"?: "ios" | "md";
7626
8750
  /**
7627
8751
  * 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
8752
  */
7629
8753
  "tab": string;
8754
+ /**
8755
+ * The theme determines the visual appearance of the component.
8756
+ */
8757
+ "theme"?: "ios" | "md" | "ionic";
7630
8758
  }
7631
8759
  interface IonTabBar {
7632
8760
  /**
@@ -7634,7 +8762,11 @@ declare namespace LocalJSX {
7634
8762
  */
7635
8763
  "color"?: Color;
7636
8764
  /**
7637
- * The mode determines which platform styles to use.
8765
+ * 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"`.
8766
+ */
8767
+ "expand"?: 'compact' | 'full';
8768
+ /**
8769
+ * The mode determines the platform behaviors of the component.
7638
8770
  */
7639
8771
  "mode"?: "ios" | "md";
7640
8772
  /**
@@ -7642,7 +8774,15 @@ declare namespace LocalJSX {
7642
8774
  */
7643
8775
  "selectedTab"?: string;
7644
8776
  /**
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).
8777
+ * 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.
8778
+ */
8779
+ "shape"?: 'soft' | 'round' | 'rectangular';
8780
+ /**
8781
+ * The theme determines the visual appearance of the component.
8782
+ */
8783
+ "theme"?: "ios" | "md" | "ionic";
8784
+ /**
8785
+ * 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
8786
  */
7647
8787
  "translucent"?: boolean;
7648
8788
  }
@@ -7664,7 +8804,7 @@ declare namespace LocalJSX {
7664
8804
  */
7665
8805
  "layout"?: TabButtonLayout;
7666
8806
  /**
7667
- * The mode determines which platform styles to use.
8807
+ * The mode determines the platform behaviors of the component.
7668
8808
  */
7669
8809
  "mode"?: "ios" | "md";
7670
8810
  /**
@@ -7675,6 +8815,10 @@ declare namespace LocalJSX {
7675
8815
  * The selected tab component
7676
8816
  */
7677
8817
  "selected"?: boolean;
8818
+ /**
8819
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
8820
+ */
8821
+ "shape"?: 'soft' | 'round' | 'rectangular';
7678
8822
  /**
7679
8823
  * 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.
7680
8824
  */
@@ -7683,8 +8827,16 @@ declare namespace LocalJSX {
7683
8827
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7684
8828
  */
7685
8829
  "target"?: string | undefined;
8830
+ /**
8831
+ * The theme determines the visual appearance of the component.
8832
+ */
8833
+ "theme"?: "ios" | "md" | "ionic";
7686
8834
  }
7687
8835
  interface IonTabs {
8836
+ /**
8837
+ * The mode determines the platform behaviors of the component.
8838
+ */
8839
+ "mode"?: "ios" | "md";
7688
8840
  /**
7689
8841
  * Emitted when the navigation has finished transitioning to a new component.
7690
8842
  */
@@ -7693,6 +8845,10 @@ declare namespace LocalJSX {
7693
8845
  * Emitted when the navigation is about to transition to a new component.
7694
8846
  */
7695
8847
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8848
+ /**
8849
+ * The theme determines the visual appearance of the component.
8850
+ */
8851
+ "theme"?: "ios" | "md" | "ionic";
7696
8852
  }
7697
8853
  interface IonText {
7698
8854
  /**
@@ -7700,9 +8856,13 @@ declare namespace LocalJSX {
7700
8856
  */
7701
8857
  "color"?: Color;
7702
8858
  /**
7703
- * The mode determines which platform styles to use.
8859
+ * The mode determines the platform behaviors of the component.
7704
8860
  */
7705
8861
  "mode"?: "ios" | "md";
8862
+ /**
8863
+ * The theme determines the visual appearance of the component.
8864
+ */
8865
+ "theme"?: "ios" | "md" | "ionic";
7706
8866
  }
7707
8867
  interface IonTextarea {
7708
8868
  /**
@@ -7754,7 +8914,7 @@ declare namespace LocalJSX {
7754
8914
  */
7755
8915
  "errorText"?: string;
7756
8916
  /**
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.
8917
+ * 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
8918
  */
7759
8919
  "fill"?: 'outline' | 'solid';
7760
8920
  /**
@@ -7782,7 +8942,7 @@ declare namespace LocalJSX {
7782
8942
  */
7783
8943
  "minlength"?: number;
7784
8944
  /**
7785
- * The mode determines which platform styles to use.
8945
+ * The mode determines the platform behaviors of the component.
7786
8946
  */
7787
8947
  "mode"?: "ios" | "md";
7788
8948
  /**
@@ -7822,13 +8982,21 @@ declare namespace LocalJSX {
7822
8982
  */
7823
8983
  "rows"?: number;
7824
8984
  /**
7825
- * The shape of the textarea. If "round" it will have an increased border radius.
8985
+ * 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.
8986
+ */
8987
+ "shape"?: 'soft' | 'round' | 'rectangular';
8988
+ /**
8989
+ * 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.
7826
8990
  */
7827
- "shape"?: 'round';
8991
+ "size"?: 'small' | 'medium' | 'large';
7828
8992
  /**
7829
8993
  * If `true`, the element will have its spelling and grammar checked.
7830
8994
  */
7831
8995
  "spellcheck"?: boolean;
8996
+ /**
8997
+ * The theme determines the visual appearance of the component.
8998
+ */
8999
+ "theme"?: "ios" | "md" | "ionic";
7832
9000
  /**
7833
9001
  * The value of the textarea.
7834
9002
  */
@@ -7839,16 +9007,32 @@ declare namespace LocalJSX {
7839
9007
  "wrap"?: 'hard' | 'soft' | 'off';
7840
9008
  }
7841
9009
  interface IonThumbnail {
9010
+ /**
9011
+ * The mode determines the platform behaviors of the component.
9012
+ */
9013
+ "mode"?: "ios" | "md";
9014
+ /**
9015
+ * The theme determines the visual appearance of the component.
9016
+ */
9017
+ "theme"?: "ios" | "md" | "ionic";
7842
9018
  }
7843
9019
  interface IonTitle {
7844
9020
  /**
7845
9021
  * 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
9022
  */
7847
9023
  "color"?: Color;
9024
+ /**
9025
+ * The mode determines the platform behaviors of the component.
9026
+ */
9027
+ "mode"?: "ios" | "md";
7848
9028
  /**
7849
9029
  * The size of the toolbar title.
7850
9030
  */
7851
9031
  "size"?: 'large' | 'small';
9032
+ /**
9033
+ * The theme determines the visual appearance of the component.
9034
+ */
9035
+ "theme"?: "ios" | "md" | "ionic";
7852
9036
  }
7853
9037
  interface IonToast {
7854
9038
  /**
@@ -7908,7 +9092,7 @@ declare namespace LocalJSX {
7908
9092
  */
7909
9093
  "message"?: string | IonicSafeString;
7910
9094
  /**
7911
- * The mode determines which platform styles to use.
9095
+ * The mode determines the platform behaviors of the component.
7912
9096
  */
7913
9097
  "mode"?: "ios" | "md";
7914
9098
  /**
@@ -7951,12 +9135,20 @@ declare namespace LocalJSX {
7951
9135
  * 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
9136
  */
7953
9137
  "positionAnchor"?: HTMLElement | string;
9138
+ /**
9139
+ * 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.
9140
+ */
9141
+ "shape"?: 'soft' | 'round' | 'rectangular';
7954
9142
  /**
7955
9143
  * 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
9144
  */
7957
9145
  "swipeGesture"?: ToastSwipeGestureDirection;
7958
9146
  /**
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).
9147
+ * The theme determines the visual appearance of the component.
9148
+ */
9149
+ "theme"?: "ios" | "md" | "ionic";
9150
+ /**
9151
+ * 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
9152
  */
7961
9153
  "translucent"?: boolean;
7962
9154
  /**
@@ -7994,7 +9186,7 @@ declare namespace LocalJSX {
7994
9186
  */
7995
9187
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7996
9188
  /**
7997
- * The mode determines which platform styles to use.
9189
+ * The mode determines the platform behaviors of the component.
7998
9190
  */
7999
9191
  "mode"?: "ios" | "md";
8000
9192
  /**
@@ -8013,6 +9205,10 @@ declare namespace LocalJSX {
8013
9205
  * Emitted when the toggle has focus.
8014
9206
  */
8015
9207
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
9208
+ /**
9209
+ * The theme determines the visual appearance of the component.
9210
+ */
9211
+ "theme"?: "ios" | "md" | "ionic";
8016
9212
  /**
8017
9213
  * 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
9214
  */
@@ -8024,9 +9220,13 @@ declare namespace LocalJSX {
8024
9220
  */
8025
9221
  "color"?: Color;
8026
9222
  /**
8027
- * The mode determines which platform styles to use.
9223
+ * The mode determines the platform behaviors of the component.
8028
9224
  */
8029
9225
  "mode"?: "ios" | "md";
9226
+ /**
9227
+ * The theme determines the visual appearance of the component.
9228
+ */
9229
+ "theme"?: "ios" | "md" | "ionic";
8030
9230
  }
8031
9231
  interface IntrinsicElements {
8032
9232
  "ion-accordion": IonAccordion;