@ionic/core 8.0.0-dev.11712850753.10c4a960 → 8.0.0-dev.11712932867.11504809

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 (929) hide show
  1. package/components/action-sheet.js +11 -6
  2. package/components/alert.js +12 -8
  3. package/components/backdrop.js +8 -4
  4. package/components/button.js +40 -11
  5. package/components/buttons.js +9 -5
  6. package/components/checkbox.js +13 -9
  7. package/components/data.js +4 -4
  8. package/components/index4.js +8 -7
  9. package/components/index6.js +27 -30
  10. package/components/index7.js +124 -27
  11. package/components/index8.js +150 -111
  12. package/components/input-shims.js +1 -1
  13. package/components/input.utils.js +1 -1
  14. package/components/ion-accordion-group.js +9 -6
  15. package/components/ion-accordion.js +10 -6
  16. package/components/ion-app.js +5 -6
  17. package/components/ion-avatar.js +9 -2
  18. package/components/ion-back-button.js +12 -8
  19. package/components/ion-badge.js +9 -5
  20. package/components/ion-breadcrumb.js +11 -7
  21. package/components/ion-breadcrumbs.js +9 -5
  22. package/components/ion-card-content.js +9 -5
  23. package/components/ion-card-header.js +9 -5
  24. package/components/ion-card-subtitle.js +9 -5
  25. package/components/ion-card-title.js +9 -5
  26. package/components/ion-card.js +16 -7
  27. package/components/ion-chip.js +16 -6
  28. package/components/ion-col.js +5 -5
  29. package/components/ion-content.js +10 -10
  30. package/components/ion-datetime-button.js +9 -6
  31. package/components/ion-datetime.js +20 -17
  32. package/components/ion-fab-button.js +10 -6
  33. package/components/ion-fab-list.js +5 -5
  34. package/components/ion-fab.js +5 -5
  35. package/components/ion-footer.js +14 -10
  36. package/components/ion-grid.js +5 -5
  37. package/components/ion-header.js +14 -10
  38. package/components/ion-img.js +5 -2
  39. package/components/ion-infinite-scroll-content.js +12 -8
  40. package/components/ion-infinite-scroll.js +5 -5
  41. package/components/ion-input-password-toggle.js +2 -3
  42. package/components/ion-input.js +17 -13
  43. package/components/ion-item-divider.js +9 -5
  44. package/components/ion-item-group.js +9 -5
  45. package/components/ion-item-option.js +9 -5
  46. package/components/ion-item-options.js +9 -5
  47. package/components/ion-item-sliding.js +5 -5
  48. package/components/ion-loading.js +10 -6
  49. package/components/ion-menu-button.js +11 -7
  50. package/components/ion-menu-toggle.js +5 -5
  51. package/components/ion-menu.js +9 -5
  52. package/components/ion-modal.js +15 -14
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +6 -5
  55. package/components/ion-note.js +9 -5
  56. package/components/ion-picker-legacy.js +5 -6
  57. package/components/ion-progress-bar.js +8 -4
  58. package/components/ion-range.js +11 -8
  59. package/components/ion-refresher-content.js +9 -8
  60. package/components/ion-refresher.js +10 -6
  61. package/components/ion-reorder-group.js +5 -5
  62. package/components/ion-reorder.js +11 -5
  63. package/components/ion-router-link.js +5 -5
  64. package/components/ion-router-outlet.js +1 -1
  65. package/components/ion-row.js +5 -2
  66. package/components/ion-searchbar.js +16 -12
  67. package/components/ion-segment-button.js +10 -6
  68. package/components/ion-segment.js +9 -5
  69. package/components/ion-select-option.js +5 -2
  70. package/components/ion-select.js +23 -19
  71. package/components/ion-skeleton-text.js +5 -5
  72. package/components/ion-split-pane.js +10 -6
  73. package/components/ion-tab-bar.js +9 -5
  74. package/components/ion-tab-button.js +9 -5
  75. package/components/ion-tab.js +2 -2
  76. package/components/ion-tabs.js +1 -1
  77. package/components/ion-text.js +5 -5
  78. package/components/ion-textarea.js +12 -8
  79. package/components/ion-thumbnail.js +5 -2
  80. package/components/ion-title.js +9 -5
  81. package/components/ion-toast.js +13 -9
  82. package/components/ion-toggle.js +17 -13
  83. package/components/ion-toolbar.js +9 -5
  84. package/components/ionic-global.js +191 -14
  85. package/components/ios.transition.js +1 -0
  86. package/components/item.js +11 -7
  87. package/components/label.js +9 -5
  88. package/components/list-header.js +9 -5
  89. package/components/list.js +10 -6
  90. package/components/overlays.js +3 -5
  91. package/components/picker-column-option.js +9 -5
  92. package/components/picker-column.js +6 -6
  93. package/components/picker-column2.js +4 -4
  94. package/components/picker.js +6 -2
  95. package/components/popover.js +11 -10
  96. package/components/radio-group.js +5 -3
  97. package/components/radio.js +10 -6
  98. package/components/ripple-effect.js +4 -4
  99. package/components/select-popover.js +9 -2
  100. package/components/spinner.js +6 -6
  101. package/components/status-tap.js +1 -1
  102. package/css/core.css.map +1 -1
  103. package/css/ionic.bundle.css.map +1 -1
  104. package/css/link.ionic.css +1 -0
  105. package/css/link.ionic.css.map +1 -0
  106. package/css/typography.ionic.css +1 -0
  107. package/css/typography.ionic.css.map +1 -0
  108. package/dist/cjs/{app-globals-63aebf89.js → app-globals-afaa9c54.js} +1 -1
  109. package/dist/cjs/{data-21dc0f81.js → data-99329b16.js} +6 -6
  110. package/dist/cjs/{hardware-back-button-ad9299b4.js → hardware-back-button-6084a439.js} +1 -1
  111. package/dist/cjs/{index-5b6a7459.js → index-18f2ba3b.js} +2 -2
  112. package/dist/cjs/{index-ff66cc7c.js → index-7c699f7b.js} +2 -2
  113. package/dist/cjs/{index-5cf05f94.js → index-f378621f.js} +13 -12
  114. package/dist/cjs/index.cjs.js +7 -8
  115. package/dist/cjs/{input-shims-20d639e6.js → input-shims-077ab038.js} +3 -2
  116. package/dist/cjs/{input.utils-611cde0b.js → input.utils-1aac63e6.js} +2 -2
  117. package/dist/cjs/ion-accordion_2.cjs.entry.js +18 -11
  118. package/dist/cjs/ion-action-sheet.cjs.entry.js +13 -9
  119. package/dist/cjs/ion-alert.cjs.entry.js +14 -11
  120. package/dist/cjs/ion-app_8.cjs.entry.js +79 -60
  121. package/dist/cjs/ion-avatar_3.cjs.entry.js +21 -7
  122. package/dist/cjs/ion-back-button.cjs.entry.js +11 -7
  123. package/dist/cjs/ion-backdrop.cjs.entry.js +8 -4
  124. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -10
  125. package/dist/cjs/ion-button_2.cjs.entry.js +43 -14
  126. package/dist/cjs/ion-card_5.cjs.entry.js +47 -23
  127. package/dist/cjs/ion-checkbox.cjs.entry.js +13 -9
  128. package/dist/cjs/ion-chip.cjs.entry.js +14 -5
  129. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  130. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -11
  131. package/dist/cjs/ion-datetime_3.cjs.entry.js +106 -103
  132. package/dist/cjs/ion-fab_3.cjs.entry.js +17 -13
  133. package/dist/cjs/ion-img.cjs.entry.js +5 -2
  134. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -13
  135. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +6 -7
  136. package/dist/cjs/ion-input.cjs.entry.js +17 -14
  137. package/dist/cjs/ion-item-option_3.cjs.entry.js +21 -14
  138. package/dist/cjs/ion-item_8.cjs.entry.js +63 -35
  139. package/dist/cjs/ion-loading.cjs.entry.js +12 -9
  140. package/dist/cjs/ion-menu_3.cjs.entry.js +25 -18
  141. package/dist/cjs/ion-modal.cjs.entry.js +22 -20
  142. package/dist/cjs/ion-nav_2.cjs.entry.js +8 -6
  143. package/dist/cjs/ion-picker-column-option.cjs.entry.js +9 -5
  144. package/dist/cjs/ion-picker-column.cjs.entry.js +6 -6
  145. package/dist/cjs/ion-picker.cjs.entry.js +6 -2
  146. package/dist/cjs/ion-popover.cjs.entry.js +16 -14
  147. package/dist/cjs/ion-progress-bar.cjs.entry.js +8 -4
  148. package/dist/cjs/ion-radio_2.cjs.entry.js +14 -8
  149. package/dist/cjs/ion-range.cjs.entry.js +16 -13
  150. package/dist/cjs/ion-refresher_2.cjs.entry.js +17 -13
  151. package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -9
  152. package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
  153. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  154. package/dist/cjs/ion-searchbar.cjs.entry.js +15 -11
  155. package/dist/cjs/ion-segment_2.cjs.entry.js +18 -10
  156. package/dist/cjs/ion-select_3.cjs.entry.js +36 -23
  157. package/dist/cjs/ion-spinner.cjs.entry.js +6 -6
  158. package/dist/cjs/ion-split-pane.cjs.entry.js +10 -6
  159. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +17 -9
  160. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  161. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  162. package/dist/cjs/ion-textarea.cjs.entry.js +13 -10
  163. package/dist/cjs/ion-toast.cjs.entry.js +36 -32
  164. package/dist/cjs/ion-toggle.cjs.entry.js +16 -12
  165. package/dist/cjs/ionic-global-2734c454.js +411 -0
  166. package/dist/cjs/ionic.cjs.js +3 -3
  167. package/dist/cjs/{ios.transition-06673f18.js → ios.transition-07077689.js} +2 -1
  168. package/dist/cjs/loader.cjs.js +3 -3
  169. package/dist/cjs/{md.transition-4d7bb4b1.js → md.transition-a829ffba.js} +1 -1
  170. package/dist/cjs/{overlays-66fcac49.js → overlays-a247b257.js} +4 -7
  171. package/dist/cjs/{status-tap-0be20572.js → status-tap-870d407b.js} +2 -2
  172. package/dist/collection/components/accordion/accordion.ios.css +12 -0
  173. package/dist/collection/components/accordion/accordion.js +11 -8
  174. package/dist/collection/components/accordion/accordion.md.css +6 -0
  175. package/dist/collection/components/accordion-group/accordion-group.ios.css +12 -0
  176. package/dist/collection/components/accordion-group/accordion-group.js +11 -8
  177. package/dist/collection/components/accordion-group/accordion-group.md.css +18 -0
  178. package/dist/collection/components/action-sheet/action-sheet.ios.css +12 -0
  179. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  180. package/dist/collection/components/action-sheet/action-sheet.md.css +12 -0
  181. package/dist/collection/components/alert/alert.ios.css +18 -0
  182. package/dist/collection/components/alert/alert.js +15 -12
  183. package/dist/collection/components/alert/alert.md.css +18 -0
  184. package/dist/collection/components/app/app.js +8 -4
  185. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  186. package/dist/collection/components/avatar/avatar.js +13 -4
  187. package/dist/collection/components/avatar/avatar.md.css +12 -0
  188. package/dist/collection/components/back-button/back-button.ios.css +12 -0
  189. package/dist/collection/components/back-button/back-button.js +13 -10
  190. package/dist/collection/components/back-button/back-button.md.css +12 -0
  191. package/dist/collection/components/backdrop/backdrop.ios.css +12 -0
  192. package/dist/collection/components/backdrop/backdrop.js +12 -6
  193. package/dist/collection/components/backdrop/backdrop.md.css +12 -0
  194. package/dist/collection/components/badge/badge.ios.css +12 -0
  195. package/dist/collection/components/badge/badge.js +11 -8
  196. package/dist/collection/components/badge/badge.md.css +12 -0
  197. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +12 -0
  198. package/dist/collection/components/breadcrumb/breadcrumb.js +12 -9
  199. package/dist/collection/components/breadcrumb/breadcrumb.md.css +12 -0
  200. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  201. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  202. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  203. package/dist/collection/components/button/button.ionic.css +582 -0
  204. package/dist/collection/components/button/button.ios.css +29 -5
  205. package/dist/collection/components/button/button.js +45 -16
  206. package/dist/collection/components/button/button.md.css +23 -4
  207. package/dist/collection/components/button/test/clear/button.e2e.js +6 -3
  208. package/dist/collection/components/button/test/shape/button.e2e.js +88 -0
  209. package/dist/collection/components/button/test/size/button.e2e.js +18 -1
  210. package/dist/collection/components/button/test/states/button.e2e.js +51 -0
  211. package/dist/collection/components/buttons/buttons.ios.css +18 -0
  212. package/dist/collection/components/buttons/buttons.js +14 -8
  213. package/dist/collection/components/buttons/buttons.md.css +18 -0
  214. package/dist/collection/components/card/card.ionic.css +49 -0
  215. package/dist/collection/components/card/card.ios.css +12 -0
  216. package/dist/collection/components/card/card.js +34 -10
  217. package/dist/collection/components/card/card.md.css +12 -0
  218. package/dist/collection/components/card/test/shape/card.e2e.js +34 -0
  219. package/dist/collection/components/card-content/card-content.ios.css +12 -0
  220. package/dist/collection/components/card-content/card-content.js +11 -8
  221. package/dist/collection/components/card-content/card-content.md.css +12 -0
  222. package/dist/collection/components/card-header/card-header.ios.css +12 -0
  223. package/dist/collection/components/card-header/card-header.js +12 -9
  224. package/dist/collection/components/card-header/card-header.md.css +12 -0
  225. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  226. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  227. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  228. package/dist/collection/components/card-title/card-title.ios.css +12 -0
  229. package/dist/collection/components/card-title/card-title.js +11 -8
  230. package/dist/collection/components/card-title/card-title.md.css +12 -0
  231. package/dist/collection/components/checkbox/checkbox.ios.css +18 -0
  232. package/dist/collection/components/checkbox/checkbox.js +15 -12
  233. package/dist/collection/components/checkbox/checkbox.md.css +18 -0
  234. package/dist/collection/components/chip/chip.ionic.css +94 -0
  235. package/dist/collection/components/chip/chip.ios.css +6 -0
  236. package/dist/collection/components/chip/chip.js +33 -8
  237. package/dist/collection/components/chip/chip.md.css +6 -0
  238. package/dist/collection/components/chip/test/shape/chip.e2e.js +34 -0
  239. package/dist/collection/components/chip/test/states/chip.e2e.js +16 -0
  240. package/dist/collection/components/col/col.css +12 -0
  241. package/dist/collection/components/col/col.js +9 -5
  242. package/dist/collection/components/content/content.css +6 -0
  243. package/dist/collection/components/content/content.js +13 -10
  244. package/dist/collection/components/datetime/datetime.ios.css +12 -0
  245. package/dist/collection/components/datetime/datetime.js +21 -18
  246. package/dist/collection/components/datetime/datetime.md.css +12 -0
  247. package/dist/collection/components/datetime/utils/data.js +3 -3
  248. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  249. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  250. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  251. package/dist/collection/components/fab/fab.css +24 -0
  252. package/dist/collection/components/fab/fab.js +9 -5
  253. package/dist/collection/components/fab-button/fab-button.ios.css +12 -0
  254. package/dist/collection/components/fab-button/fab-button.js +12 -9
  255. package/dist/collection/components/fab-button/fab-button.md.css +12 -0
  256. package/dist/collection/components/fab-list/fab-list.css +12 -0
  257. package/dist/collection/components/fab-list/fab-list.js +9 -5
  258. package/dist/collection/components/footer/footer.ios.css +12 -0
  259. package/dist/collection/components/footer/footer.js +17 -14
  260. package/dist/collection/components/footer/footer.md.css +12 -0
  261. package/dist/collection/components/grid/grid.css +12 -0
  262. package/dist/collection/components/grid/grid.js +9 -5
  263. package/dist/collection/components/header/header.ios.css +12 -0
  264. package/dist/collection/components/header/header.js +17 -14
  265. package/dist/collection/components/header/header.md.css +12 -0
  266. package/dist/collection/components/img/img.js +8 -2
  267. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  268. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  269. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  270. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  271. package/dist/collection/components/input/input.ios.css +18 -0
  272. package/dist/collection/components/input/input.js +23 -19
  273. package/dist/collection/components/input/input.md.css +44 -2
  274. package/dist/collection/components/item/item.ios.css +12 -0
  275. package/dist/collection/components/item/item.js +13 -10
  276. package/dist/collection/components/item/item.md.css +24 -0
  277. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  278. package/dist/collection/components/item-divider/item-divider.js +11 -8
  279. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  280. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  281. package/dist/collection/components/item-group/item-group.js +13 -7
  282. package/dist/collection/components/item-group/item-group.md.css +12 -0
  283. package/dist/collection/components/item-option/item-option.ios.css +12 -0
  284. package/dist/collection/components/item-option/item-option.js +11 -8
  285. package/dist/collection/components/item-option/item-option.md.css +12 -0
  286. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  287. package/dist/collection/components/item-options/item-options.js +13 -7
  288. package/dist/collection/components/item-options/item-options.md.css +18 -0
  289. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  290. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  291. package/dist/collection/components/label/label.ios.css +18 -0
  292. package/dist/collection/components/label/label.js +11 -8
  293. package/dist/collection/components/label/label.md.css +18 -0
  294. package/dist/collection/components/list/list.ios.css +18 -0
  295. package/dist/collection/components/list/list.js +12 -9
  296. package/dist/collection/components/list/list.md.css +18 -0
  297. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  298. package/dist/collection/components/list-header/list-header.js +11 -8
  299. package/dist/collection/components/list-header/list-header.md.css +18 -0
  300. package/dist/collection/components/loading/loading.ios.css +12 -0
  301. package/dist/collection/components/loading/loading.js +13 -10
  302. package/dist/collection/components/loading/loading.md.css +12 -0
  303. package/dist/collection/components/menu/menu.ios.css +12 -0
  304. package/dist/collection/components/menu/menu.js +12 -7
  305. package/dist/collection/components/menu/menu.md.css +12 -0
  306. package/dist/collection/components/menu-button/menu-button.ios.css +12 -0
  307. package/dist/collection/components/menu-button/menu-button.js +12 -9
  308. package/dist/collection/components/menu-button/menu-button.md.css +12 -0
  309. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  310. package/dist/collection/components/modal/gestures/sheet.js +2 -3
  311. package/dist/collection/components/modal/modal.ios.css +12 -0
  312. package/dist/collection/components/modal/modal.js +14 -30
  313. package/dist/collection/components/modal/modal.md.css +12 -0
  314. package/dist/collection/components/modal/test/basic/modal.spec.js +0 -19
  315. package/dist/collection/components/nav/nav.css +6 -0
  316. package/dist/collection/components/nav/nav.js +11 -5
  317. package/dist/collection/components/nav-link/nav-link.js +5 -1
  318. package/dist/collection/components/note/note.ios.css +12 -0
  319. package/dist/collection/components/note/note.js +11 -8
  320. package/dist/collection/components/note/note.md.css +12 -0
  321. package/dist/collection/components/picker/picker.ios.css +12 -0
  322. package/dist/collection/components/picker/picker.js +8 -5
  323. package/dist/collection/components/picker/picker.md.css +12 -0
  324. package/dist/collection/components/picker-column/picker-column.css +6 -0
  325. package/dist/collection/components/picker-column/picker-column.js +8 -7
  326. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  327. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  328. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  329. package/dist/collection/components/picker-legacy/picker.ios.css +12 -0
  330. package/dist/collection/components/picker-legacy/picker.js +7 -6
  331. package/dist/collection/components/picker-legacy/picker.md.css +12 -0
  332. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  333. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  334. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  335. package/dist/collection/components/popover/popover.ios.css +12 -0
  336. package/dist/collection/components/popover/popover.js +17 -33
  337. package/dist/collection/components/popover/popover.md.css +12 -0
  338. package/dist/collection/components/popover/test/basic/popover.spec.js +0 -19
  339. package/dist/collection/components/progress-bar/progress-bar.ios.css +6 -0
  340. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  341. package/dist/collection/components/progress-bar/progress-bar.md.css +6 -0
  342. package/dist/collection/components/radio/radio.ios.css +18 -0
  343. package/dist/collection/components/radio/radio.js +12 -9
  344. package/dist/collection/components/radio/radio.md.css +18 -0
  345. package/dist/collection/components/radio-group/radio-group.js +9 -3
  346. package/dist/collection/components/range/range.ios.css +12 -0
  347. package/dist/collection/components/range/range.js +12 -9
  348. package/dist/collection/components/range/range.md.css +12 -0
  349. package/dist/collection/components/refresher/refresher.ios.css +12 -0
  350. package/dist/collection/components/refresher/refresher.js +11 -8
  351. package/dist/collection/components/refresher/refresher.md.css +12 -0
  352. package/dist/collection/components/refresher-content/refresher-content.js +12 -7
  353. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  354. package/dist/collection/components/reorder/reorder.js +13 -6
  355. package/dist/collection/components/reorder/reorder.md.css +6 -0
  356. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  357. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  358. package/dist/collection/components/ripple-effect/ripple-effect.css +6 -0
  359. package/dist/collection/components/ripple-effect/ripple-effect.js +8 -4
  360. package/dist/collection/components/route/route.js +4 -0
  361. package/dist/collection/components/router/router.js +4 -0
  362. package/dist/collection/components/router-link/router-link.css +6 -0
  363. package/dist/collection/components/router-link/router-link.js +9 -5
  364. package/dist/collection/components/router-outlet/router-outlet.css +6 -0
  365. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  366. package/dist/collection/components/row/row.css +12 -0
  367. package/dist/collection/components/row/row.js +9 -2
  368. package/dist/collection/components/searchbar/searchbar.ios.css +12 -0
  369. package/dist/collection/components/searchbar/searchbar.js +21 -18
  370. package/dist/collection/components/searchbar/searchbar.md.css +12 -0
  371. package/dist/collection/components/segment/segment.ios.css +18 -0
  372. package/dist/collection/components/segment/segment.js +11 -8
  373. package/dist/collection/components/segment/segment.md.css +18 -0
  374. package/dist/collection/components/segment-button/segment-button.ios.css +12 -0
  375. package/dist/collection/components/segment-button/segment-button.js +12 -9
  376. package/dist/collection/components/segment-button/segment-button.md.css +12 -0
  377. package/dist/collection/components/select/select.ios.css +18 -0
  378. package/dist/collection/components/select/select.js +27 -24
  379. package/dist/collection/components/select/select.md.css +30 -0
  380. package/dist/collection/components/select-option/select-option.js +9 -2
  381. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  382. package/dist/collection/components/select-popover/select-popover.js +12 -4
  383. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  384. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  385. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  386. package/dist/collection/components/spinner/spinner.css +6 -0
  387. package/dist/collection/components/spinner/spinner.js +10 -6
  388. package/dist/collection/components/split-pane/split-pane.ios.css +18 -0
  389. package/dist/collection/components/split-pane/split-pane.js +14 -8
  390. package/dist/collection/components/split-pane/split-pane.md.css +18 -0
  391. package/dist/collection/components/tab/tab.js +6 -2
  392. package/dist/collection/components/tab-bar/tab-bar.ios.css +18 -0
  393. package/dist/collection/components/tab-bar/tab-bar.js +12 -9
  394. package/dist/collection/components/tab-bar/tab-bar.md.css +18 -0
  395. package/dist/collection/components/tab-button/tab-button.ios.css +12 -0
  396. package/dist/collection/components/tab-button/tab-button.js +11 -8
  397. package/dist/collection/components/tab-button/tab-button.md.css +12 -0
  398. package/dist/collection/components/tabs/tabs.css +6 -0
  399. package/dist/collection/components/tabs/tabs.js +4 -1
  400. package/dist/collection/components/text/text.css +6 -0
  401. package/dist/collection/components/text/text.js +7 -6
  402. package/dist/collection/components/textarea/textarea.ios.css +24 -0
  403. package/dist/collection/components/textarea/textarea.js +15 -12
  404. package/dist/collection/components/textarea/textarea.md.css +36 -0
  405. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  406. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  407. package/dist/collection/components/title/title.ios.css +6 -0
  408. package/dist/collection/components/title/title.js +13 -7
  409. package/dist/collection/components/title/title.md.css +6 -0
  410. package/dist/collection/components/toast/animations/utils.js +1 -1
  411. package/dist/collection/components/toast/toast.ios.css +12 -0
  412. package/dist/collection/components/toast/toast.js +15 -11
  413. package/dist/collection/components/toast/toast.md.css +12 -0
  414. package/dist/collection/components/toggle/toggle.ios.css +18 -0
  415. package/dist/collection/components/toggle/toggle.js +18 -15
  416. package/dist/collection/components/toggle/toggle.md.css +18 -0
  417. package/dist/collection/components/toolbar/toolbar.ios.css +12 -0
  418. package/dist/collection/components/toolbar/toolbar.js +13 -10
  419. package/dist/collection/components/toolbar/toolbar.md.css +12 -0
  420. package/dist/collection/css/test/link/basic/link.e2e.js +35 -0
  421. package/dist/collection/css/test/{a11y → typography/a11y}/typography.e2e.js +1 -1
  422. package/dist/collection/css/test/typography/basic/typography.e2e.js +85 -0
  423. package/dist/collection/global/ionic-global.js +161 -13
  424. package/dist/collection/global/test/ionic-global.spec.js +109 -0
  425. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  426. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  427. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  428. package/dist/collection/utils/overlays.js +1 -2
  429. package/dist/collection/utils/test/playwright/generator.js +48 -23
  430. package/dist/collection/utils/test/playwright/page/utils/goto.js +13 -4
  431. package/dist/collection/utils/test/playwright/page/utils/set-content.js +13 -1
  432. package/dist/collection/utils/transition/ios.transition.js +1 -0
  433. package/dist/docs.json +3894 -314
  434. package/dist/esm/{app-globals-b8e5e7fa.js → app-globals-6b65a082.js} +1 -1
  435. package/dist/esm/{button-active-a411da52.js → button-active-b3a77616.js} +1 -1
  436. package/dist/esm/{data-ae11fd43.js → data-e73f49e1.js} +4 -4
  437. package/dist/esm/{hardware-back-button-329c81fd.js → hardware-back-button-7e31a4ae.js} +2 -2
  438. package/dist/esm/{index-5cc724f3.js → index-55408470.js} +1 -1
  439. package/dist/esm/{index-10916999.js → index-8137ebe0.js} +9 -8
  440. package/dist/esm/{index-6e4709ff.js → index-a19e0b91.js} +1 -1
  441. package/dist/esm/{index-f1f5de26.js → index-bf81c266.js} +3 -3
  442. package/dist/esm/index.js +8 -9
  443. package/dist/esm/{input-shims-4530285e.js → input-shims-8453cb67.js} +3 -2
  444. package/dist/esm/{input.utils-09c71bc7.js → input.utils-8bf2cdac.js} +1 -1
  445. package/dist/esm/ion-accordion_2.entry.js +18 -11
  446. package/dist/esm/ion-action-sheet.entry.js +15 -11
  447. package/dist/esm/ion-alert.entry.js +16 -13
  448. package/dist/esm/ion-app_8.entry.js +69 -50
  449. package/dist/esm/ion-avatar_3.entry.js +22 -8
  450. package/dist/esm/ion-back-button.entry.js +12 -8
  451. package/dist/esm/ion-backdrop.entry.js +9 -5
  452. package/dist/esm/ion-breadcrumb_2.entry.js +19 -11
  453. package/dist/esm/ion-button_2.entry.js +41 -12
  454. package/dist/esm/ion-card_5.entry.js +48 -24
  455. package/dist/esm/ion-checkbox.entry.js +14 -10
  456. package/dist/esm/ion-chip.entry.js +15 -6
  457. package/dist/esm/ion-col_3.entry.js +14 -11
  458. package/dist/esm/ion-datetime-button.entry.js +11 -8
  459. package/dist/esm/ion-datetime_3.entry.js +30 -27
  460. package/dist/esm/ion-fab_3.entry.js +18 -14
  461. package/dist/esm/ion-img.entry.js +6 -3
  462. package/dist/esm/ion-infinite-scroll_2.entry.js +17 -14
  463. package/dist/esm/ion-input-password-toggle.entry.js +2 -3
  464. package/dist/esm/ion-input.entry.js +18 -15
  465. package/dist/esm/ion-item-option_3.entry.js +22 -15
  466. package/dist/esm/ion-item_8.entry.js +64 -36
  467. package/dist/esm/ion-loading.entry.js +13 -10
  468. package/dist/esm/ion-menu_3.entry.js +26 -19
  469. package/dist/esm/ion-modal.entry.js +18 -16
  470. package/dist/esm/ion-nav_2.entry.js +9 -7
  471. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  472. package/dist/esm/ion-picker-column.entry.js +7 -7
  473. package/dist/esm/ion-picker.entry.js +7 -3
  474. package/dist/esm/ion-popover.entry.js +14 -12
  475. package/dist/esm/ion-progress-bar.entry.js +9 -5
  476. package/dist/esm/ion-radio_2.entry.js +15 -9
  477. package/dist/esm/ion-range.entry.js +12 -9
  478. package/dist/esm/ion-refresher_2.entry.js +18 -14
  479. package/dist/esm/ion-reorder_2.entry.js +15 -10
  480. package/dist/esm/ion-ripple-effect.entry.js +5 -5
  481. package/dist/esm/ion-route_4.entry.js +6 -6
  482. package/dist/esm/ion-searchbar.entry.js +16 -12
  483. package/dist/esm/ion-segment_2.entry.js +19 -11
  484. package/dist/esm/ion-select_3.entry.js +37 -24
  485. package/dist/esm/ion-spinner.entry.js +7 -7
  486. package/dist/esm/ion-split-pane.entry.js +11 -7
  487. package/dist/esm/ion-tab-bar_2.entry.js +18 -10
  488. package/dist/esm/ion-tab_2.entry.js +4 -4
  489. package/dist/esm/ion-text.entry.js +6 -6
  490. package/dist/esm/ion-textarea.entry.js +14 -11
  491. package/dist/esm/ion-toast.entry.js +16 -12
  492. package/dist/esm/ion-toggle.entry.js +17 -13
  493. package/dist/esm/ionic-global-ccd91ba4.js +401 -0
  494. package/dist/esm/ionic.js +5 -5
  495. package/dist/esm/{ios.transition-8e181a7e.js → ios.transition-b169aa46.js} +3 -2
  496. package/dist/esm/loader.js +5 -5
  497. package/dist/esm/{md.transition-f1c3c737.js → md.transition-ecde7aa6.js} +2 -2
  498. package/dist/esm/{overlays-634df4be.js → overlays-7125a1f5.js} +4 -6
  499. package/dist/esm/{status-tap-39da9160.js → status-tap-6bfbede6.js} +3 -3
  500. package/dist/esm-es5/app-globals-6b65a082.js +4 -0
  501. package/dist/esm-es5/{button-active-a411da52.js → button-active-b3a77616.js} +1 -1
  502. package/dist/esm-es5/data-e73f49e1.js +4 -0
  503. package/dist/esm-es5/{hardware-back-button-329c81fd.js → hardware-back-button-7e31a4ae.js} +1 -1
  504. package/dist/esm-es5/index-55408470.js +4 -0
  505. package/dist/esm-es5/index-8137ebe0.js +4 -0
  506. package/dist/esm-es5/{index-6e4709ff.js → index-a19e0b91.js} +1 -1
  507. package/dist/esm-es5/{index-f1f5de26.js → index-bf81c266.js} +1 -1
  508. package/dist/esm-es5/index.js +1 -1
  509. package/dist/esm-es5/input-shims-8453cb67.js +4 -0
  510. package/dist/esm-es5/input.utils-8bf2cdac.js +4 -0
  511. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  512. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  513. package/dist/esm-es5/ion-alert.entry.js +1 -1
  514. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  515. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  516. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  517. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  518. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  519. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  520. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  521. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  522. package/dist/esm-es5/ion-chip.entry.js +1 -1
  523. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  524. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  525. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  526. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  527. package/dist/esm-es5/ion-img.entry.js +1 -1
  528. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  529. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  530. package/dist/esm-es5/ion-input.entry.js +1 -1
  531. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  532. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  533. package/dist/esm-es5/ion-loading.entry.js +1 -1
  534. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  535. package/dist/esm-es5/ion-modal.entry.js +1 -1
  536. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  537. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  538. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  539. package/dist/esm-es5/ion-picker.entry.js +1 -1
  540. package/dist/esm-es5/ion-popover.entry.js +1 -1
  541. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  542. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  543. package/dist/esm-es5/ion-range.entry.js +1 -1
  544. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  545. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  546. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  547. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  548. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  549. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  550. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  551. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  552. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  553. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  554. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  555. package/dist/esm-es5/ion-text.entry.js +1 -1
  556. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  557. package/dist/esm-es5/ion-toast.entry.js +1 -1
  558. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  559. package/dist/esm-es5/ionic-global-ccd91ba4.js +4 -0
  560. package/dist/esm-es5/ionic.js +1 -1
  561. package/dist/esm-es5/ios.transition-b169aa46.js +4 -0
  562. package/dist/esm-es5/loader.js +1 -1
  563. package/dist/esm-es5/md.transition-ecde7aa6.js +4 -0
  564. package/dist/esm-es5/overlays-7125a1f5.js +4 -0
  565. package/dist/esm-es5/status-tap-6bfbede6.js +4 -0
  566. package/dist/html.html-data.json +1922 -105
  567. package/dist/ionic/index.esm.js +1 -1
  568. package/dist/ionic/ionic.esm.js +1 -1
  569. package/dist/ionic/ionic.js +1 -1
  570. package/dist/ionic/p-00e85b08.js +4 -0
  571. package/dist/ionic/p-0350ac97.entry.js +4 -0
  572. package/dist/ionic/p-0530664b.system.entry.js +4 -0
  573. package/dist/ionic/p-053d229a.system.js +4 -0
  574. package/dist/ionic/{p-4dd82d9d.system.js → p-077ebefa.system.js} +1 -1
  575. package/dist/ionic/p-0817ca20.system.js +4 -0
  576. package/dist/ionic/{p-1361399b.system.entry.js → p-09e29b0f.system.entry.js} +1 -1
  577. package/dist/ionic/{p-be9f56eb.entry.js → p-0cbb7a38.entry.js} +1 -1
  578. package/dist/ionic/p-11e56c60.system.entry.js +4 -0
  579. package/dist/ionic/{p-61aa1ba6.entry.js → p-13aa82f5.entry.js} +1 -1
  580. package/dist/ionic/p-142da19d.entry.js +4 -0
  581. package/dist/ionic/{p-3040730e.js → p-17f4c151.js} +1 -1
  582. package/dist/ionic/{p-d60342e3.js → p-1b039c87.js} +1 -1
  583. package/dist/ionic/p-1d59a829.system.entry.js +4 -0
  584. package/dist/ionic/p-1d5b3dfa.system.entry.js +4 -0
  585. package/dist/ionic/{p-0c06e09b.system.js → p-1d608fb3.system.js} +1 -1
  586. package/dist/ionic/p-1edfc09d.entry.js +4 -0
  587. package/dist/ionic/p-1f2ce987.system.entry.js +4 -0
  588. package/dist/ionic/p-1f3dedb0.system.entry.js +4 -0
  589. package/dist/ionic/p-1fcfcb94.js +4 -0
  590. package/dist/ionic/p-202b8a88.system.entry.js +4 -0
  591. package/dist/ionic/p-206a256a.system.entry.js +4 -0
  592. package/dist/ionic/{p-71215c1d.system.js → p-2172efcb.system.js} +1 -1
  593. package/dist/ionic/p-22c4f5bb.entry.js +4 -0
  594. package/dist/ionic/p-267e9b94.system.entry.js +4 -0
  595. package/dist/ionic/p-291414bd.entry.js +4 -0
  596. package/dist/ionic/{p-e350ab4a.entry.js → p-2bf0809c.entry.js} +1 -1
  597. package/dist/ionic/p-3079ca5b.entry.js +4 -0
  598. package/dist/ionic/p-31eb5a46.entry.js +4 -0
  599. package/dist/ionic/p-34abea66.entry.js +4 -0
  600. package/dist/ionic/p-3c1dd334.entry.js +4 -0
  601. package/dist/ionic/p-3d94bebf.system.entry.js +4 -0
  602. package/dist/ionic/p-3f073322.system.js +4 -0
  603. package/dist/ionic/p-42f77866.entry.js +4 -0
  604. package/dist/ionic/p-44874984.system.entry.js +4 -0
  605. package/dist/ionic/p-45153fb3.entry.js +4 -0
  606. package/dist/ionic/p-46647e3c.system.entry.js +4 -0
  607. package/dist/ionic/{p-96cc4814.js → p-4c463790.js} +1 -1
  608. package/dist/ionic/p-510c8716.entry.js +4 -0
  609. package/dist/ionic/p-52693118.system.entry.js +4 -0
  610. package/dist/ionic/p-52c88e28.system.entry.js +4 -0
  611. package/dist/ionic/p-541e2e0a.system.js +4 -0
  612. package/dist/ionic/p-57a2f03a.entry.js +4 -0
  613. package/dist/ionic/p-5a514e50.system.entry.js +4 -0
  614. package/dist/ionic/p-5acc896a.system.entry.js +4 -0
  615. package/dist/ionic/p-5bef1e83.js +4 -0
  616. package/dist/ionic/p-5e4ee3ae.system.entry.js +4 -0
  617. package/dist/ionic/p-656380fe.system.entry.js +4 -0
  618. package/dist/ionic/p-65fe9b29.system.entry.js +4 -0
  619. package/dist/ionic/p-696ea939.entry.js +4 -0
  620. package/dist/ionic/p-6bee0fd7.system.entry.js +4 -0
  621. package/dist/ionic/p-6d2aa487.entry.js +4 -0
  622. package/dist/ionic/p-73e3a38e.system.js +4 -0
  623. package/dist/ionic/p-7ac0170e.entry.js +4 -0
  624. package/dist/ionic/p-7c319cce.entry.js +4 -0
  625. package/dist/ionic/p-7ce8a9e9.entry.js +4 -0
  626. package/dist/ionic/p-7d83bc32.entry.js +4 -0
  627. package/dist/ionic/p-7faa544d.system.entry.js +4 -0
  628. package/dist/ionic/p-809dc691.system.js +4 -0
  629. package/dist/ionic/p-8154208e.system.entry.js +4 -0
  630. package/dist/ionic/p-8304afaa.js +4 -0
  631. package/dist/ionic/{p-784d54d4.entry.js → p-86f7af76.entry.js} +1 -1
  632. package/dist/ionic/p-899dfb1b.entry.js +4 -0
  633. package/dist/ionic/p-8ac9139d.entry.js +4 -0
  634. package/dist/ionic/p-8bbc7d87.entry.js +4 -0
  635. package/dist/ionic/p-8f03847e.system.entry.js +4 -0
  636. package/dist/ionic/p-9143716d.js +4 -0
  637. package/dist/ionic/p-95ee29b9.entry.js +4 -0
  638. package/dist/ionic/p-961f1af3.system.entry.js +4 -0
  639. package/dist/ionic/p-974415fe.entry.js +4 -0
  640. package/dist/ionic/p-993ee94e.system.entry.js +4 -0
  641. package/dist/ionic/p-9b13de79.js +4 -0
  642. package/dist/ionic/p-9c44a499.system.entry.js +4 -0
  643. package/dist/ionic/p-9d7495f9.entry.js +4 -0
  644. package/dist/ionic/p-9e3fc5c4.entry.js +4 -0
  645. package/dist/ionic/p-9e81053f.system.entry.js +4 -0
  646. package/dist/ionic/{p-c222f76a.js → p-a3e86f85.js} +1 -1
  647. package/dist/ionic/p-a4d1b5cc.js +4 -0
  648. package/dist/ionic/p-a6fbf92e.system.entry.js +4 -0
  649. package/dist/ionic/p-a7727720.system.entry.js +4 -0
  650. package/dist/ionic/p-a8cb924e.entry.js +4 -0
  651. package/dist/ionic/p-ae5ef403.js +4 -0
  652. package/dist/ionic/p-b1abddbc.system.entry.js +4 -0
  653. package/dist/ionic/{p-fb1ee785.system.entry.js → p-b2f88f88.system.entry.js} +1 -1
  654. package/dist/ionic/{p-0fad7a2d.system.entry.js → p-b54a266a.system.entry.js} +1 -1
  655. package/dist/ionic/p-b61a2062.js +4 -0
  656. package/dist/ionic/p-b68096c3.js +4 -0
  657. package/dist/ionic/p-b7d71411.entry.js +4 -0
  658. package/dist/ionic/p-b80ea7d0.system.entry.js +4 -0
  659. package/dist/ionic/{p-8370ef82.entry.js → p-ba96d07d.entry.js} +1 -1
  660. package/dist/ionic/p-bf7156f4.entry.js +4 -0
  661. package/dist/ionic/p-c1d8c615.entry.js +4 -0
  662. package/dist/ionic/p-c37f3748.system.entry.js +4 -0
  663. package/dist/ionic/{p-f687573e.system.js → p-c3db3abe.system.js} +1 -1
  664. package/dist/ionic/p-c78743ee.entry.js +4 -0
  665. package/dist/ionic/p-cb1a9f57.system.js +4 -0
  666. package/dist/ionic/p-cb40aff5.entry.js +4 -0
  667. package/dist/ionic/p-cc75f7ad.entry.js +4 -0
  668. package/dist/ionic/p-ccc12f7c.system.js +4 -0
  669. package/dist/ionic/p-cd0eff72.system.entry.js +4 -0
  670. package/dist/ionic/p-cfd8b74c.entry.js +4 -0
  671. package/dist/ionic/p-cfe0fdf6.system.entry.js +4 -0
  672. package/dist/ionic/p-d26ef51c.system.js +4 -0
  673. package/dist/ionic/p-d4fe6131.entry.js +4 -0
  674. package/dist/ionic/p-d9f7a464.entry.js +4 -0
  675. package/dist/ionic/p-dc36b00c.entry.js +4 -0
  676. package/dist/ionic/p-dde515cb.system.entry.js +4 -0
  677. package/dist/ionic/{p-64714af0.system.entry.js → p-dfe87e18.system.entry.js} +1 -1
  678. package/dist/ionic/p-e3cc9c09.entry.js +4 -0
  679. package/dist/ionic/p-e408b885.system.entry.js +4 -0
  680. package/dist/ionic/p-e41c7934.system.entry.js +4 -0
  681. package/dist/ionic/p-e5c0f7e6.system.entry.js +4 -0
  682. package/dist/ionic/p-eb0c6a8b.system.js +4 -0
  683. package/dist/ionic/p-eb3789c5.system.entry.js +4 -0
  684. package/dist/ionic/{p-74a9cafe.system.js → p-ed5175cf.system.js} +2 -2
  685. package/dist/ionic/p-edb5c9e0.system.entry.js +4 -0
  686. package/dist/ionic/p-eed178ea.system.js +4 -0
  687. package/dist/ionic/p-efb193d6.entry.js +4 -0
  688. package/dist/ionic/p-f091ca00.entry.js +4 -0
  689. package/dist/ionic/{p-95bc0add.system.entry.js → p-f12d95ef.system.entry.js} +2 -2
  690. package/dist/ionic/{p-240cac05.entry.js → p-f8f6cf70.entry.js} +1 -1
  691. package/dist/ionic/{p-d104ba38.system.entry.js → p-f91ea85e.system.entry.js} +1 -1
  692. package/dist/ionic/{p-9d9f20ce.system.entry.js → p-fb064a3d.system.entry.js} +1 -1
  693. package/dist/ionic/{p-9ad82dba.js → p-fc0aa455.js} +1 -1
  694. package/dist/ionic/p-fc1a4bbf.entry.js +4 -0
  695. package/dist/ionic/{p-c872fcd2.entry.js → p-fdf42961.entry.js} +1 -1
  696. package/dist/ionic/p-fdfb6054.system.js +4 -0
  697. package/dist/ionic/p-fe32eb3e.system.entry.js +4 -0
  698. package/dist/types/components/accordion/accordion.d.ts +2 -1
  699. package/dist/types/components/accordion-group/accordion-group.d.ts +2 -1
  700. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  701. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  702. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  703. package/dist/types/components/alert/alert.d.ts +3 -2
  704. package/dist/types/components/app/app.d.ts +4 -0
  705. package/dist/types/components/avatar/avatar.d.ts +4 -0
  706. package/dist/types/components/back-button/back-button.d.ts +2 -1
  707. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  708. package/dist/types/components/badge/badge.d.ts +2 -1
  709. package/dist/types/components/breadcrumb/breadcrumb.d.ts +2 -1
  710. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  711. package/dist/types/components/button/button.d.ts +15 -4
  712. package/dist/types/components/buttons/buttons.d.ts +5 -1
  713. package/dist/types/components/card/card.d.ts +6 -1
  714. package/dist/types/components/card-content/card-content.d.ts +2 -1
  715. package/dist/types/components/card-header/card-header.d.ts +3 -2
  716. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  717. package/dist/types/components/card-title/card-title.d.ts +2 -1
  718. package/dist/types/components/checkbox/checkbox.d.ts +2 -1
  719. package/dist/types/components/chip/chip.d.ts +6 -1
  720. package/dist/types/components/col/col.d.ts +4 -0
  721. package/dist/types/components/content/content.d.ts +3 -0
  722. package/dist/types/components/datetime/datetime.d.ts +2 -1
  723. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  724. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  725. package/dist/types/components/fab/fab.d.ts +4 -0
  726. package/dist/types/components/fab-button/fab-button.d.ts +3 -2
  727. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  728. package/dist/types/components/footer/footer.d.ts +4 -3
  729. package/dist/types/components/grid/grid.d.ts +4 -0
  730. package/dist/types/components/header/header.d.ts +4 -3
  731. package/dist/types/components/img/img.d.ts +3 -0
  732. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  733. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  734. package/dist/types/components/input/input.d.ts +10 -3
  735. package/dist/types/components/item/item.d.ts +4 -3
  736. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  737. package/dist/types/components/item-group/item-group.d.ts +4 -0
  738. package/dist/types/components/item-option/item-option.d.ts +2 -1
  739. package/dist/types/components/item-options/item-options.d.ts +4 -0
  740. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  741. package/dist/types/components/label/label.d.ts +2 -1
  742. package/dist/types/components/list/list.d.ts +2 -1
  743. package/dist/types/components/list-header/list-header.d.ts +2 -1
  744. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  745. package/dist/types/components/loading/loading.d.ts +3 -2
  746. package/dist/types/components/menu/menu.d.ts +3 -0
  747. package/dist/types/components/menu-button/menu-button.d.ts +2 -1
  748. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  749. package/dist/types/components/modal/modal-interface.d.ts +3 -8
  750. package/dist/types/components/modal/modal.d.ts +2 -19
  751. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  752. package/dist/types/components/nav/nav.d.ts +5 -1
  753. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  754. package/dist/types/components/note/note.d.ts +2 -1
  755. package/dist/types/components/picker/picker.d.ts +2 -1
  756. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  757. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  758. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  759. package/dist/types/components/popover/popover-interface.d.ts +3 -8
  760. package/dist/types/components/popover/popover.d.ts +6 -23
  761. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  762. package/dist/types/components/radio/radio.d.ts +2 -1
  763. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  764. package/dist/types/components/range/range.d.ts +2 -1
  765. package/dist/types/components/refresher/refresher.d.ts +2 -1
  766. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  767. package/dist/types/components/reorder/reorder.d.ts +3 -0
  768. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  769. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  770. package/dist/types/components/route/route.d.ts +4 -0
  771. package/dist/types/components/router/router.d.ts +4 -0
  772. package/dist/types/components/router-link/router-link.d.ts +4 -0
  773. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  774. package/dist/types/components/row/row.d.ts +4 -0
  775. package/dist/types/components/searchbar/searchbar.d.ts +8 -7
  776. package/dist/types/components/segment/segment.d.ts +2 -1
  777. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  778. package/dist/types/components/select/select.d.ts +6 -5
  779. package/dist/types/components/select-option/select-option.d.ts +4 -0
  780. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  781. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  782. package/dist/types/components/spinner/spinner.d.ts +4 -0
  783. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  784. package/dist/types/components/tab/tab.d.ts +4 -0
  785. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -2
  786. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  787. package/dist/types/components/tabs/tabs.d.ts +3 -0
  788. package/dist/types/components/text/text.d.ts +2 -1
  789. package/dist/types/components/textarea/textarea.d.ts +3 -2
  790. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  791. package/dist/types/components/title/title.d.ts +4 -0
  792. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  793. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  794. package/dist/types/components/toast/toast.d.ts +3 -2
  795. package/dist/types/components/toggle/toggle.d.ts +2 -1
  796. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  797. package/dist/types/components.d.ts +1207 -183
  798. package/dist/types/global/ionic-global.d.ts +25 -2
  799. package/dist/types/interface.d.ts +3 -0
  800. package/dist/types/utils/config.d.ts +17 -2
  801. package/dist/types/utils/overlays-interface.d.ts +31 -1
  802. package/dist/types/utils/overlays.d.ts +0 -1
  803. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  804. package/hydrate/index.js +1172 -525
  805. package/package.json +4 -2
  806. package/components/index9.js +0 -167
  807. package/dist/cjs/index-5915f9b3.js +0 -38
  808. package/dist/cjs/ionic-global-1adf9bc4.js +0 -230
  809. package/dist/collection/components/button/test/round/button.e2e.js +0 -52
  810. package/dist/esm/index-9b0d46f4.js +0 -34
  811. package/dist/esm/ionic-global-c4e0c089.js +0 -224
  812. package/dist/esm-es5/app-globals-b8e5e7fa.js +0 -4
  813. package/dist/esm-es5/data-ae11fd43.js +0 -4
  814. package/dist/esm-es5/index-10916999.js +0 -4
  815. package/dist/esm-es5/index-5cc724f3.js +0 -4
  816. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  817. package/dist/esm-es5/input-shims-4530285e.js +0 -4
  818. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  819. package/dist/esm-es5/ionic-global-c4e0c089.js +0 -4
  820. package/dist/esm-es5/ios.transition-8e181a7e.js +0 -4
  821. package/dist/esm-es5/md.transition-f1c3c737.js +0 -4
  822. package/dist/esm-es5/overlays-634df4be.js +0 -4
  823. package/dist/esm-es5/status-tap-39da9160.js +0 -4
  824. package/dist/ionic/p-012cc611.system.entry.js +0 -4
  825. package/dist/ionic/p-06e58c4e.js +0 -4
  826. package/dist/ionic/p-06fee233.js +0 -4
  827. package/dist/ionic/p-07c88a2e.entry.js +0 -4
  828. package/dist/ionic/p-0d189eaf.entry.js +0 -4
  829. package/dist/ionic/p-105f7d62.system.entry.js +0 -4
  830. package/dist/ionic/p-14700c11.system.entry.js +0 -4
  831. package/dist/ionic/p-159a5b6a.system.entry.js +0 -4
  832. package/dist/ionic/p-17050343.system.entry.js +0 -4
  833. package/dist/ionic/p-18057853.entry.js +0 -4
  834. package/dist/ionic/p-18609ea3.system.entry.js +0 -4
  835. package/dist/ionic/p-1b235142.entry.js +0 -4
  836. package/dist/ionic/p-1bd294a2.entry.js +0 -4
  837. package/dist/ionic/p-23a94a8e.system.entry.js +0 -4
  838. package/dist/ionic/p-23e0649d.entry.js +0 -4
  839. package/dist/ionic/p-266fc56e.system.js +0 -4
  840. package/dist/ionic/p-2b106d43.system.entry.js +0 -4
  841. package/dist/ionic/p-2d5e919f.entry.js +0 -4
  842. package/dist/ionic/p-2f6cedaf.system.entry.js +0 -4
  843. package/dist/ionic/p-3001b2f5.entry.js +0 -4
  844. package/dist/ionic/p-32950317.system.entry.js +0 -4
  845. package/dist/ionic/p-33444157.entry.js +0 -4
  846. package/dist/ionic/p-33723893.system.entry.js +0 -4
  847. package/dist/ionic/p-34272b1f.system.entry.js +0 -4
  848. package/dist/ionic/p-37ed0807.system.entry.js +0 -4
  849. package/dist/ionic/p-3c70b01b.entry.js +0 -4
  850. package/dist/ionic/p-3d72cae3.entry.js +0 -4
  851. package/dist/ionic/p-3f70bfba.entry.js +0 -4
  852. package/dist/ionic/p-414d73bc.system.entry.js +0 -4
  853. package/dist/ionic/p-4264f999.system.entry.js +0 -4
  854. package/dist/ionic/p-46111310.js +0 -4
  855. package/dist/ionic/p-46f407f0.system.js +0 -4
  856. package/dist/ionic/p-4861159f.entry.js +0 -4
  857. package/dist/ionic/p-4a615fea.entry.js +0 -4
  858. package/dist/ionic/p-4e6ddce7.entry.js +0 -4
  859. package/dist/ionic/p-5033128d.system.js +0 -4
  860. package/dist/ionic/p-512cdc37.entry.js +0 -4
  861. package/dist/ionic/p-5278521a.system.entry.js +0 -4
  862. package/dist/ionic/p-546433d2.js +0 -4
  863. package/dist/ionic/p-54f52179.system.entry.js +0 -4
  864. package/dist/ionic/p-54f76ced.js +0 -4
  865. package/dist/ionic/p-56c3b69c.entry.js +0 -4
  866. package/dist/ionic/p-587643a6.system.entry.js +0 -4
  867. package/dist/ionic/p-5cf61334.system.entry.js +0 -4
  868. package/dist/ionic/p-5e7c32e8.system.entry.js +0 -4
  869. package/dist/ionic/p-5eafecd8.entry.js +0 -4
  870. package/dist/ionic/p-65e0d04e.system.entry.js +0 -4
  871. package/dist/ionic/p-6994c97a.js +0 -4
  872. package/dist/ionic/p-69c8ec2a.system.entry.js +0 -4
  873. package/dist/ionic/p-6a7eac5a.js +0 -4
  874. package/dist/ionic/p-6c3c02d4.entry.js +0 -4
  875. package/dist/ionic/p-715d10d2.system.entry.js +0 -4
  876. package/dist/ionic/p-71688099.system.entry.js +0 -4
  877. package/dist/ionic/p-727255c2.entry.js +0 -4
  878. package/dist/ionic/p-73281e75.system.entry.js +0 -4
  879. package/dist/ionic/p-745eb00b.system.entry.js +0 -4
  880. package/dist/ionic/p-75cddcc9.js +0 -4
  881. package/dist/ionic/p-7820f3ab.system.entry.js +0 -4
  882. package/dist/ionic/p-7d9eefb3.system.js +0 -4
  883. package/dist/ionic/p-8337ce33.system.entry.js +0 -4
  884. package/dist/ionic/p-88250ff0.entry.js +0 -4
  885. package/dist/ionic/p-88cff52d.entry.js +0 -4
  886. package/dist/ionic/p-8a6e15fc.system.entry.js +0 -4
  887. package/dist/ionic/p-8b19c120.entry.js +0 -4
  888. package/dist/ionic/p-8bbc7271.entry.js +0 -4
  889. package/dist/ionic/p-92210d07.entry.js +0 -4
  890. package/dist/ionic/p-9399625f.entry.js +0 -4
  891. package/dist/ionic/p-9a45140d.system.entry.js +0 -4
  892. package/dist/ionic/p-9ce13bcc.entry.js +0 -4
  893. package/dist/ionic/p-9d7fc908.system.js +0 -4
  894. package/dist/ionic/p-9e8cf5a2.system.entry.js +0 -4
  895. package/dist/ionic/p-9ea607bd.system.js +0 -4
  896. package/dist/ionic/p-a70c90d8.entry.js +0 -4
  897. package/dist/ionic/p-a7ba2dcc.system.js +0 -4
  898. package/dist/ionic/p-aa4f2703.system.entry.js +0 -4
  899. package/dist/ionic/p-ab5db814.js +0 -4
  900. package/dist/ionic/p-ac4e2a74.system.entry.js +0 -4
  901. package/dist/ionic/p-ac6dd92b.system.entry.js +0 -4
  902. package/dist/ionic/p-ae21e7ab.entry.js +0 -4
  903. package/dist/ionic/p-bcbce3d9.entry.js +0 -4
  904. package/dist/ionic/p-bd516c16.entry.js +0 -4
  905. package/dist/ionic/p-bf4609f9.system.entry.js +0 -4
  906. package/dist/ionic/p-c373bd37.system.entry.js +0 -4
  907. package/dist/ionic/p-c478747f.system.js +0 -4
  908. package/dist/ionic/p-c80d05c9.js +0 -4
  909. package/dist/ionic/p-c8db6adb.entry.js +0 -4
  910. package/dist/ionic/p-cae889f9.entry.js +0 -4
  911. package/dist/ionic/p-cec3bebe.entry.js +0 -4
  912. package/dist/ionic/p-cfdb1223.entry.js +0 -4
  913. package/dist/ionic/p-d2544865.system.js +0 -4
  914. package/dist/ionic/p-d2b175d3.entry.js +0 -4
  915. package/dist/ionic/p-d335115d.system.js +0 -4
  916. package/dist/ionic/p-d5f48185.system.entry.js +0 -4
  917. package/dist/ionic/p-d79542bd.system.js +0 -4
  918. package/dist/ionic/p-d8ebc853.system.entry.js +0 -4
  919. package/dist/ionic/p-db1d7caa.entry.js +0 -4
  920. package/dist/ionic/p-de3c33f3.entry.js +0 -4
  921. package/dist/ionic/p-f24e9676.system.js +0 -4
  922. package/dist/ionic/p-f31ef319.system.entry.js +0 -4
  923. package/dist/ionic/p-f4f3b780.entry.js +0 -4
  924. package/dist/ionic/p-f6f4f694.entry.js +0 -4
  925. package/dist/ionic/p-f94cbfe9.js +0 -4
  926. package/dist/ionic/p-f96f7d38.entry.js +0 -4
  927. package/dist/ionic/p-fb16b850.system.entry.js +0 -4
  928. package/dist/ionic/p-fe246e19.system.entry.js +0 -4
  929. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -82,13 +82,17 @@ 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
  */
