@ionic/core 8.7.14-dev.11765982433.1ecdbcee → 8.7.14-nightly.20251216

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 (935) 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 +3 -42
  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 +11 -52
  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 -364
  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 +4 -3
  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/css/core.css +1 -1
  116. package/css/core.css.map +1 -1
  117. package/css/display.css +1 -1
  118. package/css/display.css.map +1 -1
  119. package/css/flex-utils.css +1 -1
  120. package/css/flex-utils.css.map +1 -1
  121. package/css/float-elements.css.map +1 -1
  122. package/css/global.bundle.css.map +1 -1
  123. package/css/ionic-swiper.css +1 -1
  124. package/css/ionic-swiper.css.map +1 -1
  125. package/css/ionic.bundle.css +1 -1
  126. package/css/ionic.bundle.css.map +1 -1
  127. package/css/normalize.css.map +1 -1
  128. package/css/padding.css.map +1 -1
  129. package/css/palettes/dark.always.css.map +1 -1
  130. package/css/palettes/dark.class.css.map +1 -1
  131. package/css/palettes/dark.system.css.map +1 -1
  132. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  133. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  134. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  135. package/css/palettes/high-contrast.always.css.map +1 -1
  136. package/css/palettes/high-contrast.class.css.map +1 -1
  137. package/css/palettes/high-contrast.system.css.map +1 -1
  138. package/css/structure.css.map +1 -1
  139. package/css/text-alignment.css.map +1 -1
  140. package/css/text-transformation.css.map +1 -1
  141. package/css/typography.css.map +1 -1
  142. package/css/utils.bundle.css +1 -1
  143. package/css/utils.bundle.css.map +1 -1
  144. package/dist/cjs/{animation-CD5nuON9.js → animation-Bt3H9L1C.js} +2 -2
  145. package/dist/cjs/{app-globals-CoW5jvJu.js → app-globals-Ciccnk9_.js} +1 -1
  146. package/dist/cjs/{button-active-Dxyabn6T.js → button-active-CMc8cD90.js} +1 -1
  147. package/dist/cjs/{capacitor-C8raJ_tU.js → capacitor-DmA66EwP.js} +3 -3
  148. package/dist/cjs/{data-MoL8Ckx5.js → data-JwZKaIQB.js} +5 -5
  149. package/dist/{esm/focus-visible-vXpMhGrs.js → cjs/focus-visible-CCvKiLh3.js} +3 -23
  150. package/dist/cjs/{framework-delegate-Bwdk9vFS.js → framework-delegate-DMJRBuDi.js} +2 -4
  151. package/dist/cjs/{haptic-BU6_qLwg.js → haptic-ClPPQ_PS.js} +1 -1
  152. package/dist/cjs/hardware-back-button-VCK4V3mG.js +121 -0
  153. package/dist/cjs/{helpers-DnouLczu.js → helpers-DrTqNghc.js} +2 -41
  154. package/dist/cjs/{index-JtyffOXl.js → index-094mMFB-.js} +3 -3
  155. package/dist/cjs/{index-CADY2xEW.js → index-C534ULug.js} +7 -8
  156. package/dist/cjs/{index-DUoP_H1L.js → index-CO6eryBo.js} +1 -1
  157. package/dist/cjs/index-DkNv4J_i.js +10 -0
  158. package/dist/cjs/{index-C4_FN9N0.js → index-DrMUZJj6.js} +15 -15
  159. package/dist/cjs/index.cjs.js +11 -10
  160. package/dist/cjs/{input-shims-C-YCyXjg.js → input-shims-CW0KUFTQ.js} +16 -17
  161. package/dist/cjs/{input.utils-C3-BwdV0.js → input.utils-B_QROI2g.js} +5 -5
  162. package/dist/cjs/ion-accordion_2.cjs.entry.js +26 -55
  163. package/dist/cjs/ion-action-sheet.cjs.entry.js +20 -23
  164. package/dist/cjs/ion-alert.cjs.entry.js +20 -22
  165. package/dist/cjs/ion-app_8.cjs.entry.js +150 -249
  166. package/dist/cjs/ion-avatar_3.cjs.entry.js +11 -123
  167. package/dist/cjs/ion-back-button.cjs.entry.js +19 -28
  168. package/dist/cjs/ion-backdrop.cjs.entry.js +6 -9
  169. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +15 -51
  170. package/dist/cjs/ion-button_2.cjs.entry.js +11 -43
  171. package/dist/cjs/ion-card_5.cjs.entry.js +29 -53
  172. package/dist/cjs/ion-checkbox.cjs.entry.js +13 -31
  173. package/dist/cjs/ion-chip.cjs.entry.js +7 -48
  174. package/dist/cjs/ion-col_3.cjs.entry.js +56 -53
  175. package/dist/cjs/ion-datetime-button.cjs.entry.js +7 -11
  176. package/dist/cjs/ion-datetime_3.cjs.entry.js +38 -113
  177. package/dist/cjs/ion-fab_3.cjs.entry.js +25 -41
  178. package/dist/cjs/ion-img.cjs.entry.js +3 -7
  179. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +14 -89
  180. package/dist/cjs/ion-input-otp.cjs.entry.js +7 -11
  181. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +12 -50
  182. package/dist/cjs/ion-input.cjs.entry.js +30 -120
  183. package/dist/cjs/ion-item-option_3.cjs.entry.js +19 -48
  184. package/dist/cjs/ion-item_8.cjs.entry.js +46 -113
  185. package/dist/cjs/ion-loading.cjs.entry.js +15 -17
  186. package/dist/cjs/ion-menu_3.cjs.entry.js +26 -44
  187. package/dist/cjs/ion-modal.cjs.entry.js +69 -96
  188. package/dist/cjs/ion-nav_2.cjs.entry.js +10 -13
  189. package/dist/cjs/ion-picker-column-option.cjs.entry.js +6 -10
  190. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  191. package/dist/cjs/ion-picker.cjs.entry.js +5 -9
  192. package/dist/cjs/ion-popover.cjs.entry.js +16 -18
  193. package/dist/cjs/ion-progress-bar.cjs.entry.js +7 -25
  194. package/dist/cjs/ion-radio_2.cjs.entry.js +14 -24
  195. package/dist/cjs/ion-range.cjs.entry.js +10 -14
  196. package/dist/cjs/ion-refresher_2.cjs.entry.js +18 -36
  197. package/dist/cjs/ion-reorder_2.cjs.entry.js +12 -36
  198. package/dist/cjs/ion-ripple-effect.cjs.entry.js +6 -14
  199. package/dist/cjs/ion-route_4.cjs.entry.js +7 -8
  200. package/dist/cjs/ion-searchbar.cjs.entry.js +21 -134
  201. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  202. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -5
  203. package/dist/cjs/ion-segment_2.cjs.entry.js +14 -21
  204. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -15
  205. package/dist/cjs/ion-select_3.cjs.entry.js +38 -129
  206. package/dist/cjs/ion-spinner.cjs.entry.js +6 -28
  207. package/dist/cjs/ion-split-pane.cjs.entry.js +8 -11
  208. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +21 -75
  209. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -7
  210. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  211. package/dist/cjs/ion-textarea.cjs.entry.js +15 -55
  212. package/dist/cjs/ion-toast.cjs.entry.js +43 -66
  213. package/dist/cjs/ion-toggle.cjs.entry.js +21 -78
  214. package/dist/cjs/ionic-global-HMVqOFGO.js +151 -0
  215. package/dist/cjs/ionic.cjs.js +3 -3
  216. package/dist/cjs/{ios.transition-Dt4GT8w5.js → ios.transition-BOt_uW73.js} +4 -6
  217. package/dist/cjs/{keyboard-BlrG3xPK.js → keyboard-UuAS4D_9.js} +1 -1
  218. package/dist/cjs/{keyboard-controller-O8n0dTQz.js → keyboard-controller-GXBiBRKS.js} +9 -11
  219. package/dist/cjs/{keyboard-B8HJHbg3.js → keyboard-hHzlEQpk.js} +3 -4
  220. package/dist/cjs/loader.cjs.js +3 -3
  221. package/dist/cjs/{md.transition-BolcQzNP.js → md.transition-Dt968VXB.js} +4 -5
  222. package/dist/cjs/{notch-controller-BE80VRju.js → notch-controller-Bzqhjm4f.js} +4 -4
  223. package/dist/cjs/{overlays-D7GuFhXb.js → overlays--dagG4QM.js} +9 -8
  224. package/dist/cjs/{status-tap-e-hyosXV.js → status-tap-g0sWWkXk.js} +2 -3
  225. package/dist/cjs/{swipe-back-CR060nOX.js → swipe-back-BIayeNOD.js} +1 -2
  226. package/dist/collection/collection-manifest.json +0 -1
  227. package/dist/collection/components/accordion/accordion.ios.css +58 -73
  228. package/dist/collection/components/accordion/accordion.js +26 -36
  229. package/dist/collection/components/accordion/accordion.md.css +59 -67
  230. package/dist/collection/components/accordion-group/accordion-group.ios.css +4 -16
  231. package/dist/collection/components/accordion-group/accordion-group.js +8 -44
  232. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -22
  233. package/dist/collection/components/action-sheet/action-sheet.ios.css +6 -18
  234. package/dist/collection/components/action-sheet/action-sheet.js +13 -17
  235. package/dist/collection/components/action-sheet/action-sheet.md.css +5 -17
  236. package/dist/collection/components/alert/alert.ios.css +1 -19
  237. package/dist/collection/components/alert/alert.js +13 -16
  238. package/dist/collection/components/alert/alert.md.css +1 -19
  239. package/dist/collection/components/app/app.js +78 -15
  240. package/dist/collection/components/avatar/avatar.ios.css +33 -7
  241. package/dist/collection/components/avatar/avatar.js +4 -120
  242. package/dist/collection/components/avatar/avatar.md.css +0 -51
  243. package/dist/collection/components/back-button/back-button.ios.css +48 -60
  244. package/dist/collection/components/back-button/back-button.js +19 -27
  245. package/dist/collection/components/back-button/back-button.md.css +48 -60
  246. package/dist/collection/components/backdrop/backdrop.ios.css +19 -56
  247. package/dist/collection/components/backdrop/backdrop.js +6 -12
  248. package/dist/collection/components/backdrop/backdrop.md.css +19 -56
  249. package/dist/collection/components/badge/badge.ios.css +12 -139
  250. package/dist/collection/components/badge/badge.js +9 -145
  251. package/dist/collection/components/badge/badge.md.css +12 -123
  252. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +8 -20
  253. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -43
  254. package/dist/collection/components/breadcrumb/breadcrumb.md.css +8 -20
  255. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  256. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  257. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  258. package/dist/collection/components/button/button.ios.css +46 -135
  259. package/dist/collection/components/button/button.js +17 -48
  260. package/dist/collection/components/button/button.md.css +50 -126
  261. package/dist/collection/components/buttons/buttons.ios.css +7 -59
  262. package/dist/collection/components/buttons/buttons.js +9 -15
  263. package/dist/collection/components/buttons/buttons.md.css +3 -55
  264. package/dist/collection/components/card/card.ios.css +14 -65
  265. package/dist/collection/components/card/card.js +10 -41
  266. package/dist/collection/components/card/card.md.css +14 -65
  267. package/dist/collection/components/card-content/card-content.ios.css +1 -16
  268. package/dist/collection/components/card-content/card-content.js +8 -11
  269. package/dist/collection/components/card-content/card-content.md.css +1 -16
  270. package/dist/collection/components/card-header/card-header.ios.css +15 -27
  271. package/dist/collection/components/card-header/card-header.js +10 -13
  272. package/dist/collection/components/card-header/card-header.md.css +15 -27
  273. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  274. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  275. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  276. package/dist/collection/components/card-title/card-title.ios.css +0 -73
  277. package/dist/collection/components/card-title/card-title.js +8 -11
  278. package/dist/collection/components/card-title/card-title.md.css +0 -73
  279. package/dist/collection/components/checkbox/checkbox.ios.css +101 -161
  280. package/dist/collection/components/checkbox/checkbox.js +14 -70
  281. package/dist/collection/components/checkbox/checkbox.md.css +102 -162
  282. package/dist/collection/components/chip/chip.ios.css +14 -67
  283. package/dist/collection/components/chip/chip.js +8 -108
  284. package/dist/collection/components/chip/chip.md.css +14 -67
  285. package/dist/collection/components/col/col.css +4 -192
  286. package/dist/collection/components/col/col.js +61 -210
  287. package/dist/collection/components/content/content.css +2 -8
  288. package/dist/collection/components/content/content.js +11 -16
  289. package/dist/collection/components/datetime/datetime.ios.css +96 -258
  290. package/dist/collection/components/datetime/datetime.js +20 -98
  291. package/dist/collection/components/datetime/datetime.md.css +96 -258
  292. package/dist/collection/components/datetime/utils/data.js +5 -5
  293. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  294. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  295. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  296. package/dist/collection/components/fab/fab.css +1 -25
  297. package/dist/collection/components/fab/fab.js +5 -9
  298. package/dist/collection/components/fab-button/fab-button.ios.css +6 -18
  299. package/dist/collection/components/fab-button/fab-button.js +21 -36
  300. package/dist/collection/components/fab-button/fab-button.md.css +8 -20
  301. package/dist/collection/components/fab-list/fab-list.css +0 -12
  302. package/dist/collection/components/fab-list/fab-list.js +5 -9
  303. package/dist/collection/components/footer/footer.ios.css +2 -14
  304. package/dist/collection/components/footer/footer.js +16 -21
  305. package/dist/collection/components/footer/footer.md.css +0 -12
  306. package/dist/collection/components/grid/grid.css +0 -12
  307. package/dist/collection/components/grid/grid.js +5 -9
  308. package/dist/collection/components/header/header.ios.css +10 -25
  309. package/dist/collection/components/header/header.js +19 -50
  310. package/dist/collection/components/header/header.md.css +8 -23
  311. package/dist/collection/components/header/header.utils.js +5 -5
  312. package/dist/collection/components/img/img.js +2 -8
  313. package/dist/collection/components/infinite-scroll/infinite-scroll.js +5 -100
  314. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  315. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  316. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  317. package/dist/collection/components/input/input.ios.css +140 -223
  318. package/dist/collection/components/input/input.js +38 -149
  319. package/dist/collection/components/input/input.md.css +212 -193
  320. package/dist/collection/components/input-otp/input-otp.ios.css +60 -102
  321. package/dist/collection/components/input-otp/input-otp.js +5 -7
  322. package/dist/collection/components/input-otp/input-otp.md.css +60 -102
  323. package/dist/collection/components/input-password-toggle/input-password-toggle.js +12 -48
  324. package/dist/collection/components/item/item.ios.css +69 -109
  325. package/dist/collection/components/item/item.js +20 -51
  326. package/dist/collection/components/item/item.md.css +68 -120
  327. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  328. package/dist/collection/components/item-divider/item-divider.js +8 -11
  329. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  330. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  331. package/dist/collection/components/item-group/item-group.js +7 -13
  332. package/dist/collection/components/item-group/item-group.md.css +0 -12
  333. package/dist/collection/components/item-option/item-option.ios.css +29 -136
  334. package/dist/collection/components/item-option/item-option.js +9 -73
  335. package/dist/collection/components/item-option/item-option.md.css +29 -136
  336. package/dist/collection/components/item-options/item-options.ios.css +34 -77
  337. package/dist/collection/components/item-options/item-options.js +7 -13
  338. package/dist/collection/components/item-options/item-options.md.css +34 -77
  339. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  340. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  341. package/dist/collection/components/label/label.ios.css +0 -18
  342. package/dist/collection/components/label/label.js +8 -11
  343. package/dist/collection/components/label/label.md.css +0 -18
  344. package/dist/collection/components/list/list.ios.css +14 -54
  345. package/dist/collection/components/list/list.js +9 -48
  346. package/dist/collection/components/list/list.md.css +16 -56
  347. package/dist/collection/components/list-header/list-header.ios.css +38 -82
  348. package/dist/collection/components/list-header/list-header.js +8 -11
  349. package/dist/collection/components/list-header/list-header.md.css +38 -82
  350. package/dist/collection/components/loading/loading.ios.css +1 -13
  351. package/dist/collection/components/loading/loading.js +11 -14
  352. package/dist/collection/components/loading/loading.md.css +1 -13
  353. package/dist/collection/components/menu/menu.ios.css +3 -15
  354. package/dist/collection/components/menu/menu.js +7 -12
  355. package/dist/collection/components/menu/menu.md.css +3 -15
  356. package/dist/collection/components/menu-button/menu-button.ios.css +14 -48
  357. package/dist/collection/components/menu-button/menu-button.js +10 -26
  358. package/dist/collection/components/menu-button/menu-button.md.css +15 -49
  359. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  360. package/dist/collection/components/modal/animations/sheet.js +2 -8
  361. package/dist/collection/components/modal/gestures/sheet.js +6 -10
  362. package/dist/collection/components/modal/modal.ios.css +70 -174
  363. package/dist/collection/components/modal/modal.js +11 -48
  364. package/dist/collection/components/modal/modal.md.css +70 -174
  365. package/dist/collection/components/nav/nav.css +1 -7
  366. package/dist/collection/components/nav/nav.js +5 -11
  367. package/dist/collection/components/nav-link/nav-link.js +1 -5
  368. package/dist/collection/components/note/note.ios.css +0 -12
  369. package/dist/collection/components/note/note.js +8 -11
  370. package/dist/collection/components/note/note.md.css +0 -12
  371. package/dist/collection/components/picker/picker.ios.css +3 -15
  372. package/dist/collection/components/picker/picker.js +5 -8
  373. package/dist/collection/components/picker/picker.md.css +3 -15
  374. package/dist/collection/components/picker-column/picker-column.css +2 -9
  375. package/dist/collection/components/picker-column/picker-column.js +7 -8
  376. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  377. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  378. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  379. package/dist/collection/components/picker-legacy/picker.ios.css +1 -13
  380. package/dist/collection/components/picker-legacy/picker.js +6 -7
  381. package/dist/collection/components/picker-legacy/picker.md.css +1 -13
  382. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  383. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  384. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  385. package/dist/collection/components/popover/popover.ios.css +1 -13
  386. package/dist/collection/components/popover/popover.js +14 -17
  387. package/dist/collection/components/popover/popover.md.css +1 -13
  388. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -48
  389. package/dist/collection/components/progress-bar/progress-bar.js +7 -43
  390. package/dist/collection/components/progress-bar/progress-bar.md.css +17 -48
  391. package/dist/collection/components/radio/radio.ios.css +91 -134
  392. package/dist/collection/components/radio/radio.js +9 -12
  393. package/dist/collection/components/radio/radio.md.css +91 -134
  394. package/dist/collection/components/radio-group/radio-group.ios.css +23 -43
  395. package/dist/collection/components/radio-group/radio-group.js +6 -21
  396. package/dist/collection/components/radio-group/radio-group.md.css +23 -43
  397. package/dist/collection/components/range/range.ios.css +85 -128
  398. package/dist/collection/components/range/range.js +9 -12
  399. package/dist/collection/components/range/range.md.css +85 -128
  400. package/dist/collection/components/refresher/refresher.ios.css +1 -14
  401. package/dist/collection/components/refresher/refresher.js +8 -11
  402. package/dist/collection/components/refresher/refresher.md.css +2 -15
  403. package/dist/collection/components/refresher-content/refresher-content.js +7 -28
  404. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  405. package/dist/collection/components/reorder/reorder.js +6 -33
  406. package/dist/collection/components/reorder/reorder.md.css +0 -6
  407. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  408. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  409. package/dist/collection/components/ripple-effect/{ripple-effect.common.css → ripple-effect.css} +1 -7
  410. package/dist/collection/components/ripple-effect/ripple-effect.js +6 -14
  411. package/dist/collection/components/route/route.js +0 -4
  412. package/dist/collection/components/router/router.js +0 -4
  413. package/dist/collection/components/router-link/router-link.css +2 -8
  414. package/dist/collection/components/router-link/router-link.js +5 -9
  415. package/dist/collection/components/router-outlet/router-outlet.css +1 -7
  416. package/dist/collection/components/router-outlet/router-outlet.js +3 -6
  417. package/dist/collection/components/row/row.css +0 -16
  418. package/dist/collection/components/row/row.js +2 -9
  419. package/dist/collection/components/searchbar/searchbar.ios.css +18 -56
  420. package/dist/collection/components/searchbar/searchbar.js +34 -181
  421. package/dist/collection/components/searchbar/searchbar.md.css +18 -56
  422. package/dist/collection/components/segment/segment.ios.css +2 -45
  423. package/dist/collection/components/segment/segment.js +8 -11
  424. package/dist/collection/components/segment/segment.md.css +2 -45
  425. package/dist/collection/components/segment-button/segment-button.ios.css +105 -146
  426. package/dist/collection/components/segment-button/segment-button.js +8 -11
  427. package/dist/collection/components/segment-button/segment-button.md.css +107 -148
  428. package/dist/collection/components/segment-content/segment-content.js +1 -1
  429. package/dist/collection/components/segment-view/segment-view.ios.css +0 -6
  430. package/dist/collection/components/segment-view/segment-view.js +4 -6
  431. package/dist/collection/components/segment-view/segment-view.md.css +0 -6
  432. package/dist/collection/components/select/select.ios.css +176 -315
  433. package/dist/collection/components/select/select.js +53 -156
  434. package/dist/collection/components/select/select.md.css +178 -331
  435. package/dist/collection/components/select-modal/select-modal.ios.css +0 -18
  436. package/dist/collection/components/select-modal/select-modal.js +4 -11
  437. package/dist/collection/components/select-modal/select-modal.md.css +3 -7
  438. package/dist/collection/components/select-option/select-option.js +2 -9
  439. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  440. package/dist/collection/components/select-popover/select-popover.js +4 -12
  441. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  442. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  443. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  444. package/dist/collection/components/spinner/{spinner.ionic.css → spinner.css} +10 -77
  445. package/dist/collection/components/spinner/spinner.js +6 -47
  446. package/dist/collection/components/split-pane/split-pane.ios.css +2 -20
  447. package/dist/collection/components/split-pane/split-pane.js +8 -14
  448. package/dist/collection/components/split-pane/split-pane.md.css +2 -20
  449. package/dist/collection/components/tab/tab.js +2 -6
  450. package/dist/collection/components/tab-bar/tab-bar.ios.css +43 -71
  451. package/dist/collection/components/tab-bar/tab-bar.js +11 -78
  452. package/dist/collection/components/tab-bar/tab-bar.md.css +43 -71
  453. package/dist/collection/components/tab-button/tab-button.ios.css +95 -171
  454. package/dist/collection/components/tab-button/tab-button.js +9 -54
  455. package/dist/collection/components/tab-button/tab-button.md.css +93 -137
  456. package/dist/collection/components/tabs/tabs.css +1 -7
  457. package/dist/collection/components/tabs/tabs.js +1 -4
  458. package/dist/collection/components/text/text.css +0 -6
  459. package/dist/collection/components/text/text.js +6 -7
  460. package/dist/collection/components/textarea/textarea.ios.css +139 -275
  461. package/dist/collection/components/textarea/textarea.js +16 -76
  462. package/dist/collection/components/textarea/textarea.md.css +140 -288
  463. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  464. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  465. package/dist/collection/components/title/title.ios.css +4 -32
  466. package/dist/collection/components/title/title.js +7 -13
  467. package/dist/collection/components/title/title.md.css +4 -32
  468. package/dist/collection/components/toast/animations/utils.js +1 -1
  469. package/dist/collection/components/toast/toast.ios.css +45 -84
  470. package/dist/collection/components/toast/toast.js +12 -75
  471. package/dist/collection/components/toast/toast.md.css +45 -84
  472. package/dist/collection/components/toggle/toggle.ios.css +131 -247
  473. package/dist/collection/components/toggle/toggle.js +18 -73
  474. package/dist/collection/components/toggle/toggle.md.css +131 -244
  475. package/dist/collection/components/toolbar/toolbar.ios.css +47 -90
  476. package/dist/collection/components/toolbar/toolbar.js +13 -157
  477. package/dist/collection/components/toolbar/toolbar.md.css +47 -90
  478. package/dist/collection/global/ionic-global.js +13 -228
  479. package/dist/collection/utils/focus-visible.js +0 -22
  480. package/dist/collection/utils/framework-delegate.js +1 -3
  481. package/dist/collection/utils/hardware-back-button.js +0 -15
  482. package/dist/collection/utils/helpers.js +2 -42
  483. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -3
  484. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  485. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  486. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  487. package/dist/collection/utils/overlays.js +1 -2
  488. package/dist/collection/utils/test/playwright/generator.js +23 -48
  489. package/dist/collection/utils/test/playwright/page/utils/goto.js +5 -14
  490. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -26
  491. package/dist/collection/utils/transition/ios.transition.js +0 -1
  492. package/dist/docs.json +374 -8195
  493. package/dist/esm/{animation-BNuoDl-O.js → animation-Dt8bGnA-.js} +1 -1
  494. package/dist/esm/{app-globals-tX0s9Zd7.js → app-globals-BDSf8fOA.js} +1 -1
  495. package/dist/esm/{button-active-BF6GZ_yH.js → button-active-L570Swow.js} +1 -1
  496. package/dist/esm/{capacitor-pzVAlnC0.js → capacitor-CFERIeaU.js} +1 -1
  497. package/dist/esm/{data-DFCY8gnk.js → data-DCORV9FH.js} +5 -5
  498. package/dist/{cjs/focus-visible-BIj-I3-C.js → esm/focus-visible-BmVRXR1y.js} +1 -27
  499. package/dist/esm/{framework-delegate-D2mUP0WI.js → framework-delegate-BYawdMXj.js} +2 -4
  500. package/dist/esm/{haptic-bBvyATla.js → haptic-DzAMWJuk.js} +1 -1
  501. package/dist/esm/hardware-back-button-CPLxO-Ev.js +115 -0
  502. package/dist/esm/{helpers-Bsml3FcE.js → helpers-DEn3pfjm.js} +3 -42
  503. package/dist/esm/{index-BpFi2B8W.js → index-Bs3kT4bc.js} +1 -1
  504. package/dist/esm/{index-BQI9hSZP.js → index-CvDIirVx.js} +10 -10
  505. package/dist/esm/{index-COG0_eom.js → index-DV3sJJW8.js} +1 -1
  506. package/dist/esm/index-ZjP4CjeZ.js +7 -0
  507. package/dist/esm/{index-Bnw-zNoN.js → index-ceb5RaMT.js} +2 -3
  508. package/dist/esm/{index-M3l-IyxQ.js → index-r2D9DEro.js} +3 -3
  509. package/dist/esm/index.js +11 -10
  510. package/dist/esm/{input-shims-ACbgRt10.js → input-shims-DyOpfTg6.js} +5 -6
  511. package/dist/esm/{input.utils-loPnHH5H.js → input.utils-DrvTa8gz.js} +2 -2
  512. package/dist/esm/ion-accordion_2.entry.js +27 -56
  513. package/dist/esm/ion-action-sheet.entry.js +20 -23
  514. package/dist/esm/ion-alert.entry.js +20 -22
  515. package/dist/esm/ion-app_8.entry.js +151 -250
  516. package/dist/esm/ion-avatar_3.entry.js +13 -125
  517. package/dist/esm/ion-back-button.entry.js +20 -29
  518. package/dist/esm/ion-backdrop.entry.js +6 -9
  519. package/dist/esm/ion-breadcrumb_2.entry.js +17 -53
  520. package/dist/esm/ion-button_2.entry.js +11 -43
  521. package/dist/esm/ion-card_5.entry.js +29 -53
  522. package/dist/esm/ion-checkbox.entry.js +13 -31
  523. package/dist/esm/ion-chip.entry.js +8 -49
  524. package/dist/esm/ion-col_3.entry.js +57 -54
  525. package/dist/esm/ion-datetime-button.entry.js +7 -11
  526. package/dist/esm/ion-datetime_3.entry.js +40 -115
  527. package/dist/esm/ion-fab_3.entry.js +27 -43
  528. package/dist/esm/ion-img.entry.js +3 -7
  529. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -89
  530. package/dist/esm/ion-input-otp.entry.js +7 -11
  531. package/dist/esm/ion-input-password-toggle.entry.js +14 -52
  532. package/dist/esm/ion-input.entry.js +32 -122
  533. package/dist/esm/ion-item-option_3.entry.js +19 -48
  534. package/dist/esm/ion-item_8.entry.js +48 -115
  535. package/dist/esm/ion-loading.entry.js +15 -17
  536. package/dist/esm/ion-menu_3.entry.js +27 -45
  537. package/dist/esm/ion-modal.entry.js +29 -56
  538. package/dist/esm/ion-nav_2.entry.js +10 -13
  539. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  540. package/dist/esm/ion-picker-column.entry.js +11 -11
  541. package/dist/esm/ion-picker.entry.js +5 -9
  542. package/dist/esm/ion-popover.entry.js +16 -18
  543. package/dist/esm/ion-progress-bar.entry.js +7 -25
  544. package/dist/esm/ion-radio_2.entry.js +14 -24
  545. package/dist/esm/ion-range.entry.js +10 -14
  546. package/dist/esm/ion-refresher_2.entry.js +19 -37
  547. package/dist/esm/ion-reorder_2.entry.js +14 -38
  548. package/dist/esm/ion-ripple-effect.entry.js +6 -14
  549. package/dist/esm/ion-route_4.entry.js +7 -8
  550. package/dist/esm/ion-searchbar.entry.js +24 -137
  551. package/dist/esm/ion-segment-content.entry.js +1 -1
  552. package/dist/esm/ion-segment-view.entry.js +2 -5
  553. package/dist/esm/ion-segment_2.entry.js +14 -21
  554. package/dist/esm/ion-select-modal.entry.js +10 -16
  555. package/dist/esm/ion-select_3.entry.js +40 -131
  556. package/dist/esm/ion-spinner.entry.js +6 -28
  557. package/dist/esm/ion-split-pane.entry.js +8 -11
  558. package/dist/esm/ion-tab-bar_2.entry.js +21 -75
  559. package/dist/esm/ion-tab_2.entry.js +6 -7
  560. package/dist/esm/ion-text.entry.js +5 -5
  561. package/dist/esm/ion-textarea.entry.js +15 -55
  562. package/dist/esm/ion-toast.entry.js +17 -40
  563. package/dist/esm/ion-toggle.entry.js +22 -79
  564. package/dist/esm/ionic-global-CDrldh-5.js +146 -0
  565. package/dist/esm/ionic.js +3 -3
  566. package/dist/esm/{ios.transition-uJxJFbq8.js → ios.transition-BDzw0_Hm.js} +4 -6
  567. package/dist/esm/{keyboard-CU1vRv-b.js → keyboard-CUw4ekVy.js} +1 -1
  568. package/dist/esm/{keyboard-controller-Dplyc4OV.js → keyboard-controller-BaaVITYt.js} +3 -5
  569. package/dist/esm/{keyboard-B-HHSSYU.js → keyboard-ywgs5efA.js} +3 -4
  570. package/dist/esm/loader.js +3 -3
  571. package/dist/esm/{md.transition-Dp4NTeSh.js → md.transition-BzDYi3qq.js} +4 -5
  572. package/dist/esm/{notch-controller-BvFDmO69.js → notch-controller-BwelN_JM.js} +2 -2
  573. package/dist/esm/{overlays-Bi5WpIkN.js → overlays-DCabi1dI.js} +6 -5
  574. package/dist/esm/{status-tap-DXVlluKS.js → status-tap-5DQ7Fc4V.js} +2 -3
  575. package/dist/esm/{swipe-back-DNhAt9fY.js → swipe-back-BKw2CAHc.js} +1 -2
  576. package/dist/html.html-data.json +214 -2520
  577. package/dist/ionic/index.esm.js +1 -1
  578. package/dist/ionic/ionic.esm.js +1 -1
  579. package/dist/ionic/p-020af078.entry.js +4 -0
  580. package/dist/ionic/p-074839fc.entry.js +4 -0
  581. package/dist/ionic/p-07753df3.entry.js +4 -0
  582. package/dist/ionic/p-0abeb0fc.entry.js +4 -0
  583. package/dist/ionic/p-0bf76d0f.entry.js +4 -0
  584. package/dist/ionic/p-0dfa5a37.entry.js +4 -0
  585. package/dist/ionic/p-11518b31.entry.js +4 -0
  586. package/dist/ionic/p-1647c46c.entry.js +4 -0
  587. package/dist/ionic/p-2a939845.entry.js +4 -0
  588. package/dist/ionic/p-316c0420.entry.js +4 -0
  589. package/dist/ionic/p-31f7095f.entry.js +4 -0
  590. package/dist/ionic/p-370e4237.entry.js +4 -0
  591. package/dist/ionic/p-3a6caca9.entry.js +4 -0
  592. package/dist/ionic/p-40c261a3.entry.js +4 -0
  593. package/dist/ionic/p-43ed1ef5.entry.js +4 -0
  594. package/dist/ionic/p-46d74291.entry.js +4 -0
  595. package/dist/ionic/p-49d06882.entry.js +4 -0
  596. package/dist/ionic/p-4b658a7c.entry.js +4 -0
  597. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  598. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  599. package/dist/ionic/p-576e0965.entry.js +4 -0
  600. package/dist/ionic/p-582824c5.entry.js +4 -0
  601. package/dist/ionic/p-6241ce47.entry.js +4 -0
  602. package/dist/ionic/p-639dd543.entry.js +4 -0
  603. package/dist/ionic/p-6444c606.entry.js +4 -0
  604. package/dist/ionic/p-675b1a31.entry.js +4 -0
  605. package/dist/ionic/p-6d070558.entry.js +4 -0
  606. package/dist/ionic/p-7268efa5.entry.js +4 -0
  607. package/dist/ionic/p-72c38b88.entry.js +4 -0
  608. package/dist/ionic/p-75ae4733.entry.js +4 -0
  609. package/dist/ionic/p-79bd78f9.entry.js +4 -0
  610. package/dist/ionic/p-86f53961.entry.js +4 -0
  611. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  612. package/dist/ionic/p-9575b654.entry.js +4 -0
  613. package/dist/ionic/p-9eeaBrnk.js +4 -0
  614. package/dist/ionic/p-B0q1YL7N.js +4 -0
  615. package/dist/ionic/p-BFvmZNyx.js +4 -0
  616. package/dist/ionic/p-BKc55Xev.js +4 -0
  617. package/dist/ionic/p-BOVrCkpJ.js +4 -0
  618. package/dist/ionic/p-BYEqWnSg.js +4 -0
  619. package/dist/ionic/p-BmVRXR1y.js +4 -0
  620. package/dist/ionic/p-Bmgaetn_.js +4 -0
  621. package/dist/ionic/p-C6F4hat2.js +4 -0
  622. package/dist/ionic/p-C7hRNDhM.js +4 -0
  623. package/dist/ionic/p-CIGNaXM1.js +4 -0
  624. package/dist/ionic/{p-D-BelbiX.js → p-CJxh_yLS.js} +1 -1
  625. package/dist/ionic/{p-Cq83JWMg.js → p-CKvCXMs9.js} +1 -1
  626. package/dist/ionic/p-CTfR9YZG.js +4 -0
  627. package/dist/ionic/p-CtWGkNnJ.js +4 -0
  628. package/dist/ionic/{p-B3uz75uZ.js → p-CwgG81ZD.js} +1 -1
  629. package/dist/ionic/p-D-eFFUkA.js +4 -0
  630. package/dist/ionic/{p-HpOiAvpC.js → p-D0dMcSkw.js} +1 -1
  631. package/dist/ionic/{p-B-D7Cfki.js → p-D13Eaw-8.js} +1 -1
  632. package/dist/ionic/{p-C8r4dtYR.js → p-DCv9sLH2.js} +1 -1
  633. package/dist/ionic/p-DDb5r57F.js +4 -0
  634. package/dist/ionic/p-DNcfiJwE.js +4 -0
  635. package/dist/ionic/{p-q1ZSn0l7.js → p-DUt5fQmA.js} +1 -1
  636. package/dist/ionic/{p-COG0_eom.js → p-DV3sJJW8.js} +1 -1
  637. package/dist/ionic/p-DZRJwG4S.js +4 -0
  638. package/dist/ionic/{p-CtUK3cKk.js → p-Dc45iWE4.js} +1 -1
  639. package/dist/ionic/p-QHYY4sjU.js +4 -0
  640. package/dist/ionic/p-ZjP4CjeZ.js +4 -0
  641. package/dist/ionic/p-a127bee2.entry.js +4 -0
  642. package/dist/ionic/p-a8ed848b.entry.js +4 -0
  643. package/dist/ionic/p-ac4eb91d.entry.js +4 -0
  644. package/dist/ionic/p-b0a7585c.entry.js +4 -0
  645. package/dist/ionic/p-b57c6d3e.entry.js +4 -0
  646. package/dist/ionic/p-c19f63d0.entry.js +4 -0
  647. package/dist/ionic/p-c85a2127.entry.js +4 -0
  648. package/dist/ionic/p-cc45bcbc.entry.js +4 -0
  649. package/dist/ionic/p-cebb0328.entry.js +4 -0
  650. package/dist/ionic/p-d0a2a1ab.entry.js +4 -0
  651. package/dist/ionic/p-d126e8d3.entry.js +4 -0
  652. package/dist/ionic/p-d1f54e28.entry.js +4 -0
  653. package/dist/ionic/p-d3014190.entry.js +4 -0
  654. package/dist/ionic/p-da7d04cc.entry.js +4 -0
  655. package/dist/ionic/p-dbbe606a.entry.js +4 -0
  656. package/dist/ionic/p-ea509e3c.entry.js +4 -0
  657. package/dist/ionic/p-ec654c42.entry.js +4 -0
  658. package/dist/ionic/p-f8f22cc0.entry.js +4 -0
  659. package/dist/types/components/accordion/accordion.d.ts +3 -5
  660. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -12
  661. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  662. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  663. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  664. package/dist/types/components/alert/alert.d.ts +2 -3
  665. package/dist/types/components/app/app.d.ts +2 -4
  666. package/dist/types/components/avatar/avatar.d.ts +0 -32
  667. package/dist/types/components/back-button/back-button.d.ts +1 -2
  668. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  669. package/dist/types/components/badge/badge.d.ts +1 -34
  670. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -4
  671. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  672. package/dist/types/components/button/button.d.ts +6 -19
  673. package/dist/types/components/buttons/buttons.d.ts +1 -5
  674. package/dist/types/components/card/card.d.ts +1 -8
  675. package/dist/types/components/card-content/card-content.d.ts +1 -2
  676. package/dist/types/components/card-header/card-header.d.ts +2 -3
  677. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  678. package/dist/types/components/card-title/card-title.d.ts +1 -2
  679. package/dist/types/components/checkbox/checkbox.d.ts +4 -14
  680. package/dist/types/components/chip/chip.d.ts +1 -26
  681. package/dist/types/components/col/col.d.ts +5 -52
  682. package/dist/types/components/content/content.d.ts +0 -3
  683. package/dist/types/components/datetime/datetime.d.ts +1 -26
  684. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  685. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  686. package/dist/types/components/fab/fab.d.ts +0 -4
  687. package/dist/types/components/fab-button/fab-button.d.ts +3 -5
  688. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  689. package/dist/types/components/footer/footer.d.ts +3 -4
  690. package/dist/types/components/grid/grid.d.ts +0 -4
  691. package/dist/types/components/header/header.d.ts +3 -9
  692. package/dist/types/components/header/header.utils.d.ts +3 -3
  693. package/dist/types/components/img/img.d.ts +0 -3
  694. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -21
  695. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  696. package/dist/types/components/input/input.d.ts +5 -31
  697. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -2
  698. package/dist/types/components/item/item.d.ts +4 -11
  699. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  700. package/dist/types/components/item-group/item-group.d.ts +0 -4
  701. package/dist/types/components/item-option/item-option.d.ts +1 -18
  702. package/dist/types/components/item-options/item-options.d.ts +0 -4
  703. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  704. package/dist/types/components/label/label.d.ts +1 -2
  705. package/dist/types/components/list/list.d.ts +1 -15
  706. package/dist/types/components/list-header/list-header.d.ts +1 -2
  707. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  708. package/dist/types/components/loading/loading.d.ts +2 -3
  709. package/dist/types/components/menu/menu.d.ts +0 -3
  710. package/dist/types/components/menu-button/menu-button.d.ts +1 -3
  711. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  712. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  713. package/dist/types/components/modal/modal-interface.d.ts +7 -4
  714. package/dist/types/components/modal/modal.d.ts +1 -11
  715. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  716. package/dist/types/components/nav/nav.d.ts +1 -5
  717. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  718. package/dist/types/components/note/note.d.ts +1 -2
  719. package/dist/types/components/picker/picker.d.ts +1 -2
  720. package/dist/types/components/picker-column/picker-column.d.ts +1 -2
  721. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  722. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  723. package/dist/types/components/popover/popover-interface.d.ts +6 -3
  724. package/dist/types/components/popover/popover.d.ts +5 -6
  725. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -10
  726. package/dist/types/components/radio/radio.d.ts +1 -2
  727. package/dist/types/components/radio-group/radio-group.d.ts +0 -8
  728. package/dist/types/components/range/range.d.ts +1 -2
  729. package/dist/types/components/refresher/refresher.d.ts +1 -2
  730. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  731. package/dist/types/components/reorder/reorder.d.ts +0 -9
  732. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  733. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  734. package/dist/types/components/route/route.d.ts +0 -4
  735. package/dist/types/components/router/router.d.ts +0 -4
  736. package/dist/types/components/router-link/router-link.d.ts +0 -4
  737. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  738. package/dist/types/components/row/row.d.ts +0 -4
  739. package/dist/types/components/searchbar/searchbar.d.ts +9 -51
  740. package/dist/types/components/segment/segment.d.ts +1 -2
  741. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  742. package/dist/types/components/select/select.d.ts +13 -41
  743. package/dist/types/components/select-modal/select-modal.d.ts +0 -1
  744. package/dist/types/components/select-option/select-option.d.ts +0 -4
  745. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  746. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  747. package/dist/types/components/spinner/spinner.d.ts +0 -15
  748. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  749. package/dist/types/components/tab/tab.d.ts +0 -4
  750. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -22
  751. package/dist/types/components/tab-button/tab-button.d.ts +1 -12
  752. package/dist/types/components/tabs/tabs.d.ts +0 -3
  753. package/dist/types/components/text/text.d.ts +1 -2
  754. package/dist/types/components/textarea/textarea.d.ts +4 -17
  755. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  756. package/dist/types/components/title/title.d.ts +0 -4
  757. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  758. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  759. package/dist/types/components/toast/toast.d.ts +2 -19
  760. package/dist/types/components/toggle/toggle.d.ts +1 -15
  761. package/dist/types/components/toolbar/toolbar.d.ts +3 -20
  762. package/dist/types/components.d.ts +196 -1593
  763. package/dist/types/global/ionic-global.d.ts +2 -27
  764. package/dist/types/interface.d.ts +0 -3
  765. package/dist/types/utils/config.d.ts +2 -106
  766. package/dist/types/utils/focus-visible.d.ts +0 -13
  767. package/dist/types/utils/helpers.d.ts +0 -11
  768. package/dist/types/utils/overlays-interface.d.ts +1 -31
  769. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  770. package/hydrate/index.js +948 -2877
  771. package/hydrate/index.mjs +948 -2877
  772. package/package.json +4 -8
  773. package/components/caret-down.js +0 -6
  774. package/components/caret-left.js +0 -6
  775. package/components/caret-right.js +0 -6
  776. package/components/ion-divider.d.ts +0 -11
  777. package/components/ion-divider.js +0 -72
  778. package/components/list2.js +0 -6
  779. package/components/x.js +0 -6
  780. package/css/ionic/bundle.ionic.css +0 -1
  781. package/css/ionic/bundle.ionic.css.map +0 -1
  782. package/css/ionic/core.ionic.css +0 -1
  783. package/css/ionic/core.ionic.css.map +0 -1
  784. package/css/ionic/global.bundle.ionic.css +0 -1
  785. package/css/ionic/global.bundle.ionic.css.map +0 -1
  786. package/css/ionic/ionic-swiper.ionic.css +0 -1
  787. package/css/ionic/ionic-swiper.ionic.css.map +0 -1
  788. package/css/ionic/link.ionic.css +0 -1
  789. package/css/ionic/link.ionic.css.map +0 -1
  790. package/css/ionic/structure.ionic.css +0 -1
  791. package/css/ionic/structure.ionic.css.map +0 -1
  792. package/css/ionic/typography.ionic.css +0 -1
  793. package/css/ionic/typography.ionic.css.map +0 -1
  794. package/css/ionic/utils.bundle.ionic.css +0 -1
  795. package/css/ionic/utils.bundle.ionic.css.map +0 -1
  796. package/dist/cjs/caret-down-vtVgfXIs.js +0 -8
  797. package/dist/cjs/caret-left-CxZXLRv5.js +0 -8
  798. package/dist/cjs/caret-right-CRCgv98E.js +0 -8
  799. package/dist/cjs/ion-divider.cjs.entry.js +0 -51
  800. package/dist/cjs/ionic-global-DpRwOXLK.js +0 -506
  801. package/dist/cjs/list-a-7GSA6K.js +0 -8
  802. package/dist/cjs/x-BTF99yFH.js +0 -8
  803. package/dist/collection/components/accordion/accordion.ionic.css +0 -196
  804. package/dist/collection/components/accordion-group/accordion-group.ionic.css +0 -93
  805. package/dist/collection/components/avatar/avatar.ionic.css +0 -391
  806. package/dist/collection/components/backdrop/backdrop.ionic.css +0 -109
  807. package/dist/collection/components/badge/badge.ionic.css +0 -275
  808. package/dist/collection/components/button/button.ionic.css +0 -636
  809. package/dist/collection/components/buttons/buttons.ionic.css +0 -97
  810. package/dist/collection/components/card/card.ionic.css +0 -144
  811. package/dist/collection/components/card-content/card-content.ionic.css +0 -92
  812. package/dist/collection/components/card-header/card-header.ionic.css +0 -85
  813. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +0 -144
  814. package/dist/collection/components/checkbox/checkbox.ionic.css +0 -539
  815. package/dist/collection/components/chip/chip.ionic.css +0 -215
  816. package/dist/collection/components/datetime/datetime.ionic.css +0 -711
  817. package/dist/collection/components/divider/divider.ionic.css +0 -148
  818. package/dist/collection/components/divider/divider.ios.css +0 -87
  819. package/dist/collection/components/divider/divider.js +0 -94
  820. package/dist/collection/components/divider/divider.md.css +0 -87
  821. package/dist/collection/components/header/header.ionic.css +0 -97
  822. package/dist/collection/components/input/input.ionic.css +0 -885
  823. package/dist/collection/components/input-otp/input-otp.ionic.css +0 -369
  824. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +0 -78
  825. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +0 -61
  826. package/dist/collection/components/item/item.ionic.css +0 -508
  827. package/dist/collection/components/item-option/item-option.ionic.css +0 -278
  828. package/dist/collection/components/item-options/item-options.ionic.css +0 -221
  829. package/dist/collection/components/list/list.ionic.css +0 -212
  830. package/dist/collection/components/list-header/list-header.ionic.css +0 -190
  831. package/dist/collection/components/menu-button/menu-button.ionic.css +0 -236
  832. package/dist/collection/components/modal/modal.ionic.css +0 -247
  833. package/dist/collection/components/progress-bar/progress-bar.ionic.css +0 -287
  834. package/dist/collection/components/radio/radio.ionic.css +0 -422
  835. package/dist/collection/components/radio-group/radio-group.ionic.css +0 -119
  836. package/dist/collection/components/range/range.ionic.css +0 -563
  837. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +0 -215
  838. package/dist/collection/components/searchbar/searchbar.ionic.css +0 -626
  839. package/dist/collection/components/segment/segment.ionic.css +0 -115
  840. package/dist/collection/components/segment-button/segment-button.ionic.css +0 -353
  841. package/dist/collection/components/select/select.ionic.css +0 -777
  842. package/dist/collection/components/select-modal/select-modal.ionic.css +0 -130
  843. package/dist/collection/components/spinner/spinner.native.css +0 -198
  844. package/dist/collection/components/tab-bar/tab-bar.ionic.css +0 -201
  845. package/dist/collection/components/tab-button/tab-button.ionic.css +0 -337
  846. package/dist/collection/components/textarea/textarea.ionic.css +0 -885
  847. package/dist/collection/components/title/title.ionic.css +0 -127
  848. package/dist/collection/components/toast/toast.ionic.css +0 -394
  849. package/dist/collection/components/toggle/toggle.ionic.css +0 -508
  850. package/dist/collection/components/toolbar/test/image.svg +0 -1
  851. package/dist/collection/components/toolbar/toolbar.ionic.css +0 -241
  852. package/dist/esm/caret-down-D1t981Ih.js +0 -6
  853. package/dist/esm/caret-left-fIOYmaqA.js +0 -6
  854. package/dist/esm/caret-right-BYSs-jZz.js +0 -6
  855. package/dist/esm/ion-divider.entry.js +0 -49
  856. package/dist/esm/ionic-global-2lDD9k7y.js +0 -495
  857. package/dist/esm/list-Dhi5xtNS.js +0 -6
  858. package/dist/esm/x-BDqjX7Z_.js +0 -6
  859. package/dist/ionic/p-01577340.entry.js +0 -4
  860. package/dist/ionic/p-03a794dc.entry.js +0 -4
  861. package/dist/ionic/p-04b1d37a.entry.js +0 -4
  862. package/dist/ionic/p-04e0ff62.entry.js +0 -4
  863. package/dist/ionic/p-0607ce8e.entry.js +0 -4
  864. package/dist/ionic/p-0744265c.entry.js +0 -4
  865. package/dist/ionic/p-0ac7c560.entry.js +0 -4
  866. package/dist/ionic/p-0c41c8a8.entry.js +0 -4
  867. package/dist/ionic/p-0eecce18.entry.js +0 -4
  868. package/dist/ionic/p-0f124806.entry.js +0 -4
  869. package/dist/ionic/p-0f3ca9c1.entry.js +0 -4
  870. package/dist/ionic/p-19b2060d.entry.js +0 -4
  871. package/dist/ionic/p-2536e681.entry.js +0 -4
  872. package/dist/ionic/p-27dbb44c.entry.js +0 -4
  873. package/dist/ionic/p-28a9d991.entry.js +0 -4
  874. package/dist/ionic/p-2920da49.entry.js +0 -4
  875. package/dist/ionic/p-2dc676b2.entry.js +0 -4
  876. package/dist/ionic/p-363a3268.entry.js +0 -4
  877. package/dist/ionic/p-381eb2a4.entry.js +0 -4
  878. package/dist/ionic/p-412d5d9e.entry.js +0 -4
  879. package/dist/ionic/p-4c31db58.entry.js +0 -4
  880. package/dist/ionic/p-5543b7b8.entry.js +0 -4
  881. package/dist/ionic/p-57a2d30b.entry.js +0 -4
  882. package/dist/ionic/p-59a79bd9.entry.js +0 -4
  883. package/dist/ionic/p-5b64852f.entry.js +0 -4
  884. package/dist/ionic/p-5daa0980.entry.js +0 -4
  885. package/dist/ionic/p-5f9d9c14.entry.js +0 -4
  886. package/dist/ionic/p-67a63ae1.entry.js +0 -4
  887. package/dist/ionic/p-6bb99f41.entry.js +0 -4
  888. package/dist/ionic/p-6e3686f8.entry.js +0 -4
  889. package/dist/ionic/p-742fed9f.entry.js +0 -4
  890. package/dist/ionic/p-7fe3ea65.entry.js +0 -4
  891. package/dist/ionic/p-826267d6.entry.js +0 -4
  892. package/dist/ionic/p-83ba2260.entry.js +0 -4
  893. package/dist/ionic/p-8681a2a7.entry.js +0 -4
  894. package/dist/ionic/p-BDqjX7Z_.js +0 -4
  895. package/dist/ionic/p-BYSs-jZz.js +0 -4
  896. package/dist/ionic/p-BiTKUjko.js +0 -4
  897. package/dist/ionic/p-ByhhQryg.js +0 -4
  898. package/dist/ionic/p-CK1xn1Nt.js +0 -4
  899. package/dist/ionic/p-COLHV2ym.js +0 -4
  900. package/dist/ionic/p-CvRDI-Iz.js +0 -4
  901. package/dist/ionic/p-D1t981Ih.js +0 -4
  902. package/dist/ionic/p-DHeUgOSJ.js +0 -4
  903. package/dist/ionic/p-DM-v_NNE.js +0 -4
  904. package/dist/ionic/p-DeEDqH91.js +0 -4
  905. package/dist/ionic/p-Dhi5xtNS.js +0 -4
  906. package/dist/ionic/p-DoGrslUl.js +0 -4
  907. package/dist/ionic/p-Dq8ap6AD.js +0 -4
  908. package/dist/ionic/p-DyaKZbAH.js +0 -4
  909. package/dist/ionic/p-U97FCefb.js +0 -4
  910. package/dist/ionic/p-UafGZQ8e.js +0 -4
  911. package/dist/ionic/p-a0362df3.entry.js +0 -4
  912. package/dist/ionic/p-a6a37a34.entry.js +0 -4
  913. package/dist/ionic/p-a6fb1f64.entry.js +0 -4
  914. package/dist/ionic/p-a89211bd.entry.js +0 -4
  915. package/dist/ionic/p-ab6f89e1.entry.js +0 -4
  916. package/dist/ionic/p-b475ec18.entry.js +0 -4
  917. package/dist/ionic/p-c082f853.entry.js +0 -4
  918. package/dist/ionic/p-cdbfbff6.entry.js +0 -4
  919. package/dist/ionic/p-d3f64c58.entry.js +0 -4
  920. package/dist/ionic/p-d70bba84.entry.js +0 -4
  921. package/dist/ionic/p-d9c9592a.entry.js +0 -4
  922. package/dist/ionic/p-da0a2ca6.entry.js +0 -4
  923. package/dist/ionic/p-da5f08cf.entry.js +0 -4
  924. package/dist/ionic/p-da8e21af.entry.js +0 -4
  925. package/dist/ionic/p-dacd8666.entry.js +0 -4
  926. package/dist/ionic/p-e90bbe85.entry.js +0 -4
  927. package/dist/ionic/p-ecba552f.entry.js +0 -4
  928. package/dist/ionic/p-ecf8e713.entry.js +0 -4
  929. package/dist/ionic/p-fIOYmaqA.js +0 -4
  930. package/dist/ionic/p-nP9c7bo5.js +0 -4
  931. package/dist/ionic/p-of4jy1ch.js +0 -4
  932. package/dist/ionic/p-qZR4N8Lu.js +0 -4
  933. package/dist/ionic/p-vXpMhGrs.js +0 -4
  934. package/dist/types/components/divider/divider.d.ts +0 -20
  935. /package/dist/collection/components/{refresher-content/refresher-content.css → input-password-toggle/input-password-toggle.css} +0 -0
