@ionic/core 8.4.0 → 8.4.1-dev.11730807985.1b046f37

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 (1175) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +15 -10
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +10 -6
  5. package/components/button.js +41 -11
  6. package/components/buttons.js +11 -7
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +29 -12
  12. package/components/config2.js +79 -0
  13. package/components/content.js +14 -12
  14. package/components/data.js +4 -4
  15. package/components/focus-visible.js +8 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +24 -15
  18. package/components/helpers.js +4 -1
  19. package/components/index2.js +2 -2
  20. package/components/index4.js +8 -9
  21. package/components/index5.js +27 -3
  22. package/components/index6.js +114 -20
  23. package/components/index7.js +163 -27
  24. package/components/input-shims.js +2 -2
  25. package/components/input.utils.js +1 -2
  26. package/components/ion-accordion-group.js +25 -6
  27. package/components/ion-accordion.js +36 -17
  28. package/components/ion-app.js +9 -77
  29. package/components/ion-avatar.js +52 -3
  30. package/components/ion-back-button.js +29 -19
  31. package/components/ion-badge.js +44 -8
  32. package/components/ion-breadcrumb.js +45 -11
  33. package/components/ion-breadcrumbs.js +9 -5
  34. package/components/ion-card-content.js +11 -7
  35. package/components/ion-card-header.js +9 -5
  36. package/components/ion-card-subtitle.js +9 -5
  37. package/components/ion-card-title.js +9 -5
  38. package/components/ion-card.js +17 -9
  39. package/components/ion-chip.js +45 -8
  40. package/components/ion-col.js +5 -5
  41. package/components/ion-datetime-button.js +9 -6
  42. package/components/ion-datetime.js +96 -20
  43. package/components/ion-fab-button.js +33 -10
  44. package/components/ion-fab-list.js +5 -5
  45. package/components/ion-fab.js +6 -6
  46. package/components/ion-footer.js +18 -12
  47. package/components/ion-grid.js +5 -5
  48. package/components/ion-img.js +5 -2
  49. package/components/ion-infinite-scroll-content.js +13 -8
  50. package/components/ion-infinite-scroll.js +5 -5
  51. package/components/ion-input-password-toggle.js +53 -14
  52. package/components/ion-input.js +118 -20
  53. package/components/ion-item-divider.js +9 -5
  54. package/components/ion-item-group.js +9 -5
  55. package/components/ion-item-option.js +28 -8
  56. package/components/ion-item-options.js +9 -5
  57. package/components/ion-item-sliding.js +5 -5
  58. package/components/ion-loading.js +13 -8
  59. package/components/ion-menu-button.js +28 -10
  60. package/components/ion-menu-toggle.js +5 -5
  61. package/components/ion-menu.js +12 -8
  62. package/components/ion-nav-link.js +1 -1
  63. package/components/ion-nav.js +8 -6
  64. package/components/ion-note.js +9 -5
  65. package/components/ion-picker-legacy.js +7 -8
  66. package/components/ion-progress-bar.js +11 -6
  67. package/components/ion-range.js +11 -8
  68. package/components/ion-refresher-content.js +28 -9
  69. package/components/ion-refresher.js +11 -7
  70. package/components/ion-reorder-group.js +5 -5
  71. package/components/ion-reorder.js +31 -5
  72. package/components/ion-router-link.js +6 -6
  73. package/components/ion-router-outlet.js +4 -3
  74. package/components/ion-row.js +5 -2
  75. package/components/ion-searchbar.js +93 -16
  76. package/components/ion-segment-button.js +11 -7
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +2 -2
  79. package/components/ion-segment.js +11 -7
  80. package/components/ion-select-option.js +5 -2
  81. package/components/ion-select.js +79 -30
  82. package/components/ion-skeleton-text.js +6 -5
  83. package/components/ion-split-pane.js +12 -8
  84. package/components/ion-tab-bar.js +31 -8
  85. package/components/ion-tab-button.js +12 -7
  86. package/components/ion-tab.js +2 -2
  87. package/components/ion-tabs.js +2 -2
  88. package/components/ion-text.js +5 -5
  89. package/components/ion-textarea.js +38 -11
  90. package/components/ion-thumbnail.js +5 -2
  91. package/components/ion-toast.js +30 -12
  92. package/components/ion-toggle.js +77 -18
  93. package/components/ionic-global.js +374 -84
  94. package/components/ios.transition.js +1 -0
  95. package/components/item.js +41 -11
  96. package/components/keyboard-controller.js +4 -2
  97. package/components/label.js +9 -5
  98. package/components/list-header.js +9 -5
  99. package/components/list.js +29 -6
  100. package/components/list2.js +6 -0
  101. package/components/modal.js +51 -21
  102. package/components/notch-controller.js +1 -1
  103. package/components/overlays.js +4 -5
  104. package/components/picker-column-option.js +9 -5
  105. package/components/picker-column.js +7 -8
  106. package/components/picker-column2.js +4 -4
  107. package/components/picker.js +8 -4
  108. package/components/popover.js +11 -8
  109. package/components/radio-group.js +5 -3
  110. package/components/radio.js +12 -8
  111. package/components/ripple-effect.js +18 -8
  112. package/components/select-modal.js +1 -1
  113. package/components/select-popover.js +9 -2
  114. package/components/spinner.js +36 -9
  115. package/components/status-tap.js +1 -1
  116. package/components/title.js +11 -7
  117. package/components/toolbar.js +11 -7
  118. package/components/x.js +6 -0
  119. package/css/core.css +1 -1
  120. package/css/core.css.map +1 -1
  121. package/css/display.css.map +1 -1
  122. package/css/flex-utils.css.map +1 -1
  123. package/css/float-elements.css.map +1 -1
  124. package/css/global.bundle.css.map +1 -1
  125. package/css/ionic/bundle.ionic.css +1 -0
  126. package/css/ionic/bundle.ionic.css.map +1 -0
  127. package/css/ionic/core.ionic.css +1 -0
  128. package/css/ionic/core.ionic.css.map +1 -0
  129. package/css/ionic/global.bundle.ionic.css +1 -0
  130. package/css/ionic/global.bundle.ionic.css.map +1 -0
  131. package/css/ionic/ionic-swiper.ionic.css +1 -0
  132. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  133. package/css/ionic/link.ionic.css +1 -0
  134. package/css/ionic/link.ionic.css.map +1 -0
  135. package/css/ionic/structure.ionic.css +1 -0
  136. package/css/ionic/structure.ionic.css.map +1 -0
  137. package/css/ionic/typography.ionic.css +1 -0
  138. package/css/ionic/typography.ionic.css.map +1 -0
  139. package/css/ionic/utils.bundle.ionic.css +1 -0
  140. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  141. package/css/ionic-swiper.css +1 -1
  142. package/css/ionic-swiper.css.map +1 -1
  143. package/css/ionic.bundle.css +1 -1
  144. package/css/ionic.bundle.css.map +1 -1
  145. package/css/normalize.css.map +1 -1
  146. package/css/padding.css.map +1 -1
  147. package/css/palettes/dark.always.css.map +1 -1
  148. package/css/palettes/dark.class.css.map +1 -1
  149. package/css/palettes/dark.system.css.map +1 -1
  150. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  151. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  152. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  153. package/css/palettes/high-contrast.always.css.map +1 -1
  154. package/css/palettes/high-contrast.class.css.map +1 -1
  155. package/css/palettes/high-contrast.system.css.map +1 -1
  156. package/css/structure.css.map +1 -1
  157. package/css/text-alignment.css.map +1 -1
  158. package/css/text-transformation.css.map +1 -1
  159. package/css/typography.css.map +1 -1
  160. package/css/utils.bundle.css.map +1 -1
  161. package/dist/cjs/{animation-b4fdf128.js → animation-58015a44.js} +2 -2
  162. package/dist/cjs/{app-globals-21afee77.js → app-globals-d64148d3.js} +1 -1
  163. package/dist/cjs/{button-active-3f2f60b4.js → button-active-ec1fd1d8.js} +1 -1
  164. package/dist/cjs/{capacitor-c04564bf.js → capacitor-454dd071.js} +3 -3
  165. package/dist/cjs/caret-down-3c215cff.js +8 -0
  166. package/dist/cjs/caret-left-2bb66970.js +8 -0
  167. package/dist/cjs/caret-right-88e03970.js +8 -0
  168. package/dist/cjs/config-aff4ff52.js +84 -0
  169. package/dist/cjs/{data-21dc0f81.js → data-b726dbee.js} +6 -6
  170. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  171. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-32f1a0e4.js} +4 -2
  172. package/dist/cjs/{haptic-f6b37aa3.js → haptic-7c25be74.js} +1 -1
  173. package/dist/cjs/{helpers-afaa9001.js → helpers-4e2936d2.js} +4 -1
  174. package/dist/cjs/{index-8e789962.js → index-03fbee1d.js} +14 -15
  175. package/dist/cjs/{index-9509ecad.js → index-0e0c6196.js} +9 -7
  176. package/dist/cjs/{index-5b6a7459.js → index-604c36ae.js} +3 -3
  177. package/dist/cjs/{index-f05acd21.js → index-8f975cf4.js} +12 -12
  178. package/dist/cjs/index.cjs.js +10 -12
  179. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-4b4d2251.js} +18 -17
  180. package/dist/cjs/{input.utils-611cde0b.js → input.utils-fb1debe4.js} +4 -5
  181. package/dist/cjs/ion-accordion_2.cjs.entry.js +61 -24
  182. package/dist/cjs/ion-action-sheet.cjs.entry.js +21 -18
  183. package/dist/cjs/ion-alert.cjs.entry.js +25 -23
  184. package/dist/cjs/ion-app_8.cjs.entry.js +108 -152
  185. package/dist/cjs/ion-avatar_3.cjs.entry.js +93 -9
  186. package/dist/cjs/ion-back-button.cjs.entry.js +31 -21
  187. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -6
  188. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +53 -15
  189. package/dist/cjs/ion-button_2.cjs.entry.js +46 -15
  190. package/dist/cjs/ion-card_5.cjs.entry.js +52 -28
  191. package/dist/cjs/ion-checkbox.cjs.entry.js +29 -13
  192. package/dist/cjs/ion-chip.cjs.entry.js +43 -7
  193. package/dist/cjs/ion-col_3.cjs.entry.js +14 -10
  194. package/dist/cjs/ion-datetime-button.cjs.entry.js +16 -12
  195. package/dist/cjs/ion-datetime_3.cjs.entry.js +189 -115
  196. package/dist/cjs/ion-fab_3.cjs.entry.js +42 -19
  197. package/dist/cjs/ion-img.cjs.entry.js +7 -3
  198. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +21 -17
  199. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  200. package/dist/cjs/ion-input.cjs.entry.js +118 -23
  201. package/dist/cjs/ion-item-option_3.cjs.entry.js +40 -17
  202. package/dist/cjs/ion-item_8.cjs.entry.js +113 -41
  203. package/dist/cjs/ion-loading.cjs.entry.js +20 -18
  204. package/dist/cjs/ion-menu_3.cjs.entry.js +48 -29
  205. package/dist/cjs/ion-modal.cjs.entry.js +95 -67
  206. package/dist/cjs/ion-nav_2.cjs.entry.js +15 -13
  207. package/dist/cjs/ion-picker-column-option.cjs.entry.js +11 -6
  208. package/dist/cjs/ion-picker-column.cjs.entry.js +12 -12
  209. package/dist/cjs/ion-picker.cjs.entry.js +10 -5
  210. package/dist/cjs/ion-popover.cjs.entry.js +20 -18
  211. package/dist/cjs/ion-progress-bar.cjs.entry.js +13 -8
  212. package/dist/cjs/ion-radio_2.cjs.entry.js +18 -11
  213. package/dist/cjs/ion-range.cjs.entry.js +18 -14
  214. package/dist/cjs/ion-refresher_2.cjs.entry.js +44 -23
  215. package/dist/cjs/ion-reorder_2.cjs.entry.js +37 -13
  216. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -7
  217. package/dist/cjs/ion-route_4.cjs.entry.js +8 -7
  218. package/dist/cjs/ion-searchbar.cjs.entry.js +94 -17
  219. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  220. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  221. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -14
  222. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -8
  223. package/dist/cjs/ion-select_3.cjs.entry.js +94 -38
  224. package/dist/cjs/ion-spinner.cjs.entry.js +35 -9
  225. package/dist/cjs/ion-split-pane.cjs.entry.js +13 -8
  226. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +45 -20
  227. package/dist/cjs/ion-tab_2.cjs.entry.js +7 -6
  228. package/dist/cjs/ion-text.cjs.entry.js +6 -5
  229. package/dist/cjs/ion-textarea.cjs.entry.js +41 -16
  230. package/dist/cjs/ion-toast.cjs.entry.js +59 -43
  231. package/dist/cjs/ion-toggle.cjs.entry.js +80 -22
  232. package/dist/cjs/ionic-global-14af9c21.js +535 -0
  233. package/dist/cjs/ionic.cjs.js +4 -3
  234. package/dist/cjs/{ios.transition-cf40433b.js → ios.transition-2bb0f7d5.js} +6 -6
  235. package/dist/cjs/{keyboard-af1bb365.js → keyboard-0a5d46dd.js} +5 -3
  236. package/dist/cjs/{keyboard-0272231f.js → keyboard-53c12a15.js} +1 -1
  237. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-102bad3e.js} +11 -9
  238. package/dist/cjs/list-2930c629.js +8 -0
  239. package/dist/cjs/loader.cjs.js +4 -3
  240. package/dist/cjs/{md.transition-ededf99f.js → md.transition-cf600117.js} +5 -6
  241. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-ea70e230.js} +4 -4
  242. package/dist/cjs/{overlays-ba0f6986.js → overlays-a698a408.js} +19 -20
  243. package/dist/cjs/{status-tap-37681226.js → status-tap-aa97d209.js} +4 -3
  244. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-27975274.js} +2 -1
  245. package/dist/cjs/x-81a8f51c.js +8 -0
  246. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  247. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  248. package/dist/collection/components/accordion/accordion.js +37 -21
  249. package/dist/collection/components/accordion/accordion.md.css +67 -59
  250. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  251. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  252. package/dist/collection/components/accordion-group/accordion-group.js +43 -8
  253. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  254. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  255. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  256. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  257. package/dist/collection/components/alert/alert.ios.css +19 -1
  258. package/dist/collection/components/alert/alert.js +15 -12
  259. package/dist/collection/components/alert/alert.md.css +19 -1
  260. package/dist/collection/components/app/app.js +12 -78
  261. package/dist/collection/components/avatar/avatar.ionic.css +269 -0
  262. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  263. package/dist/collection/components/avatar/avatar.js +92 -4
  264. package/dist/collection/components/avatar/avatar.md.css +12 -0
  265. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  266. package/dist/collection/components/back-button/back-button.js +27 -19
  267. package/dist/collection/components/back-button/back-button.md.css +60 -48
  268. package/dist/collection/components/backdrop/backdrop.ionic.css +151 -0
  269. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  270. package/dist/collection/components/backdrop/backdrop.js +12 -6
  271. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  272. package/dist/collection/components/badge/badge.ionic.css +249 -0
  273. package/dist/collection/components/badge/badge.ios.css +106 -3
  274. package/dist/collection/components/badge/badge.js +75 -8
  275. package/dist/collection/components/badge/badge.md.css +106 -3
  276. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  277. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  278. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  279. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  280. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  281. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  282. package/dist/collection/components/button/button.ionic.css +589 -0
  283. package/dist/collection/components/button/button.ios.css +129 -36
  284. package/dist/collection/components/button/button.js +46 -16
  285. package/dist/collection/components/button/button.md.css +120 -40
  286. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  287. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  288. package/dist/collection/components/buttons/buttons.js +14 -8
  289. package/dist/collection/components/buttons/buttons.md.css +55 -3
  290. package/dist/collection/components/card/card.ionic.css +137 -0
  291. package/dist/collection/components/card/card.ios.css +65 -14
  292. package/dist/collection/components/card/card.js +34 -10
  293. package/dist/collection/components/card/card.md.css +65 -14
  294. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  295. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  296. package/dist/collection/components/card-content/card-content.js +11 -8
  297. package/dist/collection/components/card-content/card-content.md.css +16 -1
  298. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  299. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  300. package/dist/collection/components/card-header/card-header.js +12 -9
  301. package/dist/collection/components/card-header/card-header.md.css +27 -15
  302. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  303. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  304. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  305. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  306. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  307. package/dist/collection/components/card-title/card-title.js +11 -8
  308. package/dist/collection/components/card-title/card-title.md.css +73 -0
  309. package/dist/collection/components/checkbox/checkbox.ionic.css +402 -0
  310. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  311. package/dist/collection/components/checkbox/checkbox.js +63 -14
  312. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  313. package/dist/collection/components/chip/chip.ionic.css +160 -0
  314. package/dist/collection/components/chip/chip.ios.css +20 -1
  315. package/dist/collection/components/chip/chip.js +77 -8
  316. package/dist/collection/components/chip/chip.md.css +20 -1
  317. package/dist/collection/components/col/col.css +12 -0
  318. package/dist/collection/components/col/col.js +9 -5
  319. package/dist/collection/components/content/content.css +8 -2
  320. package/dist/collection/components/content/content.js +16 -11
  321. package/dist/collection/components/datetime/datetime.ionic.css +668 -0
  322. package/dist/collection/components/datetime/datetime.ios.css +232 -73
  323. package/dist/collection/components/datetime/datetime.js +95 -19
  324. package/dist/collection/components/datetime/datetime.md.css +232 -73
  325. package/dist/collection/components/datetime/utils/data.js +3 -3
  326. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  327. package/dist/collection/components/datetime-button/datetime-button.js +11 -8
  328. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  329. package/dist/collection/components/fab/fab.css +25 -1
  330. package/dist/collection/components/fab/fab.js +9 -5
  331. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  332. package/dist/collection/components/fab-button/fab-button.js +36 -15
  333. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  334. package/dist/collection/components/fab-list/fab-list.css +12 -0
  335. package/dist/collection/components/fab-list/fab-list.js +9 -5
  336. package/dist/collection/components/footer/footer.ios.css +14 -2
  337. package/dist/collection/components/footer/footer.js +20 -15
  338. package/dist/collection/components/footer/footer.md.css +12 -0
  339. package/dist/collection/components/grid/grid.css +12 -0
  340. package/dist/collection/components/grid/grid.js +9 -5
  341. package/dist/collection/components/header/header.ionic.css +86 -0
  342. package/dist/collection/components/header/header.ios.css +25 -10
  343. package/dist/collection/components/header/header.js +42 -17
  344. package/dist/collection/components/header/header.md.css +23 -8
  345. package/dist/collection/components/img/img.js +8 -2
  346. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  347. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  348. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  349. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  350. package/dist/collection/components/input/input.ionic.css +1096 -0
  351. package/dist/collection/components/input/input.ios.css +21 -2
  352. package/dist/collection/components/input/input.js +144 -30
  353. package/dist/collection/components/input/input.md.css +43 -4
  354. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  355. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  356. package/dist/collection/components/input-password-toggle/input-password-toggle.js +48 -12
  357. package/dist/collection/components/item/item.ionic.css +501 -0
  358. package/dist/collection/components/item/item.ios.css +109 -69
  359. package/dist/collection/components/item/item.js +44 -16
  360. package/dist/collection/components/item/item.md.css +120 -68
  361. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  362. package/dist/collection/components/item-divider/item-divider.js +11 -8
  363. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  364. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  365. package/dist/collection/components/item-group/item-group.js +13 -7
  366. package/dist/collection/components/item-group/item-group.md.css +12 -0
  367. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  368. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  369. package/dist/collection/components/item-option/item-option.js +43 -8
  370. package/dist/collection/components/item-option/item-option.md.css +14 -2
  371. package/dist/collection/components/item-options/item-options.ionic.css +258 -0
  372. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  373. package/dist/collection/components/item-options/item-options.js +13 -7
  374. package/dist/collection/components/item-options/item-options.md.css +18 -0
  375. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  376. package/dist/collection/components/item-sliding/item-sliding.js +8 -4
  377. package/dist/collection/components/label/label.ios.css +18 -0
  378. package/dist/collection/components/label/label.js +11 -8
  379. package/dist/collection/components/label/label.md.css +18 -0
  380. package/dist/collection/components/list/list.ionic.css +193 -0
  381. package/dist/collection/components/list/list.ios.css +18 -0
  382. package/dist/collection/components/list/list.js +47 -9
  383. package/dist/collection/components/list/list.md.css +20 -2
  384. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  385. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  386. package/dist/collection/components/list-header/list-header.js +11 -8
  387. package/dist/collection/components/list-header/list-header.md.css +18 -0
  388. package/dist/collection/components/loading/loading.ios.css +13 -1
  389. package/dist/collection/components/loading/loading.js +13 -10
  390. package/dist/collection/components/loading/loading.md.css +13 -1
  391. package/dist/collection/components/menu/menu.ios.css +15 -3
  392. package/dist/collection/components/menu/menu.js +12 -7
  393. package/dist/collection/components/menu/menu.md.css +15 -3
  394. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  395. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  396. package/dist/collection/components/menu-button/menu-button.js +26 -10
  397. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  398. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  399. package/dist/collection/components/modal/animations/sheet.js +8 -2
  400. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  401. package/dist/collection/components/modal/modal.ionic.css +239 -0
  402. package/dist/collection/components/modal/modal.ios.css +106 -63
  403. package/dist/collection/components/modal/modal.js +47 -11
  404. package/dist/collection/components/modal/modal.md.css +106 -63
  405. package/dist/collection/components/nav/nav.css +7 -1
  406. package/dist/collection/components/nav/nav.js +11 -5
  407. package/dist/collection/components/nav-link/nav-link.js +5 -1
  408. package/dist/collection/components/note/note.ios.css +12 -0
  409. package/dist/collection/components/note/note.js +11 -8
  410. package/dist/collection/components/note/note.md.css +12 -0
  411. package/dist/collection/components/picker/picker.ios.css +15 -3
  412. package/dist/collection/components/picker/picker.js +8 -5
  413. package/dist/collection/components/picker/picker.md.css +15 -3
  414. package/dist/collection/components/picker-column/picker-column.css +9 -2
  415. package/dist/collection/components/picker-column/picker-column.js +8 -7
  416. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  417. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  418. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  419. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  420. package/dist/collection/components/picker-legacy/picker.js +7 -6
  421. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  422. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  423. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  424. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  425. package/dist/collection/components/popover/popover.ios.css +13 -1
  426. package/dist/collection/components/popover/popover.js +15 -12
  427. package/dist/collection/components/popover/popover.md.css +13 -1
  428. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  429. package/dist/collection/components/progress-bar/progress-bar.js +10 -7
  430. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  431. package/dist/collection/components/radio/radio.ionic.css +418 -0
  432. package/dist/collection/components/radio/radio.ios.css +134 -91
  433. package/dist/collection/components/radio/radio.js +12 -9
  434. package/dist/collection/components/radio/radio.md.css +134 -91
  435. package/dist/collection/components/radio-group/radio-group.js +9 -3
  436. package/dist/collection/components/range/range.ios.css +12 -0
  437. package/dist/collection/components/range/range.js +12 -9
  438. package/dist/collection/components/range/range.md.css +12 -0
  439. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  440. package/dist/collection/components/refresher/refresher.js +11 -8
  441. package/dist/collection/components/refresher/refresher.md.css +15 -2
  442. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  443. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  444. package/dist/collection/components/reorder/reorder.js +33 -6
  445. package/dist/collection/components/reorder/reorder.md.css +6 -0
  446. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  447. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  448. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  449. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  450. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  451. package/dist/collection/components/route/route.js +4 -0
  452. package/dist/collection/components/router/router.js +4 -0
  453. package/dist/collection/components/router-link/router-link.css +8 -2
  454. package/dist/collection/components/router-link/router-link.js +9 -5
  455. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  456. package/dist/collection/components/router-outlet/router-outlet.js +5 -2
  457. package/dist/collection/components/row/row.css +12 -0
  458. package/dist/collection/components/row/row.js +9 -2
  459. package/dist/collection/components/searchbar/searchbar.ionic.css +345 -0
  460. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  461. package/dist/collection/components/searchbar/searchbar.js +97 -25
  462. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  463. package/dist/collection/components/segment/segment.ionic.css +117 -0
  464. package/dist/collection/components/segment/segment.ios.css +45 -2
  465. package/dist/collection/components/segment/segment.js +11 -8
  466. package/dist/collection/components/segment/segment.md.css +45 -2
  467. package/dist/collection/components/segment-button/segment-button.ionic.css +350 -0
  468. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  469. package/dist/collection/components/segment-button/segment-button.js +11 -8
  470. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  471. package/dist/collection/components/segment-content/segment-content.js +1 -1
  472. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  473. package/dist/collection/components/segment-view/segment-view.js +2 -2
  474. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  475. package/dist/collection/components/select/select.ios.css +22 -3
  476. package/dist/collection/components/select/select.js +81 -33
  477. package/dist/collection/components/select/select.md.css +38 -5
  478. package/dist/collection/components/select-modal/select-modal.js +1 -1
  479. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  480. package/dist/collection/components/select-option/select-option.js +9 -2
  481. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  482. package/dist/collection/components/select-popover/select-popover.js +12 -4
  483. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  484. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  485. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  486. package/dist/collection/components/spinner/spinner.common.css +199 -0
  487. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  488. package/dist/collection/components/spinner/spinner.js +46 -6
  489. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  490. package/dist/collection/components/split-pane/split-pane.js +14 -8
  491. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  492. package/dist/collection/components/tab/tab.js +6 -2
  493. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  494. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  495. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  496. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  497. package/dist/collection/components/tab-button/tab-button.ionic.css +271 -0
  498. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  499. package/dist/collection/components/tab-button/tab-button.js +11 -8
  500. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  501. package/dist/collection/components/tabs/tabs.css +7 -1
  502. package/dist/collection/components/tabs/tabs.js +4 -1
  503. package/dist/collection/components/text/text.css +6 -0
  504. package/dist/collection/components/text/text.js +7 -6
  505. package/dist/collection/components/textarea/textarea.ionic.css +804 -0
  506. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  507. package/dist/collection/components/textarea/textarea.js +59 -16
  508. package/dist/collection/components/textarea/textarea.md.css +214 -97
  509. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  510. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  511. package/dist/collection/components/title/title.ionic.css +145 -0
  512. package/dist/collection/components/title/title.ios.css +32 -4
  513. package/dist/collection/components/title/title.js +13 -7
  514. package/dist/collection/components/title/title.md.css +32 -4
  515. package/dist/collection/components/toast/animations/utils.js +1 -1
  516. package/dist/collection/components/toast/toast.ionic.css +358 -0
  517. package/dist/collection/components/toast/toast.ios.css +74 -35
  518. package/dist/collection/components/toast/toast.js +45 -11
  519. package/dist/collection/components/toast/toast.md.css +74 -35
  520. package/dist/collection/components/toggle/toggle.ionic.css +419 -0
  521. package/dist/collection/components/toggle/toggle.ios.css +166 -120
  522. package/dist/collection/components/toggle/toggle.js +73 -18
  523. package/dist/collection/components/toggle/toggle.md.css +163 -120
  524. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  525. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  526. package/dist/collection/components/toolbar/toolbar.js +13 -10
  527. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  528. package/dist/collection/global/ionic-global.js +229 -13
  529. package/dist/collection/utils/focus-visible.js +7 -0
  530. package/dist/collection/utils/framework-delegate.js +3 -1
  531. package/dist/collection/utils/helpers.js +3 -1
  532. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  533. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  534. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  535. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  536. package/dist/collection/utils/overlays.js +2 -1
  537. package/dist/collection/utils/test/playwright/generator.js +48 -23
  538. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  539. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  540. package/dist/collection/utils/transition/ios.transition.js +1 -0
  541. package/dist/docs.json +7030 -321
  542. package/dist/esm/{animation-eab5a4ca.js → animation-f1a88600.js} +1 -1
  543. package/dist/esm/{app-globals-5dbb61a5.js → app-globals-eceadabb.js} +1 -1
  544. package/dist/esm/{button-active-f6503382.js → button-active-321f0dba.js} +2 -2
  545. package/dist/esm/{capacitor-59395cbd.js → capacitor-6b0341c8.js} +1 -1
  546. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  547. package/dist/esm/caret-left-33424bb0.js +6 -0
  548. package/dist/esm/caret-right-68d856ad.js +6 -0
  549. package/dist/esm/config-84eb9670.js +79 -0
  550. package/dist/esm/{data-ae11fd43.js → data-a753c96a.js} +4 -4
  551. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  552. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-3e4a8c9f.js} +4 -2
  553. package/dist/esm/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  554. package/dist/esm/{helpers-da915de8.js → helpers-f08d15bd.js} +4 -1
  555. package/dist/esm/{index-24b48b06.js → index-31109e63.js} +10 -11
  556. package/dist/esm/{index-3ad7f18b.js → index-59f81cb8.js} +6 -6
  557. package/{components/index9.js → dist/esm/index-62b4a18b.js} +4 -2
  558. package/dist/esm/{index-28849c61.js → index-723c0e5d.js} +1 -1
  559. package/dist/esm/{index-5cc724f3.js → index-7bd160c2.js} +2 -2
  560. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  561. package/dist/esm/index.js +11 -13
  562. package/dist/esm/{input-shims-0314bbe5.js → input-shims-6be83e59.js} +7 -6
  563. package/dist/esm/{input.utils-09c71bc7.js → input.utils-67459bae.js} +2 -3
  564. package/dist/esm/ion-accordion_2.entry.js +61 -24
  565. package/dist/esm/ion-action-sheet.entry.js +22 -19
  566. package/dist/esm/ion-alert.entry.js +23 -21
  567. package/dist/esm/ion-app_8.entry.js +96 -140
  568. package/dist/esm/ion-avatar_3.entry.js +94 -10
  569. package/dist/esm/ion-back-button.entry.js +31 -21
  570. package/dist/esm/ion-backdrop.entry.js +12 -7
  571. package/dist/esm/ion-breadcrumb_2.entry.js +55 -17
  572. package/dist/esm/ion-button_2.entry.js +44 -13
  573. package/dist/esm/ion-card_5.entry.js +53 -29
  574. package/dist/esm/ion-checkbox.entry.js +30 -14
  575. package/dist/esm/ion-chip.entry.js +44 -8
  576. package/dist/esm/ion-col_3.entry.js +15 -11
  577. package/dist/esm/ion-datetime-button.entry.js +13 -9
  578. package/dist/esm/ion-datetime_3.entry.js +114 -40
  579. package/dist/esm/ion-fab_3.entry.js +44 -21
  580. package/dist/esm/ion-img.entry.js +8 -4
  581. package/dist/esm/ion-infinite-scroll_2.entry.js +19 -15
  582. package/dist/esm/ion-input-password-toggle.entry.js +54 -15
  583. package/dist/esm/ion-input.entry.js +120 -25
  584. package/dist/esm/ion-item-option_3.entry.js +41 -18
  585. package/dist/esm/ion-item_8.entry.js +114 -42
  586. package/dist/esm/ion-loading.entry.js +18 -16
  587. package/dist/esm/ion-menu_3.entry.js +48 -29
  588. package/dist/esm/ion-modal.entry.js +59 -31
  589. package/dist/esm/ion-nav_2.entry.js +14 -12
  590. package/dist/esm/ion-picker-column-option.entry.js +12 -7
  591. package/dist/esm/ion-picker-column.entry.js +12 -12
  592. package/dist/esm/ion-picker.entry.js +11 -6
  593. package/dist/esm/ion-popover.entry.js +18 -16
  594. package/dist/esm/ion-progress-bar.entry.js +13 -8
  595. package/dist/esm/ion-radio_2.entry.js +19 -12
  596. package/dist/esm/ion-range.entry.js +14 -10
  597. package/dist/esm/ion-refresher_2.entry.js +42 -21
  598. package/dist/esm/ion-reorder_2.entry.js +39 -15
  599. package/dist/esm/ion-ripple-effect.entry.js +19 -8
  600. package/dist/esm/ion-route_4.entry.js +9 -8
  601. package/dist/esm/ion-searchbar.entry.js +95 -18
  602. package/dist/esm/ion-segment-content.entry.js +2 -2
  603. package/dist/esm/ion-segment-view.entry.js +3 -3
  604. package/dist/esm/ion-segment_2.entry.js +24 -15
  605. package/dist/esm/ion-select-modal.entry.js +7 -9
  606. package/dist/esm/ion-select_3.entry.js +96 -40
  607. package/dist/esm/ion-spinner.entry.js +34 -8
  608. package/dist/esm/ion-split-pane.entry.js +14 -9
  609. package/dist/esm/ion-tab-bar_2.entry.js +45 -20
  610. package/dist/esm/ion-tab_2.entry.js +8 -7
  611. package/dist/esm/ion-text.entry.js +7 -6
  612. package/dist/esm/ion-textarea.entry.js +42 -17
  613. package/dist/esm/ion-toast.entry.js +34 -18
  614. package/dist/esm/ion-toggle.entry.js +81 -23
  615. package/dist/esm/ionic-global-3c97a4aa.js +521 -0
  616. package/dist/esm/ionic.js +6 -5
  617. package/dist/esm/{ios.transition-4ee1a3af.js → ios.transition-06b78ea0.js} +7 -7
  618. package/dist/esm/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +5 -3
  619. package/dist/esm/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  620. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-aff395fd.js} +5 -3
  621. package/dist/esm/list-6524700c.js +6 -0
  622. package/dist/esm/loader.js +6 -5
  623. package/dist/esm/{md.transition-5106a0d2.js → md.transition-e5712bda.js} +6 -7
  624. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-c0bd22ff.js} +2 -2
  625. package/dist/esm/{overlays-ae10d43d.js → overlays-ce6f6b23.js} +6 -7
  626. package/dist/esm/{status-tap-f472b09f.js → status-tap-edf9f395.js} +5 -4
  627. package/dist/esm/{swipe-back-e5394307.js → swipe-back-17c42610.js} +2 -1
  628. package/dist/esm/x-a64bcd9f.js +6 -0
  629. package/dist/esm-es5/animation-f1a88600.js +4 -0
  630. package/dist/esm-es5/app-globals-eceadabb.js +4 -0
  631. package/dist/esm-es5/{button-active-f6503382.js → button-active-321f0dba.js} +1 -1
  632. package/dist/esm-es5/capacitor-6b0341c8.js +4 -0
  633. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  634. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  635. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  636. package/dist/esm-es5/config-84eb9670.js +4 -0
  637. package/dist/esm-es5/data-a753c96a.js +4 -0
  638. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  639. package/dist/esm-es5/framework-delegate-3e4a8c9f.js +4 -0
  640. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  641. package/dist/esm-es5/helpers-f08d15bd.js +4 -0
  642. package/dist/esm-es5/index-31109e63.js +4 -0
  643. package/dist/esm-es5/index-59f81cb8.js +4 -0
  644. package/dist/esm-es5/{index-79b30591.js → index-62b4a18b.js} +1 -1
  645. package/dist/esm-es5/{index-28849c61.js → index-723c0e5d.js} +1 -1
  646. package/dist/esm-es5/index-7bd160c2.js +4 -0
  647. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  648. package/dist/esm-es5/index.js +1 -1
  649. package/dist/esm-es5/input-shims-6be83e59.js +4 -0
  650. package/dist/esm-es5/input.utils-67459bae.js +4 -0
  651. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  652. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  653. package/dist/esm-es5/ion-alert.entry.js +1 -1
  654. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  655. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  656. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  657. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  658. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  659. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  660. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  661. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  662. package/dist/esm-es5/ion-chip.entry.js +1 -1
  663. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  664. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  665. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  666. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  667. package/dist/esm-es5/ion-img.entry.js +1 -1
  668. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  669. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  670. package/dist/esm-es5/ion-input.entry.js +1 -1
  671. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  672. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  673. package/dist/esm-es5/ion-loading.entry.js +1 -1
  674. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  675. package/dist/esm-es5/ion-modal.entry.js +1 -1
  676. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  677. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  678. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  679. package/dist/esm-es5/ion-picker.entry.js +1 -1
  680. package/dist/esm-es5/ion-popover.entry.js +1 -1
  681. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  682. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  683. package/dist/esm-es5/ion-range.entry.js +1 -1
  684. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  685. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  686. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  687. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  688. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  689. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  690. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  691. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  692. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  693. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  694. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  695. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  696. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  697. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  698. package/dist/esm-es5/ion-text.entry.js +1 -1
  699. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  700. package/dist/esm-es5/ion-toast.entry.js +1 -1
  701. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  702. package/dist/esm-es5/ionic-global-3c97a4aa.js +4 -0
  703. package/dist/esm-es5/ionic.js +1 -1
  704. package/dist/esm-es5/ios.transition-06b78ea0.js +4 -0
  705. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +1 -1
  706. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  707. package/dist/esm-es5/keyboard-controller-aff395fd.js +4 -0
  708. package/dist/esm-es5/list-6524700c.js +4 -0
  709. package/dist/esm-es5/loader.js +1 -1
  710. package/dist/esm-es5/md.transition-e5712bda.js +4 -0
  711. package/dist/esm-es5/notch-controller-c0bd22ff.js +4 -0
  712. package/dist/esm-es5/overlays-ce6f6b23.js +4 -0
  713. package/dist/esm-es5/status-tap-edf9f395.js +4 -0
  714. package/dist/esm-es5/swipe-back-17c42610.js +4 -0
  715. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  716. package/dist/html.html-data.json +2306 -204
  717. package/dist/ionic/index.esm.js +1 -1
  718. package/dist/ionic/ionic.esm.js +1 -1
  719. package/dist/ionic/ionic.js +1 -1
  720. package/dist/ionic/p-01d80901.system.js +4 -0
  721. package/dist/ionic/p-02db6423.entry.js +4 -0
  722. package/dist/ionic/p-038a6294.js +4 -0
  723. package/dist/ionic/p-043483dc.entry.js +4 -0
  724. package/dist/ionic/p-055ae36e.system.entry.js +4 -0
  725. package/dist/ionic/p-06ca2619.system.entry.js +4 -0
  726. package/dist/ionic/p-06ec4706.js +4 -0
  727. package/dist/ionic/p-08b2ba53.system.entry.js +4 -0
  728. package/dist/ionic/p-08f4a45d.system.entry.js +4 -0
  729. package/dist/ionic/p-096e5f6d.system.entry.js +4 -0
  730. package/dist/ionic/p-09c6b5e4.js +4 -0
  731. package/dist/ionic/p-0a0ce78f.system.entry.js +4 -0
  732. package/dist/ionic/{p-25180df3.system.js → p-0fa218e9.system.js} +1 -1
  733. package/dist/ionic/{p-424eb140.system.entry.js → p-10961893.system.entry.js} +1 -1
  734. package/dist/ionic/p-112120d7.system.js +4 -0
  735. package/dist/ionic/{p-c7e16491.js → p-11266916.js} +1 -1
  736. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  737. package/dist/ionic/{p-34b11c24.js → p-12d6df53.js} +1 -1
  738. package/dist/ionic/p-156d17cd.js +4 -0
  739. package/dist/ionic/p-161ecf50.system.entry.js +4 -0
  740. package/dist/ionic/{p-b06ac4a5.system.js → p-18f86177.system.js} +1 -1
  741. package/dist/ionic/p-1a64d63d.system.entry.js +4 -0
  742. package/dist/ionic/p-1da82a87.system.entry.js +4 -0
  743. package/dist/ionic/p-1e4fd112.entry.js +4 -0
  744. package/dist/ionic/p-1efa63f2.js +4 -0
  745. package/dist/ionic/p-1fba8e90.system.entry.js +4 -0
  746. package/dist/ionic/p-211b0fba.system.entry.js +4 -0
  747. package/dist/ionic/p-23b31425.entry.js +4 -0
  748. package/dist/ionic/p-243adf8c.js +4 -0
  749. package/dist/ionic/p-24f15ce4.system.entry.js +4 -0
  750. package/dist/ionic/p-2978f27e.entry.js +4 -0
  751. package/dist/ionic/p-2ef115ec.system.entry.js +4 -0
  752. package/dist/ionic/p-31fa1052.system.entry.js +4 -0
  753. package/dist/ionic/p-33dc4514.js +4 -0
  754. package/dist/ionic/p-346c67b0.js +4 -0
  755. package/dist/ionic/p-35362c9f.entry.js +4 -0
  756. package/dist/ionic/p-3608e72b.entry.js +4 -0
  757. package/dist/ionic/p-3b520400.system.entry.js +4 -0
  758. package/dist/ionic/p-3c4c73f9.system.entry.js +4 -0
  759. package/dist/ionic/p-3ce95a91.entry.js +4 -0
  760. package/dist/ionic/p-3d61263b.system.entry.js +4 -0
  761. package/dist/ionic/{p-9ea607bd.system.js → p-3e91ea3a.system.js} +2 -2
  762. package/dist/ionic/p-3f1e20d1.system.entry.js +4 -0
  763. package/dist/ionic/p-3fc0ba02.system.entry.js +4 -0
  764. package/dist/ionic/p-4130574e.entry.js +4 -0
  765. package/dist/ionic/{p-3c8e5c23.system.js → p-41c19986.system.js} +1 -1
  766. package/dist/ionic/p-41f06734.entry.js +4 -0
  767. package/dist/ionic/p-4219582c.system.js +4 -0
  768. package/dist/ionic/p-429dd2b5.system.js +4 -0
  769. package/dist/ionic/p-430d860e.entry.js +4 -0
  770. package/dist/ionic/p-43df37ca.entry.js +4 -0
  771. package/dist/ionic/p-4459a66e.system.js +4 -0
  772. package/dist/ionic/{p-f687573e.system.js → p-44ad86d7.system.js} +1 -1
  773. package/dist/ionic/p-458a2899.entry.js +4 -0
  774. package/dist/ionic/{p-8985cdb6.system.js → p-4626fb32.system.js} +1 -1
  775. package/dist/ionic/p-46787abb.system.js +4 -0
  776. package/dist/ionic/p-4683bb1b.entry.js +4 -0
  777. package/dist/ionic/p-47fd935c.system.js +4 -0
  778. package/dist/ionic/p-4a89c1ec.system.js +4 -0
  779. package/dist/ionic/p-4ac4f52a.system.entry.js +4 -0
  780. package/dist/ionic/p-4b4e4592.system.entry.js +4 -0
  781. package/dist/ionic/{p-89b61afc.js → p-4c275462.js} +1 -1
  782. package/dist/ionic/p-4c9e1b2c.js +4 -0
  783. package/dist/ionic/p-4edc0fda.system.entry.js +4 -0
  784. package/dist/ionic/p-4f127a09.system.entry.js +4 -0
  785. package/dist/ionic/p-51371e21.system.js +4 -0
  786. package/dist/ionic/p-530c591a.entry.js +4 -0
  787. package/dist/ionic/p-5474c7c4.entry.js +4 -0
  788. package/dist/ionic/p-55546d77.system.entry.js +4 -0
  789. package/dist/ionic/p-556778bd.system.js +4 -0
  790. package/dist/ionic/p-56be80f7.entry.js +4 -0
  791. package/dist/ionic/p-578a8bdf.entry.js +4 -0
  792. package/dist/ionic/p-57de8d54.system.entry.js +4 -0
  793. package/dist/ionic/{p-f9a53abb.system.js → p-58aa8a36.system.js} +1 -1
  794. package/dist/ionic/p-58c64779.system.entry.js +4 -0
  795. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  796. package/dist/ionic/p-5a6b3c0d.entry.js +4 -0
  797. package/dist/ionic/p-5a6d245d.system.entry.js +4 -0
  798. package/dist/ionic/p-5b57d327.system.js +4 -0
  799. package/dist/ionic/p-5ce35a03.js +4 -0
  800. package/dist/ionic/p-5e9730c2.entry.js +4 -0
  801. package/dist/ionic/p-607c9c33.js +4 -0
  802. package/dist/ionic/{p-9146695e.system.js → p-62887754.system.js} +1 -1
  803. package/dist/ionic/p-63fde7fe.entry.js +4 -0
  804. package/dist/ionic/p-67b6e18d.entry.js +4 -0
  805. package/dist/ionic/p-699c1e19.entry.js +4 -0
  806. package/dist/ionic/p-6a0dd6bc.js +4 -0
  807. package/dist/ionic/p-6bc2795b.entry.js +4 -0
  808. package/dist/ionic/p-6bd1c0ee.system.entry.js +4 -0
  809. package/dist/ionic/p-6caa76ec.js +4 -0
  810. package/dist/ionic/p-6f941957.entry.js +4 -0
  811. package/dist/ionic/p-7071d7ca.js +4 -0
  812. package/dist/ionic/p-72cbf799.system.entry.js +4 -0
  813. package/dist/ionic/p-74a20601.system.entry.js +4 -0
  814. package/dist/ionic/p-74d76684.js +4 -0
  815. package/dist/ionic/p-7557a7de.system.entry.js +4 -0
  816. package/dist/ionic/p-7607d8ba.system.entry.js +4 -0
  817. package/dist/ionic/p-78ed8923.js +4 -0
  818. package/dist/ionic/p-7a858bae.system.js +4 -0
  819. package/dist/ionic/p-81e632cb.entry.js +4 -0
  820. package/dist/ionic/p-82cb4235.js +4 -0
  821. package/dist/ionic/{p-d836d43e.js → p-83948e48.js} +1 -1
  822. package/dist/ionic/p-8463212e.js +4 -0
  823. package/dist/ionic/p-84667060.entry.js +4 -0
  824. package/dist/ionic/p-857ba8d4.entry.js +4 -0
  825. package/dist/ionic/p-86d98446.system.entry.js +4 -0
  826. package/dist/ionic/{p-58d5df0c.system.entry.js → p-86e9a917.system.entry.js} +1 -1
  827. package/dist/ionic/p-87049797.js +4 -0
  828. package/dist/ionic/p-88290bd9.system.entry.js +4 -0
  829. package/dist/ionic/p-8956f9a8.system.entry.js +4 -0
  830. package/dist/ionic/p-8b0f0a87.entry.js +4 -0
  831. package/dist/ionic/p-8db246c2.system.js +4 -0
  832. package/dist/ionic/p-8dbfae64.entry.js +4 -0
  833. package/dist/ionic/p-903c544a.js +4 -0
  834. package/dist/ionic/p-916bc9ed.system.entry.js +4 -0
  835. package/dist/ionic/p-92646426.js +4 -0
  836. package/dist/ionic/{p-27281edd.js → p-93e47936.js} +1 -1
  837. package/dist/ionic/{p-a93873de.system.js → p-94816e7a.system.js} +1 -1
  838. package/dist/ionic/p-986855d6.js +4 -0
  839. package/dist/ionic/p-9abb7d9b.entry.js +4 -0
  840. package/dist/ionic/p-9ac1a506.system.js +4 -0
  841. package/dist/ionic/p-a1cdc742.js +4 -0
  842. package/dist/ionic/p-a2814291.system.js +4 -0
  843. package/dist/ionic/p-a42eccfb.entry.js +4 -0
  844. package/dist/ionic/{p-d743e981.js → p-a510e9c0.js} +1 -1
  845. package/dist/ionic/p-a5a9206f.entry.js +4 -0
  846. package/dist/ionic/p-a616b6e4.entry.js +4 -0
  847. package/dist/ionic/p-a9af4103.js +4 -0
  848. package/dist/ionic/{p-d60342e3.js → p-aaccbb95.js} +1 -1
  849. package/dist/ionic/{p-73dc4950.entry.js → p-ab21d58c.entry.js} +1 -1
  850. package/dist/ionic/p-ac1c2b6a.js +4 -0
  851. package/dist/ionic/p-ae55c4c7.system.entry.js +4 -0
  852. package/dist/ionic/p-b18c52cd.entry.js +4 -0
  853. package/dist/ionic/p-b2df786a.system.entry.js +4 -0
  854. package/dist/ionic/p-b517144d.system.entry.js +4 -0
  855. package/dist/ionic/p-b5dc9a32.system.entry.js +4 -0
  856. package/dist/ionic/p-b79f3ded.entry.js +4 -0
  857. package/dist/ionic/p-bbcec459.system.js +4 -0
  858. package/dist/ionic/p-be87ec25.entry.js +4 -0
  859. package/dist/ionic/p-c248c88d.system.js +4 -0
  860. package/dist/ionic/p-c373eebd.system.js +4 -0
  861. package/dist/ionic/p-ccce3322.system.entry.js +4 -0
  862. package/dist/ionic/p-ce2e8a94.system.entry.js +4 -0
  863. package/dist/ionic/p-ce46d44a.entry.js +4 -0
  864. package/dist/ionic/p-cea92c46.system.js +4 -0
  865. package/dist/ionic/p-d7894208.entry.js +4 -0
  866. package/dist/ionic/p-da96f15f.entry.js +4 -0
  867. package/dist/ionic/{p-19ea7bff.system.js → p-dbd39afd.system.js} +1 -1
  868. package/dist/ionic/p-ddbf4ca9.entry.js +4 -0
  869. package/dist/ionic/p-df09db21.entry.js +4 -0
  870. package/dist/ionic/p-e3b70846.system.js +4 -0
  871. package/dist/ionic/p-e9eb25ba.system.entry.js +4 -0
  872. package/dist/ionic/p-ea0b8c64.system.entry.js +4 -0
  873. package/dist/ionic/p-ea3ca474.system.js +4 -0
  874. package/dist/ionic/p-ebe94d15.entry.js +4 -0
  875. package/dist/ionic/p-eda736d7.entry.js +4 -0
  876. package/dist/ionic/p-eecb1b04.entry.js +4 -0
  877. package/dist/ionic/p-eee899d5.system.entry.js +4 -0
  878. package/dist/ionic/p-f09c06e8.entry.js +4 -0
  879. package/dist/ionic/p-f116fb3f.system.js +4 -0
  880. package/dist/ionic/{p-372ae7f4.system.js → p-f193945e.system.js} +1 -1
  881. package/dist/ionic/p-f1e11e93.entry.js +4 -0
  882. package/dist/ionic/p-f28ac1ad.entry.js +4 -0
  883. package/dist/ionic/p-f44934a7.system.entry.js +4 -0
  884. package/dist/ionic/p-f44c9c6e.system.entry.js +4 -0
  885. package/dist/ionic/p-f61375b7.system.entry.js +4 -0
  886. package/dist/ionic/p-f8123284.entry.js +4 -0
  887. package/dist/ionic/p-f83d18c1.entry.js +4 -0
  888. package/dist/ionic/{p-5da94421.system.js → p-f8c63ac0.system.js} +2 -2
  889. package/dist/ionic/p-fc8359aa.system.entry.js +4 -0
  890. package/dist/types/components/accordion/accordion.d.ts +5 -3
  891. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  892. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  893. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  894. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  895. package/dist/types/components/alert/alert.d.ts +3 -2
  896. package/dist/types/components/app/app.d.ts +4 -2
  897. package/dist/types/components/avatar/avatar.d.ts +28 -0
  898. package/dist/types/components/back-button/back-button.d.ts +2 -1
  899. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  900. package/dist/types/components/badge/badge.d.ts +23 -1
  901. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  902. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  903. package/dist/types/components/button/button.d.ts +15 -4
  904. package/dist/types/components/buttons/buttons.d.ts +5 -1
  905. package/dist/types/components/card/card.d.ts +8 -1
  906. package/dist/types/components/card-content/card-content.d.ts +2 -1
  907. package/dist/types/components/card-header/card-header.d.ts +3 -2
  908. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  909. package/dist/types/components/card-title/card-title.d.ts +2 -1
  910. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  911. package/dist/types/components/chip/chip.d.ts +19 -1
  912. package/dist/types/components/col/col.d.ts +4 -0
  913. package/dist/types/components/content/content.d.ts +3 -0
  914. package/dist/types/components/datetime/datetime.d.ts +26 -1
  915. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  916. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  917. package/dist/types/components/fab/fab.d.ts +4 -0
  918. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  919. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  920. package/dist/types/components/footer/footer.d.ts +4 -3
  921. package/dist/types/components/grid/grid.d.ts +4 -0
  922. package/dist/types/components/header/header.d.ts +9 -3
  923. package/dist/types/components/img/img.d.ts +3 -0
  924. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  925. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  926. package/dist/types/components/input/input.d.ts +31 -5
  927. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  928. package/dist/types/components/item/item.d.ts +11 -4
  929. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  930. package/dist/types/components/item-group/item-group.d.ts +4 -0
  931. package/dist/types/components/item-option/item-option.d.ts +11 -1
  932. package/dist/types/components/item-options/item-options.d.ts +4 -0
  933. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  934. package/dist/types/components/label/label.d.ts +2 -1
  935. package/dist/types/components/list/list.d.ts +15 -1
  936. package/dist/types/components/list-header/list-header.d.ts +2 -1
  937. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  938. package/dist/types/components/loading/loading.d.ts +3 -2
  939. package/dist/types/components/menu/menu.d.ts +3 -0
  940. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  941. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  942. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  943. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  944. package/dist/types/components/modal/modal.d.ts +11 -1
  945. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  946. package/dist/types/components/nav/nav.d.ts +5 -1
  947. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  948. package/dist/types/components/note/note.d.ts +2 -1
  949. package/dist/types/components/picker/picker.d.ts +2 -1
  950. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  951. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  952. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  953. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  954. package/dist/types/components/popover/popover.d.ts +6 -5
  955. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  956. package/dist/types/components/radio/radio.d.ts +2 -1
  957. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  958. package/dist/types/components/range/range.d.ts +2 -1
  959. package/dist/types/components/refresher/refresher.d.ts +2 -1
  960. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  961. package/dist/types/components/reorder/reorder.d.ts +9 -0
  962. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  963. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  964. package/dist/types/components/route/route.d.ts +4 -0
  965. package/dist/types/components/router/router.d.ts +4 -0
  966. package/dist/types/components/router-link/router-link.d.ts +4 -0
  967. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  968. package/dist/types/components/row/row.d.ts +4 -0
  969. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  970. package/dist/types/components/segment/segment.d.ts +2 -1
  971. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  972. package/dist/types/components/select/select.d.ts +20 -5
  973. package/dist/types/components/select-option/select-option.d.ts +4 -0
  974. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  975. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  976. package/dist/types/components/spinner/spinner.d.ts +15 -0
  977. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  978. package/dist/types/components/tab/tab.d.ts +4 -0
  979. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  980. package/dist/types/components/tab-button/tab-button.d.ts +2 -1
  981. package/dist/types/components/tabs/tabs.d.ts +3 -0
  982. package/dist/types/components/text/text.d.ts +2 -1
  983. package/dist/types/components/textarea/textarea.d.ts +16 -4
  984. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  985. package/dist/types/components/title/title.d.ts +4 -0
  986. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  987. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  988. package/dist/types/components/toast/toast.d.ts +12 -2
  989. package/dist/types/components/toggle/toggle.d.ts +15 -1
  990. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  991. package/dist/types/components.d.ts +1363 -179
  992. package/dist/types/global/ionic-global.d.ts +27 -2
  993. package/dist/types/interface.d.ts +3 -0
  994. package/dist/types/utils/config.d.ts +106 -2
  995. package/dist/types/utils/focus-visible.d.ts +1 -0
  996. package/dist/types/utils/overlays-interface.d.ts +31 -1
  997. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  998. package/hydrate/index.js +2273 -856
  999. package/hydrate/index.mjs +2273 -856
  1000. package/package.json +9 -4
  1001. package/components/hardware-back-button.js +0 -115
  1002. package/components/index8.js +0 -128
  1003. package/dist/cjs/hardware-back-button-9e8a2c4f.js +0 -122
  1004. package/dist/cjs/index-5915f9b3.js +0 -38
  1005. package/dist/cjs/index-c8d52405.js +0 -10
  1006. package/dist/cjs/ionic-global-d9a8bb5b.js +0 -237
  1007. package/dist/esm/hardware-back-button-06ef3c3e.js +0 -116
  1008. package/dist/esm/index-79b30591.js +0 -167
  1009. package/dist/esm/index-9b0d46f4.js +0 -34
  1010. package/dist/esm/index-a5d50daf.js +0 -7
  1011. package/dist/esm/ionic-global-c81d82ab.js +0 -231
  1012. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1013. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  1014. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1015. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1016. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1017. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  1018. package/dist/esm-es5/hardware-back-button-06ef3c3e.js +0 -4
  1019. package/dist/esm-es5/helpers-da915de8.js +0 -4
  1020. package/dist/esm-es5/index-24b48b06.js +0 -4
  1021. package/dist/esm-es5/index-3ad7f18b.js +0 -4
  1022. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1023. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1024. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1025. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1026. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1027. package/dist/esm-es5/ionic-global-c81d82ab.js +0 -4
  1028. package/dist/esm-es5/ios.transition-4ee1a3af.js +0 -4
  1029. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1030. package/dist/esm-es5/md.transition-5106a0d2.js +0 -4
  1031. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  1032. package/dist/esm-es5/overlays-ae10d43d.js +0 -4
  1033. package/dist/esm-es5/status-tap-f472b09f.js +0 -4
  1034. package/dist/esm-es5/swipe-back-e5394307.js +0 -4
  1035. package/dist/ionic/p-01186920.system.entry.js +0 -4
  1036. package/dist/ionic/p-0161caf9.system.entry.js +0 -4
  1037. package/dist/ionic/p-0303d0f8.js +0 -4
  1038. package/dist/ionic/p-0437ace4.system.entry.js +0 -4
  1039. package/dist/ionic/p-04fc24ee.system.js +0 -4
  1040. package/dist/ionic/p-0574e87e.js +0 -4
  1041. package/dist/ionic/p-06e58c4e.js +0 -4
  1042. package/dist/ionic/p-06fee233.js +0 -4
  1043. package/dist/ionic/p-081a4ce4.entry.js +0 -4
  1044. package/dist/ionic/p-09cf2394.entry.js +0 -4
  1045. package/dist/ionic/p-0c06e09b.system.js +0 -4
  1046. package/dist/ionic/p-14be4015.entry.js +0 -4
  1047. package/dist/ionic/p-15e76dd1.entry.js +0 -4
  1048. package/dist/ionic/p-16188af7.entry.js +0 -4
  1049. package/dist/ionic/p-16799667.system.entry.js +0 -4
  1050. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  1051. package/dist/ionic/p-17474161.system.js +0 -4
  1052. package/dist/ionic/p-19ec4f42.entry.js +0 -4
  1053. package/dist/ionic/p-1b7605a7.system.entry.js +0 -4
  1054. package/dist/ionic/p-1c1b8e1f.entry.js +0 -4
  1055. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1056. package/dist/ionic/p-1e010627.system.entry.js +0 -4
  1057. package/dist/ionic/p-1e41f2aa.system.entry.js +0 -4
  1058. package/dist/ionic/p-1e4371bd.js +0 -4
  1059. package/dist/ionic/p-1e67b266.system.entry.js +0 -4
  1060. package/dist/ionic/p-1ebd1e27.system.entry.js +0 -4
  1061. package/dist/ionic/p-2172893e.system.entry.js +0 -4
  1062. package/dist/ionic/p-21e5e7e4.js +0 -4
  1063. package/dist/ionic/p-2507278c.system.entry.js +0 -4
  1064. package/dist/ionic/p-2690b1de.js +0 -4
  1065. package/dist/ionic/p-2799c6d3.system.entry.js +0 -4
  1066. package/dist/ionic/p-2abae1cc.system.entry.js +0 -4
  1067. package/dist/ionic/p-2b7827c7.js +0 -4
  1068. package/dist/ionic/p-2b838f86.system.entry.js +0 -4
  1069. package/dist/ionic/p-2e46590d.system.entry.js +0 -4
  1070. package/dist/ionic/p-2fc0dafe.entry.js +0 -4
  1071. package/dist/ionic/p-322c5fb4.system.js +0 -4
  1072. package/dist/ionic/p-33a8a71b.entry.js +0 -4
  1073. package/dist/ionic/p-37cb43bd.system.entry.js +0 -4
  1074. package/dist/ionic/p-3ad285e3.system.js +0 -4
  1075. package/dist/ionic/p-3cc276f4.js +0 -4
  1076. package/dist/ionic/p-4439fc2a.entry.js +0 -4
  1077. package/dist/ionic/p-45693d7e.entry.js +0 -4
  1078. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  1079. package/dist/ionic/p-4a274c89.entry.js +0 -4
  1080. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  1081. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  1082. package/dist/ionic/p-52d7a191.entry.js +0 -4
  1083. package/dist/ionic/p-5393e8bb.system.entry.js +0 -4
  1084. package/dist/ionic/p-567de071.system.entry.js +0 -4
  1085. package/dist/ionic/p-5823babc.system.entry.js +0 -4
  1086. package/dist/ionic/p-5972efea.system.entry.js +0 -4
  1087. package/dist/ionic/p-5ab1b709.entry.js +0 -4
  1088. package/dist/ionic/p-5b5c1505.system.entry.js +0 -4
  1089. package/dist/ionic/p-5b932840.entry.js +0 -4
  1090. package/dist/ionic/p-5bd39e5e.system.entry.js +0 -4
  1091. package/dist/ionic/p-5c831f49.js +0 -4
  1092. package/dist/ionic/p-5fce0c0b.system.entry.js +0 -4
  1093. package/dist/ionic/p-62af944c.entry.js +0 -4
  1094. package/dist/ionic/p-63b0abde.system.entry.js +0 -4
  1095. package/dist/ionic/p-66640ff7.system.entry.js +0 -4
  1096. package/dist/ionic/p-6734db42.system.entry.js +0 -4
  1097. package/dist/ionic/p-69066a53.js +0 -4
  1098. package/dist/ionic/p-69666e8a.system.entry.js +0 -4
  1099. package/dist/ionic/p-6d32975a.entry.js +0 -4
  1100. package/dist/ionic/p-72812e99.js +0 -4
  1101. package/dist/ionic/p-72bc8a1c.js +0 -4
  1102. package/dist/ionic/p-7458862e.system.entry.js +0 -4
  1103. package/dist/ionic/p-792919fd.system.js +0 -4
  1104. package/dist/ionic/p-797eeea8.system.entry.js +0 -4
  1105. package/dist/ionic/p-7b30edcc.js +0 -4
  1106. package/dist/ionic/p-7b9a2b23.entry.js +0 -4
  1107. package/dist/ionic/p-7ed1657c.system.entry.js +0 -4
  1108. package/dist/ionic/p-857ca696.system.entry.js +0 -4
  1109. package/dist/ionic/p-8635f5e6.system.js +0 -4
  1110. package/dist/ionic/p-88e63c7d.js +0 -4
  1111. package/dist/ionic/p-8f05ba3b.system.js +0 -4
  1112. package/dist/ionic/p-908d6080.entry.js +0 -4
  1113. package/dist/ionic/p-937a7e21.entry.js +0 -4
  1114. package/dist/ionic/p-95775830.entry.js +0 -4
  1115. package/dist/ionic/p-96cc4814.js +0 -4
  1116. package/dist/ionic/p-98231c01.system.entry.js +0 -4
  1117. package/dist/ionic/p-985a7e17.system.entry.js +0 -4
  1118. package/dist/ionic/p-98ff6b32.entry.js +0 -4
  1119. package/dist/ionic/p-9910f786.entry.js +0 -4
  1120. package/dist/ionic/p-9df2c6fb.entry.js +0 -4
  1121. package/dist/ionic/p-9ee1e8a6.entry.js +0 -4
  1122. package/dist/ionic/p-9f3008d4.system.js +0 -4
  1123. package/dist/ionic/p-9fa07aec.entry.js +0 -4
  1124. package/dist/ionic/p-a1051806.entry.js +0 -4
  1125. package/dist/ionic/p-a15ddedb.system.js +0 -4
  1126. package/dist/ionic/p-a1b9a163.entry.js +0 -4
  1127. package/dist/ionic/p-a34b4d94.entry.js +0 -4
  1128. package/dist/ionic/p-a4565eb5.system.js +0 -4
  1129. package/dist/ionic/p-a49378bb.system.entry.js +0 -4
  1130. package/dist/ionic/p-a61cba41.entry.js +0 -4
  1131. package/dist/ionic/p-a69b9fc5.system.js +0 -4
  1132. package/dist/ionic/p-abe101da.system.js +0 -4
  1133. package/dist/ionic/p-adbc4bdf.entry.js +0 -4
  1134. package/dist/ionic/p-afecb188.entry.js +0 -4
  1135. package/dist/ionic/p-b335ffed.system.entry.js +0 -4
  1136. package/dist/ionic/p-b51e4004.js +0 -4
  1137. package/dist/ionic/p-b82d4cab.js +0 -4
  1138. package/dist/ionic/p-b9d7015f.entry.js +0 -4
  1139. package/dist/ionic/p-bb0db172.entry.js +0 -4
  1140. package/dist/ionic/p-bc36ad98.system.entry.js +0 -4
  1141. package/dist/ionic/p-bdad26e3.entry.js +0 -4
  1142. package/dist/ionic/p-c29f8157.system.entry.js +0 -4
  1143. package/dist/ionic/p-c2b74d92.system.entry.js +0 -4
  1144. package/dist/ionic/p-c41ac815.entry.js +0 -4
  1145. package/dist/ionic/p-c468af8a.system.js +0 -4
  1146. package/dist/ionic/p-c61cc894.js +0 -4
  1147. package/dist/ionic/p-c9f3a539.entry.js +0 -4
  1148. package/dist/ionic/p-ca065903.system.entry.js +0 -4
  1149. package/dist/ionic/p-cac0e0b3.system.entry.js +0 -4
  1150. package/dist/ionic/p-d18ab582.system.entry.js +0 -4
  1151. package/dist/ionic/p-d47265c8.js +0 -4
  1152. package/dist/ionic/p-d6841eac.js +0 -4
  1153. package/dist/ionic/p-d7aa6b00.entry.js +0 -4
  1154. package/dist/ionic/p-d7e982e7.system.entry.js +0 -4
  1155. package/dist/ionic/p-da074ff7.entry.js +0 -4
  1156. package/dist/ionic/p-db0c8e7d.entry.js +0 -4
  1157. package/dist/ionic/p-de930745.entry.js +0 -4
  1158. package/dist/ionic/p-dfb78785.system.js +0 -4
  1159. package/dist/ionic/p-e2252ad6.entry.js +0 -4
  1160. package/dist/ionic/p-e4ee80be.system.entry.js +0 -4
  1161. package/dist/ionic/p-e563a35c.entry.js +0 -4
  1162. package/dist/ionic/p-e7ed4a7f.system.js +0 -4
  1163. package/dist/ionic/p-e9a173ed.entry.js +0 -4
  1164. package/dist/ionic/p-eba29931.entry.js +0 -4
  1165. package/dist/ionic/p-ebf042e0.system.entry.js +0 -4
  1166. package/dist/ionic/p-ecceeb90.js +0 -4
  1167. package/dist/ionic/p-ed75fcfb.system.entry.js +0 -4
  1168. package/dist/ionic/p-ee7ba749.entry.js +0 -4
  1169. package/dist/ionic/p-efaffe74.entry.js +0 -4
  1170. package/dist/ionic/p-f10b70a1.entry.js +0 -4
  1171. package/dist/ionic/p-f1acf541.system.entry.js +0 -4
  1172. package/dist/ionic/p-f3102647.system.entry.js +0 -4
  1173. package/dist/ionic/p-fca6ef5f.system.entry.js +0 -4
  1174. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1175. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -1,36 +1,3 @@
