@ionic/core 8.8.5 → 8.8.6-dev.11777490150.1970e4f2

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 (1096) 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-gallery.d.ts +11 -0
  33. package/components/ion-gallery.js +4 -0
  34. package/components/ion-grid.js +1 -1
  35. package/components/ion-header.js +1 -1
  36. package/components/ion-icon.js +1 -1
  37. package/components/ion-img.js +1 -1
  38. package/components/ion-infinite-scroll-content.js +1 -1
  39. package/components/ion-infinite-scroll.js +1 -1
  40. package/components/ion-input-otp.js +1 -1
  41. package/components/ion-input-password-toggle.js +1 -1
  42. package/components/ion-input.js +1 -1
  43. package/components/ion-item-divider.js +1 -1
  44. package/components/ion-item-group.js +1 -1
  45. package/components/ion-item-option.js +1 -1
  46. package/components/ion-item-options.js +1 -1
  47. package/components/ion-item-sliding.js +1 -1
  48. package/components/ion-item.js +1 -1
  49. package/components/ion-label.js +1 -1
  50. package/components/ion-list-header.js +1 -1
  51. package/components/ion-list.js +1 -1
  52. package/components/ion-loading.js +1 -1
  53. package/components/ion-menu-button.js +1 -1
  54. package/components/ion-menu-toggle.js +1 -1
  55. package/components/ion-menu.js +1 -1
  56. package/components/ion-modal.js +1 -1
  57. package/components/ion-nav-link.js +1 -1
  58. package/components/ion-nav.js +1 -1
  59. package/components/ion-note.js +1 -1
  60. package/components/ion-picker-column-option.js +1 -1
  61. package/components/ion-picker-column.js +1 -1
  62. package/components/ion-picker-legacy-column.js +1 -1
  63. package/components/ion-picker-legacy.js +1 -1
  64. package/components/ion-picker.js +1 -1
  65. package/components/ion-popover.js +1 -1
  66. package/components/ion-progress-bar.js +1 -1
  67. package/components/ion-radio-group.js +1 -1
  68. package/components/ion-radio.js +1 -1
  69. package/components/ion-range.js +1 -1
  70. package/components/ion-refresher-content.js +1 -1
  71. package/components/ion-refresher.js +1 -1
  72. package/components/ion-reorder-group.js +1 -1
  73. package/components/ion-reorder.js +1 -1
  74. package/components/ion-ripple-effect.js +1 -1
  75. package/components/ion-route-redirect.js +1 -1
  76. package/components/ion-route.js +1 -1
  77. package/components/ion-router-link.js +1 -1
  78. package/components/ion-router-outlet.js +1 -1
  79. package/components/ion-router.js +1 -1
  80. package/components/ion-row.js +1 -1
  81. package/components/ion-searchbar.js +1 -1
  82. package/components/ion-segment-button.js +1 -1
  83. package/components/ion-segment-content.js +1 -1
  84. package/components/ion-segment-view.js +1 -1
  85. package/components/ion-segment.js +1 -1
  86. package/components/ion-select-modal.js +1 -1
  87. package/components/ion-select-option.js +1 -1
  88. package/components/ion-select-popover.js +1 -1
  89. package/components/ion-select.js +1 -1
  90. package/components/ion-skeleton-text.js +1 -1
  91. package/components/ion-spinner.js +1 -1
  92. package/components/ion-split-pane.js +1 -1
  93. package/components/ion-tab-bar.js +1 -1
  94. package/components/ion-tab-button.js +1 -1
  95. package/components/ion-tab.js +1 -1
  96. package/components/ion-tabs.js +1 -1
  97. package/components/ion-text.js +1 -1
  98. package/components/ion-textarea.js +1 -1
  99. package/components/ion-thumbnail.js +1 -1
  100. package/components/ion-title.js +1 -1
  101. package/components/ion-toast.js +1 -1
  102. package/components/ion-toggle.js +1 -1
  103. package/components/ion-toolbar.js +1 -1
  104. package/components/p-0sa2JgYA.js +4 -0
  105. package/components/p-3Ni1Z654.js +4 -0
  106. package/{dist/ionic/p-D13Eaw-8.js → components/p-9gxM3tAr.js} +1 -1
  107. package/components/p-B2rpt1JV.js +4 -0
  108. package/components/{p-ak_d-z48.js → p-B636tzQ7.js} +1 -1
  109. package/components/p-B6zr9RZN.js +4 -0
  110. package/components/p-B71c6yUH.js +4 -0
  111. package/components/p-B8Oa6a_k.js +4 -0
  112. package/components/p-BCDEEm9n.js +4 -0
  113. package/components/p-BCFZKMI6.js +4 -0
  114. package/components/p-BDndEqui.js +4 -0
  115. package/components/p-BDqjX7Z_.js +4 -0
  116. package/components/p-BErKjY03.js +4 -0
  117. package/components/p-BFCM_1oE.js +4 -0
  118. package/components/p-BFbsici0.js +4 -0
  119. package/components/p-BLCuPAtN.js +4 -0
  120. package/components/{p-cyNmxje6.js → p-BLysWQA1.js} +1 -1
  121. package/components/p-BO4aickU.js +4 -0
  122. package/components/p-BRWWcnBq.js +4 -0
  123. package/components/p-BXcCGjEc.js +4 -0
  124. package/components/p-BYSs-jZz.js +4 -0
  125. package/components/p-BaPtaYEC.js +4 -0
  126. package/components/p-BbQGmZyu.js +4 -0
  127. package/components/p-BcbmT6b3.js +4 -0
  128. package/components/p-BeVlsaLA.js +4 -0
  129. package/components/p-BjW8SOqw.js +4 -0
  130. package/components/p-Bp__mr16.js +4 -0
  131. package/components/p-BqDiJgC_.js +4 -0
  132. package/components/p-BqImG3uk.js +4 -0
  133. package/components/p-BwKpO3Is.js +4 -0
  134. package/components/p-C00Y_WJv.js +4 -0
  135. package/components/p-C0U8YqYW.js +4 -0
  136. package/components/p-C8ktKu9j.js +4 -0
  137. package/components/p-CIoAIKEr.js +4 -0
  138. package/components/p-CKfNwyAb.js +4 -0
  139. package/components/p-CN-WzkJE.js +4 -0
  140. package/components/p-CVBkx7m1.js +4 -0
  141. package/components/p-Cb9imMZh.js +4 -0
  142. package/components/p-Cf9-xP7P.js +4 -0
  143. package/components/{p-Cwv-vmkN.js → p-CjSx8W-k.js} +1 -1
  144. package/components/p-Cmql_g3_.js +4 -0
  145. package/components/p-CoFqDNc5.js +4 -0
  146. package/components/p-CtiqM786.js +4 -0
  147. package/components/p-D1t981Ih.js +4 -0
  148. package/components/p-DAv9P_LE.js +4 -0
  149. package/components/p-DDw-NYxz.js +4 -0
  150. package/components/p-DH_9VCbD.js +4 -0
  151. package/components/p-DTtRWhIZ.js +4 -0
  152. package/components/p-DVcs-2q3.js +4 -0
  153. package/components/p-DXUyXgVL.js +4 -0
  154. package/components/p-DaJxRxSQ.js +4 -0
  155. package/components/p-Dhi5xtNS.js +4 -0
  156. package/components/p-Di5rHO3q.js +4 -0
  157. package/components/p-IMXp2Inn.js +4 -0
  158. package/components/p-TR4ubkPu.js +4 -0
  159. package/components/p-XegQjlzJ.js +4 -0
  160. package/components/p-fIOYmaqA.js +4 -0
  161. package/components/p-lIOqnNXn.js +4 -0
  162. package/{dist/ionic/p-BvFYtOdE.js → components/p-oF-CwZ0b.js} +1 -1
  163. package/components/p-sK-FK9CT.js +4 -0
  164. package/components/p-t98_NeNv.js +4 -0
  165. package/components/p-vCpF32Z7.js +4 -0
  166. package/components/p-vXpMhGrs.js +4 -0
  167. package/components/p-wCDzv5Q8.js +4 -0
  168. package/components/{p-YLXPWgVj.js → p-zWP0sUV_.js} +1 -1
  169. package/css/core.css +1 -1
  170. package/css/core.css.map +1 -1
  171. package/css/display.css +1 -1
  172. package/css/display.css.map +1 -1
  173. package/css/flex-utils.css +1 -1
  174. package/css/flex-utils.css.map +1 -1
  175. package/css/float-elements.css.map +1 -1
  176. package/css/global.bundle.css.map +1 -1
  177. package/css/ionic/bundle.ionic.css +1 -0
  178. package/css/ionic/bundle.ionic.css.map +1 -0
  179. package/css/ionic/core.ionic.css +1 -0
  180. package/css/ionic/core.ionic.css.map +1 -0
  181. package/css/ionic/global.bundle.ionic.css +1 -0
  182. package/css/ionic/global.bundle.ionic.css.map +1 -0
  183. package/css/ionic/ionic-swiper.ionic.css +1 -0
  184. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  185. package/css/ionic/link.ionic.css +1 -0
  186. package/css/ionic/link.ionic.css.map +1 -0
  187. package/css/ionic/structure.ionic.css +1 -0
  188. package/css/ionic/structure.ionic.css.map +1 -0
  189. package/css/ionic/typography.ionic.css +1 -0
  190. package/css/ionic/typography.ionic.css.map +1 -0
  191. package/css/ionic/utils.bundle.ionic.css +1 -0
  192. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  193. package/css/ionic-swiper.css +1 -1
  194. package/css/ionic-swiper.css.map +1 -1
  195. package/css/ionic.bundle.css +1 -1
  196. package/css/ionic.bundle.css.map +1 -1
  197. package/css/normalize.css.map +1 -1
  198. package/css/padding.css.map +1 -1
  199. package/css/palettes/dark.always.css.map +1 -1
  200. package/css/palettes/dark.class.css.map +1 -1
  201. package/css/palettes/dark.system.css.map +1 -1
  202. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  203. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  204. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  205. package/css/palettes/high-contrast.always.css.map +1 -1
  206. package/css/palettes/high-contrast.class.css.map +1 -1
  207. package/css/palettes/high-contrast.system.css.map +1 -1
  208. package/css/structure.css.map +1 -1
  209. package/css/text-alignment.css.map +1 -1
  210. package/css/text-transformation.css.map +1 -1
  211. package/css/typography.css.map +1 -1
  212. package/css/utils.bundle.css +1 -1
  213. package/css/utils.bundle.css.map +1 -1
  214. package/dist/cjs/{animation-Dg4yiuR2.js → animation-DknMeJ3x.js} +3 -3
  215. package/dist/cjs/{app-globals-CLI8xCmk.js → app-globals-DtAeky3x.js} +1 -1
  216. package/dist/cjs/{button-active-FscMI17-.js → button-active-JoIWyYri.js} +2 -2
  217. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-BnRBm_ys.js} +3 -3
  218. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  219. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  220. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  221. package/dist/cjs/config-DWdFbSNK.js +35 -0
  222. package/dist/cjs/{data-BYlBjkMU.js → data-DuOuKG7I.js} +6 -6
  223. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  224. package/dist/cjs/{framework-delegate-CRgp8o_p.js → framework-delegate-Dx9FrqAC.js} +4 -2
  225. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-D3Ay9mmg.js} +1 -1
  226. package/dist/cjs/{helpers-CxTYJdbT.js → helpers-DJYxKN5U.js} +57 -4
  227. package/dist/cjs/{config-BukYi_pW.js → index-BJlwOs11.js} +1 -31
  228. package/dist/cjs/{index-MbaBbWXk.js → index-BJrpF9T3.js} +2 -2
  229. package/dist/cjs/{index-CFUwM5x_.js → index-Cer2Qy4I.js} +15 -15
  230. package/dist/cjs/{index-DqmRDbxg.js → index-CgAbCW6L.js} +2 -0
  231. package/dist/cjs/{index-CqT-2gKy.js → index-CzcLEdQ5.js} +41 -4
  232. package/dist/cjs/{index-YcSftOMz.js → index-DMJjUhXH.js} +9 -8
  233. package/dist/cjs/{index-C845Ti6K.js → index-D_mPAIqF.js} +4 -4
  234. package/dist/cjs/index.cjs.js +16 -16
  235. package/dist/cjs/{input-shims-Dl5cnc_e.js → input-shims-Dn33gFln.js} +18 -17
  236. package/dist/cjs/{input.utils-DmeJ8dmo.js → input.utils-DnVnhWEF.js} +5 -5
  237. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -29
  238. package/dist/cjs/ion-action-sheet.cjs.entry.js +41 -22
  239. package/dist/cjs/ion-alert.cjs.entry.js +62 -41
  240. package/dist/cjs/ion-app_8.cjs.entry.js +292 -157
  241. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -13
  242. package/dist/cjs/ion-back-button.cjs.entry.js +31 -22
  243. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -7
  244. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -18
  245. package/dist/cjs/ion-button_2.cjs.entry.js +59 -22
  246. package/dist/cjs/ion-card_5.cjs.entry.js +55 -33
  247. package/dist/cjs/ion-checkbox.cjs.entry.js +34 -16
  248. package/dist/cjs/ion-chip.cjs.entry.js +50 -9
  249. package/dist/cjs/ion-col_3.cjs.entry.js +56 -57
  250. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -9
  251. package/dist/cjs/ion-datetime_3.cjs.entry.js +116 -41
  252. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  253. package/dist/cjs/ion-fab_3.cjs.entry.js +44 -28
  254. package/dist/cjs/ion-gallery.cjs.entry.js +330 -0
  255. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  256. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +93 -17
  257. package/dist/cjs/ion-input-otp.cjs.entry.js +74 -9
  258. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +53 -15
  259. package/dist/cjs/ion-input.cjs.entry.js +124 -34
  260. package/dist/cjs/ion-item-option_3.cjs.entry.js +186 -21
  261. package/dist/cjs/ion-item_8.cjs.entry.js +116 -49
  262. package/dist/cjs/ion-loading.cjs.entry.js +22 -19
  263. package/dist/cjs/ion-menu_3.cjs.entry.js +47 -29
  264. package/dist/cjs/ion-modal.cjs.entry.js +262 -138
  265. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -11
  266. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -8
  267. package/dist/cjs/ion-picker-column.cjs.entry.js +14 -14
  268. package/dist/cjs/ion-picker.cjs.entry.js +10 -6
  269. package/dist/cjs/ion-popover.cjs.entry.js +21 -19
  270. package/dist/cjs/ion-progress-bar.cjs.entry.js +27 -9
  271. package/dist/cjs/ion-radio_2.cjs.entry.js +35 -17
  272. package/dist/cjs/ion-range.cjs.entry.js +20 -13
  273. package/dist/cjs/ion-refresher_2.cjs.entry.js +42 -23
  274. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -14
  275. package/dist/cjs/ion-ripple-effect.cjs.entry.js +15 -7
  276. package/dist/cjs/ion-route_4.cjs.entry.js +10 -9
  277. package/dist/cjs/ion-searchbar.cjs.entry.js +137 -24
  278. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  279. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -3
  280. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -16
  281. package/dist/cjs/ion-select-modal.cjs.entry.js +97 -40
  282. package/dist/cjs/ion-select_3.cjs.entry.js +453 -84
  283. package/dist/cjs/ion-spinner.cjs.entry.js +30 -8
  284. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -9
  285. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +147 -23
  286. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  287. package/dist/cjs/ion-text.cjs.entry.js +7 -7
  288. package/dist/cjs/ion-textarea.cjs.entry.js +137 -23
  289. package/dist/cjs/ion-toast.cjs.entry.js +70 -46
  290. package/dist/cjs/ion-toggle.cjs.entry.js +82 -25
  291. package/dist/cjs/ionic-global-CSEbHD_F.js +519 -0
  292. package/dist/cjs/ionic.cjs.js +4 -4
  293. package/dist/cjs/{ios.transition-trBiC95R.js → ios.transition-UCjoxA3D.js} +7 -5
  294. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Bhav6x-R.js} +4 -3
  295. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-Dsczf-iT.js} +1 -1
  296. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-tqGDP9SU.js} +11 -9
  297. package/dist/cjs/list-a-7GSA6K.js +8 -0
  298. package/dist/cjs/loader.cjs.js +4 -4
  299. package/dist/cjs/{md.transition-CUQECuvD.js → md.transition-CNwlchQn.js} +6 -5
  300. package/dist/cjs/{notch-controller-sD-lTpdc.js → notch-controller-CgtkBzy0.js} +4 -4
  301. package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-Hci_7vw_.js} +110 -16
  302. package/dist/cjs/select-option-render-C7klBX2H.js +81 -0
  303. package/dist/cjs/{status-tap-CCJk5VgT.js → status-tap-CTY2dMsZ.js} +4 -3
  304. package/dist/cjs/{swipe-back-BGhTQ1CU.js → swipe-back-jJFi5KCB.js} +3 -2
  305. package/dist/cjs/{theme-CeDs6Hcv.js → theme-IlOsGAz7.js} +25 -1
  306. package/dist/cjs/validity-QmuwEptc.js +51 -0
  307. package/dist/cjs/x-BTF99yFH.js +8 -0
  308. package/dist/collection/collection-manifest.json +7 -0
  309. package/dist/collection/components/accordion/accordion.ionic.css +201 -0
  310. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  311. package/dist/collection/components/accordion/accordion.js +41 -27
  312. package/dist/collection/components/accordion/accordion.md.css +67 -59
  313. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  314. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  315. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  316. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  317. package/dist/collection/components/action-sheet/action-sheet.ionic.css +834 -0
  318. package/dist/collection/components/action-sheet/action-sheet.ios.css +102 -6
  319. package/dist/collection/components/action-sheet/action-sheet.js +32 -13
  320. package/dist/collection/components/action-sheet/action-sheet.md.css +101 -5
  321. package/dist/collection/components/alert/alert.ionic.css +1165 -0
  322. package/dist/collection/components/alert/alert.ios.css +102 -1
  323. package/dist/collection/components/alert/alert.js +51 -30
  324. package/dist/collection/components/alert/alert.md.css +102 -1
  325. package/dist/collection/components/app/app.js +15 -83
  326. package/dist/collection/components/avatar/avatar.ionic.css +391 -0
  327. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  328. package/dist/collection/components/avatar/avatar.js +120 -4
  329. package/dist/collection/components/avatar/avatar.md.css +51 -0
  330. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  331. package/dist/collection/components/back-button/back-button.js +27 -19
  332. package/dist/collection/components/back-button/back-button.md.css +60 -48
  333. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  334. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  335. package/dist/collection/components/backdrop/backdrop.js +12 -6
  336. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  337. package/dist/collection/components/badge/badge.ionic.css +275 -0
  338. package/dist/collection/components/badge/badge.ios.css +139 -12
  339. package/dist/collection/components/badge/badge.js +145 -9
  340. package/dist/collection/components/badge/badge.md.css +123 -12
  341. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  342. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  343. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  344. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  345. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  346. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  347. package/dist/collection/components/button/button.ionic.css +646 -0
  348. package/dist/collection/components/button/button.ios.css +154 -46
  349. package/dist/collection/components/button/button.js +63 -27
  350. package/dist/collection/components/button/button.md.css +150 -50
  351. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  352. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  353. package/dist/collection/components/buttons/buttons.js +15 -9
  354. package/dist/collection/components/buttons/buttons.md.css +55 -3
  355. package/dist/collection/components/card/card.ionic.css +144 -0
  356. package/dist/collection/components/card/card.ios.css +65 -14
  357. package/dist/collection/components/card/card.js +41 -10
  358. package/dist/collection/components/card/card.md.css +65 -14
  359. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  360. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  361. package/dist/collection/components/card-content/card-content.js +12 -10
  362. package/dist/collection/components/card-content/card-content.md.css +20 -35
  363. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  364. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  365. package/dist/collection/components/card-header/card-header.js +13 -10
  366. package/dist/collection/components/card-header/card-header.md.css +27 -15
  367. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  368. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  369. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  370. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  371. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  372. package/dist/collection/components/card-title/card-title.js +11 -8
  373. package/dist/collection/components/card-title/card-title.md.css +73 -0
  374. package/dist/collection/components/checkbox/checkbox.ionic.css +539 -0
  375. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  376. package/dist/collection/components/checkbox/checkbox.js +70 -14
  377. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  378. package/dist/collection/components/chip/chip.ionic.css +217 -0
  379. package/dist/collection/components/chip/chip.ios.css +67 -14
  380. package/dist/collection/components/chip/chip.js +108 -8
  381. package/dist/collection/components/chip/chip.md.css +67 -14
  382. package/dist/collection/components/col/col.css +192 -4
  383. package/dist/collection/components/col/col.js +211 -61
  384. package/dist/collection/components/content/content.css +8 -2
  385. package/dist/collection/components/content/content.js +16 -11
  386. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  387. package/dist/collection/components/datetime/datetime.ios.css +302 -106
  388. package/dist/collection/components/datetime/datetime.js +98 -20
  389. package/dist/collection/components/datetime/datetime.md.css +293 -96
  390. package/dist/collection/components/datetime/utils/data.js +5 -5
  391. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  392. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  393. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  394. package/dist/collection/components/divider/divider.ionic.css +148 -0
  395. package/dist/collection/components/divider/divider.ios.css +87 -0
  396. package/dist/collection/components/divider/divider.js +94 -0
  397. package/dist/collection/components/divider/divider.md.css +87 -0
  398. package/dist/collection/components/fab/fab.css +25 -1
  399. package/dist/collection/components/fab/fab.js +9 -5
  400. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  401. package/dist/collection/components/fab-button/fab-button.js +36 -21
  402. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  403. package/dist/collection/components/fab-list/fab-list.css +12 -0
  404. package/dist/collection/components/fab-list/fab-list.js +9 -5
  405. package/dist/collection/components/footer/footer.ios.css +14 -2
  406. package/dist/collection/components/footer/footer.js +21 -16
  407. package/dist/collection/components/footer/footer.md.css +12 -0
  408. package/dist/collection/components/gallery/gallery-interface.js +1 -0
  409. package/dist/collection/components/gallery/gallery.css +38 -0
  410. package/dist/collection/components/gallery/gallery.js +421 -0
  411. package/dist/collection/components/gallery/test/utils.js +100 -0
  412. package/dist/collection/components/grid/grid.css +12 -0
  413. package/dist/collection/components/grid/grid.js +9 -5
  414. package/dist/collection/components/header/header.ionic.css +97 -0
  415. package/dist/collection/components/header/header.ios.css +25 -10
  416. package/dist/collection/components/header/header.js +50 -19
  417. package/dist/collection/components/header/header.md.css +23 -8
  418. package/dist/collection/components/header/header.utils.js +5 -5
  419. package/dist/collection/components/img/img.js +8 -2
  420. package/dist/collection/components/infinite-scroll/infinite-scroll.js +100 -5
  421. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  422. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  423. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  424. package/dist/collection/components/input/input.ionic.css +889 -0
  425. package/dist/collection/components/input/input.ios.css +223 -135
  426. package/dist/collection/components/input/input.js +148 -37
  427. package/dist/collection/components/input/input.md.css +193 -207
  428. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  429. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  430. package/dist/collection/components/input-otp/input-otp.js +73 -6
  431. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  432. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  433. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  434. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  435. package/dist/collection/components/item/item.ionic.css +508 -0
  436. package/dist/collection/components/item/item.ios.css +109 -69
  437. package/dist/collection/components/item/item.js +51 -20
  438. package/dist/collection/components/item/item.md.css +120 -68
  439. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  440. package/dist/collection/components/item-divider/item-divider.js +11 -8
  441. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  442. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  443. package/dist/collection/components/item-group/item-group.js +13 -7
  444. package/dist/collection/components/item-group/item-group.md.css +12 -0
  445. package/dist/collection/components/item-option/item-option.ionic.css +278 -0
  446. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  447. package/dist/collection/components/item-option/item-option.js +73 -9
  448. package/dist/collection/components/item-option/item-option.md.css +136 -29
  449. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  450. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  451. package/dist/collection/components/item-options/item-options.js +13 -7
  452. package/dist/collection/components/item-options/item-options.md.css +77 -34
  453. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  454. package/dist/collection/components/item-sliding/item-sliding.js +144 -4
  455. package/dist/collection/components/label/label.ios.css +18 -0
  456. package/dist/collection/components/label/label.js +11 -8
  457. package/dist/collection/components/label/label.md.css +18 -0
  458. package/dist/collection/components/list/list.ionic.css +212 -0
  459. package/dist/collection/components/list/list.ios.css +54 -14
  460. package/dist/collection/components/list/list.js +48 -9
  461. package/dist/collection/components/list/list.md.css +56 -16
  462. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  463. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  464. package/dist/collection/components/list-header/list-header.js +11 -8
  465. package/dist/collection/components/list-header/list-header.md.css +82 -38
  466. package/dist/collection/components/loading/loading.ios.css +13 -1
  467. package/dist/collection/components/loading/loading.js +14 -11
  468. package/dist/collection/components/loading/loading.md.css +13 -1
  469. package/dist/collection/components/menu/menu.ios.css +15 -3
  470. package/dist/collection/components/menu/menu.js +12 -7
  471. package/dist/collection/components/menu/menu.md.css +15 -3
  472. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  473. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  474. package/dist/collection/components/menu-button/menu-button.js +26 -10
  475. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  476. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  477. package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
  478. package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
  479. package/dist/collection/components/modal/animations/sheet.js +8 -2
  480. package/dist/collection/components/modal/gestures/sheet.js +76 -10
  481. package/dist/collection/components/modal/modal.ionic.css +247 -0
  482. package/dist/collection/components/modal/modal.ios.css +178 -70
  483. package/dist/collection/components/modal/modal.js +50 -12
  484. package/dist/collection/components/modal/modal.md.css +178 -70
  485. package/dist/collection/components/nav/nav.css +7 -1
  486. package/dist/collection/components/nav/nav.js +11 -5
  487. package/dist/collection/components/nav-link/nav-link.js +5 -1
  488. package/dist/collection/components/note/note.ios.css +12 -0
  489. package/dist/collection/components/note/note.js +11 -8
  490. package/dist/collection/components/note/note.md.css +12 -0
  491. package/dist/collection/components/picker/picker.ios.css +15 -3
  492. package/dist/collection/components/picker/picker.js +8 -5
  493. package/dist/collection/components/picker/picker.md.css +15 -3
  494. package/dist/collection/components/picker-column/picker-column.css +9 -2
  495. package/dist/collection/components/picker-column/picker-column.js +8 -7
  496. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  497. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  498. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  499. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  500. package/dist/collection/components/picker-legacy/picker.js +7 -6
  501. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  502. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  503. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  504. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  505. package/dist/collection/components/popover/popover.ionic.css +290 -0
  506. package/dist/collection/components/popover/popover.ios.css +29 -1
  507. package/dist/collection/components/popover/popover.js +18 -15
  508. package/dist/collection/components/popover/popover.md.css +29 -1
  509. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  510. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  511. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  512. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  513. package/dist/collection/components/radio/radio.ionic.css +422 -0
  514. package/dist/collection/components/radio/radio.ios.css +134 -91
  515. package/dist/collection/components/radio/radio.js +14 -9
  516. package/dist/collection/components/radio/radio.md.css +134 -91
  517. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  518. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  519. package/dist/collection/components/radio-group/radio-group.js +48 -7
  520. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  521. package/dist/collection/components/range/range.ionic.css +567 -0
  522. package/dist/collection/components/range/range.ios.css +128 -85
  523. package/dist/collection/components/range/range.js +16 -10
  524. package/dist/collection/components/range/range.md.css +128 -85
  525. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  526. package/dist/collection/components/refresher/refresher.js +11 -8
  527. package/dist/collection/components/refresher/refresher.md.css +15 -2
  528. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  529. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  530. package/dist/collection/components/reorder/reorder.js +33 -6
  531. package/dist/collection/components/reorder/reorder.md.css +6 -0
  532. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  533. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  534. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  535. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  536. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  537. package/dist/collection/components/route/route.js +4 -0
  538. package/dist/collection/components/router/router.js +4 -0
  539. package/dist/collection/components/router-link/router-link.css +8 -2
  540. package/dist/collection/components/router-link/router-link.js +9 -5
  541. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  542. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  543. package/dist/collection/components/row/row.css +16 -0
  544. package/dist/collection/components/row/row.js +9 -2
  545. package/dist/collection/components/searchbar/searchbar.ionic.css +626 -0
  546. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  547. package/dist/collection/components/searchbar/searchbar.js +180 -33
  548. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  549. package/dist/collection/components/segment/segment.ionic.css +115 -0
  550. package/dist/collection/components/segment/segment.ios.css +45 -2
  551. package/dist/collection/components/segment/segment.js +11 -8
  552. package/dist/collection/components/segment/segment.md.css +45 -2
  553. package/dist/collection/components/segment-button/segment-button.ionic.css +353 -0
  554. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  555. package/dist/collection/components/segment-button/segment-button.js +11 -8
  556. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  557. package/dist/collection/components/segment-content/segment-content.js +1 -1
  558. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  559. package/dist/collection/components/segment-view/segment-view.js +6 -4
  560. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  561. package/dist/collection/components/select/select.ionic.css +810 -0
  562. package/dist/collection/components/select/select.ios.css +348 -176
  563. package/dist/collection/components/select/select.js +434 -66
  564. package/dist/collection/components/select/select.md.css +364 -178
  565. package/dist/collection/components/select-modal/select-modal.ionic.css +154 -0
  566. package/dist/collection/components/select-modal/select-modal.ios.css +95 -0
  567. package/dist/collection/components/select-modal/select-modal.js +109 -32
  568. package/dist/collection/components/select-modal/select-modal.md.css +83 -0
  569. package/dist/collection/components/select-option/select-option.js +32 -2
  570. package/dist/collection/components/select-popover/select-popover.ionic.css +499 -0
  571. package/dist/collection/components/select-popover/select-popover.ios.css +100 -0
  572. package/dist/collection/components/select-popover/select-popover.js +72 -31
  573. package/dist/collection/components/select-popover/select-popover.md.css +100 -0
  574. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  575. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  576. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  577. package/dist/collection/components/spinner/spinner.js +47 -6
  578. package/dist/collection/components/spinner/spinner.native.css +199 -0
  579. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  580. package/dist/collection/components/split-pane/split-pane.js +15 -8
  581. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  582. package/dist/collection/components/tab/tab.js +6 -2
  583. package/dist/collection/components/tab-bar/tab-bar.ionic.css +227 -0
  584. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  585. package/dist/collection/components/tab-bar/tab-bar.js +171 -13
  586. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  587. package/dist/collection/components/tab-button/tab-button.ionic.css +348 -0
  588. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  589. package/dist/collection/components/tab-button/tab-button.js +54 -9
  590. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  591. package/dist/collection/components/tabs/tabs.css +7 -1
  592. package/dist/collection/components/tabs/tabs.js +4 -1
  593. package/dist/collection/components/text/text.css +6 -0
  594. package/dist/collection/components/text/text.js +7 -6
  595. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  596. package/dist/collection/components/textarea/textarea.ios.css +298 -158
  597. package/dist/collection/components/textarea/textarea.js +162 -24
  598. package/dist/collection/components/textarea/textarea.md.css +312 -159
  599. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  600. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  601. package/dist/collection/components/title/title.ionic.css +127 -0
  602. package/dist/collection/components/title/title.ios.css +32 -4
  603. package/dist/collection/components/title/title.js +13 -7
  604. package/dist/collection/components/title/title.md.css +32 -4
  605. package/dist/collection/components/toast/animations/utils.js +1 -1
  606. package/dist/collection/components/toast/toast.ionic.css +394 -0
  607. package/dist/collection/components/toast/toast.ios.css +84 -45
  608. package/dist/collection/components/toast/toast.js +76 -13
  609. package/dist/collection/components/toast/toast.md.css +84 -45
  610. package/dist/collection/components/toggle/toggle.ionic.css +508 -0
  611. package/dist/collection/components/toggle/toggle.ios.css +247 -131
  612. package/dist/collection/components/toggle/toggle.js +73 -18
  613. package/dist/collection/components/toggle/toggle.md.css +244 -131
  614. package/dist/collection/components/toolbar/test/image.svg +1 -0
  615. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  616. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  617. package/dist/collection/components/toolbar/toolbar.js +218 -13
  618. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  619. package/dist/collection/global/ionic-global.js +241 -13
  620. package/dist/collection/utils/focus-trap.js +13 -2
  621. package/dist/collection/utils/focus-visible.js +22 -0
  622. package/dist/collection/utils/forms/validity.js +31 -0
  623. package/dist/collection/utils/framework-delegate.js +3 -1
  624. package/dist/collection/utils/hardware-back-button.js +15 -0
  625. package/dist/collection/utils/helpers.js +57 -3
  626. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  627. package/dist/collection/utils/media.js +1 -0
  628. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  629. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  630. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  631. package/dist/collection/utils/overlays.js +91 -6
  632. package/dist/collection/utils/select-option-render.js +76 -0
  633. package/dist/collection/utils/test/playwright/drag-element.js +3 -4
  634. package/dist/collection/utils/test/playwright/generator.js +48 -23
  635. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  636. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  637. package/dist/collection/utils/theme.js +25 -1
  638. package/dist/collection/utils/transition/ios.transition.js +1 -0
  639. package/dist/docs.json +8781 -283
  640. package/dist/esm/{animation-CnGMT4ji.js → animation-Cqe2x-Pt.js} +2 -2
  641. package/dist/esm/{app-globals-DhZjtldk.js → app-globals-Dk1rB3aE.js} +1 -1
  642. package/dist/esm/{button-active-BBx21brx.js → button-active-g6ZnZzDZ.js} +2 -2
  643. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-C4lYa1nV.js} +1 -1
  644. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  645. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  646. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  647. package/dist/esm/config-BwKpO3Is.js +31 -0
  648. package/dist/esm/{data-B9iGR5YO.js → data-BNKYavC3.js} +6 -6
  649. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  650. package/dist/esm/{framework-delegate-CyxE1S_P.js → framework-delegate-CjVwn_KZ.js} +4 -2
  651. package/dist/esm/{haptic-DzAMWJuk.js → haptic-_88k1V5U.js} +1 -1
  652. package/dist/esm/{helpers-Tl8jw6S2.js → helpers-Do7zwvM1.js} +58 -5
  653. package/dist/esm/{index-hW6eNZ3o.js → index-BmkLokUL.js} +2 -2
  654. package/dist/esm/{index-BtUdxPjv.js → index-C5t9-ciC.js} +4 -3
  655. package/dist/esm/{index-B-hkiOUh.js → index-CGthURny.js} +4 -4
  656. package/dist/esm/{index-DV3sJJW8.js → index-D2tu5BUg.js} +2 -1
  657. package/dist/esm/{config-TO1rZH52.js → index-D4ugF_sT.js} +2 -29
  658. package/dist/esm/{index-IGIE5vDm.js → index-Omi_TcwW.js} +41 -4
  659. package/dist/esm/{index-B2KwgBLx.js → index-hpH08p5s.js} +11 -11
  660. package/dist/esm/index.js +14 -14
  661. package/dist/esm/{input-shims-AaDhOpKN.js → input-shims-vDjCsx95.js} +7 -6
  662. package/dist/esm/{input.utils-Bxa_DQ7-.js → input.utils-B9Q5xHp6.js} +3 -3
  663. package/dist/esm/ion-accordion_2.entry.js +61 -29
  664. package/dist/esm/ion-action-sheet.entry.js +41 -22
  665. package/dist/esm/ion-alert.entry.js +61 -40
  666. package/dist/esm/ion-app_8.entry.js +292 -157
  667. package/dist/esm/ion-avatar_3.entry.js +125 -13
  668. package/dist/esm/ion-back-button.entry.js +31 -22
  669. package/dist/esm/ion-backdrop.entry.js +10 -7
  670. package/dist/esm/ion-breadcrumb_2.entry.js +54 -18
  671. package/dist/esm/ion-button_2.entry.js +59 -22
  672. package/dist/esm/ion-card_5.entry.js +55 -33
  673. package/dist/esm/ion-checkbox.entry.js +34 -16
  674. package/dist/esm/ion-chip.entry.js +50 -9
  675. package/dist/esm/ion-col_3.entry.js +56 -57
  676. package/dist/esm/ion-datetime-button.entry.js +13 -9
  677. package/dist/esm/ion-datetime_3.entry.js +116 -41
  678. package/dist/esm/ion-divider.entry.js +49 -0
  679. package/dist/esm/ion-fab_3.entry.js +44 -28
  680. package/dist/esm/ion-gallery.entry.js +328 -0
  681. package/dist/esm/ion-img.entry.js +8 -4
  682. package/dist/esm/ion-infinite-scroll_2.entry.js +92 -16
  683. package/dist/esm/ion-input-otp.entry.js +74 -9
  684. package/dist/esm/ion-input-password-toggle.entry.js +53 -15
  685. package/dist/esm/ion-input.entry.js +124 -34
  686. package/dist/esm/ion-item-option_3.entry.js +186 -21
  687. package/dist/esm/ion-item_8.entry.js +116 -49
  688. package/dist/esm/ion-loading.entry.js +21 -18
  689. package/dist/esm/ion-menu_3.entry.js +47 -29
  690. package/dist/esm/ion-modal.entry.js +215 -91
  691. package/dist/esm/ion-nav_2.entry.js +14 -11
  692. package/dist/esm/ion-picker-column-option.entry.js +12 -8
  693. package/dist/esm/ion-picker-column.entry.js +13 -13
  694. package/dist/esm/ion-picker.entry.js +10 -6
  695. package/dist/esm/ion-popover.entry.js +21 -19
  696. package/dist/esm/ion-progress-bar.entry.js +27 -9
  697. package/dist/esm/ion-radio_2.entry.js +35 -17
  698. package/dist/esm/ion-range.entry.js +20 -13
  699. package/dist/esm/ion-refresher_2.entry.js +40 -21
  700. package/dist/esm/ion-reorder_2.entry.js +38 -14
  701. package/dist/esm/ion-ripple-effect.entry.js +15 -7
  702. package/dist/esm/ion-route_4.entry.js +10 -9
  703. package/dist/esm/ion-searchbar.entry.js +137 -24
  704. package/dist/esm/ion-segment-content.entry.js +2 -2
  705. package/dist/esm/ion-segment-view.entry.js +6 -3
  706. package/dist/esm/ion-segment_2.entry.js +23 -16
  707. package/dist/esm/ion-select-modal.entry.js +97 -40
  708. package/dist/esm/ion-select_3.entry.js +453 -84
  709. package/dist/esm/ion-spinner.entry.js +30 -8
  710. package/dist/esm/ion-split-pane.entry.js +13 -9
  711. package/dist/esm/ion-tab-bar_2.entry.js +147 -23
  712. package/dist/esm/ion-tab_2.entry.js +8 -7
  713. package/dist/esm/ion-text.entry.js +7 -7
  714. package/dist/esm/ion-textarea.entry.js +137 -23
  715. package/dist/esm/ion-toast.entry.js +45 -21
  716. package/dist/esm/ion-toggle.entry.js +82 -25
  717. package/dist/esm/ionic-global-CAZb-5i-.js +508 -0
  718. package/dist/esm/ionic.js +5 -5
  719. package/dist/esm/{ios.transition--aMF-pDH.js → ios.transition-CzSncKQg.js} +7 -5
  720. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-Cpw6xVLJ.js} +1 -1
  721. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-DJpS2IGK.js} +4 -3
  722. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-CAc33ylR.js} +5 -3
  723. package/dist/esm/list-Dhi5xtNS.js +6 -0
  724. package/dist/esm/loader.js +5 -5
  725. package/dist/esm/{md.transition-BEVbfm8j.js → md.transition-DIsWqYBZ.js} +6 -5
  726. package/dist/esm/{notch-controller-DAcvKU57.js → notch-controller-DiBq57w8.js} +2 -2
  727. package/dist/esm/{overlays-F8GHPo-e.js → overlays-rwDDzEs4.js} +107 -13
  728. package/dist/esm/select-option-render-B2qc5ZP7.js +79 -0
  729. package/dist/esm/{status-tap-BfJqFSLF.js → status-tap-fYFdZg6z.js} +4 -3
  730. package/dist/esm/{swipe-back-BZBFwTQV.js → swipe-back-BzGqTrrq.js} +3 -2
  731. package/dist/esm/{theme-DiVJyqlX.js → theme-DaJxRxSQ.js} +25 -1
  732. package/dist/esm/validity-BjW8SOqw.js +48 -0
  733. package/dist/esm/x-BDqjX7Z_.js +6 -0
  734. package/dist/html.html-data.json +2551 -117
  735. package/dist/ionic/index.esm.js +1 -1
  736. package/dist/ionic/ionic.esm.js +1 -1
  737. package/dist/ionic/p-00c0bd38.entry.js +4 -0
  738. package/dist/ionic/p-05a30032.entry.js +4 -0
  739. package/dist/ionic/p-07d3388f.entry.js +4 -0
  740. package/dist/ionic/p-11nqcMM3.js +4 -0
  741. package/dist/ionic/p-139d02eb.entry.js +4 -0
  742. package/dist/ionic/p-15e3e8f5.entry.js +4 -0
  743. package/dist/ionic/p-1709b0aa.entry.js +4 -0
  744. package/dist/ionic/p-1c2c1869.entry.js +4 -0
  745. package/dist/ionic/p-1c4de46b.entry.js +4 -0
  746. package/dist/ionic/p-1e1c8d61.entry.js +4 -0
  747. package/dist/ionic/p-2311e660.entry.js +4 -0
  748. package/dist/ionic/p-2aa7567e.entry.js +4 -0
  749. package/dist/ionic/p-2ad79c23.entry.js +4 -0
  750. package/dist/ionic/p-2f0073af.entry.js +4 -0
  751. package/dist/ionic/p-37ccbee4.entry.js +4 -0
  752. package/dist/ionic/p-3aba19e2.entry.js +4 -0
  753. package/dist/ionic/p-3f79f594.entry.js +4 -0
  754. package/dist/ionic/p-4079cee3.entry.js +4 -0
  755. package/dist/ionic/p-45825c2c.entry.js +4 -0
  756. package/dist/ionic/p-48026d15.entry.js +4 -0
  757. package/dist/ionic/p-488992b6.entry.js +4 -0
  758. package/dist/ionic/p-4a0260e6.entry.js +4 -0
  759. package/dist/ionic/p-50b61fab.entry.js +4 -0
  760. package/dist/ionic/p-50cd2d57.entry.js +4 -0
  761. package/dist/ionic/p-5274f999.entry.js +4 -0
  762. package/dist/ionic/p-586d4270.entry.js +4 -0
  763. package/dist/ionic/p-68c21b2a.entry.js +4 -0
  764. package/dist/ionic/p-6fbead83.entry.js +4 -0
  765. package/dist/ionic/p-7194f6fa.entry.js +4 -0
  766. package/dist/ionic/p-71b6014c.entry.js +4 -0
  767. package/dist/ionic/p-72491468.entry.js +4 -0
  768. package/dist/ionic/p-7d267dc6.entry.js +4 -0
  769. package/dist/ionic/p-7d5057c4.entry.js +4 -0
  770. package/dist/ionic/p-83c693c4.entry.js +4 -0
  771. package/dist/ionic/p-8537b2fb.entry.js +4 -0
  772. package/dist/ionic/p-8f127a9c.entry.js +4 -0
  773. package/dist/ionic/p-8uDL7fql.js +4 -0
  774. package/dist/ionic/p-9d789053.entry.js +4 -0
  775. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  776. package/dist/ionic/p-BYSs-jZz.js +4 -0
  777. package/dist/ionic/p-BjW8SOqw.js +4 -0
  778. package/{components/p-9VcRUwdB.js → dist/ionic/p-BsfuYVMP.js} +1 -1
  779. package/dist/ionic/p-BwKpO3Is.js +4 -0
  780. package/dist/ionic/p-Bx0bt2Ar.js +4 -0
  781. package/dist/ionic/p-C2mpVKI1.js +4 -0
  782. package/dist/ionic/p-C4uUM9DM.js +4 -0
  783. package/dist/ionic/p-C5zxLmJ_.js +4 -0
  784. package/{components/p-BS1TtEiJ.js → dist/ionic/p-C8IHbcuP.js} +1 -1
  785. package/dist/ionic/p-CBV-BGvD.js +4 -0
  786. package/dist/ionic/p-CDn0uNJA.js +4 -0
  787. package/dist/ionic/p-CFjI63GE.js +4 -0
  788. package/dist/ionic/p-CHE1xWbg.js +4 -0
  789. package/dist/ionic/p-CIk5QtPm.js +4 -0
  790. package/dist/ionic/p-CQKe4n56.js +4 -0
  791. package/dist/ionic/p-CVp2D--1.js +4 -0
  792. package/dist/ionic/p-CWJdc8f_.js +4 -0
  793. package/dist/ionic/p-CXqdKf1K.js +4 -0
  794. package/dist/ionic/p-Cb-0O4h8.js +4 -0
  795. package/dist/ionic/{p-CKvCXMs9.js → p-CbkICFBN.js} +1 -1
  796. package/dist/ionic/p-D1t981Ih.js +4 -0
  797. package/dist/ionic/p-D2tu5BUg.js +4 -0
  798. package/dist/ionic/{p-B8xlpH8p.js → p-DKWXAwlR.js} +1 -1
  799. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  800. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  801. package/dist/ionic/p-DoyDJ2X5.js +4 -0
  802. package/dist/ionic/p-FvDKM4Ax.js +4 -0
  803. package/dist/ionic/p-Omi_TcwW.js +5 -0
  804. package/{components/p-D13Eaw-8.js → dist/ionic/p-SJmaFQ0H.js} +1 -1
  805. package/dist/ionic/p-SOASChNu.js +4 -0
  806. package/dist/ionic/{p-DjriolRs.js → p-ZqkJDyhe.js} +1 -1
  807. package/dist/ionic/p-a9fb086b.entry.js +4 -0
  808. package/dist/ionic/p-acdc21a6.entry.js +4 -0
  809. package/dist/ionic/p-ae667493.entry.js +4 -0
  810. package/dist/ionic/p-b2fe6c1c.entry.js +4 -0
  811. package/dist/ionic/p-b3c9f19c.entry.js +4 -0
  812. package/dist/ionic/p-b653f4c2.entry.js +4 -0
  813. package/dist/ionic/p-bd71a4a7.entry.js +4 -0
  814. package/dist/ionic/p-bdfd1761.entry.js +4 -0
  815. package/dist/ionic/p-bf972309.entry.js +4 -0
  816. package/dist/ionic/p-c10fa162.entry.js +4 -0
  817. package/dist/ionic/p-d4ed5710.entry.js +4 -0
  818. package/dist/ionic/p-d6299c37.entry.js +4 -0
  819. package/dist/ionic/p-d976e777.entry.js +4 -0
  820. package/dist/ionic/p-e18d3fdb.entry.js +4 -0
  821. package/dist/ionic/p-e3abffbe.entry.js +4 -0
  822. package/dist/ionic/p-f02ba305.entry.js +4 -0
  823. package/dist/ionic/p-f85942f8.entry.js +4 -0
  824. package/dist/ionic/p-fIOYmaqA.js +4 -0
  825. package/dist/ionic/p-fad05840.entry.js +4 -0
  826. package/dist/ionic/p-qETiT38a.js +4 -0
  827. package/dist/ionic/p-vXpMhGrs.js +4 -0
  828. package/dist/types/components/accordion/accordion.d.ts +6 -3
  829. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  830. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  831. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  832. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  833. package/dist/types/components/alert/alert.d.ts +3 -2
  834. package/dist/types/components/app/app.d.ts +4 -5
  835. package/dist/types/components/avatar/avatar.d.ts +32 -0
  836. package/dist/types/components/back-button/back-button.d.ts +2 -1
  837. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  838. package/dist/types/components/badge/badge.d.ts +34 -1
  839. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  840. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  841. package/dist/types/components/button/button.d.ts +23 -8
  842. package/dist/types/components/buttons/buttons.d.ts +5 -1
  843. package/dist/types/components/card/card.d.ts +8 -1
  844. package/dist/types/components/card-content/card-content.d.ts +2 -1
  845. package/dist/types/components/card-header/card-header.d.ts +3 -2
  846. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  847. package/dist/types/components/card-title/card-title.d.ts +2 -1
  848. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  849. package/dist/types/components/chip/chip.d.ts +26 -1
  850. package/dist/types/components/col/col.d.ts +52 -5
  851. package/dist/types/components/content/content.d.ts +3 -0
  852. package/dist/types/components/datetime/datetime.d.ts +26 -1
  853. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  854. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  855. package/dist/types/components/divider/divider.d.ts +20 -0
  856. package/dist/types/components/fab/fab.d.ts +4 -0
  857. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  858. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  859. package/dist/types/components/footer/footer.d.ts +4 -3
  860. package/dist/types/components/gallery/gallery-interface.d.ts +9 -0
  861. package/dist/types/components/gallery/gallery.d.ts +125 -0
  862. package/dist/types/components/gallery/test/utils.d.ts +2 -0
  863. package/dist/types/components/grid/grid.d.ts +4 -0
  864. package/dist/types/components/header/header.d.ts +9 -3
  865. package/dist/types/components/header/header.utils.d.ts +3 -3
  866. package/dist/types/components/img/img.d.ts +3 -0
  867. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  868. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  869. package/dist/types/components/input/input.d.ts +31 -5
  870. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  871. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  872. package/dist/types/components/item/item.d.ts +11 -4
  873. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  874. package/dist/types/components/item-group/item-group.d.ts +4 -0
  875. package/dist/types/components/item-option/item-option.d.ts +18 -1
  876. package/dist/types/components/item-options/item-options.d.ts +4 -0
  877. package/dist/types/components/item-sliding/item-sliding.d.ts +32 -1
  878. package/dist/types/components/label/label.d.ts +2 -1
  879. package/dist/types/components/list/list.d.ts +15 -1
  880. package/dist/types/components/list-header/list-header.d.ts +2 -1
  881. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  882. package/dist/types/components/loading/loading.d.ts +3 -2
  883. package/dist/types/components/menu/menu.d.ts +3 -0
  884. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  885. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  886. package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
  887. package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
  888. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  889. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  890. package/dist/types/components/modal/modal.d.ts +11 -1
  891. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  892. package/dist/types/components/nav/nav.d.ts +5 -1
  893. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  894. package/dist/types/components/note/note.d.ts +2 -1
  895. package/dist/types/components/picker/picker.d.ts +2 -1
  896. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  897. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  898. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  899. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  900. package/dist/types/components/popover/popover.d.ts +6 -5
  901. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  902. package/dist/types/components/radio/radio.d.ts +2 -1
  903. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  904. package/dist/types/components/range/range.d.ts +2 -1
  905. package/dist/types/components/refresher/refresher.d.ts +2 -1
  906. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  907. package/dist/types/components/reorder/reorder.d.ts +9 -0
  908. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  909. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  910. package/dist/types/components/route/route.d.ts +4 -0
  911. package/dist/types/components/router/router.d.ts +4 -0
  912. package/dist/types/components/router-link/router-link.d.ts +4 -0
  913. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  914. package/dist/types/components/row/row.d.ts +4 -0
  915. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  916. package/dist/types/components/segment/segment.d.ts +2 -1
  917. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  918. package/dist/types/components/select/select-interface.d.ts +23 -0
  919. package/dist/types/components/select/select.d.ts +66 -13
  920. package/dist/types/components/select-modal/select-modal.d.ts +8 -0
  921. package/dist/types/components/select-option/select-option.d.ts +12 -0
  922. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  923. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  924. package/dist/types/components/spinner/spinner.d.ts +15 -0
  925. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  926. package/dist/types/components/tab/tab.d.ts +4 -0
  927. package/dist/types/components/tab-bar/tab-bar.d.ts +37 -2
  928. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  929. package/dist/types/components/tabs/tabs.d.ts +3 -0
  930. package/dist/types/components/text/text.d.ts +2 -1
  931. package/dist/types/components/textarea/textarea.d.ts +53 -4
  932. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  933. package/dist/types/components/title/title.d.ts +4 -0
  934. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  935. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  936. package/dist/types/components/toast/toast.d.ts +19 -2
  937. package/dist/types/components/toggle/toggle.d.ts +15 -1
  938. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  939. package/dist/types/components.d.ts +1793 -206
  940. package/dist/types/global/ionic-global.d.ts +28 -2
  941. package/dist/types/interface.d.ts +3 -0
  942. package/dist/types/utils/config.d.ts +106 -2
  943. package/dist/types/utils/focus-trap.d.ts +1 -1
  944. package/dist/types/utils/focus-visible.d.ts +13 -0
  945. package/dist/types/utils/forms/validity.d.ts +7 -0
  946. package/dist/types/utils/helpers.d.ts +11 -0
  947. package/dist/types/utils/overlays-interface.d.ts +31 -1
  948. package/dist/types/utils/overlays.d.ts +1 -1
  949. package/dist/types/utils/select-option-render.d.ts +22 -0
  950. package/dist/types/utils/test/playwright/drag-element.d.ts +1 -1
  951. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  952. package/dist/types/utils/theme.d.ts +9 -0
  953. package/hydrate/index.js +4682 -1301
  954. package/hydrate/index.mjs +4682 -1301
  955. package/package.json +8 -4
  956. package/components/p-1KVKSLu5.js +0 -4
  957. package/components/p-B6FQ0cKR.js +0 -4
  958. package/components/p-B6HaBl3o.js +0 -4
  959. package/components/p-B8b1Ukl9.js +0 -4
  960. package/components/p-BGHGpkPX.js +0 -4
  961. package/components/p-BJoMtgfR.js +0 -4
  962. package/components/p-BNAG-aVv.js +0 -4
  963. package/components/p-BR3tZJmu.js +0 -4
  964. package/components/p-BSB38Tek.js +0 -4
  965. package/components/p-BTeL5HCK.js +0 -4
  966. package/components/p-BUbsoBOV.js +0 -4
  967. package/components/p-BYDc3hSE.js +0 -4
  968. package/components/p-BagjAGC0.js +0 -4
  969. package/components/p-BegtE7nr.js +0 -4
  970. package/components/p-BgwEQWW6.js +0 -4
  971. package/components/p-BlNv564p.js +0 -4
  972. package/components/p-BmVRXR1y.js +0 -4
  973. package/components/p-BxwWvu-b.js +0 -4
  974. package/components/p-C4jPsTQa.js +0 -4
  975. package/components/p-C59ryAuS.js +0 -4
  976. package/components/p-CBzELu-H.js +0 -4
  977. package/components/p-CDfQnFrd.js +0 -4
  978. package/components/p-CH0NYjKq.js +0 -4
  979. package/components/p-CIGNaXM1.js +0 -4
  980. package/components/p-CO7fmmxt.js +0 -4
  981. package/components/p-CU1SSH8_.js +0 -4
  982. package/components/p-CgfaEEem.js +0 -4
  983. package/components/p-CgqKJg96.js +0 -4
  984. package/components/p-CneGxKsZ.js +0 -4
  985. package/components/p-CoA-aqGF.js +0 -4
  986. package/components/p-Cq8cQ0NL.js +0 -4
  987. package/components/p-Csw8xuz4.js +0 -4
  988. package/components/p-CtWGkNnJ.js +0 -4
  989. package/components/p-Cy5XSfIk.js +0 -4
  990. package/components/p-Cyxa_4PV.js +0 -4
  991. package/components/p-Cz5nLPGT.js +0 -4
  992. package/components/p-D-cP12ZN.js +0 -4
  993. package/components/p-D6NJwNJN.js +0 -4
  994. package/components/p-D6Ynv7Xh.js +0 -4
  995. package/components/p-DHsZWn1l.js +0 -4
  996. package/components/p-DJMZehmW.js +0 -4
  997. package/components/p-DJztqcrH.js +0 -4
  998. package/components/p-DUqnmRFi.js +0 -4
  999. package/components/p-DYdpXONG.js +0 -4
  1000. package/components/p-DgbT0exM.js +0 -4
  1001. package/components/p-DiVJyqlX.js +0 -4
  1002. package/components/p-DvOO1fxp.js +0 -4
  1003. package/components/p-FBcnjE5W.js +0 -4
  1004. package/components/p-SBseW5KJ.js +0 -4
  1005. package/components/p-ZjP4CjeZ.js +0 -4
  1006. package/components/p-fpbh6w3f.js +0 -4
  1007. package/components/p-kvaDs24J.js +0 -4
  1008. package/components/p-vEbVo2hO.js +0 -4
  1009. package/dist/cjs/hardware-back-button-C4rMJ5uI.js +0 -121
  1010. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1011. package/dist/cjs/ionic-global-Bc3kJi1Z.js +0 -151
  1012. package/dist/cjs/validity-BpS37YFM.js +0 -19
  1013. package/dist/esm/hardware-back-button-CTe4XmL7.js +0 -115
  1014. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1015. package/dist/esm/ionic-global-DfbeLwcV.js +0 -146
  1016. package/dist/esm/validity-DJztqcrH.js +0 -17
  1017. package/dist/ionic/p-031b76f7.entry.js +0 -4
  1018. package/dist/ionic/p-045a6a42.entry.js +0 -4
  1019. package/dist/ionic/p-07506134.entry.js +0 -4
  1020. package/dist/ionic/p-078037da.entry.js +0 -4
  1021. package/dist/ionic/p-084c25b2.entry.js +0 -4
  1022. package/dist/ionic/p-0d8b5c38.entry.js +0 -4
  1023. package/dist/ionic/p-16813ce7.entry.js +0 -4
  1024. package/dist/ionic/p-1b02923f.entry.js +0 -4
  1025. package/dist/ionic/p-1b169fb6.entry.js +0 -4
  1026. package/dist/ionic/p-23ec35e4.entry.js +0 -4
  1027. package/dist/ionic/p-23fac490.entry.js +0 -4
  1028. package/dist/ionic/p-28a9e720.entry.js +0 -4
  1029. package/dist/ionic/p-294f4bb5.entry.js +0 -4
  1030. package/dist/ionic/p-2a68388b.entry.js +0 -4
  1031. package/dist/ionic/p-2f5a8140.entry.js +0 -4
  1032. package/dist/ionic/p-2fd110aa.entry.js +0 -4
  1033. package/dist/ionic/p-301c43f8.entry.js +0 -4
  1034. package/dist/ionic/p-370a60ee.entry.js +0 -4
  1035. package/dist/ionic/p-4c67ce4c.entry.js +0 -4
  1036. package/dist/ionic/p-51c11c47.entry.js +0 -4
  1037. package/dist/ionic/p-53f750a5.entry.js +0 -4
  1038. package/dist/ionic/p-6af16209.entry.js +0 -4
  1039. package/dist/ionic/p-6b701daa.entry.js +0 -4
  1040. package/dist/ionic/p-6b97f2a3.entry.js +0 -4
  1041. package/dist/ionic/p-7620be24.entry.js +0 -4
  1042. package/dist/ionic/p-771b27a5.entry.js +0 -4
  1043. package/dist/ionic/p-7ca71c83.entry.js +0 -4
  1044. package/dist/ionic/p-80cac7a2.entry.js +0 -4
  1045. package/dist/ionic/p-87125490.entry.js +0 -4
  1046. package/dist/ionic/p-8fda6a62.entry.js +0 -4
  1047. package/dist/ionic/p-9833cf63.entry.js +0 -4
  1048. package/dist/ionic/p-9cbc6f1f.entry.js +0 -4
  1049. package/dist/ionic/p-9cdbabbb.entry.js +0 -4
  1050. package/dist/ionic/p-9eeaBrnk.js +0 -4
  1051. package/dist/ionic/p-BAt5H1ac.js +0 -4
  1052. package/dist/ionic/p-BW_TRJm8.js +0 -4
  1053. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1054. package/dist/ionic/p-Bum7H1fw.js +0 -4
  1055. package/dist/ionic/p-BxIcPWoV.js +0 -4
  1056. package/dist/ionic/p-C0JvVFMv.js +0 -4
  1057. package/dist/ionic/p-CGmVTdWh.js +0 -4
  1058. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1059. package/dist/ionic/p-CYbRmDdy.js +0 -4
  1060. package/dist/ionic/p-CYvM5g3q.js +0 -4
  1061. package/dist/ionic/p-CmFz1Mjc.js +0 -4
  1062. package/dist/ionic/p-CtA-yJYy.js +0 -4
  1063. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  1064. package/dist/ionic/p-D8HJQ1qq.js +0 -4
  1065. package/dist/ionic/p-DB_iPQC-.js +0 -4
  1066. package/dist/ionic/p-DJztqcrH.js +0 -4
  1067. package/dist/ionic/p-DLbbmF9h.js +0 -4
  1068. package/dist/ionic/p-DTPR1Wpn.js +0 -4
  1069. package/dist/ionic/p-DV3sJJW8.js +0 -4
  1070. package/dist/ionic/p-DiVJyqlX.js +0 -4
  1071. package/dist/ionic/p-DtVZDHlS.js +0 -4
  1072. package/dist/ionic/p-IGIE5vDm.js +0 -5
  1073. package/dist/ionic/p-NFFyoJ4Q.js +0 -4
  1074. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1075. package/dist/ionic/p-a805674e.entry.js +0 -4
  1076. package/dist/ionic/p-a84f2d21.entry.js +0 -4
  1077. package/dist/ionic/p-aa812c4b.entry.js +0 -4
  1078. package/dist/ionic/p-b325a113.entry.js +0 -4
  1079. package/dist/ionic/p-b5ea8cdd.entry.js +0 -4
  1080. package/dist/ionic/p-b6e0ff03.entry.js +0 -4
  1081. package/dist/ionic/p-bcaa827e.entry.js +0 -4
  1082. package/dist/ionic/p-c3cce9d8.entry.js +0 -4
  1083. package/dist/ionic/p-ca31010f.entry.js +0 -4
  1084. package/dist/ionic/p-d4e8b473.entry.js +0 -4
  1085. package/dist/ionic/p-e0287f41.entry.js +0 -4
  1086. package/dist/ionic/p-e663bc5a.entry.js +0 -4
  1087. package/dist/ionic/p-e6cedcd7.entry.js +0 -4
  1088. package/dist/ionic/p-e863ffe8.entry.js +0 -4
  1089. package/dist/ionic/p-f2deaceb.entry.js +0 -4
  1090. package/dist/ionic/p-f5dfb9a3.entry.js +0 -4
  1091. package/dist/ionic/p-f69a5f71.entry.js +0 -4
  1092. package/dist/ionic/p-f8186550.entry.js +0 -4
  1093. package/dist/ionic/p-fdbc90d4.entry.js +0 -4
  1094. package/dist/ionic/p-gbVXD275.js +0 -4
  1095. package/dist/ionic/p-hNN3VvaC.js +0 -4
  1096. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -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 of the select
