voyager-ionic-core 8.5.7 → 8.6.1

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 (811) hide show
  1. package/components/action-sheet.js +37 -23
  2. package/components/alert.js +42 -26
  3. package/components/animation.js +2 -2
  4. package/components/backdrop.js +11 -4
  5. package/components/button-active.js +1 -1
  6. package/components/button.js +53 -29
  7. package/components/buttons.js +14 -4
  8. package/components/capacitor.js +1 -1
  9. package/components/checkbox.js +40 -16
  10. package/components/config.js +1 -1
  11. package/components/content.js +24 -5
  12. package/components/data.js +31 -6
  13. package/components/gesture-controller.js +1 -1
  14. package/components/haptic.js +1 -1
  15. package/components/hardware-back-button.js +2 -2
  16. package/components/header.js +12 -7
  17. package/components/helpers.js +3 -6
  18. package/components/icon.js +1 -2
  19. package/components/index.js +1 -1
  20. package/components/index2.js +1 -1
  21. package/components/index3.js +3 -5
  22. package/components/index4.js +1 -1
  23. package/components/index5.js +2 -2
  24. package/components/index6.js +28 -3
  25. package/components/index7.js +163 -27
  26. package/components/index8.js +1 -1
  27. package/components/index9.js +3 -163
  28. package/components/input-shims.js +25 -2
  29. package/components/input.utils.js +2 -2
  30. package/components/ion-accordion-group.js +20 -7
  31. package/components/ion-accordion.js +32 -14
  32. package/components/ion-app.js +4 -5
  33. package/components/ion-avatar.js +2 -4
  34. package/components/ion-back-button.js +12 -13
  35. package/components/ion-badge.js +2 -5
  36. package/components/ion-breadcrumb.js +22 -20
  37. package/components/ion-breadcrumbs.js +14 -10
  38. package/components/ion-card-content.js +2 -4
  39. package/components/ion-card-header.js +7 -5
  40. package/components/ion-card-subtitle.js +2 -5
  41. package/components/ion-card-title.js +2 -5
  42. package/components/ion-card.js +16 -11
  43. package/components/ion-chip.js +8 -5
  44. package/components/ion-col.js +1 -26
  45. package/components/ion-datetime-button.js +16 -14
  46. package/components/ion-datetime.js +222 -131
  47. package/components/ion-fab-button.js +37 -20
  48. package/components/ion-fab-list.js +7 -2
  49. package/components/ion-fab.js +10 -4
  50. package/components/ion-footer.js +13 -8
  51. package/components/ion-grid.js +4 -2
  52. package/components/ion-img.js +1 -6
  53. package/components/ion-infinite-scroll-content.js +2 -6
  54. package/components/ion-infinite-scroll.js +27 -6
  55. package/components/ion-input-otp.d.ts +11 -0
  56. package/components/ion-input-otp.js +631 -0
  57. package/components/ion-input-password-toggle.js +11 -13
  58. package/components/ion-input.js +79 -51
  59. package/components/ion-item-divider.js +11 -7
  60. package/components/ion-item-group.js +3 -5
  61. package/components/ion-item-option.js +16 -14
  62. package/components/ion-item-options.js +7 -5
  63. package/components/ion-item-sliding.js +8 -5
  64. package/components/ion-loading.js +38 -21
  65. package/components/ion-menu-button.js +17 -12
  66. package/components/ion-menu-toggle.js +11 -7
  67. package/components/ion-menu.js +28 -12
  68. package/components/ion-nav-link.js +7 -7
  69. package/components/ion-nav.js +9 -12
  70. package/components/ion-note.js +4 -7
  71. package/components/ion-picker-legacy.js +47 -27
  72. package/components/ion-progress-bar.js +20 -7
  73. package/components/ion-range.js +69 -29
  74. package/components/ion-refresher-content.js +2 -6
  75. package/components/ion-refresher.js +56 -8
  76. package/components/ion-reorder-group.js +7 -5
  77. package/components/ion-reorder.js +4 -6
  78. package/components/ion-route-redirect.js +0 -2
  79. package/components/ion-route.js +9 -7
  80. package/components/ion-router-link.js +9 -11
  81. package/components/ion-router-outlet.js +12 -10
  82. package/components/ion-router.js +19 -1
  83. package/components/ion-row.js +2 -3
  84. package/components/ion-searchbar.js +82 -33
  85. package/components/ion-segment-button.js +22 -13
  86. package/components/ion-segment-content.js +2 -3
  87. package/components/ion-segment-view.js +7 -7
  88. package/components/ion-segment.js +24 -13
  89. package/components/ion-select-option.js +5 -4
  90. package/components/ion-select.js +68 -34
  91. package/components/ion-skeleton-text.js +6 -4
  92. package/components/ion-split-pane.js +13 -8
  93. package/components/ion-tab-bar.js +9 -8
  94. package/components/ion-tab-button.js +12 -14
  95. package/components/ion-tab.js +5 -8
  96. package/components/ion-tabs.js +5 -6
  97. package/components/ion-text.js +3 -5
  98. package/components/ion-textarea.js +72 -36
  99. package/components/ion-thumbnail.js +2 -3
  100. package/components/ion-toast.js +58 -35
  101. package/components/ion-toggle.js +55 -24
  102. package/components/ionic-global.js +1 -1
  103. package/components/item.js +20 -14
  104. package/components/keyboard-controller.js +2 -2
  105. package/components/keyboard.js +134 -69
  106. package/components/keyboard2.js +69 -134
  107. package/components/label.js +4 -8
  108. package/components/list-header.js +4 -8
  109. package/components/list.js +6 -6
  110. package/components/modal.js +252 -205
  111. package/components/notch-controller.js +1 -1
  112. package/components/overlays.js +3 -3
  113. package/components/picker-column-option.js +20 -7
  114. package/components/picker-column.js +25 -10
  115. package/components/picker-column2.js +8 -11
  116. package/components/picker.js +2 -4
  117. package/components/popover.js +132 -40
  118. package/components/radio-group.js +11 -11
  119. package/components/radio.js +30 -16
  120. package/components/refresher.utils.js +2 -2
  121. package/components/ripple-effect.js +11 -3
  122. package/components/select-modal.js +4 -9
  123. package/components/select-popover.js +6 -9
  124. package/components/spinner.js +5 -6
  125. package/components/swipe-back.js +1 -1
  126. package/components/title.js +4 -8
  127. package/components/toolbar.js +4 -7
  128. package/css/core.css +1 -1
  129. package/css/core.css.map +1 -1
  130. package/css/global.bundle.css +1 -1
  131. package/css/global.bundle.css.map +1 -1
  132. package/css/ionic.bundle.css +1 -1
  133. package/css/ionic.bundle.css.map +1 -1
  134. package/css/structure.css +1 -1
  135. package/css/structure.css.map +1 -1
  136. package/dist/cjs/{animation-ab2d3449.js → animation-0T7gKwOt.js} +2 -2
  137. package/dist/cjs/{button-active-43e2b419.js → button-active-C-4ud7Ht.js} +3 -3
  138. package/dist/cjs/{capacitor-c04564bf.js → capacitor-DmA66EwP.js} +1 -1
  139. package/dist/cjs/{config-f6225ae7.js → config-U7OAuj53.js} +1 -1
  140. package/dist/cjs/{data-94e8d392.js → data-DRqa6oM4.js} +30 -5
  141. package/dist/cjs/{framework-delegate-862d9d00.js → framework-delegate-C7sIJyT5.js} +1 -1
  142. package/dist/cjs/{gesture-controller-9436f482.js → gesture-controller-dtqlP_q4.js} +1 -1
  143. package/dist/cjs/{haptic-f6b37aa3.js → haptic-ClPPQ_PS.js} +1 -1
  144. package/dist/cjs/{hardware-back-button-3d2b1004.js → hardware-back-button-D90qZxju.js} +2 -2
  145. package/dist/cjs/{helpers-8a48fdea.js → helpers-BITAzJfi.js} +2 -5
  146. package/dist/cjs/{index-dbe01e08.js → index-BDBT0u4l.js} +3 -3
  147. package/dist/cjs/{index-ee07ed59.js → index-CAvQ7Tka.js} +3 -4
  148. package/dist/cjs/{index-073c7cdc.js → index-CPbAsnJK.js} +1 -0
  149. package/dist/cjs/{index-31b07b9c.js → index-CVa6JE57.js} +3 -3
  150. package/dist/cjs/{index-a96d31ae.js → index-CxfLS2mX.js} +8 -9
  151. package/dist/cjs/{index-2e236a04.js → index-DODXXb_r.js} +1676 -675
  152. package/dist/cjs/{index-1eff7149.js → index-y0QaNtCi.js} +6 -7
  153. package/dist/cjs/index.cjs.js +22 -28
  154. package/dist/cjs/{input-shims-415be7ee.js → input-shims-D1Mfgd4s.js} +29 -6
  155. package/dist/cjs/{input.utils-a7957fd6.js → input.utils-DSoBEyUu.js} +3 -3
  156. package/dist/cjs/ion-accordion_2.cjs.entry.js +56 -29
  157. package/dist/cjs/ion-action-sheet.cjs.entry.js +50 -40
  158. package/dist/cjs/ion-alert.cjs.entry.js +59 -47
  159. package/dist/cjs/ion-app_8.cjs.entry.js +134 -105
  160. package/dist/cjs/ion-avatar_3.cjs.entry.js +10 -20
  161. package/dist/cjs/ion-back-button.cjs.entry.js +21 -26
  162. package/dist/cjs/ion-backdrop.cjs.entry.js +13 -10
  163. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +39 -37
  164. package/dist/cjs/ion-button_2.cjs.entry.js +54 -37
  165. package/dist/cjs/ion-card_5.cjs.entry.js +36 -41
  166. package/dist/cjs/ion-checkbox.cjs.entry.js +44 -24
  167. package/dist/cjs/ion-chip.cjs.entry.js +11 -12
  168. package/dist/cjs/ion-col_3.cjs.entry.js +10 -38
  169. package/dist/cjs/ion-datetime-button.cjs.entry.js +23 -25
  170. package/dist/cjs/ion-datetime_3.cjs.entry.js +344 -241
  171. package/dist/cjs/ion-fab_3.cjs.entry.js +59 -35
  172. package/dist/cjs/ion-img.cjs.entry.js +4 -13
  173. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +38 -25
  174. package/dist/cjs/ion-input-otp.cjs.entry.js +593 -0
  175. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +17 -23
  176. package/dist/cjs/ion-input.cjs.entry.js +86 -62
  177. package/dist/cjs/ion-item-option_3.cjs.entry.js +40 -37
  178. package/dist/cjs/ion-item_8.cjs.entry.js +69 -74
  179. package/dist/cjs/ion-loading.cjs.entry.js +50 -37
  180. package/dist/cjs/ion-menu_3.cjs.entry.js +84 -63
  181. package/dist/cjs/ion-modal.cjs.entry.js +271 -228
  182. package/dist/cjs/ion-nav_2.cjs.entry.js +30 -37
  183. package/dist/cjs/ion-picker-column-option.cjs.entry.js +24 -15
  184. package/dist/cjs/ion-picker-column.cjs.entry.js +32 -21
  185. package/dist/cjs/ion-picker.cjs.entry.js +4 -9
  186. package/dist/cjs/ion-popover.cjs.entry.js +143 -55
  187. package/dist/cjs/ion-progress-bar.cjs.entry.js +24 -15
  188. package/dist/cjs/ion-radio_2.cjs.entry.js +47 -37
  189. package/dist/cjs/ion-range.cjs.entry.js +78 -42
  190. package/dist/cjs/ion-refresher_2.cjs.entry.js +81 -41
  191. package/dist/cjs/ion-reorder_2.cjs.entry.js +19 -23
  192. package/dist/cjs/ion-ripple-effect.cjs.entry.js +13 -9
  193. package/dist/cjs/ion-route_4.cjs.entry.js +52 -40
  194. package/dist/cjs/ion-searchbar.cjs.entry.js +91 -46
  195. package/dist/cjs/ion-segment-content.cjs.entry.js +3 -6
  196. package/dist/cjs/ion-segment-view.cjs.entry.js +8 -10
  197. package/dist/cjs/ion-segment_2.cjs.entry.js +55 -39
  198. package/dist/cjs/ion-select-modal.cjs.entry.js +12 -21
  199. package/dist/cjs/ion-select_3.cjs.entry.js +98 -70
  200. package/dist/cjs/ion-spinner.cjs.entry.js +12 -17
  201. package/dist/cjs/ion-split-pane.cjs.entry.js +16 -15
  202. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +31 -36
  203. package/dist/cjs/ion-tab_2.cjs.entry.js +13 -20
  204. package/dist/cjs/ion-text.cjs.entry.js +6 -12
  205. package/dist/cjs/ion-textarea.cjs.entry.js +79 -47
  206. package/dist/cjs/ion-toast.cjs.entry.js +82 -63
  207. package/dist/cjs/ion-toggle.cjs.entry.js +64 -37
  208. package/dist/cjs/ionic.cjs.js +7 -10
  209. package/dist/cjs/{ios.transition-a131cd4d.js → ios.transition-baEy2tr4.js} +5 -6
  210. package/dist/cjs/{keyboard-0272231f.js → keyboard-UuAS4D_9.js} +1 -1
  211. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-GXBiBRKS.js} +2 -2
  212. package/dist/cjs/{keyboard-af1bb365.js → keyboard-hHzlEQpk.js} +3 -3
  213. package/dist/cjs/loader.cjs.js +3 -8
  214. package/dist/cjs/{md.transition-e018ebe5.js → md.transition-Bvc-JrM5.js} +5 -6
  215. package/dist/cjs/{notch-controller-09b7f358.js → notch-controller-BAbqGXRi.js} +2 -2
  216. package/dist/cjs/{overlays-4c291a05.js → overlays-DRDumz2b.js} +9 -10
  217. package/dist/cjs/{status-tap-f1acefac.js → status-tap-Db3WeCkO.js} +3 -4
  218. package/dist/cjs/{swipe-back-442ca3d7.js → swipe-back-bLyc4PSi.js} +5 -5
  219. package/dist/collection/collection-manifest.json +3 -2
  220. package/dist/collection/components/accordion/accordion.js +43 -13
  221. package/dist/collection/components/accordion-group/accordion-group.js +35 -8
  222. package/dist/collection/components/action-sheet/action-sheet.js +84 -31
  223. package/dist/collection/components/alert/alert.js +94 -34
  224. package/dist/collection/components/back-button/back-button.js +30 -14
  225. package/dist/collection/components/backdrop/backdrop.js +18 -3
  226. package/dist/collection/components/badge/badge.js +3 -4
  227. package/dist/collection/components/breadcrumb/breadcrumb.js +57 -26
  228. package/dist/collection/components/breadcrumbs/breadcrumbs.js +24 -10
  229. package/dist/collection/components/button/button.js +97 -36
  230. package/dist/collection/components/buttons/buttons.js +15 -1
  231. package/dist/collection/components/card/card.js +44 -16
  232. package/dist/collection/components/card-header/card-header.js +11 -3
  233. package/dist/collection/components/card-subtitle/card-subtitle.js +3 -4
  234. package/dist/collection/components/card-title/card-title.js +3 -4
  235. package/dist/collection/components/checkbox/checkbox.js +74 -24
  236. package/dist/collection/components/chip/chip.js +15 -4
  237. package/dist/collection/components/col/col.js +72 -50
  238. package/dist/collection/components/content/content.js +43 -9
  239. package/dist/collection/components/datetime/datetime.ios.css +7 -2
  240. package/dist/collection/components/datetime/datetime.js +323 -147
  241. package/dist/collection/components/datetime/datetime.md.css +9 -3
  242. package/dist/collection/components/datetime/utils/data.js +29 -4
  243. package/dist/collection/components/datetime-button/datetime-button.js +21 -11
  244. package/dist/collection/components/fab/fab.js +21 -6
  245. package/dist/collection/components/fab-button/fab-button.js +76 -28
  246. package/dist/collection/components/fab-list/fab-list.js +12 -2
  247. package/dist/collection/components/footer/footer.js +16 -5
  248. package/dist/collection/components/grid/grid.js +6 -1
  249. package/dist/collection/components/header/header.js +15 -4
  250. package/dist/collection/components/img/img.js +6 -6
  251. package/dist/collection/components/infinite-scroll/infinite-scroll.js +35 -7
  252. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +6 -4
  253. package/dist/collection/components/input/input.js +178 -79
  254. package/dist/collection/components/input-otp/input-otp-interface.js +1 -0
  255. package/dist/collection/components/input-otp/input-otp.ios.css +381 -0
  256. package/dist/collection/components/input-otp/input-otp.js +1003 -0
  257. package/dist/collection/components/input-otp/input-otp.md.css +381 -0
  258. package/dist/collection/components/input-password-toggle/input-password-toggle.js +19 -11
  259. package/dist/collection/components/item/item.js +56 -21
  260. package/dist/collection/components/item-divider/item-divider.js +15 -5
  261. package/dist/collection/components/item-group/item-group.js +1 -1
  262. package/dist/collection/components/item-option/item-option.js +38 -18
  263. package/dist/collection/components/item-options/item-options.js +8 -2
  264. package/dist/collection/components/item-sliding/item-sliding.js +9 -3
  265. package/dist/collection/components/label/label.js +8 -6
  266. package/dist/collection/components/list/list.js +10 -4
  267. package/dist/collection/components/list-header/list-header.js +8 -8
  268. package/dist/collection/components/loading/loading.js +88 -31
  269. package/dist/collection/components/menu/menu.js +44 -12
  270. package/dist/collection/components/menu-button/menu-button.js +29 -12
  271. package/dist/collection/components/menu-toggle/menu-toggle.js +16 -7
  272. package/dist/collection/components/modal/animations/ios.enter.js +1 -41
  273. package/dist/collection/components/modal/animations/ios.leave.js +2 -24
  274. package/dist/collection/components/modal/animations/md.enter.js +2 -42
  275. package/dist/collection/components/modal/animations/md.leave.js +2 -24
  276. package/dist/collection/components/modal/gestures/sheet.js +122 -29
  277. package/dist/collection/components/modal/modal.ios.css +0 -10
  278. package/dist/collection/components/modal/modal.js +192 -55
  279. package/dist/collection/components/nav/nav.js +25 -12
  280. package/dist/collection/components/nav-link/nav-link.js +19 -9
  281. package/dist/collection/components/note/note.js +5 -6
  282. package/dist/collection/components/picker-column/picker-column.js +34 -10
  283. package/dist/collection/components/picker-column-option/picker-column-option.js +27 -6
  284. package/dist/collection/components/picker-legacy/picker.js +93 -33
  285. package/dist/collection/components/picker-legacy-column/picker-column.js +7 -5
  286. package/dist/collection/components/popover/popover.js +211 -58
  287. package/dist/collection/components/progress-bar/progress-bar.js +32 -7
  288. package/dist/collection/components/radio/radio.js +49 -19
  289. package/dist/collection/components/radio-group/radio-group.js +27 -13
  290. package/dist/collection/components/range/range.js +112 -37
  291. package/dist/collection/components/refresher/refresher.js +69 -7
  292. package/dist/collection/components/refresher-content/refresher-content.js +13 -9
  293. package/dist/collection/components/reorder/reorder.js +1 -1
  294. package/dist/collection/components/reorder-group/reorder-group.js +7 -2
  295. package/dist/collection/components/ripple-effect/ripple-effect.js +13 -2
  296. package/dist/collection/components/route/route.js +24 -9
  297. package/dist/collection/components/route-redirect/route-redirect.js +6 -6
  298. package/dist/collection/components/router/router.js +24 -2
  299. package/dist/collection/components/router-link/router-link.js +26 -14
  300. package/dist/collection/components/router-outlet/router-outlet.js +25 -9
  301. package/dist/collection/components/row/row.js +1 -1
  302. package/dist/collection/components/searchbar/searchbar.js +146 -51
  303. package/dist/collection/components/segment/segment.js +40 -15
  304. package/dist/collection/components/segment-button/segment-button.js +34 -13
  305. package/dist/collection/components/segment-content/segment-content.js +1 -1
  306. package/dist/collection/components/segment-view/segment-view.js +8 -4
  307. package/dist/collection/components/select/select.js +128 -48
  308. package/dist/collection/components/select-modal/select-modal.js +10 -5
  309. package/dist/collection/components/select-option/select-option.js +10 -4
  310. package/dist/collection/components/select-popover/select-popover.js +19 -9
  311. package/dist/collection/components/skeleton-text/skeleton-text.js +8 -3
  312. package/dist/collection/components/spinner/spinner.js +16 -8
  313. package/dist/collection/components/split-pane/split-pane.js +19 -6
  314. package/dist/collection/components/tab/tab.js +16 -9
  315. package/dist/collection/components/tab-bar/tab-bar.js +16 -7
  316. package/dist/collection/components/tab-button/tab-button.js +34 -18
  317. package/dist/collection/components/tabs/tabs.js +6 -4
  318. package/dist/collection/components/text/text.js +5 -6
  319. package/dist/collection/components/textarea/textarea.js +154 -59
  320. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  321. package/dist/collection/components/title/title.js +8 -8
  322. package/dist/collection/components/toast/toast.js +121 -47
  323. package/dist/collection/components/toggle/toggle.js +86 -28
  324. package/dist/collection/components/toolbar/toolbar.js +5 -4
  325. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +23 -0
  326. package/dist/docs.d.ts +8 -0
  327. package/dist/docs.json +4490 -942
  328. package/dist/esm/{animation-8b25e105.js → animation-BWcUKtbn.js} +2 -2
  329. package/dist/esm/{button-active-90f1dbc4.js → button-active-Bxcnevju.js} +3 -3
  330. package/dist/esm/{capacitor-59395cbd.js → capacitor-CFERIeaU.js} +1 -1
  331. package/dist/esm/{config-9898ed97.js → config-AaTyISnm.js} +1 -1
  332. package/dist/esm/{data-0d7ea6eb.js → data-GIsHsYIB.js} +31 -6
  333. package/dist/esm/{framework-delegate-56b467ad.js → framework-delegate-DxcnWic_.js} +1 -1
  334. package/dist/esm/{gesture-controller-314a54f6.js → gesture-controller-BTEOs1at.js} +1 -1
  335. package/dist/esm/{haptic-ac164e4c.js → haptic-DzAMWJuk.js} +2 -2
  336. package/dist/esm/{hardware-back-button-a7eb8233.js → hardware-back-button-DcH0BbDp.js} +2 -2
  337. package/dist/esm/{helpers-d94bc8ad.js → helpers-1O4D2b7y.js} +3 -6
  338. package/dist/esm/{index-e2cf2ceb.js → index-BLV6ykCk.js} +2 -1
  339. package/dist/esm/{index-527b9e34.js → index-B_U9CtaY.js} +1667 -654
  340. package/dist/esm/{index-9a17db3d.js → index-BlJTBdxG.js} +3 -3
  341. package/dist/esm/{index-be190feb.js → index-CWbP1eJz.js} +3 -3
  342. package/dist/esm/{index-39782642.js → index-CfgBF1SE.js} +4 -6
  343. package/dist/esm/{index-18f31305.js → index-D8sncTHY.js} +5 -6
  344. package/dist/esm/{index-68c0d151.js → index-DfBA5ztX.js} +4 -5
  345. package/dist/esm/index.js +16 -18
  346. package/dist/esm/{input-shims-279903e2.js → input-shims-C3lNp93k.js} +29 -6
  347. package/dist/esm/{input.utils-40504d6d.js → input.utils-zWijNCrx.js} +3 -3
  348. package/dist/esm/ion-accordion_2.entry.js +52 -23
  349. package/dist/esm/ion-action-sheet.entry.js +48 -36
  350. package/dist/esm/ion-alert.entry.js +53 -39
  351. package/dist/esm/ion-app_8.entry.js +99 -68
  352. package/dist/esm/ion-avatar_3.entry.js +8 -16
  353. package/dist/esm/ion-back-button.entry.js +14 -17
  354. package/dist/esm/ion-backdrop.entry.js +12 -7
  355. package/dist/esm/ion-breadcrumb_2.entry.js +37 -33
  356. package/dist/esm/ion-button_2.entry.js +50 -31
  357. package/dist/esm/ion-card_5.entry.js +31 -34
  358. package/dist/esm/ion-checkbox.entry.js +43 -21
  359. package/dist/esm/ion-chip.entry.js +10 -9
  360. package/dist/esm/ion-col_3.entry.js +8 -34
  361. package/dist/esm/ion-datetime-button.entry.js +18 -18
  362. package/dist/esm/ion-datetime_3.entry.js +279 -174
  363. package/dist/esm/ion-fab_3.entry.js +56 -30
  364. package/dist/esm/ion-img.entry.js +3 -10
  365. package/dist/esm/ion-infinite-scroll_2.entry.js +33 -18
  366. package/dist/esm/ion-input-otp.entry.js +591 -0
  367. package/dist/esm/ion-input-password-toggle.entry.js +12 -16
  368. package/dist/esm/ion-input.entry.js +84 -58
  369. package/dist/esm/ion-item-option_3.entry.js +36 -31
  370. package/dist/esm/ion-item_8.entry.js +60 -63
  371. package/dist/esm/ion-loading.entry.js +46 -31
  372. package/dist/esm/ion-menu_3.entry.js +66 -43
  373. package/dist/esm/ion-modal.entry.js +260 -215
  374. package/dist/esm/ion-nav_2.entry.js +17 -22
  375. package/dist/esm/ion-picker-column-option.entry.js +23 -12
  376. package/dist/esm/ion-picker-column.entry.js +29 -16
  377. package/dist/esm/ion-picker.entry.js +4 -7
  378. package/dist/esm/ion-popover.entry.js +137 -47
  379. package/dist/esm/ion-progress-bar.entry.js +22 -11
  380. package/dist/esm/ion-radio_2.entry.js +45 -33
  381. package/dist/esm/ion-range.entry.js +72 -34
  382. package/dist/esm/ion-refresher_2.entry.js +68 -26
  383. package/dist/esm/ion-reorder_2.entry.js +17 -19
  384. package/dist/esm/ion-ripple-effect.entry.js +12 -6
  385. package/dist/esm/ion-route_4.entry.js +35 -21
  386. package/dist/esm/ion-searchbar.entry.js +86 -39
  387. package/dist/esm/ion-segment-content.entry.js +3 -4
  388. package/dist/esm/ion-segment-view.entry.js +8 -8
  389. package/dist/esm/ion-segment_2.entry.js +50 -32
  390. package/dist/esm/ion-select-modal.entry.js +12 -19
  391. package/dist/esm/ion-select_3.entry.js +88 -58
  392. package/dist/esm/ion-spinner.entry.js +8 -11
  393. package/dist/esm/ion-split-pane.entry.js +13 -10
  394. package/dist/esm/ion-tab-bar_2.entry.js +28 -31
  395. package/dist/esm/ion-tab_2.entry.js +11 -16
  396. package/dist/esm/ion-text.entry.js +5 -9
  397. package/dist/esm/ion-textarea.entry.js +77 -43
  398. package/dist/esm/ion-toast.entry.js +65 -44
  399. package/dist/esm/ion-toggle.entry.js +62 -33
  400. package/dist/esm/ionic.js +5 -7
  401. package/dist/esm/{ios.transition-4047cb68.js → ios.transition-BmXtMRXZ.js} +5 -6
  402. package/dist/esm/{keyboard-73175e24.js → keyboard-CUw4ekVy.js} +1 -1
  403. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-BaaVITYt.js} +2 -2
  404. package/dist/esm/{keyboard-52278bd7.js → keyboard-ywgs5efA.js} +3 -3
  405. package/dist/esm/loader.js +3 -6
  406. package/dist/esm/{md.transition-30ce8d1b.js → md.transition-CLI683c7.js} +5 -6
  407. package/dist/esm/{notch-controller-1a1f7183.js → notch-controller-C5LPspO8.js} +2 -2
  408. package/dist/esm/{overlays-d99dcb0a.js → overlays-8Y2rA-ps.js} +6 -7
  409. package/dist/esm/{status-tap-42a8af65.js → status-tap-7t9T91bG.js} +3 -4
  410. package/dist/esm/{swipe-back-04123e7c.js → swipe-back-D_6Vqlwy.js} +5 -5
  411. package/dist/html.html-data.json +377 -1
  412. package/dist/index.js +1 -1
  413. package/dist/ionic/index.esm.js +1 -1
  414. package/dist/ionic/ionic.esm.js +1 -1
  415. package/dist/ionic/p-0fc6fc38.entry.js +4 -0
  416. package/dist/ionic/p-14ae45e4.entry.js +4 -0
  417. package/dist/ionic/p-15da9760.entry.js +4 -0
  418. package/dist/ionic/p-1739f5f2.entry.js +4 -0
  419. package/dist/ionic/p-18f1813b.entry.js +4 -0
  420. package/dist/ionic/p-2020aa51.entry.js +4 -0
  421. package/dist/ionic/p-2c6c6991.entry.js +4 -0
  422. package/dist/ionic/p-2cfd6b61.entry.js +4 -0
  423. package/dist/ionic/p-2d01ecd5.entry.js +4 -0
  424. package/dist/ionic/p-2da6a16b.entry.js +4 -0
  425. package/dist/ionic/p-3a4feac2.entry.js +4 -0
  426. package/dist/ionic/p-473877b6.entry.js +4 -0
  427. package/dist/ionic/p-4b7d1f35.entry.js +4 -0
  428. package/dist/ionic/p-4d61f20b.entry.js +4 -0
  429. package/dist/ionic/p-4ddc10ef.entry.js +4 -0
  430. package/dist/ionic/p-56712fd4.entry.js +4 -0
  431. package/dist/ionic/p-6b666996.entry.js +4 -0
  432. package/dist/ionic/p-7149db7e.entry.js +4 -0
  433. package/dist/ionic/p-73d7ad90.entry.js +4 -0
  434. package/dist/ionic/p-76b697a3.entry.js +4 -0
  435. package/dist/ionic/{p-ed005d9c.js → p-7qk7mxdr.js} +1 -1
  436. package/dist/ionic/p-81f1b778.entry.js +4 -0
  437. package/dist/ionic/p-8957540a.entry.js +4 -0
  438. package/dist/ionic/p-8a8ef46b.entry.js +4 -0
  439. package/dist/ionic/p-8c674371.entry.js +4 -0
  440. package/dist/ionic/p-8f2f76e0.entry.js +4 -0
  441. package/dist/ionic/p-91bde659.entry.js +4 -0
  442. package/dist/ionic/p-96389029.entry.js +4 -0
  443. package/dist/ionic/p-97667b9c.entry.js +4 -0
  444. package/dist/ionic/p-9b46b31b.entry.js +4 -0
  445. package/dist/ionic/p-9e699d4a.entry.js +4 -0
  446. package/dist/ionic/p-9eeaBrnk.js +4 -0
  447. package/dist/ionic/p-B1MNHTYX.js +4 -0
  448. package/dist/ionic/p-B3XSxWNQ.js +4 -0
  449. package/dist/ionic/{p-da2b833b.js → p-BLV6ykCk.js} +1 -1
  450. package/dist/ionic/p-BROiNJRB.js +4 -0
  451. package/dist/ionic/p-B_U9CtaY.js +5 -0
  452. package/dist/ionic/{p-f08a92cc.js → p-BhLqfMrf.js} +1 -1
  453. package/dist/ionic/{p-2bb55ebc.js → p-BmQduG8c.js} +1 -1
  454. package/dist/ionic/p-CIGNaXM1.js +4 -0
  455. package/dist/ionic/{p-89b61afc.js → p-CKvCXMs9.js} +1 -1
  456. package/dist/ionic/p-CL-KfWxq.js +4 -0
  457. package/dist/ionic/p-CPgXVSua.js +4 -0
  458. package/dist/ionic/p-CRiGyYOA.js +4 -0
  459. package/dist/ionic/{p-10a1bddc.js → p-CbI9XwwW.js} +1 -1
  460. package/dist/ionic/p-Cl0B-RWe.js +4 -0
  461. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  462. package/dist/ionic/{p-27281edd.js → p-D13Eaw-8.js} +1 -1
  463. package/dist/ionic/{p-0f5e6225.js → p-DCfS5Jk_.js} +1 -1
  464. package/dist/ionic/p-DgdWETCP.js +4 -0
  465. package/dist/ionic/p-Do-uqmtX.js +4 -0
  466. package/dist/ionic/p-DonTxalL.js +4 -0
  467. package/dist/ionic/{p-b7b1d91a.js → p-DzH0J0yi.js} +1 -1
  468. package/dist/ionic/p-QwEXyOze.js +4 -0
  469. package/dist/ionic/p-a6282370.entry.js +4 -0
  470. package/dist/ionic/p-a9ac80bd.entry.js +4 -0
  471. package/dist/ionic/p-a9f99c74.entry.js +4 -0
  472. package/dist/ionic/p-aIxOGKys.js +4 -0
  473. package/dist/ionic/p-aa8956c2.entry.js +4 -0
  474. package/dist/ionic/p-b37dbc31.entry.js +4 -0
  475. package/dist/ionic/p-b9f79efc.entry.js +4 -0
  476. package/dist/ionic/p-bNmY-WfR.js +4 -0
  477. package/dist/ionic/p-bb5fc02e.entry.js +4 -0
  478. package/dist/ionic/p-bc01c127.entry.js +4 -0
  479. package/dist/ionic/p-bec79123.entry.js +4 -0
  480. package/dist/ionic/p-c0335397.entry.js +4 -0
  481. package/dist/ionic/p-c448135a.entry.js +4 -0
  482. package/dist/ionic/p-c4912ca5.entry.js +4 -0
  483. package/dist/ionic/p-c884d7e3.entry.js +4 -0
  484. package/dist/ionic/p-cb787a4b.entry.js +4 -0
  485. package/dist/ionic/p-cd12ed1c.entry.js +4 -0
  486. package/dist/ionic/p-cf632ee2.entry.js +4 -0
  487. package/dist/ionic/p-d8ed5df0.entry.js +4 -0
  488. package/dist/ionic/p-e1260ed5.entry.js +4 -0
  489. package/dist/ionic/p-e30ff968.entry.js +4 -0
  490. package/dist/ionic/{p-b6d324f0.js → p-ei_RiGrl.js} +1 -1
  491. package/dist/ionic/p-f83db8cd.entry.js +4 -0
  492. package/dist/ionic/p-fbc5481b.entry.js +4 -0
  493. package/dist/ionic/p-fcc7437b.entry.js +4 -0
  494. package/dist/types/components/button/button.d.ts +11 -0
  495. package/dist/types/components/datetime/datetime-interface.d.ts +1 -0
  496. package/dist/types/components/datetime/datetime.d.ts +6 -0
  497. package/dist/types/components/datetime/utils/data.d.ts +3 -1
  498. package/dist/types/components/datetime/utils/manipulation.d.ts +1 -0
  499. package/dist/types/components/input-otp/input-otp-interface.d.ts +21 -0
  500. package/dist/types/components/input-otp/input-otp.d.ts +268 -0
  501. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  502. package/dist/types/components.d.ts +786 -2
  503. package/dist/types/interface.d.ts +1 -0
  504. package/dist/types/stencil-public-runtime.d.ts +29 -1
  505. package/hydrate/index.d.ts +44 -7
  506. package/hydrate/index.js +5671 -2585
  507. package/hydrate/index.mjs +5670 -2584
  508. package/loader/cdn.js +1 -2
  509. package/loader/index.cjs.js +1 -2
  510. package/loader/index.es2017.js +0 -1
  511. package/loader/index.js +1 -2
  512. package/package.json +4 -4
  513. package/dist/cjs/app-globals-ddceb1f4.js +0 -10
  514. package/dist/cjs/index-cc858e97.js +0 -129
  515. package/dist/cjs/ionic-global-6dea5a96.js +0 -152
  516. package/dist/esm/app-globals-dbdbb3df.js +0 -8
  517. package/dist/esm/index-cfd9c1f2.js +0 -121
  518. package/dist/esm/ionic-global-b26f573e.js +0 -147
  519. package/dist/esm/polyfills/core-js.js +0 -11
  520. package/dist/esm/polyfills/dom.js +0 -79
  521. package/dist/esm/polyfills/es5-html-element.js +0 -1
  522. package/dist/esm/polyfills/index.js +0 -34
  523. package/dist/esm/polyfills/system.js +0 -6
  524. package/dist/esm-es5/animation-8b25e105.js +0 -4
  525. package/dist/esm-es5/app-globals-dbdbb3df.js +0 -4
  526. package/dist/esm-es5/button-active-90f1dbc4.js +0 -4
  527. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  528. package/dist/esm-es5/compare-with-utils-a96ff2ea.js +0 -4
  529. package/dist/esm-es5/config-9898ed97.js +0 -4
  530. package/dist/esm-es5/cubic-bezier-fe2083dc.js +0 -4
  531. package/dist/esm-es5/data-0d7ea6eb.js +0 -4
  532. package/dist/esm-es5/dir-babeabeb.js +0 -4
  533. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  534. package/dist/esm-es5/framework-delegate-56b467ad.js +0 -4
  535. package/dist/esm-es5/gesture-controller-314a54f6.js +0 -4
  536. package/dist/esm-es5/haptic-ac164e4c.js +0 -4
  537. package/dist/esm-es5/hardware-back-button-a7eb8233.js +0 -4
  538. package/dist/esm-es5/helpers-d94bc8ad.js +0 -4
  539. package/dist/esm-es5/index-18f31305.js +0 -4
  540. package/dist/esm-es5/index-39782642.js +0 -4
  541. package/dist/esm-es5/index-527b9e34.js +0 -5
  542. package/dist/esm-es5/index-68c0d151.js +0 -4
  543. package/dist/esm-es5/index-9a17db3d.js +0 -4
  544. package/dist/esm-es5/index-a5d50daf.js +0 -4
  545. package/dist/esm-es5/index-be190feb.js +0 -4
  546. package/dist/esm-es5/index-cfd9c1f2.js +0 -5
  547. package/dist/esm-es5/index-e2cf2ceb.js +0 -4
  548. package/dist/esm-es5/index.js +0 -4
  549. package/dist/esm-es5/input-shims-279903e2.js +0 -4
  550. package/dist/esm-es5/input.utils-40504d6d.js +0 -4
  551. package/dist/esm-es5/ion-accordion_2.entry.js +0 -4
  552. package/dist/esm-es5/ion-action-sheet.entry.js +0 -4
  553. package/dist/esm-es5/ion-alert.entry.js +0 -4
  554. package/dist/esm-es5/ion-app_8.entry.js +0 -4
  555. package/dist/esm-es5/ion-avatar_3.entry.js +0 -4
  556. package/dist/esm-es5/ion-back-button.entry.js +0 -4
  557. package/dist/esm-es5/ion-backdrop.entry.js +0 -4
  558. package/dist/esm-es5/ion-breadcrumb_2.entry.js +0 -4
  559. package/dist/esm-es5/ion-button_2.entry.js +0 -4
  560. package/dist/esm-es5/ion-card_5.entry.js +0 -4
  561. package/dist/esm-es5/ion-checkbox.entry.js +0 -4
  562. package/dist/esm-es5/ion-chip.entry.js +0 -4
  563. package/dist/esm-es5/ion-col_3.entry.js +0 -4
  564. package/dist/esm-es5/ion-datetime-button.entry.js +0 -4
  565. package/dist/esm-es5/ion-datetime_3.entry.js +0 -4
  566. package/dist/esm-es5/ion-fab_3.entry.js +0 -4
  567. package/dist/esm-es5/ion-img.entry.js +0 -4
  568. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +0 -4
  569. package/dist/esm-es5/ion-input-password-toggle.entry.js +0 -4
  570. package/dist/esm-es5/ion-input.entry.js +0 -4
  571. package/dist/esm-es5/ion-item-option_3.entry.js +0 -4
  572. package/dist/esm-es5/ion-item_8.entry.js +0 -4
  573. package/dist/esm-es5/ion-loading.entry.js +0 -4
  574. package/dist/esm-es5/ion-menu_3.entry.js +0 -4
  575. package/dist/esm-es5/ion-modal.entry.js +0 -4
  576. package/dist/esm-es5/ion-nav_2.entry.js +0 -4
  577. package/dist/esm-es5/ion-picker-column-option.entry.js +0 -4
  578. package/dist/esm-es5/ion-picker-column.entry.js +0 -4
  579. package/dist/esm-es5/ion-picker.entry.js +0 -4
  580. package/dist/esm-es5/ion-popover.entry.js +0 -4
  581. package/dist/esm-es5/ion-progress-bar.entry.js +0 -4
  582. package/dist/esm-es5/ion-radio_2.entry.js +0 -4
  583. package/dist/esm-es5/ion-range.entry.js +0 -4
  584. package/dist/esm-es5/ion-refresher_2.entry.js +0 -4
  585. package/dist/esm-es5/ion-reorder_2.entry.js +0 -4
  586. package/dist/esm-es5/ion-ripple-effect.entry.js +0 -4
  587. package/dist/esm-es5/ion-route_4.entry.js +0 -4
  588. package/dist/esm-es5/ion-searchbar.entry.js +0 -4
  589. package/dist/esm-es5/ion-segment-content.entry.js +0 -4
  590. package/dist/esm-es5/ion-segment-view.entry.js +0 -4
  591. package/dist/esm-es5/ion-segment_2.entry.js +0 -4
  592. package/dist/esm-es5/ion-select-modal.entry.js +0 -4
  593. package/dist/esm-es5/ion-select_3.entry.js +0 -4
  594. package/dist/esm-es5/ion-spinner.entry.js +0 -4
  595. package/dist/esm-es5/ion-split-pane.entry.js +0 -4
  596. package/dist/esm-es5/ion-tab-bar_2.entry.js +0 -4
  597. package/dist/esm-es5/ion-tab_2.entry.js +0 -4
  598. package/dist/esm-es5/ion-text.entry.js +0 -4
  599. package/dist/esm-es5/ion-textarea.entry.js +0 -4
  600. package/dist/esm-es5/ion-toast.entry.js +0 -4
  601. package/dist/esm-es5/ion-toggle.entry.js +0 -4
  602. package/dist/esm-es5/ionic-global-b26f573e.js +0 -4
  603. package/dist/esm-es5/ionic.js +0 -4
  604. package/dist/esm-es5/ios.transition-4047cb68.js +0 -4
  605. package/dist/esm-es5/keyboard-52278bd7.js +0 -4
  606. package/dist/esm-es5/keyboard-73175e24.js +0 -4
  607. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  608. package/dist/esm-es5/loader.js +0 -4
  609. package/dist/esm-es5/lock-controller-316928be.js +0 -4
  610. package/dist/esm-es5/md.transition-30ce8d1b.js +0 -4
  611. package/dist/esm-es5/notch-controller-1a1f7183.js +0 -4
  612. package/dist/esm-es5/overlays-d99dcb0a.js +0 -4
  613. package/dist/esm-es5/spinner-configs-964f7cf3.js +0 -4
  614. package/dist/esm-es5/status-tap-42a8af65.js +0 -4
  615. package/dist/esm-es5/swipe-back-04123e7c.js +0 -4
  616. package/dist/esm-es5/theme-01f3f29c.js +0 -4
  617. package/dist/esm-es5/watch-options-c2911ace.js +0 -4
  618. package/dist/ionic/ionic.js +0 -127
  619. package/dist/ionic/p-00023f5a.system.js +0 -4
  620. package/dist/ionic/p-012c3ceb.system.js +0 -4
  621. package/dist/ionic/p-03480b95.system.entry.js +0 -4
  622. package/dist/ionic/p-08cef0b1.entry.js +0 -4
  623. package/dist/ionic/p-08e01816.system.js +0 -4
  624. package/dist/ionic/p-0af640d6.entry.js +0 -4
  625. package/dist/ionic/p-105b2e8b.entry.js +0 -4
  626. package/dist/ionic/p-117d0013.system.entry.js +0 -4
  627. package/dist/ionic/p-11dca959.entry.js +0 -4
  628. package/dist/ionic/p-12193821.system.js +0 -4
  629. package/dist/ionic/p-12830298.system.entry.js +0 -4
  630. package/dist/ionic/p-14154301.system.entry.js +0 -4
  631. package/dist/ionic/p-1706b406.system.entry.js +0 -4
  632. package/dist/ionic/p-17e21141.js +0 -4
  633. package/dist/ionic/p-19494658.system.entry.js +0 -4
  634. package/dist/ionic/p-1966a13c.system.js +0 -4
  635. package/dist/ionic/p-1974d5b2.system.js +0 -4
  636. package/dist/ionic/p-1a7df1c3.system.js +0 -4
  637. package/dist/ionic/p-1a81ac09.system.js +0 -4
  638. package/dist/ionic/p-1b9c59ab.js +0 -4
  639. package/dist/ionic/p-1d307396.system.js +0 -4
  640. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  641. package/dist/ionic/p-1e4371bd.js +0 -4
  642. package/dist/ionic/p-1e955a45.system.js +0 -4
  643. package/dist/ionic/p-200fc491.js +0 -4
  644. package/dist/ionic/p-20d469d0.system.js +0 -4
  645. package/dist/ionic/p-21891ead.js +0 -4
  646. package/dist/ionic/p-2233344a.system.js +0 -4
  647. package/dist/ionic/p-2469240b.entry.js +0 -4
  648. package/dist/ionic/p-24a6c8a3.system.entry.js +0 -4
  649. package/dist/ionic/p-257fb777.entry.js +0 -4
  650. package/dist/ionic/p-25b10f81.js +0 -4
  651. package/dist/ionic/p-2b7827c7.js +0 -4
  652. package/dist/ionic/p-2bff0e69.system.entry.js +0 -4
  653. package/dist/ionic/p-31dc303d.entry.js +0 -4
  654. package/dist/ionic/p-3535d6b5.entry.js +0 -4
  655. package/dist/ionic/p-35cdfd77.system.entry.js +0 -4
  656. package/dist/ionic/p-393ffcc2.entry.js +0 -4
  657. package/dist/ionic/p-39fa7dd1.system.entry.js +0 -4
  658. package/dist/ionic/p-3a30f31b.system.entry.js +0 -4
  659. package/dist/ionic/p-3e1e14d9.system.js +0 -4
  660. package/dist/ionic/p-42f08b26.system.entry.js +0 -4
  661. package/dist/ionic/p-4609d030.system.js +0 -4
  662. package/dist/ionic/p-481e0885.entry.js +0 -4
  663. package/dist/ionic/p-4a5be299.system.entry.js +0 -4
  664. package/dist/ionic/p-4c667fce.js +0 -4
  665. package/dist/ionic/p-4cf4172e.entry.js +0 -4
  666. package/dist/ionic/p-4da92dac.entry.js +0 -4
  667. package/dist/ionic/p-4ed5db19.system.js +0 -4
  668. package/dist/ionic/p-4f255d5a.system.js +0 -4
  669. package/dist/ionic/p-50cb2e8b.system.entry.js +0 -4
  670. package/dist/ionic/p-57957c0f.entry.js +0 -4
  671. package/dist/ionic/p-57d6e18e.entry.js +0 -4
  672. package/dist/ionic/p-57e55ecb.system.js +0 -4
  673. package/dist/ionic/p-5b67b447.js +0 -4
  674. package/dist/ionic/p-5c9feddc.system.entry.js +0 -4
  675. package/dist/ionic/p-5fac20aa.system.entry.js +0 -4
  676. package/dist/ionic/p-612096e6.system.entry.js +0 -4
  677. package/dist/ionic/p-6201c4ba.entry.js +0 -4
  678. package/dist/ionic/p-625248d0.system.js +0 -4
  679. package/dist/ionic/p-663413be.system.js +0 -4
  680. package/dist/ionic/p-6636a436.js +0 -4
  681. package/dist/ionic/p-66a5d6a8.js +0 -5
  682. package/dist/ionic/p-66df5468.system.entry.js +0 -4
  683. package/dist/ionic/p-67077d48.entry.js +0 -4
  684. package/dist/ionic/p-67cacd6d.entry.js +0 -4
  685. package/dist/ionic/p-6835ebdd.system.entry.js +0 -4
  686. package/dist/ionic/p-6b8530f5.system.entry.js +0 -4
  687. package/dist/ionic/p-6c474e87.entry.js +0 -4
  688. package/dist/ionic/p-6dd86ff5.system.entry.js +0 -4
  689. package/dist/ionic/p-6ec0c94a.entry.js +0 -4
  690. package/dist/ionic/p-6f832afe.system.entry.js +0 -4
  691. package/dist/ionic/p-707408c5.system.entry.js +0 -4
  692. package/dist/ionic/p-712c0131.entry.js +0 -4
  693. package/dist/ionic/p-721f43f9.entry.js +0 -4
  694. package/dist/ionic/p-7445a2e5.system.js +0 -4
  695. package/dist/ionic/p-7611ede3.system.entry.js +0 -4
  696. package/dist/ionic/p-781e2dbb.system.js +0 -4
  697. package/dist/ionic/p-792919fd.system.js +0 -4
  698. package/dist/ionic/p-7b8c12c3.entry.js +0 -4
  699. package/dist/ionic/p-7c5c7ae1.system.entry.js +0 -4
  700. package/dist/ionic/p-7e3e6ed2.entry.js +0 -4
  701. package/dist/ionic/p-7ffedf77.system.entry.js +0 -4
  702. package/dist/ionic/p-809483ac.js +0 -4
  703. package/dist/ionic/p-81904a80.entry.js +0 -4
  704. package/dist/ionic/p-84096b45.system.js +0 -4
  705. package/dist/ionic/p-8450f761.entry.js +0 -4
  706. package/dist/ionic/p-8460d95a.entry.js +0 -4
  707. package/dist/ionic/p-85b01465.js +0 -4
  708. package/dist/ionic/p-865fe95c.entry.js +0 -4
  709. package/dist/ionic/p-8674af94.entry.js +0 -4
  710. package/dist/ionic/p-890a4ee2.entry.js +0 -4
  711. package/dist/ionic/p-891553d8.entry.js +0 -4
  712. package/dist/ionic/p-8985cdb6.system.js +0 -4
  713. package/dist/ionic/p-8b050e84.system.js +0 -4
  714. package/dist/ionic/p-8d2d39d0.js +0 -4
  715. package/dist/ionic/p-8dacf4e2.entry.js +0 -4
  716. package/dist/ionic/p-8ededb41.js +0 -4
  717. package/dist/ionic/p-94551927.js +0 -4
  718. package/dist/ionic/p-95001a19.js +0 -4
  719. package/dist/ionic/p-965287fb.system.entry.js +0 -4
  720. package/dist/ionic/p-979d4f5c.system.js +0 -4
  721. package/dist/ionic/p-98fd942b.system.entry.js +0 -4
  722. package/dist/ionic/p-9df5043e.system.entry.js +0 -4
  723. package/dist/ionic/p-9e753482.system.entry.js +0 -4
  724. package/dist/ionic/p-a0fd2fe5.system.entry.js +0 -4
  725. package/dist/ionic/p-a2c6a9c8.entry.js +0 -4
  726. package/dist/ionic/p-a2dd5b69.system.entry.js +0 -4
  727. package/dist/ionic/p-a4866e3e.system.js +0 -4
  728. package/dist/ionic/p-a5dbe0ff.system.entry.js +0 -4
  729. package/dist/ionic/p-a7a97bf4.system.entry.js +0 -4
  730. package/dist/ionic/p-a835aca8.entry.js +0 -4
  731. package/dist/ionic/p-a83e3290.system.js +0 -4
  732. package/dist/ionic/p-a93873de.system.js +0 -4
  733. package/dist/ionic/p-aad57e35.entry.js +0 -4
  734. package/dist/ionic/p-ab7337e1.entry.js +0 -4
  735. package/dist/ionic/p-abe101da.system.js +0 -4
  736. package/dist/ionic/p-ad592db9.entry.js +0 -4
  737. package/dist/ionic/p-aded71ec.js +0 -4
  738. package/dist/ionic/p-ae039072.entry.js +0 -4
  739. package/dist/ionic/p-aebfab05.system.entry.js +0 -4
  740. package/dist/ionic/p-b06ac4a5.system.js +0 -4
  741. package/dist/ionic/p-b2e7eda0.system.entry.js +0 -4
  742. package/dist/ionic/p-b445ff65.entry.js +0 -4
  743. package/dist/ionic/p-b4d17da0.system.entry.js +0 -4
  744. package/dist/ionic/p-b5432d15.entry.js +0 -4
  745. package/dist/ionic/p-b8050298.system.entry.js +0 -4
  746. package/dist/ionic/p-b904cfe2.system.entry.js +0 -4
  747. package/dist/ionic/p-b9c793d4.entry.js +0 -4
  748. package/dist/ionic/p-bafc3eae.system.entry.js +0 -4
  749. package/dist/ionic/p-bf184319.system.entry.js +0 -4
  750. package/dist/ionic/p-bfb763d0.system.entry.js +0 -4
  751. package/dist/ionic/p-c16443a8.system.js +0 -4
  752. package/dist/ionic/p-c1b7d311.system.entry.js +0 -4
  753. package/dist/ionic/p-c2160d8c.entry.js +0 -4
  754. package/dist/ionic/p-c468af8a.system.js +0 -4
  755. package/dist/ionic/p-c5b77054.entry.js +0 -4
  756. package/dist/ionic/p-c5bfa3e9.entry.js +0 -4
  757. package/dist/ionic/p-c61cc894.js +0 -4
  758. package/dist/ionic/p-cad82569.entry.js +0 -4
  759. package/dist/ionic/p-d16fab3f.entry.js +0 -4
  760. package/dist/ionic/p-d1eb2d7f.entry.js +0 -4
  761. package/dist/ionic/p-d382f09c.system.js +0 -4
  762. package/dist/ionic/p-d8d84afa.system.js +0 -4
  763. package/dist/ionic/p-d984c1ab.system.entry.js +0 -4
  764. package/dist/ionic/p-dabe3bd4.js +0 -4
  765. package/dist/ionic/p-df069a0d.entry.js +0 -4
  766. package/dist/ionic/p-e1678e42.entry.js +0 -4
  767. package/dist/ionic/p-e6068998.system.entry.js +0 -4
  768. package/dist/ionic/p-e673a0a2.system.js +0 -4
  769. package/dist/ionic/p-e727e32d.system.entry.js +0 -4
  770. package/dist/ionic/p-e8245753.entry.js +0 -4
  771. package/dist/ionic/p-e887b6a9.system.js +0 -4
  772. package/dist/ionic/p-f08dfb19.entry.js +0 -4
  773. package/dist/ionic/p-f0c9f8e3.system.entry.js +0 -4
  774. package/dist/ionic/p-f0ef39ab.entry.js +0 -4
  775. package/dist/ionic/p-f11a9436.system.js +0 -5
  776. package/dist/ionic/p-f22490a7.system.entry.js +0 -4
  777. package/dist/ionic/p-f6bb9be7.system.entry.js +0 -4
  778. package/dist/ionic/p-f6e7d104.system.js +0 -4
  779. package/dist/ionic/p-f725bf9e.system.js +0 -4
  780. package/dist/ionic/p-f9a87db2.system.entry.js +0 -4
  781. package/dist/ionic/p-fa3f4b96.system.js +0 -4
  782. package/dist/ionic/p-fe063952.system.entry.js +0 -4
  783. package/loader/package.json +0 -11
  784. /package/dist/cjs/{compare-with-utils-df1001d7.js → compare-with-utils-DSicavqM.js} +0 -0
  785. /package/dist/cjs/{cubic-bezier-f2dccc53.js → cubic-bezier-DAjy1V-e.js} +0 -0
  786. /package/dist/cjs/{dir-94c21456.js → dir-Cn0z1rJH.js} +0 -0
  787. /package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-CCvKiLh3.js} +0 -0
  788. /package/dist/cjs/{index-c8d52405.js → index-DkNv4J_i.js} +0 -0
  789. /package/dist/cjs/{lock-controller-6585a42a.js → lock-controller-aDB9wrEf.js} +0 -0
  790. /package/dist/cjs/{spinner-configs-282fd50a.js → spinner-configs-DxHKnd3-.js} +0 -0
  791. /package/dist/cjs/{theme-d1c573d2.js → theme-CeDs6Hcv.js} +0 -0
  792. /package/dist/cjs/{watch-options-f5f3e158.js → watch-options-CviOsrTS.js} +0 -0
  793. /package/dist/esm/{compare-with-utils-a96ff2ea.js → compare-with-utils-sObYyvOy.js} +0 -0
  794. /package/dist/esm/{cubic-bezier-fe2083dc.js → cubic-bezier-hHmYLOfE.js} +0 -0
  795. /package/dist/esm/{dir-babeabeb.js → dir-C53feagD.js} +0 -0
  796. /package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-BmVRXR1y.js} +0 -0
  797. /package/dist/esm/{index-a5d50daf.js → index-ZjP4CjeZ.js} +0 -0
  798. /package/dist/esm/{lock-controller-316928be.js → lock-controller-B-hirT0v.js} +0 -0
  799. /package/dist/esm/{spinner-configs-964f7cf3.js → spinner-configs-D4RIp70E.js} +0 -0
  800. /package/dist/esm/{theme-01f3f29c.js → theme-DiVJyqlX.js} +0 -0
  801. /package/dist/esm/{watch-options-c2911ace.js → watch-options-Dtdm8lKC.js} +0 -0
  802. /package/dist/ionic/{p-ccd02320.js → p-B-hirT0v.js} +0 -0
  803. /package/dist/ionic/{p-9b97df10.js → p-BTEOs1at.js} +0 -0
  804. /package/dist/ionic/{p-d47265c8.js → p-BmVRXR1y.js} +0 -0
  805. /package/dist/ionic/{p-fb813dab.js → p-C53feagD.js} +0 -0
  806. /package/dist/ionic/{p-f0c2a614.js → p-D4RIp70E.js} +0 -0
  807. /package/dist/ionic/{p-47794def.js → p-DiVJyqlX.js} +0 -0
  808. /package/dist/ionic/{p-459d13d5.js → p-Dtdm8lKC.js} +0 -0
  809. /package/dist/ionic/{p-7b30edcc.js → p-ZjP4CjeZ.js} +0 -0
  810. /package/dist/ionic/{p-2408c236.js → p-hHmYLOfE.js} +0 -0
  811. /package/dist/ionic/{p-de756e5c.js → p-sObYyvOy.js} +0 -0