@@ -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,25 @@ 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
+ * The theme determines the visual appearance of the component.
340
+ */
341
+ "theme"?: "ios" | "md" | "ionic";
310
342
  }
311
343
  interface IonBackButton {
312
344
  /**
@@ -326,7 +358,7 @@ export namespace Components {
326
358
  */
327
359
  "icon"?: string | null;
328
360
  /**
329
- * The mode determines which platform styles to use.
361
+ * The mode determines the platform behaviors of the component.
330
362
  */
331
363
  "mode"?: "ios" | "md";
332
364
  /**
@@ -337,12 +369,20 @@ export namespace Components {
337
369
  * The text to display in the back button.
338
370
  */
339
371
  "text"?: string | null;
372
+ /**
373
+ * The theme determines the visual appearance of the component.
374
+ */
375
+ "theme"?: "ios" | "md" | "ionic";
340
376
  /**
341
377
  * The type of the button.
342
378
  */
343
379
  "type": 'submit' | 'reset' | 'button';
344
380
  }
345
381
  interface IonBackdrop {
382
+ /**
383
+ * The mode determines the platform behaviors of the component.
384
+ */
385
+ "mode"?: "ios" | "md";
346
386
  /**
347
387
  * If `true`, the backdrop will stop propagation on tap.
348
388
  */
@@ -351,6 +391,10 @@ export namespace Components {
351
391
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
352
392
  */
353
393
  "tappable": boolean;
394
+ /**
395
+ * The theme determines the visual appearance of the component.
396
+ */
397
+ "theme"?: "ios" | "md" | "ionic";
354
398
  /**
355
399
  * If `true`, the backdrop will be visible.
356
400
  */
@@ -362,9 +406,13 @@ export namespace Components {
362
406
  */
363
407
  "color"?: Color;
364
408
  /**
365
- * The mode determines which platform styles to use.
409
+ * The mode determines the platform behaviors of the component.
366
410
  */
367
411
  "mode"?: "ios" | "md";
412
+ /**
413
+ * The theme determines the visual appearance of the component.
414
+ */
415
+ "theme"?: "ios" | "md" | "ionic";
368
416
  }
369
417
  interface IonBreadcrumb {
370
418
  /**
@@ -390,7 +438,7 @@ export namespace Components {
390
438
  "href": string | undefined;
391
439
  "last": boolean;
392
440
  /**
393
- * The mode determines which platform styles to use.
441
+ * The mode determines the platform behaviors of the component.
394
442
  */
395
443
  "mode"?: "ios" | "md";
396
444
  /**
@@ -414,6 +462,10 @@ export namespace Components {
414
462
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
415
463
  */
416
464
  "target": string | undefined;
465
+ /**
466
+ * The theme determines the visual appearance of the component.
467
+ */
468
+ "theme"?: "ios" | "md" | "ionic";
417
469
  }
418
470
  interface IonBreadcrumbs {
419
471
  /**
@@ -433,9 +485,13 @@ export namespace Components {
433
485
  */
434
486
  "maxItems"?: number;
435
487
  /**
436
- * The mode determines which platform styles to use.
488
+ * The mode determines the platform behaviors of the component.
437
489
  */
438
490
  "mode"?: "ios" | "md";
491
+ /**
492
+ * The theme determines the visual appearance of the component.
493
+ */
494
+ "theme"?: "ios" | "md" | "ionic";
439
495
  }
440
496
  interface IonButton {
441
497
  /**
@@ -471,7 +527,7 @@ export namespace Components {
471
527
  */
472
528
  "href": string | undefined;
473
529
  /**
474
- * The mode determines which platform styles to use.
530
+ * The mode determines the platform behaviors of the component.
475
531
  */
476
532
  "mode"?: "ios" | "md";
477
533
  /**
@@ -487,13 +543,13 @@ export namespace Components {
487
543
  */
488
544
  "routerDirection": RouterDirection;
489
545
  /**
490
- * Set to `"round"` for a button with more rounded corners.
546
+ * Set to `"soft"` for a button with soft rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular" for a button without rounded corners. Defaults to `"soft"` for the `"ios`" and `"ionic"` themes and `"round"` for the `"md"` theme.
491
547
  */
492
- "shape"?: 'round';
548
+ "shape"?: 'soft' | 'round' | 'rectangular';
493
549
  /**
494
550
  * 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
551
  */
496
- "size"?: 'small' | 'default' | 'large';
552
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
497
553
  /**
498
554
  * If `true`, activates a button with a heavier font weight.
499
555
  */
@@ -502,6 +558,10 @@ export namespace Components {
502
558
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
503
559
  */
504
560
  "target": string | undefined;
561
+ /**
562
+ * The theme determines the visual appearance of the component.
563
+ */
564
+ "theme"?: "ios" | "md" | "ionic";
505
565
  /**
506
566
  * The type of the button.
507
567
  */
@@ -509,9 +569,17 @@ export namespace Components {
509
569
  }
510
570
  interface IonButtons {
511
571
  /**
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)
572
+ * 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
573
  */
514
574
  "collapse": boolean;
575
+ /**
576
+ * The mode determines the platform behaviors of the component.
577
+ */
578
+ "mode"?: "ios" | "md";
579
+ /**
580
+ * The theme determines the visual appearance of the component.
581
+ */
582
+ "theme"?: "ios" | "md" | "ionic";
515
583
  }
516
584
  interface IonCard {
517
585
  /**
@@ -535,7 +603,7 @@ export namespace Components {
535
603
  */
536
604
  "href": string | undefined;
537
605
  /**
538
- * The mode determines which platform styles to use.
606
+ * The mode determines the platform behaviors of the component.
539
607
  */
540
608
  "mode"?: "ios" | "md";
541
609
  /**
@@ -550,10 +618,18 @@ export namespace Components {
550
618
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
551
619
  */
552
620
  "routerDirection": RouterDirection;
621
+ /**
622
+ * Set to `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners.
623
+ */
624
+ "shape"?: 'round' | 'rectangular';
553
625
  /**
554
626
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
555
627
  */
556
628
  "target": string | undefined;
629
+ /**
630
+ * The theme determines the visual appearance of the component.
631
+ */
632
+ "theme"?: "ios" | "md" | "ionic";
557
633
  /**
558
634
  * The type of the button. Only used when an `onclick` or `button` property is present.
559
635
  */
@@ -561,9 +637,13 @@ export namespace Components {
561
637
  }
562
638
  interface IonCardContent {
563
639
  /**
564
- * The mode determines which platform styles to use.
640
+ * The mode determines the platform behaviors of the component.
565
641
  */
566
642
  "mode"?: "ios" | "md";
643
+ /**
644
+ * The theme determines the visual appearance of the component.
645
+ */
646
+ "theme"?: "ios" | "md" | "ionic";
567
647
  }
568
648
  interface IonCardHeader {
569
649
  /**
@@ -571,11 +651,15 @@ export namespace Components {
571
651
  */
572
652
  "color"?: Color;
573
653
  /**
574
- * The mode determines which platform styles to use.
654
+ * The mode determines the platform behaviors of the component.
575
655
  */
576
656
  "mode"?: "ios" | "md";
577
657
  /**
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).
658
+ * The theme determines the visual appearance of the component.
659
+ */
660
+ "theme"?: "ios" | "md" | "ionic";
661
+ /**
662
+ * 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
663
  */
580
664
  "translucent": boolean;
581
665
  }
@@ -585,9 +669,13 @@ export namespace Components {
585
669
  */
586
670
  "color"?: Color;
587
671
  /**
588
- * The mode determines which platform styles to use.
672
+ * The mode determines the platform behaviors of the component.
589
673
  */
590
674
  "mode"?: "ios" | "md";
675
+ /**
676
+ * The theme determines the visual appearance of the component.
677
+ */
678
+ "theme"?: "ios" | "md" | "ionic";
591
679
  }
592
680
  interface IonCardTitle {
593
681
  /**
@@ -595,9 +683,13 @@ export namespace Components {
595
683
  */
596
684
  "color"?: Color;
597
685
  /**
598
- * The mode determines which platform styles to use.
686
+ * The mode determines the platform behaviors of the component.
599
687
  */
600
688
  "mode"?: "ios" | "md";
689
+ /**
690
+ * The theme determines the visual appearance of the component.
691
+ */
692
+ "theme"?: "ios" | "md" | "ionic";
601
693
  }
602
694
  interface IonCheckbox {
603
695
  /**
@@ -629,13 +721,17 @@ export namespace Components {
629
721
  */
630
722
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
631
723
  /**
632
- * The mode determines which platform styles to use.
724
+ * The mode determines the platform behaviors of the component.
633
725
  */
634
726
  "mode"?: "ios" | "md";
635
727
  /**
636
728
  * The name of the control, which is submitted with the form data.
637
729
  */
638
730
  "name": string;
731
+ /**
732
+ * The theme determines the visual appearance of the component.
733
+ */
734
+ "theme"?: "ios" | "md" | "ionic";
639
735
  /**
640
736
  * 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
737
  */
@@ -651,15 +747,27 @@ export namespace Components {
651
747
  */
652
748
  "disabled": boolean;
653
749
  /**
654
- * The mode determines which platform styles to use.
750
+ * The mode determines the platform behaviors of the component.
655
751
  */
656
752
  "mode"?: "ios" | "md";
657
753
  /**
658
754
  * Display an outline style button.
659
755
  */
660
756
  "outline": boolean;
757
+ /**
758
+ * Define the Chip corner shape, when using the Ionic Theme.
759
+ */
760
+ "shape"?: 'round' | 'rectangular';
761
+ /**
762
+ * The theme determines the visual appearance of the component.
763
+ */
764
+ "theme"?: "ios" | "md" | "ionic";
661
765
  }
662
766
  interface IonCol {
767
+ /**
768
+ * The mode determines the platform behaviors of the component.
769
+ */
770
+ "mode"?: "ios" | "md";
663
771
  /**
664
772
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
665
773
  */
@@ -756,6 +864,10 @@ export namespace Components {
756
864
  * 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
865
  */
758
866
  "sizeXs"?: string;
867
+ /**
868
+ * The theme determines the visual appearance of the component.
869
+ */
870
+ "theme"?: "ios" | "md" | "ionic";
759
871
  }
760
872
  interface IonContent {
761
873
  /**
@@ -782,6 +894,10 @@ export namespace Components {
782
894
  * 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
895
  */
784
896
  "getScrollElement": () => Promise<HTMLElement>;
897
+ /**
898
+ * The mode determines the platform behaviors of the component.
899
+ */
900
+ "mode"?: "ios" | "md";
785
901
  /**
786
902
  * Scroll by a specified X/Y distance in the component.
787
903
  * @param x The amount to scroll by on the horizontal axis.
@@ -818,6 +934,10 @@ export namespace Components {
818
934
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
819
935
  */
820
936
  "scrollY": boolean;
937
+ /**
938
+ * The theme determines the visual appearance of the component.
939
+ */
940
+ "theme"?: "ios" | "md" | "ionic";
821
941
  }
822
942
  interface IonDatetime {
823
943
  /**
@@ -893,7 +1013,7 @@ export namespace Components {
893
1013
  */
894
1014
  "minuteValues"?: number[] | number | string;
895
1015
  /**
896
- * The mode determines which platform styles to use.
1016
+ * The mode determines the platform behaviors of the component.
897
1017
  */
898
1018
  "mode"?: "ios" | "md";
899
1019
  /**
@@ -944,6 +1064,10 @@ export namespace Components {
944
1064
  * 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
1065
  */
946
1066
  "size": 'cover' | 'fixed';
1067
+ /**
1068
+ * The theme determines the visual appearance of the component.
1069
+ */
1070
+ "theme"?: "ios" | "md" | "ionic";
947
1071
  /**
948
1072
  * 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
1073
  */
@@ -971,9 +1095,13 @@ export namespace Components {
971
1095
  */
972
1096
  "disabled": boolean;
973
1097
  /**
974
- * The mode determines which platform styles to use.
1098
+ * The mode determines the platform behaviors of the component.
975
1099
  */
976
1100
  "mode"?: "ios" | "md";
1101
+ /**
1102
+ * The theme determines the visual appearance of the component.
1103
+ */
1104
+ "theme"?: "ios" | "md" | "ionic";
977
1105
  }
978
1106
  interface IonFab {
979
1107
  /**
@@ -992,6 +1120,14 @@ export namespace Components {
992
1120
  * Where to align the fab horizontally in the viewport.
993
1121
  */
994
1122
  "horizontal"?: 'start' | 'end' | 'center';
1123
+ /**
1124
+ * The mode determines the platform behaviors of the component.
1125
+ */
1126
+ "mode"?: "ios" | "md";
1127
+ /**
1128
+ * The theme determines the visual appearance of the component.
1129
+ */
1130
+ "theme"?: "ios" | "md" | "ionic";
995
1131
  /**
996
1132
  * Opens/Closes the FAB list container.
997
1133
  */
@@ -1027,7 +1163,7 @@ export namespace Components {
1027
1163
  */
1028
1164
  "href": string | undefined;
1029
1165
  /**
1030
- * The mode determines which platform styles to use.
1166
+ * The mode determines the platform behaviors of the component.
1031
1167
  */
1032
1168
  "mode"?: "ios" | "md";
1033
1169
  /**
@@ -1055,7 +1191,11 @@ export namespace Components {
1055
1191
  */
1056
1192
  "target": string | undefined;
1057
1193
  /**
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).
1194
+ * The theme determines the visual appearance of the component.
1195
+ */
1196
+ "theme"?: "ios" | "md" | "ionic";
1197
+ /**
1198
+ * 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
1199
  */
1060
1200
  "translucent": boolean;
1061
1201
  /**
@@ -1068,22 +1208,34 @@ export namespace Components {
1068
1208
  * If `true`, the fab list will show all fab buttons in the list.
1069
1209
  */
1070
1210
  "activated": boolean;
1211
+ /**
1212
+ * The mode determines the platform behaviors of the component.
1213
+ */
1214
+ "mode"?: "ios" | "md";
1071
1215
  /**
1072
1216
  * The side the fab list will show on relative to the main fab button.
1073
1217
  */
1074
1218
  "side": 'start' | 'end' | 'top' | 'bottom';
1219
+ /**
1220
+ * The theme determines the visual appearance of the component.
1221
+ */
1222
+ "theme"?: "ios" | "md" | "ionic";
1075
1223
  }
1076
1224
  interface IonFooter {
1077
1225
  /**
1078
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1226
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1079
1227
  */
1080
1228
  "collapse"?: 'fade';
1081
1229
  /**
1082
- * The mode determines which platform styles to use.
1230
+ * The mode determines the platform behaviors of the component.
1083
1231
  */
1084
1232
  "mode"?: "ios" | "md";
1085
1233
  /**
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.
1234
+ * The theme determines the visual appearance of the component.
1235
+ */
1236
+ "theme"?: "ios" | "md" | "ionic";
1237
+ /**
1238
+ * 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
1239
  */
1088
1240
  "translucent": boolean;
1089
1241
  }
@@ -1092,18 +1244,30 @@ export namespace Components {
1092
1244
  * If `true`, the grid will have a fixed width based on the screen size.
1093
1245
  */
1094
1246
  "fixed": boolean;
1247
+ /**
1248
+ * The mode determines the platform behaviors of the component.
1249
+ */
1250
+ "mode"?: "ios" | "md";
1251
+ /**
1252
+ * The theme determines the visual appearance of the component.
1253
+ */
1254
+ "theme"?: "ios" | "md" | "ionic";
1095
1255
  }
1096
1256
  interface IonHeader {
1097
1257
  /**
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)
1258
+ * 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
1259
  */
1100
1260
  "collapse"?: 'condense' | 'fade';
1101
1261
  /**
1102
- * The mode determines which platform styles to use.
1262
+ * The mode determines the platform behaviors of the component.
1103
1263
  */
1104
1264
  "mode"?: "ios" | "md";
1105
1265
  /**
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.
1266
+ * The theme determines the visual appearance of the component.
1267
+ */
1268
+ "theme"?: "ios" | "md" | "ionic";
1269
+ /**
1270
+ * 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
1271
  */
1108
1272
  "translucent": boolean;
1109
1273
  }
@@ -1112,10 +1276,18 @@ export namespace Components {
1112
1276
  * 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
1277
  */
1114
1278
  "alt"?: string;
1279
+ /**
1280
+ * The mode determines the platform behaviors of the component.
1281
+ */
1282
+ "mode"?: "ios" | "md";
1115
1283
  /**
1116
1284
  * The image URL. This attribute is mandatory for the `<img>` element.
1117
1285
  */
1118
1286
  "src"?: string;
1287
+ /**
1288
+ * The theme determines the visual appearance of the component.
1289
+ */
1290
+ "theme"?: "ios" | "md" | "ionic";
1119
1291
  }
1120
1292
  interface IonInfiniteScroll {
1121
1293
  /**
@@ -1126,10 +1298,18 @@ export namespace Components {
1126
1298
  * 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
1299
  */
1128
1300
  "disabled": boolean;
1301
+ /**
1302
+ * The mode determines the platform behaviors of the component.
1303
+ */
1304
+ "mode"?: "ios" | "md";
1129
1305
  /**
1130
1306
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1131
1307
  */
1132
1308
  "position": 'top' | 'bottom';
1309
+ /**
1310
+ * The theme determines the visual appearance of the component.
1311
+ */
1312
+ "theme"?: "ios" | "md" | "ionic";
1133
1313
  /**
1134
1314
  * 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
1315
  */
@@ -1144,6 +1324,14 @@ export namespace Components {
1144
1324
  * 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
1325
  */
1146
1326
  "loadingText"?: string | IonicSafeString;
1327
+ /**
1328
+ * The mode determines the platform behaviors of the component.
1329
+ */
1330
+ "mode"?: "ios" | "md";
1331
+ /**
1332
+ * The theme determines the visual appearance of the component.
1333
+ */
1334
+ "theme"?: "ios" | "md" | "ionic";
1147
1335
  }
1148
1336
  interface IonInput {
1149
1337
  /**
@@ -1203,7 +1391,7 @@ export namespace Components {
1203
1391
  */
1204
1392
  "errorText"?: string;
1205
1393
  /**
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.
1394
+ * 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
1395
  */
1208
1396
  "fill"?: 'outline' | 'solid';
1209
1397
  /**
@@ -1243,7 +1431,7 @@ export namespace Components {
1243
1431
  */
1244
1432
  "minlength"?: number;
1245
1433
  /**
1246
- * The mode determines which platform styles to use.
1434
+ * The mode determines the platform behaviors of the component.
1247
1435
  */
1248
1436
  "mode"?: "ios" | "md";
1249
1437
  /**
@@ -1275,9 +1463,9 @@ export namespace Components {
1275
1463
  */
1276
1464
  "setFocus": () => Promise<void>;
1277
1465
  /**
1278
- * The shape of the input. If "round" it will have an increased border radius.
1466
+ * Set to `"soft"` for an input with soft rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular" for an input without rounded corners. Defaults to `"soft"`.
1279
1467
  */
1280
- "shape"?: 'round';
1468
+ "shape"?: 'soft' | 'round';
1281
1469
  /**
1282
1470
  * If `true`, the element will have its spelling and grammar checked.
1283
1471
  */
@@ -1286,6 +1474,10 @@ export namespace Components {
1286
1474
  * 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
1475
  */
1288
1476
  "step"?: string;
1477
+ /**
1478
+ * The theme determines the visual appearance of the component.
1479
+ */
1480
+ "theme"?: "ios" | "md" | "ionic";
1289
1481
  /**
1290
1482
  * The type of control to display. The default type is text.
1291
1483
  */
@@ -1324,7 +1516,7 @@ export namespace Components {
1324
1516
  */
1325
1517
  "color"?: Color;
1326
1518
  /**
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.
1519
+ * 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
1520
  */
1329
1521
  "detail"?: boolean;
1330
1522
  /**
@@ -1348,7 +1540,7 @@ export namespace Components {
1348
1540
  */
1349
1541
  "lines"?: 'full' | 'inset' | 'none';
1350
1542
  /**
1351
- * The mode determines which platform styles to use.
1543
+ * The mode determines the platform behaviors of the component.
1352
1544
  */
1353
1545
  "mode"?: "ios" | "md";
1354
1546
  /**
@@ -1367,6 +1559,10 @@ export namespace Components {
1367
1559
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1368
1560
  */
1369
1561
  "target": string | undefined;
1562
+ /**
1563
+ * The theme determines the visual appearance of the component.
1564
+ */
1565
+ "theme"?: "ios" | "md" | "ionic";
1370
1566
  /**
1371
1567
  * The type of the button. Only used when an `onclick` or `button` property is present.
1372
1568
  */
@@ -1378,15 +1574,27 @@ export namespace Components {
1378
1574
  */
1379
1575
  "color"?: Color;
1380
1576
  /**
1381
- * The mode determines which platform styles to use.
1577
+ * The mode determines the platform behaviors of the component.
1382
1578
  */
1383
1579
  "mode"?: "ios" | "md";
1384
1580
  /**
1385
1581
  * 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
1582
  */
1387
1583
  "sticky": boolean;
1584
+ /**
1585
+ * The theme determines the visual appearance of the component.
1586
+ */
1587
+ "theme"?: "ios" | "md" | "ionic";
1388
1588
  }
1389
1589
  interface IonItemGroup {
1590
+ /**
1591
+ * The mode determines the platform behaviors of the component.
1592
+ */
1593
+ "mode"?: "ios" | "md";
1594
+ /**
1595
+ * The theme determines the visual appearance of the component.
1596
+ */
1597
+ "theme"?: "ios" | "md" | "ionic";
1390
1598
  }
1391
1599
  interface IonItemOption {
1392
1600
  /**
@@ -1410,7 +1618,7 @@ export namespace Components {
1410
1618
  */
1411
1619
  "href": string | undefined;
1412
1620
  /**
1413
- * The mode determines which platform styles to use.
1621
+ * The mode determines the platform behaviors of the component.
1414
1622
  */
1415
1623
  "mode"?: "ios" | "md";
1416
1624
  /**
@@ -1421,6 +1629,10 @@ export namespace Components {
1421
1629
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1422
1630
  */
1423
1631
  "target": string | undefined;
1632
+ /**
1633
+ * The theme determines the visual appearance of the component.
1634
+ */
1635
+ "theme"?: "ios" | "md" | "ionic";
1424
1636
  /**
1425
1637
  * The type of the button.
1426
1638
  */
@@ -1428,10 +1640,18 @@ export namespace Components {
1428
1640
  }
1429
1641
  interface IonItemOptions {
1430
1642
  "fireSwipeEvent": () => Promise<void>;
1643
+ /**
1644
+ * The mode determines the platform behaviors of the component.
1645
+ */
1646
+ "mode"?: "ios" | "md";
1431
1647
  /**
1432
1648
  * 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
1649
  */
1434
1650
  "side": Side;
1651
+ /**
1652
+ * The theme determines the visual appearance of the component.
1653
+ */
1654
+ "theme"?: "ios" | "md" | "ionic";
1435
1655
  }
1436
1656
  interface IonItemSliding {
1437
1657
  /**
@@ -1454,11 +1674,19 @@ export namespace Components {
1454
1674
  * 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
1675
  */
1456
1676
  "getSlidingRatio": () => Promise<number>;
1677
+ /**
1678
+ * The mode determines the platform behaviors of the component.
1679
+ */
1680
+ "mode"?: "ios" | "md";
1457
1681
  /**
1458
1682
  * Open the sliding item.
1459
1683
  * @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
1684
  */
1461
1685
  "open": (side: Side | undefined) => Promise<void>;
1686
+ /**
1687
+ * The theme determines the visual appearance of the component.
1688
+ */
1689
+ "theme"?: "ios" | "md" | "ionic";
1462
1690
  }
1463
1691
  interface IonLabel {
1464
1692
  /**
@@ -1466,13 +1694,17 @@ export namespace Components {
1466
1694
  */
1467
1695
  "color"?: Color;
1468
1696
  /**
1469
- * The mode determines which platform styles to use.
1697
+ * The mode determines the platform behaviors of the component.
1470
1698
  */
1471
1699
  "mode"?: "ios" | "md";
1472
1700
  /**
1473
1701
  * The position determines where and how the label behaves inside an item.
1474
1702
  */
1475
1703
  "position"?: 'fixed' | 'stacked' | 'floating';
1704
+ /**
1705
+ * The theme determines the visual appearance of the component.
1706
+ */
1707
+ "theme"?: "ios" | "md" | "ionic";
1476
1708
  }
1477
1709
  interface IonList {
1478
1710
  /**
@@ -1488,9 +1720,13 @@ export namespace Components {
1488
1720
  */
1489
1721
  "lines"?: 'full' | 'inset' | 'none';
1490
1722
  /**
1491
- * The mode determines which platform styles to use.
1723
+ * The mode determines the platform behaviors of the component.
1492
1724
  */
1493
1725
  "mode"?: "ios" | "md";
1726
+ /**
1727
+ * The theme determines the visual appearance of the component.
1728
+ */
1729
+ "theme"?: "ios" | "md" | "ionic";
1494
1730
  }
1495
1731
  interface IonListHeader {
1496
1732
  /**
@@ -1502,9 +1738,13 @@ export namespace Components {
1502
1738
  */
1503
1739
  "lines"?: 'full' | 'inset' | 'none';
1504
1740
  /**
1505
- * The mode determines which platform styles to use.
1741
+ * The mode determines the platform behaviors of the component.
1506
1742
  */
1507
1743
  "mode"?: "ios" | "md";
1744
+ /**
1745
+ * The theme determines the visual appearance of the component.
1746
+ */
1747
+ "theme"?: "ios" | "md" | "ionic";
1508
1748
  }
1509
1749
  interface IonLoading {
1510
1750
  /**
@@ -1556,7 +1796,7 @@ export namespace Components {
1556
1796
  */
1557
1797
  "message"?: string | IonicSafeString;
1558
1798
  /**
1559
- * The mode determines which platform styles to use.
1799
+ * The mode determines the platform behaviors of the component.
1560
1800
  */
1561
1801
  "mode"?: "ios" | "md";
1562
1802
  /**
@@ -1581,7 +1821,11 @@ export namespace Components {
1581
1821
  */
1582
1822
  "spinner"?: SpinnerTypes | null;
1583
1823
  /**
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).
1824
+ * The theme determines the visual appearance of the component.
1825
+ */
1826
+ "theme"?: "ios" | "md" | "ionic";
1827
+ /**
1828
+ * 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
1829
  */
1586
1830
  "translucent": boolean;
1587
1831
  /**
@@ -1618,6 +1862,10 @@ export namespace Components {
1618
1862
  * An id for the menu.
1619
1863
  */
1620
1864
  "menuId"?: string;
1865
+ /**
1866
+ * The mode determines the platform behaviors of the component.
1867
+ */
1868
+ "mode"?: "ios" | "md";
1621
1869
  /**
1622
1870
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1623
1871
  */
@@ -1634,6 +1882,10 @@ export namespace Components {
1634
1882
  * If `true`, swiping the menu is enabled.
1635
1883
  */
1636
1884
  "swipeGesture": boolean;
1885
+ /**
1886
+ * The theme determines the visual appearance of the component.
1887
+ */
1888
+ "theme"?: "ios" | "md" | "ionic";
1637
1889
  /**
1638
1890
  * 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
1891
  */
@@ -1661,9 +1913,13 @@ export namespace Components {
1661
1913
  */
1662
1914
  "menu"?: string;
1663
1915
  /**
1664
- * The mode determines which platform styles to use.
1916
+ * The mode determines the platform behaviors of the component.
1665
1917
  */
1666
1918
  "mode"?: "ios" | "md";
1919
+ /**
1920
+ * The theme determines the visual appearance of the component.
1921
+ */
1922
+ "theme"?: "ios" | "md" | "ionic";
1667
1923
  /**
1668
1924
  * The type of the button.
1669
1925
  */
@@ -1678,6 +1934,14 @@ export namespace Components {
1678
1934
  * 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
1935
  */
1680
1936
  "menu"?: string;
1937
+ /**
1938
+ * The mode determines the platform behaviors of the component.
1939
+ */
1940
+ "mode"?: "ios" | "md";
1941
+ /**
1942
+ * The theme determines the visual appearance of the component.
1943
+ */
1944
+ "theme"?: "ios" | "md" | "ionic";
1681
1945
  }
1682
1946
  interface IonModal {
1683
1947
  /**
@@ -1723,10 +1987,6 @@ export namespace Components {
1723
1987
  * Animation to use when the modal is presented.
1724
1988
  */
1725
1989
  "enterAnimation"?: AnimationBuilder;
1726
- /**
1727
- * If `true`, focus will not be allowed to move outside of this overlay. If 'false', focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
1728
- */
1729
- "focusTrap": boolean;
1730
1990
  /**
1731
1991
  * Returns the current breakpoint of a sheet style modal
1732
1992
  */
@@ -1765,7 +2025,7 @@ export namespace Components {
1765
2025
  */
1766
2026
  "leaveAnimation"?: AnimationBuilder;
1767
2027
  /**
1768
- * The mode determines which platform styles to use.
2028
+ * The mode determines the platform behaviors of the component.
1769
2029
  */
1770
2030
  "mode"?: "ios" | "md";
1771
2031
  /**
@@ -1793,6 +2053,10 @@ export namespace Components {
1793
2053
  * 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
2054
  */
1795
2055
  "showBackdrop": boolean;
2056
+ /**
2057
+ * The theme determines the visual appearance of the component.
2058
+ */
2059
+ "theme"?: "ios" | "md" | "ionic";
1796
2060
  /**
1797
2061
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1798
2062
  */
@@ -1804,7 +2068,7 @@ export namespace Components {
1804
2068
  */
1805
2069
  "animated": boolean;
1806
2070
  /**
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.
2071
+ * 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
2072
  */
1809
2073
  "animation"?: AnimationBuilder;
1810
2074
  /**
@@ -1852,6 +2116,10 @@ export namespace Components {
1852
2116
  * @param done The transition complete function.
1853
2117
  */
1854
2118
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2119
+ /**
2120
+ * The mode determines the platform behaviors of the component.
2121
+ */
2122
+ "mode"?: "ios" | "md";
1855
2123
  /**
1856
2124
  * Pop a component off of the navigation stack. Navigates back from the current component.
1857
2125
  * @param opts The navigation options.
@@ -1923,6 +2191,10 @@ export namespace Components {
1923
2191
  * If the nav component should allow for swipe-to-go-back.
1924
2192
  */
1925
2193
  "swipeGesture"?: boolean;
2194
+ /**
2195
+ * The theme determines the visual appearance of the component.
2196
+ */
2197
+ "theme"?: "ios" | "md" | "ionic";
1926
2198
  }
1927
2199
  interface IonNavLink {
1928
2200
  /**
@@ -1933,6 +2205,10 @@ export namespace Components {
1933
2205
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1934
2206
  */
1935
2207
  "componentProps"?: ComponentProps;
2208
+ /**
2209
+ * The mode determines the platform behaviors of the component.
2210
+ */
2211
+ "mode"?: "ios" | "md";
1936
2212
  /**
1937
2213
  * The transition animation when navigating to another page.
1938
2214
  */
@@ -1941,6 +2217,10 @@ export namespace Components {
1941
2217
  * The transition direction when navigating to another page.
1942
2218
  */
1943
2219
  "routerDirection": RouterDirection;
2220
+ /**
2221
+ * The theme determines the visual appearance of the component.
2222
+ */
2223
+ "theme"?: "ios" | "md" | "ionic";
1944
2224
  }
1945
2225
  interface IonNote {
1946
2226
  /**
@@ -1948,16 +2228,24 @@ export namespace Components {
1948
2228
  */
1949
2229
  "color"?: Color;
1950
2230
  /**
1951
- * The mode determines which platform styles to use.
2231
+ * The mode determines the platform behaviors of the component.
1952
2232
  */
1953
2233
  "mode"?: "ios" | "md";
2234
+ /**
2235
+ * The theme determines the visual appearance of the component.
2236
+ */
2237
+ "theme"?: "ios" | "md" | "ionic";
1954
2238
  }
1955
2239
  interface IonPicker {
1956
2240
  "exitInputMode": () => Promise<void>;
1957
2241
  /**
1958
- * The mode determines which platform styles to use.
2242
+ * The mode determines the platform behaviors of the component.
1959
2243
  */
1960
2244
  "mode"?: "ios" | "md";
2245
+ /**
2246
+ * The theme determines the visual appearance of the component.
2247
+ */
2248
+ "theme"?: "ios" | "md" | "ionic";
1961
2249
  }
1962
2250
  interface IonPickerColumn {
1963
2251
  /**
@@ -1969,7 +2257,7 @@ export namespace Components {
1969
2257
  */
1970
2258
  "disabled": boolean;
1971
2259
  /**
1972
- * The mode determines which platform styles to use.
2260
+ * The mode determines the platform behaviors of the component.
1973
2261
  */
1974
2262
  "mode"?: "ios" | "md";
1975
2263
  /**
@@ -1985,6 +2273,10 @@ export namespace Components {
1985
2273
  * 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
2274
  */
1987
2275
  "setValue": (value: PickerColumnValue) => Promise<void>;
2276
+ /**
2277
+ * The theme determines the visual appearance of the component.
2278
+ */
2279
+ "theme"?: "ios" | "md" | "ionic";
1988
2280
  /**
1989
2281
  * The selected option in the picker.
1990
2282
  */
@@ -1999,6 +2291,14 @@ export namespace Components {
1999
2291
  * If `true`, the user cannot interact with the picker column option.
2000
2292
  */
2001
2293
  "disabled": boolean;
2294
+ /**
2295
+ * The mode determines the platform behaviors of the component.
2296
+ */
2297
+ "mode"?: "ios" | "md";
2298
+ /**
2299
+ * The theme determines the visual appearance of the component.
2300
+ */
2301
+ "theme"?: "ios" | "md" | "ionic";
2002
2302
  /**
2003
2303
  * The text value of the option.
2004
2304
  */
@@ -2063,7 +2363,7 @@ export namespace Components {
2063
2363
  */
2064
2364
  "leaveAnimation"?: AnimationBuilder;
2065
2365
  /**
2066
- * The mode determines which platform styles to use.
2366
+ * The mode determines the platform behaviors of the component.
2067
2367
  */
2068
2368
  "mode"?: "ios" | "md";
2069
2369
  /**
@@ -2083,6 +2383,10 @@ export namespace Components {
2083
2383
  * If `true`, a backdrop will be displayed behind the picker.
2084
2384
  */
2085
2385
  "showBackdrop": boolean;
2386
+ /**
2387
+ * The theme determines the visual appearance of the component.
2388
+ */
2389
+ "theme"?: "ios" | "md" | "ionic";
2086
2390
  /**
2087
2391
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2088
2392
  */
@@ -2096,7 +2400,7 @@ export namespace Components {
2096
2400
  }
2097
2401
  interface IonPopover {
2098
2402
  /**
2099
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2403
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2100
2404
  */
2101
2405
  "alignment"?: PositionAlign;
2102
2406
  /**
@@ -2104,7 +2408,7 @@ export namespace Components {
2104
2408
  */
2105
2409
  "animated": boolean;
2106
2410
  /**
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.
2411
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2108
2412
  */
2109
2413
  "arrow": boolean;
2110
2414
  /**
@@ -2143,10 +2447,6 @@ export namespace Components {
2143
2447
  * The event to pass to the popover animation.
2144
2448
  */
2145
2449
  "event": any;
2146
- /**
2147
- * If `true`, focus will not be allowed to move outside of this overlay. If 'false', focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
2148
- */
2149
- "focusTrap": boolean;
2150
2450
  "getParentPopover": () => Promise<HTMLIonPopoverElement | null>;
2151
2451
  "hasController": boolean;
2152
2452
  /**
@@ -2171,7 +2471,7 @@ export namespace Components {
2171
2471
  */
2172
2472
  "leaveAnimation"?: AnimationBuilder;
2173
2473
  /**
2174
- * The mode determines which platform styles to use.
2474
+ * The mode determines the platform behaviors of the component.
2175
2475
  */
2176
2476
  "mode"?: "ios" | "md";
2177
2477
  /**
@@ -2208,7 +2508,11 @@ export namespace Components {
2208
2508
  */
2209
2509
  "size": PopoverSize;
2210
2510
  /**
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).
2511
+ * The theme determines the visual appearance of the component.
2512
+ */
2513
+ "theme"?: "ios" | "md" | "ionic";
2514
+ /**
2515
+ * 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
2516
  */
2213
2517
  "translucent": boolean;
2214
2518
  /**
@@ -2230,13 +2534,17 @@ export namespace Components {
2230
2534
  */
2231
2535
  "color"?: Color;
2232
2536
  /**
2233
- * The mode determines which platform styles to use.
2537
+ * The mode determines the platform behaviors of the component.
2234
2538
  */
2235
2539
  "mode"?: "ios" | "md";
2236
2540
  /**
2237
2541
  * If true, reverse the progress bar direction.
2238
2542
  */
2239
2543
  "reversed": boolean;
2544
+ /**
2545
+ * The theme determines the visual appearance of the component.
2546
+ */
2547
+ "theme"?: "ios" | "md" | "ionic";
2240
2548
  /**
2241
2549
  * 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
2550
  */
@@ -2268,7 +2576,7 @@ export namespace Components {
2268
2576
  */
2269
2577
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2270
2578
  /**
2271
- * The mode determines which platform styles to use.
2579
+ * The mode determines the platform behaviors of the component.
2272
2580
  */
2273
2581
  "mode"?: "ios" | "md";
2274
2582
  /**
@@ -2277,6 +2585,10 @@ export namespace Components {
2277
2585
  "name": string;
2278
2586
  "setButtonTabindex": (value: number) => Promise<void>;
2279
2587
  "setFocus": (ev: globalThis.Event) => Promise<void>;
2588
+ /**
2589
+ * The theme determines the visual appearance of the component.
2590
+ */
2591
+ "theme"?: "ios" | "md" | "ionic";
2280
2592
  /**
2281
2593
  * the value of the radio.
2282
2594
  */
@@ -2291,10 +2603,18 @@ export namespace Components {
2291
2603
  * 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
2604
  */
2293
2605
  "compareWith"?: string | RadioGroupCompareFn | null;
2606
+ /**
2607
+ * The mode determines the platform behaviors of the component.
2608
+ */
2609
+ "mode"?: "ios" | "md";
2294
2610
  /**
2295
2611
  * The name of the control, which is submitted with the form data.
2296
2612
  */
2297
2613
  "name": string;
2614
+ /**
2615
+ * The theme determines the visual appearance of the component.
2616
+ */
2617
+ "theme"?: "ios" | "md" | "ionic";
2298
2618
  /**
2299
2619
  * the value of the radio group.
2300
2620
  */
@@ -2338,7 +2658,7 @@ export namespace Components {
2338
2658
  */
2339
2659
  "min": number;
2340
2660
  /**
2341
- * The mode determines which platform styles to use.
2661
+ * The mode determines the platform behaviors of the component.
2342
2662
  */
2343
2663
  "mode"?: "ios" | "md";
2344
2664
  /**
@@ -2361,6 +2681,10 @@ export namespace Components {
2361
2681
  * Specifies the value granularity.
2362
2682
  */
2363
2683
  "step": number;
2684
+ /**
2685
+ * The theme determines the visual appearance of the component.
2686
+ */
2687
+ "theme"?: "ios" | "md" | "ionic";
2364
2688
  /**
2365
2689
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2366
2690
  */
@@ -2392,7 +2716,7 @@ export namespace Components {
2392
2716
  */
2393
2717
  "getProgress": () => Promise<number>;
2394
2718
  /**
2395
- * The mode determines which platform styles to use.
2719
+ * The mode determines the platform behaviors of the component.
2396
2720
  */
2397
2721
  "mode"?: "ios" | "md";
2398
2722
  /**
@@ -2411,8 +2735,16 @@ export namespace Components {
2411
2735
  * 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
2736
  */
2413
2737
  "snapbackDuration": string;
2738
+ /**
2739
+ * The theme determines the visual appearance of the component.
2740
+ */
2741
+ "theme"?: "ios" | "md" | "ionic";
2414
2742
  }
2415
2743
  interface IonRefresherContent {
2744
+ /**
2745
+ * The mode determines the platform behaviors of the component.
2746
+ */
2747
+ "mode"?: "ios" | "md";
2416
2748
  /**
2417
2749
  * 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
2750
  */
@@ -2429,8 +2761,20 @@ export namespace Components {
2429
2761
  * 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
2762
  */
2431
2763
  "refreshingText"?: string | IonicSafeString;
2764
+ /**
2765
+ * The theme determines the visual appearance of the component.
2766
+ */
2767
+ "theme"?: "ios" | "md" | "ionic";
2432
2768
  }
2433
2769
  interface IonReorder {
2770
+ /**
2771
+ * The mode determines the platform behaviors of the component.
2772
+ */
2773
+ "mode"?: "ios" | "md";
2774
+ /**
2775
+ * The theme determines the visual appearance of the component.
2776
+ */
2777
+ "theme"?: "ios" | "md" | "ionic";
2434
2778
  }
2435
2779
  interface IonReorderGroup {
2436
2780
  /**
@@ -2442,6 +2786,14 @@ export namespace Components {
2442
2786
  * If `true`, the reorder will be hidden.
2443
2787
  */
2444
2788
  "disabled": boolean;
2789
+ /**
2790
+ * The mode determines the platform behaviors of the component.
2791
+ */
2792
+ "mode"?: "ios" | "md";
2793
+ /**
2794
+ * The theme determines the visual appearance of the component.
2795
+ */
2796
+ "theme"?: "ios" | "md" | "ionic";
2445
2797
  }
2446
2798
  interface IonRippleEffect {
2447
2799
  /**
@@ -2450,6 +2802,14 @@ export namespace Components {
2450
2802
  * @param y The vertical coordinate of where the ripple should start.
2451
2803
  */
2452
2804
  "addRipple": (x: number, y: number) => Promise<() => void>;
2805
+ /**
2806
+ * The mode determines the platform behaviors of the component.
2807
+ */
2808
+ "mode"?: "ios" | "md";
2809
+ /**
2810
+ * The theme determines the visual appearance of the component.
2811
+ */
2812
+ "theme"?: "ios" | "md" | "ionic";
2453
2813
  /**
2454
2814
  * 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
2815
  */
@@ -2473,7 +2833,15 @@ export namespace Components {
2473
2833
  */
2474
2834
  "componentProps"?: { [key: string]: any };
2475
2835
  /**
2476
- * 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.
2836
+ * The mode determines the platform behaviors of the component.
2837
+ */
2838
+ "mode"?: "ios" | "md";
2839
+ /**
2840
+ * The theme determines the visual appearance of the component.
2841
+ */
2842
+ "theme"?: "ios" | "md" | "ionic";
2843
+ /**
2844
+ * 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
2845
  */
2478
2846
  "url": string;
2479
2847
  }
@@ -2493,6 +2861,10 @@ export namespace Components {
2493
2861
  */
2494
2862
  "back": () => Promise<void>;
2495
2863
  "canTransition": () => Promise<string | boolean>;
2864
+ /**
2865
+ * The mode determines the platform behaviors of the component.
2866
+ */
2867
+ "mode"?: "ios" | "md";
2496
2868
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2497
2869
  "printDebug": () => Promise<void>;
2498
2870
  /**
@@ -2505,6 +2877,10 @@ export namespace Components {
2505
2877
  * 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
2878
  */
2507
2879
  "root": string;
2880
+ /**
2881
+ * The theme determines the visual appearance of the component.
2882
+ */
2883
+ "theme"?: "ios" | "md" | "ionic";
2508
2884
  /**
2509
2885
  * 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
2886
  */
@@ -2519,6 +2895,10 @@ export namespace Components {
2519
2895
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2520
2896
  */
2521
2897
  "href": string | undefined;
2898
+ /**
2899
+ * The mode determines the platform behaviors of the component.
2900
+ */
2901
+ "mode"?: "ios" | "md";
2522
2902
  /**
2523
2903
  * 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
2904
  */
@@ -2535,6 +2915,10 @@ export namespace Components {
2535
2915
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2536
2916
  */
2537
2917
  "target": string | undefined;
2918
+ /**
2919
+ * The theme determines the visual appearance of the component.
2920
+ */
2921
+ "theme"?: "ios" | "md" | "ionic";
2538
2922
  }
2539
2923
  interface IonRouterOutlet {
2540
2924
  /**
@@ -2549,13 +2933,25 @@ export namespace Components {
2549
2933
  "delegate"?: FrameworkDelegate;
2550
2934
  "getRouteId": () => Promise<RouteID | undefined>;
2551
2935
  /**
2552
- * The mode determines which platform styles to use.
2936
+ * The mode determines the platform behaviors of the component.
2553
2937
  */
2554
2938
  "mode": "ios" | "md";
2555
2939
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2556
2940
  "swipeHandler"?: SwipeGestureHandler;
2941
+ /**
2942
+ * The theme determines the visual appearance of the component.
2943
+ */
2944
+ "theme"?: "ios" | "md" | "ionic";
2557
2945
  }
2558
2946
  interface IonRow {
2947
+ /**
2948
+ * The mode determines the platform behaviors of the component.
2949
+ */
2950
+ "mode"?: "ios" | "md";
2951
+ /**
2952
+ * The theme determines the visual appearance of the component.
2953
+ */
2954
+ "theme"?: "ios" | "md" | "ionic";
2559
2955
  }
2560
2956
  interface IonSearchbar {
2561
2957
  /**
@@ -2575,15 +2971,15 @@ export namespace Components {
2575
2971
  */
2576
2972
  "autocorrect": 'on' | 'off';
2577
2973
  /**
2578
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
2974
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2579
2975
  */
2580
2976
  "cancelButtonIcon": string;
2581
2977
  /**
2582
- * Set the the cancel button text. Only applies to `ios` mode.
2978
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
2583
2979
  */
2584
2980
  "cancelButtonText": string;
2585
2981
  /**
2586
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
2982
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2587
2983
  */
2588
2984
  "clearIcon"?: string;
2589
2985
  /**
@@ -2619,7 +3015,7 @@ export namespace Components {
2619
3015
  */
2620
3016
  "minlength"?: number;
2621
3017
  /**
2622
- * The mode determines which platform styles to use.
3018
+ * The mode determines the platform behaviors of the component.
2623
3019
  */
2624
3020
  "mode"?: "ios" | "md";
2625
3021
  /**
@@ -2631,7 +3027,7 @@ export namespace Components {
2631
3027
  */
2632
3028
  "placeholder": string;
2633
3029
  /**
2634
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3030
+ * 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
3031
  */
2636
3032
  "searchIcon"?: string;
2637
3033
  /**
@@ -2650,6 +3046,10 @@ export namespace Components {
2650
3046
  * If `true`, enable spellcheck on the input.
2651
3047
  */
2652
3048
  "spellcheck": boolean;
3049
+ /**
3050
+ * The theme determines the visual appearance of the component.
3051
+ */
3052
+ "theme"?: "ios" | "md" | "ionic";
2653
3053
  /**
2654
3054
  * Set the type of the input.
2655
3055
  */
@@ -2669,7 +3069,7 @@ export namespace Components {
2669
3069
  */
2670
3070
  "disabled": boolean;
2671
3071
  /**
2672
- * The mode determines which platform styles to use.
3072
+ * The mode determines the platform behaviors of the component.
2673
3073
  */
2674
3074
  "mode"?: "ios" | "md";
2675
3075
  /**
@@ -2684,6 +3084,10 @@ export namespace Components {
2684
3084
  * If `true`, users will be able to swipe between segment buttons to activate them.
2685
3085
  */
2686
3086
  "swipeGesture": boolean;
3087
+ /**
3088
+ * The theme determines the visual appearance of the component.
3089
+ */
3090
+ "theme"?: "ios" | "md" | "ionic";
2687
3091
  /**
2688
3092
  * the value of the segment.
2689
3093
  */
@@ -2699,10 +3103,14 @@ export namespace Components {
2699
3103
  */
2700
3104
  "layout"?: SegmentButtonLayout;
2701
3105
  /**
2702
- * The mode determines which platform styles to use.
3106
+ * The mode determines the platform behaviors of the component.
2703
3107
  */
2704
3108
  "mode"?: "ios" | "md";
2705
3109
  "setFocus": () => Promise<void>;
3110
+ /**
3111
+ * The theme determines the visual appearance of the component.
3112
+ */
3113
+ "theme"?: "ios" | "md" | "ionic";
2706
3114
  /**
2707
3115
  * The type of the button.
2708
3116
  */
@@ -2730,11 +3138,11 @@ export namespace Components {
2730
3138
  */
2731
3139
  "disabled": boolean;
2732
3140
  /**
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.
3141
+ * 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
3142
  */
2735
3143
  "expandedIcon"?: string;
2736
3144
  /**
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.
3145
+ * 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
3146
  */
2739
3147
  "fill"?: 'outline' | 'solid';
2740
3148
  /**
@@ -2758,7 +3166,7 @@ export namespace Components {
2758
3166
  */
2759
3167
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2760
3168
  /**
2761
- * The mode determines which platform styles to use.
3169
+ * The mode determines the platform behaviors of the component.
2762
3170
  */
2763
3171
  "mode"?: "ios" | "md";
2764
3172
  /**
@@ -2791,7 +3199,11 @@ export namespace Components {
2791
3199
  */
2792
3200
  "shape"?: 'round';
2793
3201
  /**
2794
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3202
+ * The theme determines the visual appearance of the component.
3203
+ */
3204
+ "theme"?: "ios" | "md" | "ionic";
3205
+ /**
3206
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2795
3207
  */
2796
3208
  "toggleIcon"?: string;
2797
3209
  /**
@@ -2804,6 +3216,14 @@ export namespace Components {
2804
3216
  * 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
3217
  */
2806
3218
  "disabled": boolean;
3219
+ /**
3220
+ * The mode determines the platform behaviors of the component.
3221
+ */
3222
+ "mode"?: "ios" | "md";
3223
+ /**
3224
+ * The theme determines the visual appearance of the component.
3225
+ */
3226
+ "theme"?: "ios" | "md" | "ionic";
2807
3227
  /**
2808
3228
  * The text value of the option.
2809
3229
  */
@@ -2818,6 +3238,10 @@ export namespace Components {
2818
3238
  * The text content of the popover body
2819
3239
  */
2820
3240
  "message"?: string;
3241
+ /**
3242
+ * The mode determines the platform behaviors of the component.
3243
+ */
3244
+ "mode"?: "ios" | "md";
2821
3245
  /**
2822
3246
  * If true, the select accepts multiple values
2823
3247
  */
@@ -2830,12 +3254,24 @@ export namespace Components {
2830
3254
  * The subheader text of the popover
2831
3255
  */
2832
3256
  "subHeader"?: string;
3257
+ /**
3258
+ * The theme determines the visual appearance of the component.
3259
+ */
3260
+ "theme"?: "ios" | "md" | "ionic";
2833
3261
  }
2834
3262
  interface IonSkeletonText {
2835
3263
  /**
2836
3264
  * If `true`, the skeleton text will animate.
2837
3265
  */
2838
3266
  "animated": boolean;
3267
+ /**
3268
+ * The mode determines the platform behaviors of the component.
3269
+ */
3270
+ "mode"?: "ios" | "md";
3271
+ /**
3272
+ * The theme determines the visual appearance of the component.
3273
+ */
3274
+ "theme"?: "ios" | "md" | "ionic";
2839
3275
  }
2840
3276
  interface IonSpinner {
2841
3277
  /**
@@ -2846,6 +3282,10 @@ export namespace Components {
2846
3282
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2847
3283
  */
2848
3284
  "duration"?: number;
3285
+ /**
3286
+ * The mode determines the platform behaviors of the component.
3287
+ */
3288
+ "mode"?: "ios" | "md";
2849
3289
  /**
2850
3290
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2851
3291
  */
@@ -2854,6 +3294,10 @@ export namespace Components {
2854
3294
  * If `true`, the spinner's animation will be paused.
2855
3295
  */
2856
3296
  "paused": boolean;
3297
+ /**
3298
+ * The theme determines the visual appearance of the component.
3299
+ */
3300
+ "theme"?: "ios" | "md" | "ionic";
2857
3301
  }
2858
3302
  interface IonSplitPane {
2859
3303
  /**
@@ -2865,6 +3309,14 @@ export namespace Components {
2865
3309
  */
2866
3310
  "disabled": boolean;
2867
3311
  "isVisible": () => Promise<boolean>;
3312
+ /**
3313
+ * The mode determines the platform behaviors of the component.
3314
+ */
3315
+ "mode"?: "ios" | "md";
3316
+ /**
3317
+ * The theme determines the visual appearance of the component.
3318
+ */
3319
+ "theme"?: "ios" | "md" | "ionic";
2868
3320
  /**
2869
3321
  * 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
3322
  */
@@ -2877,6 +3329,10 @@ export namespace Components {
2877
3329
  */
2878
3330
  "component"?: ComponentRef;
2879
3331
  "delegate"?: FrameworkDelegate;
3332
+ /**
3333
+ * The mode determines the platform behaviors of the component.
3334
+ */
3335
+ "mode"?: "ios" | "md";
2880
3336
  /**
2881
3337
  * Set the active component for the tab
2882
3338
  */
@@ -2885,6 +3341,10 @@ export namespace Components {
2885
3341
  * 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
3342
  */
2887
3343
  "tab": string;
3344
+ /**
3345
+ * The theme determines the visual appearance of the component.
3346
+ */
3347
+ "theme"?: "ios" | "md" | "ionic";
2888
3348
  }
2889
3349
  interface IonTabBar {
2890
3350
  /**
@@ -2892,7 +3352,7 @@ export namespace Components {
2892
3352
  */
2893
3353
  "color"?: Color;
2894
3354
  /**
2895
- * The mode determines which platform styles to use.
3355
+ * The mode determines the platform behaviors of the component.
2896
3356
  */
2897
3357
  "mode"?: "ios" | "md";
2898
3358
  /**
@@ -2900,7 +3360,11 @@ export namespace Components {
2900
3360
  */
2901
3361
  "selectedTab"?: string;
2902
3362
  /**
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).
3363
+ * The theme determines the visual appearance of the component.
3364
+ */
3365
+ "theme"?: "ios" | "md" | "ionic";
3366
+ /**
3367
+ * 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
3368
  */
2905
3369
  "translucent": boolean;
2906
3370
  }
@@ -2922,7 +3386,7 @@ export namespace Components {
2922
3386
  */
2923
3387
  "layout"?: TabButtonLayout;
2924
3388
  /**
2925
- * The mode determines which platform styles to use.
3389
+ * The mode determines the platform behaviors of the component.
2926
3390
  */
2927
3391
  "mode"?: "ios" | "md";
2928
3392
  /**
@@ -2941,6 +3405,10 @@ export namespace Components {
2941
3405
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2942
3406
  */
2943
3407
  "target": string | undefined;
3408
+ /**
3409
+ * The theme determines the visual appearance of the component.
3410
+ */
3411
+ "theme"?: "ios" | "md" | "ionic";
2944
3412
  }
2945
3413
  interface IonTabs {
2946
3414
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2953,12 +3421,20 @@ export namespace Components {
2953
3421
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2954
3422
  */
2955
3423
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3424
+ /**
3425
+ * The mode determines the platform behaviors of the component.
3426
+ */
3427
+ "mode"?: "ios" | "md";
2956
3428
  /**
2957
3429
  * 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
3430
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2959
3431
  */
2960
3432
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2961
3433
  "setRouteId": (id: string) => Promise<RouteWrite>;
3434
+ /**
3435
+ * The theme determines the visual appearance of the component.
3436
+ */
3437
+ "theme"?: "ios" | "md" | "ionic";
2962
3438
  "useRouter": boolean;
2963
3439
  }
2964
3440
  interface IonText {
@@ -2967,9 +3443,13 @@ export namespace Components {
2967
3443
  */
2968
3444
  "color"?: Color;
2969
3445
  /**
2970
- * The mode determines which platform styles to use.
3446
+ * The mode determines the platform behaviors of the component.
2971
3447
  */
2972
3448
  "mode"?: "ios" | "md";
3449
+ /**
3450
+ * The theme determines the visual appearance of the component.
3451
+ */
3452
+ "theme"?: "ios" | "md" | "ionic";
2973
3453
  }
2974
3454
  interface IonTextarea {
2975
3455
  /**
@@ -3021,7 +3501,7 @@ export namespace Components {
3021
3501
  */
3022
3502
  "errorText"?: string;
3023
3503
  /**
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.
3504
+ * 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
3505
  */
3026
3506
  "fill"?: 'outline' | 'solid';
3027
3507
  /**
@@ -3053,7 +3533,7 @@ export namespace Components {
3053
3533
  */
3054
3534
  "minlength"?: number;
3055
3535
  /**
3056
- * The mode determines which platform styles to use.
3536
+ * The mode determines the platform behaviors of the component.
3057
3537
  */
3058
3538
  "mode"?: "ios" | "md";
3059
3539
  /**
@@ -3088,6 +3568,10 @@ export namespace Components {
3088
3568
  * If `true`, the element will have its spelling and grammar checked.
3089
3569
  */
3090
3570
  "spellcheck": boolean;
3571
+ /**
3572
+ * The theme determines the visual appearance of the component.
3573
+ */
3574
+ "theme"?: "ios" | "md" | "ionic";
3091
3575
  /**
3092
3576
  * The value of the textarea.
3093
3577
  */
@@ -3098,16 +3582,32 @@ export namespace Components {
3098
3582
  "wrap"?: 'hard' | 'soft' | 'off';
3099
3583
  }
3100
3584
  interface IonThumbnail {
3585
+ /**
3586
+ * The mode determines the platform behaviors of the component.
3587
+ */
3588
+ "mode"?: "ios" | "md";
3589
+ /**
3590
+ * The theme determines the visual appearance of the component.
3591
+ */
3592
+ "theme"?: "ios" | "md" | "ionic";
3101
3593
  }
3102
3594
  interface IonTitle {
3103
3595
  /**
3104
3596
  * 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
3597
  */
3106
3598
  "color"?: Color;
3599
+ /**
3600
+ * The mode determines the platform behaviors of the component.
3601
+ */
3602
+ "mode"?: "ios" | "md";
3107
3603
  /**
3108
3604
  * The size of the toolbar title.
3109
3605
  */
3110
3606
  "size"?: 'large' | 'small';
3607
+ /**
3608
+ * The theme determines the visual appearance of the component.
3609
+ */
3610
+ "theme"?: "ios" | "md" | "ionic";
3111
3611
  }
3112
3612
  interface IonToast {
3113
3613
  /**
@@ -3175,7 +3675,7 @@ export namespace Components {
3175
3675
  */
3176
3676
  "message"?: string | IonicSafeString;
3177
3677
  /**
3178
- * The mode determines which platform styles to use.
3678
+ * The mode determines the platform behaviors of the component.
3179
3679
  */
3180
3680
  "mode"?: "ios" | "md";
3181
3681
  /**
@@ -3204,7 +3704,11 @@ export namespace Components {
3204
3704
  */
3205
3705
  "swipeGesture"?: ToastSwipeGestureDirection;
3206
3706
  /**
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).
3707
+ * The theme determines the visual appearance of the component.
3708
+ */
3709
+ "theme"?: "ios" | "md" | "ionic";
3710
+ /**
3711
+ * 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
3712
  */
3209
3713
  "translucent": boolean;
3210
3714
  /**
@@ -3242,13 +3746,17 @@ export namespace Components {
3242
3746
  */
3243
3747
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3244
3748
  /**
3245
- * The mode determines which platform styles to use.
3749
+ * The mode determines the platform behaviors of the component.
3246
3750
  */
3247
3751
  "mode"?: "ios" | "md";
3248
3752
  /**
3249
3753
  * The name of the control, which is submitted with the form data.
3250
3754
  */
3251
3755
  "name": string;
3756
+ /**
3757
+ * The theme determines the visual appearance of the component.
3758
+ */
3759
+ "theme"?: "ios" | "md" | "ionic";
3252
3760
  /**
3253
3761
  * 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
3762
  */
@@ -3260,9 +3768,13 @@ export namespace Components {
3260
3768
  */
3261
3769
  "color"?: Color;
3262
3770
  /**
3263
- * The mode determines which platform styles to use.
3771
+ * The mode determines the platform behaviors of the component.
3264
3772
  */
3265
3773
  "mode"?: "ios" | "md";
3774
+ /**
3775
+ * The theme determines the visual appearance of the component.
3776
+ */
3777
+ "theme"?: "ios" | "md" | "ionic";
3266
3778
  }
3267
3779
  }
3268
3780
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4744,13 +5256,17 @@ declare namespace LocalJSX {
4744
5256
  */
4745
5257
  "disabled"?: boolean;
4746
5258
  /**
4747
- * The mode determines which platform styles to use.
5259
+ * The mode determines the platform behaviors of the component.
4748
5260
  */
4749
5261
  "mode"?: "ios" | "md";
4750
5262
  /**
4751
5263
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4752
5264
  */
4753
5265
  "readonly"?: boolean;
5266
+ /**
5267
+ * The theme determines the visual appearance of the component.
5268
+ */
5269
+ "theme"?: "ios" | "md" | "ionic";
4754
5270
  /**
4755
5271
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4756
5272
  */
@@ -4778,7 +5294,7 @@ declare namespace LocalJSX {
4778
5294
  */
4779
5295
  "expand"?: 'compact' | 'inset';
4780
5296
  /**
4781
- * The mode determines which platform styles to use.
5297
+ * The mode determines the platform behaviors of the component.
4782
5298
  */
4783
5299
  "mode"?: "ios" | "md";
4784
5300
  /**
@@ -4793,6 +5309,10 @@ declare namespace LocalJSX {
4793
5309
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4794
5310
  */
4795
5311
  "readonly"?: boolean;
5312
+ /**
5313
+ * The theme determines the visual appearance of the component.
5314
+ */
5315
+ "theme"?: "ios" | "md" | "ionic";
4796
5316
  /**
4797
5317
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4798
5318
  */
@@ -4840,7 +5360,7 @@ declare namespace LocalJSX {
4840
5360
  */
4841
5361
  "leaveAnimation"?: AnimationBuilder;
4842
5362
  /**
4843
- * The mode determines which platform styles to use.
5363
+ * The mode determines the platform behaviors of the component.
4844
5364
  */
4845
5365
  "mode"?: "ios" | "md";
4846
5366
  /**
@@ -4880,7 +5400,11 @@ declare namespace LocalJSX {
4880
5400
  */
4881
5401
  "subHeader"?: string;
4882
5402
  /**
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).
5403
+ * The theme determines the visual appearance of the component.
5404
+ */
5405
+ "theme"?: "ios" | "md" | "ionic";
5406
+ /**
5407
+ * 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
5408
  */
4885
5409
  "translucent"?: boolean;
4886
5410
  /**
@@ -4938,7 +5462,7 @@ declare namespace LocalJSX {
4938
5462
  */
4939
5463
  "message"?: string | IonicSafeString;
4940
5464
  /**
4941
- * The mode determines which platform styles to use.
5465
+ * The mode determines the platform behaviors of the component.
4942
5466
  */
4943
5467
  "mode"?: "ios" | "md";
4944
5468
  /**
@@ -4978,7 +5502,11 @@ declare namespace LocalJSX {
4978
5502
  */
4979
5503
  "subHeader"?: string;
4980
5504
  /**
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).
5505
+ * The theme determines the visual appearance of the component.
5506
+ */
5507
+ "theme"?: "ios" | "md" | "ionic";
5508
+ /**
5509
+ * 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
5510
  */
4983
5511
  "translucent"?: boolean;
4984
5512
  /**
@@ -4987,8 +5515,24 @@ declare namespace LocalJSX {
4987
5515
  "trigger"?: string | undefined;
4988
5516
  }
4989
5517
  interface IonApp {
5518
+ /**
5519
+ * The mode determines the platform behaviors of the component.
5520
+ */
5521
+ "mode"?: "ios" | "md";
5522
+ /**
5523
+ * The theme determines the visual appearance of the component.
5524
+ */
5525
+ "theme"?: "ios" | "md" | "ionic";
4990
5526
  }
4991
5527
  interface IonAvatar {
5528
+ /**
5529
+ * The mode determines the platform behaviors of the component.
5530
+ */
5531
+ "mode"?: "ios" | "md";
5532
+ /**
5533
+ * The theme determines the visual appearance of the component.
5534
+ */
5535
+ "theme"?: "ios" | "md" | "ionic";
4992
5536
  }
4993
5537
  interface IonBackButton {
4994
5538
  /**
@@ -5008,7 +5552,7 @@ declare namespace LocalJSX {
5008
5552
  */
5009
5553
  "icon"?: string | null;
5010
5554
  /**
5011
- * The mode determines which platform styles to use.
5555
+ * The mode determines the platform behaviors of the component.
5012
5556
  */
5013
5557
  "mode"?: "ios" | "md";
5014
5558
  /**
@@ -5019,12 +5563,20 @@ declare namespace LocalJSX {
5019
5563
  * The text to display in the back button.
5020
5564
  */
5021
5565
  "text"?: string | null;
5566
+ /**
5567
+ * The theme determines the visual appearance of the component.
5568
+ */
5569
+ "theme"?: "ios" | "md" | "ionic";
5022
5570
  /**
5023
5571
  * The type of the button.
5024
5572
  */
5025
5573
  "type"?: 'submit' | 'reset' | 'button';
5026
5574
  }
5027
5575
  interface IonBackdrop {
5576
+ /**
5577
+ * The mode determines the platform behaviors of the component.
5578
+ */
5579
+ "mode"?: "ios" | "md";
5028
5580
  /**
5029
5581
  * Emitted when the backdrop is tapped.
5030
5582
  */
@@ -5037,6 +5589,10 @@ declare namespace LocalJSX {
5037
5589
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5038
5590
  */
5039
5591
  "tappable"?: boolean;
5592
+ /**
5593
+ * The theme determines the visual appearance of the component.
5594
+ */
5595
+ "theme"?: "ios" | "md" | "ionic";
5040
5596
  /**
5041
5597
  * If `true`, the backdrop will be visible.
5042
5598
  */
@@ -5048,9 +5604,13 @@ declare namespace LocalJSX {
5048
5604
  */
5049
5605
  "color"?: Color;
5050
5606
  /**
5051
- * The mode determines which platform styles to use.
5607
+ * The mode determines the platform behaviors of the component.
5052
5608
  */
5053
5609
  "mode"?: "ios" | "md";
5610
+ /**
5611
+ * The theme determines the visual appearance of the component.
5612
+ */
5613
+ "theme"?: "ios" | "md" | "ionic";
5054
5614
  }
5055
5615
  interface IonBreadcrumb {
5056
5616
  /**
@@ -5074,7 +5634,7 @@ declare namespace LocalJSX {
5074
5634
  */
5075
5635
  "href"?: string | undefined;
5076
5636
  /**
5077
- * The mode determines which platform styles to use.
5637
+ * The mode determines the platform behaviors of the component.
5078
5638
  */
5079
5639
  "mode"?: "ios" | "md";
5080
5640
  /**
@@ -5105,6 +5665,10 @@ declare namespace LocalJSX {
5105
5665
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5106
5666
  */
5107
5667
  "target"?: string | undefined;
5668
+ /**
5669
+ * The theme determines the visual appearance of the component.
5670
+ */
5671
+ "theme"?: "ios" | "md" | "ionic";
5108
5672
  }
5109
5673
  interface IonBreadcrumbs {
5110
5674
  /**
@@ -5124,13 +5688,17 @@ declare namespace LocalJSX {
5124
5688
  */
5125
5689
  "maxItems"?: number;
5126
5690
  /**
5127
- * The mode determines which platform styles to use.
5691
+ * The mode determines the platform behaviors of the component.
5128
5692
  */
5129
5693
  "mode"?: "ios" | "md";
5130
5694
  /**
5131
5695
  * Emitted when the collapsed indicator is clicked on.
5132
5696
  */
5133
5697
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5698
+ /**
5699
+ * The theme determines the visual appearance of the component.
5700
+ */
5701
+ "theme"?: "ios" | "md" | "ionic";
5134
5702
  }
5135
5703
  interface IonButton {
5136
5704
  /**
@@ -5166,7 +5734,7 @@ declare namespace LocalJSX {
5166
5734
  */
5167
5735
  "href"?: string | undefined;
5168
5736
  /**
5169
- * The mode determines which platform styles to use.
5737
+ * The mode determines the platform behaviors of the component.
5170
5738
  */
5171
5739
  "mode"?: "ios" | "md";
5172
5740
  /**
@@ -5190,13 +5758,13 @@ declare namespace LocalJSX {
5190
5758
  */
5191
5759
  "routerDirection"?: RouterDirection;
5192
5760
  /**
5193
- * Set to `"round"` for a button with more rounded corners.
5761
+ * Set to `"soft"` for a button with soft rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular" for a button without rounded corners. Defaults to `"soft"` for the `"ios`" and `"ionic"` themes and `"round"` for the `"md"` theme.
5194
5762
  */
5195
- "shape"?: 'round';
5763
+ "shape"?: 'soft' | 'round' | 'rectangular';
5196
5764
  /**
5197
5765
  * 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
5766
  */
5199
- "size"?: 'small' | 'default' | 'large';
5767
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5200
5768
  /**
5201
5769
  * If `true`, activates a button with a heavier font weight.
5202
5770
  */
@@ -5205,6 +5773,10 @@ declare namespace LocalJSX {
5205
5773
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5206
5774
  */
5207
5775
  "target"?: string | undefined;
5776
+ /**
5777
+ * The theme determines the visual appearance of the component.
5778
+ */
5779
+ "theme"?: "ios" | "md" | "ionic";
5208
5780
  /**
5209
5781
  * The type of the button.
5210
5782
  */
@@ -5212,9 +5784,17 @@ declare namespace LocalJSX {
5212
5784
  }
5213
5785
  interface IonButtons {
5214
5786
  /**
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)
5787
+ * 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
5788
  */
5217
5789
  "collapse"?: boolean;
5790
+ /**
5791
+ * The mode determines the platform behaviors of the component.
5792
+ */
5793
+ "mode"?: "ios" | "md";
5794
+ /**
5795
+ * The theme determines the visual appearance of the component.
5796
+ */
5797
+ "theme"?: "ios" | "md" | "ionic";
5218
5798
  }
5219
5799
  interface IonCard {
5220
5800
  /**
@@ -5238,7 +5818,7 @@ declare namespace LocalJSX {
5238
5818
  */
5239
5819
  "href"?: string | undefined;
5240
5820
  /**
5241
- * The mode determines which platform styles to use.
5821
+ * The mode determines the platform behaviors of the component.
5242
5822
  */
5243
5823
  "mode"?: "ios" | "md";
5244
5824
  /**
@@ -5253,10 +5833,18 @@ declare namespace LocalJSX {
5253
5833
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5254
5834
  */
5255
5835
  "routerDirection"?: RouterDirection;
5836
+ /**
5837
+ * Set to `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners.
5838
+ */
5839
+ "shape"?: 'round' | 'rectangular';
5256
5840
  /**
5257
5841
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5258
5842
  */
5259
5843
  "target"?: string | undefined;
5844
+ /**
5845
+ * The theme determines the visual appearance of the component.
5846
+ */
5847
+ "theme"?: "ios" | "md" | "ionic";
5260
5848
  /**
5261
5849
  * The type of the button. Only used when an `onclick` or `button` property is present.
5262
5850
  */
@@ -5264,9 +5852,13 @@ declare namespace LocalJSX {
5264
5852
  }
5265
5853
  interface IonCardContent {
5266
5854
  /**
5267
- * The mode determines which platform styles to use.
5855
+ * The mode determines the platform behaviors of the component.
5268
5856
  */
5269
5857
  "mode"?: "ios" | "md";
5858
+ /**
5859
+ * The theme determines the visual appearance of the component.
5860
+ */
5861
+ "theme"?: "ios" | "md" | "ionic";
5270
5862
  }
5271
5863
  interface IonCardHeader {
5272
5864
  /**
@@ -5274,11 +5866,15 @@ declare namespace LocalJSX {
5274
5866
  */
5275
5867
  "color"?: Color;
5276
5868
  /**
5277
- * The mode determines which platform styles to use.
5869
+ * The mode determines the platform behaviors of the component.
5278
5870
  */
5279
5871
  "mode"?: "ios" | "md";
5280
5872
  /**
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).
5873
+ * The theme determines the visual appearance of the component.
5874
+ */
5875
+ "theme"?: "ios" | "md" | "ionic";
5876
+ /**
5877
+ * 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
5878
  */
5283
5879
  "translucent"?: boolean;
5284
5880
  }
@@ -5288,9 +5884,13 @@ declare namespace LocalJSX {
5288
5884
  */
5289
5885
  "color"?: Color;
5290
5886
  /**
5291
- * The mode determines which platform styles to use.
5887
+ * The mode determines the platform behaviors of the component.
5292
5888
  */
5293
5889
  "mode"?: "ios" | "md";
5890
+ /**
5891
+ * The theme determines the visual appearance of the component.
5892
+ */
5893
+ "theme"?: "ios" | "md" | "ionic";
5294
5894
  }
5295
5895
  interface IonCardTitle {
5296
5896
  /**
@@ -5298,9 +5898,13 @@ declare namespace LocalJSX {
5298
5898
  */
5299
5899
  "color"?: Color;
5300
5900
  /**
5301
- * The mode determines which platform styles to use.
5901
+ * The mode determines the platform behaviors of the component.
5302
5902
  */
5303
5903
  "mode"?: "ios" | "md";
5904
+ /**
5905
+ * The theme determines the visual appearance of the component.
5906
+ */
5907
+ "theme"?: "ios" | "md" | "ionic";
5304
5908
  }
5305
5909
  interface IonCheckbox {
5306
5910
  /**
@@ -5332,7 +5936,7 @@ declare namespace LocalJSX {
5332
5936
  */
5333
5937
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5334
5938
  /**
5335
- * The mode determines which platform styles to use.
5939
+ * The mode determines the platform behaviors of the component.
5336
5940
  */
5337
5941
  "mode"?: "ios" | "md";
5338
5942
  /**
@@ -5351,6 +5955,10 @@ declare namespace LocalJSX {
5351
5955
  * Emitted when the checkbox has focus.
5352
5956
  */
5353
5957
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
5958
+ /**
5959
+ * The theme determines the visual appearance of the component.
5960
+ */
5961
+ "theme"?: "ios" | "md" | "ionic";
5354
5962
  /**
5355
5963
  * 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
5964
  */
@@ -5366,15 +5974,27 @@ declare namespace LocalJSX {
5366
5974
  */
5367
5975
  "disabled"?: boolean;
5368
5976
  /**
5369
- * The mode determines which platform styles to use.
5977
+ * The mode determines the platform behaviors of the component.
5370
5978
  */
5371
5979
  "mode"?: "ios" | "md";
5372
5980
  /**
5373
5981
  * Display an outline style button.
5374
5982
  */
5375
5983
  "outline"?: boolean;
5984
+ /**
5985
+ * Define the Chip corner shape, when using the Ionic Theme.
5986
+ */
5987
+ "shape"?: 'round' | 'rectangular';
5988
+ /**
5989
+ * The theme determines the visual appearance of the component.
5990
+ */
5991
+ "theme"?: "ios" | "md" | "ionic";
5376
5992
  }
5377
5993
  interface IonCol {
5994
+ /**
5995
+ * The mode determines the platform behaviors of the component.
5996
+ */
5997
+ "mode"?: "ios" | "md";
5378
5998
  /**
5379
5999
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5380
6000
  */
@@ -5471,6 +6091,10 @@ declare namespace LocalJSX {
5471
6091
  * 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
6092
  */
5473
6093
  "sizeXs"?: string;
6094
+ /**
6095
+ * The theme determines the visual appearance of the component.
6096
+ */
6097
+ "theme"?: "ios" | "md" | "ionic";
5474
6098
  }
5475
6099
  interface IonContent {
5476
6100
  /**
@@ -5489,6 +6113,10 @@ declare namespace LocalJSX {
5489
6113
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5490
6114
  */
5491
6115
  "fullscreen"?: boolean;
6116
+ /**
6117
+ * The mode determines the platform behaviors of the component.
6118
+ */
6119
+ "mode"?: "ios" | "md";
5492
6120
  /**
5493
6121
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5494
6122
  */
@@ -5513,6 +6141,10 @@ declare namespace LocalJSX {
5513
6141
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5514
6142
  */
5515
6143
  "scrollY"?: boolean;
6144
+ /**
6145
+ * The theme determines the visual appearance of the component.
6146
+ */
6147
+ "theme"?: "ios" | "md" | "ionic";
5516
6148
  }
5517
6149
  interface IonDatetime {
5518
6150
  /**
@@ -5580,7 +6212,7 @@ declare namespace LocalJSX {
5580
6212
  */
5581
6213
  "minuteValues"?: number[] | number | string;
5582
6214
  /**
5583
- * The mode determines which platform styles to use.
6215
+ * The mode determines the platform behaviors of the component.
5584
6216
  */
5585
6217
  "mode"?: "ios" | "md";
5586
6218
  /**
@@ -5643,6 +6275,10 @@ declare namespace LocalJSX {
5643
6275
  * 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
6276
  */
5645
6277
  "size"?: 'cover' | 'fixed';
6278
+ /**
6279
+ * The theme determines the visual appearance of the component.
6280
+ */
6281
+ "theme"?: "ios" | "md" | "ionic";
5646
6282
  /**
5647
6283
  * 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
6284
  */
@@ -5670,9 +6306,13 @@ declare namespace LocalJSX {
5670
6306
  */
5671
6307
  "disabled"?: boolean;
5672
6308
  /**
5673
- * The mode determines which platform styles to use.
6309
+ * The mode determines the platform behaviors of the component.
5674
6310
  */
5675
6311
  "mode"?: "ios" | "md";
6312
+ /**
6313
+ * The theme determines the visual appearance of the component.
6314
+ */
6315
+ "theme"?: "ios" | "md" | "ionic";
5676
6316
  }
5677
6317
  interface IonFab {
5678
6318
  /**
@@ -5687,6 +6327,14 @@ declare namespace LocalJSX {
5687
6327
  * Where to align the fab horizontally in the viewport.
5688
6328
  */
5689
6329
  "horizontal"?: 'start' | 'end' | 'center';
6330
+ /**
6331
+ * The mode determines the platform behaviors of the component.
6332
+ */
6333
+ "mode"?: "ios" | "md";
6334
+ /**
6335
+ * The theme determines the visual appearance of the component.
6336
+ */
6337
+ "theme"?: "ios" | "md" | "ionic";
5690
6338
  /**
5691
6339
  * Where to align the fab vertically in the viewport.
5692
6340
  */
@@ -5718,7 +6366,7 @@ declare namespace LocalJSX {
5718
6366
  */
5719
6367
  "href"?: string | undefined;
5720
6368
  /**
5721
- * The mode determines which platform styles to use.
6369
+ * The mode determines the platform behaviors of the component.
5722
6370
  */
5723
6371
  "mode"?: "ios" | "md";
5724
6372
  /**
@@ -5754,7 +6402,11 @@ declare namespace LocalJSX {
5754
6402
  */
5755
6403
  "target"?: string | undefined;
5756
6404
  /**
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).
6405
+ * The theme determines the visual appearance of the component.
6406
+ */
6407
+ "theme"?: "ios" | "md" | "ionic";
6408
+ /**
6409
+ * 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
6410
  */
5759
6411
  "translucent"?: boolean;
5760
6412
  /**
@@ -5767,22 +6419,34 @@ declare namespace LocalJSX {
5767
6419
  * If `true`, the fab list will show all fab buttons in the list.
5768
6420
  */
5769
6421
  "activated"?: boolean;
6422
+ /**
6423
+ * The mode determines the platform behaviors of the component.
6424
+ */
6425
+ "mode"?: "ios" | "md";
5770
6426
  /**
5771
6427
  * The side the fab list will show on relative to the main fab button.
5772
6428
  */
5773
6429
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6430
+ /**
6431
+ * The theme determines the visual appearance of the component.
6432
+ */
6433
+ "theme"?: "ios" | "md" | "ionic";
5774
6434
  }
5775
6435
  interface IonFooter {
5776
6436
  /**
5777
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6437
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5778
6438
  */
5779
6439
  "collapse"?: 'fade';
5780
6440
  /**
5781
- * The mode determines which platform styles to use.
6441
+ * The mode determines the platform behaviors of the component.
5782
6442
  */
5783
6443
  "mode"?: "ios" | "md";
5784
6444
  /**
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.
6445
+ * The theme determines the visual appearance of the component.
6446
+ */
6447
+ "theme"?: "ios" | "md" | "ionic";
6448
+ /**
6449
+ * 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
6450
  */
5787
6451
  "translucent"?: boolean;
5788
6452
  }
@@ -5791,18 +6455,30 @@ declare namespace LocalJSX {
5791
6455
  * If `true`, the grid will have a fixed width based on the screen size.
5792
6456
  */
5793
6457
  "fixed"?: boolean;
6458
+ /**
6459
+ * The mode determines the platform behaviors of the component.
6460
+ */
6461
+ "mode"?: "ios" | "md";
6462
+ /**
6463
+ * The theme determines the visual appearance of the component.
6464
+ */
6465
+ "theme"?: "ios" | "md" | "ionic";
5794
6466
  }
5795
6467
  interface IonHeader {
5796
6468
  /**
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)
6469
+ * 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
6470
  */
5799
6471
  "collapse"?: 'condense' | 'fade';
5800
6472
  /**
5801
- * The mode determines which platform styles to use.
6473
+ * The mode determines the platform behaviors of the component.
5802
6474
  */
5803
6475
  "mode"?: "ios" | "md";
5804
6476
  /**
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.
6477
+ * The theme determines the visual appearance of the component.
6478
+ */
6479
+ "theme"?: "ios" | "md" | "ionic";
6480
+ /**
6481
+ * 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
6482
  */
5807
6483
  "translucent"?: boolean;
5808
6484
  }
@@ -5811,6 +6487,10 @@ declare namespace LocalJSX {
5811
6487
  * 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
6488
  */
5813
6489
  "alt"?: string;
6490
+ /**
6491
+ * The mode determines the platform behaviors of the component.
6492
+ */
6493
+ "mode"?: "ios" | "md";
5814
6494
  /**
5815
6495
  * Emitted when the img fails to load
5816
6496
  */
@@ -5827,12 +6507,20 @@ declare namespace LocalJSX {
5827
6507
  * The image URL. This attribute is mandatory for the `<img>` element.
5828
6508
  */
5829
6509
  "src"?: string;
6510
+ /**
6511
+ * The theme determines the visual appearance of the component.
6512
+ */
6513
+ "theme"?: "ios" | "md" | "ionic";
5830
6514
  }
5831
6515
  interface IonInfiniteScroll {
5832
6516
  /**
5833
6517
  * 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
6518
  */
5835
6519
  "disabled"?: boolean;
6520
+ /**
6521
+ * The mode determines the platform behaviors of the component.
6522
+ */
6523
+ "mode"?: "ios" | "md";
5836
6524
  /**
5837
6525
  * 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
6526
  */
@@ -5841,6 +6529,10 @@ declare namespace LocalJSX {
5841
6529
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5842
6530
  */
5843
6531
  "position"?: 'top' | 'bottom';
6532
+ /**
6533
+ * The theme determines the visual appearance of the component.
6534
+ */
6535
+ "theme"?: "ios" | "md" | "ionic";
5844
6536
  /**
5845
6537
  * 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
6538
  */
@@ -5855,6 +6547,14 @@ declare namespace LocalJSX {
5855
6547
  * 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
6548
  */
5857
6549
  "loadingText"?: string | IonicSafeString;
6550
+ /**
6551
+ * The mode determines the platform behaviors of the component.
6552
+ */
6553
+ "mode"?: "ios" | "md";
6554
+ /**
6555
+ * The theme determines the visual appearance of the component.
6556
+ */
6557
+ "theme"?: "ios" | "md" | "ionic";
5858
6558
  }
5859
6559
  interface IonInput {
5860
6560
  /**
@@ -5914,7 +6614,7 @@ declare namespace LocalJSX {
5914
6614
  */
5915
6615
  "errorText"?: string;
5916
6616
  /**
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.
6617
+ * 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
6618
  */
5919
6619
  "fill"?: 'outline' | 'solid';
5920
6620
  /**
@@ -5950,7 +6650,7 @@ declare namespace LocalJSX {
5950
6650
  */
5951
6651
  "minlength"?: number;
5952
6652
  /**
5953
- * The mode determines which platform styles to use.
6653
+ * The mode determines the platform behaviors of the component.
5954
6654
  */
5955
6655
  "mode"?: "ios" | "md";
5956
6656
  /**
@@ -5994,9 +6694,9 @@ declare namespace LocalJSX {
5994
6694
  */
5995
6695
  "required"?: boolean;
5996
6696
  /**
5997
- * The shape of the input. If "round" it will have an increased border radius.
6697
+ * Set to `"soft"` for an input with soft rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular" for an input without rounded corners. Defaults to `"soft"`.
5998
6698
  */
5999
- "shape"?: 'round';
6699
+ "shape"?: 'soft' | 'round';
6000
6700
  /**
6001
6701
  * If `true`, the element will have its spelling and grammar checked.
6002
6702
  */
@@ -6005,6 +6705,10 @@ declare namespace LocalJSX {
6005
6705
  * 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
6706
  */
6007
6707
  "step"?: string;
6708
+ /**
6709
+ * The theme determines the visual appearance of the component.
6710
+ */
6711
+ "theme"?: "ios" | "md" | "ionic";
6008
6712
  /**
6009
6713
  * The type of control to display. The default type is text.
6010
6714
  */
@@ -6042,7 +6746,7 @@ declare namespace LocalJSX {
6042
6746
  */
6043
6747
  "color"?: Color;
6044
6748
  /**
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.
6749
+ * 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
6750
  */
6047
6751
  "detail"?: boolean;
6048
6752
  /**
@@ -6066,7 +6770,7 @@ declare namespace LocalJSX {
6066
6770
  */
6067
6771
  "lines"?: 'full' | 'inset' | 'none';
6068
6772
  /**
6069
- * The mode determines which platform styles to use.
6773
+ * The mode determines the platform behaviors of the component.
6070
6774
  */
6071
6775
  "mode"?: "ios" | "md";
6072
6776
  /**
@@ -6085,6 +6789,10 @@ declare namespace LocalJSX {
6085
6789
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6086
6790
  */
6087
6791
  "target"?: string | undefined;
6792
+ /**
6793
+ * The theme determines the visual appearance of the component.
6794
+ */
6795
+ "theme"?: "ios" | "md" | "ionic";
6088
6796
  /**
6089
6797
  * The type of the button. Only used when an `onclick` or `button` property is present.
6090
6798
  */
@@ -6096,15 +6804,27 @@ declare namespace LocalJSX {
6096
6804
  */
6097
6805
  "color"?: Color;
6098
6806
  /**
6099
- * The mode determines which platform styles to use.
6807
+ * The mode determines the platform behaviors of the component.
6100
6808
  */
6101
6809
  "mode"?: "ios" | "md";
6102
6810
  /**
6103
6811
  * 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
6812
  */
6105
6813
  "sticky"?: boolean;
6814
+ /**
6815
+ * The theme determines the visual appearance of the component.
6816
+ */
6817
+ "theme"?: "ios" | "md" | "ionic";
6106
6818
  }
6107
6819
  interface IonItemGroup {
6820
+ /**
6821
+ * The mode determines the platform behaviors of the component.
6822
+ */
6823
+ "mode"?: "ios" | "md";
6824
+ /**
6825
+ * The theme determines the visual appearance of the component.
6826
+ */
6827
+ "theme"?: "ios" | "md" | "ionic";
6108
6828
  }
6109
6829
  interface IonItemOption {
6110
6830
  /**
@@ -6128,7 +6848,7 @@ declare namespace LocalJSX {
6128
6848
  */
6129
6849
  "href"?: string | undefined;
6130
6850
  /**
6131
- * The mode determines which platform styles to use.
6851
+ * The mode determines the platform behaviors of the component.
6132
6852
  */
6133
6853
  "mode"?: "ios" | "md";
6134
6854
  /**
@@ -6139,12 +6859,20 @@ declare namespace LocalJSX {
6139
6859
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6140
6860
  */
6141
6861
  "target"?: string | undefined;
6862
+ /**
6863
+ * The theme determines the visual appearance of the component.
6864
+ */
6865
+ "theme"?: "ios" | "md" | "ionic";
6142
6866
  /**
6143
6867
  * The type of the button.
6144
6868
  */
6145
6869
  "type"?: 'submit' | 'reset' | 'button';
6146
6870
  }
6147
6871
  interface IonItemOptions {
6872
+ /**
6873
+ * The mode determines the platform behaviors of the component.
6874
+ */
6875
+ "mode"?: "ios" | "md";
6148
6876
  /**
6149
6877
  * Emitted when the item has been fully swiped.
6150
6878
  */
@@ -6153,16 +6881,28 @@ declare namespace LocalJSX {
6153
6881
  * 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
6882
  */
6155
6883
  "side"?: Side;
6884
+ /**
6885
+ * The theme determines the visual appearance of the component.
6886
+ */
6887
+ "theme"?: "ios" | "md" | "ionic";
6156
6888
  }
6157
6889
  interface IonItemSliding {
6158
6890
  /**
6159
6891
  * If `true`, the user cannot interact with the sliding item.
6160
6892
  */
6161
6893
  "disabled"?: boolean;
6894
+ /**
6895
+ * The mode determines the platform behaviors of the component.
6896
+ */
6897
+ "mode"?: "ios" | "md";
6162
6898
  /**
6163
6899
  * Emitted when the sliding position changes.
6164
6900
  */
6165
6901
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
6902
+ /**
6903
+ * The theme determines the visual appearance of the component.
6904
+ */
6905
+ "theme"?: "ios" | "md" | "ionic";
6166
6906
  }
6167
6907
  interface IonLabel {
6168
6908
  /**
@@ -6170,13 +6910,17 @@ declare namespace LocalJSX {
6170
6910
  */
6171
6911
  "color"?: Color;
6172
6912
  /**
6173
- * The mode determines which platform styles to use.
6913
+ * The mode determines the platform behaviors of the component.
6174
6914
  */
6175
6915
  "mode"?: "ios" | "md";
6176
6916
  /**
6177
6917
  * The position determines where and how the label behaves inside an item.
6178
6918
  */
6179
6919
  "position"?: 'fixed' | 'stacked' | 'floating';
6920
+ /**
6921
+ * The theme determines the visual appearance of the component.
6922
+ */
6923
+ "theme"?: "ios" | "md" | "ionic";
6180
6924
  }
6181
6925
  interface IonList {
6182
6926
  /**
@@ -6188,9 +6932,13 @@ declare namespace LocalJSX {
6188
6932
  */
6189
6933
  "lines"?: 'full' | 'inset' | 'none';
6190
6934
  /**
6191
- * The mode determines which platform styles to use.
6935
+ * The mode determines the platform behaviors of the component.
6192
6936
  */
6193
6937
  "mode"?: "ios" | "md";
6938
+ /**
6939
+ * The theme determines the visual appearance of the component.
6940
+ */
6941
+ "theme"?: "ios" | "md" | "ionic";
6194
6942
  }
6195
6943
  interface IonListHeader {
6196
6944
  /**
@@ -6202,9 +6950,13 @@ declare namespace LocalJSX {
6202
6950
  */
6203
6951
  "lines"?: 'full' | 'inset' | 'none';
6204
6952
  /**
6205
- * The mode determines which platform styles to use.
6953
+ * The mode determines the platform behaviors of the component.
6206
6954
  */
6207
6955
  "mode"?: "ios" | "md";
6956
+ /**
6957
+ * The theme determines the visual appearance of the component.
6958
+ */
6959
+ "theme"?: "ios" | "md" | "ionic";
6208
6960
  }
6209
6961
  interface IonLoading {
6210
6962
  /**
@@ -6248,7 +7000,7 @@ declare namespace LocalJSX {
6248
7000
  */
6249
7001
  "message"?: string | IonicSafeString;
6250
7002
  /**
6251
- * The mode determines which platform styles to use.
7003
+ * The mode determines the platform behaviors of the component.
6252
7004
  */
6253
7005
  "mode"?: "ios" | "md";
6254
7006
  /**
@@ -6292,7 +7044,11 @@ declare namespace LocalJSX {
6292
7044
  */
6293
7045
  "spinner"?: SpinnerTypes | null;
6294
7046
  /**
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).
7047
+ * The theme determines the visual appearance of the component.
7048
+ */
7049
+ "theme"?: "ios" | "md" | "ionic";
7050
+ /**
7051
+ * 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
7052
  */
6297
7053
  "translucent"?: boolean;
6298
7054
  /**
@@ -6317,6 +7073,10 @@ declare namespace LocalJSX {
6317
7073
  * An id for the menu.
6318
7074
  */
6319
7075
  "menuId"?: string;
7076
+ /**
7077
+ * The mode determines the platform behaviors of the component.
7078
+ */
7079
+ "mode"?: "ios" | "md";
6320
7080
  /**
6321
7081
  * Emitted when the menu is closed.
6322
7082
  */
@@ -6341,6 +7101,10 @@ declare namespace LocalJSX {
6341
7101
  * If `true`, swiping the menu is enabled.
6342
7102
  */
6343
7103
  "swipeGesture"?: boolean;
7104
+ /**
7105
+ * The theme determines the visual appearance of the component.
7106
+ */
7107
+ "theme"?: "ios" | "md" | "ionic";
6344
7108
  /**
6345
7109
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6346
7110
  */
@@ -6364,9 +7128,13 @@ declare namespace LocalJSX {
6364
7128
  */
6365
7129
  "menu"?: string;
6366
7130
  /**
6367
- * The mode determines which platform styles to use.
7131
+ * The mode determines the platform behaviors of the component.
6368
7132
  */
6369
7133
  "mode"?: "ios" | "md";
7134
+ /**
7135
+ * The theme determines the visual appearance of the component.
7136
+ */
7137
+ "theme"?: "ios" | "md" | "ionic";
6370
7138
  /**
6371
7139
  * The type of the button.
6372
7140
  */
@@ -6381,6 +7149,14 @@ declare namespace LocalJSX {
6381
7149
  * 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
7150
  */
6383
7151
  "menu"?: string;
7152
+ /**
7153
+ * The mode determines the platform behaviors of the component.
7154
+ */
7155
+ "mode"?: "ios" | "md";
7156
+ /**
7157
+ * The theme determines the visual appearance of the component.
7158
+ */
7159
+ "theme"?: "ios" | "md" | "ionic";
6384
7160
  }
6385
7161
  interface IonModal {
6386
7162
  /**
@@ -6407,10 +7183,6 @@ declare namespace LocalJSX {
6407
7183
  * Animation to use when the modal is presented.
6408
7184
  */
6409
7185
  "enterAnimation"?: AnimationBuilder;
6410
- /**
6411
- * If `true`, focus will not be allowed to move outside of this overlay. If 'false', focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
6412
- */
6413
- "focusTrap"?: boolean;
6414
7186
  /**
6415
7187
  * The horizontal line that displays at the top of a sheet modal. It is `true` by default when setting the `breakpoints` and `initialBreakpoint` properties.
6416
7188
  */
@@ -6444,7 +7216,7 @@ declare namespace LocalJSX {
6444
7216
  */
6445
7217
  "leaveAnimation"?: AnimationBuilder;
6446
7218
  /**
6447
- * The mode determines which platform styles to use.
7219
+ * The mode determines the platform behaviors of the component.
6448
7220
  */
6449
7221
  "mode"?: "ios" | "md";
6450
7222
  /**
@@ -6491,6 +7263,10 @@ declare namespace LocalJSX {
6491
7263
  * 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
7264
  */
6493
7265
  "showBackdrop"?: boolean;
7266
+ /**
7267
+ * The theme determines the visual appearance of the component.
7268
+ */
7269
+ "theme"?: "ios" | "md" | "ionic";
6494
7270
  /**
6495
7271
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6496
7272
  */
@@ -6502,9 +7278,13 @@ declare namespace LocalJSX {
6502
7278
  */
6503
7279
  "animated"?: boolean;
6504
7280
  /**
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.
7281
+ * 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
7282
  */
6507
7283
  "animation"?: AnimationBuilder;
7284
+ /**
7285
+ * The mode determines the platform behaviors of the component.
7286
+ */
7287
+ "mode"?: "ios" | "md";
6508
7288
  /**
6509
7289
  * Event fired when the nav has changed components
6510
7290
  */
@@ -6525,6 +7305,10 @@ declare namespace LocalJSX {
6525
7305
  * If the nav component should allow for swipe-to-go-back.
6526
7306
  */
6527
7307
  "swipeGesture"?: boolean;
7308
+ /**
7309
+ * The theme determines the visual appearance of the component.
7310
+ */
7311
+ "theme"?: "ios" | "md" | "ionic";
6528
7312
  }
6529
7313
  interface IonNavLink {
6530
7314
  /**
@@ -6535,6 +7319,10 @@ declare namespace LocalJSX {
6535
7319
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6536
7320
  */
6537
7321
  "componentProps"?: ComponentProps;
7322
+ /**
7323
+ * The mode determines the platform behaviors of the component.
7324
+ */
7325
+ "mode"?: "ios" | "md";
6538
7326
  /**
6539
7327
  * The transition animation when navigating to another page.
6540
7328
  */
@@ -6543,6 +7331,10 @@ declare namespace LocalJSX {
6543
7331
  * The transition direction when navigating to another page.
6544
7332
  */
6545
7333
  "routerDirection"?: RouterDirection;
7334
+ /**
7335
+ * The theme determines the visual appearance of the component.
7336
+ */
7337
+ "theme"?: "ios" | "md" | "ionic";
6546
7338
  }
6547
7339
  interface IonNote {
6548
7340
  /**
@@ -6550,15 +7342,23 @@ declare namespace LocalJSX {
6550
7342
  */
6551
7343
  "color"?: Color;
6552
7344
  /**
6553
- * The mode determines which platform styles to use.
7345
+ * The mode determines the platform behaviors of the component.
6554
7346
  */
6555
7347
  "mode"?: "ios" | "md";
7348
+ /**
7349
+ * The theme determines the visual appearance of the component.
7350
+ */
7351
+ "theme"?: "ios" | "md" | "ionic";
6556
7352
  }
6557
7353
  interface IonPicker {
6558
7354
  /**
6559
- * The mode determines which platform styles to use.
7355
+ * The mode determines the platform behaviors of the component.
6560
7356
  */
6561
7357
  "mode"?: "ios" | "md";
7358
+ /**
7359
+ * The theme determines the visual appearance of the component.
7360
+ */
7361
+ "theme"?: "ios" | "md" | "ionic";
6562
7362
  }
6563
7363
  interface IonPickerColumn {
6564
7364
  /**
@@ -6570,13 +7370,17 @@ declare namespace LocalJSX {
6570
7370
  */
6571
7371
  "disabled"?: boolean;
6572
7372
  /**
6573
- * The mode determines which platform styles to use.
7373
+ * The mode determines the platform behaviors of the component.
6574
7374
  */
6575
7375
  "mode"?: "ios" | "md";
6576
7376
  /**
6577
7377
  * Emitted when the value has changed.
6578
7378
  */
6579
7379
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7380
+ /**
7381
+ * The theme determines the visual appearance of the component.
7382
+ */
7383
+ "theme"?: "ios" | "md" | "ionic";
6580
7384
  /**
6581
7385
  * The selected option in the picker.
6582
7386
  */
@@ -6591,6 +7395,14 @@ declare namespace LocalJSX {
6591
7395
  * If `true`, the user cannot interact with the picker column option.
6592
7396
  */
6593
7397
  "disabled"?: boolean;
7398
+ /**
7399
+ * The mode determines the platform behaviors of the component.
7400
+ */
7401
+ "mode"?: "ios" | "md";
7402
+ /**
7403
+ * The theme determines the visual appearance of the component.
7404
+ */
7405
+ "theme"?: "ios" | "md" | "ionic";
6594
7406
  /**
6595
7407
  * The text value of the option.
6596
7408
  */
@@ -6642,7 +7454,7 @@ declare namespace LocalJSX {
6642
7454
  */
6643
7455
  "leaveAnimation"?: AnimationBuilder;
6644
7456
  /**
6645
- * The mode determines which platform styles to use.
7457
+ * The mode determines the platform behaviors of the component.
6646
7458
  */
6647
7459
  "mode"?: "ios" | "md";
6648
7460
  /**
@@ -6681,6 +7493,10 @@ declare namespace LocalJSX {
6681
7493
  * If `true`, a backdrop will be displayed behind the picker.
6682
7494
  */
6683
7495
  "showBackdrop"?: boolean;
7496
+ /**
7497
+ * The theme determines the visual appearance of the component.
7498
+ */
7499
+ "theme"?: "ios" | "md" | "ionic";
6684
7500
  /**
6685
7501
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6686
7502
  */
@@ -6694,7 +7510,7 @@ declare namespace LocalJSX {
6694
7510
  }
6695
7511
  interface IonPopover {
6696
7512
  /**
6697
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7513
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6698
7514
  */
6699
7515
  "alignment"?: PositionAlign;
6700
7516
  /**
@@ -6702,7 +7518,7 @@ declare namespace LocalJSX {
6702
7518
  */
6703
7519
  "animated"?: boolean;
6704
7520
  /**
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.
7521
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6706
7522
  */
6707
7523
  "arrow"?: boolean;
6708
7524
  /**
@@ -6729,10 +7545,6 @@ declare namespace LocalJSX {
6729
7545
  * The event to pass to the popover animation.
6730
7546
  */
6731
7547
  "event"?: any;
6732
- /**
6733
- * If `true`, focus will not be allowed to move outside of this overlay. If 'false', focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
6734
- */
6735
- "focusTrap"?: boolean;
6736
7548
  /**
6737
7549
  * Additional attributes to pass to the popover.
6738
7550
  */
@@ -6754,7 +7566,7 @@ declare namespace LocalJSX {
6754
7566
  */
6755
7567
  "leaveAnimation"?: AnimationBuilder;
6756
7568
  /**
6757
- * The mode determines which platform styles to use.
7569
+ * The mode determines the platform behaviors of the component.
6758
7570
  */
6759
7571
  "mode"?: "ios" | "md";
6760
7572
  /**
@@ -6806,7 +7618,11 @@ declare namespace LocalJSX {
6806
7618
  */
6807
7619
  "size"?: PopoverSize;
6808
7620
  /**
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).
7621
+ * The theme determines the visual appearance of the component.
7622
+ */
7623
+ "theme"?: "ios" | "md" | "ionic";
7624
+ /**
7625
+ * 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
7626
  */
6811
7627
  "translucent"?: boolean;
6812
7628
  /**
@@ -6828,13 +7644,17 @@ declare namespace LocalJSX {
6828
7644
  */
6829
7645
  "color"?: Color;
6830
7646
  /**
6831
- * The mode determines which platform styles to use.
7647
+ * The mode determines the platform behaviors of the component.
6832
7648
  */
6833
7649
  "mode"?: "ios" | "md";
6834
7650
  /**
6835
7651
  * If true, reverse the progress bar direction.
6836
7652
  */
6837
7653
  "reversed"?: boolean;
7654
+ /**
7655
+ * The theme determines the visual appearance of the component.
7656
+ */
7657
+ "theme"?: "ios" | "md" | "ionic";
6838
7658
  /**
6839
7659
  * 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
7660
  */
@@ -6866,7 +7686,7 @@ declare namespace LocalJSX {
6866
7686
  */
6867
7687
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6868
7688
  /**
6869
- * The mode determines which platform styles to use.
7689
+ * The mode determines the platform behaviors of the component.
6870
7690
  */
6871
7691
  "mode"?: "ios" | "md";
6872
7692
  /**
@@ -6881,6 +7701,10 @@ declare namespace LocalJSX {
6881
7701
  * Emitted when the radio button has focus.
6882
7702
  */
6883
7703
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7704
+ /**
7705
+ * The theme determines the visual appearance of the component.
7706
+ */
7707
+ "theme"?: "ios" | "md" | "ionic";
6884
7708
  /**
6885
7709
  * the value of the radio.
6886
7710
  */
@@ -6895,6 +7719,10 @@ declare namespace LocalJSX {
6895
7719
  * 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
7720
  */
6897
7721
  "compareWith"?: string | RadioGroupCompareFn | null;
7722
+ /**
7723
+ * The mode determines the platform behaviors of the component.
7724
+ */
7725
+ "mode"?: "ios" | "md";
6898
7726
  /**
6899
7727
  * The name of the control, which is submitted with the form data.
6900
7728
  */
@@ -6903,6 +7731,10 @@ declare namespace LocalJSX {
6903
7731
  * Emitted when the value has changed.
6904
7732
  */
6905
7733
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7734
+ /**
7735
+ * The theme determines the visual appearance of the component.
7736
+ */
7737
+ "theme"?: "ios" | "md" | "ionic";
6906
7738
  /**
6907
7739
  * the value of the radio group.
6908
7740
  */
@@ -6946,7 +7778,7 @@ declare namespace LocalJSX {
6946
7778
  */
6947
7779
  "min"?: number;
6948
7780
  /**
6949
- * The mode determines which platform styles to use.
7781
+ * The mode determines the platform behaviors of the component.
6950
7782
  */
6951
7783
  "mode"?: "ios" | "md";
6952
7784
  /**
@@ -6993,6 +7825,10 @@ declare namespace LocalJSX {
6993
7825
  * Specifies the value granularity.
6994
7826
  */
6995
7827
  "step"?: number;
7828
+ /**
7829
+ * The theme determines the visual appearance of the component.
7830
+ */
7831
+ "theme"?: "ios" | "md" | "ionic";
6996
7832
  /**
6997
7833
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
6998
7834
  */
@@ -7012,7 +7848,7 @@ declare namespace LocalJSX {
7012
7848
  */
7013
7849
  "disabled"?: boolean;
7014
7850
  /**
7015
- * The mode determines which platform styles to use.
7851
+ * The mode determines the platform behaviors of the component.
7016
7852
  */
7017
7853
  "mode"?: "ios" | "md";
7018
7854
  /**
@@ -7043,8 +7879,16 @@ declare namespace LocalJSX {
7043
7879
  * 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
7880
  */
7045
7881
  "snapbackDuration"?: string;
7882
+ /**
7883
+ * The theme determines the visual appearance of the component.
7884
+ */
7885
+ "theme"?: "ios" | "md" | "ionic";
7046
7886
  }
7047
7887
  interface IonRefresherContent {
7888
+ /**
7889
+ * The mode determines the platform behaviors of the component.
7890
+ */
7891
+ "mode"?: "ios" | "md";
7048
7892
  /**
7049
7893
  * 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
7894
  */
@@ -7061,20 +7905,48 @@ declare namespace LocalJSX {
7061
7905
  * 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
7906
  */
7063
7907
  "refreshingText"?: string | IonicSafeString;
7908
+ /**
7909
+ * The theme determines the visual appearance of the component.
7910
+ */
7911
+ "theme"?: "ios" | "md" | "ionic";
7064
7912
  }
7065
7913
  interface IonReorder {
7914
+ /**
7915
+ * The mode determines the platform behaviors of the component.
7916
+ */
7917
+ "mode"?: "ios" | "md";
7918
+ /**
7919
+ * The theme determines the visual appearance of the component.
7920
+ */
7921
+ "theme"?: "ios" | "md" | "ionic";
7066
7922
  }
7067
7923
  interface IonReorderGroup {
7068
7924
  /**
7069
7925
  * If `true`, the reorder will be hidden.
7070
7926
  */
7071
7927
  "disabled"?: boolean;
7928
+ /**
7929
+ * The mode determines the platform behaviors of the component.
7930
+ */
7931
+ "mode"?: "ios" | "md";
7072
7932
  /**
7073
7933
  * 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
7934
  */
7075
7935
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
7936
+ /**
7937
+ * The theme determines the visual appearance of the component.
7938
+ */
7939
+ "theme"?: "ios" | "md" | "ionic";
7076
7940
  }
7077
7941
  interface IonRippleEffect {
7942
+ /**
7943
+ * The mode determines the platform behaviors of the component.
7944
+ */
7945
+ "mode"?: "ios" | "md";
7946
+ /**
7947
+ * The theme determines the visual appearance of the component.
7948
+ */
7949
+ "theme"?: "ios" | "md" | "ionic";
7078
7950
  /**
7079
7951
  * 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
7952
  */
@@ -7097,10 +7969,18 @@ declare namespace LocalJSX {
7097
7969
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7098
7970
  */
7099
7971
  "componentProps"?: { [key: string]: any };
7972
+ /**
7973
+ * The mode determines the platform behaviors of the component.
7974
+ */
7975
+ "mode"?: "ios" | "md";
7100
7976
  /**
7101
7977
  * Used internally by `ion-router` to know when this route did change.
7102
7978
  */
7103
7979
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
7980
+ /**
7981
+ * The theme determines the visual appearance of the component.
7982
+ */
7983
+ "theme"?: "ios" | "md" | "ionic";
7104
7984
  /**
7105
7985
  * 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
7986
  */
@@ -7121,6 +8001,10 @@ declare namespace LocalJSX {
7121
8001
  "to": string | undefined | null;
7122
8002
  }
7123
8003
  interface IonRouter {
8004
+ /**
8005
+ * The mode determines the platform behaviors of the component.
8006
+ */
8007
+ "mode"?: "ios" | "md";
7124
8008
  /**
7125
8009
  * Emitted when the route had changed
7126
8010
  */
@@ -7133,6 +8017,10 @@ declare namespace LocalJSX {
7133
8017
  * 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
8018
  */
7135
8019
  "root"?: string;
8020
+ /**
8021
+ * The theme determines the visual appearance of the component.
8022
+ */
8023
+ "theme"?: "ios" | "md" | "ionic";
7136
8024
  /**
7137
8025
  * 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
8026
  */
@@ -7147,6 +8035,10 @@ declare namespace LocalJSX {
7147
8035
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7148
8036
  */
7149
8037
  "href"?: string | undefined;
8038
+ /**
8039
+ * The mode determines the platform behaviors of the component.
8040
+ */
8041
+ "mode"?: "ios" | "md";
7150
8042
  /**
7151
8043
  * 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
8044
  */
@@ -7163,6 +8055,10 @@ declare namespace LocalJSX {
7163
8055
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7164
8056
  */
7165
8057
  "target"?: string | undefined;
8058
+ /**
8059
+ * The theme determines the visual appearance of the component.
8060
+ */
8061
+ "theme"?: "ios" | "md" | "ionic";
7166
8062
  }
7167
8063
  interface IonRouterOutlet {
7168
8064
  /**
@@ -7174,11 +8070,23 @@ declare namespace LocalJSX {
7174
8070
  */
7175
8071
  "animation"?: AnimationBuilder;
7176
8072
  /**
7177
- * The mode determines which platform styles to use.
8073
+ * The mode determines the platform behaviors of the component.
7178
8074
  */
7179
8075
  "mode"?: "ios" | "md";
8076
+ /**
8077
+ * The theme determines the visual appearance of the component.
8078
+ */
8079
+ "theme"?: "ios" | "md" | "ionic";
7180
8080
  }
7181
8081
  interface IonRow {
8082
+ /**
8083
+ * The mode determines the platform behaviors of the component.
8084
+ */
8085
+ "mode"?: "ios" | "md";
8086
+ /**
8087
+ * The theme determines the visual appearance of the component.
8088
+ */
8089
+ "theme"?: "ios" | "md" | "ionic";
7182
8090
  }
7183
8091
  interface IonSearchbar {
7184
8092
  /**
@@ -7198,15 +8106,15 @@ declare namespace LocalJSX {
7198
8106
  */
7199
8107
  "autocorrect"?: 'on' | 'off';
7200
8108
  /**
7201
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8109
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7202
8110
  */
7203
8111
  "cancelButtonIcon"?: string;
7204
8112
  /**
7205
- * Set the the cancel button text. Only applies to `ios` mode.
8113
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7206
8114
  */
7207
8115
  "cancelButtonText"?: string;
7208
8116
  /**
7209
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8117
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7210
8118
  */
7211
8119
  "clearIcon"?: string;
7212
8120
  /**
@@ -7238,7 +8146,7 @@ declare namespace LocalJSX {
7238
8146
  */
7239
8147
  "minlength"?: number;
7240
8148
  /**
7241
- * The mode determines which platform styles to use.
8149
+ * The mode determines the platform behaviors of the component.
7242
8150
  */
7243
8151
  "mode"?: "ios" | "md";
7244
8152
  /**
@@ -7274,7 +8182,7 @@ declare namespace LocalJSX {
7274
8182
  */
7275
8183
  "placeholder"?: string;
7276
8184
  /**
7277
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8185
+ * 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
8186
  */
7279
8187
  "searchIcon"?: string;
7280
8188
  /**
@@ -7289,6 +8197,10 @@ declare namespace LocalJSX {
7289
8197
  * If `true`, enable spellcheck on the input.
7290
8198
  */
7291
8199
  "spellcheck"?: boolean;
8200
+ /**
8201
+ * The theme determines the visual appearance of the component.
8202
+ */
8203
+ "theme"?: "ios" | "md" | "ionic";
7292
8204
  /**
7293
8205
  * Set the type of the input.
7294
8206
  */
@@ -7308,7 +8220,7 @@ declare namespace LocalJSX {
7308
8220
  */
7309
8221
  "disabled"?: boolean;
7310
8222
  /**
7311
- * The mode determines which platform styles to use.
8223
+ * The mode determines the platform behaviors of the component.
7312
8224
  */
7313
8225
  "mode"?: "ios" | "md";
7314
8226
  /**
@@ -7327,6 +8239,10 @@ declare namespace LocalJSX {
7327
8239
  * If `true`, users will be able to swipe between segment buttons to activate them.
7328
8240
  */
7329
8241
  "swipeGesture"?: boolean;
8242
+ /**
8243
+ * The theme determines the visual appearance of the component.
8244
+ */
8245
+ "theme"?: "ios" | "md" | "ionic";
7330
8246
  /**
7331
8247
  * the value of the segment.
7332
8248
  */
@@ -7342,9 +8258,13 @@ declare namespace LocalJSX {
7342
8258
  */
7343
8259
  "layout"?: SegmentButtonLayout;
7344
8260
  /**
7345
- * The mode determines which platform styles to use.
8261
+ * The mode determines the platform behaviors of the component.
7346
8262
  */
7347
8263
  "mode"?: "ios" | "md";
8264
+ /**
8265
+ * The theme determines the visual appearance of the component.
8266
+ */
8267
+ "theme"?: "ios" | "md" | "ionic";
7348
8268
  /**
7349
8269
  * The type of the button.
7350
8270
  */
@@ -7372,11 +8292,11 @@ declare namespace LocalJSX {
7372
8292
  */
7373
8293
  "disabled"?: boolean;
7374
8294
  /**
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.
8295
+ * 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
8296
  */
7377
8297
  "expandedIcon"?: string;
7378
8298
  /**
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.
8299
+ * 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
8300
  */
7381
8301
  "fill"?: 'outline' | 'solid';
7382
8302
  /**
@@ -7400,7 +8320,7 @@ declare namespace LocalJSX {
7400
8320
  */
7401
8321
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7402
8322
  /**
7403
- * The mode determines which platform styles to use.
8323
+ * The mode determines the platform behaviors of the component.
7404
8324
  */
7405
8325
  "mode"?: "ios" | "md";
7406
8326
  /**
@@ -7448,7 +8368,11 @@ declare namespace LocalJSX {
7448
8368
  */
7449
8369
  "shape"?: 'round';
7450
8370
  /**
7451
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8371
+ * The theme determines the visual appearance of the component.
8372
+ */
8373
+ "theme"?: "ios" | "md" | "ionic";
8374
+ /**
8375
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7452
8376
  */
7453
8377
  "toggleIcon"?: string;
7454
8378
  /**
@@ -7461,6 +8385,14 @@ declare namespace LocalJSX {
7461
8385
  * 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
8386
  */
7463
8387
  "disabled"?: boolean;
8388
+ /**
8389
+ * The mode determines the platform behaviors of the component.
8390
+ */
8391
+ "mode"?: "ios" | "md";
8392
+ /**
8393
+ * The theme determines the visual appearance of the component.
8394
+ */
8395
+ "theme"?: "ios" | "md" | "ionic";
7464
8396
  /**
7465
8397
  * The text value of the option.
7466
8398
  */
@@ -7475,6 +8407,10 @@ declare namespace LocalJSX {
7475
8407
  * The text content of the popover body
7476
8408
  */
7477
8409
  "message"?: string;
8410
+ /**
8411
+ * The mode determines the platform behaviors of the component.
8412
+ */
8413
+ "mode"?: "ios" | "md";
7478
8414
  /**
7479
8415
  * If true, the select accepts multiple values
7480
8416
  */
@@ -7487,12 +8423,24 @@ declare namespace LocalJSX {
7487
8423
  * The subheader text of the popover
7488
8424
  */
7489
8425
  "subHeader"?: string;
8426
+ /**
8427
+ * The theme determines the visual appearance of the component.
8428
+ */
8429
+ "theme"?: "ios" | "md" | "ionic";
7490
8430
  }
7491
8431
  interface IonSkeletonText {
7492
8432
  /**
7493
8433
  * If `true`, the skeleton text will animate.
7494
8434
  */
7495
8435
  "animated"?: boolean;
8436
+ /**
8437
+ * The mode determines the platform behaviors of the component.
8438
+ */
8439
+ "mode"?: "ios" | "md";
8440
+ /**
8441
+ * The theme determines the visual appearance of the component.
8442
+ */
8443
+ "theme"?: "ios" | "md" | "ionic";
7496
8444
  }
7497
8445
  interface IonSpinner {
7498
8446
  /**
@@ -7503,6 +8451,10 @@ declare namespace LocalJSX {
7503
8451
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7504
8452
  */
7505
8453
  "duration"?: number;
8454
+ /**
8455
+ * The mode determines the platform behaviors of the component.
8456
+ */
8457
+ "mode"?: "ios" | "md";
7506
8458
  /**
7507
8459
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7508
8460
  */
@@ -7511,6 +8463,10 @@ declare namespace LocalJSX {
7511
8463
  * If `true`, the spinner's animation will be paused.
7512
8464
  */
7513
8465
  "paused"?: boolean;
8466
+ /**
8467
+ * The theme determines the visual appearance of the component.
8468
+ */
8469
+ "theme"?: "ios" | "md" | "ionic";
7514
8470
  }
7515
8471
  interface IonSplitPane {
7516
8472
  /**
@@ -7521,10 +8477,18 @@ declare namespace LocalJSX {
7521
8477
  * If `true`, the split pane will be hidden.
7522
8478
  */
7523
8479
  "disabled"?: boolean;
8480
+ /**
8481
+ * The mode determines the platform behaviors of the component.
8482
+ */
8483
+ "mode"?: "ios" | "md";
7524
8484
  /**
7525
8485
  * Expression to be called when the split-pane visibility has changed
7526
8486
  */
7527
8487
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8488
+ /**
8489
+ * The theme determines the visual appearance of the component.
8490
+ */
8491
+ "theme"?: "ios" | "md" | "ionic";
7528
8492
  /**
7529
8493
  * 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
8494
  */
@@ -7535,10 +8499,18 @@ declare namespace LocalJSX {
7535
8499
  * The component to display inside of the tab.
7536
8500
  */
7537
8501
  "component"?: ComponentRef;
8502
+ /**
8503
+ * The mode determines the platform behaviors of the component.
8504
+ */
8505
+ "mode"?: "ios" | "md";
7538
8506
  /**
7539
8507
  * 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
8508
  */
7541
8509
  "tab": string;
8510
+ /**
8511
+ * The theme determines the visual appearance of the component.
8512
+ */
8513
+ "theme"?: "ios" | "md" | "ionic";
7542
8514
  }
7543
8515
  interface IonTabBar {
7544
8516
  /**
@@ -7546,7 +8518,7 @@ declare namespace LocalJSX {
7546
8518
  */
7547
8519
  "color"?: Color;
7548
8520
  /**
7549
- * The mode determines which platform styles to use.
8521
+ * The mode determines the platform behaviors of the component.
7550
8522
  */
7551
8523
  "mode"?: "ios" | "md";
7552
8524
  /**
@@ -7554,7 +8526,11 @@ declare namespace LocalJSX {
7554
8526
  */
7555
8527
  "selectedTab"?: string;
7556
8528
  /**
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).
8529
+ * The theme determines the visual appearance of the component.
8530
+ */
8531
+ "theme"?: "ios" | "md" | "ionic";
8532
+ /**
8533
+ * 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
8534
  */
7559
8535
  "translucent"?: boolean;
7560
8536
  }
@@ -7576,7 +8552,7 @@ declare namespace LocalJSX {
7576
8552
  */
7577
8553
  "layout"?: TabButtonLayout;
7578
8554
  /**
7579
- * The mode determines which platform styles to use.
8555
+ * The mode determines the platform behaviors of the component.
7580
8556
  */
7581
8557
  "mode"?: "ios" | "md";
7582
8558
  /**
@@ -7595,8 +8571,16 @@ declare namespace LocalJSX {
7595
8571
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7596
8572
  */
7597
8573
  "target"?: string | undefined;
8574
+ /**
8575
+ * The theme determines the visual appearance of the component.
8576
+ */
8577
+ "theme"?: "ios" | "md" | "ionic";
7598
8578
  }
7599
8579
  interface IonTabs {
8580
+ /**
8581
+ * The mode determines the platform behaviors of the component.
8582
+ */
8583
+ "mode"?: "ios" | "md";
7600
8584
  /**
7601
8585
  * Emitted when the navigation has finished transitioning to a new component.
7602
8586
  */
@@ -7605,6 +8589,10 @@ declare namespace LocalJSX {
7605
8589
  * Emitted when the navigation is about to transition to a new component.
7606
8590
  */
7607
8591
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8592
+ /**
8593
+ * The theme determines the visual appearance of the component.
8594
+ */
8595
+ "theme"?: "ios" | "md" | "ionic";
7608
8596
  }
7609
8597
  interface IonText {
7610
8598
  /**
@@ -7612,9 +8600,13 @@ declare namespace LocalJSX {
7612
8600
  */
7613
8601
  "color"?: Color;
7614
8602
  /**
7615
- * The mode determines which platform styles to use.
8603
+ * The mode determines the platform behaviors of the component.
7616
8604
  */
7617
8605
  "mode"?: "ios" | "md";
8606
+ /**
8607
+ * The theme determines the visual appearance of the component.
8608
+ */
8609
+ "theme"?: "ios" | "md" | "ionic";
7618
8610
  }
7619
8611
  interface IonTextarea {
7620
8612
  /**
@@ -7666,7 +8658,7 @@ declare namespace LocalJSX {
7666
8658
  */
7667
8659
  "errorText"?: string;
7668
8660
  /**
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.
8661
+ * 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
8662
  */
7671
8663
  "fill"?: 'outline' | 'solid';
7672
8664
  /**
@@ -7694,7 +8686,7 @@ declare namespace LocalJSX {
7694
8686
  */
7695
8687
  "minlength"?: number;
7696
8688
  /**
7697
- * The mode determines which platform styles to use.
8689
+ * The mode determines the platform behaviors of the component.
7698
8690
  */
7699
8691
  "mode"?: "ios" | "md";
7700
8692
  /**
@@ -7741,6 +8733,10 @@ declare namespace LocalJSX {
7741
8733
  * If `true`, the element will have its spelling and grammar checked.
7742
8734
  */
7743
8735
  "spellcheck"?: boolean;
8736
+ /**
8737
+ * The theme determines the visual appearance of the component.
8738
+ */
8739
+ "theme"?: "ios" | "md" | "ionic";
7744
8740
  /**
7745
8741
  * The value of the textarea.
7746
8742
  */
@@ -7751,16 +8747,32 @@ declare namespace LocalJSX {
7751
8747
  "wrap"?: 'hard' | 'soft' | 'off';
7752
8748
  }
7753
8749
  interface IonThumbnail {
8750
+ /**
8751
+ * The mode determines the platform behaviors of the component.
8752
+ */
8753
+ "mode"?: "ios" | "md";
8754
+ /**
8755
+ * The theme determines the visual appearance of the component.
8756
+ */
8757
+ "theme"?: "ios" | "md" | "ionic";
7754
8758
  }
7755
8759
  interface IonTitle {
7756
8760
  /**
7757
8761
  * 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
8762
  */
7759
8763
  "color"?: Color;
8764
+ /**
8765
+ * The mode determines the platform behaviors of the component.
8766
+ */
8767
+ "mode"?: "ios" | "md";
7760
8768
  /**
7761
8769
  * The size of the toolbar title.
7762
8770
  */
7763
8771
  "size"?: 'large' | 'small';
8772
+ /**
8773
+ * The theme determines the visual appearance of the component.
8774
+ */
8775
+ "theme"?: "ios" | "md" | "ionic";
7764
8776
  }
7765
8777
  interface IonToast {
7766
8778
  /**
@@ -7820,7 +8832,7 @@ declare namespace LocalJSX {
7820
8832
  */
7821
8833
  "message"?: string | IonicSafeString;
7822
8834
  /**
7823
- * The mode determines which platform styles to use.
8835
+ * The mode determines the platform behaviors of the component.
7824
8836
  */
7825
8837
  "mode"?: "ios" | "md";
7826
8838
  /**
@@ -7868,7 +8880,11 @@ declare namespace LocalJSX {
7868
8880
  */
7869
8881
  "swipeGesture"?: ToastSwipeGestureDirection;
7870
8882
  /**
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).
8883
+ * The theme determines the visual appearance of the component.
8884
+ */
8885
+ "theme"?: "ios" | "md" | "ionic";
8886
+ /**
8887
+ * 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
8888
  */
7873
8889
  "translucent"?: boolean;
7874
8890
  /**
@@ -7906,7 +8922,7 @@ declare namespace LocalJSX {
7906
8922
  */
7907
8923
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7908
8924
  /**
7909
- * The mode determines which platform styles to use.
8925
+ * The mode determines the platform behaviors of the component.
7910
8926
  */
7911
8927
  "mode"?: "ios" | "md";
7912
8928
  /**
@@ -7925,6 +8941,10 @@ declare namespace LocalJSX {
7925
8941
  * Emitted when the toggle has focus.
7926
8942
  */
7927
8943
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
8944
+ /**
8945
+ * The theme determines the visual appearance of the component.
8946
+ */
8947
+ "theme"?: "ios" | "md" | "ionic";
7928
8948
  /**
7929
8949
  * 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
8950
  */
@@ -7936,9 +8956,13 @@ declare namespace LocalJSX {
7936
8956
  */
7937
8957
  "color"?: Color;
7938
8958
  /**
7939
- * The mode determines which platform styles to use.
8959
+ * The mode determines the platform behaviors of the component.
7940
8960
  */
7941
8961
  "mode"?: "ios" | "md";
8962
+ /**
8963
+ * The theme determines the visual appearance of the component.
8964
+ */
8965
+ "theme"?: "ios" | "md" | "ionic";
7942
8966
  }
7943
8967
  interface IntrinsicElements {
7944
8968
  "ion-accordion": IonAccordion;