@ionic/core 7.4.2-dev.11695832397.13fa6703 → 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 (454) 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/ion-back-button.js +2 -2
  6. package/components/ion-badge.js +2 -2
  7. package/components/ion-breadcrumb.js +2 -2
  8. package/components/ion-card-content.js +2 -2
  9. package/components/ion-card-subtitle.js +2 -2
  10. package/components/ion-card-title.js +2 -2
  11. package/components/ion-card.js +2 -2
  12. package/components/ion-chip.js +8 -3
  13. package/components/ion-content.js +5 -51
  14. package/components/ion-datetime-button.js +2 -2
  15. package/components/ion-datetime.js +3 -3
  16. package/components/ion-header.js +1 -1
  17. package/components/ion-input.js +2 -2
  18. package/components/ion-item-divider.js +2 -2
  19. package/components/ion-item-option.js +2 -2
  20. package/components/ion-item-options.js +2 -2
  21. package/components/ion-loading.js +2 -2
  22. package/components/ion-menu-button.js +2 -2
  23. package/components/ion-nav.js +1 -1
  24. package/components/ion-range.js +2 -2
  25. package/components/ion-reorder.js +2 -2
  26. package/components/ion-router-outlet.js +1 -1
  27. package/components/ion-searchbar.js +9 -3
  28. package/components/ion-select.js +2 -2
  29. package/components/ion-tab-bar.js +0 -4
  30. package/components/ion-textarea.js +2 -2
  31. package/components/ion-title.js +2 -2
  32. package/components/ion-toast.js +2 -2
  33. package/components/ion-toolbar.js +1 -1
  34. package/components/ios.transition.js +4 -4
  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/radio.js +2 -2
  40. package/css/core.css +101 -0
  41. package/css/core.css.map +1 -1
  42. package/css/display.css +33 -0
  43. package/css/display.css.map +1 -1
  44. package/css/float-elements.css +33 -0
  45. package/css/float-elements.css.map +1 -1
  46. package/css/global.bundle.css +84 -6
  47. package/css/global.bundle.css.map +1 -1
  48. package/css/ionic-swiper.css +33 -0
  49. package/css/ionic-swiper.css.map +1 -1
  50. package/css/ionic.bundle.css +1 -1
  51. package/css/ionic.bundle.css.map +1 -1
  52. package/css/padding.css +33 -0
  53. package/css/padding.css.map +1 -1
  54. package/css/structure.css +33 -0
  55. package/css/structure.css.map +1 -1
  56. package/css/text-alignment.css +33 -0
  57. package/css/text-alignment.css.map +1 -1
  58. package/css/text-transformation.css +33 -0
  59. package/css/text-transformation.css.map +1 -1
  60. package/css/typography.css +51 -6
  61. package/css/typography.css.map +1 -1
  62. package/css/utils.bundle.css +165 -0
  63. package/css/utils.bundle.css.map +1 -1
  64. package/dist/cjs/{index-b183138a.js → index-4e502bd1.js} +2 -2
  65. package/dist/cjs/index.cjs.js +3 -3
  66. package/dist/cjs/ion-action-sheet.cjs.entry.js +2 -2
  67. package/dist/cjs/ion-app_8.cjs.entry.js +11 -57
  68. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  69. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  70. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  71. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  72. package/dist/cjs/ion-card_5.cjs.entry.js +8 -8
  73. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  74. package/dist/cjs/ion-chip.cjs.entry.js +7 -2
  75. package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-datetime_3.cjs.entry.js +3 -3
  77. package/dist/cjs/ion-input.cjs.entry.js +2 -2
  78. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  79. package/dist/cjs/ion-item_8.cjs.entry.js +10 -10
  80. package/dist/cjs/ion-loading.cjs.entry.js +2 -2
  81. package/dist/cjs/ion-menu_3.cjs.entry.js +2 -2
  82. package/dist/cjs/ion-modal.cjs.entry.js +1 -1
  83. package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-popover.cjs.entry.js +1 -1
  85. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  86. package/dist/cjs/ion-range.cjs.entry.js +2 -2
  87. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  88. package/dist/cjs/ion-searchbar.cjs.entry.js +9 -3
  89. package/dist/cjs/ion-select_3.cjs.entry.js +2 -2
  90. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +0 -4
  91. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  92. package/dist/cjs/ion-toast.cjs.entry.js +2 -2
  93. package/dist/cjs/ionic.cjs.js +1 -1
  94. package/dist/cjs/{ios.transition-4b93903d.js → ios.transition-7ff33297.js} +5 -5
  95. package/dist/cjs/loader.cjs.js +1 -1
  96. package/dist/cjs/{md.transition-79f3a215.js → md.transition-2224e480.js} +1 -1
  97. package/dist/collection/components/accordion/accordion.ios.css +66 -0
  98. package/dist/collection/components/accordion/accordion.md.css +33 -0
  99. package/dist/collection/components/accordion-group/accordion-group.ios.css +66 -0
  100. package/dist/collection/components/accordion-group/accordion-group.md.css +99 -0
  101. package/dist/collection/components/action-sheet/action-sheet.ios.css +80 -12
  102. package/dist/collection/components/action-sheet/action-sheet.md.css +76 -8
  103. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +27 -0
  104. package/dist/collection/components/alert/alert.ios.css +99 -0
  105. package/dist/collection/components/alert/alert.md.css +99 -0
  106. package/dist/collection/components/avatar/avatar.ios.css +66 -0
  107. package/dist/collection/components/avatar/avatar.md.css +66 -0
  108. package/dist/collection/components/back-button/back-button.ios.css +83 -1
  109. package/dist/collection/components/back-button/back-button.md.css +75 -3
  110. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +26 -0
  111. package/dist/collection/components/backdrop/backdrop.ios.css +66 -0
  112. package/dist/collection/components/backdrop/backdrop.md.css +66 -0
  113. package/dist/collection/components/badge/badge.ios.css +75 -1
  114. package/dist/collection/components/badge/badge.md.css +67 -1
  115. package/dist/collection/components/badge/test/a11y/badge.e2e.js +22 -0
  116. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +80 -3
  117. package/dist/collection/components/breadcrumb/breadcrumb.md.css +69 -3
  118. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +33 -0
  119. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +33 -0
  120. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +21 -0
  121. package/dist/collection/components/button/button.ios.css +118 -19
  122. package/dist/collection/components/button/button.md.css +69 -3
  123. package/dist/collection/components/button/test/a11y/button.e2e.js +61 -0
  124. package/dist/collection/components/buttons/buttons.ios.css +102 -3
  125. package/dist/collection/components/buttons/buttons.md.css +101 -2
  126. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +74 -0
  127. package/dist/collection/components/card/card.ios.css +67 -1
  128. package/dist/collection/components/card/card.md.css +67 -1
  129. package/dist/collection/components/card/test/a11y/card.e2e.js +31 -0
  130. package/dist/collection/components/card-content/card-content.ios.css +71 -5
  131. package/dist/collection/components/card-content/card-content.md.css +71 -5
  132. package/dist/collection/components/card-header/card-header.ios.css +66 -0
  133. package/dist/collection/components/card-header/card-header.md.css +66 -0
  134. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +67 -1
  135. package/dist/collection/components/card-subtitle/card-subtitle.md.css +67 -1
  136. package/dist/collection/components/card-title/card-title.ios.css +67 -1
  137. package/dist/collection/components/card-title/card-title.md.css +67 -1
  138. package/dist/collection/components/checkbox/checkbox.ios.css +101 -2
  139. package/dist/collection/components/checkbox/checkbox.md.css +101 -2
  140. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +18 -0
  141. package/dist/collection/components/chip/chip.ios.css +190 -0
  142. package/dist/collection/components/chip/chip.js +4 -2
  143. package/dist/collection/components/chip/{chip.css → chip.md.css} +43 -7
  144. package/dist/collection/components/chip/test/a11y/chip.e2e.js +58 -0
  145. package/dist/collection/components/col/col.css +66 -0
  146. package/dist/collection/components/content/content.css +33 -0
  147. package/dist/collection/components/content/content.js +10 -50
  148. package/dist/collection/components/datetime/datetime.ios.css +198 -7
  149. package/dist/collection/components/datetime/datetime.js +1 -1
  150. package/dist/collection/components/datetime/datetime.md.css +97 -5
  151. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +28 -0
  152. package/dist/collection/components/datetime-button/datetime-button.css +36 -2
  153. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +38 -0
  154. package/dist/collection/components/fab/fab.css +66 -0
  155. package/dist/collection/components/fab-button/fab-button.ios.css +66 -0
  156. package/dist/collection/components/fab-button/fab-button.md.css +66 -0
  157. package/dist/collection/components/fab-list/fab-list.css +66 -0
  158. package/dist/collection/components/footer/footer.ios.css +66 -0
  159. package/dist/collection/components/footer/footer.md.css +66 -0
  160. package/dist/collection/components/grid/grid.css +66 -0
  161. package/dist/collection/components/header/header.ios.css +71 -2
  162. package/dist/collection/components/header/header.md.css +66 -0
  163. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +66 -0
  164. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +66 -0
  165. package/dist/collection/components/input/input.ios.css +100 -1
  166. package/dist/collection/components/input/input.md.css +199 -1
  167. package/dist/collection/components/input/test/a11y/input.e2e.js +15 -1
  168. package/dist/collection/components/item/item.ios.css +70 -4
  169. package/dist/collection/components/item/item.md.css +138 -6
  170. package/dist/collection/components/item/test/a11y/item.e2e.js +116 -1
  171. package/dist/collection/components/item-divider/item-divider.ios.css +101 -9
  172. package/dist/collection/components/item-divider/item-divider.md.css +103 -11
  173. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +44 -0
  174. package/dist/collection/components/item-group/item-group.ios.css +68 -1
  175. package/dist/collection/components/item-group/item-group.md.css +68 -1
  176. package/dist/collection/components/item-option/item-option.ios.css +67 -1
  177. package/dist/collection/components/item-option/item-option.md.css +67 -1
  178. package/dist/collection/components/item-options/item-options.ios.css +99 -1
  179. package/dist/collection/components/item-options/item-options.md.css +99 -1
  180. package/dist/collection/components/item-sliding/item-sliding.css +33 -0
  181. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +34 -0
  182. package/dist/collection/components/label/label.ios.css +105 -6
  183. package/dist/collection/components/label/label.md.css +104 -5
  184. package/dist/collection/components/label/test/a11y/label.e2e.js +66 -0
  185. package/dist/collection/components/list/list.ios.css +99 -0
  186. package/dist/collection/components/list/list.md.css +99 -0
  187. package/dist/collection/components/list-header/list-header.ios.css +100 -1
  188. package/dist/collection/components/list-header/list-header.md.css +100 -1
  189. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +24 -0
  190. package/dist/collection/components/loading/loading.ios.css +67 -1
  191. package/dist/collection/components/loading/loading.md.css +67 -1
  192. package/dist/collection/components/loading/test/a11y/loading.e2e.js +19 -0
  193. package/dist/collection/components/menu/menu.ios.css +66 -0
  194. package/dist/collection/components/menu/menu.md.css +66 -0
  195. package/dist/collection/components/menu-button/menu-button.ios.css +70 -2
  196. package/dist/collection/components/menu-button/menu-button.md.css +71 -3
  197. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +20 -1
  198. package/dist/collection/components/modal/modal.ios.css +66 -0
  199. package/dist/collection/components/modal/modal.md.css +66 -0
  200. package/dist/collection/components/nav/nav.css +34 -0
  201. package/dist/collection/components/note/note.ios.css +67 -0
  202. package/dist/collection/components/note/note.md.css +67 -1
  203. package/dist/collection/components/note/test/a11y/note.e2e.js +52 -0
  204. package/dist/collection/components/picker/picker.ios.css +66 -0
  205. package/dist/collection/components/picker/picker.md.css +66 -0
  206. package/dist/collection/components/picker-column/picker-column.ios.css +66 -0
  207. package/dist/collection/components/picker-column/picker-column.md.css +66 -0
  208. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -0
  209. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +66 -0
  210. package/dist/collection/components/picker-internal/picker-internal.ios.css +66 -0
  211. package/dist/collection/components/picker-internal/picker-internal.md.css +66 -0
  212. package/dist/collection/components/popover/popover.ios.css +66 -0
  213. package/dist/collection/components/popover/popover.md.css +66 -0
  214. package/dist/collection/components/progress-bar/progress-bar.ios.css +33 -0
  215. package/dist/collection/components/progress-bar/progress-bar.md.css +33 -0
  216. package/dist/collection/components/radio/radio.ios.css +104 -5
  217. package/dist/collection/components/radio/radio.md.css +104 -5
  218. package/dist/collection/components/radio/test/a11y/radio.e2e.js +21 -0
  219. package/dist/collection/components/range/range.ios.css +82 -8
  220. package/dist/collection/components/range/range.md.css +99 -11
  221. package/dist/collection/components/range/test/a11y/range.e2e.js +22 -0
  222. package/dist/collection/components/refresher/refresher.ios.css +66 -0
  223. package/dist/collection/components/refresher/refresher.md.css +66 -0
  224. package/dist/collection/components/reorder/reorder.ios.css +75 -2
  225. package/dist/collection/components/reorder/reorder.md.css +75 -2
  226. package/dist/collection/components/reorder-group/reorder-group.css +33 -0
  227. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +33 -0
  228. package/dist/collection/components/ripple-effect/ripple-effect.css +33 -0
  229. package/dist/collection/components/router-link/router-link.css +33 -0
  230. package/dist/collection/components/router-outlet/router-outlet.css +34 -0
  231. package/dist/collection/components/row/row.css +66 -0
  232. package/dist/collection/components/searchbar/searchbar.ios.css +95 -16
  233. package/dist/collection/components/searchbar/searchbar.js +7 -1
  234. package/dist/collection/components/searchbar/searchbar.md.css +77 -10
  235. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +37 -0
  236. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +18 -0
  237. package/dist/collection/components/segment/segment.ios.css +99 -0
  238. package/dist/collection/components/segment/segment.md.css +99 -0
  239. package/dist/collection/components/segment-button/segment-button.ios.css +66 -0
  240. package/dist/collection/components/segment-button/segment-button.md.css +66 -0
  241. package/dist/collection/components/select/select.ios.css +102 -3
  242. package/dist/collection/components/select/select.md.css +167 -2
  243. package/dist/collection/components/select/test/a11y/select.e2e.js +22 -0
  244. package/dist/collection/components/select-popover/select-popover.ios.css +101 -1
  245. package/dist/collection/components/select-popover/select-popover.md.css +99 -0
  246. package/dist/collection/components/skeleton-text/skeleton-text.css +33 -0
  247. package/dist/collection/components/spinner/spinner.css +33 -0
  248. package/dist/collection/components/split-pane/split-pane.ios.css +99 -0
  249. package/dist/collection/components/split-pane/split-pane.md.css +99 -0
  250. package/dist/collection/components/tab-bar/tab-bar.ios.css +99 -0
  251. package/dist/collection/components/tab-bar/tab-bar.js +0 -21
  252. package/dist/collection/components/tab-bar/tab-bar.md.css +99 -0
  253. package/dist/collection/components/tab-button/tab-button.ios.css +66 -0
  254. package/dist/collection/components/tab-button/tab-button.md.css +66 -0
  255. package/dist/collection/components/tabs/tabs.css +33 -0
  256. package/dist/collection/components/text/text.css +33 -0
  257. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +15 -1
  258. package/dist/collection/components/textarea/textarea.ios.css +133 -1
  259. package/dist/collection/components/textarea/textarea.md.css +199 -1
  260. package/dist/collection/components/thumbnail/thumbnail.css +33 -0
  261. package/dist/collection/components/title/test/a11y/title.e2e.js +61 -0
  262. package/dist/collection/components/title/title.ios.css +44 -10
  263. package/dist/collection/components/title/title.md.css +35 -2
  264. package/dist/collection/components/toast/test/a11y/toast.e2e.js +98 -1
  265. package/dist/collection/components/toast/toast.ios.css +74 -3
  266. package/dist/collection/components/toast/toast.md.css +74 -4
  267. package/dist/collection/components/toggle/toggle.ios.css +99 -0
  268. package/dist/collection/components/toggle/toggle.md.css +99 -0
  269. package/dist/collection/components/toolbar/toolbar.ios.css +66 -14
  270. package/dist/collection/components/toolbar/toolbar.md.css +66 -0
  271. package/dist/collection/css/test/a11y/typography.e2e.js +32 -0
  272. package/dist/collection/utils/transition/ios.transition.js +4 -4
  273. package/dist/docs.json +7 -1
  274. package/dist/esm/{index-87684bba.js → index-39bc1180.js} +2 -2
  275. package/dist/esm/index.js +3 -3
  276. package/dist/esm/ion-action-sheet.entry.js +2 -2
  277. package/dist/esm/ion-app_8.entry.js +12 -58
  278. package/dist/esm/ion-avatar_3.entry.js +2 -2
  279. package/dist/esm/ion-back-button.entry.js +2 -2
  280. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  281. package/dist/esm/ion-button_2.entry.js +2 -2
  282. package/dist/esm/ion-card_5.entry.js +8 -8
  283. package/dist/esm/ion-checkbox.entry.js +2 -2
  284. package/dist/esm/ion-chip.entry.js +7 -2
  285. package/dist/esm/ion-datetime-button.entry.js +2 -2
  286. package/dist/esm/ion-datetime_3.entry.js +3 -3
  287. package/dist/esm/ion-input.entry.js +2 -2
  288. package/dist/esm/ion-item-option_3.entry.js +4 -4
  289. package/dist/esm/ion-item_8.entry.js +10 -10
  290. package/dist/esm/ion-loading.entry.js +2 -2
  291. package/dist/esm/ion-menu_3.entry.js +2 -2
  292. package/dist/esm/ion-modal.entry.js +1 -1
  293. package/dist/esm/ion-nav_2.entry.js +2 -2
  294. package/dist/esm/ion-popover.entry.js +1 -1
  295. package/dist/esm/ion-radio_2.entry.js +2 -2
  296. package/dist/esm/ion-range.entry.js +2 -2
  297. package/dist/esm/ion-reorder_2.entry.js +2 -2
  298. package/dist/esm/ion-searchbar.entry.js +9 -3
  299. package/dist/esm/ion-select_3.entry.js +2 -2
  300. package/dist/esm/ion-tab-bar_2.entry.js +0 -4
  301. package/dist/esm/ion-textarea.entry.js +2 -2
  302. package/dist/esm/ion-toast.entry.js +2 -2
  303. package/dist/esm/ionic.js +1 -1
  304. package/dist/esm/{ios.transition-81e1aed6.js → ios.transition-72ffa6ed.js} +5 -5
  305. package/dist/esm/loader.js +1 -1
  306. package/dist/esm/{md.transition-5becd8b5.js → md.transition-e6a907d4.js} +1 -1
  307. package/dist/esm-es5/{index-87684bba.js → index-39bc1180.js} +1 -1
  308. package/dist/esm-es5/index.js +1 -1
  309. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  310. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  311. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  312. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  313. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  314. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  315. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  316. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  317. package/dist/esm-es5/ion-chip.entry.js +1 -1
  318. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  319. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  320. package/dist/esm-es5/ion-input.entry.js +1 -1
  321. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  322. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  323. package/dist/esm-es5/ion-loading.entry.js +1 -1
  324. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  325. package/dist/esm-es5/ion-modal.entry.js +1 -1
  326. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  327. package/dist/esm-es5/ion-popover.entry.js +1 -1
  328. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  329. package/dist/esm-es5/ion-range.entry.js +1 -1
  330. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  331. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  332. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  333. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  334. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  335. package/dist/esm-es5/ion-toast.entry.js +1 -1
  336. package/dist/esm-es5/ionic.js +1 -1
  337. package/dist/esm-es5/ios.transition-72ffa6ed.js +4 -0
  338. package/dist/esm-es5/loader.js +1 -1
  339. package/dist/esm-es5/{md.transition-5becd8b5.js → md.transition-e6a907d4.js} +1 -1
  340. package/dist/ionic/index.esm.js +1 -1
  341. package/dist/ionic/ionic.esm.js +1 -1
  342. package/dist/ionic/p-0610d658.entry.js +4 -0
  343. package/dist/ionic/p-06c29a8b.entry.js +4 -0
  344. package/dist/ionic/{p-ee6d9730.entry.js → p-09babc88.entry.js} +1 -1
  345. package/dist/ionic/p-0c535e5a.system.entry.js +4 -0
  346. package/dist/ionic/p-160d0dfd.system.entry.js +4 -0
  347. package/dist/ionic/p-1c1c18b3.system.entry.js +4 -0
  348. package/dist/ionic/p-234a7edb.js +4 -0
  349. package/dist/ionic/{p-b95fd3c6.entry.js → p-2a393411.entry.js} +1 -1
  350. package/dist/ionic/p-2b8cd28f.entry.js +4 -0
  351. package/dist/ionic/{p-f8f60fbf.entry.js → p-2c35490e.entry.js} +1 -1
  352. package/dist/ionic/{p-27614d55.entry.js → p-2e93e3db.entry.js} +1 -1
  353. package/dist/ionic/{p-40e16caa.system.entry.js → p-2f1ba678.system.entry.js} +1 -1
  354. package/dist/ionic/{p-13a91505.entry.js → p-380ef450.entry.js} +1 -1
  355. package/dist/ionic/p-3ae2faf0.entry.js +4 -0
  356. package/dist/ionic/{p-a720dc73.entry.js → p-3b104ae6.entry.js} +1 -1
  357. package/dist/ionic/p-3e1b4045.system.entry.js +4 -0
  358. package/dist/ionic/p-4342501d.entry.js +4 -0
  359. package/dist/ionic/{p-b098f738.system.js → p-442f2497.system.js} +1 -1
  360. package/dist/ionic/p-450fe187.system.entry.js +4 -0
  361. package/dist/ionic/p-47c15b22.system.entry.js +4 -0
  362. package/dist/ionic/p-4d0eb845.system.entry.js +4 -0
  363. package/dist/ionic/p-4e4bedbd.entry.js +4 -0
  364. package/dist/ionic/p-50d2e748.js +4 -0
  365. package/dist/ionic/p-5a5ff46b.system.entry.js +4 -0
  366. package/dist/ionic/p-5c790762.system.js +4 -0
  367. package/dist/ionic/p-5e84b718.system.entry.js +4 -0
  368. package/dist/ionic/p-622d7b0e.system.entry.js +4 -0
  369. package/dist/ionic/p-6edbc09b.system.js +1 -1
  370. package/dist/ionic/p-6f940aec.system.entry.js +4 -0
  371. package/dist/ionic/p-7302a3e1.entry.js +4 -0
  372. package/dist/ionic/p-74824d64.entry.js +4 -0
  373. package/dist/ionic/{p-4912b933.entry.js → p-784863dd.entry.js} +1 -1
  374. package/dist/ionic/{p-37456282.system.entry.js → p-7ea21b21.system.entry.js} +1 -1
  375. package/dist/ionic/p-857591f7.system.entry.js +4 -0
  376. package/dist/ionic/p-86859d57.system.entry.js +4 -0
  377. package/dist/ionic/p-8d5c7b4e.system.entry.js +4 -0
  378. package/dist/ionic/p-8e06ca5e.entry.js +4 -0
  379. package/dist/ionic/p-9493d5e8.system.entry.js +4 -0
  380. package/dist/ionic/p-969e9fce.system.entry.js +4 -0
  381. package/dist/ionic/p-972817e1.js +4 -0
  382. package/dist/ionic/p-9ad5893a.entry.js +4 -0
  383. package/dist/ionic/{p-13ce151b.entry.js → p-a0a87b9c.entry.js} +1 -1
  384. package/dist/ionic/p-af14deab.system.entry.js +4 -0
  385. package/dist/ionic/p-b2215bd4.entry.js +4 -0
  386. package/dist/ionic/p-b8846173.entry.js +4 -0
  387. package/dist/ionic/p-bb8365af.system.entry.js +4 -0
  388. package/dist/ionic/p-be22efa8.entry.js +4 -0
  389. package/dist/ionic/p-c3d501f5.system.entry.js +4 -0
  390. package/dist/ionic/{p-cc3aa152.entry.js → p-c68b68b1.entry.js} +1 -1
  391. package/dist/ionic/p-c872a0a0.entry.js +4 -0
  392. package/dist/ionic/{p-918d5f19.system.js → p-ca9b6832.system.js} +1 -1
  393. package/dist/ionic/p-daf85ebe.entry.js +4 -0
  394. package/dist/ionic/p-db3f69d6.entry.js +4 -0
  395. package/dist/ionic/p-df16bb3f.system.entry.js +4 -0
  396. package/dist/ionic/{p-65a4c12f.system.entry.js → p-e64ce6ad.system.entry.js} +1 -1
  397. package/dist/ionic/p-e8fa3573.system.entry.js +4 -0
  398. package/dist/ionic/p-edbec144.entry.js +4 -0
  399. package/dist/ionic/{p-8fdd4a2f.system.js → p-f39999bb.system.js} +1 -1
  400. package/dist/ionic/p-f474437d.system.entry.js +4 -0
  401. package/dist/ionic/p-f5ebccec.entry.js +4 -0
  402. package/dist/ionic/p-f8eaac8b.system.entry.js +4 -0
  403. package/dist/ionic/p-fa1a57ae.system.entry.js +4 -0
  404. package/dist/types/components/content/content.d.ts +1 -2
  405. package/dist/types/components/tab-bar/tab-bar.d.ts +0 -8
  406. package/hydrate/index.js +90 -129
  407. package/package.json +2 -2
  408. package/dist/esm-es5/ios.transition-81e1aed6.js +0 -4
  409. package/dist/ionic/p-09e15a2a.system.entry.js +0 -4
  410. package/dist/ionic/p-0bd3cc92.entry.js +0 -4
  411. package/dist/ionic/p-1a36bf45.system.entry.js +0 -4
  412. package/dist/ionic/p-1bce805b.entry.js +0 -4
  413. package/dist/ionic/p-1c406ee0.system.entry.js +0 -4
  414. package/dist/ionic/p-1f6ac05b.system.entry.js +0 -4
  415. package/dist/ionic/p-20e5eb3e.entry.js +0 -4
  416. package/dist/ionic/p-3c0b06ef.system.entry.js +0 -4
  417. package/dist/ionic/p-3cbcb899.entry.js +0 -4
  418. package/dist/ionic/p-4616f20a.system.entry.js +0 -4
  419. package/dist/ionic/p-53bbd357.system.entry.js +0 -4
  420. package/dist/ionic/p-568fec78.entry.js +0 -4
  421. package/dist/ionic/p-5c8c9748.system.entry.js +0 -4
  422. package/dist/ionic/p-5e0cf844.system.entry.js +0 -4
  423. package/dist/ionic/p-5e2dc8e0.js +0 -4
  424. package/dist/ionic/p-60838ce3.system.entry.js +0 -4
  425. package/dist/ionic/p-67c441fa.entry.js +0 -4
  426. package/dist/ionic/p-6ba07931.system.entry.js +0 -4
  427. package/dist/ionic/p-6ca0e4b2.system.entry.js +0 -4
  428. package/dist/ionic/p-7129d04e.entry.js +0 -4
  429. package/dist/ionic/p-72a1cbc7.js +0 -4
  430. package/dist/ionic/p-73f50e29.system.js +0 -4
  431. package/dist/ionic/p-78a293a5.js +0 -4
  432. package/dist/ionic/p-7dc0ee11.system.entry.js +0 -4
  433. package/dist/ionic/p-7e46b6ab.entry.js +0 -4
  434. package/dist/ionic/p-7e9e16bf.system.entry.js +0 -4
  435. package/dist/ionic/p-82da795c.system.entry.js +0 -4
  436. package/dist/ionic/p-82f58c25.system.entry.js +0 -4
  437. package/dist/ionic/p-875a2dce.entry.js +0 -4
  438. package/dist/ionic/p-88ad9cb6.entry.js +0 -4
  439. package/dist/ionic/p-8b79baf0.entry.js +0 -4
  440. package/dist/ionic/p-a6d8476b.system.entry.js +0 -4
  441. package/dist/ionic/p-b0dd4f33.entry.js +0 -4
  442. package/dist/ionic/p-b49fe110.entry.js +0 -4
  443. package/dist/ionic/p-be321bb6.system.entry.js +0 -4
  444. package/dist/ionic/p-c4d08d6d.system.entry.js +0 -4
  445. package/dist/ionic/p-cd675d89.system.entry.js +0 -4
  446. package/dist/ionic/p-ce24ddd7.system.entry.js +0 -4
  447. package/dist/ionic/p-d8b2c214.entry.js +0 -4
  448. package/dist/ionic/p-de0f1af2.system.entry.js +0 -4
  449. package/dist/ionic/p-de676d36.system.entry.js +0 -4
  450. package/dist/ionic/p-e89abe38.system.entry.js +0 -4
  451. package/dist/ionic/p-ea88031d.entry.js +0 -4
  452. package/dist/ionic/p-ebaeeee8.entry.js +0 -4
  453. package/dist/ionic/p-f0dcf99b.entry.js +0 -4
  454. package/dist/ionic/p-f920f5ca.entry.js +0 -4
