@ionic/core 8.0.0-dev.11713893672.15a2b23e → 8.0.0-dev.11713988726.1e82b9a0

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 (982) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +14 -10
  3. package/components/backdrop.js +10 -6
  4. package/components/button.js +27 -10
  5. package/components/buttons.js +10 -6
  6. package/components/checkbox.js +26 -13
  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 +30 -9
  16. package/components/ion-app.js +5 -6
  17. package/components/ion-avatar.js +9 -2
  18. package/components/ion-back-button.js +15 -11
  19. package/components/ion-badge.js +9 -5
  20. package/components/ion-breadcrumb.js +39 -11
  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 +18 -9
  27. package/components/ion-chip.js +16 -6
  28. package/components/ion-col.js +5 -5
  29. package/components/ion-content.js +14 -12
  30. package/components/ion-datetime-button.js +9 -6
  31. package/components/ion-datetime.js +86 -31
  32. package/components/ion-fab-button.js +31 -10
  33. package/components/ion-fab-list.js +5 -5
  34. package/components/ion-fab.js +6 -6
  35. package/components/ion-footer.js +15 -11
  36. package/components/ion-grid.js +5 -5
  37. package/components/ion-header.js +15 -11
  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 +40 -10
  42. package/components/ion-input.js +38 -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 +11 -7
  46. package/components/ion-item-options.js +9 -5
  47. package/components/ion-item-sliding.js +5 -5
  48. package/components/ion-loading.js +12 -8
  49. package/components/ion-menu-button.js +13 -9
  50. package/components/ion-menu-toggle.js +5 -5
  51. package/components/ion-menu.js +11 -7
  52. package/components/ion-modal.js +13 -10
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +7 -6
  55. package/components/ion-note.js +9 -5
  56. package/components/ion-picker-legacy.js +7 -8
  57. package/components/ion-progress-bar.js +10 -6
  58. package/components/ion-range.js +11 -8
  59. package/components/ion-refresher-content.js +9 -8
  60. package/components/ion-refresher.js +11 -7
  61. package/components/ion-reorder-group.js +5 -5
  62. package/components/ion-reorder.js +25 -5
  63. package/components/ion-router-link.js +6 -6
  64. package/components/ion-router-outlet.js +2 -2
  65. package/components/ion-row.js +5 -2
  66. package/components/ion-searchbar.js +73 -16
  67. package/components/ion-segment-button.js +12 -8
  68. package/components/ion-segment.js +9 -5
  69. package/components/ion-select-option.js +5 -2
  70. package/components/ion-select.js +69 -25
  71. package/components/ion-skeleton-text.js +5 -5
  72. package/components/ion-split-pane.js +12 -8
  73. package/components/ion-tab-bar.js +9 -5
  74. package/components/ion-tab-button.js +11 -7
  75. package/components/ion-tab.js +2 -2
  76. package/components/ion-tabs.js +2 -2
  77. package/components/ion-text.js +5 -5
  78. package/components/ion-textarea.js +13 -9
  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 +47 -18
  83. package/components/ion-toolbar.js +11 -7
  84. package/components/ionic-global.js +191 -14
  85. package/components/ios.transition.js +1 -0
  86. package/components/item.js +32 -11
  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 +7 -150
  93. package/components/picker-column2.js +4 -4
  94. package/components/picker.js +8 -4
  95. package/components/popover.js +11 -8
  96. package/components/radio-group.js +5 -3
  97. package/components/radio.js +12 -8
  98. package/components/ripple-effect.js +5 -5
  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 -1
  103. package/css/core.css.map +1 -1
  104. package/css/display.css.map +1 -1
  105. package/css/flex-utils.css.map +1 -1
  106. package/css/float-elements.css.map +1 -1
  107. package/css/global.bundle.css.map +1 -1
  108. package/css/ionic/bundle.ionic.css +1 -0
  109. package/css/ionic/bundle.ionic.css.map +1 -0
  110. package/css/ionic/core.ionic.css +1 -0
  111. package/css/ionic/core.ionic.css.map +1 -0
  112. package/css/ionic/global.bundle.ionic.css +1 -0
  113. package/css/ionic/global.bundle.ionic.css.map +1 -0
  114. package/css/ionic/ionic-swiper.ionic.css +1 -0
  115. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  116. package/css/ionic/link.ionic.css +1 -0
  117. package/css/ionic/link.ionic.css.map +1 -0
  118. package/css/ionic/structure.ionic.css +1 -0
  119. package/css/ionic/structure.ionic.css.map +1 -0
  120. package/css/ionic/typography.ionic.css +1 -0
  121. package/css/ionic/typography.ionic.css.map +1 -0
  122. package/css/ionic/utils.bundle.ionic.css +1 -0
  123. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  124. package/css/ionic-swiper.css +1 -1
  125. package/css/ionic-swiper.css.map +1 -1
  126. package/css/ionic.bundle.css +1 -1
  127. package/css/ionic.bundle.css.map +1 -1
  128. package/css/normalize.css.map +1 -1
  129. package/css/padding.css.map +1 -1
  130. package/css/palettes/dark.always.css +1 -1
  131. package/css/palettes/dark.always.css.map +1 -1
  132. package/css/palettes/dark.class.css +1 -1
  133. package/css/palettes/dark.class.css.map +1 -1
  134. package/css/palettes/dark.system.css +1 -1
  135. package/css/palettes/dark.system.css.map +1 -1
  136. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  137. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  138. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  139. package/css/palettes/high-contrast.always.css.map +1 -1
  140. package/css/palettes/high-contrast.class.css.map +1 -1
  141. package/css/palettes/high-contrast.system.css.map +1 -1
  142. package/css/structure.css.map +1 -1
  143. package/css/text-alignment.css.map +1 -1
  144. package/css/text-transformation.css.map +1 -1
  145. package/css/typography.css.map +1 -1
  146. package/css/utils.bundle.css.map +1 -1
  147. package/dist/cjs/{app-globals-63aebf89.js → app-globals-afaa9c54.js} +1 -1
  148. package/dist/cjs/{data-21dc0f81.js → data-99329b16.js} +6 -6
  149. package/dist/cjs/{hardware-back-button-ad9299b4.js → hardware-back-button-6084a439.js} +1 -1
  150. package/dist/cjs/{index-5b6a7459.js → index-18f2ba3b.js} +2 -2
  151. package/dist/cjs/{index-ff66cc7c.js → index-7c699f7b.js} +2 -2
  152. package/dist/cjs/{index-5cf05f94.js → index-f378621f.js} +13 -12
  153. package/dist/cjs/index.cjs.js +7 -8
  154. package/dist/cjs/{input-shims-20d639e6.js → input-shims-077ab038.js} +3 -2
  155. package/dist/cjs/{input.utils-611cde0b.js → input.utils-1aac63e6.js} +2 -2
  156. package/dist/cjs/ion-accordion_2.cjs.entry.js +38 -14
  157. package/dist/cjs/ion-action-sheet.cjs.entry.js +15 -11
  158. package/dist/cjs/ion-alert.cjs.entry.js +16 -13
  159. package/dist/cjs/ion-app_8.cjs.entry.js +88 -68
  160. package/dist/cjs/ion-avatar_3.cjs.entry.js +21 -7
  161. package/dist/cjs/ion-back-button.cjs.entry.js +14 -10
  162. package/dist/cjs/ion-backdrop.cjs.entry.js +10 -6
  163. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +46 -14
  164. package/dist/cjs/ion-button_2.cjs.entry.js +30 -13
  165. package/dist/cjs/ion-card_5.cjs.entry.js +49 -25
  166. package/dist/cjs/ion-checkbox.cjs.entry.js +23 -12
  167. package/dist/cjs/ion-chip.cjs.entry.js +14 -5
  168. package/dist/cjs/ion-col_3.cjs.entry.js +13 -10
  169. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -11
  170. package/dist/cjs/ion-datetime_3.cjs.entry.js +167 -112
  171. package/dist/cjs/ion-fab_3.cjs.entry.js +39 -18
  172. package/dist/cjs/ion-img.cjs.entry.js +5 -2
  173. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +16 -13
  174. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +42 -12
  175. package/dist/cjs/ion-input.cjs.entry.js +37 -14
  176. package/dist/cjs/ion-item-option_3.cjs.entry.js +23 -16
  177. package/dist/cjs/ion-item_8.cjs.entry.js +84 -39
  178. package/dist/cjs/ion-loading.cjs.entry.js +14 -11
  179. package/dist/cjs/ion-menu_3.cjs.entry.js +29 -22
  180. package/dist/cjs/ion-modal.cjs.entry.js +21 -18
  181. package/dist/cjs/ion-nav_2.cjs.entry.js +9 -7
  182. package/dist/cjs/ion-picker-column-option.cjs.entry.js +9 -5
  183. package/dist/cjs/ion-picker-column.cjs.entry.js +7 -148
  184. package/dist/cjs/ion-picker.cjs.entry.js +8 -4
  185. package/dist/cjs/ion-popover.cjs.entry.js +17 -14
  186. package/dist/cjs/ion-progress-bar.cjs.entry.js +10 -6
  187. package/dist/cjs/ion-radio_2.cjs.entry.js +16 -10
  188. package/dist/cjs/ion-range.cjs.entry.js +16 -13
  189. package/dist/cjs/ion-refresher_2.cjs.entry.js +18 -14
  190. package/dist/cjs/ion-reorder_2.cjs.entry.js +28 -9
  191. package/dist/cjs/ion-ripple-effect.cjs.entry.js +5 -5
  192. package/dist/cjs/ion-route_4.cjs.entry.js +6 -6
  193. package/dist/cjs/ion-searchbar.cjs.entry.js +72 -15
  194. package/dist/cjs/ion-segment_2.cjs.entry.js +20 -12
  195. package/dist/cjs/ion-select_3.cjs.entry.js +82 -29
  196. package/dist/cjs/ion-spinner.cjs.entry.js +6 -6
  197. package/dist/cjs/ion-split-pane.cjs.entry.js +12 -8
  198. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +19 -11
  199. package/dist/cjs/ion-tab_2.cjs.entry.js +4 -4
  200. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  201. package/dist/cjs/ion-textarea.cjs.entry.js +14 -11
  202. package/dist/cjs/ion-toast.cjs.entry.js +36 -32
  203. package/dist/cjs/ion-toggle.cjs.entry.js +46 -17
  204. package/dist/cjs/ionic-global-2734c454.js +411 -0
  205. package/dist/cjs/ionic.cjs.js +3 -3
  206. package/dist/cjs/{ios.transition-06673f18.js → ios.transition-07077689.js} +2 -1
  207. package/dist/cjs/loader.cjs.js +3 -3
  208. package/dist/cjs/{md.transition-4d7bb4b1.js → md.transition-a829ffba.js} +1 -1
  209. package/dist/cjs/{overlays-6487955a.js → overlays-a247b257.js} +3 -4
  210. package/dist/cjs/{status-tap-0be20572.js → status-tap-870d407b.js} +2 -2
  211. package/dist/collection/components/accordion/accordion.ios.css +12 -0
  212. package/dist/collection/components/accordion/accordion.js +34 -15
  213. package/dist/collection/components/accordion/accordion.md.css +6 -0
  214. package/dist/collection/components/accordion-group/accordion-group.ios.css +12 -0
  215. package/dist/collection/components/accordion-group/accordion-group.js +11 -8
  216. package/dist/collection/components/accordion-group/accordion-group.md.css +18 -0
  217. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  218. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  219. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  220. package/dist/collection/components/alert/alert.ios.css +19 -1
  221. package/dist/collection/components/alert/alert.js +15 -12
  222. package/dist/collection/components/alert/alert.md.css +19 -1
  223. package/dist/collection/components/app/app.js +8 -4
  224. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  225. package/dist/collection/components/avatar/avatar.js +13 -4
  226. package/dist/collection/components/avatar/avatar.md.css +12 -0
  227. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  228. package/dist/collection/components/back-button/back-button.js +14 -11
  229. package/dist/collection/components/back-button/back-button.md.css +60 -48
  230. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  231. package/dist/collection/components/backdrop/backdrop.js +12 -6
  232. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  233. package/dist/collection/components/badge/badge.ios.css +12 -0
  234. package/dist/collection/components/badge/badge.js +11 -8
  235. package/dist/collection/components/badge/badge.md.css +12 -0
  236. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  237. package/dist/collection/components/breadcrumb/breadcrumb.js +39 -11
  238. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  239. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  240. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  241. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  242. package/dist/collection/components/button/button.ionic.css +579 -0
  243. package/dist/collection/components/button/button.ios.css +23 -5
  244. package/dist/collection/components/button/button.js +31 -14
  245. package/dist/collection/components/button/button.md.css +22 -12
  246. package/dist/collection/components/button/test/clear/button.e2e.js +6 -3
  247. package/dist/collection/components/button/test/shape/button.e2e.js +88 -0
  248. package/dist/collection/components/button/test/size/button.e2e.js +18 -1
  249. package/dist/collection/components/button/test/states/button.e2e.js +51 -0
  250. package/dist/collection/components/buttons/buttons.ios.css +22 -4
  251. package/dist/collection/components/buttons/buttons.js +14 -8
  252. package/dist/collection/components/buttons/buttons.md.css +18 -0
  253. package/dist/collection/components/card/card.ionic.css +88 -0
  254. package/dist/collection/components/card/card.ios.css +16 -3
  255. package/dist/collection/components/card/card.js +34 -10
  256. package/dist/collection/components/card/card.md.css +16 -3
  257. package/dist/collection/components/card/test/shape/card.e2e.js +34 -0
  258. package/dist/collection/components/card-content/card-content.ios.css +12 -0
  259. package/dist/collection/components/card-content/card-content.js +11 -8
  260. package/dist/collection/components/card-content/card-content.md.css +12 -0
  261. package/dist/collection/components/card-header/card-header.ios.css +12 -0
  262. package/dist/collection/components/card-header/card-header.js +12 -9
  263. package/dist/collection/components/card-header/card-header.md.css +12 -0
  264. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  265. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  266. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  267. package/dist/collection/components/card-title/card-title.ios.css +12 -0
  268. package/dist/collection/components/card-title/card-title.js +11 -8
  269. package/dist/collection/components/card-title/card-title.md.css +12 -0
  270. package/dist/collection/components/checkbox/checkbox.ionic.css +496 -0
  271. package/dist/collection/components/checkbox/checkbox.ios.css +20 -3
  272. package/dist/collection/components/checkbox/checkbox.js +58 -13
  273. package/dist/collection/components/checkbox/checkbox.md.css +21 -4
  274. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +66 -1
  275. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +1 -1
  276. package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +32 -1
  277. package/dist/collection/components/chip/chip.ionic.css +133 -0
  278. package/dist/collection/components/chip/chip.ios.css +6 -0
  279. package/dist/collection/components/chip/chip.js +33 -8
  280. package/dist/collection/components/chip/chip.md.css +6 -0
  281. package/dist/collection/components/chip/test/shape/chip.e2e.js +34 -0
  282. package/dist/collection/components/chip/test/states/chip.e2e.js +16 -0
  283. package/dist/collection/components/col/col.css +12 -0
  284. package/dist/collection/components/col/col.js +9 -5
  285. package/dist/collection/components/content/content.css +8 -2
  286. package/dist/collection/components/content/content.js +33 -11
  287. package/dist/collection/components/content/test/content.spec.js +27 -0
  288. package/dist/collection/components/datetime/datetime.ios.css +15 -3
  289. package/dist/collection/components/datetime/datetime.js +86 -30
  290. package/dist/collection/components/datetime/datetime.md.css +15 -3
  291. package/dist/collection/components/datetime/test/overlay-roles/datetime.e2e.js +34 -0
  292. package/dist/collection/components/datetime/utils/data.js +3 -3
  293. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  294. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  295. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  296. package/dist/collection/components/fab/fab.css +25 -1
  297. package/dist/collection/components/fab/fab.js +9 -5
  298. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  299. package/dist/collection/components/fab-button/fab-button.js +35 -15
  300. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  301. package/dist/collection/components/fab-list/fab-list.css +12 -0
  302. package/dist/collection/components/fab-list/fab-list.js +9 -5
  303. package/dist/collection/components/footer/footer.ios.css +14 -2
  304. package/dist/collection/components/footer/footer.js +17 -14
  305. package/dist/collection/components/footer/footer.md.css +12 -0
  306. package/dist/collection/components/grid/grid.css +12 -0
  307. package/dist/collection/components/grid/grid.js +9 -5
  308. package/dist/collection/components/header/header.ios.css +14 -2
  309. package/dist/collection/components/header/header.js +17 -14
  310. package/dist/collection/components/header/header.md.css +12 -0
  311. package/dist/collection/components/img/img.js +8 -2
  312. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  313. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  314. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  315. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  316. package/dist/collection/components/input/input.ios.css +20 -2
  317. package/dist/collection/components/input/input.js +55 -14
  318. package/dist/collection/components/input/input.md.css +42 -4
  319. package/dist/collection/components/input/test/input.spec.js +13 -0
  320. package/dist/collection/components/input-password-toggle/input-password-toggle.js +39 -7
  321. package/dist/collection/components/item/item.ios.css +20 -8
  322. package/dist/collection/components/item/item.js +36 -16
  323. package/dist/collection/components/item/item.md.css +31 -7
  324. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  325. package/dist/collection/components/item-divider/item-divider.js +11 -8
  326. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  327. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  328. package/dist/collection/components/item-group/item-group.js +13 -7
  329. package/dist/collection/components/item-group/item-group.md.css +12 -0
  330. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  331. package/dist/collection/components/item-option/item-option.js +11 -8
  332. package/dist/collection/components/item-option/item-option.md.css +14 -2
  333. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  334. package/dist/collection/components/item-options/item-options.js +13 -7
  335. package/dist/collection/components/item-options/item-options.md.css +18 -0
  336. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  337. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  338. package/dist/collection/components/label/label.ios.css +18 -0
  339. package/dist/collection/components/label/label.js +11 -8
  340. package/dist/collection/components/label/label.md.css +18 -0
  341. package/dist/collection/components/list/list.ios.css +18 -0
  342. package/dist/collection/components/list/list.js +12 -9
  343. package/dist/collection/components/list/list.md.css +18 -0
  344. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  345. package/dist/collection/components/list-header/list-header.js +11 -8
  346. package/dist/collection/components/list-header/list-header.md.css +18 -0
  347. package/dist/collection/components/loading/loading.ios.css +13 -1
  348. package/dist/collection/components/loading/loading.js +13 -10
  349. package/dist/collection/components/loading/loading.md.css +13 -1
  350. package/dist/collection/components/menu/menu.ios.css +15 -3
  351. package/dist/collection/components/menu/menu.js +12 -7
  352. package/dist/collection/components/menu/menu.md.css +15 -3
  353. package/dist/collection/components/menu-button/menu-button.ios.css +16 -4
  354. package/dist/collection/components/menu-button/menu-button.js +12 -9
  355. package/dist/collection/components/menu-button/menu-button.md.css +17 -5
  356. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  357. package/dist/collection/components/modal/modal.ios.css +14 -2
  358. package/dist/collection/components/modal/modal.js +12 -9
  359. package/dist/collection/components/modal/modal.md.css +14 -2
  360. package/dist/collection/components/nav/nav.css +7 -1
  361. package/dist/collection/components/nav/nav.js +11 -5
  362. package/dist/collection/components/nav-link/nav-link.js +5 -1
  363. package/dist/collection/components/note/note.ios.css +12 -0
  364. package/dist/collection/components/note/note.js +11 -8
  365. package/dist/collection/components/note/note.md.css +12 -0
  366. package/dist/collection/components/picker/picker.ios.css +15 -3
  367. package/dist/collection/components/picker/picker.js +8 -5
  368. package/dist/collection/components/picker/picker.md.css +15 -3
  369. package/dist/collection/components/picker-column/picker-column.css +8 -20
  370. package/dist/collection/components/picker-column/picker-column.js +8 -153
  371. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  372. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  373. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  374. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  375. package/dist/collection/components/picker-legacy/picker.js +7 -6
  376. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  377. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  378. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  379. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  380. package/dist/collection/components/popover/popover.ios.css +13 -1
  381. package/dist/collection/components/popover/popover.js +15 -12
  382. package/dist/collection/components/popover/popover.md.css +13 -1
  383. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  384. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  385. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  386. package/dist/collection/components/radio/radio.ios.css +20 -3
  387. package/dist/collection/components/radio/radio.js +12 -9
  388. package/dist/collection/components/radio/radio.md.css +20 -3
  389. package/dist/collection/components/radio-group/radio-group.js +9 -3
  390. package/dist/collection/components/range/range.ios.css +12 -0
  391. package/dist/collection/components/range/range.js +12 -9
  392. package/dist/collection/components/range/range.md.css +12 -0
  393. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  394. package/dist/collection/components/refresher/refresher.js +11 -8
  395. package/dist/collection/components/refresher/refresher.md.css +15 -2
  396. package/dist/collection/components/refresher-content/refresher-content.js +12 -7
  397. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  398. package/dist/collection/components/reorder/reorder.js +28 -6
  399. package/dist/collection/components/reorder/reorder.md.css +6 -0
  400. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  401. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  402. package/dist/collection/components/ripple-effect/ripple-effect.css +7 -1
  403. package/dist/collection/components/ripple-effect/ripple-effect.js +8 -4
  404. package/dist/collection/components/route/route.js +4 -0
  405. package/dist/collection/components/router/router.js +4 -0
  406. package/dist/collection/components/router-link/router-link.css +8 -2
  407. package/dist/collection/components/router-link/router-link.js +9 -5
  408. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  409. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  410. package/dist/collection/components/row/row.css +12 -0
  411. package/dist/collection/components/row/row.js +9 -2
  412. package/dist/collection/components/searchbar/searchbar.ios.css +14 -2
  413. package/dist/collection/components/searchbar/searchbar.js +79 -24
  414. package/dist/collection/components/searchbar/searchbar.md.css +14 -2
  415. package/dist/collection/components/segment/segment.ios.css +18 -0
  416. package/dist/collection/components/segment/segment.js +11 -8
  417. package/dist/collection/components/segment/segment.md.css +18 -0
  418. package/dist/collection/components/segment-button/segment-button.ios.css +16 -4
  419. package/dist/collection/components/segment-button/segment-button.js +12 -9
  420. package/dist/collection/components/segment-button/segment-button.md.css +18 -6
  421. package/dist/collection/components/select/select.ios.css +22 -3
  422. package/dist/collection/components/select/select.js +72 -28
  423. package/dist/collection/components/select/select.md.css +38 -5
  424. package/dist/collection/components/select-option/select-option.js +9 -2
  425. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  426. package/dist/collection/components/select-popover/select-popover.js +12 -4
  427. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  428. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  429. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  430. package/dist/collection/components/spinner/spinner.css +6 -0
  431. package/dist/collection/components/spinner/spinner.js +10 -6
  432. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  433. package/dist/collection/components/split-pane/split-pane.js +14 -8
  434. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  435. package/dist/collection/components/tab/tab.js +6 -2
  436. package/dist/collection/components/tab-bar/tab-bar.ionic.css +151 -0
  437. package/dist/collection/components/tab-bar/tab-bar.ios.css +18 -0
  438. package/dist/collection/components/tab-bar/tab-bar.js +12 -9
  439. package/dist/collection/components/tab-bar/tab-bar.md.css +18 -0
  440. package/dist/collection/components/tab-bar/test/basic/tab-bar.e2e.js +34 -0
  441. package/dist/collection/components/tab-button/tab-button.ionic.css +258 -0
  442. package/dist/collection/components/tab-button/tab-button.ios.css +15 -3
  443. package/dist/collection/components/tab-button/tab-button.js +11 -8
  444. package/dist/collection/components/tab-button/tab-button.md.css +15 -3
  445. package/dist/collection/components/tabs/tabs.css +7 -1
  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 +26 -1
  450. package/dist/collection/components/textarea/textarea.js +15 -12
  451. package/dist/collection/components/textarea/textarea.md.css +39 -2
  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 +20 -3
  462. package/dist/collection/components/toggle/toggle.js +46 -18
  463. package/dist/collection/components/toggle/toggle.md.css +20 -3
  464. package/dist/collection/components/toolbar/toolbar.ios.css +14 -2
  465. package/dist/collection/components/toolbar/toolbar.js +13 -10
  466. package/dist/collection/components/toolbar/toolbar.md.css +14 -2
  467. package/dist/collection/css/test/link/basic/link.e2e.js +35 -0
  468. package/dist/collection/css/test/{a11y → typography/a11y}/typography.e2e.js +1 -1
  469. package/dist/collection/css/test/typography/basic/typography.e2e.js +90 -0
  470. package/dist/collection/global/ionic-global.js +161 -13
  471. package/dist/collection/global/test/ionic-global.spec.js +109 -0
  472. package/dist/collection/themes/{test → native/test}/colors/theme.e2e.js +1 -1
  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 +3994 -276
  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 +38 -14
  493. package/dist/esm/ion-action-sheet.entry.js +17 -13
  494. package/dist/esm/ion-alert.entry.js +18 -15
  495. package/dist/esm/ion-app_8.entry.js +78 -58
  496. package/dist/esm/ion-avatar_3.entry.js +22 -8
  497. package/dist/esm/ion-back-button.entry.js +15 -11
  498. package/dist/esm/ion-backdrop.entry.js +11 -7
  499. package/dist/esm/ion-breadcrumb_2.entry.js +47 -15
  500. package/dist/esm/ion-button_2.entry.js +28 -11
  501. package/dist/esm/ion-card_5.entry.js +50 -26
  502. package/dist/esm/ion-checkbox.entry.js +24 -13
  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 +99 -44
  507. package/dist/esm/ion-fab_3.entry.js +40 -19
  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 +40 -10
  511. package/dist/esm/ion-input.entry.js +38 -15
  512. package/dist/esm/ion-item-option_3.entry.js +24 -17
  513. package/dist/esm/ion-item_8.entry.js +85 -40
  514. package/dist/esm/ion-loading.entry.js +15 -12
  515. package/dist/esm/ion-menu_3.entry.js +30 -23
  516. package/dist/esm/ion-modal.entry.js +17 -14
  517. package/dist/esm/ion-nav_2.entry.js +10 -8
  518. package/dist/esm/ion-picker-column-option.entry.js +10 -6
  519. package/dist/esm/ion-picker-column.entry.js +8 -149
  520. package/dist/esm/ion-picker.entry.js +9 -5
  521. package/dist/esm/ion-popover.entry.js +15 -12
  522. package/dist/esm/ion-progress-bar.entry.js +11 -7
  523. package/dist/esm/ion-radio_2.entry.js +17 -11
  524. package/dist/esm/ion-range.entry.js +12 -9
  525. package/dist/esm/ion-refresher_2.entry.js +19 -15
  526. package/dist/esm/ion-reorder_2.entry.js +29 -10
  527. package/dist/esm/ion-ripple-effect.entry.js +6 -6
  528. package/dist/esm/ion-route_4.entry.js +7 -7
  529. package/dist/esm/ion-searchbar.entry.js +73 -16
  530. package/dist/esm/ion-segment_2.entry.js +21 -13
  531. package/dist/esm/ion-select_3.entry.js +83 -30
  532. package/dist/esm/ion-spinner.entry.js +7 -7
  533. package/dist/esm/ion-split-pane.entry.js +13 -9
  534. package/dist/esm/ion-tab-bar_2.entry.js +20 -12
  535. package/dist/esm/ion-tab_2.entry.js +5 -5
  536. package/dist/esm/ion-text.entry.js +6 -6
  537. package/dist/esm/ion-textarea.entry.js +15 -12
  538. package/dist/esm/ion-toast.entry.js +16 -12
  539. package/dist/esm/ion-toggle.entry.js +47 -18
  540. package/dist/esm/ionic-global-ccd91ba4.js +401 -0
  541. package/dist/esm/ionic.js +5 -5
  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 +1944 -88
  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-43505ff8.system.entry.js → p-047dbdb1.system.entry.js} +1 -1
  619. package/dist/ionic/p-053d229a.system.js +4 -0
  620. package/dist/ionic/p-053d3fb1.entry.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-3d6e882f.system.entry.js → p-09e29b0f.system.entry.js} +1 -1
  624. package/dist/ionic/{p-58ea73f7.system.entry.js → p-0a567068.system.entry.js} +1 -1
  625. package/dist/ionic/p-0a5bb1da.entry.js +4 -0
  626. package/dist/ionic/p-0a60889a.system.entry.js +4 -0
  627. package/dist/ionic/p-0b803b36.system.entry.js +4 -0
  628. package/dist/ionic/p-0cbb7a38.entry.js +4 -0
  629. package/dist/ionic/p-0d959052.entry.js +4 -0
  630. package/dist/ionic/p-0ff8a4e7.entry.js +4 -0
  631. package/dist/ionic/p-1378644b.system.entry.js +4 -0
  632. package/dist/ionic/{p-17978fce.entry.js → p-13aa82f5.entry.js} +1 -1
  633. package/dist/ionic/p-14bc1127.entry.js +4 -0
  634. package/dist/ionic/p-15714c69.system.entry.js +4 -0
  635. package/dist/ionic/p-15c6083b.system.entry.js +4 -0
  636. package/dist/ionic/p-16c337e2.entry.js +4 -0
  637. package/dist/ionic/{p-3040730e.js → p-17f4c151.js} +1 -1
  638. package/dist/ionic/p-1ad4072e.entry.js +4 -0
  639. package/dist/ionic/{p-d60342e3.js → p-1b039c87.js} +1 -1
  640. package/dist/ionic/{p-0c06e09b.system.js → p-1d608fb3.system.js} +1 -1
  641. package/dist/ionic/p-1fcfcb94.js +4 -0
  642. package/dist/ionic/{p-71215c1d.system.js → p-2172efcb.system.js} +1 -1
  643. package/dist/ionic/p-21ee6d54.system.entry.js +4 -0
  644. package/dist/ionic/p-26a955b2.system.entry.js +4 -0
  645. package/dist/ionic/p-2bb19623.system.entry.js +4 -0
  646. package/dist/ionic/p-2e4abd54.entry.js +4 -0
  647. package/dist/ionic/p-2f0454a4.system.entry.js +4 -0
  648. package/dist/ionic/{p-fda4872f.entry.js → p-34a79000.entry.js} +1 -1
  649. package/dist/ionic/p-3dd3cb26.system.entry.js +4 -0
  650. package/dist/ionic/p-3f073322.system.js +4 -0
  651. package/dist/ionic/p-41444ceb.entry.js +4 -0
  652. package/dist/ionic/p-42a60fc6.entry.js +4 -0
  653. package/dist/ionic/{p-96cc4814.js → p-4c463790.js} +1 -1
  654. package/dist/ionic/p-4f728192.system.entry.js +4 -0
  655. package/dist/ionic/p-507bf356.system.entry.js +4 -0
  656. package/dist/ionic/p-510c8716.entry.js +4 -0
  657. package/dist/ionic/p-541e2e0a.system.js +4 -0
  658. package/dist/ionic/p-55882fc4.system.entry.js +4 -0
  659. package/dist/ionic/p-560b4cfa.entry.js +4 -0
  660. package/dist/ionic/p-594923b2.entry.js +4 -0
  661. package/dist/ionic/p-5bef1e83.js +4 -0
  662. package/dist/ionic/p-5cbdd9e3.entry.js +4 -0
  663. package/dist/ionic/p-65fe9b29.system.entry.js +4 -0
  664. package/dist/ionic/p-6bc5f5db.entry.js +4 -0
  665. package/dist/ionic/p-6bd8a3f8.system.entry.js +4 -0
  666. package/dist/ionic/p-6bee0fd7.system.entry.js +4 -0
  667. package/dist/ionic/p-6d2aa487.entry.js +4 -0
  668. package/dist/ionic/p-6d9b2c33.system.entry.js +4 -0
  669. package/dist/ionic/p-6eb11291.entry.js +4 -0
  670. package/dist/ionic/p-73e3a38e.system.js +4 -0
  671. package/dist/ionic/p-748469e5.entry.js +4 -0
  672. package/dist/ionic/p-7872a01f.system.entry.js +4 -0
  673. package/dist/ionic/p-79119dca.system.entry.js +4 -0
  674. package/dist/ionic/p-7b053f42.system.entry.js +4 -0
  675. package/dist/ionic/p-7c319cce.entry.js +4 -0
  676. package/dist/ionic/p-809dc691.system.js +4 -0
  677. package/dist/ionic/p-8304afaa.js +4 -0
  678. package/dist/ionic/p-84dfeae5.entry.js +4 -0
  679. package/dist/ionic/p-864309ff.entry.js +4 -0
  680. package/dist/ionic/p-899dfb1b.entry.js +4 -0
  681. package/dist/ionic/p-8c11da86.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-91e0fae3.system.entry.js +4 -0
  685. package/dist/ionic/p-925c3274.system.entry.js +4 -0
  686. package/dist/ionic/p-9486ad09.entry.js +4 -0
  687. package/dist/ionic/p-95382987.entry.js +4 -0
  688. package/dist/ionic/p-958392b3.system.entry.js +4 -0
  689. package/dist/ionic/p-9a3a8dae.system.entry.js +4 -0
  690. package/dist/ionic/p-9ade14d0.entry.js +4 -0
  691. package/dist/ionic/p-9b13de79.js +4 -0
  692. package/dist/ionic/p-9be416f1.entry.js +4 -0
  693. package/dist/ionic/p-9c452996.entry.js +4 -0
  694. package/dist/ionic/p-9e3fc5c4.entry.js +4 -0
  695. package/dist/ionic/p-9e81053f.system.entry.js +4 -0
  696. package/dist/ionic/p-9eda6c5d.system.entry.js +4 -0
  697. package/dist/ionic/p-a16903c4.system.entry.js +4 -0
  698. package/dist/ionic/p-a35191f4.entry.js +4 -0
  699. package/dist/ionic/{p-c222f76a.js → p-a3e86f85.js} +1 -1
  700. package/dist/ionic/p-a4d1b5cc.js +4 -0
  701. package/dist/ionic/p-a5223322.entry.js +4 -0
  702. package/dist/ionic/p-a6fbf92e.system.entry.js +4 -0
  703. package/dist/ionic/p-a7727720.system.entry.js +4 -0
  704. package/dist/ionic/p-ac8bf1dc.system.entry.js +4 -0
  705. package/dist/ionic/p-ae5ef403.js +4 -0
  706. package/dist/ionic/p-b036467b.system.entry.js +4 -0
  707. package/dist/ionic/p-b18961ff.entry.js +4 -0
  708. package/dist/ionic/p-b1abddbc.system.entry.js +4 -0
  709. package/dist/ionic/{p-c1d1d004.system.entry.js → p-b2f88f88.system.entry.js} +1 -1
  710. package/dist/ionic/p-b61a2062.js +4 -0
  711. package/dist/ionic/p-b68096c3.js +4 -0
  712. package/dist/ionic/p-b96df23f.system.entry.js +4 -0
  713. package/dist/ionic/p-bc302e69.entry.js +4 -0
  714. package/dist/ionic/p-bfdfa197.system.entry.js +4 -0
  715. package/dist/ionic/p-c1373383.entry.js +4 -0
  716. package/dist/ionic/{p-f687573e.system.js → p-c3db3abe.system.js} +1 -1
  717. package/dist/ionic/p-c46c441e.system.entry.js +4 -0
  718. package/dist/ionic/p-c78743ee.entry.js +4 -0
  719. package/dist/ionic/p-cb1a9f57.system.js +4 -0
  720. package/dist/ionic/p-cb40aff5.entry.js +4 -0
  721. package/dist/ionic/p-ccc12f7c.system.js +4 -0
  722. package/dist/ionic/p-cda2e303.system.entry.js +4 -0
  723. package/dist/ionic/p-cdc68278.system.entry.js +4 -0
  724. package/dist/ionic/p-d24eee88.entry.js +4 -0
  725. package/dist/ionic/p-d26ef51c.system.js +4 -0
  726. package/dist/ionic/p-d4755af4.entry.js +4 -0
  727. package/dist/ionic/p-d4fe6131.entry.js +4 -0
  728. package/dist/ionic/p-da4bd7e1.system.entry.js +4 -0
  729. package/dist/ionic/p-da907c11.entry.js +4 -0
  730. package/dist/ionic/p-dba9dc96.entry.js +4 -0
  731. package/dist/ionic/p-dbc7e0bc.system.entry.js +4 -0
  732. package/dist/ionic/p-dde515cb.system.entry.js +4 -0
  733. package/dist/ionic/{p-04070329.system.entry.js → p-dfe87e18.system.entry.js} +1 -1
  734. package/dist/ionic/p-eb0c6a8b.system.js +4 -0
  735. package/dist/ionic/p-ec6b6448.entry.js +4 -0
  736. package/dist/ionic/{p-74a9cafe.system.js → p-ed5175cf.system.js} +2 -2
  737. package/dist/ionic/p-eed178ea.system.js +4 -0
  738. package/dist/ionic/p-f5003c30.entry.js +4 -0
  739. package/dist/ionic/{p-99daf8b7.entry.js → p-f8f6cf70.entry.js} +1 -1
  740. package/dist/ionic/p-f91ea85e.system.entry.js +4 -0
  741. package/dist/ionic/p-f9fc539a.system.entry.js +4 -0
  742. package/dist/ionic/{p-9ad82dba.js → p-fc0aa455.js} +1 -1
  743. package/dist/ionic/{p-d98c0112.entry.js → p-fdf42961.entry.js} +1 -1
  744. package/dist/ionic/p-fdfb6054.system.js +4 -0
  745. package/dist/types/components/accordion/accordion.d.ts +13 -2
  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 +22 -1
  757. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  758. package/dist/types/components/button/button.d.ts +8 -3
  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 +10 -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 +11 -0
  769. package/dist/types/components/datetime/datetime.d.ts +42 -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 +14 -3
  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 +17 -2
  782. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +20 -0
  783. package/dist/types/components/item/item.d.ts +15 -4
  784. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  785. package/dist/types/components/item-group/item-group.d.ts +4 -0
  786. package/dist/types/components/item-option/item-option.d.ts +2 -1
  787. package/dist/types/components/item-options/item-options.d.ts +4 -0
  788. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  789. package/dist/types/components/label/label.d.ts +2 -1
  790. package/dist/types/components/list/list.d.ts +2 -1
  791. package/dist/types/components/list-header/list-header.d.ts +2 -1
  792. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  793. package/dist/types/components/loading/loading.d.ts +3 -2
  794. package/dist/types/components/menu/menu.d.ts +3 -0
  795. package/dist/types/components/menu-button/menu-button.d.ts +2 -1
  796. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  797. package/dist/types/components/modal/modal-interface.d.ts +3 -7
  798. package/dist/types/components/modal/modal.d.ts +2 -1
  799. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  800. package/dist/types/components/nav/nav.d.ts +5 -1
  801. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  802. package/dist/types/components/note/note.d.ts +2 -1
  803. package/dist/types/components/picker/picker.d.ts +2 -1
  804. package/dist/types/components/picker-column/picker-column.d.ts +2 -36
  805. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  806. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  807. package/dist/types/components/popover/popover-interface.d.ts +3 -7
  808. package/dist/types/components/popover/popover.d.ts +6 -5
  809. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  810. package/dist/types/components/radio/radio.d.ts +2 -1
  811. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  812. package/dist/types/components/range/range.d.ts +2 -1
  813. package/dist/types/components/refresher/refresher.d.ts +2 -1
  814. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  815. package/dist/types/components/reorder/reorder.d.ts +13 -0
  816. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  817. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  818. package/dist/types/components/route/route.d.ts +4 -0
  819. package/dist/types/components/router/router.d.ts +4 -0
  820. package/dist/types/components/router-link/router-link.d.ts +4 -0
  821. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  822. package/dist/types/components/row/row.d.ts +4 -0
  823. package/dist/types/components/searchbar/searchbar.d.ts +39 -8
  824. package/dist/types/components/segment/segment.d.ts +2 -1
  825. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  826. package/dist/types/components/select/select.d.ts +26 -5
  827. package/dist/types/components/select-option/select-option.d.ts +4 -0
  828. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  829. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  830. package/dist/types/components/spinner/spinner.d.ts +4 -0
  831. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  832. package/dist/types/components/tab/tab.d.ts +4 -0
  833. package/dist/types/components/tab-bar/tab-bar.d.ts +3 -2
  834. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  835. package/dist/types/components/tabs/tabs.d.ts +3 -0
  836. package/dist/types/components/text/text.d.ts +2 -1
  837. package/dist/types/components/textarea/textarea.d.ts +3 -2
  838. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  839. package/dist/types/components/title/title.d.ts +4 -0
  840. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  841. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  842. package/dist/types/components/toast/toast.d.ts +3 -2
  843. package/dist/types/components/toggle/toggle.d.ts +22 -1
  844. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  845. package/dist/types/components.d.ts +1240 -168
  846. package/dist/types/global/ionic-global.d.ts +25 -2
  847. package/dist/types/interface.d.ts +3 -0
  848. package/dist/types/utils/config.d.ts +99 -2
  849. package/dist/types/utils/overlays-interface.d.ts +31 -1
  850. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  851. package/hydrate/index.js +1584 -764
  852. package/package.json +7 -4
  853. package/components/index9.js +0 -167
  854. package/dist/cjs/index-5915f9b3.js +0 -38
  855. package/dist/cjs/ionic-global-1adf9bc4.js +0 -230
  856. package/dist/collection/components/button/test/round/button.e2e.js +0 -52
  857. package/dist/collection/components/picker-column/test/picker-column.spec.js +0 -83
  858. package/dist/esm/index-9b0d46f4.js +0 -34
  859. package/dist/esm/ionic-global-c4e0c089.js +0 -224
  860. package/dist/esm-es5/app-globals-b8e5e7fa.js +0 -4
  861. package/dist/esm-es5/data-ae11fd43.js +0 -4
  862. package/dist/esm-es5/index-10916999.js +0 -4
  863. package/dist/esm-es5/index-5cc724f3.js +0 -4
  864. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  865. package/dist/esm-es5/input-shims-4530285e.js +0 -4
  866. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  867. package/dist/esm-es5/ionic-global-c4e0c089.js +0 -4
  868. package/dist/esm-es5/ios.transition-8e181a7e.js +0 -4
  869. package/dist/esm-es5/md.transition-f1c3c737.js +0 -4
  870. package/dist/esm-es5/overlays-9472c98b.js +0 -4
  871. package/dist/esm-es5/status-tap-39da9160.js +0 -4
  872. package/dist/ionic/p-012cc611.system.entry.js +0 -4
  873. package/dist/ionic/p-06e58c4e.js +0 -4
  874. package/dist/ionic/p-06fee233.js +0 -4
  875. package/dist/ionic/p-07ae133d.system.entry.js +0 -4
  876. package/dist/ionic/p-0aa4682e.entry.js +0 -4
  877. package/dist/ionic/p-0bbb6edf.system.entry.js +0 -4
  878. package/dist/ionic/p-0ebb1fe7.system.entry.js +0 -4
  879. package/dist/ionic/p-0f2d99a6.entry.js +0 -4
  880. package/dist/ionic/p-100bedc4.system.entry.js +0 -4
  881. package/dist/ionic/p-105f7d62.system.entry.js +0 -4
  882. package/dist/ionic/p-155f1939.entry.js +0 -4
  883. package/dist/ionic/p-1672c4fd.system.entry.js +0 -4
  884. package/dist/ionic/p-18057853.entry.js +0 -4
  885. package/dist/ionic/p-1c451f69.entry.js +0 -4
  886. package/dist/ionic/p-1cff9cad.entry.js +0 -4
  887. package/dist/ionic/p-1f9cdee2.entry.js +0 -4
  888. package/dist/ionic/p-24a98ee7.entry.js +0 -4
  889. package/dist/ionic/p-25575222.system.js +0 -4
  890. package/dist/ionic/p-266fc56e.system.js +0 -4
  891. package/dist/ionic/p-2e12bda2.entry.js +0 -4
  892. package/dist/ionic/p-2f6cedaf.system.entry.js +0 -4
  893. package/dist/ionic/p-3232c4de.entry.js +0 -4
  894. package/dist/ionic/p-352f7037.system.entry.js +0 -4
  895. package/dist/ionic/p-35722bba.system.entry.js +0 -4
  896. package/dist/ionic/p-35b9e842.entry.js +0 -4
  897. package/dist/ionic/p-37a63e79.system.entry.js +0 -4
  898. package/dist/ionic/p-3c70b01b.entry.js +0 -4
  899. package/dist/ionic/p-3e3b34f7.system.entry.js +0 -4
  900. package/dist/ionic/p-3f70bfba.entry.js +0 -4
  901. package/dist/ionic/p-4196b2d1.system.entry.js +0 -4
  902. package/dist/ionic/p-4429fc97.system.entry.js +0 -4
  903. package/dist/ionic/p-46111310.js +0 -4
  904. package/dist/ionic/p-46f407f0.system.js +0 -4
  905. package/dist/ionic/p-49b6fee0.system.entry.js +0 -4
  906. package/dist/ionic/p-4a615fea.entry.js +0 -4
  907. package/dist/ionic/p-5033128d.system.js +0 -4
  908. package/dist/ionic/p-510578f3.system.entry.js +0 -4
  909. package/dist/ionic/p-51b68ec9.system.entry.js +0 -4
  910. package/dist/ionic/p-51ff648c.entry.js +0 -4
  911. package/dist/ionic/p-5270f8e8.entry.js +0 -4
  912. package/dist/ionic/p-546433d2.js +0 -4
  913. package/dist/ionic/p-54f76ced.js +0 -4
  914. package/dist/ionic/p-56c3b69c.entry.js +0 -4
  915. package/dist/ionic/p-587258c0.system.entry.js +0 -4
  916. package/dist/ionic/p-596e0cf8.system.entry.js +0 -4
  917. package/dist/ionic/p-5ae49f12.entry.js +0 -4
  918. package/dist/ionic/p-5b1273f4.system.entry.js +0 -4
  919. package/dist/ionic/p-5d3f6707.entry.js +0 -4
  920. package/dist/ionic/p-5da04d11.entry.js +0 -4
  921. package/dist/ionic/p-5e7c32e8.system.entry.js +0 -4
  922. package/dist/ionic/p-5fa8587e.system.entry.js +0 -4
  923. package/dist/ionic/p-6771c0a9.system.entry.js +0 -4
  924. package/dist/ionic/p-68a1e274.system.entry.js +0 -4
  925. package/dist/ionic/p-6994c97a.js +0 -4
  926. package/dist/ionic/p-69bc14fd.entry.js +0 -4
  927. package/dist/ionic/p-6a7eac5a.js +0 -4
  928. package/dist/ionic/p-6f4db5ce.system.entry.js +0 -4
  929. package/dist/ionic/p-71688099.system.entry.js +0 -4
  930. package/dist/ionic/p-716ab5f8.system.entry.js +0 -4
  931. package/dist/ionic/p-75cddcc9.js +0 -4
  932. package/dist/ionic/p-7d9eefb3.system.js +0 -4
  933. package/dist/ionic/p-7fc505bf.entry.js +0 -4
  934. package/dist/ionic/p-83321ee8.entry.js +0 -4
  935. package/dist/ionic/p-83b070b7.entry.js +0 -4
  936. package/dist/ionic/p-88cff52d.entry.js +0 -4
  937. package/dist/ionic/p-896111fa.entry.js +0 -4
  938. package/dist/ionic/p-89b59bd7.entry.js +0 -4
  939. package/dist/ionic/p-8bd567ba.system.entry.js +0 -4
  940. package/dist/ionic/p-8e9ac22d.entry.js +0 -4
  941. package/dist/ionic/p-92e46b28.system.entry.js +0 -4
  942. package/dist/ionic/p-9540561f.entry.js +0 -4
  943. package/dist/ionic/p-9d7fc908.system.js +0 -4
  944. package/dist/ionic/p-9ea607bd.system.js +0 -4
  945. package/dist/ionic/p-a1b4e619.system.entry.js +0 -4
  946. package/dist/ionic/p-a7ba2dcc.system.js +0 -4
  947. package/dist/ionic/p-a8f02173.system.js +0 -4
  948. package/dist/ionic/p-aa110ca0.system.entry.js +0 -4
  949. package/dist/ionic/p-aa682cb9.system.entry.js +0 -4
  950. package/dist/ionic/p-ab85debb.entry.js +0 -4
  951. package/dist/ionic/p-ac4e2a74.system.entry.js +0 -4
  952. package/dist/ionic/p-ac9f44a8.system.entry.js +0 -4
  953. package/dist/ionic/p-c04d5a75.entry.js +0 -4
  954. package/dist/ionic/p-c41af68a.entry.js +0 -4
  955. package/dist/ionic/p-c478747f.system.js +0 -4
  956. package/dist/ionic/p-c80d05c9.js +0 -4
  957. package/dist/ionic/p-c8f2b769.entry.js +0 -4
  958. package/dist/ionic/p-c99ccdc9.entry.js +0 -4
  959. package/dist/ionic/p-c9c39c98.system.entry.js +0 -4
  960. package/dist/ionic/p-cae889f9.entry.js +0 -4
  961. package/dist/ionic/p-d2544865.system.js +0 -4
  962. package/dist/ionic/p-d45c59a6.system.entry.js +0 -4
  963. package/dist/ionic/p-d5f48185.system.entry.js +0 -4
  964. package/dist/ionic/p-d79542bd.system.js +0 -4
  965. package/dist/ionic/p-d8067ea4.system.entry.js +0 -4
  966. package/dist/ionic/p-d8f66669.entry.js +0 -4
  967. package/dist/ionic/p-dc1372e0.entry.js +0 -4
  968. package/dist/ionic/p-df48edd6.entry.js +0 -4
  969. package/dist/ionic/p-df6fa126.entry.js +0 -4
  970. package/dist/ionic/p-e8a0e731.entry.js +0 -4
  971. package/dist/ionic/p-e955bf61.entry.js +0 -4
  972. package/dist/ionic/p-ea2c16b5.system.entry.js +0 -4
  973. package/dist/ionic/p-f0392d49.entry.js +0 -4
  974. package/dist/ionic/p-f4cb521c.js +0 -4
  975. package/dist/ionic/p-f818b01a.entry.js +0 -4
  976. package/dist/ionic/p-f94cbfe9.js +0 -4
  977. package/dist/ionic/p-fab4ecad.system.entry.js +0 -4
  978. package/dist/ionic/p-fb02eeec.system.entry.js +0 -4
  979. package/dist/ionic/p-fb97326f.system.entry.js +0 -4
  980. package/dist/ionic/p-fbd30ec7.entry.js +0 -4
  981. package/dist/ionic/p-ff2323ba.system.entry.js +0 -4
  982. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -7,9 +7,13 @@ import { assert } from "../../utils/helpers";
