@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,890 +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
- /**
63
- * A heuristic that applies CSS to tablet
64
- * viewports.
65
- *
66
- * Usage:
67
- * @include tablet-viewport() {
68
- * :host {
69
- * background-color: green;
70
- * }
71
- * }
72
- */
73
- /**
74
- * A heuristic that applies CSS to mobile
75
- * viewports (i.e. phones, not tablets).
76
- *
77
- * Usage:
78
- * @include mobile-viewport() {
79
- * :host {
80
- * background-color: blue;
81
- * }
82
- * }
83
- */
84
- :host {
85
- /**
86
- * @prop --background: Background of the textarea
87
- *
88
- * @prop --border-radius: Border radius of the textarea
89
- * @prop --border-color: Color of the border below the textarea when using helper text, error text, or counter
90
- * @prop --border-radius: Radius of the textarea border. A large radius may display unevenly when using fill="outline"; if needed, use shape="round" instead or increase --padding-start.
91
- * @prop --border-style: Style of the border below the textarea when using helper text, error text, or counter
92
- * @prop --border-width: Width of the border below the textarea when using helper text, error text, or counter
93
- *
94
- * @prop --color: Color of the text
95
- *
96
- * @prop --placeholder-color: Color of the placeholder text
97
- * @prop --placeholder-font-style: Style of the placeholder text
98
- * @prop --placeholder-font-weight: Weight of the placeholder text
99
- * @prop --placeholder-opacity: Opacity of the placeholder text
100
- *
101
- * @prop --highlight-height: The height of the highlight on the textarea. Only applies to md mode.
102
- * @prop --highlight-color-focused: The color of the highlight on the textarea when focused
103
- * @prop --highlight-color-valid: The color of the highlight on the textarea when valid
104
- * @prop --highlight-color-invalid: The color of the highlight on the textarea when invalid
105
- *
106
- * @prop --padding-top: Top padding of the textarea
107
- * @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the textarea
108
- * @prop --padding-bottom: Bottom padding of the textarea
109
- * @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the textarea
110
- */
111
- --background: initial;
112
- --color: initial;
113
- --placeholder-color: initial;
114
- --placeholder-font-style: initial;
115
- --placeholder-font-weight: initial;
116
- --padding-top: 0;
117
- --padding-end: 0;
118
- --padding-start: 0;
119
- --border-radius: 0;
120
- --border-style: solid;
121
- /**
122
- * This is a private API that is used to switch
123
- * out the highlight color based on the state
124
- * of the component without having to write
125
- * different selectors for different fill variants.
126
- */
127
- --highlight-color: var(--highlight-color-focused);
128
- display: block;
129
- position: relative;
130
- width: 100%;
131
- color: var(--color);
132
- box-sizing: border-box;
133
- }
134
-
135
- /**
136
- * When the cols property is set we should
137
- * respect that width instead of defaulting
138
- * to taking up the entire line.
139
- * Requires both the cols and autoGrow
140
- * properties to be reflected as attributes
141
- * on the host.
142
- *
143
- * cols does not work with autoGrow because
144
- * autoGrow would prevent line breaks from naturally
145
- * occurring until the textarea takes up the entire line width.
146
- */
147
- :host([cols]:not([auto-grow])) {
148
- width: fit-content;
149
- }
150
-
151
- :host(.ion-color) {
152
- background: initial;
153
- }
154
-
155
- :host(.in-item) {
156
- align-self: baseline;
157
- }
158
-
159
- :host(.in-item[slot=start]),
160
- :host(.in-item[slot=end]) {
161
- width: auto;
162
- }
163
-
164
- .native-textarea {
165
- margin-left: 0;
166
- margin-right: 0;
167
- margin-top: 0;
168
- margin-bottom: 0;
169
- padding-left: 0;
170
- padding-right: 0;
171
- padding-top: 0;
172
- padding-bottom: 0;
173
- display: block;
174
- position: relative;
175
- flex: 1;
176
- width: 100%;
177
- max-width: 100%;
178
- max-height: 100%;
179
- border: 0;
180
- outline: none;
181
- background: transparent;
182
- white-space: pre-wrap;
183
- /**
184
- * This ensures the textarea
185
- * remains on top of any decoration
186
- * that we render (particularly the
187
- * outline border when fill="outline").
188
- * If we did not do this then Axe would
189
- * be unable to determine the color
190
- * contrast of the textarea.
191
- */
192
- z-index: 1;
193
- box-sizing: border-box;
194
- resize: none;
195
- appearance: none;
196
- }
197
- .native-textarea::placeholder {
198
- padding-left: 0;
199
- padding-right: 0;
200
- padding-top: 0;
201
- padding-bottom: 0;
202
- color: var(--placeholder-color);
203
- font-family: inherit;
204
- font-style: var(--placeholder-font-style);
205
- font-weight: var(--placeholder-font-weight);
206
- opacity: var(--placeholder-opacity);
207
- }
208
-
209
- .native-textarea {
210
- color: inherit;
211
- font-family: inherit;
212
- font-size: inherit;
213
- font-style: inherit;
214
- font-weight: inherit;
215
- letter-spacing: inherit;
216
- text-align: inherit;
217
- text-decoration: inherit;
218
- text-indent: inherit;
219
- text-overflow: inherit;
220
- text-transform: inherit;
221
- grid-area: 1/1/2/2;
222
- word-break: break-word;
223
- }
224
-
225
- .cloned-input {
226
- top: 0;
227
- bottom: 0;
228
- position: absolute;
229
- pointer-events: none;
230
- }
231
- .cloned-input {
232
- inset-inline-start: 0;
233
- }
234
-
235
- /**
236
- * The cloned input needs to be disabled on
237
- * Android otherwise the viewport will still
238
- * shift when running scroll assist.
239
- */
240
- .cloned-input:disabled {
241
- opacity: 1;
242
- }
243
-
244
- :host([auto-grow]) .cloned-input {
245
- height: 100%;
246
- }
247
-
248
- :host([auto-grow]) .native-textarea {
249
- overflow: hidden;
250
- }
251
-
252
- .textarea-wrapper {
253
- -webkit-padding-start: var(--padding-start);
254
- padding-inline-start: var(--padding-start);
255
- -webkit-padding-end: var(--padding-end);
256
- padding-inline-end: var(--padding-end);
257
- padding-top: 0px;
258
- padding-bottom: 0px;
259
- border-radius: var(--border-radius);
260
- display: flex;
261
- position: relative;
262
- flex-grow: 1;
263
- align-items: flex-start;
264
- height: inherit;
265
- min-height: inherit;
266
- transition: background-color 15ms linear;
267
- background: var(--background);
268
- line-height: normal;
269
- }
270
-
271
- .native-wrapper {
272
- position: relative;
273
- width: 100%;
274
- height: 100%;
275
- }
276
-
277
- :host(.has-focus) textarea {
278
- caret-color: var(--highlight-color);
279
- }
280
-
281
- .native-wrapper {
282
- display: grid;
283
- min-width: inherit;
284
- max-width: inherit;
285
- /**
286
- * This avoids a WebKit bug where
287
- * the height of the inner textarea
288
- * is incorrect and flows outside the
289
- * parent container: https://bugs.webkit.org/show_bug.cgi?id=256781
290
- * TODO FW-4734
291
- */
292
- grid-auto-rows: 100%;
293
- }
294
- .native-wrapper::after {
295
- white-space: pre-wrap;
296
- content: attr(data-replicated-value) " ";
297
- visibility: hidden;
298
- }
299
-
300
- .native-wrapper::after {
301
- padding-left: 0;
302
- padding-right: 0;
303
- padding-top: var(--padding-top);
304
- padding-bottom: var(--padding-bottom);
305
- margin-left: 0;
306
- margin-right: 0;
307
- margin-top: 0;
308
- margin-bottom: 0;
309
- border-radius: var(--border-radius);
310
- /**
311
- * Note: Do not use @include text-inherit()
312
- * as that sets white-space: inherit
313
- * Instead, we use white-space: pre-wrap above.
314
- */
315
- color: inherit;
316
- font-family: inherit;
317
- font-size: inherit;
318
- font-style: inherit;
319
- font-weight: inherit;
320
- letter-spacing: inherit;
321
- text-align: inherit;
322
- text-decoration: inherit;
323
- text-indent: inherit;
324
- text-overflow: inherit;
325
- text-transform: inherit;
326
- grid-area: 1/1/2/2;
327
- word-break: break-word;
328
- }
329
-
330
- .textarea-wrapper-inner {
331
- display: flex;
332
- width: 100%;
333
- min-height: inherit;
334
- box-sizing: border-box;
335
- }
336
-
337
- :host(.ion-touched.ion-invalid) {
338
- --highlight-color: var(--highlight-color-invalid);
339
- }
340
-
341
- /**
342
- * The component highlight is only shown
343
- * on focus, so we can safely set the valid
344
- * color state when touched/valid. If we
345
- * set it when .has-focus is present then
346
- * the highlight color would change
347
- * from the valid color to the component's
348
- * color during the transition after the
349
- * component loses focus.
350
- */
351
- :host(.ion-valid) {
352
- --highlight-color: var(--highlight-color-valid);
353
- }
354
-
355
- .textarea-bottom {
356
- display: flex;
357
- justify-content: space-between;
358
- border-top: var(--border-width) var(--border-style) var(--border-color);
359
- white-space: normal;
360
- }
361
-
362
- /**
363
- * If the textarea has a validity state, the
364
- * border and label should reflect that as a color.
365
- */
366
- :host(.has-focus.ion-valid),
367
- :host(.ion-touched.ion-invalid) {
368
- --border-color: var(--highlight-color);
369
- }
370
-
371
- /**
372
- * Error text should only be shown when .ion-invalid is
373
- * present on the textarea. Otherwise the helper text should
374
- * be shown.
375
- */
376
- .textarea-bottom .error-text {
377
- display: none;
378
- color: var(--highlight-color-invalid);
379
- }
380
-
381
- .textarea-bottom .helper-text {
382
- display: block;
383
- }
384
-
385
- :host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
386
- display: block;
387
- }
388
-
389
- :host(.ion-touched.ion-invalid) .textarea-bottom .helper-text {
390
- display: none;
391
- }
392
-
393
- .textarea-bottom .counter {
394
- /**
395
- * Counter should always be at
396
- * the end of the container even
397
- * when no helper/error texts are used.
398
- */
399
- -webkit-margin-start: auto;
400
- margin-inline-start: auto;
401
- white-space: nowrap;
402
- }
403
-
404
- .label-text-wrapper {
405
- -webkit-padding-start: 0px;
406
- padding-inline-start: 0px;
407
- -webkit-padding-end: 0px;
408
- padding-inline-end: 0px;
409
- padding-top: var(--padding-top);
410
- padding-bottom: var(--padding-bottom);
411
- /**
412
- * This ensures that double tapping this text
413
- * clicks the <label> and focuses the textarea
414
- * when a screen reader is enabled.
415
- */
416
- pointer-events: none;
417
- }
418
-
419
- /**
420
- * We need to use two elements instead of
421
- * one. The .label-text-wrapper is responsible
422
- * for centering the label text vertically regardless
423
- * of the textarea height using flexbox.
424
- *
425
- * The .label-text element is responsible for controlling
426
- * overflow when label-placement="fixed".
427
- * We want the ellipses to show up when the
428
- * fixed label overflows, but text-overflow: ellipsis only
429
- * works on block-level elements. A flex item is
430
- * considered blockified (https://www.w3.org/TR/css-display-3/#blockify).
431
- */
432
- .label-text,
433
- ::slotted([slot=label]) {
434
- text-overflow: ellipsis;
435
- white-space: nowrap;
436
- overflow: hidden;
437
- }
438
-
439
- .textarea-outline {
440
- box-sizing: border-box;
441
- }
442
-
443
- /**
444
- * If no label text is placed into the slot
445
- * then the element should be hidden otherwise
446
- * there will be additional margins added.
447
- */
448
- .label-text-wrapper-hidden,
449
- .textarea-outline-notch-hidden {
450
- display: none;
451
- }
452
-
453
- /**
454
- * Label is on the left of the textarea in LTR and
455
- * on the right in RTL.
456
- */
457
- :host(.textarea-label-placement-start) .textarea-wrapper {
458
- flex-direction: row;
459
- }
460
-
461
- /**
462
- * Label is on the right of the textarea in LTR and
463
- * on the left in RTL.
464
- */
465
- :host(.textarea-label-placement-end) .textarea-wrapper {
466
- flex-direction: row-reverse;
467
- }
468
-
469
- /**
470
- * Stacked: Label sits above the textarea and is scaled down.
471
- * Floating: Label sits over the textarea when the textarea has no
472
- * value and is blurred. Label sits above the textarea and is scaled
473
- * down when the textarea is focused or has a value.
474
- *
475
- */
476
- :host(.textarea-label-placement-stacked) .textarea-wrapper,
477
- :host(.textarea-label-placement-floating) .textarea-wrapper {
478
- flex-direction: column;
479
- align-items: start;
480
- }
481
-
482
- /**
483
- * Ensures that the label animates
484
- * up and to the left in LTR or
485
- * up and to the right in RTL.
486
- */
487
- :host(.textarea-label-placement-stacked) .label-text-wrapper,
488
- :host(.textarea-label-placement-floating) .label-text-wrapper {
489
- transform-origin: left top;
490
- -webkit-padding-start: 0px;
491
- padding-inline-start: 0px;
492
- -webkit-padding-end: 0px;
493
- padding-inline-end: 0px;
494
- padding-top: 0px;
495
- padding-bottom: 0px;
496
- max-width: 100%;
497
- /**
498
- * The 2 ensures the label
499
- * remains on top of any browser
500
- * autofill background too.
501
- */
502
- z-index: 2;
503
- }
504
- :host-context([dir=rtl]):host(.textarea-label-placement-stacked) .label-text-wrapper, :host-context([dir=rtl]).textarea-label-placement-stacked .label-text-wrapper, :host-context([dir=rtl]):host(.textarea-label-placement-floating) .label-text-wrapper, :host-context([dir=rtl]).textarea-label-placement-floating .label-text-wrapper {
505
- transform-origin: right top;
506
- }
507
-
508
- @supports selector(:dir(rtl)) {
509
- :host(.textarea-label-placement-stacked:dir(rtl)) .label-text-wrapper, :host(.textarea-label-placement-floating:dir(rtl)) .label-text-wrapper {
510
- transform-origin: right top;
511
- }
512
- }
513
-
514
- /**
515
- * Ensures the textarea does not
516
- * overlap the label.
517
- */
518
- :host(.textarea-label-placement-stacked) textarea,
519
- :host(.textarea-label-placement-floating) textarea,
520
- :host(.textarea-label-placement-stacked[auto-grow]) .native-wrapper::after,
521
- :host(.textarea-label-placement-floating[auto-grow]) .native-wrapper::after {
522
- -webkit-margin-start: 0px;
523
- margin-inline-start: 0px;
524
- -webkit-margin-end: 0px;
525
- margin-inline-end: 0px;
526
- margin-top: 8px;
527
- margin-bottom: 0px;
528
- }
529
-
530
- /**
531
- * This makes the label sit over the textarea
532
- * when the textarea is blurred and has no value.
533
- */
534
- :host(.textarea-label-placement-floating) .label-text-wrapper {
535
- transform: translateY(100%) scale(1);
536
- }
537
-
538
- /**
539
- * The textarea should be hidden when the label
540
- * is on top of the textarea. This prevents the label
541
- * from overlapping any placeholder value.
542
- */
543
- :host(.textarea-label-placement-floating) textarea {
544
- opacity: 0;
545
- }
546
-
547
- :host(.has-focus.textarea-label-placement-floating) textarea,
548
- :host(.has-value.textarea-label-placement-floating) textarea {
549
- opacity: 1;
550
- }
551
-
552
- .start-slot-wrapper,
553
- .end-slot-wrapper {
554
- display: flex;
555
- flex-shrink: 0;
556
- align-self: start;
557
- }
558
-
559
- :host(.textarea-fill-outline) {
560
- --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
561
- --border-color: var(--token-border-input-default, var(--token-primitives-neutral-600, #8c8c8c));
562
- }
563
-
564
- :host(.textarea-fill-outline) .textarea-wrapper {
565
- background: initial;
566
- }
567
-
568
- :host(.textarea-fill-outline) .textarea-wrapper-inner {
569
- /**
570
- * The border should be relative to the inner wrapper
571
- * so that it does not include the label.
572
- */
573
- position: relative;
574
- }
575
-
576
- :host(.textarea-fill-outline) .textarea-outline {
577
- right: 0;
578
- left: 0;
579
- top: 0;
580
- bottom: 0;
581
- border-radius: var(--border-radius);
582
- position: absolute;
583
- width: 100%;
584
- height: 100%;
585
- pointer-events: none;
586
- border: var(--border-width) var(--border-style) var(--border-color);
587
- background: var(--background);
588
- }
589
-
590
- /**
591
- * The bottom content should never have
592
- * a border with the outline style.
593
- */
594
- :host(.textarea-fill-outline) .textarea-bottom {
595
- border-top: none;
596
- }
597
-
598
- :host(.textarea-fill-outline) textarea {
599
- margin-top: var(--token-space-100, var(--token-scale-100, 4px));
600
- }
601
-
602
- :host(.textarea-fill-outline.has-focus.ion-valid),
603
- :host(.textarea-fill-outline.ion-touched.ion-invalid) {
604
- --border-color: var(--highlight-color);
605
- }
606
-
607
- :host(.textarea-fill-outline.textarea-readonly) {
608
- --border-color: var(--token-border-input-default, var(--token-primitives-neutral-600, #8c8c8c));
609
- --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
610
- }
611
-
612
- :host(.textarea-fill-solid) {
613
- --border-color: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #eae9e9));
614
- --border-width: var(--token-border-size-050, var(--token-scale-050, 2px));
615
- --background: var(--token-bg-input-bold-default, var(--token-primitives-neutral-200, #eae9e9));
616
- }
617
-
618
- :host(.textarea-fill-solid) .textarea-wrapper {
619
- border-bottom: none;
620
- background: none;
621
- }
622
-
623
- :host(.textarea-fill-solid) .textarea-wrapper-inner {
624
- border-radius: var(--border-radius);
625
- position: relative;
626
- border: var(--border-width) var(--border-style) var(--border-color);
627
- background: var(--background);
628
- }
629
-
630
- :host(.textarea-fill-solid) .textarea-bottom {
631
- --border-width: var(--token-scale-0, 0px);
632
- }
633
-
634
- :host(.textarea-fill-solid.has-focus) {
635
- --border-color: var(--token-border-focus-default, var(--token-primitives-blue-400, #b5c0f7));
636
- }
637
-
638
- :host(.textarea-fill-solid.has-focus.ion-valid),
639
- :host(.textarea-fill-solid.ion-touched.ion-invalid) {
640
- --border-width: var(--token-border-size-050, var(--token-scale-050, 2px));
641
- --border-color: var(--highlight-color);
642
- }
643
-
644
- :host(.textarea-fill-solid.textarea-readonly) {
645
- --background: var(--token-bg-input-bold-read-only, var(--token-primitives-neutral-300, #e0e0e0));
646
- --border-color: var(--token-bg-input-bold-read-only, var(--token-primitives-neutral-300, #e0e0e0));
647
- }
648
-
649
- :host(.textarea-fill-solid.textarea-readonly.ion-invalid) {
650
- --border-color: rgba(var(--token-semantics-danger-base-rgb, 229, 41, 41), 0.6);
651
- }
652
-
653
- :host(.textarea-fill-solid.textarea-disabled) {
654
- --background: var(--token-bg-input-bold-disabled, var(--token-primitives-neutral-300, #e0e0e0));
655
- --border-color: var(--token-bg-input-bold-disabled, var(--token-primitives-neutral-300, #e0e0e0));
656
- }
657
-
658
- :host {
659
- --border-color: var(--token-border-input-default, var(--token-primitives-neutral-600, #8c8c8c));
660
- --color: var(--token-text-default, var(--token-primitives-neutral-1200, #242424));
661
- --highlight-color-valid: var(--token-text-success, var(--token-semantics-success-900, var(--token-primitives-green-900, #126f23)));
662
- --highlight-color-invalid: var(--token-semantics-danger-800, var(--token-primitives-red-800, #bf2222));
663
- --highlight-color-focused: var(--ion-color-primary, var(--token-bg-primary-base-default, var(--token-semantics-primary-base, var(--token-semantics-primary-700, var(--token-primitives-blue-700, #105cef)))));
664
- --placeholder-color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
665
- --placeholder-opacity: 1;
666
- --background: var(--token-bg-surface-default, var(--token-primitives-base-white, #ffffff));
667
- --padding-bottom: var(--token-space-200, var(--token-scale-200, 8px));
668
- font-size: var(--token-font-size-350, 14px);
669
- font-weight: var(--token-font-weight-regular, 400);
670
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
671
- line-height: var(--token-font-line-height-600, var(--token-scale-600, 24px));
672
- text-decoration: none;
673
- text-transform: none;
674
- }
675
-
676
- :host(.ion-color) {
677
- --highlight-color-focused: var(--ion-color-base);
678
- }
679
-
680
- .textarea-wrapper-inner {
681
- height: 0;
682
- }
683
-
684
- :host(.textarea-size-small) .textarea-wrapper-inner {
685
- --padding-top: var(--token-space-200, var(--token-scale-200, 8px));
686
- --padding-end: var(--token-space-300, var(--token-scale-300, 12px));
687
- --padding-bottom: var(--token-space-200, var(--token-scale-200, 8px));
688
- --padding-start: var(--token-space-300, var(--token-scale-300, 12px));
689
- min-height: var(--token-scale-2800, 112px);
690
- }
691
-
692
- :host(.textarea-size-medium) .textarea-wrapper-inner {
693
- --padding-top: var(--token-space-300, var(--token-scale-300, 12px));
694
- --padding-end: var(--token-space-400, var(--token-scale-400, 16px));
695
- --padding-bottom: var(--token-space-300, var(--token-scale-300, 12px));
696
- --padding-start: var(--token-space-400, var(--token-scale-400, 16px));
697
- min-height: var(--token-scale-3400, 136px);
698
- }
699
-
700
- :host(.textarea-size-large) .textarea-wrapper-inner {
701
- --padding-top: var(--token-space-400, var(--token-scale-400, 16px));
702
- --padding-end: var(--token-space-500, var(--token-scale-500, 20px));
703
- --padding-bottom: var(--token-space-400, var(--token-scale-400, 16px));
704
- --padding-start: var(--token-space-500, var(--token-scale-500, 20px));
705
- min-height: var(--token-scale-3600, 144px);
706
- }
707
-
708
- :host(.textarea-shape-soft) {
709
- --border-radius: var(--token-soft-xl, var(--token-border-radius-200, var(--token-scale-200, 8px)));
710
- }
711
-
712
- :host(.textarea-shape-round) {
713
- --border-radius: var(--token-round-xl, var(--token-border-radius-400, var(--token-scale-400, 16px)));
714
- }
715
-
716
- :host(.textarea-shape-rectangular) {
717
- --border-radius: var(--token-rectangular-xl, var(--token-border-radius-0, var(--token-scale-0, 0px)));
718
- }
719
-
720
- .textarea-wrapper {
721
- gap: var(--token-space-100, var(--token-scale-100, 4px));
722
- }
723
-
724
- .textarea-wrapper-inner {
725
- -webkit-padding-start: var(--padding-start);
726
- padding-inline-start: var(--padding-start);
727
- -webkit-padding-end: var(--padding-end);
728
- padding-inline-end: var(--padding-end);
729
- padding-top: var(--padding-top);
730
- padding-bottom: var(--padding-bottom);
731
- }
732
-
733
- :host([auto-grow]) .textarea-wrapper-inner {
734
- height: auto;
735
- }
736
-
737
- :host([auto-grow]) .native-wrapper {
738
- min-height: inherit;
739
- max-height: inherit;
740
- }
741
-
742
- .label-text-wrapper {
743
- font-size: var(--token-font-size-300, 12px);
744
- font-weight: var(--token-font-weight-medium, 500);
745
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
746
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
747
- text-decoration: none;
748
- text-transform: none;
749
- max-width: var(--token-scale-5000, 200px);
750
- 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));
751
- color: var(--token-text-subtle, var(--token-primitives-neutral-1000, #3b3b3b));
752
- }
753
-
754
- :host(.label-floating) .label-text-wrapper {
755
- transform: none;
756
- }
757
-
758
- ion-icon {
759
- --color: globals.$ion-icon-subtlest;
760
- font-size: var(--token-scale-400, 16px);
761
- }
762
-
763
- .start-slot-wrapper,
764
- .end-slot-wrapper {
765
- margin-top: var(--token-space-050, var(--token-scale-050, 2px));
766
- }
767
-
768
- .textarea-bottom {
769
- -webkit-padding-start: var(--padding-start);
770
- padding-inline-start: var(--padding-start);
771
- -webkit-padding-end: var(--padding-end);
772
- padding-inline-end: var(--padding-end);
773
- padding-top: var(--token-space-100, var(--token-scale-100, 4px));
774
- font-size: var(--token-font-size-300, 12px);
775
- font-weight: var(--token-font-weight-medium, 500);
776
- letter-spacing: var(--token-font-letter-spacing-0, 0%);
777
- line-height: var(--token-font-line-height-500, var(--token-scale-500, 20px));
778
- text-decoration: none;
779
- text-transform: none;
780
- }
781
-
782
- .textarea-bottom .helper-text,
783
- .textarea-bottom .counter {
784
- color: var(--token-text-subtlest, var(--token-primitives-neutral-800, #626262));
785
- }
786
-
787
- .textarea-bottom .error-text {
788
- color: var(--token-text-danger, var(--token-semantics-danger-900, var(--token-primitives-red-900, #991b1b)));
789
- }
790
-
791
- :host(.has-focus.ion-valid) .helper-text {
792
- color: var(--highlight-color-valid);
793
- }
794
-
795
- :host(.has-focus.ion-valid),
796
- :host(.ion-touched.ion-invalid) {
797
- --border-width: var(--token-border-size-025, var(--token-scale-025, 1px));
798
- }
799
-
800
- .textarea-highlight {
801
- bottom: -1px;
802
- position: absolute;
803
- width: 100%;
804
- height: var(--token-border-size-050, var(--token-scale-050, 2px));
805
- transform: scale(0);
806
- transition: transform var(--token-transition-time-200, 200ms);
807
- background: var(--border-color);
808
- }
809
- .textarea-highlight {
810
- inset-inline-start: 0;
811
- }
812
-
813
- :host(.has-focus) {
814
- --border-color: var(--token-border-focus-default, var(--token-primitives-blue-400, #b5c0f7));
815
- --border-width: var(--token-border-size-050, var(--token-scale-050, 2px));
816
- }
817
-
818
- :host(.has-focus) .textarea-highlight {
819
- transform: scale(1);
820
- }
821
-
822
- @media (any-hover: hover) {
823
- :host(:hover) {
824
- --border-color: var(--token-border-focus-default, var(--token-primitives-blue-400, #b5c0f7));
825
- }
826
- }
827
- :host(.textarea-disabled) {
828
- --color: var(--token-text-disabled, var(--token-primitives-neutral-500, #a2a2a2));
829
- --background: var(--token-bg-input-disabled, var(--token-primitives-neutral-100, #f3f3f3));
830
- --border-color: var(--token-border-disabled, var(--token-primitives-neutral-300, #e0e0e0));
831
- --placeholder-color: var(--token-text-disabled, var(--token-primitives-neutral-500, #a2a2a2));
832
- }
833
-
834
- :host(.textarea-disabled:not(.ion-valid)) .textarea-bottom .helper-text,
835
- :host(.textarea-disabled) .textarea-bottom .counter,
836
- :host(.textarea-disabled) .label-text-wrapper {
837
- color: var(--token-text-disabled, var(--token-primitives-neutral-500, #a2a2a2));
838
- }
839
-
840
- :host(.textarea-disabled.has-focus.ion-valid) {
841
- --border-color: rgba(var(--token-semantics-success-base-rgb, 27, 164, 51), 0.6);
842
- }
843
-
844
- :host(.textarea-disabled.ion-touched.ion-invalid) {
845
- --border-color: rgba(var(--token-semantics-danger-base-rgb, 229, 41, 41), 0.6);
846
- }
847
-
848
- :host(.textarea-disabled.ion-color) {
849
- --border-color: rgba(var(--ion-color-base-rgb), 0.6);
850
- }
851
-
852
- :host(.textarea-disabled.has-focus.ion-valid) .textarea-bottom .helper-text,
853
- :host(.textarea-disabled.ion-touched.ion-invalid) .error-text {
854
- opacity: 0.6;
855
- }
856
-
857
- :host(.textarea-readonly) {
858
- --background: var(--token-bg-input-read-only, var(--token-primitives-neutral-100, #f3f3f3));
859
- }
860
-
861
- /**
862
- * This makes the label sit above the textarea.
863
- */
864
- :host(.label-floating) .label-text-wrapper {
865
- /**
866
- * Label text should not extend
867
- * beyond the bounds of the textarea.
868
- */
869
- max-width: calc(100% / 0.75);
870
- }
871
-
872
- .textarea-wrapper textarea {
873
- /**
874
- * When the floating label appears on top of the
875
- * textarea, we need to fade the textarea out so that the
876
- * label does not overlap with the placeholder.
877
- */
878
- transition: opacity var(--token-transition-time-150, 150ms) var(--token-transition-curve-expressive, cubic-bezier(0.4, 0, 0.2, 1));
879
- }
880
-
881
- /**
882
- * Label is on the left of the textarea in LTR and
883
- * on the right in RTL. Label also has a fixed width.
884
- */
885
- :host(.textarea-label-placement-fixed) .label-text {
886
- flex: 0 0 calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
887
- width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
888
- min-width: calc(var(--token-scale-2400, 96px) + var(--token-space-100, var(--token-scale-100, 4px)));
889
- max-width: var(--token-scale-5000, 200px);
890
- }