@@ -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 --size: Size of the checkbox icon
@@ -343,15 +376,81 @@ input {
343
376
  pointer-events: none;
344
377
  }
345
378
 
379
+ /**
380
+ * Convert a font size to a dynamic font size.
381
+ * Fonts that participate in Dynamic Type should use
382
+ * dynamic font sizes.
383
+ * @param size - The initial font size including the unit (i.e. px or pt)
384
+ * @param unit (optional) - The unit to convert to. Use this if you want to
385
+ * convert to a unit other than $baselineUnit.
386
+ */
387
+ /**
388
+ * Convert a font size to a dynamic font size but impose
389
+ * a maximum font size.
390
+ * @param size - The initial font size including the unit (i.e. px or pt)
391
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
392
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
393
+ * convert to a unit other than $baselineUnit.
394
+ */
395
+ /**
396
+ * Convert a font size to a dynamic font size but impose
397
+ * a minimum font size.
398
+ * @param size - The initial font size including the unit (i.e. px or pt)
399
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
400
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
401
+ * convert to a unit other than $baselineUnit.
402
+ */
403
+ /**
404
+ * Convert a font size to a dynamic font size but impose
405
+ * maximum and minimum font sizes.
406
+ * @param size - The initial font size including the unit (i.e. px or pt)
407
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
408
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
409
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
410
+ * convert to a unit other than $baselineUnit.
411
+ */
412
+ /**
413
+ * Convert a font size to a dynamic font size.
414
+ * Fonts that participate in Dynamic Type should use
415
+ * dynamic font sizes.
416
+ * @param size - The initial font size including the unit (i.e. px or pt)
417
+ * @param unit (optional) - The unit to convert to. Use this if you want to
418
+ * convert to a unit other than $baselineUnit.
419
+ */
420
+ /**
421
+ * Convert a font size to a dynamic font size but impose
422
+ * a maximum font size.
423
+ * @param size - The initial font size including the unit (i.e. px or pt)
424
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
425
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
426
+ * convert to a unit other than $baselineUnit.
427
+ */
428
+ /**
429
+ * Convert a font size to a dynamic font size but impose
430
+ * a minimum font size.
431
+ * @param size - The initial font size including the unit (i.e. px or pt)
432
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
433
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
434
+ * convert to a unit other than $baselineUnit.
435
+ */
436
+ /**
437
+ * Convert a font size to a dynamic font size but impose
438
+ * maximum and minimum font sizes.
439
+ * @param size - The initial font size including the unit (i.e. px or pt)
440
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
441
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
442
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
443
+ * convert to a unit other than $baselineUnit.
444
+ */
346
445
  :host {
347
446
  --border-radius: calc(var(--size) * .125);
348
- --border-width: 2px;
447
+ --border-width: 0.125rem;
349
448
  --border-style: solid;
350
449
  --border-color: rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);
