@ionic/core 8.8.4-dev.11775852701.1bbb2b3e → 8.8.4-dev.11776184632.103b8351

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