@ionic/core 8.5.2-dev.11743531350.19e040aa → 8.5.2-dev.11743764999.1a665652

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 (1207) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +15 -10
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +10 -6
  5. package/components/button.js +41 -11
  6. package/components/buttons.js +11 -7
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +30 -12
  12. package/components/config2.js +79 -0
  13. package/components/content.js +14 -12
  14. package/components/data.js +6 -6
  15. package/components/focus-visible.js +23 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +24 -15
  18. package/components/helpers.js +54 -3
  19. package/components/index2.js +2 -2
  20. package/components/index4.js +8 -9
  21. package/components/index5.js +27 -3
  22. package/components/index6.js +110 -24
  23. package/components/index7.js +163 -27
  24. package/components/input-shims.js +2 -2
  25. package/components/input.utils.js +1 -2
  26. package/components/ion-accordion-group.js +25 -6
  27. package/components/ion-accordion.js +36 -17
  28. package/components/ion-app.js +14 -77
  29. package/components/ion-avatar.js +58 -5
  30. package/components/ion-back-button.js +29 -19
  31. package/components/ion-badge.js +51 -9
  32. package/components/ion-breadcrumb.js +45 -11
  33. package/components/ion-breadcrumbs.js +9 -5
  34. package/components/ion-card-content.js +11 -7
  35. package/components/ion-card-header.js +9 -5
  36. package/components/ion-card-subtitle.js +9 -5
  37. package/components/ion-card-title.js +9 -5
  38. package/components/ion-card.js +17 -9
  39. package/components/ion-chip.js +45 -8
  40. package/components/ion-col.js +5 -5
  41. package/components/ion-datetime-button.js +9 -6
  42. package/components/ion-datetime.js +99 -21
  43. package/components/ion-divider.d.ts +11 -0
  44. package/components/ion-divider.js +59 -0
  45. package/components/ion-fab-button.js +33 -10
  46. package/components/ion-fab-list.js +5 -5
  47. package/components/ion-fab.js +6 -6
  48. package/components/ion-footer.js +18 -12
  49. package/components/ion-grid.js +5 -5
  50. package/components/ion-img.js +5 -2
  51. package/components/ion-infinite-scroll-content.js +13 -8
  52. package/components/ion-infinite-scroll.js +5 -5
  53. package/components/ion-input-password-toggle.js +53 -14
  54. package/components/ion-input.js +118 -20
  55. package/components/ion-item-divider.js +9 -5
  56. package/components/ion-item-group.js +9 -5
  57. package/components/ion-item-option.js +28 -8
  58. package/components/ion-item-options.js +9 -5
  59. package/components/ion-item-sliding.js +5 -5
  60. package/components/ion-loading.js +13 -8
  61. package/components/ion-menu-button.js +28 -10
  62. package/components/ion-menu-toggle.js +5 -5
  63. package/components/ion-menu.js +12 -8
  64. package/components/ion-nav-link.js +1 -1
  65. package/components/ion-nav.js +8 -6
  66. package/components/ion-note.js +9 -5
  67. package/components/ion-picker-legacy.js +7 -8
  68. package/components/ion-progress-bar.js +28 -7
  69. package/components/ion-range.js +15 -28
  70. package/components/ion-refresher-content.js +28 -9
  71. package/components/ion-refresher.js +11 -7
  72. package/components/ion-reorder-group.js +5 -5
  73. package/components/ion-reorder.js +31 -5
  74. package/components/ion-router-link.js +6 -6
  75. package/components/ion-router-outlet.js +4 -3
  76. package/components/ion-row.js +5 -2
  77. package/components/ion-searchbar.js +141 -18
  78. package/components/ion-segment-button.js +60 -25
  79. package/components/ion-segment-content.js +2 -2
  80. package/components/ion-segment-view.js +6 -2
  81. package/components/ion-segment.js +11 -7
  82. package/components/ion-select-option.js +5 -2
  83. package/components/ion-select.js +120 -33
  84. package/components/ion-skeleton-text.js +6 -5
  85. package/components/ion-split-pane.js +12 -8
  86. package/components/ion-tab-bar.js +31 -8
  87. package/components/ion-tab-button.js +28 -7
  88. package/components/ion-tab.js +2 -2
  89. package/components/ion-tabs.js +2 -2
  90. package/components/ion-text.js +5 -5
  91. package/components/ion-textarea.js +48 -11
  92. package/components/ion-thumbnail.js +5 -2
  93. package/components/ion-toast.js +30 -11
  94. package/components/ion-toggle.js +77 -18
  95. package/components/ionic-global.js +378 -82
  96. package/components/ios.transition.js +1 -0
  97. package/components/item.js +41 -11
  98. package/components/keyboard-controller.js +4 -2
  99. package/components/label.js +9 -5
  100. package/components/list-header.js +9 -5
  101. package/components/list.js +29 -6
  102. package/components/list2.js +6 -0
  103. package/components/modal.js +51 -21
  104. package/components/notch-controller.js +1 -1
  105. package/components/overlays.js +4 -5
  106. package/components/picker-column-option.js +9 -5
  107. package/components/picker-column.js +7 -8
  108. package/components/picker-column2.js +4 -4
  109. package/components/picker.js +8 -4
  110. package/components/popover.js +11 -8
  111. package/components/radio-group.js +11 -5
  112. package/components/radio.js +12 -8
  113. package/components/ripple-effect.js +18 -8
  114. package/components/select-modal.js +3 -3
  115. package/components/select-popover.js +9 -2
  116. package/components/spinner.js +36 -9
  117. package/components/status-tap.js +1 -1
  118. package/components/title.js +11 -7
  119. package/components/toolbar.js +11 -7
  120. package/components/x.js +6 -0
  121. package/css/core.css +1 -1
  122. package/css/core.css.map +1 -1
  123. package/css/display.css +1 -1
  124. package/css/display.css.map +1 -1
  125. package/css/flex-utils.css +1 -1
  126. package/css/flex-utils.css.map +1 -1
  127. package/css/float-elements.css.map +1 -1
  128. package/css/global.bundle.css.map +1 -1
  129. package/css/ionic/bundle.ionic.css +1 -0
  130. package/css/ionic/bundle.ionic.css.map +1 -0
  131. package/css/ionic/core.ionic.css +1 -0
  132. package/css/ionic/core.ionic.css.map +1 -0
  133. package/css/ionic/global.bundle.ionic.css +1 -0
  134. package/css/ionic/global.bundle.ionic.css.map +1 -0
  135. package/css/ionic/ionic-swiper.ionic.css +1 -0
  136. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  137. package/css/ionic/link.ionic.css +1 -0
  138. package/css/ionic/link.ionic.css.map +1 -0
  139. package/css/ionic/structure.ionic.css +1 -0
  140. package/css/ionic/structure.ionic.css.map +1 -0
  141. package/css/ionic/typography.ionic.css +1 -0
  142. package/css/ionic/typography.ionic.css.map +1 -0
  143. package/css/ionic/utils.bundle.ionic.css +1 -0
  144. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  145. package/css/ionic-swiper.css +1 -1
  146. package/css/ionic-swiper.css.map +1 -1
  147. package/css/ionic.bundle.css +1 -1
  148. package/css/ionic.bundle.css.map +1 -1
  149. package/css/normalize.css.map +1 -1
  150. package/css/padding.css.map +1 -1
  151. package/css/palettes/dark.always.css.map +1 -1
  152. package/css/palettes/dark.class.css.map +1 -1
  153. package/css/palettes/dark.system.css.map +1 -1
  154. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  155. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  156. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  157. package/css/palettes/high-contrast.always.css.map +1 -1
  158. package/css/palettes/high-contrast.class.css.map +1 -1
  159. package/css/palettes/high-contrast.system.css.map +1 -1
  160. package/css/structure.css.map +1 -1
  161. package/css/text-alignment.css.map +1 -1
  162. package/css/text-transformation.css.map +1 -1
  163. package/css/typography.css.map +1 -1
  164. package/css/utils.bundle.css +1 -1
  165. package/css/utils.bundle.css.map +1 -1
  166. package/dist/cjs/{animation-b4fdf128.js → animation-124b7017.js} +2 -2
  167. package/dist/cjs/{app-globals-dd592863.js → app-globals-04316582.js} +1 -1
  168. package/dist/cjs/{button-active-43e2b419.js → button-active-6c0ef0f0.js} +1 -1
  169. package/dist/cjs/{capacitor-c04564bf.js → capacitor-ec2a454d.js} +3 -3
  170. package/dist/cjs/caret-down-3c215cff.js +8 -0
  171. package/dist/cjs/caret-left-2bb66970.js +8 -0
  172. package/dist/cjs/caret-right-88e03970.js +8 -0
  173. package/dist/cjs/config-aff4ff52.js +84 -0
  174. package/dist/cjs/{data-27cc2c9c.js → data-ae8423e6.js} +8 -8
  175. package/dist/{esm/focus-visible-dd40d69f.js → cjs/focus-visible-fe3acfb5.js} +27 -1
  176. package/dist/cjs/{framework-delegate-50a86d56.js → framework-delegate-4de32fdc.js} +4 -2
  177. package/dist/cjs/{haptic-f6b37aa3.js → haptic-f262299e.js} +1 -1
  178. package/dist/cjs/{helpers-3a248559.js → helpers-4211d834.js} +54 -2
  179. package/dist/cjs/{index-e630fd95.js → index-042a8f38.js} +12 -12
  180. package/dist/cjs/{index-e36bd277.js → index-3d31ef2d.js} +10 -7
  181. package/dist/cjs/{index-4b70187a.js → index-943c0438.js} +14 -15
  182. package/dist/cjs/{index-509ca0d3.js → index-f835dc22.js} +3 -3
  183. package/dist/cjs/index.cjs.js +11 -12
  184. package/dist/cjs/{input-shims-22a9973f.js → input-shims-c93f3c7f.js} +18 -18
  185. package/dist/cjs/{input.utils-e82b8ed0.js → input.utils-00741e7b.js} +4 -5
  186. package/dist/cjs/ion-accordion_2.cjs.entry.js +62 -24
  187. package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -18
  188. package/dist/cjs/ion-alert.cjs.entry.js +26 -23
  189. package/dist/cjs/ion-app_8.cjs.entry.js +113 -152
  190. package/dist/cjs/ion-avatar_3.cjs.entry.js +103 -11
  191. package/dist/cjs/ion-back-button.cjs.entry.js +32 -21
  192. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -6
  193. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -15
  194. package/dist/cjs/ion-button_2.cjs.entry.js +47 -15
  195. package/dist/cjs/ion-card_5.cjs.entry.js +53 -28
  196. package/dist/cjs/ion-checkbox.cjs.entry.js +31 -13
  197. package/dist/cjs/ion-chip.cjs.entry.js +43 -7
  198. package/dist/cjs/ion-col_3.cjs.entry.js +14 -10
  199. package/dist/cjs/ion-datetime-button.cjs.entry.js +17 -12
  200. package/dist/cjs/ion-datetime_3.cjs.entry.js +191 -115
  201. package/dist/cjs/ion-divider.cjs.entry.js +43 -0
  202. package/dist/cjs/ion-fab_3.cjs.entry.js +43 -19
  203. package/dist/cjs/ion-img.cjs.entry.js +8 -3
  204. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +22 -17
  205. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  206. package/dist/cjs/ion-input.cjs.entry.js +119 -23
  207. package/dist/cjs/ion-item-option_3.cjs.entry.js +41 -17
  208. package/dist/cjs/ion-item_8.cjs.entry.js +114 -41
  209. package/dist/cjs/ion-loading.cjs.entry.js +21 -18
  210. package/dist/cjs/ion-menu_3.cjs.entry.js +49 -29
  211. package/dist/cjs/ion-modal.cjs.entry.js +99 -70
  212. package/dist/cjs/ion-nav_2.cjs.entry.js +16 -13
  213. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -6
  214. package/dist/cjs/ion-picker-column.cjs.entry.js +13 -12
  215. package/dist/cjs/ion-picker.cjs.entry.js +11 -5
  216. package/dist/cjs/ion-popover.cjs.entry.js +21 -18
  217. package/dist/cjs/ion-progress-bar.cjs.entry.js +29 -8
  218. package/dist/cjs/ion-radio_2.cjs.entry.js +25 -13
  219. package/dist/cjs/ion-range.cjs.entry.js +23 -34
  220. package/dist/cjs/ion-refresher_2.cjs.entry.js +45 -23
  221. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -13
  222. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -7
  223. package/dist/cjs/ion-route_4.cjs.entry.js +9 -7
  224. package/dist/cjs/ion-searchbar.cjs.entry.js +139 -17
  225. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  226. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -2
  227. package/dist/cjs/ion-segment_2.cjs.entry.js +72 -31
  228. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -10
  229. package/dist/cjs/ion-select_3.cjs.entry.js +134 -40
  230. package/dist/cjs/ion-spinner.cjs.entry.js +35 -9
  231. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -8
  232. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +61 -20
  233. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -6
  234. package/dist/cjs/ion-text.cjs.entry.js +6 -5
  235. package/dist/cjs/ion-textarea.cjs.entry.js +52 -16
  236. package/dist/cjs/ion-toast.cjs.entry.js +60 -42
  237. package/dist/cjs/ion-toggle.cjs.entry.js +81 -22
  238. package/dist/cjs/ionic-global-5c446a5e.js +531 -0
  239. package/dist/cjs/ionic.cjs.js +4 -3
  240. package/dist/cjs/{ios.transition-ae7afca9.js → ios.transition-cdf1959e.js} +7 -6
  241. package/dist/cjs/{keyboard-0272231f.js → keyboard-924ba9a2.js} +1 -1
  242. package/dist/cjs/{keyboard-af1bb365.js → keyboard-9cd4a473.js} +5 -3
  243. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-dc7a55c4.js} +11 -9
  244. package/dist/cjs/list-2930c629.js +8 -0
  245. package/dist/cjs/loader.cjs.js +4 -3
  246. package/dist/cjs/{md.transition-26003e25.js → md.transition-6a00a3e7.js} +6 -6
  247. package/dist/cjs/{notch-controller-ae03a497.js → notch-controller-14681d65.js} +4 -4
  248. package/dist/cjs/{overlays-a0c6b23f.js → overlays-288b775b.js} +19 -20
  249. package/dist/cjs/{status-tap-03023755.js → status-tap-a41ad873.js} +5 -4
  250. package/dist/cjs/{swipe-back-cd0d9f77.js → swipe-back-cf9385d3.js} +3 -1
  251. package/dist/cjs/x-81a8f51c.js +8 -0
  252. package/dist/collection/collection-manifest.json +1 -0
  253. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  254. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  255. package/dist/collection/components/accordion/accordion.js +37 -21
  256. package/dist/collection/components/accordion/accordion.md.css +67 -59
  257. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  258. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  259. package/dist/collection/components/accordion-group/accordion-group.js +43 -8
  260. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  261. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  262. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  263. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  264. package/dist/collection/components/alert/alert.ios.css +19 -1
  265. package/dist/collection/components/alert/alert.js +15 -12
  266. package/dist/collection/components/alert/alert.md.css +19 -1
  267. package/dist/collection/components/app/app.js +22 -80
  268. package/dist/collection/components/avatar/avatar.ionic.css +374 -0
  269. package/dist/collection/components/avatar/avatar.ios.css +13 -0
  270. package/dist/collection/components/avatar/avatar.js +113 -4
  271. package/dist/collection/components/avatar/avatar.md.css +90 -0
  272. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  273. package/dist/collection/components/back-button/back-button.js +27 -19
  274. package/dist/collection/components/back-button/back-button.md.css +60 -48
  275. package/dist/collection/components/backdrop/backdrop.ionic.css +150 -0
  276. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  277. package/dist/collection/components/backdrop/backdrop.js +12 -6
  278. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  279. package/dist/collection/components/badge/badge.ionic.css +356 -0
  280. package/dist/collection/components/badge/badge.ios.css +164 -4
  281. package/dist/collection/components/badge/badge.js +98 -9
  282. package/dist/collection/components/badge/badge.md.css +148 -4
  283. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  284. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  285. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  286. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  287. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  288. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  289. package/dist/collection/components/button/button.ionic.css +656 -0
  290. package/dist/collection/components/button/button.ios.css +182 -37
  291. package/dist/collection/components/button/button.js +46 -16
  292. package/dist/collection/components/button/button.md.css +173 -41
  293. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  294. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  295. package/dist/collection/components/buttons/buttons.js +14 -8
  296. package/dist/collection/components/buttons/buttons.md.css +55 -3
  297. package/dist/collection/components/card/card.ionic.css +137 -0
  298. package/dist/collection/components/card/card.ios.css +65 -14
  299. package/dist/collection/components/card/card.js +34 -10
  300. package/dist/collection/components/card/card.md.css +65 -14
  301. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  302. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  303. package/dist/collection/components/card-content/card-content.js +11 -8
  304. package/dist/collection/components/card-content/card-content.md.css +16 -1
  305. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  306. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  307. package/dist/collection/components/card-header/card-header.js +12 -9
  308. package/dist/collection/components/card-header/card-header.md.css +27 -15
  309. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  310. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  311. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  312. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  313. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  314. package/dist/collection/components/card-title/card-title.js +11 -8
  315. package/dist/collection/components/card-title/card-title.md.css +73 -0
  316. package/dist/collection/components/checkbox/checkbox.ionic.css +519 -0
  317. package/dist/collection/components/checkbox/checkbox.ios.css +179 -119
  318. package/dist/collection/components/checkbox/checkbox.js +64 -14
  319. package/dist/collection/components/checkbox/checkbox.md.css +180 -120
  320. package/dist/collection/components/chip/chip.ionic.css +160 -0
  321. package/dist/collection/components/chip/chip.ios.css +20 -1
  322. package/dist/collection/components/chip/chip.js +77 -8
  323. package/dist/collection/components/chip/chip.md.css +20 -1
  324. package/dist/collection/components/col/col.css +12 -0
  325. package/dist/collection/components/col/col.js +9 -5
  326. package/dist/collection/components/content/content.css +8 -2
  327. package/dist/collection/components/content/content.js +16 -11
  328. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  329. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  330. package/dist/collection/components/datetime/datetime.js +98 -20
  331. package/dist/collection/components/datetime/datetime.md.css +237 -86
  332. package/dist/collection/components/datetime/utils/data.js +5 -5
  333. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  334. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  335. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  336. package/dist/collection/components/divider/divider.ionic.css +150 -0
  337. package/dist/collection/components/divider/divider.ios.css +87 -0
  338. package/dist/collection/components/divider/divider.js +76 -0
  339. package/dist/collection/components/divider/divider.md.css +87 -0
  340. package/dist/collection/components/fab/fab.css +25 -1
  341. package/dist/collection/components/fab/fab.js +9 -5
  342. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  343. package/dist/collection/components/fab-button/fab-button.js +36 -15
  344. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  345. package/dist/collection/components/fab-list/fab-list.css +12 -0
  346. package/dist/collection/components/fab-list/fab-list.js +9 -5
  347. package/dist/collection/components/footer/footer.ios.css +14 -2
  348. package/dist/collection/components/footer/footer.js +20 -15
  349. package/dist/collection/components/footer/footer.md.css +12 -0
  350. package/dist/collection/components/grid/grid.css +12 -0
  351. package/dist/collection/components/grid/grid.js +9 -5
  352. package/dist/collection/components/header/header.ionic.css +86 -0
  353. package/dist/collection/components/header/header.ios.css +25 -10
  354. package/dist/collection/components/header/header.js +42 -17
  355. package/dist/collection/components/header/header.md.css +23 -8
  356. package/dist/collection/components/img/img.js +8 -2
  357. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  358. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  359. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  360. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  361. package/dist/collection/components/input/input.ionic.css +917 -0
  362. package/dist/collection/components/input/input.ios.css +223 -140
  363. package/dist/collection/components/input/input.js +144 -30
  364. package/dist/collection/components/input/input.md.css +245 -142
  365. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  366. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  367. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  368. package/dist/collection/components/item/item.ionic.css +497 -0
  369. package/dist/collection/components/item/item.ios.css +109 -69
  370. package/dist/collection/components/item/item.js +44 -16
  371. package/dist/collection/components/item/item.md.css +120 -68
  372. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  373. package/dist/collection/components/item-divider/item-divider.js +11 -8
  374. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  375. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  376. package/dist/collection/components/item-group/item-group.js +13 -7
  377. package/dist/collection/components/item-group/item-group.md.css +12 -0
  378. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  379. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  380. package/dist/collection/components/item-option/item-option.js +43 -8
  381. package/dist/collection/components/item-option/item-option.md.css +14 -2
  382. package/dist/collection/components/item-options/item-options.ionic.css +259 -0
  383. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  384. package/dist/collection/components/item-options/item-options.js +13 -7
  385. package/dist/collection/components/item-options/item-options.md.css +18 -0
  386. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  387. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  388. package/dist/collection/components/label/label.ios.css +18 -0
  389. package/dist/collection/components/label/label.js +11 -8
  390. package/dist/collection/components/label/label.md.css +18 -0
  391. package/dist/collection/components/list/list.ionic.css +192 -0
  392. package/dist/collection/components/list/list.ios.css +18 -0
  393. package/dist/collection/components/list/list.js +47 -9
  394. package/dist/collection/components/list/list.md.css +20 -2
  395. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  396. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  397. package/dist/collection/components/list-header/list-header.js +11 -8
  398. package/dist/collection/components/list-header/list-header.md.css +18 -0
  399. package/dist/collection/components/loading/loading.ios.css +13 -1
  400. package/dist/collection/components/loading/loading.js +13 -10
  401. package/dist/collection/components/loading/loading.md.css +13 -1
  402. package/dist/collection/components/menu/menu.ios.css +15 -3
  403. package/dist/collection/components/menu/menu.js +12 -7
  404. package/dist/collection/components/menu/menu.md.css +15 -3
  405. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  406. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  407. package/dist/collection/components/menu-button/menu-button.js +26 -10
  408. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  409. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  410. package/dist/collection/components/modal/animations/sheet.js +8 -2
  411. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  412. package/dist/collection/components/modal/modal.ionic.css +245 -0
  413. package/dist/collection/components/modal/modal.ios.css +106 -63
  414. package/dist/collection/components/modal/modal.js +47 -11
  415. package/dist/collection/components/modal/modal.md.css +106 -63
  416. package/dist/collection/components/nav/nav.css +7 -1
  417. package/dist/collection/components/nav/nav.js +11 -5
  418. package/dist/collection/components/nav-link/nav-link.js +5 -1
  419. package/dist/collection/components/note/note.ios.css +12 -0
  420. package/dist/collection/components/note/note.js +11 -8
  421. package/dist/collection/components/note/note.md.css +12 -0
  422. package/dist/collection/components/picker/picker.ios.css +15 -3
  423. package/dist/collection/components/picker/picker.js +8 -5
  424. package/dist/collection/components/picker/picker.md.css +15 -3
  425. package/dist/collection/components/picker-column/picker-column.css +9 -2
  426. package/dist/collection/components/picker-column/picker-column.js +8 -7
  427. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  428. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  429. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  430. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  431. package/dist/collection/components/picker-legacy/picker.js +7 -6
  432. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  433. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  434. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  435. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  436. package/dist/collection/components/popover/popover.ios.css +13 -1
  437. package/dist/collection/components/popover/popover.js +15 -12
  438. package/dist/collection/components/popover/popover.md.css +13 -1
  439. package/dist/collection/components/progress-bar/progress-bar.ionic.css +333 -0
  440. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  441. package/dist/collection/components/progress-bar/progress-bar.js +42 -7
  442. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  443. package/dist/collection/components/radio/radio.ionic.css +424 -0
  444. package/dist/collection/components/radio/radio.ios.css +134 -91
  445. package/dist/collection/components/radio/radio.js +12 -9
  446. package/dist/collection/components/radio/radio.md.css +134 -91
  447. package/dist/collection/components/radio-group/radio-group.ionic.css +127 -0
  448. package/dist/collection/components/radio-group/radio-group.ios.css +42 -18
  449. package/dist/collection/components/radio-group/radio-group.js +13 -5
  450. package/dist/collection/components/radio-group/radio-group.md.css +42 -18
  451. package/dist/collection/components/range/range.ionic.css +555 -0
  452. package/dist/collection/components/range/range.ios.css +128 -85
  453. package/dist/collection/components/range/range.js +14 -27
  454. package/dist/collection/components/range/range.md.css +128 -85
  455. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  456. package/dist/collection/components/refresher/refresher.js +11 -8
  457. package/dist/collection/components/refresher/refresher.md.css +15 -2
  458. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  459. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  460. package/dist/collection/components/reorder/reorder.js +33 -6
  461. package/dist/collection/components/reorder/reorder.md.css +6 -0
  462. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  463. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  464. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  465. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  466. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  467. package/dist/collection/components/route/route.js +4 -0
  468. package/dist/collection/components/router/router.js +4 -0
  469. package/dist/collection/components/router-link/router-link.css +8 -2
  470. package/dist/collection/components/router-link/router-link.js +9 -5
  471. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  472. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  473. package/dist/collection/components/row/row.css +12 -0
  474. package/dist/collection/components/row/row.js +9 -2
  475. package/dist/collection/components/searchbar/searchbar.ionic.css +628 -0
  476. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  477. package/dist/collection/components/searchbar/searchbar.js +179 -29
  478. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  479. package/dist/collection/components/segment/segment.ionic.css +117 -0
  480. package/dist/collection/components/segment/segment.ios.css +45 -2
  481. package/dist/collection/components/segment/segment.js +11 -8
  482. package/dist/collection/components/segment/segment.md.css +45 -2
  483. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  484. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  485. package/dist/collection/components/segment-button/segment-button.js +60 -26
  486. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  487. package/dist/collection/components/segment-content/segment-content.css +0 -9
  488. package/dist/collection/components/segment-content/segment-content.js +1 -1
  489. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  490. package/dist/collection/components/segment-view/segment-view.js +6 -4
  491. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  492. package/dist/collection/components/select/select.ionic.css +829 -0
  493. package/dist/collection/components/select/select.ios.css +267 -134
  494. package/dist/collection/components/select/select.js +157 -55
  495. package/dist/collection/components/select/select.md.css +283 -136
  496. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  497. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  498. package/dist/collection/components/select-modal/select-modal.js +3 -3
  499. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  500. package/dist/collection/components/select-option/select-option.js +9 -2
  501. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  502. package/dist/collection/components/select-popover/select-popover.js +12 -4
  503. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  504. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  505. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  506. package/dist/collection/components/spinner/spinner.common.css +199 -0
  507. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  508. package/dist/collection/components/spinner/spinner.js +46 -6
  509. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  510. package/dist/collection/components/split-pane/split-pane.js +14 -8
  511. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  512. package/dist/collection/components/tab/tab.js +6 -2
  513. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  514. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  515. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  516. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  517. package/dist/collection/components/tab-button/tab-button.ionic.css +327 -0
  518. package/dist/collection/components/tab-button/tab-button.ios.css +166 -90
  519. package/dist/collection/components/tab-button/tab-button.js +43 -8
  520. package/dist/collection/components/tab-button/tab-button.md.css +132 -88
  521. package/dist/collection/components/tabs/tabs.css +7 -1
  522. package/dist/collection/components/tabs/tabs.js +4 -1
  523. package/dist/collection/components/text/text.css +6 -0
  524. package/dist/collection/components/text/text.js +7 -6
  525. package/dist/collection/components/textarea/textarea.ionic.css +879 -0
  526. package/dist/collection/components/textarea/textarea.ios.css +205 -96
  527. package/dist/collection/components/textarea/textarea.js +69 -16
  528. package/dist/collection/components/textarea/textarea.md.css +218 -97
  529. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  530. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  531. package/dist/collection/components/title/title.ionic.css +145 -0
  532. package/dist/collection/components/title/title.ios.css +32 -4
  533. package/dist/collection/components/title/title.js +13 -7
  534. package/dist/collection/components/title/title.md.css +32 -4
  535. package/dist/collection/components/toast/animations/utils.js +1 -1
  536. package/dist/collection/components/toast/toast.ionic.css +377 -0
  537. package/dist/collection/components/toast/toast.ios.css +74 -35
  538. package/dist/collection/components/toast/toast.js +45 -10
  539. package/dist/collection/components/toast/toast.md.css +74 -35
  540. package/dist/collection/components/toggle/toggle.ionic.css +525 -0
  541. package/dist/collection/components/toggle/toggle.ios.css +245 -129
  542. package/dist/collection/components/toggle/toggle.js +73 -18
  543. package/dist/collection/components/toggle/toggle.md.css +242 -129
  544. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  545. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  546. package/dist/collection/components/toolbar/toolbar.js +13 -10
  547. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  548. package/dist/collection/global/ionic-global.js +229 -13
  549. package/dist/collection/utils/focus-visible.js +22 -0
  550. package/dist/collection/utils/framework-delegate.js +3 -1
  551. package/dist/collection/utils/helpers.js +52 -2
  552. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  553. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  554. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  555. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  556. package/dist/collection/utils/overlays.js +2 -1
  557. package/dist/collection/utils/test/playwright/generator.js +48 -23
  558. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  559. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  560. package/dist/collection/utils/transition/ios.transition.js +1 -0
  561. package/dist/docs.json +7486 -331
  562. package/dist/esm/{animation-eab5a4ca.js → animation-12d440f3.js} +1 -1
  563. package/dist/esm/{app-globals-7b6cbf1a.js → app-globals-2497eeed.js} +1 -1
  564. package/dist/esm/{button-active-90f1dbc4.js → button-active-8f33f086.js} +2 -2
  565. package/dist/esm/{capacitor-59395cbd.js → capacitor-39edcb1f.js} +1 -1
  566. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  567. package/dist/esm/caret-left-33424bb0.js +6 -0
  568. package/dist/esm/caret-right-68d856ad.js +6 -0
  569. package/dist/esm/config-84eb9670.js +79 -0
  570. package/dist/esm/{data-174ad5e0.js → data-591c1b05.js} +6 -6
  571. package/dist/{cjs/focus-visible-7a0ce04f.js → esm/focus-visible-6827442c.js} +23 -3
  572. package/dist/esm/{framework-delegate-2eea1763.js → framework-delegate-9ad3e427.js} +4 -2
  573. package/dist/esm/{haptic-ac164e4c.js → haptic-946542b8.js} +1 -1
  574. package/dist/esm/{helpers-78efeec3.js → helpers-ea1f7324.js} +54 -3
  575. package/dist/esm/{index-f9f5d018.js → index-036caa00.js} +10 -11
  576. package/{components/index9.js → dist/esm/index-0c65e393.js} +5 -2
  577. package/dist/esm/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  578. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  579. package/dist/esm/{index-ecb55b8d.js → index-eb1203fa.js} +6 -6
  580. package/dist/esm/{index-e919e353.js → index-f36a3fa4.js} +2 -2
  581. package/dist/esm/index.js +12 -13
  582. package/dist/esm/{input-shims-7dc1f6dc.js → input-shims-96f8d7c2.js} +8 -8
  583. package/dist/esm/{input.utils-28bf4ef0.js → input.utils-22a20c3a.js} +2 -3
  584. package/dist/esm/ion-accordion_2.entry.js +62 -24
  585. package/dist/esm/ion-action-sheet.entry.js +23 -19
  586. package/dist/esm/ion-alert.entry.js +24 -21
  587. package/dist/esm/ion-app_8.entry.js +101 -140
  588. package/dist/esm/ion-avatar_3.entry.js +105 -13
  589. package/dist/esm/ion-back-button.entry.js +32 -21
  590. package/dist/esm/ion-backdrop.entry.js +12 -7
  591. package/dist/esm/ion-breadcrumb_2.entry.js +56 -17
  592. package/dist/esm/ion-button_2.entry.js +45 -13
  593. package/dist/esm/ion-card_5.entry.js +54 -29
  594. package/dist/esm/ion-checkbox.entry.js +32 -14
  595. package/dist/esm/ion-chip.entry.js +44 -8
  596. package/dist/esm/ion-col_3.entry.js +15 -11
  597. package/dist/esm/ion-datetime-button.entry.js +14 -9
  598. package/dist/esm/ion-datetime_3.entry.js +117 -41
  599. package/dist/esm/ion-divider.entry.js +39 -0
  600. package/dist/esm/ion-fab_3.entry.js +45 -21
  601. package/dist/esm/ion-img.entry.js +9 -4
  602. package/dist/esm/ion-infinite-scroll_2.entry.js +20 -15
  603. package/dist/esm/ion-input-password-toggle.entry.js +54 -15
  604. package/dist/esm/ion-input.entry.js +121 -25
  605. package/dist/esm/ion-item-option_3.entry.js +42 -18
  606. package/dist/esm/ion-item_8.entry.js +115 -42
  607. package/dist/esm/ion-loading.entry.js +19 -16
  608. package/dist/esm/ion-menu_3.entry.js +49 -29
  609. package/dist/esm/ion-modal.entry.js +60 -31
  610. package/dist/esm/ion-nav_2.entry.js +15 -12
  611. package/dist/esm/ion-picker-column-option.entry.js +13 -7
  612. package/dist/esm/ion-picker-column.entry.js +13 -12
  613. package/dist/esm/ion-picker.entry.js +12 -6
  614. package/dist/esm/ion-popover.entry.js +19 -16
  615. package/dist/esm/ion-progress-bar.entry.js +29 -8
  616. package/dist/esm/ion-radio_2.entry.js +26 -14
  617. package/dist/esm/ion-range.entry.js +19 -30
  618. package/dist/esm/ion-refresher_2.entry.js +43 -21
  619. package/dist/esm/ion-reorder_2.entry.js +40 -15
  620. package/dist/esm/ion-ripple-effect.entry.js +19 -8
  621. package/dist/esm/ion-route_4.entry.js +10 -8
  622. package/dist/esm/ion-searchbar.entry.js +141 -19
  623. package/dist/esm/ion-segment-content.entry.js +3 -3
  624. package/dist/esm/ion-segment-view.entry.js +7 -3
  625. package/dist/esm/ion-segment_2.entry.js +73 -32
  626. package/dist/esm/ion-select-modal.entry.js +10 -11
  627. package/dist/esm/ion-select_3.entry.js +136 -42
  628. package/dist/esm/ion-spinner.entry.js +34 -8
  629. package/dist/esm/ion-split-pane.entry.js +14 -9
  630. package/dist/esm/ion-tab-bar_2.entry.js +61 -20
  631. package/dist/esm/ion-tab_2.entry.js +9 -7
  632. package/dist/esm/ion-text.entry.js +7 -6
  633. package/dist/esm/ion-textarea.entry.js +53 -17
  634. package/dist/esm/ion-toast.entry.js +35 -17
  635. package/dist/esm/ion-toggle.entry.js +82 -23
  636. package/dist/esm/ionic-global-b30d2cc2.js +517 -0
  637. package/dist/esm/ionic.js +6 -5
  638. package/dist/esm/{ios.transition-7fe5dbea.js → ios.transition-cbbf0bd1.js} +8 -7
  639. package/dist/esm/{keyboard-52278bd7.js → keyboard-0af19ead.js} +5 -3
  640. package/dist/esm/{keyboard-73175e24.js → keyboard-ceb6990d.js} +1 -1
  641. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-7e2da6b9.js} +5 -3
  642. package/dist/esm/list-6524700c.js +6 -0
  643. package/dist/esm/loader.js +6 -5
  644. package/dist/esm/{md.transition-8dc58b46.js → md.transition-21c93656.js} +7 -7
  645. package/dist/esm/{notch-controller-00d92e89.js → notch-controller-cd983e05.js} +2 -2
  646. package/dist/esm/{overlays-1bc809ec.js → overlays-d60b1d1e.js} +6 -7
  647. package/dist/esm/{status-tap-f6d08e9e.js → status-tap-bf78b74d.js} +6 -5
  648. package/dist/esm/{swipe-back-07df2095.js → swipe-back-fff82194.js} +3 -1
  649. package/dist/esm/x-a64bcd9f.js +6 -0
  650. package/dist/esm-es5/animation-12d440f3.js +4 -0
  651. package/dist/esm-es5/app-globals-2497eeed.js +4 -0
  652. package/dist/esm-es5/{button-active-90f1dbc4.js → button-active-8f33f086.js} +1 -1
  653. package/dist/esm-es5/capacitor-39edcb1f.js +4 -0
  654. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  655. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  656. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  657. package/dist/esm-es5/config-84eb9670.js +4 -0
  658. package/dist/esm-es5/data-591c1b05.js +4 -0
  659. package/dist/esm-es5/focus-visible-6827442c.js +4 -0
  660. package/dist/esm-es5/framework-delegate-9ad3e427.js +4 -0
  661. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-946542b8.js} +1 -1
  662. package/dist/esm-es5/helpers-ea1f7324.js +4 -0
  663. package/dist/esm-es5/index-036caa00.js +4 -0
  664. package/dist/esm-es5/index-0c65e393.js +4 -0
  665. package/dist/esm-es5/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  666. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  667. package/dist/esm-es5/index-eb1203fa.js +4 -0
  668. package/dist/esm-es5/index-f36a3fa4.js +4 -0
  669. package/dist/esm-es5/index.js +1 -1
  670. package/dist/esm-es5/input-shims-96f8d7c2.js +4 -0
  671. package/dist/esm-es5/input.utils-22a20c3a.js +4 -0
  672. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  673. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  674. package/dist/esm-es5/ion-alert.entry.js +1 -1
  675. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  676. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  677. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  678. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  679. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  680. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  681. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  682. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  683. package/dist/esm-es5/ion-chip.entry.js +1 -1
  684. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  685. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  686. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  687. package/dist/esm-es5/ion-divider.entry.js +4 -0
  688. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  689. package/dist/esm-es5/ion-img.entry.js +1 -1
  690. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  691. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  692. package/dist/esm-es5/ion-input.entry.js +1 -1
  693. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  694. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  695. package/dist/esm-es5/ion-loading.entry.js +1 -1
  696. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  697. package/dist/esm-es5/ion-modal.entry.js +1 -1
  698. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  699. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  700. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  701. package/dist/esm-es5/ion-picker.entry.js +1 -1
  702. package/dist/esm-es5/ion-popover.entry.js +1 -1
  703. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  704. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  705. package/dist/esm-es5/ion-range.entry.js +1 -1
  706. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  707. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  708. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  709. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  710. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  711. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  712. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  713. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  714. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  715. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  716. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  717. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  718. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  719. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  720. package/dist/esm-es5/ion-text.entry.js +1 -1
  721. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  722. package/dist/esm-es5/ion-toast.entry.js +1 -1
  723. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  724. package/dist/esm-es5/ionic-global-b30d2cc2.js +4 -0
  725. package/dist/esm-es5/ionic.js +1 -1
  726. package/dist/esm-es5/ios.transition-cbbf0bd1.js +4 -0
  727. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-0af19ead.js} +1 -1
  728. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-ceb6990d.js} +1 -1
  729. package/dist/esm-es5/keyboard-controller-7e2da6b9.js +4 -0
  730. package/dist/esm-es5/list-6524700c.js +4 -0
  731. package/dist/esm-es5/loader.js +1 -1
  732. package/dist/esm-es5/md.transition-21c93656.js +4 -0
  733. package/dist/esm-es5/notch-controller-cd983e05.js +4 -0
  734. package/dist/esm-es5/overlays-d60b1d1e.js +4 -0
  735. package/dist/esm-es5/status-tap-bf78b74d.js +4 -0
  736. package/dist/esm-es5/swipe-back-fff82194.js +4 -0
  737. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  738. package/dist/html.html-data.json +2452 -210
  739. package/dist/ionic/index.esm.js +1 -1
  740. package/dist/ionic/ionic.esm.js +1 -1
  741. package/dist/ionic/ionic.js +1 -1
  742. package/dist/ionic/p-0175d2ed.system.js +4 -0
  743. package/dist/ionic/p-01d80901.system.js +4 -0
  744. package/dist/ionic/p-047943a4.entry.js +4 -0
  745. package/dist/ionic/p-04ca2bc3.system.js +4 -0
  746. package/dist/ionic/p-051208d8.system.js +4 -0
  747. package/dist/ionic/p-0571060e.system.js +4 -0
  748. package/dist/ionic/p-06a7a822.system.entry.js +4 -0
  749. package/dist/ionic/p-06ec4706.js +4 -0
  750. package/dist/ionic/p-0a2ad7af.system.entry.js +4 -0
  751. package/dist/ionic/p-0b07a566.system.entry.js +4 -0
  752. package/dist/ionic/p-0c5e0dc8.system.entry.js +4 -0
  753. package/dist/ionic/p-0c6ba6d6.entry.js +4 -0
  754. package/dist/ionic/p-0e25995f.entry.js +4 -0
  755. package/dist/ionic/p-0eaae446.js +4 -0
  756. package/dist/ionic/p-107ddb23.entry.js +4 -0
  757. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  758. package/dist/ionic/p-11ac6c97.entry.js +4 -0
  759. package/dist/ionic/p-1613cd36.system.entry.js +4 -0
  760. package/dist/ionic/p-17f49808.system.entry.js +4 -0
  761. package/dist/ionic/p-195c7099.system.entry.js +4 -0
  762. package/dist/ionic/p-1a3b4566.system.entry.js +4 -0
  763. package/dist/ionic/p-1bb9592a.entry.js +4 -0
  764. package/dist/ionic/p-1c8f3fef.system.entry.js +4 -0
  765. package/dist/ionic/p-1ee39457.system.entry.js +4 -0
  766. package/dist/ionic/p-1fd5c378.system.js +4 -0
  767. package/dist/ionic/p-20ec20dc.system.js +4 -0
  768. package/dist/ionic/p-243adf8c.js +4 -0
  769. package/dist/ionic/p-266448a7.system.entry.js +4 -0
  770. package/dist/ionic/p-2908a027.entry.js +4 -0
  771. package/dist/ionic/p-29b8f112.js +4 -0
  772. package/dist/ionic/p-2a1b5646.system.js +4 -0
  773. package/dist/ionic/p-2a4ebf7b.entry.js +4 -0
  774. package/dist/ionic/p-2a6e60d2.system.entry.js +4 -0
  775. package/dist/ionic/p-2aca2df7.entry.js +4 -0
  776. package/dist/ionic/{p-a93873de.system.js → p-2b8078c3.system.js} +1 -1
  777. package/dist/ionic/{p-89b61afc.js → p-2c0735b6.js} +1 -1
  778. package/dist/ionic/p-2c4d0578.system.entry.js +4 -0
  779. package/dist/ionic/{p-f7ce606e.js → p-2cbcecdb.js} +1 -1
  780. package/dist/ionic/p-2cede1ff.system.entry.js +4 -0
  781. package/dist/ionic/{p-22bc235f.js → p-2d30c885.js} +1 -1
  782. package/dist/ionic/p-2f14ca13.js +4 -0
  783. package/dist/ionic/p-31956865.system.entry.js +4 -0
  784. package/dist/ionic/{p-f23124c4.system.js → p-34fa2a61.system.js} +2 -2
  785. package/dist/ionic/p-3775da84.system.entry.js +4 -0
  786. package/dist/ionic/p-396bdcf7.js +4 -0
  787. package/dist/ionic/p-3cdea564.system.entry.js +4 -0
  788. package/dist/ionic/p-3dd43dba.system.entry.js +4 -0
  789. package/dist/ionic/p-3e9058ad.js +4 -0
  790. package/dist/ionic/p-40ea7c52.js +4 -0
  791. package/dist/ionic/p-4279f787.entry.js +4 -0
  792. package/dist/ionic/p-429dd2b5.system.js +4 -0
  793. package/dist/ionic/p-42acd60b.system.entry.js +4 -0
  794. package/dist/ionic/{p-a4866e3e.system.js → p-42e12526.system.js} +1 -1
  795. package/dist/ionic/p-43b4ca5b.entry.js +4 -0
  796. package/dist/ionic/p-443152fd.js +4 -0
  797. package/dist/ionic/p-4459a66e.system.js +4 -0
  798. package/dist/ionic/p-458a5952.system.entry.js +4 -0
  799. package/dist/ionic/p-46204887.entry.js +4 -0
  800. package/dist/ionic/p-47fda111.entry.js +4 -0
  801. package/dist/ionic/p-495eb25e.entry.js +4 -0
  802. package/dist/ionic/p-4975df33.system.entry.js +4 -0
  803. package/dist/ionic/p-4a066788.system.entry.js +4 -0
  804. package/dist/ionic/p-4ea97996.entry.js +4 -0
  805. package/dist/ionic/p-50b45518.entry.js +4 -0
  806. package/dist/ionic/p-510ab233.system.entry.js +4 -0
  807. package/dist/ionic/p-534b5031.js +4 -0
  808. package/dist/ionic/{p-66a5d6a8.js → p-578d5013.js} +1 -1
  809. package/dist/ionic/p-579b4a63.entry.js +4 -0
  810. package/dist/ionic/p-583f0c5f.js +4 -0
  811. package/dist/ionic/p-58a30d90.entry.js +4 -0
  812. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  813. package/dist/ionic/p-59920a82.system.entry.js +4 -0
  814. package/dist/ionic/p-5b57d327.system.js +4 -0
  815. package/dist/ionic/p-5c586ac1.entry.js +4 -0
  816. package/dist/ionic/p-5c9aab48.system.entry.js +4 -0
  817. package/dist/ionic/p-5dce701d.js +4 -0
  818. package/dist/ionic/{p-9146695e.system.js → p-5df8d52a.system.js} +1 -1
  819. package/dist/ionic/p-607c9c33.js +4 -0
  820. package/dist/ionic/p-61977a32.entry.js +4 -0
  821. package/dist/ionic/p-64771457.system.entry.js +4 -0
  822. package/dist/ionic/p-64b99a88.entry.js +4 -0
  823. package/dist/ionic/p-653e4810.entry.js +4 -0
  824. package/dist/ionic/p-6620dffa.entry.js +4 -0
  825. package/dist/ionic/p-663ace5f.entry.js +4 -0
  826. package/dist/ionic/p-66a495c4.system.entry.js +4 -0
  827. package/dist/ionic/p-6761a590.js +4 -0
  828. package/dist/ionic/p-689a94b3.system.entry.js +4 -0
  829. package/dist/ionic/p-6a0dd6bc.js +4 -0
  830. package/dist/ionic/p-6bf6e9e8.entry.js +4 -0
  831. package/dist/ionic/p-6ce59667.entry.js +4 -0
  832. package/dist/ionic/{p-b06ac4a5.system.js → p-6eb15fc1.system.js} +1 -1
  833. package/dist/ionic/p-7071d7ca.js +4 -0
  834. package/dist/ionic/p-70d36cb8.system.js +4 -0
  835. package/dist/ionic/p-71d96a02.system.entry.js +4 -0
  836. package/dist/ionic/p-72d019c5.system.entry.js +4 -0
  837. package/dist/ionic/p-730993c9.system.entry.js +4 -0
  838. package/dist/ionic/p-787d9af9.js +4 -0
  839. package/dist/ionic/p-78abe8f7.system.entry.js +4 -0
  840. package/dist/ionic/p-78fbb151.system.js +4 -0
  841. package/dist/ionic/p-7ac37962.entry.js +4 -0
  842. package/dist/ionic/p-7beb0900.system.entry.js +4 -0
  843. package/dist/ionic/p-7d8e1a3d.system.entry.js +4 -0
  844. package/dist/ionic/p-7dbbb35d.entry.js +4 -0
  845. package/dist/ionic/p-80263807.system.js +4 -0
  846. package/dist/ionic/p-85bb90f6.entry.js +4 -0
  847. package/dist/ionic/p-85cee6c9.entry.js +4 -0
  848. package/dist/ionic/p-86a390a7.js +4 -0
  849. package/dist/ionic/p-883ff61d.system.entry.js +4 -0
  850. package/dist/ionic/p-8870fcbd.entry.js +4 -0
  851. package/dist/ionic/p-8cba58fa.system.entry.js +4 -0
  852. package/dist/ionic/p-8cfd2546.entry.js +4 -0
  853. package/dist/ionic/p-8d7684b7.entry.js +4 -0
  854. package/dist/ionic/p-8f3bd9ab.system.js +4 -0
  855. package/dist/ionic/p-90ac5fdf.entry.js +4 -0
  856. package/dist/ionic/p-90ec152d.system.js +4 -0
  857. package/dist/ionic/p-91ce2114.entry.js +4 -0
  858. package/dist/ionic/p-91f7f574.entry.js +4 -0
  859. package/dist/ionic/p-97ce7496.system.entry.js +4 -0
  860. package/dist/ionic/p-981b8086.entry.js +4 -0
  861. package/dist/ionic/p-999a0cef.system.entry.js +4 -0
  862. package/dist/ionic/p-9b177519.js +4 -0
  863. package/dist/ionic/p-9b4b8c80.system.entry.js +4 -0
  864. package/dist/ionic/p-9dab7e7c.js +4 -0
  865. package/dist/ionic/p-9e9999d5.entry.js +4 -0
  866. package/dist/ionic/p-a3144a1e.entry.js +4 -0
  867. package/dist/ionic/p-a3ad8084.system.js +4 -0
  868. package/dist/ionic/p-a4c11918.system.entry.js +4 -0
  869. package/dist/ionic/p-a4c64c42.entry.js +4 -0
  870. package/dist/ionic/p-a8ce5285.system.entry.js +4 -0
  871. package/dist/ionic/{p-c7e16491.js → p-a92ad86c.js} +1 -1
  872. package/dist/ionic/p-a9af4103.js +4 -0
  873. package/dist/ionic/p-b1618321.entry.js +4 -0
  874. package/dist/ionic/{p-9e45532a.system.js → p-b3b40a2f.system.js} +1 -1
  875. package/dist/ionic/p-b6baf215.entry.js +4 -0
  876. package/dist/ionic/p-bd215938.system.entry.js +4 -0
  877. package/dist/ionic/p-be1800d4.js +4 -0
  878. package/dist/ionic/p-befb004d.entry.js +4 -0
  879. package/dist/ionic/p-c043a4c8.entry.js +4 -0
  880. package/dist/ionic/{p-a6625de8.system.js → p-c0abf8f8.system.js} +1 -1
  881. package/dist/ionic/p-c248c88d.system.js +4 -0
  882. package/dist/ionic/p-c27342bf.system.entry.js +4 -0
  883. package/dist/ionic/p-c47cb709.js +4 -0
  884. package/dist/ionic/p-cef4553b.entry.js +4 -0
  885. package/dist/ionic/p-cf17679a.entry.js +4 -0
  886. package/dist/ionic/p-cff47c26.system.entry.js +4 -0
  887. package/dist/ionic/{p-978bdf4c.system.js → p-d197eaeb.system.js} +1 -1
  888. package/dist/ionic/{p-f11a9436.system.js → p-d2536fe8.system.js} +1 -1
  889. package/dist/ionic/p-d2e6afa9.system.js +4 -0
  890. package/dist/ionic/p-d35e20cf.system.entry.js +4 -0
  891. package/dist/ionic/p-d4a21287.js +4 -0
  892. package/dist/ionic/p-d534a6c8.entry.js +4 -0
  893. package/dist/ionic/p-d760d709.entry.js +4 -0
  894. package/dist/ionic/p-da7bd63e.system.entry.js +4 -0
  895. package/dist/ionic/p-de32ae2a.system.entry.js +4 -0
  896. package/dist/ionic/{p-27281edd.js → p-de9f68cb.js} +1 -1
  897. package/dist/ionic/p-deb05ec4.js +4 -0
  898. package/dist/ionic/p-dff0b93b.system.entry.js +4 -0
  899. package/dist/ionic/{p-1bf5ec17.system.js → p-e028d393.system.js} +1 -1
  900. package/dist/ionic/p-e028d3f1.entry.js +4 -0
  901. package/dist/ionic/p-e341e1ec.system.entry.js +4 -0
  902. package/dist/ionic/p-e3b70846.system.js +4 -0
  903. package/dist/ionic/p-e913a8ec.system.entry.js +4 -0
  904. package/dist/ionic/p-eb15cdb8.entry.js +4 -0
  905. package/dist/ionic/p-ef7f7ba9.js +4 -0
  906. package/dist/ionic/p-effec462.system.js +4 -0
  907. package/dist/ionic/{p-8985cdb6.system.js → p-f3fed3f9.system.js} +1 -1
  908. package/dist/ionic/p-f4a27763.entry.js +4 -0
  909. package/dist/ionic/p-fa6f50b3.entry.js +4 -0
  910. package/dist/ionic/p-fb0197d6.system.entry.js +4 -0
  911. package/dist/ionic/p-fcedca77.system.js +4 -0
  912. package/dist/ionic/p-fdcaa201.system.js +4 -0
  913. package/dist/ionic/p-fe00bde2.system.entry.js +4 -0
  914. package/dist/types/components/accordion/accordion.d.ts +5 -3
  915. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  916. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  917. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  918. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  919. package/dist/types/components/alert/alert.d.ts +3 -2
  920. package/dist/types/components/app/app.d.ts +6 -2
  921. package/dist/types/components/avatar/avatar.d.ts +32 -0
  922. package/dist/types/components/back-button/back-button.d.ts +2 -1
  923. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  924. package/dist/types/components/badge/badge.d.ts +29 -1
  925. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  926. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  927. package/dist/types/components/button/button.d.ts +15 -4
  928. package/dist/types/components/buttons/buttons.d.ts +5 -1
  929. package/dist/types/components/card/card.d.ts +8 -1
  930. package/dist/types/components/card-content/card-content.d.ts +2 -1
  931. package/dist/types/components/card-header/card-header.d.ts +3 -2
  932. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  933. package/dist/types/components/card-title/card-title.d.ts +2 -1
  934. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  935. package/dist/types/components/chip/chip.d.ts +19 -1
  936. package/dist/types/components/col/col.d.ts +4 -0
  937. package/dist/types/components/content/content.d.ts +3 -0
  938. package/dist/types/components/datetime/datetime.d.ts +26 -1
  939. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  940. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  941. package/dist/types/components/divider/divider.d.ts +20 -0
  942. package/dist/types/components/fab/fab.d.ts +4 -0
  943. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  944. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  945. package/dist/types/components/footer/footer.d.ts +4 -3
  946. package/dist/types/components/grid/grid.d.ts +4 -0
  947. package/dist/types/components/header/header.d.ts +9 -3
  948. package/dist/types/components/img/img.d.ts +3 -0
  949. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  950. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  951. package/dist/types/components/input/input.d.ts +31 -5
  952. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  953. package/dist/types/components/item/item.d.ts +11 -4
  954. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  955. package/dist/types/components/item-group/item-group.d.ts +4 -0
  956. package/dist/types/components/item-option/item-option.d.ts +11 -1
  957. package/dist/types/components/item-options/item-options.d.ts +4 -0
  958. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  959. package/dist/types/components/label/label.d.ts +2 -1
  960. package/dist/types/components/list/list.d.ts +15 -1
  961. package/dist/types/components/list-header/list-header.d.ts +2 -1
  962. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  963. package/dist/types/components/loading/loading.d.ts +3 -2
  964. package/dist/types/components/menu/menu.d.ts +3 -0
  965. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  966. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  967. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  968. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  969. package/dist/types/components/modal/modal.d.ts +11 -1
  970. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  971. package/dist/types/components/nav/nav.d.ts +5 -1
  972. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  973. package/dist/types/components/note/note.d.ts +2 -1
  974. package/dist/types/components/picker/picker.d.ts +2 -1
  975. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  976. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  977. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  978. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  979. package/dist/types/components/popover/popover.d.ts +6 -5
  980. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  981. package/dist/types/components/radio/radio.d.ts +2 -1
  982. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  983. package/dist/types/components/range/range.d.ts +3 -10
  984. package/dist/types/components/refresher/refresher.d.ts +2 -1
  985. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  986. package/dist/types/components/reorder/reorder.d.ts +9 -0
  987. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  988. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  989. package/dist/types/components/route/route.d.ts +4 -0
  990. package/dist/types/components/router/router.d.ts +4 -0
  991. package/dist/types/components/router-link/router-link.d.ts +4 -0
  992. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  993. package/dist/types/components/row/row.d.ts +4 -0
  994. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  995. package/dist/types/components/segment/segment.d.ts +2 -1
  996. package/dist/types/components/segment-button/segment-button.d.ts +4 -2
  997. package/dist/types/components/select/select.d.ts +41 -13
  998. package/dist/types/components/select-option/select-option.d.ts +4 -0
  999. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  1000. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  1001. package/dist/types/components/spinner/spinner.d.ts +15 -0
  1002. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  1003. package/dist/types/components/tab/tab.d.ts +4 -0
  1004. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  1005. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  1006. package/dist/types/components/tabs/tabs.d.ts +3 -0
  1007. package/dist/types/components/text/text.d.ts +2 -1
  1008. package/dist/types/components/textarea/textarea.d.ts +17 -4
  1009. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  1010. package/dist/types/components/title/title.d.ts +4 -0
  1011. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1012. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1013. package/dist/types/components/toast/toast.d.ts +12 -2
  1014. package/dist/types/components/toggle/toggle.d.ts +15 -1
  1015. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1016. package/dist/types/components.d.ts +1462 -192
  1017. package/dist/types/global/ionic-global.d.ts +27 -2
  1018. package/dist/types/interface.d.ts +3 -0
  1019. package/dist/types/utils/config.d.ts +106 -2
  1020. package/dist/types/utils/focus-visible.d.ts +13 -0
  1021. package/dist/types/utils/helpers.d.ts +12 -0
  1022. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1023. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1024. package/hydrate/index.js +2597 -907
  1025. package/hydrate/index.mjs +2597 -907
  1026. package/package.json +10 -5
  1027. package/components/hardware-back-button.js +0 -115
  1028. package/components/index8.js +0 -128
  1029. package/dist/cjs/hardware-back-button-5a99001f.js +0 -122
  1030. package/dist/cjs/index-48b2a28e.js +0 -46
  1031. package/dist/cjs/index-c8d52405.js +0 -10
  1032. package/dist/cjs/ionic-global-acb665ad.js +0 -227
  1033. package/dist/esm/hardware-back-button-864101a3.js +0 -116
  1034. package/dist/esm/index-40894f4b.js +0 -167
  1035. package/dist/esm/index-738d7504.js +0 -42
  1036. package/dist/esm/index-a5d50daf.js +0 -7
  1037. package/dist/esm/ionic-global-ca86cf32.js +0 -221
  1038. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1039. package/dist/esm-es5/app-globals-7b6cbf1a.js +0 -4
  1040. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1041. package/dist/esm-es5/data-174ad5e0.js +0 -4
  1042. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1043. package/dist/esm-es5/framework-delegate-2eea1763.js +0 -4
  1044. package/dist/esm-es5/hardware-back-button-864101a3.js +0 -4
  1045. package/dist/esm-es5/helpers-78efeec3.js +0 -4
  1046. package/dist/esm-es5/index-40894f4b.js +0 -4
  1047. package/dist/esm-es5/index-738d7504.js +0 -4
  1048. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1049. package/dist/esm-es5/index-e919e353.js +0 -4
  1050. package/dist/esm-es5/index-ecb55b8d.js +0 -4
  1051. package/dist/esm-es5/index-f9f5d018.js +0 -4
  1052. package/dist/esm-es5/input-shims-7dc1f6dc.js +0 -4
  1053. package/dist/esm-es5/input.utils-28bf4ef0.js +0 -4
  1054. package/dist/esm-es5/ionic-global-ca86cf32.js +0 -4
  1055. package/dist/esm-es5/ios.transition-7fe5dbea.js +0 -4
  1056. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1057. package/dist/esm-es5/md.transition-8dc58b46.js +0 -4
  1058. package/dist/esm-es5/notch-controller-00d92e89.js +0 -4
  1059. package/dist/esm-es5/overlays-1bc809ec.js +0 -4
  1060. package/dist/esm-es5/status-tap-f6d08e9e.js +0 -4
  1061. package/dist/esm-es5/swipe-back-07df2095.js +0 -4
  1062. package/dist/ionic/p-027a48f1.entry.js +0 -4
  1063. package/dist/ionic/p-056b4c2a.system.entry.js +0 -4
  1064. package/dist/ionic/p-058b7f35.js +0 -4
  1065. package/dist/ionic/p-05b65d7a.entry.js +0 -4
  1066. package/dist/ionic/p-0904eb08.entry.js +0 -4
  1067. package/dist/ionic/p-0a456b7f.entry.js +0 -4
  1068. package/dist/ionic/p-0adb6909.system.entry.js +0 -4
  1069. package/dist/ionic/p-0bedc891.system.entry.js +0 -4
  1070. package/dist/ionic/p-0d1be7c9.system.entry.js +0 -4
  1071. package/dist/ionic/p-0ec5b7cf.system.js +0 -4
  1072. package/dist/ionic/p-15bb1dde.system.js +0 -4
  1073. package/dist/ionic/p-16130556.entry.js +0 -4
  1074. package/dist/ionic/p-16491015.entry.js +0 -4
  1075. package/dist/ionic/p-180b4f9a.entry.js +0 -4
  1076. package/dist/ionic/p-19c32a76.entry.js +0 -4
  1077. package/dist/ionic/p-1c1d781d.system.entry.js +0 -4
  1078. package/dist/ionic/p-1c8b3ac9.entry.js +0 -4
  1079. package/dist/ionic/p-1de5dfcd.system.entry.js +0 -4
  1080. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1081. package/dist/ionic/p-1e4371bd.js +0 -4
  1082. package/dist/ionic/p-21891ead.js +0 -4
  1083. package/dist/ionic/p-28c81576.entry.js +0 -4
  1084. package/dist/ionic/p-29a5b4e4.entry.js +0 -4
  1085. package/dist/ionic/p-29da3dcd.entry.js +0 -4
  1086. package/dist/ionic/p-2a2c6bf4.system.entry.js +0 -4
  1087. package/dist/ionic/p-2b7827c7.js +0 -4
  1088. package/dist/ionic/p-317c1c08.entry.js +0 -4
  1089. package/dist/ionic/p-33518a04.entry.js +0 -4
  1090. package/dist/ionic/p-35b469f6.system.entry.js +0 -4
  1091. package/dist/ionic/p-35f14792.entry.js +0 -4
  1092. package/dist/ionic/p-383a6058.entry.js +0 -4
  1093. package/dist/ionic/p-3855fef7.system.js +0 -4
  1094. package/dist/ionic/p-38eaf9cf.system.entry.js +0 -4
  1095. package/dist/ionic/p-3dad3534.system.js +0 -4
  1096. package/dist/ionic/p-3f4327f7.js +0 -4
  1097. package/dist/ionic/p-40388335.system.js +0 -4
  1098. package/dist/ionic/p-41e70fa2.entry.js +0 -4
  1099. package/dist/ionic/p-44fde7d5.system.entry.js +0 -4
  1100. package/dist/ionic/p-44ff75ea.js +0 -4
  1101. package/dist/ionic/p-455cd7cc.system.js +0 -4
  1102. package/dist/ionic/p-4630688e.system.entry.js +0 -4
  1103. package/dist/ionic/p-48ded460.entry.js +0 -4
  1104. package/dist/ionic/p-49d53551.system.entry.js +0 -4
  1105. package/dist/ionic/p-4b07c60a.system.js +0 -4
  1106. package/dist/ionic/p-4eeca839.system.entry.js +0 -4
  1107. package/dist/ionic/p-50e0ce13.entry.js +0 -4
  1108. package/dist/ionic/p-5578033e.system.entry.js +0 -4
  1109. package/dist/ionic/p-579c78d2.system.entry.js +0 -4
  1110. package/dist/ionic/p-597ff9af.js +0 -4
  1111. package/dist/ionic/p-5b420123.entry.js +0 -4
  1112. package/dist/ionic/p-5b97abc9.entry.js +0 -4
  1113. package/dist/ionic/p-5fb1321f.entry.js +0 -4
  1114. package/dist/ionic/p-5fe5dc2c.system.entry.js +0 -4
  1115. package/dist/ionic/p-607aa181.entry.js +0 -4
  1116. package/dist/ionic/p-61373098.js +0 -4
  1117. package/dist/ionic/p-6155027f.system.entry.js +0 -4
  1118. package/dist/ionic/p-61e794fb.entry.js +0 -4
  1119. package/dist/ionic/p-624ecf03.js +0 -4
  1120. package/dist/ionic/p-63d1da62.system.entry.js +0 -4
  1121. package/dist/ionic/p-64d8ac48.js +0 -4
  1122. package/dist/ionic/p-657ada6a.entry.js +0 -4
  1123. package/dist/ionic/p-65943bec.system.entry.js +0 -4
  1124. package/dist/ionic/p-65e732b9.entry.js +0 -4
  1125. package/dist/ionic/p-6c044a1d.system.js +0 -4
  1126. package/dist/ionic/p-7058a5e4.system.entry.js +0 -4
  1127. package/dist/ionic/p-705fda69.system.js +0 -4
  1128. package/dist/ionic/p-707408c5.system.entry.js +0 -4
  1129. package/dist/ionic/p-70abb1f2.system.entry.js +0 -4
  1130. package/dist/ionic/p-747f9517.entry.js +0 -4
  1131. package/dist/ionic/p-7514f2f5.entry.js +0 -4
  1132. package/dist/ionic/p-756e4559.js +0 -4
  1133. package/dist/ionic/p-772d1657.system.js +0 -4
  1134. package/dist/ionic/p-77aa5fef.system.entry.js +0 -4
  1135. package/dist/ionic/p-792919fd.system.js +0 -4
  1136. package/dist/ionic/p-7b30edcc.js +0 -4
  1137. package/dist/ionic/p-7b886108.system.entry.js +0 -4
  1138. package/dist/ionic/p-7c9daa6f.entry.js +0 -4
  1139. package/dist/ionic/p-7cc33a9a.system.js +0 -4
  1140. package/dist/ionic/p-7e3b5638.system.entry.js +0 -4
  1141. package/dist/ionic/p-824fe96b.system.entry.js +0 -4
  1142. package/dist/ionic/p-87b0d2c9.entry.js +0 -4
  1143. package/dist/ionic/p-8b1c1fd7.entry.js +0 -4
  1144. package/dist/ionic/p-8b22be32.system.entry.js +0 -4
  1145. package/dist/ionic/p-8d98e2bb.entry.js +0 -4
  1146. package/dist/ionic/p-8f94769b.entry.js +0 -4
  1147. package/dist/ionic/p-912131e9.system.entry.js +0 -4
  1148. package/dist/ionic/p-959cf042.system.entry.js +0 -4
  1149. package/dist/ionic/p-9870728f.js +0 -4
  1150. package/dist/ionic/p-9af7f110.js +0 -4
  1151. package/dist/ionic/p-9b069739.entry.js +0 -4
  1152. package/dist/ionic/p-a26d7667.system.entry.js +0 -4
  1153. package/dist/ionic/p-a3c931ad.system.js +0 -4
  1154. package/dist/ionic/p-a520973b.entry.js +0 -4
  1155. package/dist/ionic/p-a768ae50.entry.js +0 -4
  1156. package/dist/ionic/p-a9198501.system.entry.js +0 -4
  1157. package/dist/ionic/p-ab7337e1.entry.js +0 -4
  1158. package/dist/ionic/p-abe101da.system.js +0 -4
  1159. package/dist/ionic/p-ac09b6e9.system.entry.js +0 -4
  1160. package/dist/ionic/p-ac58d726.system.entry.js +0 -4
  1161. package/dist/ionic/p-b1673667.entry.js +0 -4
  1162. package/dist/ionic/p-b1f9fbe8.system.entry.js +0 -4
  1163. package/dist/ionic/p-b2ee0628.system.entry.js +0 -4
  1164. package/dist/ionic/p-b87a9f1d.entry.js +0 -4
  1165. package/dist/ionic/p-b8a461f5.system.entry.js +0 -4
  1166. package/dist/ionic/p-b9fa7882.js +0 -4
  1167. package/dist/ionic/p-bf64af90.system.js +0 -4
  1168. package/dist/ionic/p-c005cc37.entry.js +0 -4
  1169. package/dist/ionic/p-c27c57ea.system.entry.js +0 -4
  1170. package/dist/ionic/p-c3f9d9fe.js +0 -4
  1171. package/dist/ionic/p-c468af8a.system.js +0 -4
  1172. package/dist/ionic/p-c53c414d.system.entry.js +0 -4
  1173. package/dist/ionic/p-c609b315.system.entry.js +0 -4
  1174. package/dist/ionic/p-c61cc894.js +0 -4
  1175. package/dist/ionic/p-c63d8dc1.js +0 -4
  1176. package/dist/ionic/p-cbebc567.entry.js +0 -4
  1177. package/dist/ionic/p-ccb740ea.entry.js +0 -4
  1178. package/dist/ionic/p-cec54707.system.entry.js +0 -4
  1179. package/dist/ionic/p-d40f2b7a.js +0 -4
  1180. package/dist/ionic/p-d47265c8.js +0 -4
  1181. package/dist/ionic/p-d70a9e6d.system.js +0 -4
  1182. package/dist/ionic/p-d882f1e2.system.entry.js +0 -4
  1183. package/dist/ionic/p-db3b409e.system.entry.js +0 -4
  1184. package/dist/ionic/p-dcfb7283.entry.js +0 -4
  1185. package/dist/ionic/p-df54ab6b.system.entry.js +0 -4
  1186. package/dist/ionic/p-e0d0bc88.system.entry.js +0 -4
  1187. package/dist/ionic/p-e29c5aab.system.entry.js +0 -4
  1188. package/dist/ionic/p-e2ce5f8b.entry.js +0 -4
  1189. package/dist/ionic/p-e3e4eed7.entry.js +0 -4
  1190. package/dist/ionic/p-e4683bfd.system.entry.js +0 -4
  1191. package/dist/ionic/p-e4d2c281.entry.js +0 -4
  1192. package/dist/ionic/p-e6cdfa96.system.entry.js +0 -4
  1193. package/dist/ionic/p-e6e0331b.entry.js +0 -4
  1194. package/dist/ionic/p-e8245753.entry.js +0 -4
  1195. package/dist/ionic/p-e89451e8.system.entry.js +0 -4
  1196. package/dist/ionic/p-e958e381.system.entry.js +0 -4
  1197. package/dist/ionic/p-ece78e7b.js +0 -4
  1198. package/dist/ionic/p-ee86cfff.system.js +0 -4
  1199. package/dist/ionic/p-ef4292b9.js +0 -4
  1200. package/dist/ionic/p-f201b53a.system.js +0 -4
  1201. package/dist/ionic/p-f6bb9be7.system.entry.js +0 -4
  1202. package/dist/ionic/p-f834322a.entry.js +0 -4
  1203. package/dist/ionic/p-f896194a.system.entry.js +0 -4
  1204. package/dist/ionic/p-fa70eaab.entry.js +0 -4
  1205. package/dist/ionic/p-ff6be116.entry.js +0 -4
  1206. package/dist/ionic/p-ffa3ba3c.js +0 -4
  1207. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -86,17 +86,21 @@ export namespace Components {
86
86
  */
87
87
  "disabled": boolean;
88
88
  /**
89
- * The mode determines which platform styles to use.
89
+ * The mode determines the platform behaviors of the component.
90
90
  */
91
91
  "mode"?: "ios" | "md";
92
92
  /**
93
93
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
94
94
  */
95
95
  "readonly": boolean;
96
+ /**
97
+ * The theme determines the visual appearance of the component.
98
+ */
99
+ "theme"?: "ios" | "md" | "ionic";
96
100
  /**
97
101
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
98
102
  */
99
- "toggleIcon": string;
103
+ "toggleIcon"?: string;
100
104
  /**
101
105
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
102
106
  */
@@ -121,7 +125,7 @@ export namespace Components {
121
125
  "expand": 'compact' | 'inset';
122
126
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
123
127
  /**
124
- * The mode determines which platform styles to use.
128
+ * The mode determines the platform behaviors of the component.
125
129
  */
126
130
  "mode"?: "ios" | "md";
127
131
  /**
@@ -136,6 +140,14 @@ export namespace Components {
136
140
  * This method is used to ensure that the value of ion-accordion-group is being set in a valid way. This method should only be called in response to a user generated action.
137
141
  */
138
142
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
143
+ /**
144
+ * Set to `"soft"` for an accordion group with slightly rounded corners, `"round"` for an accordion group with fully rounded corners, or `"rectangular"` for an accordion group without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes. Only applies when `expand` is set to `"inset"`.
145
+ */
146
+ "shape"?: 'soft' | 'round' | 'rectangular';
147
+ /**
148
+ * The theme determines the visual appearance of the component.
149
+ */
150
+ "theme"?: "ios" | "md" | "ionic";
139
151
  /**
140
152
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
141
153
  */
@@ -191,7 +203,7 @@ export namespace Components {
191
203
  */
192
204
  "leaveAnimation"?: AnimationBuilder;
193
205
  /**
194
- * The mode determines which platform styles to use.
206
+ * The mode determines the platform behaviors of the component.
195
207
  */
196
208
  "mode"?: "ios" | "md";
197
209
  /**
@@ -212,7 +224,11 @@ export namespace Components {
212
224
  */
213
225
  "subHeader"?: string;
214
226
  /**
215
- * If `true`, the action sheet will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
227
+ * The theme determines the visual appearance of the component.
228
+ */
229
+ "theme"?: "ios" | "md" | "ionic";
230
+ /**
231
+ * If `true`, the action sheet will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
216
232
  */
217
233
  "translucent": boolean;
218
234
  /**
@@ -278,7 +294,7 @@ export namespace Components {
278
294
  */
279
295
  "message"?: string | IonicSafeString;
280
296
  /**
281
- * The mode determines which platform styles to use.
297
+ * The mode determines the platform behaviors of the component.
282
298
  */
283
299
  "mode"?: "ios" | "md";
284
300
  /**
@@ -299,7 +315,11 @@ export namespace Components {
299
315
  */
300
316
  "subHeader"?: string;
301
317
  /**
302
- * If `true`, the alert will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
318
+ * The theme determines the visual appearance of the component.
319
+ */
320
+ "theme"?: "ios" | "md" | "ionic";
321
+ /**
322
+ * If `true`, the alert will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
303
323
  */
304
324
  "translucent": boolean;
305
325
  /**
@@ -308,12 +328,41 @@ export namespace Components {
308
328
  "trigger": string | undefined;
309
329
  }
310
330
  interface IonApp {
331
+ /**
332
+ * The mode determines the platform behaviors of the component.
333
+ */
334
+ "mode"?: "ios" | "md";
311
335
  /**
312
336
  * Used to set focus on an element that uses `ion-focusable`. Do not use this if focusing the element as a result of a keyboard event as the focus utility should handle this for us. This method should be used when we want to programmatically focus an element as a result of another user action. (Ex: We focus the first element inside of a popover when the user presents it, but the popover is not always presented as a result of keyboard action.)
337
+ * @param elements - The elements to set focus on.
313
338
  */
314
339
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
340
+ /**
341
+ * The theme determines the visual appearance of the component.
342
+ */
343
+ "theme"?: "ios" | "md" | "ionic";
315
344
  }
316
345
  interface IonAvatar {
346
+ /**
347
+ * If `true`, the user cannot interact with the avatar.
348
+ */
349
+ "disabled": boolean;
350
+ /**
351
+ * The mode determines the platform behaviors of the component.
352
+ */
353
+ "mode"?: "ios" | "md";
354
+ /**
355
+ * 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.
356
+ */
357
+ "shape"?: 'soft' | 'round' | 'rectangular';
358
+ /**
359
+ * Set to `"xxsmall"` for the smallest size. Set to `"xsmall"` for a very small size. Set to `"small"` for a compact size. Set to `"medium"` for the default height and width. Set to `"large"` for a larger size. Set to `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
360
+ */
361
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
362
+ /**
363
+ * The theme determines the visual appearance of the component.
364
+ */
365
+ "theme"?: "ios" | "md" | "ionic";
317
366
  }
318
367
  interface IonBackButton {
319
368
  /**
@@ -333,7 +382,7 @@ export namespace Components {
333
382
  */
334
383
  "icon"?: string | null;
335
384
  /**
336
- * The mode determines which platform styles to use.
385
+ * The mode determines the platform behaviors of the component.
337
386
  */
338
387
  "mode"?: "ios" | "md";
339
388
  /**
@@ -344,12 +393,20 @@ export namespace Components {
344
393
  * The text to display in the back button.
345
394
  */
346
395
  "text"?: string | null;
396
+ /**
397
+ * The theme determines the visual appearance of the component.
398
+ */
399
+ "theme"?: "ios" | "md" | "ionic";
347
400
  /**
348
401
  * The type of the button.
349
402
  */
350
403
  "type": 'submit' | 'reset' | 'button';
351
404
  }
352
405
  interface IonBackdrop {
406
+ /**
407
+ * The mode determines the platform behaviors of the component.
408
+ */
409
+ "mode"?: "ios" | "md";
353
410
  /**
354
411
  * If `true`, the backdrop will stop propagation on tap.
355
412
  */
@@ -358,6 +415,10 @@ export namespace Components {
358
415
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
359
416
  */
360
417
  "tappable": boolean;
418
+ /**
419
+ * The theme determines the visual appearance of the component.
420
+ */
421
+ "theme"?: "ios" | "md" | "ionic";
361
422
  /**
362
423
  * If `true`, the backdrop will be visible.
363
424
  */
@@ -369,9 +430,25 @@ export namespace Components {
369
430
  */
370
431
  "color"?: Color;
371
432
  /**
372
- * The mode determines which platform styles to use.
433
+ * The mode determines the platform behaviors of the component.
373
434
  */
374
435
  "mode"?: "ios" | "md";
436
+ /**
437
+ * 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.
438
+ */
439
+ "shape"?: 'soft' | 'round | rectangular';
440
+ /**
441
+ * 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.
442
+ */
443
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
444
+ /**
445
+ * The theme determines the visual appearance of the component.
446
+ */
447
+ "theme"?: "ios" | "md" | "ionic";
448
+ /**
449
+ * Set to `"top"` to position the badge on top right absolute position of the parent element. Set to `"bottom"` to position the badge on bottom right absolute position of the parent element.
450
+ */
451
+ "vertical"?: 'top' | 'bottom';
375
452
  }
376
453
  interface IonBreadcrumb {
377
454
  /**
@@ -397,7 +474,7 @@ export namespace Components {
397
474
  "href": string | undefined;
398
475
  "last": boolean;
399
476
  /**
400
- * The mode determines which platform styles to use.
477
+ * The mode determines the platform behaviors of the component.
401
478
  */
402
479
  "mode"?: "ios" | "md";
403
480
  /**
@@ -421,6 +498,10 @@ export namespace Components {
421
498
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
422
499
  */
423
500
  "target": string | undefined;
501
+ /**
502
+ * The theme determines the visual appearance of the component.
503
+ */
504
+ "theme"?: "ios" | "md" | "ionic";
424
505
  }
425
506
  interface IonBreadcrumbs {
426
507
  /**
@@ -440,9 +521,13 @@ export namespace Components {
440
521
  */
441
522
  "maxItems"?: number;
442
523
  /**
443
- * The mode determines which platform styles to use.
524
+ * The mode determines the platform behaviors of the component.
444
525
  */
445
526
  "mode"?: "ios" | "md";
527
+ /**
528
+ * The theme determines the visual appearance of the component.
529
+ */
530
+ "theme"?: "ios" | "md" | "ionic";
446
531
  }
447
532
  interface IonButton {
448
533
  /**
@@ -478,7 +563,7 @@ export namespace Components {
478
563
  */
479
564
  "href": string | undefined;
480
565
  /**
481
- * The mode determines which platform styles to use.
566
+ * The mode determines the platform behaviors of the component.
482
567
  */
483
568
  "mode"?: "ios" | "md";
484
569
  /**
@@ -494,13 +579,13 @@ export namespace Components {
494
579
  */
495
580
  "routerDirection": RouterDirection;
496
581
  /**
497
- * Set to `"round"` for a button with more rounded corners.
582
+ * Set to `"soft"` for a button with slightly rounded corners, `"round"` for a button with fully rounded corners, or `"rectangular"` for a button without rounded corners. Defaults to `"soft"` for the `"ios"` theme and `"round"` for all other themes.
498
583
  */
499
- "shape"?: 'round';
584
+ "shape"?: 'soft' | 'round' | 'rectangular';
500
585
  /**
501
586
  * Set to `"small"` for a button with less height and padding, to `"default"` for a button with the default height and padding, or to `"large"` for a button with more height and padding. By default the size is unset, unless the button is inside of an item, where the size is `"small"` by default. Set the size to `"default"` inside of an item to make it a standard size button.
502
587
  */
503
- "size"?: 'small' | 'default' | 'large';
588
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
504
589
  /**
505
590
  * If `true`, activates a button with a heavier font weight.
506
591
  */
@@ -509,6 +594,10 @@ export namespace Components {
509
594
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
510
595
  */
511
596
  "target": string | undefined;
597
+ /**
598
+ * The theme determines the visual appearance of the component.
599
+ */
600
+ "theme"?: "ios" | "md" | "ionic";
512
601
  /**
513
602
  * The type of the button.
514
603
  */
@@ -516,9 +605,17 @@ export namespace Components {
516
605
  }
517
606
  interface IonButtons {
518
607
  /**
519
- * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in `ios` mode with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
608
+ * If true, buttons will disappear when its parent toolbar has fully collapsed if the toolbar is not the first toolbar. If the toolbar is the first toolbar, the buttons will be hidden and will only be shown once all toolbars have fully collapsed. Only applies in the `ios` theme with `collapse` set to `true` on `ion-header`. Typically used for [Collapsible Large Titles](https://ionicframework.com/docs/api/title#collapsible-large-titles)
520
609
  */
521
610
  "collapse": boolean;
611
+ /**
612
+ * The mode determines the platform behaviors of the component.
613
+ */
614
+ "mode"?: "ios" | "md";
615
+ /**
616
+ * The theme determines the visual appearance of the component.
617
+ */
618
+ "theme"?: "ios" | "md" | "ionic";
522
619
  }
523
620
  interface IonCard {
524
621
  /**
@@ -542,7 +639,7 @@ export namespace Components {
542
639
  */
543
640
  "href": string | undefined;
544
641
  /**
545
- * The mode determines which platform styles to use.
642
+ * The mode determines the platform behaviors of the component.
546
643
  */
547
644
  "mode"?: "ios" | "md";
548
645
  /**
@@ -557,10 +654,18 @@ export namespace Components {
557
654
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
558
655
  */
559
656
  "routerDirection": RouterDirection;
657
+ /**
658
+ * 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"`.
659
+ */
660
+ "shape"?: 'soft' | 'round' | 'rectangular';
560
661
  /**
561
662
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
562
663
  */
563
664
  "target": string | undefined;
665
+ /**
666
+ * The theme determines the visual appearance of the component.
667
+ */
668
+ "theme"?: "ios" | "md" | "ionic";
564
669
  /**
565
670
  * The type of the button. Only used when an `onclick` or `button` property is present.
566
671
  */
@@ -568,9 +673,13 @@ export namespace Components {
568
673
  }
569
674
  interface IonCardContent {
570
675
  /**
571
- * The mode determines which platform styles to use.
676
+ * The mode determines the platform behaviors of the component.
572
677
  */
573
678
  "mode"?: "ios" | "md";
679
+ /**
680
+ * The theme determines the visual appearance of the component.
681
+ */
682
+ "theme"?: "ios" | "md" | "ionic";
574
683
  }
575
684
  interface IonCardHeader {
576
685
  /**
@@ -578,11 +687,15 @@ export namespace Components {
578
687
  */
579
688
  "color"?: Color;
580
689
  /**
581
- * The mode determines which platform styles to use.
690
+ * The mode determines the platform behaviors of the component.
582
691
  */
583
692
  "mode"?: "ios" | "md";
584
693
  /**
585
- * If `true`, the card header will be translucent. Only applies when the mode is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
694
+ * The theme determines the visual appearance of the component.
695
+ */
696
+ "theme"?: "ios" | "md" | "ionic";
697
+ /**
698
+ * If `true`, the card header will be translucent. Only applies when the theme is `"ios"` and the device supports [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
586
699
  */
587
700
  "translucent": boolean;
588
701
  }
@@ -592,9 +705,13 @@ export namespace Components {
592
705
  */
593
706
  "color"?: Color;
594
707
  /**
595
- * The mode determines which platform styles to use.
708
+ * The mode determines the platform behaviors of the component.
596
709
  */
597
710
  "mode"?: "ios" | "md";
711
+ /**
712
+ * The theme determines the visual appearance of the component.
713
+ */
714
+ "theme"?: "ios" | "md" | "ionic";
598
715
  }
599
716
  interface IonCardTitle {
600
717
  /**
@@ -602,9 +719,13 @@ export namespace Components {
602
719
  */
603
720
  "color"?: Color;
604
721
  /**
605
- * The mode determines which platform styles to use.
722
+ * The mode determines the platform behaviors of the component.
606
723
  */
607
724
  "mode"?: "ios" | "md";
725
+ /**
726
+ * The theme determines the visual appearance of the component.
727
+ */
728
+ "theme"?: "ios" | "md" | "ionic";
608
729
  }
609
730
  interface IonCheckbox {
610
731
  /**
@@ -644,7 +765,7 @@ export namespace Components {
644
765
  */
645
766
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
646
767
  /**
647
- * The mode determines which platform styles to use.
768
+ * The mode determines the platform behaviors of the component.
648
769
  */
649
770
  "mode"?: "ios" | "md";
650
771
  /**
@@ -656,6 +777,18 @@ export namespace Components {
656
777
  */
657
778
  "required": boolean;
658
779
  "setFocus": () => Promise<void>;
780
+ /**
781
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
782
+ */
783
+ "shape"?: 'soft' | 'rectangular';
784
+ /**
785
+ * Set to `"small"` for a checkbox with less height and padding.
786
+ */
787
+ "size"?: 'small';
788
+ /**
789
+ * The theme determines the visual appearance of the component.
790
+ */
791
+ "theme"?: "ios" | "md" | "ionic";
659
792
  /**
660
793
  * 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>`.
661
794
  */
@@ -671,15 +804,31 @@ export namespace Components {
671
804
  */
672
805
  "disabled": boolean;
673
806
  /**
674
- * The mode determines which platform styles to use.
807
+ * The mode determines the platform behaviors of the component.
675
808
  */
676
809
  "mode"?: "ios" | "md";
677
810
  /**
678
811
  * Display an outline style button.
679
812
  */
680
813
  "outline": boolean;
814
+ /**
815
+ * 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.
816
+ */
817
+ "shape"?: 'soft' | 'round' | 'rectangular';
818
+ /**
819
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
820
+ */
821
+ "size"?: 'small' | 'large';
822
+ /**
823
+ * The theme determines the visual appearance of the component.
824
+ */
825
+ "theme"?: "ios" | "md" | "ionic";
681
826
  }
682
827
  interface IonCol {
828
+ /**
829
+ * The mode determines the platform behaviors of the component.
830
+ */
831
+ "mode"?: "ios" | "md";
683
832
  /**
684
833
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
685
834
  */
@@ -776,6 +925,10 @@ export namespace Components {
776
925
  * 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.
777
926
  */
778
927
  "sizeXs"?: string;
928
+ /**
929
+ * The theme determines the visual appearance of the component.
930
+ */
931
+ "theme"?: "ios" | "md" | "ionic";
779
932
  }
780
933
  interface IonContent {
781
934
  /**
@@ -802,6 +955,10 @@ export namespace Components {
802
955
  * 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.
803
956
  */
804
957
  "getScrollElement": () => Promise<HTMLElement>;
958
+ /**
959
+ * The mode determines the platform behaviors of the component.
960
+ */
961
+ "mode"?: "ios" | "md";
805
962
  /**
806
963
  * Scroll by a specified X/Y distance in the component.
807
964
  * @param x The amount to scroll by on the horizontal axis.
@@ -838,6 +995,10 @@ export namespace Components {
838
995
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
839
996
  */
840
997
  "scrollY": boolean;
998
+ /**
999
+ * The theme determines the visual appearance of the component.
1000
+ */
1001
+ "theme"?: "ios" | "md" | "ionic";
841
1002
  }
842
1003
  interface IonDatetime {
843
1004
  /**
@@ -913,7 +1074,7 @@ export namespace Components {
913
1074
  */
914
1075
  "minuteValues"?: number[] | number | string;
915
1076
  /**
916
- * The mode determines which platform styles to use.
1077
+ * The mode determines the platform behaviors of the component.
917
1078
  */
918
1079
  "mode"?: "ios" | "md";
919
1080
  /**
@@ -964,6 +1125,10 @@ export namespace Components {
964
1125
  * 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.
965
1126
  */
966
1127
  "size": 'cover' | 'fixed';
1128
+ /**
1129
+ * The theme determines the visual appearance of the component.
1130
+ */
1131
+ "theme"?: "ios" | "md" | "ionic";
967
1132
  /**
968
1133
  * 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.
969
1134
  */
@@ -991,9 +1156,23 @@ export namespace Components {
991
1156
  */
992
1157
  "disabled": boolean;
993
1158
  /**
994
- * The mode determines which platform styles to use.
1159
+ * The mode determines the platform behaviors of the component.
995
1160
  */
996
1161
  "mode"?: "ios" | "md";
1162
+ /**
1163
+ * The theme determines the visual appearance of the component.
1164
+ */
1165
+ "theme"?: "ios" | "md" | "ionic";
1166
+ }
1167
+ interface IonDivider {
1168
+ /**
1169
+ * If `true`, the divider will have horizontal margins By default, it's `false`
1170
+ */
1171
+ "inset": boolean;
1172
+ /**
1173
+ * Set to `"xxsmall"` for the smallest spacing. Set to "xsmall" for very small spacing. Set to `"small"` for small spacing. Set to "medium" for medium spacing. Set to "large" for large spacing. Set to `"xlarge"` for the largest spacing. Defaults to `"medium"`.
1174
+ */
1175
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
997
1176
  }
998
1177
  interface IonFab {
999
1178
  /**
@@ -1012,6 +1191,14 @@ export namespace Components {
1012
1191
  * Where to align the fab horizontally in the viewport.
1013
1192
  */
1014
1193
  "horizontal"?: 'start' | 'end' | 'center';
1194
+ /**
1195
+ * The mode determines the platform behaviors of the component.
1196
+ */
1197
+ "mode"?: "ios" | "md";
1198
+ /**
1199
+ * The theme determines the visual appearance of the component.
1200
+ */
1201
+ "theme"?: "ios" | "md" | "ionic";
1015
1202
  /**
1016
1203
  * Opens/Closes the FAB list container.
1017
1204
  */
@@ -1029,7 +1216,7 @@ export namespace Components {
1029
1216
  /**
1030
1217
  * 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.
1031
1218
  */
1032
- "closeIcon": string;
1219
+ "closeIcon"?: string;
1033
1220
  /**
1034
1221
  * 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).
1035
1222
  */
@@ -1047,7 +1234,7 @@ export namespace Components {
1047
1234
  */
1048
1235
  "href": string | undefined;
1049
1236
  /**
1050
- * The mode determines which platform styles to use.
1237
+ * The mode determines the platform behaviors of the component.
1051
1238
  */
1052
1239
  "mode"?: "ios" | "md";
1053
1240
  /**
@@ -1075,7 +1262,11 @@ export namespace Components {
1075
1262
  */
1076
1263
  "target": string | undefined;
1077
1264
  /**
1078
- * 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).
1265
+ * The theme determines the visual appearance of the component.
1266
+ */
1267
+ "theme"?: "ios" | "md" | "ionic";
1268
+ /**
1269
+ * 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).
1079
1270
  */
1080
1271
  "translucent": boolean;
1081
1272
  /**
@@ -1088,22 +1279,34 @@ export namespace Components {
1088
1279
  * If `true`, the fab list will show all fab buttons in the list.
1089
1280
  */
1090
1281
  "activated": boolean;
1282
+ /**
1283
+ * The mode determines the platform behaviors of the component.
1284
+ */
1285
+ "mode"?: "ios" | "md";
1091
1286
  /**
1092
1287
  * The side the fab list will show on relative to the main fab button.
1093
1288
  */
1094
1289
  "side": 'start' | 'end' | 'top' | 'bottom';
1290
+ /**
1291
+ * The theme determines the visual appearance of the component.
1292
+ */
1293
+ "theme"?: "ios" | "md" | "ionic";
1095
1294
  }
1096
1295
  interface IonFooter {
1097
1296
  /**
1098
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1297
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1099
1298
  */
1100
1299
  "collapse"?: 'fade';
1101
1300
  /**
1102
- * The mode determines which platform styles to use.
1301
+ * The mode determines the platform behaviors of the component.
1103
1302
  */
1104
1303
  "mode"?: "ios" | "md";
1105
1304
  /**
1106
- * 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.
1305
+ * The theme determines the visual appearance of the component.
1306
+ */
1307
+ "theme"?: "ios" | "md" | "ionic";
1308
+ /**
1309
+ * 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.
1107
1310
  */
1108
1311
  "translucent": boolean;
1109
1312
  }
@@ -1112,18 +1315,34 @@ export namespace Components {
1112
1315
  * If `true`, the grid will have a fixed width based on the screen size.
1113
1316
  */
1114
1317
  "fixed": boolean;
1318
+ /**
1319
+ * The mode determines the platform behaviors of the component.
1320
+ */
1321
+ "mode"?: "ios" | "md";
1322
+ /**
1323
+ * The theme determines the visual appearance of the component.
1324
+ */
1325
+ "theme"?: "ios" | "md" | "ionic";
1115
1326
  }
1116
1327
  interface IonHeader {
1117
1328
  /**
1118
- * 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)
1329
+ * 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)
1119
1330
  */
1120
1331
  "collapse"?: 'condense' | 'fade';
1121
1332
  /**
1122
- * The mode determines which platform styles to use.
1333
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1334
+ */
1335
+ "divider": boolean;
1336
+ /**
1337
+ * The mode determines the platform behaviors of the component.
1123
1338
  */
1124
1339
  "mode"?: "ios" | "md";
1125
1340
  /**
1126
- * 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.
1341
+ * The theme determines the visual appearance of the component.
1342
+ */
1343
+ "theme"?: "ios" | "md" | "ionic";
1344
+ /**
1345
+ * 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.
1127
1346
  */
1128
1347
  "translucent": boolean;
1129
1348
  }
@@ -1132,10 +1351,18 @@ export namespace Components {
1132
1351
  * 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.
1133
1352
  */
1134
1353
  "alt"?: string;
1354
+ /**
1355
+ * The mode determines the platform behaviors of the component.
1356
+ */
1357
+ "mode"?: "ios" | "md";
1135
1358
  /**
1136
1359
  * The image URL. This attribute is mandatory for the `<img>` element.
1137
1360
  */
1138
1361
  "src"?: string;
1362
+ /**
1363
+ * The theme determines the visual appearance of the component.
1364
+ */
1365
+ "theme"?: "ios" | "md" | "ionic";
1139
1366
  }
1140
1367
  interface IonInfiniteScroll {
1141
1368
  /**
@@ -1146,10 +1373,18 @@ export namespace Components {
1146
1373
  * 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.
1147
1374
  */
1148
1375
  "disabled": boolean;
1376
+ /**
1377
+ * The mode determines the platform behaviors of the component.
1378
+ */
1379
+ "mode"?: "ios" | "md";
1149
1380
  /**
1150
1381
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1151
1382
  */
1152
1383
  "position": 'top' | 'bottom';
1384
+ /**
1385
+ * The theme determines the visual appearance of the component.
1386
+ */
1387
+ "theme"?: "ios" | "md" | "ionic";
1153
1388
  /**
1154
1389
  * 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.
1155
1390
  */
@@ -1164,6 +1399,14 @@ export namespace Components {
1164
1399
  * 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.
1165
1400
  */
1166
1401
  "loadingText"?: string | IonicSafeString;
1402
+ /**
1403
+ * The mode determines the platform behaviors of the component.
1404
+ */
1405
+ "mode"?: "ios" | "md";
1406
+ /**
1407
+ * The theme determines the visual appearance of the component.
1408
+ */
1409
+ "theme"?: "ios" | "md" | "ionic";
1167
1410
  }
1168
1411
  interface IonInput {
1169
1412
  /**
@@ -1223,7 +1466,7 @@ export namespace Components {
1223
1466
  */
1224
1467
  "errorText"?: string;
1225
1468
  /**
1226
- * 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.
1469
+ * 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"`.
1227
1470
  */
1228
1471
  "fill"?: 'outline' | 'solid';
1229
1472
  /**
@@ -1243,9 +1486,9 @@ export namespace Components {
1243
1486
  */
1244
1487
  "label"?: string;
1245
1488
  /**
1246
- * 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 ("...").
1489
+ * 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.
1247
1490
  */
1248
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1491
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1249
1492
  /**
1250
1493
  * The maximum value, which must not be less than its minimum (min attribute) value.
1251
1494
  */
@@ -1263,7 +1506,7 @@ export namespace Components {
1263
1506
  */
1264
1507
  "minlength"?: number;
1265
1508
  /**
1266
- * The mode determines which platform styles to use.
1509
+ * The mode determines the platform behaviors of the component.
1267
1510
  */
1268
1511
  "mode"?: "ios" | "md";
1269
1512
  /**
@@ -1295,9 +1538,13 @@ export namespace Components {
1295
1538
  */
1296
1539
  "setFocus": () => Promise<void>;
1297
1540
  /**
1298
- * The shape of the input. If "round" it will have an increased border radius.
1541
+ * 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"`.
1542
+ */
1543
+ "shape"?: 'soft' | 'round' | 'rectangular';
1544
+ /**
1545
+ * 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.
1299
1546
  */
1300
- "shape"?: 'round';
1547
+ "size"?: 'medium' | 'large' | 'xlarge';
1301
1548
  /**
1302
1549
  * If `true`, the element will have its spelling and grammar checked.
1303
1550
  */
@@ -1306,6 +1553,10 @@ export namespace Components {
1306
1553
  * 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.
1307
1554
  */
1308
1555
  "step"?: string;
1556
+ /**
1557
+ * The theme determines the visual appearance of the component.
1558
+ */
1559
+ "theme"?: "ios" | "md" | "ionic";
1309
1560
  /**
1310
1561
  * The type of control to display. The default type is text.
1311
1562
  */
@@ -1344,13 +1595,13 @@ export namespace Components {
1344
1595
  */
1345
1596
  "color"?: Color;
1346
1597
  /**
1347
- * 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.
1598
+ * 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.
1348
1599
  */
1349
1600
  "detail"?: boolean;
1350
1601
  /**
1351
1602
  * The icon to use when `detail` is set to `true`.
1352
1603
  */
1353
- "detailIcon": string;
1604
+ "detailIcon"?: string;
1354
1605
  /**
1355
1606
  * If `true`, the user cannot interact with the item.
1356
1607
  */
@@ -1368,7 +1619,7 @@ export namespace Components {
1368
1619
  */
1369
1620
  "lines"?: 'full' | 'inset' | 'none';
1370
1621
  /**
1371
- * The mode determines which platform styles to use.
1622
+ * The mode determines the platform behaviors of the component.
1372
1623
  */
1373
1624
  "mode"?: "ios" | "md";
1374
1625
  /**
@@ -1387,6 +1638,10 @@ export namespace Components {
1387
1638
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1388
1639
  */
1389
1640
  "target": string | undefined;
1641
+ /**
1642
+ * The theme determines the visual appearance of the component.
1643
+ */
1644
+ "theme"?: "ios" | "md" | "ionic";
1390
1645
  /**
1391
1646
  * The type of the button. Only used when an `onclick` or `button` property is present.
1392
1647
  */
@@ -1398,15 +1653,27 @@ export namespace Components {
1398
1653
  */
1399
1654
  "color"?: Color;
1400
1655
  /**
1401
- * The mode determines which platform styles to use.
1656
+ * The mode determines the platform behaviors of the component.
1402
1657
  */
1403
1658
  "mode"?: "ios" | "md";
1404
1659
  /**
1405
1660
  * 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
1406
1661
  */
1407
1662
  "sticky": boolean;
1663
+ /**
1664
+ * The theme determines the visual appearance of the component.
1665
+ */
1666
+ "theme"?: "ios" | "md" | "ionic";
1408
1667
  }
1409
1668
  interface IonItemGroup {
1669
+ /**
1670
+ * The mode determines the platform behaviors of the component.
1671
+ */
1672
+ "mode"?: "ios" | "md";
1673
+ /**
1674
+ * The theme determines the visual appearance of the component.
1675
+ */
1676
+ "theme"?: "ios" | "md" | "ionic";
1410
1677
  }
1411
1678
  interface IonItemOption {
1412
1679
  /**
@@ -1430,17 +1697,25 @@ export namespace Components {
1430
1697
  */
1431
1698
  "href": string | undefined;
1432
1699
  /**
1433
- * The mode determines which platform styles to use.
1700
+ * The mode determines the platform behaviors of the component.
1434
1701
  */
1435
1702
  "mode"?: "ios" | "md";
1436
1703
  /**
1437
1704
  * 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).
1438
1705
  */
1439
1706
  "rel": string | undefined;
1707
+ /**
1708
+ * 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.
1709
+ */
1710
+ "shape"?: 'soft' | 'round' | 'rectangular';
1440
1711
  /**
1441
1712
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1442
1713
  */
1443
1714
  "target": string | undefined;
1715
+ /**
1716
+ * The theme determines the visual appearance of the component.
1717
+ */
1718
+ "theme"?: "ios" | "md" | "ionic";
1444
1719
  /**
1445
1720
  * The type of the button.
1446
1721
  */
@@ -1448,10 +1723,18 @@ export namespace Components {
1448
1723
  }
1449
1724
  interface IonItemOptions {
1450
1725
  "fireSwipeEvent": () => Promise<void>;
1726
+ /**
1727
+ * The mode determines the platform behaviors of the component.
1728
+ */
1729
+ "mode"?: "ios" | "md";
1451
1730
  /**
1452
1731
  * 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.
1453
1732
  */
1454
1733
  "side": Side;
1734
+ /**
1735
+ * The theme determines the visual appearance of the component.
1736
+ */
1737
+ "theme"?: "ios" | "md" | "ionic";
1455
1738
  }
1456
1739
  interface IonItemSliding {
1457
1740
  /**
@@ -1474,11 +1757,19 @@ export namespace Components {
1474
1757
  * 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.
1475
1758
  */
1476
1759
  "getSlidingRatio": () => Promise<number>;
1760
+ /**
1761
+ * The mode determines the platform behaviors of the component.
1762
+ */
1763
+ "mode"?: "ios" | "md";
1477
1764
  /**
1478
1765
  * Open the sliding item.
1479
1766
  * @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.
1480
1767
  */
1481
1768
  "open": (side: Side | undefined) => Promise<void>;
1769
+ /**
1770
+ * The theme determines the visual appearance of the component.
1771
+ */
1772
+ "theme"?: "ios" | "md" | "ionic";
1482
1773
  }
1483
1774
  interface IonLabel {
1484
1775
  /**
@@ -1486,13 +1777,17 @@ export namespace Components {
1486
1777
  */
1487
1778
  "color"?: Color;
1488
1779
  /**
1489
- * The mode determines which platform styles to use.
1780
+ * The mode determines the platform behaviors of the component.
1490
1781
  */
1491
1782
  "mode"?: "ios" | "md";
1492
1783
  /**
1493
1784
  * The position determines where and how the label behaves inside an item.
1494
1785
  */
1495
1786
  "position"?: 'fixed' | 'stacked' | 'floating';
1787
+ /**
1788
+ * The theme determines the visual appearance of the component.
1789
+ */
1790
+ "theme"?: "ios" | "md" | "ionic";
1496
1791
  }
1497
1792
  interface IonList {
1498
1793
  /**
@@ -1508,9 +1803,17 @@ export namespace Components {
1508
1803
  */
1509
1804
  "lines"?: 'full' | 'inset' | 'none';
1510
1805
  /**
1511
- * The mode determines which platform styles to use.
1806
+ * The mode determines the platform behaviors of the component.
1512
1807
  */
1513
1808
  "mode"?: "ios" | "md";
1809
+ /**
1810
+ * 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.
1811
+ */
1812
+ "shape"?: 'soft' | 'round' | 'rectangular';
1813
+ /**
1814
+ * The theme determines the visual appearance of the component.
1815
+ */
1816
+ "theme"?: "ios" | "md" | "ionic";
1514
1817
  }
1515
1818
  interface IonListHeader {
1516
1819
  /**
@@ -1522,9 +1825,13 @@ export namespace Components {
1522
1825
  */
1523
1826
  "lines"?: 'full' | 'inset' | 'none';
1524
1827
  /**
1525
- * The mode determines which platform styles to use.
1828
+ * The mode determines the platform behaviors of the component.
1526
1829
  */
1527
1830
  "mode"?: "ios" | "md";
1831
+ /**
1832
+ * The theme determines the visual appearance of the component.
1833
+ */
1834
+ "theme"?: "ios" | "md" | "ionic";
1528
1835
  }
1529
1836
  interface IonLoading {
1530
1837
  /**
@@ -1576,7 +1883,7 @@ export namespace Components {
1576
1883
  */
1577
1884
  "message"?: string | IonicSafeString;
1578
1885
  /**
1579
- * The mode determines which platform styles to use.
1886
+ * The mode determines the platform behaviors of the component.
1580
1887
  */
1581
1888
  "mode"?: "ios" | "md";
1582
1889
  /**
@@ -1601,7 +1908,11 @@ export namespace Components {
1601
1908
  */
1602
1909
  "spinner"?: SpinnerTypes | null;
1603
1910
  /**
1604
- * 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).
1911
+ * The theme determines the visual appearance of the component.
1912
+ */
1913
+ "theme"?: "ios" | "md" | "ionic";
1914
+ /**
1915
+ * 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).
1605
1916
  */
1606
1917
  "translucent": boolean;
1607
1918
  /**
@@ -1638,6 +1949,10 @@ export namespace Components {
1638
1949
  * An id for the menu.
1639
1950
  */
1640
1951
  "menuId"?: string;
1952
+ /**
1953
+ * The mode determines the platform behaviors of the component.
1954
+ */
1955
+ "mode"?: "ios" | "md";
1641
1956
  /**
1642
1957
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1643
1958
  */
@@ -1654,6 +1969,10 @@ export namespace Components {
1654
1969
  * If `true`, swiping the menu is enabled.
1655
1970
  */
1656
1971
  "swipeGesture": boolean;
1972
+ /**
1973
+ * The theme determines the visual appearance of the component.
1974
+ */
1975
+ "theme"?: "ios" | "md" | "ionic";
1657
1976
  /**
1658
1977
  * 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`.
1659
1978
  */
@@ -1681,9 +2000,13 @@ export namespace Components {
1681
2000
  */
1682
2001
  "menu"?: string;
1683
2002
  /**
1684
- * The mode determines which platform styles to use.
2003
+ * The mode determines the platform behaviors of the component.
1685
2004
  */
1686
2005
  "mode"?: "ios" | "md";
2006
+ /**
2007
+ * The theme determines the visual appearance of the component.
2008
+ */
2009
+ "theme"?: "ios" | "md" | "ionic";
1687
2010
  /**
1688
2011
  * The type of the button.
1689
2012
  */
@@ -1698,6 +2021,14 @@ export namespace Components {
1698
2021
  * 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.
1699
2022
  */
1700
2023
  "menu"?: string;
2024
+ /**
2025
+ * The mode determines the platform behaviors of the component.
2026
+ */
2027
+ "mode"?: "ios" | "md";
2028
+ /**
2029
+ * The theme determines the visual appearance of the component.
2030
+ */
2031
+ "theme"?: "ios" | "md" | "ionic";
1701
2032
  }
1702
2033
  interface IonModal {
1703
2034
  /**
@@ -1789,7 +2120,7 @@ export namespace Components {
1789
2120
  */
1790
2121
  "leaveAnimation"?: AnimationBuilder;
1791
2122
  /**
1792
- * The mode determines which platform styles to use.
2123
+ * The mode determines the platform behaviors of the component.
1793
2124
  */
1794
2125
  "mode"?: "ios" | "md";
1795
2126
  /**
@@ -1813,10 +2144,18 @@ export namespace Components {
1813
2144
  * Move a sheet style modal to a specific breakpoint. The breakpoint value must be a value defined in your `breakpoints` array.
1814
2145
  */
1815
2146
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2147
+ /**
2148
+ * Set to `"soft"` for a modal with slightly rounded corners, `"round"` for a modal with fully rounded corners, or `"rectangular"` for a modal without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
2149
+ */
2150
+ "shape"?: 'soft' | 'round' | 'rectangular';
1816
2151
  /**
1817
2152
  * 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.
1818
2153
  */
1819
2154
  "showBackdrop": boolean;
2155
+ /**
2156
+ * The theme determines the visual appearance of the component.
2157
+ */
2158
+ "theme"?: "ios" | "md" | "ionic";
1820
2159
  /**
1821
2160
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
1822
2161
  */
@@ -1828,7 +2167,7 @@ export namespace Components {
1828
2167
  */
1829
2168
  "animated": boolean;
1830
2169
  /**
1831
- * 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.
2170
+ * 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.
1832
2171
  */
1833
2172
  "animation"?: AnimationBuilder;
1834
2173
  /**
@@ -1876,6 +2215,10 @@ export namespace Components {
1876
2215
  * @param done The transition complete function.
1877
2216
  */
1878
2217
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2218
+ /**
2219
+ * The mode determines the platform behaviors of the component.
2220
+ */
2221
+ "mode"?: "ios" | "md";
1879
2222
  /**
1880
2223
  * Pop a component off of the navigation stack. Navigates back from the current component.
1881
2224
  * @param opts The navigation options.
@@ -1947,6 +2290,10 @@ export namespace Components {
1947
2290
  * If the nav component should allow for swipe-to-go-back.
1948
2291
  */
1949
2292
  "swipeGesture"?: boolean;
2293
+ /**
2294
+ * The theme determines the visual appearance of the component.
2295
+ */
2296
+ "theme"?: "ios" | "md" | "ionic";
1950
2297
  }
1951
2298
  interface IonNavLink {
1952
2299
  /**
@@ -1957,6 +2304,10 @@ export namespace Components {
1957
2304
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
1958
2305
  */
1959
2306
  "componentProps"?: ComponentProps;
2307
+ /**
2308
+ * The mode determines the platform behaviors of the component.
2309
+ */
2310
+ "mode"?: "ios" | "md";
1960
2311
  /**
1961
2312
  * The transition animation when navigating to another page.
1962
2313
  */
@@ -1965,6 +2316,10 @@ export namespace Components {
1965
2316
  * The transition direction when navigating to another page.
1966
2317
  */
1967
2318
  "routerDirection": RouterDirection;
2319
+ /**
2320
+ * The theme determines the visual appearance of the component.
2321
+ */
2322
+ "theme"?: "ios" | "md" | "ionic";
1968
2323
  }
1969
2324
  interface IonNote {
1970
2325
  /**
@@ -1972,16 +2327,24 @@ export namespace Components {
1972
2327
  */
1973
2328
  "color"?: Color;
1974
2329
  /**
1975
- * The mode determines which platform styles to use.
2330
+ * The mode determines the platform behaviors of the component.
1976
2331
  */
1977
2332
  "mode"?: "ios" | "md";
2333
+ /**
2334
+ * The theme determines the visual appearance of the component.
2335
+ */
2336
+ "theme"?: "ios" | "md" | "ionic";
1978
2337
  }
1979
2338
  interface IonPicker {
1980
2339
  "exitInputMode": () => Promise<void>;
1981
2340
  /**
1982
- * The mode determines which platform styles to use.
2341
+ * The mode determines the platform behaviors of the component.
1983
2342
  */
1984
2343
  "mode"?: "ios" | "md";
2344
+ /**
2345
+ * The theme determines the visual appearance of the component.
2346
+ */
2347
+ "theme"?: "ios" | "md" | "ionic";
1985
2348
  }
1986
2349
  interface IonPickerColumn {
1987
2350
  /**
@@ -1993,7 +2356,7 @@ export namespace Components {
1993
2356
  */
1994
2357
  "disabled": boolean;
1995
2358
  /**
1996
- * The mode determines which platform styles to use.
2359
+ * The mode determines the platform behaviors of the component.
1997
2360
  */
1998
2361
  "mode"?: "ios" | "md";
1999
2362
  /**
@@ -2009,6 +2372,10 @@ export namespace Components {
2009
2372
  * 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.
2010
2373
  */
2011
2374
  "setValue": (value: PickerColumnValue) => Promise<void>;
2375
+ /**
2376
+ * The theme determines the visual appearance of the component.
2377
+ */
2378
+ "theme"?: "ios" | "md" | "ionic";
2012
2379
  /**
2013
2380
  * The selected option in the picker.
2014
2381
  */
@@ -2023,6 +2390,14 @@ export namespace Components {
2023
2390
  * If `true`, the user cannot interact with the picker column option.
2024
2391
  */
2025
2392
  "disabled": boolean;
2393
+ /**
2394
+ * The mode determines the platform behaviors of the component.
2395
+ */
2396
+ "mode"?: "ios" | "md";
2397
+ /**
2398
+ * The theme determines the visual appearance of the component.
2399
+ */
2400
+ "theme"?: "ios" | "md" | "ionic";
2026
2401
  /**
2027
2402
  * The text value of the option.
2028
2403
  */
@@ -2087,7 +2462,7 @@ export namespace Components {
2087
2462
  */
2088
2463
  "leaveAnimation"?: AnimationBuilder;
2089
2464
  /**
2090
- * The mode determines which platform styles to use.
2465
+ * The mode determines the platform behaviors of the component.
2091
2466
  */
2092
2467
  "mode"?: "ios" | "md";
2093
2468
  /**
@@ -2107,6 +2482,10 @@ export namespace Components {
2107
2482
  * If `true`, a backdrop will be displayed behind the picker.
2108
2483
  */
2109
2484
  "showBackdrop": boolean;
2485
+ /**
2486
+ * The theme determines the visual appearance of the component.
2487
+ */
2488
+ "theme"?: "ios" | "md" | "ionic";
2110
2489
  /**
2111
2490
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2112
2491
  */
@@ -2120,7 +2499,7 @@ export namespace Components {
2120
2499
  }
2121
2500
  interface IonPopover {
2122
2501
  /**
2123
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2502
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2124
2503
  */
2125
2504
  "alignment"?: PositionAlign;
2126
2505
  /**
@@ -2128,7 +2507,7 @@ export namespace Components {
2128
2507
  */
2129
2508
  "animated": boolean;
2130
2509
  /**
2131
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2510
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2132
2511
  */
2133
2512
  "arrow": boolean;
2134
2513
  /**
@@ -2195,7 +2574,7 @@ export namespace Components {
2195
2574
  */
2196
2575
  "leaveAnimation"?: AnimationBuilder;
2197
2576
  /**
2198
- * The mode determines which platform styles to use.
2577
+ * The mode determines the platform behaviors of the component.
2199
2578
  */
2200
2579
  "mode"?: "ios" | "md";
2201
2580
  /**
@@ -2232,7 +2611,11 @@ export namespace Components {
2232
2611
  */
2233
2612
  "size": PopoverSize;
2234
2613
  /**
2235
- * 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).
2614
+ * The theme determines the visual appearance of the component.
2615
+ */
2616
+ "theme"?: "ios" | "md" | "ionic";
2617
+ /**
2618
+ * 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).
2236
2619
  */
2237
2620
  "translucent": boolean;
2238
2621
  /**
@@ -2254,13 +2637,21 @@ export namespace Components {
2254
2637
  */
2255
2638
  "color"?: Color;
2256
2639
  /**
2257
- * The mode determines which platform styles to use.
2640
+ * The mode determines the platform behaviors of the component.
2258
2641
  */
2259
2642
  "mode"?: "ios" | "md";
2260
2643
  /**
2261
2644
  * If true, reverse the progress bar direction.
2262
2645
  */
2263
2646
  "reversed": boolean;
2647
+ /**
2648
+ * Set to `"round"` for a progress bar with rounded corners, or `"rectangular"` for a progress bar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
2649
+ */
2650
+ "shape"?: 'round' | 'rectangular';
2651
+ /**
2652
+ * The theme determines the visual appearance of the component.
2653
+ */
2654
+ "theme"?: "ios" | "md" | "ionic";
2264
2655
  /**
2265
2656
  * 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).
2266
2657
  */
@@ -2292,7 +2683,7 @@ export namespace Components {
2292
2683
  */
2293
2684
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2294
2685
  /**
2295
- * The mode determines which platform styles to use.
2686
+ * The mode determines the platform behaviors of the component.
2296
2687
  */
2297
2688
  "mode"?: "ios" | "md";
2298
2689
  /**
@@ -2301,6 +2692,10 @@ export namespace Components {
2301
2692
  "name": string;
2302
2693
  "setButtonTabindex": (value: number) => Promise<void>;
2303
2694
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
2695
+ /**
2696
+ * The theme determines the visual appearance of the component.
2697
+ */
2698
+ "theme"?: "ios" | "md" | "ionic";
2304
2699
  /**
2305
2700
  * the value of the radio.
2306
2701
  */
@@ -2323,11 +2718,19 @@ export namespace Components {
2323
2718
  * The helper text to display at the top of the radio group.
2324
2719
  */
2325
2720
  "helperText"?: string;
2721
+ /**
2722
+ * The mode determines the platform behaviors of the component.
2723
+ */
2724
+ "mode"?: "ios" | "md";
2326
2725
  /**
2327
2726
  * The name of the control, which is submitted with the form data.
2328
2727
  */
2329
2728
  "name": string;
2330
2729
  "setFocus": () => Promise<void>;
2730
+ /**
2731
+ * The theme determines the visual appearance of the component.
2732
+ */
2733
+ "theme"?: "ios" | "md" | "ionic";
2331
2734
  /**
2332
2735
  * the value of the radio group.
2333
2736
  */
@@ -2371,7 +2774,7 @@ export namespace Components {
2371
2774
  */
2372
2775
  "min": number;
2373
2776
  /**
2374
- * The mode determines which platform styles to use.
2777
+ * The mode determines the platform behaviors of the component.
2375
2778
  */
2376
2779
  "mode"?: "ios" | "md";
2377
2780
  /**
@@ -2394,6 +2797,10 @@ export namespace Components {
2394
2797
  * Specifies the value granularity.
2395
2798
  */
2396
2799
  "step": number;
2800
+ /**
2801
+ * The theme determines the visual appearance of the component.
2802
+ */
2803
+ "theme"?: "ios" | "md" | "ionic";
2397
2804
  /**
2398
2805
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2399
2806
  */
@@ -2425,7 +2832,7 @@ export namespace Components {
2425
2832
  */
2426
2833
  "getProgress": () => Promise<number>;
2427
2834
  /**
2428
- * The mode determines which platform styles to use.
2835
+ * The mode determines the platform behaviors of the component.
2429
2836
  */
2430
2837
  "mode"?: "ios" | "md";
2431
2838
  /**
@@ -2444,8 +2851,16 @@ export namespace Components {
2444
2851
  * 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.
2445
2852
  */
2446
2853
  "snapbackDuration": string;
2854
+ /**
2855
+ * The theme determines the visual appearance of the component.
2856
+ */
2857
+ "theme"?: "ios" | "md" | "ionic";
2447
2858
  }
2448
2859
  interface IonRefresherContent {
2860
+ /**
2861
+ * The mode determines the platform behaviors of the component.
2862
+ */
2863
+ "mode"?: "ios" | "md";
2449
2864
  /**
2450
2865
  * 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.
2451
2866
  */
@@ -2462,8 +2877,20 @@ export namespace Components {
2462
2877
  * 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.
2463
2878
  */
2464
2879
  "refreshingText"?: string | IonicSafeString;
2880
+ /**
2881
+ * The theme determines the visual appearance of the component.
2882
+ */
2883
+ "theme"?: "ios" | "md" | "ionic";
2465
2884
  }
2466
2885
  interface IonReorder {
2886
+ /**
2887
+ * The mode determines the platform behaviors of the component.
2888
+ */
2889
+ "mode"?: "ios" | "md";
2890
+ /**
2891
+ * The theme determines the visual appearance of the component.
2892
+ */
2893
+ "theme"?: "ios" | "md" | "ionic";
2467
2894
  }
2468
2895
  interface IonReorderGroup {
2469
2896
  /**
@@ -2475,6 +2902,14 @@ export namespace Components {
2475
2902
  * If `true`, the reorder will be hidden.
2476
2903
  */
2477
2904
  "disabled": boolean;
2905
+ /**
2906
+ * The mode determines the platform behaviors of the component.
2907
+ */
2908
+ "mode"?: "ios" | "md";
2909
+ /**
2910
+ * The theme determines the visual appearance of the component.
2911
+ */
2912
+ "theme"?: "ios" | "md" | "ionic";
2478
2913
  }
2479
2914
  interface IonRippleEffect {
2480
2915
  /**
@@ -2483,6 +2918,14 @@ export namespace Components {
2483
2918
  * @param y The vertical coordinate of where the ripple should start.
2484
2919
  */
2485
2920
  "addRipple": (x: number, y: number) => Promise<() => void>;
2921
+ /**
2922
+ * The mode determines the platform behaviors of the component.
2923
+ */
2924
+ "mode"?: "ios" | "md";
2925
+ /**
2926
+ * The theme determines the visual appearance of the component.
2927
+ */
2928
+ "theme"?: "ios" | "md" | "ionic";
2486
2929
  /**
2487
2930
  * 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.
2488
2931
  */
@@ -2505,6 +2948,14 @@ export namespace Components {
2505
2948
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2506
2949
  */
2507
2950
  "componentProps"?: { [key: string]: any };
2951
+ /**
2952
+ * The mode determines the platform behaviors of the component.
2953
+ */
2954
+ "mode"?: "ios" | "md";
2955
+ /**
2956
+ * The theme determines the visual appearance of the component.
2957
+ */
2958
+ "theme"?: "ios" | "md" | "ionic";
2508
2959
  /**
2509
2960
  * 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.
2510
2961
  */
@@ -2526,6 +2977,10 @@ export namespace Components {
2526
2977
  */
2527
2978
  "back": () => Promise<void>;
2528
2979
  "canTransition": () => Promise<string | boolean>;
2980
+ /**
2981
+ * The mode determines the platform behaviors of the component.
2982
+ */
2983
+ "mode"?: "ios" | "md";
2529
2984
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2530
2985
  "printDebug": () => Promise<void>;
2531
2986
  /**
@@ -2538,6 +2993,10 @@ export namespace Components {
2538
2993
  * 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.
2539
2994
  */
2540
2995
  "root": string;
2996
+ /**
2997
+ * The theme determines the visual appearance of the component.
2998
+ */
2999
+ "theme"?: "ios" | "md" | "ionic";
2541
3000
  /**
2542
3001
  * 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.
2543
3002
  */
@@ -2552,6 +3011,10 @@ export namespace Components {
2552
3011
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2553
3012
  */
2554
3013
  "href": string | undefined;
3014
+ /**
3015
+ * The mode determines the platform behaviors of the component.
3016
+ */
3017
+ "mode"?: "ios" | "md";
2555
3018
  /**
2556
3019
  * 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).
2557
3020
  */
@@ -2568,6 +3031,10 @@ export namespace Components {
2568
3031
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2569
3032
  */
2570
3033
  "target": string | undefined;
3034
+ /**
3035
+ * The theme determines the visual appearance of the component.
3036
+ */
3037
+ "theme"?: "ios" | "md" | "ionic";
2571
3038
  }
2572
3039
  interface IonRouterOutlet {
2573
3040
  /**
@@ -2582,13 +3049,25 @@ export namespace Components {
2582
3049
  "delegate"?: FrameworkDelegate;
2583
3050
  "getRouteId": () => Promise<RouteID | undefined>;
2584
3051
  /**
2585
- * The mode determines which platform styles to use.
3052
+ * The mode determines the platform behaviors of the component.
2586
3053
  */
2587
3054
  "mode": "ios" | "md";
2588
3055
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2589
3056
  "swipeHandler"?: SwipeGestureHandler;
3057
+ /**
3058
+ * The theme determines the visual appearance of the component.
3059
+ */
3060
+ "theme"?: "ios" | "md" | "ionic";
2590
3061
  }
2591
3062
  interface IonRow {
3063
+ /**
3064
+ * The mode determines the platform behaviors of the component.
3065
+ */
3066
+ "mode"?: "ios" | "md";
3067
+ /**
3068
+ * The theme determines the visual appearance of the component.
3069
+ */
3070
+ "theme"?: "ios" | "md" | "ionic";
2592
3071
  }
2593
3072
  interface IonSearchbar {
2594
3073
  /**
@@ -2608,15 +3087,15 @@ export namespace Components {
2608
3087
  */
2609
3088
  "autocorrect": 'on' | 'off';
2610
3089
  /**
2611
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
3090
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2612
3091
  */
2613
- "cancelButtonIcon": string;
3092
+ "cancelButtonIcon"?: string;
2614
3093
  /**
2615
- * Set the the cancel button text. Only applies to `ios` mode.
3094
+ * Set the cancel button text. Only available when the theme is `"ios"`.
2616
3095
  */
2617
3096
  "cancelButtonText": string;
2618
3097
  /**
2619
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3098
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2620
3099
  */
2621
3100
  "clearIcon"?: string;
2622
3101
  /**
@@ -2652,7 +3131,7 @@ export namespace Components {
2652
3131
  */
2653
3132
  "minlength"?: number;
2654
3133
  /**
2655
- * The mode determines which platform styles to use.
3134
+ * The mode determines the platform behaviors of the component.
2656
3135
  */
2657
3136
  "mode"?: "ios" | "md";
2658
3137
  /**
@@ -2664,13 +3143,17 @@ export namespace Components {
2664
3143
  */
2665
3144
  "placeholder": string;
2666
3145
  /**
2667
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3146
+ * 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. If `false`, no search icon will be displayed.
2668
3147
  */
2669
- "searchIcon"?: string;
3148
+ "searchIcon"?: string | boolean;
2670
3149
  /**
2671
3150
  * Sets focus on the native `input` in `ion-searchbar`. Use this method instead of the global `input.focus()`. Developers who wish to focus an input when a page enters should call `setFocus()` in the `ionViewDidEnter()` lifecycle method. Developers who wish to focus an input when an overlay is presented should call `setFocus` after `didPresent` has resolved. See [managing focus](/docs/developing/managing-focus) for more information.
2672
3151
  */
2673
3152
  "setFocus": () => Promise<void>;
3153
+ /**
3154
+ * Set to `"soft"` for a searchbar with slightly rounded corners, `"round"` for a searchbar with fully rounded corners, or `"rectangular"` for a searchbar without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes.
3155
+ */
3156
+ "shape"?: 'soft' | 'round' | 'rectangular';
2674
3157
  /**
2675
3158
  * Sets the behavior for the cancel button. Defaults to `"never"`. Setting to `"focus"` shows the cancel button on focus. Setting to `"never"` hides the cancel button. Setting to `"always"` shows the cancel button regardless of focus state.
2676
3159
  */
@@ -2679,10 +3162,18 @@ export namespace Components {
2679
3162
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
2680
3163
  */
2681
3164
  "showClearButton": 'never' | 'focus' | 'always';
3165
+ /**
3166
+ * Set to `"large"` for a searchbar with an increase in height, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and `undefined` for all other themes.
3167
+ */
3168
+ "size"?: 'small' | 'medium' | 'large';
2682
3169
  /**
2683
3170
  * If `true`, enable spellcheck on the input.
2684
3171
  */
2685
3172
  "spellcheck": boolean;
3173
+ /**
3174
+ * The theme determines the visual appearance of the component.
3175
+ */
3176
+ "theme"?: "ios" | "md" | "ionic";
2686
3177
  /**
2687
3178
  * Set the type of the input.
2688
3179
  */
@@ -2702,7 +3193,7 @@ export namespace Components {
2702
3193
  */
2703
3194
  "disabled": boolean;
2704
3195
  /**
2705
- * The mode determines which platform styles to use.
3196
+ * The mode determines the platform behaviors of the component.
2706
3197
  */
2707
3198
  "mode"?: "ios" | "md";
2708
3199
  /**
@@ -2717,6 +3208,10 @@ export namespace Components {
2717
3208
  * If `true`, users will be able to swipe between segment buttons to activate them.
2718
3209
  */
2719
3210
  "swipeGesture": boolean;
3211
+ /**
3212
+ * The theme determines the visual appearance of the component.
3213
+ */
3214
+ "theme"?: "ios" | "md" | "ionic";
2720
3215
  /**
2721
3216
  * the value of the segment.
2722
3217
  */
@@ -2736,10 +3231,14 @@ export namespace Components {
2736
3231
  */
2737
3232
  "layout"?: SegmentButtonLayout;
2738
3233
  /**
2739
- * The mode determines which platform styles to use.
3234
+ * The mode determines the platform behaviors of the component.
2740
3235
  */
2741
3236
  "mode"?: "ios" | "md";
2742
3237
  "setFocus": () => Promise<void>;
3238
+ /**
3239
+ * The theme determines the visual appearance of the component.
3240
+ */
3241
+ "theme"?: "ios" | "md" | "ionic";
2743
3242
  /**
2744
3243
  * The type of the button.
2745
3244
  */
@@ -2784,11 +3283,11 @@ export namespace Components {
2784
3283
  */
2785
3284
  "errorText"?: string;
2786
3285
  /**
2787
- * 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.
3286
+ * 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.
2788
3287
  */
2789
3288
  "expandedIcon"?: string;
2790
3289
  /**
2791
- * 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.
3290
+ * 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.
2792
3291
  */
2793
3292
  "fill"?: 'outline' | 'solid';
2794
3293
  /**
@@ -2816,7 +3315,7 @@ export namespace Components {
2816
3315
  */
2817
3316
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2818
3317
  /**
2819
- * The mode determines which platform styles to use.
3318
+ * The mode determines the platform behaviors of the component.
2820
3319
  */
2821
3320
  "mode"?: "ios" | "md";
2822
3321
  /**
@@ -2849,11 +3348,19 @@ export namespace Components {
2849
3348
  */
2850
3349
  "selectedText"?: string | null;
2851
3350
  /**
2852
- * The shape of the select. If "round" it will have an increased border radius.
3351
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
3352
+ */
3353
+ "shape"?: 'soft' | 'round' | 'rectangular';
3354
+ /**
3355
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
3356
+ */
3357
+ "size"?: 'small' | 'medium' | 'large';
3358
+ /**
3359
+ * The theme determines the visual appearance of the component.
2853
3360
  */
2854
- "shape"?: 'round';
3361
+ "theme"?: "ios" | "md" | "ionic";
2855
3362
  /**
2856
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3363
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
2857
3364
  */
2858
3365
  "toggleIcon"?: string;
2859
3366
  /**
@@ -2871,6 +3378,14 @@ export namespace Components {
2871
3378
  * 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.
2872
3379
  */
2873
3380
  "disabled": boolean;
3381
+ /**
3382
+ * The mode determines the platform behaviors of the component.
3383
+ */
3384
+ "mode"?: "ios" | "md";
3385
+ /**
3386
+ * The theme determines the visual appearance of the component.
3387
+ */
3388
+ "theme"?: "ios" | "md" | "ionic";
2874
3389
  /**
2875
3390
  * The text value of the option.
2876
3391
  */
@@ -2885,6 +3400,10 @@ export namespace Components {
2885
3400
  * The text content of the popover body
2886
3401
  */
2887
3402
  "message"?: string;
3403
+ /**
3404
+ * The mode determines the platform behaviors of the component.
3405
+ */
3406
+ "mode"?: "ios" | "md";
2888
3407
  /**
2889
3408
  * If true, the select accepts multiple values
2890
3409
  */
@@ -2897,12 +3416,24 @@ export namespace Components {
2897
3416
  * The subheader text of the popover
2898
3417
  */
2899
3418
  "subHeader"?: string;
3419
+ /**
3420
+ * The theme determines the visual appearance of the component.
3421
+ */
3422
+ "theme"?: "ios" | "md" | "ionic";
2900
3423
  }
2901
3424
  interface IonSkeletonText {
2902
3425
  /**
2903
3426
  * If `true`, the skeleton text will animate.
2904
3427
  */
2905
3428
  "animated": boolean;
3429
+ /**
3430
+ * The mode determines the platform behaviors of the component.
3431
+ */
3432
+ "mode"?: "ios" | "md";
3433
+ /**
3434
+ * The theme determines the visual appearance of the component.
3435
+ */
3436
+ "theme"?: "ios" | "md" | "ionic";
2906
3437
  }
2907
3438
  interface IonSpinner {
2908
3439
  /**
@@ -2913,6 +3444,10 @@ export namespace Components {
2913
3444
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
2914
3445
  */
2915
3446
  "duration"?: number;
3447
+ /**
3448
+ * The mode determines the platform behaviors of the component.
3449
+ */
3450
+ "mode"?: "ios" | "md";
2916
3451
  /**
2917
3452
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
2918
3453
  */
@@ -2921,6 +3456,14 @@ export namespace Components {
2921
3456
  * If `true`, the spinner's animation will be paused.
2922
3457
  */
2923
3458
  "paused": boolean;
3459
+ /**
3460
+ * Set to `"xsmall"` for the smallest size. Set to `"small"` for a smaller size. Set to `"medium"` for a medium size. Set to `"large"` for a large size. Set to `"xlarge"` for the largest size. Defaults to `"xsmall"` for the `ionic` theme, undefined for all other themes.
3461
+ */
3462
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3463
+ /**
3464
+ * The theme determines the visual appearance of the component.
3465
+ */
3466
+ "theme"?: "ios" | "md" | "ionic";
2924
3467
  }
2925
3468
  interface IonSplitPane {
2926
3469
  /**
@@ -2932,6 +3475,14 @@ export namespace Components {
2932
3475
  */
2933
3476
  "disabled": boolean;
2934
3477
  "isVisible": () => Promise<boolean>;
3478
+ /**
3479
+ * The mode determines the platform behaviors of the component.
3480
+ */
3481
+ "mode"?: "ios" | "md";
3482
+ /**
3483
+ * The theme determines the visual appearance of the component.
3484
+ */
3485
+ "theme"?: "ios" | "md" | "ionic";
2935
3486
  /**
2936
3487
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
2937
3488
  */
@@ -2944,6 +3495,10 @@ export namespace Components {
2944
3495
  */
2945
3496
  "component"?: ComponentRef;
2946
3497
  "delegate"?: FrameworkDelegate;
3498
+ /**
3499
+ * The mode determines the platform behaviors of the component.
3500
+ */
3501
+ "mode"?: "ios" | "md";
2947
3502
  /**
2948
3503
  * Set the active component for the tab
2949
3504
  */
@@ -2952,6 +3507,10 @@ export namespace Components {
2952
3507
  * 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.
2953
3508
  */
2954
3509
  "tab": string;
3510
+ /**
3511
+ * The theme determines the visual appearance of the component.
3512
+ */
3513
+ "theme"?: "ios" | "md" | "ionic";
2955
3514
  }
2956
3515
  interface IonTabBar {
2957
3516
  /**
@@ -2959,7 +3518,11 @@ export namespace Components {
2959
3518
  */
2960
3519
  "color"?: Color;
2961
3520
  /**
2962
- * The mode determines which platform styles to use.
3521
+ * Set to `"compact"` to display a width based on the items inside the tab bar. This value will only work for the `ionic` theme. Set to `"full"` to display a full width tab bar. Defaults to `"full"`.
3522
+ */
3523
+ "expand": 'compact' | 'full';
3524
+ /**
3525
+ * The mode determines the platform behaviors of the component.
2963
3526
  */
2964
3527
  "mode"?: "ios" | "md";
2965
3528
  /**
@@ -2967,7 +3530,15 @@ export namespace Components {
2967
3530
  */
2968
3531
  "selectedTab"?: string;
2969
3532
  /**
2970
- * 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).
3533
+ * Set to `"soft"` for a tab bar with slightly rounded corners, `"round"` for a tab bar with fully rounded corners, or `"rectangular"` for a tab bar without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
3534
+ */
3535
+ "shape"?: 'soft' | 'round' | 'rectangular';
3536
+ /**
3537
+ * The theme determines the visual appearance of the component.
3538
+ */
3539
+ "theme"?: "ios" | "md" | "ionic";
3540
+ /**
3541
+ * 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).
2971
3542
  */
2972
3543
  "translucent": boolean;
2973
3544
  }
@@ -2989,7 +3560,7 @@ export namespace Components {
2989
3560
  */
2990
3561
  "layout"?: TabButtonLayout;
2991
3562
  /**
2992
- * The mode determines which platform styles to use.
3563
+ * The mode determines the platform behaviors of the component.
2993
3564
  */
2994
3565
  "mode"?: "ios" | "md";
2995
3566
  /**
@@ -3000,6 +3571,10 @@ export namespace Components {
3000
3571
  * The selected tab component
3001
3572
  */
3002
3573
  "selected": boolean;
3574
+ /**
3575
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
3576
+ */
3577
+ "shape"?: 'soft' | 'round' | 'rectangular';
3003
3578
  /**
3004
3579
  * 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.
3005
3580
  */
@@ -3008,6 +3583,10 @@ export namespace Components {
3008
3583
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
3009
3584
  */
3010
3585
  "target": string | undefined;
3586
+ /**
3587
+ * The theme determines the visual appearance of the component.
3588
+ */
3589
+ "theme"?: "ios" | "md" | "ionic";
3011
3590
  }
3012
3591
  interface IonTabs {
3013
3592
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -3020,12 +3599,20 @@ export namespace Components {
3020
3599
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3021
3600
  */
3022
3601
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3602
+ /**
3603
+ * The mode determines the platform behaviors of the component.
3604
+ */
3605
+ "mode"?: "ios" | "md";
3023
3606
  /**
3024
3607
  * 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.
3025
3608
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3026
3609
  */
3027
3610
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3028
3611
  "setRouteId": (id: string) => Promise<RouteWrite>;
3612
+ /**
3613
+ * The theme determines the visual appearance of the component.
3614
+ */
3615
+ "theme"?: "ios" | "md" | "ionic";
3029
3616
  "useRouter": boolean;
3030
3617
  }
3031
3618
  interface IonText {
@@ -3034,9 +3621,13 @@ export namespace Components {
3034
3621
  */
3035
3622
  "color"?: Color;
3036
3623
  /**
3037
- * The mode determines which platform styles to use.
3624
+ * The mode determines the platform behaviors of the component.
3038
3625
  */
3039
3626
  "mode"?: "ios" | "md";
3627
+ /**
3628
+ * The theme determines the visual appearance of the component.
3629
+ */
3630
+ "theme"?: "ios" | "md" | "ionic";
3040
3631
  }
3041
3632
  interface IonTextarea {
3042
3633
  /**
@@ -3088,7 +3679,7 @@ export namespace Components {
3088
3679
  */
3089
3680
  "errorText"?: string;
3090
3681
  /**
3091
- * 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.
3682
+ * 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"`.
3092
3683
  */
3093
3684
  "fill"?: 'outline' | 'solid';
3094
3685
  /**
@@ -3120,7 +3711,7 @@ export namespace Components {
3120
3711
  */
3121
3712
  "minlength"?: number;
3122
3713
  /**
3123
- * The mode determines which platform styles to use.
3714
+ * The mode determines the platform behaviors of the component.
3124
3715
  */
3125
3716
  "mode"?: "ios" | "md";
3126
3717
  /**
@@ -3148,13 +3739,21 @@ export namespace Components {
3148
3739
  */
3149
3740
  "setFocus": () => Promise<void>;
3150
3741
  /**
3151
- * The shape of the textarea. If "round" it will have an increased border radius.
3742
+ * Set to `"soft"` for a textarea with slightly rounded corners, `"round"` for a textarea with fully rounded corners, or `"rectangular"` for a textarea without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
3743
+ */
3744
+ "shape"?: 'soft' | 'round' | 'rectangular';
3745
+ /**
3746
+ * The size of the textarea. If "large" it will increase the height of the textarea, while "small" and "medium" provide progressively smaller heights. The default size is "medium". This property only applies to the `"ionic"` theme.
3152
3747
  */
3153
- "shape"?: 'round';
3748
+ "size"?: 'small' | 'medium' | 'large';
3154
3749
  /**
3155
3750
  * If `true`, the element will have its spelling and grammar checked.
3156
3751
  */
3157
3752
  "spellcheck": boolean;
3753
+ /**
3754
+ * The theme determines the visual appearance of the component.
3755
+ */
3756
+ "theme"?: "ios" | "md" | "ionic";
3158
3757
  /**
3159
3758
  * The value of the textarea.
3160
3759
  */
@@ -3165,16 +3764,32 @@ export namespace Components {
3165
3764
  "wrap"?: 'hard' | 'soft' | 'off';
3166
3765
  }
3167
3766
  interface IonThumbnail {
3767
+ /**
3768
+ * The mode determines the platform behaviors of the component.
3769
+ */
3770
+ "mode"?: "ios" | "md";
3771
+ /**
3772
+ * The theme determines the visual appearance of the component.
3773
+ */
3774
+ "theme"?: "ios" | "md" | "ionic";
3168
3775
  }
3169
3776
  interface IonTitle {
3170
3777
  /**
3171
3778
  * 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).
3172
3779
  */
3173
3780
  "color"?: Color;
3781
+ /**
3782
+ * The mode determines the platform behaviors of the component.
3783
+ */
3784
+ "mode"?: "ios" | "md";
3174
3785
  /**
3175
3786
  * The size of the toolbar title.
3176
3787
  */
3177
3788
  "size"?: 'large' | 'small';
3789
+ /**
3790
+ * The theme determines the visual appearance of the component.
3791
+ */
3792
+ "theme"?: "ios" | "md" | "ionic";
3178
3793
  }
3179
3794
  interface IonToast {
3180
3795
  /**
@@ -3242,7 +3857,7 @@ export namespace Components {
3242
3857
  */
3243
3858
  "message"?: string | IonicSafeString;
3244
3859
  /**
3245
- * The mode determines which platform styles to use.
3860
+ * The mode determines the platform behaviors of the component.
3246
3861
  */
3247
3862
  "mode"?: "ios" | "md";
3248
3863
  /**
@@ -3266,12 +3881,20 @@ export namespace Components {
3266
3881
  * Present the toast overlay after it has been created.
3267
3882
  */
3268
3883
  "present": () => Promise<void>;
3884
+ /**
3885
+ * Set to `"soft"` for a toast with slightly rounded corners, `"round"` for a toast with fully rounded corners, or `"rectangular"` for a toast without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
3886
+ */
3887
+ "shape"?: 'soft' | 'round' | 'rectangular';
3269
3888
  /**
3270
3889
  * If set to 'vertical', the Toast can be dismissed with a swipe gesture. The swipe direction is determined by the value of the `position` property: `top`: The Toast can be swiped up to dismiss. `bottom`: The Toast can be swiped down to dismiss. `middle`: The Toast can be swiped up or down to dismiss.
3271
3890
  */
3272
3891
  "swipeGesture"?: ToastSwipeGestureDirection;
3273
3892
  /**
3274
- * 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).
3893
+ * The theme determines the visual appearance of the component.
3894
+ */
3895
+ "theme"?: "ios" | "md" | "ionic";
3896
+ /**
3897
+ * 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).
3275
3898
  */
3276
3899
  "translucent": boolean;
3277
3900
  /**
@@ -3317,7 +3940,7 @@ export namespace Components {
3317
3940
  */
3318
3941
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3319
3942
  /**
3320
- * The mode determines which platform styles to use.
3943
+ * The mode determines the platform behaviors of the component.
3321
3944
  */
3322
3945
  "mode"?: "ios" | "md";
3323
3946
  /**
@@ -3328,6 +3951,10 @@ export namespace Components {
3328
3951
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
3329
3952
  */
3330
3953
  "required": boolean;
3954
+ /**
3955
+ * The theme determines the visual appearance of the component.
3956
+ */
3957
+ "theme"?: "ios" | "md" | "ionic";
3331
3958
  /**
3332
3959
  * 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>`.
3333
3960
  */
@@ -3339,9 +3966,13 @@ export namespace Components {
3339
3966
  */
3340
3967
  "color"?: Color;
3341
3968
  /**
3342
- * The mode determines which platform styles to use.
3969
+ * The mode determines the platform behaviors of the component.
3343
3970
  */
3344
3971
  "mode"?: "ios" | "md";
3972
+ /**
3973
+ * The theme determines the visual appearance of the component.
3974
+ */
3975
+ "theme"?: "ios" | "md" | "ionic";
3345
3976
  }
3346
3977
  }
3347
3978
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -3819,6 +4450,12 @@ declare global {
3819
4450
  prototype: HTMLIonDatetimeButtonElement;
3820
4451
  new (): HTMLIonDatetimeButtonElement;
3821
4452
  };
4453
+ interface HTMLIonDividerElement extends Components.IonDivider, HTMLStencilElement {
4454
+ }
4455
+ var HTMLIonDividerElement: {
4456
+ prototype: HTMLIonDividerElement;
4457
+ new (): HTMLIonDividerElement;
4458
+ };
3822
4459
  interface HTMLIonFabElement extends Components.IonFab, HTMLStencilElement {
3823
4460
  }
3824
4461
  var HTMLIonFabElement: {
@@ -4778,6 +5415,7 @@ declare global {
4778
5415
  "ion-content": HTMLIonContentElement;
4779
5416
  "ion-datetime": HTMLIonDatetimeElement;
4780
5417
  "ion-datetime-button": HTMLIonDatetimeButtonElement;
5418
+ "ion-divider": HTMLIonDividerElement;
4781
5419
  "ion-fab": HTMLIonFabElement;
4782
5420
  "ion-fab-button": HTMLIonFabButtonElement;
4783
5421
  "ion-fab-list": HTMLIonFabListElement;
@@ -4859,13 +5497,17 @@ declare namespace LocalJSX {
4859
5497
  */
4860
5498
  "disabled"?: boolean;
4861
5499
  /**
4862
- * The mode determines which platform styles to use.
5500
+ * The mode determines the platform behaviors of the component.
4863
5501
  */
4864
5502
  "mode"?: "ios" | "md";
4865
5503
  /**
4866
5504
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
4867
5505
  */
4868
5506
  "readonly"?: boolean;
5507
+ /**
5508
+ * The theme determines the visual appearance of the component.
5509
+ */
5510
+ "theme"?: "ios" | "md" | "ionic";
4869
5511
  /**
4870
5512
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
4871
5513
  */
@@ -4893,7 +5535,7 @@ declare namespace LocalJSX {
4893
5535
  */
4894
5536
  "expand"?: 'compact' | 'inset';
4895
5537
  /**
4896
- * The mode determines which platform styles to use.
5538
+ * The mode determines the platform behaviors of the component.
4897
5539
  */
4898
5540
  "mode"?: "ios" | "md";
4899
5541
  /**
@@ -4908,6 +5550,14 @@ declare namespace LocalJSX {
4908
5550
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
4909
5551
  */
4910
5552
  "readonly"?: boolean;
5553
+ /**
5554
+ * Set to `"soft"` for an accordion group with slightly rounded corners, `"round"` for an accordion group with fully rounded corners, or `"rectangular"` for an accordion group without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes. Only applies when `expand` is set to `"inset"`.
5555
+ */
5556
+ "shape"?: 'soft' | 'round' | 'rectangular';
5557
+ /**
5558
+ * The theme determines the visual appearance of the component.
5559
+ */
5560
+ "theme"?: "ios" | "md" | "ionic";
4911
5561
  /**
4912
5562
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
4913
5563
  */
@@ -4955,7 +5605,7 @@ declare namespace LocalJSX {
4955
5605
  */
4956
5606
  "leaveAnimation"?: AnimationBuilder;
4957
5607
  /**
4958
- * The mode determines which platform styles to use.
5608
+ * The mode determines the platform behaviors of the component.
4959
5609
  */
4960
5610
  "mode"?: "ios" | "md";
4961
5611
  /**
@@ -4995,7 +5645,11 @@ declare namespace LocalJSX {
4995
5645
  */
4996
5646
  "subHeader"?: string;
4997
5647
  /**
4998
- * 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).
5648
+ * The theme determines the visual appearance of the component.
5649
+ */
5650
+ "theme"?: "ios" | "md" | "ionic";
5651
+ /**
5652
+ * 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).
4999
5653
  */
5000
5654
  "translucent"?: boolean;
5001
5655
  /**
@@ -5053,7 +5707,7 @@ declare namespace LocalJSX {
5053
5707
  */
5054
5708
  "message"?: string | IonicSafeString;
5055
5709
  /**
5056
- * The mode determines which platform styles to use.
5710
+ * The mode determines the platform behaviors of the component.
5057
5711
  */
5058
5712
  "mode"?: "ios" | "md";
5059
5713
  /**
@@ -5093,7 +5747,11 @@ declare namespace LocalJSX {
5093
5747
  */
5094
5748
  "subHeader"?: string;
5095
5749
  /**
5096
- * 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).
5750
+ * The theme determines the visual appearance of the component.
5751
+ */
5752
+ "theme"?: "ios" | "md" | "ionic";
5753
+ /**
5754
+ * 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).
5097
5755
  */
5098
5756
  "translucent"?: boolean;
5099
5757
  /**
@@ -5102,8 +5760,36 @@ declare namespace LocalJSX {
5102
5760
  "trigger"?: string | undefined;
5103
5761
  }
5104
5762
  interface IonApp {
5763
+ /**
5764
+ * The mode determines the platform behaviors of the component.
5765
+ */
5766
+ "mode"?: "ios" | "md";
5767
+ /**
5768
+ * The theme determines the visual appearance of the component.
5769
+ */
5770
+ "theme"?: "ios" | "md" | "ionic";
5105
5771
  }
5106
5772
  interface IonAvatar {
5773
+ /**
5774
+ * If `true`, the user cannot interact with the avatar.
5775
+ */
5776
+ "disabled"?: boolean;
5777
+ /**
5778
+ * The mode determines the platform behaviors of the component.
5779
+ */
5780
+ "mode"?: "ios" | "md";
5781
+ /**
5782
+ * 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.
5783
+ */
5784
+ "shape"?: 'soft' | 'round' | 'rectangular';
5785
+ /**
5786
+ * Set to `"xxsmall"` for the smallest size. Set to `"xsmall"` for a very small size. Set to `"small"` for a compact size. Set to `"medium"` for the default height and width. Set to `"large"` for a larger size. Set to `"xlarge"` for the largest dimensions. Defaults to `"medium"` for the `ionic` theme, undefined for all other themes.
5787
+ */
5788
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5789
+ /**
5790
+ * The theme determines the visual appearance of the component.
5791
+ */
5792
+ "theme"?: "ios" | "md" | "ionic";
5107
5793
  }
5108
5794
  interface IonBackButton {
5109
5795
  /**
@@ -5123,7 +5809,7 @@ declare namespace LocalJSX {
5123
5809
  */
5124
5810
  "icon"?: string | null;
5125
5811
  /**
5126
- * The mode determines which platform styles to use.
5812
+ * The mode determines the platform behaviors of the component.
5127
5813
  */
5128
5814
  "mode"?: "ios" | "md";
5129
5815
  /**
@@ -5134,12 +5820,20 @@ declare namespace LocalJSX {
5134
5820
  * The text to display in the back button.
5135
5821
  */
5136
5822
  "text"?: string | null;
5823
+ /**
5824
+ * The theme determines the visual appearance of the component.
5825
+ */
5826
+ "theme"?: "ios" | "md" | "ionic";
5137
5827
  /**
5138
5828
  * The type of the button.
5139
5829
  */
5140
5830
  "type"?: 'submit' | 'reset' | 'button';
5141
5831
  }
5142
5832
  interface IonBackdrop {
5833
+ /**
5834
+ * The mode determines the platform behaviors of the component.
5835
+ */
5836
+ "mode"?: "ios" | "md";
5143
5837
  /**
5144
5838
  * Emitted when the backdrop is tapped.
5145
5839
  */
@@ -5152,6 +5846,10 @@ declare namespace LocalJSX {
5152
5846
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5153
5847
  */
5154
5848
  "tappable"?: boolean;
5849
+ /**
5850
+ * The theme determines the visual appearance of the component.
5851
+ */
5852
+ "theme"?: "ios" | "md" | "ionic";
5155
5853
  /**
5156
5854
  * If `true`, the backdrop will be visible.
5157
5855
  */
@@ -5163,9 +5861,25 @@ declare namespace LocalJSX {
5163
5861
  */
5164
5862
  "color"?: Color;
5165
5863
  /**
5166
- * The mode determines which platform styles to use.
5864
+ * The mode determines the platform behaviors of the component.
5167
5865
  */
5168
5866
  "mode"?: "ios" | "md";
5867
+ /**
5868
+ * 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.
5869
+ */
5870
+ "shape"?: 'soft' | 'round | rectangular';
5871
+ /**
5872
+ * 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.
5873
+ */
5874
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
5875
+ /**
5876
+ * The theme determines the visual appearance of the component.
5877
+ */
5878
+ "theme"?: "ios" | "md" | "ionic";
5879
+ /**
5880
+ * Set to `"top"` to position the badge on top right absolute position of the parent element. Set to `"bottom"` to position the badge on bottom right absolute position of the parent element.
5881
+ */
5882
+ "vertical"?: 'top' | 'bottom';
5169
5883
  }
5170
5884
  interface IonBreadcrumb {
5171
5885
  /**
@@ -5189,7 +5903,7 @@ declare namespace LocalJSX {
5189
5903
  */
5190
5904
  "href"?: string | undefined;
5191
5905
  /**
5192
- * The mode determines which platform styles to use.
5906
+ * The mode determines the platform behaviors of the component.
5193
5907
  */
5194
5908
  "mode"?: "ios" | "md";
5195
5909
  /**
@@ -5220,6 +5934,10 @@ declare namespace LocalJSX {
5220
5934
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5221
5935
  */
5222
5936
  "target"?: string | undefined;
5937
+ /**
5938
+ * The theme determines the visual appearance of the component.
5939
+ */
5940
+ "theme"?: "ios" | "md" | "ionic";
5223
5941
  }
5224
5942
  interface IonBreadcrumbs {
5225
5943
  /**
@@ -5239,13 +5957,17 @@ declare namespace LocalJSX {
5239
5957
  */
5240
5958
  "maxItems"?: number;
5241
5959
  /**
5242
- * The mode determines which platform styles to use.
5960
+ * The mode determines the platform behaviors of the component.
5243
5961
  */
5244
5962
  "mode"?: "ios" | "md";
5245
5963
  /**
5246
5964
  * Emitted when the collapsed indicator is clicked on.
5247
5965
  */
5248
5966
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
5967
+ /**
5968
+ * The theme determines the visual appearance of the component.
5969
+ */
5970
+ "theme"?: "ios" | "md" | "ionic";
5249
5971
  }
5250
5972
  interface IonButton {
5251
5973
  /**
@@ -5281,7 +6003,7 @@ declare namespace LocalJSX {
5281
6003
  */
5282
6004
  "href"?: string | undefined;
5283
6005
  /**
5284
- * The mode determines which platform styles to use.
6006
+ * The mode determines the platform behaviors of the component.
5285
6007
  */
5286
6008
  "mode"?: "ios" | "md";
5287
6009
  /**
@@ -5305,13 +6027,13 @@ declare namespace LocalJSX {
5305
6027
  */
5306
6028
  "routerDirection"?: RouterDirection;
5307
6029
  /**
5308
- * Set to `"round"` for a button with more rounded corners.
6030
+ * 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.
5309
6031
  */
5310
- "shape"?: 'round';
6032
+ "shape"?: 'soft' | 'round' | 'rectangular';
5311
6033
  /**
5312
6034
  * 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.
5313
6035
  */
5314
- "size"?: 'small' | 'default' | 'large';
6036
+ "size"?: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
5315
6037
  /**
5316
6038
  * If `true`, activates a button with a heavier font weight.
5317
6039
  */
@@ -5320,6 +6042,10 @@ declare namespace LocalJSX {
5320
6042
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5321
6043
  */
5322
6044
  "target"?: string | undefined;
6045
+ /**
6046
+ * The theme determines the visual appearance of the component.
6047
+ */
6048
+ "theme"?: "ios" | "md" | "ionic";
5323
6049
  /**
5324
6050
  * The type of the button.
5325
6051
  */
@@ -5327,9 +6053,17 @@ declare namespace LocalJSX {
5327
6053
  }
5328
6054
  interface IonButtons {
5329
6055
  /**
5330
- * 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)
6056
+ * 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)
5331
6057
  */
5332
6058
  "collapse"?: boolean;
6059
+ /**
6060
+ * The mode determines the platform behaviors of the component.
6061
+ */
6062
+ "mode"?: "ios" | "md";
6063
+ /**
6064
+ * The theme determines the visual appearance of the component.
6065
+ */
6066
+ "theme"?: "ios" | "md" | "ionic";
5333
6067
  }
5334
6068
  interface IonCard {
5335
6069
  /**
@@ -5353,7 +6087,7 @@ declare namespace LocalJSX {
5353
6087
  */
5354
6088
  "href"?: string | undefined;
5355
6089
  /**
5356
- * The mode determines which platform styles to use.
6090
+ * The mode determines the platform behaviors of the component.
5357
6091
  */
5358
6092
  "mode"?: "ios" | "md";
5359
6093
  /**
@@ -5368,10 +6102,18 @@ declare namespace LocalJSX {
5368
6102
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5369
6103
  */
5370
6104
  "routerDirection"?: RouterDirection;
6105
+ /**
6106
+ * 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"`.
6107
+ */
6108
+ "shape"?: 'soft' | 'round' | 'rectangular';
5371
6109
  /**
5372
6110
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5373
6111
  */
5374
6112
  "target"?: string | undefined;
6113
+ /**
6114
+ * The theme determines the visual appearance of the component.
6115
+ */
6116
+ "theme"?: "ios" | "md" | "ionic";
5375
6117
  /**
5376
6118
  * The type of the button. Only used when an `onclick` or `button` property is present.
5377
6119
  */
@@ -5379,9 +6121,13 @@ declare namespace LocalJSX {
5379
6121
  }
5380
6122
  interface IonCardContent {
5381
6123
  /**
5382
- * The mode determines which platform styles to use.
6124
+ * The mode determines the platform behaviors of the component.
5383
6125
  */
5384
6126
  "mode"?: "ios" | "md";
6127
+ /**
6128
+ * The theme determines the visual appearance of the component.
6129
+ */
6130
+ "theme"?: "ios" | "md" | "ionic";
5385
6131
  }
5386
6132
  interface IonCardHeader {
5387
6133
  /**
@@ -5389,11 +6135,15 @@ declare namespace LocalJSX {
5389
6135
  */
5390
6136
  "color"?: Color;
5391
6137
  /**
5392
- * The mode determines which platform styles to use.
6138
+ * The mode determines the platform behaviors of the component.
5393
6139
  */
5394
6140
  "mode"?: "ios" | "md";
5395
6141
  /**
5396
- * 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).
6142
+ * The theme determines the visual appearance of the component.
6143
+ */
6144
+ "theme"?: "ios" | "md" | "ionic";
6145
+ /**
6146
+ * 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).
5397
6147
  */
5398
6148
  "translucent"?: boolean;
5399
6149
  }
@@ -5403,9 +6153,13 @@ declare namespace LocalJSX {
5403
6153
  */
5404
6154
  "color"?: Color;
5405
6155
  /**
5406
- * The mode determines which platform styles to use.
6156
+ * The mode determines the platform behaviors of the component.
5407
6157
  */
5408
6158
  "mode"?: "ios" | "md";
6159
+ /**
6160
+ * The theme determines the visual appearance of the component.
6161
+ */
6162
+ "theme"?: "ios" | "md" | "ionic";
5409
6163
  }
5410
6164
  interface IonCardTitle {
5411
6165
  /**
@@ -5413,9 +6167,13 @@ declare namespace LocalJSX {
5413
6167
  */
5414
6168
  "color"?: Color;
5415
6169
  /**
5416
- * The mode determines which platform styles to use.
6170
+ * The mode determines the platform behaviors of the component.
5417
6171
  */
5418
6172
  "mode"?: "ios" | "md";
6173
+ /**
6174
+ * The theme determines the visual appearance of the component.
6175
+ */
6176
+ "theme"?: "ios" | "md" | "ionic";
5419
6177
  }
5420
6178
  interface IonCheckbox {
5421
6179
  /**
@@ -5455,7 +6213,7 @@ declare namespace LocalJSX {
5455
6213
  */
5456
6214
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5457
6215
  /**
5458
- * The mode determines which platform styles to use.
6216
+ * The mode determines the platform behaviors of the component.
5459
6217
  */
5460
6218
  "mode"?: "ios" | "md";
5461
6219
  /**
@@ -5467,7 +6225,7 @@ declare namespace LocalJSX {
5467
6225
  */
5468
6226
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5469
6227
  /**
5470
- * 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.
6228
+ * 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.
5471
6229
  */
5472
6230
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5473
6231
  /**
@@ -5478,6 +6236,18 @@ declare namespace LocalJSX {
5478
6236
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
5479
6237
  */
5480
6238
  "required"?: boolean;
6239
+ /**
6240
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6241
+ */
6242
+ "shape"?: 'soft' | 'rectangular';
6243
+ /**
6244
+ * Set to `"small"` for a checkbox with less height and padding.
6245
+ */
6246
+ "size"?: 'small';
6247
+ /**
6248
+ * The theme determines the visual appearance of the component.
6249
+ */
6250
+ "theme"?: "ios" | "md" | "ionic";
5481
6251
  /**
5482
6252
  * 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>`.
5483
6253
  */
@@ -5493,27 +6263,43 @@ declare namespace LocalJSX {
5493
6263
  */
5494
6264
  "disabled"?: boolean;
5495
6265
  /**
5496
- * The mode determines which platform styles to use.
6266
+ * The mode determines the platform behaviors of the component.
5497
6267
  */
5498
6268
  "mode"?: "ios" | "md";
5499
6269
  /**
5500
6270
  * Display an outline style button.
5501
6271
  */
5502
6272
  "outline"?: boolean;
5503
- }
5504
- interface IonCol {
5505
6273
  /**
5506
- * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
6274
+ * 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.
5507
6275
  */
5508
- "offset"?: string;
6276
+ "shape"?: 'soft' | 'round' | 'rectangular';
5509
6277
  /**
5510
- * The amount to offset the column for lg screens, in terms of how many columns it should shift to the end of the total available.
6278
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
5511
6279
  */
5512
- "offsetLg"?: string;
6280
+ "size"?: 'small' | 'large';
5513
6281
  /**
5514
- * The amount to offset the column for md screens, in terms of how many columns it should shift to the end of the total available.
6282
+ * The theme determines the visual appearance of the component.
5515
6283
  */
5516
- "offsetMd"?: string;
6284
+ "theme"?: "ios" | "md" | "ionic";
6285
+ }
6286
+ interface IonCol {
6287
+ /**
6288
+ * The mode determines the platform behaviors of the component.
6289
+ */
6290
+ "mode"?: "ios" | "md";
6291
+ /**
6292
+ * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
6293
+ */
6294
+ "offset"?: string;
6295
+ /**
6296
+ * The amount to offset the column for lg screens, in terms of how many columns it should shift to the end of the total available.
6297
+ */
6298
+ "offsetLg"?: string;
6299
+ /**
6300
+ * The amount to offset the column for md screens, in terms of how many columns it should shift to the end of the total available.
6301
+ */
6302
+ "offsetMd"?: string;
5517
6303
  /**
5518
6304
  * The amount to offset the column for sm screens, in terms of how many columns it should shift to the end of the total available.
5519
6305
  */
@@ -5598,6 +6384,10 @@ declare namespace LocalJSX {
5598
6384
  * 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.
5599
6385
  */
5600
6386
  "sizeXs"?: string;
6387
+ /**
6388
+ * The theme determines the visual appearance of the component.
6389
+ */
6390
+ "theme"?: "ios" | "md" | "ionic";
5601
6391
  }
5602
6392
  interface IonContent {
5603
6393
  /**
@@ -5616,6 +6406,10 @@ declare namespace LocalJSX {
5616
6406
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
5617
6407
  */
5618
6408
  "fullscreen"?: boolean;
6409
+ /**
6410
+ * The mode determines the platform behaviors of the component.
6411
+ */
6412
+ "mode"?: "ios" | "md";
5619
6413
  /**
5620
6414
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
5621
6415
  */
@@ -5640,6 +6434,10 @@ declare namespace LocalJSX {
5640
6434
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
5641
6435
  */
5642
6436
  "scrollY"?: boolean;
6437
+ /**
6438
+ * The theme determines the visual appearance of the component.
6439
+ */
6440
+ "theme"?: "ios" | "md" | "ionic";
5643
6441
  }
5644
6442
  interface IonDatetime {
5645
6443
  /**
@@ -5707,7 +6505,7 @@ declare namespace LocalJSX {
5707
6505
  */
5708
6506
  "minuteValues"?: number[] | number | string;
5709
6507
  /**
5710
- * The mode determines which platform styles to use.
6508
+ * The mode determines the platform behaviors of the component.
5711
6509
  */
5712
6510
  "mode"?: "ios" | "md";
5713
6511
  /**
@@ -5770,6 +6568,10 @@ declare namespace LocalJSX {
5770
6568
  * 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.
5771
6569
  */
5772
6570
  "size"?: 'cover' | 'fixed';
6571
+ /**
6572
+ * The theme determines the visual appearance of the component.
6573
+ */
6574
+ "theme"?: "ios" | "md" | "ionic";
5773
6575
  /**
5774
6576
  * 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.
5775
6577
  */
@@ -5797,9 +6599,23 @@ declare namespace LocalJSX {
5797
6599
  */
5798
6600
  "disabled"?: boolean;
5799
6601
  /**
5800
- * The mode determines which platform styles to use.
6602
+ * The mode determines the platform behaviors of the component.
5801
6603
  */
5802
6604
  "mode"?: "ios" | "md";
6605
+ /**
6606
+ * The theme determines the visual appearance of the component.
6607
+ */
6608
+ "theme"?: "ios" | "md" | "ionic";
6609
+ }
6610
+ interface IonDivider {
6611
+ /**
6612
+ * If `true`, the divider will have horizontal margins By default, it's `false`
6613
+ */
6614
+ "inset"?: boolean;
6615
+ /**
6616
+ * Set to `"xxsmall"` for the smallest spacing. Set to "xsmall" for very small spacing. Set to `"small"` for small spacing. Set to "medium" for medium spacing. Set to "large" for large spacing. Set to `"xlarge"` for the largest spacing. Defaults to `"medium"`.
6617
+ */
6618
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
5803
6619
  }
5804
6620
  interface IonFab {
5805
6621
  /**
@@ -5814,6 +6630,14 @@ declare namespace LocalJSX {
5814
6630
  * Where to align the fab horizontally in the viewport.
5815
6631
  */
5816
6632
  "horizontal"?: 'start' | 'end' | 'center';
6633
+ /**
6634
+ * The mode determines the platform behaviors of the component.
6635
+ */
6636
+ "mode"?: "ios" | "md";
6637
+ /**
6638
+ * The theme determines the visual appearance of the component.
6639
+ */
6640
+ "theme"?: "ios" | "md" | "ionic";
5817
6641
  /**
5818
6642
  * Where to align the fab vertically in the viewport.
5819
6643
  */
@@ -5845,7 +6669,7 @@ declare namespace LocalJSX {
5845
6669
  */
5846
6670
  "href"?: string | undefined;
5847
6671
  /**
5848
- * The mode determines which platform styles to use.
6672
+ * The mode determines the platform behaviors of the component.
5849
6673
  */
5850
6674
  "mode"?: "ios" | "md";
5851
6675
  /**
@@ -5881,7 +6705,11 @@ declare namespace LocalJSX {
5881
6705
  */
5882
6706
  "target"?: string | undefined;
5883
6707
  /**
5884
- * 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).
6708
+ * The theme determines the visual appearance of the component.
6709
+ */
6710
+ "theme"?: "ios" | "md" | "ionic";
6711
+ /**
6712
+ * 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).
5885
6713
  */
5886
6714
  "translucent"?: boolean;
5887
6715
  /**
@@ -5894,22 +6722,34 @@ declare namespace LocalJSX {
5894
6722
  * If `true`, the fab list will show all fab buttons in the list.
5895
6723
  */
5896
6724
  "activated"?: boolean;
6725
+ /**
6726
+ * The mode determines the platform behaviors of the component.
6727
+ */
6728
+ "mode"?: "ios" | "md";
5897
6729
  /**
5898
6730
  * The side the fab list will show on relative to the main fab button.
5899
6731
  */
5900
6732
  "side"?: 'start' | 'end' | 'top' | 'bottom';
6733
+ /**
6734
+ * The theme determines the visual appearance of the component.
6735
+ */
6736
+ "theme"?: "ios" | "md" | "ionic";
5901
6737
  }
5902
6738
  interface IonFooter {
5903
6739
  /**
5904
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
6740
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
5905
6741
  */
5906
6742
  "collapse"?: 'fade';
5907
6743
  /**
5908
- * The mode determines which platform styles to use.
6744
+ * The mode determines the platform behaviors of the component.
5909
6745
  */
5910
6746
  "mode"?: "ios" | "md";
5911
6747
  /**
5912
- * 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.
6748
+ * The theme determines the visual appearance of the component.
6749
+ */
6750
+ "theme"?: "ios" | "md" | "ionic";
6751
+ /**
6752
+ * 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.
5913
6753
  */
5914
6754
  "translucent"?: boolean;
5915
6755
  }
@@ -5918,18 +6758,34 @@ declare namespace LocalJSX {
5918
6758
  * If `true`, the grid will have a fixed width based on the screen size.
5919
6759
  */
5920
6760
  "fixed"?: boolean;
6761
+ /**
6762
+ * The mode determines the platform behaviors of the component.
6763
+ */
6764
+ "mode"?: "ios" | "md";
6765
+ /**
6766
+ * The theme determines the visual appearance of the component.
6767
+ */
6768
+ "theme"?: "ios" | "md" | "ionic";
5921
6769
  }
5922
6770
  interface IonHeader {
5923
6771
  /**
5924
- * 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)
6772
+ * 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)
5925
6773
  */
5926
6774
  "collapse"?: 'condense' | 'fade';
5927
6775
  /**
5928
- * The mode determines which platform styles to use.
6776
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
6777
+ */
6778
+ "divider"?: boolean;
6779
+ /**
6780
+ * The mode determines the platform behaviors of the component.
5929
6781
  */
5930
6782
  "mode"?: "ios" | "md";
5931
6783
  /**
5932
- * 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.
6784
+ * The theme determines the visual appearance of the component.
6785
+ */
6786
+ "theme"?: "ios" | "md" | "ionic";
6787
+ /**
6788
+ * 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.
5933
6789
  */
5934
6790
  "translucent"?: boolean;
5935
6791
  }
@@ -5938,6 +6794,10 @@ declare namespace LocalJSX {
5938
6794
  * 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.
5939
6795
  */
5940
6796
  "alt"?: string;
6797
+ /**
6798
+ * The mode determines the platform behaviors of the component.
6799
+ */
6800
+ "mode"?: "ios" | "md";
5941
6801
  /**
5942
6802
  * Emitted when the img fails to load
5943
6803
  */
@@ -5954,12 +6814,20 @@ declare namespace LocalJSX {
5954
6814
  * The image URL. This attribute is mandatory for the `<img>` element.
5955
6815
  */
5956
6816
  "src"?: string;
6817
+ /**
6818
+ * The theme determines the visual appearance of the component.
6819
+ */
6820
+ "theme"?: "ios" | "md" | "ionic";
5957
6821
  }
5958
6822
  interface IonInfiniteScroll {
5959
6823
  /**
5960
6824
  * 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.
5961
6825
  */
5962
6826
  "disabled"?: boolean;
6827
+ /**
6828
+ * The mode determines the platform behaviors of the component.
6829
+ */
6830
+ "mode"?: "ios" | "md";
5963
6831
  /**
5964
6832
  * 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.
5965
6833
  */
@@ -5968,6 +6836,10 @@ declare namespace LocalJSX {
5968
6836
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
5969
6837
  */
5970
6838
  "position"?: 'top' | 'bottom';
6839
+ /**
6840
+ * The theme determines the visual appearance of the component.
6841
+ */
6842
+ "theme"?: "ios" | "md" | "ionic";
5971
6843
  /**
5972
6844
  * 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.
5973
6845
  */
@@ -5982,6 +6854,14 @@ declare namespace LocalJSX {
5982
6854
  * 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.
5983
6855
  */
5984
6856
  "loadingText"?: string | IonicSafeString;
6857
+ /**
6858
+ * The mode determines the platform behaviors of the component.
6859
+ */
6860
+ "mode"?: "ios" | "md";
6861
+ /**
6862
+ * The theme determines the visual appearance of the component.
6863
+ */
6864
+ "theme"?: "ios" | "md" | "ionic";
5985
6865
  }
5986
6866
  interface IonInput {
5987
6867
  /**
@@ -6041,7 +6921,7 @@ declare namespace LocalJSX {
6041
6921
  */
6042
6922
  "errorText"?: string;
6043
6923
  /**
6044
- * 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.
6924
+ * 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"`.
6045
6925
  */
6046
6926
  "fill"?: 'outline' | 'solid';
6047
6927
  /**
@@ -6057,7 +6937,7 @@ declare namespace LocalJSX {
6057
6937
  */
6058
6938
  "label"?: string;
6059
6939
  /**
6060
- * 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 ("...").
6940
+ * 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.
6061
6941
  */
6062
6942
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6063
6943
  /**
@@ -6077,7 +6957,7 @@ declare namespace LocalJSX {
6077
6957
  */
6078
6958
  "minlength"?: number;
6079
6959
  /**
6080
- * The mode determines which platform styles to use.
6960
+ * The mode determines the platform behaviors of the component.
6081
6961
  */
6082
6962
  "mode"?: "ios" | "md";
6083
6963
  /**
@@ -6121,9 +7001,13 @@ declare namespace LocalJSX {
6121
7001
  */
6122
7002
  "required"?: boolean;
6123
7003
  /**
6124
- * The shape of the input. If "round" it will have an increased border radius.
7004
+ * 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"`.
7005
+ */
7006
+ "shape"?: 'soft' | 'round' | 'rectangular';
7007
+ /**
7008
+ * 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.
6125
7009
  */
6126
- "shape"?: 'round';
7010
+ "size"?: 'medium' | 'large' | 'xlarge';
6127
7011
  /**
6128
7012
  * If `true`, the element will have its spelling and grammar checked.
6129
7013
  */
@@ -6132,6 +7016,10 @@ declare namespace LocalJSX {
6132
7016
  * 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.
6133
7017
  */
6134
7018
  "step"?: string;
7019
+ /**
7020
+ * The theme determines the visual appearance of the component.
7021
+ */
7022
+ "theme"?: "ios" | "md" | "ionic";
6135
7023
  /**
6136
7024
  * The type of control to display. The default type is text.
6137
7025
  */
@@ -6169,7 +7057,7 @@ declare namespace LocalJSX {
6169
7057
  */
6170
7058
  "color"?: Color;
6171
7059
  /**
6172
- * 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.
7060
+ * 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.
6173
7061
  */
6174
7062
  "detail"?: boolean;
6175
7063
  /**
@@ -6193,7 +7081,7 @@ declare namespace LocalJSX {
6193
7081
  */
6194
7082
  "lines"?: 'full' | 'inset' | 'none';
6195
7083
  /**
6196
- * The mode determines which platform styles to use.
7084
+ * The mode determines the platform behaviors of the component.
6197
7085
  */
6198
7086
  "mode"?: "ios" | "md";
6199
7087
  /**
@@ -6212,6 +7100,10 @@ declare namespace LocalJSX {
6212
7100
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6213
7101
  */
6214
7102
  "target"?: string | undefined;
7103
+ /**
7104
+ * The theme determines the visual appearance of the component.
7105
+ */
7106
+ "theme"?: "ios" | "md" | "ionic";
6215
7107
  /**
6216
7108
  * The type of the button. Only used when an `onclick` or `button` property is present.
6217
7109
  */
@@ -6223,15 +7115,27 @@ declare namespace LocalJSX {
6223
7115
  */
6224
7116
  "color"?: Color;
6225
7117
  /**
6226
- * The mode determines which platform styles to use.
7118
+ * The mode determines the platform behaviors of the component.
6227
7119
  */
6228
7120
  "mode"?: "ios" | "md";
6229
7121
  /**
6230
7122
  * 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
6231
7123
  */
6232
7124
  "sticky"?: boolean;
7125
+ /**
7126
+ * The theme determines the visual appearance of the component.
7127
+ */
7128
+ "theme"?: "ios" | "md" | "ionic";
6233
7129
  }
6234
7130
  interface IonItemGroup {
7131
+ /**
7132
+ * The mode determines the platform behaviors of the component.
7133
+ */
7134
+ "mode"?: "ios" | "md";
7135
+ /**
7136
+ * The theme determines the visual appearance of the component.
7137
+ */
7138
+ "theme"?: "ios" | "md" | "ionic";
6235
7139
  }
6236
7140
  interface IonItemOption {
6237
7141
  /**
@@ -6255,23 +7159,35 @@ declare namespace LocalJSX {
6255
7159
  */
6256
7160
  "href"?: string | undefined;
6257
7161
  /**
6258
- * The mode determines which platform styles to use.
7162
+ * The mode determines the platform behaviors of the component.
6259
7163
  */
6260
7164
  "mode"?: "ios" | "md";
6261
7165
  /**
6262
7166
  * 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).
6263
7167
  */
6264
7168
  "rel"?: string | undefined;
7169
+ /**
7170
+ * 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.
7171
+ */
7172
+ "shape"?: 'soft' | 'round' | 'rectangular';
6265
7173
  /**
6266
7174
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6267
7175
  */
6268
7176
  "target"?: string | undefined;
7177
+ /**
7178
+ * The theme determines the visual appearance of the component.
7179
+ */
7180
+ "theme"?: "ios" | "md" | "ionic";
6269
7181
  /**
6270
7182
  * The type of the button.
6271
7183
  */
6272
7184
  "type"?: 'submit' | 'reset' | 'button';
6273
7185
  }
6274
7186
  interface IonItemOptions {
7187
+ /**
7188
+ * The mode determines the platform behaviors of the component.
7189
+ */
7190
+ "mode"?: "ios" | "md";
6275
7191
  /**
6276
7192
  * Emitted when the item has been fully swiped.
6277
7193
  */
@@ -6280,16 +7196,28 @@ declare namespace LocalJSX {
6280
7196
  * 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.
6281
7197
  */
6282
7198
  "side"?: Side;
7199
+ /**
7200
+ * The theme determines the visual appearance of the component.
7201
+ */
7202
+ "theme"?: "ios" | "md" | "ionic";
6283
7203
  }
6284
7204
  interface IonItemSliding {
6285
7205
  /**
6286
7206
  * If `true`, the user cannot interact with the sliding item.
6287
7207
  */
6288
7208
  "disabled"?: boolean;
7209
+ /**
7210
+ * The mode determines the platform behaviors of the component.
7211
+ */
7212
+ "mode"?: "ios" | "md";
6289
7213
  /**
6290
7214
  * Emitted when the sliding position changes.
6291
7215
  */
6292
7216
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7217
+ /**
7218
+ * The theme determines the visual appearance of the component.
7219
+ */
7220
+ "theme"?: "ios" | "md" | "ionic";
6293
7221
  }
6294
7222
  interface IonLabel {
6295
7223
  /**
@@ -6297,13 +7225,17 @@ declare namespace LocalJSX {
6297
7225
  */
6298
7226
  "color"?: Color;
6299
7227
  /**
6300
- * The mode determines which platform styles to use.
7228
+ * The mode determines the platform behaviors of the component.
6301
7229
  */
6302
7230
  "mode"?: "ios" | "md";
6303
7231
  /**
6304
7232
  * The position determines where and how the label behaves inside an item.
6305
7233
  */
6306
7234
  "position"?: 'fixed' | 'stacked' | 'floating';
7235
+ /**
7236
+ * The theme determines the visual appearance of the component.
7237
+ */
7238
+ "theme"?: "ios" | "md" | "ionic";
6307
7239
  }
6308
7240
  interface IonList {
6309
7241
  /**
@@ -6315,9 +7247,17 @@ declare namespace LocalJSX {
6315
7247
  */
6316
7248
  "lines"?: 'full' | 'inset' | 'none';
6317
7249
  /**
6318
- * The mode determines which platform styles to use.
7250
+ * The mode determines the platform behaviors of the component.
6319
7251
  */
6320
7252
  "mode"?: "ios" | "md";
7253
+ /**
7254
+ * 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.
7255
+ */
7256
+ "shape"?: 'soft' | 'round' | 'rectangular';
7257
+ /**
7258
+ * The theme determines the visual appearance of the component.
7259
+ */
7260
+ "theme"?: "ios" | "md" | "ionic";
6321
7261
  }
6322
7262
  interface IonListHeader {
6323
7263
  /**
@@ -6329,9 +7269,13 @@ declare namespace LocalJSX {
6329
7269
  */
6330
7270
  "lines"?: 'full' | 'inset' | 'none';
6331
7271
  /**
6332
- * The mode determines which platform styles to use.
7272
+ * The mode determines the platform behaviors of the component.
6333
7273
  */
6334
7274
  "mode"?: "ios" | "md";
7275
+ /**
7276
+ * The theme determines the visual appearance of the component.
7277
+ */
7278
+ "theme"?: "ios" | "md" | "ionic";
6335
7279
  }
6336
7280
  interface IonLoading {
6337
7281
  /**
@@ -6375,7 +7319,7 @@ declare namespace LocalJSX {
6375
7319
  */
6376
7320
  "message"?: string | IonicSafeString;
6377
7321
  /**
6378
- * The mode determines which platform styles to use.
7322
+ * The mode determines the platform behaviors of the component.
6379
7323
  */
6380
7324
  "mode"?: "ios" | "md";
6381
7325
  /**
@@ -6419,7 +7363,11 @@ declare namespace LocalJSX {
6419
7363
  */
6420
7364
  "spinner"?: SpinnerTypes | null;
6421
7365
  /**
6422
- * 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).
7366
+ * The theme determines the visual appearance of the component.
7367
+ */
7368
+ "theme"?: "ios" | "md" | "ionic";
7369
+ /**
7370
+ * 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).
6423
7371
  */
6424
7372
  "translucent"?: boolean;
6425
7373
  /**
@@ -6444,6 +7392,10 @@ declare namespace LocalJSX {
6444
7392
  * An id for the menu.
6445
7393
  */
6446
7394
  "menuId"?: string;
7395
+ /**
7396
+ * The mode determines the platform behaviors of the component.
7397
+ */
7398
+ "mode"?: "ios" | "md";
6447
7399
  /**
6448
7400
  * Emitted when the menu is closed.
6449
7401
  */
@@ -6468,6 +7420,10 @@ declare namespace LocalJSX {
6468
7420
  * If `true`, swiping the menu is enabled.
6469
7421
  */
6470
7422
  "swipeGesture"?: boolean;
7423
+ /**
7424
+ * The theme determines the visual appearance of the component.
7425
+ */
7426
+ "theme"?: "ios" | "md" | "ionic";
6471
7427
  /**
6472
7428
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
6473
7429
  */
@@ -6491,9 +7447,13 @@ declare namespace LocalJSX {
6491
7447
  */
6492
7448
  "menu"?: string;
6493
7449
  /**
6494
- * The mode determines which platform styles to use.
7450
+ * The mode determines the platform behaviors of the component.
6495
7451
  */
6496
7452
  "mode"?: "ios" | "md";
7453
+ /**
7454
+ * The theme determines the visual appearance of the component.
7455
+ */
7456
+ "theme"?: "ios" | "md" | "ionic";
6497
7457
  /**
6498
7458
  * The type of the button.
6499
7459
  */
@@ -6508,6 +7468,14 @@ declare namespace LocalJSX {
6508
7468
  * 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.
6509
7469
  */
6510
7470
  "menu"?: string;
7471
+ /**
7472
+ * The mode determines the platform behaviors of the component.
7473
+ */
7474
+ "mode"?: "ios" | "md";
7475
+ /**
7476
+ * The theme determines the visual appearance of the component.
7477
+ */
7478
+ "theme"?: "ios" | "md" | "ionic";
6511
7479
  }
6512
7480
  interface IonModal {
6513
7481
  /**
@@ -6575,7 +7543,7 @@ declare namespace LocalJSX {
6575
7543
  */
6576
7544
  "leaveAnimation"?: AnimationBuilder;
6577
7545
  /**
6578
- * The mode determines which platform styles to use.
7546
+ * The mode determines the platform behaviors of the component.
6579
7547
  */
6580
7548
  "mode"?: "ios" | "md";
6581
7549
  /**
@@ -6618,10 +7586,18 @@ declare namespace LocalJSX {
6618
7586
  * The element that presented the modal. This is used for card presentation effects and for stacking multiple modals on top of each other. Only applies in iOS mode.
6619
7587
  */
6620
7588
  "presentingElement"?: HTMLElement;
7589
+ /**
7590
+ * Set to `"soft"` for a modal with slightly rounded corners, `"round"` for a modal with fully rounded corners, or `"rectangular"` for a modal without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
7591
+ */
7592
+ "shape"?: 'soft' | 'round' | 'rectangular';
6621
7593
  /**
6622
7594
  * 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.
6623
7595
  */
6624
7596
  "showBackdrop"?: boolean;
7597
+ /**
7598
+ * The theme determines the visual appearance of the component.
7599
+ */
7600
+ "theme"?: "ios" | "md" | "ionic";
6625
7601
  /**
6626
7602
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
6627
7603
  */
@@ -6633,9 +7609,13 @@ declare namespace LocalJSX {
6633
7609
  */
6634
7610
  "animated"?: boolean;
6635
7611
  /**
6636
- * 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.
7612
+ * 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.
6637
7613
  */
6638
7614
  "animation"?: AnimationBuilder;
7615
+ /**
7616
+ * The mode determines the platform behaviors of the component.
7617
+ */
7618
+ "mode"?: "ios" | "md";
6639
7619
  /**
6640
7620
  * Event fired when the nav has changed components
6641
7621
  */
@@ -6656,6 +7636,10 @@ declare namespace LocalJSX {
6656
7636
  * If the nav component should allow for swipe-to-go-back.
6657
7637
  */
6658
7638
  "swipeGesture"?: boolean;
7639
+ /**
7640
+ * The theme determines the visual appearance of the component.
7641
+ */
7642
+ "theme"?: "ios" | "md" | "ionic";
6659
7643
  }
6660
7644
  interface IonNavLink {
6661
7645
  /**
@@ -6666,6 +7650,10 @@ declare namespace LocalJSX {
6666
7650
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
6667
7651
  */
6668
7652
  "componentProps"?: ComponentProps;
7653
+ /**
7654
+ * The mode determines the platform behaviors of the component.
7655
+ */
7656
+ "mode"?: "ios" | "md";
6669
7657
  /**
6670
7658
  * The transition animation when navigating to another page.
6671
7659
  */
@@ -6674,6 +7662,10 @@ declare namespace LocalJSX {
6674
7662
  * The transition direction when navigating to another page.
6675
7663
  */
6676
7664
  "routerDirection"?: RouterDirection;
7665
+ /**
7666
+ * The theme determines the visual appearance of the component.
7667
+ */
7668
+ "theme"?: "ios" | "md" | "ionic";
6677
7669
  }
6678
7670
  interface IonNote {
6679
7671
  /**
@@ -6681,15 +7673,23 @@ declare namespace LocalJSX {
6681
7673
  */
6682
7674
  "color"?: Color;
6683
7675
  /**
6684
- * The mode determines which platform styles to use.
7676
+ * The mode determines the platform behaviors of the component.
6685
7677
  */
6686
7678
  "mode"?: "ios" | "md";
7679
+ /**
7680
+ * The theme determines the visual appearance of the component.
7681
+ */
7682
+ "theme"?: "ios" | "md" | "ionic";
6687
7683
  }
6688
7684
  interface IonPicker {
6689
7685
  /**
6690
- * The mode determines which platform styles to use.
7686
+ * The mode determines the platform behaviors of the component.
6691
7687
  */
6692
7688
  "mode"?: "ios" | "md";
7689
+ /**
7690
+ * The theme determines the visual appearance of the component.
7691
+ */
7692
+ "theme"?: "ios" | "md" | "ionic";
6693
7693
  }
6694
7694
  interface IonPickerColumn {
6695
7695
  /**
@@ -6701,13 +7701,17 @@ declare namespace LocalJSX {
6701
7701
  */
6702
7702
  "disabled"?: boolean;
6703
7703
  /**
6704
- * The mode determines which platform styles to use.
7704
+ * The mode determines the platform behaviors of the component.
6705
7705
  */
6706
7706
  "mode"?: "ios" | "md";
6707
7707
  /**
6708
7708
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
6709
7709
  */
6710
7710
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
7711
+ /**
7712
+ * The theme determines the visual appearance of the component.
7713
+ */
7714
+ "theme"?: "ios" | "md" | "ionic";
6711
7715
  /**
6712
7716
  * The selected option in the picker.
6713
7717
  */
@@ -6722,6 +7726,14 @@ declare namespace LocalJSX {
6722
7726
  * If `true`, the user cannot interact with the picker column option.
6723
7727
  */
6724
7728
  "disabled"?: boolean;
7729
+ /**
7730
+ * The mode determines the platform behaviors of the component.
7731
+ */
7732
+ "mode"?: "ios" | "md";
7733
+ /**
7734
+ * The theme determines the visual appearance of the component.
7735
+ */
7736
+ "theme"?: "ios" | "md" | "ionic";
6725
7737
  /**
6726
7738
  * The text value of the option.
6727
7739
  */
@@ -6773,7 +7785,7 @@ declare namespace LocalJSX {
6773
7785
  */
6774
7786
  "leaveAnimation"?: AnimationBuilder;
6775
7787
  /**
6776
- * The mode determines which platform styles to use.
7788
+ * The mode determines the platform behaviors of the component.
6777
7789
  */
6778
7790
  "mode"?: "ios" | "md";
6779
7791
  /**
@@ -6812,6 +7824,10 @@ declare namespace LocalJSX {
6812
7824
  * If `true`, a backdrop will be displayed behind the picker.
6813
7825
  */
6814
7826
  "showBackdrop"?: boolean;
7827
+ /**
7828
+ * The theme determines the visual appearance of the component.
7829
+ */
7830
+ "theme"?: "ios" | "md" | "ionic";
6815
7831
  /**
6816
7832
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
6817
7833
  */
@@ -6825,7 +7841,7 @@ declare namespace LocalJSX {
6825
7841
  }
6826
7842
  interface IonPopover {
6827
7843
  /**
6828
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
7844
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
6829
7845
  */
6830
7846
  "alignment"?: PositionAlign;
6831
7847
  /**
@@ -6833,7 +7849,7 @@ declare namespace LocalJSX {
6833
7849
  */
6834
7850
  "animated"?: boolean;
6835
7851
  /**
6836
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7852
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
6837
7853
  */
6838
7854
  "arrow"?: boolean;
6839
7855
  /**
@@ -6885,7 +7901,7 @@ declare namespace LocalJSX {
6885
7901
  */
6886
7902
  "leaveAnimation"?: AnimationBuilder;
6887
7903
  /**
6888
- * The mode determines which platform styles to use.
7904
+ * The mode determines the platform behaviors of the component.
6889
7905
  */
6890
7906
  "mode"?: "ios" | "md";
6891
7907
  /**
@@ -6937,7 +7953,11 @@ declare namespace LocalJSX {
6937
7953
  */
6938
7954
  "size"?: PopoverSize;
6939
7955
  /**
6940
- * 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).
7956
+ * The theme determines the visual appearance of the component.
7957
+ */
7958
+ "theme"?: "ios" | "md" | "ionic";
7959
+ /**
7960
+ * 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).
6941
7961
  */
6942
7962
  "translucent"?: boolean;
6943
7963
  /**
@@ -6959,13 +7979,21 @@ declare namespace LocalJSX {
6959
7979
  */
6960
7980
  "color"?: Color;
6961
7981
  /**
6962
- * The mode determines which platform styles to use.
7982
+ * The mode determines the platform behaviors of the component.
6963
7983
  */
6964
7984
  "mode"?: "ios" | "md";
6965
7985
  /**
6966
7986
  * If true, reverse the progress bar direction.
6967
7987
  */
6968
7988
  "reversed"?: boolean;
7989
+ /**
7990
+ * Set to `"round"` for a progress bar with rounded corners, or `"rectangular"` for a progress bar without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
7991
+ */
7992
+ "shape"?: 'round' | 'rectangular';
7993
+ /**
7994
+ * The theme determines the visual appearance of the component.
7995
+ */
7996
+ "theme"?: "ios" | "md" | "ionic";
6969
7997
  /**
6970
7998
  * 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).
6971
7999
  */
@@ -6997,7 +8025,7 @@ declare namespace LocalJSX {
6997
8025
  */
6998
8026
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6999
8027
  /**
7000
- * The mode determines which platform styles to use.
8028
+ * The mode determines the platform behaviors of the component.
7001
8029
  */
7002
8030
  "mode"?: "ios" | "md";
7003
8031
  /**
@@ -7012,6 +8040,10 @@ declare namespace LocalJSX {
7012
8040
  * Emitted when the radio button has focus.
7013
8041
  */
7014
8042
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
8043
+ /**
8044
+ * The theme determines the visual appearance of the component.
8045
+ */
8046
+ "theme"?: "ios" | "md" | "ionic";
7015
8047
  /**
7016
8048
  * the value of the radio.
7017
8049
  */
@@ -7034,6 +8066,10 @@ declare namespace LocalJSX {
7034
8066
  * The helper text to display at the top of the radio group.
7035
8067
  */
7036
8068
  "helperText"?: string;
8069
+ /**
8070
+ * The mode determines the platform behaviors of the component.
8071
+ */
8072
+ "mode"?: "ios" | "md";
7037
8073
  /**
7038
8074
  * The name of the control, which is submitted with the form data.
7039
8075
  */
@@ -7042,6 +8078,10 @@ declare namespace LocalJSX {
7042
8078
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7043
8079
  */
7044
8080
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
8081
+ /**
8082
+ * The theme determines the visual appearance of the component.
8083
+ */
8084
+ "theme"?: "ios" | "md" | "ionic";
7045
8085
  /**
7046
8086
  * the value of the radio group.
7047
8087
  */
@@ -7085,7 +8125,7 @@ declare namespace LocalJSX {
7085
8125
  */
7086
8126
  "min"?: number;
7087
8127
  /**
7088
- * The mode determines which platform styles to use.
8128
+ * The mode determines the platform behaviors of the component.
7089
8129
  */
7090
8130
  "mode"?: "ios" | "md";
7091
8131
  /**
@@ -7132,6 +8172,10 @@ declare namespace LocalJSX {
7132
8172
  * Specifies the value granularity.
7133
8173
  */
7134
8174
  "step"?: number;
8175
+ /**
8176
+ * The theme determines the visual appearance of the component.
8177
+ */
8178
+ "theme"?: "ios" | "md" | "ionic";
7135
8179
  /**
7136
8180
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7137
8181
  */
@@ -7151,7 +8195,7 @@ declare namespace LocalJSX {
7151
8195
  */
7152
8196
  "disabled"?: boolean;
7153
8197
  /**
7154
- * The mode determines which platform styles to use.
8198
+ * The mode determines the platform behaviors of the component.
7155
8199
  */
7156
8200
  "mode"?: "ios" | "md";
7157
8201
  /**
@@ -7182,8 +8226,16 @@ declare namespace LocalJSX {
7182
8226
  * 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.
7183
8227
  */
7184
8228
  "snapbackDuration"?: string;
8229
+ /**
8230
+ * The theme determines the visual appearance of the component.
8231
+ */
8232
+ "theme"?: "ios" | "md" | "ionic";
7185
8233
  }
7186
8234
  interface IonRefresherContent {
8235
+ /**
8236
+ * The mode determines the platform behaviors of the component.
8237
+ */
8238
+ "mode"?: "ios" | "md";
7187
8239
  /**
7188
8240
  * 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.
7189
8241
  */
@@ -7200,20 +8252,48 @@ declare namespace LocalJSX {
7200
8252
  * 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.
7201
8253
  */
7202
8254
  "refreshingText"?: string | IonicSafeString;
8255
+ /**
8256
+ * The theme determines the visual appearance of the component.
8257
+ */
8258
+ "theme"?: "ios" | "md" | "ionic";
7203
8259
  }
7204
8260
  interface IonReorder {
8261
+ /**
8262
+ * The mode determines the platform behaviors of the component.
8263
+ */
8264
+ "mode"?: "ios" | "md";
8265
+ /**
8266
+ * The theme determines the visual appearance of the component.
8267
+ */
8268
+ "theme"?: "ios" | "md" | "ionic";
7205
8269
  }
7206
8270
  interface IonReorderGroup {
7207
8271
  /**
7208
8272
  * If `true`, the reorder will be hidden.
7209
8273
  */
7210
8274
  "disabled"?: boolean;
8275
+ /**
8276
+ * The mode determines the platform behaviors of the component.
8277
+ */
8278
+ "mode"?: "ios" | "md";
7211
8279
  /**
7212
8280
  * 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.
7213
8281
  */
7214
8282
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
8283
+ /**
8284
+ * The theme determines the visual appearance of the component.
8285
+ */
8286
+ "theme"?: "ios" | "md" | "ionic";
7215
8287
  }
7216
8288
  interface IonRippleEffect {
8289
+ /**
8290
+ * The mode determines the platform behaviors of the component.
8291
+ */
8292
+ "mode"?: "ios" | "md";
8293
+ /**
8294
+ * The theme determines the visual appearance of the component.
8295
+ */
8296
+ "theme"?: "ios" | "md" | "ionic";
7217
8297
  /**
7218
8298
  * 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.
7219
8299
  */
@@ -7236,10 +8316,18 @@ declare namespace LocalJSX {
7236
8316
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7237
8317
  */
7238
8318
  "componentProps"?: { [key: string]: any };
8319
+ /**
8320
+ * The mode determines the platform behaviors of the component.
8321
+ */
8322
+ "mode"?: "ios" | "md";
7239
8323
  /**
7240
8324
  * Used internally by `ion-router` to know when this route did change.
7241
8325
  */
7242
8326
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
8327
+ /**
8328
+ * The theme determines the visual appearance of the component.
8329
+ */
8330
+ "theme"?: "ios" | "md" | "ionic";
7243
8331
  /**
7244
8332
  * 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.
7245
8333
  */
@@ -7260,6 +8348,10 @@ declare namespace LocalJSX {
7260
8348
  "to": string | undefined | null;
7261
8349
  }
7262
8350
  interface IonRouter {
8351
+ /**
8352
+ * The mode determines the platform behaviors of the component.
8353
+ */
8354
+ "mode"?: "ios" | "md";
7263
8355
  /**
7264
8356
  * Emitted when the route had changed
7265
8357
  */
@@ -7272,6 +8364,10 @@ declare namespace LocalJSX {
7272
8364
  * 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.
7273
8365
  */
7274
8366
  "root"?: string;
8367
+ /**
8368
+ * The theme determines the visual appearance of the component.
8369
+ */
8370
+ "theme"?: "ios" | "md" | "ionic";
7275
8371
  /**
7276
8372
  * 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.
7277
8373
  */
@@ -7286,6 +8382,10 @@ declare namespace LocalJSX {
7286
8382
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
7287
8383
  */
7288
8384
  "href"?: string | undefined;
8385
+ /**
8386
+ * The mode determines the platform behaviors of the component.
8387
+ */
8388
+ "mode"?: "ios" | "md";
7289
8389
  /**
7290
8390
  * 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).
7291
8391
  */
@@ -7302,6 +8402,10 @@ declare namespace LocalJSX {
7302
8402
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7303
8403
  */
7304
8404
  "target"?: string | undefined;
8405
+ /**
8406
+ * The theme determines the visual appearance of the component.
8407
+ */
8408
+ "theme"?: "ios" | "md" | "ionic";
7305
8409
  }
7306
8410
  interface IonRouterOutlet {
7307
8411
  /**
@@ -7313,11 +8417,23 @@ declare namespace LocalJSX {
7313
8417
  */
7314
8418
  "animation"?: AnimationBuilder;
7315
8419
  /**
7316
- * The mode determines which platform styles to use.
8420
+ * The mode determines the platform behaviors of the component.
7317
8421
  */
7318
8422
  "mode"?: "ios" | "md";
8423
+ /**
8424
+ * The theme determines the visual appearance of the component.
8425
+ */
8426
+ "theme"?: "ios" | "md" | "ionic";
7319
8427
  }
7320
8428
  interface IonRow {
8429
+ /**
8430
+ * The mode determines the platform behaviors of the component.
8431
+ */
8432
+ "mode"?: "ios" | "md";
8433
+ /**
8434
+ * The theme determines the visual appearance of the component.
8435
+ */
8436
+ "theme"?: "ios" | "md" | "ionic";
7321
8437
  }
7322
8438
  interface IonSearchbar {
7323
8439
  /**
@@ -7337,15 +8453,15 @@ declare namespace LocalJSX {
7337
8453
  */
7338
8454
  "autocorrect"?: 'on' | 'off';
7339
8455
  /**
7340
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8456
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
7341
8457
  */
7342
8458
  "cancelButtonIcon"?: string;
7343
8459
  /**
7344
- * Set the the cancel button text. Only applies to `ios` mode.
8460
+ * Set the cancel button text. Only available when the theme is `"ios"`.
7345
8461
  */
7346
8462
  "cancelButtonText"?: string;
7347
8463
  /**
7348
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
8464
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
7349
8465
  */
7350
8466
  "clearIcon"?: string;
7351
8467
  /**
@@ -7377,7 +8493,7 @@ declare namespace LocalJSX {
7377
8493
  */
7378
8494
  "minlength"?: number;
7379
8495
  /**
7380
- * The mode determines which platform styles to use.
8496
+ * The mode determines the platform behaviors of the component.
7381
8497
  */
7382
8498
  "mode"?: "ios" | "md";
7383
8499
  /**
@@ -7413,9 +8529,13 @@ declare namespace LocalJSX {
7413
8529
  */
7414
8530
  "placeholder"?: string;
7415
8531
  /**
7416
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
8532
+ * 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. If `false`, no search icon will be displayed.
7417
8533
  */
7418
- "searchIcon"?: string;
8534
+ "searchIcon"?: string | boolean;
8535
+ /**
8536
+ * Set to `"soft"` for a searchbar with slightly rounded corners, `"round"` for a searchbar with fully rounded corners, or `"rectangular"` for a searchbar without rounded corners. Defaults to `"round"` for the ionic theme, and `undefined` for all other themes.
8537
+ */
8538
+ "shape"?: 'soft' | 'round' | 'rectangular';
7419
8539
  /**
7420
8540
  * Sets the behavior for the cancel button. Defaults to `"never"`. Setting to `"focus"` shows the cancel button on focus. Setting to `"never"` hides the cancel button. Setting to `"always"` shows the cancel button regardless of focus state.
7421
8541
  */
@@ -7424,10 +8544,18 @@ declare namespace LocalJSX {
7424
8544
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
7425
8545
  */
7426
8546
  "showClearButton"?: 'never' | 'focus' | 'always';
8547
+ /**
8548
+ * Set to `"large"` for a searchbar with an increase in height, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and `undefined` for all other themes.
8549
+ */
8550
+ "size"?: 'small' | 'medium' | 'large';
7427
8551
  /**
7428
8552
  * If `true`, enable spellcheck on the input.
7429
8553
  */
7430
8554
  "spellcheck"?: boolean;
8555
+ /**
8556
+ * The theme determines the visual appearance of the component.
8557
+ */
8558
+ "theme"?: "ios" | "md" | "ionic";
7431
8559
  /**
7432
8560
  * Set the type of the input.
7433
8561
  */
@@ -7447,7 +8575,7 @@ declare namespace LocalJSX {
7447
8575
  */
7448
8576
  "disabled"?: boolean;
7449
8577
  /**
7450
- * The mode determines which platform styles to use.
8578
+ * The mode determines the platform behaviors of the component.
7451
8579
  */
7452
8580
  "mode"?: "ios" | "md";
7453
8581
  /**
@@ -7466,6 +8594,10 @@ declare namespace LocalJSX {
7466
8594
  * If `true`, users will be able to swipe between segment buttons to activate them.
7467
8595
  */
7468
8596
  "swipeGesture"?: boolean;
8597
+ /**
8598
+ * The theme determines the visual appearance of the component.
8599
+ */
8600
+ "theme"?: "ios" | "md" | "ionic";
7469
8601
  /**
7470
8602
  * the value of the segment.
7471
8603
  */
@@ -7485,9 +8617,13 @@ declare namespace LocalJSX {
7485
8617
  */
7486
8618
  "layout"?: SegmentButtonLayout;
7487
8619
  /**
7488
- * The mode determines which platform styles to use.
8620
+ * The mode determines the platform behaviors of the component.
7489
8621
  */
7490
8622
  "mode"?: "ios" | "md";
8623
+ /**
8624
+ * The theme determines the visual appearance of the component.
8625
+ */
8626
+ "theme"?: "ios" | "md" | "ionic";
7491
8627
  /**
7492
8628
  * The type of the button.
7493
8629
  */
@@ -7531,11 +8667,11 @@ declare namespace LocalJSX {
7531
8667
  */
7532
8668
  "errorText"?: string;
7533
8669
  /**
7534
- * 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.
8670
+ * 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.
7535
8671
  */
7536
8672
  "expandedIcon"?: string;
7537
8673
  /**
7538
- * 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.
8674
+ * 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.
7539
8675
  */
7540
8676
  "fill"?: 'outline' | 'solid';
7541
8677
  /**
@@ -7563,7 +8699,7 @@ declare namespace LocalJSX {
7563
8699
  */
7564
8700
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7565
8701
  /**
7566
- * The mode determines which platform styles to use.
8702
+ * The mode determines the platform behaviors of the component.
7567
8703
  */
7568
8704
  "mode"?: "ios" | "md";
7569
8705
  /**
@@ -7611,11 +8747,19 @@ declare namespace LocalJSX {
7611
8747
  */
7612
8748
  "selectedText"?: string | null;
7613
8749
  /**
7614
- * The shape of the select. If "round" it will have an increased border radius.
8750
+ * Set to `"soft"` for a select with slightly rounded corners, `"round"` for a select with fully rounded corners, or `"rectangular"` for a select without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
7615
8751
  */
7616
- "shape"?: 'round';
8752
+ "shape"?: 'soft' | 'round' | 'rectangular';
7617
8753
  /**
7618
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
8754
+ * The size of the select. If "large" it will increase the height of the select, while "small" and "medium" provide progressively smaller heights. Defaults to `"medium"` for the ionic theme, and undefined for all other themes.
8755
+ */
8756
+ "size"?: 'small' | 'medium' | 'large';
8757
+ /**
8758
+ * The theme determines the visual appearance of the component.
8759
+ */
8760
+ "theme"?: "ios" | "md" | "ionic";
8761
+ /**
8762
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
7619
8763
  */
7620
8764
  "toggleIcon"?: string;
7621
8765
  /**
@@ -7633,6 +8777,14 @@ declare namespace LocalJSX {
7633
8777
  * 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.
7634
8778
  */
7635
8779
  "disabled"?: boolean;
8780
+ /**
8781
+ * The mode determines the platform behaviors of the component.
8782
+ */
8783
+ "mode"?: "ios" | "md";
8784
+ /**
8785
+ * The theme determines the visual appearance of the component.
8786
+ */
8787
+ "theme"?: "ios" | "md" | "ionic";
7636
8788
  /**
7637
8789
  * The text value of the option.
7638
8790
  */
@@ -7647,6 +8799,10 @@ declare namespace LocalJSX {
7647
8799
  * The text content of the popover body
7648
8800
  */
7649
8801
  "message"?: string;
8802
+ /**
8803
+ * The mode determines the platform behaviors of the component.
8804
+ */
8805
+ "mode"?: "ios" | "md";
7650
8806
  /**
7651
8807
  * If true, the select accepts multiple values
7652
8808
  */
@@ -7659,12 +8815,24 @@ declare namespace LocalJSX {
7659
8815
  * The subheader text of the popover
7660
8816
  */
7661
8817
  "subHeader"?: string;
8818
+ /**
8819
+ * The theme determines the visual appearance of the component.
8820
+ */
8821
+ "theme"?: "ios" | "md" | "ionic";
7662
8822
  }
7663
8823
  interface IonSkeletonText {
7664
8824
  /**
7665
8825
  * If `true`, the skeleton text will animate.
7666
8826
  */
7667
8827
  "animated"?: boolean;
8828
+ /**
8829
+ * The mode determines the platform behaviors of the component.
8830
+ */
8831
+ "mode"?: "ios" | "md";
8832
+ /**
8833
+ * The theme determines the visual appearance of the component.
8834
+ */
8835
+ "theme"?: "ios" | "md" | "ionic";
7668
8836
  }
7669
8837
  interface IonSpinner {
7670
8838
  /**
@@ -7675,6 +8843,10 @@ declare namespace LocalJSX {
7675
8843
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
7676
8844
  */
7677
8845
  "duration"?: number;
8846
+ /**
8847
+ * The mode determines the platform behaviors of the component.
8848
+ */
8849
+ "mode"?: "ios" | "md";
7678
8850
  /**
7679
8851
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
7680
8852
  */
@@ -7683,6 +8855,14 @@ declare namespace LocalJSX {
7683
8855
  * If `true`, the spinner's animation will be paused.
7684
8856
  */
7685
8857
  "paused"?: boolean;
8858
+ /**
8859
+ * Set to `"xsmall"` for the smallest size. Set to `"small"` for a smaller size. Set to `"medium"` for a medium size. Set to `"large"` for a large size. Set to `"xlarge"` for the largest size. Defaults to `"xsmall"` for the `ionic` theme, undefined for all other themes.
8860
+ */
8861
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
8862
+ /**
8863
+ * The theme determines the visual appearance of the component.
8864
+ */
8865
+ "theme"?: "ios" | "md" | "ionic";
7686
8866
  }
7687
8867
  interface IonSplitPane {
7688
8868
  /**
@@ -7693,10 +8873,18 @@ declare namespace LocalJSX {
7693
8873
  * If `true`, the split pane will be hidden.
7694
8874
  */
7695
8875
  "disabled"?: boolean;
8876
+ /**
8877
+ * The mode determines the platform behaviors of the component.
8878
+ */
8879
+ "mode"?: "ios" | "md";
7696
8880
  /**
7697
8881
  * Expression to be called when the split-pane visibility has changed
7698
8882
  */
7699
8883
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
8884
+ /**
8885
+ * The theme determines the visual appearance of the component.
8886
+ */
8887
+ "theme"?: "ios" | "md" | "ionic";
7700
8888
  /**
7701
8889
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
7702
8890
  */
@@ -7707,10 +8895,18 @@ declare namespace LocalJSX {
7707
8895
  * The component to display inside of the tab.
7708
8896
  */
7709
8897
  "component"?: ComponentRef;
8898
+ /**
8899
+ * The mode determines the platform behaviors of the component.
8900
+ */
8901
+ "mode"?: "ios" | "md";
7710
8902
  /**
7711
8903
  * 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.
7712
8904
  */
7713
8905
  "tab": string;
8906
+ /**
8907
+ * The theme determines the visual appearance of the component.
8908
+ */
8909
+ "theme"?: "ios" | "md" | "ionic";
7714
8910
  }
7715
8911
  interface IonTabBar {
7716
8912
  /**
@@ -7718,7 +8914,11 @@ declare namespace LocalJSX {
7718
8914
  */
7719
8915
  "color"?: Color;
7720
8916
  /**
7721
- * The mode determines which platform styles to use.
8917
+ * Set to `"compact"` to display a width based on the items inside the tab bar. This value will only work for the `ionic` theme. Set to `"full"` to display a full width tab bar. Defaults to `"full"`.
8918
+ */
8919
+ "expand"?: 'compact' | 'full';
8920
+ /**
8921
+ * The mode determines the platform behaviors of the component.
7722
8922
  */
7723
8923
  "mode"?: "ios" | "md";
7724
8924
  /**
@@ -7726,7 +8926,15 @@ declare namespace LocalJSX {
7726
8926
  */
7727
8927
  "selectedTab"?: string;
7728
8928
  /**
7729
- * 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).
8929
+ * Set to `"soft"` for a tab bar with slightly rounded corners, `"round"` for a tab bar with fully rounded corners, or `"rectangular"` for a tab bar without rounded corners. Defaults to `"round"` for the `"ionic"` theme, undefined for all other themes.
8930
+ */
8931
+ "shape"?: 'soft' | 'round' | 'rectangular';
8932
+ /**
8933
+ * The theme determines the visual appearance of the component.
8934
+ */
8935
+ "theme"?: "ios" | "md" | "ionic";
8936
+ /**
8937
+ * 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).
7730
8938
  */
7731
8939
  "translucent"?: boolean;
7732
8940
  }
@@ -7748,7 +8956,7 @@ declare namespace LocalJSX {
7748
8956
  */
7749
8957
  "layout"?: TabButtonLayout;
7750
8958
  /**
7751
- * The mode determines which platform styles to use.
8959
+ * The mode determines the platform behaviors of the component.
7752
8960
  */
7753
8961
  "mode"?: "ios" | "md";
7754
8962
  /**
@@ -7759,6 +8967,10 @@ declare namespace LocalJSX {
7759
8967
  * The selected tab component
7760
8968
  */
7761
8969
  "selected"?: boolean;
8970
+ /**
8971
+ * Set to `"soft"` for a tab-button with slightly rounded corners, `"round"` for a tab-button with fully rounded corners, or `"rectangular"` for a tab-button without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
8972
+ */
8973
+ "shape"?: 'soft' | 'round' | 'rectangular';
7762
8974
  /**
7763
8975
  * 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.
7764
8976
  */
@@ -7767,8 +8979,16 @@ declare namespace LocalJSX {
7767
8979
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
7768
8980
  */
7769
8981
  "target"?: string | undefined;
8982
+ /**
8983
+ * The theme determines the visual appearance of the component.
8984
+ */
8985
+ "theme"?: "ios" | "md" | "ionic";
7770
8986
  }
7771
8987
  interface IonTabs {
8988
+ /**
8989
+ * The mode determines the platform behaviors of the component.
8990
+ */
8991
+ "mode"?: "ios" | "md";
7772
8992
  /**
7773
8993
  * Emitted when the navigation has finished transitioning to a new component.
7774
8994
  */
@@ -7777,6 +8997,10 @@ declare namespace LocalJSX {
7777
8997
  * Emitted when the navigation is about to transition to a new component.
7778
8998
  */
7779
8999
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
9000
+ /**
9001
+ * The theme determines the visual appearance of the component.
9002
+ */
9003
+ "theme"?: "ios" | "md" | "ionic";
7780
9004
  }
7781
9005
  interface IonText {
7782
9006
  /**
@@ -7784,9 +9008,13 @@ declare namespace LocalJSX {
7784
9008
  */
7785
9009
  "color"?: Color;
7786
9010
  /**
7787
- * The mode determines which platform styles to use.
9011
+ * The mode determines the platform behaviors of the component.
7788
9012
  */
7789
9013
  "mode"?: "ios" | "md";
9014
+ /**
9015
+ * The theme determines the visual appearance of the component.
9016
+ */
9017
+ "theme"?: "ios" | "md" | "ionic";
7790
9018
  }
7791
9019
  interface IonTextarea {
7792
9020
  /**
@@ -7838,7 +9066,7 @@ declare namespace LocalJSX {
7838
9066
  */
7839
9067
  "errorText"?: string;
7840
9068
  /**
7841
- * 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.
9069
+ * 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"`.
7842
9070
  */
7843
9071
  "fill"?: 'outline' | 'solid';
7844
9072
  /**
@@ -7866,7 +9094,7 @@ declare namespace LocalJSX {
7866
9094
  */
7867
9095
  "minlength"?: number;
7868
9096
  /**
7869
- * The mode determines which platform styles to use.
9097
+ * The mode determines the platform behaviors of the component.
7870
9098
  */
7871
9099
  "mode"?: "ios" | "md";
7872
9100
  /**
@@ -7906,13 +9134,21 @@ declare namespace LocalJSX {
7906
9134
  */
7907
9135
  "rows"?: number;
7908
9136
  /**
7909
- * The shape of the textarea. If "round" it will have an increased border radius.
9137
+ * Set to `"soft"` for a textarea with slightly rounded corners, `"round"` for a textarea with fully rounded corners, or `"rectangular"` for a textarea without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
7910
9138
  */
7911
- "shape"?: 'round';
9139
+ "shape"?: 'soft' | 'round' | 'rectangular';
9140
+ /**
9141
+ * The size of the textarea. If "large" it will increase the height of the textarea, while "small" and "medium" provide progressively smaller heights. The default size is "medium". This property only applies to the `"ionic"` theme.
9142
+ */
9143
+ "size"?: 'small' | 'medium' | 'large';
7912
9144
  /**
7913
9145
  * If `true`, the element will have its spelling and grammar checked.
7914
9146
  */
7915
9147
  "spellcheck"?: boolean;
9148
+ /**
9149
+ * The theme determines the visual appearance of the component.
9150
+ */
9151
+ "theme"?: "ios" | "md" | "ionic";
7916
9152
  /**
7917
9153
  * The value of the textarea.
7918
9154
  */
@@ -7923,16 +9159,32 @@ declare namespace LocalJSX {
7923
9159
  "wrap"?: 'hard' | 'soft' | 'off';
7924
9160
  }
7925
9161
  interface IonThumbnail {
9162
+ /**
9163
+ * The mode determines the platform behaviors of the component.
9164
+ */
9165
+ "mode"?: "ios" | "md";
9166
+ /**
9167
+ * The theme determines the visual appearance of the component.
9168
+ */
9169
+ "theme"?: "ios" | "md" | "ionic";
7926
9170
  }
7927
9171
  interface IonTitle {
7928
9172
  /**
7929
9173
  * 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).
7930
9174
  */
7931
9175
  "color"?: Color;
9176
+ /**
9177
+ * The mode determines the platform behaviors of the component.
9178
+ */
9179
+ "mode"?: "ios" | "md";
7932
9180
  /**
7933
9181
  * The size of the toolbar title.
7934
9182
  */
7935
9183
  "size"?: 'large' | 'small';
9184
+ /**
9185
+ * The theme determines the visual appearance of the component.
9186
+ */
9187
+ "theme"?: "ios" | "md" | "ionic";
7936
9188
  }
7937
9189
  interface IonToast {
7938
9190
  /**
@@ -7992,7 +9244,7 @@ declare namespace LocalJSX {
7992
9244
  */
7993
9245
  "message"?: string | IonicSafeString;
7994
9246
  /**
7995
- * The mode determines which platform styles to use.
9247
+ * The mode determines the platform behaviors of the component.
7996
9248
  */
7997
9249
  "mode"?: "ios" | "md";
7998
9250
  /**
@@ -8035,12 +9287,20 @@ declare namespace LocalJSX {
8035
9287
  * The element to anchor the toast's position to. Can be set as a direct reference or the ID of the element. With `position="bottom"`, the toast will sit above the chosen element. With `position="top"`, the toast will sit below the chosen element. With `position="middle"`, the value of `positionAnchor` is ignored.
8036
9288
  */
8037
9289
  "positionAnchor"?: HTMLElement | string;
9290
+ /**
9291
+ * Set to `"soft"` for a toast with slightly rounded corners, `"round"` for a toast with fully rounded corners, or `"rectangular"` for a toast without rounded corners. Defaults to `"round"` for the `ionic` theme, undefined for all other themes.
9292
+ */
9293
+ "shape"?: 'soft' | 'round' | 'rectangular';
8038
9294
  /**
8039
9295
  * If set to 'vertical', the Toast can be dismissed with a swipe gesture. The swipe direction is determined by the value of the `position` property: `top`: The Toast can be swiped up to dismiss. `bottom`: The Toast can be swiped down to dismiss. `middle`: The Toast can be swiped up or down to dismiss.
8040
9296
  */
8041
9297
  "swipeGesture"?: ToastSwipeGestureDirection;
8042
9298
  /**
8043
- * 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).
9299
+ * The theme determines the visual appearance of the component.
9300
+ */
9301
+ "theme"?: "ios" | "md" | "ionic";
9302
+ /**
9303
+ * 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).
8044
9304
  */
8045
9305
  "translucent"?: boolean;
8046
9306
  /**
@@ -8086,7 +9346,7 @@ declare namespace LocalJSX {
8086
9346
  */
8087
9347
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8088
9348
  /**
8089
- * The mode determines which platform styles to use.
9349
+ * The mode determines the platform behaviors of the component.
8090
9350
  */
8091
9351
  "mode"?: "ios" | "md";
8092
9352
  /**
@@ -8109,6 +9369,10 @@ declare namespace LocalJSX {
8109
9369
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
8110
9370
  */
8111
9371
  "required"?: boolean;
9372
+ /**
9373
+ * The theme determines the visual appearance of the component.
9374
+ */
9375
+ "theme"?: "ios" | "md" | "ionic";
8112
9376
  /**
8113
9377
  * 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>`.
8114
9378
  */
@@ -8120,9 +9384,13 @@ declare namespace LocalJSX {
8120
9384
  */
8121
9385
  "color"?: Color;
8122
9386
  /**
8123
- * The mode determines which platform styles to use.
9387
+ * The mode determines the platform behaviors of the component.
8124
9388
  */
8125
9389
  "mode"?: "ios" | "md";
9390
+ /**
9391
+ * The theme determines the visual appearance of the component.
9392
+ */
9393
+ "theme"?: "ios" | "md" | "ionic";
8126
9394
  }
8127
9395
  interface IntrinsicElements {
8128
9396
  "ion-accordion": IonAccordion;
@@ -8149,6 +9417,7 @@ declare namespace LocalJSX {
8149
9417
  "ion-content": IonContent;
8150
9418
  "ion-datetime": IonDatetime;
8151
9419
  "ion-datetime-button": IonDatetimeButton;
9420
+ "ion-divider": IonDivider;
8152
9421
  "ion-fab": IonFab;
8153
9422
  "ion-fab-button": IonFabButton;
8154
9423
  "ion-fab-list": IonFabList;
@@ -8251,6 +9520,7 @@ declare module "@stencil/core" {
8251
9520
  "ion-content": LocalJSX.IonContent & JSXBase.HTMLAttributes<HTMLIonContentElement>;
8252
9521
  "ion-datetime": LocalJSX.IonDatetime & JSXBase.HTMLAttributes<HTMLIonDatetimeElement>;
8253
9522
  "ion-datetime-button": LocalJSX.IonDatetimeButton & JSXBase.HTMLAttributes<HTMLIonDatetimeButtonElement>;
9523
+ "ion-divider": LocalJSX.IonDivider & JSXBase.HTMLAttributes<HTMLIonDividerElement>;
8254
9524
  "ion-fab": LocalJSX.IonFab & JSXBase.HTMLAttributes<HTMLIonFabElement>;
8255
9525
  "ion-fab-button": LocalJSX.IonFabButton & JSXBase.HTMLAttributes<HTMLIonFabButtonElement>;
8256
9526
  "ion-fab-list": LocalJSX.IonFabList & JSXBase.HTMLAttributes<HTMLIonFabListElement>;