@ionic/core 8.7.13-dev.11765925297.1bb45463 → 8.7.13-dev.11766069240.1ab3dde2

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 (953) hide show
  1. package/components/action-sheet.js +11 -15
  2. package/components/alert.js +11 -14
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +6 -9
  5. package/components/button.js +10 -41
  6. package/components/buttons.js +8 -11
  7. package/components/capacitor.js +1 -1
  8. package/components/checkbox.js +12 -31
  9. package/components/content.js +12 -14
  10. package/components/data.js +5 -5
  11. package/components/focus-visible.js +1 -23
  12. package/components/framework-delegate.js +1 -3
  13. package/components/hardware-back-button.js +115 -0
  14. package/components/header.js +22 -34
  15. package/components/helpers.js +4 -57
  16. package/components/index5.js +8 -8
  17. package/components/index6.js +1 -1
  18. package/components/index7.js +150 -111
  19. package/components/index8.js +111 -150
  20. package/components/index9.js +7 -0
  21. package/components/input-shims.js +2 -2
  22. package/components/input.utils.js +1 -1
  23. package/components/ion-accordion-group.js +5 -23
  24. package/components/ion-accordion.js +21 -32
  25. package/components/ion-app.js +77 -12
  26. package/components/ion-avatar.js +5 -58
  27. package/components/ion-back-button.js +19 -27
  28. package/components/ion-badge.js +9 -73
  29. package/components/ion-breadcrumb.js +10 -43
  30. package/components/ion-breadcrumbs.js +5 -8
  31. package/components/ion-card-content.js +7 -10
  32. package/components/ion-card-header.js +6 -9
  33. package/components/ion-card-subtitle.js +5 -8
  34. package/components/ion-card-title.js +5 -8
  35. package/components/ion-card.js +9 -21
  36. package/components/ion-chip.js +8 -53
  37. package/components/ion-col.js +50 -51
  38. package/components/ion-datetime-button.js +5 -8
  39. package/components/ion-datetime.js +21 -98
  40. package/components/ion-fab-button.js +15 -31
  41. package/components/ion-fab-list.js +5 -5
  42. package/components/ion-fab.js +6 -6
  43. package/components/ion-footer.js +13 -18
  44. package/components/ion-grid.js +5 -5
  45. package/components/ion-img.js +2 -5
  46. package/components/ion-infinite-scroll-content.js +8 -11
  47. package/components/ion-infinite-scroll.js +6 -78
  48. package/components/ion-input-otp.js +6 -9
  49. package/components/ion-input-password-toggle.js +13 -51
  50. package/components/ion-input.js +28 -120
  51. package/components/ion-item-divider.js +5 -8
  52. package/components/ion-item-group.js +5 -8
  53. package/components/ion-item-option.js +9 -36
  54. package/components/ion-item-options.js +7 -10
  55. package/components/ion-item-sliding.js +5 -5
  56. package/components/ion-loading.js +9 -12
  57. package/components/ion-menu-button.js +10 -26
  58. package/components/ion-menu-toggle.js +5 -5
  59. package/components/ion-menu.js +8 -10
  60. package/components/ion-nav-link.js +1 -1
  61. package/components/ion-nav.js +5 -7
  62. package/components/ion-note.js +5 -8
  63. package/components/ion-picker-legacy.js +7 -7
  64. package/components/ion-progress-bar.js +7 -25
  65. package/components/ion-range.js +9 -12
  66. package/components/ion-refresher-content.js +8 -23
  67. package/components/ion-refresher.js +7 -10
  68. package/components/ion-reorder-group.js +5 -5
  69. package/components/ion-reorder.js +5 -30
  70. package/components/ion-router-link.js +6 -6
  71. package/components/ion-router-outlet.js +4 -4
  72. package/components/ion-row.js +3 -6
  73. package/components/ion-searchbar.js +23 -137
  74. package/components/ion-segment-button.js +7 -10
  75. package/components/ion-segment-content.js +1 -1
  76. package/components/ion-segment-view.js +2 -5
  77. package/components/ion-segment.js +7 -10
  78. package/components/ion-select-option.js +2 -5
  79. package/components/ion-select.js +33 -117
  80. package/components/ion-skeleton-text.js +5 -5
  81. package/components/ion-split-pane.js +8 -11
  82. package/components/ion-tab-bar.js +9 -39
  83. package/components/ion-tab-button.js +8 -35
  84. package/components/ion-tab.js +2 -2
  85. package/components/ion-tabs.js +2 -2
  86. package/components/ion-text.js +5 -5
  87. package/components/ion-textarea.js +19 -112
  88. package/components/ion-thumbnail.js +2 -5
  89. package/components/ion-toast.js +12 -37
  90. package/components/ion-toggle.js +17 -74
  91. package/components/ionic-global.js +15 -349
  92. package/components/ios.transition.js +0 -1
  93. package/components/item.js +15 -47
  94. package/components/keyboard-controller.js +2 -4
  95. package/components/label.js +5 -8
  96. package/components/list-header.js +7 -10
  97. package/components/list.js +6 -27
  98. package/components/modal.js +20 -48
  99. package/components/notch-controller.js +1 -1
  100. package/components/overlays.js +6 -96
  101. package/components/picker-column-option.js +5 -8
  102. package/components/picker-column.js +8 -7
  103. package/components/picker-column2.js +4 -4
  104. package/components/picker.js +4 -7
  105. package/components/popover.js +9 -12
  106. package/components/radio-group.js +7 -15
  107. package/components/radio.js +8 -11
  108. package/components/ripple-effect.js +7 -15
  109. package/components/select-modal.js +5 -12
  110. package/components/select-popover.js +2 -8
  111. package/components/spinner.js +8 -31
  112. package/components/status-tap.js +1 -1
  113. package/components/title.js +7 -10
  114. package/components/toolbar.js +9 -153
  115. package/components/validity.js +1 -32
  116. package/css/core.css +1 -1
  117. package/css/core.css.map +1 -1
  118. package/css/display.css +1 -1
  119. package/css/display.css.map +1 -1
  120. package/css/flex-utils.css +1 -1
  121. package/css/flex-utils.css.map +1 -1
  122. package/css/float-elements.css.map +1 -1
  123. package/css/global.bundle.css.map +1 -1
  124. package/css/ionic-swiper.css +1 -1
  125. package/css/ionic-swiper.css.map +1 -1
  126. package/css/ionic.bundle.css +1 -1
  127. package/css/ionic.bundle.css.map +1 -1
  128. package/css/normalize.css.map +1 -1
  129. package/css/padding.css.map +1 -1
  130. package/css/palettes/dark.always.css.map +1 -1
  131. package/css/palettes/dark.class.css.map +1 -1
  132. package/css/palettes/dark.system.css.map +1 -1
  133. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  134. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  135. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  136. package/css/palettes/high-contrast.always.css.map +1 -1
  137. package/css/palettes/high-contrast.class.css.map +1 -1
  138. package/css/palettes/high-contrast.system.css.map +1 -1
  139. package/css/structure.css.map +1 -1
  140. package/css/text-alignment.css.map +1 -1
  141. package/css/text-transformation.css.map +1 -1
  142. package/css/typography.css.map +1 -1
  143. package/css/utils.bundle.css +1 -1
  144. package/css/utils.bundle.css.map +1 -1
  145. package/dist/cjs/{animation-BBT4oe7B.js → animation-Bt3H9L1C.js} +3 -3
  146. package/dist/cjs/{app-globals-DjZzKNoV.js → app-globals-Ciccnk9_.js} +1 -1
  147. package/dist/cjs/{button-active-DQ3Dd_Zw.js → button-active-CMc8cD90.js} +2 -2
  148. package/dist/cjs/{capacitor-G2rS2zAS.js → capacitor-DmA66EwP.js} +3 -3
  149. package/dist/cjs/{config-CPCkFfH2.js → config-C5fsO43a.js} +1 -1
  150. package/dist/cjs/{data-BpYscHnl.js → data-JwZKaIQB.js} +6 -6
  151. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  152. package/dist/cjs/{framework-delegate-C7fZ8bup.js → framework-delegate-DMJRBuDi.js} +2 -4
  153. package/dist/cjs/{haptic-CYXFB5MG.js → haptic-ClPPQ_PS.js} +1 -1
  154. package/dist/cjs/hardware-back-button-VCK4V3mG.js +121 -0
  155. package/dist/cjs/{helpers-DF1tCuxf.js → helpers-DrTqNghc.js} +4 -57
  156. package/dist/cjs/{index-BIUQBJ4M.js → index-094mMFB-.js} +4 -4
  157. package/dist/cjs/{index-h_4y8nIV.js → index-C534ULug.js} +8 -9
  158. package/dist/cjs/{index-C2sRwpb7.js → index-CO6eryBo.js} +2 -2
  159. package/dist/cjs/{index-DjlJwy91.js → index-D6Wc6v08.js} +4 -41
  160. package/dist/cjs/index-DkNv4J_i.js +10 -0
  161. package/dist/cjs/{index-BsTUIYWV.js → index-DrMUZJj6.js} +15 -15
  162. package/dist/cjs/index.cjs.js +13 -12
  163. package/dist/cjs/{input-shims-co__iqWN.js → input-shims-CW0KUFTQ.js} +17 -18
  164. package/dist/cjs/{input.utils-DyXMjrIY.js → input.utils-B_QROI2g.js} +5 -5
  165. package/dist/cjs/ion-accordion_2.cjs.entry.js +27 -56
  166. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -24
  167. package/dist/cjs/ion-alert.cjs.entry.js +22 -24
  168. package/dist/cjs/ion-app_8.cjs.entry.js +151 -250
  169. package/dist/cjs/ion-avatar_3.cjs.entry.js +12 -124
  170. package/dist/cjs/ion-back-button.cjs.entry.js +20 -29
  171. package/dist/cjs/ion-backdrop.cjs.entry.js +7 -10
  172. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +16 -52
  173. package/dist/cjs/ion-button_2.cjs.entry.js +12 -44
  174. package/dist/cjs/ion-card_5.cjs.entry.js +30 -54
  175. package/dist/cjs/ion-checkbox.cjs.entry.js +15 -33
  176. package/dist/cjs/ion-chip.cjs.entry.js +8 -49
  177. package/dist/cjs/ion-col_3.cjs.entry.js +57 -54
  178. package/dist/cjs/ion-datetime-button.cjs.entry.js +8 -12
  179. package/dist/cjs/ion-datetime_3.cjs.entry.js +39 -114
  180. package/dist/cjs/ion-fab_3.cjs.entry.js +26 -42
  181. package/dist/cjs/ion-img.cjs.entry.js +4 -8
  182. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -91
  183. package/dist/cjs/ion-input-otp.cjs.entry.js +8 -12
  184. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +13 -51
  185. package/dist/cjs/ion-input.cjs.entry.js +32 -122
  186. package/dist/cjs/ion-item-option_3.cjs.entry.js +20 -49
  187. package/dist/cjs/ion-item_8.cjs.entry.js +47 -114
  188. package/dist/cjs/ion-loading.cjs.entry.js +17 -19
  189. package/dist/cjs/ion-menu_3.cjs.entry.js +27 -45
  190. package/dist/cjs/ion-modal.cjs.entry.js +69 -96
  191. package/dist/cjs/ion-nav_2.cjs.entry.js +11 -14
  192. package/dist/cjs/ion-picker-column-option.cjs.entry.js +7 -11
  193. package/dist/cjs/ion-picker-column.cjs.entry.js +13 -13
  194. package/dist/cjs/ion-picker.cjs.entry.js +6 -10
  195. package/dist/cjs/ion-popover.cjs.entry.js +17 -19
  196. package/dist/cjs/ion-progress-bar.cjs.entry.js +8 -26
  197. package/dist/cjs/ion-radio_2.cjs.entry.js +16 -26
  198. package/dist/cjs/ion-range.cjs.entry.js +11 -15
  199. package/dist/cjs/ion-refresher_2.cjs.entry.js +20 -38
  200. package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -37
  201. package/dist/cjs/ion-ripple-effect.cjs.entry.js +7 -15
  202. package/dist/cjs/ion-route_4.cjs.entry.js +8 -9
  203. package/dist/cjs/ion-searchbar.cjs.entry.js +22 -135
  204. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  205. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -6
  206. package/dist/cjs/ion-segment_2.cjs.entry.js +15 -22
  207. package/dist/cjs/ion-select-modal.cjs.entry.js +10 -16
  208. package/dist/cjs/ion-select_3.cjs.entry.js +40 -131
  209. package/dist/cjs/ion-spinner.cjs.entry.js +7 -29
  210. package/dist/cjs/ion-split-pane.cjs.entry.js +9 -12
  211. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +22 -76
  212. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -8
  213. package/dist/cjs/ion-text.cjs.entry.js +6 -6
  214. package/dist/cjs/ion-textarea.cjs.entry.js +22 -117
  215. package/dist/cjs/ion-toast.cjs.entry.js +44 -67
  216. package/dist/cjs/ion-toggle.cjs.entry.js +23 -80
  217. package/dist/cjs/ionic-global-HMVqOFGO.js +151 -0
  218. package/dist/cjs/ionic.cjs.js +4 -4
  219. package/dist/cjs/{ios.transition-cjE5173V.js → ios.transition-BOt_uW73.js} +5 -7
  220. package/dist/cjs/{keyboard-BiIvvomq.js → keyboard-UuAS4D_9.js} +1 -1
  221. package/dist/cjs/{keyboard-controller-5GsVQphE.js → keyboard-controller-GXBiBRKS.js} +9 -11
  222. package/dist/cjs/{keyboard-Dxl3DPOc.js → keyboard-hHzlEQpk.js} +3 -4
  223. package/dist/cjs/loader.cjs.js +4 -4
  224. package/dist/cjs/{md.transition-ChCLDEkm.js → md.transition-Dt968VXB.js} +5 -6
  225. package/dist/cjs/{notch-controller-BGNMnptF.js → notch-controller-Bzqhjm4f.js} +4 -4
  226. package/dist/cjs/{overlays-DPjo0yW3.js → overlays--dagG4QM.js} +12 -102
  227. package/dist/cjs/{status-tap-BLw3gi_z.js → status-tap-g0sWWkXk.js} +3 -4
  228. package/dist/cjs/{swipe-back-BD2lWufH.js → swipe-back-BIayeNOD.js} +2 -3
  229. package/dist/cjs/validity-BpS37YFM.js +19 -0
  230. package/dist/collection/collection-manifest.json +0 -1
  231. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  232. package/dist/collection/components/accordion/accordion.js +26 -36
  233. package/dist/collection/components/accordion/accordion.md.css +59 -67
  234. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  235. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  236. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  237. package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
  238. package/dist/collection/components/action-sheet/action-sheet.js +13 -17
  239. package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
  240. package/dist/collection/components/alert/alert.ios.css +1 -19
  241. package/dist/collection/components/alert/alert.js +13 -16
  242. package/dist/collection/components/alert/alert.md.css +1 -19
  243. package/dist/collection/components/app/app.js +78 -15
  244. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  245. package/dist/collection/components/avatar/avatar.js +4 -120
  246. package/dist/collection/components/avatar/avatar.md.css +0 -51
  247. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  248. package/dist/collection/components/back-button/back-button.js +19 -27
  249. package/dist/collection/components/back-button/back-button.md.css +48 -60
  250. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  251. package/dist/collection/components/backdrop/backdrop.js +6 -12
  252. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  253. package/dist/collection/components/badge/badge.ios.css +12 -139
  254. package/dist/collection/components/badge/badge.js +9 -145
  255. package/dist/collection/components/badge/badge.md.css +12 -123
  256. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  257. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  258. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  259. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  260. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  261. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  262. package/dist/collection/components/button/button.ios.css +46 -135
  263. package/dist/collection/components/button/button.js +17 -48
  264. package/dist/collection/components/button/button.md.css +50 -126
  265. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  266. package/dist/collection/components/buttons/buttons.js +9 -15
  267. package/dist/collection/components/buttons/buttons.md.css +3 -55
  268. package/dist/collection/components/card/card.ios.css +14 -65
  269. package/dist/collection/components/card/card.js +10 -41
  270. package/dist/collection/components/card/card.md.css +14 -65
  271. package/dist/collection/components/card-content/card-content.ios.css +1 -16
  272. package/dist/collection/components/card-content/card-content.js +8 -11
  273. package/dist/collection/components/card-content/card-content.md.css +1 -16
  274. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  275. package/dist/collection/components/card-header/card-header.js +10 -13
  276. package/dist/collection/components/card-header/card-header.md.css +15 -27
  277. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  278. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  279. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  280. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  281. package/dist/collection/components/card-title/card-title.js +8 -11
  282. package/dist/collection/components/card-title/card-title.md.css +0 -73
  283. package/dist/collection/components/checkbox/checkbox.ios.css +101 -161
  284. package/dist/collection/components/checkbox/checkbox.js +14 -70
  285. package/dist/collection/components/checkbox/checkbox.md.css +102 -162
  286. package/dist/collection/components/chip/chip.ios.css +14 -67
  287. package/dist/collection/components/chip/chip.js +8 -108
  288. package/dist/collection/components/chip/chip.md.css +14 -67
  289. package/dist/collection/components/col/col.css +4 -192
  290. package/dist/collection/components/col/col.js +61 -210
  291. package/dist/collection/components/content/content.css +2 -8
  292. package/dist/collection/components/content/content.js +11 -16
  293. package/dist/collection/components/datetime/datetime.ios.css +96 -258
  294. package/dist/collection/components/datetime/datetime.js +20 -98
  295. package/dist/collection/components/datetime/datetime.md.css +96 -258
  296. package/dist/collection/components/datetime/utils/data.js +5 -5
  297. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  298. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  299. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  300. package/dist/collection/components/fab/fab.css +1 -25
  301. package/dist/collection/components/fab/fab.js +5 -9
  302. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  303. package/dist/collection/components/fab-button/fab-button.js +21 -36
  304. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  305. package/dist/collection/components/fab-list/fab-list.css +0 -12
  306. package/dist/collection/components/fab-list/fab-list.js +5 -9
  307. package/dist/collection/components/footer/footer.ios.css +2 -14
  308. package/dist/collection/components/footer/footer.js +16 -21
  309. package/dist/collection/components/footer/footer.md.css +0 -12
  310. package/dist/collection/components/grid/grid.css +0 -12
  311. package/dist/collection/components/grid/grid.js +5 -9
  312. package/dist/collection/components/header/header.ios.css +10 -25
  313. package/dist/collection/components/header/header.js +19 -50
  314. package/dist/collection/components/header/header.md.css +8 -23
  315. package/dist/collection/components/header/header.utils.js +5 -5
  316. package/dist/collection/components/img/img.js +2 -8
  317. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  318. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  319. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  320. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  321. package/dist/collection/components/input/input.ios.css +140 -223
  322. package/dist/collection/components/input/input.js +38 -149
  323. package/dist/collection/components/input/input.md.css +212 -193
  324. package/dist/collection/components/input-otp/input-otp.ios.css +60 -102
  325. package/dist/collection/components/input-otp/input-otp.js +5 -7
  326. package/dist/collection/components/input-otp/input-otp.md.css +60 -102
  327. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  328. package/dist/collection/components/item/item.ios.css +69 -109
  329. package/dist/collection/components/item/item.js +20 -51
  330. package/dist/collection/components/item/item.md.css +68 -120
  331. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  332. package/dist/collection/components/item-divider/item-divider.js +8 -11
  333. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  334. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  335. package/dist/collection/components/item-group/item-group.js +7 -13
  336. package/dist/collection/components/item-group/item-group.md.css +0 -12
  337. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  338. package/dist/collection/components/item-option/item-option.js +9 -73
  339. package/dist/collection/components/item-option/item-option.md.css +29 -136
  340. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  341. package/dist/collection/components/item-options/item-options.js +7 -13
  342. package/dist/collection/components/item-options/item-options.md.css +34 -77
  343. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  344. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  345. package/dist/collection/components/label/label.ios.css +0 -18
  346. package/dist/collection/components/label/label.js +8 -11
  347. package/dist/collection/components/label/label.md.css +0 -18
  348. package/dist/collection/components/list/list.ios.css +14 -54
  349. package/dist/collection/components/list/list.js +9 -48
  350. package/dist/collection/components/list/list.md.css +16 -56
  351. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  352. package/dist/collection/components/list-header/list-header.js +8 -11
  353. package/dist/collection/components/list-header/list-header.md.css +38 -82
  354. package/dist/collection/components/loading/loading.ios.css +1 -13
  355. package/dist/collection/components/loading/loading.js +11 -14
  356. package/dist/collection/components/loading/loading.md.css +1 -13
  357. package/dist/collection/components/menu/menu.ios.css +3 -15
  358. package/dist/collection/components/menu/menu.js +7 -12
  359. package/dist/collection/components/menu/menu.md.css +3 -15
  360. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  361. package/dist/collection/components/menu-button/menu-button.js +10 -26
  362. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  363. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  364. package/dist/collection/components/modal/animations/sheet.js +2 -8
  365. package/dist/collection/components/modal/gestures/sheet.js +6 -10
  366. package/dist/collection/components/modal/modal.ios.css +70 -174
  367. package/dist/collection/components/modal/modal.js +11 -48
  368. package/dist/collection/components/modal/modal.md.css +70 -174
  369. package/dist/collection/components/nav/nav.css +1 -7
  370. package/dist/collection/components/nav/nav.js +5 -11
  371. package/dist/collection/components/nav-link/nav-link.js +1 -5
  372. package/dist/collection/components/note/note.ios.css +0 -12
  373. package/dist/collection/components/note/note.js +8 -11
  374. package/dist/collection/components/note/note.md.css +0 -12
  375. package/dist/collection/components/picker/picker.ios.css +3 -15
  376. package/dist/collection/components/picker/picker.js +5 -8
  377. package/dist/collection/components/picker/picker.md.css +3 -15
  378. package/dist/collection/components/picker-column/picker-column.css +2 -9
  379. package/dist/collection/components/picker-column/picker-column.js +7 -8
  380. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  381. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  382. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  383. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  384. package/dist/collection/components/picker-legacy/picker.js +6 -7
  385. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  386. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  387. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  388. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  389. package/dist/collection/components/popover/popover.ios.css +1 -13
  390. package/dist/collection/components/popover/popover.js +14 -17
  391. package/dist/collection/components/popover/popover.md.css +1 -13
  392. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  393. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  394. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  395. package/dist/collection/components/radio/radio.ios.css +91 -134
  396. package/dist/collection/components/radio/radio.js +9 -12
  397. package/dist/collection/components/radio/radio.md.css +91 -134
  398. package/dist/collection/components/radio-group/radio-group.ios.css +23 -43
  399. package/dist/collection/components/radio-group/radio-group.js +6 -21
  400. package/dist/collection/components/radio-group/radio-group.md.css +23 -43
  401. package/dist/collection/components/range/range.ios.css +85 -128
  402. package/dist/collection/components/range/range.js +9 -12
  403. package/dist/collection/components/range/range.md.css +85 -128
  404. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  405. package/dist/collection/components/refresher/refresher.js +8 -11
  406. package/dist/collection/components/refresher/refresher.md.css +2 -15
  407. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  408. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  409. package/dist/collection/components/reorder/reorder.js +6 -33
  410. package/dist/collection/components/reorder/reorder.md.css +0 -6
  411. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  412. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  413. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  414. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  415. package/dist/collection/components/route/route.js +0 -4
  416. package/dist/collection/components/router/router.js +0 -4
  417. package/dist/collection/components/router-link/router-link.css +2 -8
  418. package/dist/collection/components/router-link/router-link.js +5 -9
  419. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  420. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  421. package/dist/collection/components/row/row.css +0 -16
  422. package/dist/collection/components/row/row.js +2 -9
  423. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  424. package/dist/collection/components/searchbar/searchbar.js +34 -181
  425. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  426. package/dist/collection/components/segment/segment.ios.css +2 -45
  427. package/dist/collection/components/segment/segment.js +8 -11
  428. package/dist/collection/components/segment/segment.md.css +2 -45
  429. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  430. package/dist/collection/components/segment-button/segment-button.js +8 -11
  431. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  432. package/dist/collection/components/segment-content/segment-content.js +1 -1
  433. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  434. package/dist/collection/components/segment-view/segment-view.js +4 -6
  435. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  436. package/dist/collection/components/select/select.ios.css +176 -315
  437. package/dist/collection/components/select/select.js +53 -156
  438. package/dist/collection/components/select/select.md.css +178 -331
  439. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  440. package/dist/collection/components/select-modal/select-modal.js +4 -11
  441. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  442. package/dist/collection/components/select-option/select-option.js +2 -9
  443. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  444. package/dist/collection/components/select-popover/select-popover.js +4 -12
  445. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  446. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  447. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  448. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  449. package/dist/collection/components/spinner/spinner.js +6 -47
  450. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  451. package/dist/collection/components/split-pane/split-pane.js +8 -14
  452. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  453. package/dist/collection/components/tab/tab.js +2 -6
  454. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  455. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  456. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  457. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  458. package/dist/collection/components/tab-button/tab-button.js +9 -54
  459. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  460. package/dist/collection/components/tabs/tabs.css +1 -7
  461. package/dist/collection/components/tabs/tabs.js +1 -4
  462. package/dist/collection/components/text/text.css +0 -6
  463. package/dist/collection/components/text/text.js +6 -7
  464. package/dist/collection/components/textarea/textarea.ios.css +142 -283
  465. package/dist/collection/components/textarea/textarea.js +24 -146
  466. package/dist/collection/components/textarea/textarea.md.css +143 -297
  467. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  468. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  469. package/dist/collection/components/title/title.ios.css +4 -32
  470. package/dist/collection/components/title/title.js +7 -13
  471. package/dist/collection/components/title/title.md.css +4 -32
  472. package/dist/collection/components/toast/animations/utils.js +1 -1
  473. package/dist/collection/components/toast/toast.ios.css +45 -84
  474. package/dist/collection/components/toast/toast.js +12 -75
  475. package/dist/collection/components/toast/toast.md.css +45 -84
  476. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  477. package/dist/collection/components/toggle/toggle.js +18 -73
  478. package/dist/collection/components/toggle/toggle.md.css +131 -244
  479. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  480. package/dist/collection/components/toolbar/toolbar.js +13 -157
  481. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  482. package/dist/collection/global/ionic-global.js +13 -228
  483. package/dist/collection/utils/focus-trap.js +2 -13
  484. package/dist/collection/utils/focus-visible.js +0 -22
  485. package/dist/collection/utils/forms/validity.js +0 -31
  486. package/dist/collection/utils/framework-delegate.js +1 -3
  487. package/dist/collection/utils/helpers.js +3 -57
  488. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  489. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  490. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  491. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  492. package/dist/collection/utils/overlays.js +1 -82
  493. package/dist/collection/utils/test/playwright/generator.js +23 -48
  494. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  495. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  496. package/dist/collection/utils/transition/ios.transition.js +0 -1
  497. package/dist/docs.json +377 -8263
  498. package/dist/esm/{animation-DR5OwIG7.js → animation-Dt8bGnA-.js} +2 -2
  499. package/dist/esm/{app-globals-tUwaabUU.js → app-globals-BDSf8fOA.js} +1 -1
  500. package/dist/esm/{button-active-CegK1Ga3.js → button-active-L570Swow.js} +2 -2
  501. package/dist/esm/{capacitor-Ap5mZl6I.js → capacitor-CFERIeaU.js} +1 -1
  502. package/dist/esm/{config-DK9FWNvn.js → config-mCdtaoPe.js} +1 -1
  503. package/dist/esm/{data-B5lRlGxI.js → data-DCORV9FH.js} +6 -6
  504. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  505. package/dist/esm/{framework-delegate-Dx6tn-_w.js → framework-delegate-BYawdMXj.js} +2 -4
  506. package/dist/esm/{haptic-hXtWLcs-.js → haptic-DzAMWJuk.js} +1 -1
  507. package/dist/esm/hardware-back-button-CPLxO-Ev.js +115 -0
  508. package/dist/esm/{helpers-6l6yFg3S.js → helpers-DEn3pfjm.js} +4 -57
  509. package/dist/esm/{index-CXCvNx5X.js → index-Bs3kT4bc.js} +2 -2
  510. package/dist/esm/{index-gD7P82jx.js → index-C8IsBmNU.js} +4 -41
  511. package/dist/esm/{index-CH4BJAR9.js → index-CvDIirVx.js} +11 -11
  512. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  513. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  514. package/dist/esm/{index-CAS79tvr.js → index-ceb5RaMT.js} +3 -4
  515. package/dist/esm/{index-BVnPBHWX.js → index-r2D9DEro.js} +4 -4
  516. package/dist/esm/index.js +13 -12
  517. package/dist/esm/{input-shims-DFQmNfaZ.js → input-shims-DyOpfTg6.js} +6 -7
  518. package/dist/esm/{input.utils-85zOntcN.js → input.utils-DrvTa8gz.js} +3 -3
  519. package/dist/esm/ion-accordion_2.entry.js +28 -57
  520. package/dist/esm/ion-action-sheet.entry.js +21 -24
  521. package/dist/esm/ion-alert.entry.js +22 -24
  522. package/dist/esm/ion-app_8.entry.js +151 -250
  523. package/dist/esm/ion-avatar_3.entry.js +13 -125
  524. package/dist/esm/ion-back-button.entry.js +21 -30
  525. package/dist/esm/ion-backdrop.entry.js +7 -10
  526. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  527. package/dist/esm/ion-button_2.entry.js +12 -44
  528. package/dist/esm/ion-card_5.entry.js +30 -54
  529. package/dist/esm/ion-checkbox.entry.js +15 -33
  530. package/dist/esm/ion-chip.entry.js +8 -49
  531. package/dist/esm/ion-col_3.entry.js +57 -54
  532. package/dist/esm/ion-datetime-button.entry.js +8 -12
  533. package/dist/esm/ion-datetime_3.entry.js +40 -115
  534. package/dist/esm/ion-fab_3.entry.js +27 -43
  535. package/dist/esm/ion-img.entry.js +4 -8
  536. package/dist/esm/ion-infinite-scroll_2.entry.js +16 -91
  537. package/dist/esm/ion-input-otp.entry.js +8 -12
  538. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  539. package/dist/esm/ion-input.entry.js +33 -123
  540. package/dist/esm/ion-item-option_3.entry.js +20 -49
  541. package/dist/esm/ion-item_8.entry.js +48 -115
  542. package/dist/esm/ion-loading.entry.js +17 -19
  543. package/dist/esm/ion-menu_3.entry.js +28 -46
  544. package/dist/esm/ion-modal.entry.js +30 -57
  545. package/dist/esm/ion-nav_2.entry.js +11 -14
  546. package/dist/esm/ion-picker-column-option.entry.js +7 -11
  547. package/dist/esm/ion-picker-column.entry.js +12 -12
  548. package/dist/esm/ion-picker.entry.js +6 -10
  549. package/dist/esm/ion-popover.entry.js +17 -19
  550. package/dist/esm/ion-progress-bar.entry.js +8 -26
  551. package/dist/esm/ion-radio_2.entry.js +16 -26
  552. package/dist/esm/ion-range.entry.js +11 -15
  553. package/dist/esm/ion-refresher_2.entry.js +21 -39
  554. package/dist/esm/ion-reorder_2.entry.js +14 -38
  555. package/dist/esm/ion-ripple-effect.entry.js +7 -15
  556. package/dist/esm/ion-route_4.entry.js +8 -9
  557. package/dist/esm/ion-searchbar.entry.js +24 -137
  558. package/dist/esm/ion-segment-content.entry.js +2 -2
  559. package/dist/esm/ion-segment-view.entry.js +3 -6
  560. package/dist/esm/ion-segment_2.entry.js +15 -22
  561. package/dist/esm/ion-select-modal.entry.js +11 -17
  562. package/dist/esm/ion-select_3.entry.js +41 -132
  563. package/dist/esm/ion-spinner.entry.js +7 -29
  564. package/dist/esm/ion-split-pane.entry.js +9 -12
  565. package/dist/esm/ion-tab-bar_2.entry.js +22 -76
  566. package/dist/esm/ion-tab_2.entry.js +7 -8
  567. package/dist/esm/ion-text.entry.js +6 -6
  568. package/dist/esm/ion-textarea.entry.js +22 -117
  569. package/dist/esm/ion-toast.entry.js +19 -42
  570. package/dist/esm/ion-toggle.entry.js +24 -81
  571. package/dist/esm/ionic-global-CDrldh-5.js +146 -0
  572. package/dist/esm/ionic.js +5 -5
  573. package/dist/esm/{ios.transition-mZDQgHke.js → ios.transition-BDzw0_Hm.js} +5 -7
  574. package/dist/esm/{keyboard-NoPSnHZy.js → keyboard-CUw4ekVy.js} +1 -1
  575. package/dist/esm/{keyboard-controller-D5zoL0pZ.js → keyboard-controller-BaaVITYt.js} +3 -5
  576. package/dist/esm/{keyboard-BBx8cd5K.js → keyboard-ywgs5efA.js} +3 -4
  577. package/dist/esm/loader.js +5 -5
  578. package/dist/esm/{md.transition-DOqTLNQU.js → md.transition-BzDYi3qq.js} +5 -6
  579. package/dist/esm/{notch-controller-C7UVCCo4.js → notch-controller-BwelN_JM.js} +2 -2
  580. package/dist/esm/{overlays-DvZf7QU-.js → overlays-DCabi1dI.js} +9 -99
  581. package/dist/esm/{status-tap-BAJGCN-1.js → status-tap-5DQ7Fc4V.js} +3 -4
  582. package/dist/esm/{swipe-back-bZ7qcCmT.js → swipe-back-BKw2CAHc.js} +2 -3
  583. package/dist/esm/validity-DJztqcrH.js +17 -0
  584. package/dist/html.html-data.json +214 -2520
  585. package/dist/ionic/index.esm.js +1 -1
  586. package/dist/ionic/ionic.esm.js +1 -1
  587. package/dist/ionic/p-020af078.entry.js +4 -0
  588. package/dist/ionic/p-074839fc.entry.js +4 -0
  589. package/dist/ionic/p-07753df3.entry.js +4 -0
  590. package/dist/ionic/p-0abeb0fc.entry.js +4 -0
  591. package/dist/ionic/p-0bf76d0f.entry.js +4 -0
  592. package/dist/ionic/p-0dfa5a37.entry.js +4 -0
  593. package/dist/ionic/p-11518b31.entry.js +4 -0
  594. package/dist/ionic/p-1647c46c.entry.js +4 -0
  595. package/dist/ionic/p-2a939845.entry.js +4 -0
  596. package/dist/ionic/p-316c0420.entry.js +4 -0
  597. package/dist/ionic/p-31f7095f.entry.js +4 -0
  598. package/dist/ionic/p-370e4237.entry.js +4 -0
  599. package/dist/ionic/p-3a6caca9.entry.js +4 -0
  600. package/dist/ionic/p-40c261a3.entry.js +4 -0
  601. package/dist/ionic/p-43ed1ef5.entry.js +4 -0
  602. package/dist/ionic/p-46d74291.entry.js +4 -0
  603. package/dist/ionic/p-49d06882.entry.js +4 -0
  604. package/dist/ionic/p-4b658a7c.entry.js +4 -0
  605. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  606. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  607. package/dist/ionic/p-576e0965.entry.js +4 -0
  608. package/dist/ionic/p-582824c5.entry.js +4 -0
  609. package/dist/ionic/p-6241ce47.entry.js +4 -0
  610. package/dist/ionic/p-639dd543.entry.js +4 -0
  611. package/dist/ionic/p-6444c606.entry.js +4 -0
  612. package/dist/ionic/p-675b1a31.entry.js +4 -0
  613. package/dist/ionic/p-6d070558.entry.js +4 -0
  614. package/dist/ionic/p-7268efa5.entry.js +4 -0
  615. package/dist/ionic/p-72c38b88.entry.js +4 -0
  616. package/dist/ionic/p-75ae4733.entry.js +4 -0
  617. package/dist/ionic/p-79bd78f9.entry.js +4 -0
  618. package/dist/ionic/p-86f53961.entry.js +4 -0
  619. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  620. package/dist/ionic/p-9575b654.entry.js +4 -0
  621. package/dist/ionic/p-9eeaBrnk.js +4 -0
  622. package/dist/ionic/p-B0q1YL7N.js +4 -0
  623. package/dist/ionic/p-BFvmZNyx.js +4 -0
  624. package/dist/ionic/p-BKc55Xev.js +4 -0
  625. package/dist/ionic/p-BOVrCkpJ.js +4 -0
  626. package/dist/ionic/{p-BsbREiiN.js → p-BYEqWnSg.js} +1 -1
  627. package/dist/ionic/p-BmVRXR1y.js +4 -0
  628. package/dist/ionic/p-Bmgaetn_.js +4 -0
  629. package/dist/ionic/p-C6F4hat2.js +4 -0
  630. package/dist/ionic/p-C7hRNDhM.js +4 -0
  631. package/dist/ionic/p-C8IsBmNU.js +5 -0
  632. package/dist/ionic/p-CIGNaXM1.js +4 -0
  633. package/dist/ionic/{p-CH8-5k8b.js → p-CJxh_yLS.js} +1 -1
  634. package/dist/ionic/{p-qNBpc0Qq.js → p-CKvCXMs9.js} +1 -1
  635. package/dist/ionic/p-CTfR9YZG.js +4 -0
  636. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  637. package/dist/ionic/{p-CYW7idR0.js → p-CwgG81ZD.js} +1 -1
  638. package/dist/ionic/p-D-eFFUkA.js +4 -0
  639. package/dist/ionic/{p-CDRncjej.js → p-D0dMcSkw.js} +1 -1
  640. package/dist/ionic/{p-DMo2WKG5.js → p-D13Eaw-8.js} +1 -1
  641. package/dist/ionic/p-DCv9sLH2.js +4 -0
  642. package/dist/ionic/p-DDb5r57F.js +4 -0
  643. package/dist/ionic/p-DJztqcrH.js +4 -0
  644. package/dist/ionic/p-DNcfiJwE.js +4 -0
  645. package/dist/ionic/p-DUt5fQmA.js +4 -0
  646. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  647. package/dist/ionic/p-DZRJwG4S.js +4 -0
  648. package/dist/ionic/{p-Cv5jk_TK.js → p-DbQ5QkTP.js} +1 -1
  649. package/dist/ionic/{p-Bmh46Fz0.js → p-Dc45iWE4.js} +1 -1
  650. package/dist/ionic/p-QHYY4sjU.js +4 -0
  651. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  652. package/dist/ionic/p-a127bee2.entry.js +4 -0
  653. package/dist/ionic/p-a8ed848b.entry.js +4 -0
  654. package/dist/ionic/p-ac4eb91d.entry.js +4 -0
  655. package/dist/ionic/p-b0a7585c.entry.js +4 -0
  656. package/dist/ionic/p-b57c6d3e.entry.js +4 -0
  657. package/dist/ionic/p-c19f63d0.entry.js +4 -0
  658. package/dist/ionic/p-c85a2127.entry.js +4 -0
  659. package/dist/ionic/p-cc45bcbc.entry.js +4 -0
  660. package/dist/ionic/p-cebb0328.entry.js +4 -0
  661. package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
  662. package/dist/ionic/p-d126e8d3.entry.js +4 -0
  663. package/dist/ionic/p-d1f54e28.entry.js +4 -0
  664. package/dist/ionic/p-d3014190.entry.js +4 -0
  665. package/dist/ionic/p-da7d04cc.entry.js +4 -0
  666. package/dist/ionic/p-dbbe606a.entry.js +4 -0
  667. package/dist/ionic/p-ea509e3c.entry.js +4 -0
  668. package/dist/ionic/p-ec654c42.entry.js +4 -0
  669. package/dist/ionic/p-f8f22cc0.entry.js +4 -0
  670. package/dist/types/components/accordion/accordion.d.ts +3 -5
  671. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  672. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  673. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  674. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  675. package/dist/types/components/alert/alert.d.ts +2 -3
  676. package/dist/types/components/app/app.d.ts +2 -4
  677. package/dist/types/components/avatar/avatar.d.ts +0 -32
  678. package/dist/types/components/back-button/back-button.d.ts +1 -2
  679. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  680. package/dist/types/components/badge/badge.d.ts +1 -34
  681. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  682. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  683. package/dist/types/components/button/button.d.ts +6 -19
  684. package/dist/types/components/buttons/buttons.d.ts +1 -5
  685. package/dist/types/components/card/card.d.ts +1 -8
  686. package/dist/types/components/card-content/card-content.d.ts +1 -2
  687. package/dist/types/components/card-header/card-header.d.ts +2 -3
  688. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  689. package/dist/types/components/card-title/card-title.d.ts +1 -2
  690. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  691. package/dist/types/components/chip/chip.d.ts +1 -26
  692. package/dist/types/components/col/col.d.ts +5 -52
  693. package/dist/types/components/content/content.d.ts +0 -3
  694. package/dist/types/components/datetime/datetime.d.ts +1 -26
  695. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  696. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  697. package/dist/types/components/fab/fab.d.ts +0 -4
  698. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  699. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  700. package/dist/types/components/footer/footer.d.ts +3 -4
  701. package/dist/types/components/grid/grid.d.ts +0 -4
  702. package/dist/types/components/header/header.d.ts +3 -9
  703. package/dist/types/components/header/header.utils.d.ts +3 -3
  704. package/dist/types/components/img/img.d.ts +0 -3
  705. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  706. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  707. package/dist/types/components/input/input.d.ts +5 -31
  708. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  709. package/dist/types/components/item/item.d.ts +4 -11
  710. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  711. package/dist/types/components/item-group/item-group.d.ts +0 -4
  712. package/dist/types/components/item-option/item-option.d.ts +1 -18
  713. package/dist/types/components/item-options/item-options.d.ts +0 -4
  714. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  715. package/dist/types/components/label/label.d.ts +1 -2
  716. package/dist/types/components/list/list.d.ts +1 -15
  717. package/dist/types/components/list-header/list-header.d.ts +1 -2
  718. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  719. package/dist/types/components/loading/loading.d.ts +2 -3
  720. package/dist/types/components/menu/menu.d.ts +0 -3
  721. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  722. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  723. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  724. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  725. package/dist/types/components/modal/modal.d.ts +1 -11
  726. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  727. package/dist/types/components/nav/nav.d.ts +1 -5
  728. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  729. package/dist/types/components/note/note.d.ts +1 -2
  730. package/dist/types/components/picker/picker.d.ts +1 -2
  731. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  732. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  733. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  734. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  735. package/dist/types/components/popover/popover.d.ts +5 -6
  736. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  737. package/dist/types/components/radio/radio.d.ts +1 -2
  738. package/dist/types/components/radio-group/radio-group.d.ts +0 -8
  739. package/dist/types/components/range/range.d.ts +1 -2
  740. package/dist/types/components/refresher/refresher.d.ts +1 -2
  741. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  742. package/dist/types/components/reorder/reorder.d.ts +0 -9
  743. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  744. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  745. package/dist/types/components/route/route.d.ts +0 -4
  746. package/dist/types/components/router/router.d.ts +0 -4
  747. package/dist/types/components/router-link/router-link.d.ts +0 -4
  748. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  749. package/dist/types/components/row/row.d.ts +0 -4
  750. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  751. package/dist/types/components/segment/segment.d.ts +1 -2
  752. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  753. package/dist/types/components/select/select.d.ts +13 -41
  754. package/dist/types/components/select-modal/select-modal.d.ts +0 -1
  755. package/dist/types/components/select-option/select-option.d.ts +0 -4
  756. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  757. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  758. package/dist/types/components/spinner/spinner.d.ts +0 -15
  759. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  760. package/dist/types/components/tab/tab.d.ts +0 -4
  761. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  762. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  763. package/dist/types/components/tabs/tabs.d.ts +0 -3
  764. package/dist/types/components/text/text.d.ts +1 -2
  765. package/dist/types/components/textarea/textarea.d.ts +4 -42
  766. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  767. package/dist/types/components/title/title.d.ts +0 -4
  768. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  769. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  770. package/dist/types/components/toast/toast.d.ts +2 -19
  771. package/dist/types/components/toggle/toggle.d.ts +1 -15
  772. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  773. package/dist/types/components.d.ts +196 -1593
  774. package/dist/types/global/ionic-global.d.ts +2 -27
  775. package/dist/types/interface.d.ts +0 -3
  776. package/dist/types/utils/config.d.ts +2 -106
  777. package/dist/types/utils/focus-trap.d.ts +1 -1
  778. package/dist/types/utils/focus-visible.d.ts +0 -13
  779. package/dist/types/utils/forms/validity.d.ts +0 -7
  780. package/dist/types/utils/helpers.d.ts +0 -11
  781. package/dist/types/utils/overlays-interface.d.ts +1 -31
  782. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  783. package/hydrate/index.js +964 -3099
  784. package/hydrate/index.mjs +964 -3099
  785. package/package.json +4 -8
  786. package/components/caret-down.js +0 -6
  787. package/components/caret-left.js +0 -6
  788. package/components/caret-right.js +0 -6
  789. package/components/ion-divider.d.ts +0 -11
  790. package/components/ion-divider.js +0 -72
  791. package/components/list2.js +0 -6
  792. package/components/x.js +0 -6
  793. package/css/ionic/bundle.ionic.css +0 -1
  794. package/css/ionic/bundle.ionic.css.map +0 -1
  795. package/css/ionic/core.ionic.css +0 -1
  796. package/css/ionic/core.ionic.css.map +0 -1
  797. package/css/ionic/global.bundle.ionic.css +0 -1
  798. package/css/ionic/global.bundle.ionic.css.map +0 -1
  799. package/css/ionic/ionic-swiper.ionic.css +0 -1
  800. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  801. package/css/ionic/link.ionic.css +0 -1
  802. package/css/ionic/link.ionic.css.map +0 -1
  803. package/css/ionic/structure.ionic.css +0 -1
  804. package/css/ionic/structure.ionic.css.map +0 -1
  805. package/css/ionic/typography.ionic.css +0 -1
  806. package/css/ionic/typography.ionic.css.map +0 -1
  807. package/css/ionic/utils.bundle.ionic.css +0 -1
  808. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  809. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  810. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  811. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  812. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  813. package/dist/cjs/ionic-global-DlkD8-ZL.js +0 -491
  814. package/dist/cjs/list-a-7GSA6K.js +0 -8
  815. package/dist/cjs/validity-QmuwEptc.js +0 -51
  816. package/dist/cjs/x-BTF99yFH.js +0 -8
  817. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  818. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  819. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  820. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  821. package/dist/collection/components/badge/badge.ionic.css +0 -275
  822. package/dist/collection/components/button/button.ionic.css +0 -636
  823. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  824. package/dist/collection/components/card/card.ionic.css +0 -144
  825. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  826. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  827. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  828. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  829. package/dist/collection/components/chip/chip.ionic.css +0 -215
  830. package/dist/collection/components/datetime/datetime.ionic.css +0 -711
  831. package/dist/collection/components/divider/divider.ionic.css +0 -148
  832. package/dist/collection/components/divider/divider.ios.css +0 -87
  833. package/dist/collection/components/divider/divider.js +0 -94
  834. package/dist/collection/components/divider/divider.md.css +0 -87
  835. package/dist/collection/components/header/header.ionic.css +0 -97
  836. package/dist/collection/components/input/input.ionic.css +0 -885
  837. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  838. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  839. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  840. package/dist/collection/components/item/item.ionic.css +0 -508
  841. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  842. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  843. package/dist/collection/components/list/list.ionic.css +0 -212
  844. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  845. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  846. package/dist/collection/components/modal/modal.ionic.css +0 -247
  847. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  848. package/dist/collection/components/radio/radio.ionic.css +0 -422
  849. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  850. package/dist/collection/components/range/range.ionic.css +0 -563
  851. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  852. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  853. package/dist/collection/components/segment/segment.ionic.css +0 -115
  854. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  855. package/dist/collection/components/select/select.ionic.css +0 -777
  856. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
  857. package/dist/collection/components/spinner/spinner.native.css +0 -198
  858. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -201
  859. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -337
  860. package/dist/collection/components/textarea/textarea.ionic.css +0 -890
  861. package/dist/collection/components/title/title.ionic.css +0 -127
  862. package/dist/collection/components/toast/toast.ionic.css +0 -394
  863. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  864. package/dist/collection/components/toolbar/test/image.svg +0 -1
  865. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  866. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  867. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  868. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  869. package/dist/esm/ion-divider.entry.js +0 -49
  870. package/dist/esm/ionic-global-C2dfEr5R.js +0 -480
  871. package/dist/esm/list-Dhi5xtNS.js +0 -6
  872. package/dist/esm/validity-BjW8SOqw.js +0 -48
  873. package/dist/esm/x-BDqjX7Z_.js +0 -6
  874. package/dist/ionic/p-01ebb298.entry.js +0 -4
  875. package/dist/ionic/p-058204d8.entry.js +0 -4
  876. package/dist/ionic/p-074b3070.entry.js +0 -4
  877. package/dist/ionic/p-0ac03d31.entry.js +0 -4
  878. package/dist/ionic/p-1552f206.entry.js +0 -4
  879. package/dist/ionic/p-2eeb3efe.entry.js +0 -4
  880. package/dist/ionic/p-35214276.entry.js +0 -4
  881. package/dist/ionic/p-354515ed.entry.js +0 -4
  882. package/dist/ionic/p-3ec68103.entry.js +0 -4
  883. package/dist/ionic/p-427c1ad4.entry.js +0 -4
  884. package/dist/ionic/p-453a5dda.entry.js +0 -4
  885. package/dist/ionic/p-45551cea.entry.js +0 -4
  886. package/dist/ionic/p-484549da.entry.js +0 -4
  887. package/dist/ionic/p-505435ca.entry.js +0 -4
  888. package/dist/ionic/p-50c72200.entry.js +0 -4
  889. package/dist/ionic/p-5189dd57.entry.js +0 -4
  890. package/dist/ionic/p-52d0d65d.entry.js +0 -4
  891. package/dist/ionic/p-59279168.entry.js +0 -4
  892. package/dist/ionic/p-59482460.entry.js +0 -4
  893. package/dist/ionic/p-5cad7882.entry.js +0 -4
  894. package/dist/ionic/p-5d4f0f1d.entry.js +0 -4
  895. package/dist/ionic/p-5fcd7b49.entry.js +0 -4
  896. package/dist/ionic/p-6760dd1e.entry.js +0 -4
  897. package/dist/ionic/p-69465c18.entry.js +0 -4
  898. package/dist/ionic/p-6c4559a0.entry.js +0 -4
  899. package/dist/ionic/p-76734290.entry.js +0 -4
  900. package/dist/ionic/p-7d15135e.entry.js +0 -4
  901. package/dist/ionic/p-80d247b1.entry.js +0 -4
  902. package/dist/ionic/p-8396abe1.entry.js +0 -4
  903. package/dist/ionic/p-86a947c1.entry.js +0 -4
  904. package/dist/ionic/p-879ce6f2.entry.js +0 -4
  905. package/dist/ionic/p-8e97391b.entry.js +0 -4
  906. package/dist/ionic/p-984df948.entry.js +0 -4
  907. package/dist/ionic/p-9a00aac8.entry.js +0 -4
  908. package/dist/ionic/p-9b5b0e6d.entry.js +0 -4
  909. package/dist/ionic/p-B9cWjC5a.js +0 -4
  910. package/dist/ionic/p-BDhPZwpV.js +0 -4
  911. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  912. package/dist/ionic/p-BI1KkP1o.js +0 -4
  913. package/dist/ionic/p-BYSs-jZz.js +0 -4
  914. package/dist/ionic/p-BYnmISwy.js +0 -4
  915. package/dist/ionic/p-BjW8SOqw.js +0 -4
  916. package/dist/ionic/p-CCy93Kdo.js +0 -4
  917. package/dist/ionic/p-CSbvB5z5.js +0 -4
  918. package/dist/ionic/p-CVI6Uwrk.js +0 -4
  919. package/dist/ionic/p-CZG8whz6.js +0 -4
  920. package/dist/ionic/p-Cq6IwwGB.js +0 -4
  921. package/dist/ionic/p-Ct1oJEVo.js +0 -4
  922. package/dist/ionic/p-CtS5hTli.js +0 -4
  923. package/dist/ionic/p-D1t981Ih.js +0 -4
  924. package/dist/ionic/p-D2EO-8IE.js +0 -4
  925. package/dist/ionic/p-DIzp9O64.js +0 -4
  926. package/dist/ionic/p-DUdm2h77.js +0 -4
  927. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  928. package/dist/ionic/p-DkXYG789.js +0 -4
  929. package/dist/ionic/p-We-0jbXn.js +0 -4
  930. package/dist/ionic/p-a4282459.entry.js +0 -4
  931. package/dist/ionic/p-b9ec8be1.entry.js +0 -4
  932. package/dist/ionic/p-bf2ac6e0.entry.js +0 -4
  933. package/dist/ionic/p-c12298f5.entry.js +0 -4
  934. package/dist/ionic/p-c1562e8b.entry.js +0 -4
  935. package/dist/ionic/p-c7df4ca1.entry.js +0 -4
  936. package/dist/ionic/p-cb1f3e0c.entry.js +0 -4
  937. package/dist/ionic/p-d12a71be.entry.js +0 -4
  938. package/dist/ionic/p-d249f019.entry.js +0 -4
  939. package/dist/ionic/p-de2418c7.entry.js +0 -4
  940. package/dist/ionic/p-df036563.entry.js +0 -4
  941. package/dist/ionic/p-e174f8a8.entry.js +0 -4
  942. package/dist/ionic/p-e67abd5f.entry.js +0 -4
  943. package/dist/ionic/p-e937a89a.entry.js +0 -4
  944. package/dist/ionic/p-f01c1e73.entry.js +0 -4
  945. package/dist/ionic/p-f2ba465e.entry.js +0 -4
  946. package/dist/ionic/p-f5be9d83.entry.js +0 -4
  947. package/dist/ionic/p-fIOYmaqA.js +0 -4
  948. package/dist/ionic/p-fb3b3444.entry.js +0 -4
  949. package/dist/ionic/p-gD7P82jx.js +0 -5
  950. package/dist/ionic/p-hPTD29t1.js +0 -4
  951. package/dist/ionic/p-vXpMhGrs.js +0 -4
  952. package/dist/types/components/divider/divider.d.ts +0 -20
  953. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,777 +0,0 @@
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
- --padding-top: 0px;
86
- --padding-end: 0px;
87
- --padding-bottom: 0px;
88
- --padding-start: 0px;
89
- --placeholder-color: currentColor;
90
- --background: transparent;
91
- --border-style: solid;
92
- --highlight-color-focused: ion-color(primary, base);
93
- --highlight-color-valid: ion-color(success, base);
94
- --highlight-color-invalid: ion-color(danger, base);
95
- /**
96
- * This is a private API that is used to switch
97
- * out the highlight color based on the state
98
- * of the component without having to write
99
- * different selectors for different fill variants.
100
- */
101
- --highlight-color: var(--highlight-color-focused);
102
- display: block;
103
- position: relative;
104
- width: 100%;
105
- white-space: nowrap;
106
- cursor: pointer;
107
- }
108
-
109
- :host(.ion-color) {
110
- --highlight-color-focused: current-color(base);
111
- }
112
-
113
- :host(.in-item) {
114
- flex: 1 1 0;
115
- }
116
-
117
- :host(.select-disabled) {
118
- pointer-events: none;
119
- }
120
-
121
- /**
122
- * Select can be slotted
123
- * in components such as item and
124
- * toolbar which is why we do not
125
- * limit the below behavior to just ion-item.
126
- */
127
- :host([slot=start]),
128
- :host([slot=end]) {
129
- flex: initial;
130
- width: auto;
131
- }
132
-
133
- .select-placeholder {
134
- color: var(--placeholder-color);
135
- opacity: var(--placeholder-opacity);
136
- }
137
-
138
- button {
139
- position: absolute;
140
- top: 0;
141
- right: 0;
142
- bottom: 0;
143
- left: 0;
144
- width: 100%;
145
- height: 100%;
146
- margin: 0;
147
- padding: 0;
148
- border: 0;
149
- outline: 0;
150
- opacity: 0;
151
- overflow: hidden;
152
- clip: rect(0 0 0 0);
153
- -webkit-appearance: none;
154
- -moz-appearance: none;
155
- }
156
-
157
- .select-icon {
158
- /**
159
- * Prevent the icon from shrinking when the label and/or
160
- * selected item text is long enough to fill the rest of
161
- * the container.
162
- */
163
- flex-shrink: 0;
164
- }
165
-
166
- /**
167
- * Ensure that the select icon has
168
- * the correct color contrast when
169
- * used inside of an item.
170
- */
171
- :host(.in-item-color) .select-icon {
172
- color: inherit;
173
- }
174
-
175
- /**
176
- * This positions the icon at the correct
177
- * edge of the component with LTR and RTL
178
- * text directions. The position mixin cannot be
179
- * used here because the icon is in the Shadow DOM.
180
- */
181
- :host(.select-ltr.select-label-placement-stacked) .select-icon,
182
- :host(.select-ltr.select-label-placement-floating) .select-icon {
183
- right: var(--padding-end, 0);
184
- }
185
-
186
- :host(.select-rtl.select-label-placement-stacked) .select-icon,
187
- :host(.select-rtl.select-label-placement-floating) .select-icon {
188
- left: var(--padding-start, 0);
189
- }
190
-
191
- .select-text {
192
- flex: 1;
193
- font-size: inherit;
194
- text-overflow: ellipsis;
195
- white-space: inherit;
196
- overflow: hidden;
197
- }
198
-
199
- .select-wrapper {
200
- display: flex;
201
- position: relative;
202
- flex-grow: 1;
203
- align-items: center;
204
- justify-content: space-between;
205
- height: inherit;
206
- /**
207
- * This allows developers to set the height
208
- * on the host of the element but still have
209
- * the label take up the full height
210
- * of the parent.
211
- */
212
- min-height: inherit;
213
- transition: background-color 15ms linear;
214
- background: var(--background);
215
- line-height: normal;
216
- cursor: inherit;
217
- box-sizing: border-box;
218
- }
219
-
220
- .select-wrapper-inner {
221
- display: flex;
222
- align-items: center;
223
- overflow: hidden;
224
- }
225
-
226
- :host(.ion-touched.ion-invalid) {
227
- --highlight-color: var(--highlight-color-invalid);
228
- }
229
-
230
- /**
231
- * The component highlight is only shown
232
- * on focus, so we can safely set the valid
233
- * color state when touched/valid. If we
234
- * set it when .has-focus is present then
235
- * the highlight color would change
236
- * from the valid color to the component's
237
- * color during the transition after the
238
- * component loses focus.
239
- */
240
- :host(.ion-valid) {
241
- --highlight-color: var(--highlight-color-valid);
242
- }
243
-
244
- .select-bottom {
245
- display: flex;
246
- justify-content: space-between;
247
- border-top: var(--border-width) var(--border-style) var(--border-color);
248
- white-space: normal;
249
- }
250
-
251
- /**
252
- * If the select has a validity state, the
253
- * border and label should reflect that as a color.
254
- * The invalid state should show if the select is
255
- * invalid and has already been touched.
256
- * The valid state should show if the select
257
- * is valid, has already been touched, and
258
- * is currently focused. Do not show the valid
259
- * highlight when the select is blurred.
260
- */
261
- :host(.has-focus.ion-valid),
262
- :host(.select-expanded.ion-valid),
263
- :host(.ion-touched.ion-invalid),
264
- :host(.select-expanded.ion-touched.ion-invalid) {
265
- --border-color: var(--highlight-color);
266
- }
267
-
268
- /**
269
- * Error text should only be shown when .ion-invalid is
270
- * present on the select. Otherwise the helper text should
271
- * be shown.
272
- */
273
- .select-bottom .error-text {
274
- display: none;
275
- color: var(--highlight-color-invalid);
276
- }
277
-
278
- .select-bottom .helper-text {
279
- display: block;
280
- }
281
-
282
- :host(.ion-touched.ion-invalid) .select-bottom .error-text {
283
- display: block;
284
- }
285
-
286
- :host(.ion-touched.ion-invalid) .select-bottom .helper-text {
287
- display: none;
288
- }
289
-
290
- .label-text-wrapper {
291
- /**
292
- * This causes the label to take up
293
- * the entire height of its container
294
- * while still keeping the text centered.
295
- */
296
- display: flex;
297
- align-items: center;
298
- /**
299
- * This ensures that double tapping this text
300
- * clicks the <label> and focuses the input
301
- * when a screen reader is enabled.
302
- */
303
- pointer-events: none;
304
- }
305
-
306
- /**
307
- * We need to use two elements instead of
308
- * one. The .label-text-wrapper is responsible
309
- * for centering the label text vertically regardless
310
- * of the input height using flexbox.
311
- *
312
- * The .label-text element is responsible for controlling
313
- * overflow when label-placement="fixed".
314
- * We want the ellipses to show up when the
315
- * fixed label overflows, but text-overflow: ellipsis only
316
- * works on block-level elements. A flex item is
317
- * considered blockified (https://www.w3.org/TR/css-display-3/#blockify).
318
- */
319
- .label-text,
320
- ::slotted([slot=label]) {
321
- text-overflow: ellipsis;
322
- white-space: nowrap;
323
- overflow: hidden;
324
- }
325
-
326
- /**
327
- * If no label text is placed into the slot
328
- * then the element should be hidden otherwise
329
- * there will be additional margins added.
330
- */
331
- .label-text-wrapper-hidden,
332
- .select-outline-notch-hidden {
333
- display: none;
334
- }
335
-
336
- .native-wrapper {
337
- display: flex;
338
- align-items: center;
339
- /**
340
- * This ensures that the .select-text gets
341
- * truncated with ellipses when the text is
342
- * too long for the screen.
343
- */
344
- overflow: hidden;
345
- }
346
-
347
- :host(.select-justify-space-between) .select-wrapper {
348
- justify-content: space-between;
349
- }
350
-
351
- :host(.select-justify-start) .select-wrapper {
352
- justify-content: start;
353
- }
354
-
355
- :host(.select-justify-end) .select-wrapper {
356
- justify-content: end;
357
- }
358
-
359
- /**
360
- * Label is on the left of the input in LTR and
361
- * on the right in RTL.
362
- */
363
- :host(.select-label-placement-start) .select-wrapper {
364
- flex-direction: row;
365
- }
366
-
367
- /**
368
- * Label is on the right of the select in LTR and
369
- * on the left in RTL.
370
- */
371
- :host(.select-label-placement-end) .select-wrapper {
372
- flex-direction: row-reverse;
373
- }
374
-
375
- /**
376
- * Stacked: Label sits above the select and is scaled down.
377
- * Floating: Label sits over the select when the select has no
378
- * value and is blurred. Label sits above the input and is scaled
379
- * down when the select is focused or has a value.
380
- *
381
- */
382
- :host(.select-label-placement-stacked) .select-wrapper,
383
- :host(.select-label-placement-floating) .select-wrapper {
384
- flex-direction: column;
385
- align-items: start;
386
- }
387
-
388
- /**
389
- * Ensures that the label animates
390
- * up and to the left in LTR or
391
- * up and to the right in RTL.
392
- */
393
- :host(.select-label-placement-stacked) .label-text-wrapper,
394
- :host(.select-label-placement-floating) .label-text-wrapper {
395
- max-width: 100%;
396
- }
397
-
398
- :host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,
399
- :host(.select-ltr.select-label-placement-floating) .label-text-wrapper {
400
- transform-origin: left top;
401
- }
402
-
403
- :host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,
404
- :host(.select-rtl.select-label-placement-floating) .label-text-wrapper {
405
- transform-origin: right top;
406
- }
407
-
408
- /**
409
- * Ensures the select does not
410
- * overlap the label.
411
- * Also ensure that the native wrapper
412
- * takes up the remaining available height and width.
413
- */
414
- :host(.select-label-placement-stacked) .native-wrapper,
415
- :host(.select-label-placement-floating) .native-wrapper {
416
- flex-grow: 1;
417
- width: 100%;
418
- }
419
-
420
- /**
421
- * The placeholder should be hidden when the label
422
- * is on top of the select. This prevents the label
423
- * from overlapping any placeholder value.
424
- *
425
- * TODO(FW-5592): Remove :not(.label-floating) piece
426
- */
427
- :host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder {
428
- opacity: 0;
429
- }
430
-
431
- /**
432
- * We don't use .label-floating here because that would
433
- * also include the case where the label is floating due
434
- * to content in the start/end slot. We want the opacity
435
- * to remain at the default in this case, since the select
436
- * isn't being actively interacted with.
437
- *
438
- * TODO(FW-5592): Change entire selector to:
439
- * :host(.label-floating.select-label-placement-floating) .native-wrapper .select-placeholder
440
- */
441
- :host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,
442
- :host(.has-focus.select-label-placement-floating) .native-wrapper .select-placeholder,
443
- :host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder {
444
- opacity: 1;
445
- }
446
-
447
- ::slotted([slot=start]),
448
- ::slotted([slot=end]) {
449
- /**
450
- * Prevent the slots from shrinking when the label and/or
451
- * selected item text is long enough to fill the rest of
452
- * the container.
453
- */
454
- flex-shrink: 0;
455
- }
456
-
457
- ::slotted([slot=start]:last-of-type) {
458
- margin-inline-start: 0;
459
- }
460
-
461
- ::slotted([slot=end]:first-of-type) {
462
- margin-inline-end: 0;
463
- }
464
-
465
- :host(.ion-color) {
466
- --border-color: var(--ion-color-base);
467
- }
468
-
469
- :host(.select-fill-outline) .select-bottom {
470
- border-top: none;
471
- }
472
-
473
- :host(.select-fill-outline) .label-text-wrapper {
474
- /**
475
- * The label should appear on top of an outline
476
- * container that overlaps it so it is always clickable.
477
- */
478
- position: relative;
479
- }
480
-
481
- :host(.select-fill-outline) .select-wrapper-inner {
482
- border-radius: var(--border-radius);
483
- -webkit-padding-start: var(--padding-start);
484
- padding-inline-start: var(--padding-start);
485
- -webkit-padding-end: var(--padding-end);
486
- padding-inline-end: var(--padding-end);
487
- padding-top: var(--padding-top);
488
- padding-bottom: var(--padding-bottom);
489
- /**
490
- * Apply the background to the native select
491
- * wrapper to only style the select.
492
- */
493
- background: var(--background);
494
- }
495
-
496
- :host(.select-fill-outline) .select-outline {
497
- right: 0;
498
- left: 0;
499
- top: 0;
500
- bottom: 0;
501
- border-radius: var(--border-radius);
502
- position: absolute;
503
- width: 100%;
504
- height: 100%;
505
- pointer-events: none;
506
- border: var(--border-width) var(--border-style) var(--border-color);
507
- box-sizing: border-box;
508
- }
509
-
510
- :host(.ion-focused.select-fill-outline) {
511
- --border-color: var(--highlight-color);
512
- }
513
-
514
- :host(.ion-focused.select-fill-outline:not(.ion-invalid):not(.ion-valid)) {
515
- --border-width: var(--token-border-size-050, var(--token-scale-050, 2px));
516
- }
517
-
518
- /**
519
- * If the select has a validity state, the
520
- * border should reflect that as a color.
521
- */
522
- :host(.has-focus.select-fill-outline.ion-valid),
523
- :host(.select-fill-outline.ion-touched.ion-invalid) {
524
- --border-color: var(--highlight-color);
525
- }
526
-
527
- :host {
528
- --background: var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));
529
- --border-color: var(--token-primitives-neutral-500, #a2a2a2);
530
- --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
531
- --padding-start: var(--token-space-400, var(--token-scale-400, 16px));
532
- --padding-end: var(--token-space-400, var(--token-scale-400, 16px));
533
- --padding-top: var(--token-space-300, var(--token-scale-300, 12px));
534
- --padding-bottom: var(--token-space-300, var(--token-scale-300, 12px));
535
- --placeholder-color: var(--token-primitives-neutral-800, #626262);
536
- --placeholder-opacity: 1;
537
- --highlight-color-focused: var(--token-border-focus-default, var(--token-primitives-blue-400, #b5c0f7));
538
- --highlight-color-valid: var(--token-semantics-success-900, var(--token-primitives-green-900, #126f23));
539
- --highlight-color-invalid: var(--token-semantics-danger-800, var(--token-primitives-red-800, #bf2222));
540
- min-height: var(--token-scale-1100, 44px);
541
- }
542
-
543
- .select-bottom {
544
- padding-top: var(--token-space-100, var(--token-scale-100, 4px));
545
- font-size: var(--token-font-size-300, 12px);
546
- font-weight: var(--token-font-weight-medium, 500);
547
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
548
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
549
- text-decoration: none;
550
- text-transform: none;
551
- }
552
-
553
- .select-bottom .helper-text {
554
- color: var(--token-primitives-neutral-800, #626262);
555
- }
556
-
557
- .select-bottom .error-text {
558
- color: var(--token-text-danger, var(--token-semantics-danger-900, var(--token-primitives-red-900, #991b1b)));
559
- }
560
-
561
- .select-text {
562
- min-width: var(--token-space-400, var(--token-scale-400, 16px));
563
- color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
564
- }
565
-
566
- :host(.has-value) .select-text {
567
- color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
568
- }
569
-
570
- .label-text-wrapper {
571
- font-size: var(--token-font-size-300, 12px);
572
- font-weight: var(--token-font-weight-medium, 500);
573
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
574
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
575
- text-decoration: none;
576
- text-transform: none;
577
- /**
578
- * Label text should not extend
579
- * beyond the bounds of the select.
580
- * However, we do not set the max
581
- * width to 100% because then
582
- * only the label would show and users
583
- * would not be able to see what they are typing.
584
- */
585
- max-width: var(--token-scale-5000, 200px);
586
- 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));
587
- color: var(--token-primitives-neutral-1000, #3b3b3b);
588
- }
589
-
590
- :host(.select-label-placement-start) .label-text-wrapper,
591
- :host(.select-label-placement-fixed) .label-text-wrapper {
592
- /**
593
- * The margin between the label and
594
- * the select should be on the end
595
- * when the label sits at the start.
596
- */
597
- -webkit-margin-start: 0;
598
- margin-inline-start: 0;
599
- -webkit-margin-end: var(--token-space-100, var(--token-scale-100, 4px));
600
- margin-inline-end: var(--token-space-100, var(--token-scale-100, 4px));
601
- margin-top: 0;
602
- margin-bottom: 0;
603
- }
604
-
605
- :host(.select-label-placement-fixed) .label-text-wrapper {
606
- flex: 0 0 calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
607
- width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
608
- min-width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
609
- max-width: var(--token-scale-5000, 200px);
610
- }
611
-
612
- :host(.select-label-placement-end) .label-text-wrapper {
613
- /**
614
- * The margin between the label and
615
- * the select should be on the start
616
- * when the label sits at the end.
617
- */
618
- -webkit-margin-start: var(--token-space-100, var(--token-scale-100, 4px));
619
- margin-inline-start: var(--token-space-100, var(--token-scale-100, 4px));
620
- -webkit-margin-end: 0;
621
- margin-inline-end: 0;
622
- margin-top: 0;
623
- margin-bottom: 0;
624
- }
625
-
626
- :host(.select-label-placement-stacked) .label-text-wrapper,
627
- :host(.select-label-placement-floating) .label-text-wrapper {
628
- /**
629
- * The margin between the label and
630
- * the select should be on the bottom
631
- * when the label sits at the top.
632
- */
633
- margin-left: 0;
634
- margin-right: 0;
635
- margin-top: 0;
636
- margin-bottom: var(--token-space-100, var(--token-scale-100, 4px));
637
- }
638
-
639
- .select-wrapper {
640
- min-width: var(--token-scale-5000, 200px);
641
- background: transparent;
642
- }
643
-
644
- .select-wrapper .select-placeholder {
645
- /**
646
- * When the floating label appears on top of the
647
- * select, we need to fade the text out so that the
648
- * label does not overlap with the placeholder.
649
- */
650
- transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
651
- }
652
-
653
- .select-wrapper-inner {
654
- border-radius: var(--border-radius);
655
- -webkit-padding-start: var(--padding-start);
656
- padding-inline-start: var(--padding-start);
657
- -webkit-padding-end: var(--padding-end);
658
- padding-inline-end: var(--padding-end);
659
- padding-top: var(--padding-top);
660
- padding-bottom: var(--padding-bottom);
661
- position: relative;
662
- background: var(--background);
663
- box-sizing: border-box;
664
- gap: var(--token-space-200, var(--token-scale-200, 8px));
665
- }
666
-
667
- :host(.select-label-placement-stacked) .select-wrapper-inner,
668
- :host(.select-label-placement-floating) .select-wrapper-inner {
669
- width: 100%;
670
- }
671
-
672
- .native-wrapper {
673
- font-size: var(--token-font-size-350, 14px);
674
- font-weight: var(--token-font-weight-regular, 400);
675
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
676
- line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
677
- text-decoration: none;
678
- text-transform: none;
679
- /**
680
- * When the floating label appears on top of the
681
- * input, we need to fade the input out so that the
682
- * label does not overlap with the placeholder.
683
- */
684
- transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
685
- color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
686
- }
687
-
688
- :host(.select-label-placement-stacked) .native-wrapper,
689
- :host(.select-label-placement-floating) .native-wrapper {
690
- /**
691
- * Text should not extend beyond the bounds of the select.
692
- * This is done by setting the width to the full width minus
693
- * the icon width and the gap between the icon and the text.
694
- */
695
- width: calc(100% - var(--token-scale-400, 16px) - var(--token-space-200, var(--token-scale-200, 8px)));
696
- }
697
-
698
- /**
699
- * Slotted buttons have a lot of default padding that can
700
- * cause them to look misaligned from other pieces such
701
- * as the control's label, especially when using a clear
702
- * fill. We also make them circular to ensure that non-
703
- * clear buttons and the focus/hover state on clear ones
704
- * don't look too crowded.
705
- */
706
- ::slotted(ion-button[slot=start].button-has-icon-only),
707
- ::slotted(ion-button[slot=end].button-has-icon-only) {
708
- --border-radius: 50%;
709
- --padding-start: var(--token-space-200, var(--token-scale-200, 8px));
710
- --padding-end: var(--token-space-200, var(--token-scale-200, 8px));
711
- --padding-top: var(--token-space-200, var(--token-scale-200, 8px));
712
- --padding-bottom: var(--token-space-200, var(--token-scale-200, 8px));
713
- aspect-ratio: 1;
714
- }
715
-
716
- .select-icon,
717
- ::slotted(ion-icon) {
718
- width: var(--token-scale-400, 16px);
719
- height: var(--token-scale-400, 16px);
720
- }
721
-
722
- .select-icon {
723
- transition: transform 0.15s var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
724
- color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
725
- }
726
-
727
- :host(.has-value) .select-icon {
728
- color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #3b3b3b));
729
- }
730
-
731
- /**
732
- * This rotates the chevron icon
733
- * when the select is activated.
734
- * This should only happen on MD.
735
- */
736
- :host(.select-expanded:not(.has-expanded-icon)) .select-icon {
737
- transform: rotate(180deg);
738
- }
739
-
740
- :host(.select-fill-solid) {
741
- --background: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #eae9e9));
742
- }
743
-
744
- :host(.select-disabled) {
745
- --background: var(--token-primitives-neutral-100, #f3f3f3);
746
- --border-color: var(--token-primitives-neutral-300, #e0e0e0);
747
- }
748
-
749
- :host(.select-disabled) .label-text-wrapper,
750
- :host(.select-disabled) .select-text,
751
- :host(.select-disabled) .select-icon {
752
- color: var(--token-primitives-neutral-500, #a2a2a2);
753
- }
754
-
755
- :host(.select-shape-soft) {
756
- --border-radius: var(--token-border-radius-200, var(--token-scale-200, 8px));
757
- }
758
-
759
- :host(.select-shape-round) {
760
- --border-radius: var(--token-border-radius-400, var(--token-scale-400, 16px));
761
- }
762
-
763
- :host(.select-shape-rectangular) {
764
- --border-radius: var(--token-border-radius-0, var(--token-scale-0, 0px));
765
- }
766
-
767
- :host(.select-size-small) .select-wrapper-inner {
768
- height: var(--token-scale-1000, 40px);
769
- }
770
-
771
- :host(.select-size-medium) .select-wrapper-inner {
772
- height: var(--token-scale-1200, 48px);
773
- }
774
-
775
- :host(.select-size-large) .select-wrapper-inner {
776
- height: var(--token-scale-1400, 56px);
777
- }