@ionic/core 9.0.3-dev.11788456135.1ab1d6cd → 9.0.3-dev.11790116791.11c9cd1e

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 (591) 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.js +1 -1
  27. package/components/ion-fab-button.js +1 -1
  28. package/components/ion-fab-list.js +1 -1
  29. package/components/ion-fab.js +1 -1
  30. package/components/ion-footer.js +1 -1
  31. package/components/ion-gallery-item.js +1 -1
  32. package/components/ion-gallery.js +1 -1
  33. package/components/ion-grid.js +1 -1
  34. package/components/ion-header.js +1 -1
  35. package/components/ion-img.js +1 -1
  36. package/components/ion-infinite-scroll-content.js +1 -1
  37. package/components/ion-infinite-scroll.js +1 -1
  38. package/components/ion-input-otp.js +1 -1
  39. package/components/ion-input-password-toggle.js +1 -1
  40. package/components/ion-input.js +1 -1
  41. package/components/ion-item-divider.js +1 -1
  42. package/components/ion-item-group.js +1 -1
  43. package/components/ion-item-option.js +1 -1
  44. package/components/ion-item-options.js +1 -1
  45. package/components/ion-item-sliding.js +1 -1
  46. package/components/ion-item.js +1 -1
  47. package/components/ion-label.js +1 -1
  48. package/components/ion-list-header.js +1 -1
  49. package/components/ion-list.js +1 -1
  50. package/components/ion-loading.js +1 -1
  51. package/components/ion-menu-button.js +1 -1
  52. package/components/ion-menu-toggle.js +1 -1
  53. package/components/ion-menu.js +1 -1
  54. package/components/ion-modal.js +1 -1
  55. package/components/ion-nav.js +1 -1
  56. package/components/ion-note.js +1 -1
  57. package/components/ion-picker-column-option.js +1 -1
  58. package/components/ion-picker-column.js +1 -1
  59. package/components/ion-picker.js +1 -1
  60. package/components/ion-popover.js +1 -1
  61. package/components/ion-progress-bar.js +1 -1
  62. package/components/ion-radio-group.js +1 -1
  63. package/components/ion-radio.js +1 -1
  64. package/components/ion-range.js +1 -1
  65. package/components/ion-refresher-content.js +1 -1
  66. package/components/ion-refresher.js +1 -1
  67. package/components/ion-reorder-group.js +1 -1
  68. package/components/ion-reorder.js +1 -1
  69. package/components/ion-ripple-effect.js +1 -1
  70. package/components/ion-router-link.js +1 -1
  71. package/components/ion-router-outlet.js +1 -1
  72. package/components/ion-router.js +1 -1
  73. package/components/ion-row.js +1 -1
  74. package/components/ion-searchbar.js +1 -1
  75. package/components/ion-segment-button.js +1 -1
  76. package/components/ion-segment.js +1 -1
  77. package/components/ion-select-modal.js +1 -1
  78. package/components/ion-select-option.js +1 -1
  79. package/components/ion-select-popover.js +1 -1
  80. package/components/ion-select.js +1 -1
  81. package/components/ion-skeleton-text.js +1 -1
  82. package/components/ion-spinner.js +1 -1
  83. package/components/ion-split-pane.js +1 -1
  84. package/components/ion-tab-bar.js +1 -1
  85. package/components/ion-tab-button.js +1 -1
  86. package/components/ion-tab.js +1 -1
  87. package/components/ion-text.js +1 -1
  88. package/components/ion-textarea.js +1 -1
  89. package/components/ion-thumbnail.js +1 -1
  90. package/components/ion-title.js +1 -1
  91. package/components/ion-toast.js +1 -1
  92. package/components/ion-toggle.js +1 -1
  93. package/components/ion-toolbar.js +1 -1
  94. package/components/p-0Zqw1uai.js +4 -0
  95. package/{dist/ionic/p-BqQ15K9a.js → components/p-0rXxxCTt.js} +1 -1
  96. package/components/{p-CTTmpA7l.js → p-3cjGQppH.js} +1 -1
  97. package/components/{p-W8Yq_OMR.js → p-B5AgguuG.js} +1 -1
  98. package/components/{p-BZmR0M4X.js → p-BNEGSmbp.js} +1 -1
  99. package/components/p-BSIw8XlU.js +4 -0
  100. package/components/{p-ZxET9sbA.js → p-BW5EN2Xi.js} +1 -1
  101. package/components/p-BYk20Mf5.js +4 -0
  102. package/components/p-BYnI-EJn.js +4 -0
  103. package/components/p-B_aT3oAQ.js +4 -0
  104. package/components/{p-CPXKIYkL.js → p-BkZBiLB3.js} +1 -1
  105. package/components/p-BouoWyEU.js +4 -0
  106. package/components/p-BqvZYIdI.js +4 -0
  107. package/components/p-BrRaGlll.js +4 -0
  108. package/components/{p-BBz0jPCg.js → p-C2CD_fhN.js} +1 -1
  109. package/components/{p-CsQsFkwO.js → p-C4xXkVID.js} +1 -1
  110. package/components/{p-VLn2Ytmp.js → p-CEKVY_H-.js} +1 -1
  111. package/components/{p-DkQNAyg8.js → p-CGj2vPt5.js} +1 -1
  112. package/components/{p-DgIAZUGe.js → p-CJp2AnUY.js} +1 -1
  113. package/components/p-CO6vPcgh.js +4 -0
  114. package/components/{p-DhBOoebx.js → p-Ce2nAsLZ.js} +1 -1
  115. package/components/{p-JAFy4ZHv.js → p-Cf8Sc9qN.js} +1 -1
  116. package/components/p-Cfk7czUn.js +4 -0
  117. package/components/{p-DNrr6r3I.js → p-CiRvXVG4.js} +1 -1
  118. package/components/p-Cl4FcpPX.js +4 -0
  119. package/components/{p-CtLeQL1G.js → p-CmZn5IDl.js} +1 -1
  120. package/components/p-D8HKWBJm.js +4 -0
  121. package/components/{p-EayFnjkU.js → p-D9UifuBV.js} +1 -1
  122. package/components/p-DBFO9oVW.js +4 -0
  123. package/components/{p-BGP1kR6j.js → p-DCpIv6ib.js} +1 -1
  124. package/components/p-DKWIsI1o.js +4 -0
  125. package/components/p-DQKxHcJi.js +4 -0
  126. package/components/p-DT2MRyId.js +4 -0
  127. package/components/{p-DWBpR7SJ.js → p-DdEyFcAR.js} +1 -1
  128. package/components/{p-DOdd_Inr.js → p-DrnBmDva.js} +1 -1
  129. package/components/{p-DGfjyB0v.js → p-Dsp7VCux.js} +1 -1
  130. package/components/p-DwTxdFPM.js +4 -0
  131. package/components/p-DxjhU4Lj.js +4 -0
  132. package/components/p-HWerNWEa.js +4 -0
  133. package/components/{p-D5lFNdff.js → p-M-IrAJS3.js} +1 -1
  134. package/components/p-Xl2x2-Ol.js +4 -0
  135. package/components/p-YP5ydNow.js +4 -0
  136. package/components/p-_FtneEj3.js +4 -0
  137. package/components/{p-C9cwz4xv.js → p-eDabxF6I.js} +1 -1
  138. package/components/p-fKHu5GWX.js +4 -0
  139. package/components/p-gGbm4ACs.js +4 -0
  140. package/components/p-hJBybumI.js +4 -0
  141. package/components/{p-Be00fpKV.js → p-jG41Us4a.js} +1 -1
  142. package/components/{p-CvRAtS4n.js → p-ndDJHQew.js} +1 -1
  143. package/components/p-oaWlbHN_.js +4 -0
  144. package/{dist/ionic/p-DpE9LgN6.js → components/p-oe85PI7E.js} +1 -1
  145. package/components/p-tglOeKd7.js +4 -0
  146. package/css/ionic/bundle.ionic.css +1 -1
  147. package/css/ionic/bundle.ionic.css.map +1 -1
  148. package/css/ionic/core.ionic.css +1 -1
  149. package/css/ionic/core.ionic.css.map +1 -1
  150. package/css/ionic/global.bundle.ionic.css +1 -1
  151. package/css/ionic/global.bundle.ionic.css.map +1 -1
  152. package/css/ionic/ionic-swiper.ionic.css +1 -1
  153. package/css/ionic/ionic-swiper.ionic.css.map +1 -1
  154. package/css/ionic/link.ionic.css +1 -1
  155. package/css/ionic/link.ionic.css.map +1 -1
  156. package/css/ionic/typography.ionic.css +1 -1
  157. package/css/ionic/typography.ionic.css.map +1 -1
  158. package/dist/cjs/{animation-DVrkairK.js → animation-Dfev6yFW.js} +1 -1
  159. package/dist/cjs/{app-globals-CTxe9MxF.js → app-globals-BwOspzE5.js} +1 -1
  160. package/dist/cjs/{button-active-B8t6YMNb.js → button-active-DfzJC914.js} +1 -1
  161. package/dist/cjs/{capacitor-w_r4U-_S.js → capacitor-B7dK21VK.js} +1 -1
  162. package/dist/cjs/{clear-button-press-controller-BKSn-dVq.js → clear-button-press-controller-B49x92PF.js} +1 -1
  163. package/dist/cjs/{focus-visible-BIj-I3-C.js → focus-visible-DGPRKkcx.js} +52 -2
  164. package/dist/cjs/{framework-delegate-Dmce7iqZ.js → framework-delegate-BKYAwcZK.js} +1 -1
  165. package/dist/cjs/{haptic-DZEv3V5s.js → haptic-CMs5ejXB.js} +1 -1
  166. package/dist/cjs/{helpers-DFJMw-qZ.js → helpers-D5NVnu5x.js} +16 -1
  167. package/dist/cjs/{index-DN51-BQl.js → index-6hDA5UlZ.js} +3 -3
  168. package/dist/cjs/{index-BoQA7njo.js → index-Byoi861q.js} +3 -3
  169. package/dist/cjs/{index-DWP810QI.js → index-CutlvfR4.js} +1 -1
  170. package/dist/cjs/{index-Bm6y0Ibt.js → index-Y8n2FvXS.js} +3 -3
  171. package/dist/cjs/index.cjs.js +10 -10
  172. package/dist/cjs/{input-shims-BFGH5o2Z.js → input-shims-SVR_4pAX.js} +6 -6
  173. package/dist/cjs/ion-accordion_2.cjs.entry.js +14 -19
  174. package/dist/cjs/ion-action-sheet.cjs.entry.js +10 -10
  175. package/dist/cjs/ion-alert.cjs.entry.js +13 -13
  176. package/dist/cjs/ion-app_8.cjs.entry.js +14 -14
  177. package/dist/cjs/ion-avatar_3.cjs.entry.js +3 -3
  178. package/dist/cjs/ion-back-button.cjs.entry.js +14 -16
  179. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  180. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +19 -32
  181. package/dist/cjs/ion-button_2.cjs.entry.js +4 -4
  182. package/dist/cjs/ion-card_5.cjs.entry.js +6 -6
  183. package/dist/cjs/ion-checkbox.cjs.entry.js +26 -18
  184. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  185. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  186. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
  187. package/dist/cjs/ion-datetime.cjs.entry.js +20 -56
  188. package/dist/cjs/ion-divider.cjs.entry.js +2 -2
  189. package/dist/cjs/ion-fab_3.cjs.entry.js +12 -17
  190. package/dist/cjs/ion-gallery-item.cjs.entry.js +1 -1
  191. package/dist/cjs/ion-gallery.cjs.entry.js +3 -3
  192. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  193. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +4 -4
  194. package/dist/cjs/ion-input-otp.cjs.entry.js +4 -4
  195. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +19 -31
  196. package/dist/cjs/ion-input.cjs.entry.js +17 -33
  197. package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
  198. package/dist/cjs/ion-item_8.cjs.entry.js +15 -20
  199. package/dist/cjs/ion-loading.cjs.entry.js +6 -6
  200. package/dist/cjs/ion-menu_3.cjs.entry.js +16 -19
  201. package/dist/cjs/ion-modal.cjs.entry.js +12 -12
  202. package/dist/cjs/ion-nav_2.cjs.entry.js +6 -6
  203. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -3
  204. package/dist/cjs/ion-picker-column.cjs.entry.js +5 -5
  205. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  206. package/dist/cjs/ion-popover.cjs.entry.js +8 -8
  207. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -4
  208. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -5
  209. package/dist/cjs/ion-range.cjs.entry.js +5 -5
  210. package/dist/cjs/ion-refresher_2.cjs.entry.js +17 -12
  211. package/dist/cjs/ion-reorder_2.cjs.entry.js +11 -19
  212. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  213. package/dist/cjs/ion-route_4.cjs.entry.js +4 -4
  214. package/dist/cjs/ion-searchbar.cjs.entry.js +13 -42
  215. package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
  216. package/dist/cjs/ion-select-modal.cjs.entry.js +17 -16
  217. package/dist/cjs/ion-select_3.cjs.entry.js +20 -44
  218. package/dist/cjs/ion-spinner.cjs.entry.js +2 -2
  219. package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
  220. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +9 -9
  221. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  222. package/dist/cjs/ion-text.cjs.entry.js +1 -1
  223. package/dist/cjs/ion-textarea.cjs.entry.js +17 -25
  224. package/dist/cjs/ion-toast.cjs.entry.js +7 -7
  225. package/dist/cjs/ion-toggle.cjs.entry.js +18 -34
  226. package/dist/cjs/{ionic-global-BaVLW54G.js → ionic-global-CRAqTE7M.js} +5 -5
  227. package/dist/cjs/ionic.cjs.js +2 -2
  228. package/dist/cjs/{ios.transition-Bm4N3WK1.js → ios.transition-BluJBTN6.js} +5 -5
  229. package/dist/cjs/{keyboard-9uOUQmB-.js → keyboard-B44EnZyJ.js} +1 -1
  230. package/dist/cjs/{keyboard-5cEsoK5l.js → keyboard-CR7Eg8u3.js} +3 -3
  231. package/dist/cjs/loader.cjs.js +2 -2
  232. package/dist/cjs/{md.transition-Z-7hu2x1.js → md.transition-TBHPCec3.js} +5 -5
  233. package/dist/cjs/{overlays-Jn6TNpc3.js → overlays-B5YzPlbv.js} +5 -5
  234. package/dist/cjs/{scroll-hide-controller-DQ9ulQ11.js → scroll-hide-controller-Bht8yQkC.js} +3 -3
  235. package/dist/cjs/{slot-mutation-controller-C9i1ymbP.js → slot-mutation-controller-CinDJgCY.js} +2 -2
  236. package/dist/cjs/{status-tap-DT7J4fZQ.js → status-tap-Aq-o5Csp.js} +3 -3
  237. package/dist/cjs/{swipe-back-BIbF7bVy.js → swipe-back-Byqp-bJI.js} +2 -2
  238. package/dist/collection/components/accordion/accordion.ionic.css +10 -12
  239. package/dist/collection/components/accordion/accordion.js +9 -14
  240. package/dist/collection/components/accordion-group/accordion-group.ionic.css +6 -6
  241. package/dist/collection/components/action-sheet/action-sheet.ionic.css +22 -26
  242. package/dist/collection/components/alert/alert.ionic.css +46 -54
  243. package/dist/collection/components/alert/alert.js +3 -3
  244. package/dist/collection/components/avatar/avatar.ionic.css +29 -35
  245. package/dist/collection/components/back-button/back-button.js +11 -13
  246. package/dist/collection/components/backdrop/backdrop.ionic.css +1 -1
  247. package/dist/collection/components/badge/badge.ionic.css +15 -18
  248. package/dist/collection/components/breadcrumb/breadcrumb.js +16 -28
  249. package/dist/collection/components/button/button.ionic.css +22 -26
  250. package/dist/collection/components/buttons/buttons.ionic.css +1 -1
  251. package/dist/collection/components/card/card.ionic.css +7 -7
  252. package/dist/collection/components/card-content/card-content.ionic.css +3 -4
  253. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +4 -5
  254. package/dist/collection/components/checkbox/checkbox.ionic.css +51 -59
  255. package/dist/collection/components/checkbox/checkbox.ios.css +33 -29
  256. package/dist/collection/components/checkbox/checkbox.js +23 -13
  257. package/dist/collection/components/checkbox/checkbox.md.css +33 -29
  258. package/dist/collection/components/chip/chip.ionic.css +12 -13
  259. package/dist/collection/components/datetime/datetime.ionic.css +43 -49
  260. package/dist/collection/components/datetime/datetime.ios.css +5 -10
  261. package/dist/collection/components/datetime/datetime.js +12 -48
  262. package/dist/collection/components/datetime/datetime.md.css +5 -10
  263. package/dist/collection/components/divider/divider.ionic.css +1 -1
  264. package/dist/collection/components/fab-button/fab-button.js +9 -14
  265. package/dist/collection/components/header/header.ionic.css +1 -1
  266. package/dist/collection/components/input/input.ionic.css +142 -122
  267. package/dist/collection/components/input/input.js +11 -27
  268. package/dist/collection/components/input-otp/input-otp.ionic.css +29 -31
  269. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +1 -1
  270. package/dist/collection/components/input-password-toggle/input-password-toggle.js +18 -28
  271. package/dist/collection/components/item/item.ionic.css +9 -10
  272. package/dist/collection/components/item/item.js +10 -15
  273. package/dist/collection/components/item-option/item-option.ionic.css +5 -6
  274. package/dist/collection/components/item-sliding/item-sliding.ionic.css +1 -1
  275. package/dist/collection/components/list-header/list-header.ionic.css +4 -5
  276. package/dist/collection/components/menu-button/menu-button.js +9 -12
  277. package/dist/collection/components/modal/modal.ionic.css +3 -3
  278. package/dist/collection/components/popover/popover.ionic.css +1 -1
  279. package/dist/collection/components/progress-bar/progress-bar.ionic.css +3 -3
  280. package/dist/collection/components/radio/radio.ionic.css +9 -10
  281. package/dist/collection/components/radio-group/radio-group.ionic.css +5 -6
  282. package/dist/collection/components/range/range.ionic.css +11 -12
  283. package/dist/collection/components/refresher-content/refresher-content.js +10 -4
  284. package/dist/collection/components/reorder/reorder.js +5 -13
  285. package/dist/collection/components/searchbar/searchbar.ionic.css +17 -18
  286. package/dist/collection/components/searchbar/searchbar.js +8 -35
  287. package/dist/collection/components/segment-button/segment-button.ionic.css +8 -9
  288. package/dist/collection/components/select/select.ionic.css +213 -105
  289. package/dist/collection/components/select/select.js +14 -39
  290. package/dist/collection/components/select-modal/select-modal.ionic.css +13 -16
  291. package/dist/collection/components/select-modal/select-modal.js +12 -10
  292. package/dist/collection/components/select-popover/select-popover.ionic.css +11 -13
  293. package/dist/collection/components/spinner/spinner.ionic.css +2 -2
  294. package/dist/collection/components/tab-bar/tab-bar.ionic.css +6 -6
  295. package/dist/collection/components/tab-button/tab-button.ionic.css +4 -5
  296. package/dist/collection/components/textarea/textarea.ionic.css +173 -128
  297. package/dist/collection/components/textarea/textarea.ios.css +0 -4
  298. package/dist/collection/components/textarea/textarea.js +13 -18
  299. package/dist/collection/components/textarea/textarea.md.css +0 -4
  300. package/dist/collection/components/title/title.ionic.css +6 -8
  301. package/dist/collection/components/toast/toast.ionic.css +16 -19
  302. package/dist/collection/components/toggle/toggle.ionic.css +14 -16
  303. package/dist/collection/components/toggle/toggle.js +12 -26
  304. package/dist/collection/components/toolbar/toolbar.ionic.css +1 -1
  305. package/dist/collection/utils/focus-trap.js +2 -2
  306. package/dist/collection/utils/focus-visible.js +51 -2
  307. package/dist/collection/utils/helpers.js +15 -1
  308. package/dist/collection/utils/overlays.js +2 -2
  309. package/dist/collection/utils/test/playwright/field-geometry.js +34 -0
  310. package/dist/collection/utils/test/playwright/index.js +1 -0
  311. package/dist/docs.json +60 -25
  312. package/dist/esm/{animation-DXpoXT3G.js → animation-CSQV6dzD.js} +1 -1
  313. package/dist/esm/{app-globals-gnMsODWu.js → app-globals-PWSz-l_N.js} +1 -1
  314. package/dist/esm/{button-active-DtDlu9-d.js → button-active-C57xZQjg.js} +1 -1
  315. package/dist/esm/{capacitor-CMyaZHxy.js → capacitor-DBIFQa2o.js} +1 -1
  316. package/dist/esm/{clear-button-press-controller-CWOPHFBc.js → clear-button-press-controller-Dd5_yhOF.js} +1 -1
  317. package/dist/esm/{focus-visible-vXpMhGrs.js → focus-visible-BYk20Mf5.js} +52 -3
  318. package/dist/esm/{framework-delegate-DUQ69ajj.js → framework-delegate-BGk11dmh.js} +1 -1
  319. package/dist/esm/{haptic-Dal3yCq6.js → haptic-PEF9NVXM.js} +1 -1
  320. package/dist/esm/{helpers-DTqW6MzS.js → helpers-COVHAPv8.js} +16 -2
  321. package/dist/esm/{index-CpKLzrYn.js → index-B7Bz5x4m.js} +1 -1
  322. package/dist/esm/{index-BqQ15K9a.js → index-BkJpfpXI.js} +1 -1
  323. package/dist/esm/{index-C2QkTAgc.js → index-DHp8pAEm.js} +3 -3
  324. package/dist/esm/{index-D_YUqPZN.js → index-Detgiv22.js} +3 -3
  325. package/dist/esm/{index-D76uuG8P.js → index-MCAWImIY.js} +3 -3
  326. package/dist/esm/index.js +10 -10
  327. package/dist/esm/{input-shims-DgFi_b6v.js → input-shims-rVCP_KOP.js} +6 -6
  328. package/dist/esm/ion-accordion_2.entry.js +15 -20
  329. package/dist/esm/ion-action-sheet.entry.js +10 -10
  330. package/dist/esm/ion-alert.entry.js +13 -13
  331. package/dist/esm/ion-app_8.entry.js +14 -14
  332. package/dist/esm/ion-avatar_3.entry.js +3 -3
  333. package/dist/esm/ion-back-button.entry.js +15 -17
  334. package/dist/esm/ion-backdrop.entry.js +2 -2
  335. package/dist/esm/ion-breadcrumb_2.entry.js +20 -33
  336. package/dist/esm/ion-button_2.entry.js +4 -4
  337. package/dist/esm/ion-card_5.entry.js +6 -6
  338. package/dist/esm/ion-checkbox.entry.js +27 -19
  339. package/dist/esm/ion-chip.entry.js +2 -2
  340. package/dist/esm/ion-col_3.entry.js +1 -1
  341. package/dist/esm/ion-datetime-button.entry.js +3 -3
  342. package/dist/esm/ion-datetime.entry.js +21 -57
  343. package/dist/esm/ion-divider.entry.js +2 -2
  344. package/dist/esm/ion-fab_3.entry.js +13 -18
  345. package/dist/esm/ion-gallery-item.entry.js +1 -1
  346. package/dist/esm/ion-gallery.entry.js +3 -3
  347. package/dist/esm/ion-img.entry.js +3 -3
  348. package/dist/esm/ion-infinite-scroll_2.entry.js +4 -4
  349. package/dist/esm/ion-input-otp.entry.js +4 -4
  350. package/dist/esm/ion-input-password-toggle.entry.js +20 -32
  351. package/dist/esm/ion-input.entry.js +18 -34
  352. package/dist/esm/ion-item-option_3.entry.js +6 -6
  353. package/dist/esm/ion-item_8.entry.js +16 -21
  354. package/dist/esm/ion-loading.entry.js +6 -6
  355. package/dist/esm/ion-menu_3.entry.js +17 -20
  356. package/dist/esm/ion-modal.entry.js +12 -12
  357. package/dist/esm/ion-nav_2.entry.js +6 -6
  358. package/dist/esm/ion-picker-column-option.entry.js +3 -3
  359. package/dist/esm/ion-picker-column.entry.js +5 -5
  360. package/dist/esm/ion-picker.entry.js +2 -2
  361. package/dist/esm/ion-popover.entry.js +8 -8
  362. package/dist/esm/ion-progress-bar.entry.js +4 -4
  363. package/dist/esm/ion-radio_2.entry.js +5 -5
  364. package/dist/esm/ion-range.entry.js +5 -5
  365. package/dist/esm/ion-refresher_2.entry.js +18 -13
  366. package/dist/esm/ion-reorder_2.entry.js +12 -20
  367. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  368. package/dist/esm/ion-route_4.entry.js +4 -4
  369. package/dist/esm/ion-searchbar.entry.js +14 -43
  370. package/dist/esm/ion-segment_2.entry.js +4 -4
  371. package/dist/esm/ion-select-modal.entry.js +19 -18
  372. package/dist/esm/ion-select_3.entry.js +21 -45
  373. package/dist/esm/ion-spinner.entry.js +2 -2
  374. package/dist/esm/ion-split-pane.entry.js +1 -1
  375. package/dist/esm/ion-tab-bar_2.entry.js +9 -9
  376. package/dist/esm/ion-tab_2.entry.js +3 -3
  377. package/dist/esm/ion-text.entry.js +1 -1
  378. package/dist/esm/ion-textarea.entry.js +17 -25
  379. package/dist/esm/ion-toast.entry.js +7 -7
  380. package/dist/esm/ion-toggle.entry.js +19 -35
  381. package/dist/esm/{ionic-global-oK2heABF.js → ionic-global-DPSBlusf.js} +5 -5
  382. package/dist/esm/ionic.js +2 -2
  383. package/dist/esm/{ios.transition-D6rsx0aJ.js → ios.transition-Dg02Css6.js} +5 -5
  384. package/dist/esm/{keyboard-YBye__Ay.js → keyboard-0MlGMI-U.js} +3 -3
  385. package/dist/esm/{keyboard-Dzp50ozz.js → keyboard-C09oMZsY.js} +1 -1
  386. package/dist/esm/loader.js +2 -2
  387. package/dist/esm/{md.transition-0y4So3tu.js → md.transition-DWmGdm6c.js} +5 -5
  388. package/dist/esm/{overlays-CLlfG_qy.js → overlays-Bv7M5ll5.js} +5 -5
  389. package/dist/esm/{scroll-hide-controller-BUZm0jSI.js → scroll-hide-controller-Tp5xjq2E.js} +3 -3
  390. package/dist/esm/{slot-mutation-controller-C5Vj7Od7.js → slot-mutation-controller-PS17pZ-_.js} +2 -2
  391. package/dist/esm/{status-tap-VmNhEOZr.js → status-tap-_VvGTiUU.js} +3 -3
  392. package/dist/esm/{swipe-back-BHHiqew-.js → swipe-back-D2R5S8HL.js} +2 -2
  393. package/dist/ionic/index.esm.js +1 -1
  394. package/dist/ionic/ionic.esm.js +1 -1
  395. package/dist/ionic/{p-3bb43e22.entry.js → p-054bdefd.entry.js} +1 -1
  396. package/dist/ionic/p-155f3baf.entry.js +4 -0
  397. package/dist/ionic/{p-2e3acd77.entry.js → p-18d55baa.entry.js} +1 -1
  398. package/dist/ionic/p-1d40a19c.entry.js +4 -0
  399. package/dist/ionic/p-221d7b0b.entry.js +4 -0
  400. package/dist/ionic/p-30858188.entry.js +4 -0
  401. package/dist/ionic/{p-924182fc.entry.js → p-3111972e.entry.js} +1 -1
  402. package/dist/ionic/p-323b7322.entry.js +4 -0
  403. package/dist/ionic/p-32ed09fe.entry.js +4 -0
  404. package/dist/ionic/{p-d0368d31.entry.js → p-343f72d0.entry.js} +1 -1
  405. package/dist/ionic/{p-db011674.entry.js → p-37faa244.entry.js} +1 -1
  406. package/dist/ionic/p-3966cd77.entry.js +4 -0
  407. package/dist/ionic/p-4030db68.entry.js +4 -0
  408. package/dist/ionic/p-42a054ee.entry.js +4 -0
  409. package/dist/ionic/{p-fdb940e3.entry.js → p-42cfdcb7.entry.js} +1 -1
  410. package/dist/ionic/p-44cd6a88.entry.js +4 -0
  411. package/dist/ionic/{p-886236f0.entry.js → p-6589a3f6.entry.js} +1 -1
  412. package/dist/ionic/p-68ffe393.entry.js +4 -0
  413. package/dist/ionic/p-6b9b6175.entry.js +4 -0
  414. package/dist/ionic/{p-84b5eafe.entry.js → p-6c99f6c8.entry.js} +1 -1
  415. package/dist/ionic/{p-dc000de0.entry.js → p-6c9d8e84.entry.js} +1 -1
  416. package/dist/ionic/p-6fe03c66.entry.js +4 -0
  417. package/dist/ionic/p-747c4c1e.entry.js +4 -0
  418. package/dist/ionic/p-7b769a8c.entry.js +4 -0
  419. package/dist/ionic/p-7e07f60d.entry.js +4 -0
  420. package/dist/ionic/p-7e9a0222.entry.js +4 -0
  421. package/dist/ionic/p-8f052ddf.entry.js +4 -0
  422. package/dist/ionic/p-8fb06684.entry.js +4 -0
  423. package/dist/ionic/p-91a7e3df.entry.js +4 -0
  424. package/dist/ionic/p-9344a53d.entry.js +4 -0
  425. package/dist/ionic/{p-55e13406.entry.js → p-93c69512.entry.js} +1 -1
  426. package/dist/ionic/{p-b83de44e.entry.js → p-96f73def.entry.js} +1 -1
  427. package/dist/ionic/p-9c0cae6a.entry.js +4 -0
  428. package/dist/ionic/{p-CsmXfOZY.js → p-B3Kiljjq.js} +1 -1
  429. package/dist/ionic/p-BN5wKnhU.js +4 -0
  430. package/dist/ionic/p-BQmJoNKC.js +4 -0
  431. package/dist/ionic/p-BYk20Mf5.js +4 -0
  432. package/{components/p-Cc3oC60a.js → dist/ionic/p-BkJpfpXI.js} +1 -1
  433. package/{components/p-CN41sVGB.js → dist/ionic/p-Bp2Gog3I.js} +1 -1
  434. package/dist/ionic/p-Br2aTSXv.js +4 -0
  435. package/dist/ionic/{p-D8HyO4-0.js → p-BxyvWHWp.js} +1 -1
  436. package/dist/ionic/p-C-5bbxTv.js +4 -0
  437. package/dist/ionic/p-CalV2EFO.js +4 -0
  438. package/dist/ionic/p-Ck7LvynN.js +4 -0
  439. package/dist/ionic/{p-BnRvdoDY.js → p-CpbV2dkG.js} +1 -1
  440. package/dist/ionic/p-CyqXbsry.js +4 -0
  441. package/dist/ionic/{p-Izgzy5eB.js → p-DAdCwTwc.js} +1 -1
  442. package/dist/ionic/{p-DAFzmzMJ.js → p-DWu51GL8.js} +1 -1
  443. package/dist/ionic/p-DYl9g-Nn.js +4 -0
  444. package/dist/ionic/p-DhRGeAiB.js +4 -0
  445. package/dist/ionic/{p-BdqFx5km.js → p-Dynoer0Z.js} +1 -1
  446. package/dist/ionic/p-HzpJgzPY.js +4 -0
  447. package/dist/ionic/{p-Cs5kzNVE.js → p-PrbehP8l.js} +1 -1
  448. package/dist/ionic/p-XIxYRztg.js +4 -0
  449. package/dist/ionic/{p-B3L20Lav.js → p-_RfHVD7s.js} +1 -1
  450. package/dist/ionic/{p-8a7bf6c7.entry.js → p-a69ccce3.entry.js} +1 -1
  451. package/dist/ionic/p-a8bce8c2.entry.js +4 -0
  452. package/dist/ionic/p-aa658bb9.entry.js +4 -0
  453. package/dist/ionic/p-ada3f6b9.entry.js +4 -0
  454. package/dist/ionic/p-b2d4bb26.entry.js +4 -0
  455. package/dist/ionic/p-b9f0ce4c.entry.js +4 -0
  456. package/dist/ionic/{p-30c4458b.entry.js → p-be5bc00a.entry.js} +1 -1
  457. package/dist/ionic/p-bfe9bfae.entry.js +4 -0
  458. package/dist/ionic/p-c85c7436.entry.js +4 -0
  459. package/dist/ionic/p-caa7801f.entry.js +4 -0
  460. package/dist/ionic/{p-46709a42.entry.js → p-d97fabaa.entry.js} +1 -1
  461. package/dist/ionic/p-da319993.entry.js +4 -0
  462. package/dist/ionic/p-df1c1199.entry.js +4 -0
  463. package/dist/ionic/{p-2c3704b9.entry.js → p-e02e6d2b.entry.js} +1 -1
  464. package/dist/ionic/{p-6b23289a.entry.js → p-e10326b5.entry.js} +1 -1
  465. package/dist/ionic/{p-d1d3048b.entry.js → p-e8e3b85f.entry.js} +1 -1
  466. package/dist/ionic/p-ec90ddaf.entry.js +4 -0
  467. package/dist/ionic/{p-cd05447f.entry.js → p-ee6708ce.entry.js} +1 -1
  468. package/dist/ionic/{p-e939adf3.entry.js → p-f301235c.entry.js} +1 -1
  469. package/dist/ionic/p-fd0666a5.entry.js +4 -0
  470. package/dist/ionic/{p-CP5-2cXj.js → p-j9My4oCO.js} +1 -1
  471. package/dist/ionic/p-pQdkMmul.js +4 -0
  472. package/dist/ionic/p-sXOU046_.js +4 -0
  473. package/dist/types/components/accordion/accordion.d.ts +7 -1
  474. package/dist/types/components/back-button/back-button.d.ts +8 -2
  475. package/dist/types/components/breadcrumb/breadcrumb.d.ts +12 -2
  476. package/dist/types/components/checkbox/checkbox.d.ts +12 -1
  477. package/dist/types/components/datetime/datetime.d.ts +4 -4
  478. package/dist/types/components/fab-button/fab-button.d.ts +7 -1
  479. package/dist/types/components/input/input.d.ts +7 -10
  480. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +14 -2
  481. package/dist/types/components/item/item.d.ts +7 -1
  482. package/dist/types/components/menu-button/menu-button.d.ts +6 -1
  483. package/dist/types/components/refresher-content/refresher-content.d.ts +6 -0
  484. package/dist/types/components/reorder/reorder.d.ts +1 -1
  485. package/dist/types/components/select/select.d.ts +7 -12
  486. package/dist/types/components/select-modal/select-modal.d.ts +6 -1
  487. package/dist/types/components/textarea/textarea.d.ts +8 -8
  488. package/dist/types/components/toggle/toggle.d.ts +5 -2
  489. package/dist/types/utils/config.d.ts +22 -2
  490. package/dist/types/utils/focus-visible.d.ts +20 -0
  491. package/dist/types/utils/helpers.d.ts +7 -0
  492. package/dist/types/utils/test/playwright/field-geometry.d.ts +13 -0
  493. package/dist/types/utils/test/playwright/index.d.ts +1 -0
  494. package/hydrate/index.js +318 -417
  495. package/hydrate/index.mjs +318 -417
  496. package/package.json +4 -5
  497. package/components/p-B1AK6oR-.js +0 -4
  498. package/components/p-B8dfyFoB.js +0 -4
  499. package/components/p-B9UT2JwK.js +0 -4
  500. package/components/p-BDqjX7Z_.js +0 -4
  501. package/components/p-BQUTtt8S.js +0 -4
  502. package/components/p-BYSs-jZz.js +0 -4
  503. package/components/p-BZtGrrX4.js +0 -4
  504. package/components/p-BdAOHgnb.js +0 -4
  505. package/components/p-C8aonLbo.js +0 -4
  506. package/components/p-CDmCFFLL.js +0 -4
  507. package/components/p-CPdOdJa7.js +0 -4
  508. package/components/p-CksPhDEa.js +0 -4
  509. package/components/p-Cm78Kk79.js +0 -4
  510. package/components/p-CmEe-Llj.js +0 -4
  511. package/components/p-D1t981Ih.js +0 -4
  512. package/components/p-D9jEKvVd.js +0 -4
  513. package/components/p-DG-ZC7Js.js +0 -4
  514. package/components/p-DJkuoL4u.js +0 -4
  515. package/components/p-DOoxQDxg.js +0 -4
  516. package/components/p-DcOWEjmv.js +0 -4
  517. package/components/p-DgEOEy6x.js +0 -4
  518. package/components/p-Dhi5xtNS.js +0 -4
  519. package/components/p-DtPgvez6.js +0 -4
  520. package/components/p-DwAij6DN.js +0 -4
  521. package/components/p-DzaPYdjZ.js +0 -4
  522. package/components/p-Dzuh_AKJ.js +0 -4
  523. package/components/p-Uo-TYRpE.js +0 -4
  524. package/components/p-cKiRADSB.js +0 -4
  525. package/components/p-e73ca-aN.js +0 -4
  526. package/components/p-fIOYmaqA.js +0 -4
  527. package/components/p-fh4o6dKR.js +0 -4
  528. package/components/p-vXpMhGrs.js +0 -4
  529. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  530. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  531. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  532. package/dist/cjs/list-a-7GSA6K.js +0 -8
  533. package/dist/cjs/x-BTF99yFH.js +0 -8
  534. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  535. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  536. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  537. package/dist/esm/list-Dhi5xtNS.js +0 -6
  538. package/dist/esm/x-BDqjX7Z_.js +0 -6
  539. package/dist/ionic/p-04d96dad.entry.js +0 -4
  540. package/dist/ionic/p-08f20edc.entry.js +0 -4
  541. package/dist/ionic/p-0a924e6a.entry.js +0 -4
  542. package/dist/ionic/p-0f268972.entry.js +0 -4
  543. package/dist/ionic/p-18c6af89.entry.js +0 -4
  544. package/dist/ionic/p-1cc2a196.entry.js +0 -4
  545. package/dist/ionic/p-201f484e.entry.js +0 -4
  546. package/dist/ionic/p-26efcc45.entry.js +0 -4
  547. package/dist/ionic/p-2da21af7.entry.js +0 -4
  548. package/dist/ionic/p-2fc1521f.entry.js +0 -4
  549. package/dist/ionic/p-32be916d.entry.js +0 -4
  550. package/dist/ionic/p-384fb50d.entry.js +0 -4
  551. package/dist/ionic/p-4QzQhqmw.js +0 -4
  552. package/dist/ionic/p-5217eb00.entry.js +0 -4
  553. package/dist/ionic/p-73309d35.entry.js +0 -4
  554. package/dist/ionic/p-74ab5f49.entry.js +0 -4
  555. package/dist/ionic/p-7d2f3242.entry.js +0 -4
  556. package/dist/ionic/p-7e28cc53.entry.js +0 -4
  557. package/dist/ionic/p-83d13d56.entry.js +0 -4
  558. package/dist/ionic/p-854b95f9.entry.js +0 -4
  559. package/dist/ionic/p-8NLG9fne.js +0 -4
  560. package/dist/ionic/p-8dcd18cf.entry.js +0 -4
  561. package/dist/ionic/p-92f21db6.entry.js +0 -4
  562. package/dist/ionic/p-9ca59419.entry.js +0 -4
  563. package/dist/ionic/p-B6aOaV_m.js +0 -4
  564. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  565. package/dist/ionic/p-BVv5nqxG.js +0 -4
  566. package/dist/ionic/p-BYSs-jZz.js +0 -4
  567. package/dist/ionic/p-CD4Mty1V.js +0 -4
  568. package/dist/ionic/p-CLVGlNRl.js +0 -4
  569. package/dist/ionic/p-CRbXZpID.js +0 -4
  570. package/dist/ionic/p-CZ-V4tB0.js +0 -4
  571. package/dist/ionic/p-CyXL8sF6.js +0 -4
  572. package/dist/ionic/p-D1ej8PMz.js +0 -4
  573. package/dist/ionic/p-D1t981Ih.js +0 -4
  574. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  575. package/dist/ionic/p-DvXo4Ng9.js +0 -4
  576. package/dist/ionic/p-ac4ea8db.entry.js +0 -4
  577. package/dist/ionic/p-b10dc124.entry.js +0 -4
  578. package/dist/ionic/p-b411d90d.entry.js +0 -4
  579. package/dist/ionic/p-b7ce4a50.entry.js +0 -4
  580. package/dist/ionic/p-c7035f3f.entry.js +0 -4
  581. package/dist/ionic/p-c91fc9d4.entry.js +0 -4
  582. package/dist/ionic/p-cd4791d5.entry.js +0 -4
  583. package/dist/ionic/p-ce1ab874.entry.js +0 -4
  584. package/dist/ionic/p-e9480e7f.entry.js +0 -4
  585. package/dist/ionic/p-e9fdff49.entry.js +0 -4
  586. package/dist/ionic/p-f29b784f.entry.js +0 -4
  587. package/dist/ionic/p-f82b13a6.entry.js +0 -4
  588. package/dist/ionic/p-fIOYmaqA.js +0 -4
  589. package/dist/ionic/p-psKsVoNI.js +0 -4
  590. package/dist/ionic/p-si7ttuvL.js +0 -4
  591. package/dist/ionic/p-vXpMhGrs.js +0 -4
