@ionic/core 8.0.0-dev.11712072527.1dd97c66 → 8.0.0-dev.11712932867.11504809

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 (975) hide show
  1. package/components/action-sheet.js +11 -6
  2. package/components/alert.js +12 -8
  3. package/components/backdrop.js +8 -4
  4. package/components/button.js +40 -11
  5. package/components/buttons.js +9 -5
  6. package/components/checkbox.js +13 -9
  7. package/components/data.js +4 -4
  8. package/components/index4.js +8 -7
  9. package/components/index6.js +27 -30
  10. package/components/index7.js +124 -27
  11. package/components/index8.js +150 -111
  12. package/components/input-shims.js +1 -1
  13. package/components/input.utils.js +1 -1
  14. package/components/ion-accordion-group.js +9 -6
  15. package/components/ion-accordion.js +10 -6
  16. package/components/ion-app.js +5 -6
  17. package/components/ion-avatar.js +9 -2
  18. package/components/ion-back-button.js +12 -8
  19. package/components/ion-badge.js +9 -5
  20. package/components/ion-breadcrumb.js +11 -7
  21. package/components/ion-breadcrumbs.js +9 -5
  22. package/components/ion-card-content.js +9 -5
  23. package/components/ion-card-header.js +9 -5
  24. package/components/ion-card-subtitle.js +9 -5
  25. package/components/ion-card-title.js +9 -5
  26. package/components/ion-card.js +16 -7
  27. package/components/ion-chip.js +16 -6
  28. package/components/ion-col.js +5 -5
  29. package/components/ion-content.js +10 -10
  30. package/components/ion-datetime-button.js +9 -6
  31. package/components/ion-datetime.js +26 -21
  32. package/components/ion-fab-button.js +10 -6
  33. package/components/ion-fab-list.js +5 -5
  34. package/components/ion-fab.js +5 -5
  35. package/components/ion-footer.js +14 -10
  36. package/components/ion-grid.js +5 -5
  37. package/components/ion-header.js +14 -10
  38. package/components/ion-img.js +5 -2
  39. package/components/ion-infinite-scroll-content.js +12 -8
  40. package/components/ion-infinite-scroll.js +5 -5
  41. package/components/ion-input-password-toggle.js +2 -3
  42. package/components/ion-input.js +17 -13
  43. package/components/ion-item-divider.js +9 -5
  44. package/components/ion-item-group.js +9 -5
  45. package/components/ion-item-option.js +9 -5
  46. package/components/ion-item-options.js +9 -5
  47. package/components/ion-item-sliding.js +5 -5
  48. package/components/ion-loading.js +10 -6
  49. package/components/ion-menu-button.js +11 -7
  50. package/components/ion-menu-toggle.js +5 -5
  51. package/components/ion-menu.js +9 -5
  52. package/components/ion-modal.js +11 -8
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +6 -5
  55. package/components/ion-note.js +9 -5
  56. package/components/ion-picker-legacy.js +5 -6
  57. package/components/ion-progress-bar.js +8 -4
  58. package/components/ion-range.js +11 -8
  59. package/components/ion-refresher-content.js +9 -8
  60. package/components/ion-refresher.js +10 -6
  61. package/components/ion-reorder-group.js +5 -5
  62. package/components/ion-reorder.js +11 -5
  63. package/components/ion-router-link.js +5 -5
  64. package/components/ion-router-outlet.js +1 -1
  65. package/components/ion-row.js +5 -2
  66. package/components/ion-searchbar.js +16 -12
  67. package/components/ion-segment-button.js +10 -6
  68. package/components/ion-segment.js +9 -5
  69. package/components/ion-select-option.js +5 -2
  70. package/components/ion-select.js +23 -19
  71. package/components/ion-skeleton-text.js +5 -5
  72. package/components/ion-split-pane.js +10 -6
  73. package/components/ion-tab-bar.js +9 -5
  74. package/components/ion-tab-button.js +9 -5
  75. package/components/ion-tab.js +2 -2
  76. package/components/ion-tabs.js +1 -1
  77. package/components/ion-text.js +5 -5
  78. package/components/ion-textarea.js +12 -8
  79. package/components/ion-thumbnail.js +5 -2
  80. package/components/ion-title.js +9 -5
  81. package/components/ion-toast.js +13 -9
  82. package/components/ion-toggle.js +17 -13
  83. package/components/ion-toolbar.js +9 -5
  84. package/components/ionic-global.js +191 -14
  85. package/components/ios.transition.js +1 -0
  86. package/components/item.js +11 -7
  87. package/components/label.js +9 -5
  88. package/components/list-header.js +9 -5
  89. package/components/list.js +10 -6
  90. package/components/overlays.js +1 -2
  91. package/components/picker-column-option.js +9 -5
  92. package/components/picker-column.js +6 -6
  93. package/components/picker-column2.js +4 -4
  94. package/components/picker.js +6 -2
  95. package/components/popover.js +11 -8
  96. package/components/radio-group.js +5 -3
  97. package/components/radio.js +10 -6
  98. package/components/ripple-effect.js +4 -4
  99. package/components/select-popover.js +9 -2
  100. package/components/spinner.js +6 -6
  101. package/components/status-tap.js +1 -1
  102. package/css/core.css +1 -624
  103. package/css/core.css.map +1 -1
  104. package/css/display.css +1 -131
  105. package/css/display.css.map +1 -1
  106. package/css/flex-utils.css +1 -81
  107. package/css/flex-utils.css.map +1 -1
  108. package/css/float-elements.css +1 -293
  109. package/css/float-elements.css.map +1 -1
  110. package/css/global.bundle.css +1 -457
  111. package/css/global.bundle.css.map +1 -1
  112. package/css/ionic-swiper.css +1 -127
  113. package/css/ionic-swiper.css.map +1 -1
  114. package/css/ionic.bundle.css +1 -1
  115. package/css/ionic.bundle.css.map +1 -1
  116. package/css/link.ionic.css +1 -0
  117. package/css/link.ionic.css.map +1 -0
  118. package/css/normalize.css +1 -150
  119. package/css/normalize.css.map +1 -1
  120. package/css/padding.css +1 -202
  121. package/css/padding.css.map +1 -1
  122. package/css/palettes/dark.always.css +1 -160
  123. package/css/palettes/dark.always.css.map +1 -1
  124. package/css/palettes/dark.class.css +1 -160
  125. package/css/palettes/dark.class.css.map +1 -1
  126. package/css/palettes/dark.css +0 -2
  127. package/css/palettes/dark.system.css +1 -162
  128. package/css/palettes/dark.system.css.map +1 -1
  129. package/css/palettes/high-contrast-dark.always.css +1 -180
  130. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  131. package/css/palettes/high-contrast-dark.class.css +1 -180
  132. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  133. package/css/palettes/high-contrast-dark.css +0 -2
  134. package/css/palettes/high-contrast-dark.system.css +1 -182
  135. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  136. package/css/palettes/high-contrast.always.css +1 -101
  137. package/css/palettes/high-contrast.always.css.map +1 -1
  138. package/css/palettes/high-contrast.class.css +1 -101
  139. package/css/palettes/high-contrast.class.css.map +1 -1
  140. package/css/palettes/high-contrast.css +0 -2
  141. package/css/palettes/high-contrast.system.css +1 -103
  142. package/css/palettes/high-contrast.system.css.map +1 -1
  143. package/css/structure.css +1 -152
  144. package/css/structure.css.map +1 -1
  145. package/css/text-alignment.css +1 -243
  146. package/css/text-alignment.css.map +1 -1
  147. package/css/text-transformation.css +1 -158
  148. package/css/text-transformation.css.map +1 -1
  149. package/css/typography.css +1 -157
  150. package/css/typography.css.map +1 -1
  151. package/css/typography.ionic.css +1 -0
  152. package/css/typography.ionic.css.map +1 -0
  153. package/css/utils.bundle.css +1 -1100
  154. package/css/utils.bundle.css.map +1 -1
  155. package/dist/cjs/{app-globals-63aebf89.js → app-globals-afaa9c54.js} +1 -1
  156. package/dist/cjs/{data-21dc0f81.js → data-99329b16.js} +6 -6
  157. package/dist/cjs/{hardware-back-button-ad9299b4.js → hardware-back-button-6084a439.js} +1 -1
  158. package/dist/cjs/{index-5b6a7459.js → index-18f2ba3b.js} +2 -2
  159. package/dist/cjs/{index-ff66cc7c.js → index-7c699f7b.js} +2 -2
  160. package/dist/cjs/{index-5cf05f94.js → index-f378621f.js} +13 -12
  161. package/dist/cjs/index.cjs.js +7 -8
  162. package/dist/cjs/{input-shims-20d639e6.js → input-shims-077ab038.js} +3 -2
  163. package/dist/cjs/{input.utils-611cde0b.js → input.utils-1aac63e6.js} +2 -2
  164. package/dist/cjs/ion-accordion_2.cjs.entry.js +18 -11
  165. package/dist/cjs/ion-action-sheet.cjs.entry.js +13 -9
  166. package/dist/cjs/ion-alert.cjs.entry.js +14 -11
  167. package/dist/cjs/ion-app_8.cjs.entry.js +79 -60
  168. package/dist/cjs/ion-avatar_3.cjs.entry.js +21 -7
  169. package/dist/cjs/ion-back-button.cjs.entry.js +11 -7
  170. package/dist/cjs/ion-backdrop.cjs.entry.js +8 -4
  171. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +18 -10
  172. package/dist/cjs/ion-button_2.cjs.entry.js +43 -14
  173. package/dist/cjs/ion-card_5.cjs.entry.js +47 -23
  174. package/dist/cjs/ion-checkbox.cjs.entry.js +13 -9
  175. package/dist/cjs/ion-chip.cjs.entry.js +14 -5
  176. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  177. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -11
  178. package/dist/cjs/ion-datetime_3.cjs.entry.js +112 -107
  179. package/dist/cjs/ion-fab_3.cjs.entry.js +17 -13
  180. package/dist/cjs/ion-img.cjs.entry.js +5 -2
  181. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -13
  182. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +6 -7
  183. package/dist/cjs/ion-input.cjs.entry.js +17 -14
  184. package/dist/cjs/ion-item-option_3.cjs.entry.js +21 -14
  185. package/dist/cjs/ion-item_8.cjs.entry.js +63 -35
  186. package/dist/cjs/ion-loading.cjs.entry.js +12 -9
  187. package/dist/cjs/ion-menu_3.cjs.entry.js +25 -18
  188. package/dist/cjs/ion-modal.cjs.entry.js +19 -16
  189. package/dist/cjs/ion-nav_2.cjs.entry.js +8 -6
  190. package/dist/cjs/ion-picker-column-option.cjs.entry.js +9 -5
  191. package/dist/cjs/ion-picker-column.cjs.entry.js +6 -6
  192. package/dist/cjs/ion-picker.cjs.entry.js +6 -2
  193. package/dist/cjs/ion-popover.cjs.entry.js +17 -14
  194. package/dist/cjs/ion-progress-bar.cjs.entry.js +8 -4
  195. package/dist/cjs/ion-radio_2.cjs.entry.js +14 -8
  196. package/dist/cjs/ion-range.cjs.entry.js +16 -13
  197. package/dist/cjs/ion-refresher_2.cjs.entry.js +17 -13
  198. package/dist/cjs/ion-reorder_2.cjs.entry.js +14 -9
  199. package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
  200. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  201. package/dist/cjs/ion-searchbar.cjs.entry.js +15 -11
  202. package/dist/cjs/ion-segment_2.cjs.entry.js +18 -10
  203. package/dist/cjs/ion-select_3.cjs.entry.js +36 -23
  204. package/dist/cjs/ion-spinner.cjs.entry.js +6 -6
  205. package/dist/cjs/ion-split-pane.cjs.entry.js +10 -6
  206. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +17 -9
  207. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  208. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  209. package/dist/cjs/ion-textarea.cjs.entry.js +13 -10
  210. package/dist/cjs/ion-toast.cjs.entry.js +36 -32
  211. package/dist/cjs/ion-toggle.cjs.entry.js +16 -12
  212. package/dist/cjs/ionic-global-2734c454.js +411 -0
  213. package/dist/cjs/ionic.cjs.js +4 -4
  214. package/dist/cjs/{ios.transition-06673f18.js → ios.transition-07077689.js} +2 -1
  215. package/dist/cjs/loader.cjs.js +3 -3
  216. package/dist/cjs/{md.transition-4d7bb4b1.js → md.transition-a829ffba.js} +1 -1
  217. package/dist/cjs/{overlays-6487955a.js → overlays-a247b257.js} +3 -4
  218. package/dist/cjs/{status-tap-0be20572.js → status-tap-870d407b.js} +2 -2
  219. package/dist/collection/collection-manifest.json +2 -2
  220. package/dist/collection/components/accordion/accordion.ios.css +12 -0
  221. package/dist/collection/components/accordion/accordion.js +11 -8
  222. package/dist/collection/components/accordion/accordion.md.css +6 -0
  223. package/dist/collection/components/accordion-group/accordion-group.ios.css +12 -0
  224. package/dist/collection/components/accordion-group/accordion-group.js +11 -8
  225. package/dist/collection/components/accordion-group/accordion-group.md.css +18 -0
  226. package/dist/collection/components/action-sheet/action-sheet.ios.css +12 -0
  227. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  228. package/dist/collection/components/action-sheet/action-sheet.md.css +12 -0
  229. package/dist/collection/components/alert/alert.ios.css +18 -0
  230. package/dist/collection/components/alert/alert.js +15 -12
  231. package/dist/collection/components/alert/alert.md.css +18 -0
  232. package/dist/collection/components/app/app.js +8 -4
  233. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  234. package/dist/collection/components/avatar/avatar.js +13 -4
  235. package/dist/collection/components/avatar/avatar.md.css +12 -0
  236. package/dist/collection/components/back-button/back-button.ios.css +12 -0
  237. package/dist/collection/components/back-button/back-button.js +13 -10
  238. package/dist/collection/components/back-button/back-button.md.css +12 -0
  239. package/dist/collection/components/backdrop/backdrop.ios.css +12 -0
  240. package/dist/collection/components/backdrop/backdrop.js +12 -6
  241. package/dist/collection/components/backdrop/backdrop.md.css +12 -0
  242. package/dist/collection/components/badge/badge.ios.css +12 -0
  243. package/dist/collection/components/badge/badge.js +11 -8
  244. package/dist/collection/components/badge/badge.md.css +12 -0
  245. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +12 -0
  246. package/dist/collection/components/breadcrumb/breadcrumb.js +12 -9
  247. package/dist/collection/components/breadcrumb/breadcrumb.md.css +12 -0
  248. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  249. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  250. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  251. package/dist/collection/components/button/button.ionic.css +582 -0
  252. package/dist/collection/components/button/button.ios.css +73 -10
  253. package/dist/collection/components/button/button.js +45 -16
  254. package/dist/collection/components/button/button.md.css +69 -9
  255. package/dist/collection/components/button/test/clear/button.e2e.js +6 -3
  256. package/dist/collection/components/button/test/shape/button.e2e.js +88 -0
  257. package/dist/collection/components/button/test/size/button.e2e.js +18 -1
  258. package/dist/collection/components/button/test/states/button.e2e.js +51 -0
  259. package/dist/collection/components/buttons/buttons.ios.css +18 -0
  260. package/dist/collection/components/buttons/buttons.js +14 -8
  261. package/dist/collection/components/buttons/buttons.md.css +18 -0
  262. package/dist/collection/components/card/card.ionic.css +49 -0
  263. package/dist/collection/components/card/card.ios.css +12 -0
  264. package/dist/collection/components/card/card.js +34 -10
  265. package/dist/collection/components/card/card.md.css +12 -0
  266. package/dist/collection/components/card/test/shape/card.e2e.js +34 -0
  267. package/dist/collection/components/card-content/card-content.ios.css +12 -0
  268. package/dist/collection/components/card-content/card-content.js +11 -8
  269. package/dist/collection/components/card-content/card-content.md.css +12 -0
  270. package/dist/collection/components/card-header/card-header.ios.css +12 -0
  271. package/dist/collection/components/card-header/card-header.js +12 -9
  272. package/dist/collection/components/card-header/card-header.md.css +12 -0
  273. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  274. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  275. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  276. package/dist/collection/components/card-title/card-title.ios.css +12 -0
  277. package/dist/collection/components/card-title/card-title.js +11 -8
  278. package/dist/collection/components/card-title/card-title.md.css +12 -0
  279. package/dist/collection/components/checkbox/checkbox.ios.css +18 -0
  280. package/dist/collection/components/checkbox/checkbox.js +15 -12
  281. package/dist/collection/components/checkbox/checkbox.md.css +18 -0
  282. package/dist/collection/components/chip/chip.ionic.css +94 -0
  283. package/dist/collection/components/chip/chip.ios.css +6 -0
  284. package/dist/collection/components/chip/chip.js +33 -8
  285. package/dist/collection/components/chip/chip.md.css +6 -0
  286. package/dist/collection/components/chip/test/shape/chip.e2e.js +34 -0
  287. package/dist/collection/components/chip/test/states/chip.e2e.js +16 -0
  288. package/dist/collection/components/col/col.css +12 -0
  289. package/dist/collection/components/col/col.js +9 -5
  290. package/dist/collection/components/content/content.css +6 -0
  291. package/dist/collection/components/content/content.js +13 -10
  292. package/dist/collection/components/datetime/datetime.ios.css +12 -0
  293. package/dist/collection/components/datetime/datetime.js +27 -22
  294. package/dist/collection/components/datetime/datetime.md.css +12 -0
  295. package/dist/collection/components/datetime/test/overlay-roles/datetime.e2e.js +34 -0
  296. package/dist/collection/components/datetime/utils/data.js +3 -3
  297. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  298. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  299. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  300. package/dist/collection/components/fab/fab.css +24 -0
  301. package/dist/collection/components/fab/fab.js +9 -5
  302. package/dist/collection/components/fab-button/fab-button.ios.css +12 -0
  303. package/dist/collection/components/fab-button/fab-button.js +12 -9
  304. package/dist/collection/components/fab-button/fab-button.md.css +12 -0
  305. package/dist/collection/components/fab-list/fab-list.css +12 -0
  306. package/dist/collection/components/fab-list/fab-list.js +9 -5
  307. package/dist/collection/components/footer/footer.ios.css +12 -0
  308. package/dist/collection/components/footer/footer.js +17 -14
  309. package/dist/collection/components/footer/footer.md.css +12 -0
  310. package/dist/collection/components/grid/grid.css +12 -0
  311. package/dist/collection/components/grid/grid.js +9 -5
  312. package/dist/collection/components/header/header.ios.css +12 -0
  313. package/dist/collection/components/header/header.js +17 -14
  314. package/dist/collection/components/header/header.md.css +12 -0
  315. package/dist/collection/components/img/img.js +8 -2
  316. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  317. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  318. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  319. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  320. package/dist/collection/components/input/input.ios.css +18 -0
  321. package/dist/collection/components/input/input.js +24 -20
  322. package/dist/collection/components/input/input.md.css +44 -2
  323. package/dist/collection/components/item/item.ios.css +12 -0
  324. package/dist/collection/components/item/item.js +13 -10
  325. package/dist/collection/components/item/item.md.css +24 -0
  326. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  327. package/dist/collection/components/item-divider/item-divider.js +11 -8
  328. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  329. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  330. package/dist/collection/components/item-group/item-group.js +13 -7
  331. package/dist/collection/components/item-group/item-group.md.css +12 -0
  332. package/dist/collection/components/item-option/item-option.ios.css +12 -0
  333. package/dist/collection/components/item-option/item-option.js +11 -8
  334. package/dist/collection/components/item-option/item-option.md.css +12 -0
  335. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  336. package/dist/collection/components/item-options/item-options.js +13 -7
  337. package/dist/collection/components/item-options/item-options.md.css +18 -0
  338. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  339. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  340. package/dist/collection/components/label/label.ios.css +18 -0
  341. package/dist/collection/components/label/label.js +11 -8
  342. package/dist/collection/components/label/label.md.css +18 -0
  343. package/dist/collection/components/list/list.ios.css +18 -0
  344. package/dist/collection/components/list/list.js +12 -9
  345. package/dist/collection/components/list/list.md.css +18 -0
  346. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  347. package/dist/collection/components/list-header/list-header.js +11 -8
  348. package/dist/collection/components/list-header/list-header.md.css +18 -0
  349. package/dist/collection/components/loading/loading.ios.css +12 -0
  350. package/dist/collection/components/loading/loading.js +13 -10
  351. package/dist/collection/components/loading/loading.md.css +12 -0
  352. package/dist/collection/components/menu/menu.ios.css +12 -0
  353. package/dist/collection/components/menu/menu.js +12 -7
  354. package/dist/collection/components/menu/menu.md.css +12 -0
  355. package/dist/collection/components/menu-button/menu-button.ios.css +12 -0
  356. package/dist/collection/components/menu-button/menu-button.js +12 -9
  357. package/dist/collection/components/menu-button/menu-button.md.css +12 -0
  358. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  359. package/dist/collection/components/modal/modal.ios.css +12 -0
  360. package/dist/collection/components/modal/modal.js +12 -9
  361. package/dist/collection/components/modal/modal.md.css +12 -0
  362. package/dist/collection/components/nav/nav.css +6 -0
  363. package/dist/collection/components/nav/nav.js +11 -5
  364. package/dist/collection/components/nav-link/nav-link.js +5 -1
  365. package/dist/collection/components/note/note.ios.css +12 -0
  366. package/dist/collection/components/note/note.js +11 -8
  367. package/dist/collection/components/note/note.md.css +12 -0
  368. package/dist/collection/components/picker/picker.ios.css +12 -0
  369. package/dist/collection/components/picker/picker.js +8 -5
  370. package/dist/collection/components/picker/picker.md.css +12 -0
  371. package/dist/collection/components/picker-column/picker-column.css +6 -0
  372. package/dist/collection/components/picker-column/picker-column.js +8 -7
  373. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  374. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  375. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  376. package/dist/collection/components/picker-legacy/picker.ios.css +12 -0
  377. package/dist/collection/components/picker-legacy/picker.js +7 -6
  378. package/dist/collection/components/picker-legacy/picker.md.css +12 -0
  379. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  380. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  381. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  382. package/dist/collection/components/popover/popover.ios.css +12 -1
  383. package/dist/collection/components/popover/popover.js +15 -12
  384. package/dist/collection/components/popover/popover.md.css +12 -1
  385. package/dist/collection/components/popover/test/basic/popover.e2e.js +76 -0
  386. package/dist/collection/components/progress-bar/progress-bar.ios.css +6 -0
  387. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  388. package/dist/collection/components/progress-bar/progress-bar.md.css +6 -0
  389. package/dist/collection/components/radio/radio.ios.css +18 -0
  390. package/dist/collection/components/radio/radio.js +12 -9
  391. package/dist/collection/components/radio/radio.md.css +18 -0
  392. package/dist/collection/components/radio-group/radio-group.js +9 -3
  393. package/dist/collection/components/range/range.ios.css +12 -0
  394. package/dist/collection/components/range/range.js +12 -9
  395. package/dist/collection/components/range/range.md.css +12 -0
  396. package/dist/collection/components/refresher/refresher.ios.css +12 -0
  397. package/dist/collection/components/refresher/refresher.js +11 -8
  398. package/dist/collection/components/refresher/refresher.md.css +12 -0
  399. package/dist/collection/components/refresher-content/refresher-content.js +12 -7
  400. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  401. package/dist/collection/components/reorder/reorder.js +13 -6
  402. package/dist/collection/components/reorder/reorder.md.css +6 -0
  403. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  404. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  405. package/dist/collection/components/ripple-effect/ripple-effect.css +6 -0
  406. package/dist/collection/components/ripple-effect/ripple-effect.js +8 -4
  407. package/dist/collection/components/route/route.js +4 -0
  408. package/dist/collection/components/router/router.js +4 -0
  409. package/dist/collection/components/router-link/router-link.css +6 -0
  410. package/dist/collection/components/router-link/router-link.js +9 -5
  411. package/dist/collection/components/router-outlet/router-outlet.css +6 -0
  412. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  413. package/dist/collection/components/row/row.css +12 -0
  414. package/dist/collection/components/row/row.js +9 -2
  415. package/dist/collection/components/searchbar/searchbar.ios.css +12 -0
  416. package/dist/collection/components/searchbar/searchbar.js +22 -19
  417. package/dist/collection/components/searchbar/searchbar.md.css +12 -0
  418. package/dist/collection/components/segment/segment.ios.css +18 -0
  419. package/dist/collection/components/segment/segment.js +11 -8
  420. package/dist/collection/components/segment/segment.md.css +18 -0
  421. package/dist/collection/components/segment-button/segment-button.ios.css +12 -0
  422. package/dist/collection/components/segment-button/segment-button.js +12 -9
  423. package/dist/collection/components/segment-button/segment-button.md.css +12 -0
  424. package/dist/collection/components/select/select.ios.css +18 -0
  425. package/dist/collection/components/select/select.js +27 -24
  426. package/dist/collection/components/select/select.md.css +30 -0
  427. package/dist/collection/components/select-option/select-option.js +9 -2
  428. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  429. package/dist/collection/components/select-popover/select-popover.js +12 -4
  430. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  431. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  432. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  433. package/dist/collection/components/spinner/spinner.css +6 -0
  434. package/dist/collection/components/spinner/spinner.js +10 -6
  435. package/dist/collection/components/split-pane/split-pane.ios.css +18 -0
  436. package/dist/collection/components/split-pane/split-pane.js +14 -8
  437. package/dist/collection/components/split-pane/split-pane.md.css +18 -0
  438. package/dist/collection/components/tab/tab.js +6 -2
  439. package/dist/collection/components/tab-bar/tab-bar.ios.css +18 -0
  440. package/dist/collection/components/tab-bar/tab-bar.js +12 -9
  441. package/dist/collection/components/tab-bar/tab-bar.md.css +18 -0
  442. package/dist/collection/components/tab-button/tab-button.ios.css +12 -0
  443. package/dist/collection/components/tab-button/tab-button.js +11 -8
  444. package/dist/collection/components/tab-button/tab-button.md.css +12 -0
  445. package/dist/collection/components/tabs/tabs.css +6 -0
  446. package/dist/collection/components/tabs/tabs.js +4 -1
  447. package/dist/collection/components/text/text.css +6 -0
  448. package/dist/collection/components/text/text.js +7 -6
  449. package/dist/collection/components/textarea/textarea.ios.css +24 -0
  450. package/dist/collection/components/textarea/textarea.js +15 -12
  451. package/dist/collection/components/textarea/textarea.md.css +36 -0
  452. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  453. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  454. package/dist/collection/components/title/title.ios.css +6 -0
  455. package/dist/collection/components/title/title.js +13 -7
  456. package/dist/collection/components/title/title.md.css +6 -0
  457. package/dist/collection/components/toast/animations/utils.js +1 -1
  458. package/dist/collection/components/toast/toast.ios.css +12 -0
  459. package/dist/collection/components/toast/toast.js +15 -11
  460. package/dist/collection/components/toast/toast.md.css +12 -0
  461. package/dist/collection/components/toggle/toggle.ios.css +18 -0
  462. package/dist/collection/components/toggle/toggle.js +18 -15
  463. package/dist/collection/components/toggle/toggle.md.css +18 -0
  464. package/dist/collection/components/toolbar/test/basic/toolbar.e2e.js +133 -5
  465. package/dist/collection/components/toolbar/toolbar.ios.css +12 -0
  466. package/dist/collection/components/toolbar/toolbar.js +13 -10
  467. package/dist/collection/components/toolbar/toolbar.md.css +12 -0
  468. package/dist/collection/css/test/link/basic/link.e2e.js +35 -0
  469. package/dist/collection/css/test/{a11y → typography/a11y}/typography.e2e.js +1 -1
  470. package/dist/collection/css/test/typography/basic/typography.e2e.js +85 -0
  471. package/dist/collection/global/ionic-global.js +161 -13
  472. package/dist/collection/global/test/ionic-global.spec.js +109 -0
  473. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  474. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  475. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  476. package/dist/collection/utils/test/playwright/generator.js +48 -23
  477. package/dist/collection/utils/test/playwright/page/utils/goto.js +13 -4
  478. package/dist/collection/utils/test/playwright/page/utils/set-content.js +13 -1
  479. package/dist/collection/utils/transition/ios.transition.js +1 -0
  480. package/dist/docs.json +3968 -344
  481. package/dist/esm/{app-globals-b8e5e7fa.js → app-globals-6b65a082.js} +1 -1
  482. package/dist/esm/{button-active-a411da52.js → button-active-b3a77616.js} +1 -1
  483. package/dist/esm/{data-ae11fd43.js → data-e73f49e1.js} +4 -4
  484. package/dist/esm/{hardware-back-button-329c81fd.js → hardware-back-button-7e31a4ae.js} +2 -2
  485. package/dist/esm/{index-5cc724f3.js → index-55408470.js} +1 -1
  486. package/dist/esm/{index-10916999.js → index-8137ebe0.js} +9 -8
  487. package/dist/esm/{index-6e4709ff.js → index-a19e0b91.js} +1 -1
  488. package/dist/esm/{index-f1f5de26.js → index-bf81c266.js} +3 -3
  489. package/dist/esm/index.js +8 -9
  490. package/dist/esm/{input-shims-4530285e.js → input-shims-8453cb67.js} +3 -2
  491. package/dist/esm/{input.utils-09c71bc7.js → input.utils-8bf2cdac.js} +1 -1
  492. package/dist/esm/ion-accordion_2.entry.js +18 -11
  493. package/dist/esm/ion-action-sheet.entry.js +15 -11
  494. package/dist/esm/ion-alert.entry.js +16 -13
  495. package/dist/esm/ion-app_8.entry.js +69 -50
  496. package/dist/esm/ion-avatar_3.entry.js +22 -8
  497. package/dist/esm/ion-back-button.entry.js +12 -8
  498. package/dist/esm/ion-backdrop.entry.js +9 -5
  499. package/dist/esm/ion-breadcrumb_2.entry.js +19 -11
  500. package/dist/esm/ion-button_2.entry.js +41 -12
  501. package/dist/esm/ion-card_5.entry.js +48 -24
  502. package/dist/esm/ion-checkbox.entry.js +14 -10
  503. package/dist/esm/ion-chip.entry.js +15 -6
  504. package/dist/esm/ion-col_3.entry.js +14 -11
  505. package/dist/esm/ion-datetime-button.entry.js +11 -8
  506. package/dist/esm/ion-datetime_3.entry.js +36 -31
  507. package/dist/esm/ion-fab_3.entry.js +18 -14
  508. package/dist/esm/ion-img.entry.js +6 -3
  509. package/dist/esm/ion-infinite-scroll_2.entry.js +17 -14
  510. package/dist/esm/ion-input-password-toggle.entry.js +2 -3
  511. package/dist/esm/ion-input.entry.js +18 -15
  512. package/dist/esm/ion-item-option_3.entry.js +22 -15
  513. package/dist/esm/ion-item_8.entry.js +64 -36
  514. package/dist/esm/ion-loading.entry.js +13 -10
  515. package/dist/esm/ion-menu_3.entry.js +26 -19
  516. package/dist/esm/ion-modal.entry.js +15 -12
  517. package/dist/esm/ion-nav_2.entry.js +9 -7
  518. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  519. package/dist/esm/ion-picker-column.entry.js +7 -7
  520. package/dist/esm/ion-picker.entry.js +7 -3
  521. package/dist/esm/ion-popover.entry.js +15 -12
  522. package/dist/esm/ion-progress-bar.entry.js +9 -5
  523. package/dist/esm/ion-radio_2.entry.js +15 -9
  524. package/dist/esm/ion-range.entry.js +12 -9
  525. package/dist/esm/ion-refresher_2.entry.js +18 -14
  526. package/dist/esm/ion-reorder_2.entry.js +15 -10
  527. package/dist/esm/ion-ripple-effect.entry.js +5 -5
  528. package/dist/esm/ion-route_4.entry.js +6 -6
  529. package/dist/esm/ion-searchbar.entry.js +16 -12
  530. package/dist/esm/ion-segment_2.entry.js +19 -11
  531. package/dist/esm/ion-select_3.entry.js +37 -24
  532. package/dist/esm/ion-spinner.entry.js +7 -7
  533. package/dist/esm/ion-split-pane.entry.js +11 -7
  534. package/dist/esm/ion-tab-bar_2.entry.js +18 -10
  535. package/dist/esm/ion-tab_2.entry.js +4 -4
  536. package/dist/esm/ion-text.entry.js +6 -6
  537. package/dist/esm/ion-textarea.entry.js +14 -11
  538. package/dist/esm/ion-toast.entry.js +16 -12
  539. package/dist/esm/ion-toggle.entry.js +17 -13
  540. package/dist/esm/ionic-global-ccd91ba4.js +401 -0
  541. package/dist/esm/ionic.js +6 -6
  542. package/dist/esm/{ios.transition-8e181a7e.js → ios.transition-b169aa46.js} +3 -2
  543. package/dist/esm/loader.js +5 -5
  544. package/dist/esm/{md.transition-f1c3c737.js → md.transition-ecde7aa6.js} +2 -2
  545. package/dist/esm/{overlays-9472c98b.js → overlays-7125a1f5.js} +2 -3
  546. package/dist/esm/{status-tap-39da9160.js → status-tap-6bfbede6.js} +3 -3
  547. package/dist/esm-es5/app-globals-6b65a082.js +4 -0
  548. package/dist/esm-es5/{button-active-a411da52.js → button-active-b3a77616.js} +1 -1
  549. package/dist/esm-es5/data-e73f49e1.js +4 -0
  550. package/dist/esm-es5/{hardware-back-button-329c81fd.js → hardware-back-button-7e31a4ae.js} +1 -1
  551. package/dist/esm-es5/index-55408470.js +4 -0
  552. package/dist/esm-es5/index-8137ebe0.js +4 -0
  553. package/dist/esm-es5/{index-6e4709ff.js → index-a19e0b91.js} +1 -1
  554. package/dist/esm-es5/{index-f1f5de26.js → index-bf81c266.js} +1 -1
  555. package/dist/esm-es5/index.js +1 -1
  556. package/dist/esm-es5/input-shims-8453cb67.js +4 -0
  557. package/dist/esm-es5/input.utils-8bf2cdac.js +4 -0
  558. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  559. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  560. package/dist/esm-es5/ion-alert.entry.js +1 -1
  561. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  562. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  563. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  564. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  565. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  566. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  567. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  568. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  569. package/dist/esm-es5/ion-chip.entry.js +1 -1
  570. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  571. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  572. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  573. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  574. package/dist/esm-es5/ion-img.entry.js +1 -1
  575. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  576. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  577. package/dist/esm-es5/ion-input.entry.js +1 -1
  578. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  579. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  580. package/dist/esm-es5/ion-loading.entry.js +1 -1
  581. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  582. package/dist/esm-es5/ion-modal.entry.js +1 -1
  583. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  584. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  585. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  586. package/dist/esm-es5/ion-picker.entry.js +1 -1
  587. package/dist/esm-es5/ion-popover.entry.js +1 -1
  588. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  589. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  590. package/dist/esm-es5/ion-range.entry.js +1 -1
  591. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  592. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  593. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  594. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  595. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  596. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  597. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  598. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  599. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  600. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  601. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  602. package/dist/esm-es5/ion-text.entry.js +1 -1
  603. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  604. package/dist/esm-es5/ion-toast.entry.js +1 -1
  605. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  606. package/dist/esm-es5/ionic-global-ccd91ba4.js +4 -0
  607. package/dist/esm-es5/ionic.js +1 -1
  608. package/dist/esm-es5/ios.transition-b169aa46.js +4 -0
  609. package/dist/esm-es5/loader.js +1 -1
  610. package/dist/esm-es5/md.transition-ecde7aa6.js +4 -0
  611. package/dist/esm-es5/overlays-7125a1f5.js +4 -0
  612. package/dist/esm-es5/status-tap-6bfbede6.js +4 -0
  613. package/dist/html.html-data.json +1937 -112
  614. package/dist/ionic/index.esm.js +1 -1
  615. package/dist/ionic/ionic.esm.js +1 -1
  616. package/dist/ionic/ionic.js +1 -1
  617. package/dist/ionic/p-00e85b08.js +4 -0
  618. package/dist/ionic/p-0350ac97.entry.js +4 -0
  619. package/dist/ionic/p-0530664b.system.entry.js +4 -0
  620. package/dist/ionic/p-053d229a.system.js +4 -0
  621. package/dist/ionic/{p-4dd82d9d.system.js → p-077ebefa.system.js} +1 -1
  622. package/dist/ionic/p-0817ca20.system.js +4 -0
  623. package/dist/ionic/{p-1361399b.system.entry.js → p-09e29b0f.system.entry.js} +1 -1
  624. package/dist/ionic/{p-be9f56eb.entry.js → p-0cbb7a38.entry.js} +1 -1
  625. package/dist/ionic/p-11e56c60.system.entry.js +4 -0
  626. package/dist/ionic/{p-61aa1ba6.entry.js → p-13aa82f5.entry.js} +1 -1
  627. package/dist/ionic/p-142da19d.entry.js +4 -0
  628. package/dist/ionic/{p-3040730e.js → p-17f4c151.js} +1 -1
  629. package/dist/ionic/{p-d60342e3.js → p-1b039c87.js} +1 -1
  630. package/dist/ionic/p-1d59a829.system.entry.js +4 -0
  631. package/dist/ionic/p-1d5b3dfa.system.entry.js +4 -0
  632. package/dist/ionic/{p-0c06e09b.system.js → p-1d608fb3.system.js} +1 -1
  633. package/dist/ionic/p-1edfc09d.entry.js +4 -0
  634. package/dist/ionic/p-1f2ce987.system.entry.js +4 -0
  635. package/dist/ionic/p-1f3dedb0.system.entry.js +4 -0
  636. package/dist/ionic/p-1fcfcb94.js +4 -0
  637. package/dist/ionic/p-202b8a88.system.entry.js +4 -0
  638. package/dist/ionic/p-206a256a.system.entry.js +4 -0
  639. package/dist/ionic/{p-71215c1d.system.js → p-2172efcb.system.js} +1 -1
  640. package/dist/ionic/p-22c4f5bb.entry.js +4 -0
  641. package/dist/ionic/p-267e9b94.system.entry.js +4 -0
  642. package/dist/ionic/p-291414bd.entry.js +4 -0
  643. package/dist/ionic/{p-e350ab4a.entry.js → p-2bf0809c.entry.js} +1 -1
  644. package/dist/ionic/p-3079ca5b.entry.js +4 -0
  645. package/dist/ionic/p-31eb5a46.entry.js +4 -0
  646. package/dist/ionic/p-34abea66.entry.js +4 -0
  647. package/dist/ionic/p-3c1dd334.entry.js +4 -0
  648. package/dist/ionic/p-3d94bebf.system.entry.js +4 -0
  649. package/dist/ionic/p-3f073322.system.js +4 -0
  650. package/dist/ionic/p-42f77866.entry.js +4 -0
  651. package/dist/ionic/p-44874984.system.entry.js +4 -0
  652. package/dist/ionic/p-45153fb3.entry.js +4 -0
  653. package/dist/ionic/p-46647e3c.system.entry.js +4 -0
  654. package/dist/ionic/{p-96cc4814.js → p-4c463790.js} +1 -1
  655. package/dist/ionic/p-510c8716.entry.js +4 -0
  656. package/dist/ionic/p-52693118.system.entry.js +4 -0
  657. package/dist/ionic/p-52c88e28.system.entry.js +4 -0
  658. package/dist/ionic/p-541e2e0a.system.js +4 -0
  659. package/dist/ionic/p-57a2f03a.entry.js +4 -0
  660. package/dist/ionic/p-5a514e50.system.entry.js +4 -0
  661. package/dist/ionic/p-5acc896a.system.entry.js +4 -0
  662. package/dist/ionic/p-5bef1e83.js +4 -0
  663. package/dist/ionic/p-5e4ee3ae.system.entry.js +4 -0
  664. package/dist/ionic/p-656380fe.system.entry.js +4 -0
  665. package/dist/ionic/p-65fe9b29.system.entry.js +4 -0
  666. package/dist/ionic/p-696ea939.entry.js +4 -0
  667. package/dist/ionic/p-6bee0fd7.system.entry.js +4 -0
  668. package/dist/ionic/p-6d2aa487.entry.js +4 -0
  669. package/dist/ionic/p-73e3a38e.system.js +4 -0
  670. package/dist/ionic/p-7ac0170e.entry.js +4 -0
  671. package/dist/ionic/p-7c319cce.entry.js +4 -0
  672. package/dist/ionic/p-7ce8a9e9.entry.js +4 -0
  673. package/dist/ionic/p-7d83bc32.entry.js +4 -0
  674. package/dist/ionic/p-7faa544d.system.entry.js +4 -0
  675. package/dist/ionic/p-809dc691.system.js +4 -0
  676. package/dist/ionic/p-8154208e.system.entry.js +4 -0
  677. package/dist/ionic/p-8304afaa.js +4 -0
  678. package/dist/ionic/{p-784d54d4.entry.js → p-86f7af76.entry.js} +1 -1
  679. package/dist/ionic/p-899dfb1b.entry.js +4 -0
  680. package/dist/ionic/p-8ac9139d.entry.js +4 -0
  681. package/dist/ionic/p-8bbc7d87.entry.js +4 -0
  682. package/dist/ionic/p-8f03847e.system.entry.js +4 -0
  683. package/dist/ionic/p-9143716d.js +4 -0
  684. package/dist/ionic/p-95ee29b9.entry.js +4 -0
  685. package/dist/ionic/p-961f1af3.system.entry.js +4 -0
  686. package/dist/ionic/p-974415fe.entry.js +4 -0
  687. package/dist/ionic/p-993ee94e.system.entry.js +4 -0
  688. package/dist/ionic/p-9b13de79.js +4 -0
  689. package/dist/ionic/p-9c44a499.system.entry.js +4 -0
  690. package/dist/ionic/p-9d7495f9.entry.js +4 -0
  691. package/dist/ionic/p-9e3fc5c4.entry.js +4 -0
  692. package/dist/ionic/p-9e81053f.system.entry.js +4 -0
  693. package/dist/ionic/{p-c222f76a.js → p-a3e86f85.js} +1 -1
  694. package/dist/ionic/p-a4d1b5cc.js +4 -0
  695. package/dist/ionic/p-a6fbf92e.system.entry.js +4 -0
  696. package/dist/ionic/p-a7727720.system.entry.js +4 -0
  697. package/dist/ionic/p-a8cb924e.entry.js +4 -0
  698. package/dist/ionic/p-ae5ef403.js +4 -0
  699. package/dist/ionic/p-b1abddbc.system.entry.js +4 -0
  700. package/dist/ionic/{p-fb1ee785.system.entry.js → p-b2f88f88.system.entry.js} +1 -1
  701. package/dist/ionic/{p-0fad7a2d.system.entry.js → p-b54a266a.system.entry.js} +1 -1
  702. package/dist/ionic/p-b61a2062.js +4 -0
  703. package/dist/ionic/p-b68096c3.js +4 -0
  704. package/dist/ionic/p-b7d71411.entry.js +4 -0
  705. package/dist/ionic/p-b80ea7d0.system.entry.js +4 -0
  706. package/dist/ionic/{p-8370ef82.entry.js → p-ba96d07d.entry.js} +1 -1
  707. package/dist/ionic/p-bf7156f4.entry.js +4 -0
  708. package/dist/ionic/p-c1d8c615.entry.js +4 -0
  709. package/dist/ionic/p-c37f3748.system.entry.js +4 -0
  710. package/dist/ionic/{p-f687573e.system.js → p-c3db3abe.system.js} +1 -1
  711. package/dist/ionic/p-c78743ee.entry.js +4 -0
  712. package/dist/ionic/p-cb1a9f57.system.js +4 -0
  713. package/dist/ionic/p-cb40aff5.entry.js +4 -0
  714. package/dist/ionic/p-cc75f7ad.entry.js +4 -0
  715. package/dist/ionic/p-ccc12f7c.system.js +4 -0
  716. package/dist/ionic/p-cd0eff72.system.entry.js +4 -0
  717. package/dist/ionic/p-cfd8b74c.entry.js +4 -0
  718. package/dist/ionic/p-cfe0fdf6.system.entry.js +4 -0
  719. package/dist/ionic/p-d26ef51c.system.js +4 -0
  720. package/dist/ionic/p-d4fe6131.entry.js +4 -0
  721. package/dist/ionic/p-d9f7a464.entry.js +4 -0
  722. package/dist/ionic/p-dc36b00c.entry.js +4 -0
  723. package/dist/ionic/p-dde515cb.system.entry.js +4 -0
  724. package/dist/ionic/{p-64714af0.system.entry.js → p-dfe87e18.system.entry.js} +1 -1
  725. package/dist/ionic/p-e3cc9c09.entry.js +4 -0
  726. package/dist/ionic/p-e408b885.system.entry.js +4 -0
  727. package/dist/ionic/p-e41c7934.system.entry.js +4 -0
  728. package/dist/ionic/p-e5c0f7e6.system.entry.js +4 -0
  729. package/dist/ionic/p-eb0c6a8b.system.js +4 -0
  730. package/dist/ionic/p-eb3789c5.system.entry.js +4 -0
  731. package/dist/ionic/{p-74a9cafe.system.js → p-ed5175cf.system.js} +2 -2
  732. package/dist/ionic/p-edb5c9e0.system.entry.js +4 -0
  733. package/dist/ionic/p-eed178ea.system.js +4 -0
  734. package/dist/ionic/p-efb193d6.entry.js +4 -0
  735. package/dist/ionic/p-f091ca00.entry.js +4 -0
  736. package/dist/ionic/{p-95bc0add.system.entry.js → p-f12d95ef.system.entry.js} +2 -2
  737. package/dist/ionic/{p-240cac05.entry.js → p-f8f6cf70.entry.js} +1 -1
  738. package/dist/ionic/{p-d104ba38.system.entry.js → p-f91ea85e.system.entry.js} +1 -1
  739. package/dist/ionic/{p-9d9f20ce.system.entry.js → p-fb064a3d.system.entry.js} +1 -1
  740. package/dist/ionic/{p-9ad82dba.js → p-fc0aa455.js} +1 -1
  741. package/dist/ionic/p-fc1a4bbf.entry.js +4 -0
  742. package/dist/ionic/{p-c872fcd2.entry.js → p-fdf42961.entry.js} +1 -1
  743. package/dist/ionic/p-fdfb6054.system.js +4 -0
  744. package/dist/ionic/p-fe32eb3e.system.entry.js +4 -0
  745. package/dist/types/components/accordion/accordion.d.ts +2 -1
  746. package/dist/types/components/accordion-group/accordion-group.d.ts +2 -1
  747. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  748. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  749. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  750. package/dist/types/components/alert/alert.d.ts +3 -2
  751. package/dist/types/components/app/app.d.ts +4 -0
  752. package/dist/types/components/avatar/avatar.d.ts +4 -0
  753. package/dist/types/components/back-button/back-button.d.ts +2 -1
  754. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  755. package/dist/types/components/badge/badge.d.ts +2 -1
  756. package/dist/types/components/breadcrumb/breadcrumb.d.ts +2 -1
  757. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  758. package/dist/types/components/button/button.d.ts +15 -4
  759. package/dist/types/components/buttons/buttons.d.ts +5 -1
  760. package/dist/types/components/card/card.d.ts +6 -1
  761. package/dist/types/components/card-content/card-content.d.ts +2 -1
  762. package/dist/types/components/card-header/card-header.d.ts +3 -2
  763. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  764. package/dist/types/components/card-title/card-title.d.ts +2 -1
  765. package/dist/types/components/checkbox/checkbox.d.ts +2 -1
  766. package/dist/types/components/chip/chip.d.ts +6 -1
  767. package/dist/types/components/col/col.d.ts +4 -0
  768. package/dist/types/components/content/content.d.ts +3 -0
  769. package/dist/types/components/datetime/datetime.d.ts +2 -1
  770. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  771. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  772. package/dist/types/components/fab/fab.d.ts +4 -0
  773. package/dist/types/components/fab-button/fab-button.d.ts +3 -2
  774. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  775. package/dist/types/components/footer/footer.d.ts +4 -3
  776. package/dist/types/components/grid/grid.d.ts +4 -0
  777. package/dist/types/components/header/header.d.ts +4 -3
  778. package/dist/types/components/img/img.d.ts +3 -0
  779. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  780. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  781. package/dist/types/components/input/input.d.ts +10 -3
  782. package/dist/types/components/item/item.d.ts +4 -3
  783. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  784. package/dist/types/components/item-group/item-group.d.ts +4 -0
  785. package/dist/types/components/item-option/item-option.d.ts +2 -1
  786. package/dist/types/components/item-options/item-options.d.ts +4 -0
  787. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  788. package/dist/types/components/label/label.d.ts +2 -1
  789. package/dist/types/components/list/list.d.ts +2 -1
  790. package/dist/types/components/list-header/list-header.d.ts +2 -1
  791. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  792. package/dist/types/components/loading/loading.d.ts +3 -2
  793. package/dist/types/components/menu/menu.d.ts +3 -0
  794. package/dist/types/components/menu-button/menu-button.d.ts +2 -1
  795. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  796. package/dist/types/components/modal/modal-interface.d.ts +3 -7
  797. package/dist/types/components/modal/modal.d.ts +2 -1
  798. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  799. package/dist/types/components/nav/nav.d.ts +5 -1
  800. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  801. package/dist/types/components/note/note.d.ts +2 -1
  802. package/dist/types/components/picker/picker.d.ts +2 -1
  803. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  804. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  805. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  806. package/dist/types/components/popover/popover-interface.d.ts +3 -7
  807. package/dist/types/components/popover/popover.d.ts +6 -5
  808. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  809. package/dist/types/components/radio/radio.d.ts +2 -1
  810. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  811. package/dist/types/components/range/range.d.ts +2 -1
  812. package/dist/types/components/refresher/refresher.d.ts +2 -1
  813. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  814. package/dist/types/components/reorder/reorder.d.ts +3 -0
  815. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  816. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  817. package/dist/types/components/route/route.d.ts +4 -0
  818. package/dist/types/components/router/router.d.ts +4 -0
  819. package/dist/types/components/router-link/router-link.d.ts +4 -0
  820. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  821. package/dist/types/components/row/row.d.ts +4 -0
  822. package/dist/types/components/searchbar/searchbar.d.ts +8 -7
  823. package/dist/types/components/segment/segment.d.ts +2 -1
  824. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  825. package/dist/types/components/select/select.d.ts +6 -5
  826. package/dist/types/components/select-option/select-option.d.ts +4 -0
  827. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  828. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  829. package/dist/types/components/spinner/spinner.d.ts +4 -0
  830. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  831. package/dist/types/components/tab/tab.d.ts +4 -0
  832. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -2
  833. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  834. package/dist/types/components/tabs/tabs.d.ts +3 -0
  835. package/dist/types/components/text/text.d.ts +2 -1
  836. package/dist/types/components/textarea/textarea.d.ts +3 -2
  837. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  838. package/dist/types/components/title/title.d.ts +4 -0
  839. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  840. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  841. package/dist/types/components/toast/toast.d.ts +3 -2
  842. package/dist/types/components/toggle/toggle.d.ts +2 -1
  843. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  844. package/dist/types/components.d.ts +1206 -166
  845. package/dist/types/global/ionic-global.d.ts +25 -2
  846. package/dist/types/interface.d.ts +3 -0
  847. package/dist/types/utils/config.d.ts +17 -2
  848. package/dist/types/utils/overlays-interface.d.ts +31 -1
  849. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  850. package/hydrate/index.js +1191 -522
  851. package/package.json +5 -3
  852. package/components/index9.js +0 -167
  853. package/dist/cjs/index-5915f9b3.js +0 -38
  854. package/dist/cjs/ionic-global-1adf9bc4.js +0 -230
  855. package/dist/collection/components/button/test/round/button.e2e.js +0 -52
  856. package/dist/esm/index-9b0d46f4.js +0 -34
  857. package/dist/esm/ionic-global-c4e0c089.js +0 -224
  858. package/dist/esm-es5/app-globals-b8e5e7fa.js +0 -4
  859. package/dist/esm-es5/data-ae11fd43.js +0 -4
  860. package/dist/esm-es5/index-10916999.js +0 -4
  861. package/dist/esm-es5/index-5cc724f3.js +0 -4
  862. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  863. package/dist/esm-es5/input-shims-4530285e.js +0 -4
  864. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  865. package/dist/esm-es5/ionic-global-c4e0c089.js +0 -4
  866. package/dist/esm-es5/ios.transition-8e181a7e.js +0 -4
  867. package/dist/esm-es5/md.transition-f1c3c737.js +0 -4
  868. package/dist/esm-es5/overlays-9472c98b.js +0 -4
  869. package/dist/esm-es5/status-tap-39da9160.js +0 -4
  870. package/dist/ionic/p-06e58c4e.js +0 -4
  871. package/dist/ionic/p-06fee233.js +0 -4
  872. package/dist/ionic/p-07c88a2e.entry.js +0 -4
  873. package/dist/ionic/p-0d189eaf.entry.js +0 -4
  874. package/dist/ionic/p-105f7d62.system.entry.js +0 -4
  875. package/dist/ionic/p-10ad2148.system.entry.js +0 -4
  876. package/dist/ionic/p-14700c11.system.entry.js +0 -4
  877. package/dist/ionic/p-159a5b6a.system.entry.js +0 -4
  878. package/dist/ionic/p-16dc1af8.entry.js +0 -4
  879. package/dist/ionic/p-17050343.system.entry.js +0 -4
  880. package/dist/ionic/p-18609ea3.system.entry.js +0 -4
  881. package/dist/ionic/p-1b235142.entry.js +0 -4
  882. package/dist/ionic/p-1bd294a2.entry.js +0 -4
  883. package/dist/ionic/p-23a94a8e.system.entry.js +0 -4
  884. package/dist/ionic/p-23b89985.entry.js +0 -4
  885. package/dist/ionic/p-23e0649d.entry.js +0 -4
  886. package/dist/ionic/p-25575222.system.js +0 -4
  887. package/dist/ionic/p-266fc56e.system.js +0 -4
  888. package/dist/ionic/p-2d5e919f.entry.js +0 -4
  889. package/dist/ionic/p-2f6cedaf.system.entry.js +0 -4
  890. package/dist/ionic/p-3001b2f5.entry.js +0 -4
  891. package/dist/ionic/p-34272b1f.system.entry.js +0 -4
  892. package/dist/ionic/p-37ed0807.system.entry.js +0 -4
  893. package/dist/ionic/p-3c70b01b.entry.js +0 -4
  894. package/dist/ionic/p-3d72cae3.entry.js +0 -4
  895. package/dist/ionic/p-3f70bfba.entry.js +0 -4
  896. package/dist/ionic/p-4264f999.system.entry.js +0 -4
  897. package/dist/ionic/p-46111310.js +0 -4
  898. package/dist/ionic/p-4665ab20.entry.js +0 -4
  899. package/dist/ionic/p-46f407f0.system.js +0 -4
  900. package/dist/ionic/p-4861159f.entry.js +0 -4
  901. package/dist/ionic/p-4a615fea.entry.js +0 -4
  902. package/dist/ionic/p-4e6ddce7.entry.js +0 -4
  903. package/dist/ionic/p-4e802677.entry.js +0 -4
  904. package/dist/ionic/p-5033128d.system.js +0 -4
  905. package/dist/ionic/p-510578f3.system.entry.js +0 -4
  906. package/dist/ionic/p-512cdc37.entry.js +0 -4
  907. package/dist/ionic/p-51ff648c.entry.js +0 -4
  908. package/dist/ionic/p-5278521a.system.entry.js +0 -4
  909. package/dist/ionic/p-546433d2.js +0 -4
  910. package/dist/ionic/p-54f52179.system.entry.js +0 -4
  911. package/dist/ionic/p-54f76ced.js +0 -4
  912. package/dist/ionic/p-55d7edd7.entry.js +0 -4
  913. package/dist/ionic/p-56c3b69c.entry.js +0 -4
  914. package/dist/ionic/p-587643a6.system.entry.js +0 -4
  915. package/dist/ionic/p-5e7c32e8.system.entry.js +0 -4
  916. package/dist/ionic/p-5eafecd8.entry.js +0 -4
  917. package/dist/ionic/p-65e0d04e.system.entry.js +0 -4
  918. package/dist/ionic/p-6994c97a.js +0 -4
  919. package/dist/ionic/p-69c8ec2a.system.entry.js +0 -4
  920. package/dist/ionic/p-6a7eac5a.js +0 -4
  921. package/dist/ionic/p-6c3c02d4.entry.js +0 -4
  922. package/dist/ionic/p-715d10d2.system.entry.js +0 -4
  923. package/dist/ionic/p-71688099.system.entry.js +0 -4
  924. package/dist/ionic/p-727255c2.entry.js +0 -4
  925. package/dist/ionic/p-75cddcc9.js +0 -4
  926. package/dist/ionic/p-7820f3ab.system.entry.js +0 -4
  927. package/dist/ionic/p-7d9eefb3.system.js +0 -4
  928. package/dist/ionic/p-81c91374.entry.js +0 -4
  929. package/dist/ionic/p-8337ce33.system.entry.js +0 -4
  930. package/dist/ionic/p-83b6da7c.system.entry.js +0 -4
  931. package/dist/ionic/p-88cff52d.entry.js +0 -4
  932. package/dist/ionic/p-8a6e15fc.system.entry.js +0 -4
  933. package/dist/ionic/p-8b19c120.entry.js +0 -4
  934. package/dist/ionic/p-8bbc7271.entry.js +0 -4
  935. package/dist/ionic/p-8e2368ae.system.entry.js +0 -4
  936. package/dist/ionic/p-92210d07.entry.js +0 -4
  937. package/dist/ionic/p-9a45140d.system.entry.js +0 -4
  938. package/dist/ionic/p-9ce13bcc.entry.js +0 -4
  939. package/dist/ionic/p-9d7fc908.system.js +0 -4
  940. package/dist/ionic/p-9e8cf5a2.system.entry.js +0 -4
  941. package/dist/ionic/p-9ea607bd.system.js +0 -4
  942. package/dist/ionic/p-a70c90d8.entry.js +0 -4
  943. package/dist/ionic/p-a7ba2dcc.system.js +0 -4
  944. package/dist/ionic/p-a8f02173.system.js +0 -4
  945. package/dist/ionic/p-aa4f2703.system.entry.js +0 -4
  946. package/dist/ionic/p-ac4e2a74.system.entry.js +0 -4
  947. package/dist/ionic/p-ac6dd92b.system.entry.js +0 -4
  948. package/dist/ionic/p-aeb5a22b.system.entry.js +0 -4
  949. package/dist/ionic/p-b75155ca.entry.js +0 -4
  950. package/dist/ionic/p-bb835b4d.system.entry.js +0 -4
  951. package/dist/ionic/p-bf4609f9.system.entry.js +0 -4
  952. package/dist/ionic/p-c06e1332.system.entry.js +0 -4
  953. package/dist/ionic/p-c373bd37.system.entry.js +0 -4
  954. package/dist/ionic/p-c389d18c.entry.js +0 -4
  955. package/dist/ionic/p-c80d05c9.js +0 -4
  956. package/dist/ionic/p-c8db6adb.entry.js +0 -4
  957. package/dist/ionic/p-c99ccdc9.entry.js +0 -4
  958. package/dist/ionic/p-cae889f9.entry.js +0 -4
  959. package/dist/ionic/p-cec3bebe.entry.js +0 -4
  960. package/dist/ionic/p-d2544865.system.js +0 -4
  961. package/dist/ionic/p-d2b175d3.entry.js +0 -4
  962. package/dist/ionic/p-d5f48185.system.entry.js +0 -4
  963. package/dist/ionic/p-d68569fe.system.entry.js +0 -4
  964. package/dist/ionic/p-d79542bd.system.js +0 -4
  965. package/dist/ionic/p-d8ebc853.system.entry.js +0 -4
  966. package/dist/ionic/p-de3c33f3.entry.js +0 -4
  967. package/dist/ionic/p-ea4be6ac.system.js +0 -4
  968. package/dist/ionic/p-ea6f36fb.system.entry.js +0 -4
  969. package/dist/ionic/p-f4cb521c.js +0 -4
  970. package/dist/ionic/p-f6f4f694.entry.js +0 -4
  971. package/dist/ionic/p-f94cbfe9.js +0 -4
  972. package/dist/ionic/p-f96f7d38.entry.js +0 -4
  973. package/dist/ionic/p-fab4ecad.system.entry.js +0 -4
  974. package/dist/ionic/p-fb16b850.system.entry.js +0 -4
  975. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -4,7 +4,11 @@