351
450
  --checkmark-width: 3;
352
451
  --checkbox-background: var(--ion-item-background, var(--ion-background-color, #fff));
353
452
  --transition: background 180ms cubic-bezier(0.4, 0, 0.2, 1);
354
- --size: 18px;
453
+ --size: 1.125rem;
355
454
  }
356
455
 
357
456
  .checkbox-icon path {
@@ -13,3 +13,21 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
13
13
  });
14
14
  });
15
15
  });
16
+ configs({ directions: ['ltr'] }).forEach(({ title, config, screenshot }) => {
17
+ test.describe(title('checkbox: a11y'), () => {
18
+ test.describe(title('checkbox: font scaling'), () => {
19
+ test('should scale text on larger font sizes', async ({ page }) => {
20
+ await page.setContent(`
21
+ <style>
22
+ html {
23
+ font-size: 310%;
24
+ }
25
+ </style>
26
+ <ion-checkbox justify="start" checked>Checked</ion-checkbox>
27
+ `, config);
28
+ const checkbox = page.locator('ion-checkbox');
29
+ await expect(checkbox).toHaveScreenshot(screenshot('checkbox-scale'));
30
+ });
31
+ });
32
+ });
33
+ });
@@ -0,0 +1,190 @@
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
+ :host {
35
+ /**
36
+ * @prop --background: Background of the chip
37
+ * @prop --color: Color of the chip
38
+ */
39
+ --background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.12);
40
+ --color: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.87);
41
+ border-radius: 16px;
42
+ -moz-osx-font-smoothing: grayscale;
43
+ -webkit-font-smoothing: antialiased;
44
+ -webkit-margin-start: 4px;
45
+ margin-inline-start: 4px;
46
+ -webkit-margin-end: 4px;
47
+ margin-inline-end: 4px;
48
+ margin-top: 4px;
49
+ margin-bottom: 4px;
50
+ -webkit-padding-start: 12px;
51
+ padding-inline-start: 12px;
52
+ -webkit-padding-end: 12px;
53
+ padding-inline-end: 12px;
54
+ padding-top: 6px;
55
+ padding-bottom: 6px;
56
+ display: inline-flex;
57
+ position: relative;
58
+ align-items: center;
59
+ min-height: 32px;
60
+ background: var(--background);
61
+ color: var(--color);
62
+ font-family: var(--ion-font-family, inherit);
63
+ cursor: pointer;
64
+ overflow: hidden;
65
+ vertical-align: middle;
66
+ box-sizing: border-box;
67
+ }
68
+
69
+ :host(.chip-disabled) {
70
+ cursor: default;
71
+ opacity: 0.4;
72
+ pointer-events: none;
73
+ }
74
+
75
+ :host(.ion-color) {
76
+ background: rgba(var(--ion-color-base-rgb), 0.08);
77
+ color: var(--ion-color-shade);
78
+ }
79
+
80
+ :host(.ion-color:focus) {
81
+ background: rgba(var(--ion-color-base-rgb), 0.12);
82
+ }
83
+
84
+ :host(.ion-color.ion-activated) {
85
+ background: rgba(var(--ion-color-base-rgb), 0.16);
86
+ }
87
+
88
+ :host(.chip-outline) {
89
+ border-width: 1px;
90
+ border-style: solid;
91
+ }
92
+
93
+ :host(.chip-outline) {
94
+ border-color: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.32);
95
+ background: transparent;
96
+ }
97
+
98
+ :host(.chip-outline.ion-color) {
99
+ border-color: rgba(var(--ion-color-base-rgb), 0.32);
100
+ }
101
+
102
+ :host(.chip-outline:not(.ion-color):focus) {
103
+ background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.04);
104
+ }
105
+
106
+ :host(.chip-outline.ion-activated:not(.ion-color)) {
107
+ background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.08);
108
+ }
109
+
110
+ ::slotted(ion-icon) {
111
+ font-size: 1.4285714286em;
112
+ }
113
+
114
+ :host(:not(.ion-color)) ::slotted(ion-icon) {
115
+ color: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.54);
116
+ }
117
+
118
+ ::slotted(ion-icon:first-child) {
119
+ -webkit-margin-start: -4px;
120
+ margin-inline-start: -4px;
121
+ -webkit-margin-end: 8px;
122
+ margin-inline-end: 8px;
123
+ margin-top: -4px;
124
+ margin-bottom: -4px;
125
+ }
126
+
127
+ ::slotted(ion-icon:last-child) {
128
+ -webkit-margin-start: 8px;
129
+ margin-inline-start: 8px;
130
+ -webkit-margin-end: -4px;
131
+ margin-inline-end: -4px;
132
+ margin-top: -4px;
133
+ margin-bottom: -4px;
134
+ }
135
+
136
+ ::slotted(ion-avatar) {
137
+ flex-shrink: 0;
138
+ width: 1.7142857143em;
139
+ height: 1.7142857143em;
140
+ }
141
+
142
+ ::slotted(ion-avatar:first-child) {
143
+ -webkit-margin-start: -8px;
144
+ margin-inline-start: -8px;
145
+ -webkit-margin-end: 8px;
146
+ margin-inline-end: 8px;
147
+ margin-top: -4px;
148
+ margin-bottom: -4px;
149
+ }
150
+
151
+ ::slotted(ion-avatar:last-child) {
152
+ -webkit-margin-start: 8px;
153
+ margin-inline-start: 8px;
154
+ -webkit-margin-end: -8px;
155
+ margin-inline-end: -8px;
156
+ margin-top: -4px;
157
+ margin-bottom: -4px;
158
+ }
159
+
160
+ :host(:focus) {
161
+ outline: none;
162
+ }
163
+
164
+ :host(:focus) {
165
+ --background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.16);
166
+ }
167
+
168
+ :host(.ion-activated) {
169
+ --background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.2);
170
+ }
171
+
172
+ @media (any-hover: hover) {
173
+ :host(:hover) {
174
+ --background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.16);
175
+ }
176
+ :host(.ion-color:hover) {
177
+ background: rgba(var(--ion-color-base-rgb), 0.12);
178
+ }
179
+ :host(.chip-outline:not(.ion-color):hover) {
180
+ background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.04);
181
+ }
182
+ }
183
+ :host {
184
+ /**
185
+ * Main content should be prioritized on iOS,
186
+ * so we set max font size for chips.
187
+ * We add a min font size to keep the text legible.
188
+ */
189
+ font-size: clamp(13px, 0.875rem, 22px);
190
+ }
@@ -26,12 +26,14 @@ export class Chip {
26
26
  static get encapsulation() { return "shadow"; }
27
27
  static get originalStyleUrls() {
28
28
  return {
29
- "$": ["chip.scss"]
29
+ "ios": ["chip.ios.scss"],
30
+ "md": ["chip.md.scss"]
30
31
  };
31
32
  }
32
33
  static get styleUrls() {
33
34
  return {
34
- "$": ["chip.css"]
35
+ "ios": ["chip.ios.css"],
36
+ "md": ["chip.md.css"]
35
37
  };
36
38
  }
37
39
  static get properties() {
@@ -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 chip
@@ -18,16 +51,15 @@
18
51
  padding-inline-start: 12px;
19
52
  -webkit-padding-end: 12px;
20
53
  padding-inline-end: 12px;
21
- padding-top: 7px;
22
- padding-bottom: 7px;
54
+ padding-top: 6px;
55
+ padding-bottom: 6px;
23
56
  display: inline-flex;
24
57
  position: relative;
25
58
  align-items: center;
26
- height: 32px;
59
+ min-height: 32px;
27
60
  background: var(--background);
28
61
  color: var(--color);
29
62
  font-family: var(--ion-font-family, inherit);
30
- font-size: 14px;
31
63
  cursor: pointer;
32
64
  overflow: hidden;
33
65
  vertical-align: middle;
@@ -76,7 +108,7 @@
76
108
  }
77
109
 
78
110
  ::slotted(ion-icon) {
79
- font-size: 20px;
111
+ font-size: 1.4285714286em;
80
112
  }
81
113
 
82
114
  :host(:not(.ion-color)) ::slotted(ion-icon) {
@@ -102,8 +134,9 @@
102
134
  }
103
135
 
104
136
  ::slotted(ion-avatar) {
105
- width: 24px;
106
- height: 24px;
137
+ flex-shrink: 0;
138
+ width: 1.7142857143em;
139
+ height: 1.7142857143em;
107
140
  }
108
141
 
109
142
  ::slotted(ion-avatar:first-child) {
@@ -146,4 +179,7 @@
146
179
  :host(.chip-outline:not(.ion-color):hover) {
147
180
  background: rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.04);
148
181
  }
182
+ }
183
+ :host {
184
+ font-size: 0.875rem;
149
185
  }