@@ -18,6 +18,7 @@ import { ScrollBaseDetail, ScrollDetail } from "./components/content/content-int
18
18
  import { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
19
19
  import { SpinnerTypes } from "./components/spinner/spinner-configs";
20
20
  import { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
21
+ import { InputOtpChangeEventDetail, InputOtpCompleteEventDetail, InputOtpInputEventDetail } from "./components/input-otp/input-otp-interface";
21
22
  import { MenuChangeEventDetail, MenuCloseEventDetail, MenuType, Side } from "./components/menu/menu-interface";
22
23
  import { ModalBreakpointChangeEventDetail, ModalHandleBehavior } from "./components/modal/modal-interface";
23
24
  import { NavComponent, NavComponentWithProps, NavOptions, RouterOutletOptions, SwipeGestureHandler, TransitionDoneFn, TransitionInstruction } from "./components/nav/nav-interface";
@@ -55,6 +56,7 @@ export { ScrollBaseDetail, ScrollDetail } from "./components/content/content-int
55
56
  export { DatetimeChangeEventDetail, DatetimeHighlight, DatetimeHighlightCallback, DatetimeHourCycle, DatetimePresentation, FormatOptions, TitleSelectedDatesFormatter } from "./components/datetime/datetime-interface";
56
57
  export { SpinnerTypes } from "./components/spinner/spinner-configs";
57
58
  export { InputChangeEventDetail, InputInputEventDetail } from "./components/input/input-interface";
59
+ export { InputOtpChangeEventDetail, InputOtpCompleteEventDetail, InputOtpInputEventDetail } from "./components/input-otp/input-otp-interface";
58
60
  export { MenuChangeEventDetail, MenuCloseEventDetail, MenuType, Side } from "./components/menu/menu-interface";
59
61
  export { ModalBreakpointChangeEventDetail, ModalHandleBehavior } from "./components/modal/modal-interface";
60
62
  export { NavComponent, NavComponentWithProps, NavOptions, RouterOutletOptions, SwipeGestureHandler, TransitionDoneFn, TransitionInstruction } from "./components/nav/nav-interface";
@@ -83,6 +85,7 @@ export namespace Components {
83
85
  interface IonAccordion {
84
86
  /**
85
87
  * If `true`, the accordion cannot be interacted with.
88
+ * @default false
86
89
  */
87
90
  "disabled": boolean;
88
91
  /**
@@ -91,32 +94,39 @@ export namespace Components {
91
94
  "mode"?: "ios" | "md";
92
95
  /**
93
96
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
97
+ * @default false
94
98
  */
95
99
  "readonly": boolean;
96
100
  /**
97
101
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
102
+ * @default chevronDown
98
103
  */
99
104
  "toggleIcon": string;
100
105
  /**
101
106
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
107
+ * @default 'end'
102
108
  */
103
109
  "toggleIconSlot": 'start' | 'end';
104
110
  /**
105
111
  * The value of the accordion. Defaults to an autogenerated value.
112
+ * @default `ion-accordion-${accordionIds++}`
106
113
  */
107
114
  "value": string;
108
115
  }
109
116
  interface IonAccordionGroup {
110
117
  /**
111
118
  * If `true`, all accordions inside of the accordion group will animate when expanding or collapsing.
119
+ * @default true
112
120
  */
113
121
  "animated": boolean;
114
122
  /**
115
123
  * If `true`, the accordion group cannot be interacted with.
124
+ * @default false
116
125
  */
117
126
  "disabled": boolean;
118
127
  /**
119
128
  * Describes the expansion behavior for each accordion. Possible values are `"compact"` and `"inset"`. Defaults to `"compact"`.
129
+ * @default 'compact'
120
130
  */
121
131
  "expand": 'compact' | 'inset';
122
132
  "getAccordions": () => Promise<HTMLIonAccordionElement[]>;
@@ -130,6 +140,7 @@ export namespace Components {
130
140
  "multiple"?: boolean;
131
141
  /**
132
142
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
143
+ * @default false
133
144
  */
134
145
  "readonly": boolean;
135
146
  /**
@@ -144,14 +155,17 @@ export namespace Components {
144
155
  interface IonActionSheet {
145
156
  /**
146
157
  * If `true`, the action sheet will animate.
158
+ * @default true
147
159
  */
148
160
  "animated": boolean;
149
161
  /**
150
162
  * If `true`, the action sheet will be dismissed when the backdrop is clicked.
163
+ * @default true
151
164
  */
152
165
  "backdropDismiss": boolean;
153
166
  /**
154
167
  * An array of buttons for the action sheet.
168
+ * @default []
155
169
  */
156
170
  "buttons": (ActionSheetButton | string)[];
157
171
  /**
@@ -169,6 +183,9 @@ export namespace Components {
169
183
  * Animation to use when the action sheet is presented.
170
184
  */
171
185
  "enterAnimation"?: AnimationBuilder;
186
+ /**
187
+ * @default false
188
+ */
172
189
  "hasController": boolean;
173
190
  /**
174
191
  * Title for the action sheet.
@@ -180,10 +197,12 @@ export namespace Components {
180
197
  "htmlAttributes"?: { [key: string]: any };
181
198
  /**
182
199
  * If `true`, the action sheet will open. If `false`, the action sheet will close. Use this if you need finer grained control over presentation, otherwise just use the actionSheetController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the action sheet dismisses. You will need to do that in your code.
200
+ * @default false
183
201
  */
184
202
  "isOpen": boolean;
185
203
  /**
186
204
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
205
+ * @default true
187
206
  */
188
207
  "keyboardClose": boolean;
189
208
  /**
@@ -213,6 +232,7 @@ export namespace Components {
213
232
  "subHeader"?: string;
214
233
  /**
215
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).
235
+ * @default false
216
236
  */
217
237
  "translucent": boolean;
218
238
  /**
@@ -223,14 +243,17 @@ export namespace Components {
223
243
  interface IonAlert {
224
244
  /**
225
245
  * If `true`, the alert will animate.
246
+ * @default true
226
247
  */
227
248
  "animated": boolean;
228
249
  /**
229
250
  * If `true`, the alert will be dismissed when the backdrop is clicked.
251
+ * @default true
230
252
  */
231
253
  "backdropDismiss": boolean;
232
254
  /**
233
255
  * Array of buttons to be added to the alert.
256
+ * @default []
234
257
  */
235
258
  "buttons": (AlertButton | string)[];
236
259
  /**
@@ -248,6 +271,9 @@ export namespace Components {
248
271
  * Animation to use when the alert is presented.
249
272
  */
250
273
  "enterAnimation"?: AnimationBuilder;
274
+ /**
275
+ * @default false
276
+ */
251
277
  "hasController": boolean;
252
278
  /**
253
279
  * The main title in the heading of the alert.
@@ -259,14 +285,17 @@ export namespace Components {
259
285
  "htmlAttributes"?: { [key: string]: any };
260
286
  /**
261
287
  * Array of input to show in the alert.
288
+ * @default []
262
289
  */
263
290
  "inputs": AlertInput[];
264
291
  /**
265
292
  * If `true`, the alert will open. If `false`, the alert will close. Use this if you need finer grained control over presentation, otherwise just use the alertController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the alert dismisses. You will need to do that in your code.
293
+ * @default false
266
294
  */
267
295
  "isOpen": boolean;
268
296
  /**
269
297
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
298
+ * @default true
270
299
  */
271
300
  "keyboardClose": boolean;
272
301
  /**
@@ -300,6 +329,7 @@ export namespace Components {
300
329
  "subHeader"?: string;
301
330
  /**
302
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).
332
+ * @default false
303
333
  */
304
334
  "translucent": boolean;
305
335
  /**
@@ -326,6 +356,7 @@ export namespace Components {
326
356
  "defaultHref"?: string;
327
357
  /**
328
358
  * If `true`, the user cannot interact with the button.
359
+ * @default false
329
360
  */
330
361
  "disabled": boolean;
331
362
  /**
@@ -346,20 +377,24 @@ export namespace Components {
346
377
  "text"?: string | null;
347
378
  /**
348
379
  * The type of the button.
380
+ * @default 'button'
349
381
  */
350
382
  "type": 'submit' | 'reset' | 'button';
351
383
  }
352
384
  interface IonBackdrop {
353
385
  /**
354
386
  * If `true`, the backdrop will stop propagation on tap.
387
+ * @default true
355
388
  */
356
389
  "stopPropagation": boolean;
357
390
  /**
358
391
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
392
+ * @default true
359
393
  */
360
394
  "tappable": boolean;
361
395
  /**
362
396
  * If `true`, the backdrop will be visible.
397
+ * @default true
363
398
  */
364
399
  "visible": boolean;
365
400
  }
@@ -376,8 +411,12 @@ export namespace Components {
376
411
  interface IonBreadcrumb {
377
412
  /**
378
413
  * If `true`, the breadcrumb will take on a different look to show that it is the currently active breadcrumb. Defaults to `true` for the last breadcrumb if it is not set on any.
414
+ * @default false
379
415
  */
380
416
  "active": boolean;
417
+ /**
418
+ * @default false
419
+ */
381
420
  "collapsed": boolean;
382
421
  /**
383
422
  * 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).
@@ -385,6 +424,7 @@ export namespace Components {
385
424
  "color"?: Color;
386
425
  /**
387
426
  * If `true`, the user cannot interact with the breadcrumb.
427
+ * @default false
388
428
  */
389
429
  "disabled": boolean;
390
430
  /**
@@ -410,6 +450,7 @@ export namespace Components {
410
450
  "routerAnimation": AnimationBuilder | undefined;
411
451
  /**
412
452
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
453
+ * @default 'forward'
413
454
  */
414
455
  "routerDirection": RouterDirection;
415
456
  /**
@@ -429,10 +470,12 @@ export namespace Components {
429
470
  "color"?: Color;
430
471
  /**
431
472
  * The number of breadcrumbs to show after the collapsed indicator. If `itemsBeforeCollapse` + `itemsAfterCollapse` is greater than `maxItems`, the breadcrumbs will not be collapsed.
473
+ * @default 1
432
474
  */
433
475
  "itemsAfterCollapse": number;
434
476
  /**
435
477
  * The number of breadcrumbs to show before the collapsed indicator. If `itemsBeforeCollapse` + `itemsAfterCollapse` is greater than `maxItems`, the breadcrumbs will not be collapsed.
478
+ * @default 1
436
479
  */
437
480
  "itemsBeforeCollapse": number;
438
481
  /**
@@ -447,6 +490,7 @@ export namespace Components {
447
490
  interface IonButton {
448
491
  /**
449
492
  * The type of button.
493
+ * @default 'button'
450
494
  */
451
495
  "buttonType": string;
452
496
  /**
@@ -455,6 +499,7 @@ export namespace Components {
455
499
  "color"?: Color;
456
500
  /**
457
501
  * If `true`, the user cannot interact with the button.
502
+ * @default false
458
503
  */
459
504
  "disabled": boolean;
460
505
  /**
@@ -491,6 +536,7 @@ export namespace Components {
491
536
  "routerAnimation": AnimationBuilder | undefined;
492
537
  /**
493
538
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
539
+ * @default 'forward'
494
540
  */
495
541
  "routerDirection": RouterDirection;
496
542
  /**
@@ -503,6 +549,7 @@ export namespace Components {
503
549
  "size"?: 'small' | 'default' | 'large';
504
550
  /**
505
551
  * If `true`, activates a button with a heavier font weight.
552
+ * @default false
506
553
  */
507
554
  "strong": boolean;
508
555
  /**
@@ -511,18 +558,21 @@ export namespace Components {
511
558
  "target": string | undefined;
512
559
  /**
513
560
  * The type of the button.
561
+ * @default 'button'
514
562
  */
515
563
  "type": 'submit' | 'reset' | 'button';
516
564
  }
517
565
  interface IonButtons {
518
566
  /**
519
567
  * 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)
568
+ * @default false
520
569
  */
521
570
  "collapse": boolean;
522
571
  }
523
572
  interface IonCard {
524
573
  /**
525
574
  * If `true`, a button tag will be rendered and the card will be tappable.
575
+ * @default false
526
576
  */
527
577
  "button": boolean;
528
578
  /**
@@ -531,6 +581,7 @@ export namespace Components {
531
581
  "color"?: Color;
532
582
  /**
533
583
  * If `true`, the user cannot interact with the card.
584
+ * @default false
534
585
  */
535
586
  "disabled": boolean;
536
587
  /**
@@ -555,6 +606,7 @@ export namespace Components {
555
606
  "routerAnimation": AnimationBuilder | undefined;
556
607
  /**
557
608
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
609
+ * @default 'forward'
558
610
  */
559
611
  "routerDirection": RouterDirection;
560
612
  /**
@@ -563,6 +615,7 @@ export namespace Components {
563
615
  "target": string | undefined;
564
616
  /**
565
617
  * The type of the button. Only used when an `onclick` or `button` property is present.
618
+ * @default 'button'
566
619
  */
567
620
  "type": 'submit' | 'reset' | 'button';
568
621
  }
@@ -583,6 +636,7 @@ export namespace Components {
583
636
  "mode"?: "ios" | "md";
584
637
  /**
585
638
  * 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).
639
+ * @default false
586
640
  */
587
641
  "translucent": boolean;
588
642
  }
@@ -613,6 +667,7 @@ export namespace Components {
613
667
  "alignment"?: 'start' | 'center';
614
668
  /**
615
669
  * If `true`, the checkbox is selected.
670
+ * @default false
616
671
  */
617
672
  "checked": boolean;
618
673
  /**
@@ -621,6 +676,7 @@ export namespace Components {
621
676
  "color"?: Color;
622
677
  /**
623
678
  * If `true`, the user cannot interact with the checkbox.
679
+ * @default false
624
680
  */
625
681
  "disabled": boolean;
626
682
  /**
@@ -633,6 +689,7 @@ export namespace Components {
633
689
  "helperText"?: string;
634
690
  /**
635
691
  * If `true`, the checkbox will visually appear as indeterminate.
692
+ * @default false
636
693
  */
637
694
  "indeterminate": boolean;
638
695
  /**
@@ -641,6 +698,7 @@ export namespace Components {
641
698
  "justify"?: 'start' | 'end' | 'space-between';
642
699
  /**
643
700
  * Where to place the label relative to the checkbox. `"start"`: The label will appear to the left of the checkbox in LTR and to the right in RTL. `"end"`: The label will appear to the right of the checkbox in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the checkbox regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
701
+ * @default 'start'
644
702
  */
645
703
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
646
704
  /**
@@ -649,15 +707,18 @@ export namespace Components {
649
707
  "mode"?: "ios" | "md";
650
708
  /**
651
709
  * The name of the control, which is submitted with the form data.
710
+ * @default this.inputId
652
711
  */
653
712
  "name": string;
654
713
  /**
655
714
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
715
+ * @default false
656
716
  */
657
717
  "required": boolean;
658
718
  "setFocus": () => Promise<void>;
659
719
  /**
660
720
  * 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>`.
721
+ * @default 'on'
661
722
  */
662
723
  "value": any | null;
663
724
  }
@@ -668,6 +729,7 @@ export namespace Components {
668
729
  "color"?: Color;
669
730
  /**
670
731
  * If `true`, the user cannot interact with the chip.
732
+ * @default false
671
733
  */
672
734
  "disabled": boolean;
673
735
  /**
@@ -676,6 +738,7 @@ export namespace Components {
676
738
  "mode"?: "ios" | "md";
677
739
  /**
678
740
  * Display an outline style button.
741
+ * @default false
679
742
  */
680
743
  "outline": boolean;
681
744
  }
@@ -784,6 +847,7 @@ export namespace Components {
784
847
  "color"?: Color;
785
848
  /**
786
849
  * Controls where the fixed content is placed relative to the main content in the DOM. This can be used to control the order in which fixed elements receive keyboard focus. For example, if a FAB in the fixed slot should receive keyboard focus before the main page content, set this property to `'before'`.
850
+ * @default 'after'
787
851
  */
788
852
  "fixedSlotPlacement": 'after' | 'before';
789
853
  /**
@@ -792,6 +856,7 @@ export namespace Components {
792
856
  "forceOverscroll"?: boolean;
793
857
  /**
794
858
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
859
+ * @default false
795
860
  */
796
861
  "fullscreen": boolean;
797
862
  /**
@@ -811,6 +876,7 @@ export namespace Components {
811
876
  "scrollByPoint": (x: number, y: number, duration: number) => Promise<void>;
812
877
  /**
813
878
  * Because of performance reasons, ionScroll events are disabled by default, in order to enable them and start listening from (ionScroll), set this property to `true`.
879
+ * @default false
814
880
  */
815
881
  "scrollEvents": boolean;
816
882
  /**
@@ -832,10 +898,12 @@ export namespace Components {
832
898
  "scrollToTop": (duration?: number) => Promise<void>;
833
899
  /**
834
900
  * If you want to enable the content scrolling in the X axis, set this property to `true`.
901
+ * @default false
835
902
  */
836
903
  "scrollX": boolean;
837
904
  /**
838
905
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
906
+ * @default true
839
907
  */
840
908
  "scrollY": boolean;
841
909
  }
@@ -846,14 +914,17 @@ export namespace Components {
846
914
  "cancel": (closeOverlay?: boolean) => Promise<void>;
847
915
  /**
848
916
  * The text to display on the picker's cancel button.
917
+ * @default 'Cancel'
849
918
  */
850
919
  "cancelText": string;
851
920
  /**
852
921
  * The text to display on the picker's "Clear" button.
922
+ * @default 'Clear'
853
923
  */
854
924
  "clearText": string;
855
925
  /**
856
926
  * 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).
927
+ * @default 'primary'
857
928
  */
858
929
  "color"?: Color;
859
930
  /**
@@ -866,14 +937,17 @@ export namespace Components {
866
937
  "dayValues"?: number[] | number | string;
867
938
  /**
868
939
  * If `true`, the user cannot interact with the datetime.
940
+ * @default false
869
941
  */
870
942
  "disabled": boolean;
871
943
  /**
872
944
  * The text to display on the picker's "Done" button.
945
+ * @default 'Done'
873
946
  */
874
947
  "doneText": string;
875
948
  /**
876
949
  * The first day of the week to use for `ion-datetime`. The default value is `0` and represents Sunday.
950
+ * @default 0
877
951
  */
878
952
  "firstDayOfWeek": number;
879
953
  /**
@@ -898,6 +972,7 @@ export namespace Components {
898
972
  "isDateEnabled"?: (dateIsoString: string) => boolean;
899
973
  /**
900
974
  * The locale to use for `ion-datetime`. This impacts month and day name formatting. The `"default"` value refers to the default locale set by your device.
975
+ * @default 'default'
901
976
  */
902
977
  "locale": string;
903
978
  /**
@@ -922,46 +997,61 @@ export namespace Components {
922
997
  "monthValues"?: number[] | number | string;
923
998
  /**
924
999
  * If `true`, multiple dates can be selected at once. Only applies to `presentation="date"` and `preferWheel="false"`.
1000
+ * @default false
925
1001
  */
926
1002
  "multiple": boolean;
927
1003
  /**
928
1004
  * The name of the control, which is submitted with the form data.
1005
+ * @default this.inputId
929
1006
  */
930
1007
  "name": string;
931
1008
  /**
932
1009
  * If `true`, a wheel picker will be rendered instead of a calendar grid where possible. If `false`, a calendar grid will be rendered instead of a wheel picker where possible. A wheel picker can be rendered instead of a grid when `presentation` is one of the following values: `"date"`, `"date-time"`, or `"time-date"`. A wheel picker will always be rendered regardless of the `preferWheel` value when `presentation` is one of the following values: `"time"`, `"month"`, `"month-year"`, or `"year"`.
1010
+ * @default false
933
1011
  */
934
1012
  "preferWheel": boolean;
935
1013
  /**
936
1014
  * Which values you want to select. `"date"` will show a calendar picker to select the month, day, and year. `"time"` will show a time picker to select the hour, minute, and (optionally) AM/PM. `"date-time"` will show the date picker first and time picker second. `"time-date"` will show the time picker first and date picker second.
1015
+ * @default 'date-time'
937
1016
  */
938
1017
  "presentation": DatetimePresentation;
939
1018
  /**
940
1019
  * If `true`, the datetime appears normal but the selected date cannot be changed.
1020
+ * @default false
941
1021
  */
942
1022
  "readonly": boolean;
943
1023
  /**
944
1024
  * Resets the internal state of the datetime but does not update the value. Passing a valid ISO-8601 string will reset the state of the component to the provided date. If no value is provided, the internal state will be reset to the clamped value of the min, max and today.
945
1025
  */
946
1026
  "reset": (startDate?: string) => Promise<void>;
1027
+ /**
1028
+ * If `true`, the datetime calendar displays a six-week (42-day) layout, including days from the previous and next months to fill the grid. These adjacent days are selectable unless disabled.
1029
+ * @default false
1030
+ */
1031
+ "showAdjacentDays": boolean;
947
1032
  /**
948
1033
  * If `true`, a "Clear" button will be rendered alongside the default "Cancel" and "OK" buttons at the bottom of the `ion-datetime` component. Developers can also use the `button` slot if they want to customize these buttons. If custom buttons are set in the `button` slot then the default buttons will not be rendered.
1034
+ * @default false
949
1035
  */
950
1036
  "showClearButton": boolean;
951
1037
  /**
952
1038
  * If `true`, the default "Cancel" and "OK" buttons will be rendered at the bottom of the `ion-datetime` component. Developers can also use the `button` slot if they want to customize these buttons. If custom buttons are set in the `button` slot then the default buttons will not be rendered.
1039
+ * @default false
953
1040
  */
954
1041
  "showDefaultButtons": boolean;
955
1042
  /**
956
1043
  * If `true`, the default "Time" label will be rendered for the time selector of the `ion-datetime` component. Developers can also use the `time-label` slot if they want to customize this label. If a custom label is set in the `time-label` slot then the default label will not be rendered.
1044
+ * @default true
957
1045
  */
958
1046
  "showDefaultTimeLabel": boolean;
959
1047
  /**
960
1048
  * If `true`, a header will be shown above the calendar picker. This will include both the slotted title, and the selected date.
1049
+ * @default false
961
1050
  */
962
1051
  "showDefaultTitle": boolean;
963
1052
  /**
964
1053
  * If `cover`, the `ion-datetime` will expand to cover the full width of its container. If `fixed`, the `ion-datetime` will have a fixed width.
1054
+ * @default 'fixed'
965
1055
  */
966
1056
  "size": 'cover' | 'fixed';
967
1057
  /**
@@ -980,6 +1070,7 @@ export namespace Components {
980
1070
  interface IonDatetimeButton {
981
1071
  /**
982
1072
  * 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).
1073
+ * @default 'primary'
983
1074
  */
984
1075
  "color"?: Color;
985
1076
  /**
@@ -988,6 +1079,7 @@ export namespace Components {
988
1079
  "datetime"?: string;
989
1080
  /**
990
1081
  * If `true`, the user cannot interact with the button.
1082
+ * @default false
991
1083
  */
992
1084
  "disabled": boolean;
993
1085
  /**
@@ -998,6 +1090,7 @@ export namespace Components {
998
1090
  interface IonFab {
999
1091
  /**
1000
1092
  * If `true`, both the `ion-fab-button` and all `ion-fab-list` inside `ion-fab` will become active. That means `ion-fab-button` will become a `close` icon and `ion-fab-list` will become visible.
1093
+ * @default false
1001
1094
  */
1002
1095
  "activated": boolean;
1003
1096
  /**
@@ -1006,6 +1099,7 @@ export namespace Components {
1006
1099
  "close": () => Promise<void>;
1007
1100
  /**
1008
1101
  * If `true`, the fab will display on the edge of the header if `vertical` is `"top"`, and on the edge of the footer if it is `"bottom"`. Should be used with a `fixed` slot.
1102
+ * @default false
1009
1103
  */
1010
1104
  "edge": boolean;
1011
1105
  /**
@@ -1024,10 +1118,12 @@ export namespace Components {
1024
1118
  interface IonFabButton {
1025
1119
  /**
1026
1120
  * If `true`, the fab button will be show a close icon.
1121
+ * @default false
1027
1122
  */
1028
1123
  "activated": boolean;
1029
1124
  /**
1030
1125
  * 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.
1126
+ * @default close
1031
1127
  */
1032
1128
  "closeIcon": string;
1033
1129
  /**
@@ -1036,6 +1132,7 @@ export namespace Components {
1036
1132
  "color"?: Color;
1037
1133
  /**
1038
1134
  * If `true`, the user cannot interact with the fab button.
1135
+ * @default false
1039
1136
  */
1040
1137
  "disabled": boolean;
1041
1138
  /**
@@ -1060,10 +1157,12 @@ export namespace Components {
1060
1157
  "routerAnimation": AnimationBuilder | undefined;
1061
1158
  /**
1062
1159
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
1160
+ * @default 'forward'
1063
1161
  */
1064
1162
  "routerDirection": RouterDirection;
1065
1163
  /**
1066
1164
  * If `true`, the fab button will show when in a fab-list.
1165
+ * @default false
1067
1166
  */
1068
1167
  "show": boolean;
1069
1168
  /**
@@ -1076,20 +1175,24 @@ export namespace Components {
1076
1175
  "target": string | undefined;
1077
1176
  /**
1078
1177
  * 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).
1178
+ * @default false
1079
1179
  */
1080
1180
  "translucent": boolean;
1081
1181
  /**
1082
1182
  * The type of the button.
1183
+ * @default 'button'
1083
1184
  */
1084
1185
  "type": 'submit' | 'reset' | 'button';
1085
1186
  }
1086
1187
  interface IonFabList {
1087
1188
  /**
1088
1189
  * If `true`, the fab list will show all fab buttons in the list.
1190
+ * @default false
1089
1191
  */
1090
1192
  "activated": boolean;
1091
1193
  /**
1092
1194
  * The side the fab list will show on relative to the main fab button.
1195
+ * @default 'bottom'
1093
1196
  */
1094
1197
  "side": 'start' | 'end' | 'top' | 'bottom';
1095
1198
  }
@@ -1104,12 +1207,14 @@ export namespace Components {
1104
1207
  "mode"?: "ios" | "md";
1105
1208
  /**
1106
1209
  * 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.
1210
+ * @default false
1107
1211
  */
1108
1212
  "translucent": boolean;
1109
1213
  }
1110
1214
  interface IonGrid {
1111
1215
  /**
1112
1216
  * If `true`, the grid will have a fixed width based on the screen size.
1217
+ * @default false
1113
1218
  */
1114
1219
  "fixed": boolean;
1115
1220
  }
@@ -1124,6 +1229,7 @@ export namespace Components {
1124
1229
  "mode"?: "ios" | "md";
1125
1230
  /**
1126
1231
  * 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.
1232
+ * @default false
1127
1233
  */
1128
1234
  "translucent": boolean;
1129
1235
  }
@@ -1144,14 +1250,17 @@ export namespace Components {
1144
1250
  "complete": () => Promise<void>;
1145
1251
  /**
1146
1252
  * If `true`, the infinite scroll will be hidden and scroll event listeners will be removed. Set this to true to disable the infinite scroll from actively trying to receive new data while scrolling. This is useful when it is known that there is no more data that can be added, and the infinite scroll is no longer needed.
1253
+ * @default false
1147
1254
  */
1148
1255
  "disabled": boolean;
1149
1256
  /**
1150
1257
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
1258
+ * @default 'bottom'
1151
1259
  */
1152
1260
  "position": 'top' | 'bottom';
1153
1261
  /**
1154
1262
  * 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.
1263
+ * @default '15%'
1155
1264
  */
1156
1265
  "threshold": string;
1157
1266
  }
@@ -1168,22 +1277,27 @@ export namespace Components {
1168
1277
  interface IonInput {
1169
1278
  /**
1170
1279
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
1280
+ * @default 'off'
1171
1281
  */
1172
1282
  "autocapitalize": string;
1173
1283
  /**
1174
1284
  * Indicates whether the value of the control can be automatically completed by the browser.
1285
+ * @default 'off'
1175
1286
  */
1176
1287
  "autocomplete": AutocompleteTypes;
1177
1288
  /**
1178
1289
  * Whether auto correction should be enabled when the user is entering/editing the text value.
1290
+ * @default 'off'
1179
1291
  */
1180
1292
  "autocorrect": 'on' | 'off';
1181
1293
  /**
1182
1294
  * Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element. This may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.
1295
+ * @default false
1183
1296
  */
1184
1297
  "autofocus": boolean;
1185
1298
  /**
1186
1299
  * If `true`, a clear icon will appear in the input when there is a value. Clicking it clears the input.
1300
+ * @default false
1187
1301
  */
1188
1302
  "clearInput": boolean;
1189
1303
  /**
@@ -1200,6 +1314,7 @@ export namespace Components {
1200
1314
  "color"?: Color;
1201
1315
  /**
1202
1316
  * If `true`, a character counter will display the ratio of characters used and the total character limit. Developers must also set the `maxlength` property for the counter to be calculated correctly.
1317
+ * @default false
1203
1318
  */
1204
1319
  "counter": boolean;
1205
1320
  /**
@@ -1212,6 +1327,7 @@ export namespace Components {
1212
1327
  "debounce"?: number;
1213
1328
  /**
1214
1329
  * If `true`, the user cannot interact with the input.
1330
+ * @default false
1215
1331
  */
1216
1332
  "disabled": boolean;
1217
1333
  /**
@@ -1244,6 +1360,7 @@ export namespace Components {
1244
1360
  "label"?: string;
1245
1361
  /**
1246
1362
  * 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 ("...").
1363
+ * @default 'start'
1247
1364
  */
1248
1365
  "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
1249
1366
  /**
@@ -1272,6 +1389,7 @@ export namespace Components {
1272
1389
  "multiple"?: boolean;
1273
1390
  /**
1274
1391
  * The name of the control, which is submitted with the form data.
1392
+ * @default this.inputId
1275
1393
  */
1276
1394
  "name": string;
1277
1395
  /**
@@ -1284,10 +1402,12 @@ export namespace Components {
1284
1402
  "placeholder"?: string;
1285
1403
  /**
1286
1404
  * If `true`, the user cannot modify the value.
1405
+ * @default false
1287
1406
  */
1288
1407
  "readonly": boolean;
1289
1408
  /**
1290
1409
  * If `true`, the user must fill in a value before submitting a form.
1410
+ * @default false
1291
1411
  */
1292
1412
  "required": boolean;
1293
1413
  /**
@@ -1300,6 +1420,7 @@ export namespace Components {
1300
1420
  "shape"?: 'round';
1301
1421
  /**
1302
1422
  * If `true`, the element will have its spelling and grammar checked.
1423
+ * @default false
1303
1424
  */
1304
1425
  "spellcheck": boolean;
1305
1426
  /**
@@ -1308,10 +1429,80 @@ export namespace Components {
1308
1429
  "step"?: string;
1309
1430
  /**
1310
1431
  * The type of control to display. The default type is text.
1432
+ * @default 'text'
1311
1433
  */
1312
1434
  "type": TextFieldTypes;
1313
1435
  /**
1314
1436
  * The value of the input.
1437
+ * @default ''
1438
+ */
1439
+ "value"?: string | number | null;
1440
+ }
1441
+ interface IonInputOtp {
1442
+ /**
1443
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
1444
+ * @default 'off'
1445
+ */
1446
+ "autocapitalize": string;
1447
+ /**
1448
+ * 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).
1449
+ */
1450
+ "color"?: Color;
1451
+ /**
1452
+ * If `true`, the user cannot interact with the input.
1453
+ * @default false
1454
+ */
1455
+ "disabled": boolean;
1456
+ /**
1457
+ * The fill for the input boxes. If `"solid"` the input boxes will have a background. If `"outline"` the input boxes will be transparent with a border.
1458
+ * @default 'outline'
1459
+ */
1460
+ "fill"?: 'outline' | 'solid';
1461
+ /**
1462
+ * A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`. For numbers (type="number"): "numeric" For text (type="text"): "text"
1463
+ */
1464
+ "inputmode"?: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
1465
+ /**
1466
+ * The number of input boxes to display.
1467
+ * @default 4
1468
+ */
1469
+ "length": number;
1470
+ /**
1471
+ * A regex pattern string for allowed characters. Defaults based on type. For numbers (`type="number"`): `"[\p{N}]"` For text (`type="text"`): `"[\p{L}\p{N}]"`
1472
+ */
1473
+ "pattern"?: string;
1474
+ /**
1475
+ * If `true`, the user cannot modify the value.
1476
+ * @default false
1477
+ */
1478
+ "readonly": boolean;
1479
+ /**
1480
+ * Where separators should be shown between input boxes. Can be a comma-separated string or an array of numbers. For example: `"3"` will show a separator after the 3rd input box. `[1,4]` will show a separator after the 1st and 4th input boxes. `"all"` will show a separator between every input box.
1481
+ */
1482
+ "separators"?: 'all' | string | number[];
1483
+ /**
1484
+ * Sets focus to an input box.
1485
+ * @param index - The index of the input box to focus (0-based). If provided and the input box has a value, the input box at that index will be focused. Otherwise, the first empty input box or the last input if all are filled will be focused.
1486
+ */
1487
+ "setFocus": (index?: number) => Promise<void>;
1488
+ /**
1489
+ * The shape of the input boxes. If "round" they will have an increased border radius. If "rectangular" they will have no border radius. If "soft" they will have a soft border radius.
1490
+ * @default 'round'
1491
+ */
1492
+ "shape": 'round' | 'rectangular' | 'soft';
1493
+ /**
1494
+ * The size of the input boxes.
1495
+ * @default 'medium'
1496
+ */
1497
+ "size": 'small' | 'medium' | 'large';
1498
+ /**
1499
+ * The type of input allowed in the input boxes.
1500
+ * @default 'number'
1501
+ */
1502
+ "type": 'text' | 'number';
1503
+ /**
1504
+ * The value of the input group.
1505
+ * @default ''
1315
1506
  */
1316
1507
  "value"?: string | number | null;
1317
1508
  }
@@ -1332,11 +1523,15 @@ export namespace Components {
1332
1523
  * The icon that can be used to represent showing a password. If not set, the "eye" Ionicon will be used.
1333
1524
  */
1334
1525
  "showIcon"?: string;
1526
+ /**
1527
+ * @default 'password'
1528
+ */
1335
1529
  "type": TextFieldTypes;
1336
1530
  }
1337
1531
  interface IonItem {
1338
1532
  /**
1339
1533
  * If `true`, a button tag will be rendered and the item will be tappable.
1534
+ * @default false
1340
1535
  */
1341
1536
  "button": boolean;
1342
1537
  /**
@@ -1349,10 +1544,12 @@ export namespace Components {
1349
1544
  "detail"?: boolean;
1350
1545
  /**
1351
1546
  * The icon to use when `detail` is set to `true`.
1547
+ * @default chevronForward
1352
1548
  */
1353
1549
  "detailIcon": string;
1354
1550
  /**
1355
1551
  * If `true`, the user cannot interact with the item.
1552
+ * @default false
1356
1553
  */
1357
1554
  "disabled": boolean;
1358
1555
  /**
@@ -1381,6 +1578,7 @@ export namespace Components {
1381
1578
  "routerAnimation": AnimationBuilder | undefined;
1382
1579
  /**
1383
1580
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
1581
+ * @default 'forward'
1384
1582
  */
1385
1583
  "routerDirection": RouterDirection;
1386
1584
  /**
@@ -1389,6 +1587,7 @@ export namespace Components {
1389
1587
  "target": string | undefined;
1390
1588
  /**
1391
1589
  * The type of the button. Only used when an `onclick` or `button` property is present.
1590
+ * @default 'button'
1392
1591
  */
1393
1592
  "type": 'submit' | 'reset' | 'button';
1394
1593
  }
@@ -1403,6 +1602,7 @@ export namespace Components {
1403
1602
  "mode"?: "ios" | "md";
1404
1603
  /**
1405
1604
  * When it's set to `true`, the item-divider will stay visible when it reaches the top of the viewport until the next `ion-item-divider` replaces it. This feature relies in `position:sticky`: https://caniuse.com/#feat=css-sticky
1605
+ * @default false
1406
1606
  */
1407
1607
  "sticky": boolean;
1408
1608
  }
@@ -1415,6 +1615,7 @@ export namespace Components {
1415
1615
  "color"?: Color;
1416
1616
  /**
1417
1617
  * If `true`, the user cannot interact with the item option.
1618
+ * @default false
1418
1619
  */
1419
1620
  "disabled": boolean;
1420
1621
  /**
@@ -1423,6 +1624,7 @@ export namespace Components {
1423
1624
  "download": string | undefined;
1424
1625
  /**
1425
1626
  * If `true`, the option will expand to take up the available width and cover any other options.
1627
+ * @default false
1426
1628
  */
1427
1629
  "expandable": boolean;
1428
1630
  /**
@@ -1443,6 +1645,7 @@ export namespace Components {
1443
1645
  "target": string | undefined;
1444
1646
  /**
1445
1647
  * The type of the button.
1648
+ * @default 'button'
1446
1649
  */
1447
1650
  "type": 'submit' | 'reset' | 'button';
1448
1651
  }
@@ -1450,6 +1653,7 @@ export namespace Components {
1450
1653
  "fireSwipeEvent": () => Promise<void>;
1451
1654
  /**
1452
1655
  * 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.
1656
+ * @default 'end'
1453
1657
  */
1454
1658
  "side": Side;
1455
1659
  }
@@ -1464,6 +1668,7 @@ export namespace Components {
1464
1668
  "closeOpened": () => Promise<boolean>;
1465
1669
  /**
1466
1670
  * If `true`, the user cannot interact with the sliding item.
1671
+ * @default false
1467
1672
  */
1468
1673
  "disabled": boolean;
1469
1674
  /**
@@ -1501,6 +1706,7 @@ export namespace Components {
1501
1706
  "closeSlidingItems": () => Promise<boolean>;
1502
1707
  /**
1503
1708
  * If `true`, the list will have margin around it and rounded corners.
1709
+ * @default false
1504
1710
  */
1505
1711
  "inset": boolean;
1506
1712
  /**
@@ -1529,10 +1735,12 @@ export namespace Components {
1529
1735
  interface IonLoading {
1530
1736
  /**
1531
1737
  * If `true`, the loading indicator will animate.
1738
+ * @default true
1532
1739
  */
1533
1740
  "animated": boolean;
1534
1741
  /**
1535
1742
  * If `true`, the loading indicator will be dismissed when the backdrop is clicked.
1743
+ * @default false
1536
1744
  */
1537
1745
  "backdropDismiss": boolean;
1538
1746
  /**
@@ -1548,12 +1756,16 @@ export namespace Components {
1548
1756
  "dismiss": (data?: any, role?: string) => Promise<boolean>;
1549
1757
  /**
1550
1758
  * Number of milliseconds to wait before dismissing the loading indicator.
1759
+ * @default 0
1551
1760
  */
1552
1761
  "duration": number;
1553
1762
  /**
1554
1763
  * Animation to use when the loading indicator is presented.
1555
1764
  */
1556
1765
  "enterAnimation"?: AnimationBuilder;
1766
+ /**
1767
+ * @default false
1768
+ */
1557
1769
  "hasController": boolean;
1558
1770
  /**
1559
1771
  * Additional attributes to pass to the loader.
@@ -1561,10 +1773,12 @@ export namespace Components {
1561
1773
  "htmlAttributes"?: { [key: string]: any };
1562
1774
  /**
1563
1775
  * If `true`, the loading indicator will open. If `false`, the loading indicator will close. Use this if you need finer grained control over presentation, otherwise just use the loadingController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the loading indicator dismisses. You will need to do that in your code.
1776
+ * @default false
1564
1777
  */
1565
1778
  "isOpen": boolean;
1566
1779
  /**
1567
1780
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
1781
+ * @default true
1568
1782
  */
1569
1783
  "keyboardClose": boolean;
1570
1784
  /**
@@ -1594,6 +1808,7 @@ export namespace Components {
1594
1808
  "present": () => Promise<void>;
1595
1809
  /**
1596
1810
  * If `true`, a backdrop will be displayed behind the loading indicator.
1811
+ * @default true
1597
1812
  */
1598
1813
  "showBackdrop": boolean;
1599
1814
  /**
@@ -1602,6 +1817,7 @@ export namespace Components {
1602
1817
  "spinner"?: SpinnerTypes | null;
1603
1818
  /**
1604
1819
  * 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).
1820
+ * @default false
1605
1821
  */
1606
1822
  "translucent": boolean;
1607
1823
  /**
@@ -1620,6 +1836,7 @@ export namespace Components {
1620
1836
  "contentId"?: string;
1621
1837
  /**
1622
1838
  * If `true`, the menu is disabled.
1839
+ * @default false
1623
1840
  */
1624
1841
  "disabled": boolean;
1625
1842
  /**
@@ -1632,6 +1849,7 @@ export namespace Components {
1632
1849
  "isOpen": () => Promise<boolean>;
1633
1850
  /**
1634
1851
  * The edge threshold for dragging the menu open. If a drag/swipe happens over this value, the menu is not triggered.
1852
+ * @default 50
1635
1853
  */
1636
1854
  "maxEdgeStart": number;
1637
1855
  /**
@@ -1648,10 +1866,12 @@ export namespace Components {
1648
1866
  "setOpen": (shouldOpen: boolean, animated?: boolean, role?: string) => Promise<boolean>;
1649
1867
  /**
1650
1868
  * Which side of the view the menu should be placed.
1869
+ * @default 'start'
1651
1870
  */
1652
1871
  "side": Side;
1653
1872
  /**
1654
1873
  * If `true`, swiping the menu is enabled.
1874
+ * @default true
1655
1875
  */
1656
1876
  "swipeGesture": boolean;
1657
1877
  /**
@@ -1666,6 +1886,7 @@ export namespace Components {
1666
1886
  interface IonMenuButton {
1667
1887
  /**
1668
1888
  * Automatically hides the menu button when the corresponding menu is not active
1889
+ * @default true
1669
1890
  */
1670
1891
  "autoHide": boolean;
1671
1892
  /**
@@ -1674,6 +1895,7 @@ export namespace Components {
1674
1895
  "color"?: Color;
1675
1896
  /**
1676
1897
  * If `true`, the user cannot interact with the menu button.
1898
+ * @default false
1677
1899
  */
1678
1900
  "disabled": boolean;
1679
1901
  /**
@@ -1686,12 +1908,14 @@ export namespace Components {
1686
1908
  "mode"?: "ios" | "md";
1687
1909
  /**
1688
1910
  * The type of the button.
1911
+ * @default 'button'
1689
1912
  */
1690
1913
  "type": 'submit' | 'reset' | 'button';
1691
1914
  }
1692
1915
  interface IonMenuToggle {
1693
1916
  /**
1694
1917
  * Automatically hides the content when the corresponding menu is not active. By default, it's `true`. Change it to `false` in order to keep `ion-menu-toggle` always visible regardless the state of the menu.
1918
+ * @default true
1695
1919
  */
1696
1920
  "autoHide": boolean;
1697
1921
  /**
@@ -1702,14 +1926,17 @@ export namespace Components {
1702
1926
  interface IonModal {
1703
1927
  /**
1704
1928
  * If `true`, the modal will animate.
1929
+ * @default true
1705
1930
  */
1706
1931
  "animated": boolean;
1707
1932
  /**
1708
1933
  * A decimal value between 0 and 1 that indicates the point after which the backdrop will begin to fade in when using a sheet modal. Prior to this point, the backdrop will be hidden and the content underneath the sheet can be interacted with. This value is exclusive meaning the backdrop will become active after the value specified.
1934
+ * @default 0
1709
1935
  */
1710
1936
  "backdropBreakpoint": number;
1711
1937
  /**
1712
1938
  * If `true`, the modal will be dismissed when the backdrop is clicked.
1939
+ * @default true
1713
1940
  */
1714
1941
  "backdropDismiss": boolean;
1715
1942
  /**
@@ -1718,6 +1945,7 @@ export namespace Components {
1718
1945
  "breakpoints"?: number[];
1719
1946
  /**
1720
1947
  * Determines whether or not a modal can dismiss when calling the `dismiss` method. If the value is `true` or the value's function returns `true`, the modal will close when trying to dismiss. If the value is `false` or the value's function returns `false`, the modal will not close when trying to dismiss. See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
1948
+ * @default true
1721
1949
  */
1722
1950
  "canDismiss": boolean | ((data?: any, role?: string) => Promise<boolean>);
1723
1951
  /**
@@ -1745,10 +1973,12 @@ export namespace Components {
1745
1973
  "enterAnimation"?: AnimationBuilder;
1746
1974
  /**
1747
1975
  * Controls whether scrolling or dragging within the sheet modal expands it to a larger breakpoint. This only takes effect when `breakpoints` and `initialBreakpoint` are set. If `true`, scrolling or dragging anywhere in the modal will first expand it to the next breakpoint. Once fully expanded, scrolling will affect the content. If `false`, scrolling will always affect the content. The modal will only expand when dragging the header or handle. The modal will close when dragging the header or handle. It can also be closed when dragging the content, but only if the content is scrolled to the top.
1976
+ * @default true
1748
1977
  */
1749
1978
  "expandToScroll": boolean;
1750
1979
  /**
1751
1980
  * If `true`, focus will not be allowed to move outside of this overlay. If `false`, focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
1981
+ * @default true
1752
1982
  */
1753
1983
  "focusTrap": boolean;
1754
1984
  /**
@@ -1761,8 +1991,12 @@ export namespace Components {
1761
1991
  "handle"?: boolean;
1762
1992
  /**
1763
1993
  * The interaction behavior for the sheet modal when the handle is pressed. Defaults to `"none"`, which means the modal will not change size or position when the handle is pressed. Set to `"cycle"` to let the modal cycle between available breakpoints when pressed. Handle behavior is unavailable when the `handle` property is set to `false` or when the `breakpoints` property is not set (using a fullscreen or card modal).
1994
+ * @default 'none'
1764
1995
  */
1765
1996
  "handleBehavior"?: ModalHandleBehavior;
1997
+ /**
1998
+ * @default false
1999
+ */
1766
2000
  "hasController": boolean;
1767
2001
  /**
1768
2002
  * Additional attributes to pass to the modal.
@@ -1774,14 +2008,17 @@ export namespace Components {
1774
2008
  "initialBreakpoint"?: number;
1775
2009
  /**
1776
2010
  * If `true`, the modal will open. If `false`, the modal will close. Use this if you need finer grained control over presentation, otherwise just use the modalController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the modal dismisses. You will need to do that in your code.
2011
+ * @default false
1777
2012
  */
1778
2013
  "isOpen": boolean;
1779
2014
  /**
1780
2015
  * If `true`, the component passed into `ion-modal` will automatically be mounted when the modal is created. The component will remain mounted even when the modal is dismissed. However, the component will be destroyed when the modal is destroyed. This property is not reactive and should only be used when initially creating a modal. Note: This feature only applies to inline modals in JavaScript frameworks such as Angular, React, and Vue.
2016
+ * @default false
1781
2017
  */
1782
2018
  "keepContentsMounted": boolean;
1783
2019
  /**
1784
2020
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
2021
+ * @default true
1785
2022
  */
1786
2023
  "keyboardClose": boolean;
1787
2024
  /**
@@ -1815,6 +2052,7 @@ export namespace Components {
1815
2052
  "setCurrentBreakpoint": (breakpoint: number) => Promise<void>;
1816
2053
  /**
1817
2054
  * 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.
2055
+ * @default true
1818
2056
  */
1819
2057
  "showBackdrop": boolean;
1820
2058
  /**
@@ -1825,6 +2063,7 @@ export namespace Components {
1825
2063
  interface IonNav {
1826
2064
  /**
1827
2065
  * If `true`, the nav should animate the transition of components.
2066
+ * @default true
1828
2067
  */
1829
2068
  "animated": boolean;
1830
2069
  /**
@@ -1963,6 +2202,7 @@ export namespace Components {
1963
2202
  "routerAnimation"?: AnimationBuilder;
1964
2203
  /**
1965
2204
  * The transition direction when navigating to another page.
2205
+ * @default 'forward'
1966
2206
  */
1967
2207
  "routerDirection": RouterDirection;
1968
2208
  }
@@ -1986,10 +2226,12 @@ export namespace Components {
1986
2226
  interface IonPickerColumn {
1987
2227
  /**
1988
2228
  * 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).
2229
+ * @default 'primary'
1989
2230
  */
1990
2231
  "color"?: Color;
1991
2232
  /**
1992
2233
  * If `true`, the user cannot interact with the picker.
2234
+ * @default false
1993
2235
  */
1994
2236
  "disabled": boolean;
1995
2237
  /**
@@ -1998,6 +2240,7 @@ export namespace Components {
1998
2240
  "mode"?: "ios" | "md";
1999
2241
  /**
2000
2242
  * If `true`, tapping the picker will reveal a number input keyboard that lets the user type in values for each picker column. This is useful when working with time pickers.
2243
+ * @default false
2001
2244
  */
2002
2245
  "numericInput": boolean;
2003
2246
  "scrollActiveItemIntoView": (smooth?: boolean) => Promise<void>;
@@ -2017,10 +2260,12 @@ export namespace Components {
2017
2260
  interface IonPickerColumnOption {
2018
2261
  /**
2019
2262
  * 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).
2263
+ * @default 'primary'
2020
2264
  */
2021
2265
  "color"?: Color;
2022
2266
  /**
2023
2267
  * If `true`, the user cannot interact with the picker column option.
2268
+ * @default false
2024
2269
  */
2025
2270
  "disabled": boolean;
2026
2271
  /**
@@ -2031,18 +2276,22 @@ export namespace Components {
2031
2276
  interface IonPickerLegacy {
2032
2277
  /**
2033
2278
  * If `true`, the picker will animate.
2279
+ * @default true
2034
2280
  */
2035
2281
  "animated": boolean;
2036
2282
  /**
2037
2283
  * If `true`, the picker will be dismissed when the backdrop is clicked.
2284
+ * @default true
2038
2285
  */
2039
2286
  "backdropDismiss": boolean;
2040
2287
  /**
2041
2288
  * Array of buttons to be displayed at the top of the picker.
2289
+ * @default []
2042
2290
  */
2043
2291
  "buttons": PickerButton[];
2044
2292
  /**
2045
2293
  * Array of columns to be displayed in the picker.
2294
+ * @default []
2046
2295
  */
2047
2296
  "columns": PickerColumn[];
2048
2297
  /**
@@ -2058,6 +2307,7 @@ export namespace Components {
2058
2307
  "dismiss": (data?: any, role?: string) => Promise<boolean>;
2059
2308
  /**
2060
2309
  * Number of milliseconds to wait before dismissing the picker.
2310
+ * @default 0
2061
2311
  */
2062
2312
  "duration": number;
2063
2313
  /**
@@ -2069,6 +2319,9 @@ export namespace Components {
2069
2319
  * @param name The name of the column.
2070
2320
  */
2071
2321
  "getColumn": (name: string) => Promise<PickerColumn | undefined>;
2322
+ /**
2323
+ * @default false
2324
+ */
2072
2325
  "hasController": boolean;
2073
2326
  /**
2074
2327
  * Additional attributes to pass to the picker.
@@ -2076,10 +2329,12 @@ export namespace Components {
2076
2329
  "htmlAttributes"?: { [key: string]: any };
2077
2330
  /**
2078
2331
  * If `true`, the picker will open. If `false`, the picker will close. Use this if you need finer grained control over presentation, otherwise just use the pickerController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the picker dismisses. You will need to do that in your code.
2332
+ * @default false
2079
2333
  */
2080
2334
  "isOpen": boolean;
2081
2335
  /**
2082
2336
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
2337
+ * @default true
2083
2338
  */
2084
2339
  "keyboardClose": boolean;
2085
2340
  /**
@@ -2105,6 +2360,7 @@ export namespace Components {
2105
2360
  "present": () => Promise<void>;
2106
2361
  /**
2107
2362
  * If `true`, a backdrop will be displayed behind the picker.
2363
+ * @default true
2108
2364
  */
2109
2365
  "showBackdrop": boolean;
2110
2366
  /**
@@ -2125,14 +2381,17 @@ export namespace Components {
2125
2381
  "alignment"?: PositionAlign;
2126
2382
  /**
2127
2383
  * If `true`, the popover will animate.
2384
+ * @default true
2128
2385
  */
2129
2386
  "animated": boolean;
2130
2387
  /**
2131
2388
  * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
2389
+ * @default true
2132
2390
  */
2133
2391
  "arrow": boolean;
2134
2392
  /**
2135
2393
  * If `true`, the popover will be dismissed when the backdrop is clicked.
2394
+ * @default true
2136
2395
  */
2137
2396
  "backdropDismiss": boolean;
2138
2397
  /**
@@ -2157,6 +2416,7 @@ export namespace Components {
2157
2416
  "dismiss": (data?: any, role?: string, dismissParentPopover?: boolean) => Promise<boolean>;
2158
2417
  /**
2159
2418
  * If `true`, the popover will be automatically dismissed when the content has been clicked.
2419
+ * @default false
2160
2420
  */
2161
2421
  "dismissOnSelect": boolean;
2162
2422
  /**
@@ -2169,9 +2429,13 @@ export namespace Components {
2169
2429
  "event": any;
2170
2430
  /**
2171
2431
  * If `true`, focus will not be allowed to move outside of this overlay. If `false`, focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
2432
+ * @default true
2172
2433
  */
2173
2434
  "focusTrap": boolean;
2174
2435
  "getParentPopover": () => Promise<HTMLIonPopoverElement | null>;
2436
+ /**
2437
+ * @default false
2438
+ */
2175
2439
  "hasController": boolean;
2176
2440
  /**
2177
2441
  * Additional attributes to pass to the popover.
@@ -2179,16 +2443,22 @@ export namespace Components {
2179
2443
  "htmlAttributes"?: { [key: string]: any };
2180
2444
  /**
2181
2445
  * If `true`, the popover will open. If `false`, the popover will close. Use this if you need finer grained control over presentation, otherwise just use the popoverController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the popover dismisses. You will need to do that in your code.
2446
+ * @default false
2182
2447
  */
2183
2448
  "isOpen": boolean;
2184
2449
  /**
2185
2450
  * If `true`, the component passed into `ion-popover` will automatically be mounted when the popover is created. The component will remain mounted even when the popover is dismissed. However, the component will be destroyed when the popover is destroyed. This property is not reactive and should only be used when initially creating a popover. Note: This feature only applies to inline popovers in JavaScript frameworks such as Angular, React, and Vue.
2451
+ * @default false
2186
2452
  */
2187
2453
  "keepContentsMounted": boolean;
2188
2454
  /**
2189
2455
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
2456
+ * @default true
2190
2457
  */
2191
2458
  "keyboardClose": boolean;
2459
+ /**
2460
+ * @default false
2461
+ */
2192
2462
  "keyboardEvents": boolean;
2193
2463
  /**
2194
2464
  * Animation to use when the popover is dismissed.
@@ -2217,22 +2487,27 @@ export namespace Components {
2217
2487
  "presentFromTrigger": (event?: any, focusDescendant?: boolean) => Promise<void>;
2218
2488
  /**
2219
2489
  * Describes what to position the popover relative to. If `"trigger"`, the popover will be positioned relative to the trigger button. If passing in an event, this is determined via event.target. If `"event"`, the popover will be positioned relative to the x/y coordinates of the trigger action. If passing in an event, this is determined via event.clientX and event.clientY.
2490
+ * @default 'trigger'
2220
2491
  */
2221
2492
  "reference": PositionReference;
2222
2493
  /**
2223
2494
  * If `true`, a backdrop will be displayed behind the popover. This property controls whether or not the backdrop darkens the screen when the popover is presented. It does not control whether or not the backdrop is active or present in the DOM.
2495
+ * @default true
2224
2496
  */
2225
2497
  "showBackdrop": boolean;
2226
2498
  /**
2227
2499
  * Describes which side of the `reference` point to position the popover on. The `"start"` and `"end"` values are RTL-aware, and the `"left"` and `"right"` values are not.
2500
+ * @default 'bottom'
2228
2501
  */
2229
2502
  "side": PositionSide;
2230
2503
  /**
2231
2504
  * Describes how to calculate the popover width. If `"cover"`, the popover width will match the width of the trigger. If `"auto"`, the popover width will be set to a static default value.
2505
+ * @default 'auto'
2232
2506
  */
2233
2507
  "size": PopoverSize;
2234
2508
  /**
2235
2509
  * 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).
2510
+ * @default false
2236
2511
  */
2237
2512
  "translucent": boolean;
2238
2513
  /**
@@ -2241,12 +2516,14 @@ export namespace Components {
2241
2516
  "trigger": string | undefined;
2242
2517
  /**
2243
2518
  * Describes what kind of interaction with the trigger that should cause the popover to open. Does not apply when the `trigger` property is `undefined`. If `"click"`, the popover will be presented when the trigger is left clicked. If `"hover"`, the popover will be presented when a pointer hovers over the trigger. If `"context-menu"`, the popover will be presented when the trigger is right clicked on desktop and long pressed on mobile. This will also prevent your device's normal context menu from appearing.
2519
+ * @default 'click'
2244
2520
  */
2245
2521
  "triggerAction": TriggerAction;
2246
2522
  }
2247
2523
  interface IonProgressBar {
2248
2524
  /**
2249
2525
  * If the buffer and value are smaller than 1, the buffer circles will show. The buffer should be between [0, 1].
2526
+ * @default 1
2250
2527
  */
2251
2528
  "buffer": number;
2252
2529
  /**
@@ -2259,14 +2536,17 @@ export namespace Components {
2259
2536
  "mode"?: "ios" | "md";
2260
2537
  /**
2261
2538
  * If true, reverse the progress bar direction.
2539
+ * @default false
2262
2540
  */
2263
2541
  "reversed": boolean;
2264
2542
  /**
2265
2543
  * 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).
2544
+ * @default 'determinate'
2266
2545
  */
2267
2546
  "type": 'determinate' | 'indeterminate';
2268
2547
  /**
2269
2548
  * The value determines how much of the active bar should display when the `type` is `"determinate"`. The value should be between [0, 1].
2549
+ * @default 0
2270
2550
  */
2271
2551
  "value": number;
2272
2552
  }
@@ -2281,6 +2561,7 @@ export namespace Components {
2281
2561
  "color"?: Color;
2282
2562
  /**
2283
2563
  * If `true`, the user cannot interact with the radio.
2564
+ * @default false
2284
2565
  */
2285
2566
  "disabled": boolean;
2286
2567
  /**
@@ -2289,6 +2570,7 @@ export namespace Components {
2289
2570
  "justify"?: 'start' | 'end' | 'space-between';
2290
2571
  /**
2291
2572
  * Where to place the label relative to the radio. `"start"`: The label will appear to the left of the radio in LTR and to the right in RTL. `"end"`: The label will appear to the right of the radio in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
2573
+ * @default 'start'
2292
2574
  */
2293
2575
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2294
2576
  /**
@@ -2297,6 +2579,7 @@ export namespace Components {
2297
2579
  "mode"?: "ios" | "md";
2298
2580
  /**
2299
2581
  * The name of the control, which is submitted with the form data.
2582
+ * @default this.inputId
2300
2583
  */
2301
2584
  "name": string;
2302
2585
  "setButtonTabindex": (value: number) => Promise<void>;
@@ -2309,6 +2592,7 @@ export namespace Components {
2309
2592
  interface IonRadioGroup {
2310
2593
  /**
2311
2594
  * If `true`, the radios can be deselected.
2595
+ * @default false
2312
2596
  */
2313
2597
  "allowEmptySelection": boolean;
2314
2598
  /**
@@ -2325,6 +2609,7 @@ export namespace Components {
2325
2609
  "helperText"?: string;
2326
2610
  /**
2327
2611
  * The name of the control, which is submitted with the form data.
2612
+ * @default this.inputId
2328
2613
  */
2329
2614
  "name": string;
2330
2615
  "setFocus": () => Promise<void>;
@@ -2348,10 +2633,12 @@ export namespace Components {
2348
2633
  "debounce"?: number;
2349
2634
  /**
2350
2635
  * If `true`, the user cannot interact with the range.
2636
+ * @default false
2351
2637
  */
2352
2638
  "disabled": boolean;
2353
2639
  /**
2354
2640
  * Show two knobs.
2641
+ * @default false
2355
2642
  */
2356
2643
  "dualKnobs": boolean;
2357
2644
  /**
@@ -2360,14 +2647,17 @@ export namespace Components {
2360
2647
  "label"?: string;
2361
2648
  /**
2362
2649
  * Where to place the label relative to the range. `"start"`: The label will appear to the left of the range in LTR and to the right in RTL. `"end"`: The label will appear to the right of the range in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the range regardless of the direction.
2650
+ * @default 'start'
2363
2651
  */
2364
2652
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
2365
2653
  /**
2366
2654
  * Maximum integer value of the range.
2655
+ * @default 100
2367
2656
  */
2368
2657
  "max": number;
2369
2658
  /**
2370
2659
  * Minimum integer value of the range.
2660
+ * @default 0
2371
2661
  */
2372
2662
  "min": number;
2373
2663
  /**
@@ -2376,30 +2666,37 @@ export namespace Components {
2376
2666
  "mode"?: "ios" | "md";
2377
2667
  /**
2378
2668
  * The name of the control, which is submitted with the form data.
2669
+ * @default this.rangeId
2379
2670
  */
2380
2671
  "name": string;
2381
2672
  /**
2382
2673
  * If `true`, a pin with integer value is shown when the knob is pressed.
2674
+ * @default false
2383
2675
  */
2384
2676
  "pin": boolean;
2385
2677
  /**
2386
2678
  * A callback used to format the pin text. By default the pin text is set to `Math.round(value)`. See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
2679
+ * @default (value: number): number => Math.round(value)
2387
2680
  */
2388
2681
  "pinFormatter": PinFormatter;
2389
2682
  /**
2390
2683
  * If `true`, the knob snaps to tick marks evenly spaced based on the step property value.
2684
+ * @default false
2391
2685
  */
2392
2686
  "snaps": boolean;
2393
2687
  /**
2394
2688
  * Specifies the value granularity.
2689
+ * @default 1
2395
2690
  */
2396
2691
  "step": number;
2397
2692
  /**
2398
2693
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
2694
+ * @default true
2399
2695
  */
2400
2696
  "ticks": boolean;
2401
2697
  /**
2402
2698
  * the value of the range.
2699
+ * @default 0
2403
2700
  */
2404
2701
  "value": RangeValue;
2405
2702
  }
@@ -2410,6 +2707,7 @@ export namespace Components {
2410
2707
  "cancel": () => Promise<void>;
2411
2708
  /**
2412
2709
  * Time it takes to close the refresher. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2710
+ * @default '280ms'
2413
2711
  */
2414
2712
  "closeDuration": string;
2415
2713
  /**
@@ -2418,6 +2716,7 @@ export namespace Components {
2418
2716
  "complete": () => Promise<void>;
2419
2717
  /**
2420
2718
  * If `true`, the refresher will be hidden.
2719
+ * @default false
2421
2720
  */
2422
2721
  "disabled": boolean;
2423
2722
  /**
@@ -2430,18 +2729,22 @@ export namespace Components {
2430
2729
  "mode"?: "ios" | "md";
2431
2730
  /**
2432
2731
  * How much to multiply the pull speed by. To slow the pull animation down, pass a number less than `1`. To speed up the pull, pass a number greater than `1`. The default value is `1` which is equal to the speed of the cursor. If a negative value is passed in, the factor will be `1` instead. For example: If the value passed is `1.2` and the content is dragged by `10` pixels, instead of `10` pixels the content will be pulled by `12` pixels (an increase of 20 percent). If the value passed is `0.8`, the dragged amount will be `8` pixels, less than the amount the cursor has moved. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2732
+ * @default 1
2433
2733
  */
2434
2734
  "pullFactor": number;
2435
2735
  /**
2436
2736
  * The maximum distance of the pull until the refresher will automatically go into the `refreshing` state. Defaults to the result of `pullMin + 60`. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2737
+ * @default this.pullMin + 60
2437
2738
  */
2438
2739
  "pullMax": number;
2439
2740
  /**
2440
2741
  * The minimum distance the user must pull down until the refresher will go into the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2742
+ * @default 60
2441
2743
  */
2442
2744
  "pullMin": number;
2443
2745
  /**
2444
2746
  * Time it takes the refresher to snap back to the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
2747
+ * @default '280ms'
2445
2748
  */
2446
2749
  "snapbackDuration": string;
2447
2750
  }
@@ -2473,6 +2776,7 @@ export namespace Components {
2473
2776
  "complete": (listOrReorder?: boolean | any[]) => Promise<any>;
2474
2777
  /**
2475
2778
  * If `true`, the reorder will be hidden.
2779
+ * @default true
2476
2780
  */
2477
2781
  "disabled": boolean;
2478
2782
  }
@@ -2485,6 +2789,7 @@ export namespace Components {
2485
2789
  "addRipple": (x: number, y: number) => Promise<() => void>;
2486
2790
  /**
2487
2791
  * 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.
2792
+ * @default 'bounded'
2488
2793
  */
2489
2794
  "type": 'bounded' | 'unbounded';
2490
2795
  }
@@ -2507,6 +2812,7 @@ export namespace Components {
2507
2812
  "componentProps"?: { [key: string]: any };
2508
2813
  /**
2509
2814
  * 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.
2815
+ * @default ''
2510
2816
  */
2511
2817
  "url": string;
2512
2818
  }
@@ -2536,10 +2842,12 @@ export namespace Components {
2536
2842
  "push": (path: string, direction?: RouterDirection, animation?: AnimationBuilder) => Promise<boolean>;
2537
2843
  /**
2538
2844
  * The root path to use when matching URLs. By default, this is set to "/", but you can specify an alternate prefix for all URL paths.
2845
+ * @default '/'
2539
2846
  */
2540
2847
  "root": string;
2541
2848
  /**
2542
2849
  * 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.
2850
+ * @default true
2543
2851
  */
2544
2852
  "useHash": boolean;
2545
2853
  }
@@ -2562,6 +2870,7 @@ export namespace Components {
2562
2870
  "routerAnimation": AnimationBuilder | undefined;
2563
2871
  /**
2564
2872
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
2873
+ * @default 'forward'
2565
2874
  */
2566
2875
  "routerDirection": RouterDirection;
2567
2876
  /**
@@ -2572,6 +2881,7 @@ export namespace Components {
2572
2881
  interface IonRouterOutlet {
2573
2882
  /**
2574
2883
  * If `true`, the router-outlet should animate the transition of components.
2884
+ * @default true
2575
2885
  */
2576
2886
  "animated": boolean;
2577
2887
  /**
@@ -2583,6 +2893,7 @@ export namespace Components {
2583
2893
  "getRouteId": () => Promise<RouteID | undefined>;
2584
2894
  /**
2585
2895
  * The mode determines which platform styles to use.
2896
+ * @default getIonMode(this)
2586
2897
  */
2587
2898
  "mode": "ios" | "md";
2588
2899
  "setRouteId": (id: string, params: ComponentProps | undefined, direction: RouterDirection, animation?: AnimationBuilder) => Promise<RouteWrite>;
@@ -2593,26 +2904,32 @@ export namespace Components {
2593
2904
  interface IonSearchbar {
2594
2905
  /**
2595
2906
  * If `true`, enable searchbar animation.
2907
+ * @default false
2596
2908
  */
2597
2909
  "animated": boolean;
2598
2910
  /**
2599
2911
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
2912
+ * @default 'off'
2600
2913
  */
2601
2914
  "autocapitalize": string;
2602
2915
  /**
2603
2916
  * Set the input's autocomplete property.
2917
+ * @default 'off'
2604
2918
  */
2605
2919
  "autocomplete": AutocompleteTypes;
2606
2920
  /**
2607
2921
  * Set the input's autocorrect property.
2922
+ * @default 'off'
2608
2923
  */
2609
2924
  "autocorrect": 'on' | 'off';
2610
2925
  /**
2611
2926
  * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
2927
+ * @default config.get('backButtonIcon', arrowBackSharp) as string
2612
2928
  */
2613
2929
  "cancelButtonIcon": string;
2614
2930
  /**
2615
- * Set the the cancel button text. Only applies to `ios` mode.
2931
+ * Set the cancel button text. Only applies to `ios` mode.
2932
+ * @default 'Cancel'
2616
2933
  */
2617
2934
  "cancelButtonText": string;
2618
2935
  /**
@@ -2629,6 +2946,7 @@ export namespace Components {
2629
2946
  "debounce"?: number;
2630
2947
  /**
2631
2948
  * If `true`, the user cannot interact with the input.
2949
+ * @default false
2632
2950
  */
2633
2951
  "disabled": boolean;
2634
2952
  /**
@@ -2657,10 +2975,12 @@ export namespace Components {
2657
2975
  "mode"?: "ios" | "md";
2658
2976
  /**
2659
2977
  * If used in a form, set the name of the control, which is submitted with the form data.
2978
+ * @default this.inputId
2660
2979
  */
2661
2980
  "name": string;
2662
2981
  /**
2663
2982
  * Set the input's placeholder. `placeholder` 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)
2983
+ * @default 'Search'
2664
2984
  */
2665
2985
  "placeholder": string;
2666
2986
  /**
@@ -2673,22 +2993,27 @@ export namespace Components {
2673
2993
  "setFocus": () => Promise<void>;
2674
2994
  /**
2675
2995
  * 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.
2996
+ * @default 'never'
2676
2997
  */
2677
2998
  "showCancelButton": 'never' | 'focus' | 'always';
2678
2999
  /**
2679
3000
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
3001
+ * @default 'always'
2680
3002
  */
2681
3003
  "showClearButton": 'never' | 'focus' | 'always';
2682
3004
  /**
2683
3005
  * If `true`, enable spellcheck on the input.
3006
+ * @default false
2684
3007
  */
2685
3008
  "spellcheck": boolean;
2686
3009
  /**
2687
3010
  * Set the type of the input.
3011
+ * @default 'search'
2688
3012
  */
2689
3013
  "type": 'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url';
2690
3014
  /**
2691
3015
  * the value of the searchbar.
3016
+ * @default ''
2692
3017
  */
2693
3018
  "value"?: string | null;
2694
3019
  }
@@ -2699,6 +3024,7 @@ export namespace Components {
2699
3024
  "color"?: Color;
2700
3025
  /**
2701
3026
  * If `true`, the user cannot interact with the segment.
3027
+ * @default false
2702
3028
  */
2703
3029
  "disabled": boolean;
2704
3030
  /**
@@ -2707,14 +3033,17 @@ export namespace Components {
2707
3033
  "mode"?: "ios" | "md";
2708
3034
  /**
2709
3035
  * If `true`, the segment buttons will overflow and the user can swipe to see them. In addition, this will disable the gesture to drag the indicator between the buttons in order to swipe to see hidden buttons.
3036
+ * @default false
2710
3037
  */
2711
3038
  "scrollable": boolean;
2712
3039
  /**
2713
3040
  * If `true`, navigating to an `ion-segment-button` with the keyboard will focus and select the element. If `false`, keyboard navigation will only focus the `ion-segment-button` element.
3041
+ * @default false
2714
3042
  */
2715
3043
  "selectOnFocus": boolean;
2716
3044
  /**
2717
3045
  * If `true`, users will be able to swipe between segment buttons to activate them.
3046
+ * @default true
2718
3047
  */
2719
3048
  "swipeGesture": boolean;
2720
3049
  /**
@@ -2729,10 +3058,12 @@ export namespace Components {
2729
3058
  "contentId"?: string;
2730
3059
  /**
2731
3060
  * If `true`, the user cannot interact with the segment button.
3061
+ * @default false
2732
3062
  */
2733
3063
  "disabled": boolean;
2734
3064
  /**
2735
3065
  * Set the layout of the text and icon in the segment.
3066
+ * @default 'icon-top'
2736
3067
  */
2737
3068
  "layout"?: SegmentButtonLayout;
2738
3069
  /**
@@ -2742,10 +3073,12 @@ export namespace Components {
2742
3073
  "setFocus": () => Promise<void>;
2743
3074
  /**
2744
3075
  * The type of the button.
3076
+ * @default 'button'
2745
3077
  */
2746
3078
  "type": 'submit' | 'reset' | 'button';
2747
3079
  /**
2748
3080
  * The value of the segment button.
3081
+ * @default 'ion-sb-' + ids++
2749
3082
  */
2750
3083
  "value": SegmentValue;
2751
3084
  }
@@ -2754,6 +3087,7 @@ export namespace Components {
2754
3087
  interface IonSegmentView {
2755
3088
  /**
2756
3089
  * If `true`, the segment view cannot be interacted with.
3090
+ * @default false
2757
3091
  */
2758
3092
  "disabled": boolean;
2759
3093
  /**
@@ -2765,6 +3099,7 @@ export namespace Components {
2765
3099
  interface IonSelect {
2766
3100
  /**
2767
3101
  * The text to display on the cancel button.
3102
+ * @default 'Cancel'
2768
3103
  */
2769
3104
  "cancelText": string;
2770
3105
  /**
@@ -2777,6 +3112,7 @@ export namespace Components {
2777
3112
  "compareWith"?: string | SelectCompareFn | null;
2778
3113
  /**
2779
3114
  * If `true`, the user cannot interact with the select.
3115
+ * @default false
2780
3116
  */
2781
3117
  "disabled": boolean;
2782
3118
  /**
@@ -2797,10 +3133,12 @@ export namespace Components {
2797
3133
  "helperText"?: string;
2798
3134
  /**
2799
3135
  * The interface the select should use: `action-sheet`, `popover`, `alert`, or `modal`.
3136
+ * @default 'alert'
2800
3137
  */
2801
3138
  "interface": SelectInterface;
2802
3139
  /**
2803
3140
  * Any additional options that the `alert`, `action-sheet` or `popover` interface can take. See the [ion-alert docs](./alert), the [ion-action-sheet docs](./action-sheet), the [ion-popover docs](./popover), and the [ion-modal docs](./modal) for the create options for each interface. Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.
3141
+ * @default {}
2804
3142
  */
2805
3143
  "interfaceOptions": any;
2806
3144
  /**
@@ -2813,6 +3151,7 @@ export namespace Components {
2813
3151
  "label"?: string;
2814
3152
  /**
2815
3153
  * Where to place the label relative to the select. `"start"`: The label will appear to the left of the select in LTR and to the right in RTL. `"end"`: The label will appear to the right of the select in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the select when the select is focused or it has a value. Otherwise it will appear on top of the select. `"stacked"`: The label will appear smaller and above the select regardless even when the select 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 ("..."). When using `"floating"` or `"stacked"` we recommend initializing the select with either a `value` or a `placeholder`.
3154
+ * @default 'start'
2816
3155
  */
2817
3156
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
2818
3157
  /**
@@ -2821,14 +3160,17 @@ export namespace Components {
2821
3160
  "mode"?: "ios" | "md";
2822
3161
  /**
2823
3162
  * If `true`, the select can accept multiple values.
3163
+ * @default false
2824
3164
  */
2825
3165
  "multiple": boolean;
2826
3166
  /**
2827
3167
  * The name of the control, which is submitted with the form data.
3168
+ * @default this.inputId
2828
3169
  */
2829
3170
  "name": string;
2830
3171
  /**
2831
3172
  * The text to display on the ok button.
3173
+ * @default 'OK'
2832
3174
  */
2833
3175
  "okText": string;
2834
3176
  /**
@@ -2842,6 +3184,7 @@ export namespace Components {
2842
3184
  "placeholder"?: string;
2843
3185
  /**
2844
3186
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
3187
+ * @default false
2845
3188
  */
2846
3189
  "required": boolean;
2847
3190
  /**
@@ -2864,11 +3207,15 @@ export namespace Components {
2864
3207
  interface IonSelectModal {
2865
3208
  "header"?: string;
2866
3209
  "multiple"?: boolean;
3210
+ /**
3211
+ * @default []
3212
+ */
2867
3213
  "options": SelectModalOption[];
2868
3214
  }
2869
3215
  interface IonSelectOption {
2870
3216
  /**
2871
3217
  * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
3218
+ * @default false
2872
3219
  */
2873
3220
  "disabled": boolean;
2874
3221
  /**
@@ -2891,6 +3238,7 @@ export namespace Components {
2891
3238
  "multiple"?: boolean;
2892
3239
  /**
2893
3240
  * An array of options for the popover
3241
+ * @default []
2894
3242
  */
2895
3243
  "options": SelectPopoverOption[];
2896
3244
  /**
@@ -2901,6 +3249,7 @@ export namespace Components {
2901
3249
  interface IonSkeletonText {
2902
3250
  /**
2903
3251
  * If `true`, the skeleton text will animate.
3252
+ * @default false
2904
3253
  */
2905
3254
  "animated": boolean;
2906
3255
  }
@@ -2919,6 +3268,7 @@ export namespace Components {
2919
3268
  "name"?: SpinnerTypes;
2920
3269
  /**
2921
3270
  * If `true`, the spinner's animation will be paused.
3271
+ * @default false
2922
3272
  */
2923
3273
  "paused": boolean;
2924
3274
  }
@@ -2929,15 +3279,20 @@ export namespace Components {
2929
3279
  "contentId"?: string;
2930
3280
  /**
2931
3281
  * If `true`, the split pane will be hidden.
3282
+ * @default false
2932
3283
  */
2933
3284
  "disabled": boolean;
2934
3285
  "isVisible": () => Promise<boolean>;
2935
3286
  /**
2936
3287
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
3288
+ * @default QUERY['lg']
2937
3289
  */
2938
3290
  "when": string | boolean;
2939
3291
  }
2940
3292
  interface IonTab {
3293
+ /**
3294
+ * @default false
3295
+ */
2941
3296
  "active": boolean;
2942
3297
  /**
2943
3298
  * The component to display inside of the tab.
@@ -2968,12 +3323,14 @@ export namespace Components {
2968
3323
  "selectedTab"?: string;
2969
3324
  /**
2970
3325
  * 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).
3326
+ * @default false
2971
3327
  */
2972
3328
  "translucent": boolean;
2973
3329
  }
2974
3330
  interface IonTabButton {
2975
3331
  /**
2976
3332
  * If `true`, the user cannot interact with the tab button.
3333
+ * @default false
2977
3334
  */
2978
3335
  "disabled": boolean;
2979
3336
  /**
@@ -2998,6 +3355,7 @@ export namespace Components {
2998
3355
  "rel": string | undefined;
2999
3356
  /**
3000
3357
  * The selected tab component
3358
+ * @default false
3001
3359
  */
3002
3360
  "selected": boolean;
3003
3361
  /**
@@ -3026,6 +3384,9 @@ export namespace Components {
3026
3384
  */
3027
3385
  "select": (tab: string | HTMLIonTabElement) => Promise<boolean>;
3028
3386
  "setRouteId": (id: string) => Promise<RouteWrite>;
3387
+ /**
3388
+ * @default false
3389
+ */
3029
3390
  "useRouter": boolean;
3030
3391
  }
3031
3392
  interface IonText {
@@ -3041,18 +3402,22 @@ export namespace Components {
3041
3402
  interface IonTextarea {
3042
3403
  /**
3043
3404
  * If `true`, the textarea container will grow and shrink based on the contents of the textarea.
3405
+ * @default false
3044
3406
  */
3045
3407
  "autoGrow": boolean;
3046
3408
  /**
3047
3409
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
3410
+ * @default 'none'
3048
3411
  */
3049
3412
  "autocapitalize": string;
3050
3413
  /**
3051
3414
  * Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element. This may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.
3415
+ * @default false
3052
3416
  */
3053
3417
  "autofocus": boolean;
3054
3418
  /**
3055
3419
  * If `true`, the value will be cleared after focus upon edit.
3420
+ * @default false
3056
3421
  */
3057
3422
  "clearOnEdit": boolean;
3058
3423
  /**
@@ -3065,6 +3430,7 @@ export namespace Components {
3065
3430
  "cols"?: number;
3066
3431
  /**
3067
3432
  * If `true`, a character counter will display the ratio of characters used and the total character limit. Developers must also set the `maxlength` property for the counter to be calculated correctly.
3433
+ * @default false
3068
3434
  */
3069
3435
  "counter": boolean;
3070
3436
  /**
@@ -3077,6 +3443,7 @@ export namespace Components {
3077
3443
  "debounce"?: number;
3078
3444
  /**
3079
3445
  * If `true`, the user cannot interact with the textarea.
3446
+ * @default false
3080
3447
  */
3081
3448
  "disabled": boolean;
3082
3449
  /**
@@ -3109,6 +3476,7 @@ export namespace Components {
3109
3476
  "label"?: string;
3110
3477
  /**
3111
3478
  * Where to place the label relative to the textarea. `"start"`: The label will appear to the left of the textarea in LTR and to the right in RTL. `"end"`: The label will appear to the right of the textarea in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the textarea when the textarea is focused or it has a value. Otherwise it will appear on top of the textarea. `"stacked"`: The label will appear smaller and above the textarea regardless even when the textarea 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 ("...").
3479
+ * @default 'start'
3112
3480
  */
3113
3481
  "labelPlacement": 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
3114
3482
  /**
@@ -3125,6 +3493,7 @@ export namespace Components {
3125
3493
  "mode"?: "ios" | "md";
3126
3494
  /**
3127
3495
  * The name of the control, which is submitted with the form data.
3496
+ * @default this.inputId
3128
3497
  */
3129
3498
  "name": string;
3130
3499
  /**
@@ -3133,10 +3502,12 @@ export namespace Components {
3133
3502
  "placeholder"?: string;
3134
3503
  /**
3135
3504
  * If `true`, the user cannot modify the value.
3505
+ * @default false
3136
3506
  */
3137
3507
  "readonly": boolean;
3138
3508
  /**
3139
3509
  * If `true`, the user must fill in a value before submitting a form.
3510
+ * @default false
3140
3511
  */
3141
3512
  "required": boolean;
3142
3513
  /**
@@ -3153,10 +3524,12 @@ export namespace Components {
3153
3524
  "shape"?: 'round';
3154
3525
  /**
3155
3526
  * If `true`, the element will have its spelling and grammar checked.
3527
+ * @default false
3156
3528
  */
3157
3529
  "spellcheck": boolean;
3158
3530
  /**
3159
3531
  * The value of the textarea.
3532
+ * @default ''
3160
3533
  */
3161
3534
  "value"?: string | null;
3162
3535
  /**
@@ -3179,6 +3552,7 @@ export namespace Components {
3179
3552
  interface IonToast {
3180
3553
  /**
3181
3554
  * If `true`, the toast will animate.
3555
+ * @default true
3182
3556
  */
3183
3557
  "animated": boolean;
3184
3558
  /**
@@ -3202,12 +3576,16 @@ export namespace Components {
3202
3576
  "dismiss": (data?: any, role?: string) => Promise<boolean>;
3203
3577
  /**
3204
3578
  * How many milliseconds to wait before hiding the toast. By default, it will show until `dismiss()` is called.
3579
+ * @default config.getNumber('toastDuration', 0)
3205
3580
  */
3206
3581
  "duration": number;
3207
3582
  /**
3208
3583
  * Animation to use when the toast is presented.
3209
3584
  */
3210
3585
  "enterAnimation"?: AnimationBuilder;
3586
+ /**
3587
+ * @default false
3588
+ */
3211
3589
  "hasController": boolean;
3212
3590
  /**
3213
3591
  * Header to be shown in the toast.
@@ -3223,14 +3601,17 @@ export namespace Components {
3223
3601
  "icon"?: string;
3224
3602
  /**
3225
3603
  * If `true`, the toast will open. If `false`, the toast will close. Use this if you need finer grained control over presentation, otherwise just use the toastController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the toast dismisses. You will need to do that in your code.
3604
+ * @default false
3226
3605
  */
3227
3606
  "isOpen": boolean;
3228
3607
  /**
3229
3608
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
3609
+ * @default false
3230
3610
  */
3231
3611
  "keyboardClose": boolean;
3232
3612
  /**
3233
3613
  * Defines how the message and buttons are laid out in the toast. 'baseline': The message and the buttons will appear on the same line. Message text may wrap within the message container. 'stacked': The buttons containers and message will stack on top of each other. Use this if you have long text in your buttons.
3614
+ * @default 'baseline'
3234
3615
  */
3235
3616
  "layout": ToastLayout;
3236
3617
  /**
@@ -3256,6 +3637,7 @@ export namespace Components {
3256
3637
  "overlayIndex": number;
3257
3638
  /**
3258
3639
  * The starting position of the toast on the screen. Can be tweaked further using the `positionAnchor` property.
3640
+ * @default 'bottom'
3259
3641
  */
3260
3642
  "position": ToastPosition;
3261
3643
  /**
@@ -3272,6 +3654,7 @@ export namespace Components {
3272
3654
  "swipeGesture"?: ToastSwipeGestureDirection;
3273
3655
  /**
3274
3656
  * 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).
3657
+ * @default false
3275
3658
  */
3276
3659
  "translucent": boolean;
3277
3660
  /**
@@ -3286,6 +3669,7 @@ export namespace Components {
3286
3669
  "alignment"?: 'start' | 'center';
3287
3670
  /**
3288
3671
  * If `true`, the toggle is selected.
3672
+ * @default false
3289
3673
  */
3290
3674
  "checked": boolean;
3291
3675
  /**
@@ -3294,10 +3678,12 @@ export namespace Components {
3294
3678
  "color"?: Color;
3295
3679
  /**
3296
3680
  * If `true`, the user cannot interact with the toggle.
3681
+ * @default false
3297
3682
  */
3298
3683
  "disabled": boolean;
3299
3684
  /**
3300
3685
  * Enables the on/off accessibility switch labels within the toggle.
3686
+ * @default config.get('toggleOnOffLabels')
3301
3687
  */
3302
3688
  "enableOnOffLabels": boolean | undefined;
3303
3689
  /**
@@ -3314,6 +3700,7 @@ export namespace Components {
3314
3700
  "justify"?: 'start' | 'end' | 'space-between';
3315
3701
  /**
3316
3702
  * Where to place the label relative to the input. `"start"`: The label will appear to the left of the toggle in LTR and to the right in RTL. `"end"`: The label will appear to the right of the toggle in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
3703
+ * @default 'start'
3317
3704
  */
3318
3705
  "labelPlacement": 'start' | 'end' | 'fixed' | 'stacked';
3319
3706
  /**
@@ -3322,14 +3709,17 @@ export namespace Components {
3322
3709
  "mode"?: "ios" | "md";
3323
3710
  /**
3324
3711
  * The name of the control, which is submitted with the form data.
3712
+ * @default this.inputId
3325
3713
  */
3326
3714
  "name": string;
3327
3715
  /**
3328
3716
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
3717
+ * @default false
3329
3718
  */
3330
3719
  "required": boolean;
3331
3720
  /**
3332
3721
  * 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>`.
3722
+ * @default 'on'
3333
3723
  */
3334
3724
  "value"?: string | null;
3335
3725
  }
@@ -3400,6 +3790,10 @@ export interface IonInputCustomEvent<T> extends CustomEvent<T> {
3400
3790
  detail: T;
3401
3791
  target: HTMLIonInputElement;
3402
3792
  }
3793
+ export interface IonInputOtpCustomEvent<T> extends CustomEvent<T> {
3794
+ detail: T;
3795
+ target: HTMLIonInputOtpElement;
3796
+ }
3403
3797
  export interface IonItemOptionsCustomEvent<T> extends CustomEvent<T> {
3404
3798
  detail: T;
3405
3799
  target: HTMLIonItemOptionsElement;
@@ -3929,6 +4323,27 @@ declare global {
3929
4323
  prototype: HTMLIonInputElement;
3930
4324
  new (): HTMLIonInputElement;
3931
4325
  };
4326
+ interface HTMLIonInputOtpElementEventMap {
4327
+ "ionInput": InputOtpInputEventDetail;
4328
+ "ionChange": InputOtpChangeEventDetail;
4329
+ "ionComplete": InputOtpCompleteEventDetail;
4330
+ "ionBlur": FocusEvent;
4331
+ "ionFocus": FocusEvent;
4332
+ }
4333
+ interface HTMLIonInputOtpElement extends Components.IonInputOtp, HTMLStencilElement {
4334
+ addEventListener<K extends keyof HTMLIonInputOtpElementEventMap>(type: K, listener: (this: HTMLIonInputOtpElement, ev: IonInputOtpCustomEvent<HTMLIonInputOtpElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
4335
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4336
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4337
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4338
+ removeEventListener<K extends keyof HTMLIonInputOtpElementEventMap>(type: K, listener: (this: HTMLIonInputOtpElement, ev: IonInputOtpCustomEvent<HTMLIonInputOtpElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
4339
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4340
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4341
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4342
+ }
4343
+ var HTMLIonInputOtpElement: {
4344
+ prototype: HTMLIonInputOtpElement;
4345
+ new (): HTMLIonInputOtpElement;
4346
+ };
3932
4347
  interface HTMLIonInputPasswordToggleElement extends Components.IonInputPasswordToggle, HTMLStencilElement {
3933
4348
  }
3934
4349
  var HTMLIonInputPasswordToggleElement: {
@@ -4788,6 +5203,7 @@ declare global {
4788
5203
  "ion-infinite-scroll": HTMLIonInfiniteScrollElement;
4789
5204
  "ion-infinite-scroll-content": HTMLIonInfiniteScrollContentElement;
4790
5205
  "ion-input": HTMLIonInputElement;
5206
+ "ion-input-otp": HTMLIonInputOtpElement;
4791
5207
  "ion-input-password-toggle": HTMLIonInputPasswordToggleElement;
4792
5208
  "ion-item": HTMLIonItemElement;
4793
5209
  "ion-item-divider": HTMLIonItemDividerElement;
@@ -4856,6 +5272,7 @@ declare namespace LocalJSX {
4856
5272
  interface IonAccordion {
4857
5273
  /**
4858
5274
  * If `true`, the accordion cannot be interacted with.
5275
+ * @default false
4859
5276
  */
4860
5277
  "disabled"?: boolean;
4861
5278
  /**
@@ -4864,32 +5281,39 @@ declare namespace LocalJSX {
4864
5281
  "mode"?: "ios" | "md";
4865
5282
  /**
4866
5283
  * If `true`, the accordion cannot be interacted with, but does not alter the opacity.
5284
+ * @default false
4867
5285
  */
4868
5286
  "readonly"?: boolean;
4869
5287
  /**
4870
5288
  * The toggle icon to use. This icon will be rotated when the accordion is expanded or collapsed.
5289
+ * @default chevronDown
4871
5290
  */
4872
5291
  "toggleIcon"?: string;
4873
5292
  /**
4874
5293
  * The slot inside of `ion-item` to place the toggle icon. Defaults to `"end"`.
5294
+ * @default 'end'
4875
5295
  */
4876
5296
  "toggleIconSlot"?: 'start' | 'end';
4877
5297
  /**
4878
5298
  * The value of the accordion. Defaults to an autogenerated value.
5299
+ * @default `ion-accordion-${accordionIds++}`
4879
5300
  */
4880
5301
  "value"?: string;
4881
5302
  }
4882
5303
  interface IonAccordionGroup {
4883
5304
  /**
4884
5305
  * If `true`, all accordions inside of the accordion group will animate when expanding or collapsing.
5306
+ * @default true
4885
5307
  */
4886
5308
  "animated"?: boolean;
4887
5309
  /**
4888
5310
  * If `true`, the accordion group cannot be interacted with.
5311
+ * @default false
4889
5312
  */
4890
5313
  "disabled"?: boolean;
4891
5314
  /**
4892
5315
  * Describes the expansion behavior for each accordion. Possible values are `"compact"` and `"inset"`. Defaults to `"compact"`.
5316
+ * @default 'compact'
4893
5317
  */
4894
5318
  "expand"?: 'compact' | 'inset';
4895
5319
  /**
@@ -4906,6 +5330,7 @@ declare namespace LocalJSX {
4906
5330
  "onIonChange"?: (event: IonAccordionGroupCustomEvent<AccordionGroupChangeEventDetail>) => void;
4907
5331
  /**
4908
5332
  * If `true`, the accordion group cannot be interacted with, but does not alter the opacity.
5333
+ * @default false
4909
5334
  */
4910
5335
  "readonly"?: boolean;
4911
5336
  /**
@@ -4916,14 +5341,17 @@ declare namespace LocalJSX {
4916
5341
  interface IonActionSheet {
4917
5342
  /**
4918
5343
  * If `true`, the action sheet will animate.
5344
+ * @default true
4919
5345
  */
4920
5346
  "animated"?: boolean;
4921
5347
  /**
4922
5348
  * If `true`, the action sheet will be dismissed when the backdrop is clicked.
5349
+ * @default true
4923
5350
  */
4924
5351
  "backdropDismiss"?: boolean;
4925
5352
  /**
4926
5353
  * An array of buttons for the action sheet.
5354
+ * @default []
4927
5355
  */
4928
5356
  "buttons"?: (ActionSheetButton | string)[];
4929
5357
  /**
@@ -4944,10 +5372,12 @@ declare namespace LocalJSX {
4944
5372
  "htmlAttributes"?: { [key: string]: any };
4945
5373
  /**
4946
5374
  * If `true`, the action sheet will open. If `false`, the action sheet will close. Use this if you need finer grained control over presentation, otherwise just use the actionSheetController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the action sheet dismisses. You will need to do that in your code.
5375
+ * @default false
4947
5376
  */
4948
5377
  "isOpen"?: boolean;
4949
5378
  /**
4950
5379
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
5380
+ * @default true
4951
5381
  */
4952
5382
  "keyboardClose"?: boolean;
4953
5383
  /**
@@ -4996,6 +5426,7 @@ declare namespace LocalJSX {
4996
5426
  "subHeader"?: string;
4997
5427
  /**
4998
5428
  * 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).
5429
+ * @default false
4999
5430
  */
5000
5431
  "translucent"?: boolean;
5001
5432
  /**
@@ -5006,14 +5437,17 @@ declare namespace LocalJSX {
5006
5437
  interface IonAlert {
5007
5438
  /**
5008
5439
  * If `true`, the alert will animate.
5440
+ * @default true
5009
5441
  */
5010
5442
  "animated"?: boolean;
5011
5443
  /**
5012
5444
  * If `true`, the alert will be dismissed when the backdrop is clicked.
5445
+ * @default true
5013
5446
  */
5014
5447
  "backdropDismiss"?: boolean;
5015
5448
  /**
5016
5449
  * Array of buttons to be added to the alert.
5450
+ * @default []
5017
5451
  */
5018
5452
  "buttons"?: (AlertButton | string)[];
5019
5453
  /**
@@ -5034,14 +5468,17 @@ declare namespace LocalJSX {
5034
5468
  "htmlAttributes"?: { [key: string]: any };
5035
5469
  /**
5036
5470
  * Array of input to show in the alert.
5471
+ * @default []
5037
5472
  */
5038
5473
  "inputs"?: AlertInput[];
5039
5474
  /**
5040
5475
  * If `true`, the alert will open. If `false`, the alert will close. Use this if you need finer grained control over presentation, otherwise just use the alertController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the alert dismisses. You will need to do that in your code.
5476
+ * @default false
5041
5477
  */
5042
5478
  "isOpen"?: boolean;
5043
5479
  /**
5044
5480
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
5481
+ * @default true
5045
5482
  */
5046
5483
  "keyboardClose"?: boolean;
5047
5484
  /**
@@ -5094,6 +5531,7 @@ declare namespace LocalJSX {
5094
5531
  "subHeader"?: string;
5095
5532
  /**
5096
5533
  * 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).
5534
+ * @default false
5097
5535
  */
5098
5536
  "translucent"?: boolean;
5099
5537
  /**
@@ -5116,6 +5554,7 @@ declare namespace LocalJSX {
5116
5554
  "defaultHref"?: string;
5117
5555
  /**
5118
5556
  * If `true`, the user cannot interact with the button.
5557
+ * @default false
5119
5558
  */
5120
5559
  "disabled"?: boolean;
5121
5560
  /**
@@ -5136,6 +5575,7 @@ declare namespace LocalJSX {
5136
5575
  "text"?: string | null;
5137
5576
  /**
5138
5577
  * The type of the button.
5578
+ * @default 'button'
5139
5579
  */
5140
5580
  "type"?: 'submit' | 'reset' | 'button';
5141
5581
  }
@@ -5146,14 +5586,17 @@ declare namespace LocalJSX {
5146
5586
  "onIonBackdropTap"?: (event: IonBackdropCustomEvent<void>) => void;
5147
5587
  /**
5148
5588
  * If `true`, the backdrop will stop propagation on tap.
5589
+ * @default true
5149
5590
  */
5150
5591
  "stopPropagation"?: boolean;
5151
5592
  /**
5152
5593
  * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event.
5594
+ * @default true
5153
5595
  */
5154
5596
  "tappable"?: boolean;
5155
5597
  /**
5156
5598
  * If `true`, the backdrop will be visible.
5599
+ * @default true
5157
5600
  */
5158
5601
  "visible"?: boolean;
5159
5602
  }
@@ -5170,6 +5613,7 @@ declare namespace LocalJSX {
5170
5613
  interface IonBreadcrumb {
5171
5614
  /**
5172
5615
  * If `true`, the breadcrumb will take on a different look to show that it is the currently active breadcrumb. Defaults to `true` for the last breadcrumb if it is not set on any.
5616
+ * @default false
5173
5617
  */
5174
5618
  "active"?: boolean;
5175
5619
  /**
@@ -5178,6 +5622,7 @@ declare namespace LocalJSX {
5178
5622
  "color"?: Color;
5179
5623
  /**
5180
5624
  * If `true`, the user cannot interact with the breadcrumb.
5625
+ * @default false
5181
5626
  */
5182
5627
  "disabled"?: boolean;
5183
5628
  /**
@@ -5210,6 +5655,7 @@ declare namespace LocalJSX {
5210
5655
  "routerAnimation"?: AnimationBuilder | undefined;
5211
5656
  /**
5212
5657
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5658
+ * @default 'forward'
5213
5659
  */
5214
5660
  "routerDirection"?: RouterDirection;
5215
5661
  /**
@@ -5228,10 +5674,12 @@ declare namespace LocalJSX {
5228
5674
  "color"?: Color;
5229
5675
  /**
5230
5676
  * The number of breadcrumbs to show after the collapsed indicator. If `itemsBeforeCollapse` + `itemsAfterCollapse` is greater than `maxItems`, the breadcrumbs will not be collapsed.
5677
+ * @default 1
5231
5678
  */
5232
5679
  "itemsAfterCollapse"?: number;
5233
5680
  /**
5234
5681
  * The number of breadcrumbs to show before the collapsed indicator. If `itemsBeforeCollapse` + `itemsAfterCollapse` is greater than `maxItems`, the breadcrumbs will not be collapsed.
5682
+ * @default 1
5235
5683
  */
5236
5684
  "itemsBeforeCollapse"?: number;
5237
5685
  /**
@@ -5250,6 +5698,7 @@ declare namespace LocalJSX {
5250
5698
  interface IonButton {
5251
5699
  /**
5252
5700
  * The type of button.
5701
+ * @default 'button'
5253
5702
  */
5254
5703
  "buttonType"?: string;
5255
5704
  /**
@@ -5258,6 +5707,7 @@ declare namespace LocalJSX {
5258
5707
  "color"?: Color;
5259
5708
  /**
5260
5709
  * If `true`, the user cannot interact with the button.
5710
+ * @default false
5261
5711
  */
5262
5712
  "disabled"?: boolean;
5263
5713
  /**
@@ -5302,6 +5752,7 @@ declare namespace LocalJSX {
5302
5752
  "routerAnimation"?: AnimationBuilder | undefined;
5303
5753
  /**
5304
5754
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5755
+ * @default 'forward'
5305
5756
  */
5306
5757
  "routerDirection"?: RouterDirection;
5307
5758
  /**
@@ -5314,6 +5765,7 @@ declare namespace LocalJSX {
5314
5765
  "size"?: 'small' | 'default' | 'large';
5315
5766
  /**
5316
5767
  * If `true`, activates a button with a heavier font weight.
5768
+ * @default false
5317
5769
  */
5318
5770
  "strong"?: boolean;
5319
5771
  /**
@@ -5322,18 +5774,21 @@ declare namespace LocalJSX {
5322
5774
  "target"?: string | undefined;
5323
5775
  /**
5324
5776
  * The type of the button.
5777
+ * @default 'button'
5325
5778
  */
5326
5779
  "type"?: 'submit' | 'reset' | 'button';
5327
5780
  }
5328
5781
  interface IonButtons {
5329
5782
  /**
5330
5783
  * 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)
5784
+ * @default false
5331
5785
  */
5332
5786
  "collapse"?: boolean;
5333
5787
  }
5334
5788
  interface IonCard {
5335
5789
  /**
5336
5790
  * If `true`, a button tag will be rendered and the card will be tappable.
5791
+ * @default false
5337
5792
  */
5338
5793
  "button"?: boolean;
5339
5794
  /**
@@ -5342,6 +5797,7 @@ declare namespace LocalJSX {
5342
5797
  "color"?: Color;
5343
5798
  /**
5344
5799
  * If `true`, the user cannot interact with the card.
5800
+ * @default false
5345
5801
  */
5346
5802
  "disabled"?: boolean;
5347
5803
  /**
@@ -5366,6 +5822,7 @@ declare namespace LocalJSX {
5366
5822
  "routerAnimation"?: AnimationBuilder | undefined;
5367
5823
  /**
5368
5824
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
5825
+ * @default 'forward'
5369
5826
  */
5370
5827
  "routerDirection"?: RouterDirection;
5371
5828
  /**
@@ -5374,6 +5831,7 @@ declare namespace LocalJSX {
5374
5831
  "target"?: string | undefined;
5375
5832
  /**
5376
5833
  * The type of the button. Only used when an `onclick` or `button` property is present.
5834
+ * @default 'button'
5377
5835
  */
5378
5836
  "type"?: 'submit' | 'reset' | 'button';
5379
5837
  }
@@ -5394,6 +5852,7 @@ declare namespace LocalJSX {
5394
5852
  "mode"?: "ios" | "md";
5395
5853
  /**
5396
5854
  * 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).
5855
+ * @default false
5397
5856
  */
5398
5857
  "translucent"?: boolean;
5399
5858
  }
@@ -5424,6 +5883,7 @@ declare namespace LocalJSX {
5424
5883
  "alignment"?: 'start' | 'center';
5425
5884
  /**
5426
5885
  * If `true`, the checkbox is selected.
5886
+ * @default false
5427
5887
  */
5428
5888
  "checked"?: boolean;
5429
5889
  /**
@@ -5432,6 +5892,7 @@ declare namespace LocalJSX {
5432
5892
  "color"?: Color;
5433
5893
  /**
5434
5894
  * If `true`, the user cannot interact with the checkbox.
5895
+ * @default false
5435
5896
  */
5436
5897
  "disabled"?: boolean;
5437
5898
  /**
@@ -5444,6 +5905,7 @@ declare namespace LocalJSX {
5444
5905
  "helperText"?: string;
5445
5906
  /**
5446
5907
  * If `true`, the checkbox will visually appear as indeterminate.
5908
+ * @default false
5447
5909
  */
5448
5910
  "indeterminate"?: boolean;
5449
5911
  /**
@@ -5452,6 +5914,7 @@ declare namespace LocalJSX {
5452
5914
  "justify"?: 'start' | 'end' | 'space-between';
5453
5915
  /**
5454
5916
  * Where to place the label relative to the checkbox. `"start"`: The label will appear to the left of the checkbox in LTR and to the right in RTL. `"end"`: The label will appear to the right of the checkbox in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the checkbox regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
5917
+ * @default 'start'
5455
5918
  */
5456
5919
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
5457
5920
  /**
@@ -5460,6 +5923,7 @@ declare namespace LocalJSX {
5460
5923
  "mode"?: "ios" | "md";
5461
5924
  /**
5462
5925
  * The name of the control, which is submitted with the form data.
5926
+ * @default this.inputId
5463
5927
  */
5464
5928
  "name"?: string;
5465
5929
  /**
@@ -5476,10 +5940,12 @@ declare namespace LocalJSX {
5476
5940
  "onIonFocus"?: (event: IonCheckboxCustomEvent<void>) => void;
5477
5941
  /**
5478
5942
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
5943
+ * @default false
5479
5944
  */
5480
5945
  "required"?: boolean;
5481
5946
  /**
5482
5947
  * 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>`.
5948
+ * @default 'on'
5483
5949
  */
5484
5950
  "value"?: any | null;
5485
5951
  }
@@ -5490,6 +5956,7 @@ declare namespace LocalJSX {
5490
5956
  "color"?: Color;
5491
5957
  /**
5492
5958
  * If `true`, the user cannot interact with the chip.
5959
+ * @default false
5493
5960
  */
5494
5961
  "disabled"?: boolean;
5495
5962
  /**
@@ -5498,6 +5965,7 @@ declare namespace LocalJSX {
5498
5965
  "mode"?: "ios" | "md";
5499
5966
  /**
5500
5967
  * Display an outline style button.
5968
+ * @default false
5501
5969
  */
5502
5970
  "outline"?: boolean;
5503
5971
  }
@@ -5606,6 +6074,7 @@ declare namespace LocalJSX {
5606
6074
  "color"?: Color;
5607
6075
  /**
5608
6076
  * Controls where the fixed content is placed relative to the main content in the DOM. This can be used to control the order in which fixed elements receive keyboard focus. For example, if a FAB in the fixed slot should receive keyboard focus before the main page content, set this property to `'before'`.
6077
+ * @default 'after'
5609
6078
  */
5610
6079
  "fixedSlotPlacement"?: 'after' | 'before';
5611
6080
  /**
@@ -5614,6 +6083,7 @@ declare namespace LocalJSX {
5614
6083
  "forceOverscroll"?: boolean;
5615
6084
  /**
5616
6085
  * If `true`, the content will scroll behind the headers and footers. This effect can easily be seen by setting the toolbar to transparent.
6086
+ * @default false
5617
6087
  */
5618
6088
  "fullscreen"?: boolean;
5619
6089
  /**
@@ -5630,28 +6100,34 @@ declare namespace LocalJSX {
5630
6100
  "onIonScrollStart"?: (event: IonContentCustomEvent<ScrollBaseDetail>) => void;
5631
6101
  /**
5632
6102
  * Because of performance reasons, ionScroll events are disabled by default, in order to enable them and start listening from (ionScroll), set this property to `true`.
6103
+ * @default false
5633
6104
  */
5634
6105
  "scrollEvents"?: boolean;
5635
6106
  /**
5636
6107
  * If you want to enable the content scrolling in the X axis, set this property to `true`.
6108
+ * @default false
5637
6109
  */
5638
6110
  "scrollX"?: boolean;
5639
6111
  /**
5640
6112
  * If you want to disable the content scrolling in the Y axis, set this property to `false`.
6113
+ * @default true
5641
6114
  */
5642
6115
  "scrollY"?: boolean;
5643
6116
  }
5644
6117
  interface IonDatetime {
5645
6118
  /**
5646
6119
  * The text to display on the picker's cancel button.
6120
+ * @default 'Cancel'
5647
6121
  */
5648
6122
  "cancelText"?: string;
5649
6123
  /**
5650
6124
  * The text to display on the picker's "Clear" button.
6125
+ * @default 'Clear'
5651
6126
  */
5652
6127
  "clearText"?: string;
5653
6128
  /**
5654
6129
  * 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).
6130
+ * @default 'primary'
5655
6131
  */
5656
6132
  "color"?: Color;
5657
6133
  /**
@@ -5660,14 +6136,17 @@ declare namespace LocalJSX {
5660
6136
  "dayValues"?: number[] | number | string;
5661
6137
  /**
5662
6138
  * If `true`, the user cannot interact with the datetime.
6139
+ * @default false
5663
6140
  */
5664
6141
  "disabled"?: boolean;
5665
6142
  /**
5666
6143
  * The text to display on the picker's "Done" button.
6144
+ * @default 'Done'
5667
6145
  */
5668
6146
  "doneText"?: string;
5669
6147
  /**
5670
6148
  * The first day of the week to use for `ion-datetime`. The default value is `0` and represents Sunday.
6149
+ * @default 0
5671
6150
  */
5672
6151
  "firstDayOfWeek"?: number;
5673
6152
  /**
@@ -5692,6 +6171,7 @@ declare namespace LocalJSX {
5692
6171
  "isDateEnabled"?: (dateIsoString: string) => boolean;
5693
6172
  /**
5694
6173
  * The locale to use for `ion-datetime`. This impacts month and day name formatting. The `"default"` value refers to the default locale set by your device.
6174
+ * @default 'default'
5695
6175
  */
5696
6176
  "locale"?: string;
5697
6177
  /**
@@ -5716,10 +6196,12 @@ declare namespace LocalJSX {
5716
6196
  "monthValues"?: number[] | number | string;
5717
6197
  /**
5718
6198
  * If `true`, multiple dates can be selected at once. Only applies to `presentation="date"` and `preferWheel="false"`.
6199
+ * @default false
5719
6200
  */
5720
6201
  "multiple"?: boolean;
5721
6202
  /**
5722
6203
  * The name of the control, which is submitted with the form data.
6204
+ * @default this.inputId
5723
6205
  */
5724
6206
  "name"?: string;
5725
6207
  /**
@@ -5740,34 +6222,47 @@ declare namespace LocalJSX {
5740
6222
  "onIonFocus"?: (event: IonDatetimeCustomEvent<void>) => void;
5741
6223
  /**
5742
6224
  * If `true`, a wheel picker will be rendered instead of a calendar grid where possible. If `false`, a calendar grid will be rendered instead of a wheel picker where possible. A wheel picker can be rendered instead of a grid when `presentation` is one of the following values: `"date"`, `"date-time"`, or `"time-date"`. A wheel picker will always be rendered regardless of the `preferWheel` value when `presentation` is one of the following values: `"time"`, `"month"`, `"month-year"`, or `"year"`.
6225
+ * @default false
5743
6226
  */
5744
6227
  "preferWheel"?: boolean;
5745
6228
  /**
5746
6229
  * Which values you want to select. `"date"` will show a calendar picker to select the month, day, and year. `"time"` will show a time picker to select the hour, minute, and (optionally) AM/PM. `"date-time"` will show the date picker first and time picker second. `"time-date"` will show the time picker first and date picker second.
6230
+ * @default 'date-time'
5747
6231
  */
5748
6232
  "presentation"?: DatetimePresentation;
5749
6233
  /**
5750
6234
  * If `true`, the datetime appears normal but the selected date cannot be changed.
6235
+ * @default false
5751
6236
  */
5752
6237
  "readonly"?: boolean;
6238
+ /**
6239
+ * If `true`, the datetime calendar displays a six-week (42-day) layout, including days from the previous and next months to fill the grid. These adjacent days are selectable unless disabled.
6240
+ * @default false
6241
+ */
6242
+ "showAdjacentDays"?: boolean;
5753
6243
  /**
5754
6244
  * If `true`, a "Clear" button will be rendered alongside the default "Cancel" and "OK" buttons at the bottom of the `ion-datetime` component. Developers can also use the `button` slot if they want to customize these buttons. If custom buttons are set in the `button` slot then the default buttons will not be rendered.
6245
+ * @default false
5755
6246
  */
5756
6247
  "showClearButton"?: boolean;
5757
6248
  /**
5758
6249
  * If `true`, the default "Cancel" and "OK" buttons will be rendered at the bottom of the `ion-datetime` component. Developers can also use the `button` slot if they want to customize these buttons. If custom buttons are set in the `button` slot then the default buttons will not be rendered.
6250
+ * @default false
5759
6251
  */
5760
6252
  "showDefaultButtons"?: boolean;
5761
6253
  /**
5762
6254
  * If `true`, the default "Time" label will be rendered for the time selector of the `ion-datetime` component. Developers can also use the `time-label` slot if they want to customize this label. If a custom label is set in the `time-label` slot then the default label will not be rendered.
6255
+ * @default true
5763
6256
  */
5764
6257
  "showDefaultTimeLabel"?: boolean;
5765
6258
  /**
5766
6259
  * If `true`, a header will be shown above the calendar picker. This will include both the slotted title, and the selected date.
6260
+ * @default false
5767
6261
  */
5768
6262
  "showDefaultTitle"?: boolean;
5769
6263
  /**
5770
6264
  * If `cover`, the `ion-datetime` will expand to cover the full width of its container. If `fixed`, the `ion-datetime` will have a fixed width.
6265
+ * @default 'fixed'
5771
6266
  */
5772
6267
  "size"?: 'cover' | 'fixed';
5773
6268
  /**
@@ -5786,6 +6281,7 @@ declare namespace LocalJSX {
5786
6281
  interface IonDatetimeButton {
5787
6282
  /**
5788
6283
  * 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).
6284
+ * @default 'primary'
5789
6285
  */
5790
6286
  "color"?: Color;
5791
6287
  /**
@@ -5794,6 +6290,7 @@ declare namespace LocalJSX {
5794
6290
  "datetime"?: string;
5795
6291
  /**
5796
6292
  * If `true`, the user cannot interact with the button.
6293
+ * @default false
5797
6294
  */
5798
6295
  "disabled"?: boolean;
5799
6296
  /**
@@ -5804,10 +6301,12 @@ declare namespace LocalJSX {
5804
6301
  interface IonFab {
5805
6302
  /**
5806
6303
  * If `true`, both the `ion-fab-button` and all `ion-fab-list` inside `ion-fab` will become active. That means `ion-fab-button` will become a `close` icon and `ion-fab-list` will become visible.
6304
+ * @default false
5807
6305
  */
5808
6306
  "activated"?: boolean;
5809
6307
  /**
5810
6308
  * If `true`, the fab will display on the edge of the header if `vertical` is `"top"`, and on the edge of the footer if it is `"bottom"`. Should be used with a `fixed` slot.
6309
+ * @default false
5811
6310
  */
5812
6311
  "edge"?: boolean;
5813
6312
  /**
@@ -5822,10 +6321,12 @@ declare namespace LocalJSX {
5822
6321
  interface IonFabButton {
5823
6322
  /**
5824
6323
  * If `true`, the fab button will be show a close icon.
6324
+ * @default false
5825
6325
  */
5826
6326
  "activated"?: boolean;
5827
6327
  /**
5828
6328
  * 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.
6329
+ * @default close
5829
6330
  */
5830
6331
  "closeIcon"?: string;
5831
6332
  /**
@@ -5834,6 +6335,7 @@ declare namespace LocalJSX {
5834
6335
  "color"?: Color;
5835
6336
  /**
5836
6337
  * If `true`, the user cannot interact with the fab button.
6338
+ * @default false
5837
6339
  */
5838
6340
  "disabled"?: boolean;
5839
6341
  /**
@@ -5866,10 +6368,12 @@ declare namespace LocalJSX {
5866
6368
  "routerAnimation"?: AnimationBuilder | undefined;
5867
6369
  /**
5868
6370
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
6371
+ * @default 'forward'
5869
6372
  */
5870
6373
  "routerDirection"?: RouterDirection;
5871
6374
  /**
5872
6375
  * If `true`, the fab button will show when in a fab-list.
6376
+ * @default false
5873
6377
  */
5874
6378
  "show"?: boolean;
5875
6379
  /**
@@ -5882,20 +6386,24 @@ declare namespace LocalJSX {
5882
6386
  "target"?: string | undefined;
5883
6387
  /**
5884
6388
  * 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).
6389
+ * @default false
5885
6390
  */
5886
6391
  "translucent"?: boolean;
5887
6392
  /**
5888
6393
  * The type of the button.
6394
+ * @default 'button'
5889
6395
  */
5890
6396
  "type"?: 'submit' | 'reset' | 'button';
5891
6397
  }
5892
6398
  interface IonFabList {
5893
6399
  /**
5894
6400
  * If `true`, the fab list will show all fab buttons in the list.
6401
+ * @default false
5895
6402
  */
5896
6403
  "activated"?: boolean;
5897
6404
  /**
5898
6405
  * The side the fab list will show on relative to the main fab button.
6406
+ * @default 'bottom'
5899
6407
  */
5900
6408
  "side"?: 'start' | 'end' | 'top' | 'bottom';
5901
6409
  }
@@ -5910,12 +6418,14 @@ declare namespace LocalJSX {
5910
6418
  "mode"?: "ios" | "md";
5911
6419
  /**
5912
6420
  * 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.
6421
+ * @default false
5913
6422
  */
5914
6423
  "translucent"?: boolean;
5915
6424
  }
5916
6425
  interface IonGrid {
5917
6426
  /**
5918
6427
  * If `true`, the grid will have a fixed width based on the screen size.
6428
+ * @default false
5919
6429
  */
5920
6430
  "fixed"?: boolean;
5921
6431
  }
@@ -5930,6 +6440,7 @@ declare namespace LocalJSX {
5930
6440
  "mode"?: "ios" | "md";
5931
6441
  /**
5932
6442
  * 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.
6443
+ * @default false
5933
6444
  */
5934
6445
  "translucent"?: boolean;
5935
6446
  }
@@ -5958,6 +6469,7 @@ declare namespace LocalJSX {
5958
6469
  interface IonInfiniteScroll {
5959
6470
  /**
5960
6471
  * If `true`, the infinite scroll will be hidden and scroll event listeners will be removed. Set this to true to disable the infinite scroll from actively trying to receive new data while scrolling. This is useful when it is known that there is no more data that can be added, and the infinite scroll is no longer needed.
6472
+ * @default false
5961
6473
  */
5962
6474
  "disabled"?: boolean;
5963
6475
  /**
@@ -5966,10 +6478,12 @@ declare namespace LocalJSX {
5966
6478
  "onIonInfinite"?: (event: IonInfiniteScrollCustomEvent<void>) => void;
5967
6479
  /**
5968
6480
  * The position of the infinite scroll element. The value can be either `top` or `bottom`.
6481
+ * @default 'bottom'
5969
6482
  */
5970
6483
  "position"?: 'top' | 'bottom';
5971
6484
  /**
5972
6485
  * 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.
6486
+ * @default '15%'
5973
6487
  */
5974
6488
  "threshold"?: string;
5975
6489
  }
@@ -5986,22 +6500,27 @@ declare namespace LocalJSX {
5986
6500
  interface IonInput {
5987
6501
  /**
5988
6502
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
6503
+ * @default 'off'
5989
6504
  */
5990
6505
  "autocapitalize"?: string;
5991
6506
  /**
5992
6507
  * Indicates whether the value of the control can be automatically completed by the browser.
6508
+ * @default 'off'
5993
6509
  */
5994
6510
  "autocomplete"?: AutocompleteTypes;
5995
6511
  /**
5996
6512
  * Whether auto correction should be enabled when the user is entering/editing the text value.
6513
+ * @default 'off'
5997
6514
  */
5998
6515
  "autocorrect"?: 'on' | 'off';
5999
6516
  /**
6000
6517
  * Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element. This may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.
6518
+ * @default false
6001
6519
  */
6002
6520
  "autofocus"?: boolean;
6003
6521
  /**
6004
6522
  * If `true`, a clear icon will appear in the input when there is a value. Clicking it clears the input.
6523
+ * @default false
6005
6524
  */
6006
6525
  "clearInput"?: boolean;
6007
6526
  /**
@@ -6018,6 +6537,7 @@ declare namespace LocalJSX {
6018
6537
  "color"?: Color;
6019
6538
  /**
6020
6539
  * If `true`, a character counter will display the ratio of characters used and the total character limit. Developers must also set the `maxlength` property for the counter to be calculated correctly.
6540
+ * @default false
6021
6541
  */
6022
6542
  "counter"?: boolean;
6023
6543
  /**
@@ -6030,6 +6550,7 @@ declare namespace LocalJSX {
6030
6550
  "debounce"?: number;
6031
6551
  /**
6032
6552
  * If `true`, the user cannot interact with the input.
6553
+ * @default false
6033
6554
  */
6034
6555
  "disabled"?: boolean;
6035
6556
  /**
@@ -6058,6 +6579,7 @@ declare namespace LocalJSX {
6058
6579
  "label"?: string;
6059
6580
  /**
6060
6581
  * 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 ("...").
6582
+ * @default 'start'
6061
6583
  */
6062
6584
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
6063
6585
  /**
@@ -6086,6 +6608,7 @@ declare namespace LocalJSX {
6086
6608
  "multiple"?: boolean;
6087
6609
  /**
6088
6610
  * The name of the control, which is submitted with the form data.
6611
+ * @default this.inputId
6089
6612
  */
6090
6613
  "name"?: string;
6091
6614
  /**
@@ -6114,10 +6637,12 @@ declare namespace LocalJSX {
6114
6637
  "placeholder"?: string;
6115
6638
  /**
6116
6639
  * If `true`, the user cannot modify the value.
6640
+ * @default false
6117
6641
  */
6118
6642
  "readonly"?: boolean;
6119
6643
  /**
6120
6644
  * If `true`, the user must fill in a value before submitting a form.
6645
+ * @default false
6121
6646
  */
6122
6647
  "required"?: boolean;
6123
6648
  /**
@@ -6126,6 +6651,7 @@ declare namespace LocalJSX {
6126
6651
  "shape"?: 'round';
6127
6652
  /**
6128
6653
  * If `true`, the element will have its spelling and grammar checked.
6654
+ * @default false
6129
6655
  */
6130
6656
  "spellcheck"?: boolean;
6131
6657
  /**
@@ -6134,10 +6660,95 @@ declare namespace LocalJSX {
6134
6660
  "step"?: string;
6135
6661
  /**
6136
6662
  * The type of control to display. The default type is text.
6663
+ * @default 'text'
6137
6664
  */
6138
6665
  "type"?: TextFieldTypes;
6139
6666
  /**
6140
6667
  * The value of the input.
6668
+ * @default ''
6669
+ */
6670
+ "value"?: string | number | null;
6671
+ }
6672
+ interface IonInputOtp {
6673
+ /**
6674
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
6675
+ * @default 'off'
6676
+ */
6677
+ "autocapitalize"?: string;
6678
+ /**
6679
+ * 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).
6680
+ */
6681
+ "color"?: Color;
6682
+ /**
6683
+ * If `true`, the user cannot interact with the input.
6684
+ * @default false
6685
+ */
6686
+ "disabled"?: boolean;
6687
+ /**
6688
+ * The fill for the input boxes. If `"solid"` the input boxes will have a background. If `"outline"` the input boxes will be transparent with a border.
6689
+ * @default 'outline'
6690
+ */
6691
+ "fill"?: 'outline' | 'solid';
6692
+ /**
6693
+ * A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`. For numbers (type="number"): "numeric" For text (type="text"): "text"
6694
+ */
6695
+ "inputmode"?: 'none' | 'text' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'search';
6696
+ /**
6697
+ * The number of input boxes to display.
6698
+ * @default 4
6699
+ */
6700
+ "length"?: number;
6701
+ /**
6702
+ * Emitted when the input group loses focus.
6703
+ */
6704
+ "onIonBlur"?: (event: IonInputOtpCustomEvent<FocusEvent>) => void;
6705
+ /**
6706
+ * The `ionChange` event is fired when the user modifies the input's value. Unlike the `ionInput` event, the `ionChange` event is only fired when changes are committed, not as the user types. The `ionChange` event fires when the `<ion-input-otp>` component loses focus after its value has changed. This event will not emit when programmatically setting the `value` property.
6707
+ */
6708
+ "onIonChange"?: (event: IonInputOtpCustomEvent<InputOtpChangeEventDetail>) => void;
6709
+ /**
6710
+ * Emitted when all input boxes have been filled with valid values.
6711
+ */
6712
+ "onIonComplete"?: (event: IonInputOtpCustomEvent<InputOtpCompleteEventDetail>) => void;
6713
+ /**
6714
+ * Emitted when the input group has focus.
6715
+ */
6716
+ "onIonFocus"?: (event: IonInputOtpCustomEvent<FocusEvent>) => void;
6717
+ /**
6718
+ * The `ionInput` event is fired each time the user modifies the input's value. Unlike the `ionChange` event, the `ionInput` event is fired for each alteration to the input's value. This typically happens for each keystroke as the user types. For elements that accept text input (`type=text`, `type=tel`, etc.), the interface is [`InputEvent`](https://developer.mozilla.org/en-US/docs/Web/API/InputEvent); for others, the interface is [`Event`](https://developer.mozilla.org/en-US/docs/Web/API/Event). If the input is cleared on edit, the type is `null`.
6719
+ */
6720
+ "onIonInput"?: (event: IonInputOtpCustomEvent<InputOtpInputEventDetail>) => void;
6721
+ /**
6722
+ * A regex pattern string for allowed characters. Defaults based on type. For numbers (`type="number"`): `"[\p{N}]"` For text (`type="text"`): `"[\p{L}\p{N}]"`
6723
+ */
6724
+ "pattern"?: string;
6725
+ /**
6726
+ * If `true`, the user cannot modify the value.
6727
+ * @default false
6728
+ */
6729
+ "readonly"?: boolean;
6730
+ /**
6731
+ * Where separators should be shown between input boxes. Can be a comma-separated string or an array of numbers. For example: `"3"` will show a separator after the 3rd input box. `[1,4]` will show a separator after the 1st and 4th input boxes. `"all"` will show a separator between every input box.
6732
+ */
6733
+ "separators"?: 'all' | string | number[];
6734
+ /**
6735
+ * The shape of the input boxes. If "round" they will have an increased border radius. If "rectangular" they will have no border radius. If "soft" they will have a soft border radius.
6736
+ * @default 'round'
6737
+ */
6738
+ "shape"?: 'round' | 'rectangular' | 'soft';
6739
+ /**
6740
+ * The size of the input boxes.
6741
+ * @default 'medium'
6742
+ */
6743
+ "size"?: 'small' | 'medium' | 'large';
6744
+ /**
6745
+ * The type of input allowed in the input boxes.
6746
+ * @default 'number'
6747
+ */
6748
+ "type"?: 'text' | 'number';
6749
+ /**
6750
+ * The value of the input group.
6751
+ * @default ''
6141
6752
  */
6142
6753
  "value"?: string | number | null;
6143
6754
  }
@@ -6162,6 +6773,7 @@ declare namespace LocalJSX {
6162
6773
  interface IonItem {
6163
6774
  /**
6164
6775
  * If `true`, a button tag will be rendered and the item will be tappable.
6776
+ * @default false
6165
6777
  */
6166
6778
  "button"?: boolean;
6167
6779
  /**
@@ -6174,10 +6786,12 @@ declare namespace LocalJSX {
6174
6786
  "detail"?: boolean;
6175
6787
  /**
6176
6788
  * The icon to use when `detail` is set to `true`.
6789
+ * @default chevronForward
6177
6790
  */
6178
6791
  "detailIcon"?: string;
6179
6792
  /**
6180
6793
  * If `true`, the user cannot interact with the item.
6794
+ * @default false
6181
6795
  */
6182
6796
  "disabled"?: boolean;
6183
6797
  /**
@@ -6206,6 +6820,7 @@ declare namespace LocalJSX {
6206
6820
  "routerAnimation"?: AnimationBuilder | undefined;
6207
6821
  /**
6208
6822
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
6823
+ * @default 'forward'
6209
6824
  */
6210
6825
  "routerDirection"?: RouterDirection;
6211
6826
  /**
@@ -6214,6 +6829,7 @@ declare namespace LocalJSX {
6214
6829
  "target"?: string | undefined;
6215
6830
  /**
6216
6831
  * The type of the button. Only used when an `onclick` or `button` property is present.
6832
+ * @default 'button'
6217
6833
  */
6218
6834
  "type"?: 'submit' | 'reset' | 'button';
6219
6835
  }
@@ -6228,6 +6844,7 @@ declare namespace LocalJSX {
6228
6844
  "mode"?: "ios" | "md";
6229
6845
  /**
6230
6846
  * When it's set to `true`, the item-divider will stay visible when it reaches the top of the viewport until the next `ion-item-divider` replaces it. This feature relies in `position:sticky`: https://caniuse.com/#feat=css-sticky
6847
+ * @default false
6231
6848
  */
6232
6849
  "sticky"?: boolean;
6233
6850
  }
@@ -6240,6 +6857,7 @@ declare namespace LocalJSX {
6240
6857
  "color"?: Color;
6241
6858
  /**
6242
6859
  * If `true`, the user cannot interact with the item option.
6860
+ * @default false
6243
6861
  */
6244
6862
  "disabled"?: boolean;
6245
6863
  /**
@@ -6248,6 +6866,7 @@ declare namespace LocalJSX {
6248
6866
  "download"?: string | undefined;
6249
6867
  /**
6250
6868
  * If `true`, the option will expand to take up the available width and cover any other options.
6869
+ * @default false
6251
6870
  */
6252
6871
  "expandable"?: boolean;
6253
6872
  /**
@@ -6268,6 +6887,7 @@ declare namespace LocalJSX {
6268
6887
  "target"?: string | undefined;
6269
6888
  /**
6270
6889
  * The type of the button.
6890
+ * @default 'button'
6271
6891
  */
6272
6892
  "type"?: 'submit' | 'reset' | 'button';
6273
6893
  }
@@ -6278,12 +6898,14 @@ declare namespace LocalJSX {
6278
6898
  "onIonSwipe"?: (event: IonItemOptionsCustomEvent<any>) => void;
6279
6899
  /**
6280
6900
  * 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.
6901
+ * @default 'end'
6281
6902
  */
6282
6903
  "side"?: Side;
6283
6904
  }
6284
6905
  interface IonItemSliding {
6285
6906
  /**
6286
6907
  * If `true`, the user cannot interact with the sliding item.
6908
+ * @default false
6287
6909
  */
6288
6910
  "disabled"?: boolean;
6289
6911
  /**
@@ -6308,6 +6930,7 @@ declare namespace LocalJSX {
6308
6930
  interface IonList {
6309
6931
  /**
6310
6932
  * If `true`, the list will have margin around it and rounded corners.
6933
+ * @default false
6311
6934
  */
6312
6935
  "inset"?: boolean;
6313
6936
  /**
@@ -6336,10 +6959,12 @@ declare namespace LocalJSX {
6336
6959
  interface IonLoading {
6337
6960
  /**
6338
6961
  * If `true`, the loading indicator will animate.
6962
+ * @default true
6339
6963
  */
6340
6964
  "animated"?: boolean;
6341
6965
  /**
6342
6966
  * If `true`, the loading indicator will be dismissed when the backdrop is clicked.
6967
+ * @default false
6343
6968
  */
6344
6969
  "backdropDismiss"?: boolean;
6345
6970
  /**
@@ -6348,6 +6973,7 @@ declare namespace LocalJSX {
6348
6973
  "cssClass"?: string | string[];
6349
6974
  /**
6350
6975
  * Number of milliseconds to wait before dismissing the loading indicator.
6976
+ * @default 0
6351
6977
  */
6352
6978
  "duration"?: number;
6353
6979
  /**
@@ -6360,10 +6986,12 @@ declare namespace LocalJSX {
6360
6986
  "htmlAttributes"?: { [key: string]: any };
6361
6987
  /**
6362
6988
  * If `true`, the loading indicator will open. If `false`, the loading indicator will close. Use this if you need finer grained control over presentation, otherwise just use the loadingController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the loading indicator dismisses. You will need to do that in your code.
6989
+ * @default false
6363
6990
  */
6364
6991
  "isOpen"?: boolean;
6365
6992
  /**
6366
6993
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
6994
+ * @default true
6367
6995
  */
6368
6996
  "keyboardClose"?: boolean;
6369
6997
  /**
@@ -6412,6 +7040,7 @@ declare namespace LocalJSX {
6412
7040
  "onWillPresent"?: (event: IonLoadingCustomEvent<void>) => void;
6413
7041
  /**
6414
7042
  * If `true`, a backdrop will be displayed behind the loading indicator.
7043
+ * @default true
6415
7044
  */
6416
7045
  "showBackdrop"?: boolean;
6417
7046
  /**
@@ -6420,6 +7049,7 @@ declare namespace LocalJSX {
6420
7049
  "spinner"?: SpinnerTypes | null;
6421
7050
  /**
6422
7051
  * 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).
7052
+ * @default false
6423
7053
  */
6424
7054
  "translucent"?: boolean;
6425
7055
  /**
@@ -6434,10 +7064,12 @@ declare namespace LocalJSX {
6434
7064
  "contentId"?: string;
6435
7065
  /**
6436
7066
  * If `true`, the menu is disabled.
7067
+ * @default false
6437
7068
  */
6438
7069
  "disabled"?: boolean;
6439
7070
  /**
6440
7071
  * The edge threshold for dragging the menu open. If a drag/swipe happens over this value, the menu is not triggered.
7072
+ * @default 50
6441
7073
  */
6442
7074
  "maxEdgeStart"?: number;
6443
7075
  /**
@@ -6462,10 +7094,12 @@ declare namespace LocalJSX {
6462
7094
  "onIonWillOpen"?: (event: IonMenuCustomEvent<void>) => void;
6463
7095
  /**
6464
7096
  * Which side of the view the menu should be placed.
7097
+ * @default 'start'
6465
7098
  */
6466
7099
  "side"?: Side;
6467
7100
  /**
6468
7101
  * If `true`, swiping the menu is enabled.
7102
+ * @default true
6469
7103
  */
6470
7104
  "swipeGesture"?: boolean;
6471
7105
  /**
@@ -6476,6 +7110,7 @@ declare namespace LocalJSX {
6476
7110
  interface IonMenuButton {
6477
7111
  /**
6478
7112
  * Automatically hides the menu button when the corresponding menu is not active
7113
+ * @default true
6479
7114
  */
6480
7115
  "autoHide"?: boolean;
6481
7116
  /**
@@ -6484,6 +7119,7 @@ declare namespace LocalJSX {
6484
7119
  "color"?: Color;
6485
7120
  /**
6486
7121
  * If `true`, the user cannot interact with the menu button.
7122
+ * @default false
6487
7123
  */
6488
7124
  "disabled"?: boolean;
6489
7125
  /**
@@ -6496,12 +7132,14 @@ declare namespace LocalJSX {
6496
7132
  "mode"?: "ios" | "md";
6497
7133
  /**
6498
7134
  * The type of the button.
7135
+ * @default 'button'
6499
7136
  */
6500
7137
  "type"?: 'submit' | 'reset' | 'button';
6501
7138
  }
6502
7139
  interface IonMenuToggle {
6503
7140
  /**
6504
7141
  * Automatically hides the content when the corresponding menu is not active. By default, it's `true`. Change it to `false` in order to keep `ion-menu-toggle` always visible regardless the state of the menu.
7142
+ * @default true
6505
7143
  */
6506
7144
  "autoHide"?: boolean;
6507
7145
  /**
@@ -6512,14 +7150,17 @@ declare namespace LocalJSX {
6512
7150
  interface IonModal {
6513
7151
  /**
6514
7152
  * If `true`, the modal will animate.
7153
+ * @default true
6515
7154
  */
6516
7155
  "animated"?: boolean;
6517
7156
  /**
6518
7157
  * A decimal value between 0 and 1 that indicates the point after which the backdrop will begin to fade in when using a sheet modal. Prior to this point, the backdrop will be hidden and the content underneath the sheet can be interacted with. This value is exclusive meaning the backdrop will become active after the value specified.
7158
+ * @default 0
6519
7159
  */
6520
7160
  "backdropBreakpoint"?: number;
6521
7161
  /**
6522
7162
  * If `true`, the modal will be dismissed when the backdrop is clicked.
7163
+ * @default true
6523
7164
  */
6524
7165
  "backdropDismiss"?: boolean;
6525
7166
  /**
@@ -6528,6 +7169,7 @@ declare namespace LocalJSX {
6528
7169
  "breakpoints"?: number[];
6529
7170
  /**
6530
7171
  * Determines whether or not a modal can dismiss when calling the `dismiss` method. If the value is `true` or the value's function returns `true`, the modal will close when trying to dismiss. If the value is `false` or the value's function returns `false`, the modal will not close when trying to dismiss. See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
7172
+ * @default true
6531
7173
  */
6532
7174
  "canDismiss"?: boolean | ((data?: any, role?: string) => Promise<boolean>);
6533
7175
  /**
@@ -6536,10 +7178,12 @@ declare namespace LocalJSX {
6536
7178
  "enterAnimation"?: AnimationBuilder;
6537
7179
  /**
6538
7180
  * Controls whether scrolling or dragging within the sheet modal expands it to a larger breakpoint. This only takes effect when `breakpoints` and `initialBreakpoint` are set. If `true`, scrolling or dragging anywhere in the modal will first expand it to the next breakpoint. Once fully expanded, scrolling will affect the content. If `false`, scrolling will always affect the content. The modal will only expand when dragging the header or handle. The modal will close when dragging the header or handle. It can also be closed when dragging the content, but only if the content is scrolled to the top.
7181
+ * @default true
6539
7182
  */
6540
7183
  "expandToScroll"?: boolean;
6541
7184
  /**
6542
7185
  * If `true`, focus will not be allowed to move outside of this overlay. If `false`, focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
7186
+ * @default true
6543
7187
  */
6544
7188
  "focusTrap"?: boolean;
6545
7189
  /**
@@ -6548,6 +7192,7 @@ declare namespace LocalJSX {
6548
7192
  "handle"?: boolean;
6549
7193
  /**
6550
7194
  * The interaction behavior for the sheet modal when the handle is pressed. Defaults to `"none"`, which means the modal will not change size or position when the handle is pressed. Set to `"cycle"` to let the modal cycle between available breakpoints when pressed. Handle behavior is unavailable when the `handle` property is set to `false` or when the `breakpoints` property is not set (using a fullscreen or card modal).
7195
+ * @default 'none'
6551
7196
  */
6552
7197
  "handleBehavior"?: ModalHandleBehavior;
6553
7198
  /**
@@ -6560,14 +7205,17 @@ declare namespace LocalJSX {
6560
7205
  "initialBreakpoint"?: number;
6561
7206
  /**
6562
7207
  * If `true`, the modal will open. If `false`, the modal will close. Use this if you need finer grained control over presentation, otherwise just use the modalController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the modal dismisses. You will need to do that in your code.
7208
+ * @default false
6563
7209
  */
6564
7210
  "isOpen"?: boolean;
6565
7211
  /**
6566
7212
  * If `true`, the component passed into `ion-modal` will automatically be mounted when the modal is created. The component will remain mounted even when the modal is dismissed. However, the component will be destroyed when the modal is destroyed. This property is not reactive and should only be used when initially creating a modal. Note: This feature only applies to inline modals in JavaScript frameworks such as Angular, React, and Vue.
7213
+ * @default false
6567
7214
  */
6568
7215
  "keepContentsMounted"?: boolean;
6569
7216
  /**
6570
7217
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
7218
+ * @default true
6571
7219
  */
6572
7220
  "keyboardClose"?: boolean;
6573
7221
  /**
@@ -6620,6 +7268,7 @@ declare namespace LocalJSX {
6620
7268
  "presentingElement"?: HTMLElement;
6621
7269
  /**
6622
7270
  * 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.
7271
+ * @default true
6623
7272
  */
6624
7273
  "showBackdrop"?: boolean;
6625
7274
  /**
@@ -6630,6 +7279,7 @@ declare namespace LocalJSX {
6630
7279
  interface IonNav {
6631
7280
  /**
6632
7281
  * If `true`, the nav should animate the transition of components.
7282
+ * @default true
6633
7283
  */
6634
7284
  "animated"?: boolean;
6635
7285
  /**
@@ -6672,6 +7322,7 @@ declare namespace LocalJSX {
6672
7322
  "routerAnimation"?: AnimationBuilder;
6673
7323
  /**
6674
7324
  * The transition direction when navigating to another page.
7325
+ * @default 'forward'
6675
7326
  */
6676
7327
  "routerDirection"?: RouterDirection;
6677
7328
  }
@@ -6694,10 +7345,12 @@ declare namespace LocalJSX {
6694
7345
  interface IonPickerColumn {
6695
7346
  /**
6696
7347
  * 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).
7348
+ * @default 'primary'
6697
7349
  */
6698
7350
  "color"?: Color;
6699
7351
  /**
6700
7352
  * If `true`, the user cannot interact with the picker.
7353
+ * @default false
6701
7354
  */
6702
7355
  "disabled"?: boolean;
6703
7356
  /**
@@ -6716,10 +7369,12 @@ declare namespace LocalJSX {
6716
7369
  interface IonPickerColumnOption {
6717
7370
  /**
6718
7371
  * 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).
7372
+ * @default 'primary'
6719
7373
  */
6720
7374
  "color"?: Color;
6721
7375
  /**
6722
7376
  * If `true`, the user cannot interact with the picker column option.
7377
+ * @default false
6723
7378
  */
6724
7379
  "disabled"?: boolean;
6725
7380
  /**
@@ -6730,18 +7385,22 @@ declare namespace LocalJSX {
6730
7385
  interface IonPickerLegacy {
6731
7386
  /**
6732
7387
  * If `true`, the picker will animate.
7388
+ * @default true
6733
7389
  */
6734
7390
  "animated"?: boolean;
6735
7391
  /**
6736
7392
  * If `true`, the picker will be dismissed when the backdrop is clicked.
7393
+ * @default true
6737
7394
  */
6738
7395
  "backdropDismiss"?: boolean;
6739
7396
  /**
6740
7397
  * Array of buttons to be displayed at the top of the picker.
7398
+ * @default []
6741
7399
  */
6742
7400
  "buttons"?: PickerButton[];
6743
7401
  /**
6744
7402
  * Array of columns to be displayed in the picker.
7403
+ * @default []
6745
7404
  */
6746
7405
  "columns"?: PickerColumn[];
6747
7406
  /**
@@ -6750,6 +7409,7 @@ declare namespace LocalJSX {
6750
7409
  "cssClass"?: string | string[];
6751
7410
  /**
6752
7411
  * Number of milliseconds to wait before dismissing the picker.
7412
+ * @default 0
6753
7413
  */
6754
7414
  "duration"?: number;
6755
7415
  /**
@@ -6762,10 +7422,12 @@ declare namespace LocalJSX {
6762
7422
  "htmlAttributes"?: { [key: string]: any };
6763
7423
  /**
6764
7424
  * If `true`, the picker will open. If `false`, the picker will close. Use this if you need finer grained control over presentation, otherwise just use the pickerController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the picker dismisses. You will need to do that in your code.
7425
+ * @default false
6765
7426
  */
6766
7427
  "isOpen"?: boolean;
6767
7428
  /**
6768
7429
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
7430
+ * @default true
6769
7431
  */
6770
7432
  "keyboardClose"?: boolean;
6771
7433
  /**
@@ -6810,6 +7472,7 @@ declare namespace LocalJSX {
6810
7472
  "onWillPresent"?: (event: IonPickerLegacyCustomEvent<void>) => void;
6811
7473
  /**
6812
7474
  * If `true`, a backdrop will be displayed behind the picker.
7475
+ * @default true
6813
7476
  */
6814
7477
  "showBackdrop"?: boolean;
6815
7478
  /**
@@ -6830,14 +7493,17 @@ declare namespace LocalJSX {
6830
7493
  "alignment"?: PositionAlign;
6831
7494
  /**
6832
7495
  * If `true`, the popover will animate.
7496
+ * @default true
6833
7497
  */
6834
7498
  "animated"?: boolean;
6835
7499
  /**
6836
7500
  * If `true`, the popover will display an arrow that points at the `reference` when running in `ios` mode. Does not apply in `md` mode.
7501
+ * @default true
6837
7502
  */
6838
7503
  "arrow"?: boolean;
6839
7504
  /**
6840
7505
  * If `true`, the popover will be dismissed when the backdrop is clicked.
7506
+ * @default true
6841
7507
  */
6842
7508
  "backdropDismiss"?: boolean;
6843
7509
  /**
@@ -6850,6 +7516,7 @@ declare namespace LocalJSX {
6850
7516
  "componentProps"?: ComponentProps;
6851
7517
  /**
6852
7518
  * If `true`, the popover will be automatically dismissed when the content has been clicked.
7519
+ * @default false
6853
7520
  */
6854
7521
  "dismissOnSelect"?: boolean;
6855
7522
  /**
@@ -6862,6 +7529,7 @@ declare namespace LocalJSX {
6862
7529
  "event"?: any;
6863
7530
  /**
6864
7531
  * If `true`, focus will not be allowed to move outside of this overlay. If `false`, focus will be allowed to move outside of the overlay. In most scenarios this property should remain set to `true`. Setting this property to `false` can cause severe accessibility issues as users relying on assistive technologies may be able to move focus into a confusing state. We recommend only setting this to `false` when absolutely necessary. Developers may want to consider disabling focus trapping if this overlay presents a non-Ionic overlay from a 3rd party library. Developers would disable focus trapping on the Ionic overlay when presenting the 3rd party overlay and then re-enable focus trapping when dismissing the 3rd party overlay and moving focus back to the Ionic overlay.
7532
+ * @default true
6865
7533
  */
6866
7534
  "focusTrap"?: boolean;
6867
7535
  /**
@@ -6870,14 +7538,17 @@ declare namespace LocalJSX {
6870
7538
  "htmlAttributes"?: { [key: string]: any };
6871
7539
  /**
6872
7540
  * If `true`, the popover will open. If `false`, the popover will close. Use this if you need finer grained control over presentation, otherwise just use the popoverController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the popover dismisses. You will need to do that in your code.
7541
+ * @default false
6873
7542
  */
6874
7543
  "isOpen"?: boolean;
6875
7544
  /**
6876
7545
  * If `true`, the component passed into `ion-popover` will automatically be mounted when the popover is created. The component will remain mounted even when the popover is dismissed. However, the component will be destroyed when the popover is destroyed. This property is not reactive and should only be used when initially creating a popover. Note: This feature only applies to inline popovers in JavaScript frameworks such as Angular, React, and Vue.
7546
+ * @default false
6877
7547
  */
6878
7548
  "keepContentsMounted"?: boolean;
6879
7549
  /**
6880
7550
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
7551
+ * @default true
6881
7552
  */
6882
7553
  "keyboardClose"?: boolean;
6883
7554
  /**
@@ -6922,22 +7593,27 @@ declare namespace LocalJSX {
6922
7593
  "onWillPresent"?: (event: IonPopoverCustomEvent<void>) => void;
6923
7594
  /**
6924
7595
  * Describes what to position the popover relative to. If `"trigger"`, the popover will be positioned relative to the trigger button. If passing in an event, this is determined via event.target. If `"event"`, the popover will be positioned relative to the x/y coordinates of the trigger action. If passing in an event, this is determined via event.clientX and event.clientY.
7596
+ * @default 'trigger'
6925
7597
  */
6926
7598
  "reference"?: PositionReference;
6927
7599
  /**
6928
7600
  * If `true`, a backdrop will be displayed behind the popover. This property controls whether or not the backdrop darkens the screen when the popover is presented. It does not control whether or not the backdrop is active or present in the DOM.
7601
+ * @default true
6929
7602
  */
6930
7603
  "showBackdrop"?: boolean;
6931
7604
  /**
6932
7605
  * Describes which side of the `reference` point to position the popover on. The `"start"` and `"end"` values are RTL-aware, and the `"left"` and `"right"` values are not.
7606
+ * @default 'bottom'
6933
7607
  */
6934
7608
  "side"?: PositionSide;
6935
7609
  /**
6936
7610
  * Describes how to calculate the popover width. If `"cover"`, the popover width will match the width of the trigger. If `"auto"`, the popover width will be set to a static default value.
7611
+ * @default 'auto'
6937
7612
  */
6938
7613
  "size"?: PopoverSize;
6939
7614
  /**
6940
7615
  * 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).
7616
+ * @default false
6941
7617
  */
6942
7618
  "translucent"?: boolean;
6943
7619
  /**
@@ -6946,12 +7622,14 @@ declare namespace LocalJSX {
6946
7622
  "trigger"?: string | undefined;
6947
7623
  /**
6948
7624
  * Describes what kind of interaction with the trigger that should cause the popover to open. Does not apply when the `trigger` property is `undefined`. If `"click"`, the popover will be presented when the trigger is left clicked. If `"hover"`, the popover will be presented when a pointer hovers over the trigger. If `"context-menu"`, the popover will be presented when the trigger is right clicked on desktop and long pressed on mobile. This will also prevent your device's normal context menu from appearing.
7625
+ * @default 'click'
6949
7626
  */
6950
7627
  "triggerAction"?: TriggerAction;
6951
7628
  }
6952
7629
  interface IonProgressBar {
6953
7630
  /**
6954
7631
  * If the buffer and value are smaller than 1, the buffer circles will show. The buffer should be between [0, 1].
7632
+ * @default 1
6955
7633
  */
6956
7634
  "buffer"?: number;
6957
7635
  /**
@@ -6964,14 +7642,17 @@ declare namespace LocalJSX {
6964
7642
  "mode"?: "ios" | "md";
6965
7643
  /**
6966
7644
  * If true, reverse the progress bar direction.
7645
+ * @default false
6967
7646
  */
6968
7647
  "reversed"?: boolean;
6969
7648
  /**
6970
7649
  * 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).
7650
+ * @default 'determinate'
6971
7651
  */
6972
7652
  "type"?: 'determinate' | 'indeterminate';
6973
7653
  /**
6974
7654
  * The value determines how much of the active bar should display when the `type` is `"determinate"`. The value should be between [0, 1].
7655
+ * @default 0
6975
7656
  */
6976
7657
  "value"?: number;
6977
7658
  }
@@ -6986,6 +7667,7 @@ declare namespace LocalJSX {
6986
7667
  "color"?: Color;
6987
7668
  /**
6988
7669
  * If `true`, the user cannot interact with the radio.
7670
+ * @default false
6989
7671
  */
6990
7672
  "disabled"?: boolean;
6991
7673
  /**
@@ -6994,6 +7676,7 @@ declare namespace LocalJSX {
6994
7676
  "justify"?: 'start' | 'end' | 'space-between';
6995
7677
  /**
6996
7678
  * Where to place the label relative to the radio. `"start"`: The label will appear to the left of the radio in LTR and to the right in RTL. `"end"`: The label will appear to the right of the radio in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
7679
+ * @default 'start'
6997
7680
  */
6998
7681
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
6999
7682
  /**
@@ -7002,6 +7685,7 @@ declare namespace LocalJSX {
7002
7685
  "mode"?: "ios" | "md";
7003
7686
  /**
7004
7687
  * The name of the control, which is submitted with the form data.
7688
+ * @default this.inputId
7005
7689
  */
7006
7690
  "name"?: string;
7007
7691
  /**
@@ -7020,6 +7704,7 @@ declare namespace LocalJSX {
7020
7704
  interface IonRadioGroup {
7021
7705
  /**
7022
7706
  * If `true`, the radios can be deselected.
7707
+ * @default false
7023
7708
  */
7024
7709
  "allowEmptySelection"?: boolean;
7025
7710
  /**
@@ -7036,6 +7721,7 @@ declare namespace LocalJSX {
7036
7721
  "helperText"?: string;
7037
7722
  /**
7038
7723
  * The name of the control, which is submitted with the form data.
7724
+ * @default this.inputId
7039
7725
  */
7040
7726
  "name"?: string;
7041
7727
  /**
@@ -7062,10 +7748,12 @@ declare namespace LocalJSX {
7062
7748
  "debounce"?: number;
7063
7749
  /**
7064
7750
  * If `true`, the user cannot interact with the range.
7751
+ * @default false
7065
7752
  */
7066
7753
  "disabled"?: boolean;
7067
7754
  /**
7068
7755
  * Show two knobs.
7756
+ * @default false
7069
7757
  */
7070
7758
  "dualKnobs"?: boolean;
7071
7759
  /**
@@ -7074,14 +7762,17 @@ declare namespace LocalJSX {
7074
7762
  "label"?: string;
7075
7763
  /**
7076
7764
  * Where to place the label relative to the range. `"start"`: The label will appear to the left of the range in LTR and to the right in RTL. `"end"`: The label will appear to the right of the range in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the range regardless of the direction.
7765
+ * @default 'start'
7077
7766
  */
7078
7767
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
7079
7768
  /**
7080
7769
  * Maximum integer value of the range.
7770
+ * @default 100
7081
7771
  */
7082
7772
  "max"?: number;
7083
7773
  /**
7084
7774
  * Minimum integer value of the range.
7775
+ * @default 0
7085
7776
  */
7086
7777
  "min"?: number;
7087
7778
  /**
@@ -7090,6 +7781,7 @@ declare namespace LocalJSX {
7090
7781
  "mode"?: "ios" | "md";
7091
7782
  /**
7092
7783
  * The name of the control, which is submitted with the form data.
7784
+ * @default this.rangeId
7093
7785
  */
7094
7786
  "name"?: string;
7095
7787
  /**
@@ -7118,36 +7810,44 @@ declare namespace LocalJSX {
7118
7810
  "onIonKnobMoveStart"?: (event: IonRangeCustomEvent<RangeKnobMoveStartEventDetail>) => void;
7119
7811
  /**
7120
7812
  * If `true`, a pin with integer value is shown when the knob is pressed.
7813
+ * @default false
7121
7814
  */
7122
7815
  "pin"?: boolean;
7123
7816
  /**
7124
7817
  * A callback used to format the pin text. By default the pin text is set to `Math.round(value)`. See https://ionicframework.com/docs/troubleshooting/runtime#accessing-this if you need to access `this` from within the callback.
7818
+ * @default (value: number): number => Math.round(value)
7125
7819
  */
7126
7820
  "pinFormatter"?: PinFormatter;
7127
7821
  /**
7128
7822
  * If `true`, the knob snaps to tick marks evenly spaced based on the step property value.
7823
+ * @default false
7129
7824
  */
7130
7825
  "snaps"?: boolean;
7131
7826
  /**
7132
7827
  * Specifies the value granularity.
7828
+ * @default 1
7133
7829
  */
7134
7830
  "step"?: number;
7135
7831
  /**
7136
7832
  * If `true`, tick marks are displayed based on the step value. Only applies when `snaps` is `true`.
7833
+ * @default true
7137
7834
  */
7138
7835
  "ticks"?: boolean;
7139
7836
  /**
7140
7837
  * the value of the range.
7838
+ * @default 0
7141
7839
  */
7142
7840
  "value"?: RangeValue;
7143
7841
  }
7144
7842
  interface IonRefresher {
7145
7843
  /**
7146
7844
  * Time it takes to close the refresher. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7845
+ * @default '280ms'
7147
7846
  */
7148
7847
  "closeDuration"?: string;
7149
7848
  /**
7150
7849
  * If `true`, the refresher will be hidden.
7850
+ * @default false
7151
7851
  */
7152
7852
  "disabled"?: boolean;
7153
7853
  /**
@@ -7168,18 +7868,22 @@ declare namespace LocalJSX {
7168
7868
  "onIonStart"?: (event: IonRefresherCustomEvent<void>) => void;
7169
7869
  /**
7170
7870
  * How much to multiply the pull speed by. To slow the pull animation down, pass a number less than `1`. To speed up the pull, pass a number greater than `1`. The default value is `1` which is equal to the speed of the cursor. If a negative value is passed in, the factor will be `1` instead. For example: If the value passed is `1.2` and the content is dragged by `10` pixels, instead of `10` pixels the content will be pulled by `12` pixels (an increase of 20 percent). If the value passed is `0.8`, the dragged amount will be `8` pixels, less than the amount the cursor has moved. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7871
+ * @default 1
7171
7872
  */
7172
7873
  "pullFactor"?: number;
7173
7874
  /**
7174
7875
  * The maximum distance of the pull until the refresher will automatically go into the `refreshing` state. Defaults to the result of `pullMin + 60`. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7876
+ * @default this.pullMin + 60
7175
7877
  */
7176
7878
  "pullMax"?: number;
7177
7879
  /**
7178
7880
  * The minimum distance the user must pull down until the refresher will go into the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7881
+ * @default 60
7179
7882
  */
7180
7883
  "pullMin"?: number;
7181
7884
  /**
7182
7885
  * Time it takes the refresher to snap back to the `refreshing` state. Does not apply when the refresher content uses a spinner, enabling the native refresher.
7886
+ * @default '280ms'
7183
7887
  */
7184
7888
  "snapbackDuration"?: string;
7185
7889
  }
@@ -7206,6 +7910,7 @@ declare namespace LocalJSX {
7206
7910
  interface IonReorderGroup {
7207
7911
  /**
7208
7912
  * If `true`, the reorder will be hidden.
7913
+ * @default true
7209
7914
  */
7210
7915
  "disabled"?: boolean;
7211
7916
  /**
@@ -7216,6 +7921,7 @@ declare namespace LocalJSX {
7216
7921
  interface IonRippleEffect {
7217
7922
  /**
7218
7923
  * 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.
7924
+ * @default 'bounded'
7219
7925
  */
7220
7926
  "type"?: 'bounded' | 'unbounded';
7221
7927
  }
@@ -7242,6 +7948,7 @@ declare namespace LocalJSX {
7242
7948
  "onIonRouteDataChanged"?: (event: IonRouteCustomEvent<any>) => void;
7243
7949
  /**
7244
7950
  * 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.
7951
+ * @default ''
7245
7952
  */
7246
7953
  "url"?: string;
7247
7954
  }
@@ -7270,10 +7977,12 @@ declare namespace LocalJSX {
7270
7977
  "onIonRouteWillChange"?: (event: IonRouterCustomEvent<RouterEventDetail>) => void;
7271
7978
  /**
7272
7979
  * The root path to use when matching URLs. By default, this is set to "/", but you can specify an alternate prefix for all URL paths.
7980
+ * @default '/'
7273
7981
  */
7274
7982
  "root"?: string;
7275
7983
  /**
7276
7984
  * 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.
7985
+ * @default true
7277
7986
  */
7278
7987
  "useHash"?: boolean;
7279
7988
  }
@@ -7296,6 +8005,7 @@ declare namespace LocalJSX {
7296
8005
  "routerAnimation"?: AnimationBuilder | undefined;
7297
8006
  /**
7298
8007
  * When using a router, it specifies the transition direction when navigating to another page using `href`.
8008
+ * @default 'forward'
7299
8009
  */
7300
8010
  "routerDirection"?: RouterDirection;
7301
8011
  /**
@@ -7306,6 +8016,7 @@ declare namespace LocalJSX {
7306
8016
  interface IonRouterOutlet {
7307
8017
  /**
7308
8018
  * If `true`, the router-outlet should animate the transition of components.
8019
+ * @default true
7309
8020
  */
7310
8021
  "animated"?: boolean;
7311
8022
  /**
@@ -7314,6 +8025,7 @@ declare namespace LocalJSX {
7314
8025
  "animation"?: AnimationBuilder;
7315
8026
  /**
7316
8027
  * The mode determines which platform styles to use.
8028
+ * @default getIonMode(this)
7317
8029
  */
7318
8030
  "mode"?: "ios" | "md";
7319
8031
  }
@@ -7322,26 +8034,32 @@ declare namespace LocalJSX {
7322
8034
  interface IonSearchbar {
7323
8035
  /**
7324
8036
  * If `true`, enable searchbar animation.
8037
+ * @default false
7325
8038
  */
7326
8039
  "animated"?: boolean;
7327
8040
  /**
7328
8041
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
8042
+ * @default 'off'
7329
8043
  */
7330
8044
  "autocapitalize"?: string;
7331
8045
  /**
7332
8046
  * Set the input's autocomplete property.
8047
+ * @default 'off'
7333
8048
  */
7334
8049
  "autocomplete"?: AutocompleteTypes;
7335
8050
  /**
7336
8051
  * Set the input's autocorrect property.
8052
+ * @default 'off'
7337
8053
  */
7338
8054
  "autocorrect"?: 'on' | 'off';
7339
8055
  /**
7340
8056
  * Set the cancel button icon. Only applies to `md` mode. Defaults to `arrow-back-sharp`.
8057
+ * @default config.get('backButtonIcon', arrowBackSharp) as string
7341
8058
  */
7342
8059
  "cancelButtonIcon"?: string;
7343
8060
  /**
7344
- * Set the the cancel button text. Only applies to `ios` mode.
8061
+ * Set the cancel button text. Only applies to `ios` mode.
8062
+ * @default 'Cancel'
7345
8063
  */
7346
8064
  "cancelButtonText"?: string;
7347
8065
  /**
@@ -7358,6 +8076,7 @@ declare namespace LocalJSX {
7358
8076
  "debounce"?: number;
7359
8077
  /**
7360
8078
  * If `true`, the user cannot interact with the input.
8079
+ * @default false
7361
8080
  */
7362
8081
  "disabled"?: boolean;
7363
8082
  /**
@@ -7382,6 +8101,7 @@ declare namespace LocalJSX {
7382
8101
  "mode"?: "ios" | "md";
7383
8102
  /**
7384
8103
  * If used in a form, set the name of the control, which is submitted with the form data.
8104
+ * @default this.inputId
7385
8105
  */
7386
8106
  "name"?: string;
7387
8107
  /**
@@ -7410,6 +8130,7 @@ declare namespace LocalJSX {
7410
8130
  "onIonInput"?: (event: IonSearchbarCustomEvent<SearchbarInputEventDetail>) => void;
7411
8131
  /**
7412
8132
  * Set the input's placeholder. `placeholder` 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)
8133
+ * @default 'Search'
7413
8134
  */
7414
8135
  "placeholder"?: string;
7415
8136
  /**
@@ -7418,22 +8139,27 @@ declare namespace LocalJSX {
7418
8139
  "searchIcon"?: string;
7419
8140
  /**
7420
8141
  * 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.
8142
+ * @default 'never'
7421
8143
  */
7422
8144
  "showCancelButton"?: 'never' | 'focus' | 'always';
7423
8145
  /**
7424
8146
  * Sets the behavior for the clear button. Defaults to `"focus"`. Setting to `"focus"` shows the clear button on focus if the input is not empty. Setting to `"never"` hides the clear button. Setting to `"always"` shows the clear button regardless of focus state, but only if the input is not empty.
8147
+ * @default 'always'
7425
8148
  */
7426
8149
  "showClearButton"?: 'never' | 'focus' | 'always';
7427
8150
  /**
7428
8151
  * If `true`, enable spellcheck on the input.
8152
+ * @default false
7429
8153
  */
7430
8154
  "spellcheck"?: boolean;
7431
8155
  /**
7432
8156
  * Set the type of the input.
8157
+ * @default 'search'
7433
8158
  */
7434
8159
  "type"?: 'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url';
7435
8160
  /**
7436
8161
  * the value of the searchbar.
8162
+ * @default ''
7437
8163
  */
7438
8164
  "value"?: string | null;
7439
8165
  }
@@ -7444,6 +8170,7 @@ declare namespace LocalJSX {
7444
8170
  "color"?: Color;
7445
8171
  /**
7446
8172
  * If `true`, the user cannot interact with the segment.
8173
+ * @default false
7447
8174
  */
7448
8175
  "disabled"?: boolean;
7449
8176
  /**
@@ -7456,14 +8183,17 @@ declare namespace LocalJSX {
7456
8183
  "onIonChange"?: (event: IonSegmentCustomEvent<SegmentChangeEventDetail>) => void;
7457
8184
  /**
7458
8185
  * If `true`, the segment buttons will overflow and the user can swipe to see them. In addition, this will disable the gesture to drag the indicator between the buttons in order to swipe to see hidden buttons.
8186
+ * @default false
7459
8187
  */
7460
8188
  "scrollable"?: boolean;
7461
8189
  /**
7462
8190
  * If `true`, navigating to an `ion-segment-button` with the keyboard will focus and select the element. If `false`, keyboard navigation will only focus the `ion-segment-button` element.
8191
+ * @default false
7463
8192
  */
7464
8193
  "selectOnFocus"?: boolean;
7465
8194
  /**
7466
8195
  * If `true`, users will be able to swipe between segment buttons to activate them.
8196
+ * @default true
7467
8197
  */
7468
8198
  "swipeGesture"?: boolean;
7469
8199
  /**
@@ -7478,10 +8208,12 @@ declare namespace LocalJSX {
7478
8208
  "contentId"?: string;
7479
8209
  /**
7480
8210
  * If `true`, the user cannot interact with the segment button.
8211
+ * @default false
7481
8212
  */
7482
8213
  "disabled"?: boolean;
7483
8214
  /**
7484
8215
  * Set the layout of the text and icon in the segment.
8216
+ * @default 'icon-top'
7485
8217
  */
7486
8218
  "layout"?: SegmentButtonLayout;
7487
8219
  /**
@@ -7490,10 +8222,12 @@ declare namespace LocalJSX {
7490
8222
  "mode"?: "ios" | "md";
7491
8223
  /**
7492
8224
  * The type of the button.
8225
+ * @default 'button'
7493
8226
  */
7494
8227
  "type"?: 'submit' | 'reset' | 'button';
7495
8228
  /**
7496
8229
  * The value of the segment button.
8230
+ * @default 'ion-sb-' + ids++
7497
8231
  */
7498
8232
  "value"?: SegmentValue;
7499
8233
  }
@@ -7502,6 +8236,7 @@ declare namespace LocalJSX {
7502
8236
  interface IonSegmentView {
7503
8237
  /**
7504
8238
  * If `true`, the segment view cannot be interacted with.
8239
+ * @default false
7505
8240
  */
7506
8241
  "disabled"?: boolean;
7507
8242
  /**
@@ -7512,6 +8247,7 @@ declare namespace LocalJSX {
7512
8247
  interface IonSelect {
7513
8248
  /**
7514
8249
  * The text to display on the cancel button.
8250
+ * @default 'Cancel'
7515
8251
  */
7516
8252
  "cancelText"?: string;
7517
8253
  /**
@@ -7524,6 +8260,7 @@ declare namespace LocalJSX {
7524
8260
  "compareWith"?: string | SelectCompareFn | null;
7525
8261
  /**
7526
8262
  * If `true`, the user cannot interact with the select.
8263
+ * @default false
7527
8264
  */
7528
8265
  "disabled"?: boolean;
7529
8266
  /**
@@ -7544,10 +8281,12 @@ declare namespace LocalJSX {
7544
8281
  "helperText"?: string;
7545
8282
  /**
7546
8283
  * The interface the select should use: `action-sheet`, `popover`, `alert`, or `modal`.
8284
+ * @default 'alert'
7547
8285
  */
7548
8286
  "interface"?: SelectInterface;
7549
8287
  /**
7550
8288
  * Any additional options that the `alert`, `action-sheet` or `popover` interface can take. See the [ion-alert docs](./alert), the [ion-action-sheet docs](./action-sheet), the [ion-popover docs](./popover), and the [ion-modal docs](./modal) for the create options for each interface. Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.
8289
+ * @default {}
7551
8290
  */
7552
8291
  "interfaceOptions"?: any;
7553
8292
  /**
@@ -7560,6 +8299,7 @@ declare namespace LocalJSX {
7560
8299
  "label"?: string;
7561
8300
  /**
7562
8301
  * Where to place the label relative to the select. `"start"`: The label will appear to the left of the select in LTR and to the right in RTL. `"end"`: The label will appear to the right of the select in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the select when the select is focused or it has a value. Otherwise it will appear on top of the select. `"stacked"`: The label will appear smaller and above the select regardless even when the select 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 ("..."). When using `"floating"` or `"stacked"` we recommend initializing the select with either a `value` or a `placeholder`.
8302
+ * @default 'start'
7563
8303
  */
7564
8304
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7565
8305
  /**
@@ -7568,14 +8308,17 @@ declare namespace LocalJSX {
7568
8308
  "mode"?: "ios" | "md";
7569
8309
  /**
7570
8310
  * If `true`, the select can accept multiple values.
8311
+ * @default false
7571
8312
  */
7572
8313
  "multiple"?: boolean;
7573
8314
  /**
7574
8315
  * The name of the control, which is submitted with the form data.
8316
+ * @default this.inputId
7575
8317
  */
7576
8318
  "name"?: string;
7577
8319
  /**
7578
8320
  * The text to display on the ok button.
8321
+ * @default 'OK'
7579
8322
  */
7580
8323
  "okText"?: string;
7581
8324
  /**
@@ -7604,6 +8347,7 @@ declare namespace LocalJSX {
7604
8347
  "placeholder"?: string;
7605
8348
  /**
7606
8349
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
8350
+ * @default false
7607
8351
  */
7608
8352
  "required"?: boolean;
7609
8353
  /**
@@ -7626,11 +8370,15 @@ declare namespace LocalJSX {
7626
8370
  interface IonSelectModal {
7627
8371
  "header"?: string;
7628
8372
  "multiple"?: boolean;
8373
+ /**
8374
+ * @default []
8375
+ */
7629
8376
  "options"?: SelectModalOption[];
7630
8377
  }
7631
8378
  interface IonSelectOption {
7632
8379
  /**
7633
8380
  * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
8381
+ * @default false
7634
8382
  */
7635
8383
  "disabled"?: boolean;
7636
8384
  /**
@@ -7653,6 +8401,7 @@ declare namespace LocalJSX {
7653
8401
  "multiple"?: boolean;
7654
8402
  /**
7655
8403
  * An array of options for the popover
8404
+ * @default []
7656
8405
  */
7657
8406
  "options"?: SelectPopoverOption[];
7658
8407
  /**
@@ -7663,6 +8412,7 @@ declare namespace LocalJSX {
7663
8412
  interface IonSkeletonText {
7664
8413
  /**
7665
8414
  * If `true`, the skeleton text will animate.
8415
+ * @default false
7666
8416
  */
7667
8417
  "animated"?: boolean;
7668
8418
  }
@@ -7681,6 +8431,7 @@ declare namespace LocalJSX {
7681
8431
  "name"?: SpinnerTypes;
7682
8432
  /**
7683
8433
  * If `true`, the spinner's animation will be paused.
8434
+ * @default false
7684
8435
  */
7685
8436
  "paused"?: boolean;
7686
8437
  }
@@ -7691,6 +8442,7 @@ declare namespace LocalJSX {
7691
8442
  "contentId"?: string;
7692
8443
  /**
7693
8444
  * If `true`, the split pane will be hidden.
8445
+ * @default false
7694
8446
  */
7695
8447
  "disabled"?: boolean;
7696
8448
  /**
@@ -7699,6 +8451,7 @@ declare namespace LocalJSX {
7699
8451
  "onIonSplitPaneVisible"?: (event: IonSplitPaneCustomEvent<{ visible: boolean }>) => void;
7700
8452
  /**
7701
8453
  * When the split-pane should be shown. Can be a CSS media query expression, or a shortcut expression. Can also be a boolean expression.
8454
+ * @default QUERY['lg']
7702
8455
  */
7703
8456
  "when"?: string | boolean;
7704
8457
  }
@@ -7727,12 +8480,14 @@ declare namespace LocalJSX {
7727
8480
  "selectedTab"?: string;
7728
8481
  /**
7729
8482
  * 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).
8483
+ * @default false
7730
8484
  */
7731
8485
  "translucent"?: boolean;
7732
8486
  }
7733
8487
  interface IonTabButton {
7734
8488
  /**
7735
8489
  * If `true`, the user cannot interact with the tab button.
8490
+ * @default false
7736
8491
  */
7737
8492
  "disabled"?: boolean;
7738
8493
  /**
@@ -7757,6 +8512,7 @@ declare namespace LocalJSX {
7757
8512
  "rel"?: string | undefined;
7758
8513
  /**
7759
8514
  * The selected tab component
8515
+ * @default false
7760
8516
  */
7761
8517
  "selected"?: boolean;
7762
8518
  /**
@@ -7791,18 +8547,22 @@ declare namespace LocalJSX {
7791
8547
  interface IonTextarea {
7792
8548
  /**
7793
8549
  * If `true`, the textarea container will grow and shrink based on the contents of the textarea.
8550
+ * @default false
7794
8551
  */
7795
8552
  "autoGrow"?: boolean;
7796
8553
  /**
7797
8554
  * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user. Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
8555
+ * @default 'none'
7798
8556
  */
7799
8557
  "autocapitalize"?: string;
7800
8558
  /**
7801
8559
  * Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element. This may not be sufficient for the element to be focused on page load. See [managing focus](/docs/developing/managing-focus) for more information.
8560
+ * @default false
7802
8561
  */
7803
8562
  "autofocus"?: boolean;
7804
8563
  /**
7805
8564
  * If `true`, the value will be cleared after focus upon edit.
8565
+ * @default false
7806
8566
  */
7807
8567
  "clearOnEdit"?: boolean;
7808
8568
  /**
@@ -7815,6 +8575,7 @@ declare namespace LocalJSX {
7815
8575
  "cols"?: number;
7816
8576
  /**
7817
8577
  * If `true`, a character counter will display the ratio of characters used and the total character limit. Developers must also set the `maxlength` property for the counter to be calculated correctly.
8578
+ * @default false
7818
8579
  */
7819
8580
  "counter"?: boolean;
7820
8581
  /**
@@ -7827,6 +8588,7 @@ declare namespace LocalJSX {
7827
8588
  "debounce"?: number;
7828
8589
  /**
7829
8590
  * If `true`, the user cannot interact with the textarea.
8591
+ * @default false
7830
8592
  */
7831
8593
  "disabled"?: boolean;
7832
8594
  /**
@@ -7855,6 +8617,7 @@ declare namespace LocalJSX {
7855
8617
  "label"?: string;
7856
8618
  /**
7857
8619
  * Where to place the label relative to the textarea. `"start"`: The label will appear to the left of the textarea in LTR and to the right in RTL. `"end"`: The label will appear to the right of the textarea in LTR and to the left in RTL. `"floating"`: The label will appear smaller and above the textarea when the textarea is focused or it has a value. Otherwise it will appear on top of the textarea. `"stacked"`: The label will appear smaller and above the textarea regardless even when the textarea 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 ("...").
8620
+ * @default 'start'
7858
8621
  */
7859
8622
  "labelPlacement"?: 'start' | 'end' | 'floating' | 'stacked' | 'fixed';
7860
8623
  /**
@@ -7871,6 +8634,7 @@ declare namespace LocalJSX {
7871
8634
  "mode"?: "ios" | "md";
7872
8635
  /**
7873
8636
  * The name of the control, which is submitted with the form data.
8637
+ * @default this.inputId
7874
8638
  */
7875
8639
  "name"?: string;
7876
8640
  /**
@@ -7895,10 +8659,12 @@ declare namespace LocalJSX {
7895
8659
  "placeholder"?: string;
7896
8660
  /**
7897
8661
  * If `true`, the user cannot modify the value.
8662
+ * @default false
7898
8663
  */
7899
8664
  "readonly"?: boolean;
7900
8665
  /**
7901
8666
  * If `true`, the user must fill in a value before submitting a form.
8667
+ * @default false
7902
8668
  */
7903
8669
  "required"?: boolean;
7904
8670
  /**
@@ -7911,10 +8677,12 @@ declare namespace LocalJSX {
7911
8677
  "shape"?: 'round';
7912
8678
  /**
7913
8679
  * If `true`, the element will have its spelling and grammar checked.
8680
+ * @default false
7914
8681
  */
7915
8682
  "spellcheck"?: boolean;
7916
8683
  /**
7917
8684
  * The value of the textarea.
8685
+ * @default ''
7918
8686
  */
7919
8687
  "value"?: string | null;
7920
8688
  /**
@@ -7937,6 +8705,7 @@ declare namespace LocalJSX {
7937
8705
  interface IonToast {
7938
8706
  /**
7939
8707
  * If `true`, the toast will animate.
8708
+ * @default true
7940
8709
  */
7941
8710
  "animated"?: boolean;
7942
8711
  /**
@@ -7953,6 +8722,7 @@ declare namespace LocalJSX {
7953
8722
  "cssClass"?: string | string[];
7954
8723
  /**
7955
8724
  * How many milliseconds to wait before hiding the toast. By default, it will show until `dismiss()` is called.
8725
+ * @default config.getNumber('toastDuration', 0)
7956
8726
  */
7957
8727
  "duration"?: number;
7958
8728
  /**
@@ -7973,14 +8743,17 @@ declare namespace LocalJSX {
7973
8743
  "icon"?: string;
7974
8744
  /**
7975
8745
  * If `true`, the toast will open. If `false`, the toast will close. Use this if you need finer grained control over presentation, otherwise just use the toastController or the `trigger` property. Note: `isOpen` will not automatically be set back to `false` when the toast dismisses. You will need to do that in your code.
8746
+ * @default false
7976
8747
  */
7977
8748
  "isOpen"?: boolean;
7978
8749
  /**
7979
8750
  * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
8751
+ * @default false
7980
8752
  */
7981
8753
  "keyboardClose"?: boolean;
7982
8754
  /**
7983
8755
  * Defines how the message and buttons are laid out in the toast. 'baseline': The message and the buttons will appear on the same line. Message text may wrap within the message container. 'stacked': The buttons containers and message will stack on top of each other. Use this if you have long text in your buttons.
8756
+ * @default 'baseline'
7984
8757
  */
7985
8758
  "layout"?: ToastLayout;
7986
8759
  /**
@@ -8029,6 +8802,7 @@ declare namespace LocalJSX {
8029
8802
  "onWillPresent"?: (event: IonToastCustomEvent<void>) => void;
8030
8803
  /**
8031
8804
  * The starting position of the toast on the screen. Can be tweaked further using the `positionAnchor` property.
8805
+ * @default 'bottom'
8032
8806
  */
8033
8807
  "position"?: ToastPosition;
8034
8808
  /**
@@ -8041,6 +8815,7 @@ declare namespace LocalJSX {
8041
8815
  "swipeGesture"?: ToastSwipeGestureDirection;
8042
8816
  /**
8043
8817
  * 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).
8818
+ * @default false
8044
8819
  */
8045
8820
  "translucent"?: boolean;
8046
8821
  /**
@@ -8055,6 +8830,7 @@ declare namespace LocalJSX {
8055
8830
  "alignment"?: 'start' | 'center';
8056
8831
  /**
8057
8832
  * If `true`, the toggle is selected.
8833
+ * @default false
8058
8834
  */
8059
8835
  "checked"?: boolean;
8060
8836
  /**
@@ -8063,10 +8839,12 @@ declare namespace LocalJSX {
8063
8839
  "color"?: Color;
8064
8840
  /**
8065
8841
  * If `true`, the user cannot interact with the toggle.
8842
+ * @default false
8066
8843
  */
8067
8844
  "disabled"?: boolean;
8068
8845
  /**
8069
8846
  * Enables the on/off accessibility switch labels within the toggle.
8847
+ * @default config.get('toggleOnOffLabels')
8070
8848
  */
8071
8849
  "enableOnOffLabels"?: boolean | undefined;
8072
8850
  /**
@@ -8083,6 +8861,7 @@ declare namespace LocalJSX {
8083
8861
  "justify"?: 'start' | 'end' | 'space-between';
8084
8862
  /**
8085
8863
  * Where to place the label relative to the input. `"start"`: The label will appear to the left of the toggle in LTR and to the right in RTL. `"end"`: The label will appear to the right of the toggle in LTR and to the left in RTL. `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("..."). `"stacked"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.
8864
+ * @default 'start'
8086
8865
  */
8087
8866
  "labelPlacement"?: 'start' | 'end' | 'fixed' | 'stacked';
8088
8867
  /**
@@ -8091,6 +8870,7 @@ declare namespace LocalJSX {
8091
8870
  "mode"?: "ios" | "md";
8092
8871
  /**
8093
8872
  * The name of the control, which is submitted with the form data.
8873
+ * @default this.inputId
8094
8874
  */
8095
8875
  "name"?: string;
8096
8876
  /**
@@ -8107,10 +8887,12 @@ declare namespace LocalJSX {
8107
8887
  "onIonFocus"?: (event: IonToggleCustomEvent<void>) => void;
8108
8888
  /**
8109
8889
  * If true, screen readers will announce it as a required field. This property works only for accessibility purposes, it will not prevent the form from submitting if the value is invalid.
8890
+ * @default false
8110
8891
  */
8111
8892
  "required"?: boolean;
8112
8893
  /**
8113
8894
  * 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>`.
8895
+ * @default 'on'
8114
8896
  */
8115
8897
  "value"?: string | null;
8116
8898
  }
@@ -8159,6 +8941,7 @@ declare namespace LocalJSX {
8159
8941
  "ion-infinite-scroll": IonInfiniteScroll;
8160
8942
  "ion-infinite-scroll-content": IonInfiniteScrollContent;
8161
8943
  "ion-input": IonInput;
8944
+ "ion-input-otp": IonInputOtp;
8162
8945
  "ion-input-password-toggle": IonInputPasswordToggle;
8163
8946
  "ion-item": IonItem;
8164
8947
  "ion-item-divider": IonItemDivider;
@@ -8261,6 +9044,7 @@ declare module "@stencil/core" {
8261
9044
  "ion-infinite-scroll": LocalJSX.IonInfiniteScroll & JSXBase.HTMLAttributes<HTMLIonInfiniteScrollElement>;
8262
9045
  "ion-infinite-scroll-content": LocalJSX.IonInfiniteScrollContent & JSXBase.HTMLAttributes<HTMLIonInfiniteScrollContentElement>;
8263
9046
  "ion-input": LocalJSX.IonInput & JSXBase.HTMLAttributes<HTMLIonInputElement>;
9047
+ "ion-input-otp": LocalJSX.IonInputOtp & JSXBase.HTMLAttributes<HTMLIonInputOtpElement>;
8264
9048
  "ion-input-password-toggle": LocalJSX.IonInputPasswordToggle & JSXBase.HTMLAttributes<HTMLIonInputPasswordToggleElement>;
8265
9049
  "ion-item": LocalJSX.IonItem & JSXBase.HTMLAttributes<HTMLIonItemElement>;
8266
9050
  "ion-item-divider": LocalJSX.IonItemDivider & JSXBase.HTMLAttributes<HTMLIonItemDividerElement>;