@ionic/core 9.0.10 → 9.0.11-dev.11793705116.185a3203

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 (1100) 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-item.d.ts +11 -0
  33. package/components/ion-gallery-item.js +4 -0
  34. package/components/ion-gallery.d.ts +11 -0
  35. package/components/ion-gallery.js +4 -0
  36. package/components/ion-grid.js +1 -1
  37. package/components/ion-header.js +1 -1
  38. package/components/ion-icon.js +1 -1
  39. package/components/ion-img.js +1 -1
  40. package/components/ion-infinite-scroll-content.js +1 -1
  41. package/components/ion-infinite-scroll.js +1 -1
  42. package/components/ion-input-otp.js +1 -1
  43. package/components/ion-input-password-toggle.js +1 -1
  44. package/components/ion-input.js +1 -1
  45. package/components/ion-item-divider.js +1 -1
  46. package/components/ion-item-group.js +1 -1
  47. package/components/ion-item-option.js +1 -1
  48. package/components/ion-item-options.js +1 -1
  49. package/components/ion-item-sliding.js +1 -1
  50. package/components/ion-item.js +1 -1
  51. package/components/ion-label.js +1 -1
  52. package/components/ion-list-header.js +1 -1
  53. package/components/ion-list.js +1 -1
  54. package/components/ion-loading.js +1 -1
  55. package/components/ion-menu-button.js +1 -1
  56. package/components/ion-menu-toggle.js +1 -1
  57. package/components/ion-menu.js +1 -1
  58. package/components/ion-modal.js +1 -1
  59. package/components/ion-nav-link.js +1 -1
  60. package/components/ion-nav.js +1 -1
  61. package/components/ion-note.js +1 -1
  62. package/components/ion-picker-column-option.js +1 -1
  63. package/components/ion-picker-column.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-0rXxxCTt.js +4 -0
  105. package/components/p-3Qs1sQxU.js +4 -0
  106. package/components/p-3SVb97od.js +4 -0
  107. package/components/p-7-zF1amS.js +4 -0
  108. package/components/p-AgF3xGwz.js +4 -0
  109. package/components/{p-ChkSQqfP.js → p-B8TMb1l1.js} +1 -1
  110. package/{dist/ionic/p-BO10QT9r.js → components/p-BCQSEpww.js} +1 -1
  111. package/components/p-BCYVFy50.js +4 -0
  112. package/components/p-BHiggB_l.js +4 -0
  113. package/components/p-BNBa8_Ls.js +4 -0
  114. package/components/p-BNV7BMZo.js +4 -0
  115. package/components/p-BUF_V-Kg.js +4 -0
  116. package/components/p-BYk20Mf5.js +4 -0
  117. package/components/p-B_o50gvn.js +4 -0
  118. package/components/p-BfDzKnZ-.js +4 -0
  119. package/{dist/ionic/p-BWKtcudz.js → components/p-BmfO2-NE.js} +1 -1
  120. package/components/{p-BWbz71uB.js → p-BmnPbSf3.js} +1 -1
  121. package/components/p-ByE0slik.js +4 -0
  122. package/components/p-C0H1LYQ5.js +4 -0
  123. package/components/p-C7BPrXxF.js +4 -0
  124. package/components/p-C93i7QCU.js +4 -0
  125. package/components/p-C9qQ2zBV.js +4 -0
  126. package/components/p-CAekGbOf.js +4 -0
  127. package/components/p-CE7N7-7s.js +4 -0
  128. package/components/p-CL3vSQL7.js +4 -0
  129. package/components/p-CODBQrPj.js +4 -0
  130. package/components/{p-Dbi3KqKm.js → p-CSSj6cqb.js} +1 -1
  131. package/components/{p-ChsJlFCQ.js → p-CXzJ234J.js} +1 -1
  132. package/components/p-CehdCO1m.js +4 -0
  133. package/components/{p-CwEis84J.js → p-CiEBXUnh.js} +1 -1
  134. package/components/p-CvxND1-3.js +4 -0
  135. package/components/p-CyvtM0H1.js +4 -0
  136. package/components/p-CzDkZh7h.js +4 -0
  137. package/components/p-DEh2reav.js +4 -0
  138. package/components/p-DFBWAYvo.js +4 -0
  139. package/components/p-DFjX2uxL.js +4 -0
  140. package/components/p-DLXAGW46.js +4 -0
  141. package/components/p-DQwGbYN_.js +4 -0
  142. package/components/p-DRpeTf7R.js +4 -0
  143. package/components/p-DbKRl9BQ.js +4 -0
  144. package/components/{p-07wRJfkt.js → p-Dce65ayP.js} +1 -1
  145. package/components/p-DdOVnjsY.js +4 -0
  146. package/components/p-DibGn4gb.js +4 -0
  147. package/components/p-DktrWeJE.js +4 -0
  148. package/components/p-DmdTkb5k.js +4 -0
  149. package/components/p-DmhWSY74.js +4 -0
  150. package/components/p-DtZimz8H.js +4 -0
  151. package/components/p-ET0FZop5.js +4 -0
  152. package/components/p-LoXpKVmq.js +4 -0
  153. package/components/p-NZGZhPF5.js +4 -0
  154. package/components/p-NcQUGze-.js +4 -0
  155. package/components/p-PFwuhbqg.js +4 -0
  156. package/components/{p-CqvARtmt.js → p-YAWKbhjV.js} +1 -1
  157. package/components/{p-DHo45oj7.js → p-cm7z1a2E.js} +1 -1
  158. package/components/p-fU4OdAZ9.js +4 -0
  159. package/components/{p-CCFj0kgH.js → p-i08Rz__6.js} +1 -1
  160. package/components/p-iNIvlAGo.js +4 -0
  161. package/{dist/ionic/p-CJmyfI8x.js → components/p-o89R3aqe.js} +1 -1
  162. package/components/p-qbig9BW8.js +4 -0
  163. package/css/core.css +1 -1
  164. package/css/core.css.map +1 -1
  165. package/css/display.css +1 -1
  166. package/css/display.css.map +1 -1
  167. package/css/flex-utils.css +1 -1
  168. package/css/flex-utils.css.map +1 -1
  169. package/css/float-elements.css.map +1 -1
  170. package/css/global.bundle.css.map +1 -1
  171. package/css/ionic/bundle.ionic.css +1 -0
  172. package/css/ionic/bundle.ionic.css.map +1 -0
  173. package/css/ionic/core.ionic.css +1 -0
  174. package/css/ionic/core.ionic.css.map +1 -0
  175. package/css/ionic/global.bundle.ionic.css +1 -0
  176. package/css/ionic/global.bundle.ionic.css.map +1 -0
  177. package/css/ionic/ionic-swiper.ionic.css +1 -0
  178. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  179. package/css/ionic/link.ionic.css +1 -0
  180. package/css/ionic/link.ionic.css.map +1 -0
  181. package/css/ionic/structure.ionic.css +1 -0
  182. package/css/ionic/structure.ionic.css.map +1 -0
  183. package/css/ionic/typography.ionic.css +1 -0
  184. package/css/ionic/typography.ionic.css.map +1 -0
  185. package/css/ionic/utils.bundle.ionic.css +1 -0
  186. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  187. package/css/ionic-swiper.css +1 -1
  188. package/css/ionic-swiper.css.map +1 -1
  189. package/css/ionic.bundle.css +1 -1
  190. package/css/ionic.bundle.css.map +1 -1
  191. package/css/normalize.css.map +1 -1
  192. package/css/padding.css.map +1 -1
  193. package/css/palettes/dark.always.css.map +1 -1
  194. package/css/palettes/dark.class.css.map +1 -1
  195. package/css/palettes/dark.system.css.map +1 -1
  196. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  197. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  198. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  199. package/css/palettes/high-contrast.always.css.map +1 -1
  200. package/css/palettes/high-contrast.class.css.map +1 -1
  201. package/css/palettes/high-contrast.system.css.map +1 -1
  202. package/css/structure.css.map +1 -1
  203. package/css/text-alignment.css.map +1 -1
  204. package/css/text-transformation.css.map +1 -1
  205. package/css/typography.css.map +1 -1
  206. package/css/utils.bundle.css +1 -1
  207. package/css/utils.bundle.css.map +1 -1
  208. package/dist/cjs/{animation-UiXhXV49.js → animation-zKIdNEmG.js} +3 -3
  209. package/dist/cjs/{app-globals-BoFCZq0K.js → app-globals-BDrxn8eR.js} +1 -1
  210. package/dist/cjs/{attribute-controller-0-lwbVEj.js → attribute-controller-D7O2snOZ.js} +3 -2
  211. package/dist/cjs/{button-active-DzN1aPt-.js → button-active-CY7cZvH5.js} +2 -2
  212. package/dist/cjs/{capacitor-BTjfXFlK.js → capacitor-DmA66EwP.js} +3 -3
  213. package/dist/cjs/clear-button-press-controller-C6PTS3jC.js +45 -0
  214. package/dist/cjs/focus-visible-DGPRKkcx.js +151 -0
  215. package/dist/cjs/{format-CVjpvAl1.js → format-C6r4Asi4.js} +1 -1
  216. package/dist/cjs/{framework-delegate-hNMKEiQC.js → framework-delegate-CAdDEnFS.js} +4 -2
  217. package/dist/cjs/{haptic-BD5qPgy8.js → haptic-Ch-X4gRx.js} +1 -1
  218. package/dist/cjs/{helpers-BrETKUUX.js → helpers-DHNLF4fD.js} +88 -10
  219. package/dist/cjs/{index-B4ONUQRp.js → index-B3s1jjBU.js} +1 -1
  220. package/dist/cjs/{index-BTc0Jnhx.js → index-C3pmpKlo.js} +17 -15
  221. package/dist/cjs/{index-bwclzjks.js → index-C6QFfpm5.js} +9 -7
  222. package/dist/cjs/{index-BiQyIvoc.js → index-CB1PuDlX.js} +55 -5
  223. package/dist/cjs/{index-wOmugbdg.js → index-CxDnX7hd.js} +2 -0
  224. package/dist/cjs/{index-DMz2Eyis.js → index-DhGCo_n8.js} +2 -2
  225. package/dist/cjs/index-DkNv4J_i.js +10 -0
  226. package/dist/cjs/{index-DNBYnlrc.js → index-lD5wTj_b.js} +4 -4
  227. package/dist/cjs/index.cjs.js +20 -18
  228. package/dist/cjs/{input-shims-CRmdShL9.js → input-shims-CjkWx7ae.js} +18 -16
  229. package/dist/cjs/{input.utils-Becpo0ax.js → input.utils-CD4DNiim.js} +1 -1
  230. package/dist/cjs/ion-accordion_2.cjs.entry.js +57 -29
  231. package/dist/cjs/ion-action-sheet.cjs.entry.js +42 -37
  232. package/dist/cjs/ion-alert.cjs.entry.js +50 -45
  233. package/dist/cjs/ion-app_8.cjs.entry.js +457 -195
  234. package/dist/cjs/ion-avatar_3.cjs.entry.js +124 -13
  235. package/dist/cjs/ion-back-button.cjs.entry.js +31 -23
  236. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -7
  237. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +42 -18
  238. package/dist/cjs/ion-button_2.cjs.entry.js +61 -23
  239. package/dist/cjs/ion-card_5.cjs.entry.js +57 -34
  240. package/dist/cjs/ion-checkbox.cjs.entry.js +43 -17
  241. package/dist/cjs/ion-chip.cjs.entry.js +51 -9
  242. package/dist/cjs/ion-col_3.cjs.entry.js +56 -63
  243. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -9
  244. package/dist/cjs/ion-datetime.cjs.entry.js +75 -33
  245. package/dist/cjs/ion-divider.cjs.entry.js +52 -0
  246. package/dist/cjs/ion-fab_3.cjs.entry.js +40 -28
  247. package/dist/cjs/ion-gallery-item.cjs.entry.js +59 -0
  248. package/dist/cjs/ion-gallery.cjs.entry.js +608 -0
  249. package/dist/cjs/ion-img.cjs.entry.js +9 -4
  250. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +91 -16
  251. package/dist/cjs/ion-input-otp.cjs.entry.js +75 -10
  252. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +42 -14
  253. package/dist/cjs/ion-input.cjs.entry.js +147 -38
  254. package/dist/cjs/ion-item-option_3.cjs.entry.js +466 -52
  255. package/dist/cjs/ion-item_8.cjs.entry.js +118 -51
  256. package/dist/cjs/ion-loading.cjs.entry.js +33 -28
  257. package/dist/cjs/ion-menu_3.cjs.entry.js +54 -36
  258. package/dist/cjs/ion-modal.cjs.entry.js +304 -155
  259. package/dist/cjs/ion-nav_2.cjs.entry.js +14 -10
  260. package/dist/cjs/ion-picker-column-option.cjs.entry.js +13 -8
  261. package/dist/cjs/ion-picker-column.cjs.entry.js +17 -15
  262. package/dist/cjs/ion-picker.cjs.entry.js +11 -6
  263. package/dist/cjs/ion-popover.cjs.entry.js +33 -28
  264. package/dist/cjs/ion-progress-bar.cjs.entry.js +28 -9
  265. package/dist/cjs/ion-radio_2.cjs.entry.js +37 -18
  266. package/dist/cjs/ion-range.cjs.entry.js +21 -13
  267. package/dist/cjs/ion-refresher_2.cjs.entry.js +45 -20
  268. package/dist/cjs/ion-reorder_2.cjs.entry.js +31 -13
  269. package/dist/cjs/ion-ripple-effect.cjs.entry.js +16 -7
  270. package/dist/cjs/ion-route_4.cjs.entry.js +12 -10
  271. package/dist/cjs/ion-searchbar.cjs.entry.js +118 -32
  272. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  273. package/dist/cjs/ion-segment-view.cjs.entry.js +13 -3
  274. package/dist/cjs/ion-segment_2.cjs.entry.js +24 -16
  275. package/dist/cjs/ion-select-modal.cjs.entry.js +54 -25
  276. package/dist/cjs/ion-select_3.cjs.entry.js +203 -81
  277. package/dist/cjs/ion-spinner.cjs.entry.js +31 -8
  278. package/dist/cjs/ion-split-pane.cjs.entry.js +14 -9
  279. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +150 -27
  280. package/dist/cjs/ion-tab_2.cjs.entry.js +9 -7
  281. package/dist/cjs/ion-text.cjs.entry.js +8 -7
  282. package/dist/cjs/ion-textarea.cjs.entry.js +178 -41
  283. package/dist/cjs/ion-toast.cjs.entry.js +86 -57
  284. package/dist/cjs/ion-toggle.cjs.entry.js +67 -25
  285. package/dist/cjs/ionic-global-CZX42KL4.js +551 -0
  286. package/dist/cjs/ionic.cjs.js +5 -4
  287. package/dist/cjs/{ios.transition-CN092Fh6.js → ios.transition-BjOYqzH0.js} +7 -4
  288. package/dist/cjs/{item-multiple-inputs-C-hz7xrh.js → item-multiple-inputs-D0lzjl68.js} +1 -1
  289. package/dist/cjs/{keyboard-4OBzkjOG.js → keyboard-Cix5TVkD.js} +3 -5
  290. package/dist/cjs/{keyboard-BMpscicm.js → keyboard-cHxZlTyz.js} +1 -1
  291. package/dist/cjs/loader.cjs.js +5 -4
  292. package/dist/cjs/{md.transition-B6961Ny9.js → md.transition-C4i7l6ui.js} +6 -4
  293. package/dist/cjs/{overlay-control-label-D2sdL2O8.js → overlay-control-label-DnRLQR1t.js} +13 -11
  294. package/dist/cjs/{overlays-BbVQG3UT.js → overlays-DziOxcCT.js} +314 -176
  295. package/dist/cjs/scroll-hide-controller-BSVBCkbw.js +345 -0
  296. package/dist/cjs/{select-option-render-CzyhrkOu.js → select-option-render-X_iZ-xeh.js} +2 -2
  297. package/dist/cjs/{slot-mutation-controller-CRa_cKOh.js → slot-mutation-controller-BS-L1szN.js} +100 -13
  298. package/dist/cjs/{status-tap-hRIvObiJ.js → status-tap-D5yiKwdj.js} +5 -3
  299. package/dist/cjs/{swipe-back-C-aigThB.js → swipe-back-xM_5R5s-.js} +4 -2
  300. package/dist/cjs/{theme-Bw0rpaNN.js → theme-Cy4joHPt.js} +25 -1
  301. package/dist/cjs/validity-CoPMWggj.js +51 -0
  302. package/dist/collection/collection-manifest.json +8 -0
  303. package/dist/collection/components/accordion/accordion.ionic.css +199 -0
  304. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  305. package/dist/collection/components/accordion/accordion.js +36 -27
  306. package/dist/collection/components/accordion/accordion.md.css +67 -59
  307. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  308. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  309. package/dist/collection/components/accordion-group/accordion-group.js +44 -8
  310. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  311. package/dist/collection/components/action-sheet/action-sheet.ionic.css +490 -0
  312. package/dist/collection/components/action-sheet/action-sheet.ios.css +184 -54
  313. package/dist/collection/components/action-sheet/action-sheet.js +16 -13
  314. package/dist/collection/components/action-sheet/action-sheet.md.css +179 -55
  315. package/dist/collection/components/alert/alert.ionic.css +779 -0
  316. package/dist/collection/components/alert/alert.ios.css +247 -54
  317. package/dist/collection/components/alert/alert.js +22 -19
  318. package/dist/collection/components/alert/alert.md.css +243 -56
  319. package/dist/collection/components/app/app.js +15 -83
  320. package/dist/collection/components/avatar/avatar.ionic.css +379 -0
  321. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  322. package/dist/collection/components/avatar/avatar.js +120 -4
  323. package/dist/collection/components/avatar/avatar.md.css +51 -0
  324. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  325. package/dist/collection/components/back-button/back-button.js +26 -20
  326. package/dist/collection/components/back-button/back-button.md.css +60 -48
  327. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  328. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  329. package/dist/collection/components/backdrop/backdrop.js +12 -6
  330. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  331. package/dist/collection/components/badge/badge.ionic.css +269 -0
  332. package/dist/collection/components/badge/badge.ios.css +137 -12
  333. package/dist/collection/components/badge/badge.js +143 -9
  334. package/dist/collection/components/badge/badge.md.css +122 -12
  335. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  336. package/dist/collection/components/breadcrumb/breadcrumb.js +31 -11
  337. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  338. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  339. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  340. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  341. package/dist/collection/components/button/button.ionic.css +640 -0
  342. package/dist/collection/components/button/button.ios.css +154 -46
  343. package/dist/collection/components/button/button.js +63 -27
  344. package/dist/collection/components/button/button.md.css +150 -50
  345. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  346. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  347. package/dist/collection/components/buttons/buttons.js +15 -9
  348. package/dist/collection/components/buttons/buttons.md.css +55 -3
  349. package/dist/collection/components/card/card.ionic.css +144 -0
  350. package/dist/collection/components/card/card.ios.css +65 -14
  351. package/dist/collection/components/card/card.js +41 -10
  352. package/dist/collection/components/card/card.md.css +65 -14
  353. package/dist/collection/components/card-content/card-content.ionic.css +88 -0
  354. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  355. package/dist/collection/components/card-content/card-content.js +12 -10
  356. package/dist/collection/components/card-content/card-content.md.css +20 -35
  357. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  358. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  359. package/dist/collection/components/card-header/card-header.js +13 -10
  360. package/dist/collection/components/card-header/card-header.md.css +27 -15
  361. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +143 -0
  362. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  363. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  364. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  365. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  366. package/dist/collection/components/card-title/card-title.js +11 -8
  367. package/dist/collection/components/card-title/card-title.md.css +73 -0
  368. package/dist/collection/components/checkbox/checkbox.ionic.css +535 -0
  369. package/dist/collection/components/checkbox/checkbox.ios.css +244 -115
  370. package/dist/collection/components/checkbox/checkbox.js +80 -15
  371. package/dist/collection/components/checkbox/checkbox.md.css +245 -116
  372. package/dist/collection/components/chip/chip.ionic.css +216 -0
  373. package/dist/collection/components/chip/chip.ios.css +67 -14
  374. package/dist/collection/components/chip/chip.js +108 -8
  375. package/dist/collection/components/chip/chip.md.css +67 -14
  376. package/dist/collection/components/col/col.css +192 -4
  377. package/dist/collection/components/col/col.js +210 -67
  378. package/dist/collection/components/content/content.css +47 -2
  379. package/dist/collection/components/content/content.js +16 -11
  380. package/dist/collection/components/datetime/datetime.ionic.css +697 -0
  381. package/dist/collection/components/datetime/datetime.ios.css +305 -114
  382. package/dist/collection/components/datetime/datetime.js +61 -20
  383. package/dist/collection/components/datetime/datetime.md.css +295 -103
  384. package/dist/collection/components/datetime/utils/data.js +5 -5
  385. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  386. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  387. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  388. package/dist/collection/components/divider/divider.ionic.css +148 -0
  389. package/dist/collection/components/divider/divider.ios.css +87 -0
  390. package/dist/collection/components/divider/divider.js +94 -0
  391. package/dist/collection/components/divider/divider.md.css +87 -0
  392. package/dist/collection/components/fab/fab.css +25 -1
  393. package/dist/collection/components/fab/fab.js +9 -5
  394. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  395. package/dist/collection/components/fab-button/fab-button.js +31 -21
  396. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  397. package/dist/collection/components/fab-list/fab-list.css +12 -0
  398. package/dist/collection/components/fab-list/fab-list.js +9 -5
  399. package/dist/collection/components/footer/footer-interface.js +1 -0
  400. package/dist/collection/components/footer/footer.ios.css +33 -6
  401. package/dist/collection/components/footer/footer.js +117 -25
  402. package/dist/collection/components/footer/footer.md.css +40 -0
  403. package/dist/collection/components/gallery/gallery-constants.js +12 -0
  404. package/dist/collection/components/gallery/gallery-interface.js +1 -0
  405. package/dist/collection/components/gallery/gallery.css +15 -0
  406. package/dist/collection/components/gallery/gallery.js +678 -0
  407. package/dist/collection/components/gallery/test/utils.js +100 -0
  408. package/dist/collection/components/gallery-item/gallery-item.css +49 -0
  409. package/dist/collection/components/gallery-item/gallery-item.js +98 -0
  410. package/dist/collection/components/grid/grid.css +12 -0
  411. package/dist/collection/components/grid/grid.js +9 -5
  412. package/dist/collection/components/header/header-interface.js +1 -0
  413. package/dist/collection/components/header/header.ionic.css +286 -0
  414. package/dist/collection/components/header/header.ios.css +178 -133
  415. package/dist/collection/components/header/header.js +180 -39
  416. package/dist/collection/components/header/header.md.css +199 -9
  417. package/dist/collection/components/header/header.utils.js +5 -13
  418. package/dist/collection/components/img/img.js +7 -2
  419. package/dist/collection/components/infinite-scroll/infinite-scroll.js +99 -5
  420. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  421. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  422. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  423. package/dist/collection/components/input/input.ionic.css +961 -0
  424. package/dist/collection/components/input/input.ios.css +254 -160
  425. package/dist/collection/components/input/input.js +172 -44
  426. package/dist/collection/components/input/input.md.css +224 -232
  427. package/dist/collection/components/input-otp/input-otp.ionic.css +369 -0
  428. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  429. package/dist/collection/components/input-otp/input-otp.js +74 -8
  430. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  431. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  432. package/dist/collection/components/input-password-toggle/input-password-toggle.js +37 -10
  433. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  434. package/dist/collection/components/item/item.ionic.css +495 -0
  435. package/dist/collection/components/item/item.ios.css +120 -80
  436. package/dist/collection/components/item/item.js +51 -21
  437. package/dist/collection/components/item/item.md.css +131 -79
  438. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  439. package/dist/collection/components/item-divider/item-divider.js +11 -8
  440. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  441. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  442. package/dist/collection/components/item-group/item-group.js +13 -7
  443. package/dist/collection/components/item-group/item-group.md.css +12 -0
  444. package/dist/collection/components/item-option/item-option.ionic.css +276 -0
  445. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  446. package/dist/collection/components/item-option/item-option.js +73 -9
  447. package/dist/collection/components/item-option/item-option.md.css +136 -29
  448. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  449. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  450. package/dist/collection/components/item-options/item-options.js +13 -7
  451. package/dist/collection/components/item-options/item-options.md.css +77 -34
  452. package/dist/collection/components/item-sliding/item-sliding.ionic.css +211 -0
  453. package/dist/collection/components/item-sliding/item-sliding.js +419 -35
  454. package/dist/collection/components/item-sliding/{item-sliding.css → item-sliding.native.css} +84 -9
  455. package/dist/collection/components/item-sliding/test/test.utils.js +13 -0
  456. package/dist/collection/components/label/label.ios.css +18 -0
  457. package/dist/collection/components/label/label.js +11 -8
  458. package/dist/collection/components/label/label.md.css +18 -0
  459. package/dist/collection/components/list/list.ionic.css +212 -0
  460. package/dist/collection/components/list/list.ios.css +54 -14
  461. package/dist/collection/components/list/list.js +48 -9
  462. package/dist/collection/components/list/list.md.css +56 -16
  463. package/dist/collection/components/list-header/list-header.ionic.css +189 -0
  464. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  465. package/dist/collection/components/list-header/list-header.js +11 -8
  466. package/dist/collection/components/list-header/list-header.md.css +82 -38
  467. package/dist/collection/components/loading/loading.ios.css +13 -1
  468. package/dist/collection/components/loading/loading.js +15 -12
  469. package/dist/collection/components/loading/loading.md.css +13 -1
  470. package/dist/collection/components/menu/menu.ios.css +15 -3
  471. package/dist/collection/components/menu/menu.js +12 -7
  472. package/dist/collection/components/menu/menu.md.css +15 -3
  473. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  474. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  475. package/dist/collection/components/menu-button/menu-button.js +23 -10
  476. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  477. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  478. package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
  479. package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
  480. package/dist/collection/components/modal/animations/sheet.js +8 -2
  481. package/dist/collection/components/modal/gestures/sheet.js +96 -8
  482. package/dist/collection/components/modal/modal.ionic.css +266 -0
  483. package/dist/collection/components/modal/modal.ios.css +178 -70
  484. package/dist/collection/components/modal/modal.js +52 -13
  485. package/dist/collection/components/modal/modal.md.css +178 -70
  486. package/dist/collection/components/nav/nav.css +7 -1
  487. package/dist/collection/components/nav/nav.js +10 -4
  488. package/dist/collection/components/nav-link/nav-link.js +5 -1
  489. package/dist/collection/components/note/note.ios.css +12 -0
  490. package/dist/collection/components/note/note.js +11 -8
  491. package/dist/collection/components/note/note.md.css +12 -0
  492. package/dist/collection/components/picker/picker.ios.css +15 -3
  493. package/dist/collection/components/picker/picker.js +8 -5
  494. package/dist/collection/components/picker/picker.md.css +15 -3
  495. package/dist/collection/components/picker-column/picker-column.css +9 -2
  496. package/dist/collection/components/picker-column/picker-column.js +8 -7
  497. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  498. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  499. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  500. package/dist/collection/components/popover/popover.ionic.css +290 -0
  501. package/dist/collection/components/popover/popover.ios.css +13 -1
  502. package/dist/collection/components/popover/popover.js +19 -16
  503. package/dist/collection/components/popover/popover.md.css +13 -1
  504. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  505. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  506. package/dist/collection/components/progress-bar/progress-bar.js +43 -7
  507. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  508. package/dist/collection/components/radio/radio.ionic.css +421 -0
  509. package/dist/collection/components/radio/radio.ios.css +207 -102
  510. package/dist/collection/components/radio/radio.js +14 -9
  511. package/dist/collection/components/radio/radio.md.css +207 -102
  512. package/dist/collection/components/radio-group/radio-group.ionic.css +118 -0
  513. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  514. package/dist/collection/components/radio-group/radio-group.js +48 -7
  515. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  516. package/dist/collection/components/range/range.ionic.css +566 -0
  517. package/dist/collection/components/range/range.ios.css +128 -85
  518. package/dist/collection/components/range/range.js +16 -10
  519. package/dist/collection/components/range/range.md.css +128 -85
  520. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  521. package/dist/collection/components/refresher/refresher.js +11 -8
  522. package/dist/collection/components/refresher/refresher.md.css +15 -2
  523. package/dist/collection/components/refresher-content/refresher-content.js +34 -7
  524. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  525. package/dist/collection/components/reorder/reorder.js +25 -6
  526. package/dist/collection/components/reorder/reorder.md.css +6 -0
  527. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  528. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  529. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  530. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  531. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  532. package/dist/collection/components/route/route.js +4 -0
  533. package/dist/collection/components/router/router.js +4 -0
  534. package/dist/collection/components/router-link/router-link.css +8 -2
  535. package/dist/collection/components/router-link/router-link.js +9 -5
  536. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  537. package/dist/collection/components/router-outlet/router-outlet.js +6 -3
  538. package/dist/collection/components/row/row.css +16 -0
  539. package/dist/collection/components/row/row.js +9 -2
  540. package/dist/collection/components/searchbar/searchbar.ionic.css +621 -0
  541. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  542. package/dist/collection/components/searchbar/searchbar.js +164 -42
  543. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  544. package/dist/collection/components/segment/segment.ionic.css +115 -0
  545. package/dist/collection/components/segment/segment.ios.css +45 -2
  546. package/dist/collection/components/segment/segment.js +11 -8
  547. package/dist/collection/components/segment/segment.md.css +45 -2
  548. package/dist/collection/components/segment-button/segment-button.ionic.css +351 -0
  549. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  550. package/dist/collection/components/segment-button/segment-button.js +11 -8
  551. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  552. package/dist/collection/components/segment-content/segment-content.js +1 -1
  553. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  554. package/dist/collection/components/segment-view/segment-view.js +13 -4
  555. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  556. package/dist/collection/components/select/select.ionic.css +976 -0
  557. package/dist/collection/components/select/select.ios.css +304 -148
  558. package/dist/collection/components/select/select.js +232 -82
  559. package/dist/collection/components/select/select.md.css +320 -150
  560. package/dist/collection/components/select-modal/select-modal.ionic.css +254 -0
  561. package/dist/collection/components/select-modal/select-modal.ios.css +293 -45
  562. package/dist/collection/components/select-modal/select-modal.js +63 -15
  563. package/dist/collection/components/select-modal/select-modal.md.css +273 -43
  564. package/dist/collection/components/select-option/select-option.js +8 -4
  565. package/dist/collection/components/select-popover/select-popover.ionic.css +253 -0
  566. package/dist/collection/components/select-popover/select-popover.ios.css +188 -124
  567. package/dist/collection/components/select-popover/select-popover.js +17 -9
  568. package/dist/collection/components/select-popover/select-popover.md.css +228 -47
  569. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  570. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  571. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  572. package/dist/collection/components/spinner/spinner.js +47 -6
  573. package/dist/collection/components/spinner/spinner.native.css +199 -0
  574. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  575. package/dist/collection/components/split-pane/split-pane.js +15 -8
  576. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  577. package/dist/collection/components/tab/tab.js +6 -2
  578. package/dist/collection/components/tab-bar/tab-bar.ionic.css +249 -0
  579. package/dist/collection/components/tab-bar/tab-bar.ios.css +86 -43
  580. package/dist/collection/components/tab-bar/tab-bar.js +178 -15
  581. package/dist/collection/components/tab-bar/tab-bar.md.css +86 -43
  582. package/dist/collection/components/tab-button/tab-button.ionic.css +372 -0
  583. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  584. package/dist/collection/components/tab-button/tab-button.js +54 -9
  585. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  586. package/dist/collection/components/tabs/tabs.css +7 -1
  587. package/dist/collection/components/tabs/tabs.js +4 -1
  588. package/dist/collection/components/text/text.css +6 -0
  589. package/dist/collection/components/text/text.js +7 -6
  590. package/dist/collection/components/textarea/textarea.ionic.css +989 -0
  591. package/dist/collection/components/textarea/textarea.ios.css +322 -174
  592. package/dist/collection/components/textarea/textarea.js +205 -43
  593. package/dist/collection/components/textarea/textarea.md.css +339 -176
  594. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  595. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  596. package/dist/collection/components/title/title.ionic.css +125 -0
  597. package/dist/collection/components/title/title.ios.css +32 -4
  598. package/dist/collection/components/title/title.js +13 -7
  599. package/dist/collection/components/title/title.md.css +39 -4
  600. package/dist/collection/components/toast/animations/utils.js +1 -1
  601. package/dist/collection/components/toast/toast.ionic.css +391 -0
  602. package/dist/collection/components/toast/toast.ios.css +84 -45
  603. package/dist/collection/components/toast/toast.js +79 -13
  604. package/dist/collection/components/toast/toast.md.css +84 -45
  605. package/dist/collection/components/toggle/toggle.ionic.css +510 -0
  606. package/dist/collection/components/toggle/toggle.ios.css +247 -127
  607. package/dist/collection/components/toggle/toggle.js +58 -18
  608. package/dist/collection/components/toggle/toggle.md.css +245 -127
  609. package/dist/collection/components/toolbar/test/image.svg +1 -0
  610. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  611. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  612. package/dist/collection/components/toolbar/toolbar.js +216 -14
  613. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  614. package/dist/collection/global/ionic-global.js +239 -13
  615. package/dist/collection/utils/css-value-validation.js +39 -0
  616. package/dist/collection/utils/focus-trap.js +15 -4
  617. package/dist/collection/utils/focus-visible.js +73 -2
  618. package/dist/collection/utils/forms/clear-button-press-controller.js +40 -0
  619. package/dist/collection/utils/forms/click-controller.js +95 -9
  620. package/dist/collection/utils/forms/index.js +1 -0
  621. package/dist/collection/utils/forms/validity.js +31 -0
  622. package/dist/collection/utils/framework-delegate.js +3 -1
  623. package/dist/collection/utils/hardware-back-button.js +15 -0
  624. package/dist/collection/utils/helpers.js +84 -3
  625. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  626. package/dist/collection/utils/media.js +1 -0
  627. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  628. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  629. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  630. package/dist/collection/utils/overlay-control-label.js +13 -11
  631. package/dist/collection/utils/overlays.js +289 -10
  632. package/dist/collection/utils/scroll-hide-controller.js +178 -0
  633. package/dist/collection/utils/test/playwright/drag-element.js +32 -9
  634. package/dist/collection/utils/test/playwright/field-geometry.js +34 -0
  635. package/dist/collection/utils/test/playwright/generator.js +48 -23
  636. package/dist/collection/utils/test/playwright/index.js +1 -0
  637. package/dist/collection/utils/test/playwright/page/utils/goto.js +10 -1
  638. package/dist/collection/utils/test/playwright/page/utils/set-content.js +26 -3
  639. package/dist/collection/utils/theme.js +25 -1
  640. package/dist/collection/utils/transition/ios.transition.js +1 -0
  641. package/dist/docs.json +8889 -293
  642. package/dist/esm/{animation-C_V9lXzL.js → animation-GasMiLY0.js} +2 -2
  643. package/dist/esm/{app-globals-CNfpAPW6.js → app-globals-DbCTe1Vv.js} +1 -1
  644. package/dist/esm/{attribute-controller-ItNOXNp9.js → attribute-controller-CbJaN4Zr.js} +2 -1
  645. package/dist/esm/{button-active-rB-Ct9KZ.js → button-active-DLOYzeXl.js} +2 -2
  646. package/dist/esm/{capacitor-BY7l8HgR.js → capacitor-CFERIeaU.js} +1 -1
  647. package/dist/esm/clear-button-press-controller-6ph4kKYn.js +43 -0
  648. package/dist/esm/focus-visible-BYk20Mf5.js +146 -0
  649. package/dist/esm/{format-Ck1cw5z7.js → format-NT7iHsbA.js} +1 -1
  650. package/dist/esm/{framework-delegate-CW5_kWfc.js → framework-delegate-99Ms_INy.js} +4 -2
  651. package/dist/esm/{haptic-ES_sSPLn.js → haptic-Cq4UAeka.js} +1 -1
  652. package/dist/esm/{helpers-p94IkmEA.js → helpers-B_F2b1gy.js} +86 -8
  653. package/dist/esm/{index-CK8uF0iB.js → index-BRYliuA-.js} +1 -1
  654. package/dist/esm/{index-CBkVO5D0.js → index-BeR_5uou.js} +2 -2
  655. package/dist/esm/{index-BvabGprD.js → index-BkJpfpXI.js} +2 -1
  656. package/dist/esm/{index-DLDbwWW7.js → index-BoEdvSPU.js} +4 -2
  657. package/dist/esm/{index-vgPixHgF.js → index-D5lNz-tr.js} +4 -4
  658. package/dist/esm/{index-txcXIB3P.js → index-D86Q8ZLS.js} +12 -10
  659. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  660. package/dist/esm/{index-BpRUsN_W.js → index-hR6kxzTq.js} +55 -5
  661. package/dist/esm/index.js +14 -12
  662. package/dist/esm/{input-shims-KNXj3DAv.js → input-shims-CJVi9djP.js} +7 -5
  663. package/dist/esm/{input.utils-DZY_K8Po.js → input.utils-gPgFKve4.js} +1 -1
  664. package/dist/esm/ion-accordion_2.entry.js +57 -29
  665. package/dist/esm/ion-action-sheet.entry.js +27 -22
  666. package/dist/esm/ion-alert.entry.js +34 -29
  667. package/dist/esm/ion-app_8.entry.js +455 -193
  668. package/dist/esm/ion-avatar_3.entry.js +124 -13
  669. package/dist/esm/ion-back-button.entry.js +31 -23
  670. package/dist/esm/ion-backdrop.entry.js +11 -7
  671. package/dist/esm/ion-breadcrumb_2.entry.js +42 -18
  672. package/dist/esm/ion-button_2.entry.js +61 -23
  673. package/dist/esm/ion-card_5.entry.js +57 -34
  674. package/dist/esm/ion-checkbox.entry.js +43 -17
  675. package/dist/esm/ion-chip.entry.js +51 -9
  676. package/dist/esm/ion-col_3.entry.js +56 -63
  677. package/dist/esm/ion-datetime-button.entry.js +14 -9
  678. package/dist/esm/ion-datetime.entry.js +74 -32
  679. package/dist/esm/ion-divider.entry.js +50 -0
  680. package/dist/esm/ion-fab_3.entry.js +40 -28
  681. package/dist/esm/ion-gallery-item.entry.js +57 -0
  682. package/dist/esm/ion-gallery.entry.js +606 -0
  683. package/dist/esm/ion-img.entry.js +9 -4
  684. package/dist/esm/ion-infinite-scroll_2.entry.js +91 -16
  685. package/dist/esm/ion-input-otp.entry.js +75 -10
  686. package/dist/esm/ion-input-password-toggle.entry.js +42 -14
  687. package/dist/esm/ion-input.entry.js +147 -38
  688. package/dist/esm/ion-item-option_3.entry.js +466 -52
  689. package/dist/esm/ion-item_8.entry.js +118 -51
  690. package/dist/esm/ion-loading.entry.js +22 -17
  691. package/dist/esm/ion-menu_3.entry.js +45 -27
  692. package/dist/esm/ion-modal.entry.js +237 -88
  693. package/dist/esm/ion-nav_2.entry.js +14 -10
  694. package/dist/esm/ion-picker-column-option.entry.js +13 -8
  695. package/dist/esm/ion-picker-column.entry.js +14 -12
  696. package/dist/esm/ion-picker.entry.js +11 -6
  697. package/dist/esm/ion-popover.entry.js +23 -18
  698. package/dist/esm/ion-progress-bar.entry.js +28 -9
  699. package/dist/esm/ion-radio_2.entry.js +37 -18
  700. package/dist/esm/ion-range.entry.js +21 -13
  701. package/dist/esm/ion-refresher_2.entry.js +45 -20
  702. package/dist/esm/ion-reorder_2.entry.js +31 -13
  703. package/dist/esm/ion-ripple-effect.entry.js +16 -7
  704. package/dist/esm/ion-route_4.entry.js +12 -10
  705. package/dist/esm/ion-searchbar.entry.js +118 -32
  706. package/dist/esm/ion-segment-content.entry.js +2 -2
  707. package/dist/esm/ion-segment-view.entry.js +13 -3
  708. package/dist/esm/ion-segment_2.entry.js +24 -16
  709. package/dist/esm/ion-select-modal.entry.js +53 -24
  710. package/dist/esm/ion-select_3.entry.js +198 -76
  711. package/dist/esm/ion-spinner.entry.js +31 -8
  712. package/dist/esm/ion-split-pane.entry.js +14 -9
  713. package/dist/esm/ion-tab-bar_2.entry.js +149 -26
  714. package/dist/esm/ion-tab_2.entry.js +9 -7
  715. package/dist/esm/ion-text.entry.js +8 -7
  716. package/dist/esm/ion-textarea.entry.js +178 -41
  717. package/dist/esm/ion-toast.entry.js +48 -19
  718. package/dist/esm/ion-toggle.entry.js +67 -25
  719. package/dist/esm/ionic-global-DSbFWXp3.js +540 -0
  720. package/dist/esm/ionic.js +6 -5
  721. package/dist/esm/{ios.transition-CW92wRDL.js → ios.transition-C9thfQYf.js} +7 -4
  722. package/dist/esm/{item-multiple-inputs-Bd2LO7qK.js → item-multiple-inputs-CSJsB7-I.js} +1 -1
  723. package/dist/esm/{keyboard-BumguZrM.js → keyboard-Cj8mLJeq.js} +3 -5
  724. package/dist/esm/{keyboard-CutS8BPd.js → keyboard-DAF8GNJ9.js} +1 -1
  725. package/dist/esm/loader.js +6 -5
  726. package/dist/esm/{md.transition-yhfkYX1P.js → md.transition-BEhPsy_z.js} +6 -4
  727. package/dist/esm/{overlay-control-label-BSQPZ79H.js → overlay-control-label-CODBQrPj.js} +13 -11
  728. package/dist/esm/{overlays-BBgMM61s.js → overlays-C8sf7PId.js} +307 -164
  729. package/dist/esm/scroll-hide-controller-Chts2wJU.js +342 -0
  730. package/dist/esm/{select-option-render-BSDT9oSA.js → select-option-render-D5kt0cO9.js} +2 -2
  731. package/dist/esm/{slot-mutation-controller-uKdPbY9K.js → slot-mutation-controller-DanfZTCH.js} +97 -10
  732. package/dist/esm/{status-tap-BskkGI4e.js → status-tap-B8UQS38n.js} +5 -3
  733. package/dist/esm/{swipe-back-BZdyM2Q-.js → swipe-back-Bgftkxen.js} +4 -2
  734. package/dist/esm/{theme-byZM6qHV.js → theme-BUF_V-Kg.js} +25 -1
  735. package/dist/esm/validity-NcQUGze-.js +48 -0
  736. package/dist/html.html-data.json +2631 -150
  737. package/dist/ionic/index.esm.js +1 -1
  738. package/dist/ionic/ionic.esm.js +1 -1
  739. package/dist/ionic/p-038465e3.entry.js +4 -0
  740. package/dist/ionic/p-0743a26a.entry.js +4 -0
  741. package/dist/ionic/p-0b453760.entry.js +4 -0
  742. package/dist/ionic/p-0bd5a7c9.entry.js +4 -0
  743. package/dist/ionic/p-188a2e35.entry.js +4 -0
  744. package/dist/ionic/p-1b045882.entry.js +4 -0
  745. package/dist/ionic/p-1b769779.entry.js +4 -0
  746. package/dist/ionic/p-1d735170.entry.js +4 -0
  747. package/dist/ionic/p-1d87b153.entry.js +4 -0
  748. package/dist/ionic/p-2b1e9500.entry.js +4 -0
  749. package/dist/ionic/p-2gcJ-f11.js +4 -0
  750. package/dist/ionic/p-308f9b89.entry.js +4 -0
  751. package/dist/ionic/p-338cb1e7.entry.js +4 -0
  752. package/dist/ionic/p-3a03d05e.entry.js +4 -0
  753. package/dist/ionic/p-3a54495e.entry.js +4 -0
  754. package/dist/ionic/p-3b47fdc7.entry.js +4 -0
  755. package/dist/ionic/p-3be131ed.entry.js +4 -0
  756. package/dist/ionic/p-3ddd32cc.entry.js +4 -0
  757. package/dist/ionic/p-3f15086f.entry.js +4 -0
  758. package/dist/ionic/p-4152cb6a.entry.js +4 -0
  759. package/dist/ionic/p-41680415.entry.js +4 -0
  760. package/dist/ionic/p-49edfb46.entry.js +4 -0
  761. package/dist/ionic/p-522663a4.entry.js +4 -0
  762. package/dist/ionic/p-561cfcc1.entry.js +4 -0
  763. package/dist/ionic/p-6dc9331b.entry.js +4 -0
  764. package/dist/ionic/p-7df4dcb4.entry.js +4 -0
  765. package/dist/ionic/p-8183df6b.entry.js +4 -0
  766. package/dist/ionic/p-8231e914.entry.js +4 -0
  767. package/dist/ionic/p-82efbf09.entry.js +4 -0
  768. package/dist/ionic/p-86bf24f4.entry.js +4 -0
  769. package/dist/ionic/p-8b107444.entry.js +4 -0
  770. package/dist/ionic/p-8ecb459a.entry.js +4 -0
  771. package/dist/ionic/p-8ff4bf6c.entry.js +4 -0
  772. package/dist/ionic/p-905c8b38.entry.js +4 -0
  773. package/dist/ionic/p-9613f2c3.entry.js +4 -0
  774. package/dist/ionic/p-973f8069.entry.js +4 -0
  775. package/dist/ionic/p-9b41acf3.entry.js +4 -0
  776. package/dist/ionic/p-B36ii-hs.js +4 -0
  777. package/{components/p-LkEGRiq0.js → dist/ionic/p-B7XMQegr.js} +1 -1
  778. package/dist/ionic/p-BKwe4f9b.js +4 -0
  779. package/dist/ionic/{p-5a3UxQAh.js → p-BMPN55of.js} +1 -1
  780. package/{components/p-D5_mEbGJ.js → dist/ionic/p-BPA4-c6T.js} +1 -1
  781. package/dist/ionic/p-BUF_V-Kg.js +4 -0
  782. package/dist/ionic/p-BXRdzJMJ.js +4 -0
  783. package/dist/ionic/p-BYk20Mf5.js +4 -0
  784. package/dist/ionic/p-BfDzKnZ-.js +4 -0
  785. package/dist/ionic/p-BfUzA1cP.js +4 -0
  786. package/dist/ionic/{p-DCmOKz8e.js → p-Bjt84heL.js} +1 -1
  787. package/dist/ionic/p-BkJpfpXI.js +4 -0
  788. package/{components/p-CdrNHfZl.js → dist/ionic/p-BtccSO5J.js} +1 -1
  789. package/dist/ionic/p-C3TLUO-J.js +4 -0
  790. package/dist/ionic/p-C4WiowQL.js +4 -0
  791. package/dist/ionic/p-CIGNaXM1.js +4 -0
  792. package/dist/ionic/p-CODBQrPj.js +4 -0
  793. package/dist/ionic/p-CXkgZKSx.js +4 -0
  794. package/dist/ionic/{p-DxftXYZp.js → p-CeHcVwSj.js} +1 -1
  795. package/dist/ionic/p-Co3ilg7B.js +4 -0
  796. package/dist/ionic/p-D5t_-oMk.js +4 -0
  797. package/dist/ionic/p-D7LiFzrm.js +4 -0
  798. package/dist/ionic/p-DOdxt_P_.js +4 -0
  799. package/dist/ionic/p-DRbid4Vh.js +4 -0
  800. package/dist/ionic/p-DsBidY1y.js +4 -0
  801. package/dist/ionic/{p-Cf6KtUnA.js → p-DuxayXEj.js} +1 -1
  802. package/dist/ionic/p-DxPRC9Jk.js +4 -0
  803. package/dist/ionic/p-Hb0L-KUN.js +4 -0
  804. package/dist/ionic/p-NcQUGze-.js +4 -0
  805. package/dist/ionic/{p-BBZQUbCq.js → p-T71k3C35.js} +1 -1
  806. package/dist/ionic/p-WdouEyt8.js +4 -0
  807. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  808. package/dist/ionic/p-a1555032.entry.js +4 -0
  809. package/dist/ionic/p-a4299509.entry.js +4 -0
  810. package/dist/ionic/p-a52cba2f.entry.js +4 -0
  811. package/dist/ionic/p-ad46d2fd.entry.js +4 -0
  812. package/dist/ionic/p-b076511a.entry.js +4 -0
  813. package/dist/ionic/p-b1cd18f0.entry.js +4 -0
  814. package/dist/ionic/p-b30b468d.entry.js +4 -0
  815. package/dist/ionic/p-b4de840a.entry.js +4 -0
  816. package/dist/ionic/p-b6e633f5.entry.js +4 -0
  817. package/dist/ionic/p-bf40b9eb.entry.js +4 -0
  818. package/dist/ionic/p-c1fc48c7.entry.js +4 -0
  819. package/dist/ionic/p-ce8bea16.entry.js +4 -0
  820. package/dist/ionic/p-dbf53341.entry.js +4 -0
  821. package/dist/ionic/p-de0de6a6.entry.js +4 -0
  822. package/dist/ionic/p-e715a580.entry.js +4 -0
  823. package/dist/ionic/p-f10a94a8.entry.js +4 -0
  824. package/dist/ionic/p-f3057b31.entry.js +4 -0
  825. package/dist/ionic/p-fa74dd94.entry.js +4 -0
  826. package/dist/ionic/p-fd00e28d.entry.js +4 -0
  827. package/dist/ionic/p-hR6kxzTq.js +6 -0
  828. package/dist/ionic/p-pVSZ4TVa.js +4 -0
  829. package/dist/ionic/{p-DfvWlTdB.js → p-rwBGNQHN.js} +1 -1
  830. package/dist/types/components/accordion/accordion.d.ts +12 -3
  831. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  832. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  833. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  834. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  835. package/dist/types/components/alert/alert.d.ts +3 -2
  836. package/dist/types/components/app/app.d.ts +4 -5
  837. package/dist/types/components/avatar/avatar.d.ts +32 -0
  838. package/dist/types/components/back-button/back-button.d.ts +10 -3
  839. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  840. package/dist/types/components/badge/badge.d.ts +34 -1
  841. package/dist/types/components/breadcrumb/breadcrumb.d.ts +14 -1
  842. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  843. package/dist/types/components/button/button.d.ts +23 -8
  844. package/dist/types/components/buttons/buttons.d.ts +5 -1
  845. package/dist/types/components/card/card.d.ts +8 -1
  846. package/dist/types/components/card-content/card-content.d.ts +2 -1
  847. package/dist/types/components/card-header/card-header.d.ts +3 -2
  848. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  849. package/dist/types/components/card-title/card-title.d.ts +2 -1
  850. package/dist/types/components/checkbox/checkbox.d.ts +26 -5
  851. package/dist/types/components/chip/chip.d.ts +26 -1
  852. package/dist/types/components/col/col.d.ts +52 -6
  853. package/dist/types/components/content/content.d.ts +3 -0
  854. package/dist/types/components/datetime/datetime.d.ts +26 -1
  855. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  856. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  857. package/dist/types/components/divider/divider.d.ts +20 -0
  858. package/dist/types/components/fab/fab.d.ts +4 -0
  859. package/dist/types/components/fab-button/fab-button.d.ts +11 -3
  860. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  861. package/dist/types/components/footer/footer-interface.d.ts +1 -0
  862. package/dist/types/components/footer/footer.d.ts +20 -3
  863. package/dist/types/components/gallery/gallery-constants.d.ts +9 -0
  864. package/dist/types/components/gallery/gallery-interface.d.ts +10 -0
  865. package/dist/types/components/gallery/gallery.d.ts +218 -0
  866. package/dist/types/components/gallery/test/utils.d.ts +3 -0
  867. package/dist/types/components/gallery-item/gallery-item.d.ts +33 -0
  868. package/dist/types/components/grid/grid.d.ts +4 -0
  869. package/dist/types/components/header/header-interface.d.ts +1 -0
  870. package/dist/types/components/header/header.d.ts +26 -3
  871. package/dist/types/components/header/header.utils.d.ts +4 -5
  872. package/dist/types/components/img/img.d.ts +2 -0
  873. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  874. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  875. package/dist/types/components/input/input.d.ts +45 -5
  876. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  877. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +14 -0
  878. package/dist/types/components/item/item.d.ts +17 -4
  879. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  880. package/dist/types/components/item-group/item-group.d.ts +4 -0
  881. package/dist/types/components/item-option/item-option.d.ts +18 -1
  882. package/dist/types/components/item-options/item-options.d.ts +4 -0
  883. package/dist/types/components/item-sliding/item-sliding.d.ts +47 -1
  884. package/dist/types/components/item-sliding/test/test.utils.d.ts +13 -0
  885. package/dist/types/components/label/label.d.ts +2 -1
  886. package/dist/types/components/list/list.d.ts +15 -1
  887. package/dist/types/components/list-header/list-header.d.ts +2 -1
  888. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  889. package/dist/types/components/loading/loading.d.ts +3 -2
  890. package/dist/types/components/menu/menu.d.ts +3 -0
  891. package/dist/types/components/menu-button/menu-button.d.ts +8 -1
  892. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  893. package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
  894. package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
  895. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  896. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  897. package/dist/types/components/modal/modal.d.ts +11 -1
  898. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  899. package/dist/types/components/nav/nav.d.ts +5 -1
  900. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  901. package/dist/types/components/note/note.d.ts +2 -1
  902. package/dist/types/components/picker/picker.d.ts +2 -1
  903. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  904. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  905. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  906. package/dist/types/components/popover/popover.d.ts +6 -5
  907. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  908. package/dist/types/components/radio/radio.d.ts +2 -1
  909. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  910. package/dist/types/components/range/range.d.ts +2 -1
  911. package/dist/types/components/refresher/refresher.d.ts +2 -1
  912. package/dist/types/components/refresher-content/refresher-content.d.ts +10 -0
  913. package/dist/types/components/reorder/reorder.d.ts +9 -0
  914. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  915. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  916. package/dist/types/components/route/route.d.ts +4 -0
  917. package/dist/types/components/router/router.d.ts +4 -0
  918. package/dist/types/components/router-link/router-link.d.ts +4 -0
  919. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  920. package/dist/types/components/row/row.d.ts +4 -0
  921. package/dist/types/components/searchbar/searchbar.d.ts +56 -10
  922. package/dist/types/components/segment/segment.d.ts +2 -1
  923. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  924. package/dist/types/components/select/select.d.ts +59 -15
  925. package/dist/types/components/select-modal/select-modal.d.ts +13 -0
  926. package/dist/types/components/select-option/select-option.d.ts +7 -4
  927. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  928. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  929. package/dist/types/components/spinner/spinner.d.ts +15 -0
  930. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  931. package/dist/types/components/tab/tab.d.ts +4 -0
  932. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +1 -0
  933. package/dist/types/components/tab-bar/tab-bar.d.ts +41 -3
  934. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  935. package/dist/types/components/tabs/tabs.d.ts +3 -0
  936. package/dist/types/components/text/text.d.ts +2 -1
  937. package/dist/types/components/textarea/textarea.d.ts +75 -17
  938. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  939. package/dist/types/components/title/title.d.ts +4 -0
  940. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  941. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  942. package/dist/types/components/toast/toast.d.ts +19 -2
  943. package/dist/types/components/toggle/toggle.d.ts +18 -1
  944. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  945. package/dist/types/components.d.ts +1839 -211
  946. package/dist/types/global/ionic-global.d.ts +28 -2
  947. package/dist/types/interface.d.ts +3 -0
  948. package/dist/types/utils/config.d.ts +128 -4
  949. package/dist/types/utils/css-value-validation.d.ts +21 -0
  950. package/dist/types/utils/focus-trap.d.ts +1 -1
  951. package/dist/types/utils/focus-visible.d.ts +33 -0
  952. package/dist/types/utils/forms/clear-button-press-controller.d.ts +20 -0
  953. package/dist/types/utils/forms/click-controller.d.ts +16 -5
  954. package/dist/types/utils/forms/index.d.ts +1 -0
  955. package/dist/types/utils/forms/validity.d.ts +7 -0
  956. package/dist/types/utils/helpers.d.ts +29 -0
  957. package/dist/types/utils/overlay-control-label.d.ts +11 -9
  958. package/dist/types/utils/overlays-interface.d.ts +31 -1
  959. package/dist/types/utils/overlays.d.ts +1 -1
  960. package/dist/types/utils/scroll-hide-controller.d.ts +56 -0
  961. package/dist/types/utils/test/playwright/drag-element.d.ts +16 -3
  962. package/dist/types/utils/test/playwright/field-geometry.d.ts +13 -0
  963. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  964. package/dist/types/utils/test/playwright/index.d.ts +1 -0
  965. package/dist/types/utils/theme.d.ts +9 -0
  966. package/hydrate/index.js +5465 -1248
  967. package/hydrate/index.mjs +5465 -1248
  968. package/package.json +10 -4
  969. package/components/p-3avHDbEF.js +0 -4
  970. package/components/p-7KepMw9O.js +0 -4
  971. package/components/p-7NbIvzb4.js +0 -4
  972. package/components/p-B3dSuofL.js +0 -4
  973. package/components/p-BBsseItU.js +0 -4
  974. package/components/p-BMHdI-wb.js +0 -4
  975. package/components/p-BSQPZ79H.js +0 -4
  976. package/components/p-BT2InaHz.js +0 -4
  977. package/components/p-BZ1k9WL7.js +0 -4
  978. package/components/p-BhamHSw3.js +0 -4
  979. package/components/p-BmVRXR1y.js +0 -4
  980. package/components/p-BrrMFd9K.js +0 -4
  981. package/components/p-C-SO5kIs.js +0 -4
  982. package/components/p-C0TdbIVo.js +0 -4
  983. package/components/p-C6Y0cCH_.js +0 -4
  984. package/components/p-C8BAigo3.js +0 -4
  985. package/components/p-CRb2xRCz.js +0 -4
  986. package/components/p-CUQjkOdi.js +0 -4
  987. package/components/p-CW84OFQa.js +0 -4
  988. package/components/p-CjPRDxby.js +0 -4
  989. package/components/p-CohRJRIu.js +0 -4
  990. package/components/p-Ct2aBEue.js +0 -4
  991. package/components/p-CvyvLbPe.js +0 -4
  992. package/components/p-D8FyR2IB.js +0 -4
  993. package/components/p-DJztqcrH.js +0 -4
  994. package/components/p-DLEJ61lJ.js +0 -4
  995. package/components/p-DRm4t-by.js +0 -4
  996. package/components/p-DTGCMApY.js +0 -4
  997. package/components/p-D_U0pDe5.js +0 -4
  998. package/components/p-DaW9OZ6S.js +0 -4
  999. package/components/p-Dah8BCNg.js +0 -4
  1000. package/components/p-DaojW_d_.js +0 -4
  1001. package/components/p-DnBabjgY.js +0 -4
  1002. package/components/p-Ds5vN3iu.js +0 -4
  1003. package/components/p-DwTzX8Vi.js +0 -4
  1004. package/components/p-Dy7x-KDF.js +0 -4
  1005. package/components/p-HthJZjZ6.js +0 -4
  1006. package/components/p-KbMCbGRA.js +0 -4
  1007. package/components/p-LpMHEu3v.js +0 -4
  1008. package/components/p-PkD1iLNN.js +0 -4
  1009. package/components/p-R4UxBukQ.js +0 -4
  1010. package/components/p-RhI78AKb.js +0 -4
  1011. package/components/p-byZM6qHV.js +0 -4
  1012. package/components/p-hLu-eIbb.js +0 -4
  1013. package/components/p-kKGBuIkf.js +0 -4
  1014. package/components/p-z-EWo6r-.js +0 -4
  1015. package/dist/cjs/focus-visible-CCvKiLh3.js +0 -77
  1016. package/dist/cjs/ionic-global-48ceLiJ6.js +0 -156
  1017. package/dist/cjs/keyboard-controller-DZE97OtR.js +0 -167
  1018. package/dist/cjs/validity-BpS37YFM.js +0 -19
  1019. package/dist/esm/focus-visible-BmVRXR1y.js +0 -75
  1020. package/dist/esm/ionic-global-Cep6oYzK.js +0 -151
  1021. package/dist/esm/keyboard-controller-DqohyEsZ.js +0 -165
  1022. package/dist/esm/validity-DJztqcrH.js +0 -17
  1023. package/dist/ionic/p-00cd107d.entry.js +0 -4
  1024. package/dist/ionic/p-013b9aba.entry.js +0 -4
  1025. package/dist/ionic/p-014c3633.entry.js +0 -4
  1026. package/dist/ionic/p-0562139b.entry.js +0 -4
  1027. package/dist/ionic/p-0a789930.entry.js +0 -4
  1028. package/dist/ionic/p-0f1613f2.entry.js +0 -4
  1029. package/dist/ionic/p-1252621e.entry.js +0 -4
  1030. package/dist/ionic/p-129f7b95.entry.js +0 -4
  1031. package/dist/ionic/p-16de8fd9.entry.js +0 -4
  1032. package/dist/ionic/p-1bb1be7e.entry.js +0 -4
  1033. package/dist/ionic/p-1f342c2d.entry.js +0 -4
  1034. package/dist/ionic/p-1ffa5577.entry.js +0 -4
  1035. package/dist/ionic/p-210f906e.entry.js +0 -4
  1036. package/dist/ionic/p-27960f65.entry.js +0 -4
  1037. package/dist/ionic/p-3c6fc2e8.entry.js +0 -4
  1038. package/dist/ionic/p-436d4ac8.entry.js +0 -4
  1039. package/dist/ionic/p-43729675.entry.js +0 -4
  1040. package/dist/ionic/p-4468e439.entry.js +0 -4
  1041. package/dist/ionic/p-4e4e5919.entry.js +0 -4
  1042. package/dist/ionic/p-51af4728.entry.js +0 -4
  1043. package/dist/ionic/p-59e4b521.entry.js +0 -4
  1044. package/dist/ionic/p-5b47b8d5.entry.js +0 -4
  1045. package/dist/ionic/p-5dcddfd5.entry.js +0 -4
  1046. package/dist/ionic/p-694f3e78.entry.js +0 -4
  1047. package/dist/ionic/p-76c189e7.entry.js +0 -4
  1048. package/dist/ionic/p-77252596.entry.js +0 -4
  1049. package/dist/ionic/p-77540bcb.entry.js +0 -4
  1050. package/dist/ionic/p-77e7b612.entry.js +0 -4
  1051. package/dist/ionic/p-7868eb92.entry.js +0 -4
  1052. package/dist/ionic/p-800ce1e0.entry.js +0 -4
  1053. package/dist/ionic/p-84470714.entry.js +0 -4
  1054. package/dist/ionic/p-87fb6d59.entry.js +0 -4
  1055. package/dist/ionic/p-8B39TMv-.js +0 -4
  1056. package/dist/ionic/p-8af85fa8.entry.js +0 -4
  1057. package/dist/ionic/p-8c85e250.entry.js +0 -4
  1058. package/dist/ionic/p-8dQB1sG_.js +0 -4
  1059. package/dist/ionic/p-9515f840.entry.js +0 -4
  1060. package/dist/ionic/p-96d040b0.entry.js +0 -4
  1061. package/dist/ionic/p-9d7e5a0b.entry.js +0 -4
  1062. package/dist/ionic/p-B0afqOUt.js +0 -4
  1063. package/dist/ionic/p-B2JD8_LP.js +0 -4
  1064. package/dist/ionic/p-B2y1T0dN.js +0 -4
  1065. package/dist/ionic/p-BHBb21Hp.js +0 -4
  1066. package/dist/ionic/p-BSQPZ79H.js +0 -4
  1067. package/dist/ionic/p-BexAj0yw.js +0 -4
  1068. package/dist/ionic/p-BgkRGRO3.js +0 -4
  1069. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1070. package/dist/ionic/p-BpRUsN_W.js +0 -6
  1071. package/dist/ionic/p-BvabGprD.js +0 -4
  1072. package/dist/ionic/p-C4SpVvhx.js +0 -4
  1073. package/dist/ionic/p-CNdt1FPc.js +0 -4
  1074. package/dist/ionic/p-CfccUand.js +0 -4
  1075. package/dist/ionic/p-DArnNWiu.js +0 -4
  1076. package/dist/ionic/p-DBFcFCH5.js +0 -4
  1077. package/dist/ionic/p-DFPZa_No.js +0 -4
  1078. package/dist/ionic/p-DJztqcrH.js +0 -4
  1079. package/dist/ionic/p-DYKDWM2f.js +0 -4
  1080. package/dist/ionic/p-DriE1ZAo.js +0 -4
  1081. package/dist/ionic/p-DzQk7Lu8.js +0 -4
  1082. package/dist/ionic/p-SEecsUh7.js +0 -4
  1083. package/dist/ionic/p-a45caa30.entry.js +0 -4
  1084. package/dist/ionic/p-af15fc5d.entry.js +0 -4
  1085. package/dist/ionic/p-af4b4719.entry.js +0 -4
  1086. package/dist/ionic/p-b0faaae2.entry.js +0 -4
  1087. package/dist/ionic/p-b3aadfe8.entry.js +0 -4
  1088. package/dist/ionic/p-b5bcbbc1.entry.js +0 -4
  1089. package/dist/ionic/p-byZM6qHV.js +0 -4
  1090. package/dist/ionic/p-c293f854.entry.js +0 -4
  1091. package/dist/ionic/p-c56c23b6.entry.js +0 -4
  1092. package/dist/ionic/p-c7ea2647.entry.js +0 -4
  1093. package/dist/ionic/p-c8c77f7b.entry.js +0 -4
  1094. package/dist/ionic/p-cbc73380.entry.js +0 -4
  1095. package/dist/ionic/p-d58e9da3.entry.js +0 -4
  1096. package/dist/ionic/p-e1haAYzm.js +0 -4
  1097. package/dist/ionic/p-ec08a7e6.entry.js +0 -4
  1098. package/dist/ionic/p-f37e6ed2.entry.js +0 -4
  1099. package/dist/ionic/p-f6a1ab48.entry.js +0 -4
  1100. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -0,0 +1,976 @@
