@ionic/core 8.2.3-dev.11719525475.1157acc5 → 8.2.3-dev.11720020551.1b35ace4

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 (1476) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +14 -10
  3. package/components/backdrop.js +10 -6
  4. package/components/button.js +41 -12
  5. package/components/buttons.js +11 -7
  6. package/components/caret-down.js +6 -0
  7. package/components/caret-left.js +6 -0
  8. package/components/caret-right.js +6 -0
  9. package/components/checkbox.js +30 -13
  10. package/components/data.js +4 -4
  11. package/components/index2.js +1 -2
  12. package/components/index4.js +8 -7
  13. package/components/index6.js +27 -30
  14. package/components/index7.js +124 -27
  15. package/components/index8.js +150 -111
  16. package/components/input-shims.js +1 -1
  17. package/components/input.utils.js +1 -1
  18. package/components/ion-accordion-group.js +9 -6
  19. package/components/ion-accordion.js +31 -9
  20. package/components/ion-app.js +5 -6
  21. package/components/ion-avatar.js +52 -3
  22. package/components/ion-back-button.js +28 -19
  23. package/components/ion-badge.js +42 -6
  24. package/components/ion-breadcrumb.js +44 -11
  25. package/components/ion-breadcrumbs.js +9 -5
  26. package/components/ion-card-content.js +9 -5
  27. package/components/ion-card-header.js +9 -5
  28. package/components/ion-card-subtitle.js +9 -5
  29. package/components/ion-card-title.js +9 -5
  30. package/components/ion-card.js +17 -9
  31. package/components/ion-chip.js +45 -8
  32. package/components/ion-col.js +5 -5
  33. package/components/ion-content.js +11 -11
  34. package/components/ion-datetime-button.js +9 -6
  35. package/components/ion-datetime.js +98 -20
  36. package/components/ion-fab-button.js +32 -10
  37. package/components/ion-fab-list.js +5 -5
  38. package/components/ion-fab.js +6 -6
  39. package/components/ion-footer.js +15 -11
  40. package/components/ion-grid.js +5 -5
  41. package/components/ion-header.js +20 -13
  42. package/components/ion-img.js +5 -2
  43. package/components/ion-infinite-scroll-content.js +12 -8
  44. package/components/ion-infinite-scroll.js +5 -5
  45. package/components/ion-input-password-toggle.js +44 -10
  46. package/components/ion-input.js +108 -20
  47. package/components/ion-item-divider.js +9 -5
  48. package/components/ion-item-group.js +9 -5
  49. package/components/ion-item-option.js +28 -8
  50. package/components/ion-item-options.js +9 -5
  51. package/components/ion-item-sliding.js +5 -5
  52. package/components/ion-loading.js +12 -8
  53. package/components/ion-menu-button.js +27 -10
  54. package/components/ion-menu-toggle.js +5 -5
  55. package/components/ion-menu.js +11 -7
  56. package/components/ion-modal.js +14 -11
  57. package/components/ion-nav-link.js +1 -1
  58. package/components/ion-nav.js +7 -6
  59. package/components/ion-note.js +9 -5
  60. package/components/ion-picker-legacy.js +7 -8
  61. package/components/ion-progress-bar.js +10 -6
  62. package/components/ion-range.js +11 -8
  63. package/components/ion-refresher-content.js +27 -9
  64. package/components/ion-refresher.js +11 -7
  65. package/components/ion-reorder-group.js +5 -5
  66. package/components/ion-reorder.js +30 -5
  67. package/components/ion-router-link.js +6 -6
  68. package/components/ion-router-outlet.js +2 -2
  69. package/components/ion-row.js +5 -2
  70. package/components/ion-searchbar.js +92 -16
  71. package/components/ion-segment-button.js +12 -8
  72. package/components/ion-segment.js +9 -5
  73. package/components/ion-select-option.js +5 -2
  74. package/components/ion-select.js +76 -28
  75. package/components/ion-skeleton-text.js +5 -5
  76. package/components/ion-split-pane.js +12 -8
  77. package/components/ion-tab-bar.js +11 -7
  78. package/components/ion-tab-button.js +11 -7
  79. package/components/ion-tab.js +2 -2
  80. package/components/ion-tabs.js +2 -2
  81. package/components/ion-text.js +5 -5
  82. package/components/ion-textarea.js +13 -9
  83. package/components/ion-thumbnail.js +5 -2
  84. package/components/ion-title.js +11 -7
  85. package/components/ion-toast.js +13 -9
  86. package/components/ion-toggle.js +73 -18
  87. package/components/ion-toolbar.js +11 -7
  88. package/components/ionic-global.js +191 -14
  89. package/components/ios.transition.js +1 -0
  90. package/components/item.js +34 -12
  91. package/components/label.js +9 -5
  92. package/components/list-header.js +9 -5
  93. package/components/list.js +29 -6
  94. package/components/list2.js +6 -0
  95. package/components/overlays.js +1 -2
  96. package/components/picker-column-option.js +9 -5
  97. package/components/picker-column.js +7 -7
  98. package/components/picker-column2.js +4 -4
  99. package/components/picker.js +8 -4
  100. package/components/popover.js +11 -8
  101. package/components/radio-group.js +5 -3
  102. package/components/radio.js +12 -8
  103. package/components/ripple-effect.js +5 -5
  104. package/components/select-popover.js +9 -2
  105. package/components/spinner.js +6 -6
  106. package/components/status-tap.js +1 -1
  107. package/components/x.js +6 -0
  108. package/css/core.css +1 -1
  109. package/css/core.css.map +1 -1
  110. package/css/display.css.map +1 -1
  111. package/css/flex-utils.css.map +1 -1
  112. package/css/float-elements.css.map +1 -1
  113. package/css/global.bundle.css.map +1 -1
  114. package/css/ionic/bundle.ionic.css +1 -0
  115. package/css/ionic/bundle.ionic.css.map +1 -0
  116. package/css/ionic/core.ionic.css +1 -0
  117. package/css/ionic/core.ionic.css.map +1 -0
  118. package/css/ionic/global.bundle.ionic.css +1 -0
  119. package/css/ionic/global.bundle.ionic.css.map +1 -0
  120. package/css/ionic/ionic-swiper.ionic.css +1 -0
  121. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  122. package/css/ionic/link.ionic.css +1 -0
  123. package/css/ionic/link.ionic.css.map +1 -0
  124. package/css/ionic/structure.ionic.css +1 -0
  125. package/css/ionic/structure.ionic.css.map +1 -0
  126. package/css/ionic/typography.ionic.css +1 -0
  127. package/css/ionic/typography.ionic.css.map +1 -0
  128. package/css/ionic/utils.bundle.ionic.css +1 -0
  129. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  130. package/css/ionic-swiper.css +1 -1
  131. package/css/ionic-swiper.css.map +1 -1
  132. package/css/ionic.bundle.css +1 -1
  133. package/css/ionic.bundle.css.map +1 -1
  134. package/css/normalize.css.map +1 -1
  135. package/css/padding.css.map +1 -1
  136. package/css/palettes/dark.always.css.map +1 -1
  137. package/css/palettes/dark.class.css.map +1 -1
  138. package/css/palettes/dark.system.css.map +1 -1
  139. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  140. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  141. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  142. package/css/palettes/high-contrast.always.css.map +1 -1
  143. package/css/palettes/high-contrast.class.css.map +1 -1
  144. package/css/palettes/high-contrast.system.css.map +1 -1
  145. package/css/structure.css.map +1 -1
  146. package/css/text-alignment.css.map +1 -1
  147. package/css/text-transformation.css.map +1 -1
  148. package/css/typography.css.map +1 -1
  149. package/css/utils.bundle.css.map +1 -1
  150. package/dist/cjs/{app-globals-be430589.js → app-globals-5b0a3f95.js} +1 -1
  151. package/dist/cjs/{button-active-5ccc5212.js → button-active-b75108e6.js} +1 -1
  152. package/dist/cjs/caret-down-3c215cff.js +8 -0
  153. package/dist/cjs/caret-left-2bb66970.js +8 -0
  154. package/dist/cjs/caret-right-88e03970.js +8 -0
  155. package/dist/cjs/{data-21dc0f81.js → data-7d67d1e3.js} +6 -6
  156. package/dist/cjs/{hardware-back-button-c8e15834.js → hardware-back-button-a90bf4cd.js} +2 -2
  157. package/dist/cjs/{index-08a41eaf.js → index-59095e03.js} +13 -12
  158. package/dist/cjs/{index-74e0fcb9.js → index-71f7488c.js} +7 -8
  159. package/dist/cjs/{index-44d397da.js → index-7f6ce0b7.js} +170 -185
  160. package/dist/cjs/{index-5b6a7459.js → index-ca6de37f.js} +2 -2
  161. package/dist/cjs/index.cjs.js +8 -9
  162. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-58aadbb2.js} +3 -2
  163. package/dist/cjs/{input.utils-611cde0b.js → input.utils-d9907cfc.js} +2 -2
  164. package/dist/cjs/ion-accordion_2.cjs.entry.js +40 -15
  165. package/dist/cjs/ion-action-sheet.cjs.entry.js +17 -13
  166. package/dist/cjs/ion-alert.cjs.entry.js +18 -15
  167. package/dist/cjs/ion-app_8.cjs.entry.js +94 -73
  168. package/dist/cjs/ion-avatar_3.cjs.entry.js +91 -8
  169. package/dist/cjs/ion-back-button.cjs.entry.js +28 -19
  170. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -7
  171. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +52 -15
  172. package/dist/cjs/ion-button_2.cjs.entry.js +45 -16
  173. package/dist/cjs/ion-card_5.cjs.entry.js +49 -26
  174. package/dist/cjs/ion-checkbox.cjs.entry.js +28 -13
  175. package/dist/cjs/ion-chip.cjs.entry.js +43 -8
  176. package/dist/cjs/ion-col_3.cjs.entry.js +14 -11
  177. package/dist/cjs/ion-datetime-button.cjs.entry.js +15 -12
  178. package/dist/cjs/ion-datetime_3.cjs.entry.js +186 -108
  179. package/dist/cjs/ion-fab_3.cjs.entry.js +41 -19
  180. package/dist/cjs/ion-img.cjs.entry.js +6 -3
  181. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +17 -14
  182. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +47 -13
  183. package/dist/cjs/ion-input.cjs.entry.js +107 -21
  184. package/dist/cjs/ion-item-option_3.cjs.entry.js +39 -17
  185. package/dist/cjs/ion-item_8.cjs.entry.js +104 -40
  186. package/dist/cjs/ion-loading.cjs.entry.js +15 -12
  187. package/dist/cjs/ion-menu_3.cjs.entry.js +44 -24
  188. package/dist/cjs/ion-modal.cjs.entry.js +23 -20
  189. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -9
  190. package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -6
  191. package/dist/cjs/ion-picker-column.cjs.entry.js +8 -8
  192. package/dist/cjs/ion-picker.cjs.entry.js +9 -5
  193. package/dist/cjs/ion-popover.cjs.entry.js +18 -15
  194. package/dist/cjs/ion-progress-bar.cjs.entry.js +11 -7
  195. package/dist/cjs/ion-radio_2.cjs.entry.js +17 -11
  196. package/dist/cjs/ion-range.cjs.entry.js +17 -14
  197. package/dist/cjs/ion-refresher_2.cjs.entry.js +36 -15
  198. package/dist/cjs/ion-reorder_2.cjs.entry.js +34 -10
  199. package/dist/cjs/ion-ripple-effect.cjs.entry.js +6 -6
  200. package/dist/cjs/ion-route_4.cjs.entry.js +7 -7
  201. package/dist/cjs/ion-searchbar.cjs.entry.js +92 -16
  202. package/dist/cjs/ion-segment_2.cjs.entry.js +21 -13
  203. package/dist/cjs/ion-select_3.cjs.entry.js +90 -33
  204. package/dist/cjs/ion-spinner.cjs.entry.js +7 -7
  205. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -9
  206. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +22 -14
  207. package/dist/cjs/ion-tab_2.cjs.entry.js +5 -5
  208. package/dist/cjs/ion-text.cjs.entry.js +6 -6
  209. package/dist/cjs/ion-textarea.cjs.entry.js +15 -12
  210. package/dist/cjs/ion-toast.cjs.entry.js +36 -32
  211. package/dist/cjs/ion-toggle.cjs.entry.js +73 -18
  212. package/dist/cjs/ionic-global-2bd379ad.js +418 -0
  213. package/dist/cjs/ionic.cjs.js +5 -5
  214. package/dist/cjs/{ios.transition-8be1e851.js → ios.transition-4a91b726.js} +4 -4
  215. package/dist/cjs/list-2930c629.js +8 -0
  216. package/dist/cjs/loader.cjs.js +4 -4
  217. package/dist/cjs/{md.transition-9b8536b3.js → md.transition-1d783fa9.js} +3 -4
  218. package/dist/cjs/{overlays-1761ff75.js → overlays-0c0d0193.js} +3 -4
  219. package/dist/cjs/{status-tap-6e71b616.js → status-tap-87959a2f.js} +3 -3
  220. package/dist/cjs/x-81a8f51c.js +8 -0
  221. package/dist/collection/collection-manifest.json +1 -1
  222. package/dist/collection/components/accordion/accordion.ios.css +12 -0
  223. package/dist/collection/components/accordion/accordion.js +35 -15
  224. package/dist/collection/components/accordion/accordion.md.css +6 -0
  225. package/dist/collection/components/accordion/test/a11y/accordion.e2e.js +40 -0
  226. package/dist/collection/components/accordion/test/accordion.spec.js +195 -0
  227. package/dist/collection/components/accordion/test/basic/accordion.e2e.js +52 -0
  228. package/dist/collection/components/accordion/test/disabled/accordion.e2e.js +94 -0
  229. package/dist/collection/components/accordion/test/multiple/accordion.e2e.js +26 -0
  230. package/dist/collection/components/accordion/test/nested/accordion.e2e.js +24 -0
  231. package/dist/collection/components/accordion/test/readonly/accordion.e2e.js +94 -0
  232. package/dist/collection/components/accordion/test/standalone/accordion.e2e.js +15 -0
  233. package/dist/collection/components/accordion-group/accordion-group.ios.css +12 -0
  234. package/dist/collection/components/accordion-group/accordion-group.js +11 -8
  235. package/dist/collection/components/accordion-group/accordion-group.md.css +18 -0
  236. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  237. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  238. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  239. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +99 -0
  240. package/dist/collection/components/action-sheet/test/action-sheet-id.spec.js +32 -0
  241. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +60 -0
  242. package/dist/collection/components/action-sheet/test/basic/action-sheet.e2e.js +142 -0
  243. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +40 -0
  244. package/dist/collection/components/action-sheet/test/is-open/action-sheet.e2e.js +33 -0
  245. package/dist/collection/components/action-sheet/test/translucent/action-sheet.e2e.js +18 -0
  246. package/dist/collection/components/action-sheet/test/trigger/action-sheet.e2e.js +29 -0
  247. package/dist/collection/components/alert/alert.ios.css +19 -1
  248. package/dist/collection/components/alert/alert.js +15 -12
  249. package/dist/collection/components/alert/alert.md.css +19 -1
  250. package/dist/collection/components/alert/test/a11y/alert.e2e.js +247 -0
  251. package/dist/collection/components/alert/test/alert-id.spec.js +32 -0
  252. package/dist/collection/components/alert/test/alert.spec.js +37 -0
  253. package/dist/collection/components/alert/test/basic/alert-tablet.e2e.js +40 -0
  254. package/dist/collection/components/alert/test/basic/alert.e2e.js +135 -0
  255. package/dist/collection/components/alert/test/is-open/alert.e2e.js +33 -0
  256. package/dist/collection/components/alert/test/standalone/alert.e2e.js +17 -0
  257. package/dist/collection/components/alert/test/trigger/alert.e2e.js +29 -0
  258. package/dist/collection/components/app/app.js +8 -4
  259. package/dist/collection/components/app/test/safe-area/app.e2e.js +35 -0
  260. package/dist/collection/components/avatar/avatar.ionic.css +255 -0
  261. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  262. package/dist/collection/components/avatar/avatar.js +92 -4
  263. package/dist/collection/components/avatar/avatar.md.css +12 -0
  264. package/dist/collection/components/avatar/test/basic/avatar.e2e.js +24 -0
  265. package/dist/collection/components/avatar/test/shape/avatar.e2e.js +134 -0
  266. package/dist/collection/components/avatar/test/size/avatar.e2e.js +147 -0
  267. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  268. package/dist/collection/components/back-button/back-button.js +27 -19
  269. package/dist/collection/components/back-button/back-button.md.css +60 -48
  270. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +47 -0
  271. package/dist/collection/components/back-button/test/back-button.spec.js +86 -0
  272. package/dist/collection/components/back-button/test/basic/back-button.e2e.js +14 -0
  273. package/dist/collection/components/back-button/test/toolbar/back-button.e2e.js +14 -0
  274. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  275. package/dist/collection/components/backdrop/backdrop.js +12 -6
  276. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  277. package/dist/collection/components/badge/badge.ionic.css +256 -0
  278. package/dist/collection/components/badge/badge.ios.css +12 -0
  279. package/dist/collection/components/badge/badge.js +75 -8
  280. package/dist/collection/components/badge/badge.md.css +12 -0
  281. package/dist/collection/components/badge/test/a11y/badge.e2e.js +40 -0
  282. package/dist/collection/components/badge/test/basic/badge.e2e.js +14 -0
  283. package/dist/collection/components/badge/test/shape/badge.e2e.js +84 -0
  284. package/dist/collection/components/badge/test/size/badge.e2e.js +96 -0
  285. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  286. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  287. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  288. package/dist/collection/components/breadcrumb/test/aria.spec.js +22 -0
  289. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  290. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  291. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  292. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +36 -0
  293. package/dist/collection/components/breadcrumbs/test/basic/breadcrumbs.e2e.js +14 -0
  294. package/dist/collection/components/breadcrumbs/test/breadcrumbs.spec.js +58 -0
  295. package/dist/collection/components/breadcrumbs/test/collapsed/breadcrumbs.e2e.js +14 -0
  296. package/dist/collection/components/breadcrumbs/test/reactive/breadcrumbs.e2e.js +51 -0
  297. package/dist/collection/components/button/button.ionic.css +417 -0
  298. package/dist/collection/components/button/button.ios.css +42 -16
  299. package/dist/collection/components/button/button.js +46 -17
  300. package/dist/collection/components/button/button.md.css +33 -20
  301. package/dist/collection/components/button/test/a11y/button.e2e.js +109 -0
  302. package/dist/collection/components/button/test/basic/button.e2e.js +51 -0
  303. package/dist/collection/components/button/test/clear/button.e2e.js +17 -0
  304. package/dist/collection/components/button/test/expand/button.e2e.js +17 -0
  305. package/dist/collection/components/button/test/form-reference/button.e2e.js +135 -0
  306. package/dist/collection/components/button/test/form-reference/button.spec.js +26 -0
  307. package/dist/collection/components/button/test/icon/button.e2e.js +14 -0
  308. package/dist/collection/components/button/test/outline/button.e2e.js +15 -0
  309. package/dist/collection/components/button/test/shape/button.e2e.js +250 -0
  310. package/dist/collection/components/button/test/size/button.e2e.js +60 -0
  311. package/dist/collection/components/button/test/states/button.e2e.js +51 -0
  312. package/dist/collection/components/button/test/strong/button.e2e.js +48 -0
  313. package/dist/collection/components/button/test/wrap/button.e2e.js +126 -0
  314. package/dist/collection/components/buttons/buttons.ionic.css +101 -0
  315. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  316. package/dist/collection/components/buttons/buttons.js +14 -8
  317. package/dist/collection/components/buttons/buttons.md.css +55 -3
  318. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +74 -0
  319. package/dist/collection/components/card/card.ionic.css +88 -0
  320. package/dist/collection/components/card/card.ios.css +30 -4
  321. package/dist/collection/components/card/card.js +34 -10
  322. package/dist/collection/components/card/card.md.css +30 -4
  323. package/dist/collection/components/card/test/a11y/card.e2e.js +31 -0
  324. package/dist/collection/components/card/test/aria.spec.js +16 -0
  325. package/dist/collection/components/card/test/basic/card.e2e.js +151 -0
  326. package/dist/collection/components/card/test/shape/card.e2e.js +40 -0
  327. package/dist/collection/components/card-content/card-content.ios.css +12 -0
  328. package/dist/collection/components/card-content/card-content.js +11 -8
  329. package/dist/collection/components/card-content/card-content.md.css +12 -0
  330. package/dist/collection/components/card-header/card-header.ios.css +12 -0
  331. package/dist/collection/components/card-header/card-header.js +12 -9
  332. package/dist/collection/components/card-header/card-header.md.css +12 -0
  333. package/dist/collection/components/card-header/test/basic/card-header.e2e.js +14 -0
  334. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  335. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  336. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  337. package/dist/collection/components/card-title/card-title.ios.css +12 -0
  338. package/dist/collection/components/card-title/card-title.js +11 -8
  339. package/dist/collection/components/card-title/card-title.md.css +12 -0
  340. package/dist/collection/components/checkbox/checkbox.ionic.css +389 -0
  341. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  342. package/dist/collection/components/checkbox/checkbox.js +63 -14
  343. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  344. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +42 -0
  345. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +152 -0
  346. package/dist/collection/components/checkbox/test/checkbox.spec.js +46 -0
  347. package/dist/collection/components/checkbox/test/color/checkbox.e2e.js +23 -0
  348. package/dist/collection/components/checkbox/test/indeterminate/checkbox.e2e.js +14 -0
  349. package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +74 -0
  350. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +122 -0
  351. package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +68 -0
  352. package/dist/collection/components/chip/chip.ionic.css +141 -0
  353. package/dist/collection/components/chip/chip.ios.css +20 -1
  354. package/dist/collection/components/chip/chip.js +77 -8
  355. package/dist/collection/components/chip/chip.md.css +20 -1
  356. package/dist/collection/components/chip/test/a11y/chip.e2e.js +58 -0
  357. package/dist/collection/components/chip/test/basic/chip.e2e.js +81 -0
  358. package/dist/collection/components/chip/test/shape/chip.e2e.js +39 -0
  359. package/dist/collection/components/chip/test/size/chip.e2e.js +26 -0
  360. package/dist/collection/components/chip/test/states/chip.e2e.js +51 -0
  361. package/dist/collection/components/col/col.css +12 -0
  362. package/dist/collection/components/col/col.js +9 -5
  363. package/dist/collection/components/content/content.css +8 -2
  364. package/dist/collection/components/content/content.js +13 -10
  365. package/dist/collection/components/content/test/basic/content.e2e.js +17 -0
  366. package/dist/collection/components/content/test/content.spec.js +27 -0
  367. package/dist/collection/components/content/test/fixed/content.e2e.js +17 -0
  368. package/dist/collection/components/content/test/fullscreen/content.e2e.js +17 -0
  369. package/dist/collection/components/content/test/standalone/content.e2e.js +16 -0
  370. package/dist/collection/components/datetime/datetime.ios.css +15 -3
  371. package/dist/collection/components/datetime/datetime.js +97 -19
  372. package/dist/collection/components/datetime/datetime.md.css +15 -3
  373. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +94 -0
  374. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +40 -0
  375. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +493 -0
  376. package/dist/collection/components/datetime/test/color/datetime.e2e.js +27 -0
  377. package/dist/collection/components/datetime/test/comparison.spec.js +43 -0
  378. package/dist/collection/components/datetime/test/custom/datetime.e2e.js +52 -0
  379. package/dist/collection/components/datetime/test/data.spec.js +456 -0
  380. package/dist/collection/components/datetime/test/datetime.e2e.js +39 -0
  381. package/dist/collection/components/datetime/test/disable-dates/datetime.e2e.js +150 -0
  382. package/dist/collection/components/datetime/test/disabled/datetime.e2e.js +68 -0
  383. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +33 -0
  384. package/dist/collection/components/datetime/test/display/datetime.e2e.js +121 -0
  385. package/dist/collection/components/datetime/test/first-day-of-week/datetime.e2e.js +14 -0
  386. package/dist/collection/components/datetime/test/format.spec.js +174 -0
  387. package/dist/collection/components/datetime/test/helpers.spec.js +72 -0
  388. package/dist/collection/components/datetime/test/highlighted-dates/datetime.e2e.js +86 -0
  389. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +37 -0
  390. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +129 -0
  391. package/dist/collection/components/datetime/test/manipulation.spec.js +565 -0
  392. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +266 -0
  393. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +29 -0
  394. package/dist/collection/components/datetime/test/multiple/datetime.e2e.js +242 -0
  395. package/dist/collection/components/datetime/test/overlay-roles/datetime.e2e.js +34 -0
  396. package/dist/collection/components/datetime/test/parse.spec.js +222 -0
  397. package/dist/collection/components/datetime/test/position/datetime.e2e.js +22 -0
  398. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +502 -0
  399. package/dist/collection/components/datetime/test/prefer-wheel/datetime.spec.js +27 -0
  400. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +169 -0
  401. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +113 -0
  402. package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +50 -0
  403. package/dist/collection/components/datetime/test/state.spec.js +114 -0
  404. package/dist/collection/components/datetime/test/time-label/datetime.e2e.js +25 -0
  405. package/dist/collection/components/datetime/test/values/datetime.e2e.js +143 -0
  406. package/dist/collection/components/datetime/utils/data.js +3 -3
  407. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  408. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  409. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  410. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +38 -0
  411. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +254 -0
  412. package/dist/collection/components/datetime-button/test/disabled/datetime-button.e2e.js +27 -0
  413. package/dist/collection/components/datetime-button/test/multiple/datetime-button.e2e.js +96 -0
  414. package/dist/collection/components/datetime-button/test/overlays/datetime-button.e2e.js +143 -0
  415. package/dist/collection/components/fab/fab.css +25 -1
  416. package/dist/collection/components/fab/fab.js +9 -5
  417. package/dist/collection/components/fab/test/basic/fab.e2e.js +65 -0
  418. package/dist/collection/components/fab/test/custom-size/fab.e2e.js +17 -0
  419. package/dist/collection/components/fab/test/safe-area/fab.e2e.js +63 -0
  420. package/dist/collection/components/fab/test/states/fab.e2e.js +14 -0
  421. package/dist/collection/components/fab/test/translucent/fab.e2e.js +28 -0
  422. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  423. package/dist/collection/components/fab-button/fab-button.js +36 -15
  424. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  425. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +66 -0
  426. package/dist/collection/components/fab-list/fab-list.css +12 -0
  427. package/dist/collection/components/fab-list/fab-list.js +9 -5
  428. package/dist/collection/components/footer/footer.ios.css +14 -2
  429. package/dist/collection/components/footer/footer.js +17 -14
  430. package/dist/collection/components/footer/footer.md.css +12 -0
  431. package/dist/collection/components/footer/test/basic/footer.e2e.js +61 -0
  432. package/dist/collection/components/footer/test/fade/footer.e2e.js +21 -0
  433. package/dist/collection/components/footer/test/scroll-target/footer.e2e.js +26 -0
  434. package/dist/collection/components/footer/test/with-tabs/footer.e2e.js +17 -0
  435. package/dist/collection/components/grid/grid.css +12 -0
  436. package/dist/collection/components/grid/grid.js +9 -5
  437. package/dist/collection/components/grid/test/basic/grid.e2e.js +17 -0
  438. package/dist/collection/components/grid/test/offsets/grid.e2e.js +17 -0
  439. package/dist/collection/components/grid/test/padding/grid.e2e.js +17 -0
  440. package/dist/collection/components/grid/test/sizes/grid.e2e.js +17 -0
  441. package/dist/collection/components/header/header.ionic.css +88 -0
  442. package/dist/collection/components/header/header.ios.css +25 -10
  443. package/dist/collection/components/header/header.js +38 -15
  444. package/dist/collection/components/header/header.md.css +23 -8
  445. package/dist/collection/components/header/test/a11y/header.e2e.js +29 -0
  446. package/dist/collection/components/header/test/basic/header.e2e.js +156 -0
  447. package/dist/collection/components/header/test/condense/header.e2e.js +33 -0
  448. package/dist/collection/components/header/test/divider/header.e2e.js +28 -0
  449. package/dist/collection/components/header/test/fade/header.e2e.js +21 -0
  450. package/dist/collection/components/header/test/scroll-target/header.e2e.js +26 -0
  451. package/dist/collection/components/icon/test/basic/icon.e2e.js +16 -0
  452. package/dist/collection/components/icon/test/dir/icon.e2e.js +23 -0
  453. package/dist/collection/components/img/img.js +8 -2
  454. package/dist/collection/components/img/test/basic/img.e2e.js +73 -0
  455. package/dist/collection/components/img/test/draggable/img.e2e.js +21 -0
  456. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  457. package/dist/collection/components/infinite-scroll/test/basic/infinite-scroll.e2e.js +19 -0
  458. package/dist/collection/components/infinite-scroll/test/scroll-target/infinite-scroll.e2e.js +19 -0
  459. package/dist/collection/components/infinite-scroll/test/small-dom-update/infinite-scroll.e2e.js +31 -0
  460. package/dist/collection/components/infinite-scroll/test/top/infinite-scroll.e2e.js +19 -0
  461. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  462. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  463. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  464. package/dist/collection/components/infinite-scroll-content/test/infinite-scroll-content.spec.js +37 -0
  465. package/dist/collection/components/input/input.ionic.css +1031 -0
  466. package/dist/collection/components/input/input.ios.css +21 -2
  467. package/dist/collection/components/input/input.js +134 -29
  468. package/dist/collection/components/input/input.md.css +43 -4
  469. package/dist/collection/components/input/test/a11y/input.e2e.js +67 -0
  470. package/dist/collection/components/input/test/basic/input.e2e.js +168 -0
  471. package/dist/collection/components/input/test/bottom-content/input.e2e.js +164 -0
  472. package/dist/collection/components/input/test/card/input.e2e.js +22 -0
  473. package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +53 -0
  474. package/dist/collection/components/input/test/color/input.e2e.js +130 -0
  475. package/dist/collection/components/input/test/fill/input.e2e.js +201 -0
  476. package/dist/collection/components/input/test/highlight/input.e2e.js +394 -0
  477. package/dist/collection/components/input/test/input.e2e.js +17 -0
  478. package/dist/collection/components/input/test/input.spec.js +98 -0
  479. package/dist/collection/components/input/test/item/input.e2e.js +64 -0
  480. package/dist/collection/components/input/test/label-placement/input.e2e.js +165 -0
  481. package/dist/collection/components/input/test/shape/input.e2e.js +165 -0
  482. package/dist/collection/components/input/test/size/input.e2e.js +164 -0
  483. package/dist/collection/components/input/test/slot/input.e2e.js +77 -0
  484. package/dist/collection/components/input/test/states/input.e2e.js +196 -0
  485. package/dist/collection/components/input-password-toggle/input-password-toggle.js +42 -8
  486. package/dist/collection/components/input-password-toggle/test/a11y/input-password-toggle.e2e.js +21 -0
  487. package/dist/collection/components/input-password-toggle/test/basic/input-password-toggle.e2e.js +38 -0
  488. package/dist/collection/components/input-password-toggle/test/input-password-toggle.spec.js +76 -0
  489. package/dist/collection/components/item/item.ionic.css +169 -0
  490. package/dist/collection/components/item/item.ios.css +20 -8
  491. package/dist/collection/components/item/item.js +38 -17
  492. package/dist/collection/components/item/item.md.css +31 -7
  493. package/dist/collection/components/item/test/a11y/item.e2e.js +123 -0
  494. package/dist/collection/components/item/test/a11y/item.spec.js +48 -0
  495. package/dist/collection/components/item/test/alignment/item.e2e.js +14 -0
  496. package/dist/collection/components/item/test/basic/item.e2e.js +35 -0
  497. package/dist/collection/components/item/test/buttons/item.e2e.js +45 -0
  498. package/dist/collection/components/item/test/colors/item.e2e.js +17 -0
  499. package/dist/collection/components/item/test/css-variables/item.e2e.js +17 -0
  500. package/dist/collection/components/item/test/disabled/item.e2e.js +17 -0
  501. package/dist/collection/components/item/test/dividers/item.e2e.js +14 -0
  502. package/dist/collection/components/item/test/groups/item.e2e.js +16 -0
  503. package/dist/collection/components/item/test/icons/item.e2e.js +14 -0
  504. package/dist/collection/components/item/test/images/item.e2e.js +14 -0
  505. package/dist/collection/components/item/test/inputs/item.e2e.js +199 -0
  506. package/dist/collection/components/item/test/item.spec.js +20 -0
  507. package/dist/collection/components/item/test/lines/item.e2e.js +14 -0
  508. package/dist/collection/components/item/test/media/item.e2e.js +14 -0
  509. package/dist/collection/components/item/test/reorder/item.e2e.js +16 -0
  510. package/dist/collection/components/item/test/slotted-inputs/item.e2e.js +149 -0
  511. package/dist/collection/components/item/test/states/item.e2e.js +17 -0
  512. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  513. package/dist/collection/components/item-divider/item-divider.js +11 -8
  514. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  515. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +44 -0
  516. package/dist/collection/components/item-divider/test/basic/item-divider.e2e.js +60 -0
  517. package/dist/collection/components/item-divider/test/spec/item-divider.e2e.js +16 -0
  518. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  519. package/dist/collection/components/item-group/item-group.js +13 -7
  520. package/dist/collection/components/item-group/item-group.md.css +12 -0
  521. package/dist/collection/components/item-option/item-option.ionic.css +334 -0
  522. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  523. package/dist/collection/components/item-option/item-option.js +43 -8
  524. package/dist/collection/components/item-option/item-option.md.css +14 -2
  525. package/dist/collection/components/item-options/item-options.ionic.css +260 -0
  526. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  527. package/dist/collection/components/item-options/item-options.js +13 -7
  528. package/dist/collection/components/item-options/item-options.md.css +18 -0
  529. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  530. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  531. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +62 -0
  532. package/dist/collection/components/item-sliding/test/async/item-sliding.e2e.js +33 -0
  533. package/dist/collection/components/item-sliding/test/basic/item-sliding.e2e.js +162 -0
  534. package/dist/collection/components/item-sliding/test/icons/item-sliding.e2e.js +35 -0
  535. package/dist/collection/components/item-sliding/test/scroll-target/item-sliding.e2e.js +29 -0
  536. package/dist/collection/components/item-sliding/test/shapes/item-sliding.e2e.js +28 -0
  537. package/dist/collection/components/item-sliding/test/states/item-sliding.e2e.js +26 -0
  538. package/dist/collection/components/label/label.ios.css +18 -0
  539. package/dist/collection/components/label/label.js +11 -8
  540. package/dist/collection/components/label/label.md.css +18 -0
  541. package/dist/collection/components/label/test/a11y/label.e2e.js +111 -0
  542. package/dist/collection/components/label/test/basic/label.e2e.js +45 -0
  543. package/dist/collection/components/label/test/color/label.e2e.js +39 -0
  544. package/dist/collection/components/label/test/headings/label.e2e.js +13 -0
  545. package/dist/collection/components/label/test/item/item.e2e.js +24 -0
  546. package/dist/collection/components/list/list.ionic.css +174 -0
  547. package/dist/collection/components/list/list.ios.css +18 -0
  548. package/dist/collection/components/list/list.js +47 -9
  549. package/dist/collection/components/list/list.md.css +20 -2
  550. package/dist/collection/components/list/test/a11y/list.e2e.js +15 -0
  551. package/dist/collection/components/list/test/basic/list.e2e.js +24 -0
  552. package/dist/collection/components/list/test/inset/list.e2e.js +69 -0
  553. package/dist/collection/components/list/test/lines/list.e2e.js +167 -0
  554. package/dist/collection/components/list/test/shape/list.e2e.js +204 -0
  555. package/dist/collection/components/list-header/list-header.ionic.css +238 -0
  556. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  557. package/dist/collection/components/list-header/list-header.js +11 -8
  558. package/dist/collection/components/list-header/list-header.md.css +18 -0
  559. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +24 -0
  560. package/dist/collection/components/list-header/test/basic/list-header.e2e.js +42 -0
  561. package/dist/collection/components/loading/loading.ios.css +13 -1
  562. package/dist/collection/components/loading/loading.js +13 -10
  563. package/dist/collection/components/loading/loading.md.css +13 -1
  564. package/dist/collection/components/loading/test/a11y/loading.e2e.js +61 -0
  565. package/dist/collection/components/loading/test/basic/loading.e2e.js +80 -0
  566. package/dist/collection/components/loading/test/basic/loading.spec.js +16 -0
  567. package/dist/collection/components/loading/test/is-open/loading.e2e.js +28 -0
  568. package/dist/collection/components/loading/test/loading-id.spec.js +32 -0
  569. package/dist/collection/components/loading/test/loading.spec.js +37 -0
  570. package/dist/collection/components/loading/test/standalone/loading.e2e.js +21 -0
  571. package/dist/collection/components/loading/test/trigger/loading.e2e.js +32 -0
  572. package/dist/collection/components/menu/menu.ios.css +15 -3
  573. package/dist/collection/components/menu/menu.js +12 -7
  574. package/dist/collection/components/menu/menu.md.css +15 -3
  575. package/dist/collection/components/menu/test/a11y/menu.e2e.js +22 -0
  576. package/dist/collection/components/menu/test/basic/menu.e2e.js +124 -0
  577. package/dist/collection/components/menu/test/custom/menu.e2e.js +61 -0
  578. package/dist/collection/components/menu/test/disable/menu.e2e.js +55 -0
  579. package/dist/collection/components/menu/test/focus-trap/menu.e2e.js +72 -0
  580. package/dist/collection/components/menu/test/multiple/menu.e2e.js +60 -0
  581. package/dist/collection/components/menu/test/safe-area/menu.e2e.js +87 -0
  582. package/dist/collection/components/menu-button/menu-button.ionic.css +240 -0
  583. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  584. package/dist/collection/components/menu-button/menu-button.js +26 -10
  585. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  586. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +48 -0
  587. package/dist/collection/components/menu-button/test/async/menu-button.e2e.js +23 -0
  588. package/dist/collection/components/menu-button/test/basic/menu-button.e2e.js +14 -0
  589. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  590. package/dist/collection/components/menu-toggle/test/basic/menu-toggle.e2e.js +43 -0
  591. package/dist/collection/components/modal/modal.ios.css +14 -2
  592. package/dist/collection/components/modal/modal.js +13 -10
  593. package/dist/collection/components/modal/modal.md.css +14 -2
  594. package/dist/collection/components/modal/test/a11y/modal.e2e.js +21 -0
  595. package/dist/collection/components/modal/test/animations/modal.e2e.js +36 -0
  596. package/dist/collection/components/modal/test/basic/modal.e2e.js +125 -0
  597. package/dist/collection/components/modal/test/basic/modal.spec.js +35 -0
  598. package/dist/collection/components/modal/test/can-dismiss/modal-card.e2e.js +55 -0
  599. package/dist/collection/components/modal/test/can-dismiss/modal-sheet.e2e.js +73 -0
  600. package/dist/collection/components/modal/test/can-dismiss/modal.e2e.js +27 -0
  601. package/dist/collection/components/modal/test/can-dismiss/modal.spec.js +191 -0
  602. package/dist/collection/components/modal/test/card/modal-card.e2e.js +83 -0
  603. package/dist/collection/components/modal/test/card/modal-tablet.e2e.js +82 -0
  604. package/dist/collection/components/modal/test/card-nav/modal.e2e.js +38 -0
  605. package/dist/collection/components/modal/test/card-refresher/modal.e2e.js +22 -0
  606. package/dist/collection/components/modal/test/card-scroll-target/modal.e2e.js +42 -0
  607. package/dist/collection/components/modal/test/custom/modal.e2e.js +24 -0
  608. package/dist/collection/components/modal/test/custom-dialog/modal.e2e.js +20 -0
  609. package/dist/collection/components/modal/test/dark-mode/model.e2e.js +20 -0
  610. package/dist/collection/components/modal/test/inline/modal.e2e.js +48 -0
  611. package/dist/collection/components/modal/test/is-open/modal.e2e.js +25 -0
  612. package/dist/collection/components/modal/test/modal-attributes.spec.js +32 -0
  613. package/dist/collection/components/modal/test/modal-id.spec.js +32 -0
  614. package/dist/collection/components/modal/test/sheet/modal.e2e.js +212 -0
  615. package/dist/collection/components/modal/test/standalone/modal.e2e.js +19 -0
  616. package/dist/collection/components/modal/test/trigger/modal.e2e.js +31 -0
  617. package/dist/collection/components/modal/utils.spec.js +13 -0
  618. package/dist/collection/components/nav/nav.css +7 -1
  619. package/dist/collection/components/nav/nav.js +11 -5
  620. package/dist/collection/components/nav/test/basic/nav.e2e.js +69 -0
  621. package/dist/collection/components/nav/test/modal-navigation/nav.e2e.js +65 -0
  622. package/dist/collection/components/nav/test/nav-controller.spec.js +749 -0
  623. package/dist/collection/components/nav/test/nested/nav.e2e.js +66 -0
  624. package/dist/collection/components/nav/test/routing/nav.e2e.js +87 -0
  625. package/dist/collection/components/nav-link/nav-link.js +5 -1
  626. package/dist/collection/components/note/note.ios.css +12 -0
  627. package/dist/collection/components/note/note.js +11 -8
  628. package/dist/collection/components/note/note.md.css +12 -0
  629. package/dist/collection/components/note/test/a11y/note.e2e.js +95 -0
  630. package/dist/collection/components/note/test/basic/note.e2e.js +78 -0
  631. package/dist/collection/components/picker/picker.ios.css +15 -3
  632. package/dist/collection/components/picker/picker.js +8 -5
  633. package/dist/collection/components/picker/picker.md.css +15 -3
  634. package/dist/collection/components/picker/test/a11y/picker.e2e.js +15 -0
  635. package/dist/collection/components/picker/test/basic/picker.e2e.js +111 -0
  636. package/dist/collection/components/picker/test/custom/picker.e2e.js +85 -0
  637. package/dist/collection/components/picker/test/keyboard-entry/picker.e2e.js +183 -0
  638. package/dist/collection/components/picker-column/picker-column.css +9 -2
  639. package/dist/collection/components/picker-column/picker-column.js +8 -7
  640. package/dist/collection/components/picker-column/test/basic/picker-column.e2e.js +64 -0
  641. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +91 -0
  642. package/dist/collection/components/picker-column/test/picker-column.spec.js +83 -0
  643. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
  644. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  645. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  646. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  647. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
  648. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
  649. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +29 -0
  650. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  651. package/dist/collection/components/picker-legacy/picker.js +7 -6
  652. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  653. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
  654. package/dist/collection/components/picker-legacy/test/is-open/picker.e2e.js +28 -0
  655. package/dist/collection/components/picker-legacy/test/picker-id.spec.js +32 -0
  656. package/dist/collection/components/picker-legacy/test/trigger/picker.e2e.js +32 -0
  657. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  658. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  659. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  660. package/dist/collection/components/picker-legacy-column/test/picker-column-aria.spec.js +35 -0
  661. package/dist/collection/components/picker-legacy-column/test/picker-column-dynamic.spec.js +29 -0
  662. package/dist/collection/components/picker-legacy-column/test/picker-column.spec.js +17 -0
  663. package/dist/collection/components/picker-legacy-column/test/standalone/picker-column.e2e.js +35 -0
  664. package/dist/collection/components/popover/popover.ios.css +13 -1
  665. package/dist/collection/components/popover/popover.js +15 -12
  666. package/dist/collection/components/popover/popover.md.css +13 -1
  667. package/dist/collection/components/popover/test/adjustment/popover.e2e.js +33 -0
  668. package/dist/collection/components/popover/test/arrow/popover.e2e.js +27 -0
  669. package/dist/collection/components/popover/test/async/popover.e2e.js +42 -0
  670. package/dist/collection/components/popover/test/basic/popover.e2e.js +211 -0
  671. package/dist/collection/components/popover/test/basic/popover.spec.js +35 -0
  672. package/dist/collection/components/popover/test/dismiss-on-select/popover.e2e.js +38 -0
  673. package/dist/collection/components/popover/test/inline/popover.e2e.js +32 -0
  674. package/dist/collection/components/popover/test/is-open/popover.e2e.js +13 -0
  675. package/dist/collection/components/popover/test/nested/popover.e2e.js +92 -0
  676. package/dist/collection/components/popover/test/popover-id.spec.js +32 -0
  677. package/dist/collection/components/popover/test/position/popover.e2e.js +27 -0
  678. package/dist/collection/components/popover/test/reference/popover.e2e.js +22 -0
  679. package/dist/collection/components/popover/test/size/popover.e2e.js +41 -0
  680. package/dist/collection/components/popover/test/standalone/popover.e2e.js +15 -0
  681. package/dist/collection/components/popover/test/trigger/popover.e2e.js +46 -0
  682. package/dist/collection/components/popover/test/util.spec.js +53 -0
  683. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  684. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  685. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  686. package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +24 -0
  687. package/dist/collection/components/progress-bar/test/basic/progress-bar.e2e.js +14 -0
  688. package/dist/collection/components/progress-bar/test/buffer/progress-bar.e2e.js +20 -0
  689. package/dist/collection/components/progress-bar/test/determinate/progress-bar.e2e.js +20 -0
  690. package/dist/collection/components/radio/radio.ios.css +20 -2
  691. package/dist/collection/components/radio/radio.js +12 -9
  692. package/dist/collection/components/radio/radio.md.css +20 -2
  693. package/dist/collection/components/radio/test/a11y/radio.e2e.js +152 -0
  694. package/dist/collection/components/radio/test/color/radio.e2e.js +27 -0
  695. package/dist/collection/components/radio/test/item/radio.e2e.js +92 -0
  696. package/dist/collection/components/radio/test/label-placement/radio.e2e.js +135 -0
  697. package/dist/collection/components/radio/test/radio.spec.js +60 -0
  698. package/dist/collection/components/radio/test/states/radio.e2e.js +45 -0
  699. package/dist/collection/components/radio-group/radio-group.js +9 -3
  700. package/dist/collection/components/radio-group/test/basic/radio-group.e2e.js +85 -0
  701. package/dist/collection/components/radio-group/test/form/radio-group.e2e.js +56 -0
  702. package/dist/collection/components/radio-group/test/radio-group-events.e2e.js +80 -0
  703. package/dist/collection/components/radio-group/test/radio-group.spec.js +69 -0
  704. package/dist/collection/components/radio-group/test/search/radio-group.e2e.js +35 -0
  705. package/dist/collection/components/range/range.ios.css +12 -0
  706. package/dist/collection/components/range/range.js +12 -9
  707. package/dist/collection/components/range/range.md.css +12 -0
  708. package/dist/collection/components/range/test/a11y/range.e2e.js +89 -0
  709. package/dist/collection/components/range/test/active-bar-start/range.e2e.js +14 -0
  710. package/dist/collection/components/range/test/basic/range.e2e.js +31 -0
  711. package/dist/collection/components/range/test/color/range.e2e.js +20 -0
  712. package/dist/collection/components/range/test/custom/range.e2e.js +14 -0
  713. package/dist/collection/components/range/test/item/range.e2e.js +70 -0
  714. package/dist/collection/components/range/test/label/range.e2e.js +179 -0
  715. package/dist/collection/components/range/test/label/range.spec.js +47 -0
  716. package/dist/collection/components/range/test/range-events.e2e.js +179 -0
  717. package/dist/collection/components/range/test/range.spec.js +209 -0
  718. package/dist/collection/components/range/test/scroll-target/range.e2e.js +35 -0
  719. package/dist/collection/components/range/test/states/range.e2e.js +53 -0
  720. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  721. package/dist/collection/components/refresher/refresher.js +11 -8
  722. package/dist/collection/components/refresher/refresher.md.css +15 -2
  723. package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +26 -0
  724. package/dist/collection/components/refresher/test/basic/refresher.e2e.js +38 -0
  725. package/dist/collection/components/refresher/test/fullscreen/refresher.e2e.js +77 -0
  726. package/dist/collection/components/refresher/test/scroll-target/refresher.e2e.js +38 -0
  727. package/dist/collection/components/refresher-content/refresher-content.css +0 -0
  728. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  729. package/dist/collection/components/refresher-content/test/refresher-content.spec.js +46 -0
  730. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  731. package/dist/collection/components/reorder/reorder.js +33 -6
  732. package/dist/collection/components/reorder/reorder.md.css +6 -0
  733. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  734. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  735. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +33 -0
  736. package/dist/collection/components/reorder-group/test/basic/reorder-group.e2e.js +36 -0
  737. package/dist/collection/components/reorder-group/test/interactive/reorder-group.e2e.js +32 -0
  738. package/dist/collection/components/reorder-group/test/nested/reorder-group.e2e.js +32 -0
  739. package/dist/collection/components/reorder-group/test/scroll-target/reorder-group.e2e.js +32 -0
  740. package/dist/collection/components/ripple-effect/ripple-effect.css +7 -1
  741. package/dist/collection/components/ripple-effect/ripple-effect.js +8 -4
  742. package/dist/collection/components/ripple-effect/test/basic/ripple-effect.e2e.js +66 -0
  743. package/dist/collection/components/route/route.js +4 -0
  744. package/dist/collection/components/router/router.js +4 -0
  745. package/dist/collection/components/router/test/basic/router.e2e.js +68 -0
  746. package/dist/collection/components/router/test/guards/href/router.e2e.js +60 -0
  747. package/dist/collection/components/router/test/guards/link/router.e2e.js +60 -0
  748. package/dist/collection/components/router/test/guards/push/router.e2e.js +60 -0
  749. package/dist/collection/components/router/test/guards/router.e2e.js +13 -0
  750. package/dist/collection/components/router/test/matching.spec.js +250 -0
  751. package/dist/collection/components/router/test/parser.spec.js +133 -0
  752. package/dist/collection/components/router/test/path.spec.js +218 -0
  753. package/dist/collection/components/router/test/router.spec.js +55 -0
  754. package/dist/collection/components/router-link/router-link.css +8 -2
  755. package/dist/collection/components/router-link/router-link.js +9 -5
  756. package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +23 -0
  757. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  758. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  759. package/dist/collection/components/router-outlet/test/basic/router-outlet.e2e.js +39 -0
  760. package/dist/collection/components/row/row.css +12 -0
  761. package/dist/collection/components/row/row.js +9 -2
  762. package/dist/collection/components/searchbar/searchbar.ionic.css +270 -0
  763. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  764. package/dist/collection/components/searchbar/searchbar.js +96 -24
  765. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  766. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +37 -0
  767. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +161 -0
  768. package/dist/collection/components/searchbar/test/events/searchbar.e2e.js +67 -0
  769. package/dist/collection/components/searchbar/test/searchbar.spec.js +33 -0
  770. package/dist/collection/components/segment/segment.ios.css +18 -0
  771. package/dist/collection/components/segment/segment.js +11 -8
  772. package/dist/collection/components/segment/segment.md.css +18 -0
  773. package/dist/collection/components/segment/test/a11y/segment.e2e.js +69 -0
  774. package/dist/collection/components/segment/test/basic/segment.e2e.js +84 -0
  775. package/dist/collection/components/segment/test/custom/segment.e2e.js +14 -0
  776. package/dist/collection/components/segment/test/icon/segment.e2e.js +29 -0
  777. package/dist/collection/components/segment/test/modes/segment.e2e.js +38 -0
  778. package/dist/collection/components/segment/test/scrollable/segment.e2e.js +83 -0
  779. package/dist/collection/components/segment/test/segment-events.e2e.js +209 -0
  780. package/dist/collection/components/segment/test/segment.spec.js +37 -0
  781. package/dist/collection/components/segment/test/toolbar/segment.e2e.js +122 -0
  782. package/dist/collection/components/segment/test/wrap/segment.e2e.js +85 -0
  783. package/dist/collection/components/segment-button/segment-button.ios.css +16 -4
  784. package/dist/collection/components/segment-button/segment-button.js +12 -9
  785. package/dist/collection/components/segment-button/segment-button.md.css +18 -6
  786. package/dist/collection/components/select/select.ios.css +22 -3
  787. package/dist/collection/components/select/select.js +79 -31
  788. package/dist/collection/components/select/select.md.css +38 -5
  789. package/dist/collection/components/select/test/a11y/select.e2e.js +101 -0
  790. package/dist/collection/components/select/test/async/select.e2e.js +25 -0
  791. package/dist/collection/components/select/test/basic/select.e2e.js +195 -0
  792. package/dist/collection/components/select/test/card/select.e2e.js +22 -0
  793. package/dist/collection/components/select/test/color/select.e2e.js +42 -0
  794. package/dist/collection/components/select/test/compare-with/select.e2e.js +67 -0
  795. package/dist/collection/components/select/test/custom/select.e2e.js +68 -0
  796. package/dist/collection/components/select/test/disabled/select.e2e.js +30 -0
  797. package/dist/collection/components/select/test/fill/select.e2e.js +217 -0
  798. package/dist/collection/components/select/test/highlight/select.e2e.js +209 -0
  799. package/dist/collection/components/select/test/item/select.e2e.js +56 -0
  800. package/dist/collection/components/select/test/label/select.e2e.js +245 -0
  801. package/dist/collection/components/select/test/popover-size/select.e2e.js +80 -0
  802. package/dist/collection/components/select/test/select.spec.js +96 -0
  803. package/dist/collection/components/select/test/slot/select.e2e.js +79 -0
  804. package/dist/collection/components/select/test/states/select.e2e.js +41 -0
  805. package/dist/collection/components/select/test/toggle-icon/select.e2e.js +30 -0
  806. package/dist/collection/components/select/test/wrapping/select.e2e.js +36 -0
  807. package/dist/collection/components/select-option/select-option.js +9 -2
  808. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  809. package/dist/collection/components/select-popover/select-popover.js +12 -4
  810. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  811. package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +32 -0
  812. package/dist/collection/components/select-popover/test/basic/select-popover.e2e.js +77 -0
  813. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  814. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  815. package/dist/collection/components/skeleton-text/test/basic/skeleton-text.e2e.js +14 -0
  816. package/dist/collection/components/skeleton-text/test/custom/skeleton-text.e2e.js +14 -0
  817. package/dist/collection/components/spinner/spinner.css +6 -0
  818. package/dist/collection/components/spinner/spinner.js +10 -6
  819. package/dist/collection/components/spinner/test/basic/spinner.e2e.js +18 -0
  820. package/dist/collection/components/spinner/test/color/spinner.e2e.js +21 -0
  821. package/dist/collection/components/spinner/test/resize/spinner.e2e.js +35 -0
  822. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  823. package/dist/collection/components/split-pane/split-pane.js +14 -8
  824. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  825. package/dist/collection/components/split-pane/test/basic/split-pane.e2e.js +29 -0
  826. package/dist/collection/components/split-pane/test/multiple/split-pane.e2e.js +31 -0
  827. package/dist/collection/components/split-pane/test/wrapped-menu/split-pane.e2e.js +41 -0
  828. package/dist/collection/components/tab/tab.js +6 -2
  829. package/dist/collection/components/tab-bar/tab-bar.ionic.css +200 -0
  830. package/dist/collection/components/tab-bar/tab-bar.ios.css +64 -43
  831. package/dist/collection/components/tab-bar/tab-bar.js +12 -9
  832. package/dist/collection/components/tab-bar/tab-bar.md.css +64 -43
  833. package/dist/collection/components/tab-bar/test/basic/tab-bar.e2e.js +77 -0
  834. package/dist/collection/components/tab-bar/test/custom/tab-bar.e2e.js +14 -0
  835. package/dist/collection/components/tab-bar/test/translucent/tab-bar.e2e.js +70 -0
  836. package/dist/collection/components/tab-button/tab-button.ionic.css +273 -0
  837. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  838. package/dist/collection/components/tab-button/tab-button.js +11 -8
  839. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  840. package/dist/collection/components/tab-button/test/a11y/tab-button.e2e.js +15 -0
  841. package/dist/collection/components/tab-button/test/basic/tab-button.e2e.js +81 -0
  842. package/dist/collection/components/tab-button/test/layout/tab-button.e2e.js +123 -0
  843. package/dist/collection/components/tab-button/test/states/tab-button.e2e.js +65 -0
  844. package/dist/collection/components/tabs/tabs.css +7 -1
  845. package/dist/collection/components/tabs/tabs.js +4 -1
  846. package/dist/collection/components/tabs/test/basic/tabs.e2e.js +32 -0
  847. package/dist/collection/components/tabs/test/placements/tabs.e2e.js +39 -0
  848. package/dist/collection/components/text/test/basic/text.e2e.js +30 -0
  849. package/dist/collection/components/text/text.css +6 -0
  850. package/dist/collection/components/text/text.js +7 -6
  851. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +67 -0
  852. package/dist/collection/components/textarea/test/autogrow/textarea.e2e.js +48 -0
  853. package/dist/collection/components/textarea/test/bottom-content/textarea.e2e.js +120 -0
  854. package/dist/collection/components/textarea/test/card/textarea.e2e.js +22 -0
  855. package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +61 -0
  856. package/dist/collection/components/textarea/test/color/textarea.e2e.js +131 -0
  857. package/dist/collection/components/textarea/test/cols/textarea.e2e.js +37 -0
  858. package/dist/collection/components/textarea/test/fill/textarea.e2e.js +205 -0
  859. package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +303 -0
  860. package/dist/collection/components/textarea/test/item/textarea.e2e.js +64 -0
  861. package/dist/collection/components/textarea/test/label-placement/textarea.e2e.js +224 -0
  862. package/dist/collection/components/textarea/test/slot/textarea.e2e.js +63 -0
  863. package/dist/collection/components/textarea/test/states/textarea.e2e.js +23 -0
  864. package/dist/collection/components/textarea/test/textarea-events.e2e.js +70 -0
  865. package/dist/collection/components/textarea/test/textarea.spec.js +59 -0
  866. package/dist/collection/components/textarea/textarea.ios.css +26 -1
  867. package/dist/collection/components/textarea/textarea.js +15 -12
  868. package/dist/collection/components/textarea/textarea.md.css +39 -2
  869. package/dist/collection/components/thumbnail/test/basic/thumbnail.e2e.js +48 -0
  870. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  871. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  872. package/dist/collection/components/title/test/a11y/title.e2e.js +61 -0
  873. package/dist/collection/components/title/test/basic/title.e2e.js +30 -0
  874. package/dist/collection/components/title/title.ionic.css +147 -0
  875. package/dist/collection/components/title/title.ios.css +32 -4
  876. package/dist/collection/components/title/title.js +13 -7
  877. package/dist/collection/components/title/title.md.css +32 -4
  878. package/dist/collection/components/toast/animations/utils.js +1 -1
  879. package/dist/collection/components/toast/test/a11y/toast.e2e.js +210 -0
  880. package/dist/collection/components/toast/test/basic/toast.e2e.js +123 -0
  881. package/dist/collection/components/toast/test/is-open/toast.e2e.js +28 -0
  882. package/dist/collection/components/toast/test/layout/toast.e2e.js +17 -0
  883. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +45 -0
  884. package/dist/collection/components/toast/test/standalone/toast.e2e.js +21 -0
  885. package/dist/collection/components/toast/test/swipe-gesture/toast.e2e.js +84 -0
  886. package/dist/collection/components/toast/test/toast-config.spec.js +25 -0
  887. package/dist/collection/components/toast/test/toast-id.spec.js +32 -0
  888. package/dist/collection/components/toast/test/toast.spec.js +212 -0
  889. package/dist/collection/components/toast/test/trigger/toast.e2e.js +32 -0
  890. package/dist/collection/components/toast/toast.ios.css +12 -0
  891. package/dist/collection/components/toast/toast.js +15 -11
  892. package/dist/collection/components/toast/toast.md.css +12 -0
  893. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +21 -0
  894. package/dist/collection/components/toggle/test/color/toggle.e2e.js +23 -0
  895. package/dist/collection/components/toggle/test/enable-on-off-labels/toggle.e2e.js +61 -0
  896. package/dist/collection/components/toggle/test/item/toggle.e2e.js +104 -0
  897. package/dist/collection/components/toggle/test/label/toggle.e2e.js +120 -0
  898. package/dist/collection/components/toggle/test/sizes/toggle.e2e.js +14 -0
  899. package/dist/collection/components/toggle/test/states/toggle.e2e.js +30 -0
  900. package/dist/collection/components/toggle/test/toggle.spec.js +67 -0
  901. package/dist/collection/components/toggle/toggle.ios.css +23 -2
  902. package/dist/collection/components/toggle/toggle.js +70 -18
  903. package/dist/collection/components/toggle/toggle.md.css +20 -2
  904. package/dist/collection/components/toolbar/test/basic/toolbar.e2e.js +143 -0
  905. package/dist/collection/components/toolbar/test/colors/toolbar.e2e.js +17 -0
  906. package/dist/collection/components/toolbar/toolbar.ionic.css +235 -0
  907. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  908. package/dist/collection/components/toolbar/toolbar.js +13 -10
  909. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  910. package/dist/collection/css/test/link/basic/link.e2e.js +35 -0
  911. package/dist/collection/css/test/typography/a11y/typography.e2e.js +50 -0
  912. package/dist/collection/css/test/typography/basic/typography.e2e.js +14 -0
  913. package/dist/collection/global/ionic-global.js +161 -13
  914. package/dist/collection/global/test/config-controller.spec.js +85 -0
  915. package/dist/collection/global/test/ionic-global.spec.js +109 -0
  916. package/dist/collection/themes/native/test/colors/theme.e2e.js +170 -0
  917. package/dist/collection/utils/animation/test/animation.spec.js +358 -0
  918. package/dist/collection/utils/animation/test/animationbuilder/animation.e2e.js +31 -0
  919. package/dist/collection/utils/animation/test/basic/animation.e2e.js +17 -0
  920. package/dist/collection/utils/animation/test/display/animation.e2e.js +24 -0
  921. package/dist/collection/utils/animation/test/hooks/animation.e2e.js +45 -0
  922. package/dist/collection/utils/animation/test/multiple/animation.e2e.js +30 -0
  923. package/dist/collection/utils/content/content.utils.spec.js +137 -0
  924. package/dist/collection/utils/floating-point/floating-point.spec.js +22 -0
  925. package/dist/collection/utils/focus-controller/test/generic/focus-controller.e2e.js +52 -0
  926. package/dist/collection/utils/focus-controller/test/ionic/focus-controller.e2e.js +52 -0
  927. package/dist/collection/utils/helpers.spec.js +36 -0
  928. package/dist/collection/utils/input-shims/hacks/test/scroll-assist.e2e.js +115 -0
  929. package/dist/collection/utils/keyboard/test/keyboard-controller.spec.js +21 -0
  930. package/dist/collection/utils/keyboard/test/keyboard.spec.js +214 -0
  931. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  932. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  933. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  934. package/dist/collection/utils/rtl/dir.spec.js +25 -0
  935. package/dist/collection/utils/sanitization/test/sanitization.spec.js +43 -0
  936. package/dist/collection/utils/tap-click/test/tap-click.e2e.js +25 -0
  937. package/dist/collection/utils/test/attributes.spec.js +53 -0
  938. package/dist/collection/utils/test/framework-delegate/framework-delegate.e2e.js +33 -0
  939. package/dist/collection/utils/test/hardware-back-button.spec.js +91 -0
  940. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
  941. package/dist/collection/utils/test/overlays/overlays.e2e.js +301 -0
  942. package/dist/collection/utils/test/overlays/overlays.spec.js +206 -0
  943. package/dist/collection/utils/test/platform.spec.js +132 -0
  944. package/dist/collection/utils/test/playwright/generator.js +48 -23
  945. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  946. package/dist/collection/utils/test/playwright/page/utils/set-content.js +13 -1
  947. package/dist/collection/utils/test/ready.spec.js +39 -0
  948. package/dist/collection/utils/test/theme.spec.js +56 -0
  949. package/dist/collection/utils/transition/ios.transition.js +1 -0
  950. package/dist/docs.json +6531 -327
  951. package/dist/esm/{app-globals-d2bbf400.js → app-globals-1fabe499.js} +1 -1
  952. package/dist/esm/{button-active-fe4a550b.js → button-active-367a8e84.js} +1 -1
  953. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  954. package/dist/esm/caret-left-33424bb0.js +6 -0
  955. package/dist/esm/caret-right-68d856ad.js +6 -0
  956. package/dist/esm/{data-ae11fd43.js → data-63b889c5.js} +4 -4
  957. package/dist/esm/{hardware-back-button-c807ed8f.js → hardware-back-button-2da817f5.js} +2 -2
  958. package/dist/esm/{index-5cc724f3.js → index-00b4cca5.js} +1 -1
  959. package/dist/esm/{index-d0939b0d.js → index-3321c202.js} +171 -186
  960. package/dist/esm/{index-c0c6139c.js → index-33a3d901.js} +4 -5
  961. package/dist/esm/{index-e42295b5.js → index-44013081.js} +9 -8
  962. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  963. package/dist/esm/index.js +8 -9
  964. package/dist/esm/{input-shims-0314bbe5.js → input-shims-c142630d.js} +3 -2
  965. package/dist/esm/{input.utils-09c71bc7.js → input.utils-68c66dbc.js} +1 -1
  966. package/dist/esm/ion-accordion_2.entry.js +40 -15
  967. package/dist/esm/ion-action-sheet.entry.js +17 -13
  968. package/dist/esm/ion-alert.entry.js +18 -15
  969. package/dist/esm/ion-app_8.entry.js +83 -62
  970. package/dist/esm/ion-avatar_3.entry.js +91 -8
  971. package/dist/esm/ion-back-button.entry.js +29 -20
  972. package/dist/esm/ion-backdrop.entry.js +11 -7
  973. package/dist/esm/ion-breadcrumb_2.entry.js +53 -16
  974. package/dist/esm/ion-button_2.entry.js +42 -13
  975. package/dist/esm/ion-card_5.entry.js +49 -26
  976. package/dist/esm/ion-checkbox.entry.js +28 -13
  977. package/dist/esm/ion-chip.entry.js +43 -8
  978. package/dist/esm/ion-col_3.entry.js +14 -11
  979. package/dist/esm/ion-datetime-button.entry.js +11 -8
  980. package/dist/esm/ion-datetime_3.entry.js +111 -33
  981. package/dist/esm/ion-fab_3.entry.js +42 -20
  982. package/dist/esm/ion-img.entry.js +6 -3
  983. package/dist/esm/ion-infinite-scroll_2.entry.js +17 -14
  984. package/dist/esm/ion-input-password-toggle.entry.js +45 -11
  985. package/dist/esm/ion-input.entry.js +108 -22
  986. package/dist/esm/ion-item-option_3.entry.js +39 -17
  987. package/dist/esm/ion-item_8.entry.js +105 -41
  988. package/dist/esm/ion-loading.entry.js +15 -12
  989. package/dist/esm/ion-menu_3.entry.js +45 -25
  990. package/dist/esm/ion-modal.entry.js +18 -15
  991. package/dist/esm/ion-nav_2.entry.js +10 -9
  992. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  993. package/dist/esm/ion-picker-column.entry.js +8 -8
  994. package/dist/esm/ion-picker.entry.js +9 -5
  995. package/dist/esm/ion-popover.entry.js +15 -12
  996. package/dist/esm/ion-progress-bar.entry.js +11 -7
  997. package/dist/esm/ion-radio_2.entry.js +17 -11
  998. package/dist/esm/ion-range.entry.js +12 -9
  999. package/dist/esm/ion-refresher_2.entry.js +37 -16
  1000. package/dist/esm/ion-reorder_2.entry.js +35 -11
  1001. package/dist/esm/ion-ripple-effect.entry.js +6 -6
  1002. package/dist/esm/ion-route_4.entry.js +7 -7
  1003. package/dist/esm/ion-searchbar.entry.js +93 -17
  1004. package/dist/esm/ion-segment_2.entry.js +21 -13
  1005. package/dist/esm/ion-select_3.entry.js +91 -34
  1006. package/dist/esm/ion-spinner.entry.js +7 -7
  1007. package/dist/esm/ion-split-pane.entry.js +13 -9
  1008. package/dist/esm/ion-tab-bar_2.entry.js +22 -14
  1009. package/dist/esm/ion-tab_2.entry.js +5 -5
  1010. package/dist/esm/ion-text.entry.js +6 -6
  1011. package/dist/esm/ion-textarea.entry.js +15 -12
  1012. package/dist/esm/ion-toast.entry.js +16 -12
  1013. package/dist/esm/ion-toggle.entry.js +74 -19
  1014. package/dist/esm/ionic-global-be8fa30a.js +408 -0
  1015. package/dist/esm/ionic.js +6 -6
  1016. package/dist/esm/{ios.transition-a7de9ae0.js → ios.transition-688eab99.js} +4 -4
  1017. package/dist/esm/list-6524700c.js +6 -0
  1018. package/dist/esm/loader.js +5 -5
  1019. package/dist/esm/{md.transition-afeeb8ad.js → md.transition-0540d1d2.js} +3 -4
  1020. package/dist/esm/{overlays-b38bea39.js → overlays-a0e93007.js} +2 -3
  1021. package/dist/esm/{status-tap-24635649.js → status-tap-8d02be66.js} +3 -3
  1022. package/dist/esm/x-a64bcd9f.js +6 -0
  1023. package/dist/esm-es5/app-globals-1fabe499.js +4 -0
  1024. package/dist/esm-es5/{button-active-fe4a550b.js → button-active-367a8e84.js} +1 -1
  1025. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  1026. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  1027. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  1028. package/dist/esm-es5/data-63b889c5.js +4 -0
  1029. package/dist/esm-es5/{hardware-back-button-c807ed8f.js → hardware-back-button-2da817f5.js} +1 -1
  1030. package/dist/esm-es5/index-00b4cca5.js +4 -0
  1031. package/dist/esm-es5/index-3321c202.js +5 -0
  1032. package/dist/esm-es5/index-33a3d901.js +4 -0
  1033. package/dist/esm-es5/index-44013081.js +4 -0
  1034. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  1035. package/dist/esm-es5/index.js +1 -1
  1036. package/dist/esm-es5/input-shims-c142630d.js +4 -0
  1037. package/dist/esm-es5/input.utils-68c66dbc.js +4 -0
  1038. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  1039. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  1040. package/dist/esm-es5/ion-alert.entry.js +1 -1
  1041. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  1042. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  1043. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  1044. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  1045. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  1046. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  1047. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  1048. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  1049. package/dist/esm-es5/ion-chip.entry.js +1 -1
  1050. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  1051. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  1052. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  1053. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  1054. package/dist/esm-es5/ion-img.entry.js +1 -1
  1055. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  1056. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  1057. package/dist/esm-es5/ion-input.entry.js +1 -1
  1058. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  1059. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  1060. package/dist/esm-es5/ion-loading.entry.js +1 -1
  1061. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  1062. package/dist/esm-es5/ion-modal.entry.js +1 -1
  1063. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  1064. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  1065. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  1066. package/dist/esm-es5/ion-picker.entry.js +1 -1
  1067. package/dist/esm-es5/ion-popover.entry.js +1 -1
  1068. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  1069. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  1070. package/dist/esm-es5/ion-range.entry.js +1 -1
  1071. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  1072. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  1073. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  1074. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  1075. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  1076. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  1077. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  1078. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  1079. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  1080. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  1081. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  1082. package/dist/esm-es5/ion-text.entry.js +1 -1
  1083. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  1084. package/dist/esm-es5/ion-toast.entry.js +1 -1
  1085. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  1086. package/dist/esm-es5/ionic-global-be8fa30a.js +4 -0
  1087. package/dist/esm-es5/ionic.js +1 -1
  1088. package/dist/esm-es5/ios.transition-688eab99.js +4 -0
  1089. package/dist/esm-es5/list-6524700c.js +4 -0
  1090. package/dist/esm-es5/loader.js +1 -1
  1091. package/dist/esm-es5/md.transition-0540d1d2.js +4 -0
  1092. package/dist/esm-es5/overlays-a0e93007.js +4 -0
  1093. package/dist/esm-es5/status-tap-8d02be66.js +4 -0
  1094. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  1095. package/dist/html.html-data.json +2075 -90
  1096. package/dist/ionic/index.esm.js +1 -1
  1097. package/dist/ionic/ionic.esm.js +1 -1
  1098. package/dist/ionic/ionic.js +1 -1
  1099. package/dist/ionic/p-01ae1aa0.entry.js +4 -0
  1100. package/dist/ionic/p-01d80901.system.js +4 -0
  1101. package/dist/ionic/p-021bee2f.system.entry.js +4 -0
  1102. package/dist/ionic/p-06ec4706.js +4 -0
  1103. package/dist/ionic/p-07012c84.system.entry.js +4 -0
  1104. package/dist/ionic/p-0a93c048.system.js +4 -0
  1105. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  1106. package/dist/ionic/p-1219eea0.system.entry.js +4 -0
  1107. package/dist/ionic/{p-047f956b.system.entry.js → p-128f0f15.system.entry.js} +2 -2
  1108. package/dist/ionic/{p-14f12331.js → p-15901e6c.js} +1 -1
  1109. package/dist/ionic/p-17cd5a7d.system.entry.js +4 -0
  1110. package/dist/ionic/{p-9ea607bd.system.js → p-1b75a2d2.system.js} +2 -2
  1111. package/dist/ionic/p-1dbb7fa3.entry.js +4 -0
  1112. package/dist/ionic/p-1e965028.system.entry.js +4 -0
  1113. package/dist/ionic/p-1ecfe64f.system.js +4 -0
  1114. package/dist/ionic/p-223bc7dd.system.entry.js +4 -0
  1115. package/dist/ionic/p-22fef691.js +4 -0
  1116. package/dist/ionic/p-243adf8c.js +4 -0
  1117. package/dist/ionic/p-24592a4d.system.entry.js +4 -0
  1118. package/dist/ionic/p-2755ad75.system.entry.js +4 -0
  1119. package/dist/ionic/p-27e42c9e.system.js +4 -0
  1120. package/dist/ionic/p-28649e61.entry.js +4 -0
  1121. package/dist/ionic/p-28a10445.system.js +4 -0
  1122. package/dist/ionic/{p-0c06e09b.system.js → p-2ac68c59.system.js} +1 -1
  1123. package/dist/ionic/{p-be223ece.system.entry.js → p-2d618ba6.system.entry.js} +1 -1
  1124. package/dist/ionic/p-2df16673.system.js +5 -0
  1125. package/dist/ionic/{p-06e58c4e.js → p-2fa9c16c.js} +1 -1
  1126. package/dist/ionic/p-359afeb0.system.entry.js +4 -0
  1127. package/dist/ionic/{p-daed612a.system.entry.js → p-3862d08b.system.entry.js} +1 -1
  1128. package/dist/ionic/p-39a39279.entry.js +4 -0
  1129. package/dist/ionic/p-3c18022f.entry.js +4 -0
  1130. package/dist/ionic/p-3dcadd72.entry.js +4 -0
  1131. package/dist/ionic/p-3e2568b9.system.js +4 -0
  1132. package/dist/ionic/p-3e9a1680.js +4 -0
  1133. package/dist/ionic/{p-d4e4843b.entry.js → p-4058051c.entry.js} +1 -1
  1134. package/dist/ionic/{p-5792993b.entry.js → p-4079d071.entry.js} +1 -1
  1135. package/dist/ionic/p-40c14f53.system.entry.js +4 -0
  1136. package/dist/ionic/{p-0b36037f.entry.js → p-41c9fb60.entry.js} +1 -1
  1137. package/dist/ionic/p-42452dc9.entry.js +4 -0
  1138. package/dist/ionic/p-42816eab.entry.js +4 -0
  1139. package/dist/ionic/p-429dd2b5.system.js +4 -0
  1140. package/dist/ionic/p-4346453b.entry.js +4 -0
  1141. package/dist/ionic/p-45ca3acb.system.entry.js +4 -0
  1142. package/dist/ionic/p-479bec54.entry.js +4 -0
  1143. package/dist/ionic/p-493a4548.js +5 -0
  1144. package/dist/ionic/p-4b9c6418.system.entry.js +4 -0
  1145. package/dist/ionic/p-4d6c2031.system.entry.js +4 -0
  1146. package/dist/ionic/p-546438d8.js +4 -0
  1147. package/dist/ionic/p-56041398.entry.js +4 -0
  1148. package/dist/ionic/p-563a8d3b.entry.js +4 -0
  1149. package/dist/ionic/p-56c72f65.system.entry.js +4 -0
  1150. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  1151. package/dist/ionic/p-5b57d327.system.js +4 -0
  1152. package/dist/ionic/p-607c9c33.js +4 -0
  1153. package/dist/ionic/p-610df697.entry.js +4 -0
  1154. package/dist/ionic/p-61ddbdb9.entry.js +4 -0
  1155. package/dist/ionic/p-644c505f.js +4 -0
  1156. package/dist/ionic/p-645a7748.entry.js +4 -0
  1157. package/dist/ionic/p-659ffb2c.entry.js +4 -0
  1158. package/dist/ionic/{p-d60342e3.js → p-6649365e.js} +1 -1
  1159. package/dist/ionic/{p-ad379d5f.system.entry.js → p-67f85d9a.system.entry.js} +1 -1
  1160. package/dist/ionic/p-6a0dd6bc.js +4 -0
  1161. package/dist/ionic/p-6ac07175.system.entry.js +4 -0
  1162. package/dist/ionic/p-6c57ed08.js +4 -0
  1163. package/dist/ionic/p-6ced0cc0.entry.js +4 -0
  1164. package/dist/ionic/p-6daa3633.entry.js +4 -0
  1165. package/dist/ionic/p-7176128c.entry.js +4 -0
  1166. package/dist/ionic/p-72e98815.system.js +4 -0
  1167. package/dist/ionic/p-79113968.js +4 -0
  1168. package/dist/ionic/p-7ab9c88c.system.entry.js +4 -0
  1169. package/dist/ionic/p-7b590e46.system.js +4 -0
  1170. package/dist/ionic/p-7b914bfb.entry.js +4 -0
  1171. package/dist/ionic/p-7bf2087e.entry.js +4 -0
  1172. package/dist/ionic/p-7dad531c.system.entry.js +4 -0
  1173. package/dist/ionic/p-7f8960a9.system.entry.js +4 -0
  1174. package/dist/ionic/p-8102551e.system.entry.js +4 -0
  1175. package/dist/ionic/p-82df3737.system.entry.js +4 -0
  1176. package/dist/ionic/p-87e823ce.js +4 -0
  1177. package/dist/ionic/p-8a04868b.system.entry.js +4 -0
  1178. package/dist/ionic/p-8ac5efa9.entry.js +4 -0
  1179. package/dist/ionic/p-8b8aacb5.system.entry.js +4 -0
  1180. package/dist/ionic/p-8ed0cef4.system.entry.js +4 -0
  1181. package/dist/ionic/p-90027267.system.js +4 -0
  1182. package/dist/ionic/p-924deb6b.entry.js +4 -0
  1183. package/dist/ionic/p-935801cc.entry.js +4 -0
  1184. package/dist/ionic/p-93c51199.system.entry.js +4 -0
  1185. package/dist/ionic/p-9771abb4.entry.js +4 -0
  1186. package/dist/ionic/p-9a793db6.entry.js +4 -0
  1187. package/dist/ionic/p-9b925d37.system.entry.js +4 -0
  1188. package/dist/ionic/p-9ead4417.js +4 -0
  1189. package/dist/ionic/{p-bcce7e0e.system.js → p-a06d7e6a.system.js} +1 -1
  1190. package/dist/ionic/p-a2830649.system.entry.js +4 -0
  1191. package/dist/ionic/{p-0fe97ea1.system.entry.js → p-a2b60239.system.entry.js} +1 -1
  1192. package/dist/ionic/p-a3b856e6.system.entry.js +4 -0
  1193. package/dist/ionic/{p-1389c4d5.js → p-a42e4adb.js} +1 -1
  1194. package/dist/ionic/p-a63acaa5.entry.js +4 -0
  1195. package/dist/ionic/p-a9af4103.js +4 -0
  1196. package/dist/ionic/p-ab038d73.system.entry.js +4 -0
  1197. package/dist/ionic/p-ab08cad3.entry.js +4 -0
  1198. package/dist/ionic/p-ada5e8bb.entry.js +4 -0
  1199. package/dist/ionic/p-b0c99bd1.system.entry.js +4 -0
  1200. package/dist/ionic/p-b374abe2.entry.js +4 -0
  1201. package/dist/ionic/{p-1249fc03.system.entry.js → p-b5cc6e57.system.entry.js} +2 -2
  1202. package/dist/ionic/p-b5e5f6f4.entry.js +4 -0
  1203. package/dist/ionic/p-bab398d1.entry.js +4 -0
  1204. package/dist/ionic/p-bae1a2ac.entry.js +4 -0
  1205. package/dist/ionic/p-bb7162de.system.js +4 -0
  1206. package/dist/ionic/p-c1930bc2.entry.js +4 -0
  1207. package/dist/ionic/p-c20e6ebc.system.entry.js +4 -0
  1208. package/dist/ionic/{p-a477e09f.entry.js → p-c23822f8.entry.js} +1 -1
  1209. package/dist/ionic/p-c248c88d.system.js +4 -0
  1210. package/dist/ionic/p-c374ab05.system.js +4 -0
  1211. package/dist/ionic/{p-006f399f.entry.js → p-c47b75e3.entry.js} +1 -1
  1212. package/dist/ionic/p-c79decb5.system.entry.js +4 -0
  1213. package/dist/ionic/p-ca5aaed3.system.entry.js +4 -0
  1214. package/dist/ionic/{p-96cc4814.js → p-cd99310b.js} +1 -1
  1215. package/dist/ionic/p-d281c150.system.entry.js +4 -0
  1216. package/dist/ionic/p-d2a580db.entry.js +4 -0
  1217. package/dist/ionic/p-d4f55a93.entry.js +4 -0
  1218. package/dist/ionic/p-d8893d17.entry.js +4 -0
  1219. package/dist/ionic/{p-f687573e.system.js → p-d98a1d99.system.js} +1 -1
  1220. package/dist/ionic/p-db08a2d0.system.entry.js +4 -0
  1221. package/dist/ionic/p-dc60009b.system.entry.js +4 -0
  1222. package/dist/ionic/p-dc8a3888.entry.js +4 -0
  1223. package/dist/ionic/p-e2313846.entry.js +4 -0
  1224. package/dist/ionic/p-e2bc9ce2.system.entry.js +4 -0
  1225. package/dist/ionic/p-e3b70846.system.js +4 -0
  1226. package/dist/ionic/{p-90b828d6.entry.js → p-e59d16bd.entry.js} +1 -1
  1227. package/dist/ionic/{p-9556c360.system.entry.js → p-e7e3ba54.system.entry.js} +1 -1
  1228. package/dist/ionic/p-e8aa220a.js +4 -0
  1229. package/dist/ionic/p-ebc71ff5.system.entry.js +4 -0
  1230. package/dist/ionic/p-f0fab903.system.entry.js +4 -0
  1231. package/dist/ionic/p-f621b019.entry.js +4 -0
  1232. package/dist/ionic/p-f6597755.system.entry.js +4 -0
  1233. package/dist/ionic/p-f84ea1e9.system.entry.js +4 -0
  1234. package/dist/ionic/p-f865b10c.entry.js +4 -0
  1235. package/dist/ionic/{p-7b898c20.system.js → p-fa019443.system.js} +1 -1
  1236. package/dist/ionic/p-fb17d462.entry.js +4 -0
  1237. package/dist/ionic/{p-84d98719.system.js → p-fc9f9e4d.system.js} +2 -2
  1238. package/dist/ionic/p-fcb1218a.system.entry.js +4 -0
  1239. package/dist/types/components/accordion/accordion.d.ts +4 -2
  1240. package/dist/types/components/accordion-group/accordion-group.d.ts +2 -1
  1241. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  1242. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  1243. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  1244. package/dist/types/components/alert/alert.d.ts +3 -2
  1245. package/dist/types/components/app/app.d.ts +4 -0
  1246. package/dist/types/components/avatar/avatar.d.ts +25 -0
  1247. package/dist/types/components/back-button/back-button.d.ts +2 -1
  1248. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  1249. package/dist/types/components/badge/badge.d.ts +23 -1
  1250. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  1251. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  1252. package/dist/types/components/button/button.d.ts +15 -4
  1253. package/dist/types/components/buttons/buttons.d.ts +5 -1
  1254. package/dist/types/components/card/card.d.ts +8 -1
  1255. package/dist/types/components/card-content/card-content.d.ts +2 -1
  1256. package/dist/types/components/card-header/card-header.d.ts +3 -2
  1257. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  1258. package/dist/types/components/card-title/card-title.d.ts +2 -1
  1259. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  1260. package/dist/types/components/chip/chip.d.ts +19 -1
  1261. package/dist/types/components/col/col.d.ts +4 -0
  1262. package/dist/types/components/content/content.d.ts +3 -0
  1263. package/dist/types/components/datetime/datetime.d.ts +26 -1
  1264. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  1265. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  1266. package/dist/types/components/fab/fab.d.ts +4 -0
  1267. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  1268. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  1269. package/dist/types/components/footer/footer.d.ts +4 -3
  1270. package/dist/types/components/grid/grid.d.ts +4 -0
  1271. package/dist/types/components/header/header.d.ts +9 -3
  1272. package/dist/types/components/img/img.d.ts +3 -0
  1273. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  1274. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  1275. package/dist/types/components/input/input.d.ts +30 -5
  1276. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  1277. package/dist/types/components/item/item.d.ts +6 -4
  1278. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  1279. package/dist/types/components/item-group/item-group.d.ts +4 -0
  1280. package/dist/types/components/item-option/item-option.d.ts +11 -1
  1281. package/dist/types/components/item-options/item-options.d.ts +4 -0
  1282. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  1283. package/dist/types/components/label/label.d.ts +2 -1
  1284. package/dist/types/components/list/list.d.ts +15 -1
  1285. package/dist/types/components/list-header/list-header.d.ts +2 -1
  1286. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  1287. package/dist/types/components/loading/loading.d.ts +3 -2
  1288. package/dist/types/components/menu/menu.d.ts +3 -0
  1289. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  1290. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  1291. package/dist/types/components/modal/modal-interface.d.ts +3 -7
  1292. package/dist/types/components/modal/modal.d.ts +2 -1
  1293. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  1294. package/dist/types/components/nav/nav.d.ts +5 -1
  1295. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  1296. package/dist/types/components/note/note.d.ts +2 -1
  1297. package/dist/types/components/picker/picker.d.ts +2 -1
  1298. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  1299. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  1300. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  1301. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  1302. package/dist/types/components/popover/popover.d.ts +6 -5
  1303. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  1304. package/dist/types/components/radio/radio.d.ts +2 -1
  1305. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  1306. package/dist/types/components/range/range.d.ts +2 -1
  1307. package/dist/types/components/refresher/refresher.d.ts +2 -1
  1308. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  1309. package/dist/types/components/reorder/reorder.d.ts +9 -0
  1310. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  1311. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  1312. package/dist/types/components/route/route.d.ts +4 -0
  1313. package/dist/types/components/router/router.d.ts +4 -0
  1314. package/dist/types/components/router-link/router-link.d.ts +4 -0
  1315. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  1316. package/dist/types/components/row/row.d.ts +4 -0
  1317. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  1318. package/dist/types/components/segment/segment.d.ts +2 -1
  1319. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  1320. package/dist/types/components/select/select.d.ts +20 -5
  1321. package/dist/types/components/select-option/select-option.d.ts +4 -0
  1322. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  1323. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  1324. package/dist/types/components/spinner/spinner.d.ts +4 -0
  1325. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  1326. package/dist/types/components/tab/tab.d.ts +4 -0
  1327. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -2
  1328. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  1329. package/dist/types/components/tabs/tabs.d.ts +3 -0
  1330. package/dist/types/components/text/text.d.ts +2 -1
  1331. package/dist/types/components/textarea/textarea.d.ts +3 -2
  1332. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  1333. package/dist/types/components/title/title.d.ts +4 -0
  1334. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1335. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1336. package/dist/types/components/toast/toast.d.ts +3 -2
  1337. package/dist/types/components/toggle/toggle.d.ts +15 -1
  1338. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1339. package/dist/types/components.d.ts +1302 -174
  1340. package/dist/types/global/ionic-global.d.ts +25 -2
  1341. package/dist/types/interface.d.ts +3 -0
  1342. package/dist/types/stencil-public-runtime.d.ts +2 -0
  1343. package/dist/types/utils/config.d.ts +99 -2
  1344. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1345. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1346. package/hydrate/index.d.ts +11 -29
  1347. package/hydrate/index.js +2187 -941
  1348. package/hydrate/package.json +1 -7
  1349. package/loader/index.d.ts +0 -3
  1350. package/package.json +11 -7
  1351. package/components/index9.js +0 -167
  1352. package/dist/cjs/index-5915f9b3.js +0 -38
  1353. package/dist/cjs/ionic-global-76e8c0ab.js +0 -237
  1354. package/dist/esm/index-9b0d46f4.js +0 -34
  1355. package/dist/esm/ionic-global-8a5e1a22.js +0 -231
  1356. package/dist/esm-es5/app-globals-d2bbf400.js +0 -4
  1357. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1358. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1359. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1360. package/dist/esm-es5/index-c0c6139c.js +0 -4
  1361. package/dist/esm-es5/index-d0939b0d.js +0 -5
  1362. package/dist/esm-es5/index-e42295b5.js +0 -4
  1363. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1364. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1365. package/dist/esm-es5/ionic-global-8a5e1a22.js +0 -4
  1366. package/dist/esm-es5/ios.transition-a7de9ae0.js +0 -4
  1367. package/dist/esm-es5/md.transition-afeeb8ad.js +0 -4
  1368. package/dist/esm-es5/overlays-b38bea39.js +0 -4
  1369. package/dist/esm-es5/status-tap-24635649.js +0 -4
  1370. package/dist/ionic/p-032843c9.entry.js +0 -4
  1371. package/dist/ionic/p-03795d2b.entry.js +0 -4
  1372. package/dist/ionic/p-06fee233.js +0 -4
  1373. package/dist/ionic/p-08b88555.entry.js +0 -4
  1374. package/dist/ionic/p-0cbdf0c9.system.entry.js +0 -4
  1375. package/dist/ionic/p-0eb4718b.entry.js +0 -4
  1376. package/dist/ionic/p-11122cae.system.entry.js +0 -4
  1377. package/dist/ionic/p-13e359bc.system.entry.js +0 -4
  1378. package/dist/ionic/p-142992cc.system.entry.js +0 -4
  1379. package/dist/ionic/p-16552182.entry.js +0 -4
  1380. package/dist/ionic/p-183d0bcb.js +0 -4
  1381. package/dist/ionic/p-1ad14c4b.entry.js +0 -4
  1382. package/dist/ionic/p-1d492de9.entry.js +0 -4
  1383. package/dist/ionic/p-1de1c7a5.entry.js +0 -4
  1384. package/dist/ionic/p-1ea2ddc8.system.entry.js +0 -4
  1385. package/dist/ionic/p-2069132e.entry.js +0 -4
  1386. package/dist/ionic/p-21918c51.system.entry.js +0 -4
  1387. package/dist/ionic/p-25fa6509.system.entry.js +0 -4
  1388. package/dist/ionic/p-2612efb0.entry.js +0 -4
  1389. package/dist/ionic/p-263f0c7a.system.entry.js +0 -4
  1390. package/dist/ionic/p-2690b1de.js +0 -4
  1391. package/dist/ionic/p-2c8cbbb8.entry.js +0 -4
  1392. package/dist/ionic/p-2fe8485a.entry.js +0 -4
  1393. package/dist/ionic/p-365739fe.entry.js +0 -4
  1394. package/dist/ionic/p-3b37bbb4.entry.js +0 -4
  1395. package/dist/ionic/p-3f496020.system.entry.js +0 -4
  1396. package/dist/ionic/p-411c5669.system.entry.js +0 -4
  1397. package/dist/ionic/p-4560ade8.system.entry.js +0 -4
  1398. package/dist/ionic/p-45cfeed7.system.entry.js +0 -4
  1399. package/dist/ionic/p-46d5cb1f.entry.js +0 -4
  1400. package/dist/ionic/p-48721892.system.entry.js +0 -4
  1401. package/dist/ionic/p-48acbfbf.system.js +0 -4
  1402. package/dist/ionic/p-497871d7.entry.js +0 -4
  1403. package/dist/ionic/p-53fca07b.entry.js +0 -4
  1404. package/dist/ionic/p-56fdb560.entry.js +0 -4
  1405. package/dist/ionic/p-5b2d254f.entry.js +0 -4
  1406. package/dist/ionic/p-5c069142.entry.js +0 -4
  1407. package/dist/ionic/p-5d8d3855.entry.js +0 -4
  1408. package/dist/ionic/p-5d9b263d.entry.js +0 -4
  1409. package/dist/ionic/p-604ff5b4.entry.js +0 -4
  1410. package/dist/ionic/p-648a5be7.entry.js +0 -4
  1411. package/dist/ionic/p-69a7697a.system.entry.js +0 -4
  1412. package/dist/ionic/p-6b3e204b.entry.js +0 -4
  1413. package/dist/ionic/p-6de13fb8.system.entry.js +0 -4
  1414. package/dist/ionic/p-70780833.entry.js +0 -4
  1415. package/dist/ionic/p-79ce0263.js +0 -4
  1416. package/dist/ionic/p-79f2b80a.js +0 -4
  1417. package/dist/ionic/p-7a12e2b1.system.entry.js +0 -4
  1418. package/dist/ionic/p-7a4e352f.system.js +0 -4
  1419. package/dist/ionic/p-7b7a832f.system.entry.js +0 -4
  1420. package/dist/ionic/p-81dc3d4b.system.entry.js +0 -4
  1421. package/dist/ionic/p-83654567.system.entry.js +0 -4
  1422. package/dist/ionic/p-83ecf213.entry.js +0 -4
  1423. package/dist/ionic/p-841756f4.entry.js +0 -4
  1424. package/dist/ionic/p-8a34da00.entry.js +0 -4
  1425. package/dist/ionic/p-8c631495.entry.js +0 -4
  1426. package/dist/ionic/p-8d012519.system.entry.js +0 -4
  1427. package/dist/ionic/p-8dcff877.system.entry.js +0 -4
  1428. package/dist/ionic/p-8fab5bf7.system.entry.js +0 -4
  1429. package/dist/ionic/p-910347cc.js +0 -4
  1430. package/dist/ionic/p-91855af0.system.entry.js +0 -4
  1431. package/dist/ionic/p-92c8e74a.js +0 -5
  1432. package/dist/ionic/p-99873a66.system.entry.js +0 -4
  1433. package/dist/ionic/p-99b6a64d.system.entry.js +0 -4
  1434. package/dist/ionic/p-9c030564.js +0 -4
  1435. package/dist/ionic/p-9d00c801.system.entry.js +0 -4
  1436. package/dist/ionic/p-9e577ae7.entry.js +0 -4
  1437. package/dist/ionic/p-9fc948d6.system.entry.js +0 -4
  1438. package/dist/ionic/p-a1f3fba3.system.js +0 -4
  1439. package/dist/ionic/p-a20e3a62.system.entry.js +0 -4
  1440. package/dist/ionic/p-a2e951a8.system.entry.js +0 -4
  1441. package/dist/ionic/p-a39248f7.system.js +0 -4
  1442. package/dist/ionic/p-a67df3cf.entry.js +0 -4
  1443. package/dist/ionic/p-a6d47c7f.system.entry.js +0 -4
  1444. package/dist/ionic/p-a7b7a59f.system.js +0 -4
  1445. package/dist/ionic/p-abd6754f.js +0 -4
  1446. package/dist/ionic/p-ad5edd29.system.entry.js +0 -4
  1447. package/dist/ionic/p-ae1618e7.system.js +0 -4
  1448. package/dist/ionic/p-b14a495d.system.entry.js +0 -4
  1449. package/dist/ionic/p-b5219c37.entry.js +0 -4
  1450. package/dist/ionic/p-b7c69630.system.entry.js +0 -4
  1451. package/dist/ionic/p-b87915cc.system.entry.js +0 -4
  1452. package/dist/ionic/p-b92a973e.entry.js +0 -4
  1453. package/dist/ionic/p-bcfe3f36.entry.js +0 -4
  1454. package/dist/ionic/p-c461cb11.system.entry.js +0 -4
  1455. package/dist/ionic/p-c92e3c5a.system.js +0 -4
  1456. package/dist/ionic/p-c95903d0.system.js +0 -5
  1457. package/dist/ionic/p-c9beb347.entry.js +0 -4
  1458. package/dist/ionic/p-ccbe6428.system.entry.js +0 -4
  1459. package/dist/ionic/p-ce5d8c97.system.entry.js +0 -4
  1460. package/dist/ionic/p-d77a4e9c.entry.js +0 -4
  1461. package/dist/ionic/p-d985aed6.js +0 -4
  1462. package/dist/ionic/p-df5e35aa.system.entry.js +0 -4
  1463. package/dist/ionic/p-dfb78785.system.js +0 -4
  1464. package/dist/ionic/p-e14265bf.system.entry.js +0 -4
  1465. package/dist/ionic/p-e3910d88.entry.js +0 -4
  1466. package/dist/ionic/p-e57d2079.system.entry.js +0 -4
  1467. package/dist/ionic/p-e6a16cac.js +0 -4
  1468. package/dist/ionic/p-e73690a1.entry.js +0 -4
  1469. package/dist/ionic/p-e9a3e4be.entry.js +0 -4
  1470. package/dist/ionic/p-f05e3612.system.entry.js +0 -4
  1471. package/dist/ionic/p-f5800672.entry.js +0 -4
  1472. package/dist/ionic/p-f83276cf.system.js +0 -4
  1473. package/dist/ionic/p-fc3a5f55.system.js +0 -4
  1474. package/dist/ionic/p-fe83c805.entry.js +0 -4
  1475. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1476. package/hydrate/index.mjs +0 -48653
