@ionic/core 8.0.0-dev.11712932867.11504809 → 8.0.0-dev.11713893672.15a2b23e

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 (940) hide show
  1. package/components/action-sheet.js +6 -11
  2. package/components/alert.js +8 -12
  3. package/components/backdrop.js +4 -8
  4. package/components/button.js +11 -40
  5. package/components/buttons.js +5 -9
  6. package/components/checkbox.js +11 -15
  7. package/components/data.js +4 -4
  8. package/components/index4.js +7 -8
  9. package/components/index6.js +30 -27
  10. package/components/index7.js +27 -124
  11. package/components/index8.js +111 -150
  12. package/components/index9.js +167 -0
  13. package/components/input-shims.js +1 -1
  14. package/components/input.utils.js +1 -1
  15. package/components/ion-accordion-group.js +6 -9
  16. package/components/ion-accordion.js +6 -10
  17. package/components/ion-app.js +6 -5
  18. package/components/ion-avatar.js +2 -9
  19. package/components/ion-back-button.js +8 -12
  20. package/components/ion-badge.js +5 -9
  21. package/components/ion-breadcrumb.js +7 -11
  22. package/components/ion-breadcrumbs.js +5 -9
  23. package/components/ion-card-content.js +5 -9
  24. package/components/ion-card-header.js +5 -9
  25. package/components/ion-card-subtitle.js +5 -9
  26. package/components/ion-card-title.js +5 -9
  27. package/components/ion-card.js +7 -16
  28. package/components/ion-chip.js +6 -16
  29. package/components/ion-col.js +5 -5
  30. package/components/ion-content.js +11 -13
  31. package/components/ion-datetime-button.js +6 -9
  32. package/components/ion-datetime.js +28 -33
  33. package/components/ion-fab-button.js +6 -10
  34. package/components/ion-fab-list.js +5 -5
  35. package/components/ion-fab.js +5 -5
  36. package/components/ion-footer.js +10 -14
  37. package/components/ion-grid.js +5 -5
  38. package/components/ion-header.js +10 -14
  39. package/components/ion-img.js +2 -5
  40. package/components/ion-infinite-scroll-content.js +8 -12
  41. package/components/ion-infinite-scroll.js +5 -5
  42. package/components/ion-input-password-toggle.js +6 -5
  43. package/components/ion-input.js +13 -21
  44. package/components/ion-item-divider.js +5 -9
  45. package/components/ion-item-group.js +5 -9
  46. package/components/ion-item-option.js +5 -9
  47. package/components/ion-item-options.js +5 -9
  48. package/components/ion-item-sliding.js +5 -5
  49. package/components/ion-loading.js +6 -10
  50. package/components/ion-menu-button.js +7 -11
  51. package/components/ion-menu-toggle.js +5 -5
  52. package/components/ion-menu.js +5 -9
  53. package/components/ion-modal.js +8 -11
  54. package/components/ion-nav-link.js +1 -1
  55. package/components/ion-nav.js +5 -6
  56. package/components/ion-note.js +5 -9
  57. package/components/ion-picker-legacy.js +6 -5
  58. package/components/ion-progress-bar.js +4 -8
  59. package/components/ion-range.js +8 -11
  60. package/components/ion-refresher-content.js +8 -9
  61. package/components/ion-refresher.js +6 -10
  62. package/components/ion-reorder-group.js +5 -5
  63. package/components/ion-reorder.js +5 -11
  64. package/components/ion-router-link.js +5 -5
  65. package/components/ion-router-outlet.js +1 -1
  66. package/components/ion-row.js +2 -5
  67. package/components/ion-searchbar.js +12 -16
  68. package/components/ion-segment-button.js +6 -10
  69. package/components/ion-segment.js +5 -9
  70. package/components/ion-select-option.js +2 -5
  71. package/components/ion-select.js +19 -23
  72. package/components/ion-skeleton-text.js +5 -5
  73. package/components/ion-split-pane.js +6 -10
  74. package/components/ion-tab-bar.js +5 -9
  75. package/components/ion-tab-button.js +5 -9
  76. package/components/ion-tab.js +2 -2
  77. package/components/ion-tabs.js +1 -1
  78. package/components/ion-text.js +5 -5
  79. package/components/ion-textarea.js +8 -12
  80. package/components/ion-thumbnail.js +2 -5
  81. package/components/ion-title.js +5 -9
  82. package/components/ion-toast.js +9 -13
  83. package/components/ion-toggle.js +15 -19
  84. package/components/ion-toolbar.js +5 -9
  85. package/components/ionic-global.js +14 -191
  86. package/components/ios.transition.js +0 -1
  87. package/components/item.js +7 -11
  88. package/components/label.js +5 -9
  89. package/components/list-header.js +5 -9
  90. package/components/list.js +6 -10
  91. package/components/overlays.js +2 -1
  92. package/components/picker-column-option.js +5 -9
  93. package/components/picker-column.js +150 -7
  94. package/components/picker-column2.js +4 -4
  95. package/components/picker.js +2 -6
  96. package/components/popover.js +6 -9
  97. package/components/radio-group.js +3 -5
  98. package/components/radio.js +8 -12
  99. package/components/ripple-effect.js +4 -4
  100. package/components/select-popover.js +2 -9
  101. package/components/spinner.js +6 -6
  102. package/components/status-tap.js +1 -1
  103. package/css/core.css.map +1 -1
  104. package/css/ionic.bundle.css.map +1 -1
  105. package/css/palettes/dark.always.css +1 -1
  106. package/css/palettes/dark.always.css.map +1 -1
  107. package/css/palettes/dark.class.css +1 -1
  108. package/css/palettes/dark.class.css.map +1 -1
  109. package/css/palettes/dark.system.css +1 -1
  110. package/css/palettes/dark.system.css.map +1 -1
  111. package/dist/cjs/{app-globals-afaa9c54.js → app-globals-63aebf89.js} +1 -1
  112. package/dist/cjs/{data-99329b16.js → data-21dc0f81.js} +6 -6
  113. package/dist/cjs/{hardware-back-button-6084a439.js → hardware-back-button-ad9299b4.js} +1 -1
  114. package/dist/cjs/index-5915f9b3.js +38 -0
  115. package/dist/cjs/{index-18f2ba3b.js → index-5b6a7459.js} +2 -2
  116. package/dist/cjs/{index-f378621f.js → index-5cf05f94.js} +12 -13
  117. package/dist/cjs/{index-7c699f7b.js → index-ff66cc7c.js} +2 -2
  118. package/dist/cjs/index.cjs.js +8 -7
  119. package/dist/cjs/{input-shims-077ab038.js → input-shims-20d639e6.js} +2 -3
  120. package/dist/cjs/{input.utils-1aac63e6.js → input.utils-611cde0b.js} +2 -2
  121. package/dist/cjs/ion-accordion_2.cjs.entry.js +11 -18
  122. package/dist/cjs/ion-action-sheet.cjs.entry.js +9 -13
  123. package/dist/cjs/ion-alert.cjs.entry.js +11 -14
  124. package/dist/cjs/ion-app_8.cjs.entry.js +61 -81
  125. package/dist/cjs/ion-avatar_3.cjs.entry.js +7 -21
  126. package/dist/cjs/ion-back-button.cjs.entry.js +7 -11
  127. package/dist/cjs/ion-backdrop.cjs.entry.js +4 -8
  128. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +10 -18
  129. package/dist/cjs/ion-button_2.cjs.entry.js +14 -43
  130. package/dist/cjs/ion-card_5.cjs.entry.js +23 -47
  131. package/dist/cjs/ion-checkbox.cjs.entry.js +11 -15
  132. package/dist/cjs/ion-chip.cjs.entry.js +5 -14
  133. package/dist/cjs/ion-col_3.cjs.entry.js +10 -13
  134. package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -14
  135. package/dist/cjs/ion-datetime_3.cjs.entry.js +107 -112
  136. package/dist/cjs/ion-fab_3.cjs.entry.js +13 -17
  137. package/dist/cjs/ion-img.cjs.entry.js +2 -5
  138. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +13 -16
  139. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +10 -9
  140. package/dist/cjs/ion-input.cjs.entry.js +14 -20
  141. package/dist/cjs/ion-item-option_3.cjs.entry.js +14 -21
  142. package/dist/cjs/ion-item_8.cjs.entry.js +35 -63
  143. package/dist/cjs/ion-loading.cjs.entry.js +9 -12
  144. package/dist/cjs/ion-menu_3.cjs.entry.js +18 -25
  145. package/dist/cjs/ion-modal.cjs.entry.js +16 -19
  146. package/dist/cjs/ion-nav_2.cjs.entry.js +6 -8
  147. package/dist/cjs/ion-picker-column-option.cjs.entry.js +5 -9
  148. package/dist/cjs/ion-picker-column.cjs.entry.js +148 -7
  149. package/dist/cjs/ion-picker.cjs.entry.js +2 -6
  150. package/dist/cjs/ion-popover.cjs.entry.js +12 -15
  151. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -8
  152. package/dist/cjs/ion-radio_2.cjs.entry.js +10 -16
  153. package/dist/cjs/ion-range.cjs.entry.js +13 -16
  154. package/dist/cjs/ion-refresher_2.cjs.entry.js +13 -17
  155. package/dist/cjs/ion-reorder_2.cjs.entry.js +9 -14
  156. package/dist/cjs/ion-ripple-effect.cjs.entry.js +4 -4
  157. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  158. package/dist/cjs/ion-searchbar.cjs.entry.js +11 -15
  159. package/dist/cjs/ion-segment_2.cjs.entry.js +10 -18
  160. package/dist/cjs/ion-select_3.cjs.entry.js +23 -36
  161. package/dist/cjs/ion-spinner.cjs.entry.js +6 -6
  162. package/dist/cjs/ion-split-pane.cjs.entry.js +6 -10
  163. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +9 -17
  164. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  165. package/dist/cjs/ion-text.cjs.entry.js +5 -5
  166. package/dist/cjs/ion-textarea.cjs.entry.js +10 -13
  167. package/dist/cjs/ion-toast.cjs.entry.js +32 -36
  168. package/dist/cjs/ion-toggle.cjs.entry.js +14 -18
  169. package/dist/cjs/ionic-global-1adf9bc4.js +230 -0
  170. package/dist/cjs/ionic.cjs.js +3 -3
  171. package/dist/cjs/{ios.transition-07077689.js → ios.transition-06673f18.js} +1 -2
  172. package/dist/cjs/loader.cjs.js +3 -3
  173. package/dist/cjs/{md.transition-a829ffba.js → md.transition-4d7bb4b1.js} +1 -1
  174. package/dist/cjs/{overlays-a247b257.js → overlays-6487955a.js} +4 -3
  175. package/dist/cjs/{status-tap-870d407b.js → status-tap-0be20572.js} +2 -2
  176. package/dist/collection/components/accordion/accordion.ios.css +0 -12
  177. package/dist/collection/components/accordion/accordion.js +8 -11
  178. package/dist/collection/components/accordion/accordion.md.css +0 -6
  179. package/dist/collection/components/accordion-group/accordion-group.ios.css +0 -12
  180. package/dist/collection/components/accordion-group/accordion-group.js +8 -11
  181. package/dist/collection/components/accordion-group/accordion-group.md.css +0 -18
  182. package/dist/collection/components/action-sheet/action-sheet.ios.css +0 -12
  183. package/dist/collection/components/action-sheet/action-sheet.js +10 -14
  184. package/dist/collection/components/action-sheet/action-sheet.md.css +0 -12
  185. package/dist/collection/components/alert/alert.ios.css +0 -18
  186. package/dist/collection/components/alert/alert.js +12 -15
  187. package/dist/collection/components/alert/alert.md.css +0 -18
  188. package/dist/collection/components/app/app.js +4 -8
  189. package/dist/collection/components/avatar/avatar.ios.css +0 -12
  190. package/dist/collection/components/avatar/avatar.js +4 -13
  191. package/dist/collection/components/avatar/avatar.md.css +0 -12
  192. package/dist/collection/components/back-button/back-button.ios.css +0 -12
  193. package/dist/collection/components/back-button/back-button.js +10 -13
  194. package/dist/collection/components/back-button/back-button.md.css +0 -12
  195. package/dist/collection/components/backdrop/backdrop.ios.css +0 -12
  196. package/dist/collection/components/backdrop/backdrop.js +6 -12
  197. package/dist/collection/components/backdrop/backdrop.md.css +0 -12
  198. package/dist/collection/components/badge/badge.ios.css +0 -12
  199. package/dist/collection/components/badge/badge.js +8 -11
  200. package/dist/collection/components/badge/badge.md.css +0 -12
  201. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +0 -12
  202. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -12
  203. package/dist/collection/components/breadcrumb/breadcrumb.md.css +0 -12
  204. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +0 -6
  205. package/dist/collection/components/breadcrumbs/breadcrumbs.js +9 -11
  206. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +0 -6
  207. package/dist/collection/components/button/button.ios.css +5 -29
  208. package/dist/collection/components/button/button.js +16 -45
  209. package/dist/collection/components/button/button.md.css +4 -23
  210. package/dist/collection/components/button/test/clear/button.e2e.js +3 -6
  211. package/dist/collection/components/button/test/round/button.e2e.js +52 -0
  212. package/dist/collection/components/button/test/size/button.e2e.js +1 -18
  213. package/dist/collection/components/buttons/buttons.ios.css +0 -18
  214. package/dist/collection/components/buttons/buttons.js +8 -14
  215. package/dist/collection/components/buttons/buttons.md.css +0 -18
  216. package/dist/collection/components/card/card.ios.css +0 -12
  217. package/dist/collection/components/card/card.js +10 -34
  218. package/dist/collection/components/card/card.md.css +0 -12
  219. package/dist/collection/components/card-content/card-content.ios.css +0 -12
  220. package/dist/collection/components/card-content/card-content.js +8 -11
  221. package/dist/collection/components/card-content/card-content.md.css +0 -12
  222. package/dist/collection/components/card-header/card-header.ios.css +0 -12
  223. package/dist/collection/components/card-header/card-header.js +9 -12
  224. package/dist/collection/components/card-header/card-header.md.css +0 -12
  225. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +0 -12
  226. package/dist/collection/components/card-subtitle/card-subtitle.js +8 -11
  227. package/dist/collection/components/card-subtitle/card-subtitle.md.css +0 -12
  228. package/dist/collection/components/card-title/card-title.ios.css +0 -12
  229. package/dist/collection/components/card-title/card-title.js +8 -11
  230. package/dist/collection/components/card-title/card-title.md.css +0 -12
  231. package/dist/collection/components/checkbox/checkbox.ios.css +1 -18
  232. package/dist/collection/components/checkbox/checkbox.js +12 -15
  233. package/dist/collection/components/checkbox/checkbox.md.css +1 -18
  234. package/dist/collection/components/chip/chip.ios.css +0 -6
  235. package/dist/collection/components/chip/chip.js +8 -33
  236. package/dist/collection/components/chip/chip.md.css +0 -6
  237. package/dist/collection/components/chip/test/states/chip.e2e.js +0 -16
  238. package/dist/collection/components/col/col.css +0 -12
  239. package/dist/collection/components/col/col.js +5 -9
  240. package/dist/collection/components/content/content.css +0 -6
  241. package/dist/collection/components/content/content.js +11 -33
  242. package/dist/collection/components/datetime/datetime.ios.css +0 -12
  243. package/dist/collection/components/datetime/datetime.js +29 -34
  244. package/dist/collection/components/datetime/datetime.md.css +0 -12
  245. package/dist/collection/components/datetime/utils/data.js +3 -3
  246. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -6
  247. package/dist/collection/components/datetime-button/datetime-button.js +8 -11
  248. package/dist/collection/components/datetime-button/datetime-button.md.css +0 -6
  249. package/dist/collection/components/fab/fab.css +0 -24
  250. package/dist/collection/components/fab/fab.js +5 -9
  251. package/dist/collection/components/fab-button/fab-button.ios.css +0 -12
  252. package/dist/collection/components/fab-button/fab-button.js +9 -12
  253. package/dist/collection/components/fab-button/fab-button.md.css +0 -12
  254. package/dist/collection/components/fab-list/fab-list.css +0 -12
  255. package/dist/collection/components/fab-list/fab-list.js +5 -9
  256. package/dist/collection/components/footer/footer.ios.css +0 -12
  257. package/dist/collection/components/footer/footer.js +14 -17
  258. package/dist/collection/components/footer/footer.md.css +0 -12
  259. package/dist/collection/components/grid/grid.css +0 -12
  260. package/dist/collection/components/grid/grid.js +5 -9
  261. package/dist/collection/components/header/header.ios.css +0 -12
  262. package/dist/collection/components/header/header.js +14 -17
  263. package/dist/collection/components/header/header.md.css +0 -12
  264. package/dist/collection/components/img/img.js +2 -8
  265. package/dist/collection/components/infinite-scroll/infinite-scroll.js +4 -8
  266. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +0 -12
  267. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +10 -16
  268. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +0 -12
  269. package/dist/collection/components/input/input.ios.css +0 -18
  270. package/dist/collection/components/input/input.js +19 -43
  271. package/dist/collection/components/input/input.md.css +2 -44
  272. package/dist/collection/components/input/test/input.spec.js +0 -13
  273. package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
  274. package/dist/collection/components/item/item.ios.css +0 -12
  275. package/dist/collection/components/item/item.js +10 -13
  276. package/dist/collection/components/item/item.md.css +0 -24
  277. package/dist/collection/components/item-divider/item-divider.ios.css +0 -18
  278. package/dist/collection/components/item-divider/item-divider.js +8 -11
  279. package/dist/collection/components/item-divider/item-divider.md.css +0 -18
  280. package/dist/collection/components/item-group/item-group.ios.css +0 -12
  281. package/dist/collection/components/item-group/item-group.js +7 -13
  282. package/dist/collection/components/item-group/item-group.md.css +0 -12
  283. package/dist/collection/components/item-option/item-option.ios.css +0 -12
  284. package/dist/collection/components/item-option/item-option.js +8 -11
  285. package/dist/collection/components/item-option/item-option.md.css +0 -12
  286. package/dist/collection/components/item-options/item-options.ios.css +0 -18
  287. package/dist/collection/components/item-options/item-options.js +7 -13
  288. package/dist/collection/components/item-options/item-options.md.css +0 -18
  289. package/dist/collection/components/item-sliding/item-sliding.css +0 -6
  290. package/dist/collection/components/item-sliding/item-sliding.js +4 -8
  291. package/dist/collection/components/label/label.ios.css +0 -18
  292. package/dist/collection/components/label/label.js +8 -11
  293. package/dist/collection/components/label/label.md.css +0 -18
  294. package/dist/collection/components/list/list.ios.css +0 -18
  295. package/dist/collection/components/list/list.js +9 -12
  296. package/dist/collection/components/list/list.md.css +0 -18
  297. package/dist/collection/components/list-header/list-header.ios.css +0 -18
  298. package/dist/collection/components/list-header/list-header.js +8 -11
  299. package/dist/collection/components/list-header/list-header.md.css +0 -18
  300. package/dist/collection/components/loading/loading.ios.css +0 -12
  301. package/dist/collection/components/loading/loading.js +10 -13
  302. package/dist/collection/components/loading/loading.md.css +0 -12
  303. package/dist/collection/components/menu/menu.ios.css +0 -12
  304. package/dist/collection/components/menu/menu.js +7 -12
  305. package/dist/collection/components/menu/menu.md.css +0 -12
  306. package/dist/collection/components/menu-button/menu-button.ios.css +0 -12
  307. package/dist/collection/components/menu-button/menu-button.js +9 -12
  308. package/dist/collection/components/menu-button/menu-button.md.css +0 -12
  309. package/dist/collection/components/menu-toggle/menu-toggle.js +5 -8
  310. package/dist/collection/components/modal/modal.ios.css +0 -12
  311. package/dist/collection/components/modal/modal.js +9 -12
  312. package/dist/collection/components/modal/modal.md.css +0 -12
  313. package/dist/collection/components/nav/nav.css +0 -6
  314. package/dist/collection/components/nav/nav.js +5 -11
  315. package/dist/collection/components/nav-link/nav-link.js +1 -5
  316. package/dist/collection/components/note/note.ios.css +0 -12
  317. package/dist/collection/components/note/note.js +8 -11
  318. package/dist/collection/components/note/note.md.css +0 -12
  319. package/dist/collection/components/picker/picker.ios.css +0 -12
  320. package/dist/collection/components/picker/picker.js +5 -8
  321. package/dist/collection/components/picker/picker.md.css +0 -12
  322. package/dist/collection/components/picker-column/picker-column.css +19 -6
  323. package/dist/collection/components/picker-column/picker-column.js +153 -8
  324. package/dist/collection/components/picker-column/test/picker-column.spec.js +83 -0
  325. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -6
  326. package/dist/collection/components/picker-column-option/picker-column-option.js +7 -13
  327. package/dist/collection/components/picker-column-option/picker-column-option.md.css +0 -6
  328. package/dist/collection/components/picker-legacy/picker.ios.css +0 -12
  329. package/dist/collection/components/picker-legacy/picker.js +6 -7
  330. package/dist/collection/components/picker-legacy/picker.md.css +0 -12
  331. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -12
  332. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  333. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -12
  334. package/dist/collection/components/popover/popover.ios.css +0 -12
  335. package/dist/collection/components/popover/popover.js +12 -15
  336. package/dist/collection/components/popover/popover.md.css +0 -12
  337. package/dist/collection/components/progress-bar/progress-bar.ios.css +0 -6
  338. package/dist/collection/components/progress-bar/progress-bar.js +7 -10
  339. package/dist/collection/components/progress-bar/progress-bar.md.css +0 -6
  340. package/dist/collection/components/radio/radio.ios.css +1 -18
  341. package/dist/collection/components/radio/radio.js +9 -12
  342. package/dist/collection/components/radio/radio.md.css +1 -18
  343. package/dist/collection/components/radio-group/radio-group.js +3 -9
  344. package/dist/collection/components/range/range.ios.css +0 -12
  345. package/dist/collection/components/range/range.js +9 -12
  346. package/dist/collection/components/range/range.md.css +0 -12
  347. package/dist/collection/components/refresher/refresher.ios.css +0 -12
  348. package/dist/collection/components/refresher/refresher.js +8 -11
  349. package/dist/collection/components/refresher/refresher.md.css +0 -12
  350. package/dist/collection/components/refresher-content/refresher-content.js +7 -12
  351. package/dist/collection/components/reorder/reorder.ios.css +0 -6
  352. package/dist/collection/components/reorder/reorder.js +6 -13
  353. package/dist/collection/components/reorder/reorder.md.css +0 -6
  354. package/dist/collection/components/reorder-group/reorder-group.css +0 -6
  355. package/dist/collection/components/reorder-group/reorder-group.js +4 -8
  356. package/dist/collection/components/ripple-effect/ripple-effect.css +0 -6
  357. package/dist/collection/components/ripple-effect/ripple-effect.js +4 -8
  358. package/dist/collection/components/route/route.js +0 -4
  359. package/dist/collection/components/router/router.js +0 -4
  360. package/dist/collection/components/router-link/router-link.css +0 -6
  361. package/dist/collection/components/router-link/router-link.js +5 -9
  362. package/dist/collection/components/router-outlet/router-outlet.css +0 -6
  363. package/dist/collection/components/router-outlet/router-outlet.js +2 -5
  364. package/dist/collection/components/row/row.css +0 -12
  365. package/dist/collection/components/row/row.js +2 -9
  366. package/dist/collection/components/searchbar/searchbar.ios.css +0 -12
  367. package/dist/collection/components/searchbar/searchbar.js +18 -21
  368. package/dist/collection/components/searchbar/searchbar.md.css +0 -12
  369. package/dist/collection/components/segment/segment.ios.css +0 -18
  370. package/dist/collection/components/segment/segment.js +8 -11
  371. package/dist/collection/components/segment/segment.md.css +0 -18
  372. package/dist/collection/components/segment-button/segment-button.ios.css +0 -12
  373. package/dist/collection/components/segment-button/segment-button.js +9 -12
  374. package/dist/collection/components/segment-button/segment-button.md.css +0 -12
  375. package/dist/collection/components/select/select.ios.css +0 -18
  376. package/dist/collection/components/select/select.js +24 -27
  377. package/dist/collection/components/select/select.md.css +0 -30
  378. package/dist/collection/components/select-option/select-option.js +2 -9
  379. package/dist/collection/components/select-popover/select-popover.ios.css +0 -18
  380. package/dist/collection/components/select-popover/select-popover.js +4 -12
  381. package/dist/collection/components/select-popover/select-popover.md.css +0 -18
  382. package/dist/collection/components/skeleton-text/skeleton-text.css +0 -6
  383. package/dist/collection/components/skeleton-text/skeleton-text.js +5 -9
  384. package/dist/collection/components/spinner/spinner.css +0 -6
  385. package/dist/collection/components/spinner/spinner.js +6 -10
  386. package/dist/collection/components/split-pane/split-pane.ios.css +0 -18
  387. package/dist/collection/components/split-pane/split-pane.js +8 -14
  388. package/dist/collection/components/split-pane/split-pane.md.css +0 -18
  389. package/dist/collection/components/tab/tab.js +2 -6
  390. package/dist/collection/components/tab-bar/tab-bar.ios.css +0 -18
  391. package/dist/collection/components/tab-bar/tab-bar.js +9 -12
  392. package/dist/collection/components/tab-bar/tab-bar.md.css +0 -18
  393. package/dist/collection/components/tab-button/tab-button.ios.css +0 -12
  394. package/dist/collection/components/tab-button/tab-button.js +8 -11
  395. package/dist/collection/components/tab-button/tab-button.md.css +0 -12
  396. package/dist/collection/components/tabs/tabs.css +0 -6
  397. package/dist/collection/components/tabs/tabs.js +1 -4
  398. package/dist/collection/components/text/text.css +0 -6
  399. package/dist/collection/components/text/text.js +6 -7
  400. package/dist/collection/components/textarea/textarea.ios.css +0 -24
  401. package/dist/collection/components/textarea/textarea.js +12 -15
  402. package/dist/collection/components/textarea/textarea.md.css +0 -36
  403. package/dist/collection/components/thumbnail/thumbnail.css +0 -6
  404. package/dist/collection/components/thumbnail/thumbnail.js +2 -9
  405. package/dist/collection/components/title/title.ios.css +0 -6
  406. package/dist/collection/components/title/title.js +7 -13
  407. package/dist/collection/components/title/title.md.css +0 -6
  408. package/dist/collection/components/toast/animations/utils.js +1 -1
  409. package/dist/collection/components/toast/toast.ios.css +0 -12
  410. package/dist/collection/components/toast/toast.js +11 -15
  411. package/dist/collection/components/toast/toast.md.css +0 -12
  412. package/dist/collection/components/toggle/toggle.ios.css +1 -18
  413. package/dist/collection/components/toggle/toggle.js +15 -18
  414. package/dist/collection/components/toggle/toggle.md.css +1 -18
  415. package/dist/collection/components/toolbar/toolbar.ios.css +0 -12
  416. package/dist/collection/components/toolbar/toolbar.js +10 -13
  417. package/dist/collection/components/toolbar/toolbar.md.css +0 -12
  418. package/dist/collection/css/test/{typography/a11y → a11y}/typography.e2e.js +1 -1
  419. package/dist/collection/global/ionic-global.js +13 -161
  420. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  421. package/dist/collection/utils/menu-controller/animations/push.js +1 -2
  422. package/dist/collection/utils/menu-controller/animations/reveal.js +1 -2
  423. package/dist/collection/utils/test/playwright/generator.js +23 -48
  424. package/dist/collection/utils/test/playwright/page/utils/goto.js +4 -13
  425. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -13
  426. package/dist/collection/utils/transition/ios.transition.js +0 -1
  427. package/dist/docs.json +236 -3911
  428. package/dist/esm/{app-globals-6b65a082.js → app-globals-b8e5e7fa.js} +1 -1
  429. package/dist/esm/{button-active-b3a77616.js → button-active-a411da52.js} +1 -1
  430. package/dist/esm/{data-e73f49e1.js → data-ae11fd43.js} +4 -4
  431. package/dist/esm/{hardware-back-button-7e31a4ae.js → hardware-back-button-329c81fd.js} +2 -2
  432. package/dist/esm/{index-8137ebe0.js → index-10916999.js} +8 -9
  433. package/dist/esm/{index-55408470.js → index-5cc724f3.js} +1 -1
  434. package/dist/esm/{index-a19e0b91.js → index-6e4709ff.js} +1 -1
  435. package/dist/esm/index-9b0d46f4.js +34 -0
  436. package/dist/esm/{index-bf81c266.js → index-f1f5de26.js} +3 -3
  437. package/dist/esm/index.js +9 -8
  438. package/dist/esm/{input-shims-8453cb67.js → input-shims-4530285e.js} +2 -3
  439. package/dist/esm/{input.utils-8bf2cdac.js → input.utils-09c71bc7.js} +1 -1
  440. package/dist/esm/ion-accordion_2.entry.js +11 -18
  441. package/dist/esm/ion-action-sheet.entry.js +11 -15
  442. package/dist/esm/ion-alert.entry.js +13 -16
  443. package/dist/esm/ion-app_8.entry.js +51 -71
  444. package/dist/esm/ion-avatar_3.entry.js +8 -22
  445. package/dist/esm/ion-back-button.entry.js +8 -12
  446. package/dist/esm/ion-backdrop.entry.js +5 -9
  447. package/dist/esm/ion-breadcrumb_2.entry.js +11 -19
  448. package/dist/esm/ion-button_2.entry.js +12 -41
  449. package/dist/esm/ion-card_5.entry.js +24 -48
  450. package/dist/esm/ion-checkbox.entry.js +12 -16
  451. package/dist/esm/ion-chip.entry.js +6 -15
  452. package/dist/esm/ion-col_3.entry.js +11 -14
  453. package/dist/esm/ion-datetime-button.entry.js +8 -11
  454. package/dist/esm/ion-datetime_3.entry.js +38 -43
  455. package/dist/esm/ion-fab_3.entry.js +14 -18
  456. package/dist/esm/ion-img.entry.js +3 -6
  457. package/dist/esm/ion-infinite-scroll_2.entry.js +14 -17
  458. package/dist/esm/ion-input-password-toggle.entry.js +6 -5
  459. package/dist/esm/ion-input.entry.js +15 -21
  460. package/dist/esm/ion-item-option_3.entry.js +15 -22
  461. package/dist/esm/ion-item_8.entry.js +36 -64
  462. package/dist/esm/ion-loading.entry.js +10 -13
  463. package/dist/esm/ion-menu_3.entry.js +19 -26
  464. package/dist/esm/ion-modal.entry.js +12 -15
  465. package/dist/esm/ion-nav_2.entry.js +7 -9
  466. package/dist/esm/ion-picker-column-option.entry.js +6 -10
  467. package/dist/esm/ion-picker-column.entry.js +149 -8
  468. package/dist/esm/ion-picker.entry.js +3 -7
  469. package/dist/esm/ion-popover.entry.js +10 -13
  470. package/dist/esm/ion-progress-bar.entry.js +5 -9
  471. package/dist/esm/ion-radio_2.entry.js +11 -17
  472. package/dist/esm/ion-range.entry.js +9 -12
  473. package/dist/esm/ion-refresher_2.entry.js +14 -18
  474. package/dist/esm/ion-reorder_2.entry.js +10 -15
  475. package/dist/esm/ion-ripple-effect.entry.js +5 -5
  476. package/dist/esm/ion-route_4.entry.js +6 -6
  477. package/dist/esm/ion-searchbar.entry.js +12 -16
  478. package/dist/esm/ion-segment_2.entry.js +11 -19
  479. package/dist/esm/ion-select_3.entry.js +24 -37
  480. package/dist/esm/ion-spinner.entry.js +7 -7
  481. package/dist/esm/ion-split-pane.entry.js +7 -11
  482. package/dist/esm/ion-tab-bar_2.entry.js +10 -18
  483. package/dist/esm/ion-tab_2.entry.js +4 -4
  484. package/dist/esm/ion-text.entry.js +6 -6
  485. package/dist/esm/ion-textarea.entry.js +11 -14
  486. package/dist/esm/ion-toast.entry.js +12 -16
  487. package/dist/esm/ion-toggle.entry.js +15 -19
  488. package/dist/esm/ionic-global-c4e0c089.js +224 -0
  489. package/dist/esm/ionic.js +5 -5
  490. package/dist/esm/{ios.transition-b169aa46.js → ios.transition-8e181a7e.js} +2 -3
  491. package/dist/esm/loader.js +5 -5
  492. package/dist/esm/{md.transition-ecde7aa6.js → md.transition-f1c3c737.js} +2 -2
  493. package/dist/esm/{overlays-7125a1f5.js → overlays-9472c98b.js} +3 -2
  494. package/dist/esm/{status-tap-6bfbede6.js → status-tap-39da9160.js} +3 -3
  495. package/dist/esm-es5/app-globals-b8e5e7fa.js +4 -0
  496. package/dist/esm-es5/{button-active-b3a77616.js → button-active-a411da52.js} +1 -1
  497. package/dist/esm-es5/data-ae11fd43.js +4 -0
  498. package/dist/esm-es5/{hardware-back-button-7e31a4ae.js → hardware-back-button-329c81fd.js} +1 -1
  499. package/dist/esm-es5/index-10916999.js +4 -0
  500. package/dist/esm-es5/index-5cc724f3.js +4 -0
  501. package/dist/esm-es5/{index-a19e0b91.js → index-6e4709ff.js} +1 -1
  502. package/dist/esm-es5/index-9b0d46f4.js +4 -0
  503. package/dist/esm-es5/{index-bf81c266.js → index-f1f5de26.js} +1 -1
  504. package/dist/esm-es5/index.js +1 -1
  505. package/dist/esm-es5/input-shims-4530285e.js +4 -0
  506. package/dist/esm-es5/input.utils-09c71bc7.js +4 -0
  507. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  508. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  509. package/dist/esm-es5/ion-alert.entry.js +1 -1
  510. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  511. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  512. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  513. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  514. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  515. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  516. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  517. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  518. package/dist/esm-es5/ion-chip.entry.js +1 -1
  519. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  520. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  521. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  522. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  523. package/dist/esm-es5/ion-img.entry.js +1 -1
  524. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  525. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  526. package/dist/esm-es5/ion-input.entry.js +1 -1
  527. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  528. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  529. package/dist/esm-es5/ion-loading.entry.js +1 -1
  530. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  531. package/dist/esm-es5/ion-modal.entry.js +1 -1
  532. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  533. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  534. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  535. package/dist/esm-es5/ion-picker.entry.js +1 -1
  536. package/dist/esm-es5/ion-popover.entry.js +1 -1
  537. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  538. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  539. package/dist/esm-es5/ion-range.entry.js +1 -1
  540. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  541. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  542. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  543. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  544. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  545. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  546. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  547. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  548. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  549. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  550. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  551. package/dist/esm-es5/ion-text.entry.js +1 -1
  552. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  553. package/dist/esm-es5/ion-toast.entry.js +1 -1
  554. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  555. package/dist/esm-es5/ionic-global-c4e0c089.js +4 -0
  556. package/dist/esm-es5/ionic.js +1 -1
  557. package/dist/esm-es5/ios.transition-8e181a7e.js +4 -0
  558. package/dist/esm-es5/loader.js +1 -1
  559. package/dist/esm-es5/md.transition-f1c3c737.js +4 -0
  560. package/dist/esm-es5/overlays-9472c98b.js +4 -0
  561. package/dist/esm-es5/status-tap-39da9160.js +4 -0
  562. package/dist/html.html-data.json +107 -1948
  563. package/dist/ionic/index.esm.js +1 -1
  564. package/dist/ionic/ionic.esm.js +1 -1
  565. package/dist/ionic/ionic.js +1 -1
  566. package/dist/ionic/p-012cc611.system.entry.js +4 -0
  567. package/dist/ionic/{p-dfe87e18.system.entry.js → p-04070329.system.entry.js} +1 -1
  568. package/dist/ionic/p-06e58c4e.js +4 -0
  569. package/dist/ionic/p-06fee233.js +4 -0
  570. package/dist/ionic/p-07ae133d.system.entry.js +4 -0
  571. package/dist/ionic/p-0aa4682e.entry.js +4 -0
  572. package/dist/ionic/p-0bbb6edf.system.entry.js +4 -0
  573. package/dist/ionic/{p-1d608fb3.system.js → p-0c06e09b.system.js} +1 -1
  574. package/dist/ionic/p-0ebb1fe7.system.entry.js +4 -0
  575. package/dist/ionic/p-0f2d99a6.entry.js +4 -0
  576. package/dist/ionic/p-100bedc4.system.entry.js +4 -0
  577. package/dist/ionic/p-105f7d62.system.entry.js +4 -0
  578. package/dist/ionic/p-155f1939.entry.js +4 -0
  579. package/dist/ionic/p-1672c4fd.system.entry.js +4 -0
  580. package/dist/ionic/{p-13aa82f5.entry.js → p-17978fce.entry.js} +1 -1
  581. package/dist/ionic/p-18057853.entry.js +4 -0
  582. package/dist/ionic/p-1c451f69.entry.js +4 -0
  583. package/dist/ionic/p-1cff9cad.entry.js +4 -0
  584. package/dist/ionic/p-1f9cdee2.entry.js +4 -0
  585. package/dist/ionic/p-24a98ee7.entry.js +4 -0
  586. package/dist/ionic/p-25575222.system.js +4 -0
  587. package/dist/ionic/p-266fc56e.system.js +4 -0
  588. package/dist/ionic/p-2e12bda2.entry.js +4 -0
  589. package/dist/ionic/p-2f6cedaf.system.entry.js +4 -0
  590. package/dist/ionic/{p-17f4c151.js → p-3040730e.js} +1 -1
  591. package/dist/ionic/p-3232c4de.entry.js +4 -0
  592. package/dist/ionic/p-352f7037.system.entry.js +4 -0
  593. package/dist/ionic/p-35722bba.system.entry.js +4 -0
  594. package/dist/ionic/p-35b9e842.entry.js +4 -0
  595. package/dist/ionic/p-37a63e79.system.entry.js +4 -0
  596. package/dist/ionic/p-3c70b01b.entry.js +4 -0
  597. package/dist/ionic/{p-09e29b0f.system.entry.js → p-3d6e882f.system.entry.js} +1 -1
  598. package/dist/ionic/p-3e3b34f7.system.entry.js +4 -0
  599. package/dist/ionic/p-3f70bfba.entry.js +4 -0
  600. package/dist/ionic/p-4196b2d1.system.entry.js +4 -0
  601. package/dist/ionic/{p-b54a266a.system.entry.js → p-43505ff8.system.entry.js} +1 -1
  602. package/dist/ionic/p-4429fc97.system.entry.js +4 -0
  603. package/dist/ionic/p-46111310.js +4 -0
  604. package/dist/ionic/p-46f407f0.system.js +4 -0
  605. package/dist/ionic/p-49b6fee0.system.entry.js +4 -0
  606. package/dist/ionic/p-4a615fea.entry.js +4 -0
  607. package/dist/ionic/{p-077ebefa.system.js → p-4dd82d9d.system.js} +1 -1
  608. package/dist/ionic/p-5033128d.system.js +4 -0
  609. package/dist/ionic/p-510578f3.system.entry.js +4 -0
  610. package/dist/ionic/p-51b68ec9.system.entry.js +4 -0
  611. package/dist/ionic/p-51ff648c.entry.js +4 -0
  612. package/dist/ionic/p-5270f8e8.entry.js +4 -0
  613. package/dist/ionic/p-546433d2.js +4 -0
  614. package/dist/ionic/p-54f76ced.js +4 -0
  615. package/dist/ionic/p-56c3b69c.entry.js +4 -0
  616. package/dist/ionic/p-587258c0.system.entry.js +4 -0
  617. package/dist/ionic/{p-fb064a3d.system.entry.js → p-58ea73f7.system.entry.js} +1 -1
  618. package/dist/ionic/p-596e0cf8.system.entry.js +4 -0
  619. package/dist/ionic/p-5ae49f12.entry.js +4 -0
  620. package/dist/ionic/p-5b1273f4.system.entry.js +4 -0
  621. package/dist/ionic/p-5d3f6707.entry.js +4 -0
  622. package/dist/ionic/p-5da04d11.entry.js +4 -0
  623. package/dist/ionic/p-5e7c32e8.system.entry.js +4 -0
  624. package/dist/ionic/p-5fa8587e.system.entry.js +4 -0
  625. package/dist/ionic/p-6771c0a9.system.entry.js +4 -0
  626. package/dist/ionic/p-68a1e274.system.entry.js +4 -0
  627. package/dist/ionic/p-6994c97a.js +4 -0
  628. package/dist/ionic/p-69bc14fd.entry.js +4 -0
  629. package/dist/ionic/p-6a7eac5a.js +4 -0
  630. package/dist/ionic/p-6f4db5ce.system.entry.js +4 -0
  631. package/dist/ionic/{p-2172efcb.system.js → p-71215c1d.system.js} +1 -1
  632. package/dist/ionic/p-71688099.system.entry.js +4 -0
  633. package/dist/ionic/p-716ab5f8.system.entry.js +4 -0
  634. package/dist/ionic/{p-ed5175cf.system.js → p-74a9cafe.system.js} +2 -2
  635. package/dist/ionic/p-75cddcc9.js +4 -0
  636. package/dist/ionic/p-7d9eefb3.system.js +4 -0
  637. package/dist/ionic/p-7fc505bf.entry.js +4 -0
  638. package/dist/ionic/p-83321ee8.entry.js +4 -0
  639. package/dist/ionic/p-83b070b7.entry.js +4 -0
  640. package/dist/ionic/p-88cff52d.entry.js +4 -0
  641. package/dist/ionic/p-896111fa.entry.js +4 -0
  642. package/dist/ionic/p-89b59bd7.entry.js +4 -0
  643. package/dist/ionic/p-8bd567ba.system.entry.js +4 -0
  644. package/dist/ionic/p-8e9ac22d.entry.js +4 -0
  645. package/dist/ionic/p-92e46b28.system.entry.js +4 -0
  646. package/dist/ionic/p-9540561f.entry.js +4 -0
  647. package/dist/ionic/{p-4c463790.js → p-96cc4814.js} +1 -1
  648. package/dist/ionic/{p-f8f6cf70.entry.js → p-99daf8b7.entry.js} +1 -1
  649. package/dist/ionic/{p-fc0aa455.js → p-9ad82dba.js} +1 -1
  650. package/dist/ionic/p-9d7fc908.system.js +4 -0
  651. package/dist/ionic/p-9ea607bd.system.js +4 -0
  652. package/dist/ionic/p-a1b4e619.system.entry.js +4 -0
  653. package/dist/ionic/p-a7ba2dcc.system.js +4 -0
  654. package/dist/ionic/p-a8f02173.system.js +4 -0
  655. package/dist/ionic/p-aa110ca0.system.entry.js +4 -0
  656. package/dist/ionic/p-aa682cb9.system.entry.js +4 -0
  657. package/dist/ionic/p-ab85debb.entry.js +4 -0
  658. package/dist/ionic/p-ac4e2a74.system.entry.js +4 -0
  659. package/dist/ionic/p-ac9f44a8.system.entry.js +4 -0
  660. package/dist/ionic/p-c04d5a75.entry.js +4 -0
  661. package/dist/ionic/{p-b2f88f88.system.entry.js → p-c1d1d004.system.entry.js} +1 -1
  662. package/dist/ionic/{p-a3e86f85.js → p-c222f76a.js} +1 -1
  663. package/dist/ionic/p-c41af68a.entry.js +4 -0
  664. package/dist/ionic/p-c478747f.system.js +4 -0
  665. package/dist/ionic/p-c80d05c9.js +4 -0
  666. package/dist/ionic/p-c8f2b769.entry.js +4 -0
  667. package/dist/ionic/p-c99ccdc9.entry.js +4 -0
  668. package/dist/ionic/p-c9c39c98.system.entry.js +4 -0
  669. package/dist/ionic/p-cae889f9.entry.js +4 -0
  670. package/dist/ionic/p-d2544865.system.js +4 -0
  671. package/dist/ionic/p-d45c59a6.system.entry.js +4 -0
  672. package/dist/ionic/p-d5f48185.system.entry.js +4 -0
  673. package/dist/ionic/{p-1b039c87.js → p-d60342e3.js} +1 -1
  674. package/dist/ionic/p-d79542bd.system.js +4 -0
  675. package/dist/ionic/p-d8067ea4.system.entry.js +4 -0
  676. package/dist/ionic/p-d8f66669.entry.js +4 -0
  677. package/dist/ionic/{p-fdf42961.entry.js → p-d98c0112.entry.js} +1 -1
  678. package/dist/ionic/p-dc1372e0.entry.js +4 -0
  679. package/dist/ionic/p-df48edd6.entry.js +4 -0
  680. package/dist/ionic/p-df6fa126.entry.js +4 -0
  681. package/dist/ionic/p-e8a0e731.entry.js +4 -0
  682. package/dist/ionic/p-e955bf61.entry.js +4 -0
  683. package/dist/ionic/p-ea2c16b5.system.entry.js +4 -0
  684. package/dist/ionic/p-f0392d49.entry.js +4 -0
  685. package/dist/ionic/p-f4cb521c.js +4 -0
  686. package/dist/ionic/{p-c3db3abe.system.js → p-f687573e.system.js} +1 -1
  687. package/dist/ionic/p-f818b01a.entry.js +4 -0
  688. package/dist/ionic/p-f94cbfe9.js +4 -0
  689. package/dist/ionic/p-fab4ecad.system.entry.js +4 -0
  690. package/dist/ionic/p-fb02eeec.system.entry.js +4 -0
  691. package/dist/ionic/p-fb97326f.system.entry.js +4 -0
  692. package/dist/ionic/p-fbd30ec7.entry.js +4 -0
  693. package/dist/ionic/{p-86f7af76.entry.js → p-fda4872f.entry.js} +1 -1
  694. package/dist/ionic/p-ff2323ba.system.entry.js +4 -0
  695. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  696. package/dist/types/components/accordion/accordion.d.ts +1 -2
  697. package/dist/types/components/accordion-group/accordion-group.d.ts +1 -2
  698. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +7 -3
  699. package/dist/types/components/action-sheet/action-sheet.d.ts +2 -3
  700. package/dist/types/components/alert/alert-interface.d.ts +7 -3
  701. package/dist/types/components/alert/alert.d.ts +2 -3
  702. package/dist/types/components/app/app.d.ts +0 -4
  703. package/dist/types/components/avatar/avatar.d.ts +0 -4
  704. package/dist/types/components/back-button/back-button.d.ts +1 -2
  705. package/dist/types/components/backdrop/backdrop.d.ts +0 -4
  706. package/dist/types/components/badge/badge.d.ts +1 -2
  707. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -2
  708. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  709. package/dist/types/components/button/button.d.ts +4 -15
  710. package/dist/types/components/buttons/buttons.d.ts +1 -5
  711. package/dist/types/components/card/card.d.ts +1 -6
  712. package/dist/types/components/card-content/card-content.d.ts +1 -2
  713. package/dist/types/components/card-header/card-header.d.ts +2 -3
  714. package/dist/types/components/card-subtitle/card-subtitle.d.ts +1 -2
  715. package/dist/types/components/card-title/card-title.d.ts +1 -2
  716. package/dist/types/components/checkbox/checkbox.d.ts +1 -2
  717. package/dist/types/components/chip/chip.d.ts +1 -6
  718. package/dist/types/components/col/col.d.ts +0 -4
  719. package/dist/types/components/content/content.d.ts +0 -11
  720. package/dist/types/components/datetime/datetime.d.ts +1 -2
  721. package/dist/types/components/datetime/utils/data.d.ts +3 -3
  722. package/dist/types/components/datetime-button/datetime-button.d.ts +1 -2
  723. package/dist/types/components/fab/fab.d.ts +0 -4
  724. package/dist/types/components/fab-button/fab-button.d.ts +2 -3
  725. package/dist/types/components/fab-list/fab-list.d.ts +0 -4
  726. package/dist/types/components/footer/footer.d.ts +3 -4
  727. package/dist/types/components/grid/grid.d.ts +0 -4
  728. package/dist/types/components/header/header.d.ts +3 -4
  729. package/dist/types/components/img/img.d.ts +0 -3
  730. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -4
  731. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +0 -4
  732. package/dist/types/components/input/input.d.ts +3 -14
  733. package/dist/types/components/item/item.d.ts +3 -4
  734. package/dist/types/components/item-divider/item-divider.d.ts +1 -2
  735. package/dist/types/components/item-group/item-group.d.ts +0 -4
  736. package/dist/types/components/item-option/item-option.d.ts +1 -2
  737. package/dist/types/components/item-options/item-options.d.ts +0 -4
  738. package/dist/types/components/item-sliding/item-sliding.d.ts +0 -4
  739. package/dist/types/components/label/label.d.ts +1 -2
  740. package/dist/types/components/list/list.d.ts +1 -2
  741. package/dist/types/components/list-header/list-header.d.ts +1 -2
  742. package/dist/types/components/loading/loading-interface.d.ts +7 -2
  743. package/dist/types/components/loading/loading.d.ts +2 -3
  744. package/dist/types/components/menu/menu.d.ts +0 -3
  745. package/dist/types/components/menu-button/menu-button.d.ts +1 -2
  746. package/dist/types/components/menu-toggle/menu-toggle.d.ts +0 -3
  747. package/dist/types/components/modal/modal-interface.d.ts +7 -3
  748. package/dist/types/components/modal/modal.d.ts +1 -2
  749. package/dist/types/components/nav/nav-interface.d.ts +1 -9
  750. package/dist/types/components/nav/nav.d.ts +1 -5
  751. package/dist/types/components/nav-link/nav-link.d.ts +0 -4
  752. package/dist/types/components/note/note.d.ts +1 -2
  753. package/dist/types/components/picker/picker.d.ts +1 -2
  754. package/dist/types/components/picker-column/picker-column.d.ts +36 -2
  755. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -4
  756. package/dist/types/components/picker-legacy/picker.d.ts +1 -2
  757. package/dist/types/components/popover/popover-interface.d.ts +7 -3
  758. package/dist/types/components/popover/popover.d.ts +5 -6
  759. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -2
  760. package/dist/types/components/radio/radio.d.ts +1 -2
  761. package/dist/types/components/radio-group/radio-group.d.ts +0 -4
  762. package/dist/types/components/range/range.d.ts +1 -2
  763. package/dist/types/components/refresher/refresher.d.ts +1 -2
  764. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -4
  765. package/dist/types/components/reorder/reorder.d.ts +0 -3
  766. package/dist/types/components/reorder-group/reorder-group.d.ts +0 -4
  767. package/dist/types/components/ripple-effect/ripple-effect.d.ts +0 -4
  768. package/dist/types/components/route/route.d.ts +0 -4
  769. package/dist/types/components/router/router.d.ts +0 -4
  770. package/dist/types/components/router-link/router-link.d.ts +0 -4
  771. package/dist/types/components/router-outlet/router-outlet.d.ts +1 -4
  772. package/dist/types/components/row/row.d.ts +0 -4
  773. package/dist/types/components/searchbar/searchbar.d.ts +7 -8
  774. package/dist/types/components/segment/segment.d.ts +1 -2
  775. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  776. package/dist/types/components/select/select.d.ts +5 -6
  777. package/dist/types/components/select-option/select-option.d.ts +0 -4
  778. package/dist/types/components/select-popover/select-popover.d.ts +0 -3
  779. package/dist/types/components/skeleton-text/skeleton-text.d.ts +0 -4
  780. package/dist/types/components/spinner/spinner.d.ts +0 -4
  781. package/dist/types/components/split-pane/split-pane.d.ts +0 -4
  782. package/dist/types/components/tab/tab.d.ts +0 -4
  783. package/dist/types/components/tab-bar/tab-bar.d.ts +2 -3
  784. package/dist/types/components/tab-button/tab-button.d.ts +1 -2
  785. package/dist/types/components/tabs/tabs.d.ts +0 -3
  786. package/dist/types/components/text/text.d.ts +1 -2
  787. package/dist/types/components/textarea/textarea.d.ts +2 -3
  788. package/dist/types/components/thumbnail/thumbnail.d.ts +0 -4
  789. package/dist/types/components/title/title.d.ts +0 -4
  790. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  791. package/dist/types/components/toast/toast-interface.d.ts +7 -3
  792. package/dist/types/components/toast/toast.d.ts +2 -3
  793. package/dist/types/components/toggle/toggle.d.ts +1 -2
  794. package/dist/types/components/toolbar/toolbar.d.ts +3 -4
  795. package/dist/types/components.d.ts +167 -1223
  796. package/dist/types/global/ionic-global.d.ts +2 -25
  797. package/dist/types/interface.d.ts +0 -3
  798. package/dist/types/utils/config.d.ts +2 -17
  799. package/dist/types/utils/overlays-interface.d.ts +1 -31
  800. package/dist/types/utils/test/playwright/generator.d.ts +2 -31
  801. package/hydrate/index.js +679 -1197
  802. package/package.json +2 -4
  803. package/css/link.ionic.css +0 -1
  804. package/css/link.ionic.css.map +0 -1
  805. package/css/typography.ionic.css +0 -1
  806. package/css/typography.ionic.css.map +0 -1
  807. package/dist/cjs/ionic-global-2734c454.js +0 -411
  808. package/dist/collection/components/button/button.ionic.css +0 -582
  809. package/dist/collection/components/button/test/shape/button.e2e.js +0 -88
  810. package/dist/collection/components/button/test/states/button.e2e.js +0 -51
  811. package/dist/collection/components/card/card.ionic.css +0 -49
  812. package/dist/collection/components/card/test/shape/card.e2e.js +0 -34
  813. package/dist/collection/components/chip/chip.ionic.css +0 -94
  814. package/dist/collection/components/chip/test/shape/chip.e2e.js +0 -34
  815. package/dist/collection/components/content/test/content.spec.js +0 -27
  816. package/dist/collection/components/datetime/test/overlay-roles/datetime.e2e.js +0 -34
  817. package/dist/collection/css/test/link/basic/link.e2e.js +0 -35
  818. package/dist/collection/css/test/typography/basic/typography.e2e.js +0 -85
  819. package/dist/collection/global/test/ionic-global.spec.js +0 -109
  820. package/dist/esm/ionic-global-ccd91ba4.js +0 -401
  821. package/dist/esm-es5/app-globals-6b65a082.js +0 -4
  822. package/dist/esm-es5/data-e73f49e1.js +0 -4
  823. package/dist/esm-es5/index-55408470.js +0 -4
  824. package/dist/esm-es5/index-8137ebe0.js +0 -4
  825. package/dist/esm-es5/input-shims-8453cb67.js +0 -4
  826. package/dist/esm-es5/input.utils-8bf2cdac.js +0 -4
  827. package/dist/esm-es5/ionic-global-ccd91ba4.js +0 -4
  828. package/dist/esm-es5/ios.transition-b169aa46.js +0 -4
  829. package/dist/esm-es5/md.transition-ecde7aa6.js +0 -4
  830. package/dist/esm-es5/overlays-7125a1f5.js +0 -4
  831. package/dist/esm-es5/status-tap-6bfbede6.js +0 -4
  832. package/dist/ionic/p-00e85b08.js +0 -4
  833. package/dist/ionic/p-0350ac97.entry.js +0 -4
  834. package/dist/ionic/p-0530664b.system.entry.js +0 -4
  835. package/dist/ionic/p-053d229a.system.js +0 -4
  836. package/dist/ionic/p-0817ca20.system.js +0 -4
  837. package/dist/ionic/p-0cbb7a38.entry.js +0 -4
  838. package/dist/ionic/p-11e56c60.system.entry.js +0 -4
  839. package/dist/ionic/p-142da19d.entry.js +0 -4
  840. package/dist/ionic/p-1d59a829.system.entry.js +0 -4
  841. package/dist/ionic/p-1d5b3dfa.system.entry.js +0 -4
  842. package/dist/ionic/p-1edfc09d.entry.js +0 -4
  843. package/dist/ionic/p-1f2ce987.system.entry.js +0 -4
  844. package/dist/ionic/p-1f3dedb0.system.entry.js +0 -4
  845. package/dist/ionic/p-1fcfcb94.js +0 -4
  846. package/dist/ionic/p-202b8a88.system.entry.js +0 -4
  847. package/dist/ionic/p-206a256a.system.entry.js +0 -4
  848. package/dist/ionic/p-22c4f5bb.entry.js +0 -4
  849. package/dist/ionic/p-267e9b94.system.entry.js +0 -4
  850. package/dist/ionic/p-291414bd.entry.js +0 -4
  851. package/dist/ionic/p-2bf0809c.entry.js +0 -4
  852. package/dist/ionic/p-3079ca5b.entry.js +0 -4
  853. package/dist/ionic/p-31eb5a46.entry.js +0 -4
  854. package/dist/ionic/p-34abea66.entry.js +0 -4
  855. package/dist/ionic/p-3c1dd334.entry.js +0 -4
  856. package/dist/ionic/p-3d94bebf.system.entry.js +0 -4
  857. package/dist/ionic/p-3f073322.system.js +0 -4
  858. package/dist/ionic/p-42f77866.entry.js +0 -4
  859. package/dist/ionic/p-44874984.system.entry.js +0 -4
  860. package/dist/ionic/p-45153fb3.entry.js +0 -4
  861. package/dist/ionic/p-46647e3c.system.entry.js +0 -4
  862. package/dist/ionic/p-510c8716.entry.js +0 -4
  863. package/dist/ionic/p-52693118.system.entry.js +0 -4
  864. package/dist/ionic/p-52c88e28.system.entry.js +0 -4
  865. package/dist/ionic/p-541e2e0a.system.js +0 -4
  866. package/dist/ionic/p-57a2f03a.entry.js +0 -4
  867. package/dist/ionic/p-5a514e50.system.entry.js +0 -4
  868. package/dist/ionic/p-5acc896a.system.entry.js +0 -4
  869. package/dist/ionic/p-5bef1e83.js +0 -4
  870. package/dist/ionic/p-5e4ee3ae.system.entry.js +0 -4
  871. package/dist/ionic/p-656380fe.system.entry.js +0 -4
  872. package/dist/ionic/p-65fe9b29.system.entry.js +0 -4
  873. package/dist/ionic/p-696ea939.entry.js +0 -4
  874. package/dist/ionic/p-6bee0fd7.system.entry.js +0 -4
  875. package/dist/ionic/p-6d2aa487.entry.js +0 -4
  876. package/dist/ionic/p-73e3a38e.system.js +0 -4
  877. package/dist/ionic/p-7ac0170e.entry.js +0 -4
  878. package/dist/ionic/p-7c319cce.entry.js +0 -4
  879. package/dist/ionic/p-7ce8a9e9.entry.js +0 -4
  880. package/dist/ionic/p-7d83bc32.entry.js +0 -4
  881. package/dist/ionic/p-7faa544d.system.entry.js +0 -4
  882. package/dist/ionic/p-809dc691.system.js +0 -4
  883. package/dist/ionic/p-8154208e.system.entry.js +0 -4
  884. package/dist/ionic/p-8304afaa.js +0 -4
  885. package/dist/ionic/p-899dfb1b.entry.js +0 -4
  886. package/dist/ionic/p-8ac9139d.entry.js +0 -4
  887. package/dist/ionic/p-8bbc7d87.entry.js +0 -4
  888. package/dist/ionic/p-8f03847e.system.entry.js +0 -4
  889. package/dist/ionic/p-9143716d.js +0 -4
  890. package/dist/ionic/p-95ee29b9.entry.js +0 -4
  891. package/dist/ionic/p-961f1af3.system.entry.js +0 -4
  892. package/dist/ionic/p-974415fe.entry.js +0 -4
  893. package/dist/ionic/p-993ee94e.system.entry.js +0 -4
  894. package/dist/ionic/p-9b13de79.js +0 -4
  895. package/dist/ionic/p-9c44a499.system.entry.js +0 -4
  896. package/dist/ionic/p-9d7495f9.entry.js +0 -4
  897. package/dist/ionic/p-9e3fc5c4.entry.js +0 -4
  898. package/dist/ionic/p-9e81053f.system.entry.js +0 -4
  899. package/dist/ionic/p-a4d1b5cc.js +0 -4
  900. package/dist/ionic/p-a6fbf92e.system.entry.js +0 -4
  901. package/dist/ionic/p-a7727720.system.entry.js +0 -4
  902. package/dist/ionic/p-a8cb924e.entry.js +0 -4
  903. package/dist/ionic/p-ae5ef403.js +0 -4
  904. package/dist/ionic/p-b1abddbc.system.entry.js +0 -4
  905. package/dist/ionic/p-b61a2062.js +0 -4
  906. package/dist/ionic/p-b68096c3.js +0 -4
  907. package/dist/ionic/p-b7d71411.entry.js +0 -4
  908. package/dist/ionic/p-b80ea7d0.system.entry.js +0 -4
  909. package/dist/ionic/p-ba96d07d.entry.js +0 -4
  910. package/dist/ionic/p-bf7156f4.entry.js +0 -4
  911. package/dist/ionic/p-c1d8c615.entry.js +0 -4
  912. package/dist/ionic/p-c37f3748.system.entry.js +0 -4
  913. package/dist/ionic/p-c78743ee.entry.js +0 -4
  914. package/dist/ionic/p-cb1a9f57.system.js +0 -4
  915. package/dist/ionic/p-cb40aff5.entry.js +0 -4
  916. package/dist/ionic/p-cc75f7ad.entry.js +0 -4
  917. package/dist/ionic/p-ccc12f7c.system.js +0 -4
  918. package/dist/ionic/p-cd0eff72.system.entry.js +0 -4
  919. package/dist/ionic/p-cfd8b74c.entry.js +0 -4
  920. package/dist/ionic/p-cfe0fdf6.system.entry.js +0 -4
  921. package/dist/ionic/p-d26ef51c.system.js +0 -4
  922. package/dist/ionic/p-d4fe6131.entry.js +0 -4
  923. package/dist/ionic/p-d9f7a464.entry.js +0 -4
  924. package/dist/ionic/p-dc36b00c.entry.js +0 -4
  925. package/dist/ionic/p-dde515cb.system.entry.js +0 -4
  926. package/dist/ionic/p-e3cc9c09.entry.js +0 -4
  927. package/dist/ionic/p-e408b885.system.entry.js +0 -4
  928. package/dist/ionic/p-e41c7934.system.entry.js +0 -4
  929. package/dist/ionic/p-e5c0f7e6.system.entry.js +0 -4
  930. package/dist/ionic/p-eb0c6a8b.system.js +0 -4
  931. package/dist/ionic/p-eb3789c5.system.entry.js +0 -4
  932. package/dist/ionic/p-edb5c9e0.system.entry.js +0 -4
  933. package/dist/ionic/p-eed178ea.system.js +0 -4
  934. package/dist/ionic/p-efb193d6.entry.js +0 -4
  935. package/dist/ionic/p-f091ca00.entry.js +0 -4
  936. package/dist/ionic/p-f12d95ef.system.entry.js +0 -4
  937. package/dist/ionic/p-f91ea85e.system.entry.js +0 -4
  938. package/dist/ionic/p-fc1a4bbf.entry.js +0 -4
  939. package/dist/ionic/p-fdfb6054.system.js +0 -4
  940. package/dist/ionic/p-fe32eb3e.system.entry.js +0 -4
