@ionic/core 8.8.2 → 8.8.3-dev.11774545677.151db026

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 (1057) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-divider.d.ts +11 -0
  27. package/components/ion-divider.js +4 -0
  28. package/components/ion-fab-button.js +1 -1
  29. package/components/ion-fab-list.js +1 -1
  30. package/components/ion-fab.js +1 -1
  31. package/components/ion-footer.js +1 -1
  32. package/components/ion-grid.js +1 -1
  33. package/components/ion-header.js +1 -1
  34. package/components/ion-icon.js +1 -1
  35. package/components/ion-img.js +1 -1
  36. package/components/ion-infinite-scroll-content.js +1 -1
  37. package/components/ion-infinite-scroll.js +1 -1
  38. package/components/ion-input-otp.js +1 -1
  39. package/components/ion-input-password-toggle.js +1 -1
  40. package/components/ion-input.js +1 -1
  41. package/components/ion-item-divider.js +1 -1
  42. package/components/ion-item-group.js +1 -1
  43. package/components/ion-item-option.js +1 -1
  44. package/components/ion-item-options.js +1 -1
  45. package/components/ion-item-sliding.js +1 -1
  46. package/components/ion-item.js +1 -1
  47. package/components/ion-label.js +1 -1
  48. package/components/ion-list-header.js +1 -1
  49. package/components/ion-list.js +1 -1
  50. package/components/ion-loading.js +1 -1
  51. package/components/ion-menu-button.js +1 -1
  52. package/components/ion-menu-toggle.js +1 -1
  53. package/components/ion-menu.js +1 -1
  54. package/components/ion-modal.js +1 -1
  55. package/components/ion-nav-link.js +1 -1
  56. package/components/ion-nav.js +1 -1
  57. package/components/ion-note.js +1 -1
  58. package/components/ion-picker-column-option.js +1 -1
  59. package/components/ion-picker-column.js +1 -1
  60. package/components/ion-picker-legacy-column.js +1 -1
  61. package/components/ion-picker-legacy.js +1 -1
  62. package/components/ion-picker.js +1 -1
  63. package/components/ion-popover.js +1 -1
  64. package/components/ion-progress-bar.js +1 -1
  65. package/components/ion-radio-group.js +1 -1
  66. package/components/ion-radio.js +1 -1
  67. package/components/ion-range.js +1 -1
  68. package/components/ion-refresher-content.js +1 -1
  69. package/components/ion-refresher.js +1 -1
  70. package/components/ion-reorder-group.js +1 -1
  71. package/components/ion-reorder.js +1 -1
  72. package/components/ion-ripple-effect.js +1 -1
  73. package/components/ion-route-redirect.js +1 -1
  74. package/components/ion-route.js +1 -1
  75. package/components/ion-router-link.js +1 -1
  76. package/components/ion-router-outlet.js +1 -1
  77. package/components/ion-router.js +1 -1
  78. package/components/ion-row.js +1 -1
  79. package/components/ion-searchbar.js +1 -1
  80. package/components/ion-segment-button.js +1 -1
  81. package/components/ion-segment-content.js +1 -1
  82. package/components/ion-segment-view.js +1 -1
  83. package/components/ion-segment.js +1 -1
  84. package/components/ion-select-modal.js +1 -1
  85. package/components/ion-select-option.js +1 -1
  86. package/components/ion-select-popover.js +1 -1
  87. package/components/ion-select.js +1 -1
  88. package/components/ion-skeleton-text.js +1 -1
  89. package/components/ion-spinner.js +1 -1
  90. package/components/ion-split-pane.js +1 -1
  91. package/components/ion-tab-bar.js +1 -1
  92. package/components/ion-tab-button.js +1 -1
  93. package/components/ion-tab.js +1 -1
  94. package/components/ion-tabs.js +1 -1
  95. package/components/ion-text.js +1 -1
  96. package/components/ion-textarea.js +1 -1
  97. package/components/ion-thumbnail.js +1 -1
  98. package/components/ion-title.js +1 -1
  99. package/components/ion-toast.js +1 -1
  100. package/components/ion-toggle.js +1 -1
  101. package/components/ion-toolbar.js +1 -1
  102. package/components/p-0sa2JgYA.js +4 -0
  103. package/components/{p-CO7fmmxt.js → p-0tC5Bj8z.js} +1 -1
  104. package/components/p-3Ni1Z654.js +4 -0
  105. package/{dist/ionic/p-D13Eaw-8.js → components/p-9gxM3tAr.js} +1 -1
  106. package/components/{p-ak_d-z48.js → p-B636tzQ7.js} +1 -1
  107. package/components/p-B6czg-mf.js +4 -0
  108. package/components/p-BCDEEm9n.js +4 -0
  109. package/components/p-BDndEqui.js +4 -0
  110. package/components/p-BDqjX7Z_.js +4 -0
  111. package/components/p-BErKjY03.js +4 -0
  112. package/components/p-BFCM_1oE.js +4 -0
  113. package/components/p-BGHaEUgp.js +4 -0
  114. package/components/{p-cyNmxje6.js → p-BLysWQA1.js} +1 -1
  115. package/components/p-BO4aickU.js +4 -0
  116. package/components/p-BR9Yxas9.js +4 -0
  117. package/components/p-BU8N7ZrK.js +4 -0
  118. package/components/p-BYSs-jZz.js +4 -0
  119. package/components/p-BcbmT6b3.js +4 -0
  120. package/components/p-BeVlsaLA.js +4 -0
  121. package/components/p-BfHB6wX_.js +4 -0
  122. package/components/p-BhfW3d9j.js +4 -0
  123. package/components/p-BjW8SOqw.js +4 -0
  124. package/components/p-BqDiJgC_.js +4 -0
  125. package/components/p-Br3pqTOz.js +4 -0
  126. package/components/p-BtAlyZ0b.js +4 -0
  127. package/components/p-C-_EGKki.js +4 -0
  128. package/components/p-C00Y_WJv.js +4 -0
  129. package/components/p-C2cZvGcF.js +4 -0
  130. package/components/p-CBH_owa5.js +4 -0
  131. package/components/{p-BUbsoBOV.js → p-CHgKFg32.js} +1 -1
  132. package/components/p-CKfNwyAb.js +4 -0
  133. package/components/p-CVBkx7m1.js +4 -0
  134. package/components/p-Cb9imMZh.js +4 -0
  135. package/components/p-CdYTq34D.js +4 -0
  136. package/components/p-CeYwuysM.js +4 -0
  137. package/components/p-Cf9-xP7P.js +4 -0
  138. package/components/p-Ch9P0ikq.js +4 -0
  139. package/components/{p-Cwv-vmkN.js → p-CjSx8W-k.js} +1 -1
  140. package/components/p-CoarhFWH.js +4 -0
  141. package/components/p-D1t981Ih.js +4 -0
  142. package/components/p-D5lMX0xt.js +4 -0
  143. package/components/p-D8NAdIPC.js +4 -0
  144. package/components/p-DAeMHNER.js +4 -0
  145. package/components/p-DDw-NYxz.js +4 -0
  146. package/components/p-DVcs-2q3.js +4 -0
  147. package/components/p-DaJxRxSQ.js +4 -0
  148. package/components/p-Dhi5xtNS.js +4 -0
  149. package/components/p-DrhTPUzN.js +4 -0
  150. package/components/p-GnGGIfCd.js +4 -0
  151. package/components/p-GytrfCp8.js +4 -0
  152. package/components/p-UzXrYTAJ.js +4 -0
  153. package/components/p-XegQjlzJ.js +4 -0
  154. package/components/p-ZeIAjDcZ.js +4 -0
  155. package/components/p-fIOYmaqA.js +4 -0
  156. package/components/p-iwGbwewM.js +4 -0
  157. package/components/p-lIOqnNXn.js +4 -0
  158. package/{dist/ionic/p-BvFYtOdE.js → components/p-oF-CwZ0b.js} +1 -1
  159. package/components/p-sK-FK9CT.js +4 -0
  160. package/components/p-t98_NeNv.js +4 -0
  161. package/components/p-vCpF32Z7.js +4 -0
  162. package/components/p-vXpMhGrs.js +4 -0
  163. package/components/p-wCDzv5Q8.js +4 -0
  164. package/components/{p-YLXPWgVj.js → p-zWP0sUV_.js} +1 -1
  165. package/css/core.css +1 -1
  166. package/css/core.css.map +1 -1
  167. package/css/display.css +1 -1
  168. package/css/display.css.map +1 -1
  169. package/css/flex-utils.css +1 -1
  170. package/css/flex-utils.css.map +1 -1
  171. package/css/float-elements.css.map +1 -1
  172. package/css/global.bundle.css.map +1 -1
  173. package/css/ionic/bundle.ionic.css +1 -0
  174. package/css/ionic/bundle.ionic.css.map +1 -0
  175. package/css/ionic/core.ionic.css +1 -0
  176. package/css/ionic/core.ionic.css.map +1 -0
  177. package/css/ionic/global.bundle.ionic.css +1 -0
  178. package/css/ionic/global.bundle.ionic.css.map +1 -0
  179. package/css/ionic/ionic-swiper.ionic.css +1 -0
  180. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  181. package/css/ionic/link.ionic.css +1 -0
  182. package/css/ionic/link.ionic.css.map +1 -0
  183. package/css/ionic/structure.ionic.css +1 -0
  184. package/css/ionic/structure.ionic.css.map +1 -0
  185. package/css/ionic/typography.ionic.css +1 -0
  186. package/css/ionic/typography.ionic.css.map +1 -0
  187. package/css/ionic/utils.bundle.ionic.css +1 -0
  188. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  189. package/css/ionic-swiper.css +1 -1
  190. package/css/ionic-swiper.css.map +1 -1
  191. package/css/ionic.bundle.css +1 -1
  192. package/css/ionic.bundle.css.map +1 -1
  193. package/css/normalize.css.map +1 -1
  194. package/css/padding.css.map +1 -1
  195. package/css/palettes/dark.always.css.map +1 -1
  196. package/css/palettes/dark.class.css.map +1 -1
  197. package/css/palettes/dark.system.css.map +1 -1
  198. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  199. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  200. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  201. package/css/palettes/high-contrast.always.css.map +1 -1
  202. package/css/palettes/high-contrast.class.css.map +1 -1
  203. package/css/palettes/high-contrast.system.css.map +1 -1
  204. package/css/structure.css.map +1 -1
  205. package/css/text-alignment.css.map +1 -1
  206. package/css/text-transformation.css.map +1 -1
  207. package/css/typography.css.map +1 -1
  208. package/css/utils.bundle.css +1 -1
  209. package/css/utils.bundle.css.map +1 -1
  210. package/dist/cjs/{animation-Dg4yiuR2.js → animation-DknMeJ3x.js} +3 -3
  211. package/dist/cjs/{app-globals-CLI8xCmk.js → app-globals-DtAeky3x.js} +1 -1
  212. package/dist/cjs/{button-active-FscMI17-.js → button-active-JoIWyYri.js} +2 -2
  213. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BnRBm_ys.js} +3 -3
  214. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  215. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  216. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  217. package/dist/cjs/{config-BukYi_pW.js → config-B0utyWaD.js} +1 -1
  218. package/dist/cjs/{data-BYlBjkMU.js → data-DuOuKG7I.js} +6 -6
  219. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  220. package/dist/cjs/{framework-delegate-CRgp8o_p.js → framework-delegate-Dx9FrqAC.js} +4 -2
  221. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-D3Ay9mmg.js} +1 -1
  222. package/dist/cjs/{helpers-CxTYJdbT.js → helpers-DJYxKN5U.js} +57 -4
  223. package/dist/cjs/{index-MbaBbWXk.js → index-BJrpF9T3.js} +2 -2
  224. package/dist/cjs/{index-CFUwM5x_.js → index-Cer2Qy4I.js} +15 -15
  225. package/dist/cjs/{index-CqT-2gKy.js → index-CzcLEdQ5.js} +41 -4
  226. package/dist/cjs/{index-YcSftOMz.js → index-DMJjUhXH.js} +9 -8
  227. package/dist/cjs/{index-C845Ti6K.js → index-D_mPAIqF.js} +4 -4
  228. package/dist/cjs/index.cjs.js +13 -14
  229. package/dist/cjs/{input-shims-Dl5cnc_e.js → input-shims-Dn33gFln.js} +18 -17
  230. package/dist/cjs/{input.utils-DmeJ8dmo.js → input.utils-DnVnhWEF.js} +5 -5
  231. package/dist/cjs/ion-accordion_2.cjs.entry.js +60 -28
  232. package/dist/cjs/ion-action-sheet.cjs.entry.js +25 -22
  233. package/dist/cjs/ion-alert.cjs.entry.js +25 -23
  234. package/dist/cjs/ion-app_8.cjs.entry.js +292 -157
  235. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -13
  236. package/dist/cjs/ion-back-button.cjs.entry.js +30 -21
  237. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -7
  238. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +53 -17
  239. package/dist/cjs/ion-button_2.cjs.entry.js +59 -22
  240. package/dist/cjs/ion-card_5.cjs.entry.js +55 -33
  241. package/dist/cjs/ion-checkbox.cjs.entry.js +34 -16
  242. package/dist/cjs/ion-chip.cjs.entry.js +50 -9
  243. package/dist/cjs/ion-col_3.cjs.entry.js +54 -57
  244. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -9
  245. package/dist/cjs/ion-datetime_3.cjs.entry.js +117 -41
  246. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  247. package/dist/cjs/ion-fab_3.cjs.entry.js +43 -27
  248. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  249. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +91 -16
  250. package/dist/cjs/ion-input-otp.cjs.entry.js +92 -12
  251. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +52 -14
  252. package/dist/cjs/ion-input.cjs.entry.js +123 -33
  253. package/dist/cjs/ion-item-option_3.cjs.entry.js +50 -21
  254. package/dist/cjs/ion-item_8.cjs.entry.js +115 -48
  255. package/dist/cjs/ion-loading.cjs.entry.js +20 -18
  256. package/dist/cjs/ion-menu_3.cjs.entry.js +46 -28
  257. package/dist/cjs/ion-modal.cjs.entry.js +105 -78
  258. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -11
  259. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -8
  260. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  261. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  262. package/dist/cjs/ion-popover.cjs.entry.js +20 -18
  263. package/dist/cjs/ion-progress-bar.cjs.entry.js +27 -9
  264. package/dist/cjs/ion-radio_2.cjs.entry.js +35 -17
  265. package/dist/cjs/ion-range.cjs.entry.js +16 -12
  266. package/dist/cjs/ion-refresher_2.cjs.entry.js +38 -20
  267. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  268. package/dist/cjs/ion-ripple-effect.cjs.entry.js +15 -7
  269. package/dist/cjs/ion-route_4.cjs.entry.js +10 -9
  270. package/dist/cjs/ion-searchbar.cjs.entry.js +136 -23
  271. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  272. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  273. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -16
  274. package/dist/cjs/ion-select-modal.cjs.entry.js +17 -11
  275. package/dist/cjs/ion-select_3.cjs.entry.js +132 -41
  276. package/dist/cjs/ion-spinner.cjs.entry.js +30 -8
  277. package/dist/cjs/ion-split-pane.cjs.entry.js +12 -9
  278. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +77 -23
  279. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  280. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  281. package/dist/cjs/ion-textarea.cjs.entry.js +137 -23
  282. package/dist/cjs/ion-toast.cjs.entry.js +68 -45
  283. package/dist/cjs/ion-toggle.cjs.entry.js +81 -24
  284. package/dist/cjs/ionic-global-CSEbHD_F.js +519 -0
  285. package/dist/cjs/ionic.cjs.js +4 -4
  286. package/dist/cjs/{ios.transition-trBiC95R.js → ios.transition-UCjoxA3D.js} +7 -5
  287. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Bhav6x-R.js} +4 -3
  288. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Dsczf-iT.js} +1 -1
  289. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-tqGDP9SU.js} +11 -9
  290. package/dist/cjs/list-a-7GSA6K.js +8 -0
  291. package/dist/cjs/loader.cjs.js +4 -4
  292. package/dist/cjs/{md.transition-CUQECuvD.js → md.transition-CNwlchQn.js} +6 -5
  293. package/dist/cjs/{notch-controller-sD-lTpdc.js → notch-controller-CgtkBzy0.js} +4 -4
  294. package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-Dhoy6v_5.js} +102 -12
  295. package/dist/cjs/{status-tap-CCJk5VgT.js → status-tap-CTY2dMsZ.js} +4 -3
  296. package/dist/cjs/{swipe-back-BGhTQ1CU.js → swipe-back-jJFi5KCB.js} +3 -2
  297. package/dist/cjs/{theme-CeDs6Hcv.js → theme-IlOsGAz7.js} +25 -1
  298. package/dist/cjs/validity-QmuwEptc.js +51 -0
  299. package/dist/cjs/x-BTF99yFH.js +8 -0
  300. package/dist/collection/collection-manifest.json +1 -0
  301. package/dist/collection/components/accordion/accordion.ionic.css +201 -0
  302. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  303. package/dist/collection/components/accordion/accordion.js +41 -27
  304. package/dist/collection/components/accordion/accordion.md.css +67 -59
  305. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  306. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  307. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  308. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  309. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  310. package/dist/collection/components/action-sheet/action-sheet.js +17 -13
  311. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  312. package/dist/collection/components/alert/alert.ios.css +19 -1
  313. package/dist/collection/components/alert/alert.js +16 -13
  314. package/dist/collection/components/alert/alert.md.css +19 -1
  315. package/dist/collection/components/app/app.js +15 -83
  316. package/dist/collection/components/avatar/avatar.ionic.css +391 -0
  317. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  318. package/dist/collection/components/avatar/avatar.js +120 -4
  319. package/dist/collection/components/avatar/avatar.md.css +51 -0
  320. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  321. package/dist/collection/components/back-button/back-button.js +27 -19
  322. package/dist/collection/components/back-button/back-button.md.css +60 -48
  323. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  324. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  325. package/dist/collection/components/backdrop/backdrop.js +12 -6
  326. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  327. package/dist/collection/components/badge/badge.ionic.css +275 -0
  328. package/dist/collection/components/badge/badge.ios.css +139 -12
  329. package/dist/collection/components/badge/badge.js +145 -9
  330. package/dist/collection/components/badge/badge.md.css +123 -12
  331. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  332. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  333. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  334. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  335. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  336. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  337. package/dist/collection/components/button/button.ionic.css +646 -0
  338. package/dist/collection/components/button/button.ios.css +154 -46
  339. package/dist/collection/components/button/button.js +63 -27
  340. package/dist/collection/components/button/button.md.css +150 -50
  341. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  342. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  343. package/dist/collection/components/buttons/buttons.js +15 -9
  344. package/dist/collection/components/buttons/buttons.md.css +55 -3
  345. package/dist/collection/components/card/card.ionic.css +144 -0
  346. package/dist/collection/components/card/card.ios.css +65 -14
  347. package/dist/collection/components/card/card.js +41 -10
  348. package/dist/collection/components/card/card.md.css +65 -14
  349. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  350. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  351. package/dist/collection/components/card-content/card-content.js +12 -10
  352. package/dist/collection/components/card-content/card-content.md.css +20 -35
  353. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  354. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  355. package/dist/collection/components/card-header/card-header.js +13 -10
  356. package/dist/collection/components/card-header/card-header.md.css +27 -15
  357. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  358. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  359. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  360. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  361. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  362. package/dist/collection/components/card-title/card-title.js +11 -8
  363. package/dist/collection/components/card-title/card-title.md.css +73 -0
  364. package/dist/collection/components/checkbox/checkbox.ionic.css +539 -0
  365. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  366. package/dist/collection/components/checkbox/checkbox.js +70 -14
  367. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  368. package/dist/collection/components/chip/chip.ionic.css +217 -0
  369. package/dist/collection/components/chip/chip.ios.css +67 -14
  370. package/dist/collection/components/chip/chip.js +108 -8
  371. package/dist/collection/components/chip/chip.md.css +67 -14
  372. package/dist/collection/components/col/col.css +192 -4
  373. package/dist/collection/components/col/col.js +210 -61
  374. package/dist/collection/components/content/content.css +8 -2
  375. package/dist/collection/components/content/content.js +16 -11
  376. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  377. package/dist/collection/components/datetime/datetime.ios.css +302 -106
  378. package/dist/collection/components/datetime/datetime.js +100 -21
  379. package/dist/collection/components/datetime/datetime.md.css +293 -96
  380. package/dist/collection/components/datetime/utils/data.js +5 -5
  381. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  382. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  383. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  384. package/dist/collection/components/divider/divider.ionic.css +148 -0
  385. package/dist/collection/components/divider/divider.ios.css +87 -0
  386. package/dist/collection/components/divider/divider.js +94 -0
  387. package/dist/collection/components/divider/divider.md.css +87 -0
  388. package/dist/collection/components/fab/fab.css +25 -1
  389. package/dist/collection/components/fab/fab.js +9 -5
  390. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  391. package/dist/collection/components/fab-button/fab-button.js +36 -21
  392. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  393. package/dist/collection/components/fab-list/fab-list.css +12 -0
  394. package/dist/collection/components/fab-list/fab-list.js +9 -5
  395. package/dist/collection/components/footer/footer.ios.css +14 -2
  396. package/dist/collection/components/footer/footer.js +21 -16
  397. package/dist/collection/components/footer/footer.md.css +12 -0
  398. package/dist/collection/components/grid/grid.css +12 -0
  399. package/dist/collection/components/grid/grid.js +9 -5
  400. package/dist/collection/components/header/header.ionic.css +97 -0
  401. package/dist/collection/components/header/header.ios.css +25 -10
  402. package/dist/collection/components/header/header.js +50 -19
  403. package/dist/collection/components/header/header.md.css +23 -8
  404. package/dist/collection/components/header/header.utils.js +5 -5
  405. package/dist/collection/components/img/img.js +8 -2
  406. package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
  407. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  408. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  409. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  410. package/dist/collection/components/input/input.ionic.css +889 -0
  411. package/dist/collection/components/input/input.ios.css +223 -135
  412. package/dist/collection/components/input/input.js +148 -37
  413. package/dist/collection/components/input/input.md.css +193 -207
  414. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  415. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  416. package/dist/collection/components/input-otp/input-otp.js +91 -9
  417. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  418. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  419. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  420. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  421. package/dist/collection/components/item/item.ionic.css +508 -0
  422. package/dist/collection/components/item/item.ios.css +109 -69
  423. package/dist/collection/components/item/item.js +51 -20
  424. package/dist/collection/components/item/item.md.css +120 -68
  425. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  426. package/dist/collection/components/item-divider/item-divider.js +11 -8
  427. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  428. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  429. package/dist/collection/components/item-group/item-group.js +13 -7
  430. package/dist/collection/components/item-group/item-group.md.css +12 -0
  431. package/dist/collection/components/item-option/item-option.ionic.css +278 -0
  432. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  433. package/dist/collection/components/item-option/item-option.js +73 -9
  434. package/dist/collection/components/item-option/item-option.md.css +136 -29
  435. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  436. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  437. package/dist/collection/components/item-options/item-options.js +13 -7
  438. package/dist/collection/components/item-options/item-options.md.css +77 -34
  439. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  440. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  441. package/dist/collection/components/label/label.ios.css +18 -0
  442. package/dist/collection/components/label/label.js +11 -8
  443. package/dist/collection/components/label/label.md.css +18 -0
  444. package/dist/collection/components/list/list.ionic.css +212 -0
  445. package/dist/collection/components/list/list.ios.css +54 -14
  446. package/dist/collection/components/list/list.js +48 -9
  447. package/dist/collection/components/list/list.md.css +56 -16
  448. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  449. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  450. package/dist/collection/components/list-header/list-header.js +11 -8
  451. package/dist/collection/components/list-header/list-header.md.css +82 -38
  452. package/dist/collection/components/loading/loading.ios.css +13 -1
  453. package/dist/collection/components/loading/loading.js +14 -11
  454. package/dist/collection/components/loading/loading.md.css +13 -1
  455. package/dist/collection/components/menu/menu.ios.css +15 -3
  456. package/dist/collection/components/menu/menu.js +12 -7
  457. package/dist/collection/components/menu/menu.md.css +15 -3
  458. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  459. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  460. package/dist/collection/components/menu-button/menu-button.js +26 -10
  461. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  462. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  463. package/dist/collection/components/modal/animations/sheet.js +8 -2
  464. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  465. package/dist/collection/components/modal/modal.ionic.css +247 -0
  466. package/dist/collection/components/modal/modal.ios.css +178 -70
  467. package/dist/collection/components/modal/modal.js +48 -11
  468. package/dist/collection/components/modal/modal.md.css +178 -70
  469. package/dist/collection/components/nav/nav.css +7 -1
  470. package/dist/collection/components/nav/nav.js +11 -5
  471. package/dist/collection/components/nav-link/nav-link.js +5 -1
  472. package/dist/collection/components/note/note.ios.css +12 -0
  473. package/dist/collection/components/note/note.js +11 -8
  474. package/dist/collection/components/note/note.md.css +12 -0
  475. package/dist/collection/components/picker/picker.ios.css +15 -3
  476. package/dist/collection/components/picker/picker.js +8 -5
  477. package/dist/collection/components/picker/picker.md.css +15 -3
  478. package/dist/collection/components/picker-column/picker-column.css +9 -2
  479. package/dist/collection/components/picker-column/picker-column.js +8 -7
  480. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  481. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  482. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  483. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  484. package/dist/collection/components/picker-legacy/picker.js +7 -6
  485. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  486. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  487. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  488. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  489. package/dist/collection/components/popover/popover.ionic.css +274 -0
  490. package/dist/collection/components/popover/popover.ios.css +13 -1
  491. package/dist/collection/components/popover/popover.js +17 -14
  492. package/dist/collection/components/popover/popover.md.css +13 -1
  493. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  494. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  495. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  496. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  497. package/dist/collection/components/radio/radio.ionic.css +422 -0
  498. package/dist/collection/components/radio/radio.ios.css +134 -91
  499. package/dist/collection/components/radio/radio.js +14 -9
  500. package/dist/collection/components/radio/radio.md.css +134 -91
  501. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  502. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  503. package/dist/collection/components/radio-group/radio-group.js +48 -7
  504. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  505. package/dist/collection/components/range/range.ionic.css +563 -0
  506. package/dist/collection/components/range/range.ios.css +128 -85
  507. package/dist/collection/components/range/range.js +12 -9
  508. package/dist/collection/components/range/range.md.css +128 -85
  509. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  510. package/dist/collection/components/refresher/refresher.js +11 -8
  511. package/dist/collection/components/refresher/refresher.md.css +15 -2
  512. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  513. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  514. package/dist/collection/components/reorder/reorder.js +33 -6
  515. package/dist/collection/components/reorder/reorder.md.css +6 -0
  516. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  517. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  518. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  519. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  520. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  521. package/dist/collection/components/route/route.js +4 -0
  522. package/dist/collection/components/router/router.js +4 -0
  523. package/dist/collection/components/router-link/router-link.css +8 -2
  524. package/dist/collection/components/router-link/router-link.js +9 -5
  525. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  526. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  527. package/dist/collection/components/row/row.css +16 -0
  528. package/dist/collection/components/row/row.js +9 -2
  529. package/dist/collection/components/searchbar/searchbar.ionic.css +626 -0
  530. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  531. package/dist/collection/components/searchbar/searchbar.js +180 -33
  532. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  533. package/dist/collection/components/segment/segment.ionic.css +115 -0
  534. package/dist/collection/components/segment/segment.ios.css +45 -2
  535. package/dist/collection/components/segment/segment.js +11 -8
  536. package/dist/collection/components/segment/segment.md.css +45 -2
  537. package/dist/collection/components/segment-button/segment-button.ionic.css +353 -0
  538. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  539. package/dist/collection/components/segment-button/segment-button.js +11 -8
  540. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  541. package/dist/collection/components/segment-content/segment-content.js +1 -1
  542. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  543. package/dist/collection/components/segment-view/segment-view.js +6 -4
  544. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  545. package/dist/collection/components/select/select.ionic.css +777 -0
  546. package/dist/collection/components/select/select.ios.css +315 -176
  547. package/dist/collection/components/select/select.js +156 -53
  548. package/dist/collection/components/select/select.md.css +331 -178
  549. package/dist/collection/components/select-modal/select-modal.ionic.css +130 -0
  550. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  551. package/dist/collection/components/select-modal/select-modal.js +11 -4
  552. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  553. package/dist/collection/components/select-option/select-option.js +9 -2
  554. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  555. package/dist/collection/components/select-popover/select-popover.js +12 -4
  556. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  557. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  558. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  559. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  560. package/dist/collection/components/spinner/spinner.js +47 -6
  561. package/dist/collection/components/spinner/spinner.native.css +199 -0
  562. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  563. package/dist/collection/components/split-pane/split-pane.js +14 -8
  564. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  565. package/dist/collection/components/tab/tab.js +6 -2
  566. package/dist/collection/components/tab-bar/tab-bar.ionic.css +201 -0
  567. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  568. package/dist/collection/components/tab-bar/tab-bar.js +78 -11
  569. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  570. package/dist/collection/components/tab-button/tab-button.ionic.css +348 -0
  571. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  572. package/dist/collection/components/tab-button/tab-button.js +54 -9
  573. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  574. package/dist/collection/components/tabs/tabs.css +7 -1
  575. package/dist/collection/components/tabs/tabs.js +4 -1
  576. package/dist/collection/components/text/text.css +6 -0
  577. package/dist/collection/components/text/text.js +7 -6
  578. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  579. package/dist/collection/components/textarea/textarea.ios.css +298 -158
  580. package/dist/collection/components/textarea/textarea.js +162 -24
  581. package/dist/collection/components/textarea/textarea.md.css +312 -159
  582. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  583. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  584. package/dist/collection/components/title/title.ionic.css +127 -0
  585. package/dist/collection/components/title/title.ios.css +32 -4
  586. package/dist/collection/components/title/title.js +13 -7
  587. package/dist/collection/components/title/title.md.css +32 -4
  588. package/dist/collection/components/toast/animations/utils.js +1 -1
  589. package/dist/collection/components/toast/toast.ionic.css +394 -0
  590. package/dist/collection/components/toast/toast.ios.css +84 -45
  591. package/dist/collection/components/toast/toast.js +75 -12
  592. package/dist/collection/components/toast/toast.md.css +84 -45
  593. package/dist/collection/components/toggle/toggle.ionic.css +508 -0
  594. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  595. package/dist/collection/components/toggle/toggle.js +73 -18
  596. package/dist/collection/components/toggle/toggle.md.css +244 -131
  597. package/dist/collection/components/toolbar/test/image.svg +1 -0
  598. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  599. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  600. package/dist/collection/components/toolbar/toolbar.js +218 -13
  601. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  602. package/dist/collection/global/ionic-global.js +241 -13
  603. package/dist/collection/utils/focus-trap.js +13 -2
  604. package/dist/collection/utils/focus-visible.js +22 -0
  605. package/dist/collection/utils/forms/validity.js +31 -0
  606. package/dist/collection/utils/framework-delegate.js +3 -1
  607. package/dist/collection/utils/hardware-back-button.js +15 -0
  608. package/dist/collection/utils/helpers.js +57 -3
  609. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  610. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  611. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  612. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  613. package/dist/collection/utils/overlays.js +82 -1
  614. package/dist/collection/utils/test/playwright/generator.js +48 -23
  615. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  616. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  617. package/dist/collection/utils/theme.js +25 -1
  618. package/dist/collection/utils/transition/ios.transition.js +1 -0
  619. package/dist/docs.json +8302 -282
  620. package/dist/esm/{animation-CnGMT4ji.js → animation-Cqe2x-Pt.js} +2 -2
  621. package/dist/esm/{app-globals-DhZjtldk.js → app-globals-Dk1rB3aE.js} +1 -1
  622. package/dist/esm/{button-active-BBx21brx.js → button-active-g6ZnZzDZ.js} +2 -2
  623. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-C4lYa1nV.js} +1 -1
  624. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  625. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  626. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  627. package/dist/esm/{config-TO1rZH52.js → config-BvDxfLa-.js} +1 -1
  628. package/dist/esm/{data-B9iGR5YO.js → data-BNKYavC3.js} +6 -6
  629. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  630. package/dist/esm/{framework-delegate-CyxE1S_P.js → framework-delegate-CjVwn_KZ.js} +4 -2
  631. package/dist/esm/{haptic-DzAMWJuk.js → haptic-_88k1V5U.js} +1 -1
  632. package/dist/esm/{helpers-Tl8jw6S2.js → helpers-Do7zwvM1.js} +58 -5
  633. package/dist/esm/{index-hW6eNZ3o.js → index-BmkLokUL.js} +2 -2
  634. package/dist/esm/{index-BtUdxPjv.js → index-C5t9-ciC.js} +4 -3
  635. package/dist/esm/{index-B-hkiOUh.js → index-CGthURny.js} +4 -4
  636. package/dist/esm/{index-DV3sJJW8.js → index-COG0_eom.js} +1 -1
  637. package/dist/esm/{index-IGIE5vDm.js → index-Omi_TcwW.js} +41 -4
  638. package/dist/esm/{index-B2KwgBLx.js → index-hpH08p5s.js} +11 -11
  639. package/dist/esm/index.js +13 -14
  640. package/dist/esm/{input-shims-AaDhOpKN.js → input-shims-vDjCsx95.js} +7 -6
  641. package/dist/esm/{input.utils-Bxa_DQ7-.js → input.utils-B9Q5xHp6.js} +3 -3
  642. package/dist/esm/ion-accordion_2.entry.js +61 -29
  643. package/dist/esm/ion-action-sheet.entry.js +25 -22
  644. package/dist/esm/ion-alert.entry.js +25 -23
  645. package/dist/esm/ion-app_8.entry.js +292 -157
  646. package/dist/esm/ion-avatar_3.entry.js +125 -13
  647. package/dist/esm/ion-back-button.entry.js +31 -22
  648. package/dist/esm/ion-backdrop.entry.js +10 -7
  649. package/dist/esm/ion-breadcrumb_2.entry.js +54 -18
  650. package/dist/esm/ion-button_2.entry.js +59 -22
  651. package/dist/esm/ion-card_5.entry.js +55 -33
  652. package/dist/esm/ion-checkbox.entry.js +34 -16
  653. package/dist/esm/ion-chip.entry.js +50 -9
  654. package/dist/esm/ion-col_3.entry.js +54 -57
  655. package/dist/esm/ion-datetime-button.entry.js +13 -9
  656. package/dist/esm/ion-datetime_3.entry.js +118 -42
  657. package/dist/esm/ion-divider.entry.js +49 -0
  658. package/dist/esm/ion-fab_3.entry.js +44 -28
  659. package/dist/esm/ion-img.entry.js +8 -4
  660. package/dist/esm/ion-infinite-scroll_2.entry.js +91 -16
  661. package/dist/esm/ion-input-otp.entry.js +92 -12
  662. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  663. package/dist/esm/ion-input.entry.js +124 -34
  664. package/dist/esm/ion-item-option_3.entry.js +50 -21
  665. package/dist/esm/ion-item_8.entry.js +116 -49
  666. package/dist/esm/ion-loading.entry.js +20 -18
  667. package/dist/esm/ion-menu_3.entry.js +47 -29
  668. package/dist/esm/ion-modal.entry.js +58 -31
  669. package/dist/esm/ion-nav_2.entry.js +14 -11
  670. package/dist/esm/ion-picker-column-option.entry.js +12 -8
  671. package/dist/esm/ion-picker-column.entry.js +13 -13
  672. package/dist/esm/ion-picker.entry.js +10 -6
  673. package/dist/esm/ion-popover.entry.js +20 -18
  674. package/dist/esm/ion-progress-bar.entry.js +27 -9
  675. package/dist/esm/ion-radio_2.entry.js +35 -17
  676. package/dist/esm/ion-range.entry.js +16 -12
  677. package/dist/esm/ion-refresher_2.entry.js +39 -21
  678. package/dist/esm/ion-reorder_2.entry.js +38 -14
  679. package/dist/esm/ion-ripple-effect.entry.js +15 -7
  680. package/dist/esm/ion-route_4.entry.js +10 -9
  681. package/dist/esm/ion-searchbar.entry.js +137 -24
  682. package/dist/esm/ion-segment-content.entry.js +2 -2
  683. package/dist/esm/ion-segment-view.entry.js +6 -3
  684. package/dist/esm/ion-segment_2.entry.js +23 -16
  685. package/dist/esm/ion-select-modal.entry.js +17 -11
  686. package/dist/esm/ion-select_3.entry.js +133 -42
  687. package/dist/esm/ion-spinner.entry.js +30 -8
  688. package/dist/esm/ion-split-pane.entry.js +12 -9
  689. package/dist/esm/ion-tab-bar_2.entry.js +77 -23
  690. package/dist/esm/ion-tab_2.entry.js +8 -7
  691. package/dist/esm/ion-text.entry.js +7 -7
  692. package/dist/esm/ion-textarea.entry.js +137 -23
  693. package/dist/esm/ion-toast.entry.js +43 -20
  694. package/dist/esm/ion-toggle.entry.js +82 -25
  695. package/dist/esm/ionic-global-CAZb-5i-.js +508 -0
  696. package/dist/esm/ionic.js +5 -5
  697. package/dist/esm/{ios.transition--aMF-pDH.js → ios.transition-CzSncKQg.js} +7 -5
  698. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cpw6xVLJ.js} +1 -1
  699. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DJpS2IGK.js} +4 -3
  700. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-CAc33ylR.js} +5 -3
  701. package/dist/esm/list-Dhi5xtNS.js +6 -0
  702. package/dist/esm/loader.js +5 -5
  703. package/dist/esm/{md.transition-BEVbfm8j.js → md.transition-DIsWqYBZ.js} +6 -5
  704. package/dist/esm/{notch-controller-DAcvKU57.js → notch-controller-DiBq57w8.js} +2 -2
  705. package/dist/esm/{overlays-F8GHPo-e.js → overlays-CvFHfO3y.js} +99 -9
  706. package/dist/esm/{status-tap-BfJqFSLF.js → status-tap-fYFdZg6z.js} +4 -3
  707. package/dist/esm/{swipe-back-BZBFwTQV.js → swipe-back-BzGqTrrq.js} +3 -2
  708. package/dist/esm/{theme-DiVJyqlX.js → theme-DaJxRxSQ.js} +25 -1
  709. package/dist/esm/validity-BjW8SOqw.js +48 -0
  710. package/dist/esm/x-BDqjX7Z_.js +6 -0
  711. package/dist/html.html-data.json +2486 -138
  712. package/dist/ionic/index.esm.js +1 -1
  713. package/dist/ionic/ionic.esm.js +1 -1
  714. package/dist/ionic/p-01bc266f.entry.js +4 -0
  715. package/dist/ionic/p-01f414fd.entry.js +4 -0
  716. package/dist/ionic/p-07d3388f.entry.js +4 -0
  717. package/dist/ionic/p-11nqcMM3.js +4 -0
  718. package/dist/ionic/p-139d02eb.entry.js +4 -0
  719. package/dist/ionic/p-1855fcb6.entry.js +4 -0
  720. package/dist/ionic/p-2095969c.entry.js +4 -0
  721. package/dist/ionic/p-2193e875.entry.js +4 -0
  722. package/dist/ionic/p-2311e660.entry.js +4 -0
  723. package/dist/ionic/p-27edb91a.entry.js +4 -0
  724. package/dist/ionic/p-2aa44c65.entry.js +4 -0
  725. package/dist/ionic/p-2bf931ae.entry.js +4 -0
  726. package/dist/ionic/p-2ed694b1.entry.js +4 -0
  727. package/dist/ionic/p-2effd05d.entry.js +4 -0
  728. package/dist/ionic/p-304f8b0f.entry.js +4 -0
  729. package/dist/ionic/p-3093958a.entry.js +4 -0
  730. package/dist/ionic/p-3884bfa4.entry.js +4 -0
  731. package/dist/ionic/p-3bf01c2c.entry.js +4 -0
  732. package/dist/ionic/p-4091ad21.entry.js +4 -0
  733. package/dist/ionic/p-41914dc2.entry.js +4 -0
  734. package/dist/ionic/p-45825c2c.entry.js +4 -0
  735. package/dist/ionic/p-49799a34.entry.js +4 -0
  736. package/dist/ionic/p-4b0f5ffd.entry.js +4 -0
  737. package/dist/ionic/p-4e46439d.entry.js +4 -0
  738. package/dist/ionic/p-4e837210.entry.js +4 -0
  739. package/dist/ionic/p-50d90690.entry.js +4 -0
  740. package/dist/ionic/p-5239fc93.entry.js +4 -0
  741. package/dist/ionic/p-64341e32.entry.js +4 -0
  742. package/dist/ionic/p-68c21b2a.entry.js +4 -0
  743. package/dist/ionic/p-6be2b2d3.entry.js +4 -0
  744. package/dist/ionic/p-6bffc700.entry.js +4 -0
  745. package/dist/ionic/p-6c8c37c2.entry.js +4 -0
  746. package/dist/ionic/p-7194f6fa.entry.js +4 -0
  747. package/dist/ionic/p-727bb80c.entry.js +4 -0
  748. package/dist/ionic/p-76d0e7ef.entry.js +4 -0
  749. package/dist/ionic/p-7d267dc6.entry.js +4 -0
  750. package/dist/ionic/p-8e42d109.entry.js +4 -0
  751. package/dist/ionic/p-8fc3b5de.entry.js +4 -0
  752. package/dist/ionic/p-8uDL7fql.js +4 -0
  753. package/dist/ionic/p-91e242e4.entry.js +4 -0
  754. package/dist/ionic/p-98c34fd7.entry.js +4 -0
  755. package/dist/ionic/p-9acd3fd3.entry.js +4 -0
  756. package/dist/ionic/p-9b9b1450.entry.js +4 -0
  757. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  758. package/dist/ionic/p-BYSs-jZz.js +4 -0
  759. package/dist/ionic/p-BYtS2rae.js +4 -0
  760. package/dist/ionic/p-BjW8SOqw.js +4 -0
  761. package/{components/p-9VcRUwdB.js → dist/ionic/p-BsfuYVMP.js} +1 -1
  762. package/dist/ionic/p-Bx0bt2Ar.js +4 -0
  763. package/dist/ionic/p-C2mpVKI1.js +4 -0
  764. package/dist/ionic/p-C5zxLmJ_.js +4 -0
  765. package/{components/p-BS1TtEiJ.js → dist/ionic/p-C8IHbcuP.js} +1 -1
  766. package/dist/ionic/p-CBV-BGvD.js +4 -0
  767. package/dist/ionic/p-CDn0uNJA.js +4 -0
  768. package/dist/ionic/p-CHE1xWbg.js +4 -0
  769. package/dist/ionic/p-CIk5QtPm.js +4 -0
  770. package/dist/ionic/{p-DV3sJJW8.js → p-COG0_eom.js} +1 -1
  771. package/dist/ionic/p-CQKe4n56.js +4 -0
  772. package/dist/ionic/p-CVp2D--1.js +4 -0
  773. package/dist/ionic/p-CXqdKf1K.js +4 -0
  774. package/dist/ionic/p-Cb-0O4h8.js +4 -0
  775. package/dist/ionic/{p-CKvCXMs9.js → p-CbkICFBN.js} +1 -1
  776. package/dist/ionic/p-D1t981Ih.js +4 -0
  777. package/dist/ionic/{p-B8xlpH8p.js → p-DKWXAwlR.js} +1 -1
  778. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  779. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  780. package/dist/ionic/p-DoyDJ2X5.js +4 -0
  781. package/dist/ionic/p-FvDKM4Ax.js +4 -0
  782. package/dist/ionic/p-Omi_TcwW.js +5 -0
  783. package/{components/p-D13Eaw-8.js → dist/ionic/p-SJmaFQ0H.js} +1 -1
  784. package/dist/ionic/p-SOASChNu.js +4 -0
  785. package/dist/ionic/{p-DjriolRs.js → p-ZqkJDyhe.js} +1 -1
  786. package/dist/ionic/p-a283aa4d.entry.js +4 -0
  787. package/dist/ionic/p-a53a3ecc.entry.js +4 -0
  788. package/dist/ionic/p-b00bbeb7.entry.js +4 -0
  789. package/dist/ionic/p-b049ae0f.entry.js +4 -0
  790. package/dist/ionic/p-bc5713f7.entry.js +4 -0
  791. package/dist/ionic/p-c136fa43.entry.js +4 -0
  792. package/dist/ionic/p-cdfbe4cc.entry.js +4 -0
  793. package/dist/ionic/p-dbf13f50.entry.js +4 -0
  794. package/dist/ionic/p-e1d04699.entry.js +4 -0
  795. package/dist/ionic/p-e9d6ce67.entry.js +4 -0
  796. package/dist/ionic/p-edb0b0c8.entry.js +4 -0
  797. package/dist/ionic/p-ef0c281a.entry.js +4 -0
  798. package/dist/ionic/p-fIOYmaqA.js +4 -0
  799. package/dist/ionic/p-qETiT38a.js +4 -0
  800. package/dist/ionic/{p-gbVXD275.js → p-qYp06FUk.js} +1 -1
  801. package/dist/ionic/p-vXpMhGrs.js +4 -0
  802. package/dist/types/components/accordion/accordion.d.ts +6 -3
  803. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  804. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  805. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  806. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  807. package/dist/types/components/alert/alert.d.ts +3 -2
  808. package/dist/types/components/app/app.d.ts +4 -5
  809. package/dist/types/components/avatar/avatar.d.ts +32 -0
  810. package/dist/types/components/back-button/back-button.d.ts +2 -1
  811. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  812. package/dist/types/components/badge/badge.d.ts +34 -1
  813. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  814. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  815. package/dist/types/components/button/button.d.ts +23 -8
  816. package/dist/types/components/buttons/buttons.d.ts +5 -1
  817. package/dist/types/components/card/card.d.ts +8 -1
  818. package/dist/types/components/card-content/card-content.d.ts +2 -1
  819. package/dist/types/components/card-header/card-header.d.ts +3 -2
  820. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  821. package/dist/types/components/card-title/card-title.d.ts +2 -1
  822. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  823. package/dist/types/components/chip/chip.d.ts +26 -1
  824. package/dist/types/components/col/col.d.ts +52 -5
  825. package/dist/types/components/content/content.d.ts +3 -0
  826. package/dist/types/components/datetime/datetime.d.ts +26 -1
  827. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  828. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  829. package/dist/types/components/divider/divider.d.ts +20 -0
  830. package/dist/types/components/fab/fab.d.ts +4 -0
  831. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  832. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  833. package/dist/types/components/footer/footer.d.ts +4 -3
  834. package/dist/types/components/grid/grid.d.ts +4 -0
  835. package/dist/types/components/header/header.d.ts +9 -3
  836. package/dist/types/components/header/header.utils.d.ts +3 -3
  837. package/dist/types/components/img/img.d.ts +3 -0
  838. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  839. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  840. package/dist/types/components/input/input.d.ts +31 -5
  841. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  842. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  843. package/dist/types/components/item/item.d.ts +11 -4
  844. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  845. package/dist/types/components/item-group/item-group.d.ts +4 -0
  846. package/dist/types/components/item-option/item-option.d.ts +18 -1
  847. package/dist/types/components/item-options/item-options.d.ts +4 -0
  848. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  849. package/dist/types/components/label/label.d.ts +2 -1
  850. package/dist/types/components/list/list.d.ts +15 -1
  851. package/dist/types/components/list-header/list-header.d.ts +2 -1
  852. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  853. package/dist/types/components/loading/loading.d.ts +3 -2
  854. package/dist/types/components/menu/menu.d.ts +3 -0
  855. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  856. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  857. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  858. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  859. package/dist/types/components/modal/modal.d.ts +11 -1
  860. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  861. package/dist/types/components/nav/nav.d.ts +5 -1
  862. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  863. package/dist/types/components/note/note.d.ts +2 -1
  864. package/dist/types/components/picker/picker.d.ts +2 -1
  865. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  866. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  867. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  868. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  869. package/dist/types/components/popover/popover.d.ts +6 -5
  870. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  871. package/dist/types/components/radio/radio.d.ts +2 -1
  872. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  873. package/dist/types/components/range/range.d.ts +2 -1
  874. package/dist/types/components/refresher/refresher.d.ts +2 -1
  875. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  876. package/dist/types/components/reorder/reorder.d.ts +9 -0
  877. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  878. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  879. package/dist/types/components/route/route.d.ts +4 -0
  880. package/dist/types/components/router/router.d.ts +4 -0
  881. package/dist/types/components/router-link/router-link.d.ts +4 -0
  882. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  883. package/dist/types/components/row/row.d.ts +4 -0
  884. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  885. package/dist/types/components/segment/segment.d.ts +2 -1
  886. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  887. package/dist/types/components/select/select.d.ts +41 -13
  888. package/dist/types/components/select-modal/select-modal.d.ts +1 -0
  889. package/dist/types/components/select-option/select-option.d.ts +4 -0
  890. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  891. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  892. package/dist/types/components/spinner/spinner.d.ts +15 -0
  893. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  894. package/dist/types/components/tab/tab.d.ts +4 -0
  895. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  896. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  897. package/dist/types/components/tabs/tabs.d.ts +3 -0
  898. package/dist/types/components/text/text.d.ts +2 -1
  899. package/dist/types/components/textarea/textarea.d.ts +53 -4
  900. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  901. package/dist/types/components/title/title.d.ts +4 -0
  902. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  903. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  904. package/dist/types/components/toast/toast.d.ts +19 -2
  905. package/dist/types/components/toggle/toggle.d.ts +15 -1
  906. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  907. package/dist/types/components.d.ts +1684 -205
  908. package/dist/types/global/ionic-global.d.ts +28 -2
  909. package/dist/types/interface.d.ts +3 -0
  910. package/dist/types/utils/config.d.ts +106 -2
  911. package/dist/types/utils/focus-trap.d.ts +1 -1
  912. package/dist/types/utils/focus-visible.d.ts +13 -0
  913. package/dist/types/utils/forms/validity.d.ts +7 -0
  914. package/dist/types/utils/helpers.d.ts +11 -0
  915. package/dist/types/utils/overlays-interface.d.ts +31 -1
  916. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  917. package/dist/types/utils/theme.d.ts +9 -0
  918. package/hydrate/index.js +3308 -998
  919. package/hydrate/index.mjs +3308 -998
  920. package/package.json +11 -7
  921. package/components/p-1KVKSLu5.js +0 -4
  922. package/components/p-ApmKVjaE.js +0 -4
  923. package/components/p-B6FQ0cKR.js +0 -4
  924. package/components/p-B6HaBl3o.js +0 -4
  925. package/components/p-B8b1Ukl9.js +0 -4
  926. package/components/p-BJoMtgfR.js +0 -4
  927. package/components/p-BNAG-aVv.js +0 -4
  928. package/components/p-BR3tZJmu.js +0 -4
  929. package/components/p-BSB38Tek.js +0 -4
  930. package/components/p-BTeL5HCK.js +0 -4
  931. package/components/p-BVnB3eEn.js +0 -4
  932. package/components/p-BYDc3hSE.js +0 -4
  933. package/components/p-BagjAGC0.js +0 -4
  934. package/components/p-BegtE7nr.js +0 -4
  935. package/components/p-BgwEQWW6.js +0 -4
  936. package/components/p-Bk2zuNWT.js +0 -4
  937. package/components/p-BmVRXR1y.js +0 -4
  938. package/components/p-BxwWvu-b.js +0 -4
  939. package/components/p-C4jPsTQa.js +0 -4
  940. package/components/p-C59ryAuS.js +0 -4
  941. package/components/p-C7AoMl7c.js +0 -4
  942. package/components/p-CBzELu-H.js +0 -4
  943. package/components/p-CDfQnFrd.js +0 -4
  944. package/components/p-CH0NYjKq.js +0 -4
  945. package/components/p-CIGNaXM1.js +0 -4
  946. package/components/p-CU1SSH8_.js +0 -4
  947. package/components/p-CgfaEEem.js +0 -4
  948. package/components/p-CgqKJg96.js +0 -4
  949. package/components/p-CneGxKsZ.js +0 -4
  950. package/components/p-CoA-aqGF.js +0 -4
  951. package/components/p-Cq8cQ0NL.js +0 -4
  952. package/components/p-Csw8xuz4.js +0 -4
  953. package/components/p-CtWGkNnJ.js +0 -4
  954. package/components/p-Cy5XSfIk.js +0 -4
  955. package/components/p-Cyxa_4PV.js +0 -4
  956. package/components/p-Cz5nLPGT.js +0 -4
  957. package/components/p-D6NJwNJN.js +0 -4
  958. package/components/p-D6Ynv7Xh.js +0 -4
  959. package/components/p-D6pdfDIA.js +0 -4
  960. package/components/p-DHsZWn1l.js +0 -4
  961. package/components/p-DJMZehmW.js +0 -4
  962. package/components/p-DJztqcrH.js +0 -4
  963. package/components/p-DYdpXONG.js +0 -4
  964. package/components/p-DgbT0exM.js +0 -4
  965. package/components/p-DiVJyqlX.js +0 -4
  966. package/components/p-ZjP4CjeZ.js +0 -4
  967. package/components/p-cvHphHJA.js +0 -4
  968. package/components/p-e-EDj2CO.js +0 -4
  969. package/components/p-fpbh6w3f.js +0 -4
  970. package/components/p-kvaDs24J.js +0 -4
  971. package/components/p-vEbVo2hO.js +0 -4
  972. package/dist/cjs/hardware-back-button-C4rMJ5uI.js +0 -121
  973. package/dist/cjs/index-DkNv4J_i.js +0 -10
  974. package/dist/cjs/ionic-global-Bc3kJi1Z.js +0 -151
  975. package/dist/cjs/validity-BpS37YFM.js +0 -19
  976. package/dist/esm/hardware-back-button-CTe4XmL7.js +0 -115
  977. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  978. package/dist/esm/ionic-global-DfbeLwcV.js +0 -146
  979. package/dist/esm/validity-DJztqcrH.js +0 -17
  980. package/dist/ionic/p-031b76f7.entry.js +0 -4
  981. package/dist/ionic/p-045a6a42.entry.js +0 -4
  982. package/dist/ionic/p-07506134.entry.js +0 -4
  983. package/dist/ionic/p-084c25b2.entry.js +0 -4
  984. package/dist/ionic/p-0d8b5c38.entry.js +0 -4
  985. package/dist/ionic/p-16813ce7.entry.js +0 -4
  986. package/dist/ionic/p-16b65553.entry.js +0 -4
  987. package/dist/ionic/p-1b02923f.entry.js +0 -4
  988. package/dist/ionic/p-1b169fb6.entry.js +0 -4
  989. package/dist/ionic/p-23fac490.entry.js +0 -4
  990. package/dist/ionic/p-294f4bb5.entry.js +0 -4
  991. package/dist/ionic/p-2a68388b.entry.js +0 -4
  992. package/dist/ionic/p-2d4eb1b4.entry.js +0 -4
  993. package/dist/ionic/p-2f5a8140.entry.js +0 -4
  994. package/dist/ionic/p-2fd110aa.entry.js +0 -4
  995. package/dist/ionic/p-301c43f8.entry.js +0 -4
  996. package/dist/ionic/p-370a60ee.entry.js +0 -4
  997. package/dist/ionic/p-3e143d1d.entry.js +0 -4
  998. package/dist/ionic/p-4819b469.entry.js +0 -4
  999. package/dist/ionic/p-4dd5e8e0.entry.js +0 -4
  1000. package/dist/ionic/p-51c11c47.entry.js +0 -4
  1001. package/dist/ionic/p-53f750a5.entry.js +0 -4
  1002. package/dist/ionic/p-6af16209.entry.js +0 -4
  1003. package/dist/ionic/p-6b701daa.entry.js +0 -4
  1004. package/dist/ionic/p-6b97f2a3.entry.js +0 -4
  1005. package/dist/ionic/p-7620be24.entry.js +0 -4
  1006. package/dist/ionic/p-771b27a5.entry.js +0 -4
  1007. package/dist/ionic/p-7ca71c83.entry.js +0 -4
  1008. package/dist/ionic/p-80cac7a2.entry.js +0 -4
  1009. package/dist/ionic/p-9833cf63.entry.js +0 -4
  1010. package/dist/ionic/p-9cbc6f1f.entry.js +0 -4
  1011. package/dist/ionic/p-9cdbabbb.entry.js +0 -4
  1012. package/dist/ionic/p-9eac4eb1.entry.js +0 -4
  1013. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1014. package/dist/ionic/p-9fae83d8.entry.js +0 -4
  1015. package/dist/ionic/p-BAt5H1ac.js +0 -4
  1016. package/dist/ionic/p-BW_TRJm8.js +0 -4
  1017. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1018. package/dist/ionic/p-Bum7H1fw.js +0 -4
  1019. package/dist/ionic/p-BxIcPWoV.js +0 -4
  1020. package/dist/ionic/p-C0JvVFMv.js +0 -4
  1021. package/dist/ionic/p-CGmVTdWh.js +0 -4
  1022. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1023. package/dist/ionic/p-CYbRmDdy.js +0 -4
  1024. package/dist/ionic/p-CYvM5g3q.js +0 -4
  1025. package/dist/ionic/p-CmFz1Mjc.js +0 -4
  1026. package/dist/ionic/p-CtA-yJYy.js +0 -4
  1027. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1028. package/dist/ionic/p-D8HJQ1qq.js +0 -4
  1029. package/dist/ionic/p-DB_iPQC-.js +0 -4
  1030. package/dist/ionic/p-DJztqcrH.js +0 -4
  1031. package/dist/ionic/p-DLbbmF9h.js +0 -4
  1032. package/dist/ionic/p-DTPR1Wpn.js +0 -4
  1033. package/dist/ionic/p-DiVJyqlX.js +0 -4
  1034. package/dist/ionic/p-DtVZDHlS.js +0 -4
  1035. package/dist/ionic/p-IGIE5vDm.js +0 -5
  1036. package/dist/ionic/p-NFFyoJ4Q.js +0 -4
  1037. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1038. package/dist/ionic/p-a805674e.entry.js +0 -4
  1039. package/dist/ionic/p-a84f2d21.entry.js +0 -4
  1040. package/dist/ionic/p-b325a113.entry.js +0 -4
  1041. package/dist/ionic/p-b6e0ff03.entry.js +0 -4
  1042. package/dist/ionic/p-bcaa827e.entry.js +0 -4
  1043. package/dist/ionic/p-c3cce9d8.entry.js +0 -4
  1044. package/dist/ionic/p-c744307d.entry.js +0 -4
  1045. package/dist/ionic/p-ca31010f.entry.js +0 -4
  1046. package/dist/ionic/p-d4e8b473.entry.js +0 -4
  1047. package/dist/ionic/p-e663bc5a.entry.js +0 -4
  1048. package/dist/ionic/p-e6c5f060.entry.js +0 -4
  1049. package/dist/ionic/p-e6cedcd7.entry.js +0 -4
  1050. package/dist/ionic/p-e863ffe8.entry.js +0 -4
  1051. package/dist/ionic/p-f2deaceb.entry.js +0 -4
  1052. package/dist/ionic/p-f5dfb9a3.entry.js +0 -4
  1053. package/dist/ionic/p-f69a5f71.entry.js +0 -4
  1054. package/dist/ionic/p-f8186550.entry.js +0 -4
  1055. package/dist/ionic/p-fdbc90d4.entry.js +0 -4
  1056. package/dist/ionic/p-hNN3VvaC.js +0 -4
  1057. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -2,11 +2,22 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { Fragment, Host, h } from "@stencil/core";