7
7
  import { printIonWarning } from "../../utils/logging/index";
8
8
  import { lifecycle, setPageHidden, transition } from "../../utils/transition/index";
9
9
  import { config } from "../../global/config";
10
- import { getIonMode } from "../../global/ionic-global";
10
+ import { getIonMode, getIonTheme } from "../../global/ionic-global";
11
11
  import { LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_LEAVE, LIFECYCLE_WILL_UNLOAD } from "./constants";
12
12
  import { VIEW_STATE_ATTACHED, VIEW_STATE_DESTROYED, VIEW_STATE_NEW, convertToViews, matches } from "./view-controller";
13
+ /**
14
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
15
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
16
+ */
13
17
  export class Nav {
14
18
  constructor() {
15
19
  this.transInstr = [];
@@ -673,11 +677,13 @@ export class Nav {
673
677
  }
674
678
  }
675
679
  : undefined;
676
- const mode = getIonMode(this);
680
+ const theme = getIonTheme(this);
681
+ const mode = getIonMode(this, theme);
677
682
  const enteringEl = enteringView.element;
678
683
  // eslint-disable-next-line @typescript-eslint/prefer-optional-chain
679
684
  const leavingEl = leavingView && leavingView.element;
680
- const animationOpts = Object.assign(Object.assign({ mode, showGoBack: this.canGoBackSync(enteringView), baseEl: this.el, progressCallback, animated: this.animated && config.getBoolean('animated', true), enteringEl,
685
+ const animationOpts = Object.assign(Object.assign({ mode,
686
+ theme, showGoBack: this.canGoBackSync(enteringView), baseEl: this.el, progressCallback, animated: this.animated && config.getBoolean('animated', true), enteringEl,
681
687
  leavingEl }, opts), { animationBuilder: opts.animationBuilder || this.animation || config.get('navAnimation') });
682
688
  const { hasCompleted } = await transition(animationOpts);
683
689
  return this.transitionFinish(hasCompleted, enteringView, leavingView, opts);
@@ -830,7 +836,7 @@ export class Nav {
830
836
  }
831
837
  }
832
838
  render() {
833
- return h("slot", { key: '2cb1a430d8d29b0f54b1ec80f98e4b82b6c8cc0a' });
839
+ return h("slot", { key: '097a845a8ac8ba1199592b1977d676246f1e7499' });
834
840
  }
835
841
  static get is() { return "ion-nav"; }
836
842
  static get encapsulation() { return "shadow"; }
@@ -923,7 +929,7 @@ export class Nav {
923
929
  "optional": true,
924
930
  "docs": {
925
931
  "tags": [],
926
- "text": "By default `ion-nav` animates transition between pages based in the mode (ios or material design).\nHowever, this property allows to create custom transition using `AnimationBuilder` functions."
932
+ "text": "By default `ion-nav` animates transition between pages based on the mode (\"ios\" or \"md\").\nHowever, this property allows to create custom transition using `AnimationBuilder` functions."
927
933
  }
928
934
  },
929
935
  "rootParams": {
@@ -3,6 +3,10 @@
3
3
  */
4
4
  import { Host, h } from "@stencil/core";
5
5
  import { navLink } from "./nav-link-utils";
6
+ /**
7
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
8
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
9
+ */
6
10
  export class NavLink {
7
11
  constructor() {
8
12
  this.onClick = () => {
@@ -14,7 +18,7 @@ export class NavLink {
14
18
  this.routerAnimation = undefined;
15
19
  }
16
20
  render() {
17
- return h(Host, { key: 'e4aebea5eb131852acea407afb84597df71be4a4', onClick: this.onClick });
21
+ return h(Host, { key: '277265608ad47c1d65916399aaf55627252e8c88', onClick: this.onClick });
18
22
  }
19
23
  static get is() { return "ion-nav-link"; }
20
24
  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
@@ -53,6 +59,12 @@
53
59
  * }
54
60
  * }
55
61
  */
62
+ /**
63
+ * Convert a pixels given value into rem
64
+ *
65
+ * @param pixels - Value in pixels to be converted (i.e. px)
66
+ * @param context (optional) - Baseline value
67
+ */
56
68
  /**
57
69
  * Convert a font size to a dynamic font size.
58
70
  * Fonts that participate in Dynamic Type should use
@@ -3,32 +3,35 @@
3
3
  */
4
4
  import { Host, h } from "@stencil/core";
5
5
  import { createColorClasses } from "../../utils/theme";
6
- import { getIonMode } from "../../global/ionic-global";
6
+ import { getIonTheme } from "../../global/ionic-global";
7
7
  /**
8
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
8
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
9
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
9
10
  */
10
11
  export class Note {
11
12
  constructor() {
12
13
  this.color = undefined;
13
14
  }
14
15
  render() {
15
- const mode = getIonMode(this);
16
- return (h(Host, { key: '4064be8c5aceec02a25b8933338596b1720e19d9', class: createColorClasses(this.color, {
17
- [mode]: true,
18
- }) }, h("slot", { key: '9b4265b01387096a8a6aba34a1d8217733bb6f1f' })));
16
+ const theme = getIonTheme(this);
17
+ return (h(Host, { key: 'd8c6677e550cba7278bb1577c25e2aee65d21e3f', class: createColorClasses(this.color, {
18
+ [theme]: true,
19
+ }) }, h("slot", { key: 'ad557d58f1390a4c600750b5b2caaf41c6f46a60' })));
19
20
  }
20
21
  static get is() { return "ion-note"; }
21
22
  static get encapsulation() { return "shadow"; }
22
23
  static get originalStyleUrls() {
23
24
  return {
24
25
  "ios": ["note.ios.scss"],
25
- "md": ["note.md.scss"]
26
+ "md": ["note.md.scss"],
27
+ "ionic": ["note.md.scss"]
26
28
  };
27
29
  }
28
30
  static get styleUrls() {
29
31
  return {
30
32
  "ios": ["note.ios.css"],
31
- "md": ["note.md.css"]
33
+ "md": ["note.md.css"],
34
+ "ionic": ["note.md.css"]
32
35
  };
33
36
  }
34
37
  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
@@ -53,6 +59,12 @@
53
59
  * }
54
60
  * }
55
61
  */
62
+ /**
63
+ * Convert a pixels given value into rem
64
+ *
65
+ * @param pixels - Value in pixels to be converted (i.e. px)
66
+ * @param context (optional) - Baseline value
67
+ */
56
68
  /**
57
69
  * Convert a font size to a dynamic font size.
58
70
  * 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
@@ -53,6 +59,12 @@
53
59
  * }
54
60
  * }
55
61
  */
62
+ /**
63
+ * Convert a pixels given value into rem
64
+ *
65
+ * @param pixels - Value in pixels to be converted (i.e. px)
66
+ * @param context (optional) - Baseline value
67
+ */
56
68
  /**
57
69
  * Convert a font size to a dynamic font size.
58
70
  * Fonts that participate in Dynamic Type should use
@@ -168,8 +180,8 @@
168
180
 
169
181
  :host .picker-highlight {
170
182
  border-radius: var(--highlight-border-radius, 8px);
171
- left: 0;
172
183
  right: 0;
184
+ left: 0;
173
185
  top: 50%;
174
186
  bottom: 0;
175
187
  -webkit-margin-start: auto;
@@ -189,18 +201,18 @@
189
201
  :host input {
190
202
  position: absolute;
191
203
  top: 0;
192
- left: 0;
193
204
  right: 0;
194
205
  bottom: 0;
206
+ left: 0;
195
207
  width: 100%;
196
208
  height: 100%;
197
209
  margin: 0;
198
210
  padding: 0;
199
211
  border: 0;
200
212
  outline: 0;
201
- clip: rect(0 0 0 0);
202
213
  opacity: 0;
203
214
  overflow: hidden;
215
+ clip: rect(0 0 0 0);
204
216
  -webkit-appearance: none;
205
217
  -moz-appearance: none;
206
218
  }
@@ -4,7 +4,8 @@
4
4
  import { Host, h } from "@stencil/core";
5
5
  import { getElementRoot } from "../../utils/helpers";
6
6
  /**
7
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
7
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
8
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
8
9
  */
9
10
  export class Picker {
10
11
  constructor() {
@@ -474,7 +475,7 @@ export class Picker {
474
475
  this.emitInputModeChange();
475
476
  }
476
477
  render() {
477
- return (h(Host, { key: '16c8d2d72dcbd64e2b2fb77200ead6a2107d24a6', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'f7f4c77bde934813a18f221308277580c45715e3', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
478
+ return (h(Host, { key: 'b70075a7cf47d77c635e6c89d8f201cc4d5a389e', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'e429a3f1b2ffaff1588d0ea4d9f57ce94d6751f3', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
478
479
  var _a;
479
480
  /**
480
481
  * The "Enter" key represents
@@ -489,20 +490,22 @@ export class Picker {
489
490
  if (ev.key === 'Enter') {
490
491
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
491
492
  }
492
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '0eead52707acfa004c83fe0acfd4f9162b19f09b', class: "picker-before" }), h("div", { key: '5b4b531e3ed4fd35f1380156cf5332a455433a19', class: "picker-after" }), h("div", { key: '2b478202ac99703e4f72b30906915c7058ca9b9f', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '4a93ca36194ea1d2cec8bef8a0f402c14ee74576' })));
493
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: 'fc4abe70911b2ba36367d58b2afcc51ff2aba677', class: "picker-before" }), h("div", { key: 'c9e39cf56810b3a8aced29e685ea73840b29e040', class: "picker-after" }), h("div", { key: 'b5a9f584410a89d6d882c0baa215598b0bcb74c5', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: 'c4ff363a7b843666599d601ebc5ccfbd425b1f08' })));
493
494
  }
494
495
  static get is() { return "ion-picker"; }
495
496
  static get encapsulation() { return "shadow"; }
496
497
  static get originalStyleUrls() {
497
498
  return {
498
499
  "ios": ["picker.ios.scss"],
499
- "md": ["picker.md.scss"]
500
+ "md": ["picker.md.scss"],
501
+ "ionic": ["picker.md.scss"]
500
502
  };
501
503
  }
502
504
  static get styleUrls() {
503
505
  return {
504
506
  "ios": ["picker.ios.css"],
505
- "md": ["picker.md.css"]
507
+ "md": ["picker.md.css"],
508
+ "ionic": ["picker.md.css"]
506
509
  };
507
510
  }
508
511
  static get events() {
@@ -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
@@ -53,6 +59,12 @@
53
59
  * }
54
60
  * }
55
61
  */
62
+ /**
63
+ * Convert a pixels given value into rem
64
+ *
65
+ * @param pixels - Value in pixels to be converted (i.e. px)
66
+ * @param context (optional) - Baseline value
67
+ */
56
68
  /**
57
69
  * Convert a font size to a dynamic font size.
58
70
  * Fonts that participate in Dynamic Type should use
@@ -168,8 +180,8 @@
168
180
 
169
181
  :host .picker-highlight {
170
182
  border-radius: var(--highlight-border-radius, 8px);
171
- left: 0;
172
183
  right: 0;
184
+ left: 0;
173
185
  top: 50%;
174
186
  bottom: 0;
175
187
  -webkit-margin-start: auto;
@@ -189,18 +201,18 @@
189
201
  :host input {
190
202
  position: absolute;
191
203
  top: 0;
192
- left: 0;
193
204
  right: 0;
194
205
  bottom: 0;
206
+ left: 0;
195
207
  width: 100%;
196
208
  height: 100%;
197
209
  margin: 0;
198
210
  padding: 0;
199
211
  border: 0;
200
212
  outline: 0;
201
- clip: rect(0 0 0 0);
202
213
  opacity: 0;
203
214
  overflow: hidden;
215
+ clip: rect(0 0 0 0);
204
216
  -webkit-appearance: none;
205
217
  -moz-appearance: none;
206
218
  }
@@ -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
@@ -55,7 +61,6 @@
55
61
  */
56
62
  :host {
57
63
  display: flex;
58
- position: relative;
59
64
  align-items: center;
60
65
  justify-content: center;
61
66
  max-width: 100%;
@@ -64,24 +69,6 @@
64
69
  text-align: center;
65
70
  }
66
71
 
67
- /**
68
- * Renders an invisible element on top of the column that receives focus
69
- * events. This allows screen readers to navigate the column.
70
- */
71
- .assistive-focusable {
72
- left: 0;
73
- right: 0;
74
- top: 0;
75
- bottom: 0;
76
- position: absolute;
77
- z-index: 1;
78
- pointer-events: none;
79
- }
80
-
81
- .assistive-focusable:focus {
82
- outline: none;
83
- }
84
-
85
72
  .picker-opts {
86
73
  /**
87
74
  * This padding must be set here and not on the
@@ -167,7 +154,8 @@
167
154
  scroll-snap-align: none;
168
155
  }
169
156
 
170
- ::slotted([slot=prefix]), ::slotted([slot=suffix]) {
157
+ ::slotted([slot=prefix]),
158
+ ::slotted([slot=suffix]) {
171
159
  max-width: 200px;
172
160
  text-overflow: ellipsis;
173
161
  white-space: nowrap;
@@ -7,9 +7,10 @@ import { getElementRoot, raf } from "../../utils/helpers";
7
7
  import { hapticSelectionChanged, hapticSelectionEnd, hapticSelectionStart } from "../../utils/native/haptic";
8
8
  import { isPlatform } from "../../utils/platform";
9
9
  import { createColorClasses } from "../../utils/theme";
10
- import { getIonMode } from "../../global/ionic-global";
10
+ import { getIonTheme } from "../../global/ionic-global";
11
11
  /**
12
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
12
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
13
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
13
14
  *
14
15
  * @slot prefix - Content to show on the left side of the picker options.
15
16
  * @slot suffix - Content to show on the right side of the picker options.
@@ -19,7 +20,6 @@ export class PickerColumn {
19
20
  this.isScrolling = false;
20
21
  this.isColumnVisible = false;
21
22
  this.canExitInputMode = true;
22
- this.updateValueTextOnScroll = false;
23
23
  this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
24
24
  const { isColumnVisible, scrollEl } = this;
25
25
  if (isColumnVisible && scrollEl) {
@@ -34,7 +34,6 @@ export class PickerColumn {
34
34
  * of these can cause a scroll to occur.
35
35
  */
36
36
  this.canExitInputMode = canExitInputMode;
37
- this.updateValueTextOnScroll = false;
38
37
  scrollEl.scroll({
39
38
  top,
40
39
  left: 0,
@@ -107,7 +106,6 @@ export class PickerColumn {
107
106
  let activeEl = this.activeItem;
108
107
  const scrollCallback = () => {
109
108
  raf(() => {
110
- var _a;
111
109
  if (!scrollEl)
112
110
  return;
113
111
  if (timeout) {
@@ -188,23 +186,8 @@ export class PickerColumn {
188
186
  }
189
187
  activeEl = newActiveElement;
190
188
  this.setPickerItemActiveState(newActiveElement, true);
191
- /**
192
- * Set the aria-valuetext even though the value prop has not been updated yet.
193
- * This enables some screen readers to announce the value as the users drag
194
- * as opposed to when their release their pointer from the screen.
195
- *
196
- * When the value is programmatically updated, we will smoothly scroll
197
- * to the new option. However, we do not want to update aria-valuetext mid-scroll
198
- * as that can cause the old value to be briefly set before being set to the
199
- * correct option. This will cause some screen readers to announce the old value
200
- * again before announcing the new value. The correct valuetext will be set on render.
201
- */
202
- if (this.updateValueTextOnScroll) {
203
- (_a = this.assistiveFocusable) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-valuetext', this.getOptionValueText(newActiveElement));
204
- }
205
189
  timeout = setTimeout(() => {
206
190
  this.isScrolling = false;
207
- this.updateValueTextOnScroll = true;
208
191
  enableHaptics && hapticSelectionEnd();
209
192
  /**
210
193
  * Certain tasks (such as those that
@@ -263,132 +246,12 @@ export class PickerColumn {
263
246
  */
264
247
  this.el.classList.remove('picker-column-active');
265
248
  };
266
- /**
267
- * Find the next enabled option after the active option.
268
- * @param stride - How many options to "jump" over in order to select the next option.
269
- * This can be used to implement PageUp/PageDown behaviors where pressing these keys
270
- * scrolls the picker by more than 1 option. For example, a stride of 5 means select
271
- * the enabled option 5 options after the active one. Note that the actual option selected
272
- * may be past the stride if the option at the stride is disabled.
273
- */
274
- this.findNextOption = (stride = 1) => {
275
- const { activeItem } = this;
276
- if (!activeItem)
277
- return null;
278
- let prevNode = activeItem;
279
- let node = activeItem.nextElementSibling;
280
- while (node != null) {
281
- if (stride > 0) {
282
- stride--;
283
- }
284
- if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
285
- return node;
286
- }
287
- prevNode = node;
288
- // Use nextElementSibling instead of nextSibling to avoid text/comment nodes
289
- node = node.nextElementSibling;
290
- }
291
- return prevNode;
292
- };
293
- /**
294
- * Find the next enabled option after the active option.
295
- * @param stride - How many options to "jump" over in order to select the next option.
296
- * This can be used to implement PageUp/PageDown behaviors where pressing these keys
297
- * scrolls the picker by more than 1 option. For example, a stride of 5 means select
298
- * the enabled option 5 options before the active one. Note that the actual option selected
299
- * may be past the stride if the option at the stride is disabled.
300
- */
301
- this.findPreviousOption = (stride = 1) => {
302
- const { activeItem } = this;
303
- if (!activeItem)
304
- return null;
305
- let nextNode = activeItem;
306
- let node = activeItem.previousElementSibling;
307
- while (node != null) {
308
- if (stride > 0) {
309
- stride--;
310
- }
311
- if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
312
- return node;
313
- }
314
- nextNode = node;
315
- // Use previousElementSibling instead of previousSibling to avoid text/comment nodes
316
- node = node.previousElementSibling;
317
- }
318
- return nextNode;
319
- };
320
- this.onKeyDown = (ev) => {
321
- let newOption = null;
322
- switch (ev.key) {
323
- case 'ArrowDown':
324
- newOption = this.findNextOption();
325
- break;
326
- case 'ArrowUp':
327
- newOption = this.findPreviousOption();
328
- break;
329
- case 'PageUp':
330
- newOption = this.findPreviousOption(5);
331
- break;
332
- case 'PageDown':
333
- newOption = this.findNextOption(5);
334
- break;
335
- case 'Home':
336
- /**
337
- * There is no guarantee that the first child will be an ion-picker-column-option,
338
- * so we do not use firstElementChild.
339
- */
340
- newOption = this.el.querySelector('ion-picker-column-option:first-of-type');
341
- break;
342
- case 'End':
343
- /**
344
- * There is no guarantee that the last child will be an ion-picker-column-option,
345
- * so we do not use lastElementChild.
346
- */
347
- newOption = this.el.querySelector('ion-picker-column-option:last-of-type');
348
- break;
349
- default:
350
- break;
351
- }
352
- if (newOption !== null) {
353
- this.value = newOption.value;
354
- // This stops any default browser behavior such as scrolling
355
- ev.preventDefault();
356
- }
357
- };
358
- /**
359
- * Utility to generate the correct text for aria-valuetext.
360
- */
361
- this.getOptionValueText = (el) => {
362
- var _a;
363
- return el ? (_a = el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : el.innerText : '';
364
- };
365
- /**
366
- * Render an element that overlays the column. This element is for assistive
367
- * tech to allow users to navigate the column up/down. This element should receive
368
- * focus as it listens for synthesized keyboard events as required by the
369
- * slider role: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/slider_role
370
- */
371
- this.renderAssistiveFocusable = () => {
372
- const { activeItem } = this;
373
- const valueText = this.getOptionValueText(activeItem);
374
- /**
375
- * When using the picker, the valuetext provides important context that valuenow
376
- * does not. Additionally, using non-zero valuemin/valuemax values can cause
377
- * WebKit to incorrectly announce numeric valuetext values (such as a year
378
- * like "2024") as percentages: https://bugs.webkit.org/show_bug.cgi?id=273126
379
- */
380
- return (h("div", { ref: (el) => (this.assistiveFocusable = el), class: "assistive-focusable", role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": valueText, "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }));
381
- };
382
- this.ariaLabel = null;
383
249
  this.isActive = false;
384
250
  this.disabled = false;
385
251
  this.value = undefined;
386
252
  this.color = 'primary';
387
253
  this.numericInput = false;
388
254
  }
389
- ariaLabelChanged(newValue) {
390
- this.ariaLabel = newValue;
391
- }
392
255
  valueChange() {
393
256
  if (this.isColumnVisible) {
394
257
  /**
@@ -504,10 +367,6 @@ export class PickerColumn {
504
367
  this.scrollEl.focus();
505
368
  }
506
369
  }
507
- connectedCallback() {
508
- var _a;
509
- this.ariaLabel = (_a = this.el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : 'Select a value';
510
- }
511
370
  get activeItem() {
512
371
  const { value } = this;
513
372
  const options = Array.from(this.el.querySelectorAll('ion-picker-column-option'));
@@ -524,15 +383,15 @@ export class PickerColumn {
524
383
  }
525
384
  render() {
526
385
  const { color, disabled, isActive, numericInput } = this;
527
- const mode = getIonMode(this);
528
- return (h(Host, { key: '50fe50a49f88aa9ec435436083f3cd1ef49c8c9c', class: createColorClasses(color, {
529
- [mode]: true,
386
+ const theme = getIonTheme(this);
387
+ return (h(Host, { key: '5b4b09a7fb30f8e3ab5e800f67f2c617da1fdd04', class: createColorClasses(color, {
388
+ [theme]: true,
530
389
  ['picker-column-active']: isActive,
531
390
  ['picker-column-numeric-input']: numericInput,
532
391
  ['picker-column-disabled']: disabled,
533
- }) }, this.renderAssistiveFocusable(), h("slot", { key: '6350829748690895ab3ef101b9f2ae993852de7d', name: "prefix" }), h("div", { key: 'eaff9925aa8553f63ba2a1ae2bdfaa02963e0a5d', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
392
+ }) }, h("slot", { key: '51d283efa13a6c349a167c98e4a491254d248acf', name: "prefix" }), h("div", { key: '0fbfb227c40ba664ca0000d8b852430745615bcc', class: "picker-opts", tabindex: disabled ? undefined : 0, ref: (el) => {
534
393
  this.scrollEl = el;
535
- } }, h("div", { key: '25a24c4174782f2ec8a1fe06cbaf1f564b1f632f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '7f4e9a5f1f74f7e8d5ad74178894edc80c0fb523', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '329b88b4af1d0e37da347e5f3fe9b462efcc2886', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '82b9d5d541d41801bce06db0867d6cfbcee4ac3e' }), h("div", { key: '288ae193601d1eb49ead06f79eb1affa478f31d3', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '29661d0b74d11d650c2b23be66f857dd008dc5a0', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'a7bd71b4abcb027654a828ffa65d87b6874d7484', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: '83ddd19d09ec48fe31b51f9f272a562320f90098', name: "suffix" })));
394
+ } }, h("div", { key: '6d1185d5bc6d89784f88ae659bf7ba7431af20d3', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '6fda1cbf32072e52f951e2308f6af38c7144e005', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '7c75de24231bdc280fde466adb059edfac8e6ec2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '145998962977f8f4e5c33014f55a73b65843d46f' }), h("div", { key: 'a23c27a02df0120a8f73f26568ad5b0e20e27103', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'abc7cc1d146eddc3e0746530a59b4245fa4512cc', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '8b289129c28d79148db152c5e5f4488c160bb1b2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: 'af40d3dbff658e92b4dc1f5793afa2710569f30b', name: "suffix" })));
536
395
  }
537
396
  static get is() { return "ion-picker-column"; }
538
397
  static get encapsulation() { return "shadow"; }
@@ -632,7 +491,6 @@ export class PickerColumn {
632
491
  }
633
492
  static get states() {
634
493
  return {
635
- "ariaLabel": {},
636
494
  "isActive": {}
637
495
  };
638
496
  }
@@ -737,9 +595,6 @@ export class PickerColumn {
737
595
  static get elementRef() { return "el"; }
738
596
  static get watchers() {
739
597
  return [{
740
- "propName": "aria-label",
741
- "methodName": "ariaLabelChanged"
742
- }, {
743
598
  "propName": "value",
744
599
  "methodName": "valueChange"
745
600
  }];
@@ -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
@@ -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: '9333d9ac8e9990fc840f31e00391177d9cd563b3', 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: '6ca92bc584587230135982106eab542589fc4c9d', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: 'd9a68906017f77143a0691b9bbc59ae2142da6aa' }))));
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() {