voyager-ionic-core 7.4.4 → 7.5.1

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 (574) hide show
  1. package/components/action-sheet.js +2 -2
  2. package/components/alert.js +10 -2
  3. package/components/button.js +2 -2
  4. package/components/buttons.js +2 -2
  5. package/components/checkbox.js +1 -1
  6. package/components/data.js +96 -22
  7. package/components/haptic.js +1 -0
  8. package/components/icon.js +31 -18
  9. package/components/index.js +1 -0
  10. package/components/index4.js +26 -19
  11. package/components/index7.js +1 -1
  12. package/components/ion-back-button.js +2 -2
  13. package/components/ion-badge.js +2 -2
  14. package/components/ion-breadcrumb.js +2 -2
  15. package/components/ion-card-content.js +2 -2
  16. package/components/ion-card-subtitle.js +2 -2
  17. package/components/ion-card-title.js +2 -2
  18. package/components/ion-card.js +2 -2
  19. package/components/ion-chip.js +8 -3
  20. package/components/ion-datetime-button.js +6 -6
  21. package/components/ion-datetime.js +6 -6
  22. package/components/ion-header.js +1 -1
  23. package/components/ion-input.js +2 -2
  24. package/components/ion-item-divider.js +2 -2
  25. package/components/ion-item-option.js +2 -2
  26. package/components/ion-item-options.js +2 -2
  27. package/components/ion-loading.js +2 -2
  28. package/components/ion-menu-button.js +2 -2
  29. package/components/ion-menu.js +0 -12
  30. package/components/ion-nav.js +1 -0
  31. package/components/ion-range.js +2 -2
  32. package/components/ion-reorder.js +2 -2
  33. package/components/ion-router.js +3 -0
  34. package/components/ion-searchbar.js +9 -3
  35. package/components/ion-select.js +3 -3
  36. package/components/ion-textarea.js +2 -2
  37. package/components/ion-title.js +2 -2
  38. package/components/ion-toast.js +159 -15
  39. package/components/ion-toolbar.js +1 -1
  40. package/components/ios.transition.js +212 -43
  41. package/components/item.js +2 -2
  42. package/components/label.js +2 -2
  43. package/components/list-header.js +2 -2
  44. package/components/note.js +2 -2
  45. package/components/overlays.js +1 -0
  46. package/components/radio.js +2 -2
  47. package/css/core.css +100 -0
  48. package/css/core.css.map +1 -1
  49. package/css/display.css +33 -0
  50. package/css/display.css.map +1 -1
  51. package/css/float-elements.css +33 -0
  52. package/css/float-elements.css.map +1 -1
  53. package/css/global.bundle.css +84 -6
  54. package/css/global.bundle.css.map +1 -1
  55. package/css/ionic-swiper.css +33 -0
  56. package/css/ionic-swiper.css.map +1 -1
  57. package/css/ionic.bundle.css +1 -1
  58. package/css/ionic.bundle.css.map +1 -1
  59. package/css/padding.css +33 -0
  60. package/css/padding.css.map +1 -1
  61. package/css/structure.css +33 -0
  62. package/css/structure.css.map +1 -1
  63. package/css/text-alignment.css +33 -0
  64. package/css/text-alignment.css.map +1 -1
  65. package/css/text-transformation.css +33 -0
  66. package/css/text-transformation.css.map +1 -1
  67. package/css/typography.css +51 -6
  68. package/css/typography.css.map +1 -1
  69. package/css/utils.bundle.css +165 -0
  70. package/css/utils.bundle.css.map +1 -1
  71. package/dist/cjs/{button-active-0932cee9.js → button-active-c0ff1915.js} +1 -1
  72. package/dist/cjs/{data-db832785.js → data-c8d21093.js} +96 -22
  73. package/dist/cjs/{haptic-c5f6b4d5.js → haptic-678abc9f.js} +1 -0
  74. package/dist/cjs/{index-d8d1fc0b.js → index-09471526.js} +1 -1
  75. package/dist/cjs/{index-f94cbab1.js → index-5e7529f6.js} +26 -19
  76. package/dist/cjs/{index-d3568232.js → index-eccba000.js} +2 -2
  77. package/dist/cjs/index.cjs.js +8 -6
  78. package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
  79. package/dist/cjs/ion-action-sheet.cjs.entry.js +5 -5
  80. package/dist/cjs/ion-alert.cjs.entry.js +13 -5
  81. package/dist/cjs/ion-app_8.cjs.entry.js +7 -7
  82. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  83. package/dist/cjs/ion-back-button.cjs.entry.js +3 -3
  84. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -3
  85. package/dist/cjs/ion-button_2.cjs.entry.js +33 -20
  86. package/dist/cjs/ion-card_5.cjs.entry.js +8 -8
  87. package/dist/cjs/ion-checkbox.cjs.entry.js +1 -1
  88. package/dist/cjs/ion-chip.cjs.entry.js +7 -2
  89. package/dist/cjs/ion-datetime-button.cjs.entry.js +6 -6
  90. package/dist/cjs/ion-datetime_3.cjs.entry.js +9 -9
  91. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  92. package/dist/cjs/ion-input.cjs.entry.js +3 -3
  93. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  94. package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
  95. package/dist/cjs/ion-loading.cjs.entry.js +3 -3
  96. package/dist/cjs/ion-menu_3.cjs.entry.js +8 -19
  97. package/dist/cjs/ion-modal.cjs.entry.js +2 -2
  98. package/dist/cjs/ion-nav_2.cjs.entry.js +2 -1
  99. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +1 -1
  100. package/dist/cjs/ion-popover.cjs.entry.js +2 -2
  101. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  102. package/dist/cjs/ion-range.cjs.entry.js +2 -2
  103. package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
  104. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  105. package/dist/cjs/ion-route_4.cjs.entry.js +3 -0
  106. package/dist/cjs/ion-searchbar.cjs.entry.js +10 -4
  107. package/dist/cjs/ion-select_3.cjs.entry.js +5 -5
  108. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  109. package/dist/cjs/ion-toast.cjs.entry.js +176 -34
  110. package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
  111. package/dist/cjs/ionic.cjs.js +2 -2
  112. package/dist/cjs/{ios.transition-7d688757.js → ios.transition-5af5991e.js} +213 -44
  113. package/dist/cjs/loader.cjs.js +1 -1
  114. package/dist/cjs/{md.transition-d77d3c2e.js → md.transition-1e740a6a.js} +1 -1
  115. package/dist/cjs/{overlays-7e1a08fa.js → overlays-1a734051.js} +1 -0
  116. package/dist/collection/collection-manifest.json +1 -1
  117. package/dist/collection/components/accordion/accordion.ios.css +66 -0
  118. package/dist/collection/components/accordion/accordion.md.css +33 -0
  119. package/dist/collection/components/accordion-group/accordion-group.ios.css +66 -0
  120. package/dist/collection/components/accordion-group/accordion-group.md.css +99 -0
  121. package/dist/collection/components/action-sheet/action-sheet.ios.css +80 -12
  122. package/dist/collection/components/action-sheet/action-sheet.md.css +76 -8
  123. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +27 -0
  124. package/dist/collection/components/alert/alert.ios.css +138 -21
  125. package/dist/collection/components/alert/alert.js +8 -0
  126. package/dist/collection/components/alert/alert.md.css +108 -8
  127. package/dist/collection/components/alert/test/a11y/alert.e2e.js +122 -0
  128. package/dist/collection/components/avatar/avatar.ios.css +66 -0
  129. package/dist/collection/components/avatar/avatar.md.css +66 -0
  130. package/dist/collection/components/back-button/back-button.ios.css +83 -1
  131. package/dist/collection/components/back-button/back-button.md.css +75 -3
  132. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +26 -0
  133. package/dist/collection/components/backdrop/backdrop.ios.css +66 -0
  134. package/dist/collection/components/backdrop/backdrop.md.css +66 -0
  135. package/dist/collection/components/badge/badge.ios.css +75 -1
  136. package/dist/collection/components/badge/badge.md.css +67 -1
  137. package/dist/collection/components/badge/test/a11y/badge.e2e.js +22 -0
  138. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +80 -3
  139. package/dist/collection/components/breadcrumb/breadcrumb.md.css +69 -3
  140. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +33 -0
  141. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +33 -0
  142. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +21 -0
  143. package/dist/collection/components/button/button.ios.css +118 -19
  144. package/dist/collection/components/button/button.md.css +69 -3
  145. package/dist/collection/components/button/test/a11y/button.e2e.js +61 -0
  146. package/dist/collection/components/buttons/buttons.ios.css +102 -3
  147. package/dist/collection/components/buttons/buttons.md.css +101 -2
  148. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +74 -0
  149. package/dist/collection/components/card/card.ios.css +67 -1
  150. package/dist/collection/components/card/card.md.css +67 -1
  151. package/dist/collection/components/card/test/a11y/card.e2e.js +31 -0
  152. package/dist/collection/components/card-content/card-content.ios.css +71 -5
  153. package/dist/collection/components/card-content/card-content.md.css +71 -5
  154. package/dist/collection/components/card-header/card-header.ios.css +66 -0
  155. package/dist/collection/components/card-header/card-header.md.css +66 -0
  156. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +67 -1
  157. package/dist/collection/components/card-subtitle/card-subtitle.md.css +67 -1
  158. package/dist/collection/components/card-title/card-title.ios.css +67 -1
  159. package/dist/collection/components/card-title/card-title.md.css +67 -1
  160. package/dist/collection/components/checkbox/checkbox.ios.css +101 -2
  161. package/dist/collection/components/checkbox/checkbox.md.css +99 -0
  162. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +18 -0
  163. package/dist/collection/components/chip/chip.ios.css +190 -0
  164. package/dist/collection/components/chip/chip.js +4 -2
  165. package/dist/collection/components/chip/{chip.css → chip.md.css} +43 -7
  166. package/dist/collection/components/chip/test/a11y/chip.e2e.js +58 -0
  167. package/dist/collection/components/col/col.css +66 -0
  168. package/dist/collection/components/content/content.css +33 -0
  169. package/dist/collection/components/datetime/datetime.ios.css +198 -7
  170. package/dist/collection/components/datetime/datetime.js +13 -7
  171. package/dist/collection/components/datetime/datetime.md.css +97 -5
  172. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +28 -0
  173. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +14 -0
  174. package/dist/collection/components/datetime/utils/data.js +33 -7
  175. package/dist/collection/components/datetime/utils/format.js +27 -10
  176. package/dist/collection/components/datetime/utils/helpers.js +37 -5
  177. package/dist/collection/components/datetime-button/datetime-button.css +36 -2
  178. package/dist/collection/components/datetime-button/datetime-button.js +4 -4
  179. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +38 -0
  180. package/dist/collection/components/fab/fab.css +132 -0
  181. package/dist/collection/components/fab-button/fab-button.ios.css +66 -0
  182. package/dist/collection/components/fab-button/fab-button.md.css +66 -0
  183. package/dist/collection/components/fab-list/fab-list.css +66 -0
  184. package/dist/collection/components/footer/footer.ios.css +66 -0
  185. package/dist/collection/components/footer/footer.md.css +66 -0
  186. package/dist/collection/components/grid/grid.css +66 -0
  187. package/dist/collection/components/header/header.ios.css +71 -2
  188. package/dist/collection/components/header/header.md.css +66 -0
  189. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +66 -0
  190. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +66 -0
  191. package/dist/collection/components/input/input.ios.css +100 -1
  192. package/dist/collection/components/input/input.md.css +199 -1
  193. package/dist/collection/components/input/test/a11y/input.e2e.js +15 -1
  194. package/dist/collection/components/item/item.ios.css +70 -4
  195. package/dist/collection/components/item/item.md.css +138 -6
  196. package/dist/collection/components/item/test/a11y/item.e2e.js +116 -1
  197. package/dist/collection/components/item-divider/item-divider.ios.css +101 -9
  198. package/dist/collection/components/item-divider/item-divider.md.css +103 -11
  199. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +44 -0
  200. package/dist/collection/components/item-group/item-group.ios.css +68 -1
  201. package/dist/collection/components/item-group/item-group.md.css +68 -1
  202. package/dist/collection/components/item-option/item-option.ios.css +67 -1
  203. package/dist/collection/components/item-option/item-option.md.css +67 -1
  204. package/dist/collection/components/item-options/item-options.ios.css +99 -1
  205. package/dist/collection/components/item-options/item-options.md.css +99 -1
  206. package/dist/collection/components/item-sliding/item-sliding.css +33 -0
  207. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +34 -0
  208. package/dist/collection/components/label/label.ios.css +105 -6
  209. package/dist/collection/components/label/label.md.css +104 -5
  210. package/dist/collection/components/label/test/a11y/label.e2e.js +66 -0
  211. package/dist/collection/components/list/list.ios.css +99 -0
  212. package/dist/collection/components/list/list.md.css +99 -0
  213. package/dist/collection/components/list-header/list-header.ios.css +100 -1
  214. package/dist/collection/components/list-header/list-header.md.css +100 -1
  215. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +24 -0
  216. package/dist/collection/components/loading/loading.ios.css +67 -1
  217. package/dist/collection/components/loading/loading.md.css +67 -1
  218. package/dist/collection/components/loading/test/a11y/loading.e2e.js +19 -0
  219. package/dist/collection/components/menu/menu.ios.css +66 -0
  220. package/dist/collection/components/menu/menu.js +0 -12
  221. package/dist/collection/components/menu/menu.md.css +66 -0
  222. package/dist/collection/components/menu/test/multiple/menu.e2e.js +60 -0
  223. package/dist/collection/components/menu-button/menu-button.ios.css +70 -2
  224. package/dist/collection/components/menu-button/menu-button.md.css +71 -3
  225. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +20 -1
  226. package/dist/collection/components/modal/modal.ios.css +66 -0
  227. package/dist/collection/components/modal/modal.md.css +66 -0
  228. package/dist/collection/components/nav/nav.css +33 -0
  229. package/dist/collection/components/nav/nav.js +1 -0
  230. package/dist/collection/components/note/note.ios.css +67 -0
  231. package/dist/collection/components/note/note.md.css +67 -1
  232. package/dist/collection/components/note/test/a11y/note.e2e.js +52 -0
  233. package/dist/collection/components/picker/picker.ios.css +66 -0
  234. package/dist/collection/components/picker/picker.md.css +66 -0
  235. package/dist/collection/components/picker-column/picker-column.ios.css +66 -0
  236. package/dist/collection/components/picker-column/picker-column.md.css +66 -0
  237. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -0
  238. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +66 -0
  239. package/dist/collection/components/picker-internal/picker-internal.ios.css +66 -0
  240. package/dist/collection/components/picker-internal/picker-internal.md.css +66 -0
  241. package/dist/collection/components/popover/popover.ios.css +66 -0
  242. package/dist/collection/components/popover/popover.md.css +66 -0
  243. package/dist/collection/components/progress-bar/progress-bar.ios.css +33 -0
  244. package/dist/collection/components/progress-bar/progress-bar.md.css +33 -0
  245. package/dist/collection/components/radio/radio.ios.css +104 -5
  246. package/dist/collection/components/radio/radio.md.css +104 -5
  247. package/dist/collection/components/radio/test/a11y/radio.e2e.js +21 -0
  248. package/dist/collection/components/range/range.ios.css +82 -8
  249. package/dist/collection/components/range/range.md.css +99 -11
  250. package/dist/collection/components/range/test/a11y/range.e2e.js +22 -0
  251. package/dist/collection/components/refresher/refresher.ios.css +66 -0
  252. package/dist/collection/components/refresher/refresher.md.css +66 -0
  253. package/dist/collection/components/reorder/reorder.ios.css +75 -2
  254. package/dist/collection/components/reorder/reorder.md.css +75 -2
  255. package/dist/collection/components/reorder-group/reorder-group.css +33 -0
  256. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +33 -0
  257. package/dist/collection/components/ripple-effect/ripple-effect.css +33 -0
  258. package/dist/collection/components/router/router.js +2 -0
  259. package/dist/collection/components/router/utils/path.js +1 -0
  260. package/dist/collection/components/router-link/router-link.css +33 -0
  261. package/dist/collection/components/router-outlet/router-outlet.css +33 -0
  262. package/dist/collection/components/row/row.css +66 -0
  263. package/dist/collection/components/searchbar/searchbar.ios.css +95 -16
  264. package/dist/collection/components/searchbar/searchbar.js +7 -1
  265. package/dist/collection/components/searchbar/searchbar.md.css +77 -10
  266. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +37 -0
  267. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +18 -0
  268. package/dist/collection/components/segment/segment.ios.css +99 -0
  269. package/dist/collection/components/segment/segment.md.css +99 -0
  270. package/dist/collection/components/segment-button/segment-button.ios.css +66 -0
  271. package/dist/collection/components/segment-button/segment-button.md.css +66 -0
  272. package/dist/collection/components/select/select.ios.css +102 -3
  273. package/dist/collection/components/select/select.js +1 -1
  274. package/dist/collection/components/select/select.md.css +167 -2
  275. package/dist/collection/components/select/test/a11y/select.e2e.js +22 -0
  276. package/dist/collection/components/select-popover/select-popover.ios.css +101 -1
  277. package/dist/collection/components/select-popover/select-popover.md.css +99 -0
  278. package/dist/collection/components/skeleton-text/skeleton-text.css +33 -0
  279. package/dist/collection/components/spinner/spinner.css +33 -0
  280. package/dist/collection/components/split-pane/split-pane.ios.css +99 -0
  281. package/dist/collection/components/split-pane/split-pane.md.css +99 -0
  282. package/dist/collection/components/tab-bar/tab-bar.ios.css +99 -0
  283. package/dist/collection/components/tab-bar/tab-bar.md.css +99 -0
  284. package/dist/collection/components/tab-button/tab-button.ios.css +66 -0
  285. package/dist/collection/components/tab-button/tab-button.md.css +66 -0
  286. package/dist/collection/components/tabs/tabs.css +33 -0
  287. package/dist/collection/components/text/text.css +33 -0
  288. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +15 -1
  289. package/dist/collection/components/textarea/textarea.ios.css +133 -1
  290. package/dist/collection/components/textarea/textarea.md.css +199 -1
  291. package/dist/collection/components/thumbnail/thumbnail.css +33 -0
  292. package/dist/collection/components/title/test/a11y/title.e2e.js +61 -0
  293. package/dist/collection/components/title/title.ios.css +52 -10
  294. package/dist/collection/components/title/title.md.css +35 -2
  295. package/dist/collection/components/toast/animations/ios.enter.js +2 -3
  296. package/dist/collection/components/toast/animations/ios.leave.js +2 -3
  297. package/dist/collection/components/toast/animations/md.enter.js +2 -3
  298. package/dist/collection/components/toast/animations/utils.js +85 -0
  299. package/dist/collection/components/toast/test/a11y/toast.e2e.js +98 -1
  300. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +45 -0
  301. package/dist/collection/components/toast/toast.ios.css +74 -3
  302. package/dist/collection/components/toast/toast.js +98 -9
  303. package/dist/collection/components/toast/toast.md.css +74 -4
  304. package/dist/collection/components/toggle/toggle.ios.css +99 -0
  305. package/dist/collection/components/toggle/toggle.md.css +99 -0
  306. package/dist/collection/components/toolbar/toolbar.ios.css +66 -14
  307. package/dist/collection/components/toolbar/toolbar.md.css +66 -0
  308. package/dist/collection/css/test/a11y/typography.e2e.js +32 -0
  309. package/dist/collection/index.js +1 -0
  310. package/dist/collection/utils/menu-controller/index.js +26 -19
  311. package/dist/collection/utils/native/haptic.js +1 -0
  312. package/dist/collection/utils/overlays.js +1 -0
  313. package/dist/collection/utils/transition/ios.transition.js +212 -43
  314. package/dist/docs.json +74 -11
  315. package/dist/esm/{button-active-5136c12d.js → button-active-d926d4f4.js} +1 -1
  316. package/dist/esm/{data-009dbf15.js → data-44d9e816.js} +96 -22
  317. package/dist/esm/{haptic-6447af60.js → haptic-1243b917.js} +1 -0
  318. package/dist/esm/{index-641aeeed.js → index-a09eac70.js} +2 -2
  319. package/dist/esm/{index-ecfc2c9f.js → index-c132c5f1.js} +1 -1
  320. package/dist/esm/{index-d78b533e.js → index-df55802d.js} +26 -19
  321. package/dist/esm/index.js +7 -6
  322. package/dist/esm/ion-accordion_2.entry.js +1 -1
  323. package/dist/esm/ion-action-sheet.entry.js +5 -5
  324. package/dist/esm/ion-alert.entry.js +13 -5
  325. package/dist/esm/ion-app_8.entry.js +7 -7
  326. package/dist/esm/ion-avatar_3.entry.js +2 -2
  327. package/dist/esm/ion-back-button.entry.js +3 -3
  328. package/dist/esm/ion-breadcrumb_2.entry.js +3 -3
  329. package/dist/esm/ion-button_2.entry.js +33 -20
  330. package/dist/esm/ion-card_5.entry.js +8 -8
  331. package/dist/esm/ion-checkbox.entry.js +1 -1
  332. package/dist/esm/ion-chip.entry.js +7 -2
  333. package/dist/esm/ion-datetime-button.entry.js +6 -6
  334. package/dist/esm/ion-datetime_3.entry.js +9 -9
  335. package/dist/esm/ion-fab_3.entry.js +1 -1
  336. package/dist/esm/ion-input.entry.js +3 -3
  337. package/dist/esm/ion-item-option_3.entry.js +4 -4
  338. package/dist/esm/ion-item_8.entry.js +11 -11
  339. package/dist/esm/ion-loading.entry.js +3 -3
  340. package/dist/esm/ion-menu_3.entry.js +7 -18
  341. package/dist/esm/ion-modal.entry.js +2 -2
  342. package/dist/esm/ion-nav_2.entry.js +2 -1
  343. package/dist/esm/ion-picker-column-internal.entry.js +1 -1
  344. package/dist/esm/ion-popover.entry.js +2 -2
  345. package/dist/esm/ion-radio_2.entry.js +2 -2
  346. package/dist/esm/ion-range.entry.js +2 -2
  347. package/dist/esm/ion-refresher_2.entry.js +2 -2
  348. package/dist/esm/ion-reorder_2.entry.js +4 -4
  349. package/dist/esm/ion-route_4.entry.js +3 -0
  350. package/dist/esm/ion-searchbar.entry.js +10 -4
  351. package/dist/esm/ion-select_3.entry.js +5 -5
  352. package/dist/esm/ion-textarea.entry.js +2 -2
  353. package/dist/esm/ion-toast.entry.js +159 -17
  354. package/dist/esm/ion-toggle.entry.js +2 -2
  355. package/dist/esm/ionic.js +2 -2
  356. package/dist/esm/{ios.transition-04c9a97a.js → ios.transition-4d1322d6.js} +213 -44
  357. package/dist/esm/loader.js +1 -1
  358. package/dist/esm/{md.transition-67a8aabd.js → md.transition-66b425d0.js} +1 -1
  359. package/dist/esm/{overlays-2fa52617.js → overlays-cec6bac8.js} +1 -0
  360. package/dist/esm-es5/{button-active-5136c12d.js → button-active-d926d4f4.js} +1 -1
  361. package/dist/esm-es5/data-44d9e816.js +4 -0
  362. package/dist/esm-es5/index-a09eac70.js +4 -0
  363. package/dist/esm-es5/index-df55802d.js +4 -0
  364. package/dist/esm-es5/index.js +1 -1
  365. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  366. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  367. package/dist/esm-es5/ion-alert.entry.js +1 -1
  368. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  369. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  370. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  371. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  372. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  373. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  374. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  375. package/dist/esm-es5/ion-chip.entry.js +1 -1
  376. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  377. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  378. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  379. package/dist/esm-es5/ion-input.entry.js +1 -1
  380. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  381. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  382. package/dist/esm-es5/ion-loading.entry.js +1 -1
  383. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  384. package/dist/esm-es5/ion-modal.entry.js +1 -1
  385. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  386. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  387. package/dist/esm-es5/ion-popover.entry.js +1 -1
  388. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  389. package/dist/esm-es5/ion-range.entry.js +1 -1
  390. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  391. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  392. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  393. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  394. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  395. package/dist/esm-es5/ion-toast.entry.js +1 -1
  396. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  397. package/dist/esm-es5/ionic.js +1 -1
  398. package/dist/esm-es5/ios.transition-4d1322d6.js +4 -0
  399. package/dist/esm-es5/loader.js +1 -1
  400. package/dist/esm-es5/md.transition-66b425d0.js +4 -0
  401. package/dist/html.html-data.json +11 -1
  402. package/dist/ionic/index.esm.js +1 -1
  403. package/dist/ionic/ionic.esm.js +1 -1
  404. package/dist/ionic/ionic.js +1 -1
  405. package/dist/ionic/p-012952cd.system.entry.js +4 -0
  406. package/dist/ionic/p-091c8792.system.js +4 -0
  407. package/dist/ionic/{p-4b8db805.entry.js → p-0ac3fb2c.entry.js} +1 -1
  408. package/dist/ionic/{p-ec9052a4.entry.js → p-0b00b937.entry.js} +1 -1
  409. package/dist/ionic/{p-9b4a77fc.system.entry.js → p-0b7c25ee.system.entry.js} +1 -1
  410. package/dist/ionic/p-0bbede6a.system.entry.js +4 -0
  411. package/dist/ionic/{p-1d0aa82f.system.entry.js → p-0f1f59da.system.entry.js} +1 -1
  412. package/dist/ionic/p-17240d90.js +4 -0
  413. package/dist/ionic/p-19fba51c.entry.js +4 -0
  414. package/dist/ionic/p-1a463b1e.system.entry.js +4 -0
  415. package/dist/ionic/p-1edb53a1.entry.js +4 -0
  416. package/dist/ionic/p-1f260a7b.entry.js +4 -0
  417. package/dist/ionic/{p-1c82e9ff.js → p-28ea45b9.js} +1 -1
  418. package/dist/ionic/p-2a8eeef7.system.js +4 -0
  419. package/dist/ionic/p-303bf1e8.system.entry.js +4 -0
  420. package/dist/ionic/p-31119a15.entry.js +4 -0
  421. package/dist/ionic/p-34259245.system.entry.js +4 -0
  422. package/dist/ionic/{p-914ac0fc.entry.js → p-35b26732.entry.js} +1 -1
  423. package/dist/ionic/p-35e399bd.entry.js +4 -0
  424. package/dist/ionic/{p-4dd96c8d.entry.js → p-38089641.entry.js} +1 -1
  425. package/dist/ionic/{p-f588e951.entry.js → p-3818f63f.entry.js} +1 -1
  426. package/dist/ionic/p-38c5fe2b.system.entry.js +4 -0
  427. package/dist/ionic/p-4215652f.system.entry.js +4 -0
  428. package/dist/ionic/p-4e50b8d1.entry.js +4 -0
  429. package/dist/ionic/p-4f97c112.entry.js +4 -0
  430. package/dist/ionic/p-54200074.entry.js +4 -0
  431. package/dist/ionic/p-572cce26.system.entry.js +4 -0
  432. package/dist/ionic/p-61b192a4.system.entry.js +4 -0
  433. package/dist/ionic/p-62e7d4fa.js +4 -0
  434. package/dist/ionic/p-673846f6.entry.js +4 -0
  435. package/dist/ionic/p-6ce0a709.system.entry.js +4 -0
  436. package/dist/ionic/p-6f6646bf.system.entry.js +4 -0
  437. package/dist/ionic/{p-2a7c0093.entry.js → p-7423746f.entry.js} +1 -1
  438. package/dist/ionic/p-755b2917.system.js +4 -0
  439. package/dist/ionic/p-78030c1f.system.entry.js +4 -0
  440. package/dist/ionic/p-8083aadb.entry.js +4 -0
  441. package/dist/ionic/p-81ef7437.system.entry.js +4 -0
  442. package/dist/ionic/{p-deb6ddad.entry.js → p-8209372c.entry.js} +1 -1
  443. package/dist/ionic/p-8c1805f4.system.entry.js +4 -0
  444. package/dist/ionic/p-8d6728a1.system.entry.js +4 -0
  445. package/dist/ionic/p-9dc85536.system.entry.js +4 -0
  446. package/dist/ionic/p-9e106f58.entry.js +4 -0
  447. package/dist/ionic/p-a164e3ab.system.entry.js +4 -0
  448. package/dist/ionic/{p-5efb899f.entry.js → p-a200a7fc.entry.js} +1 -1
  449. package/dist/ionic/p-a34fc12e.system.entry.js +4 -0
  450. package/dist/ionic/p-a9c32660.entry.js +4 -0
  451. package/dist/ionic/{p-5ece7025.system.js → p-aa377971.system.js} +1 -1
  452. package/dist/ionic/p-ad48dd13.system.js +4 -0
  453. package/dist/ionic/{p-d89d0de0.entry.js → p-afb6658f.entry.js} +1 -1
  454. package/dist/ionic/{p-6fb80ef3.system.entry.js → p-b753ec0d.system.entry.js} +1 -1
  455. package/dist/ionic/p-b8c3f071.system.js +4 -0
  456. package/dist/ionic/p-bb055450.system.entry.js +4 -0
  457. package/dist/ionic/p-c105bd36.entry.js +4 -0
  458. package/dist/ionic/p-c42c86c0.system.entry.js +4 -0
  459. package/dist/ionic/p-c44fe9fd.js +4 -0
  460. package/dist/ionic/p-c575a7b8.system.entry.js +4 -0
  461. package/dist/ionic/{p-3c2c6fce.entry.js → p-c679fcb5.entry.js} +1 -1
  462. package/dist/ionic/p-c8c9d699.system.entry.js +4 -0
  463. package/dist/ionic/p-c92f0a6d.system.entry.js +4 -0
  464. package/dist/ionic/p-c956e82c.system.entry.js +4 -0
  465. package/dist/ionic/p-cabd2c6d.entry.js +4 -0
  466. package/dist/ionic/p-cd2d17c3.system.entry.js +4 -0
  467. package/dist/ionic/{p-238f0ac5.system.entry.js → p-ce7d67a7.system.entry.js} +1 -1
  468. package/dist/ionic/p-d6e53e66.entry.js +4 -0
  469. package/dist/ionic/p-de68588d.js +4 -0
  470. package/dist/ionic/p-e028178a.system.js +4 -0
  471. package/dist/ionic/p-e0f0d55f.system.js +4 -0
  472. package/dist/ionic/p-e1d5752d.system.entry.js +4 -0
  473. package/dist/ionic/{p-f623aa6d.entry.js → p-e25cb483.entry.js} +1 -1
  474. package/dist/ionic/p-e65ebe96.entry.js +4 -0
  475. package/dist/ionic/p-e74faf2a.entry.js +4 -0
  476. package/dist/ionic/p-eb7d0922.js +4 -0
  477. package/dist/ionic/p-eb8dc56f.system.entry.js +4 -0
  478. package/dist/ionic/{p-8297652e.entry.js → p-f4309ac7.entry.js} +1 -1
  479. package/dist/ionic/p-f5bf698b.entry.js +4 -0
  480. package/dist/ionic/p-f7566bad.entry.js +4 -0
  481. package/dist/ionic/p-f919c026.entry.js +4 -0
  482. package/dist/ionic/{p-5cd791b3.system.entry.js → p-f9fa802c.system.entry.js} +1 -1
  483. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +49 -6
  484. package/dist/types/components/datetime/datetime-interface.d.ts +1 -0
  485. package/dist/types/components/datetime/datetime.d.ts +2 -2
  486. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  487. package/dist/types/components/datetime/utils/format.d.ts +3 -3
  488. package/dist/types/components/datetime/utils/helpers.d.ts +15 -1
  489. package/dist/types/components/menu/menu-interface.d.ts +15 -5
  490. package/dist/types/components/toast/animations/ios.enter.d.ts +2 -1
  491. package/dist/types/components/toast/animations/ios.leave.d.ts +2 -2
  492. package/dist/types/components/toast/animations/md.enter.d.ts +2 -1
  493. package/dist/types/components/toast/animations/utils.d.ts +18 -0
  494. package/dist/types/components/toast/toast-interface.d.ts +11 -0
  495. package/dist/types/components/toast/toast.d.ts +21 -1
  496. package/dist/types/components.d.ts +16 -8
  497. package/dist/types/index.d.ts +1 -0
  498. package/dist/types/stencil-public-runtime.d.ts +19 -0
  499. package/dist/types/utils/menu-controller/index.d.ts +2 -22
  500. package/hydrate/index.js +630 -204
  501. package/package.json +10 -12
  502. package/dist/esm-es5/data-009dbf15.js +0 -4
  503. package/dist/esm-es5/index-641aeeed.js +0 -4
  504. package/dist/esm-es5/index-d78b533e.js +0 -4
  505. package/dist/esm-es5/ios.transition-04c9a97a.js +0 -4
  506. package/dist/esm-es5/md.transition-67a8aabd.js +0 -4
  507. package/dist/ionic/p-02a4e81a.js +0 -4
  508. package/dist/ionic/p-03c381ec.system.entry.js +0 -4
  509. package/dist/ionic/p-048f1ebe.entry.js +0 -4
  510. package/dist/ionic/p-04e7c8fd.entry.js +0 -4
  511. package/dist/ionic/p-05ae600a.system.js +0 -4
  512. package/dist/ionic/p-0c37546b.system.entry.js +0 -4
  513. package/dist/ionic/p-117cd69f.system.entry.js +0 -4
  514. package/dist/ionic/p-13d6e57a.js +0 -4
  515. package/dist/ionic/p-164b0e76.entry.js +0 -4
  516. package/dist/ionic/p-170e9de0.system.entry.js +0 -4
  517. package/dist/ionic/p-19384b9e.entry.js +0 -4
  518. package/dist/ionic/p-2784263e.system.entry.js +0 -4
  519. package/dist/ionic/p-29e3a9bb.entry.js +0 -4
  520. package/dist/ionic/p-32717950.system.entry.js +0 -4
  521. package/dist/ionic/p-32d364f0.entry.js +0 -4
  522. package/dist/ionic/p-35818410.entry.js +0 -4
  523. package/dist/ionic/p-37448ac1.entry.js +0 -4
  524. package/dist/ionic/p-38ccfd71.system.entry.js +0 -4
  525. package/dist/ionic/p-44ef7224.system.js +0 -4
  526. package/dist/ionic/p-45f5c8ba.system.entry.js +0 -4
  527. package/dist/ionic/p-47db15c6.entry.js +0 -4
  528. package/dist/ionic/p-4811e4af.system.entry.js +0 -4
  529. package/dist/ionic/p-4bb26b01.system.entry.js +0 -4
  530. package/dist/ionic/p-4d6ac0fe.system.entry.js +0 -4
  531. package/dist/ionic/p-51269f3b.system.js +0 -4
  532. package/dist/ionic/p-55d3a9b2.entry.js +0 -4
  533. package/dist/ionic/p-576e6d0f.system.entry.js +0 -4
  534. package/dist/ionic/p-5b32b053.entry.js +0 -4
  535. package/dist/ionic/p-5bc5008c.entry.js +0 -4
  536. package/dist/ionic/p-5c3e72a8.system.js +0 -4
  537. package/dist/ionic/p-5c651aab.system.entry.js +0 -4
  538. package/dist/ionic/p-64e20cd9.entry.js +0 -4
  539. package/dist/ionic/p-65a5761f.js +0 -4
  540. package/dist/ionic/p-6ac3e877.system.entry.js +0 -4
  541. package/dist/ionic/p-706a0391.entry.js +0 -4
  542. package/dist/ionic/p-72aea40e.system.entry.js +0 -4
  543. package/dist/ionic/p-73ed9a91.js +0 -4
  544. package/dist/ionic/p-7cfd253c.js +0 -4
  545. package/dist/ionic/p-839276d4.entry.js +0 -4
  546. package/dist/ionic/p-8ee012cb.system.entry.js +0 -4
  547. package/dist/ionic/p-908720f3.system.entry.js +0 -4
  548. package/dist/ionic/p-95b14c73.system.entry.js +0 -4
  549. package/dist/ionic/p-99dfa53f.system.entry.js +0 -4
  550. package/dist/ionic/p-a18ec02b.entry.js +0 -4
  551. package/dist/ionic/p-b109a3d7.system.entry.js +0 -4
  552. package/dist/ionic/p-b3690814.system.entry.js +0 -4
  553. package/dist/ionic/p-c3efbcf5.system.js +0 -4
  554. package/dist/ionic/p-c48fc95d.system.entry.js +0 -4
  555. package/dist/ionic/p-c7428627.system.entry.js +0 -4
  556. package/dist/ionic/p-d0ad0430.system.entry.js +0 -4
  557. package/dist/ionic/p-d55c9f92.system.entry.js +0 -4
  558. package/dist/ionic/p-d7b8d224.entry.js +0 -4
  559. package/dist/ionic/p-df5fe0be.system.js +0 -4
  560. package/dist/ionic/p-e1ac688a.entry.js +0 -4
  561. package/dist/ionic/p-e2fd0895.entry.js +0 -4
  562. package/dist/ionic/p-f960fd84.system.entry.js +0 -4
  563. package/dist/ionic/p-fbcb157b.system.js +0 -4
  564. package/dist/ionic/p-fccfe602.entry.js +0 -4
  565. package/dist/ionic/p-ff555f6f.system.entry.js +0 -4
  566. /package/dist/esm-es5/{haptic-6447af60.js → haptic-1243b917.js} +0 -0
  567. /package/dist/esm-es5/{index-ecfc2c9f.js → index-c132c5f1.js} +0 -0
  568. /package/dist/esm-es5/{overlays-2fa52617.js → overlays-cec6bac8.js} +0 -0
  569. /package/dist/ionic/{p-8985b268.system.js → p-8050b9b9.system.js} +0 -0
  570. /package/dist/ionic/{p-6ba7fad7.system.js → p-8f01a9a2.system.js} +0 -0
  571. /package/dist/ionic/{p-14d7b7e2.system.js → p-b4b4bb29.system.js} +0 -0
  572. /package/dist/ionic/{p-bb6f38ed.js → p-b923f3d7.js} +0 -0
  573. /package/dist/ionic/{p-63505fbb.js → p-cf62e1c8.js} +0 -0
  574. /package/dist/ionic/{p-0a87858b.js → p-ea96fa73.js} +0 -0
