@ionic/core 8.3.0 → 8.3.1-dev.11725619573.1107b613

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 (1174) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +14 -10
  3. package/components/backdrop.js +10 -6
  4. package/components/button.js +41 -11
  5. package/components/buttons.js +11 -7
  6. package/components/caret-down.js +6 -0
  7. package/components/caret-left.js +6 -0
  8. package/components/caret-right.js +6 -0
  9. package/components/checkbox.js +30 -13
  10. package/components/data.js +4 -4
  11. package/components/index2.js +1 -2
  12. package/components/index4.js +8 -7
  13. package/components/index6.js +27 -30
  14. package/components/index7.js +124 -27
  15. package/components/index8.js +150 -111
  16. package/components/input-shims.js +1 -1
  17. package/components/input.utils.js +1 -1
  18. package/components/ion-accordion-group.js +9 -6
  19. package/components/ion-accordion.js +31 -9
  20. package/components/ion-app.js +5 -6
  21. package/components/ion-avatar.js +52 -3
  22. package/components/ion-back-button.js +28 -19
  23. package/components/ion-badge.js +44 -8
  24. package/components/ion-breadcrumb.js +44 -11
  25. package/components/ion-breadcrumbs.js +9 -5
  26. package/components/ion-card-content.js +11 -7
  27. package/components/ion-card-header.js +9 -5
  28. package/components/ion-card-subtitle.js +9 -5
  29. package/components/ion-card-title.js +9 -5
  30. package/components/ion-card.js +17 -9
  31. package/components/ion-chip.js +45 -8
  32. package/components/ion-col.js +5 -5
  33. package/components/ion-content.js +11 -11
  34. package/components/ion-datetime-button.js +9 -6
  35. package/components/ion-datetime.js +95 -20
  36. package/components/ion-fab-button.js +32 -10
  37. package/components/ion-fab-list.js +5 -5
  38. package/components/ion-fab.js +6 -6
  39. package/components/ion-footer.js +15 -11
  40. package/components/ion-grid.js +5 -5
  41. package/components/ion-header.js +20 -13
  42. package/components/ion-img.js +5 -2
  43. package/components/ion-infinite-scroll-content.js +12 -8
  44. package/components/ion-infinite-scroll.js +5 -5
  45. package/components/ion-input-password-toggle.js +52 -14
  46. package/components/ion-input.js +117 -20
  47. package/components/ion-item-divider.js +9 -5
  48. package/components/ion-item-group.js +9 -5
  49. package/components/ion-item-option.js +28 -8
  50. package/components/ion-item-options.js +9 -5
  51. package/components/ion-item-sliding.js +5 -5
  52. package/components/ion-loading.js +12 -8
  53. package/components/ion-menu-button.js +27 -10
  54. package/components/ion-menu-toggle.js +5 -5
  55. package/components/ion-menu.js +11 -7
  56. package/components/ion-modal.js +14 -11
  57. package/components/ion-nav-link.js +1 -1
  58. package/components/ion-nav.js +7 -6
  59. package/components/ion-note.js +9 -5
  60. package/components/ion-picker-legacy.js +7 -8
  61. package/components/ion-progress-bar.js +10 -6
  62. package/components/ion-range.js +11 -8
  63. package/components/ion-refresher-content.js +27 -9
  64. package/components/ion-refresher.js +11 -7
  65. package/components/ion-reorder-group.js +5 -5
  66. package/components/ion-reorder.js +30 -5
  67. package/components/ion-router-link.js +6 -6
  68. package/components/ion-router-outlet.js +2 -2
  69. package/components/ion-row.js +5 -2
  70. package/components/ion-searchbar.js +92 -16
  71. package/components/ion-segment-button.js +12 -8
  72. package/components/ion-segment.js +9 -5
  73. package/components/ion-select-option.js +5 -2
  74. package/components/ion-select.js +76 -28
  75. package/components/ion-skeleton-text.js +5 -5
  76. package/components/ion-split-pane.js +12 -8
  77. package/components/ion-tab-bar.js +11 -7
  78. package/components/ion-tab-button.js +11 -7
  79. package/components/ion-tab.js +2 -2
  80. package/components/ion-tabs.js +2 -2
  81. package/components/ion-text.js +5 -5
  82. package/components/ion-textarea.js +38 -11
  83. package/components/ion-thumbnail.js +5 -2
  84. package/components/ion-title.js +11 -7
  85. package/components/ion-toast.js +13 -9
  86. package/components/ion-toggle.js +76 -18
  87. package/components/ion-toolbar.js +11 -7
  88. package/components/ionic-global.js +191 -14
  89. package/components/ios.transition.js +1 -0
  90. package/components/item.js +40 -11
  91. package/components/label.js +9 -5
  92. package/components/list-header.js +9 -5
  93. package/components/list.js +29 -6
  94. package/components/list2.js +6 -0
  95. package/components/overlays.js +1 -2
  96. package/components/picker-column-option.js +9 -5
  97. package/components/picker-column.js +7 -7
  98. package/components/picker-column2.js +4 -4
  99. package/components/picker.js +8 -4
  100. package/components/popover.js +11 -8
  101. package/components/radio-group.js +5 -3
  102. package/components/radio.js +12 -8
  103. package/components/ripple-effect.js +18 -8
  104. package/components/select-popover.js +9 -2
  105. package/components/spinner.js +35 -9
  106. package/components/status-tap.js +1 -1
  107. package/components/x.js +6 -0
  108. package/css/core.css +1 -1
  109. package/css/core.css.map +1 -1
  110. package/css/display.css.map +1 -1
  111. package/css/flex-utils.css.map +1 -1
  112. package/css/float-elements.css.map +1 -1
  113. package/css/global.bundle.css +1 -1
  114. package/css/global.bundle.css.map +1 -1
  115. package/css/ionic/bundle.ionic.css +1 -0
  116. package/css/ionic/bundle.ionic.css.map +1 -0
  117. package/css/ionic/core.ionic.css +1 -0
  118. package/css/ionic/core.ionic.css.map +1 -0
  119. package/css/ionic/global.bundle.ionic.css +1 -0
  120. package/css/ionic/global.bundle.ionic.css.map +1 -0
  121. package/css/ionic/ionic-swiper.ionic.css +1 -0
  122. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  123. package/css/ionic/link.ionic.css +1 -0
  124. package/css/ionic/link.ionic.css.map +1 -0
  125. package/css/ionic/structure.ionic.css +1 -0
  126. package/css/ionic/structure.ionic.css.map +1 -0
  127. package/css/ionic/typography.ionic.css +1 -0
  128. package/css/ionic/typography.ionic.css.map +1 -0
  129. package/css/ionic/utils.bundle.ionic.css +1 -0
  130. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  131. package/css/ionic-swiper.css +1 -1
  132. package/css/ionic-swiper.css.map +1 -1
  133. package/css/ionic.bundle.css +1 -1
  134. package/css/ionic.bundle.css.map +1 -1
  135. package/css/normalize.css.map +1 -1
  136. package/css/padding.css.map +1 -1
  137. package/css/palettes/dark.always.css.map +1 -1
  138. package/css/palettes/dark.class.css.map +1 -1
  139. package/css/palettes/dark.system.css.map +1 -1
  140. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  141. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  142. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  143. package/css/palettes/high-contrast.always.css.map +1 -1
  144. package/css/palettes/high-contrast.class.css.map +1 -1
  145. package/css/palettes/high-contrast.system.css.map +1 -1
  146. package/css/structure.css +1 -1
  147. package/css/structure.css.map +1 -1
  148. package/css/text-alignment.css.map +1 -1
  149. package/css/text-transformation.css.map +1 -1
  150. package/css/typography.css +1 -1
  151. package/css/typography.css.map +1 -1
  152. package/css/utils.bundle.css.map +1 -1
  153. package/dist/cjs/{app-globals-2cfd442b.js → app-globals-5455b6db.js} +1 -1
  154. package/dist/cjs/caret-down-3c215cff.js +8 -0
  155. package/dist/cjs/caret-left-2bb66970.js +8 -0
  156. package/dist/cjs/caret-right-88e03970.js +8 -0
  157. package/dist/cjs/{data-21dc0f81.js → data-6f907069.js} +6 -6
  158. package/dist/cjs/{hardware-back-button-1f867b1e.js → hardware-back-button-ec03884a.js} +1 -1
  159. package/dist/cjs/{index-073c7cdc.js → index-0e360e93.js} +2 -2
  160. package/dist/cjs/{index-c170694d.js → index-3d59ba74.js} +13 -12
  161. package/dist/cjs/{index-5b6a7459.js → index-afc43278.js} +2 -2
  162. package/dist/cjs/{index-9bdd4f2a.js → index-f28d653f.js} +7 -8
  163. package/dist/cjs/index.cjs.js +7 -8
  164. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-d7b15d63.js} +3 -2
  165. package/dist/cjs/{input.utils-611cde0b.js → input.utils-3967b058.js} +2 -2
  166. package/dist/cjs/ion-accordion_2.cjs.entry.js +40 -15
  167. package/dist/cjs/ion-action-sheet.cjs.entry.js +15 -11
  168. package/dist/cjs/ion-alert.cjs.entry.js +16 -13
  169. package/dist/cjs/ion-app_8.cjs.entry.js +93 -72
  170. package/dist/cjs/ion-avatar_3.cjs.entry.js +92 -9
  171. package/dist/cjs/ion-back-button.cjs.entry.js +28 -19
  172. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -6
  173. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +52 -15
  174. package/dist/cjs/ion-button_2.cjs.entry.js +44 -14
  175. package/dist/cjs/ion-card_5.cjs.entry.js +50 -27
  176. package/dist/cjs/ion-checkbox.cjs.entry.js +27 -12
  177. package/dist/cjs/ion-chip.cjs.entry.js +42 -7
  178. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  179. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -11
  180. package/dist/cjs/ion-datetime_3.cjs.entry.js +183 -108
  181. package/dist/cjs/ion-fab_3.cjs.entry.js +41 -19
  182. package/dist/cjs/ion-img.cjs.entry.js +5 -2
  183. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -13
  184. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +54 -16
  185. package/dist/cjs/ion-input.cjs.entry.js +116 -21
  186. package/dist/cjs/ion-item-option_3.cjs.entry.js +38 -16
  187. package/dist/cjs/ion-item_8.cjs.entry.js +111 -40
  188. package/dist/cjs/ion-loading.cjs.entry.js +14 -11
  189. package/dist/cjs/ion-menu_3.cjs.entry.js +44 -24
  190. package/dist/cjs/ion-modal.cjs.entry.js +22 -19
  191. package/dist/cjs/ion-nav_2.cjs.entry.js +9 -8
  192. package/dist/cjs/ion-picker-column-option.cjs.entry.js +9 -5
  193. package/dist/cjs/ion-picker-column.cjs.entry.js +7 -7
  194. package/dist/cjs/ion-picker.cjs.entry.js +8 -4
  195. package/dist/cjs/ion-popover.cjs.entry.js +17 -14
  196. package/dist/cjs/ion-progress-bar.cjs.entry.js +10 -6
  197. package/dist/cjs/ion-radio_2.cjs.entry.js +16 -10
  198. package/dist/cjs/ion-range.cjs.entry.js +16 -13
  199. package/dist/cjs/ion-refresher_2.cjs.entry.js +36 -15
  200. package/dist/cjs/ion-reorder_2.cjs.entry.js +34 -10
  201. package/dist/cjs/ion-ripple-effect.cjs.entry.js +17 -7
  202. package/dist/cjs/ion-route_4.cjs.entry.js +6 -6
  203. package/dist/cjs/ion-searchbar.cjs.entry.js +92 -16
  204. package/dist/cjs/ion-segment_2.cjs.entry.js +20 -12
  205. package/dist/cjs/ion-select_3.cjs.entry.js +90 -33
  206. package/dist/cjs/ion-spinner.cjs.entry.js +32 -7
  207. package/dist/cjs/ion-split-pane.cjs.entry.js +12 -8
  208. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +21 -13
  209. package/dist/cjs/ion-tab_2.cjs.entry.js +4 -4
  210. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  211. package/dist/cjs/ion-textarea.cjs.entry.js +38 -13
  212. package/dist/cjs/ion-toast.cjs.entry.js +36 -32
  213. package/dist/cjs/ion-toggle.cjs.entry.js +76 -18
  214. package/dist/cjs/ionic-global-f18d6c8d.js +418 -0
  215. package/dist/cjs/ionic.cjs.js +3 -3
  216. package/dist/cjs/{ios.transition-ac67e283.js → ios.transition-80b71ce4.js} +3 -3
  217. package/dist/cjs/list-2930c629.js +8 -0
  218. package/dist/cjs/loader.cjs.js +3 -3
  219. package/dist/cjs/{md.transition-8ceb4e1a.js → md.transition-b470bc3e.js} +2 -3
  220. package/dist/cjs/{overlays-4451d3fc.js → overlays-e91a13fd.js} +3 -4
  221. package/dist/cjs/{status-tap-e52a48f8.js → status-tap-1e8a064e.js} +2 -2
  222. package/dist/cjs/x-81a8f51c.js +8 -0
  223. package/dist/collection/components/accordion/accordion.ios.css +12 -0
  224. package/dist/collection/components/accordion/accordion.js +35 -15
  225. package/dist/collection/components/accordion/accordion.md.css +6 -0
  226. package/dist/collection/components/accordion-group/accordion-group.ios.css +12 -0
  227. package/dist/collection/components/accordion-group/accordion-group.js +11 -8
  228. package/dist/collection/components/accordion-group/accordion-group.md.css +18 -0
  229. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  230. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  231. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  232. package/dist/collection/components/alert/alert.ios.css +19 -1
  233. package/dist/collection/components/alert/alert.js +15 -12
  234. package/dist/collection/components/alert/alert.md.css +19 -1
  235. package/dist/collection/components/app/app.js +8 -4
  236. package/dist/collection/components/avatar/avatar.ionic.css +271 -0
  237. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  238. package/dist/collection/components/avatar/avatar.js +92 -4
  239. package/dist/collection/components/avatar/avatar.md.css +12 -0
  240. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  241. package/dist/collection/components/back-button/back-button.js +27 -19
  242. package/dist/collection/components/back-button/back-button.md.css +60 -48
  243. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  244. package/dist/collection/components/backdrop/backdrop.js +12 -6
  245. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  246. package/dist/collection/components/badge/badge.ionic.css +251 -0
  247. package/dist/collection/components/badge/badge.ios.css +106 -3
  248. package/dist/collection/components/badge/badge.js +75 -8
  249. package/dist/collection/components/badge/badge.md.css +106 -3
  250. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  251. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  252. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  253. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  254. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  255. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  256. package/dist/collection/components/button/button.ionic.css +591 -0
  257. package/dist/collection/components/button/button.ios.css +129 -36
  258. package/dist/collection/components/button/button.js +46 -16
  259. package/dist/collection/components/button/button.md.css +120 -40
  260. package/dist/collection/components/buttons/buttons.ionic.css +101 -0
  261. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  262. package/dist/collection/components/buttons/buttons.js +14 -8
  263. package/dist/collection/components/buttons/buttons.md.css +55 -3
  264. package/dist/collection/components/card/card.ionic.css +139 -0
  265. package/dist/collection/components/card/card.ios.css +65 -14
  266. package/dist/collection/components/card/card.js +34 -10
  267. package/dist/collection/components/card/card.md.css +65 -14
  268. package/dist/collection/components/card-content/card-content.ionic.css +92 -0
  269. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  270. package/dist/collection/components/card-content/card-content.js +11 -8
  271. package/dist/collection/components/card-content/card-content.md.css +16 -1
  272. package/dist/collection/components/card-header/card-header.ionic.css +89 -0
  273. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  274. package/dist/collection/components/card-header/card-header.js +12 -9
  275. package/dist/collection/components/card-header/card-header.md.css +27 -15
  276. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +148 -0
  277. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  278. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  279. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  280. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  281. package/dist/collection/components/card-title/card-title.js +11 -8
  282. package/dist/collection/components/card-title/card-title.md.css +73 -0
  283. package/dist/collection/components/checkbox/checkbox.ionic.css +400 -0
  284. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  285. package/dist/collection/components/checkbox/checkbox.js +63 -14
  286. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  287. package/dist/collection/components/chip/chip.ionic.css +162 -0
  288. package/dist/collection/components/chip/chip.ios.css +20 -1
  289. package/dist/collection/components/chip/chip.js +77 -8
  290. package/dist/collection/components/chip/chip.md.css +20 -1
  291. package/dist/collection/components/col/col.css +12 -0
  292. package/dist/collection/components/col/col.js +9 -5
  293. package/dist/collection/components/content/content.css +8 -2
  294. package/dist/collection/components/content/content.js +13 -10
  295. package/dist/collection/components/datetime/datetime.ionic.css +670 -0
  296. package/dist/collection/components/datetime/datetime.ios.css +232 -73
  297. package/dist/collection/components/datetime/datetime.js +95 -19
  298. package/dist/collection/components/datetime/datetime.md.css +232 -73
  299. package/dist/collection/components/datetime/utils/data.js +3 -3
  300. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  301. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  302. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  303. package/dist/collection/components/fab/fab.css +25 -1
  304. package/dist/collection/components/fab/fab.js +9 -5
  305. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  306. package/dist/collection/components/fab-button/fab-button.js +36 -15
  307. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  308. package/dist/collection/components/fab-list/fab-list.css +12 -0
  309. package/dist/collection/components/fab-list/fab-list.js +9 -5
  310. package/dist/collection/components/footer/footer.ios.css +14 -2
  311. package/dist/collection/components/footer/footer.js +17 -14
  312. package/dist/collection/components/footer/footer.md.css +12 -0
  313. package/dist/collection/components/grid/grid.css +12 -0
  314. package/dist/collection/components/grid/grid.js +9 -5
  315. package/dist/collection/components/header/header.ionic.css +88 -0
  316. package/dist/collection/components/header/header.ios.css +25 -10
  317. package/dist/collection/components/header/header.js +38 -15
  318. package/dist/collection/components/header/header.md.css +23 -8
  319. package/dist/collection/components/img/img.js +8 -2
  320. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  321. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  322. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  323. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  324. package/dist/collection/components/input/input.ionic.css +1099 -0
  325. package/dist/collection/components/input/input.ios.css +21 -2
  326. package/dist/collection/components/input/input.js +143 -29
  327. package/dist/collection/components/input/input.md.css +43 -4
  328. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  329. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +143 -0
  330. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  331. package/dist/collection/components/item/item.ionic.css +494 -0
  332. package/dist/collection/components/item/item.ios.css +108 -69
  333. package/dist/collection/components/item/item.js +44 -16
  334. package/dist/collection/components/item/item.md.css +119 -68
  335. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  336. package/dist/collection/components/item-divider/item-divider.js +11 -8
  337. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  338. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  339. package/dist/collection/components/item-group/item-group.js +13 -7
  340. package/dist/collection/components/item-group/item-group.md.css +12 -0
  341. package/dist/collection/components/item-option/item-option.ionic.css +334 -0
  342. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  343. package/dist/collection/components/item-option/item-option.js +43 -8
  344. package/dist/collection/components/item-option/item-option.md.css +14 -2
  345. package/dist/collection/components/item-options/item-options.ionic.css +260 -0
  346. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  347. package/dist/collection/components/item-options/item-options.js +13 -7
  348. package/dist/collection/components/item-options/item-options.md.css +18 -0
  349. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  350. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  351. package/dist/collection/components/label/label.ios.css +18 -0
  352. package/dist/collection/components/label/label.js +11 -8
  353. package/dist/collection/components/label/label.md.css +18 -0
  354. package/dist/collection/components/list/list.ionic.css +196 -0
  355. package/dist/collection/components/list/list.ios.css +18 -0
  356. package/dist/collection/components/list/list.js +47 -9
  357. package/dist/collection/components/list/list.md.css +20 -2
  358. package/dist/collection/components/list-header/list-header.ionic.css +238 -0
  359. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  360. package/dist/collection/components/list-header/list-header.js +11 -8
  361. package/dist/collection/components/list-header/list-header.md.css +18 -0
  362. package/dist/collection/components/loading/loading.ios.css +13 -1
  363. package/dist/collection/components/loading/loading.js +13 -10
  364. package/dist/collection/components/loading/loading.md.css +13 -1
  365. package/dist/collection/components/menu/menu.ios.css +15 -3
  366. package/dist/collection/components/menu/menu.js +12 -7
  367. package/dist/collection/components/menu/menu.md.css +15 -3
  368. package/dist/collection/components/menu-button/menu-button.ionic.css +240 -0
  369. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  370. package/dist/collection/components/menu-button/menu-button.js +26 -10
  371. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  372. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  373. package/dist/collection/components/modal/modal.ios.css +14 -2
  374. package/dist/collection/components/modal/modal.js +13 -10
  375. package/dist/collection/components/modal/modal.md.css +14 -2
  376. package/dist/collection/components/nav/nav.css +7 -1
  377. package/dist/collection/components/nav/nav.js +11 -5
  378. package/dist/collection/components/nav-link/nav-link.js +5 -1
  379. package/dist/collection/components/note/note.ios.css +12 -0
  380. package/dist/collection/components/note/note.js +11 -8
  381. package/dist/collection/components/note/note.md.css +12 -0
  382. package/dist/collection/components/picker/picker.ios.css +15 -3
  383. package/dist/collection/components/picker/picker.js +8 -5
  384. package/dist/collection/components/picker/picker.md.css +15 -3
  385. package/dist/collection/components/picker-column/picker-column.css +9 -2
  386. package/dist/collection/components/picker-column/picker-column.js +8 -7
  387. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  388. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  389. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  390. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  391. package/dist/collection/components/picker-legacy/picker.js +7 -6
  392. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  393. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  394. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  395. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  396. package/dist/collection/components/popover/popover.ios.css +13 -1
  397. package/dist/collection/components/popover/popover.js +15 -12
  398. package/dist/collection/components/popover/popover.md.css +13 -1
  399. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  400. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  401. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  402. package/dist/collection/components/radio/radio.ionic.css +420 -0
  403. package/dist/collection/components/radio/radio.ios.css +134 -91
  404. package/dist/collection/components/radio/radio.js +12 -9
  405. package/dist/collection/components/radio/radio.md.css +134 -91
  406. package/dist/collection/components/radio-group/radio-group.js +9 -3
  407. package/dist/collection/components/range/range.ios.css +12 -0
  408. package/dist/collection/components/range/range.js +12 -9
  409. package/dist/collection/components/range/range.md.css +12 -0
  410. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  411. package/dist/collection/components/refresher/refresher.js +11 -8
  412. package/dist/collection/components/refresher/refresher.md.css +15 -2
  413. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  414. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  415. package/dist/collection/components/reorder/reorder.js +33 -6
  416. package/dist/collection/components/reorder/reorder.md.css +6 -0
  417. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  418. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  419. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  420. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  421. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  422. package/dist/collection/components/route/route.js +4 -0
  423. package/dist/collection/components/router/router.js +4 -0
  424. package/dist/collection/components/router-link/router-link.css +8 -2
  425. package/dist/collection/components/router-link/router-link.js +9 -5
  426. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  427. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  428. package/dist/collection/components/row/row.css +12 -0
  429. package/dist/collection/components/row/row.js +9 -2
  430. package/dist/collection/components/searchbar/searchbar.ionic.css +270 -0
  431. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  432. package/dist/collection/components/searchbar/searchbar.js +96 -24
  433. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  434. package/dist/collection/components/segment/segment.ios.css +18 -0
  435. package/dist/collection/components/segment/segment.js +11 -8
  436. package/dist/collection/components/segment/segment.md.css +18 -0
  437. package/dist/collection/components/segment-button/segment-button.ios.css +16 -4
  438. package/dist/collection/components/segment-button/segment-button.js +12 -9
  439. package/dist/collection/components/segment-button/segment-button.md.css +18 -6
  440. package/dist/collection/components/select/select.ios.css +22 -3
  441. package/dist/collection/components/select/select.js +79 -31
  442. package/dist/collection/components/select/select.md.css +38 -5
  443. package/dist/collection/components/select-option/select-option.js +9 -2
  444. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  445. package/dist/collection/components/select-popover/select-popover.js +12 -4
  446. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  447. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  448. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  449. package/dist/collection/components/spinner/spinner.common.css +199 -0
  450. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +61 -0
  451. package/dist/collection/components/spinner/spinner.js +46 -6
  452. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  453. package/dist/collection/components/split-pane/split-pane.js +14 -8
  454. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  455. package/dist/collection/components/tab/tab.js +6 -2
  456. package/dist/collection/components/tab-bar/tab-bar.ionic.css +200 -0
  457. package/dist/collection/components/tab-bar/tab-bar.ios.css +64 -43
  458. package/dist/collection/components/tab-bar/tab-bar.js +12 -9
  459. package/dist/collection/components/tab-bar/tab-bar.md.css +64 -43
  460. package/dist/collection/components/tab-button/tab-button.ionic.css +273 -0
  461. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  462. package/dist/collection/components/tab-button/tab-button.js +11 -8
  463. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  464. package/dist/collection/components/tabs/tabs.css +7 -1
  465. package/dist/collection/components/tabs/tabs.js +4 -1
  466. package/dist/collection/components/text/text.css +6 -0
  467. package/dist/collection/components/text/text.js +7 -6
  468. package/dist/collection/components/textarea/textarea.ionic.css +801 -0
  469. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  470. package/dist/collection/components/textarea/textarea.js +59 -16
  471. package/dist/collection/components/textarea/textarea.md.css +214 -97
  472. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  473. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  474. package/dist/collection/components/title/title.ionic.css +147 -0
  475. package/dist/collection/components/title/title.ios.css +32 -4
  476. package/dist/collection/components/title/title.js +13 -7
  477. package/dist/collection/components/title/title.md.css +32 -4
  478. package/dist/collection/components/toast/animations/utils.js +1 -1
  479. package/dist/collection/components/toast/toast.ios.css +12 -0
  480. package/dist/collection/components/toast/toast.js +15 -11
  481. package/dist/collection/components/toast/toast.md.css +12 -0
  482. package/dist/collection/components/toggle/toggle.ionic.css +421 -0
  483. package/dist/collection/components/toggle/toggle.ios.css +186 -120
  484. package/dist/collection/components/toggle/toggle.js +73 -18
  485. package/dist/collection/components/toggle/toggle.md.css +183 -120
  486. package/dist/collection/components/toolbar/toolbar.ionic.css +235 -0
  487. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  488. package/dist/collection/components/toolbar/toolbar.js +13 -10
  489. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  490. package/dist/collection/global/ionic-global.js +161 -13
  491. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  492. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  493. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  494. package/dist/collection/utils/test/playwright/generator.js +48 -23
  495. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  496. package/dist/collection/utils/test/playwright/page/utils/set-content.js +13 -1
  497. package/dist/collection/utils/transition/ios.transition.js +1 -0
  498. package/dist/docs.json +6783 -215
  499. package/dist/esm/{app-globals-b9f6e516.js → app-globals-ba5e973f.js} +1 -1
  500. package/dist/esm/{button-active-13c37337.js → button-active-4a3fadda.js} +1 -1
  501. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  502. package/dist/esm/caret-left-33424bb0.js +6 -0
  503. package/dist/esm/caret-right-68d856ad.js +6 -0
  504. package/dist/esm/{data-ae11fd43.js → data-f41ab7b2.js} +4 -4
  505. package/dist/esm/{hardware-back-button-8e2c1354.js → hardware-back-button-42eeb7cf.js} +2 -2
  506. package/dist/esm/{index-97b0ab3f.js → index-24a79062.js} +9 -8
  507. package/dist/esm/{index-4e02bb5d.js → index-3f990258.js} +1 -1
  508. package/dist/esm/{index-e2cf2ceb.js → index-4ccb3ebe.js} +3 -3
  509. package/dist/esm/{index-5cc724f3.js → index-7b8200de.js} +1 -1
  510. package/dist/esm/{index-8579e7fd.js → index-e99290b2.js} +4 -5
  511. package/dist/esm/index.js +8 -9
  512. package/dist/esm/{input-shims-0314bbe5.js → input-shims-dceef79a.js} +3 -2
  513. package/dist/esm/{input.utils-09c71bc7.js → input.utils-93d4d143.js} +1 -1
  514. package/dist/esm/ion-accordion_2.entry.js +40 -15
  515. package/dist/esm/ion-action-sheet.entry.js +17 -13
  516. package/dist/esm/ion-alert.entry.js +18 -15
  517. package/dist/esm/ion-app_8.entry.js +83 -62
  518. package/dist/esm/ion-avatar_3.entry.js +93 -10
  519. package/dist/esm/ion-back-button.entry.js +29 -20
  520. package/dist/esm/ion-backdrop.entry.js +11 -7
  521. package/dist/esm/ion-breadcrumb_2.entry.js +53 -16
  522. package/dist/esm/ion-button_2.entry.js +42 -12
  523. package/dist/esm/ion-card_5.entry.js +51 -28
  524. package/dist/esm/ion-checkbox.entry.js +28 -13
  525. package/dist/esm/ion-chip.entry.js +43 -8
  526. package/dist/esm/ion-col_3.entry.js +14 -11
  527. package/dist/esm/ion-datetime-button.entry.js +11 -8
  528. package/dist/esm/ion-datetime_3.entry.js +108 -33
  529. package/dist/esm/ion-fab_3.entry.js +42 -20
  530. package/dist/esm/ion-img.entry.js +6 -3
  531. package/dist/esm/ion-infinite-scroll_2.entry.js +17 -14
  532. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  533. package/dist/esm/ion-input.entry.js +117 -22
  534. package/dist/esm/ion-item-option_3.entry.js +39 -17
  535. package/dist/esm/ion-item_8.entry.js +112 -41
  536. package/dist/esm/ion-loading.entry.js +15 -12
  537. package/dist/esm/ion-menu_3.entry.js +45 -25
  538. package/dist/esm/ion-modal.entry.js +18 -15
  539. package/dist/esm/ion-nav_2.entry.js +10 -9
  540. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  541. package/dist/esm/ion-picker-column.entry.js +8 -8
  542. package/dist/esm/ion-picker.entry.js +9 -5
  543. package/dist/esm/ion-popover.entry.js +15 -12
  544. package/dist/esm/ion-progress-bar.entry.js +11 -7
  545. package/dist/esm/ion-radio_2.entry.js +17 -11
  546. package/dist/esm/ion-range.entry.js +12 -9
  547. package/dist/esm/ion-refresher_2.entry.js +37 -16
  548. package/dist/esm/ion-reorder_2.entry.js +35 -11
  549. package/dist/esm/ion-ripple-effect.entry.js +18 -8
  550. package/dist/esm/ion-route_4.entry.js +7 -7
  551. package/dist/esm/ion-searchbar.entry.js +93 -17
  552. package/dist/esm/ion-segment_2.entry.js +21 -13
  553. package/dist/esm/ion-select_3.entry.js +91 -34
  554. package/dist/esm/ion-spinner.entry.js +33 -8
  555. package/dist/esm/ion-split-pane.entry.js +13 -9
  556. package/dist/esm/ion-tab-bar_2.entry.js +22 -14
  557. package/dist/esm/ion-tab_2.entry.js +5 -5
  558. package/dist/esm/ion-text.entry.js +6 -6
  559. package/dist/esm/ion-textarea.entry.js +39 -14
  560. package/dist/esm/ion-toast.entry.js +16 -12
  561. package/dist/esm/ion-toggle.entry.js +77 -19
  562. package/dist/esm/ionic-global-e4f248ad.js +408 -0
  563. package/dist/esm/ionic.js +5 -5
  564. package/dist/esm/{ios.transition-beb96e76.js → ios.transition-de39258c.js} +4 -4
  565. package/dist/esm/list-6524700c.js +6 -0
  566. package/dist/esm/loader.js +5 -5
  567. package/dist/esm/{md.transition-d5aa5703.js → md.transition-414fe166.js} +3 -4
  568. package/dist/esm/{overlays-2ea57630.js → overlays-f2962c26.js} +2 -3
  569. package/dist/esm/{status-tap-a264a37f.js → status-tap-23b337ee.js} +3 -3
  570. package/dist/esm/x-a64bcd9f.js +6 -0
  571. package/dist/esm-es5/app-globals-ba5e973f.js +4 -0
  572. package/dist/esm-es5/{button-active-13c37337.js → button-active-4a3fadda.js} +1 -1
  573. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  574. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  575. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  576. package/dist/esm-es5/data-f41ab7b2.js +4 -0
  577. package/dist/esm-es5/{hardware-back-button-8e2c1354.js → hardware-back-button-42eeb7cf.js} +1 -1
  578. package/dist/esm-es5/index-24a79062.js +4 -0
  579. package/dist/esm-es5/{index-4e02bb5d.js → index-3f990258.js} +1 -1
  580. package/dist/esm-es5/{index-e2cf2ceb.js → index-4ccb3ebe.js} +1 -1
  581. package/dist/esm-es5/index-7b8200de.js +4 -0
  582. package/dist/esm-es5/index-e99290b2.js +4 -0
  583. package/dist/esm-es5/index.js +1 -1
  584. package/dist/esm-es5/input-shims-dceef79a.js +4 -0
  585. package/dist/esm-es5/input.utils-93d4d143.js +4 -0
  586. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  587. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  588. package/dist/esm-es5/ion-alert.entry.js +1 -1
  589. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  590. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  591. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  592. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  593. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  594. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  595. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  596. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  597. package/dist/esm-es5/ion-chip.entry.js +1 -1
  598. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  599. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  600. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  601. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  602. package/dist/esm-es5/ion-img.entry.js +1 -1
  603. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  604. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  605. package/dist/esm-es5/ion-input.entry.js +1 -1
  606. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  607. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  608. package/dist/esm-es5/ion-loading.entry.js +1 -1
  609. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  610. package/dist/esm-es5/ion-modal.entry.js +1 -1
  611. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  612. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  613. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  614. package/dist/esm-es5/ion-picker.entry.js +1 -1
  615. package/dist/esm-es5/ion-popover.entry.js +1 -1
  616. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  617. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  618. package/dist/esm-es5/ion-range.entry.js +1 -1
  619. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  620. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  621. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  622. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  623. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  624. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  625. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  626. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  627. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  628. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  629. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  630. package/dist/esm-es5/ion-text.entry.js +1 -1
  631. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  632. package/dist/esm-es5/ion-toast.entry.js +1 -1
  633. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  634. package/dist/esm-es5/ionic-global-e4f248ad.js +4 -0
  635. package/dist/esm-es5/ionic.js +1 -1
  636. package/dist/esm-es5/ios.transition-de39258c.js +4 -0
  637. package/dist/esm-es5/list-6524700c.js +4 -0
  638. package/dist/esm-es5/loader.js +1 -1
  639. package/dist/esm-es5/md.transition-414fe166.js +4 -0
  640. package/dist/esm-es5/overlays-f2962c26.js +4 -0
  641. package/dist/esm-es5/status-tap-23b337ee.js +4 -0
  642. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  643. package/dist/html.html-data.json +2162 -132
  644. package/dist/ionic/index.esm.js +1 -1
  645. package/dist/ionic/ionic.esm.js +1 -1
  646. package/dist/ionic/ionic.js +1 -1
  647. package/dist/ionic/{p-0c06e09b.system.js → p-0046d9bc.system.js} +1 -1
  648. package/dist/ionic/p-00b9fa44.system.entry.js +4 -0
  649. package/dist/ionic/p-01d80901.system.js +4 -0
  650. package/dist/ionic/p-02c43ec9.js +4 -0
  651. package/dist/ionic/p-03b87fa7.entry.js +4 -0
  652. package/dist/ionic/p-053e4878.system.entry.js +4 -0
  653. package/dist/ionic/{p-4b528ed3.js → p-05f3bcaa.js} +1 -1
  654. package/dist/ionic/p-06ec4706.js +4 -0
  655. package/dist/ionic/p-08925c36.js +4 -0
  656. package/dist/ionic/{p-96cc4814.js → p-0a10f339.js} +1 -1
  657. package/dist/ionic/{p-ab44e74e.entry.js → p-0a8da7ce.entry.js} +1 -1
  658. package/dist/ionic/{p-da2b833b.js → p-0ec01217.js} +1 -1
  659. package/dist/ionic/p-12626e9d.system.entry.js +4 -0
  660. package/dist/ionic/p-140fc790.entry.js +4 -0
  661. package/dist/ionic/p-158731ba.system.entry.js +4 -0
  662. package/dist/ionic/p-1747236f.js +4 -0
  663. package/dist/ionic/p-18b4325f.system.entry.js +4 -0
  664. package/dist/ionic/p-1aa962f6.system.entry.js +4 -0
  665. package/dist/ionic/p-1ae8e871.system.entry.js +4 -0
  666. package/dist/ionic/p-20884f87.system.js +4 -0
  667. package/dist/ionic/p-243adf8c.js +4 -0
  668. package/dist/ionic/p-275c29b5.system.entry.js +4 -0
  669. package/dist/ionic/p-2bdd24e6.system.entry.js +4 -0
  670. package/dist/ionic/{p-9cd1f569.system.js → p-2f61a63a.system.js} +1 -1
  671. package/dist/ionic/p-306c3d65.system.entry.js +4 -0
  672. package/dist/ionic/p-32169c52.entry.js +4 -0
  673. package/dist/ionic/p-321d2acb.entry.js +4 -0
  674. package/dist/ionic/p-346b2fbc.entry.js +4 -0
  675. package/dist/ionic/p-3892a067.js +4 -0
  676. package/dist/ionic/p-3c8fc23c.system.entry.js +4 -0
  677. package/dist/ionic/p-3cdeb748.system.entry.js +4 -0
  678. package/dist/ionic/{p-8b3ff142.entry.js → p-3e22f1d4.entry.js} +1 -1
  679. package/dist/ionic/{p-f687573e.system.js → p-40454f59.system.js} +1 -1
  680. package/dist/ionic/p-429dd2b5.system.js +4 -0
  681. package/dist/ionic/{p-b6fbbe81.system.entry.js → p-42aed3a6.system.entry.js} +2 -2
  682. package/dist/ionic/{p-d60342e3.js → p-42c4db6f.js} +1 -1
  683. package/dist/ionic/p-43120e54.entry.js +4 -0
  684. package/dist/ionic/p-463a1dea.system.entry.js +4 -0
  685. package/dist/ionic/p-46f5cf48.entry.js +4 -0
  686. package/dist/ionic/{p-fd70cb80.system.entry.js → p-4adbda68.system.entry.js} +1 -1
  687. package/dist/ionic/p-4b08e4fd.system.entry.js +4 -0
  688. package/dist/ionic/p-4bdee306.entry.js +4 -0
  689. package/dist/ionic/p-4d95b7b5.entry.js +4 -0
  690. package/dist/ionic/p-4e8754c1.js +4 -0
  691. package/dist/ionic/p-5013f5fa.entry.js +4 -0
  692. package/dist/ionic/p-5081224b.entry.js +4 -0
  693. package/dist/ionic/p-521c94b8.system.entry.js +4 -0
  694. package/dist/ionic/p-522a7bdf.system.js +4 -0
  695. package/dist/ionic/p-53033010.system.entry.js +4 -0
  696. package/dist/ionic/p-54a378b3.entry.js +4 -0
  697. package/dist/ionic/p-56dd0e55.system.entry.js +4 -0
  698. package/dist/ionic/p-57cfc3c2.entry.js +4 -0
  699. package/dist/ionic/p-5b3c3d75.js +4 -0
  700. package/dist/ionic/p-5b57d327.system.js +4 -0
  701. package/dist/ionic/p-5d389876.entry.js +4 -0
  702. package/dist/ionic/p-5e576016.entry.js +4 -0
  703. package/dist/ionic/{p-487a3ae7.system.js → p-6036cb94.system.js} +1 -1
  704. package/dist/ionic/p-607c9c33.js +4 -0
  705. package/dist/ionic/p-60848cbc.entry.js +4 -0
  706. package/dist/ionic/p-61cc293d.entry.js +4 -0
  707. package/dist/ionic/p-6a0dd6bc.js +4 -0
  708. package/dist/ionic/p-6a7fa67f.entry.js +4 -0
  709. package/dist/ionic/p-6b98d727.entry.js +4 -0
  710. package/dist/ionic/p-6d645032.entry.js +4 -0
  711. package/dist/ionic/p-6dd5cdbd.entry.js +4 -0
  712. package/dist/ionic/p-7049d891.js +4 -0
  713. package/dist/ionic/p-70b8d47e.system.entry.js +4 -0
  714. package/dist/ionic/p-73581f47.system.entry.js +4 -0
  715. package/dist/ionic/p-7836fed9.system.entry.js +4 -0
  716. package/dist/ionic/p-7a9a4337.system.entry.js +4 -0
  717. package/dist/ionic/{p-cc35239f.entry.js → p-7cac5f7f.entry.js} +1 -1
  718. package/dist/ionic/p-7f321ebf.entry.js +4 -0
  719. package/dist/ionic/{p-289d16f5.system.js → p-7fd6a21f.system.js} +1 -1
  720. package/dist/ionic/p-8348fade.js +4 -0
  721. package/dist/ionic/p-856bee2b.system.entry.js +4 -0
  722. package/dist/ionic/p-86416e99.system.entry.js +4 -0
  723. package/dist/ionic/p-88b33637.entry.js +4 -0
  724. package/dist/ionic/p-8b465101.js +4 -0
  725. package/dist/ionic/p-8dfbe10c.entry.js +4 -0
  726. package/dist/ionic/p-8fac355a.system.js +4 -0
  727. package/dist/ionic/p-91eae9c7.system.js +4 -0
  728. package/dist/ionic/p-927040c0.system.entry.js +4 -0
  729. package/dist/ionic/p-94096a03.entry.js +4 -0
  730. package/dist/ionic/p-98041d41.entry.js +4 -0
  731. package/dist/ionic/p-9a32448f.system.entry.js +4 -0
  732. package/dist/ionic/p-9f757325.entry.js +4 -0
  733. package/dist/ionic/{p-6d857105.system.entry.js → p-a152af1e.system.entry.js} +1 -1
  734. package/dist/ionic/p-a25a122f.entry.js +4 -0
  735. package/dist/ionic/p-a2ee3b81.entry.js +4 -0
  736. package/dist/ionic/p-a31b6caa.system.entry.js +4 -0
  737. package/dist/ionic/p-a39e1e47.system.entry.js +4 -0
  738. package/dist/ionic/p-a551e77f.system.entry.js +4 -0
  739. package/dist/ionic/p-a586d598.entry.js +4 -0
  740. package/dist/ionic/p-a9af4103.js +4 -0
  741. package/dist/ionic/p-ae18673c.system.entry.js +4 -0
  742. package/dist/ionic/p-b072e109.system.js +4 -0
  743. package/dist/ionic/p-b4a9fa3e.entry.js +4 -0
  744. package/dist/ionic/p-b5d6ee77.entry.js +4 -0
  745. package/dist/ionic/p-b81ebd93.system.entry.js +4 -0
  746. package/dist/ionic/p-b86c66ed.system.entry.js +4 -0
  747. package/dist/ionic/p-b88357ed.system.entry.js +4 -0
  748. package/dist/ionic/p-be117d41.system.entry.js +4 -0
  749. package/dist/ionic/p-be8458d0.entry.js +4 -0
  750. package/dist/ionic/{p-1e955a45.system.js → p-c0d5c3e3.system.js} +1 -1
  751. package/dist/ionic/p-c1336519.system.js +4 -0
  752. package/dist/ionic/p-c248c88d.system.js +4 -0
  753. package/dist/ionic/p-c33d4cdf.system.entry.js +4 -0
  754. package/dist/ionic/p-c3b64e65.system.entry.js +4 -0
  755. package/dist/ionic/{p-9ea607bd.system.js → p-c44a284a.system.js} +2 -2
  756. package/dist/ionic/p-c4fcb166.system.entry.js +4 -0
  757. package/dist/ionic/p-c51b80e9.entry.js +4 -0
  758. package/dist/ionic/p-c9e91e63.entry.js +4 -0
  759. package/dist/ionic/p-ce20ab2e.entry.js +4 -0
  760. package/dist/ionic/{p-c655f9cc.js → p-d0ad00b8.js} +1 -1
  761. package/dist/ionic/p-d0f62197.system.entry.js +4 -0
  762. package/dist/ionic/p-d2bfbb2f.system.entry.js +4 -0
  763. package/dist/ionic/p-d3632c40.entry.js +4 -0
  764. package/dist/ionic/p-d3e769ce.system.js +4 -0
  765. package/dist/ionic/p-d4f71e80.entry.js +4 -0
  766. package/dist/ionic/p-d5569fb7.system.js +4 -0
  767. package/dist/ionic/p-daf9d3a6.system.entry.js +4 -0
  768. package/dist/ionic/p-db0873c7.entry.js +4 -0
  769. package/dist/ionic/p-dddd1a9c.entry.js +4 -0
  770. package/dist/ionic/p-e0286f32.entry.js +4 -0
  771. package/dist/ionic/{p-f4d568f8.entry.js → p-e029fd7c.entry.js} +1 -1
  772. package/dist/ionic/p-e3b70846.system.js +4 -0
  773. package/dist/ionic/p-e3d430c8.js +4 -0
  774. package/dist/ionic/p-e5ef6b03.system.js +4 -0
  775. package/dist/ionic/p-e9306a3b.system.entry.js +4 -0
  776. package/dist/ionic/p-e9a82c36.system.entry.js +4 -0
  777. package/dist/ionic/p-ee6d6246.system.entry.js +4 -0
  778. package/dist/ionic/{p-586fa05c.system.js → p-ef1851f6.system.js} +1 -1
  779. package/dist/ionic/p-f30b71c6.entry.js +4 -0
  780. package/dist/ionic/{p-8302d21c.system.entry.js → p-f4d73064.system.entry.js} +1 -1
  781. package/dist/ionic/{p-c6181d52.system.js → p-f53d29b3.system.js} +1 -1
  782. package/dist/ionic/p-f55ae207.entry.js +4 -0
  783. package/dist/ionic/p-f9dc0fe2.entry.js +4 -0
  784. package/dist/ionic/{p-dc65c03b.js → p-fb4bdc66.js} +1 -1
  785. package/dist/ionic/p-fcbf5b6d.system.entry.js +4 -0
  786. package/dist/ionic/{p-4384e5de.system.entry.js → p-fe209ffd.system.entry.js} +1 -1
  787. package/dist/ionic/svg/accessibility-outline.svg +1 -1
  788. package/dist/ionic/svg/accessibility-sharp.svg +1 -1
  789. package/dist/ionic/svg/accessibility.svg +1 -1
  790. package/dist/ionic/svg/arrow-down-left-box-outline.svg +1 -0
  791. package/dist/ionic/svg/arrow-down-left-box-sharp.svg +1 -0
  792. package/dist/ionic/svg/arrow-down-left-box.svg +1 -0
  793. package/dist/ionic/svg/arrow-down-right-box-outline.svg +1 -0
  794. package/dist/ionic/svg/arrow-down-right-box-sharp.svg +1 -0
  795. package/dist/ionic/svg/arrow-down-right-box.svg +1 -0
  796. package/dist/ionic/svg/arrow-up-left-box-outline.svg +1 -0
  797. package/dist/ionic/svg/arrow-up-left-box-sharp.svg +1 -0
  798. package/dist/ionic/svg/arrow-up-left-box.svg +1 -0
  799. package/dist/ionic/svg/arrow-up-right-box-outline.svg +1 -0
  800. package/dist/ionic/svg/arrow-up-right-box-sharp.svg +1 -0
  801. package/dist/ionic/svg/arrow-up-right-box.svg +1 -0
  802. package/dist/ionic/svg/bag-add-outline.svg +1 -1
  803. package/dist/ionic/svg/bag-add-sharp.svg +1 -1
  804. package/dist/ionic/svg/bag-add.svg +1 -1
  805. package/dist/ionic/svg/bag-check-outline.svg +1 -1
  806. package/dist/ionic/svg/bag-check-sharp.svg +1 -1
  807. package/dist/ionic/svg/bag-check.svg +1 -1
  808. package/dist/ionic/svg/bag-handle-outline.svg +1 -1
  809. package/dist/ionic/svg/bag-handle-sharp.svg +1 -1
  810. package/dist/ionic/svg/bag-handle.svg +1 -1
  811. package/dist/ionic/svg/bag-outline.svg +1 -1
  812. package/dist/ionic/svg/bag-remove-outline.svg +1 -1
  813. package/dist/ionic/svg/bag-remove-sharp.svg +1 -1
  814. package/dist/ionic/svg/bag-remove.svg +1 -1
  815. package/dist/ionic/svg/bag-sharp.svg +1 -1
  816. package/dist/ionic/svg/bag.svg +1 -1
  817. package/dist/ionic/svg/balloon-outline.svg +1 -1
  818. package/dist/ionic/svg/balloon-sharp.svg +1 -1
  819. package/dist/ionic/svg/balloon.svg +1 -1
  820. package/dist/ionic/svg/ban-outline.svg +1 -1
  821. package/dist/ionic/svg/ban-sharp.svg +1 -1
  822. package/dist/ionic/svg/ban.svg +1 -1
  823. package/dist/ionic/svg/binoculars-outline.svg +1 -0
  824. package/dist/ionic/svg/binoculars-sharp.svg +1 -0
  825. package/dist/ionic/svg/binoculars.svg +1 -0
  826. package/dist/ionic/svg/body-outline.svg +1 -1
  827. package/dist/ionic/svg/bowling-ball-outline.svg +1 -1
  828. package/dist/ionic/svg/bowling-ball-sharp.svg +1 -1
  829. package/dist/ionic/svg/bowling-ball.svg +1 -1
  830. package/dist/ionic/svg/calendar-clear-outline.svg +1 -1
  831. package/dist/ionic/svg/calendar-clear-sharp.svg +1 -1
  832. package/dist/ionic/svg/calendar-clear.svg +1 -1
  833. package/dist/ionic/svg/calendar-number-outline.svg +1 -1
  834. package/dist/ionic/svg/calendar-number-sharp.svg +1 -1
  835. package/dist/ionic/svg/calendar-number.svg +1 -1
  836. package/dist/ionic/svg/calendar-outline.svg +1 -1
  837. package/dist/ionic/svg/calendar-sharp.svg +1 -1
  838. package/dist/ionic/svg/calendar.svg +1 -1
  839. package/dist/ionic/svg/chevron-collapse-outline.svg +1 -1
  840. package/dist/ionic/svg/chevron-collapse-sharp.svg +1 -1
  841. package/dist/ionic/svg/chevron-collapse.svg +1 -1
  842. package/dist/ionic/svg/chevron-expand-outline.svg +1 -1
  843. package/dist/ionic/svg/chevron-expand-sharp.svg +1 -1
  844. package/dist/ionic/svg/chevron-expand.svg +1 -1
  845. package/dist/ionic/svg/color-wand-outline.svg +1 -1
  846. package/dist/ionic/svg/color-wand.svg +1 -1
  847. package/dist/ionic/svg/diamond-outline.svg +1 -1
  848. package/dist/ionic/svg/diamond-sharp.svg +1 -1
  849. package/dist/ionic/svg/diamond.svg +1 -1
  850. package/dist/ionic/svg/dice-outline.svg +1 -1
  851. package/dist/ionic/svg/dice-sharp.svg +1 -1
  852. package/dist/ionic/svg/dice.svg +1 -1
  853. package/dist/ionic/svg/document-lock-outline.svg +1 -1
  854. package/dist/ionic/svg/document-lock-sharp.svg +1 -1
  855. package/dist/ionic/svg/document-lock.svg +1 -1
  856. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -1
  857. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -1
  858. package/dist/ionic/svg/extension-puzzle.svg +1 -1
  859. package/dist/ionic/svg/filter-circle-outline.svg +1 -1
  860. package/dist/ionic/svg/filter-circle-sharp.svg +1 -1
  861. package/dist/ionic/svg/filter-circle.svg +1 -1
  862. package/dist/ionic/svg/fish-outline.svg +1 -1
  863. package/dist/ionic/svg/fish-sharp.svg +1 -1
  864. package/dist/ionic/svg/fish.svg +1 -1
  865. package/dist/ionic/svg/footsteps-outline.svg +1 -1
  866. package/dist/ionic/svg/footsteps-sharp.svg +1 -1
  867. package/dist/ionic/svg/footsteps.svg +1 -1
  868. package/dist/ionic/svg/id-card-outline.svg +1 -1
  869. package/dist/ionic/svg/id-card-sharp.svg +1 -1
  870. package/dist/ionic/svg/id-card.svg +1 -1
  871. package/dist/ionic/svg/invert-mode-outline.svg +1 -1
  872. package/dist/ionic/svg/invert-mode-sharp.svg +1 -1
  873. package/dist/ionic/svg/invert-mode.svg +1 -1
  874. package/dist/ionic/svg/logo-alipay.svg +1 -1
  875. package/dist/ionic/svg/logo-android.svg +1 -1
  876. package/dist/ionic/svg/logo-appflow.svg +1 -0
  877. package/dist/ionic/svg/logo-apple-ar.svg +1 -1
  878. package/dist/ionic/svg/logo-behance.svg +1 -1
  879. package/dist/ionic/svg/logo-bitbucket.svg +1 -1
  880. package/dist/ionic/svg/logo-deviantart.svg +1 -1
  881. package/dist/ionic/svg/logo-discord.svg +1 -1
  882. package/dist/ionic/svg/logo-docker.svg +1 -1
  883. package/dist/ionic/svg/logo-edge.svg +1 -1
  884. package/dist/ionic/svg/logo-facebook.svg +1 -1
  885. package/dist/ionic/svg/logo-figma.svg +1 -1
  886. package/dist/ionic/svg/logo-firebase.svg +1 -1
  887. package/dist/ionic/svg/logo-gitlab.svg +1 -1
  888. package/dist/ionic/svg/logo-ionic.svg +1 -1
  889. package/dist/ionic/svg/logo-mastodon.svg +1 -1
  890. package/dist/ionic/svg/logo-medium.svg +1 -1
  891. package/dist/ionic/svg/logo-microsoft.svg +1 -1
  892. package/dist/ionic/svg/logo-npm.svg +1 -1
  893. package/dist/ionic/svg/logo-paypal.svg +1 -1
  894. package/dist/ionic/svg/logo-soundcloud.svg +1 -1
  895. package/dist/ionic/svg/logo-tableau.svg +1 -1
  896. package/dist/ionic/svg/logo-tiktok.svg +1 -1
  897. package/dist/ionic/svg/logo-trapeze.svg +1 -0
  898. package/dist/ionic/svg/logo-venmo.svg +1 -1
  899. package/dist/ionic/svg/logo-vercel.svg +1 -1
  900. package/dist/ionic/svg/logo-wechat.svg +1 -1
  901. package/dist/ionic/svg/logo-x.svg +1 -0
  902. package/dist/ionic/svg/logo-yahoo.svg +1 -1
  903. package/dist/ionic/svg/prism-outline.svg +1 -1
  904. package/dist/ionic/svg/prism-sharp.svg +1 -1
  905. package/dist/ionic/svg/prism.svg +1 -1
  906. package/dist/ionic/svg/scale-outline.svg +1 -1
  907. package/dist/ionic/svg/scale-sharp.svg +1 -1
  908. package/dist/ionic/svg/scale.svg +1 -1
  909. package/dist/ionic/svg/server-outline.svg +1 -1
  910. package/dist/ionic/svg/server-sharp.svg +1 -1
  911. package/dist/ionic/svg/server.svg +1 -1
  912. package/dist/ionic/svg/shield-half-outline.svg +1 -1
  913. package/dist/ionic/svg/shield-half-sharp.svg +1 -1
  914. package/dist/ionic/svg/shield-half.svg +1 -1
  915. package/dist/ionic/svg/sparkles-outline.svg +1 -1
  916. package/dist/ionic/svg/sparkles-sharp.svg +1 -1
  917. package/dist/ionic/svg/sparkles.svg +1 -1
  918. package/dist/ionic/svg/storefront-outline.svg +1 -1
  919. package/dist/ionic/svg/storefront-sharp.svg +1 -1
  920. package/dist/ionic/svg/storefront.svg +1 -1
  921. package/dist/ionic/svg/telescope-outline.svg +1 -1
  922. package/dist/ionic/svg/telescope-sharp.svg +1 -1
  923. package/dist/ionic/svg/telescope.svg +1 -1
  924. package/dist/ionic/svg/ticket-outline.svg +1 -1
  925. package/dist/ionic/svg/ticket-sharp.svg +1 -1
  926. package/dist/ionic/svg/ticket.svg +1 -1
  927. package/dist/ionic/svg/today-outline.svg +1 -1
  928. package/dist/ionic/svg/today-sharp.svg +1 -1
  929. package/dist/ionic/svg/today.svg +1 -1
  930. package/dist/ionic/svg/unlink-outline.svg +1 -1
  931. package/dist/ionic/svg/unlink-sharp.svg +1 -1
  932. package/dist/ionic/svg/unlink.svg +1 -1
  933. package/dist/ionic/svg/videocam-off-outline.svg +1 -1
  934. package/dist/ionic/svg/videocam-off-sharp.svg +1 -1
  935. package/dist/ionic/svg/videocam-off.svg +1 -1
  936. package/dist/ionic/svg/wifi-outline.svg +1 -1
  937. package/dist/ionic/svg/wifi-sharp.svg +1 -1
  938. package/dist/ionic/svg/wifi.svg +1 -1
  939. package/dist/types/components/accordion/accordion.d.ts +4 -2
  940. package/dist/types/components/accordion-group/accordion-group.d.ts +2 -1
  941. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  942. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  943. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  944. package/dist/types/components/alert/alert.d.ts +3 -2
  945. package/dist/types/components/app/app.d.ts +4 -0
  946. package/dist/types/components/avatar/avatar.d.ts +28 -0
  947. package/dist/types/components/back-button/back-button.d.ts +2 -1
  948. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  949. package/dist/types/components/badge/badge.d.ts +23 -1
  950. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  951. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  952. package/dist/types/components/button/button.d.ts +15 -4
  953. package/dist/types/components/buttons/buttons.d.ts +5 -1
  954. package/dist/types/components/card/card.d.ts +8 -1
  955. package/dist/types/components/card-content/card-content.d.ts +2 -1
  956. package/dist/types/components/card-header/card-header.d.ts +3 -2
  957. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  958. package/dist/types/components/card-title/card-title.d.ts +2 -1
  959. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  960. package/dist/types/components/chip/chip.d.ts +19 -1
  961. package/dist/types/components/col/col.d.ts +4 -0
  962. package/dist/types/components/content/content.d.ts +3 -0
  963. package/dist/types/components/datetime/datetime.d.ts +26 -1
  964. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  965. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  966. package/dist/types/components/fab/fab.d.ts +4 -0
  967. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  968. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  969. package/dist/types/components/footer/footer.d.ts +4 -3
  970. package/dist/types/components/grid/grid.d.ts +4 -0
  971. package/dist/types/components/header/header.d.ts +9 -3
  972. package/dist/types/components/img/img.d.ts +3 -0
  973. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  974. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  975. package/dist/types/components/input/input.d.ts +31 -5
  976. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  977. package/dist/types/components/item/item.d.ts +11 -4
  978. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  979. package/dist/types/components/item-group/item-group.d.ts +4 -0
  980. package/dist/types/components/item-option/item-option.d.ts +11 -1
  981. package/dist/types/components/item-options/item-options.d.ts +4 -0
  982. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  983. package/dist/types/components/label/label.d.ts +2 -1
  984. package/dist/types/components/list/list.d.ts +15 -1
  985. package/dist/types/components/list-header/list-header.d.ts +2 -1
  986. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  987. package/dist/types/components/loading/loading.d.ts +3 -2
  988. package/dist/types/components/menu/menu.d.ts +3 -0
  989. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  990. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  991. package/dist/types/components/modal/modal-interface.d.ts +3 -7
  992. package/dist/types/components/modal/modal.d.ts +2 -1
  993. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  994. package/dist/types/components/nav/nav.d.ts +5 -1
  995. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  996. package/dist/types/components/note/note.d.ts +2 -1
  997. package/dist/types/components/picker/picker.d.ts +2 -1
  998. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  999. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  1000. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  1001. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  1002. package/dist/types/components/popover/popover.d.ts +6 -5
  1003. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  1004. package/dist/types/components/radio/radio.d.ts +2 -1
  1005. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  1006. package/dist/types/components/range/range.d.ts +2 -1
  1007. package/dist/types/components/refresher/refresher.d.ts +2 -1
  1008. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  1009. package/dist/types/components/reorder/reorder.d.ts +9 -0
  1010. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  1011. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  1012. package/dist/types/components/route/route.d.ts +4 -0
  1013. package/dist/types/components/router/router.d.ts +4 -0
  1014. package/dist/types/components/router-link/router-link.d.ts +4 -0
  1015. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  1016. package/dist/types/components/row/row.d.ts +4 -0
  1017. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  1018. package/dist/types/components/segment/segment.d.ts +2 -1
  1019. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  1020. package/dist/types/components/select/select.d.ts +20 -5
  1021. package/dist/types/components/select-option/select-option.d.ts +4 -0
  1022. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  1023. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  1024. package/dist/types/components/spinner/spinner.d.ts +15 -0
  1025. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  1026. package/dist/types/components/tab/tab.d.ts +4 -0
  1027. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -2
  1028. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  1029. package/dist/types/components/tabs/tabs.d.ts +3 -0
  1030. package/dist/types/components/text/text.d.ts +2 -1
  1031. package/dist/types/components/textarea/textarea.d.ts +16 -4
  1032. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  1033. package/dist/types/components/title/title.d.ts +4 -0
  1034. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1035. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1036. package/dist/types/components/toast/toast.d.ts +3 -2
  1037. package/dist/types/components/toggle/toggle.d.ts +15 -1
  1038. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1039. package/dist/types/components.d.ts +1322 -178
  1040. package/dist/types/global/ionic-global.d.ts +25 -2
  1041. package/dist/types/interface.d.ts +3 -0
  1042. package/dist/types/utils/config.d.ts +99 -2
  1043. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1044. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1045. package/hydrate/index.js +1989 -654
  1046. package/hydrate/index.mjs +1989 -654
  1047. package/package.json +9 -5
  1048. package/components/index9.js +0 -167
  1049. package/dist/cjs/index-5915f9b3.js +0 -38
  1050. package/dist/cjs/ionic-global-86430f67.js +0 -237
  1051. package/dist/esm/index-9b0d46f4.js +0 -34
  1052. package/dist/esm/ionic-global-8f9440ec.js +0 -231
  1053. package/dist/esm-es5/app-globals-b9f6e516.js +0 -4
  1054. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1055. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1056. package/dist/esm-es5/index-8579e7fd.js +0 -4
  1057. package/dist/esm-es5/index-97b0ab3f.js +0 -4
  1058. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1059. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1060. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1061. package/dist/esm-es5/ionic-global-8f9440ec.js +0 -4
  1062. package/dist/esm-es5/ios.transition-beb96e76.js +0 -4
  1063. package/dist/esm-es5/md.transition-d5aa5703.js +0 -4
  1064. package/dist/esm-es5/overlays-2ea57630.js +0 -4
  1065. package/dist/esm-es5/status-tap-a264a37f.js +0 -4
  1066. package/dist/ionic/p-0065a3d0.system.entry.js +0 -4
  1067. package/dist/ionic/p-06e58c4e.js +0 -4
  1068. package/dist/ionic/p-06fbb310.entry.js +0 -4
  1069. package/dist/ionic/p-06fee233.js +0 -4
  1070. package/dist/ionic/p-08cfccad.js +0 -4
  1071. package/dist/ionic/p-11810112.system.entry.js +0 -4
  1072. package/dist/ionic/p-1277436d.system.entry.js +0 -4
  1073. package/dist/ionic/p-14c81a66.system.js +0 -4
  1074. package/dist/ionic/p-15ef22b3.system.entry.js +0 -4
  1075. package/dist/ionic/p-16917251.entry.js +0 -4
  1076. package/dist/ionic/p-184f2f63.system.entry.js +0 -4
  1077. package/dist/ionic/p-1b57577b.entry.js +0 -4
  1078. package/dist/ionic/p-1cacb881.system.entry.js +0 -4
  1079. package/dist/ionic/p-1d3ea8c1.entry.js +0 -4
  1080. package/dist/ionic/p-1dfe9aa7.entry.js +0 -4
  1081. package/dist/ionic/p-1e1b3d99.system.entry.js +0 -4
  1082. package/dist/ionic/p-1f772e46.entry.js +0 -4
  1083. package/dist/ionic/p-2056f176.js +0 -4
  1084. package/dist/ionic/p-21904499.entry.js +0 -4
  1085. package/dist/ionic/p-21cd60c8.system.entry.js +0 -4
  1086. package/dist/ionic/p-23e0cd37.entry.js +0 -4
  1087. package/dist/ionic/p-2690b1de.js +0 -4
  1088. package/dist/ionic/p-2afb9310.entry.js +0 -4
  1089. package/dist/ionic/p-2b37f5bd.entry.js +0 -4
  1090. package/dist/ionic/p-2d93a7e5.system.js +0 -4
  1091. package/dist/ionic/p-2de64a3f.system.entry.js +0 -4
  1092. package/dist/ionic/p-330d7e08.entry.js +0 -4
  1093. package/dist/ionic/p-34a6b5a7.entry.js +0 -4
  1094. package/dist/ionic/p-382345db.system.entry.js +0 -4
  1095. package/dist/ionic/p-3ba261ac.entry.js +0 -4
  1096. package/dist/ionic/p-3d9ecf70.entry.js +0 -4
  1097. package/dist/ionic/p-42b70cc3.system.entry.js +0 -4
  1098. package/dist/ionic/p-4440f5b4.entry.js +0 -4
  1099. package/dist/ionic/p-444c76ee.system.entry.js +0 -4
  1100. package/dist/ionic/p-4559c9cd.entry.js +0 -4
  1101. package/dist/ionic/p-46121609.entry.js +0 -4
  1102. package/dist/ionic/p-491deb33.entry.js +0 -4
  1103. package/dist/ionic/p-49ffacc0.system.entry.js +0 -4
  1104. package/dist/ionic/p-4a963829.system.entry.js +0 -4
  1105. package/dist/ionic/p-4ad3a2de.entry.js +0 -4
  1106. package/dist/ionic/p-4e6aa78c.entry.js +0 -4
  1107. package/dist/ionic/p-4fa22b8c.entry.js +0 -4
  1108. package/dist/ionic/p-505121c4.entry.js +0 -4
  1109. package/dist/ionic/p-50c38a28.system.entry.js +0 -4
  1110. package/dist/ionic/p-52fce436.entry.js +0 -4
  1111. package/dist/ionic/p-56b0ac1b.system.entry.js +0 -4
  1112. package/dist/ionic/p-5749f245.system.entry.js +0 -4
  1113. package/dist/ionic/p-5ae3649f.system.entry.js +0 -4
  1114. package/dist/ionic/p-62bb4a33.system.entry.js +0 -4
  1115. package/dist/ionic/p-669c0566.system.js +0 -4
  1116. package/dist/ionic/p-66aa91c8.js +0 -4
  1117. package/dist/ionic/p-6e444bfa.entry.js +0 -4
  1118. package/dist/ionic/p-6e4ff107.system.entry.js +0 -4
  1119. package/dist/ionic/p-7123a4b9.system.js +0 -4
  1120. package/dist/ionic/p-76256933.system.entry.js +0 -4
  1121. package/dist/ionic/p-7de39857.system.entry.js +0 -4
  1122. package/dist/ionic/p-7f375f5a.entry.js +0 -4
  1123. package/dist/ionic/p-82ad7191.entry.js +0 -4
  1124. package/dist/ionic/p-83f7a890.system.entry.js +0 -4
  1125. package/dist/ionic/p-840cdfe8.entry.js +0 -4
  1126. package/dist/ionic/p-86895ed7.system.js +0 -4
  1127. package/dist/ionic/p-86deab17.system.entry.js +0 -4
  1128. package/dist/ionic/p-8884ee37.system.entry.js +0 -4
  1129. package/dist/ionic/p-89611183.system.js +0 -4
  1130. package/dist/ionic/p-89d17c48.system.entry.js +0 -4
  1131. package/dist/ionic/p-8cab6a5c.system.entry.js +0 -4
  1132. package/dist/ionic/p-8d460677.entry.js +0 -4
  1133. package/dist/ionic/p-8ed4381f.js +0 -4
  1134. package/dist/ionic/p-96503a77.entry.js +0 -4
  1135. package/dist/ionic/p-97f6c01c.system.entry.js +0 -4
  1136. package/dist/ionic/p-98203dbd.system.entry.js +0 -4
  1137. package/dist/ionic/p-985f06f3.entry.js +0 -4
  1138. package/dist/ionic/p-98a7aade.js +0 -4
  1139. package/dist/ionic/p-9a64afc9.entry.js +0 -4
  1140. package/dist/ionic/p-9a957058.system.entry.js +0 -4
  1141. package/dist/ionic/p-9beb3fad.js +0 -4
  1142. package/dist/ionic/p-aa5358cb.system.entry.js +0 -4
  1143. package/dist/ionic/p-acaa514f.system.entry.js +0 -4
  1144. package/dist/ionic/p-b032d7ad.system.entry.js +0 -4
  1145. package/dist/ionic/p-b0d099be.js +0 -4
  1146. package/dist/ionic/p-b0fbe12b.entry.js +0 -4
  1147. package/dist/ionic/p-b0fea0ab.system.entry.js +0 -4
  1148. package/dist/ionic/p-b6f09d60.system.entry.js +0 -4
  1149. package/dist/ionic/p-bb013b6c.system.entry.js +0 -4
  1150. package/dist/ionic/p-be11fb42.system.js +0 -4
  1151. package/dist/ionic/p-be32a527.entry.js +0 -4
  1152. package/dist/ionic/p-c7b3353c.entry.js +0 -4
  1153. package/dist/ionic/p-ccfe13f3.entry.js +0 -4
  1154. package/dist/ionic/p-cdb1dc2f.system.entry.js +0 -4
  1155. package/dist/ionic/p-d232cc6e.system.entry.js +0 -4
  1156. package/dist/ionic/p-d4a694c5.system.entry.js +0 -4
  1157. package/dist/ionic/p-d6b5bfa3.entry.js +0 -4
  1158. package/dist/ionic/p-d7cde2c6.entry.js +0 -4
  1159. package/dist/ionic/p-d81e5138.entry.js +0 -4
  1160. package/dist/ionic/p-da5af268.system.entry.js +0 -4
  1161. package/dist/ionic/p-dfb78785.system.js +0 -4
  1162. package/dist/ionic/p-e00617fb.entry.js +0 -4
  1163. package/dist/ionic/p-e02807c4.entry.js +0 -4
  1164. package/dist/ionic/p-e043b29b.entry.js +0 -4
  1165. package/dist/ionic/p-e2edeaaf.entry.js +0 -4
  1166. package/dist/ionic/p-e8cd5bde.js +0 -4
  1167. package/dist/ionic/p-ebe1326c.system.js +0 -4
  1168. package/dist/ionic/p-ed76b287.entry.js +0 -4
  1169. package/dist/ionic/p-eecf3a84.entry.js +0 -4
  1170. package/dist/ionic/p-f8fbf20f.system.entry.js +0 -4
  1171. package/dist/ionic/p-fca0933c.system.entry.js +0 -4
  1172. package/dist/ionic/p-ff417d5d.system.entry.js +0 -4
  1173. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1174. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -82,17 +82,21 @@ export namespace Components {
82
82
  */
83
83
  "disabled": boolean;
84
84
  /**
85
- * The mode determines which platform styles to use.
85
+ * The mode determines the platform behaviors of the component.
86
86
  */
87
87
  "mode"?: "ios" | "md";
88
88
  /**
89
89
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
90
90
  */
91
91
  "readonly": boolean;
92
+ /**
93
+ * The theme determines the visual appearance of the component.
94
+ */
95
+ "theme"?: "ios" | "md" | "ionic";
92
96
  /**
93
97
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
94
98
  */
95
- "toggleIcon": string;
99
+ "toggleIcon"?: string;
96
100
  /**
97
101
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
98
102
  */
@@ -117,7 +121,7 @@ export namespace Components {
117
121
  "expand": 'compact' | 'inset';
118
122
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
119
123
  /**
120
- * The mode determines which platform styles to use.
124
+ * The mode determines the platform behaviors of the component.
121
125
  */
122
126
  "mode"?: "ios" | "md";
123
127
  /**
@@ -132,6 +136,10 @@ export namespace Components {
132
136
  * 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.
133
137
  */
134
138
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
139
+ /**
140
+ * The theme determines the visual appearance of the component.
141
+ */
142
+ "theme"?: "ios" | "md" | "ionic";
135
143
  /**
136
144
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
137
145
  */
@@ -187,7 +195,7 @@ export namespace Components {
187
195
  */
188
196
  "leaveAnimation"?: AnimationBuilder;
189
197
  /**
190
- * The mode determines which platform styles to use.
198
+ * The mode determines the platform behaviors of the component.
191
199
  */
192
200
  "mode"?: "ios" | "md";
193
201
  /**
@@ -208,7 +216,11 @@ export namespace Components {
208
216
  */
209
217
  "subHeader"?: string;
210
218
  /**
211
- * 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).
219
+ * The theme determines the visual appearance of the component.
220
+ */
221
+ "theme"?: "ios" | "md" | "ionic";
222
+ /**
223
+ * 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).
212
224
  */
213
225
  "translucent": boolean;
214
226
  /**
@@ -274,7 +286,7 @@ export namespace Components {
274
286
  */
275
287
  "message"?: string | IonicSafeString;
276
288
  /**
277
- * The mode determines which platform styles to use.
289
+ * The mode determines the platform behaviors of the component.
278
290
  */
279
291
  "mode"?: "ios" | "md";
280
292
  /**
@@ -295,7 +307,11 @@ export namespace Components {
295
307
  */
296
308
  "subHeader"?: string;
297
309
  /**
298
- * 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).
310
+ * The theme determines the visual appearance of the component.
311
+ */
312
+ "theme"?: "ios" | "md" | "ionic";
313
+ /**
314
+ * 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).
299
315
  */
300
316
  "translucent": boolean;
301
317
  /**
@@ -304,9 +320,33 @@ export namespace Components {
304
320
  "trigger": string | undefined;
305
321
  }
306
322
  interface IonApp {
323
+ /**
324
+ * The mode determines the platform behaviors of the component.
325
+ */
326
+ "mode"?: "ios" | "md";
307
327
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
328
+ /**
329
+ * The theme determines the visual appearance of the component.
330
+ */
331
+ "theme"?: "ios" | "md" | "ionic";
308
332
  }
309
333
  interface IonAvatar {
334
+ /**
335
+ * The mode determines the platform behaviors of the component.
336
+ */
337
+ "mode"?: "ios" | "md";
338
+ /**
339
+ * 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.
340
+ */
341
+ "shape"?: 'soft' | 'round' | 'rectangular';
342
+ /**
343
+ * 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.
344
+ */
345
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
346
+ /**
347
+ * The theme determines the visual appearance of the component.
348
+ */
349
+ "theme"?: "ios" | "md" | "ionic";
310
350
  }
311
351
  interface IonBackButton {
312
352
  /**
@@ -326,7 +366,7 @@ export namespace Components {
326
366
  */
327
367
  "icon"?: string | null;
328
368
  /**
329
- * The mode determines which platform styles to use.
369
+ * The mode determines the platform behaviors of the component.
330
370
  */
331
371
  "mode"?: "ios" | "md";
332
372
  /**
@@ -337,12 +377,20 @@ export namespace Components {
337
377
  * The text to display in the back button.
338
378
  */
339
379
  "text"?: string | null;
380
+ /**
381
+ * The theme determines the visual appearance of the component.
382
+ */
383
+ "theme"?: "ios" | "md" | "ionic";
340
384
  /**
341
385
  * The type of the button.
342
386
  */
343
387
  "type": 'submit' | 'reset' | 'button';
344
388
  }
345
389
  interface IonBackdrop {
390
+ /**
391
+ * The mode determines the platform behaviors of the component.
392
+ */
393
+ "mode"?: "ios" | "md";
346
394
  /**
347
395
  * If `true`, the backdrop will stop propagation on tap.
348
396
  */
@@ -351,6 +399,10 @@ export namespace Components {
351
399
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
352
400
  */
353
401
  "tappable": boolean;
402
+ /**
403
+ * The theme determines the visual appearance of the component.
404
+ */
405
+ "theme"?: "ios" | "md" | "ionic";
354
406
  /**
355
407
  * If `true`, the backdrop will be visible.
356
408
  */
@@ -362,9 +414,21 @@ export namespace Components {
362
414
  */
363
415
  "color"?: Color;
364
416
  /**
365
- * The mode determines which platform styles to use.
417
+ * The mode determines the platform behaviors of the component.
366
418
  */
367
419
  "mode"?: "ios" | "md";
420
+ /**
421
+ * 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.
422
+ */
423
+ "shape"?: 'soft' | 'round | rectangular';
424
+ /**
425
+ * 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.
426
+ */
427
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
428
+ /**
429
+ * The theme determines the visual appearance of the component.
430
+ */
431
+ "theme"?: "ios" | "md" | "ionic";
368
432
  }
369
433
  interface IonBreadcrumb {
370
434
  /**
@@ -390,7 +454,7 @@ export namespace Components {
390
454
  "href": string | undefined;
391
455
  "last": boolean;
392
456
  /**
393
- * The mode determines which platform styles to use.
457
+ * The mode determines the platform behaviors of the component.
394
458
  */
395
459
  "mode"?: "ios" | "md";
396
460
  /**
@@ -414,6 +478,10 @@ export namespace Components {
414
478
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
415
479
  */
416
480
  "target": string | undefined;
481
+ /**
482
+ * The theme determines the visual appearance of the component.
483
+ */
484
+ "theme"?: "ios" | "md" | "ionic";
417
485
  }
418
486
  interface IonBreadcrumbs {
419
487
  /**
@@ -433,9 +501,13 @@ export namespace Components {
433
501
  */
434
502
  "maxItems"?: number;
435
503
  /**
436
- * The mode determines which platform styles to use.
504
+ * The mode determines the platform behaviors of the component.
437
505
  */
438
506
  "mode"?: "ios" | "md";
507
+ /**
508
+ * The theme determines the visual appearance of the component.
509
+ */
510
+ "theme"?: "ios" | "md" | "ionic";
439
511
  }
440
512
  interface IonButton {
441
513
  /**
@@ -471,7 +543,7 @@ export namespace Components {
471
543
  */
472
544
  "href": string | undefined;
473
545
  /**
474
- * The mode determines which platform styles to use.
546
+ * The mode determines the platform behaviors of the component.
475
547
  */
476
548
  "mode"?: "ios" | "md";
477
549
  /**
@@ -487,13 +559,13 @@ export namespace Components {
487
559
  */
488
560
  "routerDirection": RouterDirection;
489
561
  /**
490
- * Set to `"round"` for a button with more rounded corners.
562
+ * 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.
491
563
  */
492
- "shape"?: 'round';
564
+ "shape"?: 'soft' | 'round' | 'rectangular';
493
565
  /**
494
566
  * 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.
495
567
  */
496
- "size"?: 'small' | 'default' | 'large';
568
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
497
569
  /**
498
570
  * If `true`, activates a button with a heavier font weight.
499
571
  */
@@ -502,6 +574,10 @@ export namespace Components {
502
574
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
503
575
  */
504
576
  "target": string | undefined;
577
+ /**
578
+ * The theme determines the visual appearance of the component.
579
+ */
580
+ "theme"?: "ios" | "md" | "ionic";
505
581
  /**
506
582
  * The type of the button.
507
583
  */
@@ -509,9 +585,17 @@ export namespace Components {
509
585
  }
510
586
  interface IonButtons {
511
587
  /**
512
- * 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)
588
+ * 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)
513
589
  */
514
590
  "collapse": boolean;
591
+ /**
592
+ * The mode determines the platform behaviors of the component.
593
+ */
594
+ "mode"?: "ios" | "md";
595
+ /**
596
+ * The theme determines the visual appearance of the component.
597
+ */
598
+ "theme"?: "ios" | "md" | "ionic";
515
599
  }
516
600
  interface IonCard {
517
601
  /**
@@ -535,7 +619,7 @@ export namespace Components {
535
619
  */
536
620
  "href": string | undefined;
537
621
  /**
538
- * The mode determines which platform styles to use.
622
+ * The mode determines the platform behaviors of the component.
539
623
  */
540
624
  "mode"?: "ios" | "md";
541
625
  /**
@@ -550,10 +634,18 @@ export namespace Components {
550
634
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
551
635
  */
552
636
  "routerDirection": RouterDirection;
637
+ /**
638
+ * 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"`.
639
+ */
640
+ "shape"?: 'soft' | 'round' | 'rectangular';
553
641
  /**
554
642
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
555
643
  */
556
644
  "target": string | undefined;
645
+ /**
646
+ * The theme determines the visual appearance of the component.
647
+ */
648
+ "theme"?: "ios" | "md" | "ionic";
557
649
  /**
558
650
  * The type of the button. Only used when an `onclick` or `button` property is present.
559
651
  */
@@ -561,9 +653,13 @@ export namespace Components {
561
653
  }
562
654
  interface IonCardContent {
563
655
  /**
564
- * The mode determines which platform styles to use.
656
+ * The mode determines the platform behaviors of the component.
565
657
  */
566
658
  "mode"?: "ios" | "md";
659
+ /**
660
+ * The theme determines the visual appearance of the component.
661
+ */
662
+ "theme"?: "ios" | "md" | "ionic";
567
663
  }
568
664
  interface IonCardHeader {
569
665
  /**
@@ -571,11 +667,15 @@ export namespace Components {
571
667
  */
572
668
  "color"?: Color;
573
669
  /**
574
- * The mode determines which platform styles to use.
670
+ * The mode determines the platform behaviors of the component.
575
671
  */
576
672
  "mode"?: "ios" | "md";
577
673
  /**
578
- * 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).
674
+ * The theme determines the visual appearance of the component.
675
+ */
676
+ "theme"?: "ios" | "md" | "ionic";
677
+ /**
678
+ * 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).
579
679
  */
580
680
  "translucent": boolean;
581
681
  }
@@ -585,9 +685,13 @@ export namespace Components {
585
685
  */
586
686
  "color"?: Color;
587
687
  /**
588
- * The mode determines which platform styles to use.
688
+ * The mode determines the platform behaviors of the component.
589
689
  */
590
690
  "mode"?: "ios" | "md";
691
+ /**
692
+ * The theme determines the visual appearance of the component.
693
+ */
694
+ "theme"?: "ios" | "md" | "ionic";
591
695
  }
592
696
  interface IonCardTitle {
593
697
  /**
@@ -595,9 +699,13 @@ export namespace Components {
595
699
  */
596
700
  "color"?: Color;
597
701
  /**
598
- * The mode determines which platform styles to use.
702
+ * The mode determines the platform behaviors of the component.
599
703
  */
600
704
  "mode"?: "ios" | "md";
705
+ /**
706
+ * The theme determines the visual appearance of the component.
707
+ */
708
+ "theme"?: "ios" | "md" | "ionic";
601
709
  }
602
710
  interface IonCheckbox {
603
711
  /**
@@ -629,13 +737,25 @@ export namespace Components {
629
737
  */
630
738
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
631
739
  /**
632
- * The mode determines which platform styles to use.
740
+ * The mode determines the platform behaviors of the component.
633
741
  */
634
742
  "mode"?: "ios" | "md";
635
743
  /**
636
744
  * The name of the control, which is submitted with the form data.
637
745
  */
638
746
  "name": string;
747
+ /**
748
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
749
+ */
750
+ "shape"?: 'soft' | 'rectangular';
751
+ /**
752
+ * Set to `"small"` for a checkbox with less height and padding.
753
+ */
754
+ "size"?: 'small';
755
+ /**
756
+ * The theme determines the visual appearance of the component.
757
+ */
758
+ "theme"?: "ios" | "md" | "ionic";
639
759
  /**
640
760
  * 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>`.
641
761
  */
@@ -651,15 +771,31 @@ export namespace Components {
651
771
  */
652
772
  "disabled": boolean;
653
773
  /**
654
- * The mode determines which platform styles to use.
774
+ * The mode determines the platform behaviors of the component.
655
775
  */
656
776
  "mode"?: "ios" | "md";
657
777
  /**
658
778
  * Display an outline style button.
659
779
  */
660
780
  "outline": boolean;
781
+ /**
782
+ * 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.
783
+ */
784
+ "shape"?: 'soft' | 'round' | 'rectangular';
785
+ /**
786
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
787
+ */
788
+ "size"?: 'small' | 'large';
789
+ /**
790
+ * The theme determines the visual appearance of the component.
791
+ */
792
+ "theme"?: "ios" | "md" | "ionic";
661
793
  }
662
794
  interface IonCol {
795
+ /**
796
+ * The mode determines the platform behaviors of the component.
797
+ */
798
+ "mode"?: "ios" | "md";
663
799
  /**
664
800
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
665
801
  */
@@ -756,6 +892,10 @@ export namespace Components {
756
892
  * 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.
757
893
  */
758
894
  "sizeXs"?: string;
895
+ /**
896
+ * The theme determines the visual appearance of the component.
897
+ */
898
+ "theme"?: "ios" | "md" | "ionic";
759
899
  }
760
900
  interface IonContent {
761
901
  /**
@@ -782,6 +922,10 @@ export namespace Components {
782
922
  * 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.
783
923
  */
784
924
  "getScrollElement": () => Promise<HTMLElement>;
925
+ /**
926
+ * The mode determines the platform behaviors of the component.
927
+ */
928
+ "mode"?: "ios" | "md";
785
929
  /**
786
930
  * Scroll by a specified X/Y distance in the component.
787
931
  * @param x The amount to scroll by on the horizontal axis.
@@ -818,6 +962,10 @@ export namespace Components {
818
962
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
819
963
  */
820
964
  "scrollY": boolean;
965
+ /**
966
+ * The theme determines the visual appearance of the component.
967
+ */
968
+ "theme"?: "ios" | "md" | "ionic";
821
969
  }
822
970
  interface IonDatetime {
823
971
  /**
@@ -893,7 +1041,7 @@ export namespace Components {
893
1041
  */
894
1042
  "minuteValues"?: number[] | number | string;
895
1043
  /**
896
- * The mode determines which platform styles to use.
1044
+ * The mode determines the platform behaviors of the component.
897
1045
  */
898
1046
  "mode"?: "ios" | "md";
899
1047
  /**
@@ -944,6 +1092,10 @@ export namespace Components {
944
1092
  * 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.
945
1093
  */
946
1094
  "size": 'cover' | 'fixed';
1095
+ /**
1096
+ * The theme determines the visual appearance of the component.
1097
+ */
1098
+ "theme"?: "ios" | "md" | "ionic";
947
1099
  /**
948
1100
  * 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.
949
1101
  */
@@ -971,9 +1123,13 @@ export namespace Components {
971
1123
  */
972
1124
  "disabled": boolean;
973
1125
  /**
974
- * The mode determines which platform styles to use.
1126
+ * The mode determines the platform behaviors of the component.
975
1127
  */
976
1128
  "mode"?: "ios" | "md";
1129
+ /**
1130
+ * The theme determines the visual appearance of the component.
1131
+ */
1132
+ "theme"?: "ios" | "md" | "ionic";
977
1133
  }
978
1134
  interface IonFab {
979
1135
  /**
@@ -992,6 +1148,14 @@ export namespace Components {
992
1148
  * Where to align the fab horizontally in the viewport.
993
1149
  */
994
1150
  "horizontal"?: 'start' | 'end' | 'center';
1151
+ /**
1152
+ * The mode determines the platform behaviors of the component.
1153
+ */
1154
+ "mode"?: "ios" | "md";
1155
+ /**
1156
+ * The theme determines the visual appearance of the component.
1157
+ */
1158
+ "theme"?: "ios" | "md" | "ionic";
995
1159
  /**
996
1160
  * Opens/Closes the FAB list container.
997
1161
  */
@@ -1009,7 +1173,7 @@ export namespace Components {
1009
1173
  /**
1010
1174
  * 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.
1011
1175
  */
1012
- "closeIcon": string;
1176
+ "closeIcon"?: string;
1013
1177
  /**
1014
1178
  * 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).
1015
1179
  */
@@ -1027,7 +1191,7 @@ export namespace Components {
1027
1191
  */
1028
1192
  "href": string | undefined;
1029
1193
  /**
1030
- * The mode determines which platform styles to use.
1194
+ * The mode determines the platform behaviors of the component.
1031
1195
  */
1032
1196
  "mode"?: "ios" | "md";
1033
1197
  /**
@@ -1055,7 +1219,11 @@ export namespace Components {
1055
1219
  */
1056
1220
  "target": string | undefined;
1057
1221
  /**
1058
- * 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).
1222
+ * The theme determines the visual appearance of the component.
1223
+ */
1224
+ "theme"?: "ios" | "md" | "ionic";
1225
+ /**
1226
+ * 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).
1059
1227
  */
1060
1228
  "translucent": boolean;
1061
1229
  /**
@@ -1068,22 +1236,34 @@ export namespace Components {
1068
1236
  * If `true`, the fab list will show all fab buttons in the list.
1069
1237
  */
1070
1238
  "activated": boolean;
1239
+ /**
1240
+ * The mode determines the platform behaviors of the component.
1241
+ */
1242
+ "mode"?: "ios" | "md";
1071
1243
  /**
1072
1244
  * The side the fab list will show on relative to the main fab button.
1073
1245
  */
1074
1246
  "side": 'start' | 'end' | 'top' | 'bottom';
1247
+ /**
1248
+ * The theme determines the visual appearance of the component.
1249
+ */
1250
+ "theme"?: "ios" | "md" | "ionic";
1075
1251
  }
1076
1252
  interface IonFooter {
1077
1253
  /**
1078
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1254
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1079
1255
  */
1080
1256
  "collapse"?: 'fade';
1081
1257
  /**
1082
- * The mode determines which platform styles to use.
1258
+ * The mode determines the platform behaviors of the component.
1083
1259
  */
1084
1260
  "mode"?: "ios" | "md";
1085
1261
  /**
1086
- * 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.
1262
+ * The theme determines the visual appearance of the component.
1263
+ */
1264
+ "theme"?: "ios" | "md" | "ionic";
1265
+ /**
1266
+ * 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.
1087
1267
  */
1088
1268
  "translucent": boolean;
1089
1269
  }
@@ -1092,18 +1272,34 @@ export namespace Components {
1092
1272
  * If `true`, the grid will have a fixed width based on the screen size.
1093
1273
  */
1094
1274
  "fixed": boolean;
1275
+ /**
1276
+ * The mode determines the platform behaviors of the component.
1277
+ */
1278
+ "mode"?: "ios" | "md";
1279
+ /**
1280
+ * The theme determines the visual appearance of the component.
1281
+ */
1282
+ "theme"?: "ios" | "md" | "ionic";
1095
1283
  }
1096
1284
  interface IonHeader {
1097
1285
  /**
1098
- * 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)
1286
+ * 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)
1099
1287
  */
1100
1288
  "collapse"?: 'condense' | 'fade';
1101
1289
  /**
1102
- * The mode determines which platform styles to use.
1290
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1291
+ */
1292
+ "divider": boolean;
1293
+ /**
1294
+ * The mode determines the platform behaviors of the component.
1103
1295
  */
1104
1296
  "mode"?: "ios" | "md";
1105
1297
  /**
1106
- * 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.
1298
+ * The theme determines the visual appearance of the component.
1299
+ */
1300
+ "theme"?: "ios" | "md" | "ionic";
1301
+ /**
1302
+ * 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.
1107
1303
  */
1108
1304
  "translucent": boolean;
1109
1305
  }
@@ -1112,10 +1308,18 @@ export namespace Components {
1112
1308
  * 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.
1113
1309
  */
1114
1310
  "alt"?: string;
1311
+ /**
1312
+ * The mode determines the platform behaviors of the component.
1313
+ */
1314
+ "mode"?: "ios" | "md";
1115
1315
  /**
1116
1316
  * The image URL. This attribute is mandatory for the `<img>` element.
1117
1317
  */
1118
1318
  "src"?: string;
1319
+ /**
1320
+ * The theme determines the visual appearance of the component.
1321
+ */
1322
+ "theme"?: "ios" | "md" | "ionic";
1119
1323
  }
1120
1324
  interface IonInfiniteScroll {
1121
1325
  /**
@@ -1126,10 +1330,18 @@ export namespace Components {
1126
1330
  * 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.
1127
1331
  */
1128
1332
  "disabled": boolean;
1333
+ /**
1334
+ * The mode determines the platform behaviors of the component.
1335
+ */
1336
+ "mode"?: "ios" | "md";
1129
1337
  /**
1130
1338
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1131
1339
  */
1132
1340
  "position": 'top' | 'bottom';
1341
+ /**
1342
+ * The theme determines the visual appearance of the component.
1343
+ */
1344
+ "theme"?: "ios" | "md" | "ionic";
1133
1345
  /**
1134
1346
  * 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.
1135
1347
  */
@@ -1144,6 +1356,14 @@ export namespace Components {
1144
1356
  * 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.
1145
1357
  */
1146
1358
  "loadingText"?: string | IonicSafeString;
1359
+ /**
1360
+ * The mode determines the platform behaviors of the component.
1361
+ */
1362
+ "mode"?: "ios" | "md";
1363
+ /**
1364
+ * The theme determines the visual appearance of the component.
1365
+ */
1366
+ "theme"?: "ios" | "md" | "ionic";
1147
1367
  }
1148
1368
  interface IonInput {
1149
1369
  /**
@@ -1203,7 +1423,7 @@ export namespace Components {
1203
1423
  */
1204
1424
  "errorText"?: string;
1205
1425
  /**
1206
- * 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.
1426
+ * 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"`.
1207
1427
  */
1208
1428
  "fill"?: 'outline' | 'solid';
1209
1429
  /**
@@ -1223,9 +1443,9 @@ export namespace Components {
1223
1443
  */
1224
1444
  "label"?: string;
1225
1445
  /**
1226
- * 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 ("...").
1446
+ * 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.
1227
1447
  */
1228
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1448
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1229
1449
  /**
1230
1450
  * The maximum value, which must not be less than its minimum (min attribute) value.
1231
1451
  */
@@ -1243,7 +1463,7 @@ export namespace Components {
1243
1463
  */
1244
1464
  "minlength"?: number;
1245
1465
  /**
1246
- * The mode determines which platform styles to use.
1466
+ * The mode determines the platform behaviors of the component.
1247
1467
  */
1248
1468
  "mode"?: "ios" | "md";
1249
1469
  /**
@@ -1275,9 +1495,13 @@ export namespace Components {
1275
1495
  */
1276
1496
  "setFocus": () => Promise<void>;
1277
1497
  /**
1278
- * The shape of the input. If "round" it will have an increased border radius.
1498
+ * 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"`.
1279
1499
  */
1280
- "shape"?: 'round';
1500
+ "shape"?: 'soft' | 'round' | 'rectangular';
1501
+ /**
1502
+ * 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.
1503
+ */
1504
+ "size"?: 'medium' | 'large' | 'xlarge';
1281
1505
  /**
1282
1506
  * If `true`, the element will have its spelling and grammar checked.
1283
1507
  */
@@ -1286,6 +1510,10 @@ export namespace Components {
1286
1510
  * 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.
1287
1511
  */
1288
1512
  "step"?: string;
1513
+ /**
1514
+ * The theme determines the visual appearance of the component.
1515
+ */
1516
+ "theme"?: "ios" | "md" | "ionic";
1289
1517
  /**
1290
1518
  * The type of control to display. The default type is text.
1291
1519
  */
@@ -1324,13 +1552,13 @@ export namespace Components {
1324
1552
  */
1325
1553
  "color"?: Color;
1326
1554
  /**
1327
- * 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.
1555
+ * 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.
1328
1556
  */
1329
1557
  "detail"?: boolean;
1330
1558
  /**
1331
1559
  * The icon to use when `detail` is set to `true`.
1332
1560
  */
1333
- "detailIcon": string;
1561
+ "detailIcon"?: string;
1334
1562
  /**
1335
1563
  * If `true`, the user cannot interact with the item.
1336
1564
  */
@@ -1348,7 +1576,7 @@ export namespace Components {
1348
1576
  */
1349
1577
  "lines"?: 'full' | 'inset' | 'none';
1350
1578
  /**
1351
- * The mode determines which platform styles to use.
1579
+ * The mode determines the platform behaviors of the component.
1352
1580
  */
1353
1581
  "mode"?: "ios" | "md";
1354
1582
  /**
@@ -1367,6 +1595,10 @@ export namespace Components {
1367
1595
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1368
1596
  */
1369
1597
  "target": string | undefined;
1598
+ /**
1599
+ * The theme determines the visual appearance of the component.
1600
+ */
1601
+ "theme"?: "ios" | "md" | "ionic";
1370
1602
  /**
1371
1603
  * The type of the button. Only used when an `onclick` or `button` property is present.
1372
1604
  */
@@ -1378,15 +1610,27 @@ export namespace Components {
1378
1610
  */
1379
1611
  "color"?: Color;
1380
1612
  /**
1381
- * The mode determines which platform styles to use.
1613
+ * The mode determines the platform behaviors of the component.
1382
1614
  */
1383
1615
  "mode"?: "ios" | "md";
1384
1616
  /**
1385
1617
  * 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
1386
1618
  */
1387
1619
  "sticky": boolean;
1620
+ /**
1621
+ * The theme determines the visual appearance of the component.
1622
+ */
1623
+ "theme"?: "ios" | "md" | "ionic";
1388
1624
  }
1389
1625
  interface IonItemGroup {
1626
+ /**
1627
+ * The mode determines the platform behaviors of the component.
1628
+ */
1629
+ "mode"?: "ios" | "md";
1630
+ /**
1631
+ * The theme determines the visual appearance of the component.
1632
+ */
1633
+ "theme"?: "ios" | "md" | "ionic";
1390
1634
  }
1391
1635
  interface IonItemOption {
1392
1636
  /**
@@ -1410,17 +1654,25 @@ export namespace Components {
1410
1654
  */
1411
1655
  "href": string | undefined;
1412
1656
  /**
1413
- * The mode determines which platform styles to use.
1657
+ * The mode determines the platform behaviors of the component.
1414
1658
  */
1415
1659
  "mode"?: "ios" | "md";
1416
1660
  /**
1417
1661
  * 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).
1418
1662
  */
1419
1663
  "rel": string | undefined;
1664
+ /**
1665
+ * 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.
1666
+ */
1667
+ "shape"?: 'soft' | 'round' | 'rectangular';
1420
1668
  /**
1421
1669
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1422
1670
  */
1423
1671
  "target": string | undefined;
1672
+ /**
1673
+ * The theme determines the visual appearance of the component.
1674
+ */
1675
+ "theme"?: "ios" | "md" | "ionic";
1424
1676
  /**
1425
1677
  * The type of the button.
1426
1678
  */
@@ -1428,10 +1680,18 @@ export namespace Components {
1428
1680
  }
1429
1681
  interface IonItemOptions {
1430
1682
  "fireSwipeEvent": () => Promise<void>;
1683
+ /**
1684
+ * The mode determines the platform behaviors of the component.
1685
+ */
1686
+ "mode"?: "ios" | "md";
1431
1687
  /**
1432
1688
  * 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.
1433
1689
  */
1434
1690
  "side": Side;
1691
+ /**
1692
+ * The theme determines the visual appearance of the component.
1693
+ */
1694
+ "theme"?: "ios" | "md" | "ionic";
1435
1695
  }
1436
1696
  interface IonItemSliding {
1437
1697
  /**
@@ -1454,11 +1714,19 @@ export namespace Components {
1454
1714
  * 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.
1455
1715
  */
1456
1716
  "getSlidingRatio": () => Promise<number>;
1717
+ /**
1718
+ * The mode determines the platform behaviors of the component.
1719
+ */
1720
+ "mode"?: "ios" | "md";
1457
1721
  /**
1458
1722
  * Open the sliding item.
1459
1723
  * @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.
1460
1724
  */
1461
1725
  "open": (side: Side | undefined) => Promise<void>;
1726
+ /**
1727
+ * The theme determines the visual appearance of the component.
1728
+ */
1729
+ "theme"?: "ios" | "md" | "ionic";
1462
1730
  }
1463
1731
  interface IonLabel {
1464
1732
  /**
@@ -1466,13 +1734,17 @@ export namespace Components {
1466
1734
  */
1467
1735
  "color"?: Color;
1468
1736
  /**
1469
- * The mode determines which platform styles to use.
1737
+ * The mode determines the platform behaviors of the component.
1470
1738
  */
1471
1739
  "mode"?: "ios" | "md";
1472
1740
  /**
1473
1741
  * The position determines where and how the label behaves inside an item.
1474
1742
  */
1475
1743
  "position"?: 'fixed' | 'stacked' | 'floating';
1744
+ /**
1745
+ * The theme determines the visual appearance of the component.
1746
+ */
1747
+ "theme"?: "ios" | "md" | "ionic";
1476
1748
  }
1477
1749
  interface IonList {
1478
1750
  /**
@@ -1488,9 +1760,17 @@ export namespace Components {
1488
1760
  */
1489
1761
  "lines"?: 'full' | 'inset' | 'none';
1490
1762
  /**
1491
- * The mode determines which platform styles to use.
1763
+ * The mode determines the platform behaviors of the component.
1492
1764
  */
1493
1765
  "mode"?: "ios" | "md";
1766
+ /**
1767
+ * 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.
1768
+ */
1769
+ "shape"?: 'soft' | 'round' | 'rectangular';
1770
+ /**
1771
+ * The theme determines the visual appearance of the component.
1772
+ */
1773
+ "theme"?: "ios" | "md" | "ionic";
1494
1774
  }
1495
1775
  interface IonListHeader {
1496
1776
  /**
@@ -1502,9 +1782,13 @@ export namespace Components {
1502
1782
  */
1503
1783
  "lines"?: 'full' | 'inset' | 'none';
1504
1784
  /**
1505
- * The mode determines which platform styles to use.
1785
+ * The mode determines the platform behaviors of the component.
1506
1786
  */
1507
1787
  "mode"?: "ios" | "md";
1788
+ /**
1789
+ * The theme determines the visual appearance of the component.
1790
+ */
1791
+ "theme"?: "ios" | "md" | "ionic";
1508
1792
  }
1509
1793
  interface IonLoading {
1510
1794
  /**
@@ -1556,7 +1840,7 @@ export namespace Components {
1556
1840
  */
1557
1841
  "message"?: string | IonicSafeString;
1558
1842
  /**
1559
- * The mode determines which platform styles to use.
1843
+ * The mode determines the platform behaviors of the component.
1560
1844
  */
1561
1845
  "mode"?: "ios" | "md";
1562
1846
  /**
@@ -1581,7 +1865,11 @@ export namespace Components {
1581
1865
  */
1582
1866
  "spinner"?: SpinnerTypes | null;
1583
1867
  /**
1584
- * 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).
1868
+ * The theme determines the visual appearance of the component.
1869
+ */
1870
+ "theme"?: "ios" | "md" | "ionic";
1871
+ /**
1872
+ * 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).
1585
1873
  */
1586
1874
  "translucent": boolean;
1587
1875
  /**
@@ -1618,6 +1906,10 @@ export namespace Components {
1618
1906
  * An id for the menu.
1619
1907
  */
1620
1908
  "menuId"?: string;
1909
+ /**
1910
+ * The mode determines the platform behaviors of the component.
1911
+ */
1912
+ "mode"?: "ios" | "md";
1621
1913
  /**
1622
1914
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1623
1915
  */
@@ -1634,6 +1926,10 @@ export namespace Components {
1634
1926
  * If `true`, swiping the menu is enabled.
1635
1927
  */
1636
1928
  "swipeGesture": boolean;
1929
+ /**
1930
+ * The theme determines the visual appearance of the component.
1931
+ */
1932
+ "theme"?: "ios" | "md" | "ionic";
1637
1933
  /**
1638
1934
  * 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`.
1639
1935
  */
@@ -1661,9 +1957,13 @@ export namespace Components {
1661
1957
  */
1662
1958
  "menu"?: string;
1663
1959
  /**
1664
- * The mode determines which platform styles to use.
1960
+ * The mode determines the platform behaviors of the component.
1665
1961
  */
1666
1962
  "mode"?: "ios" | "md";
1963
+ /**
1964
+ * The theme determines the visual appearance of the component.
1965
+ */
1966
+ "theme"?: "ios" | "md" | "ionic";
1667
1967
  /**
1668
1968
  * The type of the button.
1669
1969
  */
@@ -1678,6 +1978,14 @@ export namespace Components {
1678
1978
  * 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.
1679
1979
  */
1680
1980
  "menu"?: string;
1981
+ /**
1982
+ * The mode determines the platform behaviors of the component.
1983
+ */
1984
+ "mode"?: "ios" | "md";
1985
+ /**
1986
+ * The theme determines the visual appearance of the component.
1987
+ */
1988
+ "theme"?: "ios" | "md" | "ionic";
1681
1989
  }
1682
1990
  interface IonModal {
1683
1991
  /**
@@ -1765,7 +2073,7 @@ export namespace Components {
1765
2073
  */
1766
2074
  "leaveAnimation"?: AnimationBuilder;
1767
2075
  /**
1768
- * The mode determines which platform styles to use.
2076
+ * The mode determines the platform behaviors of the component.
1769
2077
  */
1770
2078
  "mode"?: "ios" | "md";
1771
2079
  /**
@@ -1793,6 +2101,10 @@ export namespace Components {
1793
2101
  * 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.
1794
2102
  */
1795
2103
  "showBackdrop": boolean;
2104
+ /**
2105
+ * The theme determines the visual appearance of the component.
2106
+ */
2107
+ "theme"?: "ios" | "md" | "ionic";
1796
2108
  /**
1797
2109
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1798
2110
  */
@@ -1804,7 +2116,7 @@ export namespace Components {
1804
2116
  */
1805
2117
  "animated": boolean;
1806
2118
  /**
1807
- * 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.
2119
+ * 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.
1808
2120
  */
1809
2121
  "animation"?: AnimationBuilder;
1810
2122
  /**
@@ -1852,6 +2164,10 @@ export namespace Components {
1852
2164
  * @param done The transition complete function.
1853
2165
  */
1854
2166
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2167
+ /**
2168
+ * The mode determines the platform behaviors of the component.
2169
+ */
2170
+ "mode"?: "ios" | "md";
1855
2171
  /**
1856
2172
  * Pop a component off of the navigation stack. Navigates back from the current component.
1857
2173
  * @param opts The navigation options.
@@ -1923,6 +2239,10 @@ export namespace Components {
1923
2239
  * If the nav component should allow for swipe-to-go-back.
1924
2240
  */
1925
2241
  "swipeGesture"?: boolean;
2242
+ /**
2243
+ * The theme determines the visual appearance of the component.
2244
+ */
2245
+ "theme"?: "ios" | "md" | "ionic";
1926
2246
  }
1927
2247
  interface IonNavLink {
1928
2248
  /**
@@ -1933,6 +2253,10 @@ export namespace Components {
1933
2253
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1934
2254
  */
1935
2255
  "componentProps"?: ComponentProps;
2256
+ /**
2257
+ * The mode determines the platform behaviors of the component.
2258
+ */
2259
+ "mode"?: "ios" | "md";
1936
2260
  /**
1937
2261
  * The transition animation when navigating to another page.
1938
2262
  */
@@ -1941,6 +2265,10 @@ export namespace Components {
1941
2265
  * The transition direction when navigating to another page.
1942
2266
  */
1943
2267
  "routerDirection": RouterDirection;
2268
+ /**
2269
+ * The theme determines the visual appearance of the component.
2270
+ */
2271
+ "theme"?: "ios" | "md" | "ionic";
1944
2272
  }
1945
2273
  interface IonNote {
1946
2274
  /**
@@ -1948,16 +2276,24 @@ export namespace Components {
1948
2276
  */
1949
2277
  "color"?: Color;
1950
2278
  /**
1951
- * The mode determines which platform styles to use.
2279
+ * The mode determines the platform behaviors of the component.
1952
2280
  */
1953
2281
  "mode"?: "ios" | "md";
2282
+ /**
2283
+ * The theme determines the visual appearance of the component.
2284
+ */
2285
+ "theme"?: "ios" | "md" | "ionic";
1954
2286
  }
1955
2287
  interface IonPicker {
1956
2288
  "exitInputMode": () => Promise<void>;
1957
2289
  /**
1958
- * The mode determines which platform styles to use.
2290
+ * The mode determines the platform behaviors of the component.
1959
2291
  */
1960
2292
  "mode"?: "ios" | "md";
2293
+ /**
2294
+ * The theme determines the visual appearance of the component.
2295
+ */
2296
+ "theme"?: "ios" | "md" | "ionic";
1961
2297
  }
1962
2298
  interface IonPickerColumn {
1963
2299
  /**
@@ -1969,7 +2305,7 @@ export namespace Components {
1969
2305
  */
1970
2306
  "disabled": boolean;
1971
2307
  /**
1972
- * The mode determines which platform styles to use.
2308
+ * The mode determines the platform behaviors of the component.
1973
2309
  */
1974
2310
  "mode"?: "ios" | "md";
1975
2311
  /**
@@ -1985,6 +2321,10 @@ export namespace Components {
1985
2321
  * 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.
1986
2322
  */
1987
2323
  "setValue": (value: PickerColumnValue) => Promise<void>;
2324
+ /**
2325
+ * The theme determines the visual appearance of the component.
2326
+ */
2327
+ "theme"?: "ios" | "md" | "ionic";
1988
2328
  /**
1989
2329
  * The selected option in the picker.
1990
2330
  */
@@ -1999,6 +2339,14 @@ export namespace Components {
1999
2339
  * If `true`, the user cannot interact with the picker column option.
2000
2340
  */
2001
2341
  "disabled": boolean;
2342
+ /**
2343
+ * The mode determines the platform behaviors of the component.
2344
+ */
2345
+ "mode"?: "ios" | "md";
2346
+ /**
2347
+ * The theme determines the visual appearance of the component.
2348
+ */
2349
+ "theme"?: "ios" | "md" | "ionic";
2002
2350
  /**
2003
2351
  * The text value of the option.
2004
2352
  */
@@ -2063,7 +2411,7 @@ export namespace Components {
2063
2411
  */
2064
2412
  "leaveAnimation"?: AnimationBuilder;
2065
2413
  /**
2066
- * The mode determines which platform styles to use.
2414
+ * The mode determines the platform behaviors of the component.
2067
2415
  */
2068
2416
  "mode"?: "ios" | "md";
2069
2417
  /**
@@ -2083,6 +2431,10 @@ export namespace Components {
2083
2431
  * If `true`, a backdrop will be displayed behind the picker.
2084
2432
  */
2085
2433
  "showBackdrop": boolean;
2434
+ /**
2435
+ * The theme determines the visual appearance of the component.
2436
+ */
2437
+ "theme"?: "ios" | "md" | "ionic";
2086
2438
  /**
2087
2439
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2088
2440
  */
@@ -2096,7 +2448,7 @@ export namespace Components {
2096
2448
  }
2097
2449
  interface IonPopover {
2098
2450
  /**
2099
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2451
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2100
2452
  */
2101
2453
  "alignment"?: PositionAlign;
2102
2454
  /**
@@ -2104,7 +2456,7 @@ export namespace Components {
2104
2456
  */
2105
2457
  "animated": boolean;
2106
2458
  /**
2107
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2459
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2108
2460
  */
2109
2461
  "arrow": boolean;
2110
2462
  /**
@@ -2171,7 +2523,7 @@ export namespace Components {
2171
2523
  */
2172
2524
  "leaveAnimation"?: AnimationBuilder;
2173
2525
  /**
2174
- * The mode determines which platform styles to use.
2526
+ * The mode determines the platform behaviors of the component.
2175
2527
  */
2176
2528
  "mode"?: "ios" | "md";
2177
2529
  /**
@@ -2208,7 +2560,11 @@ export namespace Components {
2208
2560
  */
2209
2561
  "size": PopoverSize;
2210
2562
  /**
2211
- * 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).
2563
+ * The theme determines the visual appearance of the component.
2564
+ */
2565
+ "theme"?: "ios" | "md" | "ionic";
2566
+ /**
2567
+ * 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).
2212
2568
  */
2213
2569
  "translucent": boolean;
2214
2570
  /**
@@ -2230,13 +2586,17 @@ export namespace Components {
2230
2586
  */
2231
2587
  "color"?: Color;
2232
2588
  /**
2233
- * The mode determines which platform styles to use.
2589
+ * The mode determines the platform behaviors of the component.
2234
2590
  */
2235
2591
  "mode"?: "ios" | "md";
2236
2592
  /**
2237
2593
  * If true, reverse the progress bar direction.
2238
2594
  */
2239
2595
  "reversed": boolean;
2596
+ /**
2597
+ * The theme determines the visual appearance of the component.
2598
+ */
2599
+ "theme"?: "ios" | "md" | "ionic";
2240
2600
  /**
2241
2601
  * 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).
2242
2602
  */
@@ -2268,7 +2628,7 @@ export namespace Components {
2268
2628
  */
2269
2629
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2270
2630
  /**
2271
- * The mode determines which platform styles to use.
2631
+ * The mode determines the platform behaviors of the component.
2272
2632
  */
2273
2633
  "mode"?: "ios" | "md";
2274
2634
  /**
@@ -2277,6 +2637,10 @@ export namespace Components {
2277
2637
  "name": string;
2278
2638
  "setButtonTabindex": (value: number) => Promise<void>;
2279
2639
  "setFocus": (ev: globalThis.Event) => Promise<void>;
2640
+ /**
2641
+ * The theme determines the visual appearance of the component.
2642
+ */
2643
+ "theme"?: "ios" | "md" | "ionic";
2280
2644
  /**
2281
2645
  * the value of the radio.
2282
2646
  */
@@ -2291,10 +2655,18 @@ export namespace Components {
2291
2655
  * 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.
2292
2656
  */
2293
2657
  "compareWith"?: string | RadioGroupCompareFn | null;
2658
+ /**
2659
+ * The mode determines the platform behaviors of the component.
2660
+ */
2661
+ "mode"?: "ios" | "md";
2294
2662
  /**
2295
2663
  * The name of the control, which is submitted with the form data.
2296
2664
  */
2297
2665
  "name": string;
2666
+ /**
2667
+ * The theme determines the visual appearance of the component.
2668
+ */
2669
+ "theme"?: "ios" | "md" | "ionic";
2298
2670
  /**
2299
2671
  * the value of the radio group.
2300
2672
  */
@@ -2338,7 +2710,7 @@ export namespace Components {
2338
2710
  */
2339
2711
  "min": number;
2340
2712
  /**
2341
- * The mode determines which platform styles to use.
2713
+ * The mode determines the platform behaviors of the component.
2342
2714
  */
2343
2715
  "mode"?: "ios" | "md";
2344
2716
  /**
@@ -2361,6 +2733,10 @@ export namespace Components {
2361
2733
  * Specifies the value granularity.
2362
2734
  */
2363
2735
  "step": number;
2736
+ /**
2737
+ * The theme determines the visual appearance of the component.
2738
+ */
2739
+ "theme"?: "ios" | "md" | "ionic";
2364
2740
  /**
2365
2741
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2366
2742
  */
@@ -2392,7 +2768,7 @@ export namespace Components {
2392
2768
  */
2393
2769
  "getProgress": () => Promise<number>;
2394
2770
  /**
2395
- * The mode determines which platform styles to use.
2771
+ * The mode determines the platform behaviors of the component.
2396
2772
  */
2397
2773
  "mode"?: "ios" | "md";
2398
2774
  /**
@@ -2411,8 +2787,16 @@ export namespace Components {
2411
2787
  * 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.
2412
2788
  */
2413
2789
  "snapbackDuration": string;
2790
+ /**
2791
+ * The theme determines the visual appearance of the component.
2792
+ */
2793
+ "theme"?: "ios" | "md" | "ionic";
2414
2794
  }
2415
2795
  interface IonRefresherContent {
2796
+ /**
2797
+ * The mode determines the platform behaviors of the component.
2798
+ */
2799
+ "mode"?: "ios" | "md";
2416
2800
  /**
2417
2801
  * 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.
2418
2802
  */
@@ -2429,8 +2813,20 @@ export namespace Components {
2429
2813
  * 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.
2430
2814
  */
2431
2815
  "refreshingText"?: string | IonicSafeString;
2816
+ /**
2817
+ * The theme determines the visual appearance of the component.
2818
+ */
2819
+ "theme"?: "ios" | "md" | "ionic";
2432
2820
  }
2433
2821
  interface IonReorder {
2822
+ /**
2823
+ * The mode determines the platform behaviors of the component.
2824
+ */
2825
+ "mode"?: "ios" | "md";
2826
+ /**
2827
+ * The theme determines the visual appearance of the component.
2828
+ */
2829
+ "theme"?: "ios" | "md" | "ionic";
2434
2830
  }
2435
2831
  interface IonReorderGroup {
2436
2832
  /**
@@ -2442,6 +2838,14 @@ export namespace Components {
2442
2838
  * If `true`, the reorder will be hidden.
2443
2839
  */
2444
2840
  "disabled": boolean;
2841
+ /**
2842
+ * The mode determines the platform behaviors of the component.
2843
+ */
2844
+ "mode"?: "ios" | "md";
2845
+ /**
2846
+ * The theme determines the visual appearance of the component.
2847
+ */
2848
+ "theme"?: "ios" | "md" | "ionic";
2445
2849
  }
2446
2850
  interface IonRippleEffect {
2447
2851
  /**
@@ -2450,6 +2854,14 @@ export namespace Components {
2450
2854
  * @param y The vertical coordinate of where the ripple should start.
2451
2855
  */
2452
2856
  "addRipple": (x: number, y: number) => Promise<() => void>;
2857
+ /**
2858
+ * The mode determines the platform behaviors of the component.
2859
+ */
2860
+ "mode"?: "ios" | "md";
2861
+ /**
2862
+ * The theme determines the visual appearance of the component.
2863
+ */
2864
+ "theme"?: "ios" | "md" | "ionic";
2453
2865
  /**
2454
2866
  * 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.
2455
2867
  */
@@ -2472,6 +2884,14 @@ export namespace Components {
2472
2884
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2473
2885
  */
2474
2886
  "componentProps"?: { [key: string]: any };
2887
+ /**
2888
+ * The mode determines the platform behaviors of the component.
2889
+ */
2890
+ "mode"?: "ios" | "md";
2891
+ /**
2892
+ * The theme determines the visual appearance of the component.
2893
+ */
2894
+ "theme"?: "ios" | "md" | "ionic";
2475
2895
  /**
2476
2896
  * 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.
2477
2897
  */
@@ -2493,6 +2913,10 @@ export namespace Components {
2493
2913
  */
2494
2914
  "back": () => Promise<void>;
2495
2915
  "canTransition": () => Promise<string | boolean>;
2916
+ /**
2917
+ * The mode determines the platform behaviors of the component.
2918
+ */
2919
+ "mode"?: "ios" | "md";
2496
2920
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2497
2921
  "printDebug": () => Promise<void>;
2498
2922
  /**
@@ -2505,6 +2929,10 @@ export namespace Components {
2505
2929
  * 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.
2506
2930
  */
2507
2931
  "root": string;
2932
+ /**
2933
+ * The theme determines the visual appearance of the component.
2934
+ */
2935
+ "theme"?: "ios" | "md" | "ionic";
2508
2936
  /**
2509
2937
  * 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.
2510
2938
  */
@@ -2519,6 +2947,10 @@ export namespace Components {
2519
2947
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2520
2948
  */
2521
2949
  "href": string | undefined;
2950
+ /**
2951
+ * The mode determines the platform behaviors of the component.
2952
+ */
2953
+ "mode"?: "ios" | "md";
2522
2954
  /**
2523
2955
  * 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).
2524
2956
  */
@@ -2535,6 +2967,10 @@ export namespace Components {
2535
2967
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2536
2968
  */
2537
2969
  "target": string | undefined;
2970
+ /**
2971
+ * The theme determines the visual appearance of the component.
2972
+ */
2973
+ "theme"?: "ios" | "md" | "ionic";
2538
2974
  }
2539
2975
  interface IonRouterOutlet {
2540
2976
  /**
@@ -2549,13 +2985,25 @@ export namespace Components {
2549
2985
  "delegate"?: FrameworkDelegate;
2550
2986
  "getRouteId": () => Promise<RouteID | undefined>;
2551
2987
  /**
2552
- * The mode determines which platform styles to use.
2988
+ * The mode determines the platform behaviors of the component.
2553
2989
  */
2554
2990
  "mode": "ios" | "md";
2555
2991
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2556
2992
  "swipeHandler"?: SwipeGestureHandler;
2993
+ /**
2994
+ * The theme determines the visual appearance of the component.
2995
+ */
2996
+ "theme"?: "ios" | "md" | "ionic";
2557
2997
  }
2558
2998
  interface IonRow {
2999
+ /**
3000
+ * The mode determines the platform behaviors of the component.
3001
+ */
3002
+ "mode"?: "ios" | "md";
3003
+ /**
3004
+ * The theme determines the visual appearance of the component.
3005
+ */
3006
+ "theme"?: "ios" | "md" | "ionic";
2559
3007
  }
2560
3008
  interface IonSearchbar {
2561
3009
  /**
@@ -2575,15 +3023,15 @@ export namespace Components {
2575
3023
  */
2576
3024
  "autocorrect": 'on' | 'off';
2577
3025
  /**
2578
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3026
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2579
3027
  */
2580
- "cancelButtonIcon": string;
3028
+ "cancelButtonIcon"?: string;
2581
3029
  /**
2582
- * Set the the cancel button text. Only applies to `ios` mode.
3030
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
2583
3031
  */
2584
3032
  "cancelButtonText": string;
2585
3033
  /**
2586
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3034
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2587
3035
  */
2588
3036
  "clearIcon"?: string;
2589
3037
  /**
@@ -2619,7 +3067,7 @@ export namespace Components {
2619
3067
  */
2620
3068
  "minlength"?: number;
2621
3069
  /**
2622
- * The mode determines which platform styles to use.
3070
+ * The mode determines the platform behaviors of the component.
2623
3071
  */
2624
3072
  "mode"?: "ios" | "md";
2625
3073
  /**
@@ -2631,7 +3079,7 @@ export namespace Components {
2631
3079
  */
2632
3080
  "placeholder": string;
2633
3081
  /**
2634
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3082
+ * 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.
2635
3083
  */
2636
3084
  "searchIcon"?: string;
2637
3085
  /**
@@ -2650,6 +3098,10 @@ export namespace Components {
2650
3098
  * If `true`, enable spellcheck on the input.
2651
3099
  */
2652
3100
  "spellcheck": boolean;
3101
+ /**
3102
+ * The theme determines the visual appearance of the component.
3103
+ */
3104
+ "theme"?: "ios" | "md" | "ionic";
2653
3105
  /**
2654
3106
  * Set the type of the input.
2655
3107
  */
@@ -2669,7 +3121,7 @@ export namespace Components {
2669
3121
  */
2670
3122
  "disabled": boolean;
2671
3123
  /**
2672
- * The mode determines which platform styles to use.
3124
+ * The mode determines the platform behaviors of the component.
2673
3125
  */
2674
3126
  "mode"?: "ios" | "md";
2675
3127
  /**
@@ -2684,6 +3136,10 @@ export namespace Components {
2684
3136
  * If `true`, users will be able to swipe between segment buttons to activate them.
2685
3137
  */
2686
3138
  "swipeGesture": boolean;
3139
+ /**
3140
+ * The theme determines the visual appearance of the component.
3141
+ */
3142
+ "theme"?: "ios" | "md" | "ionic";
2687
3143
  /**
2688
3144
  * the value of the segment.
2689
3145
  */
@@ -2699,10 +3155,14 @@ export namespace Components {
2699
3155
  */
2700
3156
  "layout"?: SegmentButtonLayout;
2701
3157
  /**
2702
- * The mode determines which platform styles to use.
3158
+ * The mode determines the platform behaviors of the component.
2703
3159
  */
2704
3160
  "mode"?: "ios" | "md";
2705
3161
  "setFocus": () => Promise<void>;
3162
+ /**
3163
+ * The theme determines the visual appearance of the component.
3164
+ */
3165
+ "theme"?: "ios" | "md" | "ionic";
2706
3166
  /**
2707
3167
  * The type of the button.
2708
3168
  */
@@ -2730,11 +3190,11 @@ export namespace Components {
2730
3190
  */
2731
3191
  "disabled": boolean;
2732
3192
  /**
2733
- * 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.
3193
+ * 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.
2734
3194
  */
2735
3195
  "expandedIcon"?: string;
2736
3196
  /**
2737
- * 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.
3197
+ * 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.
2738
3198
  */
2739
3199
  "fill"?: 'outline' | 'solid';
2740
3200
  /**
@@ -2758,7 +3218,7 @@ export namespace Components {
2758
3218
  */
2759
3219
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2760
3220
  /**
2761
- * The mode determines which platform styles to use.
3221
+ * The mode determines the platform behaviors of the component.
2762
3222
  */
2763
3223
  "mode"?: "ios" | "md";
2764
3224
  /**
@@ -2791,7 +3251,11 @@ export namespace Components {
2791
3251
  */
2792
3252
  "shape"?: 'round';
2793
3253
  /**
2794
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3254
+ * The theme determines the visual appearance of the component.
3255
+ */
3256
+ "theme"?: "ios" | "md" | "ionic";
3257
+ /**
3258
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2795
3259
  */
2796
3260
  "toggleIcon"?: string;
2797
3261
  /**
@@ -2804,6 +3268,14 @@ export namespace Components {
2804
3268
  * 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.
2805
3269
  */
2806
3270
  "disabled": boolean;
3271
+ /**
3272
+ * The mode determines the platform behaviors of the component.
3273
+ */
3274
+ "mode"?: "ios" | "md";
3275
+ /**
3276
+ * The theme determines the visual appearance of the component.
3277
+ */
3278
+ "theme"?: "ios" | "md" | "ionic";
2807
3279
  /**
2808
3280
  * The text value of the option.
2809
3281
  */
@@ -2818,6 +3290,10 @@ export namespace Components {
2818
3290
  * The text content of the popover body
2819
3291
  */
2820
3292
  "message"?: string;
3293
+ /**
3294
+ * The mode determines the platform behaviors of the component.
3295
+ */
3296
+ "mode"?: "ios" | "md";
2821
3297
  /**
2822
3298
  * If true, the select accepts multiple values
2823
3299
  */
@@ -2830,12 +3306,24 @@ export namespace Components {
2830
3306
  * The subheader text of the popover
2831
3307
  */
2832
3308
  "subHeader"?: string;
3309
+ /**
3310
+ * The theme determines the visual appearance of the component.
3311
+ */
3312
+ "theme"?: "ios" | "md" | "ionic";
2833
3313
  }
2834
3314
  interface IonSkeletonText {
2835
3315
  /**
2836
3316
  * If `true`, the skeleton text will animate.
2837
3317
  */
2838
3318
  "animated": boolean;
3319
+ /**
3320
+ * The mode determines the platform behaviors of the component.
3321
+ */
3322
+ "mode"?: "ios" | "md";
3323
+ /**
3324
+ * The theme determines the visual appearance of the component.
3325
+ */
3326
+ "theme"?: "ios" | "md" | "ionic";
2839
3327
  }
2840
3328
  interface IonSpinner {
2841
3329
  /**
@@ -2846,6 +3334,10 @@ export namespace Components {
2846
3334
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2847
3335
  */
2848
3336
  "duration"?: number;
3337
+ /**
3338
+ * The mode determines the platform behaviors of the component.
3339
+ */
3340
+ "mode"?: "ios" | "md";
2849
3341
  /**
2850
3342
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2851
3343
  */
@@ -2854,6 +3346,14 @@ export namespace Components {
2854
3346
  * If `true`, the spinner's animation will be paused.
2855
3347
  */
2856
3348
  "paused": boolean;
3349
+ /**
3350
+ * 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.
3351
+ */
3352
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3353
+ /**
3354
+ * The theme determines the visual appearance of the component.
3355
+ */
3356
+ "theme"?: "ios" | "md" | "ionic";
2857
3357
  }
2858
3358
  interface IonSplitPane {
2859
3359
  /**
@@ -2865,6 +3365,14 @@ export namespace Components {
2865
3365
  */
2866
3366
  "disabled": boolean;
2867
3367
  "isVisible": () => Promise<boolean>;
3368
+ /**
3369
+ * The mode determines the platform behaviors of the component.
3370
+ */
3371
+ "mode"?: "ios" | "md";
3372
+ /**
3373
+ * The theme determines the visual appearance of the component.
3374
+ */
3375
+ "theme"?: "ios" | "md" | "ionic";
2868
3376
  /**
2869
3377
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
2870
3378
  */
@@ -2877,6 +3385,10 @@ export namespace Components {
2877
3385
  */
2878
3386
  "component"?: ComponentRef;
2879
3387
  "delegate"?: FrameworkDelegate;
3388
+ /**
3389
+ * The mode determines the platform behaviors of the component.
3390
+ */
3391
+ "mode"?: "ios" | "md";
2880
3392
  /**
2881
3393
  * Set the active component for the tab
2882
3394
  */
@@ -2885,6 +3397,10 @@ export namespace Components {
2885
3397
  * 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.
2886
3398
  */
2887
3399
  "tab": string;
3400
+ /**
3401
+ * The theme determines the visual appearance of the component.
3402
+ */
3403
+ "theme"?: "ios" | "md" | "ionic";
2888
3404
  }
2889
3405
  interface IonTabBar {
2890
3406
  /**
@@ -2892,7 +3408,7 @@ export namespace Components {
2892
3408
  */
2893
3409
  "color"?: Color;
2894
3410
  /**
2895
- * The mode determines which platform styles to use.
3411
+ * The mode determines the platform behaviors of the component.
2896
3412
  */
2897
3413
  "mode"?: "ios" | "md";
2898
3414
  /**
@@ -2900,7 +3416,11 @@ export namespace Components {
2900
3416
  */
2901
3417
  "selectedTab"?: string;
2902
3418
  /**
2903
- * 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).
3419
+ * The theme determines the visual appearance of the component.
3420
+ */
3421
+ "theme"?: "ios" | "md" | "ionic";
3422
+ /**
3423
+ * 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).
2904
3424
  */
2905
3425
  "translucent": boolean;
2906
3426
  }
@@ -2922,7 +3442,7 @@ export namespace Components {
2922
3442
  */
2923
3443
  "layout"?: TabButtonLayout;
2924
3444
  /**
2925
- * The mode determines which platform styles to use.
3445
+ * The mode determines the platform behaviors of the component.
2926
3446
  */
2927
3447
  "mode"?: "ios" | "md";
2928
3448
  /**
@@ -2941,6 +3461,10 @@ export namespace Components {
2941
3461
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2942
3462
  */
2943
3463
  "target": string | undefined;
3464
+ /**
3465
+ * The theme determines the visual appearance of the component.
3466
+ */
3467
+ "theme"?: "ios" | "md" | "ionic";
2944
3468
  }
2945
3469
  interface IonTabs {
2946
3470
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2953,12 +3477,20 @@ export namespace Components {
2953
3477
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2954
3478
  */
2955
3479
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3480
+ /**
3481
+ * The mode determines the platform behaviors of the component.
3482
+ */
3483
+ "mode"?: "ios" | "md";
2956
3484
  /**
2957
3485
  * 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.
2958
3486
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2959
3487
  */
2960
3488
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2961
3489
  "setRouteId": (id: string) => Promise<RouteWrite>;
3490
+ /**
3491
+ * The theme determines the visual appearance of the component.
3492
+ */
3493
+ "theme"?: "ios" | "md" | "ionic";
2962
3494
  "useRouter": boolean;
2963
3495
  }
2964
3496
  interface IonText {
@@ -2967,9 +3499,13 @@ export namespace Components {
2967
3499
  */
2968
3500
  "color"?: Color;
2969
3501
  /**
2970
- * The mode determines which platform styles to use.
3502
+ * The mode determines the platform behaviors of the component.
2971
3503
  */
2972
3504
  "mode"?: "ios" | "md";
3505
+ /**
3506
+ * The theme determines the visual appearance of the component.
3507
+ */
3508
+ "theme"?: "ios" | "md" | "ionic";
2973
3509
  }
2974
3510
  interface IonTextarea {
2975
3511
  /**
@@ -3021,7 +3557,7 @@ export namespace Components {
3021
3557
  */
3022
3558
  "errorText"?: string;
3023
3559
  /**
3024
- * 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.
3560
+ * 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"`.
3025
3561
  */
3026
3562
  "fill"?: 'outline' | 'solid';
3027
3563
  /**
@@ -3053,7 +3589,7 @@ export namespace Components {
3053
3589
  */
3054
3590
  "minlength"?: number;
3055
3591
  /**
3056
- * The mode determines which platform styles to use.
3592
+ * The mode determines the platform behaviors of the component.
3057
3593
  */
3058
3594
  "mode"?: "ios" | "md";
3059
3595
  /**
@@ -3081,13 +3617,21 @@ export namespace Components {
3081
3617
  */
3082
3618
  "setFocus": () => Promise<void>;
3083
3619
  /**
3084
- * The shape of the textarea. If "round" it will have an increased border radius.
3620
+ * 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.
3085
3621
  */
3086
- "shape"?: 'round';
3622
+ "shape"?: 'soft' | 'round' | 'rectangular';
3623
+ /**
3624
+ * 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.
3625
+ */
3626
+ "size"?: 'small' | 'medium' | 'large';
3087
3627
  /**
3088
3628
  * If `true`, the element will have its spelling and grammar checked.
3089
3629
  */
3090
3630
  "spellcheck": boolean;
3631
+ /**
3632
+ * The theme determines the visual appearance of the component.
3633
+ */
3634
+ "theme"?: "ios" | "md" | "ionic";
3091
3635
  /**
3092
3636
  * The value of the textarea.
3093
3637
  */
@@ -3098,16 +3642,32 @@ export namespace Components {
3098
3642
  "wrap"?: 'hard' | 'soft' | 'off';
3099
3643
  }
3100
3644
  interface IonThumbnail {
3645
+ /**
3646
+ * The mode determines the platform behaviors of the component.
3647
+ */
3648
+ "mode"?: "ios" | "md";
3649
+ /**
3650
+ * The theme determines the visual appearance of the component.
3651
+ */
3652
+ "theme"?: "ios" | "md" | "ionic";
3101
3653
  }
3102
3654
  interface IonTitle {
3103
3655
  /**
3104
3656
  * 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).
3105
3657
  */
3106
3658
  "color"?: Color;
3659
+ /**
3660
+ * The mode determines the platform behaviors of the component.
3661
+ */
3662
+ "mode"?: "ios" | "md";
3107
3663
  /**
3108
3664
  * The size of the toolbar title.
3109
3665
  */
3110
3666
  "size"?: 'large' | 'small';
3667
+ /**
3668
+ * The theme determines the visual appearance of the component.
3669
+ */
3670
+ "theme"?: "ios" | "md" | "ionic";
3111
3671
  }
3112
3672
  interface IonToast {
3113
3673
  /**
@@ -3175,7 +3735,7 @@ export namespace Components {
3175
3735
  */
3176
3736
  "message"?: string | IonicSafeString;
3177
3737
  /**
3178
- * The mode determines which platform styles to use.
3738
+ * The mode determines the platform behaviors of the component.
3179
3739
  */
3180
3740
  "mode"?: "ios" | "md";
3181
3741
  /**
@@ -3204,7 +3764,11 @@ export namespace Components {
3204
3764
  */
3205
3765
  "swipeGesture"?: ToastSwipeGestureDirection;
3206
3766
  /**
3207
- * 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).
3767
+ * The theme determines the visual appearance of the component.
3768
+ */
3769
+ "theme"?: "ios" | "md" | "ionic";
3770
+ /**
3771
+ * 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).
3208
3772
  */
3209
3773
  "translucent": boolean;
3210
3774
  /**
@@ -3242,13 +3806,17 @@ export namespace Components {
3242
3806
  */
3243
3807
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3244
3808
  /**
3245
- * The mode determines which platform styles to use.
3809
+ * The mode determines the platform behaviors of the component.
3246
3810
  */
3247
3811
  "mode"?: "ios" | "md";
3248
3812
  /**
3249
3813
  * The name of the control, which is submitted with the form data.
3250
3814
  */
3251
3815
  "name": string;
3816
+ /**
3817
+ * The theme determines the visual appearance of the component.
3818
+ */
3819
+ "theme"?: "ios" | "md" | "ionic";
3252
3820
  /**
3253
3821
  * 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>`.
3254
3822
  */
@@ -3260,9 +3828,13 @@ export namespace Components {
3260
3828
  */
3261
3829
  "color"?: Color;
3262
3830
  /**
3263
- * The mode determines which platform styles to use.
3831
+ * The mode determines the platform behaviors of the component.
3264
3832
  */
3265
3833
  "mode"?: "ios" | "md";
3834
+ /**
3835
+ * The theme determines the visual appearance of the component.
3836
+ */
3837
+ "theme"?: "ios" | "md" | "ionic";
3266
3838
  }
3267
3839
  }
3268
3840
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4744,13 +5316,17 @@ declare namespace LocalJSX {
4744
5316
  */
4745
5317
  "disabled"?: boolean;
4746
5318
  /**
4747
- * The mode determines which platform styles to use.
5319
+ * The mode determines the platform behaviors of the component.
4748
5320
  */
4749
5321
  "mode"?: "ios" | "md";
4750
5322
  /**
4751
5323
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4752
5324
  */
4753
5325
  "readonly"?: boolean;
5326
+ /**
5327
+ * The theme determines the visual appearance of the component.
5328
+ */
5329
+ "theme"?: "ios" | "md" | "ionic";
4754
5330
  /**
4755
5331
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4756
5332
  */
@@ -4778,7 +5354,7 @@ declare namespace LocalJSX {
4778
5354
  */
4779
5355
  "expand"?: 'compact' | 'inset';
4780
5356
  /**
4781
- * The mode determines which platform styles to use.
5357
+ * The mode determines the platform behaviors of the component.
4782
5358
  */
4783
5359
  "mode"?: "ios" | "md";
4784
5360
  /**
@@ -4793,6 +5369,10 @@ declare namespace LocalJSX {
4793
5369
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4794
5370
  */
4795
5371
  "readonly"?: boolean;
5372
+ /**
5373
+ * The theme determines the visual appearance of the component.
5374
+ */
5375
+ "theme"?: "ios" | "md" | "ionic";
4796
5376
  /**
4797
5377
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4798
5378
  */
@@ -4840,7 +5420,7 @@ declare namespace LocalJSX {
4840
5420
  */
4841
5421
  "leaveAnimation"?: AnimationBuilder;
4842
5422
  /**
4843
- * The mode determines which platform styles to use.
5423
+ * The mode determines the platform behaviors of the component.
4844
5424
  */
4845
5425
  "mode"?: "ios" | "md";
4846
5426
  /**
@@ -4880,7 +5460,11 @@ declare namespace LocalJSX {
4880
5460
  */
4881
5461
  "subHeader"?: string;
4882
5462
  /**
4883
- * 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).
5463
+ * The theme determines the visual appearance of the component.
5464
+ */
5465
+ "theme"?: "ios" | "md" | "ionic";
5466
+ /**
5467
+ * 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).
4884
5468
  */
4885
5469
  "translucent"?: boolean;
4886
5470
  /**
@@ -4938,7 +5522,7 @@ declare namespace LocalJSX {
4938
5522
  */
4939
5523
  "message"?: string | IonicSafeString;
4940
5524
  /**
4941
- * The mode determines which platform styles to use.
5525
+ * The mode determines the platform behaviors of the component.
4942
5526
  */
4943
5527
  "mode"?: "ios" | "md";
4944
5528
  /**
@@ -4978,7 +5562,11 @@ declare namespace LocalJSX {
4978
5562
  */
4979
5563
  "subHeader"?: string;
4980
5564
  /**
4981
- * 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).
5565
+ * The theme determines the visual appearance of the component.
5566
+ */
5567
+ "theme"?: "ios" | "md" | "ionic";
5568
+ /**
5569
+ * 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).
4982
5570
  */
4983
5571
  "translucent"?: boolean;
4984
5572
  /**
@@ -4987,8 +5575,32 @@ declare namespace LocalJSX {
4987
5575
  "trigger"?: string | undefined;
4988
5576
  }
4989
5577
  interface IonApp {
5578
+ /**
5579
+ * The mode determines the platform behaviors of the component.
5580
+ */
5581
+ "mode"?: "ios" | "md";
5582
+ /**
5583
+ * The theme determines the visual appearance of the component.
5584
+ */
5585
+ "theme"?: "ios" | "md" | "ionic";
4990
5586
  }
4991
5587
  interface IonAvatar {
5588
+ /**
5589
+ * The mode determines the platform behaviors of the component.
5590
+ */
5591
+ "mode"?: "ios" | "md";
5592
+ /**
5593
+ * 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.
5594
+ */
5595
+ "shape"?: 'soft' | 'round' | 'rectangular';
5596
+ /**
5597
+ * 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.
5598
+ */
5599
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5600
+ /**
5601
+ * The theme determines the visual appearance of the component.
5602
+ */
5603
+ "theme"?: "ios" | "md" | "ionic";
4992
5604
  }
4993
5605
  interface IonBackButton {
4994
5606
  /**
@@ -5008,7 +5620,7 @@ declare namespace LocalJSX {
5008
5620
  */
5009
5621
  "icon"?: string | null;
5010
5622
  /**
5011
- * The mode determines which platform styles to use.
5623
+ * The mode determines the platform behaviors of the component.
5012
5624
  */
5013
5625
  "mode"?: "ios" | "md";
5014
5626
  /**
@@ -5019,12 +5631,20 @@ declare namespace LocalJSX {
5019
5631
  * The text to display in the back button.
5020
5632
  */
5021
5633
  "text"?: string | null;
5634
+ /**
5635
+ * The theme determines the visual appearance of the component.
5636
+ */
5637
+ "theme"?: "ios" | "md" | "ionic";
5022
5638
  /**
5023
5639
  * The type of the button.
5024
5640
  */
5025
5641
  "type"?: 'submit' | 'reset' | 'button';
5026
5642
  }
5027
5643
  interface IonBackdrop {
5644
+ /**
5645
+ * The mode determines the platform behaviors of the component.
5646
+ */
5647
+ "mode"?: "ios" | "md";
5028
5648
  /**
5029
5649
  * Emitted when the backdrop is tapped.
5030
5650
  */
@@ -5037,6 +5657,10 @@ declare namespace LocalJSX {
5037
5657
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5038
5658
  */
5039
5659
  "tappable"?: boolean;
5660
+ /**
5661
+ * The theme determines the visual appearance of the component.
5662
+ */
5663
+ "theme"?: "ios" | "md" | "ionic";
5040
5664
  /**
5041
5665
  * If `true`, the backdrop will be visible.
5042
5666
  */
@@ -5048,9 +5672,21 @@ declare namespace LocalJSX {
5048
5672
  */
5049
5673
  "color"?: Color;
5050
5674
  /**
5051
- * The mode determines which platform styles to use.
5675
+ * The mode determines the platform behaviors of the component.
5052
5676
  */
5053
5677
  "mode"?: "ios" | "md";
5678
+ /**
5679
+ * 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.
5680
+ */
5681
+ "shape"?: 'soft' | 'round | rectangular';
5682
+ /**
5683
+ * 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.
5684
+ */
5685
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5686
+ /**
5687
+ * The theme determines the visual appearance of the component.
5688
+ */
5689
+ "theme"?: "ios" | "md" | "ionic";
5054
5690
  }
5055
5691
  interface IonBreadcrumb {
5056
5692
  /**
@@ -5074,7 +5710,7 @@ declare namespace LocalJSX {
5074
5710
  */
5075
5711
  "href"?: string | undefined;
5076
5712
  /**
5077
- * The mode determines which platform styles to use.
5713
+ * The mode determines the platform behaviors of the component.
5078
5714
  */
5079
5715
  "mode"?: "ios" | "md";
5080
5716
  /**
@@ -5105,6 +5741,10 @@ declare namespace LocalJSX {
5105
5741
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5106
5742
  */
5107
5743
  "target"?: string | undefined;
5744
+ /**
5745
+ * The theme determines the visual appearance of the component.
5746
+ */
5747
+ "theme"?: "ios" | "md" | "ionic";
5108
5748
  }
5109
5749
  interface IonBreadcrumbs {
5110
5750
  /**
@@ -5124,13 +5764,17 @@ declare namespace LocalJSX {
5124
5764
  */
5125
5765
  "maxItems"?: number;
5126
5766
  /**
5127
- * The mode determines which platform styles to use.
5767
+ * The mode determines the platform behaviors of the component.
5128
5768
  */
5129
5769
  "mode"?: "ios" | "md";
5130
5770
  /**
5131
5771
  * Emitted when the collapsed indicator is clicked on.
5132
5772
  */
5133
5773
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5774
+ /**
5775
+ * The theme determines the visual appearance of the component.
5776
+ */
5777
+ "theme"?: "ios" | "md" | "ionic";
5134
5778
  }
5135
5779
  interface IonButton {
5136
5780
  /**
@@ -5166,7 +5810,7 @@ declare namespace LocalJSX {
5166
5810
  */
5167
5811
  "href"?: string | undefined;
5168
5812
  /**
5169
- * The mode determines which platform styles to use.
5813
+ * The mode determines the platform behaviors of the component.
5170
5814
  */
5171
5815
  "mode"?: "ios" | "md";
5172
5816
  /**
@@ -5190,13 +5834,13 @@ declare namespace LocalJSX {
5190
5834
  */
5191
5835
  "routerDirection"?: RouterDirection;
5192
5836
  /**
5193
- * Set to `"round"` for a button with more rounded corners.
5837
+ * 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.
5194
5838
  */
5195
- "shape"?: 'round';
5839
+ "shape"?: 'soft' | 'round' | 'rectangular';
5196
5840
  /**
5197
5841
  * 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.
5198
5842
  */
5199
- "size"?: 'small' | 'default' | 'large';
5843
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5200
5844
  /**
5201
5845
  * If `true`, activates a button with a heavier font weight.
5202
5846
  */
@@ -5205,6 +5849,10 @@ declare namespace LocalJSX {
5205
5849
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5206
5850
  */
5207
5851
  "target"?: string | undefined;
5852
+ /**
5853
+ * The theme determines the visual appearance of the component.
5854
+ */
5855
+ "theme"?: "ios" | "md" | "ionic";
5208
5856
  /**
5209
5857
  * The type of the button.
5210
5858
  */
@@ -5212,9 +5860,17 @@ declare namespace LocalJSX {
5212
5860
  }
5213
5861
  interface IonButtons {
5214
5862
  /**
5215
- * 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)
5863
+ * 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)
5216
5864
  */
5217
5865
  "collapse"?: boolean;
5866
+ /**
5867
+ * The mode determines the platform behaviors of the component.
5868
+ */
5869
+ "mode"?: "ios" | "md";
5870
+ /**
5871
+ * The theme determines the visual appearance of the component.
5872
+ */
5873
+ "theme"?: "ios" | "md" | "ionic";
5218
5874
  }
5219
5875
  interface IonCard {
5220
5876
  /**
@@ -5238,7 +5894,7 @@ declare namespace LocalJSX {
5238
5894
  */
5239
5895
  "href"?: string | undefined;
5240
5896
  /**
5241
- * The mode determines which platform styles to use.
5897
+ * The mode determines the platform behaviors of the component.
5242
5898
  */
5243
5899
  "mode"?: "ios" | "md";
5244
5900
  /**
@@ -5253,10 +5909,18 @@ declare namespace LocalJSX {
5253
5909
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5254
5910
  */
5255
5911
  "routerDirection"?: RouterDirection;
5912
+ /**
5913
+ * 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"`.
5914
+ */
5915
+ "shape"?: 'soft' | 'round' | 'rectangular';
5256
5916
  /**
5257
5917
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5258
5918
  */
5259
5919
  "target"?: string | undefined;
5920
+ /**
5921
+ * The theme determines the visual appearance of the component.
5922
+ */
5923
+ "theme"?: "ios" | "md" | "ionic";
5260
5924
  /**
5261
5925
  * The type of the button. Only used when an `onclick` or `button` property is present.
5262
5926
  */
@@ -5264,9 +5928,13 @@ declare namespace LocalJSX {
5264
5928
  }
5265
5929
  interface IonCardContent {
5266
5930
  /**
5267
- * The mode determines which platform styles to use.
5931
+ * The mode determines the platform behaviors of the component.
5268
5932
  */
5269
5933
  "mode"?: "ios" | "md";
5934
+ /**
5935
+ * The theme determines the visual appearance of the component.
5936
+ */
5937
+ "theme"?: "ios" | "md" | "ionic";
5270
5938
  }
5271
5939
  interface IonCardHeader {
5272
5940
  /**
@@ -5274,11 +5942,15 @@ declare namespace LocalJSX {
5274
5942
  */
5275
5943
  "color"?: Color;
5276
5944
  /**
5277
- * The mode determines which platform styles to use.
5945
+ * The mode determines the platform behaviors of the component.
5278
5946
  */
5279
5947
  "mode"?: "ios" | "md";
5280
5948
  /**
5281
- * 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).
5949
+ * The theme determines the visual appearance of the component.
5950
+ */
5951
+ "theme"?: "ios" | "md" | "ionic";
5952
+ /**
5953
+ * 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).
5282
5954
  */
5283
5955
  "translucent"?: boolean;
5284
5956
  }
@@ -5288,9 +5960,13 @@ declare namespace LocalJSX {
5288
5960
  */
5289
5961
  "color"?: Color;
5290
5962
  /**
5291
- * The mode determines which platform styles to use.
5963
+ * The mode determines the platform behaviors of the component.
5292
5964
  */
5293
5965
  "mode"?: "ios" | "md";
5966
+ /**
5967
+ * The theme determines the visual appearance of the component.
5968
+ */
5969
+ "theme"?: "ios" | "md" | "ionic";
5294
5970
  }
5295
5971
  interface IonCardTitle {
5296
5972
  /**
@@ -5298,9 +5974,13 @@ declare namespace LocalJSX {
5298
5974
  */
5299
5975
  "color"?: Color;
5300
5976
  /**
5301
- * The mode determines which platform styles to use.
5977
+ * The mode determines the platform behaviors of the component.
5302
5978
  */
5303
5979
  "mode"?: "ios" | "md";
5980
+ /**
5981
+ * The theme determines the visual appearance of the component.
5982
+ */
5983
+ "theme"?: "ios" | "md" | "ionic";
5304
5984
  }
5305
5985
  interface IonCheckbox {
5306
5986
  /**
@@ -5332,7 +6012,7 @@ declare namespace LocalJSX {
5332
6012
  */
5333
6013
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5334
6014
  /**
5335
- * The mode determines which platform styles to use.
6015
+ * The mode determines the platform behaviors of the component.
5336
6016
  */
5337
6017
  "mode"?: "ios" | "md";
5338
6018
  /**
@@ -5344,13 +6024,25 @@ declare namespace LocalJSX {
5344
6024
  */
5345
6025
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5346
6026
  /**
5347
- * 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.
6027
+ * 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.
5348
6028
  */
5349
6029
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5350
6030
  /**
5351
6031
  * Emitted when the checkbox has focus.
5352
6032
  */
5353
6033
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
6034
+ /**
6035
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6036
+ */
6037
+ "shape"?: 'soft' | 'rectangular';
6038
+ /**
6039
+ * Set to `"small"` for a checkbox with less height and padding.
6040
+ */
6041
+ "size"?: 'small';
6042
+ /**
6043
+ * The theme determines the visual appearance of the component.
6044
+ */
6045
+ "theme"?: "ios" | "md" | "ionic";
5354
6046
  /**
5355
6047
  * 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>`.
5356
6048
  */
@@ -5366,15 +6058,31 @@ declare namespace LocalJSX {
5366
6058
  */
5367
6059
  "disabled"?: boolean;
5368
6060
  /**
5369
- * The mode determines which platform styles to use.
6061
+ * The mode determines the platform behaviors of the component.
5370
6062
  */
5371
6063
  "mode"?: "ios" | "md";
5372
6064
  /**
5373
6065
  * Display an outline style button.
5374
6066
  */
5375
6067
  "outline"?: boolean;
6068
+ /**
6069
+ * 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.
6070
+ */
6071
+ "shape"?: 'soft' | 'round' | 'rectangular';
6072
+ /**
6073
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6074
+ */
6075
+ "size"?: 'small' | 'large';
6076
+ /**
6077
+ * The theme determines the visual appearance of the component.
6078
+ */
6079
+ "theme"?: "ios" | "md" | "ionic";
5376
6080
  }
5377
6081
  interface IonCol {
6082
+ /**
6083
+ * The mode determines the platform behaviors of the component.
6084
+ */
6085
+ "mode"?: "ios" | "md";
5378
6086
  /**
5379
6087
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5380
6088
  */
@@ -5471,6 +6179,10 @@ declare namespace LocalJSX {
5471
6179
  * 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.
5472
6180
  */
5473
6181
  "sizeXs"?: string;
6182
+ /**
6183
+ * The theme determines the visual appearance of the component.
6184
+ */
6185
+ "theme"?: "ios" | "md" | "ionic";
5474
6186
  }
5475
6187
  interface IonContent {
5476
6188
  /**
@@ -5489,6 +6201,10 @@ declare namespace LocalJSX {
5489
6201
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5490
6202
  */
5491
6203
  "fullscreen"?: boolean;
6204
+ /**
6205
+ * The mode determines the platform behaviors of the component.
6206
+ */
6207
+ "mode"?: "ios" | "md";
5492
6208
  /**
5493
6209
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5494
6210
  */
@@ -5513,6 +6229,10 @@ declare namespace LocalJSX {
5513
6229
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5514
6230
  */
5515
6231
  "scrollY"?: boolean;
6232
+ /**
6233
+ * The theme determines the visual appearance of the component.
6234
+ */
6235
+ "theme"?: "ios" | "md" | "ionic";
5516
6236
  }
5517
6237
  interface IonDatetime {
5518
6238
  /**
@@ -5580,7 +6300,7 @@ declare namespace LocalJSX {
5580
6300
  */
5581
6301
  "minuteValues"?: number[] | number | string;
5582
6302
  /**
5583
- * The mode determines which platform styles to use.
6303
+ * The mode determines the platform behaviors of the component.
5584
6304
  */
5585
6305
  "mode"?: "ios" | "md";
5586
6306
  /**
@@ -5643,6 +6363,10 @@ declare namespace LocalJSX {
5643
6363
  * 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.
5644
6364
  */
5645
6365
  "size"?: 'cover' | 'fixed';
6366
+ /**
6367
+ * The theme determines the visual appearance of the component.
6368
+ */
6369
+ "theme"?: "ios" | "md" | "ionic";
5646
6370
  /**
5647
6371
  * 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.
5648
6372
  */
@@ -5670,9 +6394,13 @@ declare namespace LocalJSX {
5670
6394
  */
5671
6395
  "disabled"?: boolean;
5672
6396
  /**
5673
- * The mode determines which platform styles to use.
6397
+ * The mode determines the platform behaviors of the component.
5674
6398
  */
5675
6399
  "mode"?: "ios" | "md";
6400
+ /**
6401
+ * The theme determines the visual appearance of the component.
6402
+ */
6403
+ "theme"?: "ios" | "md" | "ionic";
5676
6404
  }
5677
6405
  interface IonFab {
5678
6406
  /**
@@ -5687,6 +6415,14 @@ declare namespace LocalJSX {
5687
6415
  * Where to align the fab horizontally in the viewport.
5688
6416
  */
5689
6417
  "horizontal"?: 'start' | 'end' | 'center';
6418
+ /**
6419
+ * The mode determines the platform behaviors of the component.
6420
+ */
6421
+ "mode"?: "ios" | "md";
6422
+ /**
6423
+ * The theme determines the visual appearance of the component.
6424
+ */
6425
+ "theme"?: "ios" | "md" | "ionic";
5690
6426
  /**
5691
6427
  * Where to align the fab vertically in the viewport.
5692
6428
  */
@@ -5718,7 +6454,7 @@ declare namespace LocalJSX {
5718
6454
  */
5719
6455
  "href"?: string | undefined;
5720
6456
  /**
5721
- * The mode determines which platform styles to use.
6457
+ * The mode determines the platform behaviors of the component.
5722
6458
  */
5723
6459
  "mode"?: "ios" | "md";
5724
6460
  /**
@@ -5754,7 +6490,11 @@ declare namespace LocalJSX {
5754
6490
  */
5755
6491
  "target"?: string | undefined;
5756
6492
  /**
5757
- * 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).
6493
+ * The theme determines the visual appearance of the component.
6494
+ */
6495
+ "theme"?: "ios" | "md" | "ionic";
6496
+ /**
6497
+ * 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).
5758
6498
  */
5759
6499
  "translucent"?: boolean;
5760
6500
  /**
@@ -5767,22 +6507,34 @@ declare namespace LocalJSX {
5767
6507
  * If `true`, the fab list will show all fab buttons in the list.
5768
6508
  */
5769
6509
  "activated"?: boolean;
6510
+ /**
6511
+ * The mode determines the platform behaviors of the component.
6512
+ */
6513
+ "mode"?: "ios" | "md";
5770
6514
  /**
5771
6515
  * The side the fab list will show on relative to the main fab button.
5772
6516
  */
5773
6517
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6518
+ /**
6519
+ * The theme determines the visual appearance of the component.
6520
+ */
6521
+ "theme"?: "ios" | "md" | "ionic";
5774
6522
  }
5775
6523
  interface IonFooter {
5776
6524
  /**
5777
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6525
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5778
6526
  */
5779
6527
  "collapse"?: 'fade';
5780
6528
  /**
5781
- * The mode determines which platform styles to use.
6529
+ * The mode determines the platform behaviors of the component.
5782
6530
  */
5783
6531
  "mode"?: "ios" | "md";
5784
6532
  /**
5785
- * 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.
6533
+ * The theme determines the visual appearance of the component.
6534
+ */
6535
+ "theme"?: "ios" | "md" | "ionic";
6536
+ /**
6537
+ * 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.
5786
6538
  */
5787
6539
  "translucent"?: boolean;
5788
6540
  }
@@ -5791,18 +6543,34 @@ declare namespace LocalJSX {
5791
6543
  * If `true`, the grid will have a fixed width based on the screen size.
5792
6544
  */
5793
6545
  "fixed"?: boolean;
6546
+ /**
6547
+ * The mode determines the platform behaviors of the component.
6548
+ */
6549
+ "mode"?: "ios" | "md";
6550
+ /**
6551
+ * The theme determines the visual appearance of the component.
6552
+ */
6553
+ "theme"?: "ios" | "md" | "ionic";
5794
6554
  }
5795
6555
  interface IonHeader {
5796
6556
  /**
5797
- * 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)
6557
+ * 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)
5798
6558
  */
5799
6559
  "collapse"?: 'condense' | 'fade';
5800
6560
  /**
5801
- * The mode determines which platform styles to use.
6561
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6562
+ */
6563
+ "divider"?: boolean;
6564
+ /**
6565
+ * The mode determines the platform behaviors of the component.
5802
6566
  */
5803
6567
  "mode"?: "ios" | "md";
5804
6568
  /**
5805
- * 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.
6569
+ * The theme determines the visual appearance of the component.
6570
+ */
6571
+ "theme"?: "ios" | "md" | "ionic";
6572
+ /**
6573
+ * 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.
5806
6574
  */
5807
6575
  "translucent"?: boolean;
5808
6576
  }
@@ -5811,6 +6579,10 @@ declare namespace LocalJSX {
5811
6579
  * 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.
5812
6580
  */
5813
6581
  "alt"?: string;
6582
+ /**
6583
+ * The mode determines the platform behaviors of the component.
6584
+ */
6585
+ "mode"?: "ios" | "md";
5814
6586
  /**
5815
6587
  * Emitted when the img fails to load
5816
6588
  */
@@ -5827,12 +6599,20 @@ declare namespace LocalJSX {
5827
6599
  * The image URL. This attribute is mandatory for the `<img>` element.
5828
6600
  */
5829
6601
  "src"?: string;
6602
+ /**
6603
+ * The theme determines the visual appearance of the component.
6604
+ */
6605
+ "theme"?: "ios" | "md" | "ionic";
5830
6606
  }
5831
6607
  interface IonInfiniteScroll {
5832
6608
  /**
5833
6609
  * 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.
5834
6610
  */
5835
6611
  "disabled"?: boolean;
6612
+ /**
6613
+ * The mode determines the platform behaviors of the component.
6614
+ */
6615
+ "mode"?: "ios" | "md";
5836
6616
  /**
5837
6617
  * 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.
5838
6618
  */
@@ -5841,6 +6621,10 @@ declare namespace LocalJSX {
5841
6621
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5842
6622
  */
5843
6623
  "position"?: 'top' | 'bottom';
6624
+ /**
6625
+ * The theme determines the visual appearance of the component.
6626
+ */
6627
+ "theme"?: "ios" | "md" | "ionic";
5844
6628
  /**
5845
6629
  * 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.
5846
6630
  */
@@ -5855,6 +6639,14 @@ declare namespace LocalJSX {
5855
6639
  * 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.
5856
6640
  */
5857
6641
  "loadingText"?: string | IonicSafeString;
6642
+ /**
6643
+ * The mode determines the platform behaviors of the component.
6644
+ */
6645
+ "mode"?: "ios" | "md";
6646
+ /**
6647
+ * The theme determines the visual appearance of the component.
6648
+ */
6649
+ "theme"?: "ios" | "md" | "ionic";
5858
6650
  }
5859
6651
  interface IonInput {
5860
6652
  /**
@@ -5914,7 +6706,7 @@ declare namespace LocalJSX {
5914
6706
  */
5915
6707
  "errorText"?: string;
5916
6708
  /**
5917
- * 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.
6709
+ * 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"`.
5918
6710
  */
5919
6711
  "fill"?: 'outline' | 'solid';
5920
6712
  /**
@@ -5930,7 +6722,7 @@ declare namespace LocalJSX {
5930
6722
  */
5931
6723
  "label"?: string;
5932
6724
  /**
5933
- * 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 ("...").
6725
+ * 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.
5934
6726
  */
5935
6727
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
5936
6728
  /**
@@ -5950,7 +6742,7 @@ declare namespace LocalJSX {
5950
6742
  */
5951
6743
  "minlength"?: number;
5952
6744
  /**
5953
- * The mode determines which platform styles to use.
6745
+ * The mode determines the platform behaviors of the component.
5954
6746
  */
5955
6747
  "mode"?: "ios" | "md";
5956
6748
  /**
@@ -5994,9 +6786,13 @@ declare namespace LocalJSX {
5994
6786
  */
5995
6787
  "required"?: boolean;
5996
6788
  /**
5997
- * The shape of the input. If "round" it will have an increased border radius.
6789
+ * 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"`.
5998
6790
  */
5999
- "shape"?: 'round';
6791
+ "shape"?: 'soft' | 'round' | 'rectangular';
6792
+ /**
6793
+ * 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.
6794
+ */
6795
+ "size"?: 'medium' | 'large' | 'xlarge';
6000
6796
  /**
6001
6797
  * If `true`, the element will have its spelling and grammar checked.
6002
6798
  */
@@ -6005,6 +6801,10 @@ declare namespace LocalJSX {
6005
6801
  * 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.
6006
6802
  */
6007
6803
  "step"?: string;
6804
+ /**
6805
+ * The theme determines the visual appearance of the component.
6806
+ */
6807
+ "theme"?: "ios" | "md" | "ionic";
6008
6808
  /**
6009
6809
  * The type of control to display. The default type is text.
6010
6810
  */
@@ -6042,7 +6842,7 @@ declare namespace LocalJSX {
6042
6842
  */
6043
6843
  "color"?: Color;
6044
6844
  /**
6045
- * 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.
6845
+ * 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.
6046
6846
  */
6047
6847
  "detail"?: boolean;
6048
6848
  /**
@@ -6066,7 +6866,7 @@ declare namespace LocalJSX {
6066
6866
  */
6067
6867
  "lines"?: 'full' | 'inset' | 'none';
6068
6868
  /**
6069
- * The mode determines which platform styles to use.
6869
+ * The mode determines the platform behaviors of the component.
6070
6870
  */
6071
6871
  "mode"?: "ios" | "md";
6072
6872
  /**
@@ -6085,6 +6885,10 @@ declare namespace LocalJSX {
6085
6885
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6086
6886
  */
6087
6887
  "target"?: string | undefined;
6888
+ /**
6889
+ * The theme determines the visual appearance of the component.
6890
+ */
6891
+ "theme"?: "ios" | "md" | "ionic";
6088
6892
  /**
6089
6893
  * The type of the button. Only used when an `onclick` or `button` property is present.
6090
6894
  */
@@ -6096,15 +6900,27 @@ declare namespace LocalJSX {
6096
6900
  */
6097
6901
  "color"?: Color;
6098
6902
  /**
6099
- * The mode determines which platform styles to use.
6903
+ * The mode determines the platform behaviors of the component.
6100
6904
  */
6101
6905
  "mode"?: "ios" | "md";
6102
6906
  /**
6103
6907
  * 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
6104
6908
  */
6105
6909
  "sticky"?: boolean;
6910
+ /**
6911
+ * The theme determines the visual appearance of the component.
6912
+ */
6913
+ "theme"?: "ios" | "md" | "ionic";
6106
6914
  }
6107
6915
  interface IonItemGroup {
6916
+ /**
6917
+ * The mode determines the platform behaviors of the component.
6918
+ */
6919
+ "mode"?: "ios" | "md";
6920
+ /**
6921
+ * The theme determines the visual appearance of the component.
6922
+ */
6923
+ "theme"?: "ios" | "md" | "ionic";
6108
6924
  }
6109
6925
  interface IonItemOption {
6110
6926
  /**
@@ -6128,23 +6944,35 @@ declare namespace LocalJSX {
6128
6944
  */
6129
6945
  "href"?: string | undefined;
6130
6946
  /**
6131
- * The mode determines which platform styles to use.
6947
+ * The mode determines the platform behaviors of the component.
6132
6948
  */
6133
6949
  "mode"?: "ios" | "md";
6134
6950
  /**
6135
6951
  * 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).
6136
6952
  */
6137
6953
  "rel"?: string | undefined;
6954
+ /**
6955
+ * 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.
6956
+ */
6957
+ "shape"?: 'soft' | 'round' | 'rectangular';
6138
6958
  /**
6139
6959
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6140
6960
  */
6141
6961
  "target"?: string | undefined;
6962
+ /**
6963
+ * The theme determines the visual appearance of the component.
6964
+ */
6965
+ "theme"?: "ios" | "md" | "ionic";
6142
6966
  /**
6143
6967
  * The type of the button.
6144
6968
  */
6145
6969
  "type"?: 'submit' | 'reset' | 'button';
6146
6970
  }
6147
6971
  interface IonItemOptions {
6972
+ /**
6973
+ * The mode determines the platform behaviors of the component.
6974
+ */
6975
+ "mode"?: "ios" | "md";
6148
6976
  /**
6149
6977
  * Emitted when the item has been fully swiped.
6150
6978
  */
@@ -6153,16 +6981,28 @@ declare namespace LocalJSX {
6153
6981
  * 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.
6154
6982
  */
6155
6983
  "side"?: Side;
6984
+ /**
6985
+ * The theme determines the visual appearance of the component.
6986
+ */
6987
+ "theme"?: "ios" | "md" | "ionic";
6156
6988
  }
6157
6989
  interface IonItemSliding {
6158
6990
  /**
6159
6991
  * If `true`, the user cannot interact with the sliding item.
6160
6992
  */
6161
6993
  "disabled"?: boolean;
6994
+ /**
6995
+ * The mode determines the platform behaviors of the component.
6996
+ */
6997
+ "mode"?: "ios" | "md";
6162
6998
  /**
6163
6999
  * Emitted when the sliding position changes.
6164
7000
  */
6165
7001
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7002
+ /**
7003
+ * The theme determines the visual appearance of the component.
7004
+ */
7005
+ "theme"?: "ios" | "md" | "ionic";
6166
7006
  }
6167
7007
  interface IonLabel {
6168
7008
  /**
@@ -6170,13 +7010,17 @@ declare namespace LocalJSX {
6170
7010
  */
6171
7011
  "color"?: Color;
6172
7012
  /**
6173
- * The mode determines which platform styles to use.
7013
+ * The mode determines the platform behaviors of the component.
6174
7014
  */
6175
7015
  "mode"?: "ios" | "md";
6176
7016
  /**
6177
7017
  * The position determines where and how the label behaves inside an item.
6178
7018
  */
6179
7019
  "position"?: 'fixed' | 'stacked' | 'floating';
7020
+ /**
7021
+ * The theme determines the visual appearance of the component.
7022
+ */
7023
+ "theme"?: "ios" | "md" | "ionic";
6180
7024
  }
6181
7025
  interface IonList {
6182
7026
  /**
@@ -6188,9 +7032,17 @@ declare namespace LocalJSX {
6188
7032
  */
6189
7033
  "lines"?: 'full' | 'inset' | 'none';
6190
7034
  /**
6191
- * The mode determines which platform styles to use.
7035
+ * The mode determines the platform behaviors of the component.
6192
7036
  */
6193
7037
  "mode"?: "ios" | "md";
7038
+ /**
7039
+ * 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.
7040
+ */
7041
+ "shape"?: 'soft' | 'round' | 'rectangular';
7042
+ /**
7043
+ * The theme determines the visual appearance of the component.
7044
+ */
7045
+ "theme"?: "ios" | "md" | "ionic";
6194
7046
  }
6195
7047
  interface IonListHeader {
6196
7048
  /**
@@ -6202,9 +7054,13 @@ declare namespace LocalJSX {
6202
7054
  */
6203
7055
  "lines"?: 'full' | 'inset' | 'none';
6204
7056
  /**
6205
- * The mode determines which platform styles to use.
7057
+ * The mode determines the platform behaviors of the component.
6206
7058
  */
6207
7059
  "mode"?: "ios" | "md";
7060
+ /**
7061
+ * The theme determines the visual appearance of the component.
7062
+ */
7063
+ "theme"?: "ios" | "md" | "ionic";
6208
7064
  }
6209
7065
  interface IonLoading {
6210
7066
  /**
@@ -6248,7 +7104,7 @@ declare namespace LocalJSX {
6248
7104
  */
6249
7105
  "message"?: string | IonicSafeString;
6250
7106
  /**
6251
- * The mode determines which platform styles to use.
7107
+ * The mode determines the platform behaviors of the component.
6252
7108
  */
6253
7109
  "mode"?: "ios" | "md";
6254
7110
  /**
@@ -6292,7 +7148,11 @@ declare namespace LocalJSX {
6292
7148
  */
6293
7149
  "spinner"?: SpinnerTypes | null;
6294
7150
  /**
6295
- * 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).
7151
+ * The theme determines the visual appearance of the component.
7152
+ */
7153
+ "theme"?: "ios" | "md" | "ionic";
7154
+ /**
7155
+ * 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).
6296
7156
  */
6297
7157
  "translucent"?: boolean;
6298
7158
  /**
@@ -6317,6 +7177,10 @@ declare namespace LocalJSX {
6317
7177
  * An id for the menu.
6318
7178
  */
6319
7179
  "menuId"?: string;
7180
+ /**
7181
+ * The mode determines the platform behaviors of the component.
7182
+ */
7183
+ "mode"?: "ios" | "md";
6320
7184
  /**
6321
7185
  * Emitted when the menu is closed.
6322
7186
  */
@@ -6341,6 +7205,10 @@ declare namespace LocalJSX {
6341
7205
  * If `true`, swiping the menu is enabled.
6342
7206
  */
6343
7207
  "swipeGesture"?: boolean;
7208
+ /**
7209
+ * The theme determines the visual appearance of the component.
7210
+ */
7211
+ "theme"?: "ios" | "md" | "ionic";
6344
7212
  /**
6345
7213
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6346
7214
  */
@@ -6364,9 +7232,13 @@ declare namespace LocalJSX {
6364
7232
  */
6365
7233
  "menu"?: string;
6366
7234
  /**
6367
- * The mode determines which platform styles to use.
7235
+ * The mode determines the platform behaviors of the component.
6368
7236
  */
6369
7237
  "mode"?: "ios" | "md";
7238
+ /**
7239
+ * The theme determines the visual appearance of the component.
7240
+ */
7241
+ "theme"?: "ios" | "md" | "ionic";
6370
7242
  /**
6371
7243
  * The type of the button.
6372
7244
  */
@@ -6381,6 +7253,14 @@ declare namespace LocalJSX {
6381
7253
  * 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.
6382
7254
  */
6383
7255
  "menu"?: string;
7256
+ /**
7257
+ * The mode determines the platform behaviors of the component.
7258
+ */
7259
+ "mode"?: "ios" | "md";
7260
+ /**
7261
+ * The theme determines the visual appearance of the component.
7262
+ */
7263
+ "theme"?: "ios" | "md" | "ionic";
6384
7264
  }
6385
7265
  interface IonModal {
6386
7266
  /**
@@ -6444,7 +7324,7 @@ declare namespace LocalJSX {
6444
7324
  */
6445
7325
  "leaveAnimation"?: AnimationBuilder;
6446
7326
  /**
6447
- * The mode determines which platform styles to use.
7327
+ * The mode determines the platform behaviors of the component.
6448
7328
  */
6449
7329
  "mode"?: "ios" | "md";
6450
7330
  /**
@@ -6491,6 +7371,10 @@ declare namespace LocalJSX {
6491
7371
  * 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.
6492
7372
  */
6493
7373
  "showBackdrop"?: boolean;
7374
+ /**
7375
+ * The theme determines the visual appearance of the component.
7376
+ */
7377
+ "theme"?: "ios" | "md" | "ionic";
6494
7378
  /**
6495
7379
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6496
7380
  */
@@ -6502,9 +7386,13 @@ declare namespace LocalJSX {
6502
7386
  */
6503
7387
  "animated"?: boolean;
6504
7388
  /**
6505
- * 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.
7389
+ * 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.
6506
7390
  */
6507
7391
  "animation"?: AnimationBuilder;
7392
+ /**
7393
+ * The mode determines the platform behaviors of the component.
7394
+ */
7395
+ "mode"?: "ios" | "md";
6508
7396
  /**
6509
7397
  * Event fired when the nav has changed components
6510
7398
  */
@@ -6525,6 +7413,10 @@ declare namespace LocalJSX {
6525
7413
  * If the nav component should allow for swipe-to-go-back.
6526
7414
  */
6527
7415
  "swipeGesture"?: boolean;
7416
+ /**
7417
+ * The theme determines the visual appearance of the component.
7418
+ */
7419
+ "theme"?: "ios" | "md" | "ionic";
6528
7420
  }
6529
7421
  interface IonNavLink {
6530
7422
  /**
@@ -6535,6 +7427,10 @@ declare namespace LocalJSX {
6535
7427
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6536
7428
  */
6537
7429
  "componentProps"?: ComponentProps;
7430
+ /**
7431
+ * The mode determines the platform behaviors of the component.
7432
+ */
7433
+ "mode"?: "ios" | "md";
6538
7434
  /**
6539
7435
  * The transition animation when navigating to another page.
6540
7436
  */
@@ -6543,6 +7439,10 @@ declare namespace LocalJSX {
6543
7439
  * The transition direction when navigating to another page.
6544
7440
  */
6545
7441
  "routerDirection"?: RouterDirection;
7442
+ /**
7443
+ * The theme determines the visual appearance of the component.
7444
+ */
7445
+ "theme"?: "ios" | "md" | "ionic";
6546
7446
  }
6547
7447
  interface IonNote {
6548
7448
  /**
@@ -6550,15 +7450,23 @@ declare namespace LocalJSX {
6550
7450
  */
6551
7451
  "color"?: Color;
6552
7452
  /**
6553
- * The mode determines which platform styles to use.
7453
+ * The mode determines the platform behaviors of the component.
6554
7454
  */
6555
7455
  "mode"?: "ios" | "md";
7456
+ /**
7457
+ * The theme determines the visual appearance of the component.
7458
+ */
7459
+ "theme"?: "ios" | "md" | "ionic";
6556
7460
  }
6557
7461
  interface IonPicker {
6558
7462
  /**
6559
- * The mode determines which platform styles to use.
7463
+ * The mode determines the platform behaviors of the component.
6560
7464
  */
6561
7465
  "mode"?: "ios" | "md";
7466
+ /**
7467
+ * The theme determines the visual appearance of the component.
7468
+ */
7469
+ "theme"?: "ios" | "md" | "ionic";
6562
7470
  }
6563
7471
  interface IonPickerColumn {
6564
7472
  /**
@@ -6570,13 +7478,17 @@ declare namespace LocalJSX {
6570
7478
  */
6571
7479
  "disabled"?: boolean;
6572
7480
  /**
6573
- * The mode determines which platform styles to use.
7481
+ * The mode determines the platform behaviors of the component.
6574
7482
  */
6575
7483
  "mode"?: "ios" | "md";
6576
7484
  /**
6577
7485
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6578
7486
  */
6579
7487
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7488
+ /**
7489
+ * The theme determines the visual appearance of the component.
7490
+ */
7491
+ "theme"?: "ios" | "md" | "ionic";
6580
7492
  /**
6581
7493
  * The selected option in the picker.
6582
7494
  */
@@ -6591,6 +7503,14 @@ declare namespace LocalJSX {
6591
7503
  * If `true`, the user cannot interact with the picker column option.
6592
7504
  */
6593
7505
  "disabled"?: boolean;
7506
+ /**
7507
+ * The mode determines the platform behaviors of the component.
7508
+ */
7509
+ "mode"?: "ios" | "md";
7510
+ /**
7511
+ * The theme determines the visual appearance of the component.
7512
+ */
7513
+ "theme"?: "ios" | "md" | "ionic";
6594
7514
  /**
6595
7515
  * The text value of the option.
6596
7516
  */
@@ -6642,7 +7562,7 @@ declare namespace LocalJSX {
6642
7562
  */
6643
7563
  "leaveAnimation"?: AnimationBuilder;
6644
7564
  /**
6645
- * The mode determines which platform styles to use.
7565
+ * The mode determines the platform behaviors of the component.
6646
7566
  */
6647
7567
  "mode"?: "ios" | "md";
6648
7568
  /**
@@ -6681,6 +7601,10 @@ declare namespace LocalJSX {
6681
7601
  * If `true`, a backdrop will be displayed behind the picker.
6682
7602
  */
6683
7603
  "showBackdrop"?: boolean;
7604
+ /**
7605
+ * The theme determines the visual appearance of the component.
7606
+ */
7607
+ "theme"?: "ios" | "md" | "ionic";
6684
7608
  /**
6685
7609
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6686
7610
  */
@@ -6694,7 +7618,7 @@ declare namespace LocalJSX {
6694
7618
  }
6695
7619
  interface IonPopover {
6696
7620
  /**
6697
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7621
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6698
7622
  */
6699
7623
  "alignment"?: PositionAlign;
6700
7624
  /**
@@ -6702,7 +7626,7 @@ declare namespace LocalJSX {
6702
7626
  */
6703
7627
  "animated"?: boolean;
6704
7628
  /**
6705
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7629
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6706
7630
  */
6707
7631
  "arrow"?: boolean;
6708
7632
  /**
@@ -6754,7 +7678,7 @@ declare namespace LocalJSX {
6754
7678
  */
6755
7679
  "leaveAnimation"?: AnimationBuilder;
6756
7680
  /**
6757
- * The mode determines which platform styles to use.
7681
+ * The mode determines the platform behaviors of the component.
6758
7682
  */
6759
7683
  "mode"?: "ios" | "md";
6760
7684
  /**
@@ -6806,7 +7730,11 @@ declare namespace LocalJSX {
6806
7730
  */
6807
7731
  "size"?: PopoverSize;
6808
7732
  /**
6809
- * 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).
7733
+ * The theme determines the visual appearance of the component.
7734
+ */
7735
+ "theme"?: "ios" | "md" | "ionic";
7736
+ /**
7737
+ * 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).
6810
7738
  */
6811
7739
  "translucent"?: boolean;
6812
7740
  /**
@@ -6828,13 +7756,17 @@ declare namespace LocalJSX {
6828
7756
  */
6829
7757
  "color"?: Color;
6830
7758
  /**
6831
- * The mode determines which platform styles to use.
7759
+ * The mode determines the platform behaviors of the component.
6832
7760
  */
6833
7761
  "mode"?: "ios" | "md";
6834
7762
  /**
6835
7763
  * If true, reverse the progress bar direction.
6836
7764
  */
6837
7765
  "reversed"?: boolean;
7766
+ /**
7767
+ * The theme determines the visual appearance of the component.
7768
+ */
7769
+ "theme"?: "ios" | "md" | "ionic";
6838
7770
  /**
6839
7771
  * 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).
6840
7772
  */
@@ -6866,7 +7798,7 @@ declare namespace LocalJSX {
6866
7798
  */
6867
7799
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6868
7800
  /**
6869
- * The mode determines which platform styles to use.
7801
+ * The mode determines the platform behaviors of the component.
6870
7802
  */
6871
7803
  "mode"?: "ios" | "md";
6872
7804
  /**
@@ -6881,6 +7813,10 @@ declare namespace LocalJSX {
6881
7813
  * Emitted when the radio button has focus.
6882
7814
  */
6883
7815
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7816
+ /**
7817
+ * The theme determines the visual appearance of the component.
7818
+ */
7819
+ "theme"?: "ios" | "md" | "ionic";
6884
7820
  /**
6885
7821
  * the value of the radio.
6886
7822
  */
@@ -6895,6 +7831,10 @@ declare namespace LocalJSX {
6895
7831
  * 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.
6896
7832
  */
6897
7833
  "compareWith"?: string | RadioGroupCompareFn | null;
7834
+ /**
7835
+ * The mode determines the platform behaviors of the component.
7836
+ */
7837
+ "mode"?: "ios" | "md";
6898
7838
  /**
6899
7839
  * The name of the control, which is submitted with the form data.
6900
7840
  */
@@ -6903,6 +7843,10 @@ declare namespace LocalJSX {
6903
7843
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6904
7844
  */
6905
7845
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7846
+ /**
7847
+ * The theme determines the visual appearance of the component.
7848
+ */
7849
+ "theme"?: "ios" | "md" | "ionic";
6906
7850
  /**
6907
7851
  * the value of the radio group.
6908
7852
  */
@@ -6946,7 +7890,7 @@ declare namespace LocalJSX {
6946
7890
  */
6947
7891
  "min"?: number;
6948
7892
  /**
6949
- * The mode determines which platform styles to use.
7893
+ * The mode determines the platform behaviors of the component.
6950
7894
  */
6951
7895
  "mode"?: "ios" | "md";
6952
7896
  /**
@@ -6993,6 +7937,10 @@ declare namespace LocalJSX {
6993
7937
  * Specifies the value granularity.
6994
7938
  */
6995
7939
  "step"?: number;
7940
+ /**
7941
+ * The theme determines the visual appearance of the component.
7942
+ */
7943
+ "theme"?: "ios" | "md" | "ionic";
6996
7944
  /**
6997
7945
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
6998
7946
  */
@@ -7012,7 +7960,7 @@ declare namespace LocalJSX {
7012
7960
  */
7013
7961
  "disabled"?: boolean;
7014
7962
  /**
7015
- * The mode determines which platform styles to use.
7963
+ * The mode determines the platform behaviors of the component.
7016
7964
  */
7017
7965
  "mode"?: "ios" | "md";
7018
7966
  /**
@@ -7043,8 +7991,16 @@ declare namespace LocalJSX {
7043
7991
  * 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.
7044
7992
  */
7045
7993
  "snapbackDuration"?: string;
7994
+ /**
7995
+ * The theme determines the visual appearance of the component.
7996
+ */
7997
+ "theme"?: "ios" | "md" | "ionic";
7046
7998
  }
7047
7999
  interface IonRefresherContent {
8000
+ /**
8001
+ * The mode determines the platform behaviors of the component.
8002
+ */
8003
+ "mode"?: "ios" | "md";
7048
8004
  /**
7049
8005
  * 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.
7050
8006
  */
@@ -7061,20 +8017,48 @@ declare namespace LocalJSX {
7061
8017
  * 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.
7062
8018
  */
7063
8019
  "refreshingText"?: string | IonicSafeString;
8020
+ /**
8021
+ * The theme determines the visual appearance of the component.
8022
+ */
8023
+ "theme"?: "ios" | "md" | "ionic";
7064
8024
  }
7065
8025
  interface IonReorder {
8026
+ /**
8027
+ * The mode determines the platform behaviors of the component.
8028
+ */
8029
+ "mode"?: "ios" | "md";
8030
+ /**
8031
+ * The theme determines the visual appearance of the component.
8032
+ */
8033
+ "theme"?: "ios" | "md" | "ionic";
7066
8034
  }
7067
8035
  interface IonReorderGroup {
7068
8036
  /**
7069
8037
  * If `true`, the reorder will be hidden.
7070
8038
  */
7071
8039
  "disabled"?: boolean;
8040
+ /**
8041
+ * The mode determines the platform behaviors of the component.
8042
+ */
8043
+ "mode"?: "ios" | "md";
7072
8044
  /**
7073
8045
  * 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.
7074
8046
  */
7075
8047
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8048
+ /**
8049
+ * The theme determines the visual appearance of the component.
8050
+ */
8051
+ "theme"?: "ios" | "md" | "ionic";
7076
8052
  }
7077
8053
  interface IonRippleEffect {
8054
+ /**
8055
+ * The mode determines the platform behaviors of the component.
8056
+ */
8057
+ "mode"?: "ios" | "md";
8058
+ /**
8059
+ * The theme determines the visual appearance of the component.
8060
+ */
8061
+ "theme"?: "ios" | "md" | "ionic";
7078
8062
  /**
7079
8063
  * 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.
7080
8064
  */
@@ -7097,10 +8081,18 @@ declare namespace LocalJSX {
7097
8081
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7098
8082
  */
7099
8083
  "componentProps"?: { [key: string]: any };
8084
+ /**
8085
+ * The mode determines the platform behaviors of the component.
8086
+ */
8087
+ "mode"?: "ios" | "md";
7100
8088
  /**
7101
8089
  * Used internally by `ion-router` to know when this route did change.
7102
8090
  */
7103
8091
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8092
+ /**
8093
+ * The theme determines the visual appearance of the component.
8094
+ */
8095
+ "theme"?: "ios" | "md" | "ionic";
7104
8096
  /**
7105
8097
  * 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.
7106
8098
  */
@@ -7121,6 +8113,10 @@ declare namespace LocalJSX {
7121
8113
  "to": string | undefined | null;
7122
8114
  }
7123
8115
  interface IonRouter {
8116
+ /**
8117
+ * The mode determines the platform behaviors of the component.
8118
+ */
8119
+ "mode"?: "ios" | "md";
7124
8120
  /**
7125
8121
  * Emitted when the route had changed
7126
8122
  */
@@ -7133,6 +8129,10 @@ declare namespace LocalJSX {
7133
8129
  * 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.
7134
8130
  */
7135
8131
  "root"?: string;
8132
+ /**
8133
+ * The theme determines the visual appearance of the component.
8134
+ */
8135
+ "theme"?: "ios" | "md" | "ionic";
7136
8136
  /**
7137
8137
  * 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.
7138
8138
  */
@@ -7147,6 +8147,10 @@ declare namespace LocalJSX {
7147
8147
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7148
8148
  */
7149
8149
  "href"?: string | undefined;
8150
+ /**
8151
+ * The mode determines the platform behaviors of the component.
8152
+ */
8153
+ "mode"?: "ios" | "md";
7150
8154
  /**
7151
8155
  * 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).
7152
8156
  */
@@ -7163,6 +8167,10 @@ declare namespace LocalJSX {
7163
8167
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7164
8168
  */
7165
8169
  "target"?: string | undefined;
8170
+ /**
8171
+ * The theme determines the visual appearance of the component.
8172
+ */
8173
+ "theme"?: "ios" | "md" | "ionic";
7166
8174
  }
7167
8175
  interface IonRouterOutlet {
7168
8176
  /**
@@ -7174,11 +8182,23 @@ declare namespace LocalJSX {
7174
8182
  */
7175
8183
  "animation"?: AnimationBuilder;
7176
8184
  /**
7177
- * The mode determines which platform styles to use.
8185
+ * The mode determines the platform behaviors of the component.
7178
8186
  */
7179
8187
  "mode"?: "ios" | "md";
8188
+ /**
8189
+ * The theme determines the visual appearance of the component.
8190
+ */
8191
+ "theme"?: "ios" | "md" | "ionic";
7180
8192
  }
7181
8193
  interface IonRow {
8194
+ /**
8195
+ * The mode determines the platform behaviors of the component.
8196
+ */
8197
+ "mode"?: "ios" | "md";
8198
+ /**
8199
+ * The theme determines the visual appearance of the component.
8200
+ */
8201
+ "theme"?: "ios" | "md" | "ionic";
7182
8202
  }
7183
8203
  interface IonSearchbar {
7184
8204
  /**
@@ -7198,15 +8218,15 @@ declare namespace LocalJSX {
7198
8218
  */
7199
8219
  "autocorrect"?: 'on' | 'off';
7200
8220
  /**
7201
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8221
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7202
8222
  */
7203
8223
  "cancelButtonIcon"?: string;
7204
8224
  /**
7205
- * Set the the cancel button text. Only applies to `ios` mode.
8225
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7206
8226
  */
7207
8227
  "cancelButtonText"?: string;
7208
8228
  /**
7209
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8229
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7210
8230
  */
7211
8231
  "clearIcon"?: string;
7212
8232
  /**
@@ -7238,7 +8258,7 @@ declare namespace LocalJSX {
7238
8258
  */
7239
8259
  "minlength"?: number;
7240
8260
  /**
7241
- * The mode determines which platform styles to use.
8261
+ * The mode determines the platform behaviors of the component.
7242
8262
  */
7243
8263
  "mode"?: "ios" | "md";
7244
8264
  /**
@@ -7274,7 +8294,7 @@ declare namespace LocalJSX {
7274
8294
  */
7275
8295
  "placeholder"?: string;
7276
8296
  /**
7277
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8297
+ * 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.
7278
8298
  */
7279
8299
  "searchIcon"?: string;
7280
8300
  /**
@@ -7289,6 +8309,10 @@ declare namespace LocalJSX {
7289
8309
  * If `true`, enable spellcheck on the input.
7290
8310
  */
7291
8311
  "spellcheck"?: boolean;
8312
+ /**
8313
+ * The theme determines the visual appearance of the component.
8314
+ */
8315
+ "theme"?: "ios" | "md" | "ionic";
7292
8316
  /**
7293
8317
  * Set the type of the input.
7294
8318
  */
@@ -7308,7 +8332,7 @@ declare namespace LocalJSX {
7308
8332
  */
7309
8333
  "disabled"?: boolean;
7310
8334
  /**
7311
- * The mode determines which platform styles to use.
8335
+ * The mode determines the platform behaviors of the component.
7312
8336
  */
7313
8337
  "mode"?: "ios" | "md";
7314
8338
  /**
@@ -7327,6 +8351,10 @@ declare namespace LocalJSX {
7327
8351
  * If `true`, users will be able to swipe between segment buttons to activate them.
7328
8352
  */
7329
8353
  "swipeGesture"?: boolean;
8354
+ /**
8355
+ * The theme determines the visual appearance of the component.
8356
+ */
8357
+ "theme"?: "ios" | "md" | "ionic";
7330
8358
  /**
7331
8359
  * the value of the segment.
7332
8360
  */
@@ -7342,9 +8370,13 @@ declare namespace LocalJSX {
7342
8370
  */
7343
8371
  "layout"?: SegmentButtonLayout;
7344
8372
  /**
7345
- * The mode determines which platform styles to use.
8373
+ * The mode determines the platform behaviors of the component.
7346
8374
  */
7347
8375
  "mode"?: "ios" | "md";
8376
+ /**
8377
+ * The theme determines the visual appearance of the component.
8378
+ */
8379
+ "theme"?: "ios" | "md" | "ionic";
7348
8380
  /**
7349
8381
  * The type of the button.
7350
8382
  */
@@ -7372,11 +8404,11 @@ declare namespace LocalJSX {
7372
8404
  */
7373
8405
  "disabled"?: boolean;
7374
8406
  /**
7375
- * 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.
8407
+ * 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.
7376
8408
  */
7377
8409
  "expandedIcon"?: string;
7378
8410
  /**
7379
- * 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.
8411
+ * 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.
7380
8412
  */
7381
8413
  "fill"?: 'outline' | 'solid';
7382
8414
  /**
@@ -7400,7 +8432,7 @@ declare namespace LocalJSX {
7400
8432
  */
7401
8433
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7402
8434
  /**
7403
- * The mode determines which platform styles to use.
8435
+ * The mode determines the platform behaviors of the component.
7404
8436
  */
7405
8437
  "mode"?: "ios" | "md";
7406
8438
  /**
@@ -7448,7 +8480,11 @@ declare namespace LocalJSX {
7448
8480
  */
7449
8481
  "shape"?: 'round';
7450
8482
  /**
7451
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8483
+ * The theme determines the visual appearance of the component.
8484
+ */
8485
+ "theme"?: "ios" | "md" | "ionic";
8486
+ /**
8487
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7452
8488
  */
7453
8489
  "toggleIcon"?: string;
7454
8490
  /**
@@ -7461,6 +8497,14 @@ declare namespace LocalJSX {
7461
8497
  * 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.
7462
8498
  */
7463
8499
  "disabled"?: boolean;
8500
+ /**
8501
+ * The mode determines the platform behaviors of the component.
8502
+ */
8503
+ "mode"?: "ios" | "md";
8504
+ /**
8505
+ * The theme determines the visual appearance of the component.
8506
+ */
8507
+ "theme"?: "ios" | "md" | "ionic";
7464
8508
  /**
7465
8509
  * The text value of the option.
7466
8510
  */
@@ -7475,6 +8519,10 @@ declare namespace LocalJSX {
7475
8519
  * The text content of the popover body
7476
8520
  */
7477
8521
  "message"?: string;
8522
+ /**
8523
+ * The mode determines the platform behaviors of the component.
8524
+ */
8525
+ "mode"?: "ios" | "md";
7478
8526
  /**
7479
8527
  * If true, the select accepts multiple values
7480
8528
  */
@@ -7487,12 +8535,24 @@ declare namespace LocalJSX {
7487
8535
  * The subheader text of the popover
7488
8536
  */
7489
8537
  "subHeader"?: string;
8538
+ /**
8539
+ * The theme determines the visual appearance of the component.
8540
+ */
8541
+ "theme"?: "ios" | "md" | "ionic";
7490
8542
  }
7491
8543
  interface IonSkeletonText {
7492
8544
  /**
7493
8545
  * If `true`, the skeleton text will animate.
7494
8546
  */
7495
8547
  "animated"?: boolean;
8548
+ /**
8549
+ * The mode determines the platform behaviors of the component.
8550
+ */
8551
+ "mode"?: "ios" | "md";
8552
+ /**
8553
+ * The theme determines the visual appearance of the component.
8554
+ */
8555
+ "theme"?: "ios" | "md" | "ionic";
7496
8556
  }
7497
8557
  interface IonSpinner {
7498
8558
  /**
@@ -7503,6 +8563,10 @@ declare namespace LocalJSX {
7503
8563
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7504
8564
  */
7505
8565
  "duration"?: number;
8566
+ /**
8567
+ * The mode determines the platform behaviors of the component.
8568
+ */
8569
+ "mode"?: "ios" | "md";
7506
8570
  /**
7507
8571
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7508
8572
  */
@@ -7511,6 +8575,14 @@ declare namespace LocalJSX {
7511
8575
  * If `true`, the spinner's animation will be paused.
7512
8576
  */
7513
8577
  "paused"?: boolean;
8578
+ /**
8579
+ * 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.
8580
+ */
8581
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8582
+ /**
8583
+ * The theme determines the visual appearance of the component.
8584
+ */
8585
+ "theme"?: "ios" | "md" | "ionic";
7514
8586
  }
7515
8587
  interface IonSplitPane {
7516
8588
  /**
@@ -7521,10 +8593,18 @@ declare namespace LocalJSX {
7521
8593
  * If `true`, the split pane will be hidden.
7522
8594
  */
7523
8595
  "disabled"?: boolean;
8596
+ /**
8597
+ * The mode determines the platform behaviors of the component.
8598
+ */
8599
+ "mode"?: "ios" | "md";
7524
8600
  /**
7525
8601
  * Expression to be called when the split-pane visibility has changed
7526
8602
  */
7527
8603
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8604
+ /**
8605
+ * The theme determines the visual appearance of the component.
8606
+ */
8607
+ "theme"?: "ios" | "md" | "ionic";
7528
8608
  /**
7529
8609
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
7530
8610
  */
@@ -7535,10 +8615,18 @@ declare namespace LocalJSX {
7535
8615
  * The component to display inside of the tab.
7536
8616
  */
7537
8617
  "component"?: ComponentRef;
8618
+ /**
8619
+ * The mode determines the platform behaviors of the component.
8620
+ */
8621
+ "mode"?: "ios" | "md";
7538
8622
  /**
7539
8623
  * 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.
7540
8624
  */
7541
8625
  "tab": string;
8626
+ /**
8627
+ * The theme determines the visual appearance of the component.
8628
+ */
8629
+ "theme"?: "ios" | "md" | "ionic";
7542
8630
  }
7543
8631
  interface IonTabBar {
7544
8632
  /**
@@ -7546,7 +8634,7 @@ declare namespace LocalJSX {
7546
8634
  */
7547
8635
  "color"?: Color;
7548
8636
  /**
7549
- * The mode determines which platform styles to use.
8637
+ * The mode determines the platform behaviors of the component.
7550
8638
  */
7551
8639
  "mode"?: "ios" | "md";
7552
8640
  /**
@@ -7554,7 +8642,11 @@ declare namespace LocalJSX {
7554
8642
  */
7555
8643
  "selectedTab"?: string;
7556
8644
  /**
7557
- * 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).
8645
+ * The theme determines the visual appearance of the component.
8646
+ */
8647
+ "theme"?: "ios" | "md" | "ionic";
8648
+ /**
8649
+ * 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).
7558
8650
  */
7559
8651
  "translucent"?: boolean;
7560
8652
  }
@@ -7576,7 +8668,7 @@ declare namespace LocalJSX {
7576
8668
  */
7577
8669
  "layout"?: TabButtonLayout;
7578
8670
  /**
7579
- * The mode determines which platform styles to use.
8671
+ * The mode determines the platform behaviors of the component.
7580
8672
  */
7581
8673
  "mode"?: "ios" | "md";
7582
8674
  /**
@@ -7595,8 +8687,16 @@ declare namespace LocalJSX {
7595
8687
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7596
8688
  */
7597
8689
  "target"?: string | undefined;
8690
+ /**
8691
+ * The theme determines the visual appearance of the component.
8692
+ */
8693
+ "theme"?: "ios" | "md" | "ionic";
7598
8694
  }
7599
8695
  interface IonTabs {
8696
+ /**
8697
+ * The mode determines the platform behaviors of the component.
8698
+ */
8699
+ "mode"?: "ios" | "md";
7600
8700
  /**
7601
8701
  * Emitted when the navigation has finished transitioning to a new component.
7602
8702
  */
@@ -7605,6 +8705,10 @@ declare namespace LocalJSX {
7605
8705
  * Emitted when the navigation is about to transition to a new component.
7606
8706
  */
7607
8707
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8708
+ /**
8709
+ * The theme determines the visual appearance of the component.
8710
+ */
8711
+ "theme"?: "ios" | "md" | "ionic";
7608
8712
  }
7609
8713
  interface IonText {
7610
8714
  /**
@@ -7612,9 +8716,13 @@ declare namespace LocalJSX {
7612
8716
  */
7613
8717
  "color"?: Color;
7614
8718
  /**
7615
- * The mode determines which platform styles to use.
8719
+ * The mode determines the platform behaviors of the component.
7616
8720
  */
7617
8721
  "mode"?: "ios" | "md";
8722
+ /**
8723
+ * The theme determines the visual appearance of the component.
8724
+ */
8725
+ "theme"?: "ios" | "md" | "ionic";
7618
8726
  }
7619
8727
  interface IonTextarea {
7620
8728
  /**
@@ -7666,7 +8774,7 @@ declare namespace LocalJSX {
7666
8774
  */
7667
8775
  "errorText"?: string;
7668
8776
  /**
7669
- * 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.
8777
+ * 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"`.
7670
8778
  */
7671
8779
  "fill"?: 'outline' | 'solid';
7672
8780
  /**
@@ -7694,7 +8802,7 @@ declare namespace LocalJSX {
7694
8802
  */
7695
8803
  "minlength"?: number;
7696
8804
  /**
7697
- * The mode determines which platform styles to use.
8805
+ * The mode determines the platform behaviors of the component.
7698
8806
  */
7699
8807
  "mode"?: "ios" | "md";
7700
8808
  /**
@@ -7734,13 +8842,21 @@ declare namespace LocalJSX {
7734
8842
  */
7735
8843
  "rows"?: number;
7736
8844
  /**
7737
- * The shape of the textarea. If "round" it will have an increased border radius.
8845
+ * 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.
7738
8846
  */
7739
- "shape"?: 'round';
8847
+ "shape"?: 'soft' | 'round' | 'rectangular';
8848
+ /**
8849
+ * 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.
8850
+ */
8851
+ "size"?: 'small' | 'medium' | 'large';
7740
8852
  /**
7741
8853
  * If `true`, the element will have its spelling and grammar checked.
7742
8854
  */
7743
8855
  "spellcheck"?: boolean;
8856
+ /**
8857
+ * The theme determines the visual appearance of the component.
8858
+ */
8859
+ "theme"?: "ios" | "md" | "ionic";
7744
8860
  /**
7745
8861
  * The value of the textarea.
7746
8862
  */
@@ -7751,16 +8867,32 @@ declare namespace LocalJSX {
7751
8867
  "wrap"?: 'hard' | 'soft' | 'off';
7752
8868
  }
7753
8869
  interface IonThumbnail {
8870
+ /**
8871
+ * The mode determines the platform behaviors of the component.
8872
+ */
8873
+ "mode"?: "ios" | "md";
8874
+ /**
8875
+ * The theme determines the visual appearance of the component.
8876
+ */
8877
+ "theme"?: "ios" | "md" | "ionic";
7754
8878
  }
7755
8879
  interface IonTitle {
7756
8880
  /**
7757
8881
  * 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).
7758
8882
  */
7759
8883
  "color"?: Color;
8884
+ /**
8885
+ * The mode determines the platform behaviors of the component.
8886
+ */
8887
+ "mode"?: "ios" | "md";
7760
8888
  /**
7761
8889
  * The size of the toolbar title.
7762
8890
  */
7763
8891
  "size"?: 'large' | 'small';
8892
+ /**
8893
+ * The theme determines the visual appearance of the component.
8894
+ */
8895
+ "theme"?: "ios" | "md" | "ionic";
7764
8896
  }
7765
8897
  interface IonToast {
7766
8898
  /**
@@ -7820,7 +8952,7 @@ declare namespace LocalJSX {
7820
8952
  */
7821
8953
  "message"?: string | IonicSafeString;
7822
8954
  /**
7823
- * The mode determines which platform styles to use.
8955
+ * The mode determines the platform behaviors of the component.
7824
8956
  */
7825
8957
  "mode"?: "ios" | "md";
7826
8958
  /**
@@ -7868,7 +9000,11 @@ declare namespace LocalJSX {
7868
9000
  */
7869
9001
  "swipeGesture"?: ToastSwipeGestureDirection;
7870
9002
  /**
7871
- * 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).
9003
+ * The theme determines the visual appearance of the component.
9004
+ */
9005
+ "theme"?: "ios" | "md" | "ionic";
9006
+ /**
9007
+ * 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).
7872
9008
  */
7873
9009
  "translucent"?: boolean;
7874
9010
  /**
@@ -7906,7 +9042,7 @@ declare namespace LocalJSX {
7906
9042
  */
7907
9043
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7908
9044
  /**
7909
- * The mode determines which platform styles to use.
9045
+ * The mode determines the platform behaviors of the component.
7910
9046
  */
7911
9047
  "mode"?: "ios" | "md";
7912
9048
  /**
@@ -7925,6 +9061,10 @@ declare namespace LocalJSX {
7925
9061
  * Emitted when the toggle has focus.
7926
9062
  */
7927
9063
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
9064
+ /**
9065
+ * The theme determines the visual appearance of the component.
9066
+ */
9067
+ "theme"?: "ios" | "md" | "ionic";
7928
9068
  /**
7929
9069
  * 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>`.
7930
9070
  */
@@ -7936,9 +9076,13 @@ declare namespace LocalJSX {
7936
9076
  */
7937
9077
  "color"?: Color;
7938
9078
  /**
7939
- * The mode determines which platform styles to use.
9079
+ * The mode determines the platform behaviors of the component.
7940
9080
  */
7941
9081
  "mode"?: "ios" | "md";
9082
+ /**
9083
+ * The theme determines the visual appearance of the component.
9084
+ */
9085
+ "theme"?: "ios" | "md" | "ionic";
7942
9086
  }
7943
9087
  interface IntrinsicElements {
7944
9088
  "ion-accordion": IonAccordion;