@@ -0,0 +1,58 @@
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
+ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
7
+ /**
8
+ * Font scaling does not vary across directions.
9
+ */
10
+ test.describe(title('chip: font scaling'), () => {
11
+ test('should scale text', async ({ page }) => {
12
+ await page.setContent(`
13
+ <style>
14
+ html {
15
+ font-size: 30px;
16
+ }
17
+ </style>
18
+ <ion-chip>
19
+ <ion-avatar>
20
+ <img
21
+ src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjYzVkYmZmIiBkPSJNMCAwaDUxMnY1MTJIMHoiLz48cGF0aCBkPSJNMjU2IDMwNGM2MS42IDAgMTEyLTUwLjQgMTEyLTExMlMzMTcuNiA4MCAyNTYgODBzLTExMiA1MC40LTExMiAxMTIgNTAuNCAxMTIgMTEyIDExMnptMCA0MGMtNzQuMiAwLTIyNCAzNy44LTIyNCAxMTJ2NTZoNDQ4di01NmMwLTc0LjItMTQ5LjgtMTEyLTIyNC0xMTJ6IiBmaWxsPSIjODJhZWZmIi8+PC9zdmc+"
22
+ />
23
+ </ion-avatar>
24
+ <ion-label>With Icon and Avatar</ion-label>
25
+ <ion-icon name="close-circle"></ion-icon>
26
+ </ion-chip>`, config);
27
+ const chip = page.locator('ion-chip');
28
+ await expect(chip).toHaveScreenshot(screenshot('chip-scale'));
29
+ });
30
+ });
31
+ });
32
+ configs({ directions: ['ltr'], modes: ['md'] }).forEach(({ title, screenshot, config }) => {
33
+ /**
34
+ * Font scaling does not vary across directions
35
+ * ios mode has a min font size
36
+ */
37
+ test.describe(title('chip: contents at large scale'), () => {
38
+ test('should handle contents wider than chip', async ({ page }) => {
39
+ await page.setContent(`
40
+ <style>
41
+ html {
42
+ font-size: 48px;
43
+ }
44
+ </style>
45
+ <ion-chip>
46
+ <ion-avatar>
47
+ <img
48
+ src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjYzVkYmZmIiBkPSJNMCAwaDUxMnY1MTJIMHoiLz48cGF0aCBkPSJNMjU2IDMwNGM2MS42IDAgMTEyLTUwLjQgMTEyLTExMlMzMTcuNiA4MCAyNTYgODBzLTExMiA1MC40LTExMiAxMTIgNTAuNCAxMTIgMTEyIDExMnptMCA0MGMtNzQuMiAwLTIyNCAzNy44LTIyNCAxMTJ2NTZoNDQ4di01NmMwLTc0LjItMTQ5LjgtMTEyLTIyNC0xMTJ6IiBmaWxsPSIjODJhZWZmIi8+PC9zdmc+"
49
+ />
50
+ </ion-avatar>
51
+ <ion-label>With Icon and Avatar</ion-label>
52
+ <ion-icon name="close-circle"></ion-icon>
53
+ </ion-chip>`, config);
54
+ const chip = page.locator('ion-chip');
55
+ await expect(chip).toHaveScreenshot(screenshot('chip-large-contents'));
56
+ });
57
+ });
58
+ });
@@ -1,3 +1,69 @@
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
+ */
1
67
  :host {
2
68
  /**
3
69
  * @prop --ion-grid-columns: The number of total Columns in the Grid
@@ -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 content
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { Build, Host, forceUpdate, h, readTask } from "@stencil/core";
5
- import { componentOnReady, hasLazyBuild } from "../../utils/helpers";
5
+ import { componentOnReady } from "../../utils/helpers";
6
6
  import { isPlatform } from "../../utils/platform";
7
7
  import { isRTL } from "../../utils/rtl/index";
8
8
  import { createColorClasses, hostContext } from "../../utils/theme";
@@ -24,7 +24,6 @@ export class Content {
24
24
  this.cBottom = -1;
25
25
  this.isMainContent = true;
26
26
  this.resizeTimeout = null;
27
- this.tabsElement = null;
28
27
  // Detail is used in a hot loop in the scroll event, by allocating it here
29
28
  // V8 will be able to inline any read/write to it since it's a monomorphic class.
30
29
  // https://mrale.ph/blog/2015/01/11/whats-up-with-monomorphism.html
@@ -55,57 +54,12 @@ export class Content {
55
54
  }
56
55
  connectedCallback() {
57
56
  this.isMainContent = this.el.closest('ion-menu, ion-popover, ion-modal') === null;
58
- /**
59
- * The fullscreen content offsets need to be
60
- * computed after the tab bar has loaded. Since
61
- * lazy evaluation means components are not hydrated
62
- * at the same time, we need to wait for the ionTabBarLoaded
63
- * event to fire. This does not impact dist-custom-elements
64
- * because there is no hydration there.
65
- */
66
- if (hasLazyBuild(this.el)) {
67
- /**
68
- * We need to cache the reference to the tabs.
69
- * If just the content is unmounted then we won't
70
- * be able to query for the closest tabs on disconnectedCallback
71
- * since the content has been removed from the DOM tree.
72
- */
73
- const closestTabs = (this.tabsElement = this.el.closest('ion-tabs'));
74
- if (closestTabs !== null) {
75
- /**
76
- * When adding and removing the event listener
77
- * we need to make sure we pass the same function reference
78
- * otherwise the event listener will not be removed properly.
79
- * We can't only pass `this.resize` because "this" in the function
80
- * context becomes a reference to IonTabs instead of IonContent.
81
- *
82
- * Additionally, we listen for ionTabBarLoaded on the IonTabs
83
- * instance rather than the IonTabBar instance. It's possible for
84
- * a tab bar to be conditionally rendered/mounted. Since ionTabBarLoaded
85
- * bubbles, we can catch any instances of child tab bars loading by listening
86
- * on IonTabs.
87
- */
88
- this.tabsLoadCallback = () => this.resize();
89
- closestTabs.addEventListener('ionTabBarLoaded', this.tabsLoadCallback);
90
- }
91
- }
92
57
  }
93
58
  disconnectedCallback() {
94
59
  this.onScrollEnd();
95
- if (hasLazyBuild(this.el)) {
96
- /**
97
- * The event listener and tabs caches need to
98
- * be cleared otherwise this will create a memory
99
- * leak where the IonTabs instance can never be
100
- * garbage collected.
101
- */
102
- const { tabsElement, tabsLoadCallback } = this;
103
- if (tabsElement !== null && tabsLoadCallback !== undefined) {
104
- tabsElement.removeEventListener('ionTabBarLoaded', tabsLoadCallback);
105
- }
106
- this.tabsElement = null;
107
- this.tabsLoadCallback = undefined;
108
- }
60
+ }
61
+ onAppLoad() {
62
+ this.resize();
109
63
  }
110
64
  /**
111
65
  * Rotating certain devices can update
@@ -737,6 +691,12 @@ export class Content {
737
691
  static get elementRef() { return "el"; }
738
692
  static get listeners() {
739
693
  return [{
694
+ "name": "appload",
695
+ "method": "onAppLoad",
696
+ "target": "window",
697
+ "capture": false,
698
+ "passive": false
699
+ }, {
740
700
  "name": "resize",
741
701
  "method": "onResize",
742
702
  "target": "window",