@@ -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: The primary background of the datetime component.
@@ -220,6 +253,18 @@ ion-picker-column-internal {
220
253
  justify-content: space-between;
221
254
  }
222
255
 
256
+ /**
257
+ * The confirm and clear buttons are grouped in a
258
+ * container so that they appear on the end opposite
259
+ * of the cancel button.
260
+ * We use display: flex so that the
261
+ * wrapper only takes up as much
262
+ * height as it needs.
263
+ */
264
+ .datetime-action-buttons .datetime-action-buttons-container {
265
+ display: flex;
266
+ }
267
+
223
268
  /**
224
269
  * Date/Year button should be on
225
270
  * the opposite side of the component
@@ -255,6 +300,20 @@ ion-picker-column-internal {
255
300
  text-align: center;
256
301
  }
257
302
 
303
+ .calendar-days-of-week .day-of-week {
304
+ /**
305
+ * Center the days of the week within each cell
306
+ * if the container size is changed as a result
307
+ * of Dynamic Type.
308
+ */
309
+ -webkit-margin-start: auto;
310
+ margin-inline-start: auto;
311
+ -webkit-margin-end: auto;
312
+ margin-inline-end: auto;
313
+ margin-top: 0;
314
+ margin-bottom: 0;
315
+ }
316
+
258
317
  :host .calendar-body {
259
318
  /**
260
319
  * Show all calendar months inline
@@ -329,7 +388,7 @@ ion-picker-column-internal {
329
388
  * Center the day text vertically
330
389
  * and horizontally within its grid cell.
331
390
  */
332
- :host .calendar-day {
391
+ .calendar-day {
333
392
  border-radius: 50%;
334
393
  -webkit-padding-start: 0px;
335
394
  padding-inline-start: 0px;
@@ -418,6 +477,39 @@ ion-picker-column-internal {
418
477
  --color: var(--ion-color-base);
419
478
  }
420
479
 
480
+ /**
481
+ * Convert a font size to a dynamic font size.
482
+ * Fonts that participate in Dynamic Type should use
483
+ * dynamic font sizes.
484
+ * @param size - The initial font size including the unit (i.e. px or pt)
485
+ * @param unit (optional) - The unit to convert to. Use this if you want to
486
+ * convert to a unit other than $baselineUnit.
487
+ */
488
+ /**
489
+ * Convert a font size to a dynamic font size but impose
490
+ * a maximum font size.
491
+ * @param size - The initial font size including the unit (i.e. px or pt)
492
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
493
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
494
+ * convert to a unit other than $baselineUnit.
495
+ */
496
+ /**
497
+ * Convert a font size to a dynamic font size but impose
498
+ * a minimum font size.
499
+ * @param size - The initial font size including the unit (i.e. px or pt)
500
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
501
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
502
+ * convert to a unit other than $baselineUnit.
503
+ */
504
+ /**
505
+ * Convert a font size to a dynamic font size but impose
506
+ * maximum and minimum font sizes.
507
+ * @param size - The initial font size including the unit (i.e. px or pt)
508
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
509
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
510
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
511
+ * convert to a unit other than $baselineUnit.
512
+ */
421
513
  :host {
422
514
  --background: var(--ion-color-step-100, #ffffff);
423
515
  --title-color: var(--ion-color-contrast);
@@ -435,13 +527,13 @@ ion-picker-column-internal {
435
527
  }
436
528
 
437
529
  :host .datetime-header .datetime-title {
438
- font-size: 12px;
530
+ font-size: 0.75rem;
439
531
  text-transform: uppercase;
440
532
  }
441
533
 
442
534
  :host .datetime-header .datetime-selected-date {
443
535
  margin-top: 30px;
444
- font-size: 34px;
536
+ font-size: 2.125rem;
445
537
  }
446
538
 
447
539
  :host .datetime-calendar .calendar-action-buttons ion-item {
@@ -461,7 +553,7 @@ ion-picker-column-internal {
461
553
  padding-top: 0px;
462
554
  padding-bottom: 0px;
463
555
  color: var(--ion-color-step-500, gray);
464
- font-size: 14px;
556
+ font-size: 0.875rem;
465
557
  line-height: 36px;
466
558
  }
467
559
 
@@ -486,7 +578,7 @@ ion-picker-column-internal {
486
578
  width: 42px;
487
579
  min-width: 42px;
488
580
  height: 42px;
489
- font-size: 14px;
581
+ font-size: 0.875rem;
490
582
  }
491
583
 
492
584
  /**
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { expect } from "@playwright/test";
5
+ import { configs, test } from "../../../../utils/test/playwright/index";
6
+ /**
7
+ * This behavior does not vary across directions
8
+ */
9
+ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
10
+ test.describe(title('datetime: font scaling'), () => {
11
+ test('should scale text on larger font sizes', async ({ page }) => {
12
+ await page.setContent(`
13
+ <style>
14
+ html {
15
+ font-size: 36px;
16
+ }
17
+ </style>
18
+
19
+ <div id="container" style="width: 450px;">
20
+ <ion-datetime size="cover" show-default-title="true" show-default-buttons="true" presentation="date-time" value="2022-06-06T16:30"></ion-datetime>
21
+ </div>
22
+ `, config);
23
+ const container = page.locator('#container');
24
+ await page.waitForSelector('.datetime-ready');
25
+ await expect(container).toHaveScreenshot(screenshot(`datetime-scale`));
26
+ });
27
+ });
28
+ });
@@ -19,5 +19,19 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
19
19
  const timeButton = page.locator('ion-datetime .time-body');
20
20
  await expect(timeButton).toHaveText('4:30 PM');
21
21
  });
22
+ test('should set the h11 hour cycle correctly', async ({ page }) => {
23
+ await page.setContent(`
24
+ <ion-datetime hour-cycle="h11" value="2022-01-01T00:30:00"></ion-datetime>
25
+ `, config);
26
+ const timeButton = page.locator('ion-datetime .time-body');
27
+ await expect(timeButton).toHaveText('0:30 AM');
28
+ });
29
+ test('should set the h24 hour cycle correctly', async ({ page }) => {
30
+ await page.setContent(`
31
+ <ion-datetime hour-cycle="h24" value="2022-01-01T00:30:00"></ion-datetime>
32
+ `, config);
33
+ const timeButton = page.locator('ion-datetime .time-body');
34
+ await expect(timeButton).toHaveText('24:30');
35
+ });
22
36
  });