1
- /**
2
- * Convert a font size to a dynamic font size.
3
- * Fonts that participate in Dynamic Type should use
4
- * dynamic font sizes.
5
- * @param size - The initial font size including the unit (i.e. px or pt)
6
- * @param unit (optional) - The unit to convert to. Use this if you want to
7
- * convert to a unit other than $baselineUnit.
8
- */
9
- /**
10
- * Convert a font size to a dynamic font size but impose
11
- * a maximum font size.
12
- * @param size - The initial font size including the unit (i.e. px or pt)
13
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
14
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
15
- * convert to a unit other than $baselineUnit.
16
- */
17
- /**
18
- * Convert a font size to a dynamic font size but impose
19
- * a minimum font size.
20
- * @param size - The initial font size including the unit (i.e. px or pt)
21
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
22
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
23
- * convert to a unit other than $baselineUnit.
24
- */
25
- /**
26
- * Convert a font size to a dynamic font size but impose
27
- * maximum and minimum font sizes.
28
- * @param size - The initial font size including the unit (i.e. px or pt)
29
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
30
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
31
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
32
- * convert to a unit other than $baselineUnit.
33
- */
34
1
  /**
35
2
  * A heuristic that applies CSS to tablet
36
3
  * viewports.
@@ -84,20 +51,10 @@
84
51
  padding-right: var(--ion-safe-area-right);
85
52
  padding-left: var(--ion-safe-area-left);
86
53
  color: var(--color);
87
- font-family: var(--ion-font-family, inherit);
88
54
  contain: content;
89
- z-index: 10;
90
55
  box-sizing: border-box;
91
56
  }
92
57
 
93
- :host(.ion-color) {
94
- color: var(--ion-color-contrast);
95
- }
96
-
97
- :host(.ion-color) .toolbar-background {
98
- background: var(--ion-color-base);
99
- }
100
-
101
58
  .toolbar-container {
102
59
  -webkit-padding-start: var(--padding-start);
103
60
  padding-inline-start: var(--padding-start);
@@ -114,13 +71,12 @@
114
71
  min-height: var(--min-height);
115
72
  contain: content;
116
73
  overflow: hidden;
117
- z-index: 10;
118
74
  box-sizing: border-box;
119
75
  }
120
76
 
121
77
  .toolbar-background {
122
- left: 0;
123
78
  right: 0;
79
+ left: 0;
124
80
  top: 0;
125
81
  bottom: 0;
126
82
  position: absolute;
@@ -131,17 +87,104 @@
131
87
  background: var(--background);
132
88
  contain: strict;
133
89
  opacity: calc(var(--opacity) * var(--opacity-scale));
134
- z-index: -1;
135
90
  pointer-events: none;
136
91
  }
137
92
 
138
93
  ::slotted(ion-progress-bar) {
139
- left: 0;
140
94
  right: 0;
95
+ left: 0;
141
96
  bottom: 0;
142
97
  position: absolute;
143
98
  }
144
99
 
100
+ /**
101
+ * Convert a pixels given value into rem
102
+ *
103
+ * @param pixels - Value in pixels to be converted (i.e. px)
104
+ * @param context (optional) - Baseline value
105
+ */
106
+ /**
107
+ * Convert a font size to a dynamic font size.
108
+ * Fonts that participate in Dynamic Type should use
109
+ * dynamic font sizes.
110
+ * @param size - The initial font size including the unit (i.e. px or pt)
111
+ * @param unit (optional) - The unit to convert to. Use this if you want to
112
+ * convert to a unit other than $baselineUnit.
113
+ */
114
+ /**
115
+ * Convert a font size to a dynamic font size but impose
116
+ * a maximum font size.
117
+ * @param size - The initial font size including the unit (i.e. px or pt)
118
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
119
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
120
+ * convert to a unit other than $baselineUnit.
121
+ */
122
+ /**
123
+ * Convert a font size to a dynamic font size but impose
124
+ * a minimum font size.
125
+ * @param size - The initial font size including the unit (i.e. px or pt)
126
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
127
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
128
+ * convert to a unit other than $baselineUnit.
129
+ */
130
+ /**
131
+ * Convert a font size to a dynamic font size but impose
132
+ * maximum and minimum font sizes.
133
+ * @param size - The initial font size including the unit (i.e. px or pt)
134
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
135
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
136
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
137
+ * convert to a unit other than $baselineUnit.
138
+ */
139
+ /**
140
+ * A heuristic that applies CSS to tablet
141
+ * viewports.
142
+ *
143
+ * Usage:
144
+ * @include tablet-viewport() {
145
+ * :host {
146
+ * background-color: green;
147
+ * }
148
+ * }
149
+ */
150
+ /**
151
+ * A heuristic that applies CSS to mobile
152
+ * viewports (i.e. phones, not tablets).
153
+ *
154
+ * Usage:
155
+ * @include mobile-viewport() {
156
+ * :host {
157
+ * background-color: blue;
158
+ * }
159
+ * }
160
+ */
161
+ :host {
162
+ font-family: var(--ion-font-family, inherit);
163
+ z-index: 10;
164
+ }
165
+
166
+ :host(.ion-color) {
167
+ color: var(--ion-color-contrast);
168
+ }
169
+
170
+ :host(.ion-color) .toolbar-background {
171
+ background: var(--ion-color-base);
172
+ }
173
+
174
+ .toolbar-container {
175
+ z-index: 10;
176
+ }
177
+
178
+ .toolbar-background {
179
+ z-index: -1;
180
+ }
181
+
182
+ /**
183
+ * Convert a pixels given value into rem
184
+ *
185
+ * @param pixels - Value in pixels to be converted (i.e. px)
186
+ * @param context (optional) - Baseline value
187
+ */
145
188
  /**
146
189
  * Convert a font size to a dynamic font size.
147
190
  * Fonts that participate in Dynamic Type should use
@@ -3,14 +3,15 @@
3
3
  */
