voyager-ionic-core 8.8.17 → 9.0.3

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 (794) 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-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/p-1sJ0ZDPe.js +4 -0
  99. package/components/p-5ldEpNdG.js +4 -0
  100. package/components/p-6ZLn6K5e.js +4 -0
  101. package/components/p-B1_TL6RQ.js +4 -0
  102. package/components/p-B4lxwJ8N.js +4 -0
  103. package/components/{p-rCa2eL0j.js → p-BF48Oc0v.js} +1 -1
  104. package/components/p-BJr2B5hZ.js +4 -0
  105. package/components/p-BMPN55of.js +4 -0
  106. package/components/{p-ChIZKXUu.js → p-BQyuFxYc.js} +1 -1
  107. package/components/p-BSQPZ79H.js +4 -0
  108. package/components/p-BT9-hMMz.js +4 -0
  109. package/components/p-BU8a2IhR.js +4 -0
  110. package/components/p-BW_SlU2D.js +4 -0
  111. package/components/p-BWoa-cki.js +4 -0
  112. package/components/p-BYJRZKHa.js +4 -0
  113. package/components/p-B_gJaBk0.js +4 -0
  114. package/components/p-BgkOsq-d.js +4 -0
  115. package/components/p-BhamHSw3.js +4 -0
  116. package/components/p-Bi-it1EH.js +4 -0
  117. package/components/p-C-NbvXu4.js +4 -0
  118. package/components/p-C09TXohi.js +4 -0
  119. package/components/p-C4VpVfrJ.js +4 -0
  120. package/components/p-C8Ck7_Eo.js +4 -0
  121. package/components/p-CEW4RXZO.js +4 -0
  122. package/components/p-CG_zZq_I.js +4 -0
  123. package/components/{p-B9jFTlwE.js → p-CJgnoKcN.js} +1 -1
  124. package/components/p-CMRYD_yR.js +4 -0
  125. package/components/{p-BMI53wYL.js → p-CNLioZ3B.js} +1 -1
  126. package/components/{p--JUspHvy.js → p-COO0eJOA.js} +1 -1
  127. package/components/p-CWAks_S_.js +4 -0
  128. package/{dist/ionic/p-KjNvRoEp.js → components/p-Cd1WaN-0.js} +1 -1
  129. package/components/p-CqbGBmqb.js +4 -0
  130. package/components/p-CrAKlX71.js +4 -0
  131. package/components/p-Ctop2IWW.js +4 -0
  132. package/components/p-Cw6WocLJ.js +4 -0
  133. package/components/p-D0YpjgON.js +4 -0
  134. package/components/{p-DJZp0KTQ.js → p-D5w_FlVa.js} +1 -1
  135. package/components/p-D7-vHX0A.js +4 -0
  136. package/components/p-D7wDJdFn.js +4 -0
  137. package/components/p-DFLJvuRK.js +4 -0
  138. package/components/p-DL13ieTa.js +4 -0
  139. package/components/{p-DqLB8yFQ.js → p-DM1gJSMP.js} +1 -1
  140. package/components/p-DMBiAyOR.js +4 -0
  141. package/components/p-DWCzVL3Y.js +4 -0
  142. package/components/p-DZRZic9C.js +4 -0
  143. package/components/{p-C_hpsif8.js → p-DhNuxvJH.js} +1 -1
  144. package/components/p-DiuOa1vw.js +4 -0
  145. package/components/p-Djmz-ssp.js +4 -0
  146. package/components/p-DnBNYc7u.js +4 -0
  147. package/components/p-Dojwmvde.js +4 -0
  148. package/components/p-DwSXbQSz.js +4 -0
  149. package/components/p-DxhHlJln.js +4 -0
  150. package/components/p-Fl7ZFU74.js +4 -0
  151. package/components/{p-DqZAXv2t.js → p-GGbIHyEF.js} +1 -1
  152. package/components/{p-j5IxBIan.js → p-Hp8t4RMX.js} +1 -1
  153. package/components/p-M34T2gyX.js +4 -0
  154. package/components/p-TWw4e4sO.js +4 -0
  155. package/components/{p-Cfx4M1Bn.js → p-YjMkHuvH.js} +1 -1
  156. package/components/p-byZM6qHV.js +4 -0
  157. package/components/p-cEN43Ahr.js +4 -0
  158. package/components/p-qAXsfUff.js +4 -0
  159. package/dist/cjs/{animation-BJq0kcy2.js → animation-Kd1N7WTN.js} +4 -4
  160. package/dist/cjs/{app-globals-BlqrqKTN.js → app-globals-b1G4t26O.js} +1 -1
  161. package/dist/cjs/{button-active-0mPOKmV2.js → button-active-CQCFubJJ.js} +3 -3
  162. package/dist/cjs/config-CjUbvdPW.js +36 -0
  163. package/dist/cjs/dir-zwDPRE5K.js +30 -0
  164. package/dist/cjs/{format-PxvGiOik.js → format-bHU8N1g5.js} +40 -30
  165. package/dist/cjs/{framework-delegate-BtICZDHr.js → framework-delegate-d-fWfeI6.js} +5 -7
  166. package/dist/cjs/{gesture-controller-dtqlP_q4.js → gesture-controller-CeJslptU.js} +1 -2
  167. package/dist/cjs/{haptic-ClPPQ_PS.js → haptic-Ch-X4gRx.js} +2 -3
  168. package/dist/cjs/{hardware-back-button-iUuF_76h.js → hardware-back-button-Bu4Dzw8l.js} +4 -4
  169. package/dist/cjs/{helpers-Cv23MFHM.js → helpers-7wzdhdeg.js} +15 -11
  170. package/dist/cjs/{index-D81eLYUM.js → index-C74Q3t6a.js} +3 -2
  171. package/dist/cjs/{index-BERfRao3.js → index-CQfEIyLK.js} +5 -5
  172. package/dist/cjs/{index-aC4x3Fk3.js → index-DFNrCX7M.js} +6 -7
  173. package/dist/cjs/{index-CAvQ7Tka.js → index-DRPqwSvU.js} +13 -30
  174. package/dist/cjs/{index-Ct7gcRif.js → index-DXoo08JC.js} +321 -26
  175. package/dist/cjs/{index-CIrkNXqJ.js → index-DtvKGwdh.js} +34 -2
  176. package/dist/cjs/index-KiSZqhYS.js +431 -0
  177. package/dist/cjs/{index-DqmRDbxg.js → index-wOmugbdg.js} +1 -1
  178. package/dist/cjs/index.cjs.js +19 -18
  179. package/dist/cjs/{input-shims-CFLg7uzj.js → input-shims-VJIiKBKv.js} +10 -11
  180. package/dist/cjs/input.utils-EHVE2RK_.js +35 -0
  181. package/dist/cjs/ion-accordion_2.cjs.entry.js +12 -12
  182. package/dist/cjs/ion-action-sheet.cjs.entry.js +92 -44
  183. package/dist/cjs/ion-alert.cjs.entry.js +144 -65
  184. package/dist/cjs/ion-app_8.cjs.entry.js +112 -40
  185. package/dist/cjs/ion-avatar_3.cjs.entry.js +4 -4
  186. package/dist/cjs/ion-back-button.cjs.entry.js +6 -5
  187. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  188. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +8 -7
  189. package/dist/cjs/ion-button_2.cjs.entry.js +12 -8
  190. package/dist/cjs/ion-card_5.cjs.entry.js +6 -5
  191. package/dist/cjs/ion-checkbox.cjs.entry.js +10 -7
  192. package/dist/cjs/ion-chip.cjs.entry.js +3 -3
  193. package/dist/cjs/ion-col_3.cjs.entry.js +10 -6
  194. package/dist/cjs/ion-datetime-button.cjs.entry.js +22 -25
  195. package/dist/cjs/{ion-datetime_3.cjs.entry.js → ion-datetime.cjs.entry.js} +182 -746
  196. package/dist/cjs/ion-fab_3.cjs.entry.js +7 -6
  197. package/dist/cjs/ion-img.cjs.entry.js +7 -4
  198. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +8 -6
  199. package/dist/cjs/ion-input-otp.cjs.entry.js +20 -29
  200. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +9 -10
  201. package/dist/cjs/ion-input.cjs.entry.js +58 -70
  202. package/dist/cjs/ion-item-option_3.cjs.entry.js +21 -24
  203. package/dist/cjs/ion-item_8.cjs.entry.js +38 -34
  204. package/dist/cjs/ion-loading.cjs.entry.js +29 -15
  205. package/dist/cjs/ion-menu_3.cjs.entry.js +23 -24
  206. package/dist/cjs/ion-modal.cjs.entry.js +283 -161
  207. package/dist/cjs/ion-nav_2.cjs.entry.js +30 -138
  208. package/dist/cjs/ion-picker-column-option.cjs.entry.js +8 -13
  209. package/dist/cjs/ion-picker-column.cjs.entry.js +218 -62
  210. package/dist/cjs/ion-picker.cjs.entry.js +4 -4
  211. package/dist/cjs/ion-popover.cjs.entry.js +50 -30
  212. package/dist/cjs/ion-progress-bar.cjs.entry.js +6 -5
  213. package/dist/cjs/ion-radio_2.cjs.entry.js +12 -11
  214. package/dist/cjs/ion-range.cjs.entry.js +30 -25
  215. package/dist/cjs/ion-refresher_2.cjs.entry.js +34 -26
  216. package/dist/cjs/ion-reorder_2.cjs.entry.js +10 -9
  217. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  218. package/dist/cjs/ion-route_4.cjs.entry.js +36 -30
  219. package/dist/cjs/ion-searchbar.cjs.entry.js +27 -22
  220. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  221. package/dist/cjs/ion-segment-view.cjs.entry.js +5 -6
  222. package/dist/cjs/ion-segment_2.cjs.entry.js +30 -26
  223. package/dist/cjs/ion-select-modal.cjs.entry.js +93 -38
  224. package/dist/cjs/ion-select_3.cjs.entry.js +495 -126
  225. package/dist/cjs/ion-spinner.cjs.entry.js +5 -6
  226. package/dist/cjs/ion-split-pane.cjs.entry.js +4 -4
  227. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +15 -12
  228. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -8
  229. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  230. package/dist/cjs/ion-textarea.cjs.entry.js +56 -65
  231. package/dist/cjs/ion-toast.cjs.entry.js +26 -21
  232. package/dist/cjs/ion-toggle.cjs.entry.js +15 -13
  233. package/dist/cjs/{ionic-global-B-cA6LkY.js → ionic-global-CYJNT-2P.js} +13 -8
  234. package/dist/cjs/ionic.cjs.js +5 -5
  235. package/dist/cjs/{ios.transition-BOSWOaiK.js → ios.transition-DYGiD6gM.js} +14 -17
  236. package/dist/cjs/{item-multiple-inputs-D-gyg57c.js → item-multiple-inputs-Dv6qrMhm.js} +1 -1
  237. package/dist/cjs/{keyboard-hHzlEQpk.js → keyboard-Cix5TVkD.js} +2 -2
  238. package/dist/cjs/{keyboard-UuAS4D_9.js → keyboard-cHxZlTyz.js} +2 -2
  239. package/dist/cjs/{keyboard-controller-GXBiBRKS.js → keyboard-controller-PtZoN2GS.js} +6 -6
  240. package/dist/cjs/loader.cjs.js +4 -4
  241. package/dist/cjs/{md.transition-B8-wBZqt.js → md.transition-CrSkaoz6.js} +8 -8
  242. package/dist/cjs/overlay-control-label-D2sdL2O8.js +50 -0
  243. package/dist/cjs/{overlays-DdtIYQUH.js → overlays-BR21NUIG.js} +98 -58
  244. package/dist/cjs/select-option-render-D8ZEjYji.js +123 -0
  245. package/dist/cjs/slot-mutation-controller-D6IjSEIh.js +397 -0
  246. package/dist/cjs/{status-tap-BXX8H8_Y.js → status-tap-CNP5eD1R.js} +4 -3
  247. package/dist/cjs/{swipe-back-CCMaNiP2.js → swipe-back-CSIJQfu5.js} +5 -5
  248. package/dist/cjs/{theme-CeDs6Hcv.js → theme-Bw0rpaNN.js} +6 -1
  249. package/dist/collection/collection-manifest.json +7 -11
  250. package/dist/collection/components/accordion/accordion.js +5 -6
  251. package/dist/collection/components/accordion-group/accordion-group.js +2 -2
  252. package/dist/collection/components/action-sheet/action-sheet.ios.css +228 -2
  253. package/dist/collection/components/action-sheet/action-sheet.js +77 -31
  254. package/dist/collection/components/action-sheet/action-sheet.md.css +174 -2
  255. package/dist/collection/components/alert/alert.ios.css +279 -10
  256. package/dist/collection/components/alert/alert.js +127 -50
  257. package/dist/collection/components/alert/alert.md.css +268 -20
  258. package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
  259. package/dist/collection/components/breadcrumbs/breadcrumbs.js +1 -1
  260. package/dist/collection/components/button/button.js +5 -2
  261. package/dist/collection/components/card/card.js +1 -1
  262. package/dist/collection/components/checkbox/checkbox.js +4 -2
  263. package/dist/collection/components/col/col.js +7 -3
  264. package/dist/collection/components/content/content.js +56 -6
  265. package/dist/collection/components/datetime/datetime.ios.css +42 -2
  266. package/dist/collection/components/datetime/datetime.js +146 -77
  267. package/dist/collection/components/datetime/datetime.md.css +42 -1
  268. package/dist/collection/components/datetime/utils/data.js +13 -14
  269. package/dist/collection/components/datetime/utils/format.js +21 -11
  270. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  271. package/dist/collection/components/datetime/utils/parse.js +10 -10
  272. package/dist/collection/components/datetime/utils/state.js +8 -2
  273. package/dist/collection/components/datetime/utils/validate.js +4 -5
  274. package/dist/collection/components/datetime-button/datetime-button.ios.css +5 -0
  275. package/dist/collection/components/datetime-button/datetime-button.js +15 -20
  276. package/dist/collection/components/datetime-button/datetime-button.md.css +5 -0
  277. package/dist/collection/components/fab-button/fab-button.js +1 -1
  278. package/dist/collection/components/footer/footer.js +1 -1
  279. package/dist/collection/components/header/header.js +2 -2
  280. package/dist/collection/components/img/img.js +6 -1
  281. package/dist/collection/components/input/input.ios.css +57 -26
  282. package/dist/collection/components/input/input.js +51 -64
  283. package/dist/collection/components/input/input.md.css +79 -43
  284. package/dist/collection/components/input-otp/input-otp.js +15 -24
  285. package/dist/collection/components/input-password-toggle/input-password-toggle.js +5 -6
  286. package/dist/collection/components/item/item.js +19 -16
  287. package/dist/collection/components/item-divider/item-divider.js +2 -2
  288. package/dist/collection/components/item-group/item-group.js +1 -1
  289. package/dist/collection/components/item-option/item-option.js +2 -2
  290. package/dist/collection/components/item-options/item-options.js +1 -1
  291. package/dist/collection/components/item-sliding/item-sliding.js +12 -16
  292. package/dist/collection/components/label/label.js +2 -2
  293. package/dist/collection/components/list/list.js +2 -2
  294. package/dist/collection/components/list-header/list-header.js +2 -2
  295. package/dist/collection/components/loading/loading.js +17 -5
  296. package/dist/collection/components/menu/menu.js +6 -8
  297. package/dist/collection/components/menu-button/menu-button.js +2 -2
  298. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  299. package/dist/collection/components/modal/animations/ios.enter.js +1 -1
  300. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  301. package/dist/collection/components/modal/gestures/sheet.js +42 -34
  302. package/dist/collection/components/modal/gestures/swipe-to-close.js +18 -35
  303. package/dist/collection/components/modal/gestures/utils.js +17 -0
  304. package/dist/collection/components/modal/modal.js +146 -65
  305. package/dist/collection/components/modal/safe-area-utils.js +39 -5
  306. package/dist/collection/components/nav/nav.js +24 -235
  307. package/dist/collection/components/nav-link/nav-link.js +1 -1
  308. package/dist/collection/components/note/note.js +2 -2
  309. package/dist/collection/components/picker/picker.js +1 -2
  310. package/dist/collection/components/picker-column/picker-column.css +3 -0
  311. package/dist/collection/components/picker-column/picker-column.js +212 -58
  312. package/dist/collection/components/picker-column-option/picker-column-option.js +3 -10
  313. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -1
  314. package/dist/collection/components/popover/animations/ios.enter.js +1 -2
  315. package/dist/collection/components/popover/animations/md.enter.js +1 -2
  316. package/dist/collection/components/popover/popover.ios.css +15 -0
  317. package/dist/collection/components/popover/popover.js +32 -9
  318. package/dist/collection/components/popover/popover.md.css +15 -0
  319. package/dist/collection/components/popover/utils.js +4 -6
  320. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  321. package/dist/collection/components/radio/radio.js +5 -5
  322. package/dist/collection/components/radio-group/radio-group.js +2 -2
  323. package/dist/collection/components/range/range.js +24 -19
  324. package/dist/collection/components/refresher/refresher.js +19 -13
  325. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  326. package/dist/collection/components/reorder/reorder.js +1 -1
  327. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  328. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  329. package/dist/collection/components/route/route.js +1 -1
  330. package/dist/collection/components/router/router.js +2 -6
  331. package/dist/collection/components/router/utils/dom.js +25 -7
  332. package/dist/collection/components/router/utils/matching.js +6 -9
  333. package/dist/collection/components/router/utils/parser.js +1 -1
  334. package/dist/collection/components/router/utils/path.js +0 -1
  335. package/dist/collection/components/router-link/router-link.js +2 -2
  336. package/dist/collection/components/router-outlet/router-outlet.js +49 -10
  337. package/dist/collection/components/row/row.js +1 -1
  338. package/dist/collection/components/searchbar/searchbar.js +25 -20
  339. package/dist/collection/components/segment/segment.js +9 -11
  340. package/dist/collection/components/segment-button/segment-button.js +15 -9
  341. package/dist/collection/components/segment-content/segment-content.js +1 -1
  342. package/dist/collection/components/segment-view/segment-view.js +3 -4
  343. package/dist/collection/components/select/select.ios.css +96 -69
  344. package/dist/collection/components/select/select.js +405 -92
  345. package/dist/collection/components/select/select.md.css +118 -85
  346. package/dist/collection/components/select-modal/select-modal.ios.css +218 -0
  347. package/dist/collection/components/select-modal/select-modal.js +80 -27
  348. package/dist/collection/components/select-modal/select-modal.md.css +164 -0
  349. package/dist/collection/components/select-option/select-option.js +67 -3
  350. package/dist/collection/components/select-popover/select-popover.ios.css +218 -0
  351. package/dist/collection/components/select-popover/select-popover.js +78 -26
  352. package/dist/collection/components/select-popover/select-popover.md.css +164 -0
  353. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  354. package/dist/collection/components/spinner/spinner.js +2 -3
  355. package/dist/collection/components/split-pane/split-pane.js +2 -2
  356. package/dist/collection/components/tab/tab.js +2 -2
  357. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  358. package/dist/collection/components/tab-button/tab-button.js +6 -4
  359. package/dist/collection/components/tabs/tabs.js +2 -3
  360. package/dist/collection/components/text/text.js +2 -2
  361. package/dist/collection/components/textarea/textarea.ios.css +94 -62
  362. package/dist/collection/components/textarea/textarea.js +47 -57
  363. package/dist/collection/components/textarea/textarea.md.css +103 -77
  364. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  365. package/dist/collection/components/title/title.js +2 -2
  366. package/dist/collection/components/toast/toast.js +12 -9
  367. package/dist/collection/components/toggle/toggle.js +6 -4
  368. package/dist/collection/components/toolbar/toolbar.js +7 -4
  369. package/dist/collection/global/config.js +3 -3
  370. package/dist/collection/global/ionic-global.js +8 -2
  371. package/dist/collection/index.js +1 -1
  372. package/dist/collection/utils/animation/animation.js +3 -3
  373. package/dist/collection/utils/config.js +5 -4
  374. package/dist/collection/utils/content/index.js +30 -0
  375. package/dist/collection/utils/focus-controller/index.js +1 -1
  376. package/dist/collection/utils/focus-trap.js +3 -3
  377. package/dist/collection/utils/forms/index.js +1 -0
  378. package/dist/collection/utils/forms/start-container-controller.js +132 -0
  379. package/dist/collection/utils/framework-delegate.js +4 -6
  380. package/dist/collection/utils/gesture/gesture-controller.js +1 -2
  381. package/dist/collection/utils/gesture/index.js +10 -2
  382. package/dist/collection/utils/gesture/listener.js +4 -27
  383. package/dist/collection/utils/hardware-back-button.js +3 -3
  384. package/dist/collection/utils/helpers.js +14 -10
  385. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +4 -5
  386. package/dist/collection/utils/input-shims/hacks/scroll-data.js +1 -2
  387. package/dist/collection/utils/keyboard/keyboard-controller.js +5 -5
  388. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  389. package/dist/collection/utils/logging/index.js +23 -4
  390. package/dist/collection/utils/menu-controller/index.js +1 -2
  391. package/dist/collection/utils/native/haptic.js +2 -3
  392. package/dist/collection/utils/native/keyboard.js +2 -2
  393. package/dist/collection/utils/native/status-bar.js +1 -1
  394. package/dist/collection/utils/overlay-control-label.js +45 -0
  395. package/dist/collection/utils/overlays.js +87 -48
  396. package/dist/collection/utils/platform.js +4 -5
  397. package/dist/collection/utils/rtl/dir.js +17 -7
  398. package/dist/collection/utils/sanitization/index.js +283 -26
  399. package/dist/collection/utils/select-option-render.js +118 -0
  400. package/dist/collection/utils/slot-mutation-controller.js +1 -2
  401. package/dist/collection/utils/test/late-props/late-props.js +69 -0
  402. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  403. package/dist/collection/utils/test/playwright/detach-reattach.js +23 -0
  404. package/dist/collection/utils/test/playwright/drag-element.js +2 -3
  405. package/dist/collection/utils/test/playwright/generator.js +3 -4
  406. package/dist/collection/utils/test/playwright/index.js +1 -0
  407. package/dist/collection/utils/test/playwright/page/event-spy.js +2 -4
  408. package/dist/collection/utils/test/playwright/page/utils/goto.js +4 -5
  409. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  410. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +2 -3
  411. package/dist/collection/utils/test/press-keys.js +6 -16
  412. package/dist/collection/utils/theme.js +6 -1
  413. package/dist/collection/utils/transition/ios.transition.js +9 -13
  414. package/dist/collection/utils/transition/md.transition.js +3 -4
  415. package/dist/docs.json +933 -1402
  416. package/dist/esm/{animation-DLJpuoEz.js → animation-BFNVlYum.js} +4 -4
  417. package/dist/esm/{app-globals-D0C5S4hU.js → app-globals-BgX0BGL1.js} +1 -1
  418. package/dist/esm/{button-active-BSpTQmS9.js → button-active-BfOvDr3b.js} +3 -3
  419. package/dist/esm/config-DWCzVL3Y.js +32 -0
  420. package/dist/esm/dir-Dojwmvde.js +28 -0
  421. package/dist/esm/{format-CAmvpAez.js → format-DDFE9jM5.js} +41 -31
  422. package/dist/esm/{framework-delegate-FnPGymXL.js → framework-delegate-BwNhx9NR.js} +5 -7
  423. package/dist/esm/{gesture-controller-BTEOs1at.js → gesture-controller-B_gJaBk0.js} +1 -2
  424. package/dist/esm/{haptic-DzAMWJuk.js → haptic-Cq4UAeka.js} +2 -3
  425. package/dist/esm/{hardware-back-button-B93Gru0Y.js → hardware-back-button-DmkiRgOT.js} +4 -4
  426. package/dist/esm/{helpers-HEqiOzXb.js → helpers-BSmc0nst.js} +15 -11
  427. package/dist/esm/{index-CfgBF1SE.js → index-BmLuEdV7.js} +13 -30
  428. package/dist/esm/{index-Q6UPU0Ay.js → index-BuPaALjU.js} +6 -7
  429. package/dist/esm/{index-DV3sJJW8.js → index-BvabGprD.js} +2 -2
  430. package/dist/esm/{index-MEDq2S8l.js → index-C1b9CLFg.js} +33 -3
  431. package/dist/esm/{index-tcQvqkiX.js → index-C23AVPx9.js} +303 -26
  432. package/dist/esm/{index-BRHzoo00.js → index-CJln0gS3.js} +3 -2
  433. package/dist/esm/index-D76bbuoi.js +425 -0
  434. package/dist/esm/{index-B_dQk_WE.js → index-DnA_7Bnx.js} +5 -5
  435. package/dist/esm/index.js +17 -15
  436. package/dist/esm/{input-shims-D10mwcw1.js → input-shims-Dqk-Ou25.js} +10 -11
  437. package/dist/esm/input.utils-rqoH22pW.js +33 -0
  438. package/dist/esm/ion-accordion_2.entry.js +12 -12
  439. package/dist/esm/ion-action-sheet.entry.js +92 -44
  440. package/dist/esm/ion-alert.entry.js +143 -64
  441. package/dist/esm/ion-app_8.entry.js +112 -40
  442. package/dist/esm/ion-avatar_3.entry.js +4 -4
  443. package/dist/esm/ion-back-button.entry.js +6 -5
  444. package/dist/esm/ion-backdrop.entry.js +2 -2
  445. package/dist/esm/ion-breadcrumb_2.entry.js +8 -7
  446. package/dist/esm/ion-button_2.entry.js +12 -8
  447. package/dist/esm/ion-card_5.entry.js +6 -5
  448. package/dist/esm/ion-checkbox.entry.js +10 -7
  449. package/dist/esm/ion-chip.entry.js +3 -3
  450. package/dist/esm/ion-col_3.entry.js +10 -6
  451. package/dist/esm/ion-datetime-button.entry.js +22 -25
  452. package/dist/esm/{ion-datetime_3.entry.js → ion-datetime.entry.js} +183 -745
  453. package/dist/esm/ion-fab_3.entry.js +7 -6
  454. package/dist/esm/ion-img.entry.js +7 -4
  455. package/dist/esm/ion-infinite-scroll_2.entry.js +7 -5
  456. package/dist/esm/ion-input-otp.entry.js +20 -29
  457. package/dist/esm/ion-input-password-toggle.entry.js +9 -10
  458. package/dist/esm/ion-input.entry.js +56 -68
  459. package/dist/esm/ion-item-option_3.entry.js +21 -24
  460. package/dist/esm/ion-item_8.entry.js +38 -34
  461. package/dist/esm/ion-loading.entry.js +28 -14
  462. package/dist/esm/ion-menu_3.entry.js +23 -24
  463. package/dist/esm/ion-modal.entry.js +271 -149
  464. package/dist/esm/ion-nav_2.entry.js +30 -138
  465. package/dist/esm/ion-picker-column-option.entry.js +8 -13
  466. package/dist/esm/ion-picker-column.entry.js +218 -62
  467. package/dist/esm/ion-picker.entry.js +4 -4
  468. package/dist/esm/ion-popover.entry.js +50 -30
  469. package/dist/esm/ion-progress-bar.entry.js +6 -5
  470. package/dist/esm/ion-radio_2.entry.js +12 -11
  471. package/dist/esm/ion-range.entry.js +30 -25
  472. package/dist/esm/ion-refresher_2.entry.js +32 -24
  473. package/dist/esm/ion-reorder_2.entry.js +10 -9
  474. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  475. package/dist/esm/ion-route_4.entry.js +36 -30
  476. package/dist/esm/ion-searchbar.entry.js +27 -22
  477. package/dist/esm/ion-segment-content.entry.js +2 -2
  478. package/dist/esm/ion-segment-view.entry.js +5 -6
  479. package/dist/esm/ion-segment_2.entry.js +30 -26
  480. package/dist/esm/ion-select-modal.entry.js +93 -38
  481. package/dist/esm/ion-select_3.entry.js +495 -126
  482. package/dist/esm/ion-spinner.entry.js +5 -6
  483. package/dist/esm/ion-split-pane.entry.js +4 -4
  484. package/dist/esm/ion-tab-bar_2.entry.js +15 -12
  485. package/dist/esm/ion-tab_2.entry.js +8 -8
  486. package/dist/esm/ion-text.entry.js +5 -5
  487. package/dist/esm/ion-textarea.entry.js +55 -64
  488. package/dist/esm/ion-toast.entry.js +25 -20
  489. package/dist/esm/ion-toggle.entry.js +15 -13
  490. package/dist/esm/{ionic-global-Cp_eT4sZ.js → ionic-global-ZXjCXKH0.js} +13 -8
  491. package/dist/esm/ionic.js +6 -6
  492. package/dist/esm/{ios.transition-ClFrsIrS.js → ios.transition-CWAgfQ1r.js} +14 -17
  493. package/dist/esm/{item-multiple-inputs-DlNuqNJm.js → item-multiple-inputs-DZnIiOO_.js} +1 -1
  494. package/dist/esm/{keyboard-ywgs5efA.js → keyboard-Cj8mLJeq.js} +2 -2
  495. package/dist/esm/{keyboard-CUw4ekVy.js → keyboard-DAF8GNJ9.js} +2 -2
  496. package/dist/esm/{keyboard-controller-BaaVITYt.js → keyboard-controller-DEwoa1ev.js} +6 -6
  497. package/dist/esm/loader.js +5 -5
  498. package/dist/esm/{md.transition-D0msQmzI.js → md.transition-ZuqDDdDW.js} +8 -8
  499. package/dist/esm/overlay-control-label-BSQPZ79H.js +47 -0
  500. package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-DKE0DgvE.js} +97 -58
  501. package/dist/esm/select-option-render-CRP_teb1.js +121 -0
  502. package/dist/esm/slot-mutation-controller-B5NpUZ-N.js +393 -0
  503. package/dist/esm/{status-tap-Kan2W7sh.js → status-tap-Cv9gb3ja.js} +4 -3
  504. package/dist/esm/{swipe-back-ZUWwA-KF.js → swipe-back-De5HlmeM.js} +5 -5
  505. package/dist/esm/{theme-DiVJyqlX.js → theme-byZM6qHV.js} +6 -1
  506. package/dist/html.html-data.json +54 -82
  507. package/dist/ionic/index.esm.js +1 -1
  508. package/dist/ionic/ionic.esm.js +1 -1
  509. package/dist/ionic/p-099b7f9f.entry.js +4 -0
  510. package/dist/ionic/p-0dcb7bb6.entry.js +4 -0
  511. package/dist/ionic/p-1347880c.entry.js +4 -0
  512. package/dist/ionic/p-191a651e.entry.js +4 -0
  513. package/dist/ionic/p-1f24cb24.entry.js +4 -0
  514. package/dist/ionic/p-271c3640.entry.js +4 -0
  515. package/dist/ionic/p-2ea4bb36.entry.js +4 -0
  516. package/dist/ionic/p-338a02e0.entry.js +4 -0
  517. package/dist/ionic/p-38b9375b.entry.js +4 -0
  518. package/dist/ionic/p-3bba83ee.entry.js +4 -0
  519. package/dist/ionic/p-3e01c744.entry.js +4 -0
  520. package/dist/ionic/p-458715a9.entry.js +4 -0
  521. package/dist/ionic/p-4712a8a9.entry.js +4 -0
  522. package/dist/ionic/p-4c3e50f8.entry.js +4 -0
  523. package/dist/ionic/p-54cbb0a7.entry.js +4 -0
  524. package/dist/ionic/{p-2bb2cb18.entry.js → p-561af487.entry.js} +1 -1
  525. package/dist/ionic/p-5906ea6f.entry.js +4 -0
  526. package/dist/ionic/p-5cc09b40.entry.js +4 -0
  527. package/dist/ionic/p-5d9094ac.entry.js +4 -0
  528. package/dist/ionic/p-612ea3b1.entry.js +4 -0
  529. package/dist/ionic/p-68cc89a6.entry.js +4 -0
  530. package/dist/ionic/{p-dfa8d673.entry.js → p-6e386853.entry.js} +1 -1
  531. package/dist/ionic/p-77c96e08.entry.js +4 -0
  532. package/dist/ionic/p-7bfeccb3.entry.js +4 -0
  533. package/dist/ionic/p-7e394cc3.entry.js +4 -0
  534. package/dist/ionic/{p-0fa9c382.entry.js → p-7fbb3319.entry.js} +1 -1
  535. package/dist/ionic/p-803059b6.entry.js +4 -0
  536. package/dist/ionic/p-837db1b9.entry.js +4 -0
  537. package/dist/ionic/p-85599fe3.entry.js +4 -0
  538. package/dist/ionic/p-8b80d9f9.entry.js +4 -0
  539. package/dist/ionic/p-90f50a65.entry.js +4 -0
  540. package/dist/ionic/p-9595e305.entry.js +4 -0
  541. package/dist/ionic/p-9c5f2691.entry.js +4 -0
  542. package/dist/ionic/p-9ee9c5b6.entry.js +4 -0
  543. package/dist/ionic/p-BMPN55of.js +4 -0
  544. package/dist/ionic/p-BMiZX1LT.js +4 -0
  545. package/dist/ionic/p-BSQPZ79H.js +4 -0
  546. package/dist/ionic/p-BY6BzzPF.js +4 -0
  547. package/dist/ionic/p-B_gJaBk0.js +4 -0
  548. package/dist/ionic/p-BaeKWZ-a.js +4 -0
  549. package/dist/ionic/p-Bd72UYI2.js +4 -0
  550. package/dist/ionic/p-BgOvhHy_.js +4 -0
  551. package/dist/ionic/p-BhamHSw3.js +4 -0
  552. package/dist/ionic/p-BijjLYjT.js +4 -0
  553. package/dist/ionic/{p-DV3sJJW8.js → p-BvabGprD.js} +1 -1
  554. package/dist/ionic/p-C23AVPx9.js +6 -0
  555. package/dist/ionic/p-C8XilMh0.js +4 -0
  556. package/dist/ionic/p-CER8qW8Y.js +4 -0
  557. package/dist/ionic/p-CFuOr1Tu.js +4 -0
  558. package/dist/ionic/p-CM5OBjTW.js +4 -0
  559. package/dist/ionic/p-CMZYmFb4.js +4 -0
  560. package/dist/ionic/p-CkxVYPtX.js +4 -0
  561. package/dist/ionic/p-CmXuiRT6.js +4 -0
  562. package/dist/ionic/p-D0YpjgON.js +4 -0
  563. package/dist/ionic/p-D5t_-oMk.js +4 -0
  564. package/dist/ionic/p-D6rHcCvc.js +4 -0
  565. package/dist/ionic/p-D7jHfs0Y.js +4 -0
  566. package/dist/ionic/p-DLM95R4x.js +4 -0
  567. package/dist/ionic/p-DTxBioUO.js +4 -0
  568. package/dist/ionic/p-DWCzVL3Y.js +4 -0
  569. package/dist/ionic/p-DYUjHcuH.js +4 -0
  570. package/{components/p-BkKAANMJ.js → dist/ionic/p-DZ6Hmc-8.js} +1 -1
  571. package/dist/ionic/p-D_gb-kdd.js +4 -0
  572. package/dist/ionic/p-DajLgJ4d.js +4 -0
  573. package/dist/ionic/p-Do3zTvCA.js +4 -0
  574. package/dist/ionic/p-Dojwmvde.js +4 -0
  575. package/dist/ionic/p-T71k3C35.js +4 -0
  576. package/dist/ionic/p-a8df96c8.entry.js +4 -0
  577. package/dist/ionic/p-a8ff2489.entry.js +4 -0
  578. package/dist/ionic/p-aff52029.entry.js +4 -0
  579. package/dist/ionic/p-b3532b8d.entry.js +4 -0
  580. package/dist/ionic/p-b9b4e85d.entry.js +4 -0
  581. package/dist/ionic/p-byZM6qHV.js +4 -0
  582. package/dist/ionic/{p-c6e49f3f.entry.js → p-ca1b8865.entry.js} +1 -1
  583. package/dist/ionic/p-cc4320d3.entry.js +4 -0
  584. package/dist/ionic/p-d526798a.entry.js +4 -0
  585. package/dist/ionic/p-d6755739.entry.js +4 -0
  586. package/dist/ionic/p-d8c138d9.entry.js +4 -0
  587. package/dist/ionic/p-db449915.entry.js +4 -0
  588. package/dist/ionic/p-dd01be0a.entry.js +4 -0
  589. package/dist/ionic/p-ec00fd0d.entry.js +4 -0
  590. package/dist/ionic/p-ee09ac9d.entry.js +4 -0
  591. package/dist/ionic/{p-37e720da.entry.js → p-efc0cf82.entry.js} +1 -1
  592. package/dist/ionic/p-f0fb23c1.entry.js +4 -0
  593. package/dist/ionic/p-f83b3e0c.entry.js +4 -0
  594. package/dist/ionic/p-fa50d493.entry.js +4 -0
  595. package/dist/ionic/p-zWf7R2xV.js +4 -0
  596. package/dist/types/components/action-sheet/action-sheet.d.ts +10 -0
  597. package/dist/types/components/alert/alert.d.ts +7 -0
  598. package/dist/types/components/content/content.d.ts +12 -0
  599. package/dist/types/components/datetime/datetime.d.ts +5 -1
  600. package/dist/types/components/img/img.d.ts +2 -0
  601. package/dist/types/components/input/input.d.ts +12 -6
  602. package/dist/types/components/modal/gestures/sheet.d.ts +1 -0
  603. package/dist/types/components/modal/gestures/utils.d.ts +11 -0
  604. package/dist/types/components/modal/modal-interface.d.ts +9 -0
  605. package/dist/types/components/modal/modal.d.ts +25 -7
  606. package/dist/types/components/modal/safe-area-utils.d.ts +6 -0
  607. package/dist/types/components/nav/nav-interface.d.ts +0 -1
  608. package/dist/types/components/nav/nav.d.ts +2 -22
  609. package/dist/types/components/picker-column/picker-column.d.ts +42 -0
  610. package/dist/types/components/range/range.d.ts +4 -1
  611. package/dist/types/components/refresher/refresher.d.ts +7 -0
  612. package/dist/types/components/route/route.d.ts +1 -1
  613. package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
  614. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  615. package/dist/types/components/select/select-interface.d.ts +31 -0
  616. package/dist/types/components/select/select.d.ts +30 -6
  617. package/dist/types/components/select-option/select-option.d.ts +42 -1
  618. package/dist/types/components/textarea/textarea.d.ts +12 -5
  619. package/dist/types/components.d.ts +79 -316
  620. package/dist/types/index.d.ts +1 -1
  621. package/dist/types/interface.d.ts +0 -1
  622. package/dist/types/stencil-public-runtime.d.ts +12 -0
  623. package/dist/types/utils/config.d.ts +1 -8
  624. package/dist/types/utils/content/index.d.ts +12 -0
  625. package/dist/types/utils/forms/index.d.ts +1 -0
  626. package/dist/types/utils/forms/start-container-controller.d.ts +34 -0
  627. package/dist/types/utils/helpers.d.ts +8 -5
  628. package/dist/types/utils/logging/index.d.ts +2 -1
  629. package/dist/types/utils/overlay-control-label.d.ts +32 -0
  630. package/dist/types/utils/overlays.d.ts +20 -9
  631. package/dist/types/utils/rtl/dir.d.ts +10 -4
  632. package/dist/types/utils/sanitization/index.d.ts +58 -2
  633. package/dist/types/utils/select-option-render.d.ts +53 -0
  634. package/dist/types/utils/test/playwright/detach-reattach.d.ts +13 -0
  635. package/dist/types/utils/test/playwright/index.d.ts +1 -0
  636. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  637. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  638. package/hydrate/index.js +2998 -2155
  639. package/hydrate/index.mjs +2998 -2155
  640. package/loader/index.d.ts +1 -1
  641. package/package.json +58 -14
  642. package/components/ion-picker-legacy-column.d.ts +0 -11
  643. package/components/ion-picker-legacy-column.js +0 -4
  644. package/components/ion-picker-legacy.d.ts +0 -11
  645. package/components/ion-picker-legacy.js +0 -4
  646. package/components/p-A3O24YmY.js +0 -4
  647. package/components/p-ABkNVeU9.js +0 -4
  648. package/components/p-B-JJgYSG.js +0 -4
  649. package/components/p-BB42Mlnr.js +0 -4
  650. package/components/p-BLmJ0zRm.js +0 -4
  651. package/components/p-BSEgsdFI.js +0 -4
  652. package/components/p-BTEOs1at.js +0 -4
  653. package/components/p-BlIAuGv2.js +0 -4
  654. package/components/p-Bnsn6KaP.js +0 -4
  655. package/components/p-BsBCoGa-.js +0 -4
  656. package/components/p-Bz0dSlXZ.js +0 -4
  657. package/components/p-C53feagD.js +0 -4
  658. package/components/p-CHqRYvYm.js +0 -4
  659. package/components/p-CQGnMY3n.js +0 -4
  660. package/components/p-CSZf8_j0.js +0 -4
  661. package/components/p-C_xFdyXe.js +0 -4
  662. package/components/p-Cf2jSDS8.js +0 -4
  663. package/components/p-CkMSOsFF.js +0 -4
  664. package/components/p-Cl0B-RWe.js +0 -4
  665. package/components/p-CmR5uXej.js +0 -4
  666. package/components/p-CsNJ1ULL.js +0 -4
  667. package/components/p-CtWGkNnJ.js +0 -4
  668. package/components/p-CzCbeKys.js +0 -4
  669. package/components/p-D-aHdMxW.js +0 -4
  670. package/components/p-D0d8qTwj.js +0 -4
  671. package/components/p-D13Eaw-8.js +0 -4
  672. package/components/p-D3xo7hqU.js +0 -4
  673. package/components/p-D6Ynv7Xh.js +0 -4
  674. package/components/p-DCnGU1fF.js +0 -4
  675. package/components/p-DGZpx6KJ.js +0 -4
  676. package/components/p-DGvrK8dD.js +0 -4
  677. package/components/p-DHTSTb52.js +0 -4
  678. package/components/p-DOFCbuQR.js +0 -4
  679. package/components/p-DRugphUN.js +0 -4
  680. package/components/p-DV5mPYQS.js +0 -4
  681. package/components/p-DWkAgceV.js +0 -4
  682. package/components/p-DiVJyqlX.js +0 -4
  683. package/components/p-KEFO0w3i.js +0 -4
  684. package/components/p-Osve4qkc.js +0 -4
  685. package/components/p-SLS1rDZM.js +0 -4
  686. package/components/p-VWbRkLT7.js +0 -4
  687. package/components/p-aJ6PBUvj.js +0 -4
  688. package/components/p-cyNmxje6.js +0 -4
  689. package/components/p-k_E4tX5Z.js +0 -4
  690. package/components/p-oD4kcBRX.js +0 -4
  691. package/components/p-scxfI1Dd.js +0 -4
  692. package/components/p-yzCsOZE2.js +0 -4
  693. package/dist/cjs/config-xninhj0J.js +0 -201
  694. package/dist/cjs/dir-Cn0z1rJH.js +0 -20
  695. package/dist/cjs/input.utils-DetjmtH2.js +0 -150
  696. package/dist/cjs/notch-controller-18PzRGXd.js +0 -155
  697. package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
  698. package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
  699. package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
  700. package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
  701. package/dist/collection/components/picker-legacy/picker.js +0 -890
  702. package/dist/collection/components/picker-legacy/picker.md.css +0 -287
  703. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
  704. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
  705. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
  706. package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
  707. package/dist/esm/config-DQCONYYp.js +0 -195
  708. package/dist/esm/dir-C53feagD.js +0 -18
  709. package/dist/esm/input.utils-Y6NgW8bw.js +0 -147
  710. package/dist/esm/notch-controller-DKDjU_O7.js +0 -153
  711. package/dist/ionic/p-01f81ea5.entry.js +0 -4
  712. package/dist/ionic/p-06c232a4.entry.js +0 -4
  713. package/dist/ionic/p-0dc33652.entry.js +0 -4
  714. package/dist/ionic/p-10e833ef.entry.js +0 -4
  715. package/dist/ionic/p-20b1a044.entry.js +0 -4
  716. package/dist/ionic/p-21eb76d5.entry.js +0 -4
  717. package/dist/ionic/p-2394a9a6.entry.js +0 -4
  718. package/dist/ionic/p-27d30585.entry.js +0 -4
  719. package/dist/ionic/p-2a05aa64.entry.js +0 -4
  720. package/dist/ionic/p-2b204c59.entry.js +0 -4
  721. package/dist/ionic/p-2fa58e80.entry.js +0 -4
  722. package/dist/ionic/p-3353c229.entry.js +0 -4
  723. package/dist/ionic/p-33704f20.entry.js +0 -4
  724. package/dist/ionic/p-34586ead.entry.js +0 -4
  725. package/dist/ionic/p-390ca786.entry.js +0 -4
  726. package/dist/ionic/p-3ae5f277.entry.js +0 -4
  727. package/dist/ionic/p-4654ae1c.entry.js +0 -4
  728. package/dist/ionic/p-4745f534.entry.js +0 -4
  729. package/dist/ionic/p-4858af1f.entry.js +0 -4
  730. package/dist/ionic/p-4ac4f3d6.entry.js +0 -4
  731. package/dist/ionic/p-4baa5b82.entry.js +0 -4
  732. package/dist/ionic/p-4e92a11f.entry.js +0 -4
  733. package/dist/ionic/p-5018dfc8.entry.js +0 -4
  734. package/dist/ionic/p-50e1194a.entry.js +0 -4
  735. package/dist/ionic/p-5d1da0a2.entry.js +0 -4
  736. package/dist/ionic/p-5eb8e86d.entry.js +0 -4
  737. package/dist/ionic/p-65ebdf1b.entry.js +0 -4
  738. package/dist/ionic/p-75dc25ba.entry.js +0 -4
  739. package/dist/ionic/p-7c319341.entry.js +0 -4
  740. package/dist/ionic/p-829367ed.entry.js +0 -4
  741. package/dist/ionic/p-84d5ce05.entry.js +0 -4
  742. package/dist/ionic/p-874b4bd8.entry.js +0 -4
  743. package/dist/ionic/p-8eb8ee76.entry.js +0 -4
  744. package/dist/ionic/p-8fce95d5.entry.js +0 -4
  745. package/dist/ionic/p-9eeaBrnk.js +0 -4
  746. package/dist/ionic/p-9f1103ce.entry.js +0 -4
  747. package/dist/ionic/p-9f9db3a2.entry.js +0 -4
  748. package/dist/ionic/p-BGqMS-oh.js +0 -4
  749. package/dist/ionic/p-BTEOs1at.js +0 -4
  750. package/dist/ionic/p-BUFIpxKM.js +0 -4
  751. package/dist/ionic/p-C0eMdTCW.js +0 -4
  752. package/dist/ionic/p-C53feagD.js +0 -4
  753. package/dist/ionic/p-CFlfIb2g.js +0 -4
  754. package/dist/ionic/p-CKvCXMs9.js +0 -4
  755. package/dist/ionic/p-Cl0B-RWe.js +0 -4
  756. package/dist/ionic/p-CtWGkNnJ.js +0 -4
  757. package/dist/ionic/p-CwdymDLH.js +0 -4
  758. package/dist/ionic/p-Cx3IXROA.js +0 -4
  759. package/dist/ionic/p-D-3ycHmd.js +0 -4
  760. package/dist/ionic/p-D13Eaw-8.js +0 -4
  761. package/dist/ionic/p-DC3RagnA.js +0 -4
  762. package/dist/ionic/p-DIuEbVLu.js +0 -4
  763. package/dist/ionic/p-DSG2s2Eb.js +0 -4
  764. package/dist/ionic/p-Dfbt-q2k.js +0 -4
  765. package/dist/ionic/p-DiVJyqlX.js +0 -4
  766. package/dist/ionic/p-DoJvtrbw.js +0 -4
  767. package/dist/ionic/p-DqN5EA2O.js +0 -4
  768. package/dist/ionic/p-DzWaWHGc.js +0 -4
  769. package/dist/ionic/p-Nqf6uvGh.js +0 -4
  770. package/dist/ionic/p-SNAkTDfm.js +0 -4
  771. package/dist/ionic/p-VAemlbDS.js +0 -4
  772. package/dist/ionic/p-Wk5HzclC.js +0 -4
  773. package/dist/ionic/p-a3bdcae6.entry.js +0 -4
  774. package/dist/ionic/p-aaeedb6b.entry.js +0 -4
  775. package/dist/ionic/p-bfc9bb0f.entry.js +0 -4
  776. package/dist/ionic/p-c0fb8edd.entry.js +0 -4
  777. package/dist/ionic/p-c38b648e.entry.js +0 -4
  778. package/dist/ionic/p-c4d8641b.entry.js +0 -4
  779. package/dist/ionic/p-ca2ab74d.entry.js +0 -4
  780. package/dist/ionic/p-d889ff6d.entry.js +0 -4
  781. package/dist/ionic/p-e0be05c5.entry.js +0 -4
  782. package/dist/ionic/p-ef4c3bee.entry.js +0 -4
  783. package/dist/ionic/p-fd7eebc4.entry.js +0 -4
  784. package/dist/ionic/p-mjKAFv89.js +0 -4
  785. package/dist/ionic/p-tcQvqkiX.js +0 -5
  786. package/dist/ionic/p-viFHDgRs.js +0 -4
  787. package/dist/ionic/p-xWb6fgfq.js +0 -4
  788. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
  789. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
  790. package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
  791. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  792. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  793. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
  794. /package/components/{p-CO7fmmxt.js → p-LpMHEu3v.js} +0 -0
