@ionic/core 8.7.14-dev.11765828575.1dda19db → 8.7.14-dev.11765982433.1ecdbcee

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