@@ -534,41 +534,8 @@ button {
534
534
  border-top: none;
535
535
  }
536
536
 
537
- :host(.select-fill-outline) .label-text-wrapper {
538
- /**
539
- * The label should appear on top of an outline
540
- * container that overlaps it so it is always clickable.
541
- */
542
- position: relative;
543
- }
544
-
545
- :host(.select-fill-outline) .select-wrapper-inner {
546
- border-radius: var(--border-radius);
547
- -webkit-padding-start: var(--padding-start);
548
- padding-inline-start: var(--padding-start);
549
- -webkit-padding-end: var(--padding-end);
550
- padding-inline-end: var(--padding-end);
551
- padding-top: var(--padding-top);
552
- padding-bottom: var(--padding-bottom);
553
- /**
554
- * Apply the background to the native select
555
- * wrapper to only style the select.
556
- */
557
- background: var(--background);
558
- }
559
-
560
- :host(.select-fill-outline) .select-outline {
561
- right: 0;
562
- left: 0;
563
- top: 0;
564
- bottom: 0;
565
- border-radius: var(--border-radius);
566
- position: absolute;
567
- width: 100%;
568
- height: 100%;
569
- pointer-events: none;
537
+ :host(.select-fill-outline) .select-wrapper::before {
570
538
  border: var(--border-width) var(--border-style) var(--border-color);
571
- box-sizing: border-box;
572
539
  }
573
540
 
574
541
  :host(.ion-focused.select-fill-outline) {
@@ -590,55 +557,53 @@ button {
590
557
 
591
558
  :host {
592
559
  --background: var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));
593
- --border-color: var(--token-primitives-neutral-500, #a2a2a2);
560
+ --border-color: var(--token-primitives-neutral-500, #9fa5ad);
594
561
  --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
595
562
  --padding-start: var(--token-space-400, var(--token-scale-400, 16px));
596
563
  --padding-end: var(--token-space-400, var(--token-scale-400, 16px));
597
564
  --padding-top: var(--token-space-300, var(--token-scale-300, 12px));
598
565
  --padding-bottom: var(--token-space-300, var(--token-scale-300, 12px));
599
- --placeholder-color: var(--token-primitives-neutral-800, #626262);
566
+ --placeholder-color: var(--token-primitives-neutral-800, #6c727a);
600
567
  --placeholder-opacity: 1;
601
- --highlight-color-focused: var(--token-border-focus-default, var(--token-primitives-blue-400, #b5c0f7));
602
- --highlight-color-valid: var(--token-semantics-success-900, var(--token-primitives-green-900, #126f23));
603
- --highlight-color-invalid: var(--token-semantics-danger-800, var(--token-primitives-red-800, #bf2222));
568
+ --highlight-color-focused: var(--token-border-focus-default, var(--token-semantics-primary-400, var(--token-primitives-blue-400, #b5c0f7)));
569
+ --highlight-color-valid: var(--token-semantics-success-900, var(--token-primitives-green-900, #037046));
570
+ --highlight-color-invalid: var(--token-semantics-danger-800, var(--token-primitives-red-800, #d2002b));
604
571
  --select-text-gap: var(--token-space-300, var(--token-scale-300, 12px));
605
572
  min-height: var(--token-scale-1100, 44px);
606
573
  }
607
574
 
608
575
  .select-bottom {
609
576
  padding-top: var(--token-space-100, var(--token-scale-100, 4px));
577
+ 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");
610
578
  font-size: var(--token-font-size-300, 0.75rem);
611
579
  font-weight: var(--token-font-weight-medium, 500);
612
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
613
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
614
- text-decoration: none;
615
- text-transform: none;
580
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
581
+ line-height: var(--token-font-line-height-500, 1.25rem);
616
582
  }
617
583
 
618
584
  .select-bottom .helper-text {
619
- color: var(--token-primitives-neutral-800, #626262);
585
+ color: var(--token-primitives-neutral-800, #6c727a);
620
586
  }
621
587
 
622
588
  .select-bottom .error-text {
623
- color: var(--token-text-danger, var(--token-semantics-danger-900, var(--token-primitives-red-900, #991b1b)));
589
+ color: var(--token-text-danger, var(--token-semantics-danger-800, var(--token-primitives-red-800, #d2002b)));
624
590
  }
625
591
 
626
592
  .select-text {
627
593
  min-width: var(--token-space-400, var(--token-scale-400, 16px));
628
- color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
594
+ color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a));
629
595
  }
630
596
 
631
597
  :host(.has-value) .select-text {
632
- color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
598
+ color: var(--token-text-default, var(--token-primitives-neutral-1200, #242528));
633
599
  }
634
600
 
635
601
  .label-text-wrapper {
602
+ 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");
636
603
  font-size: var(--token-font-size-300, 0.75rem);
637
604
  font-weight: var(--token-font-weight-medium, 500);
638
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
639
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
640
- text-decoration: none;
641
- text-transform: none;
605
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
606
+ line-height: var(--token-font-line-height-500, 1.25rem);
642
607
  /**
643
608
  * Label text should not extend
644
609
  * beyond the bounds of the select.
@@ -649,7 +614,7 @@ button {
649
614
  */
650
615
  max-width: var(--token-scale-5000, 200px);
651
616
  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));
652
- color: var(--token-primitives-neutral-1000, #3b3b3b);
617
+ color: var(--token-primitives-neutral-1000, #383e45);
653
618
  }
654
619
 
655
620
  :host(.select-label-placement-start) .label-text-wrapper,
@@ -668,7 +633,6 @@ button {
668
633
  }
669
634
 
670
635
  :host(.select-label-placement-fixed) .label-text-wrapper {
671
- flex: 0 0 calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
672
636
  width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
673
637
  min-width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
674
638
  max-width: var(--token-scale-5000, 200px);
@@ -701,72 +665,216 @@ button {
701
665
  margin-bottom: var(--token-space-100, var(--token-scale-100, 4px));
702
666
  }
703
667
 
668
+ /**
669
+ * The label is nested in the control so that every theme renders the same
670
+ * tree. Laying the wrapper out as a grid and flattening the control lets the
671
+ * label sit outside the field box, which is drawn by `::before` over the cells
672
+ * the label does not occupy.
673
+ */
704
674
  .select-wrapper {
675
+ display: grid;
676
+ /**
677
+ * Only stretch grows an auto row, so centering holds the label row at its
678
+ * content height and still centers the field in any leftover host height.
679
+ */
680
+ align-content: center;
705
681
  align-items: center;
706
682
  min-width: var(--token-scale-5000, 200px);
707
683
  background: transparent;
708
684
  }
709
685
 
686
+ .select-control {
687
+ display: contents;
688
+ }
689
+
690
+ /**
691
+ * A pseudo-element draws the box over the field cells, so the label stays
692
+ * outside of it.
693
+ */
694
+ .select-wrapper::before {
695
+ border-radius: var(--border-radius, 0);
696
+ align-self: stretch;
697
+ box-sizing: border-box;
698
+ content: "";
699
+ pointer-events: none;
700
+ background: var(--background);
701
+ }
702
+
703
+ /**
704
+ * The field row is as tall as the size asks for, whatever the slots contain.
705
+ */
706
+ :host(.select-size-small) .select-wrapper {
707
+ --internal-field-height: var(--token-scale-1000, 40px);
708
+ }
709
+
710
+ :host(.select-size-medium) .select-wrapper {
711
+ --internal-field-height: var(--token-scale-1200, 48px);
712
+ }
713
+
714
+ :host(.select-size-large) .select-wrapper {
715
+ --internal-field-height: var(--token-scale-1400, 56px);
716
+ }
717
+
718
+ :host(.select-label-placement-start) .label-text-wrapper,
719
+ :host(.select-label-placement-fixed) .label-text-wrapper,
720
+ :host(.select-label-placement-end) .label-text-wrapper {
721
+ grid-column: label;
722
+ }
723
+
724
+ :host(.select-label-placement-stacked) .label-text-wrapper,
725
+ :host(.select-label-placement-floating) .label-text-wrapper {
726
+ grid-column: field-start/field-end;
727
+ }
728
+
729
+ /**
730
+ * The `justify-content` property cannot serve here the way it does on a flex
731
+ * row, because grid would distribute the free space between every track,
732
+ * including the ones inside the field. So three empty tracks stand in for that
733
+ * space, and the justify property below decides which of them takes it. The
734
+ * other two collapse to `0fr`.
735
+ */
736
+ :host(.select-label-placement-start) .select-wrapper,
737
+ :host(.select-label-placement-fixed) .select-wrapper {
738
+ 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);
739
+ grid-template-rows: [label field] var(--internal-field-height, auto);
740
+ }
741
+
742
+ :host(.select-label-placement-end) .select-wrapper {
743
+ 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);
744
+ grid-template-rows: [label field] var(--internal-field-height, auto);
745
+ }
746
+
747
+ /**
748
+ * With no label there is nothing to separate the field from, so the free space
749
+ * belongs after the field instead of before it. The label's own track collapses
750
+ * on its own, but the flexible one does not.
751
+ */
752
+ :host(:not(.has-label)) .select-wrapper {
753
+ --internal-justify-gap: 0fr;
754
+ --internal-justify-trail: 1fr;
755
+ }
756
+
757
+ /**
758
+ * Each of these declares all three tracks. Declaring only the ones it moves
759
+ * would leave the others at whatever the no-label rule above set, since the
760
+ * cascade resolves per declaration and the two rules have equal specificity.
761
+ *
762
+ * Exactly one track stays flexible in every combination. That leaves no free
763
+ * space for the `justify-content` the shared stylesheet sets on the wrapper, so
764
+ * it stays inert. Leave all three at `0fr` and it starts distributing space
765
+ * between the field's own tracks.
766
+ */
767
+ :host(.select-justify-start) .select-wrapper {
768
+ --internal-justify-lead: 0fr;
769
+ --internal-justify-gap: 0fr;
770
+ --internal-justify-trail: 1fr;
771
+ }
772
+
773
+ :host(.select-justify-end) .select-wrapper {
774
+ --internal-justify-lead: 1fr;
775
+ --internal-justify-gap: 0fr;
776
+ --internal-justify-trail: 0fr;
777
+ }
778
+
779
+ /**
780
+ * This only applies with a label, because `space-between` on a flex row with one
781
+ * in-flow item behaves as start, which is what the no-label rule already gives.
782
+ */
783
+ :host(.has-label.select-justify-space-between) .select-wrapper {
784
+ --internal-justify-lead: 0fr;
785
+ --internal-justify-gap: 1fr;
786
+ --internal-justify-trail: 0fr;
787
+ }
788
+
710
789
  :host(.select-label-placement-stacked) .select-wrapper,
711
790
  :host(.select-label-placement-floating) .select-wrapper {
712
- flex-direction: column;
713
- align-items: start;
791
+ grid-template-columns: [field-start slot-start] minmax(0, auto) [native] minmax(0, 1fr) [slot-end] minmax(0, auto) [field-end];
792
+ grid-template-rows: [label] auto [field] var(--internal-field-height, auto);
714
793
  }
715
794
 
716
- .select-wrapper .select-placeholder {
717
- /**
718
- * When the floating label appears on top of the
719
- * select, we need to fade the text out so that the
720
- * label does not overlap with the placeholder.
721
- */
722
- transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
795
+ /**
796
+ * The templates above all name the same lines, so every placement shares these.
797
+ * A label with its own row lands on the label row. Otherwise that name resolves
798
+ * to the only row there is.
799
+ */
800
+ .label-text-wrapper {
801
+ grid-row: label;
802
+ }
803
+
804
+ .select-start {
805
+ grid-row: field;
806
+ grid-column: slot-start;
723
807
  }
724
808
 
725
- .select-wrapper-inner {
726
- border-radius: var(--border-radius);
809
+ .native-wrapper {
810
+ grid-row: field;
811
+ grid-column: native;
812
+ }
813
+
814
+ .select-end {
815
+ grid-row: field;
816
+ grid-column: slot-end;
817
+ }
818
+
819
+ .select-wrapper::before {
820
+ grid-row: field;
821
+ grid-column: field-start/field-end;
822
+ }
823
+
824
+ /**
825
+ * The padding sits on the cells that the field box covers, so the label is not
826
+ * indented by it.
827
+ */
828
+ .select-start {
727
829
  -webkit-padding-start: var(--padding-start);
728
830
  padding-inline-start: var(--padding-start);
831
+ padding-top: var(--padding-top);
832
+ padding-bottom: var(--padding-bottom);
833
+ }
834
+
835
+ .native-wrapper {
836
+ padding-top: var(--padding-top);
837
+ padding-bottom: var(--padding-bottom);
838
+ }
839
+
840
+ .select-end {
729
841
  -webkit-padding-end: var(--padding-end);
730
842
  padding-inline-end: var(--padding-end);
731
843
  padding-top: var(--padding-top);
732
844
  padding-bottom: var(--padding-bottom);
733
- display: flex;
734
- position: relative;
735
- align-items: center;
736
- background: var(--background);
737
- box-sizing: border-box;
845
+ }
846
+
847
+ /**
848
+ * The slot cells can shrink below their content so that oversized slotted
849
+ * content is cut off at the edge of the field instead of widening it.
850
+ */
851
+ .select-start,
852
+ .select-end {
738
853
  overflow: hidden;
739
854
  }
740
855
 
741
- :host(.select-label-placement-stacked) .select-wrapper-inner,
742
- :host(.select-label-placement-floating) .select-wrapper-inner {
743
- width: 100%;
856
+ .select-wrapper .select-placeholder {
857
+ /**
858
+ * When the floating label appears on top of the
859
+ * select, we need to fade the text out so that the
860
+ * label does not overlap with the placeholder.
861
+ */
862
+ transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
744
863
  }
745
864
 
746
865
  .native-wrapper {
866
+ 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");
747
867
  font-size: var(--token-font-size-350, 0.875rem);
748
868
  font-weight: var(--token-font-weight-regular, 400);
749
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
750
- line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
751
- text-decoration: none;
752
- text-transform: none;
869
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
870
+ line-height: var(--token-font-line-height-600, 1.5rem);
753
871
  /**
754
872
  * When the floating label appears on top of the
755
873
  * input, we need to fade the input out so that the
756
874
  * label does not overlap with the placeholder.
757
875
  */
758
876
  transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
759
- color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
760
- }
761
-
762
- :host(.select-label-placement-stacked) .native-wrapper,
763
- :host(.select-label-placement-floating) .native-wrapper {
764
- /**
765
- * Text should not extend beyond the bounds of the select.
766
- * This is done by setting the width to the full width minus
767
- * the icon width and the gap between the icon and the text.
768
- */
769
- width: calc(100% - var(--token-scale-400, 16px) - var(--token-space-200, var(--token-scale-200, 8px)));
877
+ color: var(--token-text-default, var(--token-primitives-neutral-1200, #242528));
770
878
  }
771
879
 
772
880
  /**
@@ -808,11 +916,23 @@ button {
808
916
  margin-top: 0;
809
917
  margin-bottom: 0;
810
918
  transition: transform 0.15s var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
811
- color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
919
+ color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #6c727a));
920
+ }
921
+
922
+ /**
923
+ * The icon renders inside the end container for floating and stacked labels and
924
+ * inside the native wrapper otherwise, the structure BREAKING.md documents for
925
+ * v9. Using `order` moves it past the slotted end content so the chevron stays
926
+ * on the field's trailing edge. The other themes leave it ahead of that
927
+ * content.
928
+ */
929
+ :host(.select-label-placement-stacked) .select-icon,
930
+ :host(.select-label-placement-floating) .select-icon {
931
+ order: 1;
812
932
  }
813
933
 
814
934
  :host(.has-value) .select-icon {
815
- color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #3b3b3b));
935
+ color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #383e45));
816
936
  }
817
937
 
818
938
  /**
@@ -825,18 +945,18 @@ button {
825
945
  }
826
946
 
827
947
  :host(.select-fill-solid) {
828
- --background: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #eae9e9));
948
+ --background: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #ebeef2));
829
949
  }
830
950
 
831
951
  :host(.select-disabled) {
832
- --background: var(--token-primitives-neutral-100, #f3f3f3);
833
- --border-color: var(--token-primitives-neutral-300, #e0e0e0);
952
+ --background: var(--token-primitives-neutral-100, #f6f7fa);
953
+ --border-color: var(--token-primitives-neutral-300, #e6eaee);
834
954
  }
835
955
 
836
956
  :host(.select-disabled) .label-text-wrapper,
837
957
  :host(.select-disabled) .select-text,
838
958
  :host(.select-disabled) .select-icon {
839
- color: var(--token-primitives-neutral-500, #a2a2a2);
959
+ color: var(--token-primitives-neutral-500, #9fa5ad);
840
960
  }
841
961
 
842
962
  :host(.select-shape-soft) {
@@ -849,16 +969,4 @@ button {
849
969
 
850
970
  :host(.select-shape-rectangular) {
851
971
  --border-radius: var(--token-border-radius-0, var(--token-scale-0, 0px));
852
- }
853
-
854
- :host(.select-size-small) .select-wrapper-inner {
855
- height: var(--token-scale-1000, 40px);
856
- }
857
-
858
- :host(.select-size-medium) .select-wrapper-inner {
859
- height: var(--token-scale-1200, 48px);
860
- }
861
-
862
- :host(.select-size-large) .select-wrapper-inner {
863
- height: var(--token-scale-1400, 56px);
864
972
  }
@@ -1,7 +1,6 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import caretDownRegular from "@phosphor-icons/core/assets/regular/caret-down.svg";
5
4
  import { Build, Host, h, forceUpdate } from "@stencil/core";
6
5
  import { ENABLE_HTML_CONTENT_DEFAULT } from "../../utils/config";
7
6
  import { compareOptions, createNotchController, createStartContainerController, isOptionSelected, checkInvalidState, } from "../../utils/forms/index";
@@ -36,9 +35,8 @@ import { getIonTheme } from "../../global/ionic-global";
36
35
  * @part bottom - The container element for helper text, error text, and counter.
37
36
  * @part wrapper - The clickable label element that wraps the entire form field (label text, slots, selected values or placeholder, and toggle icons).
38
37
  * @part start - The wrapper element for the content in the start slot.
39
- * @part control - The wrapper element containing the native select control. In the `"ios"` and `"md"` themes it also contains the label, and the dropdown icon when the label is not floating or stacked.
40
- * @part end - The wrapper element for the content in the end slot. In the `"ios"` and `"md"` themes it also contains the dropdown icon when the label is floating or stacked.
41
- * @part inner - The wrapper element containing the start, control and end wrappers and the dropdown icon. Only rendered in the `"ionic"` theme.
38
+ * @part control - The wrapper element containing the label, the native select control, and the dropdown icon when the label is not floating or stacked. The `"ionic"` theme flattens this wrapper, so it cannot be given a box of its own there.
39
+ * @part end - The wrapper element for the content in the end slot. It also contains the dropdown icon when the label is floating or stacked.
42
40
  */
43
41
  export class Select {
44
42
  constructor() {
@@ -834,24 +832,13 @@ export class Select {
834
832
  renderStartContainer() {
835
833
  return (h("div", { key: "start", class: "select-start", part: "start", ref: (el) => (this.startContainerEl = el) }, h("slot", { name: "start" })));
836
834
  }
837
- renderNativeWrapper() {
838
- return (h("div", { class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()));
839
- }
840
- /**
841
- * The ionic theme keeps the label above a field box that wraps the slots and
842
- * the control, so the label can size independently of the slotted content.
843
- */
844
- renderIonicField() {
845
- return [
846
- this.renderLabel(),
847
- h("div", { key: "inner", class: "select-wrapper-inner", part: "inner" }, this.fill === 'outline' && h("div", { key: "outline", class: "select-outline" }), this.renderStartContainer(), h("div", { key: "control", class: "select-control", part: "control" }, this.renderNativeWrapper()), h("div", { key: "end", class: "select-end", part: "end" }, h("slot", { name: "end" })), this.renderSelectIcon()),
848
- ];
849
- }
850
835
  /**
851
- * The ios and md themes nest the label alongside the control so a floating
852
- * label can escape it and clear the start and end slots.
836
+ * Every theme renders the same label and control structure, aside from the md
837
+ * outline container below. The label is nested alongside the control so the
838
+ * ios and md floating label can escape it and clear the start and end slots.
839
+ * The ionic theme lifts it outside the field with grid instead.
853
840
  */
854
- renderNativeField() {
841
+ renderField() {
855
842
  const { fill, labelPlacement } = this;
856
843
  const hasOutlineFill = getIonTheme(this) === 'md' && fill === 'outline';
857
844
  const hasFloatingOrStackedLabel = labelPlacement === 'floating' || labelPlacement === 'stacked';
@@ -993,16 +980,9 @@ export class Select {
993
980
  else if (this.toggleIcon != null) {
994
981
  return this.toggleIcon;
995
982
  }
996
- // Determine the theme and map to default icons
983
+ // Determine the theme and map to the default icon
997
984
  const theme = getIonTheme(this);
998
- const defaultIcons = {
999
- ios: chevronExpand,
1000
- ionic: caretDownRegular,
1001
- md: caretDownSharp,
1002
- };
1003
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
1004
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
1005
- // Return the configured select expanded icon or the default icon
985
+ const defaultIcon = theme === 'ios' ? chevronExpand : caretDownSharp;
1006
986
  return config.get('selectExpandedIcon', defaultIcon);
1007
987
  }
1008
988
  /**
@@ -1016,15 +996,9 @@ export class Select {
1016
996
  if (this.toggleIcon) {
1017
997
  return this.toggleIcon;
1018
998
  }
1019
- // Determine the theme and map to default icons
999
+ // Determine the theme and map to the default icon
1020
1000
  const theme = getIonTheme(this);
1021
- const defaultIcons = {
1022
- ios: chevronExpand,
1023
- ionic: caretDownRegular,
1024
- md: caretDownSharp,
1025
- };
1026
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
1027
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
1001
+ const defaultIcon = theme === 'ios' ? chevronExpand : caretDownSharp;
1028
1002
  return config.get('selectCollapsedIcon', defaultIcon);
1029
1003
  }
1030
1004
  getHintTextId() {
@@ -1076,7 +1050,7 @@ export class Select {
1076
1050
  const hasValue = this.hasValue();
1077
1051
  renderHiddenInput(true, el, name, parseValue(value), disabled);
1078
1052
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || isExpanded));
1079
- return (h(Host, { key: '1169073985fabca41a2c0a15f07d155a19fd1197', onClick: this.onClick, class: createColorClasses(this.color, {
1053
+ return (h(Host, { key: 'd6d5a554df0aabf73531762d3e8f7f7757f1dd7e', onClick: this.onClick, class: createColorClasses(this.color, {
1080
1054
  [theme]: true,
1081
1055
  'in-item': inItem,
1082
1056
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -1085,6 +1059,7 @@ export class Select {
1085
1059
  'has-expanded-icon': expandedIcon !== undefined,
1086
1060
  'has-value': hasValue,
1087
1061
  'label-floating': labelShouldFloat,
1062
+ 'has-label': this.hasLabel,
1088
1063
  'has-placeholder': placeholder !== undefined,
1089
1064
  'has-focus': hasFocus,
1090
1065
  // TODO(FW-6451): Remove `ion-focusable` class in favor of `has-focus`.
@@ -1095,7 +1070,7 @@ export class Select {
1095
1070
  [`select-shape-${shape}`]: shape !== undefined,
1096
1071
  [`select-label-placement-${labelPlacement}`]: true,
1097
1072
  [`select-size-${size}`]: size !== undefined,
1098
- }) }, h("label", { key: 'b384d441d2dcaff191d978ce7ee1fb2a4dd74545', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick, part: "wrapper" }, theme === 'ionic' ? this.renderIonicField() : this.renderNativeField(), shouldRenderHighlight && h("div", { key: '114d10e8e1aaa6fda0b9a6b35de52b37afe79b25', class: "select-highlight" })), this.renderBottomContent()));
1073
+ }) }, h("label", { key: '9ef1351faed0a57fc0911705102dd115ca72ed48', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick, part: "wrapper" }, this.renderField(), shouldRenderHighlight && h("div", { key: '7f384deb139daec2556636fa07d6a384da04b437', class: "select-highlight" })), this.renderBottomContent()));
1099
1074
  }
1100
1075
  static get is() { return "ion-select"; }
1101
1076
  static get encapsulation() { return "shadow"; }
@@ -74,19 +74,18 @@
74
74
  }
75
75
 
76
76
  .select-option-description {
77
+ 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");
77
78
  font-size: var(--token-font-size-350, 0.875rem);
78
79
  font-weight: var(--token-font-weight-regular, 400);
79
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
80
- line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
81
- text-decoration: none;
82
- text-transform: none;
80
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
81
+ line-height: var(--token-font-line-height-600, 1.5rem);
83
82
  -webkit-padding-start: var(--token-space-0, var(--token-scale-0, 0px));
84
83
  padding-inline-start: var(--token-space-0, var(--token-scale-0, 0px));
85
84
  -webkit-padding-end: var(--token-space-0, var(--token-scale-0, 0px));
86
85
  padding-inline-end: var(--token-space-0, var(--token-scale-0, 0px));
87
86
  padding-top: var(--token-space-0, var(--token-scale-0, 0px));
88
87
  padding-bottom: var(--token-space-0, var(--token-scale-0, 0px));
89
- color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #3b3b3b));
88
+ color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #383e45));
90
89
  font-size: var(--token-font-size-350, 0.875rem);
91
90
  }
92
91
 
@@ -197,20 +196,19 @@ ion-item {
197
196
  --border-width: var(--token-border-size-0, var(--token-scale-0, 0px));
198
197
  --background-focused: transparent;
199
198
  --background-focused-opacity: 1;
200
- --background-hover: var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #eae9e9));
199
+ --background-hover: var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));
201
200
  --background-hover-opacity: 1;
202
- --background-activated: var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #eae9e9));
201
+ --background-activated: var(--token-bg-neutral-subtlest-press, var(--token-primitives-neutral-200, #ebeef2));
203
202
  --background-activated-opacity: 1;
204
203
  --border-radius: var(--token-border-radius-400, var(--token-scale-400, 16px));
205
204
  }
206
205
 
207
206
  ion-toolbar {
207
+ 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");
208
208
  font-size: var(--token-font-size-450, 1.125rem);
209
209
  font-weight: var(--token-font-weight-medium, 500);
210
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
211
- line-height: var(--token-font-line-height-700, var(--token-scale-700, 28px));
212
- text-decoration: none;
213
- text-transform: none;
210
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
211
+ line-height: var(--token-font-line-height-700, 1.75rem);
214
212
  }
215
213
 
216
214
  ion-list ion-radio::part(container) {
@@ -228,17 +226,16 @@ ion-list ion-radio::part(label) {
228
226
 
229
227
  ion-list ion-radio::part(label),
230
228
  ion-list ion-checkbox::part(label) {
229
+ 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");
231
230
  font-size: var(--token-font-size-400, 1rem);
232
231
  font-weight: var(--token-font-weight-medium, 500);
233
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
234
- line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
235
- text-decoration: none;
236
- text-transform: none;
232
+ letter-spacing: var(--token-font-letter-spacing-0, 0);
233
+ line-height: var(--token-font-line-height-600, 1.5rem);
237
234
  }
238
235
 
239
236
  .item-radio-checked,
240
237
  .item-checkbox-checked {
241
- --background: var(--token-bg-primary-subtle-default, var(--token-semantics-primary-100, var(--token-primitives-blue-100, #e9ecfc)));
238
+ --background: var(--token-bg-primary-subtle-default, var(--token-semantics-primary-100, var(--token-primitives-blue-100, #f0f2ff)));
242
239
  }
243
240
 
244
241
  ion-content {