@@ -75,18 +103,27 @@
75
103
  * @prop --border-width: Width of the select border
76
104
  *
77
105
  * @prop --ripple-color: The color of the ripple effect on MD mode.
106
+ *
107
+ * @prop --select-text-media-width: The width of media (icons/images) in the select text.
108
+ * @prop --select-text-media-height: The height of media (icons/images) in the select text.
109
+ * @prop --select-text-media-border-width: The border width of media (icons/images) in the select text.
110
+ * @prop --select-text-media-border-color: The border color of media (icons/images) in the select text.
111
+ * @prop --select-text-media-border-radius: The border radius of media (icons/images) in the select text.
112
+ * @prop --select-text-media-border-style: The border style of media (icons/images) in the select text.
113
+ * @prop --select-text-gap: The gap between elements in the select text.
78
114
  */
79
115
  --padding-top: 0px;
80
116
  --padding-end: 0px;
81
117
  --padding-bottom: 0px;
82
118
  --padding-start: 0px;
83
119
  --placeholder-color: currentColor;
84
- --placeholder-opacity: var(--ion-placeholder-opacity, 0.6);
85
120
  --background: transparent;
86
121
  --border-style: solid;
87
122
  --highlight-color-focused: var(--ion-color-primary, #0054e9);
88
123
  --highlight-color-valid: var(--ion-color-success, #2dd55b);
89
124
  --highlight-color-invalid: var(--ion-color-danger, #c5000f);
125
+ --select-text-media-height: 1.5em;
126
+ --select-text-media-width: 1.5em;
90
127
  /**
91
128
  * This is a private API that is used to switch
92
129
  * out the highlight color based on the state
@@ -97,21 +134,8 @@
97
134
  display: block;
98
135
  position: relative;
99
136
  width: 100%;
100
- min-height: 44px;
101
- font-family: var(--ion-font-family, inherit);
102
137
  white-space: nowrap;
103
138
  cursor: pointer;
104
- z-index: 2;
105
- }
106
-
107
- /**
108
- * Since the label sits on top of the element,
109
- * the component needs to be taller otherwise the
110
- * label will appear too close to the select text.
111
- */
112
- :host(.select-label-placement-floating),
113
- :host(.select-label-placement-stacked) {
114
- min-height: 56px;
115
139
  }
116
140
 
117
141
  :host(.ion-color) {
@@ -126,10 +150,6 @@
126
150
  pointer-events: none;
127
151
  }
128
152
 
129
- :host(.has-focus) button {
130
- border: 2px solid #5e9ed6;
131
- }
132
-
133
153
  /**
134
154
  * Select can be slotted
135
155
  * in components such as item and
@@ -150,30 +170,23 @@
150
170
  button {
151
171
  position: absolute;
152
172
  top: 0;
153
- left: 0;
154
173
  right: 0;
155
174
  bottom: 0;
175
+ left: 0;
156
176
  width: 100%;
157
177
  height: 100%;
158
178
  margin: 0;
159
179
  padding: 0;
160
180
  border: 0;
161
181
  outline: 0;
162
- clip: rect(0 0 0 0);
163
182
  opacity: 0;
164
183
  overflow: hidden;
184
+ clip: rect(0 0 0 0);
165
185
  -webkit-appearance: none;
166
186
  -moz-appearance: none;
167
187
  }
168
188
 
169
189
  .select-icon {
170
- -webkit-margin-start: 4px;
171
- margin-inline-start: 4px;
172
- -webkit-margin-end: 0;
173
- margin-inline-end: 0;
174
- margin-top: 0;
175
- margin-bottom: 0;
176
- position: relative;
177
190
  /**
178
191
  * Prevent the icon from shrinking when the label and/or
179
192
  * selected item text is long enough to fill the rest of
@@ -191,17 +204,6 @@ button {
191
204
  color: inherit;
192
205
  }
193
206
 
194
- /**
195
- * The select icon should be centered with
196
- * the entire container not just the control
197
- * with floating/stacked labels.
198
- */
199
- :host(.select-label-placement-stacked) .select-icon,
200
- :host(.select-label-placement-floating) .select-icon {
201
- position: absolute;
202
- height: 100%;
203
- }
204
-
205
207
  /**
206
208
  * This positions the icon at the correct
207
209
  * edge of the component with LTR and RTL
@@ -220,21 +222,35 @@ button {
220
222
 
221
223
  .select-text {
222
224
  flex: 1;
223
- min-width: 16px;
224
225
  font-size: inherit;
225
226
  text-overflow: ellipsis;
226
227
  white-space: inherit;
227
228
  overflow: hidden;
228
229
  }
229
230
 
231
+ /**
232
+ * If the select text contains rich content, we want to add some
233
+ * spacing between the elements without changing the display to
234
+ * prevent losing the ellipses behavior.
235
+ */
236
+ .select-text > * + * {
237
+ margin-inline-start: var(--select-text-gap);
238
+ }
239
+
240
+ .select-text img,
241
+ .select-text ion-img,
242
+ .select-text ion-icon,
243
+ .select-text ion-thumbnail,
244
+ .select-text ion-avatar {
245
+ border-radius: var(--select-text-media-border-radius);
246
+ width: var(--select-text-media-width);
247
+ height: var(--select-text-media-height);
248
+ border-width: var(--select-text-media-border-width);
249
+ border-style: var(--select-text-media-border-style);
250
+ border-color: var(--select-text-media-border-color);
251
+ }
252
+
230
253
  .select-wrapper {
231
- -webkit-padding-start: var(--padding-start);
232
- padding-inline-start: var(--padding-start);
233
- -webkit-padding-end: var(--padding-end);
234
- padding-inline-end: var(--padding-end);
235
- padding-top: var(--padding-top);
236
- padding-bottom: var(--padding-bottom);
237
- border-radius: var(--border-radius);
238
254
  display: flex;
239
255
  position: relative;
240
256
  flex-grow: 1;
@@ -255,32 +271,12 @@ button {
255
271
  box-sizing: border-box;
256
272
  }
257
273
 
258
- .select-wrapper .select-placeholder {
259
- /**
260
- * When the floating label appears on top of the
261
- * select, we need to fade the text out so that the
262
- * label does not overlap with the placeholder.
263
- */
264
- transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
265
- }
266
-
267
274
  .select-wrapper-inner {
268
275
  display: flex;
269
276
  align-items: center;
270
277
  overflow: hidden;
271
278
  }
272
279
 
273
- :host(.select-label-placement-stacked) .select-wrapper-inner,
274
- :host(.select-label-placement-floating) .select-wrapper-inner {
275
- /**
276
- * When using a stacked/floating label, the inner wrapper is
277
- * stacked vertically under the label container. This line
278
- * ensures that the inner wrapper fills all the remaining height
279
- * of the component.
280
- */
281
- flex-grow: 1;
282
- }
283
-
284
280
  :host(.ion-touched.ion-invalid) {
285
281
  --highlight-color: var(--highlight-color-invalid);
286
282
  }
@@ -300,21 +296,9 @@ button {
300
296
  }
301
297
 
302
298
  .select-bottom {
303
- /**
304
- * The bottom content should take on the start and end
305
- * padding so it is always aligned with either the label
306
- * or the start of the text select.
307
- */
308
- -webkit-padding-start: var(--padding-start);
309
- padding-inline-start: var(--padding-start);
310
- -webkit-padding-end: var(--padding-end);
311
- padding-inline-end: var(--padding-end);
312
- padding-top: 5px;
313
- padding-bottom: 0;
314
299
  display: flex;
315
300
  justify-content: space-between;
316
301
  border-top: var(--border-width) var(--border-style) var(--border-color);
317
- font-size: 0.75rem;
318
302
  white-space: normal;
319
303
  }
320
304
 
@@ -347,7 +331,6 @@ button {
347
331
 
348
332
  .select-bottom .helper-text {
349
333
  display: block;
350
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
351
334
  }
352
335
 
353
336
  :host(.ion-touched.ion-invalid) .select-bottom .error-text {
@@ -366,16 +349,6 @@ button {
366
349
  */
367
350
  display: flex;
368
351
  align-items: center;
369
- /**
370
- * Label text should not extend
371
- * beyond the bounds of the select.
372
- * However, we do not set the max
373
- * width to 100% because then
374
- * only the label would show and users
375
- * would not be able to see what they are typing.
376
- */
377
- max-width: 200px;
378
- transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
379
352
  /**
380
353
  * This ensures that double tapping this text
381
354
  * clicks the <label> and focuses the input
@@ -417,12 +390,6 @@ button {
417
390
  .native-wrapper {
418
391
  display: flex;
419
392
  align-items: center;
420
- /**
421
- * When the floating label appears on top of the
422
- * input, we need to fade the input out so that the
423
- * label does not overlap with the placeholder.
424
- */
425
- transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
426
393
  /**
427
394
  * This ensures that the .select-text gets
428
395
  * truncated with ellipses when the text is
@@ -451,20 +418,6 @@ button {
451
418
  flex-direction: row;
452
419
  }
453
420
 
454
- :host(.select-label-placement-start) .label-text-wrapper {
455
- /**
456
- * The margin between the label and
457
- * the select should be on the end
458
- * when the label sits at the start.
459
- */
460
- -webkit-margin-start: 0;
461
- margin-inline-start: 0;
462
- -webkit-margin-end: 16px;
463
- margin-inline-end: 16px;
464
- margin-top: 0;
465
- margin-bottom: 0;
466
- }
467
-
468
421
  /**
469
422
  * Label is on the right of the select in LTR and
470
423
  * on the left in RTL.
@@ -473,45 +426,6 @@ button {
473
426
  flex-direction: row-reverse;
474
427
  }
475
428
 
476
- /**
477
- * The margin between the label and
478
- * the select should be on the start
479
- * when the label sits at the end.
480
- */
481
- :host(.select-label-placement-end) .label-text-wrapper {
482
- -webkit-margin-start: 16px;
483
- margin-inline-start: 16px;
484
- -webkit-margin-end: 0;
485
- margin-inline-end: 0;
486
- margin-top: 0;
487
- margin-bottom: 0;
488
- }
489
-
490
- :host(.select-label-placement-fixed) .label-text-wrapper {
491
- /**
492
- * The margin between the label and
493
- * the select should be on the end
494
- * when the label sits at the start.
495
- */
496
- -webkit-margin-start: 0;
497
- margin-inline-start: 0;
498
- -webkit-margin-end: 16px;
499
- margin-inline-end: 16px;
500
- margin-top: 0;
501
- margin-bottom: 0;
502
- }
503
-
504
- /**
505
- * Label is on the left of the select in LTR and
506
- * on the right in RTL. Label also has a fixed width.
507
- */
508
- :host(.select-label-placement-fixed) .label-text-wrapper {
509
- flex: 0 0 100px;
510
- width: 100px;
511
- min-width: 100px;
512
- max-width: 200px;
513
- }
514
-
515
429
  /**
516
430
  * Stacked: Label sits above the select and is scaled down.
517
431
  * Floating: Label sits over the select when the select has no
@@ -553,29 +467,10 @@ button {
553
467
  */
554
468
  :host(.select-label-placement-stacked) .native-wrapper,
555
469
  :host(.select-label-placement-floating) .native-wrapper {
556
- margin-left: 0;
557
- margin-right: 0;
558
- margin-top: 1px;
559
- margin-bottom: 0;
560
470
  flex-grow: 1;
561
471
  width: 100%;
562
472
  }
563
473
 
564
- /**
565
- * This makes the label sit over the select
566
- * when the select is blurred and has no value.
567
- * The label should not sit over the select if the
568
- * select has a placeholder.
569
- * Note: This is different from what ion-input does
570
- * because the activating the select causes an overlay
571
- * to appear. This makes it hard to read the placeholder.
572
- * With ion-input, the input just focuses and the placeholder
573
- * is still easy to read.
574
- */
575
- :host(.select-label-placement-floating) .label-text-wrapper {
576
- transform: translateY(100%) scale(1);
577
- }
578
-
579
474
  /**
580
475
  * The placeholder should be hidden when the label
581
476
  * is on top of the select. This prevents the label
@@ -603,6 +498,252 @@ button {
603
498
  opacity: 1;
604
499
  }
605
500
 
501
+ ::slotted([slot=start]),
502
+ ::slotted([slot=end]) {
503
+ /**
504
+ * Prevent the slots from shrinking when the label and/or
505
+ * selected item text is long enough to fill the rest of
506
+ * the container.
507
+ */
508
+ flex-shrink: 0;
509
+ }
510
+
511
+ ::slotted([slot=start]:last-of-type) {
512
+ margin-inline-start: 0;
513
+ }
514
+
515
+ ::slotted([slot=end]:first-of-type) {
516
+ margin-inline-end: 0;
517
+ }
518
+
519
+ /**
520
+ * Convert a pixels given value into rem
521
+ *
522
+ * @param pixels - Value in pixels to be converted (i.e. px)
523
+ * @param context (optional) - Baseline value
524
+ */
525
+ /**
526
+ * Convert a font size to a dynamic font size.
527
+ * Fonts that participate in Dynamic Type should use
528
+ * dynamic font sizes.
529
+ * @param size - The initial font size including the unit (i.e. px or pt)
530
+ * @param unit (optional) - The unit to convert to. Use this if you want to
531
+ * convert to a unit other than $baselineUnit.
532
+ */
533
+ /**
534
+ * Convert a font size to a dynamic font size but impose
535
+ * a maximum font size.
536
+ * @param size - The initial font size including the unit (i.e. px or pt)
537
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
538
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
539
+ * convert to a unit other than $baselineUnit.
540
+ */
541
+ /**
542
+ * Convert a font size to a dynamic font size but impose
543
+ * a minimum font size.
544
+ * @param size - The initial font size including the unit (i.e. px or pt)
545
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
546
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
547
+ * convert to a unit other than $baselineUnit.
548
+ */
549
+ /**
550
+ * Convert a font size to a dynamic font size but impose
551
+ * maximum and minimum font sizes.
552
+ * @param size - The initial font size including the unit (i.e. px or pt)
553
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
554
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
555
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
556
+ * convert to a unit other than $baselineUnit.
557
+ */
558
+ /**
559
+ * A heuristic that applies CSS to tablet
560
+ * viewports.
561
+ *
562
+ * Usage:
563
+ * @include tablet-viewport() {
564
+ * :host {
565
+ * background-color: green;
566
+ * }
567
+ * }
568
+ */
569
+ /**
570
+ * A heuristic that applies CSS to mobile
571
+ * viewports (i.e. phones, not tablets).
572
+ *
573
+ * Usage:
574
+ * @include mobile-viewport() {
575
+ * :host {
576
+ * background-color: blue;
577
+ * }
578
+ * }
579
+ */
580
+ :host {
581
+ --placeholder-opacity: var(--ion-placeholder-opacity, 0.6);
582
+ --select-text-gap: 12px;
583
+ min-height: 44px;
584
+ font-family: var(--ion-font-family, inherit);
585
+ z-index: 2;
586
+ }
587
+
588
+ :host(.has-focus) button {
589
+ border: 2px solid #5e9ed6;
590
+ }
591
+
592
+ .select-icon {
593
+ -webkit-margin-start: 4px;
594
+ margin-inline-start: 4px;
595
+ -webkit-margin-end: 0;
596
+ margin-inline-end: 0;
597
+ margin-top: 0;
598
+ margin-bottom: 0;
599
+ position: relative;
600
+ }
601
+
602
+ /**
603
+ * The select icon should be centered with
604
+ * the entire container not just the control
605
+ * with floating/stacked labels.
606
+ */
607
+ :host(.select-label-placement-stacked) .select-icon,
608
+ :host(.select-label-placement-floating) .select-icon {
609
+ position: absolute;
610
+ height: 100%;
611
+ }
612
+
613
+ .select-wrapper {
614
+ -webkit-padding-start: var(--padding-start);
615
+ padding-inline-start: var(--padding-start);
616
+ -webkit-padding-end: var(--padding-end);
617
+ padding-inline-end: var(--padding-end);
618
+ padding-top: var(--padding-top);
619
+ padding-bottom: var(--padding-bottom);
620
+ border-radius: var(--border-radius);
621
+ }
622
+
623
+ .select-wrapper .select-placeholder {
624
+ /**
625
+ * When the floating label appears on top of the
626
+ * select, we need to fade the text out so that the
627
+ * label does not overlap with the placeholder.
628
+ */
629
+ transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
630
+ }
631
+
632
+ .select-bottom {
633
+ /**
634
+ * The bottom content should take on the start and end
635
+ * padding so it is always aligned with either the label
636
+ * or the start of the text select.
637
+ */
638
+ -webkit-padding-start: var(--padding-start);
639
+ padding-inline-start: var(--padding-start);
640
+ -webkit-padding-end: var(--padding-end);
641
+ padding-inline-end: var(--padding-end);
642
+ padding-top: 5px;
643
+ padding-bottom: 0;
644
+ font-size: 0.75rem;
645
+ }
646
+
647
+ .select-bottom .helper-text {
648
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
649
+ }
650
+
651
+ .select-text {
652
+ min-width: 16px;
653
+ }
654
+
655
+ .label-text-wrapper {
656
+ /**
657
+ * Label text should not extend
658
+ * beyond the bounds of the select.
659
+ * However, we do not set the max
660
+ * width to 100% because then
661
+ * only the label would show and users
662
+ * would not be able to see what they are typing.
663
+ */
664
+ max-width: 200px;
665
+ transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
666
+ }
667
+
668
+ :host(.select-label-placement-start) .label-text-wrapper {
669
+ /**
670
+ * The margin between the label and
671
+ * the select should be on the end
672
+ * when the label sits at the start.
673
+ */
674
+ -webkit-margin-start: 0;
675
+ margin-inline-start: 0;
676
+ -webkit-margin-end: 16px;
677
+ margin-inline-end: 16px;
678
+ margin-top: 0;
679
+ margin-bottom: 0;
680
+ }
681
+
682
+ /**
683
+ * The margin between the label and
684
+ * the select should be on the start
685
+ * when the label sits at the end.
686
+ */
687
+ :host(.select-label-placement-end) .label-text-wrapper {
688
+ -webkit-margin-start: 16px;
689
+ margin-inline-start: 16px;
690
+ -webkit-margin-end: 0;
691
+ margin-inline-end: 0;
692
+ margin-top: 0;
693
+ margin-bottom: 0;
694
+ }
695
+
696
+ :host(.select-label-placement-fixed) .label-text-wrapper {
697
+ /**
698
+ * The margin between the label and
699
+ * the select should be on the end
700
+ * when the label sits at the start.
701
+ */
702
+ -webkit-margin-start: 0;
703
+ margin-inline-start: 0;
704
+ -webkit-margin-end: 16px;
705
+ margin-inline-end: 16px;
706
+ margin-top: 0;
707
+ margin-bottom: 0;
708
+ /**
709
+ * Label is on the left of the select in LTR and
710
+ * on the right in RTL. Label also has a fixed width.
711
+ */
712
+ flex: 0 0 100px;
713
+ width: 100px;
714
+ min-width: 100px;
715
+ max-width: 200px;
716
+ }
717
+
718
+ /**
719
+ * Ensures the select does not
720
+ * overlap the label.
721
+ * Also ensure that the native wrapper
722
+ * takes up the remaining available height and width.
723
+ */
724
+ :host(.select-label-placement-stacked) .native-wrapper,
725
+ :host(.select-label-placement-floating) .native-wrapper {
726
+ margin-left: 0;
727
+ margin-right: 0;
728
+ margin-top: 1px;
729
+ margin-bottom: 0;
730
+ }
731
+
732
+ /**
733
+ * This makes the label sit over the select
734
+ * when the select is blurred and has no value.
735
+ * The label should not sit over the select if the
736
+ * select has a placeholder.
737
+ * Note: This is different from what ion-input does
738
+ * because the activating the select causes an overlay
739
+ * to appear. This makes it hard to read the placeholder.
740
+ * With ion-input, the input just focuses and the placeholder
741
+ * is still easy to read.
742
+ */
743
+ :host(.select-label-placement-floating) .label-text-wrapper {
744
+ transform: translateY(100%) scale(1);
745
+ }
746
+
606
747
  /**
607
748
  * This makes the label sit above the input.
608
749
  */
@@ -615,25 +756,50 @@ button {
615
756
  max-width: calc(100% / 0.75);
616
757
  }
617
758
 
618
- ::slotted([slot=start]), ::slotted([slot=end]) {
619
- /**
620
- * Prevent the slots from shrinking when the label and/or
621
- * selected item text is long enough to fill the rest of
622
- * the container.
623
- */
624
- flex-shrink: 0;
759
+ /**
760
+ * Since the label sits on top of the element,
761
+ * the component needs to be taller otherwise the
762
+ * label will appear too close to the select text.
763
+ */
764
+ :host(.select-label-placement-floating),
765
+ :host(.select-label-placement-stacked) {
766
+ min-height: 56px;
767
+ }
768
+
769
+ /**
770
+ * When using a stacked/floating label, the inner wrapper is
771
+ * stacked vertically under the label container. This line
772
+ * ensures that the inner wrapper fills all the remaining height
773
+ * of the component.
774
+ */
775
+ :host(.select-label-placement-stacked) .select-wrapper-inner,
776
+ :host(.select-label-placement-floating) .select-wrapper-inner {
777
+ flex-grow: 1;
625
778
  }
626
779
 
627
780
  ::slotted([slot=start]:last-of-type) {
628
781
  margin-inline-end: 16px;
629
- margin-inline-start: 0;
630
782
  }
631
783
 
632
784
  ::slotted([slot=end]:first-of-type) {
633
785
  margin-inline-start: 16px;
634
- margin-inline-end: 0;
786
+ }
787
+
788
+ .native-wrapper {
789
+ /**
790
+ * When the floating label appears on top of the
791
+ * input, we need to fade the input out so that the
792
+ * label does not overlap with the placeholder.
793
+ */
794
+ transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
635
795
  }
636
796
 
797
+ /**
798
+ * Convert a pixels given value into rem
799
+ *
800
+ * @param pixels - Value in pixels to be converted (i.e. px)
801
+ * @param context (optional) - Baseline value
802
+ */
637
803
  /**
638
804
  * Convert a font size to a dynamic font size.
639
805
  * Fonts that participate in Dynamic Type should use
@@ -689,6 +855,12 @@ button {
689
855
  * }
690
856
  * }
691
857
  */
858
+ /**
859
+ * Convert a pixels given value into rem
860
+ *
861
+ * @param pixels - Value in pixels to be converted (i.e. px)
862
+ * @param context (optional) - Baseline value
863
+ */
692
864
  /**
693
865
  * Convert a font size to a dynamic font size.
694
866
  * Fonts that participate in Dynamic Type should use