4
4
  import { Host, forceUpdate, h } from "@stencil/core";
5
5
  import { createColorClasses, hostContext } 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
  * @slot - Content is placed between the named slots if provided without a slot.
11
12
  * @slot start - Content is placed to the left of the toolbar text in LTR, and to the right in RTL.
12
- * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
13
- * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
13
+ * @slot secondary - Content is placed to the left of the toolbar text in the `"ios"` theme, and directly to the right in the `"md"` theme.
14
+ * @slot primary - Content is placed to the right of the toolbar text in the `"ios"` theme, and to the far right in the `"md"` theme.
14
15
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
15
16
  */
16
17
  export class Toolbar {
@@ -57,28 +58,30 @@ export class Toolbar {
57
58
  }
58
59
  }
59
60
  render() {
60
- const mode = getIonMode(this);
61
+ const theme = getIonTheme(this);
61
62
  const childStyles = {};
62
63
  this.childrenStyles.forEach((value) => {
63
64
  Object.assign(childStyles, value);
64
65
  });
65
- return (h(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
66
- [mode]: true,
66
+ return (h(Host, { key: '31d2cea6423110a58ed8ba749e422889c6f6d310', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
67
+ [theme]: true,
67
68
  'in-toolbar': hostContext('ion-toolbar', this.el),
68
- })) }, h("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), h("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, h("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), h("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), h("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, h("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), h("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), h("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
69
+ })) }, h("div", { key: 'a3ecd195af52489725b7396c0aab32a9b4d4a49c', class: "toolbar-background" }), h("div", { key: 'cfdc07edc4b002370df08ce4c913c3a52955252a', class: "toolbar-container" }, h("slot", { key: 'b77feb227ab03d0fe095fdf620973e8502b486e6', name: "start" }), h("slot", { key: '4284acf3c65df07e74908ee6620d5595255ac547', name: "secondary" }), h("div", { key: '879fdaedc732cbf414d24f3ed3b0abcf4baaae71', class: "toolbar-content" }, h("slot", { key: '975a411effa1492d6c4eb9302b3d8580bbce192d' })), h("slot", { key: '5cfef86927c398b40710769bbdba9cf4c45100c5', name: "primary" }), h("slot", { key: '416036fa2a84a8ef0cb6329d68da040c47bd2aea', name: "end" }))));
69
70
  }