@@ -7,21 +7,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
8
  const index = require('./index-af6d0fbb.js');
9
9
  const cubicBezier = require('./cubic-bezier-f2dccc53.js');
10
- const overlays = require('./overlays-a247b257.js');
10
+ const overlays = require('./overlays-6487955a.js');
11
11
  const gestureController = require('./gesture-controller-9436f482.js');
12
- const hardwareBackButton = require('./hardware-back-button-6084a439.js');
12
+ const hardwareBackButton = require('./hardware-back-button-ad9299b4.js');
13
13
  const helpers = require('./helpers-afaa9001.js');
14
- const index$1 = require('./index-f378621f.js');
14
+ const index$1 = require('./index-5cf05f94.js');
15
15
  const theme = require('./theme-d1c573d2.js');
16
- const ionicGlobal = require('./ionic-global-2734c454.js');
16
+ const ionicGlobal = require('./ionic-global-1adf9bc4.js');
17
17
  const index$2 = require('./index-073c7cdc.js');
18
18
  require('./index-c8d52405.js');
19
19
  require('./framework-delegate-55f5683a.js');
20
+ require('./index-5915f9b3.js');
20
21
  require('./animation-b4fdf128.js');
21
22
 
22
- const ionicMenuMdCss = ":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{-webkit-transform:translateX(-9999px);transform:translateX(-9999px);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;top:0;bottom:0}:host(.menu-side-start) .menu-inner{inset-inline-start:0;inset-inline-end:auto}:host-context([dir=rtl]):host(.menu-side-start) .menu-inner,:host-context([dir=rtl]).menu-side-start .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}@supports selector(:dir(rtl)){:host(.menu-side-start:dir(rtl)) .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;top:0;bottom:0}:host(.menu-side-end) .menu-inner{inset-inline-start:auto;inset-inline-end:0}:host-context([dir=rtl]):host(.menu-side-end) .menu-inner,:host-context([dir=rtl]).menu-side-end .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}@supports selector(:dir(rtl)){:host(.menu-side-end:dir(rtl)) .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){-ms-flex:0 1 auto;flex:0 1 auto;width:var(--side-width, var(--width));min-width:var(--side-min-width, var(--min-width));max-width:var(--side-max-width, var(--max-width))}:host(.menu-pane-visible.split-pane-side){left:0;right:0;top:0;bottom:0;position:relative;-webkit-box-shadow:none;box-shadow:none;z-index:0}:host(.menu-pane-visible.split-pane-side.menu-enabled){display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}:host(.menu-pane-visible.split-pane-side){-ms-flex-order:-1;order:-1}:host(.menu-pane-visible.split-pane-side[side=end]){-ms-flex-order:1;order:1}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none;transform:none;-webkit-box-shadow:none;box-shadow:none}:host(.menu-pane-visible) ion-backdrop{display:hidden !important}:host(.menu-pane-visible.split-pane-side){-webkit-border-start:0;border-inline-start:0;-webkit-border-end:var(--border);border-inline-end:var(--border);border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-pane-visible.split-pane-side[side=end]){-webkit-border-start:var(--border);border-inline-start:var(--border);-webkit-border-end:0;border-inline-end:0;border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-type-overlay) .menu-inner{-webkit-box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18);box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18)}";
23
- const IonMenuIonicStyle0 = ionicMenuMdCss;
24
-
25
23
  const menuIosCss = ":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{-webkit-transform:translateX(-9999px);transform:translateX(-9999px);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;top:0;bottom:0}:host(.menu-side-start) .menu-inner{inset-inline-start:0;inset-inline-end:auto}:host-context([dir=rtl]):host(.menu-side-start) .menu-inner,:host-context([dir=rtl]).menu-side-start .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}@supports selector(:dir(rtl)){:host(.menu-side-start:dir(rtl)) .menu-inner{--ion-safe-area-right:unset;--ion-safe-area-left:0px}}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;top:0;bottom:0}:host(.menu-side-end) .menu-inner{inset-inline-start:auto;inset-inline-end:0}:host-context([dir=rtl]):host(.menu-side-end) .menu-inner,:host-context([dir=rtl]).menu-side-end .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}@supports selector(:dir(rtl)){:host(.menu-side-end:dir(rtl)) .menu-inner{--ion-safe-area-left:unset;--ion-safe-area-right:0px}}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){-ms-flex:0 1 auto;flex:0 1 auto;width:var(--side-width, var(--width));min-width:var(--side-min-width, var(--min-width));max-width:var(--side-max-width, var(--max-width))}:host(.menu-pane-visible.split-pane-side){left:0;right:0;top:0;bottom:0;position:relative;-webkit-box-shadow:none;box-shadow:none;z-index:0}:host(.menu-pane-visible.split-pane-side.menu-enabled){display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}:host(.menu-pane-visible.split-pane-side){-ms-flex-order:-1;order:-1}:host(.menu-pane-visible.split-pane-side[side=end]){-ms-flex-order:1;order:1}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none;transform:none;-webkit-box-shadow:none;box-shadow:none}:host(.menu-pane-visible) ion-backdrop{display:hidden !important}:host(.menu-pane-visible.split-pane-side){-webkit-border-start:0;border-inline-start:0;-webkit-border-end:var(--border);border-inline-end:var(--border);border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-pane-visible.split-pane-side[side=end]){-webkit-border-start:var(--border);border-inline-start:var(--border);-webkit-border-end:0;border-inline-end:0;border-top:0;border-bottom:0;min-width:var(--side-min-width);max-width:var(--side-max-width)}:host(.menu-type-push){z-index:1000}:host(.menu-type-push) .show-backdrop{display:block}";
