@ionic/core 7.4.2-dev.11695927273.1323de22 → 7.4.2-dev.11695944163.13e7414e

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 (515) hide show
  1. package/components/action-sheet.js +2 -2
  2. package/components/button.js +2 -2
  3. package/components/buttons.js +2 -2
  4. package/components/checkbox.js +2 -2
  5. package/components/data.js +22 -96
  6. package/components/haptic.js +0 -1
  7. package/components/ion-back-button.js +2 -2
  8. package/components/ion-badge.js +2 -2
  9. package/components/ion-breadcrumb.js +2 -2
  10. package/components/ion-card-content.js +2 -2
  11. package/components/ion-card-subtitle.js +2 -2
  12. package/components/ion-card-title.js +2 -2
  13. package/components/ion-card.js +2 -2
  14. package/components/ion-chip.js +8 -3
  15. package/components/ion-datetime-button.js +6 -6
  16. package/components/ion-datetime.js +6 -6
  17. package/components/ion-header.js +1 -1
  18. package/components/ion-input.js +2 -2
  19. package/components/ion-item-divider.js +2 -2
  20. package/components/ion-item-option.js +2 -2
  21. package/components/ion-item-options.js +2 -2
  22. package/components/ion-loading.js +2 -2
  23. package/components/ion-menu-button.js +2 -2
  24. package/components/ion-nav.js +0 -1
  25. package/components/ion-range.js +2 -2
  26. package/components/ion-reorder.js +2 -2
  27. package/components/ion-router.js +0 -3
  28. package/components/ion-searchbar.js +9 -3
  29. package/components/ion-select.js +2 -2
  30. package/components/ion-textarea.js +2 -2
  31. package/components/ion-title.js +2 -2
  32. package/components/ion-toast.js +13 -119
  33. package/components/ion-toolbar.js +1 -1
  34. package/components/ios.transition.js +4 -5
  35. package/components/item.js +2 -2
  36. package/components/label.js +2 -2
  37. package/components/list-header.js +2 -2
  38. package/components/note.js +2 -2
  39. package/components/overlays.js +0 -1
  40. package/components/radio.js +2 -2
  41. package/css/core.css +100 -0
  42. package/css/core.css.map +1 -1
  43. package/css/display.css +33 -0
  44. package/css/display.css.map +1 -1
  45. package/css/float-elements.css +33 -0
  46. package/css/float-elements.css.map +1 -1
  47. package/css/global.bundle.css +84 -6
  48. package/css/global.bundle.css.map +1 -1
  49. package/css/ionic-swiper.css +33 -0
  50. package/css/ionic-swiper.css.map +1 -1
  51. package/css/ionic.bundle.css +1 -1
  52. package/css/ionic.bundle.css.map +1 -1
  53. package/css/padding.css +33 -0
  54. package/css/padding.css.map +1 -1
  55. package/css/structure.css +33 -0
  56. package/css/structure.css.map +1 -1
  57. package/css/text-alignment.css +33 -0
  58. package/css/text-alignment.css.map +1 -1
  59. package/css/text-transformation.css +33 -0
  60. package/css/text-transformation.css.map +1 -1
  61. package/css/typography.css +51 -6
  62. package/css/typography.css.map +1 -1
  63. package/css/utils.bundle.css +165 -0
  64. package/css/utils.bundle.css.map +1 -1
  65. package/dist/cjs/{button-active-19cc8cae.js → button-active-32f15660.js} +1 -1
  66. package/dist/cjs/{data-c8d21093.js → data-db832785.js} +22 -96
  67. package/dist/cjs/{haptic-678abc9f.js → haptic-c5f6b4d5.js} +0 -1
  68. package/dist/cjs/{index-77d4b2e7.js → index-4e502bd1.js} +2 -2
  69. package/dist/cjs/index.cjs.js +4 -4
  70. package/dist/cjs/ion-action-sheet.cjs.entry.js +5 -5
  71. package/dist/cjs/ion-alert.cjs.entry.js +3 -3
  72. package/dist/cjs/ion-app_8.cjs.entry.js +7 -7
  73. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  74. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  75. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  77. package/dist/cjs/ion-card_5.cjs.entry.js +8 -8
  78. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  79. package/dist/cjs/ion-chip.cjs.entry.js +7 -2
  80. package/dist/cjs/ion-datetime-button.cjs.entry.js +6 -6
  81. package/dist/cjs/ion-datetime_3.cjs.entry.js +8 -8
  82. package/dist/cjs/ion-input.cjs.entry.js +2 -2
  83. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  84. package/dist/cjs/ion-item_8.cjs.entry.js +10 -10
  85. package/dist/cjs/ion-loading.cjs.entry.js +3 -3
  86. package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
  87. package/dist/cjs/ion-modal.cjs.entry.js +2 -2
  88. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -2
  89. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +1 -1
  90. package/dist/cjs/ion-popover.cjs.entry.js +2 -2
  91. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  92. package/dist/cjs/ion-range.cjs.entry.js +2 -2
  93. package/dist/cjs/ion-refresher_2.cjs.entry.js +1 -1
  94. package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
  95. package/dist/cjs/ion-route_4.cjs.entry.js +0 -3
  96. package/dist/cjs/ion-searchbar.cjs.entry.js +9 -3
  97. package/dist/cjs/ion-select_3.cjs.entry.js +3 -3
  98. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  99. package/dist/cjs/ion-toast.cjs.entry.js +34 -138
  100. package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
  101. package/dist/cjs/ionic.cjs.js +1 -1
  102. package/dist/cjs/{ios.transition-458ee399.js → ios.transition-7ff33297.js} +5 -6
  103. package/dist/cjs/loader.cjs.js +1 -1
  104. package/dist/cjs/{md.transition-3423dd44.js → md.transition-2224e480.js} +1 -1
  105. package/dist/cjs/{overlays-817dca17.js → overlays-d3a13e61.js} +0 -1
  106. package/dist/collection/components/accordion/accordion.ios.css +66 -0
  107. package/dist/collection/components/accordion/accordion.md.css +33 -0
  108. package/dist/collection/components/accordion-group/accordion-group.ios.css +66 -0
  109. package/dist/collection/components/accordion-group/accordion-group.md.css +99 -0
  110. package/dist/collection/components/action-sheet/action-sheet.ios.css +80 -12
  111. package/dist/collection/components/action-sheet/action-sheet.md.css +76 -8
  112. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +27 -0
  113. package/dist/collection/components/alert/alert.ios.css +99 -0
  114. package/dist/collection/components/alert/alert.md.css +99 -0
  115. package/dist/collection/components/avatar/avatar.ios.css +66 -0
  116. package/dist/collection/components/avatar/avatar.md.css +66 -0
  117. package/dist/collection/components/back-button/back-button.ios.css +83 -1
  118. package/dist/collection/components/back-button/back-button.md.css +75 -3
  119. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +26 -0
  120. package/dist/collection/components/backdrop/backdrop.ios.css +66 -0
  121. package/dist/collection/components/backdrop/backdrop.md.css +66 -0
  122. package/dist/collection/components/badge/badge.ios.css +75 -1
  123. package/dist/collection/components/badge/badge.md.css +67 -1
  124. package/dist/collection/components/badge/test/a11y/badge.e2e.js +22 -0
  125. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +80 -3
  126. package/dist/collection/components/breadcrumb/breadcrumb.md.css +69 -3
  127. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +33 -0
  128. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +33 -0
  129. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +21 -0
  130. package/dist/collection/components/button/button.ios.css +118 -19
  131. package/dist/collection/components/button/button.md.css +69 -3
  132. package/dist/collection/components/button/test/a11y/button.e2e.js +61 -0
  133. package/dist/collection/components/buttons/buttons.ios.css +102 -3
  134. package/dist/collection/components/buttons/buttons.md.css +101 -2
  135. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +74 -0
  136. package/dist/collection/components/card/card.ios.css +67 -1
  137. package/dist/collection/components/card/card.md.css +67 -1
  138. package/dist/collection/components/card/test/a11y/card.e2e.js +31 -0
  139. package/dist/collection/components/card-content/card-content.ios.css +71 -5
  140. package/dist/collection/components/card-content/card-content.md.css +71 -5
  141. package/dist/collection/components/card-header/card-header.ios.css +66 -0
  142. package/dist/collection/components/card-header/card-header.md.css +66 -0
  143. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +67 -1
  144. package/dist/collection/components/card-subtitle/card-subtitle.md.css +67 -1
  145. package/dist/collection/components/card-title/card-title.ios.css +67 -1
  146. package/dist/collection/components/card-title/card-title.md.css +67 -1
  147. package/dist/collection/components/checkbox/checkbox.ios.css +101 -2
  148. package/dist/collection/components/checkbox/checkbox.md.css +101 -2
  149. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +18 -0
  150. package/dist/collection/components/chip/chip.ios.css +190 -0
  151. package/dist/collection/components/chip/chip.js +4 -2
  152. package/dist/collection/components/chip/{chip.css → chip.md.css} +43 -7
  153. package/dist/collection/components/chip/test/a11y/chip.e2e.js +58 -0
  154. package/dist/collection/components/col/col.css +66 -0
  155. package/dist/collection/components/content/content.css +33 -0
  156. package/dist/collection/components/datetime/datetime.ios.css +198 -7
  157. package/dist/collection/components/datetime/datetime.js +7 -13
  158. package/dist/collection/components/datetime/datetime.md.css +97 -5
  159. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +28 -0
  160. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +0 -14
  161. package/dist/collection/components/datetime/utils/data.js +7 -33
  162. package/dist/collection/components/datetime/utils/format.js +10 -27
  163. package/dist/collection/components/datetime/utils/helpers.js +5 -37
  164. package/dist/collection/components/datetime-button/datetime-button.css +36 -2
  165. package/dist/collection/components/datetime-button/datetime-button.js +4 -4
  166. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +38 -0
  167. package/dist/collection/components/fab/fab.css +66 -0
  168. package/dist/collection/components/fab-button/fab-button.ios.css +66 -0
  169. package/dist/collection/components/fab-button/fab-button.md.css +66 -0
  170. package/dist/collection/components/fab-list/fab-list.css +66 -0
  171. package/dist/collection/components/footer/footer.ios.css +66 -0
  172. package/dist/collection/components/footer/footer.md.css +66 -0
  173. package/dist/collection/components/grid/grid.css +66 -0
  174. package/dist/collection/components/header/header.ios.css +71 -2
  175. package/dist/collection/components/header/header.md.css +66 -0
  176. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +66 -0
  177. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +66 -0
  178. package/dist/collection/components/input/input.ios.css +100 -1
  179. package/dist/collection/components/input/input.md.css +199 -1
  180. package/dist/collection/components/input/test/a11y/input.e2e.js +15 -1
  181. package/dist/collection/components/item/item.ios.css +70 -4
  182. package/dist/collection/components/item/item.md.css +138 -6
  183. package/dist/collection/components/item/test/a11y/item.e2e.js +116 -1
  184. package/dist/collection/components/item-divider/item-divider.ios.css +101 -9
  185. package/dist/collection/components/item-divider/item-divider.md.css +103 -11
  186. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +44 -0
  187. package/dist/collection/components/item-group/item-group.ios.css +68 -1
  188. package/dist/collection/components/item-group/item-group.md.css +68 -1
  189. package/dist/collection/components/item-option/item-option.ios.css +67 -1
  190. package/dist/collection/components/item-option/item-option.md.css +67 -1
  191. package/dist/collection/components/item-options/item-options.ios.css +99 -1
  192. package/dist/collection/components/item-options/item-options.md.css +99 -1
  193. package/dist/collection/components/item-sliding/item-sliding.css +33 -0
  194. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +34 -0
  195. package/dist/collection/components/label/label.ios.css +105 -6
  196. package/dist/collection/components/label/label.md.css +104 -5
  197. package/dist/collection/components/label/test/a11y/label.e2e.js +66 -0
  198. package/dist/collection/components/list/list.ios.css +99 -0
  199. package/dist/collection/components/list/list.md.css +99 -0
  200. package/dist/collection/components/list-header/list-header.ios.css +100 -1
  201. package/dist/collection/components/list-header/list-header.md.css +100 -1
  202. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +24 -0
  203. package/dist/collection/components/loading/loading.ios.css +67 -1
  204. package/dist/collection/components/loading/loading.md.css +67 -1
  205. package/dist/collection/components/loading/test/a11y/loading.e2e.js +19 -0
  206. package/dist/collection/components/menu/menu.ios.css +66 -0
  207. package/dist/collection/components/menu/menu.md.css +66 -0
  208. package/dist/collection/components/menu-button/menu-button.ios.css +70 -2
  209. package/dist/collection/components/menu-button/menu-button.md.css +71 -3
  210. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +20 -1
  211. package/dist/collection/components/modal/modal.ios.css +66 -0
  212. package/dist/collection/components/modal/modal.md.css +66 -0
  213. package/dist/collection/components/nav/nav.css +33 -0
  214. package/dist/collection/components/nav/nav.js +0 -1
  215. package/dist/collection/components/note/note.ios.css +67 -0
  216. package/dist/collection/components/note/note.md.css +67 -1
  217. package/dist/collection/components/note/test/a11y/note.e2e.js +52 -0
  218. package/dist/collection/components/picker/picker.ios.css +66 -0
  219. package/dist/collection/components/picker/picker.md.css +66 -0
  220. package/dist/collection/components/picker-column/picker-column.ios.css +66 -0
  221. package/dist/collection/components/picker-column/picker-column.md.css +66 -0
  222. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -0
  223. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +66 -0
  224. package/dist/collection/components/picker-internal/picker-internal.ios.css +66 -0
  225. package/dist/collection/components/picker-internal/picker-internal.md.css +66 -0
  226. package/dist/collection/components/popover/popover.ios.css +66 -0
  227. package/dist/collection/components/popover/popover.md.css +66 -0
  228. package/dist/collection/components/progress-bar/progress-bar.ios.css +33 -0
  229. package/dist/collection/components/progress-bar/progress-bar.md.css +33 -0
  230. package/dist/collection/components/radio/radio.ios.css +104 -5
  231. package/dist/collection/components/radio/radio.md.css +104 -5
  232. package/dist/collection/components/radio/test/a11y/radio.e2e.js +21 -0
  233. package/dist/collection/components/range/range.ios.css +82 -8
  234. package/dist/collection/components/range/range.md.css +99 -11
  235. package/dist/collection/components/range/test/a11y/range.e2e.js +22 -0
  236. package/dist/collection/components/refresher/refresher.ios.css +66 -0
  237. package/dist/collection/components/refresher/refresher.md.css +66 -0
  238. package/dist/collection/components/reorder/reorder.ios.css +75 -2
  239. package/dist/collection/components/reorder/reorder.md.css +75 -2
  240. package/dist/collection/components/reorder-group/reorder-group.css +33 -0
  241. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +33 -0
  242. package/dist/collection/components/ripple-effect/ripple-effect.css +33 -0
  243. package/dist/collection/components/router/router.js +0 -2
  244. package/dist/collection/components/router/utils/path.js +0 -1
  245. package/dist/collection/components/router-link/router-link.css +33 -0
  246. package/dist/collection/components/router-outlet/router-outlet.css +33 -0
  247. package/dist/collection/components/row/row.css +66 -0
  248. package/dist/collection/components/searchbar/searchbar.ios.css +95 -16
  249. package/dist/collection/components/searchbar/searchbar.js +7 -1
  250. package/dist/collection/components/searchbar/searchbar.md.css +77 -10
  251. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +37 -0
  252. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +18 -0
  253. package/dist/collection/components/segment/segment.ios.css +99 -0
  254. package/dist/collection/components/segment/segment.md.css +99 -0
  255. package/dist/collection/components/segment-button/segment-button.ios.css +66 -0
  256. package/dist/collection/components/segment-button/segment-button.md.css +66 -0
  257. package/dist/collection/components/select/select.ios.css +102 -3
  258. package/dist/collection/components/select/select.md.css +167 -2
  259. package/dist/collection/components/select/test/a11y/select.e2e.js +22 -0
  260. package/dist/collection/components/select-popover/select-popover.ios.css +101 -1
  261. package/dist/collection/components/select-popover/select-popover.md.css +99 -0
  262. package/dist/collection/components/skeleton-text/skeleton-text.css +33 -0
  263. package/dist/collection/components/spinner/spinner.css +33 -0
  264. package/dist/collection/components/split-pane/split-pane.ios.css +99 -0
  265. package/dist/collection/components/split-pane/split-pane.md.css +99 -0
  266. package/dist/collection/components/tab-bar/tab-bar.ios.css +99 -0
  267. package/dist/collection/components/tab-bar/tab-bar.md.css +99 -0
  268. package/dist/collection/components/tab-button/tab-button.ios.css +66 -0
  269. package/dist/collection/components/tab-button/tab-button.md.css +66 -0
  270. package/dist/collection/components/tabs/tabs.css +33 -0
  271. package/dist/collection/components/text/text.css +33 -0
  272. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +15 -1
  273. package/dist/collection/components/textarea/textarea.ios.css +133 -1
  274. package/dist/collection/components/textarea/textarea.md.css +199 -1
  275. package/dist/collection/components/thumbnail/thumbnail.css +33 -0
  276. package/dist/collection/components/title/test/a11y/title.e2e.js +61 -0
  277. package/dist/collection/components/title/title.ios.css +44 -10
  278. package/dist/collection/components/title/title.md.css +35 -2
  279. package/dist/collection/components/toast/animations/ios.enter.js +3 -40
  280. package/dist/collection/components/toast/animations/ios.leave.js +4 -8
  281. package/dist/collection/components/toast/animations/md.enter.js +3 -41
  282. package/dist/collection/components/toast/test/a11y/toast.e2e.js +98 -1
  283. package/dist/collection/components/toast/toast.ios.css +74 -3
  284. package/dist/collection/components/toast/toast.js +6 -61
  285. package/dist/collection/components/toast/toast.md.css +74 -4
  286. package/dist/collection/components/toggle/toggle.ios.css +99 -0
  287. package/dist/collection/components/toggle/toggle.md.css +99 -0
  288. package/dist/collection/components/toolbar/toolbar.ios.css +66 -14
  289. package/dist/collection/components/toolbar/toolbar.md.css +66 -0
  290. package/dist/collection/css/test/a11y/typography.e2e.js +32 -0
  291. package/dist/collection/utils/native/haptic.js +0 -1
  292. package/dist/collection/utils/overlays.js +0 -1
  293. package/dist/collection/utils/transition/ios.transition.js +4 -5
  294. package/dist/docs.json +10 -77
  295. package/dist/esm/{button-active-d2346892.js → button-active-513e9fff.js} +1 -1
  296. package/dist/esm/{data-44d9e816.js → data-009dbf15.js} +22 -96
  297. package/dist/esm/{haptic-1243b917.js → haptic-6447af60.js} +0 -1
  298. package/dist/esm/{index-dac72b4c.js → index-39bc1180.js} +2 -2
  299. package/dist/esm/index.js +4 -4
  300. package/dist/esm/ion-action-sheet.entry.js +5 -5
  301. package/dist/esm/ion-alert.entry.js +3 -3
  302. package/dist/esm/ion-app_8.entry.js +7 -7
  303. package/dist/esm/ion-avatar_3.entry.js +2 -2
  304. package/dist/esm/ion-back-button.entry.js +2 -2
  305. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  306. package/dist/esm/ion-button_2.entry.js +2 -2
  307. package/dist/esm/ion-card_5.entry.js +8 -8
  308. package/dist/esm/ion-checkbox.entry.js +2 -2
  309. package/dist/esm/ion-chip.entry.js +7 -2
  310. package/dist/esm/ion-datetime-button.entry.js +6 -6
  311. package/dist/esm/ion-datetime_3.entry.js +8 -8
  312. package/dist/esm/ion-input.entry.js +2 -2
  313. package/dist/esm/ion-item-option_3.entry.js +4 -4
  314. package/dist/esm/ion-item_8.entry.js +10 -10
  315. package/dist/esm/ion-loading.entry.js +3 -3
  316. package/dist/esm/ion-menu_3.entry.js +3 -3
  317. package/dist/esm/ion-modal.entry.js +2 -2
  318. package/dist/esm/ion-nav_2.entry.js +1 -2
  319. package/dist/esm/ion-picker-column-internal.entry.js +1 -1
  320. package/dist/esm/ion-popover.entry.js +2 -2
  321. package/dist/esm/ion-radio_2.entry.js +2 -2
  322. package/dist/esm/ion-range.entry.js +2 -2
  323. package/dist/esm/ion-refresher_2.entry.js +1 -1
  324. package/dist/esm/ion-reorder_2.entry.js +3 -3
  325. package/dist/esm/ion-route_4.entry.js +0 -3
  326. package/dist/esm/ion-searchbar.entry.js +9 -3
  327. package/dist/esm/ion-select_3.entry.js +3 -3
  328. package/dist/esm/ion-textarea.entry.js +2 -2
  329. package/dist/esm/ion-toast.entry.js +15 -119
  330. package/dist/esm/ion-toggle.entry.js +1 -1
  331. package/dist/esm/ionic.js +1 -1
  332. package/dist/esm/{ios.transition-991c1a56.js → ios.transition-72ffa6ed.js} +5 -6
  333. package/dist/esm/loader.js +1 -1
  334. package/dist/esm/{md.transition-fb443521.js → md.transition-e6a907d4.js} +1 -1
  335. package/dist/esm/{overlays-e064e499.js → overlays-8fc6656c.js} +0 -1
  336. package/dist/esm-es5/{button-active-d2346892.js → button-active-513e9fff.js} +1 -1
  337. package/dist/esm-es5/data-009dbf15.js +4 -0
  338. package/dist/esm-es5/{index-dac72b4c.js → index-39bc1180.js} +1 -1
  339. package/dist/esm-es5/index.js +1 -1
  340. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  341. package/dist/esm-es5/ion-alert.entry.js +1 -1
  342. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  343. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  344. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  345. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  346. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  347. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  348. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  349. package/dist/esm-es5/ion-chip.entry.js +1 -1
  350. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  351. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  352. package/dist/esm-es5/ion-input.entry.js +1 -1
  353. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  354. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  355. package/dist/esm-es5/ion-loading.entry.js +1 -1
  356. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  357. package/dist/esm-es5/ion-modal.entry.js +1 -1
  358. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  359. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  360. package/dist/esm-es5/ion-popover.entry.js +1 -1
  361. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  362. package/dist/esm-es5/ion-range.entry.js +1 -1
  363. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  364. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  365. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  366. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  367. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  368. package/dist/esm-es5/ion-toast.entry.js +1 -1
  369. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  370. package/dist/esm-es5/ionic.js +1 -1
  371. package/dist/esm-es5/ios.transition-72ffa6ed.js +4 -0
  372. package/dist/esm-es5/loader.js +1 -1
  373. package/dist/esm-es5/{md.transition-fb443521.js → md.transition-e6a907d4.js} +1 -1
  374. package/dist/html.html-data.json +1 -11
  375. package/dist/ionic/index.esm.js +1 -1
  376. package/dist/ionic/ionic.esm.js +1 -1
  377. package/dist/ionic/{p-315dd3f8.system.js → p-00aed720.system.js} +1 -1
  378. package/dist/ionic/p-0610d658.entry.js +4 -0
  379. package/dist/ionic/p-06c29a8b.entry.js +4 -0
  380. package/dist/ionic/{p-3b1a8994.system.entry.js → p-08c5b9f4.system.entry.js} +1 -1
  381. package/dist/ionic/{p-b7dad585.entry.js → p-09babc88.entry.js} +1 -1
  382. package/dist/ionic/p-0c535e5a.system.entry.js +4 -0
  383. package/dist/ionic/p-160d0dfd.system.entry.js +4 -0
  384. package/dist/ionic/p-1c1c18b3.system.entry.js +4 -0
  385. package/dist/ionic/p-234a7edb.js +4 -0
  386. package/dist/ionic/{p-14dec15f.entry.js → p-270aa06b.entry.js} +1 -1
  387. package/dist/ionic/{p-b61cf76c.entry.js → p-2a393411.entry.js} +1 -1
  388. package/dist/ionic/p-2b8cd28f.entry.js +4 -0
  389. package/dist/ionic/{p-2dac36bf.entry.js → p-2c35490e.entry.js} +1 -1
  390. package/dist/ionic/p-2e93e3db.entry.js +4 -0
  391. package/dist/ionic/{p-be337735.system.entry.js → p-2f1ba678.system.entry.js} +1 -1
  392. package/dist/ionic/{p-62f05fd2.entry.js → p-3730f493.entry.js} +1 -1
  393. package/dist/ionic/{p-2d74ee51.entry.js → p-380ef450.entry.js} +1 -1
  394. package/dist/ionic/{p-78f204ee.entry.js → p-3b104ae6.entry.js} +1 -1
  395. package/dist/ionic/p-3e1b4045.system.entry.js +4 -0
  396. package/dist/ionic/p-4342501d.entry.js +4 -0
  397. package/dist/ionic/{p-35d1c3bb.system.js → p-442f2497.system.js} +1 -1
  398. package/dist/ionic/p-44ef7224.system.js +4 -0
  399. package/dist/ionic/p-450fe187.system.entry.js +4 -0
  400. package/dist/ionic/p-47c15b22.system.entry.js +4 -0
  401. package/dist/ionic/{p-f767d6b4.system.entry.js → p-4a1ac160.system.entry.js} +1 -1
  402. package/dist/ionic/p-4d0eb845.system.entry.js +4 -0
  403. package/dist/ionic/p-4e4bedbd.entry.js +4 -0
  404. package/dist/ionic/p-50d2e748.js +4 -0
  405. package/dist/ionic/p-5a5ff46b.system.entry.js +4 -0
  406. package/dist/ionic/p-5c790762.system.js +4 -0
  407. package/dist/ionic/p-622d7b0e.system.entry.js +4 -0
  408. package/dist/ionic/{p-f7f6af24.system.entry.js → p-63a73b69.system.entry.js} +1 -1
  409. package/dist/ionic/p-6edbc09b.system.js +1 -1
  410. package/dist/ionic/p-6f940aec.system.entry.js +4 -0
  411. package/dist/ionic/p-7302a3e1.entry.js +4 -0
  412. package/dist/ionic/p-74824d64.entry.js +4 -0
  413. package/dist/ionic/{p-a27a6256.entry.js → p-784863dd.entry.js} +1 -1
  414. package/dist/ionic/p-7cfd253c.js +4 -0
  415. package/dist/ionic/{p-06116432.system.entry.js → p-7ea21b21.system.entry.js} +1 -1
  416. package/dist/ionic/p-857591f7.system.entry.js +4 -0
  417. package/dist/ionic/p-86859d57.system.entry.js +4 -0
  418. package/dist/ionic/p-8d5c7b4e.system.entry.js +4 -0
  419. package/dist/ionic/p-8e06ca5e.entry.js +4 -0
  420. package/dist/ionic/{p-990aaa2f.entry.js → p-90d892fd.entry.js} +1 -1
  421. package/dist/ionic/p-9493d5e8.system.entry.js +4 -0
  422. package/dist/ionic/p-969e9fce.system.entry.js +4 -0
  423. package/dist/ionic/{p-2b70878e.js → p-972763df.js} +1 -1
  424. package/dist/ionic/p-972817e1.js +4 -0
  425. package/dist/ionic/p-9ad5893a.entry.js +4 -0
  426. package/dist/ionic/{p-13ce151b.entry.js → p-a0a87b9c.entry.js} +1 -1
  427. package/dist/ionic/p-af14deab.system.entry.js +4 -0
  428. package/dist/ionic/p-b2215bd4.entry.js +4 -0
  429. package/dist/ionic/p-b8846173.entry.js +4 -0
  430. package/dist/ionic/p-bb8365af.system.entry.js +4 -0
  431. package/dist/ionic/p-be22efa8.entry.js +4 -0
  432. package/dist/ionic/p-c3d501f5.system.entry.js +4 -0
  433. package/dist/ionic/{p-2df840d9.system.entry.js → p-c5729044.system.entry.js} +1 -1
  434. package/dist/ionic/{p-cc3aa152.entry.js → p-c68b68b1.entry.js} +1 -1
  435. package/dist/ionic/{p-c8251e8c.entry.js → p-c7fca267.entry.js} +1 -1
  436. package/dist/ionic/p-c872a0a0.entry.js +4 -0
  437. package/dist/ionic/{p-4cf29e23.system.js → p-ca9b6832.system.js} +1 -1
  438. package/dist/ionic/p-daf85ebe.entry.js +4 -0
  439. package/dist/ionic/p-db3f69d6.entry.js +4 -0
  440. package/dist/ionic/p-df16bb3f.system.entry.js +4 -0
  441. package/dist/ionic/{p-ec3fa33b.system.entry.js → p-e64ce6ad.system.entry.js} +1 -1
  442. package/dist/ionic/p-e8fa3573.system.entry.js +4 -0
  443. package/dist/ionic/p-edbec144.entry.js +4 -0
  444. package/dist/ionic/{p-9eb5455c.system.js → p-f39999bb.system.js} +1 -1
  445. package/dist/ionic/{p-86e73df8.system.entry.js → p-f474437d.system.entry.js} +1 -1
  446. package/dist/ionic/p-f5ebccec.entry.js +4 -0
  447. package/dist/ionic/p-f8eaac8b.system.entry.js +4 -0
  448. package/dist/ionic/p-fa1a57ae.system.entry.js +4 -0
  449. package/dist/types/components/datetime/datetime-interface.d.ts +0 -1
  450. package/dist/types/components/datetime/datetime.d.ts +2 -2
  451. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  452. package/dist/types/components/datetime/utils/format.d.ts +3 -3
  453. package/dist/types/components/datetime/utils/helpers.d.ts +1 -15
  454. package/dist/types/components/toast/animations/ios.enter.d.ts +1 -2
  455. package/dist/types/components/toast/animations/md.enter.d.ts +1 -2
  456. package/dist/types/components/toast/toast-interface.d.ts +0 -6
  457. package/dist/types/components/toast/toast.d.ts +1 -9
  458. package/dist/types/components.d.ts +8 -16
  459. package/hydrate/index.js +121 -296
  460. package/package.json +6 -5
  461. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +0 -45
  462. package/dist/esm-es5/data-44d9e816.js +0 -4
  463. package/dist/esm-es5/ios.transition-991c1a56.js +0 -4
  464. package/dist/ionic/p-09e15a2a.system.entry.js +0 -4
  465. package/dist/ionic/p-0bd3cc92.entry.js +0 -4
  466. package/dist/ionic/p-161a6465.system.entry.js +0 -4
  467. package/dist/ionic/p-17240d90.js +0 -4
  468. package/dist/ionic/p-17e6836b.system.entry.js +0 -4
  469. package/dist/ionic/p-1bce805b.entry.js +0 -4
  470. package/dist/ionic/p-1c406ee0.system.entry.js +0 -4
  471. package/dist/ionic/p-1f448082.system.entry.js +0 -4
  472. package/dist/ionic/p-20e5eb3e.entry.js +0 -4
  473. package/dist/ionic/p-2ffbf4bc.system.entry.js +0 -4
  474. package/dist/ionic/p-30bd5385.system.entry.js +0 -4
  475. package/dist/ionic/p-3cbcb899.entry.js +0 -4
  476. package/dist/ionic/p-419b8565.entry.js +0 -4
  477. package/dist/ionic/p-420da334.system.entry.js +0 -4
  478. package/dist/ionic/p-48393630.system.js +0 -4
  479. package/dist/ionic/p-50b11c2b.system.entry.js +0 -4
  480. package/dist/ionic/p-568fec78.entry.js +0 -4
  481. package/dist/ionic/p-5c8c9748.system.entry.js +0 -4
  482. package/dist/ionic/p-5d522814.system.entry.js +0 -4
  483. package/dist/ionic/p-674e6f0c.js +0 -4
  484. package/dist/ionic/p-6ba07931.system.entry.js +0 -4
  485. package/dist/ionic/p-6ca0e4b2.system.entry.js +0 -4
  486. package/dist/ionic/p-716fbba9.js +0 -4
  487. package/dist/ionic/p-7779d376.entry.js +0 -4
  488. package/dist/ionic/p-7dc0ee11.system.entry.js +0 -4
  489. package/dist/ionic/p-7e9e16bf.system.entry.js +0 -4
  490. package/dist/ionic/p-82f58c25.system.entry.js +0 -4
  491. package/dist/ionic/p-88ad9cb6.entry.js +0 -4
  492. package/dist/ionic/p-8a26eaba.entry.js +0 -4
  493. package/dist/ionic/p-8b79baf0.entry.js +0 -4
  494. package/dist/ionic/p-974cbc3a.entry.js +0 -4
  495. package/dist/ionic/p-b0dd4f33.entry.js +0 -4
  496. package/dist/ionic/p-b49fe110.entry.js +0 -4
  497. package/dist/ionic/p-b8c3f071.system.js +0 -4
  498. package/dist/ionic/p-be321bb6.system.entry.js +0 -4
  499. package/dist/ionic/p-c44645f2.entry.js +0 -4
  500. package/dist/ionic/p-c4d08d6d.system.entry.js +0 -4
  501. package/dist/ionic/p-cd675d89.system.entry.js +0 -4
  502. package/dist/ionic/p-ce24ddd7.system.entry.js +0 -4
  503. package/dist/ionic/p-d6dcbd7c.js +0 -4
  504. package/dist/ionic/p-de0f1af2.system.entry.js +0 -4
  505. package/dist/ionic/p-e89abe38.system.entry.js +0 -4
  506. package/dist/ionic/p-ea88031d.entry.js +0 -4
  507. package/dist/ionic/p-ebaeeee8.entry.js +0 -4
  508. package/dist/ionic/p-f0dcf99b.entry.js +0 -4
  509. package/dist/ionic/p-f180d2b6.entry.js +0 -4
  510. /package/dist/esm-es5/{haptic-1243b917.js → haptic-6447af60.js} +0 -0
  511. /package/dist/esm-es5/{overlays-e064e499.js → overlays-8fc6656c.js} +0 -0
  512. /package/dist/ionic/{p-b4b4bb29.system.js → p-14d7b7e2.system.js} +0 -0
  513. /package/dist/ionic/{p-40bd36f3.system.js → p-7a3caa4e.system.js} +0 -0
  514. /package/dist/ionic/{p-b923f3d7.js → p-bb6f38ed.js} +0 -0
  515. /package/dist/ionic/{p-3faf56ab.js → p-f9015336.js} +0 -0