23
37
  });
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { isAfter, isBefore, isSameDay } from "./comparison";
5
5
  import { getLocalizedDayPeriod, removeDateTzOffset, getFormattedHour, addTimePadding, getTodayLabel, getYear, } from "./format";
6
- import { getNumDaysInMonth, is24Hour } from "./helpers";
6
+ import { getNumDaysInMonth, is24Hour, getHourCycle } from "./helpers";
7
7
  import { getNextMonth, getPreviousMonth, getInternalHourValue } from "./manipulation";
8
8
  /**
9
9
  * Returns the current date as
@@ -34,8 +34,14 @@ const minutes = [
34
34
  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
35
35
  32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
36
36
  ];
37
+ // h11 hour system uses 0-11. Midnight starts at 0:00am.
38
+ const hour11 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
39
+ // h12 hour system uses 0-12. Midnight starts at 12:00am.
37
40
  const hour12 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
41
+ // h23 hour system uses 0-23. Midnight starts at 0:00.
38
42
  const hour23 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
43
+ // h24 hour system uses 1-24. Midnight starts at 24:00.
44
+ const hour24 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0];
39
45
  /**
40
46
  * Given a locale and a mode,
41
47
  * return an array with formatted days
@@ -104,14 +110,33 @@ export const getDaysOfMonth = (month, year, firstDayOfWeek) => {
104
110
  }
105
111
  return days;
106
112
  };
113
+ /**
114
+ * Returns an array of pre-defined hour
115
+ * values based on the provided hourCycle.
116
+ */
117
+ const getHourData = (hourCycle) => {
118
+ switch (hourCycle) {
119
+ case 'h11':
120
+ return hour11;
121
+ case 'h12':
122
+ return hour12;
123
+ case 'h23':
124
+ return hour23;
125
+ case 'h24':
126
+ return hour24;
127
+ default:
128
+ throw new Error(`Invalid hour cycle "${hourCycle}"`);
129
+ }
130
+ };
107
131
  /**
108
132
  * Given a local, reference datetime parts and option
109
133
  * max/min bound datetime parts, calculate the acceptable
110
134
  * hour and minute values according to the bounds and locale.
111
135
  */