26
24
  const IonMenuIosStyle0 = menuIosCss;
27
25
 
@@ -595,20 +593,20 @@ const Menu = class {
595
593
  }
596
594
  render() {
597
595
  const { type, disabled, el, isPaneVisible, inheritedAttributes, side } = this;
598
- const theme$1 = ionicGlobal.getIonTheme(this);
596
+ const mode = ionicGlobal.getIonMode(this);
599
597
  /**
600
598
  * If the Close Watcher is enabled then
601
599
  * the ionBackButton listener in the menu controller
602
600
  * will handle closing the menu when Escape is pressed.
603
601
  */
604
- return (index.h(index.Host, { key: '9c31849444f8777cdc435e28a9ee86cbbf277225', onKeyDown: hardwareBackButton.shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
605
- [theme$1]: true,
602
+ return (index.h(index.Host, { key: 'f5f151ca5bf4963c0300656327bb9c38bc7869fb', onKeyDown: hardwareBackButton.shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
603
+ [mode]: true,
606
604
  [`menu-type-${type}`]: true,
607
605
  'menu-enabled': !disabled,
608
606
  [`menu-side-${side}`]: true,
609
607
  'menu-pane-visible': isPaneVisible,
610
608
  'split-pane-side': theme.hostContext('ion-split-pane', el),
611
- } }, index.h("div", { key: '24438e8190da3688534edd76aff1cec1a4d41b5b', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, index.h("slot", { key: 'c8905ba0d02079e0ddcb9dd7dcedc176f28238a1' })), index.h("ion-backdrop", { key: '3995745a9540a4a8ac090fc76f36899474b08393', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
609
+ } }, index.h("div", { key: '39ddd64f884cc667e45f99a2922077d87f209205', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, index.h("slot", { key: '1ccce2c24ec0dfc81a34580c8be60c69c68d2d2d' })), index.h("ion-backdrop", { key: 'cf2bdf7f4171a4ada3cb55dd15f6b921b626a347', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
612
610
  }
613
611
  get el() { return index.getElement(this); }
614
612
  static get watchers() { return {
@@ -633,7 +631,6 @@ const SHOW_MENU = 'show-menu';
633
631
  const SHOW_BACKDROP = 'show-backdrop';
634
632
  const MENU_CONTENT_OPEN = 'menu-content-open';
635
633
  Menu.style = {
636
- ionic: IonMenuIonicStyle0,
637
634
  ios: IonMenuIosStyle0,
638
635
  md: IonMenuMdStyle0
639
636
  };
@@ -644,9 +641,6 @@ const updateVisibility = async (menu) => {
644
641
  return !!(menuEl && (await menuEl.isActive()));
645
642
  };
646
643
 
647
- const ionicMenuButtonMdCss = ":host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.12;--background-hover:currentColor;--background-hover-opacity:.04;--border-radius:50%;--color:initial;--padding-start:8px;--padding-end:8px;width:3rem;height:3rem;font-size:1.5rem}:host(.ion-color.ion-focused)::after{background:var(--ion-color-base)}@media (any-hover: hover){:host(.ion-color:hover) .button-native::after{background:var(--ion-color-base)}}";
648
- const IonMenuButtonIonicStyle0 = ionicMenuButtonMdCss;
649
-
650
644
  const menuButtonIosCss = ":host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;min-height:inherit;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.1;--border-radius:4px;--color:var(--ion-color-primary, #0054e9);--padding-start:5px;--padding-end:5px;min-height:32px;font-size:clamp(31px, 1.9375rem, 38.13px)}:host(.ion-activated){opacity:0.4}@media (any-hover: hover){:host(:hover){opacity:0.6}}";
651
645
  const IonMenuButtonIosStyle0 = menuButtonIosCss;
652
646
 
@@ -678,15 +672,15 @@ const MenuButton = class {
678
672
  }
679
673
  render() {
680
674
  const { color, disabled, inheritedAttributes } = this;
681
- const theme$1 = ionicGlobal.getIonTheme(this);
682
- const menuIcon = ionicGlobal.config.get('menuIcon', theme$1 === 'ios' ? index$2.menuOutline : index$2.menuSharp);
675
+ const mode = ionicGlobal.getIonMode(this);
676
+ const menuIcon = ionicGlobal.config.get('menuIcon', mode === 'ios' ? index$2.menuOutline : index$2.menuSharp);
683
677
  const hidden = this.autoHide && !this.visible;
684
678
  const attrs = {
685
679
  type: this.type,
686
680
  };
687
681
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
688
- return (index.h(index.Host, { key: 'cede5a6a89fc612f395f25874d55fe0f31389e8b', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: theme.createColorClasses(color, {
689
- [theme$1]: true,
682
+ return (index.h(index.Host, { key: '1588897aeaefa91e13ed15927f2eeaebc01e8f18', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: theme.createColorClasses(color, {
683
+ [mode]: true,
690
684
  button: true, // ion-buttons target .button
691
685
  'menu-button-hidden': hidden,
692
686
  'menu-button-disabled': disabled,
@@ -694,12 +688,11 @@ const MenuButton = class {
694
688
  'in-toolbar-color': theme.hostContext('ion-toolbar[color]', this.el),
695
689
  'ion-activatable': true,
696
690
  'ion-focusable': true,
697
- }) }, index.h("button", Object.assign({ key: '3d41f40f0613bee6c55afb533bdeaab8f23b76c7' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), index.h("span", { key: '3d08c35764a991cf9cb85a8221db9baca1c227f1', class: "button-inner" }, index.h("slot", { key: 'e9c89360c6dc9aa74b440b19860b1f0059be8f52' }, index.h("ion-icon", { key: '66c15dbc54a7845db8a918952c943f5ca358c148', part: "icon", icon: menuIcon, lazy: false, "aria-hidden": "true" }))), theme$1 === 'md' && index.h("ion-ripple-effect", { type: "unbounded" }))));
691
+ }) }, index.h("button", Object.assign({ key: 'cb4e5b3d2095e15a53fa24ac65209162ec635476' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), index.h("span", { key: '1c2f499b40e8b9b18e3cb0ed28bbcca01e6d777f', class: "button-inner" }, index.h("slot", { key: 'df2f969098b5779f54c2d51b4816c7b78b45c860' }, index.h("ion-icon", { key: 'd093d7377c7f1a5a47b3cc319b36e5087421cf4c', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && index.h("ion-ripple-effect", { type: "unbounded" }))));
698
692
  }
699
693
  get el() { return index.getElement(this); }
700
694
  };
701
695
  MenuButton.style = {
702
- ionic: IonMenuButtonIonicStyle0,
703
696
  ios: IonMenuButtonIosStyle0,
704
697
  md: IonMenuButtonMdStyle0
705
698
  };
@@ -724,12 +717,12 @@ const MenuToggle = class {
724
717
  this.visible = await updateVisibility(this.menu);
725
718
  }
726
719
  render() {
727
- const theme = ionicGlobal.getIonTheme(this);
720
+ const mode = ionicGlobal.getIonMode(this);
728
721
  const hidden = this.autoHide && !this.visible;
729
- return (index.h(index.Host, { key: '39cce438c00804e9a89b72f6b5afa01589e33ba9', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
730
- [theme]: true,
722
+ return (index.h(index.Host, { key: '63bcdda9e9917133893d92284b9a91dfe38596a9', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
723
+ [mode]: true,
731
724
  'menu-toggle-hidden': hidden,
732
- } }, index.h("slot", { key: '9f91f49ff93ba64677398d8c9ccfb81c7e616ebd' })));
725
+ } }, index.h("slot", { key: 'a3ecc57b11c04b2f9911e5703ea0c6f66515b2f2' })));
733
726
  }
734
727
  };
735
728
  MenuToggle.style = IonMenuToggleStyle0;
@@ -6,21 +6,22 @@
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
8
  const index$3 = require('./index-af6d0fbb.js');
9
- const index$2 = require('./index-18f2ba3b.js');
9
+ const index$2 = require('./index-5b6a7459.js');
10
10
  const frameworkDelegate = require('./framework-delegate-55f5683a.js');
11
11
  const helpers = require('./helpers-afaa9001.js');
12
12
  const lockController = require('./lock-controller-6585a42a.js');
13
- const ionicGlobal = require('./ionic-global-2734c454.js');
13
+ const index$4 = require('./index-5915f9b3.js');
14
14
  const capacitor = require('./capacitor-c04564bf.js');
15
- const overlays = require('./overlays-a247b257.js');
15
+ const overlays = require('./overlays-6487955a.js');
16
16
  const theme = require('./theme-d1c573d2.js');
17
- const index$4 = require('./index-7c699f7b.js');
17
+ const index$5 = require('./index-ff66cc7c.js');
18
+ const ionicGlobal = require('./ionic-global-1adf9bc4.js');
18
19
  const keyboard = require('./keyboard-af1bb365.js');
19
20
  const animation = require('./animation-b4fdf128.js');
20
21
  const cubicBezier = require('./cubic-bezier-f2dccc53.js');
21
22
  const index$1 = require('./index-ee07ed59.js');
22
23
  const index = require('./index-c8d52405.js');
23
- require('./hardware-back-button-6084a439.js');
24
+ require('./hardware-back-button-ad9299b4.js');
24
25
  require('./gesture-controller-9436f482.js');
25
26
  require('./keyboard-0272231f.js');
26
27
 
@@ -1083,9 +1084,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1083
1084
  };
1084
1085
  };
1085
1086
 
1086
- const ionicModalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
1087
- const IonModalIonicStyle0 = ionicModalMdCss;
1088
-
1089
1087
  const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}";
1090
1088
  const IonModalIosStyle0 = modalIosCss;
1091
1089
 
@@ -1242,7 +1240,7 @@ const Modal = class {
1242
1240
  this.currentBreakpoint = this.initialBreakpoint;
1243
1241
  }
1244
1242
  if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
1245
- ionicGlobal.printIonWarning('Your breakpoints array must include the initialBreakpoint value.');
1243
+ index$4.printIonWarning('Your breakpoints array must include the initialBreakpoint value.');
1246
1244
  }
1247
1245
  overlays.setOverlayId(el);
1248
1246
  }
@@ -1340,7 +1338,7 @@ const Modal = class {
1340
1338
  * get the transition incorrect.
1341
1339
  */
1342
1340
  if (helpers.hasLazyBuild(el)) {
1343
- await index$4.deepReady(this.usersElement);
1341
+ await index$5.deepReady(this.usersElement);
1344
1342
  /**
1345
1343
  * If keepContentsMounted="true" then the
1346
1344
  * JS Framework has already mounted the inner
@@ -1351,7 +1349,7 @@ const Modal = class {
1351
1349
  */
1352
1350
  }
1353
1351
  else if (!this.keepContentsMounted) {
1354
- await index$4.waitForMount();
1352
+ await index$5.waitForMount();
1355
1353
  }
1356
1354
  index$3.writeTask(() => this.el.classList.add('show-modal'));
1357
1355
  const hasCardModal = presentingElement !== undefined;
@@ -1579,11 +1577,11 @@ const Modal = class {
1579
1577
  */
1580
1578
  async setCurrentBreakpoint(breakpoint) {
1581
1579
  if (!this.isSheetModal) {
1582
- ionicGlobal.printIonWarning('setCurrentBreakpoint is only supported on sheet modals.');
1580
+ index$4.printIonWarning('setCurrentBreakpoint is only supported on sheet modals.');
1583
1581
  return;
1584
1582
  }
1585
1583
  if (!this.breakpoints.includes(breakpoint)) {
1586
- ionicGlobal.printIonWarning(`Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
1584
+ index$4.printIonWarning(`Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
1587
1585
  return;
1588
1586
  }
1589
1587
  const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
@@ -1631,12 +1629,12 @@ const Modal = class {
1631
1629
  render() {
1632
1630
  const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes } = this;
1633
1631
  const showHandle = handle !== false && isSheetModal;
1634
- const theme$1 = ionicGlobal.getIonTheme(this);
1635
- const isCardModal = presentingElement !== undefined && theme$1 === 'ios';
1632
+ const mode = ionicGlobal.getIonMode(this);
1633
+ const isCardModal = presentingElement !== undefined && mode === 'ios';
1636
1634
  const isHandleCycle = handleBehavior === 'cycle';
1637
- return (index$3.h(index$3.Host, Object.assign({ key: '658c791a075c389fa30b46f23359ba87cdb64b84', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1635
+ return (index$3.h(index$3.Host, Object.assign({ key: '18053756559601f785776196d9dd269f8250c813', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1638
1636
  zIndex: `${20000 + this.overlayIndex}`,
1639
- }, class: Object.assign({ [theme$1]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), index$3.h("ion-backdrop", { key: '5f55874ac8f1e5eb771c87d8716873ff1508d2f9', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme$1 === 'ios' && index$3.h("div", { class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'd86cc39d355419ab8eec86680b363b4f373594b8',
1637
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), index$3.h("ion-backdrop", { key: 'c080204fb09a67046d1986db28ccb7a1c8f0704d', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { class: "modal-shadow" }), index$3.h("div", Object.assign({ key: '1988ad86ef92108ad4c980ee6d98f280e368dee4',
1640
1638
  /*
1641
1639
  role and aria-modal must be used on the
1642
1640
  same element. They must also be set inside the
@@ -1645,7 +1643,7 @@ const Modal = class {
1645
1643
  */
1646
1644
  role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { class: "modal-handle",
1647
1645
  // Prevents the handle from receiving keyboard focus when it does not cycle
1648
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), index$3.h("slot", { key: '772e50a1aac52489688b601a736c1bd9f817fe0a' }))));
1646
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), index$3.h("slot", { key: '321e79f29eba3faab323d17ae575300e25fc0c51' }))));
1649
1647
  }
1650
1648
  get el() { return index$3.getElement(this); }
1651
1649
  static get watchers() { return {
@@ -1660,7 +1658,6 @@ const LIFECYCLE_MAP = {
1660
1658
  ionModalDidDismiss: 'ionViewDidLeave',
1661
1659
  };
1662
1660
  Modal.style = {
1663
- ionic: IonModalIonicStyle0,
1664
1661
  ios: IonModalIosStyle0,
1665
1662
  md: IonModalMdStyle0
1666
1663
  };
@@ -8,8 +8,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
8
8
  const index = require('./index-af6d0fbb.js');
9
9
  const cubicBezier = require('./cubic-bezier-f2dccc53.js');
10
10
  const helpers = require('./helpers-afaa9001.js');
11
- const index$1 = require('./index-7c699f7b.js');
12
- const ionicGlobal = require('./ionic-global-2734c454.js');
11
+ const index$1 = require('./index-ff66cc7c.js');
12
+ const ionicGlobal = require('./ionic-global-1adf9bc4.js');
13
13
  const frameworkDelegate = require('./framework-delegate-55f5683a.js');
14
14
 
15
15
  const VIEW_STATE_NEW = 1;
@@ -745,13 +745,11 @@ const Nav = class {
745
745
  }
746
746
  }
747
747
  : undefined;
748
- const theme = ionicGlobal.getIonTheme(this);
749
- const mode = ionicGlobal.getIonMode(this, theme);
748
+ const mode = ionicGlobal.getIonMode(this);
750
749
  const enteringEl = enteringView.element;
751
750
  // eslint-disable-next-line @typescript-eslint/prefer-optional-chain
752
751
  const leavingEl = leavingView && leavingView.element;
753
- const animationOpts = Object.assign(Object.assign({ mode,
754
- theme, showGoBack: this.canGoBackSync(enteringView), baseEl: this.el, progressCallback, animated: this.animated && ionicGlobal.config.getBoolean('animated', true), enteringEl,
752
+ const animationOpts = Object.assign(Object.assign({ mode, showGoBack: this.canGoBackSync(enteringView), baseEl: this.el, progressCallback, animated: this.animated && ionicGlobal.config.getBoolean('animated', true), enteringEl,
755
753
  leavingEl }, opts), { animationBuilder: opts.animationBuilder || this.animation || ionicGlobal.config.get('navAnimation') });
756
754
  const { hasCompleted } = await index$1.transition(animationOpts);
757
755
  return this.transitionFinish(hasCompleted, enteringView, leavingView, opts);
@@ -904,7 +902,7 @@ const Nav = class {
904
902
  }
905
903
  }
906
904
  render() {
907
- return index.h("slot", { key: '097a845a8ac8ba1199592b1977d676246f1e7499' });
905
+ return index.h("slot", { key: '2cb1a430d8d29b0f54b1ec80f98e4b82b6c8cc0a' });
908
906
  }
909
907
  get el() { return index.getElement(this); }
910
908
  static get watchers() { return {
@@ -946,7 +944,7 @@ const NavLink = class {
946
944
  this.routerAnimation = undefined;
947
945
  }
948
946
  render() {
949
- return index.h(index.Host, { key: '277265608ad47c1d65916399aaf55627252e8c88', onClick: this.onClick });
947
+ return index.h(index.Host, { key: 'e4aebea5eb131852acea407afb84597df71be4a4', onClick: this.onClick });
950
948
  }
951
949
  get el() { return index.getElement(this); }
952
950
  };
@@ -8,10 +8,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
8
8
  const index = require('./index-af6d0fbb.js');
9
9
  const helpers = require('./helpers-afaa9001.js');
10
10
  const theme = require('./theme-d1c573d2.js');
11
- const ionicGlobal = require('./ionic-global-2734c454.js');
12
-
13
- const ionicPickerColumnOptionMdCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}:host(.option-active){color:var(--ion-color-base)}";
14
- const IonPickerColumnOptionIonicStyle0 = ionicPickerColumnOptionMdCss;
11
+ const ionicGlobal = require('./ionic-global-1adf9bc4.js');
15
12
 
16
13
  const pickerColumnOptionIosCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}";
17
14
  const IonPickerColumnOptionIosStyle0 = pickerColumnOptionIosCss;
@@ -90,11 +87,11 @@ const PickerColumnOption = class {
90
87
  }
91
88
  render() {
92
89
  const { color, disabled, ariaLabel } = this;
93
- const theme$1 = ionicGlobal.getIonTheme(this);
94
- return (index.h(index.Host, { key: '7f590f416e43f74cca1649bb739eabb43bef8ec9', class: theme.createColorClasses(color, {
95
- [theme$1]: true,
90
+ const mode = ionicGlobal.getIonMode(this);
91
+ return (index.h(index.Host, { key: '9333d9ac8e9990fc840f31e00391177d9cd563b3', class: theme.createColorClasses(color, {
92
+ [mode]: true,
96
93
  ['option-disabled']: disabled,
97
- }) }, index.h("button", { key: 'cc640ef332d72da10fcc58d5d7ee2a6a087c4cc3', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, index.h("slot", { key: '3816ea2975ccc61d064d285815080f59abfa01eb' }))));
94
+ }) }, index.h("button", { key: '6ca92bc584587230135982106eab542589fc4c9d', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, index.h("slot", { key: 'd9a68906017f77143a0691b9bbc59ae2142da6aa' }))));
98
95
  }
99
96
  get el() { return index.getElement(this); }
100
97
  static get watchers() { return {
@@ -102,7 +99,6 @@ const PickerColumnOption = class {
102
99
  }; }
103
100
  };
104
101
  PickerColumnOption.style = {
105
- ionic: IonPickerColumnOptionIonicStyle0,
106
102
  ios: IonPickerColumnOptionIosStyle0,
107
103
  md: IonPickerColumnOptionMdStyle0
108
104
  };
@@ -9,11 +9,11 @@ const index = require('./index-af6d0fbb.js');
9
9
  const index$1 = require('./index-c8d52405.js');
10
10
  const helpers = require('./helpers-afaa9001.js');
11
11
  const haptic = require('./haptic-f6b37aa3.js');
12
- const ionicGlobal = require('./ionic-global-2734c454.js');
12
+ const ionicGlobal = require('./ionic-global-1adf9bc4.js');
13
13
  const theme = require('./theme-d1c573d2.js');
14
14
  require('./capacitor-c04564bf.js');
15
15
 
16
- const pickerColumnCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
16
+ const pickerColumnCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.assistive-focusable{left:0;right:0;top:0;bottom:0;position:absolute;z-index:1;pointer-events:none}.assistive-focusable:focus{outline:none}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
17
17
  const IonPickerColumnStyle0 = pickerColumnCss;
18
18
 
19
19
  const PickerColumn = class {
@@ -23,6 +23,7 @@ const PickerColumn = class {
23
23
  this.isScrolling = false;
24
24
  this.isColumnVisible = false;
25
25
  this.canExitInputMode = true;
26
+ this.updateValueTextOnScroll = false;
26
27
  this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
27
28
  const { isColumnVisible, scrollEl } = this;
28
29
  if (isColumnVisible && scrollEl) {
@@ -37,6 +38,7 @@ const PickerColumn = class {
37
38
  * of these can cause a scroll to occur.
38
39
  */
39
40
  this.canExitInputMode = canExitInputMode;
41
+ this.updateValueTextOnScroll = false;
40
42
  scrollEl.scroll({
41
43
  top,
42
44
  left: 0,
@@ -109,6 +111,7 @@ const PickerColumn = class {
109
111
  let activeEl = this.activeItem;
110
112
  const scrollCallback = () => {
111
113
  helpers.raf(() => {
114
+ var _a;
112
115
  if (!scrollEl)
113
116
  return;
114
117
  if (timeout) {
@@ -189,8 +192,23 @@ const PickerColumn = class {
189
192
  }
190
193
  activeEl = newActiveElement;
191
194
  this.setPickerItemActiveState(newActiveElement, true);
195
+ /**
196
+ * Set the aria-valuetext even though the value prop has not been updated yet.
197
+ * This enables some screen readers to announce the value as the users drag
198
+ * as opposed to when their release their pointer from the screen.
199
+ *
200
+ * When the value is programmatically updated, we will smoothly scroll
201
+ * to the new option. However, we do not want to update aria-valuetext mid-scroll
202
+ * as that can cause the old value to be briefly set before being set to the
203
+ * correct option. This will cause some screen readers to announce the old value
204
+ * again before announcing the new value. The correct valuetext will be set on render.
205
+ */
206
+ if (this.updateValueTextOnScroll) {
207
+ (_a = this.assistiveFocusable) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-valuetext', this.getOptionValueText(newActiveElement));
208
+ }
192
209
  timeout = setTimeout(() => {
193
210
  this.isScrolling = false;
211
+ this.updateValueTextOnScroll = true;
194
212
  enableHaptics && haptic.hapticSelectionEnd();
195
213
  /**
196
214
  * Certain tasks (such as those that
@@ -249,12 +267,130 @@ const PickerColumn = class {
249
267
  */
250
268
  this.el.classList.remove('picker-column-active');
251
269
  };
270
+ /**
271
+ * Find the next enabled option after the active option.
272
+ * @param stride - How many options to "jump" over in order to select the next option.
273
+ * This can be used to implement PageUp/PageDown behaviors where pressing these keys
274
+ * scrolls the picker by more than 1 option. For example, a stride of 5 means select
275
+ * the enabled option 5 options after the active one. Note that the actual option selected
276
+ * may be past the stride if the option at the stride is disabled.
277
+ */
278
+ this.findNextOption = (stride = 1) => {
279
+ const { activeItem } = this;
280
+ if (!activeItem)
281
+ return null;
282
+ let prevNode = activeItem;
283
+ let node = activeItem.nextElementSibling;
284
+ while (node != null) {
285
+ if (stride > 0) {
286
+ stride--;
287
+ }
288
+ if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
289
+ return node;
290
+ }
291
+ prevNode = node;
292
+ // Use nextElementSibling instead of nextSibling to avoid text/comment nodes
293
+ node = node.nextElementSibling;
294
+ }
295
+ return prevNode;
296
+ };
297
+ /**
298
+ * Find the next enabled option after the active option.
299
+ * @param stride - How many options to "jump" over in order to select the next option.
300
+ * This can be used to implement PageUp/PageDown behaviors where pressing these keys
301
+ * scrolls the picker by more than 1 option. For example, a stride of 5 means select
302
+ * the enabled option 5 options before the active one. Note that the actual option selected
303
+ * may be past the stride if the option at the stride is disabled.
304
+ */
305
+ this.findPreviousOption = (stride = 1) => {
306
+ const { activeItem } = this;
307
+ if (!activeItem)
308
+ return null;
309
+ let nextNode = activeItem;
310
+ let node = activeItem.previousElementSibling;
311
+ while (node != null) {
312
+ if (stride > 0) {
313
+ stride--;
314
+ }
315
+ if (node.tagName === 'ION-PICKER-COLUMN-OPTION' && !node.disabled && stride === 0) {
316
+ return node;
317
+ }
318
+ nextNode = node;
319
+ // Use previousElementSibling instead of previousSibling to avoid text/comment nodes
320
+ node = node.previousElementSibling;
321
+ }
322
+ return nextNode;
323
+ };
324
+ this.onKeyDown = (ev) => {
325
+ let newOption = null;
326
+ switch (ev.key) {
327
+ case 'ArrowDown':
328
+ newOption = this.findNextOption();
329
+ break;
330
+ case 'ArrowUp':
331
+ newOption = this.findPreviousOption();
332
+ break;
333
+ case 'PageUp':
334
+ newOption = this.findPreviousOption(5);
335
+ break;
336
+ case 'PageDown':
337
+ newOption = this.findNextOption(5);
338
+ break;
339
+ case 'Home':
340
+ /**
341
+ * There is no guarantee that the first child will be an ion-picker-column-option,
342
+ * so we do not use firstElementChild.
343
+ */
344
+ newOption = this.el.querySelector('ion-picker-column-option:first-of-type');
345
+ break;
346
+ case 'End':
347
+ /**
348
+ * There is no guarantee that the last child will be an ion-picker-column-option,
349
+ * so we do not use lastElementChild.
350
+ */
351
+ newOption = this.el.querySelector('ion-picker-column-option:last-of-type');
352
+ break;
353
+ }
354
+ if (newOption !== null) {
355
+ this.value = newOption.value;
356
+ // This stops any default browser behavior such as scrolling
357
+ ev.preventDefault();
358
+ }
359
+ };
360
+ /**
361
+ * Utility to generate the correct text for aria-valuetext.
362
+ */
363
+ this.getOptionValueText = (el) => {
364
+ var _a;
365
+ return el ? (_a = el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : el.innerText : '';
366
+ };
367
+ /**
368
+ * Render an element that overlays the column. This element is for assistive
369
+ * tech to allow users to navigate the column up/down. This element should receive
370
+ * focus as it listens for synthesized keyboard events as required by the
371
+ * slider role: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/slider_role
372
+ */
373
+ this.renderAssistiveFocusable = () => {
374
+ const { activeItem } = this;
375
+ const valueText = this.getOptionValueText(activeItem);
376
+ /**
377
+ * When using the picker, the valuetext provides important context that valuenow
378
+ * does not. Additionally, using non-zero valuemin/valuemax values can cause
379
+ * WebKit to incorrectly announce numeric valuetext values (such as a year
380
+ * like "2024") as percentages: https://bugs.webkit.org/show_bug.cgi?id=273126
381
+ */
382
+ return (index.h("div", { ref: (el) => (this.assistiveFocusable = el), class: "assistive-focusable", role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": valueText, "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }));
383
+ };
384
+ this.ariaLabel = null;
252
385
  this.isActive = false;
253
386
  this.disabled = false;
254
387
  this.value = undefined;
255
388
  this.color = 'primary';
256
389
  this.numericInput = false;
257
390
  }
391
+ ariaLabelChanged(newValue) {
392
+ this.ariaLabel = newValue;
393
+ }
258
394
  valueChange() {
259
395
  if (this.isColumnVisible) {
260
396
  /**
@@ -370,6 +506,10 @@ const PickerColumn = class {
370
506
  this.scrollEl.focus();
371
507
  }
372
508
  }
509
+ connectedCallback() {
510
+ var _a;
511
+ this.ariaLabel = (_a = this.el.getAttribute('aria-label')) !== null && _a !== void 0 ? _a : 'Select a value';
512
+ }
373
513
  get activeItem() {
374
514
  const { value } = this;
375
515
  const options = Array.from(this.el.querySelectorAll('ion-picker-column-option'));
@@ -386,18 +526,19 @@ const PickerColumn = class {
386
526
  }
387
527
  render() {
388
528
  const { color, disabled, isActive, numericInput } = this;
389
- const theme$1 = ionicGlobal.getIonTheme(this);
390
- return (index.h(index.Host, { key: '5b4b09a7fb30f8e3ab5e800f67f2c617da1fdd04', class: theme.createColorClasses(color, {
391
- [theme$1]: true,
529
+ const mode = ionicGlobal.getIonMode(this);
530
+ return (index.h(index.Host, { key: '50fe50a49f88aa9ec435436083f3cd1ef49c8c9c', class: theme.createColorClasses(color, {
531
+ [mode]: true,
392
532
  ['picker-column-active']: isActive,
393
533
  ['picker-column-numeric-input']: numericInput,
394
534
  ['picker-column-disabled']: disabled,
395
- }) }, index.h("slot", { key: '51d283efa13a6c349a167c98e4a491254d248acf', name: "prefix" }), index.h("div", { key: '0fbfb227c40ba664ca0000d8b852430745615bcc', class: "picker-opts", tabindex: disabled ? undefined : 0, ref: (el) => {
535
+ }) }, this.renderAssistiveFocusable(), index.h("slot", { key: '6350829748690895ab3ef101b9f2ae993852de7d', name: "prefix" }), index.h("div", { key: 'eaff9925aa8553f63ba2a1ae2bdfaa02963e0a5d', "aria-hidden": "true", class: "picker-opts", ref: (el) => {
396
536
  this.scrollEl = el;
397
- } }, index.h("div", { key: '6d1185d5bc6d89784f88ae659bf7ba7431af20d3', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '6fda1cbf32072e52f951e2308f6af38c7144e005', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '7c75de24231bdc280fde466adb059edfac8e6ec2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("slot", { key: '145998962977f8f4e5c33014f55a73b65843d46f' }), index.h("div", { key: 'a23c27a02df0120a8f73f26568ad5b0e20e27103', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: 'abc7cc1d146eddc3e0746530a59b4245fa4512cc', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '8b289129c28d79148db152c5e5f4488c160bb1b2', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), index.h("slot", { key: 'af40d3dbff658e92b4dc1f5793afa2710569f30b', name: "suffix" })));
537
+ } }, index.h("div", { key: '25a24c4174782f2ec8a1fe06cbaf1f564b1f632f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '7f4e9a5f1f74f7e8d5ad74178894edc80c0fb523', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '329b88b4af1d0e37da347e5f3fe9b462efcc2886', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("slot", { key: '82b9d5d541d41801bce06db0867d6cfbcee4ac3e' }), index.h("div", { key: '288ae193601d1eb49ead06f79eb1affa478f31d3', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: '29661d0b74d11d650c2b23be66f857dd008dc5a0', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { key: 'a7bd71b4abcb027654a828ffa65d87b6874d7484', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), index.h("slot", { key: '83ddd19d09ec48fe31b51f9f272a562320f90098', name: "suffix" })));
398
538
  }
399
539
  get el() { return index.getElement(this); }
400
540
  static get watchers() { return {
541
+ "aria-label": ["ariaLabelChanged"],
401
542
  "value": ["valueChange"]
402
543
  }; }
403
544
  };