@ionic/core 8.6.5-dev.11752329407.10f7fc80 → 8.6.5-dev.11752589924.176e0985

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 (1085) hide show
  1. package/components/action-sheet.js +13 -9
  2. package/components/alert.js +14 -11
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +9 -6
  5. package/components/button.js +41 -10
  6. package/components/buttons.js +11 -8
  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 +31 -12
  12. package/components/content.js +14 -12
  13. package/components/data.js +5 -5
  14. package/components/focus-visible.js +23 -1
  15. package/components/framework-delegate.js +3 -1
  16. package/components/header.js +28 -16
  17. package/components/helpers.js +42 -3
  18. package/components/index5.js +8 -8
  19. package/components/index6.js +3 -3
  20. package/components/index7.js +111 -150
  21. package/components/index8.js +150 -111
  22. package/components/input-shims.js +2 -2
  23. package/components/input.utils.js +1 -1
  24. package/components/ion-accordion-group.js +23 -5
  25. package/components/ion-accordion.js +32 -21
  26. package/components/ion-app.js +12 -77
  27. package/components/ion-avatar.js +58 -5
  28. package/components/ion-back-button.js +27 -19
  29. package/components/ion-badge.js +73 -9
  30. package/components/ion-breadcrumb.js +43 -10
  31. package/components/ion-breadcrumbs.js +8 -5
  32. package/components/ion-card-content.js +10 -7
  33. package/components/ion-card-header.js +9 -6
  34. package/components/ion-card-subtitle.js +8 -5
  35. package/components/ion-card-title.js +8 -5
  36. package/components/ion-card.js +21 -9
  37. package/components/ion-chip.js +53 -8
  38. package/components/ion-col.js +5 -5
  39. package/components/ion-datetime-button.js +8 -5
  40. package/components/ion-datetime.js +98 -21
  41. package/components/ion-divider.d.ts +11 -0
  42. package/components/ion-divider.js +70 -0
  43. package/components/ion-fab-button.js +31 -15
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -13
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +11 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-otp.js +56 -106
  52. package/components/ion-input-password-toggle.js +51 -13
  53. package/components/ion-input.js +120 -28
  54. package/components/ion-item-divider.js +8 -5
  55. package/components/ion-item-group.js +8 -5
  56. package/components/ion-item-option.js +36 -9
  57. package/components/ion-item-options.js +10 -7
  58. package/components/ion-item-sliding.js +5 -5
  59. package/components/ion-loading.js +12 -9
  60. package/components/ion-menu-button.js +26 -10
  61. package/components/ion-menu-toggle.js +5 -5
  62. package/components/ion-menu.js +10 -8
  63. package/components/ion-nav-link.js +1 -1
  64. package/components/ion-nav.js +7 -5
  65. package/components/ion-note.js +8 -5
  66. package/components/ion-picker-legacy.js +7 -7
  67. package/components/ion-progress-bar.js +25 -7
  68. package/components/ion-range.js +12 -9
  69. package/components/ion-refresher-content.js +23 -8
  70. package/components/ion-refresher.js +10 -7
  71. package/components/ion-reorder-group.js +5 -5
  72. package/components/ion-reorder.js +30 -5
  73. package/components/ion-router-link.js +6 -6
  74. package/components/ion-router-outlet.js +4 -4
  75. package/components/ion-row.js +5 -2
  76. package/components/ion-searchbar.js +137 -23
  77. package/components/ion-segment-button.js +10 -7
  78. package/components/ion-segment-content.js +1 -1
  79. package/components/ion-segment-view.js +5 -2
  80. package/components/ion-segment.js +10 -7
  81. package/components/ion-select-option.js +5 -2
  82. package/components/ion-select.js +117 -33
  83. package/components/ion-skeleton-text.js +5 -5
  84. package/components/ion-split-pane.js +11 -8
  85. package/components/ion-tab-bar.js +39 -9
  86. package/components/ion-tab-button.js +25 -7
  87. package/components/ion-tab.js +2 -2
  88. package/components/ion-tabs.js +2 -2
  89. package/components/ion-text.js +5 -5
  90. package/components/ion-textarea.js +52 -11
  91. package/components/ion-thumbnail.js +5 -2
  92. package/components/ion-toast.js +37 -12
  93. package/components/ion-toggle.js +74 -17
  94. package/components/ionic-global.js +349 -15
  95. package/components/ios.transition.js +1 -0
  96. package/components/item.js +39 -14
  97. package/components/keyboard-controller.js +4 -2
  98. package/components/label.js +8 -5
  99. package/components/list-header.js +10 -7
  100. package/components/list.js +27 -6
  101. package/components/list2.js +6 -0
  102. package/components/modal.js +48 -105
  103. package/components/notch-controller.js +1 -1
  104. package/components/overlays.js +3 -4
  105. package/components/picker-column-option.js +8 -5
  106. package/components/picker-column.js +7 -8
  107. package/components/picker-column2.js +4 -4
  108. package/components/picker.js +7 -4
  109. package/components/popover.js +12 -9
  110. package/components/radio-group.js +10 -5
  111. package/components/radio.js +11 -8
  112. package/components/ripple-effect.js +15 -7
  113. package/components/select-modal.js +4 -4
  114. package/components/select-popover.js +8 -2
  115. package/components/spinner.js +31 -8
  116. package/components/status-tap.js +1 -1
  117. package/components/title.js +10 -7
  118. package/components/toolbar.js +153 -9
  119. package/components/x.js +6 -0
  120. package/css/core.css +1 -1
  121. package/css/core.css.map +1 -1
  122. package/css/display.css +1 -1
  123. package/css/display.css.map +1 -1
  124. package/css/flex-utils.css +1 -1
  125. package/css/flex-utils.css.map +1 -1
  126. package/css/float-elements.css.map +1 -1
  127. package/css/global.bundle.css.map +1 -1
  128. package/css/ionic/bundle.ionic.css +1 -0
  129. package/css/ionic/bundle.ionic.css.map +1 -0
  130. package/css/ionic/core.ionic.css +1 -0
  131. package/css/ionic/core.ionic.css.map +1 -0
  132. package/css/ionic/global.bundle.ionic.css +1 -0
  133. package/css/ionic/global.bundle.ionic.css.map +1 -0
  134. package/css/ionic/ionic-swiper.ionic.css +1 -0
  135. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  136. package/css/ionic/link.ionic.css +1 -0
  137. package/css/ionic/link.ionic.css.map +1 -0
  138. package/css/ionic/structure.ionic.css +1 -0
  139. package/css/ionic/structure.ionic.css.map +1 -0
  140. package/css/ionic/typography.ionic.css +1 -0
  141. package/css/ionic/typography.ionic.css.map +1 -0
  142. package/css/ionic/utils.bundle.ionic.css +1 -0
  143. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  144. package/css/ionic-swiper.css +1 -1
  145. package/css/ionic-swiper.css.map +1 -1
  146. package/css/ionic.bundle.css +1 -1
  147. package/css/ionic.bundle.css.map +1 -1
  148. package/css/normalize.css.map +1 -1
  149. package/css/padding.css.map +1 -1
  150. package/css/palettes/dark.always.css.map +1 -1
  151. package/css/palettes/dark.class.css.map +1 -1
  152. package/css/palettes/dark.system.css.map +1 -1
  153. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  154. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  155. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  156. package/css/palettes/high-contrast.always.css.map +1 -1
  157. package/css/palettes/high-contrast.class.css.map +1 -1
  158. package/css/palettes/high-contrast.system.css.map +1 -1
  159. package/css/structure.css.map +1 -1
  160. package/css/text-alignment.css.map +1 -1
  161. package/css/text-transformation.css.map +1 -1
  162. package/css/typography.css.map +1 -1
  163. package/css/utils.bundle.css +1 -1
  164. package/css/utils.bundle.css.map +1 -1
  165. package/dist/cjs/{animation-0T7gKwOt.js → animation-Bcz4qmJk.js} +2 -3
  166. package/dist/cjs/{button-active-C-4ud7Ht.js → button-active-1nO6qpCH.js} +2 -2
  167. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CzFst28-.js} +1 -1
  168. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  169. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  170. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  171. package/dist/cjs/{config-U7OAuj53.js → config-DGKt4XfG.js} +1 -1
  172. package/dist/cjs/{data-DRqa6oM4.js → data-B3i-krcw.js} +6 -6
  173. package/dist/{esm/focus-visible-BmVRXR1y.js → cjs/focus-visible-BIj-I3-C.js} +27 -1
  174. package/dist/cjs/{framework-delegate-C7sIJyT5.js → framework-delegate-DfEY5uyC.js} +4 -2
  175. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-DbqPcCc9.js} +1 -1
  176. package/dist/cjs/{helpers-BITAzJfi.js → helpers-DmAvmm2T.js} +42 -3
  177. package/dist/cjs/{index-CVa6JE57.js → index-CaZ3uzAD.js} +2 -2
  178. package/dist/cjs/{index-DODXXb_r.js → index-CmckMMX1.js} +352 -12
  179. package/dist/cjs/{index-CPbAsnJK.js → index-DPBLiXfW.js} +2 -2
  180. package/dist/cjs/{index-CxfLS2mX.js → index-DcPe_YcG.js} +12 -12
  181. package/dist/cjs/{index-y0QaNtCi.js → index-DxVhwe3d.js} +4 -4
  182. package/dist/cjs/{index-BDBT0u4l.js → index-YEjC0pvJ.js} +3 -3
  183. package/dist/cjs/index.cjs.js +11 -12
  184. package/dist/cjs/{input-shims-D1Mfgd4s.js → input-shims-BwdlNkON.js} +6 -6
  185. package/dist/cjs/{input.utils-DSoBEyUu.js → input.utils-CfjyQhpu.js} +3 -4
  186. package/dist/cjs/ion-accordion_2.cjs.entry.js +56 -27
  187. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
  188. package/dist/cjs/ion-alert.cjs.entry.js +23 -21
  189. package/dist/cjs/ion-app_8.cjs.entry.js +243 -144
  190. package/dist/cjs/ion-avatar_3.cjs.entry.js +123 -11
  191. package/dist/cjs/ion-back-button.cjs.entry.js +29 -20
  192. package/dist/cjs/ion-backdrop.cjs.entry.js +9 -6
  193. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +52 -16
  194. package/dist/cjs/ion-button_2.cjs.entry.js +43 -11
  195. package/dist/cjs/ion-card_5.cjs.entry.js +53 -29
  196. package/dist/cjs/ion-checkbox.cjs.entry.js +31 -13
  197. package/dist/cjs/ion-chip.cjs.entry.js +48 -7
  198. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  199. package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -7
  200. package/dist/cjs/ion-datetime_3.cjs.entry.js +114 -39
  201. package/dist/cjs/ion-divider.cjs.entry.js +50 -0
  202. package/dist/cjs/ion-fab_3.cjs.entry.js +42 -26
  203. package/dist/cjs/ion-img.cjs.entry.js +7 -3
  204. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +18 -14
  205. package/dist/cjs/ion-input-otp.cjs.entry.js +58 -106
  206. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +51 -13
  207. package/dist/cjs/ion-input.cjs.entry.js +121 -31
  208. package/dist/cjs/ion-item-option_3.cjs.entry.js +48 -19
  209. package/dist/cjs/ion-item_8.cjs.entry.js +106 -46
  210. package/dist/cjs/ion-loading.cjs.entry.js +18 -16
  211. package/dist/cjs/ion-menu_3.cjs.entry.js +45 -27
  212. package/dist/cjs/ion-modal.cjs.entry.js +83 -141
  213. package/dist/cjs/ion-nav_2.cjs.entry.js +13 -10
  214. package/dist/cjs/ion-picker-column-option.cjs.entry.js +10 -6
  215. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  216. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  217. package/dist/cjs/ion-popover.cjs.entry.js +18 -16
  218. package/dist/cjs/ion-progress-bar.cjs.entry.js +25 -7
  219. package/dist/cjs/ion-radio_2.cjs.entry.js +22 -13
  220. package/dist/cjs/ion-range.cjs.entry.js +14 -10
  221. package/dist/cjs/ion-refresher_2.cjs.entry.js +38 -20
  222. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  223. package/dist/cjs/ion-ripple-effect.cjs.entry.js +14 -6
  224. package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
  225. package/dist/cjs/ion-searchbar.cjs.entry.js +135 -22
  226. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  227. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  228. package/dist/cjs/ion-segment_2.cjs.entry.js +21 -14
  229. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -9
  230. package/dist/cjs/ion-select_3.cjs.entry.js +130 -39
  231. package/dist/cjs/ion-spinner.cjs.entry.js +28 -6
  232. package/dist/cjs/ion-split-pane.cjs.entry.js +11 -8
  233. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +65 -20
  234. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  235. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  236. package/dist/cjs/ion-textarea.cjs.entry.js +55 -15
  237. package/dist/cjs/ion-toast.cjs.entry.js +65 -42
  238. package/dist/cjs/ion-toggle.cjs.entry.js +79 -22
  239. package/dist/cjs/ionic.cjs.js +2 -2
  240. package/dist/cjs/{ios.transition-baEy2tr4.js → ios.transition-BMRClUxZ.js} +6 -5
  241. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Chl5cusY.js} +1 -1
  242. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-yLvXRMuh.js} +4 -3
  243. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-nXDIskl9.js} +3 -3
  244. package/dist/cjs/list-a-7GSA6K.js +8 -0
  245. package/dist/cjs/loader.cjs.js +2 -2
  246. package/dist/cjs/{md.transition-Bvc-JrM5.js → md.transition-D2ZL4jgW.js} +5 -5
  247. package/dist/cjs/{notch-controller-BAbqGXRi.js → notch-controller-S50JyZJs.js} +2 -2
  248. package/dist/cjs/{overlays-DRDumz2b.js → overlays-DbrifhWu.js} +13 -14
  249. package/dist/cjs/{status-tap-Db3WeCkO.js → status-tap-DMaRrHIS.js} +4 -3
  250. package/dist/cjs/{swipe-back-D_VN6H9r.js → swipe-back-CEVlQT7C.js} +3 -2
  251. package/dist/cjs/x-BTF99yFH.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 +36 -26
  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 +44 -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 +15 -11
  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 +16 -13
  266. package/dist/collection/components/alert/alert.md.css +19 -1
  267. package/dist/collection/components/app/app.js +15 -78
  268. package/dist/collection/components/avatar/avatar.ionic.css +365 -0
  269. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  270. package/dist/collection/components/avatar/avatar.js +120 -4
  271. package/dist/collection/components/avatar/avatar.md.css +51 -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 +111 -0
  276. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  277. package/dist/collection/components/backdrop/backdrop.js +12 -6
  278. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  279. package/dist/collection/components/badge/badge.ionic.css +277 -0
  280. package/dist/collection/components/badge/badge.ios.css +139 -12
  281. package/dist/collection/components/badge/badge.js +145 -9
  282. package/dist/collection/components/badge/badge.md.css +123 -12
  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 +622 -0
  290. package/dist/collection/components/button/button.ios.css +135 -46
  291. package/dist/collection/components/button/button.js +48 -17
  292. package/dist/collection/components/button/button.md.css +126 -50
  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 +15 -9
  296. package/dist/collection/components/buttons/buttons.md.css +55 -3
  297. package/dist/collection/components/card/card.ionic.css +146 -0
  298. package/dist/collection/components/card/card.ios.css +65 -14
  299. package/dist/collection/components/card/card.js +41 -10
  300. package/dist/collection/components/card/card.md.css +65 -14
  301. package/dist/collection/components/card-content/card-content.ionic.css +94 -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 +13 -10
  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 +527 -0
  317. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  318. package/dist/collection/components/checkbox/checkbox.js +70 -14
  319. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  320. package/dist/collection/components/chip/chip.ionic.css +230 -0
  321. package/dist/collection/components/chip/chip.ios.css +67 -14
  322. package/dist/collection/components/chip/chip.js +108 -8
  323. package/dist/collection/components/chip/chip.md.css +67 -14
  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 +699 -0
  329. package/dist/collection/components/datetime/datetime.ios.css +242 -86
  330. package/dist/collection/components/datetime/datetime.js +98 -20
  331. package/dist/collection/components/datetime/datetime.md.css +242 -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 +94 -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 -21
  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 +21 -16
  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 +100 -0
  353. package/dist/collection/components/header/header.ios.css +25 -10
  354. package/dist/collection/components/header/header.js +49 -18
  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 +883 -0
  362. package/dist/collection/components/input/input.ios.css +223 -140
  363. package/dist/collection/components/input/input.js +149 -38
  364. package/dist/collection/components/input/input.md.css +194 -213
  365. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  366. package/dist/collection/components/input-otp/input-otp.ios.css +106 -60
  367. package/dist/collection/components/input-otp/input-otp.js +55 -106
  368. package/dist/collection/components/input-otp/input-otp.md.css +106 -60
  369. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +80 -0
  370. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  371. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  372. package/dist/collection/components/item/item.ionic.css +502 -0
  373. package/dist/collection/components/item/item.ios.css +109 -69
  374. package/dist/collection/components/item/item.js +43 -19
  375. package/dist/collection/components/item/item.md.css +120 -68
  376. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  377. package/dist/collection/components/item-divider/item-divider.js +11 -8
  378. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  379. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  380. package/dist/collection/components/item-group/item-group.js +13 -7
  381. package/dist/collection/components/item-group/item-group.md.css +12 -0
  382. package/dist/collection/components/item-option/item-option.ionic.css +280 -0
  383. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  384. package/dist/collection/components/item-option/item-option.js +73 -9
  385. package/dist/collection/components/item-option/item-option.md.css +136 -29
  386. package/dist/collection/components/item-options/item-options.ionic.css +223 -0
  387. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  388. package/dist/collection/components/item-options/item-options.js +13 -7
  389. package/dist/collection/components/item-options/item-options.md.css +77 -34
  390. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  391. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  392. package/dist/collection/components/label/label.ios.css +18 -0
  393. package/dist/collection/components/label/label.js +11 -8
  394. package/dist/collection/components/label/label.md.css +18 -0
  395. package/dist/collection/components/list/list.ionic.css +214 -0
  396. package/dist/collection/components/list/list.ios.css +54 -14
  397. package/dist/collection/components/list/list.js +48 -9
  398. package/dist/collection/components/list/list.md.css +56 -16
  399. package/dist/collection/components/list-header/list-header.ionic.css +192 -0
  400. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  401. package/dist/collection/components/list-header/list-header.js +11 -8
  402. package/dist/collection/components/list-header/list-header.md.css +82 -38
  403. package/dist/collection/components/loading/loading.ios.css +13 -1
  404. package/dist/collection/components/loading/loading.js +14 -11
  405. package/dist/collection/components/loading/loading.md.css +13 -1
  406. package/dist/collection/components/menu/menu.ios.css +15 -3
  407. package/dist/collection/components/menu/menu.js +12 -7
  408. package/dist/collection/components/menu/menu.md.css +15 -3
  409. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  410. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  411. package/dist/collection/components/menu-button/menu-button.js +26 -10
  412. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  413. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  414. package/dist/collection/components/modal/animations/sheet.js +8 -2
  415. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  416. package/dist/collection/components/modal/modal.ionic.css +243 -0
  417. package/dist/collection/components/modal/modal.ios.css +174 -70
  418. package/dist/collection/components/modal/modal.js +48 -96
  419. package/dist/collection/components/modal/modal.md.css +174 -70
  420. package/dist/collection/components/nav/nav.css +7 -1
  421. package/dist/collection/components/nav/nav.js +11 -5
  422. package/dist/collection/components/nav-link/nav-link.js +5 -1
  423. package/dist/collection/components/note/note.ios.css +12 -0
  424. package/dist/collection/components/note/note.js +11 -8
  425. package/dist/collection/components/note/note.md.css +12 -0
  426. package/dist/collection/components/picker/picker.ios.css +15 -3
  427. package/dist/collection/components/picker/picker.js +8 -5
  428. package/dist/collection/components/picker/picker.md.css +15 -3
  429. package/dist/collection/components/picker-column/picker-column.css +9 -2
  430. package/dist/collection/components/picker-column/picker-column.js +8 -7
  431. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  432. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  433. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  434. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  435. package/dist/collection/components/picker-legacy/picker.js +7 -6
  436. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  437. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  438. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  439. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  440. package/dist/collection/components/popover/popover.ios.css +13 -1
  441. package/dist/collection/components/popover/popover.js +17 -14
  442. package/dist/collection/components/popover/popover.md.css +13 -1
  443. package/dist/collection/components/progress-bar/progress-bar.ionic.css +289 -0
  444. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  445. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  446. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  447. package/dist/collection/components/radio/radio.ionic.css +424 -0
  448. package/dist/collection/components/radio/radio.ios.css +134 -91
  449. package/dist/collection/components/radio/radio.js +12 -9
  450. package/dist/collection/components/radio/radio.md.css +134 -91
  451. package/dist/collection/components/radio-group/radio-group.ionic.css +127 -0
  452. package/dist/collection/components/radio-group/radio-group.ios.css +42 -18
  453. package/dist/collection/components/radio-group/radio-group.js +13 -5
  454. package/dist/collection/components/radio-group/radio-group.md.css +42 -18
  455. package/dist/collection/components/range/range.ionic.css +555 -0
  456. package/dist/collection/components/range/range.ios.css +128 -85
  457. package/dist/collection/components/range/range.js +12 -9
  458. package/dist/collection/components/range/range.md.css +128 -85
  459. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  460. package/dist/collection/components/refresher/refresher.js +11 -8
  461. package/dist/collection/components/refresher/refresher.md.css +15 -2
  462. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  463. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  464. package/dist/collection/components/reorder/reorder.js +33 -6
  465. package/dist/collection/components/reorder/reorder.md.css +6 -0
  466. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  467. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  468. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  469. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +217 -0
  470. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  471. package/dist/collection/components/route/route.js +4 -0
  472. package/dist/collection/components/router/router.js +4 -0
  473. package/dist/collection/components/router-link/router-link.css +8 -2
  474. package/dist/collection/components/router-link/router-link.js +9 -5
  475. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  476. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  477. package/dist/collection/components/row/row.css +12 -0
  478. package/dist/collection/components/row/row.js +9 -2
  479. package/dist/collection/components/searchbar/searchbar.ionic.css +628 -0
  480. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  481. package/dist/collection/components/searchbar/searchbar.js +181 -34
  482. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  483. package/dist/collection/components/segment/segment.ionic.css +117 -0
  484. package/dist/collection/components/segment/segment.ios.css +45 -2
  485. package/dist/collection/components/segment/segment.js +11 -8
  486. package/dist/collection/components/segment/segment.md.css +45 -2
  487. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  488. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  489. package/dist/collection/components/segment-button/segment-button.js +11 -8
  490. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  491. package/dist/collection/components/segment-content/segment-content.js +1 -1
  492. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  493. package/dist/collection/components/segment-view/segment-view.js +6 -4
  494. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  495. package/dist/collection/components/select/select.ionic.css +765 -0
  496. package/dist/collection/components/select/select.ios.css +315 -176
  497. package/dist/collection/components/select/select.js +157 -54
  498. package/dist/collection/components/select/select.md.css +331 -178
  499. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  500. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  501. package/dist/collection/components/select-modal/select-modal.js +3 -3
  502. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  503. package/dist/collection/components/select-option/select-option.js +9 -2
  504. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  505. package/dist/collection/components/select-popover/select-popover.js +12 -4
  506. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  507. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  508. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  509. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +79 -10
  510. package/dist/collection/components/spinner/spinner.js +47 -6
  511. package/dist/collection/components/spinner/spinner.native.css +198 -0
  512. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  513. package/dist/collection/components/split-pane/split-pane.js +14 -8
  514. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  515. package/dist/collection/components/tab/tab.js +6 -2
  516. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  517. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  518. package/dist/collection/components/tab-bar/tab-bar.js +78 -11
  519. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  520. package/dist/collection/components/tab-button/tab-button.ionic.css +338 -0
  521. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  522. package/dist/collection/components/tab-button/tab-button.js +44 -8
  523. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  524. package/dist/collection/components/tabs/tabs.css +7 -1
  525. package/dist/collection/components/tabs/tabs.js +4 -1
  526. package/dist/collection/components/text/text.css +6 -0
  527. package/dist/collection/components/text/text.js +7 -6
  528. package/dist/collection/components/textarea/textarea.ionic.css +830 -0
  529. package/dist/collection/components/textarea/textarea.ios.css +275 -139
  530. package/dist/collection/components/textarea/textarea.js +76 -16
  531. package/dist/collection/components/textarea/textarea.md.css +288 -140
  532. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  533. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  534. package/dist/collection/components/title/title.ionic.css +129 -0
  535. package/dist/collection/components/title/title.ios.css +32 -4
  536. package/dist/collection/components/title/title.js +13 -7
  537. package/dist/collection/components/title/title.md.css +32 -4
  538. package/dist/collection/components/toast/animations/utils.js +1 -1
  539. package/dist/collection/components/toast/toast.ionic.css +396 -0
  540. package/dist/collection/components/toast/toast.ios.css +84 -45
  541. package/dist/collection/components/toast/toast.js +75 -12
  542. package/dist/collection/components/toast/toast.md.css +84 -45
  543. package/dist/collection/components/toggle/toggle.ionic.css +511 -0
  544. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  545. package/dist/collection/components/toggle/toggle.js +73 -18
  546. package/dist/collection/components/toggle/toggle.md.css +244 -131
  547. package/dist/collection/components/toolbar/test/image.svg +1 -0
  548. package/dist/collection/components/toolbar/toolbar.ionic.css +243 -0
  549. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  550. package/dist/collection/components/toolbar/toolbar.js +157 -13
  551. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  552. package/dist/collection/global/ionic-global.js +228 -13
  553. package/dist/collection/utils/focus-visible.js +22 -0
  554. package/dist/collection/utils/framework-delegate.js +3 -1
  555. package/dist/collection/utils/helpers.js +42 -2
  556. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  557. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  558. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  559. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  560. package/dist/collection/utils/overlays.js +2 -1
  561. package/dist/collection/utils/test/playwright/generator.js +48 -23
  562. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  563. package/dist/collection/utils/test/playwright/page/utils/set-content.js +24 -3
  564. package/dist/collection/utils/transition/ios.transition.js +1 -0
  565. package/dist/docs.json +7887 -359
  566. package/dist/esm/{animation-BWcUKtbn.js → animation-Cgfm6Out.js} +1 -2
  567. package/dist/esm/{button-active-Bxcnevju.js → button-active-DvzVF2u_.js} +2 -2
  568. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-Dvc8Ydvg.js} +1 -1
  569. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  570. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  571. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  572. package/dist/esm/{config-AaTyISnm.js → config-DwiPHIF5.js} +1 -1
  573. package/dist/esm/{data-GIsHsYIB.js → data-HHZs0eLV.js} +6 -6
  574. package/dist/{cjs/focus-visible-CCvKiLh3.js → esm/focus-visible-vXpMhGrs.js} +23 -3
  575. package/dist/esm/{framework-delegate-DxcnWic_.js → framework-delegate-B4Rily6A.js} +4 -2
  576. package/dist/esm/{haptic-DzAMWJuk.js → haptic-ZZTn7IWt.js} +1 -1
  577. package/dist/esm/{helpers-1O4D2b7y.js → helpers-D_90HVv6.js} +42 -3
  578. package/dist/esm/{index-B_U9CtaY.js → index-BBrR3goV.js} +347 -13
  579. package/dist/esm/{index-DfBA5ztX.js → index-BoSPzYKk.js} +4 -4
  580. package/dist/esm/{index-BlJTBdxG.js → index-ByqmqxGO.js} +2 -2
  581. package/dist/esm/{index-BLV6ykCk.js → index-CFd-a2gp.js} +3 -3
  582. package/dist/esm/{index-D8sncTHY.js → index-D4D_NUAr.js} +10 -10
  583. package/dist/esm/{index-CWbP1eJz.js → index-k4x4i7EL.js} +3 -3
  584. package/dist/esm/index.js +11 -12
  585. package/dist/esm/{input-shims-C3lNp93k.js → input-shims-DEtEJcaS.js} +6 -6
  586. package/dist/esm/{input.utils-zWijNCrx.js → input.utils-DNE0LB5g.js} +2 -3
  587. package/dist/esm/ion-accordion_2.entry.js +56 -27
  588. package/dist/esm/ion-action-sheet.entry.js +21 -18
  589. package/dist/esm/ion-alert.entry.js +23 -21
  590. package/dist/esm/ion-app_8.entry.js +243 -144
  591. package/dist/esm/ion-avatar_3.entry.js +124 -12
  592. package/dist/esm/ion-back-button.entry.js +29 -20
  593. package/dist/esm/ion-backdrop.entry.js +9 -6
  594. package/dist/esm/ion-breadcrumb_2.entry.js +52 -16
  595. package/dist/esm/ion-button_2.entry.js +43 -11
  596. package/dist/esm/ion-card_5.entry.js +53 -29
  597. package/dist/esm/ion-checkbox.entry.js +31 -13
  598. package/dist/esm/ion-chip.entry.js +48 -7
  599. package/dist/esm/ion-col_3.entry.js +13 -10
  600. package/dist/esm/ion-datetime-button.entry.js +11 -7
  601. package/dist/esm/ion-datetime_3.entry.js +114 -39
  602. package/dist/esm/ion-divider.entry.js +48 -0
  603. package/dist/esm/ion-fab_3.entry.js +42 -26
  604. package/dist/esm/ion-img.entry.js +7 -3
  605. package/dist/esm/ion-infinite-scroll_2.entry.js +18 -14
  606. package/dist/esm/ion-input-otp.entry.js +58 -106
  607. package/dist/esm/ion-input-password-toggle.entry.js +51 -13
  608. package/dist/esm/ion-input.entry.js +121 -31
  609. package/dist/esm/ion-item-option_3.entry.js +48 -19
  610. package/dist/esm/ion-item_8.entry.js +106 -46
  611. package/dist/esm/ion-loading.entry.js +18 -16
  612. package/dist/esm/ion-menu_3.entry.js +45 -27
  613. package/dist/esm/ion-modal.entry.js +56 -114
  614. package/dist/esm/ion-nav_2.entry.js +13 -10
  615. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  616. package/dist/esm/ion-picker-column.entry.js +11 -11
  617. package/dist/esm/ion-picker.entry.js +10 -6
  618. package/dist/esm/ion-popover.entry.js +18 -16
  619. package/dist/esm/ion-progress-bar.entry.js +25 -7
  620. package/dist/esm/ion-radio_2.entry.js +22 -13
  621. package/dist/esm/ion-range.entry.js +14 -10
  622. package/dist/esm/ion-refresher_2.entry.js +38 -20
  623. package/dist/esm/ion-reorder_2.entry.js +37 -13
  624. package/dist/esm/ion-ripple-effect.entry.js +14 -6
  625. package/dist/esm/ion-route_4.entry.js +8 -7
  626. package/dist/esm/ion-searchbar.entry.js +136 -23
  627. package/dist/esm/ion-segment-content.entry.js +2 -2
  628. package/dist/esm/ion-segment-view.entry.js +6 -3
  629. package/dist/esm/ion-segment_2.entry.js +21 -14
  630. package/dist/esm/ion-select-modal.entry.js +8 -9
  631. package/dist/esm/ion-select_3.entry.js +130 -39
  632. package/dist/esm/ion-spinner.entry.js +28 -6
  633. package/dist/esm/ion-split-pane.entry.js +11 -8
  634. package/dist/esm/ion-tab-bar_2.entry.js +65 -20
  635. package/dist/esm/ion-tab_2.entry.js +8 -7
  636. package/dist/esm/ion-text.entry.js +5 -5
  637. package/dist/esm/ion-textarea.entry.js +55 -15
  638. package/dist/esm/ion-toast.entry.js +41 -18
  639. package/dist/esm/ion-toggle.entry.js +79 -22
  640. package/dist/esm/ionic.js +3 -3
  641. package/dist/esm/{ios.transition-BmXtMRXZ.js → ios.transition-C_-UP8wE.js} +6 -5
  642. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-BsZp3qPH.js} +3 -3
  643. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cvigb3Rv.js} +1 -1
  644. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-lts2Pswq.js} +4 -3
  645. package/dist/esm/list-Dhi5xtNS.js +6 -0
  646. package/dist/esm/loader.js +3 -3
  647. package/dist/esm/{md.transition-CLI683c7.js → md.transition-BDWkLsNw.js} +5 -5
  648. package/dist/esm/{notch-controller-C5LPspO8.js → notch-controller-ClKrf2l9.js} +2 -2
  649. package/dist/esm/{overlays-8Y2rA-ps.js → overlays-DDeOq6un.js} +5 -6
  650. package/dist/esm/{status-tap-7t9T91bG.js → status-tap-DLatL9pG.js} +4 -3
  651. package/dist/esm/{swipe-back-VdaUzLWy.js → swipe-back-YYylMb0l.js} +3 -2
  652. package/dist/esm/x-BDqjX7Z_.js +6 -0
  653. package/dist/html.html-data.json +2508 -230
  654. package/dist/ionic/index.esm.js +1 -1
  655. package/dist/ionic/ionic.esm.js +1 -1
  656. package/dist/ionic/p-034b2ca2.entry.js +4 -0
  657. package/dist/ionic/p-08dfb85e.entry.js +4 -0
  658. package/dist/ionic/p-0db4cc59.entry.js +4 -0
  659. package/dist/ionic/p-0eab9ecf.entry.js +4 -0
  660. package/dist/ionic/p-13c72b4e.entry.js +4 -0
  661. package/dist/ionic/p-1984e701.entry.js +4 -0
  662. package/dist/ionic/p-19959eec.entry.js +4 -0
  663. package/dist/ionic/p-1f976fad.entry.js +4 -0
  664. package/dist/ionic/p-1fd06a55.entry.js +4 -0
  665. package/dist/ionic/p-1fedceb6.entry.js +4 -0
  666. package/dist/ionic/p-208954ca.entry.js +4 -0
  667. package/dist/ionic/p-2d5f9656.entry.js +4 -0
  668. package/dist/ionic/p-30c2256c.entry.js +4 -0
  669. package/dist/ionic/p-32f9c041.entry.js +4 -0
  670. package/dist/ionic/p-3a2af867.entry.js +4 -0
  671. package/dist/ionic/p-3c361403.entry.js +4 -0
  672. package/dist/ionic/p-40f4609e.entry.js +4 -0
  673. package/dist/ionic/p-4d4dcd38.entry.js +4 -0
  674. package/dist/ionic/p-4d7443cd.entry.js +4 -0
  675. package/dist/ionic/p-4d7ac4db.entry.js +4 -0
  676. package/dist/ionic/p-50ce7a3d.entry.js +4 -0
  677. package/dist/ionic/p-5adff2f0.entry.js +4 -0
  678. package/dist/ionic/p-63766f09.entry.js +4 -0
  679. package/dist/ionic/p-6957ab67.entry.js +4 -0
  680. package/dist/ionic/p-6e6ce506.entry.js +4 -0
  681. package/dist/ionic/p-6ea34add.entry.js +4 -0
  682. package/dist/ionic/p-6f17f8ed.entry.js +4 -0
  683. package/dist/ionic/p-7049bf1c.entry.js +4 -0
  684. package/dist/ionic/p-7ace7638.entry.js +4 -0
  685. package/dist/ionic/p-7f1e83a4.entry.js +4 -0
  686. package/dist/ionic/p-82796bb0.entry.js +4 -0
  687. package/dist/ionic/p-9cb0fd91.entry.js +4 -0
  688. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  689. package/dist/ionic/p-BJ-EYogw.js +4 -0
  690. package/dist/ionic/p-BK3Vo2GA.js +4 -0
  691. package/dist/ionic/p-BKDxK6_S.js +4 -0
  692. package/dist/ionic/p-BMPzyWDm.js +4 -0
  693. package/dist/ionic/p-BTqHM5hg.js +4 -0
  694. package/dist/ionic/p-BYSs-jZz.js +4 -0
  695. package/dist/ionic/p-BZR5I9yn.js +4 -0
  696. package/dist/ionic/p-BZSKvxFv.js +4 -0
  697. package/dist/ionic/p-BaAcx1TO.js +4 -0
  698. package/dist/ionic/p-BeJdFlAB.js +4 -0
  699. package/dist/ionic/{p-D13Eaw-8.js → p-Bi_aZreq.js} +1 -1
  700. package/dist/ionic/p-BpUl-Ubc.js +4 -0
  701. package/dist/ionic/{p-CKvCXMs9.js → p-BuAY53fC.js} +1 -1
  702. package/dist/ionic/{p-BLV6ykCk.js → p-CFd-a2gp.js} +1 -1
  703. package/dist/ionic/p-CnPZjTVf.js +4 -0
  704. package/dist/ionic/{p-7qk7mxdr.js → p-D-g7JYuH.js} +1 -1
  705. package/dist/ionic/p-D1t981Ih.js +4 -0
  706. package/dist/ionic/p-D6quDhlh.js +4 -0
  707. package/dist/ionic/{p-CPgXVSua.js → p-DIZM2shZ.js} +1 -1
  708. package/dist/ionic/p-DJD59Sq4.js +4 -0
  709. package/dist/ionic/p-DZmL55Qn.js +4 -0
  710. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  711. package/dist/ionic/p-DjxV6ul_.js +4 -0
  712. package/dist/ionic/p-DkXsr7m2.js +4 -0
  713. package/dist/ionic/p-Dpa-63kX.js +4 -0
  714. package/dist/ionic/p-HOJ_eq4V.js +5 -0
  715. package/dist/ionic/p-MBiM0IFp.js +4 -0
  716. package/dist/ionic/p-a036ba35.entry.js +4 -0
  717. package/dist/ionic/p-a1af546a.entry.js +4 -0
  718. package/dist/ionic/p-ae3dad82.entry.js +4 -0
  719. package/dist/ionic/{p-a9ac80bd.entry.js → p-b2fe9962.entry.js} +1 -1
  720. package/dist/ionic/p-b493f149.entry.js +4 -0
  721. package/dist/ionic/p-b767c96a.entry.js +4 -0
  722. package/dist/ionic/p-bb85830d.entry.js +4 -0
  723. package/dist/ionic/p-c565e353.entry.js +4 -0
  724. package/dist/ionic/p-ccf3b065.entry.js +4 -0
  725. package/dist/ionic/p-d2ca6a9d.entry.js +4 -0
  726. package/dist/ionic/p-db6e0330.entry.js +4 -0
  727. package/dist/ionic/p-dd5e8e7a.entry.js +4 -0
  728. package/dist/ionic/p-deb1d888.entry.js +4 -0
  729. package/dist/ionic/p-dec5b3dc.entry.js +4 -0
  730. package/dist/ionic/p-e4ed2971.entry.js +4 -0
  731. package/dist/ionic/p-e89e89eb.entry.js +4 -0
  732. package/dist/ionic/{p-ei_RiGrl.js → p-eZzo_1L1.js} +1 -1
  733. package/dist/ionic/p-ed214a9c.entry.js +4 -0
  734. package/dist/ionic/p-eebf0420.entry.js +4 -0
  735. package/dist/ionic/p-f2cd0d41.entry.js +4 -0
  736. package/dist/ionic/p-fIOYmaqA.js +4 -0
  737. package/dist/ionic/p-fbd73129.entry.js +4 -0
  738. package/dist/ionic/p-fc8e47a4.entry.js +4 -0
  739. package/dist/ionic/p-vXpMhGrs.js +4 -0
  740. package/dist/ionic/svg/accessibility-outline.svg +1 -1
  741. package/dist/ionic/svg/accessibility-sharp.svg +1 -1
  742. package/dist/ionic/svg/accessibility.svg +1 -1
  743. package/dist/ionic/svg/arrow-down-left-box-outline.svg +1 -0
  744. package/dist/ionic/svg/arrow-down-left-box-sharp.svg +1 -0
  745. package/dist/ionic/svg/arrow-down-left-box.svg +1 -0
  746. package/dist/ionic/svg/arrow-down-right-box-outline.svg +1 -0
  747. package/dist/ionic/svg/arrow-down-right-box-sharp.svg +1 -0
  748. package/dist/ionic/svg/arrow-down-right-box.svg +1 -0
  749. package/dist/ionic/svg/arrow-up-left-box-outline.svg +1 -0
  750. package/dist/ionic/svg/arrow-up-left-box-sharp.svg +1 -0
  751. package/dist/ionic/svg/arrow-up-left-box.svg +1 -0
  752. package/dist/ionic/svg/arrow-up-right-box-outline.svg +1 -0
  753. package/dist/ionic/svg/arrow-up-right-box-sharp.svg +1 -0
  754. package/dist/ionic/svg/arrow-up-right-box.svg +1 -0
  755. package/dist/ionic/svg/bag-add-outline.svg +1 -1
  756. package/dist/ionic/svg/bag-add-sharp.svg +1 -1
  757. package/dist/ionic/svg/bag-add.svg +1 -1
  758. package/dist/ionic/svg/bag-check-outline.svg +1 -1
  759. package/dist/ionic/svg/bag-check-sharp.svg +1 -1
  760. package/dist/ionic/svg/bag-check.svg +1 -1
  761. package/dist/ionic/svg/bag-handle-outline.svg +1 -1
  762. package/dist/ionic/svg/bag-handle-sharp.svg +1 -1
  763. package/dist/ionic/svg/bag-handle.svg +1 -1
  764. package/dist/ionic/svg/bag-outline.svg +1 -1
  765. package/dist/ionic/svg/bag-remove-outline.svg +1 -1
  766. package/dist/ionic/svg/bag-remove-sharp.svg +1 -1
  767. package/dist/ionic/svg/bag-remove.svg +1 -1
  768. package/dist/ionic/svg/bag-sharp.svg +1 -1
  769. package/dist/ionic/svg/bag.svg +1 -1
  770. package/dist/ionic/svg/balloon-outline.svg +1 -1
  771. package/dist/ionic/svg/balloon-sharp.svg +1 -1
  772. package/dist/ionic/svg/balloon.svg +1 -1
  773. package/dist/ionic/svg/ban-outline.svg +1 -1
  774. package/dist/ionic/svg/ban-sharp.svg +1 -1
  775. package/dist/ionic/svg/ban.svg +1 -1
  776. package/dist/ionic/svg/binoculars-outline.svg +1 -0
  777. package/dist/ionic/svg/binoculars-sharp.svg +1 -0
  778. package/dist/ionic/svg/binoculars.svg +1 -0
  779. package/dist/ionic/svg/body-outline.svg +1 -1
  780. package/dist/ionic/svg/bowling-ball-outline.svg +1 -1
  781. package/dist/ionic/svg/bowling-ball-sharp.svg +1 -1
  782. package/dist/ionic/svg/bowling-ball.svg +1 -1
  783. package/dist/ionic/svg/calendar-clear-outline.svg +1 -1
  784. package/dist/ionic/svg/calendar-clear-sharp.svg +1 -1
  785. package/dist/ionic/svg/calendar-clear.svg +1 -1
  786. package/dist/ionic/svg/calendar-number-outline.svg +1 -1
  787. package/dist/ionic/svg/calendar-number-sharp.svg +1 -1
  788. package/dist/ionic/svg/calendar-number.svg +1 -1
  789. package/dist/ionic/svg/calendar-outline.svg +1 -1
  790. package/dist/ionic/svg/calendar-sharp.svg +1 -1
  791. package/dist/ionic/svg/calendar.svg +1 -1
  792. package/dist/ionic/svg/chevron-collapse-outline.svg +1 -1
  793. package/dist/ionic/svg/chevron-collapse-sharp.svg +1 -1
  794. package/dist/ionic/svg/chevron-collapse.svg +1 -1
  795. package/dist/ionic/svg/chevron-expand-outline.svg +1 -1
  796. package/dist/ionic/svg/chevron-expand-sharp.svg +1 -1
  797. package/dist/ionic/svg/chevron-expand.svg +1 -1
  798. package/dist/ionic/svg/color-wand-outline.svg +1 -1
  799. package/dist/ionic/svg/color-wand.svg +1 -1
  800. package/dist/ionic/svg/diamond-outline.svg +1 -1
  801. package/dist/ionic/svg/diamond-sharp.svg +1 -1
  802. package/dist/ionic/svg/diamond.svg +1 -1
  803. package/dist/ionic/svg/dice-outline.svg +1 -1
  804. package/dist/ionic/svg/dice-sharp.svg +1 -1
  805. package/dist/ionic/svg/dice.svg +1 -1
  806. package/dist/ionic/svg/document-lock-outline.svg +1 -1
  807. package/dist/ionic/svg/document-lock-sharp.svg +1 -1
  808. package/dist/ionic/svg/document-lock.svg +1 -1
  809. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -1
  810. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -1
  811. package/dist/ionic/svg/extension-puzzle.svg +1 -1
  812. package/dist/ionic/svg/filter-circle-outline.svg +1 -1
  813. package/dist/ionic/svg/filter-circle-sharp.svg +1 -1
  814. package/dist/ionic/svg/filter-circle.svg +1 -1
  815. package/dist/ionic/svg/fish-outline.svg +1 -1
  816. package/dist/ionic/svg/fish-sharp.svg +1 -1
  817. package/dist/ionic/svg/fish.svg +1 -1
  818. package/dist/ionic/svg/footsteps-outline.svg +1 -1
  819. package/dist/ionic/svg/footsteps-sharp.svg +1 -1
  820. package/dist/ionic/svg/footsteps.svg +1 -1
  821. package/dist/ionic/svg/id-card-outline.svg +1 -1
  822. package/dist/ionic/svg/id-card-sharp.svg +1 -1
  823. package/dist/ionic/svg/id-card.svg +1 -1
  824. package/dist/ionic/svg/invert-mode-outline.svg +1 -1
  825. package/dist/ionic/svg/invert-mode-sharp.svg +1 -1
  826. package/dist/ionic/svg/invert-mode.svg +1 -1
  827. package/dist/ionic/svg/logo-alipay.svg +1 -1
  828. package/dist/ionic/svg/logo-android.svg +1 -1
  829. package/dist/ionic/svg/logo-appflow.svg +1 -0
  830. package/dist/ionic/svg/logo-apple-ar.svg +1 -1
  831. package/dist/ionic/svg/logo-behance.svg +1 -1
  832. package/dist/ionic/svg/logo-bitbucket.svg +1 -1
  833. package/dist/ionic/svg/logo-deviantart.svg +1 -1
  834. package/dist/ionic/svg/logo-discord.svg +1 -1
  835. package/dist/ionic/svg/logo-docker.svg +1 -1
  836. package/dist/ionic/svg/logo-edge.svg +1 -1
  837. package/dist/ionic/svg/logo-facebook.svg +1 -1
  838. package/dist/ionic/svg/logo-figma.svg +1 -1
  839. package/dist/ionic/svg/logo-firebase.svg +1 -1
  840. package/dist/ionic/svg/logo-gitlab.svg +1 -1
  841. package/dist/ionic/svg/logo-ionic.svg +1 -1
  842. package/dist/ionic/svg/logo-mastodon.svg +1 -1
  843. package/dist/ionic/svg/logo-medium.svg +1 -1
  844. package/dist/ionic/svg/logo-microsoft.svg +1 -1
  845. package/dist/ionic/svg/logo-npm.svg +1 -1
  846. package/dist/ionic/svg/logo-paypal.svg +1 -1
  847. package/dist/ionic/svg/logo-soundcloud.svg +1 -1
  848. package/dist/ionic/svg/logo-tableau.svg +1 -1
  849. package/dist/ionic/svg/logo-tiktok.svg +1 -1
  850. package/dist/ionic/svg/logo-trapeze.svg +1 -0
  851. package/dist/ionic/svg/logo-venmo.svg +1 -1
  852. package/dist/ionic/svg/logo-vercel.svg +1 -1
  853. package/dist/ionic/svg/logo-wechat.svg +1 -1
  854. package/dist/ionic/svg/logo-x.svg +1 -0
  855. package/dist/ionic/svg/logo-yahoo.svg +1 -1
  856. package/dist/ionic/svg/prism-outline.svg +1 -1
  857. package/dist/ionic/svg/prism-sharp.svg +1 -1
  858. package/dist/ionic/svg/prism.svg +1 -1
  859. package/dist/ionic/svg/scale-outline.svg +1 -1
  860. package/dist/ionic/svg/scale-sharp.svg +1 -1
  861. package/dist/ionic/svg/scale.svg +1 -1
  862. package/dist/ionic/svg/server-outline.svg +1 -1
  863. package/dist/ionic/svg/server-sharp.svg +1 -1
  864. package/dist/ionic/svg/server.svg +1 -1
  865. package/dist/ionic/svg/shield-half-outline.svg +1 -1
  866. package/dist/ionic/svg/shield-half-sharp.svg +1 -1
  867. package/dist/ionic/svg/shield-half.svg +1 -1
  868. package/dist/ionic/svg/sparkles-outline.svg +1 -1
  869. package/dist/ionic/svg/sparkles-sharp.svg +1 -1
  870. package/dist/ionic/svg/sparkles.svg +1 -1
  871. package/dist/ionic/svg/storefront-outline.svg +1 -1
  872. package/dist/ionic/svg/storefront-sharp.svg +1 -1
  873. package/dist/ionic/svg/storefront.svg +1 -1
  874. package/dist/ionic/svg/telescope-outline.svg +1 -1
  875. package/dist/ionic/svg/telescope-sharp.svg +1 -1
  876. package/dist/ionic/svg/telescope.svg +1 -1
  877. package/dist/ionic/svg/ticket-outline.svg +1 -1
  878. package/dist/ionic/svg/ticket-sharp.svg +1 -1
  879. package/dist/ionic/svg/ticket.svg +1 -1
  880. package/dist/ionic/svg/today-outline.svg +1 -1
  881. package/dist/ionic/svg/today-sharp.svg +1 -1
  882. package/dist/ionic/svg/today.svg +1 -1
  883. package/dist/ionic/svg/unlink-outline.svg +1 -1
  884. package/dist/ionic/svg/unlink-sharp.svg +1 -1
  885. package/dist/ionic/svg/unlink.svg +1 -1
  886. package/dist/ionic/svg/videocam-off-outline.svg +1 -1
  887. package/dist/ionic/svg/videocam-off-sharp.svg +1 -1
  888. package/dist/ionic/svg/videocam-off.svg +1 -1
  889. package/dist/ionic/svg/wifi-outline.svg +1 -1
  890. package/dist/ionic/svg/wifi-sharp.svg +1 -1
  891. package/dist/ionic/svg/wifi.svg +1 -1
  892. package/dist/types/components/accordion/accordion.d.ts +5 -3
  893. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  894. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  895. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  896. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  897. package/dist/types/components/alert/alert.d.ts +3 -2
  898. package/dist/types/components/app/app.d.ts +4 -2
  899. package/dist/types/components/avatar/avatar.d.ts +32 -0
  900. package/dist/types/components/back-button/back-button.d.ts +2 -1
  901. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  902. package/dist/types/components/badge/badge.d.ts +34 -1
  903. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  904. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  905. package/dist/types/components/button/button.d.ts +19 -6
  906. package/dist/types/components/buttons/buttons.d.ts +5 -1
  907. package/dist/types/components/card/card.d.ts +8 -1
  908. package/dist/types/components/card-content/card-content.d.ts +2 -1
  909. package/dist/types/components/card-header/card-header.d.ts +3 -2
  910. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  911. package/dist/types/components/card-title/card-title.d.ts +2 -1
  912. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  913. package/dist/types/components/chip/chip.d.ts +26 -1
  914. package/dist/types/components/col/col.d.ts +4 -0
  915. package/dist/types/components/content/content.d.ts +3 -0
  916. package/dist/types/components/datetime/datetime.d.ts +26 -1
  917. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  918. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  919. package/dist/types/components/divider/divider.d.ts +20 -0
  920. package/dist/types/components/fab/fab.d.ts +4 -0
  921. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  922. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  923. package/dist/types/components/footer/footer.d.ts +4 -3
  924. package/dist/types/components/grid/grid.d.ts +4 -0
  925. package/dist/types/components/header/header.d.ts +9 -3
  926. package/dist/types/components/img/img.d.ts +3 -0
  927. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  928. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  929. package/dist/types/components/input/input.d.ts +31 -5
  930. package/dist/types/components/input-otp/input-otp.d.ts +8 -12
  931. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  932. package/dist/types/components/item/item.d.ts +11 -4
  933. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  934. package/dist/types/components/item-group/item-group.d.ts +4 -0
  935. package/dist/types/components/item-option/item-option.d.ts +18 -1
  936. package/dist/types/components/item-options/item-options.d.ts +4 -0
  937. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  938. package/dist/types/components/label/label.d.ts +2 -1
  939. package/dist/types/components/list/list.d.ts +15 -1
  940. package/dist/types/components/list-header/list-header.d.ts +2 -1
  941. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  942. package/dist/types/components/loading/loading.d.ts +3 -2
  943. package/dist/types/components/menu/menu.d.ts +3 -0
  944. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  945. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  946. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  947. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  948. package/dist/types/components/modal/modal.d.ts +11 -14
  949. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  950. package/dist/types/components/nav/nav.d.ts +5 -1
  951. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  952. package/dist/types/components/note/note.d.ts +2 -1
  953. package/dist/types/components/picker/picker.d.ts +2 -1
  954. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  955. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  956. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  957. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  958. package/dist/types/components/popover/popover.d.ts +6 -5
  959. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  960. package/dist/types/components/radio/radio.d.ts +2 -1
  961. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  962. package/dist/types/components/range/range.d.ts +2 -1
  963. package/dist/types/components/refresher/refresher.d.ts +2 -1
  964. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  965. package/dist/types/components/reorder/reorder.d.ts +9 -0
  966. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  967. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  968. package/dist/types/components/route/route.d.ts +4 -0
  969. package/dist/types/components/router/router.d.ts +4 -0
  970. package/dist/types/components/router-link/router-link.d.ts +4 -0
  971. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  972. package/dist/types/components/row/row.d.ts +4 -0
  973. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  974. package/dist/types/components/segment/segment.d.ts +2 -1
  975. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  976. package/dist/types/components/select/select.d.ts +41 -13
  977. package/dist/types/components/select-option/select-option.d.ts +4 -0
  978. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  979. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  980. package/dist/types/components/spinner/spinner.d.ts +15 -0
  981. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  982. package/dist/types/components/tab/tab.d.ts +4 -0
  983. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  984. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  985. package/dist/types/components/tabs/tabs.d.ts +3 -0
  986. package/dist/types/components/text/text.d.ts +2 -1
  987. package/dist/types/components/textarea/textarea.d.ts +17 -4
  988. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  989. package/dist/types/components/title/title.d.ts +4 -0
  990. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  991. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  992. package/dist/types/components/toast/toast.d.ts +19 -2
  993. package/dist/types/components/toggle/toggle.d.ts +15 -1
  994. package/dist/types/components/toolbar/toolbar.d.ts +20 -3
  995. package/dist/types/components.d.ts +1511 -196
  996. package/dist/types/global/ionic-global.d.ts +27 -2
  997. package/dist/types/interface.d.ts +3 -0
  998. package/dist/types/utils/config.d.ts +106 -2
  999. package/dist/types/utils/focus-visible.d.ts +13 -0
  1000. package/dist/types/utils/helpers.d.ts +11 -0
  1001. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1002. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1003. package/hydrate/index.js +2780 -1089
  1004. package/hydrate/index.mjs +2780 -1089
  1005. package/package.json +9 -4
  1006. package/components/hardware-back-button.js +0 -115
  1007. package/components/index9.js +0 -7
  1008. package/dist/cjs/hardware-back-button-D90qZxju.js +0 -121
  1009. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1010. package/dist/esm/hardware-back-button-DcH0BbDp.js +0 -115
  1011. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1012. package/dist/ionic/p-01123ecf.entry.js +0 -4
  1013. package/dist/ionic/p-03d21728.entry.js +0 -4
  1014. package/dist/ionic/p-0d131a02.entry.js +0 -4
  1015. package/dist/ionic/p-0fc6fc38.entry.js +0 -4
  1016. package/dist/ionic/p-15da9760.entry.js +0 -4
  1017. package/dist/ionic/p-1739f5f2.entry.js +0 -4
  1018. package/dist/ionic/p-18f1813b.entry.js +0 -4
  1019. package/dist/ionic/p-2bc871ee.entry.js +0 -4
  1020. package/dist/ionic/p-2c6c6991.entry.js +0 -4
  1021. package/dist/ionic/p-2cfd6b61.entry.js +0 -4
  1022. package/dist/ionic/p-2d0eccfb.entry.js +0 -4
  1023. package/dist/ionic/p-2da6a16b.entry.js +0 -4
  1024. package/dist/ionic/p-2dca6aac.entry.js +0 -4
  1025. package/dist/ionic/p-35c4a63f.entry.js +0 -4
  1026. package/dist/ionic/p-3c855fa9.entry.js +0 -4
  1027. package/dist/ionic/p-4b7d1f35.entry.js +0 -4
  1028. package/dist/ionic/p-4d61f20b.entry.js +0 -4
  1029. package/dist/ionic/p-5ee6f3cc.entry.js +0 -4
  1030. package/dist/ionic/p-5f671887.entry.js +0 -4
  1031. package/dist/ionic/p-69f91268.entry.js +0 -4
  1032. package/dist/ionic/p-73d7ad90.entry.js +0 -4
  1033. package/dist/ionic/p-76b697a3.entry.js +0 -4
  1034. package/dist/ionic/p-7d5cf8c1.entry.js +0 -4
  1035. package/dist/ionic/p-8957540a.entry.js +0 -4
  1036. package/dist/ionic/p-8a8ef46b.entry.js +0 -4
  1037. package/dist/ionic/p-8c674371.entry.js +0 -4
  1038. package/dist/ionic/p-8f2f76e0.entry.js +0 -4
  1039. package/dist/ionic/p-91bde659.entry.js +0 -4
  1040. package/dist/ionic/p-97667b9c.entry.js +0 -4
  1041. package/dist/ionic/p-9b46b31b.entry.js +0 -4
  1042. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1043. package/dist/ionic/p-B1MNHTYX.js +0 -4
  1044. package/dist/ionic/p-B3XSxWNQ.js +0 -4
  1045. package/dist/ionic/p-BROiNJRB.js +0 -4
  1046. package/dist/ionic/p-B_U9CtaY.js +0 -5
  1047. package/dist/ionic/p-BhLqfMrf.js +0 -4
  1048. package/dist/ionic/p-BmQduG8c.js +0 -4
  1049. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1050. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1051. package/dist/ionic/p-CL-KfWxq.js +0 -4
  1052. package/dist/ionic/p-CRiGyYOA.js +0 -4
  1053. package/dist/ionic/p-CbI9XwwW.js +0 -4
  1054. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1055. package/dist/ionic/p-D-7TeYC4.js +0 -4
  1056. package/dist/ionic/p-DCfS5Jk_.js +0 -4
  1057. package/dist/ionic/p-DgdWETCP.js +0 -4
  1058. package/dist/ionic/p-Do-uqmtX.js +0 -4
  1059. package/dist/ionic/p-DzH0J0yi.js +0 -4
  1060. package/dist/ionic/p-QwEXyOze.js +0 -4
  1061. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1062. package/dist/ionic/p-a6282370.entry.js +0 -4
  1063. package/dist/ionic/p-a92bfa13.entry.js +0 -4
  1064. package/dist/ionic/p-a9f99c74.entry.js +0 -4
  1065. package/dist/ionic/p-aIxOGKys.js +0 -4
  1066. package/dist/ionic/p-aa8956c2.entry.js +0 -4
  1067. package/dist/ionic/p-b37dbc31.entry.js +0 -4
  1068. package/dist/ionic/p-b758a177.entry.js +0 -4
  1069. package/dist/ionic/p-b9ba04ca.entry.js +0 -4
  1070. package/dist/ionic/p-b9f79efc.entry.js +0 -4
  1071. package/dist/ionic/p-bNmY-WfR.js +0 -4
  1072. package/dist/ionic/p-bc01c127.entry.js +0 -4
  1073. package/dist/ionic/p-c0335397.entry.js +0 -4
  1074. package/dist/ionic/p-c4912ca5.entry.js +0 -4
  1075. package/dist/ionic/p-c884d7e3.entry.js +0 -4
  1076. package/dist/ionic/p-cf632ee2.entry.js +0 -4
  1077. package/dist/ionic/p-d47b85ea.entry.js +0 -4
  1078. package/dist/ionic/p-d8429eb4.entry.js +0 -4
  1079. package/dist/ionic/p-d8ed5df0.entry.js +0 -4
  1080. package/dist/ionic/p-e1260ed5.entry.js +0 -4
  1081. package/dist/ionic/p-e37d6c67.entry.js +0 -4
  1082. package/dist/ionic/p-f83db8cd.entry.js +0 -4
  1083. package/dist/ionic/p-fbc5481b.entry.js +0 -4
  1084. package/dist/ionic/p-fcc7437b.entry.js +0 -4
  1085. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -89,7 +89,7 @@ export namespace Components {
89
89
  */
90
90
  "disabled": boolean;
91
91
  /**
92
- * The mode determines which platform styles to use.
92
+ * The mode determines the platform behaviors of the component.
93
93
  */
94
94
  "mode"?: "ios" | "md";
95
95
  /**
@@ -97,11 +97,14 @@ export namespace Components {
97
97
  * @default false
98
98
  */
99
99
  "readonly": boolean;
100
+ /**
101
+ * The theme determines the visual appearance of the component.
102
+ */
103
+ "theme"?: "ios" | "md" | "ionic";
100
104
  /**
101
105
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
102
- * @default chevronDown
103
106
  */
104
- "toggleIcon": string;
107
+ "toggleIcon"?: string;
105
108
  /**
106
109
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
107
110
  * @default 'end'
@@ -131,7 +134,7 @@ export namespace Components {
131
134
  "expand": 'compact' | 'inset';
132
135
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
133
136
  /**
134
- * The mode determines which platform styles to use.
137
+ * The mode determines the platform behaviors of the component.
135
138
  */
136
139
  "mode"?: "ios" | "md";
137
140
  /**
@@ -147,6 +150,14 @@ export namespace Components {
147
150
  * 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.
148
151
  */
149
152
  "requestAccordionToggle": (accordionValue: string | undefined, accordionExpand: boolean) => Promise<void>;
153
+ /**
154
+ * 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"`.
155
+ */
156
+ "shape"?: 'soft' | 'round' | 'rectangular';
157
+ /**
158
+ * The theme determines the visual appearance of the component.
159
+ */
160
+ "theme"?: "ios" | "md" | "ionic";
150
161
  /**
151
162
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
152
163
  */
@@ -210,7 +221,7 @@ export namespace Components {
210
221
  */
211
222
  "leaveAnimation"?: AnimationBuilder;
212
223
  /**
213
- * The mode determines which platform styles to use.
224
+ * The mode determines the platform behaviors of the component.
214
225
  */
215
226
  "mode"?: "ios" | "md";
216
227
  /**
@@ -231,7 +242,11 @@ export namespace Components {
231
242
  */
232
243
  "subHeader"?: string;
233
244
  /**
234
- * 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).
245
+ * The theme determines the visual appearance of the component.
246
+ */
247
+ "theme"?: "ios" | "md" | "ionic";
248
+ /**
249
+ * 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).
235
250
  * @default false
236
251
  */
237
252
  "translucent": boolean;
@@ -307,7 +322,7 @@ export namespace Components {
307
322
  */
308
323
  "message"?: string | IonicSafeString;
309
324
  /**
310
- * The mode determines which platform styles to use.
325
+ * The mode determines the platform behaviors of the component.
311
326
  */
312
327
  "mode"?: "ios" | "md";
313
328
  /**
@@ -328,7 +343,11 @@ export namespace Components {
328
343
  */
329
344
  "subHeader"?: string;
330
345
  /**
331
- * 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).
346
+ * The theme determines the visual appearance of the component.
347
+ */
348
+ "theme"?: "ios" | "md" | "ionic";
349
+ /**
350
+ * 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).
332
351
  * @default false
333
352
  */
334
353
  "translucent": boolean;
@@ -338,13 +357,42 @@ export namespace Components {
338
357
  "trigger": string | undefined;
339
358
  }
340
359
  interface IonApp {
360
+ /**
361
+ * The mode determines the platform behaviors of the component.
362
+ */
363
+ "mode"?: "ios" | "md";
341
364
  /**
342
365
  * 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.)
343
366
  * @param elements An array of HTML elements to set focus on.
344
367
  */
345
368
  "setFocus": (elements: HTMLElement[]) => Promise<void>;
369
+ /**
370
+ * The theme determines the visual appearance of the component.
371
+ */
372
+ "theme"?: "ios" | "md" | "ionic";
346
373
  }
347
374
  interface IonAvatar {
375
+ /**
376
+ * If `true`, the user cannot interact with the avatar.
377
+ * @default false
378
+ */
379
+ "disabled": boolean;
380
+ /**
381
+ * The mode determines the platform behaviors of the component.
382
+ */
383
+ "mode"?: "ios" | "md";
384
+ /**
385
+ * 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.
386
+ */
387
+ "shape"?: 'soft' | 'round' | 'rectangular';
388
+ /**
389
+ * 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.
390
+ */
391
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
392
+ /**
393
+ * The theme determines the visual appearance of the component.
394
+ */
395
+ "theme"?: "ios" | "md" | "ionic";
348
396
  }
349
397
  interface IonBackButton {
350
398
  /**
@@ -365,7 +413,7 @@ export namespace Components {
365
413
  */
366
414
  "icon"?: string | null;
367
415
  /**
368
- * The mode determines which platform styles to use.
416
+ * The mode determines the platform behaviors of the component.
369
417
  */
370
418
  "mode"?: "ios" | "md";
371
419
  /**
@@ -376,6 +424,10 @@ export namespace Components {
376
424
  * The text to display in the back button.
377
425
  */
378
426
  "text"?: string | null;
427
+ /**
428
+ * The theme determines the visual appearance of the component.
429
+ */
430
+ "theme"?: "ios" | "md" | "ionic";
379
431
  /**
380
432
  * The type of the button.
381
433
  * @default 'button'
@@ -383,6 +435,10 @@ export namespace Components {
383
435
  "type": 'submit' | 'reset' | 'button';
384
436
  }
385
437
  interface IonBackdrop {
438
+ /**
439
+ * The mode determines the platform behaviors of the component.
440
+ */
441
+ "mode"?: "ios" | "md";
386
442
  /**
387
443
  * If `true`, the backdrop will stop propagation on tap.
388
444
  * @default true
@@ -393,6 +449,10 @@ export namespace Components {
393
449
  * @default true
394
450
  */
395
451
  "tappable": boolean;
452
+ /**
453
+ * The theme determines the visual appearance of the component.
454
+ */
455
+ "theme"?: "ios" | "md" | "ionic";
396
456
  /**
397
457
  * If `true`, the backdrop will be visible.
398
458
  * @default true
@@ -405,9 +465,29 @@ export namespace Components {
405
465
  */
406
466
  "color"?: Color;
407
467
  /**
408
- * The mode determines which platform styles to use.
468
+ * Set to `"bold"` for a badge with vibrant, bold colors or to `"subtle"` for a badge with muted, subtle colors. Only applies to the `ionic` theme.
469
+ */
470
+ "hue"?: 'bold' | 'subtle';
471
+ /**
472
+ * The mode determines the platform behaviors of the component.
409
473
  */
410
474
  "mode"?: "ios" | "md";
475
+ /**
476
+ * 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.
477
+ */
478
+ "shape"?: 'soft' | 'round | rectangular';
479
+ /**
480
+ * Set to `"small"` for a small badge. Set to `"medium"` for a medium badge. Set to `"large"` for a large badge, when it is empty (no text or icon). Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
481
+ */
482
+ "size"?: 'small' | 'medium' | 'large';
483
+ /**
484
+ * The theme determines the visual appearance of the component.
485
+ */
486
+ "theme"?: "ios" | "md" | "ionic";
487
+ /**
488
+ * 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.
489
+ */
490
+ "vertical"?: 'top' | 'bottom';
411
491
  }
412
492
  interface IonBreadcrumb {
413
493
  /**
@@ -438,7 +518,7 @@ export namespace Components {
438
518
  "href": string | undefined;
439
519
  "last": boolean;
440
520
  /**
441
- * The mode determines which platform styles to use.
521
+ * The mode determines the platform behaviors of the component.
442
522
  */
443
523
  "mode"?: "ios" | "md";
444
524
  /**
@@ -463,6 +543,10 @@ export namespace Components {
463
543
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
464
544
  */
465
545
  "target": string | undefined;
546
+ /**
547
+ * The theme determines the visual appearance of the component.
548
+ */
549
+ "theme"?: "ios" | "md" | "ionic";
466
550
  }
467
551
  interface IonBreadcrumbs {
468
552
  /**
@@ -484,9 +568,13 @@ export namespace Components {
484
568
  */
485
569
  "maxItems"?: number;
486
570
  /**
487
- * The mode determines which platform styles to use.
571
+ * The mode determines the platform behaviors of the component.
488
572
  */
489
573
  "mode"?: "ios" | "md";
574
+ /**
575
+ * The theme determines the visual appearance of the component.
576
+ */
577
+ "theme"?: "ios" | "md" | "ionic";
490
578
  }
491
579
  interface IonButton {
492
580
  /**
@@ -524,7 +612,7 @@ export namespace Components {
524
612
  */
525
613
  "href": string | undefined;
526
614
  /**
527
- * The mode determines which platform styles to use.
615
+ * The mode determines the platform behaviors of the component.
528
616
  */
529
617
  "mode"?: "ios" | "md";
530
618
  /**
@@ -541,13 +629,13 @@ export namespace Components {
541
629
  */
542
630
  "routerDirection": RouterDirection;
543
631
  /**
544
- * Set to `"round"` for a button with more rounded corners.
632
+ * 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.
545
633
  */
546
- "shape"?: 'round';
634
+ "shape"?: 'soft' | 'round' | 'rectangular';
547
635
  /**
548
- * 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.
636
+ * Set to `"small"` for a button with less height and padding, to `"medium"` for a button with the medium 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.
549
637
  */
550
- "size"?: 'small' | 'default' | 'large';
638
+ "size"?: 'small' | 'default' | 'medium' | 'large';
551
639
  /**
552
640
  * If `true`, activates a button with a heavier font weight.
553
641
  * @default false
@@ -557,6 +645,10 @@ export namespace Components {
557
645
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
558
646
  */
559
647
  "target": string | undefined;
648
+ /**
649
+ * The theme determines the visual appearance of the component.
650
+ */
651
+ "theme"?: "ios" | "md" | "ionic";
560
652
  /**
561
653
  * The type of the button.
562
654
  * @default 'button'
@@ -565,10 +657,18 @@ export namespace Components {
565
657
  }
566
658
  interface IonButtons {
567
659
  /**
568
- * 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)
660
+ * 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)
569
661
  * @default false
570
662
  */
571
663
  "collapse": boolean;
664
+ /**
665
+ * The mode determines the platform behaviors of the component.
666
+ */
667
+ "mode"?: "ios" | "md";
668
+ /**
669
+ * The theme determines the visual appearance of the component.
670
+ */
671
+ "theme"?: "ios" | "md" | "ionic";
572
672
  }
573
673
  interface IonCard {
574
674
  /**
@@ -594,7 +694,7 @@ export namespace Components {
594
694
  */
595
695
  "href": string | undefined;
596
696
  /**
597
- * The mode determines which platform styles to use.
697
+ * The mode determines the platform behaviors of the component.
598
698
  */
599
699
  "mode"?: "ios" | "md";
600
700
  /**
@@ -610,10 +710,19 @@ export namespace Components {
610
710
  * @default 'forward'
611
711
  */
612
712
  "routerDirection": RouterDirection;
713
+ /**
714
+ * 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"`.
715
+ * @default 'round'
716
+ */
717
+ "shape"?: 'soft' | 'round' | 'rectangular';
613
718
  /**
614
719
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
615
720
  */
616
721
  "target": string | undefined;
722
+ /**
723
+ * The theme determines the visual appearance of the component.
724
+ */
725
+ "theme"?: "ios" | "md" | "ionic";
617
726
  /**
618
727
  * The type of the button. Only used when an `onclick` or `button` property is present.
619
728
  * @default 'button'
@@ -622,9 +731,13 @@ export namespace Components {
622
731
  }
623
732
  interface IonCardContent {
624
733
  /**
625
- * The mode determines which platform styles to use.
734
+ * The mode determines the platform behaviors of the component.
626
735
  */
627
736
  "mode"?: "ios" | "md";
737
+ /**
738
+ * The theme determines the visual appearance of the component.
739
+ */
740
+ "theme"?: "ios" | "md" | "ionic";
628
741
  }
629
742
  interface IonCardHeader {
630
743
  /**
@@ -632,11 +745,15 @@ export namespace Components {
632
745
  */
633
746
  "color"?: Color;
634
747
  /**
635
- * The mode determines which platform styles to use.
748
+ * The mode determines the platform behaviors of the component.
636
749
  */
637
750
  "mode"?: "ios" | "md";
638
751
  /**
639
- * 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).
752
+ * The theme determines the visual appearance of the component.
753
+ */
754
+ "theme"?: "ios" | "md" | "ionic";
755
+ /**
756
+ * 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).
640
757
  * @default false
641
758
  */
642
759
  "translucent": boolean;
@@ -647,9 +764,13 @@ export namespace Components {
647
764
  */
648
765
  "color"?: Color;
649
766
  /**
650
- * The mode determines which platform styles to use.
767
+ * The mode determines the platform behaviors of the component.
651
768
  */
652
769
  "mode"?: "ios" | "md";
770
+ /**
771
+ * The theme determines the visual appearance of the component.
772
+ */
773
+ "theme"?: "ios" | "md" | "ionic";
653
774
  }
654
775
  interface IonCardTitle {
655
776
  /**
@@ -657,9 +778,13 @@ export namespace Components {
657
778
  */
658
779
  "color"?: Color;
659
780
  /**
660
- * The mode determines which platform styles to use.
781
+ * The mode determines the platform behaviors of the component.
661
782
  */
662
783
  "mode"?: "ios" | "md";
784
+ /**
785
+ * The theme determines the visual appearance of the component.
786
+ */
787
+ "theme"?: "ios" | "md" | "ionic";
663
788
  }
664
789
  interface IonCheckbox {
665
790
  /**
@@ -703,7 +828,7 @@ export namespace Components {
703
828
  */
704
829
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
705
830
  /**
706
- * The mode determines which platform styles to use.
831
+ * The mode determines the platform behaviors of the component.
707
832
  */
708
833
  "mode"?: "ios" | "md";
709
834
  /**
@@ -717,6 +842,19 @@ export namespace Components {
717
842
  */
718
843
  "required": boolean;
719
844
  "setFocus": () => Promise<void>;
845
+ /**
846
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
847
+ * @default 'soft'
848
+ */
849
+ "shape"?: 'soft' | 'rectangular';
850
+ /**
851
+ * Set to `"small"` for a checkbox with less height and padding.
852
+ */
853
+ "size"?: 'small';
854
+ /**
855
+ * The theme determines the visual appearance of the component.
856
+ */
857
+ "theme"?: "ios" | "md" | "ionic";
720
858
  /**
721
859
  * 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>`.
722
860
  * @default 'on'
@@ -734,7 +872,12 @@ export namespace Components {
734
872
  */
735
873
  "disabled": boolean;
736
874
  /**
737
- * The mode determines which platform styles to use.
875
+ * Set to `"bold"` for a chip with vibrant, bold colors or to `"subtle"` for a chip with muted, subtle colors. Only applies to the `ionic` theme.
876
+ * @default 'subtle'
877
+ */
878
+ "hue"?: 'bold' | 'subtle';
879
+ /**
880
+ * The mode determines the platform behaviors of the component.
738
881
  */
739
882
  "mode"?: "ios" | "md";
740
883
  /**
@@ -742,8 +885,24 @@ export namespace Components {
742
885
  * @default false
743
886
  */
744
887
  "outline": boolean;
888
+ /**
889
+ * 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.
890
+ */
891
+ "shape"?: 'soft' | 'round' | 'rectangular';
892
+ /**
893
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
894
+ */
895
+ "size"?: 'small' | 'large';
896
+ /**
897
+ * The theme determines the visual appearance of the component.
898
+ */
899
+ "theme"?: "ios" | "md" | "ionic";
745
900
  }
746
901
  interface IonCol {
902
+ /**
903
+ * The mode determines the platform behaviors of the component.
904
+ */
905
+ "mode"?: "ios" | "md";
747
906
  /**
748
907
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
749
908
  */
@@ -840,6 +999,10 @@ export namespace Components {
840
999
  * 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.
841
1000
  */
842
1001
  "sizeXs"?: string;
1002
+ /**
1003
+ * The theme determines the visual appearance of the component.
1004
+ */
1005
+ "theme"?: "ios" | "md" | "ionic";
843
1006
  }
844
1007
  interface IonContent {
845
1008
  /**
@@ -868,6 +1031,10 @@ export namespace Components {
868
1031
  * 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.
869
1032
  */
870
1033
  "getScrollElement": () => Promise<HTMLElement>;
1034
+ /**
1035
+ * The mode determines the platform behaviors of the component.
1036
+ */
1037
+ "mode"?: "ios" | "md";
871
1038
  /**
872
1039
  * Scroll by a specified X/Y distance in the component.
873
1040
  * @param x The amount to scroll by on the horizontal axis.
@@ -907,6 +1074,10 @@ export namespace Components {
907
1074
  * @default true
908
1075
  */
909
1076
  "scrollY": boolean;
1077
+ /**
1078
+ * The theme determines the visual appearance of the component.
1079
+ */
1080
+ "theme"?: "ios" | "md" | "ionic";
910
1081
  }
911
1082
  interface IonDatetime {
912
1083
  /**
@@ -991,7 +1162,7 @@ export namespace Components {
991
1162
  */
992
1163
  "minuteValues"?: number[] | number | string;
993
1164
  /**
994
- * The mode determines which platform styles to use.
1165
+ * The mode determines the platform behaviors of the component.
995
1166
  */
996
1167
  "mode"?: "ios" | "md";
997
1168
  /**
@@ -1058,6 +1229,10 @@ export namespace Components {
1058
1229
  * @default 'fixed'
1059
1230
  */
1060
1231
  "size": 'cover' | 'fixed';
1232
+ /**
1233
+ * The theme determines the visual appearance of the component.
1234
+ */
1235
+ "theme"?: "ios" | "md" | "ionic";
1061
1236
  /**
1062
1237
  * 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.
1063
1238
  */
@@ -1087,9 +1262,25 @@ export namespace Components {
1087
1262
  */
1088
1263
  "disabled": boolean;
1089
1264
  /**
1090
- * The mode determines which platform styles to use.
1265
+ * The mode determines the platform behaviors of the component.
1091
1266
  */
1092
1267
  "mode"?: "ios" | "md";
1268
+ /**
1269
+ * The theme determines the visual appearance of the component.
1270
+ */
1271
+ "theme"?: "ios" | "md" | "ionic";
1272
+ }
1273
+ interface IonDivider {
1274
+ /**
1275
+ * If `true`, the divider will have horizontal margins By default, it's `false`
1276
+ * @default false
1277
+ */
1278
+ "inset": boolean;
1279
+ /**
1280
+ * 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"`.
1281
+ * @default 'medium'
1282
+ */
1283
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
1093
1284
  }
1094
1285
  interface IonFab {
1095
1286
  /**
@@ -1110,6 +1301,14 @@ export namespace Components {
1110
1301
  * Where to align the fab horizontally in the viewport.
1111
1302
  */
1112
1303
  "horizontal"?: 'start' | 'end' | 'center';
1304
+ /**
1305
+ * The mode determines the platform behaviors of the component.
1306
+ */
1307
+ "mode"?: "ios" | "md";
1308
+ /**
1309
+ * The theme determines the visual appearance of the component.
1310
+ */
1311
+ "theme"?: "ios" | "md" | "ionic";
1113
1312
  /**
1114
1313
  * Opens/Closes the FAB list container.
1115
1314
  */
@@ -1127,9 +1326,8 @@ export namespace Components {
1127
1326
  "activated": boolean;
1128
1327
  /**
1129
1328
  * 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.
1130
- * @default close
1131
1329
  */
1132
- "closeIcon": string;
1330
+ "closeIcon"?: string;
1133
1331
  /**
1134
1332
  * 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).
1135
1333
  */
@@ -1148,7 +1346,7 @@ export namespace Components {
1148
1346
  */
1149
1347
  "href": string | undefined;
1150
1348
  /**
1151
- * The mode determines which platform styles to use.
1349
+ * The mode determines the platform behaviors of the component.
1152
1350
  */
1153
1351
  "mode"?: "ios" | "md";
1154
1352
  /**
@@ -1178,7 +1376,11 @@ export namespace Components {
1178
1376
  */
1179
1377
  "target": string | undefined;
1180
1378
  /**
1181
- * 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).
1379
+ * The theme determines the visual appearance of the component.
1380
+ */
1381
+ "theme"?: "ios" | "md" | "ionic";
1382
+ /**
1383
+ * 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).
1182
1384
  * @default false
1183
1385
  */
1184
1386
  "translucent": boolean;
@@ -1194,23 +1396,35 @@ export namespace Components {
1194
1396
  * @default false
1195
1397
  */
1196
1398
  "activated": boolean;
1399
+ /**
1400
+ * The mode determines the platform behaviors of the component.
1401
+ */
1402
+ "mode"?: "ios" | "md";
1197
1403
  /**
1198
1404
  * The side the fab list will show on relative to the main fab button.
1199
1405
  * @default 'bottom'
1200
1406
  */
1201
1407
  "side": 'start' | 'end' | 'top' | 'bottom';
1408
+ /**
1409
+ * The theme determines the visual appearance of the component.
1410
+ */
1411
+ "theme"?: "ios" | "md" | "ionic";
1202
1412
  }
1203
1413
  interface IonFooter {
1204
1414
  /**
1205
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
1415
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
1206
1416
  */
1207
1417
  "collapse"?: 'fade';
1208
1418
  /**
1209
- * The mode determines which platform styles to use.
1419
+ * The mode determines the platform behaviors of the component.
1210
1420
  */
1211
1421
  "mode"?: "ios" | "md";
1212
1422
  /**
1213
- * 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.
1423
+ * The theme determines the visual appearance of the component.
1424
+ */
1425
+ "theme"?: "ios" | "md" | "ionic";
1426
+ /**
1427
+ * 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.
1214
1428
  * @default false
1215
1429
  */
1216
1430
  "translucent": boolean;
@@ -1221,18 +1435,35 @@ export namespace Components {
1221
1435
  * @default false
1222
1436
  */
1223
1437
  "fixed": boolean;
1438
+ /**
1439
+ * The mode determines the platform behaviors of the component.
1440
+ */
1441
+ "mode"?: "ios" | "md";
1442
+ /**
1443
+ * The theme determines the visual appearance of the component.
1444
+ */
1445
+ "theme"?: "ios" | "md" | "ionic";
1224
1446
  }
1225
1447
  interface IonHeader {
1226
1448
  /**
1227
- * 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)
1449
+ * 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)
1228
1450
  */
1229
1451
  "collapse"?: 'condense' | 'fade';
1230
1452
  /**
1231
- * The mode determines which platform styles to use.
1453
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
1454
+ * @default false
1455
+ */
1456
+ "divider": boolean;
1457
+ /**
1458
+ * The mode determines the platform behaviors of the component.
1232
1459
  */
1233
1460
  "mode"?: "ios" | "md";
1234
1461
  /**
1235
- * 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.
1462
+ * The theme determines the visual appearance of the component.
1463
+ */
1464
+ "theme"?: "ios" | "md" | "ionic";
1465
+ /**
1466
+ * If `true`, the header will be translucent. Only applies when the theme is `"ios"` or `"ionic"` 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.
1236
1467
  * @default false
1237
1468
  */
1238
1469
  "translucent": boolean;
@@ -1242,10 +1473,18 @@ export namespace Components {
1242
1473
  * 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.
1243
1474
  */
1244
1475
  "alt"?: string;
1476
+ /**
1477
+ * The mode determines the platform behaviors of the component.
1478
+ */
1479
+ "mode"?: "ios" | "md";
1245
1480
  /**
1246
1481
  * The image URL. This attribute is mandatory for the `<img>` element.
1247
1482
  */
1248
1483
  "src"?: string;
1484
+ /**
1485
+ * The theme determines the visual appearance of the component.
1486
+ */
1487
+ "theme"?: "ios" | "md" | "ionic";
1249
1488
  }
1250
1489
  interface IonInfiniteScroll {
1251
1490
  /**
@@ -1257,11 +1496,19 @@ export namespace Components {
1257
1496
  * @default false
1258
1497
  */
1259
1498
  "disabled": boolean;
1499
+ /**
1500
+ * The mode determines the platform behaviors of the component.
1501
+ */
1502
+ "mode"?: "ios" | "md";
1260
1503
  /**
1261
1504
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1262
1505
  * @default 'bottom'
1263
1506
  */
1264
1507
  "position": 'top' | 'bottom';
1508
+ /**
1509
+ * The theme determines the visual appearance of the component.
1510
+ */
1511
+ "theme"?: "ios" | "md" | "ionic";
1265
1512
  /**
1266
1513
  * 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.
1267
1514
  * @default '15%'
@@ -1277,6 +1524,14 @@ export namespace Components {
1277
1524
  * 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.
1278
1525
  */
1279
1526
  "loadingText"?: string | IonicSafeString;
1527
+ /**
1528
+ * The mode determines the platform behaviors of the component.
1529
+ */
1530
+ "mode"?: "ios" | "md";
1531
+ /**
1532
+ * The theme determines the visual appearance of the component.
1533
+ */
1534
+ "theme"?: "ios" | "md" | "ionic";
1280
1535
  }
1281
1536
  interface IonInput {
1282
1537
  /**
@@ -1343,7 +1598,7 @@ export namespace Components {
1343
1598
  */
1344
1599
  "errorText"?: string;
1345
1600
  /**
1346
- * 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.
1601
+ * 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"`.
1347
1602
  */
1348
1603
  "fill"?: 'outline' | 'solid';
1349
1604
  /**
@@ -1363,10 +1618,9 @@ export namespace Components {
1363
1618
  */
1364
1619
  "label"?: string;
1365
1620
  /**
1366
- * 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 ("...").
1367
- * @default 'start'
1621
+ * 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.
1368
1622
  */
1369
- "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1623
+ "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1370
1624
  /**
1371
1625
  * The maximum value, which must not be less than its minimum (min attribute) value.
1372
1626
  */
@@ -1384,7 +1638,7 @@ export namespace Components {
1384
1638
  */
1385
1639
  "minlength"?: number;
1386
1640
  /**
1387
- * The mode determines which platform styles to use.
1641
+ * The mode determines the platform behaviors of the component.
1388
1642
  */
1389
1643
  "mode"?: "ios" | "md";
1390
1644
  /**
@@ -1419,9 +1673,14 @@ export namespace Components {
1419
1673
  */
1420
1674
  "setFocus": () => Promise<void>;
1421
1675
  /**
1422
- * The shape of the input. If "round" it will have an increased border radius.
1676
+ * 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"`.
1677
+ */
1678
+ "shape"?: 'soft' | 'round' | 'rectangular';
1679
+ /**
1680
+ * 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.
1681
+ * @default 'medium'
1423
1682
  */
1424
- "shape"?: 'round';
1683
+ "size"?: 'medium' | 'large' | 'xlarge';
1425
1684
  /**
1426
1685
  * If `true`, the element will have its spelling and grammar checked.
1427
1686
  * @default false
@@ -1431,6 +1690,10 @@ export namespace Components {
1431
1690
  * 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.
1432
1691
  */
1433
1692
  "step"?: string;
1693
+ /**
1694
+ * The theme determines the visual appearance of the component.
1695
+ */
1696
+ "theme"?: "ios" | "md" | "ionic";
1434
1697
  /**
1435
1698
  * The type of control to display. The default type is text.
1436
1699
  * @default 'text'
@@ -1543,14 +1806,13 @@ export namespace Components {
1543
1806
  */
1544
1807
  "color"?: Color;
1545
1808
  /**
1546
- * 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.
1809
+ * 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.
1547
1810
  */
1548
1811
  "detail"?: boolean;
1549
1812
  /**
1550
1813
  * The icon to use when `detail` is set to `true`.
1551
- * @default chevronForward
1552
1814
  */
1553
- "detailIcon": string;
1815
+ "detailIcon"?: string;
1554
1816
  /**
1555
1817
  * If `true`, the user cannot interact with the item.
1556
1818
  * @default false
@@ -1569,7 +1831,7 @@ export namespace Components {
1569
1831
  */
1570
1832
  "lines"?: 'full' | 'inset' | 'none';
1571
1833
  /**
1572
- * The mode determines which platform styles to use.
1834
+ * The mode determines the platform behaviors of the component.
1573
1835
  */
1574
1836
  "mode"?: "ios" | "md";
1575
1837
  /**
@@ -1589,6 +1851,10 @@ export namespace Components {
1589
1851
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1590
1852
  */
1591
1853
  "target": string | undefined;
1854
+ /**
1855
+ * The theme determines the visual appearance of the component.
1856
+ */
1857
+ "theme"?: "ios" | "md" | "ionic";
1592
1858
  /**
1593
1859
  * The type of the button. Only used when an `onclick` or `button` property is present.
1594
1860
  * @default 'button'
@@ -1601,7 +1867,7 @@ export namespace Components {
1601
1867
  */
1602
1868
  "color"?: Color;
1603
1869
  /**
1604
- * The mode determines which platform styles to use.
1870
+ * The mode determines the platform behaviors of the component.
1605
1871
  */
1606
1872
  "mode"?: "ios" | "md";
1607
1873
  /**
@@ -1609,8 +1875,20 @@ export namespace Components {
1609
1875
  * @default false
1610
1876
  */
1611
1877
  "sticky": boolean;
1878
+ /**
1879
+ * The theme determines the visual appearance of the component.
1880
+ */
1881
+ "theme"?: "ios" | "md" | "ionic";
1612
1882
  }
1613
1883
  interface IonItemGroup {
1884
+ /**
1885
+ * The mode determines the platform behaviors of the component.
1886
+ */
1887
+ "mode"?: "ios" | "md";
1888
+ /**
1889
+ * The theme determines the visual appearance of the component.
1890
+ */
1891
+ "theme"?: "ios" | "md" | "ionic";
1614
1892
  }
1615
1893
  interface IonItemOption {
1616
1894
  /**
@@ -1636,17 +1914,30 @@ export namespace Components {
1636
1914
  */
1637
1915
  "href": string | undefined;
1638
1916
  /**
1639
- * The mode determines which platform styles to use.
1917
+ * Set to `"bold"` for an option with vibrant, bold colors or to `"subtle"` for an option with muted, subtle colors. Only applies to the `ionic` theme.
1918
+ * @default 'subtle'
1919
+ */
1920
+ "hue"?: 'bold' | 'subtle';
1921
+ /**
1922
+ * The mode determines the platform behaviors of the component.
1640
1923
  */
1641
1924
  "mode"?: "ios" | "md";
1642
1925
  /**
1643
1926
  * 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).
1644
1927
  */
1645
1928
  "rel": string | undefined;
1929
+ /**
1930
+ * 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.
1931
+ */
1932
+ "shape"?: 'soft' | 'round' | 'rectangular';
1646
1933
  /**
1647
1934
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
1648
1935
  */
1649
1936
  "target": string | undefined;
1937
+ /**
1938
+ * The theme determines the visual appearance of the component.
1939
+ */
1940
+ "theme"?: "ios" | "md" | "ionic";
1650
1941
  /**
1651
1942
  * The type of the button.
1652
1943
  * @default 'button'
@@ -1655,11 +1946,19 @@ export namespace Components {
1655
1946
  }
1656
1947
  interface IonItemOptions {
1657
1948
  "fireSwipeEvent": () => Promise<void>;
1949
+ /**
1950
+ * The mode determines the platform behaviors of the component.
1951
+ */
1952
+ "mode"?: "ios" | "md";
1658
1953
  /**
1659
1954
  * 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.
1660
1955
  * @default 'end'
1661
1956
  */
1662
1957
  "side": Side;
1958
+ /**
1959
+ * The theme determines the visual appearance of the component.
1960
+ */
1961
+ "theme"?: "ios" | "md" | "ionic";
1663
1962
  }
1664
1963
  interface IonItemSliding {
1665
1964
  /**
@@ -1683,11 +1982,19 @@ export namespace Components {
1683
1982
  * 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.
1684
1983
  */
1685
1984
  "getSlidingRatio": () => Promise<number>;
1985
+ /**
1986
+ * The mode determines the platform behaviors of the component.
1987
+ */
1988
+ "mode"?: "ios" | "md";
1686
1989
  /**
1687
1990
  * Open the sliding item.
1688
1991
  * @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.
1689
1992
  */
1690
1993
  "open": (side: Side | undefined) => Promise<void>;
1994
+ /**
1995
+ * The theme determines the visual appearance of the component.
1996
+ */
1997
+ "theme"?: "ios" | "md" | "ionic";
1691
1998
  }
1692
1999
  interface IonLabel {
1693
2000
  /**
@@ -1695,13 +2002,17 @@ export namespace Components {
1695
2002
  */
1696
2003
  "color"?: Color;
1697
2004
  /**
1698
- * The mode determines which platform styles to use.
2005
+ * The mode determines the platform behaviors of the component.
1699
2006
  */
1700
2007
  "mode"?: "ios" | "md";
1701
2008
  /**
1702
2009
  * The position determines where and how the label behaves inside an item.
1703
2010
  */
1704
2011
  "position"?: 'fixed' | 'stacked' | 'floating';
2012
+ /**
2013
+ * The theme determines the visual appearance of the component.
2014
+ */
2015
+ "theme"?: "ios" | "md" | "ionic";
1705
2016
  }
1706
2017
  interface IonList {
1707
2018
  /**
@@ -1718,9 +2029,17 @@ export namespace Components {
1718
2029
  */
1719
2030
  "lines"?: 'full' | 'inset' | 'none';
1720
2031
  /**
1721
- * The mode determines which platform styles to use.
2032
+ * The mode determines the platform behaviors of the component.
1722
2033
  */
1723
2034
  "mode"?: "ios" | "md";
2035
+ /**
2036
+ * 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.
2037
+ */
2038
+ "shape"?: 'soft' | 'round' | 'rectangular';
2039
+ /**
2040
+ * The theme determines the visual appearance of the component.
2041
+ */
2042
+ "theme"?: "ios" | "md" | "ionic";
1724
2043
  }
1725
2044
  interface IonListHeader {
1726
2045
  /**
@@ -1732,9 +2051,13 @@ export namespace Components {
1732
2051
  */
1733
2052
  "lines"?: 'full' | 'inset' | 'none';
1734
2053
  /**
1735
- * The mode determines which platform styles to use.
2054
+ * The mode determines the platform behaviors of the component.
1736
2055
  */
1737
2056
  "mode"?: "ios" | "md";
2057
+ /**
2058
+ * The theme determines the visual appearance of the component.
2059
+ */
2060
+ "theme"?: "ios" | "md" | "ionic";
1738
2061
  }
1739
2062
  interface IonLoading {
1740
2063
  /**
@@ -1794,7 +2117,7 @@ export namespace Components {
1794
2117
  */
1795
2118
  "message"?: string | IonicSafeString;
1796
2119
  /**
1797
- * The mode determines which platform styles to use.
2120
+ * The mode determines the platform behaviors of the component.
1798
2121
  */
1799
2122
  "mode"?: "ios" | "md";
1800
2123
  /**
@@ -1820,7 +2143,11 @@ export namespace Components {
1820
2143
  */
1821
2144
  "spinner"?: SpinnerTypes | null;
1822
2145
  /**
1823
- * 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).
2146
+ * The theme determines the visual appearance of the component.
2147
+ */
2148
+ "theme"?: "ios" | "md" | "ionic";
2149
+ /**
2150
+ * 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).
1824
2151
  * @default false
1825
2152
  */
1826
2153
  "translucent": boolean;
@@ -1862,6 +2189,10 @@ export namespace Components {
1862
2189
  * An id for the menu.
1863
2190
  */
1864
2191
  "menuId"?: string;
2192
+ /**
2193
+ * The mode determines the platform behaviors of the component.
2194
+ */
2195
+ "mode"?: "ios" | "md";
1865
2196
  /**
1866
2197
  * Opens the menu. If the menu is already open or it can't be opened, it returns `false`.
1867
2198
  * @param animated If `true`, the menu will animate when opening. If `false`, the menu will open instantly without animation. Defaults to `true`.
@@ -1884,6 +2215,10 @@ export namespace Components {
1884
2215
  * @default true
1885
2216
  */
1886
2217
  "swipeGesture": boolean;
2218
+ /**
2219
+ * The theme determines the visual appearance of the component.
2220
+ */
2221
+ "theme"?: "ios" | "md" | "ionic";
1887
2222
  /**
1888
2223
  * 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`.
1889
2224
  * @param animated If `true`, the menu will animate when opening/closing. If `false`, the menu will open/close instantly without animation. Defaults to `true`.
@@ -1914,9 +2249,13 @@ export namespace Components {
1914
2249
  */
1915
2250
  "menu"?: string;
1916
2251
  /**
1917
- * The mode determines which platform styles to use.
2252
+ * The mode determines the platform behaviors of the component.
1918
2253
  */
1919
2254
  "mode"?: "ios" | "md";
2255
+ /**
2256
+ * The theme determines the visual appearance of the component.
2257
+ */
2258
+ "theme"?: "ios" | "md" | "ionic";
1920
2259
  /**
1921
2260
  * The type of the button.
1922
2261
  * @default 'button'
@@ -1933,6 +2272,14 @@ export namespace Components {
1933
2272
  * 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.
1934
2273
  */
1935
2274
  "menu"?: string;
2275
+ /**
2276
+ * The mode determines the platform behaviors of the component.
2277
+ */
2278
+ "mode"?: "ios" | "md";
2279
+ /**
2280
+ * The theme determines the visual appearance of the component.
2281
+ */
2282
+ "theme"?: "ios" | "md" | "ionic";
1936
2283
  }
1937
2284
  interface IonModal {
1938
2285
  /**
@@ -2037,7 +2384,7 @@ export namespace Components {
2037
2384
  */
2038
2385
  "leaveAnimation"?: AnimationBuilder;
2039
2386
  /**
2040
- * The mode determines which platform styles to use.
2387
+ * The mode determines the platform behaviors of the component.
2041
2388
  */
2042
2389
  "mode"?: "ios" | "md";
2043
2390
  /**
@@ -2062,11 +2409,19 @@ export namespace Components {
2062
2409
  * @param breakpoint The breakpoint value to move the sheet modal to. Must be a value defined in your `breakpoints` array.
2063
2410
  */
2064
2411
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
2412
+ /**
2413
+ * 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.
2414
+ */
2415
+ "shape"?: 'soft' | 'round' | 'rectangular';
2065
2416
  /**
2066
2417
  * 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.
2067
2418
  * @default true
2068
2419
  */
2069
2420
  "showBackdrop": boolean;
2421
+ /**
2422
+ * The theme determines the visual appearance of the component.
2423
+ */
2424
+ "theme"?: "ios" | "md" | "ionic";
2070
2425
  /**
2071
2426
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
2072
2427
  */
@@ -2079,7 +2434,7 @@ export namespace Components {
2079
2434
  */
2080
2435
  "animated": boolean;
2081
2436
  /**
2082
- * 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.
2437
+ * 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.
2083
2438
  */
2084
2439
  "animation"?: AnimationBuilder;
2085
2440
  /**
@@ -2127,6 +2482,10 @@ export namespace Components {
2127
2482
  * @param done The transition complete function.
2128
2483
  */
2129
2484
  "insertPages": (insertIndex: number, insertComponents: NavComponent[] | NavComponentWithProps[], opts?: NavOptions | null, done?: TransitionDoneFn) => Promise<boolean>;
2485
+ /**
2486
+ * The mode determines the platform behaviors of the component.
2487
+ */
2488
+ "mode"?: "ios" | "md";
2130
2489
  /**
2131
2490
  * Pop a component off of the navigation stack. Navigates back from the current component.
2132
2491
  * @param opts The navigation options.
@@ -2198,6 +2557,10 @@ export namespace Components {
2198
2557
  * If the nav component should allow for swipe-to-go-back.
2199
2558
  */
2200
2559
  "swipeGesture"?: boolean;
2560
+ /**
2561
+ * The theme determines the visual appearance of the component.
2562
+ */
2563
+ "theme"?: "ios" | "md" | "ionic";
2201
2564
  }
2202
2565
  interface IonNavLink {
2203
2566
  /**
@@ -2208,6 +2571,10 @@ export namespace Components {
2208
2571
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
2209
2572
  */
2210
2573
  "componentProps"?: ComponentProps;
2574
+ /**
2575
+ * The mode determines the platform behaviors of the component.
2576
+ */
2577
+ "mode"?: "ios" | "md";
2211
2578
  /**
2212
2579
  * The transition animation when navigating to another page.
2213
2580
  */
@@ -2217,6 +2584,10 @@ export namespace Components {
2217
2584
  * @default 'forward'
2218
2585
  */
2219
2586
  "routerDirection": RouterDirection;
2587
+ /**
2588
+ * The theme determines the visual appearance of the component.
2589
+ */
2590
+ "theme"?: "ios" | "md" | "ionic";
2220
2591
  }
2221
2592
  interface IonNote {
2222
2593
  /**
@@ -2224,16 +2595,24 @@ export namespace Components {
2224
2595
  */
2225
2596
  "color"?: Color;
2226
2597
  /**
2227
- * The mode determines which platform styles to use.
2598
+ * The mode determines the platform behaviors of the component.
2228
2599
  */
2229
2600
  "mode"?: "ios" | "md";
2601
+ /**
2602
+ * The theme determines the visual appearance of the component.
2603
+ */
2604
+ "theme"?: "ios" | "md" | "ionic";
2230
2605
  }
2231
2606
  interface IonPicker {
2232
2607
  "exitInputMode": () => Promise<void>;
2233
2608
  /**
2234
- * The mode determines which platform styles to use.
2609
+ * The mode determines the platform behaviors of the component.
2235
2610
  */
2236
2611
  "mode"?: "ios" | "md";
2612
+ /**
2613
+ * The theme determines the visual appearance of the component.
2614
+ */
2615
+ "theme"?: "ios" | "md" | "ionic";
2237
2616
  }
2238
2617
  interface IonPickerColumn {
2239
2618
  /**
@@ -2247,7 +2626,7 @@ export namespace Components {
2247
2626
  */
2248
2627
  "disabled": boolean;
2249
2628
  /**
2250
- * The mode determines which platform styles to use.
2629
+ * The mode determines the platform behaviors of the component.
2251
2630
  */
2252
2631
  "mode"?: "ios" | "md";
2253
2632
  /**
@@ -2264,6 +2643,10 @@ export namespace Components {
2264
2643
  * 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.
2265
2644
  */
2266
2645
  "setValue": (value: PickerColumnValue) => Promise<void>;
2646
+ /**
2647
+ * The theme determines the visual appearance of the component.
2648
+ */
2649
+ "theme"?: "ios" | "md" | "ionic";
2267
2650
  /**
2268
2651
  * The selected option in the picker.
2269
2652
  */
@@ -2280,6 +2663,14 @@ export namespace Components {
2280
2663
  * @default false
2281
2664
  */
2282
2665
  "disabled": boolean;
2666
+ /**
2667
+ * The mode determines the platform behaviors of the component.
2668
+ */
2669
+ "mode"?: "ios" | "md";
2670
+ /**
2671
+ * The theme determines the visual appearance of the component.
2672
+ */
2673
+ "theme"?: "ios" | "md" | "ionic";
2283
2674
  /**
2284
2675
  * The text value of the option.
2285
2676
  */
@@ -2354,7 +2745,7 @@ export namespace Components {
2354
2745
  */
2355
2746
  "leaveAnimation"?: AnimationBuilder;
2356
2747
  /**
2357
- * The mode determines which platform styles to use.
2748
+ * The mode determines the platform behaviors of the component.
2358
2749
  */
2359
2750
  "mode"?: "ios" | "md";
2360
2751
  /**
@@ -2375,6 +2766,10 @@ export namespace Components {
2375
2766
  * @default true
2376
2767
  */
2377
2768
  "showBackdrop": boolean;
2769
+ /**
2770
+ * The theme determines the visual appearance of the component.
2771
+ */
2772
+ "theme"?: "ios" | "md" | "ionic";
2378
2773
  /**
2379
2774
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
2380
2775
  */
@@ -2388,7 +2783,7 @@ export namespace Components {
2388
2783
  }
2389
2784
  interface IonPopover {
2390
2785
  /**
2391
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
2786
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
2392
2787
  */
2393
2788
  "alignment"?: PositionAlign;
2394
2789
  /**
@@ -2397,7 +2792,7 @@ export namespace Components {
2397
2792
  */
2398
2793
  "animated": boolean;
2399
2794
  /**
2400
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2795
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
2401
2796
  * @default true
2402
2797
  */
2403
2798
  "arrow": boolean;
@@ -2477,7 +2872,7 @@ export namespace Components {
2477
2872
  */
2478
2873
  "leaveAnimation"?: AnimationBuilder;
2479
2874
  /**
2480
- * The mode determines which platform styles to use.
2875
+ * The mode determines the platform behaviors of the component.
2481
2876
  */
2482
2877
  "mode"?: "ios" | "md";
2483
2878
  /**
@@ -2519,7 +2914,11 @@ export namespace Components {
2519
2914
  */
2520
2915
  "size": PopoverSize;
2521
2916
  /**
2522
- * 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).
2917
+ * The theme determines the visual appearance of the component.
2918
+ */
2919
+ "theme"?: "ios" | "md" | "ionic";
2920
+ /**
2921
+ * 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).
2523
2922
  * @default false
2524
2923
  */
2525
2924
  "translucent": boolean;
@@ -2544,7 +2943,7 @@ export namespace Components {
2544
2943
  */
2545
2944
  "color"?: Color;
2546
2945
  /**
2547
- * The mode determines which platform styles to use.
2946
+ * The mode determines the platform behaviors of the component.
2548
2947
  */
2549
2948
  "mode"?: "ios" | "md";
2550
2949
  /**
@@ -2552,6 +2951,14 @@ export namespace Components {
2552
2951
  * @default false
2553
2952
  */
2554
2953
  "reversed": boolean;
2954
+ /**
2955
+ * 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.
2956
+ */
2957
+ "shape"?: 'round' | 'rectangular';
2958
+ /**
2959
+ * The theme determines the visual appearance of the component.
2960
+ */
2961
+ "theme"?: "ios" | "md" | "ionic";
2555
2962
  /**
2556
2963
  * 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).
2557
2964
  * @default 'determinate'
@@ -2587,7 +2994,7 @@ export namespace Components {
2587
2994
  */
2588
2995
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2589
2996
  /**
2590
- * The mode determines which platform styles to use.
2997
+ * The mode determines the platform behaviors of the component.
2591
2998
  */
2592
2999
  "mode"?: "ios" | "md";
2593
3000
  /**
@@ -2597,6 +3004,10 @@ export namespace Components {
2597
3004
  "name": string;
2598
3005
  "setButtonTabindex": (value: number) => Promise<void>;
2599
3006
  "setFocus": (ev?: globalThis.Event) => Promise<void>;
3007
+ /**
3008
+ * The theme determines the visual appearance of the component.
3009
+ */
3010
+ "theme"?: "ios" | "md" | "ionic";
2600
3011
  /**
2601
3012
  * the value of the radio.
2602
3013
  */
@@ -2620,12 +3031,20 @@ export namespace Components {
2620
3031
  * The helper text to display at the top of the radio group.
2621
3032
  */
2622
3033
  "helperText"?: string;
3034
+ /**
3035
+ * The mode determines the platform behaviors of the component.
3036
+ */
3037
+ "mode"?: "ios" | "md";
2623
3038
  /**
2624
3039
  * The name of the control, which is submitted with the form data.
2625
3040
  * @default this.inputId
2626
3041
  */
2627
3042
  "name": string;
2628
3043
  "setFocus": () => Promise<void>;
3044
+ /**
3045
+ * The theme determines the visual appearance of the component.
3046
+ */
3047
+ "theme"?: "ios" | "md" | "ionic";
2629
3048
  /**
2630
3049
  * the value of the radio group.
2631
3050
  */
@@ -2674,7 +3093,7 @@ export namespace Components {
2674
3093
  */
2675
3094
  "min": number;
2676
3095
  /**
2677
- * The mode determines which platform styles to use.
3096
+ * The mode determines the platform behaviors of the component.
2678
3097
  */
2679
3098
  "mode"?: "ios" | "md";
2680
3099
  /**
@@ -2702,6 +3121,10 @@ export namespace Components {
2702
3121
  * @default 1
2703
3122
  */
2704
3123
  "step": number;
3124
+ /**
3125
+ * The theme determines the visual appearance of the component.
3126
+ */
3127
+ "theme"?: "ios" | "md" | "ionic";
2705
3128
  /**
2706
3129
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2707
3130
  * @default true
@@ -2737,7 +3160,7 @@ export namespace Components {
2737
3160
  */
2738
3161
  "getProgress": () => Promise<number>;
2739
3162
  /**
2740
- * The mode determines which platform styles to use.
3163
+ * The mode determines the platform behaviors of the component.
2741
3164
  */
2742
3165
  "mode"?: "ios" | "md";
2743
3166
  /**
@@ -2760,8 +3183,16 @@ export namespace Components {
2760
3183
  * @default '280ms'
2761
3184
  */
2762
3185
  "snapbackDuration": string;
3186
+ /**
3187
+ * The theme determines the visual appearance of the component.
3188
+ */
3189
+ "theme"?: "ios" | "md" | "ionic";
2763
3190
  }
2764
3191
  interface IonRefresherContent {
3192
+ /**
3193
+ * The mode determines the platform behaviors of the component.
3194
+ */
3195
+ "mode"?: "ios" | "md";
2765
3196
  /**
2766
3197
  * 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.
2767
3198
  */
@@ -2778,8 +3209,20 @@ export namespace Components {
2778
3209
  * 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.
2779
3210
  */
2780
3211
  "refreshingText"?: string | IonicSafeString;
3212
+ /**
3213
+ * The theme determines the visual appearance of the component.
3214
+ */
3215
+ "theme"?: "ios" | "md" | "ionic";
2781
3216
  }
2782
3217
  interface IonReorder {
3218
+ /**
3219
+ * The mode determines the platform behaviors of the component.
3220
+ */
3221
+ "mode"?: "ios" | "md";
3222
+ /**
3223
+ * The theme determines the visual appearance of the component.
3224
+ */
3225
+ "theme"?: "ios" | "md" | "ionic";
2783
3226
  }
2784
3227
  interface IonReorderGroup {
2785
3228
  /**
@@ -2792,6 +3235,14 @@ export namespace Components {
2792
3235
  * @default true
2793
3236
  */
2794
3237
  "disabled": boolean;
3238
+ /**
3239
+ * The mode determines the platform behaviors of the component.
3240
+ */
3241
+ "mode"?: "ios" | "md";
3242
+ /**
3243
+ * The theme determines the visual appearance of the component.
3244
+ */
3245
+ "theme"?: "ios" | "md" | "ionic";
2795
3246
  }
2796
3247
  interface IonRippleEffect {
2797
3248
  /**
@@ -2800,6 +3251,14 @@ export namespace Components {
2800
3251
  * @param y The vertical coordinate of where the ripple should start.
2801
3252
  */
2802
3253
  "addRipple": (x: number, y: number) => Promise<() => void>;
3254
+ /**
3255
+ * The mode determines the platform behaviors of the component.
3256
+ */
3257
+ "mode"?: "ios" | "md";
3258
+ /**
3259
+ * The theme determines the visual appearance of the component.
3260
+ */
3261
+ "theme"?: "ios" | "md" | "ionic";
2803
3262
  /**
2804
3263
  * 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.
2805
3264
  * @default 'bounded'
@@ -2823,6 +3282,14 @@ export namespace Components {
2823
3282
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
2824
3283
  */
2825
3284
  "componentProps"?: { [key: string]: any };
3285
+ /**
3286
+ * The mode determines the platform behaviors of the component.
3287
+ */
3288
+ "mode"?: "ios" | "md";
3289
+ /**
3290
+ * The theme determines the visual appearance of the component.
3291
+ */
3292
+ "theme"?: "ios" | "md" | "ionic";
2826
3293
  /**
2827
3294
  * 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.
2828
3295
  * @default ''
@@ -2845,6 +3312,10 @@ export namespace Components {
2845
3312
  */
2846
3313
  "back": () => Promise<void>;
2847
3314
  "canTransition": () => Promise<string | boolean>;
3315
+ /**
3316
+ * The mode determines the platform behaviors of the component.
3317
+ */
3318
+ "mode"?: "ios" | "md";
2848
3319
  "navChanged": (direction: RouterDirection) => Promise<boolean>;
2849
3320
  "printDebug": () => Promise<void>;
2850
3321
  /**
@@ -2859,6 +3330,10 @@ export namespace Components {
2859
3330
  * @default '/'
2860
3331
  */
2861
3332
  "root": string;
3333
+ /**
3334
+ * The theme determines the visual appearance of the component.
3335
+ */
3336
+ "theme"?: "ios" | "md" | "ionic";
2862
3337
  /**
2863
3338
  * 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.
2864
3339
  * @default true
@@ -2874,6 +3349,10 @@ export namespace Components {
2874
3349
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
2875
3350
  */
2876
3351
  "href": string | undefined;
3352
+ /**
3353
+ * The mode determines the platform behaviors of the component.
3354
+ */
3355
+ "mode"?: "ios" | "md";
2877
3356
  /**
2878
3357
  * 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).
2879
3358
  */
@@ -2891,6 +3370,10 @@ export namespace Components {
2891
3370
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
2892
3371
  */
2893
3372
  "target": string | undefined;
3373
+ /**
3374
+ * The theme determines the visual appearance of the component.
3375
+ */
3376
+ "theme"?: "ios" | "md" | "ionic";
2894
3377
  }
2895
3378
  interface IonRouterOutlet {
2896
3379
  /**
@@ -2906,14 +3389,26 @@ export namespace Components {
2906
3389
  "delegate"?: FrameworkDelegate;
2907
3390
  "getRouteId": () => Promise<RouteID | undefined>;
2908
3391
  /**
2909
- * The mode determines which platform styles to use.
3392
+ * The mode determines the platform behaviors of the component.
2910
3393
  * @default getIonMode(this)
2911
3394
  */
2912
3395
  "mode": "ios" | "md";
2913
3396
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
2914
3397
  "swipeHandler"?: SwipeGestureHandler;
3398
+ /**
3399
+ * The theme determines the visual appearance of the component.
3400
+ */
3401
+ "theme"?: "ios" | "md" | "ionic";
2915
3402
  }
2916
3403
  interface IonRow {
3404
+ /**
3405
+ * The mode determines the platform behaviors of the component.
3406
+ */
3407
+ "mode"?: "ios" | "md";
3408
+ /**
3409
+ * The theme determines the visual appearance of the component.
3410
+ */
3411
+ "theme"?: "ios" | "md" | "ionic";
2917
3412
  }
2918
3413
  interface IonSearchbar {
2919
3414
  /**
@@ -2937,17 +3432,16 @@ export namespace Components {
2937
3432
  */
2938
3433
  "autocorrect": 'on' | 'off';
2939
3434
  /**
2940
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
2941
- * @default config.get('backButtonIcon', arrowBackSharp) as string
3435
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
2942
3436
  */
2943
- "cancelButtonIcon": string;
3437
+ "cancelButtonIcon"?: string;
2944
3438
  /**
2945
- * Set the cancel button text. Only applies to `ios` mode.
3439
+ * Set the cancel button text. Only available when the theme is `"ios"`.
2946
3440
  * @default 'Cancel'
2947
3441
  */
2948
3442
  "cancelButtonText": string;
2949
3443
  /**
2950
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
3444
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
2951
3445
  */
2952
3446
  "clearIcon"?: string;
2953
3447
  /**
@@ -2984,7 +3478,7 @@ export namespace Components {
2984
3478
  */
2985
3479
  "minlength"?: number;
2986
3480
  /**
2987
- * The mode determines which platform styles to use.
3481
+ * The mode determines the platform behaviors of the component.
2988
3482
  */
2989
3483
  "mode"?: "ios" | "md";
2990
3484
  /**
@@ -2998,13 +3492,17 @@ export namespace Components {
2998
3492
  */
2999
3493
  "placeholder": string;
3000
3494
  /**
3001
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
3495
+ * 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.
3002
3496
  */
3003
- "searchIcon"?: string;
3497
+ "searchIcon"?: string | boolean;
3004
3498
  /**
3005
3499
  * 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.
3006
3500
  */
3007
3501
  "setFocus": () => Promise<void>;
3502
+ /**
3503
+ * 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.
3504
+ */
3505
+ "shape"?: 'soft' | 'round' | 'rectangular';
3008
3506
  /**
3009
3507
  * 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.
3010
3508
  * @default 'never'
@@ -3015,11 +3513,19 @@ export namespace Components {
3015
3513
  * @default 'always'
3016
3514
  */
3017
3515
  "showClearButton": 'never' | 'focus' | 'always';
3516
+ /**
3517
+ * 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.
3518
+ */
3519
+ "size"?: 'small' | 'medium' | 'large';
3018
3520
  /**
3019
3521
  * If `true`, enable spellcheck on the input.
3020
3522
  * @default false
3021
3523
  */
3022
3524
  "spellcheck": boolean;
3525
+ /**
3526
+ * The theme determines the visual appearance of the component.
3527
+ */
3528
+ "theme"?: "ios" | "md" | "ionic";
3023
3529
  /**
3024
3530
  * Set the type of the input.
3025
3531
  * @default 'search'
@@ -3042,7 +3548,7 @@ export namespace Components {
3042
3548
  */
3043
3549
  "disabled": boolean;
3044
3550
  /**
3045
- * The mode determines which platform styles to use.
3551
+ * The mode determines the platform behaviors of the component.
3046
3552
  */
3047
3553
  "mode"?: "ios" | "md";
3048
3554
  /**
@@ -3060,6 +3566,10 @@ export namespace Components {
3060
3566
  * @default true
3061
3567
  */
3062
3568
  "swipeGesture": boolean;
3569
+ /**
3570
+ * The theme determines the visual appearance of the component.
3571
+ */
3572
+ "theme"?: "ios" | "md" | "ionic";
3063
3573
  /**
3064
3574
  * the value of the segment.
3065
3575
  */
@@ -3081,10 +3591,14 @@ export namespace Components {
3081
3591
  */
3082
3592
  "layout"?: SegmentButtonLayout;
3083
3593
  /**
3084
- * The mode determines which platform styles to use.
3594
+ * The mode determines the platform behaviors of the component.
3085
3595
  */
3086
3596
  "mode"?: "ios" | "md";
3087
3597
  "setFocus": () => Promise<void>;
3598
+ /**
3599
+ * The theme determines the visual appearance of the component.
3600
+ */
3601
+ "theme"?: "ios" | "md" | "ionic";
3088
3602
  /**
3089
3603
  * The type of the button.
3090
3604
  * @default 'button'
@@ -3134,11 +3648,11 @@ export namespace Components {
3134
3648
  */
3135
3649
  "errorText"?: string;
3136
3650
  /**
3137
- * 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.
3651
+ * 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.
3138
3652
  */
3139
3653
  "expandedIcon"?: string;
3140
3654
  /**
3141
- * 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.
3655
+ * 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.
3142
3656
  */
3143
3657
  "fill"?: 'outline' | 'solid';
3144
3658
  /**
@@ -3169,7 +3683,7 @@ export namespace Components {
3169
3683
  */
3170
3684
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
3171
3685
  /**
3172
- * The mode determines which platform styles to use.
3686
+ * The mode determines the platform behaviors of the component.
3173
3687
  */
3174
3688
  "mode"?: "ios" | "md";
3175
3689
  /**
@@ -3206,11 +3720,19 @@ export namespace Components {
3206
3720
  */
3207
3721
  "selectedText"?: string | null;
3208
3722
  /**
3209
- * The shape of the select. If "round" it will have an increased border radius.
3723
+ * 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.
3724
+ */
3725
+ "shape"?: 'soft' | 'round' | 'rectangular';
3726
+ /**
3727
+ * 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.
3728
+ */
3729
+ "size"?: 'small' | 'medium' | 'large';
3730
+ /**
3731
+ * The theme determines the visual appearance of the component.
3210
3732
  */
3211
- "shape"?: 'round';
3733
+ "theme"?: "ios" | "md" | "ionic";
3212
3734
  /**
3213
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
3735
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
3214
3736
  */
3215
3737
  "toggleIcon"?: string;
3216
3738
  /**
@@ -3232,6 +3754,14 @@ export namespace Components {
3232
3754
  * @default false
3233
3755
  */
3234
3756
  "disabled": boolean;
3757
+ /**
3758
+ * The mode determines the platform behaviors of the component.
3759
+ */
3760
+ "mode"?: "ios" | "md";
3761
+ /**
3762
+ * The theme determines the visual appearance of the component.
3763
+ */
3764
+ "theme"?: "ios" | "md" | "ionic";
3235
3765
  /**
3236
3766
  * The text value of the option.
3237
3767
  */
@@ -3246,6 +3776,10 @@ export namespace Components {
3246
3776
  * The text content of the popover body
3247
3777
  */
3248
3778
  "message"?: string;
3779
+ /**
3780
+ * The mode determines the platform behaviors of the component.
3781
+ */
3782
+ "mode"?: "ios" | "md";
3249
3783
  /**
3250
3784
  * If true, the select accepts multiple values
3251
3785
  */
@@ -3259,6 +3793,10 @@ export namespace Components {
3259
3793
  * The subheader text of the popover
3260
3794
  */
3261
3795
  "subHeader"?: string;
3796
+ /**
3797
+ * The theme determines the visual appearance of the component.
3798
+ */
3799
+ "theme"?: "ios" | "md" | "ionic";
3262
3800
  }
3263
3801
  interface IonSkeletonText {
3264
3802
  /**
@@ -3266,6 +3804,14 @@ export namespace Components {
3266
3804
  * @default false
3267
3805
  */
3268
3806
  "animated": boolean;
3807
+ /**
3808
+ * The mode determines the platform behaviors of the component.
3809
+ */
3810
+ "mode"?: "ios" | "md";
3811
+ /**
3812
+ * The theme determines the visual appearance of the component.
3813
+ */
3814
+ "theme"?: "ios" | "md" | "ionic";
3269
3815
  }
3270
3816
  interface IonSpinner {
3271
3817
  /**
@@ -3276,6 +3822,10 @@ export namespace Components {
3276
3822
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
3277
3823
  */
3278
3824
  "duration"?: number;
3825
+ /**
3826
+ * The mode determines the platform behaviors of the component.
3827
+ */
3828
+ "mode"?: "ios" | "md";
3279
3829
  /**
3280
3830
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
3281
3831
  */
@@ -3285,6 +3835,14 @@ export namespace Components {
3285
3835
  * @default false
3286
3836
  */
3287
3837
  "paused": boolean;
3838
+ /**
3839
+ * 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.
3840
+ */
3841
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
3842
+ /**
3843
+ * The theme determines the visual appearance of the component.
3844
+ */
3845
+ "theme"?: "ios" | "md" | "ionic";
3288
3846
  }
3289
3847
  interface IonSplitPane {
3290
3848
  /**
@@ -3297,6 +3855,14 @@ export namespace Components {
3297
3855
  */
3298
3856
  "disabled": boolean;
3299
3857
  "isVisible": () => Promise<boolean>;
3858
+ /**
3859
+ * The mode determines the platform behaviors of the component.
3860
+ */
3861
+ "mode"?: "ios" | "md";
3862
+ /**
3863
+ * The theme determines the visual appearance of the component.
3864
+ */
3865
+ "theme"?: "ios" | "md" | "ionic";
3300
3866
  /**
3301
3867
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
3302
3868
  * @default QUERY['lg']
@@ -3313,6 +3879,10 @@ export namespace Components {
3313
3879
  */
3314
3880
  "component"?: ComponentRef;
3315
3881
  "delegate"?: FrameworkDelegate;
3882
+ /**
3883
+ * The mode determines the platform behaviors of the component.
3884
+ */
3885
+ "mode"?: "ios" | "md";
3316
3886
  /**
3317
3887
  * Set the active component for the tab
3318
3888
  */
@@ -3321,6 +3891,10 @@ export namespace Components {
3321
3891
  * 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.
3322
3892
  */
3323
3893
  "tab": string;
3894
+ /**
3895
+ * The theme determines the visual appearance of the component.
3896
+ */
3897
+ "theme"?: "ios" | "md" | "ionic";
3324
3898
  }
3325
3899
  interface IonTabBar {
3326
3900
  /**
@@ -3328,7 +3902,12 @@ export namespace Components {
3328
3902
  */
3329
3903
  "color"?: Color;
3330
3904
  /**
3331
- * The mode determines which platform styles to use.
3905
+ * 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"`.
3906
+ * @default 'full'
3907
+ */
3908
+ "expand": 'compact' | 'full';
3909
+ /**
3910
+ * The mode determines the platform behaviors of the component.
3332
3911
  */
3333
3912
  "mode"?: "ios" | "md";
3334
3913
  /**
@@ -3336,7 +3915,15 @@ export namespace Components {
3336
3915
  */
3337
3916
  "selectedTab"?: string;
3338
3917
  /**
3339
- * 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).
3918
+ * 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.
3919
+ */
3920
+ "shape"?: 'soft' | 'round' | 'rectangular';
3921
+ /**
3922
+ * The theme determines the visual appearance of the component.
3923
+ */
3924
+ "theme"?: "ios" | "md" | "ionic";
3925
+ /**
3926
+ * 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).
3340
3927
  * @default false
3341
3928
  */
3342
3929
  "translucent": boolean;
@@ -3360,7 +3947,7 @@ export namespace Components {
3360
3947
  */
3361
3948
  "layout"?: TabButtonLayout;
3362
3949
  /**
3363
- * The mode determines which platform styles to use.
3950
+ * The mode determines the platform behaviors of the component.
3364
3951
  */
3365
3952
  "mode"?: "ios" | "md";
3366
3953
  /**
@@ -3372,6 +3959,10 @@ export namespace Components {
3372
3959
  * @default false
3373
3960
  */
3374
3961
  "selected": boolean;
3962
+ /**
3963
+ * 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.
3964
+ */
3965
+ "shape"?: 'soft' | 'round' | 'rectangular';
3375
3966
  /**
3376
3967
  * 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.
3377
3968
  */
@@ -3380,6 +3971,10 @@ export namespace Components {
3380
3971
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
3381
3972
  */
3382
3973
  "target": string | undefined;
3974
+ /**
3975
+ * The theme determines the visual appearance of the component.
3976
+ */
3977
+ "theme"?: "ios" | "md" | "ionic";
3383
3978
  }
3384
3979
  interface IonTabs {
3385
3980
  "getRouteId": () => Promise<RouteID | undefined>;
@@ -3392,12 +3987,20 @@ export namespace Components {
3392
3987
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3393
3988
  */
3394
3989
  "getTab": (tab: string | HTMLIonTabElement) => Promise<HTMLIonTabElement | undefined>;
3990
+ /**
3991
+ * The mode determines the platform behaviors of the component.
3992
+ */
3993
+ "mode"?: "ios" | "md";
3395
3994
  /**
3396
3995
  * 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.
3397
3996
  * @param tab The tab instance to select. If passed a string, it should be the value of the tab's `tab` property.
3398
3997
  */
3399
3998
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3400
3999
  "setRouteId": (id: string) => Promise<RouteWrite>;
4000
+ /**
4001
+ * The theme determines the visual appearance of the component.
4002
+ */
4003
+ "theme"?: "ios" | "md" | "ionic";
3401
4004
  /**
3402
4005
  * @default false
3403
4006
  */
@@ -3409,9 +4012,13 @@ export namespace Components {
3409
4012
  */
3410
4013
  "color"?: Color;
3411
4014
  /**
3412
- * The mode determines which platform styles to use.
4015
+ * The mode determines the platform behaviors of the component.
3413
4016
  */
3414
4017
  "mode"?: "ios" | "md";
4018
+ /**
4019
+ * The theme determines the visual appearance of the component.
4020
+ */
4021
+ "theme"?: "ios" | "md" | "ionic";
3415
4022
  }
3416
4023
  interface IonTextarea {
3417
4024
  /**
@@ -3469,7 +4076,7 @@ export namespace Components {
3469
4076
  */
3470
4077
  "errorText"?: string;
3471
4078
  /**
3472
- * 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.
4079
+ * 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"`.
3473
4080
  */
3474
4081
  "fill"?: 'outline' | 'solid';
3475
4082
  /**
@@ -3502,7 +4109,7 @@ export namespace Components {
3502
4109
  */
3503
4110
  "minlength"?: number;
3504
4111
  /**
3505
- * The mode determines which platform styles to use.
4112
+ * The mode determines the platform behaviors of the component.
3506
4113
  */
3507
4114
  "mode"?: "ios" | "md";
3508
4115
  /**
@@ -3533,14 +4140,23 @@ export namespace Components {
3533
4140
  */
3534
4141
  "setFocus": () => Promise<void>;
3535
4142
  /**
3536
- * The shape of the textarea. If "round" it will have an increased border radius.
4143
+ * 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.
4144
+ */
4145
+ "shape"?: 'soft' | 'round' | 'rectangular';
4146
+ /**
4147
+ * 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.
4148
+ * @default 'medium'
3537
4149
  */
3538
- "shape"?: 'round';
4150
+ "size"?: 'small' | 'medium' | 'large';
3539
4151
  /**
3540
4152
  * If `true`, the element will have its spelling and grammar checked.
3541
4153
  * @default false
3542
4154
  */
3543
4155
  "spellcheck": boolean;
4156
+ /**
4157
+ * The theme determines the visual appearance of the component.
4158
+ */
4159
+ "theme"?: "ios" | "md" | "ionic";
3544
4160
  /**
3545
4161
  * The value of the textarea.
3546
4162
  * @default ''
@@ -3552,16 +4168,32 @@ export namespace Components {
3552
4168
  "wrap"?: 'hard' | 'soft' | 'off';
3553
4169
  }
3554
4170
  interface IonThumbnail {
4171
+ /**
4172
+ * The mode determines the platform behaviors of the component.
4173
+ */
4174
+ "mode"?: "ios" | "md";
4175
+ /**
4176
+ * The theme determines the visual appearance of the component.
4177
+ */
4178
+ "theme"?: "ios" | "md" | "ionic";
3555
4179
  }
3556
4180
  interface IonTitle {
3557
4181
  /**
3558
4182
  * 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).
3559
4183
  */
3560
4184
  "color"?: Color;
4185
+ /**
4186
+ * The mode determines the platform behaviors of the component.
4187
+ */
4188
+ "mode"?: "ios" | "md";
3561
4189
  /**
3562
4190
  * The size of the toolbar title.
3563
4191
  */
3564
4192
  "size"?: 'large' | 'small';
4193
+ /**
4194
+ * The theme determines the visual appearance of the component.
4195
+ */
4196
+ "theme"?: "ios" | "md" | "ionic";
3565
4197
  }
3566
4198
  interface IonToast {
3567
4199
  /**
@@ -3609,6 +4241,11 @@ export namespace Components {
3609
4241
  * Additional attributes to pass to the toast.
3610
4242
  */
3611
4243
  "htmlAttributes"?: { [key: string]: any };
4244
+ /**
4245
+ * Set to `"bold"` for a toast with vibrant, bold colors or to `"subtle"` for a toast with muted, subtle colors. Only applies to the `ionic` theme.
4246
+ * @default 'subtle'
4247
+ */
4248
+ "hue"?: 'bold' | 'subtle';
3612
4249
  /**
3613
4250
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
3614
4251
  */
@@ -3637,7 +4274,7 @@ export namespace Components {
3637
4274
  */
3638
4275
  "message"?: string | IonicSafeString;
3639
4276
  /**
3640
- * The mode determines which platform styles to use.
4277
+ * The mode determines the platform behaviors of the component.
3641
4278
  */
3642
4279
  "mode"?: "ios" | "md";
3643
4280
  /**
@@ -3662,12 +4299,20 @@ export namespace Components {
3662
4299
  * Present the toast overlay after it has been created.
3663
4300
  */
3664
4301
  "present": () => Promise<void>;
4302
+ /**
4303
+ * 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.
4304
+ */
4305
+ "shape"?: 'soft' | 'round' | 'rectangular';
3665
4306
  /**
3666
4307
  * 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.
3667
4308
  */
3668
4309
  "swipeGesture"?: ToastSwipeGestureDirection;
3669
4310
  /**
3670
- * 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).
4311
+ * The theme determines the visual appearance of the component.
4312
+ */
4313
+ "theme"?: "ios" | "md" | "ionic";
4314
+ /**
4315
+ * 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).
3671
4316
  * @default false
3672
4317
  */
3673
4318
  "translucent": boolean;
@@ -3718,7 +4363,7 @@ export namespace Components {
3718
4363
  */
3719
4364
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3720
4365
  /**
3721
- * The mode determines which platform styles to use.
4366
+ * The mode determines the platform behaviors of the component.
3722
4367
  */
3723
4368
  "mode"?: "ios" | "md";
3724
4369
  /**
@@ -3731,6 +4376,10 @@ export namespace Components {
3731
4376
  * @default false
3732
4377
  */
3733
4378
  "required": boolean;
4379
+ /**
4380
+ * The theme determines the visual appearance of the component.
4381
+ */
4382
+ "theme"?: "ios" | "md" | "ionic";
3734
4383
  /**
3735
4384
  * 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>`.
3736
4385
  * @default 'on'
@@ -3743,9 +4392,13 @@ export namespace Components {
3743
4392
  */
3744
4393
  "color"?: Color;
3745
4394
  /**
3746
- * The mode determines which platform styles to use.
4395
+ * The mode determines the platform behaviors of the component.
3747
4396
  */
3748
4397
  "mode"?: "ios" | "md";
4398
+ /**
4399
+ * The theme determines the visual appearance of the component.
4400
+ */
4401
+ "theme"?: "ios" | "md" | "ionic";
3749
4402
  }
3750
4403
  }
3751
4404
  export interface IonAccordionGroupCustomEvent<T> extends CustomEvent<T> {
@@ -4227,6 +4880,12 @@ declare global {
4227
4880
  prototype: HTMLIonDatetimeButtonElement;
4228
4881
  new (): HTMLIonDatetimeButtonElement;
4229
4882
  };
4883
+ interface HTMLIonDividerElement extends Components.IonDivider, HTMLStencilElement {
4884
+ }
4885
+ var HTMLIonDividerElement: {
4886
+ prototype: HTMLIonDividerElement;
4887
+ new (): HTMLIonDividerElement;
4888
+ };
4230
4889
  interface HTMLIonFabElement extends Components.IonFab, HTMLStencilElement {
4231
4890
  }
4232
4891
  var HTMLIonFabElement: {
@@ -5207,6 +5866,7 @@ declare global {
5207
5866
  "ion-content": HTMLIonContentElement;
5208
5867
  "ion-datetime": HTMLIonDatetimeElement;
5209
5868
  "ion-datetime-button": HTMLIonDatetimeButtonElement;
5869
+ "ion-divider": HTMLIonDividerElement;
5210
5870
  "ion-fab": HTMLIonFabElement;
5211
5871
  "ion-fab-button": HTMLIonFabButtonElement;
5212
5872
  "ion-fab-list": HTMLIonFabListElement;
@@ -5290,7 +5950,7 @@ declare namespace LocalJSX {
5290
5950
  */
5291
5951
  "disabled"?: boolean;
5292
5952
  /**
5293
- * The mode determines which platform styles to use.
5953
+ * The mode determines the platform behaviors of the component.
5294
5954
  */
5295
5955
  "mode"?: "ios" | "md";
5296
5956
  /**
@@ -5298,9 +5958,12 @@ declare namespace LocalJSX {
5298
5958
  * @default false
5299
5959
  */
5300
5960
  "readonly"?: boolean;
5961
+ /**
5962
+ * The theme determines the visual appearance of the component.
5963
+ */
5964
+ "theme"?: "ios" | "md" | "ionic";
5301
5965
  /**
5302
5966
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
5303
- * @default chevronDown
5304
5967
  */
5305
5968
  "toggleIcon"?: string;
5306
5969
  /**
@@ -5331,7 +5994,7 @@ declare namespace LocalJSX {
5331
5994
  */
5332
5995
  "expand"?: 'compact' | 'inset';
5333
5996
  /**
5334
- * The mode determines which platform styles to use.
5997
+ * The mode determines the platform behaviors of the component.
5335
5998
  */
5336
5999
  "mode"?: "ios" | "md";
5337
6000
  /**
@@ -5347,6 +6010,14 @@ declare namespace LocalJSX {
5347
6010
  * @default false
5348
6011
  */
5349
6012
  "readonly"?: boolean;
6013
+ /**
6014
+ * 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"`.
6015
+ */
6016
+ "shape"?: 'soft' | 'round' | 'rectangular';
6017
+ /**
6018
+ * The theme determines the visual appearance of the component.
6019
+ */
6020
+ "theme"?: "ios" | "md" | "ionic";
5350
6021
  /**
5351
6022
  * The value of the accordion group. This controls which accordions are expanded. This should be an array of strings only when `multiple="true"`
5352
6023
  */
@@ -5399,7 +6070,7 @@ declare namespace LocalJSX {
5399
6070
  */
5400
6071
  "leaveAnimation"?: AnimationBuilder;
5401
6072
  /**
5402
- * The mode determines which platform styles to use.
6073
+ * The mode determines the platform behaviors of the component.
5403
6074
  */
5404
6075
  "mode"?: "ios" | "md";
5405
6076
  /**
@@ -5439,7 +6110,11 @@ declare namespace LocalJSX {
5439
6110
  */
5440
6111
  "subHeader"?: string;
5441
6112
  /**
5442
- * 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).
6113
+ * The theme determines the visual appearance of the component.
6114
+ */
6115
+ "theme"?: "ios" | "md" | "ionic";
6116
+ /**
6117
+ * 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).
5443
6118
  * @default false
5444
6119
  */
5445
6120
  "translucent"?: boolean;
@@ -5504,7 +6179,7 @@ declare namespace LocalJSX {
5504
6179
  */
5505
6180
  "message"?: string | IonicSafeString;
5506
6181
  /**
5507
- * The mode determines which platform styles to use.
6182
+ * The mode determines the platform behaviors of the component.
5508
6183
  */
5509
6184
  "mode"?: "ios" | "md";
5510
6185
  /**
@@ -5544,7 +6219,11 @@ declare namespace LocalJSX {
5544
6219
  */
5545
6220
  "subHeader"?: string;
5546
6221
  /**
5547
- * 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).
6222
+ * The theme determines the visual appearance of the component.
6223
+ */
6224
+ "theme"?: "ios" | "md" | "ionic";
6225
+ /**
6226
+ * 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).
5548
6227
  * @default false
5549
6228
  */
5550
6229
  "translucent"?: boolean;
@@ -5554,8 +6233,37 @@ declare namespace LocalJSX {
5554
6233
  "trigger"?: string | undefined;
5555
6234
  }
5556
6235
  interface IonApp {
6236
+ /**
6237
+ * The mode determines the platform behaviors of the component.
6238
+ */
6239
+ "mode"?: "ios" | "md";
6240
+ /**
6241
+ * The theme determines the visual appearance of the component.
6242
+ */
6243
+ "theme"?: "ios" | "md" | "ionic";
5557
6244
  }
5558
6245
  interface IonAvatar {
6246
+ /**
6247
+ * If `true`, the user cannot interact with the avatar.
6248
+ * @default false
6249
+ */
6250
+ "disabled"?: boolean;
6251
+ /**
6252
+ * The mode determines the platform behaviors of the component.
6253
+ */
6254
+ "mode"?: "ios" | "md";
6255
+ /**
6256
+ * 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.
6257
+ */
6258
+ "shape"?: 'soft' | 'round' | 'rectangular';
6259
+ /**
6260
+ * 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.
6261
+ */
6262
+ "size"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
6263
+ /**
6264
+ * The theme determines the visual appearance of the component.
6265
+ */
6266
+ "theme"?: "ios" | "md" | "ionic";
5559
6267
  }
5560
6268
  interface IonBackButton {
5561
6269
  /**
@@ -5576,7 +6284,7 @@ declare namespace LocalJSX {
5576
6284
  */
5577
6285
  "icon"?: string | null;
5578
6286
  /**
5579
- * The mode determines which platform styles to use.
6287
+ * The mode determines the platform behaviors of the component.
5580
6288
  */
5581
6289
  "mode"?: "ios" | "md";
5582
6290
  /**
@@ -5587,6 +6295,10 @@ declare namespace LocalJSX {
5587
6295
  * The text to display in the back button.
5588
6296
  */
5589
6297
  "text"?: string | null;
6298
+ /**
6299
+ * The theme determines the visual appearance of the component.
6300
+ */
6301
+ "theme"?: "ios" | "md" | "ionic";
5590
6302
  /**
5591
6303
  * The type of the button.
5592
6304
  * @default 'button'
@@ -5594,6 +6306,10 @@ declare namespace LocalJSX {
5594
6306
  "type"?: 'submit' | 'reset' | 'button';
5595
6307
  }
5596
6308
  interface IonBackdrop {
6309
+ /**
6310
+ * The mode determines the platform behaviors of the component.
6311
+ */
6312
+ "mode"?: "ios" | "md";
5597
6313
  /**
5598
6314
  * Emitted when the backdrop is tapped.
5599
6315
  */
@@ -5608,6 +6324,10 @@ declare namespace LocalJSX {
5608
6324
  * @default true
5609
6325
  */
5610
6326
  "tappable"?: boolean;
6327
+ /**
6328
+ * The theme determines the visual appearance of the component.
6329
+ */
6330
+ "theme"?: "ios" | "md" | "ionic";
5611
6331
  /**
5612
6332
  * If `true`, the backdrop will be visible.
5613
6333
  * @default true
@@ -5620,9 +6340,29 @@ declare namespace LocalJSX {
5620
6340
  */
5621
6341
  "color"?: Color;
5622
6342
  /**
5623
- * The mode determines which platform styles to use.
6343
+ * Set to `"bold"` for a badge with vibrant, bold colors or to `"subtle"` for a badge with muted, subtle colors. Only applies to the `ionic` theme.
6344
+ */
6345
+ "hue"?: 'bold' | 'subtle';
6346
+ /**
6347
+ * The mode determines the platform behaviors of the component.
5624
6348
  */
5625
6349
  "mode"?: "ios" | "md";
6350
+ /**
6351
+ * 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.
6352
+ */
6353
+ "shape"?: 'soft' | 'round | rectangular';
6354
+ /**
6355
+ * Set to `"small"` for a small badge. Set to `"medium"` for a medium badge. Set to `"large"` for a large badge, when it is empty (no text or icon). Defaults to `"small"` for the `ionic` theme, undefined for all other themes.
6356
+ */
6357
+ "size"?: 'small' | 'medium' | 'large';
6358
+ /**
6359
+ * The theme determines the visual appearance of the component.
6360
+ */
6361
+ "theme"?: "ios" | "md" | "ionic";
6362
+ /**
6363
+ * 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.
6364
+ */
6365
+ "vertical"?: 'top' | 'bottom';
5626
6366
  }
5627
6367
  interface IonBreadcrumb {
5628
6368
  /**
@@ -5648,7 +6388,7 @@ declare namespace LocalJSX {
5648
6388
  */
5649
6389
  "href"?: string | undefined;
5650
6390
  /**
5651
- * The mode determines which platform styles to use.
6391
+ * The mode determines the platform behaviors of the component.
5652
6392
  */
5653
6393
  "mode"?: "ios" | "md";
5654
6394
  /**
@@ -5680,6 +6420,10 @@ declare namespace LocalJSX {
5680
6420
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5681
6421
  */
5682
6422
  "target"?: string | undefined;
6423
+ /**
6424
+ * The theme determines the visual appearance of the component.
6425
+ */
6426
+ "theme"?: "ios" | "md" | "ionic";
5683
6427
  }
5684
6428
  interface IonBreadcrumbs {
5685
6429
  /**
@@ -5701,13 +6445,17 @@ declare namespace LocalJSX {
5701
6445
  */
5702
6446
  "maxItems"?: number;
5703
6447
  /**
5704
- * The mode determines which platform styles to use.
6448
+ * The mode determines the platform behaviors of the component.
5705
6449
  */
5706
6450
  "mode"?: "ios" | "md";
5707
6451
  /**
5708
6452
  * Emitted when the collapsed indicator is clicked on.
5709
6453
  */
5710
6454
  "onIonCollapsedClick"?: (event: IonBreadcrumbsCustomEvent<BreadcrumbCollapsedClickEventDetail>) => void;
6455
+ /**
6456
+ * The theme determines the visual appearance of the component.
6457
+ */
6458
+ "theme"?: "ios" | "md" | "ionic";
5711
6459
  }
5712
6460
  interface IonButton {
5713
6461
  /**
@@ -5745,7 +6493,7 @@ declare namespace LocalJSX {
5745
6493
  */
5746
6494
  "href"?: string | undefined;
5747
6495
  /**
5748
- * The mode determines which platform styles to use.
6496
+ * The mode determines the platform behaviors of the component.
5749
6497
  */
5750
6498
  "mode"?: "ios" | "md";
5751
6499
  /**
@@ -5770,13 +6518,13 @@ declare namespace LocalJSX {
5770
6518
  */
5771
6519
  "routerDirection"?: RouterDirection;
5772
6520
  /**
5773
- * Set to `"round"` for a button with more rounded corners.
6521
+ * 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.
5774
6522
  */
5775
- "shape"?: 'round';
6523
+ "shape"?: 'soft' | 'round' | 'rectangular';
5776
6524
  /**
5777
- * 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.
6525
+ * Set to `"small"` for a button with less height and padding, to `"medium"` for a button with the medium 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.
5778
6526
  */
5779
- "size"?: 'small' | 'default' | 'large';
6527
+ "size"?: 'small' | 'default' | 'medium' | 'large';
5780
6528
  /**
5781
6529
  * If `true`, activates a button with a heavier font weight.
5782
6530
  * @default false
@@ -5786,6 +6534,10 @@ declare namespace LocalJSX {
5786
6534
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5787
6535
  */
5788
6536
  "target"?: string | undefined;
6537
+ /**
6538
+ * The theme determines the visual appearance of the component.
6539
+ */
6540
+ "theme"?: "ios" | "md" | "ionic";
5789
6541
  /**
5790
6542
  * The type of the button.
5791
6543
  * @default 'button'
@@ -5794,10 +6546,18 @@ declare namespace LocalJSX {
5794
6546
  }
5795
6547
  interface IonButtons {
5796
6548
  /**
5797
- * 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)
6549
+ * 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)
5798
6550
  * @default false
5799
6551
  */
5800
6552
  "collapse"?: boolean;
6553
+ /**
6554
+ * The mode determines the platform behaviors of the component.
6555
+ */
6556
+ "mode"?: "ios" | "md";
6557
+ /**
6558
+ * The theme determines the visual appearance of the component.
6559
+ */
6560
+ "theme"?: "ios" | "md" | "ionic";
5801
6561
  }
5802
6562
  interface IonCard {
5803
6563
  /**
@@ -5823,7 +6583,7 @@ declare namespace LocalJSX {
5823
6583
  */
5824
6584
  "href"?: string | undefined;
5825
6585
  /**
5826
- * The mode determines which platform styles to use.
6586
+ * The mode determines the platform behaviors of the component.
5827
6587
  */
5828
6588
  "mode"?: "ios" | "md";
5829
6589
  /**
@@ -5839,10 +6599,19 @@ declare namespace LocalJSX {
5839
6599
  * @default 'forward'
5840
6600
  */
5841
6601
  "routerDirection"?: RouterDirection;
6602
+ /**
6603
+ * 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"`.
6604
+ * @default 'round'
6605
+ */
6606
+ "shape"?: 'soft' | 'round' | 'rectangular';
5842
6607
  /**
5843
6608
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
5844
6609
  */
5845
6610
  "target"?: string | undefined;
6611
+ /**
6612
+ * The theme determines the visual appearance of the component.
6613
+ */
6614
+ "theme"?: "ios" | "md" | "ionic";
5846
6615
  /**
5847
6616
  * The type of the button. Only used when an `onclick` or `button` property is present.
5848
6617
  * @default 'button'
@@ -5851,9 +6620,13 @@ declare namespace LocalJSX {
5851
6620
  }
5852
6621
  interface IonCardContent {
5853
6622
  /**
5854
- * The mode determines which platform styles to use.
6623
+ * The mode determines the platform behaviors of the component.
5855
6624
  */
5856
6625
  "mode"?: "ios" | "md";
6626
+ /**
6627
+ * The theme determines the visual appearance of the component.
6628
+ */
6629
+ "theme"?: "ios" | "md" | "ionic";
5857
6630
  }
5858
6631
  interface IonCardHeader {
5859
6632
  /**
@@ -5861,11 +6634,15 @@ declare namespace LocalJSX {
5861
6634
  */
5862
6635
  "color"?: Color;
5863
6636
  /**
5864
- * The mode determines which platform styles to use.
6637
+ * The mode determines the platform behaviors of the component.
5865
6638
  */
5866
6639
  "mode"?: "ios" | "md";
5867
6640
  /**
5868
- * 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).
6641
+ * The theme determines the visual appearance of the component.
6642
+ */
6643
+ "theme"?: "ios" | "md" | "ionic";
6644
+ /**
6645
+ * 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).
5869
6646
  * @default false
5870
6647
  */
5871
6648
  "translucent"?: boolean;
@@ -5876,9 +6653,13 @@ declare namespace LocalJSX {
5876
6653
  */
5877
6654
  "color"?: Color;
5878
6655
  /**
5879
- * The mode determines which platform styles to use.
6656
+ * The mode determines the platform behaviors of the component.
5880
6657
  */
5881
6658
  "mode"?: "ios" | "md";
6659
+ /**
6660
+ * The theme determines the visual appearance of the component.
6661
+ */
6662
+ "theme"?: "ios" | "md" | "ionic";
5882
6663
  }
5883
6664
  interface IonCardTitle {
5884
6665
  /**
@@ -5886,9 +6667,13 @@ declare namespace LocalJSX {
5886
6667
  */
5887
6668
  "color"?: Color;
5888
6669
  /**
5889
- * The mode determines which platform styles to use.
6670
+ * The mode determines the platform behaviors of the component.
5890
6671
  */
5891
6672
  "mode"?: "ios" | "md";
6673
+ /**
6674
+ * The theme determines the visual appearance of the component.
6675
+ */
6676
+ "theme"?: "ios" | "md" | "ionic";
5892
6677
  }
5893
6678
  interface IonCheckbox {
5894
6679
  /**
@@ -5932,7 +6717,7 @@ declare namespace LocalJSX {
5932
6717
  */
5933
6718
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5934
6719
  /**
5935
- * The mode determines which platform styles to use.
6720
+ * The mode determines the platform behaviors of the component.
5936
6721
  */
5937
6722
  "mode"?: "ios" | "md";
5938
6723
  /**
@@ -5945,7 +6730,7 @@ declare namespace LocalJSX {
5945
6730
  */
5946
6731
  "onIonBlur"?: (event: IonCheckboxCustomEvent<void>) => void;
5947
6732
  /**
5948
- * 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.
6733
+ * 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.
5949
6734
  */
5950
6735
  "onIonChange"?: (event: IonCheckboxCustomEvent<CheckboxChangeEventDetail>) => void;
5951
6736
  /**
@@ -5957,6 +6742,19 @@ declare namespace LocalJSX {
5957
6742
  * @default false
5958
6743
  */
5959
6744
  "required"?: boolean;
6745
+ /**
6746
+ * Set to `"soft"` for a checkbox with more rounded corners. Only available when the theme is `"ionic"`.
6747
+ * @default 'soft'
6748
+ */
6749
+ "shape"?: 'soft' | 'rectangular';
6750
+ /**
6751
+ * Set to `"small"` for a checkbox with less height and padding.
6752
+ */
6753
+ "size"?: 'small';
6754
+ /**
6755
+ * The theme determines the visual appearance of the component.
6756
+ */
6757
+ "theme"?: "ios" | "md" | "ionic";
5960
6758
  /**
5961
6759
  * 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>`.
5962
6760
  * @default 'on'
@@ -5974,7 +6772,12 @@ declare namespace LocalJSX {
5974
6772
  */
5975
6773
  "disabled"?: boolean;
5976
6774
  /**
5977
- * The mode determines which platform styles to use.
6775
+ * Set to `"bold"` for a chip with vibrant, bold colors or to `"subtle"` for a chip with muted, subtle colors. Only applies to the `ionic` theme.
6776
+ * @default 'subtle'
6777
+ */
6778
+ "hue"?: 'bold' | 'subtle';
6779
+ /**
6780
+ * The mode determines the platform behaviors of the component.
5978
6781
  */
5979
6782
  "mode"?: "ios" | "md";
5980
6783
  /**
@@ -5982,8 +6785,24 @@ declare namespace LocalJSX {
5982
6785
  * @default false
5983
6786
  */
5984
6787
  "outline"?: boolean;
6788
+ /**
6789
+ * 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.
6790
+ */
6791
+ "shape"?: 'soft' | 'round' | 'rectangular';
6792
+ /**
6793
+ * Set to `"small"` for a chip with less height and padding. Defaults to `"large"` for the ionic theme, and undefined for all other themes.
6794
+ */
6795
+ "size"?: 'small' | 'large';
6796
+ /**
6797
+ * The theme determines the visual appearance of the component.
6798
+ */
6799
+ "theme"?: "ios" | "md" | "ionic";
5985
6800
  }
5986
6801
  interface IonCol {
6802
+ /**
6803
+ * The mode determines the platform behaviors of the component.
6804
+ */
6805
+ "mode"?: "ios" | "md";
5987
6806
  /**
5988
6807
  * The amount to offset the column, in terms of how many columns it should shift to the end of the total available.
5989
6808
  */
@@ -6080,6 +6899,10 @@ declare namespace LocalJSX {
6080
6899
  * 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.
6081
6900
  */
6082
6901
  "sizeXs"?: string;
6902
+ /**
6903
+ * The theme determines the visual appearance of the component.
6904
+ */
6905
+ "theme"?: "ios" | "md" | "ionic";
6083
6906
  }
6084
6907
  interface IonContent {
6085
6908
  /**
@@ -6100,6 +6923,10 @@ declare namespace LocalJSX {
6100
6923
  * @default false
6101
6924
  */
6102
6925
  "fullscreen"?: boolean;
6926
+ /**
6927
+ * The mode determines the platform behaviors of the component.
6928
+ */
6929
+ "mode"?: "ios" | "md";
6103
6930
  /**
6104
6931
  * Emitted while scrolling. This event is disabled by default. Set `scrollEvents` to `true` to enable.
6105
6932
  */
@@ -6127,6 +6954,10 @@ declare namespace LocalJSX {
6127
6954
  * @default true
6128
6955
  */
6129
6956
  "scrollY"?: boolean;
6957
+ /**
6958
+ * The theme determines the visual appearance of the component.
6959
+ */
6960
+ "theme"?: "ios" | "md" | "ionic";
6130
6961
  }
6131
6962
  interface IonDatetime {
6132
6963
  /**
@@ -6201,7 +7032,7 @@ declare namespace LocalJSX {
6201
7032
  */
6202
7033
  "minuteValues"?: number[] | number | string;
6203
7034
  /**
6204
- * The mode determines which platform styles to use.
7035
+ * The mode determines the platform behaviors of the component.
6205
7036
  */
6206
7037
  "mode"?: "ios" | "md";
6207
7038
  /**
@@ -6279,6 +7110,10 @@ declare namespace LocalJSX {
6279
7110
  * @default 'fixed'
6280
7111
  */
6281
7112
  "size"?: 'cover' | 'fixed';
7113
+ /**
7114
+ * The theme determines the visual appearance of the component.
7115
+ */
7116
+ "theme"?: "ios" | "md" | "ionic";
6282
7117
  /**
6283
7118
  * 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.
6284
7119
  */
@@ -6308,9 +7143,25 @@ declare namespace LocalJSX {
6308
7143
  */
6309
7144
  "disabled"?: boolean;
6310
7145
  /**
6311
- * The mode determines which platform styles to use.
7146
+ * The mode determines the platform behaviors of the component.
6312
7147
  */
6313
7148
  "mode"?: "ios" | "md";
7149
+ /**
7150
+ * The theme determines the visual appearance of the component.
7151
+ */
7152
+ "theme"?: "ios" | "md" | "ionic";
7153
+ }
7154
+ interface IonDivider {
7155
+ /**
7156
+ * If `true`, the divider will have horizontal margins By default, it's `false`
7157
+ * @default false
7158
+ */
7159
+ "inset"?: boolean;
7160
+ /**
7161
+ * 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"`.
7162
+ * @default 'medium'
7163
+ */
7164
+ "spacing"?: 'xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge';
6314
7165
  }
6315
7166
  interface IonFab {
6316
7167
  /**
@@ -6327,6 +7178,14 @@ declare namespace LocalJSX {
6327
7178
  * Where to align the fab horizontally in the viewport.
6328
7179
  */
6329
7180
  "horizontal"?: 'start' | 'end' | 'center';
7181
+ /**
7182
+ * The mode determines the platform behaviors of the component.
7183
+ */
7184
+ "mode"?: "ios" | "md";
7185
+ /**
7186
+ * The theme determines the visual appearance of the component.
7187
+ */
7188
+ "theme"?: "ios" | "md" | "ionic";
6330
7189
  /**
6331
7190
  * Where to align the fab vertically in the viewport.
6332
7191
  */
@@ -6340,7 +7199,6 @@ declare namespace LocalJSX {
6340
7199
  "activated"?: boolean;
6341
7200
  /**
6342
7201
  * 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.
6343
- * @default close
6344
7202
  */
6345
7203
  "closeIcon"?: string;
6346
7204
  /**
@@ -6361,7 +7219,7 @@ declare namespace LocalJSX {
6361
7219
  */
6362
7220
  "href"?: string | undefined;
6363
7221
  /**
6364
- * The mode determines which platform styles to use.
7222
+ * The mode determines the platform behaviors of the component.
6365
7223
  */
6366
7224
  "mode"?: "ios" | "md";
6367
7225
  /**
@@ -6399,7 +7257,11 @@ declare namespace LocalJSX {
6399
7257
  */
6400
7258
  "target"?: string | undefined;
6401
7259
  /**
6402
- * 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).
7260
+ * The theme determines the visual appearance of the component.
7261
+ */
7262
+ "theme"?: "ios" | "md" | "ionic";
7263
+ /**
7264
+ * 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).
6403
7265
  * @default false
6404
7266
  */
6405
7267
  "translucent"?: boolean;
@@ -6415,23 +7277,35 @@ declare namespace LocalJSX {
6415
7277
  * @default false
6416
7278
  */
6417
7279
  "activated"?: boolean;
7280
+ /**
7281
+ * The mode determines the platform behaviors of the component.
7282
+ */
7283
+ "mode"?: "ios" | "md";
6418
7284
  /**
6419
7285
  * The side the fab list will show on relative to the main fab button.
6420
7286
  * @default 'bottom'
6421
7287
  */
6422
7288
  "side"?: 'start' | 'end' | 'top' | 'bottom';
7289
+ /**
7290
+ * The theme determines the visual appearance of the component.
7291
+ */
7292
+ "theme"?: "ios" | "md" | "ionic";
6423
7293
  }
6424
7294
  interface IonFooter {
6425
7295
  /**
6426
- * Describes the scroll effect that will be applied to the footer. Only applies in iOS mode.
7296
+ * Describes the scroll effect that will be applied to the footer. Only applies when the theme is `"ios"`.
6427
7297
  */
6428
7298
  "collapse"?: 'fade';
6429
7299
  /**
6430
- * The mode determines which platform styles to use.
7300
+ * The mode determines the platform behaviors of the component.
6431
7301
  */
6432
7302
  "mode"?: "ios" | "md";
6433
7303
  /**
6434
- * 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.
7304
+ * The theme determines the visual appearance of the component.
7305
+ */
7306
+ "theme"?: "ios" | "md" | "ionic";
7307
+ /**
7308
+ * 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.
6435
7309
  * @default false
6436
7310
  */
6437
7311
  "translucent"?: boolean;
@@ -6442,18 +7316,35 @@ declare namespace LocalJSX {
6442
7316
  * @default false
6443
7317
  */
6444
7318
  "fixed"?: boolean;
7319
+ /**
7320
+ * The mode determines the platform behaviors of the component.
7321
+ */
7322
+ "mode"?: "ios" | "md";
7323
+ /**
7324
+ * The theme determines the visual appearance of the component.
7325
+ */
7326
+ "theme"?: "ios" | "md" | "ionic";
6445
7327
  }
6446
7328
  interface IonHeader {
6447
7329
  /**
6448
- * 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)
7330
+ * 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)
6449
7331
  */
6450
7332
  "collapse"?: 'condense' | 'fade';
6451
7333
  /**
6452
- * The mode determines which platform styles to use.
7334
+ * If `true`, the header will have a line at the bottom. TODO(ROU-10855): add support for this prop on ios/md themes
7335
+ * @default false
7336
+ */
7337
+ "divider"?: boolean;
7338
+ /**
7339
+ * The mode determines the platform behaviors of the component.
6453
7340
  */
6454
7341
  "mode"?: "ios" | "md";
6455
7342
  /**
6456
- * 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.
7343
+ * The theme determines the visual appearance of the component.
7344
+ */
7345
+ "theme"?: "ios" | "md" | "ionic";
7346
+ /**
7347
+ * If `true`, the header will be translucent. Only applies when the theme is `"ios"` or `"ionic"` 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.
6457
7348
  * @default false
6458
7349
  */
6459
7350
  "translucent"?: boolean;
@@ -6463,6 +7354,10 @@ declare namespace LocalJSX {
6463
7354
  * 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.
6464
7355
  */
6465
7356
  "alt"?: string;
7357
+ /**
7358
+ * The mode determines the platform behaviors of the component.
7359
+ */
7360
+ "mode"?: "ios" | "md";
6466
7361
  /**
6467
7362
  * Emitted when the img fails to load
6468
7363
  */
@@ -6479,6 +7374,10 @@ declare namespace LocalJSX {
6479
7374
  * The image URL. This attribute is mandatory for the `<img>` element.
6480
7375
  */
6481
7376
  "src"?: string;
7377
+ /**
7378
+ * The theme determines the visual appearance of the component.
7379
+ */
7380
+ "theme"?: "ios" | "md" | "ionic";
6482
7381
  }
6483
7382
  interface IonInfiniteScroll {
6484
7383
  /**
@@ -6486,6 +7385,10 @@ declare namespace LocalJSX {
6486
7385
  * @default false
6487
7386
  */
6488
7387
  "disabled"?: boolean;
7388
+ /**
7389
+ * The mode determines the platform behaviors of the component.
7390
+ */
7391
+ "mode"?: "ios" | "md";
6489
7392
  /**
6490
7393
  * 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.
6491
7394
  */
@@ -6495,6 +7398,10 @@ declare namespace LocalJSX {
6495
7398
  * @default 'bottom'
6496
7399
  */
6497
7400
  "position"?: 'top' | 'bottom';
7401
+ /**
7402
+ * The theme determines the visual appearance of the component.
7403
+ */
7404
+ "theme"?: "ios" | "md" | "ionic";
6498
7405
  /**
6499
7406
  * 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.
6500
7407
  * @default '15%'
@@ -6510,6 +7417,14 @@ declare namespace LocalJSX {
6510
7417
  * 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.
6511
7418
  */
6512
7419
  "loadingText"?: string | IonicSafeString;
7420
+ /**
7421
+ * The mode determines the platform behaviors of the component.
7422
+ */
7423
+ "mode"?: "ios" | "md";
7424
+ /**
7425
+ * The theme determines the visual appearance of the component.
7426
+ */
7427
+ "theme"?: "ios" | "md" | "ionic";
6513
7428
  }
6514
7429
  interface IonInput {
6515
7430
  /**
@@ -6576,7 +7491,7 @@ declare namespace LocalJSX {
6576
7491
  */
6577
7492
  "errorText"?: string;
6578
7493
  /**
6579
- * 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.
7494
+ * 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"`.
6580
7495
  */
6581
7496
  "fill"?: 'outline' | 'solid';
6582
7497
  /**
@@ -6592,8 +7507,7 @@ declare namespace LocalJSX {
6592
7507
  */
6593
7508
  "label"?: string;
6594
7509
  /**
6595
- * 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 ("...").
6596
- * @default 'start'
7510
+ * 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.
6597
7511
  */
6598
7512
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6599
7513
  /**
@@ -6613,7 +7527,7 @@ declare namespace LocalJSX {
6613
7527
  */
6614
7528
  "minlength"?: number;
6615
7529
  /**
6616
- * The mode determines which platform styles to use.
7530
+ * The mode determines the platform behaviors of the component.
6617
7531
  */
6618
7532
  "mode"?: "ios" | "md";
6619
7533
  /**
@@ -6660,9 +7574,14 @@ declare namespace LocalJSX {
6660
7574
  */
6661
7575
  "required"?: boolean;
6662
7576
  /**
6663
- * The shape of the input. If "round" it will have an increased border radius.
7577
+ * 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"`.
7578
+ */
7579
+ "shape"?: 'soft' | 'round' | 'rectangular';
7580
+ /**
7581
+ * 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.
7582
+ * @default 'medium'
6664
7583
  */
6665
- "shape"?: 'round';
7584
+ "size"?: 'medium' | 'large' | 'xlarge';
6666
7585
  /**
6667
7586
  * If `true`, the element will have its spelling and grammar checked.
6668
7587
  * @default false
@@ -6672,6 +7591,10 @@ declare namespace LocalJSX {
6672
7591
  * 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.
6673
7592
  */
6674
7593
  "step"?: string;
7594
+ /**
7595
+ * The theme determines the visual appearance of the component.
7596
+ */
7597
+ "theme"?: "ios" | "md" | "ionic";
6675
7598
  /**
6676
7599
  * The type of control to display. The default type is text.
6677
7600
  * @default 'text'
@@ -6795,12 +7718,11 @@ declare namespace LocalJSX {
6795
7718
  */
6796
7719
  "color"?: Color;
6797
7720
  /**
6798
- * 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.
7721
+ * 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.
6799
7722
  */
6800
7723
  "detail"?: boolean;
6801
7724
  /**
6802
7725
  * The icon to use when `detail` is set to `true`.
6803
- * @default chevronForward
6804
7726
  */
6805
7727
  "detailIcon"?: string;
6806
7728
  /**
@@ -6821,7 +7743,7 @@ declare namespace LocalJSX {
6821
7743
  */
6822
7744
  "lines"?: 'full' | 'inset' | 'none';
6823
7745
  /**
6824
- * The mode determines which platform styles to use.
7746
+ * The mode determines the platform behaviors of the component.
6825
7747
  */
6826
7748
  "mode"?: "ios" | "md";
6827
7749
  /**
@@ -6841,6 +7763,10 @@ declare namespace LocalJSX {
6841
7763
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6842
7764
  */
6843
7765
  "target"?: string | undefined;
7766
+ /**
7767
+ * The theme determines the visual appearance of the component.
7768
+ */
7769
+ "theme"?: "ios" | "md" | "ionic";
6844
7770
  /**
6845
7771
  * The type of the button. Only used when an `onclick` or `button` property is present.
6846
7772
  * @default 'button'
@@ -6853,7 +7779,7 @@ declare namespace LocalJSX {
6853
7779
  */
6854
7780
  "color"?: Color;
6855
7781
  /**
6856
- * The mode determines which platform styles to use.
7782
+ * The mode determines the platform behaviors of the component.
6857
7783
  */
6858
7784
  "mode"?: "ios" | "md";
6859
7785
  /**
@@ -6861,8 +7787,20 @@ declare namespace LocalJSX {
6861
7787
  * @default false
6862
7788
  */
6863
7789
  "sticky"?: boolean;
7790
+ /**
7791
+ * The theme determines the visual appearance of the component.
7792
+ */
7793
+ "theme"?: "ios" | "md" | "ionic";
6864
7794
  }
6865
7795
  interface IonItemGroup {
7796
+ /**
7797
+ * The mode determines the platform behaviors of the component.
7798
+ */
7799
+ "mode"?: "ios" | "md";
7800
+ /**
7801
+ * The theme determines the visual appearance of the component.
7802
+ */
7803
+ "theme"?: "ios" | "md" | "ionic";
6866
7804
  }
6867
7805
  interface IonItemOption {
6868
7806
  /**
@@ -6888,17 +7826,30 @@ declare namespace LocalJSX {
6888
7826
  */
6889
7827
  "href"?: string | undefined;
6890
7828
  /**
6891
- * The mode determines which platform styles to use.
7829
+ * Set to `"bold"` for an option with vibrant, bold colors or to `"subtle"` for an option with muted, subtle colors. Only applies to the `ionic` theme.
7830
+ * @default 'subtle'
7831
+ */
7832
+ "hue"?: 'bold' | 'subtle';
7833
+ /**
7834
+ * The mode determines the platform behaviors of the component.
6892
7835
  */
6893
7836
  "mode"?: "ios" | "md";
6894
7837
  /**
6895
7838
  * 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).
6896
7839
  */
6897
7840
  "rel"?: string | undefined;
7841
+ /**
7842
+ * 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.
7843
+ */
7844
+ "shape"?: 'soft' | 'round' | 'rectangular';
6898
7845
  /**
6899
7846
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
6900
7847
  */
6901
7848
  "target"?: string | undefined;
7849
+ /**
7850
+ * The theme determines the visual appearance of the component.
7851
+ */
7852
+ "theme"?: "ios" | "md" | "ionic";
6902
7853
  /**
6903
7854
  * The type of the button.
6904
7855
  * @default 'button'
@@ -6906,6 +7857,10 @@ declare namespace LocalJSX {
6906
7857
  "type"?: 'submit' | 'reset' | 'button';
6907
7858
  }
6908
7859
  interface IonItemOptions {
7860
+ /**
7861
+ * The mode determines the platform behaviors of the component.
7862
+ */
7863
+ "mode"?: "ios" | "md";
6909
7864
  /**
6910
7865
  * Emitted when the item has been fully swiped.
6911
7866
  */
@@ -6915,6 +7870,10 @@ declare namespace LocalJSX {
6915
7870
  * @default 'end'
6916
7871
  */
6917
7872
  "side"?: Side;
7873
+ /**
7874
+ * The theme determines the visual appearance of the component.
7875
+ */
7876
+ "theme"?: "ios" | "md" | "ionic";
6918
7877
  }
6919
7878
  interface IonItemSliding {
6920
7879
  /**
@@ -6922,10 +7881,18 @@ declare namespace LocalJSX {
6922
7881
  * @default false
6923
7882
  */
6924
7883
  "disabled"?: boolean;
7884
+ /**
7885
+ * The mode determines the platform behaviors of the component.
7886
+ */
7887
+ "mode"?: "ios" | "md";
6925
7888
  /**
6926
7889
  * Emitted when the sliding position changes.
6927
7890
  */
6928
7891
  "onIonDrag"?: (event: IonItemSlidingCustomEvent<any>) => void;
7892
+ /**
7893
+ * The theme determines the visual appearance of the component.
7894
+ */
7895
+ "theme"?: "ios" | "md" | "ionic";
6929
7896
  }
6930
7897
  interface IonLabel {
6931
7898
  /**
@@ -6933,13 +7900,17 @@ declare namespace LocalJSX {
6933
7900
  */
6934
7901
  "color"?: Color;
6935
7902
  /**
6936
- * The mode determines which platform styles to use.
7903
+ * The mode determines the platform behaviors of the component.
6937
7904
  */
6938
7905
  "mode"?: "ios" | "md";
6939
7906
  /**
6940
7907
  * The position determines where and how the label behaves inside an item.
6941
7908
  */
6942
7909
  "position"?: 'fixed' | 'stacked' | 'floating';
7910
+ /**
7911
+ * The theme determines the visual appearance of the component.
7912
+ */
7913
+ "theme"?: "ios" | "md" | "ionic";
6943
7914
  }
6944
7915
  interface IonList {
6945
7916
  /**
@@ -6952,9 +7923,17 @@ declare namespace LocalJSX {
6952
7923
  */
6953
7924
  "lines"?: 'full' | 'inset' | 'none';
6954
7925
  /**
6955
- * The mode determines which platform styles to use.
7926
+ * The mode determines the platform behaviors of the component.
6956
7927
  */
6957
7928
  "mode"?: "ios" | "md";
7929
+ /**
7930
+ * 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.
7931
+ */
7932
+ "shape"?: 'soft' | 'round' | 'rectangular';
7933
+ /**
7934
+ * The theme determines the visual appearance of the component.
7935
+ */
7936
+ "theme"?: "ios" | "md" | "ionic";
6958
7937
  }
6959
7938
  interface IonListHeader {
6960
7939
  /**
@@ -6966,9 +7945,13 @@ declare namespace LocalJSX {
6966
7945
  */
6967
7946
  "lines"?: 'full' | 'inset' | 'none';
6968
7947
  /**
6969
- * The mode determines which platform styles to use.
7948
+ * The mode determines the platform behaviors of the component.
6970
7949
  */
6971
7950
  "mode"?: "ios" | "md";
7951
+ /**
7952
+ * The theme determines the visual appearance of the component.
7953
+ */
7954
+ "theme"?: "ios" | "md" | "ionic";
6972
7955
  }
6973
7956
  interface IonLoading {
6974
7957
  /**
@@ -7017,7 +8000,7 @@ declare namespace LocalJSX {
7017
8000
  */
7018
8001
  "message"?: string | IonicSafeString;
7019
8002
  /**
7020
- * The mode determines which platform styles to use.
8003
+ * The mode determines the platform behaviors of the component.
7021
8004
  */
7022
8005
  "mode"?: "ios" | "md";
7023
8006
  /**
@@ -7062,7 +8045,11 @@ declare namespace LocalJSX {
7062
8045
  */
7063
8046
  "spinner"?: SpinnerTypes | null;
7064
8047
  /**
7065
- * 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).
8048
+ * The theme determines the visual appearance of the component.
8049
+ */
8050
+ "theme"?: "ios" | "md" | "ionic";
8051
+ /**
8052
+ * 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).
7066
8053
  * @default false
7067
8054
  */
7068
8055
  "translucent"?: boolean;
@@ -7090,6 +8077,10 @@ declare namespace LocalJSX {
7090
8077
  * An id for the menu.
7091
8078
  */
7092
8079
  "menuId"?: string;
8080
+ /**
8081
+ * The mode determines the platform behaviors of the component.
8082
+ */
8083
+ "mode"?: "ios" | "md";
7093
8084
  /**
7094
8085
  * Emitted when the menu is closed.
7095
8086
  */
@@ -7116,6 +8107,10 @@ declare namespace LocalJSX {
7116
8107
  * @default true
7117
8108
  */
7118
8109
  "swipeGesture"?: boolean;
8110
+ /**
8111
+ * The theme determines the visual appearance of the component.
8112
+ */
8113
+ "theme"?: "ios" | "md" | "ionic";
7119
8114
  /**
7120
8115
  * The display type of the menu. Available options: `"overlay"`, `"reveal"`, `"push"`.
7121
8116
  */
@@ -7141,9 +8136,13 @@ declare namespace LocalJSX {
7141
8136
  */
7142
8137
  "menu"?: string;
7143
8138
  /**
7144
- * The mode determines which platform styles to use.
8139
+ * The mode determines the platform behaviors of the component.
7145
8140
  */
7146
8141
  "mode"?: "ios" | "md";
8142
+ /**
8143
+ * The theme determines the visual appearance of the component.
8144
+ */
8145
+ "theme"?: "ios" | "md" | "ionic";
7147
8146
  /**
7148
8147
  * The type of the button.
7149
8148
  * @default 'button'
@@ -7160,6 +8159,14 @@ declare namespace LocalJSX {
7160
8159
  * 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.
7161
8160
  */
7162
8161
  "menu"?: string;
8162
+ /**
8163
+ * The mode determines the platform behaviors of the component.
8164
+ */
8165
+ "mode"?: "ios" | "md";
8166
+ /**
8167
+ * The theme determines the visual appearance of the component.
8168
+ */
8169
+ "theme"?: "ios" | "md" | "ionic";
7163
8170
  }
7164
8171
  interface IonModal {
7165
8172
  /**
@@ -7237,7 +8244,7 @@ declare namespace LocalJSX {
7237
8244
  */
7238
8245
  "leaveAnimation"?: AnimationBuilder;
7239
8246
  /**
7240
- * The mode determines which platform styles to use.
8247
+ * The mode determines the platform behaviors of the component.
7241
8248
  */
7242
8249
  "mode"?: "ios" | "md";
7243
8250
  /**
@@ -7280,11 +8287,19 @@ declare namespace LocalJSX {
7280
8287
  * 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.
7281
8288
  */
7282
8289
  "presentingElement"?: HTMLElement;
8290
+ /**
8291
+ * 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.
8292
+ */
8293
+ "shape"?: 'soft' | 'round' | 'rectangular';
7283
8294
  /**
7284
8295
  * 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.
7285
8296
  * @default true
7286
8297
  */
7287
8298
  "showBackdrop"?: boolean;
8299
+ /**
8300
+ * The theme determines the visual appearance of the component.
8301
+ */
8302
+ "theme"?: "ios" | "md" | "ionic";
7288
8303
  /**
7289
8304
  * An ID corresponding to the trigger element that causes the modal to open when clicked.
7290
8305
  */
@@ -7297,9 +8312,13 @@ declare namespace LocalJSX {
7297
8312
  */
7298
8313
  "animated"?: boolean;
7299
8314
  /**
7300
- * 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.
8315
+ * 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.
7301
8316
  */
7302
8317
  "animation"?: AnimationBuilder;
8318
+ /**
8319
+ * The mode determines the platform behaviors of the component.
8320
+ */
8321
+ "mode"?: "ios" | "md";
7303
8322
  /**
7304
8323
  * Event fired when the nav has changed components
7305
8324
  */
@@ -7320,6 +8339,10 @@ declare namespace LocalJSX {
7320
8339
  * If the nav component should allow for swipe-to-go-back.
7321
8340
  */
7322
8341
  "swipeGesture"?: boolean;
8342
+ /**
8343
+ * The theme determines the visual appearance of the component.
8344
+ */
8345
+ "theme"?: "ios" | "md" | "ionic";
7323
8346
  }
7324
8347
  interface IonNavLink {
7325
8348
  /**
@@ -7330,6 +8353,10 @@ declare namespace LocalJSX {
7330
8353
  * Data you want to pass to the component as props. Only used if the `"routerDirection"` is `"forward"` or `"root"`.
7331
8354
  */
7332
8355
  "componentProps"?: ComponentProps;
8356
+ /**
8357
+ * The mode determines the platform behaviors of the component.
8358
+ */
8359
+ "mode"?: "ios" | "md";
7333
8360
  /**
7334
8361
  * The transition animation when navigating to another page.
7335
8362
  */
@@ -7339,6 +8366,10 @@ declare namespace LocalJSX {
7339
8366
  * @default 'forward'
7340
8367
  */
7341
8368
  "routerDirection"?: RouterDirection;
8369
+ /**
8370
+ * The theme determines the visual appearance of the component.
8371
+ */
8372
+ "theme"?: "ios" | "md" | "ionic";
7342
8373
  }
7343
8374
  interface IonNote {
7344
8375
  /**
@@ -7346,15 +8377,23 @@ declare namespace LocalJSX {
7346
8377
  */
7347
8378
  "color"?: Color;
7348
8379
  /**
7349
- * The mode determines which platform styles to use.
8380
+ * The mode determines the platform behaviors of the component.
7350
8381
  */
7351
8382
  "mode"?: "ios" | "md";
8383
+ /**
8384
+ * The theme determines the visual appearance of the component.
8385
+ */
8386
+ "theme"?: "ios" | "md" | "ionic";
7352
8387
  }
7353
8388
  interface IonPicker {
7354
8389
  /**
7355
- * The mode determines which platform styles to use.
8390
+ * The mode determines the platform behaviors of the component.
7356
8391
  */
7357
8392
  "mode"?: "ios" | "md";
8393
+ /**
8394
+ * The theme determines the visual appearance of the component.
8395
+ */
8396
+ "theme"?: "ios" | "md" | "ionic";
7358
8397
  }
7359
8398
  interface IonPickerColumn {
7360
8399
  /**
@@ -7368,13 +8407,17 @@ declare namespace LocalJSX {
7368
8407
  */
7369
8408
  "disabled"?: boolean;
7370
8409
  /**
7371
- * The mode determines which platform styles to use.
8410
+ * The mode determines the platform behaviors of the component.
7372
8411
  */
7373
8412
  "mode"?: "ios" | "md";
7374
8413
  /**
7375
8414
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7376
8415
  */
7377
8416
  "onIonChange"?: (event: IonPickerColumnCustomEvent<PickerColumnChangeEventDetail>) => void;
8417
+ /**
8418
+ * The theme determines the visual appearance of the component.
8419
+ */
8420
+ "theme"?: "ios" | "md" | "ionic";
7378
8421
  /**
7379
8422
  * The selected option in the picker.
7380
8423
  */
@@ -7391,6 +8434,14 @@ declare namespace LocalJSX {
7391
8434
  * @default false
7392
8435
  */
7393
8436
  "disabled"?: boolean;
8437
+ /**
8438
+ * The mode determines the platform behaviors of the component.
8439
+ */
8440
+ "mode"?: "ios" | "md";
8441
+ /**
8442
+ * The theme determines the visual appearance of the component.
8443
+ */
8444
+ "theme"?: "ios" | "md" | "ionic";
7394
8445
  /**
7395
8446
  * The text value of the option.
7396
8447
  */
@@ -7449,7 +8500,7 @@ declare namespace LocalJSX {
7449
8500
  */
7450
8501
  "leaveAnimation"?: AnimationBuilder;
7451
8502
  /**
7452
- * The mode determines which platform styles to use.
8503
+ * The mode determines the platform behaviors of the component.
7453
8504
  */
7454
8505
  "mode"?: "ios" | "md";
7455
8506
  /**
@@ -7489,6 +8540,10 @@ declare namespace LocalJSX {
7489
8540
  * @default true
7490
8541
  */
7491
8542
  "showBackdrop"?: boolean;
8543
+ /**
8544
+ * The theme determines the visual appearance of the component.
8545
+ */
8546
+ "theme"?: "ios" | "md" | "ionic";
7492
8547
  /**
7493
8548
  * An ID corresponding to the trigger element that causes the picker to open when clicked.
7494
8549
  */
@@ -7502,7 +8557,7 @@ declare namespace LocalJSX {
7502
8557
  }
7503
8558
  interface IonPopover {
7504
8559
  /**
7505
- * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
8560
+ * Describes how to align the popover content with the `reference` point. Defaults to `"center"` for `"ios"` theme, and `"start"` for `"md"` theme.
7506
8561
  */
7507
8562
  "alignment"?: PositionAlign;
7508
8563
  /**
@@ -7511,7 +8566,7 @@ declare namespace LocalJSX {
7511
8566
  */
7512
8567
  "animated"?: boolean;
7513
8568
  /**
7514
- * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
8569
+ * If `true`, the popover will display an arrow that points at the `reference` on `"ios"` theme.
7515
8570
  * @default true
7516
8571
  */
7517
8572
  "arrow"?: boolean;
@@ -7570,7 +8625,7 @@ declare namespace LocalJSX {
7570
8625
  */
7571
8626
  "leaveAnimation"?: AnimationBuilder;
7572
8627
  /**
7573
- * The mode determines which platform styles to use.
8628
+ * The mode determines the platform behaviors of the component.
7574
8629
  */
7575
8630
  "mode"?: "ios" | "md";
7576
8631
  /**
@@ -7626,7 +8681,11 @@ declare namespace LocalJSX {
7626
8681
  */
7627
8682
  "size"?: PopoverSize;
7628
8683
  /**
7629
- * 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).
8684
+ * The theme determines the visual appearance of the component.
8685
+ */
8686
+ "theme"?: "ios" | "md" | "ionic";
8687
+ /**
8688
+ * 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).
7630
8689
  * @default false
7631
8690
  */
7632
8691
  "translucent"?: boolean;
@@ -7651,7 +8710,7 @@ declare namespace LocalJSX {
7651
8710
  */
7652
8711
  "color"?: Color;
7653
8712
  /**
7654
- * The mode determines which platform styles to use.
8713
+ * The mode determines the platform behaviors of the component.
7655
8714
  */
7656
8715
  "mode"?: "ios" | "md";
7657
8716
  /**
@@ -7659,6 +8718,14 @@ declare namespace LocalJSX {
7659
8718
  * @default false
7660
8719
  */
7661
8720
  "reversed"?: boolean;
8721
+ /**
8722
+ * 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.
8723
+ */
8724
+ "shape"?: 'round' | 'rectangular';
8725
+ /**
8726
+ * The theme determines the visual appearance of the component.
8727
+ */
8728
+ "theme"?: "ios" | "md" | "ionic";
7662
8729
  /**
7663
8730
  * 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).
7664
8731
  * @default 'determinate'
@@ -7694,7 +8761,7 @@ declare namespace LocalJSX {
7694
8761
  */
7695
8762
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7696
8763
  /**
7697
- * The mode determines which platform styles to use.
8764
+ * The mode determines the platform behaviors of the component.
7698
8765
  */
7699
8766
  "mode"?: "ios" | "md";
7700
8767
  /**
@@ -7710,6 +8777,10 @@ declare namespace LocalJSX {
7710
8777
  * Emitted when the radio button has focus.
7711
8778
  */
7712
8779
  "onIonFocus"?: (event: IonRadioCustomEvent<void>) => void;
8780
+ /**
8781
+ * The theme determines the visual appearance of the component.
8782
+ */
8783
+ "theme"?: "ios" | "md" | "ionic";
7713
8784
  /**
7714
8785
  * the value of the radio.
7715
8786
  */
@@ -7733,6 +8804,10 @@ declare namespace LocalJSX {
7733
8804
  * The helper text to display at the top of the radio group.
7734
8805
  */
7735
8806
  "helperText"?: string;
8807
+ /**
8808
+ * The mode determines the platform behaviors of the component.
8809
+ */
8810
+ "mode"?: "ios" | "md";
7736
8811
  /**
7737
8812
  * The name of the control, which is submitted with the form data.
7738
8813
  * @default this.inputId
@@ -7742,6 +8817,10 @@ declare namespace LocalJSX {
7742
8817
  * Emitted when the value has changed. This event will not emit when programmatically setting the `value` property.
7743
8818
  */
7744
8819
  "onIonChange"?: (event: IonRadioGroupCustomEvent<RadioGroupChangeEventDetail>) => void;
8820
+ /**
8821
+ * The theme determines the visual appearance of the component.
8822
+ */
8823
+ "theme"?: "ios" | "md" | "ionic";
7745
8824
  /**
7746
8825
  * the value of the radio group.
7747
8826
  */
@@ -7790,7 +8869,7 @@ declare namespace LocalJSX {
7790
8869
  */
7791
8870
  "min"?: number;
7792
8871
  /**
7793
- * The mode determines which platform styles to use.
8872
+ * The mode determines the platform behaviors of the component.
7794
8873
  */
7795
8874
  "mode"?: "ios" | "md";
7796
8875
  /**
@@ -7842,6 +8921,10 @@ declare namespace LocalJSX {
7842
8921
  * @default 1
7843
8922
  */
7844
8923
  "step"?: number;
8924
+ /**
8925
+ * The theme determines the visual appearance of the component.
8926
+ */
8927
+ "theme"?: "ios" | "md" | "ionic";
7845
8928
  /**
7846
8929
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7847
8930
  * @default true
@@ -7865,7 +8948,7 @@ declare namespace LocalJSX {
7865
8948
  */
7866
8949
  "disabled"?: boolean;
7867
8950
  /**
7868
- * The mode determines which platform styles to use.
8951
+ * The mode determines the platform behaviors of the component.
7869
8952
  */
7870
8953
  "mode"?: "ios" | "md";
7871
8954
  /**
@@ -7900,8 +8983,16 @@ declare namespace LocalJSX {
7900
8983
  * @default '280ms'
7901
8984
  */
7902
8985
  "snapbackDuration"?: string;
8986
+ /**
8987
+ * The theme determines the visual appearance of the component.
8988
+ */
8989
+ "theme"?: "ios" | "md" | "ionic";
7903
8990
  }
7904
8991
  interface IonRefresherContent {
8992
+ /**
8993
+ * The mode determines the platform behaviors of the component.
8994
+ */
8995
+ "mode"?: "ios" | "md";
7905
8996
  /**
7906
8997
  * 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.
7907
8998
  */
@@ -7918,8 +9009,20 @@ declare namespace LocalJSX {
7918
9009
  * 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.
7919
9010
  */
7920
9011
  "refreshingText"?: string | IonicSafeString;
9012
+ /**
9013
+ * The theme determines the visual appearance of the component.
9014
+ */
9015
+ "theme"?: "ios" | "md" | "ionic";
7921
9016
  }
7922
9017
  interface IonReorder {
9018
+ /**
9019
+ * The mode determines the platform behaviors of the component.
9020
+ */
9021
+ "mode"?: "ios" | "md";
9022
+ /**
9023
+ * The theme determines the visual appearance of the component.
9024
+ */
9025
+ "theme"?: "ios" | "md" | "ionic";
7923
9026
  }
7924
9027
  interface IonReorderGroup {
7925
9028
  /**
@@ -7927,12 +9030,28 @@ declare namespace LocalJSX {
7927
9030
  * @default true
7928
9031
  */
7929
9032
  "disabled"?: boolean;
9033
+ /**
9034
+ * The mode determines the platform behaviors of the component.
9035
+ */
9036
+ "mode"?: "ios" | "md";
7930
9037
  /**
7931
9038
  * 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.
7932
9039
  */
7933
9040
  "onIonItemReorder"?: (event: IonReorderGroupCustomEvent<ItemReorderEventDetail>) => void;
9041
+ /**
9042
+ * The theme determines the visual appearance of the component.
9043
+ */
9044
+ "theme"?: "ios" | "md" | "ionic";
7934
9045
  }
7935
9046
  interface IonRippleEffect {
9047
+ /**
9048
+ * The mode determines the platform behaviors of the component.
9049
+ */
9050
+ "mode"?: "ios" | "md";
9051
+ /**
9052
+ * The theme determines the visual appearance of the component.
9053
+ */
9054
+ "theme"?: "ios" | "md" | "ionic";
7936
9055
  /**
7937
9056
  * 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.
7938
9057
  * @default 'bounded'
@@ -7956,10 +9075,18 @@ declare namespace LocalJSX {
7956
9075
  * A key value `{ 'red': true, 'blue': 'white'}` containing props that should be passed to the defined component when rendered.
7957
9076
  */
7958
9077
  "componentProps"?: { [key: string]: any };
9078
+ /**
9079
+ * The mode determines the platform behaviors of the component.
9080
+ */
9081
+ "mode"?: "ios" | "md";
7959
9082
  /**
7960
9083
  * Used internally by `ion-router` to know when this route did change.
7961
9084
  */
7962
9085
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
9086
+ /**
9087
+ * The theme determines the visual appearance of the component.
9088
+ */
9089
+ "theme"?: "ios" | "md" | "ionic";
7963
9090
  /**
7964
9091
  * 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.
7965
9092
  * @default ''
@@ -7981,6 +9108,10 @@ declare namespace LocalJSX {
7981
9108
  "to": string | undefined | null;
7982
9109
  }
7983
9110
  interface IonRouter {
9111
+ /**
9112
+ * The mode determines the platform behaviors of the component.
9113
+ */
9114
+ "mode"?: "ios" | "md";
7984
9115
  /**
7985
9116
  * Emitted when the route had changed
7986
9117
  */
@@ -7994,6 +9125,10 @@ declare namespace LocalJSX {
7994
9125
  * @default '/'
7995
9126
  */
7996
9127
  "root"?: string;
9128
+ /**
9129
+ * The theme determines the visual appearance of the component.
9130
+ */
9131
+ "theme"?: "ios" | "md" | "ionic";
7997
9132
  /**
7998
9133
  * 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.
7999
9134
  * @default true
@@ -8009,6 +9144,10 @@ declare namespace LocalJSX {
8009
9144
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
8010
9145
  */
8011
9146
  "href"?: string | undefined;
9147
+ /**
9148
+ * The mode determines the platform behaviors of the component.
9149
+ */
9150
+ "mode"?: "ios" | "md";
8012
9151
  /**
8013
9152
  * 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).
8014
9153
  */
@@ -8026,6 +9165,10 @@ declare namespace LocalJSX {
8026
9165
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8027
9166
  */
8028
9167
  "target"?: string | undefined;
9168
+ /**
9169
+ * The theme determines the visual appearance of the component.
9170
+ */
9171
+ "theme"?: "ios" | "md" | "ionic";
8029
9172
  }
8030
9173
  interface IonRouterOutlet {
8031
9174
  /**
@@ -8038,12 +9181,24 @@ declare namespace LocalJSX {
8038
9181
  */
8039
9182
  "animation"?: AnimationBuilder;
8040
9183
  /**
8041
- * The mode determines which platform styles to use.
9184
+ * The mode determines the platform behaviors of the component.
8042
9185
  * @default getIonMode(this)
8043
9186
  */
8044
9187
  "mode"?: "ios" | "md";
9188
+ /**
9189
+ * The theme determines the visual appearance of the component.
9190
+ */
9191
+ "theme"?: "ios" | "md" | "ionic";
8045
9192
  }
8046
9193
  interface IonRow {
9194
+ /**
9195
+ * The mode determines the platform behaviors of the component.
9196
+ */
9197
+ "mode"?: "ios" | "md";
9198
+ /**
9199
+ * The theme determines the visual appearance of the component.
9200
+ */
9201
+ "theme"?: "ios" | "md" | "ionic";
8047
9202
  }
8048
9203
  interface IonSearchbar {
8049
9204
  /**
@@ -8067,17 +9222,16 @@ declare namespace LocalJSX {
8067
9222
  */
8068
9223
  "autocorrect"?: 'on' | 'off';
8069
9224
  /**
8070
- * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8071
- * @default config.get('backButtonIcon', arrowBackSharp) as string
9225
+ * Set the cancel button icon. Only available when the theme is `"md"`. Defaults to `"arrow-back-sharp"`.
8072
9226
  */
8073
9227
  "cancelButtonIcon"?: string;
8074
9228
  /**
8075
- * Set the cancel button text. Only applies to `ios` mode.
9229
+ * Set the cancel button text. Only available when the theme is `"ios"`.
8076
9230
  * @default 'Cancel'
8077
9231
  */
8078
9232
  "cancelButtonText"?: string;
8079
9233
  /**
8080
- * Set the clear icon. Defaults to `close-circle` for `ios` and `close-sharp` for `md`.
9234
+ * Set the clear icon. Defaults to `"close-circle"` for `"ios"` theme and `"close-sharp"` for `"md"` and `"ionic"` theme.
8081
9235
  */
8082
9236
  "clearIcon"?: string;
8083
9237
  /**
@@ -8110,7 +9264,7 @@ declare namespace LocalJSX {
8110
9264
  */
8111
9265
  "minlength"?: number;
8112
9266
  /**
8113
- * The mode determines which platform styles to use.
9267
+ * The mode determines the platform behaviors of the component.
8114
9268
  */
8115
9269
  "mode"?: "ios" | "md";
8116
9270
  /**
@@ -8148,9 +9302,13 @@ declare namespace LocalJSX {
8148
9302
  */
8149
9303
  "placeholder"?: string;
8150
9304
  /**
8151
- * The icon to use as the search icon. Defaults to `search-outline` in `ios` mode and `search-sharp` in `md` mode.
9305
+ * 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.
9306
+ */
9307
+ "searchIcon"?: string | boolean;
9308
+ /**
9309
+ * 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.
8152
9310
  */
8153
- "searchIcon"?: string;
9311
+ "shape"?: 'soft' | 'round' | 'rectangular';
8154
9312
  /**
8155
9313
  * 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.
8156
9314
  * @default 'never'
@@ -8161,11 +9319,19 @@ declare namespace LocalJSX {
8161
9319
  * @default 'always'
8162
9320
  */
8163
9321
  "showClearButton"?: 'never' | 'focus' | 'always';
9322
+ /**
9323
+ * 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.
9324
+ */
9325
+ "size"?: 'small' | 'medium' | 'large';
8164
9326
  /**
8165
9327
  * If `true`, enable spellcheck on the input.
8166
9328
  * @default false
8167
9329
  */
8168
9330
  "spellcheck"?: boolean;
9331
+ /**
9332
+ * The theme determines the visual appearance of the component.
9333
+ */
9334
+ "theme"?: "ios" | "md" | "ionic";
8169
9335
  /**
8170
9336
  * Set the type of the input.
8171
9337
  * @default 'search'
@@ -8188,7 +9354,7 @@ declare namespace LocalJSX {
8188
9354
  */
8189
9355
  "disabled"?: boolean;
8190
9356
  /**
8191
- * The mode determines which platform styles to use.
9357
+ * The mode determines the platform behaviors of the component.
8192
9358
  */
8193
9359
  "mode"?: "ios" | "md";
8194
9360
  /**
@@ -8210,6 +9376,10 @@ declare namespace LocalJSX {
8210
9376
  * @default true
8211
9377
  */
8212
9378
  "swipeGesture"?: boolean;
9379
+ /**
9380
+ * The theme determines the visual appearance of the component.
9381
+ */
9382
+ "theme"?: "ios" | "md" | "ionic";
8213
9383
  /**
8214
9384
  * the value of the segment.
8215
9385
  */
@@ -8231,9 +9401,13 @@ declare namespace LocalJSX {
8231
9401
  */
8232
9402
  "layout"?: SegmentButtonLayout;
8233
9403
  /**
8234
- * The mode determines which platform styles to use.
9404
+ * The mode determines the platform behaviors of the component.
8235
9405
  */
8236
9406
  "mode"?: "ios" | "md";
9407
+ /**
9408
+ * The theme determines the visual appearance of the component.
9409
+ */
9410
+ "theme"?: "ios" | "md" | "ionic";
8237
9411
  /**
8238
9412
  * The type of the button.
8239
9413
  * @default 'button'
@@ -8282,11 +9456,11 @@ declare namespace LocalJSX {
8282
9456
  */
8283
9457
  "errorText"?: string;
8284
9458
  /**
8285
- * 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.
9459
+ * 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.
8286
9460
  */
8287
9461
  "expandedIcon"?: string;
8288
9462
  /**
8289
- * 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.
9463
+ * 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.
8290
9464
  */
8291
9465
  "fill"?: 'outline' | 'solid';
8292
9466
  /**
@@ -8317,7 +9491,7 @@ declare namespace LocalJSX {
8317
9491
  */
8318
9492
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
8319
9493
  /**
8320
- * The mode determines which platform styles to use.
9494
+ * The mode determines the platform behaviors of the component.
8321
9495
  */
8322
9496
  "mode"?: "ios" | "md";
8323
9497
  /**
@@ -8369,11 +9543,19 @@ declare namespace LocalJSX {
8369
9543
  */
8370
9544
  "selectedText"?: string | null;
8371
9545
  /**
8372
- * The shape of the select. If "round" it will have an increased border radius.
9546
+ * 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.
9547
+ */
9548
+ "shape"?: 'soft' | 'round' | 'rectangular';
9549
+ /**
9550
+ * 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.
9551
+ */
9552
+ "size"?: 'small' | 'medium' | 'large';
9553
+ /**
9554
+ * The theme determines the visual appearance of the component.
8373
9555
  */
8374
- "shape"?: 'round';
9556
+ "theme"?: "ios" | "md" | "ionic";
8375
9557
  /**
8376
- * The toggle icon to use. Defaults to `chevronExpand` for `ios` mode, or `caretDownSharp` for `md` mode.
9558
+ * The toggle icon to use. Defaults to `"chevronExpand"` for the `"ios"` theme, or `"caretDownSharp"` for the `"md"` and `"ionic"` themes.
8377
9559
  */
8378
9560
  "toggleIcon"?: string;
8379
9561
  /**
@@ -8395,6 +9577,14 @@ declare namespace LocalJSX {
8395
9577
  * @default false
8396
9578
  */
8397
9579
  "disabled"?: boolean;
9580
+ /**
9581
+ * The mode determines the platform behaviors of the component.
9582
+ */
9583
+ "mode"?: "ios" | "md";
9584
+ /**
9585
+ * The theme determines the visual appearance of the component.
9586
+ */
9587
+ "theme"?: "ios" | "md" | "ionic";
8398
9588
  /**
8399
9589
  * The text value of the option.
8400
9590
  */
@@ -8409,6 +9599,10 @@ declare namespace LocalJSX {
8409
9599
  * The text content of the popover body
8410
9600
  */
8411
9601
  "message"?: string;
9602
+ /**
9603
+ * The mode determines the platform behaviors of the component.
9604
+ */
9605
+ "mode"?: "ios" | "md";
8412
9606
  /**
8413
9607
  * If true, the select accepts multiple values
8414
9608
  */
@@ -8422,6 +9616,10 @@ declare namespace LocalJSX {
8422
9616
  * The subheader text of the popover
8423
9617
  */
8424
9618
  "subHeader"?: string;
9619
+ /**
9620
+ * The theme determines the visual appearance of the component.
9621
+ */
9622
+ "theme"?: "ios" | "md" | "ionic";
8425
9623
  }
8426
9624
  interface IonSkeletonText {
8427
9625
  /**
@@ -8429,6 +9627,14 @@ declare namespace LocalJSX {
8429
9627
  * @default false
8430
9628
  */
8431
9629
  "animated"?: boolean;
9630
+ /**
9631
+ * The mode determines the platform behaviors of the component.
9632
+ */
9633
+ "mode"?: "ios" | "md";
9634
+ /**
9635
+ * The theme determines the visual appearance of the component.
9636
+ */
9637
+ "theme"?: "ios" | "md" | "ionic";
8432
9638
  }
8433
9639
  interface IonSpinner {
8434
9640
  /**
@@ -8439,6 +9645,10 @@ declare namespace LocalJSX {
8439
9645
  * Duration of the spinner animation in milliseconds. The default varies based on the spinner.
8440
9646
  */
8441
9647
  "duration"?: number;
9648
+ /**
9649
+ * The mode determines the platform behaviors of the component.
9650
+ */
9651
+ "mode"?: "ios" | "md";
8442
9652
  /**
8443
9653
  * The name of the SVG spinner to use. If a name is not provided, the platform's default spinner will be used.
8444
9654
  */
@@ -8448,6 +9658,14 @@ declare namespace LocalJSX {
8448
9658
  * @default false
8449
9659
  */
8450
9660
  "paused"?: boolean;
9661
+ /**
9662
+ * 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.
9663
+ */
9664
+ "size"?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
9665
+ /**
9666
+ * The theme determines the visual appearance of the component.
9667
+ */
9668
+ "theme"?: "ios" | "md" | "ionic";
8451
9669
  }
8452
9670
  interface IonSplitPane {
8453
9671
  /**
@@ -8459,10 +9677,18 @@ declare namespace LocalJSX {
8459
9677
  * @default false
8460
9678
  */
8461
9679
  "disabled"?: boolean;
9680
+ /**
9681
+ * The mode determines the platform behaviors of the component.
9682
+ */
9683
+ "mode"?: "ios" | "md";
8462
9684
  /**
8463
9685
  * Expression to be called when the split-pane visibility has changed
8464
9686
  */
8465
9687
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
9688
+ /**
9689
+ * The theme determines the visual appearance of the component.
9690
+ */
9691
+ "theme"?: "ios" | "md" | "ionic";
8466
9692
  /**
8467
9693
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
8468
9694
  * @default QUERY['lg']
@@ -8474,10 +9700,18 @@ declare namespace LocalJSX {
8474
9700
  * The component to display inside of the tab.
8475
9701
  */
8476
9702
  "component"?: ComponentRef;
9703
+ /**
9704
+ * The mode determines the platform behaviors of the component.
9705
+ */
9706
+ "mode"?: "ios" | "md";
8477
9707
  /**
8478
9708
  * 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.
8479
9709
  */
8480
9710
  "tab": string;
9711
+ /**
9712
+ * The theme determines the visual appearance of the component.
9713
+ */
9714
+ "theme"?: "ios" | "md" | "ionic";
8481
9715
  }
8482
9716
  interface IonTabBar {
8483
9717
  /**
@@ -8485,7 +9719,12 @@ declare namespace LocalJSX {
8485
9719
  */
8486
9720
  "color"?: Color;
8487
9721
  /**
8488
- * The mode determines which platform styles to use.
9722
+ * 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"`.
9723
+ * @default 'full'
9724
+ */
9725
+ "expand"?: 'compact' | 'full';
9726
+ /**
9727
+ * The mode determines the platform behaviors of the component.
8489
9728
  */
8490
9729
  "mode"?: "ios" | "md";
8491
9730
  /**
@@ -8493,7 +9732,15 @@ declare namespace LocalJSX {
8493
9732
  */
8494
9733
  "selectedTab"?: string;
8495
9734
  /**
8496
- * 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).
9735
+ * 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.
9736
+ */
9737
+ "shape"?: 'soft' | 'round' | 'rectangular';
9738
+ /**
9739
+ * The theme determines the visual appearance of the component.
9740
+ */
9741
+ "theme"?: "ios" | "md" | "ionic";
9742
+ /**
9743
+ * 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).
8497
9744
  * @default false
8498
9745
  */
8499
9746
  "translucent"?: boolean;
@@ -8517,7 +9764,7 @@ declare namespace LocalJSX {
8517
9764
  */
8518
9765
  "layout"?: TabButtonLayout;
8519
9766
  /**
8520
- * The mode determines which platform styles to use.
9767
+ * The mode determines the platform behaviors of the component.
8521
9768
  */
8522
9769
  "mode"?: "ios" | "md";
8523
9770
  /**
@@ -8529,6 +9776,10 @@ declare namespace LocalJSX {
8529
9776
  * @default false
8530
9777
  */
8531
9778
  "selected"?: boolean;
9779
+ /**
9780
+ * 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.
9781
+ */
9782
+ "shape"?: 'soft' | 'round' | 'rectangular';
8532
9783
  /**
8533
9784
  * 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.
8534
9785
  */
@@ -8537,8 +9788,16 @@ declare namespace LocalJSX {
8537
9788
  * Specifies where to display the linked URL. Only applies when an `href` is provided. Special keywords: `"_blank"`, `"_self"`, `"_parent"`, `"_top"`.
8538
9789
  */
8539
9790
  "target"?: string | undefined;
9791
+ /**
9792
+ * The theme determines the visual appearance of the component.
9793
+ */
9794
+ "theme"?: "ios" | "md" | "ionic";
8540
9795
  }
8541
9796
  interface IonTabs {
9797
+ /**
9798
+ * The mode determines the platform behaviors of the component.
9799
+ */
9800
+ "mode"?: "ios" | "md";
8542
9801
  /**
8543
9802
  * Emitted when the navigation has finished transitioning to a new component.
8544
9803
  */
@@ -8547,6 +9806,10 @@ declare namespace LocalJSX {
8547
9806
  * Emitted when the navigation is about to transition to a new component.
8548
9807
  */
8549
9808
  "onIonTabsWillChange"?: (event: IonTabsCustomEvent<{ tab: string }>) => void;
9809
+ /**
9810
+ * The theme determines the visual appearance of the component.
9811
+ */
9812
+ "theme"?: "ios" | "md" | "ionic";
8550
9813
  }
8551
9814
  interface IonText {
8552
9815
  /**
@@ -8554,9 +9817,13 @@ declare namespace LocalJSX {
8554
9817
  */
8555
9818
  "color"?: Color;
8556
9819
  /**
8557
- * The mode determines which platform styles to use.
9820
+ * The mode determines the platform behaviors of the component.
8558
9821
  */
8559
9822
  "mode"?: "ios" | "md";
9823
+ /**
9824
+ * The theme determines the visual appearance of the component.
9825
+ */
9826
+ "theme"?: "ios" | "md" | "ionic";
8560
9827
  }
8561
9828
  interface IonTextarea {
8562
9829
  /**
@@ -8614,7 +9881,7 @@ declare namespace LocalJSX {
8614
9881
  */
8615
9882
  "errorText"?: string;
8616
9883
  /**
8617
- * 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.
9884
+ * 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"`.
8618
9885
  */
8619
9886
  "fill"?: 'outline' | 'solid';
8620
9887
  /**
@@ -8643,7 +9910,7 @@ declare namespace LocalJSX {
8643
9910
  */
8644
9911
  "minlength"?: number;
8645
9912
  /**
8646
- * The mode determines which platform styles to use.
9913
+ * The mode determines the platform behaviors of the component.
8647
9914
  */
8648
9915
  "mode"?: "ios" | "md";
8649
9916
  /**
@@ -8686,14 +9953,23 @@ declare namespace LocalJSX {
8686
9953
  */
8687
9954
  "rows"?: number;
8688
9955
  /**
8689
- * The shape of the textarea. If "round" it will have an increased border radius.
9956
+ * 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.
9957
+ */
9958
+ "shape"?: 'soft' | 'round' | 'rectangular';
9959
+ /**
9960
+ * 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.
9961
+ * @default 'medium'
8690
9962
  */
8691
- "shape"?: 'round';
9963
+ "size"?: 'small' | 'medium' | 'large';
8692
9964
  /**
8693
9965
  * If `true`, the element will have its spelling and grammar checked.
8694
9966
  * @default false
8695
9967
  */
8696
9968
  "spellcheck"?: boolean;
9969
+ /**
9970
+ * The theme determines the visual appearance of the component.
9971
+ */
9972
+ "theme"?: "ios" | "md" | "ionic";
8697
9973
  /**
8698
9974
  * The value of the textarea.
8699
9975
  * @default ''
@@ -8705,16 +9981,32 @@ declare namespace LocalJSX {
8705
9981
  "wrap"?: 'hard' | 'soft' | 'off';
8706
9982
  }
8707
9983
  interface IonThumbnail {
9984
+ /**
9985
+ * The mode determines the platform behaviors of the component.
9986
+ */
9987
+ "mode"?: "ios" | "md";
9988
+ /**
9989
+ * The theme determines the visual appearance of the component.
9990
+ */
9991
+ "theme"?: "ios" | "md" | "ionic";
8708
9992
  }
8709
9993
  interface IonTitle {
8710
9994
  /**
8711
9995
  * 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).
8712
9996
  */
8713
9997
  "color"?: Color;
9998
+ /**
9999
+ * The mode determines the platform behaviors of the component.
10000
+ */
10001
+ "mode"?: "ios" | "md";
8714
10002
  /**
8715
10003
  * The size of the toolbar title.
8716
10004
  */
8717
10005
  "size"?: 'large' | 'small';
10006
+ /**
10007
+ * The theme determines the visual appearance of the component.
10008
+ */
10009
+ "theme"?: "ios" | "md" | "ionic";
8718
10010
  }
8719
10011
  interface IonToast {
8720
10012
  /**
@@ -8751,6 +10043,11 @@ declare namespace LocalJSX {
8751
10043
  * Additional attributes to pass to the toast.
8752
10044
  */
8753
10045
  "htmlAttributes"?: { [key: string]: any };
10046
+ /**
10047
+ * Set to `"bold"` for a toast with vibrant, bold colors or to `"subtle"` for a toast with muted, subtle colors. Only applies to the `ionic` theme.
10048
+ * @default 'subtle'
10049
+ */
10050
+ "hue"?: 'bold' | 'subtle';
8754
10051
  /**
8755
10052
  * The name of the icon to display, or the path to a valid SVG file. See `ion-icon`. https://ionic.io/ionicons
8756
10053
  */
@@ -8779,7 +10076,7 @@ declare namespace LocalJSX {
8779
10076
  */
8780
10077
  "message"?: string | IonicSafeString;
8781
10078
  /**
8782
- * The mode determines which platform styles to use.
10079
+ * The mode determines the platform behaviors of the component.
8783
10080
  */
8784
10081
  "mode"?: "ios" | "md";
8785
10082
  /**
@@ -8823,12 +10120,20 @@ declare namespace LocalJSX {
8823
10120
  * 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.
8824
10121
  */
8825
10122
  "positionAnchor"?: HTMLElement | string;
10123
+ /**
10124
+ * 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.
10125
+ */
10126
+ "shape"?: 'soft' | 'round' | 'rectangular';
8826
10127
  /**
8827
10128
  * 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.
8828
10129
  */
8829
10130
  "swipeGesture"?: ToastSwipeGestureDirection;
8830
10131
  /**
8831
- * 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).
10132
+ * The theme determines the visual appearance of the component.
10133
+ */
10134
+ "theme"?: "ios" | "md" | "ionic";
10135
+ /**
10136
+ * 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).
8832
10137
  * @default false
8833
10138
  */
8834
10139
  "translucent"?: boolean;
@@ -8879,7 +10184,7 @@ declare namespace LocalJSX {
8879
10184
  */
8880
10185
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8881
10186
  /**
8882
- * The mode determines which platform styles to use.
10187
+ * The mode determines the platform behaviors of the component.
8883
10188
  */
8884
10189
  "mode"?: "ios" | "md";
8885
10190
  /**
@@ -8904,6 +10209,10 @@ declare namespace LocalJSX {
8904
10209
  * @default false
8905
10210
  */
8906
10211
  "required"?: boolean;
10212
+ /**
10213
+ * The theme determines the visual appearance of the component.
10214
+ */
10215
+ "theme"?: "ios" | "md" | "ionic";
8907
10216
  /**
8908
10217
  * 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>`.
8909
10218
  * @default 'on'
@@ -8916,9 +10225,13 @@ declare namespace LocalJSX {
8916
10225
  */
8917
10226
  "color"?: Color;
8918
10227
  /**
8919
- * The mode determines which platform styles to use.
10228
+ * The mode determines the platform behaviors of the component.
8920
10229
  */
8921
10230
  "mode"?: "ios" | "md";
10231
+ /**
10232
+ * The theme determines the visual appearance of the component.
10233
+ */
10234
+ "theme"?: "ios" | "md" | "ionic";
8922
10235
  }
8923
10236
  interface IntrinsicElements {
8924
10237
  "ion-accordion": IonAccordion;
@@ -8945,6 +10258,7 @@ declare namespace LocalJSX {
8945
10258
  "ion-content": IonContent;
8946
10259
  "ion-datetime": IonDatetime;
8947
10260
  "ion-datetime-button": IonDatetimeButton;
10261
+ "ion-divider": IonDivider;
8948
10262
  "ion-fab": IonFab;
8949
10263
  "ion-fab-button": IonFabButton;
8950
10264
  "ion-fab-list": IonFabList;
@@ -9048,6 +10362,7 @@ declare module "@stencil/core" {
9048
10362
  "ion-content": LocalJSX.IonContent & JSXBase.HTMLAttributes<HTMLIonContentElement>;
9049
10363
  "ion-datetime": LocalJSX.IonDatetime & JSXBase.HTMLAttributes<HTMLIonDatetimeElement>;
9050
10364
  "ion-datetime-button": LocalJSX.IonDatetimeButton & JSXBase.HTMLAttributes<HTMLIonDatetimeButtonElement>;
10365
+ "ion-divider": LocalJSX.IonDivider & JSXBase.HTMLAttributes<HTMLIonDividerElement>;
9051
10366
  "ion-fab": LocalJSX.IonFab & JSXBase.HTMLAttributes<HTMLIonFabElement>;
9052
10367
  "ion-fab-button": LocalJSX.IonFabButton & JSXBase.HTMLAttributes<HTMLIonFabButtonElement>;
9053
10368
  "ion-fab-list": LocalJSX.IonFabList & JSXBase.HTMLAttributes<HTMLIonFabListElement>;