@@ -82,17 +82,21 @@ export namespace Components {
82
82
  */
83
83
  "disabled": boolean;
84
84
  /**
85
- * The mode determines which platform styles to use.
85
+ * The mode determines the platform behaviors of the component.
86
86
  */
87
87
  "mode"?: "ios" | "md";
88
88
  /**
89
89
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
90
90
  */
91
91
  "readonly": boolean;
92
+ /**
93
+ * The theme determines the visual appearance of the component.
94
+ */
95
+ "theme"?: "ios" | "md" | "ionic";
92
96
  /**
93
97
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
94
98
  */
95
- "toggleIcon": string;
99
+ "toggleIcon"?: string;
96
100
  /**
97
101
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
98
102
  */
@@ -117,7 +121,7 @@ export namespace Components {
117
121
  "expand": 'compact' | 'inset';
118
122
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
119
123
  /**
120
- * The mode determines which platform styles to use.
124
+ * The mode determines the platform behaviors of the component.
121
125
  */
122
126
  "mode"?: "ios" | "md";
123
127
  /**
@@ -132,6 +136,10 @@ export namespace Components {
132
136
  * This method is used to ensure that the value of ion-accordion-group is being set in a valid way. This method should only be called in response to a user generated action.
133
137
  */
134
138
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
139
+ /**
140
+ * The theme determines the visual appearance of the component.
141
+ */
142
+ "theme"?: "ios" | "md" | "ionic";
135
143
  /**
136
144
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
137
145
  */
@@ -187,7 +195,7 @@ export namespace Components {
187
195
  */
188
196
  "leaveAnimation"?: AnimationBuilder;
189
197
  /**
190
- * The mode determines which platform styles to use.
198
+ * The mode determines the platform behaviors of the component.
191
199
  */
192
200
  "mode"?: "ios" | "md";
193
201
  /**
@@ -208,7 +216,11 @@ export namespace Components {
208
216
  */
209
217
  "subHeader"?: string;
210
218
  /**
211
- * If `true`, the action sheet will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
219
+ * The theme determines the visual appearance of the component.
220
+ */
221
+ "theme"?: "ios" | "md" | "ionic";
222
+ /**
223
+ * If `true`, the action sheet will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
212
224
  */
213
225
  "translucent": boolean;
214
226
  /**
@@ -274,7 +286,7 @@ export namespace Components {
274
286
  */
275
287
  "message"?: string | IonicSafeString;
276
288
  /**
277
- * The mode determines which platform styles to use.
289
+ * The mode determines the platform behaviors of the component.
278
290
  */
279
291
  "mode"?: "ios" | "md";
280
292
  /**
@@ -295,7 +307,11 @@ export namespace Components {
295
307
  */
296
308
  "subHeader"?: string;
297
309
  /**
298
- * If `true`, the alert will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
310
+ * The theme determines the visual appearance of the component.
311
+ */
312
+ "theme"?: "ios" | "md" | "ionic";
313
+ /**
314
+ * If `true`, the alert will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
299
315
  */
300
316
  "translucent": boolean;
301
317
  /**
@@ -304,9 +320,33 @@ export namespace Components {
304
320
  "trigger": string | undefined;
305
321
  }
306
322
  interface IonApp {
323
+ /**
324
+ * The mode determines the platform behaviors of the component.
325
+ */
326
+ "mode"?: "ios" | "md";
307
327
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
328
+ /**
329
+ * The theme determines the visual appearance of the component.
330
+ */
331
+ "theme"?: "ios" | "md" | "ionic";
308
332
  }
309
333
  interface IonAvatar {
334
+ /**
335
+ * The mode determines the platform behaviors of the component.
336
+ */
337
+ "mode"?: "ios" | "md";
338
+ /**
339
+ * Set to `"soft"` for an avatar with slightly rounded corners, `"round"` for an avatar with fully rounded corners, or `"rectangular"` for an avatar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
340
+ */
341
+ "shape"?: 'soft' | 'round' | 'rectangular';
342
+ /**
343
+ * Set to `"xsmall"` for the smallest size, `"small"` for a compact size, `"medium"` for the default height and width, `"large"` for a larger size, or `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
344
+ */
345
+ "size"?: `xsmall` | 'small' | 'medium' | 'large' | 'xlarge';
346
+ /**
347
+ * The theme determines the visual appearance of the component.
348
+ */
349
+ "theme"?: "ios" | "md" | "ionic";
310
350
  }
311
351
  interface IonBackButton {
312
352
  /**
@@ -326,7 +366,7 @@ export namespace Components {
326
366
  */
327
367
  "icon"?: string | null;
328
368
  /**
329
- * The mode determines which platform styles to use.
369
+ * The mode determines the platform behaviors of the component.
330
370
  */
331
371
  "mode"?: "ios" | "md";
332
372
  /**
@@ -337,12 +377,20 @@ export namespace Components {
337
377
  * The text to display in the back button.
338
378
  */
339
379
  "text"?: string | null;
380
+ /**
381
+ * The theme determines the visual appearance of the component.
382
+ */
383
+ "theme"?: "ios" | "md" | "ionic";
340
384
  /**
341
385
  * The type of the button.
342
386
  */
343
387
  "type": 'submit' | 'reset' | 'button';
344
388
  }
345
389
  interface IonBackdrop {
390
+ /**
391
+ * The mode determines the platform behaviors of the component.
392
+ */
393
+ "mode"?: "ios" | "md";
346
394
  /**
347
395
  * If `true`, the backdrop will stop propagation on tap.
348
396
  */
@@ -351,6 +399,10 @@ export namespace Components {
351
399
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
352
400
  */
353
401
  "tappable": boolean;
402
+ /**
403
+ * The theme determines the visual appearance of the component.
404
+ */
405
+ "theme"?: "ios" | "md" | "ionic";
354
406
  /**
355
407
  * If `true`, the backdrop will be visible.
356
408
  */
@@ -362,9 +414,21 @@ export namespace Components {
362
414
  */
363
415
  "color"?: Color;
364
416
  /**
365
- * The mode determines which platform styles to use.
417
+ * The mode determines the platform behaviors of the component.
366
418
  */
367
419
  "mode"?: "ios" | "md";
420
+ /**
421
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
422
+ */
423
+ "shape"?: 'soft' | 'round | rectangular';
424
+ /**
425
+ * Set to `"xxsmall"` for the smallest badge. Set to "xsmall" for a very small badge. Set to `"small"` for a small badge. Set to "medium" for a medium badge. Set to "large" for a large badge. Set to `"xlarge"` for the largest badge. Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
426
+ */
427
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
428
+ /**
429
+ * The theme determines the visual appearance of the component.
430
+ */
431
+ "theme"?: "ios" | "md" | "ionic";
368
432
  }
369
433
  interface IonBreadcrumb {
370
434
  /**
@@ -390,7 +454,7 @@ export namespace Components {
390
454
  "href": string | undefined;
391
455
  "last": boolean;
392
456
  /**
393
- * The mode determines which platform styles to use.
457
+ * The mode determines the platform behaviors of the component.
394
458
  */
395
459
  "mode"?: "ios" | "md";
396
460
  /**
@@ -414,6 +478,10 @@ export namespace Components {
414
478
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
415
479
  */
416
480
  "target": string | undefined;
481
+ /**
482
+ * The theme determines the visual appearance of the component.
483
+ */
484
+ "theme"?: "ios" | "md" | "ionic";
417
485
  }
418
486
  interface IonBreadcrumbs {
419
487
  /**
@@ -433,9 +501,13 @@ export namespace Components {
433
501
  */
434
502
  "maxItems"?: number;
435
503
  /**
436
- * The mode determines which platform styles to use.
504
+ * The mode determines the platform behaviors of the component.
437
505
  */
438
506
  "mode"?: "ios" | "md";
507
+ /**
508
+ * The theme determines the visual appearance of the component.
509
+ */
510
+ "theme"?: "ios" | "md" | "ionic";
439
511
  }
440
512
  interface IonButton {
441
513
  /**
@@ -471,7 +543,7 @@ export namespace Components {
471
543
  */
472
544
  "href": string | undefined;
473
545
  /**
474
- * The mode determines which platform styles to use.
546
+ * The mode determines the platform behaviors of the component.
475
547
  */
476
548
  "mode"?: "ios" | "md";
477
549
  /**
@@ -487,13 +559,13 @@ export namespace Components {
487
559
  */
488
560
  "routerDirection": RouterDirection;
489
561
  /**
490
- * Set to `"round"` for a button with more rounded corners.
562
+ * Set to `"soft"` for a button with slightly rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular"` for a button without rounded corners. Defaults to `"soft"` for the `"ios"` theme and `"round"` for all other themes.
491
563
  */
492
- "shape"?: 'round';
564
+ "shape"?: 'soft' | 'round' | 'rectangular';
493
565
  /**
494
566
  * Set to `"small"` for a button with less height and padding, to `"default"` for a button with the default height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
495
567
  */
496
- "size"?: 'small' | 'default' | 'large';
568
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
497
569
  /**
498
570
  * If `true`, activates a button with a heavier font weight.
499
571
  */
@@ -502,6 +574,10 @@ export namespace Components {
502
574
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
503
575
  */
504
576
  "target": string | undefined;
577
+ /**
578
+ * The theme determines the visual appearance of the component.
579
+ */
580
+ "theme"?: "ios" | "md" | "ionic";
505
581
  /**
506
582
  * The type of the button.
507
583
  */
@@ -509,9 +585,17 @@ export namespace Components {
509
585
  }
510
586
  interface IonButtons {
511
587
  /**
512
- * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in `ios` mode with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
588
+ * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in the `ios` theme with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
513
589
  */
514
590
  "collapse": boolean;
591
+ /**
592
+ * The mode determines the platform behaviors of the component.
593
+ */
594
+ "mode"?: "ios" | "md";
595
+ /**
596
+ * The theme determines the visual appearance of the component.
597
+ */
598
+ "theme"?: "ios" | "md" | "ionic";
515
599
  }
516
600
  interface IonCard {
517
601
  /**
@@ -535,7 +619,7 @@ export namespace Components {
535
619
  */
536
620
  "href": string | undefined;
537
621
  /**
538
- * The mode determines which platform styles to use.
622
+ * The mode determines the platform behaviors of the component.
539
623
  */
540
624
  "mode"?: "ios" | "md";
541
625
  /**
@@ -550,10 +634,18 @@ export namespace Components {
550
634
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
551
635
  */
552
636
  "routerDirection": RouterDirection;
637
+ /**
638
+ * Set to `"soft"` for a card with slightly rounded corners, `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners. Defaults to `"round"`.
639
+ */
640
+ "shape"?: 'soft' | 'round' | 'rectangular';
553
641
  /**
554
642
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
555
643
  */
556
644
  "target": string | undefined;
645
+ /**
646
+ * The theme determines the visual appearance of the component.
647
+ */
648
+ "theme"?: "ios" | "md" | "ionic";
557
649
  /**
558
650
  * The type of the button. Only used when an `onclick` or `button` property is present.
559
651
  */
@@ -561,9 +653,13 @@ export namespace Components {
561
653
  }
562
654
  interface IonCardContent {
563
655
  /**
564
- * The mode determines which platform styles to use.
656
+ * The mode determines the platform behaviors of the component.
565
657
  */
566
658
  "mode"?: "ios" | "md";
659
+ /**
660
+ * The theme determines the visual appearance of the component.
661
+ */
662
+ "theme"?: "ios" | "md" | "ionic";
567
663
  }
568
664
  interface IonCardHeader {
569
665
  /**
@@ -571,11 +667,15 @@ export namespace Components {
571
667
  */
572
668
  "color"?: Color;
573
669
  /**
574
- * The mode determines which platform styles to use.
670
+ * The mode determines the platform behaviors of the component.
575
671
  */
576
672
  "mode"?: "ios" | "md";
577
673
  /**
578
- * If `true`, the card header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
674
+ * The theme determines the visual appearance of the component.
675
+ */
676
+ "theme"?: "ios" | "md" | "ionic";
677
+ /**
678
+ * If `true`, the card header will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
579
679
  */
580
680
  "translucent": boolean;
581
681
  }
@@ -585,9 +685,13 @@ export namespace Components {
585
685
  */
586
686
  "color"?: Color;
587
687
  /**
588
- * The mode determines which platform styles to use.
688
+ * The mode determines the platform behaviors of the component.
589
689
  */
590
690
  "mode"?: "ios" | "md";
691
+ /**
692
+ * The theme determines the visual appearance of the component.
693
+ */
694
+ "theme"?: "ios" | "md" | "ionic";
591
695
  }
592
696
  interface IonCardTitle {
593
697
  /**
@@ -595,9 +699,13 @@ export namespace Components {
595
699
  */
596
700
  "color"?: Color;
597
701
  /**
598
- * The mode determines which platform styles to use.
702
+ * The mode determines the platform behaviors of the component.
599
703
  */
600
704
  "mode"?: "ios" | "md";
705
+ /**
706
+ * The theme determines the visual appearance of the component.
707
+ */
708
+ "theme"?: "ios" | "md" | "ionic";
601
709
  }
602
710
  interface IonCheckbox {
603
711
  /**
@@ -629,13 +737,25 @@ export namespace Components {
629
737
  */
630
738
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
631
739
  /**
632
- * The mode determines which platform styles to use.
740
+ * The mode determines the platform behaviors of the component.
633
741
  */
634
742
  "mode"?: "ios" | "md";
635
743
  /**
636
744
  * The name of the control, which is submitted with the form data.
637
745
  */
638
746
  "name": string;
747
+ /**
748
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
749
+ */
750
+ "shape"?: 'soft' | 'rectangular';
751
+ /**
752
+ * Set to `"small"` for a checkbox with less height and padding.
753
+ */
754
+ "size"?: 'small';
755
+ /**
756
+ * The theme determines the visual appearance of the component.
757
+ */
758
+ "theme"?: "ios" | "md" | "ionic";
639
759
  /**
640
760
  * The value of the checkbox does not mean if it's checked or not, use the `checked` property for that. The value of a checkbox is analogous to the value of an `<input type="checkbox">`, it's only used when the checkbox participates in a native `<form>`.
641
761
  */
@@ -651,15 +771,31 @@ export namespace Components {
651
771
  */
652
772
  "disabled": boolean;
653
773
  /**
654
- * The mode determines which platform styles to use.
774
+ * The mode determines the platform behaviors of the component.
655
775
  */
656
776
  "mode"?: "ios" | "md";
657
777
  /**
658
778
  * Display an outline style button.
659
779
  */
660
780
  "outline": boolean;
781
+ /**
782
+ * Set to `"soft"` for a chip with slightly rounded corners, `"round"` for a chip with fully rounded corners, or `"rectangular"` for a chip without rounded corners. Defaults to `"round"` for the `"ionic"` theme and `"soft"` for all other themes.
783
+ */
784
+ "shape"?: 'soft' | 'round' | 'rectangular';
785
+ /**
786
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
787
+ */
788
+ "size"?: 'small' | 'large';
789
+ /**
790
+ * The theme determines the visual appearance of the component.
791
+ */
792
+ "theme"?: "ios" | "md" | "ionic";
661
793
  }
662
794
  interface IonCol {
795
+ /**
796
+ * The mode determines the platform behaviors of the component.
797
+ */
798
+ "mode"?: "ios" | "md";
663
799
  /**
664
800
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
665
801
  */
@@ -756,6 +892,10 @@ export namespace Components {
756
892
  * The size of the column for xs screens, in terms of how many columns it should take up out of the total available. If `"auto"` is passed, the column will be the size of its content.
757
893
  */
758
894
  "sizeXs"?: string;
895
+ /**
896
+ * The theme determines the visual appearance of the component.
897
+ */
898
+ "theme"?: "ios" | "md" | "ionic";
759
899
  }
760
900
  interface IonContent {
761
901
  /**
@@ -782,6 +922,10 @@ export namespace Components {
782
922
  * Get the element where the actual scrolling takes place. This element can be used to subscribe to `scroll` events or manually modify `scrollTop`. However, it's recommended to use the API provided by `ion-content`: i.e. Using `ionScroll`, `ionScrollStart`, `ionScrollEnd` for scrolling events and `scrollToPoint()` to scroll the content into a certain point.
783
923
  */
784
924
  "getScrollElement": () => Promise<HTMLElement>;
925
+ /**
926
+ * The mode determines the platform behaviors of the component.
927
+ */
928
+ "mode"?: "ios" | "md";
785
929
  /**
786
930
  * Scroll by a specified X/Y distance in the component.
787
931
  * @param x The amount to scroll by on the horizontal axis.
@@ -818,6 +962,10 @@ export namespace Components {
818
962
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
819
963
  */
820
964
  "scrollY": boolean;
965
+ /**
966
+ * The theme determines the visual appearance of the component.
967
+ */
968
+ "theme"?: "ios" | "md" | "ionic";
821
969
  }
822
970
  interface IonDatetime {
823
971
  /**
@@ -893,7 +1041,7 @@ export namespace Components {
893
1041
  */
894
1042
  "minuteValues"?: number[] | number | string;
895
1043
  /**
896
- * The mode determines which platform styles to use.
1044
+ * The mode determines the platform behaviors of the component.
897
1045
  */
898
1046
  "mode"?: "ios" | "md";
899
1047
  /**
@@ -944,6 +1092,10 @@ export namespace Components {
944
1092
  * If `cover`, the `ion-datetime` will expand to cover the full width of its container. If `fixed`, the `ion-datetime` will have a fixed width.
945
1093
  */
946
1094
  "size": 'cover' | 'fixed';
1095
+ /**
1096
+ * The theme determines the visual appearance of the component.
1097
+ */
1098
+ "theme"?: "ios" | "md" | "ionic";
947
1099
  /**
948
1100
  * A callback used to format the header text that shows how many dates are selected. Only used if there are 0 or more than 1 selected (i.e. unused for exactly 1). By default, the header text is set to "numberOfDates days". See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
949
1101
  */
@@ -971,9 +1123,13 @@ export namespace Components {
971
1123
  */
972
1124
  "disabled": boolean;
973
1125
  /**
974
- * The mode determines which platform styles to use.
1126
+ * The mode determines the platform behaviors of the component.
975
1127
  */
976
1128
  "mode"?: "ios" | "md";
1129
+ /**
1130
+ * The theme determines the visual appearance of the component.
1131
+ */
1132
+ "theme"?: "ios" | "md" | "ionic";
977
1133
  }
978
1134
  interface IonFab {
979
1135
  /**
@@ -992,6 +1148,14 @@ export namespace Components {
992
1148
  * Where to align the fab horizontally in the viewport.
993
1149
  */
994
1150
  "horizontal"?: 'start' | 'end' | 'center';
1151
+ /**
1152
+ * The mode determines the platform behaviors of the component.
1153
+ */
1154
+ "mode"?: "ios" | "md";
1155
+ /**
1156
+ * The theme determines the visual appearance of the component.
1157
+ */
1158
+ "theme"?: "ios" | "md" | "ionic";
995
1159
  /**
996
1160
  * Opens/Closes the FAB list container.
997
1161
  */
@@ -1009,7 +1173,7 @@ export namespace Components {
1009
1173
  /**
1010
1174
  * The icon name to use for the close icon. This will appear when the fab button is pressed. Only applies if it is the main button inside of a fab containing a fab list.
1011
1175
  */
1012
- "closeIcon": string;
1176
+ "closeIcon"?: string;
1013
1177
  /**
1014
1178
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`. For more information on colors, see [theming](/docs/theming/basics).
1015
1179
  */
@@ -1027,7 +1191,7 @@ export namespace Components {
1027
1191
  */
1028
1192
  "href": string | undefined;
1029
1193
  /**
1030
- * The mode determines which platform styles to use.
1194
+ * The mode determines the platform behaviors of the component.
1031
1195
  */
1032
1196
  "mode"?: "ios" | "md";
1033
1197
  /**
@@ -1055,7 +1219,11 @@ export namespace Components {
1055
1219
  */
1056
1220
  "target": string | undefined;
1057
1221
  /**
1058
- * If `true`, the fab button will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1222
+ * The theme determines the visual appearance of the component.
1223
+ */
1224
+ "theme"?: "ios" | "md" | "ionic";
1225
+ /**
1226
+ * If `true`, the fab button will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1059
1227
  */
1060
1228
  "translucent": boolean;
1061
1229
  /**
@@ -1068,22 +1236,34 @@ export namespace Components {
1068
1236
  * If `true`, the fab list will show all fab buttons in the list.
1069
1237
  */
1070
1238
  "activated": boolean;
1239
+ /**
1240
+ * The mode determines the platform behaviors of the component.
1241
+ */
1242
+ "mode"?: "ios" | "md";
1071
1243
  /**
1072
1244
  * The side the fab list will show on relative to the main fab button.
1073
1245
  */
1074
1246
  "side": 'start' | 'end' | 'top' | 'bottom';
1247
+ /**
1248
+ * The theme determines the visual appearance of the component.
1249
+ */
1250
+ "theme"?: "ios" | "md" | "ionic";
1075
1251
  }
1076
1252
  interface IonFooter {
1077
1253
  /**
1078
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1254
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1079
1255
  */
1080
1256
  "collapse"?: 'fade';
1081
1257
  /**
1082
- * The mode determines which platform styles to use.
1258
+ * The mode determines the platform behaviors of the component.
1083
1259
  */
1084
1260
  "mode"?: "ios" | "md";
1085
1261
  /**
1086
- * If `true`, the footer will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
1262
+ * The theme determines the visual appearance of the component.
1263
+ */
1264
+ "theme"?: "ios" | "md" | "ionic";
1265
+ /**
1266
+ * If `true`, the footer will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the footer, the `fullscreen` attribute needs to be set on the content.
1087
1267
  */
1088
1268
  "translucent": boolean;
1089
1269
  }
@@ -1092,18 +1272,34 @@ export namespace Components {
1092
1272
  * If `true`, the grid will have a fixed width based on the screen size.
1093
1273
  */
1094
1274
  "fixed": boolean;
1275
+ /**
1276
+ * The mode determines the platform behaviors of the component.
1277
+ */
1278
+ "mode"?: "ios" | "md";
1279
+ /**
1280
+ * The theme determines the visual appearance of the component.
1281
+ */
1282
+ "theme"?: "ios" | "md" | "ionic";
1095
1283
  }
1096
1284
  interface IonHeader {
1097
1285
  /**
1098
- * Describes the scroll effect that will be applied to the header. Only applies in iOS mode. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
1286
+ * Describes the scroll effect that will be applied to the header. Only applies when the theme is `"ios"`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
1099
1287
  */
1100
1288
  "collapse"?: 'condense' | 'fade';
1101
1289
  /**
1102
- * The mode determines which platform styles to use.
1290
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1291
+ */
1292
+ "divider": boolean;
1293
+ /**
1294
+ * The mode determines the platform behaviors of the component.
1103
1295
  */
1104
1296
  "mode"?: "ios" | "md";
1105
1297
  /**
1106
- * If `true`, the header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
1298
+ * The theme determines the visual appearance of the component.
1299
+ */
1300
+ "theme"?: "ios" | "md" | "ionic";
1301
+ /**
1302
+ * If `true`, the header will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility). Note: In order to scroll content behind the header, the `fullscreen` attribute needs to be set on the content.
1107
1303
  */
1108
1304
  "translucent": boolean;
1109
1305
  }
@@ -1112,10 +1308,18 @@ export namespace Components {
1112
1308
  * This attribute defines the alternative text describing the image. Users will see this text displayed if the image URL is wrong, the image is not in one of the supported formats, or if the image is not yet downloaded.
1113
1309
  */
1114
1310
  "alt"?: string;
1311
+ /**
1312
+ * The mode determines the platform behaviors of the component.
1313
+ */
1314
+ "mode"?: "ios" | "md";
1115
1315
  /**
1116
1316
  * The image URL. This attribute is mandatory for the `<img>` element.
1117
1317
  */
1118
1318
  "src"?: string;
1319
+ /**
1320
+ * The theme determines the visual appearance of the component.
1321
+ */
1322
+ "theme"?: "ios" | "md" | "ionic";
1119
1323
  }
1120
1324
  interface IonInfiniteScroll {
1121
1325
  /**
@@ -1126,10 +1330,18 @@ export namespace Components {
1126
1330
  * If `true`, the infinite scroll will be hidden and scroll event listeners will be removed. Set this to true to disable the infinite scroll from actively trying to receive new data while scrolling. This is useful when it is known that there is no more data that can be added, and the infinite scroll is no longer needed.
1127
1331
  */
1128
1332
  "disabled": boolean;
1333
+ /**
1334
+ * The mode determines the platform behaviors of the component.
1335
+ */
1336
+ "mode"?: "ios" | "md";
1129
1337
  /**
1130
1338
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1131
1339
  */
1132
1340
  "position": 'top' | 'bottom';
1341
+ /**
1342
+ * The theme determines the visual appearance of the component.
1343
+ */
1344
+ "theme"?: "ios" | "md" | "ionic";
1133
1345
  /**
1134
1346
  * The threshold distance from the bottom of the content to call the `infinite` output event when scrolled. The threshold value can be either a percent, or in pixels. For example, use the value of `10%` for the `infinite` output event to get called when the user has scrolled 10% from the bottom of the page. Use the value `100px` when the scroll is within 100 pixels from the bottom of the page.
1135
1347
  */
@@ -1144,6 +1356,14 @@ export namespace Components {
1144
1356
  * Optional text to display while loading. `loadingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) This property accepts custom HTML as a string. Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
1145
1357
  */
1146
1358
  "loadingText"?: string | IonicSafeString;
1359
+ /**
1360
+ * The mode determines the platform behaviors of the component.
1361
+ */
1362
+ "mode"?: "ios" | "md";
1363
+ /**
1364
+ * The theme determines the visual appearance of the component.
1365
+ */
1366
+ "theme"?: "ios" | "md" | "ionic";
1147
1367
  }
1148
1368
  interface IonInput {
1149
1369
  /**
@@ -1203,7 +1423,7 @@ export namespace Components {
1203
1423
  */
1204
1424
  "errorText"?: string;
1205
1425
  /**
1206
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
1426
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available when the theme is `"md"`.
1207
1427
  */
1208
1428
  "fill"?: 'outline' | 'solid';
1209
1429
  /**
@@ -1223,9 +1443,9 @@ export namespace Components {
1223
1443
  */
1224
1444
  "label"?: string;
1225
1445
  /**
1226
- * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
1446
+ * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). Defaults to "stacked" for the ionic theme, or "start" for all other themes. In the ionic theme, only the values "stacked" and "floating" are supported.
1227
1447
  */
1228
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1448
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1229
1449
  /**
1230
1450
  * The maximum value, which must not be less than its minimum (min attribute) value.
1231
1451
  */
@@ -1243,7 +1463,7 @@ export namespace Components {
1243
1463
  */
1244
1464
  "minlength"?: number;
1245
1465
  /**
1246
- * The mode determines which platform styles to use.
1466
+ * The mode determines the platform behaviors of the component.
1247
1467
  */
1248
1468
  "mode"?: "ios" | "md";
1249
1469
  /**
@@ -1275,9 +1495,13 @@ export namespace Components {
1275
1495
  */
1276
1496
  "setFocus": () => Promise<void>;
1277
1497
  /**
1278
- * The shape of the input. If "round" it will have an increased border radius.
1498
+ * Set to `"soft"` for an input with slightly rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular"` for an input without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes. Only applies when the fill is set to `"solid"` or `"outline"`.
1279
1499
  */
1280
- "shape"?: 'round';
1500
+ "shape"?: 'soft' | 'round' | 'rectangular';
1501
+ /**
1502
+ * The size of the input. If "large", it will have an increased height. By default the size is medium. This property only applies to the `"ionic"` theme.
1503
+ */
1504
+ "size"?: 'medium' | 'large' | 'xlarge';
1281
1505
  /**
1282
1506
  * If `true`, the element will have its spelling and grammar checked.
1283
1507
  */
@@ -1286,6 +1510,10 @@ export namespace Components {
1286
1510
  * Works with the min and max attributes to limit the increments at which a value can be set. Possible values are: `"any"` or a positive floating point number.
1287
1511
  */
1288
1512
  "step"?: string;
1513
+ /**
1514
+ * The theme determines the visual appearance of the component.
1515
+ */
1516
+ "theme"?: "ios" | "md" | "ionic";
1289
1517
  /**
1290
1518
  * The type of control to display. The default type is text.
1291
1519
  */
@@ -1324,13 +1552,13 @@ export namespace Components {
1324
1552
  */
1325
1553
  "color"?: Color;
1326
1554
  /**
1327
- * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `mode` is `ios` and an `href` or `button` property is present.
1555
+ * If `true`, a detail arrow will appear on the item. Defaults to `false` unless the `theme` is `"ios"` and an `href` or `button` property is present.
1328
1556
  */
1329
1557
  "detail"?: boolean;
1330
1558
  /**
1331
1559
  * The icon to use when `detail` is set to `true`.
1332
1560
  */
1333
- "detailIcon": string;
1561
+ "detailIcon"?: string;
1334
1562
  /**
1335
1563
  * If `true`, the user cannot interact with the item.
1336
1564
  */
@@ -1348,7 +1576,7 @@ export namespace Components {
1348
1576
  */
1349
1577
  "lines"?: 'full' | 'inset' | 'none';
1350
1578
  /**
1351
- * The mode determines which platform styles to use.
1579
+ * The mode determines the platform behaviors of the component.
1352
1580
  */
1353
1581
  "mode"?: "ios" | "md";
1354
1582
  /**
@@ -1367,6 +1595,10 @@ export namespace Components {
1367
1595
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1368
1596
  */
1369
1597
  "target": string | undefined;
1598
+ /**
1599
+ * The theme determines the visual appearance of the component.
1600
+ */
1601
+ "theme"?: "ios" | "md" | "ionic";
1370
1602
  /**
1371
1603
  * The type of the button. Only used when an `onclick` or `button` property is present.
1372
1604
  */
@@ -1378,15 +1610,27 @@ export namespace Components {
1378
1610
  */
1379
1611
  "color"?: Color;
1380
1612
  /**
1381
- * The mode determines which platform styles to use.
1613
+ * The mode determines the platform behaviors of the component.
1382
1614
  */
1383
1615
  "mode"?: "ios" | "md";
1384
1616
  /**
1385
1617
  * When it's set to `true`, the item-divider will stay visible when it reaches the top of the viewport until the next `ion-item-divider` replaces it. This feature relies in `position:sticky`: https://caniuse.com/#feat=css-sticky
1386
1618
  */
1387
1619
  "sticky": boolean;
1620
+ /**
1621
+ * The theme determines the visual appearance of the component.
1622
+ */
1623
+ "theme"?: "ios" | "md" | "ionic";
1388
1624
  }
1389
1625
  interface IonItemGroup {
1626
+ /**
1627
+ * The mode determines the platform behaviors of the component.
1628
+ */
1629
+ "mode"?: "ios" | "md";
1630
+ /**
1631
+ * The theme determines the visual appearance of the component.
1632
+ */
1633
+ "theme"?: "ios" | "md" | "ionic";
1390
1634
  }
1391
1635
  interface IonItemOption {
1392
1636
  /**
@@ -1410,17 +1654,25 @@ export namespace Components {
1410
1654
  */
1411
1655
  "href": string | undefined;
1412
1656
  /**
1413
- * The mode determines which platform styles to use.
1657
+ * The mode determines the platform behaviors of the component.
1414
1658
  */
1415
1659
  "mode"?: "ios" | "md";
1416
1660
  /**
1417
1661
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
1418
1662
  */
1419
1663
  "rel": string | undefined;
1664
+ /**
1665
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
1666
+ */
1667
+ "shape"?: 'soft' | 'round' | 'rectangular';
1420
1668
  /**
1421
1669
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1422
1670
  */
1423
1671
  "target": string | undefined;
1672
+ /**
1673
+ * The theme determines the visual appearance of the component.
1674
+ */
1675
+ "theme"?: "ios" | "md" | "ionic";
1424
1676
  /**
1425
1677
  * The type of the button.
1426
1678
  */
@@ -1428,10 +1680,18 @@ export namespace Components {
1428
1680
  }
1429
1681
  interface IonItemOptions {
1430
1682
  "fireSwipeEvent": () => Promise<void>;
1683
+ /**
1684
+ * The mode determines the platform behaviors of the component.
1685
+ */
1686
+ "mode"?: "ios" | "md";
1431
1687
  /**
1432
1688
  * The side the option button should be on. Possible values: `"start"` and `"end"`. If you have multiple `ion-item-options`, a side must be provided for each.
1433
1689
  */
1434
1690
  "side": Side;
1691
+ /**
1692
+ * The theme determines the visual appearance of the component.
1693
+ */
1694
+ "theme"?: "ios" | "md" | "ionic";
1435
1695
  }
1436
1696
  interface IonItemSliding {
1437
1697
  /**
@@ -1454,11 +1714,19 @@ export namespace Components {
1454
1714
  * Get the ratio of the open amount of the item compared to the width of the options. If the number returned is positive, then the options on the right side are open. If the number returned is negative, then the options on the left side are open. If the absolute value of the number is greater than 1, the item is open more than the width of the options.
1455
1715
  */
1456
1716
  "getSlidingRatio": () => Promise<number>;
1717
+ /**
1718
+ * The mode determines the platform behaviors of the component.
1719
+ */
1720
+ "mode"?: "ios" | "md";
1457
1721
  /**
1458
1722
  * Open the sliding item.
1459
1723
  * @param side The side of the options to open. If a side is not provided, it will open the first set of options it finds within the item.
1460
1724
  */
1461
1725
  "open": (side: Side | undefined) => Promise<void>;
1726
+ /**
1727
+ * The theme determines the visual appearance of the component.
1728
+ */
1729
+ "theme"?: "ios" | "md" | "ionic";
1462
1730
  }
1463
1731
  interface IonLabel {
1464
1732
  /**
@@ -1466,13 +1734,17 @@ export namespace Components {
1466
1734
  */
1467
1735
  "color"?: Color;
1468
1736
  /**
1469
- * The mode determines which platform styles to use.
1737
+ * The mode determines the platform behaviors of the component.
1470
1738
  */
1471
1739
  "mode"?: "ios" | "md";
1472
1740
  /**
1473
1741
  * The position determines where and how the label behaves inside an item.
1474
1742
  */
1475
1743
  "position"?: 'fixed' | 'stacked' | 'floating';
1744
+ /**
1745
+ * The theme determines the visual appearance of the component.
1746
+ */
1747
+ "theme"?: "ios" | "md" | "ionic";
1476
1748
  }
1477
1749
  interface IonList {
1478
1750
  /**
@@ -1488,9 +1760,17 @@ export namespace Components {
1488
1760
  */
1489
1761
  "lines"?: 'full' | 'inset' | 'none';
1490
1762
  /**
1491
- * The mode determines which platform styles to use.
1763
+ * The mode determines the platform behaviors of the component.
1492
1764
  */
1493
1765
  "mode"?: "ios" | "md";
1766
+ /**
1767
+ * Set to `"soft"` for slightly rounded corners, `"round"` for fully rounded corners, or `"rectangular"` for no rounded corners. Defaults to `"round"` for the `ionic` theme when inset is `true` defaults to `"rectangular"` for the `ionic` theme when inset is `false`, undefined for all other themes.
1768
+ */
1769
+ "shape"?: 'soft' | 'round' | 'rectangular';
1770
+ /**
1771
+ * The theme determines the visual appearance of the component.
1772
+ */
1773
+ "theme"?: "ios" | "md" | "ionic";
1494
1774
  }
1495
1775
  interface IonListHeader {
1496
1776
  /**
@@ -1502,9 +1782,13 @@ export namespace Components {
1502
1782
  */
1503
1783
  "lines"?: 'full' | 'inset' | 'none';
1504
1784
  /**
1505
- * The mode determines which platform styles to use.
1785
+ * The mode determines the platform behaviors of the component.
1506
1786
  */
1507
1787
  "mode"?: "ios" | "md";
1788
+ /**
1789
+ * The theme determines the visual appearance of the component.
1790
+ */
1791
+ "theme"?: "ios" | "md" | "ionic";
1508
1792
  }
1509
1793
  interface IonLoading {
1510
1794
  /**
@@ -1556,7 +1840,7 @@ export namespace Components {
1556
1840
  */
1557
1841
  "message"?: string | IonicSafeString;
1558
1842
  /**
1559
- * The mode determines which platform styles to use.
1843
+ * The mode determines the platform behaviors of the component.
1560
1844
  */
1561
1845
  "mode"?: "ios" | "md";
1562
1846
  /**
@@ -1581,7 +1865,11 @@ export namespace Components {
1581
1865
  */
1582
1866
  "spinner"?: SpinnerTypes | null;
1583
1867
  /**
1584
- * If `true`, the loading indicator will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1868
+ * The theme determines the visual appearance of the component.
1869
+ */
1870
+ "theme"?: "ios" | "md" | "ionic";
1871
+ /**
1872
+ * If `true`, the loading indicator will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1585
1873
  */
1586
1874
  "translucent": boolean;
1587
1875
  /**
@@ -1618,6 +1906,10 @@ export namespace Components {
1618
1906
  * An id for the menu.
1619
1907
  */
1620
1908
  "menuId"?: string;
1909
+ /**
1910
+ * The mode determines the platform behaviors of the component.
1911
+ */
1912
+ "mode"?: "ios" | "md";
1621
1913
  /**
1622
1914
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1623
1915
  */
@@ -1634,6 +1926,10 @@ export namespace Components {
1634
1926
  * If `true`, swiping the menu is enabled.
1635
1927
  */
1636
1928
  "swipeGesture": boolean;
1929
+ /**
1930
+ * The theme determines the visual appearance of the component.
1931
+ */
1932
+ "theme"?: "ios" | "md" | "ionic";
1637
1933
  /**
1638
1934
  * Toggles the menu. If the menu is already open, it will try to close, otherwise it will try to open it. If the operation can't be completed successfully, it returns `false`.
1639
1935
  */
@@ -1661,9 +1957,13 @@ export namespace Components {
1661
1957
  */
1662
1958
  "menu"?: string;
1663
1959
  /**
1664
- * The mode determines which platform styles to use.
1960
+ * The mode determines the platform behaviors of the component.
1665
1961
  */
1666
1962
  "mode"?: "ios" | "md";
1963
+ /**
1964
+ * The theme determines the visual appearance of the component.
1965
+ */
1966
+ "theme"?: "ios" | "md" | "ionic";
1667
1967
  /**
1668
1968
  * The type of the button.
1669
1969
  */
@@ -1678,6 +1978,14 @@ export namespace Components {
1678
1978
  * Optional property that maps to a Menu's `menuId` prop. Can also be `start` or `end` for the menu side. This is used to find the correct menu to toggle. If this property is not used, `ion-menu-toggle` will toggle the first menu that is active.
1679
1979
  */
1680
1980
  "menu"?: string;
1981
+ /**
1982
+ * The mode determines the platform behaviors of the component.
1983
+ */
1984
+ "mode"?: "ios" | "md";
1985
+ /**
1986
+ * The theme determines the visual appearance of the component.
1987
+ */
1988
+ "theme"?: "ios" | "md" | "ionic";
1681
1989
  }
1682
1990
  interface IonModal {
1683
1991
  /**
@@ -1765,7 +2073,7 @@ export namespace Components {
1765
2073
  */
1766
2074
  "leaveAnimation"?: AnimationBuilder;
1767
2075
  /**
1768
- * The mode determines which platform styles to use.
2076
+ * The mode determines the platform behaviors of the component.
1769
2077
  */
1770
2078
  "mode"?: "ios" | "md";
1771
2079
  /**
@@ -1793,6 +2101,10 @@ export namespace Components {
1793
2101
  * If `true`, a backdrop will be displayed behind the modal. This property controls whether or not the backdrop darkens the screen when the modal is presented. It does not control whether or not the backdrop is active or present in the DOM.
1794
2102
  */
1795
2103
  "showBackdrop": boolean;
2104
+ /**
2105
+ * The theme determines the visual appearance of the component.
2106
+ */
2107
+ "theme"?: "ios" | "md" | "ionic";
1796
2108
  /**
1797
2109
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1798
2110
  */
@@ -1804,7 +2116,7 @@ export namespace Components {
1804
2116
  */
1805
2117
  "animated": boolean;
1806
2118
  /**
1807
- * By default `ion-nav` animates transition between pages based in the mode (ios or material design). However, this property allows to create custom transition using `AnimationBuilder` functions.
2119
+ * By default `ion-nav` animates transition between pages based on the mode ("ios" or "md"). However, this property allows to create custom transition using `AnimationBuilder` functions.
1808
2120
  */
1809
2121
  "animation"?: AnimationBuilder;
1810
2122
  /**
@@ -1852,6 +2164,10 @@ export namespace Components {
1852
2164
  * @param done The transition complete function.
1853
2165
  */
1854
2166
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2167
+ /**
2168
+ * The mode determines the platform behaviors of the component.
2169
+ */
2170
+ "mode"?: "ios" | "md";
1855
2171
  /**
1856
2172
  * Pop a component off of the navigation stack. Navigates back from the current component.
1857
2173
  * @param opts The navigation options.
@@ -1923,6 +2239,10 @@ export namespace Components {
1923
2239
  * If the nav component should allow for swipe-to-go-back.
1924
2240
  */
1925
2241
  "swipeGesture"?: boolean;
2242
+ /**
2243
+ * The theme determines the visual appearance of the component.
2244
+ */
2245
+ "theme"?: "ios" | "md" | "ionic";
1926
2246
  }
1927
2247
  interface IonNavLink {
1928
2248
  /**
@@ -1933,6 +2253,10 @@ export namespace Components {
1933
2253
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1934
2254
  */
1935
2255
  "componentProps"?: ComponentProps;
2256
+ /**
2257
+ * The mode determines the platform behaviors of the component.
2258
+ */
2259
+ "mode"?: "ios" | "md";
1936
2260
  /**
1937
2261
  * The transition animation when navigating to another page.
1938
2262
  */
@@ -1941,6 +2265,10 @@ export namespace Components {
1941
2265
  * The transition direction when navigating to another page.
1942
2266
  */
1943
2267
  "routerDirection": RouterDirection;
2268
+ /**
2269
+ * The theme determines the visual appearance of the component.
2270
+ */
2271
+ "theme"?: "ios" | "md" | "ionic";
1944
2272
  }
1945
2273
  interface IonNote {
1946
2274
  /**
@@ -1948,16 +2276,24 @@ export namespace Components {
1948
2276
  */
1949
2277
  "color"?: Color;
1950
2278
  /**
1951
- * The mode determines which platform styles to use.
2279
+ * The mode determines the platform behaviors of the component.
1952
2280
  */
1953
2281
  "mode"?: "ios" | "md";
2282
+ /**
2283
+ * The theme determines the visual appearance of the component.
2284
+ */
2285
+ "theme"?: "ios" | "md" | "ionic";
1954
2286
  }
1955
2287
  interface IonPicker {
1956
2288
  "exitInputMode": () => Promise<void>;
1957
2289
  /**
1958
- * The mode determines which platform styles to use.
2290
+ * The mode determines the platform behaviors of the component.
1959
2291
  */
1960
2292
  "mode"?: "ios" | "md";
2293
+ /**
2294
+ * The theme determines the visual appearance of the component.
2295
+ */
2296
+ "theme"?: "ios" | "md" | "ionic";
1961
2297
  }
1962
2298
  interface IonPickerColumn {
1963
2299
  /**
@@ -1969,7 +2305,7 @@ export namespace Components {
1969
2305
  */
1970
2306
  "disabled": boolean;
1971
2307
  /**
1972
- * The mode determines which platform styles to use.
2308
+ * The mode determines the platform behaviors of the component.
1973
2309
  */
1974
2310
  "mode"?: "ios" | "md";
1975
2311
  /**
@@ -1985,6 +2321,10 @@ export namespace Components {
1985
2321
  * Sets the value prop and fires the ionChange event. This is used when we need to fire ionChange from user-generated events that cannot be caught with normal input/change event listeners.
1986
2322
  */
1987
2323
  "setValue": (value: PickerColumnValue) => Promise<void>;
2324
+ /**
2325
+ * The theme determines the visual appearance of the component.
2326
+ */
2327
+ "theme"?: "ios" | "md" | "ionic";
1988
2328
  /**
1989
2329
  * The selected option in the picker.
1990
2330
  */
@@ -1999,6 +2339,14 @@ export namespace Components {
1999
2339
  * If `true`, the user cannot interact with the picker column option.
2000
2340
  */
2001
2341
  "disabled": boolean;
2342
+ /**
2343
+ * The mode determines the platform behaviors of the component.
2344
+ */
2345
+ "mode"?: "ios" | "md";
2346
+ /**
2347
+ * The theme determines the visual appearance of the component.
2348
+ */
2349
+ "theme"?: "ios" | "md" | "ionic";
2002
2350
  /**
2003
2351
  * The text value of the option.
2004
2352
  */
@@ -2063,7 +2411,7 @@ export namespace Components {
2063
2411
  */
2064
2412
  "leaveAnimation"?: AnimationBuilder;
2065
2413
  /**
2066
- * The mode determines which platform styles to use.
2414
+ * The mode determines the platform behaviors of the component.
2067
2415
  */
2068
2416
  "mode"?: "ios" | "md";
2069
2417
  /**
@@ -2083,6 +2431,10 @@ export namespace Components {
2083
2431
  * If `true`, a backdrop will be displayed behind the picker.
2084
2432
  */
2085
2433
  "showBackdrop": boolean;
2434
+ /**
2435
+ * The theme determines the visual appearance of the component.
2436
+ */
2437
+ "theme"?: "ios" | "md" | "ionic";
2086
2438
  /**
2087
2439
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2088
2440
  */
@@ -2096,7 +2448,7 @@ export namespace Components {
2096
2448
  }
2097
2449
  interface IonPopover {
2098
2450
  /**
2099
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2451
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2100
2452
  */
2101
2453
  "alignment"?: PositionAlign;
2102
2454
  /**
@@ -2104,7 +2456,7 @@ export namespace Components {
2104
2456
  */
2105
2457
  "animated": boolean;
2106
2458
  /**
2107
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2459
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2108
2460
  */
2109
2461
  "arrow": boolean;
2110
2462
  /**
@@ -2171,7 +2523,7 @@ export namespace Components {
2171
2523
  */
2172
2524
  "leaveAnimation"?: AnimationBuilder;
2173
2525
  /**
2174
- * The mode determines which platform styles to use.
2526
+ * The mode determines the platform behaviors of the component.
2175
2527
  */
2176
2528
  "mode"?: "ios" | "md";
2177
2529
  /**
@@ -2208,7 +2560,11 @@ export namespace Components {
2208
2560
  */
2209
2561
  "size": PopoverSize;
2210
2562
  /**
2211
- * If `true`, the popover will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
2563
+ * The theme determines the visual appearance of the component.
2564
+ */
2565
+ "theme"?: "ios" | "md" | "ionic";
2566
+ /**
2567
+ * If `true`, the popover will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
2212
2568
  */
2213
2569
  "translucent": boolean;
2214
2570
  /**
@@ -2230,13 +2586,17 @@ export namespace Components {
2230
2586
  */
2231
2587
  "color"?: Color;
2232
2588
  /**
2233
- * The mode determines which platform styles to use.
2589
+ * The mode determines the platform behaviors of the component.
2234
2590
  */
2235
2591
  "mode"?: "ios" | "md";
2236
2592
  /**
2237
2593
  * If true, reverse the progress bar direction.
2238
2594
  */
2239
2595
  "reversed": boolean;
2596
+ /**
2597
+ * The theme determines the visual appearance of the component.
2598
+ */
2599
+ "theme"?: "ios" | "md" | "ionic";
2240
2600
  /**
2241
2601
  * The state of the progress bar, based on if the time the process takes is known or not. Default options are: `"determinate"` (no animation), `"indeterminate"` (animate from left to right).
2242
2602
  */
@@ -2268,7 +2628,7 @@ export namespace Components {
2268
2628
  */
2269
2629
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2270
2630
  /**
2271
- * The mode determines which platform styles to use.
2631
+ * The mode determines the platform behaviors of the component.
2272
2632
  */
2273
2633
  "mode"?: "ios" | "md";
2274
2634
  /**
@@ -2277,6 +2637,10 @@ export namespace Components {
2277
2637
  "name": string;
2278
2638
  "setButtonTabindex": (value: number) => Promise<void>;
2279
2639
  "setFocus": (ev: globalThis.Event) => Promise<void>;
2640
+ /**
2641
+ * The theme determines the visual appearance of the component.
2642
+ */
2643
+ "theme"?: "ios" | "md" | "ionic";
2280
2644
  /**
2281
2645
  * the value of the radio.
2282
2646
  */
@@ -2291,10 +2655,18 @@ export namespace Components {
2291
2655
  * This property allows developers to specify a custom function or property name for comparing objects when determining the selected option in the ion-radio-group. When not specified, the default behavior will use strict equality (===) for comparison.
2292
2656
  */
2293
2657
  "compareWith"?: string | RadioGroupCompareFn | null;
2658
+ /**
2659
+ * The mode determines the platform behaviors of the component.
2660
+ */
2661
+ "mode"?: "ios" | "md";
2294
2662
  /**
2295
2663
  * The name of the control, which is submitted with the form data.
2296
2664
  */
2297
2665
  "name": string;
2666
+ /**
2667
+ * The theme determines the visual appearance of the component.
2668
+ */
2669
+ "theme"?: "ios" | "md" | "ionic";
2298
2670
  /**
2299
2671
  * the value of the radio group.
2300
2672
  */
@@ -2338,7 +2710,7 @@ export namespace Components {
2338
2710
  */
2339
2711
  "min": number;
2340
2712
  /**
2341
- * The mode determines which platform styles to use.
2713
+ * The mode determines the platform behaviors of the component.
2342
2714
  */
2343
2715
  "mode"?: "ios" | "md";
2344
2716
  /**
@@ -2361,6 +2733,10 @@ export namespace Components {
2361
2733
  * Specifies the value granularity.
2362
2734
  */
2363
2735
  "step": number;
2736
+ /**
2737
+ * The theme determines the visual appearance of the component.
2738
+ */
2739
+ "theme"?: "ios" | "md" | "ionic";
2364
2740
  /**
2365
2741
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2366
2742
  */
@@ -2392,7 +2768,7 @@ export namespace Components {
2392
2768
  */
2393
2769
  "getProgress": () => Promise<number>;
2394
2770
  /**
2395
- * The mode determines which platform styles to use.
2771
+ * The mode determines the platform behaviors of the component.
2396
2772
  */
2397
2773
  "mode"?: "ios" | "md";
2398
2774
  /**
@@ -2411,8 +2787,16 @@ export namespace Components {
2411
2787
  * Time it takes the refresher to snap back to the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2412
2788
  */
2413
2789
  "snapbackDuration": string;
2790
+ /**
2791
+ * The theme determines the visual appearance of the component.
2792
+ */
2793
+ "theme"?: "ios" | "md" | "ionic";
2414
2794
  }
2415
2795
  interface IonRefresherContent {
2796
+ /**
2797
+ * The mode determines the platform behaviors of the component.
2798
+ */
2799
+ "mode"?: "ios" | "md";
2416
2800
  /**
2417
2801
  * A static icon or a spinner to display when you begin to pull down. A spinner name can be provided to gradually show tick marks when pulling down on iOS devices.
2418
2802
  */
@@ -2429,8 +2813,20 @@ export namespace Components {
2429
2813
  * The text you want to display when performing a refresh. `refreshingText` can accept either plaintext or HTML as a string. To display characters normally reserved for HTML, they must be escaped. For example `<Ionic>` would become `&lt;Ionic&gt;` For more information: [Security Documentation](https://ionicframework.com/docs/faq/security) Content is parsed as plaintext by default. `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config before custom HTML can be used.
2430
2814
  */
2431
2815
  "refreshingText"?: string | IonicSafeString;
2816
+ /**
2817
+ * The theme determines the visual appearance of the component.
2818
+ */
2819
+ "theme"?: "ios" | "md" | "ionic";
2432
2820
  }
2433
2821
  interface IonReorder {
2822
+ /**
2823
+ * The mode determines the platform behaviors of the component.
2824
+ */
2825
+ "mode"?: "ios" | "md";
2826
+ /**
2827
+ * The theme determines the visual appearance of the component.
2828
+ */
2829
+ "theme"?: "ios" | "md" | "ionic";
2434
2830
  }
2435
2831
  interface IonReorderGroup {
2436
2832
  /**
@@ -2442,6 +2838,14 @@ export namespace Components {
2442
2838
  * If `true`, the reorder will be hidden.
2443
2839
  */
2444
2840
  "disabled": boolean;
2841
+ /**
2842
+ * The mode determines the platform behaviors of the component.
2843
+ */
2844
+ "mode"?: "ios" | "md";
2845
+ /**
2846
+ * The theme determines the visual appearance of the component.
2847
+ */
2848
+ "theme"?: "ios" | "md" | "ionic";
2445
2849
  }
2446
2850
  interface IonRippleEffect {
2447
2851
  /**
@@ -2450,6 +2854,14 @@ export namespace Components {
2450
2854
  * @param y The vertical coordinate of where the ripple should start.
2451
2855
  */
2452
2856
  "addRipple": (x: number, y: number) => Promise<() => void>;
2857
+ /**
2858
+ * The mode determines the platform behaviors of the component.
2859
+ */
2860
+ "mode"?: "ios" | "md";
2861
+ /**
2862
+ * The theme determines the visual appearance of the component.
2863
+ */
2864
+ "theme"?: "ios" | "md" | "ionic";
2453
2865
  /**
2454
2866
  * Sets the type of ripple-effect: - `bounded`: the ripple effect expands from the user's click position - `unbounded`: the ripple effect expands from the center of the button and overflows the container. NOTE: Surfaces for bounded ripples should have the overflow property set to hidden, while surfaces for unbounded ripples should have it set to visible.
2455
2867
  */
@@ -2472,6 +2884,14 @@ export namespace Components {
2472
2884
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2473
2885
  */
2474
2886
  "componentProps"?: { [key: string]: any };
2887
+ /**
2888
+ * The mode determines the platform behaviors of the component.
2889
+ */
2890
+ "mode"?: "ios" | "md";
2891
+ /**
2892
+ * The theme determines the visual appearance of the component.
2893
+ */
2894
+ "theme"?: "ios" | "md" | "ionic";
2475
2895
  /**
2476
2896
  * Relative path that needs to match in order for this route to apply. Accepts paths similar to expressjs so that you can define parameters in the url /foo/:bar where bar would be available in incoming props.
2477
2897
  */
@@ -2493,6 +2913,10 @@ export namespace Components {
2493
2913
  */
2494
2914
  "back": () => Promise<void>;
2495
2915
  "canTransition": () => Promise<string | boolean>;
2916
+ /**
2917
+ * The mode determines the platform behaviors of the component.
2918
+ */
2919
+ "mode"?: "ios" | "md";
2496
2920
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2497
2921
  "printDebug": () => Promise<void>;
2498
2922
  /**
@@ -2505,6 +2929,10 @@ export namespace Components {
2505
2929
  * The root path to use when matching URLs. By default, this is set to "/", but you can specify an alternate prefix for all URL paths.
2506
2930
  */
2507
2931
  "root": string;
2932
+ /**
2933
+ * The theme determines the visual appearance of the component.
2934
+ */
2935
+ "theme"?: "ios" | "md" | "ionic";
2508
2936
  /**
2509
2937
  * The router can work in two "modes": - With hash: `/index.html#/path/to/page` - Without hash: `/path/to/page` Using one or another might depend in the requirements of your app and/or where it's deployed. Usually "hash-less" navigation works better for SEO and it's more user friendly too, but it might requires additional server-side configuration in order to properly work. On the other side hash-navigation is much easier to deploy, it even works over the file protocol. By default, this property is `true`, change to `false` to allow hash-less URLs.
2510
2938
  */
@@ -2519,6 +2947,10 @@ export namespace Components {
2519
2947
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2520
2948
  */
2521
2949
  "href": string | undefined;
2950
+ /**
2951
+ * The mode determines the platform behaviors of the component.
2952
+ */
2953
+ "mode"?: "ios" | "md";
2522
2954
  /**
2523
2955
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
2524
2956
  */
@@ -2535,6 +2967,10 @@ export namespace Components {
2535
2967
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2536
2968
  */
2537
2969
  "target": string | undefined;
2970
+ /**
2971
+ * The theme determines the visual appearance of the component.
2972
+ */
2973
+ "theme"?: "ios" | "md" | "ionic";
2538
2974
  }
2539
2975
  interface IonRouterOutlet {
2540
2976
  /**
@@ -2549,13 +2985,25 @@ export namespace Components {
2549
2985
  "delegate"?: FrameworkDelegate;
2550
2986
  "getRouteId": () => Promise<RouteID | undefined>;
2551
2987
  /**
2552
- * The mode determines which platform styles to use.
2988
+ * The mode determines the platform behaviors of the component.
2553
2989
  */
2554
2990
  "mode": "ios" | "md";
2555
2991
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2556
2992
  "swipeHandler"?: SwipeGestureHandler;
2993
+ /**
2994
+ * The theme determines the visual appearance of the component.
2995
+ */
2996
+ "theme"?: "ios" | "md" | "ionic";
2557
2997
  }
2558
2998
  interface IonRow {
2999
+ /**
3000
+ * The mode determines the platform behaviors of the component.
3001
+ */
3002
+ "mode"?: "ios" | "md";
3003
+ /**
3004
+ * The theme determines the visual appearance of the component.
3005
+ */
3006
+ "theme"?: "ios" | "md" | "ionic";
2559
3007
  }
2560
3008
  interface IonSearchbar {
2561
3009
  /**
@@ -2575,15 +3023,15 @@ export namespace Components {
2575
3023
  */
2576
3024
  "autocorrect": 'on' | 'off';
2577
3025
  /**
2578
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3026
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2579
3027
  */
2580
- "cancelButtonIcon": string;
3028
+ "cancelButtonIcon"?: string;
2581
3029
  /**
2582
- * Set the the cancel button text. Only applies to `ios` mode.
3030
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
2583
3031
  */
2584
3032
  "cancelButtonText": string;
2585
3033
  /**
2586
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3034
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2587
3035
  */
2588
3036
  "clearIcon"?: string;
2589
3037
  /**
@@ -2619,7 +3067,7 @@ export namespace Components {
2619
3067
  */
2620
3068
  "minlength"?: number;
2621
3069
  /**
2622
- * The mode determines which platform styles to use.
3070
+ * The mode determines the platform behaviors of the component.
2623
3071
  */
2624
3072
  "mode"?: "ios" | "md";
2625
3073
  /**
@@ -2631,7 +3079,7 @@ export namespace Components {
2631
3079
  */
2632
3080
  "placeholder": string;
2633
3081
  /**
2634
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3082
+ * The icon to use as the search icon. Defaults to `"search-outline"` in the `"ios"` theme and `"search-sharp"` in the `"md"` and `"ionic"` themes.
2635
3083
  */
2636
3084
  "searchIcon"?: string;
2637
3085
  /**
@@ -2650,6 +3098,10 @@ export namespace Components {
2650
3098
  * If `true`, enable spellcheck on the input.
2651
3099
  */
2652
3100
  "spellcheck": boolean;
3101
+ /**
3102
+ * The theme determines the visual appearance of the component.
3103
+ */
3104
+ "theme"?: "ios" | "md" | "ionic";
2653
3105
  /**
2654
3106
  * Set the type of the input.
2655
3107
  */
@@ -2669,7 +3121,7 @@ export namespace Components {
2669
3121
  */
2670
3122
  "disabled": boolean;
2671
3123
  /**
2672
- * The mode determines which platform styles to use.
3124
+ * The mode determines the platform behaviors of the component.
2673
3125
  */
2674
3126
  "mode"?: "ios" | "md";
2675
3127
  /**
@@ -2684,6 +3136,10 @@ export namespace Components {
2684
3136
  * If `true`, users will be able to swipe between segment buttons to activate them.
2685
3137
  */
2686
3138
  "swipeGesture": boolean;
3139
+ /**
3140
+ * The theme determines the visual appearance of the component.
3141
+ */
3142
+ "theme"?: "ios" | "md" | "ionic";
2687
3143
  /**
2688
3144
  * the value of the segment.
2689
3145
  */
@@ -2699,10 +3155,14 @@ export namespace Components {
2699
3155
  */
2700
3156
  "layout"?: SegmentButtonLayout;
2701
3157
  /**
2702
- * The mode determines which platform styles to use.
3158
+ * The mode determines the platform behaviors of the component.
2703
3159
  */
2704
3160
  "mode"?: "ios" | "md";
2705
3161
  "setFocus": () => Promise<void>;
3162
+ /**
3163
+ * The theme determines the visual appearance of the component.
3164
+ */
3165
+ "theme"?: "ios" | "md" | "ionic";
2706
3166
  /**
2707
3167
  * The type of the button.
2708
3168
  */
@@ -2730,11 +3190,11 @@ export namespace Components {
2730
3190
  */
2731
3191
  "disabled": boolean;
2732
3192
  /**
2733
- * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `md` mode will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
3193
+ * The toggle icon to show when the select is open. If defined, the icon rotation behavior in `"md"` theme will be disabled. If undefined, `toggleIcon` will be used for when the select is both open and closed.
2734
3194
  */
2735
3195
  "expandedIcon"?: string;
2736
3196
  /**
2737
- * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in `md` mode.
3197
+ * The fill for the item. If `"solid"` the item will have a background. If `"outline"` the item will be transparent with a border. Only available in the `"md"` theme.
2738
3198
  */
2739
3199
  "fill"?: 'outline' | 'solid';
2740
3200
  /**
@@ -2758,7 +3218,7 @@ export namespace Components {
2758
3218
  */
2759
3219
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2760
3220
  /**
2761
- * The mode determines which platform styles to use.
3221
+ * The mode determines the platform behaviors of the component.
2762
3222
  */
2763
3223
  "mode"?: "ios" | "md";
2764
3224
  /**
@@ -2791,7 +3251,11 @@ export namespace Components {
2791
3251
  */
2792
3252
  "shape"?: 'round';
2793
3253
  /**
2794
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3254
+ * The theme determines the visual appearance of the component.
3255
+ */
3256
+ "theme"?: "ios" | "md" | "ionic";
3257
+ /**
3258
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2795
3259
  */
2796
3260
  "toggleIcon"?: string;
2797
3261
  /**
@@ -2804,6 +3268,14 @@ export namespace Components {
2804
3268
  * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
2805
3269
  */
2806
3270
  "disabled": boolean;
3271
+ /**
3272
+ * The mode determines the platform behaviors of the component.
3273
+ */
3274
+ "mode"?: "ios" | "md";
3275
+ /**
3276
+ * The theme determines the visual appearance of the component.
3277
+ */
3278
+ "theme"?: "ios" | "md" | "ionic";
2807
3279
  /**
2808
3280
  * The text value of the option.
2809
3281
  */
@@ -2818,6 +3290,10 @@ export namespace Components {
2818
3290
  * The text content of the popover body
2819
3291
  */
2820
3292
  "message"?: string;
3293
+ /**
3294
+ * The mode determines the platform behaviors of the component.
3295
+ */
3296
+ "mode"?: "ios" | "md";
2821
3297
  /**
2822
3298
  * If true, the select accepts multiple values
2823
3299
  */
@@ -2830,12 +3306,24 @@ export namespace Components {
2830
3306
  * The subheader text of the popover
2831
3307
  */
2832
3308
  "subHeader"?: string;
3309
+ /**
3310
+ * The theme determines the visual appearance of the component.
3311
+ */
3312
+ "theme"?: "ios" | "md" | "ionic";
2833
3313
  }
2834
3314
  interface IonSkeletonText {
2835
3315
  /**
2836
3316
  * If `true`, the skeleton text will animate.
2837
3317
  */
2838
3318
  "animated": boolean;
3319
+ /**
3320
+ * The mode determines the platform behaviors of the component.
3321
+ */
3322
+ "mode"?: "ios" | "md";
3323
+ /**
3324
+ * The theme determines the visual appearance of the component.
3325
+ */
3326
+ "theme"?: "ios" | "md" | "ionic";
2839
3327
  }
2840
3328
  interface IonSpinner {
2841
3329
  /**
@@ -2846,6 +3334,10 @@ export namespace Components {
2846
3334
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2847
3335
  */
2848
3336
  "duration"?: number;
3337
+ /**
3338
+ * The mode determines the platform behaviors of the component.
3339
+ */
3340
+ "mode"?: "ios" | "md";
2849
3341
  /**
2850
3342
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2851
3343
  */
@@ -2854,6 +3346,10 @@ export namespace Components {
2854
3346
  * If `true`, the spinner's animation will be paused.
2855
3347
  */
2856
3348
  "paused": boolean;
3349
+ /**
3350
+ * The theme determines the visual appearance of the component.
3351
+ */
3352
+ "theme"?: "ios" | "md" | "ionic";
2857
3353
  }
2858
3354
  interface IonSplitPane {
2859
3355
  /**
@@ -2865,6 +3361,14 @@ export namespace Components {
2865
3361
  */
2866
3362
  "disabled": boolean;
2867
3363
  "isVisible": () => Promise<boolean>;
3364
+ /**
3365
+ * The mode determines the platform behaviors of the component.
3366
+ */
3367
+ "mode"?: "ios" | "md";
3368
+ /**
3369
+ * The theme determines the visual appearance of the component.
3370
+ */
3371
+ "theme"?: "ios" | "md" | "ionic";
2868
3372
  /**
2869
3373
  * 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
3374
  */
@@ -2877,6 +3381,10 @@ export namespace Components {
2877
3381
  */
2878
3382
  "component"?: ComponentRef;
2879
3383
  "delegate"?: FrameworkDelegate;
3384
+ /**
3385
+ * The mode determines the platform behaviors of the component.
3386
+ */
3387
+ "mode"?: "ios" | "md";
2880
3388
  /**
2881
3389
  * Set the active component for the tab
2882
3390
  */
@@ -2885,6 +3393,10 @@ export namespace Components {
2885
3393
  * 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
3394
  */
2887
3395
  "tab": string;
3396
+ /**
3397
+ * The theme determines the visual appearance of the component.
3398
+ */
3399
+ "theme"?: "ios" | "md" | "ionic";
2888
3400
  }
2889
3401
  interface IonTabBar {
2890
3402
  /**
@@ -2892,7 +3404,7 @@ export namespace Components {
2892
3404
  */
2893
3405
  "color"?: Color;
2894
3406
  /**
2895
- * The mode determines which platform styles to use.
3407
+ * The mode determines the platform behaviors of the component.
2896
3408
  */
2897
3409
  "mode"?: "ios" | "md";
2898
3410
  /**
@@ -2900,7 +3412,11 @@ export namespace Components {
2900
3412
  */
2901
3413
  "selectedTab"?: string;
2902
3414
  /**
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).
3415
+ * The theme determines the visual appearance of the component.
3416
+ */
3417
+ "theme"?: "ios" | "md" | "ionic";
3418
+ /**
3419
+ * 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
3420
  */
2905
3421
  "translucent": boolean;
2906
3422
  }
@@ -2922,7 +3438,7 @@ export namespace Components {
2922
3438
  */
2923
3439
  "layout"?: TabButtonLayout;
2924
3440
  /**
2925
- * The mode determines which platform styles to use.
3441
+ * The mode determines the platform behaviors of the component.
2926
3442
  */
2927
3443
  "mode"?: "ios" | "md";
2928
3444
  /**
@@ -2941,6 +3457,10 @@ export namespace Components {
2941
3457
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2942
3458
  */
2943
3459
  "target": string | undefined;
3460
+ /**
3461
+ * The theme determines the visual appearance of the component.
3462
+ */
3463
+ "theme"?: "ios" | "md" | "ionic";
2944
3464
  }
2945
3465
  interface IonTabs {
2946
3466
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -2953,12 +3473,20 @@ export namespace Components {
2953
3473
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2954
3474
  */
2955
3475
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3476
+ /**
3477
+ * The mode determines the platform behaviors of the component.
3478
+ */
3479
+ "mode"?: "ios" | "md";
2956
3480
  /**
2957
3481
  * 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
3482
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
2959
3483
  */
2960
3484
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
2961
3485
  "setRouteId": (id: string) => Promise<RouteWrite>;
3486
+ /**
3487
+ * The theme determines the visual appearance of the component.
3488
+ */
3489
+ "theme"?: "ios" | "md" | "ionic";
2962
3490
  "useRouter": boolean;
2963
3491
  }
2964
3492
  interface IonText {
@@ -2967,9 +3495,13 @@ export namespace Components {
2967
3495
  */
2968
3496
  "color"?: Color;
2969
3497
  /**
2970
- * The mode determines which platform styles to use.
3498
+ * The mode determines the platform behaviors of the component.
2971
3499
  */
2972
3500
  "mode"?: "ios" | "md";
3501
+ /**
3502
+ * The theme determines the visual appearance of the component.
3503
+ */
3504
+ "theme"?: "ios" | "md" | "ionic";
2973
3505
  }
2974
3506
  interface IonTextarea {
2975
3507
  /**
@@ -3021,7 +3553,7 @@ export namespace Components {
3021
3553
  */
3022
3554
  "errorText"?: string;
3023
3555
  /**
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.
3556
+ * 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
3557
  */
3026
3558
  "fill"?: 'outline' | 'solid';
3027
3559
  /**
@@ -3053,7 +3585,7 @@ export namespace Components {
3053
3585
  */
3054
3586
  "minlength"?: number;
3055
3587
  /**
3056
- * The mode determines which platform styles to use.
3588
+ * The mode determines the platform behaviors of the component.
3057
3589
  */
3058
3590
  "mode"?: "ios" | "md";
3059
3591
  /**
@@ -3088,6 +3620,10 @@ export namespace Components {
3088
3620
  * If `true`, the element will have its spelling and grammar checked.
3089
3621
  */
3090
3622
  "spellcheck": boolean;
3623
+ /**
3624
+ * The theme determines the visual appearance of the component.
3625
+ */
3626
+ "theme"?: "ios" | "md" | "ionic";
3091
3627
  /**
3092
3628
  * The value of the textarea.
3093
3629
  */
@@ -3098,16 +3634,32 @@ export namespace Components {
3098
3634
  "wrap"?: 'hard' | 'soft' | 'off';
3099
3635
  }
3100
3636
  interface IonThumbnail {
3637
+ /**
3638
+ * The mode determines the platform behaviors of the component.
3639
+ */
3640
+ "mode"?: "ios" | "md";
3641
+ /**
3642
+ * The theme determines the visual appearance of the component.
3643
+ */
3644
+ "theme"?: "ios" | "md" | "ionic";
3101
3645
  }
3102
3646
  interface IonTitle {
3103
3647
  /**
3104
3648
  * 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
3649
  */
3106
3650
  "color"?: Color;
3651
+ /**
3652
+ * The mode determines the platform behaviors of the component.
3653
+ */
3654
+ "mode"?: "ios" | "md";
3107
3655
  /**
3108
3656
  * The size of the toolbar title.
3109
3657
  */
3110
3658
  "size"?: 'large' | 'small';
3659
+ /**
3660
+ * The theme determines the visual appearance of the component.
3661
+ */
3662
+ "theme"?: "ios" | "md" | "ionic";
3111
3663
  }
3112
3664
  interface IonToast {
3113
3665
  /**
@@ -3175,7 +3727,7 @@ export namespace Components {
3175
3727
  */
3176
3728
  "message"?: string | IonicSafeString;
3177
3729
  /**
3178
- * The mode determines which platform styles to use.
3730
+ * The mode determines the platform behaviors of the component.
3179
3731
  */
3180
3732
  "mode"?: "ios" | "md";
3181
3733
  /**
@@ -3204,7 +3756,11 @@ export namespace Components {
3204
3756
  */
3205
3757
  "swipeGesture"?: ToastSwipeGestureDirection;
3206
3758
  /**
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).
3759
+ * The theme determines the visual appearance of the component.
3760
+ */
3761
+ "theme"?: "ios" | "md" | "ionic";
3762
+ /**
3763
+ * 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
3764
  */
3209
3765
  "translucent": boolean;
3210
3766
  /**
@@ -3242,13 +3798,17 @@ export namespace Components {
3242
3798
  */
3243
3799
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3244
3800
  /**
3245
- * The mode determines which platform styles to use.
3801
+ * The mode determines the platform behaviors of the component.
3246
3802
  */
3247
3803
  "mode"?: "ios" | "md";
3248
3804
  /**
3249
3805
  * The name of the control, which is submitted with the form data.
3250
3806
  */
3251
3807
  "name": string;
3808
+ /**
3809
+ * The theme determines the visual appearance of the component.
3810
+ */
3811
+ "theme"?: "ios" | "md" | "ionic";
3252
3812
  /**
3253
3813
  * 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
3814
  */
@@ -3260,9 +3820,13 @@ export namespace Components {
3260
3820
  */
3261
3821
  "color"?: Color;
3262
3822
  /**
3263
- * The mode determines which platform styles to use.
3823
+ * The mode determines the platform behaviors of the component.
3264
3824
  */
3265
3825
  "mode"?: "ios" | "md";
3826
+ /**
3827
+ * The theme determines the visual appearance of the component.
3828
+ */
3829
+ "theme"?: "ios" | "md" | "ionic";
3266
3830
  }
3267
3831
  }
3268
3832
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4744,13 +5308,17 @@ declare namespace LocalJSX {
4744
5308
  */
4745
5309
  "disabled"?: boolean;
4746
5310
  /**
4747
- * The mode determines which platform styles to use.
5311
+ * The mode determines the platform behaviors of the component.
4748
5312
  */
4749
5313
  "mode"?: "ios" | "md";
4750
5314
  /**
4751
5315
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4752
5316
  */
4753
5317
  "readonly"?: boolean;
5318
+ /**
5319
+ * The theme determines the visual appearance of the component.
5320
+ */
5321
+ "theme"?: "ios" | "md" | "ionic";
4754
5322
  /**
4755
5323
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4756
5324
  */
@@ -4778,7 +5346,7 @@ declare namespace LocalJSX {
4778
5346
  */
4779
5347
  "expand"?: 'compact' | 'inset';
4780
5348
  /**
4781
- * The mode determines which platform styles to use.
5349
+ * The mode determines the platform behaviors of the component.
4782
5350
  */
4783
5351
  "mode"?: "ios" | "md";
4784
5352
  /**
@@ -4793,6 +5361,10 @@ declare namespace LocalJSX {
4793
5361
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4794
5362
  */
4795
5363
  "readonly"?: boolean;
5364
+ /**
5365
+ * The theme determines the visual appearance of the component.
5366
+ */
5367
+ "theme"?: "ios" | "md" | "ionic";
4796
5368
  /**
4797
5369
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4798
5370
  */
@@ -4840,7 +5412,7 @@ declare namespace LocalJSX {
4840
5412
  */
4841
5413
  "leaveAnimation"?: AnimationBuilder;
4842
5414
  /**
4843
- * The mode determines which platform styles to use.
5415
+ * The mode determines the platform behaviors of the component.
4844
5416
  */
4845
5417
  "mode"?: "ios" | "md";
4846
5418
  /**
@@ -4880,7 +5452,11 @@ declare namespace LocalJSX {
4880
5452
  */
4881
5453
  "subHeader"?: string;
4882
5454
  /**
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).
5455
+ * The theme determines the visual appearance of the component.
5456
+ */
5457
+ "theme"?: "ios" | "md" | "ionic";
5458
+ /**
5459
+ * 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
5460
  */
4885
5461
  "translucent"?: boolean;
4886
5462
  /**
@@ -4938,7 +5514,7 @@ declare namespace LocalJSX {
4938
5514
  */
4939
5515
  "message"?: string | IonicSafeString;
4940
5516
  /**
4941
- * The mode determines which platform styles to use.
5517
+ * The mode determines the platform behaviors of the component.
4942
5518
  */
4943
5519
  "mode"?: "ios" | "md";
4944
5520
  /**
@@ -4978,7 +5554,11 @@ declare namespace LocalJSX {
4978
5554
  */
4979
5555
  "subHeader"?: string;
4980
5556
  /**
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).
5557
+ * The theme determines the visual appearance of the component.
5558
+ */
5559
+ "theme"?: "ios" | "md" | "ionic";
5560
+ /**
5561
+ * 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
5562
  */
4983
5563
  "translucent"?: boolean;
4984
5564
  /**
@@ -4987,8 +5567,32 @@ declare namespace LocalJSX {
4987
5567
  "trigger"?: string | undefined;
4988
5568
  }
4989
5569
  interface IonApp {
5570
+ /**
5571
+ * The mode determines the platform behaviors of the component.
5572
+ */
5573
+ "mode"?: "ios" | "md";
5574
+ /**
5575
+ * The theme determines the visual appearance of the component.
5576
+ */
5577
+ "theme"?: "ios" | "md" | "ionic";
4990
5578
  }
4991
5579
  interface IonAvatar {
5580
+ /**
5581
+ * The mode determines the platform behaviors of the component.
5582
+ */
5583
+ "mode"?: "ios" | "md";
5584
+ /**
5585
+ * Set to `"soft"` for an avatar with slightly rounded corners, `"round"` for an avatar with fully rounded corners, or `"rectangular"` for an avatar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
5586
+ */
5587
+ "shape"?: 'soft' | 'round' | 'rectangular';
5588
+ /**
5589
+ * Set to `"xsmall"` for the smallest size, `"small"` for a compact size, `"medium"` for the default height and width, `"large"` for a larger size, or `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
5590
+ */
5591
+ "size"?: `xsmall` | 'small' | 'medium' | 'large' | 'xlarge';
5592
+ /**
5593
+ * The theme determines the visual appearance of the component.
5594
+ */
5595
+ "theme"?: "ios" | "md" | "ionic";
4992
5596
  }
4993
5597
  interface IonBackButton {
4994
5598
  /**
@@ -5008,7 +5612,7 @@ declare namespace LocalJSX {
5008
5612
  */
5009
5613
  "icon"?: string | null;
5010
5614
  /**
5011
- * The mode determines which platform styles to use.
5615
+ * The mode determines the platform behaviors of the component.
5012
5616
  */
5013
5617
  "mode"?: "ios" | "md";
5014
5618
  /**
@@ -5019,12 +5623,20 @@ declare namespace LocalJSX {
5019
5623
  * The text to display in the back button.
5020
5624
  */
5021
5625
  "text"?: string | null;
5626
+ /**
5627
+ * The theme determines the visual appearance of the component.
5628
+ */
5629
+ "theme"?: "ios" | "md" | "ionic";
5022
5630
  /**
5023
5631
  * The type of the button.
5024
5632
  */
5025
5633
  "type"?: 'submit' | 'reset' | 'button';
5026
5634
  }
5027
5635
  interface IonBackdrop {
5636
+ /**
5637
+ * The mode determines the platform behaviors of the component.
5638
+ */
5639
+ "mode"?: "ios" | "md";
5028
5640
  /**
5029
5641
  * Emitted when the backdrop is tapped.
5030
5642
  */
@@ -5037,6 +5649,10 @@ declare namespace LocalJSX {
5037
5649
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5038
5650
  */
5039
5651
  "tappable"?: boolean;
5652
+ /**
5653
+ * The theme determines the visual appearance of the component.
5654
+ */
5655
+ "theme"?: "ios" | "md" | "ionic";
5040
5656
  /**
5041
5657
  * If `true`, the backdrop will be visible.
5042
5658
  */
@@ -5048,9 +5664,21 @@ declare namespace LocalJSX {
5048
5664
  */
5049
5665
  "color"?: Color;
5050
5666
  /**
5051
- * The mode determines which platform styles to use.
5667
+ * The mode determines the platform behaviors of the component.
5052
5668
  */
5053
5669
  "mode"?: "ios" | "md";
5670
+ /**
5671
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
5672
+ */
5673
+ "shape"?: 'soft' | 'round | rectangular';
5674
+ /**
5675
+ * Set to `"xxsmall"` for the smallest badge. Set to "xsmall" for a very small badge. Set to `"small"` for a small badge. Set to "medium" for a medium badge. Set to "large" for a large badge. Set to `"xlarge"` for the largest badge. Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
5676
+ */
5677
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5678
+ /**
5679
+ * The theme determines the visual appearance of the component.
5680
+ */
5681
+ "theme"?: "ios" | "md" | "ionic";
5054
5682
  }
5055
5683
  interface IonBreadcrumb {
5056
5684
  /**
@@ -5074,7 +5702,7 @@ declare namespace LocalJSX {
5074
5702
  */
5075
5703
  "href"?: string | undefined;
5076
5704
  /**
5077
- * The mode determines which platform styles to use.
5705
+ * The mode determines the platform behaviors of the component.
5078
5706
  */
5079
5707
  "mode"?: "ios" | "md";
5080
5708
  /**
@@ -5105,6 +5733,10 @@ declare namespace LocalJSX {
5105
5733
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5106
5734
  */
5107
5735
  "target"?: string | undefined;
5736
+ /**
5737
+ * The theme determines the visual appearance of the component.
5738
+ */
5739
+ "theme"?: "ios" | "md" | "ionic";
5108
5740
  }
5109
5741
  interface IonBreadcrumbs {
5110
5742
  /**
@@ -5124,13 +5756,17 @@ declare namespace LocalJSX {
5124
5756
  */
5125
5757
  "maxItems"?: number;
5126
5758
  /**
5127
- * The mode determines which platform styles to use.
5759
+ * The mode determines the platform behaviors of the component.
5128
5760
  */
5129
5761
  "mode"?: "ios" | "md";
5130
5762
  /**
5131
5763
  * Emitted when the collapsed indicator is clicked on.
5132
5764
  */
5133
5765
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5766
+ /**
5767
+ * The theme determines the visual appearance of the component.
5768
+ */
5769
+ "theme"?: "ios" | "md" | "ionic";
5134
5770
  }
5135
5771
  interface IonButton {
5136
5772
  /**
@@ -5166,7 +5802,7 @@ declare namespace LocalJSX {
5166
5802
  */
5167
5803
  "href"?: string | undefined;
5168
5804
  /**
5169
- * The mode determines which platform styles to use.
5805
+ * The mode determines the platform behaviors of the component.
5170
5806
  */
5171
5807
  "mode"?: "ios" | "md";
5172
5808
  /**
@@ -5190,13 +5826,13 @@ declare namespace LocalJSX {
5190
5826
  */
5191
5827
  "routerDirection"?: RouterDirection;
5192
5828
  /**
5193
- * Set to `"round"` for a button with more rounded corners.
5829
+ * Set to `"soft"` for a button with slightly rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular"` for a button without rounded corners. Defaults to `"soft"` for the `"ios"` theme and `"round"` for all other themes.
5194
5830
  */
5195
- "shape"?: 'round';
5831
+ "shape"?: 'soft' | 'round' | 'rectangular';
5196
5832
  /**
5197
5833
  * 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
5834
  */
5199
- "size"?: 'small' | 'default' | 'large';
5835
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5200
5836
  /**
5201
5837
  * If `true`, activates a button with a heavier font weight.
5202
5838
  */
@@ -5205,6 +5841,10 @@ declare namespace LocalJSX {
5205
5841
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5206
5842
  */
5207
5843
  "target"?: string | undefined;
5844
+ /**
5845
+ * The theme determines the visual appearance of the component.
5846
+ */
5847
+ "theme"?: "ios" | "md" | "ionic";
5208
5848
  /**
5209
5849
  * The type of the button.
5210
5850
  */
@@ -5212,9 +5852,17 @@ declare namespace LocalJSX {
5212
5852
  }
5213
5853
  interface IonButtons {
5214
5854
  /**
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)
5855
+ * 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
5856
  */
5217
5857
  "collapse"?: boolean;
5858
+ /**
5859
+ * The mode determines the platform behaviors of the component.
5860
+ */
5861
+ "mode"?: "ios" | "md";
5862
+ /**
5863
+ * The theme determines the visual appearance of the component.
5864
+ */
5865
+ "theme"?: "ios" | "md" | "ionic";
5218
5866
  }
5219
5867
  interface IonCard {
5220
5868
  /**
@@ -5238,7 +5886,7 @@ declare namespace LocalJSX {
5238
5886
  */
5239
5887
  "href"?: string | undefined;
5240
5888
  /**
5241
- * The mode determines which platform styles to use.
5889
+ * The mode determines the platform behaviors of the component.
5242
5890
  */
5243
5891
  "mode"?: "ios" | "md";
5244
5892
  /**
@@ -5253,10 +5901,18 @@ declare namespace LocalJSX {
5253
5901
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5254
5902
  */
5255
5903
  "routerDirection"?: RouterDirection;
5904
+ /**
5905
+ * Set to `"soft"` for a card with slightly rounded corners, `"round"` for a card with more rounded corners, or `"rectangular"` for a card without rounded corners. Defaults to `"round"`.
5906
+ */
5907
+ "shape"?: 'soft' | 'round' | 'rectangular';
5256
5908
  /**
5257
5909
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5258
5910
  */
5259
5911
  "target"?: string | undefined;
5912
+ /**
5913
+ * The theme determines the visual appearance of the component.
5914
+ */
5915
+ "theme"?: "ios" | "md" | "ionic";
5260
5916
  /**
5261
5917
  * The type of the button. Only used when an `onclick` or `button` property is present.
5262
5918
  */
@@ -5264,9 +5920,13 @@ declare namespace LocalJSX {
5264
5920
  }
5265
5921
  interface IonCardContent {
5266
5922
  /**
5267
- * The mode determines which platform styles to use.
5923
+ * The mode determines the platform behaviors of the component.
5268
5924
  */
5269
5925
  "mode"?: "ios" | "md";
5926
+ /**
5927
+ * The theme determines the visual appearance of the component.
5928
+ */
5929
+ "theme"?: "ios" | "md" | "ionic";
5270
5930
  }
5271
5931
  interface IonCardHeader {
5272
5932
  /**
@@ -5274,11 +5934,15 @@ declare namespace LocalJSX {
5274
5934
  */
5275
5935
  "color"?: Color;
5276
5936
  /**
5277
- * The mode determines which platform styles to use.
5937
+ * The mode determines the platform behaviors of the component.
5278
5938
  */
5279
5939
  "mode"?: "ios" | "md";
5280
5940
  /**
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).
5941
+ * The theme determines the visual appearance of the component.
5942
+ */
5943
+ "theme"?: "ios" | "md" | "ionic";
5944
+ /**
5945
+ * 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
5946
  */
5283
5947
  "translucent"?: boolean;
5284
5948
  }
@@ -5288,9 +5952,13 @@ declare namespace LocalJSX {
5288
5952
  */
5289
5953
  "color"?: Color;
5290
5954
  /**
5291
- * The mode determines which platform styles to use.
5955
+ * The mode determines the platform behaviors of the component.
5292
5956
  */
5293
5957
  "mode"?: "ios" | "md";
5958
+ /**
5959
+ * The theme determines the visual appearance of the component.
5960
+ */
5961
+ "theme"?: "ios" | "md" | "ionic";
5294
5962
  }
5295
5963
  interface IonCardTitle {
5296
5964
  /**
@@ -5298,9 +5966,13 @@ declare namespace LocalJSX {
5298
5966
  */
5299
5967
  "color"?: Color;
5300
5968
  /**
5301
- * The mode determines which platform styles to use.
5969
+ * The mode determines the platform behaviors of the component.
5302
5970
  */
5303
5971
  "mode"?: "ios" | "md";
5972
+ /**
5973
+ * The theme determines the visual appearance of the component.
5974
+ */
5975
+ "theme"?: "ios" | "md" | "ionic";
5304
5976
  }
5305
5977
  interface IonCheckbox {
5306
5978
  /**
@@ -5332,7 +6004,7 @@ declare namespace LocalJSX {
5332
6004
  */
5333
6005
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5334
6006
  /**
5335
- * The mode determines which platform styles to use.
6007
+ * The mode determines the platform behaviors of the component.
5336
6008
  */
5337
6009
  "mode"?: "ios" | "md";
5338
6010
  /**
@@ -5344,13 +6016,25 @@ declare namespace LocalJSX {
5344
6016
  */
5345
6017
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5346
6018
  /**
5347
- * Emitted when the checked property has changed as a result of a user action such as a click. This event will not emit when programmatically setting the `checked` property.
6019
+ * Emitted when the checked property has changed as a result of a user action such as a click. This event will not emit when programmatically setting the `checked` property.
5348
6020
  */
5349
6021
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5350
6022
  /**
5351
6023
  * Emitted when the checkbox has focus.
5352
6024
  */
5353
6025
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
6026
+ /**
6027
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6028
+ */
6029
+ "shape"?: 'soft' | 'rectangular';
6030
+ /**
6031
+ * Set to `"small"` for a checkbox with less height and padding.
6032
+ */
6033
+ "size"?: 'small';
6034
+ /**
6035
+ * The theme determines the visual appearance of the component.
6036
+ */
6037
+ "theme"?: "ios" | "md" | "ionic";
5354
6038
  /**
5355
6039
  * 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
6040
  */
@@ -5366,15 +6050,31 @@ declare namespace LocalJSX {
5366
6050
  */
5367
6051
  "disabled"?: boolean;
5368
6052
  /**
5369
- * The mode determines which platform styles to use.
6053
+ * The mode determines the platform behaviors of the component.
5370
6054
  */
5371
6055
  "mode"?: "ios" | "md";
5372
6056
  /**
5373
6057
  * Display an outline style button.
5374
6058
  */
5375
6059
  "outline"?: boolean;
6060
+ /**
6061
+ * Set to `"soft"` for a chip with slightly rounded corners, `"round"` for a chip with fully rounded corners, or `"rectangular"` for a chip without rounded corners. Defaults to `"round"` for the `"ionic"` theme and `"soft"` for all other themes.
6062
+ */
6063
+ "shape"?: 'soft' | 'round' | 'rectangular';
6064
+ /**
6065
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6066
+ */
6067
+ "size"?: 'small' | 'large';
6068
+ /**
6069
+ * The theme determines the visual appearance of the component.
6070
+ */
6071
+ "theme"?: "ios" | "md" | "ionic";
5376
6072
  }
5377
6073
  interface IonCol {
6074
+ /**
6075
+ * The mode determines the platform behaviors of the component.
6076
+ */
6077
+ "mode"?: "ios" | "md";
5378
6078
  /**
5379
6079
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5380
6080
  */
@@ -5471,6 +6171,10 @@ declare namespace LocalJSX {
5471
6171
  * 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
6172
  */
5473
6173
  "sizeXs"?: string;
6174
+ /**
6175
+ * The theme determines the visual appearance of the component.
6176
+ */
6177
+ "theme"?: "ios" | "md" | "ionic";
5474
6178
  }
5475
6179
  interface IonContent {
5476
6180
  /**
@@ -5489,6 +6193,10 @@ declare namespace LocalJSX {
5489
6193
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5490
6194
  */
5491
6195
  "fullscreen"?: boolean;
6196
+ /**
6197
+ * The mode determines the platform behaviors of the component.
6198
+ */
6199
+ "mode"?: "ios" | "md";
5492
6200
  /**
5493
6201
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5494
6202
  */
@@ -5513,6 +6221,10 @@ declare namespace LocalJSX {
5513
6221
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5514
6222
  */
5515
6223
  "scrollY"?: boolean;
6224
+ /**
6225
+ * The theme determines the visual appearance of the component.
6226
+ */
6227
+ "theme"?: "ios" | "md" | "ionic";
5516
6228
  }
5517
6229
  interface IonDatetime {
5518
6230
  /**
@@ -5580,7 +6292,7 @@ declare namespace LocalJSX {
5580
6292
  */
5581
6293
  "minuteValues"?: number[] | number | string;
5582
6294
  /**
5583
- * The mode determines which platform styles to use.
6295
+ * The mode determines the platform behaviors of the component.
5584
6296
  */
5585
6297
  "mode"?: "ios" | "md";
5586
6298
  /**
@@ -5643,6 +6355,10 @@ declare namespace LocalJSX {
5643
6355
  * 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
6356
  */
5645
6357
  "size"?: 'cover' | 'fixed';
6358
+ /**
6359
+ * The theme determines the visual appearance of the component.
6360
+ */
6361
+ "theme"?: "ios" | "md" | "ionic";
5646
6362
  /**
5647
6363
  * 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
6364
  */
@@ -5670,9 +6386,13 @@ declare namespace LocalJSX {
5670
6386
  */
5671
6387
  "disabled"?: boolean;
5672
6388
  /**
5673
- * The mode determines which platform styles to use.
6389
+ * The mode determines the platform behaviors of the component.
5674
6390
  */
5675
6391
  "mode"?: "ios" | "md";
6392
+ /**
6393
+ * The theme determines the visual appearance of the component.
6394
+ */
6395
+ "theme"?: "ios" | "md" | "ionic";
5676
6396
  }
5677
6397
  interface IonFab {
5678
6398
  /**
@@ -5687,6 +6407,14 @@ declare namespace LocalJSX {
5687
6407
  * Where to align the fab horizontally in the viewport.
5688
6408
  */
5689
6409
  "horizontal"?: 'start' | 'end' | 'center';
6410
+ /**
6411
+ * The mode determines the platform behaviors of the component.
6412
+ */
6413
+ "mode"?: "ios" | "md";
6414
+ /**
6415
+ * The theme determines the visual appearance of the component.
6416
+ */
6417
+ "theme"?: "ios" | "md" | "ionic";
5690
6418
  /**
5691
6419
  * Where to align the fab vertically in the viewport.
5692
6420
  */
@@ -5718,7 +6446,7 @@ declare namespace LocalJSX {
5718
6446
  */
5719
6447
  "href"?: string | undefined;
5720
6448
  /**
5721
- * The mode determines which platform styles to use.
6449
+ * The mode determines the platform behaviors of the component.
5722
6450
  */
5723
6451
  "mode"?: "ios" | "md";
5724
6452
  /**
@@ -5754,7 +6482,11 @@ declare namespace LocalJSX {
5754
6482
  */
5755
6483
  "target"?: string | undefined;
5756
6484
  /**
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).
6485
+ * The theme determines the visual appearance of the component.
6486
+ */
6487
+ "theme"?: "ios" | "md" | "ionic";
6488
+ /**
6489
+ * 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
6490
  */
5759
6491
  "translucent"?: boolean;
5760
6492
  /**
@@ -5767,22 +6499,34 @@ declare namespace LocalJSX {
5767
6499
  * If `true`, the fab list will show all fab buttons in the list.
5768
6500
  */
5769
6501
  "activated"?: boolean;
6502
+ /**
6503
+ * The mode determines the platform behaviors of the component.
6504
+ */
6505
+ "mode"?: "ios" | "md";
5770
6506
  /**
5771
6507
  * The side the fab list will show on relative to the main fab button.
5772
6508
  */
5773
6509
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6510
+ /**
6511
+ * The theme determines the visual appearance of the component.
6512
+ */
6513
+ "theme"?: "ios" | "md" | "ionic";
5774
6514
  }
5775
6515
  interface IonFooter {
5776
6516
  /**
5777
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6517
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5778
6518
  */
5779
6519
  "collapse"?: 'fade';
5780
6520
  /**
5781
- * The mode determines which platform styles to use.
6521
+ * The mode determines the platform behaviors of the component.
5782
6522
  */
5783
6523
  "mode"?: "ios" | "md";
5784
6524
  /**
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.
6525
+ * The theme determines the visual appearance of the component.
6526
+ */
6527
+ "theme"?: "ios" | "md" | "ionic";
6528
+ /**
6529
+ * 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
6530
  */
5787
6531
  "translucent"?: boolean;
5788
6532
  }
@@ -5791,18 +6535,34 @@ declare namespace LocalJSX {
5791
6535
  * If `true`, the grid will have a fixed width based on the screen size.
5792
6536
  */
5793
6537
  "fixed"?: boolean;
6538
+ /**
6539
+ * The mode determines the platform behaviors of the component.
6540
+ */
6541
+ "mode"?: "ios" | "md";
6542
+ /**
6543
+ * The theme determines the visual appearance of the component.
6544
+ */
6545
+ "theme"?: "ios" | "md" | "ionic";
5794
6546
  }
5795
6547
  interface IonHeader {
5796
6548
  /**
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)
6549
+ * 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
6550
  */
5799
6551
  "collapse"?: 'condense' | 'fade';
5800
6552
  /**
5801
- * The mode determines which platform styles to use.
6553
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6554
+ */
6555
+ "divider"?: boolean;
6556
+ /**
6557
+ * The mode determines the platform behaviors of the component.
5802
6558
  */
5803
6559
  "mode"?: "ios" | "md";
5804
6560
  /**
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.
6561
+ * The theme determines the visual appearance of the component.
6562
+ */
6563
+ "theme"?: "ios" | "md" | "ionic";
6564
+ /**
6565
+ * 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
6566
  */
5807
6567
  "translucent"?: boolean;
5808
6568
  }
@@ -5811,6 +6571,10 @@ declare namespace LocalJSX {
5811
6571
  * 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
6572
  */
5813
6573
  "alt"?: string;
6574
+ /**
6575
+ * The mode determines the platform behaviors of the component.
6576
+ */
6577
+ "mode"?: "ios" | "md";
5814
6578
  /**
5815
6579
  * Emitted when the img fails to load
5816
6580
  */
@@ -5827,12 +6591,20 @@ declare namespace LocalJSX {
5827
6591
  * The image URL. This attribute is mandatory for the `<img>` element.
5828
6592
  */
5829
6593
  "src"?: string;
6594
+ /**
6595
+ * The theme determines the visual appearance of the component.
6596
+ */
6597
+ "theme"?: "ios" | "md" | "ionic";
5830
6598
  }
5831
6599
  interface IonInfiniteScroll {
5832
6600
  /**
5833
6601
  * 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
6602
  */
5835
6603
  "disabled"?: boolean;
6604
+ /**
6605
+ * The mode determines the platform behaviors of the component.
6606
+ */
6607
+ "mode"?: "ios" | "md";
5836
6608
  /**
5837
6609
  * 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
6610
  */
@@ -5841,6 +6613,10 @@ declare namespace LocalJSX {
5841
6613
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5842
6614
  */
5843
6615
  "position"?: 'top' | 'bottom';
6616
+ /**
6617
+ * The theme determines the visual appearance of the component.
6618
+ */
6619
+ "theme"?: "ios" | "md" | "ionic";
5844
6620
  /**
5845
6621
  * 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
6622
  */
@@ -5855,6 +6631,14 @@ declare namespace LocalJSX {
5855
6631
  * 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
6632
  */
5857
6633
  "loadingText"?: string | IonicSafeString;
6634
+ /**
6635
+ * The mode determines the platform behaviors of the component.
6636
+ */
6637
+ "mode"?: "ios" | "md";
6638
+ /**
6639
+ * The theme determines the visual appearance of the component.
6640
+ */
6641
+ "theme"?: "ios" | "md" | "ionic";
5858
6642
  }
5859
6643
  interface IonInput {
5860
6644
  /**
@@ -5914,7 +6698,7 @@ declare namespace LocalJSX {
5914
6698
  */
5915
6699
  "errorText"?: string;
5916
6700
  /**
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.
6701
+ * 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
6702
  */
5919
6703
  "fill"?: 'outline' | 'solid';
5920
6704
  /**
@@ -5930,7 +6714,7 @@ declare namespace LocalJSX {
5930
6714
  */
5931
6715
  "label"?: string;
5932
6716
  /**
5933
- * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
6717
+ * Where to place the label relative to the input. `"start"`: The label will appear to the left of the input in LTR and to the right in RTL. `"end"`: The label will appear to the right of the input in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the input when the input is focused or it has a value. Otherwise it will appear on top of the input. `"stacked"`: The label will appear smaller and above the input regardless even when the input is blurred or has no value. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). Defaults to "stacked" for the ionic theme, or "start" for all other themes. In the ionic theme, only the values "stacked" and "floating" are supported.
5934
6718
  */
5935
6719
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
5936
6720
  /**
@@ -5950,7 +6734,7 @@ declare namespace LocalJSX {
5950
6734
  */
5951
6735
  "minlength"?: number;
5952
6736
  /**
5953
- * The mode determines which platform styles to use.
6737
+ * The mode determines the platform behaviors of the component.
5954
6738
  */
5955
6739
  "mode"?: "ios" | "md";
5956
6740
  /**
@@ -5994,9 +6778,13 @@ declare namespace LocalJSX {
5994
6778
  */
5995
6779
  "required"?: boolean;
5996
6780
  /**
5997
- * The shape of the input. If "round" it will have an increased border radius.
6781
+ * Set to `"soft"` for an input with slightly rounded corners, `"round"` for an input with fully rounded corners, or `"rectangular"` for an input without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes. Only applies when the fill is set to `"solid"` or `"outline"`.
5998
6782
  */
5999
- "shape"?: 'round';
6783
+ "shape"?: 'soft' | 'round' | 'rectangular';
6784
+ /**
6785
+ * The size of the input. If "large", it will have an increased height. By default the size is medium. This property only applies to the `"ionic"` theme.
6786
+ */
6787
+ "size"?: 'medium' | 'large' | 'xlarge';
6000
6788
  /**
6001
6789
  * If `true`, the element will have its spelling and grammar checked.
6002
6790
  */
@@ -6005,6 +6793,10 @@ declare namespace LocalJSX {
6005
6793
  * 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
6794
  */
6007
6795
  "step"?: string;
6796
+ /**
6797
+ * The theme determines the visual appearance of the component.
6798
+ */
6799
+ "theme"?: "ios" | "md" | "ionic";
6008
6800
  /**
6009
6801
  * The type of control to display. The default type is text.
6010
6802
  */
@@ -6042,7 +6834,7 @@ declare namespace LocalJSX {
6042
6834
  */
6043
6835
  "color"?: Color;
6044
6836
  /**
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.
6837
+ * 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
6838
  */
6047
6839
  "detail"?: boolean;
6048
6840
  /**
@@ -6066,7 +6858,7 @@ declare namespace LocalJSX {
6066
6858
  */
6067
6859
  "lines"?: 'full' | 'inset' | 'none';
6068
6860
  /**
6069
- * The mode determines which platform styles to use.
6861
+ * The mode determines the platform behaviors of the component.
6070
6862
  */
6071
6863
  "mode"?: "ios" | "md";
6072
6864
  /**
@@ -6085,6 +6877,10 @@ declare namespace LocalJSX {
6085
6877
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6086
6878
  */
6087
6879
  "target"?: string | undefined;
6880
+ /**
6881
+ * The theme determines the visual appearance of the component.
6882
+ */
6883
+ "theme"?: "ios" | "md" | "ionic";
6088
6884
  /**
6089
6885
  * The type of the button. Only used when an `onclick` or `button` property is present.
6090
6886
  */
@@ -6096,15 +6892,27 @@ declare namespace LocalJSX {
6096
6892
  */
6097
6893
  "color"?: Color;
6098
6894
  /**
6099
- * The mode determines which platform styles to use.
6895
+ * The mode determines the platform behaviors of the component.
6100
6896
  */
6101
6897
  "mode"?: "ios" | "md";
6102
6898
  /**
6103
6899
  * 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
6900
  */
6105
6901
  "sticky"?: boolean;
6902
+ /**
6903
+ * The theme determines the visual appearance of the component.
6904
+ */
6905
+ "theme"?: "ios" | "md" | "ionic";
6106
6906
  }
6107
6907
  interface IonItemGroup {
6908
+ /**
6909
+ * The mode determines the platform behaviors of the component.
6910
+ */
6911
+ "mode"?: "ios" | "md";
6912
+ /**
6913
+ * The theme determines the visual appearance of the component.
6914
+ */
6915
+ "theme"?: "ios" | "md" | "ionic";
6108
6916
  }
6109
6917
  interface IonItemOption {
6110
6918
  /**
@@ -6128,23 +6936,35 @@ declare namespace LocalJSX {
6128
6936
  */
6129
6937
  "href"?: string | undefined;
6130
6938
  /**
6131
- * The mode determines which platform styles to use.
6939
+ * The mode determines the platform behaviors of the component.
6132
6940
  */
6133
6941
  "mode"?: "ios" | "md";
6134
6942
  /**
6135
6943
  * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
6136
6944
  */
6137
6945
  "rel"?: string | undefined;
6946
+ /**
6947
+ * Set to `"rectangular"` for non-rounded corners. Set to `"soft"` for slightly rounded corners. Set to `"round"` for fully rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
6948
+ */
6949
+ "shape"?: 'soft' | 'round' | 'rectangular';
6138
6950
  /**
6139
6951
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6140
6952
  */
6141
6953
  "target"?: string | undefined;
6954
+ /**
6955
+ * The theme determines the visual appearance of the component.
6956
+ */
6957
+ "theme"?: "ios" | "md" | "ionic";
6142
6958
  /**
6143
6959
  * The type of the button.
6144
6960
  */
6145
6961
  "type"?: 'submit' | 'reset' | 'button';
6146
6962
  }
6147
6963
  interface IonItemOptions {
6964
+ /**
6965
+ * The mode determines the platform behaviors of the component.
6966
+ */
6967
+ "mode"?: "ios" | "md";
6148
6968
  /**
6149
6969
  * Emitted when the item has been fully swiped.
6150
6970
  */
@@ -6153,16 +6973,28 @@ declare namespace LocalJSX {
6153
6973
  * 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
6974
  */
6155
6975
  "side"?: Side;
6976
+ /**
6977
+ * The theme determines the visual appearance of the component.
6978
+ */
6979
+ "theme"?: "ios" | "md" | "ionic";
6156
6980
  }
6157
6981
  interface IonItemSliding {
6158
6982
  /**
6159
6983
  * If `true`, the user cannot interact with the sliding item.
6160
6984
  */
6161
6985
  "disabled"?: boolean;
6986
+ /**
6987
+ * The mode determines the platform behaviors of the component.
6988
+ */
6989
+ "mode"?: "ios" | "md";
6162
6990
  /**
6163
6991
  * Emitted when the sliding position changes.
6164
6992
  */
6165
6993
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
6994
+ /**
6995
+ * The theme determines the visual appearance of the component.
6996
+ */
6997
+ "theme"?: "ios" | "md" | "ionic";
6166
6998
  }
6167
6999
  interface IonLabel {
6168
7000
  /**
@@ -6170,13 +7002,17 @@ declare namespace LocalJSX {
6170
7002
  */
6171
7003
  "color"?: Color;
6172
7004
  /**
6173
- * The mode determines which platform styles to use.
7005
+ * The mode determines the platform behaviors of the component.
6174
7006
  */
6175
7007
  "mode"?: "ios" | "md";
6176
7008
  /**
6177
7009
  * The position determines where and how the label behaves inside an item.
6178
7010
  */
6179
7011
  "position"?: 'fixed' | 'stacked' | 'floating';
7012
+ /**
7013
+ * The theme determines the visual appearance of the component.
7014
+ */
7015
+ "theme"?: "ios" | "md" | "ionic";
6180
7016
  }
6181
7017
  interface IonList {
6182
7018
  /**
@@ -6188,9 +7024,17 @@ declare namespace LocalJSX {
6188
7024
  */
6189
7025
  "lines"?: 'full' | 'inset' | 'none';
6190
7026
  /**
6191
- * The mode determines which platform styles to use.
7027
+ * The mode determines the platform behaviors of the component.
6192
7028
  */
6193
7029
  "mode"?: "ios" | "md";
7030
+ /**
7031
+ * Set to `"soft"` for slightly rounded corners, `"round"` for fully rounded corners, or `"rectangular"` for no rounded corners. Defaults to `"round"` for the `ionic` theme when inset is `true` defaults to `"rectangular"` for the `ionic` theme when inset is `false`, undefined for all other themes.
7032
+ */
7033
+ "shape"?: 'soft' | 'round' | 'rectangular';
7034
+ /**
7035
+ * The theme determines the visual appearance of the component.
7036
+ */
7037
+ "theme"?: "ios" | "md" | "ionic";
6194
7038
  }
6195
7039
  interface IonListHeader {
6196
7040
  /**
@@ -6202,9 +7046,13 @@ declare namespace LocalJSX {
6202
7046
  */
6203
7047
  "lines"?: 'full' | 'inset' | 'none';
6204
7048
  /**
6205
- * The mode determines which platform styles to use.
7049
+ * The mode determines the platform behaviors of the component.
6206
7050
  */
6207
7051
  "mode"?: "ios" | "md";
7052
+ /**
7053
+ * The theme determines the visual appearance of the component.
7054
+ */
7055
+ "theme"?: "ios" | "md" | "ionic";
6208
7056
  }
6209
7057
  interface IonLoading {
6210
7058
  /**
@@ -6248,7 +7096,7 @@ declare namespace LocalJSX {
6248
7096
  */
6249
7097
  "message"?: string | IonicSafeString;
6250
7098
  /**
6251
- * The mode determines which platform styles to use.
7099
+ * The mode determines the platform behaviors of the component.
6252
7100
  */
6253
7101
  "mode"?: "ios" | "md";
6254
7102
  /**
@@ -6292,7 +7140,11 @@ declare namespace LocalJSX {
6292
7140
  */
6293
7141
  "spinner"?: SpinnerTypes | null;
6294
7142
  /**
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).
7143
+ * The theme determines the visual appearance of the component.
7144
+ */
7145
+ "theme"?: "ios" | "md" | "ionic";
7146
+ /**
7147
+ * 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
7148
  */
6297
7149
  "translucent"?: boolean;
6298
7150
  /**
@@ -6317,6 +7169,10 @@ declare namespace LocalJSX {
6317
7169
  * An id for the menu.
6318
7170
  */
6319
7171
  "menuId"?: string;
7172
+ /**
7173
+ * The mode determines the platform behaviors of the component.
7174
+ */
7175
+ "mode"?: "ios" | "md";
6320
7176
  /**
6321
7177
  * Emitted when the menu is closed.
6322
7178
  */
@@ -6341,6 +7197,10 @@ declare namespace LocalJSX {
6341
7197
  * If `true`, swiping the menu is enabled.
6342
7198
  */
6343
7199
  "swipeGesture"?: boolean;
7200
+ /**
7201
+ * The theme determines the visual appearance of the component.
7202
+ */
7203
+ "theme"?: "ios" | "md" | "ionic";
6344
7204
  /**
6345
7205
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6346
7206
  */
@@ -6364,9 +7224,13 @@ declare namespace LocalJSX {
6364
7224
  */
6365
7225
  "menu"?: string;
6366
7226
  /**
6367
- * The mode determines which platform styles to use.
7227
+ * The mode determines the platform behaviors of the component.
6368
7228
  */
6369
7229
  "mode"?: "ios" | "md";
7230
+ /**
7231
+ * The theme determines the visual appearance of the component.
7232
+ */
7233
+ "theme"?: "ios" | "md" | "ionic";
6370
7234
  /**
6371
7235
  * The type of the button.
6372
7236
  */
@@ -6381,6 +7245,14 @@ declare namespace LocalJSX {
6381
7245
  * 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
7246
  */
6383
7247
  "menu"?: string;
7248
+ /**
7249
+ * The mode determines the platform behaviors of the component.
7250
+ */
7251
+ "mode"?: "ios" | "md";
7252
+ /**
7253
+ * The theme determines the visual appearance of the component.
7254
+ */
7255
+ "theme"?: "ios" | "md" | "ionic";
6384
7256
  }
6385
7257
  interface IonModal {
6386
7258
  /**
@@ -6444,7 +7316,7 @@ declare namespace LocalJSX {
6444
7316
  */
6445
7317
  "leaveAnimation"?: AnimationBuilder;
6446
7318
  /**
6447
- * The mode determines which platform styles to use.
7319
+ * The mode determines the platform behaviors of the component.
6448
7320
  */
6449
7321
  "mode"?: "ios" | "md";
6450
7322
  /**
@@ -6491,6 +7363,10 @@ declare namespace LocalJSX {
6491
7363
  * 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
7364
  */
6493
7365
  "showBackdrop"?: boolean;
7366
+ /**
7367
+ * The theme determines the visual appearance of the component.
7368
+ */
7369
+ "theme"?: "ios" | "md" | "ionic";
6494
7370
  /**
6495
7371
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6496
7372
  */
@@ -6502,9 +7378,13 @@ declare namespace LocalJSX {
6502
7378
  */
6503
7379
  "animated"?: boolean;
6504
7380
  /**
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.
7381
+ * 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
7382
  */
6507
7383
  "animation"?: AnimationBuilder;
7384
+ /**
7385
+ * The mode determines the platform behaviors of the component.
7386
+ */
7387
+ "mode"?: "ios" | "md";
6508
7388
  /**
6509
7389
  * Event fired when the nav has changed components
6510
7390
  */
@@ -6525,6 +7405,10 @@ declare namespace LocalJSX {
6525
7405
  * If the nav component should allow for swipe-to-go-back.
6526
7406
  */
6527
7407
  "swipeGesture"?: boolean;
7408
+ /**
7409
+ * The theme determines the visual appearance of the component.
7410
+ */
7411
+ "theme"?: "ios" | "md" | "ionic";
6528
7412
  }
6529
7413
  interface IonNavLink {
6530
7414
  /**
@@ -6535,6 +7419,10 @@ declare namespace LocalJSX {
6535
7419
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6536
7420
  */
6537
7421
  "componentProps"?: ComponentProps;
7422
+ /**
7423
+ * The mode determines the platform behaviors of the component.
7424
+ */
7425
+ "mode"?: "ios" | "md";
6538
7426
  /**
6539
7427
  * The transition animation when navigating to another page.
6540
7428
  */
@@ -6543,6 +7431,10 @@ declare namespace LocalJSX {
6543
7431
  * The transition direction when navigating to another page.
6544
7432
  */
6545
7433
  "routerDirection"?: RouterDirection;
7434
+ /**
7435
+ * The theme determines the visual appearance of the component.
7436
+ */
7437
+ "theme"?: "ios" | "md" | "ionic";
6546
7438
  }
6547
7439
  interface IonNote {
6548
7440
  /**
@@ -6550,15 +7442,23 @@ declare namespace LocalJSX {
6550
7442
  */
6551
7443
  "color"?: Color;
6552
7444
  /**
6553
- * The mode determines which platform styles to use.
7445
+ * The mode determines the platform behaviors of the component.
6554
7446
  */
6555
7447
  "mode"?: "ios" | "md";
7448
+ /**
7449
+ * The theme determines the visual appearance of the component.
7450
+ */
7451
+ "theme"?: "ios" | "md" | "ionic";
6556
7452
  }
6557
7453
  interface IonPicker {
6558
7454
  /**
6559
- * The mode determines which platform styles to use.
7455
+ * The mode determines the platform behaviors of the component.
6560
7456
  */
6561
7457
  "mode"?: "ios" | "md";
7458
+ /**
7459
+ * The theme determines the visual appearance of the component.
7460
+ */
7461
+ "theme"?: "ios" | "md" | "ionic";
6562
7462
  }
6563
7463
  interface IonPickerColumn {
6564
7464
  /**
@@ -6570,13 +7470,17 @@ declare namespace LocalJSX {
6570
7470
  */
6571
7471
  "disabled"?: boolean;
6572
7472
  /**
6573
- * The mode determines which platform styles to use.
7473
+ * The mode determines the platform behaviors of the component.
6574
7474
  */
6575
7475
  "mode"?: "ios" | "md";
6576
7476
  /**
6577
7477
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6578
7478
  */
6579
7479
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7480
+ /**
7481
+ * The theme determines the visual appearance of the component.
7482
+ */
7483
+ "theme"?: "ios" | "md" | "ionic";
6580
7484
  /**
6581
7485
  * The selected option in the picker.
6582
7486
  */
@@ -6591,6 +7495,14 @@ declare namespace LocalJSX {
6591
7495
  * If `true`, the user cannot interact with the picker column option.
6592
7496
  */
6593
7497
  "disabled"?: boolean;
7498
+ /**
7499
+ * The mode determines the platform behaviors of the component.
7500
+ */
7501
+ "mode"?: "ios" | "md";
7502
+ /**
7503
+ * The theme determines the visual appearance of the component.
7504
+ */
7505
+ "theme"?: "ios" | "md" | "ionic";
6594
7506
  /**
6595
7507
  * The text value of the option.
6596
7508
  */
@@ -6642,7 +7554,7 @@ declare namespace LocalJSX {
6642
7554
  */
6643
7555
  "leaveAnimation"?: AnimationBuilder;
6644
7556
  /**
6645
- * The mode determines which platform styles to use.
7557
+ * The mode determines the platform behaviors of the component.
6646
7558
  */
6647
7559
  "mode"?: "ios" | "md";
6648
7560
  /**
@@ -6681,6 +7593,10 @@ declare namespace LocalJSX {
6681
7593
  * If `true`, a backdrop will be displayed behind the picker.
6682
7594
  */
6683
7595
  "showBackdrop"?: boolean;
7596
+ /**
7597
+ * The theme determines the visual appearance of the component.
7598
+ */
7599
+ "theme"?: "ios" | "md" | "ionic";
6684
7600
  /**
6685
7601
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6686
7602
  */
@@ -6694,7 +7610,7 @@ declare namespace LocalJSX {
6694
7610
  }
6695
7611
  interface IonPopover {
6696
7612
  /**
6697
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7613
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6698
7614
  */
6699
7615
  "alignment"?: PositionAlign;
6700
7616
  /**
@@ -6702,7 +7618,7 @@ declare namespace LocalJSX {
6702
7618
  */
6703
7619
  "animated"?: boolean;
6704
7620
  /**
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.
7621
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6706
7622
  */
6707
7623
  "arrow"?: boolean;
6708
7624
  /**
@@ -6754,7 +7670,7 @@ declare namespace LocalJSX {
6754
7670
  */
6755
7671
  "leaveAnimation"?: AnimationBuilder;
6756
7672
  /**
6757
- * The mode determines which platform styles to use.
7673
+ * The mode determines the platform behaviors of the component.
6758
7674
  */
6759
7675
  "mode"?: "ios" | "md";
6760
7676
  /**
@@ -6806,7 +7722,11 @@ declare namespace LocalJSX {
6806
7722
  */
6807
7723
  "size"?: PopoverSize;
6808
7724
  /**
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).
7725
+ * The theme determines the visual appearance of the component.
7726
+ */
7727
+ "theme"?: "ios" | "md" | "ionic";
7728
+ /**
7729
+ * 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
7730
  */
6811
7731
  "translucent"?: boolean;
6812
7732
  /**
@@ -6828,13 +7748,17 @@ declare namespace LocalJSX {
6828
7748
  */
6829
7749
  "color"?: Color;
6830
7750
  /**
6831
- * The mode determines which platform styles to use.
7751
+ * The mode determines the platform behaviors of the component.
6832
7752
  */
6833
7753
  "mode"?: "ios" | "md";
6834
7754
  /**
6835
7755
  * If true, reverse the progress bar direction.
6836
7756
  */
6837
7757
  "reversed"?: boolean;
7758
+ /**
7759
+ * The theme determines the visual appearance of the component.
7760
+ */
7761
+ "theme"?: "ios" | "md" | "ionic";
6838
7762
  /**
6839
7763
  * 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
7764
  */
@@ -6866,7 +7790,7 @@ declare namespace LocalJSX {
6866
7790
  */
6867
7791
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6868
7792
  /**
6869
- * The mode determines which platform styles to use.
7793
+ * The mode determines the platform behaviors of the component.
6870
7794
  */
6871
7795
  "mode"?: "ios" | "md";
6872
7796
  /**
@@ -6881,6 +7805,10 @@ declare namespace LocalJSX {
6881
7805
  * Emitted when the radio button has focus.
6882
7806
  */
6883
7807
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
7808
+ /**
7809
+ * The theme determines the visual appearance of the component.
7810
+ */
7811
+ "theme"?: "ios" | "md" | "ionic";
6884
7812
  /**
6885
7813
  * the value of the radio.
6886
7814
  */
@@ -6895,6 +7823,10 @@ declare namespace LocalJSX {
6895
7823
  * 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
7824
  */
6897
7825
  "compareWith"?: string | RadioGroupCompareFn | null;
7826
+ /**
7827
+ * The mode determines the platform behaviors of the component.
7828
+ */
7829
+ "mode"?: "ios" | "md";
6898
7830
  /**
6899
7831
  * The name of the control, which is submitted with the form data.
6900
7832
  */
@@ -6903,6 +7835,10 @@ declare namespace LocalJSX {
6903
7835
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6904
7836
  */
6905
7837
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
7838
+ /**
7839
+ * The theme determines the visual appearance of the component.
7840
+ */
7841
+ "theme"?: "ios" | "md" | "ionic";
6906
7842
  /**
6907
7843
  * the value of the radio group.
6908
7844
  */
@@ -6946,7 +7882,7 @@ declare namespace LocalJSX {
6946
7882
  */
6947
7883
  "min"?: number;
6948
7884
  /**
6949
- * The mode determines which platform styles to use.
7885
+ * The mode determines the platform behaviors of the component.
6950
7886
  */
6951
7887
  "mode"?: "ios" | "md";
6952
7888
  /**
@@ -6993,6 +7929,10 @@ declare namespace LocalJSX {
6993
7929
  * Specifies the value granularity.
6994
7930
  */
6995
7931
  "step"?: number;
7932
+ /**
7933
+ * The theme determines the visual appearance of the component.
7934
+ */
7935
+ "theme"?: "ios" | "md" | "ionic";
6996
7936
  /**
6997
7937
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
6998
7938
  */
@@ -7012,7 +7952,7 @@ declare namespace LocalJSX {
7012
7952
  */
7013
7953
  "disabled"?: boolean;
7014
7954
  /**
7015
- * The mode determines which platform styles to use.
7955
+ * The mode determines the platform behaviors of the component.
7016
7956
  */
7017
7957
  "mode"?: "ios" | "md";
7018
7958
  /**
@@ -7043,8 +7983,16 @@ declare namespace LocalJSX {
7043
7983
  * 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
7984
  */
7045
7985
  "snapbackDuration"?: string;
7986
+ /**
7987
+ * The theme determines the visual appearance of the component.
7988
+ */
7989
+ "theme"?: "ios" | "md" | "ionic";
7046
7990
  }
7047
7991
  interface IonRefresherContent {
7992
+ /**
7993
+ * The mode determines the platform behaviors of the component.
7994
+ */
7995
+ "mode"?: "ios" | "md";
7048
7996
  /**
7049
7997
  * 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
7998
  */
@@ -7061,20 +8009,48 @@ declare namespace LocalJSX {
7061
8009
  * 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
8010
  */
7063
8011
  "refreshingText"?: string | IonicSafeString;
8012
+ /**
8013
+ * The theme determines the visual appearance of the component.
8014
+ */
8015
+ "theme"?: "ios" | "md" | "ionic";
7064
8016
  }
7065
8017
  interface IonReorder {
8018
+ /**
8019
+ * The mode determines the platform behaviors of the component.
8020
+ */
8021
+ "mode"?: "ios" | "md";
8022
+ /**
8023
+ * The theme determines the visual appearance of the component.
8024
+ */
8025
+ "theme"?: "ios" | "md" | "ionic";
7066
8026
  }
7067
8027
  interface IonReorderGroup {
7068
8028
  /**
7069
8029
  * If `true`, the reorder will be hidden.
7070
8030
  */
7071
8031
  "disabled"?: boolean;
8032
+ /**
8033
+ * The mode determines the platform behaviors of the component.
8034
+ */
8035
+ "mode"?: "ios" | "md";
7072
8036
  /**
7073
8037
  * 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
8038
  */
7075
8039
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8040
+ /**
8041
+ * The theme determines the visual appearance of the component.
8042
+ */
8043
+ "theme"?: "ios" | "md" | "ionic";
7076
8044
  }
7077
8045
  interface IonRippleEffect {
8046
+ /**
8047
+ * The mode determines the platform behaviors of the component.
8048
+ */
8049
+ "mode"?: "ios" | "md";
8050
+ /**
8051
+ * The theme determines the visual appearance of the component.
8052
+ */
8053
+ "theme"?: "ios" | "md" | "ionic";
7078
8054
  /**
7079
8055
  * 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
8056
  */
@@ -7097,10 +8073,18 @@ declare namespace LocalJSX {
7097
8073
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7098
8074
  */
7099
8075
  "componentProps"?: { [key: string]: any };
8076
+ /**
8077
+ * The mode determines the platform behaviors of the component.
8078
+ */
8079
+ "mode"?: "ios" | "md";
7100
8080
  /**
7101
8081
  * Used internally by `ion-router` to know when this route did change.
7102
8082
  */
7103
8083
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8084
+ /**
8085
+ * The theme determines the visual appearance of the component.
8086
+ */
8087
+ "theme"?: "ios" | "md" | "ionic";
7104
8088
  /**
7105
8089
  * 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
8090
  */
@@ -7121,6 +8105,10 @@ declare namespace LocalJSX {
7121
8105
  "to": string | undefined | null;
7122
8106
  }
7123
8107
  interface IonRouter {
8108
+ /**
8109
+ * The mode determines the platform behaviors of the component.
8110
+ */
8111
+ "mode"?: "ios" | "md";
7124
8112
  /**
7125
8113
  * Emitted when the route had changed
7126
8114
  */
@@ -7133,6 +8121,10 @@ declare namespace LocalJSX {
7133
8121
  * 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
8122
  */
7135
8123
  "root"?: string;
8124
+ /**
8125
+ * The theme determines the visual appearance of the component.
8126
+ */
8127
+ "theme"?: "ios" | "md" | "ionic";
7136
8128
  /**
7137
8129
  * 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
8130
  */
@@ -7147,6 +8139,10 @@ declare namespace LocalJSX {
7147
8139
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7148
8140
  */
7149
8141
  "href"?: string | undefined;
8142
+ /**
8143
+ * The mode determines the platform behaviors of the component.
8144
+ */
8145
+ "mode"?: "ios" | "md";
7150
8146
  /**
7151
8147
  * 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
8148
  */
@@ -7163,6 +8159,10 @@ declare namespace LocalJSX {
7163
8159
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7164
8160
  */
7165
8161
  "target"?: string | undefined;
8162
+ /**
8163
+ * The theme determines the visual appearance of the component.
8164
+ */
8165
+ "theme"?: "ios" | "md" | "ionic";
7166
8166
  }
7167
8167
  interface IonRouterOutlet {
7168
8168
  /**
@@ -7174,11 +8174,23 @@ declare namespace LocalJSX {
7174
8174
  */
7175
8175
  "animation"?: AnimationBuilder;
7176
8176
  /**
7177
- * The mode determines which platform styles to use.
8177
+ * The mode determines the platform behaviors of the component.
7178
8178
  */
7179
8179
  "mode"?: "ios" | "md";
8180
+ /**
8181
+ * The theme determines the visual appearance of the component.
8182
+ */
8183
+ "theme"?: "ios" | "md" | "ionic";
7180
8184
  }
7181
8185
  interface IonRow {
8186
+ /**
8187
+ * The mode determines the platform behaviors of the component.
8188
+ */
8189
+ "mode"?: "ios" | "md";
8190
+ /**
8191
+ * The theme determines the visual appearance of the component.
8192
+ */
8193
+ "theme"?: "ios" | "md" | "ionic";
7182
8194
  }
7183
8195
  interface IonSearchbar {
7184
8196
  /**
@@ -7198,15 +8210,15 @@ declare namespace LocalJSX {
7198
8210
  */
7199
8211
  "autocorrect"?: 'on' | 'off';
7200
8212
  /**
7201
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8213
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7202
8214
  */
7203
8215
  "cancelButtonIcon"?: string;
7204
8216
  /**
7205
- * Set the the cancel button text. Only applies to `ios` mode.
8217
+ * Set the the cancel button text. Only available when the theme is `"ios"`.
7206
8218
  */
7207
8219
  "cancelButtonText"?: string;
7208
8220
  /**
7209
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8221
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7210
8222
  */
7211
8223
  "clearIcon"?: string;
7212
8224
  /**
@@ -7238,7 +8250,7 @@ declare namespace LocalJSX {
7238
8250
  */
7239
8251
  "minlength"?: number;
7240
8252
  /**
7241
- * The mode determines which platform styles to use.
8253
+ * The mode determines the platform behaviors of the component.
7242
8254
  */
7243
8255
  "mode"?: "ios" | "md";
7244
8256
  /**
@@ -7274,7 +8286,7 @@ declare namespace LocalJSX {
7274
8286
  */
7275
8287
  "placeholder"?: string;
7276
8288
  /**
7277
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8289
+ * 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
8290
  */
7279
8291
  "searchIcon"?: string;
7280
8292
  /**
@@ -7289,6 +8301,10 @@ declare namespace LocalJSX {
7289
8301
  * If `true`, enable spellcheck on the input.
7290
8302
  */
7291
8303
  "spellcheck"?: boolean;
8304
+ /**
8305
+ * The theme determines the visual appearance of the component.
8306
+ */
8307
+ "theme"?: "ios" | "md" | "ionic";
7292
8308
  /**
7293
8309
  * Set the type of the input.
7294
8310
  */
@@ -7308,7 +8324,7 @@ declare namespace LocalJSX {
7308
8324
  */
7309
8325
  "disabled"?: boolean;
7310
8326
  /**
7311
- * The mode determines which platform styles to use.
8327
+ * The mode determines the platform behaviors of the component.
7312
8328
  */
7313
8329
  "mode"?: "ios" | "md";
7314
8330
  /**
@@ -7327,6 +8343,10 @@ declare namespace LocalJSX {
7327
8343
  * If `true`, users will be able to swipe between segment buttons to activate them.
7328
8344
  */
7329
8345
  "swipeGesture"?: boolean;
8346
+ /**
8347
+ * The theme determines the visual appearance of the component.
8348
+ */
8349
+ "theme"?: "ios" | "md" | "ionic";
7330
8350
  /**
7331
8351
  * the value of the segment.
7332
8352
  */
@@ -7342,9 +8362,13 @@ declare namespace LocalJSX {
7342
8362
  */
7343
8363
  "layout"?: SegmentButtonLayout;
7344
8364
  /**
7345
- * The mode determines which platform styles to use.
8365
+ * The mode determines the platform behaviors of the component.
7346
8366
  */
7347
8367
  "mode"?: "ios" | "md";
8368
+ /**
8369
+ * The theme determines the visual appearance of the component.
8370
+ */
8371
+ "theme"?: "ios" | "md" | "ionic";
7348
8372
  /**
7349
8373
  * The type of the button.
7350
8374
  */
@@ -7372,11 +8396,11 @@ declare namespace LocalJSX {
7372
8396
  */
7373
8397
  "disabled"?: boolean;
7374
8398
  /**
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.
8399
+ * 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
8400
  */
7377
8401
  "expandedIcon"?: string;
7378
8402
  /**
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.
8403
+ * 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
8404
  */
7381
8405
  "fill"?: 'outline' | 'solid';
7382
8406
  /**
@@ -7400,7 +8424,7 @@ declare namespace LocalJSX {
7400
8424
  */
7401
8425
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7402
8426
  /**
7403
- * The mode determines which platform styles to use.
8427
+ * The mode determines the platform behaviors of the component.
7404
8428
  */
7405
8429
  "mode"?: "ios" | "md";
7406
8430
  /**
@@ -7448,7 +8472,11 @@ declare namespace LocalJSX {
7448
8472
  */
7449
8473
  "shape"?: 'round';
7450
8474
  /**
7451
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8475
+ * The theme determines the visual appearance of the component.
8476
+ */
8477
+ "theme"?: "ios" | "md" | "ionic";
8478
+ /**
8479
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7452
8480
  */
7453
8481
  "toggleIcon"?: string;
7454
8482
  /**
@@ -7461,6 +8489,14 @@ declare namespace LocalJSX {
7461
8489
  * 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
8490
  */
7463
8491
  "disabled"?: boolean;
8492
+ /**
8493
+ * The mode determines the platform behaviors of the component.
8494
+ */
8495
+ "mode"?: "ios" | "md";
8496
+ /**
8497
+ * The theme determines the visual appearance of the component.
8498
+ */
8499
+ "theme"?: "ios" | "md" | "ionic";
7464
8500
  /**
7465
8501
  * The text value of the option.
7466
8502
  */
@@ -7475,6 +8511,10 @@ declare namespace LocalJSX {
7475
8511
  * The text content of the popover body
7476
8512
  */
7477
8513
  "message"?: string;
8514
+ /**
8515
+ * The mode determines the platform behaviors of the component.
8516
+ */
8517
+ "mode"?: "ios" | "md";
7478
8518
  /**
7479
8519
  * If true, the select accepts multiple values
7480
8520
  */
@@ -7487,12 +8527,24 @@ declare namespace LocalJSX {
7487
8527
  * The subheader text of the popover
7488
8528
  */
7489
8529
  "subHeader"?: string;
8530
+ /**
8531
+ * The theme determines the visual appearance of the component.
8532
+ */
8533
+ "theme"?: "ios" | "md" | "ionic";
7490
8534
  }
7491
8535
  interface IonSkeletonText {
7492
8536
  /**
7493
8537
  * If `true`, the skeleton text will animate.
7494
8538
  */
7495
8539
  "animated"?: boolean;
8540
+ /**
8541
+ * The mode determines the platform behaviors of the component.
8542
+ */
8543
+ "mode"?: "ios" | "md";
8544
+ /**
8545
+ * The theme determines the visual appearance of the component.
8546
+ */
8547
+ "theme"?: "ios" | "md" | "ionic";
7496
8548
  }
7497
8549
  interface IonSpinner {
7498
8550
  /**
@@ -7503,6 +8555,10 @@ declare namespace LocalJSX {
7503
8555
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7504
8556
  */
7505
8557
  "duration"?: number;
8558
+ /**
8559
+ * The mode determines the platform behaviors of the component.
8560
+ */
8561
+ "mode"?: "ios" | "md";
7506
8562
  /**
7507
8563
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7508
8564
  */
@@ -7511,6 +8567,10 @@ declare namespace LocalJSX {
7511
8567
  * If `true`, the spinner's animation will be paused.
7512
8568
  */
7513
8569
  "paused"?: boolean;
8570
+ /**
8571
+ * The theme determines the visual appearance of the component.
8572
+ */
8573
+ "theme"?: "ios" | "md" | "ionic";
7514
8574
  }
7515
8575
  interface IonSplitPane {
7516
8576
  /**
@@ -7521,10 +8581,18 @@ declare namespace LocalJSX {
7521
8581
  * If `true`, the split pane will be hidden.
7522
8582
  */
7523
8583
  "disabled"?: boolean;
8584
+ /**
8585
+ * The mode determines the platform behaviors of the component.
8586
+ */
8587
+ "mode"?: "ios" | "md";
7524
8588
  /**
7525
8589
  * Expression to be called when the split-pane visibility has changed
7526
8590
  */
7527
8591
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8592
+ /**
8593
+ * The theme determines the visual appearance of the component.
8594
+ */
8595
+ "theme"?: "ios" | "md" | "ionic";
7528
8596
  /**
7529
8597
  * 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
8598
  */
@@ -7535,10 +8603,18 @@ declare namespace LocalJSX {
7535
8603
  * The component to display inside of the tab.
7536
8604
  */
7537
8605
  "component"?: ComponentRef;
8606
+ /**
8607
+ * The mode determines the platform behaviors of the component.
8608
+ */
8609
+ "mode"?: "ios" | "md";
7538
8610
  /**
7539
8611
  * 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
8612
  */
7541
8613
  "tab": string;
8614
+ /**
8615
+ * The theme determines the visual appearance of the component.
8616
+ */
8617
+ "theme"?: "ios" | "md" | "ionic";
7542
8618
  }
7543
8619
  interface IonTabBar {
7544
8620
  /**
@@ -7546,7 +8622,7 @@ declare namespace LocalJSX {
7546
8622
  */
7547
8623
  "color"?: Color;
7548
8624
  /**
7549
- * The mode determines which platform styles to use.
8625
+ * The mode determines the platform behaviors of the component.
7550
8626
  */
7551
8627
  "mode"?: "ios" | "md";
7552
8628
  /**
@@ -7554,7 +8630,11 @@ declare namespace LocalJSX {
7554
8630
  */
7555
8631
  "selectedTab"?: string;
7556
8632
  /**
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).
8633
+ * The theme determines the visual appearance of the component.
8634
+ */
8635
+ "theme"?: "ios" | "md" | "ionic";
8636
+ /**
8637
+ * 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
8638
  */
7559
8639
  "translucent"?: boolean;
7560
8640
  }
@@ -7576,7 +8656,7 @@ declare namespace LocalJSX {
7576
8656
  */
7577
8657
  "layout"?: TabButtonLayout;
7578
8658
  /**
7579
- * The mode determines which platform styles to use.
8659
+ * The mode determines the platform behaviors of the component.
7580
8660
  */
7581
8661
  "mode"?: "ios" | "md";
7582
8662
  /**
@@ -7595,8 +8675,16 @@ declare namespace LocalJSX {
7595
8675
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7596
8676
  */
7597
8677
  "target"?: string | undefined;
8678
+ /**
8679
+ * The theme determines the visual appearance of the component.
8680
+ */
8681
+ "theme"?: "ios" | "md" | "ionic";
7598
8682
  }
7599
8683
  interface IonTabs {
8684
+ /**
8685
+ * The mode determines the platform behaviors of the component.
8686
+ */
8687
+ "mode"?: "ios" | "md";
7600
8688
  /**
7601
8689
  * Emitted when the navigation has finished transitioning to a new component.
7602
8690
  */
@@ -7605,6 +8693,10 @@ declare namespace LocalJSX {
7605
8693
  * Emitted when the navigation is about to transition to a new component.
7606
8694
  */
7607
8695
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
8696
+ /**
8697
+ * The theme determines the visual appearance of the component.
8698
+ */
8699
+ "theme"?: "ios" | "md" | "ionic";
7608
8700
  }
7609
8701
  interface IonText {
7610
8702
  /**
@@ -7612,9 +8704,13 @@ declare namespace LocalJSX {
7612
8704
  */
7613
8705
  "color"?: Color;
7614
8706
  /**
7615
- * The mode determines which platform styles to use.
8707
+ * The mode determines the platform behaviors of the component.
7616
8708
  */
7617
8709
  "mode"?: "ios" | "md";
8710
+ /**
8711
+ * The theme determines the visual appearance of the component.
8712
+ */
8713
+ "theme"?: "ios" | "md" | "ionic";
7618
8714
  }
7619
8715
  interface IonTextarea {
7620
8716
  /**
@@ -7666,7 +8762,7 @@ declare namespace LocalJSX {
7666
8762
  */
7667
8763
  "errorText"?: string;
7668
8764
  /**
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.
8765
+ * 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
8766
  */
7671
8767
  "fill"?: 'outline' | 'solid';
7672
8768
  /**
@@ -7694,7 +8790,7 @@ declare namespace LocalJSX {
7694
8790
  */
7695
8791
  "minlength"?: number;
7696
8792
  /**
7697
- * The mode determines which platform styles to use.
8793
+ * The mode determines the platform behaviors of the component.
7698
8794
  */
7699
8795
  "mode"?: "ios" | "md";
7700
8796
  /**
@@ -7741,6 +8837,10 @@ declare namespace LocalJSX {
7741
8837
  * If `true`, the element will have its spelling and grammar checked.
7742
8838
  */
7743
8839
  "spellcheck"?: boolean;
8840
+ /**
8841
+ * The theme determines the visual appearance of the component.
8842
+ */
8843
+ "theme"?: "ios" | "md" | "ionic";
7744
8844
  /**
7745
8845
  * The value of the textarea.
7746
8846
  */
@@ -7751,16 +8851,32 @@ declare namespace LocalJSX {
7751
8851
  "wrap"?: 'hard' | 'soft' | 'off';
7752
8852
  }
7753
8853
  interface IonThumbnail {
8854
+ /**
8855
+ * The mode determines the platform behaviors of the component.
8856
+ */
8857
+ "mode"?: "ios" | "md";
8858
+ /**
8859
+ * The theme determines the visual appearance of the component.
8860
+ */
8861
+ "theme"?: "ios" | "md" | "ionic";
7754
8862
  }
7755
8863
  interface IonTitle {
7756
8864
  /**
7757
8865
  * 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
8866
  */
7759
8867
  "color"?: Color;
8868
+ /**
8869
+ * The mode determines the platform behaviors of the component.
8870
+ */
8871
+ "mode"?: "ios" | "md";
7760
8872
  /**
7761
8873
  * The size of the toolbar title.
7762
8874
  */
7763
8875
  "size"?: 'large' | 'small';
8876
+ /**
8877
+ * The theme determines the visual appearance of the component.
8878
+ */
8879
+ "theme"?: "ios" | "md" | "ionic";
7764
8880
  }
7765
8881
  interface IonToast {
7766
8882
  /**
@@ -7820,7 +8936,7 @@ declare namespace LocalJSX {
7820
8936
  */
7821
8937
  "message"?: string | IonicSafeString;
7822
8938
  /**
7823
- * The mode determines which platform styles to use.
8939
+ * The mode determines the platform behaviors of the component.
7824
8940
  */
7825
8941
  "mode"?: "ios" | "md";
7826
8942
  /**
@@ -7868,7 +8984,11 @@ declare namespace LocalJSX {
7868
8984
  */
7869
8985
  "swipeGesture"?: ToastSwipeGestureDirection;
7870
8986
  /**
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).
8987
+ * The theme determines the visual appearance of the component.
8988
+ */
8989
+ "theme"?: "ios" | "md" | "ionic";
8990
+ /**
8991
+ * 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
8992
  */
7873
8993
  "translucent"?: boolean;
7874
8994
  /**
@@ -7906,7 +9026,7 @@ declare namespace LocalJSX {
7906
9026
  */
7907
9027
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7908
9028
  /**
7909
- * The mode determines which platform styles to use.
9029
+ * The mode determines the platform behaviors of the component.
7910
9030
  */
7911
9031
  "mode"?: "ios" | "md";
7912
9032
  /**
@@ -7925,6 +9045,10 @@ declare namespace LocalJSX {
7925
9045
  * Emitted when the toggle has focus.
7926
9046
  */
7927
9047
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
9048
+ /**
9049
+ * The theme determines the visual appearance of the component.
9050
+ */
9051
+ "theme"?: "ios" | "md" | "ionic";
7928
9052
  /**
7929
9053
  * 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
9054
  */
@@ -7936,9 +9060,13 @@ declare namespace LocalJSX {
7936
9060
  */
7937
9061
  "color"?: Color;
7938
9062
  /**
7939
- * The mode determines which platform styles to use.
9063
+ * The mode determines the platform behaviors of the component.
7940
9064
  */
7941
9065
  "mode"?: "ios" | "md";
9066
+ /**
9067
+ * The theme determines the visual appearance of the component.
9068
+ */
9069
+ "theme"?: "ios" | "md" | "ionic";
7942
9070
  }
7943
9071
  interface IntrinsicElements {
7944
9072
  "ion-accordion": IonAccordion;