4
4
  import { Host, h } from "@stencil/core";
5
5
  import { inheritAttributes } from "../../utils/helpers";
6
6
  import { createColorClasses } from "../../utils/theme";
7
- import { getIonMode } from "../../global/ionic-global";
7
+ import { getIonTheme } from "../../global/ionic-global";
8
+ /**
9
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
10
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
11
+ */
8
12
  export class PickerColumnOption {
9
13
  constructor() {
10
14
  /**
@@ -75,24 +79,26 @@ export class PickerColumnOption {
75
79
  }
76
80
  render() {
77
81
  const { color, disabled, ariaLabel } = this;
78
- const mode = getIonMode(this);
79
- return (h(Host, { key: '1d5358c019c01ca429ddb514b9f9b67a3c89f652', class: createColorClasses(color, {
80
- [mode]: true,
82
+ const theme = getIonTheme(this);
83
+ return (h(Host, { key: '7f590f416e43f74cca1649bb739eabb43bef8ec9', class: createColorClasses(color, {
84
+ [theme]: true,
81
85
  ['option-disabled']: disabled,
82
- }) }, h("button", { key: 'c86794a15b61062a886c6f5113723ccd98238e9f', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: 'ab7f80cacdd39b5aedf7d2cc8eddc6288093629a' }))));
86
+ }) }, h("button", { key: 'cc640ef332d72da10fcc58d5d7ee2a6a087c4cc3', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: '3816ea2975ccc61d064d285815080f59abfa01eb' }))));
83
87
  }
84
88
  static get is() { return "ion-picker-column-option"; }
85
89
  static get encapsulation() { return "shadow"; }
86
90
  static get originalStyleUrls() {
87
91
  return {
88
92
  "ios": ["picker-column-option.ios.scss"],
89
- "md": ["picker-column-option.md.scss"]
93
+ "md": ["picker-column-option.md.scss"],
94
+ "ionic": ["picker-column-option.md.scss"]
90
95
  };
91
96
  }
92
97
  static get styleUrls() {
93
98
  return {
94
99
  "ios": ["picker-column-option.ios.css"],
95
- "md": ["picker-column-option.md.css"]
100
+ "md": ["picker-column-option.md.css"],
101
+ "ionic": ["picker-column-option.md.css"]
96
102
  };
97
103
  }
98
104
  static get properties() {
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -162,6 +168,12 @@
162
168
  pointer-events: none;
163
169
  }
164
170
 
171
+ /**
172
+ * Convert a pixels given value into rem
173
+ *
174
+ * @param pixels - Value in pixels to be converted (i.e. px)
175
+ * @param context (optional) - Baseline value
176
+ */
165
177
  /**
166
178
  * Convert a font size to a dynamic font size.
167
179
  * Fonts that participate in Dynamic Type should use
@@ -7,12 +7,13 @@ import { createLockController } from "../../utils/lock-controller";
7
7
  import { printIonWarning } from "../../utils/logging/index";
8
8
  import { createDelegateController, createTriggerController, BACKDROP, dismiss, eventMethod, isCancel, prepareOverlay, present, safeCall, setOverlayId, } from "../../utils/overlays";
9
9
  import { getClassMap } from "../../utils/theme";
10
- import { getIonMode } from "../../global/ionic-global";
10
+ import { getIonTheme } from "../../global/ionic-global";
11
11
  import { iosEnterAnimation } from "./animations/ios.enter";
12
12
  import { iosLeaveAnimation } from "./animations/ios.leave";
13
13
  // TODO(FW-2832): types
14
14
  /**
15
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
15
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
16
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
16
17
  */
17
18
  export class Picker {
18
19
  constructor() {
@@ -181,12 +182,12 @@ export class Picker {
181
182
  }
182
183
  render() {
183
184
  const { htmlAttributes } = this;
184
- const mode = getIonMode(this);
185
- return (h(Host, Object.assign({ key: '1cf2f8a25a3eca7ac59eff969803c85540f102fc', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
185
+ const theme = getIonTheme(this);
186
+ return (h(Host, Object.assign({ key: 'd988de06290eb92ff6f7be07959780d0d19fadb3', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
186
187
  zIndex: `${20000 + this.overlayIndex}`,
187
- }, class: Object.assign({ [mode]: true,
188
+ }, class: Object.assign({ [theme]: true,
188
189
  // Used internally for styling
189
- [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), h("ion-backdrop", { key: '3a70c7c6e0457afda2e9ef4619cb253b583b7805', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '4c90cf7dfeb9d2bdb5e947739864dbc2d1e327e0', tabindex: "0" }), h("div", { key: '050098ced341fd86bfcd72595b1f7a52c3b01b46', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, h("div", { key: 'b0d9420fb053d0c71af04c88224a38f804fd99ba', class: "picker-toolbar" }, this.buttons.map((b) => (h("div", { class: buttonWrapperClass(b) }, h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), h("div", { key: '82cd2788c394079cb8843c240c17e3629eef0953', class: "picker-columns" }, h("div", { key: '34d2ce59e88b5967e52fe8077ef3a151c6ce38e5', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => h("ion-picker-legacy-column", { col: c })), h("div", { key: 'b604b101bc0006efc246aea9320d9f44419c531f', class: "picker-below-highlight" }))), h("div", { key: '70437d735b009386b4f5ae250b555c039c366183', tabindex: "0" })));
190
+ [`picker-${theme}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), h("ion-backdrop", { key: '17f85a6ff9c41b38de985d86e58f0f91315c767e', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '46358c402039738cdf47496228564b8f836ca1ca', tabindex: "0" }), h("div", { key: 'fb6a2892d259042a10fb1766bb0e1fce6a048e2b', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, h("div", { key: '082583fd8895f1f12de7a4761af718c886ad1c89', class: "picker-toolbar" }, this.buttons.map((b) => (h("div", { class: buttonWrapperClass(b) }, h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), h("div", { key: 'b6d169cbe219ada5875c818e1fbff2b3b8e75343', class: "picker-columns" }, h("div", { key: '3598b21e94c321adfffb83778ddc3ac9f5c7daba', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => h("ion-picker-legacy-column", { col: c })), h("div", { key: 'afbd8f751a842f52d1fe23fc409b01f5074e0f57', class: "picker-below-highlight" }))), h("div", { key: '248251b4ddfed8078ce242e5ce52b53caa49ccf0', tabindex: "0" })));
190
191
  }
191
192
  static get is() { return "ion-picker-legacy"; }
192
193
  static get encapsulation() { return "scoped"; }
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -162,6 +168,12 @@
162
168
  pointer-events: none;
163
169
  }
164
170
 
171
+ /**
172
+ * Convert a pixels given value into rem
173
+ *
174
+ * @param pixels - Value in pixels to be converted (i.e. px)
175
+ * @param context (optional) - Baseline value
176
+ */
165
177
  /**
166
178
  * Convert a font size to a dynamic font size.
167
179
  * Fonts that participate in Dynamic Type should use
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -120,6 +126,12 @@
120
126
  white-space: nowrap;
121
127
  }
122
128
 
129
+ /**
130
+ * Convert a pixels given value into rem
131
+ *
132
+ * @param pixels - Value in pixels to be converted (i.e. px)
133
+ * @param context (optional) - Baseline value
134
+ */
123
135
  /**
124
136
  * Convert a font size to a dynamic font size.
125
137
  * Fonts that participate in Dynamic Type should use
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
5
5
  import { clamp } from "../../utils/helpers";
6
6
  import { hapticSelectionChanged, hapticSelectionEnd, hapticSelectionStart } from "../../utils/native/haptic";
7
7
  import { getClassMap } from "../../utils/theme";
8
- import { getIonMode } from "../../global/ionic-global";
8
+ import { getIonMode, getIonTheme } from "../../global/ionic-global";
9
9
  /**
10
10
  * @internal
11
11
  */
@@ -335,10 +335,10 @@ export class PickerColumnCmp {
335
335
  }
336
336
  render() {
337
337
  const col = this.col;
338
- const mode = getIonMode(this);
339
- return (h(Host, { key: '0337ac8379be177501b8d61f0ac0f68ecbb8344d', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
338
+ const theme = getIonTheme(this);
339
+ return (h(Host, { key: 'b8c99747752c30cc7dbd4e63c6a10e1b713b0958', class: Object.assign({ [theme]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
340
340
  'max-width': this.col.columnWidth,
341
- } }, col.prefix && (h("div", { class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '013ba8ea1c2fe4fe717386b9cc87484913c234f7', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
341
+ } }, col.prefix && (h("div", { class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '5f22527170ea87eacfff014b5ef8f0ba48a116b8', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
342
342
  }
343
343
  static get is() { return "ion-picker-legacy-column"; }
344
344
  static get originalStyleUrls() {
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -120,6 +126,12 @@
120
126
  white-space: nowrap;
121
127
  }
122
128
 
129
+ /**
130
+ * Convert a pixels given value into rem
131
+ *
132
+ * @param pixels - Value in pixels to be converted (i.e. px)
133
+ * @param context (optional) - Baseline value
134
+ */
123
135
  /**
124
136
  * Convert a font size to a dynamic font size.
125
137
  * Fonts that participate in Dynamic Type should use
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -141,7 +147,6 @@
141
147
  --ion-safe-area-left: 0px;
142
148
  display: flex;
143
149
  flex-direction: column;
144
- overflow: hidden;
145
150
  }
146
151
 
147
152
  :host(.popover-nested.popover-side-left) {
@@ -178,6 +183,12 @@
178
183
  }
179
184
  }
180
185
 
186
+ /**
187
+ * Convert a pixels given value into rem
188
+ *
189
+ * @param pixels - Value in pixels to be converted (i.e. px)
190
+ * @param context (optional) - Baseline value
191
+ */
181
192
  /**
182
193
  * Convert a font size to a dynamic font size.
183
194
  * Fonts that participate in Dynamic Type should use
@@ -11,7 +11,7 @@ import { BACKDROP, dismiss, eventMethod, prepareOverlay, present, setOverlayId }
11
11
  import { isPlatform } from "../../utils/platform";
12
12
  import { getClassMap } from "../../utils/theme";
13
13
  import { deepReady, waitForMount } from "../../utils/transition/index";
14
- import { getIonMode } from "../../global/ionic-global";
14
+ import { getIonTheme } from "../../global/ionic-global";
15
15
  import { iosEnterAnimation } from "./animations/ios.enter";
16
16
  import { iosLeaveAnimation } from "./animations/ios.leave";
17
17
  import { mdEnterAnimation } from "./animations/md.enter";
@@ -19,12 +19,13 @@ import { mdLeaveAnimation } from "./animations/md.leave";
19
19
  import { configureDismissInteraction, configureKeyboardInteraction, configureTriggerInteraction } from "./utils";
20
20
  // TODO(FW-2832): types
21
21
  /**
22
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
22
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
23
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
23
24
  *
24
25
  * @slot - Content is placed inside of the `.popover-content` element.
25
26
  *
26
27
  * @part backdrop - The `ion-backdrop` element.
27
- * @part arrow - The arrow that points to the reference element. Only applies on `ios` mode.
28
+ * @part arrow - The arrow that points to the reference element. Only applies on `"ios"` theme.
28
29
  * @part content - The wrapper element for the default slot.
29
30
  */
30
31
  export class Popover {
@@ -136,7 +137,7 @@ export class Popover {
136
137
  const popoverId = setOverlayId(el);
137
138
  this.parentPopover = el.closest(`ion-popover:not(#${popoverId})`);
138
139
  if (this.alignment === undefined) {
139
- this.alignment = getIonMode(this) === 'ios' ? 'center' : 'start';
140
+ this.alignment = getIonTheme(this) === 'ios' ? 'center' : 'start';
140
141
  }
141
142
  }
142
143
  componentDidLoad() {
@@ -332,26 +333,28 @@ export class Popover {
332
333
  return eventMethod(this.el, 'ionPopoverWillDismiss');
333
334
  }
334
335
  render() {
335
- const mode = getIonMode(this);
336
+ const theme = getIonTheme(this);
336
337
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
337
338
  const desktop = isPlatform('desktop');
338
339
  const enableArrow = arrow && !parentPopover;
339
- return (h(Host, Object.assign({ key: 'a4a6fb333562cb2ecc2ac2350541de9be61837af', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
340
+ return (h(Host, Object.assign({ key: '4a666a310a920fa5c4c5d7ff3c310f8701140657', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
340
341
  zIndex: `${20000 + this.overlayIndex}`,
341
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'de9c7ad73f221e6e9a55e2bc7e1ffad7b936b0dd', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { key: '1cb5abc9835c044e6d14d444283f34b65b0b134e', class: "popover-content", part: "content" }, h("slot", { key: '0e4db95e6341e823f87877325bb1164193ae6676' })))));
342
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '9a23205e9044b2c67847553eff6e051f8a86104f', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { key: '6c530a3ed01a281691912deb50b53088d28812cc', class: "popover-content", part: "content" }, h("slot", { key: '54c80a33cd409811ca6e557117319439eac487b8' })))));
342
343
  }
343
344
  static get is() { return "ion-popover"; }
344
345
  static get encapsulation() { return "shadow"; }
345
346
  static get originalStyleUrls() {
346
347
  return {
347
348
  "ios": ["popover.ios.scss"],
348
- "md": ["popover.md.scss"]
349
+ "md": ["popover.md.scss"],
350
+ "ionic": ["popover.md.scss"]
349
351
  };
350
352
  }
351
353
  static get styleUrls() {
352
354
  return {
353
355
  "ios": ["popover.ios.css"],
354
- "md": ["popover.md.css"]
356
+ "md": ["popover.md.css"],
357
+ "ionic": ["popover.md.css"]
355
358
  };
356
359
  }
357
360
  static get properties() {
@@ -610,7 +613,7 @@ export class Popover {
610
613
  "optional": false,
611
614
  "docs": {
612
615
  "tags": [],
613
- "text": "If `true`, the popover will be translucent.\nOnly applies when the mode is `\"ios\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility)."
616
+ "text": "If `true`, the popover will be translucent.\nOnly applies when the theme is `\"ios\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility)."
614
617
  },
615
618
  "attribute": "translucent",
616
619
  "reflect": false,
@@ -798,7 +801,7 @@ export class Popover {
798
801
  "optional": true,
799
802
  "docs": {
800
803
  "tags": [],
801
- "text": "Describes how to align the popover content with the `reference` point.\nDefaults to `\"center\"` for `ios` mode, and `\"start\"` for `md` mode."
804
+ "text": "Describes how to align the popover content with the `reference` point.\nDefaults to `\"center\"` for `\"ios\"` theme, and `\"start\"` for `\"md\"` theme."
802
805
  },
803
806
  "attribute": "alignment",
804
807
  "reflect": false
@@ -815,7 +818,7 @@ export class Popover {
815
818
  "optional": false,
816
819
  "docs": {
817
820
  "tags": [],
818
- "text": "If `true`, the popover will display an arrow that points at the\n`reference` when running in `ios` mode. Does not apply in `md` mode."
821
+ "text": "If `true`, the popover will display an arrow that points at the\n`reference` on `\"ios\"` theme."
819
822
  },
820
823
  "attribute": "arrow",
821
824
  "reflect": false,
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -141,7 +147,6 @@
141
147
  --ion-safe-area-left: 0px;
142
148
  display: flex;
143
149
  flex-direction: column;
144
- overflow: hidden;
145
150
  }
146
151
 
147
152
  :host(.popover-nested.popover-side-left) {
@@ -178,6 +183,12 @@
178
183
  }
179
184
  }
180
185
 
186
+ /**
187
+ * Convert a pixels given value into rem
188
+ *
189
+ * @param pixels - Value in pixels to be converted (i.e. px)
190
+ * @param context (optional) - Baseline value
191
+ */
181
192
  /**
182
193
  * Convert a font size to a dynamic font size.
183
194
  * Fonts that participate in Dynamic Type should use
@@ -46,6 +46,82 @@ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
46
46
  * Translucent popovers are only available on iOS
47
47
  */
48
48
  configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
49
+ test.describe(title('popover: scrolling'), async () => {
50
+ test.beforeEach(({ skip }) => {
51
+ test.info().annotations.push({
52
+ type: 'issue',
53
+ description: 'https://github.com/ionic-team/ionic-framework/issues/29211',
54
+ });
55
+ // We are testing if Ionic sets overflow is set correctly on elements,
56
+ // so we do not need to test across browsers
57
+ skip.browser('webkit', 'Behavior does not vary across browsers');
58
+ skip.browser('firefox', 'Behavior does not vary across browsers');
59
+ });
60
+ test('should scroll to bottom without IonContent', async ({ page }) => {
61
+ await page.setContent(`
62
+ <style>
63
+ ion-popover {
64
+ --height: 150px;
65
+ }
66
+ </style>
67
+ <ion-popover>
68
+ <p>Text</p>
69
+ <p>Text</p>
70
+ <p>Text</p>
71
+ <p>Text</p>
72
+ <p>Text</p>
73
+ <p>Text</p>
74
+ <p>Text</p>
75
+ <p>Text</p>
76
+ <p>Text</p>
77
+ <p>Text</p>
78
+ </ion-popover>
79
+ `, config);
80
+ const popover = page.locator('ion-popover');
81
+ const viewport = popover.locator('.popover-viewport');
82
+ const p = popover.locator('p');
83
+ const lastP = await p.last();
84
+ await popover.evaluate((el) => el.present());
85
+ await expect(lastP).not.toBeInViewport();
86
+ // hover over viewport and scroll to bottom
87
+ await viewport.hover();
88
+ await page.mouse.wheel(0, 500);
89
+ await expect(lastP).toBeInViewport();
90
+ });
91
+ test('should scroll to bottom with IonContent', async ({ page }) => {
92
+ await page.setContent(`
93
+ <style>
94
+ ion-popover {
95
+ --height: 150px;
96
+ }
97
+ </style>
98
+ <ion-popover>
99
+ <ion-content>
100
+ <p>Text</p>
101
+ <p>Text</p>
102
+ <p>Text</p>
103
+ <p>Text</p>
104
+ <p>Text</p>
105
+ <p>Text</p>
106
+ <p>Text</p>
107
+ <p>Text</p>
108
+ <p>Text</p>
109
+ <p>Text</p>
110
+ </ion-content>
111
+ </ion-popover>
112
+ `, config);
113
+ const popover = page.locator('ion-popover');
114
+ const content = popover.locator('ion-content');
115
+ const p = popover.locator('p');
116
+ const lastP = await p.last();
117
+ await popover.evaluate((el) => el.present());
118
+ await expect(lastP).not.toBeInViewport();
119
+ // hover over viewport and scroll to bottom
120
+ await content.hover();
121
+ await page.mouse.wheel(0, 500);
122
+ await expect(lastP).toBeInViewport();
123
+ });
124
+ });
49
125
  test.describe(title('popover: translucent variants'), async () => {
50
126
  let popoverFixture;
51
127
  test.beforeEach(async ({ page }) => {
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -5,9 +5,10 @@ import { Host, h } from "@stencil/core";
5
5
  import { clamp } from "../../utils/helpers";
6
6
  import { createColorClasses } from "../../utils/theme";
7
7
  import { config } from "../../global/config";
8
- import { getIonMode } from "../../global/ionic-global";
8
+ import { getIonTheme } from "../../global/ionic-global";
9
9
  /**
10
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
10
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
11
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
11
12
  *
12
13
  * @part progress - The progress bar that shows the current value when `type` is `"determinate"` and slides back and forth when `type` is `"indeterminate"`.
13
14
  * @part stream - The animated circles that appear while buffering. This only shows when `buffer` is set and `type` is `"determinate"`.
@@ -25,11 +26,11 @@ export class ProgressBar {
25
26
  render() {
26
27
  const { color, type, reversed, value, buffer } = this;
27
28
  const paused = config.getBoolean('_testing');
28
- const mode = getIonMode(this);
29
+ const theme = getIonTheme(this);
29
30
  // If the progress is displayed as a solid bar.
30
31
  const progressSolid = buffer === 1;
31
- return (h(Host, { key: '78a32304c7164cb78145a91be7bb9b86ecd11b66', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses(color, {
32
- [mode]: true,
32
+ return (h(Host, { key: '529ac45563dcdd96559235171f5c9f3fef7ffb3b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses(color, {
33
+ [theme]: true,
33
34
  [`progress-bar-${type}`]: true,
34
35
  'progress-paused': paused,
35
36
  'progress-bar-reversed': document.dir === 'rtl' ? !reversed : reversed,
@@ -41,13 +42,15 @@ export class ProgressBar {
41
42
  static get originalStyleUrls() {
42
43
  return {
43
44
  "ios": ["progress-bar.ios.scss"],
44
- "md": ["progress-bar.md.scss"]
45
+ "md": ["progress-bar.md.scss"],
46
+ "ionic": ["progress-bar.md.scss"]
45
47
  };
46
48
  }
47
49
  static get styleUrls() {
48
50
  return {
49
51
  "ios": ["progress-bar.ios.css"],
50
- "md": ["progress-bar.md.css"]
52
+ "md": ["progress-bar.md.css"],
53
+ "ionic": ["progress-bar.md.css"]
51
54
  };
52
55
  }
53
56
  static get properties() {
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert a pixels given value into rem
3
+ *
4
+ * @param pixels - Value in pixels to be converted (i.e. px)
5
+ * @param context (optional) - Baseline value
6
+ */
1
7
  /**
2
8
  * Convert a font size to a dynamic font size.
3
9
  * Fonts that participate in Dynamic Type should use
@@ -304,6 +310,12 @@ input {
304
310
  }
305
311
  }
306
312
 
313
+ /**
314
+ * Convert a pixels given value into rem
315
+ *
316
+ * @param pixels - Value in pixels to be converted (i.e. px)
317
+ * @param context (optional) - Baseline value
318
+ */
307
319
  /**
308
320
  * Convert a font size to a dynamic font size.
309
321
  * Fonts that participate in Dynamic Type should use
@@ -359,6 +371,12 @@ input {
359
371
  * }
360
372
  * }
361
373
  */
374
+ /**
375
+ * Convert a pixels given value into rem
376
+ *
377
+ * @param pixels - Value in pixels to be converted (i.e. px)
378
+ * @param context (optional) - Baseline value
379
+ */
362
380
  /**
363
381
  * Convert a font size to a dynamic font size.
364
382
  * Fonts that participate in Dynamic Type should use
@@ -5,9 +5,10 @@ import { Host, h } from "@stencil/core";
5
5
  import { isOptionSelected } from "../../utils/forms/index";
6
6
  import { addEventListener, removeEventListener } from "../../utils/helpers";
7
7
  import { createColorClasses, hostContext } from "../../utils/theme";
8
- import { getIonMode } from "../../global/ionic-global";
8
+ import { getIonTheme } from "../../global/ionic-global";
9
9
  /**
10
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
10
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
11
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
11
12
  *
12
13
  * @slot - The label text to associate with the radio. Use the "labelPlacement" property to control where the label is placed relative to the radio.
13
14
  *
@@ -105,10 +106,10 @@ export class Radio {
105
106
  }
106
107
  render() {
107
108
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
108
- const mode = getIonMode(this);
109
+ const theme = getIonTheme(this);
109
110
  const inItem = hostContext('ion-item', el);
110
- return (h(Host, { key: 'bc70e174a1ca756f073ca0a95d6a12597a6eb896', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
111
- [mode]: true,
111
+ return (h(Host, { key: '6ef7b0ec90814c02828ffa5c5de0a2fda71443fc', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
112
+ [theme]: true,
112
113
  'in-item': inItem,
113
114
  'radio-checked': checked,
114
115
  'radio-disabled': disabled,
@@ -118,23 +119,25 @@ export class Radio {
118
119
  // Focus and active styling should not apply when the radio is in an item
119
120
  'ion-activatable': !inItem,
120
121
  'ion-focusable': !inItem,
121
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '04cab7d54338c7bf9b8986e0a7bc402d5c1713af', class: "radio-wrapper" }, h("div", { key: '9cd2e6ff53313c175a4a9804739f3e468d123c0b', class: {
122
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '1072d3d73ea3dbe6abb6c218c1d8ec6272e5408d', class: "radio-wrapper" }, h("div", { key: '215dbe1b57c9557c339552b333e6e132bed96f77', class: {
122
123
  'label-text-wrapper': true,
123
124
  'label-text-wrapper-hidden': !hasLabel,
124
- }, part: "label" }, h("slot", { key: 'f1c3120b4df240e690bf9b0a7d9e893c4a546476' })), h("div", { key: 'ab89f05be8b93adb22851856d3e570065d594dae', class: "native-wrapper" }, this.renderRadioControl()))));
125
+ }, part: "label" }, h("slot", { key: 'e643d0d5184ed178e1bff761bcda16aef8d7d06c' })), h("div", { key: '0297a100b8ee684eef1ca9b60dd1438c2ead86a3', class: "native-wrapper" }, this.renderRadioControl()))));
125
126
  }
126
127
  static get is() { return "ion-radio"; }
127
128
  static get encapsulation() { return "shadow"; }
128
129
  static get originalStyleUrls() {
129
130
  return {
130
131
  "ios": ["radio.ios.scss"],
131
- "md": ["radio.md.scss"]
132
+ "md": ["radio.md.scss"],
133
+ "ionic": ["radio.md.scss"]
132
134
  };
133
135
  }
134
136
  static get styleUrls() {
135
137
  return {
136
138
  "ios": ["radio.ios.css"],
137
- "md": ["radio.md.css"]
139
+ "md": ["radio.md.css"],
140
+ "ionic": ["radio.md.css"]
138
141
  };
139
142
  }
140
143
  static get properties() {