1
+ /**
2
+ * A heuristic that applies CSS to tablet
3
+ * viewports.
4
+ *
5
+ * Usage:
6
+ * @include tablet-viewport() {
7
+ * :host {
8
+ * background-color: green;
9
+ * }
10
+ * }
11
+ */
12
+ /**
13
+ * A heuristic that applies CSS to mobile
14
+ * viewports (i.e. phones, not tablets).
15
+ *
16
+ * Usage:
17
+ * @include mobile-viewport() {
18
+ * :host {
19
+ * background-color: blue;
20
+ * }
21
+ * }
22
+ */
23
+ /**
24
+ * Convert a pixels given value into rem
25
+ *
26
+ * @param pixels - Value in pixels to be converted (i.e. px)
27
+ * @param context (optional) - Baseline value
28
+ */
29
+ /**
30
+ * Convert a font size to a dynamic font size.
31
+ * Fonts that participate in Dynamic Type should use
32
+ * dynamic font sizes.
33
+ * @param size - The initial font size including the unit (i.e. px or pt)
34
+ * @param unit (optional) - The unit to convert to. Use this if you want to
35
+ * convert to a unit other than $baselineUnit.
36
+ */
37
+ /**
38
+ * Convert a font size to a dynamic font size but impose
39
+ * a maximum font size.
40
+ * @param size - The initial font size including the unit (i.e. px or pt)
41
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
42
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
43
+ * convert to a unit other than $baselineUnit.
44
+ */
45
+ /**
46
+ * Convert a font size to a dynamic font size but impose
47
+ * a minimum font size.
48
+ * @param size - The initial font size including the unit (i.e. px or pt)
49
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
50
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
51
+ * convert to a unit other than $baselineUnit.
52
+ */
53
+ /**
54
+ * Convert a font size to a dynamic font size but impose
55
+ * maximum and minimum font sizes.
56
+ * @param size - The initial font size including the unit (i.e. px or pt)
57
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
58
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
59
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
60
+ * convert to a unit other than $baselineUnit.
61
+ */
62
+ :host {
63
+ /**
64
+ * @prop --background: Background of the select
65
+ * @prop --padding-top: Top padding of the select
66
+ * @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the select
67
+ * @prop --padding-bottom: Bottom padding of the select
68
+ * @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the select
69
+ *
70
+ * @prop --placeholder-color: Color of the select placeholder text
71
+ * @prop --placeholder-opacity: Opacity of the select placeholder text
72
+ *
73
+ * @prop --highlight-height: The height of the highlight on the select. Only applies to md mode.
74
+ * @prop --highlight-color-focused: The color of the highlight on the select when focused
75
+ * @prop --highlight-color-invalid: The color of the highlight on the select when invalid
76
+ * @prop --highlight-color-valid: The color of the highlight on the select when valid
77
+ *
78
+ * @prop --border-color: Color of the select border
79
+ * @prop --border-radius: Radius of the select border. A large radius may display unevenly when using fill="outline"; if needed, use shape="round" instead or increase --padding-start.
80
+ * @prop --border-style: Style of the select border
81
+ * @prop --border-width: Width of the select border
82
+ *
83
+ * @prop --ripple-color: The color of the ripple effect on MD mode.
84
+ *
85
+ * @prop --select-text-media-width: The width of media (icons/images) in the select text.
86
+ * @prop --select-text-media-height: The height of media (icons/images) in the select text.
87
+ * @prop --select-text-media-border-width: The border width of media (icons/images) in the select text.
88
+ * @prop --select-text-media-border-color: The border color of media (icons/images) in the select text.
89
+ * @prop --select-text-media-border-radius: The border radius of media (icons/images) in the select text.
90
+ * @prop --select-text-media-border-style: The border style of media (icons/images) in the select text.
91
+ * @prop --select-text-gap: The gap between elements in the select text.
92
+ */
93
+ --padding-top: 0px;
94
+ --padding-end: 0px;
95
+ --padding-bottom: 0px;
96
+ --padding-start: 0px;
97
+ --placeholder-color: currentColor;
98
+ --background: transparent;
99
+ --border-style: solid;
100
+ --highlight-color-focused: ion-color(primary, base);
101
+ --highlight-color-valid: ion-color(success, base);
102
+ --highlight-color-invalid: ion-color(danger, base);
103
+ --select-text-media-height: 1.5em;
104
+ --select-text-media-width: 1.5em;
105
+ --select-text-gap: 12px;
106
+ /**
107
+ * This is a private API that is used to switch
108
+ * out the highlight color based on the state
109
+ * of the component without having to write
110
+ * different selectors for different fill variants.
111
+ */
112
+ --highlight-color: var(--highlight-color-focused);
113
+ display: block;
114
+ position: relative;
115
+ width: 100%;
116
+ white-space: nowrap;
117
+ cursor: pointer;
118
+ }
119
+
120
+ :host(.ion-color) {
121
+ --highlight-color-focused: current-color(base);
122
+ }
123
+
124
+ :host(.in-item) {
125
+ flex: 1 1 0;
126
+ }
127
+
128
+ :host(.select-disabled) {
129
+ pointer-events: none;
130
+ }
131
+
132
+ /**
133
+ * Select can be slotted
134
+ * in components such as item and
135
+ * toolbar which is why we do not
136
+ * limit the below behavior to just ion-item.
137
+ */
138
+ :host([slot=start]),
139
+ :host([slot=end]) {
140
+ flex: initial;
141
+ width: auto;
142
+ }
143
+
144
+ .select-placeholder {
145
+ color: var(--placeholder-color);
146
+ opacity: var(--placeholder-opacity);
147
+ }
148
+
149
+ button {
150
+ position: absolute;
151
+ top: 0;
152
+ right: 0;
153
+ bottom: 0;
154
+ left: 0;
155
+ width: 100%;
156
+ height: 100%;
157
+ margin: 0;
158
+ padding: 0;
159
+ border: 0;
160
+ outline: 0;
161
+ opacity: 0;
162
+ overflow: hidden;
163
+ clip: rect(0 0 0 0);
164
+ -webkit-appearance: none;
165
+ -moz-appearance: none;
166
+ }
167
+
168
+ .select-icon {
169
+ /**
170
+ * Prevent the icon from shrinking when the label and/or
171
+ * selected item text is long enough to fill the rest of
172
+ * the container.
173
+ */
174
+ flex-shrink: 0;
175
+ }
176
+
177
+ /**
178
+ * Ensure that the select icon has
179
+ * the correct color contrast when
180
+ * used inside of an item.
181
+ */
182
+ :host(.in-item-color) .select-icon {
183
+ color: inherit;
184
+ }
185
+
186
+ .select-text {
187
+ flex: 1;
188
+ font-size: inherit;
189
+ text-overflow: ellipsis;
190
+ white-space: inherit;
191
+ overflow: hidden;
192
+ }
193
+
194
+ /**
195
+ * If the select text contains rich content, we want to add some
196
+ * spacing between the elements without changing the display to
197
+ * prevent losing the ellipses behavior.
198
+ */
199
+ .select-text > * + * {
200
+ margin-inline-start: var(--select-text-gap);
201
+ }
202
+
203
+ .select-text img,
204
+ .select-text ion-img,
205
+ .select-text ion-icon,
206
+ .select-text ion-thumbnail,
207
+ .select-text ion-avatar {
208
+ border-radius: var(--select-text-media-border-radius);
209
+ width: var(--select-text-media-width);
210
+ height: var(--select-text-media-height);
211
+ border-width: var(--select-text-media-border-width);
212
+ border-style: var(--select-text-media-border-style);
213
+ border-color: var(--select-text-media-border-color);
214
+ }
215
+
216
+ .select-wrapper {
217
+ display: flex;
218
+ position: relative;
219
+ flex-grow: 1;
220
+ align-items: stretch;
221
+ justify-content: space-between;
222
+ height: inherit;
223
+ /**
224
+ * This allows developers to set the height
225
+ * on the host of the element but still have
226
+ * the label take up the full height
227
+ * of the parent.
228
+ */
229
+ min-height: inherit;
230
+ transition: background-color 15ms linear;
231
+ background: var(--background);
232
+ line-height: normal;
233
+ cursor: inherit;
234
+ box-sizing: border-box;
235
+ }
236
+
237
+ .select-wrapper .select-placeholder {
238
+ /**
239
+ * When the floating label appears on top of the
240
+ * select, we need to fade the text out so that the
241
+ * label does not overlap with the placeholder.
242
+ */
243
+ transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
244
+ }
245
+
246
+ /**
247
+ * The control must inherit specific flex properties
248
+ * so that it will be placed properly when justify
249
+ * or label-placement are set on the host.
250
+ */
251
+ .select-control {
252
+ display: flex;
253
+ flex: 1;
254
+ flex-direction: inherit;
255
+ align-items: center;
256
+ justify-content: inherit;
257
+ /**
258
+ * The min-width is set to 0 to allow flex items to shrink below
259
+ * their content size. This enables the select text to collapse
260
+ * in width. We avoid overflow: hidden here because it will clip
261
+ * the floating label.
262
+ */
263
+ min-width: 0;
264
+ }
265
+
266
+ :host(.ion-touched.ion-invalid) {
267
+ --highlight-color: var(--highlight-color-invalid);
268
+ }
269
+
270
+ /**
271
+ * The component highlight is only shown
272
+ * on focus, so we can safely set the valid
273
+ * color state when touched/valid. If we
274
+ * set it when .has-focus is present then
275
+ * the highlight color would change
276
+ * from the valid color to the component's
277
+ * color during the transition after the
278
+ * component loses focus.
279
+ */
280
+ :host(.ion-valid) {
281
+ --highlight-color: var(--highlight-color-valid);
282
+ }
283
+
284
+ .select-bottom {
285
+ display: flex;
286
+ justify-content: space-between;
287
+ border-top: var(--border-width) var(--border-style) var(--border-color);
288
+ white-space: normal;
289
+ }
290
+
291
+ /**
292
+ * If the select has a validity state, the
293
+ * border and label should reflect that as a color.
294
+ * The invalid state should show if the select is
295
+ * invalid and has already been touched.
296
+ * The valid state should show if the select
297
+ * is valid, has already been touched, and
298
+ * is currently focused. Do not show the valid
299
+ * highlight when the select is blurred.
300
+ */
301
+ :host(.has-focus.ion-valid),
302
+ :host(.select-expanded.ion-valid),
303
+ :host(.ion-touched.ion-invalid),
304
+ :host(.select-expanded.ion-touched.ion-invalid) {
305
+ --border-color: var(--highlight-color);
306
+ }
307
+
308
+ /**
309
+ * Error text should only be shown when .ion-invalid is
310
+ * present on the select. Otherwise the helper text should
311
+ * be shown.
312
+ */
313
+ .select-bottom .error-text {
314
+ display: none;
315
+ color: var(--highlight-color-invalid);
316
+ }
317
+
318
+ .select-bottom .helper-text {
319
+ display: block;
320
+ }
321
+
322
+ :host(.ion-touched.ion-invalid) .select-bottom .error-text {
323
+ display: block;
324
+ }
325
+
326
+ :host(.ion-touched.ion-invalid) .select-bottom .helper-text {
327
+ display: none;
328
+ }
329
+
330
+ .label-text-wrapper {
331
+ /**
332
+ * This causes the label to take up
333
+ * the entire height of its container
334
+ * while still keeping the text centered.
335
+ */
336
+ display: flex;
337
+ align-items: center;
338
+ /**
339
+ * Label text should not extend
340
+ * beyond the bounds of the select.
341
+ * However, we do not set the max
342
+ * width to 100% because then
343
+ * only the label would show and users
344
+ * would not be able to see what they are typing.
345
+ */
346
+ max-width: 200px;
347
+ /**
348
+ * The max-width animates with the transform so the label does not
349
+ * reveal its full floating width while it is still at full size.
350
+ */
351
+ transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), max-width 150ms cubic-bezier(0.4, 0, 0.2, 1);
352
+ /**
353
+ * This ensures that double tapping this text
354
+ * clicks the <label> and focuses the input
355
+ * when a screen reader is enabled.
356
+ */
357
+ pointer-events: none;
358
+ }
359
+
360
+ /**
361
+ * When start/end slots are added or removed, we temporarily
362
+ * disable the label transition to prevent the floating label
363
+ * from animating as its position is adjusted.
364
+ *
365
+ * This class is applied by the start and end container controller,
366
+ * so renaming it here requires renaming it there too.
367
+ */
368
+ :host(.skip-label-transition) .label-text-wrapper {
369
+ transition: none;
370
+ }
371
+
372
+ /**
373
+ * We need to use two elements instead of
374
+ * one. The .label-text-wrapper is responsible
375
+ * for centering the label text vertically regardless
376
+ * of the input height using flexbox.
377
+ *
378
+ * The .label-text element is responsible for controlling
379
+ * overflow when label-placement="fixed".
380
+ * We want the ellipses to show up when the
381
+ * fixed label overflows, but text-overflow: ellipsis only
382
+ * works on block-level elements. A flex item is
383
+ * considered blockified (https://www.w3.org/TR/css-display-3/#blockify).
384
+ */
385
+ .label-text,
386
+ ::slotted([slot=label]) {
387
+ text-overflow: ellipsis;
388
+ white-space: nowrap;
389
+ overflow: hidden;
390
+ }
391
+
392
+ /**
393
+ * If no label text is placed into the slot
394
+ * then the element should be hidden otherwise
395
+ * there will be additional margins added.
396
+ */
397
+ .label-text-wrapper-hidden,
398
+ .select-outline-notch-hidden {
399
+ display: none;
400
+ }
401
+
402
+ .native-wrapper {
403
+ display: flex;
404
+ align-items: center;
405
+ /**
406
+ * This ensures that the .select-text gets
407
+ * truncated with ellipses when the text is
408
+ * too long for the screen.
409
+ */
410
+ overflow: hidden;
411
+ }
412
+
413
+ :host(.select-justify-space-between) .select-wrapper {
414
+ justify-content: space-between;
415
+ }
416
+
417
+ :host(.select-justify-start) .select-wrapper {
418
+ justify-content: start;
419
+ }
420
+
421
+ :host(.select-justify-end) .select-wrapper {
422
+ justify-content: end;
423
+ }
424
+
425
+ /**
426
+ * Label is on the left of the input in LTR and
427
+ * on the right in RTL.
428
+ */
429
+ :host(.select-label-placement-start) .select-wrapper {
430
+ flex-direction: row;
431
+ }
432
+
433
+ /**
434
+ * Label is on the right of the select in LTR and
435
+ * on the left in RTL.
436
+ */
437
+ :host(.select-label-placement-end) .select-wrapper {
438
+ flex-direction: row-reverse;
439
+ }
440
+
441
+ /**
442
+ * Stacked: Label sits above the select and is scaled down.
443
+ * Floating: Label sits over the select when the select has no
444
+ * value and is blurred. Label sits above the input and is scaled
445
+ * down when the select is focused or has a value.
446
+ *
447
+ */
448
+ :host(.select-label-placement-stacked) .select-control,
449
+ :host(.select-label-placement-floating) .select-control {
450
+ flex-direction: column;
451
+ /**
452
+ * When using a stacked/floating label, the control is
453
+ * stacked vertically under the label container. This line
454
+ * ensures that the control fills all the remaining height
455
+ * of the component.
456
+ */
457
+ flex-grow: 1;
458
+ align-items: start;
459
+ }
460
+
461
+ /**
462
+ * Ensures that the label animates
463
+ * up and to the left in LTR or
464
+ * up and to the right in RTL.
465
+ */
466
+ :host(.select-label-placement-stacked) .label-text-wrapper,
467
+ :host(.select-label-placement-floating) .label-text-wrapper {
468
+ max-width: 100%;
469
+ }
470
+
471
+ :host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,
472
+ :host(.select-ltr.select-label-placement-floating) .label-text-wrapper {
473
+ transform-origin: left top;
474
+ }
475
+
476
+ :host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,
477
+ :host(.select-rtl.select-label-placement-floating) .label-text-wrapper {
478
+ transform-origin: right top;
479
+ }
480
+
481
+ /**
482
+ * Ensures that the native wrapper takes up the
483
+ * remaining available height and width.
484
+ */
485
+ :host(.select-label-placement-stacked) .native-wrapper,
486
+ :host(.select-label-placement-floating) .native-wrapper {
487
+ flex-grow: 1;
488
+ width: 100%;
489
+ }
490
+
491
+ /**
492
+ * The placeholder should be hidden when the label
493
+ * is on top of the select. This prevents the label
494
+ * from overlapping any placeholder value.
495
+ */
496
+ :host(.select-label-placement-floating) .native-wrapper .select-placeholder {
497
+ opacity: 0;
498
+ }
499
+
500
+ /**
501
+ * Show the placeholder when the label is floating.
502
+ */
503
+ :host(.label-floating.select-label-placement-floating) .native-wrapper .select-placeholder {
504
+ opacity: var(--placeholder-opacity);
505
+ }
506
+
507
+ .select-start,
508
+ .select-end {
509
+ display: flex;
510
+ position: relative;
511
+ flex-shrink: 0;
512
+ align-items: center;
513
+ }
514
+
515
+ ::slotted([slot=start]),
516
+ ::slotted([slot=end]) {
517
+ /**
518
+ * Prevent the slots from shrinking when the label and/or
519
+ * selected item text is long enough to fill the rest of
520
+ * the container.
521
+ */
522
+ flex-shrink: 0;
523
+ }
524
+
525
+ ::slotted([slot=start]:last-of-type) {
526
+ margin-inline-start: 0;
527
+ }
528
+
529
+ ::slotted([slot=end]:first-of-type) {
530
+ margin-inline-end: 0;
531
+ }
532
+
533
+ :host(.ion-color) {
534
+ --border-color: var(--ion-color-base);
535
+ }
536
+
537
+ :host(.select-fill-outline) .select-bottom {
538
+ border-top: none;
539
+ }
540
+
541
+ :host(.select-fill-outline) .select-wrapper::before {
542
+ border: var(--border-width) var(--border-style) var(--border-color);
543
+ }
544
+
545
+ :host(.ion-focused.select-fill-outline) {
546
+ --border-color: var(--highlight-color);
547
+ }
548
+
549
+ :host(.ion-focused.select-fill-outline:not(.ion-invalid):not(.ion-valid)) {
550
+ --border-width: var(--token-border-size-050, var(--token-scale-050, 2px));
551
+ }
552
+
553
+ /**
554
+ * If the select has a validity state, the
555
+ * border should reflect that as a color.
556
+ */
557
+ :host(.has-focus.select-fill-outline.ion-valid),
558
+ :host(.select-fill-outline.ion-touched.ion-invalid) {
559
+ --border-color: var(--highlight-color);
560
+ }
561
+
562
+ :host {
563
+ --background: var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));
564
+ --border-color: var(--token-primitives-neutral-500, #9fa5ad);
565
+ --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
566
+ --padding-start: var(--token-space-400, var(--token-scale-400, 16px));
567
+ --padding-end: var(--token-space-400, var(--token-scale-400, 16px));
568
+ --padding-top: var(--token-space-300, var(--token-scale-300, 12px));
569
+ --padding-bottom: var(--token-space-300, var(--token-scale-300, 12px));
570
+ --placeholder-color: var(--token-primitives-neutral-800, #6c727a);
571
+ --placeholder-opacity: 1;
572
+ --highlight-color-focused: var(--token-border-focus-default, var(--token-semantics-primary-400, var(--token-primitives-blue-400, #b5c0f7)));
573
+ --highlight-color-valid: var(--token-semantics-success-900, var(--token-primitives-green-900, #037046));
574
+ --highlight-color-invalid: var(--token-semantics-danger-800, var(--token-primitives-red-800, #d2002b));
575
+ --select-text-gap: var(--token-space-300, var(--token-scale-300, 12px));
576
+ min-height: var(--token-scale-1100, 44px);
577
+ }
578
+
579
+ .select-bottom {
580
+ padding-top: var(--token-space-100, var(--token-scale-100, 4px));
581
+ font-family: var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");
582
+ font-size: var(--token-font-size-300, 0.75rem);
583
+ font-weight: var(--token-font-weight-medium, 500);
584
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
585
+ line-height: 1.666667;
586
+ }
587
+
588
+ .select-bottom .helper-text {
589
+ color: var(--token-primitives-neutral-800, #6c727a);
590
+ }
591
+
592
+ .select-bottom .error-text {
593
+ color: var(--token-text-danger, var(--token-semantics-danger-800, var(--token-primitives-red-800, #d2002b)));
594
+ }
595
+
596
+ .select-text {
597
+ min-width: var(--token-space-400, var(--token-scale-400, 16px));
598
+ color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a));
599
+ }
600
+
601
+ :host(.has-value) .select-text {
602
+ color: var(--token-text-default, var(--token-primitives-neutral-1200, #242528));
603
+ }
604
+
605
+ .label-text-wrapper {
606
+ font-family: var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");
607
+ font-size: var(--token-font-size-300, 0.75rem);
608
+ font-weight: var(--token-font-weight-medium, 500);
609
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
610
+ line-height: 1.666667;
611
+ /**
612
+ * Label text should not extend
613
+ * beyond the bounds of the select.
614
+ * However, we do not set the max
615
+ * width to 100% because then
616
+ * only the label would show and users
617
+ * would not be able to see what they are typing.
618
+ */
619
+ max-width: var(--token-scale-5000, 200px);
620
+ transition: color var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1)), transform var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
621
+ color: var(--token-primitives-neutral-1000, #383e45);
622
+ }
623
+
624
+ :host(.select-label-placement-start) .label-text-wrapper,
625
+ :host(.select-label-placement-fixed) .label-text-wrapper {
626
+ /**
627
+ * The margin between the label and
628
+ * the select should be on the end
629
+ * when the label sits at the start.
630
+ */
631
+ -webkit-margin-start: 0;
632
+ margin-inline-start: 0;
633
+ -webkit-margin-end: var(--token-space-100, var(--token-scale-100, 4px));
634
+ margin-inline-end: var(--token-space-100, var(--token-scale-100, 4px));
635
+ margin-top: 0;
636
+ margin-bottom: 0;
637
+ }
638
+
639
+ :host(.select-label-placement-fixed) .label-text-wrapper {
640
+ width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
641
+ min-width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
642
+ max-width: var(--token-scale-5000, 200px);
643
+ }
644
+
645
+ :host(.select-label-placement-end) .label-text-wrapper {
646
+ /**
647
+ * The margin between the label and
648
+ * the select should be on the start
649
+ * when the label sits at the end.
650
+ */
651
+ -webkit-margin-start: var(--token-space-100, var(--token-scale-100, 4px));
652
+ margin-inline-start: var(--token-space-100, var(--token-scale-100, 4px));
653
+ -webkit-margin-end: 0;
654
+ margin-inline-end: 0;
655
+ margin-top: 0;
656
+ margin-bottom: 0;
657
+ }
658
+
659
+ :host(.select-label-placement-stacked) .label-text-wrapper,
660
+ :host(.select-label-placement-floating) .label-text-wrapper {
661
+ /**
662
+ * The margin between the label and
663
+ * the select should be on the bottom
664
+ * when the label sits at the top.
665
+ */
666
+ margin-left: 0;
667
+ margin-right: 0;
668
+ margin-top: 0;
669
+ margin-bottom: var(--token-space-100, var(--token-scale-100, 4px));
670
+ }
671
+
672
+ /**
673
+ * The label is nested in the control so that every theme renders the same
674
+ * tree. Laying the wrapper out as a grid and flattening the control lets the
675
+ * label sit outside the field box, which is drawn by `::before` over the cells
676
+ * the label does not occupy.
677
+ */
678
+ .select-wrapper {
679
+ display: grid;
680
+ /**
681
+ * Only stretch grows an auto row, so centering holds the label row at its
682
+ * content height and still centers the field in any leftover host height.
683
+ */
684
+ align-content: center;
685
+ align-items: center;
686
+ min-width: var(--token-scale-5000, 200px);
687
+ background: transparent;
688
+ }
689
+
690
+ .select-control {
691
+ display: contents;
692
+ }
693
+
694
+ /**
695
+ * A pseudo-element draws the box over the field cells, so the label stays
696
+ * outside of it.
697
+ */
698
+ .select-wrapper::before {
699
+ border-radius: var(--border-radius, 0);
700
+ align-self: stretch;
701
+ box-sizing: border-box;
702
+ content: "";
703
+ pointer-events: none;
704
+ background: var(--background);
705
+ }
706
+
707
+ /**
708
+ * The field row is as tall as the size asks for, whatever the slots contain.
709
+ */
710
+ :host(.select-size-small) .select-wrapper {
711
+ --internal-field-height: var(--token-scale-1000, 40px);
712
+ }
713
+
714
+ :host(.select-size-medium) .select-wrapper {
715
+ --internal-field-height: var(--token-scale-1200, 48px);
716
+ }
717
+
718
+ :host(.select-size-large) .select-wrapper {
719
+ --internal-field-height: var(--token-scale-1400, 56px);
720
+ }
721
+
722
+ :host(.select-label-placement-start) .label-text-wrapper,
723
+ :host(.select-label-placement-fixed) .label-text-wrapper,
724
+ :host(.select-label-placement-end) .label-text-wrapper {
725
+ grid-column: label;
726
+ }
727
+
728
+ :host(.select-label-placement-stacked) .label-text-wrapper,
729
+ :host(.select-label-placement-floating) .label-text-wrapper {
730
+ grid-column: field-start/field-end;
731
+ }
732
+
733
+ /**
734
+ * The `justify-content` property cannot serve here the way it does on a flex
735
+ * row, because grid would distribute the free space between every track,
736
+ * including the ones inside the field. So three empty tracks stand in for that
737
+ * space, and the justify property below decides which of them takes it. The
738
+ * other two collapse to `0fr`.
739
+ */
740
+ :host(.select-label-placement-start) .select-wrapper,
741
+ :host(.select-label-placement-fixed) .select-wrapper {
742
+ grid-template-columns: var(--internal-justify-lead, 0fr) [label] auto var(--internal-justify-gap, 1fr) [field-start slot-start] minmax(0, auto) [native] minmax(0, auto) [slot-end] minmax(0, auto) [field-end] var(--internal-justify-trail, 0fr);
743
+ grid-template-rows: [label field] var(--internal-field-height, auto);
744
+ }
745
+
746
+ :host(.select-label-placement-end) .select-wrapper {
747
+ grid-template-columns: var(--internal-justify-lead, 0fr) [field-start slot-start] minmax(0, auto) [native] minmax(0, auto) [slot-end] minmax(0, auto) [field-end] var(--internal-justify-gap, 1fr) [label] auto var(--internal-justify-trail, 0fr);
748
+ grid-template-rows: [label field] var(--internal-field-height, auto);
749
+ }
750
+
751
+ /**
752
+ * With no label there is nothing to separate the field from, so the free space
753
+ * belongs after the field instead of before it. The label's own track collapses
754
+ * on its own, but the flexible one does not.
755
+ */
756
+ :host(:not(.has-label)) .select-wrapper {
757
+ --internal-justify-gap: 0fr;
758
+ --internal-justify-trail: 1fr;
759
+ }
760
+
761
+ /**
762
+ * Each of these declares all three tracks. Declaring only the ones it moves
763
+ * would leave the others at whatever the no-label rule above set, since the
764
+ * cascade resolves per declaration and the two rules have equal specificity.
765
+ *
766
+ * Exactly one track stays flexible in every combination. That leaves no free
767
+ * space for the `justify-content` the shared stylesheet sets on the wrapper, so
768
+ * it stays inert. Leave all three at `0fr` and it starts distributing space
769
+ * between the field's own tracks.
770
+ */
771
+ :host(.select-justify-start) .select-wrapper {
772
+ --internal-justify-lead: 0fr;
773
+ --internal-justify-gap: 0fr;
774
+ --internal-justify-trail: 1fr;
775
+ }
776
+
777
+ :host(.select-justify-end) .select-wrapper {
778
+ --internal-justify-lead: 1fr;
779
+ --internal-justify-gap: 0fr;
780
+ --internal-justify-trail: 0fr;
781
+ }
782
+
783
+ /**
784
+ * This only applies with a label, because `space-between` on a flex row with one
785
+ * in-flow item behaves as start, which is what the no-label rule already gives.
786
+ */
787
+ :host(.has-label.select-justify-space-between) .select-wrapper {
788
+ --internal-justify-lead: 0fr;
789
+ --internal-justify-gap: 1fr;
790
+ --internal-justify-trail: 0fr;
791
+ }
792
+
793
+ :host(.select-label-placement-stacked) .select-wrapper,
794
+ :host(.select-label-placement-floating) .select-wrapper {
795
+ grid-template-columns: [field-start slot-start] minmax(0, auto) [native] minmax(0, 1fr) [slot-end] minmax(0, auto) [field-end];
796
+ grid-template-rows: [label] auto [field] var(--internal-field-height, auto);
797
+ }
798
+
799
+ /**
800
+ * The templates above all name the same lines, so every placement shares these.
801
+ * A label with its own row lands on the label row. Otherwise that name resolves
802
+ * to the only row there is.
803
+ */
804
+ .label-text-wrapper {
805
+ grid-row: label;
806
+ }
807
+
808
+ .select-start {
809
+ grid-row: field;
810
+ grid-column: slot-start;
811
+ }
812
+
813
+ .native-wrapper {
814
+ grid-row: field;
815
+ grid-column: native;
816
+ }
817
+
818
+ .select-end {
819
+ grid-row: field;
820
+ grid-column: slot-end;
821
+ }
822
+
823
+ .select-wrapper::before {
824
+ grid-row: field;
825
+ grid-column: field-start/field-end;
826
+ }
827
+
828
+ /**
829
+ * The padding sits on the cells that the field box covers, so the label is not
830
+ * indented by it.
831
+ */
832
+ .select-start {
833
+ -webkit-padding-start: var(--padding-start);
834
+ padding-inline-start: var(--padding-start);
835
+ padding-top: var(--padding-top);
836
+ padding-bottom: var(--padding-bottom);
837
+ }
838
+
839
+ .native-wrapper {
840
+ padding-top: var(--padding-top);
841
+ padding-bottom: var(--padding-bottom);
842
+ }
843
+
844
+ .select-end {
845
+ -webkit-padding-end: var(--padding-end);
846
+ padding-inline-end: var(--padding-end);
847
+ padding-top: var(--padding-top);
848
+ padding-bottom: var(--padding-bottom);
849
+ }
850
+
851
+ /**
852
+ * The slot cells can shrink below their content so that oversized slotted
853
+ * content is cut off at the edge of the field instead of widening it.
854
+ */
855
+ .select-start,
856
+ .select-end {
857
+ overflow: hidden;
858
+ }
859
+
860
+ .select-wrapper .select-placeholder {
861
+ /**
862
+ * When the floating label appears on top of the
863
+ * select, we need to fade the text out so that the
864
+ * label does not overlap with the placeholder.
865
+ */
866
+ transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
867
+ }
868
+
869
+ .native-wrapper {
870
+ font-family: var(--token-font-family, -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol");
871
+ font-size: var(--token-font-size-350, 0.875rem);
872
+ font-weight: var(--token-font-weight-regular, 400);
873
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
874
+ line-height: 1.714286;
875
+ /**
876
+ * When the floating label appears on top of the
877
+ * input, we need to fade the input out so that the
878
+ * label does not overlap with the placeholder.
879
+ */
880
+ transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
881
+ color: var(--token-text-default, var(--token-primitives-neutral-1200, #242528));
882
+ }
883
+
884
+ /**
885
+ * Slotted buttons have a lot of default padding that can
886
+ * cause them to look misaligned from other pieces such
887
+ * as the control's label, especially when using a clear
888
+ * fill. We also make them circular to ensure that non-
889
+ * clear buttons and the focus/hover state on clear ones
890
+ * don't look too crowded.
891
+ */
892
+ ::slotted([slot=start]:last-of-type) {
893
+ margin-inline-end: var(--token-space-200, var(--token-scale-200, 8px));
894
+ }
895
+
896
+ ::slotted([slot=end]:first-of-type) {
897
+ margin-inline-start: var(--token-space-200, var(--token-scale-200, 8px));
898
+ }
899
+
900
+ ::slotted(ion-button[slot=start].button-has-icon-only),
901
+ ::slotted(ion-button[slot=end].button-has-icon-only) {
902
+ --border-radius: 50%;
903
+ --padding-start: var(--token-space-200, var(--token-scale-200, 8px));
904
+ --padding-end: var(--token-space-200, var(--token-scale-200, 8px));
905
+ --padding-top: var(--token-space-200, var(--token-scale-200, 8px));
906
+ --padding-bottom: var(--token-space-200, var(--token-scale-200, 8px));
907
+ aspect-ratio: 1;
908
+ }
909
+
910
+ .select-icon,
911
+ ::slotted(ion-icon) {
912
+ font-size: var(--token-font-size-400, 1rem);
913
+ }
914
+
915
+ .select-icon {
916
+ -webkit-margin-start: var(--token-space-200, var(--token-scale-200, 8px));
917
+ margin-inline-start: var(--token-space-200, var(--token-scale-200, 8px));
918
+ -webkit-margin-end: 0;
919
+ margin-inline-end: 0;
920
+ margin-top: 0;
921
+ margin-bottom: 0;
922
+ transition: transform 0.15s var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
923
+ color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a));
924
+ }
925
+
926
+ /**
927
+ * The icon renders inside the end container for floating and stacked labels and
928
+ * inside the native wrapper otherwise, the structure BREAKING.md documents for
929
+ * v9. Using `order` moves it past the slotted end content so the chevron stays
930
+ * on the field's trailing edge. The other themes leave it ahead of that
931
+ * content.
932
+ */
933
+ :host(.select-label-placement-stacked) .select-icon,
934
+ :host(.select-label-placement-floating) .select-icon {
935
+ order: 1;
936
+ }
937
+
938
+ :host(.has-value) .select-icon {
939
+ color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #383e45));
940
+ }
941
+
942
+ /**
943
+ * This rotates the chevron icon
944
+ * when the select is activated.
945
+ * This should only happen on MD.
946
+ */
947
+ :host(.select-expanded:not(.has-expanded-icon)) .select-icon {
948
+ transform: rotate(180deg);
949
+ }
950
+
951
+ :host(.select-fill-solid) {
952
+ --background: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #ebeef2));
953
+ }
954
+
955
+ :host(.select-disabled) {
956
+ --background: var(--token-primitives-neutral-100, #f6f7fa);
957
+ --border-color: var(--token-primitives-neutral-300, #e6eaee);
958
+ }
959
+
960
+ :host(.select-disabled) .label-text-wrapper,
961
+ :host(.select-disabled) .select-text,
962
+ :host(.select-disabled) .select-icon {
963
+ color: var(--token-primitives-neutral-500, #9fa5ad);
964
+ }
965
+
966
+ :host(.select-shape-soft) {
967
+ --border-radius: var(--token-border-radius-200, var(--token-scale-200, 8px));
968
+ }
969
+
970
+ :host(.select-shape-round) {
971
+ --border-radius: var(--token-border-radius-400, var(--token-scale-400, 16px));
972
+ }
973
+
974
+ :host(.select-shape-rectangular) {
975
+ --border-radius: var(--token-border-radius-0, var(--token-scale-0, 0px));
976
+ }