@@ -11,22 +11,18 @@ export const iosLeaveAnimation = (baseEl, position) => {
11
11
  const wrapperAnimation = createAnimation();
12
12
  const root = getElementRoot(baseEl);
13
13
  const wrapperEl = root.querySelector('.toast-wrapper');
14
+ const bottom = `calc(-10px - var(--ion-safe-area-bottom, 0px))`;
15
+ const top = `calc(10px + var(--ion-safe-area-top, 0px))`;
14
16
  wrapperAnimation.addElement(wrapperEl);
15
- /**
16
- * For top/bottom positions, we use to() instead of fromTo() so that if
17
- * the positionAnchor prop was used, we don't need to recalculate the
18
- * toast and/or anchor's position and duplicate work from the enter
19
- * animation.
20
- */
21
17
  switch (position) {
22
18
  case 'top':
23
- wrapperAnimation.to('transform', 'translateY(-100%)');
19
+ wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
24
20
  break;
25
21
  case 'middle':
26
22
  wrapperAnimation.fromTo('opacity', 0.99, 0);
27
23
  break;
28
24
  default:
29
- wrapperAnimation.to('transform', 'translateY(100%)');
25
+ wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
30
26
  break;
31
27
  }
32
28
  return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
@@ -2,55 +2,17 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { createAnimation } from "../../../utils/animation/animation";
5
- import { win } from "../../../utils/browser/index";
6
5
  import { getElementRoot } from "../../../utils/helpers";
7
6
  /**
8
7
  * MD Toast Enter Animation
9
8
  */
10
- export const mdEnterAnimation = (baseEl, opts) => {
9
+ export const mdEnterAnimation = (baseEl, position) => {
11
10
  const baseAnimation = createAnimation();
12
11
  const wrapperAnimation = createAnimation();
13
- const { position, positionAnchor } = opts;
14
12
  const root = getElementRoot(baseEl);
15
13
  const wrapperEl = root.querySelector('.toast-wrapper');
16
- /**
17
- * Start with a predefined offset from the edge the toast will be
18
- * positioned relative to. By default, this will be the top edge
19
- * of the screen for position="top", or the bottom edge for
20
- * position="bottom".
21
- */
22
- let offset = 8;
23
- let top, bottom;
24
- /**
25
- * If positionAnchor is defined, add in the distance from the target
26
- * screen edge to the target anchor edge. For position="top", the
27
- * bottom anchor edge is targeted. For position="bottom", the top
28
- * anchor edge is targeted.
29
- */
30
- if (positionAnchor && win) {
31
- const box = positionAnchor.getBoundingClientRect();
32
- if (position === 'top') {
33
- offset += box.bottom;
34
- }
35
- else if (position === 'bottom') {
36
- /**
37
- * Just box.top is the distance from the top edge of the screen
38
- * to the top edge of the anchor. We want to calculate from the
39
- * bottom edge of the screen instead.
40
- */
41
- offset += win.innerHeight - box.top;
42
- }
43
- /**
44
- * We don't include safe area here because that should already be
45
- * accounted for when checking the position of the anchor.
46
- */
47
- top = `${offset}px`;
48
- bottom = `${offset}px`;
49
- }
50
- else {
51
- top = `calc(${offset}px + var(--ion-safe-area-top, 0px))`;
52
- bottom = `calc(${offset}px + var(--ion-safe-area-bottom, 0px))`;
53
- }
14
+ const bottom = `calc(8px + var(--ion-safe-area-bottom, 0px))`;
15
+ const top = `calc(8px + var(--ion-safe-area-top, 0px))`;
54
16
  wrapperAnimation.addElement(wrapperEl);
55
17
  switch (position) {
56
18
  case 'top':
@@ -7,7 +7,7 @@ import { configs, test } from "../../../../utils/test/playwright/index";
7
7
  /**
8
8
  * This test does not check LTR vs RTL layouts
9
9
  */
10
- configs({ directions: ['ltr'] }).forEach(({ title, config }) => {
10
+ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
11
11
  test.describe(title('toast: a11y'), () => {
12
12
  test.beforeEach(async ({ page }) => {
13
13
  await page.goto(`/src/components/toast/test/a11y`, config);
@@ -45,4 +45,101 @@ configs({ directions: ['ltr'] }).forEach(({ title, config }) => {
45
45
  await expect(toastButton).toHaveAttribute('aria-label', 'close button');
46
46
  });
47
47
  });
48
+ test.describe(title('toast: font scaling'), () => {
49
+ test('should scale header text on larger font sizes', async ({ page }) => {
50
+ await page.setContent(`
51
+ <style>
52
+ html {
53
+ font-size: 310%;
54
+ }
55
+ </style>
56
+
57
+ <ion-toast is-open="true" header="Testing" message="Hello world"></ion-toast>
58
+ `, config);
59
+ const toast = page.locator('ion-toast');
60
+ await expect(toast).toBeVisible();
61
+ const toastWrapper = toast.locator('.toast-wrapper');
62
+ await expect(toastWrapper).toHaveScreenshot(screenshot('toast-header-scale'));
63
+ });
64
+ test('should scale message text on larger font sizes', async ({ page }) => {
65
+ await page.setContent(`
66
+ <style>
67
+ html {
68
+ font-size: 310%;
69
+ }
70
+ </style>
71
+
72
+ <ion-toast is-open="true" message="Hello world"></ion-toast>
73
+ `, config);
74
+ const toast = page.locator('ion-toast');
75
+ await expect(toast).toBeVisible();
76
+ const toastWrapper = toast.locator('.toast-wrapper');
77
+ await expect(toastWrapper).toHaveScreenshot(screenshot('toast-message-scale'));
78
+ });
79
+ test('should scale content icon on larger font sizes', async ({ page }) => {
80
+ await page.setContent(`
81
+ <style>
82
+ html {
83
+ font-size: 310%;
84
+ }
85
+ </style>
86
+
87
+ <ion-toast is-open="true" message="Hello world" icon="alert"></ion-toast>
88
+ `, config);
89
+ const toast = page.locator('ion-toast');
90
+ await expect(toast).toBeVisible();
91
+ const toastWrapper = toast.locator('.toast-wrapper');
92
+ await expect(toastWrapper).toHaveScreenshot(screenshot('toast-icon-scale'));
93
+ });
94
+ test('should scale button text on larger font sizes', async ({ page }) => {
95
+ await page.setContent(`
96
+ <style>
97
+ html {
98
+ font-size: 310%;
99
+ }
100
+ </style>
101
+
102
+ <ion-toast is-open="true" message="Hello world"></ion-toast>
103
+ `, config);
104
+ const toast = page.locator('ion-toast');
105
+ toast.evaluate((el) => {
106
+ el.buttons = [
107
+ {
108
+ text: 'Cancel',
109
+ },
110
+ ];
111
+ });
112
+ await expect(toast).toBeVisible();
113
+ const toastWrapper = toast.locator('.toast-wrapper');
114
+ await expect(toastWrapper).toHaveScreenshot(screenshot('toast-buttons-scale'));
115
+ });
116
+ test('should scale buttons and icons on larger font sizes', async ({ page }) => {
117
+ await page.setContent(`
118
+ <style>
119
+ html {
120
+ font-size: 310%;
121
+ }
122
+ </style>
123
+
124
+ <ion-toast is-open="true" message="Hello world"></ion-toast>
125
+ `, config);
126
+ const toast = page.locator('ion-toast');
127
+ toast.evaluate((el) => {
128
+ el.buttons = [
129
+ {
130
+ text: 'Cancel',
131
+ icon: 'close',
132
+ },
133
+ ];
134
+ });
135
+ await expect(toast).toBeVisible();
136
+ /**
137
+ * Linux incorrectly clips the screenshot when capturing the toast container
138
+ * with the inset styling.
139
+ *
140
+ * We capture the entire toast container (entire page) to avoid this issue.
141
+ */
142
+ await expect(toast).toHaveScreenshot(screenshot('toast-buttons-icon-scale'));
143
+ });
144
+ });
48
145
  });
@@ -1,3 +1,36 @@
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
+ */
1
34
  :host {
2
35
  /**
3
36
  * @prop --background: Background of the toast
@@ -160,6 +193,10 @@
160
193
  margin-inline-start: 16px;
161
194
  }
162
195
 
196
+ .toast-content {
197
+ min-width: 0;
198
+ }
199
+
163
200
  .toast-message {
164
201
  flex: 1;
165
202
  white-space: var(--white-space);
@@ -196,15 +233,49 @@
196
233
  cursor: pointer;
197
234
  }
198
235
  }
236
+ /**
237
+ * Convert a font size to a dynamic font size.
238
+ * Fonts that participate in Dynamic Type should use
239
+ * dynamic font sizes.
240
+ * @param size - The initial font size including the unit (i.e. px or pt)
241
+ * @param unit (optional) - The unit to convert to. Use this if you want to
242
+ * convert to a unit other than $baselineUnit.
243
+ */
244
+ /**
245
+ * Convert a font size to a dynamic font size but impose
246
+ * a maximum font size.
247
+ * @param size - The initial font size including the unit (i.e. px or pt)
248
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
249
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
250
+ * convert to a unit other than $baselineUnit.
251
+ */
252
+ /**
253
+ * Convert a font size to a dynamic font size but impose
254
+ * a minimum font size.
255
+ * @param size - The initial font size including the unit (i.e. px or pt)
256
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
257
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
258
+ * convert to a unit other than $baselineUnit.
259
+ */
260
+ /**
261
+ * Convert a font size to a dynamic font size but impose
262
+ * maximum and minimum font sizes.
263
+ * @param size - The initial font size including the unit (i.e. px or pt)
264
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
265
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
266
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
267
+ * convert to a unit other than $baselineUnit.
268
+ */
199
269
  :host {
200
270
  --background: var(--ion-color-step-50, #f2f2f2);
201
271
  --border-radius: 14px;
202
272
  --button-color: var(--ion-color-primary, #3880ff);
203
273
  --color: var(--ion-color-step-850, #262626);
204
274
  --max-width: 700px;
275
+ --max-height: 478px;
205
276
  --start: 10px;
206
277
  --end: 10px;
207
- font-size: 14px;
278
+ font-size: clamp(14px, 0.875rem, 43.4px);
208
279
  }
209
280
 
210
281
  .toast-wrapper {
@@ -263,12 +334,12 @@
263
334
  padding-inline-end: 15px;
264
335
  padding-top: 10px;
265
336
  padding-bottom: 10px;
266
- height: 44px;
337
+ min-height: 44px;
267
338
  transition: background-color, opacity 100ms linear;
268
339
  border: 0;
269
340
  background-color: transparent;
270
341
  font-family: var(--ion-font-family);
271
- font-size: 17px;
342
+ font-size: clamp(17px, 1.0625rem, 21.998px);
272
343
  font-weight: 500;
273
344
  overflow: hidden;
274
345
  }
@@ -54,7 +54,6 @@ export class Toast {
54
54
  this.message = undefined;
55
55
  this.keyboardClose = false;
56
56
  this.position = 'bottom';
57
- this.positionAnchor = undefined;
58
57
  this.buttons = undefined;
59
58
  this.translucent = false;
60
59
  this.animated = true;
@@ -102,33 +101,7 @@ export class Toast {
102
101
  async present() {
103
102
  const unlock = await this.lockController.lock();
104
103
  await this.delegateController.attachViewToDom();
105
- const { position, positionAnchor } = this;
106
- let anchor;
107
- if (position === 'middle' && positionAnchor !== undefined) {
108
- printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
109
- }
110
- else if (typeof positionAnchor === 'string') {
111
- /**
112
- * If the anchor is defined as an ID, find the element.
113
- * We do this on every present so the toast doesn't need
114
- * to account for the surrounding DOM changing since the
115
- * last time it was presented.
116
- */
117
- const foundEl = document.getElementById(positionAnchor);
118
- if (foundEl === null) {
119
- printIonWarning(`An anchor element with an ID of ${positionAnchor} was not found in the DOM.`, this.el);
120
- }
121
- else {
122
- anchor = foundEl;
123
- }
124
- }
125
- else {
126
- anchor = positionAnchor;
127
- }
128
- await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
129
- position,
130
- positionAnchor: anchor,
131
- });
104
+ await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, this.position);
132
105
  /**
133
106
  * Content is revealed to screen readers after
134
107
  * the transition to avoid jank since this
@@ -544,34 +517,12 @@ export class Toast {
544
517
  "optional": false,
545
518
  "docs": {
546
519
  "tags": [],
547
- "text": "The starting position of the toast on the screen. Can be tweaked further\nusing the `positionAnchor` property."
520
+ "text": "The position of the toast on the screen."
548
521
  },
549
522
  "attribute": "position",
550
523
  "reflect": false,
551
524
  "defaultValue": "'bottom'"
552
525
  },
553
- "positionAnchor": {
554
- "type": "string",
555
- "mutable": false,
556
- "complexType": {
557
- "original": "HTMLElement | string",
558
- "resolved": "HTMLElement | string | undefined",
559
- "references": {
560
- "HTMLElement": {
561
- "location": "global",
562
- "id": "global::HTMLElement"
563
- }
564
- }
565
- },
566
- "required": false,
567
- "optional": true,
568
- "docs": {
569
- "tags": [],
570
- "text": "The element to anchor the toast's position to. Can be set as a direct reference\nor the ID of the element. With `position=\"bottom\"`, the toast will sit above the\nchosen element. With `position=\"top\"`, the toast will sit below the chosen element.\nWith `position=\"middle\"`, the value of `positionAnchor` is ignored."
571
- },
572
- "attribute": "position-anchor",
573
- "reflect": false
574
- },
575
526
  "buttons": {
576
527
  "type": "unknown",
577
528
  "mutable": false,
@@ -861,14 +812,9 @@ export class Toast {
861
812
  "location": "global",
862
813
  "id": "global::Promise"
863
814
  },
864
- "HTMLElement": {
865
- "location": "global",
866
- "id": "global::HTMLElement"
867
- },
868
815
  "ToastPresentOptions": {
869
- "location": "import",
870
- "path": "./toast-interface",
871
- "id": "src/components/toast/toast-interface.ts::ToastPresentOptions"
816
+ "location": "global",
817
+ "id": "global::ToastPresentOptions"
872
818
  }
873
819
  },
874
820
  "return": "Promise<void>"
@@ -900,9 +846,8 @@ export class Toast {
900
846
  "id": "global::Promise"
901
847
  },
902
848
  "ToastDismissOptions": {
903
- "location": "import",
904
- "path": "./toast-interface",
905
- "id": "src/components/toast/toast-interface.ts::ToastDismissOptions"
849
+ "location": "global",
850
+ "id": "global::ToastDismissOptions"
906
851
  }
907
852
  },
908
853
  "return": "Promise<boolean>"
@@ -1,3 +1,36 @@
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
+ */
1
34
  :host {
2
35
  /**
3
36
  * @prop --background: Background of the toast
@@ -160,6 +193,10 @@
160
193
  margin-inline-start: 16px;
161
194
  }
162
195
 
196
+ .toast-content {
197
+ min-width: 0;
198
+ }
199
+
163
200
  .toast-message {
164
201
  flex: 1;
165
202
  white-space: var(--white-space);
@@ -196,6 +233,39 @@
196
233
  cursor: pointer;
197
234
  }
198
235
  }
236
+ /**
237
+ * Convert a font size to a dynamic font size.
238
+ * Fonts that participate in Dynamic Type should use
239
+ * dynamic font sizes.
240
+ * @param size - The initial font size including the unit (i.e. px or pt)
241
+ * @param unit (optional) - The unit to convert to. Use this if you want to
242
+ * convert to a unit other than $baselineUnit.
243
+ */
244
+ /**
245
+ * Convert a font size to a dynamic font size but impose
246
+ * a maximum font size.
247
+ * @param size - The initial font size including the unit (i.e. px or pt)
248
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
249
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
250
+ * convert to a unit other than $baselineUnit.
251
+ */
252
+ /**
253
+ * Convert a font size to a dynamic font size but impose
254
+ * a minimum font size.
255
+ * @param size - The initial font size including the unit (i.e. px or pt)
256
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
257
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
258
+ * convert to a unit other than $baselineUnit.
259
+ */
260
+ /**
261
+ * Convert a font size to a dynamic font size but impose
262
+ * maximum and minimum font sizes.
263
+ * @param size - The initial font size including the unit (i.e. px or pt)
264
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
265
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
266
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
267
+ * convert to a unit other than $baselineUnit.
268
+ */
199
269
  :host {
200
270
  --background: var(--ion-color-step-800, #333333);
201
271
  --border-radius: 4px;
@@ -205,7 +275,7 @@
205
275
  --max-width: 700px;
206
276
  --start: 8px;
207
277
  --end: 8px;
208
- font-size: 14px;
278
+ font-size: 0.875rem;
209
279
  }
210
280
 
211
281
  .toast-wrapper {
@@ -233,11 +303,11 @@
233
303
  .toast-header {
234
304
  margin-bottom: 2px;
235
305
  font-weight: 500;
236
- line-height: 20px;
306
+ line-height: 1.25rem;
237
307
  }
238
308
 
239
309
  .toast-message {
240
- line-height: 20px;
310
+ line-height: 1.25rem;
241
311
  }
242
312
 
243
313
  .toast-layout-baseline .toast-button-group-start {
@@ -272,7 +342,7 @@
272
342
  position: relative;
273
343
  background-color: transparent;
274
344
  font-family: var(--ion-font-family);
275
- font-size: 14px;
345
+ font-size: 0.875rem;
276
346
  font-weight: 500;
277
347
  letter-spacing: 0.84px;
278
348
  text-transform: uppercase;
@@ -1,3 +1,36 @@
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
+ */
1
34
  :host {
2
35
  /**
3
36
  * @prop --track-background: Background of the toggle track
@@ -371,6 +404,72 @@ input {
371
404
  transform: translate3d(calc(var(--handle-spacing) * 2), 0, 0);
372
405
  }
373
406
 
407
+ /**
408
+ * Convert a font size to a dynamic font size.
409
+ * Fonts that participate in Dynamic Type should use
410
+ * dynamic font sizes.
411
+ * @param size - The initial font size including the unit (i.e. px or pt)
412
+ * @param unit (optional) - The unit to convert to. Use this if you want to
413
+ * convert to a unit other than $baselineUnit.
414
+ */
415
+ /**
416
+ * Convert a font size to a dynamic font size but impose
417
+ * a maximum font size.
418
+ * @param size - The initial font size including the unit (i.e. px or pt)
419
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
420
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
421
+ * convert to a unit other than $baselineUnit.
422
+ */
423
+ /**
424
+ * Convert a font size to a dynamic font size but impose
425
+ * a minimum font size.
426
+ * @param size - The initial font size including the unit (i.e. px or pt)
427
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
428
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
429
+ * convert to a unit other than $baselineUnit.
430
+ */
431
+ /**
432
+ * Convert a font size to a dynamic font size but impose
433
+ * maximum and minimum font sizes.
434
+ * @param size - The initial font size including the unit (i.e. px or pt)
435
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
436
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
437
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
438
+ * convert to a unit other than $baselineUnit.
439
+ */
440
+ /**
441
+ * Convert a font size to a dynamic font size.
442
+ * Fonts that participate in Dynamic Type should use
443
+ * dynamic font sizes.
444
+ * @param size - The initial font size including the unit (i.e. px or pt)
445
+ * @param unit (optional) - The unit to convert to. Use this if you want to
446
+ * convert to a unit other than $baselineUnit.
447
+ */
448
+ /**
449
+ * Convert a font size to a dynamic font size but impose
450
+ * a maximum font size.
451
+ * @param size - The initial font size including the unit (i.e. px or pt)
452
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
453
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
454
+ * convert to a unit other than $baselineUnit.
455
+ */
456
+ /**
457
+ * Convert a font size to a dynamic font size but impose
458
+ * a minimum font size.
459
+ * @param size - The initial font size including the unit (i.e. px or pt)
460
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
461
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
462
+ * convert to a unit other than $baselineUnit.
463
+ */
464
+ /**
465
+ * Convert a font size to a dynamic font size but impose
466
+ * maximum and minimum font sizes.
467
+ * @param size - The initial font size including the unit (i.e. px or pt)
468
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
469
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
470
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
471
+ * convert to a unit other than $baselineUnit.
472
+ */
374
473
  :host {
375
474
  --track-background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.088);
376
475
  --track-background-checked: var(--ion-color-primary, #3880ff);