@@ -1,9 +1,3 @@
1
- /**
2
- * Convert a pixels given value into rem
3
- *
4
- * @param pixels - Value in pixels to be converted (i.e. px)
5
- * @param context (optional) - Baseline value
6
- */
7
1
  /**
8
2
  * Convert a font size to a dynamic font size.
9
3
  * Fonts that participate in Dynamic Type should use
@@ -59,89 +53,6 @@
59
53
  * }
60
54
  * }
61
55
  */
62
- /**
63
- * Convert a pixels given value into rem
64
- *
65
- * @param pixels - Value in pixels to be converted (i.e. px)
66
- * @param context (optional) - Baseline value
67
- */
68
- /**
69
- * Convert a font size to a dynamic font size.
70
- * Fonts that participate in Dynamic Type should use
71
- * dynamic font sizes.
72
- * @param size - The initial font size including the unit (i.e. px or pt)
73
- * @param unit (optional) - The unit to convert to. Use this if you want to
74
- * convert to a unit other than $baselineUnit.
75
- */
76
- /**
77
- * Convert a font size to a dynamic font size but impose
78
- * a maximum font size.
79
- * @param size - The initial font size including the unit (i.e. px or pt)
80
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
81
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
82
- * convert to a unit other than $baselineUnit.
83
- */
84
- /**
85
- * Convert a font size to a dynamic font size but impose
86
- * a minimum font size.
87
- * @param size - The initial font size including the unit (i.e. px or pt)
88
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
89
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
90
- * convert to a unit other than $baselineUnit.
91
- */
92
- /**
93
- * Convert a font size to a dynamic font size but impose
94
- * maximum and minimum font sizes.
95
- * @param size - The initial font size including the unit (i.e. px or pt)
96
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
97
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
98
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
99
- * convert to a unit other than $baselineUnit.
100
- */
101
- /**
102
- * A heuristic that applies CSS to tablet
103
- * viewports.
104
- *
105
- * Usage:
106
- * @include tablet-viewport() {
107
- * :host {
108
- * background-color: green;
109
- * }
110
- * }
111
- */
112
- /**
113
- * A heuristic that applies CSS to mobile
114
- * viewports (i.e. phones, not tablets).
115
- *
116
- * Usage:
117
- * @include mobile-viewport() {
118
- * :host {
119
- * background-color: blue;
120
- * }
121
- * }
122
- */
123
- /**
124
- * A heuristic that applies CSS to tablet
125
- * viewports.
126
- *
127
- * Usage:
128
- * @include tablet-viewport() {
129
- * :host {
130
- * background-color: green;
131
- * }
132
- * }
133
- */
134
- /**
135
- * A heuristic that applies CSS to mobile
136
- * viewports (i.e. phones, not tablets).
137
- *
138
- * Usage:
139
- * @include mobile-viewport() {
140
- * :host {
141
- * background-color: blue;
142
- * }
143
- * }
144
- */
145
56
  :host {
146
57
  /**
147
58
  * @prop --track-background: Background of the toggle track
@@ -166,6 +77,7 @@
166
77
  max-width: 100%;
167
78
  cursor: pointer;
168
79
  user-select: none;
80
+ z-index: 2;
169
81
  }
170
82
 
171
83
  :host(.in-item) {
@@ -186,6 +98,10 @@
186
98
  width: auto;
187
99
  }
188
100
 
101
+ :host(.ion-focused) input {
102
+ border: 2px solid #5e9ed6;
103
+ }
104
+
189
105
  :host(.toggle-disabled) {
190
106
  pointer-events: none;
191
107
  }
@@ -209,6 +125,26 @@ input {
209
125
  cursor: inherit;
210
126
  }
211
127
 
128
+ .label-text-wrapper {
129
+ text-overflow: ellipsis;
130
+ white-space: nowrap;
131
+ overflow: hidden;
132
+ }
133
+
134
+ :host(.in-item) .label-text-wrapper {
135
+ margin-top: 10px;
136
+ margin-bottom: 10px;
137
+ }
138
+
139
+ :host(.in-item.toggle-label-placement-stacked) .label-text-wrapper {
140
+ margin-top: 10px;
141
+ margin-bottom: 16px;
142
+ }
143
+
144
+ :host(.in-item.toggle-label-placement-stacked) .native-wrapper {
145
+ margin-bottom: 10px;
146
+ }
147
+
212
148
  /**
213
149
  * If no label text is placed into the slot
214
150
  * then the element should be hidden otherwise
@@ -224,11 +160,17 @@ input {
224
160
  }
225
161
 
226
162
  .toggle-bottom {
163
+ padding-top: 4px;
227
164
  display: flex;
228
165
  justify-content: space-between;
166
+ font-size: 0.75rem;
229
167
  white-space: normal;
230
168
  }
231
169
 
170
+ :host(.toggle-label-placement-stacked) .toggle-bottom {
171
+ font-size: 1rem;
172
+ }
173
+
232
174
  /**
233
175
  * Error text should only be shown when .ion-invalid is
234
176
  * present on the checkbox. Otherwise the helper text should
@@ -236,10 +178,12 @@ input {
236
178
  */
237
179
  .toggle-bottom .error-text {
238
180
  display: none;
181
+ color: var(--ion-color-danger, #c5000f);
239
182
  }
240
183
 
241
184
  .toggle-bottom .helper-text {
242
185
  display: block;
186
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
243
187
  }
244
188
 
245
189
  :host(.ion-touched.ion-invalid) .toggle-bottom .error-text {
@@ -258,6 +202,18 @@ input {
258
202
  flex-direction: row;
259
203
  }
260
204
 
205
+ :host(.toggle-label-placement-start) .label-text-wrapper {
206
+ /**
207
+ * The margin between the label and
208
+ * the input should be on the end
209
+ * when the label sits at the start.
210
+ */
211
+ -webkit-margin-start: 0;
212
+ margin-inline-start: 0;
213
+ -webkit-margin-end: 16px;
214
+ margin-inline-end: 16px;
215
+ }
216
+
261
217
  /**
262
218
  * Label is on the right of the input in LTR and
263
219
  * on the left in RTL.
@@ -267,6 +223,92 @@ input {
267
223
  justify-content: start;
268
224
  }
269
225
 
226
+ /**
227
+ * The margin between the label and
228
+ * the input should be on the start
229
+ * when the label sits at the end.
230
+ */
231
+ :host(.toggle-label-placement-end) .label-text-wrapper {
232
+ -webkit-margin-start: 16px;
233
+ margin-inline-start: 16px;
234
+ -webkit-margin-end: 0;
235
+ margin-inline-end: 0;
236
+ }
237
+
238
+ :host(.toggle-label-placement-fixed) .label-text-wrapper {
239
+ /**
240
+ * The margin between the label and
241
+ * the input should be on the end
242
+ * when the label sits at the start.
243
+ */
244
+ -webkit-margin-start: 0;
245
+ margin-inline-start: 0;
246
+ -webkit-margin-end: 16px;
247
+ margin-inline-end: 16px;
248
+ }
249
+
250
+ /**
251
+ * Label is on the left of the input in LTR and
252
+ * on the right in RTL. Label also has a fixed width.
253
+ */
254
+ :host(.toggle-label-placement-fixed) .label-text-wrapper {
255
+ flex: 0 0 100px;
256
+ width: 100px;
257
+ min-width: 100px;
258
+ max-width: 200px;
259
+ }
260
+
261
+ /**
262
+ * Label is on top of the toggle.
263
+ */
264
+ :host(.toggle-label-placement-stacked) .toggle-wrapper {
265
+ flex-direction: column;
266
+ text-align: center;
267
+ }
268
+
269
+ :host(.toggle-label-placement-stacked) .label-text-wrapper {
270
+ transform: scale(0.75);
271
+ /**
272
+ * The margin between the label and
273
+ * the toggle should be on the bottom
274
+ * when the label sits on top.
275
+ */
276
+ margin-left: 0;
277
+ margin-right: 0;
278
+ margin-bottom: 16px;
279
+ /**
280
+ * Label text should not extend
281
+ * beyond the bounds of the toggle.
282
+ */
283
+ max-width: calc(100% / 0.75);
284
+ }
285
+
286
+ :host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper {
287
+ transform-origin: left top;
288
+ }
289
+ :host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper, :host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper {
290
+ transform-origin: right top;
291
+ }
292
+
293
+ @supports selector(:dir(rtl)) {
294
+ :host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper {
295
+ transform-origin: right top;
296
+ }
297
+ }
298
+
299
+ :host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper {
300
+ transform-origin: center top;
301
+ }
302
+ :host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper, :host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper {
303
+ transform-origin: calc(100% - center) top;
304
+ }
305
+
306
+ @supports selector(:dir(rtl)) {
307
+ :host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper {
308
+ transform-origin: calc(100% - center) top;
309
+ }
310
+ }
311
+
270
312
  :host(.toggle-justify-space-between) .toggle-wrapper {
271
313
  justify-content: space-between;
272
314
  }
@@ -365,155 +407,6 @@ input {
365
407
  transform: translate3d(calc(var(--handle-spacing) * 2), 0, 0);
366
408
  }
367
409
 
368
- :host {
369
- z-index: 2;
370
- }
371
-
372
- :host(.ion-focused) input {
373
- border: 2px solid #5e9ed6;
374
- }
375
-
376
- :host(.in-item) .label-text-wrapper {
377
- margin-top: 10px;
378
- margin-bottom: 10px;
379
- }
380
-
381
- :host(.in-item.toggle-label-placement-stacked) .label-text-wrapper {
382
- margin-top: 10px;
383
- margin-bottom: 16px;
384
- }
385
-
386
- :host(.in-item.toggle-label-placement-stacked) .native-wrapper {
387
- margin-bottom: 10px;
388
- }
389
-
390
- .toggle-bottom {
391
- padding-top: 4px;
392
- font-size: 0.75rem;
393
- }
394
-
395
- :host(.toggle-label-placement-stacked) .toggle-bottom {
396
- font-size: 1rem;
397
- }
398
-
399
- .toggle-bottom .error-text {
400
- color: var(--ion-color-danger, #c5000f);
401
- }
402
-
403
- .toggle-bottom .helper-text {
404
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
405
- }
406
-
407
- .label-text-wrapper {
408
- text-overflow: ellipsis;
409
- white-space: nowrap;
410
- overflow: hidden;
411
- }
412
-
413
- :host(.toggle-label-placement-fixed) .label-text-wrapper {
414
- /**
415
- * The margin between the label and
416
- * the input should be on the end
417
- * when the label sits at the start.
418
- */
419
- -webkit-margin-start: 0;
420
- margin-inline-start: 0;
421
- -webkit-margin-end: 16px;
422
- margin-inline-end: 16px;
423
- }
424
-
425
- /**
426
- * Label is on the left of the input in LTR and
427
- * on the right in RTL. Label also has a fixed width.
428
- */
429
- :host(.toggle-label-placement-fixed) .label-text-wrapper {
430
- flex: 0 0 100px;
431
- width: 100px;
432
- min-width: 100px;
433
- max-width: 200px;
434
- }
435
-
436
- /**
437
- * Label is on top of the toggle.
438
- */
439
- :host(.toggle-label-placement-stacked) .toggle-wrapper {
440
- flex-direction: column;
441
- text-align: center;
442
- }
443
-
444
- :host(.toggle-label-placement-stacked) .label-text-wrapper {
445
- transform: scale(0.75);
446
- /**
447
- * The margin between the label and
448
- * the toggle should be on the bottom
449
- * when the label sits on top.
450
- */
451
- margin-left: 0;
452
- margin-right: 0;
453
- margin-bottom: 16px;
454
- /**
455
- * Label text should not extend
456
- * beyond the bounds of the toggle.
457
- */
458
- max-width: calc(100% / 0.75);
459
- }
460
-
461
- :host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper {
462
- transform-origin: left top;
463
- }
464
- :host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper, :host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper {
465
- transform-origin: right top;
466
- }
467
-
468
- @supports selector(:dir(rtl)) {
469
- :host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper {
470
- transform-origin: right top;
471
- }
472
- }
473
-
474
- :host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper {
475
- transform-origin: center top;
476
- }
477
- :host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper, :host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper {
478
- transform-origin: calc(100% - center) top;
479
- }
480
-
481
- @supports selector(:dir(rtl)) {
482
- :host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper {
483
- transform-origin: calc(100% - center) top;
484
- }
485
- }
486
-
487
- :host(.toggle-label-placement-start) .label-text-wrapper {
488
- /**
489
- * The margin between the label and
490
- * the input should be on the end
491
- * when the label sits at the start.
492
- */
493
- -webkit-margin-start: 0;
494
- margin-inline-start: 0;
495
- -webkit-margin-end: 16px;
496
- margin-inline-end: 16px;
497
- }
498
-
499
- /**
500
- * The margin between the label and
501
- * the input should be on the start
502
- * when the label sits at the end.
503
- */
504
- :host(.toggle-label-placement-end) .label-text-wrapper {
505
- -webkit-margin-start: 16px;
506
- margin-inline-start: 16px;
507
- -webkit-margin-end: 0;
508
- margin-inline-end: 0;
509
- }
510
-
511
- /**
512
- * Convert a pixels given value into rem
513
- *
514
- * @param pixels - Value in pixels to be converted (i.e. px)
515
- * @param context (optional) - Baseline value
516
- */
517
410
  /**
518
411
  * Convert a font size to a dynamic font size.
519
412
  * Fonts that participate in Dynamic Type should use
@@ -569,12 +462,6 @@ input {
569
462
  * }
570
463
  * }
571
464
  */
572
- /**
573
- * Convert a pixels given value into rem
574
- *
575
- * @param pixels - Value in pixels to be converted (i.e. px)
576
- * @param context (optional) - Baseline value
577
- */
578
465
  /**
579
466
  * Convert a font size to a dynamic font size.
580
467
  * Fonts that participate in Dynamic Type should use
@@ -710,9 +597,6 @@ input {
710
597
  position: absolute;
711
598
  width: 15px;
712
599
  height: 15px;
713
- }
714
-
715
- .toggle-switch-icon-checked-default {
716
600
  transform: translateY(-50%) rotate(90deg);
717
601
  }
718
602
 
@@ -1,8 +1,6 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import checkRegular from "@phosphor-icons/core/assets/regular/check.svg";
5
- import minusRegular from "@phosphor-icons/core/assets/regular/minus.svg";
6
4
  import { Build, Host, h } from "@stencil/core";
7
5
  import { checkInvalidState } from "../../utils/forms/index";
8
6
  import { renderHiddenInput, inheritAriaAttributes } from "../../utils/helpers";
@@ -12,10 +10,9 @@ import { isRTL } from "../../utils/rtl/index";
12
10
  import { createColorClasses, hostContext } from "../../utils/theme";
13
11
  import { checkmarkOutline, removeOutline, ellipseOutline } from "ionicons/icons";
14
12
  import { config } from "../../global/config";
15
- import { getIonTheme } from "../../global/ionic-global";
13
+ import { getIonMode } from "../../global/ionic-global";
16
14
  /**
17
- * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
18
- * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
15
+ * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
19
16
  *
20
17
  * @slot - The label text to associate with the toggle. Use the "labelPlacement" property to control where the label is placed relative to the toggle.
21
18
  *
@@ -131,8 +128,11 @@ export class Toggle {
131
128
  this.onBlur = () => {
132
129
  this.ionBlur.emit();
133
130
  };
134
- this.getSwitchLabelIcon = (checked) => {
135
- return checked ? this.toggleCheckedIcon : this.toggleUncheckedIcon;
131
+ this.getSwitchLabelIcon = (mode, checked) => {
132
+ if (mode === 'md') {
133
+ return checked ? checkmarkOutline : removeOutline;
134
+ }
135
+ return checked ? removeOutline : ellipseOutline;
136
136
  };
137
137
  }
138
138
  disabledChanged() {
@@ -239,68 +239,18 @@ export class Toggle {
239
239
  setFocus() {
240
240
  this.el.focus();
241
241
  }
242
- get toggleDefaultCheckedIcon() {
243
- // Determine the theme and map to default icons
244
- const theme = getIonTheme(this);
245
- const defaultIcons = {
246
- ios: removeOutline,
247
- ionic: checkRegular,
248
- md: checkmarkOutline,
249
- };
250
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
251
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
252
- // Return the default icon
253
- return defaultIcon;
254
- }
255
- /**
256
- * Get the icon to use for the checked icon.
257
- * Otherwise, use the icon set in the config.
258
- * If no icon is set in the config, use the default icon.
259
- */
260
- get toggleCheckedIcon() {
261
- return config.get('toggleCheckedIcon', this.toggleDefaultCheckedIcon);
262
- }
263
- /**
264
- * Get the icon to use for the unchecked icon.
265
- * Otherwise, use the icon set in the config.
266
- * If no icon is set in the config, use the default icon.
267
- */
268
- get toggleUncheckedIcon() {
269
- // Determine the theme and map to default icons
270
- const theme = getIonTheme(this);
271
- const defaultIcons = {
272
- ios: ellipseOutline,
273
- ionic: minusRegular,
274
- md: removeOutline,
275
- };
276
- // Get the default icon based on the theme, falling back to 'md' icon if necessary
277
- const defaultIcon = defaultIcons[theme] || defaultIcons.md;
278
- // Return the configured toggle unchecked icon or the default icon
279
- return config.get('toggleUncheckedIcon', defaultIcon);
280
- }
281
- renderOnOffSwitchLabels(checked) {
282
- const icon = this.getSwitchLabelIcon(checked);
242
+ renderOnOffSwitchLabels(mode, checked) {
243
+ const icon = this.getSwitchLabelIcon(mode, checked);
283
244
  return (h("ion-icon", { class: {
284
245
  'toggle-switch-icon': true,
285
246
  'toggle-switch-icon-checked': checked,
286
- /**
287
- * The default checked icon is being modified with
288
- * styling that causes it to rotate by 90 degrees
289
- * when the theme is `ios`.
290
- *
291
- * To prevent any rotation on a custom icon that is
292
- * set through the config, we need to apply a class
293
- * that handles the styling only when the default
294
- * checked icon is being used.
295
- */
296
- 'toggle-switch-icon-checked-default': checked && icon === this.toggleDefaultCheckedIcon,
297
247
  }, icon: icon, "aria-hidden": "true" }));
298
248
  }
299
249
  renderToggleControl() {
300
- const theme = getIonTheme(this);
250
+ const mode = getIonMode(this);
301
251
  const { enableOnOffLabels, checked } = this;
302
252
  return (h("div", { class: "toggle-icon", part: "track", ref: (el) => (this.toggleTrack = el) }, enableOnOffLabels &&
303
- theme === 'ios' && [this.renderOnOffSwitchLabels(true), this.renderOnOffSwitchLabels(false)], h("div", { class: "toggle-icon-wrapper" }, h("div", { class: "toggle-inner", part: "handle" }, enableOnOffLabels && (theme === 'md' || theme === 'ionic') && this.renderOnOffSwitchLabels(checked)))));
253
+ mode === 'ios' && [this.renderOnOffSwitchLabels(mode, true), this.renderOnOffSwitchLabels(mode, false)], h("div", { class: "toggle-icon-wrapper" }, h("div", { class: "toggle-inner", part: "handle" }, enableOnOffLabels && mode === 'md' && this.renderOnOffSwitchLabels(mode, checked)))));
304
254
  }
305
255
  get hasLabel() {
306
256
  return this.el.textContent !== '';
@@ -333,13 +283,12 @@ export class Toggle {
333
283
  }
334
284
  render() {
335
285
  const { activated, alignment, checked, color, disabled, el, hasLabel, inheritedAttributes, inputId, inputLabelId, justify, labelPlacement, name, required, } = this;
336
- const theme = getIonTheme(this);
286
+ const mode = getIonMode(this);
337
287
  const value = this.getValue();
338
288
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
339
- const isIonicTheme = theme === 'ionic';
340
289
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
341
- return (h(Host, { key: 'c622d6548e5249afefe43fe4a3eebfacc13c46e3', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, "aria-required": required ? 'true' : undefined, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, class: createColorClasses(color, {
342
- [theme]: true,
290
+ return (h(Host, { key: 'f569148edd89ee041a4719ffc4733c16b05229bd', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, "aria-required": required ? 'true' : undefined, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, class: createColorClasses(color, {
291
+ [mode]: true,
343
292
  'in-item': hostContext('ion-item', el),
344
293
  'toggle-activated': activated,
345
294
  'toggle-checked': checked,
@@ -348,27 +297,23 @@ export class Toggle {
348
297
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
349
298
  [`toggle-label-placement-${labelPlacement}`]: true,
350
299
  [`toggle-${rtl}`]: true,
351
- 'ion-activatable': isIonicTheme,
352
- 'ion-focusable': isIonicTheme,
353
- }) }, h("label", { key: '5cb15fd4884ec35887859ba6db3609ef9e089f39', class: "toggle-wrapper", htmlFor: inputId }, h("input", Object.assign({ key: '81b24cc830074850bf22f0fcd8bc4c6b0b95ae02', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), h("div", { key: '4700c06a080895c5421b7c1cd139cbda61fcd2f1', class: {
300
+ }) }, h("label", { key: '3027f2ac4be6de422a14486d847fbee77f615db1', class: "toggle-wrapper", htmlFor: inputId }, h("input", Object.assign({ key: '4b0304c9e879e432b80184b4e5de37d55c11b436', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), h("div", { key: '8ef265ec942e7f01ff31cbb202ed146c6bf94e02', class: {
354
301
  'label-text-wrapper': true,
355
302
  'label-text-wrapper-hidden': !hasLabel,
356
- }, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, h("slot", { key: '5af5c0e3601736090cfed56c3c88e08193654561' }), this.renderHintText()), h("div", { key: 'f1004334510fea20be01f2170627fa1839f42be5', class: "native-wrapper" }, this.renderToggleControl()))));
303
+ }, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, h("slot", { key: '7b162b7dd27199cca2a4c995276a18b9f8e44aaf' }), this.renderHintText()), h("div", { key: 'd13c34bd42fca01cc73ddb4ea7e471b33a282a3e', class: "native-wrapper" }, this.renderToggleControl()))));
357
304
  }
358
305
  static get is() { return "ion-toggle"; }
359
306
  static get encapsulation() { return "shadow"; }
360
307
  static get originalStyleUrls() {
361
308
  return {
362
309
  "ios": ["toggle.ios.scss"],
363
- "md": ["toggle.md.scss"],
364
- "ionic": ["toggle.ionic.scss"]
310
+ "md": ["toggle.md.scss"]
365
311
  };
366
312
  }
367
313
  static get styleUrls() {
368
314
  return {
369
315
  "ios": ["toggle.ios.css"],
370
- "md": ["toggle.md.css"],
371
- "ionic": ["toggle.ionic.css"]
316
+ "md": ["toggle.md.css"]
372
317
  };
373
318
  }
374
319
  static get properties() {