5
+ import { reportValidityToElementInternals } from "../../utils/forms/index";
5
6
  import { inheritAriaAttributes } from "../../utils/helpers";
6
7
  import { printIonWarning } from "../../utils/logging/index";
7
8
  import { isRTL } from "../../utils/rtl/index";
8
9
  import { createColorClasses } from "../../utils/theme";
9
10
  import { getIonMode } from "../../global/ionic-global";
11
+ /**
12
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
13
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
14
+ *
15
+ * @part group - The container element that wraps all input boxes.
16
+ * @part container - The wrapper element for each individual input box.
17
+ * @part native - The native input element.
18
+ * @part separator - The separator element displayed between input boxes.
19
+ * @part description - The container element for the description text.
20
+ */
10
21
  export class InputOTP {
11
22
  constructor() {
12
23
  this.inheritedAttributes = {};
@@ -130,9 +141,18 @@ export class InputOTP {
130
141
  * - Tab: Allows normal tab navigation between components
131
142
  */
132
143
  this.onKeyDown = (index) => (event) => {
133
- const { length } = this;
144
+ const { disabled, length, readonly } = this;
134
145
  const rtl = isRTL(this.el);
135
146
  const input = event.target;
147
+ if (disabled) {
148
+ return;
149
+ }
150
+ if (readonly) {
151
+ if (event.key === 'Backspace' || event.key === 'Delete') {
152
+ event.preventDefault();
153
+ return;
154
+ }
155
+ }
136
156
  // Meta shortcuts are used to copy, paste, and select text
137
157
  // We don't want to handle these keys here
138
158
  const metaShortcuts = ['a', 'c', 'v', 'x', 'r', 'z', 'y'];
@@ -195,10 +215,13 @@ export class InputOTP {
195
215
  */
196
216
  this.onInput = (index) => (event) => {
197
217
  var _a, _b;
198
- const { length, validKeyPattern } = this;
218
+ const { disabled, length, readonly, validKeyPattern } = this;
199
219
  const input = event.target;
200
220
  const value = input.value;
201
221
  const previousValue = this.previousInputValues[index] || '';
222
+ if (disabled || readonly) {
223
+ return;
224
+ }
202
225
  // 1. Autofill handling
203
226
  // If the length of the value increases by more than 1 from the previous
204
227
  // value, treat this as autofill. This is to prevent the case where the
@@ -317,8 +340,11 @@ export class InputOTP {
317
340
  */
318
341
  this.onPaste = (event) => {
319
342
  var _a, _b;
320
- const { inputRefs, length, validKeyPattern } = this;
343
+ const { disabled, inputRefs, length, readonly, validKeyPattern } = this;
321
344
  event.preventDefault();
345
+ if (disabled || readonly) {
346
+ return;
347
+ }
322
348
  const pastedText = (_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData('text');
323
349
  // If there is no pasted text, still emit the input change event
324
350
  // because this is how the native input element behaves
@@ -347,6 +373,12 @@ export class InputOTP {
347
373
  (_b = inputRefs[nextEmptyIndex]) === null || _b === void 0 ? void 0 : _b.focus();
348
374
  };
349
375
  }
376
+ /**
377
+ * Update element internals when disabled prop changes
378
+ */
379
+ disabledChanged() {
380
+ this.updateElementInternals();
381
+ }
350
382
  /**
351
383
  * Sets focus to an input box.
352
384
  * @param index - The index of the input box to focus (0-based).
@@ -367,6 +399,7 @@ export class InputOTP {
367
399
  valueChanged() {
368
400
  this.initializeValues();
369
401
  this.updateTabIndexes();
402
+ this.updateElementInternals();
370
403
  }
371
404
  /**
372
405
  * Processes the separators prop into an array of numbers.
@@ -423,6 +456,7 @@ export class InputOTP {
423
456
  }
424
457
  componentDidLoad() {
425
458
  this.updateTabIndexes();
459
+ this.updateElementInternals();
426
460
  }
427
461
  /**
428
462
  * Get the regex pattern for allowed characters.
@@ -499,6 +533,47 @@ export class InputOTP {
499
533
  this.ionComplete.emit({ value: newValue });
500
534
  }
501
535
  }
536
+ /**
537
+ * Gets the value of the input group as a string for form submission.
538
+ * Returns an empty string if the value is null or undefined.
539
+ */
540
+ getValue() {
541
+ return this.value != null ? this.value.toString() : '';
542
+ }
543
+ /**
544
+ * Called when the form state is restored.
545
+ * Restores the component's value.
546
+ */
547
+ formStateRestoreCallback(value) {
548
+ this.value = value;
549
+ }
550
+ /**
551
+ * Called when the form is reset.
552
+ * Resets the component's value.
553
+ */
554
+ formResetCallback() {
555
+ this.value = '';
556
+ }
557
+ /**
558
+ * Updates the form value and reports validity state to the browser via
559
+ * ElementInternals. This should be called when the component loads, when
560
+ * the disabled prop changes, and when the value changes to ensure the form
561
+ * value stays in sync and validation state is updated.
562
+ */
563
+ updateElementInternals() {
564
+ var _a;
565
+ // Disabled form controls should not be included in form data
566
+ // Pass null to setFormValue when disabled to exclude it from form submission
567
+ const value = this.disabled ? null : this.getValue();
568
+ // ElementInternals may not be fully available in test environments
569
+ // so we need to check if the method exists before calling it
570
+ if (typeof this.internals.setFormValue === 'function') {
571
+ this.internals.setFormValue(value);
572
+ }
573
+ // Use the first input element for validity reporting since all inputs
574
+ // share the same validation state
575
+ reportValidityToElementInternals((_a = this.inputRefs[0]) !== null && _a !== void 0 ? _a : null, this.internals);
576
+ }
502
577
  /**
503
578
  * Emits an `ionChange` event.
504
579
  * This API should be called for user committed changes.
@@ -605,7 +680,7 @@ export class InputOTP {
605
680
  const tabbableIndex = this.getTabbableIndex();
606
681
  const pattern = this.getPattern();
607
682
  const hasDescription = ((_b = (_a = el.querySelector('.input-otp-description')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== '';
608
- return (h(Host, { key: 'f15a29fb17b681ef55885ca36d3d5f899cbaca83', class: createColorClasses(color, {
683
+ return (h(Host, { key: 'aee59cdba3f3c3783519cf114c668ae92f74fcef', class: createColorClasses(color, {
609
684
  [mode]: true,
610
685
  'has-focus': hasFocus,
611
686
  [`input-otp-size-${size}`]: true,
@@ -613,23 +688,26 @@ export class InputOTP {
613
688
  [`input-otp-fill-${fill}`]: true,
614
689
  'input-otp-disabled': disabled,
615
690
  'input-otp-readonly': readonly,
616
- }) }, h("div", Object.assign({ key: 'd7e1d4edd8aafcf2ed4313301287282e90fc7e82', role: "group", "aria-label": "One-time password input", class: "input-otp-group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper" }, h("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && h("div", { class: "input-otp-separator" }))))), h("div", { key: '3724a3159d02860971879a906092f9965f5a7c47', class: {
691
+ }) }, h("div", Object.assign({ key: 'a0b26b833a20807019114a78e4512a639b82a61f', role: "group", "aria-label": "One-time password input", class: "input-otp-group", part: "group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper", part: "container" }, h("input", { class: "native-input", part: "native", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && h("div", { class: "input-otp-separator", part: "separator" }))))), h("div", { key: 'e525d1841bab5378b165ec1cca9fc45274c2c0ec', class: {
617
692
  'input-otp-description': true,
618
693
  'input-otp-description-hidden': !hasDescription,
619
- } }, h("slot", { key: '11baa2624926a08274508afe0833d9237a8dc35c' }))));
694
+ }, part: "description" }, h("slot", { key: '9fd331ceff04ab93f8d4aec251565cc201f19294' }))));
620
695
  }
621
696
  static get is() { return "ion-input-otp"; }
622
- static get encapsulation() { return "scoped"; }
697
+ static get encapsulation() { return "shadow"; }
698
+ static get formAssociated() { return true; }
623
699
  static get originalStyleUrls() {
624
700
  return {
625
701
  "ios": ["input-otp.ios.scss"],
626
- "md": ["input-otp.md.scss"]
702
+ "md": ["input-otp.md.scss"],
703
+ "ionic": ["input-otp.ionic.scss"]
627
704
  };
628
705
  }
629
706
  static get styleUrls() {
630
707
  return {
631
708
  "ios": ["input-otp.ios.css"],
632
- "md": ["input-otp.md.css"]
709
+ "md": ["input-otp.md.css"],
710
+ "ionic": ["input-otp.ionic.css"]
633
711
  };
634
712
  }
635
713
  static get properties() {
@@ -1046,6 +1124,9 @@ export class InputOTP {
1046
1124
  static get elementRef() { return "el"; }
1047
1125
  static get watchers() {
1048
1126
  return [{
1127
+ "propName": "disabled",
1128
+ "methodName": "disabledChanged"
1129
+ }, {
1049
1130
  "propName": "value",
1050
1131
  "methodName": "valueChanged"
1051
1132
  }, {
@@ -1056,5 +1137,6 @@ export class InputOTP {
1056
1137
  "methodName": "processSeparators"
1057
1138
  }];
1058
1139
  }
1140
+ static get attachInternalsMemberName() { return "internals"; }
1059
1141
  }
1060
1142
  let inputIds = 0;
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -53,6 +59,28 @@
53
59
  * }
54
60
  * }
55
61
  */
62
+ /**
63
+ * A heuristic that applies CSS to tablet
64
+ * viewports.
65
+ *
66
+ * Usage:
67
+ * @include tablet-viewport() {
68
+ * :host {
69
+ * background-color: green;
70
+ * }
71
+ * }
72
+ */
73
+ /**
74
+ * A heuristic that applies CSS to mobile
75
+ * viewports (i.e. phones, not tablets).
76
+ *
77
+ * Usage:
78
+ * @include mobile-viewport() {
79
+ * :host {
80
+ * background-color: blue;
81
+ * }
82
+ * }
83
+ */
56
84
  :host {
57
85
  /**
58
86
  * @prop --background: Background color of the input boxes
@@ -60,6 +88,7 @@
60
88
  * @prop --border-radius: Border radius of the input boxes
61
89
  *
62
90
  * @prop --border-width: Border width of the input boxes
91
+ * @prop --border-style: Border style of the input boxes
63
92
  * @prop --border-color: Border color of the input boxes
64
93
  *
65
94
  * @prop --color: Text color of the input
@@ -91,19 +120,7 @@
91
120
  --margin-end: 0;
92
121
  --margin-bottom: 0;
93
122
  --margin-start: 0;
94
- --padding-top: 16px;
95
- --padding-end: 0;
96
- --padding-bottom: 16px;
97
- --padding-start: 0;
98
- --color: initial;
99
- --min-width: 40px;
100
- --separator-width: 8px;
101
123
  --separator-height: var(--separator-width);
102
- --separator-border-radius: 999px;
103
- --separator-color: var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));
104
- --highlight-color-focused: var(--ion-color-primary, #0054e9);
105
- --highlight-color-valid: var(--ion-color-success, #2dd55b);
106
- --highlight-color-invalid: var(--ion-color-danger, #c5000f);
107
124
  /**
108
125
  * This is a private API that is used to switch
109
126
  * out the highlight color based on the state
@@ -113,7 +130,6 @@
113
130
  --highlight-color: var(--highlight-color-focused);
114
131
  display: block;
115
132
  position: relative;
116
- font-size: 0.875rem;
117
133
  }
118
134
 
119
135
  .input-otp-group {
@@ -147,13 +163,15 @@
147
163
  min-width: inherit;
148
164
  height: var(--height);
149
165
  border-width: var(--border-width);
150
- border-style: solid;
166
+ border-style: var(--border-style);
151
167
  border-color: var(--border-color);
152
168
  background: var(--background);
153
169
  color: var(--color);
170
+ font-family: inherit;
154
171
  font-size: inherit;
155
172
  text-align: center;
156
173
  appearance: none;
174
+ box-sizing: border-box;
157
175
  }
158
176
 
159
177
  :host(.has-focus) .native-input {
@@ -161,9 +179,6 @@
161
179
  }
162
180
 
163
181
  .input-otp-description {
164
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
165
- font-size: 0.75rem;
166
- line-height: 1.25rem;
167
182
  text-align: center;
168
183
  }
169
184
 
@@ -179,6 +194,73 @@
179
194
  background: var(--separator-color);
180
195
  }
181
196
 
197
+ :host(.input-otp-disabled),
198
+ :host(.input-otp-disabled) .native-input:disabled {
199
+ cursor: not-allowed;
200
+ }
201
+
202
+ :host(.has-focus) .native-input:focus {
203
+ --border-color: var(--highlight-color);
204
+ outline: none;
205
+ }
206
+
207
+ :host(.ion-touched.ion-invalid) {
208
+ --highlight-color: var(--highlight-color-invalid);
209
+ }
210
+
211
+ /**
212
+ * The component highlight is only shown
213
+ * on focus, so we can safely set the valid
214
+ * color state when valid. If we
215
+ * set it when .has-focus is present then
216
+ * the highlight color would change
217
+ * from the valid color to the component's
218
+ * color during the transition after the
219
+ * component loses focus.
220
+ */
221
+ :host(.ion-valid) {
222
+ --highlight-color: var(--highlight-color-valid);
223
+ }
224
+
225
+ /**
226
+ * If the input has a validity state, the
227
+ * border should reflect that as a color.
228
+ * The invalid state should show if the input is
229
+ * invalid and has already been touched.
230
+ * The valid state should show if the input
231
+ * is valid, has already been touched, and
232
+ * is currently focused. Do not show the valid
233
+ * highlight when the input is blurred.
234
+ */
235
+ :host(.has-focus.ion-valid),
236
+ :host(.ion-touched.ion-invalid) {
237
+ --border-color: var(--highlight-color);
238
+ }
239
+
240
+ :host {
241
+ --padding-top: 16px;
242
+ --padding-end: 0;
243
+ --padding-bottom: 16px;
244
+ --padding-start: 0;
245
+ --color: initial;
246
+ --min-width: 40px;
247
+ --border-style: solid;
248
+ --separator-width: 8px;
249
+ --separator-border-radius: 999px;
250
+ --separator-color: var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));
251
+ --highlight-color-focused: var(--ion-color-primary, #0054e9);
252
+ --highlight-color-valid: var(--ion-color-success, #2dd55b);
253
+ --highlight-color-invalid: var(--ion-color-danger, #c5000f);
254
+ font-family: var(--ion-font-family, inherit);
255
+ font-size: 0.875rem;
256
+ }
257
+
258
+ .input-otp-description {
259
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
260
+ font-size: 0.75rem;
261
+ line-height: 1.25rem;
262
+ }
263
+
182
264
  :host(.input-otp-size-small) {
183
265
  --width: 40px;
184
266
  --height: 40px;
@@ -233,16 +315,6 @@
233
315
  --border-color: var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));
234
316
  }
235
317
 
236
- :host(.input-otp-disabled),
237
- :host(.input-otp-disabled) .native-input:disabled {
238
- cursor: not-allowed;
239
- }
240
-
241
- :host(.has-focus) .native-input:focus {
242
- --border-color: var(--highlight-color);
243
- outline: none;
244
- }
245
-
246
318
  :host(.input-otp-fill-outline.input-otp-readonly) {
247
319
  --background: var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));
248
320
  }
@@ -253,39 +325,6 @@
253
325
  --background: var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));
254
326
  }
255
327
 
256
- :host(.ion-touched.ion-invalid) {
257
- --highlight-color: var(--highlight-color-invalid);
258
- }
259
-
260
- /**
261
- * The component highlight is only shown
262
- * on focus, so we can safely set the valid
263
- * color state when valid. If we
264
- * set it when .has-focus is present then
265
- * the highlight color would change
266
- * from the valid color to the component's
267
- * color during the transition after the
268
- * component loses focus.
269
- */
270
- :host(.ion-valid) {
271
- --highlight-color: var(--highlight-color-valid);
272
- }
273
-
274
- /**
275
- * If the input has a validity state, the
276
- * border should reflect that as a color.
277
- * The invalid state should show if the input is
278
- * invalid and has already been touched.
279
- * The valid state should show if the input
280
- * is valid, has already been touched, and
281
- * is currently focused. Do not show the valid
282
- * highlight when the input is blurred.
283
- */
284
- :host(.has-focus.ion-valid),
285
- :host(.ion-touched.ion-invalid) {
286
- --border-color: var(--highlight-color);
287
- }
288
-
289
328
  :host(.ion-color) {
290
329
  --highlight-color-focused: var(--ion-color-base);
291
330
  }
@@ -313,6 +352,12 @@
313
352
  border-color: rgba(var(--ion-color-base-rgb), 0.3);
314
353
  }
315
354
 
355
+ /**
356
+ * Convert a pixels given value into rem
357
+ *
358
+ * @param pixels - Value in pixels to be converted (i.e. px)
359
+ * @param context (optional) - Baseline value
360
+ */
316
361
  /**
317
362
  * Convert a font size to a dynamic font size.
318
363
  * Fonts that participate in Dynamic Type should use
@@ -0,0 +1,78 @@
1
+ /**
2
+ * A heuristic that applies CSS to tablet
3
+ * viewports.
4
+ *
5
+ * Usage:
6
+ * @include tablet-viewport() {
7
+ * :host {
8
+ * background-color: green;
9
+ * }
10
+ * }
11
+ */
12
+ /**
13
+ * A heuristic that applies CSS to mobile
14
+ * viewports (i.e. phones, not tablets).
15
+ *
16
+ * Usage:
17
+ * @include mobile-viewport() {
18
+ * :host {
19
+ * background-color: blue;
20
+ * }
21
+ * }
22
+ */
23
+ /**
24
+ * Convert a pixels given value into rem
25
+ *
26
+ * @param pixels - Value in pixels to be converted (i.e. px)
27
+ * @param context (optional) - Baseline value
28
+ */
29
+ /**
30
+ * Convert a font size to a dynamic font size.
31
+ * Fonts that participate in Dynamic Type should use
32
+ * dynamic font sizes.
33
+ * @param size - The initial font size including the unit (i.e. px or pt)
34
+ * @param unit (optional) - The unit to convert to. Use this if you want to
35
+ * convert to a unit other than $baselineUnit.
36
+ */
37
+ /**
38
+ * Convert a font size to a dynamic font size but impose
39
+ * a maximum font size.
40
+ * @param size - The initial font size including the unit (i.e. px or pt)
41
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
42
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
43
+ * convert to a unit other than $baselineUnit.
44
+ */
45
+ /**
46
+ * Convert a font size to a dynamic font size but impose
47
+ * a minimum font size.
48
+ * @param size - The initial font size including the unit (i.e. px or pt)
49
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
50
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
51
+ * convert to a unit other than $baselineUnit.
52
+ */
53
+ /**
54
+ * Convert a font size to a dynamic font size but impose
55
+ * maximum and minimum font sizes.
56
+ * @param size - The initial font size including the unit (i.e. px or pt)
57
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
58
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
59
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
60
+ * convert to a unit other than $baselineUnit.
61
+ */
62
+ :host ion-button {
63
+ --color: var(--token-primitives-neutral-800, #626262);
64
+ --margin-end: calc(-1 * var(--padding-end));
65
+ --padding-end: inherit;
66
+ --icon-size: var(--token-font-size-400, 1rem);
67
+ -webkit-margin-start: 0;
68
+ margin-inline-start: 0;
69
+ -webkit-margin-end: var(--margin-end);
70
+ margin-inline-end: var(--margin-end);
71
+ margin-top: 0;
72
+ margin-bottom: 0;
73
+ width: var(--size);
74
+ height: var(--size);
75
+ }
76
+ :host ion-button ion-icon {
77
+ font-size: var(--icon-size);
78
+ }
@@ -1,11 +1,14 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import eyeSlashRegular from "@phosphor-icons/core/assets/regular/eye-slash.svg";
5
+ import eyeRegular from "@phosphor-icons/core/assets/regular/eye.svg";
4
6
  import { Host, h } from "@stencil/core";
5
7
  import { printIonWarning } from "../../utils/logging/index";
6
8
  import { createColorClasses } from "../../utils/theme";
7
9
  import { eyeOff, eye } from "ionicons/icons";
8
- import { getIonMode } from "../../global/ionic-global";
10
+ import { config } from "../../global/config";
11
+ import { getIonMode, getIonTheme } from "../../global/ionic-global";
9
12
  /**
10
13
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
11
14
  */
@@ -53,36 +56,69 @@ export class InputPasswordToggle {
53
56
  disconnectedCallback() {
54
57
  this.inputElRef = null;
55
58
  }
59
+ get inputPasswordHideIcon() {
60
+ // Return the icon if it is explicitly set
61
+ if (this.hideIcon != null) {
62
+ return this.hideIcon;
63
+ }
64
+ // Determine the theme and map to default icons
65
+ const theme = getIonTheme(this);
66
+ const defaultIcons = {
67
+ ios: eyeOff,
68
+ ionic: eyeSlashRegular,
69
+ md: eyeOff,
70
+ };
71
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
72
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
73
+ // Return the configured input password hide icon or the default icon
74
+ return config.get('inputPasswordHideIcon', defaultIcon);
75
+ }
76
+ get inputPasswordShowIcon() {
77
+ // Return the icon if it is explicitly set
78
+ if (this.showIcon != null) {
79
+ return this.showIcon;
80
+ }
81
+ // Determine the theme and map to default icons
82
+ const theme = getIonTheme(this);
83
+ const defaultIcons = {
84
+ ios: eye,
85
+ ionic: eyeRegular,
86
+ md: eye,
87
+ };
88
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
89
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
90
+ // Return the configured input password show icon or the default icon
91
+ return config.get('inputPasswordShowIcon', defaultIcon);
92
+ }
56
93
  render() {
57
- var _a, _b;
58
- const { color, type } = this;
94
+ const { color, inputPasswordHideIcon, inputPasswordShowIcon, type } = this;
59
95
  const mode = getIonMode(this);
60
- const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
61
- const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
62
96
  const isPasswordVisible = type === 'text';
63
- return (h(Host, { key: '91bc55664d496fe457518bd112865dd7811d0c17', class: createColorClasses(color, {
97
+ return (h(Host, { key: 'e3c21d5bedebeadb57c0c9b7f065d15ab0d49e4a', class: createColorClasses(color, {
64
98
  [mode]: true,
65
- }) }, h("ion-button", { key: '6344d6838f5cdcba54c6bf4b592f036092044de0', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
99
+ }) }, h("ion-button", { key: '0a83d58e059bc3b7ef604270e92351d7fa5d129c', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
66
100
  /**
67
101
  * This prevents mobile browsers from
68
102
  * blurring the input when the password toggle
69
103
  * button is activated.
70
104
  */
71
105
  ev.preventDefault();
72
- }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: 'a2bd9197c2635bf8cb155ff25ce022e7d7dc6d00', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
106
+ }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: 'af9a7e202fe0b3f75f10b3e13bf1e5fb653194d1', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? inputPasswordHideIcon : inputPasswordShowIcon }))));
73
107
  }
74
108
  static get is() { return "ion-input-password-toggle"; }
75
109
  static get encapsulation() { return "shadow"; }
76
110
  static get originalStyleUrls() {
77
111
  return {
78
- "ios": ["input-password-toggle.scss"],
79
- "md": ["input-password-toggle.scss"]
112
+ "ios": ["input-password-toggle.native.scss"],
113
+ "md": ["input-password-toggle.native.scss"],
114
+ "ionic": ["input-password-toggle.ionic.scss"]
80
115
  };
81
116
  }
82
117
  static get styleUrls() {
83
118
  return {
84
- "ios": ["input-password-toggle.css"],
85
- "md": ["input-password-toggle.css"]
119
+ "ios": ["input-password-toggle.native.css"],
120
+ "md": ["input-password-toggle.native.css"],
121
+ "ionic": ["input-password-toggle.ionic.css"]
86
122
  };
87
123
  }
88
124
  static get properties() {
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
7
+ /**
8
+ * Convert a font size to a dynamic font size.
9
+ * Fonts that participate in Dynamic Type should use
10
+ * dynamic font sizes.
11
+ * @param size - The initial font size including the unit (i.e. px or pt)
12
+ * @param unit (optional) - The unit to convert to. Use this if you want to
13
+ * convert to a unit other than $baselineUnit.
14
+ */
15
+ /**
16
+ * Convert a font size to a dynamic font size but impose
17
+ * a maximum font size.
18
+ * @param size - The initial font size including the unit (i.e. px or pt)
19
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
20
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
21
+ * convert to a unit other than $baselineUnit.
22
+ */
23
+ /**
24
+ * Convert a font size to a dynamic font size but impose
25
+ * a minimum font size.
26
+ * @param size - The initial font size including the unit (i.e. px or pt)
27
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
28
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
29
+ * convert to a unit other than $baselineUnit.
30
+ */
31
+ /**
32
+ * Convert a font size to a dynamic font size but impose
33
+ * maximum and minimum font sizes.
34
+ * @param size - The initial font size including the unit (i.e. px or pt)
35
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
36
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
37
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
38
+ * convert to a unit other than $baselineUnit.
39
+ */
40
+ /**
41
+ * A heuristic that applies CSS to tablet
42
+ * viewports.
43
+ *
44
+ * Usage:
45
+ * @include tablet-viewport() {
46
+ * :host {
47
+ * background-color: green;
48
+ * }
49
+ * }
50
+ */
51
+ /**
52
+ * A heuristic that applies CSS to mobile
53
+ * viewports (i.e. phones, not tablets).
54
+ *
55
+ * Usage:
56
+ * @include mobile-viewport() {
57
+ * :host {
58
+ * background-color: blue;
59
+ * }
60
+ * }
61
+ */