@@ -75,6 +75,14 @@
75
75
  * @prop --border-width: Width of the select border
76
76
  *
77
77
  * @prop --ripple-color: The color of the ripple effect on MD mode.
78
+ *
79
+ * @prop --select-text-media-width: The width of media (icons/images) in the select text.
80
+ * @prop --select-text-media-height: The height of media (icons/images) in the select text.
81
+ * @prop --select-text-media-border-width: The border width of media (icons/images) in the select text.
82
+ * @prop --select-text-media-border-color: The border color of media (icons/images) in the select text.
83
+ * @prop --select-text-media-border-radius: The border radius of media (icons/images) in the select text.
84
+ * @prop --select-text-media-border-style: The border style of media (icons/images) in the select text.
85
+ * @prop --select-text-gap: The gap between elements in the select text.
78
86
  */
79
87
  --padding-top: 0px;
80
88
  --padding-end: 0px;
@@ -87,6 +95,9 @@
87
95
  --highlight-color-focused: var(--ion-color-primary, #0054e9);
88
96
  --highlight-color-valid: var(--ion-color-success, #2dd55b);
89
97
  --highlight-color-invalid: var(--ion-color-danger, #c5000f);
98
+ --select-text-media-height: 1.5em;
99
+ --select-text-media-width: 1.5em;
100
+ --select-text-gap: 12px;
90
101
  /**
91
102
  * This is a private API that is used to switch
92
103
  * out the highlight color based on the state
@@ -191,33 +202,6 @@ button {
191
202
  color: inherit;
192
203
  }
193
204
 
194
- /**
195
- * The select icon should be centered with
196
- * the entire container not just the control
197
- * with floating/stacked labels.
198
- */
199
- :host(.select-label-placement-stacked) .select-icon,
200
- :host(.select-label-placement-floating) .select-icon {
201
- position: absolute;
202
- height: 100%;
203
- }
204
-
205
- /**
206
- * This positions the icon at the correct
207
- * edge of the component with LTR and RTL
208
- * text directions. The position mixin cannot be
209
- * used here because the icon is in the Shadow DOM.
210
- */
211
- :host(.select-ltr.select-label-placement-stacked) .select-icon,
212
- :host(.select-ltr.select-label-placement-floating) .select-icon {
213
- right: var(--padding-end, 0);
214
- }
215
-
216
- :host(.select-rtl.select-label-placement-stacked) .select-icon,
217
- :host(.select-rtl.select-label-placement-floating) .select-icon {
218
- left: var(--padding-start, 0);
219
- }
220
-
221
205
  .select-text {
222
206
  flex: 1;
223
207
  min-width: 16px;
@@ -227,6 +211,28 @@ button {
227
211
  overflow: hidden;
228
212
  }
229
213
 
214
+ /**
215
+ * If the select text contains rich content, we want to add some
216
+ * spacing between the elements without changing the display to
217
+ * prevent losing the ellipses behavior.
218
+ */
219
+ .select-text > * + * {
220
+ margin-inline-start: var(--select-text-gap);
221
+ }
222
+
223
+ .select-text img,
224
+ .select-text ion-img,
225
+ .select-text ion-icon,
226
+ .select-text ion-thumbnail,
227
+ .select-text ion-avatar {
228
+ border-radius: var(--select-text-media-border-radius);
229
+ width: var(--select-text-media-width);
230
+ height: var(--select-text-media-height);
231
+ border-width: var(--select-text-media-border-width);
232
+ border-style: var(--select-text-media-border-style);
233
+ border-color: var(--select-text-media-border-color);
234
+ }
235
+
230
236
  .select-wrapper {
231
237
  -webkit-padding-start: var(--padding-start);
232
238
  padding-inline-start: var(--padding-start);
@@ -238,7 +244,7 @@ button {
238
244
  display: flex;
239
245
  position: relative;
240
246
  flex-grow: 1;
241
- align-items: center;
247
+ align-items: stretch;
242
248
  justify-content: space-between;
243
249
  height: inherit;
244
250
  /**
@@ -264,21 +270,24 @@ button {
264
270
  transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
265
271
  }
266
272
 
267
- .select-wrapper-inner {
273
+ /**
274
+ * The control must inherit specific flex properties
275
+ * so that it will be placed properly when justify
276
+ * or label-placement are set on the host.
277
+ */
278
+ .select-control {
268
279
  display: flex;
280
+ flex: 1;
281
+ flex-direction: inherit;
269
282
  align-items: center;
270
- overflow: hidden;
271
- }
272
-
273
- :host(.select-label-placement-stacked) .select-wrapper-inner,
274
- :host(.select-label-placement-floating) .select-wrapper-inner {
283
+ justify-content: inherit;
275
284
  /**
276
- * When using a stacked/floating label, the inner wrapper is
277
- * stacked vertically under the label container. This line
278
- * ensures that the inner wrapper fills all the remaining height
279
- * of the component.
285
+ * The min-width is set to 0 to allow flex items to shrink below
286
+ * their content size. This enables the select text to collapse
287
+ * in width. We avoid overflow: hidden here because it will clip
288
+ * the floating label.
280
289
  */
281
- flex-grow: 1;
290
+ min-width: 0;
282
291
  }
283
292
 
284
293
  :host(.ion-touched.ion-invalid) {
@@ -366,6 +375,12 @@ button {
366
375
  */
367
376
  display: flex;
368
377
  align-items: center;
378
+ /**
379
+ * Allows the label to shrink below its intrinsic content width.
380
+ * Without this the label keeps its full width and can push the
381
+ * select and end slot outside the wrapper.
382
+ */
383
+ min-width: 0;
369
384
  /**
370
385
  * Label text should not extend
371
386
  * beyond the bounds of the select.
@@ -384,6 +399,18 @@ button {
384
399
  pointer-events: none;
385
400
  }
386
401
 
402
+ /**
403
+ * When start/end slots are added or removed, we temporarily
404
+ * disable the label transition to prevent the floating label
405
+ * from animating as its position is adjusted.
406
+ *
407
+ * This class is applied by the start container controller, so
408
+ * renaming it here requires renaming it there too.
409
+ */
410
+ :host(.skip-label-transition) .label-text-wrapper {
411
+ transition: none;
412
+ }
413
+
387
414
  /**
388
415
  * We need to use two elements instead of
389
416
  * one. The .label-text-wrapper is responsible
@@ -416,6 +443,13 @@ button {
416
443
 
417
444
  .native-wrapper {
418
445
  display: flex;
446
+ /**
447
+ * Give up space before the label does. Flexbox would otherwise take
448
+ * from both in proportion to their size and truncate the shorter
449
+ * label first. The factor is this large because the label truncates
450
+ * as soon as it loses any width at all, even a fraction of a pixel.
451
+ */
452
+ flex-shrink: 100000;
419
453
  align-items: center;
420
454
  /**
421
455
  * When the floating label appears on top of the
@@ -519,9 +553,16 @@ button {
519
553
  * down when the select is focused or has a value.
520
554
  *
521
555
  */
522
- :host(.select-label-placement-stacked) .select-wrapper,
523
- :host(.select-label-placement-floating) .select-wrapper {
556
+ :host(.select-label-placement-stacked) .select-control,
557
+ :host(.select-label-placement-floating) .select-control {
524
558
  flex-direction: column;
559
+ /**
560
+ * When using a stacked/floating label, the control is
561
+ * stacked vertically under the label container. This line
562
+ * ensures that the control fills all the remaining height
563
+ * of the component.
564
+ */
565
+ flex-grow: 1;
525
566
  align-items: start;
526
567
  }
527
568
 
@@ -546,17 +587,11 @@ button {
546
587
  }
547
588
 
548
589
  /**
549
- * Ensures the select does not
550
- * overlap the label.
551
- * Also ensure that the native wrapper
552
- * takes up the remaining available height and width.
590
+ * Ensures that the native wrapper takes up the
591
+ * remaining available height and width.
553
592
  */
554
593
  :host(.select-label-placement-stacked) .native-wrapper,
555
594
  :host(.select-label-placement-floating) .native-wrapper {
556
- margin-left: 0;
557
- margin-right: 0;
558
- margin-top: 1px;
559
- margin-bottom: 0;
560
595
  flex-grow: 1;
561
596
  width: 100%;
562
597
  }
@@ -580,27 +615,16 @@ button {
580
615
  * The placeholder should be hidden when the label
581
616
  * is on top of the select. This prevents the label
582
617
  * from overlapping any placeholder value.
583
- *
584
- * TODO(FW-5592): Remove :not(.label-floating) piece
585
618
  */
586
- :host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder {
619
+ :host(.select-label-placement-floating) .native-wrapper .select-placeholder {
587
620
  opacity: 0;
588
621
  }
589
622
 
590
623
  /**
591
- * We don't use .label-floating here because that would
592
- * also include the case where the label is floating due
593
- * to content in the start/end slot. We want the opacity
594
- * to remain at the default in this case, since the select
595
- * isn't being actively interacted with.
596
- *
597
- * TODO(FW-5592): Change entire selector to:
598
- * :host(.label-floating.select-label-placement-floating) .native-wrapper .select-placeholder
624
+ * Show the placeholder when the label is floating.
599
625
  */
600
- :host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,
601
- :host(.has-focus.select-label-placement-floating) .native-wrapper .select-placeholder,
602
- :host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder {
603
- opacity: 1;
626
+ :host(.label-floating.select-label-placement-floating) .native-wrapper .select-placeholder {
627
+ opacity: var(--placeholder-opacity);
604
628
  }
605
629
 
606
630
  /**
@@ -615,6 +639,14 @@ button {
615
639
  max-width: calc(100% / 0.75);
616
640
  }
617
641
 
642
+ .select-start,
643
+ .select-end {
644
+ display: flex;
645
+ position: relative;
646
+ flex-shrink: 0;
647
+ align-items: center;
648
+ }
649
+
618
650
  ::slotted([slot=start]), ::slotted([slot=end]) {
619
651
  /**
620
652
  * Prevent the slots from shrinking when the label and/or
@@ -947,6 +979,14 @@ button {
947
979
  --border-radius: 4px;
948
980
  --padding-start: 16px;
949
981
  --padding-end: 16px;
982
+ /**
983
+ * The measured width of the start container, as a negative offset
984
+ * in LTR and a positive one in RTL. Written to the host by the
985
+ * start container controller, so renaming it here requires renaming
986
+ * it there too. Declared with a default so the label is positioned
987
+ * correctly before the first measurement runs.
988
+ */
989
+ --internal-start-container-adjustment: 0px;
950
990
  min-height: 56px;
951
991
  }
952
992
 
@@ -1016,10 +1056,11 @@ button {
1016
1056
  :host(.select-fill-outline.select-label-placement-floating) .label-text-wrapper {
1017
1057
  position: absolute;
1018
1058
  /**
1019
- * Label text should not extend
1020
- * beyond the bounds of the select.
1059
+ * While resting this is the width of the select, which already
1060
+ * excludes the start and end slots. Once the label floats the
1061
+ * containing block becomes the wrapper and the rule below takes over.
1021
1062
  */
1022
- max-width: calc(100% - var(--padding-start) - var(--padding-end));
1063
+ max-width: 100%;
1023
1064
  }
1024
1065
 
1025
1066
  /**
@@ -1032,11 +1073,20 @@ button {
1032
1073
  z-index: 1;
1033
1074
  }
1034
1075
 
1076
+ /**
1077
+ * The resting label is positioned relative to the control so it can size to
1078
+ * the space between the start and end slots. When floating, the label needs
1079
+ * to escape the control and position itself relative to the wrapper instead.
1080
+ */
1081
+ :host(.select-fill-outline:not(.label-floating)) .select-control {
1082
+ position: relative;
1083
+ }
1084
+
1035
1085
  /**
1036
1086
  * This makes the label sit above the select.
1037
1087
  */
1038
1088
  :host(.label-floating.select-fill-outline) .label-text-wrapper {
1039
- transform: translateY(-32%) scale(0.75);
1089
+ transform: translate(var(--internal-start-container-adjustment, 0px), -32%) scale(0.75);
1040
1090
  margin-left: 0;
1041
1091
  margin-right: 0;
1042
1092
  margin-top: 0;
@@ -1131,16 +1181,10 @@ button {
1131
1181
  :host(.select-fill-outline) .select-outline-start {
1132
1182
  -webkit-border-start: var(--border-width) var(--border-style) var(--border-color);
1133
1183
  border-inline-start: var(--border-width) var(--border-style) var(--border-color);
1134
- }
1135
-
1136
- :host(.select-fill-outline) .select-outline-start {
1137
1184
  border-start-start-radius: var(--border-radius);
1138
1185
  border-start-end-radius: 0px;
1139
1186
  border-end-end-radius: 0px;
1140
1187
  border-end-start-radius: var(--border-radius);
1141
- }
1142
-
1143
- :host(.select-fill-outline) .select-outline-start {
1144
1188
  /**
1145
1189
  * There should be spacing between the translated text
1146
1190
  * and .select-outline-start. However, we can't add this
@@ -1155,16 +1199,10 @@ button {
1155
1199
  :host(.select-fill-outline) .select-outline-end {
1156
1200
  -webkit-border-end: var(--border-width) var(--border-style) var(--border-color);
1157
1201
  border-inline-end: var(--border-width) var(--border-style) var(--border-color);
1158
- }
1159
-
1160
- :host(.select-fill-outline) .select-outline-end {
1161
1202
  border-start-start-radius: 0px;
1162
1203
  border-start-end-radius: var(--border-radius);
1163
1204
  border-end-end-radius: var(--border-radius);
1164
1205
  border-end-start-radius: 0px;
1165
- }
1166
-
1167
- :host(.select-fill-outline) .select-outline-end {
1168
1206
  /**
1169
1207
  * The ending outline fragment
1170
1208
  * should take up the remaining free space.
@@ -1293,11 +1331,6 @@ button {
1293
1331
  --border-radius: 16px;
1294
1332
  }
1295
1333
 
1296
- :host(.select-label-placement-stacked) .select-wrapper-inner,
1297
- :host(.select-label-placement-floating) .select-wrapper-inner {
1298
- width: calc(100% - 0.8125rem - 4px);
1299
- }
1300
-
1301
1334
  :host(.select-disabled) {
1302
1335
  opacity: 0.38;
1303
1336
  }
@@ -1,3 +1,221 @@
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 font size to a dynamic font size.
25
+ * Fonts that participate in Dynamic Type should use
26
+ * dynamic font sizes.
27
+ * @param size - The initial font size including the unit (i.e. px or pt)
28
+ * @param unit (optional) - The unit to convert to. Use this if you want to
29
+ * convert to a unit other than $baselineUnit.
30
+ */
31
+ /**
32
+ * Convert a font size to a dynamic font size but impose
33
+ * a maximum font size.
34
+ * @param size - The initial font size including the unit (i.e. px or pt)
35
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
36
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
37
+ * convert to a unit other than $baselineUnit.
38
+ */
39
+ /**
40
+ * Convert a font size to a dynamic font size but impose
41
+ * a minimum font size.
42
+ * @param size - The initial font size including the unit (i.e. px or pt)
43
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
44
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
45
+ * convert to a unit other than $baselineUnit.
46
+ */
47
+ /**
48
+ * Convert a font size to a dynamic font size but impose
49
+ * maximum and minimum font sizes.
50
+ * @param size - The initial font size including the unit (i.e. px or pt)
51
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
52
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
53
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
54
+ * convert to a unit other than $baselineUnit.
55
+ */
56
+ .action-sheet-button-label-has-rich-content,
57
+ .alert-radio-label-has-rich-content,
58
+ .alert-checkbox-label-has-rich-content,
59
+ .select-option-label-has-rich-content {
60
+ display: flex;
61
+ align-items: center;
62
+ gap: 16px;
63
+ }
64
+
65
+ /**
66
+ * Outer label container has rich content
67
+ * (start, content, description, end) that needs the
68
+ * label to span the available row width.
69
+ */
70
+ .action-sheet-button-label-has-rich-content,
71
+ .alert-radio-label-has-rich-content,
72
+ .alert-checkbox-label-has-rich-content,
73
+ .select-option-content {
74
+ flex: 1;
75
+ }
76
+
77
+ .action-sheet-button-label-text,
78
+ .alert-checkbox-label-text,
79
+ .alert-radio-label-text,
80
+ .select-option-label-text {
81
+ display: flex;
82
+ align-items: center;
83
+ gap: 12px;
84
+ }
85
+
86
+ .select-option-start,
87
+ .select-option-end {
88
+ display: flex;
89
+ align-items: center;
90
+ gap: 8px;
91
+ }
92
+
93
+ .select-option-description {
94
+ padding-left: 0;
95
+ padding-right: 0;
96
+ padding-top: 5px;
97
+ padding-bottom: 0;
98
+ display: block;
99
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
100
+ font-size: 0.75rem;
101
+ }
102
+
103
+ /**
104
+ * Non-rich labels are plain text and should ellipsize when they
105
+ * overflow the row. Rich-content labels switch to flex so the
106
+ * start / content / end pieces can lay out side-by-side and wrap.
107
+ */
108
+ .select-option-label:not(.select-option-label-has-rich-content) {
109
+ text-overflow: ellipsis;
110
+ white-space: nowrap;
111
+ overflow: hidden;
112
+ }
113
+
114
+ .select-option-label-has-rich-content {
115
+ display: flex;
116
+ align-items: center;
117
+ }
118
+
119
+ ion-radio.select-option-has-rich-content::part(label),
120
+ ion-checkbox.select-option-has-rich-content::part(label),
121
+ .select-option-content {
122
+ flex: 1;
123
+ /**
124
+ * Let rich content wrap instead of inheriting the label part's
125
+ * single-line truncation, so arbitrary slotted elements render
126
+ * without clipping.
127
+ */
128
+ white-space: normal;
129
+ }
130
+
131
+ /**
132
+ * Convert a font size to a dynamic font size.
133
+ * Fonts that participate in Dynamic Type should use
134
+ * dynamic font sizes.
135
+ * @param size - The initial font size including the unit (i.e. px or pt)
136
+ * @param unit (optional) - The unit to convert to. Use this if you want to
137
+ * convert to a unit other than $baselineUnit.
138
+ */
139
+ /**
140
+ * Convert a font size to a dynamic font size but impose
141
+ * a maximum font size.
142
+ * @param size - The initial font size including the unit (i.e. px or pt)
143
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
144
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
145
+ * convert to a unit other than $baselineUnit.
146
+ */
147
+ /**
148
+ * Convert a font size to a dynamic font size but impose
149
+ * a minimum font size.
150
+ * @param size - The initial font size including the unit (i.e. px or pt)
151
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
152
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
153
+ * convert to a unit other than $baselineUnit.
154
+ */
155
+ /**
156
+ * Convert a font size to a dynamic font size but impose
157
+ * maximum and minimum font sizes.
158
+ * @param size - The initial font size including the unit (i.e. px or pt)
159
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
160
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
161
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
162
+ * convert to a unit other than $baselineUnit.
163
+ */
164
+ /**
165
+ * A heuristic that applies CSS to tablet
166
+ * viewports.
167
+ *
168
+ * Usage:
169
+ * @include tablet-viewport() {
170
+ * :host {
171
+ * background-color: green;
172
+ * }
173
+ * }
174
+ */
175
+ /**
176
+ * A heuristic that applies CSS to mobile
177
+ * viewports (i.e. phones, not tablets).
178
+ *
179
+ * Usage:
180
+ * @include mobile-viewport() {
181
+ * :host {
182
+ * background-color: blue;
183
+ * }
184
+ * }
185
+ */
186
+ /**
187
+ * Cap slotted children so they can't stretch the option
188
+ * row out of proportion, keeping rows visually uniform
189
+ * regardless of the content.
190
+ */
191
+ .select-option-start > ion-avatar,
192
+ .select-option-start > ion-img,
193
+ .select-option-start > ion-thumbnail,
194
+ .select-option-start > img,
195
+ .select-option-start > svg,
196
+ .select-option-end > ion-avatar,
197
+ .select-option-end > ion-img,
198
+ .select-option-end > ion-thumbnail,
199
+ .select-option-end > img,
200
+ .select-option-end > svg {
201
+ width: 44px;
202
+ height: 44px;
203
+ }
204
+
205
+ .select-option-start > ion-icon,
206
+ .select-option-end > ion-icon {
207
+ font-size: 28px;
208
+ }
209
+
210
+ .action-sheet-button-label-text {
211
+ justify-content: center;
212
+ }
213
+
214
+ .select-option-has-rich-content {
215
+ -webkit-padding-end: 16px;
216
+ padding-inline-end: 16px;
217
+ }
218
+
1
219
  :host {
2
220
  height: 100%;
3
221
  }