70
71
  static get is() { return "ion-toolbar"; }
71
72
  static get encapsulation() { return "shadow"; }
72
73
  static get originalStyleUrls() {
73
74
  return {
74
75
  "ios": ["toolbar.ios.scss"],
75
- "md": ["toolbar.md.scss"]
76
+ "md": ["toolbar.md.scss"],
77
+ "ionic": ["toolbar.ionic.scss"]
76
78
  };
77
79
  }
78
80
  static get styleUrls() {
79
81
  return {
80
82
  "ios": ["toolbar.ios.css"],
81
- "md": ["toolbar.md.css"]
83
+ "md": ["toolbar.md.css"],
84
+ "ionic": ["toolbar.ionic.css"]
82
85
  };
83
86
  }
84
87
  static get properties() {
@@ -1,36 +1,3 @@
1
- /**
2
- * Convert a font size to a dynamic font size.
3
- * Fonts that participate in Dynamic Type should use
4
- * dynamic font sizes.
5
- * @param size - The initial font size including the unit (i.e. px or pt)
6
- * @param unit (optional) - The unit to convert to. Use this if you want to
7
- * convert to a unit other than $baselineUnit.
8
- */
9
- /**
10
- * Convert a font size to a dynamic font size but impose
11
- * a maximum font size.
12
- * @param size - The initial font size including the unit (i.e. px or pt)
13
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
14
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
15
- * convert to a unit other than $baselineUnit.
16
- */
17
- /**
18
- * Convert a font size to a dynamic font size but impose
19
- * a minimum font size.
20
- * @param size - The initial font size including the unit (i.e. px or pt)
21
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
22
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
23
- * convert to a unit other than $baselineUnit.
24
- */
25
- /**
26
- * Convert a font size to a dynamic font size but impose
27
- * maximum and minimum font sizes.
28
- * @param size - The initial font size including the unit (i.e. px or pt)
29
- * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
30
- * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
31
- * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
32
- * convert to a unit other than $baselineUnit.
33
- */
34
1
  /**
35
2
  * A heuristic that applies CSS to tablet
36
3
  * viewports.
@@ -84,20 +51,10 @@
84
51
  padding-right: var(--ion-safe-area-right);
85
52
  padding-left: var(--ion-safe-area-left);
86
53
  color: var(--color);
87
- font-family: var(--ion-font-family, inherit);
88
54
  contain: content;
89
- z-index: 10;
90
55
  box-sizing: border-box;
91
56
  }
92
57
 
93
- :host(.ion-color) {
94
- color: var(--ion-color-contrast);
95
- }
96
-
97
- :host(.ion-color) .toolbar-background {
98
- background: var(--ion-color-base);
99
- }
100
-
101
58
  .toolbar-container {
102
59
  -webkit-padding-start: var(--padding-start);
103
60
  padding-inline-start: var(--padding-start);
@@ -114,13 +71,12 @@
114
71
  min-height: var(--min-height);
115
72
  contain: content;
116
73
  overflow: hidden;
117
- z-index: 10;
118
74
  box-sizing: border-box;
119
75
  }
120
76
 
121
77
  .toolbar-background {
122
- left: 0;
123
78
  right: 0;
79
+ left: 0;
124
80
  top: 0;
125
81
  bottom: 0;
126
82
  position: absolute;
@@ -131,17 +87,104 @@
131
87
  background: var(--background);
132
88
  contain: strict;
133
89
  opacity: calc(var(--opacity) * var(--opacity-scale));
134
- z-index: -1;
135
90
  pointer-events: none;
136
91
  }
137
92
 
138
93
  ::slotted(ion-progress-bar) {
139
- left: 0;
140
94
  right: 0;
95
+ left: 0;
141
96
  bottom: 0;
142
97
  position: absolute;
143
98
  }
144
99
 
100
+ /**
101
+ * Convert a pixels given value into rem
102
+ *
103
+ * @param pixels - Value in pixels to be converted (i.e. px)
104
+ * @param context (optional) - Baseline value
105
+ */
106
+ /**
107
+ * Convert a font size to a dynamic font size.
108
+ * Fonts that participate in Dynamic Type should use
109
+ * dynamic font sizes.
110
+ * @param size - The initial font size including the unit (i.e. px or pt)
111
+ * @param unit (optional) - The unit to convert to. Use this if you want to
112
+ * convert to a unit other than $baselineUnit.
113
+ */
114
+ /**
115
+ * Convert a font size to a dynamic font size but impose
116
+ * a maximum font size.
117
+ * @param size - The initial font size including the unit (i.e. px or pt)
118
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
119
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
120
+ * convert to a unit other than $baselineUnit.
121
+ */
122
+ /**
123
+ * Convert a font size to a dynamic font size but impose
124
+ * a minimum font size.
125
+ * @param size - The initial font size including the unit (i.e. px or pt)
126
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
127
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
128
+ * convert to a unit other than $baselineUnit.
129
+ */
130
+ /**
131
+ * Convert a font size to a dynamic font size but impose
132
+ * maximum and minimum font sizes.
133
+ * @param size - The initial font size including the unit (i.e. px or pt)
134
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
135
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
136
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
137
+ * convert to a unit other than $baselineUnit.
138
+ */
139
+ /**
140
+ * A heuristic that applies CSS to tablet
141
+ * viewports.
142
+ *
143
+ * Usage:
144
+ * @include tablet-viewport() {
145
+ * :host {
146
+ * background-color: green;
147
+ * }
148
+ * }
149
+ */
150
+ /**
151
+ * A heuristic that applies CSS to mobile
152
+ * viewports (i.e. phones, not tablets).
153
+ *
154
+ * Usage:
155
+ * @include mobile-viewport() {
156
+ * :host {
157
+ * background-color: blue;
158
+ * }
159
+ * }
160
+ */
161
+ :host {
162
+ font-family: var(--ion-font-family, inherit);
163
+ z-index: 10;
164
+ }
165
+
166
+ :host(.ion-color) {
167
+ color: var(--ion-color-contrast);
168
+ }
169
+
170
+ :host(.ion-color) .toolbar-background {
171
+ background: var(--ion-color-base);
172
+ }
173
+
174
+ .toolbar-container {
175
+ z-index: 10;
176
+ }
177
+
178
+ .toolbar-background {
179
+ z-index: -1;
180
+ }
181
+
182
+ /**
183
+ * Convert a pixels given value into rem
184
+ *
185
+ * @param pixels - Value in pixels to be converted (i.e. px)
186
+ * @param context (optional) - Baseline value
187
+ */
145
188
  /**
146
189
  * Convert a font size to a dynamic font size.
147
190
  * Fonts that participate in Dynamic Type should use
@@ -1,13 +1,148 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { getMode, setMode, setPlatformHelpers } from "@stencil/core";
4
+ import { Build, getMode, setMode, setPlatformHelpers, getElement } from "@stencil/core";
5
+ import { printIonWarning } from "../utils/logging/index";
6
+ import { shouldUseCloseWatcher } from "../utils/hardware-back-button";
5
7
  import { isPlatform, setupPlatforms } from "../utils/platform";
6
8
  import { config, configFromSession, configFromURL, saveConfig } from "./config";
7
- // TODO(FW-2832): types
8
9
  let defaultMode;
9
- export const getIonMode = (ref) => {
10
- return (ref && getMode(ref)) || defaultMode;
10
+ let defaultTheme = 'md';
11
+ /**
12
+ * Prints a warning message to the developer to inform them of
13
+ * an invalid configuration of mode and theme.
14
+ * @param mode The invalid mode configuration.
15
+ * @param theme The invalid theme configuration.
16
+ */
17
+ const printInvalidModeWarning = (mode, theme, ref) => {
18
+ printIonWarning(`Invalid mode and theme combination provided: mode: ${mode}, theme: ${theme}. Fallback mode ${getDefaultModeForTheme(theme)} will be used.`, ref);
19
+ };
20
+ /**
21
+ * Validates if a mode is accepted for a theme configuration.
22
+ * @param mode The mode to validate.
23
+ * @param theme The theme the mode is being used with.
24
+ * @returns `true` if the mode is valid for the theme, `false` if invalid.
25
+ */
26
+ export const isModeValidForTheme = (mode, theme) => {
27
+ if (mode === 'md') {
28
+ return theme === 'md' || theme === 'ionic';
29
+ }
30
+ else if (mode === 'ios') {
31
+ return theme === 'ios' || theme === 'ionic';
32
+ }
33
+ return false;
34
+ };
35
+ /**
36
+ * Returns the default mode for a specified theme.
37
+ * @param theme The theme to return a default mode for.
38
+ * @returns The default mode, either `ios` or `md`.
39
+ */
40
+ const getDefaultModeForTheme = (theme) => {
41
+ if (theme === 'ios') {
42
+ return 'ios';
43
+ }
44
+ return 'md';
45
+ };
46
+ /**
47
+ * Returns the default theme for a specified mode.
48
+ * @param mode The mode to return a default theme for.
49
+ * @returns The default theme.
50
+ */
51
+ const getDefaultThemeForMode = (mode) => {
52
+ if (mode === 'ios') {
53
+ return 'ios';
54
+ }
55
+ return 'md';
56
+ };
57
+ const isModeSupported = (elmMode) => ['ios', 'md'].includes(elmMode);
58
+ const isThemeSupported = (theme) => ['ios', 'md', 'ionic'].includes(theme);
59
+ const isIonicElement = (elm) => { var _a; return (_a = elm.tagName) === null || _a === void 0 ? void 0 : _a.startsWith('ION-'); };
60
+ /**
61
+ * Returns the mode value of the element reference or the closest
62
+ * parent with a valid mode.
63
+ * @param ref The element reference to look up the mode for.
64
+ * @param theme Optionally can provide the theme to avoid an additional look-up.
65
+ * @returns The mode value for the element reference.
66
+ */
67
+ export const getIonMode = (ref, theme = getIonTheme(ref)) => {
68
+ var _a;
69
+ if ((ref === null || ref === void 0 ? void 0 : ref.mode) && isModeValidForTheme(ref === null || ref === void 0 ? void 0 : ref.mode, theme)) {
70
+ /**
71
+ * If the reference already has a mode configuration,
72
+ * use it instead of performing a look-up.
73
+ */
74
+ return ref.mode;
75
+ }
76
+ else {
77
+ const el = getElement(ref);
78
+ const mode = ((_a = el.closest('[mode]')) === null || _a === void 0 ? void 0 : _a.getAttribute('mode')) || defaultMode;
79
+ if (isModeValidForTheme(mode, theme)) {
80
+ /**
81
+ * The mode configuration is supported for the configured theme.
82
+ */
83
+ return mode;
84
+ }
85
+ else {
86
+ printInvalidModeWarning(mode, theme, ref);
87
+ }
88
+ }
89
+ return getDefaultModeForTheme(theme);
90
+ };
91
+ /**
92
+ * Returns the theme value of the element reference or the closest
93
+ * parent with a valid theme.
94
+ *
95
+ * @param ref The element reference to look up the theme for.
96
+ * @returns The theme value for the element reference, defaults to
97
+ * the default theme if it cannot be determined.
98
+ */
99
+ export const getIonTheme = (ref) => {
100
+ var _a, _b;
101
+ const theme = ref && getMode(ref);
102
+ if (theme) {
103
+ return theme;
104
+ }
105
+ /**
106
+ * If the theme cannot be detected, then fallback to using
107
+ * the `mode` attribute to determine the style sheets to use.
108
+ */
109
+ const el = getElement(ref);
110
+ const mode = (_a = ref === null || ref === void 0 ? void 0 : ref.mode) !== null && _a !== void 0 ? _a : (_b = el.closest('[mode]')) === null || _b === void 0 ? void 0 : _b.getAttribute('mode');
111
+ if (mode) {
112
+ return getDefaultThemeForMode(mode);
113
+ }
114
+ /**
115
+ * If a mode is not detected, then fallback to using the
116
+ * default theme.
117
+ */
118
+ return defaultTheme;
119
+ };
120
+ export const rIC = (callback) => {
121
+ if ('requestIdleCallback' in window) {
122
+ window.requestIdleCallback(callback);
123
+ }
124
+ else {
125
+ setTimeout(callback, 32);
126
+ }
127
+ };
128
+ export const needInputShims = () => {
129
+ /**
130
+ * iOS always needs input shims
131
+ */
132
+ const needsShimsIOS = isPlatform(window, 'ios') && isPlatform(window, 'mobile');
133
+ if (needsShimsIOS) {
134
+ return true;
135
+ }
136
+ /**
137
+ * Android only needs input shims when running
138
+ * in the browser and only if the browser is using the
139
+ * new Chrome 108+ resize behavior: https://developer.chrome.com/blog/viewport-resize-behavior/
140
+ */
141
+ const isAndroidMobileWeb = isPlatform(window, 'android') && isPlatform(window, 'mobileweb');
142
+ if (isAndroidMobileWeb) {
143
+ return true;
144
+ }
145
+ return false;
11
146
  };
12
147
  export const initialize = (userConfig = {}) => {
13
148
  if (typeof window === 'undefined') {
@@ -36,33 +171,114 @@ export const initialize = (userConfig = {}) => {
36
171
  }
37
172
  // Setup platforms
38
173
  setupPlatforms(win);
39
- // first see if the mode was set as an attribute on <html>
40
- // which could have been set by the user, or by pre-rendering
41
- // otherwise get the mode via config settings, and fallback to md
42
174
  Ionic.config = config;
175
+ /**
176
+ * Check if the mode was set as an attribute on <html>
177
+ * which could have been set by the user, or by pre-rendering
178
+ * otherwise get the mode via config settings, and fallback to md.
179
+ */
43
180
  Ionic.mode = defaultMode = config.get('mode', doc.documentElement.getAttribute('mode') || (isPlatform(win, 'ios') ? 'ios' : 'md'));
181
+ /**
182
+ * Check if the theme was set as an attribute on <html>
183
+ * which could have been set by the user, or by pre-rendering
184
+ * otherwise get the theme via config settings, and fallback to md.
185
+ */
186
+ Ionic.theme = defaultTheme = config.get('theme', doc.documentElement.getAttribute('theme') || getDefaultThemeForMode(defaultMode));
187
+ if (!isModeValidForTheme(defaultMode, defaultTheme)) {
188
+ printInvalidModeWarning(defaultMode, defaultTheme, configObj);
189
+ defaultMode = getDefaultModeForTheme(defaultTheme);
190
+ }
44
191
  config.set('mode', defaultMode);
45
192
  doc.documentElement.setAttribute('mode', defaultMode);
46
193
  doc.documentElement.classList.add(defaultMode);
194
+ config.set('theme', defaultTheme);
195
+ doc.documentElement.setAttribute('theme', defaultTheme);
196
+ doc.documentElement.classList.add(defaultTheme);
47
197
  if (config.getBoolean('_testing')) {
48
198
  config.set('animated', false);
49
199
  }
50
- const isIonicElement = (elm) => { var _a; return (_a = elm.tagName) === null || _a === void 0 ? void 0 : _a.startsWith('ION-'); };
51
- const isAllowedIonicModeValue = (elmMode) => ['ios', 'md'].includes(elmMode);
52
200
  setMode((elm) => {
201
+ /**
202
+ * Iterate over all the element nodes, to both validate and
203
+ * set the "mode" that is used for determining the styles to
204
+ * apply to the element.
205
+ *
206
+ * setMode refers to Stencil's internal metadata for "mode",
207
+ * which is used to set the correct styleUrl for the component.
208
+ *
209
+ * If the "theme" attribute or property is set, then use it
210
+ * to determine the style sheets to use.
211
+ *
212
+ * If the "mode" attribute or property is set, then use it
213
+ * to determine the style sheets to use. This is fallback
214
+ * behavior for applications that are not setting the "theme".
215
+ */
53
216
  while (elm) {
54
- const elmMode = elm.mode || elm.getAttribute('mode');
217
+ const theme = elm.getAttribute('theme');
218
+ if (theme) {
219
+ if (isThemeSupported(theme)) {
220
+ return theme;
221
+ }
222
+ else if (isIonicElement(elm)) {
223
+ printIonWarning(`Invalid theme: "${theme}". Supported themes include: "ios" or "md".`);
224
+ }
225
+ }
226
+ /**
227
+ * If a theme is not detected, then fallback to using the
228
+ * `mode` attribute to determine the style sheets to use.
229
+ */
230
+ const elmMode = elm.getAttribute('mode');
55
231
  if (elmMode) {
56
- if (isAllowedIonicModeValue(elmMode)) {
232
+ if (isModeSupported(elmMode)) {
57
233
  return elmMode;
58
234
  }
59
235
  else if (isIonicElement(elm)) {
60
- console.warn('Invalid ionic mode: "' + elmMode + '", expected: "ios" or "md"');
236
+ printIonWarning(`Invalid mode: "${elmMode}". Ionic modes can be only "ios" or "md"`);
61
237
  }
62
238
  }
63
239
  elm = elm.parentElement;
64
240
  }
65
- return defaultMode;
241
+ return defaultTheme;
66
242
  });
243
+ // `IonApp` code
244
+ // ----------------------------------------------
245
+ if (Build.isBrowser) {
246
+ rIC(async () => {
247
+ const isHybrid = isPlatform(window, 'hybrid');
248
+ if (!config.getBoolean('_testing')) {
249
+ import('../utils/tap-click').then((module) => module.startTapClick(config));
250
+ }
251
+ if (config.getBoolean('statusTap', isHybrid)) {
252
+ import('../utils/status-tap').then((module) => module.startStatusTap());
253
+ }
254
+ if (config.getBoolean('inputShims', needInputShims())) {
255
+ /**
256
+ * needInputShims() ensures that only iOS and Android
257
+ * platforms proceed into this block.
258
+ */
259
+ const platform = isPlatform(window, 'ios') ? 'ios' : 'android';
260
+ import('../utils/input-shims/input-shims').then((module) => module.startInputShims(config, platform));
261
+ }
262
+ const hardwareBackButtonModule = await import('../utils/hardware-back-button');
263
+ const supportsHardwareBackButtonEvents = isHybrid || shouldUseCloseWatcher();
264
+ if (config.getBoolean('hardwareBackButton', supportsHardwareBackButtonEvents)) {
265
+ hardwareBackButtonModule.startHardwareBackButton();
266
+ }
267
+ else {
268
+ /**
269
+ * If an app sets hardwareBackButton: false and experimentalCloseWatcher: true
270
+ * then the close watcher will not be used.
271
+ */
272
+ if (shouldUseCloseWatcher()) {
273
+ printIonWarning('experimentalCloseWatcher was set to `true`, but hardwareBackButton was set to `false`. Both config options must be `true` for the Close Watcher API to be used.');
274
+ }
275
+ hardwareBackButtonModule.blockHardwareBackButton();
276
+ }
277
+ if (typeof window !== 'undefined') {
278
+ import('../utils/keyboard/keyboard').then((module) => module.startKeyboardAssist(window));
279
+ }
280
+ import('../utils/focus-visible').then((module) => module.getOrInitFocusVisibleUtility());
281
+ });
282
+ }
67
283
  };
68
284
  export default initialize;