112
- export const generateTime = (refParts, hourCycle = 'h12', minParts, maxParts, hourValues, minuteValues) => {
113
- const use24Hour = hourCycle === 'h23';
114
- let processedHours = use24Hour ? hour23 : hour12;
136
+ export const generateTime = (locale, refParts, hourCycle = 'h12', minParts, maxParts, hourValues, minuteValues) => {
137
+ const computedHourCycle = getHourCycle(locale, hourCycle);
138
+ const use24Hour = is24Hour(computedHourCycle);
139
+ let processedHours = getHourData(computedHourCycle);
115
140
  let processedMinutes = minutes;
116
141
  let isAMAllowed = true;
117
142
  let isPMAllowed = true;
@@ -443,11 +468,12 @@ export const getCombinedDateColumnData = (locale, todayParts, minParts, maxParts
443
468
  };
444
469
  };
445
470
  export const getTimeColumnsData = (locale, refParts, hourCycle, minParts, maxParts, allowedHourValues, allowedMinuteValues) => {
446
- const use24Hour = is24Hour(locale, hourCycle);
447
- const { hours, minutes, am, pm } = generateTime(refParts, use24Hour ? 'h23' : 'h12', minParts, maxParts, allowedHourValues, allowedMinuteValues);
471
+ const computedHourCycle = getHourCycle(locale, hourCycle);
472
+ const use24Hour = is24Hour(computedHourCycle);
473
+ const { hours, minutes, am, pm } = generateTime(locale, refParts, computedHourCycle, minParts, maxParts, allowedHourValues, allowedMinuteValues);
448
474
  const hoursItems = hours.map((hour) => {
449
475
  return {
450
- text: getFormattedHour(hour, use24Hour),
476
+ text: getFormattedHour(hour, computedHourCycle),
451
477
  value: getInternalHourValue(hour, use24Hour, refParts.ampm),
452
478
  };
453
479
  });
@@ -1,6 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import { is24Hour } from "./helpers";
4
5
  import { convertDataToISO } from "./manipulation";
5
6
  const getFormattedDayPeriod = (dayPeriod) => {
6
7
  if (dayPeriod === undefined) {
@@ -8,7 +9,7 @@ const getFormattedDayPeriod = (dayPeriod) => {
8
9
  }
9
10
  return dayPeriod.toUpperCase();
10
11
  };
11
- export const getLocalizedTime = (locale, refParts, use24Hour) => {
12
+ export const getLocalizedTime = (locale, refParts, hourCycle) => {
12
13
  const timeParts = {
13
14
  hour: refParts.hour,
14
15
  minute: refParts.minute,
@@ -30,7 +31,7 @@ export const getLocalizedTime = (locale, refParts, use24Hour) => {
30
31
  * We use hourCycle here instead of hour12 due to:
31
32
  * https://bugs.chromium.org/p/chromium/issues/detail?id=1347316&q=hour12&can=2
32
33
  */
33
- hourCycle: use24Hour ? 'h23' : 'h12',
34
+ hourCycle,
34
35
  /**
35
36
  * Setting Z at the end indicates that this
36
37
  * date string is in the UTC time zone. This
@@ -69,17 +70,33 @@ export const addTimePadding = (value) => {
69
70
  * 12 hour times it ensures that
70
71
  * hour 0 is formatted as '12'.
71
72
  */
72
- export const getFormattedHour = (hour, use24Hour) => {
73
- if (use24Hour) {
74
- return addTimePadding(hour);
75
- }
73
+ export const getFormattedHour = (hour, hourCycle) => {
76
74
  /**
77
- * If using 12 hour
78
- * format, make sure hour
79
- * 0 is formatted as '12'.
75
+ * Midnight for h11 starts at 0:00am
76
+ * Midnight for h12 starts at 12:00am
77
+ * Midnight for h23 starts at 00:00
78
+ * Midnight for h24 starts at 24:00
80
79
  */
81
80
  if (hour === 0) {
82
- return '12';
81
+ switch (hourCycle) {
82
+ case 'h11':
83
+ return '0';
84
+ case 'h12':
85
+ return '12';
86
+ case 'h23':
87
+ return '00';
88
+ case 'h24':
89
+ return '24';
90
+ default:
91
+ throw new Error(`Invalid hour cycle "${hourCycle}"`);
92
+ }
93
+ }
94
+ const use24Hour = is24Hour(hourCycle);
95
+ /**
96
+ * h23 and h24 use 24 hour times.
97
+ */
98
+ if (use24Hour) {
99
+ return addTimePadding(hour);
83
100
  }
84
101
  return hour.toString();
85
102
  };
@@ -10,13 +10,19 @@
10
10
  export const isLeapYear = (year) => {
11
11
  return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
12
12
  };
13
- export const is24Hour = (locale, hourCycle) => {
13
+ /**
14
+ * Determines the hour cycle for a user.
15
+ * If the hour cycle is explicitly defined, just use that.
16
+ * Otherwise, we try to derive it from either the specified
17
+ * locale extension tags or from Intl.DateTimeFormat directly.
18
+ */
19
+ export const getHourCycle = (locale, hourCycle) => {
14
20
  /**
15
- * If developer has explicitly enabled h23 time
21
+ * If developer has explicitly enabled 24-hour time
16
22
  * then return early and do not look at the system default.
17
23
  */
18
24
  if (hourCycle !== undefined) {
19
- return hourCycle === 'h23';
25
+ return hourCycle;
20
26
  }
21
27
  /**
22
28
  * If hourCycle was not specified, check the locale
@@ -27,7 +33,7 @@ export const is24Hour = (locale, hourCycle) => {
27
33
  const formatted = new Intl.DateTimeFormat(locale, { hour: 'numeric' });
28
34
  const options = formatted.resolvedOptions();
29
35
  if (options.hourCycle !== undefined) {
30
- return options.hourCycle === 'h23';
36
+ return options.hourCycle;
31
37
  }
32
38
  /**
33
39
  * If hourCycle is not specified (either through lack
@@ -40,7 +46,33 @@ export const is24Hour = (locale, hourCycle) => {
40
46
  if (!hour) {
41
47
  throw new Error('Hour value not found from DateTimeFormat');
42
48
  }
43
- return hour.value === '00';
49
+ /**
50
+ * Midnight for h11 starts at 0:00am
51
+ * Midnight for h12 starts at 12:00am
52
+ * Midnight for h23 starts at 00:00
53
+ * Midnight for h24 starts at 24:00
54
+ */
55
+ switch (hour.value) {
56
+ case '0':
57
+ return 'h11';
58
+ case '12':
59
+ return 'h12';
60
+ case '00':
61
+ return 'h23';
62
+ case '24':
63
+ return 'h24';
64
+ default:
65
+ throw new Error(`Invalid hour cycle "${hourCycle}"`);
66
+ }
67
+ };
68
+ /**
69
+ * Determine if the hour cycle uses a 24-hour format.
70
+ * Returns true for h23 and h24. Returns false otherwise.
71
+ * If you don't know the hourCycle, use getHourCycle above
72
+ * and pass the result into this function.
73
+ */
74
+ export const is24Hour = (hourCycle) => {
75
+ return hourCycle === 'h23' || hourCycle === 'h24';
44
76
  };
45
77
  /**
46
78
  * Given a date object, returns the number
@@ -1,5 +1,39 @@
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
  display: flex;
36
+ flex-wrap: wrap;
3
37
  align-items: center;
4
38
  justify-content: center;
5
39
  }
@@ -24,10 +58,10 @@
24
58
  background: var(--ion-color-step-300, #edeef0);
25
59
  color: var(--ion-text-color, #000);
26
60
  font-family: inherit;
27
- font-size: inherit;
61
+ font-size: 1rem;
28
62
  cursor: pointer;
29
- appearance: none;
30
63
  overflow: hidden;
64
+ appearance: none;
31
65
  }
32
66
 
33
67
  :host(.time-active) #time-button,
@@ -8,7 +8,7 @@ import { createColorClasses } from "../../utils/theme";
8
8
  import { getIonMode } from "../../global/ionic-global";
9
9
  import { getToday } from "../datetime/utils/data";
10
10
  import { getMonthAndYear, getMonthDayAndYear, getLocalizedDateTime, getLocalizedTime } from "../datetime/utils/format";
11
- import { is24Hour } from "../datetime/utils/helpers";
11
+ import { getHourCycle } from "../datetime/utils/helpers";
12
12
  import { parseDate } from "../datetime/utils/parse";
13
13
  /**
14
14
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
@@ -65,13 +65,13 @@ export class DatetimeButton {
65
65
  * warning in the console.
66
66
  */
67
67
  const firstParsedDatetime = parsedDatetimes[0];
68
- const use24Hour = is24Hour(locale, hourCycle);
68
+ const computedHourCycle = getHourCycle(locale, hourCycle);
69
69
  this.dateText = this.timeText = undefined;
70
70
  switch (datetimePresentation) {
71
71
  case 'date-time':
72
72
  case 'time-date':
73
73
  const dateText = getMonthDayAndYear(locale, firstParsedDatetime);
74
- const timeText = getLocalizedTime(locale, firstParsedDatetime, use24Hour);
74
+ const timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
75
75
  if (preferWheel) {
76
76
  this.dateText = `${dateText} ${timeText}`;
77
77
  }
@@ -98,7 +98,7 @@ export class DatetimeButton {
98
98
  }
99
99
  break;
100
100
  case 'time':
101
- this.timeText = getLocalizedTime(locale, firstParsedDatetime, use24Hour);
101
+ this.timeText = getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
102
102
  break;
103
103
  case 'month-year':
104
104
  this.dateText = getMonthAndYear(locale, firstParsedDatetime);
@@ -0,0 +1,38 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { expect } from "@playwright/test";
5
+ import { configs, test } from "../../../../utils/test/playwright/index";
6
+ /**
7
+ * The tested behavior does not vary across directions/modes
8
+ */
9
+ configs({ directions: ['ltr'], modes: ['ios'] }).forEach(({ title, screenshot, config }) => {
10
+ test.describe(title('datetime-button: font scaling'), () => {
11
+ test('should scale text on larger font sizes', async ({ page }) => {
12
+ await page.setContent(`
13
+ <style>
14
+ html {
15
+ font-size: 28px;
16
+ }
17
+ </style>
18
+ <ion-datetime-button locale="en-US" datetime="datetime"></ion-datetime-button>
19
+ <ion-datetime id="datetime" value="2022-01-01T06:30:00" presentation="date-time"></ion-datetime>
20
+ `, config);
21
+ const datetimeButton = page.locator('ion-datetime-button');
22
+ await expect(datetimeButton).toHaveScreenshot(screenshot(`datetime-button-scale`));
23
+ });
24
+ test('should wrap text on larger font sizes', async ({ page }) => {
25
+ await page.setContent(`
26
+ <style>
27
+ html {
28
+ font-size: 48px;
29
+ }
30
+ </style>
31
+ <ion-datetime-button locale="en-US" datetime="datetime"></ion-datetime-button>
32
+ <ion-datetime id="datetime" value="2022-01-01T06:30:00" presentation="date-time"></ion-datetime>
33
+ `, config);
34
+ const datetimeButton = page.locator('ion-datetime-button');
35
+ await expect(datetimeButton).toHaveScreenshot(screenshot(`datetime-button-scale-wrap`));
36
+ });
37
+ });
38
+ });
@@ -1,3 +1,135 @@
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
+ /**
35
+ * Convert a font size to a dynamic font size.
36
+ * Fonts that participate in Dynamic Type should use
37
+ * dynamic font sizes.
38
+ * @param size - The initial font size including the unit (i.e. px or pt)
39
+ * @param unit (optional) - The unit to convert to. Use this if you want to
40
+ * convert to a unit other than $baselineUnit.
41
+ */
42
+ /**
43
+ * Convert a font size to a dynamic font size but impose
44
+ * a maximum font size.
45
+ * @param size - The initial font size including the unit (i.e. px or pt)
46
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
47
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
48
+ * convert to a unit other than $baselineUnit.
49
+ */
50
+ /**
51
+ * Convert a font size to a dynamic font size but impose
52
+ * a minimum font size.
53
+ * @param size - The initial font size including the unit (i.e. px or pt)
54
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
55
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
56
+ * convert to a unit other than $baselineUnit.
57
+ */
58
+ /**
59
+ * Convert a font size to a dynamic font size but impose
60
+ * maximum and minimum font sizes.
61
+ * @param size - The initial font size including the unit (i.e. px or pt)
62
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
63
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
64
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
65
+ * convert to a unit other than $baselineUnit.
66
+ */
67
+ /**
68
+ * Convert a font size to a dynamic font size.
69
+ * Fonts that participate in Dynamic Type should use
70
+ * dynamic font sizes.
71
+ * @param size - The initial font size including the unit (i.e. px or pt)
72
+ * @param unit (optional) - The unit to convert to. Use this if you want to
73
+ * convert to a unit other than $baselineUnit.
74
+ */
75
+ /**
76
+ * Convert a font size to a dynamic font size but impose
77
+ * a maximum font size.
78
+ * @param size - The initial font size including the unit (i.e. px or pt)
79
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
80
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
81
+ * convert to a unit other than $baselineUnit.
82
+ */
83
+ /**
84
+ * Convert a font size to a dynamic font size but impose
85
+ * a minimum font size.
86
+ * @param size - The initial font size including the unit (i.e. px or pt)
87
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
88
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
89
+ * convert to a unit other than $baselineUnit.
90
+ */
91
+ /**
92
+ * Convert a font size to a dynamic font size but impose
93
+ * maximum and minimum font sizes.
94
+ * @param size - The initial font size including the unit (i.e. px or pt)
95
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
96
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
97
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
98
+ * convert to a unit other than $baselineUnit.
99
+ */
100
+ /**
101
+ * Convert a font size to a dynamic font size.
102
+ * Fonts that participate in Dynamic Type should use
103
+ * dynamic font sizes.
104
+ * @param size - The initial font size including the unit (i.e. px or pt)
105
+ * @param unit (optional) - The unit to convert to. Use this if you want to
106
+ * convert to a unit other than $baselineUnit.
107
+ */
108
+ /**
109
+ * Convert a font size to a dynamic font size but impose
110
+ * a maximum font size.
111
+ * @param size - The initial font size including the unit (i.e. px or pt)
112
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
113
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
114
+ * convert to a unit other than $baselineUnit.
115
+ */
116
+ /**
117
+ * Convert a font size to a dynamic font size but impose
118
+ * a minimum font size.
119
+ * @param size - The initial font size including the unit (i.e. px or pt)
120
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
121
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
122
+ * convert to a unit other than $baselineUnit.
123
+ */
124
+ /**
125
+ * Convert a font size to a dynamic font size but impose
126
+ * maximum and minimum font sizes.
127
+ * @param size - The initial font size including the unit (i.e. px or pt)
128
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
129
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
130
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
131
+ * convert to a unit other than $baselineUnit.
132
+ */
1
133
  :host {
2
134
  position: absolute;
3
135
  width: fit-content;